邏輯門是邏輯電路的基本組成部分,可以由晶體管來構(gòu)成,邏輯門大致可以分為基本門、萬用門和延伸門等三種,其中基本門又可以分為與門、或門和非門三種。邏輯門可以使信號的高低電平轉(zhuǎn)化為響應(yīng)的邏輯信號,從而實現(xiàn)邏輯運算。
邏輯門的簡介
把若干個有源器件和無源器件及其連線,按照一定的功能要求,制作在一塊半導(dǎo)體基片上,這樣的產(chǎn)品叫集成電路。若它完成的功能是邏輯功能或數(shù)字功能,則稱為數(shù)字集成電路。最簡單的數(shù)字集成電路是集成邏輯門。
集成電路比分立元件電路有許多顯著的優(yōu)點,如體積小、耗電省、重量輕、可靠性高等等,所以集成電路一出現(xiàn)就受到人們的極大重視并迅速得到廣泛應(yīng)用。數(shù)字集成電路的規(guī)模一般是根據(jù)門的數(shù)目來劃分的。小規(guī)模集成電路(SSI)約為10個門,中規(guī)模集成電路(MSI)約為100個門,大規(guī)模集成電路(LSI)約為1萬個門,而超大規(guī)模集成電路(VLSI)則為1百萬個門。
在本節(jié)中,將介紹小規(guī)模數(shù)字集成電路的基本知識,而不涉及集成電路的內(nèi)部電路。
集成電路邏輯門,按照其組成的有源器件的不同可分為兩大類:一類是雙極性晶體管邏輯門; 另一類是單極性的絕緣柵場效應(yīng)管邏輯門。
雙極性晶體管邏輯門主要有TTL門(晶體管??-晶體管邏輯門)、ECL門(射極耦合邏輯門)和I2L門(集成注入邏輯門)等。
單極性MOS門主要有PMOS門(P溝道增強型MOS管構(gòu)成的邏輯門)、NMOS門(N溝道增強型MOS管構(gòu)成的邏輯門)和CMOS門(利用PMOS管和NMOS管構(gòu)成的互補電路構(gòu)成的門電路,故又叫互補MOS門)。其中,使用最廣泛的是TTL集成電路和CMOS集成電路。每種集成電路又分為不同的系列,每個系列的數(shù)字集成電路都有不同的品種類型,用不同的代碼表示,也就是器件型號的后幾位數(shù)碼。
例如: 00:4路2輸入與非門 02:4路2輸入或非門 08:4路2輸入與門 10:3路3輸入與非門 20:雙路4輸入與非門 27:3路3輸入或非門 32:4路2輸入或門 86:4路2輸入異或門邏輯門的主要參數(shù)
集成電路的性能參數(shù)主要包括:直流電源電壓、輸入 / 輸出邏輯電平、扇出系數(shù)、傳輸延時、功耗等。
1.直流電源電壓
? ? ? TTL集成電路的標準直流電源電壓為5V,最低4.5V,最高5.5V。CMOS集成電路的直流電源電壓可以在3~18V之間,74系列CMOS集成電路有5V和3.3V兩種。CMOS電路的一個優(yōu)點是電源電壓的允許范圍比TTL電路大,如5V CMOS電路當其電源電壓在2~6V范圍內(nèi)時能正常工作,3.3V CMOS電路當其電源電壓在2~3.6V范圍內(nèi)時能正常工作。
2.輸入 / 輸出邏輯電平
對一個TTL集成門電路來說,它的輸出“高電平”,并不是理想的+5V電壓,其輸出“低電平”,也并不是理想的0V電壓。這主要是由于制造工藝上的公差,使得即使是同一型號的器件輸出電平也不可能完全一樣;另外,由于所帶負載及環(huán)境溫度等外部條件的不同,輸出電平也會有較大的差異。但是,這種差異應(yīng)該在一定的允許范圍之內(nèi),否則就會無法正確標識出邏輯值“1”和邏輯值“0”,從而造成錯誤的邏輯操作。
3.傳輸延遲時間tpd
在集成門電路中,由于晶體管開關(guān)時間的影響,使得輸出與輸入之間存在傳輸延遲。傳輸延時越短,工作速度越快,工作頻率越高。因此,傳輸延遲時間是衡量門電路工作速度的重要指標。例如,在特定條件下,傳輸時間為10ns的邏輯電路要比20ns的電路快。
首先,在“邏輯”這個概念范疇內(nèi),存在真和假這兩個邏輯值,而將其對應(yīng)到數(shù)字電路或C語言中,就變成了“非0值”和“0值”這兩個值,即邏輯上的“假”就是數(shù)字電路或C語言中的“0”這個值,而邏輯“真”就是其它一切“非0值”。
然后,我們來具體分析一下幾個主要的邏輯運算符。我們假定有2個字節(jié)變量:A和B,二者進行某種邏輯運算后的結(jié)果為F。
以下邏輯運算符都是按照變量整體值進行運算的,通常就叫做邏輯運算符:
&&:邏輯與,F(xiàn) = A && B,當A、B的值都為真(即非0值,下同)時,其運算結(jié)果F為真(具體數(shù)值為1,下同);當A、B值任意一個為假(即0,下同)時,結(jié)果F為假(具體數(shù)值為0,下同)。
||:邏輯或,F(xiàn) = A || B,當A、B值任意一個為真時,其運算結(jié)果F為真;當A、B值都為假時,結(jié)果F為假。
! :邏輯非,F(xiàn) = !A,當A值為假時,其運算結(jié)果F為真;當A值為真時,結(jié)果F為假。
以下邏輯運算符都是按照變量內(nèi)的每一個位來進行運算的,通常就叫做位運算符:
& :按位與,F(xiàn) = A & B,將A、B兩個字節(jié)中的每一位都進行與運算,再將得到的每一位結(jié)果組合為總結(jié)果F,例如A = 0b11001100,B = 0b11110000,則結(jié)果F就等于0b11000000。
| :按位或,F(xiàn) = A | B,將A、B兩個字節(jié)中的每一位都進行或運算,再將得到的每一位結(jié)果組合為總結(jié)果F,例如A = 0b11001100,B = 0b11110000,則結(jié)果F就等于0b11111100。
~ :按位取反,F(xiàn) = ~A,將A字節(jié)內(nèi)的每一位進行非運算(就是取反),再將得到的每一位結(jié)果組合為總結(jié)果F,例如,A = 0b11001100,則結(jié)果F就等于0b00110011;這個運算符我們在前面的流水燈實驗里已經(jīng)用過了,現(xiàn)在再回頭看一眼,是不是清楚多了。
^ :按位異或,異或的意思是,如果運算雙方的值不同(即相異)則結(jié)果為真,雙方值相同則結(jié)果為假。在C語言里沒有按變量整體值進行的異或運算,所以我們僅以按位異或為例,F(xiàn) = A ^ B,A = 0b11001100,B = 0b11110000,則結(jié)果F就等于0b00111100。
評論
查看更多