FI96645C - Laite ja menetelmä näennäisen osoitteen kääntämiseksi tehostetusti todelliseksi osoitteeksi välimuistiyksikön osoitusta varten - Google Patents
Laite ja menetelmä näennäisen osoitteen kääntämiseksi tehostetusti todelliseksi osoitteeksi välimuistiyksikön osoitusta varten Download PDFInfo
- Publication number
- FI96645C FI96645C FI892779A FI892779A FI96645C FI 96645 C FI96645 C FI 96645C FI 892779 A FI892779 A FI 892779A FI 892779 A FI892779 A FI 892779A FI 96645 C FI96645 C FI 96645C
- Authority
- FI
- Finland
- Prior art keywords
- address
- unit
- cache
- memory
- directory
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1045—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
- G06F12/1054—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache the data cache being concurrently physically addressed
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
96645
Laite ja menetelmä näennäisen osoitteen kääntämiseksi tehos- tetusti todelliseksi osoitteeksi välimuistiyksikön osoitusta varten. - Anordning och förfarande för effektiv översättning av en skenbar adress tili en verklig adress för adressing av en mellanminnesenhet.
Tämä keksintö kohdistuu yleisesti tietojenkäsittelyjärjestelmien keskusyksiköihin liittyviin välimuistiyksiköihin ja täsmällisemmin keskusyksikön suorittamaan välimuistiyksikön osoitukseen.
Nykyisissä tietojenkäsittelyjärjestelmissä kullakin signaali-* ryhmällä on siihen liittyvä osoite. Osoitetta käytetään tietojenkäsittelyjärjestelmän päämuistiyksikön paikan yksilöintiin ja osoite voi toimia itse signaaliryhmän tunnuksena. Käytännössä signaaliryhmällä voi olla ainakin kaksi osoitetta (ts. tunnusta), näennäinen osoite, joka on osoite, jolla keskusyksikkö yksilöi signaaliryhmän, ja todellinen osoite, joka on osoite, joka yksilöi tietyn paikan tietojenkäsittelyjärjestelmän päämuistiyksikössä.
Nykyiset tietojenkäsittelyjärjestelmät sisältävät tyypillisesti keskusyksikköön liittyvän välimuistiyksikön. Välimuistiyksikkö toimii puskurimekanismina suhteellisen hitaan signaaliryhmien päämuistiyksiköstä noutamisen ja keskusyksikön edellyttämän pyydettyjen signaaliryhmien viiveettömyyden välillä. Paikka, johon signaaliryhmä tallennetaan välimuistissa, riippuu todellisesta osoitteesta, kuten tähän liittyvää tekniikkaa tunteville on selvää.
Kuviossa 1 on esitetty tyypillinen tietojenkäsittelyjärjestelmä. Päämuistiyksikköön 13 on tallennettu signaaliryhmät, jotka keskusyksikkö 14 tarvitsee haluttujen proseduurien suorittamiseksi. Ne signaaliryhmät, joita keskusyksikkö 14 erittäin todennäköisesti tarvitsee päämuistiyksiköstä 13 tai 2 96645 käyttijäyksiköstä 15, siirretään järjestelmäliitäntäyksikön 11 kautta välimuistiyksikköön 12. Joissakin tietojenkäsittely järjestelmärakenteissa signaaliryhmät siirretään järjestelmäväylän kautta, mikä edellyttää liitäntäyksikköä jokaiselle järjestelmäväylän kanssa vuorovaikutuksessa olevalle komponentille. Signaaliryhmät tallennetaan välimuistiyksikköön 12, kunnes keskusyksikkö 14 pyytää niitä. Oikean signaaliryhmän noutamiseksi osoitteenkääntäjälaite 141 muuntaa näennäisen osoitteen, jota keskusyksikkö 14 käyttää signaaliryhmän yksilöintiin, todelliseksi osoitteeksi, jota muu osa tietojenkäsittelyjärjestelmästä käyttää signaaliryhmän yksilöintiin. Osoitteenkääntäjälaitteen alustaa ja sitä ohjaa *· ' tyypillisesti tietojenkäsittelyjärjestelmän käyttöjärjestelmä. Keskusyksikössä 14 suoritetun käsittelyn jälkeen signaaliryhmä palautetaan välimuistiyksikköön 12 osoitteenkääntäjälaitteen määräämään osoitteeseen ja siirretään tämän jälkeen käyt-täjäyksikköön 15 tai päämuistiyksikköön 13 ohjelman määräämällä tavalla. Tietojenkäsittelyjärjestelmiä tunteville on selvää, että edellä oleva kuvaus on yleiskatsaus tietojenkäsittelyjärjestelmien ollessa monimutkaisempia ja sisältäessä edellä olevasta kuvauksesta poikkeavia vaihtoehtoisia suoritusmuotoja. Kuvaus on annettu taustatietona esillä olevan keksinnön ymmärtämiseksi.
‘ Seuraavaksi tarkastellaan kuviota 2, jossa on esitetty tunnetun tekniikan mukainen prosessi, jossa keskusyksikkö 14 osoittaa valitun signaaliryhmän välimuistiyksikössä 25. Keskusyksikkö antaa osoitettavan signaaliryhmän näennäisen osoitteen 21, tyypillisesti rekisteriin 23. Näennäinen osoite sisältää ainakin kaksi osaa, SANA-osan 21A, joka sisältää n logiikkabittipositiota, ja NÄENNÄINEN SIVUNUMERO-osan 21B, joka sisältää m logiikkabittipositiota. Rekisterin 23 sisältämän todellisen osoitteen määräämiseksi käytetään näennäisen osoitteen 21 SANA-osaa 23A muuttamattomana, kun taas näennäisen osoitteen NÄENNÄINEN SIVUNUMERO-osa 21B syötetään asso- • · m » iifc i n »t i 3 96645 siatiivimuistille 22. Assosiatiivimuistista 22 sille syötetyn NÄENNÄINEN SIVUNUMERO-osan 21B seurauksena saadusta signaali-ryhmästä tulee rekisteriin 23 tallennetun TODELLINEN SIVUNUMERO-osan 23B m logiikabittiä. Tämä osoitteen kääntäminen on tyypillisesti toteutettu siten, että se suoritetaan yhden kellojakson To aikana. Rekisteriin 23 tallennettua todellista osoitetta käytetään tämän jälkeen välimuistiyksikön 25 sisällön osoitukseen. Todellisen osoitteen SANA-osan 23A n bittiposi-tioon lisätään b bittiä TODELLINEN SIVUNUMERO-osasta 23B PAIKKA-osoitteen muodostamiseksi ja PAIKKA-osoite syötetään välimuistin hakemistoyksikön 251 osoitetulonapoihin ja . . välimuistin tai1ennusyksikon 252 osoitetulonapoihin. Tässä
PAIKKA-osoitteen yksilöimässä välimuistin tailennusyksikön paikassa voi tietyillä ehdoilla olla keskusyksikön pyytämä signaaliryhmä. Tähän PAIKKA-osoitteen yksilöimään välimuistin hakemistoyksikön paikkaan on tallennettu signaaliryhmä, joka vastaa välimuistin tailennusyksikön osoitettuun paikkaan . tallennetun signaaliryhmän todellisen osoitteen TODELLINEN
SIVUNUMERO-osan 23B, jota yleensä kutsutaan VERTAILU-osoitteeksi, bittipositioihin m-b tallennettuja logiikka-signaaleja. Toisin sanoen paikkaosoite ja välimuistin hakemistoyksikköön tallennettu (VERTAILU) osoitesignaaliryhmä muodostavat yhdessä välimuistin tailennusyksikön vastaavaan paikkaan tallennetun signaaliryhmän osoitteen. Seurauksena PAIKKA-osoitteen syöttämisestä välimuistin tailennusyksikölle 252 osoitetussa paikassa olevien signaaliryhmien joukko, joita yleisesti kutsutaan tasoiksi, syötetään multiplekseriyksikölle 254. PAIKKA-osoitteen välimuistin hakemistoyksikölle 251 syöttämisen seurauksena siihen tallennettua signaaliryhmää verrataan todellisen osoitteen 23 TODELLINEN SIVUNUMERO-osan 23B jäljelle jääviin m-b signaaliin vertailuyksikössä 253. Kun vertailun tuloksena on TOSI-signaali, todellinen osoite 23 yksilöi PAIKKA-osoitteessa olevan signaaliryhmän ja multiplek-seriyksikkö 254 siirtää valitun signaaliryhmän (eli vertailu-yksiköltä tulevien signaalien yksilöimän tason) keskusyksi- 4 96645 kölle. Kun vertailutuloksena on EPÄTOSI-signaalin kehittäminen, tämä signaali siirretään keskusyksikölle asianomaisen toimenpiteen suorittamiseksi, tyypillisesti yksilöidyn signaaliryhmän noutamiseksi päämuistiyksiköstä. Välimuisti-yksikön osoitus vaatii toisen järjestelmäkellojakson To.
Kuten välimuistiyksiköiden tekniikkaa tunteville on selvää, jokaiseen välimuistin tailennusyksikön paikkaan tallennettuja useita signaaliryhmiä (tai tasoja) käytetään vähentämään signaaliryhmän välimuistiyksiköstä noutamiseen tarvittavaa aikaa. Toivottava parannus olisi yhden signaaliryhmän tallentaminen jokaiseen muistipaikkaan.
Tähän liittyvässä tunnetussa tekniikassa, US-patentissa 3 979 726, US-patentissa 4 264 953 ja US-patentissa 4 669 043, on käsitelty näennäisten osoitteiden käyttämistä välimuistiyksiköiden yhteydessä, mutta niissä ei ole esitetty menetelmiä . näennäisten osoitteiden todellisiksi osoitteiksi kääntämisen nopeuttamiseksi. US-patentissa 4 332 010 on kuvattu välimuis-tiyksikkö, jossa paikkaosoitteena on SANA- (ei-käännettävä) osa, mikä rajoittaa välimuistiyksikön kokoa. US-patentti 3 723 976,US-patentti 4 612 612 ja US-patentti 4 682281 sisältävät näennäisten osoitteiden ohjaaman laitteen ja todellisten osoitteiden ohjaaman laitteen välimuistin sig- * naaliryhmien osoittamiseksi, mikä kasvattaa huomattavasti laitteistoa ja tietojenkäsittelyjärjestelmän monimutkaisuutta.
Siten on tarvittu laitetta ja siihen liittyvää menetelmää, jotka nopeuttaisivat välimuistiyksikköön todellisilla osoitteilla tallennettujen signaaliryhmien saantia keskusyksiköltä tulevien näennäisiä osoitteitä käyttävien saantipyyn-töjen perusteella.
Esillä olevan keksinnön tarkoituksena on saada aikaan parannettu tietojenkäsittelyjärjestelmä.
<1 «tt.t bib I l i Iti 5 96645
Esillä olevan keksinnön eräänä piirteenä on saada aikaan parannettu menetelmä tietojenkäsittelyjärjestelmän välimuisti-yksikön osoitusta varten.
Esillä olevan keksinnön eräänä piirteenä on nopeuttaa todellisen osoitteen yksilöimien ja välimuistiyksikköön tallennettujen signaaliryhmien saantia, kun keskusyksikkö pyytää näennäisellä osoitteella yksilöityä signaaliryhmää.
Esillä olevan keksinnön vielä eräänä piirteenä on parantaa välimuistiyksikön yhteydessä käytettävää näennäisen osoitteen kääntämistä todelliseksi osoitteeksi.
Esillä olevan keksinnön vielä eräänä piirteenä on saada aikaan välimuistiyksikkö, jossa välimuistin tailennusyksikön jokaiseen muistipaikkaan on tallennettu vain yksi signaaliryhmä.
Esillä olevan keksinnön täsmällisempänä piirteenä on käyttää näennäisen osoitteen osaa koeosoitteen määräämiseksi välimuistin hakemisto-osalle ja määrätä sitten, kun välimuistin hakemistoyksikön sisältö on käytettävissä, onko koeosoite oikea.
Edellä mainitut ja muut ominaisuudet saavutetaan keksinnön mukaan käyttämällä pientä assosiatiivimuistia, johon ainakin osa näennäisestä osoitteesta vaikuttaa ja johon on tallennettu välimuistiyksikön paikkaosoitteen koebitit, joita käytetään, kunnes näennäisen sivunumeron kääntäminen todelliseksi sivunumeroksi voi antaa välimuistin paikkaosoitteen oikeat bitit. Tallennettuja bittejä käytetään yhdessä paikkaosoitteen logiikkabittien kanssa, joita ei tarvitse kääntää, välimuistin hakemistoyksikön paikan osoittamiseen ennen tällaisessa osoitteessa tarvittavan todellisen osoitteen kehittämistä. Kun välimuistin hakemistoyksikön sisältö on käytettävissä vertailua varten, näennäisen osoitteen käännös on valmis. Todellisen 6 96645 osoitteen käännetty osa, jota on käytettävä vertailussa välimuistin hakemistoyksiköltä saatuun signaaliryhmään, on käytettävissä ja vertailu voidaan suorittaa, kun välimuisti-yksikön paikkaosoitteessa käytetyt tallennetut bitit ovat samoja kuin käännetyt bitit. Kun paikkaosoitteen käännetyt bitit ja koebitit ovat samoja ja todellisen osoitteen käännetyt logiikkasignaalit ovat vertailussa samoja kuin välimuistin hakemistoyksikköön tallennetut vastaavat osoitelogiikkasig-naalit, välimuistin tai 1ennusyksikön sisältö on tällöin haluttu signaaliryhmä. Kun tallennetut ja käännetyt paikkaosoitteen logiikkasignaalit eivät ole samoja, tällöin käännöspro-seduurista saatu todellinen osoite syötetään välimuistiyksi- « kölle toimintamuodossa, joka on samanlainen kuin tavanomainen välimuistiyksikkötoiminta.
Nämä ja muut keksinnön piirteet voidaan ymmärtää lukemalla seuraava selitys piirustuksiin liittyen.
Kuvio 1 on lohkokaavio tyypillisestä tietojenkäsittelyjärjestelmästä, jossa voidaan käyttää esillä olevaa keksintöä.
Kuvio 2 on vuokaavio, joka havainnollistaa tunnetun tekniikan mukaisessa välimuistiyksikössä käytettyä näennäisen « osoitteen kääntämistä todelliseksi osoitteeksi.
Kuvio 3 on vuokaavio, joka havainnollistaa esillä olevan keksinnön mukaisen välimuistiyksikön yhteydessä käytettyä näennäisen osoitteen kääntämistä todelliseksi osoitteeksi.
Kuviossa 3 on esitetty esillä olevan keksinnön laitteen toiminnallinen lohkokaavio. Kuvio 3 on kuvio 2 uudelleen piirrettynä siten, että siihen on lisätty esillä olevan keksinnön laitteet ja välimuistiyksikön komponentit järjes-
i» ; . ut:( «Jti I > I M
7 96645 tettyinä signaalivuon korostamiseksi. Keskusyksikkö antaa rekisterissä 21 olevan NÄENNÄINEN SIVUNUMERO-OSA 21B osoitteen osoitteenkääntäjälaitteelle, jota edustaa assosiatiivimuisti-yksikkö 22. NÄENNÄINEN SIVUNUMERO 21B tai sen osa syötetään samanaikaisesti pienelle assosiatiivimuistiyksikölle 31.
Pienessä assosiatiivimuistissa 31, johon tuodaan ainakin osa näennäisestä osoitteesta, on suhteellisen vähän suorasaan-timuistipaikkoja, jotka antavat suhteellisen pieniä signaali-ryhmiä, mikä mahdollistaa asianomaisen signaaliryhmän yksilöimisen ilman merkittävää viivettä. Pienen assosiatiivimuisti-yksikön 31 kehittämä signaaliryhmä sisältää koesignaaliryhmän, , joka muodostaa, yhdessä SANA-osan 21A kanssa, KOE-
PAIKKAOSOITTEEN. KOEPAIKKAOSOITE syötetään välimuistin hakemistoyksikön 251 osoitetulonapoihin. KOEPAIKKAOSOITTEEN määräämä välimuistin hakemistoyksikön 251 sisältö tallennetaan vertailuyksikköön 253. Samanaikaisesti NÄENNÄISEN SIVUNUMERON 21B syöttämisestä assosiatiivimuisti1 le 22 seuraa TODELLISEN SIVUNUMERON 23B tallentaminen rekisterin 23 asianomaisiin paikkoihin. PAIKKAOSOITTEEN 24A osan muodostava TODELLISEN SIVUNUMERON 23B osa syötetään vertailuyksikköön 32 ja sitä verrataan pienestä assosiatiivimuistiyksiköstä 31 tulevaan signaaliryhmään. Positiivinen vertailutulos vertailuyksiköltä ilmoittaa, että KOEPAIKKAOSOITE on osoitettanut oikean paikan välimuistin hakemistoyksikössä 251. TODELLISEN SIVUNUMERON 23B
$ se osa, joka muodostaa VERTAILUOSOITTEEN, syötetään ver-tailuyksikölle 253 ja sitä verrataan välimuistin hakemisto-yksikön sisältöön, jolloin vertailuyksikön 253 asettaa sailintatilaan TOSI-signaali (eli positiivinen vertailutulos vertailuyksiköltä 32). Kun sailintatilaan ohjatulle ver-• tailuyksikölle 253 syötetyt kaksi suuretta eivät ole samoja, tällöin kehitetään EPÄTOSI-signaali ja se syötetään keskus-> yksikölle. Vertailuyksiköltä 253 tuleva EPÄTOSI-signaali ilmoittaa, että tietojenkäsittely-yksikön pyytämää signaali-ryhmää ei ole tallennettu välimuistin tailennusyksikköön 252 ja pyydetty signaaliryhmä on noudettava päämuistiyksiköstä. Kun 8 96645 sallintatilaan ohjattu vertailuyksikkö 253 antaa TOSI-signaalin, tällöin multiplekseriyksikkö 36, jolle PAIKKAOSOITE on syötetty, syöttää PAIKKAOSOITTEEN välimuistin tallennus-yksikön 252 osoitetulonapoihin. PAIKKAOSOITTEEN syöttämisestä on tuloksena pyydetyn signaa1iryhmän syöttäminen lähtörekis-teriin 354. Välimuistipaikat sisältävät vain yhden signaali-ryhmän ja lähtömultiplekseria ei siten tarvita.
Kun vertailuyksikkö 32 antaa vertailutoimituksen tuloksena EPÄTOSI-signaalin, joka osoittaa, että KOEPAIKKAOSOITE ei ole oikea PAIKKAOSOITE, multiplekseriyksiköl1 e 36 syötetään EPÄTOSI-signaali. Siihen ajankohtaan mennessä, jolloin ·', vertailuyksikkö 32 kehittää EPÄTOSI-signaalin, oikea PAIKKA- OSOITE 24A on käytettävissä rekisterissä 23. Tuloksena EPÄTOSI-signaalin syöttämisestä multiplekseriyksikölle 36 PAIKKAOSOITE 24A syötetään välimuistin hakemistoyksikön 251 osoitetulonapoi-hin. PAIKKAOSOITTEEN syöttämisen seurauksena osoitettu paikka syötetään vertailuyksikölle 253 ja sitä verrataan * VERTAILUOSOITTEESEEN 24B. Tämän vertailun tuloksena saatu EPÄTOSI-signaali ilmoittaa keskusyksikölle, että pyydettyä tietosignaaliryhmää ei ole tallennettu välimuistiyksikköön 25, kun taas TOSI-signaali aikaansaa PAIKKAOSOITTEEN syöttämisen (multiplekseriyksiköltä 36) välimuistin tailennusyksikön 252 osoitetulonapoihin ja pyydetyn signaaliryhmän syöttämisen .· lähtörekisteriin 254.
Vertailuyksiköstä 32 on esitetty lähtevän toisen EPÄTOSI-signaalin. Tätä signaalia käytetään rekisterissä 21 ja rekisterissä 23 olevan tietosignaaliryhmän sisällön lukitsemiseen, jotta välimuistin hakemistoyksikön toinen osoitus voidaan suorittaa seuraavan näennäisen osoitteen signaaliryhmän häiritsemättä. Kun tämä EPÄTOSI-signaali kehitetään, pieni assosiatiivimuisti 32 päivitetään tallentamalla PAIKKA-OSOITTEESEEN sisältyvä TODELLISEN SIVUNUMERON 23B osa NÄENNÄISEN SIVUNUMERON määräämään paikkaan.
9 96645 Välimuistin, hakemiston toiminta ja näennäisen osoitteen todelliseksi osoitteeksi kääntämistoiminta, jotka toiminnat suoritetaan rinnakkain, voidaan toteuttaa yhden järjestelmä-kellojakson To aikana, kun taas pyydetyn signaaliryhmän otto voidaan suorittaa järjestyksessä seuraavan jakson To aikana.
Esillä olevan keksinnön tehokkuus perustuu siihen tosiasiaan, että ohjelmisto käyttää pitkissä ohjelman osissa tavallisesti vain muutamalla muistin tietosivulla olevia signaaliryhmiä.
Tämän seurauksena tarvitaan vain rajoitettu lukumäärä TODELLINEN SIVUNUMERO 23A -signaaliryhmiä. Pieneen assosiatiiviseen välimuistiyksikköön (31) voi siten mahtua keskusyksikön sillä hetkellä käyttämien muistin tietosivujen TODELLISET SIVUNUMERO-osat. (On selvää, että koko NÄENNÄISTÄ SIVUNUMEROA 21B ei tarvitse syöttää pienelle assosiatiivimuistiyksikölle 31 ja että sen osa voi riittää). Pieni assosiatiivimuistiyksikkö mahdollistaa siten näennäisen osoitteen todelliseksi osoitteeksi kääntämisen tuloksia koskevan oletuksen tekemisen.
Pienen assosiatiivimuistiyksikön 31 sisältö voidaan määrätä parhaana pidetyssä suoritusmuodossa syöttämällä b signaali-bittiä TODELLISESTA SIVUNUMEROSTA NÄENNÄISEN SIVUNUMERON osoittamaan paikkaan. Sikäli kuin keskusyksikkö jatkaa proseduurin pitkien jaksojen ajan saman tai suhteellisen . harvojen näennäisten sivunumeroiden käyttämistä, pieni assosia- tiivimuisti antaa oikean KOEOSOITTEEN, mikä siten tehostaa toimintaa.
Keksintö käyttää kaksi järjestelmäkellojaksoa, ts. 2-To, samoin kuin kuviossa 2 esitetty tunnettu toteutus. Välimuistiyksikkö . . 25 on kuitenkin toteutettu liukuhihnamuotoisesti siten, että NÄENNÄISESTÄ SIVUNUMEROSTA johdettua (ts. pienen assosiatiivi-. muistiyksikön 31 välityksellä) PAIKKAOSOITETTA koskevasta väärästä oletuksesta on tuloksena välimuistiyksikön noutojakso, kun taas oikeiden oletusten jono mahdollistaa signaaliryhmän noutamisen välimuistiyksiköstä jokaisella järjestelmäkel1 o- 10 96645 jaksolla To.
Esitetyllä laitteella on lisäetuna, että laitetoteutus on suhteel1lisen yksinkertainen ja se voidaan käytännöllisesti sisällyttää välimuistiyksikköön. Lisäksi jokaiseen välimuistin tason osoitteeseen tyypillisesti liittyvistä useista signaali-ryhmätasoista voidaan valita oikea tasosignaaliryhmä, niin että vain pyydetty signaaliryhmä tarvitsee siirtää keskusyksikölle.
Edellä oleva selitys on esitetty parhaana pidetyn suoritusmuodon toiminnan havainnollistamiseksi eikä sitä ole tarkoitettu keksinnön piiriä rajoittavaksi. Keksinnön piiri on vain seuraavien patenttivaatimusten rajoittama. Monet keksinnön ajatukseen ja piiriin sisältyvät muunnokset ovat edellä olevan selityksen perusteella alan ammattimiehelle mahdollisia.
Claims (8)
1. Välimuistiyksikkö (12) pitämään tietoyksikköjä, jotka on syötettävä, kun tietoyksiköitä pyydetään tietojenkäsittelyjärjestelmän päämuistista (13); mainitun järjestelmän, joka sisältää mainitun järjestelmän prosessorin (14), pyytäessään mainittuun päämuistiin talletettua tietoyksikköä, antaessa sen päämuistipaikan näennäisen osoitteen, mihin mainittu tietoyksikkö on harkittu talletettavaksi, mainitun näennäisen osoitteen sisältäessä ensimmäisen osan (n bittiä, bitit 0 - (n-1)), toisen osan (b bittiä, bitit n - (n + b-1)) ja kolmannen osan (m-b bittiä, bitit (n+b) - (m + n-1)); missä mainittu väli-muistiyksikkö sisältää assosiatiivimuistin (22), osoitettavan datamuistin (252) ja osoitettavan hakemiston (251), mainittu assosiatiivimuisti tarkoitettuna kääntämään mainitun näennäisen osoitteen toisen ja kolmannen osan todellisen osoitteen toiseksi ja kolmanneksi osaksi, jolla on sama bittien lukumäärä kuin vastaavalla näennäisen osoitteen toisella ja kolmannella osalla, mainitun näennäisen ja todellisen osoitteen ensimmäisen osoiteosan ollessa sama, mainitun datamuistin ja hakemiston ollessa osoitetut mainitun todellisen osoitteen ensimmäisen ja toisen osan yhdistelmän avulla, mainittu hakemisto tarkoitettuna pitämään todellisen osoitteen kolmannen osan sen kussakin tallennuspaikassa, mainittu datamuisti tarkoitettuna pitämään tietoyksikön sen kussakin tallennuspaikassa, minkä tietoyksikön on katsottu olevan kopio tietoyksiköstä, joka on talletettu päämuistin paikkaan, jonka osoite on yhdistelmä mainitun data-muistipaikan osoitteesta ja kolmannesta osoiteosasta, joka on pidetty vastaavassa hakemistopaikassa; mainitun välimuistiyksi-kön ollessa tunnettu : • muistiyksiköstä (31) pitämään todellisen osoitteen toisen osan kussakin sen tallennuspaikassa ja toimittamaan mainituista tallennuspaikoista yhden tallennuspaikan sisällön vastaanottaessaan sisäänsyöttöosoitteen siinä; 12 96645 elimistä kohdistamaan sisäänsyöttöosoitteena mainitulle muis-tiyksikölle ainakin näennäisen osoitteen toisen ja kolmannen osan valitut bitit, jotka osat on vastaanotettu mainitun väli-muistiyksikön avulla; elimistä kohdistamaan kokeiluosoitteena mainitulle hakemistolle todellisen osoitteen toinen osa, joka on toimitettu mainitun muistiyksikön avulla ja näennäisen osoitteen ensimmäinen osa, joka on vastaanotettu mainitun välimuistiyksikön avulla; ja vertailijasta (32) vertaamaan toisen todellisen osoitteen toista osaa, joka on toimitettu mainitun muistiyksikön avulla assosiatiivimuistin avulla kehitetyn todellisen osoitteen toisen osan kanssa: assosiatiivimuistin avulla; minkä jälkeen, mikäli mainittu vertailija havaitsee yhdenmukaisuuden siinä verrattujen kahden todellisen osoitteen toisen osan välillä, mainittu vertailija toimittaa ensimmäisen signaalin aikaansaamaan mainitun välimuistiyksikön toimimaan käyttämällä todellisen osoitteen kolmatta osaa, joka on toimitettu mainitun hakemiston avulla vastauksena kokeiluosoit-teeseen, joka on kohdistettu mainittuun hakemistoon.
2. Patenttivaatimuksen 1 mukainen välimuistiyksikkö, jossa mainittuihin välimuistivälineisiin sisältyy toiset vertailu-välineet, jotka vertailevat mainittuihin välimuistin hakemis-tovälineisiin talennettua todellisen osoitteen kolmatta osaa mainittujen kääntäjävälineiden määräämän todellisen osoitteen kolmanteen osaan.
3. Patenttivaatimuksen 2 mukainen välimuistiyksikkö, jossa kun mainitut vertailuvälineet ja mainitut toiset vertailuvälineet antavat positiiviset vertailutulokset, mainitun kolmannen todellisen osoitteen osoitus mainitussa välimuistin hakemis-toyksikössä mainitulla kokeiltavalla ja mainitulla näennäisen 96645 13 osoitteen ensimmäisellä osalla tapahtuu ensimmäisellä järjes-telmäkellojaksolla ja mainitun signaaliryhmän osoitus mainituissa tallennusvälineissä tapahtuu järjestyksessä seuraavalla järjestelmäkellojaksoila.
4. Patenttivaatimuksen 2 mukainen välimuistiyksikkö, jossa kun mainitut vertailuvälineet antavat negatiivisen vertailutuloksen ja mainitut toiset vertailuvälineet antavat positiivisen vertailutuloksen, mainitun kolmannen todellisen osoitteen osoitus mainitussa välimuistin hakemistoyksikössä mainitulla kokeiltavalla ja mainitulla näennäisen osoitteen ensimmäisellä osalla tapahtuu ensimmäisen järjestelmäkellojakson aikana, mainitun kolmannen todellisen osoitteen osoitus mainituissa välimuistin hakemistovälineissä tapahtuu seuraavan peräkkäisen jakson aikana ja mainitun välimuistin tailennusyksikön osoitus tapahtuu kolmannen peräkkäisen järjestelmäkellojakson aikana.
5. Menetelmä välimuistiyksikköön asianomaisen todellisen osoitteen määräämään paikkaan tallennetun signaaliryhmän noutamiseksi mainitun signaaliryhmän näennäisellä osoitteella yksilöivän keskusyksikön avulla, joka menetelmä käsittää vaiheina: ainakin mainitun näennäisen osoitteen osasta määrätyn kokeiltavan osoitteen aikaansaaminen, mainitun kokeiltavan osoitteen syöttäminen välimuistin hake-mistoyksikölle tallennetun osoiteosan saamiseksi, mainitun näennäisen osoitteen kääntäminen mainituksi todelliseksi osoitteeksi, mainitun kokeiltavan osoitteen vertaaminen mainitun todellisen osoitteen ensimmäiseen valittuun osaan, kun mainittu vertailuvaihe on positiivinen, mainitun tallennetun osoiteosan vertaaminen mainitun todellisen osoitteen toiseen valittuun osaan ja kun mainittuun tallennettuun osoiteosaan liittyvä vertailuvaihe on positiivinen, mainitun todellisen osoitteen kolmannen osan f 96645 14 käyttäminen välimuistin talennusyksikön osoittamiseen mainitun signaaliryhmän noutamiseksi tämän avulla.
6. Välimuistiyksikkö (12) pitämään tietoyksikköjä, jotka on syötettävä, kun tietoyksiköitä pyydetään tietojenkäsittelyjärjestelmän päämuistista (13); mainittuun järjestelmään, joka sisältää mainitun järjestelmän prosessorin (14), pyytäessä mainittuun päämuistiin talletettua tietoyksikköä, antaa näennäisen osoitteen päämuistin paikasta, mihin mainittu tietoyksikkö on harkittu olevan tailetettavaksi;1 missä mainittu välimuistiyksikkö sisältää assosiatiivimuistin (22), osoitettavan datamuistin (252) ja osoitettavan hakemiston (251), mainittu assosiatiivimuisti tarkoitettuna kääntämään mainitun näennäisen osoitteen vastaavaksi todelliseksi osoitteeksi, jolloin mainittu datamuisti ja hakemisto ovat osoitettavissa mainitun todellisen osoitteen osan avulla, mainittu hakemisto tarkoitettuna pitämään jonkin toisen todellisen osoitteen osan sen kussakin tallennuspaikassa, mainittu datamuisti tarkoitettuna pitämään tietoyksikön sen kussakin tallennuspaikassa, minkä tietoyksikön on harkittu olevan kopio tietoyksiköstä, joka on talletettu päämuistin paikkaan, minkä osoite on yhdistelmä mainitun datamuistin paikan osoitteesta ja todellisen osoitteen osasta, joka on pidetty vastaavassa hakemistopaikassa; mainitun välimuistiyksikön ollessa tunnettu: tai 1ennusyksiköstä (31) pitämään todellisen osoitteen osan sen kussakin tallennuspaikassa ja toimittamaan mainituista tallennuspaikoista yhden tallennuspaikan sisällön vastaanottaessaan sisäänsyöttöosoitteen siinä; elimistä kohdistamaan sisäänsyöttöosoitteena mainitulle muisti-yksikölle ainakin näennäisen osoitteen valitut bitit, joka osoite on vastaanotettu mainitun välimuistiyksikön avulla; elimistä kohdistamaan kokeiluosoitteena mainitulle hakemistolle !l ' M--4 11(4 14 4 4*» 96645 15 ainakin todellisen osoitteen osan, joka on toimitettu mainitun muistiyksikön avulla; ja vertailijasta (32) vertailemaan todellisen osoitteen osaa, joka on toimitettu mainitun muistiyksikön avulla, vastaavan todellisen osoitteen osan kanssa, joka on kehitetty mainitun assosia-tiivimuistin avulla; minkä jälkeen, mikäli mainittu vertailija havaitsee yhdenmukaisuuden siinä verrattujen kahden todellisen osoitteen osan välillä, mainittu vertailija toimittaa ensimmäisen signaalin aikaansaamaan mainitun välimuistiyksikön toimimaan käyttämällä osoiteosaa, joka on toimitettu mainitun hakemiston avulla vastauksena kokeiluosoitteeseen, joka on kohdistettu mainittuun hakemistoon.
7. Patenttivaatimuksen 6 mukainen välimuistiyksikkö, joka on lisäksi tunnettu siitä, että mikäli mainittu vertailija havaitsee epäyhdenmukaisuuden kahden todellisen osoitteen osan välillä, jotka on verrattu siinä, mainittu vertailija toimittaa toisen signaalin aikaansaamaan mainitun todellisen osoitteen, joka on toimitettu mainitun assosiatiivimuistin avulla, kohdistamisen osoitteena mainitulle hakemistolle mainitun kokeiluosoitteen asemasta.
8. Patenttivaatimuksen 6 mukainen välimuistiyksikkö, lisäksi tunnettu siitä, että mainittu tailennusyksikkö (31) on osoitettava muisti. > * e « ·* / 16 96645 Patentkrav.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US20349088A | 1988-06-07 | 1988-06-07 | |
US20349088 | 1988-06-07 |
Publications (4)
Publication Number | Publication Date |
---|---|
FI892779A0 FI892779A0 (fi) | 1989-06-07 |
FI892779A FI892779A (fi) | 1989-12-08 |
FI96645B FI96645B (fi) | 1996-04-15 |
FI96645C true FI96645C (fi) | 1996-07-25 |
Family
ID=22754220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FI892779A FI96645C (fi) | 1988-06-07 | 1989-06-07 | Laite ja menetelmä näennäisen osoitteen kääntämiseksi tehostetusti todelliseksi osoitteeksi välimuistiyksikön osoitusta varten |
Country Status (13)
Country | Link |
---|---|
EP (1) | EP0349757B1 (fi) |
JP (1) | JPH0251755A (fi) |
KR (1) | KR930002314B1 (fi) |
CN (1) | CN1024600C (fi) |
AU (1) | AU612035B2 (fi) |
CA (1) | CA1328026C (fi) |
DE (1) | DE68926837T2 (fi) |
ES (1) | ES2090023T3 (fi) |
FI (1) | FI96645C (fi) |
HR (1) | HRP921095A2 (fi) |
MX (1) | MX173010B (fi) |
NO (1) | NO176633C (fi) |
YU (1) | YU117089A (fi) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6965922B1 (en) * | 2000-04-18 | 2005-11-15 | International Business Machines Corporation | Computer system and method with internal use of networking switching |
US7146484B2 (en) | 2004-06-15 | 2006-12-05 | Hitachi, Ltd. | Method and apparatus for caching storage system |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS51140521A (en) * | 1975-05-30 | 1976-12-03 | Nec Corp | Address exchange device |
JPS51145227A (en) * | 1975-06-09 | 1976-12-14 | Nec Corp | Buffer memory system |
US4170039A (en) * | 1978-07-17 | 1979-10-02 | International Business Machines Corporation | Virtual address translation speed up technique |
JPS5696334A (en) * | 1979-12-28 | 1981-08-04 | Fujitsu Ltd | Prefetch system |
US4332010A (en) * | 1980-03-17 | 1982-05-25 | International Business Machines Corporation | Cache synonym detection and handling mechanism |
JPS6049944B2 (ja) * | 1980-12-29 | 1985-11-06 | 富士通株式会社 | バッファ記憶制御方式 |
US4400774A (en) * | 1981-02-02 | 1983-08-23 | Bell Telephone Laboratories, Incorporated | Cache addressing arrangement in a computer system |
JPS5975482A (ja) * | 1982-10-22 | 1984-04-28 | Fujitsu Ltd | バツフア・ストレ−ジ制御方式 |
EP0206050A3 (en) * | 1985-06-28 | 1990-03-14 | Hewlett-Packard Company | Virtually addressed cache memory with physical tags |
-
1989
- 1989-05-31 DE DE68926837T patent/DE68926837T2/de not_active Expired - Fee Related
- 1989-05-31 EP EP89109786A patent/EP0349757B1/en not_active Expired - Lifetime
- 1989-05-31 ES ES89109786T patent/ES2090023T3/es not_active Expired - Lifetime
- 1989-06-01 AU AU35924/89A patent/AU612035B2/en not_active Ceased
- 1989-06-06 CA CA000601865A patent/CA1328026C/en not_active Expired - Fee Related
- 1989-06-06 MX MX016332A patent/MX173010B/es unknown
- 1989-06-06 CN CN89103944A patent/CN1024600C/zh not_active Expired - Fee Related
- 1989-06-06 NO NO892310A patent/NO176633C/no unknown
- 1989-06-07 FI FI892779A patent/FI96645C/fi not_active IP Right Cessation
- 1989-06-07 KR KR1019890007893A patent/KR930002314B1/ko not_active IP Right Cessation
- 1989-06-07 JP JP89145015A patent/JPH0251755A/ja active Pending
- 1989-06-07 YU YU117089A patent/YU117089A/sh unknown
-
1992
- 1992-10-23 HR HRP921095AA patent/HRP921095A2/hr not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
NO176633B (no) | 1995-01-23 |
CN1040446A (zh) | 1990-03-14 |
EP0349757A2 (en) | 1990-01-10 |
MX173010B (es) | 1994-01-28 |
FI892779A (fi) | 1989-12-08 |
FI892779A0 (fi) | 1989-06-07 |
FI96645B (fi) | 1996-04-15 |
YU117089A (sh) | 1992-07-20 |
DE68926837T2 (de) | 1997-03-06 |
JPH0251755A (ja) | 1990-02-21 |
EP0349757B1 (en) | 1996-07-17 |
ES2090023T3 (es) | 1996-10-16 |
KR930002314B1 (ko) | 1993-03-29 |
NO176633C (no) | 1995-05-03 |
AU612035B2 (en) | 1991-06-27 |
NO892310D0 (no) | 1989-06-06 |
CA1328026C (en) | 1994-03-22 |
KR900000773A (ko) | 1990-01-31 |
AU3592489A (en) | 1989-12-14 |
CN1024600C (zh) | 1994-05-18 |
DE68926837D1 (de) | 1996-08-22 |
HRP921095A2 (hr) | 1994-04-30 |
EP0349757A3 (en) | 1990-09-19 |
NO892310L (no) | 1989-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5426750A (en) | Translation lookaside buffer apparatus and method with input/output entries, page table entries and page table pointers | |
US5073851A (en) | Apparatus and method for improved caching in a computer system | |
US5119290A (en) | Alias address support | |
US5956756A (en) | Virtual address to physical address translation of pages with unknown and variable sizes | |
US4785398A (en) | Virtual cache system using page level number generating CAM to access other memories for processing requests relating to a page | |
US4471429A (en) | Apparatus for cache clearing | |
US5465337A (en) | Method and apparatus for a memory management unit supporting multiple page sizes | |
US5991757A (en) | Method and system for searching an array for an array value | |
US5060137A (en) | Explicit instructions for control of translation lookaside buffers | |
US5283882A (en) | Data caching and address translation system with rapid turnover cycle | |
US6493812B1 (en) | Apparatus and method for virtual address aliasing and multiple page size support in a computer system having a prevalidated cache | |
EP0118828A2 (en) | Instruction fetch apparatus and method of operating same | |
US4241401A (en) | Virtual address translator utilizing interrupt level code | |
EP0911737A1 (en) | Cache memory with reduced access time | |
US6604184B2 (en) | Virtual memory mapping using region-based page tables | |
US5305444A (en) | Apparatus for increasing the number of hits in a translation lookaside buffer including instruction address lookaside register | |
US5479629A (en) | Method and apparatus for translation request buffer and requestor table for minimizing the number of accesses to the same address | |
US5781922A (en) | Page boundary caches | |
US4648033A (en) | Look-aside buffer LRU marker controller | |
EP0212129B1 (en) | Method of updating information in a translation lookaside buffer | |
FI96645C (fi) | Laite ja menetelmä näennäisen osoitteen kääntämiseksi tehostetusti todelliseksi osoitteeksi välimuistiyksikön osoitusta varten | |
GB2210479A (en) | Alias address support | |
US5721863A (en) | Method and structure for accessing semi-associative cache memory using multiple memories to store different components of the address | |
US5838946A (en) | Method and apparatus for accomplishing processor read of selected information through a cache memory | |
GB2037466A (en) | Computer with cache memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
BB | Publication of examined application | ||
MM | Patent lapsed | ||
MM | Patent lapsed |
Owner name: BULL HN INFORMATION SYSTEMS INC. |