(57)【要約】【課題】  本発明は、チップサイズの増加を抑制しつつ高速なシリアル入出力が可能なデータ幅圧縮機能を有する半導体記憶装置を実現する。【解決手段】  本発明の半導体記憶装置は、隣接するデータバス線の選択を行う２入力−１出力の選択回路で構成されるマルチプレクサ回路２２、読み出したデータの並列−直列変換を行うシフトレジスタ２４、シフトレジスタ２４のシリアル出力の選択を行うマルチプレクサ回路２６、および出力タイミングの調整を行う出力レジスタ２９を有する。シフトレジスタ２４の前後にマルチプレクサ回路２２および２６を分散配置することで、データバス線を引き回すことなく並列−直列変換機能と入出力のデータ幅圧縮機能を実現する。【選択図】  図２
2005182939.tif 000002
【特許請求の範囲】
【請求項１】
データを記憶するメモリセルが行および列方向に繰り返し配置され、複数の領域に分割されたセルアレイと、
前記セルアレイの１つの領域から複数のデータを読み出して増幅し、ＩＯデータとして出力データバス線へ出力するアクセス手段と、
前記アクセス手段からの前記ＩＯデータを受信し、少なくとも２つのデータを変換して１つのシリアルデータとして出力する複数の並列−直列変換手段と、
互いに異なる前記並列−直列変換手段からの出力が接続された２つの入力を有し、出力データ幅および読み出しアドレスに基づいて、前記２つの入力のうち一方を選択して前記シリアルデータを出力する複数の選択手段と、
前記並列−直列変換手段の出力または前記選択手段の出力が入力に接続され、受信したデータを保持するとともにそれぞれに出力タイミングを調整する複数の出力調整手段と、
前記複数の前記並列−直列変換手段、前記複数の前記選択手段、および前記複数の前記出力調整手段から構成され、入力に前記出力データバス線が接続され、出力に前記出力調整手段からのデータを出力するシリアル出力データバス線が接続されている転送手段を備え、
前記転送手段は、読み出しデータの並列−直列変換機能および出力データ幅の変更機能を有することを特徴とする半導体記憶装置。
【請求項２】
前記転送手段は、出力データ幅および読み出しアドレスに基づいて、２つの入力のうち一方を選択して出力する複数のＩＯデータ選択手段をさらに有し、
前記ＩＯデータ選択手段の前記２つの入力には、互いに異なる前記出力データバス線が接続され、
前記ＩＯデータ選択手段の出力には、前記選択手段の入力に出力が接続されている前記並列−直列変換手段の入力が接続されていることを特徴とする請求項１に記載の半導体記憶装置。
【請求項３】
前記転送手段は、出力データ幅および読み出しアドレスに基づいて、２つの入力のうち一方を選択して出力する出力データ選択手段をさらに有し、
前記出力データ選択手段の前記２つの入力には、互いに異なる前記出力調整手段の出力が接続され、
前記出力データ選択手段の出力には、前記シリアル出力データバス線が接続され、
前記出力データ選択手段に出力が接続されている前記出力調整手段の入力には、前記選択手段の出力が接続されていることを特徴とする請求項１に記載の半導体記憶装置。
【請求項４】
前記転送手段は、
出力データ幅および読み出しアドレスに基づいて、２つの入力のうち一方を選択して出力する複数のＩＯデータ選択手段と、
出力データ幅および読み出しアドレスに基づいて、２つの入力のうち一方を選択して出力する出力データ選択手段をさらに有し、
前記ＩＯデータ選択手段の前記２つの入力には、互いに異なる前記出力データバス線が接続され、
前記ＩＯデータ選択手段の出力には、前記選択手段の入力に出力が接続されている前記並列−直列変換手段の入力が接続され、
前記出力データ選択手段の前記２つの入力には、互いに異なる前記出力調整手段の出力が接続され、
前記出力データ選択手段の出力には、前記シリアル出力データバス線が接続され、
前記出力データ選択手段に出力が接続されている前記出力調整手段の入力には、前記選択手段の出力が接続されていることを特徴とする請求項１に記載の半導体記憶装置。
【請求項５】
データを記憶するメモリセルが行および列方向に繰り返し配置され、複数の領域に分割されたセルアレイと、
前記セルアレイの１つの領域から複数のデータを読み出して増幅し、ＩＯデータとして出力データバス線へ出力するアクセス手段と、
マスタースレーブ型フリップフロップで構成され、前記アクセス手段からの前記ＩＯデータを受信し、少なくとも２つのデータを変換して１つのシリアルデータとして出力する複数の並列−直列変換手段と、
マスタースレーブ型フリップフロップおよび２入力−１出力のマスター段選択手段で構成され、前記アクセス手段からの前記ＩＯデータおよび前記並列−直列変換手段のマスター段からのデータを受信し、出力データ幅および読み出しアドレスに基づいて一方を選択し、少なくとも２つのデータを変換して１つのシリアルデータとして出力する複数の選択機能付き並列−直列変換手段と、
互いに異なる前記選択機能付き並列−直列変換手段からの出力が接続された２つの入力を有し、出力データ幅および読み出しアドレスに基づいて、前記２つの入力のうち一方を選択して前記シリアルデータを出力する複数の選択手段と、
前記並列−直列変換手段の出力、前記選択機能付き並列−直列変換手段の出力、または前記選択手段の出力が入力に接続され、受信したデータを保持するとともにそれぞれに出力タイミングを調整する複数の出力調整手段と、
前記複数の前記並列−直列変換手段、前記複数の前記選択機能付き並列−直列変換手段、前記複数の前記選択手段、および前記複数の前記出力調整手段から構成され、入力に前記出力データバス線が接続され、出力に前記出力調整手段からのデータを出力するシリアル出力データバス線が接続されている転送手段を備え、
前記転送手段は、読み出しデータの並列−直列変換機能および出力データ幅の変更機能を有することを特徴とする半導体記憶装置。
【請求項６】
シリアル入力データバス線からのシリアルデータを受信し、これらを保持するとともにそれぞれにタイミングを調整して出力する複数の入力調整手段と、
前記入力調整手段の出力が入力に接続され、入力データ幅および書き込みアドレスに基づいて、２つの出力のうち一方を選択して前記入力調整手段から受信した前記シリアルデータを出力する複数の選択手段と、
前記入力調整手段の出力または前記選択手段の１つの出力が入力に接続され、受信した前記シリアルデータを少なくとも２つのパラレルデータに変換して出力する複数の直列−並列変換手段と、
前記複数の前記入力調整手段、前記複数の前記選択手段、および前記複数の前記直列−並列変換手段から構成され、入力に前記シリアル入力データバス線が接続され、出力に前記直列−並列変換手段からの前記パラレルデータをＩＯデータとして出力する入力データバス線が接続されている転送手段と、
データを記憶するメモリセルが行および列方向に繰り返し配置され、複数の領域に分割されたセルアレイと、
前記入力データバス線からの前記ＩＯデータを増幅し、前記セルアレイへ書き込むアクセス手段を備え、
前記転送手段は、書き込みデータの直列−並列変換機能および入力データ幅の変更機能を有することを特徴とする半導体記憶装置。
【請求項７】
前記転送手段は、入力データ幅および書き込みアドレスに基づいて、２つの出力のうち一方を選択して前記直列−並列変換手段からの前記パラレルデータを出力する複数のＩＯデータ選択手段をさらに有し、
前記ＩＯデータ選択手段の前記２つの出力には、互いに異なる前記入力データバス線が接続され、
前記ＩＯデータ選択手段の入力には、前記選択手段の出力に入力が接続されている前記直列−並列変換手段の出力が接続されていることを特徴とする請求項６に記載の半導体記憶装置。
【請求項８】
前記転送手段は、入力データ幅および書き込みアドレスに基づいて、２つの出力のうち一方を選択して前記シリアル入力データバス線からの前記シリアルデータを出力する入力データ選択手段をさらに有し、
前記入力データ選択手段の前記２つの出力には、互いに異なる前記入力調整手段の入力が接続され、
前記出力データ選択手段の入力には、前記シリアル入力データバス線が接続され、
前記入力データ選択手段に入力が接続されている前記入力調整手段の出力には、前記選択手段の入力が接続されていることを特徴とする請求項６に記載の半導体記憶装置。
【請求項９】
前記転送手段は、
入力データ幅および書き込みアドレスに基づいて、２つの出力のうち一方を選択して前記直列−並列変換手段からの前記パラレルデータを出力する複数のＩＯデータ選択手段と、
入力データ幅および書き込みアドレスに基づいて、２つの出力のうち一方を選択して前記シリアル入力データバス線からの前記シリアルデータを出力する入力データ選択手段をさらに有し、
前記ＩＯデータ選択手段の前記２つの出力には、互いに異なる前記入力データバス線が接続され、
前記ＩＯデータ選択手段の入力には、前記選択手段の出力に入力が接続されている前記直列−並列変換手段の出力が接続され、
前記入力データ選択手段の前記２つの出力には、互いに異なる前記入力調整手段の入力が接続され、
前記出力データ選択手段の入力には、前記シリアル入力データバス線が接続され、
前記入力データ選択手段に入力が接続されている前記入力調整手段の出力には、前記選択手段の入力が接続されていることを特徴とする請求項６に記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入出力のデータ幅圧縮機能を有する半導体記憶装置に関する。特に、高速なシリアル入出力を有する半導体記憶装置に適用される。
【背景技術】
【０００２】
近年の微細加工技術の進展に伴って、半導体記憶装置はますます大容量化、高速化する傾向にあり、また、ユーザからの製品に対する機能要求も多様化してきている。例えば、大容量化に対しては、アドレスのビット幅を少なくし入出力データ幅を広くしたいわゆる多ビット品の要求があり、高速化に対しては、高周波クロックに同期したシリアル入出力機能、すなわち、バーストモードの要求がある。
【０００３】
バーストモードは、並列−直列変換回路を用いることで、入出力データのバンド幅（単位時間当たりの入出力ビット数）を大幅に向上させることができる。特に、ＤＲＡＭのように、メモリセルからの読み出し、書き込みに比較的時間がかかる場合には、入出力データのバンド幅を高める方法として非常に有効である。
【０００４】
一方、多ビット品については、製造する立場からは、１つのアーキテクチャで複数のビット構成に対応できることが望ましい。製造の最終段階でビット構成を決定できれば、特定のビット構成を受注してから納品するまでの納期を大幅に短縮できるからである。さらに、複数のビット構成選択を製品仕様として実現できれば、ビット構成ごとの製造計画が不要になるばかりでなく、ユーザにとってもより使いやすい製品となる。
【０００５】
このため、入出力のビット構成を可変にするデータ幅圧縮機能を実装した半導体記憶装置が開発されている。
【０００６】
ところで、広い入出力データ幅と高速なシリアル入出力機能を持つ従来の半導体記憶装置（例えば、「参考文献１」を参照。）においては、データ幅圧縮機能を付加するとチップサイズが増加し、入出力バンド幅が低下するという問題があった。
【０００７】
一例として、入出力データ幅を１６ビット／８ビット／４ビットで切り替えることのできるデータ幅圧縮機能を従来の半導体記憶装置に実装した場合を説明する。
【０００８】
図１２はデータ幅圧縮機能を付加した従来の半導体記憶装置を示す回路ブロック図である。ここでは、説明のために、入出力データ幅１６ビットのうち４ビット分のデータ幅圧縮機能にかかわる部分を示した。すなわち、図１２では、入出力データ幅を４ビット／２ビット／１ビットで切り替える。残りの１２ビット分は、４ビットを１セットにして、図１２と同様の繰り返しである。
【０００９】
データ幅圧縮機能を有する従来の半導体記憶装置は、データを記憶しておくメモリコア部２０１、データバスをマルチプレクスするマルチプレクサ回路２０２（以下、「ＭＵＸ回路２０２」という。）、並列−直列変換を行うシフトレジスタ２０３ａ〜２０３ｄ、および外部とのデータ入出力を行う入出力回路２０４ａ〜２０４ｄを備えている。
【００１０】
メモリコア部２０１は、データを記憶するメモリセルを行および列方向に繰り返し配置したセルアレイ２０５ａ〜２０５ｄ、およびデータの信号レベルを増幅するＩＯバッファ２０６ａ〜２０６ｄを有している。
【００１１】
ＭＵＸ回路２０２は、ＩＯバッファ２０６ａ〜２０６ｄから受信した複数組のデータのうち１組を選択して出力する選択回路２０７ａ、２０７ｂ（以下、「ＭＸ２０７ａ、ＭＸ２０７ｂ」という。）、およびシフトレジスタ２０３ａ〜２０３ｄから受信した複数組のデータのうち１組を選択して出力する選択回路２０８ａ〜２０８ｃ（以下、「ＭＸ２０８ａ〜２０８ｃ」という。）から構成されている。
【００１２】
ＭＸ２０７ａは、４ビットの入力と１ビットの出力を持つ４つのセレクタで構成され、ＩＯバッファ２０６ａ〜２０６ｄから受信した４ビットからなる４組の入力データのうち１組を選択してシフトレジスタ２０３ａへ出力する。
【００１３】
ＭＸ２０７ｂは、２ビットの入力と１ビットの出力を持つ４つのセレクタで構成され、ＩＯバッファ２０６ｃおよび２０６ｄから受信した４ビットからなる２組の入力データのうち１組を選択してシフトレジスタ２０３ｃへ出力する。
【００１４】
ＭＸ２０８ａは、３ビットの入力と１ビットの出力を持つ４つのセレクタで構成され、シフトレジスタ２０３ａ、２０３ｃ、および２０３ｄから受信した４ビットからなる３組の入力データのうち１組を選択してＩＯバッファ２０６ｄへ出力する。
【００１５】
ＭＸ２０８ｂは、２ビットの入力と１ビットの出力を持つ４つのセレクタで構成され、シフトレジスタ２０３ａおよび２０３ｃから受信した４ビットからなる２組の入力データのうち１組を選択してＩＯバッファ２０６ｃへ出力する。
【００１６】
ＭＸ２０８ｃは、２ビットの入力と１ビットの出力を持つ４つのセレクタで構成され、シフトレジスタ２０３ａおよび２０３ｂから受信した４ビットからなる２組の入力データのうち１組を選択してＩＯバッファ２０６ｂへ出力する。
【００１７】
シフトレジスタ２０３ａ〜２０３ｄは、それぞれ、４ビットの並列入力と４ビットの並列出力、および２ビットのシリアル出力と２ビットのシリアル入力を持ち、４ビットの並列入力データを２ビットｘ２のシリアル出力データに変換し、２ビットｘ２のシリアル入力データを４ビットの並列出力データに変換する。
【００１８】
入出力データ幅が１６ビットの場合（以下、「１６ビットモード」という。）には、ＩＯバッファ２０６ａ〜２０６ｄからの出力データは、それぞれ、対応するシフトレジスタ２０３ａ〜２０３ｄに入力され、シフトレジスタ２０３ａ〜２０３ｄからの並列出力データは、それぞれ、対応するＩＯバッファ２０６ａ〜２０６ｄに入力される。
【００１９】
すなわち、１６ビットモードでは、セルアレイ２０５ａ〜２０５ｄから読み出されたデータは、それぞれ、対応する外部入出力端子ＤＱ＿０〜ＤＱ＿３（図示していない。）へ出力され、ＤＱ＿０〜ＤＱ＿３から入力されたデータは、それぞれ、対応するセルアレイ２０５ａ〜２０５ｄに書き込まれる。
【００２０】
図中それぞれの回路ブロックに付した（ＤＱ＿０）〜（ＤＱ＿３）は、この１６ビットモードにおける対応関係を示している。
【００２１】
入出力データ幅が８ビットの場合（以下、「８ビットモード」という。）には、ＤＱ＿０およびＤＱ＿１に対応するＩＯバッファ２０６ａおよび２０６ｂからの出力データが、ＭＸ２０７ａを介してシフトレジスタ２０３ａに入力され、ＤＱ＿２およびＤＱ＿３に対応するＩＯバッファ２０６ｃおよび２０６ｄからの出力データが、ＭＸ２０７ｂを介してシフトレジスタ２０３ｃに入力される。
【００２２】
また、シフトレジスタ２０３ａからの並列出力データは、ＩＯバッファ２０６ａに入力されるとともに、ＭＸ２０８ｃを介してＩＯバッファ２０６ｂに入力され、シフトレジスタ２０３ｃからの並列出力データは、ＭＸ２０８ｂを介してＩＯバッファ２０６ｃに入力されるとともに、ＭＸ２０８ａを介してＩＯバッファ２０６ｄに入力される。
【００２３】
すなわち、８ビットモードでは、外部との入出力に使用されるのは、ＤＱ＿０およびＤＱ＿２の２ビットであり、セルアレイ２０５ａまたは２０５ｂから読み出されたデータはＤＱ＿０へ出力され、セルアレイ２０５ｃまたは２０５ｄから読み出されたデータはＤＱ＿２へ出力される。
【００２４】
また、ＤＱ＿０から入力されたデータは、カラムアドレスに基づいてセルアレイ２０５ａまたは２０５ｂに書き込まれ、ＤＱ＿２から入力されたデータは、カラムアドレスに基づいてセルアレイ２０５ｃまたは２０５ｄに書き込まれる。
【００２５】
入出力データ幅が４ビットの場合（以下、「４ビットモード」という。）には、ＩＯバッファ２０６ａ〜２０６ｄからの出力データが、ＭＸ２０７ａを介してシフトレジスタ２０３ａに入力され、シフトレジスタ２０３ａからの並列出力データが、ＭＸ２０８ａ〜２０８ｃを介してＩＯバッファ２０６ａ〜２０６ｄに入力される。
【００２６】
すなわち、４ビットモードでは、外部との入出力に使用されるのは、ＤＱ＿０の１ビットであり、セルアレイ２０５ａ〜２０５ｄから読み出されたデータはＤＱ＿０へ出力され、ＤＱ＿０から入力されたデータは、カラムアドレスに基づいてセルアレイ２０５ａ〜２０５ｄに書き込まれる。
【００２７】
ところで、図１２のような構成には、ＭＵＸ回路２０２を実装するために多くのデータバス線を引き回さなければならないという本質的な問題があった。例えば、図１２では、ＲＤ＿１＜０：３＞、ＲＤ＿２＜０：３＞、ＲＤ＿３＜０：３＞、ＷＤ＿０＜０：３＞、およびＳＷＤ＿２＜０：３＞の５セット、２０本のデータバス線を横方向に引き回している。
【００２８】
高速に入出力を行う製品では、クリティカルパスの配線は、配線遅延を極小化するため、上層配線層を用いてかつ太い配線とする必要がある。このため、上述のようなデータバス線の引き回しが、無視できないチップサイズの増加を引き起こしていた。
【００２９】
さらに、ＧＨｚを超える高い周波数でデータを入出力する製品では、そのバンド幅を低下させないために、データバス線のレイアウト上の配慮が特に重要である。
【００３０】
図１３は、図１２のデータ幅圧縮機能を実装した場合の従来の半導体記憶装置の全体レイアウト図である。
【００３１】
従来の半導体記憶装置では、図１３に示すように、セルアレイ領域２１１の下部長辺に隣接してＩＯバッファ領域２１２、ＭＵＸ回路領域２１３、およびシフトレジスタ領域２１４が、この順序で配置されている。また、チップ下部長辺に沿って、入出力回路領域２１５ａ、２１５ｂが、クロック生成回路領域２１６を挟んで左右対称となるよう配置されている。
【００３２】
このようなレイアウトは、ＧＨｚを超える高速な入出力を実現するために、ＩＯバッファ領域２１２から入出力回路領域２１５ａ、２１５ｂまでのデータバス線が最短でかつほぼ等長となるよう考慮されたものである。
【００３３】
しかしながら、図１３からもわかるように、上述したＭＵＸ回路２０２内のデータバス線の引き回しは、長いものではチップ長辺の１／４近くにおよび、数ｍｍに達している。この値は、ＩＯバッファ領域２１２から入出力回路領域２１５ａ、２１５ｂまでの数倍にもなり、これらに起因する配線遅延のアンバランスは、入出力データのバンド幅を著しく低下させる原因となっていた。
【特許文献１】特開２０００−１８８３８１号公報
【発明の開示】
【発明が解決しようとする課題】
【００３４】
上述のごとく、入出力のデータ幅圧縮機能を有する従来の半導体記憶装置には、無視できないチップサイズの増加と入出力バンド幅の著しい低下という本質的な問題があった。
【００３５】
本発明は、上記問題点を解決するためになされたもので、チップサイズの増加を抑制しつつ高速なシリアル入出力が可能なデータ幅圧縮機能を有する半導体記憶装置を提供することを目的とする。
【課題を解決するための手段】
【００３６】
本発明の一態様によれば、データを記憶するメモリセルが行および列方向に繰り返し配置され、複数の領域に分割されたセルアレイと、前記セルアレイの１つの領域から複数のデータを読み出して増幅し、ＩＯデータとして出力データバス線へ出力するアクセス手段と、前記アクセス手段からの前記ＩＯデータを受信し、少なくとも２つのデータをマルチプレクスして１つのシリアルデータとして出力する複数の並列−直列変換手段と、互いに異なる前記並列−直列変換手段からの出力が接続された２つの入力を有し、出力データ幅および読み出しアドレスに基づいて、前記２つの入力のうち一方を選択して前記シリアルデータを出力する複数の選択手段と、前記並列−直列変換手段の出力または前記選択手段の出力が入力に接続され、受信したデータを保持するとともにそれぞれに出力タイミングを調整する複数の出力調整手段と、前記複数の前記並列−直列変換手段、前記複数の前記選択手段、および前記複数の前記出力調整手段から構成され、入力に前記出力データバス線が接続され、出力に前記出力調整手段からのデータを出力するシリアル出力データバス線が接続されている転送手段を備え、前記転送手段は、読み出しデータの並列−直列変換機能および出力データ幅の変更機能を有することを特徴とする半導体記憶装置が提供される。
【００３７】
また、本発明の別の一態様によれば、シリアル入力データバス線からのシリアルデータを受信し、これらを保持するとともにそれぞれにタイミングを調整して出力する複数の入力調整手段と、前記入力調整手段の出力が入力に接続され、入力データ幅および書き込みアドレスに基づいて、２つの出力のうち一方を選択して前記入力調整手段から受信した前記シリアルデータを出力する複数の選択手段と、前記入力調整手段の出力または前記選択手段の１つの出力が入力に接続され、受信した前記シリアルデータを少なくとも２つのパラレルデータに変換して出力する複数の直列−並列変換手段と、前記複数の前記入力調整手段、前記複数の前記選択手段、および前記複数の前記直列−並列変換手段から構成され、入力に前記シリアル入力データバス線が接続され、出力に前記直列−並列変換手段からの前記パラレルデータをＩＯデータとして出力する入力データバス線が接続されている転送手段と、データを記憶するメモリセルが行および列方向に繰り返し配置され、複数の領域に分割されたセルアレイと、前記入力データバス線からの前記ＩＯデータを増幅し、前記セルアレイへ書き込むアクセス手段を備え、前記転送手段は、書き込みデータの直列−並列変換機能および入力データ幅の変更機能を有することを特徴とする半導体記憶装置が提供される。
【発明の効果】
【００３８】
本発明によれば、データバス線を引き回さずに入出力のデータ幅圧縮機能を実装できるので、チップサイズの増加を抑制しつつ、高速なシリアル入出力が可能な半導体記憶装置を実現することができる。
【発明を実施するための最良の形態】
【００３９】
以下、図面を参照しながら本発明に係わる半導体記憶装置を実現するための実施例を説明する。
【実施例１】
【００４０】
図１は、本発明の実施例１に係わる半導体記憶装置を示す回路ブロック図である。ここでは、一例として、入出力データ幅を１６ビット／８ビット／４ビットで切り替えるデータ幅圧縮機能を有する半導体記憶装置を示した。
【００４１】
また、上位バイト（ＤＱ＿８〜ＤＱ＿１５）に対応する部分は、下位バイト（ＤＱ＿０〜ＤＱ＿７）に対応する部分と同様の構成、動作なので、詳しい説明は省略する。
【００４２】
本発明の実施例１に係わる半導体記憶装置は、データを記憶しておくメモリコア部１１、入出力データ幅の圧縮と並列−直列変換を行う圧縮機能付ＲＷレジスタ１２ａ、１２ｂ（以下、「ＲＷレジスタ１２ａ、１２ｂ」という）、外部とのデータ入出力を行う入出力回路１３ａ、１３ｂ、各回路ブロックの同期に使用されるクロック信号（ｔｃｌｋ／ｒｃｌｋ）を生成するクロック生成回路１４、およびこれらの回路動作に必要な制御信号を生成する制御回路１５を備えている。
【００４３】
メモリコア部１１は、メモリセルを行および列方向に繰り返し配置したセルアレイ１６ａ〜１６ｄ、およびデータの信号レベルを増幅するＩＯバッファ１７ａ〜１７ｄを有している。
【００４４】
セルアレイ１６ａ〜１６ｄおよびＩＯバッファ１７ａ〜１７ｄは、外部入出力端子ＤＱ＿０〜ＤＱ＿７（図示していないが、それぞれには、対応するデータバスＤＱ＜０：７＞が接続されている。）に対応する領域に分割されている。
【００４５】
すなわち、入出力データ幅が１６ビットの場合（以下、「１６ビットモード」という。同様に、８ビットの場合を「８ビットモード」、４ビットの場合を「４ビットモード」という。）に、セルアレイ１６ａから読み出されたデータは、ＩＯバッファ１７ａを介してＤＱ＿０およびＤＱ＿１へ出力され、ＤＱ＿０およびＤＱ＿１に入力されたデータは、ＩＯバッファ１７ａを介してセルアレイ１６ａに書き込まれる。
【００４６】
また、セルアレイ１６ｂから読み出されたデータは、ＩＯバッファ１７ｂを介してＤＱ＿２およびＤＱ＿３へ出力され、ＤＱ＿２およびＤＱ＿３に入力されたデータは、ＩＯバッファ１７ｂを介してセルアレイ１６ｂに書き込まれる。
【００４７】
さらに、セルアレイ１６ｃから読み出されたデータは、ＩＯバッファ１７ｃを介してＤＱ＿４およびＤＱ＿５へ出力され、ＤＱ＿４およびＤＱ＿５に入力されたデータは、ＩＯバッファ１７ｃを介してセルアレイ１６ｃに書き込まれる。
【００４８】
さらに、セルアレイ１６ｄから読み出されたデータは、ＩＯバッファ１７ｄを介してＤＱ＿６およびＤＱ＿７へ出力され、ＤＱ＿６およびＤＱ＿７に入力されたデータは、ＩＯバッファ１７ｄを介してセルアレイ１６ｄに書き込まれる。
【００４９】
図中の各回路ブロックに付した（ＤＱ＿０）〜（ＤＱ＿１５）は、この１６ビットモードでの対応関係を示している。
【００５０】
ＲＷレジスタ１２ａの第１のデータ入力には、ＩＯバッファ１７ａからのデータバス線ＲＤ＿０＜０：３＞（以下、バス線は＜０：３＞のように表す。）およびＲＤ＿１＜０：３＞が接続され、第２のデータ入力には、ＩＯバッファ１７ｂからのデータバス線ＲＤ＿２＜０：３＞およびＲＤ＿３＜０：３＞が接続され、シリアルデータ入力には、入出力回路１３ａからのシリアルデータバス線ｅＷｒｉｔｅ＜０：３＞およびｏＷｒｉｔｅ＜０：３＞が接続されている。
【００５１】
また、ＲＷレジスタ１２ａの第１のデータ出力には、ＩＯバッファ１７ａへのデータバス線ＷＤ＿０＜０：３＞およびＷＤ＿１＜０：３＞が接続され、第２のデータ出力には、ＩＯバッファ１７ｂへのデータバス線ＷＤ＿２＜０：３＞およびＷＤ＿３＜０：３＞が接続され、シリアルデータ出力には、入出力回路１３ａへのシリアルデータバス線ｅＲｅａｄ＜０：３＞およびｏＲｅａｄ＜０：３＞が接続されている。
【００５２】
ＲＷレジスタ１２ｂの第１のデータ入力には、ＩＯバッファ１７ｃからのデータバス線ＲＤ＿４＜０：３＞およびＲＤ＿５＜０：３＞が接続され、第２のデータ入力には、ＩＯバッファ１７ｄからのデータバス線ＲＤ＿６＜０：３＞およびＲＤ＿７＜０：３＞が接続され、シリアルデータ入力には、入出力回路１３ｂからのシリアルデータバス線ｅＷｒｉｔｅ＜４：７＞およびｏＷｒｉｔｅ＜４：７＞が接続されている。
【００５３】
また、ＲＷレジスタ１２ｂの第１のデータ出力には、ＩＯバッファ１７ｃへのデータバス線ＷＤ＿４＜０：３＞およびＷＤ＿５＜０：３＞が接続され、第２のデータ出力には、ＩＯバッファ１７ｄへのデータバス線ＷＤ＿６＜０：３＞およびＷＤ＿７＜０：３＞が接続され、シリアルデータ出力には、入出力回路１３ｂへのシリアルデータバス線ｅＲｅａｄ＜４：７＞およびｏＲｅａｄ＜４：７＞が接続されている。
【００５４】
入出力回路１３ａの外部入出力端子ＤＱ＿０〜ＤＱ＿３には、外部データバスＤＱ＜０：３＞がそれぞれ接続され、入出力回路１３ｂの外部入出力端子ＤＱ＿４〜ＤＱ＿７には、外部データバスＤＱ＜４：７＞がそれぞれ接続されている。
【００５５】
クロック生成回路１４は、外部バスからシステムクロック（ＴＣＬＫ／ＲＣＬＫ）を受信し、クロック信号（ｔｃｌｋ／ｒｃｌｋ）を生成し、これをＲＷレジスタ１２ａ、１２ｂ、入出力回路１３ａ、１３ｂ、および制御回路１５へ供給する。
【００５６】
制御回路１５は、外部コマンドバスからアドレスデータを含むコマンド（ＣＯＭＭＡＮＤ）を受信し、これに基づいて内部動作に必要な制御信号を生成し、これをＲＷレジスタ１２ａ、１２ｂ、入出力回路１３ａ、１３ｂ、およびメモリコア部１１へ供給する。
【００５７】
上位バイト（ＤＱ＿８〜ＤＱ＿１５）に対応する部分は上述した構成と同様であり、外部入出力端子ＤＱ＿８〜ＤＱ＿１５には、外部データバスＤＱ＜８：１５＞が接続されている。
【００５８】
ＩＯバッファ１７ａ〜１７ｄは、それぞれ、対応するセルアレイ１６ａ〜１６ｄから４ビットｘ２セットのデータを読み出し、信号レベルを増幅してＲＷレジスタ１２ａ、１２ｂへ供給する。
【００５９】
また、ＩＯバッファ１７ａ〜１７ｄは、それぞれ、４ビットｘ２セットのデータをＲＷレジスタ１２ａまたは１２ｂから受信し、信号レベルを増幅して対応するセルアレイ１６ａ〜１６ｄへ書き込む。
【００６０】
入出力回路１３ａ、１３ｂは、それぞれ、ＲＷレジスタ１２ａ、１２ｂから２ビットシリアルｘ４ビットのシリアルデータを２セット受信し、並列−直列変換によって、４ビットシリアルｘ４ビットの出力データを生成し、これらをクロック信号ｔｃｌｋに同期して外部データバスへ出力する。
【００６１】
また、入出力回路１３ａ、１３ｂは、それぞれ、４ビットシリアルｘ４ビットの入力データをクロック信号ｒｃｌｋに同期して外部データバスから受信し、直列−並列変換によって、２ビットシリアルｘ４ビットのシリアルデータを２セットずつ生成し、これらをＲＷレジスタ１２ａ、１２ｂへ供給する。
【００６２】
ＲＷレジスタ１２ａ、１２ｂは、データ読み出し時に出力データ幅圧縮と並列−直列変換を行うＲレジスタ、および、データ書き込み時に入力データ幅圧縮と直列−並列変換を行うＷレジスタから構成される。
【００６３】
入出力のデータ幅圧縮は、論理的には、外部入出力のビット数とセルアレイ１６ａ〜１６ｄへアクセスするカラムアドレスのビット数を交換することで実装されている。すなわち、１６ビットモードに比べ、８ビットモードでは、カラムアドレスが１ビット多く、４ビットモードでは、カラムアドレスが２ビット多くなっている。
【００６４】
図２は、本発明の実施例１に係わる半導体記憶装置のＲレジスタを示す回路ブロック図である。
【００６５】
本発明の実施例１に係わる半導体記憶装置のＲレジスタは、８つの２入力−１出力選択回路２１ａ〜２１ｈ（以下、「ＭＸ２１ａ〜２１ｈ」という。）からなるマルチプレクサ回路２２（以下、「ＭＵＸ回路２２」という。）、１６個のマスタースレーブ型フリップフロップ２３ａ〜２３ｓ（以下、「ＦＦ２３ａ〜２３ｓ」という。）からなるシフトレジスタ２４、ＭＸ２５ａと２５ｂからなるＭＵＸ回路２６、および４つのラッチ回路２７ａ〜２７ｄ（以下、Ｌａｔ２７ａ〜２７ｄという。）と４つのＦＦ２８ａ〜２８ｄからなる出力レジスタ２９を備えている。
【００６６】
ＭＵＸ回路２２を構成するＭＸ２１ａ〜２１ｈの入力には、それぞれ、隣り合うデータバス線が接続され、出力は、シフトレジスタ２４へ供給されている。
【００６７】
すなわち、ＭＸ２１ａの入力には、ＲＤ＿０＜３＞およびＲＤ＿１＜３＞が接続され、ＭＸ２１ｂの入力には、ＲＤ＿０＜２＞およびＲＤ＿１＜２＞が接続され、ＭＸ２１ｃの入力には、ＲＤ＿０＜１＞およびＲＤ＿１＜１＞が接続され、ＭＸ２１ｄの入力には、ＲＤ＿０＜０＞およびＲＤ＿１＜０＞が接続され、ＭＸ２１ｅの入力には、ＲＤ＿３＜０＞およびＲＤ＿２＜０＞が接続され、ＭＸ２１ｆの入力には、ＲＤ＿３＜１＞およびＲＤ＿２＜１＞が接続され、ＭＸ２１ｇの入力には、ＲＤ＿３＜２＞およびＲＤ＿２＜２＞が接続され、ＭＸ２１ｈの入力には、ＲＤ＿３＜３＞およびＲＤ＿２＜３＞が接続されている。
【００６８】
ＭＵＸ回路２２は、ＩＯバッファ１７ａおよび１７ｂから受信した読み出しデータを入出力データ幅と読み出しアドレスに基づいてマルチプレクスする。
【００６９】
すなわち、１６ビットモードでは、読み出しアドレスにかかわりなく常に、ＭＸ２１ａは、ＲＤ＿０＜３＞を選択して出力し、ＭＸ２１ｂは、ＲＤ＿０＜２＞を選択して出力し、ＭＸ２１ｃは、ＲＤ＿０＜１＞を選択して出力し、ＭＸ２１ｄは、ＲＤ＿０＜０＞を選択して出力し、ＭＸ２１ｅは、ＲＤ＿２＜０＞を選択して出力し、ＭＸ２１ｆは、ＲＤ＿２＜１＞を選択して出力し、ＭＸ２１ｇは、ＲＤ＿２＜２＞を選択して出力し、ＭＸ２１ｈは、ＲＤ＿２＜３＞を選択して出力する。
【００７０】
また、８ビットモードおよび４ビットモードでは、ＭＸ２１ａ〜２１ｈは、読み出しアドレスの上位ビットにしたがって、どちらかの入力を選択して出力する。表１は、それぞれのモードで、上位アドレスにしたがって、ＭＸ２１ａ〜２１ｈが選択するデータバス線を示している。
【表１】
2005182939.tif 000003
【００７１】
例えば、ＭＸ２１ａは、８ビットモードおよび４ビットモードでは、上位アドレスが“０”の場合にＲＤ＿０＜３＞を選択して出力し、上位アドレスが“１”の場合にＲＤ＿１＜３＞を選択して出力する。
【００７２】
４ビットモードでは、１６ビットモードに比べ読み出しアドレスが２ビット多くなるが、表１では、２ビットのうち下位１ビットが上位アドレスとして示されている。残りの１ビットは後述するＭＵＸ回路２６で使用される。
【００７３】
シフトレジスタ２４を構成するＦＦ２３ａ〜２３ｓは、２個が対になって８組の２ビット並列−直列変換回路を構成しており、それぞれのパラレル入力には、ＭＵＸ回路２２からの出力、またはＩＯバッファ１７ａ、１７ｂからの出力が接続され、それぞれのシリアル出力は、ＭＵＸ回路２６または出力レジスタ２９へ供給されている。
【００７４】
すなわち、ＦＦ２３ａのパラレル入力には、ＭＸ２１ｂの出力が接続され、ＦＦ２３ｂのパラレル入力には、ＭＸ２１ｄの出力が接続され、ＦＦ２３ｂのシリアル入力には、ＦＦ２３ａのシリアル出力が接続されている。ＦＦ２３ｂのシリアル出力ｅＲ０は、ＭＵＸ回路２６へ供給されている。
【００７５】
また、ＦＦ２３ｃのパラレル入力には、ＲＤ＿１＜２＞が接続され、ＦＦ２３ｄのパラレル入力には、ＲＤ＿１＜０＞が接続され、ＦＦ２３ｄのシリアル入力には、ＦＦ２３ｃのシリアル出力が接続されている。ＦＦ２３ｄのシリアル出力ｅＲ１は、出力レジスタ２９へ供給されている。
【００７６】
さらに、ＦＦ２３ｅのパラレル入力には、ＭＸ２１ａの出力が接続され、ＦＦ２３ｆのパラレル入力には、ＭＸ２１ｃの出力が接続され、ＦＦ２３ｆのシリアル入力には、ＦＦ２３ｅのシリアル出力が接続されている。ＦＦ２３ｆのシリアル出力ｏＲ０は、ＭＵＸ回路２６へ供給されている。
【００７７】
さらに、ＦＦ２３ｇのパラレル入力には、ＲＤ＿１＜３＞が接続され、ＦＦ２３ｈのパラレル入力には、ＲＤ＿１＜１＞が接続され、ＦＦ２３ｈのシリアル入力には、ＦＦ２３ｇのシリアル出力が接続されている。ＦＦ２３ｈのシリアル出力ｏＲ１は、出力レジスタ２９へ供給されている。
【００７８】
さらに、ＦＦ２３ｋのパラレル入力には、ＭＸ２１ｇの出力が接続され、ＦＦ２３ｊのパラレル入力には、ＭＸ２１ｅの出力が接続され、ＦＦ２３ｊのシリアル入力には、ＦＦ２３ｋのシリアル出力が接続されている。ＦＦ２３ｊのシリアル出力ｅＲ２は、ＭＵＸ回路２６および出力レジスタ２９へ供給されている。
【００７９】
さらに、ＦＦ２３ｎのパラレル入力には、ＲＤ＿３＜２＞が接続され、ＦＦ２３ｍのパラレル入力には、ＲＤ＿３＜０＞が接続され、ＦＦ２３ｍのシリアル入力には、ＦＦ２３ｎのシリアル出力が接続されている。ＦＦ２３ｍのシリアル出力ｅＲ３は、出力レジスタ２９へ供給されている。
【００８０】
さらに、ＦＦ２３ｑのパラレル入力には、ＭＸ２１ｈの出力が接続され、ＦＦ２３ｐのパラレル入力には、ＭＸ２１ｆの出力が接続され、ＦＦ２３ｐのシリアル入力には、ＦＦ２３ｑのシリアル出力が接続されている。ＦＦ２３ｐのシリアル出力ｏＲ２は、ＭＵＸ回路２６および出力レジスタ２９へ供給されている。
【００８１】
さらに、ＦＦ２３ｓのパラレル入力には、ＲＤ＿３＜３＞が接続され、ＦＦ２３ｒのパラレル入力には、ＲＤ＿３＜１＞が接続され、ＦＦ２３ｒのシリアル入力には、ＦＦ２３ｓのシリアル出力が接続されている。ＦＦ２３ｒのシリアル出力ｏＲ３は、出力レジスタ２９へ供給されている。
【００８２】
シフトレジスタ２４は、１６ビットモードでは、ＩＯバッファ１７ａおよび１７ｂから受信した１６ビットの読み出しデータを８組の２ビットシリアルデータｅＲ０、ｅＲ１、ｏＲ０、ｏＲ１、ｅＲ２、ｅＲ３、ｏＲ２、およびｏＲ３に並列−直列変換する。
【００８３】
ＭＵＸ回路２６を構成するＭＸ２５ａおよび２５ｂの入力には、シフトレジスタ２４からのシリアル出力が接続されており、ＭＸ２５ａおよび２５ｂの出力は出力レジスタ２９へ供給されている。
【００８４】
すなわち、ＭＸ２５ａの入力には、ｅＲ０およびｅＲ２が接続され、ＭＸ２５ｂの入力には、ｏＲ０およびｏＲ２が接続されている。
【００８５】
ＭＵＸ回路２６は、シフトレジスタ２４から受信したシリアル出力データを入出力データ幅と読み出しアドレスに基づいてマルチプレクスする。
【００８６】
すなわち、１６ビットモードおよび８ビットモードでは、読み出しアドレスにかかわりなく常に、ＭＸ２５ａは、ｅＲ０を選択して出力し、ＭＸ２５ｂは、ｏＲ０を選択して出力する。
【００８７】
また、４ビットモードでは、ＭＸ２５ａおよび２５ｂは、読み出しアドレスの上位ビットにしたがって、どちらかの入力を選択して出力する。表２は、４ビットモードで、上位アドレスにしたがって、ＭＸ２５ａおよび２５ｂが選択する信号を示している。
【表２】
2005182939.tif 000004
【００８８】
例えば、ＭＸ２５ａは、４ビットモードでは、上位アドレスが“０”の場合にｅＲ０を選択して出力し、上位アドレスが“１”の場合にｅＲ２を選択して出力する。
【００８９】
出力レジスタ２９は、シフトレジスタ２４およびＭＵＸ回路２６からのシリアル出力データを受信し、クロック信号ｔｃｌｋに同期してこれらをシリアルデータバス線ｅＲｅａｄ＜０：３＞およびｏＲｅａｄ＜０：３＞へ出力する。
【００９０】
すなわち、ＦＦ２８ａの入力にはｏＲ１が接続され、出力にはｏＲｅａｄ＜１＞が接続されている。また、ＦＦ２８ｂの入力にはＭＸ２５ｂの出力が接続され、出力にはｏＲｅａｄ＜０＞が接続されている。
【００９１】
さらに、Ｌａｔ２７ａの入力にはｅＲ１が接続され、出力にはｅＲｅａｄ＜１＞が接続されている。さらに、Ｌａｔ２７ｂの入力にはＭＸ２５ａの出力が接続され、出力にはｅＲｅａｄ＜０＞が接続されている。
【００９２】
さらに、Ｌａｔ２７ｃの入力にはｅＲ２が接続され、出力にはｅＲｅａｄ＜２＞が接続されている。さらに、Ｌａｔ２７ｄの入力にはｅＲ３が接続され、出力にはｅＲｅａｄ＜３＞が接続されている。
【００９３】
さらに、ＦＦ２８ｃの入力にはｏＲ２が接続され、出力にはｏＲｅａｄ＜２＞が接続されている。さらに、ＦＦ２８ｄの入力にはｏＲ３が接続され、出力にはｏＲｅａｄ＜３＞が接続されている。
【００９４】
出力レジスタ２９において、ｅＲｅａｄ＜０：３＞にＬａｔ２７ａ〜２７ｄを使用し、ｏＲｅａｄ＜０：３＞にＦＦ２８ａ〜２８ｄを使用しているのは、ｏＲｅａｄ＜０：３＞をｅＲｅａｄ＜０：３＞からクロック信号ｔｃｌｋの半周期分遅らせるためである。
【００９５】
次に、上述した構成を持つ半導体記憶装置のデータ読み出し動作について説明する。
【００９６】
図３は、本発明の実施例１に係わる半導体記憶装置の読み出し動作を示す波形図である。ここでは、一例として、セルアレイ１６ａのデータを読み出してＤＱ＜０＞へ出力する場合の動作波形を示した。
【００９７】
まず、制御回路１５はクロック信号ｒｃｌｋに同期してコマンドバスからRead Commandを受信し、必要な制御信号を生成して各回路へ供給する。Read Commandにはセルアレイ１６ａ〜１６ｄにアクセスするためのアドレスも含まれている。
【００９８】
セルアレイ１６ａから読み出されたデータは、ＩＯバッファ１７ａによって増幅され、クロック信号ｔｃｌｋに同期してデータバス線ＲＤ＿０＜０：３＞へ出力される。
【００９９】
これら４ビットのデータは、Ｒレジスタによって、２ビットシリアルのｅＲ０およびｏＲ０に変換され、ｔｃｌｋに同期してｅＲｅａｄ＜０＞およびｏＲｅａｄ＜０＞へ出力される。この時、上述したように、ｏＲｅａｄ＜０＞はｅＲｅａｄ＜０＞に対してｔｃｌｋの半周期分だけ遅れて出力される。
【０１００】
最後に、入出力回路１３ａで、ｅＲｅａｄ＜０＞とｏＲｅａｄ＜０＞がマルチプレクスされ、４ビットシリアルのRead DataとしてＤＱ＜０＞へ出力される。
【０１０１】
メモリコア部１１からデータバスまでの信号伝搬と各回路ブロックでの処理時間を最適化するために、ＩＯバッファ１７ａ、ＲＷレジスタ１２ａ、および入出力回路１３ａの出力タイミングは、それぞれ、ｔｃｌｋの半周期分ずらして設定されている。
【０１０２】
１６ビット／８ビット／４ビットの各モードは、上述したように、ＭＵＸ回路２２およびＭＵＸ回路２６での入力の選択によって実現され、この選択は、ＩＯバッファ１７ａがＲＤ＿０＜０：３＞を出力する前に決定されている。
【０１０３】
したがって、図３に示した動作波形は、入出力データ幅には影響されない。
【０１０４】
図３は、ＤＱ＜０＞への出力動作波形であるが、ＤＱ＜１＞〜ＤＱ＜３＞への出力動作も同様である。
【０１０５】
次に、データ書き込み時に動作するＷレジスタについて説明する。
【０１０６】
図４は、本発明の実施例１に係わる半導体記憶装置のＷレジスタを示す回路ブロック図である。
【０１０７】
本発明の実施例１に係わる半導体記憶装置のＷレジスタは、８つの１入力−２出力選択回路４１ａ〜４１ｈ（以下、「ＭＸ４１ａ〜４１ｈ」という。）からなるマルチプレクサ回路４２（以下、「ＭＵＸ回路４２」という。）、１６個のＬａｔ４３ａ〜４３ｓからなるライトレジスタ４４、ＭＸ４５ａと４５ｂからなるＭＵＸ回路４６、および４つのＦＦ４７ａ〜４７ｄと４つのＬａｔ４８ａ〜４８ｄからなる入力レジスタ４９を備えている。
【０１０８】
ＭＵＸ回路４２を構成するＭＸ４１ａ〜４１ｈの出力には、それぞれ、隣り合うデータバス線が接続され、入力は、ライトレジスタ４４から供給されている。
【０１０９】
すなわち、ＭＸ４１ａの出力には、ＷＤ＿０＜３＞およびＷＤ＿１＜３＞が接続され、ＭＸ４１ｂの出力には、ＷＤ＿０＜２＞およびＷＤ＿１＜２＞が接続され、ＭＸ４１ｃの出力には、ＷＤ＿０＜１＞およびＷＤ＿１＜１＞が接続され、ＭＸ４１ｄの出力には、ＷＤ＿０＜０＞およびＷＤ＿１＜０＞が接続され、ＭＸ４１ｅの出力には、ＷＤ＿３＜０＞およびＷＤ＿２＜０＞が接続され、ＭＸ４１ｆの出力には、ＷＤ＿３＜１＞およびＷＤ＿２＜１＞が接続され、ＭＸ４１ｇの出力には、ＷＤ＿３＜２＞およびＷＤ＿２＜２＞が接続され、ＭＸ４１ｈの出力には、ＷＤ＿３＜３＞およびＷＤ＿２＜３＞が接続されている。
【０１１０】
ＭＵＸ回路４２は、ＩＯバッファ１７ａおよび１７ｂへの書き込みデータを入出力データ幅と書き込みアドレスに基づいて振り分ける。
【０１１１】
すなわち、１６ビットモードでは、書き込みアドレスにかかわりなく常に、ＭＸ４１ａはＷＤ＿０＜３＞へ出力し、ＭＸ４１ｂはＷＤ＿０＜２＞へ出力し、ＭＸ４１ｃはＷＤ＿０＜１＞へ出力し、ＭＸ４１ｄはＷＤ＿０＜０＞へ出力し、ＭＸ４１ｅはＷＤ＿２＜０＞へ出力し、ＭＸ４１ｆはＷＤ＿２＜１＞へ出力し、ＭＸ４１ｇはＷＤ＿２＜２＞へ出力し、ＭＸ４１ｈはＷＤ＿２＜３＞へ出力する。
【０１１２】
また、８ビットモードおよび４ビットモードでは、ＭＸ４１ａ〜４１ｈは、書き込みアドレスの上位ビットにしたがって、どちらかの出力を選択して入力データを出力する。表３は、それぞれのモードで、ＭＸ４１ａ〜４１ｈが上位アドレスにしたがって入力データを出力するデータバス線を示している。
【表３】
2005182939.tif 000005
【０１１３】
例えば、ＭＸ４１ａは、８ビットモードおよび４ビットモードでは、上位アドレスが“０”の場合にＷＤ＿０＜３＞へ入力データを出力し、上位アドレスが“１”の場合にＷＤ＿１＜３＞へ入力データを出力する。
【０１１４】
Ｒレジスタと同様に、表３の４ビットモードでは、増えた２ビットのうち下位１ビットが上位アドレスとして示されている。残りの１ビットは後述するＭＵＸ回路４６で使用される。
【０１１５】
ライトレジスタ４４を構成するＬａｔ４３ａ〜４３ｓは、２個が対になって８組の２ビット直列−並列変換回路を構成しており、それぞれの入力には、入力レジスタ４９からの出力、またはＭＵＸ回路４６からの出力が接続されている。また、それぞれの出力は、ＭＵＸ回路４６またはＩＯバッファ１７ａ、１７ｂへ供給されている。
【０１１６】
すなわち、Ｌａｔ４３ａおよび４３ｂの入力には、ＭＵＸ回路４６からの出力ｅＷ０が接続され、Ｌａｔ４３ａの出力は、ＭＸ４１ｂの入力へ接続され、Ｌａｔ４３ｂの出力は、ＭＸ４１ｄの入力へ接続されている。
【０１１７】
また、Ｌａｔ４３ｃおよび４３ｄの入力には、入力レジスタ４９からの出力ｅＷ１が接続され、Ｌａｔ４３ｃの出力には、ＷＤ＿１＜２＞が接続され、Ｌａｔ４３ｄの出力には、ＷＤ＿１＜０＞が接続されている。
【０１１８】
さらに、Ｌａｔ４３ｅおよび４３ｆの入力には、ＭＵＸ回路４６からの出力ｏＷ０が接続され、Ｌａｔ４３ｅの出力は、ＭＸ４１ａの入力へ接続され、Ｌａｔ４３ｆの出力は、ＭＸ４１ｃの入力へ接続されている。
【０１１９】
さらに、Ｌａｔ４３ｇおよび４３ｈの入力には、入力レジスタ４９からの出力ｏＷ１が接続され、Ｌａｔ４３ｇの出力には、ＷＤ＿１＜３＞が接続され、Ｌａｔ４３ｈの出力には、ＷＤ＿１＜１＞が接続されている。
【０１２０】
さらに、Ｌａｔ４３ｊおよび４３ｋの入力には、入力レジスタ４９からの出力ｅＷ２が接続され、Ｌａｔ４３ｊの出力は、ＭＸ４１ｅの入力へ接続され、Ｌａｔ４３ｋの出力は、ＭＸ４１ｇの入力へ接続されている。
【０１２１】
さらに、Ｌａｔ４３ｍおよび４３ｎの入力には、入力レジスタ４９からの出力ｅＷ３が接続され、Ｌａｔ４３ｍの出力には、ＷＤ＿３＜０＞が接続され、Ｌａｔ４３ｎの出力には、ＷＤ＿３＜２＞が接続されている。
【０１２２】
さらに、Ｌａｔ４３ｐおよび４３ｑの入力には、入力レジスタ４９からの出力ｏＷ２が接続され、Ｌａｔ４３ｐの出力は、ＭＸ４１ｆの入力へ接続され、Ｌａｔ４３ｑの出力は、ＭＸ４１ｈの入力へ接続されている。
【０１２３】
さらに、Ｌａｔ４３ｒおよび４３ｓの入力には、入力レジスタ４９からの出力ｏＷ３が接続され、Ｌａｔ４３ｒの出力には、ＷＤ＿３＜１＞が接続され、Ｌａｔ４３ｓの出力には、ＷＤ＿３＜３＞が接続されている。
【０１２４】
ここで、ＷＤ＿１＜３＞には、ＭＸ４１ａの出力およびＬａｔ４３ｅの出力が両方とも接続されているが、これらが同時にデータを出力することはないので問題はない。以下、複数の出力が接続されているノードはすべて同様である。
【０１２５】
ライトレジスタ４４は、１６ビットモードでは、ＭＵＸ回路４６および入力レジスタ４９から受信した８組の２ビットシリアルデータｅＷ０、ｅＷ１、ｏＷ０、ｏＷ１、ｅＷ２、ｅＷ３、ｏＷ２、およびｏＷ３を１６ビットの書き込みデータに直列−並列変換する。
【０１２６】
ＭＵＸ回路４６を構成するＭＸ４５ａおよび４５ｂの入力には、入力レジスタ４９からの出力が接続され、出力にはｅＷ０、ｅＷ２、ｏＷ０、およびｏＷ２が接続されている。
【０１２７】
すなわち、ＭＸ４５ａの入力には、入力レジスタ４９のＦＦ４７ｂの出力が接続され、ＭＸ４５ｂの入力には、入力レジスタ４９のＬａｔ４８ｂの出力が接続されている。
【０１２８】
また、ＭＸ４５ａの一方の出力にはｅＷ０が接続され、他方の出力にはｅＷ２が接続されている。さらに、ＭＸ４５ｂの一方の出力にはｏＷ０が接続され、他方の出力にはｏＷ２が接続されている。
【０１２９】
ＭＵＸ回路４６は、入力レジスタ４９から受信した入力データを入出力データ幅と書き込みアドレスに基づいて振り分ける。
【０１３０】
すなわち、１６ビットモードおよび８ビットモードでは、書き込みアドレスにかかわりなく常に、ＭＸ４５ａはｅＷ０へ出力し、ＭＸ４５ｂはｏＷ０へ出力する。
【０１３１】
また、４ビットモードでは、ＭＸ４５ａおよび４５ｂは、書き込みアドレスの上位ビットにしたがって、どちらかの出力を選択して入力データを出力する。表４は、４ビットモードで、上位アドレスにしたがって、ＭＸ４５ａおよび４５ｂが選択する出力先を示している。
【表４】
2005182939.tif 000006
【０１３２】
例えば、ＭＸ４５ａは、４ビットモードでは、上位アドレスが“０”の場合にｅＷ０へ出力し、上位アドレスが“１”の場合にｅＷ２へ出力する。
【０１３３】
入力レジスタ４９は、シリアルデータバス線ｅＷｒｉｔｅ＜０：３＞およびｏＷｒｉｔｅ＜０：３＞からシリアル入力データを受信し、クロック信号ｒｃｌｋに同期してこれらをライトレジスタ４４およびＭＵＸ回路４６へ出力する。
【０１３４】
すなわち、Ｌａｔ４８ａの入力にはｏＷｒｉｔｅ＜１＞が接続され、出力にはｏＷ１が接続されている。また、Ｌａｔ４８ｂの入力にはｏＷｒｉｔｅ＜０＞が接続され、出力はＭＸ４５ｂの入力へ接続されている。
【０１３５】
さらに、ＦＦ４７ａの入力にはｅＷｒｉｔｅ＜１＞が接続され、出力にはｅＷ１が接続されている。さらに、ＦＦ４７ｂの入力にはｅＷｒｉｔｅ＜０＞が接続され、出力はＭＸ４５ａの入力へ接続されている。
【０１３６】
さらに、ＦＦ４７ｃの入力にはｅＷｒｉｔｅ＜２＞が接続され、出力にはｅＷ２が接続されている。さらに、ＦＦ４７ｄの入力にはｅＷｒｉｔｅ＜３＞が接続され、出力にはｅＷ３が接続されている。
【０１３７】
さらに、Ｌａｔ４８ｃの入力にはｏＷｒｉｔｅ＜２＞が接続され、出力にはｏＷ２が接続されている。さらに、Ｌａｔ４８ｄの入力にはｏＷｒｉｔｅ＜３＞が接続され、出力にはｏＷ３が接続されている。
【０１３８】
入力レジスタ４９において、ｅＷｒｉｔｅ＜０：３＞にＦＦ４７ａ〜４７ｄを使用し、ｏＷｒｉｔｅ＜０：３＞にＬａｔ４８ａ〜４８ｄを使用しているのは、互いにクロック信号ｒｃｌｋの半周期分ずれているｅＷｒｉｔｅ＜０：３＞とｏＷｒｉｔｅ＜０：３＞を受信し、同じタイミングで８組の２ビットシリアルデータｅＷ０、ｅＷ１、ｏＷ０、ｏＷ１、ｅＷ２、ｅＷ３、ｏＷ２、およびｏＷ３を出力するためである。
【０１３９】
次に、上述した構成を持つ半導体記憶装置のデータ書き込み動作について説明する。
【０１４０】
図５は、本発明の実施例１に係わる半導体記憶装置の書き込み動作を示す波形図である。ここでは、一例として、ＤＱ＜０＞から入力したデータをセルアレイ１６ａへ書き込む場合の動作波形を示した。
【０１４１】
まず、制御回路１５はクロック信号ｒｃｌｋに同期してコマンドバスからWrite Commandを受信し、必要な制御信号を生成して各回路へ供給する。Write Commandにはセルアレイ１６ａ〜１６ｄにアクセスするためのアドレスも含まれている。
【０１４２】
データバスＤＱ＜０＞から入力された４ビットシリアルのWrite Dataは、入出力回路１３ａで、互いにｒｃｌｋの半周期分ずれた２組の２ビットシリアルデータに変換され、それぞれがシリアルデータバス線ｅＷｒｉｔｅ＜０＞およびｏＷｒｉｔｅ＜０＞へ出力される。
【０１４３】
次に、これらが入力レジスタ４９でタイミング調整され、ｒｃｌｋに同期してｅＷ０およびｏＷ０に出力される。この２ビットシリアルデータのうち最初のデータは、ｒｃｌｋに同期したラッチ信号ＷＧ１０１によってＬａｔ４３ｂおよび４３ｆに取り込まれ、データバス線ＷＤ＿０＜０＞およびＷＤ＿０＜１＞へ出力される。
【０１４４】
また、２ビットシリアルデータのうち２番目のデータは、ＷＧ１０１からｒｃｌｋの１周期分遅れたラッチ信号ＷＧ１２３によってＬａｔ４３ａおよび４３ｅに取り込まれ、データバス線ＷＤ＿０＜２＞およびＷＤ＿０＜３＞へ出力される。
【０１４５】
最後に、ＷＤ＿０＜０：３＞のテータが、ＩＯバッファ１７ａによってセルアレイ１６ａへ書き込まれる。
【０１４６】
図５のデータ書き込み動作においても、読み出し動作と同様に、内部データバスの信号伝搬と各回路ブロックでの処理時間が最適化されている。
【０１４７】
また、１６ビット／８ビット／４ビットの各モードは、上述したように、ＭＵＸ回路４２およびＭＵＸ回路４６での出力信号の振り分けによって実現され、この振り分けは、入出力回路１３ａがｅＷｒｉｔｅ＜０：３＞およびｏＷｒｉｔｅ＜０：３＞を出力する前に決定されている。
【０１４８】
したがって、図５に示した動作波形は、入出力データ幅には影響されない。
【０１４９】
図５は、ＤＱ＜０＞からの入力動作波形であるが、ＤＱ＜１＞〜ＤＱ＜３＞からの入力動作も同様である。
【０１５０】
以上説明した実施例１で重要なことは、ＭＵＸ回路２２および２６が２入力−１出力の選択回路で構成され、ＭＵＸ回路４２および４６が１入力−２出力の選択回路で構成されていることと、ＭＵＸ回路２６がシフトレジスタ２４と出力レジスタ２９の間に配置され、ＭＵＸ回路４６がライトレジスタ４４と入力レジスタ４９の間に配置されていることである。
【０１５１】
このようにＭＵＸ回路２２、２６、４２、および４６を分散配置することにより、データバス線ＲＤ＿０＜０：３＞〜ＲＤ＿３＜０：３＞およびＷＤ＿０＜０：３＞〜ＷＤ＿３＜０：３＞を引き回すことなく、入出力のデータ幅圧縮機能を実装することができる。
【０１５２】
上記実施例１によれば、データ幅圧縮機能の実装に際して、チップサイズの増加を抑制できるばかりでなく、データバス線およびＲＷレジスタ１２ａ、１２ｂでのオーバーヘッドを最小限に抑えることができ、高速なシリアル入出力が可能となる。
【実施例２】
【０１５３】
図６は、本発明の実施例２に係わる半導体記憶装置のＲレジスタを示す回路ブロック図である。
【０１５４】
なお、本実施例に係わる半導体記憶装置の全体回路ブロック図は、図１と同じである。
【０１５５】
本発明の実施例２に係わる半導体記憶装置のＲレジスタは、１６個のマスタースレーブ型フリップフロップ６１ａ〜６１ｓ（以下、「ＦＦ６１ａ〜６１ｓ」という。）からなるシフトレジスタ６２、４つの２入力−１出力選択回路６３ａ〜６３ｄ（以下、「ＭＸ６３ａ〜６３ｄ」という。）からなるマルチプレクサ回路６４（以下、「ＭＵＸ回路６４」という。）、４つのラッチ回路６５ａ〜６５ｄ（以下、Ｌａｔ６５ａ〜６５ｄという。）と４つのＦＦ６６ａ〜６６ｄからなる出力レジスタ６７、およびＭＸ６８ａと６８ｂからなるＭＵＸ回路６９を備えている。
【０１５６】
シフトレジスタ６２を構成するＦＦ６１ａ〜６１ｓは、２個が対になって８組の２ビット並列−直列変換回路を構成しており、それぞれのパラレル入力には、ＩＯバッファ１７ａ、１７ｂからの出力であるデータバス線ＲＤ＿０＜０：３＞〜ＲＤ＿３＜０：３＞が接続され、それぞれのシリアル出力は、ＭＵＸ回路６４および出力レジスタ６７へ供給されている。
【０１５７】
すなわち、ＦＦ６１ａのパラレル入力には、ＲＤ＿０＜２＞が接続され、ＦＦ６１ｂのパラレル入力には、ＲＤ＿０＜０＞が接続され、ＦＦ６１ｂのシリアル入力には、ＦＦ６１ａのシリアル出力が接続されている。ＦＦ６１ｂのシリアル出力ｅＲ０は、ＭＵＸ回路６４へ供給されている。
【０１５８】
また、ＦＦ６１ｃのパラレル入力には、ＲＤ＿１＜２＞が接続され、ＦＦ６１ｄのパラレル入力には、ＲＤ＿１＜０＞が接続され、ＦＦ６１ｄのシリアル入力には、ＦＦ６１ｃのシリアル出力が接続されている。ＦＦ６１ｄのシリアル出力ｅＲ１は、ＭＵＸ回路６４および出力レジスタ６７へ供給されている。
【０１５９】
さらに、ＦＦ６１ｅのパラレル入力には、ＲＤ＿０＜３＞が接続され、ＦＦ６１ｆのパラレル入力には、ＲＤ＿０＜１＞が接続され、ＦＦ６１ｆのシリアル入力には、ＦＦ６１ｅのシリアル出力が接続されている。ＦＦ６１ｆのシリアル出力ｏＲ０は、ＭＵＸ回路６４へ供給されている。
【０１６０】
さらに、ＦＦ６１ｇのパラレル入力には、ＲＤ＿１＜３＞が接続され、ＦＦ６１ｈのパラレル入力には、ＲＤ＿１＜１＞が接続され、ＦＦ６１ｈのシリアル入力には、ＦＦ６１ｇのシリアル出力が接続されている。ＦＦ６１ｈのシリアル出力ｏＲ１は、ＭＵＸ回路６４および出力レジスタ６７へ供給されている。
【０１６１】
さらに、ＦＦ６１ｋのパラレル入力には、ＲＤ＿２＜２＞が接続され、ＦＦ６１ｊのパラレル入力には、ＲＤ＿２＜０＞が接続され、ＦＦ６１ｊのシリアル入力には、ＦＦ６１ｋのシリアル出力が接続されている。ＦＦ６１ｊのシリアル出力ｅＲ２は、ＭＵＸ回路６４へ供給されている。
【０１６２】
さらに、ＦＦ６１ｎのパラレル入力には、ＲＤ＿３＜２＞が接続され、ＦＦ６１ｍのパラレル入力には、ＲＤ＿３＜０＞が接続され、ＦＦ６１ｍのシリアル入力には、ＦＦ６１ｎのシリアル出力が接続されている。ＦＦ６１ｍのシリアル出力ｅＲ３は、ＭＵＸ回路６４および出力レジスタ６７へ供給されている。
【０１６３】
さらに、ＦＦ６１ｑのパラレル入力には、ＲＤ＿２＜３＞が接続され、ＦＦ６１ｐのパラレル入力には、ＲＤ＿２＜１＞が接続され、ＦＦ６１ｐのシリアル入力には、ＦＦ６１ｑのシリアル出力が接続されている。ＦＦ６１ｐのシリアル出力ｏＲ２は、ＭＵＸ回路６４へ供給されている。
【０１６４】
さらに、ＦＦ６１ｓのパラレル入力には、ＲＤ＿３＜３＞が接続され、ＦＦ６１ｒのパラレル入力には、ＲＤ＿３＜１＞が接続され、ＦＦ６１ｒのシリアル入力には、ＦＦ６１ｓのシリアル出力が接続されている。ＦＦ６１ｒのシリアル出力ｏＲ３は、ＭＵＸ回路６４および出力レジスタ６７へ供給されている。
【０１６５】
シフトレジスタ６２は、１６ビットモードでは、ＩＯバッファ１７ａおよび１７ｂから受信した１６ビットの読み出しデータを８組の２ビットシリアルデータｅＲ０、ｅＲ１、ｏＲ０、ｏＲ１、ｅＲ２、ｅＲ３、ｏＲ２、およびｏＲ３に並列−直列変換する。
【０１６６】
ＭＵＸ回路６４を構成するＭＸ６３ａ〜６３ｄの入力には、シフトレジスタ６２からのシリアル出力が接続されており、ＭＸ６３ａ〜６３ｄの出力は出力レジスタ６７へ供給されている。
【０１６７】
すなわち、ＭＸ６３ａの入力には、ｅＲ０およびｅＲ１が接続され、ＭＸ６３ｂの入力には、ｏＲ０およびｏＲ１が接続され、ＭＸ６３ｃの入力には、ｅＲ２およびｅＲ３が接続され、ＭＸ６３ｄの入力には、ｏＲ２およびｏＲ３が接続されている。
【０１６８】
ＭＵＸ回路６４は、シフトレジスタ６２から受信したシリアル出力データを入出力データ幅と読み出しアドレスに基づいてマルチプレクスする。
【０１６９】
すなわち、１６ビットモードでは、読み出しアドレスにかかわりなく常に、ＭＸ６３ａは、ｅＲ０を選択して出力し、ＭＸ６３ｂは、ｏＲ０を選択して出力し、ＭＸ６３ｃは、ｅＲ２を選択して出力し、ＭＸ６３ｄは、ｏＲ２を選択して出力する。
【０１７０】
また、８ビットモードおよび４ビットモードでは、ＭＸ６３ａ〜６３ｄは、読み出しアドレスの上位ビットにしたがって、どちらかの入力を選択して出力する。表５は、それぞれのモードで、上位アドレスにしたがって、ＭＸ６３ａ〜６３ｄが選択する信号を示している。
【表５】
2005182939.tif 000007
【０１７１】
例えば、ＭＸ６３ａは、８ビットモードおよび４ビットモードでは、上位アドレスが“０”の場合にｅＲ０を選択して出力し、上位アドレスが“１”の場合にｅＲ１を選択して出力する。
【０１７２】
４ビットモードでは、１６ビットモードに比べ読み出しアドレスが２ビット多くなるが、表５では、２ビットのうち下位１ビットが上位アドレスとして示されている。残りの１ビットは後述するＭＵＸ回路６９で使用される。
【０１７３】
出力レジスタ６７は、シフトレジスタ６２およびＭＵＸ回路６４からのシリアル出力データを受信し、クロック信号ｔｃｌｋに同期してこれらをＭＵＸ回路６９、または、シリアルデータバス線ｅＲｅａｄ＜０：３＞およびｏＲｅａｄ＜０：３＞へ出力する。
【０１７４】
すなわち、ＦＦ６６ａの入力にはｏＲ１が接続され、出力にはｏＲｅａｄ＜１＞が接続されている。また、ＦＦ６６ｂの入力にはＭＸ６３ｂの出力が接続されており、出力はＭＵＸ回路６９へ供給されている。
【０１７５】
さらに、Ｌａｔ６５ａの入力にはｅＲ１が接続され、出力にはｅＲｅａｄ＜１＞が接続されている。さらに、Ｌａｔ６５ｂの入力にはＭＸ６３ａの出力が接続されており、出力はＭＵＸ回路６９へ供給されている。
【０１７６】
さらに、Ｌａｔ６５ｃの入力にはＭＸ６３ｃの出力が接続され、出力にはｅＲｅａｄ＜２＞が接続されている。さらに、Ｌａｔ６５ｄの入力にはｅＲ３が接続され、出力にはｅＲｅａｄ＜３＞が接続されている。
【０１７７】
さらに、ＦＦ６６ｃの入力にはＭＸ６３ｄの出力が接続され、出力にはｏＲｅａｄ＜２＞が接続されている。さらに、ＦＦ６６ｄの入力にはｏＲ３が接続され、出力にはｏＲｅａｄ＜３＞が接続されている。
【０１７８】
出力レジスタ６７において、ｅＲｅａｄ＜０：３＞にＬａｔ６５ａ〜６５ｄを使用し、ｏＲｅａｄ＜０：３＞にＦＦ６６ａ〜６６ｄを使用しているのは、ｏＲｅａｄ＜０：３＞をｅＲｅａｄ＜０：３＞からクロック信号ｔｃｌｋの半周期分遅らせるためである。
【０１７９】
ＭＵＸ回路６９を構成するＭＸ６８ａおよび６８ｂの入力には、出力レジスタ６７からのシリアル出力が接続され、出力には、シリアルデータバス線ｅＲｅａｄ＜０＞およびｏＲｅａｄ＜０＞が接続されている。
【０１８０】
すなわち、ＭＸ６８ａの入力には、Ｌａｔ６５ｂの出力およびｅＲｅａｄ＜２＞が接続され、ＭＸ６８ｂの入力には、ＦＦ６６ｂの出力およびｏＲｅａｄ＜２＞が接続されている。また、ＭＸ６８ａの出力には、ｅＲｅａｄ＜０＞が接続され、ＭＸ６８ｂの出力には、ｏＲｅａｄ＜０＞が接続されている。
【０１８１】
ＭＵＸ回路６９は、出力レジスタ６７から受信したデータを入出力データ幅と読み出しアドレスに基づいてマルチプレクスする。
【０１８２】
すなわち、１６ビットモードおよび８ビットモードでは、読み出しアドレスにかかわりなく常に、ＭＸ６８ａは、Ｌａｔ６５ｂからの出力を選択し、ＭＸ６８ｂは、ＦＦ６６ｂからの出力を選択する。
【０１８３】
また、４ビットモードでは、ＭＸ６８ａおよび６８ｂは、読み出しアドレスの上位ビットにしたがって、どちらかの入力を選択して出力する。表６は、４ビットモードで、上位アドレスにしたがって、ＭＸ６８ａおよび６８ｂが選択する信号を示している。
【表６】
2005182939.tif 000008
【０１８４】
例えば、ＭＸ６８ａは、４ビットモードでは、上位アドレスが“０”の場合にＬａｔ６５ｂの出力を選択し、上位アドレスが“１”の場合にｅＲｅａｄ＜２＞を選択する。
【０１８５】
上述したような構成を持つ半導体記憶装置のデータ読み出し動作は、実施例１と同様なので説明は省略する。
【０１８６】
１６ビット／８ビット／４ビットの各モードは、実施例１と同様に、ＭＵＸ回路６４およびＭＵＸ回路６９での入力の選択によって実現され、この選択は、ＩＯバッファ１７ａおよび１７ｂがＲＤ＿０＜０：３＞〜ＲＤ＿３＜０：３＞を出力する前に決定されている。
【０１８７】
次に、データ書き込み時に動作するＷレジスタについて説明する。
【０１８８】
図７は、本発明の実施例２に係わる半導体記憶装置のＷレジスタを示す回路ブロック図である。
【０１８９】
本発明の実施例２に係わる半導体記憶装置のＷレジスタは、１６個のＬａｔ７１ａ〜７１ｓからなるライトレジスタ７２、４つの１入力−２出力選択回路７３ａ〜７３ｄ（以下、「ＭＸ７３ａ〜７３ｄ」という。）からなるマルチプレクサ回路７４（以下、「ＭＵＸ回路７４」という。）、４つのＦＦ７５ａ〜７５ｄと４つのＬａｔ７６ａ〜７６ｄからなる入力レジスタ７７、およびＭＸ７８ａと７８ｂからなるＭＵＸ回路７９を備えている。
【０１９０】
ライトレジスタ７２を構成するＬａｔ７１ａ〜７１ｓは、２個が対になって８組の２ビット直列−並列変換回路を構成しており、それぞれの入力には、入力レジスタ７７からの出力、またはＭＵＸ回路７４からの出力が接続されている。また、それぞれの出力は、ＩＯバッファ１７ａ、１７ｂへ供給されている。
【０１９１】
すなわち、Ｌａｔ７１ａおよび７１ｂの入力には、ＭＵＸ回路７４からの出力ｅＷ０が接続され、Ｌａｔ７１ａの出力には、ＷＤ＿０＜２＞が接続され、Ｌａｔ７１ｂの出力には、ＷＤ＿０＜０＞が接続されている。
【０１９２】
また、Ｌａｔ７１ｃおよび７１ｄの入力には、入力レジスタ７７からの出力ｅＷ１が接続され、Ｌａｔ７１ｃの出力には、ＷＤ＿１＜２＞が接続され、Ｌａｔ７１ｄの出力には、ＷＤ＿１＜０＞が接続されている。
【０１９３】
さらに、Ｌａｔ７１ｅおよび７１ｆの入力には、ＭＵＸ回路７４からの出力ｏＷ０が接続され、Ｌａｔ７１ｅの出力には、ＷＤ＿０＜３＞が接続され、Ｌａｔ７１ｆの出力には、ＷＤ＿０＜１＞が接続されている。
【０１９４】
さらに、Ｌａｔ７１ｇおよび７１ｈの入力には、入力レジスタ７７からの出力ｏＷ１が接続され、Ｌａｔ７１ｇの出力には、ＷＤ＿１＜３＞が接続され、Ｌａｔ７１ｈの出力には、ＷＤ＿１＜１＞が接続されている。
【０１９５】
さらに、Ｌａｔ７１ｊおよび７１ｋの入力には、ＭＵＸ回路７４からの出力ｅＷ２が接続され、Ｌａｔ７１ｊの出力には、ＷＤ＿２＜０＞が接続され、Ｌａｔ７１ｋの出力には、ＷＤ＿２＜２＞が接続されている。
【０１９６】
さらに、Ｌａｔ７１ｍおよび７１ｎの入力には、入力レジスタ７７からの出力ｅＷ３が接続され、Ｌａｔ７１ｍの出力には、ＷＤ＿３＜０＞が接続され、Ｌａｔ７１ｎの出力には、ＷＤ＿３＜２＞が接続されている。
【０１９７】
さらに、Ｌａｔ７１ｐおよび７１ｑの入力には、ＭＵＸ回路７４からの出力ｏＷ２が接続され、Ｌａｔ７１ｐの出力には、ＷＤ＿２＜１＞が接続され、Ｌａｔ７１ｑの出力には、ＷＤ＿２＜３＞が接続されている。
【０１９８】
さらに、Ｌａｔ７１ｒおよび７１ｓの入力には、入力レジスタ７７からの出力ｏＷ３が接続され、Ｌａｔ７１ｒの出力には、ＷＤ＿３＜１＞が接続され、Ｌａｔ７１ｓの出力には、ＷＤ＿３＜３＞が接続されている。
【０１９９】
ライトレジスタ７２は、１６ビットモードでは、ＭＵＸ回路７４および入力レジスタ７７から受信した８組の２ビットシリアルデータｅＷ０、ｅＷ１、ｏＷ０、ｏＷ１、ｅＷ２、ｅＷ３、ｏＷ２、およびｏＷ３を１６ビットの書き込みデータに直列−並列変換する。
【０２００】
ＭＵＸ回路７４を構成するＭＸ７３ａ〜７３ｄの入力には、入力レジスタ７７からの出力が接続され、出力にはｅＷ０、ｅＷ１、ｏＷ０、ｏＷ１、ｅＷ２、ｅＷ３、ｏＷ２、およびｏＷ３が接続されている。
【０２０１】
すなわち、ＭＸ７３ａの入力には、入力レジスタ７７のＦＦ７５ｂの出力が接続され、ＭＸ７３ｂの入力には、入力レジスタ７７のＬａｔ７６ｂの出力が接続され、ＭＸ７３ｃの入力には、入力レジスタ７７のＦＦ７５ｃの出力が接続され、ＭＸ７３ｄの入力には、入力レジスタ７７のＬａｔ７６ｃの出力が接続されている。
【０２０２】
また、ＭＸ７３ａの一方の出力にはｅＷ０が接続され、他方の出力にはｅＷ１が接続され、ＭＸ７３ｂの一方の出力にはｏＷ０が接続され、他方の出力にはｏＷ１が接続されている。
【０２０３】
さらに、ＭＸ７３ｃの一方の出力にはｅＷ２が接続され、他方の出力にはｅＷ３が接続され、ＭＸ７３ｄの一方の出力にはｏＷ２が接続され、他方の出力にはｏＷ３が接続されている。
【０２０４】
ＭＵＸ回路７４は、入力レジスタ７７から受信した入力データを入出力データ幅と書き込みアドレスに基づいて振り分ける。
【０２０５】
すなわち、１６ビットモードでは、書き込みアドレスにかかわりなく常に、ＭＸ７３ａはｅＷ０へ出力し、ＭＸ７３ｂはｏＷ０へ出力し、ＭＸ７３ｃはｅＷ２へ出力し、ＭＸ７３ｄはｏＷ２へ出力する。
【０２０６】
また、８ビットモードおよび４ビットモードでは、ＭＸ７３ａ〜７３ｄは、書き込みアドレスの上位ビットにしたがって、どちらかを選択して入力データを出力する。表７は、それぞれのモードで、ＭＸ７３ａ〜７３ｄが上位アドレスにしたがって選択する出力先を示している。
【表７】
2005182939.tif 000009
【０２０７】
例えば、ＭＸ７３ａは、８ビットモードおよび４ビットモードでは、上位アドレスが“０”の場合にｅＷ０を選択して出力し、上位アドレスが“１”の場合にｅＷ１を選択して出力する。
【０２０８】
Ｒレジスタと同様に、表７の４ビットモードでは、増えた２ビットのうち下位１ビットが上位アドレスとして示されている。残りの１ビットは後述するＭＵＸ回路７９で使用される。
【０２０９】
入力レジスタ７７は、ＭＵＸ回路７９、または、シリアルデータバス線ｅＷｒｉｔｅ＜０：３＞およびｏＷｒｉｔｅ＜０：３＞からシリアル入力データを受信し、クロック信号ｒｃｌｋに同期してこれらをライトレジスタ７２およびＭＵＸ回路７４へ出力する。
【０２１０】
すなわち、Ｌａｔ７６ａの入力にはｏＷｒｉｔｅ＜１＞が接続され、出力にはｏＷ１が接続されている。また、Ｌａｔ７６ｂの入力にはＭＸ７８ｂからの出力が接続され、出力はＭＸ７３ｂの入力へ接続されている。
【０２１１】
さらに、ＦＦ７５ａの入力にはｅＷｒｉｔｅ＜１＞が接続され、出力にはｅＷ１が接続されている。さらに、ＦＦ７５ｂの入力にはＭＸ７８ａからの出力が接続され、出力はＭＸ７３ａの入力へ接続されている。
【０２１２】
さらに、ＦＦ７５ｃの入力にはｅＷｒｉｔｅ＜２＞が接続され、出力はＭＸ７３ｃの入力へ接続されている。さらに、ＦＦ７５ｄの入力にはｅＷｒｉｔｅ＜３＞が接続され、出力にはｅＷ３が接続されている。
【０２１３】
さらに、Ｌａｔ７６ｃの入力にはｏＷｒｉｔｅ＜２＞が接続され、出力はＭＸ７３ｄの入力へ接続されている。さらに、Ｌａｔ７６ｄの入力にはｏＷｒｉｔｅ＜３＞が接続され、出力にはｏＷ３が接続されている。
【０２１４】
ここで、ｏＷ１には、ＭＸ７３ｂの出力およびＬａｔ７６ａの出力が両方とも接続されているが、これらが同時にデータを出力することはないので問題はない。以下、複数の出力が接続されているノードはすべて同様である。
【０２１５】
入力レジスタ７７において、ｅＷｒｉｔｅ＜０：３＞にＦＦ７５ａ〜７５ｄを使用し、ｏＷｒｉｔｅ＜０：３＞にＬａｔ７６ａ〜７６ｄを使用しているのは、互いにクロック信号ｒｃｌｋの半周期分ずれているｅＷｒｉｔｅ＜０：３＞とｏＷｒｉｔｅ＜０：３＞を受信し、同じタイミングで８組の２ビットシリアルデータｅＷ０、ｅＷ１、ｏＷ０、ｏＷ１、ｅＷ２、ｅＷ３、ｏＷ２、およびｏＷ３を出力するためである。
【０２１６】
ＭＵＸ回路７９を構成するＭＸ７８ａおよび７８ｂの出力には、シリアルデータバス線ｅＷｒｉｔｅ＜０＞およびｏＷｒｉｔｅ＜０＞が接続され、入力は、入力レジスタ７７から供給されている。
【０２１７】
すなわち、ＭＸ７８ａの出力には、ＦＦ７５ｂの入力およびｅＷｒｉｔｅ＜２＞が接続され、入力には、ｅＷｒｉｔｅ＜０＞が接続されている。
【０２１８】
また、ＭＸ７８ｂの出力には、Ｌａｔ７６ｂの入力およびｏＷｒｉｔｅ＜２＞が接続され、入力には、ｏＷｒｉｔｅ＜０＞が接続されている。
【０２１９】
ＭＵＸ回路７９は、シリアルデータバス線ｅＷｒｉｔｅ＜０＞およびｏＷｒｉｔｅ＜０＞から受信したデータを入出力データ幅と書き込みアドレスに基づいて振り分ける。
【０２２０】
すなわち、１６ビットモードおよび８ビットモードでは、書き込みアドレスにかかわりなく常に、ＭＸ７８ａはＦＦ７５ｂの入力へ出力し、ＭＸ７８ｂはＬａｔ７６ｂの入力へ出力する。
【０２２１】
また、４ビットモードでは、ＭＸ７８ａおよび７８ｂは、書き込みアドレスの上位ビットにしたがって、どちらかの出力を選択して入力データを出力する。表８は、４ビットモードで、上位アドレスにしたがって、ＭＸ７８ａおよび７８ｂが選択する出力先を示している。
【表８】
2005182939.tif 000010
【０２２２】
例えば、ＭＸ７８ａは、４ビットモードでは、上位アドレスが“０”の場合にＦＦ７５ｂの入力へ出力し、上位アドレスが“１”の場合にＦＦ７５ｃの入力、つまり、ｅＷｒｉｔｅ＜２＞へ出力する。
【０２２３】
上述したような構成を持つ半導体記憶装置のデータ書き込み動作は、実施例１と同様なので説明は省略する。
【０２２４】
１６ビット／８ビット／４ビットの各モードは、実施例１と同様に、ＭＵＸ回路７４およびＭＵＸ回路７９での出力の選択によって実現され、この選択は、入出力回路１３ａがｅＷｒｉｔｅ＜０：３＞およびｏＷｒｉｔｅ＜０：３＞を出力する前に決定されている。
【０２２５】
以上説明した実施例２で重要なことは、ＭＵＸ回路６４および６９が２入力−１出力の選択回路で構成され、ＭＵＸ回路７４および７９が１入力−２出力の選択回路で構成されていることと、ＭＵＸ回路６４がシフトレジスタ６２と出力レジスタ６７の間に配置され、ＭＵＸ回路７４がライトレジスタ７２と入力レジスタ７７の間に配置されていることである。
【０２２６】
これにより、実施例１と同様に、データバス線ＲＤ＿０＜０：３＞〜ＲＤ＿３＜０：３＞およびＷＤ＿０＜０：３＞〜ＷＤ＿３＜０：３＞を引き回さずに、入出力のデータ幅圧縮機能を実装できる。
【０２２７】
実施例１との違いは、ＩＯバッファ１７ａ、１７ｂとの間にＭＵＸ回路２２および４２を入れる代わりに、ＭＵＸ回路６４および７４によって隣り合うデータバス線に相当するデータのマルチプレクスを行うことと、ＭＵＸ回路６９および７９をシリアルデータバス線に入れていることである。
【０２２８】
こうすることで、データバス線ＲＤ＿０＜０：３＞〜ＲＤ＿３＜０：３＞およびＷＤ＿０＜０：３＞〜ＷＤ＿３＜０：３＞での配線容量およびＭＵＸ回路２２および４２での入力容量による配線負荷を実施例１に比べさらに抑制することができる。
【０２２９】
したがって、上記実施例２は、データバス線での配線遅延がボトルネックとなるような半導体記憶装置で非常に有効である。
【実施例３】
【０２３０】
次に、入出力のデータ幅を１６ビット／８ビット／４ビット／２ビットで切り替えることのできるデータ幅圧縮機能を持った半導体記憶装置について説明する。
【０２３１】
図８は、本発明の実施例３に係わる半導体記憶装置のＲレジスタを示す回路ブロック図である。ここでは、主に、ｅＲｅａｄ＜０＞〜ｅＲｅａｄ＜７＞に係わる部分を示した。ｏＲｅａｄ＜０＞〜ｏＲｅａｄ＜７＞については、図８と同様なので説明は省略する。
【０２３２】
なお、本実施例に係わる半導体記憶装置の全体回路ブロック図は、図１と同様である。実施例１との違いは、ＲＷレジスタ１２ａおよび１２ｂが、以下に説明するように、１つの回路ブロックとして実装されていることである。
【０２３３】
本発明の実施例３に係わる半導体記憶装置のＲレジスタは、８つの２入力−１出力選択回路８１ａ〜８１ｈ（以下、「ＭＸ８１ａ〜８１ｈ」という。）からなるマルチプレクサ回路８２（以下、「ＭＵＸ回路８２」という。）、１６個のマスタースレーブ型フリップフロップ８３ａ〜８３ｓ（以下、「ＦＦ８３ａ〜８３ｓ」という。）からなるシフトレジスタ８４、２つのＭＸ８５ａ、８５ｂからなるＭＵＸ回路８６、８つのラッチ回路８７ａ〜８７ｈ（以下、Ｌａｔ８７ａ〜８７ｈという。）からなる出力レジスタ８８、およびＭＸ８９を備えている。
【０２３４】
ＭＵＸ回路８２およびシフトレジスタ８４の構成は、実施例１のＭＵＸ回路２２およびシフトレジスタ２４と同様である。実施例１との違いは、ＭＵＸ回路８２およびシフトレジスタ８４に入力されるデータバス線の組み合わせ方と、それに伴う、シフトレジスタ８４の出力信号である。
【０２３５】
言葉を換えていえば、データ読み出しにおけるカラムアドレスのアドレススクランブルが、実施例１と異なっている。
【０２３６】
すなわち、ＭＸ８１ａの入力には、ＲＤ＿２＜２＞およびＲＤ＿３＜２＞が接続され、ＭＸ８１ｂの入力には、ＲＤ＿０＜２＞およびＲＤ＿１＜２＞が接続され、ＭＸ８１ｃの入力には、ＲＤ＿２＜０＞およびＲＤ＿３＜０＞が接続され、ＭＸ８１ｄの入力には、ＲＤ＿０＜０＞およびＲＤ＿１＜０＞が接続され、ＭＸ８１ｅの入力には、ＲＤ＿４＜０＞およびＲＤ＿５＜０＞が接続され、ＭＸ８１ｆの入力には、ＲＤ＿６＜０＞およびＲＤ＿７＜０＞が接続され、ＭＸ８１ｇの入力には、ＲＤ＿４＜２＞およびＲＤ＿５＜２＞が接続され、ＭＸ８１ｈの入力には、ＲＤ＿６＜２＞およびＲＤ＿７＜２＞が接続されている。
【０２３７】
ＭＵＸ回路８２は、ＩＯバッファ１７ａ〜１７ｄから受信した読み出しデータを入出力データ幅と読み出しアドレスに基づいてマルチプレクスする。
【０２３８】
すなわち、１６ビットモードでは、読み出しアドレスにかかわりなく常に、ＭＸ８１ａは、ＲＤ＿２＜２＞を選択して出力し、ＭＸ８１ｂは、ＲＤ＿０＜２＞を選択して出力し、ＭＸ８１ｃは、ＲＤ＿２＜０＞を選択して出力し、ＭＸ８１ｄは、ＲＤ＿０＜０＞を選択して出力し、ＭＸ８１ｅは、ＲＤ＿４＜０＞を選択して出力し、ＭＸ８１ｆは、ＲＤ＿６＜０＞を選択して出力し、ＭＸ８１ｇは、ＲＤ＿４＜２＞を選択して出力し、ＭＸ８１ｈは、ＲＤ＿６＜２＞を選択して出力する。
【０２３９】
また、８ビットモード、４ビットモード、および２ビットモードでは、ＭＸ８１ａ〜８１ｈは、読み出しアドレスの上位ビットにしたがって、どちらかの入力を選択して出力する。表９は、それぞれのモードで、上位アドレスにしたがって、ＭＸ８１ａ〜８１ｈが選択するデータバス線を示している。
【表９】
2005182939.tif 000011
【０２４０】
例えば、ＭＸ８１ａは、８ビットモード、４ビットモード、および２ビットモードでは、上位アドレスが“０”の場合にＲＤ＿２＜２＞を選択して出力し、上位アドレスが“１”の場合にＲＤ＿３＜２＞を選択して出力する。
【０２４１】
４ビットモードでは、１６ビットモードに比べ読み出しアドレスが２ビット多くなるが、表９では、２ビットのうち下位１ビットが上位アドレスとして示されている。残りの１ビットは後述するＭＵＸ回路８６で使用される。
【０２４２】
また、２ビットモードでは、１６ビットモードに比べ読み出しアドレスが３ビット多くなるが、表９では、３ビットのうち最下位１ビットが上位アドレスとして示されている。残りの２ビットは後述するＭＵＸ回路８６およびＭＸ８９でそれぞれ使用される。
【０２４３】
シフトレジスタ８４の接続も、実施例１と異なっている。
【０２４４】
すなわち、ＦＦ８３ａのパラレル入力には、ＭＸ８１ｂの出力が接続され、ＦＦ８３ｂのパラレル入力には、ＭＸ８１ｄの出力が接続され、ＦＦ８３ｂのシリアル入力には、ＦＦ８３ａのシリアル出力が接続されている。ＦＦ８３ｂのシリアル出力ｅＲ０は、ＭＵＸ回路８６へ供給されている。
【０２４５】
また、ＦＦ８３ｃのパラレル入力には、ＲＤ＿１＜２＞が接続され、ＦＦ８３ｄのパラレル入力には、ＲＤ＿１＜０＞が接続され、ＦＦ８３ｄのシリアル入力には、ＦＦ８３ｃのシリアル出力が接続されている。ＦＦ８３ｄのシリアル出力ｅＲ１は、出力レジスタ８８へ供給されている。
【０２４６】
さらに、ＦＦ８３ｅのパラレル入力には、ＭＸ８１ａの出力が接続され、ＦＦ８３ｆのパラレル入力には、ＭＸ８１ｃの出力が接続され、ＦＦ８３ｆのシリアル入力には、ＦＦ８３ｅのシリアル出力が接続されている。ＦＦ８３ｆのシリアル出力ｅＲ２は、ＭＵＸ回路８６および出力レジスタ８８へ供給されている。
【０２４７】
さらに、ＦＦ８３ｇのパラレル入力には、ＲＤ＿３＜２＞が接続され、ＦＦ８３ｈのパラレル入力には、ＲＤ＿３＜０＞が接続され、ＦＦ８３ｈのシリアル入力には、ＦＦ８３ｇのシリアル出力が接続されている。ＦＦ８３ｈのシリアル出力ｅＲ３は、出力レジスタ８８へ供給されている。
【０２４８】
さらに、ＦＦ８３ｋのパラレル入力には、ＭＸ８１ｇの出力が接続され、ＦＦ８３ｊのパラレル入力には、ＭＸ８１ｅの出力が接続され、ＦＦ８３ｊのシリアル入力には、ＦＦ８３ｋのシリアル出力が接続されている。ＦＦ８３ｊのシリアル出力ｅＲ４は、ＭＵＸ回路８６へ供給されている。
【０２４９】
さらに、ＦＦ８３ｎのパラレル入力には、ＲＤ＿５＜２＞が接続され、ＦＦ８３ｍのパラレル入力には、ＲＤ＿５＜０＞が接続され、ＦＦ８３ｍのシリアル入力には、ＦＦ８３ｎのシリアル出力が接続されている。ＦＦ８３ｍのシリアル出力ｅＲ５は、ＭＵＸ回路８６へ供給されている。
【０２５０】
さらに、ＦＦ８３ｑのパラレル入力には、ＭＸ８１ｈの出力が接続され、ＦＦ８３ｐのパラレル入力には、ＭＸ８１ｆの出力が接続され、ＦＦ８３ｐのシリアル入力には、ＦＦ８３ｑのシリアル出力が接続されている。ＦＦ８３ｐのシリアル出力ｅＲ６は、ＭＵＸ回路８６および出力レジスタ８８へ供給されている。
【０２５１】
さらに、ＦＦ８３ｓのパラレル入力には、ＲＤ＿７＜２＞が接続され、ＦＦ８３ｒのパラレル入力には、ＲＤ＿７＜０＞が接続され、ＦＦ８３ｒのシリアル入力には、ＦＦ８３ｓのシリアル出力が接続されている。ＦＦ８３ｒのシリアル出力ｅＲ７は、出力レジスタ８８へ供給されている。
【０２５２】
シフトレジスタ８４は、１６ビットモードでは、ＩＯバッファ１７ａ〜１７ｄから受信した１６ビットの読み出しデータを８組の２ビットシリアルデータｅＲ０〜ｅＲ７に並列−直列変換する。
【０２５３】
ＭＵＸ回路８６を構成するＭＸ８５ａおよび８５ｂの入力には、シフトレジスタ８４からのシリアル出力が接続されており、ＭＸ８５ａおよび８５ｂの出力は出力レジスタ８８へ供給されている。
【０２５４】
すなわち、ＭＸ８５ａの入力には、ｅＲ０およびｅＲ２が接続され、ＭＸ８５ｂの入力には、ｅＲ４４およびｅＲ６が接続されている。
【０２５５】
ＭＵＸ回路８６は、シフトレジスタ８４から受信したシリアル出力データを入出力データ幅と読み出しアドレスに基づいてマルチプレクスする。
【０２５６】
すなわち、１６ビットモードおよび８ビットモードでは、読み出しアドレスにかかわりなく常に、ＭＸ８５ａは、ｅＲ０を選択して出力し、ＭＸ８５ｂはｅＲ４を選択して出力する。
【０２５７】
また、４ビットモードおよび２ビットモードでは、ＭＸ８５ａおよび８５ｂは、読み出しアドレスの上位ビットにしたがって、どちらかの入力を選択して出力する。表１０は、それぞれのモードで、上位アドレスにしたがって、ＭＸ８５ａおよび８５ｄが選択する信号を示している。
【表１０】
2005182939.tif 000012
【０２５８】
例えば、ＭＸ８５ａは、４ビットモードおよび２ビットモードでは、上位アドレスが“０”の場合にｅＲ０を選択して出力し、上位アドレスが“１”の場合にｅＲ２を選択して出力する。
【０２５９】
４ビットモードでは、１６ビットモードに比べ読み出しアドレスが２ビット多くなるが、表１０では、２ビットのうち上位１ビットが上位アドレスとして示されている。
【０２６０】
また、２ビットモードでは、１６ビットモードに比べ読み出しアドレスが３ビット多くなるが、表１０では、３ビットのうち２ビット目が上位アドレスとして示されている。残りの上位１ビットは、後述するＭＸ８９で使用される。
【０２６１】
出力レジスタ８８は、シフトレジスタ８４およびＭＵＸ回路８６からのシリアル出力データを受信し、クロック信号ｔｃｌｋに同期してこれらをＭＵＸ回路８９、または、シリアルデータバス線ｅＲｅａｄ＜０：７＞へ出力する。
【０２６２】
すなわち、Ｌａｔ８７ａの入力にはｅＲ３が接続され、出力にはｅＲｅａｄ＜３＞が接続されている。また、Ｌａｔ８７ｂの入力にはｅＲ２が接続され、出力にはｅＲｅａｄ＜１＞が接続されている。
【０２６３】
さらに、Ｌａｔ８７ｃの入力にはｅＲ１が接続され、出力にはｅＲｅａｄ＜２＞が接続されている。さらに、Ｌａｔ８７ｄの入力にはＭＸ８５ａの出力が接続され、出力にはＭＸ８９の一方の入力が接続されている。
【０２６４】
さらに、Ｌａｔ８７ｅの入力にはＭＸ８５ｂの出力が接続され、出力にはｅＲｅａｄ＜４＞が接続されている。さらに、Ｌａｔ８７ｆの入力にはｅＲ５が接続され、出力にはｅＲｅａｄ＜６＞が接続されている。
【０２６５】
さらに、Ｌａｔ８７ｇの入力にはｅＲ６が接続され、出力にはｅＲｅａｄ＜５＞が接続されている。さらに、Ｌａｔ８７ｈの入力にはｅＲ７が接続され、出力にはｅＲｅａｄ＜７＞が接続されている。
【０２６６】
ＭＸ８９の入力には、Ｌａｔ８７ｄの出力およびｅＲｅａｄ＜４＞が接続され、出力には、ｅＲｅａｄ＜０＞が接続されている。
【０２６７】
ＭＸ８９は、出力レジスタ８８から受信したデータを入出力データ幅と読み出しアドレスに基づいてマルチプレクスする。
【０２６８】
すなわち、１６ビットモード、８ビットモード、および４ビットモードでは、読み出しアドレスにかかわりなく常に、ＭＸ８９は、Ｌａｔ８７ｄからの出力を選択する。
【０２６９】
また、２ビットモードでは、ＭＸ８９は、上位アドレスが“０”の場合にＬａｔ８７ｄの出力を選択し、上位アドレスが“１”の場合にＬａｔ８７ｅの出力、つまり、ｅＲｅａｄ＜４＞を選択する。
【０２７０】
上述したような構成を持つ半導体記憶装置のデータ読み出し動作は、実施例１と同様なので説明は省略する。
【０２７１】
１６ビット／８ビット／４ビット／２ビットの各モードは、実施例１と同様に、ＭＵＸ回路８２、ＭＵＸ回路８６、およびＭＸ８９での入力の選択によって実現され、この選択は、ＩＯバッファ１７ａ〜１７ｄがＲＤ＿０＜０：３＞〜ＲＤ＿７＜０：３＞を出力する前に決定されている。
【０２７２】
次に、データ書き込み時に動作するＷレジスタについて説明する。
【０２７３】
図９は、本発明の実施例３に係わる半導体記憶装置のＷレジスタを示す回路ブロック図である。図８と同様に、ここでは、主に、ｅＷｒｉｔｅ＜０＞〜ｅＷｒｉｔｅ＜７＞に係わる部分を示した。
【０２７４】
本発明の実施例３に係わる半導体記憶装置のＷレジスタは、８つの１入力−２出力選択回路９１ａ〜９１ｈ（以下、「ＭＸ９１ａ〜９１ｈ」という。）からなるマルチプレクサ回路９２（以下、「ＭＵＸ回路９２」という。）、１６個のＬａｔ９３ａ〜９３ｓからなるライトレジスタ９４、２つのＭＸ９５ａおよび９５ｂからなるＭＵＸ回路９６、８つのＬａｔ９７ａ〜９７ｈからなる入力レジスタ９８、およびＭＸ９９を備えている。
【０２７５】
ＭＵＸ回路９２およびライトレジスタ９４の構成は、実施例１のＭＵＸ回路４２およびライトレジスタ４４と同様である。実施例１との違いは、ＭＵＸ回路９２およびライトレジスタ９４から出力されるデータバス線の組み合わせ方と、ライトレジスタ９４への入力信号である。
【０２７６】
言葉を換えていえば、データ書き込みにおけるカラムアドレスのアドレススクランブルが、実施例１と異なっている。
【０２７７】
すなわち、ＭＸ９１ａの出力には、ＷＤ＿３＜２＞およびＷＤ＿２＜２＞が接続され、ＭＸ９１ｂの出力には、ＷＤ＿１＜２＞およびＷＤ＿０＜２＞が接続され、ＭＸ９１ｃの出力には、ＷＤ＿３＜０＞およびＷＤ＿２＜０＞が接続され、ＭＸ９１ｄの出力には、ＷＤ＿１＜０＞およびＷＤ＿０＜０＞が接続され、ＭＸ９１ｅの出力には、ＷＤ＿４＜０＞およびＷＤ＿５＜０＞が接続され、ＭＸ９１ｆの出力には、ＷＤ＿６＜０＞およびＷＤ＿７＜０＞が接続され、ＭＸ９１ｇの出力には、ＷＤ＿４＜２＞およびＷＤ＿５＜２＞が接続され、ＭＸ９１ｈの出力には、ＷＤ＿６＜２＞およびＷＤ＿７＜２＞が接続されている。
【０２７８】
ＭＵＸ回路９２は、ＩＯバッファ１７ａ〜１７ｄへの書き込みデータを入出力データ幅と書き込みアドレスに基づいて振り分ける。
【０２７９】
すなわち、１６ビットモードでは、書き込みアドレスにかかわりなく常に、ＭＸ９１ａはＷＤ＿２＜２＞へ出力し、ＭＸ９１ｂはＷＤ＿０＜２＞へ出力し、ＭＸ９１ｃはＷＤ＿２＜０＞へ出力し、ＭＸ９１ｄはＷＤ＿０＜０＞へ出力し、ＭＸ９１ｅはＷＤ＿４＜０＞へ出力し、ＭＸ９１ｆはＷＤ＿６＜０＞へ出力し、ＭＸ９１ｇはＷＤ＿４＜２＞へ出力し、ＭＸ９１ｈはＷＤ＿６＜２＞へ出力する。
【０２８０】
また、８ビットモード、４ビットモード、および２ビットモードでは、ＭＸ９１ａ〜９１ｈは、書き込みアドレスの上位ビットにしたがって、どちらかの出力を選択して入力データを出力する。表１１は、それぞれのモードで、ＭＸ９１ａ〜９１ｈが上位アドレスにしたがって入力データを出力するデータバス線を示している。
【表１１】
2005182939.tif 000013
【０２８１】
例えば、ＭＸ９１ａは、８ビットモード、４ビットモード、および２ビットモードでは、上位アドレスが“０”の場合にＷＤ＿２＜２＞へ入力データを出力し、上位アドレスが“１”の場合にＷＤ＿３＜２＞へ入力データを出力する。
【０２８２】
Ｒレジスタと同様に、表１１の４ビットモードでは、増えた２ビットのうち下位１ビットが上位アドレスとして示されている。残りの１ビットは後述するＭＵＸ回路９６で使用される。
【０２８３】
同様に、表１１の２ビットモードでは、増えた３ビットのうち最下位１ビットが上位アドレスとして示されている。残りの２ビットは後述するＭＵＸ回路９６およびＭＸ９９でそれぞれ使用される。
【０２８４】
ライトレジスタ９４の接続も、実施例１と異なっている。
【０２８５】
すなわち、Ｌａｔ９３ａおよび９３ｂの入力には、ＭＵＸ回路９６からの出力ｅＷ０が接続され、Ｌａｔ９３ａの出力には、ＭＸ９１ｂの入力が接続され、Ｌａｔ９３ｂの出力には、ＭＸ９１ｄの入力が接続されている。
【０２８６】
また、Ｌａｔ９３ｃおよび９３ｄの入力には、入力レジスタ９８からの出力ｅＷ１が接続され、Ｌａｔ９３ｃの出力には、ＷＤ＿１＜２＞が接続され、Ｌａｔ９３ｄの出力には、ＷＤ＿１＜０＞が接続されている。
【０２８７】
さらに、Ｌａｔ９３ｅおよび９３ｆの入力には、ＭＵＸ回路９６からの出力ｅＷ２が接続され、Ｌａｔ９３ｅの出力には、ＭＸ９１ａの入力が接続され、Ｌａｔ９３ｆの出力には、ＭＸ９１ｃの入力が接続されている。
【０２８８】
さらに、Ｌａｔ９３ｇおよび９３ｈの入力には、入力レジスタ９８からの出力ｅＷ３が接続され、Ｌａｔ９３ｇの出力には、ＷＤ＿３＜２＞が接続され、Ｌａｔ９３ｈの出力には、ＷＤ＿３＜０＞が接続されている。
【０２８９】
さらに、Ｌａｔ９３ｊおよび９３ｋの入力には、ＭＵＸ回路９６からの出力ｅＷ４が接続され、Ｌａｔ９３ｊの出力には、ＭＸ９１ｅの入力が接続され、Ｌａｔ９３ｋの出力には、ＭＸ９１ｇの入力が接続されている。
【０２９０】
さらに、Ｌａｔ９３ｍおよび９３ｎの入力には、入力レジスタ９８からの出力ｅＷ５が接続され、Ｌａｔ９３ｍの出力には、ＷＤ＿５＜０＞が接続され、Ｌａｔ９３ｎの出力には、ＷＤ＿５＜２＞が接続されている。
【０２９１】
さらに、Ｌａｔ９３ｐおよび９３ｑの入力には、ＭＵＸ回路９６からの出力ｅＷ６が接続され、Ｌａｔ９３ｐの出力には、ＭＸ９１ｆの入力が接続され、Ｌａｔ９３ｑの出力には、ＭＸ９１ｈの入力が接続されている。
【０２９２】
さらに、Ｌａｔ９３ｒおよび９３ｓの入力には、入力レジスタ９８からの出力ｅＷ７が接続され、Ｌａｔ９３ｒの出力には、ＷＤ＿７＜０＞が接続され、Ｌａｔ９３ｓの出力には、ＷＤ＿７＜２＞が接続されている。
【０２９３】
ライトレジスタ９４は、１６ビットモードでは、ＭＵＸ回路９６および入力レジスタ９８から受信した８組の２ビットシリアルデータｅＷ０〜ｅＷ７を１６ビットの書き込みデータに直列−並列変換する。
【０２９４】
ＭＵＸ回路９６を構成するＭＸ９５ａおよび９５ｂの入力には、入力レジスタ９８からの出力が接続され、出力にはｅＷ０、ｅＷ２、ｅＷ４、およびｅＷ６が接続されている。
【０２９５】
すなわち、ＭＸ９５ａの入力には、入力レジスタ９８のＦＦ９７ｄの出力が接続され、ＭＸ９５ｂの入力には、入力レジスタ９８のＦＦ９７ｅの出力が接続されている。
【０２９６】
また、ＭＸ９５ａの一方の出力にはｅＷ０が接続され、他方の出力にはｅＷ２が接続され、ＭＸ９５ｂの一方の出力にはｅＷ４が接続され、他方の出力にはｅＷ６が接続されている。
【０２９７】
ＭＵＸ回路９６は、入力レジスタ９８から受信した入力データを入出力データ幅と書き込みアドレスに基づいて振り分ける。
【０２９８】
すなわち、１６ビットモードおよび８ビットモードでは、書き込みアドレスにかかわりなく常に、ＭＸ９５ａはｅＷ０へ出力し、ＭＸ９５ｂはｅＷ４へ出力する。
【０２９９】
また、４ビットモードおよび２ビットモードでは、ＭＸ９５ａおよび９５ｂは、書き込みアドレスの上位ビットにしたがって、どちらかを選択して入力データを出力する。表１２は、それぞれのモードで、ＭＸ９５ａおよび９５ｂが上位アドレスにしたがって選択する出力先を示している。
【表１２】
2005182939.tif 000014
【０３００】
例えば、ＭＸ９５ａは、４ビットモードおよび２ビットモードでは、上位アドレスが“０”の場合にｅＷ０を選択して出力し、上位アドレスが“１”の場合にｅＷ２を選択して出力する。
【０３０１】
Ｒレジスタと同様に、表１２の４ビットモードでは、増えた２ビットのうち上位１ビットが上位アドレスとして示されている。
【０３０２】
同様に、表１２の２ビットモードでは、増えた３ビットのうち２ビット目が上位アドレスとして示されている。残りの上位１ビットは、後述するＭＸ８９で使用される。
【０３０３】
入力レジスタ９８は、ＭＸ９９、または、シリアルデータバス線ｅＷｒｉｔｅ＜０：７＞からシリアル入力データを受信し、クロック信号ｒｃｌｋに同期してこれらをライトレジスタ９４およびＭＵＸ回路９６へ出力する。
【０３０４】
すなわち、ＦＦ９７ａの入力にはｅＷｒｉｔｅ＜３＞が接続され、出力にはｅＷ３が接続されている。また、ＦＦ９７ｂの入力にはｅＷｒｉｔｅ＜１＞が接続され、出力にはｅＷ２接続されている。
【０３０５】
さらに、ＦＦ９７ｃの入力にはｅＷｒｉｔｅ＜２＞が接続され、出力にはｅＷ１が接続されている。さらに、ＦＦ９７ｄの入力にはＭＸ９９からの一方の出力が接続され、出力はＭＸ９５ａの入力へ接続されている。
【０３０６】
さらに、ＦＦ９７ｅの入力にはｅＷｒｉｔｅ＜４＞が接続され、出力はＭＸ９５ｂの入力へ接続されている。さらに、ＦＦ９７ｆの入力にはｅＷｒｉｔｅ＜６＞が接続され、出力にはｅＷ５が接続されている。
【０３０７】
さらに、ＦＦ９７ｇの入力にはｅＷｒｉｔｅ＜５＞が接続され、出力にはｅＷ５が接続されている。さらに、ＦＦ９７ｈの入力にはｅＷｒｉｔｅ＜７＞が接続され、出力にはｅＷ７が接続されている。
【０３０８】
ここで、ｅＷ２には、ＭＸ９５ａの出力およびＦＦ９７ｂの出力が両方とも接続されているが、これらが同時にデータを出力することはないので問題はない。以下、複数の出力が接続されているノードはすべて同様である。
【０３０９】
ＭＸ９９の入力には、シリアルデータバス線ｅＷｒｉｔｅ＜０＞が接続され、一方の出力には、ＦＦ９７ｄの入力が接続され、他方の出力には、ＦＦ９７ｅの入力、つまり、ｅＷｒｉｔｅ＜４＞が接続されている。
【０３１０】
ＭＸ９９は、シリアルデータバス線ｅＷｒｉｔｅ＜０＞から受信したデータを入出力データ幅と書き込みアドレスに基づいて振り分ける。
【０３１１】
すなわち、１６ビットモード、８ビットモード、および４ビットモードでは、書き込みアドレスにかかわりなく常に、ＭＸ９９はＦＦ９７ｄへ出力する。
【０３１２】
また、２ビットモードでは、書き込みの上位アドレスが“０”の場合にＦＦ９７ｄへ出力し、上位アドレスが“１”の場合にＦＦ９７ｅの入力、つまり、ｅＷｒｉｔｅ＜４＞へ出力する。
【０３１３】
上述したような構成を持つ半導体記憶装置のデータ書き込み動作は、実施例１と同様なので説明は省略する。
【０３１４】
１６ビット／８ビット／４ビット／２ビットの各モードは、実施例１と同様に、ＭＵＸ回路９２、ＭＵＸ回路９６、およびＭＸ９９での出力の選択によって実現され、この選択は、入出力回路１３ａ、１３ｂがｅＷｒｉｔｅ＜０：７＞を出力する前に決定されている。
【０３１５】
以上説明した実施例３で重要なことは、２入力−１出力の選択回路がシフトレジスタ８４と出力レジスタ８８の前後に分散して配置され、１入力−２出力の選択回路がライトレジスタ９４と入力レジスタ９８の前後に分散して配置されていることである。
【０３１６】
これにより、実施例１と同様に、データバス線ＲＤ＿０＜０：３＞〜ＲＤ＿７＜０：３＞およびＷＤ＿０＜０：３＞〜ＷＤ＿７＜０：３＞を引き回さずに、４段階の入出力データ幅圧縮機能を実装できる。
【実施例４】
【０３１７】
図１０は、本発明の実施例４に係わる半導体記憶装置のＲレジスタを示す回路ブロック図である。
【０３１８】
なお、本実施例に係わる半導体記憶装置の全体回路ブロック図は、図１と同じである。
【０３１９】
本発明の実施例４に係わる半導体記憶装置のＲレジスタは、８つのマスタースレーブ型フリップフロップ１０１ａ〜１０１ｈ（以下、「ＦＦ１０１ａ〜１０１ｈ」という。）と８つの選択機能付きフリップフロップ１０２ａ〜１０２ｈ（以下、「ＭＦ１０２ａ〜１０２ｈ」という。）からなるシフトレジスタ１０３、ＭＸ１０４ａと１０４ｂからなるＭＵＸ回路１０５、および４つのラッチ回路１０６ａ〜１０６ｄ（以下、Ｌａｔ１０６ａ〜１０６ｄという。）と４つのＦＦ１０７ａ〜１０７ｄからなる出力レジスタ１０８を備えている。
【０３２０】
シフトレジスタ１０３を構成するＦＦ１０１ａ〜１０１ｈおよびＭＦ１０２ａ〜１０２ｈは、それぞれ２個が対になって８組の２ビット並列−直列変換回路を構成しており、それぞれのパラレル入力には、ＩＯバッファ１７ａ、１７ｂからの出力が接続され、それぞれのシリアル出力は、ＭＵＸ回路１０５または出力レジスタ１０８へ供給されている。
【０３２１】
また、ＭＦ１０２ａ〜１０２ｈの選択入力には、それぞれ対応するＦＦ１０１ａ〜１０１ｈからの中間出力が接続されている。
【０３２２】
すなわち、ＭＦ１０２ａのパラレル入力には、ＲＤ＿０＜２＞が接続され、ＭＦ１０２ｂのパラレル入力には、ＲＤ＿０＜０＞が接続され、ＭＦ１０２ｂのシリアル入力には、ＭＦ１０２ａのシリアル出力が接続されている。ＭＦ１０２ｂのシリアル出力ｅＲ０は、ＭＵＸ回路１０５へ供給されている。
【０３２３】
また、ＦＦ１０１ａのパラレル入力には、ＲＤ＿１＜２＞が接続され、ＦＦ１０１ｂのパラレル入力には、ＲＤ＿１＜０＞が接続され、ＦＦ１０１ｂのシリアル入力には、ＦＦ１０１ａのシリアル出力が接続されている。ＦＦ１０１ｂのシリアル出力ｅＲ１は、出力レジスタ１０８へ供給されている。
【０３２４】
さらに、ＭＦ１０２ａの選択入力には、ＦＦ１０１ａの中間出力が接続され、ＭＦ１０２ｂの選択入力には、ＦＦ１０１ｂの中間出力が接続されている。
【０３２５】
さらに、ＭＦ１０２ｃのパラレル入力には、ＲＤ＿０＜３＞が接続され、ＭＦ１０２ｄのパラレル入力には、ＲＤ＿０＜１＞が接続され、ＭＦ１０２ｄのシリアル入力には、ＭＦ１０２ｃのシリアル出力が接続されている。ＭＦ１０２ｄのシリアル出力ｏＲ０は、ＭＵＸ回路１０５へ供給されている。
【０３２６】
さらに、ＦＦ１０１ｃのパラレル入力には、ＲＤ＿１＜３＞が接続され、ＦＦ１０１ｄのパラレル入力には、ＲＤ＿１＜１＞が接続され、ＦＦ１０１ｄのシリアル入力には、ＦＦ１０１ｃのシリアル出力が接続されている。ＦＦ１０１ｄのシリアル出力ｏＲ１は、出力レジスタ１０８へ供給されている。
【０３２７】
さらに、ＭＦ１０２ｃの選択入力には、ＦＦ１０１ｃの中間出力が接続され、ＭＦ１０２ｄの選択入力には、ＦＦ１０１ｄの中間出力が接続されている。
【０３２８】
さらに、ＭＦ１０２ｆのパラレル入力には、ＲＤ＿２＜２＞が接続され、ＭＦ１０２ｅのパラレル入力には、ＲＤ＿２＜０＞が接続され、ＭＦ１０２ｅのシリアル入力には、ＭＦ１０２ｆのシリアル出力が接続されている。ＭＦ１０２ｅのシリアル出力ｅＲ２は、ＭＵＸ回路１０５および出力レジスタ１０８へ供給されている。
【０３２９】
さらに、ＦＦ１０１ｆのパラレル入力には、ＲＤ＿３＜２＞が接続され、ＦＦ１０１ｅのパラレル入力には、ＲＤ＿３＜０＞が接続され、ＦＦ１０１ｅのシリアル入力には、ＦＦ１０１ｆのシリアル出力が接続されている。ＦＦ１０１ｅのシリアル出力ｅＲ３は、出力レジスタ１０８へ供給されている。
【０３３０】
さらに、ＭＦ１０２ｅの選択入力には、ＦＦ１０１ｅの中間出力が接続され、ＭＦ１０２ｆの選択入力には、ＦＦ１０１ｆの中間出力が接続されている。
【０３３１】
さらに、ＭＦ１０２ｈのパラレル入力には、ＲＤ＿２＜３＞が接続され、ＭＦ１０２ｇのパラレル入力には、ＲＤ＿２＜１＞が接続され、ＭＦ１０２ｇのシリアル入力には、ＭＦ１０２ｈのシリアル出力が接続されている。ＭＦ１０２ｇのシリアル出力ｏＲ２は、ＭＵＸ回路１０５および出力レジスタ１０８へ供給されている。
【０３３２】
さらに、ＦＦ１０１ｈのパラレル入力には、ＲＤ＿３＜３＞が接続され、ＦＦ１０１ｇのパラレル入力には、ＲＤ＿３＜１＞が接続され、ＦＦ１０１ｇのシリアル入力には、ＦＦ１０１ｈのシリアル出力が接続されている。ＦＦ１０１ｇのシリアル出力ｏＲ３は、出力レジスタ１０８へ供給されている。
【０３３３】
さらに、ＭＦ１０２ｇの選択入力には、ＦＦ１０１ｇの中間出力が接続され、ＭＦ１０２ｈの選択入力には、ＦＦ１０１ｈの中間出力が接続されている。
【０３３４】
シフトレジスタ１０３は、１６ビットモードでは、ＩＯバッファ１７ａおよび１７ｂから受信した１６ビットの読み出しデータを８組の２ビットシリアルデータｅＲ０、ｅＲ１、ｏＲ０、ｏＲ１、ｅＲ２、ｅＲ３、ｏＲ２、およびｏＲ３に並列−直列変換する。
【０３３５】
図１１は、本発明の実施例４に係わる半導体記憶装置のシフトレジスタ１０３を示す詳細回路図である。ここでは、主に、ｅＲ０およびｅＲ１に対応する部分を示した。ｅＲ２、ｅＲ３、およびｏＲ０〜ｏＲ３に対応する部分も同様である。
【０３３６】
ＭＦ１０２ａは、ｌｏａｄ信号に同期してパラレル入力からＲＤ＿０＜１＞を取り込むパラレル入力スイッチ回路１１１ａ、インバータ１１２ａ、１１２ｂからなるマスターラッチ回路１１３ａ（以下、「ＭＬ１１３ａ」という。）、入出力のデータ幅を切り替えるためのＭＸ１１４ａ、ｃｌｋに同期してマスター段からスレーブ段へデータ転送を行うシフトスイッチ回路１１５ａ、および２つのインバータ１１２ｃ、１１２ｄからなるスレーブラッチ回路１１６ａ（以下、「ＳＬ１１６ａ」という。）を備えている。
【０３３７】
また、ＭＦ１０２ｂは、／ｃｌｋ（以下、“／”は信号の反転を意味する。）に同期してＭＦ１０２ａからのデータをシリアル入力から取り込むシリアル入力スイッチ回路１１７ａ、ｌｏａｄ信号に同期してパラレル入力からＲＤ＿０＜０＞を取り込むパラレル入力スイッチ回路１１１ｂ、インバータ１１２ｅ、１１２ｆからなるＭＬ１１３ｂ、入出力のデータ幅を切り替えるためのＭＸ１１４ｂ、ｃｌｋに同期してマスター段からスレーブ段へデータ転送を行うシフトスイッチ回路１１５ｂ、および２つのインバータ１１２ｇ、１１２ｈからなるＳＬ１１６ｂを備えている。
【０３３８】
さらに、ＦＦ１０１ａは、ｌｏａｄ信号に同期してパラレル入力からＲＤ＿１＜１＞を取り込むパラレル入力スイッチ回路１１１ｃ、インバータ１１２ｊ、１１２ｋからなるＭＬ１１３ｃ、ｃｌｋに同期してマスター段からスレーブ段へデータ転送を行うシフトスイッチ回路１１５ｃ、および２つのインバータ１１２ｍ、１１２ｎからなるＳＬ１１６ｃを備えている。
【０３３９】
また、ＦＦ１０１ｂは、／ｃｌｋに同期してＦＦ１０１ａからのデータをシリアル入力から取り込むシリアル入力スイッチ回路１１７ｂ、ｌｏａｄ信号に同期してパラレル入力からＲＤ＿１＜０＞を取り込むパラレル入力スイッチ回路１１１ｄ、インバータ１１２ｐ、１１２ｑからなるＭＬ１１３ｄ、ｃｌｋに同期してマスター段からスレーブ段へデータ転送を行うシフトスイッチ回路１１５ｄ、および２つのインバータ１１２ｒ、１１２ｓからなるＳＬ１１６ｄを備えている。
【０３４０】
ＭＦ１０２ａおよびＭＦ１０２ｂは、マスター段とスレーブ段の間に２入力−１出力の選択回路、ＭＸ１１４ａおよびＭＸ１１４ｂが挿入されており、マスター段からのデータとＦＦ１０１ａおよびＦＦ１０１ｂからのデータを選択して出力する。
【０３４１】
すなわち、ＭＸ１１４ａの一方の入力には、ＭＬ１１３ａの出力が接続され、他方の入呂には、ＦＦ１０１ａのＭＬ１１３ｃからの中間出力ｅＲ１ａが接続されており、ＭＸ１１４ａの出力は、シフトスイッチ回路１１５ａを介してＳＬ１１６ａへ供給されている。
【０３４２】
また、ＭＸ１１４ｂの一方の入力には、ＭＬ１１３ｂの出力が接続され、他方の入呂には、ＦＦ１０１ｂのＭＬ１１３ｄからの中間出力ｅＲ１ｂが接続されており、ＭＸ１１４ｂの出力は、シフトスイッチ回路１１５ｂを介してＳＬ１１６ｂへ供給されている。
【０３４３】
ＭＸ１１４ａおよびＭＸ１１４ｂは、ＩＯバッファ１７ａから受信した読み出しデータを入出力データ幅と読み出しアドレスに基づいてマルチプレクスする。
【０３４４】
すなわち、１６ビットモードでは、読み出しアドレスにかかわりなく常に、ＭＸ１１４ａは、ＭＬ１１３ａの出力を選択し、ＭＸ１１４ｂは、ＭＸ１１３ｂの出力を選択する。
【０３４５】
また、８ビットモードおよび４ビットモードでは、ＭＸ１１４ａおよび１１４ｂは、読み出しアドレスの上位ビットにしたがって、どちらかの入力を選択して出力する。表１３は、それぞれのモードで、上位アドレスにしたがって、ＭＸ１１４ａおよび１１４ｂが選択する信号を示している。
【表１３】
2005182939.tif 000015
【０３４６】
例えば、ＭＸ１１４ａは、８ビットモードおよび４ビットモードでは、上位アドレスが“０”の場合にＭＬ１１３ａの出力を選択して出力し、上位アドレスが“１”の場合にｅＲ１ａを選択して出力する。
【０３４７】
４ビットモードでは、１６ビットモードに比べ読み出しアドレスが２ビット多くなるが、表１３では、２ビットのうち下位１ビットが上位アドレスとして示されている。残りの１ビットはＭＵＸ回路１０５で使用される。
【０３４８】
ＭＵＸ回路１０５および出力レジスタ１０８は、構成、動作ともに実施例１と同様なので、説明は省略する。
【０３４９】
上述したような構成を持つ半導体記憶装置のデータ読み出し動作は、実施例１と同様なので説明は省略する。
【０３５０】
１６ビット／８ビット／４ビットの各モードは、実施例１と同様に、ＭＦ１０２ａ〜１０２ｈおよびＭＵＸ回路１０５での入力の選択によって実現され、この選択は、ＩＯバッファ１７ａおよび１７ｂがＲＤ＿０＜０：３＞〜ＲＤ＿３＜０：３＞を出力する前に決定されている。
【０３５１】
以上説明した実施例４で重要なことは、２入力−１出力の選択回路がＭＦ１０２ａ〜１０２ｈに組み込まれていることである。
【０３５２】
これにより、実施例１と同様に、データバス線ＲＤ＿０＜０：３＞〜ＲＤ＿３＜０：３＞を引き回すことなく、入出力のデータ幅圧縮機能を実装することができる。さらに、実施例２と同様に、データバス線ＲＤ＿０＜０：３＞〜ＲＤ＿３＜０：３＞での配線遅延のばらつきを実施例１に比べさらに抑制することができる。
【０３５３】
実施例２との違いは、入出力データ幅の切替えを行うＭＸがすべて出力レジスタ１０８の内側に配置されていることである。
【０３５４】
したがって、上記実施例４は、Ｒレジスタでの処理時間のオーバーヘッドが、データバス線ＲＤ＿０＜０：３＞〜ＲＤ＿３＜０：３＞およびシリアルデータバス線ｅＲｅａｄ＜０：３＞、ｏＲｅａｄ＜０：３＞での配線遅延に比べ少なく、かつ、回路素子のレイアウト面積がバス配線のレイアウト面積に比べ相対的に少ない場合に、非常に有効である。
【０３５５】
半導体プロセスの微細化が進み、半導体記憶装置が大容量化するにつれて、上記条件が満たされる場合が徐々に増加している。
【０３５６】
上述の実施例１〜４の説明では、Ｒレジスタにはシフトレジスタによる並列−直列変換を用い、Ｗレジスタにはラッチ回路による直列−並列変換を用いているが、本発明はこれに限られるものではなく、例えば、Ｒレジスタにラッチ回路を用い、Ｗレジスタにシフトレジスタを用いることもできる。
【０３５７】
また、上述の実施例１〜４の説明では、半導体記憶装置は、２相同期クロックを用いたコマンド入力方式の同期型ＤＲＡＭであるとしたが、本発明はこれに限られるものではなく、例えば、単相同期クロックを用い、アドレスバスからアドレスを入力する通常の同期型ＤＲＡＭに適用することもできる。
【０３５８】
さらに、本発明は、同期型ＤＲＡＭへの適用に限られるものではなく、入出力データの直並列変換を高速に行う半導体記憶装置にデータ幅圧縮機能を実装する場合に広く適用することができる。
【図面の簡単な説明】
【０３５９】
【図１】本発明の実施例１に係わる半導体記憶装置を示す回路ブロック図。
【図２】本発明の実施例１に係わる半導体記憶装置のＲレジスタを示す回路ブロック図。
【図３】本発明の実施例１に係わる半導体記憶装置の読み出し動作を示す波形図。
【図４】本発明の実施例１に係わる半導体記憶装置のＷレジスタを示す回路ブロック図。
【図５】本発明の実施例１に係わる半導体記憶装置の書き込み動作を示す波形図。
【図６】本発明の実施例２に係わる半導体記憶装置のＲレジスタを示す回路ブロック図。
【図７】本発明の実施例２に係わる半導体記憶装置のＷレジスタを示す回路ブロック図。
【図８】本発明の実施例３に係わる半導体記憶装置のＲレジスタを示す回路ブロック図。
【図９】本発明の実施例３に係わる半導体記憶装置のＷレジスタを示す回路ブロック図。
【図１０】本発明の実施例４に係わる半導体記憶装置のＲレジスタを示す回路ブロック図。
【図１１】本発明の実施例４に係わる半導体記憶装置のシフトレジスタを示す詳細回路図。
【図１２】従来の半導体記憶装置の問題点を示す回路ブロック図。
【図１３】従来の半導体記憶装置の問題点を示す全体レイアウト図。
【符号の説明】
【０３６０】
１１  メモリコア部
１２ａ、１２ｂ  ＲＷレジスタ
１３ａ、１３ｂ  入出力回路
１４  クロック生成回路
１５  制御回路
１６ａ〜１６ｄ  セルアレイ
１７ａ〜１７ｄ  ＩＯバッファ
２１ａ〜２１ｈ、２５ａ、２５ｂ、４１ａ〜４１ｈ、４５ａ、４５ｂ、６３ａ〜６３ｄ、６８ａ、６８ｂ、７３ａ〜７３ｄ、７８ａ、７８ｂ、８１ａ〜８１ｈ、８５ａ〜８５ｄ、８９、９１ａ〜９１ｈ、９５ａ〜９５ｄ、９９、１０４ａ、１０４ｂ、１１４ａ、１１４ｂ  選択回路（ＭＸ）
２２、２６、４２、４６、６４、６９、７４、７９、８２、８６、９２、９６、１０５  マルチプレクサ回路（ＭＵＸ回路）
２３ａ〜２３ｓ、２８ａ〜２８ｄ、４７ａ〜４７ｄ、６１ａ〜６１ｓ、６６ａ〜６６ｄ、７５ａ〜７５ｄ、８３ａ〜８３ｓ、９７ａ〜９７ｈ、１０１ａ〜１０１ｈ、１０７ａ〜１０７ｈ  マスタースレーブ型フリップフロップ（ＦＦ）
２４、６２、８４、１０３  シフトレジスタ
２７ａ〜２７ｄ、４３ａ〜４３ｓ、４８ａ〜４８ｄ、７１ａ〜７１ｓ、７６ａ〜７６ｄ、６５ａ〜６５ｄ、９３ａ〜９３ｓ、８７ａ〜８７ｈ、１０６ａ〜１０６ｄ  ラッチ回路（Ｌａｔ）
２９、６７、８８、１０８  出力レジスタ
４４、７２、９４  ライトレジスタ
４９、７７、９８  入力レジスタ
１０２ａ〜１０２ｈ  選択機能付きＦＦ（ＭＦ）
１１１ａ〜１１１ｄ  パラレル入力スイッチ回路
１１２ａ〜１１２ｓ  インバータ
１１３ａ〜１１３ｄ  マスターラッチ回路（ＭＬ）
１１５ａ〜１１５ｄ  シフトスイッチ回路
１１６ａ〜１１６ｄ  スレーブラッチ回路（ＳＬ）
１１７ａ、１１７ｂ  シリアル入力スイッチ回路
【図１】
2005182939.tif 000016
【図２】
2005182939.tif 000017
【図３】
2005182939.tif 000018
【図４】
2005182939.tif 000019
【図５】
2005182939.tif 000020
【図６】
2005182939.tif 000021
【図７】
2005182939.tif 000022
【図８】
2005182939.tif 000023
【図９】
2005182939.tif 000024
【図１０】
2005182939.tif 000025
【図１１】
2005182939.tif 000026
【図１２】
2005182939.tif 000027
【図１３】
2005182939.tif 000028
【手続補正書】
【提出日】平成17年2月2日(2005.2.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データを記憶するメモリセルが行および列方向に繰り返し配置され、複数の領域に分割されたセルアレイと、
前記セルアレイの１つの領域から複数のデータを読み出して増幅し、ＩＯデータとして出力データバス線へ出力するアクセス手段と、
前記アクセス手段からの前記ＩＯデータを受信し、少なくとも２つのデータを変換して１つのシリアルデータとして出力する複数の並列−直列変換手段と、
互いに異なる前記並列−直列変換手段からの出力が接続された２つの入力を有し、出力データ幅および読み出しアドレスに基づいて、前記２つの入力のうち一方を選択して前記シリアルデータを出力する複数の選択手段と、
前記並列−直列変換手段の出力または前記選択手段の出力が入力に接続され、受信したデータを保持するとともにそれぞれに出力タイミングを調整する複数の出力調整手段と、
前記複数の前記並列−直列変換手段、前記複数の前記選択手段、および前記複数の前記出力調整手段から構成され、入力に前記出力データバス線が接続され、出力に前記出力調整手段からのデータを出力するシリアル出力データバス線が接続されている転送手段を備え、
前記転送手段は、読み出しデータの並列−直列変換機能および出力データ幅の変更機能を有することを特徴とする半導体記憶装置。
【請求項２】
前記転送手段は、出力データ幅および読み出しアドレスに基づいて、２つの入力のうち一方を選択して出力する複数のＩＯデータ選択手段をさらに有し、
前記ＩＯデータ選択手段の前記２つの入力には、互いに異なる前記出力データバス線が接続され、
前記ＩＯデータ選択手段の出力には、前記選択手段の入力に出力が接続されている前記並列−直列変換手段の入力が接続されていることを特徴とする請求項１に記載の半導体記憶装置。
【請求項３】
前記転送手段は、出力データ幅および読み出しアドレスに基づいて、２つの入力のうち一方を選択して出力する出力データ選択手段をさらに有し、
前記出力データ選択手段の前記２つの入力には、互いに異なる前記出力調整手段の出力が接続され、
前記出力データ選択手段の出力には、前記シリアル出力データバス線が接続され、
前記出力データ選択手段に出力が接続されている前記出力調整手段の入力には、前記選択手段の出力が接続されていることを特徴とする請求項１に記載の半導体記憶装置。
【請求項４】
データを記憶するメモリセルが行および列方向に繰り返し配置され、複数の領域に分割されたセルアレイと、
前記セルアレイの１つの領域から複数のデータを読み出して増幅し、ＩＯデータとして出力データバス線へ出力するアクセス手段と、
マスタースレーブ型フリップフロップで構成され、前記アクセス手段からの前記ＩＯデータを受信し、少なくとも２つのデータを変換して１つのシリアルデータとして出力する複数の並列−直列変換手段と、
マスタースレーブ型フリップフロップおよび２入力−１出力のマスター段選択手段で構成され、前記アクセス手段からの前記ＩＯデータおよび前記並列−直列変換手段のマスター段からのデータを受信し、出力データ幅および読み出しアドレスに基づいて一方を選択し、少なくとも２つのデータを変換して１つのシリアルデータとして出力する複数の選択機能付き並列−直列変換手段と、
互いに異なる前記選択機能付き並列−直列変換手段からの出力が接続された２つの入力を有し、出力データ幅および読み出しアドレスに基づいて、前記２つの入力のうち一方を選択して前記シリアルデータを出力する複数の選択手段と、
前記並列−直列変換手段の出力、前記選択機能付き並列−直列変換手段の出力、または前記選択手段の出力が入力に接続され、受信したデータを保持するとともにそれぞれに出力タイミングを調整する複数の出力調整手段と、
前記複数の前記並列−直列変換手段、前記複数の前記選択機能付き並列−直列変換手段、前記複数の前記選択手段、および前記複数の前記出力調整手段から構成され、入力に前記出力データバス線が接続され、出力に前記出力調整手段からのデータを出力するシリアル出力データバス線が接続されている転送手段を備え、
前記転送手段は、読み出しデータの並列−直列変換機能および出力データ幅の変更機能を有することを特徴とする半導体記憶装置。
【請求項５】
シリアル入力データバス線からのシリアルデータを受信し、これらを保持するとともにそれぞれにタイミングを調整して出力する複数の入力調整手段と、
前記入力調整手段の出力が入力に接続され、入力データ幅および書き込みアドレスに基づいて、２つの出力のうち一方を選択して前記入力調整手段から受信した前記シリアルデータを出力する複数の選択手段と、
前記入力調整手段の出力または前記選択手段の１つの出力が入力に接続され、受信した前記シリアルデータを少なくとも２つのパラレルデータに変換して出力する複数の直列−並列変換手段と、
前記複数の前記入力調整手段、前記複数の前記選択手段、および前記複数の前記直列−並列変換手段から構成され、入力に前記シリアル入力データバス線が接続され、出力に前記直列−並列変換手段からの前記パラレルデータをＩＯデータとして出力する入力データバス線が接続されている転送手段と、
データを記憶するメモリセルが行および列方向に繰り返し配置され、複数の領域に分割されたセルアレイと、
前記入力データバス線からの前記ＩＯデータを増幅し、前記セルアレイへ書き込むアクセス手段を備え、
前記転送手段は、書き込みデータの直列−並列変換機能および入力データ幅の変更機能を有することを特徴とする半導体記憶装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００３７
【補正方法】変更
【補正の内容】
【００３７】
また、本発明の別の一態様によれば、データを記憶するメモリセルが行および列方向に繰り返し配置され、複数の領域に分割されたセルアレイと、前記セルアレイの１つの領域から複数のデータを読み出して増幅し、ＩＯデータとして出力データバス線へ出力するアクセス手段と、マスタースレーブ型フリップフロップで構成され、前記アクセス手段からの前記ＩＯデータを受信し、少なくとも２つのデータを変換して１つのシリアルデータとして出力する複数の並列−直列変換手段と、マスタースレーブ型フリップフロップおよび２入力−１出力のマスター段選択手段で構成され、前記アクセス手段からの前記ＩＯデータおよび前記並列−直列変換手段のマスター段からのデータを受信し、出力データ幅および読み出しアドレスに基づいて一方を選択し、少なくとも２つのデータを変換して１つのシリアルデータとして出力する複数の選択機能付き並列−直列変換手段と、互いに異なる前記選択機能付き並列−直列変換手段からの出力が接続された２つの入力を有し、出力データ幅および読み出しアドレスに基づいて、前記２つの入力のうち一方を選択して前記シリアルデータを出力する複数の選択手段と、前記並列−直列変換手段の出力、前記選択機能付き並列−直列変換手段の出力、または前記選択手段の出力が入力に接続され、受信したデータを保持するとともにそれぞれに出力タイミングを調整する複数の出力調整手段と、前記複数の前記並列−直列変換手段、前記複数の前記選択機能付き並列−直列変換手段、前記複数の前記選択手段、および前記複数の前記出力調整手段から構成され、入力に前記出力データバス線が接続され、出力に前記出力調整手段からのデータを出力するシリアル出力データバス線が接続されている転送手段を備え、前記転送手段は、読み出しデータの並列−直列変換機能および出力データ幅の変更機能を有することを特徴とする半導体記憶装置が提供される。