編碼器可將2N個分離的信息代碼以N個二進制碼來表示。編碼器常常應(yīng)用于影音壓縮或通信方面,以達到精簡傳輸量的目的??梢詫⒕幋a器看成壓縮電路,譯碼器看成解壓縮電路。傳送數(shù)據(jù)前先用編碼器壓縮數(shù)據(jù)后再傳送出去,在接收端則由譯碼器將數(shù)據(jù)解壓縮,還原為原來的數(shù)據(jù)。這樣,在傳送過程中,就可以以N個數(shù)碼來代替2N個數(shù)碼的數(shù)據(jù)量,以提升傳輸效率。
編碼器又分為普通編碼器和優(yōu)先級編碼器。優(yōu)先級編碼器常用于中斷的優(yōu)先級控制,例如,74LS148是一個8輸入,3位二進制碼輸出的優(yōu)先級編碼器。當某一個輸入有效時,就可以輸出一個對應(yīng)的3位二進制編碼。另外,當同時有幾個輸入有效時,將輸出優(yōu)先級最高的那個輸入所對應(yīng)的二進制編碼。
【例1】 設(shè)計一個8-3編碼器的VHDL程序,并使用MAX+p1us Ⅱ進行仿真。
仿真結(jié)果如圖所示。
如圖1 編碼器ENC0DE8_3的仿真圖
【例2】 用VHDL設(shè)計一個8-3線優(yōu)先級編碼器,輸入信號為A、B、C、D、E、F、G和H,輸出信號為OUT0、OUT1和OUT2,并使用MAX+p1us Ⅱ進行仿真。輸入信號中A的優(yōu)先級別最低,依次類推,H的優(yōu)先級別最高。
仿真結(jié)果如圖所示。
如圖2 8-3線優(yōu)先級編碼器ENCODER的仿真圖
來源:ks990次