代做EEEE3098 VLSI Coursework (CW1)代写Java编程

VLSI Coursework (CW1)

This coursework forms part of the assessment for the Integrated Circuits and Systems module EEEE3098.  It must be written as a formal report and submitted via Moodleno later than 3pm on Thursday 12th December 2024. This report is 30% of the overall marks for this module with the usual penalties for late submission.

Introduction

Very Large Scale Integration design today is carried out totally by use of a computer.   The Computer Aided Design (CAD) route for full custom VLSI design is typically as follows:

1.          Schematic:                    System  drawn  using  schematic  symbols  such  as  NAND  gates, flip-flops etc.

2.          High Level                      System simulated either at the gate or behavioural level Simulation:

3.          Cell Design:                    Individual  cells  are  designed  and  simulated  at  the transistor level using SPICE or a similar circuit level simulator.  This is called the Pre-layout simulation

4.          Cell Layout:                   CAD   layout  used  to   layout  individual  transistors  in  each  cell

- "Polygon pusher"

5.          Design Rule Check: The various features  drawn  are checked for minimum size and separation (DRC)

6.          Netlist Extract:              Capacitance, resistance and the netlist is now extracted automatically from the layout

7.          Electrical Rule Check: The circuit is now checked for electrical violations (ERC), ie outputs short circuit

8.          Simulation:                    The circuit  is  now  re-simulated with SPICE, with the parasitics calculated in (6) above included.   This is called the Post layout simulation.

9.          System Layout:             Complete  chip  is  laid  out  and  if  necessary  steps 5, 6, 7 and 8 are repeated at the system level.

10.       Verification:                  The layout is converted either to a transistor or agate description.  This is then compared with the original schematic description in (1) above.

11.        Mask Generation:        The  layout,  usually described in a text form, is then converted into a photomask.  One of the standard text layout forms is CIF (Caltech Intermediate Format)

Computers today can handle designs with many thousands of transistors.  The package being used in this coursework is freeware software.

The IC process being used in this coursework is the silicon gate CMOS process and has the following process parameters:

Cox = 9 x 10-4 pFµm-2;

Cmf = 0.3 x 10-4 pFµm-2

L = 2.00

µm;

Cjan/p = 2.0 x 10-4 pFµm-2

KN' = 44

µA V-2;

Cp = 0.6 x 10-4 pF µm-2

Kp' = 13

µA V-2;

Cjpp/n = ignore

Cmp = ignore

Aim

The aim of this coursework is to:

(i)         Characterise   by   computer   simulation  the  transient   performance  of  a   previously

designed CMOS inverter under both pre- and post-layout conditions.

(ii)         Provide experience of CMOS layout structures and the associated CAD tools that are used to create and test them, as described above.

(iii)        Design a CMOS NAND3 gate at the schematic level and produce a valid layout design.

(iv)        Discuss   some    important   design    consideration    and   latest    CMOS   technological development.

Software Installation

Two pieces of software are used for this coursework - Lasi7 and LTspice. These software are available from Moodle and can be run on any Windows computer. Please install them.

Note that it is not the aim of this courswork to demonstrate the idiosyncrasies of this CAD packageso I make no apologies for not explaining all the possible commands.

Part 1 - Inverter Analysis

1.        Cell Design : (Pre-Layout)

We shall assume that a CMOS inverter has been designed at the transistor level, pre-layout, such that both transistor widths and lengths are 3.5µm and 2µm, respectively.  A pre-layout transistor netlist description for this circuit is provided in the file inverterpre.cir in the folder VLSI_Design. Click LTspice XVII on your desktop and then open the file inverterpre.cir. Examine the file and deduce the meaning of each statement in the netlist.  Then do the following and include them in your report:

Task 1: Check that the connectivity of the netlist is correct for a CMOS inverter.  Do this by drawing the circuit diagram in your report and label the nodes of your diagram with the node numbers and component names from LTspice netlist.                        [3 marks]

Task 2: Verify  that  the  input  capacitance  of  12.6fF  stated  in  the  netlist  is  correct  for  the inverter. To do this, calculate the capacitance using an appropriate equation together with the CMOS size and process parameters given in Introduction.     [3 marks]

Note also that an output capacitance of 100.8fF has been added which represents eight similar inverters loading the output. Note: this value will be changed later on in the coursework design. We need to run a transient analysis which will be used to record the output voltage of the inverter overtime, resulting from the input waveform specified in the net list. To do this click Simulate->Run and then click Plot Settings->Visible Traces to select V(in) and V(out).

Task 3: Include the transient plot to your report annotating it to indicate the discharging and charging gate delays τgc and τgd and record the approximate values.              [3 marks]

Click File->Export data as text to save the transient raw data to inverterpre.txt. They can be examined with any text editor. Use them to achieve a better resolution of delay times.

The pre-layout simulation for transient conditions is now complete, but before moving on:

Task 4: Check your values of τgc and τgd by calculation and compare these with the results obtained from the spice simulation.       [3 marks]

2.        Inverter Layout

A  possible  layout  for the  inverter  is  presented  next  and  is  also  printed  at  the  end  of  this document. To start the CAD software Lasi7, run C:\Lasi7\Lasi7.exe if you installed Lasi7 in the default folder. You may create a shortcut for Lasi7.exe on your desktop. Click Browse to select the folder VLSI_Design and then select Inverter.cir and then click OK. Click List to bring up a list of available cells. Double click on inverter and then click OK.  A coloured layout should appear. Identify the two MOS transistors, the N-well, the Field Oxide etc.

If the inverter layout isn’t centred in the screen properly, press “Alt f” . If the layout becomes obscured at any point you can also use “alt f” to refresh the display. If you get in a mess press the ESC key. If this doesn’t fix things then choose Undo along the top.  If you still have a problem then you will need tore-copy the VLSI_Design folder.

The LASI window is divided into three areas: The drawing window, which is the main area, the button bank on the right and the menu bar. The menus don’t function in the same way as normal menus do – they act as buttons instead.

There are actually two banks of buttons available on the right hand side. Clicking on “Menu 1” or “Menu 2” at the top of the bank will change banks, as will clicking the right mouse button in  the drawing area. Not all of the buttons actually change function. The function of relevant  buttons is explained in the page at the end of this document.

Measure the width and length of the transistor within Lasi.  The values should be displayed in µm  in  the   bottom  left  hand  corner  of  the  window.   Clicking  on  the   button   “Grid”  will add/remove a grid on the drawing area. The coarseness of the grid can be changed by clicking on “ Dgrid” .

3.         Netlist Extraction

We now must extract atransistor netlist and parasitics present on the layout.  This is carried out with “LasiCkt” . Click “System” in LASI and select “LasiCkt” . Check that the cell for extraction in “Setup” is “inverter” as before and select vlsi.hdr and vlsilab.drc as Header File Name and Footer File Name, respectively.  Finally, at the LasiCkt7 menu click “Go” to extract the netlist. Debug any errors you get - there should be none!

The net-list is contained in "inverter.cir". Open the net-list with the LTSpice software and note the new value of input and output capacitance. Notice that the input capacitance (16.26fF) is now different from previous one because of it includes additional gate parasitics.

Task 5: Using  the  process  data  given   in   Introduction,  calculate  values  for  Cin  and  Cout including additional gate parasitics and compare them with the ones calculated by the software. Use a copy of the inverter layout to highlight the different areas you are considering to compute capacitance values. Ignore the capacitance “C_VDD” between Vdd and Vss (i.e. ground).    [6 marks]

4.        Simulation of Extracted Circuit (Post-Layout Simulation)

Save “Inverterpre.cir” to “Inverterpost.cir” and then update the C_in and C_out with the values from  inverter.cir.  The  extracted   net-list  with   parasitics,  Inverterpost.cir,  can   now  be  re- simulated in LTspice.

Task 6: Include the transient plot to your report as you did before annotating it to indicate the discharging and charging gate delays τgc and τgd and record the approximate values. [3 marks]

The delay you just computed are the inherent (unloaded) delays for this inverter cell. We now wish to observe the cell behaviour in response to 8 unit loads and then find the fan-out loading factor τLD for this cell (see Lecture 6 – CMOS combinatonal Design for the definition of τLD). To do this, modify the inverterpost.cir file, set the output capacitance value Cout to 150fF and then run again the transient analysis. The 150fF is approximately equivalent to 8 unit loads plus the inherent output capacitance,i.e.

19.6fF + 8 x 16.26fF 150fF

You will see that the output doesn't quite reach Vdd  before it starts falling again, so change the clock by editing the spice netlist. In the netlist file, find the line near the top that describes V2 via the PULSE statement. Change the 5ns to 10ns and the 10ns to 20ns – this halves the clock rate. Change the transient simulation time from 10ns to 20ns and then re-run the transient analysis.

Task 7: Include the transient plot to your report also for the loaded case.  Measure the new τgc and τgd to a suitable accuracy.        [3 marks]

Task 8: As did  before, compute the delays τgc and τgd for the post-layout inverter in both loaded and unloaded case.            [6 marks]

Task 9: Compare the calculated values with the one obtained in simulation and give possible reasons why the values do not fully agree. Show how improvements can be made to the simulation, calculation or both, to obtain a better agreement.      [4 marks]

Task 10: Determine τ’LD in units of ns/pF for both L -> H and H -> L.                                  [2 marks]

Task 11: Why is the propagation delay L -> H greater than the propagation H -> L even though the transistors are of the same size?       [3 marks]

Part 2 - NAND3 Design and Layout

The purpose of this section is to give you a different viewpoint of layout design. Rather than just analysing existing designs, as we have done in lectures, you are here to try to design your own circuit and create the corresponding layout – taking design rules into account, of course. I hope that you will get a better understanding of how the layers fit together to make devices and circuits, as well as the related skills like circuit design and design rules.

The aim is the schematic and layout design of a digital logic cell to be used as a standard cell of height 60λ .  Please note that as already mentioned, the design must be free of design rule errors. You  should  also try to  make  it  as  compact  as  possible.  When  marking  the  layouts consideration will be made of the tidiness of the design. The gate you will be designing is a NAND3 (3 input NAND gate).

Schematic Design

The specification you must meet with your design is that the worst case switching delay must be less than 2ns when driving a load of 100fF. You must design both the P and N networks intelligently, which is to say that you must ensure that the values for τgc and τgd meet the timing requirement, but that they are also not over engineered. Do not exceed the timing specification by more than a factor of 20%, i.e. your τgc and τgd values must be greater than 1.6ns,but do not need to be identical. You should calculate the width and length for each transistor.

Task 12: In your report, draw the NAND3 schematic circuit diagram.                                [5 marks]

Task 13: Show  your  complete  calculations  the  width  and  length  for  each  transistor  to demonstrate your design respects the requirements.                                         [20 marks]

Layout Design

Now you have designed your circuit, you need to start drawing the layout. Run Lasi7. Instead of selecting an existing cell, type the name of your new cell and press OK. A new window will ask you to select the cell Rank. Choose 2 and press OK.

Firstly, add the stdcell_60 cell to your design. This includes a small amount of metal that shows where the Vdd  and Vss  lines should go. You should extend this metal in the x direction to the final width of your cell. To add the cell, click the Obj button and choose the stdcell_60 cell from the list. Now click Add and click to add the cell. To change back to being able to add rectangles, click Obj and select Box, before using Add again.

You should now start to draw your gate. You can choose what layer to draw by pressing the Layr button in the button bank on the right. Once you have done this, click Add and you can then draw rectangles of that layer. Please note that the snap grid resolution is 0.5λ . Start by drawing the device and polysilicon layers, ensuring the width and length of the overlap (i.e. the gate) are correct.

Deleting a rectangle

Click aPut to deselect everything, click fGet (full get) and click and then click again on the layout window to draw a box around one of the corners of the rectangle you wish to delete. It should turn white. Now click Del.

Resizing a rectangle

Click on aPut to deselect everything. Now click on the Get button. Draw a box around the edge of the rectangle you wish to resize. That single edge should turn white. Now click Mov, the click at the start point of the move, move the mouse and click on the destination.

Moving a rectangle

Use Get orfGet to select the entire rectangle and then use Mov as above to move the whole rectangle.

DRC

Once you have finished the layout of your gate you should run DRC to check it is valid. Click the System menu, then LasiDrc. In the LasiDrc window, click Setup to ensure that the cell name is correct and select vlsilab.drc from the folder VLSI_Design as DRC File Name. Next make sure that “Start check” is 1, and “Finish check” is 100. You should also always click “Fit” to ensure that the DRC tool looks at the smallest complete area possible.

Once the DRC has run (click Go), you should get a message about any errors. If you have any, you can open the DRC error map file using the Map menu from LasiDRC.

Post Layout Check

Task 14: After you have completed your layout, make an estimate of the output capacitance of your layout design. Your estimate should include the junction capacitance only, there is no need to add the wire capacitance. Include your calculations in your report. Does your design still meet the required timing? If not, please modify the design to meet the requirements.        [15 marks]

Part 3 - Discussion

Task 15: Discuss the design solutions if the NAND gate needs to drive a 100pF external load while still meeting the delay requirements.          [6 marks]

Task 16: Why   delay,   power   consumption   and   area   are   the   most   important   IC   design parameters, in terms of environmental impact and commercial market? How are they related to each other, in terms of design consideration?         [6 marks]

Task 17: How to mitigate the design risk, in terms of Layout design rule settings?         [3 marks]

Task 18: FinFET   is  widely   used   in   modern   chip   designs.   What  are   its  advantages   and disadvantages?        [6 marks]

Final Steps

You should include a good quality screen capture (not photograph!) of the complete design in your report and make sure your report covers all the tasks. You should also create a zip of the VLSI_Design folder and submit that alongside your report, so that I can verify the files myself. Please note that missing design files will result in lost marks, so take care to include all of the files you have produced.

Report guidelines

Report must not exceed 12 pages. Please use Microsoft Word or an equivalent software to write it, including equations. Do not put hand-written parts. Also schematic and diagram have to be drawn with a software of your choice.

Please include the task number in your report to facilitate marking.

The usual deduction will apply for work submitted late. Do not leave your submission to the last minute, even a few seconds late will incur the late penalty.

Plagiarism and collusion are actively checked for. Please do not allow anyone else access to your work, even your friends.





热门主题

课程名

mktg2509 csci 2600 38170 lng302 csse3010 phas3226 77938 arch1162 engn4536/engn6536 acx5903 comp151101 phl245 cse12 comp9312 stat3016/6016 phas0038 comp2140 6qqmb312 xjco3011 rest0005 ematm0051 5qqmn219 lubs5062m eee8155 cege0100 eap033 artd1109 mat246 etc3430 ecmm462 mis102 inft6800 ddes9903 comp6521 comp9517 comp3331/9331 comp4337 comp6008 comp9414 bu.231.790.81 man00150m csb352h math1041 eengm4100 isys1002 08 6057cem mktg3504 mthm036 mtrx1701 mth3241 eeee3086 cmp-7038b cmp-7000a ints4010 econ2151 infs5710 fins5516 fin3309 fins5510 gsoe9340 math2007 math2036 soee5010 mark3088 infs3605 elec9714 comp2271 ma214 comp2211 infs3604 600426 sit254 acct3091 bbt405 msin0116 com107/com113 mark5826 sit120 comp9021 eco2101 eeen40700 cs253 ece3114 ecmm447 chns3000 math377 itd102 comp9444 comp(2041|9044) econ0060 econ7230 mgt001371 ecs-323 cs6250 mgdi60012 mdia2012 comm221001 comm5000 ma1008 engl642 econ241 com333 math367 mis201 nbs-7041x meek16104 econ2003 comm1190 mbas902 comp-1027 dpst1091 comp7315 eppd1033 m06 ee3025 msci231 bb113/bbs1063 fc709 comp3425 comp9417 econ42915 cb9101 math1102e chme0017 fc307 mkt60104 5522usst litr1-uc6201.200 ee1102 cosc2803 math39512 omp9727 int2067/int5051 bsb151 mgt253 fc021 babs2202 mis2002s phya21 18-213 cege0012 mdia1002 math38032 mech5125 07 cisc102 mgx3110 cs240 11175 fin3020s eco3420 ictten622 comp9727 cpt111 de114102d mgm320h5s bafi1019 math21112 efim20036 mn-3503 fins5568 110.807 bcpm000028 info6030 bma0092 bcpm0054 math20212 ce335 cs365 cenv6141 ftec5580 math2010 ec3450 comm1170 ecmt1010 csci-ua.0480-003 econ12-200 ib3960 ectb60h3f cs247—assignment tk3163 ics3u ib3j80 comp20008 comp9334 eppd1063 acct2343 cct109 isys1055/3412 math350-real math2014 eec180 stat141b econ2101 msinm014/msing014/msing014b fit2004 comp643 bu1002 cm2030
联系我们
EMail: 99515681@qq.com
QQ: 99515681
留学生作业帮-留学生的知心伴侣!
工作时间:08:00-21:00
python代写
微信客服:codinghelp
站长地图