mboost-dp1

Pennsylvania State University

Ny hukommelsesteknologi gemmer 0, 1 og 2

- Via Physorg - , redigeret af Emil

Nå man snakker om hukommelse til computere, så er det nærmest ensbetydende med hvor mange bytes eller bits, der kan gemmes. Forskere fra Pennsylvania-universitetet i USA har nu præsenteret en helt ny type hukommelse, der ikke kun gemmer to tilstande, 0 og 1, men tre.

Hukommelsen er baseret på nanoledninger, hvilket ikke er noget nyt, men hvor nanoledningerne tidligere gemte data binært, så er den ikke-binære lagringsmetode ny. Forskerne forventer, at det er muligt at opnå store forbedringer i datatæthed med opfindelsen.

Professor Ritesh Agarwal skrev:
The use of nanowires to create electronic memory is advantageous for several reasons, but a non-binary form of nanowire memory like we have created could allow for a huge increase in the memory density of potential future devices.

De tre tilstande, nanotråden kan gemme, opnås ved at lave tråden i to lag. Lagene kan have to tilstande, der ændrer modstanden i tråden; hver tilstand repræsenterer 0 og 1, den sidste tilstand opnås, når hvert lag er i hver sin tilstand, der giver en tredje modstand.





Gå til bund
Gravatar #1 - runeks
3. jul. 2008 12:20
Nu stopper det! Skal programmører så også til at lære 3-talssystemet nu?
Gravatar #2 - TuxDK
3. jul. 2008 12:26
Hmm, det ville jo fundenmentalt ændre hvordan vores computere virker.

Lyder ikke som en god ide i min mening.
Med mindre man kan isolere det til datalagring, og ikke program afvikling.
Gravatar #3 - shantri
3. jul. 2008 12:31
1 skrev:
Nu stopper det! Skal programmører så også til at lære 3-talssystemet nu?


Det handler om at følge med udviklingen... Og det gør dem der vil opnå noget.

Rart at se nano-teknologien blive eksperimenteret med, og (muligvis) udnyttet. Nano er vejen frem <3

Det er et af de få steder hvor man kan sige jo mindre jo bedre. Forestiller mig opfinderen komme hjem til konen og stolt sige: "Se hvor lille den er Skat" ;)
Gravatar #4 - SmackedFly
3. jul. 2008 12:38
#1

Programmørerer kommer jo ikke til at skulle røre det her. Det er internt i hardwaren det her skal bruges, og det eneste det betyder er at du vil kunne retræsentere to bits i en bit... Ehm, eller hvad man nu kalder det...
Gravatar #5 - myplacedk
3. jul. 2008 12:38
2 skrev:
Hmm, det ville jo fundenmentalt ændre hvordan vores computere virker.

Nej. Selv om der rent fysisk lagres trinært, kan interfacet sagtens være binær. Det behøver ikke at være andet end frokostpause-trivia, at man koder op mod "trinær ram".
Gravatar #6 - mathiass
3. jul. 2008 12:44
og det eneste det betyder er at du vil kunne retræsentere to bits i en bit... Ehm, eller hvad man nu kalder det...
Nej, det er vist nærmere 3 bits i 2 celler.

Det kan godt være at det bliver en del sværere at aflæse og adressere, så det er ikke sikkert at det kan betale sig. Når man skal have x mia. et eller andet til at virke sammen er det som regel en fordel at det er simpelt...
Gravatar #7 - myplacedk
3. jul. 2008 12:44
En frygtelig simpel måde at udnytte det på, er at lagre 3 bits i to trits:

00 = 000
01 = 001
02 = 010
10 = 011
11 = 100
12 = 101
20 = 110
21 = 111
22 - ubrugt

Men hvis man tænker i mere end få sekunder kan man nok finde en bedre både at "pakke" data på. Både mere effektivt og med bedre performance.
Gravatar #8 - luuuuu
3. jul. 2008 12:57
Jeg forudser stavefejl i mega-tit klassen. :P
Gravatar #9 - TullejR
3. jul. 2008 13:02
Er jeg den eneste der tænker nano-fallos når jeg ser nyheds-billedet? :(
Gravatar #10 - tr0lle
3. jul. 2008 13:08
9 skrev:
Er jeg den eneste der tænker nano-fallos når jeg ser nyheds-billedet? :(


Nej. Og den hænger endda ned af :(
Gravatar #11 - Dreadnought
3. jul. 2008 13:10
#4 Nej du kan ikke gemme to bit i en celle med denne teknologi. Det kræver fire tilstande.

Man vil kunne gemme et 16bit binært tal i et 11bit trinært tal. 32bit binært i 21bit trinært.
64bit binært i 41bit trinært.
128bit binært i 81bit trinært.
osv... Altså 50% mere.

Men tag dog lige at gå skridtet videre og lav 4 tilstande nu når I er igang.
Gravatar #12 - klol
3. jul. 2008 13:20
Talsystemer der består af 3 værdier, 0, 1, 2 eller nærmere, "trinær" talsystemer, er ikke noget nyt. Problemet er nok bare at det ville kræve enorme mængder penge at skifte standarten inden for computere. Alt hardware såvel som software skal jo tilrettes til et evt nyt talsystem.
Det ville dog give en eksponentiel forøgelse af den mængde data man kan have på en vis mængde plads da antallet af bit kombinationer ville gå fra 2^n til 3^n og det er så vidt jeg ved også muligt faktisk at lave et trinært computersystem.

8 bit i binær er 256 forskelige værdier.
8 bit i trinær er 6561 forskellige muligheder.
Gravatar #13 - fastwrite1
3. jul. 2008 13:27
Hvor ofte hører vi ikke forskerne finde nye måder at gemme data på, om nye revolutionerende opdagelser.

Og alligevel sidder vi stadigvæk med vores gamle harddiske der farer rundt som en anden bosch boremaskine.

Hvornår kommer det ud til forbrugeren? Det er jo fint nok at man på forskerniveau kan sige at man har nået en masse - men lad det dog komme ud til forbrugeren.

Men nææ nej - vi skal jo lige have solgt alle de dimser vi har på lageret, inden det nye kommer.

suk - kapitalismen styrer... Nu skal vi alle til at købe blue-ray, men lur mig om de ikke allerede nu har afløseren til Blue-ray, men de venter lige nogle år, da de skal have solgt alle deres blue-ray dimser.

suk.. men ellers er jeg i ret godt humør :-)
Gravatar #14 - Taxwars
3. jul. 2008 13:41
Trinær er jo ikke noget nyt - desuden er det jo kun et trin. Vi skal helt op til decimal - alt det andet er noget primitivt pjat fordi vi ikke er gode nok til at bygge bedre computere.
Gravatar #15 - Disky
3. jul. 2008 13:45
Rigtige mænd har da arbejdet med computere der kørte det oktale talsystem :-)
Gravatar #16 - Izaaq
3. jul. 2008 14:05
#12 Vi snakker vel om hukommelse her, og ikke om at skifte talsystemet for hele computeren.

Det er en smal sag, at lave en bit2trit- og trit2bit-konverter indbygget i RAMmoduler o.lign, således at man skriver og læser i binært format, men internt i RAMmodulet gemmes/hentes tal trinært.

I indlæg #7 beskrives en metode, der kun spilder 11% og har en dybde på måske 3 transistorer i konverteren. Der kan udtænkes dybere konvertere med mindre spild.

Eksempelvis kan 11 bits (range 0 to 2047) gemmes vha 7 trits (range 0 to 2186) med et spild på (2187-2048)/2187 - 1 = 6,4%
Gravatar #17 - lassemelbye
3. jul. 2008 14:18
Jeg har før hørt om en computer som var 3 delt. Den var al for besværlig at arbejde med.
Gravatar #18 - andes
3. jul. 2008 15:24
#17
Det virker ærlig talt også som noget pjat. Hvordan skal man arbejde med helt almindelige boolske operationer som AND og OR? Hvad giver 0 AND 2 f.eks.? Det giver ingen mening. Det virker nærmere som spild, med mindre man kan finde en bijektiv transformation mellems bits og trits.
Gravatar #19 - Izaaq
3. jul. 2008 16:40
#17 og #18 Topic er hukommelse og ikke boolske operatorer.

Trinær logik er kun smart til at lagre værdier (og evt adresser). Logiske operationer på dem er meningsløse.

Nogle regnefunktioner såsom ADD, MUL, MAC osv kan dog med fordel laves med trinær logik, hvor man gemmer mellemresultater sådan så fortolkningen af de tre tilstande er "-1, 0 og 1". Herved kan der spares nogle bit toggles og derved elektrisk energi.
Gravatar #20 - ostelarsen
3. jul. 2008 17:20
#17

Man har før prøvet at have computere som som regner med flere intervaller af strømstyrker i stedet for de to vi kender fra nutidens computere (ikke dermed sagt at det er umuligt). Problemet er dog at det har vist sig ustabilt i praksis. Naturkraften vi har kaldt 'strøm' opfører sig tilsyneladende kun relativt forudsigeligt i praksis, hvorfor der bliver nødt til at være en vis buffer, altså et område hvor man kan definere et '1' og et '0'. Hvis man skal op i fra f.eks. '0' til '7', skal man også op i en meget højere spænding for at være sikker på at kunne definere hvornår man har '5' og hvornår man har '4' som bare er "kammet lidt over", eller et '6' som ligger lidt i underkanten. Der er så igen andre problemer ved højere spænding, ja selvfølgelig miliø-mæssigt, men CPU'erne skal nok også konstrueres på en anden måde, da der bliver omsat mere energi til varme osv. osv. Med andre ord tanken med computere som regner i en højere bitværdi er bestemt ikke ny..By the way

#19:
0 AND 2 giver 0, da:

00 & 10 = 00
Gravatar #21 - ostelarsen
3. jul. 2008 17:23
Jeg kommer da lige i tanker om at std_logic (hvis nogen kender noget til VHDL) er tri-state'ed. Men som sagt der er tale om lagring i indslaget her og ikke hvordan computeren regner..
Gravatar #22 - Vibe
3. jul. 2008 18:14
Ja, min første association var også Hi_Z...
Gravatar #23 - b4@
3. jul. 2008 19:09
Er der så også en Qubit version af denne slags bit? Eller er det måske lidt tidligt at spørge :)
Gravatar #24 - Jarl-g
3. jul. 2008 20:12
Er der nogen der kan fortælle mig hvad den direkte fordel ved trinærsystemet fremfor binærsystemet er?
Gravatar #25 - myplacedk
3. jul. 2008 20:37
#24
Hvis en "trit" ikke fylder mere end en bit, så kan der være mere data på den samme plads.

Og så kan vi endelig finde en erstatning for microSD.
Gravatar #26 - lindysign
3. jul. 2008 20:47
Det kan være så simpelt som at lave en driver der sørger for at udnytte at der er tre tilstande, mere besværligt behøver det ikke være. ;)

Jeg morer mig lidt over folk der herinde lyder som 80 årige, og ikke kan leve med forandring. IT er jo ikke andet end forandring og det er livet heller ikke. Hold nu op med at pive over at tingene bliver forbedret og forandret, for så kan i ikke pive over andet. ;)
Gravatar #27 - lorric
3. jul. 2008 20:53
#26
De 80 årige herinde er jo dem, som har set "fremskridt" smadre ting, der virkede i forvejen. Selvfølgelig skal der være plads til fremskridt, men det her kommer i praksis til at betyde at memory fylder lidt mindre, hvis det overhovedet bliver sat i produktion. Svært at hidse sig op over ;-)
Gravatar #28 - engfeh
3. jul. 2008 21:20
Svarer det her ikke cirka til MLC-flash?
Gravatar #29 - Wendten
3. jul. 2008 21:33
kan det så passe at en trinær HDD med samme transitertæthed som en regulær Terabyte hdd med binære transistre, vil have:
sqrt(8*1024^4)^3 ) 26attobits eller ~3mio Terabytes :S

eller hvor går jeg galt i byen?
Gravatar #30 - engfeh
3. jul. 2008 21:39
#29

Nej - bare 1,5*8*1024^4 bits, ikke (8*1024^4)^1,5 bits sådan som jeg forstår det.
Gravatar #31 - myplacedk
4. jul. 2008 05:38
#29
En trit indeholder 50% mere data end en bit. Da der er lidt spild ved "konvertering" betyder det at i stedet for én GB vil du få knap 1,5 GB hukommelse, på samme plads med samme bit/trit-tæthed.

Men hvad større datatæthed vil opnå kan jeg ikke overskue. Hvor meget det fylder rent fysisk har jeg nu aldrig set som noget problem.
Gravatar #32 - Izaaq
4. jul. 2008 06:49
#20

"0 AND 2 giver 0, da:
00 & 10 = 00"

Jaja, det er nemt nok, når man ANDer noget med 0, men hvad med fortolkningen af 1 AND 1 så? Giver det 1, da de har ens værdi eller giver det 0?

Hvordan fortolker du bittene?
0 = falsk
1 = sand
2 = sand

eller
0 = falsk
1 = falsk (eller 'måske' / 'næsten' ?)
2 = sand

Hvis man skal regne med trinær logik, så skal resultatet jo også nogle gange være "2" ellers bliver det hele jo binært efter 1 beregning. Hvilke beregninger skal give 2? Hvornår giver en AND 2?

Det er det, jeg mener med, at boolske operationer (sandt og falsk) ikke giver mening i trinær logik.
Gravatar #33 - Izaaq
4. jul. 2008 07:06
#21 Den tredje tilstand er "no connect", så den gemmer vel ikke ret meget ;).

#24 Læs evt. #19

Jeg kan komme med et eksempel lidt til hjælp her. Hvis man tillader, at man kan gemme data som 0,1 eller 2, hvor "værdien" fortolkes 0,1 eller -1, så kan man lave nogle sindrige beregninger.

Eksempelvis:
A = 32 - 1
B = A + 3

I 2komplement ser det således ud:

0100000 + 1111111 => 0011111 (32 + -1 = 31)
0011111 + 0000011 => 0100010 (31 + 3 = 34)

Bemærk hvor mange bitskift (og ripples) der forekommer.
Hvis i stedet man tillader:
0100000 + 0000002 => 0100002 (32 + -1 = "32-1)
0100002 + 0000011 => 0100010 ("32-1" + 3 = 34)
da "2" og "1" går ud med hinanden (-1 + 1=0)

Laver man flere beregninger efter hinanden på samme data, så stiger fordelen.
Gravatar #34 - myplacedk
4. jul. 2008 07:16
Off-topic om trinær logik:

Boolsk logik arbejder med boolske værdier, dvs. bits og ikke trits. Det nytter ikke blot at udvidde en tris til en cumb (2 bits), så er det ikke længere en trit. (Eller kan det mon gøres på en måde, som giver samme resultat som nedenfor?)

Hvis det endelig skal være, vi betragte den tredje værdi som "null".

Alle kombinationerne af true og false kender vi, og hvis vi betragter den tredje som "null"/"ukendt" har vi noget at arbejde med:

true OR null = true (én af dem er sand)
true AND null = null (vi ved ikke om de begge er sande)
false OR null = null (vi ved ikke om der er en der er sand)
false AND null = false (begge kan umuligt være sande)
NOT null = null (vi ved ikke hvad det modsatte er)

Dette benyttes fx. i SQL, så vidt jeg husker præcist efter ovenstående regler.

Læs mere:
http://en.wikipedia.org/wiki/Trinary_logic
http://en.wikipedia.org/wiki/Null_(SQL)#Three-valu...
Gravatar #35 - njhvidberg
4. jul. 2008 08:57
Umiddelbart ser det ud til at der ikke er nogen hindring (ud over menneskets fatteevne) til at have n-nær logik. Hvis elektronikken var stabil (!) kunne man jo sagtens lave en hukommelses celle hvor de forskellige logiske niveauer var lig med en given spænding (eller ladning), nøjagtig som i dag hvor 0 (low) er 0 volt og 1 (high) er 2.5/3/5 volt.
Tænk på en celle med f.eks. 5 logiske niveauer, -5v, -2.5v, 0v, 2.5v eller 5v. Eller 7, 9, 13, 255, et-eller-andet-primtal, n, ...
Et interessant tal vil være 10 niveauer (10-nær?) da vi jo på vores planet har valgt 10-tals systemet som standard.

Dog er det ikke muligt i dag at lave elektronik der er stabilt nok, noget andet er, hvordan man skal regne på det.
Gravatar #36 - Izaaq
4. jul. 2008 09:07
#35 Den logik, der skal til at måle, hvilken spænding, en given node i en hukommelsesstrutur har, vil overstige det tilsvarende antal transistorer, der skal til for at lagre de samme antal bit, som niveauerne kan repræsentere. Dertil kommer, at hukommelsen vil være yderst følsom overfor støj og ikke mindst radioaktive partikler o.lign.

Ideen kunne måske være interessant i forbindelse med at lagre analoge værdier.
Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login