2ea-5eaMikrorendszerek alt fel -...

83
Mikrorendszerek felépítésének általános modellje Fehér Béla

Transcript of 2ea-5eaMikrorendszerek alt fel -...

Page 1: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Mikrorendszerek felépítésének általános modellje

Fehér Béla

Page 2: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Hardver lehetıségek • Régebben :

– 1-2 mikron CMOS technológia

– 50 – 100 mm2 felület

– 100000-300000 tranzisztor

– 20-50 MHz, 1-2 W

• Ma:– 0.1-0.03 mikron, 10-20 mm2 felület

– 5 -20 millió tranzisztor, 500-1000 MHz

Page 3: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

FPGA fejlıdés

• 1985: Elsı FPGA példányok 1000 kapu

• 1990: XC4000 sorozat 10000-50000 kapu

• 2000: Virtex sorozat 1000000 kapu

• 2002: Virtex Pro legújabb 8000000 kapu

• 2009: Virtex 5, Virtex6 ??????

• A félvezetı technológia motorja

Page 4: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

A probléma

• A tervezési olló egyre tágul– a technológia 5 év alatt 7-10 szeresre javul

– a rendelkezésre álló kapuszám több mint 50x

– a tervezésre fordítható idı folyamatosan csökken (évrıl-évre 20-25%), ez kb. 2x

– új verziók kiadása még gyorsabban

• KÖVETKEZTETÉS: Ma a tervezés 100x hatékonyabb?

Page 5: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Mi a megoldás?

• A (nyers) HW olcsó és elérhetı

• Hogyan használjuk ki?

• Hogyan tervezhetık hatékonyan ilyen komplexitású berendezések?

• Hogyan ellenırizhetı a mőködés?

• Hogyan lehet különbözı verziókat gyorsan, olcsón fejleszteni?

Page 6: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Példa az igényekre

• Képfeldolgozó rendszer (pl. tömörítés)– Folyamatos feldolgozás a bejövı adatokon

– Mintavételi sebesség 10 – 100 MHz

– Mintánként 1000-10000 mővelet

• Összesen 1010 – 1011 mővelet ( +, *, stb.)– Pl. 200MHz CPU-ból kell 50-500 db!!!

• ALAPVETİEN NEM ALKATRÉSZ GOND!

Page 7: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Rendszerterv variációk

• Adott tengernyi logikai kapu

• Tervezzünk funkcionálisan, alulról építkezve?– Milyen mélyrıl induljunk?

– Milyen korábbi eredmények használhatóak újra?

– Mi biztosítja az új rendszer helyes mőködését?

Page 8: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Tervezési lépések

• Az algoritmus és architektúra elemzése

• Kezdetben figyelembe veendı az összes alternatíva

• Folyamatos finomítás a paraméterek területén, választás az egyesített tulajdonságok alapján

Page 9: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Lehetséges opciók

• Tervezés adatfolyam modell alapján– Absztrakciós szint alacsony

– Alkalmazandó eszköz: bit szintő tervezést biztosító, konfigurálható áramkör ASIC/FPGA

• Tervezés mőveleti igények alapján– Byte/szó alapú ALU-k, ezek hálózata és

centralizált/decentralizált vezérlés

– Alkalmazandó eszköz: Byte granularitásuFPGA-k

Page 10: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Lehetséges opciók (2)

• Egyetlen nagyteljesítményő processzor– VLIW Very Long Instruction Word– Tipikusan mikroprogramozott, Harvard

felépítéső– Optimális jel és képfeldolgozásra– Superscalar processzor: általános célú

nagyteljesítményő feldolgozó

• Legfıbb elıny: Könnyő alkalmazás, hatékony fejlesztési támogatás (fordító)

Page 11: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Lehetséges opciók (3)

• Multiprocesszor hálózat– Nincs igazán gyıztes modell– Egyszintő mátrix elrendezés, azonos elemek– Hierarchikus hálózat master és slave

egységek

• Rendszer felépítés elsı közelítésben egyszerő, a gondok rejtve vannak– Kommunikáció, szinkronizáció, – Teherelosztás statikus, dinamikus

Page 12: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Flexibilitás - hatékonyság

Ellentmondó fogalmak

Hatékonyság

Flexibilitás

Dedikáltlogika

CPU

PR MEM

Teljesen HW

Konfigurál-ható HW

DSP+Szoftver

Általános Célú RISCProc.

CPUF1

F3

PR MEMCPU

MACADR

MEM

F2

Page 13: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Konfigurálható processzorok

• Alkalmazás függı paraméterek– esetlegesen adatméret (fixpontos

jelfeldolgozásnál 12, 16, 18, 24 bit)

– kivételkezelés közvetlenül, automatikusan (nincs feltételes elágazás, jitter a végrehajtási idıben)

– leginkább ismétlıdı, adatfolyam jellegőfeldolgozásra jók (pl. video, audio, hálózati csomagfeldolgozás)

Page 14: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Példa

• Egyszerő vektorszorzó• Z[i] = a*X[i] + b*Y[i] és i >>> 1

• Lehetıségek– Közvetlen SW, RISC processzoron

• Neumann struktúra, regiszter mőveletek

– DSP-szerő specializált SW• Harvard struktúra (MAC + MEM blokkok +

címlogika)

Page 15: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

HW megvalósítás

• Felépítjük az áramkört– Nincs utasítás elıvétel

– Nincs regiszter töltés

– Közvetlen adatfolyam

– Esetleg a, b paraméterekre optimalizálás

Page 16: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Ábra

• Közvetlen leképezés interfész elemekkel

X[i]

* a

+

Y[i]

* b

Z[i]

Page 17: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Megvalósítás

• Az FPGA-k kínálják ezt a lehetıséget– Alacsonyszintő erıforrás hozzáférés

– Nagy komplexitás

• Tipikus módszer napjainkban– Algoritmus leírása HDL nyelven

– Szintézis, elhelyezés, letöltés

• Általában külsı memória szükséges– Input, output

Page 18: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

FPGA CLB felépítés

• Alacsonyszintő logikai elem– Nem mőveleti szint, bár van rá támogatás

– 2 LUT + 2 FF

– A teljes áramkör ennek szimmetrikus ismétlése

– HUZALOZÁS

– Intelligens logikai szintézer, intelligens tervezı

– Többlépcsıs leképezés,

Page 19: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

ASIC < - > FPGA

• Kb. egy nagyságrend eltérés

FUNKCIÓ

FPGArealizáció ASIC

Page 20: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

ASIC < - > FPGA

• Programozhatóság/konfigurálhatóság ára– Nagyobb chipméret

– Nagyobb fogyasztás

– Kisebb mőködési frekvencia

• Programozhatóság/konfigurálhatóság elınye– Gyors fejlesztés, alacsony költség

– Javíthatóság, módosíthatóság

Page 21: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Rendszerszintő igények

• Feldolgozási feladatokra– Közvetlen adatfolyam leképezés optimális

– Kevés erıforrás, hatékony mőködés

– Aritmetikai – logikai – kommunikációs funkciók

• Vezérlési és management funkciók– Kisebb állapotgépek OK

– Néhány 10 állapotra strukturális vezérlık

Page 22: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Rendszerszintő feladatok

• Közvetlen igény belsı vezérlık megvalósítására

• Példa:– Önálló labor feladat 1994

– HIFI Audio tesztminta generátor 20-20K• Torzítás (Lineáris, intermodulációs, stb.)

• Jelgenerálás egyszerő DDS + ∆Σ konverter

• XC4005 + külsı A/D + LCD kijelzı + gombok

Page 23: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Tanulság 09.12.

• Tervezési folyamat– DDS Jelgenerátor OK

– A/D + Analóg kiegészítık OK

– Kezelıi felület ??????• Menürendszer összetettsége

– Fımenő + almenük + paraméterek tárolása

• Kijelzés komplexitása– Feliratok + poziciók

– XC4005 196 CLB ~ 5000 kapu

Page 24: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

PicoBlaze alkalmazási példa

Page 25: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Napjaink

• Átlagos FPGA áramkörök:– Komplexitás kb. 100 – 300 ezer kapu

– Belsı memória blokkok 4k-16k bit, 6-12 db

– Órajel 100-200 MHz

• Lehetıség a belsı programvezérelt kontrollerek kialakítására

Page 26: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

FPGA Soft Cores

• Lágy processzor mag– Teljes mértékben az általános erıforrások

felhasználására épül

– HDL RTL szintő leírásból, szintézis útján

– Az architektúra paraméterei fejlesztési idıben módosíthatók

• Memória méret

• Utasítás szerkezet

• I/O kiegészítı funkciók

Page 27: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Tipikus példák

• Oktatási mintapéldák– GNOME (4 bit adat), DWARF (8 bit)

• Egyedi, nyílt kódú fejlesztések– MicroRISC, MiniRISC, OpenRISC, > 25 db

• Valódi, szabvány processzorok verziói– 8 bit, 8051, PIC16xx, Z80

– 16 bit ????

– 32 bit MIPS, DLX

Page 28: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Gyári processzor struktúrák

• Altera Nios, újabb verzió Nios II– Két változat: 16 és 32 bites architektúra

– 50-70 MHz mőködési sebesség

– Speciális busz struktúra (Avalon)

– Teljes HW és SW támogatás• Konfigurációs minták

• Kiegészítı rendszer elemek

• Fordítási eszközök

• Debug és hibakeresési eszközök

Page 29: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Gyári processzor struktúrák

• Xilinx MicroBlaze– 32 bites architektúra

– 100-150 MHz sebesség

– IBM Core Connect busz struktúra (OPB)

– Teljes HW és SW támogatás• Konfigurációs minták

• Kiegészítı rendszer elemek

• Fordítási eszközök

• Debug és hibakeresési eszközök

Page 30: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Felsı kategória

• FPGA-ba ágyazott valódi processzorok

• A legnépszerőbb típusok:– ARM, MIPS, PowerPC

• Elıny:– Garantált viselkedés és teljesítmény

– Szabvány, eredeti áramkör, a szokásos konfigurációkban

– Nem használ FPGA erıforrást

Page 31: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Néhány eszköz áttekintése

• Xilinx PicoBlaze– 1994 Dynamic Microcontroller (XC4000)– 2000 KCPSM (Virtex)– 2002 PicoBlaze (Virtex)– 2003 PicoBlaze3 (Spartan3, VirtexII)

• Tervezési cél:– Általános célú programozható vezérlı (PSM)– Egyszerőbb alkalmazásokhoz flexibilis

komponens, minimális erıforrásigénnyel

Page 32: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

PicoBlaze alkalmazási példa

Page 33: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Interfész paraméterek

Page 34: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Jellemzık

• Programmemória– Utasításformátum 16 bit, laza kódolás

– Maximum 256 utasításnyi program méret

– Megvalósítás: belsı blokk memória (4096 bit)

– Lehetne CLB ROM is, de akkor precízebb kódolás kellene

– Szinkron memória, 1 extra pipe-line fokozat (PC -> cím -> ROM -> utasításkód)

Page 35: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Utasításkészlet

• 49 utasítás, szükséges funkciók lefedve– Aritmetikai (+, -), logikai (&, #, $)

– Regiszter kezelı (shift, load)

– Be- kimeneti adatmozgató

– Programvezérlés (ugrás, szubrutin hívás) normál és feltételes módban

– Megszakítás kezelés (engedélyezés/tiltás, visszatérés)

Page 36: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Utasításformátum

• Fix 16 bit hosszúság, egyszerő dekódolás

Interrupt és visszatérés kód

UtasításcímVezérlés utasítás kód

0R(ind.cím)Reg_adrI/O kód

Portcím (utasításból)Reg_adrI/O kód

kód0Reg_adrSHR pref

kódReg_2Reg_1A / L pref

Konstans értékReg_adrA / L kód

Page 37: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Adatstruktúra• Egyszerő, optimalizált belsı felépítés

Page 38: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Regiszterkészlet

• 16 belsı 8 bites regiszter

• Szinkron CLB dual port LUT RAM– 2 olvasás / 1 írás port

– Mőveleti operandus és eredmény helye

– Indirekt cím forrása I/O port mővelethez

– Azonos használat, nincs akkumulátor

Page 39: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Adatmemória

• Nincs adatmemória– nem is kell, nem lenne gazdaságosan értelme

– a belsı regiszterkészlet használható

– az I/O portok rovására külsı regiszterek használhatóak (lényegében azonos módon)

• Szubrutinhívások, megszakítás??– Független HW stack, 16x8 méret

– Maximum 16 szint, nincs ellenırzés,

Page 40: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Utasítások végrehajtása

• Minden utasítás 2 órajel ciklus, függetlenül a funkciójától

• Determinisztikus mőködés, idızítés vezérelt alkalmazásokhoz is

• Input portok csak szinkronizálás után használhatóak MINT MINDEN MÁS RENDSZERBEN!!!

Page 41: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Megszakítás kiszolgálás

• Gyors reakcióhoz elengedhetetlen

• Alaphelyzetben tiltott

• Megszakítás elfogadás késleltetése – INT bemenet mintavételezése (max. 2 ciklus)

– Ugrás a vektorcímre, fix 0xFF ( 2 ciklus)

– Ugrás a kiszolgáló rutin belépési pontjára, tetszıleges helyen, 0x01- 0xFE címre

– Végrehajtás, visszatérés

– Interrupt (újra) engedélyezése

Page 42: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Használat

• A rendszerbe illesztés a be- és kimeneti portokkal történik – Input: adatok és feltételek

– Output: adatok és vezérlı ill. engedélyezıjelek

• WR és RD idızítı pulzusok

• Nincs busz, nincs semmi komplikált illesztési probléma

Page 43: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Idızítési viszonyok• Bemenet olvasása

• Kimenet irása

Page 44: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Használat (2)

• Áramköri szempontból 2 extra modul– A vezérlı egység (35 CLB)

– A program memória, mint blokk RAM (1 blokk)

– A bemeneti és kimeneti regiszterek részben a vezérlı, részben a céláramkör részei (?? CLB)

– A két modul EDIF formátumban adott• Ezek mint fekete-doboz illeszthetık be a tervbe

• A vezérlı fix konfigurációjú, két verzióban: egyszerőés elhelyezés paraméterekkel (RPM)

Page 45: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Használat (3) 09. 16.

• A programmemória modul EDIF filememória tartalma alkalmazás specifikus

• Az assembler automatikusan generálja a blokkot inicializáló EDIF file-t.

• Ezt a két modult kell a teljes tervbe integrálni

• Az EDIF formátum miatt szimuláció csak a teljes szintézis – elhelyezés - huzalozás után lehetséges

Page 46: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Szoftver támogatás• Egyszerő vezérlı, nem túl bonyolult

alkalmazások• Kódfejlesztés -> assembler szinten• Utasítás mnemonikok (LOAD, ADD, CALL)

regiszter azonosítók (S0, S1,…SE, SF)• Konstans deklarációk

– CONSTANT MAX_LIMIT, 1– CONSTANT STATUS_REG, 13

• Címkék: START, CIKLUS, KIIR

Page 47: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

MNEMONIKOK (1)

• Arithmetic Group

• 4xkk ADD sX,kk• 5xkk ADDCY sX,kk• 6xkk SUB sX,kk• 7xkk SUBCY sX,kk• Cxy4 ADD sX,sY• Cxy5 ADDCY sX,sY• Cxy6 SUB sX,sY• Cxy7 SUBCY sX,sY

• Logical Group

• 0xkk LOAD sX,kk• 1xkk AND sX,kk• 2xkk OR sX,kk• 3xkk XOR sX,kk• Cxy0 LOAD sX,sY• Cxy1 AND sX,sY• Cxy2 OR sX,sY• Cxy3 XOR sX,sY

Page 48: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

MNEMONIKOK (2)

• Shift and Rotate Group

• Dx0E SR0 sX• Dx0F SR1 sX• Dx0A SRX sX• Dx08 SRA sX• Dx0C RR sX• Dx06 SL0 sX• Dx07 SL1 sX• Dx04 SLX sX• Dx00 SLA sX• Dx02 RL sX

• Input/Output Group

• Axpp INPUT sX,pp• Bxy0 INPUT sX,(sY)• Expp OUTPUT sX,pp• Fxy0 OUTPUT sX,(sY)

• Interrupt Group

• 80F0 RETURNI ENABLE• 80D0 RETURNI DISABLE• 8030 ENABLE INTERRUPT• 8010 DISABLE INTERRUPT

Page 49: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

MNEMONIKOK (3)

• Program Control Group

• 81aa JUMP aa• 91aa JUMP Z,aa• 95aa JUMP NZ,aa• 99aa JUMP C,aa• 9Daa JUMP NC,aa• 83aa CALL aa• 93aa CALL Z,aa• 97aa CALL NZ,aa• 9Baa CALL C,aa• 9Faa CALL NC,aa

• 8080 RETURN• 9080 RETURN Z• 9480 RETURN NZ• 9880 RETURN C• 9C80 RETURN NC

Page 50: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Assembler minta (1)• ;program example for PSMDEBUG• ;• LOAD sF,80 ;walking '1' register• LOAD sB,00 ;reset accumulator lower byte• LOAD sC,00 ;reset accumulator upper byte• ENABLE INTERRUPT• ;main program to produce walking '1'• main: OUTPUT sF,01• ;software delay loop• LOAD s1,43• slow_loop: LOAD s0,FF• fast_loop: SUB s0,01• JUMP NZ,fast_loop

SUB s1,01• JUMP NZ,slow_loop

Page 51: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Assembler minta (2)• ;walk the '1' to the right• RR sF• JUMP main• ;interrupt service routine• ADDRESS D0• int_routine: INPUT sA,10 ;read value• ADD sB,sA ;16 bit accumulation• ADDCY sC,00• OUTPUT sB,20 ;output 16 bit value• OUTPUT sC,40• RETURNI ENABLE• ;interrupt vector• ADDRESS FF• JUMP int_routine

Page 52: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

A program használata

Page 53: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Fordítás eredménye• KCPSMBLE log file for program 'debug.psm'.• Generated by KCPSMBLE version 1.00.• Ken Chapman (Xilinx Ltd) 1999.• Addr Code• 00 ;program example for PSMDEBUG• 00 ;• 00 0F80 LOAD sF,80 ;walking '1' register• 01 0B00 LOAD sB,00 ;reset accumulator lower byte• 02 0C00 LOAD sC,00 ;reset accumulator upper byte• 03 8030 ENABLE INTERRUPT• 04 ;main program to produce walking '1'• 04 EF01 main: OUTPUT sF,01• 05 ;software delay loop• 05 0143 LOAD s1,43• 06 00FF slow_loop: LOAD s0,FF• 07 6001 fast_loop: SUB s0,01• 08 9507 JUMP NZ,fast_loop• 09 6101 SUB s1,01• 0A 9506 JUMP NZ,slow_loop

Page 54: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Kód beillesztése az EDIF file

• Kód beillesztése az EDIF file-ba• ……..• (direction OUTPUT))• (port (rename INSTRUCTION9 "INSTRUCTION<9>")• (direction OUTPUT)))• (contents• (instance (rename &_I17 "$I17")• (viewRef net • (cellRef RAMB4_S16 ))• (property (rename &_EXPORT "$EXPORT") (string "NO"))• (property INIT_00 (string

"0000000000008104DF0C950661019507600100FF0143EF0180300C000B000F80"))• (property INIT_01 (string

"0000000000000000000000000000000000000000000000000000000000000000"))• (property INIT_02 (string

"0000000000000000000000000000000000000000000000000000000000000000"))• ……….

Page 55: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Elızetes teszt • Szoftver szimulátor

Page 56: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Mit segít a szimulátor?

• Csak a program kód végrehajtását mutatja

• A környezet természetesen hiányzik

• Input adatok manuálisan, nem tud file-bóldolgozni (jó lenne!)

• Interrupt manuális, ez OK, lehetne persze idızített, vagy utasításciklus szám

Page 57: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Egy lehetséges alkalmazási példa

• PROFIBUS Slave eszköz

• PROFIBUS: egyik legelterjedtebb terepbusz

• Soros busz topológia, esetleges ismétlıkkel fa struktúra (max. 3 ismétlı)

• Adatátviteli sebesség 9,6kb/s …..12 Mb/s

• Fizikai közeg: RS 485, árnyékolt csavart érpár

• Maximális állomásszám: 127, szegmensenként 32 (az ismétlı is számít!)

Page 58: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

A PROFIBUS család felépítése

• 3 változat : DP, PA, FMS

• Kétfajta állomás: Master + Slave

• Masterek: – Logikai győrő a buszon,

– vezérjel továbbadásos buszhozzáférés elosztás

– Egyenrangú partnerek

– DPMaster2 diagnosztikára és paraméterezésre

• Garantált vezérlıjel körülfordulási idı

Page 59: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

PROFIBUS család

• Master – Slave kapcsolat– A vezérlıjelet birtokló állomás aktív

– A Slave-k mindig passzívak

– Egy-egy master-hez rendeltek (konfiguráció)

– Kommunikáció üzeneteken keresztül

– 4 adatkapcsolat• SDA Send Data with Acknowledge

• SDR Send and Request Data with reply

• SDN Send Data with No acknowledge

• CSRD Cyclic SRD

Page 60: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

PROFIBUS adatátvitel

• Alapvetıen egyszerő aszinkron adatátvitel

• 4 fajta adatkeret + 1 rövid üzenet

• A keretek karakterekbıl épülnek fel

• A karakterek: 11 bites UART karakterek– START+8 adatbit+Paritás+ STOP

– START=”0”, STOP=”1”, paritás páros, LSB first,

– Karakterek között nincs szünet, back-to-backátvitel

Page 61: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Keretformátumok (1)

• Fix hosszúság

– SD1 = Start Delimiter 10H

– DA, SA Destination and Source Address

– FC Frame Control

– FCS Frame Check Sequence

– ED End Delimiter

• Short Acknowledment E5H

EDFCSFCSADASD1

SC

Page 62: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Keretformátumok (2)

• Fix hosszú, adatmezıvel

• Adatmezı hossza 8 karakter

• SD3 = A2H

EDFCSDATAFCSADASD3

Page 63: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Keretformátumok (3)

• Változó hosszúságú keret

• Maximum 256 byte mindennel együtt

• SD2 = 68H

• LE, LEr redundáns hosszinformáció

EDFCSDATASADASD2LErLESD2

Page 64: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Keretformátumok (4)

• Vezérlıjel

• SD4 = DCH

• Csak a Master-ek használják

SADASD4

Page 65: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Adatbiztonság

• A keretek kezdı karakterei 4 Hammingtávolságú értékek és eltolásra is biztonságos

• A FCS ellenırzı összeget a DA, SA, FC és esetleges DATA mezıkre kell számolni

• A vevık ellenırzik korrekt karaktereket, kereteket és idıréseket

• Keretek elıtt - között a busz inaktív – Min. 33 ill. 11 bitidı, maximum a válaszidı

Page 66: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Mi a feladat ?

• PROFIBUS Slave funkció

• Passzív állomás– Busz figyelése, forgalom elemzése, (esetleg

buszsebesség automatikus detektálása)

– Állomás cím fogadása, ha konfigurálható(a default 127-es címen)

– Keretek vétele, ellenırzése adatbiztonságra, (értelmezése), címzés esetén válasz

– Válasz lehet nyugtázás vagy valódi válaszkeret

Page 67: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Mi a feladat ?

• PROFIBUS mőködés fontos jellemzıje– Buszsebesség / busz kihasználtság javítása– Ezért a gyors válaszadásra optimalizált– Slave eszközök válaszoljanak/hatnak azonnal

• Nyugtázás + nincs kész adat• Elıre elkészített válaszkeretek

– Ciklikus lekérdezés, a Master addig ismétel, amíg nincs teljes válasz

– Kommunikáció un. Hozzáférési pontokon keresztül (SAP) max. 63, min. 9

Page 68: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Slave funkcionális egységek

• UART adó / vevı– Fix adatformátum, konfigurálható bitsebesség

– Esetleg redundáns vevı, az átviteli hibák által okozott kiesés csökkentésére

– Idızítı egységek (Watchdog, válaszidı, szünetek, stb.) Busz sebességfüggı

– Keret feldolgozó és ütemezı

– Adat mozgató

Page 69: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Blokkvázlat• A tervezett HW blokkvázlat

UART RX

UART TX

TIMERS

CONT-ROL

MEM

IF

BUSZ

Page 70: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Fı paraméterek

• Általános követelmények– TX, RX hardverben támogatott

– Paritás, FCS on-line generálás ill. ellenırzés

– 12MHz mőködés, gyors válaszidı

– Egyszerő puffer mechanizmus• Blokk RAM használata (4096 bit => 512 byte)

• 1 db RX/TX puffer pár, 2 kellene (1 aktív + 1 tartalék)

• Mindig az aktív használt, kivéve a torlódást– (TRT idı múlva jön a következı üzenet, általában)

Page 71: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Puffer használat

• Master ismétli az üzenetet, amíg nem kap érvényes választ– A vett üzenetek vétel közben ellenırizhetık,

”egymásra” másolhatók

– A válasz eközben elıkészíthetı (Mi van a beírással?)

– Ha esetleg másik Master küld (DPM2) üzenetet, (Bármilyen gyorsan!!), akkor az mehet a tartalék pufferbe

Page 72: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Puffer használat

• Blokk RAM Dual port struktúra

Blokk RAM4096 bit

2x256 byte2 db RXpuffer

Blokk RAM4096 bit

2x256 byte2 db TXpuffer

SYSTEM

BUSZ

Page 73: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Puffer használat

• Írás/olvasás függetlenül, két portról

Page 74: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Puffer használat

• Az aktív TX puffer elsı byte-ja SC-t tartalmaz – Azonnal visszaküldhetı (pozitív nyugtázás SDA-ra,

negatív nyugtázás SDR-re)

– Kivéve a Státusz lekérdezést, ekkor egy szabványos (valódi információt tartalmazó) nyugtázás kell

– Ezt össze kell állítani szoftverbıl (SD1, DA, SA, ED ismert, FC= 00 00 0000, FCS számolandó)

EDFCSFCSADASD1

Page 75: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Mőködés• A SYSTEM ellenırzi a mőködést, beállítja az

alapvetı paramétereket (buszsebesség, állomás cím, idızítések), engedélyezi a busz figyelését

• A PicoBlaze a parancsregiszter engedélyezése alapján indítja vételt (figyelést)

• Indítja az idızítıket: Szoftver + hardver– Rövid, busz szinkron idık -> HW

• RIT Responder Idle Time (11T), (Slave válasz szünetidı)• SYN Syncronisation Timer (33T), (Master szünetidı, nem kell)• SIT Synchron Interval Time (11385T) (Egy üzenet 2816T)

– Hosszabb, általános idızítık -> SW• TOT Time Out Timer (n * TSL, Slot timer, rendszer paraméter)• TSDR maximum Responser Station Delay Timer (1 .. 65535T)

Page 76: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Vétel

• Karakter vétel -> HW UART RX – 4x mintavételi frekvencia, esetleg redundáns

mintavétel – Vételi mód azonnali jelzése (START bit)– Párhuzamos kimenet (8 bit adat + 2 státusz)– FCS folyamatos számolása

• Ha hiba, vétel leáll, idızítık újraindulnak• Vett karakterek ellenırzése és másolása a

puffer RAM vételi részébe

Page 77: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Vételi algoritmus

• 12Mb/s-on 1bitidı 83.3ns, 1 karakter idı 916ns

– PicoBlaze max. 70MHz, 2 órajelciklus/utasítás• 28.5 ns / instruction -> 32 utasítás / karakter

• Talán jobb a 48 MHz, kvázi szinkron mőködés– Nem kell az aszinkron idızítés miatt újramintavételezni

• Ezzel már csak 22 utasítás / karakter

– 3 üzemmód, idıben elkülönül egymástól• Szünet, vétel, adás

Page 78: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Keretek

EDFCSFCSADASD1

EDFCSDATAFCSADASD3

EDFCSDATASADASD2LErLESD2

SADASD4 SC

Page 79: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Vételi algoritmusEgyszerősített ábra

NEW CH

START

SD2

LEr=LE

SD1,3LE store

LE=f(SD1,3)

DA=ADR

SA = CM

DATA -> MEM

LE = 0

FCS = FCS

ED

SA = DPM2

IDL TMR?

RX OK

Page 80: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Vétel részletek

• Teljes vételi kód kb. 100 utasítás– Kissé sok, nem hatékony

– Felesleges adatmozgatások, rossz feltétel tesztelés

– INPUT használat nehézkes, OUTPUT írás OK

– Adás kb. ugyanennyi, ha közben ott is tesztelünk (ne menjen ki hibás üzenet)

– Programmemória kevés

– Utasítások lehetnének jobbak

– Státusz lekérdezés felismerése nincs benne

Page 81: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Egyebek

• SW idızítık, (timerek) kezelése– Több bájtos regiszterek, ADDCY/SUBCY

mővelet

– Megfelelı idıpont megkeresése, nehogy az adminisztráció miatt lemaradjunk valamirıl

– Rövid, HW idızítık lekérdezése• Idle Timer 11 bitidı

• SIT Timer 11385 bitidı

Page 82: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Egyebek

• Adatcsere szinkronizáció a SYSTEM-mel– Folyamatos hand-shake kapcsolat– Igen, de a busz aszinkron, nem látható elıre

mikor fog újra RX ill. ezután TX fázis következni

– Javaslat: TX végén jelzés és TRT (TokenRotation Time, teljes buszlekérdezés) idı alatt minden tevékenység elvégzése

• Válasz beírása az adó pufferbe

• Vezérlı regiszter struktúra

Page 83: 2ea-5eaMikrorendszerek alt fel - home.mit.bme.huhome.mit.bme.hu/~feher/fpgasopc/2ea-5eaMikrorendszerek_alt_fel.pdfA probléma • A tervezési olló egyre tágul – a technológia

Picoblaze2 PicoBlaze3

• Spartan2, Virtex

• 256 utasítás

• 16 regiszter

• HW Stack 16 szintő

• Méret 76 slice

• Utasítás 16 bites

• Spartan3,Virtex 2

• 1024 utasítás

• 16 regiszter + 64 tároló

• HW Stack 32 szintő

• Méret 96 slice

• Utasítás 18 bites

• Új utasítások: TEST, COMPARE, PARITY