(57)【要約】【課題】  シンクロナスＤＲＡＭに対して、転送語数が複数であるデータや転送語数が１であるデータを切り替えて転送する場合に、効率的にデータ転送を行うための制御を簡単な回路で実現する。【解決手段】  転送語数が２以上の場合、第１の制御器４を起動し、アクティブ、リード／ライト、プリチャージの順番にコマンドを出力する。転送語数が１の場合、第２の制御器５を起動し、アクティブ、リード／ライトの順にコマンドを出力し、次の転送要求を待つ。次の転送要求のデータ転送語数が１であれば、第２の制御器５はリード／ライトコマンドを出力し、再び転送要求を待つ。次の転送要求のデータ転送語数が２以上であればプリチャージコマンドを出力して第１の制御器４を起動し、バースト転送を行う。これにより、データ転送語数が１の場合の転送の際、不必要なアクティブコマンドやプリチャージコマンドを出力しないので、データ転送効率が改善された。【選択図】  図１
2010262668.tif 000002
【特許請求の範囲】
【請求項１】
入力された転送語数が１であるか複数であるかを判定し、選択信号を出力する転送語数判定器と、
前記転送語数判定器が出力する選択信号を入力し、第１と第２の起動信号と選択信号とを出力するモード選択器と、
前記モード選択器が出力する第１の起動信号を入力し、前記モード選択器が制御する状態遷移であって、複数語数のデータをバースト転送するためのコマンド出力を制御する状態遷移に基づいてコマンドを出力する第１の制御器と、
前記モード選択器が出力する第２の起動信号を入力し、前記モード選択器が制御する状態遷移であって、転送語数が１であるデータを転送するためのコマンド出力を制御する状態遷移に基づいてコマンドを出力する第２の制御器と、
前記第１の制御器及び前記第２の制御器の出力を前記選択信号に基づいて選択しコマンドを出力するセレクタと、
前記セレクタのコマンド出力を入力し、ＳＤＲＡＭに制御信号を出力する制御信号生成器を具備するシンクロナスＤＲＡＭアクセス装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バースト転送と一語転送とを行うシンクロナスＤＲＡＭ（以下ＳＤＲＡＭ）のアクセス装置に関するものである。
【背景技術】
【０００２】
ＳＤＲＡＭは、クロック入力端子に入力されるシステムクロックに同期して動作コマンドを取り込み、データの入出力を行う同期型ＤＲＡＭである。
【０００３】
近年のマイクロプロセッサの高速化に対応できるため、システムの主メモリとして広く用いられるようになった。
【０００４】
ＳＤＲＡＭの特徴として、主に次の３点をあげることができる。第１に、クロック同期動作を行える点である。クロック非同期のＤＲＡＭに比べ、タイミング設計が容易である。
【０００５】
第２に、複数バンクをもち、インターリーブ動作によって行アドレスが異なっても連続してアクセスを行える点である。
【０００６】
複数バンクをインターリーブで制御すればアクティブコマンドやプリチャージコマンドを行う時間を隠蔽できるため、間断無くデータ入出力を行うことができる。
【０００７】
第３に、バースト転送を行える点である。これにより、連続する複数語数のデータをクロックサイクルで高速に入出力可能である。
【０００８】
ＳＤＲＡＭにおいてバースト転送を行うために、バースト転送語数をセットして初期化する。これをバースト長という。
【０００９】
ＳＤＲＡＭにリードコマンドを出力すると、ＣＡＳレイテンシ分のサイクル後に、クロックに同期してバースト転送語数のデータがＳＤＲＡＭから出力される。
【００１０】
ＳＤＲＡＭにライトコマンドを出力すると、そのサイクルからバースト転送語数のデータをクロックに同期してＳＤＲＡＭに書き込むことができる。
【００１１】
このように、ＳＤＲＡＭに対するデータ入出力はクロックに同期して行えるため、従来のＤＲＡＭに比べて高速なアクセスが行えるが、一方で従来のＤＲＡＭと同様に、データ入出力を行う前に対象となる行アドレスをアクティブにし、さらに他の行アドレスにデータ入出力を行うためにはプリチャージを行わなければならない。アクティブコマンドやプリチャージコマンドを行うために要する時間は従来のＤＲＡＭとほぼ変わらない。
【発明の概要】
【発明が解決しようとする課題】
【００１２】
このため、例えば転送語数が１でアドレスが異なるデータを連続して入出力させようとすると、アクティブコマンドやプリチャージコマンドを行う時間を隠蔽することが困難になってくる。
【００１３】
このようなデータが連続して続くと、アクティブコマンドやプリチャージコマンドを行う時間が多くなり、システム全体の処理速度の低下につながる。
【００１４】
そこで、バースト転送を行うデータと転送語数が短いデータを効率良く区別し、転送語数が短いデータに関しては高速に制御を行うＳＤＲＡＭアクセス装置を提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明におけるＳＤＲＡＭのアクセス装置は、上記目的を実現するために、
入力された転送語数が１であるか複数であるかを判定し、選択信号を出力する転送語数判定器と、
前記転送語数判定器が出力する選択信号を入力し、第１と第２の起動信号と選択信号とを出力するモード選択器と、
前記モード選択器が出力する第１の起動信号を入力し、複数語数のデータをバースト転送するためのコマンド出力を制御する状態遷移器に基づいてコマンドを出力する第１の制御器と、
前記モード選択器が出力する第２の起動信号を入力し、転送語数が１であるデータを転送するためのコマンド出力を制御する状態遷移器に基づいてコマンドを出力する第２の制御器と、
前記第１の制御器及び前記第２の制御器の出力を前記選択信号に基づいて選択しコマンドを出力するセレクタと、
前記セレクタのコマンド出力を入力し、ＳＤＲＡＭに制御信号を出力する制御信号生成器を具備する。
【発明の効果】
【００１６】
転送語数が１でアドレスが異なるデータを連続して入出力させるアクセスにおいて、アクティブコマンドやプリチャージコマンドを省略する第２の制御器を具備することにより、メモリアクセスに要するサイクル数を大幅に減少させることができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施の形態に係るＳＤＲＡＭアクセス装置を含むシステムの構成図
【図２】図１における第１の制御器４及び第２の制御器５の内部機構を表す状態遷移図
【図３】５語数のバーストリードの後、１語数のライトを２回連続して行った場合のタイムチャート
【発明を実施するための形態】
【００１８】
以下本発明の実施の形態について、図１から図３を用いて説明する。
【００１９】
図１は本発明の実施の形態に係るＳＤＲＡＭアクセス装置を含むシステムの構成図である。
【００２０】
図１において、１は転送語数判定器、２はモード選択器、３はセレクタ、４は第１の制御器、５は第２の制御器、６は制御信号生成器、７はアドレス生成器、８はバッファメモリである。
【００２１】
転送語数判定器１は転送要求を受けた時に転送語数が２以上であるか１であるかを判定し、結果をモード選択器２に出力する。
【００２２】
モード選択器２は転送語数判定器１の出力を解析し、転送語数が２以上であるときは第１の制御器４を起動し、転送語数が１であるときは第２の制御器５を起動し、起動した制
御器を示す選択信号をセレクタ３に出力する。
【００２３】
第１の制御器４及び第２の制御器５を起動すると、いずれもＳＤＲＡＭの制御を行うための状態遷移を行って、ＳＤＲＡＭに出力するためのコマンドをセレクタ３に出力する。
【００２４】
セレクタ３は第１の制御器４及び第２の制御器５の出力をモード選択器２が出力する選択信号に従って選択し、制御信号生成器６に出力する。
【００２５】
制御信号生成器６はＳＤＲＡＭに出力するためのコマンドをデコードしてＳＤＲＡＭに制御信号を出力する。
【００２６】
アドレス生成器７はデータ転送開始アドレスを入力とし、第１の制御器４及び第２の制御器５に同期してＳＤＲＡＭにアドレスを出力し、さらに出力したアドレスを第ｋ番目のアドレスとすると、第ｋ−１番目のアドレスと第ｋ番目のアドレスを比較し、第ｋ番目のアドレスが第ｋ−１番目と同一バンク内にあるか、あるいは同一行アドレス内にあるかを判定し、判定結果を第１の制御器４及び第２の制御器５に出力する。
【００２７】
そして記憶していた第ｋ−１番目のアドレスを消去し、新たに第ｋ番目のアドレスを記憶する。
【００２８】
バッファメモリ８は転送データを入力とし、第１の制御器４及び第２の制御器５に同期してＳＤＲＡＭに転送データを入出力する。
【００２９】
図２は図１における第１の制御器４及び第２の制御器５の内部機構を表す状態遷移図である。
【００３０】
図２に示すように、第１の制御器４はアイドル状態１１、アクティブ状態１２、リード／ライト状態１３、プリチャージ状態１４の４つの状態からなる。
【００３１】
そして、アクティブ状態１２、リード／ライト状態１３、プリチャージ状態１４の各状態に入ったときに、アクティブコマンド、リード／ライトコマンド、プリチャージコマンドコマンドを出力する。
【００３２】
コマンドインターバルをおくために必要なノップ状態は省略した。
【００３３】
第１の制御器４を起動すると、最初にアイドル状態１１からアクティブ状態１２に入り(Ｔ１１)、いくつかのノップ状態を経てリード／ライト状態１３に入る(Ｔ１２)。
【００３４】
そして、バースト転送に必要な回数のリード／ライトコマンドを出力する。
【００３５】
必要なリード／ライトコマンドの回数は、ＳＤＲＡＭに設定するバースト長や転送語数に依存する。
【００３６】
バースト転送中にアドレス生成器７が、アクセスするアドレスについてバンクアドレスあるいは行アドレスが切り替わることを判定した場合は、プリチャージ状態１４に遷移して(Ｔ１３)、更にアクテイブ状態に入り(Ｔ１４)、続いてリードライト状態に入る(Ｔ１２)。
【００３７】
バースト転送終了時に、プリチャージ状態１４に入り(Ｔ１３)、プリチャージコマンドを出力した後いくつかのノップ状態を経てアイドル状態１１に戻る(Ｔ１５)。
【００３８】
また、第１の制御器４はＳＤＲＡＭに対するアクセスについて、必要なアドレスを出力するためにアドレス生成器７を制御し、さらにバッファメモリ８を制御してデータの入出力タイミングを調節する。
【００３９】
第２の制御器５は第１アイドル状態２１、アクティブ状態２２、リード／ライト状態２３、プリチャージ状態２４の４つの状態に加え、第２アイドル状態２５を設ける。
【００４０】
第２の制御器５を起動すると、最初に第１アイドル状態２１からアクティブ状態２２に入り(Ｔ２１)、いくつかのノップ状態を経てリード／ライト状態２３(Ｔ２２)に入る。
【００４１】
そして、リード／ライトコマンドを１つ出力したのち第２アイドル状態２５に入り(Ｔ２３)、次の転送要求待ちになる。
【００４２】
転送語数判定器１により次のデータ転送の転送語数が１であると判定されると、モード選択器２は再び第２の制御器５を起動し、第２の制御器５内では第２アイドル状態２５からリード／ライト状態２３に遷移する(Ｔ２５)。
【００４３】
そしてリード／ライトコマンドを１つ出力したのち再び第２アイドル状態２５に入り(Ｔ２３)、次の転送要求待ちになる。第２アイドル状態２５で、転送語数判定器１により次のデータ転送の転送語数が１であると判定され、さらにアドレス生成器７がアクセスするＳＤＲＡＭのアドレスが現在アクティブになっている行アドレスやバンクと異なると判定すると、アクティブ状態２２やプリチャージ状態２４を経てリード／ライト状態２３に入り(Ｔ２６→Ｔ２２、あるいはＴ２４→Ｔ２７→Ｔ２２)、リード／ライトコマンドを１つ出力したのち第２アイドル状態２５に入る(Ｔ２３)。
【００４４】
また、第２アイドル状態２５で、転送語数判定器１により次のデータ転送の転送語数が２以上であると判定されると、直ちにプリチャージ状態２４に入って(Ｔ２４)第１アイドル状態２１に戻り(Ｔ２８)、同時に第１の制御器４を起動する(Ｔ３１)。
【００４５】
第２の制御器５は第１の制御器４と同様に、ＳＤＲＡＭに対するアクセスについて必要なアドレスを出力するためにアドレス生成器７を制御し、さらにバッファメモリ８を制御してデータの入出力タイミングを調節する。
【００４６】
本構成に用いた場合の効果について図３を用いて説明する。図３は５語数のバーストリードの後、１語数のライトを２回連続して行った場合のタイムチャートである。まず従来の装置を用いた場合の効果について図３(a)を用いて説明する。５語数のバーストリードの際にはまずＣ１１でアクティブコマンドをＳＤＲＡＭに出力し、続いてＣ１２でリードコマンドを出力する。ＳＤＲＡＭはリードコマンドを入力したのち、ＣＡＳレイテンシ分のサイクルの後、Ｃ１３からＣ１７でアクセスされたアドレスのデータ(データ０〜データ４)を出力する。ここでは、バースト転送を中断させる為に、Ｃ１５でプリチャージコマンドを出力した。
【００４７】
次に１語数のライトを２回連続して行うが、同様にＣ１８でアクティブコマンドを出力した後、Ｃ１９でライトコマンドと同時にデータ０をＳＤＲＡＭに出力する。その後、次のデータ１の書き込みを行うために、Ｃ１１０でプリチャージコマンドを出力し、更にＣ１１１でアクティブコマンドを出力しなければならない。その後Ｃ１１２でライトコマンドと同時にデータ１を出力することになる。このように、転送語数が１の場合の転送に個別にアクティブコマンドやプリチャージコマンドを出力する必要がある。
【００４８】
次に、本発明の装置を用いた場合の効果について図３(b)を用いて説明する。
５語数のバーストリードについては図３(a)と同じである(Ｃ２１〜Ｃ２７)。次に１語数のライトを２回連続して行うが、同様にＣ２８でアクティブコマンドを出力した後、Ｃ２９でライトコマンドと同時にデータ０をＳＤＲＡＭに出力する。そして、本装置では次のライト動作でデータ１を書き込む時、データ０を書いたアドレスとデータ１を書き込むアドレスが同一バンクで、かつ同一行アドレスであれば、プリチャージコマンド及びアクティブコマンドが不要であるので、次のサイクル(Ｃ２１０)にデータ１を書き込む。
【００４９】
一例として、本発明をグラフィックス生成装置のＳＤＲＡＭインターフェースに用いることができる。
【００５０】
グラフィックスに必要なデータ中には、ポリゴン用データのように連続したアドレスに格納するデータと、線分データのようにアドレスが不連続で、かつ転送語数が１のデータが混在している。
【００５１】
線分データはアドレスが不連続であっても時間的には連続して発生する場合が多く、第２の制御器から連続してリード／ライトコマンドを出力できる確率が高い。
【００５２】
さらに、ポリゴン用データのように第１の制御器を用いて転送するデータが混在しても、効率良くデータ転送モードを切替えることができる。
【産業上の利用可能性】
【００５３】
転送語数が１でアドレスが異なるデータを連続して入出力させるアクセスにおいて、アクティブコマンドやプリチャージコマンドを省略する第２の制御器を具備することにより、メモリアクセスに要するサイクル数を大幅に減少させることができ、バースト転送と一語転送とを行うシンクロナスＤＲＡＭのアクセス装置に有用である。
【符号の説明】
【００５４】
１  転送語数判定器
２  モード選択器
３  セレクタ
４  第１の制御器
５  第２の制御器
６  制御信号生成器
７  アドレス生成器
８  バッファメモリ
【図１】
2010262668.tif 000003
【図２】
2010262668.tif 000004
【図３】
2010262668.tif 000005