Flash pamet a vadne bloky

Jan Waclawek konfera na efton.sk
Pátek Únor 19 14:12:50 CET 2016


>Tzn. 255 lze přepsat čímkoli, ze 3 se uµ dá udělat jen 0, 1, nebo 2.

Toto by som rozhodne nedoporucoval. DS k niektorym pamatiam nepredpisuje
obmedzenie na byty, ale u inych ano (vid nahodny vyber dole). Verim tomu,
ze aj u tych, kde to DS nedovoluje, sa daju v uz naprogramovanych byte
preprogramovat dalsie bity z 1 na 0; ale su aj fyzikalno-technologicke
dovody na to nerobit to (write disturb), a Vy nemozete vediet, ci su pre
dany obvod relevantne alebo nie. Ide teda o metodu "mne to funguje", ktora
sa moze v dlhodobom horizonte vypomstit znizenou spolahlivostou, napriklad.

Takze ak to chcete mat portabilne, programuje sa zasadne po bytoch, pricom
je u niektorych pamati mozne za urcitych okolnosti urychlit programovanie
tak, ze sa programuje viac bytov naraz (musia byt v ramci stranky obvykle
256 byte).

wek


Macronix MX25L8008E - asi bit
The Page Program (PP) instruction is for programming the memory to be "0"

ST/Numonyx/Micron M25P32 - bit
The PAGE PROGRAM command allows bytes in the memory to be programmed, which
means the bits are changed from 1 to 0. 

Spansion/Cypress S25FL116K - byte
The Page Program command allows from one byte to 256 bytes (a page) of data
to be programmed at
previously erased (FFh) memory locations.

SST/Microchip SST25VF512 - byte (mimochodom, nema page program)
The Byte-Program instruction programs the bits in the selected byte to the
desired data. The selected
byte must be in the erased state (FFH) when initiating a Program operation. 

Winbond W25Q16CV - byte
The Page Program command allows from one byte to 256 bytes (a page) of data
to be programmed at
previously erased (FFh) memory locations. 
(a jeje, kto odpisuje od koho? :-) )




-----
>Ano.
>
>Resp. lze si představovat, µe při zápisu proběhne AND s tím co uµ tam je.
>
>Tzn. 255 lze přepsat čímkoli, ze 3 se uµ dá udělat jen 0, 1, nebo 2.
>
>PH
>
>
>From: Martin Hanek
>Na toto jsem se ptal. Kdyľ nebudu potřebovat změny, ale vyuľiji pamě»
>třeba na logy nebo data, která jen přidávám, tak mi stačí smazat sector
>a postupně je zapisovat? Příklad:
>- mám data o velikosti 512B
>- vymaµu sector 4kB
>- postupně, tak jak je sbírám, zapisuju bloky 512B, aniµ bych sector mazal
>- po čase, aľ zapíąu celou pamě» pojedu od začátku, tedy smaľu blok a
>postupně zapisuju
>
>Lze to takto?
>
>Martin Hanek
>
>Dne 19.2.2016 v 13:24 "Ing. Libor Konečný" napsal(a):
>>
>> Ten zasadni rozdil je v tom (to je asi duvod vyssi ceny)  ze AT45 maji
>> RAM buffery. Tzn nemusite provadet erase, AT45db umi primo zapisovat,
>> interni HW si to jiz osetri.
>> U standardni flash musite vymazat blok a postupne zapisovat, bohuzel pri
>> zmene jednoho zapsaneho bajtu, musite znovu vymazat dany blok a do RAM
>> si zapamatovat co tam bylo puvodne, pak zmenit a zapsat. U MCU s malou
>> kapacitou je prave dulezita co nejmensi velikost bloku.
>>
>> U at45 nemusite ma to vlastni RAM buffer, takze muzete prepsat jeden
>> bajt a on se tam ulozi. Je sice pomalejsi, ale chova se  jako EEPROM. 



Daląí informace o konferenci Hw-list