(57)【要約】【課題】データ記憶部の間欠的な記憶領域へのアクセスの切り替えをより迅速に行う。【解決手段】メモリアクセス回路１０は、アクセス開始アドレスを格納するアドレスレジスタ１８と、アクセス開始アドレスの中間のビットを更新ビットとして指定する更新ビット指定レジスタ２０と、指定された更新ビットのデータを変更してアクセス開始アドレスを更新するアドレス更新処理部２２と、更新されたアクセス開始アドレスを起点とするデータ記憶領域に対して読み出し／書き込みを実行するアクセス処理部１４と、を備える。【選択図】図１
2005141572.tif 000002
【特許請求の範囲】
【請求項１】
データ記憶部に対する読み出し／書き込みアクセスのアクセス開始アドレスを格納するアドレスレジスタと、
前記アクセス開始アドレスの最上位ビットと最下位ビットとの間のいずれかのビットを更新ビットとして指定する更新ビット指定レジスタと、
前記更新ビットのデータを更新することによりアクセス開始アドレスを更新するアドレス更新処理部と、
前記データ記憶部の前記更新されたアクセス開始アドレスを起点とするデータ記憶領域に対する読み出し／書き込みを実行するアクセス処理部と、
を備えるメモリアクセス回路。
【請求項２】
前記アドレス更新処理部は、前記更新ビットを循環的に更新することを特徴とする請求項１に記載のメモリアクセス回路。
【請求項３】
さらに、アクセス開始アドレスからの連続アクセス数を指定するアクセス数指定レジスタを備え、
前記アドレス更新処理部は、前記アクセス処理部がアクセス開始アドレスを起点として前記指定された連続アクセス数分の読み出し／書き込みを実行した後に、次のアクセス開始アドレスへの更新を実行することを特徴とする請求項１または２に記載のメモリアクセス回路。
【請求項４】
請求項１〜３のうちいずれか一つに記載のメモリアクセス回路と、
前記メモリアクセス回路から出力されたデータを音声出力機器用の出力信号に変換する処理および／または音声入力機器からの入力信号を前記メモリアクセス回路への入力データに変換する処理を実行するデータ変換回路と、
を備えるオーディオ機器用インタフェース装置。
【請求項５】
さらに、
前記データ記憶部として機能するバッファメモリと、
前記バッファメモリから読み出したデータを所定の情報処理機器に向けて送信する処理および／または所定の情報処理機器から出力されたデータを当該バッファメモリに入力する処理を実行する第二のメモリアクセス回路と、
を備える請求項４に記載のオーディオ機器用インタフェース装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ記憶部に対して読み出し／書き込みアクセスを行うメモリアクセス回路に関し、特に、情報処理機器とオーディオ機器との間に設けられるオーディオ機器用インタフェース装置に好適なメモリアクセス回路に関する。
【背景技術】
【０００２】
情報処理機器から出力された音声データを元にスピーカ等のオーディオ機器において音声出力を行う場合や、逆に、マイク等のオーディオ機器からの音声入力に対応する音声データを情報処理機器に入力する場合には、通常、それら機器の間にインタフェース装置を介在させる。
【０００３】
そのインタフェース装置には、データを記憶するデータ記憶部が設けられており、当該データ記憶部は、情報処理機器とオーディオ機器との間のデータ伝送におけるバッファメモリとして機能する。図６は、この種のデータ記憶部１２におけるデータの記憶領域（ハッチングを施した領域）を示す図である。図６に示すように、データの記憶領域はデータ記憶部１２内で間欠的な（飛び飛びの）領域として確保される。なお、この種の従来技術は、例えば特許文献１に開示されている。
【０００４】
【特許文献１】特開２００２−３４２２６６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
かかるデータ記憶部１２に対する読み出し／書き込みは、図示しないメモリアクセス回路によって実行されるが、図６に示すように、データ記憶部１２内でデータの記憶領域は飛び飛びに設けられることから、メモリアクセス回路は、各記憶領域にアクセスするたびに、少なくとも当該記憶領域の開始アドレス（先頭のアドレス）を取得する必要がある。このため、アクセス先の記憶領域を替えるべく、当該アクセスのたびに、メモリアクセス回路以外の回路（例えばＣＰＵ；図示せず）等が、アドレスレジスタに格納される開始アドレスを書き換えるという処理を行っていた。
【０００６】
ここで、上記開始アドレスの書き換えを行う回路が、開始アドレスの書き換え以外の処理も行い、しかもその処理の負荷が高いというような状況では、データ転送に遅れが生じるという問題が今後生じないとも限らない。また逆に、その開始アドレスのデータ書き換えの処理負担を軽減することができれば、その分、アドレスの書き換えを行っていた回路が他の処理を実行できる期間が増大するという利点がある。
【課題を解決するための手段】
【０００７】
本発明にかかるメモリアクセス回路は、データ記憶部に対する読み出し／書き込みアクセスのアクセス開始アドレスを格納するアドレスレジスタと、前記アクセス開始アドレスの最上位ビットと最下位ビットとの間のいずれかのビットを更新ビットとして指定する更新ビット指定レジスタと、前記更新ビットのデータを更新することによりアクセス開始アドレスを更新するアドレス更新処理部と、前記データ記憶部の前記更新されたアクセス開始アドレスを起点とするデータ記憶領域に対する読み出し／書き込みを実行するアクセス処理部と、を備える。
【０００８】
また、上記本発明にかかるメモリアクセス回路では、前記アドレス更新処理部は、前記更新ビットを循環的に更新するのが好適である。
【０００９】
また、上記本発明にかかるメモリアクセス回路では、さらに、アクセス開始アドレスからの連続アクセス数を指定するアクセス数指定レジスタを備え、上記アドレス更新処理部は、上記アクセス処理部がアクセス開始アドレスを起点として上記指定された連続アクセス数分の読み出し／書き込みを実行した後に、次のアクセス開始アドレスの更新を実行するのが好適である。
【００１０】
また、本発明にかかるオーディオ機器用インタフェース装置は、上記本発明にかかるメモリアクセス回路と、前記メモリアクセス回路から出力されたデータを音声出力機器用の出力信号に変換する処理および／または音声入力機器からの入力信号を前記メモリアクセス回路への入力データに変換する処理を実行するデータ変換回路と、を備える。
【００１１】
また、上記本発明にかかるオーディオ機器用インタフェース装置では、さらに、前記データ記憶部として機能するバッファメモリと、前記バッファメモリから読み出したデータを所定の情報処理機器に向けて送信する処理および／または所定の情報処理機器から出力されたデータを当該バッファメモリに入力する処理を実行する第二のメモリアクセス回路と、を備えるのが好適である。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の好適な実施形態について図面を参照して説明する。図１は、本実施形態にかかるメモリアクセス回路１０の一例を示すブロック図、また、図２は、データ記憶部１２において確保される記憶領域、およびアクセス開始アドレスの更新の一例を示す概念図である。
【００１３】
図１のメモリアクセス回路１０は、データ記憶部（例えばＲＡＭ等）１２に対する読み出しおよび／または書き込みアクセスを実行する回路であり、アクセス処理部１４、制御レジスタ１６、アドレスレジスタ１８、更新ビット指定レジスタ２０、アドレス更新処理部２２、およびアクセス数指定レジスタ２４を含む。
【００１４】
アクセス処理部１４は、データ記憶部１２と外部回路２６との間のデータの授受を司る。すなわち、外部回路２６から受け取ったデータ（ＤＡＴ）をデータ記憶部１２の所定のアドレス（ＡＤＲ）の記憶領域に書き込む処理を行うとともに、データ記憶部１２の所定のアドレス（ＡＤＲ）の記憶領域から読み出したデータ（ＤＡＴ）を外部回路２６に引き渡す処理を行う。この処理については後に詳しく述べる。
【００１５】
制御レジスタ１６には、アクセス処理部１４の処理状況を示すフラグやアクセス処理部１４に対する命令を示すフラグが格納される。このフラグとしては、例えば、アクセス中であることを示すＲＵＮフラグや、アクセスの終了を指示するＥＮＤフラグ等がある。ここに格納されるフラグを参照することで、各部から処理の状況を把握できるようになっている。
【００１６】
アドレスレジスタ１８には、データ記憶部１２に対する読み出し／書き込みアクセスのアクセス開始アドレスが格納される。アクセス開始アドレスは、図２に示すように、データ記憶部１２中に複数確保される記憶領域（ブロック；データ記憶部１２中でハッチングを施した部分）の先頭のアドレスである。アドレスレジスタ１８には、例えば、一つの読み出し／書き込みアクセスに対して一つのアクセス開始アドレスが格納され、アクセス先の記憶領域が変更されるたびに当該開始アドレスが書き換えられる。
【００１７】
更新ビット指定レジスタ２０には、アクセス開始アドレスの最上位ビットと最下位ビットとの間のいずれかのビットを更新ビットとして指定するための情報が格納される。図２の例では、更新ビットとして指定するビットの値を「１」、指定しないビットの値を「０」としており、最下位側から７番目と８番目の連続する複数ビット（２ビット）が更新ビットとして指定されている。
【００１８】
アドレス更新処理部２２は、アドレスレジスタ１８に格納されるアクセス開始アドレスのデータのうち、更新ビット指定レジスタ２０によって指定されるビットを書き換えることで、アクセス開始アドレスを更新する。図２の例では、計１６ビットのアドレスデータのうち７番目と８番目のビットが２進数表記で「００」→「０１」→「１０」→「１１」→「００」の順に循環的に更新される。これにより、アクセス開始アドレスは、１６進数表記で（図ではその後ろにＨを付けて表記）「０４００」→「０４４０」→「０４８０」→「０４Ｃ０」→「０４００」と変化することになり、図２に示すように、当該開始アドレスは、データ記憶部１２中で飛び飛びの位置を示すことになる。なお、これはあくまで一例であって、種々のパターンで更新を行うことが可能である。
【００１９】
アクセス数指定レジスタ２４は、各記憶領域（ブロック）において連続的にアクセスする回数（連続アクセス数；データ単位の数）を示す情報を格納する。このとき、例えば図２のアクセス開始アドレス：「０４４０」のアクセスに対応する連続アクセス数が３６（１０進数）であった場合、「０４４０」〜「０４６３」のアドレスで指定される記憶領域＃２に対してアクセスが実行されることになる。
【００２０】
なお、制御レジスタ１６、アドレスレジスタ１８、更新ビット指定レジスタ２０、およびアクセス数指定レジスタ２４に格納される情報（フラグ、データ、アドレス等）は、アクセス処理部１４や、アドレス更新処理部２２、あるいはそれらにデータバス２８を介して接続されるＣＰＵ３０等、メモリアクセス回路１０に含まれない外部回路によって、適宜書き換え可能となるように構成することができる。さらにその場合、データ毎に各回路からの書き換えを許可したり禁止したりすることが可能である。また、図１の例では、ＣＰＵ３０、データバス２８、メモリアクセス回路１０およびデータ記憶部１２が、一つのマイクロコンピュータ３２内に実装されている。
【００２１】
次に、図１のメモリアクセス回路１０によるデータ記憶部１２に対するアクセスの一例について説明する。図３はその一例を示すフローチャートである。
【００２２】
図３の例では、ＣＰＵ３０は、まず、アドレスレジスタ１８にアクセス開始アドレスを設定し（ステップＳ１０）、更新ビット指定レジスタ２０に更新するビットを示す情報を設定するとともに（ステップＳ１１）、アクセス数指定レジスタ２４に連続アクセス数を設定して（ステップＳ１２）、制御レジスタ１６内にＲＵＮフラグとして「１」を書き込む。ＲＵＮフラグが「１」になると、アクセス処理部１４が、データ記憶部１２からデータを読み出す処理、あるいはデータ記憶部１２にデータを書き込む処理を実行する（ステップＳ２０）。そして、ステップＳ２０は、全てのデータの転送（読み出し／書き込み）が終了するまで継続される。そして、それが終了すると、ＣＰＵ３０はＲＵＮフラグを「０」に書き換え、これにより、メモリアクセス回路１０はデータ転送処理を終了する（ステップＳ１３）。
【００２３】
ステップＳ２０において、アクセス処理部１４は、まず、アドレスレジスタ１８に格納されるアクセス開始アドレスとアクセス数指定レジスタ２４に格納される連続アクセス数を取得する（ステップＳ２１）。そして、その時点におけるアクセス先のアドレスを取得する。具体的には、アクセス処理部１４は、アクセス開始アドレスを１アクセスにつき１ずつインクリメントしてアクセス先のアドレスを取得する。例えば、アクセス開始アドレス「０４４０」の記憶領域に対する１回目のアクセスについては、アクセス先のアドレスは「０４４０」（すなわちアクセス開始アドレスそのもの）となり、５回目のアクセスについては「０４４４」となる（ステップＳ２２）。そして、こうして取得したアクセス先のアドレスに対して、データ記憶部１２からのデータの読み出しまたはデータ記憶部１２へのデータの書き込みを実行する（ステップＳ２３）。
【００２４】
連続アクセス数に相当する回数のアクセス（すなわちＳ２１〜Ｓ２３）が終了すると（ステップＳ２４）、アドレス更新処理部２２は、アドレスレジスタ１８からアクセス開始アドレスを取得し、そのうち更新ビット指定レジスタ２０において指定されるビットのデータを更新する。このとき、上述した図２の例では、更新ビットの値は、アドレス更新処理部２２によって、２進数表記で「００」→「０１」→「１０」→「１１」→「００」の順に循環的に更新される（ステップＳ２５）。そして、ＲＵＮフラグが「０」でない場合には、更新されたアクセス開始レジスタを起点とする次の記憶領域に対してステップＳ２０の処理が実行される（ステップＳ１３）。
【００２５】
このように、本実施形態にかかるメモリアクセス回路１０は、各記憶領域の先頭となるアクセス開始アドレスの更新を、メモリアクセス回路１０外の回路（例えばＣＰＵ３０）によらず、メモリアクセス回路１０内の回路（例えばアドレス更新処理部２２）によって自動的に行うので、当該メモリアクセス回路１０外の回路における演算負荷を軽減することができるとともに、従来より迅速なアクセス先の変更が可能となる。
【００２６】
次に、本実施形態にかかるメモリアクセス回路１０を搭載したオーディオ機器用インタフェース装置４０について図面を参照して説明する。図４は、その一構成例を示す図、また図５は、ＵＳＢデータおよび音声信号のタイミングチャートの一例を示す図である。
【００２７】
図４のオーディオ機器用インタフェース装置４０は、マイクロコントローラ４２およびデータ変換回路４４を含む。このうちデータ変換回路４４は、オーディオインタフェース回路（以下、オーディオＩ／Ｆと記す）４６から出力されたデータを音声出力機器（例えばスピーカ等）４８用の出力信号に変換する、いわゆるディジタル−アナログコンバータ（ＤＡＣ）としての機能と、音声入力機器（例えばマイク等）５０からの入力信号を前記メモリアクセス回路１０への入力データに変換する、いわゆるアナログ−ディジタルコンバータ（ＡＤＣ）としての機能とを有する。
【００２８】
マイクロコントローラ４２は、ＵＳＢ−インタフェース回路（以下、ＵＳＢ−Ｉ／Ｆと記す）５２、データ記憶部１２、オーディオＩ／Ｆ４６およびＣＰＵ３０を含み、これら各回路がデータバス２８を介して相互に接続されている。ただし、ＵＳＢ−Ｉ／Ｆ５２とデータ記憶部１２との間、およびオーディオＩ／Ｆ４６とデータ記憶部１２との間におけるデータの授受は、当該データバス２８以外の経路により直接的に行われるようになっている。このとき、ＵＳＢ−Ｉ／Ｆ５２とデータ記憶部１２との間では、ＵＳＢの所定の規格に対応する信号（Ｄ＋，Ｄ−等）が授受され、オーディオＩ／Ｆ４６とデータ記憶部１２との間では、３線式シリアルディジタルオーディオフォーマットに対応する信号（ＬＲＣＫ，ＢＣＬＫ，ＳＤＡＴ［ＩｎおよびＯｕｔ］等）が授受される。
【００２９】
ＵＳＢ−Ｉ／Ｆ５２は、データ記憶部１２から読み出したデータを所定の情報処理機器（例えばパーソナルコンピュータ等）５４に向けて送信する機能、および／または所定の情報処理機器５４から出力されたデータをデータ記憶部１２に入力する機能を有する。
【００３０】
図５は、情報処理機器５４から読み出されたデータをＵＳＢ−Ｉ／Ｆ５２を経由して一旦データ記憶部１２に蓄え、そのデータをオーディオＩ／Ｆ４６およびデータ変換回路４４を経由して音声出力機器４８から出力する場合における、情報処理機器５４から出力されたＵＳＢ音声データ（上段）と、データ変換回路４４から出力された音声信号（下段）とを模式的に示している。この図５に示すように、ＵＳＢ音声データは、単位時間フレーム（１ｍｓ）に内に、比較的時間の短い１パケットのみとなっている。これに対し、音声信号は、単位時間フレームの全域に亘る信号となっている。
【００３１】
そして、上記本実施形態にかかるメモリアクセス回路１０を、このオーディオ機器用インタフェース装置４０に装備することができる。特に、オーディオＩ／Ｆ４６を、上述したメモリアクセス回路１０として構成するのが好適である。図５に示すように、音声信号は隣接するフレーム間の時間が短く、より迅速なアクセス先の切り替えが要求されるからである。さらに、ＵＳＢ−Ｉ／Ｆ５２も上述したメモリアクセス回路１０として構成してもよい。
【００３２】
以上、本発明の好適な実施形態について説明したが、本発明は上記実施形態には限定されず、種々の変形が可能である。また、本発明にかかるメモリアクセス回路は、特に、情報処理機器とオーディオ機器との間に設けられるオーディオ機器用インタフェース装置に好適であるが、これに限られず、データ記憶部の間欠的な領域に読み出し／書き込みアクセスを行うメモリアクセス回路であれば、本発明の対象とすることができる。
【図面の簡単な説明】
【００３３】
【図１】本発明の実施形態にかかるメモリアクセス回路の一構成例を示すブロック図である。
【図２】本発明の実施形態にかかるメモリアクセス回路におけるアドレスの更新およびデータ記憶部の構成の一例を示す図である。
【図３】本発明の実施形態にかかるメモリアクセス回路の動作の一例を示すフローチャートである。
【図４】本発明の実施形態にかかるメモリアクセス回路を含むオーディオ機器用インタフェース装置の一構成例を示すブロック図である。
【図５】図４のオーディオ機器用インタフェース装置に入出力されるデータおよび信号の一例を示す図である。
【図６】データ記憶部に確保される記憶領域の一例を示す図である。
【符号の説明】
【００３４】
１０  メモリアクセス回路、１２  データ記憶部、１４  アクセス処理部、１６  制御レジスタ、１８  アドレスレジスタ、２０  更新ビット指定レジスタ、２２  アドレス更新処理部、２４  アクセス数指定レジスタ、２６  外部回路、２８  データバス、３０  ＣＰＵ、４０  オーディオ機器用インタフェース装置、４２  マイクロコントローラ、４４  データ変換回路、４６  オーディオインタフェース回路（オーディオ  Ｉ／Ｆ）、４８  音声出力機器、５０  音声入力機器、５２  ＵＳＢ−インタフェース回路（ＵＳＢ  Ｉ／Ｆ）、５４  情報処理機器。
【図１】
2005141572.tif 000003
【図２】
2005141572.tif 000004
【図３】
2005141572.tif 000005
【図４】
2005141572.tif 000006
【図５】
2005141572.tif 000007
【図６】
2005141572.tif 000008