JPH06290061A - レジスタ制御装置 - Google Patents

レジスタ制御装置

Info

Publication number
JPH06290061A
JPH06290061A JP9502093A JP9502093A JPH06290061A JP H06290061 A JPH06290061 A JP H06290061A JP 9502093 A JP9502093 A JP 9502093A JP 9502093 A JP9502093 A JP 9502093A JP H06290061 A JPH06290061 A JP H06290061A
Authority
JP
Japan
Prior art keywords
data
register
bit
function
task
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.)
Pending
Application number
JP9502093A
Other languages
English (en)
Inventor
Satoshi Kato
智 加藤
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP9502093A priority Critical patent/JPH06290061A/ja
Publication of JPH06290061A publication Critical patent/JPH06290061A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【目的】1つのレジスタを操作するのに、アクセスする
アドレスが1つで且つ必要最小限のビット数で制御でき
るようにすることにより、マルチタスクコンピュータシ
ステムにおいて不具合が生じないようにすること。 【構成】複数ビットのデータ値を格納するレジスタ本体
10の出力データcは書込み機能ロジック20に入力さ
れる。この機能ロジック20には、タスクにより、レジ
スタ本体10の各ビットの書き換え選択をその各ビット
状態により示す機能データbと、データ値を“1”,
“0”いずれにするかを示すモードデータaが与えら
れ、機能データbの各ビット状態により、出力データc
のデータ値とモードデータaで示されるデータ値との一
方を、対応するビットのデータ値とする設定データdを
レジスタ本体10に入力する。レジスタ本体10は、タ
スクにより与えられる書込み信号に応じて、設定データ
dを格納する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、コンピュータシステム
に於けるCPU及び、周辺回路に於ける記憶装置(主と
して一時記憶装置、即ちレジスタ)の制御装置に関す
る。
【0002】
【従来の技術】コンピュータシステムが何らかの機能を
制御する場合には、多くの場合、レジスタを通して間接
的に制御を行う。
【0003】この機能制御は、例えば、図6の(A)に
示すようにして行われる。即ち、同図に於いて、51は
書込みコードを書き換えられるまで保持するレジスタ本
体であり、52は各種の機能を使うタスク、53a〜5
3dはそれぞれ上記タスク52の制御の対象とされる各
種機能をもつ回路・装置である。そして、仮にある機能
を使う場合には、上記レジスタ本体51の対応するビッ
ト位置に“1”を書き込むことによってその機能が設定
され、“0”を書き込むことによってその機能の働きは
停止するものとしている。
【0004】さらに、上記レジスタ本体51の複数のビ
ットを操作することによって、同時に複数の回路・装置
53a〜53dを制御することが可能である。例えば、
今、上記回路・装置53a〜53dの“A機能だけ”が
働いている場合を想定すると、上記レジスタ本体51の
内容は対応するビット0だけが“1”で他のビットは全
て“0”である。この状態を<BIT3,BIT2,B
IT1,BIT0>=<0,0,0,1>で表現するこ
ととする。次に、“A機能”を働かせたまま“B機能”
を働かせるには、まず、一旦レジスタ本体51の内容を
タスク52が読んで、タスク52が論理演算等を行って
ビット1を“1”としてから再びレジスタ51に書き込
むことによって、レジスタ51の内容を<BIT3,B
IT2,BIT1,BIT0>=<0,0,1,1>と
すれば良い。さらにこの状態から“A機能”の働きだけ
を停止したい場合には、同様にレジスタ51の内容を読
み込み、論理演算等によってビット0を“0”としてか
らレジスタ51に書込み、レジスタ51の内容を<BI
T3,BIT2,BIT1,BIT0>=<0,0,
1,0>とすれば良い。
【0005】すなわち、タスクが機能を使う場合には、
(1)レジスタの読み込み、(2)論理演算、(3)レ
ジスタの書込み、の3つの動作が必要となる。これは、
通常コンピュータシステムが、このレジスタの様にCP
Uの外部にあるレジスタのビットを直接制御する機能を
持たないことに原因がある。
【0006】
【発明が解決しようとする課題】しかしながら、上記の
ような方式は、シングルタスクのコンピュータシステム
を使用する限りにおいては大きな問題とはならないが、
図6の(B)に示すように、レジスタ本体51を使用す
るタスクが1つでない、つまりマルチタスクのコンピュ
ータシステムでは次のような不具合が発生する。
【0007】即ち、タスク52mが“A機能”を使用
し、タスク52nが“C機能”をそれぞれ独立に使用す
るような場合を考えてみる。
【0008】最初、全ての機能が働いていない場合に
は、レジスタ51の内容は<0,0,0,0>である。
次に、タスク52mが“A機能”を使う場合には、上記
の様にまずタスク52mはレジスタ51の内容を読み出
す。この後、タスク52mの論理演算によって<0,
0,0,1>に変更されたレジスタ51のデータが再び
書き込まれる。
【0009】しかし、この「レジスタ51の読込みとレ
ジスタ51への書込み」の間にタスクがタスク52nに
切り替わった際に、タスク52nが“C機能”を使用し
ようとした場合、タスク52nはレジスタ51にまだ格
納されているデータ<0,0,0,0>を読み出す。そ
の後、タスク52nによってレジスタ51に書かれるデ
ータは<0,1,0,0>となる。その後、タスクが再
びタスク52mに切り替わると、タスク52mは先程の
続きを行おうとして、レジスタ51に<0‘0‘0‘1
>を書き込んでしまい、タスク52nの指示にも拘わら
ず“C機能”を停止させてしまう。ここで重要なこと
は、タスク52nはこの時点で“C機能”が停止したこ
とがわからないということであり、タスク52nが記憶
している“C機能”の状態と実際の“C機能”の状態が
一致しないおそれがある。
【0010】このマルチタスクのコンピュータシステム
での不具合に対する解決策の1つとして、レジスタに対
してビットセット用のアドレスとビットリセット用のア
ドレスを独立に持たせる方法が知られている。即ち、こ
の方法は、「リード−演算−ライト」という手順を踏ま
ずに1回のレジスタアクセスのみで機能を制御しようと
いうものである。ビットセット用のアドレスに対して書
込みを行った場合には、書き込んだデータが“1”のビ
ットのみレジスタの内容が“1”になり、書き込んだデ
ータが“0”のビットのレジスタの内容は変化しない。
また、ビットリセット用のレジスタに対して書き込んだ
場合には“1”を書き込んだレジスタのビットのみ
“0”になり、“0”を書き込んだビットの内容は変化
しないというものである。このようにすることで、1回
のレジスタアクセスのみでマルチタスクのコンピュータ
システムでも不具合を起こすことなく機能の制御が可能
である。
【0011】しかし、この方法にあっては、1つのレジ
スタを操作するのに2つのアドレスへのアクセスが必要
になるという問題点があった。
【0012】本発明の課題は、1つのレジスタを操作す
るのに、アクセスするアドレスが1つで且つ必要最小限
のビット数で制御できるようにすることである。
【0013】
【課題を解決するための手段】本発明の手段は次の通り
である。レジスタデータ受信手段は、複数ビットのデー
タ値を格納しているレジスタおける各ビットのデータ値
を受ける。指示データ受信手段は、上記レジスタの各ビ
ットの書き換え選択をその各ビット状態により示す指示
データを受ける。書き換えデータ受信手段は、書き換え
るべきビットデータ値を受ける。制御回路手段は、上記
指示データ受信手段により受けた指示データの各ビット
状態により、上記レジスタデータ受信手段で受けたデー
タ値と上記書き換えデータ受信手段で受けたビットデー
タ値との一方を、対応するビットのデータ値として上記
レジスタに優先的に与える。
【0014】
【作用】本発明の手段の作用は次の通りである。制御回
路手段は、指示データ受信手段により受けた、複数ビッ
トのデータ値を格納しているレジスタの各ビットの書き
換え選択をその各ビット状態により示す指示データの各
ビット状態により、レジスタデータ受信手段で受けたデ
ータ値と書き換えデータ受信手段で受けたビットデータ
値との一方を、対応するビットのデータ値として上記レ
ジスタに優先的に与え、これにより、レジスタの各ビッ
トのデータ値が適宜書き換えられる。
【0015】
【実施例】以下、本発明の実施例を、図1の(A)乃至
図5の(C)を参照して説明する。
【0016】図1の(A)は本発明の第1の実施例の構
成を示す図で、10はレジスタ本体、20は書込み機能
ロジックである。
【0017】上記レジスタ本体10は、例えば、通常の
半導体記憶装置であり、その内容はいくつかのフリップ
フロップの集まりである。
【0018】書込み信号、モードデータa、及び機能デ
ータbは、タスク(CPU)によりそれぞれ発生され
る。
【0019】上記書込み機能ロジック20は、図1の
(B)に示すように、AND素子21,22と、OR素
子23と、NOT素子24とを結合した回路である。当
該書込み機能ロジック20の真理値表を図1の(C)に
示す。
【0020】次に、このような構成に於ける動作を説明
する。
【0021】上記レジスタ本体10は、当該レジスタ本
体10への書込み信号が“0”から“1”に変化する時
(立上がりエッジ)に入力信号である設定データdを記
憶し、当該レジスタ本体10からの出力信号である出力
データcを上記設定データdに一致させる。この後は上
記設定データdが変化しても出力データcは変化しな
い。
【0022】その際、モードデータaは書込み機能を指
定する信号で、本実施例では、“1”にした場合にはセ
ットモードに、“0”にした場合にはリセットモードに
書込み機能を変化させるものとする。
【0023】上記書込み機能ロジック20は、データバ
スを通って伝送された機能データbと、出力データc、
及びモードデータaに基づいて、設定データdを生成す
る。
【0024】図1の(C)に示した真理値表から明らか
なように、機能データbが“0”の場合には、モードデ
ータaの状態に関わりなく出力データcと同じものが設
定データdとして出力される。即ち、この場合、レジス
タ本体10に書込み信号の立上がりエッジが入力されて
も出力データcは変化しないことになる。
【0025】また、機能データbが“1”の場合には、
出力データcに関わりなくモードデータaの内容が設定
データdとして出力される。即ち、モードデータaが
“1”ならば、設定データdも“1”になり、レジスタ
本体10に書込み信号の立上がりエッジが入力されれ
ば、出力データcは“1”になる。
【0026】また、モードデータaが“0”なら設定デ
ータdも“0”になり、レジスタ本体10に書込み信号
の立上がりエッジが入力されれば、出力データcは
“0”になる。
【0027】結局、機能データbが“0”のビットは変
化せず、機能データbが“1”のビットはモードデータ
aによってセットまたはリセットされる機能を持ったレ
ジスタとなる。
【0028】図2には、上記データバスを介して伝送さ
れた機能データbを“00001111”とした場合の
出力データcの変化を示す。即ち、モードデータaが
“1”のセットモードの場合には、“0101111
1”となり、モードデータaが“0”のリセットモード
の場合には、“01010000”となる。
【0029】以上のように、本実施例によれば、アクセ
スするアドレスを増やすことなく、必要最小限のビット
数でレジスタを制御できるようになる。従って、マルチ
タスクコンピュータシステムに於いても不具合が発生せ
ず、このようなコンピュータシステムに利用することが
できる。
【0030】次に、本発明の第2の実施例を説明する。
【0031】図3の(A)はその構成を示す図で、30
はレジスタ本体、40は書込み機能ロジックである。ま
た、書込み信号、モードデータa1,a2、及び機能デ
ータbは、タスク(CPU)によりそれぞれ発生され
る。
【0032】本実施例では、CPUからのデータバスは
αビット分のバス幅をもち、このデータバスを介して与
えられる書き込み機能を指定する信号の最上位の2ビッ
トがモードデータa1,a2に相当し、α−2ビット分
が各モード毎の各種機能を指定する機能データbに相当
する。
【0033】なお、同図中の[n]はバス内の何ビット
目の信号であるのかを表し、[n:m]はバス内のn〜
mビット目の連続した信号を表す記号であるものとす
る。
【0034】本実施例においては、回路構成は、前述し
た第1の実施例と書込み機能ロジックの内容が異なるの
みで他は変わらない。図3の(B)に、CPUからみた
このレジスタのビット構成を示す。
【0035】また、書込み機能ロジック40は、図4の
(A)に示すように、AND素子41,42,43と、
OR素子44と、NOT素子45,46とを結合して構
成されるもので、その真理値表は同図の(B)に示すよ
うになる。
【0036】このような構成に於いて、モードデータa
1,a2を<OP1,OP2>=<0,0>として書込
みを行うと、レジスタ本体30は通常のレジスタとして
機能する。即ち、“1”を書き込んだビットはセットさ
れ、“0”を書き込んだビットはリセットされる。
【0037】一方、上記モードデータa1,a2を<O
P1,OP2>=<0,1>として書込みを行うと、セ
ットレジスタとして機能する。即ち、“1”を書き込ん
だビットはセットされ、“0”を書き込んだビットは変
化しないとして機能する。
【0038】さらに、当該モードデータa1,a2を<
OP1,OP2>=<1,0>として書込みを行うと、
リセットレジスタとして機能する。即ち、“1”を書き
込んだビットはリセットされ、“0”を書き込んだビッ
トは変化しないとして機能する。
【0039】図5の(A)乃至(C)に各モード別にタ
スクにより指定した指定データから得られる出力データ
cの変化状態を示す。
【0040】即ち、同図の(A)に示すように、指定デ
ータが“0000001111”(つまり、モードデー
タa1,a2が<00>、機能データbが<00001
111>)であり、上記レジスタ本体30に“0101
0101”が格納されている場合には、モードデータa
1,a2が<00>であるので、通常のレジスタとして
機能し、入力した機能データbに対応する“00001
111”がレジスタ本体30にそのまま入力し、格納さ
れることになる。
【0041】また、同図の(B)に示すように、指定デ
ータが“0100001111”の場合には、上記レジ
スタ本体30に前述した場合と同様に“0101010
1”が格納されているとすれば、モードデータa1,a
2が<01>であるので、セットレジスタとして機能
し、機能データbが“0”のビットは変化せず、機能デ
ータbが“1”のビットのみが“1”にセットされるの
で、レジスタ本体30には、“01011111”が入
力し、格納されることになる。
【0042】また、同図の(C)に示すように、指定デ
ータが“1000001111”の場合には、上記レジ
スタ本体30に前述した場合と同様に“0101010
1”が格納されていれば、モードデータa1,a2は<
10>であるので、リセットレジスタとして機能し、
“01010000”がレジスタ本体30に入力し、格
納されることになる。
【0043】このように、本第2の実施例にあっては、
結局有効なビット数は2ビット減るものの、1つのアド
レスのみを持つレジスタで従来のレジスタの機能が全て
実現できることになる。
【0044】したがって、本実施例をマルチタスクコン
ピュータシステムに適用すれば、各タスクの性質に合わ
せて最良の書込みモードで、1回のレジスタアクセスの
みで、他のタスクに不具合を及ぼすことなく確実に、信
頼性良く各種機能を設定することができるようになる。
【0045】
【発明の効果】本発明によれば、アドレスを増やすこと
なく、1回の書込みのみで各種の機能を設定することが
できるようになる。したがって、マルチタスクコンピュ
ータシステムにおいても、確実に各種機能の設定をする
ことが可能となる。
【図面の簡単な説明】
【図1】(A)は第1の実施例のブロック構成図であ
り、(B)及び(C)はそれぞれ第1の実施例に於ける
書込み機能ロジックの回路構成図及び真理値表である。
【図2】第1の実施例に於けるレジスタ本体のデータ値
の変化状態を示す図である。
【図3】(A)は第2の実施例のブロック構成図であ
り、(B)は第2の実施例に於けるレジスタのビット構
成を示す図である。
【図4】(A)及び(B)はそれぞれ第2の実施例に於
ける書込み機能ロジックの回路構成図及び真理値表であ
る。
【図5】第2の実施例に於けるレジスタ本体のデータ値
の変化状態を示す図である。
【図6】(A)及び(B)はそれぞれ従来例を示す図で
ある。
【符号の説明】 10,30…レジスタ本体、 20,40…書込み機能
ロジック、 21,22,41,42,43…AND素
子、 23,44…OR素子、 24,45,46…N
OT素子、 a,a1,a2…モードデータ、 b…機
能データ、 c…出力データ、 d…設定データ。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 複数ビットのデータ値を格納しているレ
    ジスタおける各ビットのデータ値を受けるレジスタデー
    タ受信手段と、 前記レジスタの各ビットの書き換え選択をその各ビット
    状態により示す指示データを受ける指示データ受信手段
    と、 書き換えるべきビットデータ値を受ける書き換えデータ
    受信手段と、 前記指示データ受信手段により受けた指示データの各ビ
    ット状態により、前記レジスタデータ受信手段で受けた
    データ値と前記書き換えデータ受信手段で受けたビット
    データ値との一方を、対応するビットのデータ値として
    前記レジスタに優先的に与える制御回路手段と、 を具備することを特徴とするレジスタ制御装置。
JP9502093A 1993-03-31 1993-03-31 レジスタ制御装置 Pending JPH06290061A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9502093A JPH06290061A (ja) 1993-03-31 1993-03-31 レジスタ制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9502093A JPH06290061A (ja) 1993-03-31 1993-03-31 レジスタ制御装置

Publications (1)

Publication Number Publication Date
JPH06290061A true JPH06290061A (ja) 1994-10-18

Family

ID=14126377

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9502093A Pending JPH06290061A (ja) 1993-03-31 1993-03-31 レジスタ制御装置

Country Status (1)

Country Link
JP (1) JPH06290061A (ja)

Similar Documents

Publication Publication Date Title
JPH0612863A (ja) デュアルポートdram
JPS6376034A (ja) 多重アドレス空間制御方式
US4093986A (en) Address translation with storage protection
JPS6319058A (ja) メモリ装置
JPH06290061A (ja) レジスタ制御装置
JPH04162300A (ja) 半導体メモリ
JP2581057B2 (ja) 評価用マイクロコンピユ−タ
JP3597548B2 (ja) ディジタルシグナルプロセッサ
JPH05225361A (ja) レジスタ書換え方式
JPH0739086Y2 (ja) Fddコントロ−ル回路
JP2002341908A (ja) コントローラ
JPS6148174B2 (ja)
US5151980A (en) Buffer control circuit for data processor
JPS6232818B2 (ja)
JP2758745B2 (ja) 記憶回路
JPH11353170A (ja) フラッシュメモリ制御装置およびフラッシュメモリ制御装置のメモリアクセス方法
JPH0378845A (ja) 主記憶キー制御方式
JPH02206863A (ja) データメモリの書き込みデータ判別回路及びそれを備えたマイクロコンピュータ
JPH0221486A (ja) デュアルポートメモリ素子
JPH0512068A (ja) トレース及びメモリ制御回路
JPH05128013A (ja) パリテイ用メモリの内容表示方式
JPH05257698A (ja) 電子計算機
JPS60258654A (ja) 半導体記憶装置
JPH05298089A (ja) レジスタ
JPH044451A (ja) コンピュータシステム