Beruflich Dokumente
Kultur Dokumente
)LQLWHVWDWHPDFKLQHFRQFHSW
)60VDUHWKHGHFLVLRQPDNLQJORJLFRIGLJLWDOGHVLJQV
SDUWLWLRQLQJGHVLJQVLQWRGDWDSDWKDQGFRQWUROHOHPHQWV
ZKHQLQSXWVDUHVDPSOHGDQGRXWSXWVDVVHUWHG
%DVLFGHVLJQDSSURDFKDVWHSGHVLJQSURFHVV
,PSOHPHQWDWLRQH[DPSOHVDQGFDVHVWXGLHV
ILQLWHVWULQJSDWWHUQUHFRJQL]HU
FRPSOH[FRXQWHU
WUDIILFOLJKWFRQWUROOHU
GRRUFRPELQDWLRQORFN
*HQHUDO)60GHVLJQSURFHGXUH
'HWHUPLQHLQSXWVDQGRXWSXWV
'HWHUPLQHSRVVLEOHVWDWHVRIPDFKLQH
VWDWHPLQLPL]DWLRQ
(QFRGHVWDWHVDQGRXWSXWVLQWRDELQDU\FRGH
VWDWHDVVLJQPHQWRUVWDWHHQFRGLQJ
RXWSXWHQFRGLQJ
SRVVLEO\LQSXWHQFRGLQJLIXQGHURXUFRQWURO
5HDOL]HORJLFWRLPSOHPHQWIXQFWLRQVIRUVWDWHVDQGRXWSXWV
FRPELQDWLRQDOORJLFLPSOHPHQWDWLRQDQGRSWLPL]DWLRQ
FKRLFHVPDGHLQVWHSVDQGFDQKDYHODUJHHIIHFWRQUHVXOWLQJORJLF
)LQLWHVWULQJSDWWHUQUHFRJQL]HUVWHS
)LQLWHVWULQJSDWWHUQUHFRJQL]HU
RQHLQSXW;DQGRQHRXWSXW=
RXWSXWLVDVVHUWHGZKHQHYHUWKHLQSXWVHTXHQFHKDVEHHQ
REVHUYHGDVORQJDVWKHVHTXHQFHKDVQHYHUEHHQVHHQ
6WHSXQGHUVWDQGLQJWKHSUREOHPVWDWHPHQW
VDPSOHLQSXWRXWSXWEHKDYLRU
;
=
;
=
)LQLWHVWULQJSDWWHUQUHFRJQL]HUVWHS
6WHSGUDZVWDWHGLDJUDP
IRUWKHVWULQJVWKDWPXVWEHUHFRJQL]HGLHDQG
D0RRUHLPSOHPHQWDWLRQ
6
UHVHW
>@
6
6
>@
>@
6
6
>@
>@
6
6
>@
>@
RU
)LQLWHVWULQJSDWWHUQUHFRJQL]HUVWHSFRQWG
([LWFRQGLWLRQVIURPVWDWH6KDYHUHFRJQL]HG
LIQH[WLQSXWLVWKHQKDYH VWDWH6
LIQH[WLQSXWLVWKHQKDYH VWDWH6
([LWFRQGLWLRQVIURP6UHFRJQL]HV
VWULQJVRIIRUPQRVHHQ
ORRSEDFNWR6LILQSXWLV
([LWFRQGLWLRQVIURP6UHFRJQL]HV
VWULQJVRIIRUPQRVHHQ
ORRSEDFNWR6LILQSXWLV
6
UHVHW
>@
6
6
>@
6
6
>@
>@
6
>@
6
>@
RU
>@
)LQLWHVWULQJSDWWHUQUHFRJQL]HUVWHSFRQWG
6DQG6VWLOOKDYHLQFRPSOHWHWUDQVLWLRQV
6 ,IQH[WLQSXWLV
WKHQVWULQJFRXOGEHSUHIL[RI
6KDQGOHVMXVWWKLVFDVH
6 ,IQH[WLQSXWLV
WKHQVWULQJFRXOGEHSUHIL[RI
6KDQGOHVMXVWWKLVFDVH
5HXVHVWDWHVDVPXFKDVSRVVLEOH
ORRNIRUVDPHPHDQLQJ
VWDWHPLQLPL]DWLRQOHDGVWR
VPDOOHUQXPEHURIELWVWR
UHSUHVHQWVWDWHV
2QFHDOOVWDWHVKDYHDFRPSOHWH
VHWRIWUDQVLWLRQVZHKDYHD
ILQDOVWDWHGLDJUDP
6
UHVHW
>@
6
>@
6
>@
6
>@
>@
6
>@
6
6
>@
RU
)LQLWHVWULQJSDWWHUQUHFRJQL]HUVWHS
9HULORJGHVFULSWLRQLQFOXGLQJVWDWHDVVLJQPHQWRUVWDWHHQFRGLQJ
//reset state
//strings ending
//strings ending
//strings ending
//strings ending
//strings ending
//strings ending
Q0 = state[0];
Q1 = state[1];
Q2 = state[2];
Z = (state == S3);
in
...0
in ...01
in ...010
in
...1
in ...10
in ...100
)LQLWHVWULQJSDWWHUQUHFRJQL]HU
5HYLHZRISURFHVV
XQGHUVWDQGLQJSUREOHP
ZULWHGRZQVDPSOHLQSXWVDQGRXWSXWVWRXQGHUVWDQGVSHFLILFDWLRQ
GHULYHDVWDWHGLDJUDP
ZULWHGRZQVHTXHQFHVRIVWDWHVDQGWUDQVLWLRQVIRUVHTXHQFHVWREH
UHFRJQL]HG
PLQLPL]HQXPEHURIVWDWHV
DGGPLVVLQJWUDQVLWLRQVUHXVHVWDWHVDVPXFKDVSRVVLEOH
VWDWHDVVLJQPHQWRUHQFRGLQJ
HQFRGHVWDWHVZLWKXQLTXHSDWWHUQV
VLPXODWHUHDOL]DWLRQ
YHULI\,2EHKDYLRURI\RXUVWDWHGLDJUDPWRHQVXUHLWPDWFKHV
VSHFLILFDWLRQ
&RPSOH[FRXQWHU
$V\QFKURQRXVELWFRXQWHUKDVDPRGHFRQWURO0
ZKHQ0 WKHFRXQWHUFRXQWVXSLQWKHELQDU\VHTXHQFH
ZKHQ0 WKHFRXQWHUDGYDQFHVWKURXJKWKH*UD\FRGHVHTXHQFH
ELQDU\
*UD\
9DOLG,2EHKDYLRUSDUWLDO
0RGH,QSXW0
&XUUHQW6WDWH
1H[W6WDWH
&RPSOH[FRXQWHUVWDWHGLDJUDP
'HULYLQJVWDWHGLDJUDP
RQHVWDWHIRUHDFKRXWSXWFRPELQDWLRQ
DGGDSSURSULDWHDUFVIRUWKHPRGHFRQWURO
UHVHW
6
>@
6
6
>@
>@
6
>@
6
>@
6
>@
6
>@
6
>@
&RPSOH[FRXQWHUVWDWHHQFRGLQJ
9HULORJGHVFULSWLRQLQFOXGLQJVWDWHHQFRGLQJ
else
else
else
else
else
else
else
state
state
state
state
state
state
state
=
=
=
=
=
=
=
S2;
S3;
S4;
S5;
S6;
S7;
S0;
end
endmodule
7UDIILFOLJKWFRQWUROOHUDVWZRFRPPXQLFDWLQJ)60V
:LWKRXWVHSDUDWHWLPHU
76
6ZRXOGUHTXLUHVWDWHV
6ZRXOGUHTXLUHVWDWHV
6
6ZRXOGUHTXLUHVWDWHV
6ZRXOGUHTXLUHVWDWHV
6DQG6KDYHVLPSOHWUDQVIRUPDWLRQ
6DQG6ZRXOGUHTXLUHPDQ\PRUHDUFV
&FRXOGFKDQJHLQDQ\RIVHYHQVWDWHV
6D
7667
%\IDFWRULQJRXWWLPHU
JUHDWO\UHGXFHQXPEHURIVWDWHV
LQVWHDGRI
FRXQWHURQO\UHTXLUHVVHYHQRUHLJKWVWDWHV
WRWDOLQVWHDGRI
6E
6F
67
WUDIILFOLJKW
FRQWUROOHU
67
76
WLPHU
7/
&RPPXQLFDWLQJILQLWHVWDWHPDFKLQHV
2QHPDFKLQH
VRXWSXWLVDQRWKHUPDFKLQH
VLQSXW
;
&/.
)60
)60
<
)60
&
'
'
;
<
<
)60
;
&
>@
>@
<
'
>@
>@
;
<
PDFKLQHVDGYDQFHLQORFNVWHS
LQLWLDOLQSXWVRXWSXWV;
;
<
'DWDSDWKDQGFRQWURO
'LJLWDOKDUGZDUHV\VWHPV GDWDSDWKFRQWURO
GDWDSDWKUHJLVWHUVFRXQWHUVFRPELQDWLRQDOIXQFWLRQDOXQLWVHJ$/8
FRPPXQLFDWLRQHJEXVVHV
FRQWURO)60JHQHUDWLQJVHTXHQFHVRIFRQWUROVLJQDOVWKDWLQVWUXFWV
GDWDSDWKZKDWWRGRQH[W
SXSSHWHHUZKRSXOOVWKHVWULQJV
FRQWURO
FRQWURO
VWDWXV
LQIRDQG
VWDWH
VLJQDO
RXWSXWV
LQSXWV
GDWDSDWK
SXSSHW
'LJLWDOFRPELQDWLRQDOORFN
'RRUFRPELQDWLRQORFN
SXQFKLQYDOXHVLQVHTXHQFHDQGWKHGRRURSHQVLIWKHUHLVDQHUURU
WKH
ORFNPXVWEHUHVHWRQFHWKHGRRURSHQVWKHORFNPXVWEHUHVHW
LQSXWVVHTXHQFHRILQSXWYDOXHVUHVHW
RXWSXWVGRRURSHQFORVH
PHPRU\PXVWUHPHPEHUFRPELQDWLRQRUDOZD\VKDYHLWDYDLODEOH
RSHQTXHVWLRQVKRZGR\RXVHWWKHLQWHUQDOFRPELQDWLRQ"
VWRUHGLQUHJLVWHUVKRZORDGHG"
KDUGZLUHGYLDVZLWFKHVVHWE\XVHU
,PSOHPHQWDWLRQLQVRIWZDUH
integer combination_lock ( ) {
integer v1, v2, v3;
integer error = 0;
static integer c[3] = 3, 4, 2;
while (!new_value( ));
v1 = read_value( );
if (v1 != c[1]) then error = 1;
while (!new_value( ));
v2 = read_value( );
if (v2 != c[2]) then error = 1;
while (!new_value( ));
v3 = read_value( );
if (v2 != c[3]) then error = 1;
if (error == 1) then return(0); else return (1);
}
CSE 370 - Spring 1999 - Sequential Logic Examples - 16
'HWHUPLQLQJGHWDLOVRIWKHVSHFLILFDWLRQ
+RZPDQ\ELWVSHULQSXWYDOXH"
+RZPDQ\YDOXHVLQVHTXHQFH"
+RZGRZHNQRZDQHZLQSXWYDOXHLVHQWHUHG"
:KDWDUHWKHVWDWHVDQGVWDWHWUDQVLWLRQVRIWKHV\VWHP"
QHZ
YDOXH
UHVHW
FORFN
RSHQFORVHG
'LJLWDOFRPELQDWLRQORFNVWDWHGLDJUDP
6WDWHVVWDWHV
UHSUHVHQWSRLQWLQH[HFXWLRQRIPDFKLQH
HDFKVWDWHKDVRXWSXWV
7UDQVLWLRQVIURPVWDWHWRVWDWHVHOIWUDQVLWLRQVJOREDO
FKDQJHVRIVWDWHRFFXUZKHQFORFNVD\VLWVRN
EDVHGRQYDOXHRILQSXWV
,QSXWVUHVHWQHZUHVXOWVRIFRPSDULVRQV
(55
FORVHG
2XWSXWRSHQFORVHG
&
YDOXH
&
QHZ
6
UHVHW
6
FORVHG
YDOXH
&
YDOXH
23(1
RSHQ
&
QHZ
QRWQHZ
YDOXH
QHZ
FORVHG
QHZ
QRWQHZ
&
6
FORVHG
&
YDOXH
QHZ
YDOXH
QHZ
QRWQHZ
'DWDSDWKDQGFRQWUROVWUXFWXUH
'DWDSDWK
VWRUDJHUHJLVWHUVIRUFRPELQDWLRQYDOXHV
PXOWLSOH[HU
FRPSDUDWRU
&RQWURO
ILQLWHVWDWHPDFKLQHFRQWUROOHU
FRQWUROIRUGDWDSDWKZKLFKYDOXHWRFRPSDUH
C1
4
C2
4
new
C3
4
mux
control
multiplexer
4
value
reset
controller
comparator
clock
equal
open/closed
6WDWHWDEOHIRUFRPELQDWLRQORFN
)LQLWHVWDWHPDFKLQH
UHILQHVWDWHGLDJUDPWRWDNHLQWHUQDOVWUXFWXUHLQWRDFFRXQW
VWDWHWDEOHUHDG\IRUHQFRGLQJ
QH[W
UHVHW
QHZ
HTXDO
VWDWH
VWDWH
PX[
6
&
RSHQFORVHG
FORVHG
6
6
&
FORVHG
6
(55
FORVHG
6
6
&
FORVHG
6
23(1
RSHQ
(QFRGLQJVIRUFRPELQDWLRQORFN
(QFRGHVWDWHWDEOH
VWDWHFDQEH66623(1RU(55
DQGDVPDQ\DV
FKRRVHELWV
RXWSXWPX[FDQEH&&RU&
QHHGVDWOHDVWELWVWRHQFRGH
QHZ
UHVHW
PX[
QHHGVWRELWVWRHQFRGH
FRQWURO
FKRRVHELWV
FRQWUROOHU
RXWSXWRSHQFORVHGFDQEHRSHQRUFORVHG
FORFN
HTXDO
QHHGVRUELWVWRHQFRGH
FKRRVHELW
RSHQFORVHG
QH[W
UHVHW
QHZ
HTXDO
VWDWH
VWDWH
PX[
RSHQFORVHG
PX[LVLGHQWLFDOWRODVWELWVRIVWDWH
RSHQFORVHGLVLGHQWLFDOWRILUVWELWRIVWDWH
WKHUHIRUHZHGRQRWHYHQQHHGWRLPSOHPHQW
))VWRKROGVWDWHMXVWXVHRXWSXWV
'DWDSDWKLPSOHPHQWDWLRQIRUFRPELQDWLRQORFN
0XOWLSOH[HU
HDV\WRLPSOHPHQWDVFRPELQDWLRQDOORJLFZKHQIHZLQSXWV
ORJLFFDQHDVLO\JHWWRRELJIRUPRVW3/'V
YDOXH
&L
&L
&L
PX[
FRQWURO
&
&
&
PXOWLSOH[HU
PX[
FRQWURO
YDOXH
FRPSDUDWRU
HTXDO
HTXDO
'DWDSDWKLPSOHPHQWDWLRQFRQWG
7ULVWDWHORJLF
XWLOL]HDWKLUGRXWSXWVWDWHQRFRQQHFWLRQRUIORDW
FRQQHFWRXWSXWVWRJHWKHUDVORQJDVRQO\RQHLVHQDEOHG
RSHQFROOHFWRUJDWHVFDQ
YDOXH
&L
&L
RQO\RXWSXWQRW
FDQEHXVHGWRLPSOHPHQW
ORJLFDO$1'ZLWKRQO\ZLUHV
&
&
PX[
FRQWURO
RF
&
PX[
FRQWURO
PXOWLSOH[HU
WULVWDWHGULYHU
YDOXH
&L
HTXDO
FRPSDUDWRU
HTXDO
FDQGLVFRQQHFW
IURPRXWSXW
RSHQFROOHFWRUFRQQHFWLRQ
]HURZKHQHYHURQHFRQQHFWLRQLV]HUR
RQHRWKHUZLVHZLUHG$1'
7ULVWDWHJDWHV
7KHWKLUGYDOXH
ORJLFYDOXHV
GRQ
WFDUH;PXVWEHRULQUHDOFLUFXLW
WKLUGYDOXHRUVWDWH=KLJKLPSHGDQFHLQILQLWH5QRFRQQHFWLRQ
7ULVWDWHJDWHV
2(
DGGLWLRQDOLQSXWRXWSXWHQDEOH2(
,Q
RXWSXWYDOXHVDUHDQG=
2XW
ZKHQ2(LVKLJKWKHJDWHIXQFWLRQVQRUPDOO\
ZKHQ2(LVORZWKHJDWHLVGLVFRQQHFWHGIURPZLUHDWRXWSXW
DOORZVPRUHWKDQRQHJDWHWREHFRQQHFWHGWRWKHVDPHRXWSXWZLUH
DVORQJDVRQO\RQHKDVLWVRXWSXWHQDEOHGDWDQ\RQHWLPHRWKHUZLVH
VSDUNVFRXOGIO\
,Q
2(
2XW
QRQLQYHUWLQJ
WULVWDWH
EXIIHU
,Q
2(
2XW
7ULVWDWHDQGPXOWLSOH[LQJ
:KHQXVLQJWULVWDWHORJLF
PDNHVXUHQHYHUPRUHWKDQRQHGULYHUIRUDZLUHDWDQ\RQHWLPH
SXOOLQJKLJKDQGORZDWWKHVDPHWLPHFDQVHYHUHO\GDPDJHFLUFXLWV
PDNHVXUHWRRQO\XVHYDOXHRQZLUHZKHQLWVEHLQJGULYHQXVLQJD
IORDWLQJYDOXHPD\FDXVHIDLOXUHV
8VLQJWULVWDWHJDWHVWRLPSOHPHQWDQHFRQRPLFDOPXOWLSOH[HU
)
,QSXW
2(
ZKHQ6HOHFWLVKLJK
,QSXWLVFRQQHFWHGWR)
,QSXW
ZKHQ6HOHFWLVORZ
,QSXWLVFRQQHFWHGWR)
2(
WKLVLVHVVHQWLDOO\DPX[
6HOHFW
2SHQFROOHFWRUJDWHVDQGZLUHG$1'
2SHQFROOHFWRUDQRWKHUZD\WRFRQQHFWJDWHRXWSXWVWRWKHVDPHZLUH
JDWHRQO\KDVWKHDELOLW\WRSXOOLWVRXWSXWORZ
LWFDQQRWDFWLYHO\GULYHWKHZLUHKLJKGHIDXOWSXOOHGKLJKWKURXJKUHVLVWRU
:LUHG$1'FDQEHLPSOHPHQWHGZLWKRSHQFROOHFWRUORJLF
LI$DQG%DUHRXWSXWLVDFWLYHO\SXOOHGORZ
LI&DQG'DUHRXWSXWLVDFWLYHO\SXOOHGORZ
LIRQHJDWHRXWSXWLVORZDQGWKHRWKHUKLJKWKHQORZZLQV
LIERWKJDWHRXWSXWVDUHWKHZLUHYDOXHIORDWVSXOOHGKLJKE\UHVLVWRU
ORZWRKLJKWUDQVLWLRQXVXDOO\VORZHUWKDQLWZRXOGKDYHEHHQZLWKDJDWHSXOOLQJ
KLJK
KHQFHWKHWZR1$1'IXQFWLRQVDUH$1'HGWRJHWKHU
RSHQFROOHFWRU
1$1'JDWHV
ZLWKRXSXWVZLUHGWRJHWKHU
XVLQJZLUHG$1'
WRIRUP$%
&'
'LJLWDOFRPELQDWLRQORFNQHZGDWDSDWK
'HFUHDVHQXPEHURILQSXWV
5HPRYHFRGHGLJLWVDVLQSXWV
XVHFRGHUHJLVWHUV
PDNHWKHPORDGDEOHIURPYDOXH
QHHGORDGVLJQDOLQSXWVQHWJDLQLQLQSXW
FRXOGEHGRQHZLWKVLJQDOVDQGGHFRGHU
OGOGOGORDGQRQH
ld1
ld2
ld3
C1
4
C2
4
C3
4
multiplexer
mux
control
4
value
comparator
equal
6HFWLRQVXPPDU\
)60GHVLJQ
XQGHUVWDQGLQJWKHSUREOHP
JHQHUDWLQJVWDWHGLDJUDP
LPSOHPHQWDWLRQXVLQJV\QWKHVLVWRROV
LWHUDWLRQRQGHVLJQVSHFLILFDWLRQWRLPSURYHTXDOLWLHVRIPDSSLQJ
FRPPXQLFDWLQJVWDWHPDFKLQHV
)RXUFDVHVWXGLHV
XQGHUVWDQG,2EHKDYLRU
GUDZGLDJUDPV
HQXPHUDWHVWDWHVIRUWKHJRDO
H[SDQGZLWKHUURUFRQGLWLRQV
UHXVHVWDWHVZKHQHYHUSRVVLEOH