CS213092B1 - Zapojení pro styk se zásobníkovou pamětí - Google Patents

Zapojení pro styk se zásobníkovou pamětí Download PDF

Info

Publication number
CS213092B1
CS213092B1 CS539980A CS539980A CS213092B1 CS 213092 B1 CS213092 B1 CS 213092B1 CS 539980 A CS539980 A CS 539980A CS 539980 A CS539980 A CS 539980A CS 213092 B1 CS213092 B1 CS 213092B1
Authority
CS
Czechoslovakia
Prior art keywords
output
input
register
decoder
condition code
Prior art date
Application number
CS539980A
Other languages
English (en)
Inventor
Jiri Smisek
Original Assignee
Jiri Smisek
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 Jiri Smisek filed Critical Jiri Smisek
Priority to CS539980A priority Critical patent/CS213092B1/cs
Publication of CS213092B1 publication Critical patent/CS213092B1/cs

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

Vynález se týká oboru samočinné po- čítače-základní jednotka. Zapojeni řeSí zrychlení styku procesoru se zásobníkovou pamětí. ŘeSení se dosahuje snížením počtu taktů řadiče procesoru, potřebných k provedení úpravy ukazovátka zásobníkové paměti při operaci zápisu a snížením počtu taktů potřebných k sejmuti obsahu buňky zásobníkové maěti při operaci čtení. Možnost použití je pouze v uvedeném oboru

Description

Vynález se týká zapojení pro styk se zásobníkovou pamětí, která řeší zrychlení styku procesoru malého počítače se zásobníkovou pamětí.
Nedílnou součástí počítačového systému je zásobníková paměf. V ní se uchovávají obsahy jednotlivých registrů zápisníkové paměti, obsah registru podmínkového kódu, návratové adresy při skoku do programu nebo při přerušení apod. Ovládání této paměti probíhá tak, že časově poslední uložená položka, se při ukončení podprogramu vybírá jako první. Styk procesoru se zásobníkovou pamětí je v praxi řešen různými způsoby. Například některé minipočítače mají pro zásobníkovou paměf vyhraženou určitou oblast operační paměti. Styk mezi ní a procesorem zprostředkují instrukce, respektive mikroinstrukce přesunu mezi buňkami zásobníkové a zápisníkové paměti a mezi buňkami zásobníkové paměti a stavovým ϋρ·· registrem nebo programovým Čítačem. Pfitom dochází k automatické úpravě ukazovátka zásobníkové paměti, kterému je vyhrazen jeden ze zápisníkových registrů. Uvažujme systém malého počítače, kde styk procesoru se zásobníkovou pamětí probíhá prostřednictvím speciálních instrukcí, vyhrazených pouze pro tuto činnost. V dosud známých zapojeních popsaného typu trvá proces čtení obsahu ze zásobníkové paměti ve dvou taktech řadiče procesoru a úprava ukazovátka při zápisu obsahu do zásobníkové paměti trvá rovněž dva takty.
Uvedené operace umožňuje provést v jednom taktu řadiče procesoru zapojení pro styk se zásobníkovou paměti podle vynálezu, jehož podstatou je, že nultý, druhý, třetí a čtvrtý bit přímého výstupu výstupního datového registru je spojen se vstupem registru podmínkového kódu s dekodérem, na jehož šestý vstup je zapojen první výstup generátoru ovládacích signálů, jehož třet.1 výstup je spojen s hladinovým hodinovým vstupem datového registru, a jehož druhý výstup je zapojen na hradlovací vstup druhého vysílače.
Výhodou tohoto zapojení je zrychlení styku procesoru se zásobníkovou pamětí vlivem snížení-potřebného počtu taktů řadiče pro provedeni potřebné instrukce.
Na výkrese je zapojení podle vynálezu, kde je uvedeno vzájemné propojení jednotlivých bloků společně s jejich označením.
Datová sběrnice 1 je spojena se vstupem 1901natrukčniho registru 19, se vstupem 40 datového přijímače 4, s datovou svorkou 170 zásobníkové paměti 17, s výstupem 131 prvního vysílače 13 a s výstupem 161 druhého vysílače 16. Adresní sběrnice 2 je spojena s výstupem 92 třetího vysílače 9 a s adresním vstupem 171 zásobníkové paměti 17. Výstup 191 instrukčního registru 19 je spojen se vstupem 200 instrukčního dekodéru 20, jehož první výstup 2Q1 je spojen se vstupem 182 generátoru ovládacích signálů 18. Výstup 41 datového přijímače 4 je spojen s výstupem 31 zápisníkové paměti 3, s prvním vstupem 60 přepínače 6 a se vstupem 50 adresního registru £, jehož výstup 51 je spojen s druhým vstupem 61 přepínače 6, se vstupem 90 třetího vysílače £ a jehož sedmý a patnáctý bit je spojen s prvním vstupem 120 bloku generace carry-bitu 12. Výstup 62 přepínače 6 je spojen se vstupem 70 datového registru 2 a se vstupem 80 bloku generace konstanty 8. Nultý bit výstupu 71 datového registru 2 je spojen s druhým vstupem 121 bloku generace carry-bitu 12 a všechny jeho bity jsou spojeny s A-vstupem 100 aritmetiekologické jednotky 10, jejíž B-vstup 101 je zapojen na výstup 81 bloku generace konstanty 8, a jejíž výstup 102 je epojen se vstupem 110 výstupního datového registru 11. Jeho negovaný výstup 111 je spojen se vstupem 30 zápisníkové paměti 3. a se vstupem 140 bloku vyhodnocení 14, jehož výstup 141 je spojen s druhým vstupem 151 registru podmínkového kódu s dekodérem 15. Sedmý a pat213 092 náctý bit přímého výstupu 113 výstupního datového registru 11 je epojen β prvním vstupem 150 registru podmínkového kódu s dekodérem 15. jehož třetí vstup 152 je epojen s nultým, s druhým, ee třetím a se čtvrtým bitem přímého výstupu 113 výstupního datového registru
11. VSech Seatnáct bitů přímého výstupu 113 je dále spojeno ae vetupem 130 prvního vysílače 12.. Vstup 160 druhého vysílače 16 je epojen a výetupem 154 registru podmínkového kódu a dekodérem 15. jehož čtvrtý vstup 153 je spojen a výstupem 123 bloku generace carry- bitu 12, a jehož šestý vstup 156 je spojen s prvním výstupem 180 generátoru ovládacích signálů 18. Druhý výstup 181 generátoru ovládacích signálů 18 je epojen β hradlovacím vatu pem 162 druhého vysílače 16 a jeho třetí výetup 183 je spojen a hladinovým hodinovým vstupem 72 datového registru J. Výetup přenosu spodní a horní slabiky 103 aritmetickologické jednotky 10 je zapojen na třetí vstup 122 bloku generace carry-bitu 12, jehož čtvrtý vstup 124 je zapojen na druhý výetup 202 instrukčního dekodéru 20. Výstup 210 čítače instrukcí 21 je epojen se čtvrtým vatupem 64 přepínače 6 a sedmý vstup 157 registru podmínkového kódu a dekodérem 15 je epojen ae třetím výstupem 203 instrukčního dekodéru 20. Funkce zapojení je následující: Jednotlivé bity instrukcí se aktivním signálem na hodinovém vstupu 192 snímají s datčvé sběrnice 1 do instrukčního registru 19 a dále do instrukčního dekodéru 20. Předpokládejme, že operandy jsou uloženy v buňkách zápisníkové paměti 2· v případě, že se jedná o rotaci vpravo, vyšle se příslušný signál z instrukčního dekodéru z výstupu 202 na čtvrtý vstup 124 bloku generace carry-bitu 12, ve kterém ae zjišťuje otav druhého vetupu 121. Je-li jedničkový, nastaví ae horní hladina na čtvrtém vstupu 153 registru podmínkového kódu a dekodérem 15. v opačném případě se nastaví spodní hladina. Stav čtvrtého vetupu 153 se potom sejme aktivním signálem na hodinovém vatupu 155 do carry-bitu registru podmínkového kódu s dekodérem 15. V případě, že ae jedná o rotaci vlevo, zjišťuje se stav prvního vetupu 120. U aritmetických operací se zjišťuje stav třetího vetupu 122. U všech popsaných operací ae v bloku vyhodnocení 14 zjišťuje nulovost nebo nenulovost výsledku a na prvním vatupu 150 sa zjišťuje lichost nebo sudost výsledku. V případě nulového výsledku se objeví horní hladina na druhém vatupu 151 a sejme se do zero-bitu registru podmínkového kódu a dekodérem 15 na základě aktivních signálů na pátém vatupu 155 a na sedmém vetupu 157. Je-li výsledek záporný, má při slovní operaci horní hladinu patnáctý bit přímého výstupu 113 výstupního datového registru 11 a při slabikové operaci má horní hladinu sedmý bit. Stav těchto bitů se snímá z prvního vetupu 150 do negatlve-bitu registru podmínkového kódu a dekodérem 15 aktivním signálem na pátém vetupu 155. Takto získaný obsah registru podmínkového kódu a dekodérem 15 je doplněný bitem povolení přerušení, který je ovládán signály na oamém vatupu 158. Odakok od podprogramu je inicializovaný příslušnou instrukcí, která ae sejme do instrukčního registru 19 s datové sběrnice 1. Na základě odpovídajícího signálu z prvního výstupu 201 instrukčního dekodéru 20 se vyšle horní hladina ze třetího výstupu 183 na hladinový hodinový vstup 72 datového registru 2· V jednom taktu řadiče procesoru ae obsah příslušného registru zápisníkové paměti 2 přesune přes první vstup 60 přepínače 6 a přes otevřený četový registr 2 na A-vstup 100 aritmetickologické jednotky 10. Signálem na ovládacím vetupu 82 bloku generace konstanty 8 je nastavena binární dvojka na B-vstupu 101. Signálem na vstupu operace 104 je nestavena operace odčítání a signálem na hladinovém hodinovém
213 092 vstupu 112 se obsah datového registru 7 zmenšený o dva přesune v negované formě na vstup 30 zápisníkové paměti kam se uloží opět do stejného registru. V dalším taktu řadiče se obsah tohoto registru zapíše do adresního registru 2 0 dále se původní obsah čítače instrukcí 21 přesune přes čtvrtý vstup 64 do datového registru 7, kam se zapíše pulzním signálem na hladinovém hodinovém vstupu 72. V posledním taktu se obsah adresního registru 2 objeví na základě signálu na vstupu 91 třetího vysílače 9 na adresní sběrnici 2 a adresuje přes svorku 171 příslušnou buňku zásobníkové paměti 17, na kterou se uloží obsah datového registru 2 přes první vysílač 13 a přes datovou svorku 170. Vlastní podprogram potom začíná sekvencí speciálních instrukcí zápisu do zásobníkové paměti 17. Zápisu obsahu registru podmínkového kódu předchází opět snížení ukazovátka o dvojku a nahrání do adresního registru 2· V předposledním taktu řadiče se nastaví signélem na třetím vstupu 63 nulová hodnota na výstupu 62 přepínače 6, která se zapíše do datového registru 7. V posled ním taktu se aktivním signálem na hradlovacím vstupu 162 otevře druhý vysílač 16 a stav výstupu 154 ee objeví na datové sběrnici 1, přičemž nulový obsah datového registru 2 se vysílá z prvního vysílače 13 následkem aktivního signálu na hradlovacím vstupu 132. Obsah na datové sběrnici 1 se potom uloží do zásobníkové paměti 17. Při ukládání obsahu jednotlivých registrů zápisníkové paměti J se obsah propouští přes první vstup 60 přepínače 6 do datového registru 2» kam se uloží v předposledním taktu řadiče. V posledním taktu se přes první vysílač 13 vypouští na datovou sběrnici 1. Druhý vysílač 16 je v tomto případě uzavřen neaktivním signélem na hradlovacím vstupu 162. Podprogram končí sekvencí speciálních instrukcí čtení ze zásobníkové paměti 17 a příznakem návratu z podprogramu. Operace čtení proběhne tak, že v jednom taktu řadiče se uloží stávající obsah registru ukazovátka v zápisníkové paměti 3, do adresního registru 2· v následujícím taktu se přes třetí vysílač 2 adresuje příslušná’ buňka v zásobníkové paměti 12, jejíž obsah projde přes datový přijímač 4, který je otevřený signélem na hradlovacím vstupu 42. Z výstupu 41 se šíří přes první vstup 60 přepínače 6, přes otevřený datový registr 7 a výstupní datový registr 11 na třetí vstup 152 registru podmínkového kódu s dekodérem 15 a na vstup 30 zápisníkové paměti J. Poté se výstupní datový registr 11 uzavře a ukončí se operace čtení ze zásobníkové paměti 17 doprovázené uzavřením datového přijímače 4. V případě instrukce čtení podmínkového kódu je aktivním signélem na šestém vstupu 156 snímán stav nultého, druhého, třetího a čtvrtého bitu přímého výstupu 113 výstupního datového registru 11.
V případě instrukce čtení obsahu registru se zapíše stav vstupu 30 do příslušného registru v zápisníkové paměti 3». Pouhý přenos přes A-vstup 100 aritmetickologické jednotky 10 se nastavuje příslušným kódem na vstupu operace 104.
Možnost použití uvedeného zapojení je v procesoru malého počítače eventuálně minipočítače s obdobnou strukturou datové cesty.

Claims (3)

1. Zapojení pro styk se zásobníkovou pamětí, sestávající z obvodů datové cesty procesoru, z registru podmínkového kódu a ze zásobníkové paměti, vyznačující se tím, že nultý, druhý, třetí a čtvrtý bit přímého výstupu (113) výstupního datového registru (11)
213 092 je spojen se třetím vstupem (152) registru podmínkového kódu s dskédérem (15), na jehož šestý vstup (156) je zapojen první výstup (180) generátoru ovládacích signálů (18), jehož třetí výstup (183) je spojen s hladinovým hodinovým vstupem (72) datového registru (7), a jehož druhý výstup (181) je zapojen na hradlovací vstup (162) druhého vysílače (16).
2. Zapojení podle bodu 1, vyznačující se tím, že první vstup (150) registru podmínkového kódu s dekodérem (15) je spojen se sedmým a patnáctým bitem přímého výstupu (113) výstupního datového registru (11), jehož negovaný výstup (111) je spojen se vstupem (140) bloku vyhodnocení (14), který je výstupem (141) spojen s druhým vstupem (151) registru podmínkového kódu s dekodérem (15), jehož sedmý vstup (157) je spojen se třetím výstupem (203) instrukčního dekodéru (20).
3. Zapojení podle bodů 1 a 2, vyznačující se tím, že čtvrtý vstup (153) registru podmínkového kódu s dekodérem (15) je spojen s výstupem (123) bloku generace carry-bitu (12), jehož první vstup (120) je spojen se sedmým a patnáctým bitem výstupu (51) edreSního registru (5), druhý vstup (121) je spojen s nultým bitem výstupu (71) datového registru (7), třetí vstup (122) je spojen s výstupem přenosu spodní a horní slabiky (103) aritmetickologické jednotky (10) a čtvrtý vstup (124) je spojen s druhým výstupem (202) instrukčního dekodéru (20).
CS539980A 1980-08-05 1980-08-05 Zapojení pro styk se zásobníkovou pamětí CS213092B1 (cs)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CS539980A CS213092B1 (cs) 1980-08-05 1980-08-05 Zapojení pro styk se zásobníkovou pamětí

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CS539980A CS213092B1 (cs) 1980-08-05 1980-08-05 Zapojení pro styk se zásobníkovou pamětí

Publications (1)

Publication Number Publication Date
CS213092B1 true CS213092B1 (cs) 1982-03-26

Family

ID=5398825

Family Applications (1)

Application Number Title Priority Date Filing Date
CS539980A CS213092B1 (cs) 1980-08-05 1980-08-05 Zapojení pro styk se zásobníkovou pamětí

Country Status (1)

Country Link
CS (1) CS213092B1 (cs)

Similar Documents

Publication Publication Date Title
US4300195A (en) CMOS Microprocessor architecture
CN102221991B (zh) 一种4位risc微控制器
US5113093A (en) Semiconductor integrated circuit with multiple operation
JPS56165983A (en) Semiconductor storage device
CS213092B1 (cs) Zapojení pro styk se zásobníkovou pamětí
JPS5447438A (en) Control system for scratch memory
EP0012242B1 (en) Digital data processor for word and character oriented processing
US4694419A (en) Programmable controller with direct to plant addressing
EP0333231A2 (en) Microcomputer system capable of accessing to memory at high speed
RU2095846C1 (ru) Программируемое устройство для логического управления электроприводами и сигнализацией
JPS575153A (en) Information processor
CS209054B1 (cs) Zapojení pro ovládání zápisníkové paměti
CS204849B1 (cs) Zapojení pro zrychlení jednooperandových výpočtů
JPS5914061A (ja) メモリバンク切換回路
JP2577452B2 (ja) ディジタルシグナルプロセッサ
JPS5719869A (en) Input information processor
SU920778A2 (ru) Комбинированна вычислительна система
JPS61161560A (ja) メモリ装置
KR910008254Y1 (ko) 직접 메모리 억세스 제어기의 용량 확장회로
SU1160409A1 (ru) Устройство дл адресации пам ти
KR930005840B1 (ko) 프로세서 구별방법
SU894715A1 (ru) Микропроцессор
SU955059A1 (ru) Микропрограммное устройство управлени
JPS57199055A (en) Information processing device
JPS6258018B2 (cs)