Design Flow


Back to the UMASS VLSI page

U-Mass supports 2 types of custom IC design:

Full Custom: The designer creates layout masks by hand.

Standard Cell: (Thanks to NCSU and VTVT) The designer uses verilog code to describe the system and lets the computer make the masks.

The full custom flow can produce very compact layouts, which run fast, but doing so can be involved. Using standard cells greatly reduces designer workload, but the resulting implementations can have wasted area and typically run slower. The following design flow and links are intended to introduce you to the tools involved. Each link contains an example of the approach or a tool you may use.

Full Custom: There is a nor and example in the vlsix58.tar.gz file with all the steps complete.

Architecture Design: The first step is the architecture design. VerilogXL allows you to specify and test your system at the behavioral level.

Logic Design: Using the Cadence schematic editor in icms, you can develop and extract a schematic of your system. Logic verification can be done with either VerilogXL or IRSIM, a simple logic simulator. Both require modifications to the extracted netlist, but these perl scripts should do it nicely. (schm2vlog.pl for Verilog) or (schm2sim.pl for IRSIM). The Cadence tool icms also has a the to simulate a design using Verilog. I have found this to be cumbersome, but you may attempt this by reviewing the process in cdsdoc (AMS tools).

Circuit Design This differs from logic design in that you must now account for the electrical properties of the devices. The first step is to calculate the approximate size of the transistors by hand calculations. After this, modify the properties of the transistors in your schematic to match your calculations. Verify both the speed and power consumption of your design using either extracted netlists and hspice or Spectre inside icms. (schm2spice.pl will help modify the extracted netlist for hspice)

Layout Design: After your schematic is verified and simulated you will actually build the mask layers in the layout editor. Now you must perform 2 steps to assure your layout works properly.

- First you should verify the logic. You can do this using the layout vs. schematic option in layoutPlus or by extracting the circuit and running either Verilog (via lo2vlog.pl) or IRSIM (via lo2sim.pl).
- After verifying the functionality, you should re-simulate the system for performance using hspice (via lo2spice.pl).

Standard Cell Design:

Architecture Design: The first step is the architecture design. VerilogXL allows you to specify and test your system at the behavioral level.

Layout Synthesis: You will use 2 tools:

- Synopsys will link your verilog code to the standard cell library. The result is a netlist of standard cells.
- Silicon Ensemble takes the netlist and places and routes the cells.

Layout Verification and Simulation: After the layout is generated you can use the tools to verify and simulate your system.

- First you should verify the logic. You can do this by extracting the circuit and running either Verilog (via lo2vlog.pl) or IRSIM (via lo2sim.pl).
- After verifying the functionality, you should extract with parasitics and simulate the system for performance using hspice (via lo2spice.pl).