JP4505195B2 - Method and apparatus for inverting data in a memory device - Google Patents

Method and apparatus for inverting data in a memory device Download PDF

Info

Publication number
JP4505195B2
JP4505195B2 JP2003129584A JP2003129584A JP4505195B2 JP 4505195 B2 JP4505195 B2 JP 4505195B2 JP 2003129584 A JP2003129584 A JP 2003129584A JP 2003129584 A JP2003129584 A JP 2003129584A JP 4505195 B2 JP4505195 B2 JP 4505195B2
Authority
JP
Japan
Prior art keywords
data
bit
word
memory device
words
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 - Lifetime
Application number
JP2003129584A
Other languages
Japanese (ja)
Other versions
JP2004310700A (en
JP2004310700A5 (en
Inventor
マクリ ジョセフ
ドレイプキン オルゲ
テムキン グリゴーリ
オサム ナガシマ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Micron Memory Japan Ltd
Original Assignee
Elpida Memory Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Elpida Memory Inc filed Critical Elpida Memory Inc
Priority to JP2003129584A priority Critical patent/JP4505195B2/en
Publication of JP2004310700A publication Critical patent/JP2004310700A/en
Publication of JP2004310700A5 publication Critical patent/JP2004310700A5/ja
Application granted granted Critical
Publication of JP4505195B2 publication Critical patent/JP4505195B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Memory System (AREA)
  • Dram (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はデータの書き込みおよび読み出しの技術分野に関するものである。
【0002】
【従来の技術】
デジタルデータは1および0としてメモリデバイスに記憶され、これらデータは「ピン」と称される導電パスを通してメモリデバイスとの間で転送される。データは1および0を示す高レベル信号および低レベル信号のストリングとしてメモリに書き込まれる。低レベル信号と高レベル信号との間で変化が生じるごとに、メモリデバイスの効率が低下する。しかしながら、データはある程度ランダムであるので、変化の数を減少させるようデータを制御する容易な方法はない。メモリデバイスとの間の書き込みを検討すればこの問題は理解できる。
【0003】
図1はデータソースおよびデータレシーバーのブロック図である。データソース100はバス101を介してデータレシーバー102と通信するようになっており、データは「バイト」と称される8ビットのブロックで転送される。各バイトは8本のライン上の8個のデータ信号としてパラレルにデータレシーバー102へ送られ、この場合、各信号ラインは送信されるデータに応じて高レベルまたは低レベルとなる。例えば「1」のデータ値が送られる場合、バスラインは高レベル状態となる。送られる次の信号が「0」である場合、バスラインは新しいデータを表示するために低レベル状態まで低下しなければならない。次に続く信号が「1」である場合、バスラインは高レベルの値まで再び上昇しなければならない。これら状態変化はデータ遷移として知られており、これを達成するのに時間およびエネルギーが必要である。データ受信回路102に書き込まれる8バイトのデータを示す次のシナリオを検討する。
【0004】
【表1】

Figure 0004505195
【0005】
上記例における24ビットのバイト2、3および4でのデータの遷移の総数は20であり、すなわち83%である(このことは元のバイトが送られる時にバスの各ラインは低レベル状態にあったとみなすことに留意されたい)。この結果、データ転送システムは動作するのに時間とパワーの点で不利となる。
【0006】
データ反転方式 従来技術はメモリデバイスへの書き込み時にデータ遷移の数を低減するために「データ反転」として知られる方式を提供している。このデータ反転方式では1バイトと次のバイトとの間のデータ遷移の数を決定し、解析する。遷移の数が4よりも多ければ、送るバイトのデータを反転する。このようにすることにより遷移の数は4未満にされる。この方式は最大50%の遷移に対し、バイト毎に生じ得る遷移の最大数の限度を4に設定できる。次の表を参照してデータ反転方式の動作について説明する。
【0007】
【表2】
Figure 0004505195
【0008】
最初のバイトが送られた後に反転をすることなくバイトを送った場合に遷移がどれだけ多くなるかを見るために次のバイトを検査する。ここで、バイトがオール0からオール1に変化した場合、遷移の数は8となる。この8の数は4よりも大であるので、バイトを反転し、オール0とする。このバイトを送る時にバスの各ラインは既に低レベル状態となっているのでデータの遷移はない。次のバイトを検査する際に、送られる実際のバイト(このケースでは反転されたバイト)と次のバイトとを比較し、生じ得る遷移の数を決定する。反転を行わない場合、遷移の数は2となり、この数は4未満であるので、反転を行うことなくバイトを送る。反転を行わないで送った場合、次のバイト(01110111)と既に送られたバイトとを比較すると、遷移の数は8となる。従って、バイトを(10001000)に反転し、遷移を起こすことなく送る。反転方式を使って同じデータを送る結果、24バイトのうち2つの遷移しか生じないことになり、すなわち8.3%の遷移しか生じない。このような改良の結果、データ転送動作が良好となり、より高速となる。
【0009】
【発明が解決しようとする課題】
このデータ反転方式の欠点は、受信回路からデータを読み出す時にデータだけでなくエキストラビットも正しく使用し、記憶できるよう、データバイトと共にエキストラビットを送らなければならないことである。これらエキストラビットはバス、データ送信回路および受信回路に対して別の書き込みをしなければならないので、システムの費用および複雑さが増すことになる。
【0010】
【課題を解決するための手段】
本発明は、書き込むべきN個のビット(各ビットは高レベル値または低レベル値を有する)の現在のワードを検査することにより、同期式メモリデバイスへ情報を書き込む方法に関する。前記現在のワードはN個のビットを有する前のワードと比較され、低レベル値から高レベル値、またはその逆の高レベル値から低レベル値へのビットの遷移の数を識別する。遷移の数がN/2よりも多ければ、現在ビットを反転する。反転の有無を表示するためにエクストラビットをデータバイトに付随させなくてもよいように、本発明は反転ビットを送るのに通常は読み出し動作中には使用されないデータマスクピンを活用するものである。反転されないデータは直接メモリデバイスへ書き込まれ、他方、反転されたデータは記憶ロケーションに書き込む前にまず再び反転されるのでメモリデバイスへは真のデータが記憶される。
【0011】
【発明の実施の形態】
本発明はデータを読み出し、書き込みするための方法および装置に関する。次の説明では本発明の実施例をより完全に説明するために特定の細部が多数記載されている。しかしながら、当業者にはこれら特定の細部の記載がなくても本発明を実施することができることは明らかである。周知の特徴については発明を不明瞭にしないように詳細には説明していない。
【0012】
現在のところ、ダイナミックランダムアクセスメモリ(DRAM)システムにおいて、データを反転させるための効率的な方式は提供されていない。システムにおいてDRAMを使用する利点の1つは、DRAMが低コストであり、かかるメモリデバイスの商品性にある。データ反転方式を使用するDRAMが反転情報のためのエクストラピンを必要とする場合、ジェオグラフィが少数のピンしか有しないDRAM用となっている多くのアプリケーションではDRAMを使用することができない。同様に、エクストラピンを有するDRAMを製造し、販売するための出費によってDRAMは商業的な発展性がなくなる。
【0013】
本発明はDRAMのデータピンに関連するデータマスク(DM)ピンと称される現行のピンを活用するものである。DMピンは一般にデータ入力端で使用されるが、データ出力端では使用されない。本発明はDMによってデータを出力する際にデータの反転をするかしないかを表示する信号を発生するために、データ出力端でDMピンを活用するものである。
【0014】
本発明の好ましい実施例のDRAMでは、32個のデータビットDQ0〜DQ31があり、これらデータビットは4つのバイト(各バイトはDQ0〜DQ7、DQ8〜DQ15、DQ16〜DQ23およびDQ24〜DQ31)に分割される。データバイトの各々は関連するデータマスクピンDM0〜DM3を有し、このデータマスクピンは適当な場合にデータ入力信号をマスクするために書き込み動作中に使用される。DM1〜DM3のいずれかが高レベルとなると、同じタイミングでデータ入力信号がマスクされる。
【0015】
書き込み動作
DRAMへの書き込み動作は入進データを反転するか、反転しないかの表示を伴なっていなければならない。DRAMが真の状態のデータを記憶できるように、書き込むべきデータと共にデータ反転マスク(DIM)ビットが含まれる。図2にはこれを行うための1つの実現例が示されている。DIMビット202と共に、排他的ORゲート203に入力信号201として入進データが加えられる。DIMビットが高レベルであると、入進データは反転されているので、データアレイ204に記憶する前にXORゲート203を通してこれを再反転する。
【0016】
読み出し動作
図3は本発明に係わるDRAM用読み出し回路を示す。データの各バイトは関連するDMピンを有する。例えばデータバイトD[7:0]はDM0に関連しており、バイトD[15:8]はDM1に関連しており、バイトD[23:16]はDM2に関連しており、バイトD[31:24]はDM3に関連している。読み出し動作中、アレイ300からデータ入力ピンおよびDIM発生器、例えば発生器301.1〜301.4へ直接データが与えられる。DM発生器は読み出し動作中のデータの遷移を減少させるためにデータを反転すべきか否かを判断する。DIM発生器の出力信号はデータビットに関連するDMピンに出力される。
【0017】
図4にはDIM発生器の一例が示されている。最終データレジスタ401は(反転されたか、または反転されていない、実際に送られたままの)最も最近に送られたバイトを記憶する。新データレジスタ402は送るべき現在のデータバイトを記憶する。コンパレータ403へはレジスタ401および402の出力信号が与えられる。遷移の数が4より多ければ、コンパレータ403はデータバイトと共にDMピンに出力すべき高レベル信号を出力する。
【0018】
バースト動作
DRAMからはバーストモードで読み出しが行われることが多い。図5はバーストモードの読み出し動作中の本発明の作動を示すフローチャートである。ブロック500でバースト読み出しがスタートする。ブロック510では前のデータレジスタの信号およびDM信号が低レベルにセットされる。ブロック520では現在のデータと前のデータとが比較され、現在のデータを送る際に生じる遷移の数を決定する。判断ブロック530では、遷移の数が4よりも多くなるかどうかを見るために遷移の数をチェックする。YESであれば、ブロック540でデータを反転し、DMを反転する。判断ブロック530での結果がNOであれば、ブロック550でデータを反転せず、前のDMの値を維持する。
【0019】
ブロック540または550のいずれかの後で判断ブロック560にてバースト動作が終了したかどうかの判断を行う。YESであれば、プロセスはブロック570で終了する。NOであれば、前のデータレジスタに現在データを記憶し、新しいデータバイトを得て、プロセスはブロック520へ戻る。
【0020】
ピンの利点
本発明は、特に読み出し動作のために過剰に多いピン数を必要とすることなく、DRAMのためにデータを反転できる能力を提供する利点を有する。通常、読み出し動作では使用されないピン、例えばDMピンを使用することにより、本発明は読み出し動作用の増設ピンを用いないでデータ反転を利用するバイト読み出しを可能にしている。
【0021】
ターミネーション
バースト読み出しの例を参照して既に説明したように、バースト読み出し動作が開始した時にバスは低レベル状態にあったとみなした。このことは必要なことではなく、本発明はかかる方式または仮定に限定されるものではない。バスのターミネーションは下記の多数の方法のうちのいずれかでよい。
【0022】
A.低レベルへのプル動作−本発明の一実施例ではバスは読み出し後徐々に低レベルにプル動作される。この方式では、バスラインにNMOSトランジスタが結合されており、NMOSトランジスタはある期間の間でバスラインを徐々にアースレベルまで下げる。この方式を使用する際は、すべてのラインが低レベル状態のままで、読み出し動作が開始すると仮定し、データの第1バイト用の遷移の数はこの仮定に基づいて決定される。
【0023】
B.高レベルへのプル動作−別の実施例では、バスへの作動後、所定時間の間、すべてのラインを高レベル状態にプルするようPMOS終端方式によりバスを高レベルにプル動作できる。この方式における仮定は、読み出し動作の開始時にすべてのラインが高レベルにあり、よってすべての高レベル状態に対する、第1バイトの遷移の数を決定するということである。
【0024】
C.中間点レベルでの終端−別の実施例では所定時間にわたってバスラインを中間レベルの状態にプルする。この方式を使用する際に、バスラインを中間レベルの状態から高レベルにプルすることと低レベルにプルすることには違いはないので、読み出し動作における第1バイトは非反転状態のまま送られる。
【0025】
D.アンラッチ状態で終端しない動作−この実施例ではバスラインは全くターミネートされず、最初のデータバイトは常にターミネートされない状態で送られる。この結果、第1バイトに対する効率が失われる。その理由は、最初のバイトに対し、遷移の数が5以上となり得るからである。
【0026】
E.ラッチ状態で終端しない動作−この実施例はバスラインをバス上の最近のバイトと同じ状態のままにしておき、この値にラッチする。その後の動作に対して、前のバイトレジスタはラッチされた値を含み、最初のバイトとこのラッチされた値とを比較し、遷移の数を決定する。
【0027】
プロセッサインターフェースロジックアプリケーション
DRAMに関連して本発明について説明したが、本発明は他の用途も有する。例えばデータ反転方式を使用できるようにマイクロプロセッサのインターフェースロジックに関連してこの方式を使用できる。図6にはかかる一実施例が示されている。
【0028】
DRAM601は、例えば第1データバンク601Aおよび第2データバンク601Bを含み、各バンクは関連するDIM信号603Aおよび603Bと共に出力バス602Aおよび602Bを有する(DIM信号はDMピンに提供できことに留意されたい)。メモリコントローラ604へはDRAMの出力信号が与えられる。DRAMのデータ出力信号602Aと602Bとはマイクロプロセッサ608への16ビットバス605で組み合わされる。DIM信号603Aと603BとはXORゲート606への入力信号として結合され、マイクロプロセッサ608への出力信号607を発生する。
【0029】
パワーの最適化
図7Aには本発明の読み出しブロックの一実施例が示されている。この実施例はI/Oがオープンドレイン(すなわちバスは論理1にターミネートされている)の場合、DCパワー最適化を行うようになっている。図7Aを参照すると、フリップフロップ702、コンパレータ703およびNORゲート704へは読み出しデータ701(8ビット)が結合される。フリップフロップ702のイネーブル入力端へは負荷信号705が結合される。ORゲート706の入力端にはDC最適化信号707と共にフリップフロップ702の出力信号が結合される。DC最適化信号は論理「1」であり、この信号はコンパレータブロック703の前のデータフィールドへOR演算入力される。このOR演算はコンパレータブロック703の出力信号が論理「1」である値の半分よりも大きくなようにし、DCパワーを節約するのを保証するものである。コンパレータ703は現在のデータフィールドと前のデータフィールドとを比較し、異なる値を有するビット数が5以上であるかどうかを見る。そうである場合、出力(DIN)は論理「1」であり、NORゲート704へ与えられ、データの適当な反転が行われる。
【0030】
バスが論理0にターミネートされる場合、DC最適化信号を論理「0」とすることができるので、出力端の半分よりも多い出力端が「0」にバイアスされ、これによってもパワーを節約できる。
【0031】
次に図7Bを参照すると、ここには書き込みブロックのブロック図が示されている。フリップフロップ711では書き込みデータ710(例えば32ビット)が与えられ、フリップフロップ713へはDIM信号712が与えられる。双方のフリップフロップは書き込みにクロック信号714によってクロック制御される。これらフリップフロップの出力信号はNORゲート715への入力信号として結合され、メモリアレイに書き込むべきデータを発生する。
【0032】
以上でデータ伝送に関連して本発明について説明したが、本発明はアドレス信号またはコマンド信号を含むデジタル信号にも同じように適用できる。
【0033】
以上でメモリデバイスにおけるデータ反転用方法および装置について説明した。
【図面の簡単な説明】
【図1】データソースおよびデータレシーバーのブロック図である。
【図2】デバイスへデータを書き込むための一実施例の図である。
【図3】本発明のDRAMのための読み出し回路を示す。
【図4】DIM発生器の一例である。
【図5】バースト読み出し動作中の本発明の動作を示すフローチャートである。
【図6】マイクロプロセッサインターフェースと共に使用される本発明のブロック図である。
【図7A】本発明の読み出しブロックの別の実施例のブロック図である。
【図7B】本発明の書き込みブロックの別の実施例である。
【符号の説明】
100 データソース
102 データレシーバー
401 最終データレジスタ
402 新データレジスタ
403 コンパレータ
604 メモリコントローラ
608 マイクロプロセッサ[0001]
BACKGROUND OF THE INVENTION
The present invention relates to the technical field of writing and reading data.
[0002]
[Prior art]
Digital data is stored in the memory device as 1 and 0, and these data are transferred to and from the memory device through conductive paths called “pins”. Data is written into the memory as a string of high and low level signals indicating 1 and 0. Each time a change occurs between a low level signal and a high level signal, the efficiency of the memory device decreases. However, since the data is somewhat random, there is no easy way to control the data to reduce the number of changes. This problem can be understood by considering writing to and from the memory device.
[0003]
FIG. 1 is a block diagram of a data source and a data receiver. The data source 100 communicates with the data receiver 102 via the bus 101, and the data is transferred in 8-bit blocks called “bytes”. Each byte is sent in parallel to the data receiver 102 as eight data signals on eight lines, where each signal line is either high or low depending on the data being transmitted. For example, when a data value of “1” is sent, the bus line is in a high level state. If the next signal sent is "0", the bus line must fall to a low state to display new data. If the next following signal is "1", the bus line must rise again to a high level value. These state changes are known as data transitions, and time and energy are required to accomplish this. Consider the following scenario showing 8 bytes of data written to the data receiving circuit 102.
[0004]
[Table 1]
Figure 0004505195
[0005]
The total number of data transitions in 24-bit bytes 2, 3, and 4 in the above example is 20, or 83% (this means that each line of the bus was in a low state when the original byte was sent. Please note that As a result, the data transfer system is disadvantageous in terms of time and power to operate.
[0006]
Data Inversion Scheme The prior art provides a scheme known as “data inversion” to reduce the number of data transitions when writing to a memory device. In this data inversion method, the number of data transitions between one byte and the next byte is determined and analyzed. If the number of transitions is greater than 4, the byte data to be sent is inverted. By doing so, the number of transitions is made less than four. This scheme can set the maximum number of transitions that can occur per byte to 4 for a maximum of 50% transitions. The operation of the data inversion method will be described with reference to the following table.
[0007]
[Table 2]
Figure 0004505195
[0008]
Examine the next byte to see how many transitions will occur if the byte is sent without flipping after the first byte is sent. Here, when the byte changes from all 0 to all 1, the number of transitions is 8. Since the number of 8 is larger than 4, the byte is inverted to be all 0s. When sending this byte, each line of the bus is already in a low level state, so there is no data transition. When examining the next byte, the actual byte sent (in this case the inverted byte) is compared with the next byte to determine the number of possible transitions. Without inversion, the number of transitions is 2, and since this number is less than 4, bytes are sent without inversion. When sent without inversion, the number of transitions is 8 when comparing the next byte (01110111) with the already sent byte. Therefore, the byte is inverted to (10001000) and sent without causing a transition. As a result of sending the same data using the inversion scheme, only two transitions of 24 bytes will occur, i.e. only 8.3% transitions. As a result of such an improvement, the data transfer operation becomes better and faster.
[0009]
[Problems to be solved by the invention]
The disadvantage of this data inversion method is that when reading data from the receiving circuit, not only the data but also the extra bit must be sent together with the data byte so that it can be used and stored correctly. These extra bits must be written separately to the bus, data transmission circuit and reception circuit, increasing the cost and complexity of the system.
[0010]
[Means for Solving the Problems]
The present invention relates to a method for writing information to a synchronous memory device by examining the current word of N bits to be written, each bit having a high or low level value. The current word is compared with a previous word having N bits to identify the number of bit transitions from a low level value to a high level value or vice versa. If the number of transitions is greater than N / 2, the current bit is inverted. The present invention utilizes a data mask pin that is not normally used during a read operation to send an inverted bit so that an extra bit does not have to accompany the data byte to indicate the presence or absence of inversion. . The non-inverted data is written directly to the memory device, while the inverted data is first inverted again before writing to the storage location so that the true data is stored in the memory device.
[0011]
DETAILED DESCRIPTION OF THE INVENTION
The present invention relates to a method and apparatus for reading and writing data. In the following description, numerous specific details are set forth in order to provide a more thorough explanation of embodiments of the present invention. However, it will be apparent to one skilled in the art that the present invention may be practiced without these specific details. Well-known features have not been described in detail so as not to obscure the invention.
[0012]
Currently, no efficient scheme is provided for inverting data in dynamic random access memory (DRAM) systems. One advantage of using DRAM in the system is the low cost of DRAM and the commercial nature of such memory devices. If a DRAM using a data inversion scheme requires extra pins for inversion information, the DRAM cannot be used in many applications where the geography is for a DRAM with only a few pins. Similarly, the expense of manufacturing and selling DRAM with extra pins makes the DRAM less commercially viable.
[0013]
The present invention takes advantage of current pins called data mask (DM) pins associated with DRAM data pins. The DM pin is generally used at the data input, but not at the data output. The present invention utilizes the DM pin at the data output end in order to generate a signal indicating whether or not to invert data when outputting data by DM.
[0014]
In the DRAM of the preferred embodiment of the present invention, there are 32 data bits DQ0 to DQ31, which are divided into four bytes (each byte is DQ0 to DQ7, DQ8 to DQ15, DQ16 to DQ23 and DQ24 to DQ31). Is done. Each of the data bytes has an associated data mask pin DM0-DM3, which is used during a write operation to mask the data input signal when appropriate. When any of DM1 to DM3 becomes high level, the data input signal is masked at the same timing.
[0015]
Write operation The write operation to the DRAM must be accompanied by an indication of whether the incoming data is inverted or not. A data inversion mask (DIM) bit is included with the data to be written so that the DRAM can store true state data. FIG. 2 shows one implementation for doing this. With the DIM bit 202, the incoming data is added as an input signal 201 to the exclusive OR gate 203. If the DIM bit is high, the incoming data is inverted and is reinverted through the XOR gate 203 before storing it in the data array 204.
[0016]
Read Operation FIG. 3 shows a DRAM read circuit according to the present invention. Each byte of data has an associated DM pin. For example, data bytes D [7: 0] are associated with DM0, bytes D [15: 8] are associated with DM1, bytes D [23:16] are associated with DM2, and bytes D [ 31:24] is related to DM3. During a read operation, data is provided directly from the array 300 to the data input pins and DIM generators, eg, generators 301.1 to 301.4. The DM generator determines whether data should be inverted to reduce data transitions during read operations. The output signal of the DIM generator is output to the DM pin associated with the data bit.
[0017]
FIG. 4 shows an example of a DIM generator. The last data register 401 stores the most recently sent byte (inverted or not inverted, as it was actually sent). New data register 402 stores the current data byte to be sent. The comparator 403 is supplied with the output signals of the registers 401 and 402. If the number of transitions is greater than 4, the comparator 403 outputs a high level signal to be output to the DM pin along with the data byte.
[0018]
Reading from a burst operation DRAM is often performed in a burst mode. FIG. 5 is a flow chart illustrating the operation of the present invention during a burst mode read operation. In block 500, burst reading starts. In block 510, the previous data register signal and the DM signal are set low. At block 520, the current data and the previous data are compared to determine the number of transitions that occur when sending the current data. At decision block 530, the number of transitions is checked to see if the number of transitions is greater than four. If yes, block 540 inverts data and DM is inverted. If the result at decision block 530 is NO, block 550 does not invert the data and maintains the previous DM value.
[0019]
After either block 540 or 550, a determination is made at decision block 560 as to whether the burst operation is complete. If yes, the process ends at block 570. If no, store the current data in the previous data register, get a new data byte, and the process returns to block 520.
[0020]
Pin Advantages The present invention has the advantage of providing the ability to invert data for DRAM without requiring an excessive number of pins, especially for read operations. Normally, by using a pin that is not used in a read operation, for example, a DM pin, the present invention enables byte reading using data inversion without using an additional pin for the read operation.
[0021]
As already described with reference to the termination burst read example, the bus was considered to be in a low state when the burst read operation started. This is not necessary and the invention is not limited to such schemes or assumptions. Bus termination may be any of a number of methods described below.
[0022]
A. Low Pull—In one embodiment of the invention, the bus is gradually pulled low after reading. In this method, an NMOS transistor is coupled to the bus line, and the NMOS transistor gradually lowers the bus line to the ground level during a certain period. When using this scheme, it is assumed that all lines remain in a low state and the read operation begins, and the number of transitions for the first byte of data is determined based on this assumption.
[0023]
B. Pull to high level—In another embodiment, the bus can be pulled high by a PMOS termination scheme to pull all lines to a high state for a predetermined time after activation to the bus. The assumption in this scheme is that all lines are high at the start of the read operation, thus determining the number of first byte transitions for all high state.
[0024]
C. Termination at the midpoint level-In another embodiment, the bus line is pulled to an intermediate level state for a predetermined time. When using this scheme, there is no difference between pulling the bus line from an intermediate level state to a high level and to a low level, so the first byte in the read operation is sent in a non-inverted state. .
[0025]
D. Operation not terminated in an unlatched state-In this embodiment, the bus line is not terminated at all, and the first data byte is always sent unterminated. As a result, the efficiency for the first byte is lost. The reason is that for the first byte, the number of transitions can be 5 or more.
[0026]
E. Non-terminating operation in a latched state-this embodiment leaves the bus line in the same state as the most recent byte on the bus and latches to this value. For subsequent operations, the previous byte register contains the latched value, and the first byte is compared with this latched value to determine the number of transitions.
[0027]
Although the present invention has been described with reference to a processor interface logic application DRAM, the present invention has other uses. For example, this scheme can be used in conjunction with the microprocessor's interface logic so that a data inversion scheme can be used. FIG. 6 shows such an embodiment.
[0028]
DRAM601 includes, for example, a first data bank 601A and the second data bank 601B, each bank DIM signal 603A and an output bus 602A and 602B with 603B (DIM signal associated is particularly noted Ru can provide the DM pin Wanna) A DRAM output signal is supplied to the memory controller 604. The DRAM data output signals 602A and 602B are combined on a 16-bit bus 605 to the microprocessor 608. DIM signals 603A and 603B are combined as an input signal to XOR gate 606 to generate an output signal 607 to microprocessor 608.
[0029]
Power Optimization FIG. 7A shows one embodiment of the read block of the present invention. In this embodiment, DC power optimization is performed when the I / O is open drain (ie, the bus is terminated to logic 1). Referring to FIG. 7A, read data 701 (8 bits) is coupled to flip-flop 702, comparator 703, and NOR gate 704. A load signal 705 is coupled to the enable input terminal of flip-flop 702. The output signal of the flip-flop 702 is coupled to the input terminal of the OR gate 706 together with the DC optimization signal 707. The DC optimization signal is logic “1”, and this signal is ORed into the data field before the comparator block 703. The OR operation is one in which the output signal of the comparator block 703 so ing greater than half the value is a logic "1", to ensure that conserve DC power. Comparator 703 compares the current data field with the previous data field to see if the number of bits having different values is 5 or more. If so, the output (DIN) is a logic “1” and is provided to a NOR gate 704 for appropriate inversion of the data.
[0030]
When the bus is terminated to logic 0, the DC optimization signal can be a logic “0” so that more than half of the outputs are biased to “0”, which also saves power. .
[0031]
Reference is now made to FIG. 7B, which shows a block diagram of a write block. Write data 710 (for example, 32 bits) is given to the flip-flop 711, and a DIM signal 712 is given to the flip-flop 713. Both flip-flops are clocked by a clock signal 714 for writing. The output signals of these flip-flops are combined as an input signal to NOR gate 715 to generate data to be written to the memory array.
[0032]
Although the present invention has been described above in relation to data transmission, the present invention is equally applicable to digital signals including address signals or command signals.
[0033]
The data inversion method and apparatus in the memory device has been described above.
[Brief description of the drawings]
FIG. 1 is a block diagram of a data source and a data receiver.
FIG. 2 is a diagram of one embodiment for writing data to a device.
FIG. 3 shows a read circuit for a DRAM of the present invention.
FIG. 4 is an example of a DIM generator.
FIG. 5 is a flowchart showing the operation of the present invention during a burst read operation.
FIG. 6 is a block diagram of the present invention used with a microprocessor interface.
FIG. 7A is a block diagram of another embodiment of a read block of the present invention.
FIG. 7B is another embodiment of the write block of the present invention.
[Explanation of symbols]
100 Data source 102 Data receiver 401 Final data register 402 New data register 403 Comparator 604 Memory controller 608 Microprocessor

Claims (15)

同期式メモリデバイスから情報を読み出す方法であって、
N個のビット(該ビットの各々は低レベル値または高レベル値を有する)を有する、読み出すべき同期式メモリデバイス内の現在のワードを検査する工程と、
前記現在のワードとN個のビットを有する前のワードとを比較し、前記前のワードにおける前記低レベル値を有するビットから前記現在のワードにおける前記高レベル値を有するビットへの遷移の数、または、前記前のワードにおける前記高レベル値から前記現在のワードにおける前記低レベル値への遷移の数を決定する工程と、
前記遷移の数がN/2以上である時に、前記現在のワードを反転する工程と、
前記現在のワードを前記同期式メモリデバイスから読み出す工程と、
現在のワードが反転されたかどうかを示すため、上記デバイスよりのデータ反転マスクビット(DIMビット)を各ワードに供給する工程を備え、ここで、データ反転マスクビット(DIMビット)は、書き込み動作中データ信号をマスクするために用いられるメモリデバイス上のピンの1つによって送られる、
前記同期式メモリデバイスから情報を読み出す方法。
A method for reading information from a synchronous memory device, comprising:
Examining a current word in a synchronous memory device to be read having N bits, each of which has a low or high level value;
Comparing the current word with a previous word having N bits and the number of transitions from the bit having the low level value in the previous word to the bit having the high level value in the current word; Or determining the number of transitions from the high level value in the previous word to the low level value in the current word;
Inverting the current word when the number of transitions is greater than or equal to N / 2;
Reading the current word from the synchronous memory device;
Providing each word with a data inversion mask bit (DIM bit) from the device to indicate whether the current word has been inverted, where the data inversion mask bit (DIM bit) is in a write operation Sent by one of the pins on the memory device used to mask the data signal,
A method of reading information from the synchronous memory device.
前記メモリデバイス上の存のピンで前記データ反転マスクビット(DIMビット)を送る請求項1記載の方法。The method of claim 1, wherein sending the data inversion mask bit in the pin existing on the memory device (DIM bits). 前記存のピンがデータマスク(DM)ピンである請求項2記載の方法。The method of claim 2, wherein the pin of the existing is a data mask (DM) pin. 前記前のワードが未知の時に前記前のワードのすべてが低レベル値を有すると見なす請求項1記載の方法。  The method of claim 1 wherein all of the previous words are considered to have a low level value when the previous word is unknown. 前記前のワードが未知の時に前記前のワードのすべてが高レベル値を有すると見なす請求項1記載の方法。  The method of claim 1, wherein all of the previous words are considered to have a high level value when the previous word is unknown. 前記前のワードが未知の時に前記現在のワードを反転しない請求項1記載の方法。  The method of claim 1, wherein the current word is not inverted when the previous word is unknown. 後の読み出し動作で前記現在のワードをラッチし、前記前のワードとして使用する請求項1記載の方法。  2. The method of claim 1, wherein a subsequent read operation latches the current word and uses it as the previous word. 前記情報がデータを含む、請求項1記載の方法。  The method of claim 1, wherein the information includes data. 前記情報がグラフィカルデータを含む、請求項1記載の方法。  The method of claim 1, wherein the information comprises graphical data. 前記情報が1つ以上のコマンドを含む、請求項1記載の方法。  The method of claim 1, wherein the information includes one or more commands. 前記情報がアドレス情報を含む、請求項1記載の方法。  The method of claim 1, wherein the information includes address information. 前記同期式メモリデバイスがDRAMを含む、請求項1記載の方法。  The method of claim 1, wherein the synchronous memory device comprises a DRAM. 前記現在のワードが反転されたかどうかによって、前記現在のワードがバイアスされて1つ以上の論理値を有するようにするため、前記前のワードをバイアスするためのバイアス手段を前記システムが有する、請求項1記載の方法。  The system comprises biasing means for biasing the previous word so that the current word is biased to have one or more logical values depending on whether the current word is inverted. Item 2. The method according to Item 1. 複数のワードを並列に読み出す方法であって、前記複数のワードの各々を請求項8に従って読み出す工程を含み、ここで前記複数のワードの各々はデータ反転マスクビット(DIMビット)を伴っている、前記方法。  A method of reading a plurality of words in parallel, comprising reading each of the plurality of words according to claim 8, wherein each of the plurality of words is accompanied by a data inversion mask bit (DIM bit). Said method. 同期式メモリを作動する方法であって、
複数のワードを請求項14に従って並列に読み出す工程と、
複数のワードを並列に書き込む工程と、
単一の書き込みデータ反転マスクビット(DIMビット)を、前記デバイスの前記複数のワードに供給して、複数のワードの全てのビットが反転されたかどうかを示す工程を備え、ここで、単一の書き込みデータ反転マスクビット(DIMビット)は、書き込み動作中データ信号をマスクするために用いられるメモリデバイス上のピンの1つによって送られる、
同期式メモリを作動する方法。
A method for operating a synchronous memory, comprising:
Reading a plurality of words in parallel according to claim 14;
Writing a plurality of words in parallel;
Providing a single write data inversion mask bit (DIM bit) to the plurality of words of the device to indicate whether all bits of the plurality of words have been inverted, wherein a single The write data inversion mask bit (DIM bit) is sent by one of the pins on the memory device used to mask the data signal during a write operation.
A method of operating a synchronous memory.
JP2003129584A 2003-04-01 2003-04-01 Method and apparatus for inverting data in a memory device Expired - Lifetime JP4505195B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003129584A JP4505195B2 (en) 2003-04-01 2003-04-01 Method and apparatus for inverting data in a memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003129584A JP4505195B2 (en) 2003-04-01 2003-04-01 Method and apparatus for inverting data in a memory device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010048024A Division JP5726425B2 (en) 2010-03-04 2010-03-04 Method and apparatus for inverting data in a memory device

Publications (3)

Publication Number Publication Date
JP2004310700A JP2004310700A (en) 2004-11-04
JP2004310700A5 JP2004310700A5 (en) 2009-09-24
JP4505195B2 true JP4505195B2 (en) 2010-07-21

Family

ID=33474699

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003129584A Expired - Lifetime JP4505195B2 (en) 2003-04-01 2003-04-01 Method and apparatus for inverting data in a memory device

Country Status (1)

Country Link
JP (1) JP4505195B2 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100546335B1 (en) * 2003-07-03 2006-01-26 삼성전자주식회사 Semiconductor device with data inversion scheme
US9262326B2 (en) * 2006-08-14 2016-02-16 Qualcomm Incorporated Method and apparatus to enable the cooperative signaling of a shared bus interrupt in a multi-rank memory subsystem
JP2008276343A (en) * 2007-04-26 2008-11-13 Nec Electronics Corp Information processing device
US7783846B2 (en) * 2007-08-09 2010-08-24 International Business Machines Corporation Method, apparatus and computer program product providing energy reduction when storing data in a memory
KR100954109B1 (en) * 2008-08-29 2010-04-23 주식회사 하이닉스반도체 Data input circuit and semiconcuctor memory device including the same
KR101039862B1 (en) * 2008-11-11 2011-06-13 주식회사 하이닉스반도체 Semiconductor memory device having clocking mode and operating method of the same
US8260992B2 (en) * 2010-04-12 2012-09-04 Advanced Micro Devices, Inc. Reducing simultaneous switching outputs using data bus inversion signaling
WO2012141161A1 (en) * 2011-04-12 2012-10-18 ルネサスエレクトロニクス株式会社 Semiconductor memory circuit, method for operating semiconductor memory circuit, and method for designing semiconductor memory circuit
US9864536B2 (en) * 2013-10-24 2018-01-09 Qualcomm Incorporated System and method for conserving power consumption in a memory system
WO2015181933A1 (en) * 2014-05-29 2015-12-03 株式会社日立製作所 Memory module, memory bus system, and computer system
US10747909B2 (en) * 2018-09-25 2020-08-18 Northrop Grumman Systems Corporation System architecture to mitigate memory imprinting
US10754993B2 (en) * 2018-09-25 2020-08-25 Northrop Grumman Systems Corporation Architecture to mitigate configuration memory imprinting in programmable logic
CN110688813B (en) * 2019-08-19 2023-04-25 青芯半导体科技(上海)有限公司 Method and structure for reducing logic flip rate of chip

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000099218A (en) * 1998-08-19 2000-04-07 Samsung Electronics Co Ltd Output circuit, input/output system, and data input/output method
JP2000132964A (en) * 1998-10-27 2000-05-12 Nec Corp Synchronous type semiconductor storage device
JP2001006398A (en) * 1999-06-17 2001-01-12 Fujitsu Ltd Semiconductor memory and test method thereof
JP2002093168A (en) * 2000-09-12 2002-03-29 Toshiba Corp Semiconductor memory

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08314589A (en) * 1995-05-15 1996-11-29 Hitachi Ltd Signal transmitting device
JP3346999B2 (en) * 1996-01-08 2002-11-18 株式会社東芝 I / O device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000099218A (en) * 1998-08-19 2000-04-07 Samsung Electronics Co Ltd Output circuit, input/output system, and data input/output method
JP2000132964A (en) * 1998-10-27 2000-05-12 Nec Corp Synchronous type semiconductor storage device
JP2001006398A (en) * 1999-06-17 2001-01-12 Fujitsu Ltd Semiconductor memory and test method thereof
JP2002093168A (en) * 2000-09-12 2002-03-29 Toshiba Corp Semiconductor memory

Also Published As

Publication number Publication date
JP2004310700A (en) 2004-11-04

Similar Documents

Publication Publication Date Title
US8031538B2 (en) Method and apparatus for data inversion in memory device
JP4505195B2 (en) Method and apparatus for inverting data in a memory device
TWI480734B (en) Method and recognition apparatus for use in a plurality of memory devices in a serial interconnection configuration and system comprising serially interconnected devices
JPH1153169A (en) Microprocessor and memory having low electric power and enabling simple interconnection
US10545888B2 (en) Data inversion circuit
US7940598B2 (en) Integrated circuit memory device, system and method having interleaved row and column control
US7423914B2 (en) Data output device and method of semiconductor device
JP2009507431A (en) Method and apparatus for converting parallel data to serial data in high speed applications
US9111645B2 (en) Request-command encoding for reduced-data-rate testing
US20090103378A1 (en) Single-strobe operation of memory devices
JP4667773B2 (en) Memory system having data inversion and data inversion method in memory system
TW202031039A (en) Data communicating and processing method of master device and slave device, and data processing method of slave device
US20050132112A1 (en) I/O energy reduction using previous bus state and I/O inversion bit for bus inversion
US7733737B2 (en) Semiconductor memory device using bus inversion scheme
US6243777B1 (en) Circuit for preventing bus contention
US7782682B2 (en) Semiconductor device with circuitry for efficient information exchange
JP3191302B2 (en) Memory circuit
JP5726425B2 (en) Method and apparatus for inverting data in a memory device
TW510101B (en) Data transmitting device, data transmission system and method
WO2021077780A1 (en) Read operation circuit, semiconductor memory and read operation method
TWI285836B (en) Method and/or architecture implemented in hardware for the adjustment of messages with indeterministic length
KR100929831B1 (en) Semiconductor memory device for high speed data input / output
KR20060000163A (en) Method and apparatus for data inversion in memory device
US11776592B2 (en) Semiconductor device including pipe latch circuit
CN111444127B (en) Data external memory expansion interface

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060328

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090203

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090507

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090512

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090603

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090608

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090703

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090708

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090803

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20090803

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090904

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20091204

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20091209

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20091225

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100105

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100204

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100304

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: 20100326

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100426

R150 Certificate of patent or registration of utility model

Ref document number: 4505195

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130430

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140430

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term