JP6061523B2 - データ処理装置及びその動作方法 - Google Patents

データ処理装置及びその動作方法 Download PDF

Info

Publication number
JP6061523B2
JP6061523B2 JP2012148312A JP2012148312A JP6061523B2 JP 6061523 B2 JP6061523 B2 JP 6061523B2 JP 2012148312 A JP2012148312 A JP 2012148312A JP 2012148312 A JP2012148312 A JP 2012148312A JP 6061523 B2 JP6061523 B2 JP 6061523B2
Authority
JP
Japan
Prior art keywords
data
random number
pseudo
number generator
processing apparatus
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
Application number
JP2012148312A
Other languages
English (en)
Other versions
JP2013016173A (ja
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2013016173A publication Critical patent/JP2013016173A/ja
Application granted granted Critical
Publication of JP6061523B2 publication Critical patent/JP6061523B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • G06F7/584Pseudo-random number generators using finite field arithmetic, e.g. using a linear feedback shift register
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/58Indexing scheme relating to groups G06F7/58 - G06F7/588
    • G06F2207/583Serial finite field implementation, i.e. serial implementation of finite field arithmetic, generating one new bit or trit per step, e.g. using an LFSR or several independent LFSRs; also includes PRNGs with parallel operation between LFSR and outputs

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Error Detection And Correction (AREA)

Description

本発明の実施形態は、データ処理技術に係り、特に、擬似乱数シーケンス(pseudorandom number sequence)を発生する新たな構造のデータ処理装置とその動作方法とに関する。
擬似乱数シーケンス(pseudo random number sequences)は、通信システムとデータ保存システムとを含むデータ処理のための電子/コンピュータシステムで広く使われる。
前記擬似乱数シーケンスは、線形フィードバックシフトレジスタ(linear feedback shift register、LFSR)の出力を用いて生成される。生成されたシーケンスは、LFSRの状態(state)またはシード(seed)に依存的である。例えば、シードは、LFSRの動作フィードバックタップ構成(operational feedback tap configuration)を左右する。
互いに異なる擬似乱数シーケンスは、互いに異なるシードを有するLFSRの初期化によって生成されうる。擬似乱数シーケンスのうちの1つの使用例は、伝送または保存されるデータのランダム化(randomization)である。ランダマイザー(randomizer)装置は、LFSRによって生成された擬似乱数シーケンスを用いて、元のデータをランダマイズされたデータに変換する。また、デランダマイザー(derandomizer)装置は、前記LFSRによって生成された同じ擬似乱数シーケンスを用いてランダマイズされたデータを元のデータに変換する。
本発明が解決しようとする技術的な課題は、線形フィードバックシフトレジスタに含まれた複数のシフトレジスタから最後のシフトレジスタを除いた残りのシフトレジスタのうちの何れか1つの出力によって擬似乱数シーケンスを生成させる新たな構造を有するデータ処理装置及びその動作方法を提供するところにある。
また、本発明が解決しようとする技術的な課題は、線形フィードバックシフトレジスタに含まれた複数のシフトレジスタのうちの少なくとも2つ以上のシフトレジスタの出力を組み合わせて、組み合わせ結果によって擬似乱数シーケンスを生成させる新たな構造を有するデータ処理装置及びその動作方法を提供するところにある。
本発明の実施形態によるデータ処理装置は、直列接続された複数のシフトレジスタ(shift registers)を含む擬似乱数発生器と、前記複数のシフトレジスタから最後のシフトレジスタを除いた残りのシフトレジスタのうちの何れか1つから出力される擬似乱数シーケンスを受信し、該受信された擬似乱数シーケンス(sequence)を用いて第1データを第2データに変換する変換回路と、を含む。
前記擬似乱数発生器は、前記第1データまたは前記第2データのメモリアクセスパラメータ(memory access parameter)によって、前記擬似乱数発生器のフィードバック多項式(feedback polynomial)を決定するフィードバック多項式決定器を含む。
実施形態によって、前記変換は、ランダマイズされた(randomized)前記第2データを得るために、前記第1データをランダマイズ(randomizing)することを含み、前記変換回路は、前記第1データと前記擬似乱数シーケンスとに対してモジュロ加算演算(modulo addition operation)を行う。他の実施形態によって、前記変換は、デランダマイズされた(de−randomized)前記第2データを得るために、前記第1データをデランダマイズ(de−randomizing)することを含み、前記変換回路は、前記第1データと前記擬似乱数シーケンスとに対してモジュロ減算演算(modulo subtraction operation)を行う。
前記擬似乱数発生器は、複数のブール論理ゲート(Boolean logic gates)を含み、前記第1データまたは前記第2データのメモリアクセスパラメータによって、前記擬似乱数シーケンスに相応する論理出力を決定する論理ゲートアレイ(logic gate array)を含む。
前記メモリアクセスパラメータは、ワードラインアドレス(word line address)またはビットラインアドレス(bit line address)であり得る。
前記メモリアクセスパラメータの前記メモリが、複数のページ(pages)を含むブロック(block)を含むフラッシュメモリ(flash memory)である時、前記メモリアクセスパラメータは、ブロックアドレス(block address)、ページアドレス(page address)、ワードラインアドレス、ビットラインアドレス、前記メモリのチップID(chip Identification)、プログラム回数(program count)、及びイレーズ回数(erase count)のうちの少なくとも1つであり得る。
前記擬似乱数発生器は、フィボナッチ線形フィードバック(Fibonacci linear feedback)擬似乱数発生器、ガロア(Galois)線形フィードバック擬似乱数発生器、フィボナッチ非線形フィードバック擬似乱数発生器、及びガロア非線形フィードバック擬似乱数発生器のうちの何れか1つであり得る。
本発明の他の実施形態によるデータ処理装置は、直列接続された複数のシフトレジスタを含む擬似乱数発生器と、前記複数のシフトレジスタのうちの少なくとも2つのシフトレジスタの出力信号を組み合わせる組み合わせ回路と、前記組み合わせ回路から出力された擬似乱数シーケンスを受信し、該受信された擬似乱数シーケンスを用いて第1データを第2データに変換する変換回路と、を含む。
前記擬似乱数発生器は、前記第1データまたは前記第2データのメモリアクセスパラメータによって、前記擬似乱数発生器のフィードバック多項式を決定するフィードバック多項式決定器を含む。
前記組み合わせ回路は、前記第1データまたは前記第2データのメモリアクセスパラメータによって、前記少なくとも2つのシフトレジスタの出力信号を組み合わせるための第1動作と第2動作とのうちの少なくとも1つを選択し、前記第1動作は、モジュロ−P加算(Modulo−P addition)であり、前記第2動作は、モジュロ−P乗算(Modulo−P multiplication)であり、Pは、2以上の自然数である。
本発明のさらに他の実施形態によるデータ処理装置は、メモリと、直列接続された複数のシフトレジスタを含む擬似乱数発生器と、前記複数のシフトレジスタから最後のシフトレジスタを除いた残りのシフトレジスタのうちの何れか1つから出力される擬似乱数シーケンスを用いて、前記メモリに保存される第2データを得るために、第1データをランダマイズするランダマイザーと、デランダマイズされた第4データを得るために、前記メモリから出力された第3データを前記擬似乱数シーケンスを用いてデランダマイズするデランダマイザーと、を含む。
前記擬似乱数発生器は、前記第2データと前記第3データのそれぞれのメモリアクセスパラメータによって、前記擬似乱数発生器のフィードバック多項式を決定するフィードバック多項式決定器を含む。
本発明のさらに他の実施形態によるデータ処理装置は、メモリと、直列接続された複数のシフトレジスタを含む擬似乱数発生器と、前記複数のシフトレジスタのうちの少なくとも2つのシフトレジスタの出力信号を組み合わせる組み合わせ回路と、前記組み合わせ回路から出力された擬似乱数シーケンスを用いて、前記メモリに保存される第2データを得るために、第1データをランダマイズするランダマイザーと、デランダマイズされた第4データを得るために、前記メモリから出力された第3データを前記擬似乱数シーケンスを用いてデランダマイズするデランダマイザーと、を含む。
前記組み合わせ回路は、前記第2データと前記第3データのそれぞれのメモリアクセスパラメータによって、前記少なくとも2つのシフトレジスタの出力信号を組み合わせるための第1動作と第2動作とのうちの少なくとも1つを選択し、前記第1動作は、モジュロ−P加算であり、前記第2動作は、モジュロ−P乗算であり、Pは、2以上の自然数である。
本発明の実施形態によるデータ処理装置は、ハードウェア複雑さ(hardware complexity)を増加させず、ランダム性(randomness)が増加した擬似乱数シーケンスを生成させ、前記擬似乱数シーケンスを用いてデータのランダム性をさらに増加させる。
本発明の詳細な説明で引用される図面をより十分に理解するために、各図面の詳細な説明が提供される。
本発明の一実施形態による擬似乱数発生器を含むデータ処理装置のブロック図を示す。 図1に示された擬似乱数発生器を含むランダマイザーの一実施形態を示す。 図2に示された擬似乱数発生器の一例を示す。 図1に示された擬似乱数発生器を含むデランダマイザーの一実施形態を示す。 本発明の他の実施形態による擬似乱数発生器を含むデータ処理装置のブロック図を示す。 図5に示された擬似乱数発生器を含むランダマイザーの一実施形態を示す。 図5に示された擬似乱数発生器を含むデランダマイザーの一実施形態を示す。 図5に示された擬似乱数発生器を含むランダマイザーの他の実施形態を示す。 図5に示された擬似乱数発生器を含むデランダマイザーの他の実施形態を示す。 図5に示された擬似乱数発生器を含むランダマイザーのさらに他の実施形態を示す。 図5に示された擬似乱数発生器を含むデランダマイザーのさらに他の実施形態を示す。 図5に示された擬似乱数発生器を含むランダマイザーのさらに他の実施形態を示す。 図5に示された擬似乱数発生器を含むデランダマイザーのさらに他の実施形態を示す。 図5に示された擬似乱数発生器を含むランダマイザーのさらに他の実施形態を示す。 図5に示された擬似乱数発生器を含むデランダマイザーのさらに他の実施形態を示す。 本発明の実施形態による擬似乱数発生器と変換回路とがデータ処理装置で具現された一実施形態を示す。 図16Aに示された変換回路の一実施形態を示すブロック図である。 本発明の実施形態による擬似乱数発生器と変換回路とがデータ処理装置で具現された他の実施形態を示す。 本発明の実施形態による擬似乱数発生器と変換回路とがデータ処理装置で具現されたさらに他の実施形態を示す。 本発明の実施形態によるランダマイザーとデランダマイザーとがデータ処理装置で具現された一実施形態を示す。 本発明の実施形態によるランダマイザーとデランダマイザーとがデータ処理装置で具現された他の実施形態を示す。 本発明の実施形態によるランダマイザーとデランダマイザーとがデータ処理装置で具現されたさらに他の実施形態を示す。 本発明の一実施形態によるデータ処理装置の動作方法を示すフローチャートである。 本発明の他の実施形態によるデータ処理装置の動作方法を示すフローチャートである。
以下、添付した図面を参照して、本発明を詳しく説明する。
図1は、本発明の一実施形態による擬似乱数発生器を含むデータ処理装置のブロック図を示す。図1を参照すると、データ処理装置10は、擬似乱数発生器20、多項式係数コントローラ30、及びテーブル(table)40を含む。例えば、テーブル40は、不揮発性メモリによって構成することができる。
データ処理装置10は、ランダマイザーまたはデランダマイザーのうちの少なくとも1つを含む、現在知られたか、または現在開発中である、あらゆるデータ処理装置を意味する。
したがって、データ処理装置10は、PC(Personal Computer)、タブレット(tablet)PC、ノート型パソコン、メモリカード(memory card)、スマートカード(smart card)、携帯電話、スマートフォン(smart phone)、車両用ナビゲーター(navigator)、データサーバ(dataserver)、HDD(Hard Disk Drive)、SSD(Solid State Drive)、またはネットワーク接続ストレージ(Network−attached storage、NAS)として具現可能である。
例えば、擬似乱数発生器20は、多項式係数コントローラ30から出力されたメモリアクセスパラメータまたはパラメータMPによって多様な擬似乱数シーケンス(pseudo random number generator;RS)を発生させうる。したがって、擬似乱数発生器20に含まれた構成要素によって、擬似乱数発生器20は、線形擬似乱数シーケンスRSまたは非線形擬似乱数シーケンスRSを発生させうる。
電子回路、ロジック(logic)装置、ソフトウェアコード(software code)、またはこれらの組合わせで具現可能な多項式係数コントローラ30は、テーブル40に保存されたデータを参照して、擬似乱数発生器20の動作、例えば、フィードバック多項式または特性多項式(characteristic polynomial)を決定するためのパラメータMPを擬似乱数発生器20に伝送する。
擬似乱数シーケンスRSは、前記フィードバック多項式または前記特性多項式によって決定されうる。パラメータMPは、テーブル40に保存されたデータのその自体であり、多項式係数コントローラ30によって処理されたデータであり得る。
テーブル40は、メモリ装置に対するアクセス(access)動作、例えば、リード(read)動作、ライト(write)動作、プログラム(program)動作、またはイレーズ(erase)動作に必要なデータを保存することができる。アクセスされるメモリ装置は、揮発性メモリ装置または不揮発性メモリ装置であり得る。
例えば、テーブル40に保存されたデータに相応するパラメータMPは、ワードラインアドレス、またはビットラインアドレスのうちの少なくとも1つを含む。また、アクセス動作の対象となったメモリが複数のブロックを含み、前記複数のブロックのそれぞれが複数のページを含むフラッシュ、例えば、NANDフラッシュメモリである時、パラメータMPは、ブロックアドレス、ワードラインアドレス、ビットラインアドレス、ページアドレス、前記メモリのID(identification)を表わすメモリチップ(chip)ID、プログラム回数、またはイレーズ回数のうちの少なくとも1つを含みうる。したがって、パラメータMPは、メモリ(例えば、揮発性メモリセルまたは不揮発性メモリセル)に対するアクセス動作に必要な情報を意味する。パラメータMPは、1ビットまたはそれ以上のビットを含みうる。
図2は、図1に示された擬似乱数発生器を含むランダマイザーの一実施形態を示す。図1と図2とを参照すると、ランダマイザー100は、擬似乱数発生器20aと変換回路50aとを含む。図1の擬似乱数発生器20の一例である擬似乱数発生器20aは、複数のシフトレジスタまたは直列(または、カスケード(cascade))接続された複数のシフトレジスタ21−1〜21−4と、フィードバック多項式決定器22とを含む。
複数のシフトレジスタ21−1〜21−4のうち、最後のシフトレジスタ(例えば、21−4)を除いた残りのシフトレジスタのうちの何れか1つ(例えば、21−2)の出力端子は、電気的な回路パターンを通じて変換回路50aに接続される。
変換回路50aは、入力データを出力ランダムデータR_DATA1にランダマイズすることができる。変換回路50aは、複数のシフトレジスタ21−1〜21−4のうち、最後のシフトレジスタ(例えば、21−4)を除いた残りのシフトレジスタのうちの何れか1つ(例えば、21−2)の出力端子から出力される擬似乱数シーケンスRSを用いて、第1データ、例えば、ユーザデータUDATA1を第2データR_DATA1にランダマイズすることができる。例えば、第1データUDATA1は、原本データ(original data)を意味する。
この際、擬似乱数発生器20aによって発生した擬似乱数シーケンスRSは、二進シーケンス(binary sequence)または非二進シーケンス(non−binary sequence)であり得る。例えば、変換回路50aは、擬似乱数シーケンスRSと第1データUDATA1とをモジュロ加算(modulo addition)し、その結果としてランダマイズされた第2データR_DATA1を出力することができる。
実施形態によって、変換回路50aは、ブール論理ゲート(Boolean logicgate)、例えば、ANDゲート、ORゲート、NOTゲート、XOR(exclusive−or)ゲート、XNOR(exclusive−nor)ゲート、またはこれらの組合わせで具現可能である。
変換回路50aから出力されたランダマイズされた第2データR_DATA1は、メモリ(例えば、図16A〜図21に示された310)にライトまたはプログラムされる。
例えば、前記メモリは、複数のワードライン、複数のビットライン、及びそれぞれが前記複数のワードラインのそれぞれと前記複数のビットラインのそれぞれとの間に接続された複数のメモリセルを含むメモリセルアレイと、前記メモリセルアレイに/からランダマイズされた第2データR_DATA1をライト/リードするためのライト回路/リード回路を含む。すなわち、ランダマイズされた第2データR_DATA1は、前記ライト回路を通じて前記メモリセルアレイにライトされる。
前記複数のメモリセルのそれぞれは、DRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)、T−RAM(Thyristor RAM)、Z−RAM(Zero capacitor RAM)、またはTTRAM(Twin Transistor RAM)のように現存する揮発性メモリセル(volatile memory cell)と現在開発中である揮発性メモリセルとを含む。
また、前記複数のメモリセルのそれぞれは、不揮発性(non−volatile)メモリセルとして具現可能である。前記不揮発性メモリセルは、EEPROM(Electrically Erasable Programmable Read−Only Memory)、フラッシュ(flash)メモリ、MRAM(Magnetic RAM)、スピン伝達トルクMRAM(Spin−Transfer Torque MRAM)、Conductive bridging RAM(CBRAM)、FeRAM(Ferroelectric RAM)、OUM(Ovonic Unified Memory)とも呼ばれるPRAM(Phase change RAM)、抵抗メモリ(Resistive RAM:RRAM(登録商標)またはReRAM)、ナノチューブRRAM(登録商標)(Nanotube RRAM)、ポリマーRAM(Polymer RAM:PoRAM)、ナノ浮遊ゲートメモリ(Nano Floating Gate Memory:NFGM)、ホログラフィックメモリ(holographic memory)、分子電子メモリ素子(Molecular Electronics Memory Device)、または絶縁抵抗変化メモリ(Insulator Resistance Change Memory)を含みうる。前記不揮発性メモリセルは、1ビットまたはそれ以上のビットを保存することができる。
フィードバック多項式決定器22は、メモリ(例えば、図16A〜図21の310)のアクセスに必要なパラメータMPを用いて、擬似乱数発生器20aのフィードバック多項式または特性多項式を決定することができる。例えば、フィードバック多項式決定器22が、複数のブール論理ゲートを含む論理ゲートアレイ24を含む時、論理ゲートアレイ24は、パラメータMPを用いて最初のシフトレジスタ21−1にフィードバックされる論理出力を決定する。
図2に示されたgi(0≦i≦m)は、フィードバック加重値(feedback weight)、フィードバックタップ(feedback tap)、またはフィードバック多項式の係数(coefficient)を意味するものであって、‘0’は非接触(no connection)、‘1’以上はフィードバックを意味する。したがって、フィードバック多項式決定器22のgi(0≦i≦m)及び/または論理ゲートアレイ24の論理出力は、パラメータMPによって調節または決定されうる。
従来のLFSR(linear feedback shift register)は、直列に接続された複数のシフトレジスタから最後のシフトレジスタから出力されるビットを擬似乱数シーケンスとして出力した。
しかし、本発明の実施形態による図2に示された擬似乱数発生器20aは、複数のシフトレジスタ21−1〜21−4のうち、最後のシフトレジスタ21−4を除いた残りのシフトレジスタのうちの何れか1つから出力されるビットを擬似乱数シーケンスRSとして出力する。また、擬似乱数シーケンスRSは、パラメータMPによって決定されるので、擬似乱数シーケンスRSのランダム性がさらに増加する。
図3は、図2に示された擬似乱数発生器の一例を示す。図3に示された擬似乱数発生器20aは、16ビットフィボナッチ(Fibonacci)LFSRとして具現されたものであって、16個のシフトレジスタから最後のシフトレジスタを除いた15個のシフトレジスタのうちの何れか1つから出力された擬似乱数シーケンスRSは、図2に示された変換回路50aに伝送される。
実施形態によって、擬似乱数発生器20aは、ガロアLFSRとして具現可能である。この際、ガロアLFSRに含まれた複数のシフトレジスタから最後のシフトレジスタを除いた残りのシフトレジスタのうちの何れか1つから出力された擬似乱数シーケンスは、図2に示された変換回路50aに伝送することができる。
擬似乱数発生器20aが、ガロアLFSRとして具現される時、論理ゲートアレイ24の論理出力は、ガロアLFSRに含まれた複数のシフトレジスタのうちの何れか1つのシフトレジスタの入力にフィードバックされうる。したがって、本明細書で説明する図1または図5の擬似乱数発生器20は、フィボナッチ線形フィードバック擬似乱数発生器、ガロア線形フィードバック擬似乱数発生器、フィボナッチ非線形フィードバック擬似乱数発生器、またはガロア非線形フィードバック擬似乱数発生器として具現可能である。
二進擬似乱数発生器として具現された図3の擬似乱数発生器20aは、図2に示されたフィードバック多項式決定器22がパラメータMPを用いてフィードバック多項式または特性多項式を決定できるということを説明するための例示に過ぎない。したがって、論理ゲートアレイ24が、複数のXORゲートを含んでいる時、パラメータMPによってそれぞれのgi(0≦i≦m)の‘1’または‘0’が決定されれば、これによって論理ゲートアレイ24の論理出力が決定される。
図4は、図1に示された擬似乱数発生器を含むデランダマイザーの一実施形態を示す。入出力されるデータUDATA2とR_DATA2の方向と、変換回路50bがランダマイズされた第3データR_DATA2から擬似乱数シーケンスRSをモジュロ減算(modulo subtraction)して、第4データUDATA2を生成することを除けば、図2に示されたランダマイザー100の構造と図4に示されたデランダマイザー101の構造は、実質的に同一である。擬似乱数シーケンスRSが二進シーケンスであり、変換回路50aまたは50bがXORゲートとして具現される時、モジュロ−2加算演算結果とモジュロ−2減算演算結果は、互いに同一である。
実施形態によって、変換回路50bは、ブール論理ゲート、例えば、ANDゲート、ORゲート、NOTゲート、XORゲート、XNORゲート、またはこれらの組合わせで具現可能である。
デランダマイザー101の変換回路50bは、複数のシフトレジスタ21−1〜21−4のうち、最後のシフトレジスタ21−4を除いた残りのシフトレジスタのうちの何れか1つ(例えば、21−2)から出力される擬似乱数シーケンスRSを用いて、ランダマイズされた第3データR_DATA2を第4データUDATA2にデランダマイズする。
この際、複数のシフトレジスタ21−1〜21−4のうち、最後のシフトレジスタ21−4を除いた残りのシフトレジスタのうちの何れか1つ(例えば、21−2)から出力される擬似乱数シーケンスRSは、第3データR_DATA2を保存するメモリ(図16A〜図21の310)のアクセスに必要なパラメータMPを用いて決定されたフィードバック多項式によって決定される。
表1は、複数のビットを含むパラメータMPによってフィードバック多項式が決定されうるということを例示的に表わす表である。
Figure 0006061523
図5は、本発明の他の実施形態による擬似乱数発生器を含むデータ処理装置のブロック図を示す。図1と図5とを参照すると、擬似乱数発生器20に含まれた複数のシフトレジスタのうちの少なくとも2つのシフトレジスタの出力信号を選択して組み合わせ、該組み合わせられた信号を擬似乱数シーケンスRSとして出力する組み合わせ回路200を除けば、図1のデータ処理装置10の構造と図5のデータ処理装置11の構造は、実質的に同一である。
この際、組み合わせ回路200は、テーブル40から出力された選択信号SELまたは第2パラメータMP2に応答して、擬似乱数発生器20に含まれた複数のシフトレジスタのうちの少なくとも2つのシフトレジスタの出力信号を選択する選択動作(selection operation)及び/または前記選択された少なくとも2つのシフトレジスタの出力信号の組み合わせ方法(combination method)を選択することができる。前記組み合わせ方法は、モジュロ−P加算(Modulo−P addition)、モジュロ−P減算(modulo−P subtraction)、またはモジュロ−P乗算(Modulo−P multiplication)であり、Pは、2以上の自然数である。
例えば、擬似乱数シーケンスRSが、二進シーケンスである時、組み合わせ回路200は、複数のビットを含む第2パラメータMP2によって、モジュロ−2加算、モジュロ−2減算、またはモジュロ−2乗算を行うことができる。また、擬似乱数シーケンスが、P−aryシーケンスである時、組み合わせ回路200は、第2パラメータMP2によって、モジュロ−P加算、モジュロ−P減算、またはモジュロ−P乗算を行うことができる。
図6は、図5に示された擬似乱数発生器を含むランダマイザーの一実施形態を示す。図6を参照すると、ランダマイザー110は、図5に示された擬似乱数発生器20の一実施形態として具現された擬似乱数発生器20b、図5に示された組み合わせ回路200の一例として具現された選択器200A、及び変換回路50aを含む。
選択器200Aは、擬似乱数発生器20bに含まれた複数のシフトレジスタ21−1〜21−4のそれぞれから出力された出力信号を受信し、選択信号SELによって複数のシフトレジスタ21−1〜21−4のうち、最後のシフトレジスタ21−4を除いた残りのシフトレジスタのうちの何れか1つの出力信号を選択し、該選択された出力信号を擬似乱数シーケンスRSとして変換回路50aに出力する。
選択信号SELとして前述したパラメータMPが使われる。選択信号SELは、1ビットまたはそれ以上のビットであり、選択器200Aは、マルチフレクサとして具現可能である。モジュロ加算を行うことができる変換回路50aは、選択器200Aから出力された擬似乱数シーケンスRSによって、第1データUDATA1を第2データR_DATA1にランダマイズする。
図7は、図5に示された擬似乱数発生器を含むデランダマイザーの一実施形態を示す。入出力されるデータUDATA2とR_DATA2の方向と、変換回路50bがランダマイズされた第3データR_DATA2から擬似乱数シーケンスRSをモジュロ減算して、第4データUDATA2を生成することを除けば、図6に示されたランダマイザー110の構造と図7に示されたデランダマイザー111の構造は、実質的に同一である。
変換回路50bは、選択器200Aから出力された擬似乱数シーケンスRSによってランダマイズされた第3データR_DATA2を第4データUDATA2にデランダマイズする。前述したように、擬似乱数シーケンスRSは、最後のシフトレジスタ21−4を除いた残りのシフトレジスタ21−1〜21−4のうちから如何なるシフトレジスタの出力が選択されるか否かによって決定される。
図8は、図5に示された擬似乱数発生器を含むランダマイザーの他の実施形態を示す。図8を参照すると、ランダマイザー120は、図5に示された擬似乱数発生器20の他の実施形態として具現された擬似乱数発生器20c、図5に示された組み合わせ回路200の他の例として具現された組み合わせ回路200B、及び変換回路50aを含む。
組み合わせ回路200Bは、擬似乱数発生器20cに含まれた複数のシフトレジスタ21−1〜21−4のそれぞれから出力された出力信号を受信し、第2パラメータMP2によって複数のシフトレジスタ21−1〜21−4のうちの少なくとも2つのシフトレジスタの出力信号を選択する選択動作及び/または前記選択された少なくとも2つのシフトレジスタの出力信号の組み合わせ方法を選択することができる。
第2パラメータMP2によって選択された前記組み合わせ方法は、モジュロ−P加算またはモジュロ−P乗算であり、Pは、2以上の自然数である。組み合わせ回路200Bは、前記選択動作及び/または前記組み合わせ方法によって決定された擬似乱数シーケンスRSを出力する。
例えば、第2パラメータMP2が5ビットであり、擬似乱数発生器20が4個のシフトレジスタを含み、第2パラメータMP2のMSB(Most Significant Bit)がモジュロ−P加算(例えば、MSBが1である場合)またはモジュロ−P乗算(例えば、MSBが0である場合)を選択し、擬似乱数シーケンスRSが二進シーケンスであり、第2パラメータMP2が11001である時、組み合わせ回路200Cは、4個のシフトレジスタのうちから最初のシフトレジスタの出力と最後のシフトレジスタの出力とをモジュロ−2加算することができる。
また、同じ条件で、第2パラメータMP2が01110である時、組み合わせ回路200Cは、4個のシフトレジスタのうちから最初のシフトレジスタから三番目のシフトレジスタの出力をモジュロ−2乗算することができる。
実施形態によって、第2パラメータMP2は、前述したパラメータMPと同じパラメータであり、パラメータMPと互いに異なるパラメータであり得る。しかし、第2パラメータMP2も、メモリ(例えば、揮発性メモリまたは不揮発性メモリ)に対するアクセス動作、例えば、リード動作、ライト動作、プログラム動作、またはイレーズ動作に必要なパラメータであり得る。
変換回路50aは、組み合わせ回路200Bから出力された擬似乱数シーケンスRSによって第1データUDATA1を第2データR_DATA1にランダマイズする。
図9は、図5に示された擬似乱数発生器を含むデランダマイザーの他の実施形態を示す。入出力されるデータUDATA2とR_DATA2の方向と、変換回路50bがランダマイズされた第3データR_DATA2から擬似乱数シーケンスRSをモジュロ減算して、第4データUDATA2を生成することを除けば、図8に示されたランダマイザー120の構造と図9に示されたデランダマイザー121の構造は、実質的に同一である。
モジュロ減算を行うことができる変換回路50bは、組み合わせ回路200Bから出力された擬似乱数シーケンスRSによってランダマイズされた第3データR_DATA2を第4データUDATA2にデランダマイズする。
図10は、図5に示された擬似乱数発生器を含むランダマイザーのさらに他の実施形態を示す。図10を参照すると、ランダマイザー130は、図5の擬似乱数発生器20のさらに他の実施形態による擬似乱数発生器20d、図5に示された組み合わせ回路200のさらに他の例として具現されたブール論理ゲート200C、及び変換回路50aを含む。図10には、説明の便宜上、ブール論理ゲート200CとしてXORゲートが例示的に示されている。実施形態によって、ブール論理ゲート200Cは、モジュロ−P加算またはモジュロ−P乗算を行うことができる他の組み合わせ回路に代替されうる。
ブール論理ゲート200Cは、擬似乱数発生器20dに含まれた複数のシフトレジスタ21−1〜21−4のうちから2つのシフトレジスタ21−1と21−3の出力信号をブール論理結合して、該結合の結果として擬似乱数シーケンスRSを出力する。
モジュロ加算を行うことができる変換回路50aは、ブール論理ゲート200Cから出力された擬似乱数シーケンスRSを用いて第1データUDATA1を第2データR_DATA1にランダマイズする。
図11は、図5に示された擬似乱数発生器を含むデランダマイザーのさらに他の実施形態を示す。入出力されるデータUDATA2とR_DATA2の方向と、変換回路50bがランダマイズされた第3データR_DATA2から擬似乱数シーケンスRSをモジュロ減算して、第4データUDATA2を生成することを除けば、図10に示されたランダマイザー130の構造と図11に示されたデランダマイザー131の構造は、実質的に同一である。変換回路50bは、ブール論理ゲート200Cから出力された擬似乱数シーケンスRSによってランダマイズされた第3データR_DATA2を第4データUDATA2にデランダマイズする。
図12は、図5に示された擬似乱数発生器を含むランダマイザーのさらに他の実施形態を示す。図12を参照すると、ランダマイザー140は、図5の擬似乱数発生器20のさらに他の実施形態である擬似乱数発生器20e、図5に示された組み合わせ回路200のさらに他の例として具現されたブール論理ゲート200D、及び変換回路50aを含む。図12には、説明の便宜上、ブール論理ゲート200DとしてXORゲートが例示的に示されている。実施形態によって、ブール論理ゲート200Dは、モジュロ−P加算またはモジュロ−P乗算を行うことができる他の組み合わせ回路に代替されうる。
ブール論理ゲート200Dは、擬似乱数発生器20eに含まれた複数のシフトレジスタ21−1〜21−4のうちから3つのシフトレジスタ21−1、21−3、及び21−4の出力信号をブール論理結合して、該結合の結果として擬似乱数シーケンスRSを出力する。
変換回路50aは、ブール論理ゲート200Dから出力された擬似乱数シーケンスRSによって第1データUDATA1を第2データR_DATA1にランダマイズする。
図13は、図5に示された擬似乱数発生器を含むデランダマイザーのさらに他の実施形態を示す。入出力されるデータUDATA2とR_DATA2の方向と、変換回路50bがランダマイズされた第3データR_DATAから擬似乱数シーケンスRSをモジュロ減算して、第4データUDATA2を生成することを除けば、図12に示されたランダマイザー140の構造と図13に示されたデランダマイザー141の構造は、実質的に同一である。変換回路50bは、ブール論理ゲート200Dから出力された擬似乱数シーケンスRSによってランダマイズされた第3データR_DATA2を第4データUDATA2にデランダマイズする。
図14は、図5に示された擬似乱数発生器を含むランダマイザーのさらに他の実施形態を示す。図14を参照すると、ランダマイザー150は、図5の擬似乱数発生器20のさらに他の実施形態である擬似乱数発生器20f、図5に示された組み合わせ回路200のさらに他の例として具現されたブール論理ゲート200E、及び変換回路50aを含む。図14には、説明の便宜上、ブール論理ゲート200EとしてXORゲートが例示的に示されている。実施形態によって、ブール論理ゲート200Eは、モジュロ−P加算またはモジュロ−P乗算を行うことができる他の組み合わせ回路に代替されうる。
ブール論理ゲート200Eは、擬似乱数発生器20fに含まれた複数のシフトレジスタ21−1〜21−4のいずれもの出力信号をブール論理結合して、該結合の結果として擬似乱数シーケンスRSを出力する。変換回路50aは、ブール論理ゲート200Eから出力された擬似乱数シーケンスRSによって第1データUDATA1を第2データR_DATA1にランダマイズする。
図15は、図5に示された擬似乱数発生器を含むデランダマイザーのさらに他の実施形態を示す。入出力されるデータUDATA2とR_DATA2の方向と、変換回路50bがランダマイズされた第3データR_DATA2から擬似乱数シーケンスRSをモジュロ減算して、第4データUDATA2を生成することを除けば、図14に示されたランダマイザー150の構造と図15に示されたデランダマイザー151の構造は、実質的に同一である。変換回路50bは、ブール論理ゲート200Eから出力された擬似乱数シーケンスRSによってランダマイズされた第3データR_DATA2を第4データUDATA2にデランダマイズする。
図16Aは、本発明の実施形態による擬似乱数発生器と変換回路とがデータ処理装置で具現された一実施形態を示す。1つのチップに具現可能なデータ処理装置300は、擬似乱数発生器20、変換回路50c、及びメモリ310を含む。擬似乱数発生器20は、前述した擬似乱数発生器20a、20b、20c、20d、20e、及び20fのうちの何れか1つとして具現可能である。
ライト(または、プログラム)動作の間に、変換回路50cは、擬似乱数発生器20から出力された擬似乱数シーケンスRSによって第1データUDATAi(iは、1)を第2データR_DATAi(iは、1)にランダマイズし、該ランダマイズされた第2データR_DATAiは、ライト回路を通じてメモリ310にライト(または、プログラム)される。リード動作の間に、変換回路50cは、メモリ310からリードされたランダマイズされた第3データR_DATAi(iは、2)を擬似乱数発生器20から出力された擬似乱数シーケンスRSによって第4データUDATAi(iは、2)にデランダマイズすることができる。
図16Bは、図16Aに示された変換回路の一実施形態を示すブロック図である。図16Aと図16Bとを参照すると、1つの擬似乱数発生器20を共有する変換回路50cは、第1変換回路50−1と第2変換回路50−2とを含む。
ライト動作の間に、ハイレベルを有するライトイネーブル信号WEによってイネーブルされた第1変換回路50−1は、擬似乱数シーケンスRSを用いて第1データUDATA1を第2データR_DATA1にランダマイズすることができる。リード動作の間に、ハイレベルを有するリードイネーブル信号REによってイネーブルされた第2変換回路50−2は、ランダマイズされた第3データR_DATA2を擬似乱数シーケンスRSを用いて第4データUDATA2にデランダマイズすることができる。
ライトイネーブル信号WEがハイレベルに変更される時点とリードイネーブル信号REがハイレベルに変更される時点とを適切に調節できるならば、前記ライト動作と前記リード動作は、互いに異なる時点に行われ、または同時に行われる。
第1変換回路50−1は、モジュロ加算を行うことができる変換回路50aとして具現可能であり、第2変換回路50−2は、モジュロ減算を行うことができる変換回路50bとして具現可能である。
図17は、本発明の実施形態による擬似乱数発生器と変換回路とがデータ処理装置で具現された他の実施形態を示す。データ処理装置400は、メモリ310と、メモリ310の動作を制御することができるコントローラ410とを含む。擬似乱数発生器20と変換回路50cは、メモリ310が集積されたチップと別個のチップとして具現されたコントローラ410に集積される。
ライト(または、プログラム)動作の間に、変換回路50cは、擬似乱数シーケンスRSを用いて第1データUDATAi(iは、1)を第2データR_DATAi(iは、1)をランダマイズし、該ランダマイズされた第2データR_DATAi(iは、1)をデータバスを通じてメモリ310に伝送する。リード動作の間に、変換回路50cは、メモリ310からリードされたランダマイズされた第3データR_DATAi(iは、2)を擬似乱数シーケンスRSを用いて第4データUDATAi(iは、2)にデランダマイズすることができる。
図18は、本発明の実施形態による擬似乱数発生器と変換回路とがデータ処理装置で具現されたさらに他の実施形態を示す。データ処理装置500は、メモリ310、メモリ310の動作を制御することができるコントローラ510、及びランダマイザー/デランダマイザー520を含む。
擬似乱数発生器20と変換回路50cとを含むランダマイザー/デランダマイザー520は、メモリ310とコントローラ510との間に具現可能である。この際、ランダマイザー/デランダマイザー520は、別個のチップとして具現可能である。したがって、ライト(または、プログラム)動作の間に、変換回路50cは、擬似乱数発生器20から出力された擬似乱数シーケンスRSを用いてコントローラ510から出力されたデータUDATAiをランダマイズし、該ランダマイズされたデータR_DATAiをメモリ310に伝送しうる。
リード動作の間に、変換回路50cは、メモリ310から出力されたランダマイズされたデータR_DATAiを擬似乱数発生器20から出力された擬似乱数シーケンスRSを用いてデランダマイズし、該デランダマイズされたデータUDATAiをコントローラ510に伝送しうる。
図19、図20、及び図21に示された各データ処理装置600、700、及び800は、ライト(または、プログラム)動作とリード動作とを同時に行うことができる構造を有する。
図19は、本発明の実施形態によるランダマイザーとデランダマイザーとがデータ処理装置で具現された一実施形態を示す。メモリ310、ランダマイザー610、及びデランダマイザー620は、1つのチップ601に集積されうる。ライト(または、プログラム)動作の間に、複数のランダマイザー100、110、120、130、140、及び150のうちの何れか1つとして具現可能なランダマイザー610は、各構成要素20a、200A、200B、200C、200D、または200Eから出力された擬似乱数シーケンスRSによって第1データUDATA1を第2データR_DATA1にランダマイズし、該ランダマイズされた第2データR_DATA1をメモリ310に伝送する。
それと同時に、リード動作の間に、複数のデランダマイザー101、111、121、131、141、及び151のうちの何れか1つとして具現可能なデランダマイザー620は、メモリ310から出力されたランダマイズされた第3データR_DATA2を各構成要素20a、200A、200B、200C、200D、または200Eから出力された擬似乱数シーケンスRSによって第4データUDATA2にデランダマイズする。
図20は、本発明の実施形態によるランダマイザーとデランダマイザーとがデータ処理装置で具現された他の実施形態を示す。データ処理装置700は、メモリ310と、メモリ310の動作を制御することができるコントローラ710とを含む。ランダマイザー710とデランダマイザー720は、コントローラ710に集積される。
ライト(または、プログラム)動作の間に、複数のランダマイザー100、110、120、130、140、及び150のうちの何れか1つとして具現可能なランダマイザー720は、各構成要素20a、200A、200B、200C、200D、または200Eから出力された擬似乱数シーケンスRSによって第1データUDATA1を第2データR_DATA1にランダマイズし、該ランダマイズされた第2データR_DATA1をメモリ310に伝送する。
それと同時に、リード動作の間に、複数のデランダマイザー101、111、121、131、141、及び151のうちの何れか1つとして具現可能なデランダマイザー730は、メモリ310から出力されたランダマイズされた第3データR_DATA2を各構成要素20a、200A、200B、200C、200D、または200Eから出力された擬似乱数シーケンスRSによって第4データUDATA2にデランダマイズする。
図21は、本発明の実施形態によるランダマイザーとデランダマイザーとがデータ処理装置で具現されたさらに他の実施形態を示す。データ処理装置800は、メモリ310、メモリ310の動作を制御することができるコントローラ810、及びランダマイザー/デランダマイザー820を含む。ランダマイザー/デランダマイザー820は、メモリ310とコントローラ810との間に具現される。
ライト(または、プログラム)動作の間に、複数のランダマイザー100、110、120、130、140、及び150のうちの何れか1つとして具現可能なランダマイザー830は、各構成要素20a、200A、200B、200C、200D、または200Eから出力された擬似乱数シーケンスRSによって、コントローラ810から出力された第1データUDATA1を第2データR_DATA1にランダマイズし、該ランダマイズされた第2データR_DATA1をメモリ310に伝送する。
それと同時に、リード動作の間に、複数のデランダマイザー101、111、121、131、141、及び151のうちの何れか1つとして具現可能なデランダマイザー840は、メモリ310から出力されたランダマイズされた第3データR_DATA2を各構成要素20a、200A、200B、200C、200D、または200Eから出力された擬似乱数シーケンスRSによって第4データUDATA2にデランダマイズし、該デランダマイズされた第4データUDATA2をコントローラ810に出力する。
図22は、本発明の一実施形態によるデータ処理装置の動作方法を示すフローチャートである。図1、図2、図4、図6、図7、及び図22を参照すると、擬似乱数発生器20は、複数のシフトレジスタ21−1〜21−4のうち、最後のシフトレジスタ21−4を除いた残りのシフトレジスタのうちの何れか1つのシフトレジスタを用いて擬似乱数シーケンスRSを発生させる(ステップS10)。
プログラム動作の間に、変換回路50aは、擬似乱数シーケンスRSを用いて第1データUDATA1を第2データR_DATA1にランダマイズする。リード動作の間に、変換回路50bは、擬似乱数シーケンスRSによってランダマイズされた第3データR_UDATA2を第4データUDATA2にデランダマイズする(ステップS20)。
図23は、本発明の他の実施形態によるデータ処理装置の動作方法を示すフローチャートである。図5、図8ないし図15、及び図23を参照すると、各組み合わせ回路200A、200B、200C、200D、及び200Eは、擬似乱数発生器20b、20c、20d、20e、及び20fに含まれた複数のシフトレジスタ21−1〜21−4のうちの少なくとも2つのシフトレジスタの出力信号を選択する選択動作及び/または前記少なくとも2つのシフトレジスタの出力信号の組み合わせ方法を用いて擬似乱数シーケンスRSを生成させる(ステップS110)。
プログラム動作の間に、変換回路50aは、擬似乱数シーケンスRSを用いて第1データUDATA1を第2データR_DATA1にランダマイズして、メモリ310に伝送する。リード動作の間に、変換回路50bは、擬似乱数シーケンスRSを用いてランダマイズされた第3データR_UDATA2を第4データUDATA2にデランダマイズする(ステップS120)。
実施形態によって、ライト(または、プログラム)動作の間に使われたパラメータとリード動作の間に使われたパラメータは、互いに同じパラメータであり、互いに異なるパラメータであり得る。
本明細書で示された前方向タップ(feedforward taps;Tj、0≦j≦m)は、gi(0≦i≦m)とは異なって、組み合わせ回路200に入力される加重値または係数を意味する。
本発明は、図面に示された一実施形態を参考にして説明されたが、これは例示的なものに過ぎず、当業者ならば、これより多様な変形及び均等な他実施形態が可能であるという点を理解できるであろう。したがって、本発明の真の技術的保護範囲は、特許請求の範囲の技術的思想によって決定されるべきである。
本発明は、データ処理装置に利用されうる。
20、20a、20b、20c、20d、及び20e:擬似乱数発生器
21−1〜21−4:シフトレジスタ
22:フィードバック多項式決定器
24:論理ゲートアレイ
30:多項式係数コントローラ
40:テーブル
50、50a、及び50b:変換回路
200:組み合わせ回路
200A:選択器

Claims (21)

  1. 直列接続された複数のシフトレジスタ(shift registers)を含む擬似乱数発生器と、
    テーブルに保存されたデータを参照して、擬似乱数のフィードバック多項式を決定するために、メモリアクセスパラメータ(memory access parameter)を擬似乱数発生器に伝送する多項式係数コントローラと、
    前記複数のシフトレジスタから最後のシフトレジスタを除いた残りのシフトレジスタのうちの何れか1つから出力される擬似乱数シーケンスを受信し、該受信された擬似乱数シーケンス(sequence)を用いて第1データを第2データに変換する変換回路と、を含むデータ処理装置。
  2. 前記擬似乱数発生器は、前記メモリアクセスパラメータによって、前記擬似乱数発生器のフィードバック多項式(feedback polynomial)を決定するフィードバック多項式決定器を含む請求項1に記載のデータ処理装置。
  3. 前記変換は、ランダマイズされた(randomized)前記第2データを得るために、前記第1データをランダマイズ(randomizing)することを含み、前記変換回路は、前記第1データと前記擬似乱数シーケンスとに対してモジュロ加算演算(modulo addition operation)を行う請求項2に記載のデータ処理装置。
  4. 前記変換は、デランダマイズされた(de−randomized)前記第2データを得るために、前記第1データをデランダマイズ(de−randomizing)することを含み、前記変換回路は、前記第1データと前記擬似乱数シーケンスとに対してモジュロ減算演算(modulo subtraction operation)を行う請求項2に記載のデータ処理装置。
  5. 前記擬似乱数発生器は、複数のブール論理ゲート(Boolean logic gates)を含み、前記メモリアクセスパラメータによって、前記擬似乱数シーケンスに相応する論理出力を決定する論理ゲートアレイ(logic gate array)を含む請求項1に記載のデータ処理装置。
  6. 前記メモリアクセスパラメータは、ワードラインアドレス(word line address)またはビットラインアドレス(bit line address)である請求項2に記載のデータ処理装置。
  7. 前記メモリアクセスパラメータのメモリが、複数のページ(pages)を含むブロック(block)を含むフラッシュメモリ(flash memory)である時、
    前記メモリアクセスパラメータは、ブロックアドレス(block address)、ページアドレス(page address)、ワードラインアドレス、ビットラインアドレス、前記メモリのチップID(chip Identification)、プログラム回数(program count)、及びイレーズ回数(erase count)のうちの少なくとも1つである請求項2に記載のデータ処理装置。
  8. 前記擬似乱数発生器は、フィボナッチ線形フィードバック(Fibonacci linear feedback)擬似乱数発生器、ガロア(Galois)線形フィードバック擬似乱数発生器、フィボナッチ非線形フィードバック擬似乱数発生器、及びガロア非線形フィードバック擬似乱数発生器のうちの何れか1つである請求項2に記載のデータ処理装置。
  9. 直列接続された複数のシフトレジスタを含む擬似乱数発生器と、
    テーブルに保存されたデータを参照して、擬似乱数のフィードバック多項式を決定するために、メモリアクセスパラメータ(memory access parameter)を擬似乱数発生器に伝送する多項式係数コントローラと、
    前記複数のシフトレジスタのうちの少なくとも2つのシフトレジスタの出力信号を組み合わせる組み合わせ回路と、
    前記組み合わせ回路から出力された擬似乱数シーケンスを受信し、該受信された擬似乱数シーケンスを用いて第1データを第2データに変換する変換回路と、を含むデータ処理装置。
  10. 前記擬似乱数発生器は、前記メモリアクセスパラメータによって、前記擬似乱数発生器のフィードバック多項式を決定するフィードバック多項式決定器を含む請求項9に記載のデータ処理装置。
  11. 前記変換は、ランダマイズされた前記第2データを得るために、前記第1データをランダマイズすることを含み、前記変換回路は、前記第1データと前記擬似乱数シーケンスとに対してモジュロ加算演算を行う請求項10に記載のデータ処理装置。
  12. 前記変換は、デランダマイズされた前記第2データを得るために、前記第1データをデランダマイズすることを含み、前記変換回路は、前記第1データと前記擬似乱数シーケンスとに対してモジュロ減算演算を行う請求項10に記載のデータ処理装置。
  13. 前記擬似乱数発生器は、複数のブール論理ゲートを含み、前記メモリアクセスパラメータによって、前記擬似乱数シーケンスに相応する論理出力を決定する論理ゲートアレイを含む請求項9に記載のデータ処理装置。
  14. 前記組み合わせ回路は、前記メモリアクセスパラメータによって、前記複数のシフトレジスタのうち、前記少なくとも2つのシフトレジスタの出力信号を選択的に組み合わせる請求項9に記載のデータ処理装置。
  15. 前記組み合わせ回路は、前記メモリアクセスパラメータによって、前記少なくとも2つのシフトレジスタの出力信号を組み合わせるための第1動作と第2動作とのうちの少なくとも1つを選択し、
    前記第1動作は、モジュロ−P加算(Modulo−P addition)であり、
    前記第2動作は、モジュロ−P乗算(Modulo−P multiplication)であり、Pは、2以上の自然数である請求項9に記載のデータ処理装置。
  16. 前記メモリアクセスパラメータは、ワードラインアドレスまたはビットラインアドレスである請求項10に記載のデータ処理装置。
  17. 前記メモリアクセスパラメータのメモリが、複数のページを含むブロックを含むフラッシュメモリである時、
    前記メモリアクセスパラメータは、ブロックアドレス、ページアドレス、ワードラインアドレス、ビットラインアドレス、前記メモリのチップID、プログラム回数、及びイレーズ回数のうちの少なくとも1つである請求項10に記載のデータ処理装置。
  18. メモリと、
    直列接続された複数のシフトレジスタを含む擬似乱数発生器と、
    テーブルに保存されたデータを参照して、擬似乱数のフィードバック多項式を決定するために、メモリアクセスパラメータ(memory access parameter)を擬似乱数発生器に伝送する多項式係数コントローラと、
    前記複数のシフトレジスタから最後のシフトレジスタを除いた残りのシフトレジスタのうちの何れか1つから出力される擬似乱数シーケンスを用いて、前記メモリに保存される第2データを得るために、第1データをランダマイズするランダマイザーと、
    デランダマイズされた第4データを得るために、前記メモリから出力された第3データを前記擬似乱数シーケンスを用いてデランダマイズするデランダマイザーと、を含むデータ処理装置。
  19. 前記擬似乱数発生器は、前記第2データと前記第3データのそれぞれのメモリアクセスパラメータによって、前記擬似乱数発生器のフィードバック多項式を決定するフィードバック多項式決定器を含む請求項18に記載のデータ処理装置。
  20. メモリと、
    直列接続された複数のシフトレジスタを含む擬似乱数発生器と、
    テーブルに保存されたデータを参照して、擬似乱数のフィードバック多項式を決定するために、メモリアクセスパラメータ(memory access parameter)を擬似乱数発生器に伝送する多項式係数コントローラと、
    前記複数のシフトレジスタのうちの少なくとも2つのシフトレジスタの出力信号を組み合わせる組み合わせ回路と、
    前記組み合わせ回路から出力された擬似乱数シーケンスを用いて、前記メモリに保存される第2データを得るために、第1データをランダマイズするランダマイザーと、
    デランダマイズされた第4データを得るために、前記メモリから出力された第3データを前記擬似乱数シーケンスを用いてデランダマイズするデランダマイザーと、を含むデータ処理装置。
  21. 前記組み合わせ回路は、前記第2データと前記第3データのそれぞれのメモリアクセスパラメータによって、前記少なくとも2つのシフトレジスタの出力信号を組み合わせるための第1動作と第2動作とのうちの少なくとも1つを選択し、
    前記第1動作は、モジュロ−P加算であり、前記第2動作は、モジュロ−P乗算であり、Pは、2以上の自然数である請求項20に記載のデータ処理装置。
JP2012148312A 2011-06-30 2012-07-02 データ処理装置及びその動作方法 Active JP6061523B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020110065195A KR101818441B1 (ko) 2011-06-30 2011-06-30 데이터 처리 장치 및 이의 동작 방법
KR10-2011-0065195 2011-06-30

Publications (2)

Publication Number Publication Date
JP2013016173A JP2013016173A (ja) 2013-01-24
JP6061523B2 true JP6061523B2 (ja) 2017-01-18

Family

ID=47391714

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012148312A Active JP6061523B2 (ja) 2011-06-30 2012-07-02 データ処理装置及びその動作方法

Country Status (3)

Country Link
US (1) US9158500B2 (ja)
JP (1) JP6061523B2 (ja)
KR (1) KR101818441B1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101987141B1 (ko) * 2013-03-04 2019-10-01 삼성전자주식회사 난수 발생기
JP2014222394A (ja) * 2013-05-13 2014-11-27 株式会社東芝 半導体記憶装置および乱数発生器
KR102244617B1 (ko) * 2014-03-13 2021-04-26 삼성전자 주식회사 논리 정보와 물리 정보를 이용하여 데이터를 처리할 수 있는 장치와 방법
US10217498B2 (en) * 2016-09-12 2019-02-26 Qualcomm Incorporated Techniques for preventing tampering with PROM settings
US20190193760A1 (en) * 2017-12-21 2019-06-27 General Electric Company Locomotive control system
CN108717353B (zh) * 2018-05-24 2021-04-06 太原理工大学 一种具有检测校正功能的真随机数产生方法与装置
KR102423479B1 (ko) * 2022-01-24 2022-07-21 유호전기공업주식회사 의사랜덤데이터를 이용한 고정확도의 온도 판독장치 및 그 방법
KR102423481B1 (ko) * 2022-01-24 2022-07-21 유호전기공업주식회사 의사랜덤데이터를 이용한 고정확도의 saw 온도센서 시스템을 구비한 수배전반
KR102423480B1 (ko) * 2022-01-24 2022-07-21 유호전기공업주식회사 의사랜덤데이터를 이용한 고정확도의 saw 온도센서 시스템

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3580679D1 (de) * 1984-02-06 1991-01-03 British Broadcasting Corp Binaere pseudo-zufalls-reihengeneratoren.
US4748585A (en) * 1985-12-26 1988-05-31 Chiarulli Donald M Processor utilizing reconfigurable process segments to accomodate data word length
JPH04362809A (ja) * 1991-06-10 1992-12-15 Sony Corp ランダム系列発生装置
US5931968A (en) * 1996-02-09 1999-08-03 Overland Data, Inc. Digital data recording channel
JPH11224183A (ja) * 1998-02-05 1999-08-17 Toyo Commun Equip Co Ltd 擬似乱数発生装置
JP3587675B2 (ja) * 1998-02-18 2004-11-10 富士通株式会社 擬似雑音発生装置
JP3556461B2 (ja) * 1998-03-18 2004-08-18 富士通株式会社 M系列の位相シフト係数算出方式
US6282181B1 (en) * 1998-04-24 2001-08-28 Ericsson Inc Pseudorandom number sequence generation in radiocommunication systems
JPH11340799A (ja) * 1998-05-28 1999-12-10 Oki Electric Ind Co Ltd M系列発生回路、m系列の発生方法及びpn系列発生回路
JP3533956B2 (ja) 1998-09-04 2004-06-07 馨 黒澤 擬似乱数発生装置
WO2001050239A1 (en) * 1999-12-30 2001-07-12 Morphics Technology, Inc. Apparatus and method for calculating and implementing a fibonacci mask for a code generator
US6834291B1 (en) * 2000-10-27 2004-12-21 Intel Corporation Gold code generator design
JP2003016738A (ja) * 2001-04-24 2003-01-17 Victor Co Of Japan Ltd 記録情報信号のスクランブル方法及びスクランブル回路
DE10216240A1 (de) * 2002-04-12 2003-10-30 Infineon Technologies Ag Verfahren und Vorrichtung zur Berechnung eines iterierten Zustands einer rückgekoppelten Schieberegisteranordnung
US7398287B2 (en) * 2002-08-19 2008-07-08 Analog Devices, Inc. Fast linear feedback shift register engine
US7643632B2 (en) * 2004-02-25 2010-01-05 Ternarylogic Llc Ternary and multi-value digital signal scramblers, descramblers and sequence generators
KR100585119B1 (ko) * 2004-01-07 2006-06-01 삼성전자주식회사 암호화 장치, 암호화 방법 및 그 기록매체
DE102004013480B4 (de) * 2004-03-18 2013-01-24 Infineon Technologies Ag Zufallszahlengenerator und Verfahren zum Erzeugen von Zufallszahlen
EP1748357A1 (en) * 2005-07-27 2007-01-31 Agilent Technologies, Inc. Noise signal generation by mapping random words
JP4911452B2 (ja) * 2006-06-27 2012-04-04 株式会社メガチップス 半導体メモリ及びデータ授受システム
JP2008141284A (ja) 2006-11-30 2008-06-19 Fujitsu Ltd スクランブラ及びこれを適用した記憶装置
US8848913B2 (en) * 2007-10-04 2014-09-30 Qualcomm Incorporated Scrambling sequence generation in a communication system
JP5019611B2 (ja) * 2007-12-27 2012-09-05 株式会社東芝 メモリシステム
US8560587B2 (en) * 2008-05-22 2013-10-15 Red Hat, Inc. Non-linear mixing of pseudo-random number generator output
KR20110055178A (ko) * 2009-11-19 2011-05-25 삼성전자주식회사 플래시 메모리 장치 및 그것을 포함한 메모리 시스템

Also Published As

Publication number Publication date
KR20130003709A (ko) 2013-01-09
US20130007081A1 (en) 2013-01-03
JP2013016173A (ja) 2013-01-24
KR101818441B1 (ko) 2018-01-16
US9158500B2 (en) 2015-10-13

Similar Documents

Publication Publication Date Title
JP6061523B2 (ja) データ処理装置及びその動作方法
US9400750B2 (en) Nonvolatile memory device and nonvolatile memory system and random data read method thereof
US9268531B1 (en) Nonvolatile memory system, storage device and method for operating nonvolatile memory device
JP6202972B2 (ja) メモリシステム及びそれの読み出し校正方法
US10228862B2 (en) Capacity-aware wear leveling in solid-state storage devices
JP6284351B2 (ja) メモリ制御器及びそれを含むメモリシステム
US8417879B2 (en) Method for suppressing errors, and associated memory device and controller thereof
US9298613B2 (en) Integrated circuit for computing target entry address of buffer descriptor based on data block offset, method of operating same, and system including same
US10162750B2 (en) System address reconstruction
WO2019231533A1 (en) Logical-to-physical data structures
CN108073523A (zh) 算术电路及半导体器件
US10698839B2 (en) Seed scrambling
WO2022185089A1 (en) Methods and systems for managing memory with dynamic ecc protection
US9672105B2 (en) Device and method for processing data using logical information and physical information
US11928077B2 (en) Data processing circuit, data storage device including the same, and operating method thereof
CN117149059A (zh) 非易失性存储器装置中的功率高效码字加扰
TWI684856B (zh) 解碼方法及相關的快閃記憶體控制器與電子裝置
US20130227213A1 (en) Memory controller and operation method thereof
KR20190138143A (ko) 패리티 체크 행렬 생성 장치, 그것의 동작 방법 및 그것에 의해 생성된 패리티 체크 행렬을 사용하는 에러 정정 회로
JP2011150774A (ja) 多次元のメモリ状態により特徴付けられる記憶された多ビットのデータ
Namba et al. A coding scheme for write time improvement of phase change memory (PCM) systems
KR20160104389A (ko) 데이터 저장 장치 및 그것의 동작 방법
WO2023067367A1 (en) Ecc power consumption optimization in memories
KR20230124453A (ko) 동형암호 연산 가속기 및 그것의 동작 방법

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20141226

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150626

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160628

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160928

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161213

R150 Certificate of patent or registration of utility model

Ref document number: 6061523

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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