CS196746B1 - Zařízení pro řízení operace nonekvivalence - Google Patents

Zařízení pro řízení operace nonekvivalence Download PDF

Info

Publication number
CS196746B1
CS196746B1 CS436577A CS436577A CS196746B1 CS 196746 B1 CS196746 B1 CS 196746B1 CS 436577 A CS436577 A CS 436577A CS 436577 A CS436577 A CS 436577A CS 196746 B1 CS196746 B1 CS 196746B1
Authority
CS
Czechoslovakia
Prior art keywords
output
input
block
control
operand
Prior art date
Application number
CS436577A
Other languages
English (en)
Inventor
Oldrich Jelinek
Original Assignee
Oldrich Jelinek
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 Oldrich Jelinek filed Critical Oldrich Jelinek
Priority to CS436577A priority Critical patent/CS196746B1/cs
Publication of CS196746B1 publication Critical patent/CS196746B1/cs

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Description

Vynález se týká zařízení pro řízení operace nonekvivalence, která )'e použita k nulování pole paměti.
Operace nonekvivalence je často používána k nulování dlouhého pole v paměti. Dosahuje se toho tím, že se operace aplikuje s tototžnými adresami 1. operandu, 2. operandu i výsledku. Dělá se tedy nonekvivalence dvou stejných operandů, takže výsledek je vždy nula, bez ohledu na obsah operandů.
Dosavadní způsob řízení operace nonekvivalence se pro toto zvláštní, ale velmi časté použití nijak neliší od běžného chodu operace, který je znázorněn v tabulce 1.
Po zahájení operace nonekvivalence 101 následuje čtení části 1. operandu 102, odpovídající šířce toku dat v hardware, poté následuje čtení části 2. operandu 103, mezi částmi 1. a 2. operandu proběhne úkon nonekvivalence 104 (nulový výsledek, jiný nemůže vzniknout). Následuje zápis 105 části nulového výsledku na totéž místo do paměti. Pak následuje střádání informace 106 pro vytvoření výsledného podmínkového kódu, který však nemůže při rovnosti adres být jiný než „výsledek nula.“ Pracovní smyčka je uzavřena testem 107 a nastavením adres 108 na další část operandu a průběh smyčky se opakuje až do vyčerpání operandů.
Tento způsob nulování obsahuje zbytečné úkony, které zdržují průběh nulování.
Tyto nedostatky odstraňuje zařízení pro řízení hardware při operaci nonekvivalence podle vynálezu. Způsob řízení hardware zařízením· podle vynálezu spočívá v tom, že řízení operace při rovnosti adres 1. a 2. operandu působí na výběr větve řízení, která obsahuje pracovní smyčku zahrnující zápis nul do pole výsledku, test na konce operandů a krok adresy na další část operandu ve zpětné vazbě na vstup do pracovní smyčky pro nejkratší možné nulování výsledku a za ní zařazené nastavení podmínkového kódu pro „výsledek nula.“
101 zahájení operace nonekvivalence čtení části 1. operandu
102 čtení části 2. operandu
103 nonekvivalence částí 1. a 2. op.
104 zápis části výsledku
105 střádání informace o podmínkovém kódu („nula“ _ „nenula“)
106
108 krok adres na dálší část ne konec operandů?
107 i ano vytvoření podmínkového kódu dle nastřádané informace
109 závěr
110
Tabulka 1
Podstata zařízení pro řízení operace nonekvivalence v podobě řídicí paměti se zabudovaným mikroprogramem nebo v podobě Části řadiče podle vynálezu spočívá v tom, že část zabudovaného mikroprogramu nebo řadiče je tvořena rozhodovacím blokem mikroprogramu nebo řadiče a blokem mikroprogramu nebo řadiče pro řízení nulování pole, přičemž vstup rozhodovacího bloku je spojen s výstupem testovacího obvodu a první výstup rozhodovacího bloku je spojen se vstupem povelového bloku pro řízení rozhodovací činnosti a druhý a třetí výstup rozhodovacího bloku mikroprogramu pro předání dalšího řízení jsou spojeny alternativně podle výstupu testovacího obvodu buď druhý výstup na vstup bloku normálního řízení průběhu operace nebo třetí výstup na vstup bloku mikroprogramu pro řízení nulování pole a tento blok je dále spojen na vstup povelového bloku.
Část mikroprogramu může být nahrazena částí řadiče.
Vynález umožňuje vynechat zbytečné činnosti a podstatně zkrátit čas průběhu operace nonekvivalence, použité pro nulování pole paměti.
Sled činností podle vynálezu je znázorněn v tabulce 2. Pro případ nulování pole je vytvořena zvláštní větev řízení 205 až 208. Po zahájení operace následuje test 202 na rovnost adres obou operandů. Jsou-li rozdílné, proběhne činnost 203, což je normální chod operace nonekvivalence, popsaný výše a znázorněný podrobněji v tabulce 1. kroky 102 až 109. Jsou-li adresy operandů stejné, řídí další činnost hardware větev 205 až 208 v tabulce 2. Ve větvi řízení smyčkou 205 až 207 je postupně znulováno pole výsledku. Po rozpoznání konce operandu testem 206 následuje nastavení 208 podmínkového kódu pro „výsledek nula “a operace se uzavře.
201 zahájení operace nonekvivalence ne adresy operandů stejné?
ano
202
203 normální řízení operace nonekvivalence krok adresy na další část
207 zápis nul do pole výsledku
205 konec operandů?
ine
206 i ano nastavení podmínkového kódu pro „výsledek nula“
208 závěr
204
Tabulka 2
Zrychlení operace užité k nulování spočívá zejména v tom, že původní pracovní smyčka (viz tabulka lj, obsahující 3 styky s pamětí, logický úkon, střádání informace pro podmínkový kód a test na konec operandů je nahrazena novou smyčkou (viz tabulku 2), obsahující jediný styk s pamětí a test na konec operandu. Krokování adres probíhá většinou současně se stykem s pamětí a proto není do časové úvahy zahrnuto. Úspora je tím výraznější, čím je tok informace užší, pole delší a hardware méně paralelní.
Další zrychlení operace může vniknout u počítačů, které jsou schopny styku s pamětí s širším tokem dat, než je šířka toku v ostatních částech počítače. S operandem se ve skutečnosti neoperuje, takže užší tok dat v ostatních částech omezuje rychlost jen mírně nebo vůbec ne, v závislosti na vlastnostech určitého hardware.
Užití vynálezu způsobuje na druhé straně zvýšení složitosti řadiče nebo mikroprogramu, kterým je ovládána operující část hardware. Normální chod operace nonekvivalence se prodlouží o porovnání adres, což je však bezvýznamné s přihlédnutím k celkové značné délce obvyklého chodu této operace.
Způsob řízení hardware při operaci nonekvivalence zařízením podle vynálezu je zřejmý z tabulky 2. Jedno z možných zařízení pro provádění tohoto způsobu je znázorněno na výkrese, který představuje novou část řadiče, která může být reprezentována rovněž řídicí pamětí se zabudovaným mikroprograem, v zapojení na dosavadní známý řadič nebo řídicí paměť a část operační jednotky.
Způsob řízení hardware při operaci nonekvivalence zařízením dle vynálezu, jak je také zřejmý z tabulky 2, spočívá v tom, že řízení operace při rovnosti adres 1. a 2. operandu působí na výběr větve řízení 205 až 208, která obsahuje pracovní smyčku zahrnující zápis nul do pole výsledku 205, test na konec operandů 206 a krok adresy na další část operandu 207 ve zpětné vazbě na vstup do pracovní smyčky pro nejkratší možné nulování výsledku a za ní zařazené nastavení podmínkového kódu 208 pro „výsledek nula.“
Zařízení pro provádění způsobu řízení operace nonekvivalence je podle výkresu v jedné verzi provedeno v podobě řídicí paměti se zabudovaným mikroprogramem, kde část tohoto mikroprogramu je tvořena rozhodovacím blokem 323 mikroprogramu a blokem1 324 mikroprogramu pro řízení nulování pole, přičemž vstup rozhodovacího bloku 323 je spojen s výstupem testovacího obvodu 320 a první výstup rozhodovací bloku je spojen se vstupem povelového bloku 321 pro řízení rozhodovací činnosti a druhý a třetí výstup rozhodovacího bloku 323 mikroprogramu pro předání dalšího řízení jsou spojeny alternativně podle výstupu testovacího obvodu 320 buď druhý výstup na vstup bloku 322 normálního řízení průběhu operace nebo třetí výstup na vstup bloku 324 mikroprogramu pro řízení nulování pole a tento blok je dále spojen na vstup povelového bloku 321.
Zařízení je v další verzi provedeno v podobě řadiče, který je tvořen rozhodovacím blokem 323 a blokem 324 pro řízení nulování pole, přičemž vstup rozhodovacího bloku 323 je spojen s výstupem testovacího obvodu 320 a první výstup rozhodovacího bloku je spojen se vstupem povelového bloku 321 pro řízení rozhodovací činnosti a druhý a třetí výstup rozhodovacího bloku 323 pro předání dalšího řízení jsou spojeny alternativně podle výstupu testovacího obvodu 320 buď druhý výstup na vstup bloku 322 normálního řízení průběhu operace nebo třetí výstup na vstup bloku 324 pro řízení nulování pole a tento blok je dále spojen na vstup povelového bloku 321.
Zařízení na zrychlené řízení operace nonekvivalence je spolu se souvisejícími známými částmi znázorněno na výkrese. Známé zařízení je třemi sběrnicemi propojeno s operační pamětí. Na adresovou sběrnici 31 vedoucí k operační paměti jsou připojeny výstupy hradel 301 a 302, přičemž vstup hradla 301 je připojen spolu se vstupem hradla 308 na výstup adresovaného registru 310 a podobně vstup hradla 302 spolu se vstupem hradla 307 je připojen na výstup adresového registru 311. Vstupní datová sběrnice 32 vedoucí od operační paměti 32 je připojena na vstup hradla 303, jehož výstup je připojen na vnitřní vstupní sběrnici 34, na kterou jsou připojeny výstupy již zmíněných hradel 306 a 307 a vstupy hradel 304 a 305, přičemž výstup hradla 304 je připojen na vstup prvního vstupního registru 308 a výstup hradla 305 je připojen na vstup druhého vstupního registru 309. Výstup prvního vstupního registru 308 je připojen na vstup hradla 312, jehož výstup je připojen k prvnímu vstupu operačního bloku 314. Výstup druhého vstupního registru 309 je připojen na vstup hradla 313, jehož výstup je připojen k druhému vstupu operačního bloku 314. Operační blok 314 je opatřen na svém výstupu výstupním registrem 315, který je připojen na výstupní datovou sběrnici 33, která vede k operační paměti. Výstup hradla 31.6 je připojen ke vstupu registru 317 pro uložení podmínkového kódu, jehož výstup je spolu s výstupy hraďel 306 a 307 a vstupy hradel 304 a 305, připojen na vnitřní vstupní sběrnici 34. Výstup hradla 319 je připojen na vstup testovacího obvodu 320, jehož výstup je u známého zařízení připojen na vstup bloku 322 řízení normálního průběhu operace nonekvivalence a výstup bloku 322 je připojen na vstup povelového bloku 321, jehož četné výstupy jsou spojeny s řídicími vstupy částí 301 až 320. Toto spojení je na výkrese naznačeno pouze symbolicky. Blok 322 řízení normálního průběhu operace může být realizován buž jako řídicí paměť se zabudováným mikroprogramem na řízení operace nonekvivalence nebo jako řadič.
Nové zařízení na zrychlené řízení operace nonekvivalence, která je užita k nulování pole v paměti, sestává z rozhodovacího bloku 323 a bloku 324 řízení nulování pole. Vstupy bloků 323 a první vstup bloku 324 jsou, spolu se vstupem bloku 322, připojeny k výstupu testovacího obvodu 320. Druhý výstup rozhodovacího bloku 323 je připojen k nově zřízenému vstupu bloku 322 řízení normálního průběhu operace. Prvý výstup rozhodovacího bloku 323 a výstup bloku324 řízení nulování pole jsou, spolu s výstupem bloku 322 řízení normálního průběhu opera, ce, připojeny ke vstupu povelového bloku 321. Třetí výstup rozhodovacího bloku 323 je spojen se druhým vstupem bloku 324 řízení nulování pole. Rozhodovací blok 323 a blok 324 řízení nulování pole mohou být realizovány buď jako řídící paměť se zabudovaným mikroprogramem nebo jako řadič.
Známá část zařízení znázorněného na výkrese je řízena během operace nonekvivalence známým blokem 322 normálního průběhu operace, který působí na řídicí blok 321 a ten působí na všechny části 301 až 320 a způsobí dále popsanou činnost. Adresa aktupální části prvního operandu je z adresového registru 310 přes hradlo 301 vyslána po adresové sběrnici 31 k operační paměti. Z operační paměti je po vstupní datové sběrnici 32 přijata aktuální část prvního operandu a přes hradlo 303 a 304 vpuštěna do prvního vstupního registru 308 a tam dočasně uložena. Podobně adresa aktuální části druhého operandu je vyslána z adresového registru 311 přes hradlo 302 po adresově sběrnici 31 k operační paměti. Z operační paměti je po vstupní datové sběrnici 32 přijata aktuální část druhého operandu a přes hradlo 303 a 305 vpuštěna do druhého vstupního registru 309 a tam uložena. Dále jsou části obou operandů z výstupu registrů 308 respektive 309 přes hradla 312, respektive 313 současně vpuštěny do prvního, respektive druhého vstupu operačního bloku 314, který vykoná nonekvivalenci obou částí operandů a výsledek nonekvivalence dočasně uloží ve výstupním registru 315. Z adresového registru 310 je přes hradlo 301 vyslána po adresové sběrnici ?1 aktuální adresa k operační paměti a aktuální část výsledku z výstupního registru 315 přes vnitřní výstupní sběrnici 35, hradlo 318 a výstupní sběrnici 33 je vyslána k operační paměti, aby byla zapsána. Dále je aktuální část výsledku z výstupního registru 315 přes hradlo 316 připojena k dosud nastřádané informaci v registru 317 podmínkového kódu. Dále je blíže nepopsaným způsobem, za užití testovacího obvodu 320 zjištěno, zda operandy dosud nejsou vyčerpány a neisou-li, působí blok 322 řízení normálního průběhu operace pres povelový blok 321 na adresové registry 310 a 311 a způsobí krok adres na další části obou operandů.
Děj se opakuje až do vyčerpání operandů. Potom je nastřádaná informace o podmníkovém kódu z registru 317 podmínkového kódu vpuštěna přes vnitřní vstupní sběrnici 34, hradlo 305, registr 309, hradlo 313, operační blok 314, výstupní registr 315 a hradlo 319 vpuštěna do testovacího obvodu 320 a blok 322 řízení normálního průběhu operace způsobí podle výstupu z testovacího obvodu vygenerování odpovídajícího podmínkového kódu a jeho uložení do registru 317.
Nová část, sestávající z rozhodovacího bloku 323 a bloku 324 řízení nulování pole působí, podobně jako blok 322 řízení normálního průběhu operace, přes povelový blok 321 na všechny části 301 až320.
Začátek každého průběhu operace nonekvivalence je řízen rozhodovacím blokem 323, který způsobí uložení adresy začátku prvního, respektive druhého operandu přes hradla 308 a 304, respektive 307 a 305 do registrů 308, respektive 309. Adresy prvního prvního i druhého operandu jsou pak současně vpuštěny přes hradla 312, respektive 313 do prvního, respektive druhého vstupu operačního bloku 314 a tam porovnány vykonáním odečtení nebo vykonáním nonekvivalence. Jsou-li adresy stejné, vznikne ve výstupním registru 315 nulový výsledek, jinak je výsledek od nuly různý. Výsledek je přes hradlo 319 vpuštěn do testovacího obvodu 320 a výstup z testovacího obvodu 320 působí na rozhodovací blok 323 a způsobí, že rozhodovací obvod předá po svém druhém výstupu řízení další činnosti bloku 322 řízení normálního průběhu operace, jestliže adresy nebyly stejné. Jestliže naopak byly adresy stejné, způsobí výstup testovacího obvodu 320, že řídicí blok 323 předá po svém třetím výstupu řízení další bloku 324 řízení nulování pole.
Blok 324 řízení nulování pole způsobí vyslání adresy z adresového registru 310 přes hradlo 301 a adresovou sběrnici 31 k operační paměti a vyslání části nulového výsledku z výstupního registru 315 přes vnitřní výstupní sběrnici 35, hradlo 318 a výstupní datovou sběrnici 33 k operační paměti. Po zápisu nul se blíže nepopsaným znůsohem zjistí, zda je operand již vyčerpán. Neníli vyčerpán, způsobí blok 324 řízení nulování pole krok adresového registru 310 na další část pole. Znovu se opakuje vyslání adresy a zápis nul až do vyčerpání operandu. Po. vyčerpání operandu blok 324 řízení nulování pole způsobí v operačním bloku 314 vygenerování podmínkového kódu označuucího nulový výsledek a způsobí uložení tohoto kódu přes registr 315 a hradlo 318 do registru podmínkového kódu 317.
Zařízení pro řízení hardware při operaci nonekvivalence je určeno pro výpočetní techniku a konkrétně pro operační jednotku samočinného počítače řízenou buď zabudovaným mikroprogramem v řídicí paměti nebo řadičem.

Claims (1)

  1. Zařízení pro řízení operace nonekvivalence v podobě řídicí paměti se zabudovaným mikroprogramem nebo v podobě časti řadiče, vyznačující se tím, že část zabudovaného mikroprogramu nebo část řadiče je tvořena rozhodovacím blokem (323) mikroprogramu nebo řadiče a blokem (324) mikroprogramu nebo řadiče pro řízení nulování pole, přičemž vstup rozhodovacího bloku (323) je spojen s výstupem testovacího obvodu (320) a první výstup rozhodovacího bloku (323) je spojen se vstupem povelového bloku (321) pro řízení rozhodovací činnosti a druhý a třetí výstup rozhodovacího bloku (323) mikroprogramu nebo řadiče jsou spojeny, buď druhý výstup rozhodovacího bloku (323) na vstup bloku (322) normálního řízení průběhu operace nebo třetí výstup rozhodovacího bloku (323) na vstup bloku (324) mikroprogramu nebo řadiče pro řízení nulování pole a blok (324) mikroprogramu nebo řadiče je dále spojen na vstup povelového bloku (321).
CS436577A 1977-06-30 1977-06-30 Zařízení pro řízení operace nonekvivalence CS196746B1 (cs)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CS436577A CS196746B1 (cs) 1977-06-30 1977-06-30 Zařízení pro řízení operace nonekvivalence

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CS436577A CS196746B1 (cs) 1977-06-30 1977-06-30 Zařízení pro řízení operace nonekvivalence

Publications (1)

Publication Number Publication Date
CS196746B1 true CS196746B1 (cs) 1980-04-30

Family

ID=5386192

Family Applications (1)

Application Number Title Priority Date Filing Date
CS436577A CS196746B1 (cs) 1977-06-30 1977-06-30 Zařízení pro řízení operace nonekvivalence

Country Status (1)

Country Link
CS (1) CS196746B1 (cs)

Similar Documents

Publication Publication Date Title
RU2417407C2 (ru) Способы и устройство для моделирования поведения предсказания переходов явного вызова подпрограммы
TWI289749B (en) Method, system, and computer readable medium recording instructions for reducing an amount of data transferred
JPH0731615B2 (ja) 情報処理装置
JPH0533423B2 (cs)
TW200407907A (en) Method for updating firmware of optical disk system
JP2021527248A (ja) 予測ミス回復の待ち時間を短縮するための偶発的な分岐予測の格納
JP2010500682A (ja) フラッシュメモリアクセス回路
US10929056B2 (en) Interruption of program operations at a memory sub-system
CN100388254C (zh) 直接存储器存取控制方法、直接存储器存取控制器、信息处理系统
CN115292000B (zh) 一种虚拟机动态迁移的方法、装置及电子设备
CS196746B1 (cs) Zařízení pro řízení operace nonekvivalence
KR100829788B1 (ko) 커맨드 디코딩 시스템, 플래시 메모리 커맨드 디코딩시스템 및 이를 이용한 방법
KR20010006789A (ko) 초장 명령어 프로세서의 효율적인 서브-명령 에뮬레이션
CN104035811B (zh) 虚拟机现场数据的处理方法和装置
JPH11305954A (ja) 半導体記憶装置及び半導体記憶装置の書き換え制御方法
JPH0685147B2 (ja) 半導体回路装置
CN111897632B (zh) 一种中断处理方法、装置、电子设备及存储介质
JPH1011315A (ja) インサーキットエミュレータ装置およびインサーキットエミュレーション方法
WO1981000158A1 (fr) Appareil de commande numerique
JPS595354A (ja) デ−タ処理装置
JPH10312307A (ja) コンピュータシステムに適用するエミュレータ
JPS6210736A (ja) マイクロ命令の先取り制御方式
JPS5829051A (ja) 演算処理装置
JPH0241770B2 (cs)
JPS6212555B2 (cs)