SE512773C2 - Metod och anordning för kontroll/access av DRAM-minnen - Google Patents
Metod och anordning för kontroll/access av DRAM-minnenInfo
- Publication number
- SE512773C2 SE512773C2 SE9803708A SE9803708A SE512773C2 SE 512773 C2 SE512773 C2 SE 512773C2 SE 9803708 A SE9803708 A SE 9803708A SE 9803708 A SE9803708 A SE 9803708A SE 512773 C2 SE512773 C2 SE 512773C2
- Authority
- SE
- Sweden
- Prior art keywords
- dram
- memory
- control
- access
- microcode
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0215—Addressing or allocation; Relocation with look ahead addressing means
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dram (AREA)
- Microcomputers (AREA)
- Executing Machine-Instructions (AREA)
Description
15 20 25 30 512 773 2 angivna kolumnen i den spänningssatta raden. I allmänhet multiplexeras DRAM-adressen in i DRAM-minnet så att samma anslutningar används, vid olika tidpunkter, för radadressen och kolumnadressen.
Access till DRAM-minnet styrs normalt av en DRAM-styrenhet som genererar nödvändiga styr- och adress-signaler till DRAM-minnet och bestämmer sekvensen och den relativa tidsinställningen för dessa signaler.
I allmänhet är processorkärnor utformade för att passa enkla minnen såsom statiska direktminnen (SRAMs) som ibland används som cache-minnen.
Traditionellt sett är gränssnittet processor-minne utformat på ett sådant sätt att processorn för varje minnesaccess måste avgöra huruvida en läsning eller skrivning ska utföras, och även bestämma en fullständig minnesadress som ska användas innan läs- eller skrivaccessen till minnet initieras. För ett DRAM-minne, som är ett ganska komplext minne med en multiplexerad, adresseringsprocedur, innebär detta i allmänhet att DRAM-minnet kommer att bli relativt långsamt med långa accesstider. I detta avseende betraktas DRAM- minnen ofta som llaskhalsarna i digitala behandlingssystem.
Ett vanligt sätt att minska detta problem är att använda ett litet men snabbt cache-minne som en buffert mellan processorn och det större och långsammare DRAM-minnet. Cache-minnet innehåller kopior av små delar av data- och/eller programinformation lagrad i DRAM-minnet. När processorn måste läsa en minnescell som inte finns tillgänglig i cache-minnet så kommer den cellen att kopieras tillsammans med ett antal angränsande celler från DRAM-minnet till cache-minnet. För efterföljande accesser till dessa celler så kommunicerar processorn med det snabba cache-minnet istället för DRAM- minnet. lO 15 20 25 30 512 773 3 RELATERAD TEKNIK Försök har gjorts inom den kända tekniken för att reducera accesstiderna för DRAM-minnen: WO 96/37830 mikroprocessor med en accessförfrågan i pipeline till ett externt DRAM-minne. aVSCI' en internationella Den patentansökningen Minnesförfrågningar till det externa DRAM-minnet sker i pipeline genom beräkning av en minnesadress under samma klockcykel som den instruktion som är förknippad med adressen låses av ett exekveringssteg, generering av en tidig redo-signal och sändande av den information som mottas från det externa DRAM-minnet till en registerfil under samma klockcykel som informationen mottas.
Den internationella patentansökningen WO 96/ 29652 avser en regelbaserad DRAM-styrenhet. En DRAM-styrenhet skickar minnesaccess- och styrsignaler baserat på fördefinierade styrregler. Vissa regler används för att bestämma tidsinställningen och sekvensen av de minnesaccess- och styrsignaler som utmatas av DRAM-styrenheten. Styrreglerna implementeras som logik i styrenheten, olika övervakningssignaler och tidsmoduler. Baserat på dessa regler och villkor medan villkoren för reglerna tillhandahålls från tolkas förfrågningsinmatningarna till styrenheten för att tillhandahålla optimal accesshastighet till DRAM-minnet.
Den internationella patentansökningen WO 96/30838 avser en DRAM- styrenhet. DRAM-styrenheten är utformad för att reducera accesstiderna för läs- och skrivcykelaccesser i ett minnessystem med accesser i "page mode", genom ändring av behandlingsordningen på förfràgningarna om läs- och skrivcykelaccesser. l lllllul 10 15 20 25 30 512 773 4 SAMMANFATTNING AV UPPFINNINGEN Det är ett allmänt syfte med uppfinningen att reducera den tid som erfordras' för access till ett DRAM-minne.
Det är ett syfte med uppfinningen att tillhandahålla ett förfarande för styrning av access till ett DRAM så att accesstider jämförbara med de för SRAM-minnen erhålls. Ännu ett annat syfte med uppfinningen är att tillhandahålla en DRAM- styrenhet, företrädesvis införlivad i ett mikroprocessorbaserat datorsystem, som tillhandahåller snabb access till ett DRAM-minne.
Dessa och andra syften uppnås genom uppfinningen såsom den definieras av de medföljande patentkraven.
I enlighet med uppfinningen är access-styrningen för DÉAM-minnet intimt förknippad med processorns mikrokodsinstruktioner. Gränssnittet mellan processorn och DRAM-styrenheten är anpassat på ett sådant sätt att minnesaccess-styrningen är integrerad i processorns mikrokodsprogram. Varje mikrokodsinstruktion i processorn innefattar en styrinstruktion som används vid styrning av DRAM-styrenhetens funktion. Mer bestämt styr DRAM- styrenheten access till DRAM-minnet genom att den för varje DRAM-access utför en sekvens av DRAM-styroperationer i gensvar på en motsvarande mikrokods- innefattade i styrínstruktioner processorns sekvens av instruktioner.
Det är viktigt att förstå att den styrinstruktion som finns innefattad i varje mikrokodsinstruktion endast utgör en del av mikrokodsinstruktionen, och att denåterstående delen av mikrokodsinstruktionen används av processorn för styrning av andra operationer såsom bestämning av adressinformation för DRAM-minnet och behandling av data till/ från DRAM-minnet. 10 15 20 25 30 512 773 5 Eftersom varje DRAM-access baseras på en sekvens av DRAM-styroperationer, styrinstruktion i en mikrokodsinstruktion, så kan en DRAM-access initieras genom att man utför vilka var och en styrs av en respektive den första DRAM-styroperationen i sekvensen, utan att man har all information som erfordras för efterföljande DRAM-siyroperationer i sekvensen.
Den information som erfordras för en efterföljande DRAM-styroperation bestäms företrädesvis av den aktuella rnikrokodsinstruktionen parallellt med exekveringen av den första DRAM-styroperationen.
Till exempel kan mikrokodsprogrammet initiera en DRAM-access innan det har bestämts huruvida en läs- eller skrivaccess ska utföras, och radadressen kan anbringas till DRAM-minnet innan kolumnadressen har bestämts. Detta reducerar accesstiden för en DRAM-access betydligt.
Varje styrinstruktion bestämmer vilken av ett antal på förhand definierade DRAM-styroperationer som DRAM-styrenheten exekverar. Under kontroll av styrinstruktionerna i processorns mikrokodsprogram kan dessa DRAM- styroperatíoner ordnas i sekvens för att ge nästan vilken typ av DRAM-access som helst, såsom en läsaccess, en skrivaccess, en läsaccess i "page mode", en skrivaccess i "page mode", en läs-och-skrivaccess i "page mode" och en skriv- och-läsaccess i "page mode".
Detta innebär att mikrokodsprogramrnet självt fritt kan använda "page mode" närhelst detta är lämpligt, varvid värdefull tid således sparas. I "page mode" föreligger i allmänhet inget behov av ett cache-minne eftersom den aktiverade raden kommer att fungera som "cache-minne".
Andra fördelar som erbjuds genom uppfinningen kommer att förstås vid läsning av den följande beskrivningen av uppñnningens utföringsformer. 10 l5 20 25 30 512 773 6 KORTFATTAD BESKRIVNING AV RITNINGARNA Uppfinningen, tillsammans med ytterligare syften och fördelar med denna, kommer att förstås bäst genom hänvisning till den följande beskrivningen när denna läses tillsammans med de medföljande ritningarna, i vilka: Fig. 1 är ett schematiskt blockdiagram över ett datorsystem enligt en föredragen utföringsform av uppfinningen; Fig. 2 är ett schematiskt blockdiagram över ett adressregister och en adressmultiplexor som används av uppfinningen; F ig. 3 är ett schematiskt diagram som illustrerar en praktisk implementering av gränssnittet mellan en aritmetisk enhet, och ett adressregister och ett data-till-minnet-register enligt en alternativ utföringsform av uppfinningen; Fig. 4 är ett schematiskt tidsdiagram över ett antal DRAM-styroperationer enligt en föredragen utföringsform av uppfinningen; Fig. 5 är ett schematiskt tillståndsdiagram som illustrerar hur DRAM- styroperationerna kan ordnas till DRAM-accesser enligt en föredragen utföringsform av uppfinningen; Fig. 6 är ett schematiskt diagram över DRAM-styrlogiken i en DRAM-styrenhet enligt en föredragen utföringsform av uppfinningen; och Fig. 7A-7E är schematíska tidsdiagram för olika DRAM-accesser enligt en föredragen utföringsform av uppfinningen. 10 15 20 30 512 773 7 DETALJERAD BESKRIVNING AV UTFÖRINGSFORMER AV UPPFINNINGEN Samma hänvisningsbeteckningar kommer genomgående i ritningarna att användas för motsvarande eller liknande element.
Fig. 1 är ett schematiskt blockdiagram över ett datorsystem enligt en föredragen utföringsform av uppfinningen. Datorsystemet innefattar i huvudsak en centralenhet (CPU) 10, ett dynamiskt direktminne (DRAM) 60 och en databuss 70. innefattar en CPUzn 10, som också hänvisas till processorstyrenhet 20, lokaka lagringsenheter 30, en aritmetisk enhet 40 och SOITI pfOCCSSOITl, en DRAM-styrenhet 50. CPU:n 10 styrs av mikrokodsinstruktioner lagrade i ett mikrokodsprogram 22. Mikrokodsprogrammet 22 samverkar med en enhet 24 för sekvensstyrning som bestämmer adressen till nästa mikrokodsinstruktion i rnikrokodsprograrnmet. Den aritmetiska enheten 40 tillhandahålls för att utföra aritmetiska/ logiska operationer på data från DRAM-minnet 60, och den kommunicerar direkt (via databussen) 70 med DRAM-minnet. Ett cache- minne erfordras inte.
DRAM-styrenheten 50 är kopplad mellan DRAM-minnet 60 och CPU:ns 10 styrenhet 20, och styr flödet av data in och ut relativt DRAM-minnet. DRAM- styrenheten 50 genererar adress-signaler RAD/ KOL och olika styrsignaler WEn, CASn, RASn, OEn (suffixet n anger att signalerna är aktiva låga) i en på förhand bestämd sekvens under kontroll av styrenheten 20, och anbringar dessa signaler till DRAM-minnet 60, varigenom DRAM-minnet styrs. DRAM- styrenheten 50 innefattar styrlogik 52, ett adressregister 54 för lagring av adressinformation som mottagits från mikrokodsprogrammet 22 via databussen 70 och en adressmultiplexor 56 som styrs av två komplementära signaler COL och COLn för anbringande av radadressen eller kolumnadressen till DRAM-minnet 60. 10 15 20 25 30 512 775 s En allmän idé enligt uppfinningen är att integrera styrningen av DRAM- accesser i mikrokodsprograrnmets 22 mikrokodsinstruktioner. Varje mikrokodsinstruktion innefattar en styrinstruktion som används vid styrning av DRAM-styrenhetens 50 funktion. Vidare delas, för varje DRAM-access, DRAM-styrenhetens 50 funktion upp i en sekvens av ett på förhand bestämt antal DRAM-styroperationer. DRAM-styrenheten 50 styr access till DRAM- minnet genom att den för varje access utför en sekvens av DRAM-l styroperationer i gensvar pä en motsvarande sekvens av styrinstruktioner innefattade i mikrokodsprogrammets 22 mikrokodsinstruktioner.
Varje styrinstruktion i sekvensen av styrinstruktioner från mikrokodsprogrammet 22 till DRAM-styrenheten 50 bestämmer vilken av ett antal fördefinierade DRAM-styroperationer som DRAM-styrenheten 50 utför.
Genom matning av lämpliga styrinstruktíoner från mikrokodsprogrammet 22 kan sekvensen av DRAM-styroperationer anpassas för att ge olika typer av DRAM-accesser såsom läsaccesser, skrivaccesser, läsaccesser i "page mode", skrivaccesser i "page mode", läs-och-skrivaccesser i "page mode" och skriv- och-läsaccesser i "page mode".
Det är viktigt att förstå att varje styrinstruktion bildas av en på förhand bestämd del av en mikrokodsinstruktion. Den återståenden delen av mikrokodsinstruktionen används för andra ändamål såsom bestämning av adressinformation för DRAM-minnet eller exekvering av högnivåinstruktioner hämtade från DRAM-minnet.
För fullständighets skull visas adressregistret 54 och adressmultiplexorn 56 i mer detalj i Fig. 2. Adressregistret 54 innehåller tre adressdelar, ADL (Address Low), ADH (Address High) och ADP (Address Page). Radadressen till DRAM-minnet lagras i ADP och ADH i bitar 10-18, och kolumnadressen till DRAM-minnet lagras i ADH och ADL i bitar 1-9. Adressmultiplexorn 56 innefattar två OCH-grindar följt av en ELLER-grind. Den första OCH-grinden tar emot kolumnadressen från ADH och ADL och signalen COL. Den andra 10 15 20 25 30 512 773 9 OCH-grinden tar emot radadressen från ADP och ADH, och signalen COLn.
Om COLn är inaktiv, d.v.s. hög, så utmatas radadressen av ELLER-grinden.
Om COLn är aktiv, d.v.s. låg, så utmatas emellertid kolumnadressen av ELLER-grinden.
Fig. 3 är ett schematiskt diagram som illustrerar en praktisk implementering av gränssnittet mellan den aritmetiska enheten 40 och adressregistret 54 och ett data-till-minnet-register 84, enligt en alternativ utföringsform av uppfinningen. Data från ett antal datakällor, av vilka DRAM-minnet är en, tas emot av en datakällselektor 72, vars utgång bildar ett bussgränssnitt DBUS till den aritmetiska enheten 40, adressregistret 54 och ett data-ti1l- minnet-register (DTM) 84. Den aritmetiska enhetens 40 utgång bildar ett bussgränssnitt YBUS till ADL-registret och till DTM-registret 84. DTM- registret 84 tar också emot en styrsignal DTMJENABLE som gör det möjligt för data i DTM-registret att matas till DRAM-minnet. Den aritmetiska enheten 40 gensvarar på mikrokod från mikroprogrammet (jämför Fig. 1).
Som man kan se från Fig. 3 kan ADL och DTM laddas antingen från DBUS- bussen eller YBUS-bussen.
För en bättre förståelse av uppfinningen kommer uppfinningen nu att förklaras med hänvisning till ett belysande exempel på ett antal fördefinierade DRAM-styroperationer.
Fig. 4 är ett schematiskt tidsdiagram över ett antal DRAM-styroperationer enligt en föredragen utföringsform av uppfinningen. I detta särskilda exempel utnyttjas en huvudoscillator om 66 MHz, och huvudklocksignalen för mikrokodsinstruktionerna betecknas EXEC. För lutande flanker beror läget på 66-MHz-oscillatoms arbetscykel, varierande mellan 46% till 54%.
Tidsperioden mellan vertikala flanker, såväl som mellan lutande flanker är 15 ns, och tidsperioden mellan en vertikal flank och en lutande flank är då och 8.1 ns. justerbar på ett cykeltiden för varje sätt att mellan 6.9 ns Vidare är mikrokodsinstruktion sådant varje 10 15 20 25 30 512 775 lO mikrokodsinstruktion kan anta ett av två olika värden på mikroinstruktionscykeltiden; 30 ns eller 45 ns. Detta anges genom streckade linjer i Fig. 4. I Fig. 4 är alla signaler aktiva låga och detta anges genom suffixet n; SIGNALn. DRAM-styroperationerna som illustreras i Fig. 4 är R (Starta låsning), W (Starta skrivning), H (Håll) och E (Avsluta radaccess), vilka alla kommer att förklaras nedan.
R-operationen (Starta läsning) RASn dras ner 15 ns efter början av den aktuella mikrokodsinstruktíonen, om RASn inte redan är låg; CASn dras upp 7,5 ns innan slutet av den aktuella mikrokodsinstruktíonen, om CASn inte redan är hög, och 7,5 ns efter början av den nästa mikrokodsinstruktionen dras CASn ner; WEn dras mikrokodsinstruktíonen, om WEn inte redan är hög; och COLn dras ner 7,5 ns mikrokodsinstruktíonen, om COLn inte redan är låg. upp 7,5 ns innan slutet av den aktuella innan slutet av den aktuella W-operatíonen (Starta skrivning: RASn dras ner 15 ns efter början av den aktuella mikrokodsinstruktíonen, om RASn inte redan år låg; CASn dras upp 7,5 ns innan slutet av den aktuella mikrokodsinstruktíonen, om CASn inte redan år hög, och 7,5 ns efter början av den nästa mikrokodsinstruktionen dras CASn ner; WEn dras ner 15 ns innan slutet av den aktuella mikrokodsinstruktíonen, om WEn inte redan är låg; och COLn dras ner 7,5 ns innan slutet av den aktuella mikrokodsinstruktíonen, om COLn inte redan är låg.
H-operationen (Håll): CASn dras upp 7,5 ns innan slutet av den aktuella mikrokodsinstruktíonen, om CASn inte redan är hög; 10 15 20 512 773 11 WEn dras upp 7,5 ns innan slutet av den aktuella mikrokodsinstruktlonen, om WEn inte redan är hög.
E-operationen (Avsluta): RASn dras upp 15 ns efter början av den aktuella mikrokods- instruktionen, om RASn inte redan är hög; , CASn dras upp '7,5 ns innan slutet av den aktuella mikrokods- instruktionen, om CASn inte redan är hög; WEn dras upp 7,5 ns innan slutet av den aktuella mikrokods- instruktionen, om WEn inte redan är hög; och COLn dras upp 7,5 ns innan slutet av den aktuella mikrokods- instruktionen, om COLn inte redan är hög.
DRAM-styrenheten 50 instrueras genom en sekvens av styrinstruktioner, en styr-instruktion i varje mikrokodsinstruktion i mikrokodsprogrammet 22, att utföra en motsvarande sekvens av DRAM-styroperationer. I fallet med sammanlagt fyra olika DRAM-styroperationer så är två styrbitar i varje styrinstruktion tillräckligt för att välja ut en av de fyra operationerna. I den föreliggande utföringsformen är styrinstruktionsfältet, vilket betecknas genom MEMCP, i mikrokodsinstruktionerna utformat för att särskilja mellan de olika DRAM-styroperationerna på följande sätt: Tabell I styroperation Figfl 5 är ett schematiskt tillståndsdiagrarri som illustrerar hur DRAM- styroperationerna kan ordnas till DRAM-aceesser enligt en föredragen utföringsform av uppfinningen. Antingen kan en R-operation eller en WÄ 10 15 20 30 512 775 12 operation följa en E-operation. En R-operation kan följas av en H-operation som i sin tur kan följas av vilken typ av operation som helst. En R-operation eller en H-operation kan följa en W-operation. Alla operationer kan itereras, d.v.s. upprepas så många gånger som önskas.
En DRAM-access kan inítíeras genom utförande av en R-operation, efter en E- operation. Under denna mikroinstruktionscykel måste radadressen vara giltig i ADP och ADH. Nästa DRAM-styroperation måste vara av typen R eller H, och under denna mikroinstruktionscykel måste kolumnadressen vara giltig i ADH och ADL. För en R-operation som inte initierar en DRAM-access så behöver radadressen inte vara giltig. I den efterföljande mikroinstruktionscykeln när en ytterligare DRAM-styroperation påbörjas i enlighet med tillstånclsdiagrammet i Fig. 5, finns data som svarar mot den anbringade DRAM-adressen, d.v.s. rad- användas av och kolumnadressen, tillgängligt och kan Data kan även användas av efterföljande mikrokodsin struktionen. mikrokodsinstruktíoner, om detta inte ersätts av data från en ny utläsníng.
En DRAM-access kan också initieras genom utförande av en W-operatíon, efter en E-operation. Under denna mikroinstruktionscykel måste radadressen vara giltig i ADP och ADH. Nästa DRAM-styroperation mäste vara av typen W, R eller H, och under denna mikroinstruktionscykel måste kolumnadressen vara giltig i ADH och ADL, och de data som ska skrivas till den anbringade DRAM- adressen måste vara giltig i data-till-minnet-registret. För en W-operation som inte initierar en DRAM-access så behöver radadressen inte vara giltig.
H-operationen kan stoppas in var som helst som en "ingen-operatíon" för att tillfälligt uppehålla DRAM-minnets accesscykel, t.ex. när de steg som erfordras för DRAM-accessen inte räcker för att utföra det arbete som ska göras av mikrokods- instruktionerna. I detta fall är kravet på giltig kolumnadress i ADH och ADL knutet till att den föregående DRAM-styroperationen är av typen R eller W. På mikrokodsprogrammet såsom anges av andra fält i 10 15 20 25 30 512 773 13 liknande sätt så uppkommer kravet på giltigt data i DTM-registret alltid ett steg efter en W-operation.
H-operation har valts som den "normala" förvalda typen av operation eftersom den kan stoppas in var som helst. E-operationen år också tillåten som en "ingen-operation", men endast när DRAM-minnet är overksamt, d.v.s. i vilken sekvens som helst mellan en E-operation och nästa R- eller W-operation.
Till exempel så kan en normal DRAM-access utföras i tre mikroínstruktionscykler. Under varje mikrokodsinstruktion så instruerar den styr-instruktion DRAM- styrenheten 50 till att utföra en DRAM-styroperation. För en låsaccess utförs som är innefattad i mikrokodsinstruktionen normalt en sekvens av styroperationerna R, H och E. Vid den första DRAM- styroperationen, R, är radadressen giltig i adressregistret 54 och radadressen laddas in i DRAM-minnet 60 genom en strobsignal, styrsignalen RASn. I den mikroinstruktionscykel i vilken R-operationen initieras så laddar mikrokods- instruktionen också in kolumnadressen i adressregístret 54. Vid den andra DRAM-styroperationen, H, så laddas kolumnadressen, som laddats in i adressregistret i den föregående mikroinstruktionscykeln, in i DRAM-minnet styrsignalen CASn. Vid den tredje DRAM- styroperationen, E, så presenterar en data-från-minnet-latch (inte visad) data genom en strobsignal, från DRAM-minnet. Detta data är tillgängligt att användas av den aktuella rnikrokodsinstruktionen eller efterföljande rnikrokodsinstruktioner.
I det följande visas exempel på sekvenser av DRAM-styroperationer för ett antal olika DRAM-accesser i Tabell II. 512 773 14 Tabell II DRAM- Krav/status relevant för innehållet i andra Kommentar styrop. delar av mikroinstruktionen Läsning (R) Radadr i ADH Börja radaccess, börja läsning (H) KolumnadriADL ' (E) Data tillgängligt Läsning, sluta radaccess Läsning - page m ode: (R) Radadr i ADH Börja radaccess, börja läsning (#1) (R) Kolumnadr (#1) iADL Börja läsning (#2) (R) Kolumnadr (#2) iADL, Data (#1) tillgängligt Läsning (#1), börja läsning (#3) (R) Kolumnadr (#3) iADL, Data (#2) tillgängligt Läsning (#2), börja läsning (#4) (R) Kolumnadr (#4) iADL, Data (#3) tillgängligt Läsning (#3), börja läsning (#5) (H) Kolumnadr (#5) i ADL, Data (#4) tillgängligt Läsning (#4) (E) Data (#5) tillgängligt Läsning (#5), sluta radaccess Skrivning (VV) Radadr i ADH Börja radaccess, börja skrivning (H) Kolumnadr i ADL, Data från DTM Skrivning (E) Sluta radaccess Skrivning - page mode: Läsning först, sedan skrivning: (VV) Radadr i ADH Börja radaccess, börja skrivning (#1) (VV) Kolumnadr (#1) iADL Data (#1) i DTM Skrivning (#1), börja skrivning (#2) (VV) Kolumnadr (#2) iADL, Data (#2) i DTM Skrivning (#2), börja skrivning (#3) (VV) Kolumnadr (#3) i ADL, Data (#3) i DTM Skrivning (#3), börja skrivning (#4) (VV) Kolumnadr (#4) iADL, Data (#4) i DTM Skrivning (#4), börja skrivning (#5) (H) Kolumnadr (#5) i ADL, Data (#5) i DTM Skrivning (#5) (E) Sluta radaccess (E) (R) Radadr i ADH Börja radaccess, börja läsning (C) Kolumnadr (#1) iADL (W) Data (#1) tillgängligt Läsning, börja skrivning (H) Kolumnadr (#2) iADL, Data (#2) i DTM Skrivning Sluta radaccess Läsning i page mode först, sedan skrivning i page mode: Radadr i ADH Börja radaccess, börja läsning (#1) Kolumnadr (#1) i ADL Börja 2:a läsning (#2) Kolumnadr (#2) i ADL, Data #1) tillgängligt Läsning (#1), börja läsning (#3) Kolumnadr (#3) i ADL, Data #2) tillgängligt Läsning (#2) Läsning (#3), börja skrivning (#4) Kolumnadr (#4) i ADL, Data #4) i DTM Skrivning, börja nästa skrivning (#5) Kolumnadr (#5) i ADL, Data #5) i DTM Skrivning, börja nästa skrivning (#6) Kolumnadr (#6) i ADL, ( ( Data (#3) tillgängligt ( ( i Data #6) i DTM Sista skrivning Sluta radaccess 10 15 20 512 773 15 Skrivning först, sedan läsning: Börja radaccess, börja skrivning Skrivning, börja läsning (#2) (VV) Radadr i ADH (R) Kolumnadr (#1) i ADL Data (#1) i DTM (H) Kolumnadr (#2) i ADL, (E) Data (#2) tillgängligt Läsning (#2), sluta radaccess Skrivning ipage mode först, sedan läsning i page mode: (VV) Radadr i ADH (VV) Kolumnadr (#1) i ADL (VV) Kolumnadr (#2) iADL, (R) Kolumnadr (#3) i ADL, (R) Kolumnadr (#4) i ADL, (R) Kolumnadr (#5) i ADL, Data (#4) tillgängligt Läsning (#4), börja läsning (#6) (H) Kolumnadr (#6) iADL, Data (#5) tillgängligt Läsning (#5) Börja radaccess, börja 1:a skrivning 1:a skrivning, börja 2:a skrivning 2:a skrivning, börja 3:e skrivning 3:e skrivning, börja läsning (#4) Börja läsning (#5) Data (#1) i DTM Data (#2) i DTM Data (#3) i DTM (E) Data (#6) tillgängligt Läsning (#6), sluta radaccess "Radadr i ADH" betyder: Innehåll i ADP och (huvudsakligen) ADH under denna mikrokodsinstruktion (laddad till registren av tidigare mikrokodsinstruktioner) kommer att matas till DRAM-minnet och användas som radadress för alla DRAM-accesser tills en mikrokodsinstruktion med koden "E" i MEMCP-fåltet har exekverats. Laddning av ADP eller ADH i denna mikrokodsinstruktion år tillåten men har inte någon effekt på dessa minnesaccesser.
"Kolumnadr i ADL" betyder: Innehåll i ADH and (huvudsakligen) ADL under denna mikrokodsinstruktion (laddad till registren av tidigare mikrokodsinstruktioner) kommer att matas till DRAM~minnet och användas som kolumnadress för denna DRAM-access (vilken påbörjades med R eller W i den föregående mikrokodsinstruktionen).
Laddning av ADH eller ADL i denna mikrokodsinstruktion är tillåten men har inte någon effekt på denna minnesaccess.
"Data i DTM" betyder: Innehåll i DTM-registret under denna mikrokodsinstmktion (laddad till registret av tidigare mikrokodsinstruktion) kommer att matas till DRAM- minnet och användas som data för denna DRAM-access (vilken påbörjades lllhl I ihllllll. il til 10 15 20 25 30 512 773 16 med W i den föregående mikrokodsínstruktionen). Laddning av DTM i denna míkrokodsinstruktion är tillåten men har inte någon effekt på denna minnesaccess.
"Data tillgängligt" betyder: DFM-latchen (Data-Från-Minnet) presenterar nu data från DRAM-minnet som år tillgängligt att användas av denna mikrokodsinstruktion. Innehållet fortsätter att vara tillgängligt tills det förändras av en ny läsaccess, markerat här med en ny notering om "Data tillgängligt". "# 1", "#2", etc. betyder: Dessa nummer markerar olika minnesaccesser för att visa motsvarigheten mellan kolumnadresser och databitgrupper.
Som man kan se motsvarar varje DRAM-styroperation mer eller mindre en delcykel av en fullständig DRAM-access.
Den mikrokodsintegrerade access-styrningen är särskilt fördelaktig för processorer som måste bestämma DRAM-adressen i två steg; till exempel en 84 bitars processor som är ansluten till ett DRAM-minne med 16-bitars adressering. DRAM-accessen kan initieras innan den fullständiga DRAM- adressen har bestämts.
Fig. 6 är ett schematískt diagram över DRAM-styrlogiken i en DRAM-styrenhet enligt en föredragen utföringsform av uppfinningen. DRAM-styrlogiken 52 är ímplementerad med användande av ett antal konventionella grindar (OCH- grindar AN, ICKE-ELLER-grindar NR, ICKE-OCH-grindar ND), vippor (DFF och JKFF) och inverterare (I). Styrlogiken 52 gensvarar på styrinstruktionerna i MEMCP-fältet i mikrokodsinstruktionerna i mikrokodsprograrnmet 22. För varje mikrokodsinstruktion som tas emot från mikrokodsprogrammet 22 genererar styrlogiken 52 DRAM-styrsignaler för en på förhand bestämd delcykel av en DRAM-access i gensvar på styrbitarna i MEMCP-fältet. 10 15 20 25 30 512 775 17 I denna särskilda utföringsform anbringas de två styrbitarna i MEMCP-fältet den aktuella mikrokodsinstruktionen till grindarna AN, NR, och AN som följer efter inverteraren I, för att generera ett antal signaler E, R och W som i sin tur matas till olika grindar och vippor i styrlogiken 52. Dessutom anbringas den första MEMCP-styrbiten till en JK-vippa, och två ICKE-OCH-grindar ND. Den andra MEMCP-styrbiten anbringas vidare till en ICKE-ELLER-grind NR.
Signalen A är utsignalen från en vippa ALLRAS som används för att sätta en RAS-signal till DRAM-minnet regenereringscykel. Signalen 66 är utsignalen från oscillatorn om 66 MHz; och alla minneskretsar i under en EXEC är huvudklocksignalen för mikrokodsinstruktionerna.
I gensvar på MEMCP-styrbitarna genereras DRAM-styrsignalerna RASn, CASn, WEn, COL och COLn. Om ett 16-bitars DRAM-minne används kan CAS- signalen utnyttjas tillsammans med ADDR LSB från adressregistret 54 och en ytterligare styrsignal l6BITn för att selektivt generera signalerna UCASn och LCASn. UCASn står för "Strobsignal för kolumnadress/Styrbit för mest bitgrupp", LCASn "Strobsignal för kolumnadress/Styrbit för minst signifikanta bitgrupp". Signalerna UCASn och LCASn används på konventionellt sätt för access till respektive delar av DRAM-minnet om 16-bitar. signifikanta och står för Vidare genererar en vippa DFF en data-till-minnet-signal (DTMJENABLE) i gensvar på signalerna W och EXEC. Signalen DTM_ENABLE styr data-till- minnet-registret. Som man kan se från Fig. 6 genererar styrlogiken 52 också en håll-data-från-minnebsignal (HOLD_DFM) som styr data-från-minnet- latchen (inte visad).
Ytterligare detaljerad information om DRAM-minnen och DRAM-styrning kan man finna till exempel i databoken MOS Memory DRAM (Byte/ Word Wide) från Toshiba (1995), och i synnerhet DRAM-speciñkationen TC5lV4265DJ/DFT- 60, -70 på sidorna 1604-1634 i denna. :i liii n... -_.l 10 15 20 25 30 512 773 18 Fig. 7A-E är schematiska tidsdiagram för olika DRAM-accesser enligt en föredragen utföringsform av uppfinningen.
Fig. 7A är ett schematiskt tidsdiagram för en läsaccess i "page mode" enligt en föredragen utföringsform av uppfinningen. Som angivits i Tabell II ovan innefattar sekvensen av DRAM-styroperationer ett på förhand bestämt antal R- operationer följt av en H-operation och en E-operation. rnikroinstruktionscykeln, 30 ns läng, bestämmer I den första mikrokodsinstruktionen en radadress ROW och laddar denna till ADH.
I den andra mikroinstruktionscykeln, som förlängs till 45 ns, utförs en R- operation och en första kolumnadress COL1 bestäms av mikrokods- instruktionen och laddas till ADL. Radadressen ROW laddas in i DRAM- minnet genom en strobsignal, varvid den utvalda raden aktiveras.
I den tredje mikroinstruktionscykeln, som också kan förlängas till 45 ns beroende på cykeltiden för det DRAM-minne som används, utförs en R- operation ännu en gång och en andra kolumnadress COLQ bestäms av mikrokodsinstruktionen och laddas till ADL. Kolumnadressen COLl laddas in i DRAM-minnet genom en strobsignal.
I den fjärde mikroinstruktionscykeln utförs en R-operation igen och en tredje kolumnadress COL3 bestäms av mikrokodsinstruktionen och laddas till ADL.
Kolumnadressen COL2 laddas in i DRAM-minnet genom en strobsignal. Nu presenterar DFM-latchen som styrs av signalen HOLD_DFM ett första data DATAl, associerat med DRAM-adressen (ROW, COLI), från DRAM-minnet.
Datakällan DSOURCE är DFM-latchen som häller DATAl.
I den femte mikroinstruktionscykeln utförs en H-operation. Kolumnadressen COL3 laddas in i DRAM-minnet genom en strobsignal. DFM-latchen 10 15 20 25 30 512 775 19 presenterar nu nästa data DATA2, associerat med DRAM-adressen (ROW, COL2) från DRAM-minnet. DSOURCE är DFM(DATA2).
I den sista mikroinstruktionscykeln för läsaccessen i "page mode" som illustreras i Fig. 7A utförs en E-operation. DFM-latchen presenterar nu DATA3, associerat med DRAM-adressen (ROW, COLS) från DRAM-minnet.
DSOURCE är DFM(DATA3).
Fig. 7B är ett schematiskt tidsdiagram för en läs-och-skrivaccess i "page mode" enligt en föredragen utföringsform av uppfinningen. Sekvensen av DRAM- styroperationer för en läs-och-skrivaccess anges i Tabell II ovan. Först utförs en R-operation, följt av en H-operation. Därefter utförs en W-operation och data-till-minnet-registret (DTM) laddas. Kolumnadressen för skrivning laddas till ADL i denna mikrokodsinstruktionscykel eller i den föregående cykeln.
Samtidigt presenterar DFM-latchen data DATAl från DRAM-minnet. I nästa mikroinstruktionscykel utförs en H~operation och kolumnadressen (COLQ) för skrivning laddas in i DRAM-minnet genom en strobsignal och data (DATATILLMEMI) i DTM skrivs in i DRAM-minnet. Accessen avslutas med en E-operation.
Fig. 7C är ett schematiskt tidsdiagram för en skrivaccess i "page mode" enligt Sekvensen av DRAM- styroperationer för en skrivaccess i "page mode" anges i Tabell Il ovan. En en föredragen utföringsform av uppfinningen. skrivaccess i "page mode " liknar en läsaccess i "page mode". W-operationer används istället för R-operationer. Data som ska skrivas in i DRAM-minnet laddas till DTM-registret minst en mikroinstruktionscykel innan själva skrivningen till DRAM-minnet.
Fig. 7D är ett schematiskt tidsdiagrarn för en skriv-och-läsaccess i "page mode" enligt en föredragen utfözingsforrn av uppfinningen. Sekvensen av DRAM- styroperationer för en skriv-och-läsaccess i "page mode" anges i Tabell ll ovan. 10 15 20 25 30 512 773 20 Det bör noteras att W-operationen följs direkt av en R-operation, utan att det behövs en H-operation däremellan.
Fig. 7E är ett schematiskt tidsdiagram för en regenereringscykel av CAS- innan-RAS-typ enligt en föredragen utföringsform av uppfinningen. Sekvensen av DRAM-styroperationer för en sådan DRAM-accesscykel börjar med en H- operation i vilken ALLRAS sätts, följt av en E-operation. När ALLRAS är satt så går signalen A hög, och styrlogiken 52 (Fig. 6) påverkas i enlighet därmed.
Därefter upprepas en sekvens av DRAM-styroperationerna R, H och E ett lämpligt antal gånger, och under den sista upprepningen innefattar H- operationen en återställning av ALLRAS. Accesscykeln avslutas med en E- operation. Alternativt upprepas en sekvens av DRAM-styroperationerna H, E och R.
I den för närvarande mest föredragna utföringsformen av uppfinningen är centralprocessorn en processor med komplex instruktionsuppsättning (CISC), och komplexa instruktioner lagras i DRAM-minnet och exekveras av mikrokodsinstruktioner som lagras i mikrokodsprogramminnet. Mikrokods- programminnet är företrädesvis statiskt, även om inget hindrar att det är dynamiskt. I detta fall lagras de komplexa instruktionerna, som också hänvisas till som högnivåmaskininstruktioner, såväl som data i DRAM- minnet, och därför kan datorsystemet hänvisas till som en CISC med "von Neumann"-arkitektur. När mikrokodsprogrammet har valt ut och aktiverat en rad i DRAM-minnet så har mikrokodsprogrammet snabb access till alla minnesceller i raden, i vilken godtycklig ordning som helst och med en godtycklig kombination av läsningar och skrivningar.
Alternativt är den aritrnetiska delen av processorn utformad att ha två DRAM- gränssnitt, ett gränssnitt för komplexa instruktioner och ett för data. Detta skulle medge en CISC med Harvard-arkitektur. 10 15 512 773 21 Emellertid skulle "mikrokodsinstruktionerna" kunna vara instruktionerna i (RISC) datorsystemet skulle hänvisas till som ett RISC-system med Harvard- en processor med förenklad instruktionsuppsättning så att arkitektur, där instruktioner och data lagras i olika minnen.
Det bör förstås att antalet DRAM-styroperationer inte är begränsat till fyra som i den föredragna utföringsforrnen av uppfinningen. Det är möjligt att använda mer eller mindre än fyra DRAM-styroperationer. Antalet styrbitar i varje mikrokodsinstruktion kommer då att modifieras i enlighet därmed. Om mer än fyra DRAM-styroperationer används av uppfinningen så måste varje mikrokodsinstruktion innefatta mer än två styrbitar. En enstaka styrbit kan särskilja mellan två DRAM-styroperationer.
De utföringsformer som beskrivits ovan ges enbart som exempel, och det bör förstås att föreliggande uppfinning inte är begränsad till dessa. Ytterligare modifikationer, förändringar och förbättringar som innehåller de grundläggande, bakomliggande principer som beskrivits, och definierats i patentkraven ligger inom uppfinningens omfattning och andemening.
Claims (27)
1. Ett förfarande för styrning av access till ett dynamiskt direktminne (DRAM), kännetecknat av att förfarandet innefattar steget att man för varje DRAM- access utför en sekvens av ett på förhand bestämt antal DRAM- styroperationer i gensvar på en motsvarande sekvens av styrinstruktioner innefattade i en processors (10) mikrokodsinstruktioner.
2. Förfarandet enligt krav 1, kännetecknat av att varje mikrokodsinstruktion innefattar en styrinstruktion, bildad av minst en styrbít, som styr vilken av ett flertal på förhand definierade DRAM-styroperationer (R, W, H, E) som ska utföras.
3. Förfarandet enligt krav 2, kännetecknat av att de på förhand definierade DRAM-styroperationerna (R, W, H, E) kan ordnas för att bilda sekvensen av DRAM-styroperationer så att en läsaccess, en skrivaccess, en läsaccess i "page mode", en skrivaccess i "page mode", en läs-och-skrivaccess i "page mode" eller en skriv-och- läsaccess i "page mode" till DRAM-minnet (60) medges.
4. Förfarandet enligt något av föregående krav, kännetecknat av att minst en styrinstruktion i sekvensen av styrinstruktioner tillfälligt uppehåller DRAM-minnets (60) minnescykel.
5. Förfarandet enligt något av föregående krav, kännetecknat av att varaktigheten hos DRAM-styroperationerna passar mot cykeltiden för míkrokodsinstruktionerna.
6. ' Förfarandet enligt krav 5, kännetecknat av att förfarandet vidare innefattar steget att man väljer cykeltiden för varje mikrokodsinstruktion från ett antal olika cykeltider. 10 15 20 25 30 512 773 23
7. Förfarandet enligt krav 2, kännetecknat av att en första operation, hänvisad till som en R-operation, av de på förhand definierade DRAM-styroperationerna innefattar stegen: att man selektivt, om signalen är inaktiv, aktiverar en strobsignal (RAS) för radadressen till DRAM-minnet; att man selektivt gör det möjligt för en giltig radadress att matas till DRAM-minnet (60), och att man en första på förhand bestämd tidsperiod senare gör det möjligt för en giltig kolumnadress att matas till DRAM-minnet (60): att man selektivt, om signalen är aktiv, deaktiverar en skrivsignal (WE) till DRAM-minnet; och att man selektivt, om signalen är aktiv, deaktiverar en strobsignal (CAS) för kolumnadressen till DRAM-minnet, och att man en andra på förhand bestämd tidsperiod senare, i nästa mikroinstruktionscykel, aktiverar CAS-signalen.
8. Förfarandet enligt krav 2, kännetecknat av att en andra operation, hänvisad till som en W-operation, av de på förhand definierade DRAM-styroperationerna innefattar stegen: att man selektivt, om signalen är inaktiv, aktiverar en strobsignal- (RAS) för radadressen till DRAM-minnet; att man gör det möjligt för en giltig radadress att matas till DRAM- minnet (60), och att man en första på förhand bestämd tidsperiod senare gör det möjligt för en giltig kolumnadress att matas till DRAM-minnet; att man selektivt, om signalen är inaktiv, aktiverar en skrivsignal (WE) till DRAM-minnet; och att man selektivt, om signalen är aktiv, deaktiverar en strobsignal (CAS) för kolumnadressen till DRAM-minnet, och att man en andra på nästa mikroinstruktionscykel, förhand bestämd tidsperiod senare, i aktiverar CAS-signalen. | lll Ilvl 10 15 20 25 30 512 773 24
9. Förfarandet enligt krav 2, kännetecknat av att en tredje operation, hänvisad till som en H-operation, av de på förhand definierade DRAM-styroperationerna innefattar stegen: att man deaktiverar en strobsignal (CAS) för kolumnadressen till DRAM-minnet; och att man deaktiverar en skrivsignal till DRAM-minnet.
10. Förfarandet enligt krav 2, kännetecknat av att en fiärde operation, hänvisad till som en E-operation, av de på förhand definierade DRAM-styroperationerna innefattar stegen: att man deaktiverar en strobsignal (RAS) för radadressen till DRAM- minnet (60); att man selektivt, om signalen är aktiv, deaktiverar en strobsignal (CAS) för kolumnadressen till DRAM-minnet; att man selektivt, om signalen är aktiv, deaktiverar en skrivsignal (WE) till DRAM-minnet; och att man gör det möjligt för en giltig radadress att matas till DRAM- minnet.
11. Förfarandet enligt krav 7, 9 och 10, kännetecknat av att för en läsaccess till DRAM-minnet (60) så innefattar sekvensen av DRAM-styroperationer en R-operation, en H-operation samt en E-operation, i den ordningen.
12. Förfarandet enligt krav 8, 9 och 10, kännetecknat av att för en skrivaccess till DRAM-minnet (60) så innefattar sekvensen av DRAM-styroperationer en W-operation, en H-operation samt en E-operation, i den ordningen. 10 15 20 25 30 512 775 25
13. Förfarandet enligt krav 7, 9 och 10, kännetecknat av att för en läsaccess i "page mode" till DRAM-minnet (60) så innefattar sekvensen av DRAM-styroperationer ett på förhand bestämt antal R-operationer följt av en H-operation och en E-operation.
14. Förfarandet enligt krav 8, 9 och 10, kännetecknat av att för en skrivaccess i "page mode" till DRAM-minnet (60) så innefattar sekvensen av DRAM-styroperationer ett på förhand bestämt antal W-operationer följt av en H-operation och en E-operation.
15. En styrenhet för ett dynamiskt direktminne (DRAM), kännetecknad av att DRAM-styrenheten (50) gensvarar på en sekvens av styrinstruktioner för styrning av access till DRAM-minnet (60), varvid varje förhand bestämd del av en styrinstruktion bildas av en på mikrokodsinstruktion för en processor (10).
16. DRAM-styrenheten enligt krav 15, kännetecknad av att DRAM-styrenheten (50) styr access till DRAM-minnet genom att den utför en sekvens av ett på förhand bestämt antal DRAM- styroperationer i gensvar på sekvensen av styrinstruktioner.
17. DRAM-styrenheten enligt krav 15, kännetecknat av att varje styrinstruktion, bildad av minst en styrbit, styr vilken av ett flertal på förhand definierade DRAM-styroperationer (R, W, H, E) som ska utföras.
18. DRAM-styrenheten enligt krav 16 eller 17, kännetecknad av att varaktigheten hos DRAM-styroperationerna passar mot cykeltiden för mikrokodsinstruktionerna. 10 15 20 30 512 773 26
19. DRAM-styrenheten enligt krav 18, kännetecknad av att cykeltiden för varje mikrokodsinstruktion är justerbar.
20. DRAM-styrenheten enligt krav 15, kännetecknad av att minst en styrinstruktion i sekvensen av styrinstruktioner tillfälligt uppehåller DRAM-minnets (60) minnescykel.
21. DRAM-styrenheten enligt krav 15, kännetecknad av att processorns (10) mikrokodsinstruktioner lagras i ett programminne (22) som är åtskilt från DRAM-minnet (60).
22. DRAM-styrenheten enligt krav 15, DRAM-styrenheten (50) antal av gensvarar på adress- ( 10) kännetecknad av att bestäms av ett SOITI pYOCCSSOITIS information, mikrokodsinstruktioner, för adressering av DRAM-minnet (60).
23. DRAM-styrenheten enligt krav 15, (10) instruktionerna för en processor med förenklad instruktionsuppsättning (Rise). kännetecknad av att processorns mikrokodsinstruktioner är (10), direktminne (DRAM) som samverkar med processorn, och en styrenhet (50) för DRAM-minnet (60), kännetecknat av att DRAM-styrenheten (50) gensvarar på en sekvens av
24. Ett datorsystem uppvisande en processor ett dynamiskt styrinstruktíoner från processorn (10) för styrning av access till DRAM- minnet (60), varvid varje styrínstruktion bildas av en på förhand bestämd del av en rnikrokodsinstruktion för processorn (10). 10 512 773 27
25. Datorsystemet enligt krav 24, kännetecknad av att DRAM-styrenheten (50) styr access till DRAM-minnet (60) genom att den utför en sekvens av DRAM-styroperationer i gensvar på sekvensen av styrinstruktioner.
26. Datorsysternet enligt krav 24, kännetecknar! av att processorn ( 10) och DRAM-minnet (60) är anordnade på samma kretskort.
27. Datorsystemet enligt krav 24, kännetecknad av att processorn (10) är en processor med komplex instruktionsuppsättning (CISC), och att komplexa instruktioner lagras i DRAM-minnet (60) och exekveras av mikrokodsinstruktioner som lagras i ett prograrnminne (22) i processorn (10).
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9803708A SE512773C2 (sv) | 1998-10-28 | 1998-10-28 | Metod och anordning för kontroll/access av DRAM-minnen |
PCT/SE1999/001923 WO2000025205A1 (en) | 1998-10-28 | 1999-10-25 | Controlling access to a primary memory |
AU15894/00A AU1589400A (en) | 1998-10-28 | 1999-10-25 | Controlling access to a primary memory |
US09/830,094 US6938118B1 (en) | 1998-10-28 | 1999-10-25 | Controlling access to a primary memory |
EP99958554A EP1125191A1 (en) | 1998-10-28 | 1999-10-25 | Controlling access to a primary memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9803708A SE512773C2 (sv) | 1998-10-28 | 1998-10-28 | Metod och anordning för kontroll/access av DRAM-minnen |
Publications (3)
Publication Number | Publication Date |
---|---|
SE9803708D0 SE9803708D0 (sv) | 1998-10-28 |
SE9803708L SE9803708L (sv) | 2000-04-29 |
SE512773C2 true SE512773C2 (sv) | 2000-05-08 |
Family
ID=20413122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SE9803708A SE512773C2 (sv) | 1998-10-28 | 1998-10-28 | Metod och anordning för kontroll/access av DRAM-minnen |
Country Status (5)
Country | Link |
---|---|
US (1) | US6938118B1 (sv) |
EP (1) | EP1125191A1 (sv) |
AU (1) | AU1589400A (sv) |
SE (1) | SE512773C2 (sv) |
WO (1) | WO2000025205A1 (sv) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4451010B2 (ja) * | 2001-04-09 | 2010-04-14 | 三菱電機株式会社 | プログラマブルコントローラ |
US7171505B2 (en) * | 2002-05-02 | 2007-01-30 | International Business Machines Corporation | Universal network interface connection |
US7277971B2 (en) * | 2003-06-26 | 2007-10-02 | The Boeing Company | Method and apparatus for communicating data over a bus according to redefinable configurations |
US8471861B2 (en) * | 2005-12-27 | 2013-06-25 | Imsys Ab | Method and system for cost-efficient, high-resolution graphics/image display system |
FR2913784A1 (fr) * | 2007-03-14 | 2008-09-19 | St Microelectronics Sa | Gestion de donnees pour un traitement d'images |
EP2449472A1 (en) * | 2009-07-03 | 2012-05-09 | Jantsch, Axel | A programmable controller |
CN111506531B (zh) * | 2020-03-27 | 2023-06-02 | 上海赛昉科技有限公司 | 一种easy-master微码模块及其配置方法 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02210685A (ja) | 1989-02-10 | 1990-08-22 | Tokyo Electric Co Ltd | Dramコントローラ |
US5418924A (en) * | 1992-08-31 | 1995-05-23 | Hewlett-Packard Company | Memory controller with programmable timing |
US5278801A (en) * | 1992-08-31 | 1994-01-11 | Hewlett-Packard Company | Flexible addressing for drams |
JPH06150023A (ja) * | 1992-11-06 | 1994-05-31 | Hitachi Ltd | マイクロコンピュータ及びマイクロコンピュータシステム |
US5732236A (en) * | 1993-05-28 | 1998-03-24 | Texas Instruments Incorporated | Circuit and method for controlling access to paged DRAM banks with request prioritization and improved precharge schedule |
JPH07248963A (ja) * | 1994-03-08 | 1995-09-26 | Nec Corp | Dram制御装置 |
JPH07281948A (ja) | 1994-04-06 | 1995-10-27 | Mitsubishi Electric Corp | メモリ制御装置 |
WO1996029652A1 (en) | 1995-03-22 | 1996-09-26 | Ast Research, Inc. | Rule-based dram controller |
US5752269A (en) | 1995-05-26 | 1998-05-12 | National Semiconductor Corporation | Pipelined microprocessor that pipelines memory requests to an external memory |
JP3614956B2 (ja) | 1995-12-20 | 2005-01-26 | 株式会社東芝 | メモリ制御システム |
US5636174A (en) * | 1996-01-11 | 1997-06-03 | Cirrus Logic, Inc. | Fast cycle time-low latency dynamic random access memories and systems and methods using the same |
GB2309559B (en) | 1996-01-27 | 2000-01-26 | Motorola Israel Ltd | Microprocessor and system |
JPH1049437A (ja) | 1996-07-30 | 1998-02-20 | Toshiba Corp | ダイナミックram制御装置 |
JPH10105457A (ja) | 1996-09-30 | 1998-04-24 | Nec Data Terminal Ltd | メモリ制御システムおよびメモリ制御回路 |
JPH10134008A (ja) * | 1996-11-05 | 1998-05-22 | Mitsubishi Electric Corp | 半導体装置およびコンピュータシステム |
US5933855A (en) * | 1997-03-21 | 1999-08-03 | Rubinstein; Richard | Shared, reconfigurable memory architectures for digital signal processing |
JP3189727B2 (ja) * | 1997-04-15 | 2001-07-16 | 日本電気株式会社 | コプロセッサ内蔵パケット型メモリlsi、それを用いたメモリシステム及びそれらの制御方法 |
JP4246812B2 (ja) * | 1997-06-12 | 2009-04-02 | パナソニック株式会社 | 半導体回路及びその制御方法 |
US6192446B1 (en) * | 1998-09-03 | 2001-02-20 | Micron Technology, Inc. | Memory device with command buffer |
-
1998
- 1998-10-28 SE SE9803708A patent/SE512773C2/sv not_active IP Right Cessation
-
1999
- 1999-10-25 EP EP99958554A patent/EP1125191A1/en not_active Ceased
- 1999-10-25 US US09/830,094 patent/US6938118B1/en not_active Expired - Lifetime
- 1999-10-25 AU AU15894/00A patent/AU1589400A/en not_active Abandoned
- 1999-10-25 WO PCT/SE1999/001923 patent/WO2000025205A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
SE9803708D0 (sv) | 1998-10-28 |
WO2000025205A1 (en) | 2000-05-04 |
EP1125191A1 (en) | 2001-08-22 |
AU1589400A (en) | 2000-05-15 |
US6938118B1 (en) | 2005-08-30 |
SE9803708L (sv) | 2000-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101329018B1 (ko) | 임베딩된 메모리에서 비트 라인 프리차지 | |
US5596741A (en) | Computer system which overrides write protection status during execution in system management mode | |
EP1560123B1 (en) | Information processing apparatus and method of accessing memory | |
JPH0652633B2 (ja) | メモリ・サブシステム | |
US20030093612A1 (en) | Microcomputer | |
US5752269A (en) | Pipelined microprocessor that pipelines memory requests to an external memory | |
US6385691B2 (en) | Memory device with command buffer that allows internal command buffer jumps | |
KR100476446B1 (ko) | 라운드 로빈 및 로킹 캐시 대체 수행 방법 및 장치 | |
JP5199090B2 (ja) | エネルギーの効率的なレジスターファイルを提供する方法及びシステム | |
US7577791B2 (en) | Virtualized load buffers | |
KR19990037572A (ko) | 뱅크 어드레스 값을 공급하는 다중 소스를 구비하는 프로세서구조 설계 및 그 설계방법 | |
SE512773C2 (sv) | Metod och anordning för kontroll/access av DRAM-minnen | |
KR100831491B1 (ko) | 어드레스 디코드 | |
US6055606A (en) | Writeback cache cell with a dual ported dirty bit cell and method for operating such a cache cell | |
JPH0362243A (ja) | 情報処理システムにおいてメモリアクセスを速くする装置 | |
JPH07248963A (ja) | Dram制御装置 | |
KR100298955B1 (ko) | 데이타처리시스템 | |
US4628450A (en) | Data processing system having a local memory which does not use a directory device with distributed resident programs and a method therefor | |
WO2006003693A1 (ja) | データプロセッサ | |
JP3169878B2 (ja) | メモリ制御回路 | |
US11847461B2 (en) | Out-of-order input / output write | |
WO2009092037A1 (en) | Content addressable memory augmented memory | |
JP4921153B2 (ja) | 書込みデータに基づいて選択的に行付勢するためのシステム及び方法 | |
JP3956698B2 (ja) | メモリ制御装置 | |
JP2003337790A (ja) | バス制御回路およびプロセッサ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
NUG | Patent has lapsed |