GPIO (konfigurace vstupu, výstupu, alt. funkce) GP timers Core timers Watchdog timer Rotary counter Real time clock Keypad interface SD HOST (MMC, SD interface) ATAPI (IDE) A0M38SPP - Signálové procesory v praxi - přednáška 10 2
A0M38SPP - Signálové procesory v praxi - přednáška 10 3 Až 152 GPIOs z celkové množství 400 Piny rozděleny do skupin (portů): A až J Počet pinů/ port : max. 16 Režimy z hlediska HW: vstupní, výstupní, open drain Multiplexované funkce nastavitelné individuálně pin po pinu 4 přerušovací kanály pro externí přerušení Připojitelné na kterýkoliv pin (konfigurovatelné na hranu či úroveň)
A0M38SPP - Signálové procesory v praxi - přednáška 10 4
A0M38SPP - Signálové procesory v praxi - přednáška 10 5 Po resetu všechny GPIOs nastaveny do input režimu, stav vysoké impedance, interně drženy v log. 0 není nutno nezapojené piny ošetřovat Každý port A až G: řízen těmito ě registry: PortX_FER (function enable reg. 16.bit. ) PortX_MUX(výběr GPIB nebo speciální funkce pinu 32.bit) PortX_INEN (log.1 = stav vysoké impedance) PortX_DIR_SET (log. 1 =input mode) PortX_DIR_CLEAR (log. 0 = output mode)
A0M38SPP - Signálové procesory v praxi - přednáška 10 6
A0M38SPP - Signálové procesory v praxi - přednáška 10 7
A0M38SPP - Signálové procesory v praxi - přednáška 10 8 Implementovány dva moduly časovačů Na nich je realizováno celkem 11 samostatných nezávislých 32 bit. časovačů Lze nastavit synchronní spouštění či zastavení Režimy časovačů: singleshot singleshot mód měřenídoby doby, generování pulzů definované šířky PWM mód automatické nastavení řídicích registrů (perioda a střída generovaných signálů) Externí časovač možnost CAPTURE režimu Externí čítač událostí např. měření frekvence
Synchronní operace na všech čítačích V případě režimu PWM obnova řídicích registrů (perioda, střída) Automatická detekce přenosové rychlosti (CAN, UART) A0M38SPP - Signálové procesory v praxi - přednáška 10 9
A0M38SPP - Signálové procesory v praxi - přednáška 10 10
A0M38SPP - Signálové procesory v praxi - přednáška 10 11
A0M38SPP - Signálové procesory v praxi - přednáška 10 12 Po resetu nastaven na 0x0000(1) Vždy čítá ánahoru Vstup hodin volitelný, typicky se používá signál SCLK (systémové hodiny procesoru pro periférie) Max. možná Tmax = 32,3 s @fsclk= 130 MHz Po přetečení časovače generuje se přerušení (bit TOF_ERRx v reg. TIMER_STATUSx) V režimu PWM obsah čítač se plní hodnotou z TIMERx_PERIOD a TIMERx_WIDTH Výběr režimu čítače TIMER_CONFIG reg. Povolení čítače TIMERx_ENABLExENABLEx
A0M38SPP - Signálové procesory v praxi - přednáška 10 13 Pokud register PERIOD_CNT = 0, generuje se pouze jeden impulz definované délky Možnost konfigurovat aktivní log. úroveň
A0M38SPP - Signálové procesory v praxi - přednáška 10 14 Automatická detekce přenosové rychlosti
A0M38SPP - Signálové procesory v praxi - přednáška 10 15
A0M38SPP - Signálové procesory v praxi - přednáška 10 16 Programovatelný 32. bit časovač určený pro generování periodických přerušení ř í!!! Vstupní hodiny CCLK (systémové hodiny procesoru) Na vstupu 8 bit. předdělička Výstup časovače připojen na přerušení s vysokou prioritou Režimy : singleshot kontinuální operace Čítač se dekrementuje!!!
A0M38SPP - Signálové procesory v praxi - přednáška 10 17
A0M38SPP - Signálové procesory v praxi - přednáška 10 18
A0M38SPP - Signálové procesory v praxi - přednáška 10 19 32 bit. timer 8 bit. disable bit patern při spuštění čítá směrem dolů, softwarově se musí před ř vynulováním opět ě nahrát há Při vynulování generuje se jedna ze tří událostí: Reset NMI (CEC core event controller) GP interrupt trequest (SIC systemt interrupt tcontroller) Řídicí registry: WDOG_CTL,WDOG_STAT, WDOG_CNT
A0M38SPP - Signálové procesory v praxi - přednáška 10 20
32 bit. čítač pro zpracování signálů z inkrementálních čidel (např. senzor natočení) Integrací pulzů lze převádět relativní polohu na absolutní Na inkrementálních čidlech použit Grayův A0M38SPP - Signálové procesory v praxi - přednáška 10 21
A0M38SPP - Signálové procesory v praxi - přednáška 10 22
A0M38SPP - Signálové procesory v praxi - přednáška 10 23 Pro udržení hodin reálného času nebo měření celkové doby odposlední restartu procesoru Hodiny externí krystal 32, 768 khz Samostatné napájecí piny čítač běží bez ohledu na procesor Dělička pro odvození T = 1 s Obsahuje registr (čítač) sekund, minut, hodin a dnů Možno generovat libovolné přerušení (každou sekundu, minutu atd.) d) Možnost využití alarmu v pomocných registrech se nastaví datum a čas v případě, hodnota RTC odpovídá nastavenému datumu a času, generuje se přerušení Funkce stopek RTC dekrementuje nastavený obsah, při uplynutí se generuje interrupt
A0M38SPP - Signálové procesory v praxi - přednáška 10 24
A0M38SPP - Signálové procesory v praxi - přednáška 10 25 RTC STATUS (obsahuje jednotlivé čítače) RTC_ICTL (řídí způsoby ů generování přerušení ř od RTC) RTC_ISTAT (obsahuje příznaky jednotlivých událostí) RTC_SWCNT (režim stopek stopek down counter) RTC_ALARM (definuje okamžik vzniku alarmu) RTC_PREN (povolení předděličky na vstupu RTC)
A0M38SPP - Signálové procesory v praxi - přednáška 10 26 16 bit. Interface pro připojení klávesnice (max. vel. matice 8 x 8 kláves) Automatické ošetření zákmitů Režimy: Press realese press mód Press hold mód Lze definovat přerušení pro stisk lib. klávesnice
A0M38SPP - Signálové procesory v praxi - přednáška 10 27
Rozhraní pro MMC, SD a SDIO karty (zařízení) Podporuje 1 bit. a 4 bitový SD mód SPI není podporováno! Detekce zasunutí karty Hodiny pro rozhranní odvozeno od SCLK Podpora pro SDIO přerušení Sběrnice SD0 až SD3 obousměrná, jedním směrem se posílají příkazy, druhým se čeká na odpovědi A0M38SPP - Signálové procesory v praxi - přednáška 10 28
A0M38SPP - Signálové procesory v praxi - přednáška 10 29
A0M38SPP - Signálové procesory v praxi - přednáška 10 30
A0M38SPP - Signálové procesory v praxi - přednáška 10 31 Výchozí stav : IDLE Zápisem do SDH_COMMNAND se spustí vysílání příkazu Po odeslání se nastavují status flagy Čeká se na odpověď nebo se automaticky přechází opět do režimu IDLE V případě, že se vyžaduje odpověď, čeká se na přijetí
A0M38SPP - Signálové procesory v praxi - přednáška 10 32
Formát příkazu (délka 48 bit.) A0M38SPP - Signálové procesory v praxi - přednáška 10 33
A0M38SPP - Signálové procesory v praxi - přednáška 10 34 Podporovány dva formáty: 48 bit. odezva 136 bit. odezva
A0M38SPP - Signálové procesory v praxi - přednáška 10 35 Další detaily ohledně standardu: http://www.sdcard.org/developers/tech/sdcard/pls /Simplified_Physical_Layer_Spec.pdf http://www.sandisk.com/media/file/oem/manuals /SD_SDIO_specsv1.pdf
16 bit. datové rozhraní hojně používané např. na harddisky, CR ROM mechaniky, DVD přehrávače apod. Dříve hojně rozšířené v PC XT, AT IDE nedílná součást ISA sběrnice ATAPI definuje 80 příkazů PIO módy: 0,1,2,3,4 DMA módy: 0,1,2, Ultra DMA módy: 0,1, až 100 A0M38SPP - Signálové procesory v praxi - přednáška 10 36
A0M38SPP - Signálové procesory v praxi - přednáška 10 37