(57)【要約】      （修正有）【課題】高性能レジスタアクセスを提供する。【解決手段】ＣＰＵまたはＭＰＵとレジスタ・ブロックとの間の通信においてバス・クロックの使用が省かれる。レジスタ・ブロックは書き込み要求入力および読み取り要求入力双方を有し、各々別個に作動され書き込み操作または読み取り操作を開始させる。ＣＰＵ／ＭＰＵは読み取り要求入力をネゲートしたまま書き込み要求入力を作動させることにより書き込み操作を開始する。レジスタ・ブロックはその書き込み要求入力の作動化に応答し、要求された書き込み操作を開始する準備を行ない要求操作が有効な書き込み操作であることを知らせる信号を待つ。要求された書き込み操作が有効とみなされると、レジスタ・ブロックは書き込み要求がネゲートされて初めて要求された書き込み操作を実行する。書き込み要求信号はＣＰＵ／ＭＰＵに制御されるため、全体の書き込み操作は１つのＣＰＵ／ＭＰＵ操作サイクル内で完了する。【選択図】図４
2006268857.tif 000002
【特許請求の範囲】
【請求項１】
データ処理装置からレジスタ記憶システムにデータを書き込む方法で、該方法は、
該データ処理装置から該レジスタ記憶システムに対し書き込むべき新規データ、アドレス位置、chip_select 信号、およびwrite_request 信号を発行させること、
アドレス位置をデコードし、レジスタ記憶装置がアドレス位置により識別されるとそこにイネーブル信号を送信すること、
少なくとも部分的に発行アドレスより、要求書き込み操作が識別されたレジスタ記憶システムに対し有効な書き込み操作であるか判定し、書き込み操作が有効とみなされ、該chip_select およびwrite_request信号がまだ作動中である場合register_write イネーブル信号を発行すること、
該register_write イネーブル信号が発行された時点で該新規データを受け付けるよう該レジスタ記憶システムに準備させること、
該write_request信号がネゲートされることに応答して該register_write イネーブル信号をネゲートすること、
該write_request信号が作動状態からネゲートされた状態に移行することに応答して該レジスタ記憶システムに新規データをラッチし格納させること、
を含む方法。
【請求項２】
データ・レジスタで、
データ入力、
データ出力、
Write_Select 入力、
Write_Valid入力、
Read_Select入力、
Read_Valid 入力、
を含み、
該Write_Select入力は、該Write_Validが作動された場合第１の論理信号に応答して該データ・レジスタを書き込みモードに選択的に配置させるのに有効な第１の制御入力で、該データ・レジスタは該Write_Valid 入力が作動されない場合該Write_Select 入力を無視する、および
該Read_Select入力は、該Read_Valid入力が作動された場合第２の論理信号に応答して該データ・レジスタを読み取りモードに配置させるのに有効な第２の制御入力で、該データ・レジスタは該Read_Valid入力が作動されない場合該Read_Select入力を無視する
データ・レジスタ。
【請求項３】
さらにクロック入力が欠如する、請求項２に記載されたデータ・レジスタ。
【請求項４】
請求項２に記載されたデータ・レジスタで、
該データ・レジスタは該第１の論理信号が第１の論理状態にあることに応答して該書き込みモードに配置される、および
該データ・レジスタは該第２の論理信号が第１の論理状態にあることに応答して該読み取りモードに配置される
データ・レジスタ。
【請求項５】
請求項２に記載されたデータ・レジスタで、さらに、
該Write_Valid 入力および該Write_Select 入力に応答し、第１の制御出力を生成するのに有効な第１のＡＮＤゲート、 
該Read_Valid入力および該Read_Select入力に応答し、第２の制御出力を生成するのに有効な第２のＡＮＤゲート、 
該データ入力に連結したdata_in ノードを有するデータ・ラッチ、該第１の制御出力に連結したclock_in ノード、およびdata_out ノード、ならびに
該第２の制御出力に応答して該data_out ノードを該データ出力に選択的に連結するために有効な信号パス装置、
を含むデータ・レジスタ。
【請求項６】
請求項５に記載されたデータ・レジスタで、 
該第１のＡＮＤゲートは、該Write_Valid入力に応答する第１のアクティブ・ハイ入力および該Write_Select 入力に応答する第１のアクティブ・ロー入力を有する、ならびに
該第２のＡＮＤゲートは、該Read _Valid入力に応答する第２のアクティブ・ハイ入力および該Read _Select 入力に応答する第２のアクティブ・ロー入力を有する、
データ・レジスタ。
【請求項７】
該書き込みモードにある場合、該データ・レジスタは該第１の論理信号が該Write_Select入力から除去された時点で該データ入力に適用された新規データをラッチする、請求項２に記載されたデータ・レジスタ。
【請求項８】
請求項２に記載されたデータ・レジスタで、該データ・レジスタの操作は準備段階に続き実行段階を含む２段階シーケンスに従い、 
書き込み操作の際該実行段階は入力データのラッチングを含み、
該第１の論理信号を該Write_Select入力に適用すると該データ・レジスタは該Write_Valid 入力により作動されるまで準備段階に入らない
データ・レジスタ。
【請求項９】
該データ・レジスタは該第１の論理信号が該Write_Select入力から取り除かれると該書き込み操作の実行段階におけるデータのラッチングを開始する、請求項８に記載されたデータ・レジスタ。
【請求項１０】
該データ・レジスタは該Write_Valid 信号が取り除かれると該書き込み操作の実行段階におけるデータのラッチングを開始する、請求項８に記載されたデータ・レジスタ。
【請求項１１】
以下を含むレジスタ・アクセス・システム、
A) 次を有するデータ処理装置、
i) データ出力ノード、
ii) アドレス出力ノード、
iii) 書き込み操作を開始するためのWrite_Select 出力、
iv) 読み込み操作を開始するためのRead_Select 出力、
B) 該データ出力ノードに連結されるデータ・バス、
C) 該アドレス出力ノードに連結されるアドレス・バス、
E) 該データ・バス、アドレス・バス、Write_Select 出力、およびRead_Select 出力に連結される、少なくとも１つのデータ・レジスタ・モジュールで各データ・レジスタ・モジュールは以下を含む、
1) 少なくとも１つのregister_latch バンク、
2) 各register_latch バンクへのアクセスを制御する操作デコード論理回路で、該操作デコード論理回路は該register_latch バンクの内特定の１つを選択するためのRegister_Select 出力ノード、有効な書き込み操作の際Write_Valid 信号を発行するためのWrite_Valid出力ノード、および有効な読み取り操作の際Read_Valid信号を発行するためのRead_Valid出力ノードを有し、
各register_latch バンクは、 
該データ・バス上の所定データ線に連結されたデータ入力ノード、
該データ・バス上の該所定データ線に連結されたデータ出力ノード、
該Register_Select 出力ノードに連結されたRegister_Select入力ノード、
該Write_Select 出力に応答するWrite_Select入力ノード、 
該Write_Valid 信号に応答するWrite_Valid入力ノード、
該Read_Select 出力に応答するRead_Select 入力ノード、
該Read_Valid 信号に応答する Read_Valid 入力ノード、
を含み、
該Write_Select 入力ノードは該Write_Valid信号が発行されたことに応答し、該register_latch バンクを書き込み操作モードに選択的に置くために有効で、該register_latch バンクは該Write_Valid信号が発行されない場合は該Write_Select 入力を無視し、
該Read _Select 入力ノードは該Read _Valid信号が発行されたことに応答し、該register_latch バンクを読み取り操作モードに選択的に置くために有効で、該register_latch バンクは該Read _Valid信号が発行されない場合は該Read _Select 入力を無視する。
【請求項１２】
請求項１１に記載されたレジスタ・アクセス・システムで、さらに、  F) 該アドレス・バスを受信するように連結され、データ・レジスタ・モジュール毎に別途のchip_select 出力を有するアドレス・デコーダで、該アドレス・デコーダは該アドレス・バスより判定される特定対象のデータ・レジスタ・モジュールを識別することおよび対象データ・レジスタ・モジュールに対応するchip_select出力を作動させることに有効で、
各データ・レジスタ・モジュールはさらに、対応するchip_select出力に連結された第１のchip_select 入力を有し、その対応chip_select 入力の作動化に応答してアクティブ・モードに置かれることに有効であること、
を含むシステム。
【請求項１３】
該操作デコード論理回路は有効および無効のレジスタ書き込みサイクルの区別、有効および無効のレジスタ読み込みサイクルの区別、有効なレジスタ書き込みサイクルを検出した際にそのWrite_Valid出力ノードを作動させること、および有効なレジスタ読み取りサイクルを検出した際にそのRead_Valid出力ノードを作動させることに有効な請求項１１に記載されたレジスタ・アクセス・システム。
【請求項１４】
各データ・レジスタ・モジュールはさらに該アドレス・バスの少なくとも一部に連結されたアドレス選択入力を有し、該操作デコード論理回路による有効な書き込みまたは読み取り操作の判定は該アドレス選択入力のデータ内容に少なくとも部分的に基づいている、請求項１３に記載されたレジスタ・アクセス・システム。
【請求項１５】
各register_latchバンクはクロック入力が欠けている請求項１１に記載されたレジスタ・アクセス・システム。
【請求項１６】
請求項１１に記載されたレジスタ・アクセス・システムで、該register_latch バンクは該Write_Select 入力ノードが補完的信号を受信することに応答して該書き込み操作モードからはずされ、 
該データ・レジスタは該Read_Select 入力ノードが補完的信号を受信することに応答して該読み取り操作モードからはずされる、
システム。
【請求項１７】
請求項１１に記載されたレジスタ・アクセス・システムで、該register_latch バンクは該Write_Select 入力ノードが第１の論理状態にあることに応答して該書き込み操作モードに置かれ、
該データ・レジスタは該Read_Select入力ノードが該第１の論理状態にあることに応答して該読み取り操作モードに置かれる、
システム。
【請求項１８】
請求項１１に記載されたレジスタ・アクセス・システムで、該register_latch バンクはさらに、
該Write_Valid 入力ノードおよび該Write_Select 入力ノードに応答し、第１の制御出力を生成するのに有効な第１のＡＮＤゲート、 
該Read_Valid 入力モードおよび該Read_Select 入力ノードに応答し、第２の制御出力を生成するのに有効な第２のＡＮＤゲート、
data_in 入力ノード毎に１つのデータ・ラッチで、各々その対応data_in 入力ノードに連結されたlatch_input ノードと、対応data_out ノードに選択的に連結されたlatch_outputノードと、および該第１の制御出力に連結されたclock_in ノードを有するデータ・ラッチ、および
データ・ラッチ毎に１つの信号パス装置で、該第２の制御出力に応答してその対応データ・ラッチのlatch_out ノードをラッチの対応data_output ノードに連結させることに有効な信号パス装置、
を含み、
該第１のＡＮＤゲートは該Write_Valid入力ノードに応答する第１のアクティブ・ハイ入力および該Write_Selectに応答する第１のアクティブ・ロー入力を有し、
該第２のＡＮＤゲートは該Read _Valid入力ノードに応答する第２のアクティブ・ハイ入力および該Read _Selectに応答する第２のアクティブ・ロー入力を有する、
システム。
【請求項１９】
該書き込み操作モードにある時、該Write_Select出力ノードの作動化が停止すると該data_in入力ノードに適用された新規データを該register_latchがラッチする、請求項１１に記載されたレジスタ・アクセス・システム。
【請求項２０】
請求項１１に記載されたレジスタ・アクセス・システムで、該register_latch バンクの操作は準備段階に続く実行段階という２段階シーケンスに従い、
書き込み操作の際該実行段階は入力データをラッチすることを含み、
該Write_Select 入力ノードが作動されると、該register_latchバンクは該Write_Valid 入力ノードが作動されるまで準備段階に入らない、
システム。
【請求項２１】
該register_latch バンクは該Write_Select入力ノードの作動化が停止すると該書き込み操作の実行段階におけるデータのラッチングを開始する、請求項２０に記載されたレジスタ・アクセス・システム。
【請求項２２】
該register_latch バンクは該Write_Valid 信号が取り除かれると該書き込み操作の実行段階におけるデータのラッチングを開始する、請求項２０に記載されたレジスタ・アクセス・システム。
【請求項２３】
該register_latchバンク は該Read_Select 入力ノードの作動化に応答して読み取り操作の準備段階に入り、該Read_Valid 入力ノードが作動化すると該実行段階として読み取り操作を開始する、請求項２０に記載されたレジスタ・アクセス・システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般的にレジスタ・アクセス方法および構造に関する。具体的に本発明はＣＰＵ／ＭＰＵ装置に対し操作を同期化するためにバス・クロックを使用する必要のないレジスタ・アクセスのアーキテクチャに関する。
【背景技術】
【０００２】
通常、ＣＰＵまたはＭＰＵのバス上でレジスタ・ブロックをアクセスする場合、レジスタ・ブロックとＣＰＵまたはＭＰＵとを同期化するためにバス・クロックが必要である。バス・クロックは通常ＣＰＵ／ＭＰＵにより提供され、従ってそのサイクル周期はＣＰＵ／ＭＰＵの操作サイクルと同等であるが、レジスタ・ブロックは書き込みまたは読み取り操作を実行するために通常バス・クロックの１サイクルで（すなわちＣＰＵ／ＭＰＵの１操作サイクル）提供される時間より多くの時間を必要とするため、所定クロック・サイクル増分でレジスタ・ブロックに追加時間を割り当てるためにも必要である。
【０００３】
レジスタ・ブロックまたはメモリ・ブロックをＣＰＵ／ＭＰＵ操作サイクルに同期化する方法は各種知られている。一実施例において、ＣＰＵ／ＭＰＵは読み取りまたは書き込み操作を要求するとともにレジスタ・ブロックに対しメモリ要求信号を発行することができる。ＣＰＵ／ＭＰＵは次にレジスタ・ブロックが応答信号で応答し、要求された操作を進める準備ができたことをＣＰＵ／ＭＰＵに知らせるまでバスをモニタする。レジスタ・ブロックは応答信号で応答するまで通常複数のバス・クロック・サイクルを必要とする。この場合、ＣＰＵ／ＭＰＵが待たなければならないバス・クロック・サイクル数は不定である。
【０００４】
別の方法では、待ち線（wait line）を用いて要求された読み取りまたは書き込み操作がまだ実行できないことをＣＰＵ／ＭＰＵに通知する。ＣＰＵ／ＭＰＵは待ち時間がどの位になるか分からないので、いつ待つのを止め、要求操作を進められるか判定するために常に待ち線をモニタしなければならない。
【０００５】
周知のように、バスは各種信号を伝送する複数の制御線を含み、これには第１の線上のチップ選択信号および第２の線上の読み取り／書き込みコマンド信号が含まれるが、後者は通常読み取り操作要求を示す場合は論理ハイに設定され、書き込み操作要求を示す場合は論理ローに設定されている。通常レジスタ・ブロックはこれら２本のバス制御線をモニタし、チップ選択信号がサンプリングでアクティブとなるとコマンド信号（読み取りまたは書き込み）がサンプリングされ、現行サイクルが読み取りサイクルまたは書き込みサイクルであるか判定される。レジスタ・ブロックは次に待ち線上で待ち信号をアサートし、ＣＰＵ／ＭＰＵにいつデータ受信またはデータ提供を行なえるか知らせる。待ち信号の発行時間の長さはレジスタ・ブロックが必要とみなす不定の長さである。
【０００６】
通常ＣＰＵ／ＭＰＵは続く各バス・クロック・サイクル中、待ち信号がネゲート（negate）されるまで所定時点でレジスタ・ブロックからの待ち信号のサンプリングを行なう。基本的に待ち信号は、レジスタ・ブロックがいつデータを受信でき（書き込み操作用）またはデータを提供できるか（読み取り操作用）をＣＰＵ／ＭＰＵに知らせ、それによりレジスタ・ブロックが要求されたデータ転送を完了できるまで操作サイクルを有効に延長させる。一般的に、一旦ＣＰＵ／ＭＰＵが待ち信号のサンプリングでインアクティブ、すなわちネゲートされた、とみなすと、チップ選択信号および／あるいはコマンド信号のアサートを止める（de-assert）ことにより次のバス・クロック・サイクル中に書き込み／読み取り操作サイクルを完了することができる。
【０００７】
このようにＣＰＵ／ＭＰＵおよびレジスタ・ブロックは通常要求・応答シーケンスに従い相互にデータを転送する。これは各データ転送シーケンスに複数のバス・サイクルを必要とするので結果として最適なデータ転送速度に至らない。さらに、ＣＰＵ／ＭＰＵはレジスタ・ブロックからの適切な待ち応答に対しバスをモニタするリソースを割り当てなければならない。
【０００８】
【特許文献１】米国特許第4,172,281号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明の１つの目的はバス・クロック信号を必要とせずにＣＰＵ／ＭＰＵと通信するためのレジスタを提供することである。
【００１０】
本発明の別の目的はＣＰＵ／ＭＰＵとでデータ転送効率を向上させるレジスタを提供することである。
【課題を解決するための手段】
【００１１】
上記目的はＣＰＵまたはＭＰＵバス上の装置のレジスタ・ブロックに対し直接読み取りおよび書き込みを行なう構造および方法により達成される。この結果、バス上の装置をアクセスするために通常は必要なバス・クロックを必要としない高性能なレジスタ・アクセス機構をもたらす。本構造はさらに、クロックに従ったサンプリングを必要とせず、ＣＰＵ／ＭＰＵ信号を直接使用できるようにして、レジスタ・ブロック装置およびＣＰＵまたはＭＰＵホスト間のインタフェースを簡素化する。
【００１２】
一実施例において、データ・レジスタは各々書き込みまたは読み取り操作を要求するための別個の書き込み選択および読み取り選択入力を含む。共通の読み取り／書き込み線を用いても良いことは理解されよう。データ・レジスタは、ＣＰＵ／ＭＰＵのバス・サイクルの初めにどの種の操作が望まれるかをＣＰＵ／ＭＰＵがデータ・レジスタに知らせ、ＣＰＵ／ＭＰＵのバス・サイクルの終わりに要求操作を実行する（すなわち完了する）という２段階操作に従うことが好ましい。これによりレジスタ・ブロックは、有効なデータを利用可能にするなどの準備措置を完了するために最大量の時間を使用できる。
【００１３】
例えば書き込み操作を実行する場合、ＣＰＵ／ＭＰＵは読み取り選択信号をネゲートしたまま書き込み選択信号をレジスタ・ブロックに発行することにより書き込み操作を開始する。レジスタ・ブロックが選択され作動し、要求操作を認識した後、レジスタ・ブロックは書き込み選択信号のネゲートを待つ。書き込み信号がネゲートされると、レジスタはデータ入力ノードにおけるデータをラッチすることで応答する。
【００１４】
別の形では、レジスタがさらに書き込み有効入力を含む。ＣＰＵ／ＭＰＵが書き込み選択信号を発行することにより書き込み操作を開始し書き込み先のアドレスを指定した後、ＣＰＵ／ＭＰＵバスをモニタするデコード回路は現行書き込み要求が有効な書き込み操作であるか判定する。デコード回路が現行操作を有効な書き込み操作とみなした場合、デコード回路はレジスタ・ブロックの書き込み有効入力を作動させる。その前にレジスタ・ブロックは書き込み操作が要求されていることを知らせる書き込み選択入力をＣＰＵ／ＭＰＵから受信しているが、レジスタ・ブロックは書き込み有効信号による合図を受けるまで要求された書き込み操作を実行しないことが好ましい。
【００１５】
さらに、レジスタ・ブロックはＣＰＵ／ＭＰＵの現行操作サイクル（すなわちバス・サイクル）の終わりまで書き込み操作を実行する信号を受けないことが好ましい。書き込み有効信号は現行バス・サイクルの終わりにネゲートされ、レジスタ・ブロックは従って有効信号がネゲートされたことに応答し、バス・サイクルの初めに要求された書き込み操作を実行することが好ましい。あるいは、レジスタ・ブロックは要求された書き込み操作をＣＰＵ／ＭＰＵからの書き込み選択信号がネゲートされた時点で要求書き込み操作を実行しても良い。基本的にレジスタ・ブロックはＣＰＵ／ＭＰＵが書き込み操作の要求を停止するまで要求書き込み操作を実行しない。
【００１６】
このように、ＣＰＵ／ＭＰＵは要求書き込み操作がいつ実行されるかを知るのにレジスタ・ブロックからの応答を待つ必要がない。書き込み操作は組み合わせ論理シーケンスに従っているのでＣＰＵ自体が書き込み操作の実行を指示する。これにより書き込み操作は１つのＣＰＵ／ＭＰＵサイクル内で実行されることができる。
【００１７】
発明のより全面的な理解とともに、他の目的および成果は添付図面と併せて下記の説明および請求項を参照することにより明らかになり、認識されよう。
【００１８】
［実施形態１］
本発明の好ましい実施形態を添付図面に従って以下に説明する。 
本発明は、バス・クロックを用いず、または待ち状態の要求が必要とならずにＣＰＵまたはＭＰＵバス上の装置のレジスタ・ブロックに対し直接読み取りおよび書き込みを行なう方法を述べている。すなわち、本高性能レジスタ・アクセス機構は通常バス上の装置をアクセスする場合に必要となるバス・クロックを必要としない。
【００１９】
図１について、本発明によるレジスタ11aの第１実施形態はレジスタ11aにデータを書き込むためのData_In入力、書き込み操作を選択するためのWrite_Select 入力、読み取り操作を選択するためのRead_Select 入力、およびレジスタ11aから読み取るためのData_Out 出力を有することが好ましい。またRegister_Select および／あるいはChip_Select 入力を用いて複数レジスタ11aの内特定の１つを選択する便利な方法を提供することができる。図１の構造は１−ビットのレジスタ11a を示しているが、以下により詳しく述べる如く、複数のレジスタ11aを並列配置させ、またはレジスタ11aに追加Data_In 入力およびData_out 出力を備えることで８−、１６−、または３２−ビット・レジスタに拡張できる。レジスタ11aの操作は図２および３のタイミング図を参照すると最も良く理解できる。
【００２０】
以下の考察において、ＣＰＵ／ＭＰＵの信号はすべてアクティブ・ローであると想定している。これは単なる設計上の好みで、本発明はわずかな変更でアクティブ・ハイのアプリケーションにも同様に適しており、当業者であればすべて範囲内であることが理解されよう。
【００２１】
図２について、ＣＰＵ／ＭＰＵによりWrite_Select 入力がローにアサート（assert）され、Read_Select 入力はアサートされないまま、すなわちハイ、であると書き込み操作が開始される。複数のレジスタ11a、または各々複数のレジスタ11aを有する複数のレジスタ・バンクが使用された場合は、以下により詳しく説明するようにアドレス・デコーダを用いて対象となる、すなわち特定に選択された、レジスタ11aを個別的に選択することができることが理解されよう。
【００２２】
基本的に書き込み操作は２段階プロセス、すなわち準備段階に続き行為（または実行）段階、に従う。ラッチングして入力データ・ビットを格納するという行為を実際に実行する前に書き込み準備信号に応答することにより、レジスタ11aは現行バス・サイクル中に書き込み操作を実行するためにより多くの時間を与えられ、それにより待ち状態の必要を省くことができる。つまり、レジスタ11aはバス・サイクルの早い時点で書き込み操作が進行中であるという信号を受けるが、実際に書き込むデータのラッチングを行なう信号は現行バス・サイクルの終わりまで受けない。
【００２３】
基本的に、信号Write_Select は書き込み準備信号の役割を果たし、レジスタ11aに現行サイクルの終わりの方の時点で書き込み操作を実行することが要求されることを知らせる。これでData_In入力におけるデータ・ビットが安定化し、必要な論理処理ステップを完了するためにより多くの時間が与えられる。
【００２４】
信号Write_Selectの作動化に続き、またはそれと同時に、アクティブ・ハイである信号Register_Selectが高くされ、それによりアサートされる。完全を期すために、図２のタイミング図は複数の他のレジスタからレジスタ11aを選択するために使用され、ＣＰＵ／ＭＰＵからと想定されるアドレスの発行を示している。発行されたアドレスをデコードするには有限の時間を必要とし、そのデコードは望まれるアドレスが許容されたメモリ・スペース内にあることを確実にし、特定レジスタ11aを識別するために行なわれる。これは以下により詳しく説明するように現行書き込みまたは読み取り操作が有効であるかを判定する場合に便利である。
【００２５】
信号Register_SelectおよびWrite_Selectが作動されてもレジスタ11aはData_In入力を無視し続ける。 実際図２で示される通り、現行サイクルの後の方にならないとData_In 入力に有効なデータが存在しない可能性がある。信号Write_Select が作動されているので、レジスタ11aはData_In 入力においてデータを受ける準備を始めるが、この時点ではデータを実際に取り込む、すなわちラッチする、ことはしない。基本的に信号Register_Selectは、何らかの操作（すなわち読み取りまたは書き込み）に備えるように知らせるが、データのラッチ（すなわち書き込み）またはデータ出力（すなわち読み取り）操作の作動化を引き起こさず、全般的な「準備」信号とみなすことができる。入力信号Write_Selectおよび Read_Selectは現行ＣＰＵ／ＭＰＵサイクルの終わりに読み取りまたは書き込み操作を作動させる見込みであることをレジスタ11aに知らせる。本例の場合は信号Write_Select信号が作動され（すなわちローになる）信号Read_Select 信号が作動されない（すなわちハイのままである）ので、レジスタ11aはWrite_Select 信号に従うことを知らされ、これが後にデータの書き込み操作のラッチ段階を誘発する。
【００２６】
操作のこの準備モードでレジスタ11aは信号Write_Select が取り除かれる、すなわちネゲートされる、までデータを取り込まず、このネゲートは現行アクセス・サイクルの終了の知らせともなる。書き込みまたは読み取り操作を延期することにより、信号Register_Selectおよび発行アドレスで決められた正しいレジスタが選択されること、および必要に応じData_In入力およびData_Out出力において有効なデータが準備されることを確実にするための時間が提供される。本例においては信号Write_Selectがアクティブ・ロー信号と想定されているので、レジスタ11aは信号Write_Selectがハイに移る（すなわち非作動化またはネゲートされる）ことに応じて、図２の「レジスタ・ビット」行上の有効データ・ビット・ラベルで示されるように、Data_In入力におけるデータ値をラッチする。このように、データ・ビットは信号Write_Selectがハイに移ることで示されるＣＰＵ／ＭＰＵサイクルの終わりにレジスタに書き込まれる。
【００２７】
本出願においてレジスタ11aは図示されないＣＰＵ／ＭＰＵ装置と直接通信を行なっていると想定され、レジスタ11aは信号Write_Select がハイに移ることで確定するＣＰＵ／ＭＰＵサイクルの終わりまで入力データを受け付けない。このようにレジスタ11aは有効で安定したデータがData_In入力で利用可能になるために、また新しいデータ・ビットを受け付ける準備のためにＣＰＵ／ＭＰＵサイクルで決められる最長の時間を与えられる。信号Write_Select はＣＰＵ／ＭＰＵで制御されているので、レジスタ11aはＣＰＵ／ＭＰＵのバス・サイクル速度で動作することになる。さらにレジスタ11aとＣＰＵ／ＭＰＵ間の相互作用は組み合わせ論理という形なのでバス・クロックの必要がない。
【００２８】
図４について、レジスタ11aの内部図はデータ・ラッチ13（すなわち好ましくはＤ型フリップ・フロップ）および論理回路（第１の２入力ＡＮＤゲート15および第２の２入力ＡＮＤゲート17）を含む。ＡＮＤゲート15はRegister_Select入力に応答するアクティブ・ハイ入力19およびWrite_Select 入力に応答するアクティブ・ロー入力21を有することが好ましい。このように、ＡＮＤゲート15はRegister_Select 信号が作動されていない時はいつも信号Write_Select をブロックするマスクの役割を果たす。同様にＡＮＤゲート17はRegister_Select入力に応答するアクティブ・ハイ入力23を有し、信号Register_Selectが作動されていない時はいつも信号Read_Selectをアクティブ・ロー入力25においてマスクする。データ・ラッチ13は信号Register_Selectに応答するイネーブル入力EN、Data_In 入力に連結されたデータ入力D 、ネガティブ・エッジ誘発のクロック入力CK、およびデータ出力Qを有することが好ましい。
【００２９】
AND ゲート15の出力は信号Register_Selectがハイで信号Write_Selectがローの時にハイになる。この場合AND ゲート15の出力は信号Write_Select がハイに移る（すなわち非作動化される）、または信号Register_Selectがローに移る（すなわち非作動化される）までハイの状態が続く。信号Write_Selectが取り除かれたことに応じ、AND ゲート15の出力はハイからローに移行し、それによりデータ・ラッチ13のネガティブ・エッジ・クロック入力CKを誘発し、データ・ラッチ13はデータ入力Dにおけるデータ・ビットをラッチする。
【００３０】
信号Register_Selectによりイネーブルされると, データ・ラッチ13は出力Qにおいて継続的に格納データ情報を出力する。しかし出力Qの情報は読み取り操作中にのみ、ＡＮＤゲート17の出力から発行されるData_Output_Enable信号に応答するトライステート・バッファ27経由で条件的にData_Out出力に転送される。
【００３１】
図３に示すように、読み取り操作は入力Write_Select をハイに維持しながら入力Read_Select をローすることによって開始される。Register_Select 入力もハイにされ、発行されたアドレスは後で解決される。ＡＮＤゲート15への入力Write_Select が反転するとWrite_Selectは読み取りサイクル全体にわたってローのままのため図４のＡＮＤゲート15の出力はローのままで、従ってデータ・ラッチ13のクロック入力CKを誘発しない。しかし、ＡＮＤゲート17はRegister_Select 入力がハイになるに応じ、データ・ラッチ13からの出力Qをレジスタ11aのData_Out 出力に連結するようトライステート・バッファ27に信号する。このように、有効なOutput_Data_Bit は読み取りサイクルの比較的早期にData_Out 出力に置かれ、このデータ値はＣＰＵ／ＭＰＵが信号Read_Selectを取り除くまで有効のままである。
【００３２】
このように、レジスタ11aは読み取り操作中ＣＰＵ／ＭＰＵサイクルの殆どの間有効なデータ出力を提供させられる。逆に書き込み操作中、レジスタ11aは新しい有効なデータを取得するためにＣＰＵ／ＭＰＵバス・サイクルの制限の中でできるだけ長い時間が与えられる。
【００３３】
図５について、ＣＰＵ／ＭＰＵとの直接の組み合わせ通信により適したデータ・レジスタ11bの本発明による第２の実施形態は、さらに２つの入力を有することが好ましい。図１に類似した要素はすべて類似の参照文字で特定され、上記に説明されている。
【００３４】
先の図１の例のように、図５のデータ・レジスタ11bはRegister_Select 入力、Data_In 入力、Write_Select 入力、Read_Select 入力、およびData_Out 出力を有する。しかしデータ・レジスタ11bは、さらにWrite_Valid 入力およびRead_Valid 入力を有し、これらは有効な読み取りサイクルまたは有効な書き込みサイクルが進行中であることをデータ・レジスタ11bに知らせ、実際の読み取りまたは書き取り操作を誘発する。基本的に入力 Write_SelectおよびRead_Selectは「準備」信号として機能し、レジスタ11bにどの種の操作が見込まれているか知らせるが、レジスタ11bはWrite_Validまたは Read_Valid 入力のいずれか適当な方で指示されるまで要求された操作、すなわち書き込みまたは読み取り操作、を開始しない。
【００３５】
データ・レジスタ11bの操作は図６のタイミング図を参考にするとより良く理解でき、これは書き込み操作用のタイミング・シーケンスを説明している。図５では 図示されないが、完全を期して図６のタイミング図はレジスタ11bとＣＰＵ／ＭＰＵとのインタフェースとなるバスをモニタするデコード回路が通常実施するデコード・タイミングを示す。データ・レジスタ11bとＣＰＵ／ＭＰＵとのインタフェースとなるバス上の制御線を観察することにより、デコード回路は有効な書き込み操作が実行されているか判定することができる。書き込み操作の有効性は例えば対象アドレスがすべてのデータ・レジスタ11bが包含するアドレス・スペース内にあるかどうかの判定、または作動された制御信号のシーケンスの観察により判定、等々、に依存することがある。
【００３６】
書き込みサイクルは好ましくはアクティブ・ローの入力である信号Write_Select の作動化で開始される。データ・レジスタ11bは各々異なったメモリ・アドレスで識別されるデータ・レジスタのグループの一部であると推定される。従って図６のタイミング図はアドレス発行の行を示す。簡素化のためにアドレスをデコードする時間は図示されないが、示されるデコード時間に類似していると想定される。従って入力アドレスを受信してからアドレスのデコード操作が完了するまでにわずかな遅延が存在する。
【００３７】
デコード回路が書き込み操作を有効と判定すると、デコード回路はValid_Write入力を、好ましくは論理ハイレベルにすることにより、作動させる。Write_Select入力はＣＰＵ／ＭＰＵの直接制御下にあることが好ましく、Write_Validの有効化はＣＰＵ／ＭＰＵ の制御下にあるバス線を観察することによって行なわれる。このように、Write_Select またはWrite_Validのいずれかを観察してＣＰＵ／ＭＰＵの書き込みサイクルの終了を判定することができる。Write_Select 入力またはWrite_Valid入力のいずれかが取り除かれると、レジスタ11bはそのData_In入力にデータ・ビットをラッチすることで応答する。ＣＰＵ／ＭＰＵのサイクルの終わりまでデータをラッチしないことにより、レジスタ11bが正しく書き込み操作を完了するためにできるだけ長い時間が提供される。
【００３８】
図７について、レジスタ11bの内部ブロック図において図４と類似する要素はすべて類似の参照文字で特定され、上記に説明される。先の図４の例と同様に、Data_in 入力はラッチ13のD入力に適用され、ラッチ13のQ出力はＡＮＤゲート17からの制御線Data_Output_Enable に応答するトライステート・バッファ27経由でData_Out に連結される。さらに前例と同様にWrite_Select 入力はＡＮＤゲート15のアクティブ・ロー入力に適用され、Read_Select 入力はＡＮＤゲート17のアクティブ・ロー入力に適用される。しかし本例の場合、Write_Valid 入力はＡＮＤゲート15のアクティブ・ハイ入力に適用され、Read_Valid 入力はＡＮＤゲート17のアクティブ・ハイ入力に適用される。Register_Select 入力はDラッチ13のイネーブル入力ENに適用される。
【００３９】
図８について、レジスタ11bの読み取り操作はRead_Select 入力の作動化で開始される。先の図６における書き込み操作の例と同様、特定レジスタ11bを対象とする入力アドレスが提出され、図示されないアドレス・デコーダがアドレスのデコード操作を完了して対象レジスタ11bを識別するまである程度の時間を必要とすると想定される。一旦アドレスが解決すると、対象レジスタ11bはRegister_Select入力を受信する。この時点までにレジスタ11bは、前にRead_Select 入力が適用されたので既に読み取り操作を実行することが期待されていることを知っている。さらに前例と同様に、図示されないデコード回路がレジスタ11bとＣＰＵ／ＭＰＵをインタフェースするバスを観察し、図６と類似した方法で読み取りサイクルが有効であるか判定する。読み取りサイクルが有効と判定された場合、信号Read_Valid が作動され、内部制御信号Data_Out_Enable が発行され、トライステート・バッファ27に出力QをData_Out出力上に転送させる。
【００４０】
図９について、本発明による複数のデータ・レジスタ・モジュール1乃至jのブロック図がデータ線Data[1-n]、アドレス線Addr[1-p]、および制御線Write_Select およびRead_Selectを含むローカル・バス上のデータ処理装置、すなわちＣＰＵ／ＭＰＵ装置51、とインタフェースしている。データ・レジスタ・モジュール1乃至j は各々異なったアドレスで識別され、ＣＰＵ／ＭＰＵ51はアドレス線Addr[1-p]で該当アドレスを発行することにより特定データ・レジスタ・モジュールを対象とする。アドレス・デコーダ53がアドレス線Addr[1-p]をモニタし、適当なチップ選択信号（すなわちChip_Select_1 乃至Chip_Select_j）を対応宛先データ・レジスタ・モジュール1乃至jに発行する。
【００４１】
データ・レジスタ・モジュール1乃至j は各々実質的に類似しており、簡素化上データ・レジスタ・モジュール1の内部構造のみが示される。データ・レジスタ・モジュール1の説明は残りのデータ・レジスタ・モジュール2乃至j にも同等に適用されることが理解されよう。
【００４２】
各データ・レジスタ・モジュールは複数のレジスタ11c_1 から11c_mを含み、アドレス線Addr[1-p]の少なくとも一部をモニタするように連結された操作デコード論理ブロック55を含む。さらに操作デコード論理ブロック55は随意的にWrite_Select およびRead_Selectなど選ばれた制御信号をモニタしても良い。操作デコード論理ブロック55の論理回路は観察アドレスおよび／あるいは制御信号の論理値に基づき現行ＣＰＵ／ＭＰＵサイクルがレジスタ11c_1 から11c_mにとって有効な書き込みまたは読み取りサイクルであるか判定するように構成され、さらに必要に応じWrite_Valid またはRead_Valid信号をその判定に基づいて作動させるように構成されることが好ましい。 加えて、操作デコード論理ブロック55はさらに受信アドレス線をデコードし対応する信号Register_Select_1 乃至Register_Select_mを識別して作動させ、レジスタ11c_1 乃至11c_mの中から特定の対象レジスタを選択するように構成されることが好ましい。
【００４３】
基本的に、操作デコード論理ブロック55はＣＰＵ／ＭＰＵのバス・サイクルをデコードし、どの種のアクセス（書き込みまたは読み取り）が要求され、またそれが有効なレジスタ・アクセスであるか判定する。有効なレジスタ書き込みサイクルに対し操作デコード論理ブロック55はアドレスに基づき書き込みが行なわれる適当なレジスタ（レジスタ11c_1 乃至11c_mより）を選択する。操作デコード論理ブロック55はさらにWrite_Valid 信号を出力し、対象レジスタに対する書き込みをイネーブルする。ＣＰＵ／ＭＰＵからの書き込みデータはサイクルの初めに準備できていない場合があるため、データはＣＰＵ／ＭＰＵサイクルの終りに、Write_Select信号またはWrite_Valid信号がネゲートされた時点でレジスタに書き込まれる。
【００４４】
レジスタ11c_1 乃至11c_mは各々以下を有することが好ましい。操作デコード論理55から連結されたRegister_Select入力、ＣＰＵ／ＭＰＵ51から書き込みデータを受信するために、対応データ線Data[1-n]に連結された複数のData_In入力 1 乃至n 、 操作デコード論理55から連結されたWrite_Valid入力およびRead_Valid入力、アドレス・デコーダ53から到着するChip_Select入力、ＣＰＵ／ＭＰＵ51より信号Write_Select およびRead_Selectを受信するよう連結されたWrite_Select入力およびRead_Select入力、および、ＣＰＵ／ＭＰＵ51に読み取りデータを送信するためにデータ・バス Data[1-n]に連結された複数のData_Out出力。図１および５の要素に類似した要素は類似の参照文字を有し、上記に説明されている。
【００４５】
ＣＰＵ／ＭＰＵ51は信号Write_Selectを作動させ、対象データ・レジスタ・モジュール1-j内の望むレジスタ11c_1 から11c_mに対する適当なアドレスを線Addr[1-p]上で発行し、線Data[1-n]上で書き込みデータを発行することにより、書き込み操作を開始する。アドレス・デコーダ53は発行アドレスを解決し、対象データ・レジスタ・モジュールに対応するChip_Select 信号1 乃至j を作動させる。
【００４６】
各データ・レジスタ・モジュール内で、対応するChip_Select 信号はすべての内部レジスタ11c_1 乃至11c_m に適用されるように示されているが、Chip_Select 信号はさらに、または代わりに操作デコード論理55に適用されても良い。Chip_Select が操作デコード論理55にのみ適用されるとすると、レジスタ11c_1 から11c_mはそれらに対応するRegister_Select線（1 からm）が操作デコード論理55により作動されるまで応答しない。
【００４７】
図示されるように、データ線Data[1-n]、アドレス線Addr[1-p]の少なくとも一部、ならびに制御線Write_SelectおよびRead_Select はＣＰＵ／ＭＰＵ51からデータ・レジスタ・モジュール1-jへ直接連結されている。レジスタ1c_1 から11c_mの内、操作デコード論理55のアドレス解決操作によって決定される対象レジスタは対応する作動化Register_Select線を受信する。本実施形態において各Chip_Select線1 乃至j はアドレス・デコーダ53および対応データ・レジスタ・モジュール1-j 間で直接連結しているので、作動化Chip_Select 信号を有するデータ・レジスタ・モジュールがWrite_Select線の作動化で決定される書き込み要求に応答する。操作デコード論理55が選択データ・レジスタ・モジュール内で適当に対象レジスタに対しRegister_Select信号を発行するまで待ち、また操作デコード論理55が現行書き込み操作が有効であるか判定し、対応するWrite_Valid信号を発行するのを待つことにより、選択されたデータ・レジスタ・モジュールはそのレジスタ各々にData_In 入力が有効になり、適用書き込みデータをラッチする充分な時間を提供する。一旦選択レジスタが識別され、選択されると、そのレジスタはWrite_Select信号またはWrite_Valid信号が取り除かれのを待ち、バス Data[1-n]上の入力データをラッチする。
【００４８】
読み取り操作は同様に実行されるが、ＣＰＵ／ＭＰＵ51はWrite_Select信号の代わりにRead_Select 信号を発行し、選択レジスタ11c_1 乃至11c_mはRead_Valid信号を 待って格納データをデータ・バスData[1-n]上に出力する。基本的に操作デコード論理55はＣＰＵ／ＭＰＵ51が発行するアドレスに基づき読み取りがされるレジスタを選択する。選択されたレジスタはデータ内容を出力する準備をするが、レジスタのData_Out 出力は対応するChip_Select 入力およびRead_Select 入力がアサートされ、操作デコード論理55が有効読み取りサイクルのデコードを終了後、すなわちRead_Valid信号を発行後、初めてイネーブルされる。
【００４９】
これらの処理は図１０および１２の、各々書き込みおよび読み取り操作のタイミング・シーケンスを示すタイミング図を参照するとより良く理解できる。図１０について、また上記に説明の通り、書き込み操作は信号Write_Select の作動化により開始される。この時点で特定のデータ・レジスタ・モジュールおおび内部レジスタのアドレスを発行することができる。アドレス・デコーダ53が発行アドレスを解決し、適当なChip_Select信号を作動させる。上述のように、操作デコード論理55は選択されたバス線をモニタし有効な書き込みおよび読み取り操作を識別する。操作デコード論理55はさらに随意に発行アドレスの少なくとも一部をデコードし、選択データ・レジスタ・モジュール内の特定の対象レジスタを識別し、適当に対象レジスタのRegister_Select信号を作動化することができる。この時点までに操作デコード論理55はさらに現行操作が有効な書き込み操作であるか判定しており、適当であればWrite_Valid信号を発行する。前記同様、現行書き込みサイクルはＣＰＵ／ＭＰＵ51がWrite_Select信号をネゲートし、または操作デコード論理55がWrite_Valid信号もしくはRegister_Select信号をネゲートすると終了する。対象レジスタはこれらいずれかの信号がネゲートされることに応答してData_In 入力における現行データをラッチし、それにより新しい有効なレジスタ・ビット情報を取得する。
【００５０】
レジスタ11c_1 乃至11c_mの好ましい内部構造は図１１を参照するとより良く理解され、同図は例示の目的でレジスタ11c_1の内部構造を示す。残りのレジスタ11c_2 乃至11c_mの内部構造も実質的に類似していることが理解されよう。図７および４の要素に類似した要素はすべて素数記号を加えた類似の参照文字を有し、上記に説明される。一要素の複数例が示される場合、各例は下線に続き数字識別子で識別される。例えばn個のデータ・ラッチ13'_1 乃至13'_n （すなわち入力Data_in_1 乃至Data_In_n 各々に対し１つのデータ・ラッチ）は各々入力Data_In_1 乃至Data_In_nを受信するように連結していることが示される。同様に、各データ・ラッチ13'_1 乃至13'_n のQ 出力は対応するトライステート・バッファ27'_1 乃至27'_n 経由で出力Data_Out_1 乃至Data_Out_nの対応するものに連結している。図４および７における先の例同様、Register_Select 入力（すなわち本例においてはRegister_Select_1 ）はデータ・ラッチ13'_1 乃至13'_n 各々のイネーブル入力ENに連結している。
【００５１】
本例の好ましい実施形態において、チップ選択入力はアクティブ・ローであり、従って入力Chip_Select_1は３入力ＡＮＤゲート15'および17'のアクティブ・ロー入力に連結している。ＡＮＤゲート15' は書き込み操作に応答し、信号Write_Select を受信するよう連結されるアクティブ・ロー入力および信号Write_Validを受信するよう連結されるアクティブ・ハイ入力を有する。ＡＮＤゲート17' は読み取り操作に応答し、信号Read_Select を受信するよう連結されるアクティブ・ロー入力および信号Read_Valid を受信するよう連結されるアクティブ・ハイ入力を有する。ＡＮＤゲート15'の出力はデータ・ラッチ13'_1 乃至13'_nのネガティブ・エッジ誘発クロック入力に連結している。このようにＡＮＤゲート15' はラッチ13'_1 乃至13'_n を誘発して、ＡＮＤゲート15'の出力におけるハイからローへの移行に際し各々のData_In_1 乃至Data_In_n入力から新しいデータを同時に受けさせる。ＡＮＤゲート17'の出力はトライステート・バッファ27'_1 乃至27'_n を同時に制御する。
【００５２】
図１２について、図１１のレジスタ11c_1の読み込みシーケンスはＣＰＵ／ＭＰＵ51が信号Read_Select を作動させ、選択されたデータ・レジスタ・モジュール内の特定レジスタを識別するアドレスを発行することで開始される。アドレス・デコーダ53は発行アドレスを解決すると選択されたデータ・レジスタ・モジュールのChip_Select入力を作動させる。選択データ・レジスタ・モジュールの操作デコード論理55は一旦選択データ・レジスタ・モジュール内の特定レジスタを識別すると、識別されたレジスタのRegister_Select 信号を発行する。現行操作が有効な読み込み操作であると判定すると、操作デコード論理55は信号Read_Valid も発行する。
【００５３】
Ｄラッチ13'_1 乃至13'_n は信号Register_Select におけるハイな値に応答して作動する。ＡＮＤゲート17'は信号Chip_Select およびRead_Selectにおけるローな値、ならびに信号Read_Validにおけるハイな値に応答して信号Data_Out_Enable を作動させる。その結果、トライステート・バッファ27'_1 乃至27'_nは Ｄラッチ13'_1 乃至13'_n の各々のＱ出力をそれらの対応出力、Data_Out_1 乃至Data_Out_n、に連結させる。図１２に示すように、これにより各 Output_Data_Bit において有効なデータが提供される。
【００５４】
本発明のレジスタ・アクセス操作はＣＰＵ／ＭＰＵの１つのバス・クロック・サイクルで完了できるので、従来の技術において性能を制限するいくつかの機能が取り除かれる。例えば、本高性能レジスタ・アクセス方法は従来ＣＰＵ／ＭＰＵにいつ現行サイクルを終了するかを知らせるためにレジスタまたはメモリ装置出力していた待ち信号の必要性を省く。従ってレジスタ・アクセス・サイクルはＣＰＵ／ＭＰＵのバス・サイクル速度によってのみ制限され、レジスタ装置の速度では制限されない。加えて、本方法は組み合わせ論理を利用しているため、本発明はレジスタ・ブロックをアクセスするのにクロックを必要としないので電力およびスペースを節約できる。
【００５５】
さらに、ＣＰＵ／ＭＰＵ装置に書き込みバッファが実装されている場合、書き込みバッファはレジスタ書き込みサイクルには必要なく、別のメモリ・モジュールへ同時のメモリ書き込みサイクル向けに効率的に使用でき、それにより装置へのスループットを増やすことができる。つまり、書き込みバッファが別のメモリ・モジュールに書き込まれているデータを保持する間、ＣＰＵ／ＭＰＵはレジスタ向け書き込みデータを複数バス・サイクル間保持する必要がないので本発明によるレジスタへの現行書き込み操作用のデータを出力できる。
【００５６】
さらに、本発明により特定のレジスタに書き込むことで電子装置のすべてのクロックを停止できるので真の節電モードを実施できる。クロックは同じレジスタに書き込むことで再び稼動させることができる。本発明によるレジスタはバス・クロックが必要ないので装置のクロックは節電モードをイネーブルおよびディスエーブルする目的でレジスタに書き込むために稼動している必要がない。
【００５７】
本発明は添付図面を参照して各種好ましい実施形態について説明されている。しかしながら前述の説明により各種変更および修正が当業者には明らかになるであろう。このような変更および修正は添付請求項の範囲に入る限りにおいて本発明の範囲に含まれることが意図される。
【図面の簡単な説明】
【００５８】
【図１】図１は本発明によるレジスタである。
【図２】図２は図１のレジスタによる書き込み操作のタイミング図である。
【図３】図３は図１のレジスタによる読み取り操作のタイミング図である。
【図４】図４は図１のレジスタの内部図である。
【図５】図５は本発明の別の実施形態によるレジスタである。
【図６】図６は図５のレジスタによる書き込み操作のタイミング図である。
【図７】図７は図５のレジスタの内部図である。
【図８】図８は図５のレジスタによる読み込み操作のタイミング図である。
【図９】図９は本発明の第３の実施形態による、レジスタを用いたシステムのブロック図である。
【図１０】図１０図は図９のレジスタによる書き込み操作のタイミング図である。
【図１１】図１１は図９のレジスタの内部図である。
【図１２】図１２は図９のレジスタによる読み取り操作のタイミング図である。
【符号の説明】
【００５９】
51  データ処理装置（ＣＰＵ／ＭＰＵ）
55  操作デコード論理
53  アドレス・デコーダ
11c_1  レジスタ１
11c_m  レジスタm
【図１】
2006268857.tif 000003
【図２】
2006268857.tif 000004
【図３】
2006268857.tif 000005
【図４】
2006268857.tif 000006
【図５】
2006268857.tif 000007
【図６】
2006268857.tif 000008
【図７】
2006268857.tif 000009
【図８】
2006268857.tif 000010
【図９】
2006268857.tif 000011
【図１０】
2006268857.tif 000012
【図１１】
2006268857.tif 000013
【図１２】
2006268857.tif 000014