From 57432bbb504a7d77ee31bf70fae53d3b953e516e Mon Sep 17 00:00:00 2001 From: Jean-Paul Chaput Date: Sun, 27 Dec 2020 12:43:26 +0100 Subject: [PATCH] * Bug: In cumulus/plugins.chip.configuration, check that the core height is a multiple of sliceHeight. Otherwise, in some situations, fixed cell may peek out of the placement area, triggering Coloquinte assert (which says that the top of the cell is *above* the top row). --- cumulus/src/plugins/alpha/chip/configuration.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cumulus/src/plugins/alpha/chip/configuration.py b/cumulus/src/plugins/alpha/chip/configuration.py index c1f9551d..b3938598 100644 --- a/cumulus/src/plugins/alpha/chip/configuration.py +++ b/cumulus/src/plugins/alpha/chip/configuration.py @@ -194,6 +194,9 @@ class ChipConf ( BlockConf ): self.coreSize = (ab.getWidth(), ab.getHeight()) trace( 550, '\tSetting CORE abutment box:{}\n'.format(ab) ) self.core.setAbutmentBox( Box( 0, 0, ab.getWidth(), ab.getHeight() ) ) + self.coreSize = ( self.coreSize[0] - self.coreSize[0] % self.sliceStep + , self.coreSize[1] - self.coreSize[1] % self.sliceHeight ) + self.core.setAbutmentBox( Box( 0, 0, self.coreAb.getWidth(), self.coreAb.getHeight() ) ) trace( 550, '\tCORE ab:{}\n'.format(self.coreAb) ) coreX = (self.coronaAb.getWidth () - self.coreAb.getWidth ()) / 2 trace( 550, '\tCore X, {} '.format(DbU.getValueString(coreX)) )