Initial Setup

  1. If you have not already, read the BAG3++ documentation. Follow the instructions for initial Server Setup.

  2. This synchronous SAR ADC generator has only been released with the Skywater 130nm process. You should therefore set up a bag3_skywater130_workspace, following the instructions on the page.

  3. cd into your set-up workspace directory.

  4. Clone the bag3_sync_sar_adc repo. Link to the github can be found here.

  5. Go into the data directory by running cd data in the workspace directory.

  6. Clone the yaml data folder. Currently only the Skywater 130 configurations are available.

  7. In .bashrc_pypath add the following to include the bag3_sync_sar_adc generator directory in the PYTHONPATH:

    export PYTHONPATH="${PYTHONPATH}:${BAG_WORK_DIR}/bag3_sync_sar_adc/src"
    
  8. In bag_libs.def, add bag3_sync_sar_adc on a new line.

  9. In cds.lib.bag add the following to include the bag3_sync_sar_adc OA views in your virtuoso setup. This is optional if you do not want to use virtuoso:

    DEFINE bag3_sync_sar_adc $BAG_WORK_DIR/bag3_sync_sar_adc/OA/bag3_sync_sar_adc
    
  10. To generate a design from this repo run the following command in your workspace:

    ./gen_cell.sh data/bag3_sync_sar_adc_data_skywater130/specs_gen/sar_lay/your_yaml.yaml
    

    To generate the netlist with BAG, add -netlist to the above command. For a full list of optional arguments use:

    ./gen_cell.sh -h