①用三態門構成單向總線圖3.3.27(a)為用三態門構成的單向數據總線。圖中的總線是由多個三態門的輸出連接而成。在任何時刻,僅允許其中一個三態門的輸入控製端犈犖為1,使輸入數據從經過這個三態門反相後,單向送到總線上,而其他的犈犖都為0,使它們的三態門都處於高阻態,對傳送的數據沒有影響。從而實現信號的分時傳送。
注意:在某一時刻不允許電路同時有兩個或兩個以上的犈犖為1,否則,總線傳送的數據就會出錯,甚至損壞器件。
②實現數據的雙向傳輸圖3.3.27(b)所示的電路為三態門組成的雙向總線,能夠實現數據的雙向傳輸。圖中用了兩個三態非門。當犈犖為高電平時,三態門犌1處於正常工作,三態門犌2為高阻態,輸入數據犇I經犌1反相後為犇I送到數據總線上;當犈犖為低電平時,三態非門犌2處於正常工作,犌1為高阻態,總線上的數據犇犗經犌2反相後輸出犇O。可見,通過改變控製信號犈犖,就實現了信號的分時雙向傳送。
78數字電子技術圖3.3.27三態門組成的總線3.3.3其他係列的TTL門電路前麵分析的典型TTL與非門電路屬於CT54/74係列,為了提高門電路的工作速度和降低功耗,對CT54/74係列TTL門電路進行改進,相繼研製出了CT54H/74H係列、CT54S/74S係列和CT54LS/74LS係列。
1.犆犜54犎/74犎係列CT54H/74H係列又稱高速係列,圖3.3.28所示為CT54H/74H係列與非門的典型電路。為了減小門的傳輸延遲時間,在電路結構上采取了兩條措施:一個是在輸出級采用了達林頓結構,用T3、T4複合管代替原來的T4、D管;另一個是將所有的電阻的阻值比CT54/74係列的減小了一半。采用達林頓結構提高了帶拉電流的負載能力,同時也加快了對負載電容的充電速度,加上電路中阻值的減小,使得CT54H/74H係列與非門的平均傳輸時間比74係列縮短了將近一半,達到6ns左右。所以,CT54H/74H係列稱為高速係列。
圖3.3.28犆犜54犎/74犎係列與非門但是,由於電阻阻值的減小,使電路的靜態功耗增加。74H係列與非門電路的電源平均電流約為74與非門係列的兩倍。所以,74H係列工作速度的提高是靠增加功耗換來的。
性能比較好的門電路應該是工作速度快、功耗又小的門電路,通常用功耗延遲積即功第3章集成邏輯門電路79耗和傳輸延遲時間的乘積(delay—powerproduct,簡稱dp積)來評價門電路的性能優劣。
74H係列與非門和74係列與非門的dp積相差不多,所以,74H係列的改進效果不夠理想。
2.犆犜54犛/74犛係列74S係列又稱肖特基係列。通過對74係列與非門電路的動態分析可以看到,限製與非門速度提高的主要因素是幾隻晶體三極管在導通時幾乎都處於飽和狀態。因此,當晶體管由飽和狀態轉換為截止狀態時,需要消除在晶體管基區內的存儲電荷犙BS,這要經過一段較長的存儲時間狋S,從而限製了速度的提高(同樣,74H係列與非門電路幾隻晶體三極管在導通時也幾乎都處於飽和狀態)。為解決這個問題,在74S係列與非門電路中采用了抗飽和三極管(或稱為肖特基三極管)。
所謂抗飽和三極管,是由雙極型三極管和肖特基二極管(SchottkyBarrierDiode,SBD)組成,如圖3.3.29所示。SBD管是借助於金屬鋁和N型矽的接觸勢壘產生整流作用,它具有正向導通壓降小(約為0.1~0.3V)、本身無電荷存儲作用及開關速度快等特點。所以,將肖特基二極管並接在三極管的基極b和集電極c之間,如圖3.3.29(a)所示。當晶體三極管進入正向偏置時,SBD管導通,將三極管的集電結電壓鉗圖3.3.29抗飽和晶體管製在0.3V左右,同時SBD管還將三極管基極的過驅動電流分流到集電極,從而使三極管工作在臨界飽和狀態,因此大大提高了工作速度。通常在電路中用圖3.3.29(b)表示。
圖3.3.30所示為CT54S/74S係列的典型與非門電路,它除了采用抗飽和三極管T1、T2、T3、T4、T5、T6外,還以T6、犚3、犚6組成的有源網絡代替圖3.3.28中的電阻犚3,這為T3管的基極提供了有源泄放回路。另一方麵,由於T6管的作用,輸入電壓必須達到1.4V,T2管才開始導通,輸出電壓才開始下降,不存在T2導通、T3仍截止的情況,所以有較好的電壓傳輸特性,如圖3.3.31所示。顯然,74S係列門電路在低電平輸入時的抗幹擾能力得到提高。
圖3.3.30犆犜54犛/74犛係列80數字電子技術但是,由於T3管工作在臨界飽和狀態,使輸出低電平數值有所增加,最大值可達0.5V左右。另外,由於74S係列門電路的電阻阻值減小,使靜態功能有所增加,它的平均傳輸延遲時間大約為3ns,靜態平均功耗約為19mW,其dp積較54/74、54H/74H有所改善。
3.犆犜54犔犛/74犔犛係列74LS(LowpowerSchottkyTTL)係列,也稱為低功耗肖圖3.3.31犆犜54犛/74犛係列特基係列,是為了得到更小的延時功耗積,在兼顧功耗和速度電壓傳輸特性兩方麵的基礎上,進一步開發出來的。
圖3.3.32所示為CT54LS/74LS係列與非門的典型電路。與74S係列相比,為了降低功耗,首先是將電路中各個電阻的阻值增大了,同時將犚5接地的一端改接到輸出端,以減小T3管導通時犚5上的功耗。采取這些措施後,74LS係列的功耗約為74係列的1/5或74H係列的1/7。由於電阻阻值的加大,勢必會影響電路的工作速度。但74LS係列電路中將多極管T1用SBD管代替,因為這種二極管無電荷存儲效應,有利於提高工作速度。同時為了進一步加速電路開關狀態的轉換過程,又接入了D3、D4這圖3.3.32犆犜54犔犛/74犔犛係列兩個SBD管。當輸出端由高電平轉換為低電平時,D4管經T2管的集電極、T5管的基極為輸出端的負載電容提供了另一條放電回路,這既加快了負載電容的放電過程,又增加了T5管的基極驅動電流,故加快了T5管的導通過程。同時D3管也通過T2管的集電極為T4管的基極提供了一個泄放回路,加快了T4管的截止速度,從而大大縮短了傳輸延遲時間。故解決了前麵幾種係列中為提高工作速度和降低功耗所采取措施的矛盾,所以,74LS係列在四種係列中dp積最小。
表3.3.3給出了四種TTL係列主要性能的比較。
表3.3.3犜犜犔係列器件主要性能比較性能CT54/74CT54H/74HCT54S/74SCT54LS/74LS(tpd/門)/ns106310(p/門)/mW1022192dp/(nsmW)1001358020最高工作頻率/mHz3550125453.3.4TTL數字集成電路的係列TI公司最初生產的TTL電路取名SN54/74係列,我們稱之為TTL基本係列。
第3章集成邏輯門電路811.犆犜54係列和犆犜74係列考慮到國際上通用標準型號和我國國家標準,根據工作溫度的不同和電源電壓允許工作範圍的不同,我國TTL數字集成電路分為CT54係列和CT74係列兩大類。它們的工作條件如表3.3.4所示。
表3.3.4犆犜54係列和犆犜74係列器件工作條件的對比參數CT54係列CT74係列電源電壓/V4.55.05.54.7555.25工作溫度/℃-552512502570CT54係列和CT74係列具有完全相同的電路結構和電氣性能參數。所不同的是CT54係列TTL集成電路更適合在溫度條件惡劣、供電電源變化大的環境中工作,常用於軍品;而CT74係列TTL集成電路則適合在常規條件下工作,常用於民品。
2.犜犜犔集成邏輯門電路的子係列CT54係列和CT74係列的幾個子係列的主要區別在於它們的平均傳輸延遲時間狋pd和平均功耗這兩個參數上。下麵以CT74係列為例說明它的各子係列的主要區別。
(1)CT74標準係列它和CT1000係列相對應,又稱標準TTL係列,為TTL集成電路的早期產品,屬中速TTL器件。由於電路中三極管的基極驅動電流過大,它們都工作在深飽和狀態,因此工作速度不高,其平均傳輸延遲時間為9ns/門,平均功耗約為10mW/門。
(2)CT74H高速係列它和CT2000係列相對應,又稱標準HTTL係列,它為CT74標準係列的改進型產品。
和CT74標準係列相比,電路結構上主要做了兩點改進:①輸出級采用了達林頓結構。
②大幅度地降低了電路中電阻的阻值,從而提高了工作速度和負載能力。但電路的平均功耗增加了。該係列的平均傳輸延遲時間為6ns/門,平均功耗約為22.5mW/門。
(3)CT74L低功耗係列又稱LTTL係列,電路中的電阻阻值很大,因此,電路的平均功耗很小,約為1mW/門。
但平均傳輸延遲時間較長,約為33ns/門。
(4)CT74S肖特基係列它和CT3000係列相對應,又稱STTL係列。由於電路中采用了抗飽和三極管,有效地降低了三極管的飽和深度,同時,電阻的阻值也不大,從而提高了電路的工作速度,其平均傳輸延遲時間縮短為3ns/門。在TTL各子係列中,它的工作速度是很高的,但電路的平均功耗較大,約為19mW。
(5)CT74LS低功耗肖特基係列它和CT4000係列相對應,又稱LSTTL係列。一方麵電路中采用了抗飽和三極管和肖特基二極管來提高工作速度;另一方麵通過加大電路中電阻的阻值來降低電路的功耗,從而達到使電路既具有較高的工作速度,又有較低的平均功耗。其平均傳輸延遲時間為9.5ns/門,平均功耗約為2mW/門。
(6)CT74AS先進肖特基係列82數字電子技術又稱ASTTL係列,它是CT74S係列的後繼產品,其電路結構和CT74S係列基本相同。由於電路中的電阻阻值很低,因此,提高了工作速度,其平均傳輸延遲時間為3ns/門,但平均功耗較大,約為8mW/門。
(7)CT74ALS先進低功耗肖特基係列,又稱ALSTTL係列,它是CT74L5係列的後繼產品。電路中采用了較高的電阻阻值,並通過改進生產工藝和縮小內部器件的尺寸,從而降低了電路的平均功耗、提高了工作速度,其平均傳輸延遲時間約為3.5ns/門,平均功耗約為1.2mW/門。
3.各係列犜犜犔集成邏輯門電路性能的比較一個理想的門電路應具有工作速度高、平均功耗低和抗幹擾能力強的特點,然而要同時做到這三點是很困難的,隻能做折中的選擇。常用功耗延遲積即dp積對門電路進行評價,門電路的dp值越小,其性能就越優美。表3.3.5中列出了CT74係列門電路的各子係列門電路最重要的參數。
表3.3.5犜犜犔集成邏輯門各子係列重要的參數比較TTL子係列標準TTLLTTLHTTLSTTLLSTTLASTTLALSTTL係列名稱CT7400CT74L00CT74H00CT74S00CT74LS00CT74AS00CT74ALS00工作電壓/V5555555平均功耗(每門)/mW10122.519281.2平均傳輸延遲時間/ns933639.533.5功耗延遲積/(mWns)90331355719244.2最高工作頻率/MHz40138013050130100典型噪聲容限/V1110.50.60.50.5由表3.3.5可看出,標準TTL和HTTL兩個子係列的功耗延遲積最大,綜合性能較差,目前使用較少。而LSTTL子係列的功耗延遲積很小,是一種性能優越的TTL集成電路,其生產量大、品種多,而且價格便宜,是目前TTL數字集成電路的主要產品。ALSTTL子係列的性能雖然比LSTTL有較大改善,但品種少,價格也較高,產量仍不及LSTTL係列。邏輯門的工作頻率有最高工作頻率犳max和實際使用中的最高工作頻率犳m,常取犳m≈犳max/2。
3.3.5其他雙極型集成邏輯門電路的特點在雙極型的數字集成電路中,除了TTL電路以外,還有二極管三極管邏輯(DTL)、高閾值邏輯(HighThresholdLogic,HTL)、發射極耦合邏輯(EmitterCoupledLogic,ECL)和集成注入邏輯(IntegratedInjectionLogic,I2L或IIL)等幾種邏輯電路。
DTL是早期采用的一種電路結構形式,它的輸入端是二極管結構,而輸出端是三極管結構。因為它的工作速度比較低,很快就被TTL電路取代,已經極少使用了。
HTL電路的特點是閾值電壓比較高。當電源電壓為15V時,閾值電壓達7~8V。因而它的噪聲容限比較大,有較強的抗幹擾能力。HTL電路的主要缺點是工作速度比較低,所以多用在對工作速度要求不高而對抗幹擾性能要求較高的一些工業控製設備中。目前,第3章集成邏輯門電路83它已幾乎完全為CMOS電路所取代。
下麵介紹ECL和I2L兩種電路的工作原理和主要特點。
1.射極耦合邏輯門電路(犈犆犔門電路)ECL門電路是一種非飽和型高速邏輯門電路。它的工作速度比其他TTL電路快得多,是所有邏輯電路中工作速度最快的。它主要用於高速和超高速數字係統中。
(1)ECL門電路的結構和工作原理圖3.3.33(a)所示為ECL或非/或門的典型電路。它主要由輸入級、基準電壓和射極輸出級三部分組成。圖3.3.33(b)為其邏輯符號。
圖3.3.33犈犆犔或非/或門電路和邏輯符號電路的電源電壓犞EE=-5.2V,T3基準電壓犞BB=-1.3V,由T4組成的射極跟隨器提供;犃、犅輸入犞I的高電平犞IH=-0.9V、低電平犞IL=-1.75V;輸出級為由T5和T6組成的射極跟隨器,用以提高驅動外接負載的能力和實現電平移動,使輸出的高、低電平與輸入的高、低電平匹配。犚L1和犚L2為射極跟隨器的外接負載。
ECL門電路的工作原理如下:①輸入犃、犅都為低電平-1.75V時,由於T3基極電壓犞BB=-1.3V,大於犃、犅輸入的低電平,因此,T3優先導通,發射極電壓犞E=犞BB-犞BE3=(-1.3-0.7)V=-2V,這時,T1和T2間電壓隻有0.25V,小於其門限電壓犞th(0.5V),都工作在截止狀態,集電極輸出電壓:犞C1≈0V,經T5發射極輸出犞O1=犞CE5=-0.7V,為高電平。又由於T3導通,集電極輸出電壓犞C3,約為-1V,經T6發射極輸出犞O2=-(犞CE6+犞C3)=-(1.7+1)V=-1.7V,為低電平。這時,T3集電極為反偏,工作在放大狀態。
由上分析可知,當輸入犃、犅都為低電平時,輸出犔1為高電平,犔2為低電平。
②輸入犃、犅中有高電平-0.9V時,設犃輸入電壓犞A=-0.9V,大於犞BB,T1優先導通,發射極電壓犞A=犞E=犞A犞BE1=(-0.9-0.7)V=-1.6V,使T3截止,集電極輸出電壓84數字電子技術VC3=0V,經T6發射極輸出犞O2=-犞BE6≈-0.7V。由於T1導通,集電極輸出犞C1約為-1V,經T5發射極輸出犞O1=-(犞BE5+犞C1)=-(0.7+1)V=-1.7V,為低電平。這時,T1集電極近為零偏,並沒有工作在飽和狀態。由於T1和T2兩管並聯,因此,輸入犃、犅中任一或全部為高電平時,輸出犔1為低電平,犔2為高電平。
由上分析可知,輸出犔1和犔2與輸入犃、犅之間的邏輯關係為犔1=犃+犅,犔2=犃+犅。
可見,圖中所示的ECL電路具有或非/或邏輯功能。
(2)ECL門電路的主要優點①開關速度高由於ECL門電路中的三極管都工作在非飽和狀態,它沒有存儲時間。電路中的電阻值和輸出高、低電平差值都很小,縮短了電路各點電位的上升時間和下降時間。輸出級為射極跟隨器,輸出電阻很小,負載電容充電時間很短,從而大大提高了電路的開關速度。其平均傳輸延遲時間狋pd=(0.5~3)ns,工作頻率犳=(200~1000)MHz。
②負載能力強因為采用了射極跟隨器作為ECL門電路輸出級,所以輸出阻抗很低,可提供較大的負載電流,其扇出係數可達90以上。實際應用中,當扇出係數過大時,負載電容會隨之增大,這樣就降低了電路的工作速度。為了保證電路高速的優點,扇出係數不能過大,通常控製在10以內。
③邏輯組合靈活ECL門電路的或非/或兩個互補輸出端,給電路邏輯組合設計帶來不少方便。
(3)ECL門電路的主要缺點①抗幹擾能力差ECL門電路輸入的高、低電平的幅度變化範圍較小,大約隻有0.8V,所以它的噪聲容限較小,抗幹擾能力較差。
②功耗大ECL電路所有三極管都工作在非飽和狀態,同時電路中的電阻值又較小。因此,它的功耗比TTL門電路大,每門功耗大約在40~60mW。
③輸出電平穩定度差由於輸出電平受T5、T6發射結導通壓降和T1、T3的輸出電壓犞C1和犞C3的影響,因此輸出電平的穩定度較差。
2.集成注入邏輯門電路(犐2犔門電路)集成注入邏輯門電路,又稱I2L或IIL門電路。其電路結構簡單,功耗低,特別適合用於製造大規模和超大規模集成電路。
(1)I2L門電路的結構和工作原理圖3.3.34(a)所示為I2L門電路的基本邏輯單元電路。它由一個PNP型三極管T1和一個多集電極NPN三極管T2組成。T1基極接地,為共基電路,工作在恒流狀態,並向T2基極注入電流。因此,該電路又稱為注入邏輯電路。圖3.3.34(b)為等效電路,圖3.3.34(c)和圖3.3.34(d)為簡化電路和邏輯符號。下麵討論圖3.3.34(a)所示I2L門電路的工作原理。
第3章集成邏輯門電路85圖3.3.34犐2犔基本邏輯單元電路及邏輯符號①當輸入犃為低電平時,T2截止,T1的集電極電流犐o從輸入端犃流出,輸出犆1和犆2為高電平(通常犆1和犆2通過電阻接正電源)。
②當輸入犃為高電平或懸空時,T1集電極電流犐o流入T2基極,T2飽和導通,輸出犆1和犆2為低電平。
根據以上分析,可知輸出犆1、犆2和輸入犃之間都為反相邏輯關係,是非門電路。
利用I2L門電路多集電極輸出的特點,可很方便地構成其他較複雜的邏輯電路。圖3.3.35(a)所示為采用輸出線與的方法構成或非門和非門,輸出犔=犃·犅=犃+犅。另兩個輸出分別為犃和犅。
圖3.3.35犐2犔或非門/非門(2)I2L門電路的主要優點①電路結構簡單,集成度高I2L門電路基本邏輯單元由一個PNP型三極管和一個NPN型三極管組成,電路簡單,而且PNP型三極管可做成多集電極三極管,不需為每個邏輯單元都設置一個PNP型三極管,再加電路中沒有電阻,各邏輯單元之間不需隔離,大大節約了芯片麵積,提高了集成度。
②工作電壓低、功耗小I2L門電路的電源電壓隻要大於0.8V就能正常工作,而且每個邏輯單元的工作電流可小於1nA。因此,它的功耗極低,集成度可做到很高。
86數字電子技術③品質因數好I2L門電路的功耗極小,平均傳輸延遲時間狋pd也不大。因此,功耗延時積也很小,它的性能比其他TTL電路優越得多,較好地解決了功耗與速度之間的矛盾。
(3)I2L門電路的主要缺點①抗幹擾能力差I2L門電路輸出的高電平約為0.7V、低電平約為0.1V,邏輯擺幅隻有0.6V左右。因此,它的抗幹擾能力較差。
②開關速度不夠高I2L門電路屬飽和型邏輯電路,它的開關速度不可能很高,其平均傳輸延遲時間狋pd一般為20~50ns。
3.3.6TTL集成邏輯門電路的使用注意事項1.電源電壓及電源幹擾的消除電源電壓的變化對54係列應滿足5V±10%、對74係列應滿足5V±5%的要求,電源的正極和地線不可接錯。為了防止外來幹擾通過電源串入電路,需要對電源進行濾波,通常在印刷電路板的電源輸入端接入10~100μF成的電容進行濾波,在印刷電路板上,每隔6~8個門加接一個0.01~0.1μF的電容對高頻進行濾波。
2.輸出端的連接具有推拉輸出結構的TTL門電路的輸出不允許直接並聯使用。輸出端不允許直接接電源犞CC或直接接地。使用時,輸出電流應小於產品手冊上規定的最大值。三態輸出門的輸出可並聯使用,但在同一時刻隻能有一個門工作,其他門輸出處於高阻狀態。集電極開路門出端可並聯使用,但公共輸出端和電源犞CC之間應接負載電阻犚L。
3.閑置輸入端的處理TTL集成門電路使用時,對於閑置輸入端(不用的輸入端)一般不懸空,主要是防止幹擾信號從懸空輸入端上引入電路。對於閑置輸入的處理以不改變電路邏輯功能及工作穩定性為原則。常用的方法有以下幾種。
(1)對於與非門的閑置輸入端,可直接接電源電壓犞CC,或通過1kΩ~10kΩ的電阻接電源犞CC,如圖3.3.36(a)和3.3.36(b)所示。
(2)如前級驅動能力允許時,可將閑置輸入端與有用輸入端並聯使用,如圖3.3.36(c)所示。
(3)在外界幹擾很小時,與非門的閑置輸入端可以剪斷或懸空,如圖3.3.36(d)所示。
但不許接開路長線,以免引入幹擾而產生邏輯錯誤。
(4)或非門不使用的閑置輸入端應接地,對與或非門中不使用的與門至少有一個輸入端接地,如圖3.3.36(e)和圖3.3.36(f)所示。
4.電路安裝接線和焊接應注意的問題(1)連線要盡量短,最好用絞合線。
(2)整體接地要好,地線要粗、短。
(3)焊接用的烙鐵最好不大於25W,使用中性焊劑,如鬆香酒精溶液,不可使用焊油。
(4)由於集成電路外引線間距離很近,焊接時焊點要小,不得將相鄰引線短路,焊接時第3章集成邏輯門電路87圖3.3.36與非門和或非門閑置輸入端的處理間要短。
(5)印刷電路板焊接完畢後,不得浸泡在有機溶液中清洗,隻能用少量酒精擦去外引線上的助焊劑和汙垢。
5.調試中應注意的問題(1)對CT54/CT74和CT54H/CT74H係列TTL電路,輸出的高電平不小於2.4V,輸出低電平不大於0.4V。對CT54S/CT74S和CT54LS/CT74LS係列的TTL電路,輸出的高電平不小於2.7V,輸出的低電平不大於0.5V。上述4個係列輸入的高電平不小於2.4V,低電平不大於0.8V。
(2)當輸出高電平時,輸出端不能碰地,不然會使T4因電流過大而燒壞。輸出低電平時,輸出端不能碰電源犞CC=5V,否則T3同樣會燒壞。
3.4犆犕犗犛集成邏輯門電路CMOS邏輯門是互補金屬氧化物半導體場效應管門電路的簡稱,它由增強型PMOS管和增強型NMOS管組成,是繼TTL電路之後開發出來的數字集成器件。CMOS數字集成電路分為4000係列和高速係列,我國生產的CC4000係列和國際上4000係列同序號產品可互換使用。高速CMOS(HCMOS)數字集成電路主要有54/74HC和54/74HCT兩個係列,後者可與同序號的TTL產品互換使用。由於CMOS數字集成電路具有微功耗和高抗幹擾能力等突出優點,因此,在中、大規模數字集成電路中有著廣泛的應用,目前已超越TTL成為占據市場統治地位的邏輯器件。下麵先討論CMOS反相器,然後介紹其他CMOS邏輯門電路。
3.4.1CMOS反相器CMOS邏輯門電路是由N溝道MOSFET和P溝道MOSFET互補而成,通常稱為互88數字電子技術補型MOS邏輯電路,簡稱CMOS邏輯電路。
圖3.4.1(a)表示CMOS反相器電路,由兩隻增強型MOSFET組成,其中一個為N溝道結構,另一個為P溝道結構。它們的柵極相連作為反相器的輸入端,漏極相連作為反相器的輸出端。TP的源極接正電源犞DD,TN的源極接地。圖3.4.1(b)是在本書中使用的簡化電路。為了電路能正常工作,要求電源犞DD大於兩管開啟電壓絕對值之和,即犞DD>(犞TN+犞TP),且犞TN=犞TP。
圖3.4.1犆犕犗犛非門電路1.工作原理首先考慮兩種極限情況:當犞i處於邏輯0時,相應的電壓近似為0V;而當犞i處於邏輯1時,相應的電壓近似為犞DD。假設在兩種情況下,N溝道管TN為工作管,P溝道管TP為負載管。但是,由於電路是互補對稱的,這種假設可以是任意的,相反的情況亦將導致相同的結果。
(1)當輸入為低電平,即犞i=0V時,TN截止,TP導通,TN的截止電阻約為500MΩ,TP的導通電阻約為750Ω。所以輸出犞O≈犞DD,即犞O為高電平。
(2)當輸入為高電平,即犞i=犞DD時,TN導通,TP截止,TN的導通電阻約為750Ω,TP的截止電阻約為500MΩ。所以,輸出犞O≈0V,即犞O為低電平。該電路實現了非邏輯犔=犃。
通過以上分析可以看出,在CMOS非門電路中,無論電路處於何種狀態,TN、TP中總有一個截止,所以它的靜態功耗極低,有微功耗電路之稱。
2.電壓傳輸特性設CMOS非門的電源電壓犞DD=10V,兩管的開啟電壓為犞TN=犞TP=2V。
(1)當犞i<2V,TN截止,TP導通,輸出犞o≈犞DD=10V。
(2)當2V<犞i<5V,TN和TP都導通,但TN的柵源電壓<TP柵源電壓絕對值,即TN工作在飽和區,TP工作在可變電阻區,TN的導通電阻>TP的導通電阻。所以,這時犞O開始下降,但下降不多,輸出仍為高電平。
(3)當犞i=5V,TN的柵源電壓=TP柵源電壓絕對值,兩管都工作在飽和區,且導通圖3.4.2犆犕犗犛反相器的傳輸特性第3章集成邏輯門電路89電阻相等。所以,犞O=(犞DD/2)=5V。
(4)當5V<犞i<8V,情況與(2)相反,TP工作在飽和區,TN工作在可變電阻區,TP的導通電阻>TN的導通電阻,所以犞O變為低電平。
(5)當犞i>8V,TP截止,TN導通,輸出犞O=0V。可見,兩管在犞i=犞DD/2處轉換狀態,所以CMOS門電路的閾值電壓(或稱門檻電壓)犞th=犞DD/2。
3.工作速度因為CMOS反相器電路具有互補對稱的性質,所以它的開通時間與關閉時間是相等的。電路工作時總有一個管子導通,且管子的導通電阻做得較小,充放電的時間常數就較小,當帶電容負載時,給電容充電和放電過程都比較快。圖3.4.3(a)所示為犞i=0時,TN截止,TP導通。這時由犞DD通過導通的TP向負載電容犆L充電;圖3.4.3(b)所示為犞i=1時,TP截止,TN導通,這時負載電容犆L通過導通的TN放電。可見,充電、放電都是低電阻回路,所以速度較快。CMOS非門的平均傳輸延遲時間約為10ns。
圖3.4.3犆犕犗犛非門帶電容負載的情況3.4.2其他功能的CMOS門電路CMOS係列邏輯門電路中,除上述介紹的反相器(非門)外,還有與非門、或非門、與或非門、異或門、開路門、三態門和傳輸門等電路,並且實際的CMOS邏輯電路,許多都帶有輸入保護電路和緩衝電路。
1.犆犕犗犛與非門和或非門電路(1)CMOS與非門電路圖3.4.4所示為二輸入端CMOS與非門電路,其中包括兩個串聯的N溝道增強型MOS管和兩個並聯的P溝道增強型MOS管。一個NMOS管和一個PMOS管的柵極連接在一起,與一個輸入端相接。當輸入端犃、犅中隻要有一個為低電平時,就會使與它相連的NMOS管截止,與它相連的PMOS管導通,輸出為高電平;僅當犃、犅全為高電平時,才會使兩個串聯的NMOS管都導通,使兩個並聯的PMOS管都截止,輸出為低電平。
這樣,就實現了與非的邏輯功能,即犔=犃·犅幾個輸入端的與非門就必須有幾個NMOS管串聯和幾個PMOS管並聯。相應地,其邏輯表達式為犔=犃·犅·犆…90數字電子技術圖3.4.4犆犕犗犛與非門電路圖3.4.5犆犕犗犛或非門電路(2)CMOS或非門電路圖3.4.5所示是二輸入端CMOS或非門電路,其中包括兩個並聯的NMOS管和兩個串聯的PMOS管。一個NMOS管和一個PMOS管的柵極連接在一起,引出一個輸入端。
當輸入端犃、犅中隻要有一個為高電平時,就會使與它相連的NMOS管導通,與它相連的PMOS管截止,輸出為低電平;僅當犃、犅全為低電平時,兩個並聯NMOS管都截止,兩個串聯的PMOS管都導通,輸出為高電平。
因此,這種電路具有或非的邏輯功能,其邏輯表達式為犔=犃+犅當需要增加輸入端個數到狀時,隻要有狀個NMOS管並聯和狀個PMOS管串聯,仿照圖3.4.5的連接方式,就可以做成狀個輸入端的或非門,從而實現或非邏輯功能:犔=犃+犅+犆+…根據以上CMOS與非門和或非門電路的討論可知,如果輸入端的數目越多,則串聯的管子也越多。若串聯的管子全部導通時,其總的導通電阻會增加,以致影響輸出電平,使與非門的低電平升高,而使或非門的高電平降低。所以,CMOS邏輯門電路的輸入端不宜過多,並且在CMOS電路的輸入和輸出端增加緩衝電路,即CMOS反相器,以規範電路的輸入和輸出邏輯電平。
2.犆犕犗犛與或非門電路CMOS與或非門電路如圖3.4.6所示。當輸入犃、犅都為高電平時,T2、T4導通同時T3、T7截止,輸出低電平;或者當犆、犇都為高電平時,T6、T8導通同時T1、T5截止,輸出為低電平;否則,輸出為高電平。實現了與或非邏輯,犔=犃犅+犆犇。
3.犆犕犗犛異或門電路CMOS異或門電路圖3.4.7所示,它是由兩級組成,前級為或非門,輸出為犡=犃+犅。
後級為與或非門,經過邏輯變換,可得犔=犃·犅+犡=犃·犅+犃+犅=犃·犅+犃·犅=(犃+犅)(犃+犅)=犃犅+犃犅=犃犅。
即輸出犔為輸入犃、犅的異或。
第3章集成邏輯門電路91圖3.4.6犆犕犗犛與或非門電路圖3.4.7犆犕犗犛異或門電路在異或門後麵加接一級反相器就成為異或非門,便具有犔=犃犅+犃犅=犃犅+犃犅=犃⊙犅邏輯的功能,所以異或非門也稱為同或門。
4.輸入、輸出保護電路和緩衝電路CMOS邏輯門通常接入輸入、輸出保護電路和緩衝電路,其電路結構圖如圖3.4.8所示。圖中的基本邏輯功能電路可以是前麵介紹的反相器、與非門、或非門或者它們的組合等任意一種電路。由於這些緩衝電路具有統一的參數,使得集成邏輯門電路的輸入和輸出特性,不再因內部邏輯不同而發生變化,從而使電路的性能得到改善。
圖3.4.8實際集成犆犕犗犛門電路結構圖(1)輸入保護電路CMOS門電路的輸入端是MOS管的柵極,在柵極與溝道之間是很薄的SiO2層,小於0.1μm,極易被擊穿。而輸入電阻高達1012Ω以上,輸入電容為幾皮法。電路在使用前輸入端是懸空的,隻要外界有很小的靜電源,都會在輸入端積累電荷而將柵極擊穿。因此,在CMOS電路的輸入端都增加了二極管保護電路,圖3.4.9所示為輸入保護電路和輸入緩衝電路。圖中犆N和犆P分別表示TN和TP的柵極等效電容,D1和D2是正向導通壓降犞DF=0.5~0.7V的二極管,D2是分布式二極管結構,用虛線和兩個二極管表示。這種分布92數字電子技術式二極管結構可以通過較大的電流,使得輸入引腳上的靜電荷得以釋放,從而保護了MOS管的柵極絕緣層。二極管的反向擊穿電壓約為30V,小於柵極SiO2層的擊穿電壓。
輸入電壓在正常範圍內(0≤犞I≤犞DD),保護電路不起作用。當犞I>(犞DD+犞DF)或,犞I<-犞DF時,MOS管的柵極電位被限製在-犞DF~(犞DD+犞DF)之間,使柵極的圖3.4.9輸入保護電路及緩衝電路SiO2層不會被擊穿。如果輸入電平發生突變時的過衝電壓超出上述輸入電壓範圍,能使二極管D1或D2首先被擊穿。當過衝時間較短時,二極管仍能恢複工作;當過衝時間較長或過衝電壓很大時,可能損壞二極管,進而使MOS管柵極被擊穿。
另外,電阻犚S和MOS管的柵極電容組成積分網絡,使輸入信號的過衝電壓延遲一段時間才作用到柵極上,而且幅度有所衰減。為減小這種延遲對電路動態性能的影響,犚S值不宜過大,一般多晶矽柵極電阻為250Ω。
邏輯門電路輸出端也接入靜電保護二極管,確保輸出不超出正常的工作範圍。
(2)CMOS邏輯門的緩衝電路圖3.4.4和圖3.4.5所示的CMOS與非門和或非門電路的輸入端數目都可以增加。
但是當輸入端數目增加時,對於與非門電路來說,串聯的NMOS管數目要增加,並聯的PMOS管數目也要增加,這樣會引起輸出的低電平變高;對於或非門電路來說,並聯的NMOS管數目要增加,串聯的PMOS管數目也要增加,這樣會引起輸出的高電平變低。為了穩定輸出高低電平,在目前生產的CMOS門電路中,在輸入、輸出端分別加了反相器作緩衝級,圖3.4.10所示為帶緩衝級的二輸入端與非門電路。圖中T1和T2、T3和T4、T9和T10分別組成三個反相器,T5、T6、T7、T8組成或非門。由於輸入、輸出端加了反相器作為緩衝電路,所以電路的邏輯功能也發生了變化。圖中的基本邏輯功能電路是或非門,增加了緩衝器後的邏輯功能為與非功能,經過邏輯變換,可得犃+犅=犃·犅。圖3.4.11是帶緩衝電路的CMOS與非門的邏輯圖。
圖3.4.10帶緩衝級的二輸入端與非門電路第3章集成邏輯門電路93圖3.4.11帶緩衝電路的犆犕犗犛與非門的邏輯圖5.犆犕犗犛漏極開路門和三態(犜犛犔)輸出門電路如果從CMOS集成電路的輸出端看,CMOS漏極開路門和三態輸出門又具有和前麵幾種門電路不同的輸出結構。
(1)CMOS漏極開路(OD門)OD門與TTL集電極開路門(OC門)對應,其特點是可以實現線與。可以用來進行邏輯電平變換,具有較強的帶負載(指的是CMOS門電路作負載)能力等。OD門有多種形式。
圖3.4.12所示是漏極開路的CMOS與非門的電路圖、邏輯符號及輸出線與連接圖。注意使用時必須外接電阻犚P,犚P的選擇原則等同於OC門中的犚P的選擇原則。
圖3.4.12漏極開路(犗犇)與非門電路(2)三態(TSL)輸出門電路利用OD門雖然可以實現線與的功能,但外接電阻犚P的選擇要受到一定的限製而不能取得太小,因此影響了工作速度。同時它省去了有源負載,使得帶負載能力下降。為保持推拉式輸出級的優點,又能作線與連接,跟TTL三態門電路相似,人們也開發了CMOS三態輸出門電路,它的輸出也具有高電平、低電平和高阻態(禁止態)這三種狀態。
CMOS三態輸出門是在普通門電路的基礎上增加控製端和控製電路構成,其電路結構可以有多種形式,如圖3.4.13所示。它是在CMOS反相器基礎上增加一個P溝道和一個N溝道MOS管TP2、TN2並分別與反相器的TP1、TN1串聯而構成。其工作原理是:當犈犖=0時,TP2和TN2同時導通,TN1和TP1組成的非門正常工作,輸出犔=犃。
當犈犖=1時,TP2和TN2同時截止,輸出犔對地和對電源都相當於開路,為高阻狀態。
所以,這是一個使能端犈犖為低電平有效的三態門,邏輯符號如圖3.4.13(b)所示。
94數字電子技術圖3.4.13低電平使能的犆犕犗犛三態非門圖3.4.14(a)所示為高電平使能的三態輸出緩衝電路,其中犃是輸入端,犔為輸出端,犈犖是控製信號輸入端,即使能端,圖3.4.14(b)是它的邏輯符號。
圖3.4.14高電平使能的三態輸出門電路當使能端犈犖=1時,如果犃=0,則犅=1,犆=1,使得TN導通,同時TP截止,輸出端犔=0;如果犃=1,則犅=0,犆=0,使得TN截止,TP導通,輸出端犔=1。當使能端犈犖=0時,不論犃的取值為何,都使得犅=1,犆=0,則TN和TP均截止,電路的輸出端出現開路,既不是低電平,又不是高電平,是高阻工作狀態。
這就是說,當犈犖為有效的高電平時,電路處於正常邏輯工作狀態,犔=犃。而當犈犖為低電平時,電路處於高阻狀態。圖3.4.14(a)所示三態門電路的真值表如表3.4.1所示,其中×表示犃可以是0或1。
表3.4.1高電平使能三態門電路的真值表使能犈犖輸入犃輸出犔1001110×高阻圖3.4.15傳輸門控製的犆犕犗犛三態非門電路第3章集成邏輯門電路95圖3.4.15所示的是低電平使能、傳輸門控CMOS三態非門電路,它是在反相器基礎上增加一級CMOS傳輸門(下麵再作介紹)作為反相器的控製開關。當犈犖=0時,傳輸門導通,輸出犔=犃;當犈犖=1時,傳輸門截止,輸出呈現高阻態。
CMOS電路在使用時應注意對輸入電路進行靜電防護,在電路焊接和調試時注意對電烙鐵、儀器等的良好接地,輸入端不要懸空。另外,輸入端接長線時(如兩塊電路板間通過接插件連接)應串接保護電阻,以限製振蕩脈衝。
6.犆犕犗犛傳輸門傳輸門(TransmissionGate,TG)的應用比較廣泛,可以作為基本單元電路構成各種邏輯電路,用於數字信號的傳輸;也可以在取樣———保持電路、斬波電路、模數和數模轉換等電路中傳輸模擬信號,作為模擬開關。
傳輸門電路由一個N溝道增強型和一個P溝道增強型MOSFET並聯組成,如圖3.4.16(a)所示,邏輯符號如圖3.4.16(b)所示。犆和犆為控製端,使用時總是加互補的信號。為什麼CMOS傳輸門既可以傳輸數字信號,又可以傳輸模擬信號呢?下麵簡要分析它的工作原理。
圖3.4.16犆犕犗犛傳輸門及模擬開關設兩管的開啟電壓犞TN=犞TP。如果要傳輸的信號犞i的變化範圍為0~犞DD,則將控製端犆和犆的高電平設置為犞DD,低電平設置為0,並將TN的襯底接低電平0V,TP的襯底接高電平犞DD。
當犆接高電平犞DD,犆接低電平0V時,若0V<犞i<(犞DD-犞TN),TN導通;若犞TP≤犞i≤犞DD,TP導通。即犞i在0~犞DD的範圍變化時,至少有一管導通,輸出與輸入之間呈低電阻,將輸入電壓傳到輸出端,犞o=犞i,相當於開關閉合。
當犆接低電平0V,犆接高電平犞DD,犞i在0~犞DD的範圍變化時,TN和TP都截止,輸出呈高阻狀態,輸入電壓不能傳到輸出端,相當於開關斷開。
可見,CMOS傳輸門實現了信號的可控傳輸。由於TN和TP的源極和漏極可以互換,所以CMOS傳輸門是雙向器件,即輸入和輸出端允許互換使用。CMOS傳輸門的導通電阻小於1kΩ。當後麵接MOS電路(輸入電阻達1010Ω)或運算放大器(輸入電阻達MΩ)時,可以忽略不計。
模擬開關就是把CMOS傳輸門和一個非門組合起來,由非門產生互補的控製信號來控製的開關,如圖3.4.16(c)所示。
由於CMOS傳輸門的傳輸延遲時間短、結構簡單,除了作為傳輸模擬信號的開關外,也96數字電子技術用於各種邏輯電路的基本單元電路,例如數據選擇/分配器、觸發器等。用CMOS傳輸門構成的2選1數據選擇器如圖3.4.17所示。當控製端犆=0時,輸入端犡的信號被傳到輸出端,犔=犡;而當犆=1時,犔=犢。
3.4.3高速CMOS門電路自CMOS電路問世以來,便以其低功耗、高抗幹擾能力等突出的優點引起了用戶和生產廠商的普遍重圖3.4.17傳輸門構成的數據選擇器視。然而早期生產的CMOS器件是CMOS4000係列,其工作速度較低,而且不易與當時最流行的邏輯係列———雙極型TTL電路相匹配,使它的應用範圍受到了一定的限製。高速CMOS(HC和HCT係列)與4000係列相比,具有較高的工作速度、較強的負載能力。因此,應用領域十分廣闊。
高速CMOS門電路主要有54係列軍用產品和74係列民用產品。54係列和74係列的環境溫度不同,74係列的工作溫度是-40~85℃,54係列的工作溫度是-55~125℃。54係列的製造方法與74係列相同,隻是檢測、篩選方法和標準不同,還有許多其他的說明資料,當然價格也高。使用時可以根據不同的條件和要求選擇不同類型的產品。
這裏介紹兩個74係列CMOS門電路:HC(HighspeedCMOS,高速CMOS)和HCT(HighspeedCMOS,TTLCompatible,與TTL兼容的高速CMOS)。
HC係列隻用於CMOS邏輯的係統中,並可用2~6V的電源,即使采用5V電源,HC器件也不能與TTL門電路兼容。HC門電路使用CMOS輸入電平。當用5V電源時,HC門電路的最小輸入高電平犞IH(min)=3.5V,最大輸入低電平犞IL(max)=1.5V;HC門電路的最小輸出高電平犞OH(min)=3.84V,最大輸出低電平犞OL(max)=0.33V,而TTL器件的輸出高電平為2.4~3.5V。所以,HC門電路不能與TTL門電路兼容。
HCT係列門電路可直接與TTL門電路互換。HCT係列門電路也使用CMOS門電路輸入電平。當用5V電源時,HCT係列門電路的最小輸入高電平犞IH(min)=2.0V,最大輸入低電平犞IL(max)=0.8V;HCT門電路的最小輸出高電平犞OH(min)=3.84V,最大輸出低電平犞OL(max)=0.33V。
與TTL門電路的輸出電平完全匹配,故可直接與TTL門電路互換(TTL用5V電源)。
當用5V電源時,HC係列和HCT係列的CMOS門電圖3.4.18犎犆係列和犎犆犜路的電壓傳輸特性,如圖3.4.18所示。係列的傳輸特性3.4.4CMOS數字集成電路的係列1.犆犕犗犛數字集成電路係列(1)CMOS4000係列這是早期的CMOS集成邏輯門產品,工作電源電壓範圍為3~18V,由於具有功耗低、噪聲容限大、扇出係數大等優點,已得到普遍使用。缺點是工作速度較低,平均傳輸延遲時間為幾十納秒,且工作頻率低,最高工作頻率小於5MHz,驅動能力差,門電路的輸出負載第3章集成邏輯門電路97電流約為0.51mA/門。因此,CMOS4000係列的使用受到一定限製。
(2)高速CMOS電路(HCMOS)係列該係列電路主要從製造工藝上做了改進,使其大大提高了工作速度,平均傳輸延遲時間小於10ns,最高工作頻率可達50MHz。高速CMOS電路主要有54係列和74係列兩大類,其電源電壓範圍為2~6V。它們的主要區別是工作溫度不同,如表3.4.2所示。
表3.4.2犎犆犕犗犛電路54係列和74係列工作溫度的對比54係列74係列參數最小一般最大最小一般最大工作溫度/℃-5525125-402585由表3.4.2可知,HCMOS電路54係列更適合在溫度條件惡劣的環境中工作,而74係列則適合在常規條件下工作。
2.犆犕犗犛4000係列和犎犆犕犗犛係列的比較CMOS4000係列和HCMOS係列的重要參數如表3.4.3所示。
表3.4.3犆犕犗犛4000係列和犎犆犗犕犛係列參數比較係列名稱CMOS400054HC/74HC工作電壓/V55平均功耗/mW5×10-35×10-3平均傳輸延遲時間(每門)/ns458最高工作頻率/MHz550噪聲容限/V22輸出電流/mA0.514輸入電阻/Ω10121012從表3.4.3可以看出,HCMOS電路比CMOS4000係列具有更高的工作頻率和更強的輸出驅動負載的能力,同時還保留了CMOS4000係列的低功耗、高抗幹擾能力的優點,已達到CT54LS/CT74LS的水平,它完全克服了CMOS4000係列存在的問題。因此,它是一種很有發展前途的CMOS器件。
3.犆犕犗犛數字集成電路的特點CMOS集成電路誕生於20世紀60年代末,經過製造工藝的不斷改進,在應用的廣度上,已經與TTL電路平分秋色,它的技術參數從總體上說,已經達到或接近TTL的水平,其中功耗、噪聲容限、扇出係數等參數優於TTL。與TTL數字集成電路相比,CMOS數字集成電路主要有以下特點:(1)功耗低CMOS數字集成電路的靜態功耗極小。如HCMOS在電源電壓為5V時,靜態功耗為10μW,而LSTTL為1.2mW。
(2)電源電壓範圍寬CMOS4000係列的電源電壓為3~18V,HCMOS電路為2~6V,這給電路電源電壓的98數字電子技術選擇帶來了方便。如果采用4.5~5.5V電壓,則與LSTTL可以共用同一電源。
(3)噪聲容限大CMOS非門的高、低電平噪聲容限均達到0.45犞DD,其他CMOS門電路的噪聲容限一般也大於0.3犞DD,且電源電壓越大,其抗幹擾能力越強。因此,CMOS電路的噪聲容限比TTL電路大得多。
(4)邏輯擺幅大CMOS數字集成電路輸出的高電平犞OH>0.9犞DD,接近於電源電壓犞DD,而輸出的低電平犞oL≤0.01犞DD,又接近於0V。因此,輸出邏輯電平幅度的變化接近電源電壓犞DD。
電源電壓越高,邏輯擺幅(即高、低電平之差)越大。
(5)輸入阻抗高在正常工作電源電壓範圍內,輸入阻抗可達1010~1012Ω。
(6)扇出係數大因CMOS電路有極高的輸入阻抗,故其扇出係數很大,一般額定扇出係數可達50。但必須指出的是,扇出係數是指驅動CMOS電路的個數,若就灌電流負載能力和拉電流負載能力而言,CMOS電路是遠遠低於TTL電路的負載電流的。
3.4.5CMOS數字集成電路使用注意事項1.防止靜電CMOS電路的柵極與溝道之間有一層絕緣的二氧化矽薄層,厚度僅為0.1~0.2μm。
由於CMOS電路的輸入阻抗很高,而輸入電容又很小,所以當不太強的靜電加在柵極上時,其電場強度將超過105V/cm。這樣強的電場極易造成柵極擊穿,導致永久損壞。所以,在使用時需注意以下幾點:(1)人體能感應出幾十伏的交流電壓,人們衣服的摩擦也會產生上千伏的靜電(尤其在冬天),故盡量不要用手接觸CMOS電路的引腳。
(2)焊接時宜使用20W的內熱式電烙鐵,電烙鐵外殼應接地。為安全起見,也可先拔下電烙鐵的電源插頭,利用電烙鐵的餘熱進行焊接。焊接時間不要超過5s。操作時,應避免穿戴尼龍、純滌綸等易生靜電的衣褲及手套等。
(3)長期不使用的CMOS集成電路,應用錫紙將全部引腳短路後包裝存放,待使用時再拆除包裝。
(4)更換集成電路時應先切斷電源。
(5)在存儲、攜帶或運輸CMOS器件和焊裝有MOS器件的半成品印製板的過程中,應將集成電路和印製板放置於金屬容器內,也可用鋁箔將器件包封後放入普通容器內,但不要用易產生靜電的尼龍及塑料盒等容器,采用抗靜電的塑料盒當然也可以。
(6)裝配工作台上不宜鋪設塑料或有機玻璃板,最好鋪上一塊平整鋁板或鐵板,如沒有則什麼都不要鋪。
(7)在進行裝配或實驗時,電烙鐵、示波器、穩壓源等工具及儀器儀表都應良好接地,並要經常檢查,發現問題應及時處理。一種簡易檢查接地是否良好的方法是,在電烙鐵及儀器通電時,用電筆測試其外殼,若電筆發亮,說明接地不好;反之,則說明接地良好。
第3章集成邏輯門電路992.正確選擇電源由於CMOS集成電路的工作電源電壓範圍比較寬(CD4000B/4500B:3~18V),故選擇電源電壓時首先考慮要避免超過極限電源電壓。其次要注意電源電壓的高低將影響電路的工作頻率,降低電源電壓會引起電路工作頻率下降或增加傳輸延遲時間。例如,CMOS觸發器,當犞DD由+15V下降至3V時,其最高工作頻率將從10MHz下降到幾十千赫茲。另外,提高電源電壓可以提高CMOS門電路的噪聲容限,從而提高電路係統的抗幹擾能力。
但電源電壓選得越高,電路的功耗越大。不過由於CMOS電路的功耗較小,所以功耗問題不是主要考慮的設計指標。
當CMOS電路輸入端施加的電壓過高(大於電源電壓)或過低(小於0V),或者電源電壓突然變化時,電源電流可能會迅速增大,燒壞器件。為防止燒壞器件,可采取如下措施:(1)要消除電源上的幹擾。
(2)在條件允許的情況下,盡可能降低電源電壓。如果電路工作頻率比較低,則用+5V電源供電最好。
(3)對使用的電源增加限流措施,使電源電流被限製在30mA以內。
3.對輸入端的處理在使用CMOS電路器件時,一般對輸入端有以下要求:(1)應保證輸入信號幅值不超過CMOS電路的電源電壓,即滿足犞SS≤犞I≤犞DD,一般犞SS=0V。
(2)輸入脈衝信號的上升和下降時間一般應小於數微秒,否則將會造成電路工作不穩定或者損壞器件。
(3)所有不用的輸入端不能懸空,應根據實際要求接入適當的電壓(犞DD或0V)。由於CMOS集成電路輸入阻抗極高,所以一旦輸入端懸空,極易受外界噪聲影響,從而破壞了電路的正常邏輯關係,也可能感應靜電,造成柵極被擊穿。
4.對輸出端的處理(1)CMOS電路的輸出端不能直接連到一起,否則導通的P溝道MOS場效應管和導通的N溝道MOS場效應管形成低阻通路,造成電源短路。
(2)在CMOS邏輯係統設計中,應盡量減少電容負載。因為電容負載會降低CMOS集成電路的工作速度和增加功耗。
(3)CMOS電路在特定條件下可以並聯使用。當兩個以上的同型號芯片並聯使用(如各種門電路)時,可增大輸出灌電流和拉電流,提高負載能力,同時也提高了電路的速度。但器件的輸出端並聯時,輸入端也必須並聯。
(4)從CMOS器件輸出驅動電流的大小來看,CMOS電路的驅動能力比TTL電路要差很多,一般CMOS器件的輸出隻能驅動一個LSTTL負載。但從驅動和它本身相同的負載來看,CMOS的扇出係數比TTL電路大得多(CMOS的扇出係數>500)。CMOS電路驅動其他負載時,一般要外加一級驅動器接口電路。不能將電源與地顛倒接錯,否則將會因為電流過大而造成器件損壞。
100數字電子技術3.5犜犜犔電路與犆犕犗犛電路的接口在設計數字電路或數字係統時,設計者從工作速度或功耗指標等方麵的要求出發,合理選擇不同類型的數字集成電路。在目前TTL和CMOS兩種電路並存的情況下,經常會遇到TTL電路與CMOS電路的接口問題。在圖3.5.1中,無論是用TTL電路驅動CMOS電路還是用CMOS電路驅動TTL電路,驅動門必須能為負載門提供符合標準的高、低電平和足夠的驅動電流,必須要滿足下列條件:圖驅動門和負載門的連接驅動門負載門3.5.1犞OH(min)≥犞IH(min)(3.5.1)犞OL(max)≤犞IL(max)(3.5.2)犐OH(max)≥犐IH(總)(3.5.3)犐OL(max)≥犐IL(總)(3.5.4)表3.5.1中列出了TTL、CMOS4000和HCMOS電路的輸出電壓、輸出電流、輸入電壓、輸入電流等參數,供選擇接口電路參考。
表3.5.1犜犜犔和犆犗犕犛邏輯器件主要參數比較參數名稱TTLCOMS7474S74LS74AS74ALS400074HC74HCT輸入低電平電流犐IL(max)/mA1.62.00.40.50.10.0010.0010.001輸入高電平電流犐IH(max)/μA40502020200.10.10.1輸出低電平電流犐OL(max)/mA162082080.5144輸出高電平電流犐OH(max)/mA0.410.420.40.5144輸入低電平電壓犞IL(max)/V0.80.50.80.80.81.51.00.8輸入高電平電壓犞IH(min)/V2.02.02.02.02.03.53.52.0輸出低電平電壓犞OL(max)/V0.40.50.50.50.50.050.10.1輸出高電平電壓犞OH(min)/V2.42.72.72.72.74.954.94.9平均傳輸時間狋pd/ns9.53832.5451013功耗(每門)犘n/mW1019481.20.0050.0050.005電源電壓犞CC或犞DD/V4.75~5.253~182~64.5~5.5注:上述參數均是在電源電壓犞CC或犞DD=5V時測得。
第3章集成邏輯門電路1013.5.1TTL電路驅動CMOS電路由於TTL門的犐OH(max)和犐OL(max)遠遠大於CMOS門的犐IH和犐IL,所以TTL門驅動CMOS門時,主要考慮TTL門的輸出電平是否滿足CMOS輸入電平的要求。
(1)TTL門驅動4000係列和74HC係列從表3.5.1中看出,當都采用5V電源時,TTL的犞OH(min)為2.4V或2.7V,而CMOS4000係列和74HC係列電路的犞IH(min)為3.5V,顯然不滿足要求。這時可在TTL電路的輸出端和電源之間接一上拉電阻犚P,如圖3.5.2(a)所示。犚P的阻值取決於負載器件的數目及TTL和CMOS器件的電流參數,可以用OC門外接上拉電阻的計算方法進行計算。但須注意,此時犞OH(min)<犞IH(min)。為保證負載門輸入高電平的要求,當TTL門輸出高電平時,使犞OH=犞DD-犚P(犐OZ+犐IH(總))(3.5.5)式中:犐OZ為TTL門輸出高電平時輸出管截止時的漏電流;犐IH(總)為流入全部CMOS負載電路的電流。這兩個電流的數值都很小,如果犚P取值不太大,TTL門的輸出電壓可以提升到接近犞DD。一般犚P在幾百歐至幾千歐之間。
如果TTL和CMOS器件采用的電源電壓不同,則宜使用OC門,同時使用上拉電阻犚P,如圖3.5.2(b)所示。
圖3.5.2犜犜犔驅動犆犕犗犛門電路(2)TTL門驅動74HCT係列前麵提到74HCT係列與TTL器件電壓兼容,它的輸入電壓參數為犞IH(min)=2.0V,而TTL的輸出電壓參數為犞OH(min)為2.4V或2.7V。因此,兩者可以直接相連,不需外加其他器件。
3.5.2CMOS門驅動TTL門根據表3.5.1中數據,當都采用5V電源時,CMOS門的犞OH(min)>TTL門的犞IH(min),CMOS的犞OL(max)<TTL門的犞IL(max),兩者電壓參數相容。但是CMOS門的犐OH、犐OL參數較小,所以,這時主要考慮CMOS門的輸出電流是否滿足TTL輸入電流的要求。
【例3.5.1】一個74HC00與非門電路能否驅動4個7400與非門?能否驅動4個74LS00與非門?
解從表3.5.1中查出,74係列門的犐IL=1.6mA,74LS係列門的犐IL=0.4mA,4個102數字電子技術74門的犐IL(總)=4×1.6=6.4(mA),4個74LS門的犐IL(總)=4×0.4=1.6(mA)。而74HC係列門的犐OL=4mA,所以不能驅動4個7400與非門,可以驅動4個74LS00與非門。
要提高CMOS門的驅動能力,可將同一芯片上的多個門並聯使用,如圖3.5.3(a)所示。
多個CMOS門的並聯是指其對應的輸入端和輸出端都對應並聯。也可在CMOS門的輸出端與TTL門的輸入端之間加一CMOS驅動器,如圖3.5.3(b)所示。
圖3.5.3犆犕犗犛驅動犜犜犔門電路3.5.3TTL和CMOS門電路帶負載時的接口電路在工程實踐中,常常需要用TTL或CMOS電路去驅動指示燈、發光二極管LED、繼電器等負載。
對於電流較小、電平能夠匹配的負載可以直接驅動,圖3.5.4(a)所示為用TTL門電路驅動發光二極管LED,這時隻要在電路中串接一個約幾百歐姆的限流電阻即可。如果LED的額定電流為犐F,額定電壓為犞D,則限流電阻犚=(犞CC-犞D-犞OL)/犐F。實際應用中,往往是根據計算結果選取靠近係列產品規格的電阻元件。
圖3.5.4(b)所示為用TTL門電路驅動5V低電流繼電器,其中阻尼二極管D作阻尼保護,在與非門關斷時,繼電器的初級電感線圈會產生較大的下麵正極性上麵負極性的感應電壓,這時二極管D正好導通,可以釋放電感中的電流能量。由於D的阻尼作用,把感應電壓限製在0.7V範圍,用以防止感應過電壓擊穿與非門。
圖3.5.4門電路帶小電流負載如果負載電流較大,可將同一芯片上的多個門並聯作為驅動器,如圖3.5.5(a)所示。
原則上隻用少數幾個並聯使用,總的驅動電流略大於負載電流(留有餘地)即可。當單個門第3章集成邏輯門電路103驅動電流比負載電流小得多時,一般不使用多個門並聯的方法,而是在門電路輸出端接一隻三極管,以提高負載能力,如圖3.5.5(b)所示。如果負載電流很大,則適宜選用功率三極管或者複合功率管。
圖3.5.5門電路帶大電流負載3.6門電路邏輯功能測試及犕狌犾狋犻狊犻犿10仿真門電路有許多種,如:與門、或門、非門、與非門、或非門、與或非門、異或門、OC門等,但其中與非門用途最廣,用與非門可以組成其他許多邏輯門。要實現其他邏輯門的功能,隻要將該門的邏輯函數表達式化成與非與非表達式,然後用多個與非門連接起來就可以達到目的。例如,要實現或門犢=犃+犅,根據摩根定律,或門的邏輯函數表達式可以寫成:犢=犃·犅,可用三個與非門連接實現。
74LS00是“TTL係列”中的與非門,CD4011是“CMOS係列”中的與非門,它們都是四-二輸入與非門電路,即在一塊集成電路內含有四個獨立的與非門,圖3.6.174犔犛00結構圖每個與非門有2個輸入端。如圖3.6.1所示。
3.6.1與非門邏輯功能測試與仿真單擊電子仿真軟件Multisim10基本界麵左側左列真實元件工具條的“TTL”按鈕,從彈出的對話框中選取一個與非門74LS00N,將它放置在電子平台上;單擊真實元件工具條的“Source”按鈕,將電源犞CC和地線調出放置在電子平台上;單擊真實元件工具條的“Basic”按鈕,將單刀雙擲開關“J1”和“J2”調出放置在電子平台上,並分別雙擊“J1”和“J2”圖標,將彈出的對話框的“KeyforSwitch”欄設置成“1”和“2”,最後點擊對話框下方“OK”按鈕退出。
再調出虛擬萬用表與小燈泡放置在電子平台上,將所有元件和儀器連成仿真電路如圖3.6.2所示。
104數字電子技術圖3.6.2與非門邏輯功能測試與仿真打開仿真開關,按表3.6.1所示,分別按動鍵盤上的數字鍵“1”和“2”,使與非門的兩個輸入端為表中四種情況,從虛擬萬用表的放大麵板上讀出各種情況的直流電位,將它們填入表內,並將電位轉換成邏輯狀態填入表內。
表3.6.1與非門測試結果輸入端輸出端犃犅電位(V)邏輯狀態00510151105111003.6.2用與非門組成其他功能門電路(1)用與非門實現或門功能根據摩根定律,或門的邏輯函數表達式犙=犃+犅可以寫成:犙=犃·犅,因此,可以用三個與非門構成或門。用“與非門”實現“或門”功能:調出邏輯轉換儀,雙擊其圖標,在打開的儀表窗口的下邊框內輸入犃+犅,如圖3.6.3所示,點擊邏輯轉換儀右邊的,結果得到圖示電路。點擊邏輯轉換儀右邊的,得到如圖3.6.4所示真值表。
圖3.6.3與非門實現或門電路第3章集成邏輯門電路105圖3.6.4與非門實現或門的真值表可以利用Multisim10對上述或門電路的功能進行仿真測試。先從電子仿真軟件Multisim10基本界麵左側左列真實元件工具條的“TTL”按鈕中調出3個與非門74LS00N;從真實元件工具條的“Basic”按鈕中調出2個單刀雙擲開關,並分別將它們設置成Key=犃和Key=犅;從真實元件工具條的“Source”按鈕中調出電源和地線;紅色指示燈從虛擬元件工具條中調出。
把它們連成或門仿真電路如圖3.6.5所示。打開仿真開關,按表3.6.2要求,分別按動“1”和“2”,觀察並記錄指示燈的發光情況,將結果填入表3.6.2中。根據表3.6.2分析,確實實現了或門電路的功能。
圖3.6.5與非門構成或門電路仿真表3.6.2或門測試結果輸入輸出犃犅犢000011101111106數字電子技術(2)用與非門實現異或門功能按圖3.6.6所示調出元件並組成異或門仿真電路。打開仿真開關,按表3.6.3要求,分別按動“1”和“2”,觀察並記錄指示燈的發光情況,將結果填入表3.6.3中。
圖3.6.6異或門仿真電路表3.6.3異或門測試結果輸入輸出犃犅犢000011101110(3)用與非門組成同或門按圖3.6.7所示調出元件並組成同或門仿真電路。打開仿真開關,按表3.6.4要求,分別按動“1”和“2”,觀察並記錄指示燈的發光情況,將結果填入表3.6.4中。由表可知,該電路實現了同或門的邏輯功能。
圖3.6.7同或門仿真電路第3章集成邏輯門電路107表3.6.4同或門仿真結果輸入輸出犃犅犢0010101001113.6.3CMOS反相器功能仿真CMOS邏輯門電路是由N溝道MOSFET和P溝道MOSFET互補而成,通常稱為互補型MOS邏輯電路,簡稱CMOS邏輯電路。圖3.6.8表示CMOS反相器電路,由兩隻增強型MOSFET組成。它們的柵極相連作為反相器的輸入端,漏極相連作為反相器的輸出端。圖3.6.9為該反相器的仿真測試結果。由圖可知,實現了反相器功能。
圖3.6.8測試電路圖圖3.6.9仿真結果檪檪殏檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪殏檪本章小結檪檪邏輯門電路的主要技術參數有輸入和輸出高、低電平的最大值或最小值、噪聲容限,傳輸延遲檪檪檪檪時間,功耗,延遲功耗積,扇入數和扇出數等。檪檪在數字電路中,不論哪一種邏輯門電路,其中的關鍵器件是MOS管或三極管BJT,它們均可檪檪檪以作為開關器件。影響它們開關速度的主要因素是器件內部各電極之間的結電容。
檪檪檪檪TTL邏輯門電路是應用較廣泛的門電路之一,電路由若幹BJT和電阻組成。TTL與非門采檪檪用多發射極三極管的輸入級,輸出級采用推拉式結構,其目的是為提高開關速度和增強帶負載的檪檪能力。常用的還有非門、或非門、異或門以及可以線與接法的集電極開路門和三態輸出門。
檪檪TTL檪檪利用肖特基二極管構成抗飽和TTL電路,可以提高開關速度。
檪檪ECL邏輯門電路是以差分放大電路為基礎的,它不工作在BJT的飽和區,因而開關速度較高。
檪檪殏檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪其缺點是功耗較大,噪聲容限低。檪殏檪108數字電子技術檪檪殏檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪殏檪檪CMOS邏輯門電路是目前已經超越TTL門而應用最廣泛的邏輯門電路。其突出優點是集成檪檪度高、功耗低、扇出係數大(指帶同類門負載)、噪聲容限大、開關速度較高。CMOS邏輯門電路中,檪檪檪檪為了實現線與的邏輯功能,也可采用漏極開路門和三態門。
檪檪在邏輯門電路的實際應用中,有可能遇到不同類型門電路之間、門電路與負載之間的接口技檪檪術問題以及抗幹擾工藝問題。正確分析與解決這些問題,是數字電路設計工作者應當掌握的。
檪檪殏檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪用可以進行門電路的邏輯功能測試和仿真。檪殏檪Multisim10●練習題3.1半導體二極管的開、關條件是什麼?導通和截止時各有什麼特點?和理想開關比較,它的主要缺點是什麼?
3.2如題圖3.2(a~d)所示的二極管電路,其輸入電壓犞i的波形如題圖3.2(e)所示。
試對應畫出各電路輸出電壓犞o1~犞o4的波形。設二極管正向壓降為犞D=0.7V。
題圖3.23.3半導體三極管的開、關條件是什麼?飽和導通和截止時各有什麼特點?和半導體二極管比較,它的主要優點是什麼?
3.4判斷如題圖3.4所示各電路中晶體管的工作狀態,並計算輸出電壓犞o的值。設晶體管導通後犞BE=0.7V。
題圖3.43.5N溝道增強型MOS管的開、關條件是什麼?導通和截止時各有什麼特點?和P溝通增強型MOS管比較,兩者的主要區別是什麼?
第3章集成邏輯門電路1093.6TTL門電路如題圖3.6所示,試分析電路的邏輯功能,並估計輸入端犃的電位分別為0.3V和3.6V時a~e各點的電位。
3.7有TTL集電極開路門組成的邏輯電路如題圖3.7所示,電源電壓5V,要求高電平的輸出電壓為3V,低電平的輸出電壓為0.2V。圖中其他邏輯門電路均為74LS係列產品,高電平輸入時的輸入題圖3.6電流為20μA,低電平輸入時的輸入電流為-0.4mA;邏輯電路的高電平輸出時,輸出電流為0.4mA,低電平輸出時,輸出電流為8mA。計算上拉電阻犚L的取值範圍,並寫出各個輸出端的邏輯函數表達式。
題圖3.73.8TTL三態與非門組成的邏輯電路如題圖3.8所示,控製端犆=0時,犌1為高電阻態,犌2為工作態。控製端犆=1時,犌1為工作態,犌2為高電阻態。分析電路的輸出量犔與輸入變量犃、犅之間的邏輯關係。
3.9邏輯電路如題圖3.9所示,三態門電路的電源電壓為5V,圖中各個三態門電路的輸入信號電壓犞i的波形如圖(d)所示。題圖試畫出圖中(a~c)各個電路連接的情況下輸出電壓的波形。3.8題圖3.93.10TTL集電極開路門電路組成如題圖3.10所示電路。分析電路的功能,指出犚C取值考慮因素,寫出輸出犢的邏輯表達式。
110數字電子技術題圖3.10題圖3.113.11TTL與非門犌1、犌2和三極管T組成題圖3.11所示電路。已知TTL與非門的犞OH=3.6V,犞OL=0.3V,犐OH=400μA,犐OL=16mA;三極管的犞BE=0.7V,犞CES≈0.3V,β=40,發光二極管犇導通壓降犞D=1.5V,正向電流犐D=5~10mA。
(1)確定集電極電阻犚C取值範圍;(2)若犚C=400Ω,確定基極電阻犚B的取值範圍。
3.12求下列情況下TTL邏輯門的扇出係數。
(1)74LS門驅動同類門;(2)74LS門驅動74ALS係列TTL門。
3.13求如題圖3.13所示電路輸出邏輯表達式。
3.14題圖3.14表示三態門做總線傳輸的示意圖,圖中狀個三態門的輸出接到數據傳輸總線,犇1、犇2、…、犇狀為數據輸入端,CS1、CS2、…、CS狀為片選信號輸入端。試問:(1)CS信號如何控製,以便數據犇1、犇2、…、犇狀通過該總線進行正常傳輸?
(2)CS信號能否有兩個或兩個以上同時有效?
(3)如果所有CS信號均無效,總線處在什麼狀態?
題圖3.13題圖3.14題圖3.153.15在題圖3.15的電路中,已知OD門犌1、犌2輸出高電平時輸出端MOS管的漏電流犐OH(max)=5μA;輸出電流犐OL(max)=10mA時,輸出低電平犞OL≤0.3V。若取犞OD=5V,第3章集成邏輯門電路111試計算在保證犞OH≥3.5V、犞OL≤0.3V的條件下,外接電阻犚p的取值範圍。
3.16如題圖3.16所示為由犖溝道增強型MOS管構成的門電路(稱為NMOS門電路)。試分析各個電路的邏輯功能。
題圖3.163.17試分析題圖3.17所示的電路,寫出其邏輯表達式,說明它是什麼邏輯電路。
3.18求題圖3.18所示電路的輸出邏輯表達式。
題圖3.17題圖3.183.19試分析題圖3.19所示的CMOS電路,說明它們的邏輯功能。
題圖3.19112數字電子技術3.20試分析題圖3.20所示傳輸門構成的電路,寫出其邏輯表達式,說明它是什麼邏輯電路。
題圖3.203.21同一邏輯函數可以有多種實現方式。某些器件有“線與”功能,因此,用“線與”方式可能產生較好的效果。有四變量函數犢(犃,犅,犆,犇)=犃犅犆犇+犃犅犆+犃犆犇+犃犆,試用“線與”的方法加以實現。
3.22CMOS集成門電路如題圖3.22所示。列出真值表,說明邏輯功能,並畫出其邏輯符號。
題圖3.223.23當CMOS和TTL兩種門電路相互連接時,要考慮哪幾個電壓和電流參數?這些參數應該滿足怎樣的關係?
3.24設計一發光二極管(LED)驅動電路,設LED的參數為犞F=2.5V,犐D=4.5mA;若犞CC=5V,當LED發亮時,電路的輸出為低電平,選用集成門電路的型號,並畫出邏輯電路圖。
第4章組合邏輯電路檪檪殏檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪殏檪本章學習目的和要求檪檪1.掌握組合邏輯電路的基本分析方法,掌握組合邏輯電路設計的一般方法;檪檪2.能對常用組合邏輯部件的工作原理進行分析,得到正確的邏輯關係;檪檪檪檪3.掌握加法器、編碼器、譯碼器、數據分配器、數據選擇器和數值比較器的邏輯功能;檪檪4.會閱讀組合邏輯器件的功能表,能用MSI器件設計出常用的組合邏輯部件並根據設檪檪計要求完成電路的正確連接;檪檪檪殏檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪了解組合邏輯電路中的冒險現象和產生原因。檪殏檪5.本章首先介紹組合邏輯電路的共同特點、一般分析方法和設計方法,然後講述加法器、編碼器、譯碼器、數據分配器、數據選擇器、數值比較器等常用組合邏輯集成電路的工作原理和邏輯功能及其使用方法,並討論組合邏輯電路中存在的競爭冒險現象,包括競爭冒險的產生原因、判別方法及消除方法,最後介紹用Multisim10分析組合邏輯電路的實例。
4.1概述數字邏輯電路按照邏輯功能的不同,可分為兩大類:一類是組合邏輯電路(CombinationalLogicalCircuit),簡稱組合電路;另一類是時序邏輯電路(SequentialLogicalCircuit),簡稱時序電路。本章介紹組合邏輯電路,時序邏輯電路將在以後介紹。
4.1.1組合邏輯電路的特點組合邏輯電路是指電路在任一時刻的電路輸出狀態隻與同一時刻各輸入狀態的組合有關,而與前一時刻的輸出狀態無關。組合電路沒有記憶功能,這是組合電路在邏輯功能上的共同特點。
前麵所講的邏輯門電路就是簡單的組合邏輯電路。為了保證組合電路的邏輯功能,組合電路在電路結構上要具備以下兩點:(1)輸出、輸入電路之間沒有反饋延遲通路,即信號隻有從輸入到輸出的單向傳輸,沒有從輸出到輸入的反饋回路。
(2)電路中不包含有存儲單元,全部由門電路組成,例如觸發器等。這也是組合邏輯電路結構的共同特點。
4.1.2組合邏輯電路的邏輯功能描述組合邏輯電路主要由門電路組成,可以有多個輸入端和多個輸出端。組合電路的電路結構如圖4.1.1所示。
書114數字電子技術組合電路有狀個輸入變量犃1、犃2、犃3、…、犃狀,有犿個輸出變量犔1、犔2、犔3、…、犔犿,輸出變量是輸入變量的邏輯函數。根據組合邏輯電路的概念,可以用下麵邏輯函數表達式來描述該邏輯電路的邏輯功能:(,,,…,)烄犔1=犉1犃1犃2犃3犃狀圖4.1.1組合邏輯電路示意圖犔2=犉2(犃1,犃2,犃3,…,犃狀)烅(4.1.1)烆犔犿=犉犿(犃1,犃2,犃3,…,犃狀)組合電路的邏輯功能除了可以用邏輯函數表達式來描述外,還可以用邏輯真值表、卡諾圖和邏輯圖等方法來描述,以使組合電路的邏輯功能表述更加方便、直觀、明顯,有利於組合電路的分析和設計。
4.2組合邏輯電路的分析和設計4.2.1組合邏輯電路的分析分析組合邏輯電路的目的是,對於一個給定的邏輯電路,確定其邏輯功能。分析組合邏輯電路的步驟大致如下:(1)根據邏輯電路,從輸入到輸出,寫出各級邏輯函數表達式,直到寫出最後輸出端與輸入信號的邏輯函數表達式。
(2)將各邏輯函數表達式化簡和變換,以得到最簡單的表達式。
(3)根據簡化後的邏輯表達式列出真值表。
(4)根據真值表和簡化後的邏輯表達式對邏輯電路進行分析,最後確定其功能。
下麵舉例來說明組合邏輯電路的分析方法。
【例4.2.1】組合電路如圖4.2.1所示,分析該電路的邏輯功能。
解(1)由邏輯圖逐級寫出邏輯表達式。為了寫表達式方便,借助中間變量犘。
犘=犃犅犆犔=犃犘+犅犘+犆犘圖例電路圖=犃犃犅犆+犅犃犅犆+犆犃犅犆4.2.14.2.1(2)化簡與變換。因為下一步要列真值表,所以要通過化簡與變換,使表達式有利於列真值表,一般應變換成與或式或最小項表達式。
犔=犃犅犆(犃+犅+犆)=犃犅犆+犃+犅+犆=犃犅犆+犃犅犆(4.2.1)(3)由表達式列出真值表,見表4.2.1。經過化簡與變換的表達式為兩個最小項之和的非,所以很容易列出真值表。
第4章組合邏輯電路115表4.2.1例4.2.1電路的真值表犃犅犆犔00000011010101111001101111011110(4)分析邏輯功能。由真值表可知,當犃、犅、犆三個變量不一致時,電路輸出為“1”,所以這個電路稱為“不一致電路”。
本例中的輸出變量隻有一個,對於多輸出變量的組合邏輯電路,分析方法也與此相同。
【例4.2.2】試分析圖4.2.2電路的邏輯功能。
解(1)根據給出的邏輯圖,當邏輯函數式並不複雜時,則可省去化簡步驟。於是得出犔1、犔2和犃、犅、犆、犇之間的邏輯函數式:犔1=(犃犅)(犆犇)=犃犅犆犇(4.2.2)犔2=犃犅犆犇圖4.2.2例4.2.2電路圖(2)從上麵這個邏輯函數表達式中我們還不能一下子看出電路的邏輯功能。為此,我們把式(4.2.2)轉換成真值表形式,得到表4.2.2。
表4.2.2圖4.2.2電路的真值表犃犅犆犇犔1犔2犃犅犆犇犔1犔2000001100010000110100101001010101001001101101110010010110001010101110110011001111010011110111101從表4.2.2可以看出,當犃犅犆犇的取值是奇數個1時,犔1為1,當犃犅犆犇的取值是偶數個1時,犔2為1。所以,這個電路的邏輯功能是檢測輸入的4位數據中包含“1”的個數是奇116數字電子技術數還是偶數。它是一個4位的奇偶校驗器。
【例4.2.3】已知邏輯電路如圖4.2.3所示,分析其邏輯功能。
圖4.2.3例4.2.3的邏輯電路圖解(1)根據圖4.2.3,逐級寫出邏輯函數式,直到寫出最終輸出的邏輯函數表達式為犛=犃·犃犅·犅·犃犅()犆=犃犅4.2.3(2)將犛邏輯函數表達式進行化簡和變換:犛=犃·犃犅·犅·犃犅=犃·犃犅+犅·犃犅=犃(犃+犅)+犅(犃+犅)=犃犃+犃犅+犃犅+犅犅=犃犅+犃犅=犃犅(4.2.4)(3)根據犛=犃犅,犆=犃犅列出真值表4.2.3例4.2.3的真值表表,如表4.2.3。輸入輸出(4)根據邏輯函數表達式和真值表,分犃犅犆犛析邏輯功能。由真值表可以看出,把犃當作加數,犅當作被加數,則犛為和,犆為進位。0000所以,圖4.2.3是兩個一位二進製數的加法0101器,稱為半加器,是組合邏輯電路中的常用器1001件之一。11104.2.2組合邏輯電路的設計組合邏輯電路設計的任務,就是根據實際應用需要所提出的邏輯問題,設計出滿足這一邏輯問題要求的邏輯電路。所以,組合電路的設計過程正好與分析過程相反。對於工程設計人員來說,一般要求設計的電路簡單,所用器件的種類和每種器件的數目盡可能少,所以前麵介紹的用代數法和卡諾圖法來化簡邏輯函數,就是為了獲得最簡的邏輯表達式,有時還需要一定的變換,以便能用最少的門電路、最少的集成器件品種來組成邏輯電路,使設計的電路能夠多方麵兼顧,能夠使電路結構緊湊、成本低廉、工作可靠而且經濟效益高。電路的實現可以采用小規模集成門電路、中規模組合邏輯器件或者可編程邏輯器件。因此,邏輯函數的化簡也必須結合實際所選用的器件進行。
由此我們可得出,組合邏輯電路的設計步驟大致如下:(1)明確實際問題的邏輯功能。許多實際設計要求是用文字描述的,因此,需要確定實際問題的邏輯功能,並確定輸入、輸出變量數及表示符號。
第4章組合邏輯電路117(2)根據對電路邏輯功能的要求,列出真值表。
(3)根據真值表寫出邏輯表達式。
(4)簡化和變換邏輯函數表達式,畫出邏輯電路圖。
下麵舉例說明設計組合邏輯電路的方法和步驟。
【例4.2.4】設計一個犃、犅、犆三人表決電路,結果按“少數服從多數”的原則決定,但是犃有否決權。
解(1)根據設計要求建立該邏輯函數的真值表。
設三人的意見為變量犃、犅、犆,表決結果為函數犔。對變量及函數進行如下狀態賦值:對於變量犃、犅、犆,設同意為邏輯“1”,不同意為邏輯“0”。對於函數犔,設事情通過為邏輯“1”,沒通過為邏輯“0”。顯然,當犃=0時,犃行使否決權,故犔=0。列出真值表如表4.2.4所示。
(2)由真值表寫出邏輯表達式:犔=犃犅犆+犃犅犆+犃犅犆該邏輯函數式不是最簡的邏輯函數式。
(3)化簡。由於卡諾圖化簡法較方便,故一般用卡諾圖進行化簡。將該邏輯函數填入卡諾圖,如圖4.2.4所示。合並最小項,得最簡與或表達式:犔=犃犅+犃犆(4.2.5)表4.2.4例4.2.4的真值表犃犅犆犔0000001001000110100010111101圖4.2.4例4.2.4的卡諾圖1111如果用與非門實現,則變換成與非與非式:犔=犃犅+犃犆=犃犅·犃犆(4.2.6)(4)畫邏輯圖。用與門、或門實現的邏輯圖如圖4.2.5所示,用與非門實現的邏輯圖如圖4.2.6所示。
圖4.2.5例4.2.4的邏輯圖圖4.2.6例4.2.4用與非門實現的邏輯圖118數字電子技術【例4.2.5】某電灌站有大中小犔0、犔1、犔2三台電動水泵,其中犔0為大功率泵,犔1為中功率泵,犔2為小功率泵。抽水灌溉過程中,根據保證灌溉用水同時節約用水的原則,按照“灌溉渠水位低於下限水位犆時,三台水泵都啟動運行;水位達到犆或超過犆但低於中等水位犅時,啟動大水泵和小水泵;達到和超過水位犅但低於上限水位犃時,啟動中、小水泵;水位達到上限水位犃時,三台水泵都停止運行”的要求,設計一個控製水泵啟動運行的控製電路。
解(1)列真值表。
設輸入信號犃、犅、犆,水位達到和超過下限水位犆時,犆為邏輯“1”,否則犆為邏輯“0”;水位達到和超過中等水位犅時,犅為邏輯“1”,否則犅為邏輯“0”;水位達到(和超過)上限水位犃時,犃為邏輯“1”,否則犃為邏輯“0”。
對於輸出,使水泵啟動運行,對應輸出為邏輯“1”,否則為邏輯“0”。
由於實際水位高低的變化過程中,犅為1時犆肯定為1,犃為1時,犅和犆肯定都為1。
因而犃、犅和犆這三個輸入變量的可能組合中,010、100、101、110這四種組合是不會出現的。由此很容易列出邏輯真值表如表4.2.5所示。
表4.2.5例4.2.5的真值表輸入輸出犃犅犆犔0犔1犔2000111001101011011111000(2)由真值表寫出各輸出邏輯函數的表達式:犔0=犃犅犆+犃犅犆犔1=犃犅犆+犃犅犆犔2=犃犅犆+犃犅犆+犃犅犆考察真值表,犔0為1,犅為0,犃對犔0無影響;同理,犅和犆對犔2也無影響;考慮到010、100、101、110這四種變量組合不會出現,故在化簡邏輯表達式時可以把它們作為任意項處理(也可以用卡諾圖法化簡)。所以,邏輯函數表達式為犔0=犃犅犆+犃犅犆=犅(4.2.7)犔1=犃犅犆+犃犅犆=犃犅犆+犃犅犆+犃犅犆+犃犅犆=犃犅+犆犔2=犃犅犆+犃犅犆+犃犅犆=犃若采用與非門實現,將犔1轉換為與非表達式,可得犔0=犅()犔1=犃犅+犆=犃犅+犆=犃犅·犆4.2.8犔2=犃(3)畫出邏輯圖。
按照表達式(4.2.7),用非門、與門和或門實現的邏輯圖如圖4.2.7所示。
第4章組合邏輯電路119而按照表達式(4.2.8),用一片集成與非門7400來實現的邏輯圖如圖4.2.8所示。
圖4.2.7用非門、與門和或門實現的邏輯電路圖4.2.8例4.2.5用與非門實現的邏輯圖比較圖4.2.7和圖4.2.8,從邏輯圖上看兩者都是簡單的,而且使用的門電路的個數也差不多,但是實際應用時都是采用集成電路芯片。圖4.2.7要用非門、二輸入與門和二輸入或門三種集成芯片,所需集成芯片元件種數多,成本偏高。而圖4.2.8隻用了與非門一種,一片7400(每片含四個二輸入與非門)就可以完成,顯然成本較低。在實際設計邏輯電路時,有時並不是表達式最簡單,就一定能滿足設計要求,還應考慮所使用集成器件的種類,將表達式轉換為能用所要求的集成器件實現的形式,並盡量使所用集成器件(器件數目和器件種數)最少,就是設計步驟中所說的“簡化和變換邏輯函數表達式”。
【例4.2.6】試設計一個碼變換器,將十進製的4位二進製碼(8421BCD)轉換成典型格雷碼。
解(1)分析題意,確定輸入變量與輸出變量的數目。
題目給定的4位二進製碼(8421BCD),可以直接作為輸入變量,用犅3、犅2、犅1、犅0表示;輸出4位格雷碼用犌3、犌2、犌1、犌0表示。
(2)根據4位8421BCD碼和典型格雷碼的因果關係列出真值表,如表4.2.6所示。
表4.2.68421犅犆犇碼轉換為格雷碼的真值表輸入變量輸出變量犅3犅2犅1犅0犌3犌2犌1犌000000000000100010010001100110010010001100101011101100101011101001000110010011101120數字電子技術(續表)輸入變量輸出變量犅3犅2犅1犅0犌3犌2犌1犌01010××××1011××××1100××××1101××××1110××××1111××××(3)根據真值表,填寫輸出函數卡諾圖。因為十進製隻有10個數碼,而4位8421BCD碼有16種組合狀態,其中後6種組合1010~1111屬於禁用碼。在卡諾圖中做任意項處理,得到的犌3、犌2、犌1、犌0的卡諾圖如圖4.2.9所示。
圖4.2.9例4.2.6的卡諾圖(4)根據卡諾圖,得出犌0~犌3的邏輯函數表達式:犌0=犅1犅0犌1=犅2犅1(4.2.9)犌2=犅3犅2犌3=犅3第4章組合邏輯電路121需要指出的是,犌2的卡諾圖畫的不是大圈,畫大圈得到的是犌2=犅3+犅2將更簡單。但是這更簡單的邏輯表達式要多用一種或門器件,而犌1、犌0都是用異或門,故犌2=犅3犅2采用異或門就減少了器件種類。這就更切合工程中的實際應用情況。
(5)根據邏輯函數表達式繪出邏輯電路圖4.2.10。
4.3加法器圖4.2.10例4.2.6的邏輯電路算術運算是數字係統的基本功能,更是計算機中不可缺少的組成單元。在計算機中,加法是一種基本運算,其他的算術運算往往是轉換為加法進行的。能夠實現二進製加法運算的邏輯電路稱為加法器。
4.3.1半加器和全加器半加器和全加器是算術運算電路中的單元,都是完成1位二進製數相加的一種組合邏輯電路。隻能進行本位加數、被加數的加法運算而不考慮相鄰低位進位的邏輯部件叫做半加器;能同時進行本位加數、被加數和相鄰低位的進位信號的加法運算的邏輯部件稱為全加器。
1.半加器半加器不考慮低位來的進位,最低位的加法就是半加。半加器有兩個輸入端,分別為加數犃和被加數犅;輸出也是兩個,分別為和數犛和向相鄰高位的進位犆。其方框圖如圖4.3.1所示,真值表如表4.3.1所示。
表4.3.1半加器的真值表輸入輸出加數犃被加數犅和數犛進位數犆000001101010圖4.3.1半加器框圖1101由真值表可直接寫出輸出邏輯函數表達式:犛=犃犅+犃犅=犃犅(4.3.1)犆=犃犅可見,可以用一個異或門和一個與門組成半加器,如圖4.3.2所示。
如果想用與非門組成半加器,則將上式用代數法變換成與非形式:犛=犃犅+犃犅=犃犅+犃犅+犃犃+犅犅=犃(犃+犅)+犅(犃+犅)=犃·犃犅+犅·犃犅=犃·犃犅·犅·犃犅122數字電子技術犆=犃犅=犃犅(4.3.2)由此畫出用與非門組成的半加器邏輯電路圖,如圖4.3.3所示,與上一節例4.2.3的圖4.2.3相比,僅僅用二輸入端的與非門代替了圖4.2.3中的非門而已。其專用邏輯符號如圖4.3.4所示。
圖4.3.2由異或門和與門組成的半加器圖4.3.3與非門組成的半加器圖4.3.4半加器的邏輯符號圖4.3.5全加器框圖2.全加器除了最低位以外,在多位數加法運算時,其他各位都需要考慮低位送來的進位。考慮低位來的進位的加法稱為全加,全加器就具有這種功能。全加器方框圖如圖4.3.5所示,真值表如表4.3.2所示。表中的犃i和犅i分別表示被加數和加數輸入,犆i-1表示來自相鄰低位的進位輸入。犛i為本位和輸出,犆i為向相鄰高位的進位輸出。
表4.3.2全加器的真值表輸入輸出犃i犅i犆i-1犛i犆i0000000110010100110110010101011100111111第4章組合邏輯電路123由真值表直接寫出犛犻和犆犻的輸出邏輯函數表達式,再經代數法化簡和轉換,得犛i=犃i犅i犆i-1+犃i犅i犆i-1+犃i犅i犆i-1+犃i犅i犆i-1=(犃i犅i)犆i-1+(犃i犅i)犆i-1=犃i犅i犆i-1(4.3.3)犆i=犃i犅i犆i-1+犃i犅i犆i-1+犃i犅i犆i-1+犃i犅i犆i-1=犃i犅i+(犃i犅i)犆i-1根據邏輯表達式(4.3.3)畫出全加器的邏輯電路如圖4.3.6(a)所示,圖4.3.6(b)所示為全加器的代表符號。
圖4.3.6全加器用兩個半加器和一個或門也可以組成全加器,電路如圖4.3.7所示。
圖4.3.7用兩個半加器和一個或門組成的全加器邏輯圖4.3.2多位加法器1.串行進位加法器兩個多位數相加時每一位都是帶進位相加的,因而必須使用全加器。隻要依次將低位全加器的進位輸出端犆i接到高位全加器的進位輸入端犆i-1,就可以構成多位加法器了。
圖4.3.8就是根據上述原理接成的4位串行進位加法器電路。從圖中可見,兩個4位相加數犃3犃2犃1犃0和犅3犅2犅1犅0的各位同時送到相應全加器的輸入端,進位數犆i串行傳送。全加器的個數等於相加數的位數,最低位全加器的犆i-1端應接0。顯然,每一位的相加結果都必須等到低一位的進位產生以後才能建立起來,因此將這種結構的電路稱為串行進位加法器。
這種加法器的最大缺點是運算速度慢。在最不利的情況下,做一次加法運算需要經過4個全加器的傳輸延遲時間(從輸入加數到輸出狀態穩定建立起來所需要的時間)才能得到穩定可靠的運算結果。因為進位信號是串行傳遞的,圖4.3.8中最後一位的進位輸出犆3要經過四位全加器傳遞之後才能形成。如果位數增加,傳輸延遲時間將更長,工作速度更慢。
但考慮到串行進位加法器的電路結構比較簡單,因而在對運算速度要求不高的設備中,這種124數字電子技術加法器仍不失為一種可取的電路。
圖4.3.84位串行進位加法器2.超前進位加法器為了提高運算速度,必須設法減小由於進位信號逐級傳遞所耗費的時間。那麼高位的進位輸入信號能否在相加運算開始時就知道呢?
我們知道,加到第犻位的進位輸入信號是這兩個加數第犻位以下各位狀態的函數,所以第犻位的進位輸入信號犆i-1一定能由犃i-1犃i-2…犃0和犅i-1犅i-2…犅0唯一地確定。根據這個原理,就可以通過邏輯電路事先得出每一位全加器的進位輸入信號,而無需再從最低位開始向高位逐位傳遞進位信號了,這就有效地提高了運算速度。采用這種結構形式的加法器稱為超前進位(CarryLook-ahead)加法器,也稱為快速進位(FastCarry)加法器。
下麵分析一下這些超前進位信號的產生原理。從表4.3.2所示的全加器的真值表中可以看到,在兩種情況下會有進位輸出信號產生。第一種情況是犃i犅i=1,這時犆i=1。第二種情況是犃i+犅i=1且犆i-1=1,也產生犆i=1的信號,這時可以把來自低位的進位輸入信號犆i-1直接傳送到進位輸出端犆i。也就是說,第犻位的進位輸出信號犆i和輸入信號犆i-1可以在加數、被加數信號輸入時直接運算產生而不用等待。這種思路的可行性可以從全加器的輸出邏輯表達式(4.3.3)可以看出,現重新寫出:犛i=犃i犅i犆i-1(4.3.4)犆i=犃i犅i+(犃i犅i)犆i-1(4.3.5)考察進位信號犆i的表達式(4.3.5),它的實際意義是若犃i=犅i=1,則犃i犅i=1,得犆i=1,即產生進位。所以,我們定義犌i=犃i犅i,犌i稱為產生變量。
若犃i犅i=1,則犃i犅i=0,得犆i=犆i-1,即能夠將低位的進位信號傳送到高位的進位輸出端而不要等待。所以,我們定義犘i=犃i犅i,犘i稱為傳輸變量。
犌i和犘i都隻與被加數犃i和加數犅i有關,而與進位信號無關。
將犌i和犘i代入式(4.3.4)和式(4.3.5),得犛i=犘i犆i-1(4.3.6)犆i=犌i+犘i犆i-1(4.3.7)由式(4.3.7),得各位進位信號的邏輯表達式如下:犆0=犌0+犘0犆-1(4.3.8a)犆1=犌1+犘1犆0=犌1+犘1犌0+犘1犘0犆-1(4.3.8b)犆2=犌2+犘2犆1=犌2+犘2犌1+犘2犘1犌0+犘2犘1犘0犆-1(4.3.8c)犆3=犌3+犘3犆2=犌3+犘3犌2+犘3犘2犌1+犘3犘2犘1犌0+犘3犘2犘1犘0犆-1(4.3.8d)第4章組合邏輯電路125由式(4.3.8)可以看出:各位的進位信號都隻與犌i、犘i和犆-1有關,而犆-1是向最低位的進位信號,其值為0,所以各位的進位信號都隻與加數犃i和被加數犅i有關,它們是可以並行產生的,從而可實現不用等待的超前進位。
根據以上思路構成的超前進位的集成4位加法器74HC283的邏輯電路圖如圖4.3.9所示,圖4.3.10是邏輯框圖,圖4.3.11是它的引腳圖。
圖4.3.9集成4位加法器74犎犆283的邏輯電路圖126數字電子技術圖4.3.1074犎犆283邏輯框圖圖4.3.1174犎犆283引腳圖一片74HC283隻能進行4位二進製數的加法運算,如果進行更多位數的加法,則需要進行擴展。將多片74HC283進行級聯,就可擴展加法運算的位數。例如用2片74HC283組成的8位二進製數加法電路,如圖4.3.12所示。
圖4.3.122片74犎犆283組成的8位二進製數加法電路該電路的級聯是串行進位方式,低位片(1)的進位輸出連到高位片(2)的進位輸入。當級聯數目增加較多時,會顯著影響運算速度。為了不影響運算速度,多片電路的級聯必須采用並行進位的級聯方式。
3.超前進位產生器74犔犛182舊的矛盾問題解決了,又會有新的矛盾產生。超前進位加法器雖然大大提高了運算速度,然而在位數較多時又出現了新的問題。隨著加法器位數的增加,超前進位邏輯電路將越來越複雜,電路實現困難增大。為了解決這一矛盾,設計出了專用的超前進位產生器74LS182,在進行74HC283級聯擴展時,超前進位產生器使其各片之間的進位也是超前進位。這樣既擴充了位數,又保持了較高的運行速度,而且使電路又不太複雜。
專用的超前進位產生器用於將多片運算電路之間的進位信號連接成並行進位結構。集成超前進位產生器74LS182的邏輯圖和邏輯符號分別如圖4.3.13(a,b)所示。
圖4.3.13所示74LS182的引出端信號分別是:進位輸入端犆狀,進位產生輸入端犌0~犌3,進位傳輸輸入端犘0~犘3,進位輸出端犆狀+狓、犆狀+狔、犆狀+狕,進位產生輸出端犌,進位傳輸輸出端犘。
根據圖4.3.13(a),可得犆狀+狓=犌0犘0+犌0犆狀=犌0+犘0犆狀第4章組合邏輯電路127圖4.3.13集成超前進位產生器74犔犛182為簡明起見,上式可寫為犆狀+狓=犌0+犘0犆狀(4.3.9a)同理,可得犆狀+狔=犌1+犘1犌0+犘1犘0犆狀(4.3.9b)犆狀+狕=犌2+犘2犌1+犘2犘1犘0犆狀(4.3.9c)犘和犌為低電平有效,所以得犘=犘3犘2犘1犘0(4.3.9d)犌=犌3+犘3犌2+犘3犘2犌1+犘3犘2犘1犌0(4.3.9e)式(4.3.9a~4.3.9c)對應於式(4.3.8a~4.3.8c),兩者形式一致。犆狀+狓、犆狀+狔、犆狀+狕為各位的進位信號,犘犻、犌犻為低電平有效,犆狀是進位輸入信號。犘和犌可以用於實現多個超前進位產生器連接。
4.多位加法器的應用加法器是算術運算器件,它可作二進製加法運算,也可以作減法運算(把減數碼變換為補碼,即用加上補碼來實現減法運算)。外加控製電路能夠實現多種算術、邏輯運算,還能應用於十進製代碼運算及代碼間的轉換等。如果能將邏輯函數化簡為輸入、輸出變量或輸入變量與常數在數值上相加的關係,這時用加法器來設計組合邏輯電路就十分方便。
128數字電子技術【例4.3.1】設計一個代碼轉換電路,將8421BCD碼轉換為餘3碼,用74HC283實現。
解以8421BCD碼犇犆犅犃為輸入、餘3碼犢3犢2犢1犢0為輸出,可得到代碼轉換電路的真值表,如表4.3.3所示。
表4.3.3例4.3.1的邏輯真值表輸入8421BCD碼輸出餘3碼犇犆犅犃犢3犢2犢1犢000000011000101000010010100110110010001110101100001101001011110101000101110011100由表4.3.3知,對同一個十進製數符,餘3碼比8421BCD碼多3。因此,實現8421BCD碼到餘3碼的變換,隻需把每組8421BCD碼都加上3(即0011),即犢3犢2犢1犢0=犇犆犅犃+0011(4.3.10)所以,從74HC283的犃3~犃0端輸入8421BCD碼的四位代碼犇犆犅犃,犅3~犅0端接固定代碼0011,就能實現相應的轉換,其邏輯圖如圖4.3.14所示。
【例4.3.2】試用74HC283實現餘3碼到8421BCD碼的轉換。圖4.3.14將8421犅犆犇碼解由例4.3.1知,對同一個十進製數符,餘3碼比轉換成餘3碼8421BCD碼多3,可得轉換電路的真值表4.3.4。因此,實現餘3碼到8421BCD碼的變換,隻需從餘3碼中減去3(即0011)。利用二進製補碼的概念,很容易實現上述減法。由於0011的補碼為1101,減0011與加1101等效,即犢3犢2犢1犢0=犡3犡2犡1犡0+1101(4.3.11)表4.3.4例4.3.2的邏輯真值表輸入餘3碼輸出8421BCD碼犡3犡2犡1犡0犢3犢2犢1犢0001100000100000101010010第4章組合邏輯電路129(續表)輸入餘3碼輸出8421BCD碼犡3犡2犡1犡0犢3犢2犢1犢001100011011101001000010110010110101001111011100011001001所以,從74HC283的犃3~犃0輸入餘3碼的四位代碼犡3犡2犡1犡0,犅3~犅0接固定代碼1101,就可以實現相應的轉換,其邏輯電路圖如圖4.3.15所示。
圖4.3.15將餘3碼轉換成8421犅犆犇碼【例4.3.3】試用74HC283構成一位8421BCD碼加法器。
解當兩個用8421BCD碼表示的一位十進製數相加時,每個數都不會大於9(1001),考慮到低位來的進位,最大的和為9+9+1=19。根據題意,可列出電路的真值表4.3.5。
表4.3.5十進製數0~19與相應的二進製數及8421犅犆犇碼十進製數4位加法器輸出二進製數輸出8421犅犆犇碼NC3S3S2S1S0D10D3D2D1D00000000000010000100001200010000103000110001140010000100500101001016001100011070011100111130數字電子技術(續表)十進製數4位加法器輸出二進製數輸出8421犅犆犇碼NC3S3S2S1S0D10D3D2D1D08010000100090100101001100101010000110101110001120110010010130110110011140111010100150111110101161000010110171000110111181001011000191001111001當用4位二進製數加法器74犎犆283完成這個加法運算時,加法器輸出的是4位二進製數表示的和,而不是犅犆犇碼。因此,必須想辦法將4位二進製數表示的和轉換成8421犅犆犇碼。將真值表4.3.5中0~19的二進製數和用8421犅犆犇碼表示的數進行比較發現,當和數小於1001(9)時,二進製碼與8421犅犆犇碼相同;當和數大於1001(9)時以後的十組代碼,8421犅犆犇的最高位D10為1,而D3D2D1D0與和數小於1001(9)時的代碼是相同的,但是都比表4.3.5左邊對應的二進製代碼大0110(6)。故隻要在二進製碼上加0110(6)就可以把二進製碼轉換為8421犅犆犇碼,同時產生進位輸出。這一轉換可以由一個修正電路來完成。
設C為修正信號,則C=C3+CS>9(4.3.12)式中:C3為74犎犆283最高位的進位輸出信號;CS>9表示和數大於9的情況。因為在十進製數10~15之間,C3=0,這期間的二進製碼大於9,依靠CS>9的電路產生信號C;在十進製數16~19之間,74犎犆283的輸出S3S2S1S0肯定小於1001,CS>9的電路不能產生C,這時的C信號則由C3=1來產生。故式(4.3.12)的意思是,當兩個一位8421犅犆犇碼相加時,若和數超過9,或者有進位時(這時)都應該對和數進行加6(即)修正。
0110圖4.3.16例4.3.3中犛>9的卡諾圖如圖所示。化簡,得C4.3.16犆犛>9的卡諾圖C犛>9=S3S2+S3S1(4.3.13)所以,有第4章組合邏輯電路131C=C3+S3S2+S3S1(4.3.14)當C=1時,把0110加到二進製加法器輸出端即可,同時C作為一位8421犅犆犇碼加法器的進位信號。
所以,可用一片74犎犆283加法器進行求和運算,用門電路產生修正信號,一片74犎犆283實現加6修正,即得一位8421犅犆犇碼加法器,進位輸出可以用修正信號C,也可以用第2片的C3端作為進位輸出端,如圖4.3.17所示。
4.4編碼器將具有特定意義的信息用相應的二進製代碼表示的過程稱為編碼。實現編碼功能的電路稱為編碼器。
狀位二進製代碼可以組成2狀個不同的狀態,既可以表示2狀個信號,若需要對犖個輸入的信號進行編碼,則圖4.3.17兩片74犎犆283構成的犖≤2狀(4.4.1)一位8421犅犆犇碼加法器狀為二進製代碼的位數,即輸入變量的個數。
當犖=2狀時,是利用了狀個輸入變量的全部組合進行的編碼,稱為全編碼,實現全編碼的電路叫做全編碼器或二進製編碼器;當犖<2狀時,是利用狀個變量的部分狀態進行的編碼,稱為部分編碼。可根據式犖≤2狀來確定二進製代碼的位數。
編碼器主要有二進製編碼器、二十進製編碼器和優先編碼器等。若編碼器有8個輸入端、3個輸出端,稱為8線3線編碼器;如有10個輸入端、4個輸出端,稱為10線4線編碼器。其餘以此類推。
4.4.1二進製編碼器用狀位二進製代碼來表示犖=2狀個信號的電路稱為二進製編碼器,其框圖如圖4.4.1所示。
圖中,輸入信號犐0、犐1、犐2、…、犐2狀-1為2狀個有待於編碼的信息,輸出信號犢狀-1、犢狀-2、…、犢0為狀位代碼,其中犢狀-1為最高位,犢0為最低位。
例如,當狀=3時,為3位二進製編碼器,它有2狀=8個輸入信號、3個輸出信號,又稱為8線3線編碼器。當狀=4時,為4圖4.4.1二進製編碼器位二進製編碼器,有16個輸入信號、4個輸出信號,故又稱16線4線編碼器。
對於編碼器來說,在編碼過程中,一次隻能有一個輸入信號被編碼,被編碼的信號必須132數字電子技術是有效電平,有效電平可以是低電平,也可以是高電平,這與電路設計有關,編碼器不同,其有效電平可能不同。例如,某個編碼器的輸入有效電平是高電平,表明隻有輸入為高電平的信號才能被編碼,而輸入低電平的信號不能被編碼。對於輸出的二進製代碼來說,可能是原碼,也可能是反碼,這也取決於電路的結構。例如十進製數6,原碼是0110,而它的反碼是1001。
【例4.4.1】設計一個能將犐0、犐1、犐2、…、犐78個輸入信號編成二進製代碼輸出的編碼器。用與非門和非門實現。
解(1)分析設計要求,列出功能真值表。由題意可知,該編碼器有8個輸入信號,分別是犐0、犐1、犐2、…、犐7,有編碼請求時,輸入信號用1表示,沒有時用0表示,即輸入信號高電平有效。根據犖=8=2狀可求出狀=3,為3位二進製代碼,分別以犢2、犢1和犢0表示。列出功能真值表如表4.4.1所示。
表4.4.18線3線編碼器的功能真值表輸入輸出犐0犐1犐2犐3犐4犐5犐6犐7犢2犢1犢01000000000001000000001001000000100001000001100001000100000001001010000001011000000001111(2)根據真值表寫出邏輯函數表達式。由編碼真值表可知,在8個輸入編碼信號中,同一時刻隻能對一個請求編碼的信號進行編碼。否則,輸出二進製代碼會發生混亂,這也就是說,這犐0、犐1、犐2、…、犐78個信號是相互排斥的。因此,輸出函數就是其值為1對應輸入變量(指請求編碼信號取值為1的變量)進行邏輯加,即犢2=犐4+犐5+犐6+犐7犢1=犐2+犐3+犐6+犐7(4.4.2)犢0=犐1+犐3+犐5+犐7(3)因要求使用與非門實現,把式4.4.2變換為與非表達式:犢2=犐4犐5犐6犐7(4.4.3)犢1=犐2犐3犐6犐7犢0=犐1犐3犐5犐7(4)畫邏輯電路圖。根據式4.4.2繪出圖4.4.2所示的二進製編碼器。應當指出,當犐1~犐7都為0時,輸出犢2犢1犢0=000,故犐0輸入線可以不畫出。
第4章組合邏輯電路133圖4.4.28線3線二進製編碼器邏輯電路圖如果沒有使用與非門和非門實現的限製,便可以用或門實現,電路如圖4.4.3所示。如果設計為輸入編碼信號為低電平有效,則功能真值表中的犐0~犐7在有編碼信號請求時,輸入信號用0表示,沒有編碼信號時用1表示,那麼,若各個信號輸入端改用犐0~犐7表示的話,我們就可以得到用3個四輸入端的與非門組成的8線3線二進製編碼器,電路如圖4.4.4所示。
圖4.4.3或門實現的8線3線圖4.4.4僅與非門組成的二進製編碼器邏輯電路圖編碼器邏輯電路圖4.4.2二十進製編碼器二十進製編碼器就是用4位二進製數碼對0~9一位十進製數碼進行編碼的電路。將十進製的10個數碼0~9編成二進製代碼的邏輯電路稱為二十進製編碼器。其原理與二進製編碼器並無本質的區別。現以最常用的8421BCD碼編碼器為例加以說明。
由於輸入有10個數碼,要求有10種狀態,而3位二進製代碼隻有8種狀態,顯然需要用4位(24>10,取狀=4)二進製代碼。這種編碼器又稱為10線4線編碼器。
設輸入的10個數碼分別用犐0~犐9表示,輸出的二進製代碼分別為犢3、犢2、犢1、犢0,采用8421碼的編碼方式,就是在4位二進製代碼的16種狀態中,取出前麵10種狀態,後麵的6種狀態不用,這樣得到的真值表如表4.4.2所示。因為犐0~犐9是一組相互排斥的變量,故可以由真值表直接寫出邏輯表達式:犢3=犐8+犐9犢2=犐4+犐5+犐6+犐7(4.4.4)犢1=犐2+犐3+犐6+犐7犢0=犐1+犐3+犐5+犐7+犐9134數字電子技術表4.4.210線4線8421犅犆犇碼編碼器真值表輸入輸出犖犐0犐1犐2犐3犐4犐5犐6犐7犐8犐9犢3犢2犢1犢0010000000000000101000000000001200100000000010300010000000011400001000000100500000100000101600000010000110700000001000111800000000101000900000000011001根據邏輯表達式4.4.4繪出用或門實現的8421BCD碼編碼器電路如圖4.4.5所示。
圖4.4.5或門組成的二十進製編碼器邏輯電路圖若把式4.4.4變換為與非形式如式4.4.5,則用與非門和非門構成的邏輯電路圖如圖4.4.6所示。
圖4.4.6與非門組成的二十進製編碼器邏輯電路圖第4章組合邏輯電路135犢3=犐8犐9犢2=犐4犐5犐6犐7(4.4.5)犢1=犐2犐3犐6犐7犢0=犐1犐3犐5犐7犐9如果把輸入編碼信號設計成低電平有效,其電路構成與上述電路有所不同,請看例4.4.2。
【例4.4.2】分析圖4.4.7所示電路的工作原理。
圖4.4.7例4.4.2的邏輯電路圖解(1)分析電路,寫邏輯函數表達式。
圖中左端的十個按鍵犛0~犛9,按鍵按下時按鍵右端為低電平,按鍵不按時右端為高電平。因此,電路應為輸入低電平有效。上方犃、犅、犆、犇和犌犛五個端子為輸出端。今以按鍵犛0~犛9右端為信號輸入端。寫出電路的邏輯函數式:犃=犛8+犛9=犛8犛9犅=犛4+犛5+犛6+犛7=犛4犛5犛6犛7犆=犛2+犛3+犛6+犛7=犛2犛3犛6犛7(4.4.6)犇=犛1+犛3+犛5+犛7+犛9=犛1犛3犛5犛7犛9犌犛=犛0·犃+犅+犆+犇(2)列功能真值表。
設犛0~犛9沒有一個被按下,則犃犅犆犇=0000,犌犛=0;犛0~犛9中有一個被按下,犌犛=1。
可見,犌犛是個使能標誌端。由式4.4.6,將犛0~犛9分別以一個為0其餘為1代入計算,136數字電子技術不難列出本例電路的功能真值表。
表4.4.3例4.4.2電路的功能表輸入輸出犛9犛8犛7犛6犛5犛4犛3犛2犛1犛0犃犅犆犇犌犛111111111100000111111111000001111111110100011111111101100101111111011100111111110111101001111101111101011111011111101101110111111101111101111111110001011111111110011(3)分析電路的邏輯功能。
從功能表中可知,按鍵犛0~犛9代表輸入的十個十進製數符號0~9,輸入為低電平有效,即某一按鍵按下,該鍵對應的右端的輸入信號為0,其餘各鍵右端輸入端都為1。4個輸出端犃、犅、犆、犇,為4位8421BCD碼。例如,犛9按下,輸出犃犅犆犇=1001,犌犛=1;犛0按下,犃犅犆犇=0000,犌犛=1;無按鍵按下,輸出犃犅犆犇=0000,犌犛=0,表明此時輸出代碼0000不是有效的編碼。故犌犛為編碼標誌,當按下犛0~犛9任意一個鍵時,犌犛=1,表示有編碼信號輸入,電路輸出對應的4位8421BCD碼;當犛0~犛9均沒按下時,犌犛=0,表示沒有編碼信號輸入,此時的輸出代碼0000為無效代碼。所以,本電路是帶使能標誌的鍵控8421BCD碼編碼器。
4.4.3優先編碼器前麵討論的編碼器存在一個嚴重的缺點,就是輸入的編碼信號是互相排斥的,即同一時刻隻能有一個輸入編碼信號有效。若同時有兩個及其以上的輸入編碼信號有效,則輸出的二進製代碼會產生錯誤。優先編碼器解決了不能同時輸入兩個及其以上有效信號的問題,它允許有多個輸入信號同時請求編碼,但是編碼器給所有的輸入信號規定了優先順序,當多個輸入信號同時出現時,隻對其中優先級最高的一個進行編碼。這種隻對其中一個優先級別最高的信號進行編碼的邏輯電路稱為優先編碼器。在優先編碼器中,是優先級別高的編碼信號排斥級別低的。至於輸入編碼信號優先級別的高低,則是由設計者根據實際工作需要事先安排的。
1.8線3線優先編碼器7414874148是一種常用的8線3線集成優先編碼器,圖4.4.8是其邏輯圖,圖4.4.9是其引第4章組合邏輯電路137腳圖。圖中犐7~犐0為編碼輸入端,優先順序為犐7→犐0,即犐7的優先級最高,然後是犐6、犐5、…、犐0,低電平有效。犃2~犃0為編碼輸出端,也是低電平有效,即反碼輸出。另外,犈犐為使能輸入端,犌犛為優先編碼工作標誌,都是低電平有效;犈犗為使能輸出端,高電平有效。
圖4.4.8優先編碼器74148的邏輯圖74148的功能如表4.4.4所示。由該表第一行可知,當犈犐為1時,無論犐7~犐0如何(即任意電平,可0可1),各輸出信號均為1,編碼器處於非工作狀態。
功能表的第二行表明,當犈犐為0、犐7~犐0均為1時,輸出犃2、犃1、犃0及犌犛都為1,犈犗為0,此時器件仍處於非工作狀態。功能表的第三行~第十行說明,當犈犐為0時,若犐犻=0(有效)、犐犻+1~犐7都為1(無效)時,就輸出犻的反碼,而與低於犐犻的信號犐0~犐犻-1的狀態無關。因此,實現了由犐7~犐0的優先編碼順序,即犐7的圖4.4.974148引腳圖優先級最高,然後是犐6、犐5、犐4、…、犐0。由該表可知,犌犛為編碼器工作與否的標誌,即優先編碼標誌。
表4.4.474148優先編碼器功能表輸入輸出犈犐犐0犐1犐2犐3犐4犐5犐6犐7犃2犃1犃0犌犛犈犗1××××××××11111011111111111100×××××××0000010××××××0100101138數字電子技術(續表)輸入輸出犈犐犐0犐1犐2犐3犐4犐5犐6犐7犃2犃1犃0犌犛犈犗0×××××011010010××××0111011010×××01111100010××011111101010×01111111100100111111111101注:表中×號表示可0可1,為任意值。
集成編碼器的輸入、輸出端的數目都是一定的,利用編碼器的輸入使能端犈犐、輸出使能端犈犗和優先編碼工作標誌犌犛,可以擴展編碼器的輸入、輸出端。
【例4.4.3】用兩片74148組成16線4線優先編碼器,其邏輯電路如圖4.4.10所示,試分析其工作原理。
圖4.4.10兩片74148實現的16線4線優先編碼器解根據表4.4.4所示74148的功能,對圖4.4.10進行分析可知:16線4線優先編碼器共有16個編碼輸入端,用犡0~犡15表示;有4個編碼輸出端,用犢0~犢3表示。片1為低位片,其輸入端犐0~犐7作為總輸入端犡0~犡7;片2為高位片,其輸入端犐0~犐7作為總輸入端犡8~犡15。兩片的輸出端犃0、犃1、犃2分別相與,作為總輸出端犢0、犢1、犢2,片2的犌犛端作為總輸出端犢3。片1的輸出使能端犈犗作為電路總的輸出使能端;片2的輸入使能端犈犐作為電路總的輸入使能端,在本電路中接0,處於允許編碼狀態。片2的輸出使能端犈犗接片1的輸入使能端犈犐,控製片1工作。兩片的工作標誌犌犛相與,作為總的工作標誌犌犛端。
電路的工作原理是:(1)電路初始處於允許編碼狀態,片2優先。即片2有信號輸入時,片1被禁止,片2第4章組合邏輯電路139沒有信號輸入時,片1允許編碼。由於74148片內是優先編碼,片間是高位片2優先,故組成的4位編碼器仍然是優先編碼器。
(2)當片2的輸入端沒有信號輸入,即犡8~犡15全為1時,犌犛2=1(即犢3=1),犈犗2=0(即犈犐1=0),片1處於允許編碼狀態。設此時犡4=0,則片1的輸出為犃2犃1犃0=011,由於片2沒有信號輸入,根據功能表知,片2輸出為犃2犃1犃0=111,所以總輸出犢3犢2犢1犢0=1011(因為74148輸出的是反碼,犡4的原碼是0100,反碼即1011)。
(3)當片2有信號輸入,犈犗2=1(即犈犐1=1),片1處於禁止編碼狀態。設此時犡14=0(即片2的犐6=0),則片2的輸出為犃2犃1犃0=001,且犌犛2=0。由於片1輸出犃2犃1犃0=111,所以總輸出犢3犢2犢1犢0=0001,剛好是1110(犡14)的反碼。
【例4.4.4】試用8線3線編碼器74148和門電路設計8421BCD碼優先編碼器。
解(1)列出功能表。
8421BCD碼編碼器應有10個編碼輸入端,4個編碼輸出端。現在74148的基礎上增加兩個編碼輸入端犐9、犐8和輸出端犢3,采用原碼輸出。可列出功能表如表4.4.5所示。
表4.4.58421犅犆犇優先編碼器功能表輸入輸出犐0犐1犐2犐3犐4犐5犐6犐7犐8犐9犢3犢2犢1犢0×××××××××01001××××××××011000×××××××0110111××××××01110110×××××011110101××××0111110100×××01111110011××011111110010×011111111000101111111110000(2)寫邏輯函數式。
由功能表可知,輸出采用原碼,而因為使用反碼輸出的74148為主電路,所以後三位的輸出犢2犢1犢0隻要分別在74148的原輸出端加接反相器即得到原碼。那麼犢3=犐8+犐9=犐8犐9考慮到犐9比犐8優先,隻要在這兩個輸入端同時為0時使輸出犢0=1即可,故原74148的犃0端應加接一個與非門,即犢0=犃0犐9。為使犐8比犐7~犐0優先,利用使能輸入犈犐的功能,將犢3連接到犈犐端。
這樣便得到邏輯函數式:140數字電子技術犢3=犐8犐9犢2=犃2()犢1=犃14.4.7犢0=犃0犐9犈犐=犢3(3)依據式4.4.7繪出邏輯電路圖如圖4.4.11所示。
圖4.4.1174148和門電路組成的8421犅犆犇編碼器(4)檢驗分析。
圖4.4.11電路中,當犐9、犐8無輸入(即犐9、犐8均為高平)時,與非門犌4的輸出犢3=0,同時使74148的犈犐=0,允許74148工作,74148對輸入犐0~犐7進行編碼。如犐6=0,則犃2犃1犃0=001,經門犌1、犌2、犌3處理後,犢2犢1犢0=110,所以總輸出犢3犢2犢1犢0=0110。這正好是6的842lBCD碼。
當犐9或犐8有輸入(低電平)時,與非門犌4的輸出犢3=1,同時使74148的犈犐=1,禁止74148工作,使犃2犃1犃0=111。如果此時犐9=0,總輸出犢3犢2犢1犢0=1001;如果犐8=0,總輸出犢3犢2犢1犢0=1000。正好是9和8的842lBCD碼。
根據以上分析,圖4.4.11電路符合842lBCD優先編碼器的功能要求。
2.二十進製編碼器74犔犛147二十進製編碼器74LS147的邏輯圖如圖4.4.12所示。它有9個輸入端犐9~犐1,犐9的優先級別最高,依次是犐8、犐7、…、犐0、犐0的優先權最低。犢3犢2犢1犢0為4個輸出端,以BCD碼的反碼形式輸出。
按照圖4.4.12,可得出其邏輯表達式:犢3=犐8+犐9犢2=犐7犐8犐9+犐6犐8犐9+犐5犐8犐9+犐4犐8犐9(4.4.8)犢1=犐7犐8犐9+犐6犐8犐9+犐3犐4犐5犐8犐9+犐2犐4犐5犐8犐9犢0=犐9+犐7犐8犐9+犐5犐6犐8犐9+犐3犐4犐6犐8犐9+犐1犐2犐4犐6犐8犐9由式(4.4.8)可以推算出二十進製編碼器74LS147的功能表,如表4.4.6所示。
第4章組合邏輯電路141圖4.4.12二十進製優先編碼器74犔犛147表4.4.6二十進製編碼器74犔犛147的功能表輸入輸出犐1犐2犐3犐4犐5犐6犐7犐8犐9犢3犢2犢1犢01111111111111××××××××00110×××××××010111××××××0111000×××××01111001××××011111010×××0111111011××01111111100×0111111111010111111111110從表中看出,若有輸入端犐0=0,此時犐9~犐1都為1,對應輸出應該是犢3犢2犢1犢0=1111;而功能表中犐9~犐1都為1時,已經是犢3犢2犢1犢0=1111。這表明,犐0=0就是等同於犐9~犐1都為1的情況,故犐0端完全可以省去,就用犐9~犐1都為1來表示該端子的功能。所以,圖中隻有犐9~犐1而沒有畫出犐0。
142數字電子技術4.5譯碼器和數據分配器譯碼就是將具有特定含義的二進製代碼轉換成對應的輸出信號,是編碼的逆過程。具有譯碼功能的邏輯電路稱為譯碼器。譯碼器可分為兩種類型:一種是將一係列代碼轉換成與之一一對應的有效信號,這種譯碼器可稱為唯一地址譯碼器,它常用於計算機中對存儲器單元地址的譯碼,即將每一個地址代碼轉換成一個有效信號,從而選中對應的單元。如二進製譯碼器和二十進製譯碼器。另一種是將一種代碼轉換成另一種代碼,稱為代碼變換器,如數字顯示譯碼器。下麵先介紹二進製唯一地址譯碼器。
4.5.1二進製譯碼器將輸入二進製代碼的各種組合按其原意轉換成對應信號輸出的邏輯電路稱為二進製譯碼器。圖4.5.1為二進製譯碼器的結構框圖,它具有狀個輸入端,2狀個輸出端和1個使能輸入端。習慣上稱之為狀線2狀線譯碼器。例如,譯碼器有2個輸入端就有4個輸出端,稱為2線4線譯碼器;有3個輸入端8個輸出端的譯碼器稱為3線8線譯碼器,以此類推。在使能輸入端為有效電平時,對應每一組輸入代碼,隻有其中一個輸出端為有效電平,其餘輸出端都為相反電平,也稱為無效電平。輸出信號可以是高電平有效,也可以是低電平有效。
圖4.5.1二進製譯碼器結構圖由於二進製譯碼器有犖=2狀個輸出端,屬於完全譯碼,輸出是輸入變量的各種組合。因此,一個輸出對應一個最小項,故又稱為最小項譯碼器。輸出端是1有效的,稱為高電平譯碼,一個輸出就是一個最小項;若輸出端是0有效的,則稱為低電平譯碼,一個輸出對應一個最小項的非。
1.2線4線譯碼器2線4線譯碼器輸入變量犃、犅共有4種不同的狀態組合,因而有4個輸出信號犢3、犢2、犢1、犢0,屬於完全譯碼,且輸出低電平有效,其功能表如表4.5.1所示。
第4章組合邏輯電路143表4.5.12線4線譯碼器功能表輸入輸出犈犐犃犅犢0犢1犢2犢31××11110000111001101101011010111110另外,電路設置了使能控製端犈犐,當犈犐=1時,無論犃、犅為何種狀態,輸出全為1,譯碼器處於非工作狀態。而當犈犐=0時,對應於犃、犅的某種狀態組合,其中隻有一個輸出量為0,其餘各輸出量均為1。例如:犃犅=00時,輸出為犢0=0,其餘輸出端犢3、犢2、犢1均為1。
由此可見,譯碼器是通過輸出端的邏輯電平以識別不同的代碼。
根據功能表4.5.1可寫出各輸出端的邏輯函數表達式:犢0=犈犐犃犅犢1=犈犐犃犅(4.5.1)犢2=犈犐犃犅犢3=犈犐犃犅根據邏輯函數式繪出邏輯圖如圖4.5.2所示。
圖4.5.22線4線譯碼器邏輯圖2.集成電路譯碼器常用的集成二進製譯碼器有CMOS(如74HC138)和TTL(如74LS138)的定型產品,兩者在邏輯功能上沒有區別,隻是電性能參數不同而已,現用74X138表示兩者中任意一種。
74X139是雙2線4線譯碼器,兩個獨立的譯碼器封裝在一個集成芯片中,其中之一的邏輯符號如圖4.5.3所示。
邏輯符號說明:74X139邏輯符號框外部的犈、犢3、犢2、犢1和犢0作為變量符號,表示外部輸入或輸出信號名稱,字母上麵的“-”號說明該輸入或輸出是低電平有效。符號框內部的輸入、輸出變量表示其內部的邏輯關係。當輸入或輸出為低電平有效時,邏輯符號框外部144數字電子技術犈、犢3~犢0的邏輯狀態與符號框內部相應變量的邏輯狀態相反。在推導表達式的過程中,如果低電平有效的輸入或輸出變量上麵的“-”號參與運算,則在畫邏輯圖或驗證真值表時,注意將其還原為低電平有效符號。
下麵介紹TTL器件74LS138的邏輯功能。
74LS138是典型的3線8線譯碼器,其功能表如表4.5.2所示。輸入為三位二進製數犃2、犃1、犃0,它們共有8種狀態的組合,可譯出8個輸出信號,輸出為低電平有效,屬於全譯碼器。此外為了擴展譯碼器的輸入變量,還設置圖4.5.374犡139的邏輯符號了3個使能端(也叫選通控製端或允許端)犌1、犌2犃和犌2犅。由功能表可知,犌1=0、犌2犃=1或者犌2犅=1時,譯碼器處於禁止態,所有的輸出端都處於高電平。當犌1=1且犌2犃=0、犌2犅=0時,譯碼器處於工作態。此時,輸出端的邏輯表達式為犢0=犌1犌2A犌2B犃2犃1犃0犢1=犌1犌2A犌2B犃2犃1犃0…(4.5.2)犢犻=犌1犌2A犌2B·犿犻(犻=0~7)…犢7=犌1犌2A犌2B犃2犃1犃0表4.5.23線8線譯碼器74犔犛138功能表輸入輸出犌1犌2犃犌2犅犃2犃1犃0犢0犢1犢2犢3犢4犢5犢6犢7×1××××11111111××1×××111111110×××××111111111000000111111110000110111111100010110111111000111110111110010011110111100101111110111001101111110110011111111110由犢犻=犌1犌2A犌2B·犿犻知,當犌1=1且犌2A=0、犌2B=0時,犢犻=犿犻。這說明每個輸出都是輸入變量所對應的最小項的非,是低電平譯碼。
第4章組合邏輯電路145按邏輯表達式畫出邏輯圖,如圖4.5.4所示。圖4.5.5是其引腳排列圖和邏輯功能示意圖。
圖4.5.474犔犛138集成譯碼器邏輯圖圖4.5.574犔犛138的引腳排列和邏輯功能示意圖4.5.2二十進製譯碼器二十進製譯碼器是把BCD碼的10個代碼翻譯成有效輸出信號的譯碼器,又稱為8421BCD碼~十進製碼譯碼器,是一種碼製變換譯碼器。
二十進製譯碼器的輸入端是十進製數的4位二進製BCD碼,分別用犃3、犃2、犃1、犃0表示;輸出的是與10個十進製數字相對應的10個信號,用犢9~犢0表示,低電平有效。因為二十進製譯碼器有4根輸入線,10根輸出線,故又稱4線10線譯碼器。
在8421BCD譯碼器中,有1010到1111共6個冗餘碼,它們是不應該出現的。根據這6個冗餘碼處理方式的不同,二十進製譯碼器又可分為部分譯碼器和完全譯碼器。
1.部分譯碼器部分譯碼也稱作不完全譯碼,這種譯碼器的輸入端隻出現規定的前10種代碼,而不出現其他6種不采用的代碼。將不采用的代碼作為無關項來處理,利用無關項簡化邏輯函數,146數字電子技術以便減少門電路的輸入端數的接線。部分譯碼的二十進製譯碼器的邏輯圖如圖4.5.6所示。其輸出犢9~犢0的邏輯表達式為:犢0=犃3犃2犃1犃0犢5=犃2犃1犃0犢1=犃3犃2犃1犃0犢6=犃2犃1犃0犢2=犃2犃1犃0犢7=犃2犃1犃0(4.5.3)犢3=犃2犃1犃0犢8=犃3犃0犢4=犃2犃1犃0犢9=犃3犃0圖4.5.6部分譯碼的二十進製譯碼器其功能表如表4.5.3所示。
表4.5.3部分譯碼的二十進製譯碼器功能表十進輸入輸出製數犃3犃2犃1犃0犢0犢1犢2犢3犢4犢5犢6犢7犢8犢9000000111111111100011011111111200101101111111300111110111111401001111011111501011111101111601101111110111701111111111011810001111111101910011111111110第4章組合邏輯電路1471010~1111這六組碼是不采用的,在正常工作時一般不會出現,但在開機或有幹擾時則可能產生,常稱它為偽輸入。一旦出現偽輸入,譯碼器可能有一個以上的輸出為0。例如,當輸入端為犃3犃2犃1犃0=1111時,譯碼器輸出犢9和犢7均為0,這是不允許的,也是這種部分譯碼器的缺點。
2.完全譯碼完全譯碼是指對16種輸入代碼都進行翻譯處理,不再把不采用的代碼作為無關項處理,而是按最小項譯碼,但同時1010~1111這六組偽碼對應的譯碼輸出全為高電平。完全譯碼的二十進製譯碼器74LS42的邏輯圖如圖4.5.7所示。圖4.5.8是其引腳排列圖和邏輯功能示意圖。74LS42其輸出犢9~犢0的邏輯表達式為犢0=犃3犃2犃1犃0犢1=犃3犃2犃1犃0犢2=犃3犃2犃1犃0犢3=犃3犃2犃1犃0犢4=犃3犃2犃1犃0(4.5.4)犢5=犃3犃2犃1犃0犢6=犃3犃2犃1犃0犢7=犃3犃2犃1犃0犢8=犃3犃2犃1犃0犢9=犃3犃2犃1犃0圖4.5.7二十進製譯碼器74犔犛42148數字電子技術圖4.5.874犔犛42的引腳排列和邏輯功能示意圖完全譯碼譯碼器74LS42的功能表如表4.5.4所示。
表4.5.4完全譯碼的二十進製譯碼器功能表十進輸入輸出製數犃3犃2犃1犃0犢0犢1犢2犢3犢4犢5犢6犢7犢8犢90000001111111111000110111111112001011011111113001111101111114010011110111115010111111011116011011111101117011111111110118100011111111019100111111111101010111111111110111111111111偽11001111111111碼110111111111111110111111111111111111111111根據以上分析,部分譯碼的二十進製譯碼器,對於6個偽碼可以接收,將其在輸出端譯成低電平。例如,犃3犃2犃1犃0=1101,將使犢9=0。從這個意義上看,不完全譯碼器也稱不拒絕偽碼的譯碼器。而完全譯碼器對於6個偽碼,其輸出全部為高電平,所以也稱它是拒絕偽碼的譯碼器。
第4章組合邏輯電路1494.5.3顯示譯碼器在各種數字設備中經常需要將數字、文字和符號直觀地顯示出來,供人們直接讀取結果,或用以監視數字係統的工作情況。因此,顯示電路是許多數字設備中必不可少的部分。
顯示譯碼器就是將輸入的8421BCD代碼譯成顯示器所需要的驅動信號,以使顯示器用十進製數字顯示出8421BCD代碼所表示的數值的一種譯碼器。
顯示器件的種類很多,按顯示方式分:有字型重疊式、點陣式、分段式等;按發光物質分:有半導體發光二極管(LED)顯示器、液晶顯示器(LCD)、熒光顯示器、氣體放電管顯示器等。目前在數字電路中應用最廣泛的是由發光二極管構成的七段數字顯示器。數字顯示電路包括譯碼驅動電路和數碼顯示器,其框圖如圖4.5.9所示。下麵介紹常用的七段LED顯示器及其譯碼驅動電路。圖4.5.98421犅犆犇顯示譯碼電路框圖1.七段犔犈犇數字顯示器數碼顯示器就是用來顯示數字、文字或符號的器件。七段式數字顯示器是目前常用的顯示方式。七段LED數字顯示器俗稱“數碼管”,是分段式半導體顯示器件,七個發光段就是將七個發光二極管(加小數點為八個)按一定的方式排列起來,七段中犪、犫、犮、犱、犲、犳、犵(小數點犇犘)各自對應一個發光二極管。發光二極管的PN結由特殊半導體材料磷砷化镓做成,當PN結外加正向電壓時,PN結便可以將電能轉化為光能,發出清晰悅目的光線。七段LED數碼管,就是利用不同發光段的組合來顯示0~9等阿拉伯數字,如圖4.5.10所示。
圖4.5.10七段數字顯示器及發光段組合圖發光二極管構成的七段LED顯示器有兩種,共陰極和共陽極電路,如圖4.5.11所示。
共陰極電路中,內部七個發光二極管的陰極連在一起,使用時陰極接低電平,需要某一段發光,就將相應二極管的陽極經過限流電阻接高電平有效的譯碼輸出端。共陽極的內部七個發光二極管的陽極連在一起,使用時陽極必須接高電平,陰極經限流電阻接譯碼輸出端,驅動器的驅動極性與共陰極的剛好相反。調節限流電阻可以調節LED的亮度,一般LED數150數字電子技術碼管中LED的額定電流為10mA。
圖4.5.11半導體數字顯示器的內部接法七段LED數字顯示器的優點是工作電壓較低(1.5~3V)、體積小、壽命長、亮度高、響應速度快、工作可靠性高。缺點是工作電流較大,每個字段的工作電流約為5~10mA。
2.顯示譯碼(驅動)器為了使數碼管能顯示十進製數,必須將十進製數的代碼經譯碼器譯出,然後經驅動器點亮對應的段。例如,對於8421BCD碼的0011狀態,對應的十進製數為3,則譯碼驅動器應使犪、犫、犮、犱、犵各段點亮。譯碼器的功能就是對應於某一組數碼輸入,相應的幾個輸出端輸出有效信號。
常用的集成七段顯示譯碼器有兩類:一類譯碼器輸出高電平有效信號,用來驅動共陰極顯示器,如TTL七段顯示譯碼器74LS48以及CMOS七段顯示譯碼器74HC451l、74HC48;另一類輸出低電平有效信號,以驅動共陽極顯示器,如TTL七段顯示譯碼器74LS47。
下麵介紹常用的TTL七段顯示譯碼器74LS48,圖4.5.12是它的邏輯符號,其中犃3、犃2、犃1、犃0為BCD碼輸入信號,犪、犫、犮、犱、犲、犳、犵為譯碼器的7個高電平有效的輸出端,用以驅動共陰極七段LED數碼管。為增加器件的功能與擴大器件的應用,在譯碼/驅動電路的基礎上又附加了輔助功能控製信號犔犜、犚犅犐和犅犐/犚犅犗。
把74LS48的功能列於表4.5.5中。從表中可以看圖4.5.1274犔犛48的邏輯符號出,當輔助功能控製信號無效時,即表中的1~16行,犃3、犃2、犃1、犃0每輸入一組BCD碼,犢犪~犢犵輸出端就有相應的輸出,電路實現正常譯碼。如果犃3犃2犃1犃0=0101,犪、犮、犱、犳、犵端輸出為1,驅動共陰極數碼管的犪、犮、犱、犵、犳字段顯示數字5。
輔助控製端犔犜、犚犅犐和犅犐/犚犅犗具有以下功能:(1)正常譯碼顯示。犔犜=1、犅犐/犚犅犗=1時,對輸入為十進製數l~15的二進製碼(0001~1111)進行譯碼,產生對應的七段顯示碼。
(2)滅零輸入端犚犅犐。當輸入犚犅犐=0,而輸入為0的二進製碼0000時,則譯碼器的犪~犵輸出全0,使顯示器全滅;隻有當犚犅犐=1時,才產生0的七段顯示碼。所以,犚犅犐稱為滅零輸入端。
(3)試燈輸入端犔犜。當犅犐=1、犔犜=0時,無論輸入怎樣,犪~犵輸出全1,數碼管七段第4章組合邏輯電路151全亮。由此可以檢測顯示器七個發光段的好壞。犔犜稱為試燈輸入端。
(4)特殊控製端犅犐/犚犅犗。犅犐/犚犅犗可以做輸入端,也可以做輸出端。
表4.5.5七段顯示譯碼器74犔犛48的邏輯功能表功能輸入輸入/輸出輸出顯示(輸入)犔犜犚犅犐犃3犃2犃1犃0犅犐/犚犅犗犪犫犮犱犲犳犵字形01100001111111011×00011011000021×00101110110131×00111111100141×01001011001151×01011101101161×01101001111171×01111111000081×10001111111191×100111110011101×101010001101111×101110011001121×110010100011131×110111001011141×111010001111151×111110000000滅燈××××××00000000滅零10000000000000試燈0×××××11111111作輸入使用時,如果犅犐=0時,不管其他輸入端為何值,也不論犃3犃2犃1犃0為何值,犪~犵均輸出0,顯示器全滅。因此,犅犐稱為滅燈輸入端,優先權最高。
作輸出端使用時,受控於犚犅犐。當犚犅犐=0,輸入為0的二進製碼0000時,犚犅犗=0,用以指示該片正處於滅零狀態。所以,犚犅犗又稱為滅零輸出端。
將犅犐/犚犅犗和犚犅犐配合使用,可以實現多位數顯示時的“無效0消隱”功能。
在多位十進製數碼顯示時,整數前和小數後的0是無意義的,稱為“無效0”。在圖4.5.13所示的多位數碼顯示係統中,就可將無效0滅掉。從圖中可見,由於整數部分74LS48除最高位的犚犅犐接0、最低位的犚犅犐接1外,其餘各位的犚犅犐均接受高位的犚犅犗輸出信號。所以整數部分隻有在高位是0,而且被熄滅時,低位才有滅零輸入信號。同理,小數部分除最高位的犚犅犐接1、最低位的犚犅犐接0外,其餘各位均接受低位的犚犅犗輸出信號。所以小數部分隻有在低位是0而且被熄滅時,高位才有滅零輸入信號。從而實現了多位十進152數字電子技術製數碼顯示器的“無效0消隱”功能。
圖4.5.13帶有無效0消隱功能的多位數碼顯示電路4.5.4譯碼器的應用1.譯碼器的功能擴展利用集成譯碼器的使能端可以方便地擴展譯碼器的容量。
【例4.5.1】用3線8線譯碼器74LS138組成4線16線譯碼器。
解顯然一片74LS138譯碼器不夠,必須2片,按圖4.5.14所示連接。
圖4.5.14兩片74犔犛138擴展為4線16線譯碼器兩片74LS138的犃2、犃1、犃0對應並聯,片2的犌1端與片1的犌2犃端相接同時作為輸入端犃3,片2的犌2犃、犌2犅端並接後連到片1的犌2犅端作為使能端犈,片1的犌1端接高電平。片1輸出犢0~犢7,片2輸出犢8~犢15。
當犈=1時,兩個譯碼器都禁止工作,輸出全1;當犈=0時,譯碼器工作。這時,如果犃3=0,高位片禁止,低位片工作,輸出犢0~犢7由輸入二進製代碼犃2犃1犃0決定;如果犃3=1,低位片禁止,高位片工作,輸出犢8~犢15由輸入二進製代碼犃2犃1犃0決定。從而實現了4線16線譯碼器功能。
本例中如果將74LS138片2的犌2犃、犌2犅端並接後接地,片1的犌2犃、犌2犅並接後與片2的犌1端相連作為高位輸入端同時兼作使能端,留作進一步擴展使用。此接法的效果與圖4.5.14的接法效果也是一樣的。其擴展方法可歸結為兩點:一是根據輸出線數確定最少集成芯片數;二是同名地址端相連作低位輸入,高位輸入端接使能端,保證每次隻有一片處於第4章組合邏輯電路153工作狀態,其餘處於禁止狀態。
【例4.5.2】用74HC139和74HC138構成5線32線譯碼器。輸入為5位二進製碼犅4犅3犅2犅1犅0,對應輸出為犔0~犔31為低電平有效信號。
解由輸出線數可知,至少要4片74HC138譯碼器,這時使能端本身已不能完成高位輸入的控製了,常采用樹形結構擴展,再加一片譯碼器74HC139對高2位譯碼,其4個輸出分別控製4片74HC138的使能端,選擇其中一個工作,連接電路如圖4.5.15所示。
圖4.5.15例4.5.2的邏輯電路圖從圖中看出,當高位輸入犅4犅3=00且犅2犅1犅0從000變化到111時,對應犔0~犔7中有一個輸出為0,其餘輸出全部為1,故4片74HC138中,設置(0)片為譯碼狀態,其餘3片為禁止狀態,對應的犔8~犔31全為1。當高位輸入犅4犅3=01且犅2犅1犅0從000變化到111時,74HC138(1)片為譯碼狀態,片(0)、(2)、(3)為禁止態。當高位輸入犅4犅3=10和11時,分別設置片(2)和片(3)為譯碼狀態。所以,低三位輸入犅2犅1犅0分別由4片74HC犾38的3個地址輸入端並接在一起。
高位犅4犅3即為74HC139的兩個地址輸入端犃1犃0,74HC139的4個低有效輸出分別接到4片74HC犾38的低有效使能輸入端,使4片74HCl38在犅4犅3的控製下輪流工作在譯碼狀態。
2.用譯碼器實現組合邏輯電路因為二進製譯碼器的每一個輸出分別對應一個最小項(高電平譯碼)或一個最小項的非154數字電子技術(低電平譯碼),而邏輯函數可以表示為最小項之和的形式,所以隻要利用二進製譯碼器的某些輸出,再輔以適當的門電路,就可以得到任意組合的邏輯電路。其特點是方法簡單,無須簡化,工作可靠。
【例4.5.3】試用譯碼器和門電路實現邏輯函數犔=犃犆+犅犆。
解(1)將邏輯函數轉換成最小項表達式,再轉換成與非與非形式。
犔=犃犅犆+犃犅犆+犃犅犆=犿3+犿5+犿7=犿3·犿5·犿7(2)該函數有三個變量,所以選用3線8線譯碼器74LS138。用一片74LS138加一個三輸入端與非門就可實現邏輯函數犔,邏輯圖如圖4.5.16所示。
表4.5.6例4.5.4的真值表輸入輸出犃犅犆犔犉犌000001001100010101011010100101101010110011圖4.5.16例4.5.3的邏輯圖111100【例4.5.4】某組合邏輯電路的真值表如表4.5.6所示,試用譯碼器和門電路設計該邏輯電路。
解(1)寫出各輸出的最小項表達式,再轉換成與非與非形式。
犔=犃犅犆+犃犅犆+犃犅犆+犃犅犆=犿1+犿2+犿4+犿7=犿1·犿2·犿4·犿7犉=犃犅犆+犃犅犆+犃犅犆=犿3+犿5+犿6=犿3·犿5·犿6犌=犃犅犆+犃犅犆+犃犅犆+犃犅犆=犿0+犿2+犿4+犿6=犿0·犿2·犿4·犿6(2)選用3線8線譯碼器74LS138。設犃=犃2、犅=犃1、犆=犃0。將犔、犉、犌的邏輯表達式與74LS138的輸出表達式相比較,有:犔=犢1·犢2·犢4·犢7犉=犢3·犢5·犢6犌=犢0·犢2·犢4·犢6用一片74LS138加三個與非門就可實現該組合邏輯電路,邏輯圖如圖4.5.17所示。
本例表明,用譯碼器實現多輸出邏輯函數時,優點更為突出。
第4章組合邏輯電路155圖4.5.17例4.5.4的邏輯圖圖4.5.18用74犔犛138實現1位全加器【例4.5.5】試用譯碼器實現1位全加器。
解根據1位全加器的真值表或它的邏輯函數式,我們不難得到它的最小項表達式:犛i=犃i犅i犆i-1+犃i犅i犆i-1+犃i犅i犆i-1+犃i犅i犆i-1=∑犿(1,2,4,7)=犿1犿2犿4犿7(4.5.5)犆i=犃i犅i犆i-1+犃i犅i犆i-1+犃i犅i犆i-1+犃i犅i犆i-1=∑犿(3,5,6,7)=犿3犿5犿6犿7三變量譯碼器74LS138的8個輸出正好就是三個變量的全部最小項的非,因此,有關最小項的非再經過與非門即得有關最小項的和。其邏輯電路如圖4.5.18所示。
這種用譯碼器加上門電路的思想方法,可以用來實現任何組合邏輯電路。目前,這種思想已被用隻讀存儲器實現邏輯函數所采用。
3.用譯碼器組成順序脈衝發生器【例4.5.6】已知74LS1383線8線譯碼器的接線如圖4.5.19所示。輸入信號犈的波形和犃、犅、犆的波形如圖4.5.20(a)所示,試繪出譯碼器輸出的波形。
解根據74LS138的功能表和輸入波形,繪出輸出端的波形圖如圖4.5.20(b)所示。
從圖中可以看出,若輸入信號按照一定的規律循環,則在譯碼器的輸出端一次出現該組脈衝信號,可以控製數字電路或係統按照事先規定好的順序進行一係列的操作。因此,譯圖4.5.1974犔犛138實現順序碼器可以用於構成順序脈衝發生器。脈衝發生器除了上述幾種應用之外,用譯碼器還可以實現各種數製轉換、進行存儲器係統的地址譯碼和構成數據分配器等。
156數字電子技術圖4.5.20集成譯碼器74犔犛138組成順序脈衝發生器的輸出波形4.5.5數據分配器將一路數據源輸入的數據根據輸入地址選擇碼分配到多路數據輸出中的某一路輸出的電路稱為數據分配器,又稱多路分配器。比如一台計算機的數據要分時送到打印機、繪圖儀和監控終端去,就要用到數據分配器。
按照輸出端的個數,數據分配器可分為1路4路、1路8路、1路16路數據分配器等。
圖4.5.21為數據分配器的電路結構示意圖。犇表示1路輸入數據源的數據,犢0、犢1、…、犢2狀-1表示2狀個輸出端,控製選擇傳輸通道的是狀位地址選擇信號。就像一個單刀多擲開關,刀位位置由地址選擇信號控製。圖4.5.21數據分配器示意圖【例4.5.7】設計一個1路4路數據分配器,用門電路實現。
解(1)列真值表。
1路數據犇分配到4個傳輸通道犢0、犢1、犢2和犢3,則用兩位地址犃1犃0選擇信號。現約定,犃1犃0=00時,犢0=犇;犃1犃0=01時,犢1=犇;犃1犃0=10時,犢2=犇;犃1犃0=11時,犢3=犇。
據此約定,列出真值表如表4.5.7所示。
表4.5.71路4路數據分配器的真值表輸入輸出犃1犃0犢0犢1犢2犢300犇000010犇001000犇011000犇第4章組合邏輯電路157(2)寫邏輯函數表達式。
根據數據分配器的真值表,容易寫出邏輯表達式:犢0=犇犃1犃0犢1=犇犃1犃0(4.5.6)犢2=犇犃1犃0犢3=犇犃1犃0(3)按照邏輯函數式(4.5.6)繪出如圖4.5.22所示的邏輯圖。
圖4.5.221路4路數據分配器數據分配器可以用唯一地址譯碼器實現。因為唯一地址譯碼器和數據分配器的功能非常接近,所以譯碼器一個很重要的應用就是構成數據分配器。也正因為如此,市場上沒有集成數據分配器產品,隻有集成譯碼器產品。當需要數據分配器時,可以用譯碼器改接而成。
【例4.5.8】用譯碼器設計一個1路8路數據分配器。
解設“1路8路”數據分配器的地址選擇信號為犃2、犃1和犃0,則可列出其功能表如表4.5.8所示。將該表與3線8線譯碼器74LS138功能表相比較可見,隻要將譯碼器的3個輸入端改做分配器的3位地址選擇信號,譯碼器的8個譯碼輸出端改作分配器的8個數據輸出端犇0、犇1、…、犇7,譯碼器的使能端犌2犃或犌2犅(本例取犌2犅)改作分配器的數據輸入端,就可得數據分配器如圖4.5.23所示。如當犃2犃1犃0=100時,若犇=1則譯碼器處於禁止工作狀態,犇4=1;若犇=0,則譯碼器處於工作狀態,犇4=0,從而實現了將犇傳送至犇4的功能。
表4.5.8數據分配器功能表地址選擇信號輸出犃2犃1犃0000犇=犇0001犇=犇1010犇=犇2011犇=犇3100犇=犇4101犇=犇5110犇=犇6111犇=犇7圖4.5.23用譯碼器構成數據分配器158數字電子技術如果本例中將譯碼器的使能端犌2犃、犌2犅並聯接地,使能端犌1改做分配器的數據輸入端,則輸出端以犇輸出。例如,當犃2犃1犃0=100時,若犇=0,則譯碼器處於禁止狀態,輸出端犇4=1=犇;若犇=1,則譯碼器處於譯碼狀態,輸出端犇4=0=犇。可見,這種接法實現了將數據犇以犇方式傳送至犇4的功能。
按照本例的設計思路,如果想把唯一地址譯碼器改做數據分配器,隻要把二進製譯碼器的使能端作為數據輸入端,原二進製代碼輸入端作為地址選擇信號輸入端,原譯碼輸出端作為分配器的數據輸出端,則帶使能端的二進製唯一地址譯碼器就改成了數據分配器。
數據分配器的用途比較多,比如用它將一台PC與多台外部設備連接,將計算機的數據分送到外部設備中。它還可以與計數器結合組成脈衝分配器,用它與數據選擇器連接組成分時數據傳送係統。
4.6數據選擇器數據選擇器(DataSelector/Multiplexer)是一種能從多路輸入數據中選擇一路送到輸出端的組合邏輯電路,其作用相當於多個輸入的單刀多擲開關或“多路開關”。數據選擇的功能是在通道選擇信號的作用下,將多個通道的數據分時傳送到公共的數據通道上去。
圖4.6.1是數據選擇器的電路結構示意圖,圖中犇0~犇2狀-1為2狀路數據輸入端,狀位地址選擇信號共有2狀種不同組合,每一種組合選擇對應的一路數據輸出。常用的數據選擇器有4選1、8選1、16選1等多種類型。下麵分別介紹4選1、8選1數據選擇器的原理、設計以及數據選擇器的應用。
表4.6.14選1數據選擇器功能表輸入輸出犌犃1犃0犇3犇2犇1犇0犢1××××××000×××00×××11××0×001××1×10×0××010×1××1圖4.6.1數據選擇器示意圖0×××0111×××14.6.14選1數據選擇器4選1數據選擇器的功能表如表4.6.1所示。表中犌表示使能控製端,犌=1時,數據選擇器不工作;犌=0時,數據選擇器工作。犇3、犇2、犇1、犇0分別表示4路數據輸入端,犃1、犃0表示地址選擇信號輸入端。
從功能表來看,為了對4路數據進行選擇,用2位地址選擇碼犃1犃0產生4個地址信號,第4章組合邏輯電路159當犃1犃0=00時,犢=犇0;當犃1犃0=01時,犢=犇1;當犃1犃0=10時,犢=犇2;當犃1犃0=11時,犢=犇3。這恰好相當於一個2位地址碼犃1犃0控製的4選1多路開關。因此,可以容易地寫出輸出端犢的邏輯函數式:犢=(犃1犃0犇0+犃1犃0犇1+犃1犃0犇2+犃1犃0犇3)·犌=犌∑犿犻犇犻(4.6.1)式中:犿犻為犃1犃0組成的最小項。圖4.6.2是按其邏輯函數式(4.6.1)繪出的邏輯圖。
圖4.6.24選1數據選擇器的邏輯電路圖圖4.6.374犔犛153的引腳排列常用的4選1數據選擇器的集成產品是COMS雙4選1數據選擇器74HC153和TTL雙4選1數據選擇器74LS153。雙4選1數據選擇器,在一個芯片上集成了兩個完全相同的4選1數據選擇器,74LS153的引腳圖如圖4.6.3所示。其中犃1犃0為兩個地址選擇信號輸入端,為兩個選擇器所共用,兩個選擇器各有一個使能輸入端1犌和2犌。其功能表同表4.6.1,對芯片中的任意一個4選1數據選擇器都適用。
4.6.28選1數據選擇器8選1數據選擇器的常用集成產品的典型型號是CMOS中規模集成電路74HC151和TTL中規模集成電路74LS151。圖4.6.4是8選1數據選擇器74LS151的邏輯圖和引腳排列圖,它通過給定不同的地址選擇信號即犃2犃1犃0的狀態,從8路輸入數據犇0~犇7中選擇一路並送到輸出端。犢為同相輸出端,犢為反相輸出端,兩個互補輸出以便應用更為靈活。犌是低電平有效的輸入使能控製端,用於控製電路的工作狀態和擴展功能。
根據邏輯電路圖4.6.4,寫出其邏輯函數式:犢=(犇0犃2犃1犃0+犇1犃2犃1犃0+犇2犃2犃1犃0+犇3犃2犃1犃0(4.6.2)+犇4犃2犃1犃0+犇5犃2犃1犃+犇6犃2犃1犃0+犇7犃2犃1犃0)犌寫成一般簡化的最小項表達式:7犢=犌犇犻犿犻(4.6.3)∑犻=0式中:犿犻為地址選擇信號犃2犃1犃0的最小項。
160數字電子技術圖4.6.48選1數據選擇器74犔犛151根據式(4.6.2),可列出74LS151的功能表表4.6.2數據選擇器74犔犛151的功能表如表4.6.2所示。輸入輸出按照74LS151的功能表,若犌=0,數據選擇犌犃2犃1犃0犢犢器正常工作,當犃2犃1犃0=000,犢=犇0;…;當犃2犃11×××01犃0=111,犢=犇7。即在犃2犃1犃0的控製下,從8路數據中選擇一路送到輸出端犢或反相輸出端犢。0000犇0犇0若犌=1,輸出犢=0,犢=1,電路處於禁止狀態。0001犇1犇1仿此,可以推出2狀選1的數據選擇器的一般0010犇2犇2輸出表達式:0011犇3犇32狀-10100犇4犇4犢=犌犇犻犿犻(4.6.4)∑犻=00101犇5犇5式中:狀為地址選擇信號輸入端數;犿犻為地0110犇6犇6址犃狀-1犃狀-2…犃0的最小項。0111犇7犇74.6.3數據選擇器的應用1.數據選擇器的擴展(1)位擴展如果需要選擇多位數據時,可由幾個1位數據選擇器並聯組成,即將它們的使能端連在一起,相應地選擇輸入端並接在一起。當需要進一步擴充位數時,隻需相應地增加器件的第4章組合邏輯電路161數目。
【例4.6.1】試用兩片1位8選1數據選擇器74LS151組成2位8選1數據選擇器。
解取兩片8選1數據選擇器74LS151,片0和片1的同名地址端相並聯,作為2位8選1數據選擇器的地址輸入端犛2犛1犛0,兩個使能端並聯作為擴展後的使能端犈。片0的輸入端犇0~犇7為低位輸入端犇00~犇07,輸出端犢為低位輸出犢0,犢為犢0;片1的輸入端犇0~犇7,為高位輸入端犇10~犇17,輸出端犢為高位輸出犢1,犢為犢1。如圖4.6.5所示。
圖4.6.52位8選1數據選擇器的連接方法(2)字擴展由於集成電路受到芯片麵積和外部封裝大小的限製,目前生產的中規模數據選擇器的最大數據通道數為16。當有較多的數據源需要選擇或者需要更大規模的數據選擇器時,可以用多片小容量的數據選擇器組合起來進行通道(容量)的擴展,也稱為字擴展。字擴展是把數據選擇器的使能端作為地址選擇輸入端來使用的。
【例4.6.2】試用2片8選1數據選擇器74LS151組成一個16選1的數據選擇器。
解為了能夠選擇16路數據中的任意1路,必須用4位輸入地址代碼,而8選1數據選擇器地址隻有3位,因此第4位地址輸入端隻能借用使能控製端犌。
用2片74LS151,將其低位的地址輸入端犃2犃1犃0並接組成4位地址選擇輸入的低3位,將高位輸入地址犃3接到74LS151(0)的犌端,而將犃3接到74LS151(1)的犌端,同時將2個數據選擇器的輸出端相加,就得到了圖4.6.6的16選1數據選擇器。
如果需要對組成的16選1數據選擇器進行工作狀態控製時,隻需要再設計一個控製輸入端分別加在或門輸入端和與門輸入端,把二輸入端或門、與門改為三輸入端或門、與門。
讀者可以自行設計。
2.實現組合邏輯函數對於2狀選1數據選擇器,當使能端為有效電平時,它的輸出表達式為2狀-1犢=犇犻犿犻(4.6.5)∑犻=0式中:狀為地址端數;犿犻為地址變量對應的最小項。如果把邏輯函數最小項表達式犉=∑犿犻與式(4.6.5)對比,可發現犇犻相當於最小項表達式中的係數。當犇犻=0時,對應162數字電子技術圖4.6.674犔犛151組成的16先1數據選擇器的最小項不列入函數式。所以,將邏輯變量從數據選擇器的地址端輸入,而在數據端加上適當的0或1,就可以實現邏輯函數。
(1)邏輯變量數≤數據選擇器的地址輸入端數當邏輯函數的變量個數和數據選擇器的地址輸入變量個數相同時,可直接用數據選擇器來實現邏輯函數。
【例4.6.3】用8選1數據選擇器實現三變表4.6.3偶校驗函數的真值表量的偶校驗函數。犃犅犆犔解所謂偶校驗函數,就是輸入變量中有偶0001數個1時輸出1,否則輸出為0。由此可以排出其0010真值表如表4.6.3所示。0100根據真值表,可知其邏輯表達式為0111犔=犃犅犆+犃犅犆+犃犅犆+犃犅犆1000=犿0+犿3+犿5+犿61011=∑犿(0,3,5,6)(4.6.6)1101今選用CMOS集成數據選擇器74HC151一1110片,將輸入變量接至數據選擇器的地址輸入端,即犃=犛2,犅=犛1,犆=犛0。輸出變量接至數據選擇器的輸出端,即犔=犢。將邏輯函數犔的最小項表達式與74HC151的功能表相比較,顯然,犔式中出現的最小項對應的數據輸入端應接1,犔式中沒出現的最小項,對應的數據輸入端應接0。即犇0=犇3=犇5=犇6=1,犇1=犇2=犇4=犇7=0。74HC151的使能端是低電平有效,故犈=0。畫出連線圖如圖4.6.7所示。
在已知真值表的情況下,可以不寫邏輯函數表達式,直接根據真值表,把犿犻為1對應的數據輸入端連接起來接1,其餘的數據輸入端連接起來接地。也同樣可得到如圖4.6.7所示的接線圖。
第4章組合邏輯電路163如果已知的邏輯函數式不是最小項表達式,可以把它化成最小項表達式,再依據最小項表達式確定,所有最小項對應的數據輸入端都接1,其餘的數據輸入端都接0。無論采用哪種方法,對於采用同樣的數據選擇器,得到的連接圖都是相同的。
從本例還可以看出,與使用各種邏輯門電路相比,使用數據選擇器不需要對邏輯函數進行化簡,從而使設計更為方便,更為簡單可靠。
我們把使用數據選擇器產生組合邏輯函數時的連接方法歸納為三個要點:①正確連接使能端;圖4.6.7用74犎犆151實現的偶校驗電路②區別高、低電位;③變量數<數據選擇器的地址端數時,不用的地址端和數據輸入端都應當接地。
(2)邏輯函數的變量數比數據選擇器的地址輸入變量多1當邏輯函數的變量數比數據選擇器的地址輸入變量數多1時,不能用前述的簡單辦法。
應分離出多餘的變量,把它們加到適當的數據輸入端。
【例4.6.4】試用4選1數據選擇器實現邏輯函數:犔=犃犅+犅犆+犃犆解(1)由於函數犔有三個輸入信號犃、犅、犆,而4選1僅有兩個地址端犃1和犃0,所以選犃、犅接到地址輸入端,且犃=犃1,犅=犃0。當然,也可以選擇犅=犃1,犆=犃0或者犃=犃1,犆=犃0。
(2)將犆加到適當的數據輸入端。
因為犔=犃犅+犅犆+犃犆=犃犅犆+犃犅犆+犃犅犆+犃犅犆=犃犅(犆+犆)+犃犅犆+犃犅犆=犿3+犿1犆+犿2犆=犿3+(犿1+犿2)犆犿0不出現在邏輯函數式中,所以犇0應當接0,犇3應當接1,犇2、犇1應當相連後接入變量犆。圖4.6.8例4.6.4的邏輯圖③畫出連線圖如圖4.6.8所示。【例4.6.5】用8選1數據選擇器74LS151實現邏輯函數:犔(犃,犅,犆,犇)=∑犿(1,2,5,7,9,11,13,14,15)解首先將函數犔寫成最小項表達式的變量形式,然後從4個自變量中選擇3個作為數據選擇器的地址選擇變量(本例選擇犃犅犆),並將表達式寫成數據選擇器的輸出函數的形式。
犔=犃犅犆犇+犃犅犆犇+犃犅犆犇+犃犅犆犇+犃犅犆犇+犃犅犆犇+犃犅犆犇+犃犅犆犇+犃犅犆犇=犿0犇+犿1犇+犿2犇+犿3犇+犿4犇+犿5犇+犿6犇+犿7犇+犿7犇=犿0犇+犿1犇+犿2犇+犿3犇+犿4犇+犿5犇+犿6犇+犿7164數字電子技術很顯然,如果使能端為有效電平,當數據選擇器的地址選擇輸入犃2犃1犃0=犃犅犆時,輸入數據端犇0~犇7=犇,犇,犇,犇,犇,犇,犇,1。因此繪出電路圖如圖4.6.9所示。
數據選擇器和譯碼器都可以實現邏輯函數,而且不需要對邏輯函數進行化簡,並可以使集成電路芯片數目減到最少。它們不同之處在於:一個譯碼器可以實現多個邏輯函數,但需要輔以門電路,而且邏輯函數的變量多於譯碼器的輸入端時,實現起來較為困難,隻能將譯碼器圖4.6.9例4.6.5的邏輯圖擴展後實現;一個數據選擇器隻能實現一個邏輯函數,但是可以實現邏輯函數的變量數多於數據選擇器地址輸入端數的情況。
3.實現並行數據到串行數據的轉換數據選擇器通用性較強,除了能從多路數據中選擇輸出信號外,還可以實現並行數據到串行數據的轉換等。在數字係統中,往往要求將並行輸入的數據轉換成串行數據輸出,用數據選擇器很容易完成這種轉換。
圖4.6.10所示為8選1數據選擇器74LS151組成的並/串行轉換的電路圖。選擇器地址輸入端犃2犃1犃0的變化,按照圖中所給的波形從000到111依次進行,則選擇器的輸出犔隨之接通犇0、犇1、犇2、…、犇7。當選擇器的數據輸入端犇0~犇7與一個並行8位數01001101相連接時,輸出端得到的數據依次是0→1→0→0→1→1→0→1,即轉換為串行數據輸出。
圖4.6.10數據並行輸入轉換成串行輸出4.7數值比較器在各種數字係統尤其是在數字電子計算機中,經常需要對兩個二進製數進行大小判別,然後根據判別結果轉向執行某種操作。用來完成兩個位數相同的二進製數犃和犅的大小比較的邏輯電路稱為數值比較器或數碼比較器,簡稱比較器。比較兩個數犃和犅的大小一般原則是從它們的最高位開始比較,最高位數大的數就大,若最高位數相等,則再比較次高位,如此逐位比較下去直至最低位。在數字電路中,數值比較器的輸入是要進行比較的兩個二進製數犃和犅,輸出比較的結果有犃>犅、犃<犅和犃=犅三種情況。因此,數值比較器有第4章組合邏輯電路1653個不同的輸出端。
4.7.11位數值比較器1位數值比較器是多位比較器的基礎,其功能是比較兩個1位二進製數犃和犅的大小。當犃和犅都是1位數時,它們隻能取0或1兩種值,由此可寫出1位數值比較器的真值表,如表4.7.1所示。
由真值表寫出邏輯表達式:犉犃>犅=犃犅犉犃<犅=犃犅(4.7.1)犉犃=犅=犃犅+犃犅由以上邏輯表達式可畫出1位數值比較器的邏輯圖,如圖4.7.1所示。
表4.7.11位數值比較器真值表輸入輸出犃犅犉犃>犅犉犃<犅犉犃=犅000010101010100圖4.7.11位數值比較器的邏輯圖110014.7.2多位數值比較器1位數值比較器隻能對兩個1位二進製數進行比較,而實用的比較器一般是多位的,而且要考慮低位的比較結果。下麵以2位數值比較器為例討論這種多位數值比較器的結構及工作原理。
1.2位數值比較器2位數值比較器的真值表如表4.7.2所表4.7.22位數值比較器的真值表示。其中犃1、犅1、犃0、犅0為數值輸入端,數值輸入輸出犉犃>犅、犉犃<犅、犉犃=犅為三種不同比較結果的輸出端。犃1犅1犃0犅0犉犃>犅犉犃<犅犉犃=犅由真值表可見,當高位犃1、犅1不相等犃1>犅1××100時,無需比較低位,犃1、犅1的比較結果就是犃1<犅1××010兩個數的比較結果。當高位相等11犃=犅犃1=犅1犃0>犅0100時,再比較低位犃0、犅0,由犃0、犅0的比較結果決定兩個數的比較結果。利用1位數值犃1=犅1犃0<犅0010的比較結果,可以列出簡化的真值表如表犃1=犅1犃0=犅00014.7.2所示。
由此可寫出如下邏輯表達式:166數字電子技術犉犃>犅=犉犃1>犅1+犉犃1=犅1犉犃0>犅0犉犃<犅=犉犃1<犅1+犉犃1=犅1犉犃0<犅0(4.7.2)犉犃=犅=犉犃=犅犉犃=犅根據式(4.7.2)畫出邏輯圖如圖4.7.12所1示0。0圖4.7.22位數值比較器邏輯圖電路利用了1位比較器的輸出作為中間結果。它的原理是,如果2位數犃1犃0和犅1犅0的高位不相等,則高位比較結果就是兩數的比較結果,與低位無關。這時高位輸出犉犃1=犅1=0,使與門G1、G2、G3均封鎖,而或門都打開,低位比較結果不能影響或門,高位比較結果則從或門直接輸出。如果高位相等,則犉犃1=犅1=1,使與門G1、G2、G3均都打開,同時由於犉犃>犅=0和犉犃=犅=0作用,或門也打開,低位的比較結果直接送達輸出端,即低位的比較結1果決1定兩數誰1大、1誰小或者相等。
實際的多位比較器為了實現2位以上的數值比較,還設置了3個級聯輸入端犐犃>犅、犐犃<犅和犐犃=犅,以便於輸入低位片的比較結果和多片之間的連接。當有低位片與之連接時,如果犃1犃0和犅1犅0兩位數都相等,則比較結果由低位片的比較結果犐犃>犅、犐犃<犅、犐犃=犅來決定。如果沒有低位片參與比較,級聯輸入端犐犃>犅、犐犃<犅、犐犃=犅應分別接0、0、1,這時若犃1犃0=犅1犅0,則輸出端犉犃=犅=1,即比較結果仍為犃1犃0=犅1犅0。帶有級聯輸入端的2位數值比較器的真值表如表4.7.3所示。
表4.7.3帶有級聯輸入端的2位數值比較器真值表數值輸入級聯輸入輸出犃1犅1犃0犅0犐犃>犅犐犃<犅犐犃=犅犉犃>犅犉犃<犅犉犃=犅犃1>犅1×××××100犃1<犅1×××××010犃1=犅1犃0>犅0×××100第4章組合邏輯電路167(續表)數值輸入級聯輸入輸出犃1犅1犃0犅0犐犃>犅犐犃<犅犐犃=犅犉犃>犅犉犃<犅犉犃=犅犃1=犅1犃0<犅0×××010犃1=犅1犃0=犅0100100犃1=犅1犃0=犅0010010犃1=犅1犃0=犅0001001因為多了三個級聯輸入端,按照真值表,其對應的比較結果的邏輯表達式為犉犃>犅=犉犃1>犅1+犉犃1=犅1犉犃0>犅0+犉犃1=犅1犉犃0=犅0犐犃>犅犉犃<犅=犉犃1<犅1+犉犃1=犅1犉犃0<犅0+犉犃1=犅1犉犃0=犅0犐犃<犅(4.7.3)犉犃=犅=犉犃1=犅1犉犃0=犅0犐犃=犅圖4.7.3是依據式(4.7.3)所畫出的邏輯圖。以此方法可以構成更多位的數值比較器。
圖4.7.3帶級聯輸入的2位輸入比較器邏輯圖2.集成數值比較器常用的中規模集成數值比較器有CMOS和TTL的產品,74HC85和74LS85是4位數值比較器,74HC682和74LS682是8位數值比較器。這裏主要介紹74LS85及其應用擴展。
(1)集成數值比較器74LS85集成數值比較器74LS85是TTL型4位數值比較器,其功能如表4.7.4所示。圖4.7.4是它的簡化邏輯符圖4.7.474犔犛85簡化邏輯符號號。74LS85有犃3犃2犃1犃0與犅3犅2犅1犅0,擴展輸入端168數字電子技術犐犃>犅、犐犃<犅、犐犃=犅共十一個輸入端,犉犃>犅、犉犃<犅和犉犃>犅為三個輸出端。三個擴展輸入端與其他比較器的輸出連接,以便組成位數更多的數值比較器。
表4.7.44位數值比較器74犔犛85的功能表輸入輸出犃3犅3犃2犅2犃1犅1犃0犅0犐犃>犅犐犃<犅犐犃=犅犉犃>犅犉犃<犅犉犃=犅犃3>犅3×××××××××犎犔犔犃3<犅3×××××××××犔犎犔犃3=犅3犃2>犅2×××××××犎犔犔犃3=犅3犃2<犅2×××××××犔犎犔犃3=犅3犃2=犅2犃1>犅1×××××犎犔犔犃3=犅3犃2=犅2犃1<犅1×××××犔犎犔犃3=犅3犃2=犅2犃1=犅1犃0>犅0×××犎犔犔犃3=犅3犃2=犅2犃1=犅1犃0<犅0×××犔犎犔犃3=犅3犃2=犅2犃1=犅1犃0=犅0犎犔犔犎犔犔犃3=犅3犃2=犅2犃1=犅1犃0=犅0犔犎犔犔犎犔犃3=犅3犃2=犅2犃1=犅1犃0=犅0犔犔犎犔犔犎根據表4.7.4,該比較器的比較原理和2位比較器的比較原理相同。兩個4位數的比較是從犃的最高位犃3和犅的最高位犅3進行比較,如果它們不相等,則該位的比較結果可以作為兩數的比較結果。若最高位犃3=犅3,則再比較次高位犃2和犅2,依此類推。顯然,如果兩數相等,那麼,必須將比較進行到最低位才能得到結果。若僅對4位數進行比較時,應對三個擴展輸入端進行適當處理,即使犐犃>犅=0、犐犃<犅=0和犐犃=犅=1。
(2)數值比較器74LS85的應用①單片應用一片74LS85可以對4位二進製數進行比較,此時三個級聯輸入端應當使犐犃>犅=0、犐犃<犅=0和犐犃=犅=1。當參與比較的二進製數少於4位時,除了使犐犃>犅=0、犐犃<犅=0和犐犃=犅=1以外,高位的多於輸入端應當同時接0或者同時接1。
②位數擴展當需要比較的兩個二進製數位數超過4位時,需要將多片74LS85比較器進行級聯,以擴展位數,擴展方式有串聯和並聯兩種。圖4.7.5所示是2片74LS85采用串聯方式組成的8位二進製數值比較器,低位芯片74LS85(0)對低4位進行比較。因沒有更低位比較結果輸入,其級聯輸入端犐犃>犅、犐犃<犅、犐犃=犅接“001”。高位芯片74LS85(1)對高4位進行比較,級聯輸入端接低位比較器74LS85(0)的比較結果輸出。當犃7犃6犃5犃4≠犅7犅6犅5犅4時,8位比較結果由高4位決定,74LS85(0)的比較結果不產生影響;當犃7犃6犃5犃4=犅7犅6犅5犅4時,8位比較結果由低4位決定;當犃7犃6犃5犃4犃3犃2犃1犃0=犅7犅6犅5犅4犅3犅2犅1犅0時,比較結果由低位芯片級聯輸入端決定,因為這時級聯輸入端犐犃=犅接1,最終比較結果就是犉犃=犅=1,即犃=犅。
第4章組合邏輯電路169圖4.7.52片74犔犛85串聯組成的8位數值比較器理論上講,按照上述級聯方式可以擴展成任何位數的二進製數比較器。但是,由於這種級聯方式中比較結果是逐級進位的,工作速度較慢。級聯芯片數越多,傳遞時間越長,工作速度越慢。所以,位數很多時是不宜采用串聯擴展方式的。
為了提高比較速度,當擴展位數較多時,多采用並聯方式。圖4.7.6所示電路是采用並聯進位方式,用5片74LS85組成的16位二進製數比較器。將16位二進製數按高低位次序分成4組,每組用1片74LS85進行比較,各組的比較是並行的,然後將每組的比較結果再經1片74LS85進行比較後得出比較結果。這樣總的傳遞時間為74LS85的延遲時間的2倍。如果采用串聯方式,則需要4倍的74LS85的延遲時間。
圖4.7.65片74犔犛85並聯擴展為16位數值比較器4.8組合邏輯電路中的競爭與冒險前麵介紹的組合邏輯電路都是在理想的情況下進行討論的,它主要是根據邏輯表達式來研究輸入和輸出之間在穩定狀態下的邏輯關係,沒有考慮信號通過導線和邏輯門電路產生的時間延遲,認為多個輸入信號發生的變化都是在瞬間完成的。實際上,信號經過邏輯門170數字電子技術電路都需要一定的時間。由於不同路徑上門的級數不同,信號經過不同路徑傳輸的時間不同。或者門的級數相同,而各個門延遲時間的差異,都會造成傳輸時間的不同,當一個輸入信號經過多條路徑傳送後又重新會合到某個門上,就會導致信號不能同時到達,這種信號不同時到達的現象稱為競爭。因門的輸入端有競爭而導致輸出端出現不應有的尖峰幹擾脈衝(又稱毛刺)的錯誤輸出,這種現象稱為冒險。
4.8.1產生競爭冒險的原因為了說明產生競爭冒險的原因,我們來分析下麵兩個簡單電路的工作情況。圖4.8.1(a)所示的與門,在穩態情況下,當犃=0,犅=1或者犃=1,犅=0時,輸出犔始終為0。如果信號犃、犅的變化同時發生,則能滿足要求。若由於前一級門電路的延遲差異或其他原因,致使犅從1變為0的時刻,滯後於犃從0變為1的時刻,因此,在很短的時間間隔內,與門的兩個輸入端均為1,由於與門也有一定延遲時間狋pd,其輸出出現一個比犃由0變1時刻還要推遲一個狋pd時間的高電平窄脈衝(幹擾脈衝),如圖4.8.1(b)所示。
圖4.8.1產生正跳變脈衝的競爭冒險圖4.8.2產生負跳變脈衝的競爭冒險與此一樣,在穩態情況下,對於圖4.8.2(a)所示的或門,當犃=0,犅=1或者犃=1,犅=0時,輸出犔始終為1。但是當犃從0變為1的時刻,滯後於犅從1變為0的時刻,則在很短的時間間隔內,或門的兩個輸入端均為0,考慮到或門的延遲時間,在或門輸出端則出現一個比犅從1變0時刻略遲一點的低電平窄脈衝(幹擾脈衝),如圖4.8.2(b)所示。
我們再來分析圖4.8.3(a)所示的組合邏輯電路產生的競爭冒險。電路的輸出邏輯表達式為犔=犃犆+犅犆。由此式可知,當犃和犅都為1時,表達式簡化成兩個互補信號相加,即犔=犆+犆,因此,該電路存在競爭冒險。由圖4.8.3(b)所示的波形可以看出,在犆由1變0時,犆由0變1有一延遲時間,G3和G2的輸出犃犆和犅犆分別相對於犆和犆均有延遲,犃犆和犅犆經過G4的延遲而使輸出出現一負跳變的窄脈衝。
總而言之,當一個邏輯門的兩個輸入端的信號同時向相反方向變化而且變化的時間有差異的現象,稱為競爭。兩個輸入端可以是不同變量所產生的信號,但其取值的變化方向是相反的,如圖4.8.1和圖4.8.2中的犃犅和犃+犅。也可以是在一定條件下門電路輸出端的邏輯表達式簡化成兩個互補信號相乘或者相加,即犔=犃犃或者犔=犃+犃,如圖4.8.3所第4章組合邏輯電路171示。由於競爭而使電路的輸出端產生尖峰脈衝,從而導致後級電路產生錯誤動作的現象稱為冒險。
圖4.8.3組合邏輯電路的競爭冒險實際上,如果考慮信號的延遲,若與門的兩個輸入犃和犃,其中一個先從0變1時,則犃犃會向其非穩定值1變化,此時會產生冒險;若或門的兩個輸入犃和犃,其中一個先從1變0時,則犃+犃會向其非穩定值0變化,也會產生冒險。
值得注意的是,有競爭現象時不一定都會產生幹擾脈衝,如圖4.8.1(a)所示,如果犅從1變為0時沒有滯後信號犃的變化,則輸出不會產生冒險。在一個複雜的邏輯係統中,由於信號的傳輸路徑不同,或者各個信號延遲時間的差異、信號變化的互補性以及其他一些因素,很容易產生競爭冒險現象。
4.8.2冒險的分類通常根據尖峰脈衝極性的不同,組合邏輯電路的冒險可分為0型冒險和1型冒險兩類。
1.0型冒險在圖4.8.4(a)所示的電路中,如果不考慮G1門的傳輸延遲時間,輸出犔=犃+犃,輸出波形如圖4.8.4(b)所示。當考慮G1門的傳輸延遲時間時,工作波形如圖4.8.4(c)所示。
可見,當輸入信號犃經過G1門延遲1狋pd時間後,使到達G2門的兩個輸入信號犃和犃的時間不同,從而導致了輸出出現了不該有的負向幹擾脈衝(窄負脈衝),這種產生窄負峰脈衝的現象稱為0型冒險。
圖4.8.4產生負尖峰脈衝的冒險2.1型冒險在圖4.8.5(a)所示的電路中,如果不考慮G1門的傳輸延遲時間,輸出犔=犃犃。當考172數字電子技術慮G1門的傳輸延遲時間1狋pd時,輸出犔出現了不該有的很窄的正向幹擾脈衝(窄正脈衝),這種產生窄正脈衝的現象稱為1型冒險。
圖4.8.5產生正尖峰脈衝的冒險根據以上分析可知,在組合邏輯電路中,當一個門的兩個輸入信號到達時間不同且向相反方向變化時,則在輸出端可能會產生不該有的冒險脈衝,這是產生競爭冒險的主要原因。
尖峰脈衝隻發生在輸入信號變化的瞬間,在穩定狀態下是不會出現的。
4.8.3冒險現象的判別判斷一個組合邏輯電路是否存在競爭冒險常用的方法有代數法、卡諾圖法和實驗法。
1.代數法我們已經知道,當一個組合電路的邏輯表達式可以化為以下兩種形式,則該組合邏輯電路存在冒險,即犔=犃+犃(產生0型冒險)(4.8.1)犔=犃犃(產生1型冒險)(4.8.2)這就是判斷競爭冒險的兩個判別式。觀察這兩個判別式可以發現,隻有當同一個變量以原變量和反變量兩種形式出現在電路的邏輯表達式中時,電路才可能出現競爭冒險。因此,代數法判別的步驟是:(1)找出在表達式中以原變量和反變量兩種形式出現的變量;(2)消去式中其他變量,僅保留被研究的變量,若能得到上述兩種判別式中的一種,就說明電路中存在競爭冒險。
【例4.8.1】判別邏輯函數表達式為犉=犃犆+犃犅+犃犆的組合邏輯電路是否產生競爭冒險。
解從函數表達式可知,變量犃和犆同時以原變量和反變量形式出現在函數表達式中,則該函數表達式對應的組合邏輯電路在犃或犆發生變化時,可能由於競爭而產生冒險。
現對犃、犆兩個變量分別進行分析。
將犅和犆的各種取值組合分別代入函數表達式中,則:當犅犆=00時,犉=犃;當犅犆=01時,犉=犃;當犅犆=10時,犉=犃;當犅犆=11時,犉=犃+犃。
由此可見,當犅犆=11時,變量犃改變狀態可能使邏輯電路產生偏0型冒險。
第4章組合邏輯電路173同樣,將犃和犅的各種取值組合分別代入函數表達式中,則:當犃犅=00時,犉=犆;當犃犅=01時,犉=犆+1;當犃犅=10時,犉=犆;當犃犅=11時,犉=犆。
由此可見,當犃犅在各種取值組合時,變量犆改變狀態均不會使電路產生冒險現象。
【例4.8.2】判別圖4.8.6所示的邏輯電路是否存在冒險。
解根據邏輯圖寫出邏輯表達式:犣=犃犅犆犃犇=犃犅犆+犃犇表達式中含有犃和犃,可以看出,當犅犆犇=011時,即犅=0、犆=犇=1時,犣=犃+犃。
因此,該電路存在0型冒險。
圖4.8.6例4.8.2的邏輯電路圖4.8.7例4.8.3的邏輯電路【例4.8.3】判別圖4.8.7所示電路是否存在冒險。
解從邏輯圖寫出邏輯表達式:犣=犃+犅+犃+犆=(犃+犅)(犃+犆)因為邏輯表達式中包含有犃和犃,當犅=1、犆=0時,犣=犃犃。所以,該電路存在1型冒險。
2.卡諾圖法用卡諾圖判別邏輯電路是否存在冒險現象時,首先應寫出該邏輯電路的輸出邏輯函數表達式,其次畫出邏輯函數的卡諾圖,並畫出包圍圈,最後觀察各包圍圈有無相切。隻要在卡諾圖中存在兩個相切而又不相互包容的包圍圈,則該邏輯電路存在冒險現象。
【例4.8.4】試用卡諾圖法判別圖4.8.8是否存在冒險現象。
解寫出圖4.8.8的邏輯表達式:犢=犃犆+犃犅由邏輯表達式可畫出圖4.8.9所示的卡諾圖。依據相鄰項的特性畫的兩個包圍圈相切,就是指有些變量會同時以原變量和反變量的形式出現。由於圖4.8.9所示的電路為兩個1方格的包圍圈相切,所以圖4.8.8所示的電路可能會出現0型冒險。
174數字電子技術圖4.8.8例4.8.4的邏輯圖圖4.8.9例4.8.4的卡諾圖【例4.8.5】試用卡諾圖法判別邏輯函數犢=(犃+犆)(犃+犇)(犃+犅+犆)是否存在冒險現象。
解求出邏輯函數犢的反函數:犢=(犃+犆)(犃+犇)(犃+犅+犆)=犃犆+犃犇+犃犅犆。
按上式填卡諾圖。由於是反函數,故有最小項的方格填0,沒有最小項的方格填1,如圖4.8.10所示。
從圖4.8.10中可以看出,有兩個包含4個0方格的包圍圈相切,所以該邏輯函數式會出現1型冒險。
3.實驗法在電路輸入端加入所有可能發生的狀態變化的波形,觀察輸出端是否有尖峰脈衝,這是最為直觀可靠的判別方法。
4.8.4消除冒險現象的方法消除組合邏輯電路競爭冒險的方法有修改圖4.8.10例4.8.5的卡諾圖邏輯設計法、增加選通脈衝法、接入濾波電容法等。
1.修改邏輯設計法修改邏輯設計法是利用邏輯代數中的等式變換,在確保邏輯函數值不變的條件下,對原邏輯函數的表達式進行適當修改,以消除競爭冒險。主要有消去互補相乘項法和增加冗餘項法兩種方法。
(1)發現並消去互補相乘項例如,邏輯函數式犢=(犃+犅)(犃+犆),在犅=0、犆=0時,犢=犃犃。若直接根據這個邏輯表達式組成邏輯電路,則可能出現競爭冒險。如將該式變換為犢=犃犃+犃犆+犃犅+犅犆=犃犆+犃犅+犅犆,這裏犃犃已經消掉。根據這個表達式組成的邏輯電路就不會出現競爭冒險。
這種方法對於“或與”形式的邏輯函數表達式比較方便,隻需要把括號去掉,把“或與”形式變換為“與或”形式,這過程中凡有的互補乘積項自然就消去了。
(2)增加冗餘項第4章組合邏輯電路175此法是在函數表達式中加上多餘的與項或乘上多餘的或項,使原邏輯函數不可能在某種條件下簡化為犢=犃犃或犢=犃+犃的形式,從而消除可能產生的競爭冒險,所以人們常把修改邏輯設計法又稱為增加冗餘項法。尋找冗餘項可用代數法,也可采用卡諾圖法。
①代數法就是利用公式犃犅+犃犆=犃犅+犃犆+犅犆來尋找冗餘項犅犆。例如犉=犃犅+犅犆,當犃犆=11時,可化為犉=犅+犅的形式,但加上冗餘項犃犆後,犉=犃犅+犅犆+犃犆,當犃犆=11時,犉=1,因此就消除了競爭冒險。
②卡諾圖法這種方法就是利用卡諾圖尋找冗餘項。方法是:在卡諾圖上用一多餘的卡諾圈將兩相切的圈連接起來,而將這多餘的卡諾圈對應的與項加到電路的函數表達式當中。這後添上去的多餘的卡諾圈,其多餘項就是冗餘項。
代數法和卡諾圖法這兩者的區別僅在於尋找冗餘項的方法不同而已。
現以圖4.8.11所示電路為例,根據前麵的代數法判別公式4.8.1,若有犔=犃+犃,便產生0型冒險。現在該電路輸出函數的表達式為犢=犃犅+犅犆,當犃=犆=1時,犢=犅+犅存在競爭冒險。若在函數中增加一個乘積項犃犆(這個新增加的乘積項就是運用冗餘律可以消去的冗餘項),此時的邏輯函數表達式為犢=犃犅+犅犆+犃犆圖4.8.11存在競爭冒險的邏輯圖圖4.8.12消除了競爭冒險後的邏輯圖增加冗餘項後的邏輯圖如圖4.8.12所示。這樣,當犃=犆=1時,門4的輸出為1,門5的輸出也為1,所以有犢=犃犅+犅犆+犃犆=犅+犅+1=1這就消除了變量犅跳變時對電路輸出的影響,輸出犢保持為1,從而消除了競爭冒險。
我們也可以利用卡諾圖來確定冗餘項。先畫出圖4.8.11電路的卡諾圖,圖中犃犅和犅犆這兩個卡諾圈相鄰相切但是不相交,今畫一個卡諾圈把這兩圈連接在一起,如圖4.8.13中所示,這個連接兩個相切但互補包含的卡諾圈的虛線新圈就是增加的冗餘項犃犆。
所以,卡諾圖法就是通過把那些相鄰(或稱為相切)但不相交的圈,畫新圈把它們連接在一起,這新圈圖4.8.13消除競爭冒險的卡諾圖176數字電子技術代表的就是要增加的冗餘項。
【例4.8.6】已知邏輯函數犢=∑犿(0.4.5.7.10.13.14.15),試求無競爭冒險的與或表達式。
解畫出邏輯函數的卡諾圖,如圖4.8.14所示。
由圖4.8.14求得函數的最簡表達式為犢=犅犇+犃犆犇+犃犆犇為了消除競爭冒險,增加如圖中虛線圈所示的冗餘項犃犅犆和犃犅犆,求出無競爭冒險的與或表達式為犢=犅犇+犃犆犇+犃犆犇+犃犅犆+犃犅犆很顯然,增加了冗餘項使電路變得複雜成本增加,但卻使電路的可靠性得到了提高。
2.增加選通脈衝因為冒險現象僅僅發生在輸入信號變化轉圖4.8.14例4.8.6的卡諾圖換的瞬間,在穩定狀態是沒有冒險信號的,所以,采用選通脈衝,在輸入信號發生轉換的瞬間,正確反映組合電路穩定時的輸出值,可以有效地避免各種冒險。增加選通脈衝法是在電路中加入一個選通脈衝,在確定電路進入穩定狀態後,才讓電路輸出選通,否則封鎖電路輸出。如圖4.8.15所示,因為犈的高電平出現在電路達到穩定狀態後,所以G3~G0每個門的輸出端都不會出現尖峰脈衝。但需要注意,這時G3~G0,正常的輸出信號也將變成脈衝信號,而且其寬度和選通脈衝寬度相同。例如,當輸入信號犃犅變成11以後,犢3並沒有馬上變成高電平,而要等到犈端的正選通脈衝出現時才給出一個正脈衝。
圖4.8.15選通脈衝消除競爭冒險現象3.接入濾波電容在門電路的輸出端並聯一個濾波電容,可以將尖峰脈衝的幅度削減至門電路的閾值電壓以下。由於競爭產生的幹擾脈衝一般很窄,所以在電路的輸出端對地接一個電容值在4~20pF之間的小電容,如圖4.8.16(a)所示,犚0是邏輯門電路的輸出電阻。若在圖4.8.3(a)所示電路的輸出端並聯電容犆,當犃=犅=1,犆的波形與圖4.8.3相同的情況下,得到如圖第4章組合邏輯電路1774.8.16(b)所示的輸出波形。
圖4.8.16用電容濾波消除競爭冒險現象顯然,電路對窄脈衝起到平滑波形的作用,使輸出端不會出現邏輯錯誤,但同時也使輸出波形的上升沿和下降沿都變得比較緩慢,從而消除冒險現象。
上述三種方法的適用場合、效果等仍然有利有弊:更改邏輯設計雖然可以解決每次隻有單個輸入信號發生變化時電路的冒險問題,但不能解決多個輸入信號同時發生變化時的冒險現象,適用範圍非常有限。選通脈衝法,雖然比較簡單,一般不需要增加電路元件,但選通脈衝必須與輸入信號維持嚴格的時間關係。因此,選通脈衝的產生並不是十分容易的。輸出端並聯接如濾波電容雖方便易行,但會使輸出電壓波形變壞且影響速度,因此,僅僅適合於對信號波形、速度要求都不高的場合。
需要指出的是,現代數字電路或數字係統的分析與設計,可以借助計算機進行時序仿真,檢查電路是否存在競爭冒險現象。仿真時,由於邏輯門電路的傳輸延遲時間是采用軟件設定的標準值或設計者自行設定的值,與電路的實際工作情況總是有差異的,仿真通過隻能說是初步沒有查出問題,最終是否管用,仍然需要在實驗中檢查驗證來確定。因此,以上介紹的產生競爭冒險的原因和克服競爭冒險的基本方法,也還必須在應用實踐中積累和總結技術經驗,才能更好地解決這一問題。
4.9犕狌犾狋犻狊犻犿10在組合邏輯電路中的應用組合邏輯電路是一種重要的數字邏輯電路,其特點是任何時刻的輸出僅僅取決於同一時刻輸入信號的取值組合。根據電路確定功能,是組合邏輯電路分析的目的。一般的分析步驟為:由組合邏輯電路推導出邏輯表達式,將邏輯表達式化簡得到最簡表達式,將最簡表達式列表得到對應真值表,再由真值表分析確定該電路的功能。根據要求求解電路,是設計組合邏輯電路的過程,步驟為:將提出的問題進行分析得到該問題的真值表,將真值表進行歸納得到邏輯表達式,邏輯表達式化簡變換後得到求解的邏輯圖。在Multisim軟件中邏輯轉換儀是常用的數字邏輯電路設計和分析的儀器,使用方便、簡潔。本書將利用Multisim對已知邏輯電路進行分析與仿真測試,並利用該軟件就某一邏輯功能進行輔助設計。
4.9.1加法器仿真分析利用邏輯轉換儀對全加器電路進行分析,鍵盤字母犃用於對電路輸出端信號狊狀與犮狀的切換。電路仿真連接及進位端犮狀仿真轉換真值表如圖4.9.1所示。如要觀測和輸出端狊狀仿178數字電子技術真轉換真值表,則僅需要切換開關犃即可,如圖4.9.2所示。
圖4.9.1全加器電路及進位端真值表仿真結果圖4.9.2全加器和輸出端真值表仿真結果利用邏輯分析儀也可以分別獲得用與門實現的全加器的狊狀,犮狀表達式:狊狀=犃′犅′犆+犃′犅犆′+犃犅′犆′+犃犅犆犮狀=犃犆+犃犅+犅犆同樣方法可對半加器進行仿真分析,也可以根據功能得到真值表,進而得到邏輯表達式,並由此產生相應的邏輯電路。
4.9.2四人表決電路設計與分析設計4人表決電路,即如果3人以上同意,則通過;反之,則被否決。用與非門實現。根據邏輯功能,運用邏輯轉換儀可得到真值表以及由真值表轉換的邏輯表達式,如圖4.9.3所示。輸出邏輯表達式為犢=犃′犅犆犇+犃犅′犆犇+犃犅犆′犇+犃犅犆犇′+犃犅犆犇運用邏輯轉換儀得到最簡邏輯表達式犢=犃犆犇+犃犅犇+犃犅犆+犅犆犇,如圖4.9.4所示。
運用邏輯轉換儀轉換得邏輯圖如圖4.9.5所示。
第4章組合邏輯電路179圖4.9.34人表決真值表及仿真輸出的邏輯表達式圖4.9.4最簡邏輯表達式圖4.9.5邏輯轉換儀轉換所得的邏輯圖180數字電子技術4.9.3編碼器及譯碼器仿真分析數字信號不僅可以用來表示數,還可以用來表示各種指令和信息。所謂編碼,是指在選定的一係列二進製數碼中,賦予每個二進製數碼以某一固定含義。例如,用二進製數碼表示十六進製數叫做二十六進製編碼。能完成編碼功能的電路統稱為編碼器。74LS148D是常用的8線3線優先編碼器。在8個輸入線上可以同時出現幾個有效輸入信號,但隻對其中優先權最高的一個有效輸入信號進行編碼。其中7端優先權最高,0端優先權最低,其他端的優先權按照腳號的遞減順去排列。犈犐為選通輸入端,低電平有效,隻有犈犐=0時,編碼器正常工作,而在犈犐=1時,所有的輸出端均被封鎖。犈0為選通輸出端,犌犛為優先標誌端。該編碼器輸入、輸出均為低電平有效。
譯碼是編碼的逆過程,將輸入的每個二進製代碼賦予的含義“翻譯”過來,給出相應的輸出信號。能夠完成譯碼功能的電路叫做譯碼器。74LS138D屬於3線8線譯碼器,該譯碼器輸出低電平有效。
如圖4.9.6所示為編碼器連接電路,輸入端“1”表示高電平,“0”表示低電平,“X”表示高低電平都可以。輸出端中的“1”表示探測器亮,“0”表示探測器滅。該編碼器輸入、輸出均為低電平有效。依次切換9個單刀雙擲開關進行仿真實驗,將結果記錄入於表4.9.1中,即可驗證編碼器74LS148的邏輯功能。
圖4.9.6編碼器74犔犛148邏輯測試電路表4.9.1實測74犔犛148的真值表輸入端輸出端犈犐犢7犢6犢5犢4犢3犢2犢1犢0犃2犃2犃0犌犛犈01XXXXXXXX111110111111111111001111111011101第4章組合邏輯電路181(續表)輸入端輸出端犈犐犢7犢6犢5犢4犢3犢2犢1犢0犃2犃2犃0犌犛犈001111110X110010111110XX10101011110XXX1000101110XXXX011010110XXXXX01001010XXXXXX0010100XXXXXXX000013線8線譯碼器是常見的譯碼器,其測試電路如圖4.9.7所示。切換3個單刀雙擲開關進行輸入信號的設定,輸入端中的“1”表示接高電平,“0”表示接地電平。輸出端中的“1”表示探測器亮,“0”表示探測器滅。該譯碼器輸出低電平有效。依次切換3個單刀雙擲開關進行仿真測試,將結果記錄於表4.9.2中,即可驗證譯碼器74LS138的邏輯功能。
圖4.9.73線8線譯碼器74犔犛138測試電路表4.9.2實測74犔犛138的真值表輸入端輸出端犌1犌2犃犌2犅犃2犃1犃0犢0犢1犢2犢3犢4犢5犢6犢7100000011111111000011011111110001011011111182數字電子技術(續表)輸入端輸出端犌1犌2犃犌2犅犃2犃1犃0犢0犢1犢2犢3犢4犢5犢6犢710001111101111100100111101111001011111101110011011111101100111111111104.9.4競爭冒險電路仿真與分析在組合邏輯電路中,由於門電路存在傳輸延時時間和信號狀態變化的速度不一致等原因,使信號的變化出現快慢的差異,這種現象叫做競爭。競爭的結果是使輸出端可能出現錯誤的信號,這種現象叫做冒險。所以有競爭不一定有冒險,有冒險一定有競爭。利用卡諾圖可以判斷組合邏輯電路是否可能存在競爭冒險現象,具體做法如下:根據邏輯函數的表達式,做出卡諾圖,若卡諾圖中填1的格所形成的卡諾圖有兩個相鄰的圈相切,則該電路存在競爭冒險的可能性。
既然電路存在競爭就有可能產生冒險造成輸出的錯誤動作,因此,必須杜絕競爭冒險現象的產生,常用的消除競爭冒險的方法有:修改邏輯設計,增加冗餘項;在輸出端接濾波電容;加封鎖(選通)脈衝等。
1.0型冒險電路仿真如圖4.9.8所示電路,該電路的邏輯功能為犉=犃+犃=1,也就是說從邏輯功能上看不管信號如何變化,輸出應該恒為1。但是由於74LS05D非門電路的延時,引起輸出端在一小段時間內出現了不應該出現的低電平(負窄脈衝),這種現象成為0型冒險。仿真結果如圖4.9.9所示。
圖4.9.80型冒險仿真電路第4章組合邏輯電路183圖4.9.90型冒險仿真結果2.1型冒險電路仿真實驗步驟如圖4.9.10所示電路,該電路的邏輯功能為犃犃=0,也就是說從邏輯功能上看不管信號如何變化,輸出應該恒為0。但由於74LS04D非門電路的延時,引起輸出端在一小段時間裏出現了不應該出現的高電平(正窄脈衝),這種現象成為1型冒險。仿真結果如圖4.9.11所示。
圖4.9.101型冒險仿真電路3.多輸入信號同時變化冒險電路仿真多輸入信號同時變化的冒險仿真電路如圖4.9.12所示。該電路的邏輯功能為犉=犃犅+犃犆,已知犅=犆=1,所以犉=犃+犃=1,但是由於多輸入信號的變化不同時出現而引起該電路出現冒險。
184數字電子技術圖4.9.111型冒險的仿真結果圖4.9.12多輸入信號同時變化冒險仿真電路實驗仿真結果如圖4.9.13所示。
利用卡諾圖判斷該電路存在競爭冒險的可能性,為了消除競爭冒險現象,采用修改邏輯,增加冗餘項犅犆,使原邏輯表達式犉=犃犅+犃犆,變成犉=犃犅+犃犆+犅犆,修改後的電路如圖4.9.14所示。
第4章組合邏輯電路185圖4.9.13多輸入信號同時變化仿真結果圖4.9.14修正後的電路實驗仿真後結果如圖4.9.15所示,由圖可知,成功避免了競爭冒險的產生。
186數字電子技術圖4.9.15修正後電路的實驗仿真結果檪檪殏檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪殏檪本章小結檪檪檪檪組合邏輯電路的特點是:在任何時刻,電路的輸出隻取決於當時的輸入信號,而與電路原來所檪檪處的狀態無關。實現組合邏輯電路的基礎是邏輯代數和門電路。檪檪用邏輯圖、真值表、邏輯表達式、卡諾圖和波形圖等方法描述組合邏輯電路的邏輯功能,在本檪檪檪檪質上是一致的,可以互相轉換。其中由邏輯圖到真值表及由真值表到邏輯圖的轉換最為重要。這檪檪是因為組合邏輯電路的分析,實際上就是由邏輯圖到真值表的轉換;而組合邏輯電路的設計,在得檪檪出真值表後,其餘就是由真值表到邏輯圖的轉換。檪檪檪檪分析組合邏輯電路的大致步驟是:由邏輯圖寫出邏輯表達式→邏輯表達式化簡和變換→列真檪檪值表→分析邏輯功能。檪檪運用門電路設計組合邏輯電路的大致步驟是:由實際邏輯問題列出真值表寫出邏輯表達檪檪→檪檪式→邏輯表達式化簡和變換→畫出邏輯圖。由於現在都在使用集成門電路,為了降低成本,提高檪檪電路的可靠性,實際設計時,應在滿足邏輯要求的前提下,盡量減少所用芯片的數量和種類,且各檪檪檪檪個邏輯門輸入端的數目也最少,沒有競爭冒險。檪檪典型的中規模組合邏輯器件包括加法器、編碼器、譯碼器、數據選擇器和數值比較器等。這些檪檪組合邏輯器件除了具有其基本功能外,通常還具有輸入使能、輸出使能、輸入擴展、輸出擴展功能,檪檪檪檪使其功能更加靈活,便於構成較複雜的邏輯係統。應用組合邏輯器件進行組合邏輯電路設計時,檪檪所應用的原理和步驟與用門電路時基本一致,但也要注意其特殊點:檪檪(1)對邏輯表達式的變換與化簡應盡可能與組合邏輯器件的形式一致,而不要去盡可能地檪檪檪檪簡化。檪檪(2)設計時應考慮充分利用器件本身的功能。同種類型的器件有不同的型號,在滿足設計要檪檪檪殏檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪求的前提下,盡量選用簡單的器件,器件數、品種數盡可能少,連線也要最少。檪殏檪第4章組合邏輯電路187檪檪殏檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪殏檪檪(3)如果隻需一個組合器件就可以滿足要求,則需要對有關使能、擴展或者多餘輸入端等做適檪檪當的處理。如果一個組合器件不能滿足設計要求,則需要對組合器件進行擴展,直接將若幹個器檪檪檪檪件組合或者由適當的邏輯門將若幹個器件組合起來。
檪檪在組合邏輯電路中,競爭冒險可能導致負載電路誤動作,應用中需加以注意。同一個門的一檪檪組輸入信號到達的時間有先有後的現象稱為競爭。競爭而導致輸出產生尖峰幹擾脈衝的出錯現檪檪檪檪象稱為冒險。判斷一個組合邏輯電路是否存在競爭冒險,有代數法和卡諾圖法兩種方法。消除組檪檪合邏輯電路競爭冒險的方法有修改邏輯設計法、增加選通脈衝法、接入濾波電容法等。
檪檪殏檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪用對組合邏輯電路進行分析及仿真是分析、設計組合電路的快捷方法。檪檪Multisim10殏●練習題4.1寫出如題圖4.1所示電路對應的真值表。
題圖4.14.2試分析題圖4.2所示電路的邏輯功能。
題圖4.2題圖4.34.3設有四種組合邏輯電路,它們的輸入波形犃、犅、犆、犇如題圖4.3(a)所示,其對應的輸出波形為犠、犡、犢、犣,如題圖4.3(b)所示。試分別寫出它們的簡化邏輯表達式。
188數字電子技術4.4試分析題圖4.4所示電路的邏輯功能。
題圖4.4題圖4.54.5畫出題圖4.5(a)所示邏輯電路的輸出波形。已知電路的輸入波形如題圖4.5(b)所示。
4.6試分析題圖4.6所示電路的邏輯功能。
題圖4.6題圖4.74.7分析哪些輸入碼型可使題圖4.7所示邏輯圖中輸出犉為1。
4.8某高校畢業班有一個學生還需修滿9個學分才能畢業,在所剩的4門課程中,犃為5個學分,犅為4個學分,犆為3個學分,犇為2個學分。試用與非門設計一個邏輯電路,其輸出為1時表示該生能順利畢業。
4.9設計一個4輸入、4輸出的邏輯電路,要求當控製信號犆=0時輸出信號狀態與輸入信號狀態相反;當控製信號犆=1時輸出信號狀態與輸入信號狀態相同。
4.10設計一個電子保險鎖,該鎖有3個按鈕犃、犅、犆,隻有按鈕犅、犆同時按下時鎖才能打開,其他情況下鎖不開,並自動報警(除犃、犅、犆都不按)。
4.11設計一個電燈控製電路。要求:在三個不同的位置上控製同一盞電燈,任何一個開關撥動都可以使燈的狀態發生改變,即:如果原來燈亮,任意撥動一個開關,燈滅;如果原來燈滅,任意撥動一個開關,燈亮。
4.12設計一個組合邏輯電路,輸入是4位二進製數犃犅犆犇,當輸入大於等於9而小於等於14時輸入犣為1,否則輸出犣為0。用與非門實現電路。
4.13某工廠有犃、犅、犆三個車間,其中犃、犅車間用電功率相等,車間犆的用電功率是車間犃的2倍。工廠由2台發電機犢1和犢2供電。發電機犢1的最大輸出功率等於犃車間第4章組合邏輯電路189用電功率,發電機犢2的最大輸出功率是犢1的3倍。要求:設計一個邏輯電路,能根據各個車間的運行和關閉,以最節約的方式起、停發電機。
4.14一組合邏輯電路的真值表如題表4.14所示,用或非門實現該電路。
題表4.14犃犅犆犇犣犃犅犆犇犣000001000100010100110010110101001101011101000110010101011010011011110101110111104.15試設計一個邏輯電路,它有四個輸入端犃1犃0犅1犅0和一個輸出端犢。電路功能為:當變量犃1犃0的邏輯與非(犃1犃0)和變量犅1犅0的邏輯異或(犅1犅2)相等時,函數犢=1;否則為0。
(1)列出真值表;(2)畫出卡諾圖;(3)寫出邏輯表達式並化簡;(4)畫出邏輯電路圖。
4.16試用兩個半加器和一個或門構成一個全加器。
(1)寫出狊1和犮1的邏輯表達式;(2)畫出邏輯圖。
4.17仿照半加器和全加器的原理,試設計半減器和全減器,所用的元器件由自己選定。
4.18試用全加器將兩位8421BCD碼轉換為等值的二進製數。
4.19能否用一片4位並行加法器74HC283將餘3碼轉換成8421的二十進製代碼?
若可能,請畫出連線圖。
4.20使用4位超前進位加法器構成二十進製8421BCD碼表示的兩位十進製數加法器。
4.21試用若幹片74×283構成一個12位二進製加法器,畫出連接圖。此加法器能否用74×182構成超前進位的級聯方式,為什麼?
4.22試用若幹片74×182構成一個16位全超前進位產生器,畫出邏輯示意圖。
4.23確定題圖4.23所示組合邏輯電路的輸出狀態(其中犓分別為0和1)。題圖4.23190數字電子技術4.24優先編碼器CD4532的輸入端犐1=犐3=犐5=1,其餘輸入端均為0。試確定其輸出犢2犢1犢0。
4.25試用與非門設計一個四輸入的優先編碼器,要求輸入、輸出及工作標誌均為高電平有效,列出真值表,畫出邏輯圖。
4.26試用一片8線3線優先編碼器74LS148和外加門構成8421BCD碼編碼器。已知74LS148的邏輯功能如題表4.26所示,其中犐0~犐7分別代表十進製數0~7,腳標越大,優先權越高,犛犜是使能輸入端;犢2~犢0為編碼輸出端,犢犛是使能輸出端,犢犈犡是擴展輸出端。此兩端都用於擴展編碼器功能。
題表4.26犛犜犐0犐1犐2犐3犐4犐5犐6犐7犢2犢1犢0犢犈犡犢犛1××××××××11111011111111111100×××××××0000010××××××01001010×××××011010010××××0111011010×××01111100010××011111101010×011111111001001111111111014.27試用8線3線優先編碼器74148構成一個16線4線優先編碼器。
4.28某醫院有16個病房,病人通過按鈕開關向護士值班室緊急呼叫請求,護士值班室裝有相應病房的指示燈。病房的緊急呼叫請求按第一號病房的優先級別最高,第十六號緊急呼叫請求的級別最低。即當一號病房出現緊急呼叫請求時,其他病房的請求無效,依此類推,隻有第一到第十五號病房都無緊急請求時,十六號病房的請求才有效。使用74LS148集成芯片、適當的門電路芯片和指示器件設計實現此功能的邏輯電路。
4.29試用一片3線8線譯碼器74HC138和適當的邏輯門實現組合邏輯函數:犉=犃犅犆+犃犅犆+犃犅犆+犃犅犆4.30試用一片3線8線譯碼器74HC138和與非門實現如下多輸出邏輯函數:烄犉1=犃犆+犃犅犆+犃犅犆烅犉2=犅犆+犃犅犆犉3=犃犅+犃犅犆烆犉4=犃犅犆+犅犆+犃犅犆4.31試用譯碼器3線8線譯碼器74LS138和門電路設計多輸出組合邏輯電路,其輸出邏輯函數為第4章組合邏輯電路191(1)犢=犃犆+犅犆+犃犅犆(2)犢=犃犅犆(3)犢(犃,犅,犆)=∑犿(0,3,5,6,7)4.32試用3線8線譯碼器74LS138和門電路設計多輸出組合邏輯電路,其輸出邏輯函數為犢1=犃犅+犃犅犆犢2=犅+犆犢3=犃犅+犃犅4.332線4線譯碼器74×139的輸入為高電平有效,使能輸入及輸出均為低電平有效。
試用74×139構成4線16線譯碼器。
4.34一位全加器犉犃和2線4線譯碼器及與非門組成題圖4.34所示電路。分析該電路的輸出與輸入關係,要求寫出函數犉(犃,犅,犆,犇)的邏輯表達式(不用化簡),最終結果表示為題圖4.34最大項之積的形式。
4.35譯碼器的真值表如題表4.35所示。試用74HC138實現該譯碼器。
題表4.35選擇輸入譯碼輸出犇犆犅犃0123456789000001111111110001101111111100101101111111001111101111110100111101111110001111101111100111111101111010111111101110111111111101110011111111104.36用編碼器、譯碼器、七段顯示器及門電路的組合設計一個8人搶答電路。搶答者用琴鍵按鍵輸入搶答信號,琴鍵按鍵具有自鎖功能。要求電路能夠顯示搶答者的對應編碼。
4.37試用3線8線譯碼器和兩個與非門設計一位全加器的邏輯電路,輸入為加數和被加數以及低位的進位,輸出為和數以及向高位的進位。
4.38試用兩片題圖4.38所示的2線4線譯碼器和少量門電路擴展為3線8線譯碼器。再用擴展後的3線8線譯碼器和與非門設計一個真值表如題表4.38的邏輯電路。
192數字電子技術題表4.38犃犻犅犻犆犻-1犛犻犆犻0000000110010100110110010題圖4.381010111001111114.39試用4選1數據選擇器分別實現下列邏輯函數:(1)犔1=犉(犃,犅)=∑犿(0,1,3)(2)犔2=犉(犃,犅,犆)=∑犿(0,1,5,7)(3)犔3=犃犅+犅犆(4)犔4=犃犅犆+犃(犅+犆)4.40試用8選1數據選擇器74151分別實現下列邏輯函數:(1)犔1=犉(犃,犅,犆)=∑犿(0,1,4,5,7)(2)犔2=犉(犃,犅,犆,犇)=∑犿(0,3,5,8,13,15)(3)犢=犃犅+犅犆+犆犇+犃犇(4)犢(犃,犅,犆,犇)=∑犿(0,2,3,5,6,8,10,12)4.41由譯碼器74138和8選1數據選擇器74151組成如題圖4.41所示的邏輯電路。犡2犡1犡0及犣2犣1犣0為兩個3位二進製數。試分析電路的邏輯功能。
4.42試用雙4選1數據選擇器74犔犛153設計組合邏輯電路,其輸出邏輯函數為犢1(犃,犅,犆)=犿(1,4,6,7)∑題圖4.41犢2(犃,犅,犆)=∑犿(3,5,6,7)4.43用4選1數據選擇器構成的電路如題圖4.43所示。
(1)分析電路,寫出犃犅=00,01,10,11四種情況下犢的最簡表達式。
(2)將犢化為形如圖犢(犃,犅,犆,犇)=∑犿犻的標準與或形式。
第4章組合邏輯電路193題圖4.434.44已知某電路輸入信號犃,犅,犆和輸出信號犢的波形如題圖4.44所示。
(1)寫出輸出犢(犃,犅,犆)的邏輯表達式。
(2)試用如圖所示的8選1數據選擇器74151實現邏輯函數犢,畫出接線圖。
題圖4.444.45雙4選1數據選擇器和門電路構成的電路如題圖4.45(a)所示。
(1)寫出輸出函數犢1、犢2的最簡與或表達式。
(2)用3線8線譯碼器74LS138實現函數犢1,畫出接線圖。74LS138邏輯符號如題圖4.45(b)所示。
(3)采用集電極開路與非門實現函數犢2,畫出邏輯電路圖。
題圖4.45194數字電子技術4.46設計一個多功能邏輯組合電路,電路功能如題表4.46所示。其中犕1、犕0為多功能選擇信號,犃、犅為輸入邏輯變量,犉為輸出邏輯變量。試用題圖4.46所示8選1數據選擇器和門電路實現該電路,要求犃2犃1犃0=犕1犕0犃。
題表4.46犕1犕0犉00犃+犅01犃犅10犃犅11犃犅題圖4.464.47先將雙4選1多路數據選擇器74LS153和最少的門電路擴展成8選1的多路選擇器。再用該選擇器設計一個犅犆犇碼識別電路,要求當輸入信號0000≤犇犆犅犃≤1001時輸出犣=1,其他情況輸出犣=0。74LS153功能表、邏輯框圖如題表4.47和題圖4.47所示。
題表4.47犈犃1犃0犢1××0000犇0001犇1010犇2011犇3題圖4.474.48若用4位數值比較器74LS85組成十位數值比較器,需要用幾片?各片之間如何連接?
4.49試用兩個4位數值比較器組成三個數的判斷電路。要求能夠判別三個4位二進製數犃(犪3犪2犪1犪0)、犅(犫3犫2犫1犫0)、犆(犮3犮2犮1犮0)是否相等?犃是否最大?犃是否最小?並分別給出“三個數相等”“犃最大”“犃最小”的輸出信號。可以附加必要的門電路。