(57)【要約】【課題】データ転送クロックの初期値のＨ、Ｌの双方に対応して適正にデータ転送を行う。【解決手段】先ず、シフトレジスタ５のクロック入力として、データ転送クロックＣＬよりも高周波とされるマスタークロックＭＣＫを入力する。そして、このようにシフトレジスタ５のシフトクロックとして供給されるマスタークロックＭＣＫのエッジタイミングのうち、上記データ転送クロックＣＬに基づく取り込みタイミングの後のエッジタイミングに基づいて、データのシフトを行うようにする。これにより、シフトレジスタ５のデータシフトは常にデータの取り込み後に行われるようになり、データ取り込みタイミングよりも以前にデータのシフトが行われてしまうことを防止することができる。【選択図】        図２
2004348225.tif 000002
【特許請求の範囲】
【請求項１】
データの出力を許可するチップイネーブル信号と、上記データが転送されるべき転送先のデータの取り込みタイミングを示すデータ転送クロックとに基づいて、シフトレジスタに保持されたデータを転送するデータ転送回路において、
上記データ転送クロックよりも高い周波数を有する高周波クロックに応じてデータをシフトするシフトレジスタと、
上記高周波クロックの論理レベルが第１のレベルから第２のレベルへ遷移する複数の遷移タイミングのうち、上記データ転送クロックに基づく取り込みタイミングの後に上記論理レベルが上記第１のレベルから上記第２のレベルへ遷移する所定のタイミングに基づいて、上記シフトレジスタに上記シフトを実行させる制御手段と、
を備えることを特徴とするデータ転送回路。
【請求項２】
上記制御手段は、
上記データ転送クロックから上記シフトレジスタに対するイネーブル信号を生成して上記シフトレジスタに供給する、
ことを特徴とする請求項１に記載のデータ転送回路。
【請求項３】
上記高周波クロックは、
当該データ転送回路が備えられたデータ処理装置において使用されるマスタークロックとされる、
ことを特徴とする請求項１に記載のデータ転送回路。
【請求項４】
データの出力を許可するチップイネーブル信号と、上記データが転送されるべき転送先のデータの取り込みタイミングを示すデータ転送クロックとに基づいて、シフトレジスタに保持されたデータを転送するデータ転送方法において、
上記データ転送クロックよりも高い周波数を有する高周波クロックに応じて上記シフトレジスタにデータをシフトさせると共に、
上記高周波クロックの論理レベルが第１のレベルから第２のレベルに遷移する複数の遷移タイミングのうち、上記データ転送クロックに基づく取り込みタイミングの後に、上記論理レベルが上記第１のレベルから上記第２のレベルに遷移する所定のタイミングに基づいて、上記シフトレジスタに上記シフトを実行させる、
ことを特徴とするデータ転送方法。
【請求項５】
所定の信号処理を実行する信号処理手段と、
上記信号処理手段により生成されたデータの出力を許可するチップイネーブル信号と、上記データが転送されるべき転送先のデータの取り込みタイミングを示すデータ転送クロックとに基づいて、上記データを転送するデータ転送回路とを備え、
上記データ転送回路は、
上記データを保持すると共に、上記データ転送クロックよりも高い周波数を有する高周波クロックに応じて上記データをシフトするシフトレジスタと、
上記高周波クロックの論理レベルが第１のレベルから第２のレベルへ遷移する複数の遷移タイミングのうち、上記データ転送クロックに基づく取り込みタイミングの後に上記論理レベルが上記第１のレベルから上記第２のレベルへ遷移する所定のタイミングに基づいて、上記シフトレジスタに上記シフトを実行させる制御手段とを含む、
ことを特徴とするデータ処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、装置間でのデータ転送を行うためのデータ転送回路として、特にシリアル通信によるデータ転送に適したデータ転送回路と、そのデータ転送方法に関する。また、このようなデータ転送回路が内蔵されるデータ処理装置に関するものである。
【０００２】
【従来の技術】
例えば、オーディオ・ビジュアル機器等、高度な信号処理を行うようにされた電子機器においては、特定の信号処理に特化した集積回路が設けられている。例えば、オーディオ機器等においては、例えばＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）等の独立したオーディオ機能を有する集積回路（データ処理装置）が備えられ、ここにおいてオーディオ信号処理が行われるものとされている。
【０００３】
この際、上記のように電子機器において備えられる集積回路としては、例えば機器の全体制御を行うマイクロコンピュータと関連して動作するようにされるのが一般的である。従ってこのような集積回路としては、マイクロコンピュータとの間でのデータ転送が不可欠となっており、このために集積回路に対しては、外部装置に対するデータ転送を行うためのデータ転送回路が内蔵されている。
【０００４】
図５は、このような集積回路に内蔵されるデータ転送回路の構成を例示する回路図である。
この場合、データ転送回路としては、例えば外部のマイクロコンピュータとの間でシリアルデータ転送を行うものとされ、このようなシリアルデータ転送を行うための図示するシフトレジスタ１００が備えられている。
このシフトレジスタ１００に対しては、例えばこの場合、図のようにデータＤ０〜Ｄ３までの４ビットのデータがそれぞれロードされるべき４つのフリップフロップＦＦ０〜ＦＦ３が備えられている。
また、ＡＮＤゲート１０１には、データの転送先となる上記マイクロコンピュータからのデータ転送クロックＣＬとチップイネーブル信号ＣＥが印加され、その出力は上記したフリップフロップＦＦ０〜ＦＦ３のクロック入力に供給される。
また、ＡＮＤゲート１０２には、上記チップイネーブル信号ＣＥとフリップフロップＦＦ３の出力が供給され、その出力側は図示する出力端子ｔ０１と接続される。そして、このように出力端子ｔ０１に得られた値は、出力ＤＯＴとして上記マイクロコンピュータに対して出力される。
【０００５】
このようなデータ転送回路が内蔵された集積回路から、マイクロコンピュータがデータを転送させるとした場合、次の図６（ａ）に示すように、先ずマイクロコンピュータは、チップイネーブル信号ＣＥをＬレベルからＨレベルに立ち上げるようにされる。これによって、上記したＡＮＤゲート１０１、及びＡＮＤゲート１０２がオープンすることになる
ＡＮＤゲート１０２が開くことによっては、シフトレジスタ１００の４段目の値、すなわちフリップフロップＦＦ３にロードされたデータＤ３の値が出力端子ｔ０１から出力される。そして、マイクロコンピュータは、このように出力端子ｔ０１から出力された値を、図示するようにデータ転送クロックＣＬをＬレベルからＨレベルに立ち上げたタイミングで取り込むようにされる。
【０００６】
シフトレジスタ１００の４段目の値を取り込むと、マイクロコンピュータは、図示するようにデータ転送クロックＣＬをＬレベルに立ち下げて、シフトレジスタ１００のデータをシフトさせる。つまり、このように転送クロックＣＬを立ち下げることによっては、ＡＮＤゲート１０１からこのＬレベルのデータ転送クロックＣＬが各フリップフロップＦＦ０〜ＦＦ３のそれぞれに入力され、これによってフリップフロップＦＦ０〜ＦＦ２にロードされた値がそれぞれフリップフロップＦＦ１〜ＦＦ３へとシフトするものである。
【０００７】
このようにシフトレジスタ１００の値をシフトさせると、今度は出力端子ｔ０１からデータＤ２の値が出力されるものとなる。そして、マイクロコンピュータは、このように出力端子ｔ０１から出力された値を、再びデータ転送クロックＣＬの立ち上がりタイミングで取り込むようにされる。
この一連の動作が繰り返されることにより、マイクロコンピュータには、シフトレジスタ１００に保持されたＤ０〜Ｄ３の値がすべて取り込まれることになる。
【０００８】
ここで、上記説明によれば、図５に示した構成によるデータ転送回路に対しては、マイクロコンピュータ側で、転送クロックＣＬをＬレベルにした状態からデータの取り込みを行うようにされている。つまり、図５に示した構成によるデータ転送回路に対応しては、マイクロコンピュータ側で、初期値がＬレベルとされるデータ転送クロックＣＬによりデータ転送を行わせるようにしなければならないものである。
【０００９】
しかしながらこの際、上記したようなデータ転送回路としては、逆に初期値をＨレベルとしてデータの取り込みを行うマイクロコンピュータに対応するように構成されたものがある。
そして、このような構成によるデータ転送回路に対して、先の図６（ａ）に示したような方式によりデータの取り込みを行った場合には、次の図６（ｂ）に示すようにして、シフトレジスタ１００にロードされた４段目のデータを取り込むことができなくなってしまう。
【００１０】
すなわち、この図６（ｂ）に示されるようにして、上記のようにデータ転送クロックＣＬの初期値がＨレベルとされることによっては、最初のＬレベルへの立ち下げでシフトレジスタ１００の値がシフトされてしまい、取り込みを行う前に出力端子ｔ０１からの出力がＤ３からＤ２へとシフトしてしまう。そして、このために、シフトレジスタ１００の４段目にセットされていたＤ３の値がマイクロコンピュータ側に取り込まれなくなってしまうものである。
【００１１】
このことから、このように先の図５に示した構成と逆の方式に対応したデータ転送回路に対応するとした場合、マイクロコンピュータ側では、データ転送クロックＣＬの初期値を変更する等、データ転送のためのプログラムを変更する必要がある。
特に、上記のように方式の異なるデータ転送回路がそれぞれに備えられた、複数の集積回路を同時に使用するようなシステムにおいては、それぞれの転送方式に対応したプログラムを作成しなければならないという不都合があった。
【００１２】
なお、上記のように転送クロックＣＬの初期値のＨ、Ｌの双方に対応したデータ転送回路を実現するための技術として、例えば下記の特許文献では、先ずチップイネーブル信号ＣＥによりデータの転送許可を行うのに先立ち、マイクロコンピュータ側から転送クロックＣＬの初期値のＨ／Ｌの別を示すコードをデータ転送回路側に供給するようにしている。そして、データ転送回路側では、このようなコードに基づき、初期値がＨの場合は、最初のデータとしてダミーの値を出力するようにし、これによって初期値がＨの場合にも適正にデータの取り込みを行えるようにしたものである。
【特許文献】
特開平５−２８９９８８号公報
【００１３】
【発明が解決しようとする課題】
しかしながら、上記した特許文献に示される構成によると、先ず、上記のようにダミーの値をセットするためのフリップフロップや、マイクロコンピュータから供給されるコードに基づいて動作を切り換えるための回路を備える必要があり、比較的構成が複雑となるという問題が生じる。
さらに、この場合、上記のようにしてマイクロコンピュータからシフトクロックＣＬの初期値がＨであるかＬであるかのコードを別途データ転送回路側に供給しなければならないために、このためのプログラムを追加しなければならないというデメリットもあった。
【００１４】
【課題を解決するための手段】
そこで、本発明では以上のような問題点に鑑み、データ転送回路として以下のように構成することとした。
すなわち、データの出力を許可するチップイネーブル信号と、上記データが転送されるべき転送先のデータの取り込みタイミングを示すデータ転送クロックとに基づいて、シフトレジスタに保持されたデータを転送するデータ転送回路において、先ず、上記データ転送クロックよりも高い周波数を有する高周波クロックに応じてデータをシフトするシフトレジスタを備えるようにする。
その上で、上記高周波クロックの論理レベルが第１のレベルから第２のレベルへ遷移する複数の遷移タイミングのうち、上記データ転送クロックに基づく取り込みタイミングの後に上記論理レベルが上記第１のレベルから上記第２のレベルへ遷移する所定のタイミングに基づいて、上記シフトレジスタに上記シフトを実行させる制御手段を備えるようにした。
【００１５】
また、本発明ではデータ転送方法として以下のようにすることとした。
すなわち、データの出力を許可するチップイネーブル信号と、上記データが転送されるべき転送先のデータの取り込みタイミングを示すデータ転送クロックとに基づいて、シフトレジスタに保持されたデータを転送するデータ転送方法において、先ず、上記データ転送クロックよりも高い周波数を有する高周波クロックに応じて上記シフトレジスタにデータをシフトさせると共に、上記高周波クロックの論理レベルが第１のレベルから第２のレベルに遷移する複数の遷移タイミングのうち、上記データ転送クロックに基づく取り込みタイミングの後に、上記論理レベルが上記第１のレベルから上記第２のレベルに遷移する所定のタイミングに基づいて、上記シフトレジスタに上記シフトを実行させるようにした。
【００１６】
さらに、本発明では、例えば上述した集積回路としてのデータ処理装置として以下のように構成することとした。
つまり、所定の信号処理を実行する信号処理手段と、上記信号処理手段により生成されたデータの出力を許可するチップイネーブル信号と、上記データが転送されるべき転送先のデータの取り込みタイミングを示すデータ転送クロックとに基づいて、上記データを転送するデータ転送回路とを備えるようにする。
そして、上記データ転送回路として、先ず上記データを保持すると共に、上記データ転送クロックよりも高い周波数を有する高周波クロックに応じて上記データをシフトするシフトレジスタを備えると共に、上記高周波クロックの論理レベルが第１のレベルから第２のレベルへ遷移する複数の遷移タイミングのうち、上記データ転送クロックに基づく取り込みタイミングの後に上記論理レベルが上記第１のレベルから上記第２のレベルへ遷移する所定のタイミングに基づいて、上記シフトレジスタに上記シフトを実行させる制御手段を備えるようにした。
【００１７】
上記のように本発明では、シフトレジスタに入力されるべきシフトクロックとして、データの転送先（外部装置）から供給されるデータ転送クロックではなく、このデータ転送クロックよりも高周波とされた上記高周波クロックを入力するものとしている。
その上で、データのシフトタイミングは、シフトクロックとしての上記高周波クロックのエッジタイミング（上記遷移タイミング）のうちの、上記データ転送クロックによるデータ取り込みタイミングよりも、後となるエッジタイミングに基づいて行うものとしている。
つまり、このような本発明によっては、データシフトは常にデータの取り込み後に行われるようになるものであり、これによって、従来のようにデータ取り込みタイミングよりも以前に、データのシフトが行われてしまうことを防止することができるものである。
また、この際、データの転送先としての外部装置は、上記チップイネーブル信号とデータ転送クロックのみをデータ転送回路に供給してデータを転送させることができるから、特にデータ転送のためのプログラムを変更させる必要がなくなる。
【００１８】
【発明の実施の形態】
以下、本発明の実施の形態について説明する。
図１は、本発明の実施の形態としてのデータ転送回路が備えられた、実施の形態としてのデータ処理装置の内部構成例を示すブロック図である。
この図１において、実施の形態のデータ処理装置としては、例えばＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）等の各種メディアの記録再生装置内に備えられ、各種オーディオ信号処理を実行するようにされたＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）としての構成を有する。
先ず、このような実施の形態としてのＤＳＰ５０において、図示するＤＰＳコア５１は、入力されたオーディオ信号に対するデジタルオーディオ信号処理を行うと共に、図示する第１バス５５、第２バス５４を介した各部の全体制御を行う。
このＤＳＰコア５１に対しては、図のようにプログラムメモリ５２、データメモリ５３が接続され、上記プログラムメモリ５２には、上記した全体制御を実現するためのプログラムが格納されている。また、上記データメモリ５３は、ＤＳＰコア５１の作業領域として使用される。
【００１９】
また、このＤＳＰコア５１に対しては、第１バス５５を介してタイマ５７、ＩＣＵ５８、ＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／ｏｕｔｐｕｔ：汎用端子）５９、オーディオインターフェース６０が接続される。
上記タイマ５７は、ＤＳＰコア５１の各種計測や処理タイミング制御に使用される。
また、上記ＩＣＵ５８は、上記ＤＳＰコア５１へのインタラプト制御を行う。上記ＧＰＩＯ５９は、プログラマブルに各端子の用途を変更可能に構成された汎用の外部入出力インターフェースである。
また、上記オーディオインターフェース６０では、外部装置との間でのオーディオ信号の授受が行われる。
【００２０】
上記したプログラムメモリ５２、データメモリ５３は、それぞれ第２バス５４と接続され、さらにこの第２バス５４に対しては、バスコントローラ５６、外部メモリインターフェース６１、ホストインターフェース１が接続されている。
バスコントローラ５６は、上記した第１バス５５に対しても接続されており、これら第１バス５５及び第２バス５４を介した通信の制御をＤＳＰコア５１の制御に基づいて行う。
また、上記外部メモリインターフェース６１においては、当該ＤＳＰ５０の外部メモリとの間でデータの授受が行われる。
【００２１】
上記ホストインターフェース１は、本実施の形態としてのデータ転送回路であり、この場合、このホストインターフェース１を介しては、当該ＤＳＰ５０が備えられる例えば記録再生装置全体の制御を行うものとされるマイクロコンピュータとの間でデータ転送が行われる。
なお、このホストインターフェース１の内部構成例については、後の図２にて説明する。
【００２２】
ここで、上記のように構成されるＤＳＰ５０において、第１バス５５を介してＤＳＰコア５１と接続されるタイマ５７、ＩＣＵ５８、ＧＰＩＯ５９、オーディオインターフェース６０、及びバスコントローラ５６のそれぞれは、内部にＤＳＰコア５１からの読み書きが可能なレジスタが備えられ、これらのレジスタはメモリマップされている。そして、ＤＳＰコア５１は、これら各々のレジスタに対して値を書き込むことにより、上記したタイマ５７、ＩＣＵ５８、ＧＰＩＯ５９、オーディオインターフェース６０、及びバスコントローラ５６の動作を制御することが可能とされている。
【００２３】
続いては、上記図１に示した実施の形態のデータ転送回路としてのホストインターフェース１の内部構成例を、次の図２の回路図に示す。
先ず、この場合のホストインターフェース１としては、図１に示したＤＳＰコア５１から供給される所定ビット数のデータを、ＤＳＰ５０のホスト側とされるマイクロコンピュータに対して転送するものとされる。
例えば、この場合、上記ＤＳＰコア５１からは、図示するデータＤ０〜Ｄ３までの４ビットのデータがロードされるものとし、これを上記マイクロコンピュータに対してシリアル転送する場合を例として以下の説明を続ける。
【００２４】
図２において、端子ｔＤ０〜端子ｔＤ３は、上記のようにＤＳＰコア５１から供給されるデータＤ０〜Ｄ３が供給されるべき端子であり、これらは図１に示した第２バス５４に対して接続されている。
そして、これら端子ｔＤ０〜端子ｔＤ３は、図示するようにシフトレジスタ５を形成する４つのフリップフロップ（Ｄフリップフロップ）５−０〜５−３と接続され、これにより上記フリップフロップ５−０〜５−３に対しては、それぞれ対応する１ビットのデータがロードされるようになっている。
また、このシフトレジスタ５において、フリップフロップ５−０のＱ出力はフリップフロップ５−１のＤ入力と接続される。さらに、フリップフロップ５−１のＱ出力はフリップフロップ５−２のＤ入力に接続され、フリップフロップ５−２のＱ出力はフリップフロップ５−３のＤ入力と接続される。これにより、シフトレジスタ５においては、ロードされたデータを順次シフトさせてこれをシリアルに出力することが可能とされている。
【００２５】
ＡＮＤゲート回路６には、上記シフトレジスタ５におけるフリップフロップ５−３のＱ出力が入力される。また、このＡＮＤゲート回路６に対しては、この場合のデータ転送先としてのマイクロコンピュータから、図示する端子ｔ２に対して供給されるチップイネーブル信号ＣＥが入力される。
このＡＮＤゲート回路６は、上記マイクロコンピュータから供給されるチップイネーブル信号ＣＥとしてＨレベルが入力される期間ゲートをオープンし、上記フリップフロップ５−３からのＱ出力を出力端子ｔ０１に対して出力する。そして、この出力端子ｔ０１の出力ＤＯＴは、転送先であるマイクロコンピュータに対して供給されるものとなる。
つまりこの場合、データ転送先としてのマイクロコンピュータは、上記チップイネーブル信号ＣＥとしてＨレベルをホストインターフェース１に供給することにより、フリップフロップ５−３に保持されているデータを出力させることができるものである。
【００２６】
上記のようにマイクロコンピュータから供給され、端子ｔ２に得られたチップイネーブル信号ＣＥは、ＡＮＤゲート回路２に対しても入力される。また、このＡＮＤゲート回路２に対しては、同じくマイクロコンピュータから供給され、端子ｔ１に得られるデータ転送クロックＣＬも入力される。
このＡＮＤゲート回路２は、上記チップイネーブル信号ＣＥのＨレベルに応じてゲートをオープンし、上記データ転送クロックＣＬを出力する。
【００２７】
ここで、本実施の形態の場合、上記シフトレジスタ５を形成する各フリップフロップ５−０〜５−３に対しては、そのクロック入力に、図１に示したＤＳＰ５０のマスタークロックＭＣＫを入力するようにしている。
このマスタークロックＭＣＫとしては、例えばＤＳＰ５０外部に備えられるＰＬＬ回路の出力を図示する端子ｔ３に対して供給するようにしておく。また、この場合、マスタークロックＭＣＫとしては、端子ｔ２に供給されるデータ転送クロックＣＬよりも高周波とされているものとする。
【００２８】
また、本実施の形態の場合、上記したＡＮＤゲート回路２の出力側は、図示するようにフリップフロップ３のＤ入力と接続される。
このフリップフロップ３のクロック入力には、端子ｔ３に得られるマスタークロックＭＣＫが入力される。そして、このフリップフロップ３のＱ出力は、図示するイネーブル信号（ＥＮ信号）生成回路４に供給される。
なお、マスタークロックＭＣＫとデータ転送クロックＣＬが非同期であることから、フリップフロップ３は、データ転送クロックＣＬとマスタークロックＭＣＫとがほぼ同時に変化したときに生じる、いわゆるメタステーブル状態の対策用に備えられるものである。
【００２９】
イネーブル信号生成回路４は、シフトレジスタ５を形成するフリップフロップ５−０〜５−３のクロック入力をマスクするための、イネーブル信号ＥＮを生成する。
このイネーブル信号生成回路４において、上記のように供給されるフリップフロップ３のＱ出力は、フリップフロップ４ａのＤ入力に供給される。
そしてこの場合、このフリップフロップ４ａのクロック入力には、上記したマスタークロックＭＣＫが入力される。そして、そのＱ出力は図示するＡＮＤゲート回路４ｃと、フリップフロップ４ｂのＤ入力に供給される。
このフリップフロップ４ｂのクロック入力に対しては、同様に上記マスタークロックＭＣＫが入力される。そして、このフリップフロップ４ｂは、そのＸＱ出力（反転Ｑ出力）が上記したＡＮＤゲート回路４ｃに対して供給される。
ＡＮＤゲート回路４ｃは、上記フリップフロップ４ａのＱ出力と、上記フリップフロップ４ｃのＸＱ出力とを入力し、フリップフロップ４ｃのＸＱ出力のＨレベル期間に対応してゲートをオープンする。そして、その出力を、図示するようにシフトレジスタ５を形成する各フリップフロップ５−０〜５−３のイネーブル信号ＥＮとして供給する。
【００３０】
上記構成によるホストインターフェース１を用いてマイクロコンピュータがデータ転送を行わせる際の動作について、次の図３、図４のタイミングチャートを用いて説明する。
先ず、図３を用いて、マイクロコンピュータが出力するデータ転送クロックの初期値がＬレベルとされる場合のデータ転送動作について説明する。
なお、図３において、このようにデータ転送クロックの初期値がＬレベルとされる場合、マイクロコンピュータ側では、このデータ転送クロックＣＬのＨレベルへの立ち上がりで出力ＤＯＴとしての転送データを取り込むようにされているものとする。また、このデータ転送クロックＣＬのＬレベルへの立ち下がりで、ホストインターフェース１にデータのシフトを行わせるものとしてプログラムされているものとする。
【００３１】
先ず、図中時点ｔ１以前において、マイクロコンピュータから供給されるチップイネーブル信号ＣＥが、図のようにＨレベルに立ち上がることによっては、ＡＮＤゲート回路６がオープンとなり、シフトレジスタ５におけるフリップフロップ５−３にロードされたデータＤ３が、出力端子ｔ０１を介して出力される状態が得られる。
つまりこの際、シフトレジスタ５の各フリップフロップ５−０〜５−３に対しデータが保持された時点では、先ずフリップフロップ５−３のラッチ出力がＡＮＤゲート回路６に印加されるようになる。そして、このとき、上記のようにチップイネーブル信号ＣＥがＨレベルとなり、ＡＮＤゲート回路６がオープンすることにより、出力端子ｔ０１からデータＤ３が出力されるものである。
【００３２】
そして、このような状態において、図示する時点ｔ１にてデータ転送クロックＣＬが初期値であるＬレベルからＨレベルに立ち上がるタイミングで、マイクロコンピュータは、出力端子ｔ０１から出力されていたデータＤ３を取り込むことになる。
つまり、これによって、先ずはシフトレジスタ５の４段目にロードされた値（Ｄ３）がマイクロコンピュータに転送されたことになる。
【００３３】
ここで、本実施の形態では、先の図２により説明したように、シフトレジスタ５のクロック入力にはマスタークロックＭＣＫが入力されるため、基本的にはこのマスタークロックＭＣＫのエッジタイミングでデータのシフトが行われるものである。
しかしながら、ここで、図のようしてマスタークロックＭＣＫ周期でデータのシフトが行われないのは、図中に示されるイネーブル信号ＥＮを生成して、そのＨレベル期間中におけるマスタークロックＭＣＫの立ち上がりタイミングでのみ、データシフトを行うようにしたからである。
つまり、このようなイネーブル信号ＥＮにより、シフトレジスタ５のクロック入力をマスクするようにしたことから、マスタークロックＭＣＫの周期でデータシフトが行われないようにされているものである。
【００３４】
その上で、本実施の形態では、このようなイネーブル信号ＥＮとして、データ転送クロックＣＬのＨレベルへの立ち上がりタイミングの後となる、所定期間にＨレベルとなるパルスを生成するようにしている。つまり、マイクロコンピュータのデータ取り込みタイミングよりも後となるタイミングでＨレベル期間が得られる信号を生成するものである。
そしてこれによって、以下で説明するように、シフトレジスタ５におけるデータシフトが、常に、マイクロコンピュータにおいてデータが取り込まれた後のタイミングとなるようにして、マイクロコンピュータに確実にデータが取り込まれるようにするものである。
【００３５】
このようなイネーブル信号ＥＮは、先の図２の構成からも理解されるように、ＡＮＤゲート回路２を介して出力されるデータ転送クロックＣＬと、マスタークロックＭＣＫとに基づいて生成されるものである。
先ず、この場合、図３に示す時点ｔ１においてデータ転送クロックＣＬがＨレベルに立ち上がることによっては、ＡＮＤゲート回路２がオープンしてフリップフロップ３のＤ入力にＨレベルが印加される。
そして、このように時点ｔ１においてフリップフロップ３のＤ入力へのＨレベルの印加が開始されることによっては、この時点ｔ１直後の、マスタークロックＭＣＫのＨレベルへの立ち上がりタイミング（時点ｔ２）で、このフリップフロップ３のＱの値が変化する。つまり、この時点ｔ２において、イネーブル信号生成回路４内のフリップフロップ４ａのＤ入力に対するＨレベルの印加が開始されることになる。
【００３６】
フリップフロップ４ａにおいては、この時点ｔ２の、次のマスタークロックＭＣＫのＨレベルへの立ち上がりタイミング（時点ｔ３）で、Ｑの値がＨレベルに変化する。そして、このＨレベルによるＱ出力は、ＡＮＤゲート回路４ｃのＤ入力に供給される。
ここで、この際、ＡＮＤゲート回路６には、フリップフロップ４ｂのＸＱ出力が印加されているから、この時点ｔ３において、上記のようにフリップフロップ４ａのＱの値がＨレベルとなった時点で、ＡＮＤゲート回路４ｃの入力は共にＨレベルが印加される。
従って、この時点ｔ３のタイミングでＡＮＤゲート回路４ｃがオープンするものとなり、これによって図３に示すような、この時点ｔ３におけるイネーブル信号ＥＮのＨレベルへの立ち上がりタイミングが得られることとなる。
【００３７】
また、この際、時点ｔ３にて上記のようにＨレベルに変化したフリップフロップ４ａのＱ出力は、フリップフロップ４ｂのＤ入力に供給されるものである。そして、このフリップフロップ４ｂにおいては、このように時点ｔ３にてＨレベルのＤ入力が得られると、この時点ｔ３直後のマスタークロックＭＣＫの立ち上がりタイミング（時点４）で以て、ＸＱの値が変化する。
つまり、この場合のＸＱの値としては、時点ｔ３以前においてＤ入力に得られていたとされる、Ｌレベルの反転値としてのＨレベルから、Ｌレベルに変化するようになるものである。
【００３８】
このようにフリップフロップ４ｂのＸＱの値がＬレベルに変化することによっては、ＡＮＤゲート回路４ｃのへ入力がＬレベルとなり、これによってＡＮＤゲート回路４ｃが閉じるようにされる。
そして、この結果、このＡＮＤゲート回路４ｃの出力としてのイネーブル信号ＥＮとしては、上記のようにフリップフロップ４ｂのＸＱの値がＬレベルとなった時点ｔ４に対応した、図３に示すような時点ｔ５のタイミングでＬレベルに立ち下がるようになる。
【００３９】
このようにして、図２に示した構成によっては、図３に示す時点ｔ３〜時点ｔ５にＨレベルとなるイネーブル信号ＥＮが生成されるものとなる。
すなわち、マイクロコンピュータによってデータＤ３が取り込まれた、時点ｔ１以後の所定期間にＨレベルとなるパルスを生成することができるものである。そして、このようなタイミングによるイネーブル信号ＥＮが、シフトレジスタ５の各フリップフロップに供給されることによっては、シフトレジスタ５では、この時点ｔ３〜ｔ５までの間の、マスタークロックＭＣＫの立ち上がりタイミング（図中時点ｔ４）でのみ、データのシフトが行われるものとなる。
つまりこれによって、マイクロコンピュータにデータＤ３が取り込まれた後の然るべきタイミングで、シフトレジスタ５のデータシフトを行うことができるものである。
【００４０】
そして、以降においても、マイクロコンピュータからのデータ転送クロックＣＬが、Ｈレベルに立ち上がる時点ｔ６、ｔ８、ｔ１０に対応しては、上記で説明したフリップフロップ３及びイネーブル信号生成回路４の動作により、図示するようにデータ転送クロックＣＬの立ち上がりタイミングよりも後となる所定期間にＨレベルとなるイネーブル信号ＥＮが得られるものとなる。
つまり、これら時点ｔ６、ｔ８、ｔ１０のデータ転送クロックＣＬの立ち上がりタイミングに対応しては、図示する時点ｔ７、ｔ９、ｔ１１のマスタークロックＭＣＫの立ち上がりタイミングでのみ、シフトレジスタ５においてデータのシフトが行われるものである。
【００４１】
このようにして、データ転送クロックＣＬの初期値がＬレベルとされる場合には、マイクロコンピュータのデータ取り込みタイミングの後の、然るべきタイミングで以てデータのシフトを行うことができ、これによってシフトレジスタ５にロードされたデータＤ０〜Ｄ３の全てを適正にマイクロコンピュータに転送することができるようになる。
なお、データ転送クロックＣＬの立ち上がりからイネーブル信号ＥＮの立ち上がりまでの遅延時間は、イネーブル信号生成回路４内に設けるフリップフロップ４ａの数によって調整することが可能である。但し、このようなデータ転送クロックＣＬの立ち上がりからイネーブル信号ＥＮの立ち上がりまでの遅延時間は、少なくともデータ転送クロックＣＬの次の立ち上がりタイミングよりも以前に、イネーブル信号ＥＮの立ち下がりが得られるように設定されている必要がある。
【００４２】
続いては、図４を用いて、マイクロコンピュータが出力するデータ転送クロックの初期値がＨレベルとされる場合のデータ転送動作について説明する。
なお、図４において、このようにデータ転送クロックの初期値がＨレベルとされる場合、マイクロコンピュータ側では、先ずはこのデータ転送クロックＣＬの初期値からＬレベルへの立ち下げを行うものとされている。そして、以降は、このデータ転送クロックＣＬのＨレベルへの立ち上がりで、出力ＤＯＴとしての転送データを取り込むようにされているものとする。そして、この場合もデータ転送クロックＣＬのＬレベルへの立ち下がりで、ホストインターフェース１にデータのシフトを行わせるものとしてプログラムされているものとする。
【００４３】
先ず、この場合、データの転送先であるマイクロコンピュータは、図示するチップイネーブル信号ＣＥを立ち上げてデータＤ３を出力させた後の、所要のタイミングで以て、上記のようにデータ転送クロックＣＬの初期値（Ｈレベル）からＬレベルへの立ち下げを行うものとされる。
ここで、先の図５により示した従来のデータ転送回路においては、シフトレジスタ５のクロック入力として、このようなデータ転送クロックＣＬを入力していたため、上記時点ｔ１における立ち下がりに応じて、データのシフトが行われてしまっていた。すなわち、データの転送先であるマイクロコンピュータによりデータが取り込まれる以前にデータがシフトされてしまい、シフトレジスタ５の４段目にセットされたデータＤ３を転送することができないものであった。
【００４４】
これに対し本実施の形態では、先の図２の構成からもわかるようにシフトレジスタ５のシフトクロックとして、データ転送クロックＣＬを入力しないようにしたから、この時点ｔ１のデータ転送クロックＣＬの立ち下がりでデータシフトを行わせないことができる。つまり、このように時点ｔ１においてデータシフトをおこなわせないことにより、この時点ｔ１以降の図示する時点ｔ２におけるデータ転送クロックＣＬをＨレベルの立ち上がりタイミングで、マイクロコンピュータにデータＤ３を取り込ませることができるものである。
【００４５】
そしてこの場合も、上記のようにマイクロコンピュータによりデータの取り込みが行われた、この時点ｔ２としての、上記データ転送クロックＣＬの立ち上がりに応じては、図２に示したフリップフロップ３及びイネーブル信号生成回路４によって、この図４に示す時点ｔ４〜ｔ６までの期間にＨレベルとなるイネーブル信号ＥＮが得られる。すなわち、マイクロコンピュータによりデータの取り込みが行われた後の、所定期間にＨレベルとなるパルスを生成することができるものである。
そして、このようなタイミングによるイネーブル信号ＥＮが、シフトレジスタ５の各フリップフロップに供給されることによっては、この場合もシフトレジスタ５において、この時点ｔ４〜ｔ６までの間の、マスタークロックＭＣＫのＨレベルへの立ち上がりタイミング（図中時点ｔ５）でのみ、データのシフトが行われるものとなる。
つまりこれによって、この図４に示す場合にも、マイクロコンピュータにデータＤ３が取り込まれた後の然るべきタイミングで、シフトレジスタ５のデータシフトを行うことができるものである。
【００４６】
そして、この場合も以降においては、マイクロコンピュータからのデータ転送クロックＣＬが、Ｈレベルに立ち上がる時点ｔ７、ｔ９、ｔ１１に対応しては、フリップフロップ３及びイネーブル信号生成回路４の動作により、図示するようにデータ転送クロックＣＬの立ち上がりタイミングよりも後となる所定期間にＨレベルとなるイネーブル信号ＥＮが得られるものとなる。つまり、マイクロコンピュータによってデータの取り込みが行われた後の然るべきタイミングとしての、図示する時点ｔ８、ｔ１０、ｔ１２のマスタークロックＭＣＫの立ち上がりタイミングでのみ、シフトレジスタ５においてデータのシフトを行わせることができるものである。
【００４７】
以上の説明より、本実施の形態によっては、データ転送クロックＣＬの初期値がＨレベルとされる場合にも、マイクロコンピュータのデータ取り込みタイミングの後の、然るべきタイミングで以てデータのシフトを行うことができるものである。そして、これによって、この場合もシフトレジスタ５にロードされたデータＤ０〜Ｄ３の全てを適正にマイクロコンピュータに転送することができるようになる。
【００４８】
このことから、本実施の形態によっては、マイクロコンピュータ側から供給されるデータ転送クロックの初期値がＨレベルとされる場合に、従来のようにシフトレジスタ５の４段目にロードされたデータＤ３がマイクロコンピュータに取り込まれなくなってしまうといった事態を、効果的に防止できるものである。
そしてこれにより、本実施の形態によっては、上記データ転送クロックＣＬの初期値のＨレベル、Ｌレベルによらず、シフトレジスタ５に保持されたデータの全てを、適正に転送先に転送させることが可能となるものである。
【００４９】
ここで、先の図３、図４による動作説明からも明らかなように、このような本実施の形態としてのデータ転送を実現するにあたってマイクロコンピュータ側は、従来と同等のチップイネーブル信号ＣＥ及びデータ転送クロックＣＬを供給することで、確実に転送データを取り込むことができる。つまりこの場合、マイクロコンピュータ側のデータ転送のためのプログラムは、従来と同等のものでよく、特に追加・変更を加える必要がないものである。
従って、このことから本実施の形態によっては、マイクロコンピュータ側のプログラムに特に変更を加えずとも、データ転送クロックＣＬの初期値のＨ、Ｌの双方に対応したデータ転送を実現することができるものである。
【００５０】
また、さらにこの際、ホストインターフェース１側の構成としても、少なくともイネーブル信号生成回路４を形成するフリップフロップが２つと、ＡＮＤゲート回路４ｃのみの追加で、上述した本実施の形態としての動作が実現可能となる。
つまり、このような本実施の形態によっては、ホストインターフェース１としてのデータ転送回路側の構成を複雑とせず、比較的簡易な追加構成によって、データ転送クロックの初期値のＨ、Ｌの双方に対応したデータ転送回路を実現できるものである。
【００５１】
なお、上記した実施の形態では、本発明のデータ処理装置が、例えばＣＤ、ＤＶＤ、その他のメディアに対応した記録再生装置に備えられてデジタルオーディオ信号処理を行うＤＳＰとされる場合を例に挙げたが、本発明としては、例えば映像信号処理等の他のデジタル信号処理を行うデータ処理装置にも好適に適用できるものである。
また、実施の形態では、本発明を外部のマイクロコンピュータとの間でデータ転送を行う場合に適用したが、マイクロコンピュータ以外の他のデータ処理装置との間のデータ転送にも適用できることは言うまでもない。
【００５２】
また、実施の形態では、イネーブル信号ＥＮをシフトレジスタ５の各フリップフロップ５−０〜５−３に対して直接入力することにより、マスタークロックＭＣＫをマスクするものとしたが、この他、例えばシフトレジスタ５へのマスタークロックＭＣＫの入力経路にゲート回路を設け、ここにイネーブル信号ＥＮを供給してマスタークロックＭＣＫをマスクする等、他の構成が採られてもよい。
【００５３】
また、実施の形態では、シフトレジスタ５のクロック入力として使用するクロックを、図１に示したＤＳＰ５０のマスタークロックＭＣＫとする場合を例に挙げたが、この他、例えば高周波のクロックを別途生成するなど、マスタークロックＭＣＫ以外のクロックを用いるようにしてもよい。但し、この場合に用いるクロックとしては、少なくともデータの転送先となる外部装置から供給されるデータ転送クロックよりも高周波とされている必要がある。
【００５４】
【発明の効果】
以上のように本発明では、データの出力を許可するチップイネーブル信号と、上記データが転送されるべき転送先のデータの取り込みタイミングを示すデータ転送クロックとに基づいて、シフトレジスタに保持されたデータを転送するデータ転送回路において、先ず、上記データ転送クロックよりも高い周波数を有する高周波クロックに応じて上記シフトレジスタにデータをシフトさせるようにしている。
その上で、上記高周波クロックの論理レベルが第１のレベルから第２のレベルに遷移する複数の遷移タイミングのうち、上記データ転送クロックに基づく取り込みタイミングの後に、上記論理レベルが上記第１のレベルから上記第２のレベルに遷移する所定のタイミングに基づいて、上記シフトレジスタに上記シフトを実行させるようにしたものである。
【００５５】
このようにして、上記高周波クロックの論理レベルの遷移タイミング（エッジタイミング）のうち、上記データ転送クロックに基づく取り込みタイミングの後のエッジタイミングに基づいてデータのシフトを行うことによっては、データシフトは常にデータの取り込み後に行われるようになる。そして、これによって、データ取り込みタイミングよりも以前に、データのシフトが行われてしまうことを防止することができるようになる。
【００５６】
この結果、本発明によっては、上記データ転送クロックの初期値のＨ、Ｌによらず、常にデータのシフトをデータの取り込み後に行うことができ、これによって上記データ転送クロックの初期値のＨ、Ｌの双方に対応して適正にデータ転送を行うことが可能となる。
【００５７】
また、このような本発明によれば、データの転送先としての外部装置側は、従来と同様にチップイネーブル信号とデータ転送クロックのみをデータ転送回路側に供給してデータの取り込みを行うことができるものである。
つまり、このことから本発明によっては、データ転送クロックの初期値のＨ、Ｌの双方に対応したデータ転送を、転送先である外部装置側のプログラムの追加・変更なしで実現することができるものである。
【図面の簡単な説明】
【図１】本発明における実施の形態としてのデータ処理装置の内部構成例を示すブロック図である。
【図２】本発明における実施の形態としてのデータ転送回路の内部構成例を示す回路図である。
【図３】実施の形態のデータ転送動作として、データ転送クロックの初期値がＬレベルとされる場合に対応して得られる動作について説明するためのタイミングチャートである。
【図４】実施の形態のデータ転送動作として、データ転送クロックの初期値がＨレベルとされる場合に対応して得られる動作について説明するためのタイミングチャートである。
【図５】従来のデータ転送回路の構成例を示す回路図である。
【図６】従来のデータ転送回路において得られる動作として、データ転送クロックの初期値がＬレベルとされた場合、Ｈレベルとされた場合の動作について説明するための図である。
【符号の説明】
１  ホストインターフェース、２、６、４ｃ  ＡＮＤゲート回路、３、４ａ、４ｂ、５−０〜５−３  フリップフロップ、４  イネーブル信号生成回路、５  シフトレジスタ、５０  ＤＳＰ、５１  ＤＳＰコア、５２  プログラムメモリ、５３  データメモリ、５４  第２バス、５５  第１バス、５６  バスコントローラ、５７  タイマ、５８  ＩＣＵ、５９  ＧＰＩＯ、６０  オーディオインターフェース、６１  外部メモリインターフェース
【図１】
2004348225.tif 000003
【図２】
2004348225.tif 000004
【図３】
2004348225.tif 000005
【図４】
2004348225.tif 000006
【図５】
2004348225.tif 000007
【図６】
2004348225.tif 000008