NO173116B - Segment-deskriptorenhet - Google Patents

Segment-deskriptorenhet Download PDF

Info

Publication number
NO173116B
NO173116B NO875391A NO875391A NO173116B NO 173116 B NO173116 B NO 173116B NO 875391 A NO875391 A NO 875391A NO 875391 A NO875391 A NO 875391A NO 173116 B NO173116 B NO 173116B
Authority
NO
Norway
Prior art keywords
segment
bit
ram
locations
signals
Prior art date
Application number
NO875391A
Other languages
English (en)
Other versions
NO875391L (no
NO875391D0 (no
NO173116C (no
Inventor
Eugene Nusinov
Thomas F Joyce
Original Assignee
Bull Hn Information Syst
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 Bull Hn Information Syst filed Critical Bull Hn Information Syst
Publication of NO875391D0 publication Critical patent/NO875391D0/no
Publication of NO875391L publication Critical patent/NO875391L/no
Publication of NO173116B publication Critical patent/NO173116B/no
Publication of NO173116C publication Critical patent/NO173116C/no

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/145Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1036Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Storage Device Security (AREA)

Abstract

Segment-deskriptor enhet (SDU) innbefatter et oppdelt direktelager (RAM), et innholds adresserbart lager (CAW) og dekoderkretser som er sammenkoblet for å utføre dynamisk og statiske adresseoversettelse-operasjoner innenfor et minimum av brikkeareal og effekt. Nevnte CAM er innrettet til å lagre et antall av innføringer som innbefatter segmenttall og gyldighetsinformasjon som er knyttet til et korresponderende antall av segmentdeskriptorer. Nevnte RAM inneholder steder som er allokert for lagring av segment-deskriptor ord (SW) og arbeidsdata. Hvert SDW er logisk oppdelt i to felt, et statisk oversettelsesord (STW) felt som inneholder samtlige av bitene som behøves for å utføre en statisk adresse-oversettelsesoperasjon og et aksesskontrollord (ACW) felt som inneholder alle bitene som behøves for å bekrefte samsvar med systemsikkerhet. Bitene i hvert STW og ACW lagres i vekselvis bit-posisjoner i SDW stedene. Hvert par av RAM bit-steder er forbundet med en felles les/skriv forsterker og multiplekserkrets. Gjennom bruken av mikroinstruksjonskomniandoer som er kodet til å angit forskjellige adresseoversettelses-funksjoner, blir nevnte STW og ACW felt som velges av nevnte CAM utlest fra nevnte RAM under forskjellige intervaller for å utføre trinnene i de operasjonene.

Description

Denne oppfinnelse vedrører lagringsanordning som anvendes for å behandle segment-deskriptorinformasjon, og nærmere bestemt en segmentdeskriptorenhet for å utføre oversettelsesoperasjoner på hvert ord som mottas av nevnte enhet.
Oppfinnelsen er relatert til de oppfinnelser som fremgår av norsk patentsøknad nr. 873025 og US-patent 4670835.
I dag anvender mange systemer en' kombinasjon av side-vekslings- og segmenteringstrekk. Et av de mere velkjente av disse systemer er Multics systemet. Slike systemer anvender segment-deskriptor ord hvor hvert av disse inneholder informasjon som retter seg mot sidetabellen i segmentet dersom segmentet er kjent å bero i lager, størrelsen av segmentet og et deskriptorfelt som inneholder aksess-kontrollinformasjon. Antallet av biter for et segment-deskriptorord er relativt stort, særlig hvor systemets lagerkapasitet er stor eller sofistikerte sikkerhetskontrol-ler anvendes. For ytterligere informasjon om Multics-systemet skal det vises til "The MULTICS system: An Examination of its Structure", av Elliot I. Organick, utgitt 1972.
For å lagre og aksessere segmentdeskriptorord, har systemet anvendt grupper av lagersteder eller lagerregistre som har det nødvendige antall av bit-posisjoner. Dette krever bruken av par av RAM-brikker som gir den ønskede lagerregister-bredden. Selvom denne løsning er egnet for mange systemer, krever den altfor mye plass og forbruker altfor mye effekt for systemer som realiseres under anvendelse av (VLSI) brikketeknologi med integrering i meget stor grad. Dessuten, for å anvende segment-deskriptorordene, vil ytterligere informasjon også måtte bli lagret. Dette kan øke RAM-lagerkravene, hvilket øker plass og effektforbruket.
I tillegg er det et primært formål med den foreliggende oppfinnelse å tilveiebringe segment-deskriptor lageranordning som er enkel å konstruere i VLSI-form, og krever et minimum av plass.
Det er et annet formål med den foreliggende oppfinnelse å tilveiebringe segment-deskriptor lageranordning som forbruker et minimum av effekt.
Disse og andre formål ved den foreliggende oppfinnelse oppnås i en foretrukket utførelsesform av den foreliggende oppfinnelse som innbefatter en segmentdeskriptorenhet (SDTJ) som innbefatter et delt direktelager (RAM), et innholds-adresserbart lager (CAM) og dekoderkretser som er sammenkoblet for å utføre dynamiske og statiske adresseoversettelse-operasjoner under mikroprogramstyring innenfor et minimum av brikkeområde og ved lav effekt. Nevnte CAM innrettes til å lagre et antall av innføringer som innbefatter segment-tall og gyldighetsinformasjon som er knyttet til et korresponderende antall av segmentdeskriptorer.
Nevnte RAM inneholder steder som er allokert for lagring av segment-deskriptorord (SDW) og arbeidsdata. Hvert SDW er logisk oppdelt eller funksjonelt seksjonert i to felt, et statisk oversettelsesfeltord (STW) felt som inneholder samtlige av bitene som behøves for å utføre en statisk adresseoversettelse-operasjon og et aksesskontrollord (ACW) felt som inneholder samtlige av bitene som behøves for å bekrefte samsvar med systemsikkerhet. Bitene i hvert STW og ACW lagres i vekselvis bitposisjoner'av SDW stedene. Hvert par av RAM bitsteder er forbundet med en felles les/skriv-forsterker og multiplekser krets.
Under styringen av mikroinstruksjonskommandoer som kodes til å angi forskjellig adresse-oversettelsesfunksjoner, blir STW-og ACW-feltene som velges av CAM utlest fra RAM ved forskjellige intervaller for å utføre de nødvendige trinn ved hver slik adresse-oversettelse-operasjon. I den foretrukne utførelsesform, skrives eksempelvis hvert 64-hit segment deskriptorord inn i nevnte SDU, 32 hiter av gangen.
Under en dynamisk adresseoperasjon som defineres av en første mikroinstruksjonskommando, mens sidedeskriptor-informasjonen leses ut fra lager, settes nevnte SDU i stand til å utlese parallelt ACW-feltet av segmentdeskriptoren som er angitt av treffutmatningene fra CAM og dekodingen av en del av den virtuelle adressen som oversettes.
Dette tillater sikkerhetssammenligningskretser å bli innbefattet i nevnte CDU til å verifisere samsvarighet med systemsikkerhetkravet. I tilfellet av en statisk adresseoversettelse-operasjon som defineres av en andre mikroinstruksjonskommando, settes nevnte CDU i stand til å utlese STW-feltet fra segmentdeskriptoren angitt ved treffutmatningene fra nevnte CAM og dekodingen av delen av den virtuelle adressen som oversettes.
Inngangssignaler som genereres av de første og andre mikroinstruksjonskommandoer anvendes til å bestemme hvilken del av nevnte RAM som skal aksesseres som en funksjon av typen av adresseoversettelse-operasjon som utføres som bestemt av slike kommandoer. STW feltet overføres til en adderer for dannelse av de oversatte adresser som kreves for innhenting av segment-deskriptorer fra hovedlager eller hurtig-bufferlager. En annen mikroinstruksjonskommando tillater aksess til arbeidsregistersteder innenfor et annet område av det samme RAM som klargjør lagring av informasjon knyttet til den oversettelsesfunksjon som utføres.
Løsningen, ifølge den foreliggende oppfinnelse, med å oppdele segment-deskriptor ordet på basis av de funksjoner som utføres, eliminerer behovet for databanemultipleksere og omvekslere, ettersom bredden av informasjonsordet som utleses fra RAM for overføring til enten sikkerhetsenheten eller addereren passer til bredden av den informasjon som behandles av disse enheter. Dette tillater også at addereren og sikkerhetssammenligningskretsene kan bli plassert hosliggende RAM, hvilket reduserer kravene til brikkemetallisering, sammenkobling og plass. Dessuten vil organiseringen redusere antallet av les/skriv forsterkerkretser med en halvpart, hvilket gir vesentlige besparelser i brikkeområdet og effektforbruk. I tillegg tillater oppfinnelsen adgang til innholdet i et antall av typer av forskjellige registre som alle befinner seg innenfor en enkelt RAM gjennom bruken av få mikroinstruksj onskommandoer.
Det nye trekk som anses å være kjennetegnende for oppfinnelsen både hva angår dens organisering og operasjonsmåte, sammen med ytterligere formål og fordeler vil fremgå av de etterfølgende patentkrav, samt bedre forstås av den etterfølgende beskrivelse vurdert i forbindelse med de vedlagte tegninger.
Figur 1 er et blokkskjema over segment-deskriptorenheten
(SDTJ) ifølge den foreliggende oppfinnelse.
Figur 2 er et blokkskjema over lagerseksjonen i nevnte
SDU i figur 1.
Figurene 3a til og med 3g viser i nærmere detalj forskjellige
deler av lagerseksjonen i figur 2.
Figurene 4a og 4b viser kartleggingen og innholdet i lager seksjonen i figur 2. Figur 5 er et flytskjema som anvendes til å forklare
operasjonen av nevnte SDU i figur 1.
Figurene 6a til og med 6e illustrerer kontrollordformatene og det virtuelle adresseformatet som anvendes til å forklare operasjonen av nevnte SDU i figur 1. Figur 1 viser i blokkskjemaform den foretrukne utførelsesform av deskriptorenheten (SDU) som er konstruert i henhold til læren ifølge den foreliggende oppfinnelse. Som det vil sees av figuren innbefatter nevnte SDU 10 en lagerseksjon 12, en adderer 16, sikkerhetskontrolleringssammenllgningskretser 14 og et virtuelt adresseregister 18. Hvert av elementene 12 til og med 18 er forbundet med en intern buss 20 som vist. Nevnte SDU 10 opererer under styring fra en mikroprogrammert styreenhet 30 som den deler med de andre deler i en virtuelt lageradministreringsenhet (VMMU) hos en tilhørende prosessorenhet. Det vil si hvert mikroinstruksjonsord oppdeles i et antall deler, og delene fordeles til nevnte SDU 10 og andre deler av nevnte CPU. Som vist, mottar nevnte SDU 10 16 biter av mikroinstruksjonsordet som tilsvarer signaler VRDRO-15. Disse signaler dekodes av kretser, ikke vist, og tilføres som innmatninger. Et eksempel på en slik løsning er omhandlet i US patent 4670835. Imidlertid, for den foreliggende oppfinnelses formål, kan enheten 30 ansees som en del av SDU 10.
Lagerseksjonen 12 innbefatter et 28x32 direktelager (RAM) 12-1, et innholdsadresserbart lager (CAM) 12-3, en flerhet av bufferkretser 12-5 og dekoderkretsene 12-7 som er anordnet som vist. Som forklart her blir forskjellige deler av RAM 12-1 adressert ved kombinasjoner av mikroprogrammerende styresignaler og/eller virtuelle adressesignaler som mottas fra VAR register 18.
28x32-bit stedene i RAM 12-1 lagrer segment-deskriptor ordinnføringer som innbefatter 8, 32-bit statisk oversettelsesord (STW), 8, 32-bit aksesskontrollord (ACW), 4, 32-bit segmentside tabellord, et 32-bit deskriptor-segment basisregister (DSBR) øvre, et 32-bit DSBR nedre og 6, 32-bit arbeidsregisterord. De 8, 11-bit stedene i CAM 12-3 lagrer 8, 10-bit segmenttallord og 8, 1-bit CAM gyldighetsbiter.
Operasjonene for nevnte SDU 10 innbefatter: (1) utspørring av CAM 12-1 under anvendelse av et virtuelt segmenttall som mottas fra VAR register 18 og utkikk etter opptredenen av et treff som indikerer at det ønskede segmentet er tilstede, (2) signalering til en annen del av nevnte VMMU når et bom opptrer for segmenttallet, (3) sletting av CAM gyldighets-bitene for ugyldige segmenter, (4) validering av CAM innføringer som reaksjon på treffsignaler, (5) lagring av innholdet i arbeidsregistre i RAM 12-1 etter behov, (6) lagring av sidetabellinnføringer i RAM 12-1 som behøves til å lokalisere segment-deskriptorer, og (7) å lokalisere sidetabellen som utpekes av nevnte DSBR når den lagres i RAM 12-1.
Som beskrevet heri, deles den virtuelle adressen i et antall felt som innbefatter et 2-bit segmenttalfelt SX, et 8-bit segmenttallfelt Sy, et første 8-bit ordtallfelt ix og et andre 8-bit ordtallfelt iy. Feltet ix korresponderer med sideforskyvningsverdien relativt segmentdeskriptoren, mens feltet iy er ordforskyvningsverdien relativt segment-deskriptoren.
CAM 12-3 utspørres ved sammenkjeding av Sx og Sy feltene med en gyldighetsbit til å gi et 11-bit felt som tilføres som en datainnmatning til CAM 12-3. De åtte ordinnføringene CAM 12-3 avsøkes og når der er en identisk sammenligning tvinger CAM 12-3 en av åtte trefflinjer høy.
Som det vil fremgå av figur 1 blir de åtte trefflinjene tilført som innganger til de korresponderende åtte trinnene i bufferkretsene 12-5. Bufferkretsene 12-5 adskiller RAM 12-1 fra CAM 12-3 og øker drivstyrken av trefflinjesignalet som anvendes til å aksessere RAM 12-1.
De åtte trefflinjesignalene tjener som en deladresse som tilføres delen av RAM 12-1 som inneholder de nevnte ACWer eller nevnte STW'er. Valget av ACW'er og STW'er foretas under mikroprogrammert styreenhet 30 som en funksjon av aktiviteten eller operasjonen som utføres. Når eksempelvis en dynamisk adresseoversettelse-operasjon utføres mens delen av nevnte VMMU som lagrer side deskriptorordene aksesseres, tillater løsningen, ifølge den foreliggende oppfinnelse, aksesseringen av et ACW slik at aksessrettigheter kan kontrolleres av sikkerhetskontrolleringskretser 14 (f.eks. ringklammer og aksess (les, skriv, utfør, portkoble (gate)), størrelse (f.eks. segment, port). Dessuten, under den tid som en adresse lokaliseres til å .skape adressen for en manglende sidedeskriptor, tillater oppfinnelsen aksess til nevnte STW'er for å oppnå en annen side av sidetabellen.
Således tillater løsningen fullførelsen av oversettelsen fra den virtuell til den fysiske adresse, innbefattende all nødvendig kontrollering innenfor en fullstendig operasjonssyklus for den mikroprogrammerte kontrollenheten 30.
Som del av den ovenstående adresseoversettelsen, kan det være nødvendig å aksessere innholdet i disse arbeidsregistre. Dette foretas under mikroprogramstyring ved å sette dekoderkretsene 12-7 i stand til å generere en deladresse som gjør bruk av signaler fra enten BI 20 eller VAR 18. 6-bit deladressen som genereres som reaksjon på 3-bit signalene fra den valgte kilden (dvs., BI 20 eller VAR 18) anvendes til å velge et av 6, 32-bits arbeidsregister steder eller et av de 6, 32-bit deskriptorsegment-registersteder som en funksjon av den bestemte operasjonen som utføres som definert av mikroprogramstyreenheten 30.
Denne løsning eliminerer behovet for å aksessere forskjellige RAM'er og tilveiebringer disse som innmatninger til nevnte ALU for, som nødvendig, å generere en ny adresse. Dette resulterer i en vesentlig forenkling av styring ettersom det kreves kun et CAM og dekoder som opereres ved hjelp av et lite antall av mikrokommandoer for genereringen av den ønskede statiske oversettelsesadressen og som foretar de nødvendige aksesskontroller.
Ved å anvende den ovenstående organisering, kan plasseringen av de forskjellige elementer i SDU-10 maksimaliseres hva angår virkningsgrad. Det vil si, elementene I RAM 12-1 og nevnte adderer 16 organiseres i kolonner som minimaliserer brikkeområdet og effektforbruket. Forskjellige aspekter av denne organisasjon er vist ved hjelp av figurene 2, 3a og 4b.
Figur 2 viser i nærmere detalj organiseringen av lagerseksjonen 12 i henhold til den foreliggende oppfinnelses lære. Som det vil fremgå av figur 2, innbefatter RÅM 12-1 i seksjon 12 et par RAM'er 12-la og 12-lb. Hvert RAM innbefatter er oppstilling av celler 12-10 som er organisert i 14, 32 kolonner av bit-celler, 16 multiplekskretser 12-12, 16 les/skriv forsterkerkretser 12-14 og 32 pre-lastekretser 12-16. Hvert RAM er separert fra CAM 12-3 og dekoder 12-7 ved hjelp av en kolonne av 14 inngangsbufferkretser 12-5.
Hver første gruppe av buf f erkretser 6 til og med 13 mottar inngangstreffsignaler HITO til og med HIT7 fra CAM 12-3. den andre kretsen av bufferkretser 0 til og 5 mottar dekodede signaler DECO til og med DEC5 fra en korresponderende av dekoderkretsene 12-7a og 17-7b i blokk 12-7. Hver kolonne av bufferkretser innbefatter dessuten en bufferkrets 12-50 som lagrer tilstanden av e inngangsstyresignal V79EQ7D som genereres av enhet 30. Begge grupper av inngangsbufferkretser kan ansees å være av konvensjonell konstruksjon. De opererer til å omdanne logisk nivåinngangssignalene til høynivåets komplementære utgangssignaler. Dessuten mottar gruppene av bufferkretser et skriv-beskyttelsessignal WRTPROT fra en sentral tidsstyringsskilde, ikke vist, som er av konvensjonell utformning. Dette signal blokkerer tilførselen av innmatningssignaler til RAM 12-1 under tidsintervallet Tl når RAM 12-1 prelastes.
De komplementære utgangssignaler UT og UT blir respektive tilført som portstyringsutmatninger til de første og andre grupper av bufferkretser 12-5.
I tillegg mottar bufferkretsene 12-5 og prelastekretsene 12-16 tidsstyringssignaler Til fra den sentrale tidsstyringskilden. Tidsstyringskilden gir også tidsstyringssignaler T2 og T12 som tilføres les/skriv (R/W) forsterkerkretsene 12-14. Styres ignal ene SAT. SAT og SWRTRAMR som genereres Tinder styringen fra en mikroprogrammert styreenhet 30 tilføres multiplekser kretser 12-12 og R/W forsterkerkretser 12-14 som vist. Cellene i nevnte RAM'er prelastes ved hjelp av prelastekretsene 12-16, hvilke har konvensjonell utformning, som reaksjon på tldsbestemmelsesignalet Til. Informasjonen leses fra og skrives inn i RAM cellene via R/W forsterkerkretsene 12-14.
Hver av R/W forsterkerkretsene 12-14 hos hver RAM deles av et forskjellig par av kolonner av bitceller som vist. Signalene SAT og SAT fra den mikroprogr ammer te styreenheten 30 etablerer hvilke bitceller i parene hvis innhold skal tilføres R/W forsterkerkretsene 12-14 av multiplekserkretsene 12-12 som forklart her.
Som det vil fremgå av fig. 2, mottar hver av dekoderkretsene 12-7a og 12-7b et sett av tre inngangssignaler fra enten enhet 30 eller VAR 18. Disse signaler tilføres via multiplekser og inngangsbuf f erkretser i' blokk 12-72 som en funksjon av styresignal VRDR79EQ6 som genereres ved dekoding av VRDR biter 7-9 som mottas fra mikroprogrammert styreenhet 30 (dvs. biter 7-9 = "110" eller 6).
Nevnte CAM 12-3 innbefatter en 8x11 lageroppstilling 12-30, en flerhet av inngangsbufferkretser 12-32 og en flerhet av utgangsbufferkretser 12-34. Inngangsbufferkretsene 12-32 mottar virtuelle adressesignaler BV00 til og med BV09 og gyldighetskontrollbit signal WRT04 fra VAR 18. Tilstanden av gyldighetskontroll bit signalet WRT0A etableres ved hjelp av erstatningskretser som ikke er vist. Når adressesignalene skrives inn i CAM 12-3, settes gyldighetsbiten. Biten oppdateres på en konvensjonell måte når et adresseord modifiseres.
CAM 12-3 opererer til samtidig å sammenligne den virtuelle adressen som tilføres inngangsbufferkretsene 12-32 med samtlige av de åtte segments deskriptorord lagret i de vertikale rader eller kolonner av lagercellene i oppstillingen 12-30. Når det er en identisk sammenligning, vil den vertikale rad av celler som detekterer sammenligningen tvinge en trefflinje som forbinder seg felles med samtlige av cellene i den vertikale raden til en forutbestemt tilstand. CAM 12-3 tilfører resultatene av den samtidige sammenligning til trefflinjer HITO til og med EIT7. Disse signaler blir i sin tur tilført som innmatninger til korresponderende horisontale rader av celler i RAM lageroppstUlingene 12-10a og 12-10b via respektive bufferkretser 12-5a og 12-5b.
Utgangsbufferkretsene 12-34 tilfører resultatene fra sammenligningen som korresponderer med tilstandene for signalene HITO til og med HIT7 til erstatningskretsene. Adresseinnholdet i CAM 12-3 endres eller skrives som en funksjon av tilstandene av signaler SDWLO til og med SDWL7 som genereres av erstatningskretsene tilført et sett av ordlinjer.
For den foreliggende oppfinnelses formål, kan erstatningskretsene ansees å være av konvensjonell konstruksjon. CAM 12-3 kan initialiseres til å lagre et gitt sett av 8 segments deskriptoradresseord ved suksessivt å tvinge hver av de 8 ordlinjene til en forutbestemt tilstand.
Det vil bemerkes at CAM 12-3 gir to sett av tref f linjer. Et første sett som strekker seg i en horisontal retning forbinder seg med RAM enhetene 12-la og 12-lb, og et andre sett som strekker seg i en vertikal retning forbinder seg med erstatningskretsene som er anbragt over CAM 12-3. Dette skjer ved å føre et antall linjer i en ortogonal retning gjennom hver CAM celle. Denne løsning tillater trefflinjene og ordlinjene å bli orientert i de ønskede retninger for tilkobling av andre seksjoner av VMMU brikkene. Resultatet er en reduksjon av areal, forbedret virkningsgrad og ytelse. For ytterligere informasjon vedrørende implementering av CAM cellene, kan det vises til den relaterte norske patentsøknad 873025.
Figur 3a viser i nærmere detalj, organiseringen av deler av lagerseksjonen 12, komparatorkretsene. 14 og addereren 16 for bit posisjoner 00 til og med Q15. Som vist er lagercellene i oppstillingen 12-10, multiplekskretsene 12-12, R/W forsterkerkretsen 12-14 og trinnene av addereren 16 anordnet i kolonner eller stykker som vist. Forbindelsen til buss BI 20 og de ønskede inngangssignaler til adderertrinnene er gjort som vist. Løsningen, ifølge den foretrukne utførelsesform, minimaliserer dessuten brikke-plasskravet ved å endre seksjonene av komparatorkretsene 14 og trinn i addereren 16.
De resterende bit posisjonene 016 til og med Q31 er til-svarende anordnet som angitt i figur 4b. Figurene 3b til og med 3f viser i nærmere detalj konstruksjonen av kretsene som utgjør bit posisjoner 00 til og med 031 i figurene 3a og 4b. Nærmere bestemt viser figur 3 b konstruksjonen av de første fire bit-posisjoner 00 til og med 13. Som vist innbefatter disse posisjoner forsterker og transistorkretser som ganske enkelt overfører signaler til buss BI 20 fra deres respektive R/W forsterkerkrets under styring av mikroinstruksjons-kommandosignaler BICTL1 og BICTL2 fra enhet 30. Figur 3c viser konstruksjonen av de første 10 adderertrinn A0 til og med A9 for bit posisjoner 04 til og med Q13, mens figur 3d viser konstruksjonen av adderertrinn A10 til og med A27 for bit posisjoner Q14 til og med Q31. Som det vil ses av disse figurer, genererer hvert av adderertrinnene 10-27 forplantningssignaler for sum- og menteoverføring for et par operander A og B, mens hvert av adderertrinnene 0-9 genererer forplantningssignaler for sum- og menteoverføring for en enkelt operand, A. Derfor representerer de halve addererkretsene i figur 3c en forenklet versjon av de fulle addererkretsene i figur 3d.
I nærmere detalj, innbefatter det representative fulle adderertrinnet A10 i figur 3d en menteoverføringsforplant-nlngsseksjon som utgjøres av forbedringsmodus MOSFETS 16-1000, 16-1002 og 16-1030, en logisk seksjon som utgjøres av MOSFETS 16-1032 til og med 16-1046 som er sammenkoblet som NELLER, OG, EKSNELLER og EKSELLER porter og en eksklusiv eller sumseksjon som innbefatter invertererkretser 16-1020 og 16-1022 og MOSFETS 16-1004 og 16-1006. Sum bitene (A10 eller S10) som genereres av trinnet tilføres bussen BI via tretilstands bufferkretser 16-1016 og 16-1014 som en funksjon av henholdsvis kontrollsignaler BICTL1 og BICTL2. Kontroll-signalet CTLB anvendes til å overføre den valgte B operante verdien til buss BI. En 5:1 multiplekserkrets som utgjøres av MOSFETS 16-1054 til og med 16-1058 anvendes til å velge en ønsket B operandverdi under styring av mikroinstruksjons-kommandosignaler VRDR(0) til og med VRDR(4) dekodet fra enhet 30. Den valgte B operand verdien tilføres det fulle adderertrinnet og buss BI via invertererkretser 16-1050 og 16-1052 og MOSFET 16-1012 som vist. Figur 3c viser det representative adderertrinnet Al som innbefatter en eksklusiv ELLER seksjon som utgjøres av invertererkretser 16-220, 16-222 og MOSFETS 16-204 og 16-206 og en forplantningseksjon for menteoverføring som utgjøres av MOSFETS 16-200 og 16-202. Sumbitene (A0 og SO) tilføres buss BI via tretilstandsbufferkretser 16-216 og 16-214 som en funksjon av respektive kommandosignaler BICTL1 og BICTL2. Styresignal CTLADD som tilføres MOSFET 16-210 anvendes til å overføre sumsignalet SO mens styresignal CTLB som tilføres MOSFETS 16-212 overfører en NULL B operandverdi til buss BI. Figur 3e viser konstruksjonen av de siste to adderertrinn A28 og A29 som strekker seg forbi R/W forsterkerkretsene som vist i figur 4b. Hvert halve adderertrinn genererer sum og nettoverføringssignaler for en enkelt B operand som velges av 5:1 multiplekser krets. I nærmere detalj, slik det fremgår av figuren, er det representative adderer trinnet A28 konstruert lignende det halve adderertrinnet i figur 3c med tilføyelsen av en multiplekserkrets lik den i figur 3g for valg av B operand verdien. Det vil si at adderertrinnet innbefatter en forplantningsseksjon for menteoverføring som utgjøres av forbedringsmodus MOSFETS 16-2800 og 16-2802 og en eksklusiv ELLER seksjon som utgjøres av invertererkretser 16-2820 og 16-2822 og MOSFETS 16-2804 og 16-2806: Som reaksjon på kontrollsignal CTLADD som tilføres MOSFET 16-2813, tilføres sumbiten B28 til buss BI via tretilstands bufferkrets 16-2814 som en funksjon av kommandosignal BICTL2. Kontrollsignal CTLB som tilføres MOSFET 16-2812 anvendes til å overføre B operanden B28 som velges av nevnte MOSFETS 16-2854 til og med 16-2858 tilført via invertererkretser 16-2852 og 16-2850 og MOSFET 16-2812 til buss BI.
Figur 3f viser konstruksjonen av bit komparator seksjonene i sikkerhetskontrolleringskretser 14. Som det vil fremgå av figur 4b, blir første og andre grupper av bit komparator-seksjoner vekslet mellom adderertrinn A2 til og med All og A18 til og med A27 som vist ved figur 3a. Den første gruppen av bit komparatorseksjoner (C1-C9) mottar A operandsignaler SS0 til og med SS9 fra SDRAM 12-la og B operandsignaler lx(12) til og med ix (21) fra VAR register 18. Den andre gruppen av bit komparatorseksjoner (C1-C9) ikke vist, mottar A operandsignaler GS0 til og med GS9 fra SDRAM 12-lb og B operandsignaler Iy(22) til og med Iy(31) fra VAR register 18. Hver av bit-komparatorseksjonene genererer et forplantningssignal for menteoverføring som angir resultatet av sammenligningen av paret av A og B operander.
Nærmere bestemt innbefatter den representative bit-komparator seksjonen CO i figur 3f en forplantningsseksjon for mente-overføring som utgjøres av forbedringsmodus MOSFETS 16-230 til og med 16-234 og en kombinasjonslogikk seksjon som utgjøres av MOSFETS 16-236 til og med 16-246. Med unntagelsen av komparatorseksjonen C9, mottar hver kompara-torseksjon et menteoverførings-innsignal (f.eks. CYIN(l)) fra den foregående seksjon. B operandverdien ix (12) tilføres seksjonen via en invertererkrets 16-248.
Det kan antas at lignende konstruerte komparator kretser sammen med de nødvendige registre anvendes til å utføre de forskjellige ringkontrolleringsoperasjoner. For den foreliggende oppfinnelses formål blir de bestemte kretsene anvendt til å konstruere de forskjellige trinn i adderer 16 og seksjoner av sikkerhetskontrolleringskretser 14 kan anses å være av konvensjonell konstruksjon.
Figur 3g viser i nærmere detalj et av settene av multiplekser kretser og en av les/skriv (R/W) forsterkerkretsene i henholdsvis blokk 12-12 og 12-14. • Som vist innbefatter multiplekserkretsen to par av forbedrings-MOSFETS 12-120, 12-122 og 12-124, 12-126. Hvert par er tilkoblet en forskjellig RAM celle og klargjøres av et forskjellig av de komplementære styresignaler SAT og SAT.
Som vist innbefatter hver les/skriv forsterkerkrets et par for-lastings MOSFETS 12-140 og 12-142, en skrivforsterker-krets som utgjøres av MOSFETS 12-145 til og med 12-148. Forsterkerkretsen innbefatter dessuten en D-holdekrets som utgjøres av seriekoblede invertererkretser 12-150 og 12-152 og MOSFETS 12-154 og 12-156, og en tretilstandsbufferkrets som innbefatter MOSFETS 12-160 til og med 12-164. Under tiden Tl for hver operasjonssyklus, vil for-lastings MOSFETS 12-140 og 12-142 for-laste RAM bit linjene som er knyttet til disse høyt.
D-holderkretsen klargjøres under leseoperasjonssyklus som defineres av tisstyringssignalet T2. Det vil si at forsterkerkretsen 12-14 settes i stand til å lese eller skrive som en funksjon av styresignalet SWRTRAMR som genereres av enheten 30. Når styresignalet er en binær EN eller er høy, setter det et par MOSFETS 12-170 og 12-172 i stand til å anbringe skriv-forsterkerkretsen i en tretilstands tilstand som essensielt fjerner den fra kretsen. Således blir den upåvirket av signaler fra BI 20 som tilføres dens innganger fra et par invertererkretser 12-174 og 12-176. Ved det tidspunktet blir datasignalet som lagres av D-rollekretsen utlest til BI20 når styresignalet BICTL1 fra enheten 30 tvinges til en binær EN eller høy tilstand. Dessuten ved det tidspunktet, blir paret av komplementære utgangssignaler UT og UT tilført det korresponderende trinnet i addereren 16.
Tilstanden av styresignalet SAT bestemmer informasjonsvalget fra nevnte STW's RAM cellebitposisjon eller ACW RAM cellebit posisjonen. Når signalet SAT er en binær EN eller høyt, blir innholdet i nevnte STW RAM bit posisjon tilført som en innmatning til addererens 16 trinn. Etter tidspunktet T2, når T2 er en binær EN, vil informasjonsinnholdet som leses fra nevnte RAM forbli lagret i holdekretstransistorene for nok en fullstendig operasjonssyklus. Dette skjer på grunn av at signal T2 setter MOSFET 12-154 i stand til å holde innholdet.
Som tidligere nevnt er nevnte RAM'er 12-la og 12-lb i figur 2 funksjonelt organisert til å lagre 2 informasjonstyper. En seksjon lagrer ACW/STW informasjonen, mens den andre seksjonen lagrer arbeidsregisterinformasjonen. Nevnte STW/ACW åtte ord aksesseres eller velges for aksess av CAM 12-3 som reaksjon på et treff. Arbeidsregisterinformasjonen velges av dekoderen 12-7 som reaksjon på mikrokommando-signaler fra mikroprogramstyreenhet 30 uavhengig av CAM-valget.
Figurene 4a og 4b viser i nærmere detalj, tilegnelsene og organiseringen av nevnte RAM'er 12-la og 12-lb. Idet det vises til fig. 4a, vil man se at de seks arbeidsregisterstedene 1-5 er tilegnet adresser 0-5 og adresseres av mikroprogramstyreenheten 30 som forklart her. De neste to stedene 7 og 8 korresponderer med deskriptorsegment basis-registeret (DSBR), henholdsvis øvre og nedre, og adresseres også av styreenheten 30.
Nevnte DSBR definerer prosessorenhetens adressemodus og den eksisterende prosessadresseplass. Dersom de første to ord i nevnte DSBR er null, er nevnte CPU så i en absolutt adresseringsmodus og adresseplassen i prosessen er begrenset til hva som er lagret i fysisk lager. Dersom de første to ordene i nevnte DSBR er større enn NULL, er nevnte CPU i en oversettelse adressemodus og adresseplassen i prosessen defineres av deskriptor-segment tabellen (DSPT) som pekes mot av nevnte DSBR. Deskriptor-segment sidetabellstedene 17-20 adresseres av styreenheten 30 og/eller de øvre biter i den virtuelle adressen.
Segment-deskriptoren lagres i en segment tabell og kan oppta inntil tusen innføringer med 64 biter hver. Ved det tidspunkt som en prosess startes, utpeker operativsystemet det ønskede system og bruker segmentdeskriptorer til prosessen. Under utføringen av prosessen, blir ytterligere segmenter tilføyet etter behov til segmenttabellen i stigende orden til å holde tabellen så kompakt som mulig. De åtte mest nylig anvendte segment-deskriptorer lagres i RAM'ene 12-la og 12-lb. Nærmere bestemt blir bitene av deskriptoren oppdelt på basis av funksjon og lagret i STW og ACW stedene. STW stedene 9-16 adresseres av styreenheten 30 og et segment CAM treff. ACW stedene 21-28 adresseres av styreenheten 30 og segment CAM "treffet".
Figur 4b viser en nærmere detalj av informasjonstypen som lagres innenfor de forskjellige bit posisjonene av de forskjellige stedene av RAM 12-la og 12-lb. Den viser også bit-stykke organiseringen av adderer 16, sikkerhets enhet komparatorkretsene 14 og RAM cellene som medfører en forenklet utformning, økt ytelse og tetthet.
Som det vil fremgå av figuren innbefatter deskriptorsegment basisregisterets øvre (DSBRU) del det følgende: 1) Bit 1 eller NS er en ny stabelindikator. Dersom denne bit settes til en, blir de nye anrop og returinstruksj onene tillatt og feller vil bevirke at en ramme oppnås/frafalles i det passende stabelsegmentet i den nye stabelen. Dersom denne bit settes til null, blir de nye anrop og returinstruk-sjonene ikke tillatt og feller vil bli behandlet under anvendelse av fellebesparelseområder. 2) Bit 1 eller NI er en ny I/O (inn/ut) indikator. Dersom denne bit settes til én, krever utførelsen av I/O ny I/O håndtering. 3) Biter 4-23 eller PGFO-19 definerer en sideramme tallverdi som korresponderer med de høye ordens 20 biter i den 30-biters fysiske adressen i deskriptor-segmenttabellen (DSPT). 4) Biter 24-31 eller 0FS0-7 definerer en forskyvning som korresponderer med de midt-ordens åtte biter i den 30-biters fysiske adresse i deskriptor-segmenttabellen (de resterende lav-ordens to biter i den 30-biters fysiske adressen settes til null).
Nevnte DSBRL omfatter det følgende:
1) Biter 2-9 eller SB0-7 definerer en stabel basisverdi. Dette 8-bitfelt og den 2-biters eksisterende ring definerer segmenttallet for det eksisterende stabelsegmentet når ny stabelfunksjonalitet anvendes. 2) Biter 24-31 eller PSO-9 definerer en prosess eller segment-deskriptor tabell dimensjon. Dette felt inneholder en 10-bit størrelsesverdi som representerer det største gyldige segmenttall. Dersom segmenttallet for en virtuell adresse er større enn prosessens eller segment-deskriptorens tabellstørrelse, blir så en segmentfeil rapportert.
Deskriptor-segment sidetabellens (DSPT) innføring består av følgende: 1) Bit 0 er en gyldig indikator. Dersom gyldighetsbiten settes til én, er så deskriptoren gyldig og de resterende biter peker mot siderammetallet i segment-deskriptortabellen. 2) Biter 1-2 eller V, M er henholdsvis anvendte og modifiserte indikatorer. For denne innføring må de anvendte og modifiserte settes til enere. 3) Biter 4-23 eller PGFO-19 definerer en sideramme tallverdi som korresponderer med de øvre 20 biter i den fysiske adressen i segmentdeskriptortabellen. 4) Biter 24-31 eller MBZ0-7 settes til nuller og korresponderer med de nedre åtte biter i den fysiske adressen av segment deskriptortabellen (de gjenværende lav-ordens to biter i nevnte 30-bit fysiske adresse settes til nuller).
Statisk oversettelsesord (STW) består av følgende:
1) Bit 0 eller V er en gyldig indikator. Dersom gyldighetsbiten settes til én, er så segment-deskriptoren gyldig og de resterende biter i segment-deskriptoren anvendes til å utføre den virtuelle til fysiske adresseoversettelse og de passende aksess-skive kontroller. Dersom gyldig settes til null, er segment-deskriptoren ugyldig og en segmentfeil rapporteres. 2) Bit 2 eller PR er en priviligert indikator. Dersom den settes til én, blir utføring av priviligerte instruksjoner tillatt kun dersom i ring null. Hvis satt til null, tillates ingen priviligerte instruksjoner, og hvis én møtes, blir så en priviligert instruksjonsfeil rapportert. 3) Biter 4-23 PGFO-9 definerer et siderammetall og korresponderer med de øvre 20 biter i den 30-biter fysiske adressen i side-deskriptortabellen eller starten av segmentet i lager. 4) Biter 24-31 eller 0F0-7 definerer en forskyvningsverdi som inneholder de midtre åtte biter i den fysiske adressen. Dersom segmentet ikke sideveksles, anvendes dette felt ikke og må være null. Dersom segmentet sideveksles, vil det så sammen med sidetallet angi starten av dette segments sidetabell (de gjenværende lav-ordens to biter av den 30-bit fysiske adressen settes til nuller).
Aksesskontrollordet (ACW) består av det følgende:
1) Bit 0 eller P er en sidevekslet indikator. Dersom satt til én, er segmentet sidevekslet. Siderammetallet og det førskjøvne felt definerer starten av sidetabellen. Dersom satt til null, er segmentet ikke sidevekslet. Siderammetallet definerer starten av det ikke-sidevekslete segmentet i hovedlager. Et ikke-sidevekslet segment må starte og slutte på en sideavgrensning og bestå av tilgrensende siderammer. 2) Bit 1 eller E en utfør-tillatelse indikator. Instruk-sjonsinnhentinger tillates fra dette segment kun dersom indikatoren er en én og prosessen utføres i en ring som er større enn eller lik RI og mindre enn eller lik R2. Bemerk at når utføre-tillatelse indikatoren er på en les-tillatelse-indikatoren er av, skal segmentet behandles som et "utfør-kun" prosedyre-segment. Et utfør-kun prosedyresegment tillates å referere data innenfor seg selv til tross for mangel eller les-tillatelse. Imidlertid nektes les-tillatelse overfor alle andre prosedyrer i andre segmenter. Dersom et forsøk på å utføre en instruksjon i et segment som ikke har noen utfør-tillatelser, vil så en aksessfeil blir rapportert. 3) Biter 2-3 eller RI angir det minst priviligerte ringtallet i les/skriv (r/w) klammeret for dette segment (0-R1).- Det vil si at en prosedyre som løper i et ringtall fra 0-R1 (skriv-klammeret) kan skrive inn i dette segment. 4) Biter 4-5 eller R2 angir det minst.priviligerte ringtallet i les/utfør klammeret i dette segment (R1-R2). Det vil si at prosedyre som løper i et ringtall fra R1-R2 kan lese eller utføre dette segment. 5) Biter 6-15 eller SSO-9 er segmentstørrelsefelt som definerer størrelsen av segmentet i sider. Dersom segmentet er sidevekslet, definerer størrelsen også størrelsen av sidetabellen. Dersom den virtuelle adressen er større enn segmentstørrelsen, blir så en segmentfeil rapportert. 6) Bit 16 eller C er en kompatibilitetsindikator. Dersom satt til en, vil utføre-klammeret strekke seg fra ring 0 til R2 for å simulere oppførselen av tidligere aksessstyrings-realiseringer. Dersom satt til en null, strekker utfør klammeret seg fra RI til R2. 7) Bit 17 eller G er en portindikator. Dersom satt, er segmentet et portsegment. 8) Bit 18 eller R er en les-tillatelseindikator. Data-innhentinger til dette segment ved hjelp av andre segmenter tillates kun dersom denne bit er på og dersom prosessen utføres i en ring av likt eller større privilegium til R2.
Dersom et forsøk gjøres i strid med les-tillatelse, vil så en aksessfeil bli rapportert. 9) Bit 19 eller W er en skriv-tillatelse indikator. Datalagringer til dette segment tillates kun dersom denne bit er på og dersom prosessoren utfører i en ring av likt eller større privilegium til RI.
Dersom et forsøk foretas i strid med skriv-tillatelse, rapporteres så en aksessfeil. 10) Biter 20-21 eller R3 angir det minst priviligerte ringtallet i anropsklammeret for dette segment (R2-R3). 11) Biter 22-31 eller GSO-9 er portdimensjonsfelt. Dersom portindikatoren settes til én, angir portdimensjonsfeltet antallet av ord i en portseksjon av et segment. Dette felt anvendes under en anropsinstruksjon.
Som nevnt ovenfor er de forskjellige operasjonene som utføres av nevnte SDU 10 i fig. 1 under styringen fra mikroprogrammert styreenhet 30. Disse operasjoner defineres av de forskjellige mikroinstruksjoner i figurene 6a til og med 6c. Den første typen av mikroinstruksjonsord som er vist i figur 6a definerer en statisk adresse oversettelses (SAT) operasjon. Som vist blir de to bit-posisjonene (0,1) lengst mot venstre i dette mikroinstruksjonsord satt til NULLER. De andre feltene i ordet er ikke særlig viktige for den foreliggende oppfinnelse. Imidlertid vil det bemerkes at bit-posisjoner 6-9 inneholder informasjon som anvendes til å styre operasjonen av nevnte SDU 10. Eksempelvis lagrer bitposisjonen 6 en skriv-bit, mens bit-posisjoner 7-9 lagrer en logisk adresse som kan ha verdiene 000 til og med 111. Når den oktal logiske adressen har en verdi lik 000, blir de øvre 32 bitene i deskriptorsegmentets basisregister (DSBR) adressert. Når den oktale logiske adressen har en verdi lik 001, blir de nedre 32 bitene i DSBR adressert. Tilstanden av skriv bit 6 etablerer hvorvidt informasjon leses fra eller skrives inn i nevnte sted.
Oktale logiske adresseverdier lik 010 til og med 101 tillater uttrykkelig adresseringen av deskriptorsegment sidetabell-innføring null (DSPTO) til og med tre (DSPT3). En oktal logisk adresseverdi lik 110 angir adresseringen av et hvilket som helst av de fire DSPT stedene gjennom deladressen som korresponderer med de øvre to hitene i det virtuelle adressefeltet Sx som er vist i figur 6d. En oktal logisk adresseverdi lik 111 klargjør aksessen av de statisk oversettelsesordene (STW) under anvendelse av segment CAM "treffet" (SCH). Dette er hovedfunksjonen som utføres av den statiske adresse-oversettelsesoperasjonen som skal anvende et STW til å oversette den virtuelle adressen for å oppnå sidetabellinnføringen for innhenting av en annen side i tilfellet av en manglende sidedeskriptor.
En andre type av mikroinstruksjonsord som anvendes for å kontrollere operasjonen av SDU 10 er et blandet felt som er benevnt MS2 vist i figur 6b. De to bit-posisjonene (01) lengst til venstre i dette mikroinstruksjonsordet settes til ENERE. Bit-posisjoner 6-9 gir den samme informasjon som mikroinstruksjonsordet i figur 6a gav. Dette mikroinstruksjonsord gjenfortolker de oktal logiske adressebitene 7-9 for å sette de forskjellige RAM stedene innenfor nevnte SDU 10 i stand til å bli aksessert. Nærmere bestemt, når den oktale logiske adressen har verdien 000 til og med 101, blir arbeidsregisterstedene WR0 til og med WR5 aksessert. Den oktal logiske adresseverdien av 111 klargjør aksessen av aksesskontrollordene (ACW) under anvendelse av segment CAM treffet (SCH).
En tredje type av mikroinstruksjonsord som er vist i figur 6c anvendte for kontrollering av operasjonen av SDU 10 er en mikroinstruksjon som anvendes til å angi en dynamisk adresseoversettelse DAT operasjon. De to bit-posisjonene (01) lengst mot venstre settes til "01". Dette betyr at aksess til ACW stedene i nevnte SDU RAM 12-1 gjør bruk av segment CAM "treffet" som deladressen. De andre feltene i DAT mikroinstruksjonsordet, selvom det ikke er relevant for en forståelse av den foreliggende oppfinnelse, anvendes til å kontrollere oversettelse (f.eks. tillate CAM bom), aksesskontroll (f.eks. tillate les, skriv, etc.) og ring-kontrollerings-operasjon.
En fjerde type av mikroinstruksjons ord som er vist i fig. 6d som anvendes for lasting av den virtuelle adressen inn i VAR registeret 18 er et blandet felt som kalles MSC1. De to bit-posisjonene (01) lengst mot venstre i dette mikroinstruksjonsordet settes til "10". Bit-posisjoner 12-14 kontrol-lerer lastingen av VAR registeret 18 som følger: Når oktalverdien som en verdi "000", forblir innholdet det samme, en verdi lik "001", last VA register fra buss BI, mens en verdi lik "010" dekrementerer VA innholdet med én. en oktalverdi lik "011" inkrementerer VA-innholdet med én, en verdi lik "100" sletter VA registeret til NULLER og en verdi lik "101" vil også laste VA registeret. Oktal-verdier lik "110" og "111" henholdsvis dekrementerer og inkrementerer innholdet med to. De andre feltene i mikroinstruksjonsordet er ikke viktige for den foreliggende oppfinnelse.
Fra det ovenstående vil man se at kun noen få mikroinstruksjoner behøves for å utføre et antall av forskjellige operasjoner parallelt som krever aksess til forskjellige typer av registersteder som alle er innenfor det enkelt SDU RAM 12-1.
Operasjonen av SDU 10 skal nå beskrives med henvisning til flytskjemaet i figur 5. Figur 5 illustrerer en normal les lagersekvens.
Som vist innbefatter sekvensen utførelse av de operasjoner som er angitt med rubrikkene 500 - 504. Disse innbefatter lasting av VAR registeret 18, omdannelse av den virtuelle adresse til en fysisk adresse, utføring av aksesstyring, lasting av de data som mottas fra bufferlager og lasting av VAR 18 med dataen. Nærmere bestemt skal dette bety at den virtuelle adressen som har formatet ifølge 6e lastes fra bussen BI inn i VAR register 18 under styringen fra et første mikroinstruksjonsord som er formatert som MSC1 mikroinstruksjonen vist i figur 6e. Denne adresse tilføres SDU10 samt en ikke vist sidedeskriptor-enhet (PDU). Nevnte PDU utfører sideoversettelsen av den 20-biters virtuelle adressen til en 20-biters fysisk adresse parallelt med SDU-operasjonene.
Ettersom operasjonen av nevnte PDU ikke er vesentlig for forståelsen av den foreliggende oppfinnelse, er den ikke beskrevet her. For ytterligere informasjon, kan det imidlertid vises til den relaterte norske patentsøknad 873025.
Som det vil fremgå av figur 5, blir operasjonene i blokk 502 utført under styring fra et andre mikroinstruksjonsord som er formatert som DAT mikroinstruksjonen i figur 6c. Segmenttallet for den virtuelle adressen tilføres CAM 12-3. I tilfellet av en identisk sammenligning, blir et av de SDU åtte treffsignalene en binær ÉN. Antar man at den fysiske adressen sendes til bufferlager og under bufferlagerlese-operasjonen, utfører nevnte SDU 10 de nødvendige aksesskontroller. Dette vil si at DAT mikroinstruksjonsordet bevirker nevnte SDU RAM 12-1 til å aksessere ACW delen som deladreseres av treffsignalet SCH. ACW delen av SDU RAM 12-1 anvendes av sikkerhetskontrolleringskomparatorkretsene 14 i nevnte VMMU, under styring fra DAT mikroinstruksjonsordet 6c, til å utføre ringvalg, aksess-kontrollering og ringreduksjon.
Ringvalget utføres ved hjelp av ringkontrollerende logiske kretser som inngår i sikkerhetskontrolleringskretser 14 som gjør bruk av ACW RI, R2 og R3 verdier sammen med innholdet i et eksisterende ringregister (RCR), et effektivt ringregister (REF) og verdien av ringtallet (RN) i den virtuelle adressen (VA) til å danne en verdi (RNG). Under styring fra DAT mikroinstruksjonsringens genereringskontrollfelt biter 12.14, blir sikkerhet overvåket som følger.
Sikkerhets-kontrolleringskretsene 14 anvender ACW bit posisjoner 1 til og med 5 og bit posisjon 16 til å gjennomføre utføre tillatelsene og ringklammerkontrollen. Dersom sammenligningskretsene 14 eksempelvis bestemmer at felt RN i figur 6e er større enn ACW feltet R2 (biter 4-5) eller dersom ACW delt RI (biter 2-3) er større enn RN og ACw, er kompatibilitet-bit 16 ikke på eller utfør tillatelse indikator bit 18 er ikke på og mikroinstruksjons ord biter 6-8 er lik en oktal 1 eller 4, blir en aksessfeil rapportert.
ACW bit posisjoner 4-5 og ACW bit posisjon 18 anvendes av kretser 14 til å utføre lesetillatelser og ringklammer-kontroll. Dersom kretsene 14 eksempelvis detekterer at verdien (REFF), definert ved de større av verdiene RN og REF, er større enn ACW felt R2 (biter 4-5) eller les-tillatelse indikatorbit 18 ikke er på og mikroinstruksjons ordbiter 6-8 er lik en oktal 2 eller 7, blir en aksessfeil rapportert.
Dessuten anvender kretsene 14 ACW bit-posisjoner 2-3 og bit-posisjon 19 til å gjennomføre skrivtillatelsene og ringklammerkontrollen. Når eksempelvis kretsene 14 detekterer at REFF er større enn ACW felt RI ( biter 2-3) eller skriv-tillatelseindikatorbiten 19 ikke er på og mikro-instruksjonsordbitene 6-8 er lik en oktal 4 eller 7, blir en aksessfeil rapportert.
Sikkerhetskontrolleringskretser 14 anvender ACW bit posisjoner 2-5, 20-21 og bit-posisjon 17 til å gjennomføre porttillatelsene og ringklammerkontrollen. dersom eksempelvis kretsene 14 detekterer at felt RI er større enn REF og mikroinstruksjonsordene bitene 6-8 er lik en oktal 5, blir en portfeil rapportert. Tilsist anvender kretsene 14 ACW bitposisjoner 6-15 til å gjennomføre en segment størrelsekontroll. Dersom kretsene 14 eksempelvis detekterer at de midtre biter 12-21 i den virtuelle adressen er større enn segment størrelse biter 6-15, blir så en stør-relses-feil rapportert.
Ved fullførelsen av aksesskontrolleringen, under styringen fra et annet MSC1 mikroinstruksjonsord, blir de data som er angitt av den fysiske adressen som mottas fra bufferlageret lastet inn i de passende CPU registre og den neste virtuelle adressen lastes inn i VAS registeret 18. Operasjonssekvensen for blokker 502 og 504, hvori sløyfen av MSC1 og DAT mikroinstruksjonsordene gjentatte ganger aksesseres, fortsetter så lenge som treff detekteres. Når en deskriptor-bom tilstand detekteres, bevirker dette at SDU 10 under strying fra styreenheten 30 gjennomfører operasjonssekvensen som er betegnet med blokkene 506 til og med 530 som er nødvendig for innhenting av en manglende segment-deskriptor. Opptredenen av et side-deskriptorbom avbryter også sekvenssløyfen og bevirker at en sekvens av operasjoner som er lik de som er vist i blokkene 506 til og med 530 utføres for innhenting av en manglende sidedeskriptor fra sidetabel-lene som er lagret i bufferlager eller lager. Operasjonen av nevnte PDU skal beskrives kun i den utstrekning som den anvender informasjon som aksesses fra SDU 10.
Nærmere bestemt blir segmenttallet i den virtuelle adressen som har formatet av figur 6e tilført CAM 12-3. Ved fraværet av en identisk sammenligning, vil samtlige av de åtte treffsignalene forbli binære NULLER som resulterer i genereringen av en bomtilstand som detekteres av CAM 12-3 (alle NULLER detekteres). Ettersom det antas at der var en feil som anga at de ønskede data ikke kunne innhentes fra bufferlageret, utfører mikroprogramstyreenheten 30 via et MSC2 mikroinstruksjonsord en kanselleringsoperasjon som eliminerer eller kansellerer trinnet som skulle til å bli utført. Styreenheten 30 går så i syklus til det første stedet for en manglende håndteringsrutine.
Som angitt med blokk 508, er den første utførte operasjon å slette bomtilstanden. Dette gjøres under styringen fra et SAT mikroinstruksjonsord som tilbakestiller den passende bit posisjon innenfor et syndromregister som anvendes til å lagre bort feiltilstander i tillegg til annen statusinformasjon. Dessuten under styringen fra et annet MSC2 mikroinstruksjonsord, blir informasjon som vedrører en skriveoperasjon lagret i et midlertidig, såkalt stjerne-register. Denne informasjon tillater systemet å gjøre omigjen en skriveoperasjon dersom den bestemte operasjonen viser seg å være en skriveoperasj on.
Ved fullførelsen av husholdningsoperasjonene i blokkene 506, 508 og 510, begynner SDU 10 det første trinnet i manglende segment-deskriptor sekvensen. Som det vil fremgå av blokk 512, under styring fra et annet SAT mikroinstruksjonsord fra mikroprogramstyreenhet 30, genererer SDU 10 adressen for STW og skriver i nevnte CAM 12-3. For å generere den ønskede adressen, blir et passende av de fire DSPT-ord stedene i SDU RAM 12-1 aksessert som reaksjon på SAT mikroinstruksjonsordet. Innholdet av DSPT stedet som er angitt av biter 7-9 i SAT mikroinstruksjonsordet utleses fra RAM 12-1 til adderer 16.
Under den neste syklus, under styringen fra et ytterligere SAT mikroinstruksjonsord, som angitt med blokk 514, kontrolleres DSPT-ordet for et Bom. Dette vil si at den passende biten (dvs. bit 0) granskes for å bestemme hvorvidt der var et bom eller ikke i DSPT ordet (dvs. ikke tilstede i SDU RAM 12-1). Dersom der var et bom, bevirker mikroprogramstyreenheten en avgrening til en del-rutine FIX DSPT som anvendes til å rette på DSPT bommen. Dette involverer den bruken av SDU 10 og, særlig, aksess til DSBR ord stedene for å generere adressen for innhentning av den neste siden fra lager.
Antar man at der var et treff, blir, under en neste syklus, som vist i blokk 516, den genererte adressen som er en kombinasjon av en del av den virtuelle adressen i VAR registeret 18 og DSPT ordet anvendt til å aksessere nevnte SDW fra bufferlager under styring av et annet MSC2 mikroinstruksjonsord. Nevnte SDW er en av innføringene i segmenttabellen som er knyttet til den virtuelle adressens segmenttall.
Den fordrede verdi bringes inn i SDU 10 via buss BI 20, og den første halvdelen av segment-deskriptor ordet som korresponderer med nevnte STW skrives inn i nevnte SDU RAM 12-1. Under den neste syklus som angitt med blokk 518, vil nærmere bestemt et SAT mikroinstruksjonsord som har skriv registerbit 6 satt til en binær ÉN og adresse biter 7-9 satt til "111", bevirke STW-verdien til å bli skrevet inn i et av de åtte STW stedene av SDU RAm 12-1 som er definert av segment CAM treffet. Dette vil si at denne sekvens initielt ble innført på grunn av en segment CAM bom. Det virtuelle adresseinnholdet i VAR 18 ble skrevet inn i segment CAM 12-5 før segment-deskriptor ordet ble mottatt fra bufferlager. Ved dette tidspunkt ble STW bitene i segmentdeskriptorordet skrevet inn RAM stedet som er utpekt av segment CAM treffet. SAT mikroinstruksjons ordet genererer signal SAT som setter multiplekserkretsene 12-12 i figur 2 i stand til å anvende signaler fra R/W forsterkerne 12-14 kun til STW bit posisjonene i nevnte RAM'er 12-la og 12-lb. Tilstanden for bitposisjonen 6 i SAT mikroinstruksjons ordet tvinger signal SWRTRAMR til en binær NULL, hvilket bevirker R/W for-sterkeren 12-14 i figur 3g til å tilføre komplementære signaler til hvert STW bit sted.
Som angitt med blokk 520, under den tid som den andre halvdelen av adressen genereres (dvs. den andre dobbelt ord adressen i segment-deskriptoren som er lagret i bufferen), vil nevnte SDU 10, under styring fra et neste SAT mikroinstruksjons ord, kontrollere tilstanden av biten lengst mot venstre (bit 1) i segment-deskriptorordet for å bestemme om der var en gyldig segmentdeskriptor. Hvis den ikke er en binær ÉN som angir at den er ugyldig, vil mikroprogramstyreenheten 30 bli avgrenet til en segment deskriptor feilrutine SD-FLT som angitt med blokk 520. Denne rutine lagrer bort informasjon i SDU arbeidsregisterstedene etter behov for håndtering av feilen.
Antar man at segmentdeskriptoren er gyldig, blir en annen leseoperasjon utført som angitt med blokk 522 under styringen fra et MSC2 mikroinstruksjonsord. På dette tidspunkt blir nevnte ACW innhentet og skrevet inn i SDU RAM 12-1. Dette vil si, som angitt med blokk 524, at denne operasjon utføres av et MS2 mikroinstruksjons-ord hvor de to bitene lengst mot venstre er en ÉN, skriveregister bit 6 er en binær ÉN og bitene 7-9 er "111". Resultatet er at nevnte ACW skrives inn i nevnte sted som er angitt av biter 7-9 og segment CAM treffet som angitt ved blokk 524. Dette vil si at på dette tidspunkt er signal SAT en binær NULL. Dette setter multiplekserkretsene 12-12 i stand til å tilføre signaler kun til ACW bit posisjonene. Tilstanden av bit posisjon 6 tvinger på ny signal SWRTRAMR til en binær NULL som bevirker hver R/W forsterker til å føre komplementære signaler til hvert ACW bit sted.
Som det vil fremgå av blokk 526, blir et ytterligere opprensingstrinn utført under styringen fra et annet MSC2 mikroinstruksjonsord før man forlater sekvensen i tillegg til omgjøringsoperasjonen i blokk 528. Ettersom nevnte SDU 10 utførte en leseoperasjon, vil denne operasjon resultere i omdannelse av den virtuelle adresse til en fysisk adresse for lesning av buffer og for å utføre aksessstyring parallelt med bufferleseoperasjonen som angitt med blokk 530.
Dernest går sekvensen tilbake til den opprinnelige sløyfen. Ettersom den manglende informasjonen er blitt erstattet, vil et treff bli generert og de mottatte data vil bli lastet sammen med lasting av VAR register 18 med den neste virtuelle adressen som skal oversettes. Som tidligere nevnt vil SVU 10 forbli i denne sløyfe inntil opptredenen av enten et segment eller side-deskriptor-bom. I tilfellet av en manglende side-deskriptor, må en sidetabellord PTW innføringsadresse genereres som del av sekvensen for et sidevekslet segment. Dette vil si at nevnte ACW inneholder en bit som angir hvorvidt segmentet er sidevekslet eller ikke. Basert på denne tilstand av denne bit, utfører SDU 10 disse operasjonene for sidevekslede og ikke-sidevekslede segmenter. Denne operasjon foretas som reaksjon på et SAT mikroinstruksjons ord hvor skriveregister bit 6 er en binær NULL og bitene 7-9 er "111". Dette setter STW bitene i nevnte SDW til å bli utlest fra SDU RAM 12-1. Nevnte STW inneholder basisadressen og forskyvningen av nevnte PTW i sidetabellen som er lagret i bufferlager. De virtuelle adressebitene i VAR register 18 anvendes til å angi den bestemte side-tabellinnføringen. Under anvendelse av denne informasjon, blir den resulterende adressen beregnet i adderer 16 og lagret i STAR-registret hvor det deretter anvendes til å hente nevnte PTW fra buf f erlageret. I tilfellet av et ikke-sidevekslet segment, under styringen fra et forskjellig SAT mikroinstruksjons ord, genererer addereren 16 side deskriptoradressen fra nevnte STW biter uten å måtte aksesse bufferlageret. Således gir ACW lager addererfleksibilitet for å utføre adresse oversettelsesoperasjoner som involverer sidevekslede og ikke-sidevekslede segmenter.
Fra det ovenstående vil man se hvorledes organiseringen av SDU 10, i henhold til den foreliggende oppfinnelse, muliggjør at et utvalg av operasjoner kan utføres ved å aksessere et antall av forskjellige typer av registersteder innenfor et enkelt RAM under styringen fra meget få mikroinstruksjonskommandoer.
Det vil være åpenbart for fagfolk at mange endringer kan foretas på den foretrukne utførelsesform av oppfinnelsen. Eksempelvis kan ordstørrelsen, antallet av steder og typer av informasjon og styring endres etter ønske.

Claims (11)

  1. Segment deskriptor-enhet (10) for å utføre oversettelsesoperasjoner på hver ord som mottas av nevnte enhet,karakterisert ved at nevnte enhet omfatter: et direktelager (RAM) (12-1) som har en flerhet av lagersteder hvor hvert sted har en flerhet av bitsteder, en første gruppe av bitsteder for hver av et første antall av nevnte flerhet av lagersteder som lagrer informasjon som er knyttet til en første type av oversettelsesoperasjon og en andre gruppe av bit-steder for hver av nevnte første antall av nevnte flerhet av lagersteder som lagrer informasjon knyttet til den andre type av oversettelseoperasjon, et innholdsadresserbart lager (CAM) (12-3) som har en flerhet av lagersteder for lagring av informasjon knyttet til et korresponderende antall av segmentdeskriptorer som skal oversettes og en flerhet av utganger for å generere treffsignaler som angir resultatene av sammenligning av nevnte hvert ord som skal oversettes med den informasjon som er lagret i nevnte flerhet av lagersteder, idet nevnte utganger er koblet til nevnte RAM, og mikroprogrammert styremiddel (30) koblet til RAM og til nevnte CAM, idet nevnte styremiddel genererer første og andre grupper av signaler for aksessering av informasjonsinnholdet i henholdsvis nevnte første og andre grupper av bitsteder av ett av nevnte lagersteder utpekt av nevnte CAM treffsignaler for overføring til henholdsvis første og andre anordninger (14, 16) for å utføre operasjoner til å utføre nevnte første og andre typer av oversettelsesoperasjoner.
  2. 2. Segment-deskriptorenhet som angitt i krav 1, karakterisert ved at nevnte enhet dessuten innbefatter dekodermiddel (12-7) koblet til nevnte RAM og til nevnte mikr c-programmer te styremiddel, idet nevnte dekodermiddel ved hjelp av en tredje gruppe av signaler fra nevnte mikroprogrammerte styremiddel er satt i stand til å aksessere et utpekt av et andre antall av nevnte flerhet av steder som anvendes for lagring av arbeidsregisterinformasjon som anvendes under utførelsen av nevnte første og andre typer av oversettelsesoperasjoner.
  3. 3. Segment-deskriptorenhet som angitt i krav 1, karakter- isert ved at nevnte mikroprogrammerte styremiddel innbefatter et kontrollager som har en flerhet av steder for lagring av en flerhet av forskjellige typer av mikroinstruksjonsord, idet nevnte styremiddel som reaksjon på mottagelse av nevnte hvert ord som skal oversettes, utleser et første (fig. 6b) av nevnte forskjellige typer av mikroinstruksjons-ord for generering av nevnte første gruppe av signaler for å sette en første anordning i stand til å utføre operasjoner for å utføre nevnte første type av oversettelsesoperasjon, og nevnte styremiddel som reaksjon på nevnte treffsignaler som angir en bomtilstand utleser et andre (fig. 6a) av nevnte forskjellige typer av mikroinstruksjonsord for generering av nevnte andre grupper av signaler for å sette en andre anordning istand til å utføre operasjoner for å utføre nevnte andre typer av oversettelsesoperasjon
  4. 4. Segment-deskriptorenhet som angitt i krav 1, karakterisert ved at nevnte enhet dessuten innbefatter første (14) og andre (16) anordninger som er koblet til nevnte RAM seksjoner, idet nevnte mikroprogrammerte styremiddel innbefatter et kontrollager som har en flerhet av steder for lagring av en flerhet av forskjellige typer av mikroinstruksjonsord, idet nevnte styremiddel som reaksjon på mottagelse av nevnte hvert ord som skal oversettes, utleser en første av nevnte forskjellige typer av mikroinstruksjons-ord for å generere første av signaler for å sette nevnte første anordning i stand til å utføre operasjoner for å utføre nevnte første type av oversettelsesoperasjon og nevnte styremiddel som reaksjon på nevnte treffsignaler som angir en bom-tilstand utleser en andre av nevnte forskjellige typer av mikroinstruksjonsord for generering av andre av nevnte signaler for å sette nevnte andre anordning i stand til å utføre operasjoner for å utføre nevnte andre type av oversettelsesoperasjon.
  5. 5. Segment-deskriptorenhet som angitt i krav 3 eller 4,karakterisert ved at nevnte første anordninger tilsvarer sikkerhetskontrolleringskretser for verifisering av lageraksess basert på tilstanden av nevnte informasjon som er lagret i nevnte første gruppe av bit steder/celler.
  6. 6. Segment-deskriptorenhet som angitt i krav 3 eller 4,karakterisert ved at nevnte andre anordning er en adderer for generering av en adresse fra nevnte informasjon som er lagret i nevnte andre gruppe av bit steder/celler for aksessering av manglende data som behøves for fullførelse av oversettelsen av nevnte virtuelle adresseord.
  7. 7. Segment-deskriptorenhet som angitt i krav 2, karakterisert ved at nevnte enhet dessuten innbefatter et virtuelt adresseregister (18) for lagring av hvert ord som behøves oversatt, idet nevnte register er koblet til nevnte dekoder middel, idet nevnte dekodermiddel er ved hjelp av signaler fra nevnte register og signaler fra nevnte andre grupper av signaler satt i stand til å aksessere et utpekt av et tredje antall av nevnte lagersteder for generering av en adresse for innhenting av informasjon som skal lagres i nevnte andre grupper av bit steder av et av nevnte første antall av steder som bevirket nevnte CAM til å generere treffsignaler som angir en bomtilstand.
  8. 8. Segment-deskriptorenhet som angitt i krav 1, karakterisert ved at nevnte enhet er av VLSI brikke-konstruksjon og at nevnte første gruppe av bit-steder og nevnte andre grupper av bit-steder i nevnte RAM er anordnet på en avvekslende måte slik at kun den informasjon som er nødvendig for å utføre nevnte første og andre oversettelsesoperasjoner ved hjelp av nevnte første og andre anordninger kan aksesseres på forskjellige operasjonssykluser som er definert av nevnte første og andre grupper av signaler, idet nevnte oppstilling reduserer mengden av brikkeplass i samsvar med antallet av informasjonsbiter som betjenes av nevnte anordninger.
  9. 9. Segment-deskriptorenhet som angitt i krav 4 eller 8,karakterisert ved at nevnte første anordning innbefatter en flerhet av komparator-seksjoner og nevnte andre anordning innbefatter et antall adderertrinn, idet et antall av nevnte adderertrinn veksles med nevnte komparatorseksjoner for derved å minimalisere brikkeplass kravet.
  10. 10. Segment-deskriptorenhet som angitt i krav 8, karakterisert ved at nevnte RAM dessuten innbefatter en flerhet av les/skriv forsterkerkretser (12-14) og en flerhet av multiplexer kretser(12-12), idet hver flerhet korresponderer i antall med nevnte første gruppe av bit-steder, idet nevnte forsterkerkretser og nevnte multi-pleksekretser er anordnet i kolonner som er innrettet med korresponderende par av de posisjoner av nevnte første og andre grupper av RAM-bit-steder, idet nevnte multiplekserkretser er koblet til nevnte mikroprogrammerte styremiddel, og idet nevnte multiplekserkretser som reaksjon på signaler fra nevnte styremiddel velger hvilke bitposisjoner fra nevnte par av bit-posisjoner som skal forbindes med korresponderende av nevnte les/skriv forsterkerkretser under én RAM lese- eller skrive- operasjonssyklus.
  11. 11. Segment-deskriptorenhet som angitt i krav 1, karakterisert ved at nevnte RAM-lager lagrer segmentdeskriptorer (SDW), idet hver segmentdeskriptor innbefatter to deler, en aksess-styredel (ACW) og en statisk oversettelsedel (STW), og at nevnte aksess-styredeler lagres i respektive steder i nevnte første gruppe og nevnte oversettelsesdeler lagres i respektive steder i nevnte andre gruppe.
NO875391A 1986-12-23 1987-12-22 Segment-deskriptorenhet NO173116C (no)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US94731586A 1986-12-23 1986-12-23

Publications (4)

Publication Number Publication Date
NO875391D0 NO875391D0 (no) 1987-12-22
NO875391L NO875391L (no) 1988-06-24
NO173116B true NO173116B (no) 1993-07-19
NO173116C NO173116C (no) 1993-10-27

Family

ID=25485945

Family Applications (1)

Application Number Title Priority Date Filing Date
NO875391A NO173116C (no) 1986-12-23 1987-12-22 Segment-deskriptorenhet

Country Status (11)

Country Link
EP (1) EP0272670A3 (no)
JP (1) JPH07120316B2 (no)
KR (1) KR930009667B1 (no)
CN (1) CN1009771B (no)
AU (1) AU603167B2 (no)
CA (1) CA1286422C (no)
DK (1) DK685987A (no)
FI (1) FI93586C (no)
MX (1) MX168306B (no)
NO (1) NO173116C (no)
YU (1) YU236587A (no)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4819165A (en) * 1987-03-27 1989-04-04 Tandem Computers Incorporated System for performing group relative addressing
US5895489A (en) * 1991-10-16 1999-04-20 Intel Corporation Memory management system including an inclusion bit for maintaining cache coherency
GB2260629B (en) * 1991-10-16 1995-07-26 Intel Corp A segment descriptor cache for a microprocessor
US5479628A (en) * 1993-10-12 1995-12-26 Wang Laboratories, Inc. Virtual address translation hardware assist circuit and method
US5530824A (en) * 1994-04-04 1996-06-25 Motorola, Inc. Address translation circuit
US6754784B1 (en) * 2000-02-01 2004-06-22 Cirrus Logic, Inc. Methods and circuits for securing encached information

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4520441A (en) * 1980-12-15 1985-05-28 Hitachi, Ltd. Data processing system
US4538241A (en) * 1983-07-14 1985-08-27 Burroughs Corporation Address translation buffer

Also Published As

Publication number Publication date
KR880008160A (ko) 1988-08-30
NO875391L (no) 1988-06-24
MX168306B (es) 1993-05-17
DK685987A (da) 1988-06-24
FI93586B (fi) 1995-01-13
DK685987D0 (da) 1987-12-23
AU8260987A (en) 1988-06-23
JPS63213046A (ja) 1988-09-05
CN87108389A (zh) 1988-07-06
NO875391D0 (no) 1987-12-22
FI875615A0 (fi) 1987-12-21
KR930009667B1 (ko) 1993-10-08
YU236587A (en) 1990-12-31
CA1286422C (en) 1991-07-16
FI93586C (fi) 1995-04-25
NO173116C (no) 1993-10-27
EP0272670A2 (en) 1988-06-29
FI875615A (fi) 1988-06-24
JPH07120316B2 (ja) 1995-12-20
AU603167B2 (en) 1990-11-08
CN1009771B (zh) 1990-09-26
EP0272670A3 (en) 1990-05-16

Similar Documents

Publication Publication Date Title
US5053951A (en) Segment descriptor unit for performing static and dynamic address translation operations
US6266755B1 (en) Translation lookaside buffer with virtual address conflict prevention
KR920005280B1 (ko) 고속 캐쉬 시스템
US4831520A (en) Bus interface circuit for digital data processor
US4136385A (en) Synonym control means for multiple virtual storage systems
JP3936378B2 (ja) アドレス変換装置
US4654777A (en) Segmented one and two level paging address translation system
US5239642A (en) Data processor with shared control and drive circuitry for both breakpoint and content addressable storage devices
US4851991A (en) Central processor unit for digital data processing system including write buffer management mechanism
JPS604494B2 (ja) キヤツシユ記憶システム
EP0507208A2 (en) A data processing system with combined static and dynamic masking of information in an operand
JPH11161547A (ja) データ処理装置用記憶装置、および記憶場所にアクセスする方法
EP0144763A2 (en) Address translation apparatus for a virtual memory data processing system
US5956752A (en) Method and apparatus for accessing a cache using index prediction
JPH0198040A (ja) メモリ管理システムおよびその動作方法
US7490190B2 (en) Method and system for local memory addressing in single instruction, multiple data computer system
US5119484A (en) Selections between alternate control word and current instruction generated control word for alu in respond to alu output and current instruction
US6044447A (en) Method and apparatus for communicating translation command information in a multithreaded environment
US4493033A (en) Dual port cache with interleaved read accesses during alternate half-cycles and simultaneous writing
US5687353A (en) Merging data using a merge code from a look-up table and performing ECC generation on the merged data
US4618926A (en) Buffer storage control system
KR100204024B1 (ko) 페이지 경계에 걸리는 분할 라인을 한 사이클에 억세스할 수 있는 컴퓨팅 시스템
AU677414B2 (en) Virtual address translation hardware assist circuit and method
US6385696B1 (en) Embedded cache with way size bigger than page size
NO173116B (no) Segment-deskriptorenhet