西安石油大學(xué)數(shù)據(jù)邏輯課件第四章 組合邏輯電路_第1頁
西安石油大學(xué)數(shù)據(jù)邏輯課件第四章 組合邏輯電路_第2頁
西安石油大學(xué)數(shù)據(jù)邏輯課件第四章 組合邏輯電路_第3頁
西安石油大學(xué)數(shù)據(jù)邏輯課件第四章 組合邏輯電路_第4頁
西安石油大學(xué)數(shù)據(jù)邏輯課件第四章 組合邏輯電路_第5頁
已閱讀5頁,還剩165頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第四章組合邏輯電路組合電路的基本分析與設(shè)計方法MSI組合邏輯器件的邏輯功能與應(yīng)用組合電路中的競爭與冒險現(xiàn)象組合電路的基本分析與設(shè)計方法常見MSI器件的邏輯功能與應(yīng)用掌握用VerilogHDL設(shè)計常用功能模塊的方法主要內(nèi)容:本章重點:第4章組合邏輯電路4.1組合邏輯電路概述4.2

組合邏輯電路分析4.3組合邏輯電路設(shè)計4.4常用組合邏輯電路4.5組合電路中的競爭與險象組合電路輸入:邏輯關(guān)系:Fi=fi(X1、X2、…、Xn)i=(1、2、…、m)特點:電路由邏輯門構(gòu)成不含記憶元件輸出無反饋到輸入的回路輸出與電路原來狀態(tài)無關(guān)輸出:X1、X2、…、XnF1、F2、…、Fm4.1組合邏輯電路概述目標(biāo):找出電路輸出與輸入間的邏輯關(guān)系,了解電路的邏輯功能。步驟:輸出函數(shù)表達式簡化函數(shù)真值表描述電路功能已知組合電路4.2組合邏輯電路的分析組合邏輯電路的分析方法

簡單組合邏輯電路的分析——舉例例1試分析右圖所示電路的邏輯功能。解:第一步:由邏輯圖可以寫輸出F的邏輯表達式為:

第二步:可變換為

F=AB+AC+BC

第三步:列出真值表如下所示。ABCF00000010010001111000101111011111真值表第四步:確定電路的邏輯功能。由真值表可知,三個變量輸入A,B,C,只有兩個及兩個以上變量取值為1時,輸出才為1??梢婋娐房蓪崿F(xiàn)多數(shù)表決邏輯功能。也可稱為三人表決器。解:根據(jù)給定邏輯圖寫出輸出和輸入之間的邏輯函數(shù)式。

根據(jù)邏輯函數(shù)式列出真值表1111&&&&&&&&&&DCBAY2Y1Y0例2.分析圖示電路的邏輯功能,指出該電路的用途。輸入輸出DCBAY2Y1Y00000001000100100100010011001010000101010010110010011101010000101001010101001010111001100100110110011101001111100功能描述

該電路當(dāng)DCBA表示的輸入二進制數(shù)小于或等于5時Y0為1,當(dāng)輸入二進制數(shù)在6和10之間時Y1等于1,當(dāng)輸入二進制數(shù)大于或等于11時Y2等于1。

該邏輯電路是輸入4位二進制數(shù)判別電路。組合電路的分析方法例3分析下圖所示電路的邏輯功能。

解:為了方便寫表達式,在圖中標(biāo)注每一級電路的輸出,比如F1、F2和F3。S從某一輸入信號發(fā)生變化到引起輸出也發(fā)生變化所經(jīng)歷的邏輯門的最大數(shù)目。真值表該電路實現(xiàn)兩個一位二進制數(shù)相加的功能。S是它們的和,C是向高位的進位。由于這一加法器電路沒有考慮低位的進位,所以稱該電路為半加器。根據(jù)S和C的表達式,將原電路圖改畫成左圖所示的邏輯圖。例2等價邏輯圖例4分析下圖所示電路的邏輯功能。解:寫出邏輯表達式第二步:列出真值表Sn

Cn0000000110010100110110010101011100111111An

Bn

Cn-1第三步:分析邏輯功能Sn:An+Bn+Cn-1的和;Cn:An+Bn+Cn-1產(chǎn)生的進位。全加器:一位二進制數(shù)一位二進制數(shù)低位來的進位相加和高位進位作為常用電路,市場上有集成電路芯片(MSI)出售,用如下的邏輯符號表示。組合邏輯電路的分析方法——小結(jié)目標(biāo):獲取給定電路的邏輯功能主要步驟:

(1)由邏輯圖寫表達式;

(2)化簡表達式;

(3)列真值表;

(4)描述邏輯功能。思考:在真值表、邏輯表達式和邏輯電路中,哪個可唯一描述電路?4.3組合邏輯電路設(shè)計采用中小規(guī)模集成電路

1.SSI2.MSI采用VerilogHDL門電路數(shù)量最少芯片數(shù)量最少方法:結(jié)構(gòu)描述,行為描述要求:占用系統(tǒng)資源少,速度快任務(wù):用最簡單的電路實現(xiàn)要求的邏輯功能。1.采用SSI集成器件的組合邏輯電路設(shè)計步驟邏輯功能要求真值表邏輯函數(shù)表達式簡化表達式變換邏輯圖設(shè)輸入輸出變量,并進行邏輯賦值例1.在舉重比賽中,有兩名副裁判,一名主裁判。當(dāng)兩名以上裁判(必須包括主裁判在內(nèi))認為運動員上舉杠鈴合格,按動電鈕,裁決合格信號燈亮,設(shè)計該電路。1.采用SSI實現(xiàn)①邏輯抽象,確定輸入輸出變量和邏輯含義分析過程:輸入變量有3個分別代表3個裁判,設(shè)主裁判為變量A,副裁判分別為B和C,若同意則按下電鈕用1表示,不按電鈕用0表示。輸出變量1個,用來表示合格信號燈,記作Y。燈亮為1,表示合格,否則為0。②根據(jù)邏輯要求列出真值表真值表ABCY00000010010001101000101111011111③由真值表寫出表達式④化簡

Y=AB+AC⑤畫出邏輯電路圖邏輯函數(shù)的化簡和變換的形式取決于所采用的器件,還可以采用與非門、或非門、與或非門實現(xiàn)例1的邏輯功能。采用與非門采用或非門采用與或非門2.使用VerilogHDL(1).結(jié)構(gòu)描述用門級結(jié)構(gòu)(與門和或門)實現(xiàn)例

1modulesamp4_3_1(A,B,C,Y);inputA,B,C;outputY;and#10ad1(t1,A,B),ad2(t2,A,C);6or#10o1(Y,t1,t2);7endmodule(2)行為描述if語句modulesamp4_3_3(A,B,C,Y);inputA,B,C;outputY;regY;always@(AorBorC)

if(A&B|A&C|A&B&C)Y=1;elseY=0;endmodule

case語句modulesamp4_3_4(A,B,C,Y);inputA,B,C;outputY;regY;always@(AorBorC)case({A,B,C}) 3'B011:Y=1; 3'B101:Y=1; 3'B110:Y=1; 3'B111:Y=1;

default:Y=0;

endcase

endmodule注意:

1.在使用if和case語句實現(xiàn)組合邏輯電路時,要注意對所有可能出現(xiàn)狀態(tài)都要進行判斷,如果在條件判斷中只出現(xiàn)了對部分狀態(tài)的處理,則一定要使用else或default語句實現(xiàn)對其余的狀態(tài)進行處理,否則在綜合后電路中會出現(xiàn)時序電路中的鎖存器電路。

2.組合邏輯在過程中用阻塞賦值運算符“=”例2.設(shè)計一個可以實現(xiàn)4位格雷碼和4位二進制編碼的相互轉(zhuǎn)換電路,有一個控制端S,當(dāng)S=1時,可以將輸入的4位格雷碼轉(zhuǎn)換成4位二進制編碼,當(dāng)S=0時實現(xiàn)將輸入的4位二進制編碼轉(zhuǎn)換成4位格雷碼。DecBinGrayB3B2B1B0G3G2G1G0000000000100010001200100011300110010401000110501010111601100101701110100DecBinGrayB3B2B1B0G3G2G1G0810001100910011101101010111111101111101211001010131101101114111010011511111000例2的解:格雷碼轉(zhuǎn)換到二進制碼的卡諾圖G3=B3,G2~G0轉(zhuǎn)換到B2~B0的轉(zhuǎn)換關(guān)系如上面卡諾圖所示1.使用SSI實現(xiàn)G3=B3,B2~B0轉(zhuǎn)換到G2~G0的轉(zhuǎn)換關(guān)系如上面卡諾圖所示例2的解:二進制碼轉(zhuǎn)換到格雷碼的卡諾圖以S作為選擇端,S=0,G→B;S=1,B→GS=0S=1例2的解:結(jié)果合成后的Y1和Y22.使用Verilog結(jié)構(gòu)描述實現(xiàn)modulesamp4_3_5(B,S,G);input[3:0]B;inputS;output[3:0]G;assignG[3]=B[3];u_gate1u1(.A(G[2]),.B(S),.C(S),.D(B[2]),.Y(t1)),u2(.Y(t2),.A(G[1]),.B(S),.C(S),.D(B[1]));xorxr1(G[2],B[3],B[2]),xr2(G[1],t1,B[1]),xr3(G[0],t2,B[0]);endmodule

moduleu_gate1(A,B,C,D,Y);//自定義復(fù)合門inputA,B,C,D;outputY;notu1(w1,C);andad1(n1,A,B),ad2(n2,w1,D);oro1(Y,n1,n2);endmodule

moduleu_gate2(A,B,C,D,Y);inputA,B,C,D;outputY;assignY=A&B|(~C)&D;endmodule

3.使用Verilog行為描述實現(xiàn)

modulesamp4_3_6(B,S,G);input[3:0]B;inputS;outputreg[3:0]G;always@(SorB)if(S)begin//實現(xiàn)格雷碼到二進制碼的轉(zhuǎn)換

case(B)4'b0000:G=4'b0000; 4'b0001:G=4'b0001;4'b0011:G=4'b0010; 4'b0010:G=4'b0011; 4'b0110:G=4'b0100; 4'b0111:G=4'b0101; 4'b0101:G=4'b0110; 4'b0100:G=4'b0111; 4'b1100:G=4'b1000; 4'b1101:G=4'b1001; 4'b1111:G=4'b1010; 4'b1110:G=4'b1011; 4'b1010:G=4'b1100; 4'b1011:G=4'b1101; 4'b1001:G=4'b1110; 4'b1000:G=4'b1111;

endcaseendelse//實現(xiàn)二進制碼到格雷碼的轉(zhuǎn)換

begin

case(B)4'b0000:G=4'b0000; 4'b0001:G=4'b0001;4'b0010:G=4'b0011; 4'b0011:G=4'b0010; 4'b0100:G=4'b0110; 4'b0101:G=4'b0111; 4'b0110:G=4'b0101; 4'b0111:G=4'b0100; 4'b1000:G=4'b1100; 4'b1001:G=4'b1101; 4'b1010:G=4'b1111; 4'b1011:G=4'b1110; 4'b1100:G=4'b1010; 4'b1101:G=4'b1011; 4'b1110:G=4'b1001; 4'b1111:G=4'b1000;

endcaseendendmodule3.使用Verilog行為描述實現(xiàn)

modulesamp4_3_6(B,S,G);input[3:0]B;inputS;outputreg[3:0]G;always@(SorB)if(S)begin//實現(xiàn)格雷碼到二進制碼的轉(zhuǎn)換

case(B)4'b0000:G=4'b0000; 4'b0001:G=4'b0001;4'b0011:G=4'b0010; 4'b0010:G=4'b0011; 4'b0110:G=4'b0100; 4'b0111:G=4'b0101; 4'b0101:G=4'b0110; 4'b0100:G=4'b0111; 4'b1100:G=4'b1000; 4'b1101:G=4'b1001; 4'b1111:G=4'b1010; 4'b1110:G=4'b1011; 4'b1010:G=4'b1100; 4'b1011:G=4'b1101; 4'b1001:G=4'b1110; 4'b1000:G=4'b1111;

endcaseendelse//實現(xiàn)二進制碼到格雷碼的轉(zhuǎn)換

begin

case(B)4'b0000:G=4'b0000; 4'b0001:G=4'b0001;4'b0010:G=4'b0011; 4'b0011:G=4'b0010; 4'b0100:G=4'b0110; 4'b0101:G=4'b0111; 4'b0110:G=4'b0101; 4'b0111:G=4'b0100; 4'b1000:G=4'b1100; 4'b1001:G=4'b1101; 4'b1010:G=4'b1111; 4'b1011:G=4'b1110; 4'b1100:G=4'b1010; 4'b1101:G=4'b1011; 4'b1110:G=4'b1001; 4'b1111:G=4'b1000;

endcaseendendmodule例3:設(shè)計一個輸血—受血判別電路,當(dāng)輸血者和受血者的血型符合下列規(guī)則是,配型成功,受血者可接受輸血者提供的血液。(1)A型血可以輸給A型或AB型血的人(2)B型血可以輸給B型或AB型血的人(3)AB型血只能輸給AB型血的人(4)O型血可以輸給所有型血的人例4:某建筑走廊有三個出入口,分別位于走廊的兩頭和中間,每個出入口都有一個開關(guān)控制走量照明燈。設(shè)計一個邏輯電路實現(xiàn)對照明燈的控制。4.4常用組合邏輯(MSI)電路全加器編碼器譯碼器數(shù)據(jù)選擇器和分配器數(shù)值比較器奇偶產(chǎn)生/校驗電路4.4.1全加器1.1位全加器F

CO0000000110010100110110010101011100111111A

B

CI邏輯功能:邏輯符號:優(yōu)點:電路簡單缺點:速度慢應(yīng)用舉例:用4片1位全加器實現(xiàn)4位二進制數(shù)的加法。2.4位超前進位加法器進位直接由加數(shù)、被加數(shù)和最低位進位位CI0形成。2.4位超前進位加法器

邏輯符號:邏輯功能:

CO∑3∑2∑1∑0=P3P2P1P0+Q3Q2Q1Q0+CI常用器件:

CT54/74LS283掌握4位全加器的外部邏輯功能。學(xué)習(xí)要求:應(yīng)用舉例:例1:分析下圖所示電路,寫出在不同輸入情況下電路的輸出。

例2:分析下圖所示電路,列出真值表,說明電路的邏輯功能。輸入輸出DCBAY3Y2Y1Y000000011000101000010010100110110…………10011100邏輯功能:8421BCD碼轉(zhuǎn)為余3碼例3.試用一位全加器實現(xiàn)兩位二進制乘法器。

解:設(shè)有兩個二位二進制數(shù)分別為A=A1A0,B=B1B0,P是其乘法運算結(jié)果,則有:P=A×B=A1A0×B1B0,A1A0×B1B0A1B0A0B0+A1B1A0B1P3P2P1P0P0=A0B0P1=A1B0加A0B1P2=A1B1加C1P3=C2電路圖

對涉及二進制加法的組合邏輯函數(shù),可以用4位超前進位加法器簡化電路設(shè)計。

例4:設(shè)計電路將余3碼轉(zhuǎn)化為8421BCD碼。解:余3碼(Y3Y2Y1Y0)=8421BCD碼(DCBA)-0011=DCBA+11011101

2.加法器的Verilog設(shè)計與仿真//調(diào)用1位全加器的頂層模塊modulesamp4_4_1(A,B,C0,S,C1);inputA,B,C0;outputS,C1;adder_fullu1(.ia(A),.ib(B),.ic(C0),.os(S),.oc(C1));endmodule//1位全加器模塊moduleadder_full(ia,ib,ic,os,oc);inputia,ib,ic;outputos,oc;assign{oc,os}=ia+ib+ic;endmodule(1)一位加法器1位加法器仿真結(jié)果2.加法器的Verilog設(shè)計與仿真

//調(diào)用4位加法器的頂層模塊modulesamp4_4_2(A,B,S,C);input[3:0]A,B;output[3:0]S;outputC;adder_4u1(.ia(A),.ib(B),.os(S),.oc(C));endmodule//4位全加器模塊moduleadder_4(ia,ib,os,oc);input[3:0]ia,ib;output[3:0]os;outputoc;assign{oc,os}=ia+ib;endmodule(2)4位加法器4位加法器仿真結(jié)果生活中常用十進制數(shù)及文字、符號等表示事物。4.4.2編碼器數(shù)字電路只能以二進制信號工作。編碼器

譯碼器

1.基本概念編碼:用二進制代碼表示文字、符號或者數(shù)碼等特定對象的過程。例:用7位二進制代碼表示常用符號的ASCII碼。

例:用4位二進制數(shù)表示十進制數(shù)的8421BCD碼。輸入輸出關(guān)系:輸入M個信號,輸出N個信號,要求2N≥M。當(dāng)Mi有效時,輸出的N位信號就是Mi的編碼。通常稱為M線-N線編碼器。編碼器:實現(xiàn)編碼的邏輯電路。

例:普通的8線-3線編碼器。輸入:八個信號(對象)I0~I7

(二值量)八個病房呼叫請求輸出:三位二進制代碼Y2Y1Y0對病房編碼

I0

I1I2

I3I4

I5

I6

I7Y2Y1Y00111111100010111111001110111110101110111101111110111100111110111011111110111011111110111普通8線-3線編碼器輸入輸出的對應(yīng)關(guān)系任何時刻只允許輸入一個編碼請求其它輸入取值組合不允許出現(xiàn),為無關(guān)項。2.優(yōu)先編碼器在優(yōu)先編碼器中,允許同時輸入兩個以上的有效編碼請求信號。當(dāng)幾個輸入信號同時出現(xiàn)時,只對其中優(yōu)先權(quán)最高的一個進行編碼。

優(yōu)先級別的高低由設(shè)計者根據(jù)輸入信號的輕重緩急情況而定。如根據(jù)病情而設(shè)定優(yōu)先權(quán)?!?&≥1&&&&≥1&&&&≥1&&&&...............11.11.11.11.1111................YS(15)YEX(14)Y0(9)Y1(7)Y2(6)(5)ST(4)IN7(3)IN6(2)IN5(1)IN4(13)IN3(12)IN2(11)IN1(10)IN0圖4-1-8

優(yōu)先編碼器邏輯圖返回若不考慮附加電路ST、YS、YEX,則電路輸出方程為:輸入輸出STIN0IN1IN2IN3IN4IN5IN6IN7Y2Y1Y0YEXYS1××××××××11111011111111111100×××××××0000010××××××01001010×××××011010010××××0111011010×××01111100010××011111101010×011111111001001111111111011-高電平,0-低電平,×-任意,輸入低電平有效。表4-1-38線-3線優(yōu)先編碼器真值表選通輸入端,低電平有效。選通輸出端,高電平有效。擴展端,低電平有效。74LS148的邏輯符號

學(xué)習(xí)要求:不要求背74LS148的功能表。初步具備查閱器件手冊的能力,通過MSI器件邏輯功能表了解集成器件功能,掌握MSI器件的使用方法。注意使能端的作用,它在實際使用中起重要作用。IN0IN1IN2IN3IN4IN5IN6IN7ST0/Z101/Z112/Z123/Z134/Z145/Z156/Z167/Z171011121314151617HPRI/BIN1aENaY0Y1Y22a4aaYEXYS18≥1圖4-1-98線-3線優(yōu)先編碼器CT54148/CT74148邏輯符號01234567ENHPRI/BIN低位片STYSY0Y1Y2YEX01234567ENHPRI/BIN高位片STYSY0Y1Y2YEX&&&Y0Y1Y2Y3&YEX0123456789101112131415圖4-1-10

8線-3線擴展為16線-4線優(yōu)先編碼器

3.編碼器的功能擴展用兩片8線-3線優(yōu)先編碼器擴展成為16線-4線優(yōu)先編碼器。若高位片的輸入中有低電平,則由于對應(yīng)的YS=1,使得低位片輸出被封鎖,結(jié)果取決于高位片的輸出。反之則取決于低位片的輸出。3.編碼器的Verilog設(shè)計與仿真//基本功能編碼器模塊定義moduleencoder1(iIN_N,oY_N);input[7:0]iIN_N;outputreg[2:0]oY_N;always@(iIN_N)

case(iIN_N)8'b01111111:oY_N=3'b000; 8'b10111111:oY_N=3'b001; 8'b11011111:oY_N=3'b010; 8'b11101111:oY_N=3'b011; 8'b11110111:oY_N=3'b100; 8'b11111011:oY_N=3'b101; 8'b11111101:oY_N=3'b110; 8'b11111110:oY_N=3'b111; default:oY_N=3'bxxx;

endcaseendmodule74LS148優(yōu)先編碼器模塊moduleencoder_74148(iST_N,iIN_N,oY_N,oYEX_N,oYS);inputiST_N;input[7:0]iIN_N;outputreg[2:0]oY_N;outputreg

oYEX_N,oYS;always@(iST_N,iIN_N)if(!iST_N)begin

oYEX_N=0;

oYS=1;if(iIN_N[7]==0)

oY_N=3'h0;elseif(iIN_N[6]==0)

oY_N=3'h1;elseif(iIN_N[5]==0)

oY_N=3'h2;elseif(iIN_N[4]==0)

oY_N=3'h3;elseif(iIN_N[3]==0)

oY_N=3'h4;elseif(iIN_N[2]==0)

oY_N=3'h5;elseif(iIN_N[1]==0)

oY_N=3'h6;elseif(iIN_N[0]==0)

oY_N=3'h7;else begin

oY_N=3'h7;

oYEX_N=1;

oYS=0; endendelsebegin

oY_N=3'h7;

oYEX_N=1;

oYS=1;endendmodule74LS148功能仿真

譯碼:編碼的逆過程,將編碼時賦予代碼的特定含義“翻譯”出來。

譯碼器:實現(xiàn)譯碼功能的電路。常用的譯碼器有二進制譯碼器、二-十進制譯碼器和顯示譯碼器等。二進制代碼原來信息編碼對象編碼譯碼4.4.3

譯碼器1二進制譯碼器

輸入:二進制代碼(N位)輸出:2N個。方框圖:若輸入3位二進制代碼、有8種狀態(tài),則有8個輸出端,分別對應(yīng)其中一種輸入狀態(tài)。因此,又把3位二進制譯碼器稱為3線—8線譯碼器。簡稱3-8譯碼器。同理:2-4譯碼器

4-16譯碼器BIN/OCT二進制譯碼器的輸出當(dāng)譯碼器處于工作狀態(tài)時,每輸入一組二進制代碼將唯一使對應(yīng)的一個輸出端為有效(低)電平,而其它輸出端均為無效(高)電平。當(dāng)某一輸出端有效時也被稱為“譯中”。譯碼器輸入端也被稱為地址輸入。譯碼輸入譯碼輸出

A1A0Y0Y1Y20001110110111011011111102位二進制譯碼器輸出表達式:(1)3-8譯碼器74LS138內(nèi)部電路圖譯碼輸入端

S為控制端(又稱使能端)

S=1譯碼工作

S=0禁止譯碼,輸出全1

74LS138的功能表譯中為0高電平有效低電平有效禁止譯碼譯碼工作74LS138的邏輯符號低電平有效輸出地址輸入使能端74LS138的邏輯功能小結(jié):三個譯碼輸入端(又稱地址輸入端)A2、A1、A0,八個譯碼輸出端,以及三個控制端(又稱使能端)、、。、,是譯碼器的控制輸入端,當(dāng)=1、+=0(即=1,和均為0)時,S輸出為高電平,譯碼器處于工作狀態(tài)。否則,譯碼器被禁止,所有的輸出端被封鎖在高電平。S1S2S1S2S3S1S2S3S1S3S2Y0~Y7S3

74LS138輸出端被“譯中”時為低電平,所以其邏輯符號中每個輸出端上方均有“—”符號。Y0~Y7

當(dāng)74LS138譯碼器正常工作時,即S=1時:

(2)應(yīng)用舉例①芯片的級聯(lián)

例1:用兩片74LS138譯碼器構(gòu)成4線—16線譯碼器A3=0時,片Ⅰ工作,片Ⅱ禁止

A3=1時,片Ⅰ禁止,片Ⅱ工作擴展位控制使能端②用二進制譯碼器實現(xiàn)組合邏輯函數(shù)以74LS138為例

比較以上兩式可知,當(dāng)3線—8線譯碼器工作時(S=1),把74LS138地址輸入端(A2A1A0)作為邏輯函數(shù)的輸入變量(ABC),譯碼器的每個輸出端Yi都與某一個最小項mi相對應(yīng),加上適當(dāng)?shù)拈T電路,就可以利用譯碼器實現(xiàn)組合邏輯函數(shù)。例1試用74LS138譯碼器實現(xiàn)邏輯函數(shù):解:因為則

因此,正確連接控制輸入端使譯碼器處于工作狀態(tài),將、、、、經(jīng)一個與非門輸出,A2、A1、A0分別作為輸入變量A、B、C,就可實現(xiàn)組合邏輯函數(shù)。Y1Y3Y6Y5Y7

注意變量輸入與譯碼器地址的對應(yīng)關(guān)系。例2用74LS138譯碼器實現(xiàn)多輸出邏輯函數(shù)解:邏輯電路圖可以用譯碼器方便地實現(xiàn)多輸出組合邏輯函數(shù)。例3.分析下圖所示電路,寫出輸出函數(shù)F的邏輯表達式解:使能端允許,3-8譯碼器正常工作。此時,注意:譯碼器輸出最小項編號順序是A2、A1、A0moduledecoder(iSTA,iSTB_N,iSTC_N,iA,oY_N);inputiSTA,iSTB_N,iSTC_N;input[2:0]iA;output[7:0]oY_N;reg[7:0]m_y;assignoY_N=m_y;always@(iSTA,iSTB_N,iSTC_N,iA)if(iSTA&&!(iSTB_N||iSTC_N))

case(iA)3'b000:m_y=8'b11111110;3'b001:m_y=8'b11111101;3'b010:m_y=8'b11111011;3'b011:m_y=8'b11110111;3'b100:m_y=8'b11101111; 3'b101:m_y=8'b11011111;3'b110:m_y=8'b10111111;3'b111:m_y=8'b01111111;

endcaseelse

m_y=8'hff;endmodule3-8譯碼器模塊3-8譯碼器模塊功能仿真結(jié)果2二-十進制譯碼器

二—十進制譯碼器的邏輯功能是將輸入的BCD碼譯成十個輸出信號。二—十進制譯碼器74LS42的邏輯符號二-十進制譯碼器74LS42的功能表譯中為0拒絕偽碼應(yīng)用舉例:

用4片二-十進制譯碼器及一片2-4譯碼器構(gòu)成5-32譯碼器3顯示譯碼器在數(shù)字測量儀表和各種數(shù)字系統(tǒng)中,都需要將數(shù)字量直觀地顯示出來,一方面供人們直接讀取測量和運算的結(jié)果,另一方面用于監(jiān)視數(shù)字系統(tǒng)的工作情況。數(shù)字顯示電路是數(shù)字設(shè)備不可缺少的部分。數(shù)字顯示電路通常由顯示譯碼器、驅(qū)動器和顯示器等部分組成。

數(shù)字顯示電路的組成方框圖(1)數(shù)字顯示器件數(shù)字顯示器件是用來顯示數(shù)字、文字或者符號的器件,常見的有輝光數(shù)碼管、熒光數(shù)碼管、液晶顯示器、發(fā)光二極管數(shù)碼管、場致發(fā)光數(shù)字板、等離子體顯示板等等。主要討論發(fā)光二極管數(shù)碼管。

a.發(fā)光二極管(LED)及其驅(qū)動方式

LED具有許多優(yōu)點,它不僅有工作電壓低(1.5~3V)、體積小、壽命長、可靠性高等優(yōu)點,而且響應(yīng)速度快(≤100ns)、亮度比較高。一般LED的工作電流選在5~10mA,但不允許超過最大值(通常為50mA)。

LED可以直接由門電路驅(qū)動。

圖(a)是輸出為低電平時,LED發(fā)光,稱為低電平驅(qū)動;圖(b)是輸出為高電平時,LED發(fā)光,稱為高電平驅(qū)動;采用高電平驅(qū)動方式的TTL門最好選用OC門。

門電路驅(qū)動LED(a)低電平驅(qū)動(b)高電平驅(qū)動R為限流電阻七段顯示LED數(shù)碼管(a)外形圖(b)共陰型(c)共陽型

b.七段LED數(shù)碼管

LED數(shù)碼管又稱為半導(dǎo)體數(shù)碼管,它是由多個LED按分段式封裝制成的。LED數(shù)碼管有兩種形式:共陰型和共陽型。公共陰極公共陽極高電平驅(qū)動低電平驅(qū)動(2)七段顯示譯碼器

a.七段字形顯示方式

LED數(shù)碼管通常采用七段字形顯示方式來表示0-9十個數(shù)字。BIN/7.SEG七段顯示譯碼器的邏輯符號

b.七段顯示譯碼器

滅燈控制端8421BCD碼七段代碼

七段顯示器譯碼器把輸入的BCD碼,翻譯成驅(qū)動七段LED數(shù)碼管各對應(yīng)段所需的電平。常見七段顯示譯碼器有74LS48、74LS49等。數(shù)字顯示譯碼器7448簡化符號A3~A0:8421BCD輸入端Ya~Yg:七段輸出端LT:燈光測試輸入端RBI:串行滅零輸入端BI/RBO:熄滅輸入/串行滅零輸出端十進制或功能輸入BIRBO輸出字形LTRBIA3A2A1A0YaYbYcYdYeYfYg012345678910111213141511111111111111111×××××××××××××××000000010010001101000101011001111000100110101011110011011110111111111111111111111111110011000011011011

1110010110011101101100111111110000111111111100110001101001100101000111001011000111100000000123456789消隱脈沖消隱燈測試×10×0×××××0000××××0010000000000000011111118滅0輸入8421BCD碼滅0輸出消隱輸入74LS48功能表圖4.2.17用7448驅(qū)動BS201A的連接方法1KΩ×7

例:一個數(shù)碼譯碼顯示系統(tǒng)具有共陰共陽輸出可選控制的七段譯碼模塊

modulesamp4_4_7(flag,A,Y);inputflag;input[3:0]A;outputreg[6:0]Y;seg_decoderu1(.iflag(flag),.iA(A),.oY(Y));endmodulemoduleseg_decoder(iflag,iA,oY);//七段譯碼模塊定義inputiflag;//共陰、共陽輸出控制端,input[3:0]iA;//四位二進制輸入outputreg[6:0]oY;always@(iflag,iA)begin

case(iA)4'b0000:oY=7'h3f;//iflag=1共陰極輸出

4'b0001:oY=7'h06;4'b0010:oY=7'h5b;4'b0011:oY=7'h4f;4'b0100:oY=7'h66;4'b0101:oY=7'h6d;4'b0110:oY=7'h7d;4'b0111:oY=7'h27;4'b1000:oY=7'h7f;4'b1001:oY=7'h6f;4'b1010:oY=7'h77;4'b1011:oY=7'h7c;4'b1100:oY=7'h58;4'b1101:oY=7'h5e;4'b1110:oY=7'h79;4'b1111:oY=7'h71;

endcase

if(!iflag)

oY=~oY;//iflag=1共陽極輸出endendmodule七段譯碼模塊功能仿真圖作業(yè)4-104-13補充作業(yè)

試用一片3-8譯碼器74LS138接成一位全加器電路,可以附加必要的門電路。在多路數(shù)據(jù)傳送過程中,能夠根據(jù)需要將其中任意一路挑選出來的電路,叫做數(shù)據(jù)選擇器,也稱為多路選擇器,其作用相當(dāng)于多路開關(guān)。輸入數(shù)據(jù)輸出數(shù)據(jù)選擇控制信號A0Y4選1數(shù)據(jù)選擇器D0D3D1D2A100011011D0D1D2D3常見的數(shù)據(jù)選擇器有四選一、八選一、十六選一電路。數(shù)據(jù)選擇器:4.4.4數(shù)據(jù)選擇器和數(shù)據(jù)分配器以四選一數(shù)據(jù)選擇器為例。

(1)四選一數(shù)據(jù)選擇器的邏輯電路圖四選一數(shù)據(jù)選擇器電路1數(shù)據(jù)選擇器的工作原理地址輸入端控制輸入端數(shù)據(jù)輸入端輸出端≥1Y&A11A01D3D2D1D0Y=A1A0D0

+A1A0D1+A1A0D2

+A1A0D3S四選一數(shù)據(jù)選擇器的功能表輸入輸出S

A1

A0Y0××0100D0101D1110D2111D3不同型號的數(shù)據(jù)選擇器可能在輸入輸出標(biāo)記、控制端的有效電平等方面不同,但其基本功能是相同的。A1A0四選一D3D2D1D0SY2雙四選一數(shù)據(jù)選擇器——74LS153簡易符號74LS153的邏輯符號3八選一數(shù)據(jù)選擇器——74LS151三個地址輸入端A2、A1、A0,八個數(shù)據(jù)輸入端D0~D7,兩個互補輸出的數(shù)據(jù)輸出端Y和Y,一個控制輸入端S。74LS151的邏輯符號

74LS151的功能表

禁止?fàn)顟B(tài)工作狀態(tài)使能端地址輸入互補輸出例1試用一片雙四選一數(shù)據(jù)選擇器74LS153組成一個八選一數(shù)據(jù)選擇器。解:連接線路如圖1A2≥1Y當(dāng)A2=0時,(1)部分電路工作,可在D0~D3中選擇某個數(shù)據(jù);(1)(2)A1A0D7D6D5D4D3D2D1D074LS153D22D20D12D10D23D21S2D13D11S1Y2Y1A1A0可在D4~D7中選擇某個數(shù)據(jù)。當(dāng)A2=1時,(2)部分電路工作,4應(yīng)用舉例(1)數(shù)據(jù)選擇器的級聯(lián)用74LS151構(gòu)成十六選一數(shù)據(jù)選擇器

擴展位接控制端A3=1時,片Ⅰ禁止,片Ⅱ工作A3=0時,片Ⅰ工作,片Ⅱ禁止輸出需適當(dāng)處理(該例接或門)

例2:用兩片八選一數(shù)據(jù)選擇器74LS151,構(gòu)成十六選一數(shù)據(jù)選擇器。例3:用4片8選1MUX和1片2-4譯碼器構(gòu)成32選1MUX例3:用4片8選1MUX和1片4選1構(gòu)成32選1MUX比較可知,表達式中都有最小項mi,利用數(shù)據(jù)選擇器可以實現(xiàn)各種組合邏輯函數(shù)。組合邏輯函數(shù)8選14選12.用數(shù)據(jù)選擇器實現(xiàn)組合邏輯函數(shù)解:3個變量,選用8選1數(shù)據(jù)選擇器。②設(shè)A2=A、A1=B、A0=C例1:①選用8選1數(shù)據(jù)選擇器74LS151③求Di8選1數(shù)據(jù)選擇器輸出信號的表達式:比較L和Y,得:ABC00

010

1

1

1

Y

D0D1D2D3D4D5D6D774LS151GA2A1A0④畫連線圖L用真值表法求Di注意變量高低位順序!

例2

試用八選一MUX實現(xiàn)分析:可將邏輯表達式改寫為(1)

D0=D3=D5=D7=1D1=D2=D4=D6=0解:根據(jù)八選一數(shù)據(jù)選擇器的功能(2)將A、B、C分別從A2、A1、A0輸入,作為輸入變量(4)把Y端作為輸出F。(3)S=0ABCF00010010010001111000101111001111真值表對照法注意變量高低位順序!

例3試用八選一MUX實現(xiàn)三人表決器。ABCF00000010010001111000101111011111

解:假設(shè)三變量為A、B、C,表決結(jié)果為F,則真值表如下表所示。在八選一電路中,將A、B、C從A2、A1、A0

輸入,令D3=D5=D6=D7=1D0=D1=D2=D4=0S=0F=Y(jié)則可實現(xiàn)三變量多數(shù)表決電路。則

思考:

2N選1的MUX可實現(xiàn)幾變量邏輯函數(shù)?

問題:若用8選1實現(xiàn)4變量的函數(shù),或者用4選1實現(xiàn)3變量的函數(shù),即地址輸入端的個數(shù)比變量個數(shù)少,如何實現(xiàn)?例4:用8選1MUX實現(xiàn)4變量邏輯函數(shù)F(A,B,C,D)=∑m(1,5,6,7,9,11,12,13,14)

方法1:擴展

將A3、A2、A1、A0分別接輸入A、B、C、D,D1=D5=D6=D7=D9=D11=D12=D13=D14=1D0=D2=D3=D4=D8=D10=D15=0F=Y(jié)ABCD0100011101011110F方法2:降維圖法

卡諾圖中,每個小方格內(nèi)都是最小項的值:0、1或任意值×??ㄖZ圖的變量數(shù)稱為卡諾圖的維數(shù)。

通過將某些變量作為卡諾圖的值,而減少卡諾圖的維數(shù),這一過程稱為降維。形成的卡諾圖稱為降維卡諾圖;被作為值的變量稱為記圖變量。降維DD降維的方法:

ABC為000時,D=0,F(xiàn)=0;D=1,F(xiàn)=0。

ABC為011時,D=0,F(xiàn)=1;D=1,F(xiàn)=1。ABC為110時,D=0,F(xiàn)=0;D=1,F(xiàn)=1。ABC為100時,D=0,F(xiàn)=1;D=1,F(xiàn)=0。DD

如果將X作為記圖變量,若x=0時,原圖單元值為F;x=1時,原圖單元值為G。則新的降維圖中對應(yīng)單元的值就應(yīng)填入子函數(shù)降維降維AB000111100C例4:用8選1MUX實現(xiàn)4變量邏輯函數(shù)

F(A,B,C,D)=∑m(1,5,6,7,9,11,12,13,14)

解:令D0=D2=D4=D5=DD1=0D3=D6=1D7=D降維

例5:現(xiàn)有A,B,C三臺設(shè)備,其功率均為10KW,由Y1,Y2,兩臺發(fā)電機組供電,已知Y1功率為10KW,Y2功率為20KW。從節(jié)約電能方面考慮,試根據(jù)投入運行的設(shè)備數(shù),設(shè)計一個控制電路以決定發(fā)電機組的啟停。解:輸入變量:A、B、C,1表示運行,0表示不運行;輸出變量:Y1,Y2,1表示啟動,0表示停止。

4選1、8選1、16選1MUX只有一個輸出端,只能實現(xiàn)一個輸出的邏輯函數(shù)。

問題:如果是多輸出的邏輯函數(shù),如何實現(xiàn)?ABCY1Y20000000110010100110110010101011100111111真值表CCCC01降維降維對三變量函數(shù)進行降維:可以考慮用雙4選1的MUX實現(xiàn)。雙4選1MUX的地址輸入端公用,能夠同時產(chǎn)生兩個輸出。將A、B從A1、A0

輸入,令1D0

=1D3=C1D1=1D2=2D1

=2D2=C2D0

=02D3=11ST=2ST=0

則:輸出1=Y(jié)1

輸出2=Y2例4邏輯電路圖

例4-8

用8選1數(shù)據(jù)選擇器實現(xiàn)邏輯函數(shù)

F(A,B,C,D,E)=∑m(0,1,3,9,11,12,13,14,20,21,22,23,26,31)圖4-2-21

例4-8的降維圖解作函數(shù)的卡諾圖和降維卡諾圖。(a)卡諾圖10000010000111100001CDAB01010101111011001100000111100001CDAB001101011110E=0E=11E00EE0AB0001111000011110CD0E10101(b)4變量降維圖E00DE10001111001ABC(c)3變量降維圖AB0101(d)2變量降維圖C01234567G07MUXYENCBAF1D&圖4-2-22

用8選1MUX實現(xiàn)例4-8&&&E添加必要的邏輯門,構(gòu)成邏輯電路。A0A1A2ST0123G03MUXYENDCST0123G03MUXYENST0123G03MUXYENSTE0123G03MUXYENSTBAF圖4-2-23

4選1MUX實現(xiàn)例4-8函數(shù)采用4選1數(shù)據(jù)選擇器的實現(xiàn)方法。11A0A1A0A1A0A1A0A1四選一數(shù)據(jù)選擇器模塊定義modulemux4(iD,iS,oQ);input[3:0]iD;//數(shù)據(jù)輸入信號input[1:0]iS;//數(shù)據(jù)選擇控制信號outputreg

oQ;//輸出信號always@(iD,iS)

case(iS)2'b00:oQ=iD[0]; 2'b01:oQ=iD[1]; 2'b10:oQ=iD[2]; 2'b11:oQ=iD[3];

endcaseendmodule2.數(shù)據(jù)分配器在數(shù)據(jù)傳送中,有時需要將某一路數(shù)據(jù)分配到不同的數(shù)據(jù)通道上,實現(xiàn)這種功能的電路稱為數(shù)據(jù)分配器,也稱多路分配器。市場上并沒有專用的數(shù)據(jù)分配器器件,實際使用中,通常用譯碼器來實現(xiàn)數(shù)據(jù)分配的功能。moduledmux_8(iEN,iS,iD,oY);//8路數(shù)據(jù)分配器模塊定義

moduledmux_8(iEN,iS,iD,oY);inputiEN;//使能控制信號inputiD;//數(shù)據(jù)輸入信號input[2:0]iS;//地址信號outputreg[7:0]oY;//數(shù)據(jù)輸出信號always@(iD,iEN,iS)begin

oY=8'b11111111;

if(iEN)

case(iS)3'b000:oY[0]=iD;3'b001:oY[1]=iD;3'b010:oY[2]=iD;3'b011:oY[3]=iD;

3'b100:oY[4]=iD;3'b101:oY[5]=iD;3'b110:oY[6]=iD;3'b111:oY[7]=iD;

endcaseendendmodule數(shù)值比較器:能夠比較數(shù)字大小的電路。

1.

一位數(shù)值比較器(比較A、B兩個1位二進制數(shù))

(1)A>B:只有當(dāng)A=1、B=0時,A>B才為真;

(2)A<B:只有當(dāng)A=0、B=1時,A<B才為真;

(3)A=B:只有當(dāng)A=B=0或A=B=1時,A=B才為真。ABYA>BYA<BYA=B000010101010100110014.4.5數(shù)值比較器2位數(shù)值比較器2位數(shù)值比較器的真值表數(shù)值輸入級聯(lián)輸入輸出A1B1A0B0IA>B

IA<B

A=BFA>B

FA<B

FA=BA1>B1A1<B1A1=B1A1=B1A1=B1A1=B1A1=B1××××A0>B0A0<B0A0=B0A0=B0A0=B0××××

××××××××100010001100010100010100010001兩位比較器電路圖74LS85的邏輯符號如果要比較兩個多位二進制數(shù)A和B的大???必須從高向低逐位進行比較。2.四位數(shù)值比較器——74LS85級聯(lián)輸入便于功能擴展74LS85的功能表輸入級聯(lián)輸入輸出A3,B3A2,B2A1,B1A0,B0IA>BIA<BIA=BFA>BFA<BFA=B10××××××10001××××××010A3=B310×××××100A3=B301×××××010A3=B3A2=B210××××100A3=B3A2=B201××××010A3=B3A2=B2A1=B110×××100A3=B3A2=B2A1=B101×××010A3=B3A2=B2A1=B1A0=B0100100A3=B3A2=B2A1=B1A0=B0010010A3=B3A2=B2A1=B1A0=B0001001A3=B3A2=B2A1=B1A0=B0××1001應(yīng)用舉例:

例1.用兩片74LS85實現(xiàn)兩個8位二進制數(shù)的比較。例2.輸入4位二進制數(shù)A、B、C、D,下圖所示電路能判斷它是否為8421BCD碼,說明電路工作原理。對涉及數(shù)值比較的電路可以用數(shù)值比較器簡化電路的設(shè)計。

例3.設(shè)有一個4位二進制數(shù)X(X3X2X1X0),送到一個判別電路,要求當(dāng)1X9時,電路輸出Y=1。設(shè)計此判別電路。解:條件1X9可以轉(zhuǎn)化為X<10并且X0。X=0,即X3+X2+X1+X0=0X0,即X3+X2+X1+X0=1比較器A輸入:X3X2X1X0

,B輸入:1010電路輸出Y=比較器輸出FA<B·(X3+X2+X1+X0

)數(shù)值比較器模塊modulecompare_n(A,B,AGB,ALB,AEB);input[n-1:0]A,B;outputregAGB,ALB,AEB;parametern=4;always@(A,B)beginAGB=0;ALB=0;AEB=0;

if(A>B)AGB=1;elseif(A==B)AEB=1;elseALB=1;endendmodule(2)奇偶檢驗(1)奇偶檢驗碼1奇偶校驗信息位:由若干位二進制代碼構(gòu)成奇偶檢驗位:一位代碼構(gòu)成奇檢驗:整個碼組中1的個數(shù)為奇數(shù)偶檢驗:整個碼組中1的個數(shù)為偶數(shù)FE偶檢驗位FOD奇檢驗位4.4.6奇偶產(chǎn)生/校驗電路發(fā)送信息碼(N位)接收信息碼(N位)+檢驗位(1位)檢驗位(1位)檢驗結(jié)果校驗過程:FE=B3B2B1B0S=B3B2B1B0FE2奇偶位產(chǎn)生和檢驗電路異或門的功能:奇數(shù)個1的連續(xù)異或運算其結(jié)果為1;偶數(shù)個1的連續(xù)異或運算其結(jié)果為0。S=0,傳輸無誤;S=1傳輸有誤FE=B3B2B1B0S=B3B2B1B0FE發(fā)送端偶檢驗位表達式:接受端偶檢驗位表達式:中規(guī)模集成奇偶發(fā)生器74180的邏輯圖和引腳排列圖。EVENODDFEVFOD表4.4.13CT74180功能表輸入輸出A~H中1的個數(shù)EVENODDFEV

FOD偶數(shù)10100101奇數(shù)10010110×110000118位數(shù)據(jù)傳輸?shù)臄?shù)據(jù)的奇偶校驗系統(tǒng)3.奇偶產(chǎn)生校驗?zāi)Kmoduleod

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論