JP2012238312A - 読み出し専用メモリを有する情報処理装置及び読み出し専用メモリをパッチングするための方法 - Google Patents

読み出し専用メモリを有する情報処理装置及び読み出し専用メモリをパッチングするための方法 Download PDF

Info

Publication number
JP2012238312A
JP2012238312A JP2012108522A JP2012108522A JP2012238312A JP 2012238312 A JP2012238312 A JP 2012238312A JP 2012108522 A JP2012108522 A JP 2012108522A JP 2012108522 A JP2012108522 A JP 2012108522A JP 2012238312 A JP2012238312 A JP 2012238312A
Authority
JP
Japan
Prior art keywords
memory
processor
read
data
vector
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.)
Pending
Application number
JP2012108522A
Other languages
English (en)
Inventor
Naccache David
ダヴィド・ナッカシュ
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.)
Crocus Technology SA
Original Assignee
Crocus Technology SA
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 Crocus Technology SA filed Critical Crocus Technology SA
Publication of JP2012238312A publication Critical patent/JP2012238312A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/66Updates of program code stored in read-only memory [ROM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Hall/Mr Elements (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

【課題】プロセッサによって実行可能なプログラムを有する読み出し専用メモリが、アドレスバスに接続された連想メモリ装置と一緒に、その内部情報に基づいて、前記プロセッサによって要求されたアドレスをアドレスのベクトルの要素と比較することによってパッチングされる。
【解決手段】一致検出に適した当該操作は、このベクトルの全ての要素に対して同時に実行され、一般には1クロックサイクル未満内に実行される。一致が発見されたときに、前記連想メモリ装置160が、フラッシュメモリから代わりの機械コード要素を修正するために使用される変更アドレスを出力する。この代わりの機械コード要素が、前記読み出し専用メモリ120内のアドレス付けされた1つの機械コード要素の代わりに前記プロセッサ170に提供される。このパッチング方法は、全体的に透過性であり、オーバーヘッドがほとんどなく、且つ際立ったグラニュラリティを有する。
【選択図】図1

Description

本発明は、プログラム命令又はデータを有する読み出し専用メモリと、この読み出し専用メモリ内に記憶されたプログラム又はデータを修正するパッチ命令を有する第2メモリとを備える情報処理装置に関する。また、本発明は、読み出し専用メモリをパッチングする方法にする。
情報処理装置は、一般にはプロセッサとこのプロセッサによって実行されるプログラムが記憶されているデジタルメモリとを有する。当該プログラムは、例えば、プロセッサによってフェッチされて実行され得る実行可能な命令を有してもよく又はプロセッサの所定の関数を実行するためにこのプロセッサによって必要とされるデジタルデータを有してもよい。様々な形態のデジタル記憶装置が、入手可能であり且つ情報処理装置内で使用される。読み出し専用メモリ(ROM)は、読み出しを可能にするものの、この読み出し専用メモリが記憶するデータを変更しない。
マスクROMが、当該マスクROM内に永久に記憶される希望するデータと一緒に通常は製造され、大量生産されたときに非常に安価である利点を提供する。この理由のために、読み出し専用メモリは、永久的なファームウェアを有しなければならない多くのスマートカードチップ又はその他の情報処理装置で使用される。しかしながら、最終の読み出し専用メモリが大量に生産された後に、避けがたいプログラムの誤りを修正するため又はその他の理由のために、記憶されたプログラム及びデータの一部を変更することが一般に必要である。
それ故に、読み出し専用メモリをパッチングする幾つかの方法及び装置が開発されている。これらの方法及び装置では、最初の読み出し専用メモリ内に格納された命令が、プログラムの実行中にこの読み出し専用メモリから独立した再書き込み可能なメモリ(大抵は、フラッシュメモリ)内に格納された命令と交換される。
決定された命令セットが読み出し専用メモリ内に記憶されている通りに実行されるかどうかを実行時間に確認するため、すなわちパッチングされた命令と交換するため、多くの公知のパッチング方法は、読み出し専用メモリをマスクする時に予防的な特別のソフトウェア命令を追加することに依存している。
例えば、公知のパッチングシステムが、関数check(x)に対する自動呼出しを各関数の最初に挿入してもよい。挿入された関数check(x)が、引数xと一緒にハードコード化されている場合、当該check(x)は、埋め込まれた関数を意味する。この関数check(x)は、その引数xがパッチメモリ内の間接テーブルの1つの項目に一致するかどうかを検索し、ヒットされたならば、当該実行をフラッシュメモリ内のパッチルーチンのアドレスに変更させ、ヒットされなかったときは、呼び出し側に戻される。このフラッシュメモリの当該項目アドレスは、間接テーブル内に記憶されている。
上記の公知の機構は、読み出し専用メモリをマスクした後にバグがコードの任意の特別な関数で発見されたときに当該実行を変更することを可能にする。これらの技術及び類似の技術の例が、例えば国際公開第2009156790号パンフレット、米国特許第6260157号明細書又は当該明細書中の参考文献で見つけることができる。しかしながら、当該パッチング方法には、幾つかの欠点がある:このパッチング方法は、自動呼出しを関数check(x)に挿入するための特に複雑な方法を要求する;関数check(x)に対する余分の呼び出しと、パッチングが実行されなくても間接テーブルの確認中に費やされる余分のサイクルとに起因して、このパッチング方法は、コードサイズを増大させ、性能劣化を引き起こす。上記の事項に関連して、当該方法の粒度(グラニュラリティ)が、必然的にかなり粗い:バグが発生すると、全ての関数が、フラッシュメモリ内で再書き込みされなければならない。
国際公開第2009156790号パンフレット 米国特許第6260157号明細書 米国特許第7596721号明細書 米国特許公開第2010110744号明細書 欧州特許第2270812号明細書 国際公開第9854639号パンフレット 米国特許公開第2006174244号明細書 欧州特許第2204814号明細書 米国特許第6950335号明細書
したがって、上述した欠点を有さないパッチング方法及び対応する情報処理装置が必要である。特に、複雑で特殊なツールに依存せず、且つ、パッチングが実行されないときにコードを増大させることなしに又はプログラムの実行を遅くすることなしに、特定のアセンブリ命令又は当該アセンブリ命令のグループをパッチングすることを可能にする方法及び装置が必要である。
米国特許第7596721号明細書は、オーバーヘッドを回避しつつ埋め込まれた読み出し専用メモリのファームウェアに対してパッチングを提供するための方法及び構成を記し且つ連想メモリの使用に言及している。米国特許公開第2010110744号明細書及び欧州特許第2270812号明細書は、三値連想磁気ランダムアクセスメモリを記す。国際公開第9854639号パンフレットは、連想メモリを使用するソフトウェアパッチを記す。米国特許公開第2006174244号明細書は、連想メモリを通じてファームウェアに制御を移行させることを可能にする方法を記す。
この課題は、本発明により、特許請求の範囲に記載の対象によって解決され、特に、実行可能な命令又はデータを有する読み出し専用メモリ120と、前記読み出し専用メモリ120をアドレス付け可能であり且つバス28,48を通じて前記実行可能な命令又はデータをフェッチ可能であるプロセッサ170と、前記バスに接続され且つ前記プロセッサ170によって要求されたアドレスをパッチングすべき複数のアドレスのベクトルxと比較するために配置されている連想メモリ160とを備える情報処理装置であって、前記プロセッサによって要求されたアドレスが、前記ベクトルxの要素うちの1つの要素に一致したときに、読み出し専用メモリの、前記プロセッサ170によってアドレス付けされた実行可能な1つの命令又はデータの場所内の代わりに実行可能な1つの命令又はデータを、前記プロセッサに提供する当該情報処理装置によって解決され、且つ、対応する方法によって解決される。
本発明に係る情報処理装置を簡略化した形態で示す。 本発明の実施の形態で使用される磁気ランダムアクセスメモリに基づく連想メモリを示す。 本発明の実施の形態で使用される磁気ランダムアクセスメモリに基づく連想メモリを示す。
本発明は、例によって与えられ且つ図面によって示された実施の形態の説明の助けでより良好に理解される。
図1によれば、本発明の実施の形態は、プロセッサ170を備えたスマートカード(ICカード)を有する。このプロセッサ170は、読み出し専用メモリ120内に固定記憶されたソフトウェアを実行する。マスクROMの非常に適したコストに起因して、このマスクROMが、当該状況で選択される。
従来の方法では、プロセッサ170が、アドレスバス25を通じて読み出し専用メモリ120をアドレス付けし、対応する命令又は命令要素を命令/データバス28上でフェッチする。本発明は、プログラム命令及びデータ用の1つの外部記憶装置を有するプロセッサ(フォン・ノイマン・アーキテクチャー)と独立したプログラムメモリとデータメモリとを有するシステム(ハーバード・アーキテクチャー)との双方に対して適応され得る。以下の例は、実行可能な命令のパッチングを扱う。しかし、本発明のシステム及び方法は、データのパッチングにも適合され且つ属され得る点が理解される必要がある。
アドレスバス25上で書き込まれたアドレスが、読み出し専用メモリ120に加えて連想メモリ(Content-Addressable-Memory)装置160に提供される。この連想メモリ装置160は、パッチングされなければならない当該読み出し専用メモリ内のアドレスのベクトルを記憶する。本発明によれば、当該連想メモリ装置は、磁気ランダムアクセスメモリに基づいた連想メモリ(MRAM−CAM)である。ワードのアドレスに基づいてこのワードにアクセスするランダムアクセスメモリとは違って、連想メモリは、ワードの内容に基づいてこのワードにアクセスする。連想メモリが、従来のランダムアクセスメモリと同様な方法でデータを記憶する。しかしながら、連想メモリを「読み出すこと」は、一致するアドレスが出力され得るように、一致すべき入力データを提供し、次いで当該一致のためにこの連想メモリを検索することを含む。ユーザーが1つのデータワードを供給し、そのデータワードが連想メモリの内のどこに記憶されているかを知るために、当該連想メモリがそのメモリ全体を同時に検索するように、この連想メモリは構成されている。当該データワードが発見された場合は、この連想メモリは、当該データワードが発見された1つ以上の記憶アドレスのリストを戻す。
磁気ランダムアクセスメモリに基づく連想メモリは、特に本出願人に付与された欧州特許第2204814号明細書中に記載されている。この連想メモリの全体が、当該明細書中に記載されている。さらなる情報のためには、閲覧者は、この明細書を入手のこと。
図2及び3は、本発明の連想メモリ装置に適する磁気ランダムアクセスメモリセル10を概略的に示す。当該磁気ランダムアクセスメモリに基づく連想メモリセル10は、記憶層23と感知層21との間に配置された絶縁層22によって形成された磁気トンネル接合20を有する。好ましくは、記憶層23は、強磁性材料から作製される一方で、感知層は、低い飽和保磁力の軟磁性材料から作製される。好ましくは、磁気ランダムアクセスメモリセル10は、記憶層23の下に反強磁性のピニング層24も有する。
磁気ランダムアクセスメモリに基づく連想メモリセル10の書き込み操作は、例えば米国特許第6950335号明細書中に記されているように熱アシストされるスイッチング法(TAS)に基づく。当該書き込みは、選択トランジスタ60をオンにして加熱電流31のパルスをトンネル接合20に通電させるために、電流51をフィールド線50中に通電し、同時にワード線70を通電させることによって達成される。したがって、当該磁気接合の温度が、所定の高温閾値で上昇する一方で、当該磁気接合が、フィールド線50中の電流51によって生成された磁場に曝される。当該所定の高温閾値では、記憶層23の磁化が、磁場内で整合され得る。次いで、トンネル接合20が、接合電流パルス31を抑制することによって低温閾値に向かって冷却される。その結果、記憶層23の磁化が、磁化の方向及び界磁電流の極性に応じて「1」又は「0」として一般に示される新たに記憶された論理状態に固定される。
上述した方法の代わりに、当該書き込みが、外部磁場に依存しないスピン偏極した磁流(STTスイッチングつまりスピン注入スイッチング)によって若しくは電流誘導磁化スイッチング(CIMS)法によって又はその他の任意の方法によって実行され得る。これらのバリエーションも、本発明の範囲内で構成される。
磁気ランダムアクセスメモリに基づく連想メモリセル10の検索操作中では、検索ビットが、フィールド線50を通じて感知層21に提供される。当該読み出し操作中にこのフィールド線50中で循環する電流が、感知層21の極性を変更するために十分であるものの、記憶層23の極性を変更するには十分でない磁場を発生させる。次いで、感知層21の磁化方向が、磁気トンネル接合20の抵抗を測定することによって当該記憶層の磁化方向と比較される。低抵抗は、記憶層の分極と感知層の分極とが平行であること、したがってこれらの双方が「1」又は「0」を有することを示す。その一方で、「1」及び「0」の場合では、高抵抗が測定される。磁気ランダムアクセスメモリに基づく連想メモリセル10が、追加の構成要素なしに、記憶されたビットと検索ビットとのXNOR(否定排他的論理和)を本質的に実現することが分かる。当該連想メモリセル10の構造を複製することによって、1つの検索パターンを多数のキーと適切に且つ同時に比較することができる連想メモリ装置を実現することが可能である。一致検出に適した当該操作は、非常に速く、一般にマイクロプロセッサの1クロックサイクル内で実行される。
本発明の磁気ランダムアクセスメモリに基づく連想メモリセルは、第1フィールド線50の方向に対して垂直の方向に沿って記憶層又は感知層を分極させるために使用される第2フィールド線40をオプションで有してもよい。好ましくは、このことは、「0」及び「1」のほかの第3論理値「X」を許容する三値連想メモリ装置(TCAM)の実現を可能にする。この第3論理値は、ワイルドカード値として処理される。記さなかったバリエーションによれば、当該連想メモリ装置は、各々が2つのトンネル接合を有する異なるセルを使用してもよい。
記さなかった実施の形態では、当該三値連想メモリ装置は、欧州特許出願第11290150号明細書の下で本出願人によって出願された未公開欧州特許出願中に記されたような、いわゆる「双方向結合」を有し得る。さらに、当該双方向結合三値連想メモリの磁気トンネル接合20が、第2記憶層と、感知層21とこの第2記憶層との間に形成された第2トンネル障壁層とから構成される。この第2記憶層は、第2高温閾値で任意に指向され得て、一般に低温閾値より低い磁化を呈する。このとき、当該論理値「X」は、2つの記憶層21の磁化を反平行に指向させることによって達成され得る。
図1を再び参照すると、アドレスバス25上に存在するアドレスが、連想メモリ装置160の入力部にも供給され、この連想メモリ装置内に記憶された複数の記憶アドレス(x)のベクトルと比較される。当該アドレスバス25上に存在するアドレスが、これらの記憶アドレスのうちのいずれにも一致しない場合は、連想メモリ装置が割り込まず、操作の処理が通常通りに続く:プロセッサが、命令/データバス28を通じて読み出し専用メモリ120内に格納されたアドレス付けされた命令又は命令要素をフェッチし、このアドレス付けされた命令又は命令要素を実行する。
一方で、アドレスバス25上に存在するアドレスが、記憶アドレスxのうちの1つの記憶アドレスに一致した場合は、連想メモリ装置が、割込み26をプロセッサ28に発行するか(又は発行されるべき割込みを引き起こす)。結果として、命令/データバス28中に存在する機械コード要素が読み出されない。同時に、連想メモリ装置160が、その記憶アドレスxに対応する変更アドレスyを出力し(例えば、xは、変更アドレスyを訂正するための、連想メモリ装置160内のアドレスキーとして使用される)、この変更アドレスは、パッチメモリ220内の1つのメモリ位置を選択するために使用される。このパッチメモリ220は、好ましくは不揮発性の記憶装置、例えばフラッシュメモリであるものの、磁気ランダムアクセスメモリでもよい。別の実施の形態では、当該チェックインプレイス連想メモリ装置160及びパッチメモリ220が、単一のユニット内に組み込まれてもよい。記憶アドレスxのうちの1つの記憶アドレスに一致した場合に、このユニットは、代わりの1つの機械コード要素のアドレスではなくて、当該代わりの1つの機械コード要素の値を直接に出力する。
次いで、当該パッチングされた機械コード要素が、プロセッサの、最初にアドレス付けされた場所(矢印48)に提供される。この時点では、割込み26が、不活動状態である。あたかも読み出し専用メモリが、十分に透過性に当該パッチングされた機械コード要素を最初から有していたかのように、プロセッサ170が、プログラムの実行を再開する。
当該技術に関すれば、提唱した解決手段は、バグが修正されないときはコードの増大又は性能ペナルティーを引き起こさず、複雑で特殊なツールを必要としない。バグがパッチングされるときは、性能に関するオーバーヘッドが最小であり、最初の命令を放棄するための1クロックサイクルの損失が減少する。さらに、当該提唱された方法の粒度(グラニュラリティ)が極めて細かい。要求されるならば、全ての関数を再書き込みすることの必要なしに、単一の機械コード要素が変更され得る。磁気ランダムアクセスメモリの不揮発性に起因して、ベクトルx,yが、電力なしに永久に保持される。
本発明の提唱された磁気ランダムアクセスメモリに基づく連想メモリは、電力消費、密度及びコストに関して極めて効率が良く、当該連想メモリ自体が、小型化された装置、低電力装置及びスマートカードのパッチングに特に適している。この場合の磁気ランダムアクセスメモリ装置の別の利点は、不揮発性であることである:ベクトルx及びyが、一度プログラミングされると、これらのベクトルx及びyは、電力なしでも永久に保持される。
ROM命令中のアドレス
DRAMパッチメモリ中のアドレス
10 磁気ランダムアクセスメモリに基づく連想メモリセル、磁気ランダムアクセスメモリセル
20 磁気トンネル接合
21 感知層
22 絶縁層
23 記憶層
24 ピニング層
25 アドレスバス
26 割込み
28 命令/データバス
31 加熱電流
38 第2メモリのアドレス付け
40 第2フィールド線
48 パッチ命令
50 第1フィールド線
51 電流
60 選択トランジスタ
70 ワード線
120 読み出し専用メモリ
160 チェックインプレイス連想メモリ装置
170 プロセッサ
220 パッチメモリ

Claims (7)

  1. 実行可能な命令又はデータを有する読み出し専用メモリと、前記読み出し専用メモリをアドレス付け可能であり且つバスを通じて前記実行可能な命令又はデータをフェッチ可能であるプロセッサと、前記バスに接続され且つ前記プロセッサによって要求されたアドレスをパッチングすべき複数のアドレスのベクトルと比較するために配置されている連想メモリとを備える情報処理装置であって、前記プロセッサによって要求されたアドレスが、前記ベクトルの要素のうちの1つの要素に一致したときに、前記読み出し専用メモリの、前記プロセッサによってアドレス付けされた実行可能な1つの命令又はデータの場所内の代わりに実行可能な1つの命令又はデータを、前記プロセッサに提供する当該情報処理装置において、
    前記連想メモリ装置は、複数の磁気ランダムアクセスメモリセルから構成される1つの磁気ランダムアクセスメモリ装置であり、各磁気ランダムアクセスメモリセルが、少なくとも1つの磁気トンネル接合を有する、当該情報処理装置。
  2. 前記連想メモリ装置は、前記プロセッサによって要求されたアドレスが、パッチングされるべきアドレスのベクトルの要素のうちの1つの要素に一致したときに、前記プロセッサによってアドレス付けされたデータの実行可能な命令の読み出しを阻止するように、このプロセッサに割り込むために配置されている、請求項1に記載の情報処理装置。
  3. 前記情報処理装置は、パッチングされた命令又はデータを有する第2メモリを備え、
    前記連想メモリ装置が、パッチングされるべきアドレスのベクトルの各要素に対して、代わりに実行可能な命令又はデータの、第2メモリ内のアドレスを記憶するターゲットベクトルを有する、請求項1に記載の情報処理装置。
  4. 前記情報処理装置は、スマートカードに属する、請求項1に記載の情報処理装置。
  5. プロセッサによってアクセス可能な読み出し専用メモリ内の実行可能な命令又はデータをパッチングする方法であって、当該方法は、
    前記読み出し専用メモリ内でパッチングされなければならない磁気ランダムアクセスメモリセルのアドレスのベクトルを記憶する連想メモリ装置を提供するステップと、
    前記読み出し専用メモリ内の実行可能な命令又はデータのアドレスを、前記連想メモリ装置内に記憶されたベクトルの要素と比較するステップとを有し、
    前記プロセッサによって要求されたアドレスが、パッチングされるべきアドレスの前記ベクトル内の要素のうちの1つの要素に一致したときに、前記読み出し専用メモリの、前記プロセッサによってアドレス付けされた実行可能な1つの命令又はデータの場所内の代わりに実行可能な1つの命令又はデータを、前記プロセッサに提供する当該方法において、
    前記連想メモリ装置は、複数の磁気ランダムアクセスメモリセルから構成される1つの磁気ランダムアクセスメモリ装置、特に1つの磁気ランダムアクセスメモリの三値連想メモリ装置であり、各磁気ランダムアクセスメモリセルが、少なくとも1つの磁気トンネル接合を有する、当該方法。
  6. 前記方法は、前記プロセッサによって要求されたアドレスが、前記ベクトルの要素のうちの1つの要素に一致したときに、前記プロセッサによってアドレス付けされたデータの実行可能な命令の読み出しを阻止するように、このプロセッサに割り込むステップを有する、請求項5に記載の方法。
  7. 前記方法は、前記連想メモリ装置内にある1つのターゲットベクトル内に記憶された1つのアドレスに基づいて、第2メモリから、代わりに実行可能な命令又はデータを修正するステップを有する、請求項5に記載の方法。
JP2012108522A 2011-05-10 2012-05-10 読み出し専用メモリを有する情報処理装置及び読み出し専用メモリをパッチングするための方法 Pending JP2012238312A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP11290219.2A EP2523105B1 (en) 2011-05-10 2011-05-10 Information processing device comprising a read-only memory and a method for patching the read-only memory
EP11290219.2 2011-05-10

Publications (1)

Publication Number Publication Date
JP2012238312A true JP2012238312A (ja) 2012-12-06

Family

ID=44118407

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012108522A Pending JP2012238312A (ja) 2011-05-10 2012-05-10 読み出し専用メモリを有する情報処理装置及び読み出し専用メモリをパッチングするための方法

Country Status (4)

Country Link
US (1) US9342294B2 (ja)
EP (1) EP2523105B1 (ja)
JP (1) JP2012238312A (ja)
RU (1) RU2582862C2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9152568B1 (en) * 2011-12-05 2015-10-06 Seagate Technology Llc Environmental-based device operation
US10297300B2 (en) 2014-09-21 2019-05-21 Samsung Electronics Co., Ltd. Method and system for determining temperature using a magnetic junction
US9543013B1 (en) * 2015-06-05 2017-01-10 University Of South Florida Magnetic tunnel junction ternary content addressable memory
CA3080669A1 (en) 2017-10-27 2019-05-02 Xyleco, Inc. Processing biomass
US10990384B2 (en) * 2018-09-27 2021-04-27 Intel Corporation System, apparatus and method for dynamic update to code stored in a read-only memory (ROM)
DE102020207945A1 (de) 2020-06-26 2021-12-30 Robert Bosch Gesellschaft mit beschränkter Haftung Speichersteuervorrichtung sowie Verfahren zum Betreiben einer Speichersteuervorrichtung

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05127893A (ja) * 1991-10-30 1993-05-25 Oki Electric Ind Co Ltd マイクロプログラム制御方式
US7596721B1 (en) * 2004-01-09 2009-09-29 Maxtor Corporation Methods and structure for patching embedded firmware
JP2010113795A (ja) * 2008-11-04 2010-05-20 Crocus Technology Sa 三値連想磁気抵抗ランダムアクセスメモリセル

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5813043A (en) * 1996-07-12 1998-09-22 Motorola, Inc. Method and system including memory patching utilizing a transmission control signal and circuit
US6135651A (en) * 1997-05-29 2000-10-24 Cirrus Logic, Inc. Patching apparatus and method for upgrading modem software code
US6260157B1 (en) 1999-02-16 2001-07-10 Kurt Schurecht Patching of a read only memory
FR2832542B1 (fr) 2001-11-16 2005-05-06 Commissariat Energie Atomique Dispositif magnetique a jonction tunnel magnetique, memoire et procedes d'ecriture et de lecture utilisant ce dispositif
US7173452B2 (en) * 2002-09-16 2007-02-06 Emulex Design & Manufacturing Corporation Re-programmable finite state machine
US7039776B2 (en) * 2003-04-17 2006-05-02 Broadcom Corporation Patch memory system for a ROM-based processor
US7673164B1 (en) * 2004-12-13 2010-03-02 Massachusetts Institute Of Technology Managing power in a parallel processing environment
US20060174244A1 (en) * 2005-01-31 2006-08-03 Woods Paul R System and method for modifying execution flow in firmware
WO2009156790A1 (en) 2008-06-23 2009-12-30 Freescale Semiconductor, Inc. Patching of a read-only memory
US9348597B2 (en) * 2008-06-30 2016-05-24 Infineon Technologies Ag Device and method for bypassing a first program code portion with a replacement program code portion
EP2270812B1 (en) * 2009-07-02 2017-01-18 CROCUS Technology Ultimate magnetic random access memory-based ternay CAM

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05127893A (ja) * 1991-10-30 1993-05-25 Oki Electric Ind Co Ltd マイクロプログラム制御方式
US7596721B1 (en) * 2004-01-09 2009-09-29 Maxtor Corporation Methods and structure for patching embedded firmware
JP2010113795A (ja) * 2008-11-04 2010-05-20 Crocus Technology Sa 三値連想磁気抵抗ランダムアクセスメモリセル

Also Published As

Publication number Publication date
US9342294B2 (en) 2016-05-17
RU2582862C2 (ru) 2016-04-27
EP2523105A1 (en) 2012-11-14
US20120290773A1 (en) 2012-11-15
EP2523105B1 (en) 2019-12-04
RU2012119211A (ru) 2013-11-20

Similar Documents

Publication Publication Date Title
US11334362B2 (en) Generating and executing a control flow
CN108630267B (zh) 计算机系统和存储器设备
JP2012238312A (ja) 読み出し専用メモリを有する情報処理装置及び読み出し専用メモリをパッチングするための方法
JP5989281B1 (ja) 独立にアドレス指定可能なメモリアレイアドレス空間
US20180082719A1 (en) Data shifting
US20150193464A1 (en) Micro-journaling for file system based on non-volatile memory
US10146601B2 (en) Methods and devices for healing reset errors in a magnetic memory
US8724403B2 (en) Cache system and information-processing device
US20150074489A1 (en) Semiconductor storage device and memory system
JP2009537934A (ja) マルチnandフラッシュメモリーデバイスの共通動作中にピーク電力消費量を減少させるための装置および方法
BRPI0614013A2 (pt) cache de endereços alvo de ramificação que armazena dois ou mais endereços alvo de ramificação por ìndice
KR102168169B1 (ko) 비휘발성 메모리 시스템의 메모리 맵핑 방법 및 이를 제공하는 시스템
KR100869041B1 (ko) 비휘발성 자기 캐시 메모리
US10318172B2 (en) Cache operation in a multi-threaded processor
US7698536B2 (en) Method and system for providing an energy efficient register file
US11740899B2 (en) In-memory associative processing system
US20240152292A1 (en) Redundant computing across planes
US9740497B2 (en) Processor with memory-embedded pipeline for table-driven computation
CN114662426A (zh) 检测瞬态执行攻击的仿真状态
RU2007136486A (ru) Энергоэкономные способы и устройство избирательного разрешения компараторов в регистровом файле с переименованием на основе сам на основании известного состояния процессора
US8891326B1 (en) Method of sensing data in magnetic random access memory with overlap of high and low resistance distributions
CN102956259A (zh) 磁性随机存取存储器
US9966124B2 (en) Memory device
US20210365360A1 (en) Mapping a virtual address using a content addressable memory (cam)
US20210365363A1 (en) Mapping a virtual address using a physical address

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141105

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151202

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160229

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160622