⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 alu.v

📁 多工器verilog設計1對多快速解碼提供控制功能
💻 V
字号:
module alu(alu_out,zero,opcode,data,accum,clock);
input [7:0] data,accum;
input [4:0] opcode;
input clock;
output [7:0] alu_out;
output zero;
reg zero;
reg [7:0] temp_out,alu_out;
always@(accum)
   zero=(!accum);
always@(negedge clock)
begin
case(opcode[4:2])
3'b000:temp_out=data;
3'b001:temp_out=accum+data;
3'b010:temp_out=accum-data;
3'b011:temp_out=accum&data;
3'b100:temp_out=accum|data;
3'b101:temp_out=accum+1;
3'b110:temp_out=accum-1;
3'b111:temp_out=accum;
default:temp_out=8'b0;
endcase
case(opcode[1:0])
2'b00:alu_out=temp_out;
2'b01:alu_out={temp_out[6:0],1'b0};
2'b10:alu_out={1'b0,temp_out[7:1]};
default:alu_out=8'b0;
endcase
end
endmodule

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -