registerfile.v
来自「用verilog编写在FLEX10K上实现的简易CPU」· Verilog 代码 · 共 32 行
V
32 行
//UNCOMPILED!!!//the general register files //access and modify must be authorifiedmodule registerfile(clk, rst, rd1_en, rd2_en, wt3_en, rd1_addr, rd2_addr, wt3_addr, rd1_out, rd2_out, wt3_in); input clk, rst, rd1_en, rd2_en, wt3_en, rd1_addr, rd2_addr, wt3_addr, wt3_in; output rd1_out, rd2_out; wire[3:0] rd1_addr, rd2_addr, wt3_addr; wire[15:0] rd1_out, rd2_out, wt3_in; reg[15:0] regfl[15:0]; //including 16 general registers integer regindex; assign rd1_out = ( rd1_en ) ? regfl[rd1_addr] : 16'hzzzz; assign rd2_out = ( rd2_en ) ? regfl[rd2_addr] : 16'hzzzz; always@(posedge clk) begin if(rst) for(regindex = 0; regindex < 16; regindex = regindex + 1) regfl[regindex] <= 16'b0000_0000_0000_0000; else if(wt3_en) regfl[wt3_addr] <= wt3_in; endendmodule
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?