before the names of bl/br from the bitcell were assumed. If we want to
allow renaming of bl/br from bitcells, we have to seperate the other
modules from that. Note, that we don't touch every occurence of bl/br,
but only the once necessary that pin renaming of the bitcell works.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
each module should be able to state how their bl/br lines are named. Here we
always connect port_data with the bitcell_array, so port_data needs function
that return the names of bl/br.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
since the bitlines alternate in the bitcell array we also need to mirror
the port_data elements.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
since the bitlines alternate in the bitcell array we also need to mirror
the port_data elements.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
this allows for bitcells that need to be mirrored on the y axis, like
thin cells. However, the portdata elements also need to be mirrored on
the y axis. Otherwise the router will fail horribly when connecting
bitlines.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
this is technology specific database to store data about the custom
design cells. For now it only contains on which axis the bitcells are
mirrored. This is a first step to support thin cells that need to be
mirrored on the x and y axis.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
this is the first step to allow engineers, porting technologies, more room
for routing their handmade cells.
For now, we don't allow the specification of power_grids where the lower layer
prefers to be routed vertically. This is due to the router not
connecting some pins properly in that case.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
this allows us to simplify add_power_pin() and gives a clean
API to create vias through multiple layers.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
a lot of functions of dummy- and bitcell-array are either copy-pasted or
have just slight differences. Merge all of those into an abstract base
class such that we don't have too much duplicate code.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>