mirror of https://github.com/VLSIDA/OpenRAM.git
Widen pitch of control bus in bank.
This commit is contained in:
parent
8cedeeb3d9
commit
eb11ac22f3
|
|
@ -316,7 +316,7 @@ class bank(design.design):
|
||||||
self.input_control_signals = []
|
self.input_control_signals = []
|
||||||
port_num = 0
|
port_num = 0
|
||||||
for port in range(OPTS.num_rw_ports):
|
for port in range(OPTS.num_rw_ports):
|
||||||
self.input_control_signals.append(["w_en{}".format(port_num), "s_en{}".format(port_num), "p_en_bar{}".format(port_num), "wl_en{}".format(port_num)])
|
self.input_control_signals.append(["s_en{}".format(port_num), "w_en{}".format(port_num), "p_en_bar{}".format(port_num), "wl_en{}".format(port_num)])
|
||||||
port_num += 1
|
port_num += 1
|
||||||
for port in range(OPTS.num_w_ports):
|
for port in range(OPTS.num_w_ports):
|
||||||
self.input_control_signals.append(["w_en{}".format(port_num), "p_en_bar{}".format(port_num), "wl_en{}".format(port_num)])
|
self.input_control_signals.append(["w_en{}".format(port_num), "p_en_bar{}".format(port_num), "wl_en{}".format(port_num)])
|
||||||
|
|
@ -329,7 +329,7 @@ class bank(design.design):
|
||||||
self.num_control_lines = [len(x) for x in self.input_control_signals]
|
self.num_control_lines = [len(x) for x in self.input_control_signals]
|
||||||
|
|
||||||
# The width of this bus is needed to place other modules (e.g. decoder) for each port
|
# The width of this bus is needed to place other modules (e.g. decoder) for each port
|
||||||
self.central_bus_width = [self.m2_pitch * x + self.m2_width for x in self.num_control_lines]
|
self.central_bus_width = [self.m3_pitch * x + self.m3_width for x in self.num_control_lines]
|
||||||
|
|
||||||
# These will be outputs of the gaters if this is multibank, if not, normal signals.
|
# These will be outputs of the gaters if this is multibank, if not, normal signals.
|
||||||
self.control_signals = []
|
self.control_signals = []
|
||||||
|
|
@ -338,6 +338,7 @@ class bank(design.design):
|
||||||
self.control_signals.append(["gated_" + str for str in self.input_control_signals[port]])
|
self.control_signals.append(["gated_" + str for str in self.input_control_signals[port]])
|
||||||
else:
|
else:
|
||||||
self.control_signals.append(self.input_control_signals[port])
|
self.control_signals.append(self.input_control_signals[port])
|
||||||
|
|
||||||
|
|
||||||
# The central bus is the column address (one hot) and row address (binary)
|
# The central bus is the column address (one hot) and row address (binary)
|
||||||
if self.col_addr_size>0:
|
if self.col_addr_size>0:
|
||||||
|
|
@ -672,7 +673,8 @@ class bank(design.design):
|
||||||
names=self.control_signals[0],
|
names=self.control_signals[0],
|
||||||
length=control_bus_length,
|
length=control_bus_length,
|
||||||
vertical=True,
|
vertical=True,
|
||||||
make_pins=(self.num_banks==1))
|
make_pins=(self.num_banks==1),
|
||||||
|
pitch=self.m3_pitch)
|
||||||
|
|
||||||
# Port 1
|
# Port 1
|
||||||
if len(self.all_ports)==2:
|
if len(self.all_ports)==2:
|
||||||
|
|
@ -686,7 +688,8 @@ class bank(design.design):
|
||||||
names=list(reversed(self.control_signals[1])),
|
names=list(reversed(self.control_signals[1])),
|
||||||
length=control_bus_length,
|
length=control_bus_length,
|
||||||
vertical=True,
|
vertical=True,
|
||||||
make_pins=(self.num_banks==1))
|
make_pins=(self.num_banks==1),
|
||||||
|
pitch=self.m3_pitch)
|
||||||
|
|
||||||
def route_port_data_to_bitcell_array(self, port):
|
def route_port_data_to_bitcell_array(self, port):
|
||||||
""" Routing of BL and BR between port data and bitcell array """
|
""" Routing of BL and BR between port data and bitcell array """
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue