(57)【要約】【課題】ＬＳＩが複数のメモリと接続されていて、メモリがハンドシェイクアクセス方式でデータ転送を実行する場合に、アドレスバスが長時間１のメモリに対するアクセス信号を出力し続けることを回避する。【解決手段】ＬＳＩとメモリの間に保持回路を設ける。ＬＳＩはバスに所定時間だけアドレス情報やメモリを特定するためのアクセス信号を出力する。保持回路はこのアクセス信号を保持して、メモリに対して保持回路とメモリを繋ぐ信号線に印加し続ける。ＬＳＩは、記憶装置でデータ転送の準備がととのった時間を見計らって再度同じアクセス信号を出力してデータの読み出し、又は書き込みを実行する。【選択図】図１
2008015876.tif 000002
【特許請求の範囲】
【請求項１】
アドレスの情報を含む第１アクセス信号を出力するアクセス要求回路と、
第２アクセス信号を受けて内部記憶領域へのアクセスを行う記憶装置と、
前記アクセス要求回路とバス線で接続され、前記記憶装置と信号線で接続され、前記アクセス要求回路から出力された前記第１アクセス信号を受けて前記記憶装置に前記第１アクセス信号と同内容の前記第２アクセス信号をアクセス終了まで出力し続ける保持回路とを備え、
前記アクセス要求回路は、前記第１アクセス信号を、前記保持回路に対して当該第１アクセス信号を出力してから、記憶装置においてアクセスが終了するまでよりも短い所定時間だけ出力する
ことを特徴とするデータアクセスシステム。
【請求項２】
前記第１アクセス信号は、データの読み出し、又はデータの書き込みを要求する情報を含み、
前記記憶装置は更に、
前記保持回路からのアクセス信号に基づくデータ転送の準備が終了したことを示す完了信号を前記保持回路へと送出する完了信号送出手段と、
前記アクセス信号で指定されるアドレスのデータを出力する又は、当該アドレスで示される内部記憶領域にデータを書き込む入出力手段とを備え、
前記保持回路は更に、
前記完了信号を前記アクセス要求回路へと転送する完了信号転送手段と、
前記アクセス要求回路から送出されたデータを前記記憶装置に転送する、又は前記記憶装置から送出されたデータを前記アクセス要求回路に転送するデータ転送手段とを備え、
前記アクセス要求回路は、
前記記憶装置に初めてアクセスする場合に限り、前記完了信号を受けるまで前記バス線に前記アクセス信号を印加し続け、
更に、
データを前記バス線を介して送受信する送受信手段と、
初めて前記記憶装置に対して前記アクセス信号を前記バス線に印加してから、前記完了信号を受けるまでのアクセスウェイト時間を計測して記憶する計測手段と、
２回目以降のアクセスについては、前記アクセス要求回路からアクセス信号が前記所定時間の出力を開始するときに、出力されてから前記計測手段で記憶されている前記アクセスウェイト時間が経過したタイミングで前記送受信手段にデータの受信、又はデータの送信を開始させる制御手段とを備える
ことを特徴とする請求項１記載のデータアクセスシステム。
【請求項３】
前記記憶装置は更に、
アクセス信号を受けて、データ転送準備が整うまでの待機時間を予め記憶している待機時間記憶手段と、
前記待機時間を前記保持回路を介して前記アクセス要求回路に通知する通知手段とを備え、
前記アクセス要求回路は更に、
前記アクセス信号を所定時間出力してから、前記通知手段から通知された前記待機時間だけ待って、再度データ転送を実行するために前記アクセス信号を出力する
ことを特徴とする請求項１記載のデータアクセスシステム。
【請求項４】
前記保持回路は更に、
データを記憶するためのデータ記憶手段を備え、
前記アクセス要求回路から複数回の相異なる第１アクセス信号を受け、当該複数のアクセス信号それぞれに対応するアドレスにある前記記憶装置のデータを読み出して前記データ記憶手段に記憶させ、前記バス線を介して平行して前記複数のデータを前記データ記憶手段から前記アクセス要求回路に出力する
ことを特徴とする請求項２記載のデータアクセスシステム。
【請求項５】
前記アクセス要求回路は前記保持回路に対して、前記複数のデータを送信するバス線を指定し、
前記保持回路は、前記アクセス要求回路から指定されたバス線を用いて各データの転送を実行する
ことを特徴とする請求項４記載のデータアクセスシステム。
【請求項６】
前記保持回路は更に、
前記第１アクセス信号で指定されるアドレスのデータを前記アクセス要求回路に出力した後に、当該アドレスの値を所定値ｎ（ｎは自然数）だけ変動させて新たな第３アドレス情報を含む第３アクセス信号を生成する生成手段と、
前記第３アドレス情報を記憶するアドレス情報記憶手段と、
前記アクセス要求回路から出力される次のアクセス信号に含まれるアドレス情報と、前記アドレス情報記憶手段に記憶されている前記第３アドレス情報とが一致するかどうかを判定する判定手段とを備え、
前記出力手段は、前記生成手段で生成された第３アクセス信号を予め前記記憶装置に出力し、
前記記憶装置は、前記判定手段で、アドレス情報が一致すると判定された場合に、前記第３アドレス情報に対応するアドレスのデータを前記保持回路を介して前記アクセス要求回路に出力する
ことを特徴とする請求項２記載のデータアクセスシステム。
【請求項７】
前記保持回路は更に、前記生成手段で生成されたアドレスに対応する記憶装置のデータを記憶するための記憶手段を備え、
前記生成手段は、自身で生成したアドレスに対応する記憶装置のデータを前記記憶手段で記憶された後に新たなアドレス値を生成し、
前記アクセス要求回路から新たなアクセス信号が出力されて、当該アクセス信号によるアドレスが、前記記憶手段に記憶されているデータの前記記憶装置におけるアドレスが一致した場合に、一致したそのアドレスに対応するデータを即時転送する
ことを特徴とする請求項６記載のデータアクセスシステム。
【請求項８】
外部の記憶装置とハンドシェイク方式でメモリアクセスを行うデータアクセス装置であって、
アドレスの情報を含む第１アクセス信号を出力するアクセス要求回路と、
前記アクセス要求回路とバス線で接続され、前記記憶装置と信号線で接続され、前記アクセス要求回路から出力された前記第１アクセス信号を受けて前記記憶装置に前記第１アクセス信号と同内容の前記第２アクセス信号を前記記憶装置におけるアクセスが終了するまで出力し続ける保持回路とを備え、
前記アクセス要求回路は、前記第１アクセス信号を、前記保持回路に対して当該第１アクセス信号を出力してから、記憶装置においてアクセスが終了するまでよりも短い所定時間だけ出力する
ことを特徴とするデータアクセス装置。
【請求項９】
前記第１アクセス信号は、データの読み出し、又はデータの書き込みを要求する情報を含み、
前記保持回路は更に、
前記記憶装置からメモリアクセスが終了したことを示す完了信号を受けて前記アクセス要求回路へと転送する完了信号転送手段と、
前記アクセス要求回路から送出されたデータを前記記憶装置に転送する、又は前記記憶装置から送出されたデータを前記アクセス要求回路に転送するデータ転送手段とを備え、
前記アクセス要求回路は、
前記記憶装置に初めてアクセスする場合に限り所定時間ではなく前記完了信号を受けるまで前記バス線に前記アクセス信号を印加し、
更に、
データを前記バス線を介して送受信する送受信手段と、
初めて前記記憶装置に対して前記アクセス信号を前記バス線に印加してから、前記完了信号を受けるまでのアクセスウェイト時間を計測して記憶する計測手段と、
２回目以降のアクセスについては、前記アクセス要求回路からアクセス信号が前記所定時間の出力を開始するときに、出力されてから前記計測手段で記憶されている前記アクセスウェイト時間が経過したタイミングで前記送受信手段にデータの受信、又はデータの送信を開始させる制御手段とを備える
ことを特徴とする請求項６記載のデータアクセス装置。
【請求項１０】
外部の記憶装置とハンドシェイク方式でメモリアクセスを行うデータアクセス装置に搭載されるデータアクセス集積回路であって、
アドレスの情報を含む第１アクセス信号を出力するアクセス要求回路と、
前記アクセス要求回路とバス線で接続され、前記記憶装置と信号線で接続され、前記アクセス要求回路から出力された前記第１アクセス信号を受けて前記記憶装置に前記第１アクセス信号と同内容の前記第２アクセス信号を前記記憶装置におけるアクセスが終了するまで出力し続ける保持回路とを備え、
前記アクセス要求回路は、前記第１アクセス信号を、前記保持回路に対して当該第１アクセス信号を出力してから、記憶装置においてアクセスが終了するまでよりも短い所定時間だけ出力する
ことを特徴とするデータアクセス集積回路。
【請求項１１】
前記第１アクセス信号は、データの読み出し、又はデータの書き込みを要求する情報を含み、
前記保持回路は更に、
前記記憶装置からメモリアクセスが終了したことを示す完了信号を受けて前記アクセス要求回路へと転送する完了信号転送手段と、
前記アクセス要求回路から送出されたデータを前記記憶装置に転送する、又は前記記憶装置から送出されたデータを前記アクセス要求回路に転送するデータ転送手段とを備え、
前記アクセス要求回路は、
前記記憶装置に初めてアクセスする場合に限り所定時間ではなく前記完了信号を受けるまで前記バス線に前記アクセス信号を印加し、
更に、
データを前記バス線を介して送受信する送受信手段と、
初めて前記記憶装置に対して前記アクセス信号を前記バス線に印加してから、前記完了信号を受けるまでのアクセスウェイト時間を計測して記憶する計測手段と、
２回目以降のアクセスについては、前記アクセス要求回路からアクセス信号が前記所定時間の出力を開始するときに、出力されてから前記計測手段で記憶されている前記アクセスウェイト時間が経過したタイミングで前記送受信手段にデータの受信、又はデータの送信を開始させる制御手段とを備える
ことを特徴とする請求項９記載のデータアクセス集積回路。
【請求項１２】
アクセス要求回路と保持回路とを含むデータアクセス装置において外部の記憶装置とハンドシェイク方式でデータアクセスを行うためのデータアクセス方法であって、
前記アクセス要求回路に、前記保持回路に対して、アドレスの情報を含む第１アクセス信号を所定時間だけ出力させるアクセス要求出力ステップと、
前記アクセス要求回路とはバス線で接続され、前記記憶装置とも信号線で接続された保持回路が、前記アクセス要求回路から出力された前記第１アクセス信号を受けて前記記憶装置に前記第１アクセス信号と同内容の前記第２アクセス信号をアクセス終了まで出力し続ける第２アクセス信号出力ステップとを含む
ことを特徴とするデータアクセス方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＳＩとメモリ間のデータ転送に関し、特にハンドシェイクアクセスによりデータ転送を実行するデータアクセスシステムに関する。
【背景技術】
【０００２】
外部の、例えばハードディスク装置などの記憶装置と接続されてハンドシェイクアクセスでデータのやり取りを実行するＬＳＩがある。ハンドシェイクアクセスでは、ＬＳＩから、記憶装置に対して、アクセスしたいデータの位置を指定するアドレス信号を出力し続ける。
ＬＳＩがアドレス信号を出力し続ける理由は以下の通りである。ＬＳＩは、最初にどのアドレス位置のデータを読み出したいのか、あるいはどのアドレス位置に書き込みたいのかを指定するためにアドレス信号を印加する必要がある。記憶装置においては、データの読み出し、あるいは書き込みの準備のための時間が必要であり、記憶装置によってその時間はまちまちである。また、記憶装置は、実際のデータを転送する際にはアドレス信号を受けていないとデータを転送できない。よって、予め固定的にタイミングが定められていることを前提とするハンドシェイクアクセスでデータ転送を行う記憶装置に対しては、どのタイミングでデータの読み出し、又は書き込みを実行できるかＬＳＩは認識できないので、結果として実際のデータ転送が終了するまでアドレス信号を出力し続けることになる。
【０００３】
特許文献１には、それぞれアクセス方式の異なる複数のメモリと、アクセス方式を切り替えてアクセスを実行するデータ転送装置が開示されており、そのアクセス方式にはハンドシェイクアクセスも含まれている。
【特許文献１】特開２００５−７８３０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、ＬＳＩにおいては、コストを抑えるためにバス線の信号線をできるだけ少なくしたいという要望がある。そのためには、LSIが記憶装置などの複数の回路や装置とバス線を介して接続される場合に、指示を出すためのコマンドバスや、アドレスバスを共有化することが、しばしば行われる。
しかし、上述したように、ハンドシェイクアクセスでは、アドレスバスはＬＳＩと１の記憶装置間でアクセスが終了するまで占有されてしまう。アドレスバスを共有化している場合には、アドレスバスを占有されると、その他の回路に対する指示を出力できないという問題が発生する。
【０００５】
そこで、本発明においては、ハンドシェイクアクセスによりデータ転送を行ってもバスを長時間占有することがないデータアクセスシステムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、本発明はデータアクセスシステムであって、アドレスの情報を含む第１アクセス信号を出力するアクセス要求回路と、第２アクセス信号を受けて内部記憶領域へのアクセスを行う記憶装置と、前記アクセス要求回路とバス線で接続され、前記記憶装置と信号線で接続され、前記アクセス要求回路から出力された前記第１アクセス信号を受けて前記記憶装置に前記第１アクセス信号と同内容の前記第２アクセス信号をアクセス終了まで出力し続ける保持回路とを備え、前記アクセス要求回路は、前記第１アクセス信号を、前記保持回路に対して当該第１アクセス信号を出力してから、記憶装置においてアクセスが終了するまでよりも短い所定時間だけ出力するを備えることを特徴としている。
【０００７】
また、本発明は、外部の記憶装置とハンドシェイク方式でメモリアクセスを行うデータアクセス装置であって、アドレスの情報を含む第１アクセス信号を出力するアクセス要求回路と、前記アクセス要求回路とバス線で接続され、前記記憶装置と信号線で接続され、前記アクセス要求回路から出力された前記第１アクセス信号を受けて前記記憶装置に前記第１アクセス信号と同内容の前記第２アクセス信号を前記記憶装置におけるアクセスが終了するまで出力し続ける保持回路とを備え、前記アクセス要求回路は、前記第１アクセス信号を、前記保持回路に対して当該第１アクセス信号を出力してから、記憶装置においてアクセスが終了するまでよりも短い所定時間だけ出力することを特徴としている。
【０００８】
また、本発明は、外部の記憶装置とハンドシェイク方式でメモリアクセスを行うデータアクセス装置に搭載されるデータアクセス集積回路であって、アドレスの情報を含む第１アクセス信号を出力するアクセス要求回路と、前記アクセス要求回路とバス線で接続され、前記記憶装置と信号線で接続され、前記アクセス要求回路から出力された前記第１アクセス信号を受けて前記記憶装置に前記第１アクセス信号と同内容の前記第２アクセス信号を前記記憶装置におけるアクセスが終了するまで出力し続ける保持回路とを備え、前記アクセス要求回路は、前記第１アクセス信号を、前記保持回路に対して当該第１アクセス信号を出力してから、記憶装置においてアクセスが終了するまでよりも短い所定時間だけ出力することを特徴としている。
【０００９】
また、本発明は、アクセス要求回路と保持回路とを含むデータアクセス装置において外部の記憶装置とハンドシェイク方式でデータアクセスを行うためのデータアクセス方法であって、前記アクセス要求回路に、前記保持回路に対して、アドレスの情報を含む第１アクセス信号を所定時間だけ出力させるアクセス要求出力ステップと、前記アクセス要求回路とはバス線で接続され、前記記憶装置とも信号線で接続された保持回路が、前記アクセス要求回路から出力された前記第１アクセス信号を受けて前記記憶装置に前記第１アクセス信号と同内容の前記第２アクセス信号をアクセス終了まで出力し続ける第２アクセス信号出力ステップとを含むことを特徴としている。
【００１０】
ここで、バス線は他の回路とも時を異にして共用できるものである。また、アクセス要求回路のバスへの信号出力は、他の回路の信号出力によって妨げられないよう自ら、又は他の調停回路によって制御される。
【発明の効果】
【００１１】
こうすることで、従来においては、アドレスバスにアドレス信号を印加し続けなければならなかったが、保持回路がその代役を勤めるのでアドレスバスの解放が従来よりも早まる。
アドレス信号が印加されてから記憶装置においてはデータ転送の準備が整うまでの待ち時間が発生する。この時間は記憶装置によって異なるが、およそ、数μ〜数十μsecかかる。この時間はＬＳＩの世界においてはわりと長時間になるので、この間、アクセス要求回路はその他のメモリに指示を出すことができず、待機している状態になるので無駄が発生しているといえる。アクセス信号を印加し続ける保持回路をアクセス要求回路と記憶装置の間に設けることで、アクセス要求回路は、記憶装置でデータ転送の準備が整うまで待機する必要がなくなるのでアドレスバスを解放することができる。するとアクセス要求回路は例えば、そのアドレスバスが別のことに利用できるので他の記憶装置に対してのアクセス要求を送ることができるようになる。
【００１２】
また、前記データアクセスシステムにおいて、前記第１アクセス信号は、データの読み出し、又はデータの書き込みを要求する情報を含み、前記記憶装置は更に、前記保持回路からのアクセス信号に基づくデータ転送の準備が終了したことを示す完了信号を前記保持回路へと送出する完了信号送出手段と、前記アクセス信号で指定されるアドレスのデータを出力する又は、当該アドレスで示される内部記憶領域にデータを書き込む入出力手段とを備え、前記保持回路は更に、前記完了信号を前記アクセス要求回路へと転送する完了信号転送手段と、前記アクセス要求回路から送出されたデータを前記記憶装置に転送する、又は前記記憶装置から送出されたデータを前記アクセス要求回路に転送するデータ転送手段とを備え、前記アクセス要求回路は、前記記憶装置に初めてアクセスする場合に限り、前記完了信号を受けるまで前記バス線に前記アクセス信号を印加し続け、更に、データを前記バス線を介して送受信する送受信手段と、初めて前記記憶装置に対して前記アクセス信号を前記バス線に印加してから、前記完了信号を受けるまでのアクセスウェイト時間を計測して記憶する計測手段と、２回目以降のアクセスについては、前記アクセス要求回路からアクセス信号が前記所定時間の出力を開始するときに、出力されてから前記計測手段で記憶されている前記アクセスウェイト時間が経過したタイミングで前記送受信手段にデータの受信、又はデータの送信を開始させる制御手段とを備えることとしてよい。
【００１３】
また、前記データアクセス装置において、前記第１アクセス信号は、データの読み出し、又はデータの書き込みを要求する情報を含み、前記保持回路は更に、前記記憶装置からメモリアクセスが終了したことを示す完了信号を受けて前記アクセス要求回路へと転送する完了信号転送手段と、前記アクセス要求回路から送出されたデータを前記記憶装置に転送する、又は前記記憶装置から送出されたデータを前記アクセス要求回路に転送するデータ転送手段とを備え、前記アクセス要求回路は、前記記憶装置に初めてアクセスする場合に限り所定時間ではなく前記完了信号を受けるまで前記バス線に前記アクセス信号を印加し、更に、データを前記バス線を介して送受信する送受信手段と、初めて前記記憶装置に対して前記アクセス信号を前記バス線に印加してから、前記完了信号を受けるまでのアクセスウェイト時間を計測して記憶する計測手段と、２回目以降のアクセスについては、前記アクセス要求回路からアクセス信号が前記所定時間の出力を開始するときに、出力されてから前記計測手段で記憶されている前記アクセスウェイト時間が経過したタイミングで前記送受信手段にデータの受信、又はデータの送信を開始させる制御手段とを備えることとしてよい。
【００１４】
また、前記データアクセス集積回路において、前記第１アクセス信号は、データの読み出し、又はデータの書き込みを要求する情報を含み、前記保持回路は更に、前記記憶装置からメモリアクセスが終了したことを示す完了信号を受けて前記アクセス要求回路へと転送する完了信号転送手段と、前記アクセス要求回路から送出されたデータを前記記憶装置に転送する、又は前記記憶装置から送出されたデータを前記アクセス要求回路に転送するデータ転送手段とを備え、前記アクセス要求回路は、前記記憶装置に初めてアクセスする場合に限り所定時間ではなく前記完了信号を受けるまで前記バス線に前記アクセス信号を印加し、更に、データを前記バス線を介して送受信する送受信手段と、初めて前記記憶装置に対して前記アクセス信号を前記バス線に印加してから、前記完了信号を受けるまでのアクセスウェイト時間を計測して記憶する計測手段と、２回目以降のアクセスについては、前記アクセス要求回路からアクセス信号が前記所定時間の出力を開始するときに、出力されてから前記計測手段で記憶されている前記アクセスウェイト時間が経過したタイミングで前記送受信手段にデータの受信、又はデータの送信を開始させる制御手段とを備えることとしてよい。
【００１５】
これにより、アクセス要求回路は、記憶装置に初めてアクセスする場合には記憶装置においてデータ転送の準備が整うまでのアクセス時間をカウントするようになる。アクセス時間をカウントすることで決定したタイミングで、２回目以降の記憶装置に対するアクセスにおいて、データ転送を実行する際に再度アクセス信号を印加するタイミングを決定することができる。
【００１６】
よって、アクセス信号を一度出力した後、データ転送のために再度アクセス信号を印加するまでの間、バス線を解放することができ、アクセス要求回路は他の回路への指示を出力することができるようになる。
また、前記データアクセスシステムにおいて、前記記憶装置は更に、アクセス信号を受けて、データ転送準備が整うまでの待機時間を予め記憶している待機時間記憶手段と、前記待機時間を前記保持回路を介して前記アクセス要求回路に通知する通知手段とを備え、前記アクセス要求回路は更に、前記アクセス信号を所定時間出力してから、前記通知手段から通知された前記待機時間だけ待って、再度データ転送を実行するために前記アクセス信号を出力することとしてよい。
【００１７】
これにより、アクセス要求回路は、記憶装置から、予めアクセス時間を取得しておくことで、初回のアクセスであっても、アクセス時間をカウントして、その間アドレスバスを解放することができるようになる。
また、前記データアクセスシステムにおいて、前記保持回路は更に、データを記憶するためのデータ記憶手段を備え、前記アクセス要求回路から複数回の相異なる第１アクセス信号を受け、当該複数のアクセス信号それぞれに対応するアドレスにある前記記憶装置のデータを読み出して前記データ記憶手段に記憶させ、前記バス線を介して平行して前記複数のデータを前記データ記憶手段から前記アクセス要求回路に出力することとしてよい。
【００１８】
アクセス要求回路は従来よりもアドレスバスの解放が早まるので複数のアクセス要求を出力することが可能となっているが、上記の構成を備えることにより、複数のデータアクセス要求が発生した場合に、それぞれのアクセス要求に対応するデータの転送を同時に並行して実行できるようになる。こうすることで、アクセス要求回路がデータを読み出すとき、あるいは書き込むときにデータ読み出し、若しくはデータ書き込みのバス線を２つの記憶装置で共用していた場合に、一度だけ読み出し信号若しくは書き込み信号を印加するだけですむようになる。
【００１９】
また、前記データアクセスシステムにおいて、前記アクセス要求回路は前記保持回路に対して、前記複数のデータを送信するバス線を指定し、前記保持回路は、前記アクセス要求回路から指定されたバス線を用いて各データの転送を実行することとしてよい。
これにより、複数のデータを転送する場合に、アクセス要求回路から保持回路に対してデータ転送を実行するバス線を指定することにより、アクセス要求回路はどのバス線でデータが転送されてくるかを認識し、誤ることなくデータ転送を実行できる。また、これによりデータバスに複数の記憶装置が接続されていた場合に、LSIはデータ転送のバスを指定することで複数の記憶装置からそれぞれに接続される保持回路を介して並行してデータの転送を実行できるようにもなる。
【００２０】
また、前記データアクセスシステムにおいて、前記保持回路は更に、前記第１アクセス信号で指定されるアドレスのデータを前記アクセス要求回路に出力した後に、当該アドレスの値を所定値ｎ（ｎは自然数）だけ変動させて新たな第３アドレス情報を含む第３アクセス信号を生成する生成手段と、前記第３アドレス情報を記憶するアドレス情報記憶手段と、前記アクセス要求回路から出力される次のアクセス信号に含まれるアドレス情報と、前記アドレス情報記憶手段に記憶されている前記第３アドレス情報とが一致するかどうかを判定する判定手段とを備え、前記出力手段は、前記生成手段で生成された第３アクセス信号を予め前記記憶装置に出力し、前記記憶装置は、前記判定手段で、アドレス情報が一致すると判定された場合に、前記第３アドレス情報に対応するアドレスのデータを前記保持回路を介して前記アクセス要求回路に出力することとしてよい。
【００２１】
この構成を保持回路が備えることにより、保持回路は、アクセス要求回路からのアクセス要求なしに、一度アクセスしたアドレスの次のアドレスに対するアクセスを実行する。
このようにすることで保持回路が予めアクセスしておくことでアクセス要求回路からの次のアクセス要求がきて、保持回路が指定したアドレスに一致した場合にすぐにデータの転送を実行できるようになる。
【００２２】
また、前記データアクセスシステムにおいて、前記保持回路は更に、前記生成手段で生成されたアドレスに対応する記憶装置のデータを記憶するための記憶手段を備え、前記生成手段は、自身で生成したアドレスに対応する記憶装置のデータを前記記憶手段で記憶された後に新たなアドレス値を生成し、前記アクセス要求回路から新たなアクセス信号が出力されて、当該アクセス信号によるアドレスが、前記記憶手段に記憶されているデータの前記記憶装置におけるアドレスが一致した場合に、一致したそのアドレスに対応するデータを即時転送することとしてよい。
【００２３】
保持回路がデータを記憶するための記憶手段を備えることにより、保持回路の方で複数のデータを準備しておいて、保持回路で生成したアドレスに対するアクセス要求がアクセス要求回路から到来した場合に、即座にデータの転送ができるようになる。また、記憶装置を備えておくことで複数のデータの準備をすることができるので、アドレスの一致率をあげることができ、即座にデータを転送できる確立を高めることができる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の一実施形態であるデータアクセスシステムについて図面を用いて説明する。
＜実施の形態１＞
＜概要＞
データ転送が終了するまで、記憶装置を特定する信号と、読み出し又は書き込み要求を特定する信号と、記憶装置内部の記憶領域のアドレスを指定する信号とを受け続けてデータ転送を行う記憶装置とマイクロコントローラがデータ転送を行うとする。
【００２５】
従来においては、マイクロコントローラは、記憶装置に対して各信号を印加し続ける必要があり、記憶装置でデータ転送の準備が整うまでの間待機していることになる。よって、その間、その他のアクセス要求を出せなくなるので、マイクロコントローラと記憶装置の間に保持回路を設ける。マイクロコントローラは、保持回路に対して、アクセスを要求する信号を所定時間、例えば数十nsecだけ印加し、保持回路はその信号を記憶して、アクセス要求回路の代わりに記憶装置に対してアクセスを要求する信号を印加し続ける。そしてデータ転送準備が整った時点で、記憶装置を特定する信号と再度読み出し又は書き込み要求を特定する信号とを印加してデータ転送を実行する。
【００２６】
こうすることでマイクロコントローラと保持回路とを接続するアドレスバスの解放を早めることができる。
＜構成＞
本発明に係るデータアクセスシステムの機能構成を図１のブロック図に示した。
同図に示すようにデータアクセスシステムは、マイクロコントローラ１００、保持回路１３０、記憶装置１５０とを含んで構成される。
【００２７】
上述のアクセス要求回路は、マイクロコントローラ１００を、保持回路は、保持回路１３０を、記憶装置は、記憶装置１５０に相当する。
マイクロコントローラ１００は、ＣＰＵ（Central Processing Unit）１１１と、ＢＣＵ（Bus Control Unit）１１２と、カウンタ１１３とを含んで構成され、記憶装置１５０にアクセスしてデータのやり取りを実行する機能を有する。
【００２８】
ＣＰＵ１１１は、記憶装置１５０との間でデータの読み出し及び書き込みの機能を有するプロセッサであり、厳密にはＢＣＵ１１２に対して記憶装置１５０への要求を出力させる機能を有する。ＣＰＵ１１１は、ＢＣＵ１１２と信号線１１４〜１１９で接続されている。
信号線１１４は、ＣＰＵ１１１がＢＣＵ１１２に対して記憶装置１５０のどのアドレスにアクセスするのかを示す信号を送信するための信号線で、どのアドレスにデータを読み出すのか、あるいはどのアドレスに書き込むのかを指定するアドレス情報Adrが送信される。
【００２９】
信号線１１５は、ＣＰＵ１１１がＢＣＵ１１２と送受信する実際のデータを乗せるための信号線で、Ｎ本の信号線からなり、一度にＮbitのデータを送受信する。当該信号線では、実際のデータ情報Dataが送受信される。
信号線１１６は、ＣＰＵ１１１が記憶装置１５０に対して、データの読み出しを要求するための読出要求信号r_reqを印加するための信号線である。当該信号線１１６は、１本の信号線からなり、電圧値がＨ（Ｈｉ）レベルかＬ（Ｌｏｗ）レベルかでデータを示し、Ｈレベルの電圧が印加されているとＣＰＵ１１１がデータの読み出しを要求していることを意味する。
【００３０】
信号線１１７は、ＣＰＵ１１１が記憶装置１５０に対して、データの書き込みを要求するための書込要求信号w_reqを印加するための信号線である。当該信号線１１７は、１本の信号線からなり、電圧値がＨレベルかＬレベルかでデータを示し、Ｈレベルの電圧が印加されているとＣＰＵ１１１がデータの書き込みを要求していることを意味する。
信号線１１８は、ＢＣＵ１１２から、読出完了信号r_actを印加するための信号線である。当該信号線１１８は、１本の信号線からなり、電圧値がＨレベルかＬレベルかでデータを示す。Ｈレベルの電圧が印加されていると、ＣＰＵ１１１は、データの記憶装置１５０の要求アドレス位置へのアクセスが終了し、データの受信が可能な状態になったことを認識し、データの受信を開始する。
【００３１】
信号線１１９は、ＢＣＵ１１２から、読出完了信号r_reqを印加するための信号線である。当該信号線１１９は、１本の信号線からなり、電圧値がＨレベルかＬレベルかでデータを示し、Ｈレベルの電圧が印加されているとＣＰＵ１１１はデータの記憶装置１５０の要求アドレス位置へのアクセスが終了し、データの送信が可能な状態になったことを認識し、データの送信を開始する。
【００３２】
ＢＣＵ１１２は、マイクロコントローラ１００の外部に接続されるバス線を管理し、実際にどこの要求によるデータを優先するかを判断する機能を有する。例えば図示はしていないが、ＣＰＵ１１１の他にも外部の装置にアクセスを要求するＣＰＵやＤＭＡ（Direct Memory Access）コントローラなどがあった場合にどのアクセスを優先するかを判断する。また実際に外部の装置とのデータの送受信の仲介をする機能を有する。
【００３３】
ＢＣＵ１１２は前述したように信号線１１４〜１１９でＣＰＵ１１１と接続されており、更にカウンタ１１３と信号線１２１、１２２、１３７で接続されている。また、保持回路１３０ともバス線１３１〜１３７で接続されている。
バス線１３１は、ＢＣＵ１１２が保持回路１３０に対して、保持しているメモリアクセスに関するデータの更新を要求する更新信号A_stを印加するための信号線である。当該バス線１３１は、１本の信号線からなり、電圧値がＨレベルかＬレベルかでデータを示し、Ｈレベルの電圧が印加されていると更新を要求していることになる。
【００３４】
バス線１３２は、アドレス信号Adrに基づいて定められる記憶装置１５０のアドレス位置を指定するアドレス信号Adr_0を印加するための信号線である。なお、アドレス信号Adrとアドレス信号Adr_0とは同内容の信号である。
バス線１３３は、アドレス信号Adrに含まれている、複数の記憶装置があった場合には、どの記憶装置であるかを指定するための情報であるチップセレクト信号CS_0を印加するための信号線である。
【００３５】
バス線１３４は、リード信号r_en_0を印加するための信号線である。当該バス線１３４に電圧が印加されていると、ＢＣＵ１１２から記憶装置１５０に対してデータの読み出しの要求があることを意味する。
バス線１３５は、ライト信号write_en_0を印加するための信号線である。当該バス線１３５に電圧が印加されていると、ＢＣＵ１１２から記憶装置１５０に対してデータの書き込みの要求があることを意味する。
【００３６】
バス線１３６は、Ｎ本の信号線からなり、Ｎbitのデータを送受信するための信号線である。
バス線１３７は、保持回路１３０からＢＣＵ１１２及び、カウンタ１１３に対して記憶装置１５０の要求アドレス位置へのアクセスが完了したことを示すアクセス完了信号DK_0を印加するための信号線である。
【００３７】
カウンタ１１３は、ＢＣＵ１１２と信号線１２１、１２２で接続されている。また、バス線１３３、１３７とも接続されている。
カウンタ１１３は、２回目以降のマイクロコントローラ１００から記憶装置１５０にアクセスする際にデータを読み出す、又はデータを書き込むためのタイミングを決定する機能を有する。カウンタ１１３は、マイクロコントローラ１００から初めて記憶装置１５０にアクセスが行くときに、アクセスに要した時間ｎをカウントする機能を要する。そして、マイクロコントローラ１００から２度目以降の記憶装置１５０にアクセスが行くときに、カウントしていたｎからカウントダウンを実行し、１になったときにＢＣＵ１１２に対してＣＰＵ１１１と記憶装置１５０との接続を確立を要求する信号stop_reqを信号線１２１に印加する。接続を確立するとは、ＢＣＵ１１２が、チップセレクト信号CS_0と、リード信号r_en_0若しくはライト信号w_en_0のいずれかの信号とを保持回路１３０に出力することをいう。また、マイクロコントローラ１００から、記憶装置１５０に対して初回アクセスを行う場合には、ＢＣＵ１１２からの信号線１２２に印加されるカウントイニシャル信号count_iniを受けてカウントを開始する。そして、バス線１３７を介して受けたアクセス終了信号DK_0を受けてカウントを停止する。カウントして得られた時間を、記憶装置１５０のアクセス時間として記憶する。
【００３８】
保持回路１３０は、ＢＣＵ１１２からのメモリアクセス信号を受けて保持し、記憶装置１５０にメモリアクセス信号を伝達し、データの送受信を実行する機能を有する。保持回路１３０は、記憶装置１５０とはハンドシェイク方式でアクセスを行う。
保持回路１３０は、前述したようにＢＣＵ１１２とはバス線１３１〜１３７で接続されており、更に記憶装置１５０とは信号線１５１〜１５６で接続されている。
【００３９】
記憶装置１５０は、データを記憶し、データの送受信を行う機能を有する。具体的には、ハードディスク装置や、ＲＡＭ、などのメモリによって構成される。
＜動作＞
次に、実施の形態１に係るデータアクセスシステムの動作を図を用いて説明する。
図２は、マイクロコントローラ１００から記憶装置１５０に対して初めてアクセスした場合の、各信号線を流れる信号の状態を示したタイミングチャートである。本図は、横軸方向に時間軸をとっており、左から右の方向に向かって時間が経過しているものとする。また、各信号のＴ以下の数値は、図１の機能図の信号線の数値、あるいは機能部の数値と対応するように記載している。また、各信号をつなぐ矢印は、各信号の立ち上がりや立下りの起因を示すものである。
【００４０】
ここでは、データ読み出しの場合を例にとっている。データ書き込みの場合についても、書き込み以外の部分については、本例と同様となる。
まず、ＣＰＵ１１１がＢＣＵ１１２に対して、記憶装置１５０のアドレスＡにあるデータを要求して、信号Ｔ１１４に示すように、信号線１１４にアドレスＡを印加する。同時に、信号Ｔ１１６に示すように、信号線１１６にデータ読み出しであることを示す読出要求信号r_reqを印加する。
【００４１】
すると、ＢＣＵ１１２は、信号Ｔ１３２に示すようにバス１３２にアドレスＡを印加する。また、信号Ｔ１３３に示すようにバス１３３にチップセレクト信号CS_0を、バス１３４にリード信号r_en_0をそれぞれ印加する。更新信号A_stもバス１３１に印加する。
と同時に信号Ｔ１２２に示すように、カウントイニシャル信号count_iniを信号線１２２に印加する。当該信号線が印加されることにより、カウンタ１１３は、信号Ｔ１１３に示すように、アクセス時間のカウントを開始する。
【００４２】
更新信号A_stを受けることにより、ＢＣＵ１１２から印加されてきた各信号を内部のバッファに記憶し、同内容の信号をそれぞれ信号線１５１〜１５３に印加する。
アドレス信号Adr_1、チップセレクト信号CS_1、リード信号r_en_1の印加を受けた記憶装置１５０はアドレス信号Adr_1で指定されるアドレスへのアクセスを開始し、データ送信の準備を行う。データ送信の準備が整ったら、信号Ｔ１５６に示されるように、アクセス準備が整ったことを示すアクセス完了信号DK_1を信号線１５６に印加する。
【００４３】
信号Ｔ１３７に示すように、アクセス完了信号DK_1を受けた保持回路１３０は、アクセス完了信号DK_0をバス線１３７に印加する。
DK_0を受けてカウンタ１１３は、カウントしていたアクセス時間のカウントを終了する。そしてカウンタ１１３は、カウントして得られた時間ｎを記憶する。
信号Ｔ１３６に示すように、保持回路１３０は、アドレスＡで指定されるデータDat_Aを受けて、それをそのまま、ＢＣＵ１１２に転送する。
【００４４】
ＣＰＵ１１１は、ＢＣＵ１１２を介してデータDat_Aを受信し、終了する。
次に、図３に示すタイミングチャートを用いて、２回目以降のマイクロコントローラ１００から記憶装置１５０へのアクセスを各信号線に印加される信号を用いて説明する。
まず、図３の信号Ｔ１１４及びＴ１１６に示すように、ＣＰＵ１１１からＢＣＵ１１２に対してリード要求信号r_reqとアドレス信号Adrとを印加する。
【００４５】
すると、ＢＣＵ１１２は保持回路１３０に対して、アドレス信号Adr_0をバス線１３２に、チップセレクト信号CS_0をバス線１３３に、リード信号r_en_0をバス線１３４にそれぞれ印加する。
また、信号Ｔ１１３に示すように、同時にチップセレクト信号CS_0が印加されたのを受けて、カウンタ１１３は記憶装置１５０のアクセス時間ｎのカウントダウンを開始する。
【００４６】
保持回路１３０は、更新信号A_st、アドレス信号Adr_0、チップセレクト信号CS_0、リード信号r_en_0を受けて、信号Ｔ１５１〜１５３に示すように、アドレス信号Adr_1、チップセレクト信号CS_1、リード信号r_en_1をそれぞれ信号線１５１、１５２、１５３に印加して保持回路１３０から記憶装置１５０へのアクセスを開始する。
そして信号Ｔ１１３に示すように、カウンタ１１３がアクセス時間をｎからカウントダウンしていって「０」になった時点で、信号線１２１の電位をＨレベルに立ち上げて、終了要求信号stop_reqをＢＣＵ１１２に出力する。この時点で信号Ｔ１５５に示すように、アドレスＡに対応するデータDat_Aの転送準備が整っている。
【００４７】
終了要求信号stop_reqを受けたＢＣＵ１１２は、信号Ｔ１３１に示すように、バス線１３１を用いて更新信号A_stを保持回路１３０に出力する。また、同時に、信号Ｔ１３３、Ｔ１３４に示すように、バス線１３３、１３４の電位をＨレベルに立ち上げて、チップセレクト信号CS_0とリード信号r_en_0を出力する。
チップセレクト信号CS_0と、リード信号r_en_0が印加されることで、保持回路１３０からＢＣＵ１１２へのデータ転送が可能になり、信号Ｔ１３６に示すようにデータバス１３６を通じて、データDat_A’の転送が実行される。
【００４８】
ＢＣＵ１１２が受け取ったデータDat_A’は、信号Ｔ１１５に示すように、信号線１１５を通じてＣＰＵ１１１に転送される。
以上の図２、図３に示したタイミングチャートの流れをマイクロコントローラ１００の動作の観点からみると図４に示すフローチャートのようになる。
図４に示すように、ＣＰＵ１１１は、ＢＣＵ１１２に対して記憶装置へのアクセスを要求する信号を印加する（ステップＳ４０１）。
【００４９】
ＢＣＵ１１２は、そのアクセスが記憶装置への初回アクセスかどうかを検出する（ステップＳ４０３）。これは、信号線１１４で印加されたアドレス信号Adrで指定される記憶装置へのアクセスについて過去の履歴を残すことで検証することができる。
これが初回アクセスであった場合には（ステップＳ４０３のＹＥＳ）、ＢＣＵ１１２は、アドレス信号Adr_0をバス線１３２に印加する。また、バス線１３２、１３３にアドレス信号Adr_0とチップセレクト信号CS_0を印加する。そして、ＣＰＵ１１１からのアクセス要求がデータ読み出し要求であった場合にバス線１３４にリード信号r_en_0を、書き込み要求であった場合にバス線１３５にライト信号w_en_0を印加する（ステップＳ４０２）。
【００５０】
同時にＢＣＵ１１２は、信号線１２２を介してカウントイニシャル信号count_iniをカウンタ１１３に出力する。カウントイニシャル信号を受けたカウンタ１１３は、アクセス時間のカウントを開始する（ステップＳ４０４）。
そして、アクセス準備が整ったことを示すアクセス完了信号DK_0が保持回路１３０から出力されたかどうかをカウンタ１１３が検出する（ステップＳ４０６）。検出するまでは、カウントをし続ける（ステップＳ４０６のＮＯ）。
【００５１】
アクセス完了信号DK_0が保持回路１３０から出力された場合に（ステップＳ４０６のＹＥＳ）、カウンタ１１３は、アクセス時間のカウンティングを停止する。そして、カウントした時間ｎを記憶する（ステップＳ４０８）。
そして、記憶装置１５０からのデータの読み出し又は、記憶装置１５０へのデータの書き込みが実行される（ステップＳ４１０）。
【００５２】
一方、記憶装置１５０へのアクセスが初回時のアクセスでなかった場合には（ステップＳ４０３のＮＯ）、ＢＣＵ１１２はバス線１３２、１３３に、アドレス信号Adr_0、チップセレクト信号CS_0を所定時間だけ印加し続ける。また、読み出し、あるいは書き込みを指定する信号をバス線１３４若しくは１３５のいずれかに電荷を所定時間だけ印加する（ステップＳ４０５）。ここでいう所定時間は、記憶装置へのアクセスを開始してから、データの転送がの準備が整うまでの時間よりも短ければ何でも良く、例えば数ｎsec（ナノセカンド）とする。
【００５３】
カウンタ１１３は、チップセレクト信号CS_0が印加されたことと、カウントイニシャル信号count_iniが印加されていないことを検出して、記憶装置１５０のアクセス時間ｎのカウントダウンを開始する（ステップＳ４０７）。
そしてカウントが０になった時点で、カウンタ１１３はstop_reqをＢＣＵ１１２に出力する。ＢＣＵ１１２はこれを受けて、再度チップセレクト信号CS_0と、読み出し又は書き込みの信号を所定時間だけ印加する（ステップＳ４０９）。
【００５４】
そしてマイクロコントローラ１００は記憶装置１５０からのデータの読み出し、又は記憶装置１５０へのデータの書き込みを実行して（ステップＳ４１０）終了する。
以上が、データアクセスシステムにおける動作である。
上記に述べてきたように、２回目以降の記憶装置１５０へのアクセスについてはアドレス信号に関してはバス線１３２には所定時間しか印加されていないので、従来よりもバス線１３２の解放が早くなっている。よって、アドレスバスをその他の用途、例えば記憶装置１５０以外の記憶装置へのアクセスに用いたりすることができるようになる。
＜実施の形態２＞
実施の形態１においては、記憶装置が一つの場合を説明したが、実施の形態２においては、記憶装置が複数ある場合を説明する。また、データ転送において二つの記憶装置に対してほぼ同時にアクセス要求が発生した場合にデータ転送の時間を短縮できる技術を開示する。
＜構成＞
実施の形態２に係るデータアクセスシステムについて図５に示す機能ブロック図を用いて説明する。ここでは実施の形態１と異なる構成についてを重点的に説明する。
【００５５】
図５に示すように、実施の形態２においては実施の形態１に加えて更なる保持回路と記憶装置とを含んで構成されている。
実施の形態２に係るデータアクセスシステムは、図５に示すように、ＣＰＵ５１１と、ＢＣＵ５１２と、カウンタ５１３と、保持回路５３０と、記憶装置５５０と、保持回路５７０と、記憶装置５９０とを含んで構成される。
【００５６】
ここで、ＣＰＵ５１１は実施の形態１のＣＰＵ１１１と、ＢＣＵ５１２は、実施の形態１のＢＣＵ１１２と、保持回路５３０と５７０は、実施の形態１の保持回路１３０と、記憶装置５５０と５９０は、実施の形態１の記憶装置１５０とほぼ同様の機能を有する。以下には、実施の形態１とは異なる構成部分を記述する。
但し、ＣＰＵ５１１は、２つの記憶装置、記憶装置５５０と記憶装置５９０に対してデータの読み出し、もしくは書き込みを実行することができる。
【００５７】
また、カウンタ１１３は、第１カウンタ５２６と第２カウンタ５２７とを備えている。第１カウンタは、記憶装置５５０のアクセス時間をカウントする機能を有し、第２カウンタは、記憶装置５９０のアクセス時間をカウントする機能を有する。
保持回路５３０は、コントロール回路５３１を含んで構成される。また、保持回路５７０は、コントロール回路５７１とを含んで構成される。コントロール回路５３１、及び、コントロール回路５７１はＢＣＵ５１２からの指示により、データ転送の際に、データバスのどの帯域を使用するかを決定する機能を有し、決定されたデータバスを用いてＢＣＵ５１２にデータを転送する。具体的にはデータ転送に用いるデータ転送バスは下位若しくは上位のいずれの指定であるかのデータをＢＣＵ５１２から受け取って指定されたデータバスでデータの転送を行う。例えば、指定が下位だった場合には、下位８ビットのデータバスを用いてデータ転送を実行する。
【００５８】
ＣＰＵ５１１とＢＣＵ５１２とは互いに信号線５１４〜５２３で接続されている。信号線５１４は、記憶装置５５０若しくは記憶装置５９０のアクセスしたいアドレスを指示する為の信号を印加するための信号線である。信号線５１５は、ＣＰＵ５１１とＢＣＵ５１２間でデータのやり取りをするための信号線で、実際には１本の信号線である必要はなく、例えば、１０Ｍｂｐｓのデータ転送量を有していてもよい。信号線５１６は、記憶装置５５０に対して読み出しを要求するリード要求信号r_reqAを印加するための信号線である。信号線５１７は、記憶装置５５０に対して書き込みを要求するライト要求信号w_reqAを印加するための信号線である。信号線５１８は、記憶装置５５０からのデータの読み出しを終了したことを示すリード完了信号を印加するための信号線である。信号線５１９は、記憶装置５５０にデータの書き込みが終了したことを示すライト完了信号を印加するための信号線である。
【００５９】
ＢＣＵ５１２とカウンタ５１３は信号線５２４、５２５、５３７で接続されている。信号線５２４は、第１カウンタ５２６がデータ転送の開始を実行するためにＢＣＵ５１２に再びチップセレクト信号や、リード信号、ライト信号を印加するためのタイミングを決定する信号stop_reqを印加するための信号線である。信号線５２５は、信号線５２４と同様に信号stop_reqを印加するための信号線であるが、これは第２カウンタ５２７によって印加される。なお、ここには図示していないが、実施の形態１同様ＢＣＵとカウンタ５１３は、カウントイニシャル信号を印加するための信号線ででも接続されている。
【００６０】
ＢＣＵ５１２は、保持回路５３０とバス線５３１〜５３７で接続されている。また、保持回路５４０ともバス線５３１、５３２、５３４〜５３８で接続されている。図５にも示しているように、アドレス信号Adr_0を印加するバス線５３２、リード信号r_en_0を印加するバス線５３４、ライト信号w_en_0を印加するためのバス線５３５、データを転送するためのバス線５３６は共有されている。なおバス線５３６は１６bitのデータを転送できるものとする。
【００６１】
バス線５３３はチップセレクト信号CS_A_0を、バス線５３８はチップセレクト信号CS_B_0を印加するためのバス線である。チップセレクト信号CS_A_0、及び、CS_B_0は、それぞれ、記憶装置５５０及び５９０に対応する保持回路５３０及び５７０にデータアクセス要求が到来していることを認識させるための信号である。
保持回路５３０と記憶装置５５０とは、信号線５５１〜５５６で接続されている。また、保持回路５７０と記憶装置５９０とは、信号線５９１〜５９６で接続されている。保持回路５３０と記憶装置５５０及び保持回路５７０と記憶装置５９０の関係は実施の形態１に示した保持回路１３０と記憶装置１５０ｂの関係とほぼ同様である。ここで実施の形態１とが異なる保持回路５５０と記憶装置５５０及び保持回路５７０と記憶装置５９０の関係は、データを転送するための信号線５５５及び５９５がそれぞれコントロール回路５４１及び５７１に接続されている点である。
＜動作＞
次に、実施の形態２に係るデータアクセスシステムにおけるデータ遷移を図６に示すタイミングチャートを用いて説明する。ここでは、ＣＰＵ５１１から記憶装置５５０にアクセス要求が行って、アクセス準備ができる間に記憶装置５９０にアクセス要求がいった場合を示している。また、ここではデータの読み出しを要求するものとし、カウンタは既に記憶装置５５０及び記憶装置５９０それぞれのアクセス時間を記憶しているものとする。ここで記憶装置５５０のアクセス時間はｎであり、記憶装置５９０のアクセス時間はｍであるとする。
【００６２】
まず、信号Ｔ５１４に示すように、ＣＰＵ５１１からＢＣＵ５１２に記憶装置５５０のアドレスA’に対するアクセス要求が信号線５１６を通じて伝達される。また、リード要求信号r_reqAが信号Ｔ５１６に示すように信号線５１６に印加される。
アドレス信号A’を受けてＢＣＵ５１２はいずれの記憶装置に対するアクセス要求であるかを解析する。ここでは記憶装置５５０に対するアクセス要求であるとする。
【００６３】
アドレス信号A’とリード要求信号r_reqAを受けてＢＣＵ５１２は、アドレスA’をバス線５３２に、チップセレクト信号CS_A_0をバス線５３３に、リード信号r_en_0をバス線５３４に信号Ｔ５３２〜Ｔ５３４に示すように印加する。信号Ｔ５３２に示すようにアドレス信号A’は所定時間しか印加されない。
また、信号Ｔ５３６＿ｄに示すように、同時にバス線５３６を通じて保持回路５３０のコントロール回路５３１に対してバス線５３６の下位８ビットを用いてデータの転送を行う指示を出す。
【００６４】
チップセレクト信号CS_A_0の印加を受けて第１カウンタ５２６は、信号Ｔ５２６に示すように、カウントダウンを開始する。また、更新信号A_stをバス線５３１に印加し、保持回路５３０は、印加されている信号の内容を保持する。更新信号を受けてから、信号線５５１には、データ転送が終了するまでアドレス信号が印加されていることが信号Ｔ５５１に示される。図６には、図示していないが、チップセレクト信号CS_1及びリード信号r_en_1にも同じタイミングでそれぞれ信号線５５２及び５５３に印加されている。
【００６５】
一方、ＣＰＵ５１１からＢＣＵ１１２に対して記憶装置５５０に対するアクセス要求が伝達された後に、データの転送が終了していない段階で、記憶装置５９０に対するアクセス要求が発生したとする。
信号Ｔ５１４に示すように、アドレス信号B’が信号線５１４に印加されている。また同時に、読み出し要求であるリード要求信号r_reqBが信号線５２０に信号Ｔ５２０に示すように印加されている。
【００６６】
アドレス信号B’を受けてＢＣＵ５１２は、記憶装置５９０に対するアクセス要求であることを解析し、チップセレクト信号CS_B_0をバス線５３８に印加する。また、このとき、アドレスを印加するバス線５３２は、信号Ｔ５３２に示すように解放されているので、そこにアドレス信号B’を印加する。また、リード信号r_en_0をバス線５３４に信号Ｔ５３４に示すように印加する。このとき、アドレスA’に対応するデータDat_A’をデータを転送するバス線５３６の下位８ビットを通じて伝送する指示を出しているので、アドレスB’に対応するデータDat_B’はバス線５３６の上位８ビットを通じて伝達するように指示する。このことは信号Ｔ５３６＿ｕに示している。
【００６７】
チップセレクト信号CS_B_0の印加を受けて、第２カウンタ５２７は、信号Ｔ５２７に示すように記憶装置５９０のアクセス時間ｍのカウントダウンを開始する。
信号Ｔ５２７に示すように、第２カウンタ５２７のカウントが０になった時点でカウンタ５１３は、信号Ｔ５２５に示すように信号stop_reqを信号線５２５に印加する。また、信号Ｔ５２６に示すように、第１カウンタ５２６のカウントが０になった時点でカウンタ５１３は、信号Ｔ５２５に示すように信号stop_reqを信号線５２５に印加する。
【００６８】
信号stop_reqの出力タイミングが遅かった方（図６では、第１カウンタの方が０になるタイミングが後になっている）の出力を受けて、ＢＣＵ１１２は、リード信号r_en_0をバス線５３４に、信号Ｔ５３４に示すように、印加する。
また、信号Ｔ５３３及びＴ５３８に示すように、チップセレクト信号CS_A_0をバス線５３３に、チップセレクト信号CS_B_0をバス線５３８に印加する。
【００６９】
信号Ｔ５３６＿ｄに示すように、チップセレクト信号CS_A_0と、リード信号r_en_0の印加を受けて、コントロール回路５４１は、バス線５３６の下位８ビットを用いてデータDat_A’をＢＣＵ５１２に転送する。
また、同時に信号Ｔ５３６＿ｕに示すように。チップセレクト信号CS_B_0と、リード信号r_en_0の印加を受けて、コントロール回路５７１は、バス線５３６の上位８ビットを用いてデータDat_B’をＢＣＵ５１２に転送する。
【００７０】
データDat_A’及びDat_B’を受け取ったＢＣＵ５１２は、信号Ｔ５１５に示すように、ＣＰＵ５１１にデータを転送して終了する。
以上が、実施の形態２におけるデータ転送の一例である。二つのデータ転送が共に読み出し、若しくは共に書き込みの場合に、データ転送のタイミングを   揃えることで、リード信号r_en_0を２回印加する必要がなくなり、その分バス線５３４を解放できる時間が長くなるといえる。
＜実施の形態３＞
実施の形態１においては、マイクロコントローラから記憶装置に対するアクセスが初めて発生する場合にアクセス時間をカウントしたが、実施の形態３においては、記憶装置の方からアクセス時間を伝達することを示す。
＜構成＞
実施の形態３に係るデータアクセスシステムについて図７を用いて説明する。ここでは実施の形態１と異なる構成についてのみ説明する。同一の名称と機能を有するものについては説明を割愛する。
【００７１】
図７に示すように、実施の形態３に係るデータアクセスシステムは、マイクロコントローラ７００と、保持回路７３０と、記憶装置７５０とを含んで構成される。
実施の形態１のＢＣＵ１１２の機能に加えて、ＢＣＵ７１２は、記憶装置７５０に対して、初回アクセス時に、アクセスカウント信号ACCをバス線７３７に印加する機能も有する。
【００７２】
また、記憶装置７５０は、デコーダ７５６、メモリ７５７、メモリ７５８とを含んで構成される。
デコーダ７５６は、メモリ７５７及びメモリ７５８から信号線を通じてそれぞれのアクセス時間を取得する機能を有する。そしてアクセスカウント信号ACCを受けた場合に、データを転送するための信号線７５５を通じて保持回路７３０に伝達する機能を有する。
【００７３】
保持回路７３０は、伝達されたアクセス時間をカウンタ７１３に伝達する機能を有する。
カウンタ７１３は、自信でカウントしたアクセス時間ではなく、デコーダ７５６から保持回路７３０を介して伝達されたアクセス時間を記憶する機能を有する。
以上が実施の形態３における実施の形態１とは異なる構成である。
＜動作＞
次に、実施の形態３に係るデータアクセスシステム、特にその中のマイクロコントローラ７００の動作を図８に示すフローチャートを用いて説明する。
【００７４】
まず、ＣＰＵ７１１からＢＣＵ７１２に対してアクセス要求が発生し、ＢＣＵ７１２は、アクセスに必要な信号を各信号線に印加する（ステップＳ８０１）。そして、この時、ＢＣＵ７１２は、これが記憶装置７５０に対する初回のアクセスであるかどうかを判断する（ステップＳ８０３）。これは、過去のアクセス履歴を参照することにより判断する。
初回アクセスでなかった場合には（ステップＳ８０３のＮＯ）、既にカウンタ７１３が記憶している記憶装置７５０のアクセス時間を用いて、実施の形態１に示す方法でデータの転送を実行する（ステップＳ８０２）。
【００７５】
初回アクセスであった場合には（ステップＳ８０３のＹＥＳ）、ＢＣＵ７１２は、バス線７３７にアクセスカウント信号ACCを印加する（ステップＳ８０７）。
アクセスカウント信号ACCの印加を受けたデコーダ７５６は、メモリ７５７及びメモリ７５８のアクセス時間を取得し、そのアクセス時間を信号線７５５を介して保持回路７３０に伝達する。保持回路７３０は、バス線７３６を介して、カウンタ７１３にアクセス時間を伝達する。こうしてカウンタ７１３は、記憶装置７５０の各メモリのアクセス時間を取得する（ステップＳ８０９）。
【００７６】
そして、取得したアクセス時間に基づいて、実施の形態１の２回目以降のアクセスと同じ手順でアクセスを実行して（ステップＳ８１１）終了する。
以上に示したように、記憶装置の方からデータのやり取りを実行する前に、予めアクセス時間を取得しておくことで、マイクロコントローラ７００から記憶装置７５０への初めてのアクセスの時であっても、実施の形態１の２回目以降のアクセスで示した方法でデータの転送を実行できる。つまり、初回時のアクセスからアドレス信号を印加するバス線７３２の解放を早めることができる。
＜実施の形態４＞
実施の形態３においては、したが、実施の形態１〜３に示した方法とは異なる方法でアドレスバスを解放する時間を早める一手法を示す。
＜構成＞
実施の形態４に係るデータアクセスシステムについて図９を用いて説明する。ここでは実施の形態３と異なる構成についてのみ説明する。同一の名称と機能を有するものについては説明を割愛する。本実施の形態３においては、発明の主たる部分は保持回路９３０が有する。
【００７７】
図９に示すように、保持回路９３０は、コントロール回路９４０、アドレスバッファ９４１、インクリメント回路９４２とアドレス比較回路９４５を含んで構成される。
アドレスバッファ９４１は、ＢＣＵ９１２からのアドレス信号を受けて保持する機能を有する。また、当該アドレス値で指定された記憶装置９５０の内部記憶領域とのデータ転送が終了した後に、当該アドレス値をインクリメント回路９４２に出力し、インクリメント回路９４２から出力されたアドレス値を保持する機能も有する。保持したアドレス値は、アドレス信号として信号線に印加される。
【００７８】
インクリメント回路９４２は、アドレスバッファ９４２から出力されてきたアドレス値を１加算して、アドレスバッファ９４２に出力する機能を有する。
アドレス比較回路は、ＢＣＵ９１２から出力されてきたアドレス値と、アドレスバッファ９４１から出力されてきたアドレス値とが一致する場合に、アドレスが一致したことを示すアドレス比較信号Adr_compを信号線９４３を通じてコントロール回路９４０に出力する機能を有する。
【００７９】
コントロール回路９４０は、アドレス比較信号Adr_compを受けて、チップセレクト信号CS_1、リード信号r_en_1、ライト信号w_en_1の出力する機能を有する。また、アドレス比較信号Adr_compを受けた場合に、ＢＣＵ９１２に対して、すぐにデータが読み出せる若しくは書き込めることを示すデータストローブ信号DS_0を信号線９３８に印加する機能も有する。
【００８０】
ＢＣＵ９１２は実施の形態１〜３のＢＣＵに加えて、データストローブ信号DS_0を受けた場合には、アドレス信号やチップセレクト信号の出力を所定時間で中止せずにデータの読み出しまたは書き込みを実行する機能を有する。この場合、データの読み出し、又は書き込みは既に終了していることから、実施の形態１において示したように２回目のチップセレクト信号CS_0などの印加をする必要はない。
＜動作＞
次に、実施の形態４に係るデータアクセスシステムの動作を図１０に示すタイミングチャートを用いて説明する。
【００８１】
まず、時間ＴＡまでは実施の形態１の図３に示した場合と同様のアクセスを行い、データの読み出しが終了している。ここまでは実施の形態１の図３に示した動作と変わらないので詳細な説明は割愛する。
データの読み出しが終了したと同時に、信号Ｔ９４１に示すようにアドレスバッファ９４１は、更新信号A_stを受けて、インクリメント回路９４２にアドレス値を出力し、１加算されて返されたアドレス値を記憶する。信号Ｔ９４１に示すようにアドレス値がAからA+1に更新されている。
【００８２】
アドレスバッファ９４１のアドレス値がA+1になった時点でアドレスバッファは、信号Ｔ９５１に示すように信号線９５１にアドレス信号Adr_1を印加する。信号Ｔ９５１にも示しているように、そのアドレス値は、A+1である。
また同時に、信号Ｔ９４３にあるように制御信号Ctrlを立ち上げる。これを受けて、信号Ｔ９５２に示すように、コントロール回路９４０はチップセレクト信号CS_1を信号線９５２に印加する。なお、図１０には図示していないが、同じタイミングでリード信号r_en_1も出力する。
【００８３】
そして記憶装置９５０でアクセス準備が整うと、信号Ｔ９５６に示すように時刻ＴＢでアクセス完了信号DK_1が印加される。それと同時に信号Ｔ９５５に示すようにデータ転送できる状態になる。
ＢＣＵ９１２から新たなるアドレス信号が出力されるまでは、アドレス信号Adr_1、チップセレクト信号DS_1、リード信号r_en_1は印加され続ける。
【００８４】
そして信号Ｔ９１６に示すように、時刻ＴＣでＣＰＵ９１１から読出要求信号r_reqが印加されたとする。図１０では図示していないが、当然アドレス信号Adrも信号線９１４に印加される。当該アドレス信号のアドレス値は記憶装置９５０のアドレスA+1を指示するものであるとする。
これを受けて、ＢＣＵ９１２は、信号Ｔ９３２に示すように、アドレス信号Adr_0をバス線９３２に印加する。また、信号Ｔ９３３に示すように、チップセレクト信号CS_0をバス線９３３に印加する。図１０では図示していないが同じタイミングで、リード信号r_en_0もバス線９３４に印加される。
【００８５】
アドレス信号Adr_0を受けたアドレス比較回路９４５は、アドレスバッファ９４２に記憶されているアドレスと一致するかどうかをみる。ここではＢＣＵ９１２から出力されたアドレス値はA+1で一致する。
アドレス比較信号Adr_compを受けて、アドレスバッファ９４３は、コントロール回路９４０に対して、信号Ｔ９４４に示すように、制御信号Ctrlを信号線９４４に印加して、データストローブ信号DS_0の出力を要求する。
【００８６】
データストローブ信号DS_0を受けたＢＣＵ９１２は、信号Ｔ９３６に示すように、即時、データの読み出しを実行して終了する。
なお、その後、信号Ｔ９４１に示しているようにアドレスバッファ９４１のアドレス値はインクリメント回路９４２によって１加算されて、アドレスA+2で示される記憶装置９５０の内部記憶領域へのアクセスを開始する。
【００８７】
以上が図１０のタイミングチャートに基づく、実施の形態４に係るデータアクセスシステムの動作の説明である。
上記図１０のタイミングチャートで示した動作を保持回路の動作として観た場合の状態遷移を図１１のフローチャートに示した。
まず、通常通りに、マイクロコントローラ９００から指定されたアドレスAとのデータ転送が終了したとする（ステップＳ１１０１）。
【００８８】
すると保持回路９３０のアドレスバッファ９４１は、インクリメント回路９４２に保持しているアドレス値Aを出力する。そしてアドレスバッファ９４１は、１加算されてインクリメント回路９４２から出力されたアドレス値A+1を保持しなおす（ステップＳ１１０３）。
アドレスバッファ９４２は、アドレス値A+1を示すアドレス信号９５１を記憶装置９５０に出力する。また、同時にコントロール回路９４０にアクセスに必要なチップセレクト信号CS_1と、リード信号r_en_1とを記憶装置９５０に出力する（ステップＳ１１０５）。
【００８９】
各信号は、ＢＣＵ９１２から新たなアクセス要求がくるまで、各信号線に印加され続け、データA+1にいつでもアクセスできる状態を保つ。
そしてＢＣＵ９１２から新たなアクセス要求が到来したとする（ステップＳ１１０７）。
アドレス比較回路９４５は、アドレスバッファ９４１に格納されているアドレス値と新たに出力されてきたアドレス信号Adr_0を比較する（ステップＳ１１０９）。
【００９０】
アドレス値が不一致である場合には（ステップＳ１１０９のＮＯ）、アドレスA+1へのアクセスを解除する。そして、アドレスバッファ９４１は新たに出力されてきたアドレス信号Adr_0に基づくアドレス値を保持しなおし、アドレス信号Adr_1を出力する。また同時に、アドレスバッファ９４１は、制御信号Ctrlを出力してコントロール回路９４０にＢＣＵ９１２から出力されているチップセレクト信号CS_0と、リード信号r_en_0をそのまま、チップセレクト信号CS_1、リード信号r_en_1として出力して、通常通り図３に示した手法と同様の方法でデータ転送を実行する（ステップＳ１１００）。
【００９１】
アドレス値が一致した場合には（ステップＳ１１０９のＹＥＳ）、アドレス比較信号９４３を出力してコントロール回路９４０にデータストローブ信号DS_0を出力する。
データストローブ信号DS_0を受けたＢＣＵ９１２は、即時データ転送が可能であることを認識し、バス線９３６を通じて保持回路９３０を介して記憶装置９５０からデータA+1を読みだして（ステップＳ１１１１）、終了する。
【００９２】
以上に示したように、マイクロコントローラ９００からのアクセスがあった後に、保持回路９３０は、自動的に記憶装置９５０の別のアドレスへのアクセス状態を確保する。そして指定した記憶装置９５０のアドレスへのアクセス準備を整えておき、マイクロコントローラ９００からそのアドレスへのアクセス要求があった場合には、即座にデータの転送ができるようになる。
【００９３】
但し、本実施の形態４における、この予めアクセス準備を整えておくという仕様は、無駄になることも十分に考えられることである。
＜実施の形態５＞
実施の形態４においては、ただ単に、次のアドレスへの記憶装置のアクセス準備を整えておいただけだが、本実施の形態においては、更にデータも読み出しておくことを示す。そして複数のアドレスに対応するデータを読み出しておくことで、実施の形態４に示した手法に広がりを持たせることができる。
＜構成＞
実施の形態５に係るデータアクセスシステムについて図１２の機能図に基づいて説明する。
【００９４】
ここでは、実施形態４とは異なる部分について説明する。
図１２に示すように、実施の形態４に示した保持回路９３０の構成に加えて、保持回路１２３０は、更にバッファ１２４６〜１２４９を備えている。
バッファ１２４６〜１２４９は、記憶装置１２５０から転送されてきたデータを蓄積する機能を有し、コントロール回路によって指定されたバッファが保持するデータをＢＣＵ１２１２に出力する機能を有する。
【００９５】
また、実施の形態４とは異なり、アドレスバッファ１２４１とインクリメント回路１２４２は、１回ではなく、４回までアドレス値のインクリメントを実行し、保持回路１２３０は、それぞれのアドレスごとに記憶装置１２５０にアクセスし、そのデータをバッファ１２４６〜１２４９に蓄積する。
各バッファはバス１２５８と８bpsの性能を有する信号線で接続され、一方、バス線１２３７は３２bpsの性能を有する。また、各バッファに対しての書き込み指示の信号がコントロール回路１２４０から信号線１２５７を介して出力される。
＜動作＞
実施の形態５におけるデータアクセスシステムにおけるデータ遷移の一例を図１３に示す。図１３のタイミングチャートを用いて本実施の形態５の動作を示す。なお、本図の信号Ｔ１２３７[７：０]は、データ転送のバス線１２３７の０〜７ビットのバス線のデータ遷移を示している。Ｔ１２３７[１５：８]は、バス線１２３７の８〜１５ビットのバス線のデータ遷移を示している。Ｔ１２３７[２３：１６]は、バス線１２３７の１６〜２３ビットのバス線のデータ遷移を示している。Ｔ１２３７[３１：２４]は、バス線１２３７の２４〜３１ビットのバス線のデータ遷移を示している。
【００９６】
図１３には、１回のデータ転送が終了した時点からのデータ遷移を示している。ここで、当該データ転送は、記憶装置１２５０のアドレスAへのアクセスであったとする。
信号Ｔ１２３１にあるように、データ転送終了の更新信号A_stを受けて保持回路１２３０のアドレスバッファ１２４１は、信号Ｔ１２４１に示すように、インクリメント回路１２４２の働きにより１加算されたアドレス値を保持する。保持されたアドレス値A+1は、アドレス信号Adr_1として、信号Ｔ１２５１に示すように記憶装置１２５０に出力される。また、信号Ｔ１２５２に示すようにチップセレクト信号CS_1も出力される。図１３には図示していないが、リード信号r_en_1も出力される。
【００９７】
そしてアクセス準備が整ってアクセス完了信号DK_1が出力されると信号Ｔ１２５７に示すようにコントロール回路１２４０は、バッファに対して書き込み信号writeを信号線１２５７に印加する。信号Ｔ１２４６に示すように、書き込み信号writeを受けて、バッファ１２４６にはアドレスA+1にあったデータDat_A+1が記憶される。
一方、信号Ｔ１２４１に示すように、アクセス完了信号DK_1を受けてアドレスバッファ１２４１のアドレス値は、インクリメント回路１２４２により、１加算されたA+2に変更される。
【００９８】
アドレスバッファ１２４１のアドレス値がA+2に変更されると、アドレス値がA+1に変更された場合と同様にして、アドレス値A+2に対応するデータDat_A+2がバッファ１２４７に蓄積される。以下アドレスバッファ１２４１のアドレス値がA+4になるまでデータの蓄積が繰り返される。結果、保持回路１２３０のバッファ１２４８には、アドレス値A+3に対応するデータDat_A+3が、バッファ１２４９には、アドレス値A+4に対応するデータDat_A+4が蓄積された状態になる。
【００９９】
その後に、データＴ１２１６に示すように、ＣＰＵ１２１１からＢＣＵ１２１２に対して書込要求信号r_reqが信号線１２１６に印加されたとする。このとき出力されるアドレス値は、記憶装置１２５０のアドレスA+2であったとする。
すると、信号Ｔ１２３２に示すように、データA+2がバス線１２３２に印加される。また、信号Ｔ１２３３に示すように、チップセレクト信号CS_0がバス線１２３３に印加される。
【０１００】
信号Ｔ１２４３に示すようにアドレス信号Adr_0のアドレス値A+2を受けたアドレス比較回路１２４５は、バッファ１２４７に蓄積されているデータに一致することを検出する。これはアドレスバッファ１２４１に蓄積されているアドレス値から３減算した値までの４つのアドレスとの一致をみる。アドレス比較回路１２４５は、アドレス値が一致したのでアドレス比較信号Adr_compを信号線１２４３に出力する。
【０１０１】
信号Ｔ１２４１に示すうに、アドレス比較信号Adr_compを受けて、アドレスバッファ１２４１はアドレス値をA+2に更新する。また、コントロール回路１２４０は、信号Ｔ１２３６に示すように、データストローブ信号DS_0を出力し、ＢＣＵ１２１２に対してデータの即時読み出しが可能であることを伝達する。
データストローブ信号DS_0を受けたＢＣＵ１２１２は、チップセレクト信号やリード信号r_en_0を印加し続け、該当するデータをバス１２３７の８〜１５ビットのバス線を用いてデータを読み出す。
【０１０２】
データの読み出しが終了すると、保持回路１２３０は、アドレスA+2に連続する４つのアドレス値に対応するデータをバッファ１２４６〜１２４９に蓄積させて、次のアクセス信号が到来するのを待つ。
図１３のタイミングチャートに基づいて記述した動作を、本実施の形態５の特徴部分の保持回路１２３０の観点から、図１４のフローチャートを用いて示す。
【０１０３】
まず、アドレスAで指定されるデータの転送が終了したとする（ステップＳ１４０１）。するとアドレスバッファ１２４１はインクリメント回路１２４２に保持しているアドレス値を出力する。インクリメント回路１２４２は、出力されてきたアドレス値に１加算してアドレスバッファ１２４１に返す。アドレスバッファ１２４１は返されてきたアドレス値を記憶しなおす（ステップＳ１４０３）。
【０１０４】
アドレスバッファ１２４１のアドレス値の更新により、保持回路１２３０は、記憶装置１２５０の１加算されたアドレスへのアクセスを実行する（ステップＳ１４０５）。具体的には、アドレスバッファ１２４１が、記憶装置１２５０にアドレス信号Adr_1を出力し、コントロール回路１２４０が、チップセレクト信号CS_1と、リード信号r_en_1を記憶装置１２５０に出力する。
【０１０５】
記憶装置１２５０でデータ転送の準備が整うと、アクセス完了信号DK_1が出力されてくるので、保持回路１２３０はこれを受けて、コントロール回路１２４０にバッファ１２４６〜１２４９のデータが書き込まれていないバッファに対して１加算されたアドレスに対応するデータを書き込ませる（ステップＳ１４０７）。
データの書き込み後、インクリメント回数が４回を超えたかどうかをアドレスバッファ１２４１が判定する（ステップＳ１４０９）。これはアドレスバッファ１２４１が保持しているアドレス値が、直前に転送したデータが格納されているアドレス値に４加算した値を超えているかによって判定される。
【０１０６】
インクリメント回数が４以上でなかった場合には（ステップＳ１４０９のＮＯ）、ステップＳ１４０３に戻り以降の処理を実行する。
インクリメント回数が４以上であった場合には（ステップＳ１４０９のＹＥＳ）、ＢＣＵ１２１２からの次のアクセス要求が来るまで待機する。
そしてＢＣＵ１２１２からの次のアクセス要求が到来した場合に、そのアクセス要求で指定されるアドレス値がバッファ１２４６〜１２４９に格納されているデータが対応するアドレス値と一致するかどうかを判定する（ステップＳ１４１１）。これは、バッファ１２４６〜１２４９に格納されているデータが存在した記憶装置１２５０のアドレスと、アドレスバッファ１２４１が保持しているアドレス値よりも４少ないアドレス値と現在保持しているアドレス値の間の４つのアドレス値と一致するかどうかをみる。ここではアドレスA+1〜A+4のいずれかと一致するかどうかを判定する。
【０１０７】
一致しないと判定された場合には（ステップＳ１４１２）、指定されたアドレスへの通常通りのアクセス、即ち実施の形態１の図３に示したアクセスを実行する（ステップＳ１４１２）。
一致すると判定された場合には（ステップＳ１４１１のＹＥＳ）、データの読み出しが即時可能であることを示すデータストローブ信号DS_0を出力すると共に、アドレス値に対応するデータを保持するバッファからデータをＢＣＵ１２１２に対して出力して（ステップＳ１４１３）終了する。
【０１０８】
この後、再び、ステップＳ１４０３移行の処理を実行する。
以上に示してきたように、本実施の形態においては、保持回路が予め複数のデータを先取りして読み出しておくので、マイクロコントローラから指定されたアドレスと、保持回路で格納しているデータが対応する記憶装置のアドレスとが一致した場合にすぐにデータの転送を実行できるようになる。
【０１０９】
なお、本実施の形態はデータの読み出しの場合にのみ有効となる発明である。
＜補足＞
上記実施の形態に基づいて、本発明に係るデータアクセスシステムについて説明してきたが、本発明の実施の形態はこれに限定されるものではない。以下、その変形例について述べていく。
（１）上記実施の形態においては、データの読み出しを行うという実施の携帯を示したが、これはデータの書き込みであってもよい。データの書き込みの場合においても、データの読み出しの場合と同様に、記憶装置でデータの書き込みの準備時間（アクセス時間）がかかる。この時間を、カウントして取得するか、予め記憶装置から取得する。そしてこのアクセス時間の間ずっとＢＣＵから保持回路にアドレス信号を印加するのではなく所定時間だけ印加する。
【０１１０】
このように、書き込みの場合においてもアドレスバスの解放を従来よりも早めることができるようになる。
（２）本発明は、上記実施の形態に示されるデータ転送の方法であってもよい。
また、本発明は、上記実施の形態に示す方法を、コンピュータに実行させるためのコンピュータプログラムであってもよい。当該コンピュータプログラムは、フレキシブルディスク、ハードディスク装置、ＣＤ(Compact Disc)、ＤＶＤ（Digital Versatile Disc）、ＢＤ(Blu-ray Disc)、ＭＯ（Magneto-Optical)ディスク、フラッシュメモリ、半導体メモリなどに代表される各種記録媒体に記録されていてもよい。
（３）本発明において上記実施の形態において示した各機能部は１又は複数のＬＳＩ（Large Scale Integration）、（Very Large Scale Integration）で構成されても良い。あるいは１のＬＳＩ、ＶＬＳＩが複数の機能を備えていても良い。
（４）上記実施の形態４においては、保持回路１２３０の有するバッファの数にあわせてインクリメント回数を４としていたが、バッファの数を増やせるならば、バッファの増加分だけインクリメント回数を増やしてもよい。
【０１１１】
また、インクリメント回数を４ではなく、バッファの数４よりも１多い５とする。そしてバッファ１２４９にデータが蓄積された後に、保持回路１２３０から更に１加算されたアドレスへのアクセス状態をつくっておいても良い。
（５）上記実施の形態５において、アドレス値が４回インクリメントされるまで新たなアクセス要求が発生しない形態で処理を記述した。しかし、当然に４回インクリメントされる前にアクセス要求が発生することもある。よって、そこまででバッファに蓄積されているデータが２個しかなかった場合には、その２個のデータに対応するアドレス値との比較のみを行う。
（６）上記実施の形態５において、アドレス値が一個一致した場合に実際のデータ転送を実施したが、上記実施の形態５のように保持回路が複数のバッファを備える場合に、以下のような構成にしても良い。
【０１１２】
連続して異なるアドレスのデータの読み出しが行われる場合に、保持回路は、各アドレスのデータをバッファに蓄積して、マクロコントローラからは１度のデータ読み出しのためにチップセレクト信号とリード信号を印加してもよい。こうすることで１度のリード信号の印加で複数のデータの読み出しを実行できるようにしてもよい。
【産業上の利用可能性】
【０１１３】
本発明に係るデータアクセスシステムは、記憶装置がハンドシェイクアクセス方式でアクセスを実行する場合にアドレスバスを有効に活用できるバスコントローラとして活用することができる。
【図面の簡単な説明】
【０１１４】
【図１】実施の形態１におけるデータアクセスシステムが係るマイクロコントローラと保持回路と記憶装置の機能構成を示したブロック図である。
【図２】実施の形態１において、マイクロコントローラから記憶装置に初めてアクセスする場合のデータ遷移を示したタイミングチャートである。
【図３】実施の形態１において、マイクロコントローラから記憶装置に２回目以降にアクセスする場合の各信号線を流れるデータを示したタイミングチャートである。
【図４】実施の形態１におけるマイクロコントローラのデータアクセスに係る動作を示したフローチャートである。
【図５】実施の形態２においてデータアクセスシステムが係るマイクロコントローラと保持回路と記憶装置の機能構成を示したブロック図である。
【図６】実施の形態２においてほぼ同時に２つのデータアクセスが発生した場合におけるデータ遷移を示したタイミングチャートである。
【図７】実施の形態３においてデータアクセスシステムが係るマイクロコントローラと保持回路と記憶装置の機能構成を示したブロック図である。
【図８】実施の形態３において、マイクロコントローラが記憶装置からアクセス時間を取得する手順を示したフローチャートである。
【図９】実施の形態４においてデータアクセスシステムが係るマイクロコントローラと保持回路と記憶装置の機能構成を示したブロック図である。
【図１０】実施の形態４におけるデータ遷移を示したタイミングチャートである。
【図１１】実施の形態４において保持回路がＢＣＵからの指示なしでアクセスを実行する動作を示したフローチャートである。
【図１２】実施の形態５おいてデータアクセスシステムが係るマイクロコントローラと保持回路と記憶装置の機能構成を示したブロック図である。
【図１３】実施の形態５におけるデータ遷移を示したタイミングチャートである。
【図１４】実施の形態５において保持回路がＢＣＵからの指示なしでアクセスを実行してデータを取得する動作を示したフローチャートである。
【符号の説明】
【０１１５】
１００、５００、７００、９００、１２００  マイクロコントローラ
１１１、５１１、７１１、９１１、１２１１  ＣＰＵ
１１２、５１２、７１２、９１２、１２１２  ＢＣＵ
１１３、５１３、７１３、９１３、１２１３  カウンタ
１３０、５３０、５７０、７３０、９３０、１２３０  保持回路
１５０、５５０、５９０、７５０、９５０、１２５０  記憶装置
５２６  第１カウンタ
５２７  第２カウンタ
５３１、５７１、９４０  コントロール回路
７５６  デコーダ
７５７、７５８  メモリ
９４１、１２４１  アドレスバッファ
９４２、１２４２  インクリメント回路
９４５、１２４５  アドレス比較回路
１２４６〜１２４９  バッファ
【図１】
2008015876.tif 000003
【図２】
2008015876.tif 000004
【図３】
2008015876.tif 000005
【図４】
2008015876.tif 000006
【図５】
2008015876.tif 000007
【図６】
2008015876.tif 000008
【図７】
2008015876.tif 000009
【図８】
2008015876.tif 000010
【図９】
2008015876.tif 000011
【図１０】
2008015876.tif 000012
【図１１】
2008015876.tif 000013
【図１２】
2008015876.tif 000014
【図１３】
2008015876.tif 000015
【図１４】
2008015876.tif 000016