+++ /dev/null
-
--- Phony VHDL interface for SRAM block.
-
-entity SPBlock_512W64B8W is
- port ( clk : in bit
- ; we : in bit_vector( 7 downto 0)
- ; a : in bit_vector( 8 downto 0)
- ; d : in bit_vector(63 downto 0)
- ; q : out bit_vector(63 downto 0)
- ; vdd : in bit
- ; vss : in bit
- );
-end SPBlock_512W64B8W;
-
-architecture behavioral of SPBlock_512W64B8W is
-
-begin
-
-end behavioral;
from helpers.io import ErrorMessage, WarningMessage
from helpers.overlay import UpdateSession
import plugins
-from Hurricane import Breakpoint, DbU, Point, Box, Transformation, Instance
+from Hurricane import Breakpoint, DbU, Point, Box, Transformation, Instance, \
+ DataBase
from plugins.alpha.macro.macro import Macro
from plugins.alpha.block.block import Block
from plugins.alpha.block.configuration import IoPin, GaugeConf
chipBuilder = Chip( memoryConf )
chipBuilder.doChipFloorplan()
with UpdateSession():
- sramName = 'subckt_500_SPBlock_512W64B8W'
- sram = cell.getInstance( sramName )
+ sramName = 'spblock_512w64b8w'
+ sram = DataBase.getDB().getCell( 'spblock_512w64b8w' )
if not sram:
- print( '[ERROR] SRAM instance "{}" not found.'.format(sramName) )
+ print( '[ERROR] SRAM cell "{}" not found.'.format(sramName) )
else:
sliceHeight = memoryToChip.conf.sliceHeight
coreAb = cell.getAbutmentBox()
- sramAb = sram.getMasterCell().getAbutmentBox()
+ sramAb = sram.getAbutmentBox()
position = Transformation( coreAb.getXMax() - sramAb.getWidth() - 2*sliceHeight
, u(0.0)
, Transformation.Orientation.ID )
- chipBuilder.placeMacro( 'subckt_500_SPBlock_512W64B8W', position )
+ chipBuilder.placeMacro( 'spblock_512w64b8w', position )
memoryConf.placeArea = Box( coreAb.getXMin()
, coreAb.getYMax() - sliceHeight*26
, coreAb.getXMin() + sliceHeight*25
a = Signal(9)
q = Signal(64) # output
d = Signal(64) # input
- sram = Instance("SPBlock_512W64B8W", i_a=a, o_q=q, i_d=d,
+ sram = Instance("spblock_512w64b8w", i_a=a, o_q=q, i_d=d,
i_we=self.we, i_clk=ClockSignal())
m.submodules += sram
--- /dev/null
+
+-- Phony VHDL interface for SRAM block.
+
+entity spblock_512w64b8w is
+ port ( clk : in bit
+ ; we : in bit_vector( 7 downto 0)
+ ; a : in bit_vector( 8 downto 0)
+ ; d : in bit_vector(63 downto 0)
+ ; q : out bit_vector(63 downto 0)
+ ; vdd : in bit
+ ; vss : in bit
+ );
+end spblock_512w64b8w;
+
+architecture behavioral of spblock_512w64b8w is
+
+begin
+
+end behavioral;