实验1运算器组成实验
看到有好多小伙伴想要ALU181的HDL代码,我就找了找以前做的实验,翻出了代码,希望可以帮到各位哦
module ALU181a (S, A, B, F, M, CN, CO, FZ);
input[3:0] S; input[7:0] A,B; input M, CN;
output[7:0] F; output CO, FZ;
//wire[7:0] F; wire CO;
wire[8:0] A9, B9; reg FZ; reg[8:0] F9; reg [7:0] F; reg CO;
assign A9 = {1'b0, A} ; assign B9 = {1'b0, B} ;
always @(M or CN or A9 or B9 or S) begin
case (S)
4'b0000 : if (M==0) F9<=A9+CN ; else F9<=~A9 ;
4'b0001 : if (M==0) F9 <= (A9 |B9) + CN ; else F9<=~(A9 | B9) ;
4'b0010 : if (M==0) F9 <= (A9 |((~B9)&9'b011111111))+ CN; else F9<=(~A9) & B9 ;
4'b0011 : if (M==0) F9 <= 9'b000000000-CN; else F9<=9'b000000000;
4'b0100 : if (M==0) F9 <