dsk freescale řada 56800e

25
DSK Freescale DSK Freescale řada 56800E řada 56800E

Upload: wells

Post on 12-Jan-2016

42 views

Category:

Documents


0 download

DESCRIPTION

DSK Freescale řada 56800E. Základní vlastnosti řady 56800E :. “ Hybridní mikrokontrolér “ Pevná řadová čárka výhodné vlastnosti MCU a DSP ( 16 -bitový DSP + 32 -bitový MCU) Frekvence jádra 32 MHz Dvojitá harvardská architektura oddělení programové a datové paměti - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: DSK Freescale řada 56800E

DSK FreescaleDSK Freescaleřada 56800E řada 56800E

Page 2: DSK Freescale řada 56800E

Základní vlastnosti řady 56800E :Základní vlastnosti řady 56800E :

“ Hybridní mikrokontrolér “ • Pevná řadová čárka• výhodné vlastnosti MCU a DSP

(16-bitový DSP + 32-bitový MCU)

Frekvence jádra 32 MHz

Dvojitá harvardská architektura• oddělení programové a datové paměti

Výkonnost až 200 MIPS• architektura 1X • 1 instrukce se vykoná v 1 hodinového

cyklu

Page 3: DSK Freescale řada 56800E

Užití, výhody:Užití, výhody:

Embedded systémy• ucelený systém realizující • aplikaci bez další podpory• samostatně komunikuje s bloky dané

aplikace

Mobilní komunikace• řízení el. strojů, • snímání a zpracovávání obrazu,• přenos dat• automobilová technika

Výhody řady: • malý příkon• nízká cena • dobrá výpočetní výkonnost

Page 4: DSK Freescale řada 56800E

Vybrané procesory řady 56800EVybrané procesory řady 56800E

Features 56F801X 56F8023 56F8025 56F8036 56F8037

Performance 32MHz/MIPS 32MHz/MIPS 32MHz/MIPS 32MHz/MIPS 32MHz/MIPS

Temp Range -40 to 105°C -40 to 105°C -40 to 105°C -40 to 105°C -40 to 105°C

Operational Voltage 3 to 3.6V 3 to 3.6V 3 to 3.6V 3 to 3.6V 3 to 3.6V

Flash 12/16Kb 32Kb 32Kb 64Kb 64Kb

RAM 2/4Kb 4Kb 4Kb 8Kb 8Kb

PWM 1 x 6 channels1 x 5 channels

1 x 6 channels

1 x 6 channels

1 x 6 channels

1 x 6 channels

12-bit ADCs 2 x 3 channels2 x 4

channels2 x 4

channels2 x 4

channels2 x 8 channels

12-bit DACs No 2 2 22(output on

pkg)

Analog Comparator No 2 2 2 2

16-bit Timers 4 4 4 4 8

Programable Interval Timers

No 1 3 3 3

GPIO (max) 26 26 35 39 53

IIC Yes Yes Yes Yes Yes

SCI 1 (w/ slave LIN

QSCI QSCI QSCI QSCI

SPI 1 QSPI QSPI QSPI QSPI

CAN No No No Yes Yes

JTAG/EOnCE Yes Yes Yes Yes Yes

Packages 32 LQFP 32 LQFP 44 LQFP 48 LQFP 64 LQFP

Page 5: DSK Freescale řada 56800E

Jádro procesorové řady 56800EJádro procesorové řady 56800E

Page 6: DSK Freescale řada 56800E

Jednotky tvořící jádro procesoru:Jednotky tvořící jádro procesoru:

Programová řídící jednotka PCU (Program Control Unit) Jednotka generace adres AGU (Address Generation

Unit) Datová aritmeticko-logická jednotka DALU (Data

Aritmetic-Logic Unit)

Page 7: DSK Freescale řada 56800E

Programová řídící jednotka Programová řídící jednotka

zajišťuje:čtení a dekódování instrukce z programové pamětipomocí řídících signálů ovládá činnost signálového procesoru.

skládá z: programového

čítače dekodéru

instrukcí logiky řízení

hardwarového smyčky

logiky řízení přerušení

stavového a řídícího registru

Page 8: DSK Freescale řada 56800E

Jednotka generace adres AGUJednotka generace adres AGU

adresy uloženy v: registrech R0 ÷ R5 ukazateli zásobníku SP

zajišťuje: veškeré výpočty adres a jejich ukládání

druhy adresování: lineárního (+1 nebo +N) modulo M bitově rezervované adresování

Page 9: DSK Freescale řada 56800E

Datová aritmeticko-logická jednotkaDatová aritmeticko-logická jednotka

obsahuje: 3x 16-ti bitové vstupní registry

(X0, Y0 a Y1) 4x 32-bitové akumulátory (A,

B, C, D) 4x 4-bitové doplňkové registry

rozšiřující akumulátory (A2,B2,C2,D2)

posuvný registr akumulátorů (AS)

omezovač dat (data limiter) cyklický registr (barrel shifter) paralelní akumulátor pro

násobení (MAC)

zajišťuje: Vykonání veškerých aritmetických a logických operací s datovými operandy.

Page 10: DSK Freescale řada 56800E

Datová aritmeticko-logická jednotkaDatová aritmeticko-logická jednotka

Zápis výsledků do: Střádače A,B,C,D nebo do datových registrů.Saturační aritmetika – neumožňuje uložit číslo mimo doplněk do

paměti (omezení ±1).DALU pracuje se zlomkovou reprezentací čísel, v jiných částech

procesoru jsou čísla brána jako celá.16 bitové registry lze spojit do 32-bitovýchOperace jsou prováděny v doplňkovém kódu. rozsah:  -1 ÷ 1-2-b  , kde b je počet bitů bez znaménkového bituDALU umožňuje: posuny operandů v 

kruhovém registru až o 15 bitů,

zaokrouhlení čísla z 32 bitů na 16,

posun o jeden bit vlevo či vpravo

(násobení nebo dělení výsledku dvěma)

Page 11: DSK Freescale řada 56800E

Instrukce, zřetězení, programováníInstrukce, zřetězení, programování

Instrukce: DSP: číslicové zpracování signálů (číslicové filtry, algoritmus FFT, adaptivní

zpracování s algoritmem typu LMS, statické vyhodnocování výsledků) MCU:komunikace s aplikací a obslužné účely (ovládání klávesnice, tlačítek,

display) 8 fázové zřetězené zpracování instrukcí skládající se z částí:

Pre-Fetch1 (P1)…adresa instrukce je předána na adresovou sběrnici PAB Pre-Fetch2 (P2)…instrukce je přečtena Instruction Devoce (ID)…dekódování instrukce Address Generation (AG)…generování dvou adres po sběrnicích XAB1,

XAB2 Operand Pre-Fetch2 (OP2)…umožněn přístup ke dvěma buňkám datové

paměti Execute and Operand Fetch (EX)…započetí násobení, uložení výsledku do

DALU registru, čtení dat přes sběrnice CDBR a XDB2 a zápis dat přes CDBW

Execute 2 (EX2) … operace je dokončena, výsledky jsou uloženy Programování:

asembler nebo C CodeWarrior

Page 12: DSK Freescale řada 56800E

Sběrnicová jednotka a jednotka Sběrnicová jednotka a jednotka bitových operacíbitových operací

Sběrnicová jednotka Uskutečňuje přenos mezi vnitřními sběrnicemi Matici spínačů a umožňuje propojení jakýchkoliv dvou

datových sběrnic ze tří (globální, datová a periferní) bez prodlevy.

Jednotka bitových operací Umožňuje zpracovávat informace uložené v datové

paměti, v registrech periferií a ve všech registrech v jádře procesoru

Tato jednotka může testovat, nastavovat, mazat nebo negovat každý z 16-bitů, který je specifikován v masce.

Page 13: DSK Freescale řada 56800E

Formáty vyjádření číselFormáty vyjádření čísel

Jádro podporuje čtyři formáty vyjádření čísel. Číslo n o délce b+1 bitů (zlomková část + znaménkový bit):• Doplňkový kód se znaménkem: -1 ≤ n ≤ 1-2-b

• Doplňkový bez znaménka: 0 ≤ n ≤ 2-2-b

• Celé číslo se znaménkem: -2b ≤ n ≤ 2b-1

• Cele číslo bez znaménka: 0 ≤ n ≤ 2b+1-1

DALU podporuje pouze doplňkový tvar

Page 14: DSK Freescale řada 56800E

Typy operandůTypy operandů

Page 15: DSK Freescale řada 56800E

Sběrnice a registrySběrnice a registry

32-bitová datová sběrnice 24-bitová datová adresová sběrnice

• (lze adresovat 16M 16-bitových slov, neboli 32MB)

21-bitová programová adresová sběrnice • (2M 16-bitových slov, neboli 4MB)

4 x 36-bitové akumulátorů A,B,C,D • (všechny mají 3 části, 2 x 16-bitovou a 1 x 4-bitovou)

24-bitové adresové registry a registr posuvu N + další 16 bitový registr posuvu N3

• (zajišťuje dva paralelní přesuny dat)

Registry pro hardwarový cyklus typu DO:• 2 x16-bitový registr LC (Loop Counter)• 2 x 24-bitové registry LA(Loop Adress)• 2 x 24-bitové HWS  (Hardware Stack)

Registry pro obsluhu rychlého přerušení• 21 bitový registr FIRA • 13-bitový registr FISR

Page 16: DSK Freescale řada 56800E

Přehled sběrnicPřehled sběrnic

Název Typ Směrovost Šířka Popis

XAB1 adresová jednosměrná 24b Adresace datového paměti

XAB2 adresová jednosměrná 24b Adresace datového paměti

PAB adresová jednosměrná 21b Adresace programové paměti

CDBR datová jednosměrná 32b Čtení dat z datové paměti

CDBW datová jednosměrná 32b Zápis dat do datové paměti

XDB2 datová jednosměrná 16b Čtení dat z datové paměti

PDB datová jednosměrná 16b Přenos dat a instrukcí z programové paměti

IP-BUS datová obousměrná Styk s periferiemi

Page 17: DSK Freescale řada 56800E

Blokové znázornění sběrnic:Blokové znázornění sběrnic:

56800E56800ECORECORE

IP- BUSINTERFACE

EXTERNALBUS

INTERFACE

PROGRAMMEMORY

DATAMEMORY

PAB 21PDB 16

XAB1 24CDBR 32CDBW 32

XAB2 24XDB2 16

PERIPHERALPERIPHERAL PERIPHERALPERIPHERAL PERIPHERALPERIPHERAL

INTRPTCTRLLER

IPDATAR

IP- BUS

IPADDR

IPDATAW

Page 18: DSK Freescale řada 56800E

PamětPamět

RAM a flash – na čipu ROM – od DSP 56F807 Vnější paměťový prostor (kromě DSP56F801) – až

64K 16-bitových slov Způsob práce programové paměti lze nastavit bity MA

a MB v registru operačního modu OMR, nebo vnějším signálem při resetování na vývodu EXTBOOT

Page 19: DSK Freescale řada 56800E

Program (4 MB)Program (4 MB) Data (32 MB)Data (32 MB)

PROGRAMMEMORY

SPACE

X DATAMEMORY

SPACE

INTERRUPTVECTORS

Optimized for IP-BUS

PERIPHERALS

221 x 16

0

$FFFFFF 224 x 16

$xxFFFF (64 locations)

$xxFFC0

$1FFFFF

$0 0

(Relocatable)

$0

“P:” “X:” 15 015 0

(short addressing)

=> 16-Bit Accesses Only => 8, 16, 32-Bit Accesses

Mapování paměti:Mapování paměti:

Page 20: DSK Freescale řada 56800E

Datová a programová paměťDatová a programová paměť

Datová paměť implementovaná na čipu: Datová RAM Datová flash Tato paměť může být rozšířena vnější pamětí, jejíž

maximální velikost se liší podle módu činnosti.

Programová paměť : Programová RAM Flash Bootovací flash Programová paměť může být rozšířena externí pamětí,

jejíž maximální velikost se liší podle módu činnosti.

Page 21: DSK Freescale řada 56800E

Mapování datové paměti u 56F8023Mapování datové paměti u 56F8023

Page 22: DSK Freescale řada 56800E

Mapování programové paměti Mapování programové paměti procesoru 56F8023procesoru 56F8023

Page 23: DSK Freescale řada 56800E

PřerušeníPřerušení

Umístění vektorů přerušení: začátek programové paměti

Jednomu zdroji přísluší dvě slova v této paměti – nutná instrukce skoku JSR

Až 63 zdrojů přerušení, dle konkrétního typu procesoruMaskování přerušení3 priority přerušení2 zásobníky typu LIFO pro ukládání adres a stavů

registrů, dělí se na:• Softwarový – ukazatel SP, umístěn v datové paměti• Hardwarový HWS – tvořen registry HWS0 a HWS1, obsluhuje

hardwarový cyklus typu DO

Page 24: DSK Freescale řada 56800E

Řadič přerušeníŘadič přerušení

ITCN - Fast interrupt handling

Page 25: DSK Freescale řada 56800E

DSP56F8023DSP56F8023