Two Years of asic-soc Blog


Its been two years since I started blogging on this blog. I thank all the readers who supported this activity. I would like to share some sweet and bitter moments since the inception of this blog.


About Myself

I am not a professional blogger. I have not seen all corners of the VLSI industry. When I started this blog I was a student of VLSI domain. Forget about my 3 years experience in embedded domain. As of now, I have 2 years of pure backend experience catering to Synthesis, STA, Place and Route. Trying my level best to become an expert in Low Power Design methodologies. Naturally, one can find more articles related to low power designs in this blog.






About My Articles


One senior fellow has mailed long back that he loved to read my simple blog posts. He said he has attended my training sessions on some Synopsys tools somewhere in USA. He believed that I was a Synopsys fellow. (May be because I was quoting Synopsys tools most often in my articles). I replied him back that I have just started my career in VLSI industry in India, hence there is no chance to find me in USA! Nevertheless, it feels great  when somebody likes my blog!


Some more emails I received requested guidance for their educational projects. Some people sent their resumes to me believing that I can help them in getting a good job opportunity for them. How could I tell these people that I myself needed both from other professionals of the industry when they sent those mails to me?!! But, of course, now I am in better position, at least to share knowledge.




Is it right to blog technical topics?


Sometime back I received a comment on one of  blog posts. It said, "It is completely unethical to blog on topics for which you have been paid for (from the employer). You may be laid off in this recession time". It seems this is never ending discussion whether blogging is professionally ethical or not? I have seen several round of discussion in DAC and other conferences, as reported by fellow senior bloggers of VLSI bloggosphere, on using on line social medias as a tool of expression for techno-professional part of life. As per as asic-soc blog is concerned, I never discussed anything about my projects I did for my employer. If you find any project details, then those are all what I did in my educational days. Rest of the articles discuss about general technical topics of VLSI with my view of angle. Finally, if somebody finally gets laid off because of his/her blog, then it must be considered as honor of appreciation. Then, I am sure, the blogger will be absorbed in some other company immediately purely due to his/her blog!!


Blog statistics


How much I earn from blogging?


On an average I earned $60 per month for last one year! That means around 3000 rupees. Not a bad amount considering small VLSI design community in the world !


Blog has readers from all around the world, USA and India, being top on the list. Feedburner says it has around 700 subscribers as of now.


So ...thats it.... Let me get back to some technical stuffs from next post onwards !!

Read the rest of this article >>

Setup Time and Hold Time-Story of Poor Flip-Flop !

It is always interesting to talk about setup and hold!! Don’t think that if anybody asks questions related to setup time and hold time, he or she doesn’t know about setup and hold. He or she may know everything about setup time and hold time, time being it confuses. The term “setup” and “hold” is such a word in this VLSI – ASIC design world which only creates continuous questions, hard to explain in words, at least i myself is concerned! I remember, during my MTech days my professor used to say always "whole VLSI world is depending on two pillars, setup time and hold time". It would be more realistic if i say that he used to scold us !!

The doubt why is set up and hold in flip-flop always lingers in my mind. Being a digital design engineer, i should be able to go beneath transistor and convince myself the existence of setup delay and hold delay. I know metastability state of the flip flop or charging or discharging of capacitor on a CMOS, upon which all the gates, flip flops are built. When i say "i know metastability" i may know about its standard definition as per data book. If i advent into getting answer to "why metastability", i believe i must be able to understand setup time and hold time.



Let me try to dig myself. What i know? Flip flop is combination of 2 latches, and latch is level triggered. One is positive level triggered and another in negative level triggered. If so whatever data sent to two latches will be launched or captured on different edges. Then why metastability? Why set up time? Why hold time?

So how two level triggered latches form an edge triggered flop? Let me get in to the latch. After all how it works? Say one input is given...then when can i expect the output data? Is it immediately ? or does it take some time ?

If i remember working of simple SR latch from several theory classes and text books i know that any latch output doesn’t stabilize immediately. Output changes to intermediate values of 0 (or 1) then 1 (or 0) then finally it gets settles at 0 (or 1). It used to take 2 or 3 looping of data between NOR (or NAND ) gates.
So in this way it takes 2-3 data cycles....right....This must happen for both latches of flop. Hence this must take some time, may be in nano second or pico second, but it consumes some time !


Now, from the working principle of Master slave flip flop, i know that both latches won’t work together. Because i have arranged flop circuit such away that slave follows master. It means to say that when master latches the data slave sleeps, then slave follows master. Or in other words, slave releases the data which is latched earlier by the master. As i understood earlier, to latch the data, master takes 2-3 cycle. Same should be the story for slave.

Now let me extend my imagination to the next horizon.

To a flop which is exclusively designed as edge triggered with basic gates itself, may be NOR or NAND based, or may be based on CMOS full custom circuit, same of 2-3 cycle delay applies here as well. All that happens is those 2-3 cycles to stabilize data which is coming in and going out !

I should analyze practical conditions of latching the data.

Considering one internal data cycle is completed in logic gate,data is not yet stabilized within this latch. If i allow one more input to enter at the same time what will happen to that data which was under process? Naturally latch may start processing new input data or may go to unknown loop state that i think i call as metastable state ! Poor latch, it must have completely confused, whether to drop the catching of present data or should i try to catch new one? I am the boss and hence i, as a designer of latch, has instructed latch to to both, to process present data (so that it can catch it and memorize it), then look for new one. As a duty bound soldier latch will try to do both.

Same applies for data that was already latched but about to leave out of the latch. These two timing delay requirements ultimately constitute setup and hold; hold time is for time required for data to come out while setup for data to get latched. Hence, i believe, hold is always related with launch clock whereas setup is related with capture clock.

So, what I can i understand is i don’t need a reference for hold since it’s already in flop. That’s why for hold analysis, clock period is always considered as 0ns, which virtually turns out to be no clock. ( or..."hold is not dependent on clock"). This is not always true. There are exceptional cases where data is not launched at 0ns with respect to capture clock. These kind of situations should be dealt separately.

Always i must remember that flop has latch structure, this means to say, when one latch works another doesn't do any work. So if i consider register to register path, when one is launching data next one is ready to receive data. That’s all ! It continues like that way throughout the digital circuit. When first one is receiving next flop is ready to launch...and so on. To summarize, it takes one clock cycle to complete the launch or capture. That’s why we always use terms such as present data, previous data when dealing with data flow through flip flop so that i can understand the delay introduced by the flop (due to its latch architecture) which i technically termed it as setup time and hold time.

As per the definition, data should be stable at input before clock pulse ticks at the clock pin of the flip flop. I understand from the definition that data at the input should have completed the process of 2-3 cycle interchanging values at the receiving gates section of the latch to settle down to a known value.  By any means, if clock is faster (or data is slower in its arrival at input), then it can tick at at the time when data might have completed its 1 or 2 cycle interchanging state. Then i am sure any one of these intermediate value can get latched, which may not the actual intended original input data.

For hold, definition is time for which data should be stable after clock edge. Once the clock edge ticks data present within latch tries to go out. I know this takes another 2-3 cycle intermediate values within latch and settle to known value at the output pin of the flip flop. Imagining that output pin is connected to input of another flip flop and there is no combinational circuit in between them, lets assume that delay is zero or very less. In this case intermediate value can immediately reflect at the input of receiving flip flop, which is functionally fatal error. Introduce a delay element which is more than 2-3 cycle delay time (i.e. hold time), then delay element provides sufficient time for the data to settle to known value.

Looking into these aspects minimum period for the clock can't be less than the addition of setup time and hold time. if clock period becomes lesser than this, i am sure flip flop will fail.

But i should be cautious in understanding that  every capture flop becomes launch flop for new data to be launched. So we need to make sure that combinational delay is enough so that new data launched doesn’t kill the data which is already available within flop. And hence hold check is carried out for clock edge which is one lesser than (or previous to) setup check. Or in other words, setup check for present data which is traveling, hold for new (future) data. Present data should reach the capture flop input before capture clock reaches there.(Setup check). New data shouldn't reach too fast to capture flop so that present data doesn't corrupt.

Well...after all these literature exercise i must agree that i don't want all jargons to implement a practical design. What i need is basic understanding of setup time, hold time and how this affects or controls the timing of a timing path. It would be nice if i can fix setup and hold violations by adjusting rest of the parameters such as skew, latency and jitter.
cheers
murali
Read the rest of this article >>

Free download: OpenSPARC 64 bit processor and Nangate 45nm Open Cell Library

OpenSPARC is free 64 bit processor provided by Sun Microsystems. They are available in two flavours:

  • A 64-bit, 32 Thread Chip Multithreaded Microprocessor
  • A 64-bit, 64 Thread Chip Multithreaded Microprocessor


These processors (RTL source files) can be downloaded from OpenSPARC website.

Quoting directly from OpenSPARC website:

"This download area is for hardware design and verification engineers, it includes

* Verilog RTL for OpenSPARC T1 design
* Verification environment for OpenSPARC T1
* Diagnostics tests for OpenSPARC T1
* Scripts and Sun internal tools needed to simulate the design and to do synthesis of the design
* Open source tools needed to simulate the design
* Scripts and documentation to help with FPGA implementation of parts of OpenSPARC T1 design including

SPARC core, Floating point Unit, Cross-bar"

Download OpenSPARC related all source codes, documents, related tools from here.
(registration required)

Well......verification can be carried out with the help of verilog models etc. What about synthesis and other backend process? where to get free timing and physical libraries?

These are common queries we encounter often.
I stumbled across a comany webpage, Nangate, recently which is providing 45nm Open Cell Library !!

Quoting from their website,

"The Nangate 45nm Open Cell Library is an open-source, standard-cell library provided for the purposes of testing and exploring EDA flows.

Nangate has developed and donated this library to Si2.org for open use......."


"The 45nm Open Cell Library contains the following views:

* Liberty (.lib) formatted libraries with CCS Timing, ECSM Timing and NLDM/NLPM data (fast, slow and typical corners)
* Geometric library in Library Exchange Format (LEF)
* Simulation libraries in Verilog and Spice (pre and post parasitic extracted netlists)
* Cell layouts in GDSII
* Schematics
* Library databook in HTML/XML format
* OpenAccess database containing layouts and netlists"

Download Nangate 45nm Open Cell Library from here.
(registration required)

Note: The SPARC processor has several cache memories (nothing but SRAMs in general). Designers have to arrange memory libraries themselves. Memory libraries can also be generated from memory compilers. I personally haven't implemented design flow of the OpenSPARC processor. I even haven't tested the completeness of the Nangate 45nm open cell library. Share your experiences of these open source projects, if anybody has gone through the pain of designing !
Read the rest of this article >>

Timing paths

Timing Path

Timing path is defined as the path between start point and end point where start point and end point is defined as follows:

Start Point:

All input ports or clock pins of a sequential element are considered as valid start point.

End Point:

All output port or D pin of sequential element is considered as End point.



For STA design is split into different timing path and each timing path delay is calculated based on gate delays and net delays. In timing path data gets launched and traverses through combinational elements and stops when it encounter a sequential element. In any timing path, in general (there are exceptions); delay requirements should be satisfied within a clock cycle.

In a timing path wherein start point is sequential element and end point is sequential element, if these two sequential elements are triggered by two different clocks(i.e. asynchronous) then a common least common multiple (LCM) of these two different clock periods should be considered to find the launch edge and capture edge for setup and hold timing analysis.

Different Timing Paths

Any synchronous design is split into various timing paths and each timing path is verified for its timing requirements. In general four types of timing paths can be identified in a synchronous design. They are:

  • Input to Register
  • Input to Output
  • Register to Register
  • Register to Output


Input to Output:

It starts at input port and ends at output port. This is pure combinational path. You can hardly find this in a synchronous design.


Input to Register:

Semi synchronous; Register is controlled by the clock. Input data can come at any time.


Register to Register:

Purely sequential; both starting and ending flops are controlled by the clock.


Register to Output:

Data can come at any point of time.



Clock path

The path wherein clock traverses is known as clock path. Clock path can have only clock inverters and clock buffers as its element. Clock path may be passed trough a “gated element” to achieve additional advantages. In this case, characteristics and definitions of the clock change accordingly. We call this type of clock path as “gated clock path”. The process of “clock gating” has main advantage of dynamic power saving.


Data path

The path wherein data traverses is known as data path. Data path is a pure combinational path. It can have any basic combinational gates or group of gates.


Launch path

Launch path is part of clock path. Launch path is launch clock path which is responsible for launching the data at launch flip flop.

Launch path and data path together constitute arrival time of data at the input of capture register.


Capture path

Capture path is part of clock path. Capture path is capture clock path which is responsible for capturing the data at capture flip flop.

Capture clock period and its path delay together constitute required time of data at the input of capture register.


Read the rest of this article >>

SRAM Chip Supporting Circuit Design

1 Introduction

Design of peripheral and supporting circuits such as sense amplifier, address decoders, precharge and I/O control circuits are very important for the proper functioning of SRAM. The memory cell has to be accessed by all these supporting circuits by the help of BL and BLbar lines. Address decoders select a particular cell for read/write operation. Address decoding delay account for the maximum part of the memory access time in addition to the delay provided by the bit line capacitances of the memory cell itself. Read and write circuits provide an interface between internal memory cells to the external hardware facilitating proper data transfer between them. Before any layout is designed for all these blocks they have to be tested for functionality and worst case possibilities to make them error free design.




2 Sense amplifiers

Since SRAM cells provide true differential outputs any differential configuration of sense amplifier is directly applied to SRAM design. One such type of configuration is shown in Figure (2.1). Sense amplifier is a latch formed by cross coupling two CMOS inverters. Sense enable (SE) signal is used to turn ON/OFF the sense amplifier BL and BLbar becomes I/O terminals of amplifier. During read operation, if cell had stored 1, then a small +ve voltage will develop between BL and BLbar with VBL>VBLbar. Then amplifier raises voltage VBL to VDD and VBLbar to 0V. This output is then directed to the chip I/O pin by the column decoder.



Figure (1) sense amplifier

Sense amplifier performs the following functions:

àAmplification: small bit line swings are resolved by the sense amplifier. This reduces power dissipation.

àReduction in delay: by accelerating the bit line transitions sense amplifier boosts the driving capability of the SRAM cell.

à Reduction in power dissipation: this is achieved by reducing large signal swing on the bit line eliminating the necessity to charge or discharge the bit line capacitance.

Simulation: SPICE simulation results of the sense amplifier for the schematic shown in Figure (1) is shown in Figure (2).



Figure (2) sense amplifier SPICE simulation waveform

Initially sense enable (SE) signal is deactivated. The inputs BL and BLbar lines are precharged and equalized to metastable point of the inverter. Initialization of read operation causes any one of the bit lines to drop. Once the sufficient amount of differential voltage is established SE signal is activated. The cross coupled inverters of the amplifier reaches to a stable operation point after the result of the positive feedback.

Sharing of the single sense amplifier between multiple columns can save area as well as power. Also by pulsing SE signal for short duration of evaluation reduces the static power the amplifier.

Normal W/L ratios are selected for NMOS and PMOS transistors. PMOS transistors have a W/L ratio of 6.66 which means that for 0.18 µ technology gate width of 1.2 µ. For NMOS transistors this ratio is 3.33 that are to say a gate width of 0.6 µ.

Simulation results are shown in Figure (2). Here sense amplifier is nothing but a differential amplifier. Node Y of the amplifier is forced with a pulse waveform. When the SE is activated, due to the differential configuration, BLbar shows complementary waveform of BL as shown by the circled area in simulation waveform. Further analysis is carried out along with SRAM cell and precharge circuits.

3 Precharge and Equalization Circuit

The precharge and equalization circuit is shown in Figure (3)



Figure (3) Precharge circuit and simulation setup

When precharge enable (PE) goes high prior to read operation, all three transistors conduct. M1 and M2 precharge the BL and BLbar to VDD/2. M3 helps to speed up this process by equalizing the initial voltages on the two lines. This equalization is critical to the proper operation of sense amplifier. Sense amplifier can erroneously interpret the any voltage difference present between BL and BLbar prior to the commencement of read operation.

Read operation sequence:

1. When precharge enable (PE) signal is made high both BL and BLbar precharges to VDD/2. Then PE is made low. This causes BL and BLbar to float for a small interval of time.

2. When word line is activated then voltage difference is established between BL and BLbar. If cell had stored 1, then VB>VBbar. If cell had stored 0, then VBBbar.

3. Now sense enable (SE) signal is activated. This turns ON the sense amplifier. Positive feedback structure of the sense amplifier establishes stable condition within a short time.

4 Half VDD generator

Half VDD sensing scheme has two advantages: it improves noise immunity and it has lower power consumption.



Figure (4) Half VDD generator

The basic circuit of half VDD generator consists of bias circuit and a driver circuit as shown in the Figure (4). The (W/L) ratio of the bias circuit transistors is set so that the voltage at the node B is VDD/2. Therefore voltage at node A is VDD/2+VTN (VTN-threshold voltage of NMOS transistor) and at node C is VDD/2-|VTP| (VTP-threshold voltage of PMOS transistor). The output voltage of the driver is stabilized at VDD/2. Static current of the driver circuit is very low due to poor ON state of driver transistors. Driver stage is in push pull configuration. (W/L) ratio of the driver transistors are made larger to suppress any unexpected change at the output node quickly by turning ON either transistor strongly.



Figure (5) half VDD generator SPICE simulation waveform

5 Address decoder circuits

Address decoder is required to select one of the 2M rows or columns in response to an M bit address input. A simple NOR based matrix structure fulfills this requirement. A 3x8 decoder used to decode 8 memory blocks is shown in the Figure (6). A PMOS is attached to each line. When there is no read write operations PEbar signal is kept high. Because of this arrangement the decoder circuit does not dissipate static power. NOR based decoders use less number of devices compared to normal decoder implementation methodology. Layout of such decoder is time consuming and cumbersome compared to NOR based implementation.

In the case of row decoder, PMOS is activated by precharge control signal PEbar prior to the address decoding process. All word line (WL) is pulled high to VDD during precharge. Column (or block) decoders have to provide the discharge path from the precharged bit line to the sense amplifier during read operation. The same lines should be able to drive the bit line to write either 0 or 1 to the memory SRAM cell. Read and write access time of the memory is primarily restricted by the propagation delay of the decoder. Floor plan of the decoder should be carefully studied before the layout implementation of the row and column decoders. Decoder outputs are connected throughout the memory cell making long interconnections which are main resources of delay and higher power consumption.

Generally NOR based decoders improves the speed of operation and achieve power efficiency. Larger the PMOS transistor, the faster is the pre-charging and so faster is the decoder. For 0.18 µ technology gate width of all NMOS transistors in both row and column decoders are selected as 0.6 µ. For PMOS transistors gate width is 1.2 µ.

5.1 Column decoder

In this SRAM design each block is connected as one column. Each block consists of 8 sub columns and 128 rows. BL and BLbar lines of the sub column have column enable transistors which are enabled or disabled by the output of 3x8 decoder.



Figure (6) 3x8 column decoder

At present buffer drivers for decoder outputs are not considered. But, due to the large capacitance offered by the column and row connections (more evident in row decoder) a buffer circuit may be necessary before the signal reaches column control transistors of each sub column.



Figure (7) 3x8 decoder SPICE simulation waveform

The SPICE simulation waveform is shown in Figure (7). Inputs A0 to A2 and complement of these are applied appropriately as per the NOR logic. (In the waveform all signals are named in small case). The outputs of the decoder C0 to C7 are highlighted by circles. False triggering of decoder output occurs due to the rise time and fall time of the address line signals. This can be counteracted by proper control of address inputs and DEbar signal.

5.2 Row decoder

7x128 row decoder schematic is extension of 3x8 decoder. The discussion on capacitance and false triggering holds good here as well. The corresponding SPICE simulation waveform is shown in Figure (8).



Figure (8) 7x128 row decoder: SPICE simulation waveform

Address inputs A3, A6 and A9 are shown in the waveform. Simulation waveforms of only six outputs out of 128 are shown. (In simulation waveform signals are named in small case). They are R0, R1, R63, R64, R126 and R127and are highlighted by the circles and arrows. For A3 A9 =0, R0 is selected and A3 to A9=127 R127 is selected.

6 I/O control circuits

I/O control circuits are integral part of the memory circuit. They interface internal memory cells with the external world. Generally internal operation of the cell runs in lower voltage range compared to the external world power supply of the chip. In such cases to resolve compatibility issues I/O circuits become essential. Here in this section read write circuits and buffer design for SRAM is presented.

6.1 Read buffer

Gate level and transistor level schematic is shown in Figure (9). Corresponding truth table of the circuit is listed in Table (1). Read enable (RE) signal is given as common input to two NAND gate while DL and DLbar becomes other two inputs for the gate. Push pull configuration of transistors finally drive the DIO line which is externally available for the chip. Basic NAND gate design strategy is used to design transistors. All the transistors of the NAND gate has common W/L ratio. PMOS transistor M8 and M10 of inverters have twice the width of M9 and M11.


Figure (8) 7x128 row decoder: SPICE simulation waveform

Address inputs A3, A6 and A9 are shown in the waveform. Simulation waveforms of only six outputs out of 128 are shown. (In simulation waveform signals are named in small case). They are R0, R1, R63, R64, R126 and R127and are highlighted by the circles and arrows. For A3 A9 =0, R0 is selected and A3 to A9=127 R127 is selected.

6 I/O control circuits

I/O control circuits are integral part of the memory circuit. They interface internal memory cells with the external world. Generally internal operation of the cell runs in lower voltage range compared to the external world power supply of the chip. In such cases to resolve compatibility issues I/O circuits become essential. Here in this section read write circuits and buffer design for SRAM is presented.

6.1 Read buffer

Gate level and transistor level schematic is shown in Figure (9). Corresponding truth table of the circuit is listed in Table (1). Read enable (RE) signal is given as common input to two NAND gate while DL and DLbar becomes other two inputs for the gate. Push pull configuration of transistors finally drive the DIO line which is externally available for the chip. Basic NAND gate design strategy is used to design transistors. All the transistors of the NAND gate has common W/L ratio. PMOS transistor M8 and M10 of inverters have twice the width of M9 and M11.





Table (1) read circuit truth table

Transistors M10 and M11 form driver circuit which interface to the DIO line of the chip. Power supply to this driver is directly given from the external power supply of the chip so that logic levels are compatible to the external interface unit.

6.2 Write circuit

Write circuit should be able to force the BL and BLbar line to change its state as per the given input data by charging the large bit line capacitances instantaneously. Hence write circuit is designed with NOR gates to provide higher current driving capability. Gate level and transistor level schematic is shown in Figure (10). The circuit resembles the read circuit with NAND gate replaced by NOR gates. Write enable (WE) signals control the write operation. Output of each NAND gate is driven by NMOS transistor having higher W/L ratio. These two transistors drive DL and DLbar lines and hence BL and BLbar lines. For the NMOS transistors of the NOR gate W/L ratio of 3.33 (i.e. W=0.6 µ) is selected and for PMOS transistors W/L ratio of 12 (i.e W=7.2 µ) is selected.W/L ratio for driving transistors M9 and M10 is selected to be 6.66 which makes gate width of 1.2 µ.





Table (2) write circuit truth table

6.3 Write buffer

Figure (11) write buffer-gate and transistor level

Write buffer shown in the Figure (11) is essential to interface DIO line to the write circuitry. External DIO line is given to the first inverter stage of buffer. Buffer draws power from internal power supply line VDD. Second stage output of buffer hence becomes compatible to internal logic levels of the chip.

7 Complete SRAM chip schematic

As we seen earlier complete SRAM has total 8 blocks and in each block cells are arranged in 128x8 matrix structure. Consider the Figure (12) wherein one block of memory is shown. Row select lines are given to R0 to R127 from row decoder output. Since whole block is considered as one column for parallel configuration of read and write operation, single column line activates individual sub column select transistors. Thus column decoder output C0 drives first block, C1 drives second block and so on till C7 drives 8th block. Row decoder output R0 to R127 is connected to all memory blocks.

Total 8 read and write circuits are sufficient for read and write operation. As shown in the Figure (12) read and write circuit I/Os are connected to BL and BLbar lines of sub columns. The read and write circuit connected to first sub column of first memory block, also connects to first sub column of second memory block, third memory block and so on. Similarly the second read write is connected to second sub column of all the blocks and this arrangement continues for all other sub columns of memory blocks. All these 8 set of read and write circuits are active at a given point of time to access any memory locations arranged in any row of any memory block which is decided by address decoders.




Figure (12) schematic of memory block

Access time difference of this parallel architecture and the architecture wherein individual memory bits are accessible, have to be studied. Nonetheless, in both architectures delay contributed by the address decoders play vital role. The overall switched capacitance can be reduced by dividing the word line into several sub word lines that are enabled while addressing. Similarly capacitances of bit line for every read-write operation can be reduced by partitioning of the memory.

8 Conclusions

Different supporting circuits like sense amplifier address decoders and I/O circuits are designed and analyzed by the help of SPICE simulation waveforms. Individual circuit performance is found to be satisfactory and its performance with the SRAM memory cell has been reported in the previous chapter. Quantitative analysis of all these circuits proved their functionalities. The range of difference voltage which sense amplifier can interpret original logic levels and time required to sense this difference has to be studied. Similarly capacitance and hence the delay offered by the decoder circuits to decode the input has to be analyzed. These will help in designing accurate layout of supporting circuits and thereby facilitating with the easy integration of these modules into the SRAM memory layout.

Bibliography

[1] Sung Mo Kang and Yusuf Leblebici, CMOS digital integrated circuits-analysis and design, Tata McGraw hill, third edition, 2003

[2] Jan M Rabaey & Anantha Chandrakasan & Borivoje Nikolic, Digital integrated circuits-a design perspective, Pearson education, third edition, 2005

[3] Sedra & smith, Microelectronic circuits, oxford university press, fifth edition, 2004

Appendix

*Model files

* Predictive Technology Model Beta Version

* 180nm NMOS SPICE Parametersv (normal one)

*

.model NMOS nmos

+Level = 49

+Lint = 4.e-08 Tox = 4.e-09

+Vth0 = 0.3999 Rdsw = 250

+lmin=1.8e-7 lmax=1.8e-7 wmin=1.8e-7 wmax=1.0e-4 Tref=27.0 version =3.1

+Xj= 6.0000000E-08 Nch= 5.9500000E+17

+lln= 1.0000000 lwn= 1.0000000 wln= 0.00

+wwn= 0.00 ll= 0.00

+lw= 0.00 lwl= 0.00 wint= 0.00

+wl= 0.00 ww= 0.00 wwl= 0.00

+Mobmod= 1 binunit= 2 xl= 0

+xw= 0 binflag= 0

+Dwg= 0.00 Dwb= 0.00

+K1= 0.5613000 K2= 1.0000000E-02

+K3= 0.00 Dvt0= 8.0000000 Dvt1= 0.7500000

+Dvt2= 8.0000000E-03 Dvt0w= 0.00 Dvt1w= 0.00

+Dvt2w= 0.00 Nlx= 1.6500000E-07 W0= 0.00

+K3b= 0.00 Ngate= 5.0000000E+20

+Vsat= 1.3800000E+05 Ua= -7.0000000E-10 Ub= 3.5000000E-18

+Uc= -5.2500000E-11 Prwb= 0.00

+Prwg= 0.00 Wr= 1.0000000 U0= 3.5000000E-02

+A0= 1.1000000 Keta= 4.0000000E-02 A1= 0.00

+A2= 1.0000000 Ags= -1.0000000E-02 B0= 0.00

+B1= 0.00

+Voff= -0.12350000 NFactor= 0.9000000 Cit= 0.00

+Cdsc= 0.00 Cdscb= 0.00 Cdscd= 0.00

+Eta0= 0.2200000 Etab= 0.00 Dsub= 0.8000000

+Pclm= 5.0000000E-02 Pdiblc1= 1.2000000E-02 Pdiblc2= 7.5000000E-03

+Pdiblcb= -1.3500000E-02 Drout= 1.7999999E-02 Pscbe1= 8.6600000E+08

+Pscbe2= 1.0000000E-20 Pvag= -0.2800000 Delta= 1.0000000E-02

+Alpha0= 0.00 Beta0= 30.0000000

+kt1= -0.3700000 kt2= -4.0000000E-02 At= 5.5000000E+04

+Ute= -1.4800000 Ua1= 9.5829000E-10 Ub1= -3.3473000E-19

+Uc1= 0.00 Kt1l= 4.0000000E-09 Prt= 0.00

+Cj= 0.00365 Mj= 0.54 Pb= 0.982

+Cjsw= 7.9E-10 Mjsw= 0.31 Php= 0.841

+Cta= 0 Ctp= 0 Pta= 0

+Ptp= 0 JS=1.50E-08 JSW=2.50E-13

+N=1.0 Xti=3.0 Cgdo=2.786E-10

+Cgso=2.786E-10 Cgbo=0.0E+00 Capmod= 2

+NQSMOD= 0 Elm= 5 Xpart= 1

+Cgsl= 1.6E-10 Cgdl= 1.6E-10 Ckappa= 2.886

+Cf= 1.069e-10 Clc= 0.0000001 Cle= 0.6

+Dlc= 4E-08 Dwc= 0 Vfbcv= -1

*

* Predictive Technology Model Beta Version

* 180nm PMOS SPICE Parametersv (normal one)

*

.model PMOS pmos

+Level = 49

+Lint = 3.e-08 Tox = 4.2e-09

+Vth0 = -0.42 Rdsw = 450

+lmin=1.8e-7 lmax=1.8e-7 wmin=1.8e-7 wmax=1.0e-4 Tref=27.0 version =3.1

+Xj= 7.0000000E-08 Nch= 5.9200000E+17

+lln= 1.0000000 lwn= 1.0000000 wln= 0.00

+wwn= 0.00 ll= 0.00

+lw= 0.00 lwl= 0.00 wint= 0.00

+wl= 0.00 ww= 0.00 wwl= 0.00

+Mobmod= 1 binunit= 2 xl= 0.00

+xw= 0.00

+binflag= 0 Dwg= 0.00 Dwb= 0.00

+ACM= 0 ldif=0.00 hdif=0.00

+rsh= 0 rd= 0 rs= 0

+rsc= 0 rdc= 0

+K1= 0.5560000 K2= 0.00

+K3= 0.00 Dvt0= 11.2000000 Dvt1= 0.7200000

+Dvt2= -1.0000000E-02 Dvt0w= 0.00 Dvt1w= 0.00

+Dvt2w= 0.00 Nlx= 9.5000000E-08 W0= 0.00

+K3b= 0.00 Ngate= 5.0000000E+20

+Vsat= 1.0500000E+05 Ua= -1.2000000E-10 Ub= 1.0000000E-18

+Uc= -2.9999999E-11 Prwb= 0.00

+Prwg= 0.00 Wr= 1.0000000 U0= 8.0000000E-03

+A0= 2.1199999 Keta= 2.9999999E-02 A1= 0.00

+A2= 0.4000000 Ags= -0.1000000 B0= 0.00

+B1= 0.00

+Voff= -6.40000000E-02 NFactor= 1.4000000 Cit= 0.00

+Cdsc= 0.00 Cdscb= 0.00 Cdscd= 0.00

+Eta0= 8.5000000 Etab= 0.00 Dsub= 2.8000000

+Pclm= 2.0000000 Pdiblc1= 0.1200000 Pdiblc2= 8.0000000E-05

+Pdiblcb= 0.1450000 Drout= 5.0000000E-02 Pscbe1= 1.0000000E-20

+Pscbe2= 1.0000000E-20 Pvag= -6.0000000E-02 Delta= 1.0000000E-02

+Alpha0= 0.00 Beta0= 30.0000000

+kt1= -0.3700000 kt2= -4.0000000E-02 At= 5.5000000E+04

+Ute= -1.4800000 Ua1= 9.5829000E-10 Ub1= -3.3473000E-19

+Uc1= 0.00 Kt1l= 4.0000000E-09 Prt= 0.00

+Cj= 0.00138 Mj= 1.05 Pb= 1.24

+Cjsw= 1.44E-09 Mjsw= 0.43 Php= 0.841

+Cta= 0.00093 Ctp= 0 Pta= 0.00153

+Ptp= 0 JS=1.50E-08 JSW=2.50E-13

+N=1.0 Xti=3.0 Cgdo=2.786E-10

+Cgso=2.786E-10 Cgbo=0.0E+00 Capmod= 2

+NQSMOD= 0 Elm= 5 Xpart= 1

+Cgsl= 1.6E-10 Cgdl= 1.6E-10 Ckappa= 2.886

+Cf= 1.058e-10 Clc= 0.0000001 Cle= 0.6

+Dlc= 3E-08 Dwc= 0 Vfbcv= -1

==============================================================

*SPICE code for 3x8 decoder

*=======================

.include "C:\Program Files\LTC\SwCADIII\lib\cmp\180nm_model.txt"

*=========================

*.subckt inverter in out vdd

*m11 out in vdd vdd pmos L=0.18u W=1.2u

*m22 out in gnd gnd nmos L=0.18u W=0.6u

*.ends

*======================================

m1 c0 a2 gnd gnd nmos L=0.18u W=0.6u

m2 c0 a1 gnd gnd nmos L=0.18u W=0.6u

m3 c0 a0 gnd gnd nmos L=0.18u W=0.6u

m4 c1 a2 gnd gnd nmos L=0.18u W=0.6u

m5 c1 a1 gnd gnd nmos L=0.18u W=0.6u

m6 c1 a0bar gnd gnd nmos L=0.18u W=0.6u

m7 c2 a2 gnd gnd nmos L=0.18u W=0.6u

m8 c2 a1bar gnd gnd nmos L=0.18u W=0.6u

m9 c2 a0 gnd gnd nmos L=0.18u W=0.6u

m10 c3 a2 gnd gnd nmos L=0.18u W=0.6u

m11 c3 a1bar gnd gnd nmos L=0.18u W=0.6u

m12 c3 a0bar gnd gnd nmos L=0.18u W=0.6u

m13 c4 a2bar gnd gnd nmos L=0.18u W=0.6u

m14 c4 a1 gnd gnd nmos L=0.18u W=0.6u

m15 c4 a0 gnd gnd nmos L=0.18u W=0.6u

m16 c5 a2bar gnd gnd nmos L=0.18u W=0.6u

m17 c5 a1 gnd gnd nmos L=0.18u W=0.6u

m18 c5 a0bar gnd gnd nmos L=0.18u W=0.6u

m19 c6 a2bar gnd gnd nmos L=0.18u W=0.6u

m20 c6 a1bar gnd gnd nmos L=0.18u W=0.6u

m21 c6 a0 gnd gnd nmos L=0.18u W=0.6u

m22 c7 a2bar gnd gnd nmos L=0.18u W=0.6u

m23 c7 a1bar gnd gnd nmos L=0.18u W=0.6u

m24 c7 a0bar gnd gnd nmos L=0.18u W=0.6u

*===========================================

m25 c0 DEbar vdd vdd pmos L=0.18u W=1.2u

m26 c1 DEbar vdd vdd pmos L=0.18u W=1.2u

m27 c2 DEbar vdd vdd pmos L=0.18u W=1.2u

m28 c3 DEbar vdd vdd pmos L=0.18u W=1.2u

m29 c4 DEbar vdd vdd pmos L=0.18u W=1.2u

m30 c5 DEbar vdd vdd pmos L=0.18u W=1.2u

m31 c6 DEbar vdd vdd pmos L=0.18u W=1.2u

m32 c7 DEbar vdd vdd pmos L=0.18u W=1.2u

*====================================

*xnot0 a0 a0bar vdd inverter

*xnot1 a1 a1bar vdd inverter

*xnot2 a2 a2bar vdd inverter

*=====================================

m33 a2bar a2 vdd vdd pmos L=0.18u W=1.2u

m34 a2bar a2 gnd gnd nmos L=0.18u W=0.6u

m35 a1bar a1 vdd vdd pmos L=0.18u W=1.2u

m36 a1bar a1 gnd gnd nmos L=0.18u W=0.6u

m37 a0bar a0 vdd vdd pmos L=0.18u W=1.2u

m38 a0bar a0 gnd gnd nmos L=0.18u W=0.6u

*====================================

vvdd vdd gnd dc 1.8v

*vDEbar DEbar gnd dc 1.8

vDEbar DEbar gnd pulse(0 1.8 1n 1n 1n 40n 80n)

va0 a0 gnd pulse(1.8 0 1n 1n 1n 5n 10n)

va1 a1 gnd pulse(1.8 0 1n 1n 1n 10n 20n)

va2 a2 gnd pulse(1.8 0 1n 1n 1n 20n 40n)

*=====================================

.tran 0 200n

.plot tran v(a0) v(a0bar) v(a1) v(a1bar) v(a2) v(a2bar) v(c0) v(c1) v(c2) v(c3) v(c4) v(c5) v(c6) v(c7)

.end

===============================================================

*7x128 decoder

*working !!!

*=======================

.include "C:\Program Files\LTC\SwCADIII\lib\cmp\180nm_model.txt"

*=========================

*.subckt inverter in out vdd

*m11 out in vdd vdd pmos L=0.18u W=1.2u

*m22 out in gnd gnd nmos L=0.18u W=0.6u

*.ends

*======================================

m1 r0 a9 gnd gnd nmos L=0.18u W=0.6u

m2 r0 a8 gnd gnd nmos L=0.18u W=0.6u

m3 r0 a7 gnd gnd nmos L=0.18u W=0.6u

m4 r0 a6 gnd gnd nmos L=0.18u W=0.6u

m5 r0 a5 gnd gnd nmos L=0.18u W=0.6u

m6 r0 a4 gnd gnd nmos L=0.18u W=0.6u

m7 r0 a3 gnd gnd nmos L=0.18u W=0.6u

m8 r1 a9 gnd gnd nmos L=0.18u W=0.6u

m9 r1 a8 gnd gnd nmos L=0.18u W=0.6u

m10 r1 a7 gnd gnd nmos L=0.18u W=0.6u

m11 r1 a6 gnd gnd nmos L=0.18u W=0.6u

m12 r1 a5 gnd gnd nmos L=0.18u W=0.6u

m13 r1 a4 gnd gnd nmos L=0.18u W=0.6u

m14 r1 a3bar gnd gnd nmos L=0.18u W=0.6u

m15 r2 a9 gnd gnd nmos L=0.18u W=0.6u

m16 r2 a8 gnd gnd nmos L=0.18u W=0.6u

m17 r2 a7 gnd gnd nmos L=0.18u W=0.6u

m18 r2 a6 gnd gnd nmos L=0.18u W=0.6u

m19 r2 a5 gnd gnd nmos L=0.18u W=0.6u

m20 r2 a4bar gnd gnd nmos L=0.18u W=0.6u

m21 r2 a3 gnd gnd nmos L=0.18u W=0.6u

m22 r3 a9 gnd gnd nmos L=0.18u W=0.6u

m23 r3 a8 gnd gnd nmos L=0.18u W=0.6u

m24 r3 a7 gnd gnd nmos L=0.18u W=0.6u

m25 r3 a6 gnd gnd nmos L=0.18u W=0.6u

m26 r3 a5 gnd gnd nmos L=0.18u W=0.6u

m27 r3 a4bar gnd gnd nmos L=0.18u W=0.6u

m28 r3 a3bar gnd gnd nmos L=0.18u W=0.6u

m29 r4 a9 gnd gnd nmos L=0.18u W=0.6u

m30 r4 a8 gnd gnd nmos L=0.18u W=0.6u

m31 r4 a7 gnd gnd nmos L=0.18u W=0.6u

m32 r4 a6 gnd gnd nmos L=0.18u W=0.6u

m33 r4 a5bar gnd gnd nmos L=0.18u W=0.6u

m34 r4 a4 gnd gnd nmos L=0.18u W=0.6u

m35 r4 a3 gnd gnd nmos L=0.18u W=0.6u

m36 r5 a9 gnd gnd nmos L=0.18u W=0.6u

m37 r5 a8 gnd gnd nmos L=0.18u W=0.6u

m38 r5 a7 gnd gnd nmos L=0.18u W=0.6u

m39 r5 a6 gnd gnd nmos L=0.18u W=0.6u

m40 r5 a5bar gnd gnd nmos L=0.18u W=0.6u

m41 r5 a4 gnd gnd nmos L=0.18u W=0.6u

m42 r5 a3bar gnd gnd nmos L=0.18u W=0.6u

m43 r6 a9 gnd gnd nmos L=0.18u W=0.6u

m44 r6 a8 gnd gnd nmos L=0.18u W=0.6u

m45 r6 a7 gnd gnd nmos L=0.18u W=0.6u

m46 r6 a6 gnd gnd nmos L=0.18u W=0.6u

m47 r6 a5bar gnd gnd nmos L=0.18u W=0.6u

m48 r6 a4bar gnd gnd nmos L=0.18u W=0.6u

m49 r6 a3 gnd gnd nmos L=0.18u W=0.6u

m50 r7 a9 gnd gnd nmos L=0.18u W=0.6u

m51 r7 a8 gnd gnd nmos L=0.18u W=0.6u

m52 r7 a7 gnd gnd nmos L=0.18u W=0.6u

m53 r7 a6 gnd gnd nmos L=0.18u W=0.6u

m54 r7 a5bar gnd gnd nmos L=0.18u W=0.6u

m55 r7 a4bar gnd gnd nmos L=0.18u W=0.6u

m56 r7 a3bar gnd gnd nmos L=0.18u W=0.6u

m57 r8 a9 gnd gnd nmos L=0.18u W=0.6u

m58 r8 a8 gnd gnd nmos L=0.18u W=0.6u

m59 r8 a7 gnd gnd nmos L=0.18u W=0.6u

m60 r8 a6bar gnd gnd nmos L=0.18u W=0.6u

m61 r8 a5 gnd gnd nmos L=0.18u W=0.6u

m62 r8 a4 gnd gnd nmos L=0.18u W=0.6u

m63 r8 a3 gnd gnd nmos L=0.18u W=0.6u

m64 r9 a9 gnd gnd nmos L=0.18u W=0.6u

m65 r9 a8 gnd gnd nmos L=0.18u W=0.6u

m66 r9 a7 gnd gnd nmos L=0.18u W=0.6u

m67 r9 a6bar gnd gnd nmos L=0.18u W=0.6u

m68 r9 a5 gnd gnd nmos L=0.18u W=0.6u

m69 r9 a4 gnd gnd nmos L=0.18u W=0.6u

m70 r9 a3bar gnd gnd nmos L=0.18u W=0.6u

m71 r10 a9 gnd gnd nmos L=0.18u W=0.6u

m72 r10 a8 gnd gnd nmos L=0.18u W=0.6u

m73 r10 a7 gnd gnd nmos L=0.18u W=0.6u

m74 r10 a6bar gnd gnd nmos L=0.18u W=0.6u

m75 r10 a5 gnd gnd nmos L=0.18u W=0.6u

m76 r10 a4bar gnd gnd nmos L=0.18u W=0.6u

m77 r10 a3 gnd gnd nmos L=0.18u W=0.6u

m78 r11 a9 gnd gnd nmos L=0.18u W=0.6u

m79 r11 a8 gnd gnd nmos L=0.18u W=0.6u

m80 r11 a7 gnd gnd nmos L=0.18u W=0.6u

m81 r11 a6bar gnd gnd nmos L=0.18u W=0.6u

m82 r11 a5 gnd gnd nmos L=0.18u W=0.6u

m83 r11 a4bar gnd gnd nmos L=0.18u W=0.6u

m84 r11 a3bar gnd gnd nmos L=0.18u W=0.6u

m85 r12 a9 gnd gnd nmos L=0.18u W=0.6u

m86 r12 a8 gnd gnd nmos L=0.18u W=0.6u

m87 r12 a7 gnd gnd nmos L=0.18u W=0.6u

m88 r12 a6bar gnd gnd nmos L=0.18u W=0.6u

m89 r12 a5bar gnd gnd nmos L=0.18u W=0.6u

m90 r12 a4 gnd gnd nmos L=0.18u W=0.6u

m91 r12 a3 gnd gnd nmos L=0.18u W=0.6u

m92 r13 a9 gnd gnd nmos L=0.18u W=0.6u

m93 r13 a8 gnd gnd nmos L=0.18u W=0.6u

m94 r13 a7 gnd gnd nmos L=0.18u W=0.6u

m95 r13 a6bar gnd gnd nmos L=0.18u W=0.6u

m96 r13 a5bar gnd gnd nmos L=0.18u W=0.6u

m97 r13 a4 gnd gnd nmos L=0.18u W=0.6u

m98 r13 a3bar gnd gnd nmos L=0.18u W=0.6u

m99 r14 a9 gnd gnd nmos L=0.18u W=0.6u

m100 r14 a8 gnd gnd nmos L=0.18u W=0.6u

m101 r14 a7 gnd gnd nmos L=0.18u W=0.6u

m102 r14 a6bar gnd gnd nmos L=0.18u W=0.6u

m103 r14 a5bar gnd gnd nmos L=0.18u W=0.6u

m104 r14 a4bar gnd gnd nmos L=0.18u W=0.6u

m105 r14 a3 gnd gnd nmos L=0.18u W=0.6u

m106 r15 a9 gnd gnd nmos L=0.18u W=0.6u

m107 r15 a8 gnd gnd nmos L=0.18u W=0.6u

m108 r15 a7 gnd gnd nmos L=0.18u W=0.6u

m109 r15 a6bar gnd gnd nmos L=0.18u W=0.6u

m110 r15 a5bar gnd gnd nmos L=0.18u W=0.6u

m111 r15 a4bar gnd gnd nmos L=0.18u W=0.6u

m112 r15 a3bar gnd gnd nmos L=0.18u W=0.6u

m113 r16 a9 gnd gnd nmos L=0.18u W=0.6u

m114 r16 a8 gnd gnd nmos L=0.18u W=0.6u

m115 r16 a7bar gnd gnd nmos L=0.18u W=0.6u

m116 r16 a6 gnd gnd nmos L=0.18u W=0.6u

m117 r16 a5 gnd gnd nmos L=0.18u W=0.6u

m118 r16 a4 gnd gnd nmos L=0.18u W=0.6u

m119 r16 a3 gnd gnd nmos L=0.18u W=0.6u

m120 r17 a9 gnd gnd nmos L=0.18u W=0.6u

m121 r17 a8 gnd gnd nmos L=0.18u W=0.6u

m122 r17 a7bar gnd gnd nmos L=0.18u W=0.6u

m123 r17 a6 gnd gnd nmos L=0.18u W=0.6u

m124 r17 a5 gnd gnd nmos L=0.18u W=0.6u

m125 r17 a4 gnd gnd nmos L=0.18u W=0.6u

m126 r17 a3bar gnd gnd nmos L=0.18u W=0.6u

m127 r18 a9 gnd gnd nmos L=0.18u W=0.6u

m128 r18 a8 gnd gnd nmos L=0.18u W=0.6u

m129 r18 a7bar gnd gnd nmos L=0.18u W=0.6u

m130 r18 a6 gnd gnd nmos L=0.18u W=0.6u

m131 r18 a5 gnd gnd nmos L=0.18u W=0.6u

m132 r18 a4bar gnd gnd nmos L=0.18u W=0.6u

m133 r18 a3 gnd gnd nmos L=0.18u W=0.6u

m134 r19 a9 gnd gnd nmos L=0.18u W=0.6u

m135 r19 a8 gnd gnd nmos L=0.18u W=0.6u

m136 r19 a7bar gnd gnd nmos L=0.18u W=0.6u

m137 r19 a6 gnd gnd nmos L=0.18u W=0.6u

m138 r19 a5 gnd gnd nmos L=0.18u W=0.6u

m139 r19 a4bar gnd gnd nmos L=0.18u W=0.6u

m140 r19 a3bar gnd gnd nmos L=0.18u W=0.6u

m141 r20 a9 gnd gnd nmos L=0.18u W=0.6u

m142 r20 a8 gnd gnd nmos L=0.18u W=0.6u

m143 r20 a7bar gnd gnd nmos L=0.18u W=0.6u

m144 r20 a6 gnd gnd nmos L=0.18u W=0.6u

m145 r20 a5bar gnd gnd nmos L=0.18u W=0.6u

m146 r20 a4 gnd gnd nmos L=0.18u W=0.6u

m147 r20 a3 gnd gnd nmos L=0.18u W=0.6u

m148 r21 a9 gnd gnd nmos L=0.18u W=0.6u

m149 r21 a8 gnd gnd nmos L=0.18u W=0.6u

m150 r21 a7bar gnd gnd nmos L=0.18u W=0.6u

m151 r21 a6 gnd gnd nmos L=0.18u W=0.6u

m152 r21 a5bar gnd gnd nmos L=0.18u W=0.6u

m153 r21 a4 gnd gnd nmos L=0.18u W=0.6u

m154 r21 a3bar gnd gnd nmos L=0.18u W=0.6u

m155 r22 a9 gnd gnd nmos L=0.18u W=0.6u

m156 r22 a8 gnd gnd nmos L=0.18u W=0.6u

m157 r22 a7bar gnd gnd nmos L=0.18u W=0.6u

m158 r22 a6 gnd gnd nmos L=0.18u W=0.6u

m159 r22 a5bar gnd gnd nmos L=0.18u W=0.6u

m160 r22 a4bar gnd gnd nmos L=0.18u W=0.6u

m161 r22 a3 gnd gnd nmos L=0.18u W=0.6u

m162 r23 a9 gnd gnd nmos L=0.18u W=0.6u

m163 r23 a8 gnd gnd nmos L=0.18u W=0.6u

m164 r23 a7bar gnd gnd nmos L=0.18u W=0.6u

m165 r23 a6 gnd gnd nmos L=0.18u W=0.6u

m166 r23 a5bar gnd gnd nmos L=0.18u W=0.6u

m167 r23 a4bar gnd gnd nmos L=0.18u W=0.6u

m168 r23 a3bar gnd gnd nmos L=0.18u W=0.6u

m169 r24 a9 gnd gnd nmos L=0.18u W=0.6u

m170 r24 a8 gnd gnd nmos L=0.18u W=0.6u

m171 r24 a7bar gnd gnd nmos L=0.18u W=0.6u

m172 r24 a6bar gnd gnd nmos L=0.18u W=0.6u

m173 r24 a5 gnd gnd nmos L=0.18u W=0.6u

m174 r24 a4 gnd gnd nmos L=0.18u W=0.6u

m175 r24 a3 gnd gnd nmos L=0.18u W=0.6u

m176 r25 a9 gnd gnd nmos L=0.18u W=0.6u

m177 r25 a8 gnd gnd nmos L=0.18u W=0.6u

m178 r25 a7bar gnd gnd nmos L=0.18u W=0.6u

m179 r25 a6bar gnd gnd nmos L=0.18u W=0.6u

m180 r25 a5 gnd gnd nmos L=0.18u W=0.6u

m181 r25 a4 gnd gnd nmos L=0.18u W=0.6u

m182 r25 a3bar gnd gnd nmos L=0.18u W=0.6u

m183 r26 a9 gnd gnd nmos L=0.18u W=0.6u

m184 r26 a8 gnd gnd nmos L=0.18u W=0.6u

m185 r26 a7bar gnd gnd nmos L=0.18u W=0.6u

m186 r26 a6bar gnd gnd nmos L=0.18u W=0.6u

m187 r26 a5 gnd gnd nmos L=0.18u W=0.6u

m188 r26 a4bar gnd gnd nmos L=0.18u W=0.6u

m189 r26 a3 gnd gnd nmos L=0.18u W=0.6u

m190 r27 a9 gnd gnd nmos L=0.18u W=0.6u

m191 r27 a8 gnd gnd nmos L=0.18u W=0.6u

m192 r27 a7bar gnd gnd nmos L=0.18u W=0.6u

m193 r27 a6bar gnd gnd nmos L=0.18u W=0.6u

m194 r27 a5 gnd gnd nmos L=0.18u W=0.6u

m195 r27 a4bar gnd gnd nmos L=0.18u W=0.6u

m196 r27 a3bar gnd gnd nmos L=0.18u W=0.6u

m197 r28 a9 gnd gnd nmos L=0.18u W=0.6u

m198 r28 a8 gnd gnd nmos L=0.18u W=0.6u

m199 r28 a7bar gnd gnd nmos L=0.18u W=0.6u

m200 r28 a6bar gnd gnd nmos L=0.18u W=0.6u

m201 r28 a5bar gnd gnd nmos L=0.18u W=0.6u

m202 r28 a4 gnd gnd nmos L=0.18u W=0.6u

m203 r28 a3 gnd gnd nmos L=0.18u W=0.6u

m204 r29 a9 gnd gnd nmos L=0.18u W=0.6u

m205 r29 a8 gnd gnd nmos L=0.18u W=0.6u

m206 r29 a7bar gnd gnd nmos L=0.18u W=0.6u

m207 r29 a6bar gnd gnd nmos L=0.18u W=0.6u

m208 r29 a5bar gnd gnd nmos L=0.18u W=0.6u

m209 r29 a4 gnd gnd nmos L=0.18u W=0.6u

m210 r29 a3bar gnd gnd nmos L=0.18u W=0.6u

m211 r30 a9 gnd gnd nmos L=0.18u W=0.6u

m212 r30 a8 gnd gnd nmos L=0.18u W=0.6u

m213 r30 a7bar gnd gnd nmos L=0.18u W=0.6u

m214 r30 a6bar gnd gnd nmos L=0.18u W=0.6u

m215 r30 a5bar gnd gnd nmos L=0.18u W=0.6u

m216 r30 a4bar gnd gnd nmos L=0.18u W=0.6u

m217 r30 a3 gnd gnd nmos L=0.18u W=0.6u

m218 r31 a9 gnd gnd nmos L=0.18u W=0.6u

m219 r31 a8 gnd gnd nmos L=0.18u W=0.6u

m220 r31 a7bar gnd gnd nmos L=0.18u W=0.6u

m221 r31 a6bar gnd gnd nmos L=0.18u W=0.6u

m222 r31 a5bar gnd gnd nmos L=0.18u W=0.6u

m223 r31 a4bar gnd gnd nmos L=0.18u W=0.6u

m224 r31 a3bar gnd gnd nmos L=0.18u W=0.6u

m225 r32 a9 gnd gnd nmos L=0.18u W=0.6u

m226 r32 a8bar gnd gnd nmos L=0.18u W=0.6u

m227 r32 a7 gnd gnd nmos L=0.18u W=0.6u

m228 r32 a6 gnd gnd nmos L=0.18u W=0.6u

m229 r32 a5 gnd gnd nmos L=0.18u W=0.6u

m230 r32 a4 gnd gnd nmos L=0.18u W=0.6u

m231 r32 a3 gnd gnd nmos L=0.18u W=0.6u

m232 r33 a9 gnd gnd nmos L=0.18u W=0.6u

m233 r33 a8bar gnd gnd nmos L=0.18u W=0.6u

m234 r33 a7 gnd gnd nmos L=0.18u W=0.6u

m235 r33 a6 gnd gnd nmos L=0.18u W=0.6u

m236 r33 a5 gnd gnd nmos L=0.18u W=0.6u

m237 r33 a4 gnd gnd nmos L=0.18u W=0.6u

m238 r33 a3bar gnd gnd nmos L=0.18u W=0.6u

m239 r34 a9 gnd gnd nmos L=0.18u W=0.6u

m240 r34 a8bar gnd gnd nmos L=0.18u W=0.6u

m241 r34 a7 gnd gnd nmos L=0.18u W=0.6u

m242 r34 a6 gnd gnd nmos L=0.18u W=0.6u

m243 r34 a5 gnd gnd nmos L=0.18u W=0.6u

m244 r34 a4bar gnd gnd nmos L=0.18u W=0.6u

m245 r34 a3 gnd gnd nmos L=0.18u W=0.6u

m246 r35 a9 gnd gnd nmos L=0.18u W=0.6u

m247 r35 a8bar gnd gnd nmos L=0.18u W=0.6u

m248 r35 a7 gnd gnd nmos L=0.18u W=0.6u

m249 r35 a6 gnd gnd nmos L=0.18u W=0.6u

m250 r35 a5 gnd gnd nmos L=0.18u W=0.6u

m251 r35 a4bar gnd gnd nmos L=0.18u W=0.6u

m252 r35 a3bar gnd gnd nmos L=0.18u W=0.6u

m253 r36 a9 gnd gnd nmos L=0.18u W=0.6u

m254 r36 a8bar gnd gnd nmos L=0.18u W=0.6u

m255 r36 a7 gnd gnd nmos L=0.18u W=0.6u

m256 r36 a6 gnd gnd nmos L=0.18u W=0.6u

m257 r36 a5bar gnd gnd nmos L=0.18u W=0.6u

m258 r36 a4 gnd gnd nmos L=0.18u W=0.6u

m259 r36 a3 gnd gnd nmos L=0.18u W=0.6u

m260 r37 a9 gnd gnd nmos L=0.18u W=0.6u

m261 r37 a8bar gnd gnd nmos L=0.18u W=0.6u

m262 r37 a7 gnd gnd nmos L=0.18u W=0.6u

m263 r37 a6 gnd gnd nmos L=0.18u W=0.6u

m264 r37 a5bar gnd gnd nmos L=0.18u W=0.6u

m265 r37 a4 gnd gnd nmos L=0.18u W=0.6u

m266 r37 a3bar gnd gnd nmos L=0.18u W=0.6u

m267 r38 a9 gnd gnd nmos L=0.18u W=0.6u

m268 r38 a8bar gnd gnd nmos L=0.18u W=0.6u

m269 r38 a7 gnd gnd nmos L=0.18u W=0.6u

m270 r38 a6 gnd gnd nmos L=0.18u W=0.6u

m271 r38 a5bar gnd gnd nmos L=0.18u W=0.6u

m272 r38 a4bar gnd gnd nmos L=0.18u W=0.6u

m273 r38 a3 gnd gnd nmos L=0.18u W=0.6u

m274 r39 a9 gnd gnd nmos L=0.18u W=0.6u

m275 r39 a8bar gnd gnd nmos L=0.18u W=0.6u

m276 r39 a7 gnd gnd nmos L=0.18u W=0.6u

m277 r39 a6 gnd gnd nmos L=0.18u W=0.6u

m278 r39 a5bar gnd gnd nmos L=0.18u W=0.6u

m279 r39 a4bar gnd gnd nmos L=0.18u W=0.6u

m280 r39 a3bar gnd gnd nmos L=0.18u W=0.6u

m281 r40 a9 gnd gnd nmos L=0.18u W=0.6u

m282 r40 a8bar gnd gnd nmos L=0.18u W=0.6u

m283 r40 a7 gnd gnd nmos L=0.18u W=0.6u

m284 r40 a6bar gnd gnd nmos L=0.18u W=0.6u

m285 r40 a5 gnd gnd nmos L=0.18u W=0.6u

m286 r40 a4 gnd gnd nmos L=0.18u W=0.6u

m287 r40 a3 gnd gnd nmos L=0.18u W=0.6u

m288 r41 a9 gnd gnd nmos L=0.18u W=0.6u

m289 r41 a8bar gnd gnd nmos L=0.18u W=0.6u

m290 r41 a7 gnd gnd nmos L=0.18u W=0.6u

m291 r41 a6bar gnd gnd nmos L=0.18u W=0.6u

m292 r41 a5 gnd gnd nmos L=0.18u W=0.6u

m293 r41 a4 gnd gnd nmos L=0.18u W=0.6u

m294 r41 a3bar gnd gnd nmos L=0.18u W=0.6u

m295 r42 a9 gnd gnd nmos L=0.18u W=0.6u

m296 r42 a8bar gnd gnd nmos L=0.18u W=0.6u

m297 r42 a7 gnd gnd nmos L=0.18u W=0.6u

m298 r42 a6bar gnd gnd nmos L=0.18u W=0.6u

m299 r42 a5 gnd gnd nmos L=0.18u W=0.6u

m300 r42 a4bar gnd gnd nmos L=0.18u W=0.6u

m301 r42 a3 gnd gnd nmos L=0.18u W=0.6u

*============================================

*==========================================

*===========================================

m302 r43 a9 gnd gnd nmos L=0.18u W=0.6u

m303 r43 a8bar gnd gnd nmos L=0.18u W=0.6u

m304 r43 a7 gnd gnd nmos L=0.18u W=0.6u

m305 r43 a6bar gnd gnd nmos L=0.18u W=0.6u

m306 r43 a5 gnd gnd nmos L=0.18u W=0.6u

m307 r43 a4bar gnd gnd nmos L=0.18u W=0.6u

m308 r43 a3bar gnd gnd nmos L=0.18u W=0.6u

m309 r44 a9 gnd gnd nmos L=0.18u W=0.6u

m310 r44 a8bar gnd gnd nmos L=0.18u W=0.6u

m311 r44 a7 gnd gnd nmos L=0.18u W=0.6u

m312 r44 a6bar gnd gnd nmos L=0.18u W=0.6u

m313 r44 a5bar gnd gnd nmos L=0.18u W=0.6u

m314 r44 a4 gnd gnd nmos L=0.18u W=0.6u

m315 r44 a3 gnd gnd nmos L=0.18u W=0.6u

m316 r45 a9 gnd gnd nmos L=0.18u W=0.6u

m317 r45 a8bar gnd gnd nmos L=0.18u W=0.6u

m318 r45 a7 gnd gnd nmos L=0.18u W=0.6u

m319 r45 a6bar gnd gnd nmos L=0.18u W=0.6u

m320 r45 a5bar gnd gnd nmos L=0.18u W=0.6u

m321 r45 a4 gnd gnd nmos L=0.18u W=0.6u

m322 r45 a3bar gnd gnd nmos L=0.18u W=0.6u

m323 r46 a9 gnd gnd nmos L=0.18u W=0.6u

m324 r46 a8bar gnd gnd nmos L=0.18u W=0.6u

m325 r46 a7 gnd gnd nmos L=0.18u W=0.6u

m326 r46 a6bar gnd gnd nmos L=0.18u W=0.6u

m327 r46 a5bar gnd gnd nmos L=0.18u W=0.6u

m328 r46 a4bar gnd gnd nmos L=0.18u W=0.6u

m329 r46 a3 gnd gnd nmos L=0.18u W=0.6u

m330 r47 a9 gnd gnd nmos L=0.18u W=0.6u

m331 r47 a8bar gnd gnd nmos L=0.18u W=0.6u

m332 r47 a7 gnd gnd nmos L=0.18u W=0.6u

m333 r47 a6bar gnd gnd nmos L=0.18u W=0.6u

m334 r47 a5bar gnd gnd nmos L=0.18u W=0.6u

m335 r47 a4bar gnd gnd nmos L=0.18u W=0.6u

m336 r47 a3bar gnd gnd nmos L=0.18u W=0.6u

m337 r48 a9 gnd gnd nmos L=0.18u W=0.6u

m338 r48 a8bar gnd gnd nmos L=0.18u W=0.6u

m339 r48 a7bar gnd gnd nmos L=0.18u W=0.6u

m340 r48 a6 gnd gnd nmos L=0.18u W=0.6u

m341 r48 a5 gnd gnd nmos L=0.18u W=0.6u

m342 r48 a4 gnd gnd nmos L=0.18u W=0.6u

m343 r48 a3 gnd gnd nmos L=0.18u W=0.6u

m344 r49 a9 gnd gnd nmos L=0.18u W=0.6u

m345 r49 a8bar gnd gnd nmos L=0.18u W=0.6u

m346 r49 a7bar gnd gnd nmos L=0.18u W=0.6u

m347 r49 a6 gnd gnd nmos L=0.18u W=0.6u

m348 r49 a5 gnd gnd nmos L=0.18u W=0.6u

m349 r49 a4 gnd gnd nmos L=0.18u W=0.6u

m350 r49 a3bar gnd gnd nmos L=0.18u W=0.6u

m351 r50 a9 gnd gnd nmos L=0.18u W=0.6u

m352 r50 a8bar gnd gnd nmos L=0.18u W=0.6u

m353 r50 a7bar gnd gnd nmos L=0.18u W=0.6u

m354 r50 a6 gnd gnd nmos L=0.18u W=0.6u

m355 r50 a5 gnd gnd nmos L=0.18u W=0.6u

m356 r50 a4bar gnd gnd nmos L=0.18u W=0.6u

m357 r50 a3 gnd gnd nmos L=0.18u W=0.6u

m358 r51 a9 gnd gnd nmos L=0.18u W=0.6u

m359 r51 a8bar gnd gnd nmos L=0.18u W=0.6u

m360 r51 a7bar gnd gnd nmos L=0.18u W=0.6u

m361 r51 a6 gnd gnd nmos L=0.18u W=0.6u

m362 r51 a5 gnd gnd nmos L=0.18u W=0.6u

m363 r51 a4bar gnd gnd nmos L=0.18u W=0.6u

m364 r51 a3bar gnd gnd nmos L=0.18u W=0.6u

m365 r52 a9 gnd gnd nmos L=0.18u W=0.6u

m366 r52 a8bar gnd gnd nmos L=0.18u W=0.6u

m367 r52 a7bar gnd gnd nmos L=0.18u W=0.6u

m368 r52 a6 gnd gnd nmos L=0.18u W=0.6u

m369 r52 a5bar gnd gnd nmos L=0.18u W=0.6u

m370 r52 a4 gnd gnd nmos L=0.18u W=0.6u

m371 r52 a3 gnd gnd nmos L=0.18u W=0.6u

m372 r53 a9 gnd gnd nmos L=0.18u W=0.6u

m373 r53 a8bar gnd gnd nmos L=0.18u W=0.6u

m374 r53 a7bar gnd gnd nmos L=0.18u W=0.6u

m375 r53 a6 gnd gnd nmos L=0.18u W=0.6u

m376 r53 a5bar gnd gnd nmos L=0.18u W=0.6u

m377 r53 a4 gnd gnd nmos L=0.18u W=0.6u

m378 r53 a3bar gnd gnd nmos L=0.18u W=0.6u

m379 r54 a9 gnd gnd nmos L=0.18u W=0.6u

m380 r54 a8bar gnd gnd nmos L=0.18u W=0.6u

m381 r54 a7bar gnd gnd nmos L=0.18u W=0.6u

m382 r54 a6 gnd gnd nmos L=0.18u W=0.6u

m383 r54 a5bar gnd gnd nmos L=0.18u W=0.6u

m384 r54 a4bar gnd gnd nmos L=0.18u W=0.6u

m385 r54 a3 gnd gnd nmos L=0.18u W=0.6u

m386 r55 a9 gnd gnd nmos L=0.18u W=0.6u

m387 r55 a8bar gnd gnd nmos L=0.18u W=0.6u

m388 r55 a7bar gnd gnd nmos L=0.18u W=0.6u

m389 r55 a6 gnd gnd nmos L=0.18u W=0.6u

m390 r55 a5bar gnd gnd nmos L=0.18u W=0.6u

m391 r55 a4bar gnd gnd nmos L=0.18u W=0.6u

m392 r55 a3bar gnd gnd nmos L=0.18u W=0.6u

m393 r56 a9 gnd gnd nmos L=0.18u W=0.6u

m394 r56 a8bar gnd gnd nmos L=0.18u W=0.6u

m395 r56 a7bar gnd gnd nmos L=0.18u W=0.6u

m396 r56 a6bar gnd gnd nmos L=0.18u W=0.6u

m397 r56 a5 gnd gnd nmos L=0.18u W=0.6u

m398 r56 a4 gnd gnd nmos L=0.18u W=0.6u

m399 r56 a3 gnd gnd nmos L=0.18u W=0.6u

m400 r57 a9 gnd gnd nmos L=0.18u W=0.6u

m401 r57 a8bar gnd gnd nmos L=0.18u W=0.6u

m402 r57 a7bar gnd gnd nmos L=0.18u W=0.6u

m403 r57 a6bar gnd gnd nmos L=0.18u W=0.6u

m404 r57 a5 gnd gnd nmos L=0.18u W=0.6u

m405 r57 a4 gnd gnd nmos L=0.18u W=0.6u

m406 r57 a3bar gnd gnd nmos L=0.18u W=0.6u

m407 r58 a9 gnd gnd nmos L=0.18u W=0.6u

m408 r58 a8bar gnd gnd nmos L=0.18u W=0.6u

m409 r58 a7bar gnd gnd nmos L=0.18u W=0.6u

m410 r58 a6bar gnd gnd nmos L=0.18u W=0.6u

m411 r58 a5 gnd gnd nmos L=0.18u W=0.6u

m412 r58 a4bar gnd gnd nmos L=0.18u W=0.6u

m413 r58 a3 gnd gnd nmos L=0.18u W=0.6u

m414 r59 a9 gnd gnd nmos L=0.18u W=0.6u

m415 r59 a8bar gnd gnd nmos L=0.18u W=0.6u

m416 r59 a7bar gnd gnd nmos L=0.18u W=0.6u

m417 r59 a6bar gnd gnd nmos L=0.18u W=0.6u

m418 r59 a5 gnd gnd nmos L=0.18u W=0.6u

m419 r59 a4bar gnd gnd nmos L=0.18u W=0.6u

m420 r59 a3bar gnd gnd nmos L=0.18u W=0.6u

m421 r60 a9 gnd gnd nmos L=0.18u W=0.6u

m422 r60 a8bar gnd gnd nmos L=0.18u W=0.6u

m423 r60 a7bar gnd gnd nmos L=0.18u W=0.6u

m424 r60 a6bar gnd gnd nmos L=0.18u W=0.6u

m425 r60 a5bar gnd gnd nmos L=0.18u W=0.6u

m426 r60 a4 gnd gnd nmos L=0.18u W=0.6u

m427 r60 a3 gnd gnd nmos L=0.18u W=0.6u

m428 r61 a9 gnd gnd nmos L=0.18u W=0.6u

m429 r61 a8bar gnd gnd nmos L=0.18u W=0.6u

m430 r61 a7bar gnd gnd nmos L=0.18u W=0.6u

m431 r61 a6bar gnd gnd nmos L=0.18u W=0.6u

m432 r61 a5bar gnd gnd nmos L=0.18u W=0.6u

m433 r61 a4 gnd gnd nmos L=0.18u W=0.6u

m434 r61 a3bar gnd gnd nmos L=0.18u W=0.6u

m435 r62 a9 gnd gnd nmos L=0.18u W=0.6u

m436 r62 a8bar gnd gnd nmos L=0.18u W=0.6u

m437 r62 a7bar gnd gnd nmos L=0.18u W=0.6u

m438 r62 a6bar gnd gnd nmos L=0.18u W=0.6u

m439 r62 a5bar gnd gnd nmos L=0.18u W=0.6u

m440 r62 a4bar gnd gnd nmos L=0.18u W=0.6u

m441 r62 a3 gnd gnd nmos L=0.18u W=0.6u

m442 r63 a9 gnd gnd nmos L=0.18u W=0.6u

m443 r63 a8bar gnd gnd nmos L=0.18u W=0.6u

m444 r63 a7bar gnd gnd nmos L=0.18u W=0.6u

m445 r63 a6bar gnd gnd nmos L=0.18u W=0.6u

m446 r63 a5bar gnd gnd nmos L=0.18u W=0.6u

m447 r63 a4bar gnd gnd nmos L=0.18u W=0.6u

m448 r63 a3bar gnd gnd nmos L=0.18u W=0.6u

m449 r64 a9bar gnd gnd nmos L=0.18u W=0.6u

m450 r64 a8 gnd gnd nmos L=0.18u W=0.6u

m451 r64 a7 gnd gnd nmos L=0.18u W=0.6u

m452 r64 a6 gnd gnd nmos L=0.18u W=0.6u

m453 r64 a5 gnd gnd nmos L=0.18u W=0.6u

m454 r64 a4 gnd gnd nmos L=0.18u W=0.6u

m455 r64 a3 gnd gnd nmos L=0.18u W=0.6u

m456 r65 a9bar gnd gnd nmos L=0.18u W=0.6u

m457 r65 a8 gnd gnd nmos L=0.18u W=0.6u

m458 r65 a7 gnd gnd nmos L=0.18u W=0.6u

m459 r65 a6 gnd gnd nmos L=0.18u W=0.6u

m460 r65 a5 gnd gnd nmos L=0.18u W=0.6u

m461 r65 a4 gnd gnd nmos L=0.18u W=0.6u

m462 r65 a3bar gnd gnd nmos L=0.18u W=0.6u

m463 r66 a9bar gnd gnd nmos L=0.18u W=0.6u

m464 r66 a8 gnd gnd nmos L=0.18u W=0.6u

m465 r66 a7 gnd gnd nmos L=0.18u W=0.6u

m466 r66 a6 gnd gnd nmos L=0.18u W=0.6u

m467 r66 a5 gnd gnd nmos L=0.18u W=0.6u

m468 r66 a4bar gnd gnd nmos L=0.18u W=0.6u

m469 r66 a3 gnd gnd nmos L=0.18u W=0.6u

m470 r67 a9bar gnd gnd nmos L=0.18u W=0.6u

m471 r67 a8 gnd gnd nmos L=0.18u W=0.6u

m472 r67 a7 gnd gnd nmos L=0.18u W=0.6u

m473 r67 a6 gnd gnd nmos L=0.18u W=0.6u

m474 r67 a5 gnd gnd nmos L=0.18u W=0.6u

m475 r67 a4bar gnd gnd nmos L=0.18u W=0.6u

m476 r67 a3bar gnd gnd nmos L=0.18u W=0.6u

m477 r68 a9bar gnd gnd nmos L=0.18u W=0.6u

m478 r68 a8 gnd gnd nmos L=0.18u W=0.6u

m479 r68 a7 gnd gnd nmos L=0.18u W=0.6u

m480 r68 a6 gnd gnd nmos L=0.18u W=0.6u

m481 r68 a5bar gnd gnd nmos L=0.18u W=0.6u

m482 r68 a4 gnd gnd nmos L=0.18u W=0.6u

m483 r68 a3 gnd gnd nmos L=0.18u W=0.6u

m484 r69 a9bar gnd gnd nmos L=0.18u W=0.6u

m485 r69 a8 gnd gnd nmos L=0.18u W=0.6u

m486 r69 a7 gnd gnd nmos L=0.18u W=0.6u

m487 r69 a6 gnd gnd nmos L=0.18u W=0.6u

m488 r69 a5bar gnd gnd nmos L=0.18u W=0.6u

m489 r69 a4 gnd gnd nmos L=0.18u W=0.6u

m490 r69 a3bar gnd gnd nmos L=0.18u W=0.6u

m491 r70 a9bar gnd gnd nmos L=0.18u W=0.6u

m492 r70 a8 gnd gnd nmos L=0.18u W=0.6u

m493 r70 a7 gnd gnd nmos L=0.18u W=0.6u

m494 r70 a6 gnd gnd nmos L=0.18u W=0.6u

m495 r70 a5bar gnd gnd nmos L=0.18u W=0.6u

m496 r70 a4bar gnd gnd nmos L=0.18u W=0.6u

m497 r70 a3 gnd gnd nmos L=0.18u W=0.6u

m498 r71 a9bar gnd gnd nmos L=0.18u W=0.6u

m499 r71 a8 gnd gnd nmos L=0.18u W=0.6u

m500 r71 a7 gnd gnd nmos L=0.18u W=0.6u

m501 r71 a6 gnd gnd nmos L=0.18u W=0.6u

m502 r71 a5bar gnd gnd nmos L=0.18u W=0.6u

m503 r71 a4bar gnd gnd nmos L=0.18u W=0.6u

m504 r71 a3bar gnd gnd nmos L=0.18u W=0.6u

m505 r72 a9bar gnd gnd nmos L=0.18u W=0.6u

m506 r72 a8 gnd gnd nmos L=0.18u W=0.6u

m507 r72 a7 gnd gnd nmos L=0.18u W=0.6u

m508 r72 a6bar gnd gnd nmos L=0.18u W=0.6u

m509 r72 a5 gnd gnd nmos L=0.18u W=0.6u

m510 r72 a4 gnd gnd nmos L=0.18u W=0.6u

m511 r72 a3 gnd gnd nmos L=0.18u W=0.6u

m512 r73 a9bar gnd gnd nmos L=0.18u W=0.6u

m513 r73 a8 gnd gnd nmos L=0.18u W=0.6u

m514 r73 a7 gnd gnd nmos L=0.18u W=0.6u

m515 r73 a6bar gnd gnd nmos L=0.18u W=0.6u

m516 r73 a5 gnd gnd nmos L=0.18u W=0.6u

m517 r73 a4 gnd gnd nmos L=0.18u W=0.6u

m518 r73 a3bar gnd gnd nmos L=0.18u W=0.6u

m519 r74 a9bar gnd gnd nmos L=0.18u W=0.6u

m520 r74 a8 gnd gnd nmos L=0.18u W=0.6u

m521 r74 a7 gnd gnd nmos L=0.18u W=0.6u

m522 r74 a6bar gnd gnd nmos L=0.18u W=0.6u

m523 r74 a5 gnd gnd nmos L=0.18u W=0.6u

m524 r74 a4bar gnd gnd nmos L=0.18u W=0.6u

m525 r74 a3 gnd gnd nmos L=0.18u W=0.6u

m526 r75 a9bar gnd gnd nmos L=0.18u W=0.6u

m527 r75 a8 gnd gnd nmos L=0.18u W=0.6u

m528 r75 a7 gnd gnd nmos L=0.18u W=0.6u

m529 r75 a6bar gnd gnd nmos L=0.18u W=0.6u

m530 r75 a5 gnd gnd nmos L=0.18u W=0.6u

m531 r75 a4bar gnd gnd nmos L=0.18u W=0.6u

m532 r75 a3bar gnd gnd nmos L=0.18u W=0.6u

m533 r76 a9bar gnd gnd nmos L=0.18u W=0.6u

m534 r76 a8 gnd gnd nmos L=0.18u W=0.6u

m535 r76 a7 gnd gnd nmos L=0.18u W=0.6u

m536 r76 a6bar gnd gnd nmos L=0.18u W=0.6u

m537 r76 a5bar gnd gnd nmos L=0.18u W=0.6u

m538 r76 a4 gnd gnd nmos L=0.18u W=0.6u

m539 r76 a3 gnd gnd nmos L=0.18u W=0.6u

m540 r77 a9bar gnd gnd nmos L=0.18u W=0.6u

m541 r77 a8 gnd gnd nmos L=0.18u W=0.6u

m542 r77 a7 gnd gnd nmos L=0.18u W=0.6u

m543 r77 a6bar gnd gnd nmos L=0.18u W=0.6u

m544 r77 a5bar gnd gnd nmos L=0.18u W=0.6u

m545 r77 a4 gnd gnd nmos L=0.18u W=0.6u

m546 r77 a3bar gnd gnd nmos L=0.18u W=0.6u

m547 r78 a9bar gnd gnd nmos L=0.18u W=0.6u

m548 r78 a8 gnd gnd nmos L=0.18u W=0.6u

m549 r78 a7 gnd gnd nmos L=0.18u W=0.6u

m550 r78 a6bar gnd gnd nmos L=0.18u W=0.6u

m551 r78 a5bar gnd gnd nmos L=0.18u W=0.6u

m552 r78 a4bar gnd gnd nmos L=0.18u W=0.6u

m553 r78 a3 gnd gnd nmos L=0.18u W=0.6u

m554 r79 a9bar gnd gnd nmos L=0.18u W=0.6u

m555 r79 a8 gnd gnd nmos L=0.18u W=0.6u

m556 r79 a7 gnd gnd nmos L=0.18u W=0.6u

m557 r79 a6bar gnd gnd nmos L=0.18u W=0.6u

m558 r79 a5bar gnd gnd nmos L=0.18u W=0.6u

m559 r79 a4bar gnd gnd nmos L=0.18u W=0.6u

m560 r79 a3bar gnd gnd nmos L=0.18u W=0.6u

m561 r80 a9bar gnd gnd nmos L=0.18u W=0.6u

m562 r80 a8 gnd gnd nmos L=0.18u W=0.6u

m563 r80 a7bar gnd gnd nmos L=0.18u W=0.6u

m564 r80 a6 gnd gnd nmos L=0.18u W=0.6u

m565 r80 a5 gnd gnd nmos L=0.18u W=0.6u

m566 r80 a4 gnd gnd nmos L=0.18u W=0.6u

m567 r80 a3 gnd gnd nmos L=0.18u W=0.6u

m568 r81 a9bar gnd gnd nmos L=0.18u W=0.6u

m569 r81 a8 gnd gnd nmos L=0.18u W=0.6u

m570 r81 a7bar gnd gnd nmos L=0.18u W=0.6u

m571 r81 a6 gnd gnd nmos L=0.18u W=0.6u

m572 r81 a5 gnd gnd nmos L=0.18u W=0.6u

m573 r81 a4 gnd gnd nmos L=0.18u W=0.6u

m574 r81 a3bar gnd gnd nmos L=0.18u W=0.6u

m575 r82 a9bar gnd gnd nmos L=0.18u W=0.6u

m576 r82 a8 gnd gnd nmos L=0.18u W=0.6u

m577 r82 a7bar gnd gnd nmos L=0.18u W=0.6u

m578 r82 a6 gnd gnd nmos L=0.18u W=0.6u

m579 r82 a5 gnd gnd nmos L=0.18u W=0.6u

m580 r82 a4bar gnd gnd nmos L=0.18u W=0.6u

m581 r82 a3 gnd gnd nmos L=0.18u W=0.6u

m582 r83 a9bar gnd gnd nmos L=0.18u W=0.6u

m583 r83 a8 gnd gnd nmos L=0.18u W=0.6u

m584 r83 a7bar gnd gnd nmos L=0.18u W=0.6u

m585 r83 a6 gnd gnd nmos L=0.18u W=0.6u

m586 r83 a5 gnd gnd nmos L=0.18u W=0.6u

m587 r83 a4bar gnd gnd nmos L=0.18u W=0.6u

m588 r83 a3bar gnd gnd nmos L=0.18u W=0.6u

m589 r84 a9bar gnd gnd nmos L=0.18u W=0.6u

m590 r84 a8 gnd gnd nmos L=0.18u W=0.6u

m591 r84 a7bar gnd gnd nmos L=0.18u W=0.6u

m592 r84 a6 gnd gnd nmos L=0.18u W=0.6u

m593 r84 a5bar gnd gnd nmos L=0.18u W=0.6u

m594 r84 a4 gnd gnd nmos L=0.18u W=0.6u

m595 r84 a3 gnd gnd nmos L=0.18u W=0.6u

m596 r85 a9bar gnd gnd nmos L=0.18u W=0.6u

m597 r85 a8 gnd gnd nmos L=0.18u W=0.6u

m598 r85 a7bar gnd gnd nmos L=0.18u W=0.6u

m599 r85 a6 gnd gnd nmos L=0.18u W=0.6u

m600 r85 a5bar gnd gnd nmos L=0.18u W=0.6u

m601 r85 a4 gnd gnd nmos L=0.18u W=0.6u

m602 r85 a3bar gnd gnd nmos L=0.18u W=0.6u

m603 r86 a9bar gnd gnd nmos L=0.18u W=0.6u

m604 r86 a8 gnd gnd nmos L=0.18u W=0.6u

m605 r86 a7bar gnd gnd nmos L=0.18u W=0.6u

m606 r86 a6 gnd gnd nmos L=0.18u W=0.6u

m607 r86 a5bar gnd gnd nmos L=0.18u W=0.6u

m608 r86 a4bar gnd gnd nmos L=0.18u W=0.6u

m609 r86 a3 gnd gnd nmos L=0.18u W=0.6u

m610 r87 a9bar gnd gnd nmos L=0.18u W=0.6u

m611 r87 a8 gnd gnd nmos L=0.18u W=0.6u

m612 r87 a7bar gnd gnd nmos L=0.18u W=0.6u

m613 r87 a6 gnd gnd nmos L=0.18u W=0.6u

m614 r87 a5bar gnd gnd nmos L=0.18u W=0.6u

m615 r87 a4bar gnd gnd nmos L=0.18u W=0.6u

m616 r87 a3bar gnd gnd nmos L=0.18u W=0.6u

m617 r88 a9bar gnd gnd nmos L=0.18u W=0.6u

m618 r88 a8 gnd gnd nmos L=0.18u W=0.6u

m619 r88 a7bar gnd gnd nmos L=0.18u W=0.6u

m620 r88 a6bar gnd gnd nmos L=0.18u W=0.6u

m621 r88 a5 gnd gnd nmos L=0.18u W=0.6u

m622 r88 a4 gnd gnd nmos L=0.18u W=0.6u

m623 r88 a3 gnd gnd nmos L=0.18u W=0.6u

m624 r89 a9bar gnd gnd nmos L=0.18u W=0.6u

m625 r89 a8 gnd gnd nmos L=0.18u W=0.6u

m626 r89 a7bar gnd gnd nmos L=0.18u W=0.6u

m627 r89 a6bar gnd gnd nmos L=0.18u W=0.6u

m628 r89 a5 gnd gnd nmos L=0.18u W=0.6u

m629 r89 a4 gnd gnd nmos L=0.18u W=0.6u

m630 r89 a3bar gnd gnd nmos L=0.18u W=0.6u

m631 r90 a9bar gnd gnd nmos L=0.18u W=0.6u

m632 r90 a8 gnd gnd nmos L=0.18u W=0.6u

m633 r90 a7bar gnd gnd nmos L=0.18u W=0.6u

m634 r90 a6bar gnd gnd nmos L=0.18u W=0.6u

m635 r90 a5 gnd gnd nmos L=0.18u W=0.6u

m636 r90 a4bar gnd gnd nmos L=0.18u W=0.6u

m637 r90 a3 gnd gnd nmos L=0.18u W=0.6u

m638 r91 a9bar gnd gnd nmos L=0.18u W=0.6u

m639 r91 a8 gnd gnd nmos L=0.18u W=0.6u

m640 r91 a7bar gnd gnd nmos L=0.18u W=0.6u

m641 r91 a6bar gnd gnd nmos L=0.18u W=0.6u

m642 r91 a5 gnd gnd nmos L=0.18u W=0.6u

m643 r91 a4bar gnd gnd nmos L=0.18u W=0.6u

m644 r91 a3bar gnd gnd nmos L=0.18u W=0.6u

m645 r92 a9bar gnd gnd nmos L=0.18u W=0.6u

m646 r92 a8 gnd gnd nmos L=0.18u W=0.6u

m647 r92 a7bar gnd gnd nmos L=0.18u W=0.6u

m648 r92 a6bar gnd gnd nmos L=0.18u W=0.6u

m649 r92 a5bar gnd gnd nmos L=0.18u W=0.6u

m650 r92 a4 gnd gnd nmos L=0.18u W=0.6u

m651 r92 a3 gnd gnd nmos L=0.18u W=0.6u

m652 r93 a9bar gnd gnd nmos L=0.18u W=0.6u

m653 r93 a8 gnd gnd nmos L=0.18u W=0.6u

m654 r93 a7bar gnd gnd nmos L=0.18u W=0.6u

m655 r93 a6bar gnd gnd nmos L=0.18u W=0.6u

m656 r93 a5bar gnd gnd nmos L=0.18u W=0.6u

m657 r93 a4 gnd gnd nmos L=0.18u W=0.6u

m658 r93 a3bar gnd gnd nmos L=0.18u W=0.6u

m659 r94 a9bar gnd gnd nmos L=0.18u W=0.6u

m660 r94 a8 gnd gnd nmos L=0.18u W=0.6u

m661 r94 a7bar gnd gnd nmos L=0.18u W=0.6u

m662 r94 a6bar gnd gnd nmos L=0.18u W=0.6u

m663 r94 a5bar gnd gnd nmos L=0.18u W=0.6u

m664 r94 a4bar gnd gnd nmos L=0.18u W=0.6u

m665 r94 a3 gnd gnd nmos L=0.18u W=0.6u

m666 r95 a9bar gnd gnd nmos L=0.18u W=0.6u

m667 r95 a8 gnd gnd nmos L=0.18u W=0.6u

m668 r95 a7bar gnd gnd nmos L=0.18u W=0.6u

m669 r95 a6bar gnd gnd nmos L=0.18u W=0.6u

m670 r95 a5bar gnd gnd nmos L=0.18u W=0.6u

m671 r95 a4bar gnd gnd nmos L=0.18u W=0.6u

m672 r95 a3bar gnd gnd nmos L=0.18u W=0.6u

m673 r96 a9bar gnd gnd nmos L=0.18u W=0.6u

m674 r96 a8bar gnd gnd nmos L=0.18u W=0.6u

m675 r96 a7 gnd gnd nmos L=0.18u W=0.6u

m676 r96 a6 gnd gnd nmos L=0.18u W=0.6u

m677 r96 a5 gnd gnd nmos L=0.18u W=0.6u

m678 r96 a4 gnd gnd nmos L=0.18u W=0.6u

m679 r96 a3 gnd gnd nmos L=0.18u W=0.6u

m680 r97 a9bar gnd gnd nmos L=0.18u W=0.6u

m681 r97 a8bar gnd gnd nmos L=0.18u W=0.6u

m682 r97 a7 gnd gnd nmos L=0.18u W=0.6u

m683 r97 a6 gnd gnd nmos L=0.18u W=0.6u

m684 r97 a5 gnd gnd nmos L=0.18u W=0.6u

m685 r97 a4 gnd gnd nmos L=0.18u W=0.6u

m686 r97 a3bar gnd gnd nmos L=0.18u W=0.6u

m687 r98 a9bar gnd gnd nmos L=0.18u W=0.6u

m688 r98 a8bar gnd gnd nmos L=0.18u W=0.6u

m689 r98 a7 gnd gnd nmos L=0.18u W=0.6u

m690 r98 a6 gnd gnd nmos L=0.18u W=0.6u

m691 r98 a5 gnd gnd nmos L=0.18u W=0.6u

m692 r98 a4bar gnd gnd nmos L=0.18u W=0.6u

m693 r98 a3 gnd gnd nmos L=0.18u W=0.6u

m694 r99 a9bar gnd gnd nmos L=0.18u W=0.6u

m695 r99 a8bar gnd gnd nmos L=0.18u W=0.6u

m696 r99 a7 gnd gnd nmos L=0.18u W=0.6u

m697 r99 a6 gnd gnd nmos L=0.18u W=0.6u

m698 r99 a5 gnd gnd nmos L=0.18u W=0.6u

m699 r99 a4bar gnd gnd nmos L=0.18u W=0.6u

m700 r99 a3bar gnd gnd nmos L=0.18u W=0.6u

m701 r100 a9bar gnd gnd nmos L=0.18u W=0.6u

m702 r100 a8bar gnd gnd nmos L=0.18u W=0.6u

m703 r100 a7 gnd gnd nmos L=0.18u W=0.6u

m704 r100 a6 gnd gnd nmos L=0.18u W=0.6u

m705 r100 a5bar gnd gnd nmos L=0.18u W=0.6u

m706 r100 a4 gnd gnd nmos L=0.18u W=0.6u

m707 r100 a3 gnd gnd nmos L=0.18u W=0.6u

m708 r101 a9bar gnd gnd nmos L=0.18u W=0.6u

m709 r101 a8bar gnd gnd nmos L=0.18u W=0.6u

m710 r101 a7 gnd gnd nmos L=0.18u W=0.6u

m711 r101 a6 gnd gnd nmos L=0.18u W=0.6u

m712 r101 a5bar gnd gnd nmos L=0.18u W=0.6u

m713 r101 a4 gnd gnd nmos L=0.18u W=0.6u

m714 r101 a3bar gnd gnd nmos L=0.18u W=0.6u

m715 r102 a9bar gnd gnd nmos L=0.18u W=0.6u

m716 r102 a8bar gnd gnd nmos L=0.18u W=0.6u

m717 r102 a7 gnd gnd nmos L=0.18u W=0.6u

m718 r102 a6 gnd gnd nmos L=0.18u W=0.6u

m719 r102 a5bar gnd gnd nmos L=0.18u W=0.6u

m720 r102 a4bar gnd gnd nmos L=0.18u W=0.6u

m721 r102 a3 gnd gnd nmos L=0.18u W=0.6u

m722 r103 a9bar gnd gnd nmos L=0.18u W=0.6u

m723 r103 a8bar gnd gnd nmos L=0.18u W=0.6u

m724 r103 a7 gnd gnd nmos L=0.18u W=0.6u

m725 r103 a6 gnd gnd nmos L=0.18u W=0.6u

m726 r103 a5bar gnd gnd nmos L=0.18u W=0.6u

m727 r103 a4bar gnd gnd nmos L=0.18u W=0.6u

m728 r103 a3bar gnd gnd nmos L=0.18u W=0.6u

m729 r104 a9bar gnd gnd nmos L=0.18u W=0.6u

m730 r104 a8bar gnd gnd nmos L=0.18u W=0.6u

m731 r104 a7 gnd gnd nmos L=0.18u W=0.6u

m732 r104 a6bar gnd gnd nmos L=0.18u W=0.6u

m733 r104 a5 gnd gnd nmos L=0.18u W=0.6u

m734 r104 a4 gnd gnd nmos L=0.18u W=0.6u

m735 r104 a3 gnd gnd nmos L=0.18u W=0.6u

m736 r105 a9bar gnd gnd nmos L=0.18u W=0.6u

m737 r105 a8bar gnd gnd nmos L=0.18u W=0.6u

m738 r105 a7 gnd gnd nmos L=0.18u W=0.6u

m739 r105 a6bar gnd gnd nmos L=0.18u W=0.6u

m740 r105 a5 gnd gnd nmos L=0.18u W=0.6u

m741 r105 a4 gnd gnd nmos L=0.18u W=0.6u

m742 r105 a3bar gnd gnd nmos L=0.18u W=0.6u

m743 r106 a9bar gnd gnd nmos L=0.18u W=0.6u

m744 r106 a8bar gnd gnd nmos L=0.18u W=0.6u

m745 r106 a7 gnd gnd nmos L=0.18u W=0.6u

m746 r106 a6bar gnd gnd nmos L=0.18u W=0.6u

m747 r106 a5 gnd gnd nmos L=0.18u W=0.6u

m748 r106 a4bar gnd gnd nmos L=0.18u W=0.6u

m749 r106 a3 gnd gnd nmos L=0.18u W=0.6u

m750 r107 a9bar gnd gnd nmos L=0.18u W=0.6u

m751 r107 a8bar gnd gnd nmos L=0.18u W=0.6u

m752 r107 a7 gnd gnd nmos L=0.18u W=0.6u

m753 r107 a6bar gnd gnd nmos L=0.18u W=0.6u

m754 r107 a5 gnd gnd nmos L=0.18u W=0.6u

m755 r107 a4bar gnd gnd nmos L=0.18u W=0.6u

m756 r107 a3bar gnd gnd nmos L=0.18u W=0.6u

m757 r108 a9bar gnd gnd nmos L=0.18u W=0.6u

m758 r108 a8bar gnd gnd nmos L=0.18u W=0.6u

m759 r108 a7 gnd gnd nmos L=0.18u W=0.6u

m760 r108 a6bar gnd gnd nmos L=0.18u W=0.6u

m761 1108 a5bar gnd gnd nmos L=0.18u W=0.6u

m762 r108 a4 gnd gnd nmos L=0.18u W=0.6u

m763 r108 a3 gnd gnd nmos L=0.18u W=0.6u

m764 r109 a9bar gnd gnd nmos L=0.18u W=0.6u

m765 r109 a8bar gnd gnd nmos L=0.18u W=0.6u

m766 r109 a7 gnd gnd nmos L=0.18u W=0.6u

m767 r109 a6bar gnd gnd nmos L=0.18u W=0.6u

m768 r109 a5bar gnd gnd nmos L=0.18u W=0.6u

m769 r109 a4 gnd gnd nmos L=0.18u W=0.6u

m770 r109 a3bar gnd gnd nmos L=0.18u W=0.6u

m771 r110 a9bar gnd gnd nmos L=0.18u W=0.6u

m772 r110 a8bar gnd gnd nmos L=0.18u W=0.6u

m773 r110 a7 gnd gnd nmos L=0.18u W=0.6u

m774 r110 a6bar gnd gnd nmos L=0.18u W=0.6u

m775 r110 a5bar gnd gnd nmos L=0.18u W=0.6u

m776 r110 a4bar gnd gnd nmos L=0.18u W=0.6u

m777 r110 a3 gnd gnd nmos L=0.18u W=0.6u

m778 r111 a9bar gnd gnd nmos L=0.18u W=0.6u

m779 r111 a8bar gnd gnd nmos L=0.18u W=0.6u

m780 r111 a7 gnd gnd nmos L=0.18u W=0.6u

m781 r111 a6bar gnd gnd nmos L=0.18u W=0.6u

m782 r111 a5bar gnd gnd nmos L=0.18u W=0.6u

m783 r111 a4bar gnd gnd nmos L=0.18u W=0.6u

m784 r111 a3bar gnd gnd nmos L=0.18u W=0.6u

m785 r112 a9bar gnd gnd nmos L=0.18u W=0.6u

m786 r112 a8bar gnd gnd nmos L=0.18u W=0.6u

m787 r112 a7bar gnd gnd nmos L=0.18u W=0.6u

m788 r112 a6 gnd gnd nmos L=0.18u W=0.6u

m789 r112 a5 gnd gnd nmos L=0.18u W=0.6u

m790 r112 a4 gnd gnd nmos L=0.18u W=0.6u

m791 r112 a3 gnd gnd nmos L=0.18u W=0.6u

m792 r113 a9bar gnd gnd nmos L=0.18u W=0.6u

m793 r113 a8bar gnd gnd nmos L=0.18u W=0.6u

m794 r113 a7bar gnd gnd nmos L=0.18u W=0.6u

m795 r113 a6 gnd gnd nmos L=0.18u W=0.6u

m796 r113 a5 gnd gnd nmos L=0.18u W=0.6u

m797 r113 a4 gnd gnd nmos L=0.18u W=0.6u

m798 r113 a3bar gnd gnd nmos L=0.18u W=0.6u

m799 r114 a9bar gnd gnd nmos L=0.18u W=0.6u

m800 r114 a8bar gnd gnd nmos L=0.18u W=0.6u

m801 r114 a7bar gnd gnd nmos L=0.18u W=0.6u

m802 r114 a6 gnd gnd nmos L=0.18u W=0.6u

m803 r114 a5 gnd gnd nmos L=0.18u W=0.6u

m804 r114 a4bar gnd gnd nmos L=0.18u W=0.6u

m805 r114 a3 gnd gnd nmos L=0.18u W=0.6u

m806 r115 a9bar gnd gnd nmos L=0.18u W=0.6u

m807 r115 a8bar gnd gnd nmos L=0.18u W=0.6u

m808 r115 a7bar gnd gnd nmos L=0.18u W=0.6u

m809 r115 a6 gnd gnd nmos L=0.18u W=0.6u

m810 r115 a5 gnd gnd nmos L=0.18u W=0.6u

m811 r115 a4bar gnd gnd nmos L=0.18u W=0.6u

m812 r115 a3bar gnd gnd nmos L=0.18u W=0.6u

m813 r116 a9bar gnd gnd nmos L=0.18u W=0.6u

m814 r116 a8bar gnd gnd nmos L=0.18u W=0.6u

m815 r116 a7bar gnd gnd nmos L=0.18u W=0.6u

m816 r116 a6 gnd gnd nmos L=0.18u W=0.6u

m817 r116 a5bar gnd gnd nmos L=0.18u W=0.6u

m818 r116 a4 gnd gnd nmos L=0.18u W=0.6u

m819 r116 a3 gnd gnd nmos L=0.18u W=0.6u

m820 r117 a9bar gnd gnd nmos L=0.18u W=0.6u

m821 r117 a8bar gnd gnd nmos L=0.18u W=0.6u

m822 r117 a7bar gnd gnd nmos L=0.18u W=0.6u

m823 r117 a6 gnd gnd nmos L=0.18u W=0.6u

m824 r117 a5bar gnd gnd nmos L=0.18u W=0.6u

m825 r117 a4 gnd gnd nmos L=0.18u W=0.6u

m826 r117 a3bar gnd gnd nmos L=0.18u W=0.6u

m827 r118 a9bar gnd gnd nmos L=0.18u W=0.6u

m828 r118 a8bar gnd gnd nmos L=0.18u W=0.6u

m829 r118 a7bar gnd gnd nmos L=0.18u W=0.6u

m830 r118 a6 gnd gnd nmos L=0.18u W=0.6u

m831 r118 a5bar gnd gnd nmos L=0.18u W=0.6u

m832 r118 a4bar gnd gnd nmos L=0.18u W=0.6u

m833 r118 a3 gnd gnd nmos L=0.18u W=0.6u

m834 r119 a9bar gnd gnd nmos L=0.18u W=0.6u

m835 r119 a8bar gnd gnd nmos L=0.18u W=0.6u

m836 r119 a7bar gnd gnd nmos L=0.18u W=0.6u

m837 r119 a6 gnd gnd nmos L=0.18u W=0.6u

m838 r119 a5bar gnd gnd nmos L=0.18u W=0.6u

m839 r119 a4bar gnd gnd nmos L=0.18u W=0.6u

m840 r119 a3bar gnd gnd nmos L=0.18u W=0.6u

m841 r120 a9bar gnd gnd nmos L=0.18u W=0.6u

m842 r120 a8bar gnd gnd nmos L=0.18u W=0.6u

m843 r120 a7bar gnd gnd nmos L=0.18u W=0.6u

m844 r120 a6bar gnd gnd nmos L=0.18u W=0.6u

m845 r120 a5 gnd gnd nmos L=0.18u W=0.6u

m846 r120 a4 gnd gnd nmos L=0.18u W=0.6u

m847 r120 a3 gnd gnd nmos L=0.18u W=0.6u

m848 r121 a9bar gnd gnd nmos L=0.18u W=0.6u

m849 r121 a8bar gnd gnd nmos L=0.18u W=0.6u

m850 r121 a7bar gnd gnd nmos L=0.18u W=0.6u

m851 r121 a6bar gnd gnd nmos L=0.18u W=0.6u

m852 r121 a5 gnd gnd nmos L=0.18u W=0.6u

m853 r121 a4 gnd gnd nmos L=0.18u W=0.6u

m854 r121 a3bar gnd gnd nmos L=0.18u W=0.6u

m855 r122 a9bar gnd gnd nmos L=0.18u W=0.6u

m856 r122 a8bar gnd gnd nmos L=0.18u W=0.6u

m857 r122 a7bar gnd gnd nmos L=0.18u W=0.6u

m858 r122 a6bar gnd gnd nmos L=0.18u W=0.6u

m859 r122 a5 gnd gnd nmos L=0.18u W=0.6u

m860 r122 a4bar gnd gnd nmos L=0.18u W=0.6u

m861 r122 a3 gnd gnd nmos L=0.18u W=0.6u

m862 r123 a9bar gnd gnd nmos L=0.18u W=0.6u

m863 r123 a8bar gnd gnd nmos L=0.18u W=0.6u

m864 r123 a7bar gnd gnd nmos L=0.18u W=0.6u

m865 r123 a6bar gnd gnd nmos L=0.18u W=0.6u

m866 r123 a5 gnd gnd nmos L=0.18u W=0.6u

m867 r123 a4bar gnd gnd nmos L=0.18u W=0.6u

m868 r123 a3bar gnd gnd nmos L=0.18u W=0.6u

m869 r124 a9bar gnd gnd nmos L=0.18u W=0.6u

m870 r124 a8bar gnd gnd nmos L=0.18u W=0.6u

m871 r124 a7bar gnd gnd nmos L=0.18u W=0.6u

m872 r124 a6bar gnd gnd nmos L=0.18u W=0.6u

m873 r124 a5bar gnd gnd nmos L=0.18u W=0.6u

m874 r124 a4 gnd gnd nmos L=0.18u W=0.6u

m875 r124 a3 gnd gnd nmos L=0.18u W=0.6u

m876 r125 a9bar gnd gnd nmos L=0.18u W=0.6u

m877 r125 a8bar gnd gnd nmos L=0.18u W=0.6u

m878 r125 a7bar gnd gnd nmos L=0.18u W=0.6u

m879 r125 a6bar gnd gnd nmos L=0.18u W=0.6u

m880 r125 a5bar gnd gnd nmos L=0.18u W=0.6u

m881 r125 a4 gnd gnd nmos L=0.18u W=0.6u

m882 r125 a3bar gnd gnd nmos L=0.18u W=0.6u

m883 r126 a9bar gnd gnd nmos L=0.18u W=0.6u

m884 r126 a8bar gnd gnd nmos L=0.18u W=0.6u

m885 r126 a7bar gnd gnd nmos L=0.18u W=0.6u

m886 r126 a6bar gnd gnd nmos L=0.18u W=0.6u

m887 r126 a5bar gnd gnd nmos L=0.18u W=0.6u

m888 r126 a4bar gnd gnd nmos L=0.18u W=0.6u

m889 r126 a3 gnd gnd nmos L=0.18u W=0.6u

m890 r127 a9bar gnd gnd nmos L=0.18u W=0.6u

m891 r127 a8bar gnd gnd nmos L=0.18u W=0.6u

m892 r127 a7bar gnd gnd nmos L=0.18u W=0.6u

m893 r127 a6bar gnd gnd nmos L=0.18u W=0.6u

m894 r127 a5bar gnd gnd nmos L=0.18u W=0.6u

m895 r127 a4bar gnd gnd nmos L=0.18u W=0.6u

m896 r127 a3bar gnd gnd nmos L=0.18u W=0.6u

*=====================================

*======================================

m897 r0 DEbar vdd vdd pmos L=0.18u W=1.2u

m898 r1 DEbar vdd vdd pmos L=0.18u W=1.2u

m899 r2 DEbar vdd vdd pmos L=0.18u W=1.2u

m900 r3 DEbar vdd vdd pmos L=0.18u W=1.2u

m901 r4 DEbar vdd vdd pmos L=0.18u W=1.2u

m902 r5 DEbar vdd vdd pmos L=0.18u W=1.2u

m903 r6 DEbar vdd vdd pmos L=0.18u W=1.2u

m904 r7 DEbar vdd vdd pmos L=0.18u W=1.2u

m905 r8 DEbar vdd vdd pmos L=0.18u W=1.2u

m906 r9 DEbar vdd vdd pmos L=0.18u W=1.2u

m907 r10 DEbar vdd vdd pmos L=0.18u W=1.2u

m908 r11 DEbar vdd vdd pmos L=0.18u W=1.2u

m909 r12 DEbar vdd vdd pmos L=0.18u W=1.2u

m910 r13 DEbar vdd vdd pmos L=0.18u W=1.2u

m911 r14 DEbar vdd vdd pmos L=0.18u W=1.2u

m912 r15 DEbar vdd vdd pmos L=0.18u W=1.2u

m913 r16 DEbar vdd vdd pmos L=0.18u W=1.2u

m914 r17 DEbar vdd vdd pmos L=0.18u W=1.2u

m915 r18 DEbar vdd vdd pmos L=0.18u W=1.2u

m916 r19 DEbar vdd vdd pmos L=0.18u W=1.2u

m917 r20 DEbar vdd vdd pmos L=0.18u W=1.2u

m918 r21 DEbar vdd vdd pmos L=0.18u W=1.2u

m919 r22 DEbar vdd vdd pmos L=0.18u W=1.2u

m920 r23 DEbar vdd vdd pmos L=0.18u W=1.2u

m921 r24 DEbar vdd vdd pmos L=0.18u W=1.2u

m922 r25 DEbar vdd vdd pmos L=0.18u W=1.2u

m923 r26 DEbar vdd vdd pmos L=0.18u W=1.2u

m924 r27 DEbar vdd vdd pmos L=0.18u W=1.2u

m925 r28 DEbar vdd vdd pmos L=0.18u W=1.2u

m926 r29 DEbar vdd vdd pmos L=0.18u W=1.2u

m927 r30 DEbar vdd vdd pmos L=0.18u W=1.2u

m928 r31 DEbar vdd vdd pmos L=0.18u W=1.2u

m929 r32 DEbar vdd vdd pmos L=0.18u W=1.2u

m930 r33 DEbar vdd vdd pmos L=0.18u W=1.2u

m931 r34 DEbar vdd vdd pmos L=0.18u W=1.2u

m932 r35 DEbar vdd vdd pmos L=0.18u W=1.2u

m933 r36 DEbar vdd vdd pmos L=0.18u W=1.2u

m934 r37 DEbar vdd vdd pmos L=0.18u W=1.2u

m935 r38 DEbar vdd vdd pmos L=0.18u W=1.2u

m936 r39 DEbar vdd vdd pmos L=0.18u W=1.2u

m937 r40 DEbar vdd vdd pmos L=0.18u W=1.2u

m938 r41 DEbar vdd vdd pmos L=0.18u W=1.2u

m939 r42 DEbar vdd vdd pmos L=0.18u W=1.2u

m940 r43 DEbar vdd vdd pmos L=0.18u W=1.2u

m941 r44 DEbar vdd vdd pmos L=0.18u W=1.2u

m942 r45 DEbar vdd vdd pmos L=0.18u W=1.2u

m943 r46 DEbar vdd vdd pmos L=0.18u W=1.2u

m944 r47 DEbar vdd vdd pmos L=0.18u W=1.2u

m945 r48 DEbar vdd vdd pmos L=0.18u W=1.2u

m946 r49 DEbar vdd vdd pmos L=0.18u W=1.2u

m947 r50 DEbar vdd vdd pmos L=0.18u W=1.2u

m948 r51 DEbar vdd vdd pmos L=0.18u W=1.2u

m949 r52 DEbar vdd vdd pmos L=0.18u W=1.2u

m950 r53 DEbar vdd vdd pmos L=0.18u W=1.2u

m951 r54 DEbar vdd vdd pmos L=0.18u W=1.2u

m952 r55 DEbar vdd vdd pmos L=0.18u W=1.2u

m953 r56 DEbar vdd vdd pmos L=0.18u W=1.2u

m954 r57 DEbar vdd vdd pmos L=0.18u W=1.2u

m955 r58 DEbar vdd vdd pmos L=0.18u W=1.2u

m956 r59 DEbar vdd vdd pmos L=0.18u W=1.2u

m957 r60 DEbar vdd vdd pmos L=0.18u W=1.2u

m958 r61 DEbar vdd vdd pmos L=0.18u W=1.2u

m959 r62 DEbar vdd vdd pmos L=0.18u W=1.2u

m960 r63 DEbar vdd vdd pmos L=0.18u W=1.2u

m961 r64 DEbar vdd vdd pmos L=0.18u W=1.2u

m962 r65 DEbar vdd vdd pmos L=0.18u W=1.2u

m963 r66 DEbar vdd vdd pmos L=0.18u W=1.2u

m964 r67 DEbar vdd vdd pmos L=0.18u W=1.2u

m965 r68 DEbar vdd vdd pmos L=0.18u W=1.2u

m966 r69 DEbar vdd vdd pmos L=0.18u W=1.2u

m967 r70 DEbar vdd vdd pmos L=0.18u W=1.2u

m968 r71 DEbar vdd vdd pmos L=0.18u W=1.2u

m969 r72 DEbar vdd vdd pmos L=0.18u W=1.2u

m970 r73 DEbar vdd vdd pmos L=0.18u W=1.2u

m971 r74 DEbar vdd vdd pmos L=0.18u W=1.2u

m972 r75 DEbar vdd vdd pmos L=0.18u W=1.2u

m973 r76 DEbar vdd vdd pmos L=0.18u W=1.2u

m974 r77 DEbar vdd vdd pmos L=0.18u W=1.2u

m975 r78 DEbar vdd vdd pmos L=0.18u W=1.2u

m976 r79 DEbar vdd vdd pmos L=0.18u W=1.2u

m977 r80 DEbar vdd vdd pmos L=0.18u W=1.2u

m978 r81 DEbar vdd vdd pmos L=0.18u W=1.2u

m979 r82 DEbar vdd vdd pmos L=0.18u W=1.2u

m980 r83 DEbar vdd vdd pmos L=0.18u W=1.2u

m981 r84 DEbar vdd vdd pmos L=0.18u W=1.2u

m982 r85 DEbar vdd vdd pmos L=0.18u W=1.2u

m983 r86 DEbar vdd vdd pmos L=0.18u W=1.2u

m984 r87 DEbar vdd vdd pmos L=0.18u W=1.2u

m985 r88 DEbar vdd vdd pmos L=0.18u W=1.2u

m986 r89 DEbar vdd vdd pmos L=0.18u W=1.2u

m987 r90 DEbar vdd vdd pmos L=0.18u W=1.2u

m988 r91 DEbar vdd vdd pmos L=0.18u W=1.2u

m989 r92 DEbar vdd vdd pmos L=0.18u W=1.2u

m990 r93 DEbar vdd vdd pmos L=0.18u W=1.2u

m991 r94 DEbar vdd vdd pmos L=0.18u W=1.2u

m992 r95 DEbar vdd vdd pmos L=0.18u W=1.2u

m993 r96 DEbar vdd vdd pmos L=0.18u W=1.2u

m994 r97 DEbar vdd vdd pmos L=0.18u W=1.2u

m995 r98 DEbar vdd vdd pmos L=0.18u W=1.2u

m996 r99 DEbar vdd vdd pmos L=0.18u W=1.2u

m997 r100 DEbar vdd vdd pmos L=0.18u W=1.2u

m998 r101 DEbar vdd vdd pmos L=0.18u W=1.2u

m999 r102 DEbar vdd vdd pmos L=0.18u W=1.2u

m1000 r103 DEbar vdd vdd pmos L=0.18u W=1.2u

m1001 r104 DEbar vdd vdd pmos L=0.18u W=1.2u

m1002 r105 DEbar vdd vdd pmos L=0.18u W=1.2u

m1003 r106 DEbar vdd vdd pmos L=0.18u W=1.2u

m1004 r107 DEbar vdd vdd pmos L=0.18u W=1.2u

m1005 r108 DEbar vdd vdd pmos L=0.18u W=1.2u

m1006 r109 DEbar vdd vdd pmos L=0.18u W=1.2u

m1007 r110 DEbar vdd vdd pmos L=0.18u W=1.2u

m1008 r111 DEbar vdd vdd pmos L=0.18u W=1.2u

m1009 r112 DEbar vdd vdd pmos L=0.18u W=1.2u

m1010 r113 DEbar vdd vdd pmos L=0.18u W=1.2u

m1011 r114 DEbar vdd vdd pmos L=0.18u W=1.2u

m1012 r115 DEbar vdd vdd pmos L=0.18u W=1.2u

m1013 r116 DEbar vdd vdd pmos L=0.18u W=1.2u

m1014 r117 DEbar vdd vdd pmos L=0.18u W=1.2u

m1015 r118 DEbar vdd vdd pmos L=0.18u W=1.2u

m1016 r119 DEbar vdd vdd pmos L=0.18u W=1.2u

m1017 r120 DEbar vdd vdd pmos L=0.18u W=1.2u

m1018 r121 DEbar vdd vdd pmos L=0.18u W=1.2u

m1019 r122 DEbar vdd vdd pmos L=0.18u W=1.2u

m1020 r123 DEbar vdd vdd pmos L=0.18u W=1.2u

m1021 r124 DEbar vdd vdd pmos L=0.18u W=1.2u

m1022 r125 DEbar vdd vdd pmos L=0.18u W=1.2u

m1023 r126 DEbar vdd vdd pmos L=0.18u W=1.2u

m1024 r127 DEbar vdd vdd pmos L=0.18u W=1.2u

*===================================

*====================================

*xnot0 a0 a0bar vdd inverter

*xnot1 a1 a1bar vdd inverter

*xnot2 a2 a2bar vdd inverter

*=====================================

m1025 a9bar a9 vdd vdd pmos L=0.18u W=1.2u

m1026 a9bar a9 gnd gnd nmos L=0.18u W=0.6u

m1027 a8bar a8 vdd vdd pmos L=0.18u W=1.2u

m1028 a8bar a8 gnd gnd nmos L=0.18u W=0.6u

m1029 a7bar a7 vdd vdd pmos L=0.18u W=1.2u

m1030 a7bar a7 gnd gnd nmos L=0.18u W=0.6u

m1031 a6bar a6 vdd vdd pmos L=0.18u W=1.2u

m1032 a6bar a6 gnd gnd nmos L=0.18u W=0.6u

m1033 a5bar a5 vdd vdd pmos L=0.18u W=1.2u

m1034 a5bar a5 gnd gnd nmos L=0.18u W=0.6u

m1035 a4bar a4 vdd vdd pmos L=0.18u W=1.2u

m1036 a4bar a4 gnd gnd nmos L=0.18u W=0.6u

m1037 a3bar a3 vdd vdd pmos L=0.18u W=1.2u

m1038 a3bar a3 gnd gnd nmos L=0.18u W=0.6u

*====================================

vvdd vdd gnd dc 1.8v

vDEbar DEbar gnd pulse(0 1.8 1n 1n 1n 3n 1300n)

va3 a3 gnd pulse(1.8 0 1n 1n 1n 5n 10n)

va4 a4 gnd pulse(1.8 0 1n 1n 1n 10n 20n)

va5 a5 gnd pulse(1.8 0 1n 1n 1n 20n 40n)

va6 a6 gnd pulse(1.8 0 1n 1n 1n 40n 80n)

va7 a7 gnd pulse(1.8 0 1n 1n 1n 80n 160n)

va8 a8 gnd pulse(1.8 0 1n 1n 1n 160n 320n)

va9 a9 gnd pulse(1.8 0 1n 1n 1n 320n 640n)

*=====================================

.tran 0 1400n

.plot tran v(a3) v(a3bar) v(a4) v(a4bar) v(a5) v(a5bar) v(a6) v(a6bar) v(a7) v(a7bar) v(a8) v(a8bar) v(a9) v(a9bar)

+ v(r0) v(r1) v(r2) v(r3) v(r4) v(r5) v(r6) v(r7) v(r8) v(r9)

+ v(r10) v(r11) v(r12) v(r13) v(r14) v(r15) v(r16) v(r17) v(r18) v(r19)

+ v(r20) v(r21) v(r22) v(r23) v(r24) v(r25) v(r26) v(r27) v(r28) v(r29)

+ v(r30) v(r31) v(r32) v(r33) v(r34) v(r35) v(r36) v(r37) v(r38) v(r39)

+ v(r40) v(r41) v(r42) v(r43) v(r44) v(r45) v(r46) v(r47) v(r48) v(r49)

+ v(r50) v(r51) v(r52) v(r53) v(r54) v(r55) v(r56) v(r57) v(r58) v(r59)

+ v(r60) v(r61) v(r62) v(r63) v(r64) v(r65) v(r66) v(r67) v(r68) v(r69)

+ v(r70) v(r71) v(r72) v(r73) v(r74) v(r75) v(r76) v(r77) v(r78) v(r79)

+ v(r80) v(r81) v(r82) v(r83) v(r84) v(r85) v(r86) v(r87) v(r88) v(r89)

+ v(r90) v(r91) v(r92) v(r93) v(r94) v(r95) v(r96) v(r97) v(r98) v(r99)

+ v(r100) v(r101) v(r102) v(r103) v(r104) v(r105) v(r106) v(r107) v(r108) v(r109)

+ v(r110) v(r111) v(r112) v(r113) v(r114) v(r115) v(r116) v(r117) v(r118) v(r119)

+ v(r120) v(r121) v(r122) v(r123) v(r124) v(r125) v(r126) v(r127)

.end

====================================================================

*sense amplifier

*=======================

.include "C:\Program Files\LTC\SwCADIII\lib\cmp\180nm_model.txt"

*=========================

m2 Y Ybar vdd vdd pmos L=0.18u W=1.2u

m1 Y Ybar n1 gnd nmos L=0.18u W=0.6u

m3 Ybar Y vdd vdd pmos L=0.18u W=1.2u

m4 Ybar Y n1 gnd nmos L=0.18u W=0.6u

m5 n1 SE gnd gnd nmos L=0.18u W=0.6u

vvdd vdd gnd dc 1.8v

vSE SE gnd pulse(1.8 0 1n 1n 1n 30n 60n)

vBL Y gnd pulse(1.8 0 1n 1n 1n 18n 36n)

*vBLbar BLbar gnd pulse(1.8v 0 1n 1n 1n 5n 10n)

.tran 0 100n

*.dc vvdd 0 1.8 0.025

.plot v(Y) v(Ybar)

.end

======================================================================

Read the rest of this article >>

CoreConnect Bus and AMBA Bus Specification Resources

"CoreConnect" and "AMBA" are the two prominent bus architectures used in System on Chip designs. These architectures define technology independent standard bus protocol methodologies for easy integration of IPs within a System on Chip design. "CoreCOnnect" is mainly developed by IBM and integral part of PowerPC processor based System on Chip designs.

CoreConnect bus architecture has three parts:

1. PLB: Processor Local Bus
2. OPB: On chip Peripheral Bus
3. DCR: Device Control Register Bus

These specifications can be downloaded from IBM website.

"AMBA" stands for "Advanced Microcontroller (Microprocessor) Bus Architecture". AMBA specifiation is developed by ARM and extensively used in ARM based System on Chip designs.

AMBA has different versions as listed below from the lowest version:

1. ASP: AMBA Advanced System Bus
2. APB: AMBA Advanced Peripheral Bus
3. AHB: AMBA Advanced High performance Bus
4. AXI: AMBA Advanced eXtensible Interface

You can download AMBA specifications from ARM website also. You have to create an user account and follow the instructions.

Cheers !
Happy protocol reading !
Read the rest of this article >>

System on Chip article links

Recently i came across some System on Chip (SoC) design related articles from design-reuse website. Enjoy good reading:

Getting the most from multiprocessor SoC design

SoC integration complexities rise


Challenges in developing a reusable IP core USB OTG IP case study

A Platform Based SoC Design Environment

Verification of IP Core Based SoC's

Analog IP Integration in SoC: Challenges and Solutions

Interface Synthesis in Multiprocessing Systems-On-Chips

Techniques for energy-efficient SoC design

Using a Versatile, Independent IP Platform for SoC Design

Meeting the challenges of 90nm SoC design

Top-down SoC Design Methodology

Benefits, risks in 90-nm SoC solutions

A Design of System on a Chip for Voice over Wireless LAN

SoC IP Interfaces and Infrastructure -- A Hybrid Approach

A PowerPC SOC IO Processor for RAID applications

Read the rest of this article >>

Clock Definitions

lock Definitions: Rising and falling edge of the clock

For a +ve edge triggered design +ve (or rising) edge is called ‘leading edge’ whereas –ve (or falling) edge is called ‘trailing edge’.

For a -ve edge triggered design –ve (or falling) edge is called ‘leading edge’ whereas +ve (or rising) edge is called ‘trailing edge’.

basic clock
Minimum pulse width of the clock can be checked in PrimeTime by using commands given below:

set_min_pulse_width -high 2.5 [all_clocks]

set_min_pulse_width -low 2.0 [all_clocks]

These checks are generally carried out for post layout timing analysis. Once these commands are set, PrimeTime checks for high and low pulse widths and reports any violations.

Capture Clock Edge

The edge of the clock for which data is detected is known as capture edge.


Clock Definitions:

Launch Clock Edge

This is the edge of the clock wherein data is launched in previous flip flop and will be captured at this flip flop.

launch clock and capture clock

Skew

Skew is the difference in arrival of clock at two consecutive pins of a sequential element is called skew. Clock skew is the variation at arrival time of clock at destination points in the clock network. The difference in the arrival of clock signal at the clock pin of different flops.

Two types of skews are defined: Local skew and Global skew.

Local skew

Local skew is the difference in the arrival of clock signal at the clock pin of related flops.

Global skew

Global skew is the difference in the arrival of clock signal at the clock pin of non related flops. This also defined as the difference between shortest clock path delay and longest clock path delay reaching two sequential elements.

local and global skew

Skew can be positive or negative. When data and clock are routed in same direction then it is Positive skew. When data and clock are routed in opposite direction then it is negative skew.

Positive Skew

If capture clock comes late than launch clock then it is called +ve skew.

Clock and data both travel in same direction.

When data and clock are routed in same direction then it is Positive skew.

+ve skew can lead to hold violation.

+ve skew improves setup time.

positive skew negative skew


Negative Skew

If capture clock comes early than launch clock it is called –ve skew. Clock and data travel in opposite direction. When data and clock are routed in opposite then it is negative skew. -ve skew can lead to setup violation. -ve skew improves hold time. (Effects of skew on setup and hold will be discussed in detail in forthcoming articles)

Uncertainty

Clock uncertainty is the time difference between the arrivals of clock signals at registers in one clock domain or between domains.

Pre-layout and Post-layout Uncertainty

Pre CTS uncertainty is clock skew, clock Jitter and margin. After CTS skew is calculated from the actual propagated value of the clock. We can have some margin of skew + Jitter.

timing diagram depicting skew, latency, jitter

Clock Definitions:

Clock latency

Latency is the delay of the clock source and clock network delay.

Clock source delay is the time taken to propagate from ideal waveform origin point to clock definition point. Clock network latency is the delay from clock definition point to register clock pin.

Pre CTS Latency and Post CTS Latency

Latency is the summation of the Source latency and the Network latency. Pre CTS estimated latency will be considered during the synthesis and after CTS propagated latency is considered.

Source Delay or Source Latency

It is known as source latency also. It is defined as "the delay from the clock origin point to the clock definition point in the design".

Delay from clock source to beginning of clock tree (i.e. clock definition point).

The time a clock signal takes to propagate from its ideal waveform origin point to the clock definition point in the design.


Network Delay (latency)
or Insertion Delay

It is also known as Insertion delay or Network latency. It is defined as "the delay from the clock definition point to the clock pin of the register".

The time clock signal (rise or fall) takes to propagate from the clock definition point to a register clock pin.

Figure below shows example of latency for a design without PLL.


latency for a design without PLL

Clock Definitions:

The latency definitions for designs with PLL are slightly different.

Figure below shows latency specifications of such kind of designs.

Latency from the PLL output to the clock input of generated clock circuitry becomes source latency. From this point onwards till generated clock divides to flops is now known as network latency. Here we can observe that part of the network latency is clock to q delay of the flip flop (of divide by 2 circuit in the given example) is known value.

latency for a design with PLL

Clock Definitions:

Jitter

Jitter is the short-term variations of a signal with respect to its ideal position in time.

Jitter is the variation of the clock period from edge to edge. It can vary +/- jitter value.

From cycle to cycle the period and duty cycle can change slightly due to the clock generation circuitry. Jitter can also be generated from PLL known as PLL jitter. Possible jitter values should be considered for proper PLL design. Jitter can be modeled by adding uncertainty regions around the rising and falling edges of the clock waveform.

Sources of Jitter Common sources of jitter include:

  • Internal circuitry of the phase-locked loop (PLL)

  • Random thermal noise from a crystal

  • Other resonating devices

  • Random mechanical noise from crystal vibration

  • Signal transmitters

  • Traces and cables

  • Connectors

  • Receivers

  • Click here to read more about jitter from Altera.

Multiple Clocks

If more than one clock is used in a design, then they can be defined to have different waveforms and frequencies. These clocks are known as multiple clocks. The logics triggered by each individual clock are then known as “clock domain”.


If clocks have different frequencies there must be a base period over which all waveforms repeat.

Base period is the least common multiple (LCM) of all clock periods


Asynchronous Clocks

In multiple clock domains, if these clocks do not have a common base period then they are called as asynchronous clocks. Clocks generated from two different crystals, PLLs are asynchronous clocks. Different clocks having different frequencies generated from single crystal or PLL are not asynchronous clocks but they are synchronous clocks.


Gated clocks

Clock signals that are passed through some gate other than buffer and inverters are called gated clocks. These clock signals will be under the control of gated logic. Clock gating is used to turn off clock to some sections of design to save power. Click here to read more about clock gating.

Generated clocks

Generated clocks are the clocks that are generated from other clocks by a circuit within the design such as divider/multiplier circuit.


Static timing analysis tools such as PrimeTime will automatically calculate the latency (delay) from the source clock to the generated clock if the source clock is propagated and you have not set source latency on the generated clock.


generated clock
Clock Definitions:

‘Clock’ is the master clock and new clock is generated from F1/Q output. Master clock is defined with the constraint ‘create_clok’. Unless and until new generated clock is defined as ‘generated clock’ timing analysis tools won’t consider it as generated clock. Hence to accomplish this requirement use “create_generated_clock” command. ‘CLK’ pin of F1 is now treated as clock definition point for the new generated clock. Hence clock path delay till F1/CLK contributes source latency whereas delay from F1/CLK contributes network latency.


Virtual Clocks

Virtual clock is the clock which is logically not connected to any port of the design and physically doesn’t exist. A virtual clock is used when a block does not contain a port for the clock that an I/O signal is coming from or going to. Virtual clocks are used during optimization; they do not really exist in the circuit.


Virtual clocks are clocks that exist in memory but are not part of a design. Virtual clocks are used as a reference for specifying input and output delays relative to a clock. This means there is no actual clock source in the design. Assume the block to be synthesized is “Block_A”. The clock signal, “VCLK”, would be a virtual clock. The input delay and output delay would be specified relative to the virtual clock.


Read the rest of this article >>

Transition Delay and Propagation Delay

Transition Delay

Transition delay or slew is defined as the time taken by signal to rise from 10 %( 20%) to the 90 %( 80%) of its maximum value. This is known as “rise time”.



Transition Delay or Slew



Similarly “fall time” can be defined as the time taken by a signal to fall from 90 %( 80%) to the 10 %( 20%) of its maximum value.

Transition is the time it takes for the pin to change state.


Setting Transition Time Constraints

The above theoretical definitions are to be applied on practical designs. Now, the transition time of a net becomes the time required for its driving pin to change logic values (from 10 %( 20%) to the 90 %( 80%) of its maximum value). This transition time used foe delay calculations are based on the timing library (.lib files).


Transition related constraints can be provided in Design Compiler (logic synthesis tool from Synopsys) by using below commands:


1. max_transition : This attribute is applied to each output of a cell. During optimization, Design Compiler tries to make the transition time of each net less than the value of the max_transition attribute.

2. set_max_transition: This command is used to change the maximum transition time restriction specified in a technology library.


“This command sets a maximum transition time for the nets attached to the identified ports or to all the nets in a design by setting the max_transition attribute on the named objects.

For example, to set a maximum transition time of 3.2 on all nets in the design adder, enter the following command:


set_max_transition 3.2 [get_designs adder]


To undo a set_max_transition command, use the remove_attribute command. For example, enter the following command:


remove_attribute [get_designs adder] max_transition”


(Directly quoted from Design Complier user manual)


Setting Capacitance Constraints

The transition time constraints specified above do not provide a direct way to control the actual capacitance of nets. To control capacitance directly, below command has to be used:

set_max_capacitance: This command sets the maximum capacitance constraint on input ports or designs.

In addition to set_max_transition, set_max_capacitance can also be used as this command works independent.

This command applies maximum capacitance limit to output pin or port of the design.

This command can also be used to apply capacitance limit on any net.


Eg:

set_max_capacitance 4 [get_designs decoder]


To remove the set_max_capacitance command, use the remove_attribute command.


remove_attribute [get_designs decoder] max_capacitance


Propagation Delay


Propagation delay is the time required for a signal to propagate through a gate or net.

Hence if it is cell, you can call it as “Gate or Cell Delay” or if it is net you can call it as “Net Delay”


Propagation delay of a gate or cell is the time it takes for a signal at the input pin to affect the output signal at output pin.


For any gate propagation delay is measured between 50% of input transition to the corresponding 50% of output transition.


There are 4 possibilities:


Propagation delay between 50 % of Input rising to 50 % of output rising.

Propagation delay between 50 % of Input rising to 50 % of output falling.

Propagation delay between 50 % of Input falling to 50 % of output rising.

Propagation delay between 50 % of Input falling to 50 % of output falling.


Each of these delays has different values. Maximum and minimum values of these set are very important. Maximum and minimum propagation delay values are considered for timing analysis.


For net propagation delay is the delay between the time a signal is first applied to the net and the time it reaches other devices connected to that net.


Propagation delay is taken as the average of rise time and fall time i.e. Tpd= (Tphl+Tplh)/2.


Propagation delay depends on the input transition time (slew rate) and the output load. Hence two dimensional look up tables are used to calculate these delays. How to calculate propagation delay of net and gate? Please refer below articles to find the detailed explanation.


How gate delay is calculated?

How net delay is calculated?


Contamination Delay:


Best case delay from valid input to valid output. i.e. minimum propagation delay.




Read the rest of this article >>

Net Delay or Interconnect Delay or Wire Delay or Extrinsic Delay or Flight Time

Net Delay or Interconnect Delay or Wire Delay or Extrinsic DelaNet delay is the difference between the time a signal is first applied to the net and the time it reaches other devices connected to that net.

It is due to the finite resistance and capacitance of the net. It is also known as wire delay.

Wire delay = function of (Rnet, Cnet+Cpin)

This is output pin of the cell to the input pin of the next cell.



Net delay is calculated using Rs and Cs.

There are several factors which affect net parasitic:

  • Net Length

  • Net cross-sectional area

  • Resistively of material used for metal layers (Aluminum vs. copper)

  • Number of vias traversed by the net

  • Proximity to other nets (crosstalk)

Post-layout design is annotated with RCs extracted from layout for better accuracy. Annotated RCs override information from WLM.

Interconnect introduces capacitive, resistive and inductive parasites. All three have multiple effects on the circuit behavior.

  1. Interconnect parasites cause an increase in propagation delay (i.e. it slows down working speed)

  2. Interconnect parasites increase energy dissipation and affect the power distribution.

  3. Interconnect parasites introduce extra noise sources, which affect reliability of the circuit. (Signal Integrity effects)

Dominant parameters determine the circuit behavior at a given circuit node. Non-dominant parameters can be neglected for interconnect analysis.

  • Inductive effect can be ignored if the resistance of the wire is substantial enough-this is the case for long aluminum wires with a small cross section or if the rise and fall times of the applied signals are slow.
  • When the wires are short, the cross section of the wire is large or the interconnect material used has a low resistivity, a capacitive only model can be used.
  • When the separation between neighboring wires is large or when the wires only run together for short distance, inter-wire capacitance can be ignored, and all the parasitic capacitance can be modeled as capacitance to ground.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Capacitance

Capacitance can be modeled by the parallel plate capacitor model.

C = (ε / t).WL

Where

ε --> permittivity of dielectric material (SiO2)

t --> thickness of dielectric material (SiO2)

W --> width of wire

L --> length of wire

ε --> εr εo where εr --> relative permittivity of SiO2

εo --> 8.854 x 10-12 F/m; permittivity of free space

As technology node shrinks (scaling), to minimize resistance of the wires, it is desirable to keep the cross section of the wire (WxH) as large as possible. But this increases area. Small values of W lead to denser wiring and less area overhead. In advanced process W/H ratio has reduced below unity. Under such circumstances parallel plate capacitance model becomes inaccurate. The capacitance between the sidewall of the wires and substrate called fringing capacitance can no longer be ignored and contributes to the overall capacitance.




Net Delay or Interconnect Delay or Wire Delay or Extrinsic Dela

Inter-wire capacitance become dominant factor in multilayer interconnect structures. These floating capacitors (not connected to substrate or ground) form a source of noise (cross talk). This effect is more pronounced for wires in the higher interconnect layer, as these are farther away from the substrate.

Generally higher metal layers (i.e. interconnects) have higher thickness (i.e. height) and higher dielectric layers have higher permittivity. Hence these wires display the highest inter-wire capacitance. Hence use it for global signals that are not sensitive to interference. (eg. Supply rails). Or it is advisable to separate wires by an amount that is larger than minimum spacing.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Resistance

Resistance R=.L)/ (H.W) = (ρ. L)/ Area

L --> length

W --> width

ρ --> resistivity (ohm-m)

Since H (height, thickness) is constant for a given technology we can write: R = Rs.(L/W) where Rs=ρ/H ohm/sqare is called “sheet resistance”.

At very high frequencies “skin effect” comes into play such that the resistance becomes frequency dependent. High frequency currents tend to flow primarily on the surface of a conductor, with the current density falling off exponentially with depth into the conductor.

Skin effect is only an issue for wider wires. Since clocks tends to carry the highest frequency signals on a chip and also fairly wide to limit resistance, the skin effect likely to have its first impact on these lines.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Inductance

With the adoption of low resistance interconnect materials and the increase of switching frequencies to GHz range, inductance starts to an important role. Consequences of on chip inductance include ringing and overshoot effect, reflection of signals due to impedance mismatch, inductive coupling between lines, and switching noise due to (Ldi/dt) voltage drops.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Lumped Capacitor Model

As long as the resistive component of the wire is small, and switching frequencies are in the low to medium range, it is meaningful to consider only the capacitive component of the wire, and to lump the distributed capacitance into a single capacitance.



Net Delay or Interconnect Delay or Wire Delay or Extrinsic Dela

The only impact on performance is introduced by the loading effect of the capacitor on the driving gate.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Lumped RC Model

If wire length is more than a few millimeters, the lumped capacitance model is inadequate and a resistive capacitive model has to be adopted.

In lumped RC model the total resistance of each wire segment is lumped into one single R, combines the global capacitive into single capacitor C.

Analysis of network with larger number of R and C becomes complex as network contains many time constants (zeroes and poles). Elmore delay model overcome such problem.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Elmore Delay Model



Properties of the network:

  • Has single input node
  • All the capacitors are between a node and ground.
  • Network does not contain any resistive loops.


Path resistance” is the resistance from source node to any other node.

Shared path resistance” is the resistance shared among the paths from the source node to any other two nodes.

Hence,

Delay at node 1: Tow d1 = R1C1

Delay at node 2: Tow d2= (R1+R2)C2

Delay at node 3: Tow d3 = (R1+R2+R3)C3

In general:

τdi=R1C1+(R1+R2)C2+……..+(R1+R2+R3+…..+Ri)Ci

If

R1=R2=R3=….=R

C1=C2=C3=…..C then

τdi=RC+2RC+……..+nRC

Thus Elmore delay is equivalent to the first order time constant of the network.

Assuming an interconnect wire of length L is partitioned into N identical segments. Each segment has length L/N.

Then,

τd=L/N.R.L/N.C+ 2 (L/n.r+L/N.C)+……

=(L/N)2(RC+2RC+…….+NRC)

=(L/N)2. N(N+1)

or τd=RC.L2/2

=> The delay of a wire is a quadratic function of its length

=> doubling the length of the wire quadruples its delay

Advantages

  • It is simple
  • It is always situated between minimum and maximum bounds

Disadvantages

  • It is pessimistic and inaccurate for long interconnect wires.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Distributed RC model

Lumped RC model is always pessimistic and distributed RC model provides better accuracy over lumped RC model.

But distributed RC model is complex and no closed form solution exists. Hence distributed RC line model is not suitable for Computer Aided Design Tools.


The behavior of the distributed RC line can be approximated by a lumped RC ladder network such as Elmore Delay model hence these are extensively used in EDA tools.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Transmission Line Model


When frequency of operation increases to a larger extent
, rise (or fall) time of the signal becomes comparable to time of flight of the net, then inductive effects starts dominating over RC values.
This inductive effect is modeled by Transmission Line models. The model assumes that the signal is a "wave" and it propagates over the medium "net".

There are two types of transmission models:


Lossless transmission line model: This is good for Printed Circuit Board level design.

Lossy transmission line model: This model is used for IC interconnect model.

Transmission line effects should be considered when the rise or fall time of the input signal is smaller than the time of flight of the transmission line or resistance of the wire is less than characteristics impedance.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Wire Load Models

Extraction data from already routed designs are used to build a lookup table known as the wire load model (WLM). WLM is based on the statistical estimates of R and C based on “Net Fan-out”.


For fanouts greater than those specified in a wire load table, a “slope factor” is specified for linear extrapolation.

wire_load (“5KGATES”) {

resistance : 0.000271 -------------> R per unit length

capacitance : 0.00017 -------------> C per unit length

slope : 29.4005 ---------------------> Used for linear extrapolation

fanout_length (1, 18.38) ----------> (fanout = 1, length = 18.38)

fanout_length (2, 47.78)

fanout_length (3, 77.18)

fanout_length (4, 106.58)

fanout_length (5, 135.98)

}

Eg:

Fanout = 7


Net length = 135.98 + 2 x 29.4005 (slope) = 194.78 ----------> length of net with fanout of 7
Resistance = 194.78 x 0.000271 = 0.05279 units

Capacitance = 194.78 x 0.00017 = 0.03311 units

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Wire load models for synthesis

Wire load modeling allows us to estimate the effect of wire length and fanout on the resistance, capacitance, and area of nets. Synthesizer uses these physical values to calculate wire delays and circuit speeds. Semiconductor vendors develop wire load models, based on statistical information specific to the vendors’ process. The models include coefficients for area, capacitance, and resistance per unit length, and a fanout-to-length table for estimating net lengths (the number of fanouts determines a nominal length).

Selection of wire load models in the initial stage (before physical design) depends on the fallowing factors:

1. User specification

2. Automatic selection based on design area

3. Default specification in the technology library

Once the final routing step is over in the physical design stage, wire load models are generated based on the actual routing in the design and synthesis is redone using those wire load models.

In hierarchical designs, we have to determine which wire load model to use for nets that cross hierarchical boundaries. There are three modes for determining which wire load model to use for nets that cross hierarchical boundaries:

Top:

Applying same wire load models to all nets as if the design has no hierarchy and uses the wire load model specified for the top level of the design hierarchy for all nets in a design and its sub designs.

Enclosed:

The wire load model of the smallest design that fully encloses the net is applied. If the design enclosing the net has no wire load model, then traverses the design hierarchy upward until we finds a wire load model. Enclosed mode is more accurate than top mode when cells in the same design are placed in a contiguous region during layout.

Use enclosed mode if the design has similar logical and physical hierarchies.

Segmented:

Wire load model for each segment of a net is determined by the design encompassing the segment. Nets crossing hierarchical boundaries are divided into segments. For each net segment, the wire load model of the design containing the segment is used. If the design contains a segment that has no wire load model, then traverse the design hierarchy upward until it finds a wire load model.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Interconnect Delay vs. Deep Sub Micron Issues

Performances of deep sub micron ICs are limited by increasing interconnect loading affect. Long global clock networks account for the larger part of the power consumption in chips. Traditional CAD design methodologies are largely affected by the interconnect scaling. Capacitance and resistance of interconnects have increased due to the smaller wire cross sections, smaller wire pitch and longer length. This has resulted in increased RC delay. As technology is advancing scaling of interconnect is also increasing. In such scenario increased RC delay is becoming major bottleneck in improving performance of advanced ICs.


et Delay or Interconnect Delay or Wire Delay or Extrinsic Dela Here the gate delay and the interconnect delay are shown as functions of various technology nodes ranging from 180nm to 60nm. The interconnect delays shown assumes a line where repeaters are connected optimally and includes the delay due to the repeaters. From the graph it can be observed that with the shrinking of technology gate delay reduces but interconnect delay increases.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Limits of Cu/low-k interconnects

At submicron level of 250 nm copper with low-k dielectric was introduced to decrease affects of increasing interconnect delay. But below 130 nm technology node interconnect delays are increasing further despite of introducing low-k dielectric. As the scaling increases new physical and technological effects like resistivity and barrier thickness start dominating and interconnect delay increases. Introduction of repeaters to shorten the interconnect length increases total area. The vias connecting repeaters to global layers can cause blockage in lower metal layers. Thus as the technology improves material limitations will dominate factor in the interconnect delay. Increasing metal layer width will cause increase in metallization layer. This can’t be a solution for the problem as it increases complexity, reliability and cost.


Cu low-k dielectric films are deposited by a special process known as Damascene process. Adhesion property of Cu with dielectric materials is very poor. Under electric bias they easily drift and cause short between metal layers. To avoid this problem a barrier layer is deposited between dielectric and Cu trench. Even though it decreases effective cross section of interconnects compared to drawn dimensions, it improves reliability. The barrier thickness becomes significant in deep submicron level and effective resistance of the interconnect rises further. In addition to this increasing electron scattering and self heating caused by the electron flow in interconnects due to comparable increase in internal chip temperature also contribute to increase interconnect resistance.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
References

[1] Jan M. Rabaey, Anantha Chandrakasan and Borivoje Nikolic, "Digital Integrated Circuits- A Design Perspective", Prentice Hall, Second Edition
[2] Design Compiler User Manual

Read the rest of this article >>