Revisions for IC Station
changed:
-
IC Station
Dette dokumentet beskriver: <br/>
- Oppstart av IC Station <br/>
- DRC (Design rule check) <br/>
- LVS (Layout versus schematic test) <br/>
- Ekstrahering av parameter fra utlegg
En god introduksjon til IC Station og tegning av layout finnes her: "cad.tut.II.2004.pdf", http://pluto.fysel.ntnu.no/manuals/cad.tut.II.2004.pdf <br/>
Denne er skrevet ved NTNU, men kan fint brukes her på IFT.
**Oppstart**
<pre>
mentor-s35d4
</pre>
Dette sikrer at vi kjører versjon 2003.4 av mentor-programmene. <br/>
Design Architect og IC Station vil nå starte opp med prosessen S35D4 som default. Skal du bruke en annen teknologi må programmene startes med opsjonen *-t (teknologinavn)*, f.eks. C35B4.
Gå til den katalogen hvor du vil ha prosjektfilene dine. Sett denne katalogen til arbeidskatalog med kommandoen
<pre>
wd
</pre>
Nå kan IC Station startes med kommandoen
<pre>
ams_ic &
</pre>
Dette starter IC Station med bibloteket til prosessen S35D4.
**Create cell**
Innstillinger for prosessen S35:
<pre>
Cell name: (Navn på cell/utlegg)
Attach library: $AMS_DIR/mentor/ic_station/s35/libraries/s35d4.library
Process: $AMS_DIR/mentor/ic_station/s35/process/s35d4.process
Rules file: $AMS_DIR/mentor/ic_station/s35/rules/s35d4.rules
</pre>
___________________________________
**DRC (Design Rule Check)**
DRC sjekker at utlegget er korrekt i henhold til de *design rules* som gjelder for prosessen. DRC sjekker *ikke* om transistorer er riktig koblet sammen. Det gjøres i LVS-testen som beskrives senere.
Fra paletten: Velg *ICrules* --> *Check*.
<img src="uploads/drc_chedr.bmp" />
Feilmeldingen "Number must be a positive number or zero" kommer av at default-verdien til "Maximum results per rule check" er satt altfor høy eller en negativ verdi. Velg *Options...* og sett innstillingene omtrent som på figuren under. Du vil gjerne sette navnet på rapportfilen til noe mer passende...
<img src="uploads/drc_options_2.bmp" />
Velg *OK* begge steder for å kjøre DRC.
Bruk så knappene *First* og *Next* for å se på feil for feil. Feilene markeres med en hvit ramme i utlegget samtidig som det står en forklarende melding nederst på skjermen.
De innstillingene vi gjorde under *Options...* trenger vi bare gjøre første gang vi kjører DRC etter å ha startet IC Station.
DRC kan også startes fra menyen øverst i vinduet. Se bilde.
<img src="uploads/drc_fra_meny.bmp" />
___________________________________
**LVS (Layout Versus Schematic test)**
Når utlegget har passert DRC må vi kjøre LVS-sjekk. Her sjekkes at utlegget stemmer overens med skjemaet. LVS kontrollerer at skjema og utlegg er samme elektriske krets. Dersom noen komponenter er koblet feil sammen eller har feil størrelse i henhold til skjema, får vi melding om det.
OBS! Hvis du har åpent et "logic" i forbindelse med SDL, må dette lukkes nå. Velg *File* --> *Logic* --> *Close*.
Fra paletten: Velg *ICtrace(M)* <br/>
Klikk på *SETUP* (den blå knappen).
<img src="uploads/lvs_setup_button.bmp" />
Klikk på *LVS* og fyll ut dialogboksen tilsvarende figuren under.
<img src="uploads/lvs_2.bmp" />
Trykk på knappen *Setup LVS...* <br/>
Dialogboksen du nå får se vil ha innstillinger tilsvarende figuren under. Disse innstillingene ble satt da vi klikket på den blå setup-knappen.
<img src="uploads/lvs_setup_2.bmp" />
Klikk *OK* begge steder for å kjøre LVS.
Sjekk rapportfilen. Hvis LVS-testen gikk bra vil du se et smilefjes i rapporten.
Når LVS-testen er vellykket kan vi åpne et vindu i IC Station som viser skjemaet. Velg *Logic* --> *Open*, og angi stien til viewpointet (samme som *Source Name* i dialogboksen LVS (Mask)). Ved å klikke på et nett eller en transistor, vil tilsvarende markeres i utlegget.
___________________________________
**IC-extract (Ekstrahering av parasitter)**
Når vi simulerer skjemaet vårt i DA simulerer vi bare skjema. Dvs. transistormodeller med ideelle ledninger mellom. Simulatoren vil ikke ta hensyn til parasittiske kapasitanser og resistanser i utlegget.
Slike parasitter er avhengig av hvordan transistorene er tegnet, hvor tett vi plasserer dem, hvordan vi foretar ruting osv. For å finne ut hvordan kretsen på utlegget egentlig virker må vi ekstrahere disse parasittene, importere dem i skjemaet vårt og kjøre simulering en gang til.
Parasitter representerer ekstra poler, som kan føre til at systemet ikke lengre tilfredsstiller spesifikasjonene. Derfor er det viktig å simulere skjemaet med effektene fra utlegget.
Lag en kopi av det originale skjemaet du tegnet i DA (Save sheet as...). Lukk det "gamle" og åpne det nye. Lag et viewpoint av det nye skjemaet. Vi skal bruke det nye skjemaet til simulering med informasjon fra utlegget. <br/>
Er du i simuleringsmodus? Gå ut av simuleringsmodus.
I IC Sation: <br/>
Fra paletten: Velg *ICextract (M)* <br/>
Lukk eventuelle åpne *logic*. <br/>
Klikk *Lumped* og fyll ut dialogboksen tilsvarende figuren under.
<img src="uploads/extract_mask_lumped_parameters.bmp" />
Åpne skjemaet i DA igjen og gå i simuleringsmodus. <br/>
Skjemaet vil nå se ut omtrent som figuren under.
<img src="uploads/sch_parasitics _included.bmp" />
Legg til transistormodellene som skal brukes i simuleringen. <br/>
Klikk *Lib/Temp/Inc* og legg til følgende sti (for S35):
<pre>
$AMS_DIR/eldo/s35/cmos53tm.mod
</pre>
Fra pletten, velg *Annotations --> Merge all* <br/>
Informasjonen fra utlegget er nå inkludert, og fargen har skiftet fra rød til gul.
Sett opp simulering (analyser, plot) og kjør.
Lykke til!
<hr>
Simulering med parasitteffekter som egen nettliste
AustriMicroSystems
<a href="file:///pakke/mgc/design_kits/ams_hk_3.51/www/hitkit/hk350/icstation/icextract.html#6">
beskriver her</a>
en metode for å lage en selvstendig netlist for krets med parasitiske effekter ekstrahert fra layout.
Denne simuleres så i DA-IC ved å slå av generering av netlist (Session->Environment->Run Sim) og så kjøre simulering hver gang man har ekstrahert på ny.
Et viktig tips er å kjøre ekstrahering fra pull-down menyene Extract->Mask-Lumped eller Extract->Mask->Distributed istedenfor å velge tilsvarende fra paletten. Dermed får man satt de riktige default verdier, og scriptet rewrite_netlist kalles automatisk for nødvendig konvertering av bl.a. modellnavn og måleenheter.
Nettlisten som kommer ut inneholder kretsen i en subscircuit. Ved å kommentere vekk linjene med .subckt og .ends kan nettlisten kopieres over nettlisten generert av DA-IC og simuleres med samme plot og målinger. Alternativt kan man i DA-IC velge den ekstraherte nettlisten i Setup->Session->Environment.