# -*- Mode:Python; explicit-buffer-name: "alliance.conf" -*- cellsTop = '/usr/share/pharosc/alliance/cells/' allianceConfig = \ ( ( 'SYMB_TECHNO_NAME' , helpers.symbolicTechno ) , ( 'REAL_TECHNO_NAME' , helpers.realTechno ) , ( 'SYMBOLIC_TECHNOLOGY', helpers.symbolicDir+'/technology.conf' ) , ( 'REAL_TECHNOLOGY' , helpers.realDir +'/technology.conf' ) , ( 'DISPLAY' , helpers.sysConfDir +'/display.xml' ) , ( 'CATALOG' , 'CATAL') , ( 'WORKING_LIBRARY' , '.') , ( 'SYSTEM_LIBRARY' , ( (cellsTop+'vsclib' , Environment.Append) , ) ) , ( 'SCALE_X' , 100) , ( 'IN_LO' , 'vst') , ( 'IN_PH' , 'ap') , ( 'OUT_LO' , 'vst') , ( 'OUT_PH' , 'ap') , ( 'POWER' , 'vdd') , ( 'GROUND' , 'vss') , ( 'CLOCK' , '^ck.*') , ( 'BLOCKAGE' , '^blockage[Nn]et*') ) # Format of routingGaugesTable (dictionary): # A list of entry of the form: # ( METAL_NAME, (Direction, Type, depth, density, offset, pitch, wire_width, via_width) ) routingGaugesTable = {} routingGaugesTable['vsclib'] = \ ( ( 'METAL1', ( RoutingLayerGauge.Vertical , RoutingLayerGauge.PinOnly, 0, 0.0, 4, 8, 3, 2 ) ) , ( 'METAL2', ( RoutingLayerGauge.Horizontal, RoutingLayerGauge.Default, 1, 7.0, 0, 8, 4, 2 ) ) , ( 'METAL3', ( RoutingLayerGauge.Vertical , RoutingLayerGauge.Default, 2, 0.0, 4, 8, 4, 2 ) ) , ( 'METAL4', ( RoutingLayerGauge.Horizontal, RoutingLayerGauge.Default, 3, 0.0, 0, 8, 4, 2 ) ) , ( 'METAL5', ( RoutingLayerGauge.Vertical , RoutingLayerGauge.Default, 4, 0.0, 4, 8, 4, 2 ) ) #, ( 'METAL6', ( RoutingLayerGauge.Horizontal, RoutingLayerGauge.Default, 5, 0.0, 0, 8, 4, 2 ) ) #, ( 'METAL7', ( RoutingLayerGauge.Vertical , RoutingLayerGauge.Default, 6, 0.0, 4, 8, 4, 2 ) ) ) # Format of cellGaugesTable (dictionary): # A list of entry of the form: # ( METAL_PIN, xy_common_pitch, slice_height, slice_step ) cellGaugesTable = {} cellGaugesTable['vsclib'] = ('metal2', 8.0, 72.0, 8.0)