請問ALU單元的verilog寫法
請問假如要寫一個ALU電路, 採用以下寫法(verilog)
++++++
+ +
A1 --->+ + ---> B
A2 --->+ +
++++++
| |
| |
C
因為ALU是組合電路,所以採用一個很大的always來寫 ,
其中 A 是input , B是 output
C是選擇要輸出到output的運算結果
因為運算有很多種,例如加減乘,shift,and,xor,or...等等
所以必需要assign 很多運算result來表示這些運算結果
如:
assign mul_result=A1*A2
assign xor_result=A1^A2
.
.
.
always@(A1 or A2 or C)
begin
case C
.
.
.
.
endcase
end
因為運算好像還蠻多的 , 所以可能會合成一個很大的MUX
假設每條運算結果是32 bit, 而運算種類有20種
那內部可能會有一個input至少是20*32條線以上的mux
請問這種寫法在layout上會有問題嗎? 例如lvs上的問題?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.112.129.54
※ 編輯: teyurd 來自: 59.112.129.54 (03/10 03:19)
※ 編輯: teyurd 來自: 59.112.129.54 (03/10 03:21)
討論串 (同標題文章)