Integroidun piirin suunnittelu

Käsitys (tai muotoilu ) on integroituja piirejä (tai elektroniset sirut) koostuu suorittaessaan lukuisia kehitysvaiheissa ( suunnittelu virtaus ) tarpeen suunnitella asianmukaisesti ja ilman virheitä elektroninen siru.

Mistä integroitu piiri on valmistettu?

SoC-tyyppiset monimutkaiset integroidut piirit ( System On Chip tai System On Chip ranskaksi) integroivat yleensä:

Suunnitteluvirta ei ole lainkaan sama kullekin näistä osista (digitaalinen, muistit, analogiset osat, I / O- tyyny ).

Digitaalisen piirin suunnittelu

Lähtökohtana on toiminnallinen eritelmä, joka kuvaa haluttua toiminnallisuutta. Arkkitehtuurissa, jossa on yksi tai useampi prosessori, liittyvän ohjelmiston suunnittelu alkaa yleensä rinnakkain, jotta se voidaan simuloida kohdearkkitehtuuriin suunnittelun aikana.

Järjestelmän mallinnus ( järjestelmän suunnittelu )

Tämä vaihe koostuu koko järjestelmän (laitteisto ja ohjelmisto) mallintamisesta erittäin korkealla tasolla valitun arkkitehtuurin validoimiseksi suorituskyvyn suhteen sovelluksen tarpeiden mukaan.

Tämän vaiheen suorittamiseksi on tällä hetkellä olemassa useita kieliä ja niihin liittyviä simulaattoreita. Tunnetuimmat ovat:

Standardeja kehitetään.

RTL-kuvaus (RTL-suunnittelu)

Kun aitous on vahvistettu arkkitehtuuri, piiri on mallinnettu siirtoja koskevista rekistereistä ( Register Transfer Level ). Tämä mallinnus vastaa toteutuksen kuvaamista peräkkäisten elementtien (rekisterit tai kiikarit) ja loogisten yhdistelmien muodossa peräkkäisten elementtien eri tulojen / lähtöjen ja piirin ensisijaisten tulojen / lähtöjen välillä.

Tämä mallinnus koodataan laitteiston kuvauskielellä . Tämä tehdään joko VHDL: ssä tai Verilogissa .

RTL- kuvauksen spesifisyys on, että se voidaan syntetisoida automaattisesti yhdistelmälogiikkaporteiksi (AND, OR portit, multiplekseri jne.) Ja peräkkäisiksi (kuten synkroniset D-kiikarit) tavallisesta solukirjastosta (Standard Cell Library). Tätä varten RTL koodaavat vuonna VHDL tai Verilog on noudatettava tiettyjä tarkkoja sääntöjä siten, että koodin sanotaan olevan ”synthesizable”. On täysin mahdollista kuvata VHDL: ssä tai Verilogissa vastaava toiminnallisuus, jota ei voida syntetisoida. Tätä kutsutaan korkeamman tason käyttäytymisen kuvaukseksi kuin RTL- taso .

Looginen simulointi

Ensimmäinen tarkistustaso tarkoittaa VHDL- tai Verilog-muodossa kirjoitetun RTL-koodin simulointia . Simulaattori simuloi kutakin yhteenliitäntäsignaalia ajan mittaan tuloärsykkeiden funktiona, jotka on kuvattava (yleensä samalla VHDL- tai Verilog- kielellä ). Jos simuloitava piiri sisältää prosessorin, on myös tarpeen toimittaa vastaava suoritettava ohjelma binaarimuistisisällön muodossa. Muisti, joka sisältää ohjelmakoodin ja datan (esimerkiksi FLASH tai SRAM), mallinnetaan myös VHDL: ssä tai Verilogissa , mutta korkeammalla abstraktiotasolla kuin RTL (SRAM: ää tai FLASH: ta ei voida syntetisoida).

Käytetyimmät simulaattorit ovat:

Toiminnan tarkistus

Logiikkasimulaattoreiden käyttö ei riitä varmistamaan, että suunnitteluvirheitä ei ole seuraavista syistä:

Tämän kompensoimiseksi on olemassa toiminnallisia todentamisratkaisuja, jotka yrittävät olla tyhjentävämpiä tai nopeuttaa simulointiaikaa: Esimerkiksi on mahdollista käyttää:

Teoriassa on mahdollista kuvata täysin digitaalisen piirin toimivuus väitteillä. Työkalu voi sitten muodollisesti tarkistaa, että molemmat mallinnukset (toteutus RTL: ssä ja malli väittämällä) ovat vastaavia.

Looginen synteesi

Looginen synteesi on vaihe, joka muuttaa piirin RTL-kuvauksen kuvaukseksi loogisen portin tasolla (Gate netlist ). Loogisten porttien kohdekirjaston on oltava käytettävissä etukäteen. Tämä kokoaa yleensä useita satoja loogisia elementtejä (kuten AND-portit, TAI-portit, varvastossut jne.). Tämä kirjasto riippuu kohdetekniikasta, eli teknologiasolmusta (esimerkiksi 0,18 µm tai 0,13 µm) ja perustajasta (solujen vetämissäännöt riippuvat valmistusprosessista).

Käyttäjän on myös annettava yhteenvetorajoitukset, kuten esimerkiksi:

Nykyiset synteesityökalut toimivat pääasiassa ns. "Synkronisissa" digitaalisissa piireissä. Toisin sanoen kaikki peräkkäiset elementit (kiikarit) kellotetaan samalla kellolla. Kullakin kellon reunalla (yleensä nousevalla) varvastossut ottavat näytteensä syötteistään, jotka yleensä löytyvät kopioituna lähtöönsä (D-tyyppisille kiikaleille). Kombinatorinen yksikkö käsittelee nämä lähdöt ennen kuin ne näytteistetään uudelleen seuraavalla kellolla. Kombinaatioyksikön prosessointiaikana on siten käytettävissä kellojakso, joka on yhtä suuri kuin syytettyjen porttien ylitysviiveiden summa. Valinnaisesti kelloalueita voi olla useita, ryhmitellen sarja peräkkäisiä ja kombinatorisia elementtejä. Vastaavasti asynkronisessa suunnittelussa kiikun kello voi hyvinkin olla seurausta muiden peräkkäisten elementtien loogisesta yhdistelmästä. Tämäntyyppiset suunnittelut ovat marginaalisempia, koska ei ole olemassa suunnittelun tukityökalua, joka varmistaisi tyhjentävästi piirin sujuvan toiminnan kaikissa käyttöolosuhteissa.

Synkronisen piirin synteesityökalu etenee yleensä useissa vaiheissa:

Tässä Suunnitteluvaiheessa kellon puu ei syntetisoitu: sitä pidetään ihanteellinen. Arvioidaan kuitenkin tietty viive, joka vastaa pahinta mahdollista viivettä kellon saapumisessa kahden kiikun välillä.

Tämän vaiheen tulos on tietokonetiedosto, joka edustaa kohdekirjaston ovien ilmentymistä ja niiden yhdistämistä, joka edustaa elektronista virtapiiriä (gate netlist). Tämän tyyppisessä esityksessä on erilaisia ​​muotoja:

Tunnetuimmat työkalut ovat:

Synteesin jälkeinen vastaavuus

Sijoittaminen ja reititys

Se on prosessi, jossa piirin eri osat sijoitetaan ja kytketään automaattisesti ratkaistavan ongelman mukaan. Sijoitusreititystä käytetään erityisesti FPGA: iden yhteydessä, jotka ovat ohjelmoitavia komponentteja tuhansilla sisäisillä prosessointiyksiköillä, jotka voidaan yhdistää toisiinsa.

Sijoittelun reititys on vaikea optimointiongelma, joka vaatii metaheuristisia tekniikoita, kuten geneettiset algoritmit tai simuloitu hehkutus. Laskenta-ajat ovat siksi usein hyvin korkeita huomioon otettavien elementtien lukumäärä huomioon ottaen. On kuitenkin mahdollista jättää jonkin verran liikkumavaraa algoritmille hyväksyttävän, mutta ei optimaalisen ratkaisun saamiseksi nopeammin.

Reitityksen jälkeinen vastaavuus

Loisten uuttaminen

Takaisin kommentoitu logiikkasimulaatio oven tasolla

Signaaliviiveiden ja eheyden analyysi

Staattinen ajoitusanalyysi (STA) on tarpeen sen varmistamiseksi, että suunnittelun määräaikoja noudatetaan suunnitellun käytön erilaisissa olosuhteissa. Parametreillä, kuten käyttölämpötila, jännite tai prosessi, variaatiolla esiintyvät vaihtelut, on merkittävä vaikutus läpimenoaikoihin. Tämä analyysi tehdään yleensä pahimmassa tapauksessa (huonoin tapaus) ja parhaassa tapauksessa (paras tapaus). Analyysi pahimmassa tapauksessa mahdollistaa sen, että synkronoitujen elementtien asetuksissa ei ole rikkomuksia halutun taajuuden suhteen. Paras tapausanalyysi antaa mahdollisuuden havaita, onko pidätysrikkomuksia.

Liitäntöjen ajoitusten analyysi on myös tärkeä.

Primetime-työkalu (Synopsys) on yksi STA: n työkaluista.

Fyysiset tarkastukset (DRC ja LVS, antennit)

Fyysisen todentamisen vaihe (englanninkielinen fyysinen todentaminen, PV) mahdollistaa sen, että piirustus (asettelu) vastaa määritettyä sähköpiiriä ja että se voidaan valmistaa ilman virheitä, jotka estäisivät sen toimimasta oikein. Erotamme:

GDSII: n sukupolvi

Maskitason fyysinen todentaminen (DFM)

Nykyään mikroelektroniikka on laskeutunut mikromikronitekniikoiksi (poly-piin leveys transistorissa alle 130 nm). Tämä lasku hyvin pieniin arvoihin aiheuttaa sellaisten ilmiöiden kasvua, jotka voivat muuttaa sirujen oikeaa toimintaa, jos ei noudateta hyvin tiukkoja suunnittelusääntöjä. Asettelupalvelut koskevat tapaa, jolla voimme puuttua naamioiden ja jäännösvirheiden tuotantoon. Nämä viat ilmenevät pääasiassa prosessin aikana ja ne voidaan jakaa kolmeen ryhmään:

- Satunnaiset: alustan laatuun ja puhtaan huoneen puhtauteen (hiukkasiin) liittyvät viat. - Systemaattiset: "prosessi- ja litografia" -viat (ylikaiverrus, kaiverrus jne.). - Parametri: laitteen ja / tai yhteysparametrien vaihtelu.

Näiden vikojen joukosta vain satunnaisia ​​vikoja ei voida ratkaista optimoimalla maskin rakenteita. Kaksi muuta ryhmää kohdentavat tunnettuja ja ratkaistuja ongelmia, jotka on ratkaistava uudelleen submikroonisten tekniikoiden suhteen, jotta simulaatiot olisivat oikeita. Näillä vikoilla on yhteinen syy, joka johtaa sirujen tuoton seuraavalle vähenemiselle, ja ne korjataan ns. DFM / DFY-säännöillä (Design for Manufacturability and Design for Yield), jotka ovat sääntöjä, jotka vaikuttavat sirujen tuottoon ja valmistettavuuteen.

Piin valmistuksen käynnistäminen

Piin vahvistus

Analogisen piirin suunnittelu

Kaavion syöttäminen

Kaavion syöttäminen on ensimmäinen vaihe analogisen piirin suunnittelussa. Se tehdään CAD-muodossa (tietokoneavusteinen suunnittelu) erityisohjelmistoilla, teollisuusympäristössä usein Cadence Virtuosolla. Analogisten piirien suunnittelu perustuu CMOS-tekniikkaan, ja tuloksena saadut kaaviot sisältävät suurelta osin transistoreita, jotka on koottu tavallisempiin komponentteihin (vastukset, kondensaattorit, diodit jne.). Kaavioon syötettäessä on parempi edetä lohkolla luomisen yksinkertaistamiseksi. On todellakin mahdollista muuttaa piirin vaihe lohkoksi, jotta sitä voidaan käyttää uudelleen koko projektissa. Integroidun piirin täydelliset kaaviot ovat siis lohkojen kasautumista, joista kukin sisältää tarkan kokoonpanon transistoreilla.

Analoginen simulointi

Analoginen simulointi antaa mahdollisuuden testata piirin teoreettinen oikea toiminta suunnitteluohjelmiston sisältämän simulaatioympäristön avulla. Näiden simulointityökalujen avulla on mahdollista saada käyrät (tai aaltomuoto), jotka edustavat jännitteitä tai virtoja, jotka suunnittelija on päättänyt testata kaaviossaan. Tämä vaihe on erittäin tärkeä suunnittelussa, koska sen avulla voidaan vahvistaa kaavio ennen siirtymistä asetteluun.

Asettelu (naamioiden piirtäminen)

Loisten uuttaminen

Analoginen simulaatio melulla

Fyysiset tarkastukset (DRC ja LVS, antennit)

DRC for Design Rule Check on validointivaihe, jonka avulla voidaan varmistaa, että piirretty piiri (tai asettelu) voidaan todella valmistaa. Nämä piirustussäännöt määritellään valmistuskoneiden kyvyillä luoda piille kuvioita, jotka ovat enemmän tai vähemmän lähellä, enemmän tai vähemmän hienoja ja jotka mahdollistavat korkean valmistustuoton. Esimerkiksi kaksi metallilankaa ei saa olla liian lähellä, muuten ne voivat olla oikosulussa valmistuksen aikana.

Integroitujen piirien valmistusprosessit voivat tuottaa sähkövarausten kertymistä piireihin. Nämä sähkövarat voivat olla tuhoavia tietyille komponenteille. Puhumme antennivaikutuksesta. Kongon demokraattisen tasavallan sääntöjen kaltaisten sääntöjen piirtäminen auttaa välttämään näitä vaikutuksia.

LVS kaavion tarkistusohjelmistolle on validointivaihe, jonka avulla voidaan varmistaa, että piirretty piiri (tai asettelu) vastaa piirin sähkökaaviota.

Nämä kolme validointivaihetta suoritetaan yleensä erikoistuneiden ohjelmistojen avulla, ja ne on konfiguroitu tai ohjelmoitu havaitsemaan virheelliset kokoonpanot, huonot piirustukset tuotantolinjojen salliman suhteen. Nämä erikoistuneet ohjelmistot tarjoavat niin kutsutut CAD (Computed Assisted Design) -yritykset.

GDSII: n sukupolvi

Maskitason fyysinen todentaminen (DFM)

Tapeout

Termi, joka tarkoittaa GDSII: n lähettämistä valmistuksessa naamioiden valmistamiseksi.

Sekalaiset piirit ja SoC: t ( System-On-Chip ) tai System-on-Chip

Katso myös