Sida 1 av 2

Addressera minne - utanför ramarna

Postat: 23 september 2019, 17:50:25
av Mickecarlsson
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?
256kbit-minne.png
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).

Re: Addressera minne - utanför ramarna

Postat: 23 september 2019, 18:01:39
av sodjan
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?

Re: Addressera minne - utanför ramarna

Postat: 23 september 2019, 18:10:39
av Marta
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.

Re: Addressera minne - utanför ramarna

Postat: 23 september 2019, 19:02:07
av Swech
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

Re: Addressera minne - utanför ramarna

Postat: 23 september 2019, 19:42:35
av limpan4all
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å.

Re: Addressera minne - utanför ramarna

Postat: 23 september 2019, 20:12:54
av anders_bzn
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.

Re: Addressera minne - utanför ramarna

Postat: 23 september 2019, 20:22:05
av TomasL
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

Postat: 24 september 2019, 07:56:04
av Glenn
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.
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å :)

Re: Addressera minne - utanför ramarna

Postat: 24 september 2019, 08:07:56
av sodjan
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).

Re: Addressera minne - utanför ramarna

Postat: 24 september 2019, 08:09:37
av Wedge
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.

Re: Addressera minne - utanför ramarna

Postat: 24 september 2019, 08:22:13
av Glenn
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..

Re: Addressera minne - utanför ramarna

Postat: 24 september 2019, 09:31:29
av Wedge
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.

Re: Addressera minne - utanför ramarna

Postat: 24 september 2019, 15:44:09
av guckrum
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

Postat: 24 september 2019, 16:17:56
av Nerre
Wedge skrev: Från radadressen skapas en avkodningssignal, avkodningen väljer en rad i minnesmatrisen, och raden leds ut i "Sense Amp".
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?

Ä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

Postat: 24 september 2019, 17:14:41
av Marta
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.