ANALOGIAPIIRIT III/SUUNNITTELUHARJOITUS OSA 5 Tässä osassa viimmesitellään OSA 2:ssa piirretyn operaatiovahvistimen piirikuvio lopulliseen, prosessoitavaan muotoon, lisäämällä tarvittavat standardirakenteet. Tavoitteet: 1. Viimmeistele piirikuvio lopulliseen, prosessoitavaan muotoon, lisäämällä tarvittavat standardirakenteet. 2. Valitse piirikotelo ja luo bondauskaavio. 3. Luo suunnitelmastasi gds-esitysmuoto, jonka avulla piirikuvio voidaan siirtää piirivalmistajalle. 1. Lopullisen piirikaavion luominen sekä padien ja standardirakenteiden sijoittelu Seuraavaksi käsiteltävät asiat ovat nähtävissä liitteenä olevista esimerkkipiirikaavioista ja -piirikuvioista sekä kurssin kotisivulla olevassa layout-kuvassa. Jotta piirin tulot, lähdöt ja käyttöjännitteet voidaan kytkeä piirin ulkopuolelle, pitää jokainen pinni (terminaali) kytkeä layoutissa bondauslangalle varattuun metallialueeseen. Tämä metallialue ja siihen liittyvät suojarakenteet muodostavat ns. padisolut. Jotta layoutin tarkistus olisi mahdollista, pitää tässä vaiheessa luoda myös uusi piirikaavio, johon ko. padien symbolit lisätään. Ensin kannattaa OSA 1:ssä piirretylle piirikaaviolle luoda symboli (jos näin ei ole jo tehty). Selkeyden vuoksi tässä symbolissa pinnien olisi hyvä olla samassa järjestyksessä kuin operaatiovahvistimen piirikuviossa olevat pinnit. Seuraavaksi luodaan uusi piirikaavio, johon edellä luotu symboli sijoitetaan. Nyt jokaiseen symbolin pinniin kytketään tarkoitukseen sopiva padi IOLIB-kirjastosta. Padien lähdöt kytketään symbolin pinneihin ja tulot piirikaavioon luotuihin pinneihin, joille kannattaa antaa pinninien funktioita hyvin kuvaavat nimet. Nämä nimet vastaavat usein lopullisen piirin jalkojen nimiä. Sopivat analogisille signaalelille tarkoitetut padit löytyvät Analog_IO-kategoriasta. Analogisia I/O-padeja on kirjastossa kahdeksan erilaista. Nämä kahdeksan jakaantuvat kahteen ryhmään, joista toisen nimet päättyvät C-kirjaimeen (esim. IOA3C) ja toisen P-kirjaimeen (esim. IOA3P). C-versiot soveltuvat ns. corerajoitettujen piirien (so. piirissä on vähän padeja verrattuna piirikuvion pinta-alaan) padeiksi. Vastaavasti, jos padeja tarvitaan paljon (padien rajoittama piiri) ovat kapeammat P-päätteiset padit sopivia. Sekä C- että P-padeista on neljä erilaista versiota, jotka eroavat toisistaan staattisen sähkön suojavastuksen koon perusteella. Tämä suojavastus pitää ottaa huomioon simuloinneissa, jos piiri on esim. erittäin nopea tai vähäkohinainen. (Tässä harjoituksessa ko. vastusta ei huomioida.) Käyttöjännitepadit eroavat hieman käytöltään verrttuna I/O-padeihin. Käyttöjännite padeissa on vain yksi pinni, joka kytketään piirikaaviossa globaaleihin käyttöjännitesymboleihin vdd tai gnd (löytyvät analoglib-kirjastosta). Referenssijännitteet kannattaa tuoda piiriin tavallisten analogia I/O padien kautta.
3.1 Padien sijoittelu ja pad-ringin piirto Lopullista piirikuviota varten luodaan edellä piirretylle solulle (piirikaavio) layoutesitysmuoto aiemmin opitulla piirikaaviopohjaisella layout-työkalulla. Padit sijoitetaan suorakaiteeksi operaatiovahvistimen layoutin ympärille siten, että padin lähtö on aina suorakaiteen sisälle päin. Suorakaiteen kulmiin lisätään sopivat kulmapalat IOLIB-kirjaston Corners-kategoriasta. Padien käyttöjännitteet kytketään toisiinsa piirtämällä metalliraamit (=padi-ringit) koko piirin ympärille. Ts. esim. analogia I/O-padeissa olevat VDDAI ja VSSAI alueet pitää kaikki yhdistää toisiinsa padeissa olevien metallialueiden levyisillä johdoilla. Padien keskinäisissä käyttöjännitekytkennöissä pitää olla eritysen tarkkana, jos piirissä käytetään sekä analogisia että digitaalisia I/O-padeja. Tämä jpohtuu siitä, että ko. padeilla on eri määrä käyttöjännitteen kytkentäpisteitä (so. eri määrä padi-rinkejä). Tärkeintä on muistaa, ettei yhtään padeissa olevaa käyttöjännitepinniä saa jättää kytkemättä. Piirikuvion pinnit sijoitetaan padien bondausalueiden päälle. HUOM! Muista ajaa tarkistukset (DRC ja LVS) tälle piirikuviolle. Seuraavan vaiheen jälkeen (scribe linen piirto) tarkastuksia ei enää tehdä. Tämä merkitsee myös sitä, että lopulliselle piirikuviolle kannattaa luoda oma solu ja sille layout, johon tähän mennessä piirretty layout sijoitetaan soluna. Ts. tarkistukset voidaan ajaa tälle layoutille vielä sittenkin, kun lopullinen piiri on valmis. 3.2 Scribe line Piirikuvio viimmeistellään lisäämällä siihen muutama pakollinen standardirakenne. Ensimmäinen tällainen rakenne on SCRIBE, jonka perusteella piipala leikataan irti piikiekosta. Ts. SCRIBE ympäröi piirin joka puolelta (varsinainen piirin layout tulee tyhjään tilaan SCRIBE-suorakaiteen sisäpuolelle). Varsinaista suorakaiteen muotoista SCRIBE-aluetta ei ole valmiina tarjolla HitKitissä, vaan se on itse tehtävä SFCLIB_BYE-kirjaston SCRIBE_EXAMPLE-solusta. Helpoiten tämä käy, kun poistaa solun hierarkian (Edit->Hierarchy->Flatten...) ja venyttää (stretch) rakenteen sopivan mittaisiksi. SCRIBE tulee sijoittaa siten, että sen sisäreuna tulee täsmälleen kiinni pad-ringin ulkokehään (VSS MET1/MET2). 3.3 Muut standardisolut Muut standardirakenteet, jotka sijoitetaan SCRIBE-alueen sisäpuolelle siten, että ne eivät mene päällekkäin muiden piirirakenteiden kanssa, ovat: 1) BUTTERFLY = maskien kohdistusmerkki, joita sijoitetaan vähintään kolmeen piirin kulmaan 2) RVBLK = prosessikohtainen maskitaulukko 3) LOGO = piirivalmistajan "mainos" 4) TEST = piirivalmistaja käyttää prosessin karakterisoimiseen 5) oma logo (ei ole pakollinen) Ym. standardisolut löytyvät SCRIBEn tavoin kirjastosta SFCLIB_BYE. Alla oleva kuva selventänee standardisolujen sijoittelua.
padiringin uloin metallikehä SCRIBE VSS MET1/MET2 piirin layout BUTTERFLY RVBLK LOGO TEST 3.4 Bondausohjeen luominen Kuva 1. Standardisolujen sijoittelu. Kun suunniteltu piiri on tarkoitus pakata piirikoteloon, vaatii piirin valmistaja usein ns. bondausohjeen. Tästä ohjeestä käy ilmi, kuinka piirin padit kytketään piirikotelon jalkoihin (katso kuva 2). Ennen kuin bondausohje voidaan piirtää, pitää käytettävä kotelo valita. Kotelon valintaan vaikuttavat esim. piirin loppukäyttäjän vaatimukset, piirin padien lukumäärä ja piirin toimintataajuus. Yleensä piirikoteloksi valitaan pienin mahdollinen kotelo, ts. piiripaketissa on oltava vähintään yhtä paljon jalkoja kuin piirissä on padeja. Varsinkin korkeataajuisissa tai vähän piirilevytilaa vaativissa sovelluksissa kotelo on usein pintaliitos-tyyppiä. Piipala kiinnitetään esim. liimaamalla piirikotelossa ns. cavityyn, joka on syvennys ns. lead-framen keskellä. Kotelon jaloista tulevien johtojen päät muodostavat lead-framen. Näihin johtojen päihin piirin padit kytketään ohuilla metallilangoilla (= bondauslanka). Huomaa, että cavityn koko määrää sen, kuinka iso piilastu ko. piirikoteloon voidaan sijoittaa. Bondausohje voidaan luoda käsin tai tietokoneen avulla. Tässä työssä käytetään HitKitin mukana tullutta erityistä bondausohjeen piirtosovellusta. Sovelluksen käyttöohje on osana HitKitin on-line dokumentointia osoitteessa file:/elsoft2/ DesignKits/ams_3.40/www/hitkit/tools/bond_editor/index.html. Huom! älä käytä ohjeen piirikoteloa, vaan valitse paras mahdollinen kotelo juuri tässä harjoitustyössä suunnittelemallesi piirille. Lista käytettävissä olevista piirikoteloista löytyy osoittesta file:/elsoft2/designkits/ams_3.40/www/download/documents/assy-168.pdf.
cavity lead frame 3.2 Stream-tiedoston luonti Kuva 2. Esimerkki bondausohjeesta. Piirisuunnitelma siirretään piirivalmistajalle usein gds-formaatissa. Gds-tiedoston kirjoittaminen Valitaan layoutplus-ikkunan pull-down valikosta File -> Export -> Stream..., jolloin saadaan täytettäväksi kaavake. Täytetään kaavakkeeseen kirjaston, solun (ylin solu) ja esitysmuodon nimi (layout), ja annetaan halutun gds-tiedoston nimi, esim. ylimmän_solun_nimi.gds. Tarkistetaan vielä ohjaustiedosto valitsemalla User Defined Data >>, tässä tapauksessa kohdassa Layer Map Table: tulisi olla /elsoft2/designkits/ams_3.40/artist/hk_0.8_b/tech_byq/strminout.layertable.oh jelma generoi gds-tiedoston ja lokitiedoston (PIPO.LOG), joka on syytä aina tarkistaa. Gds-tiedoston lukeminen Valitaan layoutplus-ikkunan pull-down valikosta File -> Import -> Stream..., jolloin saadaan täytettäväksi kaavake. Täytetään kaavakkeeseen gds-tiedoston nimi ja kirjasto johon lukeminen tapahtuu. Älä lue gds-tiedostoa varsinaiseen suunnittelukirjastoosi, vaan luo tätä varten uusi kirjasto, jotta vältyt mahd. päälle kirjoittamiselta. Tarkistetaan vielä ohjaustiedosto valitsemalla User Defined Data >>, tässä tapauksessa kohdassa Layer Map Table: tulisi olla /elsoft2/designkits/ ams_3.40/artist/hk_0.8_b/tech_byq/strminout.layertable. Ohjelma generoi gdstiedoston sisältämät piirikuviot ja lokitiedoston (PIPO.LOG), joka on syytä aina tarkistaa. 4. Työselostuksessa vaadittavat asiat 1) Lopullinen layout-kuva. 2) Kaikki tässä osiossa luodut piirikaaviot.
3) Tarkistusten (LVS ja DRC) raporttit. 4) Bondauskaavio. 5) Vastaukset seuraaviin kysymyksiin: 1. Mikä on scribe-linen tehtävä? 2. Miksi valitsit käyttämäsi piirikotelon? 6) Täytetty palautekysely (ks. liite 3) erillisenä. Palautetaan anonyymisti assistentin huoneessa olevaan palautelaatikkoon. HUOM! viimeisen työselostuksen kannessa on oltava työn tekijöiden nimet, vuosikurssit ja sotut! Lisäksi gds-tiedosto pitää lähettää sähköpostin liitetiedostona kurssin assistentille osoitteeseen hakki@ee.oulu.fi Lähdeluettelo Layout-suunnitteluun liittyviä asioita käsitellään lukemattomissa eri lähteissä. Alla olevat ovat vain esimerkkejä, joten muiden lähteiden etsiminen ja käyttö on sallittua, jopa suotavaa. [1] D.A. Johns & K. Martin, Analog Integrated Circuit Design, Wiley & Sons 1997, kpl 2. [2] M. Ismail & T. Fielz, Analog VLSI Signal and Information Processing, McGraw- Hill 1994, kpl 16. [3] A. Hastings, The Art of Analog Layout, Prentice Hall 2001 [4] M. Stan, D. Garrett, a. Kolla & Z. Salman, Schematic Driven Layout Using MOSIS Design Kit for Advanced Analog and Mixed-Signal Design, http://csis.ee.virginia.edu/~dcg3w/papers/mug97_sdl_paper.pdf [5] AMS, Analogue & Mixed Signal Application Note, Device Matching Rules, file:/elsoft2/designkits/ams_3.40/www/appnotes/analog/matchingrules.html [6] AMS, HitKit documentation, file:/elsoft2/designkits/ams_3.40/www/index.html [7] Cadence Design Tools Tutorial at http://turquoise.wpi.edu/cds/ [8] Cadence Product Documentation (=on-line help), Cell Design Tutorial, Product Version 4.4.6, file:/elsoft3/cds2001/doc/celltut/celltuttoc.html [9] Cadence Product Documentation (=on-line help), ACPD Flow Guide, Product Version 4.4.6, file:/elsoft3/cds2001/doc/acpdflow/chap5acpdflow.html#1032087
Liite 1. Esimerkki ylimmän hierarkiatason piirikaaviosta HUOM! Tässä kuvassa CORE-solu vastaa operaatiovahvistinsolua (=symbolia).
Liite 2. Esimerkki ylimmän hierarkiatason piirikaaviota vastaavasta layoutista (solujen sijoittelu) HUOM! Tässä kuvassa CORE-solu vastaa operaatiovahvistinsolua (=symbolia).
Liite 3. AP III:n palautekysely Työn sisältö: 1) Oliko työ mielestäsi liian vaikea/työläs varrattuna kurssin opintoviikkomäärään? 2) Arvioi, kuinka monta tuntia käytit työn tekemiseen? 3) Oliko työ motivoiva ja mielekäs? Kuinka työstä saisi mielestäsi motivoivamman? 4) Oliko työmateriaali riittävä? Jos materiaalissa oli mielestäsi puutteita, niin mitä ne olivat? 5) Kuinka mielestäsi työn sisältöä voitaisiin kehittää? Työn rakenne: 6) Oliko työn osittaminen pieniin osakokonaisuuksiin mielestäsi hyvä asia? 7) Pitäisikö työ jakaa vieläkin useampaan osaan tai osia yhdistää? 8) Oliko opetuksen rakenne mielestäsi onnistunut? Ts. softademo videotykillä+ohjattua tietokonetyöskentelyä+omaa työskentelyä. Oliko softademoista mielestäsi jotain hyötyä? 9) Oliko suunnittelutyön materiaali ja ohjaus mielestäsi riittävää? 10) Oliko tietokonetyöskentelyn materiaali ja ohjaus mielestäsi riittävää? 11) Tukiko kurssin rakenne mielestäsi oppimista? Miten rakennetta voisi mielestäsi kehittää paremmin oppimista tukevaksi? Mikä muu rakenne olisi mielestäsi parempi? 12) Muita kommentteja. 13)Tee seuraavan sivun käsitekarttatehtävä.
Analogisen IC-suunnittelun käsitekartta Piirrä käsitekartta analogisen IC:n suunnittelusta käyttäen ainakin osaa seuraavista avainsanoista (saa lisätä omia, jos haluaa): analoginen IC piirikaavio piirikuvio/layout piirisimulaatio simulointimalli spesifikaatiot piiriprosessi komponenttikirjasto piirisuunnitteluohjelmisto piirikotelo bondaus piipala/-lastu/chip käsinsuunnittelu hierarkia testaus/testaussuunnittelu piirilohkot tarkistus CAD/CAE sähköiset suunnittelusäännöt fyysiset suunnittelusäännöt Alla esimerkki käsitekartasta, joka kuvaa koripalloa (peliä).