Netlist

Expresia netlist (sau netlist ) este o hârtie de calc din termenul englezesc .  netlist are mai multe sensuri.

Lista conexiunilor electrice (în dezvoltarea dispozitivelor electronice ) - o reprezentare textuală a informațiilor ( format de fișier ) despre conexiunile electrice care conectează componentele unui dispozitiv electronic.

Netlist (la proiectarea circuitelor integrate ) este o reprezentare textuală a informațiilor ( format de fișier ) despre conexiunile modulelor ( elemente logice , blocuri de memorie etc.) ale unui circuit integrat .

Netlist-urile conțin de obicei informații despre conexiunile în circuit și, de regulă, nu conțin altceva decât o listă de dispozitive (module, noduri, componente, „instanțe”), „conexiuni” între ele și mai multe atribute (parametri). Dacă doriți să descrieți ceva mai complex, utilizați limbaje de descriere hardware specializate ( Verilog , VHDL etc.).

Clasificare netlist:

Compoziția și structura listei

Un dispozitiv electronic este format din componente (ansambluri, module) conectate prin conductori.

Într-un netlist, componentele unui dispozitiv electronic sunt numite „ instanțe ”, iar conductorii sunt numiți „ conexiuni ”.

„Instanțele” sunt de două tipuri:

„Definiția” include:

Orice poate fi o „instanță”: de la tranzistoare de câmp sau bipolare , rezistențe și condensatoare la circuite integrate .

„Instanțele” au „porturi” ( porturi în engleză  ) (sau „ieșiri” ( pini în engleză )). De exemplu, „porturile” unui aspirator includ cele trei țevi metalice ale ștecherului cablului de alimentare. 

Fiecare „port” are un „nume”. De exemplu, „porturile” unui aspirator pot fi numite „zero”, „fază” și „pământ”.

„Instanțe” pot avea „nume”. De exemplu, două aspiratoare identice pot fi numite „vac1” și „vac2”. Cu ajutorul numelor (unice), aceleași „instanțe” pot fi distinse unele de altele.

„Conexiuni” descrie firele care conectează componentele circuitului între ele.

„Instanțele” și „conexiunile” pot avea sau nu atribute speciale; depinde de capacitățile limbii alese.

Există două abordări pentru a construi netlist-uri:

Compoziția listei, construită pe baza de instanțe ( în engleză  bazată pe instanțe ), include o listă de „instanțe”. Pentru fiecare „instanță” este dat:

Lista „conexiunilor” se construiește automat după analiza relațiilor rezultate. Nu se pot specifica atribute pentru „conexiuni”.

Cel mai faimos netlist bazat pe instanțe este poate SPICE . 

Lista construită pe baza conexiunilor ( în engleză  bazată pe rețea ) include:

Într-o astfel de listă, este posibil să se specifice atribute pentru „conexiuni”.

Cel mai cunoscut netlist bazat pe net este probabil EDIF .  

Ierarhie

Dispozitivul poate consta din multe componente identice și diferite (ansambluri, module). Componentele pot conține componente imbricate duplicate și distincte.

Pentru comoditate, listele de net mari sunt împărțite în părți, aceleași componente sunt descrise folosind „definiții”. De exemplu, un dezvoltator ar putea crea o „definiție” pentru un aspirator cu porturi, dar acum această definiție ar include o descriere completă a componentelor interne ale aspiratorului și a conexiunilor dintre ele ( motoare , comutatoare etc.).

„ Primitiv ” este o „definiție” care nu include nicio „instanță” (nu conține atașamente). Poate fi numit și „frunză” sau altceva.

„ Ierarhic ” ( în engleză  ierarhic ) „definiție” - „definiție” care include „instanțe” (înglobări).

O listă se numește „ pliată ” dacă aceeași „ definiție ” este folosită de mai multe ori în ea.  

O listă se numește „ desfășurată ” dacă nu există „definiții” în interiorul ei care să fie utilizate de mai multe ori.  

O listă restrânsă poate fi extrem de compactă (mică). Un netlist mic de un număr mic de „instanțe” poate descrie dispozitive cu un număr mare de „instanțe” imbricate.

De exemplu, iată cinci „definiții”:

Un dispozitiv format dintr-o singură „instanță” E va include celule de memorie („instanțe” A).

Extinderea ierarhiei

Orice listă restrânsă poate fi extinsă - convertită într-o listă plată.

„ Flat ” ( în engleză  flat ) netlist - o listă de net în care numai primitivele sunt folosite ca „instanțe” (nu există „instanțe” care să conțină „instanțe” imbricate).

Listele restrânse (ierarhice) sunt convertite în liste plate (extinse recursiv) prin înlocuirea recursivă a fiecărei „definiții” non-primitive cu „instanțele” pe care le conține (cu un nume nou).

Cu un număr mare de cuibări și/sau cu o adâncime mare de cuibărit, extinderea listei duce la o creștere a dimensiunii acesteia, dar în același timp rămân dependențe ierarhice.

Adnotare din spate

Adnotare înapoi ( în engleză  adnotare înapoi ) - adăugarea oricăror „date” (informații suplimentare) la netlist.

De obicei, „datele” sunt stocate separat de listă și, prin urmare, pot fi folosite în mai multe liste în același timp. „Datele” pot fi determinate din rezultatele studiilor dispozitivului fizic, pot fi utilizate pentru modelare mai precisă.

„Datele” includ:

Moștenire

Să descriem conceptul de „moștenire” cu un exemplu.

Lăsa:

Apoi puteți crea „instanțe”:

De obicei, valoarea implicită este valoarea care este specifică majorității componentelor, iar pentru aceste componente nu este specificată valoarea atributului (se folosește moștenirea). Acest lucru vă permite să reduceți cantitatea de informații repetitive și, în cele din urmă, să reduceți dimensiunea listei.

Literatură