SE514348C2 - Minnesstruktur anpassad för lagring och hämtning av vektorer - Google Patents

Minnesstruktur anpassad för lagring och hämtning av vektorer

Info

Publication number
SE514348C2
SE514348C2 SE9502113A SE9502113A SE514348C2 SE 514348 C2 SE514348 C2 SE 514348C2 SE 9502113 A SE9502113 A SE 9502113A SE 9502113 A SE9502113 A SE 9502113A SE 514348 C2 SE514348 C2 SE 514348C2
Authority
SE
Sweden
Prior art keywords
memory
information
input
output
structure according
Prior art date
Application number
SE9502113A
Other languages
English (en)
Other versions
SE9502113D0 (sv
SE9502113L (sv
Inventor
Ingemar Soederquist
Original Assignee
Saab Dynamics Ab
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Saab Dynamics Ab filed Critical Saab Dynamics Ab
Priority to SE9502113A priority Critical patent/SE514348C2/sv
Publication of SE9502113D0 publication Critical patent/SE9502113D0/sv
Priority to PCT/SE1996/000748 priority patent/WO1996042055A1/en
Priority to ES96917795T priority patent/ES2210371T3/es
Priority to US08/973,425 priority patent/US6425064B2/en
Priority to DE69630388T priority patent/DE69630388T2/de
Priority to EP96917795A priority patent/EP0839354B1/en
Priority to AT96917795T priority patent/ATE252250T1/de
Priority to JP50237597A priority patent/JP4036270B2/ja
Publication of SE9502113L publication Critical patent/SE9502113L/sv
Publication of SE514348C2 publication Critical patent/SE514348C2/sv
Priority to JP2007204671A priority patent/JP4659792B2/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/04Addressing variable-length words or parts of words

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Image Input (AREA)
  • Complex Calculations (AREA)
  • Dram (AREA)
  • Memory System (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)

Description

lO 15 20 25 30 > -xil:s1æ 4 -ï 34-13» : Ä 2 en stor vektor, definierad utifrån startpunkt och längd.
Hos många applikationen hanteras ofta stora block av bytes sammanhängande på samma sätt, exempelvis en textmassa i en ordbehandlare. Ett annat exempel är swapminnet i datorer.
Gemensamt här är att stor informationsmängd (vektor) hanteras flíí sammanhängande. Adressering på “byte-niva utnyttjas ej.
UPPFINNINGENS SYFTE Ett syfte med uppfinningen är att åstadkomma en minnesstruk- tur, som är anpassad till lagring av vektorer.
Ett annat syfte med uppfinningen är att åstadkomma en minnes- struktur, som ger snabb och kontinuerlig åtkomst till lag- ringsplatser för inskrivning och/eller avläsning av vektorer. Ännu ett syfte med uppfinningen är att åstadkomma en struk- tur, där inskrivning av en vektor kan ske samtidigt och obe- roende av om utläsning av en vektor pågår.
Ytterligare ett syfte med uppfinningen är att åstadkomma en minnesstruktur, där inskrivning av en vektor kan ske nästan simultant med utläsning av densamma. Ännu ett syfte med uppfinningen är att åstadkomma en minnes- struktur, där tider för utmatningen av inskrivna data kan styras ända ner till klockperiod. Ännu ett syfte med uppfinningen är att åstadkomma en minnes- struktur, som kan användas som komplement till en minnes- struktur av gängse typ för en dator.
Ytterligare ett syfte med uppfinningen är att åstadkomma en minnesstruktur, som tillåter behandling av en lagrad vektor parallellt vid ett flertal lagringsställen för vektorn för att antingen omlagra den behandlade vektorn eller få ut ett behandlingsresultat. 10 15 20 25 30 35 ,*s14Åz4a,^ 3 KORT SAMMANFATTNING AV UPPFINNINGEN Ovan nämnda syften uppnås med en minnesstruktur, som erhållit de i patentkravet l angivna kännetecknen. Ytterligare särdrag och vidareutvecklingar av uppfinningen anges i de övriga patentkraven.
Enligt uppfinningen har var och en av minnets lagringsplatser efter konfigurering en längd avpassad för längden på stora vektorer och är parallellt arrangerade, utsträckta från en ingång för information och djupare in i minnet, så att varje vektor är anordnad att lagras odelad i en löpande följd med vektorns början vid minnets ingång, varvid adressering är anordnad att göras till minnets ingång. Medel verkande såsom skiftregister finns för inmatning av information i odelad följd till minnets lagringsplatser.
Minnet är företrädesvis indelat på tvären i minnesblock, så att alla lagringsplatserna har var sin del i varje minnes- block. Minnets lagringsplatser kan vara förlängbara genom tillkoppling av ett eller flera minnesblock. Varje minnes- block kan innefatta: såsom medlen verkande som skiftregister * en ingångsbuffert med seriell inmatning av data i analogi med ett shiftregister; såsom lagringsplatserna: * ett flertal dataminnesfält, i vilka information från ingångsbufferten införs sekventiellt.
En styrlogik är härvid anordnad i varje minnesblock, vilken styrlogik styr inmatning av informationen i minnesfälten via ingångsbufferten, varvid minnesblocken är kaskadkopplade med varandra genom att ingångsbuffertarna i dem är kaskadkopplade med varandra, så att information är seriellt stegmatningsbar genom flera av buffertarna i de olika minnesblocken efter varandra, och styrlogiken i varje minnesblock är anordnad att meddela styrlogiken i nästa minnesblock, när minnesfälten i dess eget minnesblock är fyllda med eller utlästa på informa- tion, så att styrlogiken i nästa minnesblock kan ta över arbetet med inläsning av information i minnesfälten i detta minnesblock. Medel verkande såsom skiftregister kan finnas 10 15 20 25 30 35 $14¿$4s 4 för utmatning av information i odelad följd från minnets lag- ringsplatser. Dessutom kan medel finnas för databehandling av inlagrat data parallellt i de olika minnesblocken.
FÖRDELAR MED UPPFINNINGEN Minnesstrukturen enligt uppfinningen möjliggör tillsättning av ett stort och expanderbart lagringsutrymme för informa- tion, kontinuerlig dataöverföring och samtidigt mycket hög överföringshastighet. Expansion av lagrings-utrymmet för en vektor, och därmed minnets storlek, kan utföras utan att överförings-hastigheten påverkas, eftersom gränssnittet mot minnet sett utifrån är oförändrat.
Med minnesstrukturen enligt uppfinningen kan en kontinuerlig dataöverföring utföras med ca. 0,5-l Gbyte/sek jämfört med dagens 30-100 Mbyte/sek. Detta innebär en faktor 10 snabbare vid utnyttjande av motsvarande grundteknologi. Minnesstruktu- ren är i sig inte teknologiberoende utan kan utnyttjas för godtycklig lagringsteknologi (RAM, magnetiska minnen, optiska minnen etc).
KORT FIGURBESKRIVNING Uppfinningen beskrivs närmare nedan under hänvisning till de bifogade ritningarna, där fig. 1 visar generellt visar principen för en minnesstruk- tur enligt uppfinningen, fig. 2 visar en första utföringsform av minnesstrukturen enligt uppfinningen, fig. 3 visar den interna strukturen hos ett minnesblock mera ingående än i fig. 2, fig. 4 visar ett flödesdiagram för den övergripande styr- logiken för minnet, fig. 5 visar ett flödesdiagram för styrlogiken inom ett minnesblock, fig. 6 visar en andra utföringsform av minnesstrukturen enligt uppfinningen, och fig. 7 visar en tredje utföringsform av minnesstrukturen enligt uppfinningen. 20 25 30 flivliaisfæa-fll:animerat-z af- 5 BESKRIVNING AV UTFÖRINGSFORMER Definitioner Lagrad information Vektor Bytegrupp Minnesstruktur Minnesblock Lagringsplats Minnesplan Avser ett antal vektorer, som var och en sett utifrån hanteras kon- tinuerligt och i odelad form.
Avser hela sammanhängande informa- tionsmängden, som ska hanteras i ett stycke. En vektor definieras utifrån mha startpunkt, eller identitet, och längd.
Del av vektor anpassad till stor- leken av ett minnesfält. Vektorn kan beskrivas som en summa av bytegrupper.
Avser hela systemet enligt figur 2. Minnesstrukturen består av ett eller flera minnesblock, omvand- larenhet 5,6 och styrlogik 4.
Avser en enhet med väldefinierad funktion, som endast kommunicerar med närmsta grannen, se figur 2.
Minnesstrukturen expanderas alltid med ett helt antal nya minnes- block.
Avser den del av minnesstrukturens totala minnesyta, som efter konfi- gurering anpassats till längden av aktuell vektor. Lagringsplatsen är distribuerad från minnesblock #1 och inåt, se figur l.
Den del av ett minnesblock, som efter konfigurering har tilldelats till en viss vektor (identitet). lO 15 20 25 30 35 .51u4 4 8 6 Minnesfält Den del av ett minnesplan, som hanteras i ett stycke. Storleks- mässigt motsvarar detta ingångs- /utgångs-buffert.
FIGURBESKRIVNING I fig.l visas ett antal minnesblock #1, #2, . . . - - --#M, vilka är kaskadkopplade med varandra. Varje minnesblock har en informationsdel lI, 2I...MI, en ingångsbuffert lIB resp. 2IB...resp. MIB, en utgàngsbuffert lUB resp. 2UB...resp. MUB och en styrlogik 1S resp. 2S...resp. MS. Varje minnesblock kan finnas på ett separat chip, och ett valbart antal chip kan kopplas ihop med varandra för att bilda ett valfritt stort minne. Det är också möjligt och lämpligt att ha flera minnesblock på ett chip, varvid flera flerblocks-chip kan kopplas ihop i kaskad. Var och en av minnets lagringsplatser har en längd avpassad för längden på stora vektorer. Blocken är parallellt arrangerade, utsträckta från en in/utgång för information och djupare in i minnet, så att varje vektor är anordnad att via ingångsbufferterna lagras odelad i en löpan- de följd med vektorns början vid minnets in/utgång, och likaså uttas i löpande följd via utgångsbufferterna, när behov av detta föreligger (se utföringsformen i fig. 7). Ad- ressering görs till minnets in/utgång.
I den i fig. 2 visade utföringsformen innefattar minnesstruk- turen ett antal kaskadkopplade enheter eller minnesblock #1 - #M, en styrlogik 4 samt i förekommande fall omvandlarenheter 5, 6. Minnesblocken illustreras här var och en innefattande block med flera bakomliggande minnesplan Ql - QN, vilka vart och ett innefattar ett flertal minnesfält Fl - FP. Det bör observeras att i fortsättningen i beskrivningen ett speciellt minnesfält i minnet har en hänvisningsbeteckning, som identi- fierar i vilket minnesblock och i vilken minnesplan, det hör till, t.ex. #m,Qi,Fj för ett minnesfält Fj i minnesplanen Qi i minnesblocket #m. Denna typ av beteckningsprincip har tillämpats genomgående.
Det är emellertid uppenbart att minnesblocken i praktiken kan 10 15 20 25 30 35 z 4 av f 7 ha en ytstruktur med planen liggande utbredda på olika stäl- len på ytan, eller som minnesfält efter varandra, så att t.ex. vid fall av chip med flera block minnesfälten i minnes- block #2/minnesplan #Ql ligger som en direkt fortsättning på minnesfälten i minnesblock #1/minnesplan #Ql etc.
Såsom framgår av fig. 3 har minnesstrukturen flera adresser- bara lagringsplatser eller minnesplan Ql..Qi...QN (i = l..N).
Värdera minnesblocket #m har ett antal minnesfält Fl till FP allokerade till varje adresserbar minnesplan Qi.
Varje minnesblock #m, är fysiskt organiserat i Wm rader (motsvarar N*P i fig. 3) och axb kolumner. Varje rad utgör ett minnesfält och innehåller ett flertal bitgrupper eller ord (a), vardera med ett lämpligt antal bitar (b). Minnes- blocket #m har sålunda storleken Wmxaxb bit. Minnesstrukturen har totalt storleken (Wl+W2+ ... +Wh4)xaxb bit. Man kan även tänka sig specialfall där a, b och W varierar mellan minnes- blocken med det tas ej upp här.
En vektor Vi med längden Liord lagras såsom Lya delvektorer i minnesfälten Ml Fl, ..., Ml FP; M2 Fl, ..., M2 FP; ...., MN Fl, ..., MN FP. Efter konfigurering gäller att Ifi= ax(On+ OQ+ ... +Om¿) ord, där Oün är innehållet i Mi Fm (i=l-N,m=l- P). Storleken av vektorn Vi är således axbx(On+OQ+ ... +Oß¿) bit. För varje minnesblock gäller dessutom alltid att antal rader motsvarar summan av antalet minnesfält. Wm= Olmf Oqm+ . . . +ONIn.
Vektorer av varierande längd kan lagras samtidigt i minnes- strukturen.
Minnesstrukturen kan konfigureras på varierande sätt. Utifrån sett adresseras vektorerna endast utifrån startpunkten (iden- titet) #l Mi Fl, där i är vilket tal som helst mellan l och N, och Fl är det första minnesfältet i minnesblocket #1 i minnesplanet Mi. Längden av vektorerna Lä definieras vid lO 15 20 25 > 8 konfigurationen. Konfigurationen kan vara statisk eller dynamisk.
Vid statisk konfiguration förbestäms samtliga Oün. Styrlogi- ken 4 har vetskap om antalet N lagringsplatser Mi samt läng- den av respektive lagringsplats L? Styrlogiken lS - MS i minnesblocken har vetskap om startpunkt #1 Qi Fl och längd Ohn för respektive minnesblock. Slutpunkt #m Qi Fj definieras indirekt av startpunkt och längd.
Vid dynamisk konfiguration ändras längden för aktuell minnes- plan eller lagringsplats Mi vid skrivning. Informationsvek- torn utifrån antas àtföljas av information om längden samt övrig global information. Denna information kan alternativt finnas i den första bytegruppen som ett huvud för vektorn Vi.
Styrlogiken kan då avläsa, utnyttja och förändra denna in- formation, allt eftersom den utbreder sig längre in i minnes- strukturen. Efter huvudet följer informationen sekventiellt.
Vid statisk konfiguration antas att informationsvektorn som läses från eller skrivs till lagringsplats Qi har en längd som motsvarar den konfigurerade. Vid statisk konfiguration kan huvud utelämnas.
Till varje minnesblock #i hör en ingàngsbuffert iIB med ett buffertlager omfattande lagringsbitantalet för varje lag- ringsminnesfält i minnesplanen, för inkommande information och en utgångsbuffert iUB med samma buffertlagerstorlek som ingångsbufferten för utmatad information. Dessutom finns en styrlogik iS för att styra inskrivning och avläsning av information i minnesplanen och därvid i vilket eller vilka minnesfält däri.
Den dataenhet, som via gränssnitt 5, 6 (se fig. 2) är kopplad till minnesstrukturen enligt uppfinningen, ger en inkommande information i porten information in och uttar en utmatad information i porten information ut i form av vektorer, t.ex. datapaket. Varje vektor kan vara försedd med ett huvud in- 10 15 20 25 30 35 ä? 4. 8 9 nehållande identitet, längd etc. Alternativt kan nödvändig information ges till gränssnittet på annat för fackmannen uppenbart sätt. En styrlogik 4 är kopplad mot gränssnittet för att styra minnet i enlighet med vad som avkännes från dessa. Styrlogiken 4 kan dessutom vara försedd med ett in- ternt minne (icke visat) för lagring av data beträffande lagrade vektorer, samt var dessa är lagrade i minnet och var nya vektorer kan lagras. Adressering till minnet sker sålunda under medverkan av styrlogiken 4. Detta framgår av fig. 4A.
Fig. 4A - 4C visar en flödesplan över en utföringsform av styrlogikens arbetssätt, dels vid aktivering (fig. 4A), dels vid inskrivning i minnet (fig. 4B) och dels vid utläsning ur minnet (fig. 4C). Flödesplanen är så tydlig i sig att en närmare beskrivning av de olika arbetsstegen inte behöver göras.
Såsom kommer att beskrivas närmare nedan är den till minnet inmatade informationen lämpligen av parallell typ, dvs i form av parallella bytes, i fortsättningen kallade parallellbytes, av lämplig längd, t.ex. 8, 16, 32 bitar. Om rent seriell information inkommer, bör en omvandling från bitform till parallellbyteform utföras i en omvandlarenhet 5. Likaså bör en omvandling från parallellbyte till bit utföras i en om- vandlarenhet 6, om så erfordras. Det bör observeras att det inte finns något som hindrar att informationen in i porten information in är i seriell bitform och informationen ut i porten information ut är i parallellbyteform eller vice versa, i vilket fall enbart en av omvandlarenheterna 5 eller 6 behövs.
Vid dynamisk konfigurering (se fig. 4B) avläses huvudet på varje informationsvektor, som skall inskrivas. Informationen i detta användes för att dels avgöra hur mycket minnesutrymme vektorn kommer att ta i anspråk och dels för att aktivera styrlogiken lS i det första minnesblocket #1 och till den ge information om hur många av de efterföljande styrlogikerna iS i de övriga minnesblocken #i, som behöver aktiveras. 10 15 20 O) O 35 ;sf4~s4st 10 Varje lagrad vektor kommer praktiskt sett att ha sin början i minnesfältet Fl i ett av planen Qi i minnesblocket #1 och sträcker sig därifrån djupare in i minnet. Man kan betrakta lagringen av en vektor som utförd som en enda sammanhängande sträng. Vektorerna kommer på detta sätt att bli parallellt arrangerade och addresseringen till dem sker till början av de olika planen i minnesblocket #1. Flera minnesfält Fl - FP används ju i varje minnesblock för lagring, så att lagringen kan tyckas “veckad", med i praktiken ligger ju hela vektorn arrangerad i hel sekvens från början till slut från minnes- block till minnesblock.
Varje styrlogik i minnesblocken har i sig ett minne med information om vilka minnesplan, och vilka minnesfält i dessa, som är lediga eller som redan är upptagna. Vid inkom- mande vektor, som skall lagras, görs först en sökning anting- en i styrlogiken 4 eller i styrlogiken lS för att hitta till- gängligt lagringsplan.
Såsom framgår av fig. 5, som visar en utföringsform av flö- desplan för varje styrlogik lS-MS i minnesblocken, börjar inskrivningen när informationen, vektorn, passerar gräns- snittet (se fig. 2). Konfigurationen behöver inte vara genom- förd för samtliga minnesblock, eftersom detta utförs succes- sivt allt eftersom informationen propagerar ner i minnet.
Antag att planet Qi, där i är ett tal mellan 1 och N, visar sig vara ledigt. Det bör observeras att en vektor alltid lagras i samma plan, t.ex. Qx, där x är ett tal mellan l och N, i alla de olika minnesblocken, dvs i planen #1 Qx; #2 Qx; #3 QX osv. Den inkommande vektorn börjar matas in i ingångs- bufferten lIB. Sá snart den är fylld med en bytegrupp sker en överföring av denna till det första lagringsminnesfältet Fl i planet #1 Qx. Ingångsbufferten fylls på i analogi med ett skiftregister men utmatningen till minnesfält kan ske anting- en seriell eller parallellt, och då företrädesvis parallellt, så att ingángsbuffertens hela minnesinnehâll töms.
Direkt sker en påfyllning i analogi med ett skiftregister varefter hela dess minnesinneháll töms till nästa minnesfält 10 15 20 25 30 Axl) 2D “fïvfšåtfll- 348 ll F2 i planet #1 Qx osv tills sista minnesfältet FP i planet #1 Qx är fyllt. Styrlogiken lS har därvid en infältspekare (icke visad), som anger det minnesfält, som är aktuellt för inskrivning.
Därefter styrs ingàngsbufferten lIB att börja fylla på in- gàngsbufferten ZIB, i analogi med ett skiftregister, seri- ellt, dvs parallellbyte efter parallellbyte, tills denna är fylld. Hela den seriella längden på det använda skiftregis- ter, som bufferten har kallas i fortsättningen för en seriell byte, eftersom den representerar det antal klocksignaler, som behövs för att fylla på bufferten, dvs den representerar den seriella längden på en parallellbytegrupp.
När ingàngsbufferten är fylld fyller på det första minnes- fältet Fl i planet #2 Qx, och de olika efterföljande minnes- fälten där fylls sedan på samma sätt som minnesfälten i minnesplanet #1 Qx, dvs styrt med infältspekaren från styr- logiken. När minnesplanet #2 Qx är fyllt fortsätter informa- tionen i minnesblockets #2 ingàngsbuffert 2IB att föras över till nästa minnesblocks ingàngsbuffert och därefter från denna till minnesfälten i nästa minnesplan #3 Qx i detta minnesblock osv. Det bör observeras att det är möjligt att ha flera ingångs- och utgàngsbuffertar, t.ex. för att betjäna flera minnesplan samtidigt, även om detta inte visas i någon av figurerna. Även styrenheten kan vara flerdubblad.
Det bör observeras att informationen kan inkomma till in- gångsbuffertarna i form av sekventiella parallellbytes, varvid varje buffert egentligen innefattar så många parallel- la skiftregister, som det finns bitar i varje byte. Uttrycket parallellbytegrupp användes för antalet bytes, som fyller en ingàngs/utgàngsbuffert. När en ingàngsbuffert töms till ett minnesfält i ett plan är det således en mycket stor datamängd som överförs. Varje minnesfält innefattar således ett utom- ordentligt stort antal parallellbytegrupper.
Data kan läsas och matas ut från ett minnesfält alldeles direkt efter det att det har skrivits in. 10 20 25 tlr s1t4ïf%a l,z-4-s 12 Som framgår flödesplanen i fig. 5 överförs vid utläsning innehållet i ett minnesfält i taget parallellt med hela parallellbytegruppen i fältet först i det gällande planet li till utgångsbufferten lUB och matas ut seriellt, dvs paral- lellbyte efter parallellbyte.
När överföring till utgångsbufferten av det näst sista min- nesfältet i planet #1 Qi har skett aktiverar styrlogiken lS styrlogiken 2s att överföra innehållet i det första minnes- fältet #2 Qi till utgångsbufferten 2UB. Direkt efter det att det sista minnesfältet FP har förts över till utgångsbuffer- ten lUB, och denna matar ut sitt innehåll av parallellbytes seriellt, matar utgàngsbufferten 2UB ut sitt innehåll paral- lellbyte efter parallellbyte seriellt till utgångsbufferten lUB, så att detta följer i direkt följd efter buffertens lUB tidigare innehåll.
Därigenom blir det inget avbrott i den utmatade informatio- nen. Informationen i minnesfälten i planet #2,Qi matas ut undan för undan till utgångsbufferten 2UB, styrt av en ut- fältspekare (icke visad) från styrlogiken ZS, och matas därifrån seriellt ut via bufferten lUB. När näst sista min- nesfältet FP i planet 2i överförts till utgångsbufferten 2UB, aktiveras styrlogiken för nästa minnesblock för att minnes- fältinformation skall överföras till det minnesblockets utgångsbuffert etc.
I den ovan beskrivna utföringsformen matar varje utgångs- buffert i de olika blocken ut sitt innehåll av en parallell- bytegrupp parallellbyte efter parallellbyte seriellt till nästa utgångsbuffert. Detta innebär att styrningen sker parallellbyte efter parallellbyte på både ingång och utgång.
Varje parallellbytegrupp kan omfatta relativt många paral- lellbytes i detta fall, vilket innebär att start av utmatning av en vektor med data kan ske med de relativt långa tids- - mellarum med ett flertal klockperioder, som ges av parallell- bytegrupp-längden.
Det finns emellertid applikationer, där man vill ha styrning 10 15 20 25 un »«» 13 av datautmatning ner till klockperioden för det system, i vilket minnet enligt uppfinningen utgör en del. Minnets huvudlogik har information om inom vilken parallellbytegrupp utmatning skall ske, och också den fasförskjutning som behövs inom tidslängden av parallellbytegruppen för att utmatningen skall ske vid exakt önskad tid.
En utföringsform av ett minne med en styrlogik för att åstad- komma detta visas i fig. 6. Det är möjligt att ha utmatning av samma minnesinnehåll till olika delar av ett system vid oberoende av varandra styrbara tidpunkter, och då är det möjligt att ha flera utgàngsbuffertar kopplade till minnes- planen. I figuren visas emellertid endast en utgångsbuffert UTBUFF. Varje utgàngsbuffert innefattar en mellanbuffert MBUFF, vars innehåll vid styrning är överförbart till ett skiftregister SK. Funktionssättet för varje utgàngsbuffert är naturligtvis likadant, varför beskrivningen beträffande UTBUFF är giltig för alla.
När den lokala styranordningen i ett minnesblock får indika- tion på att minnesinnehàllet i en minnesplan skall matas ut via en utgångsbuffert UTBUFF, matas första minnesfältet i denna minnesplan ner i mellanbufferten MBUFF medelst en styrsignal C-1 för detta. Vid den lämpliga klocksignalen för den verkliga utmatningen överförs medelst en styrsignal C-2 innehållet i mellanbufferten till skiftregistret SK för klockad utmatning direkt med styrning pà skiftregistrets klockingång CLK. Innehållet i nästa minnesfält överförs till mellanbufferten UTBUFF antingen direkt efter överföringen från mellanbufferten till skiftregistret eller, företrädes- vis, vid början av nästa hela parallellbytegruppsperiod. Det är emellertid inget som hindrar att överföringen till mellan- bufferten sker när som helst under intervallet före över- föringen till skiftregistret SK, t.ex. under klockperioden direkt före överföringen från mellanminnet till skift- registret.
När hela minnesblocket är tömt fortsätter, precis som be- skrivits ovan, data att matas in i utgångsbufferten för |_l O 15 20 25 30 c::?5fi>4:åi*;å4s 14 vidare befordran mot utgången. Detta data kommer, p.g.a. samma styrning för efterföljande block, att komma direkt som fortsatt seriell bytegruppsinmatning tidsriktigt i fortsatt följd in i skiftregistret SK på dess serieingång kopplad till efterföljande utgångsbufferts skiftregister för att matas igenom skiftregistret mot minnets utgång.
Ett exempel på en styranordning för den första utgångsbuffer- ten UTBUFF för minnesblocket för att utföra de respektive överföringarna från de respektive minnesfälten i minnesplanet till mellanbufferten MBUFF och sedan från minnesbufferten till skriftregistret SK visas nertill i fig. 6. När styrning beträffande att data skall utmatas i minnesplanen med början i en speciell tidpunkt inkommer till en logik 10, pekar denna med utfältspekaren först på det första minnesfältet i minnes- planen efter att ha passerat genom en liten grindkrets ll, som släpper igenom signaler från logiken vid uppträdande av en styrsignal CKL/b, där b är antalet parallellbyte-steg i skiftregistret SK räknat av en räknare 12. Utfältspekaren flyttas till nästa minnesfält vid nästa styrsignal CLK/b, och till nästa vid nästa styrsignal etc. Detta illustreras med ovalen 13. Dessutom illustreras fasförskjutningen gentemot fasen för utfältspekaren i den övre delen av figuren för de olika positionerna Pl - Pa, där a är ett minnesfälts posi- tionslängd, i de olika fälten Fi och F(i+1), varvid c-:L i denna utföringsform kommer vid utfältspekarens början och C-2 styrbart förskjutet till den önskade positionen, t.ex. P2.
Utsignalen från räknaren 12 tillsammans med en utsignal från logiken ll matas till en andra logik 14 beträffande fältbyte.
Logiken 14 avger då, enligt den visade utföringsformen, på sin utgång den signal C-l, som i det visade fallet styr dataöverföring från det utpekade minnesfältet till mellan- bufferten MBUFF via en liten grindkrets l5, som gör att signalen avges vid nästa klocksignal CLK. Signalen C-1 matas även till ingången på en fördröjningsenhet 16, som på en styringång har en signal 17 från logiken 10, vilken signal, lämpligen i digital form, anger den aktuella fördröjningen för datat i mellanbufferten innan överföring till skiftregi- 10 15 20 25 t flfSf' 31:13.? f I 3 15 stret SK1. Detta utförs ända tills utfältspekaren har kommit till sista fältet i den minnesplan, som skall matas ut. Då uppträder inte längre signalen till logiken 14 från logiken 10. I stället har vid näst sista utfältspekarläget logiken 10 matat en utsignal till nästa block för aktivering av styr- logiken där. Även om detta inte visas kan flera separat från logiken 10 styrbara fördröjningar vara anordnade, antingen för att eventuellt ge signalen C-1 med önskad fördröjning och/eller för att ge olika fördröjningar till olika utgàngsbuffertar e.d.
I alla de ovan beskrivna utföringsformerna av minnet har inkommande och utgående data matats in resp. ut på samma sida om minnesblocken. I fig. 7 visas en utföringsform, där man antingen fortfarande kan ha utmatning av hela lagrade vekto- rer, såsom enligt de ovan beskrivna utföringsformerna, men där man också eller alternativt har tagit tillvara möjlig- heten att utföra signalbehandling pà i olika minnesblock lagrat data samtidigt, dvs parallellt.
Signalbehandlingen kan t.ex. gälla utbyte av speciella tecken genomgående i en lagrad textsträng för senare utmatning av hela den lagrade vektorn genom de streckat ritade utgångs- buffertarna. I ett dylikt fall överförs datat efter behand- ling åter till minnesfältet i den minnesplan, från vilket det togs. Aternativt eller som komplement kan en mera sofistike- rad signalbehandling utföras. En fördel med denna utförings- form är att signalbehandlingen på en stor lagrad datamängd kan göras snabbt.
Det kan också vara möjligt att göra någon slags behandling av det lagrade datat för att undersöka en speciell egenskap och få ut ett resultat. I ett sådant fall kanske man inte alls är intresserad av att kunna mata ut en inmatad vektor, och då behövs inte de streckat ritade utgångsbuffertarna. Dessa är således inte alldeles nödvändiga i enlighet med uppfinningen. 10 20 25 16 Till varje minnesblock, t.ex. #m, är en behandlingsbuffert #mBm kopplad, till vilken styrlogiken #mL kan styra innehål- let i en minnesplan, minnesfält efter minnesfält, på samma sätt som till sin utgàngsbuffert. Innehållet i bufferten #m,Bm överförs därefter till en lokal signalbehandlingsenhet #m,LSm, i vilken den speciella signalbehandlingen utförs.
Därefter kan det behandlade datat antingen, såsom nämnts ovan och visat streckat i figuren, överföras tillbaka till minnes- fältet eller minnesfälten, från vilket det togs, eller över- föras till en för alla blocken gemensam signalbehandlingsen- het GS, som utvinner ett resultat och utmatar detta, eller både och. Det bör observeras, att denna resultatutvinning kan göras på separata minnesplan, minnesfält i minnesplan eller i hela minnesblock i beroende av vad som är lagrat i de olika minnesblocken. Eftersom det för uppfinningsiden är ointres- sant vilken typ av signalbehandling som görs ges nedan enbart ett exempel på den, nämligen för hela minnesblock eller minnesplan i minnesblock.
Det är även möjligt att göra behandlingar i alla minnesplan i samma minnesblock på det ovan angivna sättet. Ett fall, där sådant kan förekomma, är lagring av videosignaler för bild- alstring, varvid varje linje i en bild kan vara lagrad i olika minnesplan i minnesblocken. Uppfinningen gör det möj- ligt att få snabb och enkel access till och utföra bild- behandling på avsnitt i bilder där linjerna finns samlade i ett speciellt minnesblock, eller i några intilliggande min- nesblock. Detta gör det möjligt att utföra snabb bildbehand- ling på vilka typer av bilder som helst.
APPLIKATIONSFÖRDELAR Exempel på vektorer, som är speciellt lämpliga att lagra på sättet enligt uppfinningen, är textmassa från en ordbehand- lare. Den textmassan kan man definiera såsom startpunkten för en vektor samt hur lång den är. Men man behöver inte egent- ligen tala om var den finns. En fördel med att utnyttja uppfinningen för detta är att datahastigheten ökar betydligt.
Traditionellt är textmassor splittrat lagrade på olika plat- lO 15 20 25 30 r *Üšëša 17 d ser på t.ex. en hårddisk. För att komma åt lagrad informa- tion, adresserar man sig till en sektion, får informationen där, adressera något annat, får informationen där osv. Det är således då mycket addresserande och väntan på information.
Traditionellt är det ju också som så att om man hämtar in- formationen från en näraliggande position, så går det rela- tivt snabbt. Ju mer minne man har att söka igenom, desto längre tid tar det. Därigenom minskar datahastigheten ju större minne man har och ju mer splittrat informationen ligger.
Vid uppfinningen ligger startpunkten för informationen i en vektor vid minnets in/utgång och ligger såsom en sträng, dvs i de olika planen #mi,Qj, där j är vilket tal som helst mellan 1 och N, vilken sträng sträcker sig från in/utgången allt djupare in i minnet. En ny vektor kan matas in i minnet utan avbrott för att söka lämpliga positioner. Likaså kan en lagrad vektor matas ut utan avbrott, i de utföringsformer där utmatning behövs. Det betyder att man kan göra informations- mängden oändligt stor utan att på något sätt lida i access- tid. Slutpunkten för en vektor markeras för minnesfältet i det sista minnesblocket, där vektorn skrivs in och är av- läsbar för styrlogiken i det minnesblocket, som lagrar denna information i sitt interna minne. Samtidig inskrivning och utläsning av minnet kan ske. Denna styrlogik har således alltid reda på slutpunkten för både inmatning och utmatning och signalerar detta till de övriga styrlogikerna speciellt vid utmatning av slutet på vektorn genom de respektive ut- gångsbuffertarna.
Varje styrlogik iS innefattar därför en lista till varje in- formationsvektor, vilken anger vilken informationsentitet det är och start och stopp för vektordel, som kan inskrivas i dess tillhörande minnesblock och länkningar. Denna del av styrlogiken är lämpligen utförd i hårdvara, vilket är mer effektivt än i ett dynamiskt minne. En utföringsform av styrlogik för utföringsformerna i fig. l - 5 kan vara utförd som den i fig. 6 utan fördröjningen 16. Minnet skall verka lO 15 20 25 aas14ßz4e5 18 som ett vanligt minne utifrån. Den enda begränsning, som gäller för minnet enligt uppfinningen är att det är bara effektivt vid behandling av vektorer. Minnet kan ingå som en del av en dators ordinarie minne.
I det nya systemet både hittas informationen snabbt och data- överföringen går snabbt. Ett minnesblock kan vara en del av ett chip, dvs flera minnesblock finns på samma chip, eller också kan minnesblocken kan vara i separata chip. Alternativt kan varje minnesblock bildas av flera chip eller vara byggt av standardkomponenter. Alla dessa möjligheter kan finnas parallellt på marknaden, vilket innebär flexibel användning med kombination av olika enheter.
Om det för en applikation visar sig att vektorerna tenderar att bli så långa, att de måste uppdelas i flera vektorer för att kunna lagras i minnet, finns t.ex. möjlighet att koppla till ytterligare minnesblock (chip) efter det sista på ett enkelt sätt för att på så sätt förlänga lagringsutrymmet för vektorer, som kan lagras.
Ett annat användningsområde är telefontrafik, där data kan komma i seriell bitform, då finns lämpligen omvandlings- enheten 5 för informationen in till den första ingångsbuffer- ten för omvandling från bit till byte.
Ingångsbuffertarna kan även organiseras så att de är seriella skiftregister (specialfall). Man kan också ha seriella skif- tregister på ingångsbuffertarna och parallella på utgångs- buffertarna eller vice versa. Det är fråga om en implemente- ring ifall man väljer att göra en första upp-parallellning av data. Det här är mycket rimligt om man tänker på en framtida telekommunikations-applikationer_ Där har man en inkommande seriell information. Sedan utförs en första parallellomvand- ling i den externa komponenten 5 till minnet.
Varje styrlogik 4 samt mS kan vara i form av ett enkelt datachip med en fast programvara. Alternativt kan styrlogiken mS vara integrerad tillsammans med minnesplanen. Fig. 4 och 5 ß ssfæiffisrntzfviaà 19 visar ett utförande av flödesplaner för styrlogiken. Den funktion som erhålles med flödesplanerna har beskrivits ovan, varför flödesplanerna i sig inte behöver någon extra beskriv- ning utan kan förstås direkt av fackmannen.
Många modifieringar är tänkbara inom den ram av uppfinningen, som ges av de bifogade patentkraven.

Claims (14)

10 20 25 UC gj (J) (J slflßfofrsi-fs 20 Patentkrav
1. l. Minnesstruktur för lagring av minnesvektorer i minst en lagringsplats, kännetecknad av att * var och en av minnets lagringsplatser (#1 Qi-#M,Qi) har efter konfigurering en längd avpassad för läng- den pá stora vektorer och är parallellt arrangerade, utsträckta från en ingång för information och djupa- re in i minnet, så att varje vektor är anordnad att lagras odelad i en löpande följd med vektorns början vid minnets ingång (minnesfältet Fl i minnesplanet #1 Qi): * adressering är anordnad att göras till minnets in- gång; * medel (lIB-MIB) verkande såsom skiftregister finns för inmatning av information i odelad följd till minnets lagringsplatser.
2. Minnesstruktur enligt krav l, kännetecknad av att minnet är indelat på tvären i minnesblock (#1-#M), så att alla lagringsplatserna har var sin del i varje minnesblock.
3. Minnesstruktur enligt krav 2, kännetecknad av att minnets lagringsplatser är förlängbara genom tillkoppling av ett eller flera minnesblock.
4. Minnesstruktur enligt krav 2 eller 3, kännetecknad av att varje minnesblock innefattar: såsom varje medel verkande som skiftregister: * en ingångsbuffert (jIB) med seriell inmatning av data i analogi med ett shiftregister; såsom lagringsplatserna: * ett flertal dataminnesfält (Fl-FP), i vilka informa- tion fràn ingàngsbufferten införs sekventiellt eller parallellt; att en styrlogik (iS) är anordnad i varje minnesblock, vilken styrlogik styr inmatning av informationen i minnesfälten via ingàngsbufferten; varvid minnesblocken är kaskadkopplade med varandra genom att U'| 10 15 20 25 30 -s14as§s 21 ingångsbuffertarna i dem är kaskadkopplade med varandra, så att information är seriellt stegmatningsbar genom flera av buffertarna i de olika minnesblocken efter varandra; samt att styrlogiken i varje minnesblock är anordnad att meddela styrlogiken i nästa minnesblock, när minnesfälten i dess eget minnesblock är fyllda med eller utlästa på information, så att styrlogiken i nästa minnesblock kan ta över arbetet med inläsning av information i minnesfälten i detta minnesblock.
5. Minnesstruktur enligt något av föregående krav, känneteck- nad av att medel (IUB-WUB) verkande såsom skiftregister finns för ut- matning av information i odelad följd från minnets lagrings- platser. 6. Minnesstruktur enligt krav 5, kännetecknad av * en utgångsbuffert (jUB) med seriell utmatning av data i analogi med ett shiftregister; * informationen i dataminnesfälten (Fl-FP) vid utmat- ning av data överförs till utgångsbufferten sekven- tiellt; varvid styrlogiken (iS) i varje minnesblock är anordnad att styra utmatningen av informationen i minnesfälten via ut- gångsbufferten och meddela styrlogiken i nästa minnesblock, när minnesfälten i dess eget minnesblock är tömda på informa- tion, sà att detta kan ta över arbetet med utläsning av information i minnesfälten i det minnesblocket.
6. Minnesstruktur enligt något av föregående krav, känneteck- nad av att de som skiftregister verkande medlen är sådana att de hanterar seriell stegmatning av bytes.
7. Minnesstruktur enligt något av kraven 4 - 6, kännetecknad av att överföring mellan minnesfälten och buffertarna sker parallellt med hela informationsinnehållet samtidigt styrt av styrlogiken i det ifrågavarande minnesblocket, där över- föringen sker.
8. Minnesstruktur enligt något av kraven 4 - 7, kännetecknad ams-u a: 22 av att informationen vid in- och/eller utmatning är anordnad att överföras kontinuerligt genom ingångs- och/eller utgångs- buffertarna i de olika minnesblocken utan handskakningsopera- tioner mellan dessa.
9. Minnesstruktur enligt något av kraven 4 - 8, kännetecknad av att medlen (lIB-MIB, lUB-MUB) verkande som skiftregister för in- och/eller utmatning är parallellt anordnade med varandra och styrbara oberoende av varandra, vilket möjliggör samtidig in- och utmatning av information till/från minnets lagringsplatser.
10. Minnesstruktur enligt något av föregående krav, känne- tecknad av medel för fasförskjutning av utskrivningsperioden i förhållande till inskrivningsperioden med ett valfritt antal klockpulser.
11. ll. Minnesstruktur enligt krav 10, kännetecknad av att fas- förskjutningsmedlet innefattar en reglerbar fördröjningskrets med en fördröjning motsvarande den önskade fasfördröjningen.
12. Minnesstruktur enligt något av föregående krav, känne- tecknad av att den i de olika minnesblocken lagrade informa- tionen är utläsningsbar parallellt till var sin behandlings- anordning.
13. l3. Minnesstruktur enligt krav 12, kännetecknad av att den behandlade informationen är återlagringsbar i minnesblocken efter behandling.
14. Minnesstruktur enligt krav l2 eller 13, kännetecknad av att den behandlade informationen är överförbar till en resul- tatenhet, som sammanställer de behandlade informationerna från minnesblockens behandlingsanordningar till ett resultat.
SE9502113A 1995-06-09 1995-06-09 Minnesstruktur anpassad för lagring och hämtning av vektorer SE514348C2 (sv)

Priority Applications (9)

Application Number Priority Date Filing Date Title
SE9502113A SE514348C2 (sv) 1995-06-09 1995-06-09 Minnesstruktur anpassad för lagring och hämtning av vektorer
JP50237597A JP4036270B2 (ja) 1995-06-09 1996-06-05 メモリ構造
DE69630388T DE69630388T2 (de) 1995-06-09 1996-06-05 Speicherstruktur
ES96917795T ES2210371T3 (es) 1995-06-09 1996-06-05 Estructura de memoria.
US08/973,425 US6425064B2 (en) 1995-06-09 1996-06-05 Memory structure for storage of memory vectors
PCT/SE1996/000748 WO1996042055A1 (en) 1995-06-09 1996-06-05 Memory structure
EP96917795A EP0839354B1 (en) 1995-06-09 1996-06-05 Memory structure
AT96917795T ATE252250T1 (de) 1995-06-09 1996-06-05 Speicherstruktur
JP2007204671A JP4659792B2 (ja) 1995-06-09 2007-08-06 メモリ構造

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE9502113A SE514348C2 (sv) 1995-06-09 1995-06-09 Minnesstruktur anpassad för lagring och hämtning av vektorer

Publications (3)

Publication Number Publication Date
SE9502113D0 SE9502113D0 (sv) 1995-06-09
SE9502113L SE9502113L (sv) 1996-12-10
SE514348C2 true SE514348C2 (sv) 2001-02-12

Family

ID=20398571

Family Applications (1)

Application Number Title Priority Date Filing Date
SE9502113A SE514348C2 (sv) 1995-06-09 1995-06-09 Minnesstruktur anpassad för lagring och hämtning av vektorer

Country Status (8)

Country Link
US (1) US6425064B2 (sv)
EP (1) EP0839354B1 (sv)
JP (2) JP4036270B2 (sv)
AT (1) ATE252250T1 (sv)
DE (1) DE69630388T2 (sv)
ES (1) ES2210371T3 (sv)
SE (1) SE514348C2 (sv)
WO (1) WO1996042055A1 (sv)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7404032B2 (en) * 2000-01-05 2008-07-22 Rambus Inc. Configurable width buffered module having switch elements
US7017002B2 (en) * 2000-01-05 2006-03-21 Rambus, Inc. System featuring a master device, a buffer device and a plurality of integrated circuit memory devices
US7266634B2 (en) 2000-01-05 2007-09-04 Rambus Inc. Configurable width buffered module having flyby elements
US7363422B2 (en) * 2000-01-05 2008-04-22 Rambus Inc. Configurable width buffered module
US20050010737A1 (en) * 2000-01-05 2005-01-13 Fred Ware Configurable width buffered module having splitter elements
US6502161B1 (en) 2000-01-05 2002-12-31 Rambus Inc. Memory system including a point-to-point linked memory subsystem
US7356639B2 (en) * 2000-01-05 2008-04-08 Rambus Inc. Configurable width buffered module having a bypass circuit
US6718429B1 (en) * 2000-08-22 2004-04-06 Antevista Gmbh Configurable register file with multi-range shift register support
US7107399B2 (en) * 2001-05-11 2006-09-12 International Business Machines Corporation Scalable memory
US7110400B2 (en) * 2002-04-10 2006-09-19 Integrated Device Technology, Inc. Random access memory architecture and serial interface with continuous packet handling capability
US7339943B1 (en) * 2002-05-10 2008-03-04 Altera Corporation Apparatus and method for queuing flow management between input, intermediate and output queues
US6879526B2 (en) * 2002-10-31 2005-04-12 Ring Technology Enterprises Llc Methods and apparatus for improved memory access
DE102004038212A1 (de) * 2004-08-05 2006-03-16 Robert Bosch Gmbh FlexRay-Kommunikationsbaustein
DE102004038213A1 (de) * 2004-08-05 2006-03-16 Robert Bosch Gmbh Verfahren und Vorrichtung zum Zugriff auf Daten eines Botschaftsspeichers eines Kommunikationsbausteins
KR101257848B1 (ko) 2005-07-13 2013-04-24 삼성전자주식회사 복합 메모리를 구비하는 데이터 저장 시스템 및 그 동작방법
US7464225B2 (en) * 2005-09-26 2008-12-09 Rambus Inc. Memory module including a plurality of integrated circuit memory devices and a plurality of buffer devices in a matrix topology
US11328764B2 (en) 2005-09-26 2022-05-10 Rambus Inc. Memory system topologies including a memory die stack
US7562271B2 (en) 2005-09-26 2009-07-14 Rambus Inc. Memory system topologies including a buffer device and an integrated circuit memory device
KR101611464B1 (ko) * 2008-10-10 2016-04-11 스펜션 엘엘씨 데이터 패턴 분석 방법 및 분석 시스템
US8818802B2 (en) 2008-10-10 2014-08-26 Spansion Llc Real-time data pattern analysis system and method of operation thereof
JP5653856B2 (ja) 2011-07-21 2015-01-14 ルネサスエレクトロニクス株式会社 半導体装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4621339A (en) 1983-06-13 1986-11-04 Duke University SIMD machine using cube connected cycles network architecture for vector processing
US4747070A (en) * 1984-01-09 1988-05-24 Wang Laboratories, Inc. Reconfigurable memory system
JPS60262280A (ja) * 1984-06-07 1985-12-25 Toshiba Corp メモリモジユ−ル
US4858107A (en) 1985-03-11 1989-08-15 General Electric Company Computer device display system using conditionally asynchronous memory accessing by video display controller
JPS63225837A (ja) * 1987-03-13 1988-09-20 Fujitsu Ltd 距離付きベクトルアクセス方式
US5602780A (en) * 1993-10-20 1997-02-11 Texas Instruments Incorporated Serial to parallel and parallel to serial architecture for a RAM based FIFO memory
US5642444A (en) * 1994-07-28 1997-06-24 Univ North Carolina Specialized image processing system architecture and method for image data arrays
JPH08235130A (ja) * 1995-02-24 1996-09-13 Sony Corp 並列プロセッサ

Also Published As

Publication number Publication date
EP0839354A1 (en) 1998-05-06
EP0839354B1 (en) 2003-10-15
JP4036270B2 (ja) 2008-01-23
ATE252250T1 (de) 2003-11-15
SE9502113D0 (sv) 1995-06-09
WO1996042055A1 (en) 1996-12-27
JP4659792B2 (ja) 2011-03-30
JP2007335076A (ja) 2007-12-27
DE69630388D1 (de) 2003-11-20
US6425064B2 (en) 2002-07-23
SE9502113L (sv) 1996-12-10
US20010014930A1 (en) 2001-08-16
ES2210371T3 (es) 2004-07-01
JPH11507457A (ja) 1999-06-29
DE69630388T2 (de) 2004-08-19

Similar Documents

Publication Publication Date Title
SE514348C2 (sv) Minnesstruktur anpassad för lagring och hämtning av vektorer
CN101548329B (zh) 具有串行和并行模式的存储器***和方法
US5530828A (en) Semiconductor storage device including a controller for continuously writing data to and erasing data from a plurality of flash memories
KR940022272A (ko) 화일기억장치 및 그것을 사용한 정보처리장치
US4989180A (en) Dynamic memory with logic-in-refresh
US6044416A (en) Configurable first-in first-out memory interface
US4835675A (en) Memory unit for data tracing
US20070109833A1 (en) Daisy chain cascading devices
KR930014577A (ko) 반도체 기억장치
KR880009521A (ko) 디지탈 메모리 시스템
KR100285967B1 (ko) 플래쉬 메모리를 이용한 데이터 저장장치 및 방법
US6181612B1 (en) Semiconductor memory capable of burst operation
KR930014089A (ko) 데이터 전송 장치
KR850004673A (ko) 디지탈 콤퓨터 시스템
US4393443A (en) Memory mapping system
US3755788A (en) Data recirculator
US4796222A (en) Memory structure for nonsequential storage of block bytes in multi-bit chips
US4214303A (en) Word oriented high speed buffer memory system connected to a system bus
EP0589662A2 (en) Digital signal processing system
US6034965A (en) Multi-stream associative memory architecture for computer telephony
CA2000145C (en) Data transfer controller
US4992979A (en) Memory structure for nonsequential storage of block bytes in multi bit chips
US4528648A (en) Memory management system
US5274589A (en) Method and apparatus for writing and reading data to/from a memory
KR100571435B1 (ko) 메모리 디바이스 및 그 어드레스 지정 방법

Legal Events

Date Code Title Description
NUG Patent has lapsed