OpenRAM/technology/sky130/custom/sky130_replica_bitcell_arra...

32 lines
1.2 KiB
Python
Raw Normal View History

2021-08-18 20:21:52 +02:00
#!/usr/bin/env python3
# See LICENSE for licensing information.
#
2023-01-29 07:56:27 +01:00
# Copyright (c) 2016-2023 Regents of the University of California
2021-08-18 20:21:52 +02:00
# All rights reserved.
#
from math import sqrt
2022-11-27 22:01:20 +01:00
from openram import debug
from openram.base import vector
from openram.base import round_to_grid
from openram.tech import drc
from openram.tech import array_row_multiple
from openram.tech import array_col_multiple
from openram import OPTS
2023-08-26 01:39:32 +02:00
from openram.modules.replica_bitcell_array import replica_bitcell_array
2022-11-27 22:01:20 +01:00
from .sky130_bitcell_base_array import sky130_bitcell_base_array
2021-08-18 20:21:52 +02:00
class sky130_replica_bitcell_array(replica_bitcell_array, sky130_bitcell_base_array):
"""
Creates a bitcell arrow of cols x rows and then adds the replica
and dummy columns and rows. Replica columns are on the left and
right, respectively and connected to the given bitcell ports.
Dummy are the outside columns/rows with WL and BL tied to gnd.
Requires a regular bitcell array, replica bitcell, and dummy
bitcell (Bl/BR disconnected).
"""
def __init__(self, rows, cols, rbl=None, left_rbl=None, right_rbl=None, name=""):
2023-08-24 11:55:45 +02:00
super().__init__(rows, cols, rbl, left_rbl, right_rbl, name)
2021-08-18 20:21:52 +02:00