Re: Chyba v křemíku u AT91SAM7S

Tomáš Hamouz hamouz na divesoft.cz
Středa Červen 17 13:32:03 CEST 2015


Liší se to podle způsobu výběru aktivní periférie.

Lze nastavit statický výběr, tzn. před zahájením přenosu se v extra
registru nastaví se kterou periférií se komunikuje a pak se zapisují
jen užitečná data (8 nebo 16 bitů, podle nastavení).

Pak lze nastavit dynamický výběr, kde součástí zapisovaných dat je i
výběr periferie. Zapisuje se 32 bitů, z toho 16 je určeno pro data a
ze zbytku se určuje periférie a případně konec přenosu (deaktivace CS
po odeslání).Pokud se v po sobě jdoucích zápisech periférie liší,
kontrolér deaktivuje původní CS a aktivuje nový CS.

Chyba spočívá v tom, že v tom statickém režimu + DMA, kde se přenáší 8
nebo 16 bitů, se odněkud vezmou vyšší bity a ty se vyhodnotí, i když
nemají.

Tomáš



> Nepouzivam ATSAM, takze mozno sa spytam hlupost: preco sa musi to DMA
> prenasat 32 bitov, ked sa z nich pouzije len 8 alebo 16?

> wek


> ----- Original Message ---------------
>>Zdravím
>>jen pro informaci, narazil jsem na alternativní projev chyby v křemíku
>>u AT91SAM7S neľ popisuje errata.
>>
>>Pokud se pro SPI pouľívá DMA přenos, vyhodnocují se přenáąená
>>data ąpatně (vyhodnocují se vyąąí bity, ač se mají ignorovat) a můľe dojít k
>>předčasnému ukončení přenosu tím, ľe se nastaví bit LASTXFER a tím
>>pádem se deaktivuje CS. Tohle vąechno errata popisuje.
>>
>>Teď jsem narazil na jiný projev, pravděpodobně téľe chyby. LASTXFER se
>>standardně nastavuje automaticky v okamľiku kdy DMA dojdou data. Chyba
>>se projevuje tak, ľe v závislosti na posílaných datech se naopak tento
>>bit nenastavil a CS zůstalo viset aktivní.
>>
>>Konkrétní bitový vzorek který to způsobuje jsem nehledal, překopal
>>jsem svoje knihovny na důsledné ruční řízení CS přes PIO.
>>Trochu to zdrľuje, musím teď čekat aľ přenos doběhne, abych
>>deaktivoval CS :-(
>>
>>To docela naątve.
>>
>>Tomáą

> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list



Další informace o konferenci Hw-list