DSP architektúrák dspic30f család



Hasonló dokumentumok
Bevezető előadás Mikrórendszerek összahasonlítása.dsp bevezető

DSP architektúrák dspic30f család memória kezelése

Számítógépek felépítése, alapfogalmak

Mikroprocesszor CPU. C Central Központi. P Processing Számító. U Unit Egység

0 0 1 Dekódolás. Az órajel hatására a beolvasott utasítás kód tárolódik az IC regiszterben, valamint a PC értéke növekszik.

Az INTEL D-2920 analóg mikroprocesszor alkalmazása

A számítógép alapfelépítése

A TMS320C50 és TMS320C24x assembly programozására példák

1. ábra: Perifériára való írás idődiagramja

A mikroszámítógép felépítése.

Nagy adattömbökkel végzett FORRÓ TI BOR tudományos számítások lehetőségei. kisszámítógépes rendszerekben. Kutató Intézet

1. Az utasítás beolvasása a processzorba

Digitális technika VIMIAA01

Bevezetés az informatikába

Egyszerű RISC CPU tervezése

[cimke:] [feltétel] utasítás paraméterek [; megjegyzés]

Digitális technika II. (vimia111) 5. gyakorlat: Tervezés adatstruktúra-vezérlés szétválasztással, vezérlőegység generációk

FPGA áramkörök alkalmazásainak vizsgálata

A Számítógépek felépítése, mőködési módjai

ELŐADÁS SZÁMÍTÓGÉP MŰKÖDÉSE FIZIKA ÉS INFORMATIKA

Memóriák - tárak. Memória. Kapacitás Ár. Sebesség. Háttértár. (felejtő) (nem felejtő)

SZÁMÍTÓGÉPARCHITEKTÚRÁK

Számítógépek felépítése, alapfogalmak

8. Fejezet Processzor (CPU) és memória: tervezés, implementáció, modern megoldások

8. Fejezet Processzor (CPU) és memória: tervezés, implementáció, modern megoldások

2. Laborgyakorlat. Step7 programozási környezet bemutatása

Az integrált áramkörök kimenetének kialakítása

Bevitel-Kivitel. Eddig a számítógép agyáról volt szó. Szükség van eszközökre. Processzusok, memória, stb

A mikroprocesszor felépítése és működése

Máté: Számítógép architektúrák

Számítógép Architektúrák I-II-III.

A MiniRISC processzor

Dr. Illés Zoltán

Assembly. Iványi Péter

Fixpontos és lebegőpontos DSP Számrendszerek

Számítógépek felépítése

Digitális rendszerek. Utasításarchitektúra szintje

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

Újrakonfigurálható technológiák nagy teljesítményű alkalmazásai

AF 088II DIO 16/8 AF 088II DIO 16. Digitális ki-, bemeneti modul. Digitális bemeneti modul

Analogmeter & Headdisabler Verzió 1.2

DSP architektúrák Texas Instruments DSP architektúrák

Digitális technika II. (vimia111) 5. gyakorlat: Mikroprocesszoros tervezés, egyszerű feladatok HW és SW megvalósítása gépi szintű programozással

Nagy Gergely április 4.

Gábor Dénes Főiskola Győr. Mikroszámítógépek. Előadás vázlat. 2004/2005 tanév 4. szemeszter. Készítette: Markó Imre 2006

Számítógép Architektúrák

Bevezetés a számítástechnikába

MV4 megfigyelővevő. Czigány Sándor, valószínűleg jóval több IC-ből fog állni, mint modern társai, és gyengébbek

XXI. Országos Ajtonyi István Irányítástechnikai Programozó Verseny

4. Fejezet : Az egész számok (integer) ábrázolása

I 2 C, SPI, I 2 S, USB, PWM, UART, IrDA

A PIC18 mikrovezérlő család

A megfelelő IP védelem biztosításával, alkalmasak a kültéri alkalmazások kialakítására.

erettsegizz.com Érettségi tételek

Mérési útmutató. A/D konverteres mérés. // Első lépésként tanulmányozzuk a digitális jelfeldolgozás előnyeit és határait.

Járműfedélzeti rendszerek I. 3. előadás Dr. Bécsi Tamás

Szegmentálás. Memória kezelési stratégia mely a felhasználó nézőpontját támogatja Például:

VLIW processzorok (Működési elvük, jellemzőik, előnyeik, hátrányaik, kereskedelmi rendszerek)

DDS alapú szinusz jelgenerátor fejlesztése

Közlekedés gépjárművek elektronikája, diagnosztikája. Mikroprocesszoros technika. Memóriák, címek, alapáramkörök. A programozás alapjai

E-Laboratórium 1 Kombinációs digitális áramkörök alkalmazása Elméleti leírás

Multimédia hardver szabványok

Joint Test Action Group (JTAG)

Máté: Számítógép architektúrák

Mintavételes szabályozás mikrovezérlő segítségével

Az MSP430 energiatakarékos használata

Máté: Számítógép architektúrák

Technológia funkciók Számláló, PWM

5. KOMBINÁCIÓS HÁLÓZATOK LEÍRÁSÁNAK SZABÁLYAI

I. C8051Fxxx mikrovezérlők hardverfelépítése, működése. II. C8051Fxxx mikrovezérlők programozása. III. Digitális perifériák

7. Fejezet A processzor és a memória

SZÁMÍTÓGÉP ARCHITEKTÚRÁK

Aritmetikai és logikai műveletek. Adattömb kezelése.

Bevezetés az informatikába

Jármû-elektronika ELEKTRONIKAI-INFORMATIKAI SZAKFOLYÓIRAT november. 890 Ft. XII. évfolyam 7. szám

SZÁMÍTÓGÉPEK BELSŐ FELÉPÍTÉSE - 1

(11) Lajstromszám: E (13) T2 EURÓPAI SZABADALOM SZÖVEGÉNEK FORDÍTÁSA. (51) Int. Cl.: B41J 2/175 ( )

AUDIO ENGINEERING SOCIETY

Digitális bemenetek: 2 darab 0-5V jelszintű digitális bemenet Pl. nyitásérzékelők, risztóközpontok, mozgásérzékelők, átjelzők, stb.

HARDVERKÖZELI PROGRAMOZÁS1

Számítógép Architektúrák (MIKNB113A)

Új módszerek egyfázisú aszinkron motorok jelfeldolgozó kontrolleres vezérléséhez

Számítógép Architektúrák

SzA19. Az elágazások vizsgálata

CAN BUSZ ÁLTALÁNOS ISMERTETŐ

4. Programozási nyelvek osztályozása. Amatőr és professzionális

Mintavételezés tanulmányozása. AD - konverzió. Soros kommunikáció

Kezelési útmutató DigiDirve-3.x

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

Hangkártya programozása

100% BIO Natur/Bio kozmetikumok és testápolás

1. Fejezet: Számítógép rendszerek

Bevezetés a számítástechnikába

Véges állapotú gépek (FSM) tervezése

Számítógép felépítése

ARM Cortex magú mikrovezérlők

Hardware minőségellenőrzése az elektronikai gyártási folyamat során Ondrésik Tamás, O0QUL3

Digitális rendszerek. Mikroarchitektúra szintje

1. mérés - LabView 1

INFORMATIKA MATEMATIKAI ALAPJAI

Átírás:

DSP architektúrák dspic30f család A Microchip 2004 nyarán piacra dobta a dspic30f családot, egy 16 bites fixpontos DSC. Mivel a mikróvezérlők tantárgy keretén belül a PIC családdal már megismerkedtetek, ezért egyszerűbb bemutatni a DSP jellegzetességeket ezen a családon, habár nem a legjobb DSP-k közé tartozik. A dspic30f család architektúrája 16 bites, módosított Harvard architektúra. 16 bites adatmemória, 24 bites programmemória és 24 bites programszámláló (PC). A processzorban egy egyszintű pipeline segít a párhúzamos végrehajtásban. 16 általános regiszter használható mind adat, cím vagy offset regiszterként. Processzor két tipusú utasítást tud kezelni, a mikróvezérlő (MCU) és a DSP utasításokat. A mikróvezérlő utasítások hasonlóak a PIC utasításokkal, a DSP utasítások kezelésére ujabb funkcionális egységeket adtak a CPU-hoz. Ugyancsak DSP specifikus utasítások miatt két memóriazóna van(x és Y), ennek megfelelően két adatsín, és két címgeneráló egység. Ez azért hasznos mert például a MAC utasítás egyszerre olvas be két operandust, így egy utasításciklus alatt elvégzi a szorzás és összeadás műveletet. Amikor nem DSP utasításokat hajt végre a processzor akkor csak az X memóriazóna használható. A felső 32kbyte adatmemóriába betükrőzhető a bármelyik 16kWord adatmemória, ezzel egyszerűen beolvashatók adatok, amik a programmemóriában vannak tárolva. A DSP motor, a CPU azon része ami a DSP specifikus utasítások elvégzését hivatott szolgálni, egy 17bit x 17bit-es szorzót tartalmaz, két 40 bites akkumulátort, és egy 40 bites kétirányú eltoló(barrel shifter) regisztert tartalmaz. A következő táblázatban a programozásban használt CPU regiszterek összefoglalója látható, a címzésnél valamint az összes adatmozgatásnál használt regiszterek listája:

A CPU architektúrája A fent leírt egységeken kivül egy hardware osztó áramkőr, a megszakításkezelő áramkőr valamint perifériák láthatók. A perifériák a PIC-nél jól ismert portok, kommunikációs eszközök, analóg bemenetek, PWM kimenetek. Van néhány új periféria is, mint a Motor Control családnál az invertervezérlő PWM kimeneti egység.

CPU regiszterek

A fenti ábrán, a CPU regiszterek közül a W0-W3 és a Status regiszter néhány bitje a memóriában meg van duplázva, ez azt jelenti, hogy a POP.S és PUSH.S utasítások elmentik illetve visszatöltik automatikusan ezeket. Arra kell vigyázni, hogy csak egy POP.S utasítást használjunk mert csak egyszintű ez a verem. Ugyancsak veremkezelésre használható a W15 regiszter, ami egy veremmutató lehet. Ezt a mutatót a POP és PUSH utasítások használják, a programozó megadja a verem kezdőcímét és a POP, PUSH utasítások ezt növelik illetve csökkentik. Megadható egy veremmélység(splim), ha ezt meghaladta a veremmutató akkor egy megszakítást generál. A fent ismertetett CPU regiszterek részletes leírása megtalálható az adatlapban, röviden: TBLPAG a felső nyolc bitjét tartalmazza a programmemóriának, kódmemóriaolvasásnál használják PSVPAG kiválasztja a program memória azon részét, amit tűkrözni akarunk az adatmemória felső 32Kbyte részén. MODCON a moduló címzés konfigurációs regisztere. Bővebben a memóriazónák bemutatásánál RCOUNT a repeat ciklus számláló regiszter, egy utasítást többszőr végrehajt a processzor DOCOUNT a DO utasítást számláló regiszter, a DO több utasítást megismétel annyiszor, amennyi ebben a regiszterben megadott DOSTART, DOEND a DO ciklus kezdő illetve végső címe. CORCON a DSP utasítások és a DO ciklus konfigurációs bitek Az aritmetikai és logikai egység (ALU) Az ALU 16 bites összeadást, kivonást, logikai műveleteket, valamint egybites eltolást tud végezni. Az operandusok vagy a W regiszterekből, vagy az adatmemóriából jönnek, az eredmény ugyancsak ezekbe tehető. Működhet 8 illetve 16bites módban, a régi CPU kompatibilitás miatt, de itt ügyelni kell az adatcímzésre, mert csak páros címek elfogadhatók. Ha keverjük a 8 illetve 16- bites operandusokat, akkor automatikus átalakítja 16 bitesre a processzor, ha a SE(sign extend) utasítást használjuk. A ZE(zero extend) utasítás visszaalakítja 8 bitesre az utasítást. A DSP motor A CPU ezen része a DSP műveletek gyors végrahjtását bizosítja. Az a cél, hogy minden utasítást egy ciklus alatt elvégezzen a processzor, még a bonyolultabb DSP utasításokat is.

A DSP motor felépítése: Alegységek: 17x17 bites szorzó több bites eltoló(barrel shifter) 40 bites összeadó, kivonó két 40 bites akkumulátor A két 40 bites akkumulátor a műveletek eredményét tárolja, az ismert adatforma az egész tipus vagy a tízedes. A tízedes ábrázolásnál a tízedes pont a 31. bit jobb oldalán van, ezzel 256.0 és 256-2 -31 a dinamikus tartománya az ábrázolt számoknak. A szorzó egység egész vagy tízedes szorzást tud végezni, az eredményt Q31 formában tárolja.

DSP utasítások, amelyek használják a szorzó egységet: Ugyamezt a szorzó egységet használja az MCU is, de ebben az esetben csak egész szorzás végezhető. A több bites eltoló egység (Barrel Shifter) egy utasításciklus alatt maximum 16 bites eltolást tesz lehetségessé, jobbra vagy balra. A klasszikus ALU csak 1 bitnyire tudta eltolni az operandust. Utasítások amik használják: Hardware Osztás A hardware osztó a következő műveleteket tudja elvégezni: DIVF: 16/16 signed fractional divide DIV.SD: 32/16 signed divide DIV.UD: 32/16 unsigned divide DIV.SW: 16/16 signed divide DIV.UW: 16/16 unsigned divide A hardware osztót mind az MCU mind a DSP utasítások használják.

Utasításciklusok a legtöbb utasítás egy ciklusban hajtódik végre, ez annak köszönhető, hogy az előző ciklusban már kiolvassa az utasítást. Vannak utasítások amik 2 vagy három ciklust vesznek igénybe: A dspic utasításciklusa négy órajel, ebből kiszámítható minden utasítás ideje: