(c) 2023 Harald Pretl, Institute for Integrated Circuits, Johannes Kepler University, Linz
This project is based on efabless' Caravel and instantiates a SAR-ADC with bridge logic for serial input and output.
The documentation is pretty rudimentary for now, but will be improved in the future.
- Technology:
sky130A
- SAR-ADC: https://github.com/iic-jku/SKY130_SAR-ADC1
- Used IOs:
GPIO[5]
toGPIO[13]
- Power supplies:
VCCD1
/VSSD1
, supply voltage 1.8V - Padframe:
caravel_user_project_analog
GPIO[5]
: ADC ready signalconv_finish
GPIO[6]
: Serial outputdato
GPIO[7]
: Serial inputdati
GPIO[8]
: Parallel loadload
GPIO[9]
=ANALOG[2]
: ADC negative inputinn_ana
GPIO[10]
=ANALOG[3]
: ADC positive inputinp_ana
GPIO[11]
: Digital resetrst_n
GPIO[12]
: ADC conversion start triggerconv_start
GPIO[12]
: Clock for bridge logic and ADC charge pumpclk
- Magic changes cells when reading in a GDS. When this is not wanted (e.g., when using an existing IP block in GDS form as part of a larger design), then before reading the GDS with
gds read file.gds
in Magic dogds readonly true
.- This sets the property
GDS_FILE
in Magic, that it uses as reference when writing the GDS from the MAG file later. - When a cell needs to be changed, this property has to be removed by doing a
property GDS_FILE ""
on this cell.
- This sets the property
- The SPICE netlist of the analog design normally resides in the
xschem
folder. However, in order to pass the consistency check of the MPW-precheck of efabless, the netlist has also to be placed into the foldernetgen
. - Run a local mpw-precheck early in order to detect issues. The used DRC ruleset from KLayout can differ to whatever one is using locally, so expect new DRC errors to pop up.
- This repo https://github.com/iic-jku/sky130_adc_202311 passes all the mpw-prechecks and the TO procedure on the efabless site, so can be used as a reference and template.