flash NAND a zapis bez vymazani bloku

Libor Konečný support na mikrovlny.cz
Neděle Duben 28 20:21:16 CEST 2019


Zdravim osazenstvo.
Jelikoz jsem zde fachmani na pameti, prosim je o radu.
Poprve pouzivam SPI NAND NOR flash 1Gbit TC58CVG0S3HxAI, zapisuji a ctu 
data pres buffery  2048 bajtu, takova mirna podivnost.
Coz neni problem, problem je jak zapisovat sekvencne data, ktere mi 
chodi pres tcpip stack a maji velikost, par desitek bajtu.
Napsal jsem driver za par hodin, overil funkcnost a vse se zdalo ok, 
zajasal jsem ze konecne vec, ktera sla rychle ;-)
Ale jen do nejake doby, kdy se pak bajty zacaly menit, tedy  jako by do 
nejakeho nahodneho  bitu se zapsala 0.

Zapis mam reseny tak, ze poprve vymazu blok , bajty jsou na 0xFF
Pak do bufferu (2048) nastavim same 0xFF a nahradim je bajty k zapsani ( 
adresa zapisu je posunute o delku predchozich).

Udelal jsem test, kdy do bufferu nastavim 
0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,.........
A zacnu jej bez mazani zapisovat a porovnavat.
Po cca  110-122  zapisech  se objevi chyba, tedy jakoby se dostal 0nit 
do jedineho bytu a data jsou tedy nespravne, ukoncuji zapis a vytisknu 
si debug.
Co je zahada, ze vzdy na stejne adrese, ale pri podobnem mnozstvi cyklu. 
Zkousel jsem davat ruzne zpozdovaci smycky, MCU uz nedela vubec nic 
navic, zadne preruseni atd..
Dneska jsem si komunikaci odchytnul na analyzatoru a taky nic, to co tam 
ma prijit tam prijde.
Bad block taky neni na dane adrese.

Nicmene stejny zapis  jsem resil u ST25 (spi pameti, ale nejsou NAND) a 
tam to fungovalo bez problemu.
Stejnou logiku zapisu jsem take rovnez pouzival  u NAND flash HYNIX, 
takove ty tenke, ale paralelni a taky bez problemu.
Mazat to pred zapisem je nesmysl, blok ma totiz 132kBytes.

Ma otazka je tedy, zda se s tim nekdo setkal, a zda budu muset zapis 
vyresit tak ze budu cekat az se naplni buffer 2048 a pak jej zapsat + 
dodelat nejaky timeout.

A nebo se to zkratka neoporucuje a budu muset resit driver, kdy zapisu 
do page maximalne jednou ?


Dekuji
LK







Další informace o konferenci Hw-list