(57)【特許請求の範囲】
【請求項１】
中央処理装置から制御信号を受け付けて、前記制御信号に応じて少なくとも１つの外部装置又は前記中央処理装置にデータを出力する制御回路であって、
前記中央処理装置との間で前記制御信号及びデータを入出力する入出力部と、
前記入出力部から入力されたデータを出力する複数の外部出力端子を含む第１の出力部と、
出力端子が前記外部装置のいずれかに接続され、前記中央処理装置が有するアドレス空間内の１つのアドレスと１対１に対応する外部フリップフロップ回路のデータ端子が、前記第１の出力部の外部出力端子への接続が想定される場合に、前記外部フリップフロップ回路と１対１に対応する対応フリップフロップ回路と、を含み、
前記入出力部を介して、前記中央処理装置から前記外部フリップフロップ回路及び前記対応フリップフロップ回路に対応するアドレスに所定のデータを書き込む制御信号を受け付けた場合には、前記外部フリップフロップ回路及び前記対応フリップフロップ回路に前記所定のデータを書き込み、
前記入出力部を介して、前記中央処理装置から前記外部フリップフロップ回路及び前記対応フリップフロップ回路に対応するアドレスのデータを読み出す制御信号を受け付けた場合には、前記対応フリップフロップ回路に保持されているデータを、前記入出力部を介して前記中央処理装置に出力することを特徴とする制御回路。
【請求項２】
請求項１に記載の制御回路において、
前記外部フリップフロップ回路と前記対応フリップフロップ回路のデータ端子には同一のデータが入力され、
前記外部フリップフロップ回路と前記対応フリップフロップ回路のクロック端子には同一のタイミング信号に基づくクロック信号が入力されることを特徴とする制御回路。
【請求項３】
請求項１又は２に記載の制御回路において、
複数の外部出力端子を含む第２の出力部と、
前記第２の出力部の外部出力端子及び前記中央処理装置が有するアドレス空間内の１つのアドレスとそれぞれ１対１に対応し、前記第２の出力部からデータを出力する出力フリップフロップ回路と、を含み、
前記入出力部を介して、前記中央処理装置から前記出力フリップフロップ回路に対応するアドレスに所定のデータを書き込む制御信号を受け付けた場合には、前記出力フリップフロップ回路に前記所定のデータを書き込み、
前記入出力部を介して、前記中央処理装置から前記出力フリップフロップ回路に対応するアドレスのデータを読み出す制御信号を受け付けた場合には、前記出力フリップフロップ回路に保持されているデータを、前記入出力部を介して前記中央処理装置に出力することを特徴とする制御回路。
【請求項４】
請求項３に記載の制御回路において、
前記第１の出力部の同一の外部出力端子にデータ端子が接続された前記外部フリップフロップ回路と前記出力フリップフロップ回路のクロック端子に、それぞれ異なるタイミング信号に基づくクロック信号が入力されることを特徴とする制御回路。
【請求項５】
請求項１乃至４に記載の制御回路において、
前記第１の出力部の同一の外部出力端子に、複数の前記外部フリップフロップ回路のデータ端子の接続が想定される場合に、前記外部フリップ回路のクロック端子にそれぞれ異なるタイミング信号に基づくクロック信号が入力されることを特徴とする制御回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御回路に関する。
【背景技術】
【０００２】
中央演算処理装置（ＣＰＵ）等からのデータに基づき外部装置を制御する場合には、外部装置の必要に応じた数の出力端子が必要になる。しかし、ＣＰＵに用意されている出力端子の数を超える出力端子数を必要とする場面も少なくない。このような場合、ＣＰＵと外部装置とを中継する制御回路（制御用ＩＣ）を設け、外部装置の制御に必要な数の出力端子をこの制御回路に持たせることが一般的である。
【特許文献１】特開平５−３６２７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来は、必要な出力端子数を備えた制御用ＩＣを用意して使用していた。しかし、必要な出力端子数はアプリケーション（製品）ごとに異なるため、全ての製品で使用できるような多数の出力端子を有する制御用ＩＣを用意すると、パッケージも大きくなる。よって実装面積も大きくなり、また、パッケージ自体も高価なものになる。
【０００４】
また、制御用ＩＣの出力端子数を最小限のものとし、それを超える数の出力端子が必要になった場合には、ＣＰＵからのデータをそのまま出力する出力端子の外部に外部フリップフロップ回路を接続し、そのフリップフロップ回路の出力端子を利用することで、実質的に出力端子の数を増やす手法もある。しかし、外部フリップフロップ回路の出力状態はＣＰＵからは確認できないため、外部フリップフロップ回路の出力状態をＣＰＵ内部で記憶しておく必要があり、ＣＰＵで動作するプログラムが煩雑になるという問題があった。また、外部フリップフロップ回路の出力状態を読み出すための端子を制御用ＩＣに新たに設けることは可能だが、端子数を減らしたいという目的が達成されなくなる。
【０００５】
本発明は、以上のような問題点に鑑みてなされたものであり、端子数を増やすことなく、外部フリップフロップ回路の出力状態をＣＰＵ等から読み出し可能な制御回路を提供することを目的とする。
【課題を解決するための手段】
【０００６】
（１）本発明にかかる制御回路は、中央処理装置から制御信号を受け付けて、前記制御信号に応じて少なくとも１つの外部装置又は前記中央処理装置にデータを出力する制御回路であって、前記中央処理装置との間で前記制御信号及びデータを入出力する入出力部と、前記入出力部から入力されたデータを出力する複数の外部出力端子を含む第１の出力部と、出力端子が前記外部装置のいずれかに接続され、前記中央処理装置が有するアドレス空間内の１つのアドレスと１対１に対応する外部フリップフロップ回路のデータ端子が、前記第１の出力部の外部出力端子への接続が想定される場合に、前記外部フリップフロップ回路と１対１に対応する対応フリップフロップ回路と、を含み、前記入出力部を介して、前記中央処理装置から前記外部フリップフロップ回路及び前記対応フリップフロップ回路に対応するアドレスに所定のデータを書き込む制御信号を受け付けた場合には、前記外部フリップフロップ回路及び前記対応フリップフロップ回路に前記所定のデータを書き込み、前記入出力部を介して、前記中央処理装置から前記外部フリップフロップ回路及び前記対応フリップフロップ回路に対応するアドレスのデータを読み出す制御信号を受け付けた場合には、前記対応フリップフロップ回路に保持されているデータを、前記入出力部を介して前記中央処理装置に出力することを特徴とする。
【０００７】
制御信号は、例えば所定のアドレスに対応するフリップフロップ回路に所定のデータを書き込む命令や、所定のアドレスに対応するフリップフロップ回路のデータを読み出す命令が含まれていてもよい。
【０００８】
外部装置は、例えばデータの入出力装置、通信装置、記憶装置、照明装置、表示装置、電源装置、モータ等、中央処理装置からの制御信号に基づき制御できる装置でもよい。
【０００９】
入出力部は、入力端子と出力端子を含む構成でもよく、入力端子と出力端子を共用する構成でもよい。また、入出力部と中央処理装置は、例えば通信バスで接続されてもよい。
【００１０】
外部フリップフロップ回路及び対応フリップフロップ回路は、データの更新タイミングを決めるクロック信号を受け付けるクロック端子を含む構成でもよい。
【００１１】
本発明によれば、中央処理装置からのデータをそのまま出力する出力端子と外部フリップフロップ回路を利用することにより、現実の外部出力端子の数を増やすことなく外部装置にデータを出力できる端子を実質的に増やすことが可能であり、さらに、中央処理装置から対応フリップフロップ回路の出力状態を読み出すことにより、新たに制御回路の端子を増やすことなく、実質的に外部フリップフロップ回路の出力状態を読み出すことができる。
【００１２】
（２）本発明にかかる制御回路は、前記外部フリップフロップ回路と前記対応フリップフロップ回路のデータ端子には同一のデータが入力され、前記外部フリップフロップ回路と前記対応フリップフロップ回路のクロック端子には同一のタイミング信号に基づくクロック信号が入力されることを特徴とする。
【００１３】
制御回路は、中央処理装置からの制御信号からクロック信号を生成するデコード部を含む構成でもよい。
【００１４】
クロック信号は、中央処理装置からの制御信号の一部をタイミング信号として、これに基づいて生成されてもよい。また、クロック信号は、制御信号の一部の信号を論理演算して生成したタイミング信号に基づいて生成してもよい。タイミング信号の基となる制御信号には、例えば、制御回路を指定するチップセレクト信号、フリップフロップ回路のアドレスを指定するアドレス信号、フリップフロップ回路にデータの書き込みを許可するライトイネーブル信号などがある。
【００１５】
本発明によれば、外部フリップフロップ回路と対応フリップフロップ回路に同一のデータを書き込むことができる。
【００１６】
（３）本発明にかかる制御回路は、複数の外部出力端子を含む第２の出力部と、前記第２の出力部の外部出力端子及び前記中央処理装置が有するアドレス空間内の１つのアドレスとそれぞれ１対１に対応し、前記第２の出力部からデータを出力する出力フリップフロップ回路と、を含み、前記入出力部を介して、前記中央処理装置から前記出力フリップフロップ回路に対応するアドレスに所定のデータを書き込む制御信号を受け付けた場合には、前記出力フリップフロップ回路に前記所定のデータを書き込み、前記入出力部を介して、前記中央処理装置から前記出力フリップフロップ回路に対応するアドレスのデータを読み出す制御信号を受け付けた場合には、前記出力フリップフロップ回路に保持されているデータを、前記入出力部を介して前記中央処理装置に出力することを特徴とする。
【００１７】
出力フリップフロップ回路は、データの更新タイミングを決めるクロック信号を受け付けるクロック端子を含む構成でもよい。
【００１８】
本発明によれば、出力フリップフロップ回路から直接出力できることで、外部フリップフロップ回路が接続されない場合でも外部装置にデータを出力することができる。
【００１９】
（４）本発明にかかる制御回路は、前記第１の出力部の同一の外部出力端子にデータ端子が接続された前記外部フリップフロップ回路と前記出力フリップフロップ回路のクロック端子に、それぞれ異なるタイミング信号に基づくクロック信号が入力されることを特徴とする。
【００２０】
制御回路は、中央処理装置からの制御信号からクロック信号を生成するデコード部を含む構成でもよい。
【００２１】
クロック信号は、中央処理装置からの制御信号の一部をタイミング信号として、これに基づいて生成されてもよい。また、クロック信号は、制御信号の一部の信号を論理演算して生成したタイミング信号に基づいて生成してもよい。タイミング信号の基となる制御信号には、例えば、制御回路を指定するチップセレクト信号、フリップフロップ回路のアドレスを指定するアドレス信号、フリップフロップ回路にデータの書き込みを許可するライトイネーブル信号などがある。
【００２２】
本発明によれば、外部フリップフロップ回路と出力フリップフロップ回路に異なるデータを書き込むことが可能となる。これにより、外部出力端子を有効に使うことができる。
【００２３】
（５）本発明にかかる制御回路は、前記第１の出力部の同一の外部出力端子に、複数の前記外部フリップフロップ回路のデータ端子の接続が想定される場合に、前記外部フリップ回路のクロック端子にそれぞれ異なるタイミング信号に基づくクロック信号が入力されることを特徴とする。
【００２４】
制御回路は、中央処理装置からの制御信号からクロック信号を生成するデコード部を含む構成でもよい。
【００２５】
クロック信号は、中央処理装置からの制御信号の一部をタイミング信号として、これに基づいて生成されてもよい。また、クロック信号は、制御信号の一部の信号を論理演算して生成したタイミング信号に基づいて生成してもよい。タイミング信号の基となる制御信号には、例えば、制御回路を指定するチップセレクト信号、フリップフロップ回路のアドレスを指定するアドレス信号、フリップフロップ回路にデータの書き込みを許可するライトイネーブル信号などがある。
【００２６】
本発明によれば、複数の外部フリップフロップ回路に異なるデータを書き込むことができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明を適用した実施の形態について図面を参照して説明する。ただし、本発明は以下の実施の形態に限定されるものではない。また、本発明は、以下の内容を自由に組み合わせたものを含むものとする。
【００２８】
図１乃至図４は、本発明を適用した実施の形態に係る制御回路の一例について説明するための図である。
【００２９】
（１）構成
図１は本発明を適用した実施の形態に係る制御回路の構成の一例を示した図である。
【００３０】
制御回路１００は、入出力部１０１を含む。入出力部１０１は、中央処理装置２００との間で制御信号及びデータを入出力する。入出力部１０１は、入力端子と出力端子を含む構成でもよく、入力端子と出力端子を共用する構成であってもよい。また、入出力部１０１と中央処理装置２００との間は、例えば通信バス１３０で接続されていてもよい。中央処理装置２００は、内部にアドレス空間２０１を含む。
【００３１】
制御回路１００は、第１の出力部１１０を含む。第１の出力部１１０は、入出力部１０１で受け取ったデータを、外部フリップフロップ回路３０１に出力する。第１の出力部１１０は、複数の外部出力端子１１１を含む。本実施の形態においては、外部出力端子１１１−１から１１１−ｍまでのｍ個の外部出力端子を含んでいる。外部装置４００は、例えばデータの入出力装置、通信装置、記憶装置、照明装置、表示装置、電源装置、モータ等、中央処理装置２００からの制御信号に基づき制御できる装置であってもよい。
【００３２】
外部フリップフロップ回路３０１は、中央処理装置２００が有するアドレス空間２０１内の１のアドレスと１対１に対応する。外部フリップフロップ回路３０１は、クロック端子、データ端子、リセット端子（クリア端子）、出力端子を含む。外部フリップフロップ回路３０１の出力端子は、所定の外部装置４００に接続され、所定のデータを出力する。
【００３３】
本実施の形態では、外部フリップフロップ回路３０１−１から３０１−ｋまでのｋ個の外部フリップフロップ回路が、各外部出力端子１１１に１つずつ接続されている。なお、外部フリップフロップ回路３０１は全ての外部出力端子１１１に接続されている必要はない。また、１つの外部出力端子１１１に複数の外部フリップフロップ回路３０１が接続されてもよい。
【００３４】
制御回路１００は、第２の出力部１１２を含んでもよい。第２の出力部１１２は、出力フリップフロップ回路１０４の出力データを、所定の外部装置４００に出力する。第２の出力部１１２は、複数の外部出力端子１１３を含む。本実施の形態においては、外部出力端子１１３−１から１１３−ｎまでのｎ個の外部出力端子を含んでいる。
【００３５】
制御回路１００は、対応フリップフロップ回路１０３を含む。対応フリップフロップ回路１０３は、クロック端子、データ端子、リセット端子（クリア端子）、出力端子を含む。対応フリップフロップ回路１０３は、外部フリップフロップ回路３０１と１対１に対応する。対応フリップフロップ回路１０３のデータ端子には、入出力部１０１で受け取ったデータが入力される。本実施の形態においては、対応フリップフロップ回路１０３−１のデータ端子に入力されるデータと、外部出力端子１１１−１から出力されるデータは同一である。対応フリップフロップ回路１０３の出力端子は、後述する出力切替部１０７を介して入出力部１０１に接続される。
【００３６】
本実施の形態では、制御回路１００は、各外部フリップフロップ回路３０１に対応して、対応フリップフロップ回路１０３−１から１０３−ｋまでのｋ個の対応フリップフロップ回路を含んでいる。なお、対応フリップフロップ回路は、接続が想定される外部フリップフロップ回路の数だけあればよく、例えば現実には接続されていない外部フリップフロップ回路と対応する場合も含む。
【００３７】
制御回路１００は、出力フリップフロップ回路１０４を含んでもよい。出力フリップフロップ回路１０４は、クロック端子、データ端子、リセット端子（クリア端子）、出力端子を含む。出力フリップフロップ回路１０４は、中央処理装置２００が有するアドレス空間２０１内の１のアドレスと１対１に対応する。出力フリップフロップ回路１０４のデータ端子には、入出力部１０１で受け取ったデータが入力される。本実施の形態においては、外部出力端子１１３−１から１１３−ｎまでのｎ個の外部出力端子を含んでいるため、出力フリップフロップ回路１０４も、各外部出力端子に対応してｎ個設けられている。なお、出力フリップフロップ回路１０４の出力端子は、第２の出力部１１２を介して所定の外部装置４００に接続される。出力フリップフロップ回路１０４の出力端子は、後述する出力切替部１０８を介して入出力部１０１に接続される。
【００３８】
なお、対応フリップフロップ回路１０３と出力フリップフロップ回路１０４は、内部フリップフロップマトリクス１２０として一体に構成してもよい。
【００３９】
制御回路１００は、デコード部１０５を含んでもよい。デコード部１０５は、中央処理装置２００からの制御信号に含まれるアドレスや書き込み又は読み出しの命令を判別してもよい。デコード部１０５は、中央処理装置２００からの制御信号に含まれるアドレスに対応する外部フリップフロップ回路３０１、対応フリップフロップ回路１０３又は出力フリップフロップ回路１０４のクロック端子にクロック信号を出力してもよい。また、デコード部１０５は、中央処理装置２００からの制御信号に含まれる書き込み又は読み出しの命令を判別した結果を後述する出力切替部１０７及び出力切替部１０８に出力してもよい。
【００４０】
制御回路１００は、リセット信号生成部１０６を含んでもよい。リセット信号生成部１０６は、制御回路１００の外部からの信号に基づき、外部フリップフロップ回路３０１、対応フリップフロップ回路１０３及び出力フリップフロップ回路１０４のリセット端子（クリア端子）に所定の信号を出力し、外部フリップフロップ回路３０１、対応フリップフロップ回路１０３及び出力フリップフロップ回路１０４の初期値を設定してもよい。なお、外部からの信号は中央処理装置２００が出力してもよい。
【００４１】
制御回路１００は、出力切替部１０７を含んでもよい。出力切替部１０７は、対応フリップフロップ回路１０３の出力端子に接続され、デコード部１０５の出力結果に基づき、データを外部に出力しない通常状態と、入出力部１０１を介して中央処理装置２００に出力する読み出し状態を切り替えてもよい。
【００４２】
制御回路１００は、出力切替部１０８を含んでもよい。出力切替部１０８は、出力フリップフロップ回路１０４の出力端子に接続され、デコード部１０５の出力結果に基づき、データを第２の出力部１１２を介して外部装置４００へのみ出力する通常状態と、データを第２の出力部１１２を介して外部装置４００へ出力するとともに入出力部１０１を介して中央処理装置２００に出力する読み出し状態を切り替えてもよい。
【００４３】
なお、本実施の形態にかかる制御回路１００は、例えば専用の半導体集積回路で構成してもよく、またＣＰＬＤ(Complex Programmable Logic Device)で構成してもよい。また、外部フリップフロップ回路３０１は、複数のフリップフロップ回路を含むクロック入力付きの汎用フリップフロップＩＣで構成してもよい。
【００４４】
（２）動作
（ａ）外部フリップフロップ回路及び対応フリップフロップ回路への書き込み動作
はじめに、中央処理装置２００から外部フリップフロップ回路３０１及び対応フリップフロップ回路１０３に対応するアドレスに所定のデータを書き込む制御信号を受け付けた場合に、外部フリップフロップ回路３０１及び対応フリップフロップ回路１０３に所定のデータを書き込む動作を説明する。
【００４５】
図２は、図１の制御回路において、中央処理装置２００の１クロックの制御信号に基づいて、外部フリップフロップ回路３０１と対応フリップフロップ回路１０３にデータを書き込む動作を説明するためのタイミングチャートである。
【００４６】
図２の信号（Ａ）はチップセレクト信号である。チップセレクト信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。チップセレクト信号は、中央処理装置２００に複数の制御回路が接続している場合に、命令を送る制御回路を特定するために用いられる。本実施の形態では、チップセレクト信号がＬｏｗレベルのときに制御回路１００が選択されるように構成されている。
【００４７】
図２の信号（Ｂ）はアドレス信号である。アドレス信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。アドレス信号は、アドレス空間２０１内のアドレスと対応し、データを書き込むフリップフロップ回路を特定するために用いられる。本実施の形態では、デコード部１０５により、アドレス信号と各フリップフロップ回路との対応がとられるように構成されている。
【００４８】
図２の信号（Ｃ）は入力データ信号である。入力データ信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。入力データ信号は、各フリップフロップ回路に書き込まれるデータを表す。
【００４９】
図２の信号（Ｄ）はライトイネーブル信号である。ライトイネーブル信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。ライトイネーブル信号は、チップセレクト信号及びアドレス信号により特定されたフリップフロップ回路に、入力データ信号に表されたデータの書き込みを許可するために用いられる。本実施の形態では、ライトイネーブル信号がＬｏｗレベルのときに、特定されたフリップフロップ回路にデータが書き込まれるように構成されている。
【００５０】
図２の信号（Ｅ）は、デコード部１０５の内部信号である、アドレスデコード信号である。アドレスデコード信号は、入出力部１０１から入力されたチップセレクト信号及びアドレス信号によりデータを書き込むフリップフロップ回路を特定する信号である。本実施の形態では、チップセレクト信号及びアドレス信号のいずれもがＬｏｗレベルのときに、アドレスデコード信号がＨｉｇｈレベルになるように構成されている。本実施の形態では、ライトイネーブル信号がＨｉｇｈレベルからＬｏｗレベルに変化して書き込みが許可された後にアドレスデコード信号を生成しているため、チップセレクト信号及びアドレス信号に比べて、デコード部１０５がデコードに要する時間（デコード時間）Ｔ１だけ遅れてアドレスデコード信号が生成されている。
【００５１】
図２の信号（Ｆ）は、デコード部１０５の出力信号であり、対応フリップフロップ回路１０３のクロック端子に入力される第１のクロック信号である。第１のクロック信号は、対応フリップフロップ回路１０３が保持するデータの更新タイミングを決定する。本実施の形態では、第１のクロック信号がＬｏｗレベルからＨｉｇｈレベルに変化するタイミングで、対応フリップフロップ回路１０３が保持するデータが、対応フリップフロップ回路１０３のデータ端子に入力されている入力データ信号が表すデータに更新されるように構成されている。また、本実施の形態では、アドレスデコード信号がＬｏｗレベルからＨｉｇｈレベルに変化して対応フリップフロップ回路１０３が特定された後に、デコード部１０５がライトイネーブル信号を反転して第１のクロック信号を生成しているため、ライトイネーブル信号に比べて、デコード部１０５がデコードに要する時間（デコード時間）Ｔ２だけ遅れて第１のクロック信号が生成されている。すなわち、本実施の形態では、アドレスデコード信号と、ライトイネーブル信号の反転信号との積をタイミング信号として、第１のクロック信号を生成している。
【００５２】
図２の信号（Ｇ）は、対応フリップフロップ回路１０３の出力信号である。対応フリップフロップ回路１０３の出力信号は、第１のクロック信号に対応して更新された後のデータ、すなわち対応フリップフロップ回路１０３に保持されているデータを対応フリップフロップ回路１０３の出力端子から出力した信号である。本実施の形態では、対応フリップフロップ回路１０３の出力信号は、第１のクロック信号がＬｏｗレベルからＨｉｇｈレベルに変化するタイミングで対応フリップフロップ回路１０３に保持されているデータが出力されている。
【００５３】
図２の信号（Ｈ）は、デコード部１０５の出力信号であり、外部フリップフロップ回路３０１のクロック端子に入力される第２のクロック信号である。第２のクロック信号は、外部フリップフロップ回路３０１が保持するデータの更新タイミングを決定する。本実施の形態では、第２のクロック信号がＬｏｗレベルからＨｉｇｈレベルに変化するタイミングで、外部フリップフロップ回路３０１が保持するデータが、外部フリップフロップ回路３０１のデータ端子に入力されている入力データ信号が表すデータに更新されるように構成されている。また、本実施の形態では、第１のクロック信号と同様に、アドレスデコード信号がＬｏｗレベルからＨｉｇｈレベルに変化して対応フリップフロップ回路１０３が特定された後に、デコード部１０５がライトイネーブル信号を反転して第２のクロック信号を生成している。すなわち、本実施の形態では、アドレスデコード信号と、ライトイネーブル信号の反転信号との積をタイミング信号として、第２のクロック信号を生成している。なお、本実施の形態では、デコード部１０５が第１のクロック信号に従属して第２のクロック信号を生成しているため、第１のクロック信号に比べて、第１のクロック信号のパルス幅Ｔ３よりも短い時間Ｔ４だけ遅れて第２のクロック信号が生成されているが、Ｔ４は０でもよい。
【００５４】
図２の信号（Ｉ）は、外部フリップフロップ回路３０１の出力信号である。外部フリップフロップ回路３０１の出力信号は、第２のクロック信号に対応して更新された後のデータ、すなわち外部フリップフロップ回路３０１に保持されているデータを外部フリップフロップ回路３０１の出力端子から出力した信号である。本実施の形態では、外部フリップフロップ回路３０１の出力信号は、第２のクロック信号がＬｏｗレベルからＨｉｇｈレベルに変化するタイミングで外部フリップフロップ回路３０１に保持されているデータが出力されている。
【００５５】
以上の動作により、中央処理装置２００の１クロックの制御信号に基づいて、外部フリップフロップ回路３０１と対応フリップフロップ回路１０３に同一のデータを書き込むことができる。
【００５６】
なお、リセット信号生成部１０６が、外部フリップフロップ回路３０１のクリア端子（リセット端子）と対応フリップフロップ回路１０３のクリア端子（リセット端子）に対して同一のタイミングでリセット信号を出力することにより、外部フリップフロップ回路３０１と対応フリップフロップ回路１０３の初期値を揃えることができる。
【００５７】
（ｂ）対応フリップフロップ回路からの読み出し動作
次に、入出力部１０１を介して、中央処理装置２００から外部フリップフロップ回路３０１及び対応フリップフロップ回路１０３に対応するアドレスのデータを読み出す制御信号を受け付けた場合に、対応フリップフロップ回路１０３に保持されているデータを、入出力部１０１を介して中央処理装置２００に出力する動作、すなわち、対応フリップフロップ回路１０３からデータを読み出す動作を説明する。
【００５８】
図３は、図１の制御回路において、中央処理装置２００の１クロックの制御信号に基づいて、対応フリップフロップ回路１０３からデータを読み出す動作を説明するためのタイミングチャートである。
【００５９】
図３の信号（Ｊ）はチップセレクト信号である。チップセレクト信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。チップセレクト信号は、中央処理装置２００に複数の制御回路が接続している場合に、命令を送る制御回路を特定するために用いられる。本実施の形態では、チップセレクト信号がＬｏｗレベルのときに制御回路１００が選択されるように構成されている。
【００６０】
図３の信号（Ｋ）はアドレス信号である。アドレス信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。アドレス信号は、アドレス空間２０１内のアドレスと対応し、データを読み出すフリップフロップ回路を特定するために用いられる。本実施の形態では、デコード部１０５により、アドレス信号と各フリップフロップ回路との対応がとられるように構成されている。
【００６１】
図３の信号（Ｌ）は出力データ信号である。出力データ信号は、制御回路１００から入出力部１０１を介して出力し、中央処理装置２００に入力される。すなわち、本動作において中央処理装置２００が読み出すデータを表す信号である。出力データ信号の生成方法は後述する。
【００６２】
図３の信号（Ｍ）はリードイネーブル信号である。リードイネーブル信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。リードイネーブル信号は、チップセレクト信号及びアドレス信号により特定されたフリップフロップ回路に、データの読み出しを許可するために用いられる。本実施の形態では、リードイネーブル信号がＬｏｗレベルのときに、特定されたフリップフロップ回路からデータが読み出されるように構成されている。
【００６３】
図３の信号（Ｎ）は、デコード部１０５の内部信号である、アドレスデコード信号である。アドレスデコード信号は、入出力部１０１から入力されたチップセレクト信号及びアドレス信号によりデータを読み出すフリップフロップ回路を特定する信号である。本実施の形態では、チップセレクト信号及びアドレス信号のいずれもがＬｏｗレベルのときに、アドレスデコード信号がＨｉｇｈレベルになるように構成されている。本実施の形態では、リードイネーブル信号がＨｉｇｈレベルからＬｏｗレベルに変化して読み出しが許可された後にアドレスデコード信号を生成しているため、チップセレクト信号及びアドレス信号に比べて、デコード部１０５がデコードに要する時間（デコード時間）Ｔ５だけ遅れてアドレスデコード信号が生成されている。
【００６４】
図３の信号（Ｏ）は、デコード部１０５の出力信号である、アウトプットイネーブル信号である。アウトプットイネーブル信号は、出力切替部１０７に入力する。アウトプットイネーブル信号が入力された出力切替部１０７は、対応フリップフロップ回路１０３の出力端子からの出力信号を、外部に出力しない通常状態から、入出力部１０１から通信バス１３０を介して中央処理装置２００に出力する読み出し状態へと切り替える。本実施の形態では、アウトプットイネーブル信号がＨｉｇｈレベルのときに読み出し状態になるように構成されている。また、本実施の形態では、アドレスデコード信号がＬｏｗレベルからＨｉｇｈレベルに変化して対応フリップフロップ回路１０３が特定された後にアウトプットイネーブル信号を生成しているため、リードイネーブル信号に比べて、デコード部１０５がデコードに要する時間（デコード時間）Ｔ６だけ遅れてアウトプットイネーブル信号が生成されている。なお、アウトプットイネーブル信号は、書き込み動作の場合に図２で説明したライトイネーブル信号が入力されていない場合にのみ出力してもよい。
【００６５】
そして、アウトプットイネーブル信号により読み出し状態へと切り替えられると、上述した出力データ信号が入出力部１０１を介して中央処理装置２００へ出力される。本実施の形態では、出力データ信号は、チップセレクト信号及びアドレス信号とアウトプットイネーブル信号が重なる時間Ｔ７に出力されるように構成されている。
【００６６】
以上の動作により、中央処理装置２００の１クロックの制御信号に基づいて、対応フリップフロップ回路１０３からデータを読み出すことができる。そして、対応フリップフロップ回路１０３と外部フリップフロップ回路３０１には、前述した書き込み動作により同じデータが書き込まれているので、中央処理装置２００が外部フリップフロップ回路３０１からデータを読み出すことと同じ結果を得ることができる。
【００６７】
（ｃ）出力フリップフロップ回路への書き込み動作
次に、入出力部１０１を介して、中央処理装置２００から出力フリップフロップ回路１０４に対応するアドレスに所定のデータを書き込む制御信号を受け付けた場合に、出力フリップフロップ回路１０４に所定のデータを書き込む動作を説明する。
【００６８】
図４は、図１の制御回路において、中央処理装置２００の１クロックの制御信号に基づいて、出力フリップフロップ回路１０４にデータを書き込む動作を説明するためのタイミングチャートである。
【００６９】
図４の信号（Ｐ）はチップセレクト信号である。チップセレクト信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。チップセレクト信号は、中央処理装置２００に複数の制御回路が接続している場合に、命令を送る制御回路を特定するために用いられる。本実施の形態では、チップセレクト信号がＬｏｗレベルのときに制御回路１００が選択されるように構成されている。
【００７０】
図４の信号（Ｑ）はアドレス信号である。アドレス信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。アドレス信号は、アドレス空間２０１内のアドレスと対応し、データを書き込むフリップフロップ回路を特定するために用いられる。本実施の形態では、デコード部１０５により、アドレス信号と各フリップフロップ回路との対応がとられるように構成されている。
【００７１】
図４の信号（Ｒ）は入力データ信号である。入力データ信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。入力データ信号は、各フリップフロップ回路に書き込まれるデータを表す。
【００７２】
図４の信号（Ｓ）はライトイネーブル信号である。ライトイネーブル信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。ライトイネーブル信号は、チップセレクト信号及びアドレス信号により特定されたフリップフロップ回路に、入力データ信号に表されたデータの書き込みを許可するために用いられる。本実施の形態では、ライトイネーブル信号がＬｏｗレベルのときに、特定されたフリップフロップ回路にデータが書き込まれるように構成されている。
【００７３】
図４の信号（Ｔ）は、デコード部１０５の内部信号である、アドレスデコード信号である。アドレスデコード信号は、入出力部１０１から入力されたチップセレクト信号及びアドレス信号によりデータを書き込むフリップフロップ回路を特定する信号である。本実施の形態では、チップセレクト信号及びアドレス信号のいずれもがＬｏｗレベルのときに、アドレスデコード信号がＨｉｇｈレベルになるように構成されている。本実施の形態では、ライトイネーブル信号がＨｉｇｈレベルからＬｏｗレベルに変化して書き込みが許可された後にアドレスデコード信号を生成しているため、チップセレクト信号及びアドレス信号に比べて、デコード部１０５がデコードに要する時間（デコード時間）Ｔ８だけ遅れてアドレスデコード信号が生成されている。
【００７４】
図４の信号（Ｕ）は、デコード部１０５の出力信号であり、出力フリップフロップ回路１０４のクロック端子に入力される第３のクロック信号である。第３のクロック信号は、出力フリップフロップ回路１０４が保持するデータの更新タイミングを決定する。本実施の形態では、第３のクロック信号がＬｏｗレベルからＨｉｇｈレベルに変化するタイミングで、出力フリップフロップ回路１０４が保持するデータが、出力フリップフロップ回路１０４のデータ端子に入力されている入力データ信号が表すデータに更新されるように構成されている。また、本実施の形態では、アドレスデコード信号がＬｏｗレベルからＨｉｇｈレベルに変化して出力フリップフロップ回路１０４が特定された後に、デコード部１０５がライトイネーブル信号を反転して第１のクロック信号を生成しているため、ライトイネーブル信号に比べて、デコード部１０５がデコードに要する時間（デコード時間）Ｔ９だけ遅れて第３のクロック信号が生成されている。すなわち、本実施の形態では、アドレスデコード信号と、ライトイネーブル信号の反転信号との積をタイミング信号として、第３のクロック信号を生成している。
【００７５】
なお、前述したアドレス空間２００において、出力フリップフロップ回路１０４は対応フリップフロップ回路１０３及び外部フリップフロップ回路３０１とは異なるアドレスに１対１で対応している。したがって、第３のクロック信号は、前述した第１のクロック信号及び第２のクロック信号とは重ならないタイミングで生成される。
【００７６】
図４の信号（Ｖ）は、出力フリップフロップ回路１０４の出力信号である。出力フリップフロップ回路１０４の出力信号は、出力フリップフロップ回路１０４の出力端子から、第３のクロック信号に対応して書き込まれたデータ、すなわち出力フリップフロップ回路１０４に保持されているデータを出力した信号である。本実施の形態では、出力フリップフロップ回路１０４の出力信号は、第３のクロック信号がＬｏｗレベルからＨｉｇｈレベルに変化するタイミングで出力フリップフロップ回路１０４に保持されているデータが出力されている。
【００７７】
以上の動作により、中央処理装置２００の１クロックの制御信号に基づいて、出力フリップフロップ回路１０４にデータを書き込むことができる。
【００７８】
なお、出力フリップフロップ回路１０４は、対応フリップフロップ回路１０３とは異なり、外部フリップフロップ回路３０１と１対１に対応するフリップフロップ回路ではない。したがって、出力フリップフロップ回路１０４に書き込むデータと同じデータを外部フリップフロップ回路３０１に書き込む動作は行わない。
【００７９】
また、リセット信号生成部１０６が、出力フリップフロップ回路１０４のクリア端子（リセット端子）に対してリセット信号を出力することにより、出力フリップフロップ回路１０４の初期値を設定することができる。
【００８０】
（ｄ）出力フリップフロップ回路からの読み出し動作
次に、入出力部１０１を介して、中央処理装置２００から出力フリップフロップ回路１０４に対応するアドレスのデータを読み出す制御信号を受け付けた場合に、出力フリップフロップ回路１０４に保持されているデータを、入出力部１０１を介して中央処理装置２００に出力する動作、すなわち、出力フリップフロップ回路１０４からデータを読み出す動作を説明する。
【００８１】
図１の制御回路において、中央処理装置２００の１クロックの制御信号に基づいて、出力フリップフロップ回路１０４からデータを読み出す動作は、対応フリップフロップ回路１０３からデータを読み出す動作とほぼ同じであるので、再び図３のタイミングチャートを用いて説明する。
【００８２】
図３の信号（Ｊ）はチップセレクト信号である。チップセレクト信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。チップセレクト信号は、中央処理装置２００に複数の制御回路が接続している場合に、命令を送る制御回路を特定するために用いられる。本実施の形態では、チップセレクト信号がＬｏｗレベルのときに制御回路１００が選択されるように構成されている。
【００８３】
図３の信号（Ｋ）はアドレス信号である。アドレス信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。アドレス信号は、アドレス空間２０１内のアドレスと対応し、データを読み出すフリップフロップ回路を特定するために用いられる。本実施の形態では、デコード部１０５により、アドレス信号と各フリップフロップ回路との対応がとられるように構成されている。
【００８４】
図３の信号（Ｌ）は出力データ信号である。出力データ信号は、制御回路１００から入出力部１０１を介して出力し、中央処理装置２００に入力される。すなわち、本動作において中央処理装置２００が読み出すデータを表す信号である。出力データ信号の生成方法は後述する。
【００８５】
図３の信号（Ｍ）はリードイネーブル信号である。リードイネーブル信号は、中央処理装置２００から出力され、通信バス１３０を介して入出力部１０１に入力される制御信号の１つである。リードイネーブル信号は、チップセレクト信号及びアドレス信号により特定されたフリップフロップ回路に、データの読み出しを許可するために用いられる。本実施の形態では、リードイネーブル信号がＬｏｗレベルのときに、特定されたフリップフロップ回路からデータが読み出されるように構成されている。
【００８６】
図３の信号（Ｎ）は、デコード部１０５の内部信号である、アドレスデコード信号である。アドレスデコード信号は、入出力部１０１から入力されたチップセレクト信号及びアドレス信号によりデータを読み出すフリップフロップ回路を特定する信号である。本実施の形態では、チップセレクト信号及びアドレス信号のいずれもがＬｏｗレベルのときに、アドレスデコード信号がＨｉｇｈレベルになるように構成されている。本実施の形態では、リードイネーブル信号がＨｉｇｈレベルからＬｏｗレベルに変化して読み出しが許可された後にアドレスデコード信号を生成しているため、チップセレクト信号及びアドレス信号に比べて、デコード部１０５がデコードに要する時間（デコード時間）Ｔ５だけ遅れてアドレスデコード信号が生成されている。
【００８７】
図３の信号（Ｏ）は、デコード部１０５の出力信号である、アウトプットイネーブル信号である。アウトプットイネーブル信号は、出力切替部１０８に入力する。アウトプットイネーブル信号が入力された出力切替部１０８は、出力フリップフロップ回路１０４の出力端子からの出力信号を、第２の出力部１１２を介して外部装置４００へのみ出力する通常状態から、第２の出力部１１２を介して外部装置４００へ出力するとともに入出力部１０１から通信バス１３０を介して中央処理装置２００に出力する読み出し状態へと切り替える。本実施の形態では、アウトプットイネーブル信号がＨｉｇｈレベルのときに読み出し状態になるように構成されている。また、本実施の形態では、アドレスデコード信号がＬｏｗレベルからＨｉｇｈレベルに変化して出力フリップフロップ回路１０４が特定された後にアウトプットイネーブル信号を生成しているため、リードイネーブル信号に比べて、デコード部１０５がデコードに要する時間（デコード時間）Ｔ６だけ遅れてアウトプットイネーブル信号が生成されている。なお、アウトプットイネーブル信号は、書き込み動作の場合に図４で説明したライトイネーブル信号が入力されていない場合にのみ出力してもよい。
【００８８】
そして、アウトプットイネーブル信号により読み出し状態へと切り替えられると、上述した出力データ信号が入出力部１０１を介して中央処理装置２００へ出力される。本実施の形態では、出力データ信号は、チップセレクト信号及びアドレス信号とアウトプットイネーブル信号が重なる時間Ｔ７に出力されるように構成されている。
【００８９】
以上の動作により、中央処理装置２００の１クロックの制御信号に基づいて、出力フリップフロップ回路１０４からデータを読み出すことができる。
【００９０】
（３）本実施の形態の効果
本実施の形態にかかる制御回路は以上のように構成されている。この制御回路によると、外部フリップフロップ回路３０１と１対１に対応する対応フリップフロップ回路１０３を用い、入出力部１０１を介して、中央処理装置２００から外部フリップフロップ回路３０１に対応するアドレスに所定のデータを書き込む制御信号を受け付けた場合には、外部フリップフロップ回路３０１及び対応フリップフロップ回路１０３に所定のデータを書き込み、入出力部１０１を介して、中央処理装置２００から外部フリップフロップ回路３０１に対応するアドレスのデータを読み出す制御信号を受け付けた場合には、対応フリップフロップ回路１０３に保持されているデータを、入出力部を介して中央処理装置に出力するため、中央処理装置からのデータをそのまま出力する第１の出力部１１０と外部フリップフロップ回路３０１を利用することにより、現実の外部出力端子の数を増やすことなく外部装置４００にデータを出力できる端子を実質的に増やすことが可能であり、さらに、中央処理装置２００から対応フリップフロップ回路１０３の出力状態を読み出すことにより、新たに制御回路１００の端子を増やすことなく、実質的に外部フリップフロップ回路３０１の出力状態を読み出すことができる。
【００９１】
また、外部フリップフロップ回路３０１と対応フリップフロップ回路１０３のデータ端子には同一のデータが入力され、外部フリップフロップ回路３０１と対応フリップフロップ回路１０３のクロック端子には同一のタイミング信号に基づくクロック信号が入力されているので、外部フリップフロップ回路３０１と対応フリップフロップ回路１０３に同一のデータを書き込むことができる。
【００９２】
さらに、外部出力端子１１１及び中央処理装置２００が有するアドレス空間内２０１の１つのアドレスとそれぞれ１対１に対応した出力フリップフロップ回路１０４を有することにより、出力フリップフロップ回路１０４から直接出力できることで、外部フリップフロップ回路３０１が接続されない場合でも外部装置４００にデータを出力することができる。
【００９３】
また、同一の外部出力端子１１１にデータ端子が接続された外部フリップフロップ回路３０１と出力フリップフロップ回路１０４のクロック端子に、それぞれ異なるタイミング信号に基づくクロック信号が入力されることにより、外部フリップフロップ回路３０１と出力フリップフロップ回路１０４に異なるデータを書き込むことが可能となる。これにより、外部出力端子１１１を有効に使うことができる。
【００９４】
加えて、同一の前記外部出力端子１１１に複数の外部フリップフロップ回路３０１のデータ端子が接続された場合には、それぞれアドレス空間２０１内の異なるアドレスに１対１で対応することになるので、外部フリップ回路３０１のクロック端子にそれぞれ異なるタイミング信号に基づくクロック信号が入力され、複数の外部フリップフロップ回路３０１に異なるデータを書き込むことができる。
【００９５】
さらに、本実施の形態にかかる制御回路において、例えば現実には接続されていない外部フリップフロップ回路３０１に対応する対応フリップフロップ回路１０３にデータが入力されたとしても、外部出力端子１１１から出力されるデータが無視されるだけで、特に不都合は発生しない。したがって、外部フリップフロップ回路３０１の接続の有無にかかわらず、中央処理装置２００では同一のプログラムを実行することができ、プログラムの互換性、汎用性が高い制御回路を実現することができる。
【００９６】
本発明は、実施の形態で説明した構成と実質的に同一の構成（例えば、機能、方法及び結果が同一の構成、あるいは目的及び効果が同一の構成）を含む。また、本発明は、実施の形態で説明した構成の本質的でない部分を置き換えた構成を含む。また、本発明は、実施の形態で説明した構成と同一の作用効果を奏する構成又は同一の目的を達成することができる構成を含む。また、本発明は、実施の形態で説明した構成に公知技術を付加した構成を含む。
【００９７】
例えば、本実施の形態では、外部フリップフロップ回路３０１−１から３０１−ｋまでのｋ個の外部フリップフロップ回路が、各外部出力端子１１１に１つずつ接続されているが、外部フリップフロップ回路３０１は全ての外部出力端子１１１に接続されている必要はなく、また、１つの外部出力端子１１１に複数の外部フリップフロップ回路３０１が接続されてもよい。すなわち、外部装置４００の必要に応じて、外部フリップフロップ回路３０１の数は任意に設定することが可能である。
【図面の簡単な説明】
【００９８】
【図１】本発明を適用した実施の形態に係る制御回路の構成の一例。
【図２】本発明を適用した実施の形態に係る制御回路の動作を説明するためのタイミングチャート。
【図３】本発明を適用した実施の形態に係る制御回路の動作を説明するためのタイミングチャート。
【図４】本発明を適用した実施の形態に係る制御回路の動作を説明するためのタイミングチャート。
【符号の説明】
【００９９】
１００  制御回路、１０１  入出力部、１０３  対応フリップフロップ回路、１０４  出力フリップフロップ回路、１０５  デコード部、１０６  リセット信号生成部、１０７  出力切替部、１０８  出力切替部、１１０  第１の出力部、１１１  外部出力端子、１１２  第２の出力部、１１３  外部出力端子、１２０  内部フリップフロップマトリクス、１３０  通信バス、２００  中央処理装置、２０１  アドレス空間、３０１  外部フリップフロップ回路、４００  外部装置
【図１】
0005071655.tif 000002
【図２】
0005071655.tif 000003
【図３】
0005071655.tif 000004
【図４】
0005071655.tif 000005