JPS5917460B2 - 計算機の制御装置 - Google Patents

計算機の制御装置

Info

Publication number
JPS5917460B2
JPS5917460B2 JP49110359A JP11035974A JPS5917460B2 JP S5917460 B2 JPS5917460 B2 JP S5917460B2 JP 49110359 A JP49110359 A JP 49110359A JP 11035974 A JP11035974 A JP 11035974A JP S5917460 B2 JPS5917460 B2 JP S5917460B2
Authority
JP
Japan
Prior art keywords
register
microinstruction
channel
main memory
microprogram
Prior art date
Legal status (The legal status 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 status listed.)
Expired
Application number
JP49110359A
Other languages
English (en)
Other versions
JPS5079229A (ja
Inventor
テツセラ ギアンカルロ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HANEIUERU INFUOMEESHON SHISUTEMU ITARIA SpA
Original Assignee
HANEIUERU INFUOMEESHON SHISUTEMU ITARIA SpA
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 HANEIUERU INFUOMEESHON SHISUTEMU ITARIA SpA filed Critical HANEIUERU INFUOMEESHON SHISUTEMU ITARIA SpA
Publication of JPS5079229A publication Critical patent/JPS5079229A/ja
Publication of JPS5917460B2 publication Critical patent/JPS5917460B2/ja
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】 本発明は制御装置を動作させるためのプログラムを形成
する一組のマイクロ命令の制御の下に種種の動作が遂行
されるようになつたマイクロプログラム計算機に関係す
る。
制御装置は任意のディジタル計算機の核心である。
従来において、制御装置は固定されており、云い換えれ
ば、制御装置は計算機を常に同じ方法で制御した。
しかしながら、制御装置は最近大きな発展をとげた。最
初には制御装置は計算機内に勝手な方法で分布させられ
た能動素子および受動素子を含む論理回路網からつくら
れていた。
近年、読出専用制御記憶装置の拡張された利用と一致し
て、計算機を制御するのに必要とされる情報は論理回路
網から除外されそして記憶装置モジュールに集中させら
れており、これは制御情報を含む部分だけを置き換える
ことにより制御装置の変更を容易ならしめた。
このようにしてマイクロプログラミングの概念が確立さ
れた。
マイクロプログラム式計算機においては、一組の命令は
一連の基本的命令からなり、これらの基本的命令の各1
つは計算機の1つの不変量を構成する。各基本的命令の
実行はマイクロプログラミングのための記憶装置に記憶
された一連のマイクロ命令の介入および計算機の動作を
指令する制御回路の組を作動するための順次的読出しを
必要とする。
ポートランまたはコボルなどの高レベルの言葉でプログ
ラマにより普通に書込まれる型のいわゆるマイクロ命令
は多数の子め定めた順序で遂行することを必要とする。
代つて、各基本的命令は一連のマイクロ命令を用いて実
行される。この型の計算機組織は計算機に対し与えられ
るマイクロ命令が限られた数にありそして予め定めた組
の基本的命令に厳格に相関させられるという欠点を有す
る。
すなわち、マイクロ命令の付加または変更はそれらを記
憶する読出専用記憶装置の付加または変更を必要とする
。これらの計算機のいわゆる「内部デコア (DecOre)lと呼ばれているもの、すなわち、組
をなす基本的命令を拡張して、前もつて予知されていな
い種々のマクロ命令(大命令)を実行するようにし、或
いは新しくてかつより効果的な基本的命令の組によりマ
イクロ命令を実行するようにするのを困難かつ厄介にす
る。
近年、このような欠点を除去するためにマイク口命令を
読出一書込記憶装置に記憶することが提案されている。
計算機そのものの制御記憶装置の変更を可能ならしめる
ため、2つ以上の読出一書込記憶装置を利用し、結局制
御装置を少くとも部分的に2倍化することが提案されて
いる。このようにして、第1の制御記憶装置またはマイ
クロプログラム記憶装置への一組のマイクロプログラム
の記録は、計算機の動作を制御するために第2の制御記
憶装置および関連した制御回路を用いることによつて遂
行することができる。
この方法は効果的であるが、非常に費用がかかりそして
非常に大きな計算機に対してだけしか便利ではない。こ
れらの欠点は本発明により除去されるのであり、本発明
は、計算機に対する制御方式の構成であつて普通は読出
専用記憶装置(ROSと称す)であるただ1つのマイク
ロプログラム記憶装置と、主記憶装置すなわちプログラ
ム命令、処理されるべきデータおよび1つのプログラム
を実行するのに必要な全ての情報を含む同じ記憶装置か
らマイクロ命令を直接読出すための論理制御回路とを含
むものを提供する。
本発明の第1の態様に従えば、1つのマイクロプログラ
ム支持部から他のマイクロプログラム支持部への切換え
は静的モードで行われ、云い換えれば、各マイクロプロ
グラムは予め固定した支持部に一体的に記録され、そし
て制御は1つのマイクロプログラムの終りおよびもう1
つのマイクロプログラムの初めにおいてだけ一方の支持
部から他方の支持部に切換わる。
更に詳細には、全ての基本的命令の解釈に対し共通であ
りかつ読出専用記憶装置に記録されている解釈段階「ア
ルフア]は実行されるべき各基本的命令に対し固有のマ
イクロプログラムのアドレスを指し、そしてこのアドレ
スはそのマイクロプログラムの支持部を指定する一片の
情報に関係づけられている。
本発明のもう1つの態様によれば、動作の融通性および
速度の観点からみた他の利点が、解釈段階「アルフア」
の発展中ならびに実行段階「ベータ」の期間中に1つの
マイクロプログラムからもう1つのマイクロプログラム
に動的に切換る装置を設けることによつて得られる。
従つて、主記憶装置に記憶されたルーチンまたはマイク
ロプログラム区分と一諸にROSに記憶されたルーチン
またはマイクロプログラム区分を用いることが可能とな
る。本発明によれば、これは1つのビツトがアドレスさ
れた支持部を指定するようになつている適正な形式を有
するマイクロ命令アドレスの利用により最も一般的な方
法で得られる。
更に詳細には、これは、必要なマイクロ命令アドレスを
示すと共にマイクロ命令の物理的支持部を指定する飛越
しマイクロ命令を利用することによつて得られる。
本発明の更に別の態様に従えば、マイクロプログラムは
主記憶装置に記憶されたマイタロプログラム区分を照合
することによつて拡張され得る。
これはマイクロプログラム記憶装置の限られた部分の物
理的交換によつて得られ、そして交換されたものに続く
全ての記憶装置位置の変更を必要としない。主記憶装置
の1つのマイクロ命令への参照は、マイクロ指令を発生
するための、マイクロ命令のアドレツシング、読出し、
或るレジスタ中への転送を要求する。
これらの動作を遂行するため、計算機は順次的な多数の
マイクロ命令により制御されねばならない0本発明の更
に別の態様によれば、これらのマイクロ命令は必要なと
きROSを置き換える順序回路により好都合に発生され
る。
以下図面を参照しながら本発明を説明する。
第1図は計算機の制御装置1およびクロツク装置を示す
。説明を明瞭ならしめるためまず最初にクロツク装置2
を考察するのが便利である。
このクロツク装置2は実質上クロツク回路20およびク
ロツク回路網21からなる。クロツク回路20は好都合
には中間タツプを備えた遅延線からなり、順次的なりロ
ツタパルスを循環的に発生するため外部始動信号または
この遅延線の端子部のいずれかによりトリカーされるワ
ンシヨツト回路から信号を供給される。
別の方法として、基本周波数を発生するため高周波発振
回路を利用し、これから分周器を用いて一連のクロツク
パルスを得る方法が公知である。
このクロツク回路の動作は各サイクルの終りに停止端子
に加えられる指令により中断される。クロツクパルスの
いくつかは出力導線Tl,T2,T3・・・・・・TN
を通して計算機の種々の点に転送され、そこでそれらは
予め定めたアンドゲートの動作可能化(開放)を循環的
に制御する。他のクロツクパルスTC,,TC2・・・
・・・TCNがクロツク装置の一部であるクロツク回路
網21に加えられる。
クロツク回路網21は制御装置から複数の信号またはマ
イクロ指令Cl,C2,C3・・−・・CNを受け、そ
して複数のアンドゲートおよび必要な場合には複数のフ
リツプフロツプによりクロツクパルスTClないしTC
Nの制御の下に、適当にタイミングをとられかつ適当な
持続時間を有する一連のマイクロ指令を供給し、これら
は、図示されていない適当な制御回路網により、制御装
置、動作部分および記憶装置部分を含めた計算機の適当
な点に分配される。
第1,2および3図において、円により普通は示されて
いる条件づけ要素の入力に指し示されている矢印は、別
のように指定されていない限り、クロツクパルスT,な
いしTNまたはクロツク化されたマイクロ指令CTlな
いしCTNが矢印により示された接続を通して供給され
ることを示す。
クロツクパルスとクロツク整時されたマイクロ指令との
差は、クロツクパルスはクロツク装置の各サイクル(機
械サイクル)に無条件に供給されるのに対し、クロツク
整時されたマイクロ指令は対応するマイクロ指令C1な
いしCNが存在する機械サイクル中にたけ供給されるこ
とである。制御装置1は実質上読出専用記憶装置(RO
Sと記す)2、この記憶装置に対する出力レジスタ(読
出専用レジスタ、略してRORと記す)3、解読器4、
ROSアドレスレジスタ(ROSARと記す)5、RO
Sアドレスを記憶するための補助レジスタ(ROSAR
Iと記す)6、およびROSアドレスに増分を付加する
ための計数装置7からなる。記憶装置2はマイクロプロ
グラムの形に組織された例えば18ビツトを有するマイ
クロ単語を含むように設計され、これらのマイクロ単語
は計算機の動作を制御しそして基本的命令により読出さ
れる。
円9ないし16はアンドゲートの組を表わし、これらの
アンドゲートの組はそれらに関連した接続線への信号の
転送を制御する。
各組9ないし16は前述したようにクロツクパルスT1
またはクロツク整時されたマイクロ指令CTjにより制
御される。
詳細には、アンドゲートの組12,13,16はクロツ
クパルスにより制御され、これに対してアンドゲート9
,10,11,14および15はクロツタ整時されたマ
イクロ指令により制御される。
各組は、1本の線で示されかつ以後「チヤンネル」と呼
ばれる導線の組の複数の適当な信号をその入力に受けそ
して動作可能化(開放)させられたときこれらの信号を
その出力に通す。2進形で予め固定したROS(記憶装
置2)アドレスを表わす一組の信号がどのアンドゲート
の組によつても条件づけられないチヤンネル8に転送さ
れる。
計算機の動作を開始するため、このアドレスは例えば制
御コンソールで適当なスイツチを予設定することおよび
始動ボタンを押下げて導線「始動」を通しクロツク装置
の動作を開始させることによりこのチヤンネルに供給さ
れる。
このようにしてチヤンネル8に存在するアドレスはレジ
スタ5に入れられ、そしてアンドゲートの組12がクロ
ツクパルスにより動作可能化されるやいなや1つのマイ
クロ単語が読出されそしてゲートの組16を通してレジ
スタ3に入れられる。
現在はレジスタ3の出力導線に存在する同じマイクロ単
語は解読器4により解読され、この解読された信号はゲ
ートの回路網4Aを通してクロツク回路網21に転送さ
れ、そしてそこからクロツク整時されたマイクロ指令と
して出てくる。レジスタ5に含まれたROSアドレスは
種々の方法で更新することができる。まず最初に、それ
をアンドゲートの組13を通してレジスタ6に入れ、そ
してそこから動作可能化されたアンドゲートの組14を
通して計数装置7に供給し、そこでそれを例えば1だけ
増すことができる。
次いでこの更新されたアドレスはチヤンネル17および
アンドゲートの組11を通してレジスタ5に入れられる
。別の方法として、このアドレスをレジスタ3に記録さ
れたマイクロ単語により得られる適当な量Kだけ増しそ
してチヤンネル18およびゲート15を通して計数装置
7に供給することもできる。
更に別の方法として、記憶装置2から読出されかつレジ
スタ3に含まされたマイクロ単語からROSの新しいア
ドレスを得ることもできる。チヤンネル18およびゲー
ト10を通してレジスタ5に適当な数のビツトを転送す
ることができる。更に別のアドレツシングの可能性は、
第2図に示されているように計算機の演算部分に含まれ
た種々のレジスタのうちの1つであるレジスタAのの内
容をレジスタ5に入れるのを可能ならしめるゲートの組
9により凱御されるチヤンネル19により与えられる。
レジスタAの内容は以後の説明から知られるように演算
部分の他のレジスタから、または外部周辺装置から、お
よび主記憶装置からも発せられ、従つて記憶装置2は一
般的に云つて計算機内またはそれに接続された任意の情
報源によりアドレスされ得る。上述した制御装置の並列
形式は簡単に注目するに値する。
ROSアドレスのビツトの長さはアドレスされねばなら
ない記憶装置(ROS)この記憶位置の数により左右さ
れ、そして記憶装置2から読出されるマイクロ単語の長
さと無関係である。
例えば、ROSアドレスは15ビツトの長さを有し、従
つて約32000の異なる記憶位置をアドレスすること
ができる。
これはROSアドレスを入れるのに用いられるチヤンネ
ルの全てが15本の導線からなり、レジスタ5および6
は15のビツト・セルを有することを意味する。
これに対して、レジスタ3は、マイクロ単語を形成する
ビツトと同数のビツト位置(セル)を有する。
而して、マイクロ命令アドレスをレジスタ3からのマイ
クロ単語より得る場合には、18ビツトのうちの15ビ
ツトがマイクロ命令アドレスとしてチヤンネル18とデ
ート10を通つてレジスタ5にロードされる。さらに本
発明によれば、このマイクロ命令アドレスと同時に、該
アドレスがROSアドレスであるか主記憶装置アドレス
であるかを指定する情報ビツトをチヤンネル18とゲー
ト10′を通つてレジスタ5と並列的に関連した関連レ
ジスタ(フリツプフロツプ)24にロードする。したが
つて、チヤンネル18は、マイク口命令アドレス用の1
5ビツトと上記指定情報ビツトとを並列転送するために
16乃至18ビツト位置を有する。なお第1図から理解
されるように、フリツプフロツプ24には、ゲート9′
とチヤンネル19を介して演算部のレジスタAからもあ
るいは導線8′を介してコンソールキーからも、上記指
定情報ビツトがロードされ得る。
いずれの場合でも、フリツプフロツプ(関連レジスタ)
24は、マイクロプログラムアドレツシング用のレジス
タ5と並列的に関連し、ゲート9あるいはチヤンネル8
を介してレジスタ5にロードされるマイクロ命令アドレ
スがROSアドレスであるかまたは主記憶装置アドレス
であるかを指定する情報ビツトをロードする。主記憶装
置からのマイタロ命令の呼出しはそのアドレツシング、
読出しおよび転送を必要とし、従つて、その動作は多数
の以後のマイクロ命令により制御されねばならない。
これらのマイクロ命令は前述した制御装置の部分に適当
に持続されたハードウエア順序回路に発生されることは
既に述べた。第1図は本発明による制御装置全体のプロ
ツクダイヤグラムを示し、従つて、これもハードウエア
順序回路および制御装置へのそれに関連した接続線なら
びに本発明を有効ならしめるのに必要な変更からなる。
ハードウエア順序回路はプロツク25で示されている。
後にハードウエア順序回路の好適な実施例が第4図を参
照して説明される。この時点では、ハードウエア順序回
路は好都合には例えば2ビツト型2進計数器で構成され
ることを心に留めれば充分である。
ハードウエア順序回路25は各機械サイクルに適当な入
力導線22に供給されるクロツクパルスTにより進まさ
れる。しかしながら、クロツクパルスはフリツプフロツ
プ24がセツトされているとき、すなわち、その出力が
「1」のレベルにあるときだけ有効である。この出力は
ハードウエア順序回路25に対する動作可能化信号とし
て作用する。
RORMと名づけられる補助レジスタ27が設けられ、
これは主記憶装置からの情報をアンドゲートの組28お
よびチヤンネル29を通して受ける。
レジスタ27はマイクロ命令の文字を有する情報を受け
るために設けられ、従つて、それがマイクロ命令と同じ
長さの2進情報を記憶できるようにするためその並列形
式が記憶装置2のものと同じであるのが便利である。
記憶装置2に含まれた特定の命令がマイクロ指令の発生
に必須のものではない冗長検査ビツト、例えばパリテイ
検査ビツトのときにだけ、レジスタ27はマイクロ命令
の実効的な有効長に等しいところの比較的短い容量を有
する.。
レジスタ27はアンドゲートの組30を通してレジスタ
3の入力導線に接続され、従つて、単にアンドゲートの
組30を動作可能化させるだけでレジスタ27に含まれ
た情報をレジスタ3に転送することができる。
パートウェア順序回路25の出力導線31はアンドゲー
トの組32を通して指令発生回路網4Aに接続されてい
る。
指令発生回路網4Aは好都合には複数のオアゲートから
なる。これはその入力導線にハードウエア順序回路の出
力ならびに解読回路網4の出力を受ける。後に第4図を
参照してハードウエア順序回路およびそれと制御装置と
の接続が詳細に説明される。
「演算部分」第2図は計算機の演算部分のプロツクダイ
ヤグラムを示し、これをここで簡単に単に説明を完全な
らしめる目的だけで説明する。
計算機の演算部分は実質上2つのレジスタバンク33,
34、レジスタA1および演算回路網35からなる。
レジスタバンク33は例えばそれぞれ18ビツトを有す
る16のレジスタからなり、入力導線37を通してマイ
クロ指令のコードによりアドレスされる。
このようなアドレツシングにより、そして同時にこのレ
ジスタバンクの入力にあるゲートの組38またはこのレ
ジスタバンクの出力にあるゲートの組39のいずれかを
制御することにより、チヤンネル45から出てくる一片
の−情報をアドレスされたレジスタに記録することがで
き、そして二者択一的または同時に、アドレスされたレ
ジスタに既に含まれた情報またはそれに記録されつつあ
る情報をレジスタAに記録することができる。
レジスタAの内容は分配用チヤンネル40に供給され、
そしてゲートの動作を介して選択的に演算回路網35に
供給される。レジスタAの内容はチヤンネル41および
ゲート42を通してレジスタバンク34にも送られる。
レジスタバンク34もそれぞれ18ビツトを有する16
のレジスタからなり、そして入力43を通してマイクロ
指令のコードによりアドレスされる。アドレスされたレ
ジスタの内容は常に分配用チヤンネル44に存在し、そ
してそこから選択的にゲートを通して演算回路網35に
供給される。レジスタバンク34内のアドレスされたレ
ジスタには種々の情報源から発せられた情報を入れるこ
とができる。レジスタAに含まれたデータをチヤンネル
41およびアンドゲート42を通してレジスタバンク3
4に転送する方法は既に説明した。もう1つの可能な情
報源は外部周辺装置を源とするデータチヤンネルである
。このようなチヤンネルが「データ入力」として示され
、そしてこれはゲートの組145により制御される。主
記憶装置から第3図のチヤンネル128に来るデータは
演算部分により処理されるべくアンドゲートの組46を
通してレジスタバンク34に転送される。
読出専用マイクロプログラム記憶装置である記憶装置2
は記録のためデータをレジスタバンク34に送る。
このためレジスタ3の出力とレジスタバンク34との間
に接続チヤンネル47(第1および2図)が設けられて
いる。このチヤンネルはゲートの組48により制御され
る。ゲートの組50により制御されたチヤンネル49(
記入)を通して任意の予め定めた情報片をレジスタバン
ク34に入れることもできる。
チヤンネル49には操作員により制御されるコンソール
により発生された情報片が供給される。レジスタバンク
33および34は各レジスタバンクにおいて一時に1つ
のレジスタだけをアドレスするため並列に制御すること
ができる。
レジスタバンク33の場合これはレジスタAにより明示
されるが、しかし同じことがレジスタバンク34に対し
てもあてはまり、このレジスタバンク34は計算機の演
算上の構造の点で各たびごとに単一のレジスタBとして
みてよい。
レジスタAおよびBは処理されるべく演算回路網に与え
られる2つのデータに対し必要である同,−時的な物理
的支持部を与える。
演算回路網は分配チヤンネル40および44ならびに多
数のゲートによりレジスタAおよびBに接続されている
これらのゲートは好都合には処理されるべきデJータの
形式(2進法、パツク10進法、またはアンパツク10
進法)、遂行されるべき演算の型、レジスタおよび演算
回路網の並列形式に従つて組の形に組織される。
考察している例では、レジスタおよび演算回路4網35
は例えば18ビツトの並列形式を有する。
これは単一のバイトまたはバイトの1ゾーンに対して演
算を行う可能性を排除することなしに2つのバイトに対
して予め定めた演算を並列に遂行できるようにする〇こ
のため、演算回路網35の入力を分配チヤンネル40お
よび41に接続するゲートは参照番号51ないし58で
それぞれ示されている組に分割されている。
各組を表わすプロツクは転送されるビツトの順序番号を
つけられている。同様に、演算回路網の出力はゲートの
組60ないし63を介して収集チヤンネル59に接続さ
れている。演算回路網の出力はアンドゲート64ないし
67を通して解読器68にも接続され、この解読器68
は動作可能化されたゲートに対応するビツトの組に対し
てだけ特定の出力コード、例えば「全てO」または「全
て1」のコードに応答する。解読器の出力の信号NZ2
は「検証済み条件」の信号であり、これは必要なときに
動作回路網により遂行された動作を適当な検査に供する
のに用いられる。動作回路網は好ましくは集積回路技術
を用いて公知の電気回路により構成される。
このような動作回路網の詳細な説明は電子計算機の設計
に関し入手できる広く知られた文献に見ることができ、
それらのうちにはマクグロウ・ビルにより発行されたア
ール・エス・レズレイ著の「デイジタル計算機および制
御技術」第4部の権威ある文献を引用することができる
。加うるに、本出願人により1973年7月10田こ出
願されたイタリヤ特許出願26397A/1973(対
応日本国出願:特願昭49一78615)は、演算回路
網が機能的に独立の種種の回路網からなるようになつて
いる特定の実施例を示し、更に詳細に知りたければこの
出願を参照すればよい。
演算回路網は一般に下記の型の演算を遂行せねばならな
い。
すなわち、2進法または10進法の演算、論理積、論理
和、排外的論理オζ比較などの論理操作、データシフト
演算、1単位以上の増分または減少分の付加である。必
要な演算の型は制御装置から受信されるマイクロ指令の
組70により定められる。
演算部分の説明を完全ならしめるため、収集チヤンネル
59はチヤンネル45に接続されていること、従つて、
演算回路網35により遂行された演算の結果として収集
チヤンネル59に存在するデータはバンク33の適当な
1つのレジスタに転送されて記録され、そしてそこれら
レジスタAに送られ、次いで、必要な場合は主記憶装置
に記録するためまたはチヤンネル69およびゲートの組
84を通して外部周辺装置に転送するためバンク34に
送られることを注日すべきである。
チヤンネル69は主記憶装置に接続されている(第3図
)。ゲートの組84の出力にあるチヤンネル85は情報
の交換を制御する制御回路網により計算機から周辺装置
へ情報を転送するためのものであり、その説明は本発明
の理解と無関係である。演算部分は分配チヤンネル40
および44を収集チヤンネル59に直接接続するためゲ
ートの組87および88により制御される2つの側路チ
ヤンネル83および86も有する。
加うるに、図示されていない多数のフリツプフロツプが
設けられてけた上げ入力およびけた上げ出力、および特
別化された解読器により行われた検査の結果などの特定
の条件を記録する。
「主記憶装置部分」 第3図は計算機の記憶装置部分のプロツクダイヤグラム
を示す。
実質上、記憶装置部分は、18ビツトの並列形式を有す
る例えば磁心記憶装置からなる主記憶装置122、アド
レツシングレジスタSIlデータレジスタDIおよび多
数の通信チヤンネルからなる。
アドレツシングレジスタSlはチヤンネル40(第2お
よび3図)からアンドゲートの組124を通してレジス
タAに記憶されているコード化情報を受ける。レジスタ
Aは前述したように第2図に示された動作部分に含まれ
ている。レジスタSIは予知される最大記憶容量と適合
する容量を有する。例えば、18ビツト位置を有するレ
ジスタは約256000の記憶位置をアドレスすること
ができ、そしてこれは上述した計算機の並列型式と適合
する。
記憶装置に書込まれるべきデータはアンドゲートの組1
25により制御されるチヤンネル69を通してレジスタ
DIに転送され、前述したように演算部分のレジスタB
から供給される。
レジスタDIに記録されたデータはチヤンネル123を
通してアドレスされた記憶位置に書込まれる。
主記憶装置から読出されたデータはチヤンネル127に
送られ、そしてゲートの組126を通してレジスタDに
入れられ、そしてそこからチヤンネル128を通して既
に演算部分の説明で述べたレジスタBに供給される。
ゲートの組134により制御されるレジスタ5の出力に
ある付加的なチヤンネル129は主記憶装置をアドレス
するのに設けられている。
このチヤンネルを通してマイクロ命令アドレスがレジス
タSIに入れられ、ROS(記憶装置2)位置の代りに
主記憶装置の位置をアドレスするのを可能ならしめる。
レジスタDIの出力はチヤンネル128を介してレジス
タBに接続されていると共にチヤンネル29およびゲー
トの組28を介してレジスタ27(第1図)に接続され
、それ故レジスタDIの内容は制御装置によりマイクロ
命令として用いられ得る。
云い換えれば、これは主記憶装置から制御装置への情報
の直接の交換および制御装置から主記憶装置へのアドレ
スの直接の交換を行えるようにする。
これは従来はなし得なかつたことであり、その理由は制
御装置は情報の交換を行うゲートの組の制御のためにの
み動作させられたからである。「ハードウエア順序回路
」計算機の構造を一般的に説明したので、ここでハード
ウエア順序回路および関連した回路の実施例を更に詳細
に調べることが可能である。
第4図は第1図のハードウエア順序回路の好適な実施例
を示す。
これは実質上2つの相互接続されたフリツプフロツプ2
01および222からなる。レジスタ5と並列的に関連
するフリツプフロツプ24には、読出されるべきマイク
ロ命令がどこにあるか(ROS2かまたは主記憶装置1
22か)を指定するビツトがロードされる。
すなわち、アンドゲート9′,10′および導線87に
接続された入力202から指定ビツトがマイクロ指令C
Tlに応答してロードされる。アンドゲート9′を介す
る場合は、チヤンネル19の特定ビツト位置を通つてレ
ジスタバンク33(レジスタA)から指定ビツトが供給
される。アンドゲート10/を介する場合は、チヤンネ
ル18の付加的特定ビツト位置を通つてレジスタ3から
指定ビツトが供給される。導線ざを介する場合は、コン
ソールから指定ビツトが供給される。フリツプフロツプ
24の直接出力導線203は2入力型アンドゲート20
4の入力、ワンシヨツト回路205の入力、インバータ
206の入力、および、ハードウエア順序回路の出力2
11ないし214を附勢するアンドゲート207ないし
210の入力に接続されている。
ワンシヨツト回路205の出力はフリツプフロツプ20
1および222のりセツトの入力に接続されている。イ
ンバータ206の出力は記憶装置(ROS)2からレジ
スタ(ROS)3へ信号を入れるのを制御するゲートの
組16(第4図)の制御入力272に接続されている。
クロツクパルスT2を受ける第2の入力を有するアンド
ゲート204の出力はフリツプフロツプ201のクロツ
ク入力を制御する。
機械サイクルの初めに、適正なマイクロ命令だけに応答
して発生されるマイクロ指令CTlがフリツプフロツプ
24へ信号を入れるのを可能ならしめ、そしてこのフリ
ツプフロツプの内容が2進法の「1」であるときには、
導線203の2進レベルはレベル「1」に切換るかまた
はレベル目」に留まり、そしてインバータ206を通し
てゲートの組16を禁止する。
このようにして記憶装置2はアドレスされたマイクロ命
令をレジスタ3に入れるのを妨げられる。
同時に、効果的に導線203の2進レベルが「O]から
「1」に切換る場合、すなわち、ROSアドレスがマイ
クロ命令主記憶装置アドレスにより置き換えられる場合
、ワンシヨツト回路205に加えられた信号の立上り縁
部はそれをトリカーし、その結果それは短かいパルスを
発生し、これはフリツプフロツプ201および222を
りセツトする。ワンシヨツト回路205による両フリツ
プフロツプ201および222の同時的りセツトは、マ
イクロ命令の読出されねばならない支持部が効果的に変
えられたときにだけ、更に具体的には、フリツプフロツ
プ24をりセツト状態におきその出力を「O」レベルに
おくROSマイクロ命令からフリツプフロツプ24をセ
ツト状態におきその出力を「1」レベルにおく主記憶装
置に記憶されたマイクロ命令に制御が切換えられたとき
生じることを注意すべきである。
事実、ワンシヨツト回路205がその入力にそれをトリ
カーする立上り縁部を受けるのは支持部の実効的な変更
がある情況においてだけである。
同時に、クロツクパルスT2はアンドゲート204を通
してフリツプフロツプ201のクロツク入力に転送され
るが、しかしながら、このフリツプフロツプの状態を変
えず、なぜならこのパルスはりセツト信号が既に存在す
るとき到達するからである。りセツト信号の持続時間は
クロツクパルスよりも適当に長く、それを範囲に含む。
フリツプフロツプ201および202の両方がりセツト
状態にあるので、それぞれの反転出力215および21
7は2進レベル[1」にあり、直接出力216および2
18はレベル「O」にある。従つて、出力215および
217および導線203に接続された入力を有しかつこ
れらの入力の全てがレベル「1」にあるアンドゲート2
07はその出力をレベル「1」に切換える。第4図から
、遂に、アンドゲート208,209,210の出力は
レベル「O」に留まることが容易に知られる。
導線211に存在する信号は論理回路網4Aに供給され
て多数のマイクロ指令を発生させる。図面に詳細には示
されていない論理回路網4Aは実質上複数のオアゲート
からなりそして回路網4および導線211ないし214
から受信された信号に応答してマイクロ指令を発生させ
る。
導線211の信号に応答して発生されたマイクロ指令は
主記憶装置のアドレスのうちレジスタ5により指定され
たアドレスの読出しを制御する。これは、具体的には、
このようにして発生されたマイクロ指令がゲートの組1
34(第3図)を動作可能化して、レジスタ5の内容を
レジスタSIに入れること、記憶装置を読出すための付
加的なマイクロ指令が発生されること、およびもう1つ
のマイクロ指令がゲートの組126を動作可能化して記
憶装置から読出されたデータをレジスタDIに入れるこ
とを意味する。
この時点で、記憶装置読出しサイクルは単一の機械サイ
クルと一致する必要はなく、より長くて例えば2機械サ
イクルであつてもよいことを注目するのに好都合である
従つて、基本的機械サイクル中には記憶装置のアドレツ
シングだけが行われ、これに対して、ゲートの組126
を動作可能化するマイクロ指令は次のサイクルに発生さ
れる。次のサイクルにおいて、フリツプフ礪ンプ24の
状態はマイクロ指令CTlが発生されないという理由で
変えられない。アンドゲート204を通してフリツプフ
ロツプ201に送られたクロツクパルスT2はこのフリ
ツプフロツプをセツトし、この間フリツプフロツプ22
2はりセツト状態に留まる。第4図からレベル「1」の
信号が導線212に現われ、導線211,213,21
4は「O」レベルに留まることが明らかに知られる。
導線212の信号は異なる目的、すなわちゲートの組2
8(第1図)を動作可能化して情報をレジスタDIから
チヤンネル29を通してレジスタ27に転送するため他
のマイクロ指令を発生する。
必要な場合、ゲート28の動作可能化にはその段階内に
おいてゲートの組126の動作可能化が先行させられる
。次の機械サイクルの初めにおいて、タロツクパルスT
2はハードウエア順序回路を進ませてフリツプフロツプ
201をりセツトしそしてフリツプフロツプ222をセ
ツトする。第4図から導線213にレベル「1」の信号
が現われることが知られよう。このようにして新しいマ
イクロ指令の組が発生され、これは前に主記憶装置から
読出されて今はレジスタ27に記憶されているマイクロ
命令のレジスタ3への記入を制御する。
主記憶装置から読出されたマイクロ命令はこのようにし
てこの機械サイクル中に実行される。
同じマイクロ命令は、更に、次のマイクロ命令.を読出
すためにアドレスを更新するのに必要な情報を供給し、
そしてこのためマイクロ指令を発生する。例えば、アド
レス1だけ増す必要がある場合、適当に整時されたマイ
クロ指令が発生され、これ.はゲートの組13(第1図
)を動作可能化してレジスタ5に記録されたアドレスを
レジスタ6に入れ、これはゲートの組14を動作可能化
してレジスタ6に記録されたアドレスを計数回路網7を
通して転送し、この回路網をしてアドレスに1とい・う
量を加算し、そしてこれは最終的にゲートの組11を動
作可能化してチヤンネル17を通しレジスタ5内にこの
更新されたアドレスを再び転送する。
このマイクロ命令の制御の下に実行される動作は1機械
サイクルを必要とする。
この場合機械サイクルの終りにこのマイクロ命令により
発生されるクロツク整時されたマイクロ指令はフリツプ
フロツプ201をセツトし、これに対し、フリツプフロ
ツプ222は既にセツト状態にある。新しい機械サイク
ルの初めに生ずるすぐ後に続くクロツクパルスT2は後
に両フリツプフロツプをりセツトする。この時点でハー
ドウエア順序回路は前述したのと同じ状態にあり、そし
てフリツプフロツプが常にセツト状態にあるときはそれ
は、主記憶装置からレジスタ5に含まれかつ前の機械サ
イクルにより更新されたアドレスにおいて次のマイクロ
命令を読出す動作を開始させる。
逆に、遂行されるべき動作が記憶装置読出しの場合に生
ずるように1機械サイクルより多いサイクル、例えば2
機械サイクルを必要とするときは、フリツプフロツプ2
01をセツトするマイクロ指令は発せられず、ハードウ
エア順序回路は順次的に進まされる。
事実、次の機械サイクルの初めにクロツクパルスT2が
フリツプフロツプ201をセツトし、これに対し、フリ
ツプフロツプ222は既にセツト状態にある。
第4図に示された接続からレベル「1」の信号が導線2
14に現われることが容易に知られる。従つて新しい組
のマイクロ指令が発生され、これは動作の完結を制御し
、例えば主記憶装置から読出されたデータをレジスタD
に入れ、そしてそこからチヤンネル128およびゲート
の組46を通してバンク34の適当なレジスタに入れる
のを可能ならしめる。
必要な場合、レジスタ34に入れられたデータを同じ機
械サイクル中にチヤンネル44、チヤンネル83、ゲー
トの組87、チヤンネル59、チヤンネル45およびゲ
ートの組38を通してバンク33の1つのレジスタに入
れることができる。
次の機械サイクルでクロツクパルスT2が到達した時点
でフリツプフロツプ201および222はりセツト状態
になり、それ故、フリツプフロツプ24がまだセツト状
態にあるときにはハードウエア順序回路の介入が繰返さ
れ、この場合にはレジスタ5に含まれている更新された
アドレスを用いそして主記憶装置から次の命令を読出す
。このようにして、一連のマイクロ命令の実行はたとえ
それらが主記憶装置に記録されているときでも可能なら
しめられる。更に注目されることは、主記憶装置に記録
されているマイクロ命令は記憶装置(ROS)2に記録
されているマイクロ命令と同じ型式を有することである
主記憶装置に記録されたマイクロ命令の実行は、勿論、
より長い実行時間を必要とし、なぜなら各マイクロ命令
の実行段階は常に少くとも1機械サイクルを必要とする
(本例では2機械サイクル)マイクロ命令の呼出し段階
を先行させていなければならないからである。
この制限があるにもかかわらず、本発明は特に便利であ
り、なぜなら本発明はマイクロプログラム計算機に実用
上無制限の数のマイクロ命令を与えるのを可能ならしめ
るからである。
適当なプログラムにより、磁気テープ、デイスク、穿孔
カード、または計算機に接続された周辺装置により処理
される任意の型の支持手段に前もつて記憶された任意の
希望するマイクロプログラムを別の用途のため随意に主
記憶装置に入れることができることは明らかである。
ここで、記憶装置2に記録された一連のマイク口命令か
ら主記憶装置に記録された一連のマイク口命令へ移る方
法およびその逆に移る方法、すなわち、アリツプフロツ
プ24を効果的にセツトおよびりセツト状態におく方法
の説明が残つている。
これは飛越しマイクロ命令により容易に得られ,る。云
い換えれば、記憶装置2に記録されていると仮定するこ
とのできる1つのマイタロ命令がマイクロ命令の新しい
アドレスおよびそれを含む支持部を指定する。例えば、
マイクロ命令の型式は下記のようなものである。
ビツト0−3ニフアンクシヨンコード。
これらのビツトはゲート10および10′を制御するマ
イクロ指令を発生するのに用いられる。ビツト4−マイ
クロ命令の支持部。
これはアト・レスされたマイクロ命令が記憶装置2に記
録されているか或いは主記憶装置に記録されているかを
指定する。ビツト5−18ニマイクロ命令アドレス。
これらのビツトはマイクロ命令のアドレスを指定する。
アドレスビツトが記憶装置2または主記憶装置の記憶位
置の全てをアドレスするのを可能ならしめる必要はなく
、単にそれらのいくつかだけをアドレスするのを可能な
らしめればよい。ビツトO−3により発生されたマイク
ロ指令により、ビツト4はフリツプフロツプ24に記録
され、ビツト5ないし18はレジスタ5の一部に記録さ
れる。
次の機械サイクル中にフリツプフロツプ24の内容に従
つてハードウエア順序回路により記憶装置2がアドレス
されるか或いは主記憶装置から次のマイクロ命令を読出
す動作が開始される。
この飛越しマイクロ命令を主記憶装置に含ませることも
でき、従つて主記憶装置から記憶装置2または主記憶装
置のもう1つのアドレスを照合できることは明らかであ
る。上述した動作によるマイクロ命令支持部からもう1
つのものへの移り換りは非常に迅速であるが幾分融通性
がなく、なぜなら主記憶装置と飛越しマイタロ命令との
間に直接的照合が確立されるからである。
云い換えれば、どのマイクロプログラムおよび一連のマ
イクロプログラムが主記憶装置に記録されているかおよ
びそれらがどこに位置しているか、すなわちどれがそれ
らの有効的アドレスであるかを前もつて知る必要がある
。これは主記憶装置内の情報の組織を厄介で融通性のな
いものにする。
従つて、主記憶装置に記録されたマイクロ命令が読出さ
れたとき、それをパラメータまたは間接的な形でアドレ
スするのが便利である。
この場合、飛越し命令により供給されるアドレスは直接
には用いられずに、これはバンク33の1つのレジスタ
のアドレス(そこでは必要なマイクロ命令の実効アドレ
スが生じる)、および勿論のこととしてこのマイクロ命
令の支持部(主記憶装置または記憶装置2)を指定する
情報を供給する。
この場合、飛越しマイクロ命令には主記憶装置のアドレ
スのうちバンク33の前記予め定めたレジスタに記録さ
れている予め定めたアドレスから読出しを行うための1
つのマイクロ命令または一連のマイクロ命令が先行して
いる。
この内容は読出されるべきマイクロプログラムの実効ア
ドレスである。
この読出されたマイクロ命令(またはこの一連のマイク
ロ命令)の次に続くマイクロ命令は正しい飛越しマイク
ロ命令であり、これはレジスタ5に入れられるべきアド
レスおよびフリツプフロツプ24に入れられるべきビツ
トがバンク33の前記予め定めたレジスタから読出され
てゲート9および9′を通して入れられねばならないこ
とを指定する。
記憶装置2に書込まれるべき情報は「時間的に先のもの
として」記憶装置2という支持部から主記憶装置という
支持部への移り換りの可能性を予知することができるが
、このような情報に「時間的に後のもの」を導入するこ
とも可能である。
実際上、記憶装置2は普通は複数のモジユール要素によ
り構成され、減らされた数の記憶装置に対してそれぞれ
1つずつモジユール要素が設けられ、容易に交換可能で
ある。マイクロプログラムの区分が拡張されるべきとき
は、その区分を含むモジユール要素を特定のマイクロ命
令を含むもう1つの要素で置き換えることが可能である
。上述した特定のもの地位をゆするために取り除かれる
シーケンスのマイクロ命令はマイクロプログラム区分の
拡張部を構成するものと共に主記憶装置に記録される。
異なるマイクロプログラムの連結のためこれが可能でな
い場合、上述の特定したマイクロ命令(記憶装置読出し
、および飛越し)はモジユール要素の空間位置に割当て
られ、そしてこのモジユール要素内の補助的飛越しマイ
クロ命令によりそれらを呼出す。
また、この場合、モジユール要素の置き換えは必要な結
果を得られるようにする。
【図面の簡単な説明】
第1図は本発明によるマイクロプログラム計算機の匍脚
装置の概略プロツクダイヤグラム、第2図はこのマイク
ロプログラム計算機の動作部分の概略プロツクダイヤグ
ラム、第3図は主記憶装置部分の概略プロツクダイヤグ
ラム、第4図は本発明による順序回路の好適な形態を示
す図で、図中、1は制御装置、2はクロツク装置、2は
読出専用記憶装置(ROS)、3は出力レジスタ(RO
R)、4は解読器、4Aは指令発生回路網、5はROS
アドレスレジスタ(ROSAR)、6は補助レジスタ(
ROSARI).7は計数装置、9はアンドゲート、2
0はタロツク回路、21はクロツク回路網、24はフリ
ツプフロツプ、25はハードウエア順序回路、27は補
助レジスタ、33および34はレジスタバンク、Aはレ
ジスタ、35は動作回路網、68は解読器、SIはアド
レツシングレジスタ、DIはデータレジスタ、122は
主記憶装置、201および222はフリツプフロツプ、
204はアンドゲート、205はワンシヨツト回路、2
06はインバータを示す。

Claims (1)

  1. 【特許請求の範囲】 1 主記憶装置、主記憶装置アドレッシングレジスタ、
    主記憶装置出力レジスタ、および複数のワーキングレジ
    スタを有する計算機にあつて、マイクロプログラム記憶
    装置と前記主記憶装置とに記録されたマイクロ命令を読
    出すためのマイクロプログラム化された制御装置におい
    て、マイクロプログラム記憶装置と、 マイクロプログラムアドレッシングレジスタと、前記マ
    イクロプログラム記憶装置から読出されたマイクロ命令
    を記憶するためのマイクロ命令レジスタと、前記マイク
    ロ命令レジスタに記憶されたマイクロ命令を解読して一
    連のマイクロ指令を発生するための解読器と、前記マイ
    クロプログラムアドレッシングレジスタと並列的に関連
    し、実行中の特定マイクロ命令により特定のマイクロ指
    令が発生されたとき、アドレスされたマイクロ命令とそ
    の後続マイクロ命令とが記憶されている記憶装置を指定
    する情報をロードする関連レジスタと、前記マイクロプ
    ログラムアドレッシングレジスタから前記マイクロプロ
    グラム記憶装置に至る第1のアドレッシングチャンネル
    と、前記マイクロプログラムアドレッシングレジスタか
    ら前記主記憶装置アドレッシングレジスタに至る第2の
    アドレッシングチャンネルと、前記マイクロプログラム
    記憶装置から前記マイクロ命令レジスタに至る第1の出
    力チャンネルと、前記主記憶装置出力レジスタから前記
    マイクロ命令レジスタに至る第2の出力チャンネルと、
    前記関連レジスタによつて作動され、前記チャンネル群
    を選択的に可能化および禁止化するための連続的な複数
    のマイクロ指令組を発生する論理的順序回路と、を具備
    する制御装置。
JP49110359A 1973-09-26 1974-09-25 計算機の制御装置 Expired JPS5917460B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IT29386 1973-09-26
IT2938673A IT993427B (it) 1973-09-26 1973-09-26 Unita di controllo di calcolatore microprogrammata con possibilita di passaggio dinamico da microsequenze residenti in una ros a micro sequenze residenti nella memoria principale e viceversa

Publications (2)

Publication Number Publication Date
JPS5079229A JPS5079229A (ja) 1975-06-27
JPS5917460B2 true JPS5917460B2 (ja) 1984-04-21

Family

ID=11226882

Family Applications (1)

Application Number Title Priority Date Filing Date
JP49110359A Expired JPS5917460B2 (ja) 1973-09-26 1974-09-25 計算機の制御装置

Country Status (6)

Country Link
JP (1) JPS5917460B2 (ja)
CA (1) CA1001312A (ja)
DE (1) DE2440627C2 (ja)
GB (1) GB1440856A (ja)
HK (1) HK61581A (ja)
IT (1) IT993427B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62146176U (ja) * 1986-03-11 1987-09-16

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4825356A (en) * 1987-03-27 1989-04-25 Tandem Computers Incorporated Microcoded microprocessor with shared ram

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5014244A (ja) * 1973-04-19 1975-02-14

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BE757967A (fr) * 1969-10-25 1971-04-23 Philips Nv Memoire pour microprogramme
US3736567A (en) * 1971-09-08 1973-05-29 Bunker Ramo Program sequence control

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5014244A (ja) * 1973-04-19 1975-02-14

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62146176U (ja) * 1986-03-11 1987-09-16

Also Published As

Publication number Publication date
HK61581A (en) 1981-12-18
IT993427B (it) 1975-09-30
CA1001312A (en) 1976-12-07
DE2440627A1 (de) 1975-03-27
JPS5079229A (ja) 1975-06-27
DE2440627C2 (de) 1986-01-30
GB1440856A (en) 1976-06-30

Similar Documents

Publication Publication Date Title
US3760369A (en) Distributed microprogram control in an information handling system
US4556938A (en) Microcode control mechanism utilizing programmable microcode repeat counter
US4631663A (en) Macroinstruction execution in a microprogram-controlled processor
US4118773A (en) Microprogram memory bank addressing system
US4016545A (en) Plural memory controller apparatus
US3991404A (en) Apparatus for carrying out macroinstructions in a microprogrammed computer
US4038643A (en) Microprogramming control system
US3872447A (en) Computer control system using microprogramming and static/dynamic extension of control functions thru hardwired logic matrix
US4377846A (en) Arithmetic unit for generating constants in an electronic computer of the microprogram-controlled type
US4027291A (en) Access control unit
JPS5830608B2 (ja) マイクロプログラムケイサンキ
JPS6361691B2 (ja)
US3900835A (en) Branching circuit for microprogram controlled central processor unit
JPS6029402B2 (ja) クロツク制御信号発生装置
US4005391A (en) Peripheral interrupt priority resolution in a micro program data processor having plural levels of subinstruction sets
US3956738A (en) Control unit for a microprogrammed computer with overlapping of the executive and interpretative phase of two subsequent microinstructions
US4661901A (en) Microprocessor control system utilizing overlapped programmable logic arrays
US4346437A (en) Microcomputer using a double opcode instruction
US4446517A (en) Microprogram memory with page addressing and address decode in memory
US3786434A (en) Full capacity small size microprogrammed control unit
US4251862A (en) Control store organization in a microprogrammed data processing system
US4460972A (en) Single chip microcomputer selectively operable in response to instructions stored on the computer chip or in response to instructions stored external to the chip
EP0229734A2 (en) Microprogram control device
JPH05108341A (ja) マイクロプロセツサ
US3969702A (en) Electronic computer with independent functional networks for simultaneously carrying out different operations on the same data