blob: 3f3ed6fb4fd3d8c7a78e4efb66279367d603f09f [file] [view]
# 8-bit SAR-ADC with offset calibration
This is a mixed-mode project featuring a 8-bit SAR-ADC, with offset calibration.
The logic section is synthesized using the openlane digital flow.
## SAR
The adc is composed of a top-plate sampled CDAC, with a capacitor array of
mimimum sized MIM caps.
The comparator is a single-stage regenerative comparator, with a MOM array
for trimming ADC offset.
## Layout
The layout is created using magic as a pcell generator and drc checker, while the
connection of the design is done using klayout.
![layout](https://github.com/chrische-xx/caravel_user_project_analog/blob/main/docs/layout.png)
## Simulation
The simulation is carried out using ngspice using the mixed-mode xspice capabilities.
The digital section is synthesized using yosys that can then be bridged to/from the
analog section.
The Schematics are created using xschem, which also serves as the simulation framework.
![testbench](https://github.com/chrische-xx/caravel_user_project_analog/blob/main/docs/pictures/xschem.png)
The SAR schematic:
![testbench](https://github.com/chrische-xx/caravel_user_project_analog/blob/main/docs/pictures/sar.png)
The simulation output can then be viewed in both analog and digital domain.
Digital waveforms displayed using GTKWave
![gtkwave](https://github.com/chrische-xx/caravel_user_project_analog/blob/main/docs/pictures/gtkwave.png)
Analog waveforms displayed using Gnuplot in interactive mode.
![gtkwave](https://github.com/chrische-xx/caravel_user_project_analog/blob/main/docs/pictures/gnuplot.png)