Example #1
0
    def make_tdb(self, layermap=''):
        """
        Makes a new TemplateDB object. If no routing grid parameters are sent in, dummy parameters are used.
        """
        self.impl_lib = self.specs['impl_lib']
        if 'routing_grid' in self.specs:
            layers = self.specs['routing_grid']['layers']
            spaces = self.specs['routing_grid']['spaces']
            widths = self.specs['routing_grid']['widths']
            bot_dir = self.specs['routing_grid']['bot_dir']
        else:
            # Use dummy routing grid settings
            layers = [1, 2, 3, 4, 5]
            spaces = [0.1, 0.1, 0.1, 0.1, 0.2]
            widths = [0.1, 0.1, 0.1, 0.1, 0.2]
            bot_dir = 'y'

        routing_grid = RoutingGrid(self.prj.tech_info, layers, spaces, widths,
                                   bot_dir)
        self.tdb = TemplateDB('template_libs.def',
                              routing_grid,
                              self.impl_lib,
                              use_cybagoa=True,
                              name_prefix=self.specs.get('name_prefix', ''),
                              name_suffix=self.specs.get('name_suffix', ''),
                              prj=self.prj,
                              gds_lay_file=layermap)
Example #2
0
def make_tdb(prj, target_lib):
    layers = [3, 4, 5, 6, 7, 8, 9, 10]
    spaces = [0.1, 0.1, 0.2, 0.2, 0.2, 0.2, 0.4, 0.4]
    widths = [0.1, 0.1, 0.2, 0.2, 0.2, 0.2, 0.4, 0.4]
    bot_dir = 'y'

    routing_grid = RoutingGrid(prj.tech_info, layers, spaces, widths, bot_dir)
    tdb = TemplateDB('template_libs.def', routing_grid, target_lib, use_cybagoa=True)
    return tdb
Example #3
0
def make_tdb(prj, target_lib, specs):
    grid_specs = specs['routing_grid']
    layers = grid_specs['layers']
    spaces = grid_specs['spaces']
    widths = grid_specs['widths']
    bot_dir = grid_specs['bot_dir']

    routing_grid = RoutingGrid(prj.tech_info, layers, spaces, widths, bot_dir)
    tdb = TemplateDB('template_libs.def', routing_grid, target_lib, use_cybagoa=True)
    return tdb
Example #4
0
def make_tdb(prj, specs, impl_lib):
    grid_specs = specs['routing_grid']
    layers = grid_specs['layers']
    spaces = grid_specs['spaces']
    widths = grid_specs['widths']
    bot_dir = grid_specs['bot_dir']

    # create RoutingGrid object
    routing_grid = RoutingGrid(prj.tech_info, layers, spaces, widths, bot_dir)
    # create layout template database
    tdb = TemplateDB('template_libs.def', routing_grid, impl_lib, use_cybagoa=True)
    return tdb