IC studio
Kom igang med IC studio
Dette er en kort beskrivelse av hvordan man bruker IC studio for å tegne kretsskjema, lage nettliste og kjøre simulering.
Første gang man skal arbeide med Mentor Graphics verktøy skriv følgende kommando og start deretter et nytt skall. Dette skal du kun gjøre en gang for din konto.
ssh -X mikroserver2 /prog/design_kits/micro.init.csh
Starte opp IC studio
Skriv i et terminalvindu:
# Slå av autorepeat for funksjonstaster xset -r 67 -r 68 -r 69 -r 70 -r 71 -r 72 -r 73 -r 74 -r 75 -r 76 -r 95 -r 96
ssh -X mikroserver2 tcsh source /prog/design_kits/mentor_init/mentor-s35d4.csh unsetenv LANG ams_icstudio -project mgc/mitt_prosjekt -tech c35b4c3 &
Du kan endre mitt_prosjekt til det du selv ønsker, men uten mellomrom. Kommandoen starter IC studio med AMS-biblioteket til prosessen c35b4c3.
Om du ønsker å bruke Mentor programmene fra en Windows-PC så se på forklaringene i Teknisk hjelp
Dokumentasjon
Trenger du hjelp til skjemategning og/eller Design Architect generelt, kan du finne dokumentasjon her: $MGC_HOME/shared/htmldocs start f.eks. firefox slik:
firefox file:///$MGC_HOME/shared/infohubs/common/html/index.html\?infohub=icstudio_ih\&tab=docs
Det finnes også pdf-utgaver av dokumentasjonen. Den kan leses slik:
acroread $MGC_HOME/shared/pdfdocs/daic_user.pdf
Åpne et nytt skjema
Høyre-klikk Library-vinduet. Velg "New Library" og fyll inn f.eks. "My designs". Klikk på det nye biblioteket og høyre-klikk deretter i Cell-vinduet og velg "New View". Sett "View Type" til Schematic, slik som vist i figuren. Gi det nye skjemaet et navn. Deretter trykker du Finish. Du skal nå få opp Design-Architect-IC.
velg "Show/Hide Library Palette" fra ikonlisten til venstre, nr 2 fra bunnen. Trykk på "HIT-Kit Utilities"
Velg symboler fra AMS-biblioteket eller fra standard-biblioteket. AMS-biblioteket inneholder komponenter som er mulig å lage i c35b4-prosessen. Standard-biblioteket inneholder standard-komponenter og ideelle komponenter. Fra menyen til høyre: Velg AMS Library eller Library.
I Design Architect-IC kalles skjemasymbol for "instance".
Symboler for spenningsnett (GND og VDD) finnes ved å velge: AMS Library - etc - cell power.
Det er enklest å bruke ideelle motstander og kondensatorer hvis du bare skal gjøre en simulering. Hvis du bruker slike komponenter må du legge til en "property" som kalles "INSTPAR" med den verdien motstanden eller kondensatoren skal ha, for eksempel 1k eller 1p. Dette gjøres ved å høyre-klikke på komponenten, velge properties->add og skrive inn INSTPAR på property name og verdien på komponenten under property value.
For å tegne ledninger: Velg Add – Wire fra menyen til høyre, eller trykk F3 på
tastaturet. En ledning avsluttes ved å trykke Enter. Trykk Esc for å avslutte add wire mode.
Sett navn på nettene (forbindelsene) som inn, ut, GND.
Velg: Name – Net fra menyen til høyre.
Net med samme navn blir koblet i sammen selv om det ikke er kabel mellom de.
Kilder (spenning-, strøm- og signalkilder) finnes under Add->Source i fil-menyen på toppen. Gjør innstillinger i dialogboksen, trykk OK og plasser symbolet på
skjemaet.
For GBW målinger bruker du en AC kilde med magnitude på 1.
For å se signalet i et tids spekter kan du velge en sinusspenning med frekvens på f. eks. 1000Hz og amplitude 1V.
Transistorene finnes under "Ams-Library → Devices → MOS", bruk nmos4 for nmos og pmos4 for pmos
Skjemaet lagres ved å trykke Check & Save fra menyen til høyre.
Design Viewpoint
Før vi kan begynne med simulering må vi sette “design viewpoint”. Velg AMS DVE "AMS Utilities → create viewpoint"fra menyen til høyre eventuellt "Hit-Kit Utilities → create viewpoint" fra fil-menyen på toppen.
Skriv inn stien til prosjektkatalogen (samme som cell name i ICstudio, dvs $navn_på_library/default.group/logic.views/navn_på_cell) og kontroller at de
andre innstillingene stemmer, dvs C35B4 og Device skal være nedsunket.
Når du har trykket OK genereres en ny underkatalog som inneholder info om den prosessen vi skal bruke. I denne katalogen vil du etterhvert også finne nettlisten (en tekstfil som beskriver kretsen).
Dette trenger du bare gjøre én gang, men du kan ikke gjøre det før etter du har trykket Check & Save første gang.
Simulering
Når vi skal simulere må vi gå inn i “simuleringsmodus”. Velg Simulation fra menyen til høyre.
Siden vi bare har ett viewpoint i prosjektet vårt skal dette være valgt i Config Name (øverst). Velg OK.
Så er vi i simuleringsmodus.
Vi må fortelle netlisteren hvilket nett som er 0-referanse (jord/GND). Velg Session – Netlister fra menyen til høyre.
Skriv inn under Set Node 0 navnet du satte på jord-nettet i skjemaet.
Trykk OK.
Vi må velge prosesshjørne. Det finnes under menyen oppe: HIT KIT Utilities / Set simulation models. Her trenger du ikke endre på noe, men du må ha vært innom her og trykket OK for å bekrefte “typical”.
Setup → Forces definerer nettverk verdiene (f. eks. input og vdd).
Analyser, prober og plot
Vi må sette prober og analyser for å få noe fornuftig ut av simulatoren. Velg f. eks. inngangen og utgangen på kretsen ved å klikke på skjemaet mens du holder nede control.
Velg Wave Outputs fra menyen til høyre. Under object velger du en eller flere av nettene du har valgt, under analysis velger du analyse metoden og under modifier velger du hvilke signal du vil se. Du kan velge flere typer ved å holde nede control. Tilslutt trykker du på knappen med tegningen av et ark med et pluss tegn på.
Velg Analyses (igjen fra menyen til høyre) og merk av f. eks. Transient om du har en sinus kilde, AC om du har en AC kilde. Hak og av for DCOP for å få DC operating point data. Trykk Setup-knappen ved siden av Transient og sett f. eks. som vist på figuren under.
Dersom du vil kjøre en noise analyse så må du ha en AC kilde og du må hake av for AC og NOISE analyse, i setupen til noise analysen velger du navnet på AC kilden under "Input noise source" og navnet på nettet til utgangen din under "Output noise net". Under "Print frequency point every" skriver du antall ganger på en dekade programmet skal regne ut støyen, dersom du vil finne ut total output/input noise må dette tallet være over 0. Hak så av for de plottene du vil ha. Total output/input noise pluss støyen ved hver dekade fra 1-50Mhz blir skrevet til .chi filen. Plottene er gitt i V/rot(Hz)
Nå er det bare å generere nettliste og kjøre simulering. Simulatoren vi bruker heter ELDO. Hvis vi kun vil generere nettliste bruker vi knappen Netlist. Ved å trykke på knappen Run ELDO genereres nettlisten og simulatoren kjøres.
ELDO kjøres i bakgrunnen og skriver statusmeldinger til log-vinduet under skjemaet. Sjekk at du ikke får feilmeldinger før du prøver å analysere resultatene. Dersom du satte på DCOP under analyse vil du finne alle nodespenningene og total power consumption for kretsen i loggen.Denne informasjonen kan du og finne igjen i .chi-filen.
For å studere resultat-plottene, velg View Waves fra menyen til høyre. Dette starter programmet EZwave, som brukes til å studere simuleringsresultater. For å plotte en eller flere signaler så velger du signalet i treet på venstre side, høyre-klikker og velger plot-stacked for å få de under hverandre eller plot-overlayed for å få de oppå hverandre. Du kan så legge til en cursor ved å tryke på ikonet som ar to bokser med et pluss tegn i mellom, eller ved å bruke F5. Cursoren kan nå flyttes frem og tilbake manuelt, eller du kan høyreklikke og velge "Move To..." og taste inn hvor du vil den skal flyttes.
For å gjøre kalkulasjoner på signalet kan du trykk på knappen med tegning av en blyant og to linjaler, eller du kan trykke Ctrl-M. Du velger først signalet du vil måle på ved å trykke på navnet ved siden av grafen for så å trykke på knappen inni measurement tool som er ved siden av den med viskelær. Har du f.eks et sinus signal så kan du måle peak to peak ved å hake av for det, velge "Apply measurement to" "visible X region only" dersom du har zoomet inn, eller "entire waveform" ellers. Er det pulstog eller lignende du simulerer så kan du velge timedomain under measurement øverst og du vil få en oppdatert meny ved siden av som har mange relevante målemetoder.
Når du vil gjøre forandringer i skjemaet velger du End Sim, og du er tilbake i
“skjema-modus”. Når du igjen skal simulere:
Velg Check & Save.
Velg Simulation for å gå inn i simuleringsmodus.
Velg Run ELDO for å kjøre simulering med samme innstillinger som sist.
Du kan endre parametre direkte ved å holde musen over parameteren og trykke shift-F7. Dersom du endrer på noen parametre inne i simuleringsmodus slikat teksten blir rød så kan du fjerne endringen med shift-F6. Treffer du en komponent og den blir fjernet så gjør undo ved å trykke U.
Eldo og dens filer
Nettlisten består av én eller flere filer. Hovedfilen finnes i katalogen
- vpt_s35d4_device* og har navnet *.cir. Denne er en tekstfil som kan leses av
mennesker (i f.eks. en tekst-editor). Filen inneholder informasjon om hvor bibliotekene ligger og hvilke plot vi vil ha ut. DA Lager hovedfilen enkel, og bruker denne til å inkludere de andre filene. Det er en god idé å åpne disse filene og studere dem. Spør noen som vet.
Hvis vi har en enkel krets kan vi skrive .cir-filen på egenhånd uten å tegne skjema i DA. Simulatoren kan vi selv kjøre fra kommandolinje i et terminalvindu med kommandoen:
eldo filnavn.cir
hvor “filnavn.cir” er kildefilen.
ELDO produserer forskjellige output-filer: - .chi-filen er en tekstfil hvor ELDO lister opp alt den har gjort. Her finnes kildekoden, info om feil og advarsler, data for hvordan transistorene oppfører seg (metning/lineært område) hvor lang tid simuleringen tok og mere til. Letteste måten å finne ut hvor .chi filen blir av er å studere message area nederst etter at du har fullført en eldo simulering. Om ikke vinduet er der så trykk på setup knappen på ikonmenyen øverst, den helt til venstre, og hak av for "Show message area" og trykk ok. Etter simuleringen får du opp
Note : Now processing: /heim/brukernavn/mgc/mitt_prosjekt.proj/navn_på_library.lib/default.group/logic.views/navn_på_cell/vpt_c35b4_device/navn_på_cell_vpt_c35b4_device.op1
I fra shellet kan du åpne .chi filen ved å kopiere pathen fra over, men skifte ut op1 på slutten med chi, feks slik:
less /heim/brukernavn/mgc/mitt_prosjekt.proj/navn_på_library.lib/default.group/logic.views/navn_på_cell/vpt_c35b4_device/navn_på_cell_vpt_c35b4_device.chi
når filen er åpnet kan du trykke shift-g så kommer du til slutten av filen, ruller du tre sider opp sånn ca så er du ved transistor dataen. Du kan og bruke gedit istedet for less, da får du det opp i "notepad". Her står det om transistorene er i metning eller ikke og alle andre parametre, ignorer det negative tegnet på kondensatorene, ro er det samme som 1/GDS.
- .attr er en fil med de plottene vi spurte etter. Denne må åpnes i Xelga eller DA IC View.
Tips
For å gjøre det lettere å bruke programmet kan vi sette noen innstillinger i DA-vinduet. Velg MGC – Setup – Session. Velg f. eks. disse innstillingene:
Måten DA bruker for å velge symboler med kan virke litt rar. Det kan du stille på ved å velge Session i menyen til høyre (ikke ha schematic-vinduet aktivt). Fra rullegardinmenyene velg: Setup – Selection. Bytt gjerne fra Additive til Individual.
Dersom du ikke har et grått meldingsvindu nederst, er det en fordel å hake av for dette inni setup. Vinduet gir meldinger som ikke dukker opp i library vinduet.
For at DA skal huske disse innstillingene til neste gang velger du fra rullegardinmenyene: Setup - Save Setup. Hvis du får en feilmelding (nederst på skjermen) som sier “katalogen /mgc/startup finnes ikke”, så er det bare å opprette en slik katalog og prøve igjen.
Tutorial for konstruksjon av inverter og symbol
Tutorialet forutsetter at du har gjort det som står under IC_studio#Starte_opp_IC_studio og fått startet programmet.
1. Om du ikke allerede har et library så kan du høyre-klikke i Library ruten og velge "New Library". Kall bibloteket noe fornuftig.
2. Høyre-klikk i Cell vinduet og velg "New Cell View". Kall cellen for inverter, velg schematic under "View Type". Trykk Finish og Design Architect vil åpne seg.
3. Om det ikke er en meny på høyre side så trykker du på "Toggle lib" knappen på venstre meny, nest nederst.
4. Trykk på "HIT-Kit Utilities" på den høyre menyen.
5. Legg til nmos transistoren som under ved å gå til "Devices->MOS->nmos4", når vinduet kommer opp trenger du ikke endre noe siden n-transistoren skal ha unity size. W er satt til 0.4, men har en effektiv lengde på 0.35 i produksjonen.
6. Legg til nmos transistoren som under ved å gå til "Devices->MOS->pmos4", når vinduet kommer opp trykker du på "Change WTOT" og fyller inn 1. I følge databladet har Kp en gjennomsnittsverdi på 170uA/v og Kn har 58uA/V. Så det må være en faktor på 3 mellom n og p transistorene.
7. Legg til VDD og GND. De ligger under "etc->cell power->vdd_g" for VDD og "etc->cell power->gnda_g" for GND
8. Legg til port inn og port ut. De ligger under "etc->portin" og "etc->portout".
9. Legg til kabler som vist under. Du starter kablingen ved å trykke W, klikk en gang for å begynne en kabel, en gang til et annet sted for å henge den fast der og to ganger et sted for å stoppe kabelen. Du slutter kabel trekkingsverktøyet med ESC.
10. Skift navn på nettet til portene ved å først trykke på kabelen fremfor porten slik at den blir hvit for så å trykke på "Net name" knappen på menyen til venstre. Kall innporten for A og utporten for Q.
11. Trykk på "File->Check schematic" om det er listet noen errors så fiks disse, warnings er vanligvis ikke så nøye.
12. Trykk på "Miscellaneous->Generate symbol". I vinduet som dukker opp trykker du på "Choose shape" og velger "Buffer". Trykk OKx2 og du får opp symbolet til kretsen din.
13. Trykk på kabelen under "out" merket og trykk delete.
14. Trykk på Circle knappen på høyre side og lag en sirkel foran spissen på bufferet.
15. Trykk på Polyline knappen på høyre side og trekk en strek fra pinnen til sirkelen som vist under.
16. Trykk på "Setup->Select filter" på fil menyen. Hak av for allt og trykk ok.
17. Trykk så på "hide labels" på venstre side.
13. Trykk "Check & Save" på venstre side og gå tilbake til library vinduet.
Har du lagt symbolet inn i et nytt skjema, men har sener oppdatert eller endret noe i symbolet eller den bakomliggende kretsen så må du høyreklikke på symbolet i skjemaet og velge "Update".