本頁使用了標題或全文手工轉換

優先編碼器

維基百科,自由的百科全書
跳至導覽 跳至搜尋

優先編碼器是一種能將多個二進制輸入壓縮成更少數目輸出的電路算法。其輸出是序數0到輸入最高有效位的二進制表示。優先編碼器常用於在處理最高優先級請求時控制中斷請求

如果同時有兩個或以上的輸入作用於優先編碼器,優先級最高的輸入將會被優先輸出。[1] 下圖是一位4線-2線編碼器的例子,其中最高優先級的輸入在功能表的左側,而「x」代表無關項,即可是1也可是0,也就是說不論無關項的值是什麼,都不影響輸出,只有最高優先級的輸入有變化時,輸出才會改變。

I3 I2 I1 I0 O1 O0
0 0 0 x 0 0
0 0 1 x 0 1
0 1 x x 1 0
1 x x x 1 1
4線-2線優先編碼器

優先編碼器可以排列連接在一起,組成更大規模的編碼器,如6個4線-2線優先編碼器可以組成1個16線-4線編碼器,其中訊號源作為4個編碼器的輸入,前4個編碼器的輸入作為2個編碼器的輸入。

優先編碼器相比簡單編碼器電路有更強的處理能力,因為其能處理所有的輸入組合情況。

簡單編碼器[編輯]

簡單編碼器電路可以接受2n中的一個有效輸入,並在n條並行輸出線上生成一個二進制碼。

例如,一位4線-2線編碼器輸入4位,輸出2位。當同時有超過一個輸入線有效時,下例的編碼器可能會錯誤地表現出優先編碼器的行為。

4線-2線編碼器的門級電路圖
I3 I2 I1 I0 O1 O0
0 0 0 1 0 0
0 0 1 0 0 1
0 1 0 0 1 0
1 0 0 0 1 1
4線-2線編碼器

如果一個輸入電路只允許一個有效輸入,簡單編碼器相對於優先編碼器是一個更好的選擇,因為需要比較少的邏輯門來實現。

參考文獻[編輯]

  1. ^ M. Morris Mano, Michael D. Ciletti, "Digital Design", 4th Edition, Prentice Hall, 2006, ISBN 978-0-13-198924-5.