(57)【特許請求の範囲】
【請求項１】
主処理回路との間でバスを介してバス信号の入出力を行う副処理回路に対し、当該副処理回路における前記バス信号の入出力を制御するための制御信号を出力する信号制御回路であって、
前記主処理回路と副処理回路との間で入出力された前回のバス信号を構成する各ビットのうち少なくとも所定部分のビットと、前記主処理回路と副処理回路との間で入出力される今回のバス信号を構成する各ビットのうち前記所定部分のビットに対応するビットとを相互に比較する比較部と、
前記比較部による比較の結果、変化したビットの数が基準値以上で、且つ変化後のビットのビットパターンが基準ビットパターンであるときには、前記制御信号を遅延させる出力制御部とを備えてなる信号制御回路。
【請求項２】
外部から入力される基準ビットパターン設定信号に基づいて、前記基準ビットパターンを変更する基準ビットパターン変更部を備えてなる請求項１に記載の信号制御回路。
【請求項３】
外部から入力される遅延時間設定信号に基づいて、前記制御信号の遅延時間を変更する遅延時間変更部を備えてなる請求項１または２のいずれかに記載の信号制御回路。
【請求項４】
外部から入力されるビット設定信号に基づいて、前記前回のバス信号を構成する各ビットのうち、前記比較部において前記今回のバス信号と比較対象となるビット部分を変更すると共に、前記今回のバス信号を構成する各ビットのうち、前記比較部において前記前回のバス信号と比較対象となるビット部分を変更する比較ビット変更部を備えてなる請求項１ないし３のいずれかに記載の信号制御回路。
【請求項５】
アドレスを指定するためのアドレス信号を出力する主処理回路と前記主処理回路から出力されたアドレス信号に基づいて指定されたアドレスに対してデータの読出しまたは書込みを行うためのダイナミックＲＡＭとの間に設けられ、前記アドレス信号を受け取り、当該受け取ったアドレス信号を行アドレスおよび列アドレスに分割し、分割した行アドレスおよび列アドレスを予め設定された順序で前記ダイナミックＲＡＭに出力すると共に、前記行アドレスおよび列アドレスを前記ダイナミックＲＡＭに読み込ませるタイミングを制御する制御信号を前記ダイナミックＲＡＭに出力する信号制御回路であって、
前記主処理回路から出力された今回のアドレス信号に含まれる行アドレスを出力した後に続けて当該今回のアドレス信号に含まれる列アドレスを出力するときには、前記今回のアドレス信号に含まれる行アドレスと列アドレスの少なくとも所定部分の各ビットをそれぞれ比較し、一方、前記主処理回路から出力された前回のアドレス信号に含まれる列アドレスを出力した後に続けて前記主処理回路から出力された今回のアドレス信号に含まれる列アドレスを出力するときには、前記前回のアドレス信号に含まれる列アドレスと前記今回のアドレス信号に含まれる列アドレスとの少なくとも所定部分の各ビットをそれぞれ比較する比較部と、
前記比較部による比較の結果、変化したビットの数が基準値以上で、且つ変化後のビットのビットパターンが基準ビットパターンであるときには、前記制御信号を遅延させる出力制御部と
を備えてなる信号制御回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えばＣＰＵ等の主処理回路と、例えば記憶回路または入出力回路等の副処理回路との間で、バスを介して、データ、アドレスまたは制御信号等のやり取りを行う回路または装置に用いられる信号制御回路であって、さらに具体的には、データ、アドレスまたは制御信号等が副処理回路に入力されるとき、または、データ、アドレスまたは制御信号等が副処理回路から出力されるときに、その入出力の制御を行う信号制御回路に関する。
【０００２】
【従来の技術】
ＣＰＵ等の主処理回路と、記憶回路または入出力回路等の副処理回路とを設け、両者の間をバスで接続することによって、主処理回路と副処理回路との間で、データ、アドレスまたは制御信号等のバス信号の入出力を行う装置またはシステムは、様々な電子機器または制御機器等に広く用いられている。例えば、ＣＰＵと、ＲＡＭまたはＲＯＭ等の記憶回路を基板上に設け、ＣＰＵと記憶回路とをアドレスバス、データバスおよび制御信号線によって接続し、ＣＰＵと記憶回路の間でデータの記憶等を処理を行うデータ記憶装置は、コンピュータ機器、プリンタ装置等に広く用いられている。このような装置またはシステムで用いられるバス信号は、複数のビットから構成されるデジタル信号である。
【０００３】
そして、コンピュータ機器およびプリンタ装置等の高性能化を図るために、主処理回路および副処理回路の動作速度およびデータ処理能力は急速に向上している。例えば、ＣＰＵ等の動作速度の高速化および記憶回路の大容量化は著しい。
【０００４】
【発明が解決しようとする課題】
ところで、主処理回路および副処理回路の動作速度およびデータ処理能力が向上すると、主処理回路と副処理回路との間で入出力するバス信号のビット数が増大すると共に、主処理回路と副処理回路との間のバス信号の入出力速度が増加する。例えば、ＣＰＵのデータ処理能力が向上し、記憶回路が大容量化すると、ＣＰＵと記憶回路との間のデータおよびアドレスのビット数が増大する。そして、ＣＰＵの動作速度および記憶回路の読出しまたは書込み周期が高速になると、ＣＰＵと記憶回路との間のデータおよびアドレスの入出力速度が増加する。
【０００５】
そして、バス信号のビット数が増大し、バス信号の入出力速度が増加すると、主処理回路および副処理回路が動作しているときには、主処理回路と副処理回路との間で、大きなビット数を有するバス信号の入出力が高速に繰り返されることとなる。従って、主処理回路と副処理回路とを接続するバス上では、大きなビット数を有するバス信号が高速に変化する。
【０００６】
このように、大きなビット数を有するバス信号が高速に変化すると、バス信号が変化した瞬間に、バス信号内にノイズが発生する場合がある。特に、大きなビット数を有するバス信号の各ビットが一斉に立ち上がる（立ち下がる）と、バス信号内にノイズが発生しやすい。例えば、１０ビットのアドレスバス信号が「0000000000ｂ」から「1111111111ｂ」に変化したときには、変化した直後にアドレスバス信号内にノイズが発生する場合がある。その結果、不安定なアドレス信号が主処理回路または副処理回路に入力され、主処理回路または副処理回路がアドレスバス信号を誤って認識してしまうという問題がある。
【０００７】
特に、記憶回路としてダイナミックＲＡＭ（以下、これを「ＤＲＡＭ」という）を採用した場合には、上述したような問題が生じる可能性が高くなる。即ち、ＤＲＡＭは、データの読出しおよび書込みを高速に行うことができる記憶回路であり、さらに、アドレス指定の方式として、いわゆるページモード方式を採用した場合には、データの読出しおよび書込みをより一層高速にすることができる。この結果、ＤＲＡＭに対してデータの読出しまたは書込みを行うときに、データまたはアドレス信号を構成する各ビットが一斉に変化すると、データまたはアドレス信号内にノイズが発生する場合がある。なお、ページモード方式は、ＤＲＡＭに向けて一度行アドレスを出力し、その後は、列アドレスのみを連続して出力することにより、同一ページ内のアドレス指定を行う方式である。
【０００８】
一方、上述したノイズを抑えるために、主処理回路、副処理回路およびバス等を設ける回路基板を多層基板とし、グランドを強化する方法が考えられる。しかしながら、回路基板を多層基板にすると、コストが上がり、好ましくない。また、主処理回路と副処理回路との間におけるバス信号の入出力速度を低速にすれば、上述したノイズを抑えることができる。しかしながら、バス信号の入出力速度を低速にすると、主処理回路および副処理回路の全体的な処理速度が低下するため、好ましくない。
【０００９】
本発明は上述した問題に鑑みなされたものであり、本発明は、バス信号のビット状態が一斉に変化することにより、バス信号内にノイズが発生しても、このノイズの影響によってバス信号が誤って認識されるのを防止でき、正確かつ高速なバス信号の入出力を可能とする信号制御回路を提供することを目的としている。
【００１０】
【課題を解決するための手段】
上述した課題を解決するために、請求項１の発明は、主処理回路との間でバスを介してバス信号の入出力を行う副処理回路に対し、当該副処理回路における前記バス信号の入出力を制御するための制御信号を出力する信号制御回路であって、前記主処理回路と副処理回路との間で入出力された前回のバス信号を構成する各ビットのうち少なくとも所定部分のビットと、前記主処理回路と副処理回路との間で入出力される今回のバス信号を構成する各ビットのうち前記所定部分のビットに対応するビットとを相互に比較する比較部と、前記比較部による比較の結果、変化したビットの数が基準値以上で、且つ変化後のビットのビットパターンが基準ビットパターンであるときには、前記制御信号を遅延させる出力制御部とを備えている。
【００１１】
即ち、主処理回路と副処理回路とはバスを介して相互に接続されており、主処理回路と副処理回路との間では、バス信号の入出力が行われる。ここで、バス信号は、複数ビットから構成されるデジタル信号である。また、バス信号の入出力とは、主処理回路から副処理回路に向けてバス信号が出力されることと、副処理回路から主処理回路に向けてバス信号が出力されることの双方またはいずれか一方を意味する。さらに、主処理回路は、例えば、ＣＰＵまたはＭＰＵ等の上位制御回路を例に挙げることができるが、これに限定されず、複数ビットから構成されるデジタル信号を出力する回路のすべてを含む。また、副処理回路は、例えば、記憶回路または入出力回路を例に挙げることができるが、これに限定されず、複数ビットから構成されるデジタル信号を受取りまたは出力を行うすべての回路を含む。さらにまた、バスは、主処理回路から副処理回路との間でバス信号の入出力を行うための信号線である。
【００１２】
また、信号制御回路は、副処理回路に向けて、当該副処理回路におけるバス信号の入出力を制御するための制御信号を出力する。この制御信号は、例えば、副処理回路がバス信号を受け取るタイミングを設定するための信号、または、副処理回路がバス信号を内部に記憶させるタイミングを設定するための信号、さらには、副処理回路が主処理回路に向けてバス信号を出力するタイミングを設定するための信号等である。
【００１３】
さて、信号制御回路は、少なくとも比較部と出力制御部を備えており、比較部は、主処理回路と副処理回路との間で入出力された前回のバス信号を構成する各ビットのうち少なくとも所定部分のビットと、主処理回路と副処理回路との間で入出力される今回のバス信号を構成する各ビットのうち前記所定部分のビットに対応するビットとを相互に比較する。ここで、「所定部分のビット」とは、バス信号の各ビットのうち一部のビットまたはすべてのビットを意味する。
【００１４】
そして、出力制御部は、比較部による比較結果に基づいて、前回のバス信号を構成する各ビットのうち少なくとも所定部分のビットと、今回のバス信号を構成する各ビットのうち所定部分のビットに対応するビットとの間で、変化したビットの数が基準値以上で、且つ変化後のビットのビットパターンが基準ビットパターンであるときに、当該信号制御回路から副処理回路に向けて出力する制御信号を遅延させる。制御信号を遅延させることにより、副処理回路がバス信号を受け取るタイミングまたは副処理回路が主処理回路に向けてバス信号を出力するタイミング等が遅延させることができる。
【００１５】
ここで、上述したように、前回のバス信号と、前回のバス信号に続いて出力される今回のバス信号との間で、複数のビットが一斉に変化すると、バス信号内にノイズが発生する。このノイズは、前回のバス信号が今回のバス信号に変化した直後に発生し、副処理回路におけるバス信号の入力周期または出力周期と比較して短い期間が経過したら消失する。従って、副処理回路がバス信号を受け取るタイミングまたは副処理回路が主処理回路に向けてバス信号を出力するタイミング等を遅延させれば、副処理回路は、バス信号内にノイズが発生している期間を経過した後に、バス信号の受取りまたは出力等を行うことができる。即ち、副処理回路は、ノイズの発生している期間を避けて、バス信号の受取りまたは出力等を行うことができる。これにより、バス信号内に発生したノイズによって、誤ったバス信号が副処理回路において入出力されるのを防止できる。
【００１６】
【００１７】
ここで、上述したように、前回のバス信号と今回のバス信号との間で、複数のビットが一斉に変化すると、バス信号内にノイズが発生する。ところが、このようにノイズが発生するのは、前回のバス信号と今回のバス信号との間で変化したビットの数が基準値以上で、且つ変化したビットのパターンがある限られたパターンのときである。
【００１８】
従って、前回のバス信号から今回のバス信号に変化したときにノイズが発生するようなビットの数とビットパターンを予め求め、このビットの数とビットパターンを夫々基準値と基準ビットパターンとする。そして、前回のバス信号と今回のバス信号との間で変化したビットの数とビットパターンが夫々基準値以上且つ基準ビットパターンであるときには、信号制御回路から副処理回路に出力する制御信号を遅延させる。これにより、副処理回路は、ノイズの発生している期間を避けて、バス信号の受取りまたは出力等を行うことができる。なお、基準ビットパターンは単一の場合もあるが、複数の場合もある。
【００１９】
【００２０】
【００２１】
【００２２】
【００２３】
請求項２の発明は、外部から入力される基準ビットパターン設定信号に基づいて、前記基準ビットパターンを変更する基準ビットパターン変更部を備えたことにある。
【００２４】
ここで、信号制御回路を構築した後に、使用するバスの変更する場合や、バスの一部を未使用する場合等が考えられる。また、バス信号が変化したときにノイズが発生しやすいビットパターンは、信号制御回路や副処理回路等を設ける回路基板のグランド強度や、回路基板上におけるバスの配置の仕方等により異なる場合がある。このような観点から、外部からの指示に基づいて、基準ビットパターンを変更することにより、実際の使用に合った基準ビットパターンを設定することができる。
【００２５】
【００２６】
【００２７】
請求項３の発明は、外部から入力される遅延時間設定信号に基づいて、前記制御信号の遅延時間を変更する遅延時間変更部を備えたことにある。
【００２８】
上述したように、前記ノイズは、前回のバス信号が今回のバス信号に変化した直後に発生し、副処理回路におけるバス信号の入力周期または出力周期と比較して短い期間が経過したら消失する。ところが、ノイズが発生している期間は、信号制御回路や副処理回路等を設ける回路基板のグランド強度、回路基板上におけるバスの配置の仕方、副処理回路の動作速度等により異なる。このような観点から、外部からの指示に基づいて、制御信号を遅延させる時間（量）を変更することにより、実際の使用に合った遅延時間を設定することができる。
【００２９】
請求項４の発明は、外部から入力されるビット設定信号に基づいて、前記前回のバス信号を構成する各ビットのうち、前記比較部において前記今回のバス信号と比較対象となるビット部分を変更すると共に、前記今回のバス信号を構成する各ビットのうち、前記比較部において前記前回のバス信号と比較対象となるビット部分を変更する比較ビット変更部を備えたことにある。
【００３０】
上述したように、信号制御回路の比較部は、前回のバス信号を構成する各ビットのうち少なくとも所定部分のビットと、今回のバス信号を構成する各ビットのうち前記所定部分のビットに対応するビットとを相互に比較する。ところが、バス信号のうち、比較対象にすべきビットは、実際の使用によって異なる場合がある。従って、外部からの指示に基づいて、前回のバス信号を構成する各ビットおよび今回のバス信号を構成する各ビットのうち、比較対象にすべき部分、即ち、比較対象にすべきビット番号、さらに言い換えれば、比較対象にすべきビット範囲を変更することにより、実際の使用に合うように、バス信号の比較を行うことができる。
【００３１】
請求項５の発明は、アドレスを指定するためのアドレス信号を出力する主処理回路と前記主処理回路から出力されたアドレス信号に基づいて指定されたアドレスに対してデータの読出しまたは書込みを行うためのダイナミックＲＡＭとの間に設けられ、前記アドレス信号を受け取り、当該受け取ったアドレス信号を行アドレスおよび列アドレスに分割し、分割した行アドレスおよび列アドレスを予め設定された順序で前記ダイナミックＲＡＭに出力すると共に、前記行アドレスおよび列アドレスを前記ダイナミックＲＡＭに読み込ませるタイミングを制御する制御信号を前記ダイナミックＲＡＭに出力する信号制御回路であって、前記主処理回路から出力された今回のアドレス信号に含まれる行アドレスを出力した後に続けて当該今回のアドレス信号に含まれる列アドレスを出力するときには、前記今回のアドレス信号に含まれる行アドレスと列アドレスの少なくとも所定部分の各ビットをそれぞれ比較し、一方、前記主処理回路から出力された前回のアドレス信号に含まれる列アドレスを出力した後に続けて前記主処理回路から出力された今回のアドレス信号に含まれる列アドレスを出力するときには、前記前回のアドレス信号に含まれる列アドレスと前記今回のアドレス信号に含まれる列アドレスとの少なくとも所定部分の各ビットをそれぞれ比較する比較部と、前記比較部による比較の結果、変化したビットの数が基準値以上で、且つ変化後のビットのビットパターンが基準ビットパターンであるときには、前記制御信号を遅延させる出力制御部とを備えている。
【００３２】
即ち、信号制御回路は、主処理回路から出力されたアドレス信号を行アドレスと列アドレスに分割し、これら行アドレスと列アドレスを予め設定された順序でダイナミックＲＡＭに向けて出力する。例えば、信号制御回路は、行アドレスと列アドレスを交互に出力する。また、信号制御回路は、行アドレスを一度出力した後に、列アドレスのみを連続して出力する場合もある。また、ダイナミックＲＡＭは、信号制御回路から出力された制御信号を受け取ったタイミングで、行アドレスおよび列アドレスを読み込む。
【００３３】
さて、信号制御回路が、主処理回路から出力された今回のアドレス信号に含まれる行アドレスを出力した後に続けて当該今回のアドレス信号に含まれる列アドレスを出力するときには、比較部は、今回のアドレス信号に含まれる行アドレスと列アドレスの少なくとも所定部分の各ビットをそれぞれ比較する。そして、出力制御部は、今回のアドレス信号に含まれる行アドレスと列アドレスとの間で、変化したビットの数が基準値以上で、且つ変化後のビットのビットパターンが基準ビットパターンであるときには、信号制御回路からダイナミックＲＡＭに向けて出力する制御信号を遅延させる。
【００３４】
一方、信号制御回路が、主処理回路から出力された前回のアドレス信号に含まれる列アドレスを出力した後に続けて主処理回路から出力された今回のアドレス信号に含まれる列アドレスを出力するときには、比較部は、前回のアドレス信号に含まれる列アドレスと今回のアドレス信号に含まれる列アドレスとの少なくとも所定部分の各ビットをそれぞれ比較する。そして、出力制御部は、前回のアドレス信号に含まれる列アドレスと今回のアドレス信号に含まれる列アドレスとの間で、変化したビットの数が基準値以上で、且つ変化後のビットのビットパターンが基準ビットパターンであるときには、信号制御回路からダイナミックＲＡＭに向けて出力する制御信号を遅延させる。
【００３５】
このように、信号制御回路からダイナミックＲＡＭに向けて連続して出力される２つのアドレスとの間で比較を行い、制御信号を遅延させる。これにより、ダイナミックＲＡＭは、ノイズの発生している期間を避けて、アドレス信号を読み込むことができる。従って、ダイナミックＲＡＭに対して誤ったアドレスが指定されるのを防止できる。
【００３６】
【発明の実施の形態】
１  第１の実施形態
まず、本発明の第１の実施形態を図１ないし図６に従って説明する。
【００３７】
図１は、本発明の第１の実施形態として、本発明による信号制御回路をデータ記憶装置に適用した場合を例に挙げて示している。特に、第１の実施形態では、データ記憶装置に設けられる記憶回路としてＤＲＡＭを用いた例を示している。
【００３８】
図１において、データ記憶装置１００は、アドレス信号を出力する主処理回路としてのＣＰＵ１０と、ＣＰＵ１０から出力されたアドレス信号に基づいて指定されたアドレスに対してデータの読出しまたは書込みを行う記憶回路としてのＤＲＡＭ２０と、ＣＰＵ１０とＤＲＡＭ２０との間に設けられ、ＣＰＵ１０から出力されたアドレス信号に基づいてＤＲＡＭ２０に対しアドレス制御を行う信号制御回路としてのアドレス制御回路３０とを備えている。
【００３９】
さらに詳しく説明すると、ＣＰＵ１０は、データバス５１を介してＤＲＡＭ２０と接続されており、データバス２０を介して、ＤＲＡＭ２０との間でデータのやり取りを行う。また、ＣＰＵ１０は、アドレス制御回路３０に設けられた比較部３１、保持部３２およびメモリ制御回路３３にアドレスバス５３を介してそれぞれ接続されている。これにより、ＣＰＵ１０から出力されるアドレス信号は、アドレスバス５３を介して、比較部３１、保持部３２およびメモリ制御回路３３にそれぞれ出力される。ここで、ＣＰＵ１０から出力されるアドレス信号は、例えば２０ビットのデジタル信号である。
【００４０】
さらに、ＣＰＵ１０は、アドレス制御回路３０の比較部３１に向けて後述の基準値設定信号および基準ビットパターン設定信号を出力すると共に、アドレス制御回路３０に向けて後述のＡＳ信号（Address Strobe信号）を出力する。
【００４１】
ＤＲＡＭ２０は、アドレスマルチプレクサ方式を採用している。従って、ＣＰＵ１０から出力されたアドレス信号は、行アドレスと列アドレスに時分割されてＤＲＡＭ２０に入力される。また、ＤＲＡＭ２０はページモード方式を用いてアドレス指定を行うタイプのＤＲＡＭである。従って、ＤＲＡＭ２０に対し、同一ページのアドレスを連続して指定する場合、即ち、行アドレスが同一で、列アドレスのみが異なるアドレスを連続して指定する場合には、一度行アドレスを入力した後、列アドレスのみを連続してＤＲＡＭ２０に入力すればよい。ＤＲＡＭ２０は、初めに入力された行アドレスを保持し、保持している行アドレスと順次入力される列アドレスとを次々に組み合わせて、アドレスを順次特定する。
【００４２】
アドレス制御回路３０は、比較部３１、保持部３２およびメモリ制御部３３を備えており、例えばＡＳＩＣ（Application Specific Integrated Circuit）として実現されている。
【００４３】
比較部３１は、アドレスバス５３を介してＣＰＵ１０に接続されており、ＣＰＵ１０から出力されるアドレス信号を受け取る。また、比較部３１は、バス５６を介して保持部３２に接続されており、保持部３２に保持されているアドレス信号を受け取る。さらに、比較部３１は、メモリ制御部３３から出力されるページ制御信号を受け取る。また、比較部３１は、制御バス５２を介してＣＰＵ１０と接続されており、ＣＰＵ１０から出力される基準値設定信号および基準ビットパターン設定信号を受け取る。
【００４４】
さらに、比較部３１はメモリ３１Ａを有している。メモリ３１Ａには、後述する基準値および基準ビットパターンテーブルＰが記憶されている。
【００４５】
このように構成される比較部３１は、アドレス信号、ページ制御信号、基準値および基準ビットパターンテーブルＰ等に基づいて、図２に示すような比較判定処理を行い、その結果に応じて、遅延要求信号をメモリ制御部３３に出力する。なお、図２に示す比較判定処理については後述する。
【００４６】
保持部３２は、アドレスバス５３を介してＣＰＵ１０と接続されており、ＣＰＵ１０から出力されたアドレス信号を一時的に記憶保持する。また、保持部３２は、メモリ制御部３３から出力されるラッチ信号を受け取り、ラッチ信号を受け取ったタイミングでアドレスバス５３上に出力されているアドレス信号を記憶する。さらに詳しく説明すると、ラッチ信号は、比較部３１による比較判定処理が終了してから、ＣＰＵ１０において新たなアドレス信号がセットされる直前までの間に出力される。これにより、保持部３２は、比較部３１による比較判定処理が終了してから、ＣＰＵ１０において新たなアドレス信号がセットされる直前までの間に、アドレスバス５３上に出力されているアドレス信号を記憶する。従って、保持部３２は、ＣＰＵ１０が新たなアドレス信号を出力したときに、前回のアドレス信号を記憶保持している。
【００４７】
メモリ制御部３３は、ＣＰＵ１０から出力されるアドレス信号を行アドレスと列アドレスに分割し、これら分割した行アドレスと列アドレスを予め設定された順序でＤＲＡＭ２０に出力する。即ち、メモリ制御部３３は、ＣＰＵ１０から出力される２０ビットのアドレス信号を、上位１０ビットと下位１０ビットに分割し、上位１０ビットを行アドレスとし、下位１０ビットを列アドレスとしてＤＲＡＭ２０に出力する。これにより、ＤＲＡＭ２０に対してアドレスマルチプレクサ方式によるアドレス指定を実現している。
【００４８】
ここで、メモリ制御部３３から出力される行アドレスおよび列アドレスは、アドレスバス５４を介してＤＲＡＭ２０に出力される。行アドレスおよび列アドレスは、上述したように、例えば１０ビットなので、アドレスバス５４は１０本の信号線により構成されている。
【００４９】
また、メモリ制御部３３は、行アドレスおよび列アドレスの読込みタイミングをＤＲＡＭ２０に指示するためのＲＡＳ信号（Row Address Strobe 信号）およびＣＡＳ信号（Column Address Strobe 信号）等の制御信号を出力する。これら制御信号はバス５５を介してＤＲＡＭ２０に出力される。
【００５０】
また、メモリ制御部３３は、ＣＰＵ１０から出力されるアドレス信号を常に監視している。そして、ＣＰＵ１０から出力された今回のアドレス信号に含まれる行アドレスが、ＣＰＵ１０から出力された前回のアドレス信号に含まれる行アドレスと比べて変化した場合に、メモリ制御部３３は、今回のアドレス信号を行アドレスと列アドレスに分割し、これら分割した行アドレスと列アドレスとを順次連続してＤＲＡＭ２０に出力する。一方、ＣＰＵ１０から出力された今回のアドレス信号に含まれる行アドレスが、前回のアドレス信号に含まれる行アドレスと同一の場合には、メモリ制御部３３は、今回のアドレス信号を行アドレスと列アドレスに分割し、列アドレスのみをＤＲＡＭ２０に出力する。これにより、ＤＲＡＭ２０に対してページモード方式によるアドレス指定を実現している。
【００５１】
さらに、メモリ制御部３３は、ＣＰＵ１０から出力された今回のアドレス信号に含まれる行アドレスが、前回のアドレス信号に含まれる行アドレスと比べて変化した場合には、ページ制御信号を比較部３１に向けて出力する。また、メモリ制御部３３は、上述したラッチ信号を保持部３２に向けて出力する。
【００５２】
次に、データ記憶装置１００の動作を説明する。ＣＰＵ１０からアドレス信号が出力されると、そのアドレス信号は、アドレス制御回路３０の比較部３１、保持部３２およびメモリ制御部３３にそれぞれ入力される。そして、メモリ制御部３３に入力されたアドレス信号は、メモリ制御部３３によって行アドレスと列アドレスに分割される。続いて、分割された行アドレスと列アドレスは、上述したように、ページモード方式によってＤＲＡＭ２０に入力される。このとき、メモリ制御部３３は、ＤＲＡＭ２０に向けてＲＡＳ信号およびＣＡＳ信号等を出力し、ＤＲＡＭ２０に対し、行アドレスおよび列アドレスを読み込むタイミングを指示する。ＤＲＡＭ２０は、ＲＡＳ信号およびＣＡＳ信号によって指示されたタイミングで行アドレスおよび列アドレスを読み込み、アドレスを特定する。このように、ＤＲＡＭ２０においてアドレスが特定された後、ＣＰＵ１０とＤＲＡＭ２０との間で、データバス５１を介してデータの読出しまたは書込みが行われる。
【００５３】
一方、ＣＰＵ１０から比較部３１に入力されたアドレス信号に対しては、比較部３１において図２に示す比較判定処理が施される。そして、比較判定処理の結果に応じて遅延要求信号が比較部３１からメモリ制御部３３に出力される。メモリ制御部３３は、遅延要求信号を受け取ったとき、ＤＲＡＭ２０に出力するＣＡＳ信号の立ち下げタイミングを遅延させる。また、ＣＰＵ１０から保持部３２に入力されたアドレス信号は、前記比較部３１による比較判定処理が終了した後に、前記ラッチ信号が出力されるタイミングに従って保持部３２に記憶される。
【００５４】
次に、比較部３１によって実行される比較判定処理について図２に示すフローチャートに沿って説明する。
【００５５】
ステップ１では、ＣＰＵ１０から新たなアドレス信号が出力されたか否かを判定する。ＣＰＵ１０に新たなアドレス信号が出力されたか否かは、例えば、ＣＰＵ１０からアドレス制御回路３０に向けて出力されるＡＳ信号（Address Strobe信号）を参照することにより認識することができる。ここで、ＡＳ信号は、ＣＰＵ１０から出力されるアドレス信号の出力タイミングを示す信号である。そして、ステップ１の判定の結果、新たなアドレス信号が出力されたときには、ステップ２に移行する。一方、新たなアドレス信号がまだ出力されていないときには、新たなアドレス信号が出力されるまでステップ１を繰り返し、新たなアドレス信号が出力されるのを持つ。
【００５６】
ステップ２では、比較部３１がメモリ制御部３３から出力されるページ制御信号を受信したか否かを判定する。上述したように、ＣＰＵ１０から新たに出力された今回のアドレス信号に含まれる行アドレスが、ＣＰＵ１０から出力された前回のアドレス信号に含まれる行アドレスと比べて変化した場合には、メモリ制御部３３は、ページ制御信号を比較部３１に向けて出力する。従って、ステップ２において比較部３１がページ制御信号を受信したときは、ＣＰＵ１０から出力された今回のアドレス信号によって行アドレスが変更されたことを意味する。一方、ステップ２において比較部３１がページ制御信号を受信していないときは、ＣＰＵ１０から新たなアドレス信号が出力されたものの、行アドレスについては変更がなかったことを意味する。そして、ステップ２の判定の結果、比較部３１がページ制御信号を受信したときには、ステップ３に移行する。
【００５７】
ステップ３では、ＣＰＵ１０から出力された今回のアドレス信号の行アドレスと列アドレスを互いに比較する。即ち、２０ビットのアドレス信号を上位１０ビットと下位１０ビットに分離し、両者を各ビット毎にそれぞれ比較する。そして、ステップ４では、ステップ３の比較結果に基づいて、上位１０ビットと下位１０ビットの間で変化したビットの数を求める。
【００５８】
例えば、アドレス信号が「00000000001111111111ｂ」の場合には、これを、上位１０ビット「0000000000ｂ」と下位１０ビット「1111111111ｂ」に分離し、両者を各ビット毎にそれぞれ比較すると、両者は、すべてのビットが異なっている。従って、上位１０ビットと下位１０ビットとの間で変化したビットの数は「１０」である。また、例えば、アドレス信号が「00000000010000000011ｂ」の場合には、これを、上位１０ビット「0000000001ｂ」と下位１０ビット「0000000011ｂ」に分離し、両者を各ビット毎にそれぞれ比較すると、第２ビット目が互いに異なっている。しかし、それ以外のビットはすべて同一である。従って、上位１０ビットと下位１０ビットとの間で変化したビットの数は「１」である。
【００５９】
さらに具体的に説明すると、ステップ３およびステップ４では、上位１０ビットと下位１０ビットとの排他的論理和を求め、排他的論理和を求めることにより得られた値の全ビットのうち、ビット状態が「１」であるビットをカウントする。これにより、上位１０ビットと下位１０ビットとの間で変化したビットの数を容易に求めることができる。
【００６０】
ステップ５では、上位１０ビットと下位１０ビットとの間で変化したビットの数が基準値以上か否かを判定する。ここで、メモリ制御部３３からＤＲＡＭ２０に出力されるアドレスの全ビットのうち、５０〜１００％のビットが一斉に変化すると、アドレスバス上等にノイズが発生する場合がある。特に、アドレスの全ビットのうち、９０〜１００％のビットが一斉に変化すると、アドレスバス上等にノイズが発生する可能性が高くなる。本実施形態の場合、メモリ制御部３３からＤＲＡＭ２０に出力される行アドレスおよび列アドレスが１０ビットであるから、アドレスの９〜１０ビットが一斉に変化すると、アドレスバス５４にノイズが発生する可能性が高い。このような観点から、上述した比較判定処理に用いられる基準値は「９」に設定されている。なお、基準値を５〜８または１０に設定してもよい。また、基準値は比較部３１のメモリ３１Ａに記憶されており、後述するように、ＣＰＵ１０から出力される基準値設定信号に基づいて変更可能である。
【００６１】
従って、ＣＰＵ１０から出力されたアドレス信号が、例えば「00000000001111111111ｂ」の場合には、上位１０ビットと下位１０ビットとの間で変化したビット数は「１０」であるので、ステップ５で「ＹＥＳ」と判定され、ステップ６に移行する。
【００６２】
ステップ６では、アドレス信号の下位１０ビットを基準ビットパターンテーブルＰに記録された各基準ビットパターンと比較する。そして、ステップ７では、アドレス信号の下位１０ビットが基準ビットパターンテーブルＰに記録された基準ビットパターンのいずれかに一致するか否かを判定する。
【００６３】
ここで、メモリ制御部３３からＤＲＡＭ２０に出力されるアドレスの全ビットのうち、５０〜１００％のビットが一斉に「０」から「１」へ、または「１」から「０」へ変化すると、アドレスバス上等にノイズが発生する場合がある。特に、アドレスの全ビットのうち、９０〜１００％のビットが一斉に「０」から「１」へ、または、「０」から「１」へ変化すると、アドレスバス上等にノイズが発生する可能性が高くなる。例えば、「0000000000 ｂ」が「1111111111ｂ」に変化すると、アドレスバス上等にノイズが発生する可能性が高い。このような観点から、図３に示すような複数のビットパターンが基準ビットパターンとして基準ビットパターンテーブルＰに記録されている。なお、基準ビットパターンテーブルＰは、比較部３１のメモリ３１Ａに記憶されている。また、後述するように、基準ビットパターンテーブルＰは、ＣＰＵ１０から出力される基準ビットパターン設定信号に基づいて変更可能であり、基準ビットパターンテーブルＰを変更することにより、基準ビットパターンを容易に変更することができる。
【００６４】
そして、アドレス信号の下位１０ビットが基準ビットパターンテーブルＰに記録されたいずれかの基準ビットパターンと一致したときには、ステップ７で「ＹＥＳ」と判定され、ステップ８に移行する。そして、ステップ８において、比較部３１からメモリ制御部３３に向けて遅延要求信号が出力される。
【００６５】
ここで、「遅延要求信号」とは、ＤＲＡＭ２０による列アドレスの読込みタイミングを遅延させるために、メモリ制御部３３に対して、ＣＡＳ信号の立ち下げタイミングの遅延を要求する信号である。後述するように、遅延要求信号がメモリ制御部３３に入力されると、メモリ制御部３３からＤＲＡＭ２０に出力されるＣＡＳ信号の立ち下がりのタイミングが一時的に遅延される。ＤＲＡＭ２０は、ＣＡＳ信号の立ち下がりで列アドレスを読み込むため、ＣＡＳ信号の立ち下がりタイミングが遅延されると、ＤＲＡＭ２０における列アドレスの読込みが遅延されることになる。
【００６６】
一方、ステップ５において、アドレス信号の上位１０ビットと下位１０ビットとの間で変化したビットの数が基準値以上でないときには、「ＮＯ」と判定され、遅延要求信号は出力されない。例えば、ＣＰＵ１０から出力されたアドレス信号が、「00000000010000000011ｂ」の場合には、上位１０ビットと下位１０ビットとの間で異なるビット数は「１」であるので、ステップ５で「ＮＯ」と判定され、遅延要求信号は出力されない。
【００６７】
また、ステップ７において、アドレス信号の下位１０ビットが基準ビットパターンテーブルＰに記録された基準ビットパターンのいずれにも一致しないときには、「ＮＯ」と判定され、遅延要求信号は出力されない。
【００６８】
一方、ステップ２の判定の結果、比較部３１がページ制御信号を受信していないときには、ステップ９に移行する。
【００６９】
ステップ９では、ＣＰＵ１０から出力された今回のアドレス信号に含まれる列アドレスと保持部３２に保持されている前回のアドレス信号に含まれる列アドレスを比較する。そして、ステップ１０では、ステップ９の比較結果に基づいて、前回の列アドレスと今回の列アドレスとの間で変化したビットの数を求める。
【００７０】
例えば、今回のアドレス信号が「01100000000000000000ｂ」であり、前回のアドレス信号が「01100000001111111111ｂ」である場合には、今回のアドレス信号に含まれる列アドレス「0000000000ｂ」と、前回のアドレス信号に含まれる列アドレス「1111111111ｂ」を比較する。この場合、各列アドレスは、すべてのビットが互いに異なっているため、今回の列アドレスと前回の列アドレスとの間で変化したビット数は「１０」である。また、例えば、今回のアドレス信号が「01100000000000010111ｂ」であり、前回のアドレス信号が「01100000000000011110ｂ」である場合には、今回のアドレス信号に含まれる列アドレス「0000010111ｂ」と、前回のアドレス信号に含まれる列アドレス「0000011110ｂ」を比較する。この場合、両者の第１ビット目と第４ビット目が異なるので、今回の列アドレスと前回の列アドレスとの間で変化したビット数は「２」である。
【００７１】
さらに具体的に説明すると、ステップ９およびステップ１０では、前回の列アドレスと今回の列アドレスとの排他的論理和を求め、排他的論理和を求めることにより得られた値の全ビットのうち、ビット状態が「１」であるビットをカウントする。
【００７２】
ステップ１１では、今回の列アドレスと前回の列アドレスとの間で変化したビットの数が基準値以上か否かを判定する。ここで、基準値は、上述したように、例えば、「９」に設定されている。従って、今回のアドレス信号が「00000000010000000000ｂ」であり、前回のアドレス信号が「00000000011111111111ｂ」である場合には、今回の列アドレスと前回の列アドレスとの間で変化したビット数は「１０」であるので、ステップ１１で「ＹＥＳ」と判定され、ステップ１２に移行する。
【００７３】
ステップ１２では、今回のアドレス信号に含まれる列アドレスを、図３に示す基準ビットパターンテーブルＰに記録された各基準ビットパターンと比較する。そして、ステップ１３では、今回の列アドレスが、基準ビットパターンテーブルＰに記録された基準ビットパターンのいずれかに一致するか否かを判定する。
【００７４】
そして、今回の列アドレスが基準ビットパターンテーブルＰに記録されたいずれかの基準ビットパターンと一致したときには、ステップ１３で「ＹＥＳ」と判定され、ステップ８に移行する。そして、ステップ８において、比較部３１からメモリ制御部３３に向けて遅延要求信号が出力される。
【００７５】
一方、ステップ１１において、前回の列アドレスと今回の列アドレスとの間で変化したビットの数が基準値以上でないときには、「ＮＯ」と判定され、遅延要求信号は出力されない。例えば、ＣＰＵ１０から出力された今回のアドレス信号が「00000000000000010111ｂ」であり、前回のアドレス信号が「00000000000000011110ｂ」である場合には、今回の列アドレスと前回の列アドレスとの間で変化したビット数が「２」であるので、ステップ１１で「ＮＯ」と判定される。この場合には、遅延要求信号は出力されない。
【００７６】
また、ステップ１３において、今回の列アドレスが基準ビットパターンテーブルＰに記録された基準ビットパターンのいずれにも一致しないときには、「ＮＯ」と判定され、遅延要求信号は出力されない。
【００７７】
次に、比較部３１からメモリ制御部３３に遅延要求信号が出力されたときのメモリ制御部３３の動作について、図４ないし図６を参照しつつ説明する。
【００７８】
図４ないし図６は、ＲＡＳ信号、ＣＡＳ信号、行アドレス、列アドレス、ＡＳ信号およびＲＥＡＤＹ信号の出力タイミングを示すタイミングチャートである。
【００７９】
ここで、ＲＡＳ信号は、メモリ制御部３３からＤＲＡＭ２０に向けて出力され、立ち下がりａによって、行アドレスを読み込むタイミングをＤＲＡＭ２０に指示している。ＣＡＳ信号は、メモリ制御部３３からＤＲＡＭ２０に向けて出力され、立ち下がりｂおよびｃによって、各列アドレスを読み込むタイミングをＤＲＡＭ２０に指示している。ＡＳ信号は、ＣＰＵ１０からアドレス制御部３０に出力され、ＣＰＵ１０から出力されるアドレス信号の出力タイミングを示している。このＡＳ信号に基づいて行アドレスおよび列アドレスの出力期間Ｔ１およびＴ２が決定される。ＲＥＡＤＹ信号は、各出力期間Ｔ１およびＴ２の終わりを示している。
【００８０】
また、図４ないし図６において、メモリ制御部３３からＤＲＡＭ２０に向けて行アドレスと列アドレスを順次連続して出力する場合に、１組の行アドレスと列アドレスを出力する期間を「第１出力期間Ｔ１」とし、メモリ制御部３３からＤＲＡＭ２０に向けて列アドレスのみを出力する場合に、１つの列アドレスを出力する期間を「第２出力期間Ｔ２」とする。
【００８１】
さて、比較部３１から遅延要求信号が出力されていないとき、即ち、通常時には、ＣＡＳ信号の立ち下がりｂおよびｃは、図４に示すように、ＤＲＡＭ２０が列アドレスを読み込むのに最適なタイミングで発生する。この立ち下がりｂおよびｃのタイミングは、ＤＲＡＭ２０の設計、仕様等に基づいて予め設定されている。
【００８２】
一方、第１出力期間Ｔ１において、比較部３１から遅延要求信号が出力されたときには、図５に示すように、ＣＡＳ信号の立ち下がりｂが遅延時間ｔだけ遅延されて出力される。即ち、図５中の点線で示す立ち下がりが通常時における立ち下がりであり、実線で示す立ち下がりｂが遅延要求信号を受けたことによって遅延時間ｔだけ遅延したときの立ち下がりである。
【００８３】
例えば、ＣＰＵ１０から出力されたアドレス信号が「00000000001111111111ｂ」であり、かつ、このアドレス信号が出力されたことによって行アドレスが変更されたとき、メモリ制御部３３は、行アドレス「0000000000ｂ」と列アドレス「1111111111ｂ」をＤＲＡＭ２０に向けて順次連続して出力する。これにより、メモリ制御部３３からＤＲＡＭ２０に向けて出力されるアドレスの全ビットが一斉に「０」から「１」に立ち上がる。この結果、図５に示すように、行アドレスから列アドレスに出力が切り換わったときに、ノイズＮが発生する場合がある。
【００８４】
このような場合、本実施形態における比較部３１は、上述した比較判定処理において、行アドレスと列アドレスを比較し、行アドレスと列アドレスとの間で異なるビット数が基準値以上であり、かつ、列アドレスが、基準ビットパターンテーブルＰに記録されたいずれかの基準ビットパターンと一致したときには、遅延要求信号をメモリ制御部３３に向けて出力する。そして、遅延要求信号を受け取ったメモリ制御部３３は、図５に示すように、ＣＡＳ信号の立ち下がりｂを遅延時間ｔだけ遅延させる。これにより、ＤＲＡＭ２０が列アドレスを読み込むタイミングを遅延させることができ、ＤＲＡＭ２０が列アドレスを読み込むタイミングとノイズＮが発生するタイミングをずらすことができる。従って、ＤＲＡＭ２０が列アドレスを読み込むときには、ノイズＮが既に消失しているから、ＤＲＡＭ２０は、ノイズＮの影響を受けずに列アドレスを読み込むことができる。
【００８５】
また、第２出力期間Ｔ２において、比較部３１から遅延要求信号が出力されたときには、図６に示すように、ＣＡＳ信号の立ち下がりｃが遅延時間ｔだけ遅延されて出力される。即ち、図６中の点線で示す立ち下がりが通常時における立ち下がりであり、実線で示す立ち下がりｃが遅延要求信号を受けたことによって遅延時間ｔだけ遅延したときの立ち下がりである。
【００８６】
例えば、ＣＰＵ１０から出力された前回のアドレス信号が「01100000001111111111ｂ」であり、今回のアドレス信号が「01100000000000000000ｂ」である場合には、今回のアドレス信号と前回の信号との間で行アドレスが同一であるため、メモリ制御部３３は、前回の列アドレス「0000000000ｂ」と今回の列アドレス「1111111111ｂ」をＤＲＡＭ２０に向けて順次連続して出力する。これにより、メモリ制御部３３からＤＲＡＭ２０に向けて出力されるアドレスの全ビットが一斉に「０」から「１」に立ち上がる。この結果、図６に示すように、前回の列アドレスから今回の列アドレスに出力が切り換わったときに、ノイズＮが発生する場合がある。
【００８７】
このような場合、本実施形態における比較部３１は、上述した比較判定処理において、前回の列アドレスと今回の列アドレスを比較し、両者の間で異なるビット数が基準値以上である、かつ、今回の列アドレスが、基準ビットパターンテーブルＰに記録されたいずれかの基準ビットパターンと一致したときには、遅延要求信号をメモリ制御部３３に向けて出力する。そして、遅延要求信号を受け取ったメモリ制御部３３は、図６に示すように、ＣＡＳ信号の立ち下がりｃを遅延時間ｔだけ遅延させる。これにより、ＤＲＡＭ２０が今回の列アドレスを読み込むタイミングを遅延させることができ、ＤＲＡＭ２０が今回の列アドレスを読み込むタイミングとノイズＮが発生するタイミングをずらすことができる。従って、ＤＲＡＭ２０が列アドレスを読み込むときには、ノイズＮが既に消失しているから、ＤＲＡＭ２０は、ノイズＮの影響を受けずに列アドレスを読み込むことができる。
【００８８】
次に、前記比較判定処理に用いられる基準値および基準ビットパターンの変更について説明する。
【００８９】
本実施形態によるアドレス制御回路３０では、前記比較判定処理に用いる基準値をＣＰＵ１０からの指示に基づいて変更することができる。即ち、アドレス制御回路３０の比較部３１は、制御バス５２を介してＣＰＵ１０と接続されており、ＣＰＵ１０から出力される基準値設定信号を受け取る。この基準値設定信号は、基準値を変更するための信号である。例えば、基準値を「９」から「７」に変更するときには、ＣＰＵ１０から比較部３１に、基準値設定信号として「７」を出力する。これにより、比較部３１のメモリ３１Ａに記憶された基準値は「７」に書き換えられる。
【００９０】
また、本実施形態によるアドレス制御回路３０では、前記比較判定処理に用いる各基準ビットパターンをＣＰＵ１０からの指示に基づいて変更することができる。即ち、アドレス制御回路３０の比較部３１は、制御バス５２を介して、ＣＰＵ１０から出力される基準ビットパターン設定信号を受け取る。この基準ビットパターン設定信号は、基準ビットパターンを変更するための信号である。この基準ビットパターン設定信号により、基準ビットパターンテーブルに記録された各基準ビットパターンを書き換えることができる。
【００９１】
このように、ＣＰＵ１０から出力される基準値設定信号および基準ビットパターン設定信号に基づいて、基準値および基準ビットパターンを変更可能とすることにより、基準値および基準ビットパターンの変更が非常に容易となる。これにより、例えば、アドレス制御回路３０をＡＳＩＣとして構築した後でも、基準値および基準ビットパターンをＣＰＵ１０からの指示に基づいて容易に変更することができる。従って、アドレス制御回路３０をＡＳＩＣとして構築した後でも、基準値および基準ビットパターンを変更することにより、アドレス制御回路３０を、ＣＰＵ１０やＤＲＡＭ２０の設定、仕様に適合させることができる。
【００９２】
以上より、本実施形態によるアドレス制御回路３０は、比較部３１から出力される遅延要求信号に基づいて、メモリ制御部３３からＤＲＡＭ２０に出力されるＣＡＳ信号の立ち下がりを遅延させる。これにより、ＤＲＡＭ２０に入力されるアドレス信号の各ビットが一斉に変化することによりノイズが発生するタイミングと、ＤＲＡＭ２０が列アドレスを読み込むタイミングとをずらすことができる。従って、ＤＲＡＭ２０に入力されるアドレス信号の各ビットが一斉に変化することによって発生するノイズにより、ＤＲＡＭ２０に対して誤ったアドレスが指定されるのを防止することができる。この結果、ＤＲＡＭ２０に対するアドレス指定を高速化することができ、ＤＲＡＭ２０に対するアクセス速度を高めることができる。
【００９３】
また、本実施形態によるアドレス制御回路３０は、行アドレスが変更され、メモリ制御部３３からＤＲＡＭ２０に向けて行アドレスと列アドレスが連続して出力されるときには、ＣＰＵ１０から出力されたアドレス信号の上位１０ビットと下位１０ビットとを比較する。一方、行アドレスに変更がなく、メモリ制御部３３からＤＲＡＭ２０に向けて列アドレスのみが連続して出力されるときには、ＣＰＵ１０から出力された前回のアドレス信号に含まれる列アドレスと、今回のアドレス信号に含まれる列アドレスとを比較する。そして、これらの比較結果に基づいて、遅延要求信号を発生させるタイミングを決定する。これにより、メモリ制御部３３からＤＲＡＭ２０に向けて出力するＣＡＳ信号の立ち下げを適切に遅延させることができ、ＤＲＡＭ２０が列アドレスを読み込むタイミングを適切に遅延されることができる。
【００９４】
さらに、行アドレスと列アドレス、または、前回の列アドレスと今回の列アドレスとの間で、変化したビット数を基準値と比較すると共に、今回の列アドレスを各基準ビットパターンと比較する構成としたから、前回のアドレスと今回のアドレスとの間で各ビットが一斉に変化することを確実に認識することができ、適切なタイミングで遅延要求信号をメモリ制御部３３に出力することができる。従って、ＤＲＡＭ２０が列アドレスを読み込むタイミングを確実に遅延させることができ、アドレス信号内に発生したノイズによって、ＤＲＡＭ２０に対して誤ったアドレスが指定されるのを確実に防止できる。
【００９５】
なお、ＤＲＡＭ２０に入力されるアドレス信号の各ビットが一斉に変化するような事態が生じる頻度は低いため、上述したように、列アドレスの出力を遅延させても、全体的にみれば、アドレス指定の速度が低下することはない。
【００９６】
２  第２の実施形態
次に、本発明の第２の実施形態を図７に従って説明する。本実施形態の特徴は、ＣＰＵから入力される遅延時間設定信号に基づいて、ＣＡＳ信号の立ち下がりを遅延させる量（時間）を変更することにある。なお、本実施形態では、上述した第1の実施形態と同一の構成要素に同一の符号を付し、その説明を省略するものとする。
【００９７】
図７に示すように、本実施形態におけるデータ記憶装置２００は、ＣＰＵ１０と比較部３１、ＣＰＵ１０と保持部３２、およびＣＰＵ１０とメモリ制御部３３を、それぞれ相互に接続する制御バス６１を備えている。そして、ＣＰＵ１０は、遅延時間設定信号を、制御バス６１を介してメモリ制御部３３に出力する。上述したように、メモリ制御部３３は、比較部３１から出力される遅延要求信号を受け取ったとき、ＤＲＡＭ２０に出力するＣＡＳ信号の立ち下げタイミングを遅延時間ｔだけ遅延させる。遅延時間設定信号は、この遅延時間ｔを変更するための信号である。即ち、メモリ制御部３３は、ＣＰＵ１０から出力される遅延時間信号に基づいて、遅延時間ｔを変更する。
【００９８】
さらに具体的に説明すると、メモリ制御部３３は、外部から入力されるクロック信号に基づいて動作する。そして、メモリ制御部３３は、入力されるクロック信号のクロック数をカウントすることにより、ＣＡＳ信号を立ち下げるタイミング等を決定する。このため、メモリ制御部３３は、遅延時間ｔをクロック数として記憶している。従って、ＣＰＵ１０からメモリ制御部３３に出力される遅延時間設定信号は、変更すべき新たな遅延時間ｔに対応するクロック数である。メモリ制御部３３は、遅延時間設定信号を受け取ることにより、メモリ制御部３３に記憶されているクロック数を新たなクロック数に書き換える。このようにして、メモリ制御部３３は、ＣＡＳ信号の立ち下げタイミングの遅延時間ｔを変更する。
【００９９】
このように構成される本実施形態によれば、ＣＰＵ１０から出力される遅延時間設定信号に基づいて、ＣＡＳ信号の立ち下げタイミングの遅延時間ｔを変更することができる。これにより、例えば、アドレス制御回路３０をＡＳＩＣとして構築した後であっても、ＣＰＵ１０の指示によって、遅延時間ｔを容易に変更することができる。従って、データ記憶装置２００の設計や仕様が変更されても、変更後の設計や仕様に、アドレス制御回路３０を容易に適合させることができる。
【０１００】
３  第３の実施形態
次に、本発明の第３の実施形態を図８ないし図１０に従って説明する。本実施形態では、記憶回路にスタティックＲＡＭ（以下、これを「ＳＲＡＭ」という）を用い、アドレス制御回路によってＳＲＡＭに入力するアドレス信号を制御する。なお、本実施形態では、上述した第1の実施形態と同一の構成要素に同一の符号を付し、その説明を省略するものとする。
【０１０１】
図８に示すように、データ記憶装置３００は、主処理回路としてのＣＰＵ１０と、副処理回路としてのＳＲＡＭ８０と、信号制御回路としてのアドレス制御回路３３０を備えている。さらに、ＣＰＵ１０とＳＲＡＭ８０は、データバス３５１により接続されている。これにより、ＣＰＵ１０とＳＲＡＭ８０との間においては、データバス３５１を介してデータの入出力が行われる。また、ＣＰＵ１０と比較部３３１、ＣＰＵ１０と保持部３３２、およびＣＰＵ１０とメモリ制御部３３３は、アドレスバス３５３によってそれぞれ相互に接続されている。これにより、アドレス信号は、ＣＰＵ１０から、アドレスバス３５３を介して、比較部３３１、保持部３３２およびメモリ制御部３３３にそれぞれ出力される。
【０１０２】
また、アドレス制御回路３３０は、比較部３３１、保持部３３２およびメモリ制御部３３３を備えている。比較部３３１は、上述した第１の実施形態による比較部３３１とほぼ同様に、アドレス信号について比較判定処理を行う。また、保持部３３２は、第１の実施形態の保持部３２と同様に、ＣＰＵ１０から出力されたアドレス信号を一時的に記憶保持する。
【０１０３】
即ち、比較部３３１は、まず、保持部３３２に保持されている前回のアドレス信号と、ＣＰＵ１０から出力された今回のアドレス信号とを比較する。次に、前回のアドレス信号と今回のアドレス信号との間で変化したビット数を求め、前回のアドレス信号と今回のアドレス信号との間で変化したビット数が基準値以上か否かを判定する。そして、前回のアドレス信号と今回のアドレス信号との間で変化したビット数が基準値以上のときには、今回のアドレス信号と基準ビットパターンテーブルＰに記録された各基準ビットパターンとを比較する。そして、今回のアドレス信号が基準ビットパターンテーブルに記録された各基準ビットパターンのいずれかと一致するとき、比較部３３１は、遅延要求信号をメモリ制御部３３３に出力する。一方、前回のアドレス信号と今回のアドレス信号との間で変化したビット数が基準値以上でないとき、または、今回のアドレス信号が基準ビットパターンテーブルＰに記録された各基準ビットパターンのいずれにも一致しないとき、比較部３３１は遅延要求信号を出力しない。
【０１０４】
メモリ制御部３３３は、ＣＰＵ１０から出力されたアドレス信号を受け取り、そのアドレス信号をアドレスバス３５４を介してＳＲＡＭ８０に出力する。また、メモリ制御部３３３は、ＳＲＡＭ８０に向けてＣＳ信号（Chip Select 信号）、WE信号（Write Enable 信号）およびＯＥ信号（Output Enable 信号）等を出力する。ＣＳ信号は、ＳＲＡＭ８０を、ＣＰＵ１０との間でデータのやり取りを行う対象として選択するための信号である。また、WE信号は、ＳＲＡＭ８０に対してデータを書き込むときに出力される信号であり、ＳＲＡＭ８０に対してデータの読込み（書込み、即ち、記憶）を許可する信号である。さらに、ＯＥ信号は、ＳＲＡＭ８０からデータを読み出すときに出力される信号であり、ＳＲＡＭ８０に対してデータの読出しを許可する信号である。
【０１０５】
ここで、ＳＲＡＭ８０に対してデータを書込むときに、比較部３３１からメモリ制御部３３３に遅延要求信号が出力された場合の動作について、図９を参照しつつ説明する。
【０１０６】
図９上段は、比較部３３１から遅延要求信号が出力されていないとき、即ち、通常時における、アドレス信号、ＣＳ信号、ＷＥ信号およびデータの出力タイミングを示すタイミングチャートである。また、図９下段は、比較部３３１から遅延要求信号が出力されたときの、アドレス信号、ＣＳ信号、ＷＥ信号およびデータの出力タイミングを示すタイミングチャートである。
【０１０７】
ＳＲＡＭ８０に対してデータを書込むとき、ＳＲＡＭ８０は、メモリ制御部３３３から出力されたアドレス信号を、ＣＳ信号が立ち下がった後、ＷＥ信号が立ち上がる（この時点で書込まれる）までに所定のセットアップ時間を確保したタイミングで有効とする。即ち、ＷＥ信号等がアクティブ（ＬＯＷ）になっている期間は、このセットアップ時間を確保できるように設定されている。
【０１０８】
さて、通常時において、ＣＳ信号の立ち下がりＳ１は、図９上段に示すように、ＳＲＡＭ８０がアドレス信号を読み込むのに最適なタイミングとなるように設定されている。ところが、遅延要求信号が出力されると、ＣＳ信号の立ち下がりＳ１は、図９下段に示すように、遅延時間ｔだけ遅延される。また、このとき、ＷＥ信号の立ち下がりＳ２も同様に、遅延時間ｔだけ遅延される。
【０１０９】
これにより、前回のアドレス信号ａｄｓ１と今回のアドレス信号ａｄｓ２との間で、ビットが一斉に変化したことにより、アドレス信号内にノイズＮが発生しても、このノイズＮが発生するタイミングと、ＣＳ信号の立ち下がりＳ１が発生するタイミングを、図９下段に示すようにずらすことができる。従って、ＳＲＡＭ８０がアドレス信号を読み込むときには、ノイズＮが既に消失しているから、ＳＲＡＭ８０は、ノイズＮの影響を受けずにアドレス信号を正確に読み込むことができる。
【０１１０】
次に、ＳＲＡＭ８０からデータを読み出すときに、比較部３３１からメモリ制御部３３３に遅延要求信号が出力された場合の動作について、図１０を参照しつつ説明する。
【０１１１】
図１０上段は、比較部３３１から遅延要求信号が出力されていないとき、即ち、通常時における、アドレス信号、ＲＥＡＤＹ信号、ＣＳ信号、ＯＥ信号およびデータの出力タイミングを示すタイミングチャートである。また、図１０下段は、比較部３３１から遅延要求信号が出力されたときの、アドレス信号、ＲＥＡＤＹ信号、ＣＳ信号、ＯＥ信号およびデータの出力タイミングを示すタイミングチャートである。
【０１１２】
ＳＲＡＭ８０からデータを読み出すとき、メモリ制御部３３３から出力されたアドレス信号は、このアドレス信号の出力（変化）が一定になり、かつ、ＣＳ信号が立ち下がって所定のアクセス時間が確保された時点でＳＲＡＭ８０にとって有効になる（読み込まれる）。そして、ＯＥ信号が立ち下がってアクティブ（ＬＯＷ）になってから所定のアクセス時間の後、ＳＲＡＭ８０の指定されたアドレスからデータがバス上に出力される。
【０１１３】
さて、通常時において、ＣＳ信号の立ち下がりＳ１またはＯＥ信号の立ち下がりＳ３は、図１０上段に示すように、ＳＲＡＭ８０がアドレス信号を読み込むのに最適なタイミングとなるように設定されている。ところが、遅延要求信号が出力されると、ＣＳ信号の立ち下がりＳ１およびＯＥ信号の立ち下がりＳ３は、図１０下段に示すように、遅延時間ｔだけ遅延される。また、これに伴い、ＲＥＡＤＹ信号も遅延時間ｔだけ遅延される。
【０１１４】
これにより、前回のアドレス信号ａｄｓ１と今回のアドレス信号ａｄｓ２との間で、ビットが一斉に変化したことにより、アドレス信号内にノイズＮが発生しても、このノイズＮが発生するタイミングと、ＣＳ信号の立ち下がりＳ１またはＯＥ信号の立ち下がりＳ３が発生するタイミングを、図１０下段に示すようにずらすことができる。従って、ＳＲＡＭ８０がアドレス信号を読み込むときには、ノイズＮが既に消失しているから、ＳＲＡＭ８０は、ノイズＮの影響を受けずにアドレス信号を正確に読み込むことができる。
【０１１５】
また、本実施形態によるアドレス制御回路３３０の比較部３３１は、制御バス３５２により、ＣＰＵ１０と接続されている。これにより、比較部３３１は、第１の実施形態とほぼ同様に、ＣＰＵ１０から出力される基準値設定信号および基準ビットパターン設定信号を受け取る。これに加えて、本実施形態による比較部３３１は、ＣＰＵ１０から出力される比較ビット設定信号をも受け取る。
【０１１６】
ここで、比較ビット設定信号は、比較部３３１で比較対象とするアドレス信号のビットを変更するための信号である。即ち、比較部３３１は、アドレス信号の全ビットを使用してアドレスを指定する場合には、ＣＰＵ１０から出力される前回のアドレス信号の全ビットと今回のアドレス信号の全ビットとを相互に比較する。即ち、比較部３３１は、アドレス信号の全ビットを使用してアドレスを指定する場合には、アドレス信号の全ビットを比較対象とする。ところが、アドレス信号の一部のビットを使用してアドレスを指定する場合には、比較部３３１は、アドレス信号の各ビットのうち、アドレス指定に必要な所定部分のビットのみを比較対象とする場合がある。さらに、アドレス制御回路３３０を構築した後に、アドレス指定に必要なビットが変更された場合には、ＣＰＵ１０から比較部３３１に向けて、比較ビット設定信号を出力し、比較部で比較対象とするビットを再設定する。これにより、アドレス制御回路３３０を、実際の使用に合わせて容易に適合させることができる。
【０１１７】
４  第４の実施形態
次に、本発明の第４の実施形態を図１１ないし図１３に従って説明する。本実施形態の特徴は、本発明による信号制御回路をＳＲＡＭに入力されるデータの制御に適用したことにある。なお、本実施形態では、上述した第1および第３の実施形態と同一の構成要素に同一の符号を付し、その説明を省略するものとする。
【０１１８】
図１１に示すように、データ記憶装置４００は、主処理回路としてのＣＰＵ１０と、副処理回路としてのＳＲＡＭ８０と、信号制御回路としてのデータ制御回路４３０を備えている。さらに、ＣＰＵ１０とＳＲＡＭ８０は、アドレスバス４５１により接続されている。これにより、ＣＰＵ１０からＳＲＡＭ８０に向けてアドレス信号が出力される。また、ＣＰＵ１０と比較部４３１、ＣＰＵ１０と保持部４３２、ＣＰＵ１０とメモリ制御部４３３、およびＣＰＵ１０とＳＲＡＭ８０は、データバス４５３によってそれぞれ相互に接続されている。
【０１１９】
また、データ制御回路４３０は、比較部４３１、保持部４３２およびメモリ制御部４３３を備えている。比較部４３１は、データについて比較判定処理を行う。また、保持部４３２は、ＣＰＵ１０から出力されたデータを一時的に記憶保持する。
【０１２０】
即ち、比較部４３１は、まず、保持部４３２に保持されている前回のデータと、ＣＰＵ１０から出力された今回のデータとを比較する。次に、前回のデータと今回のデータとの間で変化したビット数を求め、前回のデータと今回のデータとの間で変化したビット数が基準値以上か否かを判定する。そして、前回のデータと今回のデータとの間で変化したビット数が基準値以上のときには、今回のデータと基準ビットパターンテーブルに記録された各基準ビットパターンとを比較する。そして、今回のデータが基準ビットパターンテーブルに記録された各基準ビットパターンのいずれかと一致するとき、比較部４３１は、遅延要求信号をメモリ制御部４３３に出力する。一方、前回のデータと今回のデータとの間で変化したビット数が基準値以上でないとき、または、今回のデータが基準ビットパターンテーブルに記録された各基準ビットパターンのいずれにも一致しないとき、比較部４３１は遅延要求信号を出力しない。
【０１２１】
メモリ制御部４３３は、ＳＲＡＭ８０に向けてＣＳ信号（Chip Select 信号）、WE信号（Write Enable 信号）およびＯＥ信号（Output Enable 信号）等を出力する。
【０１２２】
ここで、ＳＲＡＭ８０に対してデータを書込むときに、比較部４３１からメモリ制御部４３３に遅延要求信号が出力された場合の動作について、図１２を参照しつつ説明する。
【０１２３】
図１２上段は、比較部４３１から遅延要求信号が出力されていないとき、即ち、通常時における、アドレス信号、ＣＳ信号、ＷＥ信号およびデータの出力タイミングを示すタイミングチャートである。また、図１２下段は、比較部４３１から遅延要求信号が出力されたときの、アドレス信号、ＣＳ信号、ＷＥ信号およびデータの出力タイミングを示すタイミングチャートである。
【０１２４】
ＳＲＡＭ８０に対してデータを書込むとき、メモリ制御部４３３から出力されたデータは、ＣＳ信号とＷＥ信号の双方がアクティブ（本実施形態ではＬＯＷ）となったときに書込まれ、ＣＳ信号の立ち上がりＳ４およびＷＥ信号の立ち上がりＳ５によって確定する。
【０１２５】
さて、通常時において、ＣＳ信号の立ち上がりＳ４およびＷＥ信号の立ち上がりＳ５は、図１２上段に示すように、ＳＲＡＭ８０がデータを書込み、確定するのに最適なタイミングとなるように設定されている。ところが、遅延要求信号が出力されると、ＣＳ信号の立ち上がりＳ４およびＷＥ信号の立ち上がりＳ５は、図１２下段に示すように、遅延時間ｔだけ遅延される。
【０１２６】
これにより、前回のデータｄ１と今回のデータｄ２との間で、ビットが一斉に変化したことにより、データ内にノイズＮが発生しても、このノイズＮが発生するタイミングと、ＣＳ信号の立ち上がりＳ４およびＷＥ信号の立ち上がりＳ５が発生するタイミングを、図１２下段に示すようにずらすことができる。従って、ＳＲＡＭ８０がデータを書込むときには、ノイズＮが既に消失しているから、ＳＲＡＭ８０は、ノイズＮの影響を受けずに、正確なデータを書込むことができる。
【０１２７】
次に、ＳＲＡＭ８０からデータを読み出すときに、比較部４３１からメモリ制御部４３３に遅延要求信号が出力された場合の動作について、図１３を参照しつつ説明する。
【０１２８】
図１３上段は、比較部４３１から遅延要求信号が出力されていないとき、即ち、通常時における、アドレス信号、ＲＥＡＤＹ信号、ＣＳ信号、ＯＥ信号およびデータの出力タイミングを示すタイミングチャートである。また、図１３下段は、比較部４３１から遅延要求信号が出力されたときの、アドレス信号、ＲＥＡＤＹ信号、ＣＳ信号、ＯＥ信号およびデータの出力タイミングを示すタイミングチャートである。
【０１２９】
ＳＲＡＭ８０からデータを読み出すとき、少なくとも、ＣＳ信号の立ち上がりＳ６およびＯＥ信号の立ち上がりＳ７が発生するまでの間、ＳＲＡＭ８０は、データをデータバス上に出力し続ける。
【０１３０】
通常時において、ＣＳ信号の立ち上がりＳ６またはＯＥ信号の立ち上がりＳ７は、図１３上段に示すように、ＳＲＡＭ８０からデータを読み出すのに最適なタイミングとなるように設定されている。ところが、遅延要求信号が出力されると、ＣＳ信号の立ち上がりＳ６およびＯＥ信号の立ち上がりＳ７は、図１３下段に示すように、遅延時間ｔだけ遅延される。
【０１３１】
これにより、前回のデータｄ１と今回のデータｄ２との間で、ビットが一斉に変化したことにより、データ内にノイズＮが発生しても、このノイズＮが消失して、データが安定した状態になるまで、ＣＳ信号の立ち上がりＳ６およびＯＥ信号の立ち上がりＳ７を遅らせることができる。従って、ノイズＮが完全に消失した後に、ＳＲＡＭ８０からデータを読み出すことができ、ノイズＮによって、誤ったデータがＳＲＡＭ８０から読み出されるのを防止できる。
【０１３２】
また、本実施形態によるデータ制御回路４３０の比較部４３１は、制御バス４５２により、ＣＰＵ１０と接続されている。これにより、比較部４３１は、第１および第３の実施形態とほぼ同様に、ＣＰＵ１０から出力される基準値設定信号、基準ビットパターン設定信号および比較ビット設定信号を受け取る。これにより、実際の使用や変更に合うように、基準値、基準ビットパターンおよび比較部４３１で比較対象とするデータのビットを容易に変更することができる。
【０１３３】
なお、前記各実施形態では、記憶回路としてＤＲＡＭ、ＳＲＡＭを例に挙げたが、本発明はこれに限らず、ＲＯＭ等の他の記憶回路を用いた場合にも適用できる。さらに、前記各実施形態では、副処理回路として記憶回路を用いた場合を例に挙げたが、本発明はこれに限らず、副処理回路として入出力回路等を用いた場合にも適用できる。
【０１３４】
また、前記第１ないし第３の実施形態では、アドレス制御回路によりアドレス信号の出力タイミングを制御する場合を例に挙げ、前記第４の実施形態では、データ制御回路によりデータの入出力タイミングを制御する場合を例に挙げたが、データ記憶装置にアドレス制御回路とデータ制御回路を同時に設け、アドレス信号の出力タイミングと、データの入出力タイミングを同時に制御する構成としてもよい。
【０１３５】
また、前記各実施形態では、アドレス制御回路３０（３３０）またはデータ制御回路４３０をＡＳＩＣとして実現した場合を例に挙げて述べたが、本発明はこれに限らず、アドレス制御回路またはデータ制御回路をＣＰＵ１０内に設けてもよい。具体的には、アドレス制御回路またはデータ制御回路をＣＰＵ１０に専用回路として組み込んでもよい。また、アドレス制御回路またはデータ制御回路をソフトウエアによって実現してもよい。
【０１３６】
また、前記第１の実施形態では、ページモード方式のＤＲＡＭ２０に対してアドレス指定をアドレス制御回路３０を例に挙げたが、本発明はこれに限らず、通常モード方式またはニブルモード方式のＤＲＡＭに対してアドレス指定をするアドレス制御回路にも適用することができる。さらに、前記各実施形態におけるアドレス信号のビット数およびデータ信号のビット数は上述した値に限定されない。
【０１３７】
また、前記各実施形態では、比較部３１（３３１，４３１）での比較判定処理においては、前回のバス信号と今回のバス信号を比較し、(1)両者の間で異なるビット数が基準値以上であるか否かと、(2)今回のバス信号の変化が基準ビットパターンテーブルＰに記録されたいずれかの基準ビットパターンと一致するか否かを判定し、上記条件(1)および(2)を２つとも満たしたときに、遅延要求信号を比較部３１（３３１，４３１）から出力するようにした。しかしながら、これに限るものではなく、いずれか一方の条件（(1)または(2)）を満たす場合に遅延要求信号を出力するようにしてもよい。
【０１３８】
例えば、図２のフローチャートで説明すると、(1)の条件のみを判定する場合は、ステップ６、７、１２および１３の処理を行わないようにする。これにより、基準ビットパターンとの比較を行う場合と比べて、遅延要求信号を出力する回数は増えるが、上述したような誤ったアドレスへの書込み等の誤動作を防止できる。また、(2)の条件のみを判定する場合は、ステップ４，５，１０および１１の処理を行わないようにする。この場合、実装上、基準ビットパターンテーブルＰの容量と、比較判定処理に要する時間の制限を考慮しなければならない。そのため、異なるビット数が基準値以上であるか否かを判定する場合と比べて、比較するビットパターンが制限される分、限られたバス信号の変化にしか対応できないが、所定のバス信号の変化に対してのみ、遅延要求信号を出力することができる。
【０１３９】
また、前記第３の実施形態においては、ＣＳ信号等の制御信号をアクティブにするタイミングを遅延させたが、それに限らず、各信号のアクティブとなっている期間を長くすることで遅延させてもよい。
【０１４０】
例えば、第３の実施形態のＳＲＡＭ８０へのデータの書込みにおいては、ＣＳ信号やＷＥ信号といった各制御信号のアクティブ期間を固定にすると、アドレス信号にノイズＮが発生している間はアドレス信号は一定にならず、所定のセットアップ時間がデータの書込み（ＷＥ信号の立ち上がり）までに確保されない場合がある。そこで、各制御信号のアクティブ期間を長くすれば、セットアップ時間を確保することができ、誤ったアドレスにデータが書込まれるのを防止することができる。
【０１４１】
【発明の効果】
以上詳述したとおり、請求項１の発明によれば、主処理回路と副処理回路との間で入出力された前回のバス信号を構成する各ビットのうち少なくとも所定部分のビットと、主処理回路と副処理回路との間で入出力される今回のバス信号を構成する各ビットのうち前記所定部分のビットに対応するビットとを相互に比較し、この比較の結果、変化したビットの数が基準値以上で、且つ変化後のビットのビットパターンが基準ビットパターンであるときには、副処理回路に向けて出力する制御信号を遅延させる構成としたから、前回のバス信号が今回のバス信号に変化するときに発生するノイズが消失した後に、制御信号を副処理回路に出力することができる。これにより、副処理回路は、前記ノイズが消失した後に、バス信号の入出力を行うことができる。従って、前記ノイズの発生により誤ったバス信号が副処理回路に入力され、または、誤ったバス信号が副処理回路から出力されるのを防止することができる。これにより、主処理回路と副処理回路との間において、高速かつ正確なバス信号の入出力を実現することができる。また、前回のバス信号から今回のバス信号に変化するときに発生するノイズを避けるために、制御信号を確実に遅延させることができる。これにより、副処理回路は、前記ノイズを避けてバス信号の入出力を行うことができる。
【０１４２】
【０１４３】
【０１４４】
【０１４５】
請求項２の発明によれば、外部から入力される基準ビットパターン設定信号に基づいて、基準ビットパターンを変更する構成としたから、信号制御回路を構築した後であっても、実際の使用に合わせて、基準ビットパターンを容易に変更できる。
【０１４６】
【０１４７】
請求項３の発明によれば、外部から入力される遅延時間設定信号に基づいて、制御信号の遅延時間を変更する構成としたから、信号制御回路を構築した後であっても、実際の使用に合わせて、基準値を容易に変更できる。従って、信号制御回路を様々な主処理回路および副処理回路と共に使用することができる。
【０１４８】
請求項４の発明は、外部から入力されるビット設定信号に基づいて、前回のバス信号を構成する各ビットのうち、今回のバス信号と比較対象となるビット部分を変更すると共に、今回のバス信号を構成する各ビットのうち、前回のバス信号と比較対象となるビット部分を変更する構成としたから、信号制御回路を構築した後であっても、各バス信号を構成する各ビットのうち、比較対象となるビットのビットパターンを、実際の使用に合わせて設定することができる。これにより、信号制御回路を様々な主処理回路および副処理回路と共に使用することができる。
【０１４９】
請求項５の発明によれば、信号処理回路からダイナミックＲＡＭに向けて連続して出力される２つのアドレス信号（行アドレスおよび／または列アドレス）を構成する各ビットのうち、所定部分をそれぞれ相互に比較し、各アドレス信号間で、変化したビットの数が基準値以上で、且つ変化後のビットのビットパターンが基準ビットパターンであるときには、信号制御回路からダイナミックＲＡＭに向けて出力する制御信号を遅延させる構成としたから、信号処理回路からダイナミックＲＡＭに向けて連続して出力される２つのアドレス信号間においてビットが一斉に変化し、アドレス信号中にノイズが発生しても、そのノイズが消失した後に、制御信号をダイナミックＲＡＭに向けて出力することができる。これにより、ダイナミックＲＡＭは、ノイズが消失した後に、アドレス信号、即ち、行アドレスおよび列アドレスを読み込むことができる。従って、前記ノイズの発生により、ダイナミックＲＡＭにおいて誤ったアドレスが指定されるのを防止することができる。
【０１５０】
また、主処理回路から出力された今回のアドレス信号に含まれる行アドレスを出力した後に続けて当該今回のアドレス信号に含まれる列アドレスを出力するときには、今回のアドレス信号に含まれる行アドレスと列アドレスの少なくとも所定部分の各ビットをそれぞれ比較し、一方、主処理回路から出力された前回のアドレス信号に含まれる列アドレスを出力した後に続けて主処理回路から出力された今回のアドレス信号に含まれる列アドレスを出力するときには、前回のアドレス信号に含まれる列アドレスと今回のアドレス信号に含まれる列アドレスとの少なくとも所定部分の各ビットをそれぞれ比較する構成としたから、行アドレスと列アドレスの出力順序に応じて、制御信号の遅延を確実に実行することができる。
【図面の簡単な説明】
【図１】  本発明の第１の実施形態によるデータ記憶装置を示すブロック図である。
【図２】  本発明の第１の実施形態による比較判定処理を示すフローチャートである。
【図３】  本発明の第１の実施形態による基準ビットパターンテーブルを示す説明図である。
【図４】  本発明の第１の実施形態において、ＲＡＳ信号、ＣＡＳ信号、アドレス等の出力タイミングを示すタイミングチャートである。
【図５】  本発明の第１の実施形態において、ＣＡＳ信号の立ち下げタイミングを遅延させた状態を示すタイミングチャートである。
【図６】  本発明の第１の実施形態において、ＣＡＳ信号の立ち下げタイミングを遅延させた状態を示すタイミングチャートである。
【図７】  本発明の第２の実施形態によるデータ記憶装置を示すブロック図である。
【図８】  本発明の第３の実施形態によるデータ記憶装置を示すブロック図である。
【図９】  本発明の第３の実施形態において、データ書込み時の、アドレス信号、ＣＳ信号、ＷＥ信号およびデータの出力タイミングを示すタイミングチャートである。
【図１０】  本発明の第３の実施形態において、データ読出し時の、アドレス信号、ＣＳ信号、ＷＥ信号およびデータの出力タイミングを示すタイミングチャートである。
【図１１】  本発明の第４の実施形態によるデータ記憶装置を示すブロック図である。
【図１２】  本発明の第４の実施形態において、データ書込み時の、アドレス信号、ＣＳ信号、ＷＥ信号およびデータの出力タイミングを示すタイミングチャートである。
【図１３】  本発明の第４の実施形態において、データ読出し時の、アドレス信号、ＣＳ信号、ＷＥ信号およびデータの出力タイミングを示すタイミングチャートである。
【符号の説明】
１０ ＣＰＵ
２０ ダイナミックＲＡＭ
３０，３３０ アドレス制御回路
３１，３３１，４３１ 比較部
３２，３３２，４３２ 保持部
３３，３３３，４３３ メモリ制御部
８０ スタティックＲＡＭ
１００，２００，３００，４００ メモリ記憶装置
４３０ データ制御回路
【図１】
0004206508.tif 000002
【図２】
0004206508.tif 000003
【図３】
0004206508.tif 000004
【図４】
0004206508.tif 000005
【図５】
0004206508.tif 000006
【図６】
0004206508.tif 000007
【図７】
0004206508.tif 000008
【図８】
0004206508.tif 000009
【図９】
0004206508.tif 000010
【図１０】
0004206508.tif 000011
【図１１】
0004206508.tif 000012
【図１２】
0004206508.tif 000013
【図１３】
0004206508.tif 000014