www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

FLASH Memory kako se izrablja?

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Elektronika
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
urosg
Član
Član



Pridružen-a: Pet 27 Apr 2007 14:30
Prispevkov: 565
Aktiv.: 2.56

PrispevekObjavljeno: Sob Maj 09, 2009 5:10 pm    Naslov sporočila:  FLASH Memory kako se izrablja? Odgovori s citatom

Pripravljam si eno malo zadevo, s katero bi si logiral razlicna stanja - enostavno povedano zapisoval bi si dolocene vhodne podatke.

Za spomin sem mislil uporabiti 4Mbit FLASH spomin, ki je organiziran kot 512k x 8, kar pomeni, da ima 8 sektorjev po 512kbit-ov.

Kar me pa zanima je, glede na to, da ima flash nekje 100.000 moznih zapisov me zanima, ali je to ponavadi za sektor, kar pomeni, ce zapisujem vedno samo 1byte na eno in isto mesto in to naredim 100.000krat ali s tem "unicim/izrabim" cel sektor (512kbitov) ali samo tisti byte?

Ce sem sam prav razumel je verjetno prva (slabsa) varianta - cel sektor?

Ce je to res, me zanima kaksne alternative priporocate ker bi rad imel zadevo, da deluje par let (10+), zapisov(prepisov) je pa lahko tudi vec tisoc / dan.

LP, Uros
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
red_mamba
Član
Član



Pridružen-a: Ned 20 Feb 2005 17:56
Prispevkov: 1486
Aktiv.: 6.27
Kraj: Yogyakarta

PrispevekObjavljeno: Sob Maj 09, 2009 5:51 pm    Naslov sporočila:   Odgovori s citatom

sd kartica po moje
_________________
Bad things happen to good people all the time for no reason!
Blog
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Sokrat
Član
Član



Pridružen-a: Čet 25 Avg 2005 11:00
Prispevkov: 5584
Aktiv.: 23.56

PrispevekObjavljeno: Sob Maj 09, 2009 6:11 pm    Naslov sporočila:   Odgovori s citatom

FRAM (idealna resitev za tvoj problem), oziroma ce zelis zelo mocno komplicirati, SRAM + baterija.

Vse drugo je nesmiselno pri 1000+ vpisih na dan, sploh ce ne izvajas cisto nobenega write-levellinga.

_________________
Ka ti bo pa torba ce si kupu kolo ?
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
urosg
Član
Član



Pridružen-a: Pet 27 Apr 2007 14:30
Prispevkov: 565
Aktiv.: 2.56

PrispevekObjavljeno: Sob Maj 09, 2009 7:33 pm    Naslov sporočila:   Odgovori s citatom

Ja razmisljal sem tudi o SRAM+baterija, vendar se s tem res ze komplicira.

Za flash me zanima predvsem ali se res cel sektor "izrablja" ali samo tisti byte.

SD kartica ni veliko boljsa od tega ce dam svoj FLASH gor, prednost je edino ce uporabim FS da meni ni treba delati kontrole kam se kaj zapise in ne rabim kontrolirati kolikokrat sem ze zapisal na eno pozicijo itd. (to sem sicer mislim delati pri FLASHu) samo ce se "izrablja" celoten sektor mi to ne pomeni veliko.

Bom pa malce pogledal se za FRAM.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Umnik
Član
Član



Pridružen-a: Čet 16 Sep 2004 17:52
Prispevkov: 958
Aktiv.: 4.04
Kraj: Novo mesto

PrispevekObjavljeno: Sob Maj 09, 2009 8:27 pm    Naslov sporočila:   Odgovori s citatom

"Kuri" se cel sektor, zato je pametno naenkrat zapisovat toliko podatkov, kolikor je velik en sektor.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Sokrat
Član
Član



Pridružen-a: Čet 25 Avg 2005 11:00
Prispevkov: 5584
Aktiv.: 23.56

PrispevekObjavljeno: Sob Maj 09, 2009 8:52 pm    Naslov sporočila:   Odgovori s citatom

urosg je napisal/a:
Bom pa malce pogledal se za FRAM.


Poglej kar na Farnell, mislim da se ga pri nas ne dobi. Ni sicer pretirano poceni, je pa cenejsi kot zamenjava baterij + SRAM + tveganje izgube podatkov zaradi izpada baterije.

_________________
Ka ti bo pa torba ce si kupu kolo ?
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
domen_puncer
Član
Član



Pridružen-a: Čet 01 Maj 2008 13:30
Prispevkov: 78
Aktiv.: 0.37
Kraj: Ljubljana, Mozirje

PrispevekObjavljeno: Sob Maj 09, 2009 9:39 pm    Naslov sporočila:   Odgovori s citatom

Zakaj pa ne takole:
Zbrišes sektor, zaporedno pišeš podatke... dokler ne prideš do konca sektorja. goto start;

S tem boš namest 100k write ciklov imel 100k*velikost_sektorja/velikost_podatka.

Torej 512kB/velikost_podatka * 100k - pri 100B podatkih je to skoraj 20 let.

Ali pa je moje razumevanje napačno, in moraš FLASH ne samo brisati po sektorjih ampak tudi pisati?

_________________
Tiskanje sudoku
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Sokrat
Član
Član



Pridružen-a: Čet 25 Avg 2005 11:00
Prispevkov: 5584
Aktiv.: 23.56

PrispevekObjavljeno: Sob Maj 09, 2009 10:13 pm    Naslov sporočila:   Odgovori s citatom

Nekam bi potem moral shranjevati kazalec na zadnji vpisan podatek (kam in kako dolgo bo prezivela ta lokacija ?) ali pa podatke sproti stevilciti (to zmanjsa kapaciteto), sicer ne bi vedel kateri vpis je zadnji, razen ce vrednost nikoli ne more biti enaka izbrisani lokaciji (kar ze spet zmanjsuje uproabno kapaciteto) ... ce ob tem seveda odmislimo dejstvo, da se flash programira v blokih in ne bajt po bajt.
_________________
Ka ti bo pa torba ce si kupu kolo ?
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
urosg
Član
Član



Pridružen-a: Pet 27 Apr 2007 14:30
Prispevkov: 565
Aktiv.: 2.56

PrispevekObjavljeno: Ned Maj 10, 2009 7:54 am    Naslov sporočila:   Odgovori s citatom

Ja ni problem pisat katera lokacija je zadnja in kolikokrat je bila ze zapisana.

S takim nacinom zapisa bi se potem "premikal" naprej po pozicijah, ko bi bil pri eni zapisan stevec 100k...

Samo to nic ne pomaga, ker se "izrablja" cel sektor, t.j. ce zapisujem npr. 5byte-ov (2byte-a za podatek ter 3 za stevec) se mi bo cel sektor (64kbytov) "izrabil" po 100k zapisih teh 5byte-ov.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
mucek4
Član
Član



Pridružen-a: Sob 18 Jun 2005 20:52
Prispevkov: 2952
Aktiv.: 12.46
Kraj: Tržič - Mesto med gorami

PrispevekObjavljeno: Ned Maj 10, 2009 8:48 am    Naslov sporočila:  Re: FLASH Memory kako se izrablja? Odgovori s citatom

urosg je napisal/a:
Za spomin sem mislil uporabiti 4Mbit FLASH spomin, ki je organiziran kot 512k x 8, kar pomeni, da ima 8 sektorjev po 512kbit-ov.


Nekaj mi ne gre 512k x 8 pomeni 5k naslovov po 8 bitov = 1 byte. Kje ti vidiš tukaj sektor?

Drugače pa če že verjameš da ima tvoj eeprom sektorje (tako kot SD kartica) Brišeš lahko samo celoten sektor. Tudi celega moraš naenkrat vpisati. Če želiš podatku, ki je že na sektorju dodati 1 byte, moraš cel sektor pobrisati in na novo vpisati vse byte.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Sokrat
Član
Član



Pridružen-a: Čet 25 Avg 2005 11:00
Prispevkov: 5584
Aktiv.: 23.56

PrispevekObjavljeno: Ned Maj 10, 2009 9:40 am    Naslov sporočila:   Odgovori s citatom

V glavnem ... FRAM.
_________________
Ka ti bo pa torba ce si kupu kolo ?
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
urosg
Član
Član



Pridružen-a: Pet 27 Apr 2007 14:30
Prispevkov: 565
Aktiv.: 2.56

PrispevekObjavljeno: Ned Maj 10, 2009 1:34 pm    Naslov sporočila:   Odgovori s citatom

mucek4: 512k x 8 = 4Mbit - kot sem napisal 512kbitov po 8 sektorjev

sokrat: ja res je najboljsa izbira v tem primeru FRAM in zaradi stevila moznih zapisov je lahko tudi toliko manjsi kot sem prej racunal s tem pa pridem skoraj na enako ceno kot prej z FLASHom
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
domen_puncer
Član
Član



Pridružen-a: Čet 01 Maj 2008 13:30
Prispevkov: 78
Aktiv.: 0.37
Kraj: Ljubljana, Mozirje

PrispevekObjavljeno: Pon Maj 11, 2009 8:03 pm    Naslov sporočila:   Odgovori s citatom

Ne vem kaj je narobe z mojim načinom oz. zakaj se vsi izogibate celo komentirat o tem.

Pri NOR flashu se briše sektor, programiraš lahko pa posamezne bajte (no... bite lahko postavljaš na 0, obratno seveda ne). Torej imas 512kB sektor 0xffffff...
in zapisuješ zaporedno podatke, dokler ne prideš do konca. Paziti je treba le, da nimaš 0xff v podatkih (lahko uporabiš npr. 0x00 0x01 kot sekvenco za 0xff, pa potem 0x00 0x00 za 0x00). Konec zapisanih podatkov je kjer je prvi 0xff.

_________________
Tiskanje sudoku
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
surla
Član
Član



Pridružen-a: Ned 14 Dec 2003 15:22
Prispevkov: 722
Aktiv.: 3.05
Kraj: Ljubljana

PrispevekObjavljeno: Pon Maj 11, 2009 8:13 pm    Naslov sporočila:   Odgovori s citatom

To sem jaz že počel z eepromi .
Drugače pa lahko pišeš do velikosti enega pagea v kontrolerjev ram in ko je podatkov za en page jih vpišeš v flash.
Če ti vmes izpade napetost si prej izdelaš detektor izpada na neglajeni strani napajanja in zahvaljujoč enemu orjaškemu elektrolitu imaš čas pospraviti vsebino rama v flash.
To sem že delal in deluje že kar nekaj let.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Elektronika Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 495 dni


Powered by phpBB © 2001, 2005 phpBB Group