The analog pins are labeled
ua (ua stands for “user analog”). The number of pins that will actually be connected to pads depends on the number of analog pins that you defined in the
pinout section in info.yaml (and paid for).
For example, if you purchased two analog pins, only
ua will be connected to the pads. The remaining pins will not be connected.
The path between the analog pads and the your project (the ua pins) is expected to have the following properties:
Analog pins are limited to 1.8V. If you require 3.3V for your design, please contact us to discuss options.
You are not allowed to use the metal 5 layer in your design, as it’s used by Tiny Tapeout’s power grid.
There are several templates available, each for a different number of tiles. The templates include all the eight analog pins, but only the pins that you paid for will be connected to the pads. In addition, the templates also include all the standard digital pins.
Most analog designs should fit into the smallest template, tt_block_1x2_pg_ana.def.
Important: Do not leave any floating digital output pins in your design. Connect any unused
uio_en pins to GND.
The power ports need to be named
VGND and need to be placed on
metal 4. They both need to have the same width, between 1.2 and 2.0 um. Their height should be at least 95% of the design’s total height.
The actual metal area can be larger, but the port area must fit these dimensions.
Projects with analog pins must be two tiles high. This means that the minimum price for the area of the project is $100 (each tile is $50).
In addition, there is a per-pin cost. The price for analog pins is $40 per pin for the first four pins (in a project), and $100 per pin for additional pins.
Example: a design that takes 1x2 tiles and uses 4 analog pins would cost $260 ($100 for the tiles, and $160 for the analog pins). This price is only for including the design in the shuttle, and does not include the cost of the ASIC, PCB, or shipping.
Note: Analog designs are currently in beta. There’s a small chance that the changes will change before the deadline for Tiny Tapeout 6, or that we will have to postpone the analog design support to a future shuttle. If you have any questions, please join the Tiny Tapeout Discord and ask in the #analog channel.
These instructions assume you are using the Magic VLSI tool, but you can do the same with Klayout or proprietary tools.
Make sure the version of Magic matches the PDK.
Start your design from the tt06-analog-template repository. Click on the green “Use this template” on top of the page, and select “Create a new repository”.
Tiny Tapeout provides templates for custom GDS submissions. These templates include all the required pins on the metal 4 layer. Do not change the pin sizes or positions. Download one of the analog templates as a starting point for your design.
The analog pins are labeled ua through ua (ua stands for “user analog”). The number of pins that will actually be connected to pads depends on the number of analog pins that you defined in the “pinout” section of info.yaml and purchased.
For example, if you purchased two analog pins, only ua and ua will be connected to the pads. The remaining pins will not be connected.
It’s important that you are consistent with your naming. The name of the project must match the final GDS and LEF files.
Decide on a name for your module (top cell). The top level module name must start with ’tt_um_’, and it must be unique on the shuttle, so we suggest including your github username, e.g. tt_um_username_amazing_adc.
This file is used to ‘blackbox’ your design when we integrate it into the Tiny Tapeout shuttle.
Edit src/project.v and replace
tt_um_example with the actual name of your top module.
Edit docs/info.md and add a description of your project.
Use your preferred analog flow to design, simulate, layout, extract, LVS and post layout simulate.
A quick way to get started is to use this tcl script to draw and label the power ports.
Save the resulting GDS file in the
gds folder, and the LEF file in the
lef folder. The file names must match your
top_module property (e.g.
If you use magic to create your design, make sure to export the LEF file with the “-pinonly” option, e.g.:
lef write ../lef/tt_um_project_name.lef -pinonly
Export the GDS by running:
gds write ../gds/tt_um_project_name.gds
Go to app.tinytapeout.com to submit your design.