Uploaded by Furkan Furat

EEE(M)410 Assignment1 Spring2024

advertisement
Electric-Electronics Engineering
Department
EEM/EEE 410 (01)
Integrated Circuit Design
By
Assistant Prof. Dr.
Gülşah DEMİRHAN AYDIN
Assignment 1:
Standard Cell Design
Due to be submitted to ÖYS by March 22nd 2024 11:55 pm
1
TABLE OF CONTENTS
1. INTRODUCTION
................................................................................................................................................. 3
2. STANDARD CELL DESIGN
................................................................................................................................... 4
2.1. Standard Cell Design Concept
.................................................................................................................. 4
2.2. Standard Cell Layout for an Inverter
........................................................................................................ 4
2.3. 2-Input AND Design Using Standard Cells
................................................................................................ 5
3. DC SWEEP ANALYSIS
......................................................................................................................................... 7
4. TRANSIENT ANALYSIS
......................................................................................................................................10
Back-Annotation of Parasitics
.........................................................................................................................11
5. POWER DISSIPATION ANALYSIS
......................................................................................................................12
6. An Alternative Way for Digital Circuits Simulation
.........................................................................................13
2
1. INTRODUCTION
The following aspects of VLSI design will be explored in this exercise, along with the corresponding
capabilities of Electric VLSI Design System CAD tools:
Chapter 2: Standard Cell Design using 2 input AND gate as an example
Chapter 3: Inverter and AND Gate DC Analysis
Chapter 4: AND Gate Transient (AC) Analysis
Chapter 5: AND Gate Power Dissipation Analysis
You will document, and electronically submit a subset of your work. Follow the directions carefully in
order to make sure you are not missing any portion of your submission.
3
2. STANDARD CELL DESIGN
2.1. Standard Cell Design Concept
Today’s digital VLSI designs are composed of millions of logic gates, which corresponds to billions of
transistors. Designing such a complex machine on a time schedule requires that design libraries are built
and utilized heavily for digital design so that common gates or blocks can be repeatedly instantiated.
Therefore, all the common cells should be designed in such a way that they can be used in many different
parts of the design. Along with the standard cell library use, there arises the need to fully characterize
the AC and DC characteristics of any given cell, and generate a known specification for the design cell
under well-defined environmental and loading conditions. In this CAD assignment we will provide a
flavor of the standard cell design process by considering a 2-input AND gate as an example. Although
temperature and supply voltage will be fixed in these exercises, keep in mind that in a full
characterization flow, thermal and supply fluctuation events are also included.
The determination of the location of the building blocks in the chip is called "placement".
Interconnecting their I/O and power terminals is called "routing". Both placement and routing are very
important in digital design, and directly impact the area and speed. Therefore, care must be taken in
these design steps. One needs to place and route a number of primary or primitive gates (like inverters,
nand/nor gates) in order to build complex circuits (like counters, ALUs, etc.). It is possible to place
digital gates in a number of ways, but the simplest method involves connecting all the gates in the same
row. In other words, digital gates will be placed next to the others in the same row. A number of
requirements should be satisfied in doing this:
➢ The heights of the cells should be exactly the same. Typically one would build minimum sized
cells for minimum loads. One would then add scaled-up versions of such libraries to larger sizes
for driving large fanout and/or long interconnect, but we will not be concerned about these
alternate cells. The width of the cells in any given library will vary. For simple circuits, width
will be small, and for complex circuits it will be wider.
➢ When we place the circuits next to another, we want their power lines (VDD and GND) to be
continuous. The height of these lines should therefore be same and they should cover all the
width of the cell.
➢ Substrate and nwell contacts are often placed under VDD and GND lines. This method
decreases the minimum width of the cell, and may provide better biasing of the substrate and
the nwell. If we place two cells next to the other, the layout of each should ensure no layout rule
violation occurs.
2.2. Standard Cell Layout for an Inverter
The Cadance tutorial document and the example of a 180 nm standard cell layout is for an inverter, as
depicted in Figure 2-1. The sizes of the transistors are given as followings: for PMOS W= 600 nm and
L=180 nm and for NMOS W=240 nm and L=180 nm (it makes inverter nearly symmetric). The
following are the layout guidelines. Keep in mind there is not a single way to build a standard cell
library, and the guidelines may vary depending on the overall strategy. The most important aspect is to
be consistent from one cell to another.
➢ The height of the cells in the library will be fixed at 7 μm (as measured from the upper edge of
top NWELL to the lower edge of bottom M1 line). This sets the vertical pitch for all standard
library components that will share the same row with this inverter. Although the width of the
inverter shown in the figure is 2 μm (set by the width of the NWELL), it should be noted that
NWELL layer and the PIMP/NIMP layers can run over the edges of the layout when this cell
is instantiated in the final full layout design. When another cell is inserted next to this one, these
layers may be continuous, and possibly overlapping with the same layer in the neighboring cell,
as long as there is no other DRC error.
➢ The substrate and nwell contacts have been placed under VDD and GND lines.
➢ The width of the power lines is non-minimum, at 0.8 μm. Layout with wide power lines is a
common practice in order to minimize resistive (IR) drops and other failures in supply voltage
rails. The power lines extend across the whole width of the layout. By convention, use the upper
power line as VDD and lower one as GND.
4
➢ In this example you will find few contacts have been used (as many as layout rules allow)
between subsrate/NWELL and MET1 (Metal 1) in order to decrease the overall contact
resistance. In general as many contacts as possible should be used.
➢ The I/O pins should use MET2 (Metal 2) in order to enable ease of connection to the pins from
outside.
➢ The poly length is minimized in order to reduce the resistance of input routes.
Figure 2-1 Standard inverter cell layout in 180 nm with 7 μm height for a minimum sized cell library.
5
2.3. 2-Input AND Design Using Standard Cells
Figure 2-2 depicts the layout of a 2-Input AND gate, which is built by instantiating both in schematic
editor and layout editor two different standard cells, a 2-Input NAND and an Inverter. Although the
widths of the cells are different, the cell heights and the power line heights are the same, providing
continuous power line connection. The width of the NAND (3 μm), and the Inverter (2 μm) are set so
that when the two cell layouts are placed next to each other, as shown, no DRC violations occur e.g.
NPLUS areas need to be spaced by a minimum of 0.44 μm. Note content of the instantiated cells can be
hidden in layout view (Figure 2.2. left) using Ctrl-F key combination, and displayed (Figure 2.2. right)
using Shft-F.
I/O PINS: In order to connect I/O pins of different cells, one should take connection outside of the pixel.
Since the upper and lower borders of the cells are covered by MET1 (VDD and GND lines), it is a
common practice to take the connections outside of the pixel using MET2 with vertical lines. Assuming
the cells are connected in a single row, vertical lines will be MET2, and horizontal lines will be MET1.
This method solves all the routing problems as you will discover by experience. In this example all pins
and interconnects between the two cells, including MET1 and MET2 layers, have 0.34 μm (nonminimum) width.
Figure 2-2 2-Input AND layout using standard NAND and Inverter cells – top level instantiation,
interconnect, and pinout (left), and the same with all layers displayed (right).
P1:
i. Complete standard cell schematic design, and layout of the 2-Input NAND and the Inverter
discussed in this chapter, carefully following the described guidelines. Use the cells to build a 2Input AND gate in both schematic and layout, by instantiating them. Finish the interconnection,
again following the metal layer use guidelines as described. Keep in mind both NAND2 and
Inverter should be designed to have similar tPHL and tPLH characteristics.
ii. Include the pictures for all of your cell schematic and layout views. Measure to verify, and
report the vertical and horizontal dimensions for each of the three cells (Inverter, NAND, AND).
iii. Submit tool execution results to show your final AND layout is clean to both DRC and LVS.
6
3. DC SWEEP ANALYSIS
DC sweep is an analysis type for simulating DC response of the circuit for different input signals. These
simulations are used to simulate input/output characteristics of the circuits. For instance, this Chapter
will review the simulation of the voltage transfer characteristics of the inverter. The main steps are the
same as in the transient simulation. Figure 3-1 provides the test bench for the inverter designed as a
standard cell.
Figure 3-1 Inverter Test Bench Circuit for DC Sweep Simulations
➢ Open ADE XL and choose the analysis type from the Analysis > Choose. Select dc from the
Analysis options. Upon pressing the dc, the popup window will be enlarged.
➢ Select Component Parameter under the Sweep Variable menu. Then the window will be
enlarged again.
➢ Press Select Component, go to the schematic window, and click the source component that you
want to sweep (V1 is input source in our case). Upon pressing the input DC source a list will
appear.
➢ Select dc (first line) in that list. Now the DC sweep source and its parameter type have been
successfully selected.
➢ Enter the start and stop points from the Sweep Range.
➢ Select linear sweep mode from the Sweep Type and enter step size (0.05 is enough).
➢ Enter OK from the top menu of this popup window. Figure 3-2 shows the popup window that
you will fill out.
7
Figure 3-2 Analysis pop-up window filled in for DC sweep.
➢ Select the outputs you want to observe (input and output in this case). Finally, run the simulator.
8
➢ At the end of the simulation you should see two graphs plotted with respect to Vin voltage (V1).
One is the desired output (Vout vs Vin) voltage, and the other one is the input voltage (Vin vs
Vin). For a fully symmetric inverter, the intersection point will be at Vin=Vdd/2.
➢ Figure 3-3 depicts the final DC simulation result for the inverter standard cell design discussed
in Chapter 2.
➢ Note by right-clicking on the legend on top of the simulation window, you can change the graph
properties, colors, etc.
Figure 3-3 Voltage transfer characteristic of the inverter designed in Chapter 2.
P2:
i. Complete a DC sweep analysis for the inverter you previously designed to plot the voltage
transfer characteristics. Submit your plot in the report.
ii. Complete a DC sweep analysis for each of the inputs of the 2-Input AND gate by building a
similar test bench for this circuit. Fix one of the inputs (at VDD) while you are linearly ramping the
other input as you did for the inverter. Submit your simulation plot. Explain, based on your
observed simulation result, if the AND gate will be expected to have a symmetric noise margin
between high and low (or if the rise and fall times are expected to be equal).
9
4. TRANSIENT ANALYSIS
Use the test bench shown in Figure 4-1 to simulate the 2-input AND gate you designed in Chapter 2.
Utilize the vpwl (from analog library), a piecewise linear voltage source, at both inputs in order to
capture all high-to-low and low-to-high transition scenarios. In the test bench, set rise time to 20 ps at
the inputs, voltage supply of 1.8 V, and output load of 5 fF.
Figure 4-1 Test bench schematic for 2-Input AND detailed transient analysis.
Measure tpHL and tpLH for relevant combinations of input vector transitions, shown in Table 4.1. Use the
“Create Marker” (red flag) button in top menu or under “Marker” selection. Create a vertical marker
and position it by dragging to 50% of the input signal. Then hit ‘d’ for delay, and position the new cursor
to 50% of the corresponding output signal for each transition in the Virtuoso waveform window. If you
select Window>Assistants>Marker ToolBox, you can easily drag cursors to measure all delays of
interest and then Window>Assistants>Vert Marker Table will print all measured delays into a table at
the bottom. Using this method, fill in Table 4.1 by filling in the column for your delay results. Make
sure your simulation timing allows the output signal to be fully transitioned before the next input
transition starts. Otherwise, your measurements may be inaccurate for full swing signals.
P3:
i. Are the measured differences in timing consistent with your expectations? What happens when
both inputs transition to 0 together? What happens if one of the inputs transition to 0 while the
other is 1, and vice versa? What are the worst case tPHL and tPLH? What is the worst case
propagation delay, tpd?
10
ii. After you mark different scenarios in your waveform, submit the filled version of Table 4.1 to
demonstrate your results, together with the schematic or drawing that shows the connectivity
between inputs A and B and particular MOSFETs. Make sure you comment on the results.
Back-Annotation of Parasitics
You can always back-annotate the parasitic R, C, L values from layout to schematic in order to get a
more accurate idea of the performance. First, follow through the relevant sections of CAD Assignment
1 in order to generate an “av_extracted” (parasitic) cell view for the 2-Input AND gate. Go to “Launch”
menu > “Parasitics” in the 2-input AND schematic. A new menu item named “Parasitics” will appear
on top. Select “Parasitics” → “Setup”. Make sure under extracted cellview cell name and view name
(av_extracted) are correct. You can then select “Show Parasitics” under the same menu. Only the
capacitive parasitics will be useful to you. Therefore, you can hide the other resistance/inductance
information by deselecting these options in “Options” under “Parasitics” menu item. You can also
generate a report through “Report Parasitics” selection.
P4:
Extract the 2-Input AND parasitics (intrinsic capacitance), and redo the previous timing
simulation again. Identify any differences from the data table provided in (P3) by first generating
a new marker data table for the same transition types. Make sure to submit your new table, clearly
annotating the results.
5. POWER DISSIPATION ANALYSIS
You will take advantage of the transient simulations in the previous Chapter in order to estimate the
dynamic power dissipation. As the waveform to be plotted, the current of the VDD pin should be chosen.
For this, click on Outputs > To be plotted > Select on Schematics on Analog environment menu, and
click on the upper node of the "vdc". This node will be circled. Choose also the input and output voltage
nets to be plotted. After you run the simulation, investigate the menu selections associated with the
waveforms, in order to split the current waveform to a different plot (strip), as depicted by light blue
waveform in Figure 5-1.
As observed, dynamic power is only dissipated at the points when the state of the inverter changes. In
order to calculate the average of this current waveform, do the following:
➢ Invoke the calculator from Tools > Calculator from the wavefom window.
➢ Select “special functions” in the lower menu (where it by default usually picks math). Pick
average.
➢ When you evaluate the buffer, current value should be displayed in the calculator buffer as
averaged over the full simulation time. It is possible to zoom into the particular part of the
waveform, and use “clip” function of the calculator to average the waveform only over the
zoomed timing window. To do this, you need to first clip a certain time range of the waveform,
and then average its value.
You can use the “Math” functions in the calculator to generate a power waveform by multiplying the
current waveform with the constant VDD (1.8 V in this case). This is represented as the green waveform
in the lower strip in Figure 5.1. You may also plot the energy consumption over time by using the
indefinite integral function (iinteg) under “Special functions” to integrate the power curve, as shown by
the red curve in the lower strip of Figure 5-1. Note the scale of the red energy curve shows on the right
hand side of the plot – energy dissipation is initially 0, and increases in magnitude over time as expected.
11
Figure 5-1 Current, power and energy simulations (below) across the switching activity of interest
(above).
P5:
i. Submit the power and energy simulation plots in your report for your defined input waveforms.
ii. Which input transition(s) result(s) in the largest peak in power dissipation? Explain why.
iii. Which input transition(s) result(s) in the largest energy dissipation? Again explain.
6. An Alternative Way for Digital Circuits Simulation
To simulate digital circuits we can use “vbit” as a source. It can be found under analogLib and
generates digital output according to the data pattern. In Figure 6-1, it is used for transient analysis
of the two input AND gate.
Figure 6-1 Schematic of the Circuit
12
The properties of the “vbit” is given in Figure 6-2.
Pattern Parameter data: series output data
Period: Time for 1-bit data
Figure 6-2 Properties of "Vbit"
In Figure 6-3, transient simulation results are given where data patterns are chosen arbitrarily.
13
Figure 6-3 Waveforms
Note: Notice that all the figures in the assignment are belong
to Cadance and ADE softwares. They are added just for
cross-check. The order of tasks will be same but electric vlsi
design system and ltspice softwares’ interfaces will be
different
14
Download