งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

-- Introduction to Sequential Devices 04-710-302 Digital System Design I -- Introduction to Sequential Devices 04-710-302 Digital System Design I.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "-- Introduction to Sequential Devices 04-710-302 Digital System Design I -- Introduction to Sequential Devices 04-710-302 Digital System Design I."— ใบสำเนางานนำเสนอ:

1 -- Introduction to Sequential Devices Digital System Design I -- Introduction to Sequential Devices Digital System Design I

2 2 Outline > Combinational Circuits vs. Sequential Circuits > Flip-Flop =Binary cell that can store one bit of information. =Basic Flip-Flop Circuit =Common Types of Flip-Flops: RS, JK, D, T. > Mealy Machine and Moore Machine > Design Flow of Sequential System > Synthesis and Optimization > Examples

3 3 Combinational Circuits > A circuit is combinational if it computes a function which depends only on the current inputs applied to the circuit; > A circuit is combinational if it computes a function which depends only on the current inputs applied to the circuit; for every input set of values, there is a unique output set of values. =Acyclic circuits are necessarily combinational =Cyclic circuits can be combinational in fact, there are combinational circuits whose minimal implementation must have cycles [Kautz 1970]in fact, there are combinational circuits whose minimal implementation must have cycles [Kautz 1970]

4 4 Sequential Circuits > In a sequential circuit, the output values may be different for the same set of input values; the output depends on the current contents of memory elements as well. =Feedback (cyclic) is a necessary condition for a circuit to be sequential. =Synthesis of sequential circuits is not as well developed as combinational. (only small circuits) =Sequential synthesis techniques are not really used in commercial software (except maybe retiming).

5 5 State  เนื่องจากเอาท์พุตของ Sequential Circuit นอกจากจะขึ้นอยู่กับอินพุต ปัจจุบันแล้ว ยังขึ้นกับค่าของอินพุตในอดีตด้วย ดังนั้น การแสดง เอาท์พุตโดยใช้ตารางค่าความจริงจะทำได้ยาก นิยมแสดงในลักษณะของ "สถานะ" หรือ "State" มากกว่า  State คือ ชุดของตัวแปรสถานะ (State Variables) ซึ่งมีข้อมูลเกี่ยวกับ อดีตของวงจรเพียงพอที่จะบ่งบอกถึงการทำงานของวงจรในอนาคตได้  ตัวอย่าง ในรีโมต TV ที่มีปุ่มเลื่อนช่องขึ้น-ลง สถานะของวงจรควบคุม ของ TV คือ ช่องปัจจุบัน โดยสถานะนี้อาจเก็บอยู่ในตัวแปรสถานะ แบบไบนารี 7 บิต ซึ่งเก็บค่าได้ตั้งแต่ 0 ถึง 127

6 6 State Machine Structure

7 7 > Combinational > Sequential Combinational Logic Circuit x0x0 x1x1 xnxn z0z0 z1z1 zmzm Combinational Logic Circuit Memory Elements inputs outputs Logic Circuits Sequential Logic Circuit

8 8 State Machine Structure (continued)  State Memory คือ กลุ่มของ Flip-Flops จำนวน n ตัว ใช้เก็บค่า สถานะปัจจุบัน (Current State) ของวงจร โดยค่าสถานะ (State) ของวงจรสามารถมีได้ 2 n ค่า  Flip-Flops ที่นิยมใช้ใน State Memory คือ Positive Edge-Triggered D Flip-Flops เพราะง่ายต่อการออกแบบ และสามารถทำได้ใน อุปกรณ์จำพวก PLD  ใน State Memory สัญญาณนาฬิกาถูกป้อนให้กับ Flip-Flops ทุกตัว (Synchronous Clock) เพื่อให้ Flip-Flops ทุกตัวเปลี่ยนสถานะตาม สัญญาณนาฬิกาที่ป้อนเข้ามา

9 9 State Machine Structure (continued) > Next-State Logic F คือฟังก์ชันทางลอจิกที่ใช้กำหนดค่า ของสถานะถัดไป (Next State) โดยเป็นฟังก์ชันของ สถานะปัจจุบันกับอินพุตขณะนั้น Next-State Logic = F(Current State, Input) > Output Logic G คือ ฟังก์ชันทางลอจิกที่ใช้กำหนดค่าของ เอาท์พุตของวงจร

10 10 State Machine Structure (continued) > Output Logic แบ่งเป็น 2 ชนิดใหญ่ๆ คือ =Moore Machine คือ วงจรที่เอาท์พุตขึ้นอยู่กับสถานะปัจจุบันของ วงจรเท่านั้น Output Logic = G(Current State) =Mealy Machine คือ วงจรที่เอาท์พุตขึ้นอยู่กับสถานะปัจจุบันของ วงจร และอินพุตในขณะนั้น Output Logic = G(Current State, Input)

11 11 Characteristic Equation  Characteristic Equation คือ สมการที่อธิบายสถานะถัดไปของ Latch/Flip-Flop โดยจัดอยู่ในรูปของสถานะปัจจุบันและอินพุต เช่น (Q* => เอาท์พุตในสถานะถัดไป)  S-R LatchQ* = S + R’.Q  D LatchQ* = D  Edge-Triggered D Flip-FlopQ* = D  Edge-Triggered J-K Flip-Flop Q* = J.Q’ + K’.Q  T Flip-FlopQ* = Q’

12 12 Clocked Synchronous State- Machine Analysis  การวิเคราะห์ => เพื่อให้รู้พฤติกรรมของวงจรจาก Next- State และ Output Functions  ขั้นตอน  กำหนด Next-State และ Output Functions  สร้าง State/Output Table จากฟังก์ชันทั้งสองที่ได้  (Optional) เขียน State Diagram

13 13 Finite-State Machines  เนื่องจากตัวแปรสถานะมักอยู่ในรูปของเลขฐาน 2 ดั้ง นั้น หากมีตัวแปรสถานะ n ตัวจะมีสถานะที่เป็นไปได้ ทั้งหมด 2 n สถานะ จำนวนนี้จะมากหรือน้อยเท่าใด ก็ ยังเป็นจำนวนที่นับได้ (Finite Number) ดังนั้น จึงนิยม เรียก Sequential Circuits อีกอย่างหนึ่งว่า Finite-State Machines (FSM)

14 14 > Two Output (Q and Q’) > Various Ways to Feed Flip-Flops > NOR Gate Flip-Flops Basic Flip-Flop Q R Q’ S 1 2 SRQ SRQ QS R 1 2 > NAND Gate Flip-Flops

15 15 RS Flip-Flop > Three Inputs: =Clock Pulse: additional input to control when state is changing. =S(et) input =R(eset) input > Four States: =Set state: S=1, R=0, CP=1(Q=1, Q’=0) =Reset state: S=0, R=1, CP=1(Q=0, Q’=1) =Indetermined:S=1, R=1, CP=1(Q=1, Q’=1) =No change:S=0, R=0, CP=1 S R Q Q’ CP S > R Q Q’

16 16 Clock > Clock หรือ สัญญาณนาฬิกา เป็น อินพุตแบบหนึ่ง ที่ป้อนให้กับ Sequential Circuits เพื่อให้ เกิดการเปลี่ยนสถานะ ของวงจร > คุณสมบัติของสัญญาณนาฬิกา : =Active-High Clock: สถานะของวงจรเปลี่ยนที่ขอบขาขึ้น ของสัญญาณนาฬิกา =Active-Low Clock: สถานะของวงจรเปลี่ยนที่ขอบขาลง ของสัญญาณนาฬิกา Note: โดยปกติแล้ว ความถี่ของสัญญาณ นาฬิกาในอุปกรณ์จำพวก TTL และ CMOS จะอยู่ระหว่าง 5 – 150 MHz

17 17 RS Flip-Flop (cont’d) > Characteristic Equation: Q(t+1) = F(Q(t), S(t+1), R(t+1)) = = S + R’Q SR = 0 > Characteristic Table: SRQQ(t+1) i.d. 111i.d.

18 18 JK Flip-Flop > Three Inputs: =CP: Clock Pulse =J: Set input =K:Reset input J > K Q Q’ K J Q CP > Four States: =Set state: J=1, K=0, CP=1 =Reset state: J=0, K=1, CP=1 =No change:J=0, K=0, CP=1 =Complement:J=1, K=1, CP=1

19 19 JK Flip-Flop (cont’d) > Characteristic Equation: Q(t+1) = F(Q(t), J(t+1), K(t+1)) = = JQ’ + K’Q > Characteristic Table: JKQQ(t+1)

20 20 D Flip-Flop > Two Inputs: =CP: Clock Pulse =D: Set input D’: Reset input D Q Q’ CP D > Q Q’ > Two States: =Set state: D=1, CP=1 =Reset state: D=0, CP=1 > Characteristic Equation: Q(t+1) = F(Q(t), D(t+1)) = D

21 21 T Flip-Flop > One input JK flip-flop > Two States: =No Change:T=0, CP=1 =Complement:T=1, CP=1 > Characteristic Equation: =Q(t+1) = F(Q(t), T(t+1)) = TQ’+T’Q T Q Q’ CP T > Q Q’

22 22 > Excitation table: the reverse of characteristic table, indicates how we should change flip-flop inputs to make the required state transition. SRQQ(t+1) i.d. 111i.d. characteristic tableQ(t)Q(t+1)SR000x x0 excitation table Excitation Table

23 23 Q(t)Q(t+1)SR 000x x0 Q(t)Q(t+1)JK000x 011x 10x1 11x0 Q(t)Q(t+1)D Q(t)Q(t+1)T Flip-Flop Excitation Tables

24 24 State, State Reduction and Assignment > A state of a sequential circuit is defined by the binary information stored in the memory elements (e.g. flip-flop). =One flip-flop stores one bit, so m flip-flops can define at most 2 m states. =Two states are equivalent if for any input, they produce the same outputs and move to the same or equivalent states. > State Reduction problem: reduce the number of flip-flops in a sequential circuit. > State Assignment problem: assign binary values to states such that the cost of the flip-flop input functions is reduced.

25 25

26 26 Mealy and Moore Models > A sequential system is of Mealy type if output values depend on both present states and inputs. =Recall that a state is a combination of the memory element’s content. > A sequential system is of Moore type if output values depend only on the present states. =This does not mean that output is independent of the inputs. Instead, the impact is through memory units.

27 27 Sequential Circuit Design > Given: system description > Goal: logic diagram, Boolean function expression 1.System specification 2.State table/transition graph construction 3.State reduction/minimization 4.State assignment/encoding 5.Flip-flop selection 6.Excitation/output table derivation 7.Logic simplification/minimization 8.Logic diagram drawing

28 28 Example: Sequential System Design System spec. → state transition table/graph > Design a circuit with one input x and three outputs A,B,C. An external source feeds x one bit per clock cycle, when x=0, the outputs remain no change; otherwise, they repeat the binary sequence: 0,1,3,7,6,4, one at a time. ABCABCABC current state next state x=0 x=1 0/000 1/001 S1S1S1S1 S2S2S2S2 S3S3S3S3 S4S4S4S4 S5S5S5S5 S6S6S6S6 1/011 1/111 1/110 1/100 1/000 0/001 0/011 0/1000/1100/111

29 29 Example: Sequential System Design State Minimization/Reduction > Recall that two states are equivalent if for any input, they produce the same outputs and move to the same or equivalent states. We need only one state for all its equivalent states. Therefore, redundant states can be removed and hardware (e.g. flip-flops) can be saved /1 0/0 0/1 1/0 1/1 1/0 0/1 0/ /1 0/0 0/1 1/0 0/0 1/ =

30 30 Example: Sequential System Design State Assignment/Encoding > The goal is to assign binary values, each bit will be implemented by one flip-flop, to states. > Sequential binary assignment : =S 1 =001, S 2 =010, S 3 =011 S 4 =100, S 5 =101, S 6 =110 =Average bits to be changed: [(0+2)+(0+1)+(0+3)+(0+1)+ (0+2)+(0+3)]/12 = 1 > Ad hoc binary assignment : =S 1 =000, S 2 =001, S 3 =011 S 4 =111, S 5 =110, S 6 =100 =Average bits to be changed: [(0+1)+(0+1)+(0+1)+(0+1)+(0+1)+(0+1)]/12 = 0.5 0/000 1/001 S1S1S1S1 S2S2S2S2 S3S3S3S3 S4S4S4S4 S5S5S5S5 S6S6S6S6 1/011 1/111 1/110 1/100 1/000 0/001 0/011 0/1000/1100/111

31 31 Example: Sequential System Design > System spec. → state transition table/graph → state minimization/encoding → flip-flop selection → excitation/output table derivation InOut ABxABTATBy Current State Next State /1 0/0 0/1 1/0 1/1 1/0 0/1 0/0 Flip-flop inputsQ(t)Q(t+1)T

32 32 Example: Sequential System Design > System spec. → state transition table/graph → state minimization/encoding → flip-flop selection → excitation/output table derivation → logic simplification/minimization → logic diagram drawing > Flip-flop input functions: =TA = A  B =TB = (A  x)’ > Output: > y = A  B  x T > Q Q’ T > Q B A CP x y /1 0/0 0/1 1/0 1/1 1/0 0/1 0/0


ดาวน์โหลด ppt -- Introduction to Sequential Devices 04-710-302 Digital System Design I -- Introduction to Sequential Devices 04-710-302 Digital System Design I.

งานนำเสนอที่คล้ายกัน


Ads by Google