LPC11U68 + C rychlost portu

Jan Waclawek konfera na efton.sk
Úterý Červenec 26 14:57:12 CEST 2016


>24 MHz by bylo, kdyby v±echny pulzy měly 20,83 ns. Ale protoµe část z nich 
>má kolem 50, celkový výsledek je asi 20 MHz. Ty prodlouµení jsou rozmístěny 
>nepravidelně, ale celá sekvence se pravidelně opakuje. O běh z RAM jsem se 
>nesnaµil, ale nevylučuji, µe ho optimalizace udělala.

To sa mi zda ako mala sanca. Da sa to lahko zistit, ak zastavite v
debuggeri vykonavanie a pozriete sa kam ukazuje PC.

> Dokumentaci k Cortex-M jsem viděl jen zběľně, ale pokud mě má zrádná pamě» neklame, 
> tak velikost mezipaměti (není to cache, ta je aµ za touto pamětí, pokud je) 
> pro čtení kódu z flashe je 4 byte, coµ jsou dvě Thumb instrukce (víceméně). 

Tak to bude asi prefetch. V jadre to ma len Cortex-M3/M4 (M7 ma skutocne
cache ale to je o pol ligy vyssie) a su to max. 3 wordy (ak tomu dobre
rozumiem, je to konfigurovatelny parameter pri preklade jadra, a zatial
som pre Cortex-M ani u jedneho vyrobcu nenasiel slusny datasheet ktory by
menoval ako boli konfigurovane tie konfigurovatelne veci). Cortex-M0/M0+
prefetch nema. Na druhej strane vsak vsetky robia 32-bitovy fetch, pricom
vsetky su pevne Thumb2, a ak sa nemylim, M0 ma vsetky instrukcie 16-bitove
a M0+ mozno tiez, t.j. ak FLASH je 32-bitova, tak jeden fetch je dobry na
dve instrukcie. Pri 2 waitstatoch by to znamenalo 3 cykly na 2 instrukcie,
ak su instrukcie vykonavane po 1 cykle (co su, ak kazdy cyklus sa zmeni
GPIO port), tak by sa po kazdych 2 cykloch muselo 1 cyklus cakat. To
neznie ako "nepravidelne rozmiestnenie". 

Pochopitelne, FLASH moze byt aj sirsia, trebars 64-bitova, s tym ze by
prefetch mohol robit FLASH kontroler alebo nejaky medzikus medzi nim a
zbernicou/maticou, tam by ale potom pri prostom vykonavani sekvencie
1-cyklovych instrukcii nemalo byt vobec ziadne zdrzanie. V DS ani UM som
vsak sirku FLASH ani ziadne medzikusy specifikovane nenasiel.

Aky mate obsah registra FLASHCFG (vo FMC ak som dobre pochopil meno
modulu)? 
Nebezi v tom mcu v tom case este nieco ine co chodi pravidelne na zbernice,
t.j. DMA alebo USB?

> Jednocyklový přístup, nebo jednocyklové vykonovávání? 

Oboje. Tie M0 su velmi simplistic.

> Ale pro Mko by přístup neměl mít takový význam, jde o trochu jiný koncept neµ pro A/R.

Presne tak.

wek




Daląí informace o konferenci Hw-list