集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 998|回复: 1

RISC CPU 算术运算器

[复制链接]
fpga_feixiang 发表于 2020-9-3 20:44:40 | 显示全部楼层 |阅读模式
module alu (alu_out, zero, data, accum, alu_clk, opcode);
3 output [7:0]alu_out;
4 output zero;
5 input [7:0] data, accum;
6 input [2:0] opcode;
7 input alu_clk;
8 reg [7:0] alu_out;
9
10 parameter HLT =3’b000,
11     SKZ =3’b001,
12     ADD =3’b010,
13     ANDD =3’b011,
14     XORR =3’b100,
15     LDA =3’b101,
16     STO =3’b110,
17     JMP =3’b111;
18
19 assign zero = !accum;
20 always @(posedgealu_clk)
21     begin //操作码来自指令寄存器的输出opc_iaddr<15..0>的低3位
22         casex (opcode)
23             HLT: alu_out<=accum;
24             SKZ: alu_out<=accum;
25             ADD: alu_out<=data+accum;
26             ANDD: alu_out<=data&accum;
27             XORR: alu_out<=data^accum;
28             LDA: alu_out<=data;
29             STO: alu_out<=accum;
30             JMP: alu_out<=accum;
31             default: alu_out<=8'bxxxx_xxxx;
32         endcase
33     end
34 endmodule
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|集成电路技术分享 ( 京ICP备20003123号-1 )

GMT+8, 2024-4-27 01:47 , Processed in 0.061509 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表