Ulvenstein minns gamla minnen - Från Williamsrör till GDDR3

Permalänk
Medlem

Saknar en liten passage om rör satta som flip-flop som användes som minneskretsar där hög prestanda behövdes...
(även om det blev jäkligt skrymmande om vonNeuman-datorer skulle användas)
Även om "kvicksilverfördröjnings" -minnen saknade jag lite.

Fast å andra sidan kanske jag läste slarvigt

Visa signatur

Me fail english, thats unpossible!

Permalänk
Hedersmedlem
Citat:

Ursprungligen inskrivet av tva
Saknar en liten passage om rör satta som flip-flop som användes som minneskretsar där hög prestanda behövdes...
(även om det blev jäkligt skrymmande om vonNeuman-datorer skulle användas)
Även om "kvicksilverfördröjnings" -minnen saknade jag lite.

Fast å andra sidan kanske jag läste slarvigt

Artikeln handlade främst om primärminnet i datorer, och de mer direkta föregångarna till de minnen vi använde. Det går att skriva en minst lika lång artikel till om alla andra, exotiska former av minnen som använts. Jag har dock fokuserat på de lite mer spridda och använda, för sin tid.

Bistabila vippor, flip-flop etc, används i SRAM, men jag kanske inte poängterade det så mycket. Man tillverkade dock bara större mängder relä- och rörminnen vid några enstaka tillfällen under hela datorhistorien.

Visa signatur

Religion och vidskepelse är smittsamma psykiska sjukdomar, den biologiska motsvarigheten till datorvirus.
"-Pappa, pappa, idag firade vi födelsedag och hela dagis fick gå på McDonalds. - Vems födelsedag då? - En farbror som hette Lenin."

Permalänk
Avstängd

Skitbra Ulvenstein! Alla tummar upp.

Citat:

Ursprungligen inskrivet av tva
Saknar en liten passage om rör satta som flip-flop som användes som minneskretsar där hög prestanda behövdes...
(även om det blev jäkligt skrymmande om vonNeuman-datorer skulle användas)
Även om "kvicksilverfördröjnings" -minnen saknade jag lite.

Fast å andra sidan kanske jag läste slarvigt

Ja, som sagt, "flip-flops" är ju egentligen precis det som utgör minnescellerna i statiska RAM. Man har dock mycket sällan (aldrig) använt diskreta vipp-minnen med varesig transistorer, rör eller reläer utom mycket processornära minnen, dvs register och en och annan buffert.

Även om man rent teoretiskt skulle kunna använda diskreta vippor så skulle det bli ohyggligt platskrävande och effektslukande. Just därför har snart sagt varenda fysikalisk princip används på försök för att komma ihåg bitar...

Jag saknade också stycket om fördröjningsminnet. Detta har faktiskt används som primärt minne i datorer. Fördröjningsminnet var precis som williamsminnet visseligen cykliskt, men den kan med yttre logik framstå som random-access mot datorsystemet, åtminstone om cykeltiden är kort.

Lite kort om fördröjningsminnen:
Liksom laddning, magnetism, ljus och varenda upptänkligt fenomen har varit påtänkt som minne så framstog även akustik som ett gångbart fenomen. Fördröjningsminnet är akustiskt, dvs man låter en ljud- (eller tryck-) -signal fortplantas genom ett medium. Kravet på mediet är att ljudvågen inte ska blandas alltför mycket med sig själv, och att olika frekvenser har någolunda samma utbredningshastighet (inte helt samma, men det måste gå att diskriminera tillsammans). Kvicksilver är ett lämpligt material, nickel är ett annat. En liten högtalare i ena ändan av ett kvicksilverrör och en mikrofon i den andra är själva principen. En återkoppling från mikrofonen, via förstärkare, till högtalaren ger en rundgång. Minnesstorleken ges av antalet bitar som får plats monentant i röret och mäts följdaktigen i den något udda enheten bits per meter.

Typiska kvicksilverminnen hade längder om någon meter när och lagrade väl ett tusental bitar per meter. Eftersom cykeltiden blir längre med längre minne arrangerar man ofta flera minnen parallellt och får därför även ett parallellt gränssnitt mot detta.

Kvicksilverminnet var tämligen opålitligt, platskrävande och allmänt svårt att ha att göra med och levde heller inte under någon längre tid.

Nickelminnet, som arbetar efter exakt samma princip, blev något mer framgångsrikt. Nickeltråden kunde hängas upp och lindas i en spiral för att minska volymbehovet. Faktiskt kunde dessa minnen bli rätt smidiga (jämfört med kvicksilverminnet som kunde väga tiotals eller hundratals kilo med strömförsörjning och kontrollogik) och monteras tillsammans med sin styrelektronik på ett kretskort av instickstyp. Ofta användes piezoelektriska tryck- och givare och man fick plats med i runta tal en kBit på ett kort om 10*10 cm. Beaktat dåtidens stordatorer var utrymmeskravet rätt moderat jämfört med andra enheter. Dock räckte 1000 bit ingenstans, och mänger och åter mängder av sådana kort behövdes. Inte sällan kombinerades fler minnestyper i olika hiearkier med snabba vippor som register, ferritkärnor i primärminne (eller cache) och nickelminnen i lite långsammare primärminne.

Nickelminnet upplevde en kort renässans under mitten och senare halvan av 60-talet när de första elektroniska skrivbordskalkylatorerna dök upp. Vid slutet av 60-talet hade praktiskt taget hela datorindustrin gått över till ferritkärneminnet, vars framgångar endast kan jämföras med halvledarditot. Friden 130 är ett exempel på en mycket tidig elektronisk kalkylator med nickelfördröjningsledning som minne.

Trumminnet
Det typiska för ett framgångsrikt minne är att det inte dör, utan får andra roller när andra snabbare minnestekniker dyker upp. Detta gäller fördröjningsminnet som var, jämte williamsröret, förstahandsvalet som primärminne under sent 40-tal och tidigt 50-tal. Ett annat exempel är trumminnet som tidigt var primärminne men som vi idag känner som hårddisken, det utan tvekan det mest framgångsrika minnet någonsin vad beträffar krona per bit och bit per ytenhet.

Att lagra data på magnetband (eller tråd) är ungefär lika gammalt som vaxkaka eller grammofon och var en självklar kandidat för tidiga minnen. Idag återfinns magnetbandsminnen fortfarande som backup i stordatormiljö och för långtidslagring och arkivering av data. Trumminnet är som namnet antyder, en trumma vars cylinderyta belagts med ett magnetiskt material. Fasta läsarmar, en för varje spår, läser av och skriver till minnet. Fördelen att lagra på cylinderytan snarare än på ytan av en cirkelrund platta (hårddisk) är att armarna inte behöver vara rörliga, accesstiden är enkelt beräknad och konstant för varje spår och att lagringstätheten är jämn. Rent parktiska överväganden alltså. Givetvis får man mer data på ytenhet om man lagrar data utefter plattor med en rörlig arm. Trumminnet var från början primärminnet i tidiga datorer och som sådant icke-flyktigt. Ferritkärneminnet med dess enorma fördelar som medgav godtycklig access förpassade snabbt trumminnet ner i hiearkin till sekundärminne. Då var plötsligt lagringstätheten viktigare än accesstiden och trumminet evolverade likt en fisk som blir plattfisk till hårddisk, winchesterminnet, i stället.

Hårddisken är fortfarande helt ohotad som sekundärminne och inget minne kommer i närheten av pris per bit eller bit per ytenhet.

Selectronen:
Ett intressant, tidigt försök till RAM är Selectronen, ett rörminne som medgav flera (512) bitar i ett och samma elektronrör med godtycklig access. Funktionssättet är elektrostatiskt, alltså i stil med williamsminnet men var tyvärr otillförlitligt och naturligtvis inte speciellt billigt.
http://home.att.net/~thercaselectron/index1.html

Förutom vippor och kondensatorer har andra typer av integrerade eller "nära integrerade" halvledarminnen föreslagits, testats, kommersialiserats och dött ut. Ett par gånger per decennium hör vi talas om magnetiskt RAM (enda riktigt lyckade hitintills är som sagt ferritkärneminnet), plastminnen och andra mer eller mindre exotiska modeller. Tyristorminnet var ett sådant som skulle medge en packningstäthet mitt emellan dynamiskt RAM och statiskt dito. En tyristor är i princip två bipolära transistorer (en NPN och en PNP) ordnade så att ett dopningmönster om NPNP ordnas. En styrsignal gör att komponenten börjar leda och fortsätter att leda tills spänningen mellan anod och katod underskrider ett viss nivå. För s.k. GTO-tyristorer kan den även aktivt stängas av. Förutom tyristorn behövs i allmänhet två transistorer, vilket gör att varje minnescell behöver fyra transistorer totalt (mot sex för SRAM och en för DRAM), addresseringslogiken borträknad)

Bubbelminnet är en annan exotisk variant av minne som var mycket lovande under 70-talet och faktiskt i viss mån kommersialiserades under tidigt 80-tal. Bökig och dyr tillverkning satte käppar i hjulen och prestandan var inte den utlovade. I bubbelminnet lagras informationen i magnetiska domäner på ett chip. En intressant bieffekt var att vissa rudimentära logiska operationer kunde göras direkt i minnet (såsom AND- och OR-operationer) utan att datat behöve läsas in och bearbetas av processorn.

Förutom halvledare och magnetiska skikt har egentligen bara en enda till fysikaliskt princip lyckats, nämligen optiska minnen. Laserminnet var även detta från början av trumtyp med blev snabbt till tunna skivor. Ideerna föddes under 60-talet och de första proptotyperna kom under 70-tal, främst som ett led i framtagningen av jättedatorn ILLIAC IV. Redan 1980 kunde typen kommersialiseras i form av CD-skivan som sakta men säkert under sent 80-tal även kom att användas för annan data än musik.

Det är tydligt att för att ett minne ska kunna lyckas krävs inte bara lovande storlekar eller prestanda utan att alla faktorer faller på plats. Inte bara måste minnet vara bättre idag än motsvarande, utan själva utvecklingspotentialen måste vara minst lika bra. Det är därför som holografiska, ferro-RAM, supraledande, tunnfilms, akustiska, elektrostatiska, nanomekaniska, optiska eller vilken fysikalisk princip som helst, minnen, ofta har misslyckats. Ingenting sagt om vad som händer framöver. Ja, jag har t.o.m. hört om försök att lagra data i choklad! För att inte tala om alla typer av DNA- eller cellminnen av biologisk karraktär. Allt är värt att prova, men få tekniker kommer att bestå.

Ferro-ROM, en av mina favoriter:
Det finns en minnestyp som vid en ytlig betraktelse tycks strida mot sunda förnuftet. Om man vill lagra säg 100 bitar och man vill ha en ordlängd om 10 bitar så faller det sig naturligt att använda en matris av 10*10 av något. Kort sagt behöver vi en enhet för varje bit. Ett väldesignat ROM för smärre lagringsbehov behöver emelletid bara en enhet för varje bit i själva ordlängden. Vill vi ha 16-bitarsord behöver vi sexton kärnor. Oaktat om vi vill lagra ett eller hundra ord. Eller tusen. Nackdelen med konventionella kärnminnen är att läsningen är destruktiv (precis som är vanligt för DRAM) och varje bit som läses (oftast en helt rad i taget, dock) måste skrivas tillbaka. Det är emellertid möjligt att konstruera ett ferromagnetiskt minne så att bitarna inte lagras i själva kärnan som en viss magnetisering utan minnet finns i själva tråden som är lindad genom kärnorna. Minnet finns där liksom mekaniskt, och uppstår som induktion då en adressledning aktiveras. I ett magnetiskt ROM finns lika många kärnor som ordlängen, men det finns däremot en radtråd för varje enskillt ord (därmed strider inte minnet längre mot förnutet, eller för den delen någon lag). Radtråden är helt sonika lindad runt de kärnor som representera de bitar som ska ettställas (eller tvärt om - beroende på kodningsdefinition) och går bara förbi de kärnor som inte ska aktiveras. Således finns naturligtvis lika många "enheter" som minnesceller, men i stället för att ha lika många kärnor som celler och endast ledningar för varje rad och kolumn är det (nästan) tvärt om; man har lika många kärnor som kolumner och lika många trådar som rader. Följden är att kärnorna är hyffsat stora, ibland någon centimeter i diameter, medans det konventionella kärnminnet, när det stod på höjden av utveckling under sent 70-tal, krävde åtminstone ett förstoringsglas för att urskilja det enskilda kärnorna.

Denna teknik har använts som mikroprogramminne i processorer och HP använde ett dylikt med 29 kärnor i deras legendariska skrivbordskalkylatorer/datorer från tidigt 70-tal ut 9100-serien.

Ett mellanting mellan hårddisk och magnetband finns (fanns) också, nämligen revolverminnet. Flera små, korta, magnetband organisteras i en revolver med logik och mekanik för att snabbt växla mellan olika bandsnuttar. Detta ger en dramatiskt uppsnabbad access jämte vanliga magnetband och en packningstäthet som är högre än för en hårddisk.

Sägas ska det också att bandminnen i allmänhet för "seriösa" datorer faktiskt har bättre accesstid än vad kasettband till t.ex. C64 hade. När ett band skulle spolas så började stora evakueringsaggregat att "suga" i banden så att de rullades upp så att den mekaniska spänningen inte blev stor på själva bandet när bandrullarna accelererades till enorma hastigheter - ibland flera hundra km/h. Accesstiden kunde vara i sekunder snarare än halvtimmar för ett långt kasettband. En sekund är givetvis en evighet i datorsammanhang, men beaktat vilken typ av data som ska accessas är det acceptabelt. Databasposter som ska läsas av en operatör, t.ex. Då är det operatören snarare än processorn som behöver "födas".

Slutligen, en annan exotiskt minnesform jag bara ytligt har hört talas om är försök med hålkort i ett "självvulkaniserande" material där hålen växer igen efter en viss tid och på så sätt kan användas på nytt, som "DRAM-hålkort". Antingen i form av hålkort med en avläsningsmeknism för varje enkild bit, vilket medger 'random access' eller i en roterande hålremseslinga vilket blir ett cykliskt minne. Hålen i dessa fall är närmast mikroskopiska och avläses optiskt (vilket gäller nästan alla hålkort - skillnaden är väl att denna egendomliga minnestyp skulle använda laserljus). Edit: Observera att detta inte är helt olikt hur en laserskrivare preparerar sin trumma (och/eller pappret) med elektrostatiska laddningar.

Edit2: Ibland har tidiga minnesorganisationer överlevt med modernare teknik. Det är faktiskt inte helt självklart att halvledarminne ska organiseras för random access. Det har funnits datorer med integrerade kretsar som använt skiftregister som primärminne, vilket då bildar ett cykliskt minne. Förslagsvis för små datorer (tidiga "inbäddade system") där prestanda i sig inte är målet och utrymmeskraven är viktiga. Det var i skiftet mellan 60- och 70-talen lättare att bygga stora (nåja) skiftregister än RAM av motsvarande storlek. Detta främst eftersom skiftregistret inte behöver adresseras (åtminstone inte på samma sätt).

Visa signatur

http://www.theatlantic.com/national/archive/2012/05/how-the-p...
"If there's a simple lesson in all of this, it's that hoaxes tend to thrive in communities which exhibit high levels of trust. But on the Internet, where identities are malleable and uncertain, we all might be well advised to err on the side of skepticism."

Permalänk
Medlem

Mycket trevlig läsning såhär om onsdagskvällen!

Permalänk
Medlem

Jag kommer bara åt sida 1 av 5 hur jag än gör! Vad gör jag för fel?

Edit: Nu fungerar det!?

Bra artikel.....tack.