#helpers.setTraceLevel( 550 )
#Breakpoint.setStopLevel( 99 )
rvalue = True
- coreSize = u(5850.0)
+ #coreSize = u(37*90.0)
+ coreSize = u(61*90.0)
chipBorder = u(2*214.0 + 10*13.0)
ioSpecs = IoSpecs()
#pinmuxFile = './non_generated/litex_pinpads.json'
ls180Conf.cfg.katana.vTracksReservedLocal = 3
ls180Conf.cfg.katana.hTracksReservedMin = 3
ls180Conf.cfg.katana.vTracksReservedMin = 1
- ls180Conf.cfg.block.spareSide = u(100)
+ ls180Conf.cfg.block.spareSide = u(9*13)
ls180Conf.cfg.chip.supplyRailWidth = u(35)
ls180Conf.cfg.chip.supplyRailPitch = u(90)
ls180Conf.editor = editor
ls180Conf.useSpares = True
ls180Conf.useClockTree = True
- ls180Conf.useHFNS = False
+ ls180Conf.useHFNS = True
ls180Conf.bColumns = 2
ls180Conf.bRows = 2
ls180Conf.chipConf.name = 'chip'
chipBuilder.doChipFloorplan()
with UpdateSession():
- tiPath = 'subckt_38695_test_issuer.subckt_1_ti.'
- sramPaths = [ tiPath+'subckt_3695_sram4k_0.subckt_144_SPBlock_512W64B8W'
- , tiPath+'subckt_3696_sram4k_1.subckt_144_SPBlock_512W64B8W'
- , tiPath+'subckt_3697_sram4k_2.subckt_144_SPBlock_512W64B8W'
- , tiPath+'subckt_3698_sram4k_3.subckt_144_SPBlock_512W64B8W'
+ # Thoses ids are dependent on Yosys. They need to be adjusted whenever
+ # the design changes.
+ #tiId = 38695
+ tiId = 38381
+ #sramId = 3695
+ sramId = 3300
+ tiPath = 'subckt_{}_test_issuer.subckt_1_ti.'.format(tiId)
+ sramPaths = [ tiPath+'subckt_{}_sram4k_0.subckt_144_SPBlock_512W64B8W'.format(sramId)
+ , tiPath+'subckt_{}_sram4k_1.subckt_144_SPBlock_512W64B8W'.format(sramId+1)
+ , tiPath+'subckt_{}_sram4k_2.subckt_144_SPBlock_512W64B8W'.format(sramId+2)
+ , tiPath+'subckt_{}_sram4k_3.subckt_144_SPBlock_512W64B8W'.format(sramId+3)
]
sram = DataBase.getDB().getCell( 'SPBlock_512W64B8W' )
if not sram:
)
ls180Conf.placeArea = Box( coreAb.getXMin()
, coreAb.getYMin()
- , coreAb.getXMax()
+ , coreAb.getXMax() - chipBuilder.conf.sliceStep
, coreAb.getYMax() - sramAb.getHeight() - 2*sliceHeight
)
Breakpoint.stop( 99, 'After core placement.' )