Mikroelektronik ai tervezőrendszer ek Cadence Opus: Digitális tervezés és layout generálás a Cell Ensemble-lal
Mar 15, 2016
Mikroelektronikai tervezőrendszerekCadence Opus:Digitális tervezés és layout generálás a Cell Ensemble-lal
Szóhasználat
Programok – native és külsőTools (eszközök) – context sensitive részek programokon belülAkciók – a design flow elemei
• standard beépített modulok,• programozói interface: SKILL nyelv,• OSS: Open Simulation System tetszőleges
külső szimulátor használatát teszi lehetővé• egységes adatformátum:
külső CAD eszköz formátuma Opus formátum
Cadence Opus áttekintés 1
Vázlatos (tranzisztor szüntű) design flow :
Composer
Place & Route
Simulation
CompactorLayout
SynthetizerLayout Editor
Abstract Generator
Cadence Opus áttekintés 2
Cadence Opus áttekintés 3 programok
Virtuoso Layout szerkesztéseComposer Kapcsolási rajzok, szimbólumok
szerkesztésePreview Floorplan készítése, chip szintű
tervezésVerilog Logikai szimulációSpectre Analóg szimulációAmadeus-Simview Waveform megjelenítőHierarchy editorGeneral GraphicsGeneral Text
A használandó CAD eszközök• Standard cellás tervezésnél:
• Composer, • Simulation, • Place & Route
• Tranzisztor szintű tervezésnél:• Layout editor, Compactor, esetleg Layout Synthesizer• Abstract generator• Place & Route
Cadence Opus áttekintés 4
Technology file– geom. tervezési szabályok (DRC, LVS, abstr.gen.
számára)– elektromos paraméterek (az extractor - layout
visszafejtő számára)– eszköz visszafejtési szabályok (az extractor - layout
visszafejtő számára)A DRC és az extractor a Layout editor részei
Design kit– technology file– könyvtár– user interface elemek
Cadence Opus áttekintés 5
Library Cell
View
schematiclascompactedextractedabstract
hspiceTechno. library pins,
wires, contacts
Symbolic devices
Cadence Opus áttekintés 6
attached
• A library browser (később) egy cella vagy áramköri terv nevével együtt annak szerkeszthető reprezentációit (view-it) is megmutatja.
• Az open funkció a megfelelő, az adott view-hoz hozzárendelt programot aktivizálja pl.:
• schematic Composer (kapcs.rajz editor)• layout Virtuoso (layout editor)
Cadence Opus áttekintés 7 Különböző reprezentációk
A techno file főbb szakaszai
Display
Rules
Layers
Views
Display
Colors
Purposes
LayerProperties
TwoLayerProperties
DRC
extract rules
LVS
LAS symbolic rules
Cadence Opus áttekintés 8
A technology file SKILL rutinhívásokból áll.
Chip tervezés - témák• Floorplan• Place• Huzalozási csatornák generálása *• Globális route-olás *• Részletes route-olás
• Visszahelyettesítés (back-annotation)* egyes eszközökben
Preview: floorplanning eszközökPreview A CADENCE floorplanning eszközeit
tartalmazó programESZKÖZÖKBase Array Editor reguláris layout kiegészítő cellákkal
Gate Ensemble gate-array tervezéshez
Block Ensemble Nagyobb blokkok elhelyezéséhez,huzalozásához való eszköz, nem standardcellás tervezésre való!
Cell Ensemble A 2 vagy 3 fémréteges Standard Cellástervezés placement/routing eszközeÖsszeköttetések: huzalozási csatornákban
Silicon Ensemble Placement/routing eszköz a 3 .. 6+vezetékezési síkot feltételező tervezéshez.Összeköttetések az egész felületen.
View-k a floorplanning számára
abstract A view of a piece of layout, with most of thegeometries removed in order allow fastoperation and to protect intellectual property.The remaining geometries are Pins andobstruction shapes that prevent from routingacross the cell
abstract_CE One of more views of abstract type in a librarycell, intended for using in Cell Ensemble
autoAbstract An abstract created during the creation of aSoft Group or Soft Block
Alapelemek a floorplanning-benStandard Cells Block of layout with continuous power lines
when placed in simple rowsPin A metal block of pn type having a signal name
as property, allows the connection of signalsSymbolic Pins Pins, usually on Soft Macros with no fixed
placementChannel The area defined between rows of Standard
Cells where the routing algorithm placesinterconnections
Feedthrough A Standard Cell of power lines only. Allowsthe routing across rows.
Jumper Power lines built into a standard cell to makeuse of areas not blocked by Metal2
Region An area containing rows of Standard CellsRow A horizontal or vertical line of Standard Cells
Group A floorplanning device for collecting togethercells. Used in the definition of a Soft Groupsand Placement Classes
Soft Groups A Group with constraints to keep thecomponent cells within a given area
Macro cells Block of layout which are not Standard Cells,i.e. ROMs, RAMs or just areas implemented ina full custom manner.
Hard macros Particular Macro cells with fixed boundarySoft Macros = Soft Blocks
Macro cells created with a tool from cellsselected in a top level design
Placement Class A tag used to segregate a set of StandardCells into a particular Region
Komplex elemek a floorplanning-ben
A routing (vezetékezés) lépései
Global Route The logical routing between connected pins.The router allocates Channel, Jumper andFeedthrough resources based on signalpriority
Detailed Route The process for converting logical Pin andChannel resources into physical geometries,which are then compacted to minimum designrule spacings
Cadence Opus indítása 11. Középső gomb
2. OPUS almenu
3. AMS-3.2
4. Az Opus AMS32 konzol ablak megjelenik
EZ A BME-EET-n van így. Másutt másképpen van!!!
Az Opus AMS32 konzol ablak megjelenik
Az AMS Cadence Hit-Kit 3.2 startup script fut ebben az ablakban.
Cadence Opus indítása 2
EZ A BME-EET-n van így. Másutt másképpen van!!!
Cadence Opus indítása 3A tervezési könyvtárat kell megadni itt. Fogadjuk el, amit a script felkínálEz a BME-EET-n van így. Installáció függő.
Cadence tervezési adatbázis a UNIX file-rendszerre van leképezve.
Az ENTER megnyomása után a Cadence Interpreter Window (CIW) jelenik meg a design manager window ablakkel együtt
Cadence Opus indítása 4Az ENTER megnyomása után a Cadence Interpreter Window (CIW) jelenik meg a library manager ablakkal együtt
A design megnyitása a library manager-ben: megfelelő view választása
• Könyvtáral (standard vagy saját) cellákat tartalmaznak
• Celláknak view-i (reprezentációi) vannak• Szokásos reprezentációk:
• schematic: kapcs.rajz szerkesztése• symbol: magasabb hierarchia szintű kapcs.rajz számára• autoLayout: egy másik view-ból (pl. schematic-ból) gen.• layout: egy design részletes layout-ja• abstract: a floorplan készítésének elemei• abstract_CE: layout körvonalak a Cell Ensemble-hoz
Reprezentációk Cadence Opus• Egy cella szerkesztendő reprezentációját a library
browser-ben választjuk ki.• Megnyitáskor a reprezentáció szerkesztésére szolgáló
programot aktivizálja a rendszer• schematic Composer (schematic editor)• layout Virtuoso (layout editor)• abstract a cella reprezentációja a Silicon Ensemble számára• abstract_CE a cella reprezentációja a Cell Ensemble számára• symbol a cella reprezentációja Composer számára• cmos_sch egy cella tranzisztor szintü reprezentációja
• Cella elnevezési konvenció:• cellname: 2 fémréteg esetében• cellname3: 3 fémréteg esetében
A design megnyitása a library manager-ben
• Standard könyvtárak és saját könyvtárak
Bal egérgomb: könyvtár, cella és view választása
Középső egérgomb: szerkesztés (megnyitás)
Egyszerű példa: dec4to164-ből 16-os dekóder
– kapcsolási rajz szerkesztése• hierarchikus tervezés:
– dec2to4 kapcs.rajz (3 inverter, 4 nand kapu)» szimbólum generálása ehhez a részáramkörhöz
– dec4to16 kapcs.rajz (5 db dec2to4 részáramkör)» szimbólum generálása ehhez a részáramkörhöz
– dec4to16top kapcs.rajz (1 db dec4to16, input és output tappancsok, gnd, vdd tappancsok)
– layout előállítása a Cell Ensemble-lal
Egyszerű példa: dec4to16
A végső kapcs.rajz
A tappancsokat el kell nevezni a floorplaning számára.
Egyszerű példa: dec4to16circuit check végrehajtása, mentés
Megnyomni
Megnyomni
A CWI-ben valami ilyen üzenetet kell kapnunk:
Egyszerű példa: dec4to16
Ebben a fázisban ki lehet szállni az Opus-ból
File | Exit
A CIW és Opus AMS32 ablakok bezáródnak
Dec4to16: layout generálásDesign flow vázlata
A floorplan file szerkesztése (tappancsnevek); ezt a file-t kell majd használni
Design flattening: PRFlatten
schematic
autoLayout
Cell Ensemble
“layout”
initialize
IO place
add corner cells
justify pad ring
place std cells
placed
create routing channels
placement elmentése
Net tulajdonságok beáll.
A net property file; beolvasandó
global routing
detailed routing
routing elmentése
routed
check routing
A biztonság kedvéért
Dec4to16: layout 1 A kapcs. rajzból, a PRFlatten és a Cell Ensemble felh.A CIW-ben: File | Export | PRFlatten:
Dec4to16: layout 2a
3. Az output view a Cell Ensemble számára: az abstarct_CE-t be kell írni.
1. A terv kiválasztása a library browser-ben.
2. Az input view a kifejtész számára a schematic.
Dec4to16: layout 2b OK- nyomni a kifejtés (flattening) és az autolayout view generálásának elkezdéséhez
Dec4to16: layout 2c Floorplan a még el nem helyezett tappancsokkal
és
standard cellákkal
Dec4to16: layout 3 Az autoLayout-ot a Cell Ensemble fogja felhasználni
A Virtuoso-ban: Tools | Floorplan P&R | Cell Ensemble:
Így indíthatjuk el Cell Ensemble eszközöket
Dec4to16: layout 4a Floorplanning - initializálásA Cell Ensemble-ban: Floorplan | (Re)initialize:
Press OK
Dec4to16: layout 4b Floorplanning - initializálás
Floorplan a még el nem helyezett tappancsokkal
és
standard cellákkal,
de már szétválogatva
Dec4to16: layout 5a Floorplanning - I/O elhelyezés (automatikus)A Cell Ensemble: Floorplan | I/O Placement:
OK-t nyomni
Dec4to16: layout 5b
A floorplan file szerkesztése:
Az egyes nevek elé |-t kell besz]rni
Ha kész, elmenteni
Floorplanning - I/O elhelyezés (file-ból, a)
Dec4to16: layout 5c
A floorplan file beolv.:
Place | IO Commands| Read Initial File:
Floorplanning - I/O elhelyezés (file-ból, b)
Dec4to16: layout 5d
Jelenleg még figyelmen kívül hagyhatók a figyelmeztetések
A tappancs gyűrű már majdnem rendben, de még nincsenek sarok cellák
Floorplanning - I/O elhelyezés (file-ból, c)
Dec4to16: layout 6a Floorplanning - sarok cellák hozzáadása 1Place | IO Commands| Read Initial File:
Dec4to16: layout 6b Sarok cellák kiválasztá-sa a library browser-ben
OK-val elfogadni
Floorplanning - sarok cellák hozzáadása 3
Dec4to16: layout 6c Floorplanning - sarok cellák hozzáadása 4
Dec4to16: layout 7a Placement - tappancsgyűrű kialakítása 1Place | IO Commands| Justify:
1. Így beállítani (100, 50, 0.1)
2. OK
Dec4to16: layout 7b
Snap to grid!
Placement - tappancsgyűrű kialakítása 1
Dec4to16: layout 8a Placement - standard cellák elh.: feedthrough-k beill.Place | Automatic
Dec4to16: layout 8b Feedthrough-k választása a library browser-ban
Press OK
Dec4to16: layout 8c Feedthrough-k beillesztve:
Snap to grid! 0.1
Dec4to16: layout 9
Kész az elhelyezése. Mentsük el!
Design | Save as
placed
Később, ha kell, innen újra kezdhetjük.
Dec4to16: layout generálásDesign flow vázlata
A floorplan file szerkesztése (tappancsnevek); ezt a file-t kell majd használni
Design flattening: PRFlatten
schematic
autoLayout
Cell Ensemble
“layout”
initialize
IO place
add corner cells
justify pad ring
place std cells
placed
create routing channels
placement elmentése
Net tulajdonságok beáll.
A net property file; beolvasandó
global routing
detailed routing
routing elmentése
routed
check routing
A biztonság kedvéért
Dec4to16: layout 10 A placed view-ból indítjuk a huzalozást: huzalozási csatornák generálása Route | Channels | Create:
• Kézi munka ebben a design kit-ben. A részletektől eltekintünk.
Dec4to16: layout 11a Routing - a net property-k beállítása
Dec4to16: layout 12 Routing - global routing beállításaok
Route | Global Route | Automatic
OK ha kész
Saját preferenciák beállítása
OK, ha kész
Dec4to16: layout 13a Routing - részletes routing beállításai
Route | Detail Route | Automatic Saját preferenciák beállítása
OK, ha kész
OK, ha kész
0.05!
Dec4to16: layout 13b Routing - részletes routing eredménye
Dec4to16: layout 14 A huzalozás elkészült
Design | Save as
routed.
Később, ha kell, innen újra kezdhetjük.
Dec4to16: layout 15aCheck routing - explode channels for checker Route | Detail Route | Explode Channels
Dec4to16: layout 15b Check routing
Route | Check
Mindkettőt kiválasztaniOK ha kész
Dec4to16: layout 15c Check routing - eredmény: rövidzár
Ez tényleg ott van!
Kézi javítás vagy újrakezdés a placed állapotból, más beállításokkal.