# TODO
-from soc.regfile import RegFile, RegFileArray
+from soc.regfile.regfile import RegFile, RegFileArray
from soc.regfile.virtual_port import VirtualRegPort
from soc.decoder.power_enums import SPR
"""
def __init__(self):
super().__init__(64, 32)
- self.w_ports = [self.write_port("dest1",
+ self.w_ports = [self.write_port("dest1"),
self.write_port("dest2")] # for now (LD/ST update)
- self.r_ports = [self.write_port("src1"),
- self.write_port("src2"),
- self.write_port("src3")]
+ self.r_ports = [self.read_port("src1"),
+ self.read_port("src2"),
+ self.read_port("src3")]
# Fast SPRs Regfile
SRR2 = 6
def __init__(self):
super().__init__(64, 8)
- self.w_ports = [self.write_port("dest1",
+ self.w_ports = [self.write_port("dest1"),
self.write_port("dest2")]
- self.r_ports = [self.write_port("src1"),
- self.write_port("src2"),
- self.write_port("src3")]
+ self.r_ports = [self.read_port("src1"),
+ self.read_port("src2"),
+ self.read_port("src3")]
# CR Regfile
self.w_ports = [self.full_wr, # 32-bit wide (masked, 8-en lines)
self.write_port("dest")] # 4-bit wide, unary-indexed
self.r_ports = [self.full_rd, # 32-bit wide (masked, 8-en lines)
- self.write_port("src1"),
- self.write_port("src2"),
- self.write_port("src3")]
+ self.read_port("src1"),
+ self.read_port("src2"),
+ self.read_port("src3")]
# XER Regfile
super().__init__(6, 2)
self.w_ports = [self.full_wr, # 6-bit wide (masked, 3-en lines)
self.write_port("dest1"),
- self.write_port("dest2",
+ self.write_port("dest2"),
self.write_port("dest3")]
self.r_ports = [self.full_rd, # 6-bit wide (masked, 3-en lines)
- self.write_port("src1"),
- self.write_port("src2"),
- self.write_port("src3")]
+ self.read_port("src1"),
+ self.read_port("src2"),
+ self.read_port("src3")]
# SPR Regfile
n_sprs = len(SPR)
super().__init__(64, n_sprs)
self.w_ports = [self.write_port("dest")]
- self.r_ports = [self.write_port("src")]
+ self.r_ports = [self.read_port("src")]