PIC processzor s krnyezete Bevezets PIC Mikrovezrl Programmable
PIC processzor és környezete
Bevezetés • PIC: Mikrovezérlő • Programmable Intelligent Computer • Mikrovezérlők főleg egyszerűbb eszközök működtetésére
Felépítés(hardware) • Harvard architektúrájú mikrovezérlő • Harvard architektúra: külön program- és adatmemória, külön sín • Egy kártyán memória, cache, regiszterek egyben • Eszközbe beépített
Felépítés(folyt) • Analóg jel -> digitális -> feldolgozás -> analóg jel • Időzítés lehetősége • Memória: indirekt címzés lehetősége • Szóhossz megegyezik alap és középkategóriás PIC-nél adat és programmemóriára(12 -14 bit) • Szóhossz felsőkategóriás PIC-nél: 8 bit program, 16 bit adatmemória
Felépítés(folyt) • Hardveres verem, csak a 18 -asoknál szoftveres kezelés -> C • Konstant megszakítás késleltetés
Processzor • külön programkód és adattár (Harvard architektúra) • kevés fix hosszúságú művelet • a legtöbb művelet 1 műveleti ciklus (4 órajel) alatt hajtódik végre, elágazásnál és ugrásnál 1 plusz késleletetési ciklus hajtódik végre • egy akkumulátor (W) a műveletek végzéséhez • a RAM cacheként és regiszterként is funkcionál – szokták egyszerűen regisztereknek hívni az adatokat • hardware-es verem visszatérési címekkel (szubrutinok meghívása után legyen hova visszatérni) • kevés címezhető memória, melyet ki lehet bővíteni blokkok használatával • a program számláló is a RAM-ban található (írásával lehet különböző programszerkezeteket létrehozni)
Felépítés(software) • Alacsony->felső kategória: 35 -> 80 utasítás • Ciklus: programvezérlő írása • Elágazás: felt. Skippel • W akkumulátorral műveletek, leszámítva bit teszt/írás • Megszakítás esetén adatok nem menthetők • Programozás: újabb verzióknál C, régebbieknél assembly
Felépítés(folyt) • Program írása „programozó” segítségével • Programozó: • Intelligens • Szimpla: közvetlen írás • Újabb PIC-ek tudják a saját programkóduk írni
Felépítés(folyt) 5 féle fő művelet: • műveletek W-n literállal • műveletek W-n indexelt regiszterrel, eredmény vagy W-be vagy a regiszterbe kerül • bit operációk: beállítás/törlés és ezeken belül tesztelés/ugrás • vezérlés átadások (goto, call, skip-ek) • 0 operandusú műveletek (szubrutinból visszatérés, sleep)
Korlátozottság • 1 akkumulátor • kis utasításkészlet • közvetlen referencia szükségeltetik a memóriára aritmetikai és logikai utasításoknál • RAM blokk-kezelés szükségeltetik, emiatt a kód elveszti hatékonyságát és bonyolulttá válik • kis hardveres verem, így nem enged nagy mélységet a programoknak, szoftveres verem pedig nem hatékony • program memóriát közvetlen nem lehet címezni (kivéve új modellek) • régi modellek esetében közvetlen parancsok elágazásra hiányoznak, így skip-pel kell megoldani
- Slides: 10