arm cm3 dsb instrukce

Lubor Otta butan na centrum.cz
Pátek Červen 12 06:55:00 CEST 2020


Dík za odpověď,  i příklad z praxe WEKu.
Jak jste to "SPI" nakonec vyřešil? DSB instrukcí? Nebo přepnutím v MPU 
na periférii. Druhá cesta by asi byla rychlejší...
Asi tu kapitolu 34. podrobně prostuduji celou, i když k ní nemám moc 
důvěry, je 10let stará bez jediné opravy, je někde celá specifikace CM3 
u armů k dispozici, aktualizovaná veze v jediném dokumentu? Jako analog 
té kapitoly 34? Luštit to v desítkách dílčích dokumentů mně odrazuje.

A ještě by mně zajímalo jak to je s paměťmi, ram a flash. Ty asi nejsou 
součástí jádra, a podobně jako periférie si je do čipu přilinkuje 
výrobce? Jaká je u nich skutečná doba přístupu? A časování práce s 
pamětí je odvozené od hodin procesoru? V té vnitřní struktuře zatím tápu.
A jak jste psal že DSB je neúčinná pro registry přerušení, neplatí totéž 
i pro Peripheral SRAM?


Dne 11.6.2020 v 22:47 Jan Waclawek napsal(a):
>> Jedna je oznaèená jako Peripheral SRAM, funguje nad ní  bit-band bitový pøístup. Takže ta se zjevnì chová jako zaøízení?
> Nie.
>
> Spravanie jednotlivych oblasti je dane MPU, a ak je nepritomna (v LPC1769
> je pritomna) alebo vypnuta (co je defaultny stav), tak sa sprava podla
> default memory map, UM10360 34.3.2.3 Behavior of memory accesses.
>
> Ta "peripheral SRAM" je v oblasti 0x20000000-0x3FFFFFFF, ta je defaultne
> Normal (to je to co Tomas uviedol ako "prostor oznaceny jako pamet").
>
> U tych LPC je divne to, ze este aj GPIO je v tej Normal oblasti (je na
> spolocnej zbernici z jednou z tych "Peripheral SRAM", vid Fig 2. LPC1768
> block diagram, CPU and buses. Zazil som s LPC1768 milu prihodu, ked som sa
> pokusal bit-bangovat 74HC595 pomocou bit-bandingu v GPIO (pekna veta, nie?
> taka silne Cortex-M :-) ), zlucili sa mi dva pristupy a odrazu som nemal
> potrebnu separaciu medzi poslednym clockom a latchom...
>
>
> wek
>
> ----- Original Message ---------------
>
> Subject: RE: arm cm3 dsb instrukce
>     From: Lubor Otta <butan na centrum.cz>
>     Date: Thu, 11 Jun 2020 17:24:09 +0200
>       To: "HW-news" <hw-list na list.hw.cz>
>
> Ten mùj LPC procesor má 2 ramky.
> Jedna je oznaèená jako Peripheral SRAM, funguje nad ní  bit-band bitový
> pøístup. Takže ta se zjevnì chová jako zaøízení?
> Jak byste mi doporuèil rozdìlit využití tìch 2 sekcí ramky? Rychlost
> pøístupu jsem zatím netestoval, zásobník mi linker nìjak náhodnì stìhuje
> mezi obìma, asi podle toho kde zbývá víc volného místa.
> (pøekládám keilem, podle automaticky generovaného .sct)
> Lubor
>
> ______________________________________________________________
>> Od: "Tomas Dresler" <dresler na hw.cz>
>> Komu: "'HW-news'" <hw-list na list.hw.cz>
>> Datum: 11.06.2020 09:23
>> Pøedmìt: RE: arm cm3 dsb instrukce
>>
>> Poradi ne, ale v prostoru oznacenem jako pamet muze data slucovat (tøeba dva 8-bitove jako jeden 16-bitovy). V prostoru oznacenem jako zarizeni se drzi poradi i velikosti zapisu.
>>
>> --
>> S pozdravem
>>
>> TomᚠDresler
>> +420 606 756 606
>>
>>
>> -----Original Message-----
>> From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of Lubor Otta
>> Sent: Thursday, June 11, 2020 7:38 AM
>> To: hw-list na list.hw.cz
>> Subject: Re: arm cm3 dsb instrukce
>>
>> A u toho armu bez DSB, mùže se stát že mi ten "optimalizátor" v železe procesoru i zmìní poøadí v jakém se do ramky zapíše?
>> Teï mám na mysli volatile promìnné, takže kompilátor neøeším Lubor
>>
>>
>> Dne 5.6.2020 v 9:24 Miroslav Mraz napsal(a):
>>>   Sice se dá napsat fronta, která má jen 2 konce a bez atomického
>>> pøístupu se obejde, ale je lépe si pamatovat, že nìco jako atomický
>>> pøístup existuje a gcc na to má svá primitiva.



Další informace o konferenci Hw-list