| 【発明の名称】 |
メモリ回路 |
| 【発明者】 |
【氏名】旭 竜一
【氏名】田中 久喜
|
| 【要約】 |
【課題】偶数アドレスブロック201と奇数アドレスブロック202に分かれ、連続する2ワードを並列に読み出すことが可能なメモリにおいて、2n+1、2n+2の組み合わせで2n+1がメモリの最大アドレスの場合も読み出しが可能なメモリ回路を提供する。
【解決手段】メモリの最大アドレス+1のデータを格納するレジスタ209を設け、偶数アドレスブロック201の出力とレジスタ209の出力のどちらかを選択する出力セレクタ210を設ける。 |
【特許請求の範囲】
【請求項1】 偶数アドレスまたは奇数アドレスのどちらか一方が割り当てられている第1のメモリアレイと、前記第1のメモリアレイと異なるアドレスが割り当てられている第2のメモリアレイとを有し、前記第1及び第2のメモリアレイのそれぞれがロウ方向に2ずつ増加するようにアドレスが配列されたメモリ回路において、前記第1のメモリアレイのワードラインを1行シフトすることができる第1のシフト回路と、前記第1のメモリアレイのカラム選択信号を1列シフトすることができる第2のシフト回路と、前記第1のメモリアレイの最大アドレスより1大きいアドレスが割り当てられているレジスタとを備え、前記第1のメモリアレイ及び前記第2のメモリアレイから連続した2ワードを読み出す際、ワードラインの最上位ビット以外のワードラインが選択されている時は前記第1のシフト回路はワードラインを1行シフトし、ワードラインの最上位ビットが選択され且つカラム選択信号の最上位ビット以外が選択されている時は前記第2のシフト回路はカラム選択信号を1列シフトすると共にワードラインの最下位ビットを選択し、ワードラインの最上位ビットが選択され且つカラム選択信号の最上位ビットが選択されている時は前記第1のメモリアレイの出力として前記レジスタを選択する機能を備えたことを特徴とするメモリセル回路。 【請求項2】 偶数アドレスまたは奇数アドレスのどちらか一方が割り当てられている第1のメモリアレイと、前記第1のメモリアレイと異なるアドレスが割り当てられている第2のメモリアレイとを有し、前記第1及び第2のメモリアレイのそれぞれがカラム方向に2ずつ増加するようにアドレスが配列されたメモリ回路において、前記第1のメモリアレイのワードラインを1行シフトすることができる第1のシフト回路と、前記第1のメモリアレイのカラム選択信号を1列シフトすることができる第2のシフト回路と、前記第1のメモリアレイの最大アドレスより1大きいアドレスが割り当てられているレジスタとを備え、前記第1のメモリアレイ及び前記第2のメモリアレイから連続した2ワードを読み出す際、カラム選択信号の最上位ビット以外のカラム選択信号が選択されている時は前記第2のシフト回路はカラム選択信号を1列シフトし、カラム選択信号の最上位ビットが選択され且つワードラインの最上位ビット以外が選択されている時は前記第1のシフト回路はワードラインを1行シフトすると共にカラム選択信号の最下位ビットを選択し、カラム選択信号の最上位ビットが選択され且つワードラインの最上位ビットが選択されている時は前記第1のメモリアレイの出力として前記レジスタを選択する機能を備えたことを特徴とするメモリセル回路。 【請求項3】 偶数アドレスが割り当てられている第1のメモリアレイと、奇数アドレスが割り当てられている第2のメモリアレイとを有し、前記第1及び第2のメモリアレイのそれぞれがロウ方向に2ずつ増加するようにアドレスが配列されたメモリ回路において、前記第1のメモリアレイのワードラインを1行シフトするシフト回路と、前記第1のメモリアレイがメモリ容量に必要な分より1行多いメモリアレイを有し、前記第1のメモリアレイのワードラインを前記シフト回路によりシフトし、前記第1のメモリアレイからアドレス2n+2(nは自然数)のデータを、また、第2のメモリアレイからアドレス2n+1のデータとを同時に読み出す機能を備えたメモリ回路。
|
【発明の詳細な説明】【0001】 【発明の属する技術分野】本発明は高速処理を要するプロセッサのメモリ回路に関するものである。 【0002】 【従来の技術】以下従来のメモリ回路について説明する。 【0003】まず、図面の説明を行う。図6は従来のメモリ回路であり、101はメモリアレイで偶数アドレスが割り当てられている(以下、101を偶数アドレスブロックと表す。)。102はメモリアレイで奇数アドレスが割り当てられている(以下、102を奇数アドレスブロックと表す。)。ここでは、メモリは1ワード16ビットで容量は64ワードとして説明する。A1〜A5はアドレス入力で、A0の代わりに偶数アドレスブロックのイネーブル信号CSEと奇数アドレスのイネーブル信号CSOが入力される。103はロウデコーダで、偶数アドレスブロック101のワードラインWE0〜WE7と奇数アドレスブロック102のワードラインWO0〜WO7を出力する。104はカラムデコーダで、偶数アドレスブロック101のカラム選択信号CE0〜CE3と奇数アドレスブロック102のカラム選択信号CO0〜CO3を出力する。105はカラムセレクタで16x4本のビットラインBE0 0〜BE15 3を入力し、16本の出力BE0〜BE15を出力する。106はカラムセレクタで16x4本のビットラインBO0 0〜BO15 3を入力し、16本の出力BO0〜BO15を出力する。107は出力ラッチでBE0〜BE15を入力としDE0〜DE15を出力する。108は出力ラッチでBO0〜BO15を入力としDO0〜DO15を出力する。111〜125は論理ゲートである。 【0004】図6のアドレス配置図は図7のようになっている。 【0005】以下、図6、図7を参照しながら従来のメモリ回路の動作を説明する。 【0006】まず、メモリから任意の1ワード、例としてアドレス“26”を読み出す場合を例に上げて説明する。“26”を読み出す場合、アドレスA1〜A3がロウデコーダ103でデコードされWE3とWO3が“1”となる。また、アドレスA4〜A5がカラムデコーダ104でデコードされCE2とCO2が“1”となるためカラムセレクタ105でビットラインBE0 2〜BE15 2が選択され、カラムセレクタ106でBO0 2〜BO15 2が選択される。“26”は偶数アドレスのためCSEが“1”となり、出力ラッチ107が動作し、DE0〜DE15からデータが出力される。CSOは“0”となり出力ラッチ108は動作しない。 【0007】次に、メモリから連続した2ワードを読み出す場合を説明する。ここでは、偶数、奇数の順に連続した2ワードの読み出しを例に上げる。偶数、奇数の順に連続した2ワードの読み出しでは、偶数アドレスを2nとすると、それに続く奇数アドレス2n+1の組み合わせになる。例としてアドレス“26”“27”について説明する。この時、ロウデコーダ103によってWE3、WO3が“1”になる。カラムデコーダ104でCE2とCO2が“1”になり、カラムセレクタ105でビットラインBE0 2〜BE15 2が選択され、カラムセレクタ106でBO0 2〜BO15 2が選択される。このように偶数アドレスブロック101ではアドレス“26”が、奇数アドレスブロック102ではアドレス“27”が選択される。さらに2ワード読み出しのため、CSE、CSOが同時に“1”となり、出力ラッチ107,108が両方動作し、DE0〜DE15から偶数側データが、DO0〜DO15から奇数側データが出力される。 【0008】次に、メモリから連続した2ワードのうち、奇数、偶数の順に連続した2ワードの読み出しについて説明する。奇数アドレス2n+1と偶数アドレス2n+2を読み出す場合、第1例としてアドレス“27”“28”を読み出す場合は、まずワードラインとしてWE3とWO3が“1”になり、カラム選択信号としてCE2とCO2が“1”になる。ここでSFTを“1”とする。すると奇数アドレスブロック102側は通常の2ワード読み出しと同様にアドレス“27”が読み出されるが偶数アドレスブロック101側はワードラインがシフトしてWX7が“1”となる。このとき論理ゲート111の出力が“1”になるので、カラム選択信号はそのままCX2が“1”となり、アドレス“28”が読み出される。次に第2例として“2F”“30”を読み出す場合は、ワードラインとしてWE7とWO7が“1”となり、カラム選択信号としてCE2とCO2が“1”となる。奇数アドレスブロック102側はそのまま“2F”が読み出されるが偶数アドレスブロック101側はWE7が0ビット目に戻りWX0が“1”となり、さらに論理ゲート210の出力が“1”となりCE2もシフトされCX3が“1”となる。このようにしてアドレス“2F”“30”を読み出すことができる。 【0009】以上の説明からも明らかなように、従来のメモリ回路では、1ワード、奇数、偶数と連続した2ワード、偶数、奇数と連続した2ワードの読み出しが可能であった。 【0010】 【発明が解決しようとする課題】しかしながら、上記従来の構成ではワードラインとカラム選択信号が共に最上位ビットを指している場合、すなわちアドレス2n+1がメモリブロックの最大アドレスの場合は、アドレス2n+2がメモリブロック内に存在しないためシフト回路の追加のみでは読み出すことができない。 【0011】本発明は上記課題を解決するものであり、ワードラインとカラム選択信号が共に最上位ビットを指している場合でも読み出し可能なメモリ回路を提供することを目的とする。 【0012】 【課題を解決するための手段】この目的を達成するために本発明の請求項1記載のメモリ回路は、第1のメモリアレイのワードラインを1行シフトすることができる第1のシフト回路と、第1のメモリアレイのカラム選択信号を1列シフトすることができる第2のシフト回路と、第1のメモリアレイの最大アドレスより1大きいアドレスが割り当てられているレジスタとを備え、第1のメモリアレイ及び第2のメモリアレイから連続した2ワードを読み出す際、ワードラインの最上位ビット以外のワードラインが選択されている時は第1のシフト回路はワードラインを1行シフトし、ワードラインの最上位ビットが選択され且つカラム選択信号の最上位ビット以外が選択されている時は第2のシフト回路はカラム選択信号を1列シフトすると共にワードラインの最下位ビットを選択し、ワードラインの最上位ビットが選択され且つカラム選択信号の最上位ビットが選択されている時は第1のメモリアレイの出力としてレジスタを選択する機能を備えたことを特徴とするものである。 【0013】この構成により、アドレス2n+1がメモリの最大アドレスも含めて2n+1,2n+2の2ワードを同時に読み出すことを可能にしている。 【0014】また、本発明の請求項2の発明は、第1のメモリアレイのワードラインを1行シフトすることができる第1のシフト回路と、第1のメモリアレイのカラム選択信号を1列シフトすることができる第2のシフト回路と、第1のメモリアレイの最大アドレスより1大きいアドレスが割り当てられているレジスタとを備え、第1のメモリアレイ及び第2のメモリアレイから連続した2ワードを読み出す際、カラム選択信号の最上位ビット以外のカラム選択信号が選択されている時は第2のシフト回路はカラム選択信号を1列シフトし、カラム選択信号の最上位ビットが選択され且つワードラインの最上位ビット以外が選択されている時は第1のシフト回路はワードラインを1行シフトすると共にカラム選択信号の最下位ビットを選択し、カラム選択信号の最上位ビットが選択され且つワードラインの最上位ビットが選択されている時は第1のメモリアレイの出力としてレジスタを選択する機能を備えたことを特徴とするものであり、請求項1と同様の作用を有する。 【0015】また、本発明の請求項3の発明は、偶数アドレスが割り当てられている第1のメモリアレイと、奇数アドレスが割り当てられている第2のメモリアレイとを有し、前記第1及び第2のメモリアレイのそれぞれがロウ方向に2ずつ増加するようにアドレスが配列されたメモリ回路において、第1のメモリアレイのワードラインを1行シフトするシフト回路と、第1のメモリアレイがメモリ容量に必要な分より1行多いメモリアレイを有し、第1のメモリアレイのワードラインをシフト回路によりシフトし、第1のメモリアレイからアドレス2n+2(nは自然数)のデータを、また、第2のメモリアレイからアドレス2n+1のデータとを同時に読み出す機能を備えたものであり、請求項1と同様の作用を有する。 【0016】 【発明の実施の形態】以下本発明の実施の形態について、図面を参照しながら説明する。 【0017】(実施の形態1)本発明の実施の形態1について説明する。 【0018】まず、図面の説明を行う。図1は本発明の実施の形態1のメモリ回路であり、201はメモリアレイで偶数アドレスが割り当てられている(以下、201を偶数アドレスブロックと表す。)。202はメモリアレイで奇数アドレスが割り当てられている(以下、202を奇数アドレスブロックと表す。)。メモリは1ワード16ビットで容量は64ワードとする。A1〜A5はアドレス入力で、A0の代わりに偶数アドレスブロックのイネーブル信号CSEと奇数アドレスブロック202のイネーブル信号CSOが入力される。203はロウデコーダで、偶数アドレスブロック201のワードラインWE0〜WE7と奇数アドレスブロック202のワードラインWO0〜WO7を出力する。204はカラムデコーダで、偶数アドレスブロック201のカラム選択信号CE0〜CE3と奇数アドレスブロック202のカラム選択信号CO0〜CO3を出力する。205はカラムセレクタで16x4本のビットラインBE00〜BE15 3を入力し、16本の出力BE0〜BE15を出力する。209は16ビットの読み書き可能なレジスタであるが、書き込み経路は省略している。210は出力セレクタである。206はカラムセレクタで16x4本のビットラインBO0 0〜BO15 3を入力し、16本の出力BO0〜BO15を出力する。207は出力ラッチでBE0〜BE15を入力としDE0〜DE15を出力する。208は出力ラッチでBO0〜BO15を入力としDO0〜DO15を出力する。211〜226は論理ゲートである。 【0019】アドレス配置図は図7のアドレス配置図を従来例と共通に使用する。 【0020】以下、図1、図7を参照しながらその動作を説明する。まず、メモリから1ワードを読み出す場合、および偶数アドレス2nと奇数アドレス2n+1の2ワードを連続して読み出す場合は切り替え信号SFTを“0”にする。このとき偶数アドレス側のワードラインおよびカラム選択信号はシフトが行われずWX0〜WX7とWE0〜WE7、CX0〜CX3とCE0〜CE3のそれぞれのビットが同じ論理になり、従来例と同様の動作になる。 【0021】次に奇数アドレス2n+1と偶数アドレス2n+2を連続して読み出す場合、第1例として“27”“28”を読み出す場合は、まずワードラインとしてWE3とWO3が“1”になり、カラム選択信号としてCE2とCO2が“1”になる。ここでSFTを“1”とする。すると奇数アドレス側は通常の2ワード読み出しと同様にアドレス“27”が読み出されるが偶数アドレス側はワードラインがシフトしてWX7が“1”となる。カラム選択信号はそのままCX2が“1”となる。このとき出力選択信号REGSELは“0”であり出力セレクタでカラムセレクタ側が選択されてアドレス“28”が読み出される。 【0022】次に、奇数アドレス2n+1と偶数アドレス2n+2を連続して読み出す場合の第2例として“2F”“30”を用いて説明する。“2F”“30”を連続して読み出す場合、ワードラインとしてWE7とWO7が“1”となり、カラム選択信号としてCE2とCO2が“1”となる。奇数アドレス側はそのまま“2F”が読み出されるが偶数アドレス側はWE7がシフトされWX0が“1”となり、さらにCE2もシフトされCX3が“1”となる。このとき出力選択信号REGSELは“0”であり出力セレクタでカラムセレクタ側が選択されてアドレス“30”が読み出される。 【0023】次に第3例としてアドレス“3F”“40”を読み出す場合であるが、“40”はメモリ容量の外になるため、あらかじめレジスタ209に格納しておく。格納方法は特別なものではなく説明は省略する。ワードラインとしてWE7とWO7が“1”となり、カラム選択信号としてCE3とCO3が“1”となる。奇数アドレス側はそのまま“3F”が読み出されるが、偶数アドレス側は出力選択信号REGSELが“1”となり、出力セレクタでレジスタ側が選択されてアドレス“40”のデータが読み出される。このようにして奇数アドレスがメモリの最終アドレスのとき、それに続く偶数アドレスも同時に読み出すことができる。 【0024】以上の説明からも明らかなように、本実施の形態では、連続する2ワードがどのようなアドレスであっても、並列に読み出すことができる。 【0025】(実施の形態2)本発明の実施の形態2について説明する。 【0026】まず、図面の説明を行う。図2は本発明の実施の形態2のメモリ回路であり、301はメモリアレイで偶数アドレスが割り当てられている(以下、301を偶数アドレスブロックと表す。)。302はメモリアレイで奇数アドレスが割り当てられている(以下、302を奇数アドレスブロックと表す。)。メモリは1ワード16ビットで容量は64ワードとする。A1〜A5はアドレス入力で、A0の代わりに偶数アドレスブロックのイネーブル信号CSEと奇数アドレスのイネーブル信号CSOが入力される。303はロウデコーダで、偶数アドレスブロック301のワードラインWE0〜WE7と奇数アドレスブロック302のワードラインWO0〜WO7を出力する。304はカラムデコーダで、偶数アドレスブロック301のカラム選択信号CE0〜CE3と奇数アドレスブロック302のカラム選択信号CO0〜CO3を出力する。305はカラムセレクタで16x4本のビットラインBE0 0〜BE15 3を入力し、16本の出力BE0〜BE15を出力する。309は16ビットの読み書き可能なレジスタであるが、書き込み経路は省略している。310は出力セレクタである。306はカラムセレクタで16x4本のビットラインBO0 0〜BO15 3を入力し、16本の出力BO0〜BO15を出力する。307は出力ラッチでBE0〜BE15を入力としDE0〜DE15を出力する。308は出力ラッチでBO0〜BO15を入力としDO0〜DO15を出力する。311〜326は論理ゲートである。 【0027】図2のアドレス配置は図3のようになる。 【0028】以下、図2、図3を参照しながらその動作を説明する。まず、メモリから1ワードを読み出す場合、および、偶数アドレス2nと奇数アドレス2n+1の2ワードを連続して読み出す場合は切り替え信号SFTを“0”にする。このとき偶数アドレスブロック301側のワードラインおよびカラム選択信号はシフトが行われずWX0〜WX7とWE0〜WE7、CX0〜CX3とCE0〜CE3のそれぞれのビットが同じ論理になり、従来例と同様の動作になる。 【0029】次に奇数アドレス2n+1と偶数アドレス2n+2を連続して読み出す場合、第1例として“1D”“1E”を読み出す場合は、まずワードラインとしてWE3とWO3が“1”になり、カラム選択信号としてCE2とCO2が“1“になる。ここでSFTを“1”とする。すると奇数アドレス側は通常の2ワード読み出しと同様にアドレス“1D”が読み出されるが偶数アドレス側はカラム選択信号がシフトしてCX3が“1”となる。ワードラインはそのままWX3が“1”となる。このとき出力選択信号REGSELは“0”であり出力セレクタでカラムセレクタ側が選択されてアドレス“1E”が読み出される。 【0030】次に、奇数アドレス2n+1と偶数アドレス2n+2を連続して読み出す場合の第2例として“1F”“20”を読み出す場合は、ワードラインとしてWE3とWO3が“1”となり、カラム選択信号としてCE3とCO3が“1”となる。奇数アドレスブロック302側はそのまま“1F”が読み出されるが偶数アドレス側はCE3がシフトされCX0が“1”となり、さらにWE3もシフトされWX4が“1”となる。このとき出力選択信号REGSELは“0”であり出力セレクタでカラムセレクタ側が選択されてアドレス“20”が読み出される。 【0031】次に、第3例としてアドレス“3F”“40”を読み出す場合であるが、“40”はメモリ容量の外になるため、あらかじめレジスタ309に格納しておく。格納方法は特別なものではなく説明は省略する。ワードラインとしてWE7とWO7が“1”となり、カラム選択信号としてCE3とCO3が“1”となる。奇数アドレス側はそのまま“3F”が読み出されるが、偶数アドレスブロック301側は出力選択信号REGSELが“1”となり、出力セレクタでレジスタ側が選択されてアドレス“40”のデータが読み出される。このようにして奇数アドレスがメモリの最終アドレスのとき、それに続く偶数アドレスも同時に読み出すことができる。 【0032】以上の説明からも明らかなように、本実施の形態では、連続する2ワードがどのようなアドレスであっても、並列に読み出すことができる。 【0033】(実施の形態3)本発明の実施の形態3について説明する。 【0034】まず、図面の説明を行う。図4は本発明の実施の形態3のROM回路であり、401はメモリアレイで偶数アドレスが割り当てられている(以下、401を偶数アドレスブロックと表す。)。402はメモリアレイで奇数アドレスが割り当てられている(以下、402を奇数アドレスブロックと表す。)。メモリは1ワード16ビットで容量は64ワードとする。A1〜A5はアドレス入力で、A0の代わりに偶数アドレスブロックのイネーブル信号CSEと奇数アドレスのイネーブル信号CSOが入力される。403はロウデコーダで、偶数アドレスブロック401のワードラインWE0〜WE7と奇数アドレスブロック402のワードラインWO0〜WO7を出力する。404はカラムデコーダで、偶数アドレスブロック401のカラム選択信号CE0〜CE3と奇数アドレスブロック402のカラム選択信号CO0〜CO3を出力する。405はカラムセレクタで16x4本のビットラインBE0 0〜BE15 3を入力し、16本の出力BE0〜BE15を出力する。406はカラムセレクタで16x4本のビットラインBO0 0〜BO15 3を入力し、16本の出力BO0〜BO15を出力する。407は出力ラッチでBE0〜BE15を入力としDE0〜DE15を出力する。408は出力ラッチでBO0〜BO15を入力としDO0〜DO15を出力する。411〜420は論理ゲートである。 【0035】図5はアドレス配置図であり、偶数アドレスブロック401は従来のメモリ回路の容量より1行多いメモリアレイを持つ。アドレスが重複するメモリセルには同一のデータが記録されている。 【0036】以下、図4、図5を参照しながらその動作を説明する。まず、メモリから1ワードを読み出す場合、および偶数アドレス2nと奇数アドレス2n+1の2ワードを読み出す場合は切り替え信号SFTを“0”にする。このとき偶数アドレスブロック401側のワードラインおよびカラム選択信号はシフトが行われずWX0〜WX8とWE0〜WE7のビットが同じ論理になり、従来例と同様の動作になる。 【0037】次に奇数アドレス2n+1と偶数アドレス2n+2を読み出す場合、第1例として“27”“28”を読み出す場合は、まずワードラインとしてWE3とWO3が“1”になり、カラム選択信号としてCE2とCO2が“1”になる。ここでSFTを“1”とする。すると奇数アドレスブロック402側は通常の2ワード読み出しと同様にアドレス“27”が読み出されるが偶数アドレスブロック401側はワードラインがシフトしてWX7が“1”となる。カラム選択信号はそのままCE2が“1”となり、アドレス“28”が読み出される。 【0038】次に第2例として“2F”“30”を読み出す場合は、ワードラインとしてWE7とWO7が“1”となり、カラム選択信号としてCE2とCO2が“1”となる。奇数アドレス側はそのまま“2F”が読み出されるが偶数アドレス側はWE7がシフトされWX8が“1”となりアドレス“30”が読み出し可能となる。さらに第3例として“3F”“40”を読み出す場合ワードラインとしてWE7とWO7が“1”となり、カラム選択信号としてCE3とCO3が“1”となる。奇数アドレス側はそのまま“3F”が読み出されるが偶数アドレスブロック401側はWE7がシフトされWX8が“1”となりアドレス“40”が読み出し可能となる。 【0039】以上の説明からも明らかなように、本実施の形態では、連続する2ワードがどのようなアドレスであっても、並列に読み出すことができる。 【0040】なお、上記で説明した実施の形態1〜3については、偶数アドレス、奇数アドレスの順にアドレスが配置されているため、偶数アドレスブロック側にシフト回路を設けているが、奇数アドレス、偶数アドレスの順にアドレスが配置されている場合は、奇数アドレスブロック側にシフト回路を設けることに同様の効果が得られるのは言うまでもない。 【0041】 【発明の効果】以上のように本発明のメモリ回路は、アドレスが連続する2ワード同時読み出しにおいて、奇数アドレス、偶数アドレスの順で読み出す場合にも奇数アドレスがメモリブロックの最大アドレスも含めてどのような場合でも読み出しを可能にすることができる。
|
| 【出願人】 |
【識別番号】000005821 【氏名又は名称】松下電器産業株式会社
|
| 【出願日】 |
平成12年8月4日(2000.8.4) |
| 【代理人】 |
【識別番号】100097445 【弁理士】 【氏名又は名称】岩橋 文雄 (外2名)
|
| 【公開番号】 |
特開2002−56685(P2002−56685A) |
| 【公開日】 |
平成14年2月22日(2002.2.22) |
| 【出願番号】 |
特願2000−237079(P2000−237079) |
|