使用8線-3線優(yōu)先編碼器Ⅰ實現(xiàn)16線-4線優(yōu)先編碼器

許久刷??途W(wǎng)的題目了,雖然很簡單的一道題目,但是還是思考了一會。
問題的核心就是怎么將1個38譯碼器變成416譯碼器,其實想一下就可以知道
我們分別將16個bit分為上下8bit切分成兩個83編碼器
這樣輸出了2個3bit的Y,分別是Y_up和Y_low,那么輸出只有4個bit怎么辦?
畫一個真值表就不難發(fā)現(xiàn),最高位只有在高位優(yōu)先編碼有效的時候才會置1,
所以,用一個三目運算符就能夠輸出正確的L,即
assign L = (GS_upper & ~EO_upper)?{1'b1,Y_upper}:{1'b0,Y_lower};
標簽: