二進(jìn)制解碼器是由單獨(dú)的邏輯門(mén)構(gòu)成的另一種組合邏輯電路,與編碼器完全相反。
名稱(chēng)“解碼器”是指將編碼信息從一種格式轉(zhuǎn)換或解碼為另一種格式,因此二進(jìn)制解碼器使用2 n個(gè)輸出將“ n”個(gè)二進(jìn)制輸入信號(hào)轉(zhuǎn)換為等效代碼。
二進(jìn)制解碼器是另一種類(lèi)型的數(shù)字邏輯設(shè)備,根據(jù)數(shù)據(jù)輸入線的數(shù)量,其輸入的2位,3位或4位代碼,因此具有一組2位或更多位的解碼器將定義為具有n位代碼,因此將有可能表示2 n個(gè)可能的值。因此,解碼器通常通過(guò)將其n個(gè)輸出中的一個(gè)準(zhǔn)確地設(shè)置為邏輯“ 1”來(lái)將二進(jìn)制值解碼為非二進(jìn)制值。
如果二元解碼器接收?輸入(通常歸類(lèi)為一個(gè)二進(jìn)制或布爾數(shù))它激活一個(gè)且只有其中的一個(gè)2個(gè)?基于與所有其它輸出該輸入輸出停用。
因此,例如,一個(gè)逆變器( 非門(mén) )可以被歸類(lèi)為一個(gè)1至2個(gè)二進(jìn)制解碼器1-輸入和2-輸出(2 1)是可能的,因?yàn)榕c輸入阿它可以產(chǎn)生兩個(gè)輸出甲和甲(不是-A),如圖所示。
那么我們可以說(shuō)標(biāo)準(zhǔn)的組合邏輯解碼器是n-m解碼器,其中m≤2 n,其輸出Q僅取決于其當(dāng)前輸入狀態(tài)。換句話說(shuō),二進(jìn)制解碼器查看其當(dāng)前輸入,確定在其輸入處存在哪個(gè)二進(jìn)制代碼或二進(jìn)制數(shù),并選擇與該二進(jìn)制輸入相對(duì)應(yīng)的適當(dāng)輸出。
甲二元解碼器將編碼的輸入成編碼輸出,其中輸入和輸出代碼是不同的和解碼器可用于“解碼”二進(jìn)制或BCD(8421碼)輸入圖案以通常為十進(jìn)制輸出代碼。常用的BCD到十進(jìn)制解碼器包括TTL 7442或CMOS4028。通常,解碼器的輸出代碼通常比其輸入代碼具有更多的位,并且實(shí)際的“二進(jìn)制解碼器”電路包括2到4、3到8和4至16線配置。
2至4行解碼器及其真值表的示例如下:
2對(duì)4二進(jìn)制解碼器
上面的2到4行二進(jìn)制解碼器的簡(jiǎn)單示例由四個(gè)“ 與”門(mén)的陣列組成。標(biāo)記為A和B的2個(gè)二進(jìn)制輸入被解碼為4個(gè)輸出之一,因此對(duì)2到4二進(jìn)制解碼器進(jìn)行了描述。每個(gè)輸出代表2個(gè)輸入變量的最小項(xiàng)之一(每個(gè)輸出=一個(gè)最小項(xiàng))。
二進(jìn)制輸入A和B確定從Q0到Q3的哪條輸出線在邏輯電平“ 1”下為“高”,而其余輸出在邏輯“ 0”下保持為“低”,因此在任何情況下只有一個(gè)輸出有效(高)一度。因此,無(wú)論哪條輸出線為“ HIGH”,都標(biāo)識(shí)輸入處存在的二進(jìn)制代碼,換言之,它“解碼”二進(jìn)制輸入。
一些二進(jìn)制解碼器還有一個(gè)附加的輸入引腳,標(biāo)為“ Enable”,用于控制設(shè)備的輸出。此額外的輸入允許解碼器的輸出根據(jù)需要設(shè)置為“ ON”或“ OFF”。這些類(lèi)型的二進(jìn)制解碼器通常在微處理器存儲(chǔ)應(yīng)用中用作“內(nèi)存地址解碼器”。
我們可以說(shuō)二進(jìn)制解碼器是具有用于啟動(dòng)解碼器的附加數(shù)據(jù)線的多路分解器。查看解碼器電路的另一種方法是將輸入A,B和C視為地址信號(hào)。A,B或C的每個(gè)組合定義一個(gè)唯一的內(nèi)存地址。
我們已經(jīng)看到2到4行二進(jìn)制解碼器(TTL 74155)可用于解碼任何2位二進(jìn)制代碼以提供四個(gè)輸出,每個(gè)可能的輸入組合一個(gè)。然而,有時(shí)需要二進(jìn)制輸出數(shù)量大于可用數(shù)量的二進(jìn)制解碼器,因此通過(guò)添加更多輸入,解碼器可能會(huì)提供2 n更多的輸出。
因此,例如,具有3個(gè)二進(jìn)制輸入(n = 3 )的解碼器 將產(chǎn)生3到8行解碼器(TTL 74138),而4個(gè)輸入( n = 4 )將產(chǎn)生4到16行解碼器(TTL) 74154)等。但是,解碼器也可以具有少于2 n的輸出,例如BCD到七段解碼器(TTL 7447),該解碼器具有4個(gè)輸入和只有7個(gè)活動(dòng)輸出來(lái)驅(qū)動(dòng)顯示器,而不是像您那樣將其輸出為16(2 4)個(gè)輸出期望。
在這里,已經(jīng)使用兩個(gè)較小的3至8解碼器實(shí)現(xiàn)了更大的4(3數(shù)據(jù)加1使能)至16行二進(jìn)制解碼器。
4到16二進(jìn)制解碼器配置
輸入A,B,C用于選擇任一解碼器上的哪個(gè)輸出為邏輯“ 1”(高),輸入D與啟用輸入一起使用,以選擇第一個(gè)或第二個(gè)編碼器將輸出“ 1”。
但是,可用于一個(gè)特定解碼器的輸入數(shù)量是有限制的,因?yàn)殡S著n的增加,產(chǎn)生輸出所需的AND門(mén)的數(shù)量也會(huì)變大,從而導(dǎo)致用于驅(qū)動(dòng)的門(mén)扇出他們?cè)絹?lái)越大。
此類(lèi)有源“ HIGH”解碼器可僅使用反相器( 非門(mén) )和與門(mén)實(shí)現(xiàn)。使用“ 與”門(mén)作為輸出的基本解碼元素非常方便,因?yàn)閮H當(dāng)其所有輸入均為邏輯“ 1”時(shí),它才會(huì)產(chǎn)生“高”或邏輯“ 1”輸出。
但是有些二進(jìn)制解碼器是使用“ 與非”門(mén)代替“ 與”門(mén)構(gòu)建其解碼輸出的,因?yàn)榕c“與”門(mén)相比,“與非”門(mén)的生產(chǎn)成本更低,因?yàn)樗鼈冃枰俚?a target="_blank">晶體管來(lái)實(shí)現(xiàn)其設(shè)計(jì)。
使用“ 與非”門(mén)作為解碼元件,將導(dǎo)致有效的“ LOW”輸出,而其余的將為“ HIGH”。當(dāng)“ 與非”門(mén)產(chǎn)生具有反相輸出的“ 與”運(yùn)算時(shí),“ 與非”解碼器的反相真值表看起來(lái)像這樣。
2至4行NAND二進(jìn)制解碼器
然后,對(duì)于NAND解碼器,在任何給定時(shí)間只有一個(gè)輸出為L(zhǎng)OW且等于邏輯“ 0”,而所有其他輸出為邏輯“ 1”時(shí)為HIGH。
解碼器還可提供一個(gè)附加的“使能”輸入引腳,該輸入引腳可通過(guò)分別對(duì)它們施加邏輯“ 1”或邏輯“ 0”來(lái)使解碼輸出變?yōu)椤?ON”或“ OFF”。因此,例如,當(dāng)使能輸入為邏輯電平“ 0”(EN = 0)時(shí),無(wú)論輸入A和B的狀態(tài)如何,所有輸出均為邏輯“ 0”的“ OFF”(對(duì)于AND門(mén))。
一般來(lái)實(shí)現(xiàn)這個(gè)功能使得能夠在2輸入AND或NAND柵極與3-輸入替換AND或NAND門(mén)。附加輸入引腳代表使能功能。
內(nèi)存地址解碼器
二進(jìn)制解碼器最常用于更復(fù)雜的數(shù)字系統(tǒng)中,以基于計(jì)算設(shè)備產(chǎn)生的“地址”訪問(wèn)特定的存儲(chǔ)位置。在現(xiàn)代微處理器系統(tǒng)中,所需的內(nèi)存量可能會(huì)很高,并且通常不止一個(gè)內(nèi)存芯片。
克服此問(wèn)題的一種方法是將許多獨(dú)立的存儲(chǔ)芯片連接在一起,并在公共“數(shù)據(jù)總線”上讀取數(shù)據(jù)。為了防止同時(shí)從每個(gè)存儲(chǔ)芯片“讀取”數(shù)據(jù),每個(gè)存儲(chǔ)芯片一次要一個(gè)一個(gè)地選擇,此過(guò)程稱(chēng)為地址解碼。
在這種類(lèi)型的應(yīng)用中,地址代表編碼數(shù)據(jù)輸入,而輸出則是特定的存儲(chǔ)元件選擇信號(hào)。每個(gè)存儲(chǔ)芯片都有一個(gè)稱(chēng)為“ 芯片選擇”或CS的輸入,MPU(微處理器單元)使用它來(lái)在需要時(shí)選擇合適的存儲(chǔ)芯片。通常,片選(CS)輸入上的邏輯“ 1” 選擇存儲(chǔ)設(shè)備,而輸入上的邏輯“ 0”取消選擇存儲(chǔ)設(shè)備。
因此,通過(guò)一次選擇或取消選擇每個(gè)芯片,可以使我們?yōu)樘囟ǖ牡刂肺恢眠x擇正確的存儲(chǔ)器地址設(shè)備。地址解碼的優(yōu)勢(shì)在于,當(dāng)我們指定特定的存儲(chǔ)器地址時(shí),相應(yīng)的存儲(chǔ)器位置僅存在于其中一個(gè)芯片中。
例如,讓我們假設(shè)我們有一個(gè)非常簡(jiǎn)單的微處理器系統(tǒng),僅具有1Kb(一千個(gè)字節(jié))的RAM存儲(chǔ)器和10條可用的存儲(chǔ)器地址線。該存儲(chǔ)器由128×8位(128×8 = 1024字節(jié))設(shè)備組成,對(duì)于1Kb,我們將需要8個(gè)單獨(dú)的存儲(chǔ)芯片,但是為了選擇正確的存儲(chǔ)芯片,我們還需要3至8行二進(jìn)制解碼器如下所示。
內(nèi)存地址解碼
二進(jìn)制解碼器僅需要3條地址線(A 0至A 2)來(lái)選擇8個(gè)芯片中的每個(gè)芯片(地址的下部),而其余8條地址線(A 3至A 10)則選擇正確的存儲(chǔ)器該芯片上的位置(地址的上部)。
使用地址總線選擇存儲(chǔ)位置后,特定內(nèi)部存儲(chǔ)位置上的信息將發(fā)送到公共“數(shù)據(jù)總線”以供微處理器使用。這當(dāng)然是一個(gè)簡(jiǎn)單的示例,但是對(duì)于所有類(lèi)型的存儲(chǔ)芯片或模塊,其原理均相同。
二進(jìn)制解碼器是將一種數(shù)字格式轉(zhuǎn)換為另一種數(shù)字格式的非常有用的設(shè)備,例如將二進(jìn)制或BCD類(lèi)型的數(shù)據(jù)轉(zhuǎn)換為十進(jìn)制或八進(jìn)制等,常用的解碼器IC是TTL 74LS138 3至8行二進(jìn)制解碼器或74ALS154 4至16線解碼器。
評(píng)論
查看更多