(57)【要約】【課題】コンバインドコーディングを利用した並列データインターフェース方法、記録媒体及びその装置を提供する。【解決手段】半導体装置は、選択信号別に区分可能な多数のエンコーディングルックアップテーブルを含むエンコーディングルックアップテーブルユニットと、Ｎ（２以上の整数）ビット並列データを受信し、エンコーディングルックアップテーブルユニットから選択信号に対応して、Ｎビット並列データにマッピングされるエンコーディングデータを抽出して出力する選択ユニットと、を備え、多数のエンコーディングルックアップテーブルのそれぞれは、Ｎビット並列データのパターンに一対一でマッピングされ、時間及び空間的にランダムパターンを有する多数のエンコーディングデータを保存する。【選択図】図３
2011187153.tif 000002
【特許請求の範囲】
【請求項１】
選択信号別に区分可能な複数のエンコーディングルックアップテーブルを有するエンコーディングルックアップテーブルユニットと、
Ｎビット並列データを受信し、前記エンコーディングルックアップテーブルユニットから、前記選択信号に対応して、前記Ｎビット並列データにマッピングされるエンコーディングデータを抽出して出力する選択ユニットと、
を備え、
前記Ｎは、２以上の整数であり、
前記多数のエンコーディングルックアップテーブルのそれぞれは、前記Ｎビット並列データのパターンに一対一でマッピングされ、時間及び空間的にランダムパターンを有する多数のエンコーディングデータを保存することを特徴とする半導体装置。
【請求項２】
前記選択信号は、アドレス信号、バースト長信号、及びコマンド信号のうち少なくとも一つの信号の一部を含むことを特徴とする請求項１に記載の半導体装置。
【請求項３】
前記半導体装置は、前記エンコーディングデータを複数のデータラインを通じて出力する出力ドライバーをさらに備えることを特徴とする請求項１に記載の半導体装置。
【請求項４】
前記選択ユニットは、前記多数のエンコーディングルックアップテーブルのそれぞれから出力されるエンコーディングデータのうちから前記選択信号に対応するエンコーディングデータを選択して出力する選択器を含むことを特徴とする請求項１に記載の半導体装置。
【請求項５】
前記エンコーディングデータは、前記Ｎビット並列データをスクランブリング及びＤＣバランスエンコーディングしたデータに相当することを特徴とする請求項１に記載の半導体装置。
【請求項６】
選択信号別に区分可能な多数のデコーディングルックアップテーブルを含むデコーディングルックアップテーブルユニットと、
エンコーディングデータを受信し、前記デコーディングルックアップテーブルユニットから前記選択信号に応じて、前記エンコーディングデータにマッピングされるＮビット並列データを抽出して出力する選択ユニットと、
を備え、
前記Ｎは、２以上の整数であり、
前記多数のデコーディングルックアップテーブルのそれぞれは、時間及び空間的にランダムパターンを有する多数のエンコーディングデータパターンのそれぞれに一対一でマッピングされる多数のＮビット並列データを保存することを特徴とする半導体装置。
【請求項７】
前記選択信号は、アドレス信号、バースト長信号、及びコマンド信号のうち少なくとも一つの信号の一部を含むことを特徴とする請求項６に記載の半導体装置。
【請求項８】
前記半導体装置は、前記エンコーディングデータを複数のデータラインを通じて受信するデータ受信部をさらに備えることを特徴とする請求項６に記載の半導体装置。
【請求項９】
前記選択ユニットは、前記多数のデコーディングルックアップテーブルのそれぞれから出力されるＮビット並列データのうちから、前記選択信号に対応する並列データを選択して出力する選択器を含むことを特徴とする請求項６に記載の半導体装置。
【請求項１０】
前記Ｎビット並列データは、前記エンコーディングデータをＤＣバランスデコーディング及びデスクランブリングしたデータと同一となることを特徴とする請求項６に記載の半導体装置。
【請求項１１】
シードを用いてスクランブリングコードを生成するスクランブリングコード生成器と、
前記スクランブリングコードを用いて第１並列データグループをスクランブリングして、第２並列データグループを発生させるスクランブラーと、
前記第２並列データグループを受信し、前記第２並列データグループのＮビットスクランブルド並列データのそれぞれをＤＣバランスエンコーディングして、Ｍビットバランスコードを発生させるバランスエンコーディングブロックと、
前記バランスコード及び前記シードを順次に複数のデータラインを通じて出力する出力ドライバーと、
を備え、
前記Ｎは、２以上の整数であり、
前記Ｍは、Ｎより大きい整数であり、
前記第１並列データグループは、Ｎビット並列データを二つ以上含み、
前記第２並列データグループは、Ｎビットスクランブルド並列データを二つ以上含むことを特徴とする半導体装置。
【請求項１２】
前記バランスエンコーディングブロックは、前記Ｎビットスクランブルド並列データに含まれた第１ロジックレベルのビット数または第２ロジックレベルのビット数によって、選択的に前記Ｎビットスクランブルド並列データを反転し、前記選択的に反転された前記Ｎビットスクランブルド並列データに反転如何を表わすフラグ信号を追加することを特徴とする請求項１１に記載の半導体装置。
【請求項１３】
前記スクランブラーは、前記第１並列データグループのそれぞれのビットと前記スクランブリングコードのそれぞれのビットとを排他的論理和演算する論理演算器を含むことを特徴とする請求項１１に記載の半導体装置。
【請求項１４】
前記出力ドライバーは、前記バランスコードをコード単位で順次に前記複数のデータラインを通じて出力し、後続して前記シードを前記複数のデータラインを通じて出力することを特徴とする請求項１１に記載の半導体装置。
【請求項１５】
複数のデータラインを通じてＭビットバランスコード及びシードを受信するデータ受信部と、
前記シードを用いてデスクランブリングコードを生成するデスクランブリングコード生成器と、
前記バランスコードをそれぞれＤＣバランスデコーディングして、Ｎビットスクランブルド並列データを二つ以上含む第２並列データグループを抽出するバランスデコーディングブロックと、
前記バランスデコーディングブロックによって抽出された前記第２並列データグループを、前記デスクランブリングコードを用いてデスクランブリングして、前記第１並列データグループを抽出するデスクランブラーと、
を備え、
前記Ｍは、２以上の整数であり、
前記Ｎは、Ｍより小さい整数であり、
前記Ｍビットバランスコードのそれぞれは、Ｎビット並列データを二つ以上含む第１並列データグループをスクランブリングして、生成された第２並列データグループのＮビットスクランブルド並列データのそれぞれをＤＣバランスエンコーディングすることで生成されることを特徴とする半導体装置。
【請求項１６】
前記バランスデコーディングブロックは、前記バランスコードに含まれた所定のフラグ信号によって当該バランスコードを選択的に反転することを特徴とする請求項１５に記載の半導体装置。
【請求項１７】
前記デスクランブラーは、前記第２並列データグループのそれぞれのビットと前記デスクランブリングコードのそれぞれのビットとを排他的論理和演算する論理演算器を含むことを特徴とする請求項１５に記載の半導体装置。
【請求項１８】
前記データ受信部は、前記バランスコードをコード単位で順次に前記複数のデータラインを通じて受信し、後続して前記シードを前記複数のデータラインを通じて受信することを特徴とする請求項１５に記載の半導体装置。
【請求項１９】
メモリコントローラの制御によってデータを保存するメモリ装置において、
前記メモリコントローラの記録命令に基づいて、前記メモリコントローラから複数のデータラインを通じて第１並列データを受信するデータ受信部と、
前記第１並列データをエンコーディングして、エンコーディングデータを出力するエンコーダと、
前記エンコーディングデータを前記メモリ装置の内部バスを通じて受信して保存するデータ保存部と、
を備えることを特徴とするメモリ装置。
【請求項２０】
前記メモリ装置は、
前記データ保存部から出力されるデータをデコーディングするデコーダと、
前記デコーダの出力データを前記メモリコントローラに伝送する出力ドライバーと、
をさらに備えることを特徴とする請求項１９に記載のメモリ装置。
【請求項２１】
前記エンコーダは、
選択信号別に区分可能な多数のエンコーディングルックアップテーブルを含むエンコーディングルックアップテーブルユニットと、
Ｎビット並列データを受信し、前記エンコーディングルックアップテーブルユニットから、前記選択信号に対応して、前記Ｎビット並列データにマッピングされるエンコーディングデータを抽出して出力する選択ユニットと、
を備え、
前記Ｎは、２以上の整数であり、
前記多数のエンコーディングルックアップテーブルのそれぞれは、前記Ｎビット並列データのパターンに一対一でマッピングされ、時間及び空間的にランダムパターンを有する多数のエンコーディングデータを保存することを特徴とする請求項１９に記載のメモリ装置。
【請求項２２】
前記選択信号は、アドレス信号、バースト長信号、及びコマンド信号のうち少なくとも一つの信号の一部を含むことを特徴とする請求項２１に記載のメモリ装置。
【請求項２３】
前記エンコーダは、
シードを用いてスクランブリングコードを生成するスクランブリングコード生成器と、
前記スクランブリングコードを用いて第１並列データグループをスクランブリングして、第２並列データグループを発生させるスクランブラーと、
を含み、
前記Ｎは、２以上の整数であり、
前記第１並列データグループは、Ｎビット並列データを二つ以上含み、
前記第２並列データグループは、Ｎビットスクランブルド並列データを二つ以上含むことを特徴とする請求項１９に記載のメモリ装置。
【請求項２４】
前記エンコーダは、前記第２並列データグループを受信し、前記第２並列データグループのＮビットスクランブルド並列データのそれぞれをＤＣバランスエンコーディングして、Ｍビットバランスコードを発生させるバランスエンコーディングブロックをさらに含み、
前記Ｍは、Ｎより大きい整数であることを特徴とする請求項２３に記載のメモリ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置およびメモリ装置に関する。より詳しくは、コンバインドコーディングを利用した半導体装置およびメモリ装置に関する。
【背景技術】
【０００２】
並列データインターフェースのために、単一型の並列伝送方法を使う半導体装置（例えば、ＤＲＡＭまたはコントローラ）の並列入出力回路には、寄生インダクタンスに起因したノイズが発生する。
【０００３】
図１は、一般的な単一型の並列データインターフェースシステム１０を示す概略図である。図１を参照すると、前記インターフェースシステム１０は、送信部２１を備える第１半導体装置２０、多数の伝送ラインＬｉｎｅ１ないしＬｉｎｅＮ、及び受信部３１を備える第２半導体装置３０を備えている。前記送信部２１は、多数の送信ドライバー１０１ないし１０Ｎを備えている。前記受信部３１は、多数の増幅器２０１ないし２０Ｎと終端抵抗Ｒ１ないしＲＮとを備えている。
【０００４】
前記伝送ラインＬｉｎｅ１ないしＬｉｎｅＮを通じて伝送されるＮビットの並列データ（例えば、ＤＱ１ないしＤＱＮ）値によって、前記ドライバー１０１ないし１０Ｎが消費する総電流量が変わる。
【０００５】
チップ内部の電源ノードＶＤＤＱ、ＶＳＳＱとボード（Ｂｏａｒｄ）の供給電源ＶＤＤ、ＶＳＳとの間には、寄生インダクタンスが存在するので、前記寄生インダクタンスに流れる電流変化は、前記チップ内部の電源ノードＶＤＤＱ、ＶＳＳＱにノイズ（例えば、ジッタ（Ｊｉｔｔｅｒ）、電圧ノイズ、Ｒｅｆｅｒｅｎｃｅ  ｆｌｕｃｔｕａｔｉｏｎ）を発生させる。前記ノイズは、前記伝送ライン（例えば、Ｌｉｎｅ１ないしＬｉｎｅＮ）のそれぞれに流れる電流の総変化量に比例する。前記ノイズは、信号の電圧マージン（ｖｏｌｔａｇｅ  ｍａｒｇｉｎ）と時間マージンとを減少させ、伝送動作速度（伝送周波数）を制約させる。
【０００６】
前記ノイズを減少させるためには、常に一定の電流を消費する差動信号伝送方法（Ｄｉｆｆｅｒｅｎｔｉａｌ  ｓｉｇｎａｌｉｎｇ）を使わなければならない。しかし、前記差動信号伝送方法は、単一型の伝送方法（ｓｉｎｇｌｅ  ｅｎｄｅｄ）に比べて２倍のピン（ｐｉｎ）数が必要であるという短所がある。
【０００７】
前記ノイズを減らすための他の方法として、ＤＣバランスコーディングを利用する方法がある。ＤＣバランスコーディングの例としては、８Ｂ／１０Ｂコーディング及びデータバスインバージョンＤＣコーディングがある。
【０００８】
図２Ａは、一般的な８Ｂ／１０Ｂバランスエンコーディングを説明するための図である。
【０００９】
図２Ａを参照すると、前記８Ｂ／１０Ｂエンコーディング方式は、８ビットの並列データに２ビットのデータを追加して常に０と１との個数が類似しているようにエンコーディング（ｅｎｃｏｄｉｎｇ）する。その結果、ＤＣバランスコード値は、０と１との個数が最大２個の差があるようになって、前記チップ内部の電源ノードＶＤＤＱ、ＶＳＳＱに発生するノイズが４分の１に減少する。
【００１０】
しかし、８Ｂ／１０Ｂコードを具現するためには、ＲＯＭを利用するか、組み合わせロジック（ｃｏｍｂｉｎａｔｉｏｎａｌ  ｌｏｇｉｃ）を使わなければならないので、回路の面積が増加する。また、８Ｂ／１０Ｂエンコーディングを使う前の８ビットのデータは、平均４ＩＤＱ（ＩＤＱ：８ビットデータのうち、一つのビットのみ０（または、１）である時、消耗する電流量）の電流を消耗するが、８Ｂ／１０Ｂエンコーディング後には、５ＩＤＱの電流を消耗するという短所がある。
【００１１】
既存の８Ｂ／１０Ｂコードの代りに、よりシステム的な方法を使えば、エンコーディング／デコーディングの複雑度と回路面積とを減少させることができる。その一方法として、ＤＢＩ（ｄａｔａ  ｂｕｓ  ｉｎｖｅｒｓｉｏｎ）ＤＣコーディングがある。
【００１２】
図２Ｂは、一般的なデータバスインバージョン（ＤＢＩ）ＤＣエンコーディングを説明するための図である。図２Ｂを参照すると、ＤＢＩ  ＤＣエンコーディングは、８ビットデータの１と０との個数を見て０の個数が４個より大きければ、データをいずれも反転させ、その状態をＤＢＩフラグ（ｆｌａｇ）に保存させて伝送させる方式である。この方式を使えば、具現が簡単であり、平均電流消耗が２ＩＤＱに減少するという長所がある。しかし、０の個数が０から４個まで変わりうることから４ＩＤＱの電流変化が発生して、エンコーディングの前よりＶＤＤＱ／ＶＳＳＱに発生するノイズの減少が１／２のみとなってしまうという短所が存在する。
【００１３】
前記８Ｂ／１０Ｂｃｏｄｅ方式とデータバスインバージョンＤＣ方式は、並列データの０と１との総個数を調節して、チップ内部の電源ノードＶＤＤＱ、ＶＳＳＱとボード（Ｂｏａｒｄ）の供給電源ＶＤＤ、ＶＳＳとの間の寄生インダクタンスに流れる電流変化量を減少させ、ノイズを減らす方式である。したがって、前記従来のＤＣバランスコーディング方式によってＤＣノイズは減少する。
【００１４】
しかし、前記８Ｂ／１０Ｂｃｏｄｅ方式とデータバスインバージョンＤＣ方式は、並列データのそれぞれの入力ビット値が経時的に変わる時に発生するスイッチング（ｓｗｉｔｃｈｉｎｇ）ノイズは減少されないという短所がある。例えば、１０ビットのバランスコードが、第１コード（０００００１１１１１）から第２コード（１１１１１０００００）に変われば、１０ビットのいずれもが変わるために、前記入力データ値のスイッチングによるノイズが増加する。
【００１５】
したがって、バランスコード（ｂａｌａｎｃｅ  ｃｏｄｅ）を使う単一型の並列データインターフェースシステムで、ロード電流（すなわち、ＤＣ電流）の変化とスイッチング電流の変化とをともに減少させる必要がある。
【発明の概要】
【発明が解決しようとする課題】
【００１６】
本発明が解決しようとする技術的な課題は、並列データインターフェースシステムで、ＤＣノイズとスイッチングノイズとをともに減少させることができる半導体装置およびメモリ装置を提供することにある。
【課題を解決するための手段】
【００１７】
前記技術的課題を果たすために、本発明の一実施形態による半導体装置が提供される。
【００１８】
前記半導体装置は、選択信号別に区分可能な多数のエンコーディングルックアップテーブルを含むエンコーディングルックアップテーブルユニットと、Ｎ（２以上の整数）ビット並列データを受信し、前記エンコーディングルックアップテーブルユニットから前記選択信号に相応し、前記Ｎビット並列データにマッピングされるエンコーディングデータを抽出して出力する選択ユニットと、を備える。前記多数のエンコーディングルックアップテーブルのそれぞれは、前記Ｎビット並列データのパターンに一対一でマッピングされ、時間及び空間的にランダムパターンを有する多数のエンコーディングデータを保存する。
【００１９】
前記選択信号は、アドレス信号、バースト長信号、及びコマンド信号のうち少なくとも一つの信号の一部を含みうる。
【００２０】
前記半導体装置は、前記エンコーディングデータを複数のデータラインを通じて出力する出力ドライバーをさらに備えることができる。
【００２１】
前記技術的課題を果たすために、本発明の他の一実施形態による半導体装置が提供される。
【００２２】
前記半導体装置は、選択信号別に区分可能な多数のデコーディングルックアップテーブルを含むデコーディングルックアップテーブルユニットと、エンコーディングデータを受信し、前記デコーディングルックアップテーブルユニットから前記選択信号に相応し、前記エンコーディングデータにマッピングされるＮ（２以上の整数）ビット並列データを抽出して出力する選択ユニットと、を備える。前記多数のデコーディングルックアップテーブルのそれぞれは、時間及び空間的にランダムパターンを有する多数のエンコーディングデータパターンのそれぞれに一対一でマッピングされる多数のＮビット並列データを保存する。
【００２３】
前記技術的課題を果たすために、本発明のまた他の一実施形態による半導体装置が提供される。
【００２４】
前記半導体装置は、シード（ｓｅｅｄ）を用いてスクランブリングコードを生成するスクランブリングコード生成器と、前記スクランブリングコードを用いて第１並列データグループ−第１並列データグループは、Ｎ（２以上の整数）ビット並列データを二つ以上含む−をスクランブリングして、第２並列データグループ−前記第２並列データグループは、Ｎビットスクランブルド（ｓｃｒａｍｂｌｅｄ）並列データを二つ以上含む−を発生させるスクランブラーと、前記第２並列データグループを受信し、前記第２並列データグループのＮビットスクランブルド並列データのそれぞれをＤＣバランスエンコーディングして、Ｍ（＞Ｎ、整数）ビットバランスコードを発生させるバランスエンコーディングブロックと、前記バランスコード及び前記シードを順次に複数のデータラインを通じて出力する出力ドライバーと、を備える。
【００２５】
前記バランスエンコーディングブロックは、前記Ｎビットスクランブルド並列データに含まれた第１ロジックレベルのビット数または第２ロジックレベルのビット数によって、選択的に前記Ｎビットスクランブルド並列データを反転し、前記選択的に反転された前記Ｎビットスクランブルド並列データに反転如何を表わすフラグ信号を追加することができる。
【００２６】
前記スクランブラーは、前記第１並列データグループのそれぞれのビットと前記スクランブリングコードのそれぞれのビットとを排他的論理和（ｅｘｃｌｕｓｉｖｅ  ＯＲ）する論理演算器を含みうる。
【００２７】
前記技術的課題を果たすために、本発明のさらに他の一実施形態による半導体装置が提供される。
【００２８】
前記半導体装置は、複数のデータラインを通じてＭ（２以上の整数）ビットバランスコード及びシードを受信するデータ受信部−前記Ｍビットバランスコードのそれぞれは、Ｎ（＜Ｍ、整数）ビット並列データを二つ以上含む第１並列データグループをスクランブリングして、生成された第２並列データグループのＮビットスクランブルド並列データのそれぞれをＤＣバランスエンコーディングすることで生成される−と、前記シードを用いてデスクランブリングコードを生成するデスクランブリングコード生成器と、前記バランスコードをそれぞれＤＣバランスデコーディングして、前記Ｎビットスクランブルド並列データを二つ以上含む前記第２並列データグループを抽出するバランスデコーディングブロックと、前記バランスデコーディングブロックによって抽出された前記第２並列データグループを、前記デスクランブリングコードを用いてデスクランブリングして、前記第１並列データグループを抽出するデスクランブラーと、を備える。
【００２９】
前記バランスデコーディングブロックは、前記バランスコードに含まれた所定のフラグ信号によって当該バランスコードを選択的に反転する。
【００３０】
前記技術的課題を果たすために、本発明のさらに他の一実施形態によるメモリ装置が提供される。
【００３１】
前記メモリ装置は、メモリコントローラの制御によってデータを保存するメモリ装置であって、前記メモリコントローラの記録命令（ｗｒｉｔｅ  ｃｏｍｍａｎｄ）に基づいて、前記メモリコントローラから複数のデータラインを通じて第１並列データを受信するデータ受信部と、前記第１並列データをエンコーディングして、エンコーディングデータを出力するエンコーダと、前記エンコーディングデータを前記メモリ装置の内部バス（ｂｕｓ）を通じて受信して保存するデータ保存部と、を備える。
【００３２】
前記メモリ装置は、前記データ保存部から出力されるデータをデコーディングするデコーダと、前記デコーダの出力データを前記メモリコントローラに伝送する出力ドライバーと、をさらに備えることができる。
【発明の効果】
【００３３】
本発明の実施形態によれば、ＤＣ電流変化によるノイズだけではなく、データのＡＣ変化によるスイッチングノイズを減少させることができる。また、本発明の実施形態によれば、コンバインドエンコーディングによって時間的にだけではなく、空間的にも０と１とが分散されているので、ＰＣＢ（Ｐｒｉｎｔｅｄ  Ｃｉｒｃｕｉｔ  Ｂｏａｒｄ）からリターン電流（ｒｅｔｕｒｎ  ｃｕｒｒｅｎｔ）が減少してノイズ及びクロストーク（ｃｒｏｓｓｔａｌｋ）などを減少させることができる。
【００３４】
本発明の詳細な説明で引用される図面をより十分に理解するために、各図面の簡単な説明が提供される。
【図面の簡単な説明】
【００３５】
【図１】一般的な単一型の並列データインターフェースシステムを示す概略図である。
【図２Ａ】一般的な８／１０ビットバランスエンコーディングを説明するための図である。
【図２Ｂ】一般的なデータバスインバージョン（ＤＢＩ）ＤＣエンコーディングを説明するための図である。
【図３】本発明の一実施形態による単一型の並列データインターフェースを使うシステムを示す図である。
【図４】本発明の他の実施形態による単一型の並列データインターフェースを使うシステムを示す図である。
【図５Ａ】本発明の一実施形態によるエンコーダの概略的な構成図である。
【図５Ｂ】本発明の一実施形態によるデコーダの概略的な構成図である。
【図６Ａ】８／１０ビットバランスコーディングされた並列データを示す図である。
【図６Ｂ】本発明の一実施形態によってエンコーディングされた並列データを示す図である。
【図６Ｃ】ＤＢＩ  ＤＣバランスコーディングされた並列データを示す図である。
【図６Ｄ】本発明の他の実施形態によってエンコーディングされた並列データを示す図である。
【図７Ａ】本発明の他の一実施形態によるエンコーダの概略的な構成図である。
【図７Ｂ】本発明の他の一実施形態によるデコーダの概略的な構成図である。
【図８】本発明の一実施形態によるメモリ装置の概略的な構成図である。
【図９】本発明の他の一実施形態による並列データインターフェースシステムを概略的に示すブロック図である。
【図１０】本発明の他の一実施形態による並列データインターフェースシステムを概略的に示すブロック図である。
【図１１Ａ】それぞれは、本発明の一実施形態によるメモリモジュールを示すブロック図である。
【図１１Ｂ】それぞれは、本発明の一実施形態によるメモリモジュールを示すブロック図である。
【図１１Ｃ】それぞれは、本発明の一実施形態によるメモリモジュールを示すブロック図である。
【図１２Ａ】それぞれ図１１Ａないし図１１Ｃに示されたメモリモジュールを利用したメモリシステムの構造を示す図である。
【図１２Ｂ】それぞれ図１１Ａないし図１１Ｃに示されたメモリモジュールを利用したメモリシステムの構造を示す図である。
【図１２Ｃ】それぞれ図１１Ａないし図１１Ｃに示されたメモリモジュールを利用したメモリシステムの構造を示す図である。
【図１２Ｄ】それぞれ図１１Ａないし図１１Ｃに示されたメモリモジュールを利用したメモリシステムの構造を示す図である。
【発明を実施するための形態】
【００３６】
本発明と本発明の動作上の利点及び本発明の実施によって達成される目的を十分に理解するためには、本発明の望ましい実施形態を例示する添付図面及び添付図面に記載の内容を参照しなければならない。以下、添付した図面を参照して、本発明の望ましい実施形態を説明することによって、本発明を詳しく説明する。各図面に付された同じ参照符号は、同じ部材を表わす。
【００３７】
図３は、本発明の一実施形態による並列データインターフェースシステム３００を示す。前記システム３００は、第１半導体装置３１０及び第２半導体装置３２０を備えている。前記第１半導体装置３１０は、メモリコントローラ（Ｍｅｍｏｒｙ  Ｃｏｎｔｒｏｌｌｅｒ）になり、前記第２半導体装置は、ＤＲＡＭ、ＳＲＡＭ、フラッシュメモリなどのメモリ装置になりうる。前記第１半導体装置３１０は、コアブロック３１１、第１エンコーダ３１２、第１出力ドライバー３１４、第１受信部３１５、第１デコーダ３１６を備えている。
【００３８】
前記コアブロック３１１は、マイクロプロセッサ（図示せず）及び内部メモリ（図示せず）を備えることができる。前記コアブロック３１１は、前記第２半導体装置３２０（例えば、ＤＲＡＭ）にデータを記録するか、前記第２半導体装置３２０（例えば、ＤＲＡＭ）からデータを読み出すために必要な命令語（Ｃｏｍｍａｎｄ）、アドレス（Ａｄｄｒｅｓｓ）などを発生させうる。
【００３９】
前記第１エンコーダ３１２は、本発明の一実施形態によるコンバインドエンコーダであって、前記コアブロック３１１から第１並列データグループを受信して、前記第１並列データグループの０と１とのビットが時空間的にランダム（あるいは、類似ランダム）に分布するように変換して出力する。第１並列データグループは、Ｎ（２以上の整数、例えば、８）ビットの並列データＤ１Ｎを二つ以上含むデータであって、例えば、８ビットの並列データＤ１Ｎを８セット含み、これをバーストデータ（ｂｕｒｓｔ  ｄａｔａ）と称する。
【００４０】
第１エンコーダ３１２の出力データは、所定の乱数列パターンを有した第２並列データグループであり得る。第２並列データグループは、Ｍ（Ｎ以上の整数）ビットのエンコーディングされた並列データＤ１Ｍ（ｅｎｃｏｄｅｄ  ｄａｔａ）を二つ以上含みうる。
【００４１】
前記第１エンコーダ３１２は、図５Ａに示された実施形態のように構成することができる。図５Ａを参照すると、第１エンコーダ３１２は、エンコーディングルックアップテーブルユニット３３０及び選択ユニット３４０を含みうる。
【００４２】
エンコーディングルックアップテーブルユニット３３０は、選択信号別に各入力並列データＤａｔａ０〜７に対応するエンコーディングされたデータを保存している複数のルックアップテーブル３３０−１〜３３０−Ｌを含む（例えば、Ｌは、２以上の整数）。すなわち、各ルックアップテーブル３３０−１〜３３０−Ｌは、入力並列データの各パターンに相応するエンコーディングされたデータパターンを保存する。
【００４３】
入力並列データは、Ｎ（２以上の整数、例えば、８）ビットであり、エンコーディングされたデータは、Ｍ（Ｎ以上の整数）ビットであり得る。エンコーディングされたデータは、入力並列データをＤＣバランスエンコーディングしたデータと同一となる。この際、同一の入力並列データのパターンに対応するエンコーディングされたデータのパターンは、ルックアップテーブル３３０−１〜３３０−Ｌ別に異なる。
【００４４】
他の実施形態では、エンコーディングされたデータは、入力並列データをスクランブリングした後、ＤＣバランスエンコーディングしたデータと同一となるか、または、エンコーディングされたデータは、入力並列データをＤＣバランスエンコーディングした後、スクランブリングしたデータと同一となる。
【００４５】
エンコーディングルックアップテーブルユニット３３０の各エンコーディングルックアップテーブル３３０−１〜３３０−Ｌは、入力並列データＤａｔａ０〜７を受信し、入力並列データＤａｔａ０〜７にマッピングされるエンコーディングデータを出力する。選択ユニット３４０は、選択信号ＳＥＬに応答して、各エンコーディングルックアップテーブル３３０−１〜３３０−Ｌから出力される多数Ｌのエンコーディングデータのうちから何れか一つを選択して出力する。
【００４６】
結局、第１エンコーダ３１２は、複数のエンコーディングルックアップテーブル３３０−１〜３３０−Ｌから、選択信号ＳＥＬに対応して、入力並列データＤａｔａ０〜７にマッピングされるエンコーディングデータを抽出して出力する。
【００４７】
ここで、選択信号ＳＥＬは、アドレス信号、バースト長（ｂｕｒｓｔ  ｌｅｎｇｔｈ）信号、及びコマンド信号のうち少なくとも一つの信号の一部であり得る。例えば、第１半導体装置３１０が、第２半導体装置３２０にデータを保存するために、あるいは第２半導体装置３２０からデータを読み出すために、第２半導体装置３２０に伝送するアドレス信号の一部が選択信号ＳＥＬとして使われる。
【００４８】
前述したように、本発明の一実施形態によれば、ルックアップテーブル３３０−１〜３３０−Ｌを用いて入力並列データを、時間と空間的にランダム（あるいは、類似ランダム）なパターンを有するエンコーディングデータにマッピングして出力する。その上に、本発明の一実施形態によれば、多数のエンコーディングルックアップテーブル３３０−１〜３３０−Ｌを備えて入力並列データ−対−エンコーディングデータのマッピングを、選択信号ＳＥＬを使って変換させることによって、８ビット入力並列データが連続して同じパターンを有しても出力されるエンコーディングデータは変わるために、エンコーディングデータは、さらに時間と空間的にランダムなパターンを有する。
【００４９】
多数のルックアップテーブル３３０−１〜３３０−Ｌにあらかじめ保存されているエンコーディングデータのパターンは、スイッチングノイズ及びクロストーク（ｃｒｏｓｓｔａｌｋ）などを最小化するパターンで決定されうる。エンコーディングデータの特徴については、後から追加的に記述する。
【００５０】
図５Ａの実施形態では、一つの入力並列データパターンに対してエンコーディングルックアップテーブルユニット３３０からＬ個のエンコーディングデータが出力され、そのうち、一つのエンコーディングデータが最終選択されて出力されるように具現される。しかし、本発明が、図５Ａに示された実施形態に限定されるものではない。例えば、選択信号ＳＥＬに応答して、Ｌ個のエンコーディングルックアップテーブル３３０−１〜３３０−Ｌのうち何れか一つのみイネーブルされ、該イネーブルされたルックアップテーブルから入力並列データパターンに該当するエンコーディングデータが出力されるように具現することが可能である。
【００５１】
再び、図３を参照すると、前記第１出力ドライバー３１４は、前記第１エンコーダ３１２の出力データを受信して、複数のデータラインを通じて前記第２半導体装置３２０（例えば、ＤＲＡＭ）に送信する。この際、第１出力ドライバー３１４は、Ｍ＊Ｋ（Ｋは、バースト長であって、２以上の整数）ビット長のバーストデータをＭビットずつ並列して順次に前記第２半導体装置３２０（例えば、ＤＲＡＭ）に送信することができる。
【００５２】
前記第２半導体装置３２０は、第２受信部３２１、第２デコーダ３２２、データ保存部３２３、第２エンコーダ３２４、及び第２出力ドライバー３２５を備えることができる。
【００５３】
前記第２受信部３２１は、前記第１出力ドライバー３１４から送信された並列データを受信する。前記第２デコーダ３２２は、前記第２受信部３２１の出力をコンバインドデコーディングして、前記第１並列データＤ１Ｎを復元する。エラーがなければ、復元された並列データＤ２Ｎは、第１半導体装置３１０の第１エンコーダ３１２の入力データＤ１Ｎと同一である。前記復元された並列データＤ２Ｎは、第２受信部３２１によって受信された並列データをＤＣバランスデコーディングした後、デスクランブリングしたデータ、またはデスクランブリング後、ＤＣバランスデコーディングしたデータと同一となる。
【００５４】
前記第２デコーダ３２２は、図５Ｂに示された実施形態のように構成することができる。図５Ｂを参照すると、第２デコーダ３２２は、デコーディングルックアップテーブルユニット３５０及び選択ユニット３６０を含みうる。デコーディングルックアップテーブルユニット３５０は、選択信号ＳＥＬ別に各入力並列データ（すなわち、エンコーディングデータ）に対応するデコーディングデータを保存している複数のデコーディングルックアップテーブル３５０−１〜３５０−Ｌを含む（例えば、Ｌは、２以上の整数）。すなわち、各ルックアップテーブル３５０−１〜３５０−Ｌは、エンコーディングデータの各パターンに対応するデコーディングデータパターンを保存する。この際、同一のエンコーディングデータのパターンに対応するデコーディングデータのパターンは、ルックアップテーブル３５０−１〜３５０−Ｌ別に異なりうる。
【００５５】
デコーディングルックアップテーブルユニット３５０の各デコーディングルックアップテーブル３５０−１〜３５０−Ｌは、エンコーディングデータを受信し、これにマッピングされるデコーディングデータを出力する。
【００５６】
選択ユニット３６０は、選択信号ＳＥＬに応答して、各デコーディングルックアップテーブル３５０−１〜３５０−Ｌから出力される多数Ｌのデコーディングデータのうちから何れか一つを選択して出力する。
【００５７】
結局、第２デコーダ３２２は、多数のデコーディングルックアップテーブル３５０−１〜３５０−Ｌから、選択信号ＳＥＬに対応して、エンコーディングデータにマッピングされるデコーディングデータを抽出して出力する。
【００５８】
選択信号ＳＥＬは、前述したように、第１半導体装置３１０が、第２半導体装置３２０に伝送したアドレス信号、コマンド信号のうち少なくとも一部であり得る。または、選択信号ＳＥＬは、第２半導体装置３２０の特定レジスタ（例えば、モードレジスタセット）に保存される信号（例えば、バースト長信号など）の一部であり得る。
【００５９】
図５Ｂの実施形態では、一つのエンコーディングデータパターンに対してデコーディングルックアップテーブルユニット３５０からＬ個のデコーディングデータが出力され、そのうち、一つのデコーディングデータが最終選択されて出力されるように具現される。しかし、本発明が、図５Ｂに示された実施形態に限定されるものではない。例えば、選択信号ＳＥＬに応答して、Ｌ個のデコーディングルックアップテーブル３５０−１〜３５０−Ｌのうち何れか一つのみイネーブルされ、該イネーブルされたルックアップテーブルからエンコーディングデータパターンに相当するデコーディングデータが出力されるように具現することが可能である。
【００６０】
再び図３を参照すると、前記データ保存部３２３は、デコーディングデータ、すなわち、復元された第１並列データＤ２Ｎを保存する。前記データ保存部３２３は、多数のメモリセルを備えるメモリセルアレイになりうる。
【００６１】
前記第２エンコーダ３２４は、前記データ保存部３２３に保存された第２並列データＤ２Ｎを受信し、ＭビットのエンコーディングデータＤ２Ｍを生成する。前記第２エンコーダ３２４は、前記第１エンコーダ３１２のエンコーディング方式と同一方式でエンコーディングデータＤ２Ｍを生成することができる。すなわち、第２エンコーダ３２４の構成及び動作は、第１エンコーダ３１２と同一であるので、これについての詳細な説明は省略する。
【００６２】
前記第２出力ドライバー３２５は、前記第２エンコーディングデータＤ２Ｍを受信して、前記第１半導体装置３１０（例えば、メモリコントローラ）に送信する。
【００６３】
第１半導体装置３１０の前記第１受信部３１５は、前記第２半導体装置３２０から出力された並列データを受信する。前記第１デコーダ３１６は、前記第１受信部３１５の出力をコンバインドデコーディングする。前記第１デコーダ３１６の構成及び動作は、第２デコーダ３２２と同一であるので、これについての詳細な説明は省略する。
【００６４】
図４は、本発明の他の実施形態による並列データインターフェースシステム４００を示す。図３及び図４を参照すると、前記システム４００は、半導体装置４１０及び４２０を備える。前記半導体装置４１０は、図３に示した第１半導体装置３１０と同一の構成を有するので、重複を避けるために説明を省略する。
【００６５】
前記半導体装置４２０は、図３に示した第２半導体装置３２０と類似した構成を有するが、図３に示した第２半導体装置３２０に比べて、第２デコーダ３２２と第２エンコーダ３２４とが備えられていないという点で差がある。
【００６６】
前記半導体装置４２０の前記第２受信部３２１は、前記半導体装置４１０の前記第１出力ドライバー３１４から送信された並列データを受信する。該受信されたデータは、コンバインドデコーディングなしにデータ保存部３２３に保存される。ここで、コンバインドデコーディングとは、第１半導体装置４１０の第１エンコーダ３１２で行われたコンバインドエンコーディングに対応するデコーディングであって、他種のデコーディング（例えば、ＣＲＣデコーディングなど）は、いくらでも行われる。
【００６７】
本実施形態では、受信されたデータは、コンバインドデコーディングなしにデータ保存部３２３に保存されるので、該保存されたデータは、コンバインドエンコーディングされたデータ、すなわち、時／空間的にランダム化されたデータである。
【００６８】
前記第２出力ドライバー３２５は、データ保存部３２３から出力されるエンコーディングデータを受信して、前記半導体装置４１０に送信することができる。
【００６９】
したがって、前記第１及び第２半導体装置の間にＮビットの並列データを伝送する場合、図３に示されたデータ保存部３２３には、コンバインドデコーディングされたデータ、すなわち、復元されたＮビットの並列データが保存されるが、図４に示されたデータ保存部３２３には、エンコーディングデータ、すなわち、コンバインドエンコーディングされたＭビット並列データが保存される。
【００７０】
図６Ａは、一般的な８／１０ビットバランスコーディングされた並列データＤＱ１ないしＤＱ１０を示す。図６Ａを参照すると、８ビットの並列データは、前記８／１０ビットバランスコーディングによって１０ビットの並列データＤＱ１ないしＤＱ１０に変換される。一周期で伝送される前記１０ビットの並列データＤＱ１ないしＤＱ１０は、０と１との個数が最大２個の差がある。しかし、前記伝送される１０ビットの並列データＤＱ１ないしＤＱ１０が点線内の場合のように経時的に変わる場合には、１０ビットのいずれもが変わるので、スイッチングノイズが最大となり、データチャンネルに伝送されるデータ信号の電気的結合による影響が大きくなって漏話（ｃｒｏｓｓｔａｌｋ）も最大となる。
【００７１】
図６Ｂは、本発明の一実施形態によるコンバインドエンコーディングされた並列データＤＱ１’ないしＤＱ１０’を示す。図３及び図６Ｂを参照すると、本発明の一実施形態によるコンバインドエンコーディングされた並列データＤＱ１’ないしＤＱ１０’は、スクランブリングと８／１０ビットバランスエンコーディングとが結合されたエンコーディングを経たデータである。
【００７２】
すなわち、エンコーディングされた並列データグループＣｏｄｅ０〜Ｃｏｄｅ４は、スクランブリング及び８／１０ビットバランスエンコーディングを通じて第１ロジックレベルを有するビット‘０’と第２ロジックレベルを有するビット‘１’とが時間及び空間的にランダムに分布されたデータである。ここで、空間的であるという意味は、並列してともに伝送されるデータ内での‘０’及び‘１’の位置がランダムに分布するということを意味し、時間的であるという意味は、同一データラインを通じて順次に伝送されるデータ内での‘０’及び‘１’の位置がランダムに分布するということを意味する。
【００７３】
したがって、前記エンコーディングデータグループＣｏｄｅ０〜Ｃｏｄｅ４では、図６Ａに示された点線内の場合が出る確率がほとんどなくなる。
【００７４】
そして、図６Ｂに示された点線内の場合のように、前記エンコーディングデータ（例えば、ＤＱ１’ないしＤＱ１０’）の一ビットの現在周期のデータ値と次の周期のデータ値とが異なる値を有する確率が５０％になる。したがって、本発明の一実施形態によって、並列データをコンバインドエンコーディングして伝送する場合、スイッチングノイズが減少し、漏話も減少する。
【００７５】
図６Ｃは、一般的なＤＢＩ  ＤＣバランスコーディングされた並列データＤＱ１’’ないしＤＱ９’’を示す。図６Ｃを参照すると、８ビットの並列データは、前記ＤＢＩ  ＤＣバランスコーディングによって９ビットの並列データＤＱ１’’ないしＤＱ９’’に変換される。図６Ｃの最初の点線内の並列データは、ＤＢＩ  ＤＣバランスコーディングによってもバランスコードが保持される場合ではない。
【００７６】
また、前記８ビットの並列データのうちから１の値を有するビット数が、０個または１個である場合も、前記ＤＢＩ  ＤＣバランスコーディングによっても、同様にバランスコードが保持されない。数学的に、前記バランスコードが保持されない場合が出る確率は２５６分の１０になる。
【００７７】
前記ＤＢＩ  ＤＣバランスコーディングの場合にも、図６Ｃの二番目の点線内の場合のように、前記９ビットの並列データＤＱ１’’ないしＤＱ９’’が経時的にいずれも変化する場合、スイッチングノイズが増加する。
【００７８】
図６Ｄは、本発明の他の一実施形態によってコンバインドエンコーディングされた並列データＤＱ１’’’ないしＤＱ９’’’を示す。図３及び図６Ｄを参照すると、本発明の他の一実施形態によってコンバインドエンコーディングされた並列データＤＱ１’’’ないしＤＱ９’’’は、スクランブリングとＤＢＩ  ＤＣバランスエンコーディングとを経たデータである。
【００７９】
すなわち、エンコーディングデータグループＣｏｄｅ０〜Ｃｏｄｅ５は、スクランブリング及びＤＢＩ  ＤＣバランスエンコーディングを通じて第１ロジックレベルを有するビット‘０’と第２ロジックレベルを有するビット‘１’とが時間及び空間的にランダムに分布されたデータである。
【００８０】
したがって、本発明の一実施形態によるコンバインドエンコーディングされた並列データＤＱ１’’’ないしＤＱ９’’’は、図６Ｃの最初の点線内の並列データパターン及び二番目の点線内の並列データパターンが出る確率がほとんどなくなる。したがって、本発明の一実施形態によって、並列データをコンバインドエンコーディングして伝送する場合、空間的にバランスコードが保持されながらも、経時的にスイッチングノイズが減少する。
【００８１】
図７Ａは、本発明の他の一実施形態によるコンバインドエンコーダの概略的な構成図である。
【００８２】
図７Ａを参照すると、エンコーダ３１２’は、シード生成器３７１、スクランブリングコード生成器３７２、バランスエンコーディングブロック３７３及びスクランブラー３７４を備えることができる。
【００８３】
シード生成器３７１は、スクランブリングコードの生成に使われるシードを生成する。しかし、シードは、レジスタなどを用いてあらかじめ保存されていることもあり、または、アドレス信号、バースト長信号、及びコマンド信号のうち少なくとも一つの信号の一部であり得る。
【００８４】
スクランブリングコード生成器３７２は、シードを用いてスクランブリングコードを生成する。スクランブリングコードは、乱数列（ｐｓｅｕｄｏ  ｒａｎｄｏｍ  ｂｉｎａｒｙ  ｓｅｑｕｅｎｃｅ）パターンのコードであり得る。スクランブリングコード生成器３７２は、シードを用いて乱数列を生成する乱数列発生器として具現されることもできるが、これに限定されるものではない。
【００８５】
スクランブラー３７４は、前記スクランブリングコードを用いて入力される第１並列データグループをスクランブリングして、第２並列データグループを生成する。スクランブラー３７４は、第１並列データグループのそれぞれのビットとスクランブリングコードのそれぞれのビットとを排他的論理和する論理演算器を含みうる。
【００８６】
ここで、第１並列データグループは、Ｎ（例えば、８）ビット並列データを二つ以上含むデータであって、本実施形態では、８セットの８ビット並列データで構成される６４ビットデータである。したがって、スクランブリングコードも６４ビットデータである。本実施形態は、バースト長が８である場合であって、第１並列データグループの長さは、並列データのビット数＊バースト長に相当する。
【００８７】
スクランブラー３７４は、６４ビットの第１並列データグループの各ビットと６４ビットのスクランブリングコードの各ビットとを１対１で排他的論理和して、６４ビットのスクランブリングされた第２並列データグループを発生させうる。説明の便宜上、特整数値（８ビット、６４ビットなど）を例として説明するが、第１並列データグループの長さ、及びスクランブリングコードの長さは、変更されうる。
【００８８】
バランスエンコーディングブロック３７３は、第２並列データグループを受信し、前記第２並列データグループの８ビットスクランブルド並列データのそれぞれをＤＣバランスエンコーディングして、Ｍ（＞Ｎ、整数）ビットバランスコードｃｏｄｅ０〜ｃｏｄｅ７を発生させる。
【００８９】
本実施形態では、バランスエンコーディングブロック３７３は、ＤＢＩ  ＤＣエンコーダであって、８ビットスクランブルド並列データに含まれた第１ロジックレベルのビット数または第２ロジックレベルのビット数によって、選択的に前記８ビットスクランブルド並列データを反転し、前記選択的に反転された前記８ビットスクランブルド並列データに反転如何を表わすフラグ信号ＤＢＩを追加する。しかし、バランスエンコーディングブロック３７３が、ＤＢＩ  ＤＣエンコーダに限定されるものではなく、また、図７Ａに示されたように、一ビットのフラグ信号ＤＢＩを使うＤＢＩ  ＤＣエンコーダに限定されるものでもない。
【００９０】
例えば、バランスエンコーディングブロック３７３は、アメリカ登録特許第７，４９５，５８７号に開示されたように、二つのビットのフラグ信号を使うＤＢＩ  ＤＣエンコーダとして具現可能である。
【００９１】
出力ドライバー３１４は、バランスコードｃｏｄｅ０〜ｃｏｄｅ７及び前記シードデータを順次に複数のデータラインを通じて出力する。例えば、ＤＱ０ないしＤＱ７及びフラグ信号ＤＢＩで構成された各バランスコードｃｏｄｅ０〜ｃｏｄｅ７を８ＵＩ（ＵｎｉｔＩｎｔｅｒｖａｌ）の間に、Ｃｏｄｅ０からＣｏｄｅ７まで順次に出力した後、後続して、前記シードデータを同一の複数のデータラインを通じて出力する。
【００９２】
ここで、ＵＩとは、１ビット（または、シンボル）長を意味する。したがって、図７Ａに示された実施形態では、最初のＵＩでは、Ｃｏｄｅ０が並列して出力され、その次のＵＩでは、Ｃｏｄｅ１が出力される。そして、８番目のＵＩでバーストデータの最後のバランスコードであるＣｏｄｅ７が並列して出力された後には、シードデータが複数のデータラインを通じて出力される。
【００９３】
本実施形態によれば、シードデータが別途の伝送ラインではないデータラインを通じてデータに後続して出力されるので、シードを伝送するための別途のラインやピンを要しない。
【００９４】
前記シードのビット数によってシードの伝送に必要となるＵＩが変わり、またシードを伝送する順序も変わりうる。例えば、シーツデータを先に伝送した後、バーストデータを伝送することもできる。
【００９５】
図７Ｂは、本発明の他の一実施形態によるコンバインドデコーダの概略的な構成図である。図７Ｂを参照すると、デコーダ３２２’は、デスクランブリングコード生成器３８１、バランスデコーディングブロック３８２及びデスクランブラー３８３を備えることができる。
【００９６】
デスクランブリングコード生成器３８１は、シードを用いてデスクランブリングコードを生成する。デスクランブリングコード生成器３８１は、図７Ａに示されたスクランブリングコード生成器３７２と同様に具現可能である。デスクランブリングコードは、乱数列パターンのコードであって、スクランブリングコードと同一であり得る。
【００９７】
シードは、複数のデータラインを通じて受信される。例えば、受信部３２１は、複数のデータラインを通じてＭ（２以上の整数）ビットバランスコード及びシードを順次に受信し、該受信されたシードをデスクランブリングコード生成器３８１に提供する。
【００９８】
バランスデコーディングブロック３８２は、多数のバランスコードｃｏｄｅ０〜ｃｏｄｅ７を含む総７２ビットの並列データグループ（ｂｕｒｓｔ  ｄａｔａ）を受信し、前記並列データグループの９ビットスクランブルドバランスコードのそれぞれをＤＣバランスデコーディングして、８セットの８ビットスクランブルド並列データを発生させる。すなわち、バランスデコーディングブロック３８２の出力は、６４ビットスクランブルドデータである。
【００９９】
本実施形態では、バランスデコーディングブロック３８２は、ＤＢＩ  ＤＣデコーダであって、フラグ信号ＤＢＩによって８ビットスクランブルド並列データＤＱ０〜ＤＱ７を選択的に反転する。しかし、前述したバランスエンコーディングブロック３７３と同等に、バランスデコーディングブロック３８２もＤＢＩ  ＤＣデコーダに限定されるものではなく、また、図７Ｂに示されたように、一ビットのフラグ信号ＤＢＩを使うＤＢＩ  ＤＣデコーダに限定されるものでもない。
【０１００】
デスクランブラー３８３は、前記デスクランブリングコード（例えば、６４ビットの乱数列）を用いてバランスデコーディングブロック３８２から出力された６４ビットのスクランブルドデータをデスクランブリングして、該デスクランブルされたデータを発生させる。デスクランブラー３８３は、バランスデコーディングブロック３８２から出力されたデータのそれぞれのビットとデスクランブリングコードのそれぞれのビットとを排他的論理和する論理演算器を含みうる。
【０１０１】
デスクランブラー３８３の出力データは、データ保存部３２３に保存することができる。
【０１０２】
図８は、本発明の一実施形態によるメモリ装置４３０の概略的な構成図である。図８のメモリ装置４３０は、前述した第１半導体装置３１０、４１０または第２半導体装置３２０、４２０と類似した構成及び機能を有する。したがって、重複を避けるために異なる点を中心に記述する。図８を参照すると、メモリ装置４３０は、受信部３２１’、エンコーダ３１２’’、データ保存部３２３、デコーダ３２２’’及び出力ドライバー３２５’を備える。
【０１０３】
メモリ装置４３０は、メモリコントローラ（図示せず）の制御によってデータを保存することができる。受信部３２１’は、メモリコントローラの記録命令に基づいて、メモリコントローラから複数のデータラインを通じて伝送される第１並列データグループを受信する。
【０１０４】
エンコーダ３１２’’は、スクランブラー３７４及びバランスエンコーディングブロック３７３を含む。スクランブラー３７４及びバランスエンコーディングブロック３７３の構成及び動作は、図７Ａを参照して説明したところと同一であるので、これについての詳細な説明は省略する。また、エンコーダ３１２’’は、図７Ａに示されたように、スクランブリングコード発生器３７２をさらに備えることができる。または、エンコーダ３１２’’は、図５Ａに示されたように、ルックアップテーブルを用いて具現可能である。
【０１０５】
データ保存部３２３は、前記エンコーディングデータを、内部バスを通じて受信して保存する。
【０１０６】
図３及び図４のシステム３００、４００では、二つ以上の装置の間の並列インターフェースで発生するスイッチングノイズ及びＤＣ電流変化量を減らすために、一つの半導体装置３１０、４１０でコンバインドエンコーディングを行ってエンコーディングされたデータを他の半導体装置３２０、４２０に伝送する。これに比べて、図８のメモリ装置４３０は、メモリ装置４３０に受信された並列データをスクランブリングあるいはコンバインドエンコーディングをした後、内部データ保存部３２３に保存する。メモリ装置の集積度が高くなり、並列してインターフェースされるデータの量も増加するにつれて、メモリ装置の内部のデータ伝送時に発生するクロストークなどのノイズを減らすことが重要なイシューになっている。
【０１０７】
本発明の実施形態では、外部から受信された並列データをスクランブリングあるいはコンバインドエンコーディングを通じて‘０’と‘１’とを時／空間的に分散して内部バスを通じて伝送することによって、メモリ装置内でのデータ伝送時にクロストークなどのノイズを減らすことができ、これによって、メモリ装置の性能が向上する。
【０１０８】
デコーダ３２２’’は、データ保存部３２３から出力される並列データをデスクランブリングあるいはコンバインドデコーディングして出力する。出力ドライバー３２５’は、デコーダ３２２’’の出力データを外部に出力する。
【０１０９】
デコーダ３２２’’は、バランスデコーディングブロック３８２及びデスクランブラー３８３をさらに含む。バランスデコーディングブロック３８２及びデスクランブラー３８３の構成及び動作は、図７Ｂを参照して説明したところと同一であるので、これについての詳細な説明は省略する。また、デコーダ３２２’’は、図７Ｂに示されたように、デスクランブリングコード発生器３８１をさらに備えることができる。または、デコーダ３２２’’は、図５Ｂに示されたように、ルックアップテーブルを用いて具現可能である。
【０１１０】
図９及び図１０のそれぞれは、本発明の他の一実施形態による並列データインターフェースシステム１０００を概略的に示すブロック図である。
【０１１１】
図９を参照すると、並列データインターフェースシステム１０００は、メモリコントローラ４４０及びメモリ装置４５０を備える。メモリコントローラ４４０は、メモリ装置４５０にデータを書き込むか、メモリ装置４５０からデータを読み出すなどの一連の動作を行うために、メモリ装置４５０にコマンド／アドレス信号ＣＡを送信する。
【０１１２】
メモリ装置４５０は、メモリコントローラ４４０からデータの書き込み命令（Ｗｒｉｔｅ）または読み出し命令（Ｒｅａｄ）が印加された時、クロック信号ＤＱ＿ＣＬＫを用いてデータＤＱの入出力を行う。
【０１１３】
メモリコントローラ４４０とメモリ装置４５０との間の並列データの送受信時に、前述したように、本発明の一実施形態によるコンバインドエンコーディングを行った後、エンコーディングデータを送受信することができる。
【０１１４】
または、メモリ装置４５０は、メモリコントローラ４４０から並列データを受信して、内部的にコンバインドエンコーディングして保存することができる。
【０１１５】
図１０を参照すると、並列データインターフェースシステム１０００’は、メモリコントローラ５３０及び多数のメモリ装置５５０を備える。メモリコントローラ５３０は、各メモリ装置５５０とコンバインドエンコーディングされたデータとを送受信することができる。
【０１１６】
図１１Ａないし図１１Ｃのそれぞれは、本発明の一実施形態によるメモリモジュールを示すブロック図である。図１１Ａに示されたメモリモジュール５００ａは、ＵＤＩＭＭ（ｕｎｂｕｆｆｅｒｅｄ  ｄｕａｌ  ｉｎ−ｌｉｎｅ  ｍｅｍｏｒｙ  ｍｏｄｕｌｅ）の一例である。
【０１１７】
メモリモジュール５００ａは、メモリコントローラ５３０から入力されるコマンド／アドレス信号ＣＡを受信し、クロック信号ＤＱ＿ＣＬＫに応答してデータＤＱを入出力することができる複数個のメモリ装置５５０を含む。メモリモジュール５００ａは、また複数個のメモリ装置のそれぞれに連結されて、外部とデータＤＱの入出力通路となるデータ配線、コマンド／アドレス信号ＣＡをメモリ装置５５０に伝達するためのコマンド／アドレス配線、クロック信号ＤＱ＿ＣＬＫをメモリ装置５５０に供給するためのクロック配線を含みうる。
【０１１８】
クロック信号ＤＱ＿ＣＬＫ、コマンド／アドレス信号ＣＡ及びデータＤＱは、メモリコントローラ５３０から別途のバッファを経ず、メモリモジュール５００ａの各メモリ装置５５０に入力される。
【０１１９】
図１１Ｂに示されたメモリモジュール５００ｂは、ＲＤＩＭＭ（ｒｅｇｉｓｔｅｒｅｄｄｕａｌ  ｉｎ−ｌｉｎｅ  ｍｅｍｏｒｙ  ｍｏｄｕｌｅ）の一例である。コマンド／アドレス信号ＣＡは、レジスタ回路ＲＥＧ５３１を経てメモリモジュール５００ｂの各メモリ装置５５０に入力される一方、クロック信号ＤＱ＿ＣＬＫとデータＤＱは、レジスタ回路ＲＥＧ５３１を経ず、メモリモジュール５００ｂの各メモリ装置５５０に入力される。レジスタ回路５３１は、コマンド／アドレス信号ＣＡをバッファリングするためのレジスタを含みうる。レジスタ回路５３１は、場合によってメモリモジュール５００ｂではないチップセット上に具現可能であり、この場合、メモリモジュール５００ｂで削除されうる。
【０１２０】
図１１Ｃに示されたメモリモジュール５００ｃは、ＦＢＤＩＭＭ（Ｆｕｌｌｙ  Ｂｕｆｆｅｒｅｄ  ＤＩＭＭ）の一例であって、メモリモジュール上にバッファ（ＢＵＦＦＥＲ）５３２を有するメモリモジュールの実施形態である。図１１Ｃに示したように、バッファ５３２を含んだメモリモジュール５００ｃは、一つのチャンネルＣＨを用いて外部（メモリコントローラ５３０）と連結され、チャンネルＣＨと連結されたバッファ５３２を通じてのみ外部と通信が可能である。すなわち、メモリモジュール５００ｃ上のあらゆるメモリ装置５５０は、チャンネルＣＨと連結されたバッファ５３２を通じてのみメモリコントローラ５３０からクロック信号ＤＱ＿ＣＬＫ、コマンド／アドレス信号ＣＡとデータＤＱとを入力され、またデータＤＱを外部に出力することができる。
【０１２１】
図１２Ａないし図１２Ｄは、それぞれ図１１Ａないし図１１Ｃに示されたメモリモジュールを利用したメモリシステムの構造を示す。図１２Ａないし図１２Ｄを参照すると、メモリシステムは、前述したメモリモジュール５００ａ、５００ｂ、または５００ｃを多数個含んで具現可能である。
【０１２２】
図１２Ａないし図１２Ｄに示された実施形態で、メモリコントローラ５３０は、各メモリ装置５５０と並列データの送受信時に、前述したように、本発明の一実施形態によるコンバインドエンコーディングを行った後、エンコーディングデータを送受信することができる。または、各メモリ装置５５０は、メモリコントローラ５３０から並列データを受信して、内部的にコンバインドエンコーディングして保存することができる。
【０１２３】
前述した本発明の一実施形態による並列データインターフェースシステム１０００、１０００’及びメモリモジュール５００ａ〜５００ｃでは、メモリコントローラからメモリ装置にクロック信号ＤＱ＿ＣＬＫを供給するが、本発明が、これに限定されるものではない。例えば、本発明の他の実施形態では、クロック信号ＤＱ＿ＣＬＫの代りに、データストローブ信号ＤＱＳが使われる。本発明のまた他の実施形態では、クロック信号ＤＱ＿ＣＬＫやデータストローブ信号ＤＱＳをメモリコントローラからメモリ装置に供給せず、メモリ装置内でＣＤＲ（Ｃｌｏｃｋ  Ｄａｔａ  Ｒｅｃｏｖｅｒｙ）方式で受信されるデータからクロック信号を復旧して使うこともできる。したがって、本発明は、前述した実施形態に限定されず、多様な変更が可能である。本発明は、コンピュータで読み取り可能な記録媒体にコンピュータで読み取り可能なコードとして具現することが可能である。コンピュータで読み取り可能な記録媒体は、コンピュータシステムによって読み取れるデータが保存されるあらゆる種類の記録装置を含む。コンピュータで読み取り可能な記録媒体の例としては、ＲＯＭ、ＲＡＭ、ＣＤ−ＲＯＭ、磁気テープ、光データ保存装置などがある。また、コンピュータで読み取り可能な記録媒体は、ネットワークで連結されたコンピュータシステムに分散されて、分散方式でコンピュータ読み取り可能なコードが保存されて実行可能である。そして、本発明を具現するための機能的な（ｆｕｎｃｔｉｏｎａｌ）プログラム、コード及びコードセグメントは、本発明が属する技術分野のプログラマーによって容易に推論されうる。
【０１２４】
本発明は、図面に示された一実施形態を参考にして説明されたが、これは例示的なものに過ぎず、当業者ならば、これより多様な変形及び均等な他実施形態が可能であるという点を理解できるであろう。したがって、本発明の真の技術的保護範囲は、特許請求の範囲の技術的思想によって決定されるべきである。
【産業上の利用可能性】
【０１２５】
本発明は、コンバインドコーディングを利用した半導体装置およびメモリ装置に使われる。
【符号の説明】
【０１２６】
３００、４００、１０００、１０００’：並列データインターフェースシステム
３１０、３２０、４１０、４２０、４３０：半導体装置
３１１：コアブロック
３１２、３２４：エンコーダ
３１４、３２５：出力ドライバー
３１５、３２１：受信部
３１６、３２２：デコーダ
３３０、３５０：エンコーディングルックアップテーブルユニット
３４０、３６０：選択ユニット
【図１】
2011187153.tif 000003
【図２Ａ】
2011187153.tif 000004
【図２Ｂ】
2011187153.tif 000005
【図３】
2011187153.tif 000006
【図４】
2011187153.tif 000007
【図５Ａ】
2011187153.tif 000008
【図５Ｂ】
2011187153.tif 000009
【図６Ａ】
2011187153.tif 000010
【図６Ｂ】
2011187153.tif 000011
【図６Ｃ】
2011187153.tif 000012
【図６Ｄ】
2011187153.tif 000013
【図７Ａ】
2011187153.tif 000014
【図７Ｂ】
2011187153.tif 000015
【図８】
2011187153.tif 000016
【図９】
2011187153.tif 000017
【図１０】
2011187153.tif 000018
【図１１Ａ】
2011187153.tif 000019
【図１１Ｂ】
2011187153.tif 000020
【図１１Ｃ】
2011187153.tif 000021
【図１２Ａ】
2011187153.tif 000022
【図１２Ｂ】
2011187153.tif 000023
【図１２Ｃ】
2011187153.tif 000024
【図１２Ｄ】
2011187153.tif 000025