diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/register_file.v | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/src/register_file.v b/src/register_file.v deleted file mode 100644 index 4f09773..0000000 --- a/src/register_file.v +++ /dev/null @@ -1,41 +0,0 @@ -module register_file #( - parameter N = 32, - parameter XLEN = 32 -)( - input [CLOG2(XLEN)-1:0] A1, A2, A3, - input CLK, - input RST, - input WE3, - input [N-1:0] WD3, - output [N-1:0] RD1, RD2 -); - - reg [N-1:0] registers[XLEN-1:0]; - - assign RD1 = A1 == 0 ? 0 : registers[A1]; - assign RD2 = A2 == 0 ? 0 : registers[A2]; - - always @ (posedge CLK or negedge RST) begin - if (!RST) begin - integer i; - for (i = 0; i < XLEN; i = i + 1) begin - registers[i] <= 0; - end - end else if (WE3 && (A3 != 0)) begin - registers[A3] <= WD3; - end - end - - - - function integer CLOG2(input integer value); - integer i; - begin - value = value - 1; - for (i = 0; value > 0; i = i + 1) - value = value >> 1; - CLOG2 = i; - end - endfunction - -endmodule |