mirror of https://github.com/VLSIDA/OpenRAM.git
fix self.rbls and fix handling of rbl WLs (kinda)
This commit is contained in:
parent
a1ca7c312d
commit
f9419e8ff7
|
|
@ -40,12 +40,12 @@ class capped_bitcell_array(bitcell_base_array):
|
|||
# This specifies which RBL to put on the left or right
|
||||
# by port number
|
||||
# This could be an empty list
|
||||
if left_rbl != None:
|
||||
if left_rbl is not None:
|
||||
self.left_rbl = left_rbl
|
||||
else:
|
||||
self.left_rbl = [0]
|
||||
# This could be an empty list
|
||||
if right_rbl != None:
|
||||
if right_rbl is not None:
|
||||
self.right_rbl = right_rbl
|
||||
else:
|
||||
self.right_rbl=[1] if len(self.all_ports) > 1 else []
|
||||
|
|
@ -166,7 +166,7 @@ class capped_bitcell_array(bitcell_base_array):
|
|||
|
||||
self.capped_array_wordline_names = []
|
||||
self.capped_array_wordline_names.extend(["gnd"] * len(self.col_cap_top.get_wordline_names()))
|
||||
self.capped_array_wordline_names.extend(self.all_wordline_names) # TODO: I think I need rblwls here too
|
||||
self.capped_array_wordline_names.extend(self.replica_array_wordline_names)
|
||||
self.capped_array_wordline_names.extend(["gnd"] * len(self.col_cap_bottom.get_wordline_names()))
|
||||
|
||||
self.add_pin_list(self.all_wordline_names, "INPUT")
|
||||
|
|
|
|||
|
|
@ -41,9 +41,15 @@ class replica_bitcell_array(bitcell_base_array):
|
|||
# This specifies which RBL to put on the left or right
|
||||
# by port number
|
||||
# This could be an empty list
|
||||
self.left_rbl = left_rbl
|
||||
if left_rbl is not None:
|
||||
self.left_rbl = left_rbl
|
||||
else:
|
||||
self.left_rbl = []
|
||||
# This could be an empty list
|
||||
self.right_rbl = right_rbl
|
||||
if right_rbl is not None:
|
||||
self.right_rbl = right_rbl
|
||||
else:
|
||||
self.right_rbl=[]
|
||||
self.rbls = self.left_rbl + self.right_rbl
|
||||
|
||||
debug.check(sum(self.rbl) >= len(self.left_rbl) + len(self.right_rbl),
|
||||
|
|
@ -164,10 +170,14 @@ class replica_bitcell_array(bitcell_base_array):
|
|||
self.add_pin_list(self.rbl_bitline_names[port], "INOUT")
|
||||
|
||||
def add_wordline_pins(self):
|
||||
# Wordlines to be grounded by capped_bitcell_array
|
||||
self.gnd_wordline_names = []
|
||||
|
||||
for port in self.all_ports:
|
||||
for bit in self.all_ports:
|
||||
self.rbl_wordline_names[port].append("rbl_wl_{0}_{1}".format(port, bit))
|
||||
if bit != port:
|
||||
self.gnd_wordline_names.append("rbl_wl_{0}_{1}".format(port, bit))
|
||||
|
||||
self.all_rbl_wordline_names = [x for sl in self.rbl_wordline_names for x in sl]
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue