FI86485C - Portzonkontroll. - Google Patents

Portzonkontroll. Download PDF

Info

Publication number
FI86485C
FI86485C FI851639A FI851639A FI86485C FI 86485 C FI86485 C FI 86485C FI 851639 A FI851639 A FI 851639A FI 851639 A FI851639 A FI 851639A FI 86485 C FI86485 C FI 86485C
Authority
FI
Finland
Prior art keywords
data
cpu
zone
block
unit
Prior art date
Application number
FI851639A
Other languages
English (en)
Swedish (sv)
Other versions
FI86485B (fi
FI851639L (fi
FI851639A0 (fi
Inventor
Daniel M Mccarthy
Original Assignee
Honeywell Inf Systems
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 Honeywell Inf Systems filed Critical Honeywell Inf Systems
Publication of FI851639A0 publication Critical patent/FI851639A0/fi
Publication of FI851639L publication Critical patent/FI851639L/fi
Application granted granted Critical
Publication of FI86485B publication Critical patent/FI86485B/fi
Publication of FI86485C publication Critical patent/FI86485C/fi

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0855Overlapped cache accessing, e.g. pipeline
    • G06F12/0859Overlapped cache accessing, e.g. pipeline with reload from main memory

Description

1 86485
Porttlvyöhykkelden ohjous . _ Portzonkontroll.
Keksinnön kohteeno ovot elektroniset jo digitaaliset tietokonejärjestelmät. Tarkemmin sanottuno sen kohteena ovat ohjausele-mentlt tällaisten järjestelmien keskusyksikössä.
Kuten vlrellläolovassa patenttihakemuksessa, sorjanumero 470,127, jättänyt 28.0283 C. P. Ryan et ai, on esitetty, eräs kehittyneiden tietokonejärjestelmien tarkoitus on parantaa tle-don läplmenoa järjestelmässä. Tähän saakka on käytetty suurlno-peukslsla välimuisteja, jolta suuremman toimintanopeuden saavuttamiseksi käytetään mulstllntalletuspohjalta. Tämä tarkoittaa, että tieto, joka on haettu päämulstlsta ja jota on käsitelty tai muuteltu keskusyksikössä, talletetaan vain välimuistiin; muuteltua tietoa el tavallisesti palauteto päämulstlln paitsi erikoistilanteissa. Myös vlrellläolevassa, edellä mainitussa oatenttlhakemuksessa, sekä vlrellläolevassa patenttihakemuksessa, sarjanumero 511,616, jättänyt T. Houiell et ali, esitetään myös, että tietokonejärjestelmä voi sisältää kaksi toi useampia keskusyksiköltä, jotka käyttävät yhtä jaettua päämulstlo. Tällaisessa järjestelmässä tietoelementin viimeinen versio voi olla voin yhden keskusyksikön välimuistissa. Kuten edellämolnltulssa patenttihakemuksissa on mainittu, on järjestetty keinot suora-saannin mahdoIIIstorn Iseksl yhden keskusyksikön yhteydessä olevaan välimuistiin toisen keskusyksikön sitä pyytäessä järjestelmässä.
Jotta tiedon läplmenoa pystyttäisiin parantamaan tletokonejär-. jestelmässä, käytetään järjestelmää liukuhihna-protokollan mu- ....: kalsestl. Tämä tarkoittaa sitä, että sorja käskyjä kohdistetaan ; peräkkäin järjestelmän sisääntuloon tietokoneen peräkkäisinä ;v klerrosalkajoksolna Ilman, että täytyisi odottaa edellisen ru-'* tllnln päättymistä. Siis esimerkiksi viittä aikajaksoa kohti liukuhihnalla voi olla viisi eri käskyä samanaikaisesti vai- • · · '· *: mlstumlsen peräkkäisissä valheissa.
Edellämolnltulssa vlrellläolevlssa hakemuksissa esitetyssä jär- .·*·. jestelmässä aina, kun tietoa siirretään sisään tai ulos väli-» · · «· * • · · • # • · 2 86465 muistista, siirretään koko Lohko tietoa. EsImerkk'(.toteutuksessa jokainen tietolohko koostuu kahdeksasta sanasta tietoa, kun taas CPU käyttää yhtä yksittäistä sanaa tai niinkin pientä yksikköä kuin osoitetun sanon yhtä tavua, ja osoitetun sanon sisältävä sanalohko siirretään talletusta varten vastaavaan välimuistiin. Tiedonsiirrot CPUrsta välimuistiin vaativat tavallisesti huomattavasti vähemmän alkaa, kuin tiedonsiirto päämulstlsta. Tämä vaatii tletovuon ohjausta sen varmistamiseksi, että muuteltu tieto lomltetoon oikein sen tietolohkon lopun kanssa, joka on hoettu pöämu1stIsto.
Tämän keksinnön eräs tehtävä on vastaavasti muodostaa parannettu tietokonejärjestelmä, jolla on parempi läplmeno.
Tämän keksinnön toinen tehtävä on muodostaa, esitetyssä tietokonejärjestelmässä, elimet lukuisista lähteistä tulevan tiedon lomlttamlsen ohjaamiseksi vällmulstlykslkköön.
Näiden ja muiden tehtävien toteuttamiseksi on keksinnön mukaisesti muodostettu rekIsterlyksIkkö, johon on talletettu asianmukainen tieto lukuisten vällmulstltapahtumlen suhteen siten, että se yksilöi sen osoitetun sanolohkon vyöhykkeet, joka on yksittäisten tapahtumien kohteeno. Nämä tiedot otetaan rekisteristä väli- * · · : koldustl ohjaamaan vastaavan sanan yksilöityjen vyöhykkeiden toi '· ‘ ‘ vyöhykkeen lomittamista jälj elläolevan tiedon kanssa osoitetussa : sanalohkossa.
: Keksintö voidaan ymmärtää paremmin seuraavasta yksItyIskohtalses- ta kuvauksesta yhdessä liitteinä olevien piirrosten kanssa.
. . Kuva 1 on sen tyyppisen tletokonejärjestelmän lohkokaavio, joka • 1 voi olla tämän keksinnön toteutus.
• » · • · · « · * ··· Kuva 2 on sen tyyppisen CPU:n lohkokaavio, joka sopii käytettä-»··· .***; vaksi kuvassa 1 esitetyssä tietokonejärjestelmässä.
··« 3 86485
Kuva 3 on kuvosso 3 esitetyn rakenteen porttlkomponentln Lohkokaavio .
Kuva 4 on kuvassa 3 esitetyn oorttlykslkön vyöhykkeenohjauskom-ponentln Lohkokaavio.
Kuvat 5 ja ό ovat Lohkokaaviolta esittäen yksltyIskoh taIsemmin kuvassa 4 näytetyn vyöhyk keIdenohjauselementin tiettyjä piirteitä.
Viitaten nyt yksityiskohtaisemmin piirroksiin, on kuvassa 1 esitetty tietokonejärjestelmä, joka slsäLtää ensimmäisen keskusyksikön (CPU) 2 jo toisen CPU:n 4. Siinä on myös ensimmäinen keskus Liitäntä yksikkö (CIU) 6 ja toinen keskusLiitäntäyksikkö (CIU) 8. Ensimmäisessä CPU-ykslkössä 2 on eLlmet, jotta se voi oLla yhteydessä ensimmäisen CIU:n 6 ja toisen CIU:n 8 kanssa. SamaLLa tavaLla tolseLLa CPU:ilo 4 on eLlmet, jotta se voi oLLa yhteydessä ensimmäisen ClUtn Λ ja toisen CIU:n 8 kanssa. Järjestelmässä on myös yksi tai useampia slsääntuLo/uLosmeno-ykslköltö (I/O U) 10 jo 12, tässä järjestyksessä. Nämä yksiköt muodostavat periaatteessa Limitetyn Liitännän järjestelmän Cl Uiden 6 ja 8 sekä I/O-oheIs LaLtte Iden välille. Ensimmäinen mulstlykslkkö 14 on kytketty Liitettäväksi ensimmäisen CIU:n 6 yhteyteen. SamaLLa ·’ ‘ tavaLLa toinen mulstlykslkkö 16 on kytketty Liitettäväksi toisen : CIU:n 8 yhteyteen. TäLLalsessa järjesteLmässä keskusyksiköt 2 ja 4 suorittavat niiden tavallista tiedon Laskennallista käsltte- ·:**: Lyään.
• « • · «
Tieto vastaanotetaan slsääntuLo/ulosmeno-ykslköILtä 10 tai siirretään nllLLe. KeskusLlltäntäykslköt 6 ja 8 suorittavat muun .·. · muassa LllkenteenhaLLlntatolmlntoja keskusyksikön ja sisääntulo/ I.." ulosmeno-ykslkä Iden ja vastaavien mu Is t ly k s Ikä Iden välillä.
Mulstlykslköt 14 jo 16 muodostavat muistipaikan alkuperäiselle : tiedolle sekä myös tiedolle, jota CPU:t ovat käsitelleet. Tässä « •» · • · · • · • · ♦ · 4 86485 esitetyssä järjestelmässä huomataan, että kumpikin keskusllltän-täykslkkö 6 ja 8 voi olio suorassa yhteydessä kummankin kahden keskusyksikön 2 ja 4 kanssa. Molemmat kesilltäntäyksiköt ovat yhteydessä slsääntulo/ulosmeno-ykslkölhln 10 ja 12. Lisäksi keksinnön esImerkkItoteutuksessa kummallakin kahdesta CIU:sta on kyky olla suoraan yhteydessä järj e steImän toiseen puoliskoon liittyvän muistin kanssa. Täten nähdään, että kuvatun jarjes-telmän kahden puoliskon välillä on kesklnälsllltäntämahdolll-suus.
Kesklnälsllltäntämahdolllsuuden takia on tarpeellista, että jär-jesteImän lukuisat komponentit ovat kalkki synkronoituja toistensa suhteen. Tähän asti järjestelmässä on ollut ohjauskeskus 18. Ohjauskeskus 18 on tosiasiassa vielä yksi CPU, jonka tehtävänä on määritellä perusohjausoperaatlot järjestelmälle, käsittäen toimintayksiköiden synkronlsaatlon
Kuvassa 1 näytetty rakenne on esitetty sen ympäristön kuvaamiseksi, jossa järjestelmä toimii.
Kuvassa 2 on näytetty sellaisen CPU:n, kuten kuvassa 1 esitetty CPU 2, pääkomoonentIt tai osajärjestelmät; toinen CPU 4 on rakenteeltaan edenttlnen. Kuten tavallista, CPU 2 sisältää väll-·1·1: muistin. Kuvassa 2 esitetyssä eslmerkk Itoteu tuksessa tämän vä- ·'·’ llmulstln on esitettä koostuvan kahdesta osasto tai yksiköstä, . jolloin toinen osa on köskyvöllmulstl 20, jota tämän jälkeen ____: kutsutaan I-välimuistiksi. Toinen välimuistin osa on esitetty . ^ operandIvälImu IstIna 22, jota tämän jälkeen kutsutaan 0-väll- “.1 muistiksi. Keskusyksikön llukuhlhnarakenne (CUPS) 24 ohjaa pro-• · · · sessorln 2 yleistoimintoa. Käskynhakuykslkkö 26 syöttää tai vie käskysanojen osoitteen käskyvälimuistiin 20 ja/tal operandlvä- • · llmulstlln 22. Vastineena sille, että käsky välimuisti vastaan- « · · · ottaa käskyn osoitteen käskynhakuykslköltä 2ό, käskykaksolssana tuodaan välimuistilta 20 tai 22 käskynhakuykslkköön 26. Käskyn- e · · » .···. hakuykslkkö 26 puolestaan tallettaa sarjon käskyjä käskyplno-• · • · · · · * · · 5 86485 muistiin, joko on osa käskynhakuykslkköä 26.
Keskusyksikön lluk uhlhnonokenne (CUPS) 24 soo käskyt ohjelman mukaisessa järjestyksessä käskynhakuykslkon 26 käskyplnosta.
CUPS-yksikkö 24 muodostaa vllslvalhelsen liukuhihnan, joka, kuten on tarkemmin kuvattu edellämainitussa vlrellläolevossa hakemuksessa, sekä Wllhlte'n ja Shelly'n yhdysvaltalaisessa patenttijulkaisussa numero 4,471,432, käsittelee käskynhakuykslköstä 26 saadut käskyt ja suorittaa to ImintakoodIn dekoodauksen sekä operandlosoltteen muodostamisen.
Kuten myöhemmin tarkemmin selitetään, jos vaadittu tieto löydetään vällmulstlykslköstä, niin tällainen tieto otetaan ulos ja syötetään jakelijan 2d kautta sopivalle lukuisista suorltusyksl-kö Is tä.
Tietokonejärjestelmän eslmerkkItoteutuksessa lukuisat suoritus-yksiköt sisältävät ensimmäisen keskussuorltusykslkön 30, jonka arkkitehtuuri on erityisen sopiva suorittamaan perustietokone-operaatio Itä , kuten yksinkertaisia siirtoja, lisäyksiä, vähennyksiä, jne. Keskussuorltusykslkkö (CEU) 30 on lisäksi tunnettu siltä, että se suorittaa operaatiolta kuten-vastaanotettu-pohjalta. Toinen suorItusykslkkö yksilöidään virtuaaliseksi ja * turvallisuuden hallintoyksiköksi (VMSM) 32. Tämä yksikkö suorlt-•V.
• .1 taa käskyjä jouden kohteena on vlrtuaollmuIstu, turvallisuus, * «1 *.:,ϊ sekä erukolskäskyjä, jotka ovat omunausua käyttöjärjestelmän varmistamiseksi. Kolmos suorltusykslkkö yksilöidään binääriseksi :1· aritmeettiseksi yksiköksi (BINAU) 34. Tämän yksikön arkkltehtuu-*·· 1 rl on erityisesti kohdistunut binääristen aritmeettisten käskyjen suuntaan, kuten kertominen, jakaminen ja llukulukukäskyt.
. Neljäs suorltusykslkkö eslmerkkltoteutuksessa yksilöidään desi-* · 1 moall/merkkltledon käsittely-yksiköksi (DECCU) 36. Tämä yksikkö • m 1 *·1 1 on erityisen sopiva suorittamaan desimaalisia aritmeettisia, al-·2 fanumeerlslo ja b111ImerkkIjonokäskyjö.
I·»· • · • · • · · · · 2 * · · • · 6 86485
Jokainen suorLtusyksIköIstö 32, 34 jo 36 on varustettu slsääntu-LopLnoLLa slsääntulokäskyjen jo -tiedon varastoimiseksi jo peräkkäiseksi syöttämiseksi vastaaville suorItusykslköllle. Samalla tavalla jokainen suorltusykslköIstä 32, 34 ja 36 on varustettu tulosplnolla vostaavlen suorltusykslkölden suorituksen tulosten varastoimiseksi ja peräkkäiseksi syöttämiseksi. Käskynsuorl-tusjono 38 tallettaa keskusyksikön liukuhihnaraken teen 24 ohjauksessa suorItusjonosanat ohjelman mukaisessa järjestyksessä. Kollektorlohjausykslkkö 40 käyttää käskynsuorltusjonosanoja ohjaamaan järjestystä, jolla tulostieto luetaan kunkin suoritus-yksikön 30, 32, 34 ja 36 tuLosplnoon. Nämä suorltustulokset voidaan tällaisen ohjauksen alaisuudessa tallettaa joko varmuus-muistiin 32 tai mulstlplnoon 44 käyttämällä valittua kytklnjär-jestelyä 46. Käskynsuorltusjonoykslkkö 38, kollektorlnohjaus-tjkslkkö 40, päävo rmuusmu Is 11 42, mulstlplno 44 ja valltslnkyt-kln 46 ovat sellaisen yksikön osakomponentteja, joka yksilöity kollektoriksi 48.
Kaikelle edelläolevalle on edellytyksenä, että vaadittu tieto löydetään välimuistirakenteesta 20 tai 22. Siinä tapauksessa, että vaadittua tietoa el löydetä vällmulstlykslköstä, haetaan päämu1stIsto 14 CIU:n 6 kautta, jotta saataisiin vaadittu tieto, CIU:sta puolestaan hoetaan vällmulstlykslkölllä 20 tai 22 port-".· * tlykslkön 50 kautto. Sootu tieto talletetaan vällmulstlroken-t '· teeseen. Tämän jälkeen CPU:n toiminta jatkuu kuten esitettiin.
: Kun valittua tietoa on käsitelty kyseessäolevllla yhdellä tai useammalla suorltusykslköllä, tieto talletetaan takaisin väll-: muistirakenteeseen mulstlplnon 44 avulla.
Kuvassa 3 on kuvassa 2 viitatun porttlykslkön tolmlntalohkokaa- . . vlo. Porttlykslkön 50 ensisijainen tehtävä on muodostaa liitän-» · « n°n ohjaus CPU:n ja CIU:n välille. Porttlykslkkö muodostaa kaksi *·* pääsekvensslä edellämainitun ohjauksen aikaansaamiseksi. Enslm- ·;* mainen näistä riippuu liukuhihnan aktiivisuudesta CPUrssa ja vas-taavassa välimuistissa. Toiseksi porttlykslkkö ylläpitää hake- • · · • · 7 86485 mlstoo, joko on välimuistin hakemiston kaksoLskoppoLe jo jota tässä tuLLaon kutsumoon kaksolskappalehakemlstoksl.
Suorittaakseen nämä ohjoustoLmLnnot porttlykslkkö sLsöLtää Lukuista allykslkkökomoonentteja. Ensimmäinen näistä allykslkkö-komponenteista on llukuhlhnon oktllvlsuusohjous 52. Toinen tällainen allkomponenttl on kaksolskappalehakemlston aktiivisuus-ohjaus 54. Lisäksi on kaksolskappaLehakemlsto 56, l-plnon suo-jausykslkkö 58, porttlmulstln hakemisto 60 ja vyöhykeohjalnyk-slkkö 62. Jokainen näistä komponenttlykslkölstä on kuvattu siten, että niistä Lähtee ja niihin tuLee Lukuisia Linjoja. Nämä Linjat sen sijaan, että ne esittäisivät fyysisiä johtimia, kuvaavat niitä slgnaalltyyppejä, jolta syötetään komponenttlykslkköön ja vastaanotetaan sleLtä. Lisäksi kuvassa on lukuisia katkoviivoja, jotka on varustettu merkinnällä CIU ja CPU, tässä järjestyksessä. Nämä viivat esittävät tietokonejärjestelmän niitä pääkomponent-teja, jotka eivät sisälly porttlykslkköön 50 ja joiden kanssa porfctlyksIkkäkomponentit ovat yhteydessä.
Liukuhihnan aktllvlsuudenohjausykslkkö 52 on Looginen piiri, joka muodostac periaatteellisen ohjausLlltännän porttlykslkön 50 ja CPU:n väLlLLe. Liukuhihnan oktllvlsuusohjausykslkkö 52 vastaanottaa KOMENTO-slgnaaleja O-vällmulstlsta. Koska joskus sekä • · · ·1 O-väLLmulstla että I-välimuistia haetaan CPU-operaatlossa, täy-• · · • V tyy liukuhihnan aktllvlsuusohjausykslkön 52 vastata myös ΚΘΜΕΜΤ0- slgnaaLelhln, jotka kohdistuvat I-välimuistiin. Silloin kun I-·;2: välimuistin haku on samanaikainen 0-välimuistin haun kanssa, • komento I-välimuistista on Identtinen 0-välimuistista tulevan kanssa. 0-vällmulstllta tuleva komentoslgnaall sisältää kuitenkin * · signaalin, joka Ilmaisee, että se on joko pelkkä 0-vällmulstLn j haku tai molempien välimuistien haku. Välimuisteista vastaonote- • · · I./ taan myös signaali, joka Ilmaisee välimuisteissa tapahtuneen haun *. tuloksen; eli OSUMA tai OHI. Liukuhihnan oktllvlsuusohjausykslkkö 52 korreloi nämä komennot ja CPUrlta tulevat HAUN TULOS-slgnaa-: : lit muilta yksiköiltä saadun tiedon kanssa, kuten myöhemmin toi— • m · • · m 1 m · • · 2 s 86485 kemmln kuvataan, ja muodostaa komento- ja ohjaussignaalit muille komponenteltle porttlykslkössä 50 sekä Lähettää komennonohjaus-slgnaallt vastaavalle CIU:LLe.
LlsäksL Liukuhihnan oktllvlsuusohjausykslkkö 52 Lähettää ohjaus-slgnaaLeja kyseessäoLevaLLe CPU:Lie. Esimerkiksi TALLETA-ohjaus-slgnaaLl Lähetetään CPU:n koLLektorlLLe 48 tuLoksena vällmulstl-hausta TALLETA- tai KIRJOITA-komentoa varten. Yksikkö 52 muodostaa myös KATKAiSU-ohjausslgnaalin välimuistia varten ja/tal PITO-ohjaussignaalin CUPS-ykslköLLe 24. Nämä kaksi viimeistä slgaaLla Ilmaisevat, että Llukuhlhnaoperoatlolden järjestyksessä on kutsuttu sellaista sarjaa, joilla jälkimmäiset proseduurit muodostavat virheellisiä tuloksia. Vastaavasti KATKAISU- ja/tal PITO-slgnaallt muodostavat ohjauksen CPU:Ile, joka väliaikaisesti lopettaa CUPS-ykslkhn ja/tal vällmulstlykslkön toiminnan aiheuttaen seuraavan uudelleen yrittämisen näille proseduureille, kun häiritsevät o o eroatlot on puhdistettu.
Liukuhihnan oktllvlsuusohjausykslkkö 52 vastaanottaa myös CUPS-ykslköltä PERUUTUS-sIgnaaIin. Tämä signaali Ilmoittaa, että CUPS-ykslkössä on taoahtunut el-salllttu tila ja kalkki liukuhihnalla tietyn jakson jälkeen olevat signaalit tulisi perua. CUPS-ykslkkö tietysti käynnistää uudelleen liukuhihnan.
• « · • · • # · : V KaksoIskappalehakemIs ton oktllvlsuusohjausykslkkö 54 muodostaa ohjaussignaaleja, jotka ovat seurauksena hauista kaksoiskappale-·.··· hakemistossa 56. CPUrssa kummatkin vällmulstlykslkölstä 20 jo 22 | ovat tletojonon ja hakemlstojonon muodossa. Kuten on tavanomals-to, on hakemlstojono osoitetiedon tietue sitä tietoa varten, jo- • · ka on talletettu vastaavaan tletojonoon. Kun vällmulstlykslköls- . . tä haetaan, niin tutkitaan hakemistoa etsittävän tiedon osolt-• · · ' • · · teen löytämiseksi. Kuvassa 3 esitetyssä porttlykslkössä kaksols- kappalehakemlsto on Itse asiassa molempien vällmulstlykslkölden ' j* hakemlstojonojen kokso Is kappale CPU:ssa. Hakemiston monistaminen :* *: porttlykslkössä mahdollistaa nopeamman hakutledon saannin siksi, • · 1 · k · « • · • · m • · “
9 S 6 4 SS
että kaksoiskappalehakemistoa voidaan tutkia erillään völimuis-tlykslkölden hakemistoista ja samanaikaisesti niiden kanssa. Kaksolskappalehakemlsto vastaanottaa komentoslgnaalln liukuhihnan aktilvIsuusohjausyksiköltä 52, joka edustaa komento-ohjausta CPU:n toiminnan suhteen. KaksoLskoppalehakemlsto 56 voi myös saada KOMENTO- jo 0S0ITE-signaaleja ClU:lta, jotka edustavat kyseisen CPU:n ulkopuolelta peräisin olevia toimintoja, esimerkiksi toiselta kuvassa 4 esitetyistä kahdesta CPU:sta.
Kuten yhdysvaltalaisessa patenttijulkaisussa numero 4>695,951, jätetty 7. heinäkuuta 1983, on esitetty, mainitut kaksi CPU:ta voivat toimia jaetun muistin pohjalta ja ne voivat toimia indenttisellä tietolohkolta. CIU muodostaa hierarkian ohjauksen, jotta voitaisiin ylläpitää kunnollista tiedon siirtoa CPU:iden ja päamuistin välillä. Kuten myös myöhemmin yksityis k oh ta isemmin nähdään, kaksolskappalehakemlsto 56 vastaanottoa myös osoitetietoa porttimuistihakemistosta 60. Kun kaksois-kappalehakemisto on vastaanottanut komennon joko liukuhihnan aktiivisuusohjaukselta tai ClUilta vastaten hierarkiaohjousta sekä osoitesignaalin, suoritetaan haku koksoiskoppalehokemiston sisällölle, jotta voitaisiin määrätä, onko osoitettu tietolohko kyseessäolevassa välimuistissa. Kaksolskappalehakemlsto muodostaa sitten OSUMA- tai OH I-signaalin, HAUN TULOKSENA, ja lähettää f · ·* ’ tämän signaalin koksoiskoppalehokemiston aktiivisuusohjaimelle : 54 sellaisen komentosLgnaalLn kanssa, joka ilmaisee haun aloit- taneen komentoslgnaalln tyypin ja lähteen. Kaksoiskappalehake- miston aktiivisuusoh jausyksikkö 54 korreloi :· sitten KOMENTO- ja : HAUN TULOS-signaalit kaksoiskappalehakemistolta 56 porttimuisti- • · · · • V. hakemIstolta tulevan HAUN TULOS-signaolin kanssa, sekä muiden » * signaalien kanssa, kuten HÄIRIÖ ja VARAA VAIHTO PYYNTÖ-signaalien .·. j kanssa liukuhihnan aktiivisuusohjausyksiköltä, määrätäkseen, voi- • * · daanko ilmoitettu toiminta suorittaa suoraan, vai tapahtuuko • · · ristiriita. Sikäli, kun kaksoiskappolehokemistoa 56 käytetään ensisijaisesti tutkimaan välimuistin sisältöä ClUrlta tulevaa t hierarkiapyyntöä varten, kaksoiskappalehakemiston aktiivisuus- • · · • · · • ♦ • · • · ίο 8 6 4 S 5
ohjausyksikkö 54 muodostaa hierarkiavastaussignaalin takaisin CIU:Ile, joko on luonteeltaan PYYNTÖ SUORITETTU-signaoli. Vaihtoehtoisesti, jos tietoa on siirrettävä pois kyseessäole-vasta välimuistista, niin yksikkö 54 lähettää VAIHTO-signaalin CPU:Ile aloittaakseen vaihtorutiinin. Samanaikaisesti tämän kanssa yksikkö 54 lähettää signaalin, joka Ilmoittaa VAIHDA PUSKURI OSOITE CIU:lle. Kuten edellämainitussa yhdysvaltalaisessa patenttijulkaisussa numero 4,695,951, on esitetty, CIU
sisältää vaihtopuskurin väliaikaisena talletusyksikkönä vaihto-operaatioiden oikona. Kun vaihto-operaatio on ilmoitettu, kak-solskappalehakemlston aktiivisuusohjausyksikkö 54 muodostaa VAIHTO KÄYNNISSÄ-signaalin liukuhihnan aktiivisuusohjausyksi-kölle 52.
Joskus tapahtuu, että sallittu toiminto vaatii muistio välimuistista uudelta tietolohkolta varatussa muistiosoitteessa siellä, ja siihen osoitteeseen jo talletettu tieto on voimassaolevaa. Koska muistissa välimuistirakenteessa ainoa kopio tällaisesta voimassaolevasta tietolohkosta on se, joka on välimuistissa, täytyy tämä tieto siirtää takaisin päämulstiin ennenkuin uusi tieto voidaan tallettaa välimuistiin. Tällainen vaatimus on yksi niistä käskyistä, joita liukuhihnan aktiivisuusohjausyksikkö 52 saa O-välimuistista. Tämä puolestaan johtaisi VARAA SIIRTO VAA- • ti 'it DITTU-signaaliin liukuhihnan aktiivisuusohjausyksiköltä kaksois-kappaiehakemiston ok tiivis uusoh jausy ks ikä lie 54. Kaksoiskappale-: ;*· hakemisto 56 aloittaisi sitten siirtorutiinin CPU:n ja CIU:n kanssa, kun liukuhihnan aktiivisuusohjausyksikkö 52 aiheuttaisi : katkon proseduurissa välimuistiin salliakseen siirto-operaation #·#·> tekemisen loppuun ensin. Liukuhihnan ohjausyksikkö 52 ja kaksois-kappalehakemiston aktiivisuusohjausyksikkö 54 ilmoittavat toi- . . nen toisilleen, jos häiriö on hava ittu j ommassa kummassa, joka • * · '· *’ voisi estää esitettyjen ohjausten kelvon suorittamisen. Samalla »«· ^ i · i "·* tavalla CIU ilmoittaa ka k so isk apoa teho kem is ton ok t iiv isuusoh j aus-« n 86485 duurit. Jos kaksoiskoppalehokemIston aktllvlsuusohjausykslkkö 54 on vastaanottanut tällaisen VIRHE- tai HÄIRIö-llmalsun, Ilmoittaa yksikkö 54 kaksolskappolehakemlstolle 56, että hokukösky tulisi toistaa. Toistetussa haussa hälrlöehtoa tulisi lieventää.
Kuvan 2 I-hakuyksIkössä on käskyplno, johon on talletettu ne käskyt, jotka on edeltäkäsin haettu vällmulstlykslkölltä 20 ja 22. Sinä aikana, jona käskyt haetaan ennakkoon vätlmulstlykslköls-tä ja talletetaan käskyplnoon, sekä jona ne kutsutaan ja käytetään CPUtssa, voi muutoksia olla tapahtunut halutussa tiedossa seurauksena CPU:n välltolmlnnosto. Toisaalta välimuistista haettu käsky voi olio suhteessa tietoon, joka jo on liukuhihna-proseduurissa. Molemmissa tapauksissa on mahdollista prosessin jatkuessa käskyplnoon sijoitetuilla käskyillä, että tietokonejärjestelmä suorittaa virheellisiä toimintoja.
Tällaisten tapahtumien välttämiseksi on muodostettu l-plnon suo-jausykslkkö 58. l-plnon suojousykslkössä 58 on rekisteri l-plnon jokaista palkkaa varten. Vällmulstlosoltetta I-hakuykslköltä verrataan, kuten tullaan näkemään porttlmulstlhakemlston 16 selityksen yhteydessä, sen määräämiseksi, onko olemassa häiritsevä toiminto, joka mitätöisi esitetyn toiminnon suhteessa käskyyn.
Jos tällainen häiritsevä toiminta havaitaan, lähettää l-plnon ... suojausykslkkö 58 siltä riippuen, mikä on häiritsevän toiminnan • · · luonne, peruutusslgnoolln I-hakuykslkölle peruakseen valitun : .· sisääntulon I-hakuykslkössä. Vaihtoehtoisesti, jos välimuisti ·.·.1 °H saanut K I R JO I TUS-komennon tiedon tallettamiseksi annettuun *:2: osoutteeseen välimuistissa, tämä osoite viedään myös l-plnon : suojausykslkköön verrattavaksi l-oonon sisällön kanssa. Jos ta- vetoon OSUMA, lähettää l-plnon suojausykslkkö 58 UPOTA I-PIN00N- · signaalin I-hakuykslkölle, nollatakseen kalkki sen jälkeiset .·. : käskyt, jonka jälkeen OSUMA havaittiin. UPOTA I-PINOON-slgnaall lähetetään myös liukuhihnan aktllvlsuusohjausykslkölle 52, joko * · » puolestaan lähettää PIDÄ-sIgnoolln CUPS-ykslkölle pldättääkseen tämän toimintoa kunnes l-plno on upotettu.
• ♦ · • · • · · ♦ · · • · · 2 • · • · 12 86485
Porttlmulstlhakemlsto 60, joko on kuvattu tarkemmin ja josta on esitetty patenttivaatimukset Fl-hakemuksessa nro 851638, jätetty tämän kanssa samanaikaisesti, sisältää ensisijaisesti rekisterin osoitetietoa varten jokaista nimikettä varten, joka on syötetty liukuhihnalle käsittelyä varten ja jonka käsittelyä el vielä ole saatettu loppuun. Porttlmulstlhakemlsto 60 vastaanottaa osoitetiedon suoraan välimuistista jo se vastoanottaa ko-mentoslgnaalln liukuhihnan a ktlivIsuusohjausyk s Ikä Itä 52. Liukuhihnan aktlivIsuusuksIkälta 52 tulevan komentosIgnaalln ohjauksen ala'osuudessa porttlmulstlhakemlsto tallettaa osoitetiedon sopivaan palkkaan oorttImulstIhakemlstossa. Eslmerkkltoteutuk-sessa porttlmulstlhakemlston rekisteri koostuu neljä kertoa neljä slsäänmenolsesta matriisista. Tämä tarkoittaa sitä, että siinä on neljä tasoa, joista jokainen taso sisältää neljä joukkoa. Jokainen sisäänmeno eslmerkkItoteutuksessa sisältöä 40-bltln sanan, joka puolestaan sisältää 16-blttlä todellista muistiosoitetta, 11-bltln vällmulstlosoltteen, 1-bltln välimuistin tunnisteen joka tunnlstoa, kuuluuko osoite O-vällmulstlln vai I välimuistiin), 2-bltln välimuistin lososlgnaalln (joka Ilmaisee, mitä välimuistin tasoa osoite edustaa), 2-bltln valhto-osoltusslgnaalln (joka Ilmoittaa osoitteen valhtopuskurlssa, jos vaihtoa osoitetaan), ja kahdeksan toiminnallista lippua, jotka Ilmaisevat, mitä toimintaa on kutsuttu tämän osoitteen yhteydessä. 16 slsäänmenoa porttlmulstlhakemlston rekisterissä tulisi sopia sisältämään • · · kalkki päätetyt toiminnot, jotka on ajoitettu liukuhihnalla.
♦ · · • » · • · • ·
Aina, kun CUPS-ykslkättä 24 (kuva 2) syötetään toiminnallinen ·;··: sisäänmeno liukuhihnalle, sen yhteydessä oleva osoite viedään Γ porttlmulstlhakemlstoon 60 ja komento liukuhihnan aktiivisuus- • · · · ohjausyksiköltä 52 Ilmaisee, että porttlmulstlhakemlston 60 rekisteri tulisi tutkia sen määräämiseksi, onko liukuhihnalla joku . . toinen lopettamaton operaatio, joka viittaa samaan osoitteeseen.
Jos tällaisen vertailun jälkeen yhtään samaa osoitetta el löydy ’·] porttlmulstlhokeinlstosta, niin uuden sisääntulon osoite vle- *:1 dään porttlmulstlhakomlstön matriisiin. Jos toisaalta löydetään ··· • 1 • · • · · · · • · · • · • · 13 86 485 porttlmulstlhakernlstosta toinen sisäänmeno, joka koskee samaa kuseessäolevaa osoitetta, arvioidaan OSUMA sen määräämiseksi, onko uusi sisäänmeno yhteensoplva aikaisemman slsäänmenon kanssa vai onko se rIstlrlldassa tämän kanssa. Mikäli seurauksena el ole ristiriitaa, uutta slsäänmenoa käsitellään erillisenä OH I — slsäänmenona. Jos toisaalta ristiriita on seurauksena, niin lähetetään ohjaussignaali CPU:Ile, jotta saataisiin alkaab vaadittava korjaava toiminta sen ristiriidan välttämiseksi, joka aiheuttaisi sen, että virheellistä tietoa tuotaisiin tietokonejärjestelmään.
Muistetaan, että osoitetieto I-hakuykslköltä 26 (kuva 2) syötetään l-plnon suojausykslköh 58 sisääntuloon. Sama osoitetieto syötetään porttlmulstlhakemlston 60 sisääntuloon. Tätä osoitetta myös verrataan vällmulstlosoltetletoon, joka jo on porttlmulstl-hakemlstossa 60. Jos samoa osoitetta el. löydetä porttlmulstlha-kemlstossa, oorttlmulstlhakemlsto lähettää etsinnän tuloksena OHl-signaalin l-plnon suojausykslkölle 58. Jos toisaalta sama osoite löydetään, arvioidaan OSUMA sen määräämiseksi, aiheuttaako OSUMA ristiriidan, joka puolestaan muodostaisi virheellisiä tuloksia tietokonejärjestelmään. Jos tällainen ristiriita olisi seurauksena, niin HAUN TULOS-sLgnaall, joka lähetetään l-plnon suojausykslkölle 58, IlmaIslsl sen ja l-plnon suojausykslkkö 58 lähettäisi sitten signaalinsa UPOTA Ι-ΡΙΝ00Ν.
• · · • · « · • « · : .* Samalla tavalla, kun signaaleja vastaanotetaan CIU:lta hlerarkla- *.i.: rakenteen kautto kaksolskappalehakemlstoon 56 esittäen k omen too *:**: jo osoitetta ClUtlta, osoitetta verrataan niihin-osoitteisiin, : :: jotka jo on talletettu kaksolskappalehakemlstoon, sen määrääml- seksi, on tämä tietolohko jo talletettu välimuistiin. Lisäksi koksolskoppalehakemlsto 56 lähettää osoitteen porttlmulstlhake- .·. : mlstoon sen määräämiseksi, onko tämä osoite sama kuin joku osol- • * · te sillä hetkellä liukuhihnalla, mutta vielä päättämättä. Tämän » · · osoitteen etsinnän tulokset lähetetään porttlmulstlhakemlston 60 kautta kaksolskapoalehakemlston ak t llk Isuusoh j a Ime Lie 54. Jos • · · • · • · · · • · · • · • · • · 14 8 6 4 S 5 osoitetta ellöydetä oor11Imu Istlhokemlstosta, lähetetään OHI etsinnän tuloksena. Jos sattuu OSUMA, arvioidaan OSUMA sen määräämiseksi, alheuttoako prosessin jatkaminen ristiriitaisen väärän tuloksen. Jos näin on, sopiva käsky lähetetään kaksols-kaopolehakemlston oktllvlsuusohjalmen 54 kautta, joko pyynnön toistamiseksi kaksolskappalehakemlstosta 5ό sen jälkeen, kun ristiriita on ratkaistu, tai lähetetään RI ST IRI ITA-sIgnaaII liukuhihnan aktllvlsuusohjausellmelle, jotta voitaisiin käynnistää korjaava toiminto CPU:ssa tai CIU:ssa vaadittavalla tavalla .
Toinen porttlmulstlhakemlston 00 tehtävä on tallettaa osoite- ja ohjaustieto CPU-aktllvlsuutta varten, kun CPU on käsittelemässä valittua tietoa. Kun CPU on saanut loppuun tiedon käsittelyn, käsittelyn tulos talletetaan CPU:n kollektorllle 48. Silloin, kun kollektorlssa oleva tieto pitää palauttaa välimuistiin taitetusta varten, lähetetään komento porttlmulstlhakemlstolle, joka antaa vällmulstlosoltteen ja vällmulstltason, johon kollektorll-la oleva tieto on talletettava. Samanaikaisesti, kun tieto kol-lektorllta talletetaan välimuistiin, porttlmulstlhakemlsto 60 lähettää tällaisen tiedon osoitteen myös kaksolskappolehakemls-tolle" 56. Täten kaksolskappalehakemlsto 56 voi säilyttää samankaltaisuutensa välimuistin hakemiston kanssa, jonne tieto talle-tettlln.
» · · ! Kun komento porttlmulstlhakemlstolle 60 sisältää KIRJOITA väli-• · · « Λ 1 muistiin signaalin, vällmulstlosolte lähetetään myös l-plnon suojausykslkölle 58. l-plnon suojausykslkkö 58 suorittaa vertal- ··' · lun sen tiedon kanssa, joka siihen on talletettu, määrätäkseen, « 1 · onko l-plnossa käskyä, joko pyrkisi ristiriitaan kyseisen KIRJO lTA—käskyn kanssa. Jos tällainen ristiriita on olemassa, I-pinon suojausykslkkö lähettää ohjaussignaalit liukuhihnan oh-::: jausykslköIle ja I-hakuykslkölle saadakseen aikaan tarvittavan korjaavan toiminnan.
• · · v
«•M
• · · • · » · • · 1 * 1 -is 86485
EsLmerkkLtoteutuksesso tieto siirretään päämulstlsta välimuistiin kohdekson sonon lohkoina. Jokainen välimuistin osoltepalkko on koksolssonon toi kohden sonon polkka kohdekson sonon lohkosta. Siten jokainen porttlmulstlhokemlstoon 60 talletettu osoite edustaa kaksolssanaa. CPU:n toiminta voi kohdistua olennaisesti pienempään yksikköön kuin koko kaksolssanoon. Itse asiassa se voi kohdistua koksolssonon toisen sano yhteen toi useampaan tavuun. Tapahtumien kuluessa tämän osoitteen kahdeksan sonon lohko voidaan kutsua päämulstlsta tai siirtää välimuistista, joka kuuluu toiseen muistiin. Tällaisessa tietokonejärjestelmässä on CPU:Ile luonteenomaista, että se el ododto koko kahdeksan sonon lohkon siirtämistä välimuistiin, ennenkuin se aloltaa käsllläolevan tiedon käsittelyn.
Koska tiedon siirto päämulstlsta on suhteellisesti hyvin hidas toimenpide, on mahdollista, että käsitelty tieto CPUrlta syötetään välimuistiin, ennenkuin päämulstllta tuleva tieto on soatu sisään. Jos tämä pääsisi tapahtumaan, kirjoitettaisiin päämulstlsta tuleva vanha tieto CPU:n tallettaman käsitellyn tiedon päälle välimuistiin, ja käsitelty tai uusi tieto näin ollen menetettäisiin. Tällaisen menetyksen estämiseksi vyöhyk-keenohjausyksikkö 62 tallettaa sarjan vyöhykeohjausslgnaaleja jokaista slsäänmenoa kohti porttlmulstlhakemlstossa.60. Jokal- ... nen osoite porttlmulstlhakemlstossa vastoo koksolssonon sisään-• ♦ · • menoa välimuistia varten. Jokainen sana on muodostunut neliöstä »· · • · · : .1 tavusta tai vyöhykkeestä. Siten jokainen kaksolssana sisältäisi neljä vyöhykettä tai tavua. Jokainen koksolssonon vyöhyke esl-*:2: tetään yhden bitin signaalilla, joka on talletettu palkkarllp- : puvostl vyöhykeohjausykslkköön.
• · • 1 1 » 1 ·
Kuten kuvassa 3 on esitetty, vyöhykeohjausykslkkö vostaanottaa ,·. ; talletuskomennon CPUrlta, joka Ilmaisee että CPUrtä on käsketty aloittaa talletusoperaotlo annettuun osoitteeseen välimuistissa.
• · 1 *. Vyöhykeohjausykslkkö 62 vastaanottaa erityiset vyöhykeslgnaallt ··· ···· • » ♦ a · m · • · · • · · · 2 • · · 16 8 6 4 8 5 CPU:n kollektorilta 48 tai suoraan CPU:n DECCU-ykslköltä 36. Vyöhykeohjausslgnaallt Ilmaisevat, mitä kaksolssanan vyöhykkeet taL tavut CPU on varannut käslteLtävLksl. Nämä slgnaatlt muodostavat estosLgnaallt näLLLe vyöhykkeLLLe niin, että tieto el pääse niihin mistään muusta lähteestä. Kun toimenpide on suoritettu, vastaanotetaan KOMENTO VALMIS-slgnaall Cl Urita, jolloin vyöhykeohjausykslkkö nollaa tämän sisääntulon pinostaan. Sama signaali aiheuttaa SISÄÄNTULON RESETOI NT I-signaalin, joka lähetetään porttlmulstlhakemlstolle 60. Tämän SISÄÄNTULON RESETO I NT I -signaalin seurauksena nollataan vastaava Llppuslgnaall, joka on osa tietoa talletettuna kyseisen sisääntulon porttlmuls-tIhakemistoon.
Kuvassa 3 esitetyn porttlrakenteen vyöhykeohjousykslkkö 62 on esitetty yksityiskohtaisemmin kuvissa 4, 5 ja 6. Erityisesti, kuten kuvassa 4 on esitetty, vyöhykeohjousykslkkö sisältää ensimmäisen vyöhykeplnon 64, joka edustaa kaksolssanoja 0, ja toisen vyöhykeplnon 66, joka edustaa kaksolssanoja 1, kolmas. vyöhykeplno 68 edustaa kaksolsanoja 2 ja neljäs vyöhykeplno 70 edustaa kaksolssanoja 3. Jokaisella vyöhykeplnolla 64, 66, 68 ja 70 on kuusitoista sIsääntulolnen rekisteri, joista jokaisella sisääntulolla on kyky tallettaa vyöhykeohjausmerkkl kaksolssanaa varten. Eslmerkkltoteutuksessa jokainen sana sisältää neljä tavua tai vyöhykettä. Vastaavasti jokainen sisäänmeno vyöhykepl- • · · \1 1 nossa sisältää kahdeksan bitin sanan, jolloin kukin bitti vastaa • polkkansa suhteen kyseisen kaksolssanan tavua tai vyöhykettä.
: : : Siis kuten sanottiin, eslmerkkltoteutuksessa kahdeksan sanan loh- ·;·1: ko tietoa, joka on osoitettu vastaavaan välimuistiin, esitetään : kaksolssanan ohjausslonaalellla jokaisessa neljästä vyöhykepl- nosta 64, 66, 68, 70.
. . Sisäänmeno vyöhykeplnoon 64 saadaan aikaan valitsimen 72 kautta.
« · ·
Valitsin 72 on kakslslsääntulolnen valitsin, jossa yksi slsääntu- "·’ lo koostuu vuöhy kk oonohj ouss Lg naaleista , jotta oikeat vyöhykeoh- *:1 jausslgnaallt voitaisiin aktiivisesti ladata vyöhykeplnoreklste- • · • · · » · • · • · 17 8S4S5 rLLn 64. Toiset sisääntulot ovat kalkki loogisia noilla, jotka voidaan valinnaisesti aktivoida nollaamaan vastaava sisäänmeno vyöhykeplnoreklsterlssä 64. Samanlainen valitsin 74 on kytketty vyöhykeplnoreklsterln 66 sisääntuloon. Vastaavalla tavalla oo valitsimet 76 ja 78 kytketty vyöhykeoInojen 68 ja 70 sisääntuloihin, tässä järjestyksessä.
Signaaleiden sisääntulo valitsimiin 72, 74, 76 ja 78, ja siten niitä vastaaviin vyöhykeplnolhIn 64, 66, 68 ja 70, on muodostettu neljäkerrokslsen valitsimen 80 kautta. Valitsimen 80 ensimmäinen kerros on esitetty siten, että se on slsääntuloreklsterl kysessäolevan CPU:n kollektorllta‘48 vastaanotetuille vyöhyke-ohjaussignaaleille. Valitsimen 80 toisen kerroksen on esitetty olevan vyöhykeohjausslgnaallen vastaanottoja kyseessöolevan CPU;n DECCU-ykslköltä 36. Valitsimen 80 kolmanteen segmenttiin on merkitty YHDISTETTY kuvassa 4, ja se vastaanottaa ulostulot ulostulovalltslmelta 82, kuten myöhemmin selitetään. Valitsimen 80 kolmatta segmenttiä on merkitty YHDISTÄ. Tämä segmentti on järjestetty ottamaan vastaan ulostulosignaali vyöhykepuskurlsta 84, joka on kytketty suoraan valitsimen 80 ulostuloon. Valitsimen 80 ulostulo on myös kytketty valitsimien 72, 74, 76 ja 78 KUORMA-sIsääntulolhIn.
... Jokaisen vyöhykepinoykslkön 64, 66, 68 ja 70 ulostulo syötetään « « « ·*/ valitsimen 82 vastaavalle valltslntasolle. Siten kaksolssana 0, • ·' kaksolssana 1, kaksolssana 2 tai kaksolssana 3 voldaon valita erikseen. Valittu kaksolssana valitsimelta 82 syötetään vyöhyke-lähdepuskurlln 86. Tämän vyöhykelähdepuskurln 86 ulostulo syö-::: tetään valitsimen 80 YHDISTETTY-slsääntuloon. Vyöhykelähteen 86 ulostulo syötetään myös vällmulstlvyöhykepuskurlln, jotta todella voitaisiin ohjata esitetyn osoitteen sallimista valitussa .·. : välimuistissa.
• # · • * ··» • · · • · ·
Vyöhykeohjausykslkön toimintaan vaikuttaa kahden ohjauselementln • · · ...: toiminta, vyöhykkeen yhdistys- ja latausohjauselementln 90 ja • · · * · • · • · · •» · • · · • · « · is 86485 vyöhykkeen nollaus- jo lähdeohjauselementln 92, Nämä elementit on esitetty yksityiskohtaisemmin kuvissa 5 jo 6, tössä järjestyksessä. Kuten kuvasta 5 havaitaan, vyöhykkeen yhdistys- ja latausoh-jausykslkkö 90 vastaanottaa prosessorlmulstltletoa vastaavalta CPUrlta. Tähän kuuluu KELPO-slgnaall, joka Ilmaisee, että tulevat vyöhykeslgnaallt todella ovat kelvollisia esityksiä, TYYPPI -signaali, joka Ilmaisee, vastaanotetaanko signaaleja kollektorl-ykslköltä vai DECCU-ykslköltä. Myös VYÖHYKKEIDEN PIN0-0S0ITE-slgnaall vastaanotetaan, ja se yksilöi, mitä 16 sisääntulosta kussakin vyöhykeplnossa 64 - 70 osoitetaan. Vastaanotetaan myös KAKSOISSANAN 0S0ITE-slgnaall, joka yksilöi, mitä neljästä pinosta osoitetaan. Nämä signaalit syötetään ja varastoidaan vastaaviin rekistereihin. Siten KELPO-slqnaall talletetaan KELPO-re-klsterlln 94, TYYPPI-sIgnaa11 talletetaan TYYPPI-rekEsteriin 96, VYÖHYKKEEN PINO-OSOITE talletetaan samalla tavalla yksilöityyn rekisteriin 98 ja KAKSOISSANAN 0S0ITE-slgnaall talletetaan vastaavasti yksilöityyn rekisteriin 100.
Prosessorin talletustledon vastaanottaa ohjauselementtl 90 yhtä tietokoneen kellojaksoa ennenkuin vyöhykeslgnaallt Itse tuodaan valitsimen 80 sisääntuloon. TYYPPI-signaali rekisterissä 96 syötetään seuraavan kellosignaalin aikana valitsemaan KOLLEKTORI-vyöhykeslsääntulon ja DECCU-vyöhykeslsääntulon välillä, jotka ovat valitsimen 80 ensimmäiset kaksi valltslnsegmenttlä. Sen « · '' hetkistä P IN0-0S0 I TE-slgnaalla verrataan vertalmessa 102 pino-♦ · · • · · : .* osoitteeseen edelliseltä kierrokselta, joka on talletettuna re- klsterlln 98, sen määräämiseksi, onko kääntels-rlnnankytkettyjä mulstlkäskyjä yksilöidyn tiedon samaa lohkoa varten plno-osolt- : teessä. Samalla tavalla sen hetkistä KAKSOISSANAN OSOITETTA ver- rataan rekisteristä 100 saatavaan edellisen kierroksen KAKSOIS- SAiNAN OSOITTEESEEN. Jos sen hetkinen PIN0-0S01 TE-slgnaall on ,·. ; täsmälleen sama kuin edellinen PIN0-0S01 TE-slgnaall sekä KAK-• * · SOISSAHAN 0S01 TE-sanaoso Ite on täsmälleen sama kuin edellinen • · · KAKSOISSANAN 0S0ITE-sanaosolte, niin vertalllmlen 102 ja 104 ulostulot syötetään slsääntuloslgnaaleln J/\-portllle 106.
»M • · • · • · · ·· · • · * • · • · • · ίο 86485
Jos molemmat sen hetkiset jo edelliset signaalit olivat kelvollisia, minkä Ilmaisee sen hetkinen KELPO-slgnaaII ja edellinen KELPO-slgnaall rekisteristä 94, jotka myös syötetään vastaaviin sisääntuloihin JA-porttlln 106, ulostulosignaali JA-portlsta 106 muodostaa ohjaustllan lomltusohjausreklsterIin 108. Jos nämä kaksi signaalia eivät ole samoja, niin silloin lomltusohjausre-klsterlln muodostettu ohjausehto on erilainen. Erityisesti, jos vertalllmet 102 ja 104 osoittavat epäsovitusta, mikä merkitsee, että samalle kaksolssanalle el ollut kääntels-rlnnakkalskäskyjä, niin silloin olkea lähde lomltusslgnaallLLe ovat vyöhykeslgnaa-llt, jotka sijaitsevat vyöhykelähdepuskurlssa 86, joka on takaisinkytketty valitsimen 80 sisääntuloon ja viety kerrokseen nimeltä YHDISTÄ. Toisaalta, jos kääntelsrlnnakkalskäskyjä oli samalle tletosanalle, olkea sana löydetään vyöhykepuskurIsto 84. Tämä signaali on takaisinkytketty valitsimen 80 slsäänmenoon ja viety kerrokseen nimeltään YHDISTÄ.
Kelvollinen signaali puskurista 94 syötetään valitsimien 72, 74 76 ja 78 sisääntuloihin näiden valitsimien sallimiseksi silloin, kun syötetty sIgnoali todella on kelvollinen. Sen hetkinen vyöhy keplno-osolteslgnaall, sen lisäksi, että se syötetään vyöhyke-plno-osoltepuskurIin 98, syötetään myös kaksolssanaplnojen 64, 66, 68 ja 70 LUKU-slsääntulolhIn. Vyöhykkeiden plno-osolttelden ... 98 ulostulo on samalla tavalla syötetty koksolssanaplnojen 64, • « .· . 66, 68 ja 70 klrjoltusohjaussbsääntuloon. Vastaavasti, kaksois- • « · * sanaosoltteet, sen lisäksi, että ne syötetään kaksolssanaosolte- • · · *·’·* puskurin 100 sisääntuloon, syötetään myös valitsimen 82 ulostu- * : lon ohjaamiseksi.
• · • · · * · · • « · * • ·
Kuvassa 6 on esitetty yksityiskohtaisemmin vyöhykkeen nollaus- ja lähdeohjauselementtl 92. Siinä on jälleen KELPO-slgnaall ;*·.· osoittamassa muistijärjestelmän lohkotalletuksen kelvollisuutta.
• · •*t*. Tämä KElPO-slgnaotl on viety KELPO-slgnaallpuskurlln 110 käy- •# tettöväksl tarkoituksiin, jotka eivät muodostG tämän keksinnön ··· ···· osaa. KELPO-slgnaall syötetään myös slsääntuloslgnaallna kaksois- • · • · · * ·· • t · • · • · 20 86 485 sanolaskurllte 112. Laskurin ulostulo on syötetty ohjausslgnaall-no valitsinta 82 varten vyöhykepLnojen ulostuloihin. Kaksolssa-nalaskurln 112 ulostulo syötetään myös slsööntuloslgnaallna laskurl-on-kolme-sumpauspllrlln 114. Piirin 114 ulostulo on syötetty ohjausslgnaallna valitsimille 72, 74, 76 ja 78 sisääntulossa, tässä järjestyksessä, kaksolssanaplnolhln 64, 66, 68 ja 70. VYÖHYKKEIDEN Γ,Ό-OSO I TE-puskurl 116 vastaanottoa VYÖHYKKEIDEN PIN0-0S0ITE-tledon ClUilta ja oikealla hetkellä syöttää ohjaussignaalit LUKU- tai K IRJOITUS-slsäöntulo-ohjaukslln koksols-sanaplnolhln 64, 66, 68 ja 76.
Kuten aikaisemmin huomautettiin, vyöhykkeen yhdistys- ja lataus-ohjausyksikkö 90 vastaanottaa prosessorin talletustledon yhtä kellojaksoa ennen vyöhyketletoa, jonka vastaanottaa slsääntulo-VQlltsln 80. Tämän ensimmäisen kellojakson aikana sen hetkistä VYÖHYKKEEN PIM0-0S0ITE-slgnaalla käytetään lukemaan vyöhyketieto, joko on talletettu osoitettuun palkkaan neljään kaksolssanapl-noon 64, 66, 68 ja 70. Tämä tieto luetaan ulostulovalltsljan 82 vastaavan segmenttiin. Sen hetkinen KAKSOISSANAN 0S0ITE-slgnaall sao aikaan sen, että valitsin 82 valitsee oikean kaksolssanan siirrettäväksi puskuriin 86. Valittua tietoa vyöhykelähdepusku-rlsta 86 kierrätetään ympäri jo sijoitetaan takaisin valitsimeen 80 segmenttiin nimeltään YHDISTÄ.
• · «· · • · · ’ * Vyöhyketletoa edelliseltä kellojaksolta, jota pidettiin vyöhyke-• · · •**# puskurissa 84, kierrätetään myös sen hetkisen kellojakson aikana ympäri ja se sijoitetaan tokaisin valitsimeen 80 segmenttiin nl- • · I.:: mettään YHDISTÄ; • m • · · • · · • ·
Sen hetkisen kellojakson VYÖHYKKEEN PINO-OSOITE-slgnaalla verra- taan edellisen jakson VYÖHYKKEEN P I NO-OSO ITE-slgnaallln, ja sen hetkisen jakson KAKSOISSANA 0S0 I TE-slgnaalla verrataan edellisen jakson KAKSOISSANA 0S0ITE-sLgnaallln, kuten edellä mainittiin, ·”* sen määräämiseksi, onko ollut kaksi peräkkäistä koäntels-rlnnak-• · *...* kaista käskyä, jotka on osoitettu somaan kaksolssanaan. Näiden • · · • · · • · • · • · 21 8 6 485 vertailujen fcuLosto köytetään ohjaamaan rekisterin 108 kautta valintaa seuraovaila kellojaksolla volltslmen 80 segmentin YHDISTÄ ja segmentin YHDISTÄ 1T välillä. Jos kääntels-rlnnak-kolsla käskyjä el kohdistu samaan kaksolssanaosoltteeseen, asetetaan rekisteri. 108 sellaiseen tilaan, että se aiheuttaa kak-solssanavyöhyketledon valinnan YHDI STA-seg.mentln kautta valitsijassa 00.
Jos toisaalta käantels-rlnnakkalsla, tai peräkkäisiä talletus-käskyjä kohdistuu sanaan kak so 'useanaan, asetetoon rekisteri 108 sellaiseen tilaan, että se saa olkoon kaksolssanavyöhyketledon valinnan valitsijan RO YHDISTÄ 1T-segnentln kautta.
Seuraavalla kellojaksolla vyöhyketledot tuodaan valitsijalle 80 joko CPU:n kollektorllta 48 tai CPU:n OECCUrlta 36. Nämä on esitetty, tässä järjestyksessä, valitsimen · 30 vastaavasti yksilöidyillä segmenteillä, TYYPPI-signaali puskurista 96 saa aikaan valinnan näiden valitsijan 80 kahden segmentin välillä. Valitsimen 80 ulostulo on sitten blttlmälnen TAI signaaleista, jotka ovat kulkeneet valitsijan 80 valittujen segmenttien läpi. Tämä ulostulo kirjoitetaan sitten valitun kaksolssanaplnon valittuun osoitteeseen.
• · · • · · Tällä tavalla vyöhykeohjausykslkkö voi muodostaa vyöhyke ohjaus- • t · • .* bittejä lukuisille käskyille, jotka koskevat tiettyä tietolohkoa ·.!.· sillä' aikavälillä, joko jää aloltusoroseduurln, joka aloitti tietolohkon siirron välimuistiin, ja tämän siirron loppuunsaat-l :‘: tamlsen välille.
Kun tietolohko pitää siirtää muistijärjestelmästä kyseessäolevan .*. : CPU:n välimuistiin, otetaan kokonainen kahdeksan sanan lohko oää- • · · muistista (tai yhteydessäolevan CPU:n välimuistista) kaksolssana- . InkrementteInä aina numerojärjestyksessä. Kun muistijärjestelmän ...: talletustleto on muodostettu, syötetään KELPO-slgnaall kaksois- ·»· sanalaskurln 112 sisääntuloon, nollaten näin laskuri. Muisti- ·· · • · · • · • · • · 22 864S5 järjestelmän tolletustledot sisältävät VYÖHYKE P I NIO-OSO I TE-slg-naalln, joko lodaboon rekisteriin 116. Seuraavalla keLLojoksoLLo VYÖHYKKEEN PINO-OSOITE-slgnaall syötetään kaksolssanaplnojen 64, 66, 68 jo 70 lukuohjoussIsääntuloon, jo syöbebään vyöhyke-tieto sinne valitsimen 32 vasbaovlln segment teIhIn. Samanalkal-sesbl kaksoIssanalaskurl 112 oikoo käydä Lohkon neljää kaksols-sanaa läpi ololbboen koksolssonasbo 0. Laskurin 112 ulostulo soo olkoon neljän kaksolssanan peräkkäisen kohdistamisen vyöhyke-lähdepuskurIn -6 koubbo vällmulsblvyöhykepuskurlln 83.
Kun CPU suorlbtaa käskyä, joko voabll blebosonon rnuuttomlsbo jo bämä käsky sisältää tietolohkon siirron muistijärjestelmästä, muodostetaan vyöhykeohjousslgnoollt jo sijoitetaan ne vyöhykkeiden ohjausyksikön kaksolssanaplnolhln llmalsemoon, mitä lohkon vyöhykkeitä jo sanoja käytetään. Tämän keksinnön esimerkki-toteutuksessa vyöhykeohjoussIgnaallt ovot loogiselta arvoltaan "1" kyseisten kaksolssanojen suojatuille vyöhykkeille tai tavu-palkoille vyöhykeohjausplnolssa, kun taas looginen "0" esiintyy tietolohkon koksolssanojen kalkissa muissa vyöhykkeissä ja tavu-palkoissa. Kun tietolohkon jokainen kaksolssano muistijärjestelmästä esitetään ladattavaksi välimuistiin, lähetetään kyseessä-olevon kaksolssanon vyöhykeohjousslgnoollt puskurista 83, ne Invertoidaan jo syötetään selektiivisesti sallimaan toi estämään vostoovo tavu- tai vyöhykepalkka osoitetussa vällmulstlpalkassa. ·*·*: Siten vain CPU voi kirjoittaa suojattuihin osoitettujen vällmuls- . tlpalkkojen vyöhykkeisiin toi tavuihin. Jos käy niin, että CPU:n • « · ....: tolletus välimuistiin suoritettu loopuun, ennenkuin tietolohko r ,*, muistijärjestelmältä on talletettu välimuistiin, niin CPU:lta • · · |’V peräisin olevon uuden tiedon päälle el voi kirjoittaa eikä sitä • · · voida tuhota myöhemmällä tietolohkon talletuksella.
• « • · « ’· *· Kun neljäs pino, kaksolssano 3 pino on osoitettu, laskur 1=3-re-»«« 1 • · · *.* * klsterl saa aikaan sen, että valitsimet 72, 74, 76 ja 73 lataavat ··♦ kalkki noilla osoitettuun palkkaan kyseessäolevIsto kaksolssano-···♦ .*··. reklstere Istä 64, 66, 68 ja 70, jolloin VYÖHYKKEEN PINO-OSOITE-·* * • · · • · · • » « · « · i 23 86485 signaali on nyt kytketty oktLvolmoan pinojen K IRJO ITUS-ohjausta. Tämä nollaa tehokkaasti koksolssonaplnojen osoitetut palkat voimistaen ne uusio tietolohkoja varten, joiden vycih y ketleto täytyy tallettaa niihin.
On siis muodostettu tietokonejärjestelmä, jolta on oarantunut läplmeno, joko pitää sisällään elimet tiedon tomlttamlseksl lukulslsta lähteistä vällmulsttykslkköön, somalla kun säilytetään talletetun tiedon yhtenäisyys.
• ·· * * # • · . · ^ # · · • - - -«
» · I
t · m • · « • · • * • · « • · « • · · « k φ * · · « # * • f • · » « ( • « » • c ··« • · · • · · ·♦·· ·« · • ♦ * · ··* ·« * • · · • · t · • ·

Claims (4)

24 8 6 4 υ b
1. Tietokonejärjestelmässä, jossa on päamuisti MM (14, 16) ja keskusyksikkö CPU (2, 4), keskusyksikössä CPU on siihen liitettynä välimuisti CU (20, 22) tarjoamaan mainitulle CPU:lie nopean pääsyn talletettuun tietoon, jolloin mainittu CPU, suoritettuaan toimenpiteen, joka muuttaa tietoa, suorittaa sen jälkeen lisätoimenpiteen mainitun tiedon antamiseksi mainittuun CUrhun; jolloin mainittu tietokonejärjestelmä on tyyppiä, missä, kun mainittu CPU epäonnistuu tietyn tietoyksilön löytämisessä hakiessaan mainittua CU:ta kirjoitustoimenpidettä varten, tietolohko, joka sisältää mainitun tietoyksilön, siirretään MM:stä CU:hun syöttämistä varten, jolloin mainittu tietolohko sisältää useita tieto-osia; jolloin mainitussa CPU:ssa on siihen liitettynä lisälaite ohjaamaan mainitulla CPU:11a käsiteltyjen tieto-osien ja mainitulta MM:Itä vastaanotettujen tieto-osien lomitusta mainittuun CU:hun, joka laite on tunnet-t u : tietoreitistä (6, 50) tekemään mainitulle CPU:lle mahdolliseksi mainitun lohkon tieto-osien käsittelemisen samanaikaisesti mainitun lohkon siirron kanssa mainitusta MM:stä CUrhun; ensimmäisistä piireistä (44) sallimaan mainitun lohkon mainitulla CPU:11a modifioitujen tieto-osien sisäänmenon mainittuun CU:hun; ensimmäisestä rekisteripiiristä (64, 66, 68, 70) pitämään vyö-hykeohjausbittejä, mitkä ovat kuvauksia tietolohkon kustakin tieto-osasta, jolloin mainittu CPU aiheuttaa kuvauksen siirron ennalta määrättyyn asemaan vastaavan tieto-osan modifioinnin jälkeen; ja li 25 'So4C5 toisesta piiristä (88), joka reagoi kuhunkin mainittuun ennalta määrättyyn asemaan estämään MM:Itä vastaanotetun tietolohkon vastaavien tieto-osien sisäänmenon mainittuun CU:hun.
2. Patenttivaatimuksen 1 mukainen laite, missä mainittua CU:ta käytetään talleta-välimuistiin-pohjalta ja missä, kun talleta-välimuistiin-käskyn yhteydessä tapahtuu osumattomuus välimuistiin, kokonainen tieto-lohko siirretään mainitusta MM:stä mainittuun CU:hun, tunnettu lisäksi: ensimmäisestä elimestä (80, 84, 72, 74, 76, 78) tallettamaan vyöhykeohjausbitit osoitepaikkoihin mainitussa ensimmäisessä rekisteripiirissä (64, 66, 68, 70), mitkä vyöhykeohjausbitit on muodostettu CPU:lla ja jotka paikaltaan vastaavat mainittuun CU:hun siirrettävän tietolohkon osoitettuja tavuja tai vyöhykkeitä; ja toisesta elimestä (82, 86, 90, 92), jolla voidaan selektiivisesti ottaa mainitut vyöhykeohjausbitit mainitusta ensimmäisestä rekisteripiiristä (64, 66, 68, 70) talleta-välimuistiin-komennon, joka liittyy kyseessä olevaan tietolohkoon, yhteydes-... sä, jolloin mainittuja vyöhykeohjausbittejä käytetään ohjamaan . mainitussa CU:ssa olevien vastaavien muistipaikkojen valikoivaa ; sallintaa.
* ‘ 3. Patenttivaatimuksen 2 mukainen laite, tunnettu : lisäksi: CPU:n kollektoriyksiköstä (48) antamaan mainitut talleta-väli-muistiin-komennot aikaansaamaan CU:n tallettamaan ainakin yhden 'V. tietobittivyöhykkeen CPU-tietosanojen parista, jolloin kukin / # tietosana koostuu ennalta määrätystä lukumäärästä bittejä, mikä * » • “ lukumäärä on vyöhykkeessä olevien bittien lukumäärän monikerta; » · · • · · 26 8 6 4 G 5 ainakin yhden CPU:n suoritusyksikön (30, 32, 34, 36) muodostaessa, käskyn suorituksen seurauksena, ainakin yhden prosesso-ritiedon vyöhykkeen prosessoritietosanojen pariin CU:hun tallettamista varten; vyöhykeohjausbittien muodostuselimistä (36, 48, 62, 80) muodostamaan annetun binääriarvon vyöhykeohjausbitit (kollektorivyö-hykkeet, deccuvyöhykkeet) yksilöimään prosessoritietosanojen kunkin parin vyöhykkeet, jotka sanat sisältävät prosessoritie-don, joka on tuotettu mainitun suoritusyksikön avulla mainittuun CU:hun tallentamista varten; ohjaushakemistosta (60), joka on järjestetty tuottamaan prosessoritietosanoj en, jotka on muodostettu suoritusyksiköllä CU:hun tallentamista varten, kunkin parin lohko-osoitteen; jolloin mainittu CU, vastauksena prosessoritietosanaparin lohko-osoitteen ja mainittujen prosessoriLietosanojen vyöhyke-bittien talleta-välimuistiin-komennon vastaanotolle, tallettaa prosessoritietosanojen vyöhykkeiden bitit, jotka sanat sisältävät prosessoritiedon, mikä on yksilöity vyöhykebiteillä, joilla on mainittu binääriarvo asemissa, jotka vastaavat mainittua lohko-osoitetta; jolloin mainittu ensimmäinen rekisteripiiri (64, 66, 68, 70) on järjestetty tallettamaan vyöhykeohjausbitit, jotka on tuotettu mainituilla vyöhykeohjausbittien muodostuselimillä; jolloin mainittu toinen elin (82, 86, 90, 92) on järjestetty ottamaan vyöhykeohjausbitit mainitusta ensimmäisestä rekisteri-piiristä (64, 65, 68, 70) vastaanotettaessa talleta-välimuis-tiin-komentoa järjestelmätietosanojen lohkoa varten, joilla on sama lohko-osoite kuin prosessoritietosanojen, jotka on aiemmin talletettu CU:hun, lohko-osoite, jolloin mainituilla vyöhyke-ohjausbitei1la on mainittu annettu arvo, joka yksilöi CU:hun i. 27 ft < * r c talletettujen tietosanojen, jotka sisältävät prosessoritiedon, lohkon vyöhykkeet; ja kolmannesta elimestä (88), joka reagoi mainittuihin vyöhyke-ohjausbitteihin, joilla on mainittu binääriarvo estämään CU:ta tallettamasta järjestelmämuistitietosanojen vastaavia vyöhykkeitä.
4. Patenttivaatimuksen 3 mukainen laite, tunnettu siitä, että mainittu kollektoriyksikkö (48) on myös vyöhyke-ohjausbittien muodostaja. • · · 28 8 6 4 S 5
FI851639A 1984-04-27 1985-04-25 Portzonkontroll. FI86485C (fi)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US60476984 1984-04-27
US06/604,769 US4680702A (en) 1984-04-27 1984-04-27 Merge control apparatus for a store into cache of a data processing system

Publications (4)

Publication Number Publication Date
FI851639A0 FI851639A0 (fi) 1985-04-25
FI851639L FI851639L (fi) 1985-10-28
FI86485B FI86485B (fi) 1992-05-15
FI86485C true FI86485C (fi) 1992-08-25

Family

ID=24420958

Family Applications (1)

Application Number Title Priority Date Filing Date
FI851639A FI86485C (fi) 1984-04-27 1985-04-25 Portzonkontroll.

Country Status (6)

Country Link
US (1) US4680702A (fi)
EP (1) EP0159713B1 (fi)
AU (1) AU578681B2 (fi)
CA (1) CA1234639A (fi)
DE (1) DE3581826D1 (fi)
FI (1) FI86485C (fi)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4896259A (en) * 1984-09-07 1990-01-23 International Business Machines Corporation Apparatus for storing modifying data prior to selectively storing data to be modified into a register
US4860192A (en) * 1985-02-22 1989-08-22 Intergraph Corporation Quadword boundary cache system
US4884197A (en) * 1985-02-22 1989-11-28 Intergraph Corporation Method and apparatus for addressing a cache memory
US4899275A (en) * 1985-02-22 1990-02-06 Intergraph Corporation Cache-MMU system
US4933835A (en) * 1985-02-22 1990-06-12 Intergraph Corporation Apparatus for maintaining consistency of a cache memory with a primary memory
US5255384A (en) * 1985-02-22 1993-10-19 Intergraph Corporation Memory address translation system having modifiable and non-modifiable translation mechanisms
US5091846A (en) * 1986-10-03 1992-02-25 Intergraph Corporation Cache providing caching/non-caching write-through and copyback modes for virtual addresses and including bus snooping to maintain coherency
US5095424A (en) * 1986-10-17 1992-03-10 Amdahl Corporation Computer system architecture implementing split instruction and operand cache line-pair-state management
US5155833A (en) * 1987-05-11 1992-10-13 At&T Bell Laboratories Multi-purpose cache memory selectively addressable either as a boot memory or as a cache memory
US5168560A (en) * 1987-05-29 1992-12-01 Amdahl Corporation Microprocessor system private split cache tag stores with the system tag store having a different validity bit for the same data line
US5420994A (en) * 1990-08-06 1995-05-30 Ncr Corp. Method for reading a multiple byte data element in a memory system with at least one cache and a main memory
US5357622A (en) * 1990-09-27 1994-10-18 Dell U.S.A., L.P. Apparatus for queing and storing data writes into valid word patterns
US5530835A (en) * 1991-09-18 1996-06-25 Ncr Corporation Computer memory data merging technique for computers with write-back caches
US5491811A (en) 1992-04-20 1996-02-13 International Business Machines Corporation Cache system using mask bits to recorder the sequences for transfers of data through cache to system memory
US5535360A (en) * 1994-08-31 1996-07-09 Vlsi Technology, Inc. Digital computer system having an improved direct-mapped cache controller (with flag modification) for a CPU with address pipelining and method therefor
US6131152A (en) * 1996-05-15 2000-10-10 Philips Electronics North America Corporation Planar cache layout and instruction stream therefor
US6311254B1 (en) 1999-03-18 2001-10-30 International Business Machines Corporation Multiple store miss handling in a cache memory memory system
US6269427B1 (en) 1999-03-18 2001-07-31 International Business Machines Corporation Multiple load miss handling in a cache memory system
US6321303B1 (en) 1999-03-18 2001-11-20 International Business Machines Corporation Dynamically modifying queued transactions in a cache memory system
US6629168B1 (en) * 2000-06-15 2003-09-30 Hewlett-Packard Development Company, Lp. Byte-swapping for efficient use of memory

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5226124A (en) * 1975-08-22 1977-02-26 Fujitsu Ltd Buffer memory control unit
US4084234A (en) * 1977-02-17 1978-04-11 Honeywell Information Systems Inc. Cache write capacity
US4157586A (en) * 1977-05-05 1979-06-05 International Business Machines Corporation Technique for performing partial stores in store-thru memory configuration
US4287561A (en) * 1978-03-16 1981-09-01 International Business Machines Corporation Address formulation interlock mechanism
US4217640A (en) * 1978-12-11 1980-08-12 Honeywell Information Systems Inc. Cache unit with transit block buffer apparatus
US4298929A (en) * 1979-01-26 1981-11-03 International Business Machines Corporation Integrated multilevel storage hierarchy for a data processing system with improved channel to memory write capability
JPS6019809B2 (ja) * 1979-12-26 1985-05-18 株式会社日立製作所 デ−タ処理装置
JPS57105879A (en) * 1980-12-23 1982-07-01 Hitachi Ltd Control system for storage device
US4392201A (en) * 1980-12-31 1983-07-05 Honeywell Information Systems Inc. Diagnostic subsystem for a cache memory
US4499539A (en) * 1982-12-20 1985-02-12 International Business Machines Corporation Method and apparatus for limiting allocated data-storage space in a data-storage unit
US4527238A (en) * 1983-02-28 1985-07-02 Honeywell Information Systems Inc. Cache with independent addressable data and directory arrays

Also Published As

Publication number Publication date
EP0159713A3 (en) 1987-07-29
EP0159713B1 (en) 1991-02-27
FI86485B (fi) 1992-05-15
AU4173485A (en) 1985-10-31
FI851639L (fi) 1985-10-28
US4680702A (en) 1987-07-14
EP0159713A2 (en) 1985-10-30
FI851639A0 (fi) 1985-04-25
DE3581826D1 (de) 1991-04-04
CA1234639A (en) 1988-03-29
AU578681B2 (en) 1988-11-03

Similar Documents

Publication Publication Date Title
FI86485C (fi) Portzonkontroll.
US4707784A (en) Prioritized secondary use of a cache with simultaneous access
US4527238A (en) Cache with independent addressable data and directory arrays
US4481573A (en) Shared virtual address translation unit for a multiprocessor system
EP0084114B1 (en) Instruction prefetching data processing apparatus including a conditional branch instruction predictor
US5835925A (en) Using external registers to extend memory reference capabilities of a microprocessor
US4339804A (en) Memory system wherein individual bits may be updated
EP0322117A2 (en) Multiprocessor digital data processing system
US4498132A (en) Data processing system using object-based information and a protection scheme for determining access rights to such information and using multilevel microcode techniques
EP1202180A1 (en) Scalar data cache for a vector processor
JPH0230536B2 (fi)
FI80533C (fi) Kontroll av datamaskinhierarki.
JPH01500377A (ja) 2個のシステムクロックサイクルを利用する書込み動作をもったキャッシュメモリユニットを供与する装置及び方法
EP0605871B1 (en) Method and system for increased system memory concurrency in a multiprocessor computer system
JP2714952B2 (ja) 計算機システム
US5123097A (en) Apparatus and method for simultaneous execution of a write instruction and a succeeding read instruction in a data processing system with a store through cache strategy
EP0533427B1 (en) Computer memory control system
US6012135A (en) Computer having multiple address ports, each having logical address translation with base and limit memory management
US5206945A (en) Single-chip pipeline processor for fetching/flushing instruction/data caches in response to first/second hit/mishit signal respectively detected in corresponding to their logical addresses
FI86484C (fi) Styrorgan i en digital datamaskin.
US3737871A (en) Stack register renamer
EP0360553B1 (en) Buffer storage system
EP0173893B1 (en) Computing system and method providing working set prefetch for level two caches
US4459659A (en) Subroutine control circuitry for providing subroutine operations in a data processing system in which tasks are executed on a microprogrammed level
KR930003399B1 (ko) 마이크로프로그램된 소프트웨어 명령 실행장치 및 방법

Legal Events

Date Code Title Description
MM Patent lapsed
MM Patent lapsed

Owner name: HONEYWELL INFORMATION SYSTEMS INC.