JPH05225118A - レジスタ回路 - Google Patents

レジスタ回路

Info

Publication number
JPH05225118A
JPH05225118A JP22325191A JP22325191A JPH05225118A JP H05225118 A JPH05225118 A JP H05225118A JP 22325191 A JP22325191 A JP 22325191A JP 22325191 A JP22325191 A JP 22325191A JP H05225118 A JPH05225118 A JP H05225118A
Authority
JP
Japan
Prior art keywords
data
register
block
transfer
flop
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.)
Granted
Application number
JP22325191A
Other languages
English (en)
Other versions
JP2993206B2 (ja
Inventor
Takayoshi Sasaki
隆義 佐々木
Katsumi Miura
勝巳 三浦
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP22325191A priority Critical patent/JP2993206B2/ja
Publication of JPH05225118A publication Critical patent/JPH05225118A/ja
Application granted granted Critical
Publication of JP2993206B2 publication Critical patent/JP2993206B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】第1レジスタの内容を第2レジスタに1クロッ
クでコピーできるレジスタ回路を提供することにある。 【構成】第2レジスタ1005のフリップフロップ10
08の入出力端子N5と電源との間に第1および第2の
トランジスタQ5,Q6を直列に接続し、第1のトラン
ジスタQ5には第1レジスタ1001のフリップフロッ
プ1004のストアデータを、第2のトランジスタQ6
にはコピー信号CPEをそれぞれ供給する。コピー信号
CPEがアクティブとなることによりトランジスタQ6
が導通し、第1レジスタ1001の内容は第2レジスタ
にコピーされる。

Description

【発明の詳細な説明】
【産業上の利用分野】本発明はデータを一時保持するレ
ジスタ回路に関し、特にマイクロコンピュータやDMA
コントローラのようなマイクロコントローラに使用され
るレジスタ回路に関する。
【従来の技術】データやステータス情報や制御情報の蓄
積手段としてレジスタ回路はマイクロコントローラにお
いて多用されている。レジスタ回路の各ビットはSRA
Mのメモリセルと同一の構成であり、情報を保持するフ
リップフロップおよびその入出力端子とデータ入出力ラ
インとの間に接続されゲートに選択信号を受けるトラン
スファゲートとを有する。選択信号がアクティブとなる
とフリップフロップの入出力端子とデータ入出力ライン
とが接続される。データを書き込むときは、書き込むべ
きデータに応じて入出力ラインが駆動される。一方、デ
ータを読み出すときはフリップフロップのストアデータ
に応じて現われる入出力ラインのレベルを検出する。マ
イクロコントローラにおけるレジスタの数は比較的少な
いので、同一のレジスタが様々な処理で共用される。通
常は処理の内容の変更にもとづきレジスタ内の古いデー
タが破壊されても良いように構築される。しかしなが
ら、時には前の処理で用いたデータを再度使用しなけれ
ばならないこともある。そのような場合は、処理の切替
りに応じて前の処理のデータを別のレジスタにセーブし
ている。あるいは、コントロールレジスタを考えると、
現在の処理形態や状態を変更するために別のレジスタの
内容を新たな処理形態情報としてコントロールレジスタ
にストアすることが要求される。
【発明が解決しようとする課題】このように、あるレジ
スタの内容を別のレジスタにセーブあるいは転送するこ
とが要求されることがあるが、そのためにはまずセーブ
あるいは転送すべきデータを保持しているレジスタから
当該データを読み出し、そして読み出したデータを別の
レジスタに書き込む必要がある。すなわち、あるレジス
タからのデータ読み出しサイクルと別のレジスタへのデ
ータ書き込みサイクルとを起動しなければならない。こ
のようなサイクルはマイクロコントローラではバスサイ
クルと称されているが、バスサイクルを実行するには数
クロック要する。すなわち、データを単にセーブあるい
は転送するだけであるのに数クロックの時間が要求され
る。近年のマイクロコントローラは1クロックでも処理
時間の短縮化が要求されている。したがって、本発明の
目的は、あるレジスタから別のレジスタへのデータ転送
を短時間で実行できるレジスタ回路を提供することにあ
る。本発明の他の目的はあるレジスタの内容を別のレジ
スタに1クロックでコピーすることができるレジスタ回
路を提供することにある。本発明のさらに他の目的はバ
スサイクルを用いることなくレジスタ−レジスタ間デー
タ転送を可能としたレジスタ回路を提供することにあ
る。
【課題を解決するための手段】本発明によるレジスタ回
路は、入出力データラインと、データを保持する第1の
フリップフロップおよびこのフリップフロップの入出力
端子と上記入出力データラインとの間に設けられ両者間
を第1の選択信号に応答して接続する第1のトランスフ
ァゲートを有する第1のレジスタと、データを保持する
第2のフリップフロップおよびこのフリップフロップの
入出力端子と上記入出力データラインとの間に設けられ
第2の選択信号に応答して両者間を接続する第2のトラ
ンスファゲートを有する第2のレジスタと、上記第2の
テリップフロップの入出力端子と電源端子との間に直列
接続され一方に上記第1のフリップフロップの保持デー
タが他方にコピー信号がそれぞれ供給され第1および第
2のトランジスタを有し、上記コピー信号のアクティブ
に応答して上記第1のフリップフロップの保持データを
上記第2のフリップフロップにコピーするコピー制御回
路とを備えている。したがって、第1のレジスタの保持
データを第2のレジスタのコピーとするとき、上記コピ
ー信号をアクティブにするだけでよい。すなわち、バス
サイクルを起動することなく1クロックで第1のレジス
タの内容を第2のレジスタに転送することができる。
【実施例】以下、実施例につき図面を参照して詳述す
る。図1は本発明の一実施例によるレジスタ回路の回路
図である。本レジスタ回路1000は、第1のレジスタ
1001および第2のレジスタ1005を有し、そして
本発明に従ってコピー制御回路1010をさらに有す
る。各レジスタは本実施例では8ビット構成であるが、
図には最下位ビット(LSB)と最上位ビット(MS
B)のみ示されている。各ビットの構成は同一であるの
で、LSBについてのみ説明する。レジスタ1001の
LSBは、二つのインバータ1002,1003で構成
されるフリップフロップ1004、このフリップフロッ
プ1004の一方の入出力端子N1とLSBのための一
方のデータ入出力ライン1031との間に接続されたN
チャンネルMOSトランジスタQ1、およびフリップフ
ロップ1004の他方の入出力端子N2とLSBのため
の他方のデータ入出力ライン1032との間に接続され
たNチャンネルMOSトランジスタQ2を有する。トラ
ンジスタQ1,Q2はトランスファゲートとしてそのゲ
ートには第1レジスタ1001に対する選択信号RSE
1が供給されている。第2レシズタ1005のLSBも
同様の構成であり、二つのインバータ1006,100
7でなるトリップフロップ1008、その一方の入出力
端子N5とデータ入出力ライン1031との間に接続さ
れたNチャンネルMOSトランジスタQ3、およびフリ
ップフロップ1008の他方の入出力端子N6とデータ
入出力ライン1032との間に接続されたNチャンネル
MOSトランジスタQ4を有する。トランジスタQ3,
Q4のゲートには第2レジスタ1005に対する選択信
号RSE2が供給されている。各インバータ1002,
1003,1006,1007はCMOSインバータで
ある。コピー制御回路1010におけるLSBのための
回路は4つのNチャンネルMOSトランジスタQ5−Q
8でなる。トランジスタQ5,Q6は第2レジスタ10
05のフリップフロップ1008の一方の入出力端子N
5と接地端子との間に直列接続され、トランジスタQ
7,Q8はフリップフロップ1008の他方の入出力端
子N6と接地端子との間に直列接続されている。トラン
ジスタQ5およびQ7のゲートは第1レジスタ1001
のフレップフロップ1004の入出力端子N2およびN
1にそれぞれ接続されている。トランジスタQ6,Q8
のゲートにはコピーイネーブル信号CPEが供給され
る。トランジスタQ5,Q6はインバータ1007より
も高い駆動能力を有し、トランジスタQ7,Q8はイン
バータ1006よりも高い駆動能力を有する。データ入
出力ライン1031,1032は他のデータ入出力ライ
ンとともにデータリード/ライト回路1015に接続さ
れている。この回路1015は8ビットのデータバス1
020にさらに接続されている。データリード/ライト
回路1015はリードイネーブル信号REおよびライト
イネーブル信号WEによりその動作が制御される。信号
RSE1,RSE2,CPE,REおよびWEは図示し
ないCPU等のコントローラによって発生される。動作
において、例えば第1レジスタ1001にデータを書き
込むときは、書き込むべきデータがデータバス1020
に転送された状態で信号RSE1およびWEがアクティ
ブハイレベルとなる。信号WEに応答してデータリード
/ライト回路1015は書き込むべきデータの真補のレ
ベルをもってデータ入出力ライン1031,1032を
駆動する。例えば、データ“0”を書き込むときは、ラ
イン1031を接地レベルにし、ライン1032をVc
cレベルにする。一方、信号RSE1によりトランジス
タQ1,Q2はオン状態となる。その結果、フリップフ
ロップ1004にデータ“0”がストアされる。第2レ
ジスタ1002からデータを読み出すときは、信号RS
E2およびREがアクティブハイレベルとなる。トラン
ジスタQ3,Q4がオンするので、フリップフロップ1
008がストアしているデータの真補のレベルがデータ
入出力ライン1031,1032に現われる。例えば、
データ“1”をストアしているとすると、データライン
1031はVccレベルに、1032はグランドレベル
となる。データリード/ライト回路1015はリードモ
ードとなり、ライン1031,1032のレベルを検出
して、データバス1020の対応するビット(LSB)
にデータ“1”を出力する。そして、第1レジスタ10
01の内容を第2レジスタ1005にコピーもしくはセ
ーブするときは、コピーイネーブル信号CPEがアクテ
ィブハイレベルとなる。トランジスタQ6,Q8はそれ
によってオンとなる。一方、トランジスタQ5,Q7は
第1レジスタ1001のフリップフロップのストアデー
タに応じて一方がオン、他方はオフ状態となっている。
例えばデータ“0”がストアされているとすると、トラ
ンジスタQ5はオンとなり、Q7はオフとなっている。
前述のように、トランジスタQ5,Q6はインバータ1
007よりも高い駆動能力を有し、トランジスタQ7,
Q8はインバータ1006より高い駆動能力を有してい
る。したがって、第2レジスタ1005のストアデータ
にかかわらず、フリップフロップ1008の一方の入出
力端子N5はグランドレベルに駆動され、他方の入出力
端子N6はVccレベルに駆動される。すなわち、フリ
ップフロップ1008にはデータ“0”がストアされた
ことになる。このように、コピーイネーブル信号CPE
をアクティブハイレベルにするだけ、第1レジスタ10
01の内容が第2レジスタ1005にコピーされる。図
示しないコントローラは、動作クロックに同期して各種
信号RSE1〜WEを発生するので、データリード/ラ
イトバスサイクルを起動することなく、1クロックで第
1レジスタ1001の内容が第2レジスタ1005にコ
ピーされる。図2を参照すると、本発明の他の実施例に
よるレジスタ回路1000が示されている。図1と同一
構成素子は同じ番号で示してその説明は省略する。本実
施例では、図1のNチャンネルMOSトランジスタQ
5,Q6,Q7,Q8がPチャンネルMOSトランジス
タQ15,Q16,Q17,Q18にそれぞれ置き換え
られている。トランジスタQ15,Q17はそれ故Vc
c電源端子に接続されている。また、インバータ104
0が設けられ、コピーイネーブル信号CPEの反転信号
をトランジスタQ16,Q18のゲートに供給してい
る。トランジスタQ15,Q16はインバータ1007
よりも高い駆動能力を有し、Q17,Q18はインバー
タ1006よりも高い駆動能力を有する。コピーイネー
ブル信号CPEがアクティブハイレベルになると(した
がって、反転信号はアクティブロウレベルとなる)、ト
ランジスタQ16,Q18はオン状態となる。第1レジ
スタ1001のフリップフロップ1004がデータ
“0”を記憶しているとすると、トランジスタQ5はオ
フであり、Q7はオンである。したがって、第2レジス
タ1005のフリップフロップ1008の入出力端子N
6はVccレベルに駆動され、フリップフロップ100
8はデータ“0”をストアすることになる。かくして、
第1レジスタ1001の内容が第2レジスタ1005に
コピーされるる上述したこの実施例は二つのレジスタ1
001,1005で示したが、三つ以上のレジスタを含
む場合も同様に実施できる。例えば、第3レジスタを設
け、同レジスタと第2レジスタ1005との間にコピー
制御回路1010と同一構成の第2コピー制御回路を設
ける。かくすれば、第2レジスタ1005の内容を第3
レジスタにまずコピーし、その後第1レジスタの内容を
第2レジスタにコピーすることができる。次に本発明の
応用例について説明する。図3は図1又は図2のレジス
タ回路をマイクロコンピュータに内蔵されたDMAコン
トローラに用いた場合のシステムプロックである。高機
能化,高速化の要求に伴ない近年のマイクロコンピュー
タは割込みコントローラ,タイマ,カウンタ,シリアル
データ通信装置等の様々な周辺ユニットを内蔵してい
る。このような周辺ユニットとメモリとの間でデータ転
送が必要となるが、かかるデータ転送を中央処理装置
(CPU)によりソフトウェア(プログラム)の介在で
実行するとデータ処理効率が低下する。そこで、周辺ユ
ニットとメモリとの間のデータ転送をCPUの代わりに
DMAコントローラで実行させることが一般的であるる
DMAコントローラは、アクセスすべきメモリのアドレ
ス情報をストアするアドレスレジスタ、転送すべきデー
タ数をストアするターミナルカウンタレジスタ、および
データ転送方向をメモリアドレスの更新方向等の制御デ
ータをストアする制御レジスタを有し、これらレジスタ
にはCPUにより必要な情報が初期設定される。周辺ユ
ニットがDMAコントローラに対しデータ転送を要求す
ると、DMAコントローラはCPUからバスの使用権を
得て周辺ユニットとメモリとの間でデータ転送を実行す
る。データ転送が終了するとDMAコントローラはバス
使用権をCPUに渡し次のデータ転送要求の待ち状態と
なる。かくして転送されたデータ数がターミナルカウン
タレジスタに設定されたデータ数に達すると、DMAコ
ントローラはCPUに対し割込み要求を発行する。同要
求にもとづきCPUは割込み処理ルーチンを実行し、上
記レジスタに対し必要な情報を再設定し、次のデータ転
送を許可状態とする。DMAコントローラは、CPUに
対して割込み要求を発行した時点から次のデータ転送に
必要な情報が再設定される時点までの期間はデータ転送
禁止状態となるが、この禁止期間に周辺ユニットがデー
タ転送要求を発行する場合がある。かかる要求は受け付
けられず保留される。データ転送禁止期間の長さはDM
Aコントローラからの割込み要求の優先順位や同コント
ローラがサポートする転送チャンネル数に依存している
が、データ転送禁止期間が長いとデータ転送要求が保留
されている周辺回路がその保留期間に再度データ転送要
求を発行する状態となり得る。例えばシリアルデータ受
信装置では、所定ビット数のデータを受信する毎にデー
タ転送要求を発行するが、前のデータがメモリに転送さ
れないうちに次のデータの受信が完了すると前のデータ
は破壊されてしまい受信オーバーランエラーが発生す
る。他の例としてシリアルデータ受信装置では、次に送
信すべきデータが転送されずに送信アンダーランエラー
が発生する。受信オーバーランエラーや送信アンダーラ
ンエラーはシリアル回線が高速になるほど発生しやすく
なる。受信/送信データバッファの段数を増加しても、
その段数以上にデータ転送が保留されるとやはりエラー
が生じるし、高速なシリアル回線に見合うように十分に
バッファ段数を増加するとハードウェアの増大をもたら
す。図3に示したマイクロコンピュータ100は上述し
たような問題点を解決し得るDMAコントローラを備え
ている。すなわち、本マイクロコンピュータ100はC
PU10と周辺ユニットとしてのDMAコントローラ
(DMAC)20,割込みコントローラ(INTC)3
0,シリアルデータ受信ユニツト40およびタイマ,カ
ウンタ等の他のユニツト50を有する。これらは同一の
半導体基板上に構成され内部バス60で相互接続されて
いる。CPU10はシステムバス130を介して接続さ
れたプログラムメモリ110から命令をフェッチして実
行しオペランドデータに対する処理を行う。システムバ
ス130にはデータメモリ120も接続されている。I
NTC30はDMAC20および周辺ユニット50から
の割込み要求信号23、51を含む複数の割込み要求信
号を受け、二つ以上の割込み要求が同時に発生した場合
は予じめ定められた優先順位に従ってそのうちの一つを
選択し、CPU10に対し割込み処理要求信号31を発
生するとともに割込みベクタ番号32を供給する。かか
る割込み処理要求にもとづきCPU10は実行中のプロ
グラム処理を一時中断し、そのときのプログラムカウン
タ,プログラムステータスワード,汎用レジスタ(すべ
て図示せず)をセーブして割込み処理ルーチンを実行す
る。シリアルデータ受信ユニット40は、外部からシリ
アル回線150を介して供給されるシリアルデータを受
信する。シリアルデータはシフトレジスタ405に順に
取り込まれる。所定ビット数(例えば、8ビット)のデ
ータを受信すると、同データはバッファレジスタ404
に転送され、シフトレジスタ405は次のシリアルデー
タの受信に入る。バッファレジスタ404にデータが転
送されると、同データはバッファレジスタ404に転送
され、シフトレジスタ405は次のシリアルデータの受
信に入る。バッファレジスタ404にデータが転送され
ると、受信制御部401はDMA転送要求信号42をア
クティブにしDMA20にデータ転送を要求する。バッ
ファレジスタ404に転送されたデータが、シリアルデ
ータ転送の1フレームの終了を示すEOP(End O
f Flame)コードのときは、ブロック切換信号4
1をアクティブにしてDMAC20にブロック切換を要
求する。EOFコードを受信したことや受信データにエ
ラーが発生したことはステータスレジスタ402に記録
される。受信制御部401はDMAC20からのデータ
出力指示信号25に同期してバッファレジスタ404の
内容を内部バス60に出力する。また、DMAC20か
らのステータスセーブ指示信号24に応答してステータ
スレジスタ402内の内容をステータスセーブレジスタ
403にセーブする。かかるレジスタ402、403の
レジスタ回路に図1又は図2の構成が使用されている。
DMAC20は転送制御部201を有する。この制御部
201は演算器2011を含む。転送同制御部201は
レジスタ202−1,−2,−3からなるカレントレジ
スタブロック202にストアされている制御情報にもと
づき、ユニット40とメモリ120間のDMAデータ転
送を実行する。レジスタブロック202のレジスタ20
2−1はデータの転送回数を示す転送回数情報を、レジ
スタ202−2はメモリ120のアクセスアドレスを示
すメモリアドレス情報を、そしてレジスタ202−3は
制御/状態情報をそれぞれストアする。制御/状態情報
には、DMAデータ転送の方向(すなわち、メモリから
周辺ユニットあるいは周辺ユニットからメモリ、本実施
例ではシリアル受信ユニット40からメモリ120への
転送)、メモリアドレスの更新方向、DMA転送要求を
受け付けてよいかどうかを示す転送要求受付許可情報を
有し、さらに、DMA転送を次のブロックへ続けて実行
してよいかどうかを示すブロック継続指示情報を含んで
いる。DMAC20はさらにレジスタ203−1,−
2,−3からなるソクストレジスタブロック203、レ
ジスタ204−1,−2からなるセーブレジスタブロッ
ク204、およびレジスタ201−1,−3と同じ情報
をストアするレジスタ205−1,−3を有する。ネク
ストレジスタブロック203のレジスタ203−1,−
2,−3は、現在のDMA転送の終了後に次に実行すべ
きDMA転送に必要な情報、すなわち、次のDMA転送
の転送回数情報、メモリアドレス情報および制御/状態
情報をそれぞれストアしている。セーブレジスタブロッ
ク204のレジスタ204−1,−2はレジスタ205
−1,−3の内容、すなわちカレントレジスタブロツク
202の転送回数情報と制御/状態情報とをセーブす
る。図示のように対をなすレジスタ202−1と203
−1、202−2と203−2、202−3と203−
3、205−1と204−1、205−3と204−2
に、図1又は図2の構成が用いられている。転送制御部
201はCPU10に対してホールド要求(HLDR
Q)信号21を出力しCPU10からホールドアクノレ
ッジ(HLDACK)信号22を受けてバス60、13
0の使用権を得、シリアル受信ユニット40からメモリ
120へデータ転送を実行する。データ転送を実行する
毎にカレントレジスタ202−1の転送回数は演算器2
011により1減算される、その結果がレジスタ202
−1,205−1の両方にストアされる。さらにメモリ
アドレスレジスタ202−2のアドレスも同様にして更
新される。転送回数が0となる、すなわち転送したデー
タ数が現在のDMA転送により指定されたデータ数に達
するか又はユニット40からFOFコード受信にもとづ
くブロックの切換要求信号41がアクティブとなると、
転送制御部201はセーブレジスタに対するコピーイネ
ーブル信号を出力してレジスタ205の内容、すなわち
カレントレジスタブロック202の転送回数情報と制御
/状態情報をセーブレジスタブロック204にセーブさ
せる。そして、セーブした制御/状態情報に含まれるブ
ロック継続指示情報が「継続」を指示しているときは、
ネクストレジスタに対するコピーイネーブル信号を出力
してネクストレジスタブロック203の内容をカレント
レジスタブロック202にそれぞれコピーさせ、そして
割込み要求信号23を発生する。ブロック継続指示情報
が「非継続」を指示しているときは、ネクストレジスタ
ブロック203からカレントレジスタブロック232へ
のコピーが行われることなく割込み要求信号23が発生
される。データメモリ120はCPU10によって処理
されるべきおよび処理されたオペランドデータをストア
するが、さらに、シリアルデータ受信ユニット40によ
って受信されたデータが転送されるべきN個のブロック
122,124,…,126を有する。これらブロック
の夫々に対応してブロック制御データエリア123,1
25,…,127が設けられている。ブロック制御デー
タエリアの夫々は、対応するブロックのサイズを示す転
送回数データエリアと、対応するブロックの先頭アドレ
スを示すメモリアドレスデータエリアと、対応するデロ
ックと受信ユニット40間のDMA転送における制御/
状態データエリアと、受信ユニット40のステータスセ
ーブレジスタ403の内容が転送されるべき周辺状態セ
ーブデータエリア、他のブロックのための制御データエ
リアの先頭アドレスをストアするネクストアドレスデー
タエリアとを有する。データメモリ120はさらに制御
データエリアアドレスをストア領域121を有する。以
下、図4および図5に示した動作フローも参照して本マ
イクロコンピュータ100の具体的動作を詳述する。C
PUはDMAC20を起動する前に初期設定を行な4。
すなわち、第1乃至第Nブロック122,124,…,
126をデータメモリ120に割り当て、対応するブロ
ック制御データエリア123,125,…,127に前
述したデータを書き込む。なお、第1乃至第(N−1)
ブロック制御データエリアのDMA制御/状態データに
おけるブロック継続指示情報は「継続」を指示し、第N
ブロック制御データエリアのそれは「非継続」を指示し
ているとする。また、第1ブロク制御データエリアのネ
クストアドレスデータには第2ブロック制御データエリ
アの先頭番地が、第2ブロック制御データエリアのそれ
には第3ブロック制御データエリアの先頭番地が、そし
て第(N−1)ブロック制御データエリアのそれには第
Nブロック制御データエリアの先頭番地が設定されると
する。制御データエリアアドレス121は第1ブロック
制御データエリア123の先頭番地が設定される。CP
U40はまたシリアルデータ受信ユニット40にシリア
ルデータ受信に必要な情報、例えばシリアル回線150
のスピードを設定しシリアル受信を許可する。そして、
DMAC20のネクストレジスタブロック203に第2
ブロック制御データエリア125の転送回数データ,メ
モリアドレスデータ,DMA制御/状態データを設定
し、カレントレジスタブロック202に第1ブロック制
御データエリア123の転送回数データ,メモリアドレ
スデータ,DMA制御/状態データを設定してDMAC
20を起動する。レジスタ205にも対応する情報を設
定する。CPU10はひき続きプログラムメモリ10か
ら命令をフェッチし実行する。一方、起動されたDMA
C20は図4に示した動作フローに従って動作する。す
なわち、シリアルデータ受信ユニット40からのEOF
コード受信にともなうブロック切換要求信号41がアク
ティブかどうか調べ(251)、データ転送要求信号4
2がアクティブかどうか調べる(252)。シリアルデ
ータ受信ユニット40も起動されており、シリアル回線
150を介して送信されるシリアルデータを受信してい
る。所定ビット数のデータを受信すると、そのデータが
EOFコードか通常のデータかを調べ、信号41か又は
42を発生する。シリアルデータ受信ユニット40がデ
ータ転送要求信号42を発生したとすると、転送制御部
201はHLDRQ信号21をアクティブにしてバス6
0、130の使用権をCPU10に要求する(25
3)。CPU10は実行中のプログラム処理を一時中断
し内部をホールド状態としてHLDACK信号22をD
MAC20に返す。転送制御部201はアクティブレベ
ルのHLDACK信号22を検出すると(254)、カ
レントレジスタブロック202のメモリアドレスをバス
60、130を介してデータメモリ120に供給すると
ともにデータ出力指示信号25を発生してシリアルデー
タ受信ユニット40に受信データをバス60に出力せし
める。かくして、受信データはメモリ120内の第1ブ
ロック122の先頭アドレスに転送される(255)。
転送後、HLDRQ信号21を取下げバス使用権をCP
U10に戻す。転送制御部201はカレントレジスタブ
ロック202のメモリアドレスを更新して書き戻し、転
送回数データから1つ減算して書き戻す(257)。所
望なら更新されたアドレスを第1ブロック122のアク
セスアドレスとしてもよい。転送制御部201は減算し
た転送回数が零かどうか判定し(258)、零でなけれ
ばステップ251に戻る。かかる処理はデータ転送要求
信号42がアクティブになる毎に実行される。ブロック
切換要求信号41が発生されるか又は転送回数が零な
る、すなわち、第1ブロック122が受信データで満た
されると、ステップ259に処理が移る。すなわち、コ
ピーイネーブル信号が出力され、レジスタ205の内
容、すなわちカレントレジスタブロック202の転送回
数情報と制御/状態情報とがセーブレジスタブロック2
04にセーブされる。転送制御部201はセーブされた
制御/状態情報の中のブロック継続指示情報を判定する
(260)。本説明では同情報は「継続」を指示しいて
るので、ステップ261に移り、コピーイネーブル信号
を出力してネクストレジスタブロック203の内容をカ
レントレジスタブロック202にコピーする。かくし
て、DMAC20は、CPU10による再設定を待つこ
となく、シリアルデータ受信ユニット40とメモリ12
0の第2ブロック124とのDMA転送を実行できる状
態となる。転送制御部201はこの後、周辺セーブ信号
24と割込み要求信号23を発生し、ステップ251に
移行する。したがって、この後、シリアルデータ受信ユ
ニット40がデータ転送要求信号42を発生すると、受
信データは第2ブロック124に転送されることにな
る。一方、周辺セーブ信号24に応答して受信制御部4
01はコピーイネーブル信号を出力してステータスレジ
スタ402の内容をステータスセーブレジスタ403に
セーブする。INTC30はDMAC20からの割込み
要求信号23に応対してCPU10に割込み処理要求を
発生する。CPU10は同要求にもとづきプログラム実
行を中断し、中断したプログラム実行の再開に必要な情
報をデータメモリ120のスタック領域(図示せず)に
退避させ、図5の割込み処理ルーチンを実行する。この
割込み処理ルーチンにおいて、CPU10はまず受信ユ
ニット40内のステータスセーブレジスタ132からセ
ーブされたステータス情報を読込み(301)、受信デ
ータや受信状態にエラーが発生しているかどうかをチェ
ックする(302)。エラーが発生しておれば、エラー
処理303として、DMAC20およびデータ受信ユニ
ット40の動作を止め、シリアルデータの送信元にデー
タの再送信を要求するとともにDMAC20,ユニット
40の再設定を行なう。エラー発生がなければ、ステー
タスセーブレジスタ403の内容を第1ブロック制御デ
ータエリア123の周辺状態セーブデータエリアに転送
し、DMA20のレジスタ204−1,−2でなるセー
ブレジスタブロック204の内容を同エリア123の転
送回数データエリアおよびDMA制御/状態データエリ
アに転送する(304)。この処理のために、制御デー
タエリアアドレス121としてデータエリア123の先
頭アドレスがストアされており、同アドレスと各ブロッ
クにおける各データエリアの予じめ定まったオフセット
量とから各データエリアのアドレスが算出される。勿
論、DMAC20および受信ユニット40内の各レジス
タのアドレスは予じめ定まっている。そして、第1ブロ
ック制御データエリア123のネクストアドレスデー
タ、すなわち第2ブロック制御データエリアの先頭アド
レスが制御データエリアアドレス121として設定され
る。次に、第1ブロック制御データエリア123にセー
ブされたDMA制御/状態データのブロック継続指示情
報を判定する(305)。本説明では同情報は「継続」
を指示しているので、新たに設定された制御データエリ
アアドレス121と第2ブロック制御データエリア12
5内のネクストアドレスデータとを利用して、第3ブロ
ック制御データエリア(図示せず)内の転送回数デー
タ,メモリアドレスデータおよびDMA制御/状態デー
タをDMAC20のネクストレジスタブロック203に
転送する(306)。図4に戻って、ステップ260で
ブロック継続指示情報が「非継続」を指示しているとき
は、転送制御部201はネクストレジスタブロック20
3の内容をカレントレジスタ202にコピーすることな
く信号24と23を発生し、DMAC20はCPU10
にはデータ再設定の待ち状態となりDMA転送禁止状態
となる。したがって、図5に示したCPUの割込み処理
ルーチンでは、ステップ305の次はステップ307に
移り、第2および第3ブロック制御データエリア内の転
送回数データ,メモリアドレスデータおよびDMA制御
/状態データがカレントレジスタブロック202および
ネクストレジスタブロック203にそれぞれ転送され、
DMAC20が再起動される。ステップ306又は30
7の実行後、CPU10は第1ブロック122に転送さ
れたデータに対する処理を実行する(308)。実行
後、データメモリ120から退避しておいた情報を復帰
し、中断されていたプログラムを再開する。各ブロック
制御データエリアにはセーブレジスタブロック204の
転送回数情報も転送されるので、上述したブロック切換
がFOEコードの受信によるブロック切換要求信号41
により実行された場合でも、各ブロックにいくつかのデ
ータが転送されているのか判定できる。このように、ブ
ロック継続指示情報を「継続」にしておけば、所定数の
データが転送されるか又はFOEコードが受信されて
も、DMAC20は次のブロックへのデータ転送許可状
態となるので、受信オーバーランエラーが発生すること
を防止できる。本マイクロコンピュータ100がシリア
ルデータ送信ユニットも内蔵するときは、同ユニットの
ためのカレントレジスタブロック,ネクストレジスタブ
ロックおよびセーブレジスタブロックをDMAC20内
にさらに用意し、送信ユニットと受信ユニットのための
データ転送を時分割的に実行することにより受信オーバ
ーランエラーおよび送信アンダーランエラーの両方とも
防止できる。図3において、カレント転送回数レジスタ
202−1とセーブ転送回数レジスタ204−1との
間、およびカレント制御/状態レジスタ202−3とセ
ーブ制御/状態レジスタ204との間に、それぞれコピ
ー制御回路1005(図1,図2)を設けることによ
り、レジスタ205−1,205−2を削除することが
できる。
【発明の効果】以上のとおり、本発明によれば一つのレ
ジスタの内容を1クロックで他のレジタにコピーできる
レジスタ回路が提供される。
【図面の簡単な説明】
【図1】本発明の一実施例を示す回路図である。
【図2】本発明の他の実施例を示す回路図である。
【図3】本発明によるレジスタ回路のマイクロコンピュ
ータへの適用例を示すブロック図である。
【図4】図3のDMAコントローラの動作を示すフロー
チャートである。
【図5】図4のCPUの割込み処理を示すフローチャー
トである。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 入出力データラインと、第1のフリップ
    フロップおよびこのフリップフロップの入出力端子と前
    記入出力データラインとの間に設けられ両者間を第1の
    選択信号に応答して接続する第1のトランスファゲート
    を有する第1レジスタと、第2のフリップフロップおよ
    びこのフリップフロップの入出力端子と前記入出力デー
    タラインとの間に設けられ両者間を第2の選択信号に応
    答して接続する第2のトランスファゲートを有する第2
    レジスタと、前記第2のフリップフロップの入出力端子
    と電源端子との間に直列に接続され一方に前記第1のフ
    リップフロップのストアデータが他方にコピー信号がそ
    れぞれ供給される第1および第2のトランジスタを有す
    るコピー制御回路とを備えることを特徴とするレジスタ
    回路。
JP22325191A 1990-09-07 1991-09-04 レジスタ回路 Expired - Fee Related JP2993206B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22325191A JP2993206B2 (ja) 1990-09-07 1991-09-04 レジスタ回路

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP23741890 1990-09-07
JP2-237418 1990-09-07
JP22325191A JP2993206B2 (ja) 1990-09-07 1991-09-04 レジスタ回路

Publications (2)

Publication Number Publication Date
JPH05225118A true JPH05225118A (ja) 1993-09-03
JP2993206B2 JP2993206B2 (ja) 1999-12-20

Family

ID=26525356

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22325191A Expired - Fee Related JP2993206B2 (ja) 1990-09-07 1991-09-04 レジスタ回路

Country Status (1)

Country Link
JP (1) JP2993206B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001026648A1 (fr) * 1999-10-13 2001-04-19 Senju Pharmaceutical Co., Ltd. Preparation d'adhesif a usage ophtalmique pour l'absorption par voie percutanee
JP2010268918A (ja) * 2009-05-20 2010-12-02 Daiichi Shokai Co Ltd パチンコ遊技機
JP2014110901A (ja) * 2013-09-26 2014-06-19 Daiichi Shokai Co Ltd パチンコ遊技機

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63136395A (ja) * 1986-11-28 1988-06-08 Hitachi Ltd 半導体記憶装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63136395A (ja) * 1986-11-28 1988-06-08 Hitachi Ltd 半導体記憶装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001026648A1 (fr) * 1999-10-13 2001-04-19 Senju Pharmaceutical Co., Ltd. Preparation d'adhesif a usage ophtalmique pour l'absorption par voie percutanee
JP2010268918A (ja) * 2009-05-20 2010-12-02 Daiichi Shokai Co Ltd パチンコ遊技機
JP2014110901A (ja) * 2013-09-26 2014-06-19 Daiichi Shokai Co Ltd パチンコ遊技機

Also Published As

Publication number Publication date
JP2993206B2 (ja) 1999-12-20

Similar Documents

Publication Publication Date Title
US5245575A (en) Register circuit for copying contents of one register into another register
US7096296B2 (en) Supercharge message exchanger
JPH04230551A (ja) 階層集積回路キャッシュメモリ
GB1588929A (en) Priority vectored interrupt using direct memory access
JPH0258649B2 (ja)
US5345564A (en) Serial communication peripheral integrated electronic circuit that recognizes its unique address before the entire circuit is enabled
US4344130A (en) Apparatus to execute DMA transfer between computing devices using a block move instruction
JP2993206B2 (ja) レジスタ回路
EP0285634B1 (en) Method to execute two instruction sequences in an order determined in advance
JPH0764957A (ja) タイマ装置
JPS62154032A (ja) インストラクシヨンカツシユメモリ
US4985826A (en) Method and device to execute two instruction sequences in an order determined in advance
US20030200401A1 (en) Microcomputer system automatically backing-up data written in storage medium in transceiver, and transceiver connected thereto
JPS6290728A (ja) 割込処理方法
JP3162459B2 (ja) データ処理装置
JPH0115900B2 (ja)
JP2847729B2 (ja) 情報処理装置
JPS62115553A (ja) バッファストレイジ無効化処理方式
JP2594140B2 (ja) データ駆動型データ処理装置
JPH1091571A (ja) Dmaコントローラのチェーン外れ検出方法及びdmaコントローラ
JP2635863B2 (ja) 中央処理装置
JPH0212358A (ja) データ転送方式
JPH096750A (ja) 端子状態制御回路、及びマイクロコンピュータ
JPS60142450A (ja) 記憶システム
JPH05189089A (ja) データ処理システム

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19990921

LAPS Cancellation because of no payment of annual fees