Addressera minne - utanför ramarna
- Mickecarlsson
- EF Sponsor
- Inlägg: 4745
- Blev medlem: 15 april 2017, 18:06:15
- Ort: Malmö
- Kontakt:
Addressera minne - utanför ramarna
Jag har ett kretskort som kräver en viss typ av 256 kbit sram. Jag har inte detta minne, men har ett antal av annat fabrikat.
Nu till dilemmat, adresspinnarna skiljer sig åt, men inte resten. Men, då minnet egentligen struntar i hur dessa adresseras borde det funka? Minnet till vänster är vad som förväntas, det till höger har jag.
Så om jag adresserar 000F, dvs A0 - A3 = 1, då blir det andra minnets adress egentligen A10 A11 A9 A8
Jag kan tyvärr inte sätta en sockel, där finns ingen plats, jag måste löda in kretsen, och innan jag gör det slänger jag ut frågan här.
Är detta OK? (Jag är ganska säker på att det är OK).
Nu till dilemmat, adresspinnarna skiljer sig åt, men inte resten. Men, då minnet egentligen struntar i hur dessa adresseras borde det funka? Minnet till vänster är vad som förväntas, det till höger har jag.
Så om jag adresserar 000F, dvs A0 - A3 = 1, då blir det andra minnets adress egentligen A10 A11 A9 A8
Jag kan tyvärr inte sätta en sockel, där finns ingen plats, jag måste löda in kretsen, och innan jag gör det slänger jag ut frågan här.
Är detta OK? (Jag är ganska säker på att det är OK).
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Re: Addressera minne - utanför ramarna
Nej, det borde inte ha någon betydelse. Det ska inte spela
någon roll *var* i minnet man anser att adress nnn ligger.
Bara det är samma plats vid skrivning som vid läsning.
Inte ens något slags lågprofil sockel får plats?
någon roll *var* i minnet man anser att adress nnn ligger.
Bara det är samma plats vid skrivning som vid läsning.
Inte ens något slags lågprofil sockel får plats?
Re: Addressera minne - utanför ramarna
Eftersom det är SRAM finns inga refreshproblem så det bör vara utan betydelse. Förutsatt att /CE, /WE, och /OE fungerar på samma sätt och timingkraven uppfylls så bör det fungera.
- Swech
- EF Sponsor
- Inlägg: 4736
- Blev medlem: 6 november 2006, 21:43:35
- Ort: Munkedal, Sverige (Sweden)
- Kontakt:
Re: Addressera minne - utanför ramarna
Det går utmärkt att strunta i defaultnamnen och blanda.
Det enda är om man felsöker så kan man bli lite konfunderad.
Swech
Det enda är om man felsöker så kan man bli lite konfunderad.
Swech
-
- Inlägg: 8422
- Blev medlem: 15 april 2006, 18:57:29
- Ort: Typ Nyköping
Re: Addressera minne - utanför ramarna
SRAM struntar fullständigt i vart något ligger eller ordningen på databitarna. Så länge funktionen på styrpinnarna ärr lika (iallafall någorlunda) så kommer det funka perfekt.
Jag har i några konstruktioner totalt sorterat om adress och datapinnar för att få till en renare layout som tog mindre plats.
Så det är bara att köra på.
Jag har i några konstruktioner totalt sorterat om adress och datapinnar för att få till en renare layout som tog mindre plats.
Så det är bara att köra på.
- anders_bzn
- Inlägg: 5721
- Blev medlem: 17 december 2008, 19:22:18
- Ort: Kävlinge
- Kontakt:
Re: Addressera minne - utanför ramarna
Jag har sett konstruktioner där man skyfflat rund databitarna i ERPOM för att göra det svårt att kopiera/disassemblera. SMARTAID till ABC80 är en sådan konstruktion, där man dessutom slipat bort betäckningen på alla chippen. Ett otyg enligt mig. Nu är ROM:en dumpade och innehållet deschiffrerat...
Förlåt för halvt OT.
Förlåt för halvt OT.
Re: Addressera minne - utanför ramarna
Tetronix gjorde så med patchminnen, en PLA, och ett extra eprom, där PLAt patchade in alternativa minnesareor från patch-ROM, istället för original-ROM.
Re: Addressera minne - utanför ramarna
Förvånar mej att ingen skrivit det innan, men även datapinnarna (I/O) skiljer sej ju, inte för det borde spela nån roll men ändåMickecarlsson skrev:Jag har ett kretskort som kräver en viss typ av 256 kbit sram. Jag har inte detta minne, men har ett antal av annat fabrikat.
Nu till dilemmat, adresspinnarna skiljer sig åt, men inte resten.

Re: Addressera minne - utanför ramarna
Jo, det såg jag, men eftersom det enda som skiljer är hur
de har namngett pinnarna (I/O 0-7 eller I/O 1-8) så
tyckte jag inte att det var något att "skriva hem" om...
Skillnaden på A-pinnarna är lite annorlunda (även om det
som sagt inte spelar någon roll det heller).
de har namngett pinnarna (I/O 0-7 eller I/O 1-8) så
tyckte jag inte att det var något att "skriva hem" om...
Skillnaden på A-pinnarna är lite annorlunda (även om det
som sagt inte spelar någon roll det heller).
Re: Addressera minne - utanför ramarna
Vad man döpt IO-pinnarna till lär inte inverka nämnvärt på funktionen. 0..7 eller 1..8 spelar ingen roll, tror jag 
Minnet är internt adresserat i form av rader och kolumner, och håller man rad stilla och enbart ändrar kolumn (eller om det nu var tvärtom) kan man få dramatiskt bättre accesstid än den "påstämplade".
Men ganska ovanligt att man designar så speciellt. Jag håller med de övriga, som menar att det inte spelar roll.

Minnet är internt adresserat i form av rader och kolumner, och håller man rad stilla och enbart ändrar kolumn (eller om det nu var tvärtom) kan man få dramatiskt bättre accesstid än den "påstämplade".
Men ganska ovanligt att man designar så speciellt. Jag håller med de övriga, som menar att det inte spelar roll.
Re: Addressera minne - utanför ramarna
Blir det så även på SRAM ?
I Amiga 3000 så kunde man köpa speciellt SC-DRAM, alltså "Static Collumn" och sen körde man burstmode på det och fick ut mer prestanda..
I Amiga 3000 så kunde man köpa speciellt SC-DRAM, alltså "Static Collumn" och sen körde man burstmode på det och fick ut mer prestanda..
Re: Addressera minne - utanför ramarna
Japp, SRAM har "olika accesstider" för rad- respektive kolumnadresser.
http://pdf.datasheet.live/18f0a9e8/tosh ... FL-70L.pdf
Bild från TC55257, men uppbyggnaden är rätt typisk för SRAM.
Från radadressen skapas en avkodningssignal, avkodningen väljer en rad i minnesmatrisen, och raden leds ut i "Sense Amp".
Tre steg där varje steg är beroende av att steget innan stabiliserats.
Från sense amp görs ytterligare en avkodning, med kolumnadressen. När data väl ligger stabila i Sense Amp går det raskt att multiplexa ut denna delmängd av den stora minnesmatrisen. Man behöver bara invänta stabiliseringstiden för sträckan mellan Sense Amp och utgång.
Men jag tror inte något datablad tar upp denna skillnad, man anger hela accesstiden, från godtycklig adress till data på utgång.
http://pdf.datasheet.live/18f0a9e8/tosh ... FL-70L.pdf
Bild från TC55257, men uppbyggnaden är rätt typisk för SRAM.
Från radadressen skapas en avkodningssignal, avkodningen väljer en rad i minnesmatrisen, och raden leds ut i "Sense Amp".
Tre steg där varje steg är beroende av att steget innan stabiliserats.
Från sense amp görs ytterligare en avkodning, med kolumnadressen. När data väl ligger stabila i Sense Amp går det raskt att multiplexa ut denna delmängd av den stora minnesmatrisen. Man behöver bara invänta stabiliseringstiden för sträckan mellan Sense Amp och utgång.
Men jag tror inte något datablad tar upp denna skillnad, man anger hela accesstiden, från godtycklig adress till data på utgång.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Re: Addressera minne - utanför ramarna
I ett synkront system är det bara den maximala accesstiden som är intressant. "Alla" minnen oavsett typ är i praktiken balanserade med avseende på rad/kolumn/aspekt för optimal prestanda, det blir tokigt annars.
Re: Addressera minne - utanför ramarna
Men i SRAM är väl varje bit en vippa? Varför behövs det en sense amp för att läsa av en vippa?Wedge skrev: Från radadressen skapas en avkodningssignal, avkodningen väljer en rad i minnesmatrisen, och raden leds ut i "Sense Amp".
Är inte det där ett så kallat Pseudo SRAM, d.v.s. DRAM med inbyggd self-refresh så det utifrån ser ut som SRAM?
Re: Addressera minne - utanför ramarna
Jovisst, men vipporna är så ynkligt klena att de behöver läsas av varsamt. Därför behövs ungefär samma avläsningsförfarande som för ett dram.