Uživatel:Pundavac
Obsah |
MICROCHIP dsPIC30F Rodina digitálních signálových procesorů
Co to je?
Tato rodina obsahuje 16-ti bitové Digitální signálové procesory založené na Harwardské struktuře. Jejich výkon dosahuje 30MIPS (Mega Instruction Per Second) Hodí se k různým muldtimediálním aplikacím jelikož kombinule vlastnosti DSP (Digitalní Signalový Procesor)
Kde získat?
Bohužel firma Microchip již delší dobu neposílá vzorky součástek do České republiky. Procesory je tedy možné získat buďto přímo od dodavatele: http://microchip.cz/new/webcz/index.php?id=prehled&sekce=microchip, ale lepší varianta je poohlédnout se po nich na eBay nebo Aukru.
Struktura
Jak již bylo řečeno procesory z rodiny dsPIC jsou založeny na Harvardské architektuře. Tudíž mají oddělenou programovou paměť od paměti datové. To umožňuje zápis/čtení do obou pamětí zároveň, tedy urychluje to samotný procesor.
- Modrá část představuje jádro procesoru a obsahuje několik zajímavých bloků.
- PSV - Program Space Visibility - mechanismus umožnující číst v programové paměti jako by to byla paměť RAM.
- Program counter - čítač programu, slouží k orientaci v cyklech programu a umožňuje se vracet či předbíhat instrukce
- DSP engine - obsahuje vysokorychlostní násobičku 17x17-bitů, barrel shifter (posuvník, posouvač) a 40-bitovou sčítačku/odčítačku.
- Architektura tohoto procesoru umožňuje provádět jen jednu instrukci za cyklus. Ovšem některé instrukce DSP enginu lze provádět zároveň s jinými instrukcemi, což umožňuje mnohem rychlejší zpracování signálu. DSP Engine se velmi hodí na úpravu a zpracování nejrůznějších signálu, k tomu slouží instrukční sada, která obsahuje základní aritmetické operace.
- Červená část - Paměť programu, slouží uživateli k ukládání proměnných potřebných pro aritmetické operace a fungování programu
- Zelená část - EEPROM - může být využita k nahrání firmware
- Světle modrá - Paměť pro data
- Fialová - řízení přerušení - umožňuje kdykoliv přerušit program pomocí vnějšího nebo vnitřního podnětu a provést jinou operaci
- Dále obsahuje
- Několik čítačů - využitelné k různým aplikacím
- 10 nebo 12-ti bitový AD převodník
- Rozhraní UART - Asynchroní sériové rozhraní
- SPI - Sériové periferní rozhraní - slouží ke komunikaci s jinými bloky (externí paměti, jiný procesor, atd.)
- Komparátory
Jak programovat?
Procesory dsPic lze poměrně jednoduše programovat pomocí hardwaru a softwaru od firmy Microchip. Ta obě potřebné věci naštěstí poskytuje jako opensource.
- Pickit/pickit2 - je to přípravek umožňující nahrání programu do procesoru a "živé" debugování, tedy postupné přehrávání programu přímo v procesoru. Microchip poskytuje vše potřebné k vyrobení tohoto přípravku, tedy schema zapojení a program pro procesor zajišťující nahrání programu. Na internetu jsou k nalezení nejrůznější modifikace tohoto přípravku, které ho zjednodušují o ne příliš často potřebné části. Další možností je nahrát přímo do procesoru tzv. bootloader jehož pomocí můžeme procesor programovat.
- Mplab Integrated Development Enviroment - jak již název napovídá, je to vývojové prostředí ve kterém lze psát program a překládat program do strojového kódu pro procesor. Program můžeme psát jak pomocí assembleru nebo nějakého vyššího programovacího jazyku tedy C.