JP3976923B2 - Semiconductor device - Google Patents
Semiconductor device Download PDFInfo
- Publication number
- JP3976923B2 JP3976923B2 JP03350699A JP3350699A JP3976923B2 JP 3976923 B2 JP3976923 B2 JP 3976923B2 JP 03350699 A JP03350699 A JP 03350699A JP 3350699 A JP3350699 A JP 3350699A JP 3976923 B2 JP3976923 B2 JP 3976923B2
- Authority
- JP
- Japan
- Prior art keywords
- bit
- data
- bits
- circuit
- position information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、半導体装置に関し、特に、データバス、アドレスバス、チップセレクトバスなどの大きいバス幅を有する(すなわち、多くのバスラインを有する)バスを介して接続される複数の半導体チップを含む半導体装置に関する。
【0002】
【従来の技術】
近年、マルチメディアという新しい分野が開拓されている。この分野の大きな特徴として、動画像を扱うことが挙げられる。動画像を扱うためには、大量のデータを高速に転送することが要求される。この要求を満たすために、一般には、データを転送するためのデータバスのバス幅を広げている。
【0003】
しかし、データバスのバス幅を広げることは、半導体装置の規模を大きくすることにつながる。従来、データバスとアドレスバスとを共用することにより、半導体装置の規模の増大を抑制する技術が開発されている。
【0004】
【発明が解決しようとする課題】
しかしながら、従来の技術では、データバスとアドレスバスとを単に共用させるのみであり、データバスそのもの(またはアドレスバスそのもの)のバス幅を小さくすることができなかった。
【0005】
本発明は、小さいバス幅を有するバスを介して接続された複数の半導体チップを含む半導体装置を提供することを目的とする。
【0006】
【課題を解決するための手段】
本発明の半導体装置は、バスを介して接続された送信部と受信部とを備えた半導体装置であって、前記送信部は、複数のビットを含むデータを符号化することにより、前記データに含まれる前記複数のビットのうち選択された少なくとも1つのビットの位置を示すビット位置情報を生成する符号化部と、前記ビット位置情報を前記バスに出力する出力部とを含み、前記受信部は、前記ビット位置情報を前記バスから受け取る入力部と、前記ビット位置情報を復号化することにより前記データを生成する復号化部とを含む。これにより、上記目的が達成される。
【0007】
前記選択された少なくとも1つのビットは、特定の論理値を有するビットであってもよい。
【0008】
前記選択された少なくとも1つのビットは、前回のデータに比較して変化した論理値を有するビットであってもよい。
【0009】
前記送信部は、前記データに含まれる複数のビットのうち前記特定の論理値を有するビットの数が前記特定の論理値以外の論理値を有するビットの数より大きいか否かを示すビット数比較情報を生成するビット数比較情報生成部をさらに含み、前記出力部は、前記ビット位置情報と前記ビット数比較情報とを前記バスに出力し、前記入力部は、前記ビット位置情報と前記ビット数比較情報とを前記バスから受け取り、前記復号化部は、前記ビット数比較情報に基づいて前記ビット位置情報を復号化することにより前記データを生成してもよい。
【0010】
前記符号化部は、前記データを符号化することにより、複数のビット位置情報を生成し、前記出力部は、前記複数のビット位置情報を前記バスにシリアルに出力してもよい。
【0011】
本発明の他の半導体装置は、バスに接続された半導体装置であって、複数のビットを含むデータを符号化することにより、前記データに含まれる前記複数のビットのうち選択された少なくとも1つのビットの位置を示すビット位置情報を生成する符号化部と、前記ビット位置情報を前記バスに出力する出力部とを備えており、これにより、上記目的が達成される。
【0012】
本発明の他の半導体装置は、バスに接続された半導体装置であって、データに含まれる複数のビットのうち選択された少なくとも1つのビットの位置を示すビット位置情報を前記バスから受け取る入力部と、前記ビット位置情報を復号化することにより前記データを生成する復号化部とを備えており、これにより、上記目的が達成される。
【0013】
以下、作用を説明する。
【0014】
本発明の半導体装置によれば、データに含まれる複数のビットのうち選択された少なくとも1つのビットの位置を示すビット位置情報が生成され、そのビット位置情報が送信される。送信されるべきデータのビット数より少ないビット数を有するビット位置情報を用いて、データの内容が送信部から受信部に伝送される。これにより、送信部と受信部とを結ぶバスのビット幅を送信されるべきデータのビット幅より小さくすることができる。例えば、8ビットのデータを3ビットのバスを用いて送信することが可能になる。その結果、半導体装置の規模を低減することができる。
【0015】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施の形態を説明する。
【0016】
(実施の形態1)
図1は、本発明の実施の形態1の半導体装置100の構成を示す。半導体装置100は、半導体チップCHIP0と半導体チップCHIP1とを含む。半導体チップCHIP0と半導体チップCHIP1とは、バス110を介して互いに接続されている。バス110は、信号ライン110a、110bおよび110cを含む。バス110の幅は、3ビットである。3ビットのビット位置情報(DB00,DB01,DB02)がバス110を介して半導体チップCHIP0から半導体チップCHIP1に転送される。
【0017】
半導体チップCHIP0は、内部回路INT0と出力回路OUT0とを含む。内部回路INT0は、8ビットのデータを生成する。出力回路OUT0は、内部回路INT0によって生成される8ビットのデータを符号化することにより、ビット位置情報を生成する符号化部120と、ビット位置情報をバス110に出力する出力部122とを含む。このように、半導体チップCHIP0は、データを送信する送信部として機能する。
【0018】
半導体チップCHIP1は、入力回路IN1と内部回路INT1とを含む。入力回路IN1は、ビット位置情報をバス110から受け取る入力部130と、そのビット位置情報を復号化することにより8ビットのデータを生成する復号化部132とを含む。入力回路IN1によって生成される8ビットのデータは、内部回路INT1に出力される。このように、半導体チップCHIP1は、データを受信する受信部として機能する。
【0019】
ビット位置情報は、内部回路INT0によって生成されるデータに含まれる8ビットのうち選択された少なくとも1つのビットの位置を示す。例えば、内部回路INT0によって8ビットのデータ(0,1,0,1,0,0,1,0)が生成された場合を想定する。この場合、論理値「1」を有するビットの位置は、(0,0,1)、(0,1,1)および(1,1,0)によって表される。従って、論理値「1」を有するビットが選択される場合には、符号化部120は、選択された少なくとも1つのビットの位置を示す情報として、複数のビット位置情報(0,0,1)、(0,1,1)および(1,1,0)を生成し、出力部122は、これらの複数のビット位置情報をバス110にシリアルに出力する。
【0020】
同様にして、8ビットのデータ(0,1,0,1,0,0,1,0)において論理値「0」を有するビットの位置は、(0,0,0)、(0,1,0)、(1,0,0)、(1,0,1)および(1,1,1)によって表される。従って、論理値「0」を有するビットが選択される場合には、符号化部120は、選択された少なくとも1つのビットの位置を示す情報として、複数のビット位置情報(0,0,0)、(0,1,0)、(1,0,0)、(1,0,1)および(1,1,1)を生成し、出力部122は、これらの複数のビット位置情報をバス110にシリアルに出力する。
【0021】
このように、8ビットのデータを転送する代わりに、そのデータに含まれる8ビットのうち特定の論理値を有するビットの位置を示す情報(すなわち、ビット位置情報)を転送することにより、転送されるデータのビット幅より小さいビット幅を有するバスを用いてデータを転送することが可能になる。これにより、バスの幅を従来に比べて低減することができる。その結果、半導体装置100の規模を低減することができる。
【0022】
また、8ビットのデータを転送する代わりに3ビットのビット位置情報を転送することにより、データの転送効率を向上させることができる。以下、データの転送効率が向上する例を説明する。ここで、8ビットのデータに対して、ビットパターン00〜ビットパターン08を以下のように定義する。
【0023】
ビットパターン00:データに含まれる全ビットの論理値が「1」:1通り
ビットパターン01:データに含まれる1ビットの論理値が「1」:8通り
ビットパターン02:データに含まれる2ビットの論理値が「1」:28通り
ビットパターン03:データに含まれる3ビットの論理値が「1」:56通り
ビットパターン04:データに含まれる4ビットの論理値が「1」:70通り
ビットパターン05:データに含まれる5ビットの論理値が「1」:56通り
ビットパターン06:データに含まれる6ビットの論理値が「1」:28通り
ビットパターン07:データに含まれる7ビットの論理値が「1」:8通り
ビットパターン08:データに含まれる全ビットの論理値が「0」:1通り
ビットパターン00〜ビットパターン08を転送するためには1サイクル〜9サイクルがそれぞれ必要である。ビットパターン00〜ビットパターン08の出現確率がそれぞれ20%、45%、30%、4%、0.5%、0.3%、0.15%、0.04%、0.01%であるという条件下では、3ビットのデータバス(すなわち、バス110)を用いて平均2.22サイクルでデータを転送することになる。これは、6.66ビットのデータバスを用いて1サイクルでデータを転送することと等価である。従って、8ビットのデータバスを用いて1サイクルでデータを転送する場合に比較して、データバスの1ビット分以上データの転送効率が向上する。
【0024】
出力回路OUT0は、内部回路INT0によって生成されるデータに含まれる8ビットのうち特定の論理値を有するビットの数がその特定の論理値以外の論理値を有するビットの数より多いか否かを示すビット数比較情報を生成するビット数比較情報生成部124をさらに含んでいてもよい。例えば、その特定の論理値は論理値「1」である。
【0025】
以下の説明では、その特定の論理値が論理値「1」である場合には、ビット数比較情報を内部HL偏り判定信号IHLDということにする。すなわち、内部HL偏り判定信号IHLDは、内部回路INT0によって生成されるデータに含まれる8ビットのうち論理値「1」を有するビットの数が論理値「0」を有するビットの数より多いか否かを示す信号である。
【0026】
内部回路INT0によって生成されるデータに含まれる8ビットのうち論理値「1」を有するビットの数が論理値「0」を有するビットの数より多い場合には、内部HL偏り判定信号IHLDのレベルはハイレベル(”H”)となる。それ以外の場合には、内部HL偏り判定信号IHLDのレベルはローレベル(”L”)となる。内部HL偏り判定信号IHLDは、符号化部120と出力部122とに供給される。
【0027】
符号化部120は、内部HL偏り判定信号IHLDのレベルに応じて、より少ない数のビット位置情報を生成するように構成されていることが好ましい。このような構成により、ビット位置情報を半導体チップCHIP0から半導体チップCHIP1に転送する回数を低減することができるからである。例えば、内部HL偏り判定信号IHLDのレベルがローレベル(”L”)である場合には論理値「1」を有するビットの位置を示すビット位置情報を生成し、内部HL偏り判定信号IHLDのレベルがハイレベル(”H”)である場合には論理値「0」を有するビットの位置を示すビット位置情報を生成することにより、内部HL偏り判定信号IHLDのレベルにかからわらず、符号化部120によって生成されるビット位置情報の数を4個以下とすることができる。
【0028】
出力部122は、内部HL偏り判定信号IHLDをHL偏り判定信号HLDとして信号ライン112に出力する。
【0029】
符号化部120は、ビット位置情報の転送を制御するための内部データ転送制御信号ITRを生成する。内部データ転送制御信号ITRは、出力部122に供給される。出力部122は、内部データ転送制御信号ITRをデータ転送制御信号TRとして信号ライン114に出力する。
【0030】
入力部130は、ビット位置情報をバス110から受け取り、HL偏り判定信号HLDを信号ライン112から受け取り、データ転送制御信号TRを信号ライン114から受け取る。
【0031】
復号化部132は、HL偏り判定信号HLDのレベルに応じて、ビット位置情報を復号化する。例えば、HL偏り判定信号HLDのレベルがローレベル(”L”)である場合には、復号化部132は、ビット位置情報が論理値「1」を有するビットの位置を示すと解釈してそのビット位置情報を復号化する。HL偏り判定信号HLDのレベルがハイレベル(”H”)である場合には、復号化部132は、ビット位置情報が論理値「0」を有するビットの位置を示すと解釈してそのビット位置情報を復号化する。このように、HL偏り判定信号HLDの解釈は、送信側の符号化部120と受信側の復号化部132との間で予め取り決められている必要がある。
【0032】
また、8ビットのデータを転送する代わりに、1ビットのHL偏り判定信号HLDと3ビットのビット位置情報とを転送することにより、データの転送効率を向上させることができる。以下、データの転送効率が向上する例を説明する。ここで、8ビットのデータに対して、ビットパターン10〜ビットパターン14を以下のように定義する。
【0033】
ビットパターン10:データに含まれる全ビットの論理値が「0」または「1」:2通り
ビットパターン11:データに含まれる1ビットの論理値が「0」または「1」:16通り
ビットパターン12:データに含まれる2ビットの論理値が「0」または「1」:56通り
ビットパターン13:データに含まれる3ビットの論理値が「0」または「1」:112通り
ビットパターン14:データに含まれる4ビットの論理値が「0」または「1」:70通り
ビットパターン10〜ビットパターン14を転送するためには1サイクル〜5サイクルがそれぞれ必要である。ビットパターン10〜ビットパターン14の出現確率がそれぞれ40%、50%、6%、3.9%、0.1%であるという条件下では、4ビットのデータバス(すなわち、信号ライン112およびバス110)を用いて平均1.74サイクルでデータを転送することになる。これは、6.96ビットのデータバスを用いて1サイクルでデータを転送することと等価である。従って、8ビットのデータバスを用いて1サイクルでデータを転送する場合に比較して、データバスの1ビット分以上データの転送効率が向上する。
【0034】
なお、内部回路INT0によって生成されたデータに含まれるすべてのビットの論理値が「1」(または論理値「0」)である場合には、ビット位置情報は転送されない。この場合には、データ転送制御信号TRを用いて、ビット位置情報が転送されないことを出力回路OUT0から入力回路IN1に伝達すればよい。すべてのビットの論理値が「1」か「0」かの区別は、HL偏り判定信号HLDを用いて判定することが可能である。
【0035】
なお、ビット位置情報(DB00,DB01,DB02)を転送するためのバス110、HL偏り判定信号HLDを転送するための信号ライン112、データ転送制御信号TRを転送するための信号ライン114の少なくとも一部をアドレスバス用のラインと共用してもよい。半導体チップCHIP0と半導体チップCHIP1との間の信号ラインを共用化することにより、信号ラインを設けるために必要な面積を低減することができる。その結果、半導体装置100の規模を低減することができる。
【0036】
なお、図1に示される例では、内部回路INT0によって生成されるデータのビット数は8であり、半導体チップCHIP0から半導体チップCHIP1に転送されるビット位置情報のビット数は3である。しかし、本発明の適用はこれらのビット数に限定されない。内部回路INT0は、任意のビット数を有するデータを生成し得る。また、任意のビット数を有するビット位置情報が半導体チップCHIP0から半導体チップCHIP1に転送され得る。
【0037】
図2は、図1に示される半導体チップCHIP0の出力回路OUT0の構成を示す。
【0038】
符号化部120は、出力データ保持回路OREGと、飛び越し可能シフトレジスタJREGと、エンコード素子ENC00〜ENC07とを含む。
【0039】
出力部122は、出力バッファOBUF0、OBUF1およびOBUF2を含む。
【0040】
ビット数比較情報生成部124は、HL偏り判定回路COMPを含む。
【0041】
出力回路OUT0は、半導体チップCHIP0の内部回路INT0から出力される8ビットのデータを受け取る。図2では、8ビットのデータの各ビットがIDB00〜IDB07と表記されている。8ビットのデータは、出力データ保持回路OREGとHL偏り判定回路COMPとに入力される。
【0042】
HL偏り判定回路COMPは、入力されたデータに含まれる8ビットのうち論理値「1」を有するビット(すなわち、”H”のビット)の数と論理値「0」を有するビット(すなわち、”L”のビット)の数とを比較する。”H”のビットの数が”L”のビットの数より多い場合には、HL偏り判定回路COMPは、ハイレベル(すなわち、”H”)の内部HL偏り判定信号IHDLを出力する。”L”のビットの数が”H”のビットの数より多い場合には、HL偏り判定回路COMPは、ローレベル(すなわち、”L”)の内部HL偏り判定信号IHDLを出力する。
【0043】
出力データ保持回路OREGは、内部データ転送制御信号ITRが“H”となるタイミングで、内部回路INT0から出力されるデータをラッチし、そのデータを保持する。
【0044】
内部データ転送制御信号ITRは、飛び越し可能シフトレジスタJREGから出力される。内部データ転送制御信号ITRが最初に“H”となるタイミングは、データラッチ信号TRRに応答して決定される。内部データ転送制御信号ITRがそれ以降に“H”となるタイミングは、飛び越し可能シフトレジスタJREGによって決定される。
【0045】
出力データ保持回路OREGは、“H”の内部HL偏り判定信号IHLDを受け取ると、データに含まれるビットIDB00〜IDB07の論理値を反転し、反転された論理値を有するビットをビットROUT00〜ROUT07として飛び越し可能シフトレジスタJREGに出力する。一方、出力データ保持回路OREGは、”L”の内部HL偏り判定信号IHLDを受け取ると、データに含まれるビットIDB00〜IDB07をそのままビットROUT00〜ROUT07として飛び越し可能シフトレジスタJREGに出力する。
【0046】
従って、データに含まれるビットIDB00〜IDB07のうち“H”のビットの数が多い場合には、”H”のビットは”L”のビットに反転されて出力され、”L”のビットは”H”のビットに反転されて出力される。データに含まれるビットIDB00〜IDB07のうち“L”のビットの数が多い場合には、このような反転動作は行われない。
【0047】
飛び越し可能シフトレジスタJREGは、出力データ保持回路OREGから出力されるビットROUT00〜ROUT07を受け取り、クロック信号CLKに同期して、ビットROUT00〜ROUT07のうちの“H”のビットを順次選択し、選択されたビットに対応する選択信号を“H”とする。
【0048】
例えば、ビットROUT00〜ROUT07のうちビットROUT00のみが“H”である場合には、飛び越し可能シフトレジスタJREGは、ビットROUT00に対応する選択信号REG00を“H”にする。
【0049】
また、例えば、ビットROUT00〜ROUT07のうちビットROUT01、ROUT02のみが“H”である場合には、飛び越し可能シフトレジスタJREGは、ビットROUT01、ROUT02に対応する選択信号REG01、REG02をクロック信号CLKに同期して順次“H”にする。
【0050】
エンコード素子ENC00〜ENC07のそれぞれは、選択信号REG00〜REG07のうち対応する1つに応答して、自己のエンコード素子の位置を示す3ビットの位置信号を出力する。すなわち、選択信号REG0kが”H”である場合には、エンコード素子ENC0kは自己の位置を示す3ビットの位置信号Skを出力バッファOBUF0に出力する。ここで、kは0〜7の整数である。
【0051】
この位置信号は、“H”の選択信号が入力されたエンコード素子の位置を示す。従って、この位置信号は、ビットROUT00〜ROUT07のうち“H”のビットの位置を示す。ビットROUT00〜ROUT07のうち”H”のビットの位置は、データに含まれるビットIDB00〜IDB07のうち”H”のビットの数が”L”のビットの数より多い場合にはデータに含まれる”L”のビットの位置を示し、それ以外の場合にはデータに含まれる”H”のビットの位置を示す。
【0052】
エンコード素子ENC00〜ENC07のいずれか1つから3ビットの位置信号が出力されると、その位置信号は出力バッファOBUF0に一時的に格納される。内部データ転送制御信号ITRの立ち下がりの後に、クロック信号CLKに同期して、バッファOBUF0に格納された位置信号がビット位置情報(DB00,DB01,DB02)として出力される。
【0053】
また、複数の位置信号が出力バッファOBUF0に順次入力される場合には、これらの複数の位置信号は、クロック信号CLKに同期して、複数のビット位置情報(DB00,DB01,DB02)として順次出力される。
【0054】
内部HL偏り判定信号IHLDは、出力バッファOBUF1を介してHL偏り判定信号HLDとして出力される。内部データ転送制御信号ITRは、出力バッファOBUF2を介してデータ転送制御信号TRとして出力される。
【0055】
このようにして、半導体チップCHIP0の出力回路OUT0から出力されたビット位置情報(DB00,DB01,DB02)とデータ転送制御信号TRとHL偏り判定信号HLDとは、半導体チップCHIP1に転送される。
【0056】
本実施の形態においては、8ビットのデータは、3ビットのビット位置情報(DB00,DB01,DB02)に符号化され、そのビット位置情報(DB00,DB01,DB02)がバス110を介して半導体チップCHIP0から半導体チップCHIP1に転送される。ビット位置情報は、8ビットのデータのうち“H”(または“L”)のビットの位置を示す情報である。ここで、8ビットのデータのうち”H”のビットの位置を示す情報をビット位置情報として転送する場合には、”L”のビットの位置を示す情報は転送されない。逆に、8ビットのデータのうち”L”のビットの位置を示す情報をビット位置情報として転送する場合には、”H”のビットの位置を示す情報は転送されない。これは、”H”(または“L”)のビットの位置を示す情報を転送しさえすれば、”L”(または”H”)のビットの位置は確定するからである。
【0057】
また、データに含まれるビットのうち”H”のビットの数と”L”のビットの数とのどちらが多いかを検出して、その検出結果に応じて”H”のビットの数と”L”のビットの数のうち少ない方のビットの位置を示す情報をビット位置情報として転送することにより、ビット位置情報を転送する回数を少なくすることができる。その結果、半導体チップCHIP0と半導体チップCHIP1との間で転送されるデータ量を低減することができる。
【0058】
図3は、図2に示されるHL偏り判定回路COMPの構成を示す。図3において、INPは入力電圧発生回路、COMはカレントミラー型の比較回路、REFは基準電圧発生回路、VDDは第1電源、MPはPMOS型トランジスタ、MN1〜MN4はNMOS型トランジスタ、/CSはチップセレクト信号である。
【0059】
入力電圧発生回路INPは、1個のPMOS型トランジスタMPと8個のNMOS型トランジスタMN1を備えている。各NMOS型トランジスタMN1のゲートには半導体チップCHIP0の内部回路INT0からのデータの各ビットIDB00〜IDB07が印加されている。“H”のビットに応答して、NMOS型トランジスタMN1がオンとなる。8個のNMOS型トランジスタMN1のうちオンとなるNMOS型トランジスタMN1の数が多いほど、比較回路COMのNMOS型トランジスタMN2のゲート電圧が低下する。
【0060】
基準電圧発生回路REFは、1個のPMOS型トランジスタMPと1個のNMOS型トランジスタMN3を備えている。NMOS型トランジスタMN3のゲートには一定の電圧が印加される。比較回路COMのNMOS型トランジスタMN4のゲートにも一定の電圧が印加される。
【0061】
入力電圧発生回路INPにおける各NMOS型トランジスタMN1と、基準電圧発生回路REFにおけるNMOS型トランジスタMN3とを比較すると、NMOS型トランジスタMN3に流れる電流量は、NMOS型トランジスタMN1に流れる電流量の4.5倍に相当する。このため、入力電圧発生回路INPにおける各NMOS型トランジスタMN1のうちの4個以下がオンとなっているときには、基準電圧発生回路REFにおけるNMOS型トランジスタMN3に流れる電流の方が入力電圧発生回路INPにおける4個以下の各NMOS型トランジスタMN1に流れる電流よりも大きく、比較回路COMにおいては、NMOS型トランジスタMN4のゲート電圧がNMOS型トランジスタMN2のゲート電圧よりも低くなる。また、入力電圧発生回路INPにおける各NMOS型トランジスタMN1のうちの5個以上がオンとなっているときには、基準電圧発生回路REFにおけるNMOS型トランジスタMN3に流れる電流の方が入力電圧発生回路INPにおける5個以上の各NMOS型トランジスタMN1に流れる電流よりも小さく、比較回路COMにおいては、NMOS型トランジスタMN4のゲート電圧がNMOS型トランジスタMN2のゲート電圧よりも高くなる。
【0062】
この様な構成において、チップセレクト信号/CSが“L”になると、各PMOS型トランジスタMPがオンとなり、HL偏り判定回路COMPが活性化される。この状態で、半導体チップCHIP0の内部回路INT0からのデータの各ビットIDB00〜IDB07のうちの4個以下が“H”となると、入力電圧発生回路INPにおけるNMOS型トランジスタMN1のうちの4個以下がオンになる。その結果、比較回路COMにおいては、NMOS型トランジスタMN4のゲート電圧がNMOS型トランジスタMN2のゲート電圧よりも低くなる。これに応答して、比較回路COMからは、“L”を示す内部HL偏り判定信号IHLDが出力される。
【0063】
また、半導体チップCHIP0の内部回路INT0からのデータの各ビットIDB00〜IDB07のうちの5個以上が“H”となると、入力電圧発生回路INPにおけるNMOS型トランジスタMN1のうちの5個以上がオンになる。その結果、比較回路COMにおいては、NMOS型トランジスタMN4のゲート電圧がNMOS型トランジスタMN2のゲート電圧よりも高くなる。これに応答して、比較回路COMからは、“H”の内部HL偏り判定信号IHLDが出力される。
【0064】
このように、HL偏り判定回路COMPは、内部回路INT0から出力されるデータに含まれる“H”のビットの数と“L”のビットの数とを比較し、“H”のビットの数が”L”のビットの数より多い場合には、“H”の内部HL偏り判定信号IHLDを出力し、”H”のビットの数が“L”のビットの数がより少ない場合には、”L”の内部HL偏り判定信号IHLDを出力する。
【0065】
図4は、図2に示される出力データ保持回路OREGの一部の構成を示す。図4に示される回路は、出力データ保持回路OREGに入力されるデータの1ビットIDB00に対応するように設けられている。図4に示される回路と同様の回路が出力データ保持回路OREGに入力される他の7ビットにそれぞれ対応するように設けられる。従って、出力データ保持回路OREGには、図4に示される回路が8個設けられことになる。
【0066】
図4において、INVはインバータ回路、CINV1〜CINV4はクロック制御型インバータ回路である。
【0067】
内部HL偏り判定信号IHLDが“H”を示す状態において、内部データ転送制御信号ITRが“H”になると、データの1ビットIDB00は、クロック制御型インバータ回路CINV1→インバータ回路INV→クロック制御型インバータ回路CINV3という経路で伝送されて反転され、ビットROUT00として出力される。
【0068】
また、内部HL偏り判定信号IHLDが“L”を示す状態において、内部データ転送制御信号ITRが“H”になると、データの1ビットIDB00は、クロック制御型インバータ回路CINV1,CINV4を介して、反転されずにビットROUT00として出力される。
【0069】
このように、出力データ保持回路OREGは、内部HL偏り判定信号IHLDが“H”である場合には、データに含まれるビットIDB00〜IDB07の論理値を反転し、反転された論理値を有するビットをビットROUT00〜ROUT07として出力し、内部HL偏り判定信号IHLDが“L”である場合には、データに含まれるビットIDB00〜IDB07をそのままビットROUT00〜ROUT07として出力する。
【0070】
図5は、図2に示される飛び越し可能シフトレジスタJREGの構成を示す。図5において、JREGC、JREGC00〜JREGC07は飛び越し可能シフトレジスタJREGの一段あたりの回路、NANDは2入力NAND回路、NORは2入力NOR回路、INVはインバータ回路、CINVはクロック制御型インバータ回路、REG00〜REG07は回路JREGC00〜JREGC07の出力である。なお、REG00〜REG07は簡略化のため図示されていない。
【0071】
飛び越し可能シフトレジスタJREGは、回路JREGC00〜JREGC07と回路JREGCとを含む。これらの回路は、直列に接続されている。回路JREGC00〜JREGC07は、出力データ保持回路OREGから出力されるビットROUT00〜ROUT07にそれぞれ対応するように設けられている。飛び越し可能シフトレジスタJREGの初段の回路JREGCはダミーとして設けられている。この初段の回路JREGCには、出力データ保持回路OREGからのビットの代わりに、“H”の信号(電圧VDD)が常に入力されている。内部データ転送制御信号ITRが“H”になると、2段目以降の回路JREGC00〜JREGC07に“H”のビットを与えることによって、クロック信号CLKの次の立ち上がりから2段目以降の回路JREGC00〜JREGC07の出力動作が可能になる。
【0072】
内部データ転送制御信号ITRは、最初にデータラッチ信号TRRに同期して“H”となり、それ以降は最終段の回路JREGC07からのビットに応答して“H”となる。最初にデータラッチ信号TRRが“H”になると、NMOS型トランジスタMN11がオンとなる。その結果、内部データ転送制御信号ITRが“H”となる。それ以降は、最終段の回路JREGC07から“H”のビットが出力される度に、PMOS型トランジスタMP11がオンとなる。その結果、内部データ転送制御信号ITRが“H”となる。
【0073】
初段の回路JREGCから“H”のビットが出力されると、次段の回路JREGC00は、この“H”のビットをナンド回路NANDおよびNMOS型トランジスタMN12に入力する。その結果、NMOS型トランジスタMN12がオンとなる。ナンド回路NANDには、この“H”のビットと、出力データ保持回路OREGからのビットROUT00とが入力される。その結果、ビットROUT00が“H”である場合には、ナンド回路NANDは“L”のビットを出力する。これに応答して、クロック信号CLKの次の立ち上がりで、“H”の選択信号REG00がノア回路NOR11から出力される。同時に、“H”のビットがノア回路NOR12からも出力され、この“H”のビットがNMOS型トランジスタMN12を介して後段の回路JREGC01に出力される。
【0074】
また、ビットROUT00が“L”である場合には、ナンド回路NANDからは“H”のビットが出力され、これに応答して、クロック信号CLKの次の立ち上がりで、“L”の選択信号REG00がノア回路NOR11から出力される。
【0075】
一方、ビットROUT00が“L”である場合には、NMOS型トランジスタMN12がオフとなるので、ノア回路NOR12からの“L”のビットが後段の回路JREGC02に出力されることはない。その代わり、PMOS型トランジスタMP22がオンとなるので、初段の回路JREGCからの“H”のビットがPMOS型トランジスタMP22を介して後段の回路JREGC02に出力される。ただし、このときの初段の回路JREGCから後段の回路JREGC02への“H”のビットの伝達は、クロック信号CLKの立ち上がりを待つことなく、直ちになされる。
【0076】
同様にして、回路JREGC01〜JREGC07のいずれにおいても、出力データ保持回路OREGから“H”のビットROUTを入力すれば、前段の回路JREGCから“H”のビットを入力した後のクロック信号CLKの次の立ち上がりで、“H”の選択信号REGを出力し、これと同時に“H”のビットを後段の回路JREGCに出力する。また、出力データ保持回路OREGから“L”のビットROUTを入力すれば、直ちに“H”のビットを前段から後段の回路JREGCへと伝達し、この後のクロック信号CLKの次の立ち上がりで、“L”のビットREGを出力する。
【0077】
このように、飛び越し可能シフトレジスタJREGは、出力データ保持回路OREGからビットROUT00〜ROUT07を入力すると、クロック信号CLKに同期して、ビットROUT00〜ROUT07のうちの“H”のビットを順次選択し、選択されたビットに対応する選択信号REGを“H”とする。
【0078】
図6(a)〜(h)は、図2に示されるエンコード素子ENC00〜ENC07の回路構成を示す。図6(a)〜(h)において、MN31〜MN33はNMOS型トランジスタを示す。
【0079】
エンコード素子ENC00〜ENC07毎に、3つのNMOS型トランジスタMN31〜MN33の入力側に接地電位及び電源電位のいずれかを選択的に印加し、3つのNMOS型トランジスタMN31〜MN33の入力側の各電位の組み合わせを異ならせている。例えば、図6(a)に示すエンコード素子ENC00においては、3つのNMOS型トランジスタMN31〜MN33の入力側の全てに接地電位を印加している。また、図6(f)に示すエンコード素子ENC05においては、2つのNMOS型トランジスタMN31,MN33の入力側に接地電位を印加し、1つのNMOS型トランジスタMN32の入力側に電源電位を印加している。
【0080】
エンコード素子ENC00〜ENC07のいずれにおいても、飛び越し可能シフトレジスタJREGからの“H”の選択信号REGを3つのNMOS型トランジスタMN31〜MN33のゲートに入力すると、これらのNMOS型トランジスタMN31〜MN33がオンとなり、これらのNMOS型トランジスタMN31〜MN33の入力側の各電位を3ビットの位置信号として出力する。
【0081】
このように、エンコード素子ENC00〜ENC07のそれぞれは、選択信号REG00〜REG07のうち対応する選択信号が“H”になると、自己のエンコード素子の位置を示す3ビットの位置信号を出力する。
【0082】
このような構成によって、8ビットのデータに含まれる“H”のビットおよび“L”のビットのうちの数が少ない方のビットの位置を示すビット位置情報を出力するとともに、ビット位置情報によって示されるビットの位置が“H”のビットの位置か”L”のビットの位置かを示すHL偏り判定信号HLDを出力することができる。
【0083】
図7は、図1に示される入力回路IN1の構成を示す。入力回路IN1は、半導体チップCHIP1に入力された3ビットのビット位置情報(DB00,DB01,DB02)を8ビットのデータに復号化し、その8ビットのデータを内部回路INT1に転送する。
【0084】
入力回路IN1は、入力部130と、復号化部132とを含む(図1参照)。
【0085】
入力部130は、入力バッファIBUF0、IBUF1およびIBUF2を含む。
【0086】
復号化部132は、入力データ保持回路IREGと、デコード素子DEC10〜DEC17とを含む。
【0087】
半導体チップCHIP0の出力回路OUT0からバス110を介して転送されてきた3ビットのビット位置情報(DB00,DB01,DB02)は、入力バッファIBUF0を介してデコード素子DEC10〜DEC17に入力される。3ビットのビット位置情報(DB00,DB01,DB02)が入力される度に、ビット位置情報(DB00,DB01,DB02)は、デコード素子DEC10〜DEC17のいずれかによってデコードされる。その結果、ビットINDEC10〜INDEC17のいずれかが“H”となって入力データ保持回路IREGに入力される。ここで、INDEC10〜INDEC17はデコード素子DEC10〜DEC17からそれぞれ出力されたビットを示す。
【0088】
半導体チップCHIP0の出力回路OUT0から信号ライン112を介して転送されてきたHL偏り判定信号HLDは、入力バッファIBUF1に入力され、内部HL偏り判定信号IHLDとして入力データ保持回路IREGに出力される。
【0089】
半導体チップCHIP0の出力回路OUT0から信号ライン114を介して転送されてきたデータ転送制御信号TRは、入力バッファIBUF2に入力され、内部データ転送制御信号TRDとして入力データ保持回路IREGに出力される。
【0090】
入力データ保持回路IREGは、“H”の内部HL偏り判定信号IHLDが入力された場合(すなわち、半導体チップCHIP0からデータの各ビットの論理値が反転されて転送されてきた場合)には、デコード素子DEC10〜DEC17から出力されるビットINDEC10〜INDEC17の論理値を反転することにより、元のデータと同一の論理値を有するビットIDB10〜IDB17を生成する。ビットIDB10〜IDB17は、半導体チップCHIP1の内部回路INT1に出力される。
【0091】
入力データ保持回路IREGは、“L”の内部HL偏り判定信号IHLDが入力された場合(すなわち、半導体チップCHIP0からデータの各ビットがそのまま転送されてきた場合)には、デコード素子DEC10〜DEC17から出力されるビットINDEC10〜INDEC17の論理値を反転することなく、ビットINDEC10〜INDEC17をビットIDB10〜IDB17として出力する。これにより、元のデータと同一の論理値を有するビットIDB10〜IDB17が得られる。ビットIDB10〜IDB17は、半導体チップCHIP1の内部回路INT1に出力される。
【0092】
入力データ保持回路IREGは、内部データ転送制御信号TRDがハイレベルとなる期間に応答してリセットされる。その後、入力データ保持回路IREGは、デコード素子DEC10〜DEC17から出力されるビットINDEC10〜INDEC17に応答して動作する。
【0093】
入力データ保持回路IREGへの内部データ転送制御信号TRDの入力タイミングをデコード素子DEC10〜DEC17からのビットINDEC10〜INDEC17の入力タイミングに合わせるために、入力バッファIBUF2は、データ転送制御信号TRを予め定められた遅延時間だけ遅延させるために使用される。このように遅延されたデータ転送制御信号TRが内部データ転送制御信号TRDとして出力される。
【0094】
入力データ保持回路IREGから半導体チップCHIP1の内部回路INT1へのビットIDB10〜IDB17のラッチは、内部データ転送制御信号TRDによる入力データ保持回路IREGのリセットのタイミングで行われる。
【0095】
このように、半導体チップCHIP1の入力回路IN1は、半導体チップCHIP0からの3ビットのビット位置情報(DB00,DB01,DB02)が入力される度に、このビット位置情報(位置信号DB00,DB01,DB02)をデコード素子DEC10〜DEC17のいずれかによってデコードすることによりビットINDEC10〜INDEC17を生成し、ビットINDEC10〜INDEC17の論理値を内部HL偏り判定信号IHLDに応じて反転したり、反転しないことによって、元のデータと同一の論理値を有するビットIDB10〜IDB17を生成する。
【0096】
図8(a)〜(h)は、図7に示されるデコード素子DEC10〜DEC17の回路構成を示す。
【0097】
例えば、図8(a)のデコード素子DEC10は、3個のインバータ回路INV0、ナンド回路NANDおよびインバータ回路INV1を備えており、図6(a)のエンコード素子ENC00に対応する。図8(a)のデコード素子DEC10は、図6(a)のエンコード素子ENC00によって生成された3ビットのビット位置情報(DB00,DB01,DB02)が入力されると、この入力に応答して“H”のビットINDEC10を出力する。
【0098】
また、図8(b)のデコード素子DEC11は、2個のインバータ回路INV0、ナンド回路NANDおよびインバータ回路INV1を備えており、図6(b)のエンコード素子ENC01に対応する。図8(b)のデコード素子DEC11は、図6(b)のエンコード素子ENC01によって生成された3ビットのビット位置情報(DB00,DB01,DB02)が入力されると、この入力に応答して“H”のビットINDEC11を出力する。
【0099】
このようにして、デコード素子DEC10〜DEC17は、3ビットのビット位置情報を8ビットのデータに変換する。
【0100】
図9は、図7に示される入力データ保持回路IREGの一部の構成を示す。図9において、NORはノア回路、CINVはクロックで制御されるインバータ、INVはインバータである。
【0101】
図9に示される回路は、デコード素子DEC10から出力されるビットINDEC10に対応するように設けられている。図9に示される回路と同様の回路が他のデコード素子DEC11〜DEC17から出力されるビットINDEC11〜INDEC17にそれぞれ対応するように設けられる。従って、入力データ保持回路IREGには、図9に示される回路が8個設けられることになる。
【0102】
図9に示される回路は、内部データ転送制御信号TRDの立ち上がりでリセットされ、“L”のビットIDB10を出力する。“L”の内部HL偏り判定信号IHLDが入力されている状態においては、デコード素子DEC10から“L”のビットINDEC10が入力されると、“L”のビットIDB10がそのまま出力され、デコード素子DEC10から“H”のビットINDEC10が入力されると、ビットIDB10の論理値が反転され、“H”のビットIDB10が出力される。
【0103】
内部データ転送制御信号TRDの立ち上がりで図9に示される回路がリセットされたときに、“H”の内部HL偏り判定信号IHLDが入力されている状態である場合には、内部データ転送制御信号TRDの立ち下がりに応答して、ビットIDB10の論理値が反転され、“H”のビットIDB10が出力される。そして、デコード素子DEC10から“L”のビットINDEC10が入力されると、“H”のビットIDB10がそのまま出力され、デコード素子DEC10から“H”のビットINDEC10が入力されると、ビットIDB10の論理値が反転され、“L”のビットIDB10が出力される。
【0104】
このような動作は、デコード素子DEC10〜DEC17から出力されるビットINDEC10〜INDEC17毎に行われる。その結果、入力データ保持回路IREGからビットINDEC10〜INDEC17が出力される。
【0105】
図9の回路においては、偏り判定信号IHLDは、データ入力端子に入力されるビットINDEC10を出力端子IDB10に正転して出力するか反転して出力するかを制御するために使用される。
【0106】
具体的には、偏り判定信号IHLDが“H”である場合には、データ入力端子に入力されるビットINDEC10は、インバータCINV5を介して入力され、偏り判定信号IHLDが“L”である場合には、データ入力端子に入力されるビットINDEC10は、インバータINV4およびインバータCINV3の2段のインバータを介して入力される。
【0107】
ノードAに現れるデータが“H”である場合には、インバータCINV2、CINV8が活性化状態となり、インバータCINV6、CINV7が不活性状態となる。その結果、内部データ転送制御信号TRDが“H”となり、リセットが掛かった後には、ビットIDB10が“H”となる。
【0108】
ノードAに現れるデータが“L”である場合には、インバータCINV2、CINV8が不活性化状態となり、インバータCINV6、CINV7が活性状態となる。その結果、内部データ転送制御信号TRDが“H”となり、リセットが掛かった後には、ビットIDB10が“L”となる。
【0109】
図10は、半導体チップCHIP0の出力回路OUT0および半導体チップCHIP1の入力回路IN1の動作を示すタイミングチャートである。
【0110】
半導体チップCHIP0では、内部データ転送制御信号ITRが“H”になると、出力データ保持回路OREGからビットROUT00〜ROUT07が出力され、クロック信号CLKの次の立ち上がりから、クロック信号CLKに同期して、選択信号REG00〜REG07のうち“H”の選択信号が飛び越し可能シフトレジスタJREGから順次出力される。飛び越し可能シフトレジスタJREGから”H”の選択信号が出力される度に、3ビットのビット位置情報(DB00,DB01,DB02)が送出される。
【0111】
半導体チップCHIP1では、データ転送制御信号TRを遅延させることにより内部データ転送制御信号TRDが生成される。内部データ転送制御信号TRDが“L”になると、3ビットのビット位置情報(DB00,DB01,DB02)が入力される度に、ビットINDEC10〜INDEC17のうち“H”のビットが入力データ保持回路IREGに順次入力される。入力データ保持回路IREGは、内部データ転送制御信号TRDが“H”になるまで、元のデータと同一の論理値を有するビットIDB10〜IDB17を出力し続ける。
【0112】
なお、図10において、内部データ転送制御信号TRDの立ち下がりの後、ビットINDEC10〜INDEC17が現われるまでに、若干の時間が経過する。これは、“H”の内部HL偏り判定信号IHLDが入力された場合(すなわち、データに含まれるビットのうち“H”ビットの数が”L”のビットの数より多い場合)には、内部データ転送制御信号TRDの立ち上がりでデコード素子DEC10〜DEC17から出力されるビットINDEC10〜INDEC17を“L”にリセットした後に、ビットIDB10〜IDB17を“H”に一斉に書き換えるためである。データに“H”のビットが多く含まれる場合には、“L”のビットの位置を示す情報のみが転送され、“H”のビットの位置を示す情報は転送されない。上述したタイミングを用いることにより、図9に示す入力データ保持回路IREGは良好に動作する。
【0113】
図10において、第3のデータ転送期間は、オール”L”のデータ(すなわち、すべてのビットの論理値が「0」であるデータ)を転送している期間である。第3のデータ転送期間においては、HL偏り判定信号HLDとデータ転送制御信号TRとが送信側の半導体チップCHIP0から出力されるが、ビット位置情報は出力されない。ビット位置情報は、UNKNOWNの状態である。この状態において、受信側の半導体チップCHIP1では、入力データ保持回路IREGのデータはすべて内部データ転送制御信号TRDに応答してリセットされている。その結果、入力データ保持回路IREGから出力されるビットIDB10〜IDB17はすべて”L”となっている。次のデータ転送制御信号TRの入力に応答して、入力データ保持回路IREGのデータは再度リセットされる。このリセットと同時に、入力データ保持回路IREGのデータは内部回路INT1にラッチされる。これにより、オール”L”のデータが転送されたことになる。なお、オール”H”のデータを転送する場合も同様である。ただし、この場合には、HL偏り判定信号HLDを受け取ってからビットIDB10〜IDB17がすべて”H”となるまでのタイミングマージンを次のデータ転送制御信号TRの入力までにとる必要がある。
【0114】
また、実施の形態1では、データに含まれるビットIDB00〜IDB07が全て“L”である場合には、ビット位置情報を転送することなく、データ転送制御信号TRによるリセット動作のみを行なっている。すなわち、“L”の内部HL偏り判定信号IHLDが入力データ保持回路IREGに入力されるため、入力データ保持回路IREGは、データ転送制御信号TRによるリセットの後に、“L”のビットIDB00〜IDB07をそのまま出力する。
【0115】
また、データに含まれるビットIDB00〜IDB07が全て“H”である場合は、“H”の内部HL偏り判定信号IHLDが入力データ保持回路IREGに入力されるため、入力データ保持回路IREGは、データ転送制御信号TRによるリセットの後に、ビットIDB00〜IDB07の論理値を一斉に反転することにより、”H”のビットIDB00〜IDB07を出力する。
【0116】
以上の説明から明らかなように、実施の形態1の半導体装置では、8ビットのデータが3ビットのビット位置情報に符号化される。この3ビットのビット位置情報がバスを介して転送される。そして、この3ビットのビット位置情報が8ビットのデータに復号化される。このため、データを転送するのに必要な信号ラインの本数を減らすことができる。
【0117】
さらに、“H”のビットの数と“L”のビットの数とを比較し、その比較結果に応じて少ない方のビットの位置を示す情報をHL偏り判定信号HLDと共に転送するようにしているので、効率的なデータ転送が可能になる。
【0118】
なお、図2〜図9の回路は、一例に過ぎず、多様な変形が可能である。あるいは、これらの回路の代わりに、同様の機能を有するものを適用しても構わない。
【0119】
(実施の形態2)
図11は、本発明の実施の形態2の半導体装置200の構成を示す。半導体装置200は、半導体チップCHIP2と半導体CHIP3との間でHL偏り判定信号HLDを転送する信号ライン線が不要であるという利点を提供する。これにより、信号ラインを設けるために必要な面積が低減される。その結果、半導体装置200の規模が低減される。
【0120】
半導体装置200では、今回転送されるデータの各ビットの論理値と、前回転送されたデータの各ビットの論理値とが比較される。その結果、前回転送されたデータに比較して変化した論理値を有するビットが選択され、その選択されたビットの位置を示す情報が転送される。
【0121】
半導体装置200は、半導体チップCHIP2と半導体チップCHIP3とを含む。半導体チップCHIP2と半導体チップCHIP3とは、バス210を介して互いに接続されている。バス210は、信号ライン210a、210bおよび210cを含む。バス210の幅は、3ビットである。3ビットのビット位置情報(DB00,DB01,DB02)がバス210を介して半導体チップCHIP2から半導体チップCHIP3に転送される。
【0122】
半導体チップCHIP2は、内部回路INT2と出力回路OUT2とを含む。内部回路INT2は、8ビットのデータを生成する。出力回路OUT2は、内部回路INT2によって生成される8ビットのデータを符号化することにより、ビット位置情報を生成する符号化部220と、ビット位置情報をバス210に出力する出力部222とを含む。このように、半導体チップCHIP2は、データを送信する送信部として機能する。
【0123】
半導体チップCHIP3は、入力回路IN3と内部回路INT3とを含む。入力回路IN3は、ビット位置情報をバス210から受け取る入力部230と、そのビット位置情報を復号化することにより8ビットのデータを生成する復号化部232とを含む。入力回路IN3によって生成される8ビットのデータは、内部回路INT3に出力される。このように、半導体チップCHIP3は、データを受信する受信部として機能する。
【0124】
ビット位置情報は、前回転送されたデータに比較して変化した論理値を有するビットの位置を示す。例えば、前回転送された8ビットのデータが(0,1,0,1,0,0,1,0)であり、今回転送されるべき8ビットのデータが(0,1,0,1,1,0,1,0)である場合を想定する。この場合には、論理値が変化したビットの位置は、(1,0,0)によって表される。従って、符号化部220は、ビット位置情報(1,0,0)を生成し、出力部222はこのビット位置情報をバス210に出力する。
【0125】
なお、今回転送されるべき8ビットのデータは、内部回路INT2によって生成され、出力回路OUT2に提供される。前回転送された8ビットのデータは、出力回路OUT2の符号化部220の内部に保持されている。
【0126】
符号化部220は、ビット位置情報の転送を制御するための内部データ転送制御信号ITRを生成する。内部データ転送制御信号ITRは、出力部222に供給される。出力部222は、内部データ転送制御信号ITRをデータ転送制御信号TRとして信号ライン214に出力する。
【0127】
このように、8ビットのデータを転送する代わりに、そのデータに含まれる8ビットのうち前回転送されたデータに比較して変化した論理値を有するビットの位置を示す情報(すなわち、ビット位置情報)を転送することにより、転送されるデータのビット幅より小さいビット幅を有するバスを用いてデータを転送することが可能になる。これにより、バスの幅を従来に比べて低減することができる。その結果、半導体装置200の規模を低減することができる。
【0128】
また、8ビットのデータを転送する代わりに3ビットのビット位置情報を転送することにより、データの転送効率を向上させることができる。以下、データの転送効率が向上する例を説明する。ここで、8ビットのデータに対して、ビットパターン20〜ビットパターン28を以下のように定義する。
【0129】
ビットパターン20:前回転送されたデータに比較して0ビットが変化:1通り
ビットパターン21:前回転送されたデータに比較して1ビットが変化:8通り
ビットパターン22:前回転送されたデータに比較して2ビットが変化:28通り
ビットパターン23:前回転送されたデータに比較して3ビットが変化:56通り
ビットパターン24:前回転送されたデータに比較して4ビットが変化:70通り
ビットパターン25:前回転送されたデータに比較して5ビットが変化:56通り
ビットパターン26:前回転送されたデータに比較して6ビットが変化:28通り
ビットパターン27:前回転送されたデータに比較して7ビットが変化:8通り
ビットパターン28:前回転送されたデータに比較して8ビットが変化:1通り
ビットパターン20〜ビットパターン28を転送するためには1サイクル〜9サイクルがそれぞれ必要である。ビットパターン20〜ビットパターン28の出現確率がそれぞれ50%、40%、8%、1.5%、0.4%、0.08%、0.015%、0.004%、0.001%であるという条件下では、3ビットのデータバス(すなわち、バス210)を用いて平均1.63サイクルでデータを転送することになる。これは、4.89ビットのデータバスを用いて1サイクルでデータを転送することと等価である。従って、8ビットのデータバスを用いて1サイクルでデータを転送する場合に比較して、データバスの3ビット分以上データの転送効率が向上する。
【0130】
図12は、図11に示される出力回路OUT2の構成を示す。図12に示される出力回路OUT2の構成は、HL偏り判定回路COMPと出力バッファOBUF1とが削除されている点と、前回転送されたデータの各ビットを保持するための前回データ保持回路BDREGと今回転送されるデータの各ビットと前回転送されたデータの各ビットとを比較するための排他的論理和回路XORとが追加されている点で、図2に示される出力回路OUT0の構成と異なっている。
【0131】
なお、図12において、図2に示される出力回路OUT2と同じ作用を果たす構成要素には、同じ符号を付して説明を簡略化する。
【0132】
図12の出力回路OUT2においては、まず、リセット信号RESETによって、前回データ保持回路BDREGおよび出力データ保持回路OREG1が初期化される。これにより、前回データ保持回路BDREGに保持されるデータの各ビットおよび出力データ保持回路OREG1に保持されるデータの各ビットが”L”に初期設定される。
【0133】
次に、出力データ保持回路OREG1に半導体チップCHIP2の内部回路INTによって生成されたデータが入力され保持される。排他的論理和回路XORは、前回データ保持回路BDREGに保持されるデータの各ビットと出力データ保持回路OREG1に保持されるデータの各ビットとをビット配列の順番において対応するビット同士で比較する。その比較の結果、出力データ保持回路OREG1に保持されるビットの論理値と前回データ保持回路BDREGに保持されるビットの論理値とが異なる場合には、排他的論理和回路XORは、この論理値が変化したビットに対応するビットを”H”にして、このビットを飛び越し可能シフトレジスタJREGに出力する。なお、排他的論理和回路XORから出力されるビットをビットROUT00〜ROUT07と表記する。
【0134】
飛び越し可能シフトレジスタJREGは、クロック信号CLKに同期して、ビットROUT00〜ROUT07のうち“H”のビットを順次選択し、選択されたビットに対応する選択信号を“H”とする。
【0135】
前回データ保持回路BDREGは、選択信号REGC00〜07のうち“H”の選択信号に対応するビットの論理値を反転することにより、前回データ保持回路BDREGに保持されるデータを更新する。このようにして、前回データ保持回路BDREGに保持されるデータは順次更新されていく。
【0136】
エンコード素子ENC00〜ENC07のそれぞれは、選択信号REG00〜REG07のうち対応する選択信号が“H”となったことに応答して、自己のエンコード素子の位置を示す3ビットの位置信号を出力する。
【0137】
エンコード素子ENC00〜ENC07のいずれかから出力された3ビットの位置信号は、出力バッファOBUF0に一時的に格納される。その後、出力バッファOBUF0に格納された3ビットの位置信号は、内部データ転送制御信号ITRの立ち下がりの後に、クロック信号CLKに同期して、ビット位置情報(DB00,DB01,DB02)としてバス210に出力される。
【0138】
また、複数の位置信号が出力バッファOBUF0に格納された場合には、これらの複数の位置信号がクロック信号CLKに同期して複数のビット位置情報(DB00,DB01,DB02)として順次出力される。
【0139】
図13は、図12に示される出力データ保持回路OREG1の一部の構成を示す。図13に示される回路は、出力データ保持回路OREG1に入力されるデータの1ビットIDB00に対応するように設けられている。図13に示される回路と同様の回路が出力データ保持回路OREG1に入力される他の7個のビットに対応するように設けられる。従って、出力データ保持回路OREG1には、図13に示される回路が8個設けられことになる。
【0140】
図13に示される回路では、データ制御信号ITRが“H”になると、クロック制御型インバータ回路CINV1がオンとなる。その結果、データの1ビットIDB00は、クロック制御型インバータ回路CINV1およびインバータ回路INV1を介してビットROUT00として出力される。
【0141】
図14は、図12に示される前回データ保持回路BDREGの一部の構成を示す。図14に示される回路は、前回データ保持回路BDREGに入力される選択信号REGC00に対応するように設けられている。図14に示される回路と同様の回路が前回データ保持回路BDREGに入力される他の7個の選択信号に対応するように設けられている。従って、前回データ保持回路BDREGには、図14に示される回路が8個設けられことになる。
【0142】
図14に示される回路では、リセット信号RESETが“H”になると、ノア回路NOR1の出力が“L”となる。このとき、“L”の選択信号REG00が入力されている状態であれば、インバータ回路CINV6、CINV7がオンとなる。その結果、ノア回路NOR1からの出力(すなわち、ビットROUT00)が“L”に保持され続ける。
【0143】
また、選択信号REG00が反転することにより“H”になると、インバータ回路CINV6、CINV7がオフとなり、インバータ回路CINV2、CINV8がオンとなる。このとき、ノア回路NOR2の出力が“L”である。ノア回路NOR2の出力がインバータINV1およびインバータ回路CINV2を介してノア回路NOR1に入力されると、ノア回路NOR1の出力が反転される。その結果、ビットROUT00が“H”となる。選択信号REG00が再び反転して“L”に戻っても、ビットIDB10が“H”に保持され続ける。ただし、インバータ回路CINV6、CINV7がオンとなり、ノア回路NOR2の出力が“H”となる。
【0144】
更に、選択信号REG00が更に再び反転して“H”になり、各インバータ回路CINV2、CINV8がオンになると、ノア回路NOR2の出力が“H”であるから、ノア回路NOR1の出力が反転される。その結果、ビットROUT00が“L”となる。
【0145】
図15は、図12に示される入力回路IN3の構成を示す。
【0146】
入力回路IN3は、半導体チップCHIP3に入力された3ビットのビット位置情報(DB00,DB01,DB02)を8ビットのデータに復号化し、その8ビットのデータを内部回路INT3に出力する。
【0147】
入力回路IN3の構成は、図7に示される入力回路IN1の構成と概ね同様である。ただし、両者の構成は、出力バッファOBUF1が削除されている点と、入力データ保持回路IREG1の構成において異なっている。
【0148】
なお、図15において、図7に示される入力回路IN1と同じ作用を果たす構成要素には、同じ符号を付して説明を簡略化する。
【0149】
入力回路IN3においては、まず、リセット信号RESETによって、入力データ保持回路IREG1が初期化される。これにより、入力データ保持回路IREG1に保持されるデータの各ビットが“L”に初期設定される。
【0150】
半導体チップCHIP2の出力回路OUT2からバス210を介して転送されてきた3ビットのビット位置情報(DB00,DB01,DB02)は、入力バッファ回路IBUF0を介してデコード素子DEC10〜DEC17に入力される。3ビットのビット位置情報(DB00,DB01,DB02)が入力される度に、ビット位置情報(DB00,DB01,DB02)は、デコード素子DEC10〜DEC17のいずれかによってデコードされる。その結果、ビットINDEC10〜INDEC17のいずれかが“H”となる。ビットINDEC10〜INDEC17は、入力データ保持回路IREGに入力される。
【0151】
入力データ保持回路IREG1は、図14に示される前回データ保持回路BDREGと同一の構成を有している。リセット信号RESETが“H”になると、ビットIDB10が“L”に設定される。デコード素子DEC10から“L”のビットINDEC10が入力される限り、ビットIDB10は“L”に保持され続ける。
【0152】
また、ビットINDEC10が反転することにより“H”のビットになると、ビットIDB10が反転して“H”となる。ビットINDEC10が再び反転して“L”に戻っても、ビットICB10が“H”に保持され続ける。しかし、ビットINDEC10が更に再び反転して“H”になると、ビットIDB10が“L”に戻される。
【0153】
入力データ保持回路IREG1に保持される各ビットに対応する回路は、図14に示されている。この回路は、入力が”H”になった時のみ、データが更新(反転)されるレジスタ回路である。従って、初期リセットにおいてデータがクリアされる以外は、入力が”H”にならない限り保持されているデータが更新されることはない。なお、前回伝送データと異なるビットのアドレスが伝送されてきた場合に、デコーダ回路が入力されたアドレスのビットごとに”H”を出力する構成になっている。
【0154】
入力データ保持回路IREG1では、前回転送されたデータに比較して変化していない論理値を有するビットに対しては同じ出力が保持される。従って、前回転送されたデータと異なるデータのビットのみを転送することにより、全ビットのデータが転送されたことになる。このことにより、受信側の半導体チップCHIP3において元のデータを再現することができる。
【0155】
なお、図15においては、内部データ転送制御信号TRDを図中どこにも入力していないが、例えば半導体チップCHIP3の内部回路INT3に内部データ転送制御信号TRDを供給し、内部データ転送制御信号TRDに応答して、入力回路IN3からのビットIDB10〜IDB17を半導体チップCHIP3の内部回路INT3に入力するようにしてもよい。
【0156】
以上の説明から明らかなように、実施の形態2の半導体装置200では、半導体チップCHIP2と半導体チップCHIP3との間で8ビットのデータをそのまま授受するのではなく、今回転送されるデータの各ビットと前回転送されたデータの各ビットとを比較し、前回転送されたデータに比較して変化した論理値を有するビットの位置を示す情報が転送される。これにより、データの転送に必要な信号ラインの本数を減らすことができる。また、不要な信号ラインの充放電を行なう必要がないことから、より効率的なデータ転送が可能になる。
【0157】
なお、図11〜図15の回路は、一例に過ぎず、多様な変形が可能である。あるいは、これらの回路の代わりに、同様の機能を有するものを適用しても構わない。
【0158】
【発明の効果】
本発明の半導体装置によれば、データに含まれる複数のビットのうち選択された少なくとも1つのビットの位置を示すビット位置情報が生成され、そのビット位置情報が送信される。送信されるべきデータのビット数より少ないビット数を有するビット位置情報を用いて、データの内容が送信部から受信部に伝送される。これにより、送信部と受信部とを結ぶバスのビット幅を送信されるべきデータのビット幅より小さくすることができる。例えば、8ビットのデータを3ビットのバスを用いて送信することが可能になる。その結果、半導体装置の規模を低減することができる。
【図面の簡単な説明】
【図1】本発明の実施の形態1の半導体装置100の構成を示すブロック図である。
【図2】図1に示される半導体チップCHIP0における出力回路OUT0の構成を示すブロック図である。
【図3】図2に示されるHL偏り判定回路COMPの構成を示す回路図である。
【図4】図2に示される出力データ保持回路OREGの一部の構成を示す回路図である。
【図5】図2に示される飛び越し可能シフトレジスタJREGの構成を示す回路図である。
【図6】(a)〜(h)は図2に示されるエンコード素子ENC00〜ENC07の構成を示す回路図である。
【図7】図1に示される半導体チップCHIP1における入力回路IN1の構成を示すブロック図である。
【図8】(a)〜(h)は図7に示されるデコード素子DEC10〜DEC17の構成を示す回路図である。
【図9】図7に示される入力データ保持回路IREGの一部の構成を示す回路図である。
【図10】図1に示される出力回路OUT0および入力回路IN1の動作を示すタイミングチャートである。
【図11】本発明の実施の形態2の半導体装置200の構成を示すブロック図である。
【図12】図11に示される半導体チップCHIP2における出力回路OUT2の構成を示すブロック図である。
【図13】図12に示される出力データ保持回路OREG1の一部の構成を示す回路図である。
【図14】図12に示される前回データ保持回路BDREGの一部の構成を示す回路図である。
【図15】図11に示される半導体チップCHIP3における入力回路IN3の構成を示すブロック図である。
【符号の説明】
CHIP0,CHIP2 半導体チップ
CHIP1,CHIP3 半導体チップ
OUT0,OUT2 出力回路
IN1,IN3 入力回路
OREG,OREG1 出力データ保持回路
JREG 飛び越し可能シフトレジスタ
ENC0〜ENC7 エンコード素子
COMP HL偏り判定回路
OBUF0,OBUF1,OBUF2 出力バッファ
IREG,IREG1 入力データ保持回路
DEC10〜DEC17 デコード素子
IBUF0〜IBUF2 入力バッファ回路
XOR 排他的論理和回路
BDREG 前回データ保持回路[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a semiconductor device, and in particular, a semiconductor including a plurality of semiconductor chips connected via a bus having a large bus width (that is, having many bus lines) such as a data bus, an address bus, and a chip select bus. Relates to the device.
[0002]
[Prior art]
In recent years, a new field of multimedia has been developed. A major feature of this field is the handling of moving images. In order to handle moving images, it is required to transfer a large amount of data at high speed. In order to satisfy this requirement, the bus width of the data bus for transferring data is generally increased.
[0003]
However, increasing the bus width of the data bus leads to an increase in the scale of the semiconductor device. Conventionally, a technique for suppressing an increase in the scale of a semiconductor device by sharing a data bus and an address bus has been developed.
[0004]
[Problems to be solved by the invention]
However, in the conventional technique, the data bus and the address bus are simply shared, and the bus width of the data bus itself (or the address bus itself) cannot be reduced.
[0005]
An object of the present invention is to provide a semiconductor device including a plurality of semiconductor chips connected via a bus having a small bus width.
[0006]
[Means for Solving the Problems]
The semiconductor device according to the present invention is a semiconductor device including a transmission unit and a reception unit connected via a bus, and the transmission unit encodes data including a plurality of bits into the data. An encoding unit that generates bit position information indicating a position of at least one selected bit among the plurality of bits included; and an output unit that outputs the bit position information to the bus; , An input unit that receives the bit position information from the bus, and a decoding unit that generates the data by decoding the bit position information. As a result, the above object is achieved.
[0007]
The at least one selected bit may be a bit having a specific logical value.
[0008]
The selected at least one bit may be a bit having a logic value changed as compared with the previous data.
[0009]
The transmission unit compares the number of bits indicating whether or not the number of bits having the specific logical value among a plurality of bits included in the data is greater than the number of bits having a logical value other than the specific logical value A bit number comparison information generation unit for generating information; the output unit outputs the bit position information and the bit number comparison information to the bus; and the input unit includes the bit position information and the bit number. The comparison information may be received from the bus, and the decoding unit may generate the data by decoding the bit position information based on the bit number comparison information.
[0010]
The encoding unit may generate a plurality of bit position information by encoding the data, and the output unit may serially output the plurality of bit position information to the bus.
[0011]
Another semiconductor device of the present invention is a semiconductor device connected to a bus and encodes data including a plurality of bits to thereby select at least one selected from the plurality of bits included in the data. An encoding unit that generates bit position information indicating a bit position and an output unit that outputs the bit position information to the bus are provided, thereby achieving the above object.
[0012]
Another semiconductor device of the present invention is a semiconductor device connected to a bus, and receives from the bus bit position information indicating the position of at least one bit selected from a plurality of bits included in data. And a decoding unit that generates the data by decoding the bit position information, thereby achieving the above object.
[0013]
The operation will be described below.
[0014]
According to the semiconductor device of the present invention, bit position information indicating the position of at least one selected bit among a plurality of bits included in data is generated, and the bit position information is transmitted. The content of the data is transmitted from the transmission unit to the reception unit using bit position information having a smaller number of bits than the number of bits of data to be transmitted. Thereby, the bit width of the bus connecting the transmission unit and the reception unit can be made smaller than the bit width of the data to be transmitted. For example, 8-bit data can be transmitted using a 3-bit bus. As a result, the scale of the semiconductor device can be reduced.
[0015]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0016]
(Embodiment 1)
FIG. 1 shows a configuration of a
[0017]
The semiconductor chip CHIP0 includes an internal circuit INT0 and an output circuit OUT0. The internal circuit INT0 generates 8-bit data. The output circuit OUT0 includes an
[0018]
The semiconductor chip CHIP1 includes an input circuit IN1 and an internal circuit INT1. The input circuit IN1 includes an
[0019]
The bit position information indicates the position of at least one bit selected from the 8 bits included in the data generated by the internal circuit INT0. For example, it is assumed that 8-bit data (0, 1, 0, 1, 0, 0, 1, 0) is generated by the internal circuit INT0. In this case, the position of the bit having the logical value “1” is represented by (0, 0, 1), (0, 1, 1) and (1, 1, 0). Therefore, when a bit having a logical value “1” is selected, the
[0020]
Similarly, the positions of the bits having the logical value “0” in the 8-bit data (0, 1, 0, 1, 0, 0, 1, 0) are (0, 0, 0), (0, 1 , 0), (1, 0, 0), (1, 0, 1) and (1, 1, 1). Therefore, when a bit having a logical value “0” is selected, the
[0021]
In this way, instead of transferring 8-bit data, it is transferred by transferring information indicating the position of a bit having a specific logical value (ie, bit position information) among the 8 bits included in the data. Data can be transferred using a bus having a bit width smaller than the bit width of the data. Thereby, the width of the bus can be reduced as compared with the conventional one. As a result, the scale of the
[0022]
In addition, the transfer efficiency of data can be improved by transferring the bit position information of 3 bits instead of transferring the data of 8 bits. Hereinafter, an example in which the data transfer efficiency is improved will be described. Here, bit pattern 00 to bit pattern 08 are defined as follows for 8-bit data.
[0023]
Bit pattern 00: Logical values of all bits included in data are “1”: 1 way
Bit pattern 01: 1-bit logical value included in data is “1”: 8 types
Bit pattern 02: 2-bit logical value included in data is “1”: 28 ways
Bit pattern 03: 3-bit logical value included in data is “1”: 56
Bit pattern 04: 4-bit logical value included in data is “1”: 70
Bit pattern 05: 5-bit logical value included in data is “1”: 56
Bit pattern 06: 6-bit logical value included in data is “1”: 28 ways
Bit pattern 07: 7-bit logical value included in data is “1”: 8 types
Bit pattern 08: Logical values of all bits included in data are “0”: 1 way
In order to transfer bit pattern 00 to
[0024]
The output circuit OUT0 determines whether or not the number of bits having a specific logical value among the 8 bits included in the data generated by the internal circuit INT0 is larger than the number of bits having a logical value other than the specific logical value. A bit number comparison
[0025]
In the following description, when the specific logical value is the logical value “1”, the bit number comparison information is referred to as an internal HL bias determination signal IHLD. That is, whether the internal HL bias determination signal IHLD is greater in the number of bits having the logical value “1” than the number of bits having the logical value “0” among the 8 bits included in the data generated by the internal circuit INT0. It is a signal which shows.
[0026]
If the number of bits having the logical value “1” among the 8 bits included in the data generated by the internal circuit INT0 is greater than the number of bits having the logical value “0”, the level of the internal HL bias determination signal IHLD Becomes a high level ("H"). In other cases, the level of the internal HL deviation determination signal IHLD is low ("L"). The internal HL bias determination signal IHLD is supplied to the
[0027]
The
[0028]
The
[0029]
The
[0030]
The
[0031]
The
[0032]
Further, instead of transferring 8-bit data, the transfer efficiency of data can be improved by transferring a 1-bit HL deviation determination signal HLD and 3-bit bit position information. Hereinafter, an example in which the data transfer efficiency is improved will be described. Here, bit pattern 10 to bit pattern 14 are defined as follows for 8-bit data.
[0033]
Bit pattern 10: Logical values of all bits included in data are “0” or “1”: 2 types
Bit pattern 11: 1-bit logical value included in data is “0” or “1”: 16 types
Bit pattern 12: 2-bit logical value included in data is “0” or “1”: 56 ways
Bit pattern 13: 3-bit logical value included in data is “0” or “1”: 112 types
Bit pattern 14: 4-bit logical value included in data is “0” or “1”: 70 types
In order to transfer the bit pattern 10 to the
[0034]
Note that when the logical values of all the bits included in the data generated by the internal circuit INT0 are “1” (or logical value “0”), the bit position information is not transferred. In this case, it is only necessary to transmit from the output circuit OUT0 to the input circuit IN1 that the bit position information is not transferred using the data transfer control signal TR. Whether the logical values of all bits are “1” or “0” can be determined using the HL bias determination signal HLD.
[0035]
At least one of the
[0036]
In the example shown in FIG. 1, the number of bits of data generated by the internal circuit INT0 is 8, and the number of bits of bit position information transferred from the semiconductor chip CHIP0 to the semiconductor chip CHIP1 is 3. However, the application of the present invention is not limited to these numbers of bits. The internal circuit INT0 can generate data having an arbitrary number of bits. Also, bit position information having an arbitrary number of bits can be transferred from the semiconductor chip CHIP0 to the semiconductor chip CHIP1.
[0037]
FIG. 2 shows a configuration of the output circuit OUT0 of the semiconductor chip CHIP0 shown in FIG.
[0038]
The
[0039]
The
[0040]
The bit number comparison
[0041]
The output circuit OUT0 receives 8-bit data output from the internal circuit INT0 of the semiconductor chip CHIP0. In FIG. 2, each bit of 8-bit data is expressed as IDB00 to IDB07. The 8-bit data is input to the output data holding circuit OREG and the HL deviation determination circuit COMP.
[0042]
The HL bias determination circuit COMP includes the number of bits having a logical value “1” (that is, “H” bits) and the bits having a logical value “0” (that is, “0”) among the 8 bits included in the input data. L ”bits). When the number of “H” bits is larger than the number of “L” bits, the HL bias determination circuit COMP outputs a high level (ie, “H”) internal HL bias determination signal IHDL. When the number of “L” bits is greater than the number of “H” bits, the HL bias determination circuit COMP outputs a low level (ie, “L”) internal HL bias determination signal IHDL.
[0043]
The output data holding circuit OREG latches the data output from the internal circuit INT0 at the timing when the internal data transfer control signal ITR becomes “H”, and holds the data.
[0044]
The internal data transfer control signal ITR is output from the jumpable shift register JREG. The timing at which the internal data transfer control signal ITR first becomes “H” is determined in response to the data latch signal TRR. The timing at which the internal data transfer control signal ITR subsequently becomes “H” is determined by the interleaving shift register JREG.
[0045]
When the output data holding circuit OREG receives the “H” internal HL deviation determination signal IHLD, the output data holding circuit OREG inverts the logical values of the bits IDB00 to IDB07 included in the data, and sets the bits having the inverted logical values as the bits ROUT00 to ROUT07. Output to the jumpable shift register JREG. On the other hand, when receiving the “L” internal HL deviation determination signal IHLD, the output data holding circuit OREG outputs the bits IDB00 to IDB07 included in the data as they are as bits ROUT00 to ROUT07 to the jumpable shift register JREG.
[0046]
Therefore, when the number of “H” bits among the bits IDB00 to IDB07 included in the data is large, the “H” bit is inverted and output to the “L” bit, and the “L” bit is “ Inverted to H ”bit and output. When the number of “L” bits among the bits IDB00 to IDB07 included in the data is large, such inversion operation is not performed.
[0047]
The interleaving shift register JREG receives the bits ROUT00 to ROUT07 output from the output data holding circuit OREG, and sequentially selects the “H” bits of the bits ROUT00 to ROUT07 in synchronization with the clock signal CLK. The selection signal corresponding to the selected bit is set to “H”.
[0048]
For example, when only the bit ROUT00 among the bits ROUT00 to ROUT07 is “H”, the interleaving shift register JREG sets the selection signal REG00 corresponding to the bit ROUT00 to “H”.
[0049]
Further, for example, when only the bits ROUT01 and ROUT02 of the bits ROUT00 to ROUT07 are “H”, the interleaving shift register JREG synchronizes the selection signals REG01 and REG02 corresponding to the bits ROUT01 and ROUT02 with the clock signal CLK. To “H” sequentially.
[0050]
Each of the encoding elements ENC00 to ENC07 outputs a 3-bit position signal indicating the position of its own encoding element in response to a corresponding one of the selection signals REG00 to REG07. That is, when the selection signal REG0k is “H”, the encoding element ENC0k outputs a 3-bit position signal Sk indicating its position to the output buffer OBUF0. Here, k is an integer of 0-7.
[0051]
This position signal indicates the position of the encoding element to which the “H” selection signal is input. Therefore, this position signal indicates the position of the “H” bit among the bits ROUT00 to ROUT07. The position of the “H” bit in the bits ROUT00 to ROUT07 is included in the data when the number of “H” bits in the bits IDB00 to IDB07 included in the data is greater than the number of “L” bits. L indicates the position of the bit, and otherwise indicates the position of the “H” bit included in the data.
[0052]
When a 3-bit position signal is output from any one of the encoding elements ENC00 to ENC07, the position signal is temporarily stored in the output buffer OBUF0. After the falling edge of the internal data transfer control signal ITR, the position signal stored in the buffer OBUF0 is output as bit position information (DB00, DB01, DB02) in synchronization with the clock signal CLK.
[0053]
When a plurality of position signals are sequentially input to the output buffer OBUF0, the plurality of position signals are sequentially output as a plurality of bit position information (DB00, DB01, DB02) in synchronization with the clock signal CLK. Is done.
[0054]
The internal HL bias determination signal IHLD is output as the HL bias determination signal HLD via the output buffer OBUF1. Internal data transfer control signal ITR is output as data transfer control signal TR via output buffer OBUF2.
[0055]
In this way, the bit position information (DB00, DB01, DB02), the data transfer control signal TR, and the HL bias determination signal HLD output from the output circuit OUT0 of the semiconductor chip CHIP0 are transferred to the semiconductor chip CHIP1.
[0056]
In the present embodiment, 8-bit data is encoded into 3-bit bit position information (DB00, DB01, DB02), and the bit position information (DB00, DB01, DB02) is transmitted to the semiconductor chip via the
[0057]
Further, it is detected whether the number of “H” bits or the number of “L” bits among the bits included in the data is larger, and the number of “H” bits and “L” are determined according to the detection result. The number of times of transferring the bit position information can be reduced by transferring the information indicating the position of the smaller bit out of the number of "" as the bit position information. As a result, the amount of data transferred between the semiconductor chip CHIP0 and the semiconductor chip CHIP1 can be reduced.
[0058]
FIG. 3 shows a configuration of the HL deviation determination circuit COMP shown in FIG. In FIG. 3, INP is an input voltage generation circuit, COM is a current mirror type comparison circuit, REF is a reference voltage generation circuit, VDD is a first power supply, MP is a PMOS transistor, MN1 to MN4 are NMOS transistors, and / CS is Chip select signal.
[0059]
The input voltage generation circuit INP includes one PMOS transistor MP and eight NMOS transistors MN1. Bits IDB00 to IDB07 of data from the internal circuit INT0 of the semiconductor chip CHIP0 are applied to the gates of the NMOS transistors MN1. In response to the “H” bit, the NMOS transistor MN1 is turned on. As the number of NMOS transistors MN1 that are turned on among the eight NMOS transistors MN1 increases, the gate voltage of the NMOS transistor MN2 of the comparison circuit COM decreases.
[0060]
The reference voltage generation circuit REF includes one PMOS transistor MP and one NMOS transistor MN3. A constant voltage is applied to the gate of the NMOS transistor MN3. A constant voltage is also applied to the gate of the NMOS transistor MN4 of the comparison circuit COM.
[0061]
When comparing each NMOS transistor MN1 in the input voltage generation circuit INP with the NMOS transistor MN3 in the reference voltage generation circuit REF, the amount of current flowing through the NMOS transistor MN3 is 4.5 of the amount of current flowing through the NMOS transistor MN1. It is equivalent to twice. For this reason, when four or less of the NMOS transistors MN1 in the input voltage generation circuit INP are on, the current flowing through the NMOS transistor MN3 in the reference voltage generation circuit REF is greater in the input voltage generation circuit INP. It is larger than the current flowing through each of the four or less NMOS transistors MN1, and in the comparison circuit COM, the gate voltage of the NMOS transistor MN4 is lower than the gate voltage of the NMOS transistor MN2. When five or more of the NMOS transistors MN1 in the input voltage generation circuit INP are on, the current flowing through the NMOS transistor MN3 in the reference voltage generation circuit REF is 5% in the input voltage generation circuit INP. In comparison circuit COM, the gate voltage of NMOS type transistor MN4 becomes higher than the gate voltage of NMOS type transistor MN2.
[0062]
In such a configuration, when the chip select signal / CS becomes “L”, each PMOS transistor MP is turned on, and the HL bias determination circuit COMP is activated. In this state, when four or less of the bits IDB00 to IDB07 of the data from the internal circuit INT0 of the semiconductor chip CHIP0 become “H”, four or less of the NMOS transistors MN1 in the input voltage generation circuit INP Turn on. As a result, in the comparison circuit COM, the gate voltage of the NMOS transistor MN4 is lower than the gate voltage of the NMOS transistor MN2. In response to this, the comparison circuit COM outputs an internal HL deviation determination signal IHLD indicating “L”.
[0063]
When five or more of the bits IDB00 to IDB07 of the data from the internal circuit INT0 of the semiconductor chip CHIP0 become “H”, five or more of the NMOS transistors MN1 in the input voltage generation circuit INP are turned on. Become. As a result, in the comparison circuit COM, the gate voltage of the NMOS transistor MN4 becomes higher than the gate voltage of the NMOS transistor MN2. In response to this, the comparison circuit COM outputs an “H” internal HL deviation determination signal IHLD.
[0064]
Thus, the HL deviation determination circuit COMP compares the number of “H” bits included in the data output from the internal circuit INT0 with the number of “L” bits, and the number of “H” bits is determined. When the number of “L” bits is larger, the “H” internal HL bias judgment signal IHLD is output, and when the number of “H” bits is smaller than the number of “L” bits, “ The L "internal HL deviation determination signal IHLD is output.
[0065]
FIG. 4 shows a partial configuration of the output data holding circuit OREG shown in FIG. The circuit shown in FIG. 4 is provided to correspond to 1-bit IDB00 of data input to the output data holding circuit OREG. Circuits similar to those shown in FIG. 4 are provided so as to correspond to the other 7 bits input to the output data holding circuit OREG. Therefore, the output data holding circuit OREG is provided with eight circuits shown in FIG.
[0066]
In FIG. 4, INV is an inverter circuit, and CINV1 to CINV4 are clock control type inverter circuits.
[0067]
When the internal data transfer control signal ITR becomes “H” in a state where the internal HL bias determination signal IHLD indicates “H”, the 1-bit IDB00 of the data is converted into the clock control type inverter circuit CINV1 → the inverter circuit INV → the clock control type inverter. The signal is transmitted through the path of the circuit CINV3, inverted, and output as the bit ROUT00.
[0068]
When the internal data transfer control signal ITR becomes “H” in the state where the internal HL deviation determination signal IHLD indicates “L”, the 1-bit IDB00 of the data is inverted via the clock control type inverter circuits CINV1 and CINV4. Without being output as bit ROUT00.
[0069]
As described above, when the internal HL bias determination signal IHLD is “H”, the output data holding circuit OREG inverts the logical values of the bits IDB00 to IDB07 included in the data, and has the inverted logical value. Are output as bits ROUT00 to ROUT07, and when the internal HL deviation determination signal IHLD is “L”, the bits IDB00 to IDB07 included in the data are output as bits ROUT00 to ROUT07 as they are.
[0070]
FIG. 5 shows a configuration of the interlaceable shift register JREG shown in FIG. In FIG. 5, JREGC, JREGC00 to JREGC07 are circuits per stage of the jumpable shift register JREG, NAND is a two-input NAND circuit, NOR is a two-input NOR circuit, INV is an inverter circuit, CINV is a clock-controlled inverter circuit, REG00 to REG00 REG07 is an output of the circuits JREGC00 to JREGC07. REG00 to REG07 are not shown for simplicity.
[0071]
The interleaving shift register JREG includes circuits JREGC00 to JREGC07 and a circuit JREGC. These circuits are connected in series. The circuits JREGC00 to JREGC07 are provided so as to correspond to the bits ROUT00 to ROUT07 output from the output data holding circuit OREG, respectively. The first circuit JREGC of the interleaving shift register JREG is provided as a dummy. In the first stage circuit JREGC, an “H” signal (voltage VDD) is always input instead of the bit from the output data holding circuit OREG. When the internal data transfer control signal ITR becomes “H”, a bit “H” is given to the second and subsequent circuits JREGC00 to JREGC07, so that the second and subsequent circuits JREGC00 to JREGC07 from the next rising edge of the clock signal CLK. Output operation becomes possible.
[0072]
The internal data transfer control signal ITR first becomes “H” in synchronization with the data latch signal TRR, and thereafter becomes “H” in response to a bit from the circuit JREGC07 at the final stage. When the data latch signal TRR first becomes “H”, the NMOS transistor MN11 is turned on. As a result, the internal data transfer control signal ITR becomes “H”. Thereafter, the PMOS transistor MP11 is turned on each time a “H” bit is output from the final-stage circuit JREGC07. As a result, the internal data transfer control signal ITR becomes “H”.
[0073]
When the “H” bit is output from the first-stage circuit JREGC, the next-stage circuit JREGC00 inputs the “H” bit to the NAND circuit NAND and the NMOS transistor MN12. As a result, the NMOS transistor MN12 is turned on. The NAND circuit NAND receives the “H” bit and the bit ROUT00 from the output data holding circuit OREG. As a result, when the bit ROUT00 is “H”, the NAND circuit NAND outputs an “L” bit. In response to this, the “H” selection signal REG00 is output from the NOR circuit NOR11 at the next rise of the clock signal CLK. At the same time, the “H” bit is also output from the NOR circuit NOR12, and the “H” bit is output to the subsequent circuit JREGC01 via the NMOS transistor MN12.
[0074]
When the bit ROUT00 is “L”, a “H” bit is output from the NAND circuit NAND, and in response thereto, the “L” selection signal REG00 at the next rising edge of the clock signal CLK. Is output from the NOR circuit NOR11.
[0075]
On the other hand, when the bit ROUT00 is “L”, the NMOS transistor MN12 is turned off, so that the “L” bit from the NOR circuit NOR12 is not output to the subsequent circuit JREGC02. Instead, since the PMOS transistor MP22 is turned on, the “H” bit from the first stage circuit JREGC is output to the subsequent circuit JREGC02 via the PMOS transistor MP22. However, the transmission of the “H” bit from the initial stage circuit JREGC to the subsequent stage circuit JREGC02 at this time is performed immediately without waiting for the rising edge of the clock signal CLK.
[0076]
Similarly, in any of the circuits JREGC01 to JREGC07, if the “H” bit ROUT is input from the output data holding circuit OREG, the next to the clock signal CLK after the “H” bit is input from the preceding circuit JREGC. At the rising edge, the “H” selection signal REG is output, and at the same time, the “H” bit is output to the circuit JREGC at the subsequent stage. Further, when the “L” bit ROUT is input from the output data holding circuit OREG, the “H” bit is immediately transmitted from the preceding stage to the subsequent circuit JREGC, and at the next rising edge of the clock signal CLK thereafter, “ The L "bit REG is output.
[0077]
As described above, when the bits ROUT00 to ROUT07 are input from the output data holding circuit OREG, the interleaving shift register JREG sequentially selects the “H” bits of the bits ROUT00 to ROUT07 in synchronization with the clock signal CLK. The selection signal REG corresponding to the selected bit is set to “H”.
[0078]
6A to 6H show circuit configurations of the encoding elements ENC00 to ENC07 shown in FIG. 6A to 6H, MN31 to MN33 denote NMOS transistors.
[0079]
For each of the encoding elements ENC00 to ENC07, either the ground potential or the power supply potential is selectively applied to the input sides of the three NMOS transistors MN31 to MN33, and the potentials on the input sides of the three NMOS transistors MN31 to MN33 are changed. The combination is different. For example, in the encoding element ENC00 shown in FIG. 6A, the ground potential is applied to all the input sides of the three NMOS transistors MN31 to MN33. In the encode element ENC05 shown in FIG. 6F, the ground potential is applied to the input sides of the two NMOS transistors MN31 and MN33, and the power supply potential is applied to the input side of the one NMOS transistor MN32. .
[0080]
In any of the encoding elements ENC00 to ENC07, when the “H” selection signal REG from the interlaceable shift register JREG is input to the gates of the three NMOS transistors MN31 to MN33, these NMOS transistors MN31 to MN33 are turned on. Each potential on the input side of these NMOS transistors MN31 to MN33 is output as a 3-bit position signal.
[0081]
Thus, each of the encoding elements ENC00 to ENC07 outputs a 3-bit position signal indicating the position of its own encoding element when the corresponding selection signal among the selection signals REG00 to REG07 becomes “H”.
[0082]
With such a configuration, the bit position information indicating the position of the smaller number of the “H” bits and “L” bits included in the 8-bit data is output and indicated by the bit position information. It is possible to output an HL bias determination signal HLD indicating whether the position of the bit to be read is the position of the “H” bit or the “L” bit.
[0083]
FIG. 7 shows a configuration of the input circuit IN1 shown in FIG. The input circuit IN1 decodes the 3-bit bit position information (DB00, DB01, DB02) input to the semiconductor chip CHIP1 into 8-bit data, and transfers the 8-bit data to the internal circuit INT1.
[0084]
The input circuit IN1 includes an
[0085]
[0086]
Decoding
[0087]
The 3-bit bit position information (DB00, DB01, DB02) transferred from the output circuit OUT0 of the semiconductor chip CHIP0 via the
[0088]
The HL bias determination signal HLD transferred from the output circuit OUT0 of the semiconductor chip CHIP0 via the
[0089]
The data transfer control signal TR transferred from the output circuit OUT0 of the semiconductor chip CHIP0 via the
[0090]
When the “H” internal HL bias determination signal IHLD is input (that is, when the logical value of each bit of data is inverted and transferred from the semiconductor chip CHIP0), the input data holding circuit IREG decodes Bits IDB10 to IDB17 having the same logical value as the original data are generated by inverting the logical values of the bits INDEC10 to INDEC17 output from the elements DEC10 to DEC17. Bits IDB10 to IDB17 are output to the internal circuit INT1 of the semiconductor chip CHIP1.
[0091]
When the “L” internal HL bias determination signal IHLD is input (that is, when each bit of data is transferred as it is from the semiconductor chip CHIP0), the input data holding circuit IREG receives from the decoding elements DEC10 to DEC17. The bits INDEC10 to INDEC17 are output as bits IDB10 to IDB17 without inverting the logical values of the output bits INDEC10 to INDEC17. Thereby, bits IDB10 to IDB17 having the same logical value as the original data are obtained. Bits IDB10 to IDB17 are output to the internal circuit INT1 of the semiconductor chip CHIP1.
[0092]
The input data holding circuit IREG is reset in response to a period during which the internal data transfer control signal TRD is at a high level. Thereafter, the input data holding circuit IREG operates in response to the bits INDEC10 to INDEC17 output from the decoding elements DEC10 to DEC17.
[0093]
In order to match the input timing of the internal data transfer control signal TRD to the input data holding circuit IREG with the input timing of the bits INDEC10 to INDEC17 from the decoding elements DEC10 to DEC17, the input buffer IBUF2 has a predetermined data transfer control signal TR. Used to delay by the specified delay time. The delayed data transfer control signal TR is output as the internal data transfer control signal TRD.
[0094]
The latching of the bits IDB10 to IDB17 from the input data holding circuit IREG to the internal circuit INT1 of the semiconductor chip CHIP1 is performed at the reset timing of the input data holding circuit IREG by the internal data transfer control signal TRD.
[0095]
As described above, the input circuit IN1 of the semiconductor chip CHIP1 receives the bit position information (position signals DB00, DB01, DB02) every time 3-bit bit position information (DB00, DB01, DB02) is input from the semiconductor chip CHIP0. ) Is decoded by any one of the decoding elements DEC10 to DEC17, and bits INDEC10 to INDEC17 are generated, and the logical values of the bits INDEC10 to INDEC17 are inverted or not inverted according to the internal HL bias determination signal IHLD. Bits IDB10 to IDB17 having the same logical value as that of the data are generated.
[0096]
8A to 8H show circuit configurations of the decoding elements DEC10 to DEC17 shown in FIG.
[0097]
For example, the decode element DEC10 in FIG. 8A includes three inverter circuits INV0, a NAND circuit NAND, and an inverter circuit INV1, and corresponds to the encode element ENC00 in FIG. When the 3-bit bit position information (DB00, DB01, DB02) generated by the encoding element ENC00 of FIG. 6A is input, the decoding element DEC10 of FIG. The bit INDEC10 of H ”is output.
[0098]
8B includes two inverter circuits INV0, a NAND circuit NAND, and an inverter circuit INV1, and corresponds to the encode element ENC01 in FIG. 6B. When the 3-bit bit position information (DB00, DB01, DB02) generated by the encoding element ENC01 of FIG. 6B is input, the decoding element DEC11 of FIG. The bit INDEC11 of H ”is output.
[0099]
In this manner, the decoding elements DEC10 to DEC17 convert the 3-bit bit position information into 8-bit data.
[0100]
FIG. 9 shows a partial configuration of the input data holding circuit IREG shown in FIG. In FIG. 9, NOR is a NOR circuit, CINV is an inverter controlled by a clock, and INV is an inverter.
[0101]
The circuit shown in FIG. 9 is provided so as to correspond to the bit INDEC10 output from the decoding element DEC10. Circuits similar to those shown in FIG. 9 are provided so as to correspond to the bits INDEC11 to INDEC17 output from the other decoding elements DEC11 to DEC17, respectively. Accordingly, the input data holding circuit IREG is provided with eight circuits shown in FIG.
[0102]
The circuit shown in FIG. 9 is reset at the rising edge of the internal data transfer control signal TRD, and outputs the bit IDB10 of “L”. In a state where the “L” internal HL bias determination signal IHLD is input, when the “L” bit INDEC10 is input from the decoding element DEC10, the “L” bit IDB10 is output as it is, and the decoding element DEC10 outputs the same. When the “H” bit INDEC 10 is input, the logical value of the bit IDB 10 is inverted, and the “H” bit IDB 10 is output.
[0103]
When the circuit shown in FIG. 9 is reset at the rising edge of the internal data transfer control signal TRD, if the internal HL deviation determination signal IHLD of “H” is being input, the internal data transfer control signal TRD In response to the falling edge, the logic value of the bit IDB10 is inverted, and the bit IDB10 of “H” is output. When the “L” bit INDEC10 is input from the decoding element DEC10, the “H” bit IDB10 is output as it is, and when the “H” bit INDEC10 is input from the decoding element DEC10, the logical value of the bit IDB10 is output. Are inverted, and the bit IDB10 of "L" is output.
[0104]
Such an operation is performed for each of the bits INDEC10 to INDEC17 output from the decoding elements DEC10 to DEC17. As a result, bits INDEC10 to INDEC17 are output from the input data holding circuit IREG.
[0105]
In the circuit of FIG. 9, the bias determination signal IHLD is used to control whether the bit INDEC10 input to the data input terminal is forwardly output to the output terminal IDB10 or output after being inverted.
[0106]
Specifically, when the bias determination signal IHLD is “H”, the bit INDEC10 input to the data input terminal is input via the inverter CINV5, and when the bias determination signal IHLD is “L”. The bit INDEC10 input to the data input terminal is input via the two-stage inverters of the inverter INV4 and the inverter CINV3.
[0107]
When the data appearing at the node A is “H”, the inverters CINV2 and CINV8 are activated and the inverters CINV6 and CINV7 are deactivated. As a result, the internal data transfer control signal TRD becomes “H”, and after resetting, the bit IDB10 becomes “H”.
[0108]
When the data appearing at the node A is “L”, the inverters CINV2 and CINV8 are inactivated, and the inverters CINV6 and CINV7 are activated. As a result, the internal data transfer control signal TRD becomes “H”, and after resetting, the bit IDB 10 becomes “L”.
[0109]
FIG. 10 is a timing chart showing operations of the output circuit OUT0 of the semiconductor chip CHIP0 and the input circuit IN1 of the semiconductor chip CHIP1.
[0110]
In the semiconductor chip CHIP0, when the internal data transfer control signal ITR becomes “H”, the bits ROUT00 to ROUT07 are output from the output data holding circuit OREG and selected in synchronization with the clock signal CLK from the next rising edge of the clock signal CLK. Among the signals REG00 to REG07, an “H” selection signal is sequentially output from the interleaving shift register JREG. Each time an “H” selection signal is output from the interlaceable shift register JREG, 3-bit bit position information (DB00, DB01, DB02) is transmitted.
[0111]
In the semiconductor chip CHIP1, the internal data transfer control signal TRD is generated by delaying the data transfer control signal TR. When the internal data transfer control signal TRD becomes “L”, every time 3-bit bit position information (DB00, DB01, DB02) is input, the “H” bit of the bits INDEC10 to INDEC17 is changed to the input data holding circuit IREG. Are sequentially input. The input data holding circuit IREG continues to output bits IDB10 to IDB17 having the same logical value as the original data until the internal data transfer control signal TRD becomes “H”.
[0112]
In FIG. 10, some time elapses before the bits INDEC10 to INDEC17 appear after the falling edge of the internal data transfer control signal TRD. This is because, when the “H” internal HL bias determination signal IHLD is input (that is, when the number of “H” bits among the bits included in the data is greater than the number of “L” bits), the internal This is because, after the bits INDEC10 to INDEC17 output from the decoding elements DEC10 to DEC17 are reset to “L” at the rising edge of the data transfer control signal TRD, the bits IDB10 to IDB17 are simultaneously rewritten to “H”. When the data includes many “H” bits, only information indicating the position of the “L” bit is transferred, and information indicating the position of the “H” bit is not transferred. By using the timing described above, the input data holding circuit IREG shown in FIG. 9 operates well.
[0113]
In FIG. 10, the third data transfer period is a period in which all “L” data (that is, data in which the logical values of all bits are “0”) is transferred. In the third data transfer period, the HL deviation determination signal HLD and the data transfer control signal TR are output from the semiconductor chip CHIP0 on the transmission side, but no bit position information is output. The bit position information is in the state of UNKNOWN. In this state, in the receiving-side semiconductor chip CHIP1, all data in the input data holding circuit IREG is reset in response to the internal data transfer control signal TRD. As a result, the bits IDB10 to IDB17 output from the input data holding circuit IREG are all “L”. In response to the input of the next data transfer control signal TR, the data of the input data holding circuit IREG is reset again. Simultaneously with this reset, the data of the input data holding circuit IREG is latched in the internal circuit INT1. As a result, all “L” data is transferred. The same applies when all “H” data is transferred. However, in this case, it is necessary to take a timing margin from when the HL deviation determination signal HLD is received until the bits IDB10 to IDB17 all become “H” until the next data transfer control signal TR is input.
[0114]
In the first embodiment, when all the bits IDB00 to IDB07 included in the data are “L”, only the reset operation by the data transfer control signal TR is performed without transferring the bit position information. That is, since the “L” internal HL bias determination signal IHLD is input to the input data holding circuit IREG, the input data holding circuit IREG sets the “L” bits IDB00 to IDB07 after reset by the data transfer control signal TR. Output as is.
[0115]
When all the bits IDB00 to IDB07 included in the data are “H”, the “H” internal HL deviation determination signal IHLD is input to the input data holding circuit IREG, so that the input data holding circuit IREG After resetting by the transfer control signal TR, the logic values of the bits IDB00 to IDB07 are inverted all at once, thereby outputting the “H” bits IDB00 to IDB07.
[0116]
As is clear from the above description, in the semiconductor device of the first embodiment, 8-bit data is encoded into 3-bit bit position information. This 3-bit bit position information is transferred via the bus. Then, the 3-bit bit position information is decoded into 8-bit data. For this reason, the number of signal lines required to transfer data can be reduced.
[0117]
Further, the number of “H” bits and the number of “L” bits are compared, and information indicating the position of the smaller bit is transferred together with the HL bias determination signal HLD according to the comparison result. Therefore, efficient data transfer becomes possible.
[0118]
The circuits in FIGS. 2 to 9 are merely examples, and various modifications can be made. Alternatively, a circuit having a similar function may be applied instead of these circuits.
[0119]
(Embodiment 2)
FIG. 11 shows the configuration of the
[0120]
In the
[0121]
The
[0122]
The semiconductor chip CHIP2 includes an internal circuit INT2 and an output circuit OUT2. The internal circuit INT2 generates 8-bit data. The output circuit OUT2 includes an
[0123]
The semiconductor chip CHIP3 includes an input circuit IN3 and an internal circuit INT3. The input circuit IN3 includes an
[0124]
The bit position information indicates the position of a bit having a logical value that has changed compared to the previously transferred data. For example, the previously transferred 8-bit data is (0, 1, 0, 1, 0, 0, 1, 0), and the 8-bit data to be transferred this time is (0, 1, 0, 1, Suppose the case of (1, 0, 1, 0). In this case, the position of the bit whose logical value has changed is represented by (1, 0, 0). Accordingly, the
[0125]
The 8-bit data to be transferred this time is generated by the internal circuit INT2 and provided to the output circuit OUT2. The previously transferred 8-bit data is held in the
[0126]
The
[0127]
In this way, instead of transferring 8-bit data, information indicating the position of a bit having a logical value changed compared to the previously transferred data among the 8 bits included in the data (that is, bit position information) ) Is transferred, it is possible to transfer data using a bus having a bit width smaller than the bit width of the transferred data. Thereby, the width of the bus can be reduced as compared with the conventional one. As a result, the scale of the
[0128]
In addition, the transfer efficiency of data can be improved by transferring the bit position information of 3 bits instead of transferring the data of 8 bits. Hereinafter, an example in which the data transfer efficiency is improved will be described. Here, the bit pattern 20 to the bit pattern 28 are defined as follows for 8-bit data.
[0129]
Bit pattern 20: 0 bit changes compared to previously transferred data: 1 way
Bit pattern 21: 1 bit changes compared to previously transferred data: 8 ways
Bit pattern 22: 2 bits change compared to previously transferred data: 28 ways
Bit pattern 23: 3 bits change compared to previously transferred data: 56 ways
Bit pattern 24: 4 bits change compared to previously transferred data: 70 ways
Bit pattern 25: 5 bits change compared to previously transferred data: 56 ways
Bit pattern 26: 6 bits change compared to previously transferred data: 28 ways
Bit pattern 27: 7 bits change compared to previously transferred data: 8 ways
Bit pattern 28: 8 bits change compared to previously transferred data: 1 way
In order to transfer the bit pattern 20 to the
[0130]
FIG. 12 shows a configuration of the output circuit OUT2 shown in FIG. The configuration of the output circuit OUT2 shown in FIG. 12 is that the HL deviation determination circuit COMP and the output buffer OBUF1 are deleted, the previous data holding circuit BDREG for holding each bit of the previously transferred data, and the current time 2 is different from the configuration of the output circuit OUT0 shown in FIG. 2 in that an exclusive OR circuit XOR for comparing each bit of transferred data and each bit of previously transferred data is added. Yes.
[0131]
In FIG. 12, the same reference numerals are given to the constituent elements having the same functions as those of the output circuit OUT2 shown in FIG.
[0132]
In the output circuit OUT2 of FIG. 12, first, the previous data holding circuit BDREG and the output data holding circuit OREG1 are initialized by the reset signal RESET. As a result, each bit of data held in the previous data holding circuit BDREG and each bit of data held in the output data holding circuit OREG1 are initialized to “L”.
[0133]
Next, the data generated by the internal circuit INT of the semiconductor chip CHIP2 is input and held in the output data holding circuit OREG1. The exclusive OR circuit XOR compares each bit of data held in the previous data holding circuit BDREG with each bit corresponding to the bits held in the output data holding circuit OREG1 in the order of the bit arrangement. As a result of the comparison, when the logical value of the bit held in the output data holding circuit OREG1 is different from the logical value of the bit held in the previous data holding circuit BDREG, the exclusive OR circuit XOR The bit corresponding to the bit changed to “H” is set to “H”, and this bit is output to the jumpable shift register JREG. The bits output from the exclusive OR circuit XOR are expressed as bits ROUT00 to ROUT07.
[0134]
The interlaceable shift register JREG sequentially selects “H” bits among the bits ROUT00 to ROUT07 in synchronization with the clock signal CLK, and sets the selection signal corresponding to the selected bits to “H”.
[0135]
The previous data holding circuit BDREG updates the data held in the previous data holding circuit BDREG by inverting the logical value of the bit corresponding to the “H” selection signal among the selection signals REGC00 to 07. In this way, the data held in the previous data holding circuit BDREG is sequentially updated.
[0136]
Each of the encoding elements ENC00 to ENC07 outputs a 3-bit position signal indicating the position of its own encoding element in response to the corresponding selection signal of the selection signals REG00 to REG07 becoming “H”.
[0137]
The 3-bit position signal output from any of the encoding elements ENC00 to ENC07 is temporarily stored in the output buffer OBUF0. Thereafter, the 3-bit position signal stored in the output buffer OBUF0 is sent to the bus 210 as bit position information (DB00, DB01, DB02) in synchronization with the clock signal CLK after the falling edge of the internal data transfer control signal ITR. Is output.
[0138]
When a plurality of position signals are stored in the output buffer OBUF0, the plurality of position signals are sequentially output as a plurality of bit position information (DB00, DB01, DB02) in synchronization with the clock signal CLK.
[0139]
FIG. 13 shows a partial configuration of the output data holding circuit OREG1 shown in FIG. The circuit shown in FIG. 13 is provided to correspond to 1-bit IDB00 of data input to the output data holding circuit OREG1. A circuit similar to the circuit shown in FIG. 13 is provided to correspond to the other seven bits input to the output data holding circuit OREG1. Therefore, eight circuits shown in FIG. 13 are provided in the output data holding circuit OREG1.
[0140]
In the circuit shown in FIG. 13, when the data control signal ITR becomes “H”, the clock control type inverter circuit CINV1 is turned on. As a result, 1-bit IDB00 of data is output as bit ROUT00 via the clock-controlled inverter circuit CINV1 and the inverter circuit INV1.
[0141]
FIG. 14 shows a partial configuration of the previous data holding circuit BDREG shown in FIG. The circuit shown in FIG. 14 is provided so as to correspond to the selection signal REGC00 input to the previous data holding circuit BDREG. Circuits similar to those shown in FIG. 14 are provided to correspond to the other seven selection signals input to the previous data holding circuit BDREG. Accordingly, the previous data holding circuit BDREG is provided with eight circuits shown in FIG.
[0142]
In the circuit shown in FIG. 14, when the reset signal RESET becomes “H”, the output of the NOR circuit NOR1 becomes “L”. At this time, if the “L” selection signal REG00 is input, the inverter circuits CINV6 and CINV7 are turned on. As a result, the output from the NOR circuit NOR1 (that is, the bit ROUT00) continues to be held at “L”.
[0143]
When the selection signal REG00 is inverted to become “H”, the inverter circuits CINV6 and CINV7 are turned off, and the inverter circuits CINV2 and CINV8 are turned on. At this time, the output of the NOR circuit NOR2 is “L”. When the output of the NOR circuit NOR2 is input to the NOR circuit NOR1 via the inverter INV1 and the inverter circuit CINV2, the output of the NOR circuit NOR1 is inverted. As a result, the bit ROUT00 becomes “H”. Even if the selection signal REG00 is inverted again and returns to "L", the bit IDB10 is kept at "H". However, the inverter circuits CINV6 and CINV7 are turned on, and the output of the NOR circuit NOR2 becomes “H”.
[0144]
Further, when the selection signal REG00 is further inverted again to become “H” and the respective inverter circuits CINV2 and CINV8 are turned on, the output of the NOR circuit NOR2 is “H”, so that the output of the NOR circuit NOR1 is inverted. . As a result, the bit ROUT00 becomes “L”.
[0145]
FIG. 15 shows a configuration of the input circuit IN3 shown in FIG.
[0146]
The input circuit IN3 decodes the 3-bit bit position information (DB00, DB01, DB02) input to the semiconductor chip CHIP3 into 8-bit data, and outputs the 8-bit data to the internal circuit INT3.
[0147]
The configuration of the input circuit IN3 is substantially the same as the configuration of the input circuit IN1 shown in FIG. However, both configurations differ in that the output buffer OBUF1 is deleted and in the configuration of the input data holding circuit IREG1.
[0148]
In FIG. 15, the same reference numerals are given to the constituent elements that perform the same functions as those of the input circuit IN1 shown in FIG.
[0149]
In the input circuit IN3, first, the input data holding circuit IREG1 is initialized by the reset signal RESET. As a result, each bit of data held in the input data holding circuit IREG1 is initialized to “L”.
[0150]
The 3-bit bit position information (DB00, DB01, DB02) transferred from the output circuit OUT2 of the semiconductor chip CHIP2 via the bus 210 is input to the decoding elements DEC10 to DEC17 via the input buffer circuit IBUF0. Each time 3-bit bit position information (DB00, DB01, DB02) is input, the bit position information (DB00, DB01, DB02) is decoded by one of the decoding elements DEC10 to DEC17. As a result, one of the bits INDEC10 to INDEC17 becomes “H”. Bits INDEC10 to INDEC17 are input to the input data holding circuit IREG.
[0151]
The input data holding circuit IREG1 has the same configuration as the previous data holding circuit BDREG shown in FIG. When the reset signal RESET becomes “H”, the bit IDB10 is set to “L”. As long as the “L” bit INDEC 10 is input from the decoding element DEC 10, the bit IDB 10 is kept at “L”.
[0152]
Further, when the bit INDEC10 is inverted to become the “H” bit, the bit IDB10 is inverted to become “H”. Even if the bit INDEC10 is inverted again and returns to "L", the bit ICB10 is kept at "H". However, when the bit INDEC10 is inverted again to “H”, the bit IDB10 is returned to “L”.
[0153]
A circuit corresponding to each bit held in the input data holding circuit IREG1 is shown in FIG. This circuit is a register circuit in which data is updated (inverted) only when the input becomes “H”. Therefore, the data held is not updated unless the input becomes “H” except that the data is cleared at the initial reset. When an address having a bit different from the previous transmission data is transmitted, the decoder circuit is configured to output “H” for each bit of the input address.
[0154]
In the input data holding circuit IREG1, the same output is held for bits having a logical value that has not changed compared to the previously transferred data. Therefore, by transferring only bits of data different from the previously transferred data, all bits of data are transferred. As a result, the original data can be reproduced in the semiconductor chip CHIP3 on the receiving side.
[0155]
In FIG. 15, the internal data transfer control signal TRD is not input anywhere in the figure. For example, the internal data transfer control signal TRD is supplied to the internal circuit INT3 of the semiconductor chip CHIP3, and the internal data transfer control signal TRD is supplied. In response, the bits IDB10 to IDB17 from the input circuit IN3 may be input to the internal circuit INT3 of the semiconductor chip CHIP3.
[0156]
As is clear from the above description, in the
[0157]
The circuits in FIGS. 11 to 15 are merely examples, and various modifications can be made. Alternatively, a circuit having a similar function may be applied instead of these circuits.
[0158]
【The invention's effect】
According to the semiconductor device of the present invention, bit position information indicating the position of at least one selected bit among a plurality of bits included in data is generated, and the bit position information is transmitted. The content of the data is transmitted from the transmission unit to the reception unit using bit position information having a smaller number of bits than the number of bits of data to be transmitted. Thereby, the bit width of the bus connecting the transmission unit and the reception unit can be made smaller than the bit width of the data to be transmitted. For example, 8-bit data can be transmitted using a 3-bit bus. As a result, the scale of the semiconductor device can be reduced.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a
2 is a block diagram showing a configuration of an output circuit OUT0 in the semiconductor chip CHIP0 shown in FIG.
FIG. 3 is a circuit diagram showing a configuration of an HL deviation determination circuit COMP shown in FIG. 2;
4 is a circuit diagram showing a partial configuration of an output data holding circuit OREG shown in FIG. 2;
FIG. 5 is a circuit diagram showing a configuration of a jumpable shift register JREG shown in FIG. 2;
FIGS. 6A to 6H are circuit diagrams showing configurations of encoding elements ENC00 to ENC07 shown in FIG.
7 is a block diagram showing a configuration of an input circuit IN1 in the semiconductor chip CHIP1 shown in FIG.
FIGS. 8A to 8H are circuit diagrams showing configurations of the decoding elements DEC10 to DEC17 shown in FIG.
9 is a circuit diagram showing a configuration of part of the input data holding circuit IREG shown in FIG. 7;
10 is a timing chart showing operations of the output circuit OUT0 and the input circuit IN1 shown in FIG.
FIG. 11 is a block diagram showing a configuration of a
12 is a block diagram showing a configuration of an output circuit OUT2 in the semiconductor chip CHIP2 shown in FIG.
13 is a circuit diagram showing a configuration of part of the output data holding circuit OREG1 shown in FIG.
14 is a circuit diagram showing a partial configuration of a previous data holding circuit BDREG shown in FIG. 12;
15 is a block diagram showing a configuration of an input circuit IN3 in the semiconductor chip CHIP3 shown in FIG.
[Explanation of symbols]
CHIP0, CHIP2 Semiconductor chip
CHIP1, CHIP3 Semiconductor chip
OUT0, OUT2 output circuit
IN1, IN3 input circuit
OREG, OREG1 output data holding circuit
JREG interleaving shift register
ENC0 to ENC7 Encoding element
COMP HL bias judgment circuit
OBUF0, OBUF1, OBUF2 output buffer
IREG, IREG1 Input data holding circuit
DEC10 to DEC17 decoding element
IBUF0 to IBUF2 input buffer circuit
XOR exclusive OR circuit
BDREG Previous data holding circuit
Claims (5)
前記送信部は、複数のビットを含むデータを符号化することにより、前記データに含まれる前記複数のビットのうち選択された少なくとも1つのビットの位置を示すビット位置情報を生成する符号化部と、前記ビット位置情報を前記バスに出力する出力部とを含み、
前記受信部は、前記ビット位置情報を前記バスから受け取る入力部と、前記ビット位置情報を復号化することにより前記データを生成する復号化部とを含み、
前記選択された少なくとも1つのビットは、特定の論理値を有するビットであり、
前記送信部は、前記データに含まれる複数のビットのうち前記特定の論理値を有するビットの数が前記特定の論理値以外の論理値を有するビットの数より大きいか否かを示すビット数比較情報を生成するビット数比較情報生成部をさらに備え、前記出力部は、前記ビット位置情報と前記ビット数比較情報とを前記バスに出力し、
前記受信部における前記入力部は、前記ビット位置情報と前記ビット数比較情報とを前記バスから受け取り、前記復号化部は、前記ビット数比較情報に基づいて前記ビット位置情報を復号化することにより前記データを生成することを特徴とする半導体装置。A semiconductor device comprising a transmitter and a receiver connected via a bus,
The transmission unit encodes data including a plurality of bits, thereby generating bit position information indicating a position of at least one bit selected from the plurality of bits included in the data; An output unit for outputting the bit position information to the bus,
The receiving unit includes an input unit that receives the bit position information from the bus, and a decoding unit that generates the data by decoding the bit position information ,
The selected at least one bit is a bit having a specific logic value;
The transmission unit compares the number of bits indicating whether or not the number of bits having the specific logical value among a plurality of bits included in the data is greater than the number of bits having a logical value other than the specific logical value A bit number comparison information generating unit for generating information, and the output unit outputs the bit position information and the bit number comparison information to the bus;
The input unit in the receiving unit receives the bit position information and the bit number comparison information from the bus, and the decoding unit decodes the bit position information based on the bit number comparison information. A semiconductor device that generates the data .
前記出力部は、前記複数のビット位置情報を前記バスにシリアルに出力する、請求項1に記載の半導体装置。The encoding unit generates a plurality of bit position information by encoding the data,
The semiconductor device according to claim 1, wherein the output unit serially outputs the plurality of bit position information to the bus.
複数のビットを含むデータを符号化することにより、前記データに含まれる前記複数のビットのうち選択された少なくとも1つのビットの位置を示すビット位置情報を生成する符号化部と、
前記ビット位置情報を前記バスに出力する出力部とを備え、
前記選択された少なくとも1つのビットは、特定の論理値を有するビットであり、
前記データに含まれる複数のビットのうち前記特定の論理値を有するビットの数が前記特定の論理値以外の論理値を有するビットの数より大きいか否かを示すビット数比較情報を生成するビット数比較情報生成部をさらに備え、
前記出力部は、前記ビット位置情報と前記ビット数比較情報とを前記バスに出力することを特徴とする半導体装置。A semiconductor device connected to a bus,
An encoding unit that generates bit position information indicating a position of at least one selected bit among the plurality of bits included in the data by encoding data including a plurality of bits;
An output unit for outputting the bit position information to the bus;
The selected at least one bit is a bit having a specific logic value;
A bit for generating bit number comparison information indicating whether or not the number of bits having the specific logical value among a plurality of bits included in the data is larger than the number of bits having a logical value other than the specific logical value A number comparison information generation unit;
The semiconductor device according to claim 1, wherein the output unit outputs the bit position information and the bit number comparison information to the bus .
データに含まれる複数のビットのうち選択された少なくとも1つのビットの位置を示すビット位置情報を前記バスから受け取る入力部と、
前記ビット位置情報を復号化することにより前記データを生成する復号化部とを備え、
前記選択された少なくとも1つのビットは、特定の論理値を有するビットであり、
前記入力部は、前記ビット位置情報と、前記データに含まれる複数のビットのうち前記特定の論理値を有するビットの数が前記特定の論理値以外の論理値を有するビットの数より大きいか否かを示すビット数比較情報とを前記バスから受け取り、
前記復号化部は、前記ビット数比較情報に基づいて前記ビット位置情報を復号化することにより前記データを生成することを特徴とする半導体装置。A semiconductor device connected to a bus,
An input unit for receiving from the bus bit position information indicating a position of at least one selected bit among a plurality of bits included in the data;
A decoding unit that generates the data by decoding the bit position information ,
The selected at least one bit is a bit having a specific logic value;
The input unit determines whether or not the number of bits having the specific logical value among the plurality of bits included in the bit position information and the data is larger than the number of bits having a logical value other than the specific logical value. Bit number comparison information indicating whether or not from the bus,
The decoding device generates the data by decoding the bit position information based on the bit number comparison information .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03350699A JP3976923B2 (en) | 1998-02-13 | 1999-02-10 | Semiconductor device |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3173498 | 1998-02-13 | ||
JP10-31734 | 1998-02-13 | ||
JP03350699A JP3976923B2 (en) | 1998-02-13 | 1999-02-10 | Semiconductor device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11317669A JPH11317669A (en) | 1999-11-16 |
JP3976923B2 true JP3976923B2 (en) | 2007-09-19 |
Family
ID=26370247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP03350699A Expired - Fee Related JP3976923B2 (en) | 1998-02-13 | 1999-02-10 | Semiconductor device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3976923B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4136429B2 (en) | 2002-04-10 | 2008-08-20 | 富士通株式会社 | Semiconductor device |
-
1999
- 1999-02-10 JP JP03350699A patent/JP3976923B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH11317669A (en) | 1999-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5917364A (en) | Bi-directional interface circuit of reduced signal alteration | |
JP5575237B2 (en) | Data encoding using combined data mask and data bus inversion | |
US8199849B2 (en) | Data transmitting device, data receiving device, data transmitting system, and data transmitting method | |
US7408482B2 (en) | Integrated circuit devices having data inversion circuits therein with multi-bit prefetch structures and methods of operating same | |
US9851903B2 (en) | Semiconductor devices and semiconductor systems including the same | |
US7003605B2 (en) | Method and system for an improved differential form of transitional coding | |
KR100789195B1 (en) | Input/output interface and semiconductor integrated circuit having input/output interface | |
CN116153362B (en) | Delay feedback method and delay feedback storage structure for read latency counter | |
US7154300B2 (en) | Encoder and decoder circuits for dynamic bus | |
US7103624B2 (en) | Comparator circuit and method | |
US6950357B2 (en) | Test mode flag signal generator of semiconductor memory device | |
US7974145B2 (en) | Semiconductor memory device using bus inversion scheme | |
US7161992B2 (en) | Transition encoded dynamic bus circuit | |
US7394285B2 (en) | Circuit for driving bus | |
JP3976923B2 (en) | Semiconductor device | |
US7359471B2 (en) | Data communication method and data communication device and semiconductor device | |
US7560955B2 (en) | Logic circuit | |
US6633607B1 (en) | Semiconductor device having a plurality of semiconductor chips connected together by a bus | |
TW202239180A (en) | Signal transmitting device, transmitting and receiving system, and transmitting and receiving method | |
US6995585B2 (en) | System and method for implementing self-timed decoded data paths in integrated circuits | |
JP2005286662A (en) | Data transmission apparatus, data transmission / reception system, and data transmission method | |
KR100596839B1 (en) | A synchronous DRAM for extending Cas Latency | |
KR950002083B1 (en) | Data output buffer | |
JPH1168860A (en) | Data transfer device and its method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050302 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20061129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061214 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070209 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070529 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070620 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100629 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100629 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110629 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120629 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120629 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130629 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |