JP6431583B2 - Module and system - Google Patents
Module and system Download PDFInfo
- Publication number
- JP6431583B2 JP6431583B2 JP2017161890A JP2017161890A JP6431583B2 JP 6431583 B2 JP6431583 B2 JP 6431583B2 JP 2017161890 A JP2017161890 A JP 2017161890A JP 2017161890 A JP2017161890 A JP 2017161890A JP 6431583 B2 JP6431583 B2 JP 6431583B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- unit
- inversion
- logic
- processing
- 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.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Description
本発明は、データバス駆動回路、それを備えた半導体装置及び半導体記憶装置に関し、例えば処理性能を低下させることなくデータバスの消費電力を低減させるのに適したデータバス駆動回路、それを備えた半導体装置及び半導体記憶装置に関する。 The present invention relates to a data bus driving circuit, a semiconductor device including the data bus, and a semiconductor memory device. For example, the data bus driving circuit suitable for reducing power consumption of a data bus without reducing processing performance is provided. The present invention relates to a semiconductor device and a semiconductor memory device.
メモリでは、プロセス微細化及び大容量化に伴い、メモリセルに保持されるデータが不安定になってきている。そこで、近年では、信頼性を向上させるため、誤ったデータが記憶されていることを検出して正しいデータに訂正するECC(Error Check and Correct)機能を持たせたメモリが増加している。 In a memory, data held in a memory cell is becoming unstable with process miniaturization and capacity increase. Therefore, in recent years, in order to improve the reliability, the number of memories having an ECC (Error Check and Correct) function for detecting that erroneous data is stored and correcting it to correct data is increasing.
また、単体メモリ及びメモリ内蔵LSI(Large Scale Integration)では、システムの処理能力向上のため、メモリの大容量化及びデータビット数の増加が進んでいる。そのため、データバスにて消費される電力の全体に占める割合が大きくなってきている。 Further, in a single memory and a memory built-in LSI (Large Scale Integration), the capacity of the memory and the number of data bits are increasing in order to improve the processing capacity of the system. For this reason, the ratio of the power consumed by the data bus to the whole is increasing.
このような問題に対する解決策が、特許文献1に開示されている。特許文献1に開示されたデータ記憶装置は、データ記憶処理中に電力消費が少なくなるデータパターンとなるように、メインデータ及びそのエラー訂正コードを含むデータの全構成ビットの値を論理反転するか否かを判定し、その判定結果に基づいて当該データ又はその反転データをメモリセルアレイに書き込む。データの読み出し時には、メモリセルアレイから読み出されたデータが反転データである場合には、当該反転データを再度反転させてオリジナルデータに戻す。それにより、消費電流を低減している。 A solution to such a problem is disclosed in Patent Document 1. Whether the data storage device disclosed in Patent Document 1 logically inverts the values of all the constituent bits of the data including the main data and its error correction code so that the data pattern consumes less power during the data storage process. The data or the inverted data is written in the memory cell array based on the determination result. At the time of reading data, if the data read from the memory cell array is inverted data, the inverted data is inverted again and returned to the original data. Thereby, current consumption is reduced.
その他、特許文献2には、送信データとバス信号とを比較した結果に基づいて、送信データを構成するビット列の極性を反転させるか否かを制御する構成が開示されている。 In addition, Patent Document 2 discloses a configuration for controlling whether to invert the polarity of a bit string constituting transmission data based on a result of comparing transmission data and a bus signal.
しかし、特許文献1に開示された構成では、ECC処理時間に加えて、データの反転判定の処理に要する時間が別途必要になるため、メモリの処理性能が低下してしまうという問題があった。メモリに限らず、データに対して処理を施すデータ処理部と、当該データ処理部により処理されたデータをデータバスに伝達する際に論理反転させる否かを判定する反転判定部と、を備えた半導体装置では、データ処理に要する時間に加えて、データの反転判定の処理に要する時間が別途必要になるため、メモリの場合と同様に処理性能が低下してしまう、という問題があった。その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。 However, the configuration disclosed in Patent Document 1 has a problem in that the processing performance of the memory is deteriorated because time required for data inversion determination processing is required in addition to the ECC processing time. Not only a memory, but also a data processing unit that processes data, and an inversion determination unit that determines whether to invert the logic when the data processed by the data processing unit is transmitted to the data bus. In the semiconductor device, in addition to the time required for the data processing, a time required for the data inversion determination process is separately required, so that there is a problem that the processing performance is deteriorated as in the case of the memory. Other problems and novel features will become apparent from the description of the specification and the accompanying drawings.
一実施の形態によれば、データバス駆動回路は、入力データに対して処理を施し処理データを出力するデータ処理部と、前記処理データ、及び、当該処理データを構成する複数ビットのそれぞれの値を論理反転した反転データ、の何れかを判定結果信号に基づいて選択し、データバスに出力する第1論理反転部と、前記データ処理部により処理される前の前記入力データと前記第1論理反転部から出力されたデータとを比較して、その比較結果に基づいて前記判定結果信号を出力する反転判定部と、を備える。 According to an embodiment, the data bus driving circuit includes a data processing unit that processes input data and outputs the processed data, the processed data, and each value of a plurality of bits constituting the processed data Is selected based on the determination result signal and output to the data bus, the input data before being processed by the data processing unit, and the first logic An inversion determination unit that compares the data output from the inversion unit and outputs the determination result signal based on the comparison result.
前記一実施の形態によれば、処理性能を低下させることなく消費電力を低減することが可能なデータバス駆動回路、それを備えた半導体装置及び半導体記憶装置を提供することができる。 According to the embodiment, it is possible to provide a data bus driving circuit capable of reducing power consumption without degrading processing performance, a semiconductor device including the data bus driving circuit, and a semiconductor memory device.
以下、図面を参照しつつ、実施の形態について説明する。なお、図面は簡略的なものであるから、この図面の記載を根拠として実施の形態の技術的範囲を狭く解釈してはならない。また、同一の要素には、同一の符号を付し、重複する説明は省略する。 Hereinafter, embodiments will be described with reference to the drawings. Since the drawings are simple, the technical scope of the embodiments should not be narrowly interpreted based on the description of the drawings. Moreover, the same code | symbol is attached | subjected to the same element and the overlapping description is abbreviate | omitted.
以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらはお互いに無関係なものではなく、一方は他方の一部または全部の変形例、応用例、詳細説明、補足説明等の関係にある。また、以下の実施の形態において、要素の数等(個数、数値、量、範囲等を含む)に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でもよい。 In the following embodiments, when it is necessary for the sake of convenience, the description will be divided into a plurality of sections or embodiments. However, unless otherwise specified, they are not irrelevant to each other. Are partly or entirely modified, application examples, detailed explanations, supplementary explanations, and the like. Further, in the following embodiments, when referring to the number of elements (including the number, numerical value, quantity, range, etc.), especially when clearly indicated and when clearly limited to a specific number in principle, etc. Except, it is not limited to the specific number, and may be more or less than the specific number.
さらに、以下の実施の形態において、その構成要素(動作ステップ等も含む)は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数等(個数、数値、量、範囲等を含む)についても同様である。 Further, in the following embodiments, the constituent elements (including operation steps and the like) are not necessarily essential except when clearly indicated and clearly considered essential in principle. Similarly, in the following embodiments, when referring to the shapes, positional relationships, etc. of the components, etc., the shapes are substantially the same unless otherwise specified, or otherwise apparent in principle. And the like are included. The same applies to the above numbers and the like (including the number, numerical value, quantity, range, etc.).
<実施の形態1>
図1は、実施の形態1に係る半導体装置10を示すブロック図である。半導体装置10は、メモリ部からデータを読み出す場合において、ECC復号化部にて処理される前のデータを用いて、データバスに伝達するデータを反転させるか否かを判定する処理を行っている。それにより、ECC復号化部によるECC処理と、データバスに伝達するデータを反転させるか否かを判定する処理と、を並列に実行することが可能になるため、処理性能を低下させることなく消費電力を低減することができる。以下、具体的に説明する。
<Embodiment 1>
FIG. 1 is a block diagram showing a
図1に示すように、半導体装置10は、データの書き込み及び読み出しが行われるメモリ部11と、メモリ部11とデータの受け渡しを行うロジック部12と、メモリ部11及びロジック部12間を接続するバスDBUS,RBUSと、を備える。バスDBUSは、メモリ部11から読み出されたデータ、及び、メモリ部11に書き込むデータが伝搬するバスである。バスRBUSは、後述する判定結果信号が伝搬するバスである。なお、図1には、メモリ部11のデータ読み出し動作に関連する構成要素のみが示されている。
As shown in FIG. 1, the
メモリ部11は、メモリセルアレイ111と、ECC復号化部112と、反転判定部113と、論理反転部114と、を備える。メモリ部11は、例えば、DRAM、SRAM、ROM、その他の各種不揮発性メモリである。なお、ECC復号化部112と、反転判定部113と、論理反転部114と、により、データバス駆動回路が構成される。
The
メモリセルアレイ111は、行列状に配置された複数のメモリセルを備える。メモリセルアレイ111には、メインデータが記憶されるとともに、メインデータに基づき算出されるエラー訂正コード(例えば、ハミングコード、パリティデータ)が記憶される。 The memory cell array 111 includes a plurality of memory cells arranged in a matrix. The memory cell array 111 stores main data and an error correction code (for example, Hamming code, parity data) calculated based on the main data.
ECC復号化部112は、メモリセルアレイ111から読み出されたデータDi1に対して、エラー訂正コードDp1に基づくエラー訂正処理を施し、訂正されたデータDa1を出力する。なお、データDi1,Da1は、n(nは2以上の整数)ビット幅のデータである。エラー訂正コードDp1は、m(mは1以上の整数)ビット幅のコードである。
The
論理反転部114は、判定結果信号r1に基づいてデータDa1又はその反転データをデータDt1としてデータバスDBUSに出力する。データDa1の反転データとは、データDa1を構成する複数ビットのそれぞれの値を論理反転したデータのことである。なお、データDt1は、nビット幅のデータである。データバスDBUSは、nビット幅のバスである。
The
反転判定部113は、ECC復号化部112にて処理される前のデータDi1と、論理反転部114から出力され、データバスDBUSを伝搬する1サイクル前のデータDt1と、を比較して、その比較結果に応じた判定結果信号r1を出力する。なお、判定結果信号r1は、論理値0又は1を示す1ビット幅の信号である。
The
具体的には、反転判定部113は、データDi1を構成するnビットのそれぞれの値と、データDt1を構成するnビットのそれぞれの値と、を比較して、異なる論理値を示すビットの数が同じ論理値を示すビットの数よりも多い場合、論理反転部114にデータDa1を反転させてデータDt1として出力させるように判定結果信号r1を出力する。
Specifically, the
ロジック部12は、ロジック回路121と、論理反転部124と、を備える。
The
論理反転部124は、メモリ部11からバスRBUSを介して伝達された判定結果信号r1に基づいて、メモリ部11からデータバスDBUSを介して伝達されたデータDt1又はその反転データをデータDo1として出力する。
The
ロジック回路121は、論理反転部124から出力されたデータDo1を受け取って所定の処理を実行する。
The
例えば、反転判定部113は、データDi1を構成するnビットのそれぞれの値と、データDt1を構成するnビットのそれぞれの値と、を比較して、異なる論理値を示すビットの数が同じ論理値を示すビットの数よりも多い場合、Hレベルの判定結果信号r1を出力し、それ以外では、Lレベルの判定結果信号r1を出力する。Hレベルの判定結果信号r1が出力された場合、論理反転部114は、データDa1を反転させてデータDt1として出力し、論理反転部124は、データDt1を再度反転させてデータDo1として出力する(データDa1を復元する)。一方、Lレベルの判定結果信号r1が出力された場合、論理反転部114は、データDa1をそのままデータDt1として出力し、論理反転部124は、データDt1をそのままデータDo1として出力する。それにより、読み出しデータの遷移に伴う、データDt1を構成するnビットのそれぞれの値の変化、を常に半分以下に抑えることができるため、消費電力を低減することができる。なお、バスRBUSは1ビットであるため、データバスDBUSのビット幅が大きくなるほど、バスRBUSの消費電力の影響は無視できるほどに小さくなる。
For example, the
ここで、反転判定部113は、ECC復号化部112にて処理される前のデータDi1を用いて、論理反転部114にてデータDa1を反転させるか否かを判定している。つまり、反転判定部113は、ECC復号化部112による処理結果を待たずに、ECC復号化部112とともに並列に処理を実行している。それにより、ECC復号化部112による処理結果を待って反転判定部113にて処理が実行される場合と比較して、処理性能を低下させることなく消費電力を低減することができる。
Here, the
なお、ECC復号化部112にて処理される前のデータDi1には、エラービットが含まれている可能性があるが、その頻度及びビット数は無視できる程度に非常に少ない。そのため、データDa1を反転させるか否かの判定に影響を与えることはほとんどない。
Note that the data Di1 before being processed by the
このように、半導体装置10は、データバスDBUSに伝達するデータを反転させるか否かを判定する処理を、ECC復号化部112にて処理される前のデータを用いて行っている。それにより、ECC復号化部によるECC処理と、データバスに伝達するデータを反転させるか否かを判定する処理と、を並列に実行することが可能になるため、処理性能(処理速度)を低下させることなく消費電力を低減することができる。
As described above, the
また、大負荷のデータバスDBUSに伝達するデータの遷移を少なくすることにより、充放電のピーク電流を削減することができるため、電源ノイズを低減することも可能である。 Further, by reducing the transition of data transmitted to the heavily loaded data bus DBUS, the peak current of charging / discharging can be reduced, so that power supply noise can be reduced.
さらに、メモリ部11内でECC復号化部112による処理が行われるため、エラー訂正コードを伝搬するデータバスを設ける必要が無い。そのため、データバスにて消費される電力の増大を抑制することができるとともに、回路規模の増大を抑制することができる。
Furthermore, since processing by the
図2は、半導体装置10が適用されたLSIシステム1を示すブロック図である。
FIG. 2 is a block diagram showing an LSI system 1 to which the
図2に示すように、LSIシステム1は、複数のメモリ部11と、ロジック部12と、複数のメモリ部11とロジック部12との間を接続するバスDBUS,RBUSと、を備える。つまり、LSIシステム1は、半導体装置10のうちメモリ部11を複数備えたものと等価である。
As illustrated in FIG. 2, the LSI system 1 includes a plurality of
ここで、複数のメモリ部11は、大規模メモリを複数に分割して形成されたものである。複数のメモリ部11のうちデータ読み出し対象のメモリ部11のみを活性化して、残りを非活性化しておくことができるため、メモリ全体の消費電力を低減することができる。
Here, the plurality of
しかしながら、大規模メモリを複数に分割した結果、複数のメモリ部11とロジック部12とを接続するデータバスDBUSが長くなり負荷容量が大きくなってしまう。そのため、データビット数が増加すると、データバスで消費される電力の割合はますます高くなる。
However, as a result of dividing the large-scale memory into a plurality of parts, the data bus DBUS connecting the plurality of
そこで、LSIシステム1は、半導体装置10の仕組みを適用することで、処理性能を低下させることなく消費電力を低減している。
Therefore, the LSI system 1 uses the mechanism of the
<実施の形態2>
図3は、実施の形態2に係る半導体装置20を示すブロック図である。半導体装置20は、ロジック部からメモリ部にデータを書き込む場合において、ECC符号化部にて処理される前のデータを用いて、データバスに伝達するデータを反転させるか否かを判定する処理を行っている。それにより、ECC符号化部による処理と、データバスに伝達するデータを反転させるか否かを判定する処理と、を並列に実行することが可能になるため、処理性能を低下させることなく消費電力を低減することができる。以下、具体的に説明する。
<Embodiment 2>
FIG. 3 is a block diagram showing the
図3に示すように、半導体装置20は、メモリ部21と、ロジック部22と、メモリ部21及びロジック部22間を接続するバスDBUS,PBUS,RBUSと、を備える。メモリ部21及びロジック部22は、それぞれメモリ部11及びロジック部12に対応する。データバスPBUSは、エラー訂正コードが伝搬するバスである。なお、図3には、メモリ部21のデータ書き込み動作に関連する構成要素のみが示されている。
As illustrated in FIG. 3, the
ロジック部22は、ロジック回路221と、ECC符号化部222と、ラッチ部224と、反転判定部223と、論理反転部225,226と、を備える。ロジック回路221は、ロジック回路121に対応する。なお、ECC符号化部222と、ラッチ部224と、反転判定部223と、論理反転部225,226と、により、データバス駆動回路が構成される。
The
ロジック回路221は、メモリ部21に書き込むデータDi2を出力する。なお、データDi2は、nビット幅のデータである。
The
ECC符号化部222は、データDi2に基づいてエラー訂正コードDp2を算出して出力する。なお、エラー訂正コードDp2は、mビット幅のデータである。
The
ラッチ部224は、クロック信号に同期して動作し、ECC符号化部222が符号化処理を完了したのを受けて、データDi2を後段の論理反転部225に出力する。なお、ラッチ部224と論理反転部225とにより一つのラッチ部が形成されていてもよい。
The
論理反転部225は、後述する判定結果信号r2に基づいてデータDi2又はその反転データをデータDt2としてデータバスDBUSに出力する。論理反転部226は、判定結果信号r2に基づいてエラー訂正コードDp2又はその反転データをデータDpt2としてデータバスPBUSに出力する。なお、データバスPBUSは、mビット幅のバスである。
The
反転判定部223は、ECC符号化部222にて処理される前のデータDi2と、論理反転部225から出力され、データバスDBUSを伝搬する1サイクル前のデータDt2と、を比較して、その比較結果に応じた判定結果信号r2を出力する。なお、判定結果信号r2は、論理値0又は1を示す1ビット幅の信号である。
The inversion determination unit 223 compares the data Di2 before being processed by the
具体的には、反転判定部223は、データDi2を構成するnビットのそれぞれの値と、データDt2を構成するnビットのそれぞれの値と、を比較して、異なる論理値を示すビットの数が同じ論理値を示すビットの数よりも多い場合、論理反転部225にデータDi2を反転させてデータDt2として出力させるとともに、論理反転部225にエラー訂正コードDp2を反転させてデータDpt2として出力させるように、判定結果信号r2を出力する。
Specifically, the inversion determination unit 223 compares each value of n bits constituting the data Di2 with each value of n bits constituting the data Dt2, and counts the number of bits indicating different logical values. Is greater than the number of bits indicating the same logical value, the data Di2 is inverted by the
メモリ部21は、メモリセルアレイ211と、論理反転部215,216と、を備える。メモリセルアレイ211は、メモリセルアレイ111に対応する。
The
論理反転部215は、ロジック部22からバスRBUSを介して伝達された判定結果信号r2に基づいて、ロジック部22からデータバスDBUSを介して伝達されたデータDt2又はその反転データをデータDo2として出力する。
Based on the determination result signal r2 transmitted from the
論理反転部216は、ロジック部22からバスRBUSを介して伝達された判定結果信号r2に基づいて、ロジック部22からデータバスPBUSを介して伝達されたデータDpt2又はその反転データをエラー訂正コードDp2として出力する。
Based on the determination result signal r2 transmitted from the
論理反転部215,216から出力されたデータDo2及びエラー訂正コードDp2は、メモリセルアレイ211に書き込まれる。
The data Do2 and error correction code Dp2 output from the
例えば、反転判定部223は、データDi2を構成するnビットのそれぞれの値と、データDt2を構成するnビットのそれぞれの値と、を比較して、異なる論理値を示すビットの数が同じ論理値を示すビットの数よりも多い場合、Hレベルの判定結果信号r2を出力し、それ以外では、Lレベルの判定結果信号r2を出力する。Hレベルの判定結果信号r2が出力された場合、論理反転部225は、データDi2を反転させてデータDt2として出力し、論理反転部215は、データDt2を再度反転させてデータDo2として出力する(データDi2を復元する)。一方、Lレベルの判定結果信号r2が出力された場合、論理反転部225は、データDi2をそのままデータDt2として出力し、論理反転部215は、データDt2をそのままデータDo2として出力する。それにより、書き込みデータの遷移に伴う、データDt2を構成するnビットのそれぞれの値の変化、を常に半分以下に抑えることができるため、消費電力を低減することができる。なお、バスRBUSは1ビットであるため、データバスDBUSのビット幅が大きくなるほど、バスRBUSの消費電力の影響は無視できるほどに小さくなる。
For example, the inversion determination unit 223 compares each value of n bits constituting the data Di2 with each value of n bits constituting the data Dt2, and the number of bits indicating different logic values is the same. When there are more than the number of bits indicating the value, an H level determination result signal r2 is output, and otherwise, an L level determination result signal r2 is output. When the H-level determination result signal r2 is output, the
ここで、反転判定部223は、ECC符号化部222(及びラッチ部224)にて処理される前のデータDi2を用いて、論理反転部225にてデータDi2を反転させるか否かを判定している。つまり、反転判定部223は、ECC符号化部222(及びラッチ部224)による処理結果を待たずに、ECC符号化部222(及びラッチ部224)とともに並列に処理を実行している。それにより、ECC符号化部222(及びラッチ部224)による処理結果を待って反転判定部223にて処理が実行される場合と比較して、処理性能を低下させることなく消費電力を低減することができる。
Here, the inversion determination unit 223 determines whether to invert the data Di2 by the
なお、反転判定部223は、ECC符号化部222にて生成されるエラー訂正コードDp2を反転させるか否かの判定を行わないが、一般的にはn>mであるため、データセット(書き込みデータ+エラー訂正コード)の反転判定における誤差は小さい。また、データDi2のビット数nが増加すると、エラー訂正コードDp2のビット数mの比率m/nは小さくなる。そのため、データDi2のビット数nが大きくなるほどデータセットの反転判定における誤差は小さくなる。つまり、より効率的に消費電力を削減することが可能になる。さらに、反転判定部223は、エラー訂正コードDp2を反転させるか否かの判定を行わず、データDi2を反転させるか否かの判定のみを行っているため、それぞれについて判定を行う場合よりも、判定処理速度を向上させることができる。
Note that the inversion determination unit 223 does not determine whether or not to invert the error correction code Dp2 generated by the
このように、半導体装置20は、データバスDBUSに伝達するデータを反転させるか否かを判定する処理を、ECC符号化部222(及びラッチ部224)にて処理される前のデータを用いて行っている。それにより、ECC符号化部222(及びラッチ部224)による処理と、データバスに伝達するデータを反転させるか否かを判定する処理と、を並列に実行することが可能になるため、処理性能(処理速度)を低下させることなく消費電力を低減することができる。
Thus, the
また、大負荷のデータバスDBUSに伝達するデータの遷移を少なくすることにより、充放電のピーク電流を削減することができるため、電源ノイズを低減することも可能である。 Further, by reducing the transition of data transmitted to the heavily loaded data bus DBUS, the peak current of charging / discharging can be reduced, so that power supply noise can be reduced.
図3では、エラー訂正コードの伝搬経路上に論理反転部216,226が設けられた場合について説明したが、これに限られない。エラー訂正コードは反転判定部323による反転判定の対象外であるため、論理反転部216,226は設けられていなくてもよい。
Although FIG. 3 illustrates the case where the
図4は、半導体装置20が適用されたLSIシステム2を示すブロック図である。
FIG. 4 is a block diagram showing an LSI system 2 to which the
図4に示すように、LSIシステム2は、複数のメモリ部21と、ロジック部22と、複数のメモリ部21とロジック部22との間を接続するバスDBUS,RBUSと、を備える。つまり、LSIシステム2は、半導体装置20のうちメモリ部21を複数備えたものと等価である。
As illustrated in FIG. 4, the LSI system 2 includes a plurality of
ここで、複数のメモリ部21は、大規模メモリを複数に分割して形成されたものである。複数のメモリ部21のうちデータ書き込み対象のメモリ部21のみを活性化して、残りを非活性化しておくことができるため、メモリ全体の消費電力を低減することができる。
Here, the plurality of
しかしながら、大規模メモリを複数に分割した結果、複数のメモリ部21とロジック部22とを接続するデータバスDBUSが長くなり負荷容量が大きくなってしまう。そのため、データビット数が増加すると、データバスで消費される電力の割合はますます高くなる。
However, as a result of dividing the large-scale memory into a plurality of parts, the data bus DBUS connecting the plurality of
そこで、LSIシステム2は、半導体装置20の仕組みを適用することで、処理性能を低下させることなく消費電力を低減している。
Therefore, the LSI system 2 uses the mechanism of the
なお、ECC符号化部222は、ロジック部22内に1つ設置すれば良く、複数のメモリ部21のそれぞれに搭載される必要はない。そのため、回路規模の増大が抑制される。
Note that one
続いて、半導体装置10,20の適用事例について説明する。
Next, application examples of the
例えば、CPUのキャッシュメモリでは、データを読み出す動作の比率が高いので、データの読み出し動作に関連する構成に対して半導体装置10の仕組みを適用する。それにより、データの読み出し動作において、処理性能を低下させることなく消費電力を低減することができる。一方、データの書き込み動作に関連する構成については、ECC符号化部をロジック部ではなくメモリ部に設ける。それにより、データ書き込み時にエラー訂正コードが伝搬するバスPBUSを省略することが可能となる。
For example, since the cache memory of the CPU has a high rate of data reading operation, the mechanism of the
また、例えば、画像バッファでは、データの読み出し及び書き込みの動作比率はほぼ等しい。しかしながら、一般的にメモリには、データの書き込みによる消費電力が、データの読み出しによる消費電力よりも大きい傾向がある。そこで、画像バッファでは、データの書き込み動作に関連する構成に対して半導体装置20の仕組みを適用する。それにより、データの書き込み動作において、処理性能を低下させることなく消費電力を低減することができる。一方、データの読み出しに関連する構成については、ECC復号化部をメモリ部ではなくロジック部に設ける。それにより、メモリ部の回路面積を小さくしてコストを削減することができる。
Further, for example, in the image buffer, the data read and write operation ratios are substantially equal. However, in general, a memory has a tendency that power consumption due to data writing is larger than power consumption due to data reading. Therefore, in the image buffer, the mechanism of the
このとき、回路面積やバス本数の削減効果はチップの設計条件によって異なるが、メモリ仕様やアプリケーション環境に合わせて高速性能化、パワー削減及びコスト削減を実現することが可能となる。 At this time, although the effect of reducing the circuit area and the number of buses varies depending on the chip design conditions, it is possible to realize high-speed performance, power reduction, and cost reduction according to the memory specifications and application environment.
なお、DRAMの場合、定期的にリフレッシュが必要になるので、ECC復号化部及びECC符号化部の搭載は、信頼性の向上とともにセルデータの保持時間を長くする(ホールド特性を改善する)効果を持つ。これは、リフレッシュ頻度を削減するので、スタンバイ電流の削減につながる。ここで、DRAMは、メモリセル面積が小さいので、大規模メモリ構成を実現する場合に頻繁に使用される。そのため、DRAMでは、メモリの大規模化に伴う速度遅れ、リフレッシュ電流増加、データの書き込み及び読み出し時のアクティブ電流増加の問題が生じやすく、半導体装置10,20の仕組みの適用は特に有効である。
In the case of DRAM, since refreshing is required periodically, the mounting of the ECC decoding unit and the ECC encoding unit has the effect of improving the reliability and extending the retention time of the cell data (improving the hold characteristics). have. This reduces the refresh frequency, leading to a reduction in standby current. Here, since the DRAM has a small memory cell area, the DRAM is frequently used when realizing a large-scale memory configuration. Therefore, in the DRAM, problems such as a delay in speed due to an increase in memory size, an increase in refresh current, and an increase in active current during data writing and reading are likely to occur, and the application of the mechanism of the
<実施の形態3>
図5は、実施の形態3に係る半導体装置30を示すブロック図である。半導体装置30は、半導体装置10,20のそれぞれの仕組みを備えている。
<Embodiment 3>
FIG. 5 is a block diagram showing a
図5に示すように、半導体装置30は、メモリ部31と、ロジック部32と、メモリ部31及びロジック部32間を接続するバスDBUS,PBUS,RBUSと、を備える。メモリ部31及びロジック部32は、メモリ部11及びロジック部12に対応する。バスDBUS,PBUS,RBUSは、何れも、データの読み出し及び書き込みのそれぞれで共用される双方向バスである。
As illustrated in FIG. 5, the
メモリ部31は、メモリセルアレイ311と、ECC復号化部312と、反転判定部313と、論理反転部314,315と、を備える。メモリセルアレイ311、ECC復号化部312、反転判定部313及び論理反転部314,315は、それぞれメモリセルアレイ111、ECC復号化部112、反転判定部113及び論理反転部114,215に対応する。
The
具体的には、メモリ部31は、メモリ部11と比較して、データバスDBUSを介して供給される書き込みデータをメモリセルアレイ311に伝達する信号経路と、当該信号経路上に設けられた論理反転部315と、データバスPBUSを介して供給されるエラー訂正コードをメモリセルアレイ311に伝達する信号経路と、をさらに備える。メモリ部31のその他の構成については、メモリ部11と同様であるため、その説明を省略する。
Specifically, compared with the
ロジック部32は、ロジック回路321と、ECC符号化部322と、ラッチ部326と、反転判定部323と、論理反転部324,325と、を備える。ロジック回路321、ECC符号化部322、ラッチ部326、反転判定部323及び論理反転部324,325は、それぞれロジック回路221、ECC符号化部222、ラッチ部224、反転判定部223及び論理反転部124,225に対応する。
The
具体的には、ロジック部32は、ロジック部22と比較して、データバスDBUSを介して供給される読み出しデータをロジック回路321に伝達する信号経路と、当該信号経路上に設けられた論理反転部324と、をさらに備える。ロジック部32のその他の構成については、ロジック部22と同様であるため、その説明を省略する。
Specifically, as compared with the
半導体装置30は、半導体装置10,20のそれぞれと同等の効果を奏することができる。さらに、半導体装置30では、データバスがデータの読み出し及び書き込みのそれぞれで共用されている。そのため、バス本数を削減することが可能である。
The
<実施の形態4>
図6は、実施の形態4に係る半導体装置40を示すブロック図である。半導体装置40は、半導体装置10,20等を上位概念化した図である。
<Embodiment 4>
FIG. 6 is a block diagram showing a
図6に示すように、半導体装置40は、送信部41と、受信部42と、送信部41及び受信部42間を接続するバスDBUS,RBUSと、を備える。送信部41は、処理回路(データ処理部)411と、論理反転部(第1論理反転部)414と、反転判定部413と、を備える。受信部42は、論理反転部(第2論理反転部)424を備える。例えば、処理回路412、反転判定部413及び論理反転部414,424は、それぞれ、図1におけるECC復号化部112、反転判定部113及び論理反転部114,124である。
As illustrated in FIG. 6, the
処理回路412は、入力データセットDiに対して処理を施しデータDaを出力する。論理反転部414は、判定結果信号rに基づいてデータDa又はその反転データをデータDtとしてデータバスDBUSに出力する。論理反転部424は、判定結果信号rに基づいてデータバスDBUSを介して伝達されたデータDt又はその反転データをデータDoとして出力する。
The
反転判定部413は、処理回路412により処理される前のデータDij(データDiの一部又は全部)と、論理反転部414から出力され、データバスDBUSを伝搬する1サイクル前のデータDtj(データDtの一部又は全部)と、を比較して、その比較結果に応じた判定結果信号rを出力する。
The
例えば、反転判定部413は、データDijを構成するnビットのそれぞれの値と、データDtjを構成するnビットのそれぞれの値と、を比較して、異なる論理値を示すビットの数が同じ論理値を示すビットの数よりも多い場合、Hレベルの判定結果信号rを出力し、それ以外では、Lレベルの判定結果信号rを出力する。Hレベルの判定結果信号rが出力された場合、論理反転部414は、データDaを反転させてデータDtとして出力し、論理反転部424は、データDtを再度反転させてデータDoとして出力する(データDaを復元する)。一方、Lレベルの判定結果信号rが出力された場合、論理反転部414は、データDiをそのままデータDtとして出力し、論理反転部424は、データDtをそのままデータDoとして出力する。それにより、送信するデータの遷移に伴う、データDtを構成するnビットのそれぞれの値の変化、を常に半分以下に抑えることができるため、消費電力を低減することができる。なお、バスRBUSは1ビットであるため、データバスDBUSのビット幅が大きくなるほど、バスRBUSの消費電力は無視できるほどに小さくなる。
For example, the
ここで、反転判定部413は、処理回路412にて処理される前のデータDijを用いて、論理反転部414にてデータDaを反転させるか否かを判定している。つまり、反転判定部43は、処理回路412による処理結果を待たずに、処理回路412とともに並列に処理を実行している。それにより、処理回路412による処理結果を待って反転判定部413にて処理が実行される場合と比較して、処理性能を低下させることなく消費電力を低減することができる。
Here, the
なお、処理回路412にて処理される前のデータDiには、処理された後のデータDaと完全に一致しない可能性があるが、その頻度及びビット数が少なければ、データDaを反転させるか否かの判定に与える影響は少ない。
Note that the data Di before being processed by the
図7は、データビット数と、処理回路412の処理前後のデータ間で一致するビット数の割合と、を各々設定した場合における、パワー削減効果を示す図である。例えば、処理回路412の処理前後のデータの誤差が小さいほど、処理回路412の処理前後のデータ間で一致するビット数の割合は大きくなる。一方、処理回路412の処理前後のデータの誤差が大きいほど、処理回路412の処理前後のデータ間で一致するビット数の割合は小さくなる。なお、本例では、論理反転処理が全く行われない場合におけるデータバスの消費電力を100%として、各条件でのデータバスの消費電力の割合(%)、が示されている。
FIG. 7 is a diagram illustrating the power reduction effect when the number of data bits and the ratio of the number of bits that match between the data before and after the processing of the
図7に示すように、データビット数が多くなるほど、データバスの消費電力は低減している(パワー削減効果は向上している)。また、処理回路412の処理前後のデータ間で一致するビット数の割合が大きい(即ち、処理回路412の処理前後のデータの誤差が小さい)ほど、データバスの消費電力は低減している。 As shown in FIG. 7, the power consumption of the data bus is reduced as the number of data bits is increased (the power reduction effect is improved). Further, the larger the ratio of the number of matching bits between the data before and after the processing of the processing circuit 412 (that is, the smaller the error of the data before and after the processing of the processing circuit 412), the lower the power consumption of the data bus.
例えば、反転判定部413にて消費される電力が10〜15%程度であると仮定すると、データバスDBUSの消費電力は85%以下であることが好ましい。また、データビット数は8ビット以上が現実的である。これらを考慮すると、処理回路412の処理前後のデータ間で一致するビット数の割合が50%以上でパワー削減効果を得られることがわかる。具体的には、ECC復号化部112の処理前後のデータの誤差が50%以下でパワー削減効果を得られることがわかる。
For example, assuming that the power consumed by the
このように、半導体装置40は、処理回路412の処理結果を待たずに、処理回路412にて処理される前のデータを用いて、反転判定部413による反転判定処理を行っている。それにより、処理回路412による処理と、反転判定部413による処理と、を並列に実行することが可能になるため、処理性能(処理速度)を低下させることなく消費電力を低減することができる。
As described above, the
半導体装置40をより具体的に示したものが半導体装置10,20であるが、それ以外の具体的な構成例についても以降の実施形態で説明する。
Although the
<実施の形態5>
図8は、実施の形態5に係る半導体装置50を示すブロック図である。半導体装置50は、半導体装置40の具体的構成の一つを示したものである。
<Embodiment 5>
FIG. 8 is a block diagram showing a
図8に示すように、半導体装置50は、バースト処理部51と、ロジック部52と、バースト処理部51及びロジック部52間を接続するバスDBUS,RBUSと、を備える。
As illustrated in FIG. 8, the
バースト処理部51は、パラレルシリアル変換部(以下、パラシリ変換部と称す)512と、反転判定部513と、論理反転部514と、を備える。
The
パラシリ変換部512は、n×8ビットのパラレルデータDi5を、nビットのシリアルデータDa5に変換する。パラレルデータDi5は、nビットのバーストデータDi50〜Di57により構成される。シリアルデータDa5は、nビットのバーストデータDa50〜Da57がシリアル形式に連なって構成される。
The parallel-
論理反転部514は、反転判定部513からの判定結果信号r5に基づいてシリアルデータDa5又はその反転データをデータDt5としてデータバスDBUSに出力する。
The
反転判定部513は、パラシリ変換部512により処理される前のパラレルデータDi5の一部(例えば、バーストデータDi50)と、論理反転部514から出力され、データバスDBUSを伝搬するバーストデータ(例えば、ひとつ前のシリアルデータDt5の最後のバーストデータDt57)と、を比較して、その比較結果に応じた判定結果信号r5を出力する。なお、判定結果信号r5は、論理値0又は1を示す1ビット幅の信号である。また、判定結果信号r5は、バーストデータDa50〜Da57に対応する判定結果信号r50〜r57がシリアル形式に連なって構成される。
The
ロジック部52は、論理反転部524を備える。論理反転部524は、バースト処理部51からデータバスRBUSを介して伝達された判定結果信号r5に基づいて、バースト処理部51からデータバスDBUSを介して伝達されたデータDt5又はその反転データをデータDo5として出力する。
The
図9は、半導体装置50の動作を示すタイミングチャートである。
図9に示すように、パラシリ変換部512は、パラレルデータDi5が入力されると、当該パラレルデータDi5をシリアルデータDa5に変換する処理を行う。また、反転判定部513は、パラシリ変換部512とともに並列に処理を実行する。
FIG. 9 is a timing chart showing the operation of the
As shown in FIG. 9, when the parallel data Di5 is input, the parallel-
具体的には、反転判定部513は、パラシリ変換部512により処理される前のパラレルデータDi5のうちバーストデータDi50と、データバスDBUSを伝搬する1サイクル前のバーストデータDa57と、を比較する。そして、その比較結果に応じた判定結果信号r50を出力する。
Specifically, the
論理反転部514は、判定結果信号r50に基づいて、パラシリ変換部512から出力されているバーストデータDa50又はその反転データを、データDt50としてデータバスDBUSに出力する。
Based on the determination result signal r50, the
パラシリ変換部512がバーストデータDa50を出力している間、反転判定部513は、パラレルデータDi5のうちバーストデータDi51と、データバスDBUSを伝搬する1サイクル前のバーストデータDt50と、を比較する。そして、その比較結果に応じた判定結果信号r51を出力する。
While the parallel-
パラシリ変換部512が次のバーストデータDa51を出力し始めると、論理反転部514は、判定結果信号r51に基づいて、パラシリ変換部512から出力されているバーストデータDa51又はその反転データを、データDt51としてデータバスDBUSに出力する。
When the parallel-
パラシリ変換部512がバーストデータDa51を出力している間、反転判定部513は、パラレルデータDi5のうちバーストデータDi52と、データバスDBUSを伝搬する1サイクル前のバーストデータDt51と、を比較する。そして、その比較結果に応じた判定結果信号r52を出力する。
While the parallel-
パラシリ変換部512が次のバーストデータDa52を出力し始めると、論理反転部514は、判定結果信号r52に基づいて、パラシリ変換部512から出力されているバーストデータDa52又はその反転データを、データDt52としてデータバスDBUSに出力する。このような反転判定の処理が各バーストデータについて行われる。
When the parallel-
ここで、反転判定部513は、パラシリ変換部512にて処理される前のパラレルデータDi5を用いて、論理反転部514にてシリアルデータDa5を反転させるか否かを判定している。つまり、反転判定部513は、パラシリ変換部512による処理結果を待たずに、パラシリ変換部512とともに並列に処理を実行している。それにより、パラシリ変換部512による処理結果を待って反転判定部513にて処理が実行される場合と比較して、処理性能を低下させることなく消費電力を低減することができる。
Here, the
なお、図10に示すように、反転判定部513によるバーストデータDa50の反転判定の処理が、パラシリ変換部512による変換処理の完了に間に合わない場合がある。その場合には、バーストデータDa50の反転判定は省略される。この場合、本例では1/8の反転判定の誤差が生じるが、バーストデータの数が多くなるほど反転判定の誤差は小さくなる。
As illustrated in FIG. 10, the inversion determination process of the burst data Da50 by the
このように、半導体装置50は、パラシリ変換部512の処理結果を待たずに、パラシリ変換部512にて処理される前のデータを用いて、反転判定部513による反転判定処理を行っている。それにより、パラシリ変換部512による変換処理と、反転判定部513による処理と、を並列に実行することが可能になるため、処理性能(処理速度)低下させることなく消費電力を低減することができる。
As described above, the
<実施の形態6>
図11は、実施の形態6に係る半導体装置60を示すブロック図である。半導体装置60は、半導体装置40の具体的構成の一つを示したものである。
<Embodiment 6>
FIG. 11 is a block diagram showing a
図11に示すように、半導体装置60は、バースト処理部61と、ロジック部62と、バースト処理部61及びロジック部62間を接続するバスDBUS,RBUSと、を備える。なお、データバスDBUSは、8本のnビットのデータバスDBUS0〜DBUS7により構成される。データバスRBUSは、8本の1ビットのデータバスRBUS0〜RBUS7により構成される。
As illustrated in FIG. 11, the
バースト処理部61は、シリアルパラレル変換部(以下、シリパラ変換部と称す)612と、反転判定部613と、8個の論理反転回路6140〜6147からなる論理反転部614と、を備える。
The
シリパラ変換部612は、nビットのシリアルデータDi6を、n×8ビットのパラレルデータDa6に変換する。シリアルデータDi6は、nビットのバーストデータDi60〜Di67がシリアル形式に連なって構成される。パラレルデータDa6は、nビットのデータDa60〜Da67により構成される。
The serial-
論理反転部614は、反転判定部613からの判定結果信号r6に基づいて、パラレルデータDa6又はその反転データを、データDt6としてデータバスDBUSに出力する。より具体的には、論理反転回路6140〜6147は、それぞれ、判定結果信号r60〜r67に基づいて、データDa60〜Da67又はそれらの反転データを、データDt60〜Dt67としてデータバスDBUS0〜DBUS7に出力する。
Based on the determination result signal r6 from the
反転判定部613は、シリパラ変換部612により処理される前のシリアルデータDi6の一部(例えば、バーストデータDi60)と、論理反転部614から出力され、データバスDBUSを伝搬するパラレルデータの一部(例えば、ひとつ前のパラレルデータDt6の一部であるバーストデータDt60)と、を比較して、その比較結果に応じた判定結果信号r6を出力する。なお、判定結果信号r6は、1ビットの判定結果信号r60〜r67により構成される。
The
ロジック部62は、8個の論理反転回路6240〜6247からなる論理反転部624を備える。論理反転部624は、バースト処理部61からデータバスRBUSを介して伝達された判定結果信号r6に基づいて、バースト処理部61からデータバスDBUSを介して伝達されたパラレルデータDt6又はその反転データをパラレルデータDo6として出力する。
The
図12は、半導体装置60の動作を示すタイミングチャートである。
図12に示すように、シリパラ変換部612は、シリアルデータDi6を構成するバーストデータDi60〜Di67が全て入力されると、当該シリアルデータDi6をパラレルデータDa6に変換する処理を行う。また、反転判定部613は、シリパラ変換部612とともに並列に処理を実行する。
FIG. 12 is a timing chart showing the operation of the
As shown in FIG. 12, when all the burst data Di60 to Di67 constituting the serial data Di6 are input, the serial-
具体的には、反転判定部613は、シリパラ変換部612により処理される前のシリアルデータDi6のうちバーストデータDi60と、データバスDBUS0を伝搬するバーストデータDt60と、を比較する。そして、その比較結果に応じた判定結果信号r60を出力する。
Specifically, the
同様にして、反転判定部613は、シリパラ変換部612により処理される前のシリアルデータDi6のうちバーストデータDi61〜Di67と、データバスDBUS1〜DBUS7を伝搬するバーストデータDt61〜Dt67と、をそれぞれ比較する。そして、それらの比較結果に応じた判定結果信号r61〜r67を出力する。
Similarly, the
論理反転部614を構成する論理反転回路6140〜6147は、それぞれ、判定結果信号r60〜r67に基づいて、シリパラ変換部612から出力されているバーストデータDa60〜Da67又はそれらの反転データを、バーストデータDt60〜Dt67(即ち、パラレルデータDt6)としてデータバスDBUS0〜DBUS7に出力する。
The
ここで、反転判定部613は、シリパラ変換部612にて処理される前のシリアルデータDi6を用いて、論理反転部614にてパラレルデータDa6を反転させるか否かを判定している。つまり、反転判定部613は、シリパラ変換部612による処理結果を待たずに、シリパラ変換部612とともに並列に処理を実行している。それにより、シリパラ変換部612による処理結果を待って反転判定部613にて処理が実行される場合と比較して、処理性能を低下させることなく消費電力を低減することができる。
Here, the
なお、図13に示すように、反転判定部613は、バーストデータDi60〜Di67が一つ入力される毎に、バーストデータDa60〜Da67の対応する一つの反転判定の処理を実行することが可能である。しかしながら、反転判定部613による最後のバーストデータDa67の反転判定の処理が、シリパラ変換部612による変換処理の完了に間に合わない場合がある。その場合には、バーストデータDa67の反転判定は省略される。この場合、本例では1/8の反転判定の誤差が生じるが、バーストデータの数が多くなるほど反転判定の誤差は小さくなる。
As shown in FIG. 13, the
このように、半導体装置60は、シリパラ変換部612の処理結果を待たずに、シリパラ変換部612にて処理される前のデータを用いて、反転判定部613による反転判定処理を行っている。それにより、シリパラ変換部612による変換処理と、反転判定部613による処理と、を並列に実行することが可能になるため、処理性能(処理速度)を低下させることなく消費電力を低減することができる。
As described above, the
<実施の形態7>
図14は、実施の形態7に係る半導体装置70を示すブロック図である。半導体装置70は、半導体装置40の具体的構成の一つを示したものである。
<Embodiment 7>
FIG. 14 is a block diagram showing a
図14に示すように、半導体装置70は、メモリ部71と、ロジック部72と、メモリ部71及びロジック部72間を接続するバスDBUS,FBUS,RBUSと、を備える。なお、データバスFBUSは、反転フラグ信号が伝搬する1ビット幅のバスである。
As illustrated in FIG. 14, the
ロジック部72は、ロジック回路721と、記憶データ判定部722と、反転判定部723と、論理反転部725,726と、を備える。ロジック回路721、反転判定部723及び論理反転部725,726は、それぞれ、ロジック回路221、反転判定部223及び論理反転部225,226に対応する。
The
ロジック回路721は、メモリ部71に書き込むデータDi7を出力する。記憶データ判定部722は、データDi7を反転してメモリ部71に書き込むか否かを判定し、その判定結果に基づき反転フラグ信号Df7及び書き込みデータDi7を同期出力する。論理反転部725は、判定結果信号r7に基づいてデータDi7又はその反転データをデータDt7としてデータバスDBUSに出力する。論理反転部726は、判定結果信号r7に基づいて反転フラグ信号Df7又はその反転データを反転フラグ信号Dft7としてデータバスFBUSに出力する。
The
例えば、記憶データ判定部722は、メモリ部71に書き込むためのデータDi7を構成する複数ビットのうち、論理値1を示すビットの数が論理値0を示すビットの数より多い場合、反転フラグ信号をHレベルにし(立ち上げ)、それ以外では、反転フラグ信号をLレベルにする。
For example, when the number of bits indicating a logical value 1 is larger than the number of bits indicating a
反転判定部723は、記憶データ判定部722にて処理される前のデータDi7と、論理反転部725から出力され、データバスDBUSを伝搬する1サイクル前のデータDt7と、を比較して、その比較結果に応じた判定結果信号r7を出力する。
The inversion determination unit 723 compares the data Di7 before being processed by the stored
メモリ部71は、メモリセルアレイ711と、論理反転部715〜717と、を備える。メモリセルアレイ711及び論理反転部715,716は、それぞれ、メモリセルアレイ211及び論理反転部215,216に対応する。以下では、メモリセルアレイ711に記憶されるデータのうち、論理値1を示すデータの方が、論理値0を示すデータよりも、データ保持に必要な消費電流が大きい、又は、データ保持性能が低い場合について説明する。
The
論理反転部715は、ロジック部72からバスRBUSを介して伝達された判定結果信号r7に基づいて、ロジック部72からデータバスDBUSを介して伝達されたデータDt7又はその反転データをデータDo7として出力する。
The
論理反転部716は、ロジック部72からバスRBUSを介して伝達された判定結果信号r7に基づいて、ロジック部72からデータバスFBUSを介して伝達された反転フラグ信号Dft7又はその反転データを反転フラグ信号Df7として出力する。
Based on the determination result signal r7 transmitted from the
そして、論理反転部717は、この反転フラグ信号Df7に基づいてデータDo7又はその反転データを出力する。論理反転部716,718からそれぞれ出力された反転フラグ信号Df7及びデータDo7は、メモリセルアレイ711に書き込まれる。
The
それにより、メモリセルアレイ711に書き込まれるデータDo7を構成する複数ビットのうち、論理値1を示すビットの数を半分以下に抑えることができる。それにより、消費電流を低減するとともに、データ保持性能を向上させることができる。 Thereby, the number of bits indicating the logical value 1 among a plurality of bits constituting the data Do7 written to the memory cell array 711 can be suppressed to half or less. Thereby, current consumption can be reduced and data retention performance can be improved.
ここで、反転判定部723は、記憶データ判定部722にて処理される前のデータDi7を用いて、論理反転部725にてデータDi7を反転させるか否かを判定している。つまり、反転判定部723は、記憶データ判定部722による処理結果を待たずに、記憶データ判定部722とともに並列に処理を実行している。それにより、記憶データ判定部722による処理結果を待って反転判定部723にて処理が実行される場合と比較して、処理性能を低下させることなく消費電力を低減することができる。
Here, the inversion determination unit 723 uses the data Di7 before being processed by the stored
本実施の形態では、メモリセルアレイ711に記憶されるデータのうち、論理値1を示すデータの方が、論理値0を示すデータよりも、データ保持に必要な消費電流が大きい、又は、データ保持性能自体が低い場合について説明したが、これに限られない。メモリセルアレイ711に記憶されるデータのうち、論理値0を示すデータの方が、論理値1を示すデータよりも、データ保持に必要な消費電流が大きい、又は、データ保持性能自体が低い場合も考えられる。いずれにしても、メモリセルアレイ711に記憶されるデータのうち、データ保持に必要な消費電流が大きい、又は、データ保持性能が低い論理値を示すデータのビット数が半分以下となるように反転処理を施せばよい。
In this embodiment, among the data stored in the memory cell array 711, the data indicating the logical value 1 requires a larger current consumption than the data indicating the
<実施の形態8>
図15は、実施の形態8に係る半導体装置80を示すブロック図である。半導体装置80は、半導体装置40の具体的構成の一つを示したものである。
<Eighth embodiment>
FIG. 15 is a block diagram showing a
図15に示すように、半導体装置80は、ノイズ処理部81と、ロジック部82と、ノイズ処理部81及びロジック部82間を接続するバスDBUS,RBUSと、を備える。ノイズ処理部81及びロジック部82は、それぞれ送信部41及び受信部42に対応する。
As illustrated in FIG. 15, the
ノイズ処理部81は、ノイズフィルタ812と、反転判定部813と、論理反転部814と、を備える。ロジック部82は、論理反転部824を備える。ノイズフィルタ812、反転判定部813、論理反転部814及び論理反転部814は、それぞれ処理回路412、反転判定部413、論理反転部414及び論理反転部424に対応する。
The
つまり、半導体装置80は、半導体装置40のうち処理回路412をノイズフィルタ811に置き換えたものである。半導体装置80のその他の構成については、半導体装置40と同様であるため、その説明を省略する。
That is, the
ここで、反転判定部813は、ノイズフィルタ812にて処理される前のデータDi8を用いて、論理反転部814にてデータDa8を反転させるか否かを判定している。つまり、反転判定部813は、ノイズフィルタ812による処理結果を待たずに、ノイズフィルタ812とともに並列に処理を実行している。それにより、ノイズフィルタ812にて処理される前のデータDi8を用いた反転判定の誤差が小さければ、ノイズフィルタ812による処理結果を待って反転判定部813にて処理が実行される場合と比較して、処理性能を低下させることなく消費電力を低減することができる。
Here, the
<実施の形態9>
図16は、実施の形態9に係る半導体装置90を示すブロック図である。半導体装置90は、半導体装置40の具体的構成の一つを示したものである。
<Embodiment 9>
FIG. 16 is a block diagram showing a
図16に示すように、半導体装置90は、仕様変換部91と、ロジック部92と、仕様変換部91及びロジック部92間を接続するバスDBUS,RBUSと、を備える。仕様変換部91及びロジック部92は、それぞれ送信部41及び受信部42に対応する。
As illustrated in FIG. 16, the
仕様変換部91は、ロジック信号の仕様を変換して出力する部である。本例では、データの電圧振幅を変換して出力する場合を例に説明するが、これに限られず、長配線伝送系における終端処理方法の変更、差動信号化、多値論理信号化等の仕様変更が行われてもよい。
The
仕様変換部91は、データDi9の電圧振幅を変更してデータDa9として出力するレベルシフタ912と、反転判定部813と、論理反転部914と、論理反転部914の出力をレベルシフタ912による変換前の電圧振幅に戻すレベルシフタ915と、を備える。レベルシフタ912、反転判定部913及び論理反転部914は、それぞれ処理回路412、反転判定部413及び論理反転部414に対応する。
The
反転判定部913は、レベルシフタ912にて処理される前のデータDi9と、論理反転部914から出力され、データバスDBUSを伝搬する1サイクル前のデータDt9をレベルシフタ915にて変換前の電圧振幅に戻したものと、を比較して、その比較結果に応じた判定結果信号r9を出力する。
The
つまり、半導体装置90は、半導体装置40のうち処理回路412をレベルシフタ912に置き換え、かつ、論理反転部914の出力を変換前の電圧振幅に戻すレベルシフタ915を追加したものである。半導体装置90のその他の構成については、半導体装置40と同様であるため、その説明を省略する。
That is, the
ここで、反転判定部913は、レベルシフタ912にて処理される前のデータDi9を用いて、論理反転部914にてデータデータDa9を反転させるか否かを判定している。つまり、反転判定部913は、レベルシフタ912による処理結果を待たずに、レベルシフタ912とともに並列に処理を実行している。それにより、レベルシフタ912による処理結果を待って反転判定部913にて処理が実行される場合と比較して、処理性能を低下させることなく消費電力を低減することができる。
Here, the
なお、上記したように、反転判定部913に入力されるデータDt9は、レベルシフタ915を用いて変換前の電圧振幅に戻される必要があるが、レベルシフタ915の処理は前サイクルに連動したデータ処理なので遅延を生むことはない。
As described above, the data Dt9 input to the
以上のように、上記実施の形態1〜9に半導体装置は、ECC複合化部などの処理回路の処理結果を待たずに、処理回路にて処理される前のデータを用いて、データバスに伝達するデータを反転させるか否かを判定する処理を行っている。それにより、処理回路による処理と、データバスに伝達するデータを反転させるか否かを判定する処理と、を並列に実行することが可能になるため、処理性能(処理速度)を低下させることなく消費電力を低減することができる。 As described above, in the first to ninth embodiments, the semiconductor device uses the data before being processed by the processing circuit without waiting for the processing result of the processing circuit such as the ECC complex unit. A process for determining whether or not to reverse the data to be transmitted is performed. As a result, the processing by the processing circuit and the processing for determining whether to invert the data transmitted to the data bus can be executed in parallel without reducing the processing performance (processing speed). Power consumption can be reduced.
なお、メモリセルアレイを搭載した半導体チップと、ロジック機能を有するシステムLSIと、の間のデータバスに対しても、上記実施の形態に係る半導体装置の構成を適用することが可能である。この場合、データビット当たりの消費電流が大きいので、ビット当たりの電流削減効果は大きくなる。さらに、TSVなどの積層チップ間での接続技術部分に適応することも可能である。この場合、データビット幅が大きくできるので、電流削減効果はさらに大きくなる。このように、複数チップで構成されるモジュールもしくはシステム設計における電流削減にも展開応用する事が可能である。 The configuration of the semiconductor device according to the above embodiment can be applied to a data bus between a semiconductor chip on which a memory cell array is mounted and a system LSI having a logic function. In this case, since the current consumption per data bit is large, the current reduction effect per bit is increased. Furthermore, it is possible to adapt to a connection technology portion between laminated chips such as TSV. In this case, since the data bit width can be increased, the current reduction effect is further increased. As described above, the present invention can be applied to reduce current in a module or system design composed of a plurality of chips.
例えば、上記の実施の形態に係る半導体装置では、半導体基板、半導体層、拡散層(拡散領域)などの導電型(p型もしくはn型)を反転させた構成としてもよい。そのため、n型、及びp型の一方の導電型を第1の導電型とし、他方の導電型を第2の導電型とした場合、第1の導電型をp型、第2の導電型をn型とすることもできるし、反対に第1の導電型をn型、第2の導電型をp型とすることもできる。 For example, the semiconductor device according to the above embodiment may have a configuration in which conductivity types (p-type or n-type) such as a semiconductor substrate, a semiconductor layer, and a diffusion layer (diffusion region) are inverted. Therefore, when one of n-type and p-type conductivity is the first conductivity type and the other conductivity type is the second conductivity type, the first conductivity type is p-type and the second conductivity type is The first conductivity type may be n-type and the second conductivity type may be p-type.
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は既に述べた実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変更が可能であることはいうまでもない。 As mentioned above, the invention made by the present inventor has been specifically described based on the embodiments. However, the present invention is not limited to the embodiments already described, and various modifications can be made without departing from the scope of the invention. It goes without saying that it is possible.
1,2 LSIシステム
10,20,30,40,50,60,70,80,90 半導体装置
11,21,31,71 メモリ部
12,22,32,72 ロジック部
111,211,311,711 メモリセルアレイ
112,312 ECC復号化部
113,223,313,323 反転判定部
114,124 論理反転部
121,221,321 ロジック回路
215,216,225,226 論理反転部
222,322 ECC符号化部
224,326 ラッチ部
314,315,324,325 論理反転部
41 送信部
42 受信部
412 処理回路
413 反転判定部
414,424 論理反転部
51 バースト処理部
52 ロジック部
512 パラシリ変換部
513 反転判定部
514,524 論理反転部
61 バースト処理部
62 ロジック部
612 シリパラ変換部
613 反転判定部
614,624 論理反転部
6140〜6147,6240〜6247 論理反転回路
715〜717,725,726 論理反転部
721 ロジック回路
722 記憶データ判定部
723 反転判定部
81 ノイズ処理部
82 ロジック部
812 ノイズフィルタ
813 反転判定部
814,824 論理反転部
91 仕様変更部
92 ロジック部
912,915 レベルシフタ
913 反転判定部
914,924 論理反転部
DBUS,PBUS,RBUS データバス
DBUS0〜DBUS7 データバス
RBUS0〜RBUS7 データバス
1, 2 LSI system 10, 20, 30, 40, 50, 60, 70, 80, 90 Semiconductor device 11, 21, 31, 71 Memory unit 12, 22, 32, 72 Logic unit 111, 211, 311, 711 Memory Cell array 112, 312 ECC decoding unit 113, 223, 313, 323 Inversion determination unit 114, 124 Logic inversion unit 121, 221, 321 Logic circuit 215, 216, 225, 226 Logic inversion unit 222, 322 ECC encoding unit 224 326 Latch unit 314, 315, 324, 325 Logic inversion unit 41 Transmission unit 42 Reception unit 412 Processing circuit 413 Inversion determination unit 414, 424 Logic inversion unit 51 Burst processing unit 52 Logic unit 512 Parasiri conversion unit 513 Inversion determination unit 514, 524 Logic inversion unit 61 Burst processing unit 62 Logic unit 612 Serial conversion unit 613 Inversion determination unit 614, 624 Logic inversion unit 6140-6147, 6240-6247 Logic inversion circuit 715-717, 725, 726 Logic inversion unit 721 Logic circuit 722 Storage data determination unit 723 Inversion determination unit 81 Noise Processing unit 82 Logic unit 812 Noise filter 813 Inversion determination unit 814, 824 Logic inversion unit 91 Specification change unit 92 Logic unit 912, 915 Level shifter 913 Inversion determination unit 914, 924 Logic inversion unit DBUS, PBUS, RBUS Data bus DBUS0 to DBUS7 Data Bus RBUS0-RBUS7 Data bus
Claims (10)
データバスを介して前記第1の機能部と接続される第2の機能部と、を備え、
前記第1の機能部は、
入力データに対して処理を施し処理データを出力するデータ処理部と、
判定結果信号に基づいて、前記処理データ、及び、当該処理データを構成する複数のビットのそれぞれの値を論理反転した反転データ、のいずれかを選択し、出力データとして前記データバスに出力する第1論理反転部と、
前記データ処理部により処理される前の前記入力データと前記第1論理反転部から出力された前記出力データとを比較して、その比較結果に基づき前記判定結果信号を出力する反転判定部と、を有し、
前記第2の機能部は、
前記第1の機能部から供給された前記判定結果信号に基づいて、前記データバスを介して伝達された前記出力データ、及び、その反転データ、のいずれかを選択して出力する第2論理反転部を有する、モジュール。 A first functional unit;
A second functional unit connected to the first functional unit via a data bus,
The first functional unit includes:
A data processing unit that processes input data and outputs the processed data;
Based on the determination result signal, the processing data and inverted data obtained by logically inverting the values of the plurality of bits constituting the processing data are selected and output to the data bus as output data. 1 logic inversion part;
An inversion determination unit that compares the input data before being processed by the data processing unit with the output data output from the first logic inversion unit, and outputs the determination result signal based on the comparison result; Have
The second functional unit is
Second logic inversion for selecting and outputting either the output data transmitted via the data bus or its inverted data based on the determination result signal supplied from the first functional unit A module having a part.
メモリ部をさらに有し、
前記入力データは前記メモリ部から読み出されたデータである、
請求項1に記載のモジュール。 The first functional unit includes:
A memory unit;
The input data is data read from the memory unit,
The module according to claim 1.
データバスを介して前記送信部と接続される受信部と、を備え、
前記送信部は、
入力データに対して処理を施し処理データを出力するデータ処理部と、
判定結果信号に基づいて、前記処理データ、及び、当該処理データを構成する複数のビットのそれぞれの値を論理反転した反転データ、のいずれかを選択し、出力データとして前記データバスに出力する第1論理反転部と、
前記データ処理部により処理される前の前記入力データと前記第1論理反転部から出力された前記出力データとを比較して、その比較結果に基づき前記判定結果信号を出力する反転判定部と、を有し、
前記受信部は、
前記送信部から供給された前記判定結果信号に基づいて、前記データバスを介して伝達された前記出力データ、及び、その反転データ、のいずれかを選択して出力する第2論理反転部を有する、システム。 A transmission unit;
A receiving unit connected to the transmitting unit via a data bus,
The transmitter is
A data processing unit that processes input data and outputs the processed data;
Based on the determination result signal, the processing data and inverted data obtained by logically inverting the values of the plurality of bits constituting the processing data are selected and output to the data bus as output data. 1 logic inversion part;
An inversion determination unit that compares the input data before being processed by the data processing unit with the output data output from the first logic inversion unit, and outputs the determination result signal based on the comparison result; Have
The receiver is
A second logic inverting unit that selects and outputs either the output data transmitted through the data bus or its inverted data based on the determination result signal supplied from the transmitting unit; ,system.
請求項7に記載のシステム。 The transmission unit and the reception unit are mounted on different chips, respectively.
The system according to claim 7.
前記データバスを介して前記複数のメモリ部から出力された出力データを受けるロジック部と、を備え、
前記複数のメモリ部のそれぞれは、
メモリセルアレイと、
前記メモリセルアレイから読み出された読み出しデータに対して処理を施し処理データを出力するデータ処理部と、
判定結果信号に基づいて、前記処理データ、及び、当該処理データを構成する複数のビットのそれぞれの値を論理反転した反転データ、のいずれかを選択し、出力データとして前記データバスに出力する第1論理反転部と、
前記データ処理部により処理される前の前記読み出しデータと前記第1論理反転部から出力された前記出力データとを比較して、その比較結果に基づき前記判定結果信号を出力する反転判定部と、を有し
前記ロジック部は、
前記複数のメモリ部から供給された前記判定結果信号に基づいて、前記データバスを介して伝達された前記出力データ、及び、その反転データ、のいずれかを選択して出力する第2論理反転部、を有する、モジュール。 A plurality of memory units connected to the data bus;
A logic unit that receives output data output from the plurality of memory units via the data bus;
Each of the plurality of memory units is
A memory cell array;
A data processing unit for processing the read data read from the memory cell array and outputting the processed data;
Based on the determination result signal, the processing data and inverted data obtained by logically inverting the values of the plurality of bits constituting the processing data are selected and output to the data bus as output data. 1 logic inversion part;
An inversion determination unit that compares the read data before being processed by the data processing unit with the output data output from the first logic inversion unit, and outputs the determination result signal based on the comparison result; The logic unit has
A second logic inverting unit that selects and outputs either the output data transmitted through the data bus or its inverted data based on the determination result signal supplied from the plurality of memory units Having a module.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017161890A JP6431583B2 (en) | 2017-08-25 | 2017-08-25 | Module and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017161890A JP6431583B2 (en) | 2017-08-25 | 2017-08-25 | Module and system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014089398A Division JP6200370B2 (en) | 2014-04-23 | 2014-04-23 | Data bus driving circuit, semiconductor device and semiconductor memory device having the same |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018010663A JP2018010663A (en) | 2018-01-18 |
JP6431583B2 true JP6431583B2 (en) | 2018-11-28 |
Family
ID=60995553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017161890A Active JP6431583B2 (en) | 2017-08-25 | 2017-08-25 | Module and system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6431583B2 (en) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05334206A (en) * | 1992-05-29 | 1993-12-17 | Toshiba Corp | Interface controller |
JPH0720973A (en) * | 1993-07-01 | 1995-01-24 | Sony Corp | Bus driving circuit |
JPH096500A (en) * | 1995-06-16 | 1997-01-10 | Nec Corp | Interface circuit |
JP2005173860A (en) * | 2003-12-10 | 2005-06-30 | Sony Corp | Data storage device, method for processing stored data, and computer program |
US7616133B2 (en) * | 2008-01-16 | 2009-11-10 | Micron Technology, Inc. | Data bus inversion apparatus, systems, and methods |
KR20100053202A (en) * | 2008-11-12 | 2010-05-20 | 삼성전자주식회사 | Semiconductor memory device with read data bus inversion function and test method thereof |
US8947918B2 (en) * | 2013-03-22 | 2015-02-03 | Katsuyuki Fujita | Semiconductor memory device |
-
2017
- 2017-08-25 JP JP2017161890A patent/JP6431583B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018010663A (en) | 2018-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101875098B1 (en) | Reducing simultaneous switching outputs using data bus inversion signaling | |
US9166579B2 (en) | Methods and apparatuses for shifting data signals to match command signal delay | |
JP4936746B2 (en) | Semiconductor device | |
US20140019833A1 (en) | Memory system and method | |
JP6200370B2 (en) | Data bus driving circuit, semiconductor device and semiconductor memory device having the same | |
KR100805007B1 (en) | Pipe latch circuit for increasing date output speed, a semiconductor memory device with the pipe latch circuit and data output operation method of the same | |
US7983106B2 (en) | Voltage stabilization circuit and semiconductor memory apparatus using the same | |
US8806316B2 (en) | Circuits, integrated circuits, and methods for interleaved parity computation | |
US7613069B2 (en) | Address latch circuit of semiconductor memory device | |
US8566685B2 (en) | Command control circuit, integrated circuit having the same, and command control method | |
US9275700B2 (en) | Semiconductor device | |
US8331170B2 (en) | Data transfer circuit, method thereof, and memory device including data transfer circuit | |
US7116600B2 (en) | Memory device having terminals for transferring multiple types of data | |
JP2013073664A (en) | Semiconductor device | |
US9239755B2 (en) | Semiconductor device and semiconductor system including the same | |
JP6431583B2 (en) | Module and system | |
US7733737B2 (en) | Semiconductor memory device using bus inversion scheme | |
US7941573B2 (en) | Semiconductor memory device | |
US8520466B2 (en) | Internal command generation circuit | |
US7623408B2 (en) | Semiconductor memory device comprising data path controller and related method | |
TW202407550A (en) | Address signal transmission circuit, address signal transmission method and storage system | |
US7639768B1 (en) | Method for improving performance in a mobile device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20181016 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181102 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6431583 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |