曹穎超,王根義
(1.西安科技大學(xué) 計(jì) 算機(jī)學(xué)院,陜西 西 安 7 10054;2.陜西職業(yè)技術(shù)學(xué)院 陜 西 西 安 7 10100)
在現(xiàn)代智能化設(shè)備中,編碼器應(yīng)用范圍越來(lái)越大,但由于社會(huì)中一般的應(yīng)用型人才對(duì)編碼器知識(shí)的缺乏和和對(duì)編碼器掌握不牢靠,限制了編碼器的應(yīng)用范圍。故寫此文讓基層一般的應(yīng)用型人才深入掌握編碼器知識(shí),提高編碼器的應(yīng)用范圍。
一般來(lái)說(shuō),用文字、符號(hào)或者數(shù)字表示特定對(duì)象的過(guò)程都可以叫做編碼。日常生活中就經(jīng)常遇到編碼的問(wèn)題。例如,孩子出生時(shí)家長(zhǎng)給取名字,在計(jì)算機(jī)中把一個(gè)字符用一個(gè)對(duì)應(yīng)的二進(jìn)制數(shù)來(lái)表示,給一個(gè)地域起一個(gè)名稱,在計(jì)算機(jī)中把一個(gè)英文字母、數(shù)字等字符用一個(gè)7位的二進(jìn)制代碼即ASCII來(lái)表示,把一個(gè)十進(jìn)制數(shù)用BCD來(lái)表示等等,都是編碼。由于十進(jìn)制數(shù)用電路實(shí)現(xiàn)起來(lái)比較困難,所以在數(shù)字電路中不用它們編碼,而是用二進(jìn)制數(shù)進(jìn)行編碼,相應(yīng)的二進(jìn)制數(shù)叫做二進(jìn)制代碼。編碼器就是實(shí)現(xiàn)編碼操作的電路。用n位二進(jìn)制代碼可以對(duì)2n個(gè)信號(hào)進(jìn)行編碼,把可以表示n位二進(jìn)制代碼的編碼電路叫做n位二進(jìn)制編碼器。
以一個(gè)2位的二進(jìn)制編碼器的設(shè)計(jì)為例。
1)編碼真值表
一個(gè)2位編碼器,可以對(duì)22=4個(gè)輸入變量I3、I2、I1和I0進(jìn)行編碼。輸出函數(shù)為2位2進(jìn)制數(shù)Y1Y0,這個(gè)編碼器的真值表如表1所示。
表1 2位編碼器編碼器真值表Tab1.The truth table of 2 bit encoder
2)輸出函數(shù)Y1的卡諾圖
根據(jù)2位的二進(jìn)制編碼器的真值表,可以畫出輸出函數(shù)Y1的卡諾圖,如表2所示,其中“×”表示此處的約束行不存在。
表2 輸出函數(shù)Y1的卡諾圖Tab.2 The karnaugh map of output function Y1
3)輸出函數(shù)Y0的卡諾圖如表3所示。
根據(jù)2位的二進(jìn)制編碼器的真值表,可以畫出輸出函數(shù)Y1的卡諾圖,如表3所示,其中“×”表示此處的約束行不存在。
表3 輸出函數(shù)Y0的卡諾圖Tab.3 The karnaugh map of output function Y0
根據(jù)輸出函數(shù)Y1的卡諾圖和輸出函數(shù)Y0的卡諾圖,分別化間得出Y1和Y0的最簡(jiǎn)邏輯表達(dá)式如下:
根據(jù)Y1和Y0的最簡(jiǎn)邏輯表達(dá)式,就可以用非門、與門和或門來(lái)實(shí)現(xiàn)這個(gè)2位的二進(jìn)制編碼器,畫出如圖1所示的邏輯圖。
當(dāng)然,實(shí)際用的編碼器還要解決區(qū)分I0~I(xiàn)3均為0、I0為1,I1~I(xiàn)3均為 0、I0~I(xiàn)3中不可能出現(xiàn)兩個(gè) 1 的情況與 I0~I(xiàn)中至少有兩個(gè)1這四種種情況。第一種情況,如果I0~I(xiàn)3均為0,即沒(méi)有任何輸入信號(hào),這種情況是很容易區(qū)別的 ,只要再添加一個(gè)附加的輸出變量F,即用Y1的非、Y0的非和I0的非作為一個(gè)與門的輸出邏輯變量F的輸入變量,那么這個(gè)邏輯變量F只有在I0~I(xiàn)3均為0時(shí)方為1,其余任何情況均為0;第二種情況,如果I0為1,I,1~I(xiàn)3均為0,這種情況屬于一種正常普通情況,在這里不需要討論;第三種情況,I0~I(xiàn)3中不可能出現(xiàn)兩個(gè)1,即I0~I(xiàn)3這些輸入變量互相排斥,這種情況邏輯設(shè)計(jì)最簡(jiǎn)單,只要將使邏輯函數(shù)值為1的邏輯變量進(jìn)行邏輯或即可;第四種情況,如果I0~I(xiàn)中至少有兩個(gè)1,這種情況又可以分為兩種情況,一種情況是輸入變量出現(xiàn)異常錯(cuò)誤情況,可以再添加一個(gè)輸出邏輯變量予以提示用戶,另一種情況是輸入變量有這種狀態(tài),但要求編碼器按照它們的輕重緩急進(jìn)行排隊(duì)編碼,這在中斷系統(tǒng)中是常見(jiàn)現(xiàn)象,這就要求編碼器設(shè)計(jì)者按照輸入邏輯變量的編碼優(yōu)先級(jí)進(jìn)行編碼設(shè)計(jì)另外一種編碼器,如我們熟悉的8259A芯片。文中如圖1所設(shè)計(jì)的編碼器就是針對(duì)I0~I(xiàn)中有可能出現(xiàn)兩個(gè)以上的1的異常錯(cuò)誤情況設(shè)計(jì)的編碼器,但沒(méi)有畫出區(qū)別I0~I(xiàn)3均為0情況的輸出邏輯變量及提示出現(xiàn)異常錯(cuò)誤情況的輸出邏輯變量的邏輯電路圖。
在智能化設(shè)備制造中,根據(jù)具體情況,如果要求使用的編碼器位數(shù)比較少,就可以直接用邏輯門來(lái)構(gòu)成,這樣往往使用靈活,成本低廉,而且各個(gè)方面的性能容易滿足。另外一種情況,就是經(jīng)常要用到的編碼器,把它設(shè)計(jì)好好后制作在一個(gè)芯片上,所得到的便是集成編碼器,使用非常方便。而且,也可以用位數(shù)較少的編碼器級(jí)聯(lián)成滿足需求的位數(shù)較多的編碼器。
圖1 4線-2線編碼器Fig.1 4-2line encoder
1)優(yōu)先編碼的概念
前面講的編碼器,輸入信號(hào)都是互相排斥的,也就是說(shuō)在任何時(shí)刻,只能對(duì)一個(gè)輸入信號(hào)進(jìn)行編碼,不允許有兩個(gè)和兩個(gè)以上輸入信號(hào)同時(shí)存在的情況出現(xiàn),但在優(yōu)先編碼器中則不同,允許幾個(gè)信號(hào)同時(shí)輸入,但是電路只對(duì)其中優(yōu)先級(jí)別最高的進(jìn)行編碼,不理睬級(jí)別低的信號(hào),或者說(shuō)級(jí)別低的信號(hào)不起作用,這樣的電路叫做優(yōu)先編碼器。也就是說(shuō),在優(yōu)先編碼器中是優(yōu)先級(jí)別高的信號(hào)排斥級(jí)別低的,即具有單方面排斥的特性。至于優(yōu)先級(jí)別的高低,則完全是由設(shè)計(jì)人員根據(jù)各個(gè)輸入信號(hào)輕重緩急情況決定的。例如,微機(jī)中的I/O接口芯片8259A就用到優(yōu)先編碼器,各個(gè)中斷源的優(yōu)先級(jí)別還可以由程序員編程規(guī)定。
下面以一個(gè)2位的二進(jìn)制優(yōu)先編碼器的設(shè)計(jì)為例。
2)優(yōu)先編碼真值表
如果我們規(guī)定,下列輸入信號(hào)I3、I2、I1和I0的編碼優(yōu)先級(jí)別是I3>I2>I1>I0,則優(yōu)先編碼器的真值表如表4所示。
3)輸出函數(shù)Y1的卡諾圖
根據(jù)2位的二進(jìn)制優(yōu)先編碼器的真值表,可以畫出輸出函數(shù)Y1的卡諾圖,如表5所示。
化簡(jiǎn)卡諾圖得,Y1=I3+I2
4)輸出函數(shù)Y0的卡諾圖如表6所示。
根據(jù)2位的二進(jìn)制優(yōu)先編碼器的真值表,可以畫出輸出函數(shù)Y0的卡諾圖如表6所示。
化簡(jiǎn)卡諾圖得,Y0=I3+I1
5)優(yōu)先編碼器的實(shí)現(xiàn)
根據(jù)優(yōu)先編碼器的輸出函數(shù)Y1的卡諾圖和輸出函數(shù)Y0的卡諾圖,分別化間得出Y1和Y0的最簡(jiǎn)邏輯表達(dá)式如下:
用與門很容易實(shí)現(xiàn),畫出如圖2所示的邏輯圖。
表4 優(yōu)先編碼器真值表Tab.4 The truth table of priority encoder
表5 輸出函數(shù)Y1的卡諾圖Tab.5.The karnaugh map of output function Y1
表6 輸出函數(shù)Y0的卡諾圖Tab.6 The karnaugh map of output function Y0
圖2 2位優(yōu)先編碼器的邏輯圖Fig.2 The logical diagram of two-bit priority encoder
對(duì)直接用邏輯門設(shè)計(jì)制造的編碼器和優(yōu)先編碼器,與用集成電路芯片設(shè)計(jì)制造的編碼器和優(yōu)先編碼器進(jìn)行實(shí)驗(yàn)測(cè)試,發(fā)現(xiàn)在二進(jìn)制數(shù)位相同的條件下,前者比后者成本降低30%,且速度提高1倍,但后者在應(yīng)用較多,更換較多的場(chǎng)合卻比較方便。
現(xiàn)在,社會(huì)中的智能化設(shè)備對(duì)編碼器的需求量越來(lái)越多,大部分編碼器的應(yīng)用者往往因一個(gè)簡(jiǎn)單的編碼器而不得不暫時(shí)中止手頭工作。本論文的創(chuàng)新點(diǎn),就是提示相關(guān)工作人員在一定的條件下可以用幾個(gè)簡(jiǎn)單的邏輯門來(lái)構(gòu)成需要的編碼器,已解決實(shí)際問(wèn)題。
[1]任為民,沈雅芬數(shù)字電子電路學(xué)習(xí)和實(shí)驗(yàn)指導(dǎo)[M],北京:中央廣播電視大學(xué)出版社,1993.
[2]康華光.電子技術(shù)基礎(chǔ)(下冊(cè))[M].3版.北京:高等教育出版社,1988.
[3]王曉軍.微機(jī)原理與接口技術(shù)[M].北京,北京郵電大學(xué)出版社,2001.
[4]林濤.數(shù)字電子技術(shù)基礎(chǔ).北京:清華大學(xué)出版社,2006.
[5]余孟嘗.數(shù)字電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,1985.
[6]江曉安.數(shù)字電子技術(shù)[M].2版西安:西安電子科技大學(xué)出版社,2001.
[7]劉守義.數(shù)字電子技術(shù)[M].西安:西安電子科技大學(xué)出版社,2003.
[8]吳至友,傅欣欣.無(wú)約束全局優(yōu)化問(wèn)題的兩種新的輔助函數(shù)法[J].重慶師范大學(xué)學(xué)報(bào):自然科學(xué)版,2014(5):1-7.WU Zhi-you;FU Xin-xin.Two new auxiliary function methods of unconstrained global optimization problems[J].Journal of Chongqing Normal University:Natural Science,2014(5):1-7.
[9]汪頌軍,楊健.基于傳遞函數(shù)辨識(shí)的雙側(cè)頻差直流調(diào)制抑制研究[J].陜西電力,2014(3):4-8.WANG Song-jun,YANG Jian.Study on DC Modulation of Bilateral Frequency Difference Based on Transfer Function Identification[J].Shaanxi Electric Power,2014(3):4-8.