JP6322632B2 - 不揮発性論理アレイからのカスタマイズ可能なバックアップ及び復元 - Google Patents

不揮発性論理アレイからのカスタマイズ可能なバックアップ及び復元 Download PDF

Info

Publication number
JP6322632B2
JP6322632B2 JP2015531303A JP2015531303A JP6322632B2 JP 6322632 B2 JP6322632 B2 JP 6322632B2 JP 2015531303 A JP2015531303 A JP 2015531303A JP 2015531303 A JP2015531303 A JP 2015531303A JP 6322632 B2 JP6322632 B2 JP 6322632B2
Authority
JP
Japan
Prior art keywords
nvl
power
array
volatile
data
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
JP2015531303A
Other languages
English (en)
Other versions
JP2016502689A (ja
JP2016502689A5 (ja
Inventor
クレイグ バートリング スティーブン
クレイグ バートリング スティーブン
カンナ サドハンシュ
カンナ サドハンシュ
Original Assignee
日本テキサス・インスツルメンツ株式会社
テキサス インスツルメンツ インコーポレイテッド
テキサス インスツルメンツ インコーポレイテッド
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 日本テキサス・インスツルメンツ株式会社, テキサス インスツルメンツ インコーポレイテッド, テキサス インスツルメンツ インコーポレイテッド filed Critical 日本テキサス・インスツルメンツ株式会社
Publication of JP2016502689A publication Critical patent/JP2016502689A/ja
Publication of JP2016502689A5 publication Critical patent/JP2016502689A5/ja
Application granted granted Critical
Publication of JP6322632B2 publication Critical patent/JP6322632B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • G06F11/1032Simple parity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • 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/4401Bootstrapping
    • 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/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C14/00Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/353Generators characterised by the type of circuit or by the means used for producing pulses by the use, as active elements, of field-effect transistors with internal or external positive feedback
    • H03K3/356Bistable circuits
    • H03K3/3562Bistable circuits of the master-slave type
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Sources (AREA)
  • Static Random-Access Memory (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Logic Circuits (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Microcomputers (AREA)
  • Semiconductor Memories (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

本開示は、概して、不揮発性メモリセル及びシステムにおける不揮発性メモリセルの使用に関し、特に、論理アレイと組み合わせて不揮発性論理モジュールを提供することに関する。
携帯電話、デジタルカメラ/カムコーダ、携帯情報端末、ラップトップコンピュータ、及びビデオゲームなど、多くの携帯電子デバイスはバッテリで動作する。イナクティブ期間の間、デバイスは処理動作を実施しないことがあり、電力を節減するためパワーダウン又はスタンバイ電力モードにされることがある。低電力スタンバイ電力モードでは、電子デバイス内の論理の一部に供給される電力がオフにされることがある。しかし、スタンバイ電力モード中の漏れ電力の存在により、携帯バッテリ作動デバイスを設計することが難しい課題になる。デバイスがスタンバイ電力モードに入る前にその後の使用のために状態情報を記憶するために、デバイス内のフリップフロップ及び/又はラッチなどのデータ保持回路が用いられ得る。データ保持ラッチは、シャドーラッチ又はバルーンラッチと称することもあり、典型的に、別個の「常時オン」電源によって電力が供給される。
イナクティブ期間の間の漏れ電流を減少させるための既知の技法の1つは、マルチ閾値CMOS(MTCMOS)技術を用いてシャドーラッチを実装する。この手法では、シャドーラッチは、厚いゲート酸化物トランジスタ及び/又は高閾値電圧(V)トランジスタを用いて、スタンバイ電力モードにおける漏れ電流を減少させる。シャドーラッチは、典型的に、通常動作の間(例えば、アクティブ電力モードの間)、回路の残りの部分から切り離されてシステム性能が維持される。「マスタースレーブ」フリップフロップトポロジーにおいてデータを保持するために、例えばシャドーラッチである、第3のラッチがデータ保持のためマスタラッチ及びスレーブラッチに付加され得る。他の場合において、スレーブラッチは、低電力動作の間保持ラッチとして動作するように構成され得る。しかし、保存した状態を保持するためにいくらかの電力が依然として必要とされる。例えば、米国特許第7,639,056号「パワーダウン応用例のための超低面積オーバーヘッド保持フリップフロップ」を参照されたく、この特許は、参照により本明細書に組み込まれる。
米国特許第7,639,056号
システムオンチップ(SoC)は、長く用いられてきた概念であり、その基本的な手法は、より多くの機能性を所与のデバイスに統合することである。この統合は、ハードウェア又はソリューションソフトウェアのいずれかの形態を取り得る。性能の向上は、従来、クロックレートを速くし、より最新の処理ノードを用いることによって実現されている。多くのSoCでは、マイクロプロセッサコア又はマルチコアと様々な周辺デバイス及びメモリ回路を対にして設計される。
パワーハーベスティング又はエネルギースカベンジングとも呼ばれるエネルギーハーベスティングは、ウェアラブル電子機器やワイヤレスセンサネットワークで用いられるものなどの小型ワイヤレス自律デバイスのため、外部供給源からエネルギーを引き出し、取り込み、蓄えるプロセスである。エネルギーハーベスティングでは、太陽エネルギー、熱エネルギー、風力エネルギー、塩分勾配、及び運動エネルギーなど、様々な供給源からエネルギーが引き出され得る。しかし、典型的なエネルギーハーベスタは、低エネルギー電子機器のための極めて小量の電力を提供する。エネルギーハーベスタのためのエネルギー源は、周囲環境に存在し、利用可能である。例えば、燃焼機関の動作からは温度勾配が存在し、都市部にはラジオ及びテレビ放送などがあるので環境には大量の電磁エネルギーがある。
本発明の様々な実施形態に従って構成されるような例示のシステムオンチップ(SoC)の一部の機能的ブロック図である。
図1のSoCにおいて用いられる1つのフリップフロップクラウドのより詳細なブロック図である。
強誘電性コンデンサが示す分極ヒステリシスを図示するグラフである。
本発明の種々の実施形態に従って構成されるような例示の強誘電性不揮発性ビットセルを図示する概略図である。 本発明の種々の実施形態に従って構成されるような例示の強誘電性不揮発性ビットセルを図示するタイミング図である。 本発明の種々の実施形態に従って構成されるような例示の強誘電性不揮発性ビットセルを図示するタイミング図である。 本発明の種々の実施形態に従って構成されるような例示の強誘電性不揮発性ビットセルを図示するタイミング図である。
本発明の種々の実施形態に従って構成されるような別の例示の強誘電性不揮発性ビットセルを図示する概略図である。 本発明の種々の実施形態に従って構成されるような別の例示の強誘電性不揮発性ビットセルを図示するタイミング図である。
図1のSoCにおいて用いられる例示のNVLアレイを示すブロック図である。
図10のNVLアレイに用いられる入力/出力回路のより詳細な概略図である。 図10のNVLアレイに用いられる入力/出力回路のより詳細な概略図である。
本発明の様々な実施形態に従って構成されるような読み出しサイクルの間の例示のオフセット電圧テストを示すタイミング図である。
本発明の様々な実施形態に従って構成されるようなオフセット電圧の例示の掃引の間生成されるヒストグラムを示す。
図10のNVLアレイにおけるパリティ生成を図示する概略図である。
本発明の様々な実施形態に従って構成されるようなNVLアレイ内の例示の電力ドメインを図示するブロック図である。
本発明の様々な実施形態に従って構成されるようなNVLアレイにおいて用いるための例示のレベルコンバータの概略図である。
本発明の様々な実施形態に従って構成されるような強誘電性ビットセル内のセンスアンプを用いるレベルシフトの例示の動作を図示するタイミング図である。
本発明の様々な実施形態に従って構成されるような例示の電力検出配置のブロック図である。
本発明の様々な実施形態に従ったウェイク時間及びピーク電力コストをカスタマイズするための方法の例示の動作を説明するフローチャートである。
本発明の様々な実施形態に従ったNVLアレイの読み出しをカスタマイズするための方法の例示の動作を説明するフローチャートである。
本発明の様々な実施形態に従って構成されるようなNVLアレイを含む別の例示のSoCのブロック図である。
従来のシステムは低電力動作の間論理モジュールにおけるフリップフロップの状態を保持するために保持ラッチを利用していたが、状態保持にはいくらかの電力が依然として必要とされる。これに対し、不揮発性要素は、電力が完全に取り去られても、論理モジュールにおけるフリップフロップの状態を保持し得る。このような論理要素を本明細書では不揮発性論理(NVL)と称する。SoC(システムオンチップ)内でNVLを備えて実装されるマイクロコントロールユニット(MCU)は、機能性を喪失せずに、停止、パワーダウン、及びパワーアップする能力を有する。電力が完全に取り去られた後動作を再開するためにシステムリセット/リブートは必要とされない。この能力は、例えば、近距離通信(ニアフィールドコミュニケーション:NFC)、無線周波数識別(RIFD)応用例、及び埋込み制御及び監視システムなどの台頭しつつあるエネルギーハーベスティング応用例に理想的である。こういった応用例では、リセット/リブートプロセスの時間及び電力コストが、利用可能なエネルギーの多くを消費してしまうことがあり、有用な演算、センシング、又は制御機能のためのエネルギーがほとんど又は全く残らない。本記載ではSoC状態機械をシーケンス処理するためのプログラマブルMCUを含むSoCについて説明するが、当業者には、通常の論理ゲート又はROM、PLA、或いはPLDベースの制御システムにハードコーディングされる状態機械にNVLが適用され得ることが理解されよう。
一手法では、SoCが不揮発性論理の1つ又は複数のブロックを含む。例えば、不揮発性論理(NVL)ベースのSoCが、パワーインタラプタトを受信すると、その作動状態(全てのフリップフロップ)をバックアップし得、スリープモードでの漏れがなくなり得、パワーアップ時にシステム状態を復元するために400 ns未満しか必要としないことがある。
NVLなしでは、チップが、スタンバイモードでも連続電源を必要とする少なくとも低電力保持状態において全てのフリップフロップを電力供給される状態に保つか、又は、パワーアップ後のリブートでエネルギー及び時間を無駄にするか、いずれかを必要し得る。エネルギーハーベスティング応用例では、フリップフロップ(FF)の状態を保存するために必要とされる定電力源がなく、たとえ間欠電源が利用可能であるときでもブートアップコードだけでエネルギーハーベスティングで得たエネルギーを全て消費し得るので、NVLが有用である。冷却及びバッテリ能力が限られるハンドヘルドデバイスの場合、「即時オン」能力を備えた漏れのないIC(集積回路)が理想的である。
強誘電性ランダムアクセスメモリ(FRAM)は、DRAM(ダイナミックランダムアクセスメモリ)に類似の挙動を有する不揮発性メモリ技術である。各個別ビットがアクセスされ得るが、EEPROM(電気的に消去可能なプログラマブル読み出し専用メモリ)又はフラッシュと異なり、FRAMは、データを書き込むための特別なシーケンスを必要せず、また、EEPROMやフラッシュには必要とされる高プログラミング電圧を実現するためのチャージポンプも必要としない。各強誘電性メモリセルは、1つ又は複数の強誘電性コンデンサ(FeCap)を含む。個々の強誘電性コンデンサは、本明細書で説明するNVL回路における不揮発性要素として用いられ得る。
図1は、演算デバイスの一部を図示する機能的ブロック図であり、この場合、例示のシステムオンチップ(SoC)100が、不揮発性論理ベースの演算特性を提供する。本明細書では、SoCという用語は、1つ又は複数のシステム要素を含む集積回路を指すために用いるが、この開示の教示は、不揮発性状態保持を提供する、ラッチ、集積クロックゲーティングセル、及びフリップフロップ回路要素(FF)などの機能的論理モジュールを含む様々な種類の集積回路に適用され得る。大型アレイの制御環境外に不揮発性ストレージ要素を埋め込むと、信頼性及び製作上の難題が生じる。NVLビットセルベースのNVLアレイは、典型的に、いかなるNVメモリ技術でも必要とされるような最大読み出し信号マージン及びインサイチュマージンテスト容易性のために設計される。しかし、個々のNVL FFにテスト容易性特性を付加することは、面積オーバーヘッドの点で困難であり得る。
テスト特性コストを償却し製造性を改善するために、また、図1及び図2の例を参照して、複数の不揮発性論理要素アレイ又はNVLアレイ110が、複数の揮発性ストレージ要素220とともに配設される。少なくとも1つの不揮発性論理コントローラ106が、複数の揮発性ストレージ要素220によって表される機械状態を記憶するため、及び、記憶された機械状態を複数のNVLアレイ110から複数の揮発性ストレージ要素220に読み出すために、複数のNVLアレイ110を制御するように構成される。例えば、少なくとも1つの不揮発性論理コントローラ106は、機械状態を複数のNVLアレイ110に保存するため、又は、機械状態を複数のNVLアレイ110から引き出すための制御シーケンスを生成するように構成される。揮発性ストレージ要素220の個々の揮発性ストレージ要素を1つ又は複数の対応するNVLアレイ110の個々のNVLアレイに可変的に接続するためにマルチプレクサ212が接続される。
図示の例では、演算デバイス装置はシングルチップ上に配置される。ここでは、シングルチップは、本明細書でNVLアレイと称する、電力が取り去られたときに種々のフリップフロップ120の状態を保存するため論理クラウドにわたって分散されるFeCap(強誘電性コンデンサ)ベースのビットセルの256bのミニアレイ110を用いて実装されるSoC100である。FF120の各クラウド102〜104は、関連するNVLアレイ110を含む。このように分散させることにより、NVLアレイ110の個々のNVLアレイは、揮発性ストレージ要素220の対応する個々の揮発性ストレージ要素に物理的に近接して配置され、かつ、これらの要素からデータを受け取るように接続される。中央NVLコントローラ106が、全てのアレイ、及びこれらのアレイのFF120との通信を制御する。ここでは3つのFFクラウド102〜104が図示されているが、SoC100は付加的なFFクラウド又はより少ないFFクラウドを有してもよく、いずれのFFクラウドもNVLコントローラ106によって制御される。SoC100は、1つ以上のNVLドメインに区分され得、別個のNVLドメインの各々においてNVLアレイ110及びFF120を管理するための専用のNVLドメインコントローラがある。既存のNVLアレイの実施形態では、256ビットミニアレイが用いられるが、アレイは、必要に応じてより多数又は少数のビットを有し得る。
SoC100は、複数の不揮発性論理要素アレイの個々の不揮発性論理要素アレイから複数のフリップフロップ回路の個々のフリップフロップ回路へのデータの書き戻しを可能にするように構成される回路要素を含む、改変された保持フリップフロップ120を用いて実装される。保持フリップフロップを実装する様々な既知の手法がある。例えば、データ入力が第1のラッチによってラッチされ得る。第1のラッチに結合される第2のラッチが、保持のためこのデータ入力を受け取り得、第1のラッチはスタンバイ電力モードでは作動しない。第1のラッチは、スタンバイ電力モードの間オフに切り替えられる第1の電力ラインから電力を受け取る。第2のラッチは、スタンバイモードの間オンのままである第2の電力ラインから電力を受け取る。コントローラが、クロック入力及び保持信号を受け取り、クロック出力を第1のラッチ及び第2のラッチに提供する。保持信号の変化は、スタンバイ電力モードへの遷移を示す。コントローラは、クロック出力を所定の電圧レベルで保持し続け、第2のラッチは、スタンバイ電力モードで第2の電力ラインから電力を受け取り続け、それによって、データ入力が保持される。このような保持ラッチが、米国特許第7,639,056号「パワーダウン応用例のための超低面積オーバーヘッド保持フリップフロップ」により詳細に記載されている。
図2は、保持の間クロックが特定の状態に保持されることを必要としない、例示の保持フロップアーキテクチャを図示する。このような「クロックフリー」NVLフロップ設計では、保持の間、クロック値は「ドントケア」である。
SoC100では、改変された保持FF120は、例えば、システムがパワーオフ状態に遷移されているとき、各FFの状態をNVLアレイ110における関連するFeCapビットセルに保存させ得る、単純な入力及び制御改変を含む。システムが復元されるとき、保存された状態はNVLアレイ110から各FF120に転送されて戻される。電力節減及びデータ保全性が、特定の電力構成を実装することにより改善され得る。1つのこのような手法では、個々の保持フリップフロップ回路は、第1の電力ドメイン(下記で説明する例におけるVDDLなど)によって電力供給される一次論理回路部分(マスタ段又はラッチ)と、第2の電力ドメイン(下記で説明する例におけるVDDRなど)によって電力供給されるスレーブ段回路部分とを含む。この手法では、複数のNVLアレイから複数の揮発性ストレージ要素へのデータの書き戻しの間、第1の電力ドメインはパワーダウンされるように構成され、第2の電力ドメインはアクティブである。複数の不揮発性論理要素は、演算デバイス装置の通常動作の間パワーダウンされるように構成される第3の電力ドメイン(下記で説明する例におけるVDDNなど)によって電力供給されるように構成される。
この構成では、所与の実装形態に適合するように特別に設計され得る方式で独立してパワーアップ又はパワーダウンされる、複数の電力ドメインが実装され得る。そのため、別の態様において、演算装置は、演算デバイス装置の切替え論理要素に電力を供給するように構成される第1の電力ドメインと、複数の不揮発性論理要素アレイへデータを記憶させるため又は複数の不揮発性論理要素アレイからデータを読むために信号を制御するように構成される論理要素に電力を供給するように構成される第2のパワードメインとを含む。複数の揮発性ストレージ要素が保持フリップフロップを含む場合、第2の電力ドメインは、個々の保持フリップフロップのスレーブ段に電力を提供するように構成される。第3の電力ドメインが、複数の不揮発性論理要素アレイのための電力を供給する。電力ドメインに加えて、NVLアレイは、特定の機能に関係するドメインとして定義され得る。例えば、複数の不揮発性論理要素アレイの少なくとも1つの不揮発性論理要素アレイの第1のセットが、演算デバイス装置の第1の機能に関連付けられ得、複数の不揮発性論理要素アレイの少なくとも1つの不揮発性論理要素アレイの第2のセットが、演算デバイス装置の第2の機能に関連付けられ得る。複数の不揮発性論理要素アレイの少なくとも1つの不揮発性論理要素アレイの第1のセットの動作は、複数の不揮発性論理要素アレイの少なくとも1つの不揮発性論理要素アレイの第2のセットの動作から独立している。このように構成されると、個別のNVLアレイのドメイン又はセットの制御及び取り扱いにおける柔軟性により、演算デバイスの全体的な機能をより細かく制御し得る。
このより特定的な制御は電力ドメインにも適用され得る。一例では、第1の電力ドメインは、第1の機能に関連付けられる切換え論理要素に電力を供給するように構成される第1の部分と、第2の機能に関連付けられる切換え論理要素に電力を供給するように構成される第2の部分とに分割される。第1の電力ドメインの第1の部分及び第2の部分は、第1の電力ドメインの他の部分とは独立してパワーアップ又はパワーダウンされるように個々に構成される。同様に、第3の電力ドメインは、第1の機能に関連付けられる不揮発性論理要素アレイに電力を供給するように構成される第1の部分と、第2の機能に関連付けられる不揮発性論理要素アレイに電力を供給するように構成される第2の部分とに分割され得る。第1の電力ドメインと同様に、第3の電力ドメインの第1の部分及び第2の部分は、第3の電力ドメインの他の部分とは独立してパワーアップ又はパワーダウンされるように個々に構成される。
このように構成されると、所与のデバイスについて個々の機能が用いられない場合、これらの使用されない機能に関連付けられるフリップフロップ及びNVLアレイは、それぞれパワーダウンされ得、他のフリップフロップ及びNVLアレイとは別個に動作され得る。電力及び動作管理におけるこのような柔軟性により、電力使用及び機能に関して演算デバイスの機能性が調整され得る。このことは、CPU、3つのSIPインターフェース、3つのUARTインターフェース、3つのICインターフェース、及び1つのみの論理電力ドメイン(VDDL)を有する下記の例示の設計においてさらに示され得る。論理電力ドメインは保持又はNVL電力ドメイン(それぞれVDDR及びVDDN)と区別されるが、これらの教示はこれらの電力ドメインにも適用され得る。この例示のデバイスは論理電力ドメインを1つしか有さないが、このデバイスの所与の応用例では、3つのSPIユニットの1つ、3つのUARTの1つ、及び3つのICペリフェラルの1つのみが使用され得る。応用例にNVLアプリケーションのウェイクアップ時間及びスリープ時間ならびにエネルギーコストを最適化させるために、VDDL電力ドメインが10の別個のNVLドメイン(1つのCPU、3つのSPI、3つのUART、3つのIC、合計10のNVLドメイン)に区分され得る。これらのNVLドメインの各々は、他と独立してイネーブル/イナクティブにされ得る。そのため、カスタマーは、CPU、1つのSPI、1つのUART、及び1つのICについてのNVL能力を、それらの特定の応用例に対してイネーブルにし得、他をイナクティブにし得る。また、この区分により、エネルギーだけでなく時間についても柔軟性が得られ、異なるNVLドメインが異なる時間に状態を保存及び復元し得る。
さらなる柔軟性を付加するために、NVLドメインは電力ドメインと重なり得る。上記の例を参照して、4つの電力ドメインが定義され得る。すなわち、CPU、SPI、UART、及びIC(各周辺電力ドメインは3つの機能ユニットを有する)に対して1つ、一方、各周辺ドメイン内に3つのNVLドメイン、及びCPUに1つ(繰り返しになるが、合計10のNVLドメイン)を定義する。この場合、個々の電力ドメインは、電力節減及びウェイクアップ/スリープタイミングにおける付加的な柔軟性のため、各電力ドメイン内のNVLドメインを、制御することに加えてオン又はオフにする。
また、第1の電力ドメイン、第2の電力ドメイン、及び第3の電力ドメインの個々の電力ドメインは、第1の電力ドメイン、第2の電力ドメイン、及び第3の電力ドメインの他のドメインから独立してパワーダウン又はパワーアップされるように構成される。例えば、統合電力ゲートが、第1の電力ドメイン、第2の電力ドメイン、及び第3の電力ドメインの個々の電力ドメインをパワーダウンするように制御されるように構成され得る。下記の表1に記載されるように、第3の電力ドメインは、演算デバイス装置の通常動作の間パワーダウンされるように構成され、第2の電力ドメインは、複数の不揮発性論理要素アレイから複数の揮発性ストレージ要素へのデータの書き戻しの間パワーダウンされるように構成される。第4の電力ドメインが、リアルタイムクロック及びウェイクアップインタラプト論理に電力を供給するように構成され得る。
このような手法は、図に示す例示のSoC100を参照してさらに理解され得る。SoC100では、NVLアレイ110及びコントローラ106が、VDDNと称するNVL電力ドメイン上で作動し、通常動作の間オフに切り換えられる。全ての論理、ROM(読み出し専用メモリ)及びSRAM(スタティックランダムアクセスメモリ)などのメモリブロック107、及びFFのマスタ段は、VDDLと称する論理電力ドメイン上にある。FRAM(強誘電性ランダムアクセスメモリ)アレイは、FRAMに必要なより高い固定電圧に維持される専用のグローバル電源レール(VDDZ)に直接的に接続される(すなわち、VDDL≦VDDZ、ここでVDDZは固定電源であり、VDDLはVDDLがVDDZより低電位のままである限り変化し得る)。103で示されるFRAMアレイは、典型的に、必要に応じてFRAMアレイをパワーダウンさせ得る統合電力スイッチを含むが、内部電力スイッチを備えないFRAMアレイはFRAMアレイ外部の電力スイッチと関連して用いられ得ることに留意されたい。保持FFのスレーブ段は、VDDRドメインと称する保持電力ドメイン上にあり、それによって、動作のスタンバイモードにおいて通常保持が可能になる。表1は、通常動作、NVLアレイへのシステムバックアップ、スリープモード、NVLアレイからのシステム復元、及び通常動作への回帰の間の電力ドメイン動作の概要を示す。また、表1は、保持フリップフロップの揮発性保持機能を用いて低減電力状態に入るためにシステムソフトウェアの制御下で開始され得るスタンバイアイドルモードの間用いられるドメインも示す。108で示されるスイッチのセットが、様々な電力ドメインを制御するために用いられる。SoC100にわたって分散され得、SoC100上のプロセッサにより実行されるソフトウェアによって及び/又はSoC100内のハードウェアコントローラ(図示せず)によって制御され得る、複数のスイッチ108が存在し得る。ここに示す3つに加えて、下記で説明されるように付加的なドメインがあり得る。
状態情報は、大型の集中型FRAMアレイに保存され得るが、システムFFへの並列アクセスがないことによって生じる、スリープモードに入るためのより長い時間、より長いウェイクアップ時間、過度のルーティング、及び電力コストが必要とされ得る。
図2は、SoC100において用いられる1つのFFクラウド102のより詳細なブロック図である。この実施形態では、各FFクラウドは最大248のフリップフロップを含み、各NVLアレイが8×32ビットアレイとして編成されるが、この実施形態ではパリティのために1ビットが用いられる。しかし、他の実施形態において、フリップフロップの数及びNVLアレイの編成は、4×m、16×mなどの異なる構成を有し得、ここで、mはFFクラウドのサイズに合うように選択される。いくつかの実施形態では、様々なクラウドにおけるNVLアレイは全て同じサイズとし得るが、他の手法において、同じSoC内に異なるサイズのNVLアレイが存在し得る。
ブロック220は、各保持FF120のより詳細な概略図である。信号のいくつかは、例えば、RETとRETBやCLKとCLKBなど、添え字「B」(「バー」又は/と称する)で示される反転されたバージョンを有する。各保持FFは、マスタラッチ221及びスレーブラッチ222を含む。スレーブラッチ222は、インバータ223及びインバータ224によって形成される。インバータ224は、低電力スリープ期間の間FF状態を保持するために用いられる保持信号(RET、RETB)によって制御されるトランジスタのセットを含む。低電力スリープ期間の間、上記及び表1で説明したように、電力ドメインVDDRはオンのままであり、電力メインVDDLはオフにされる。
NVLアレイ110は、クラウド102において機能する248のFFと論理的に接続される。一般的に、NVLアレイからFFへのデータ転送を可能にするために、個々のFFは、複数のNVLアレイ110の個々のNVLアレイからのデータの書き戻しを可能にするように構成される回路要素を含む。図示の例では、ブロック220に示すように、各FFのスレーブラッチ222に2つの付加的なポートが設けられる。データ入力ポート(ゲート225)が、NVLアレイ110のうちの1つのNVLアレイから関連する揮発性ストレージ要素220にデータNDを挿入するように構成される。データ入力ポートは、データ入力ポートをトリガするためデータ入力イネーブルポートで少なくとも1つの不揮発性論理コントローラ106から更新信号NUを受け取ることに応答して、NVLアレイのうちの1つのNVLアレイから関連するフリップフロップ回路のスレーブ段に記憶データ関連信号を通過させることによってデータNDを挿入するように構成される。インバータ223は、トライステートインバータ223とNVLデータポート入力トライステートインバータ225の間の電気的な衝突が回避されるように、反転NVL更新信号NUZを受け取ることに応答してイナクティブにされるように構成される。
より詳細には、図示の例では、インバータ−インバータフィードバック対(223と224)がラッチ自体を形成する。これらのインバータは、データ状態を保持するための極めて安定な構成をつくり、データポートの1つを介して現在の状態を次の状態で上書きしようとする際の電気的な衝突を妨げるためにこれらのインバータの少なくとも1つがイナクティブにされない限り、ラッチ状態を変えようとするいかなる試みにも対抗する。図示のNVL FF220は、通常のフロップの場合の1つのデータポートに比べると、スレーブラッチ222にアクセスする2つのデータポートを含む。一方のポートは、クロックによって制御されるCMOSパスゲートを介してマスタ段221からスレーブ段222にデータを転送する。このポートを用いてスレーブ状態221を更新するとき、CLKによって制御されるパスゲートの出力ノードに対して駆動するインバータ224は、電気的な衝突が避けるためイナクティブにされ、インバータ223は、次の状態をラッチの反対側に転送するためイネーブルにされ、それによって、クロックがローになる(posedge FFに対して)ときデータを保持するための準備においてラッチの両側が次の状態を有する。
同じ理由で、インバータ223は、NDポート上での電気的な衝突を回避するため、NDデータポートがアクティブ高状態に遷移するNUによってアクティブにされるときイナクティブにされる。第2のインバータ224は、次の状態をラッチの反対側に転送するためイネーブルにされ、そのため、ラッチの両側はNUがローになるときラッチされるべき次の状態を有する。この例では、NUポートは、クロックによって制御される他のデータポートにいかなる影響も及ぼさない。デュアルポートFF上では、両方のポートが同時にアクティブになることは不当な制御条件であり、その結果生じるポートの衝突は、得られる次の状態が不確定であることを意味する。ポートの衝突を回避するために、システムは、機能モードにある一方でスレーブ状態が更新される場合、クロックをイナクティブ状態に保持する。保持モードでは、RET信号が、FF内の支持回路とともに、保持モードにある一方でCLKの状態にかかわらず電気的な衝突を防ぐために用いられる(マスタ段でRETBによって制御されるインバータを参照されたい)。
図に示すように、これらの付加的な要素は、関連するFFのスレーブ段222に配設される。ただし、付加的なトランジスタは、FFのクリティカルな経路上にはなく、この特定の実装では、通常のFF性能及び電力への影響の度合いはたかだか1.8%及び6.9%である(シミュレーションデータ)。NVLアレイからのデータがND(NVL−Data)ポート上で有効であるとき、NU(NVL−Update)制御入力が、FFへの書き込みサイクルのため高にパルスされる。NVLアレイの31ビットデータ出力が、8の31ビットFFグループのNDポートにファンアウトされる。
フリップフロップ状態を保存するために、複数のNVLアレイ110の個々のNVLアレイにおいて本質的に同時の記憶が行われるように、マルチプレクサが、複数の揮発性ストレージ要素220のうちの複数の個々の揮発性ストレージ要素からの状態を通過させるように構成される。例えば、マルチプレクサは、1グループ当たり複数の揮発性ストレージ要素のうちのM個の揮発性ストレージ要素のN個のグループに、及び複数のNVLアレイのうちのN×MサイズのNVLアレイに接続するように構成され得る。この構成では、マルチプレクサは、一度にM個の揮発性ストレージ要素からN×MサイズのNVLアレイのローにデータを記憶するため、N個のグループの1つをN×MサイズのNVLアレイに接続する。図示の例では、248のFFのQ個の出力が、31bワイド8−1マルチプレクサ212を介して、NVLアレイ110の31b並列データ入力に接続される。FFローディングを最小化するために、マルチプレクサは、FFクラウドのレイアウトに基づいてより小さなマルチプレクサに分割され得、それらが機能するFFに近く置かれ得る。この場合も、NVLコントローラは、NVLアレイへの書き込み、及び8−1マルチプレクサ212の選択信号MUX_SEL<2:0>を同期化する。
FFが保持モードで動作しているとき、演算デバイスのクロックCLKは「ドントケア」であり、そのため、クロックCLKはNU信号がアクティブになる度にスレーブ段状態の更新に関する揮発性ストレージ要素に対して関連がなくなり、それにより、不揮発性論理コントローラは、揮発性ストレージ要素の個々の揮発性ストレージ要素から不揮発性ストレージ要素の個々の不揮発性ストレージ要素へのデータの記憶を制御及び実施するように構成される。言い換えれば、クロックCLK制御は、保持モードの間のNVLデータ復元の間は必要とされないが、システム状態が復元されると、保持モードと機能モードとの間の遷移の直前で、クロックCLKはシステムレベルで制御されるべきである。別の手法において、システムが機能性モードにあるとき、NVL状態は揮発性ストレージ要素に回復され得る。VDDL電力がアクティブであるこの状況では、クロックCLKは、NVLアレイからのデータ復元の間揮発性ストレージ要素に対してイナクティブ状態に保持され、それにより、不揮発性論理コントローラは、不揮発性ストレージ要素の個々の不揮発性ストレージ要素から揮発性ストレージ要素の個々の揮発性ストレージ要素へのデータの転送を制御及び実施するように構成される。例えば、システムクロックCLKは、典型的に、正エッジFFベースの論理に対してローに保持され、負エッジFFベースの論理に対して高に保持される。
一般的に、通常動作からシステムバックアップモードに移るために、第1のステップは、イナクティブ状態におけるシステムクロックを停止して機械状態を凍結して、バックアップは進行中であるが機械状態が変わらないようにすることである。クロックは、バックアップが完了するまでイナクティブ状態で保持される。バックアップが完了した後、全ての電力ドメインはパワーダウンされ、クロックの状態は定義上スリープモードでドントケアになる。
NVLアレイから状態を復元する場合、FFは保持状態(下記の表2参照)に置かれる。保持状態では、RET信号がアクティブである限り(クロックは、各保持FFに付加される特殊なトランジスタのためにドントケアになり得、RET信号によって制御される)、クロックはドントケアのままである。NVL状態を復元する一方で、フロップは保持モードのままであり、そのため、クロックはドントケアのままである。NVL状態が回復されると、システムクロックの状態を制御する機械論理の状態も、これらが状態バックアップ時の状態に復元される。これは、この例では、システムクロックをイナクティブ状態にした全ての制御(揮発性ストレージ要素又はFFを含めて)がこの時点で復元されており、そのため、NVLデータ回復が完了したときシステムクロックはイナクティブ状態のままになることも意味する。この時点でRET信号はイナクティブにされ得、NVLコントローラが復元が完了したことを電力管理コントローラに通知するまで、クロックがイナクティブにされてシステムは活動を停止し、NVLコントローラ信号に応答して、電力管理コントローラはクロックを再びイネーブルにする。
復元の間フリップフロップ状態を復元するため、NVLコントローラ106は、NVLアレイ110のNVLローを読み、次いで適切なフリップフロップグループに対するNU信号をパルス化する。システム復元の間、保持信号RETは高に保たれ、スレーブラッチは電力ドメインVDDLに電力供給されていない状態でNDから書き込まれる。この時点で、システムクロックCLKの状態はドントケアである。NVLアレイの読み出し動作の間31のFFの各グループが更新されるときに生じる偽データ切替えに関連する過剰な電力消費を抑制するために、FFはVDDL=0V及びVDDR=VDDで保持状態に置かれる。適切に改変された非保持フロップがNVLベースのSoCで用いられ得るが、NVLデータ回復動作の間の電力消費は大きくなる。
システムクロックCLKは、VDDLがアクティブになると低から開始されるべきであり、その後、更新された情報がFFにある状態で通常同期動作が継続する。NVLアレイとそれらのそれぞれのFFとの間のデータ転送は、ピーク電流とバックアップ/復元時間とをトレードオフするために、シリアル又はパラレル或いはこれらの任意の組み合わせで行われ得る。演算デバイス装置の中央処理装置とは別の少なくとも1つの不揮発性論理コントローラによって制御されるFFへの直接アクセスが提供されるので、NVL動作にはマイクロコントローラ処理装置(CPU)からの介入は必要とされない。従って、この実装はSoC/CPUアーキテクチャ不可知である。表2は、NVLフリップフロップの動作の概要を示す。
少なくとも1つの不揮発性論理コントローラは、入力信号に基づいて、並列、順次、又はこれらの任意の組合せで複数の不揮発性アレイへのデータ転送又は複数の不揮発性アレイからの読み出しを可変制御するように構成されているので、システム設計者は、特定のニーズに対してシステム動作仕様を調整することに関して付加的な選択肢を有する。例えば、システムが低電力システム状態に入る時間の間、又は、低電力状態からウェイクアップするためには、MCU SoC上で演算が生じ得ないので、ウェイクアップ時間又はスリープに至る時間を最小化することが有利である。一方、不揮発性状態保持は電力を多く消費する。これは、強誘電性コンデンサなどの不揮発性要素に状態を保存するため及び不揮発性要素から状態を復元するために、極めて多くのエネルギーが必要とされるからである。システム状態を保存及び復元するために必要とされる電力は、電力送達システムの能力を超えることがあり、エレクトロマイグレーションにより誘起される電力グリッド劣化、過度のピーク電流引き出しによるバッテリ寿命低下、又はダイ上の信号の保全性を損ない得る電源システムでの高レベルノイズ生成などの問題を生じさせ得る。そのため、システム設計者がこれら2つの懸念のバランスを取り得ることが望ましい。
1つのこのような手法では、少なくとも1つの不揮発性論理コントローラ106は、例えば当業者には既知であるものなどの、ユーザーインターフェース125を介して入力信号を受け取るように構成される。別の手法において、少なくとも1つの不揮発性論理コントローラは、アプリケーションを実行中であり得る別個の演算要素130から入力信号を受け取るように構成される。1つのこのような手法では、この別個の演算要素は、このアプリケーションを実行して、演算デバイス装置130についての電力及び演算リソース要件の決定に少なくとも部分的に基づいて、複数の不揮発性アレイについての読み出しシーケンスを決定するように構成される。このように構成されると、システムユーザーが、システム状態の記憶及び引き出し手順を操作して所与の設計に適合させることができる。
図3は、強誘電性コンデンサが示す分極ヒステリシスを示すグラフである。強誘電性ビットセルの概略動作は既知である。ほとんどの材料が分極している場合、誘起される分極Pは印加される外部電界Eにほぼ正比例し、そのため、分極は、線形関数になり、誘電体分極と称される。非線形であることに加えて、強誘電性材料は、印加電界Eがゼロになるとき、図3に示すような自発的非ゼロ分極を示す。強誘電体の際立った特性は、印加電界によって自発的分極が反転され得ることであり、分極は、電流に依存するだけでなくその履歴にも依存して、ヒステリシスループを生成する。「強誘電性」という用語は、自発的磁化を有しヒステリシスループも示す、強磁性材料との類似を示すために用いられる。
強誘電性コンデンサの誘電率は、典型的に、線形誘電体の誘電率よりずっと大きい。これは、強誘電性材料の結晶構造に形成される半恒久的電気双極子の影響のためである。強誘電性誘電体を横切って外部電界が印加されると、双極子は、原子の位置の小さなシフトによって生成される電界方向と整列する傾向があり、この原子の位置の小さなシフトにより、結晶構造内の電荷の分布がシフトする。電荷が取り除かれた後、双極子はその分極状態を保持する。バイナリ「0」及び「1」が、2つのあり得る電気分極の一方として各データストレージセルに記憶される。例えば、図3では、「1」は負の残余分極302を用いて符号化され得、「0」は正の残余分極304を用いて符号化され得、又はその逆であり得る。
強誘電体ランダムアクセスメモリがいくつかの構成に実装されている。FeRAMアレイにおける1トランジスタ・1コンデンサ(1T−1C)ストレージセル設計は、広く用いられているDRAMにおけるストレージセルに、いずれのセルタイプも1つのコンデンサ及び1つのアクセストランジスタを含むという点で、構築上類似している。DRAMセルのコンデンサでは線形誘電体が用いられ、一方、FeRAMセルのコンデンサでは、誘電体構造は、典型的にジルコン酸チタン酸鉛(PZT)である、強誘電性材料を含む。DRAMタイプのアレイへのアクセスのオーバーヘッドのために、1T−1Cセルは、NVLアレイ110などの小型アレイに用いるにはあまり望ましくない。
4コンデンサ・6トランジスタ(4C−6T)セルは、小型アレイで用いることがより容易な通常タイプのセルである。ここで、改善された4コンデンサセルを説明する。
図4は、4個のコンデンサ及び12個のトランジスタ(4C−12T)を含む強誘電性不揮発性ビットセル400の一実施形態を示す概略図である。4個のFeCapが差動配置の2つの対として配置される。FeCap C1及びC2は直列に接続されてノードQ404を形成し、FeCap C1’及びC2’は直列に接続されてノードQB405を形成する。データビットが、ビットラインBLを介して、ノードQに書き込まれ、FeCap C1及びC2に記憶され、このデータビットを反転したものが、反転ビットラインBLBを介して、ノードQBに書き込まれ、FeCap C1’及びC2’に記憶される。センスアンプ410が、ノードQに及びノードQBに結合され、ビットセルが読みだされるときノードQ、QBに現れる電圧の差を感知するように構成される。センスアンプ410内の4個のトランジスタが、2つの交差結合インバータとして構成されてラッチを形成する。パスゲート402がノードQをビットラインBに結合するように構成され、パスゲート403がノードQBをビットラインBLBに結合するように構成される。各パスゲート402、403は、並列に接続されるPMOSデバイスとNMOSデバイスを用いて実装される。この配置により、書き込み動作の間のパスゲートの両端の電圧降下が低減され、そのため、書き込みの間ノードQ、QBにはより高い電圧が示され、それによって、より大きな分極がFeCapに与えられる。プレートライン1(PL1)がFeCap C1及びC1’に結合され、プレートライン2(PL2)がFeCap C2及びC2’に結合される。これらのプレートラインは、読み出し及び書き込み動作の間FeCapにバイアスをかけるように用いられる。或いは、別の実施形態において、CMOSパスゲートの代わりに、VDDLより高い電圧を有するパスゲートイネーブルを用いるNMOSパスゲートが用いられ得る。この一層高い電圧の大きさは、ビットセルQ/QBノードからビットラインBL/BLBに、及び、ビットラインBL/BLBからビットセルQ/QBノードに、非劣化信号を通過させるために、通常のNMOS Vtより大きくなければならない(すなわち、Vpass_gate_control>VDDL+Vt)。
典型的に、ビットセル400のアレイがある。また、nロー×mコラムのアレイを形成するために同様のビットセルの複数のコラムがあり得る。例えば、SoC100では、NVLアレイは8×32であるが、先に述べたように、異なる構成が実装され得る。
図5及び図6は、それぞれ、論理0のデータ値を読み出すため、及び論理0のデータ値を書き込むための、読み出し及び書き込み波形を示すタイミング図である。NVLアレイの読み出し及びNVLアレイへの書き込みは、NVLコントローラによって制御され得、NVLクロックによって同期が取られ得るマルチサイクル手順である。別の実施形態において、これらの波形は、例えば、トリガ信号から開始される固定又はプログラマブル遅延によってシーケンス処理され得る。通常動作の間、典型的な4C−6Tビットセルが、「1」を記憶する側のFeCap両端の一定DCバイアスのために経時的絶縁破壊(TDDB)を受けやすい。差動ビットセルでは、データ値を反転したバージョンも記憶されるため、一方の側又は他方の側が常に「1」を記憶している。
TDDBを回避するために、プレートラインPL1、プレートラインPL2、ノードQ、及びノードQBは、図5及び図6の時間期間s0の間示されているように、セルがアクセスされていないとき静的低値に保持される。電力切断トランジスタMP411及びMN412により、センスアンプイネーブル信号SAEN及びSAENBに応答して時間期間s0の間センスアンプ410が電力から切り離される。クランプトランジスタMC406がノードQに結合され、クランプトランジスタMC’407がノードQBに結合される。クランプトランジスタ406、407は、非アクセス時間期間s0の間クリア信号CLRに応答して、プレートライン上の低論理電圧にほぼ等しい電圧、この実施形態では0ボルト(接地電位)に等しい電圧、までQ及びQBノードをクランプするように構成される。このようにして、ビットセルが読み出し又は書き込みのためにアクセスされていない時間の間、FeCapの両端に電圧が印加されず、従ってTDDBが本質的に排除される。クランプトランジスタはまた、ノードQ及びQBに寄生漏れ電流によるいかなる浮遊電荷も蓄積されないように働く。浮遊電荷が蓄積すると、Q又はQB上の電圧が0Vを上回って上昇し得、それによって、Q又はQBとPL1及びPL2の間のFeCap両端に電圧差が生じ得る。これは、FeCap残余分極の意図しない脱分極につながり得、FeCapに記憶される論理値が潜在的に破壊されることがある。
この実施形態では、Vddは1.5ボルトであり、接地基準面は0ボルトの値を有する。論理高が約1.5ボルトの値を有し、論理低が約0ボルトの値を有する。論理0(低)に対する接地及び論理1(高)に対するVddとは異なる論理レベルを用いる他の実施形態において、ビットセルがアクセスされていないときFeCapの両端に事実上電圧が生じないように、ノードQ、QBを静的プレートライン電圧に対応する電圧までクランプし得る。
別の実施形態において、2つのクランプトランジスタが用いられ得る。これら2つのトランジスタはそれぞれ、各FeCapの両端の電圧を1つのトランジスタVt(閾値電圧)以下にクランプするように用いられる。各トランジスタは、FeCapを短絡するように用いられる。この場合、第1のトランジスタでは、1つの端子がQに接続し、他の端子がPL1に接続し、トランジスタ2では、1つの端子がQに接続し、他の端子がPL2に接続する。これらのトランジスタは、NMOS又はPMOSとし得るが、NMOSが用いられる可能性が高い。
典型的に、2トランジスタソリューションが用いられるビットセルは、1トランジスタソリューションより著しく大きな面積を消費しない。1トランジスタソリューションは、PL1及びPL2が単一クランプトランジスタとの局所VSS接続と同じ接地電位のままであると仮定しており、これは通常妥当な仮定である。しかし、PL1又はPL2にグリッチを生じさせたり、PL1/PL2ドライバ出力とVSSとの間に短期間DCオフセットを生じさせたりし得るノイズ又は他の問題が(特にパワーアップの間)生じ得る。従って、2トランジスタ設計は、よりロバストなソリューションを提供し得る。
ビットセル400を読むために、時間期間s2に示されるように、プレートラインPL1は低から高に切り換えられ、プレートラインPL2は低のまま維持される。これにより、それぞれ、C1−C2とC1’−C2’の間のコンデンサ比に依存する値を有するノードQ、QB上に電圧が誘起される。誘起された電圧は、ビットセル内のFeCapへの最後のデータ書き込み動作の間形成された各FeCapの残余分極に依存する。残余分極は、事実上、各FeCapの有効静電容量値を「変化」させる。このようにして、FeCapは不揮発性ストレージを提供する。例えば、論理0がビットセル400に書き込まれた場合、C2の残余分極によりC2はより小さな有効静電容量値を有し、C1の残余分極によりC1はより大きな有効静電容量値を有する。そのため、プレートラインPL1を高に切り換え、プレートラインPL2を低に保持することによってC1−C2の両端に電圧が印加されるとき、結果のノードQ上の電圧は式(1)に従う。同様の式がノードQBについて成り立つが、C1’及びC2’の残余分極の順が逆転し、そのため、結果のノードQ及びQB上の電圧は、図5の502、503に示されるように、ビットセル400に記憶されるデータ値の差動表現を提供する。
次いで、時間期間s3の間、ローカルセンスアンプ410がイネーブルにされる。差動値502、503を感知した後、センスアンプ410はフルレール信号504、505を生成する。結果のフルレール信号は、時間期間s4の間ビットラインBL、BLBに転送される。これは、転送ゲートイネーブル信号PASS、PASSBをアサートして転送ゲート402、403をイネーブルにし、それによって、例えば、NVLアレイ110の周辺に位置するラッチイネーブル信号LAT_ENに応答する出力ラッチにフルレール信号を転送することによって行われる。
図6は、ビットセル400への論理0の書き込みを示すタイミング図である。書き込み動作は、時間期間s1の間プレートラインをいずれもVddまで上げることによって開始される。これは1次記憶法と呼ばれる。PL1及びPL2上の信号遷移は、ノードQ及びQBに容量結合され、いずれのストレージノードも事実上ほぼVDD(1.5V)までプルされる。データがビットラインBL、BLB上に提供され、転送ゲート402、403は時間期間s2〜s4の間パス信号PASSによってイネーブルにされて、データビット及びその反転値をビットラインからノードQ、QBに転送する。センスアンプ410は、時間期間s3、s4の間センスアンプイネーブル信号SAEN及びSAENBによってイネーブルにされて、書き込みデータドライバが時間期間s2の間Q/QBに適切な差分を強制的に与えた後、付加的な駆動を提供する。ただし、センスアンプから1.2Vドライバ電源への短絡を回避するために、書き込みデータドライバは、時間期間s2の終了時、時間期間s3、s4の間センスアンプがオンにされる前に、オフにされる。2次記憶法と呼ばれる代替実施形態において、書き込み動作により、PL2が、データ書き込み動作の間0V又は接地に保持される。これにより、データ書き込み動作の間の電力が節減されるが、結果の読み出し信号マージンが50%減少する。これは、C2及びC2’がもはや残余分極を介してデータを保持せず、C1及びC2のFeCapに線形容量性負荷しか提供しないためである。
s2の間のPL1高からSAEN高、読み出しの間のs3の間のSAEN高パルス、及び書き込みの間のFeCap DCバイアス状態s3〜s4などの主要状態は、NVLクロックを遅くせずにより高いロバストさが得るために、選択的にマルチサイクルにされ得る。
FeCapベースの回路では、FeCapからデータを読み出すことにより、コンデンサが部分的に脱分極され得る。この理由で、FeCapからのデータ読み出しは、本質的に破壊的と考えられる。すなわち、データ読み出しにより、FeCapの内容が破壊され得るか、又は、最小でもデータの完全性が損なわれ得る。この理由で、FeCapに含まれるデータが読み出し動作が生じた後も有効なままであると予想される場合、データはFeCapに書き戻さなければならない。
或る種の応用例では、特定のNVLアレイは、或る時間期間にわたって変化しない特定の情報を記憶するように指定され得る。例えば、或るシステム状態が、デフォルトの戻り状態として保存され得、デバイスのフルリブートよりもこの状態に戻ることが好ましい。最新式の超低電力SoCのリブート及び構成プロセスは、メインアプリケーションコードスレッドに制御が渡されるポイントに達するには、1000〜10000クロックサイクル又はそれ以上かかり得る。このブート時間は、電力が間欠的であり、信頼性がなく、量的に制限されるエネルギーハーベスティング応用例ではきわどい値である。リブートの時間及びエネルギーコストは、演算に利用可能なエネルギーのほとんど又は全部を消費し得、エネルギーハーベスティング応用例でMCUなどのプログラマブルデバイスを用いることができなくなる。応用例の例として、エネルギーハーベスティング照明スイッチがある。照明スイッチのボタンを押すことにより収集されるエネルギーは、下記のタスクを完了するために利用可能なエネルギー全体を表す。すなわち、1)所望の機能(オン/オフ又は調光レベル)を決定すること、2)要求をコマンドパケットにフォーマットすること、3)無線を起動し、照明システムへのRFリンクを介してパケットを送出することである。ハードコーディングされた状態機械を有する既知のカスタムASICチップが、厳しいエネルギー制約のためにこの応用例で用いられることがしばしばあり、こうするには、システムの柔軟性が失われ、変更にコストがかかる。これは、変更が望まれる度に、新たなASICチップを設計し製作しなければならないからである。プログラマブルMCU SoCははるかに良好に適合するが、ブートプロセスの電力コストが利用可能なエネルギーの大部分を消費し、そのため、必要とされるアプリケーションコードを実行するためのバジェットが残らない。
この懸念に対処するために、1つの手法では、複数の不揮発性論理要素アレイの少なくとも1つが、所与の量のブートプロセスが完了した後の演算デバイス装置の状態を表すブート状態を記憶するように構成される。この手法における少なくとも1つの不揮発性論理コントローラは、演算デバイス装置に対する前のシステムリセット又は電力喪失イベントを検出することに応答して、複数の不揮発性論理要素アレイの少なくとも1つから複数の揮発性ストレージ要素のうちの対応する揮発性ストレージ要素へのブート状態を表すデータの復元を制御するように構成される。NVLアレイに対する典型的な読み出し/書き込み動作にわたる電力を節減するために、少なくとも1つの不揮発性論理コントローラは、ラウンドトリップデータ復元動作を実行するように構成され得る。ラウンドトリップデータ復元動作は、個々の不揮発性論理要素からデータを読み出した後、別々の読み出し及び書き込み動作を完了することなく、個々の不揮発性論理要素にデータを自動的に書き戻す。
ラウンドトリップデータ復元の実行例が図7に示されている。図7は、ビットセル400に対する書き戻し動作を図示する。この動作では、ビットセルは、読み出され、同じ値に書き込まれる。図に示すように、個々の不揮発性論理要素からのデータの読み出しの開始は、第1の時間S1に、対応する強誘電性コンデンサビットセルのノード上に、対応する強誘電性コンデンサビットセルの強誘電性コンデンサのための静電容量比に基づいて電圧が誘起されるように、第1のプレートラインPL1を高に切り替えることによって開始される。強誘電性コンデンサのノードを接地するためにクランプスイッチが用いられる場合、第1の時間S1にクリア信号CLRが高から低に切り替えられて、電気的接地からの、個々の不揮発性論理要素のそれらの態様がアンクランプされる。第2の時間S2に、ノード上に誘起される電圧をセンスアンプに検出させ、個々の不揮発性論理要素に記憶されたデータに対応する出力信号を提供するように、センスアンプイネーブル信号SAENが高に切り替えられる。第3の時間S3に、パスラインPASSが高に切り替えられて転送ゲートが開き、個々の不揮発性論理要素に記憶されたデータに対応する出力信号が提供される。第4の時間S4に、第2のプレートラインPL2が高に切り替えられて、強誘電性コンデンサの両端に分極信号が誘起され、対応する強誘電性コンデンサビットセルに、個々の不揮発性論理要素に記憶されたデータに対応するデータが書き戻される。個々の不揮発性論理要素に対して、そこに記憶された同じデータを有する不揮発性記憶状態に対して、第5の時間S5に、第1のプレートラインPL1及び第2のプレートラインPL2が低に切り替えられ、第6の時間S6にパスラインPASSが低に切り替えられ、第7の時間S7にセンスアンプイネーブル信号SAENが低に切り替えられる。強誘電性コンデンサのノードを接地するためにクランプスイッチが用いられる場合、第7の時間にクリア信号CLRが低から高に切り替えられて、個々の不揮発性論理要素の態様を電気的接地にクランプし、本明細書で説明するようにデータの完全性を保つ助けとなる。このプロセスに含まれる遷移の総数は、独立した別個の読み出し及び書き込み動作(読み出し、次いで書き込み)に必要とされる遷移の総数より少ない。これにより、全体的なエネルギー消費が低減される。
ビットセル400は、信頼性の高い第1世代のNVL製品を提供するために、Q/QB間の読み出し差分を最大化するように設計される。1つのFeCap及び一定BL静電容量を負荷として用いるのではなく、各側に2つのFeCapが用いられる。これにより、センスアンプが利用可能な差動電圧が倍になるからである。センスアンプが、ノードQとBL静電容量の間の電荷共有による差分の喪失を妨げるため、及び転送ゲートの両端における電圧降下を回避するためにビットセル内に置かれる。感知される電圧はほぼVDD/2であり、HVT転送ゲートではこれらの電圧をBLに通過させるために長時間かかる。ビットセル400は、当技術分野で既知の通常のFRAMビットセルの信号マージンを倍にする助けとなり、FeCapの両端にいかなるDCストレスも生じさせない。
図5及び図6に示す信号のタイミングは説明のためのものである。様々な実施形態において、クロックレート、プロセスパラメータ、デバイスサイズなどに依存して変化するシーケンスを信号し得る。例えば、別の実施形態において、制御信号のタイミングは下記のように動作し得る。時間期間S1の間、PASSは0から1になり、PL1/PL2は0から1になる。時間期間S2の間、SAENは0から1になり、この時間の間、センスアンプは、後述するレベルシフトを実施し得、又は、非レベルシフト設計に対して付加的な駆動強さを提供し得る。時間期間S3の間、PL1/PL2は1から0になり、波形の残りは同じままであるが、1クロックサイクルだけ上方に移動する。このシーケンスは、図6に示すものよりも1クロックサイクル短い。
別の代替形態において、制御信号のタイミングは下記のように動作し得る。時間期間S1の間、PASSは0から1になる(BL/BLB、Q/QBは、それぞれ0V及びVDDLである)。時間期間S2の間、SAENは0から1になる(BL/BLB、Q/QBは、それぞれ0V及びVDDNである)。時間期間S3の間、PL1/PL2は01から1になる(BL/Qは、PL1/PL2によって接地を上回って結合され、SA及びBLドライバによって駆動されて低に戻される)。時間期間S4の間、PL1/PL2は1から0になり、波形の残りは同じままである。
図8及び図9は、2C−3T自己基準ベースのNVLビットセルである、強誘電性不揮発性ビットセル800の別の実施形態を示す概略図及びタイミング図である。先に説明した4FeCapベースのビットセル400は、標準の1C−1T FRAMビットセルと比較してマージンが倍になった差動読み出しを実現するため、センスアンプの各側に2つのFeCapを用いる。しかし、4FeCapベースのビットセルは、より多くのFeCapを用いるので、面積がより大きく、変動がより大きくなり得る。
ビットセル800は、より小さな面積で、本明細書で自己基準と称する、ビットセル自体を基準として用いることによって差動4FeCapで得られるようなマージンを実現する助けとなる。また、より少数のFeCapを用いることにより、ビットセル800は、4FeCapビットセルより変動が小さい。典型的に、単一側セルは、ビットセルの動作範囲の中央にある基準電圧を用いる必要がある。これにより、読み出しマージンが、両側セルと比較して半分に減少する。しかし、回路製作プロセスが進展するにつれ、基準値がずれることがあり、それによって読み出しマージンがさらに小さくなる。自己基準方式により、単一側セルとそれ自体との比較が可能になり、それによって、より大きなマージンが提供される。本明細書で説明する自己基準セルのテストから、固定基準セルに対しマージンが少なくとも倍になることがわかっている。
ビットセル800は、直列に接続されてノードQ804を形成する、2つのFeCap C1、C2を有する。プレートライン1(PL1)はFeCap C1に結合され、プレートライン2(PL2)はFeCap C2に結合される。これらのプレートラインは、読み出し及び書き込み動作の間FeCapへのバイアスをかけるように用いられる。パスゲート802は、ノードQをビットラインBに結合するように構成される。パスゲート802は、並列に接続されるPMOSデバイスとNNMOSデバイスを用いて実装される。この配置により、書き込み動作の間パスゲートの両端の電圧降下が低減され、そのため、書き込みの間ノードQ、QBに一層高い電圧が提示され、それによって、FeCapに一層大きな分極が与えられる。或いは、NMOSパスゲートが、ブーストされたワードライン電圧と共に用いられてもよい。この場合、PASS信号は、1つのNFET Vt(閾値電圧)によってブーストされる。しかし、これにより、信頼性問題が生じ得、電力消費が過剰になり得る。CMOSパスゲートを用いると、ビットセルに付加的な面積が加わるが、スピード及び電力消費が改善される。クランプトランジスタMC806がノードQに結合される。クランプトランジスタ806は、非アクセス時間期間s0の間、この実施形態では0ボルト又は接地であるクリア信号CLRに応答して、プレートライン上の低論理電圧にほぼ等しい電圧までQノードをクランプするように構成される。このようにして、ビットセルが読み出し又は書き込みのためにアクセスされていない時間の間、FeCapの両端に電圧が印加されず、従ってTDDB及び意図しない部分的脱分極が本質的に排除される。
ノードQ、プレートラインPL1及びPL2の初期状態は、図9に示すように、時間期間s0で全て0であり、そのため、ビットセルがアクセスされていないときFeCapの両端にDCバイアスが存在しない。読み出し動作を開始するために、時間期間s1の間に図示するように、PL1は高に切り替えられ、PL2は低に保たれる。式1に関して先に説明したように、セルに前に書き込まれた最後のデータ値からのFeCapの保持された分極に基づく静電容量比からノードQに信号902が現れる。この電圧は、ビットセルの外にある読み出しコンデンサ820に記憶される。この記憶は、第2のイネーブル信号EN1に応答して、この電圧を転送ゲート802を通過させてビットラインBLに送り、次いで、転送ゲート822を通過させることによって行われる。BL及び読み出しコンデンサは、パスゲート802、822、823がイネーブルにされる前に、VDD/2にプリチャージされることに留意されたい。これは、Q上の回復された信号がBLを介して読み出しストレージコンデンサ820及び821に転送されるとき電荷共有による信号喪失を最小にするためである。次いで、時間期間s2の間、PL1が切り替えられて低に戻り、クランプトランジスタ806を用いてノードQが放電される。次に、時間期間s3の間、PL1を低に保ったままPL2が高に切り替えられる。新たな電圧904がノードQ上に現れるが、今回はコンデンサ比が反対になっている。次いで、この電圧は、転送ゲート823を介して別の外部読み出しコンデンサ821に記憶される。このように、同じ2つのFeCapが、高信号及び低信号を読み出すために用いられる。次いで、センスアンプ810は、外部読み出しコンデンサ820、821に記憶された電圧を用いることによってビットセルの状態を決定する。
典型的に、ビットセル800のアレイがある。図8においてビットセル800〜800nの1コラムが、ビットライン801を介して読み出し転送ゲート822、823に結合されて示される。さらに、同様のビットセルの複数のコラムがあり、nロー×mコラムのアレイが形成される。例えば、SoC100では、NVLアレイは8×32である。ただし、先に説明したように、異なる構成も実装され得る。読み出しコンデンサ及びセンスアンプは、例えば、メモリアレイの周辺に置かれ得る。
図10は、NVLアレイ110をより詳細に示すブロック図である。大型アレイの制御環境外に不揮発性要素を埋め込むと、信頼性及び製作の難題が生じる。図1を参照して先に説明したように、個々のNVL FFにテスト容易性特性を付加することは、面積オーバーヘッドの点で困難であり得る。テスト特性コストを償却し、製造性を改善するために、SoC100は、論理クラウドにわたって分散されるFeCapベースのビットセルの256bミニNVLアレイ110を用いて実装されて、電力が取り去られたとき様々なフリップフロップ120の状態を保存する。FF120の各クラウド102〜104は、関連するNVLアレイ110を含む。中央NVLコントローラ106が、全てのアレイ、及びこれらのアレイのFF120との通信を制御する。
NVLアレイは任意の数のnローmコラム構成で実装され得るが、この例では、NVLアレイ110は、ビットセルの8のロー及び32のビットコラムのアレイ1040を備えて実装される。ビットセル1041などの各個々のビットセルは、ロードライバ1042によって提供される制御ラインのセットに結合される。プレートライン(PL1、PL2)、センスアンプイネーブル(SAEN)、転送ゲートイネーブル(PASS)、及びクリア(CLR)を含む、先に説明した制御信号は全てロードライバによって駆動される。ビットセルの各ローに対してロードライバのセットがある。
ビットセル1041などの各個々のビットセルはまた、ビットラインを介して入力/出力(IO)ドライバ1044のセットに結合される。この実装形態では、IOドライバのセット1045などのIOドライバの32セットがある。各ドライバセットは、ビットラインの1ローが読み出されるときデータ値を提供する出力信号1047を生成する。各ビットラインは、ビットセルのコラムの長さ延び、そのコラムのためのIOドライバに結合する。各ビットセルは、例えば、2C−3Tビットセル800として実装され得る。この場合、単一ビットラインが各コラムに対して用いられ得、センスアンプ及び読み出しコンデンサはIOドライバブロック1044に位置し得る。NVLアレイ110の別の実装形態において、各ビットセルは、4C−12Tビットセル400として実装され得る。この場合、ビットラインは、各コラムに対して2つのIOドライバを備えた差動対となり得る。コンパレータが、ビットラインの差動対を受け取り、出力ラッチに提供される最終的な単一ビットラインを生成する。NVLアレイ110の他の実装形態において、他の既知の又は後に開発されるビットセルが、下記でより詳細に説明されるロードライバ及びIOドライバとともに用いられ得る。
タイミング論理1046は、読み出しドライバを制御して各読み出し及び書き込み動作に対する制御信号のシーケンスを生成するために用いられるタイミング信号を生成する。タイミング論理1046は、同期又は非同期状態機械、或いは他の既知の又は後に開発される論理技法を用いて実装され得る。1つの潜在的な代替実施形態では、複数の出力を備えた遅延チェーンが用いられる。これらの出力は、遅延チェーンを所望の間隔で「タップ」して制御信号を生成する。マルチプレクサが、各制御信号に対して複数のタイミング選択肢を提供するように用いられ得る。別の潜在的な実施形態において、適切な制御信号に接続される専用の出力を用いて所望の間隔でエッジを生成するプログラマブル遅延生成器が用いられる。
図11は、図10のNVLアレイに用いられる入力/出力回路1150のセットのより詳細な概略図である。図10を再度参照すると、IOブロック1044内の32のドライバの各IOセット1045は、IO回路1150と類似している。I/Oブロック1044は、NVLビットのテスト容易性を補助するいくつかの特性を提供する。
ここで図11を参照すると、第1のラッチ(L1)1151が、読み出しの間出力ラッチとして働き、また、第2のラッチ(L2)1152と組み合わさってスキャンフリップフロップを形成する。スキャン出力(SO)信号は、書き込みドライバブロック1158内のマルチプレクサ1153に導かれて、デバッグの間スキャンデータをアレイに書き込ませる。スキャン出力(SO)は、IOドライバの次のセットのスキャン入力(SI)にも結合されて、NVLアレイ110からビットの1ロー全体を読み出すため又はNVLアレイ110に書き込むために用いられ得る32ビットスキャンチェーンを形成する。SoC100内で、各NVLアレイのスキャンラッチは直列式に接続されてスキャンチェーンを形成し、そのため、全てのNVLアレイがスキャンチェーンを用いてアクセスされ得る。或いは、各NVLアレイ内のスキャンチェーンは並列式に動作され得(N個のアレイがN個のチェーンを生成する)、スキャンテストをスピードアップするために各チェーンでの内部スキャンフロップビットの数が低減される。チェーンの数及びチェーン当たりのNVLアレイの数は必要に応じて可変とし得る。典型的に、SoC100内の全てのストレージラッチ及びフリップフロップはスキャンチェーンを含み、そのためSoC100の完全なテストが可能となる。スキャンテストは、周知であり、本明細書でより詳細に説明する必要はない。この実施形態では、NVLチェーンは、チップ上で論理チェーンから隔離されているため、これらのチェーンは独立して稼働され得、NVLアレイは論理チェーンの編成、実装、又は制御に全く依存せずにテストされ得る。NVLスキャンチェーンの最大全長は、常に、論理チェーンの全長より短い。これは、NVLチェーンの長さがNVLアレイ内のローの数に等しい除数によって短くされるからである。この実施形態では、NVLアレイ当たり8のエントリがあり、そのため、NVLスキャンチェーンの全長は、論理スキャンチェーンの全長の1/8である。これにより、NVLアレイにアクセスし、NVLアレイをテストするために必要とされる時間が短縮され、そのため、テストコストが低減される。また、このことにより、論理フロップ、論理スキャンチェーン上のそれらの位置、及びそれらの対応するNVLアレイビットロケーションの間のマッピングを決定する(アレイ、ロー、及びコラムのロケーションを識別する)必要がなくなり、NVLテスト、デバッグ、及び故障解析が大きく簡略化される。
スキャンテストは有用であるが、SoC100内の様々なNVLアレイをテストするために何百又は何千ものビットにおけるスキャンを行うために膨大な長さの時間がかかり得るため、SoC100の製造テストには良好なメカニズムを提供しない。これは、NVLアレイ内のビットに対する直接アクセスがないためである。各NVLビットセルは、関連するフリップフロップに結合され、フリップフロップの状態を保存することによってのみフリップフロップに書き込まれる。そのため、NVLアレイに、関連するフリップフロップからパターンテストをロードするために、対応するフリップフロップは、スキャンチェーンを用いて設定されなければならない。NVLアレイにおける特定のローの内容を制御するためにスキャンチェーン上のどのビットがセット又はクリアされなければならないかを決定することは、シリコンダイ上のフロップの任意のグループの物理的ロケーションに基づくが、いかなる通常のアルゴリズムにも基づかないで接続が成されるので、複雑なタスクである。このように、フロップのNVLロケーションへのマッピングは制御しなくてよく、典型的に、いくらか無作為に成される。
改善されたテスト技法がIOドライバ1150内で提供される。図1を再度参照すると、NVLコントローラ106は、チップ上の全てのNVLアレイに対して高速合否判定テストを実施する状態機械を有し、それによって、不良ダイを排除する。1つのこのような手法では、少なくとも1つの不揮発論理コントローラが、組込み自己テストモードを制御するように構成され、このモードでは、複数のNVLアレイのうち1つのNVLアレイの少なくとも一部に全て0又は全て1が書き込まれ、次いで、NVLアレイのこの少なくとも一部から読み出されるデータが全て1又は全て0かどうか判定される。これは、まず、全0/1書き込みドライバ1180を用いて或るローに全て0又は1を書き込むこと、オフセットじょう乱電圧(V_Off)を印加すること、次いで、並列読み出しテストデータ論理1170を用いて同じローを読み出すことによって成される。データラッチ1151からのデータ出力信号(OUT)が高である場合、ANDゲートG1からの信号corr_1が高になり、隣接するコラムのIOドライバの並列読み出しテスト論理ANDゲートG1からの信号corr_1が高になる。このようにして、NVLアレイ110における32セットのI/Oブロック1150のG1 ANDゲートが、NVLアレイ110の選択されたローについて全ての出力が高かどうかをNVLコントローラに通知する大きな32入力ANDゲートを実装する。ORゲートG0は、0の読み出しについて同じことを行う。このようにして、NVLコントローラは、NVLコントローラからNVLアレイにいかなる明示的なテストデータも転送することなく、いくつかの制御信号のみを用いて、選択されるローへの全て1の書き込みを同時に実施するようにSoC100内の全てのNVLアレイに指示し得、次いで、選択されたローを同時に読み出すように及び合否表示を提供するように全てのNVLアレイに指示し得る。典型的なメモリアレイBIST(組込み自己テスト)の実装において、BISTコントローラが、各出力ビットが予想される値と比較され得るように、全てのメモリ出力値にアクセスしなければならない。典型的なシリコンSoCチップ上に何千もの論理フロップがあると仮定すると、NVLアレイ出力の総数も何千となり得る。通常のBIST論理回路を用いてこれらのアレイをテストすることは、多数のデータ接続及びデータコンパレータが必要とされるので、実際的ではない。そこで、NVLテスト方法は、8ローを有するNVLアレイに対して8回繰り返され得(繰り返し数はアレイ編成に従って変わり得る。一例では、10エントリNVLアレイ実装でこのテスト方法を10回反復する)、SoC100における全てのNVLアレイが、8書き込みサイクル及び8読み出しサイクルのみで全て1の動作について正しいかどうかテストされ得る。同様に、SoC100における全てのNVLアレイが、8書き込みサイクル及び8読み出しサイクルのみで全て0の動作について正しいかどうかテストされ得る。全てのNVLアレイの結果は、NVLアレイの各々からcorr_0及びcorr_1信号を受け取り、単一のcorr_0及びcorr_1信号を生成する付加的なANDゲート及びORゲートによって、合否を示す単一信号に凝縮され得るか、又は、NVLコントローラが、各個々のcorr_0及びcorr_1信号を検査し得る。
全0/1書き込みドライバ1180は、PMOSデバイスM1、M3及びNMOSデバイスM2、M4を含む。デバイスM1とM2は、直列に接続されて、ビットラインBLに結合されるノードを形成し、デバイスM3とM4は、直列に接続されて、反転ビットラインBLBに結合されるノードを形成する。制御信号「all_1_A」及び反転制御信号「all_1_B」が、NVLコントローラ106によって生成される。書き込みサイクルの間アサートされると、これらの制御信号は、デバイスM1及びM4をアクティブにして、論理1のデータ値を表すようにビットラインBL及びBLBをプルにさせる。同様に、制御信号「all_0_A」及び反転制御信号「all_0_B」が、NVLコントローラ106によって生成される。書き込みサイクルの間アサートされると、これらの制御信号は、デバイスM2及びM3をアクティブにして、論理0のデータ値を表すようにビットラインBL及びBLBをプルにさせる。このようにして、32のドライバは、制御信号に応答してビットセルのローに全て1を書き込むように、及び、別の制御信号に応答してビットセルのローに全て0を書き込むように動作可能である。同じタスクを行なう他の回路トポロジーが当業者によって容易に設計され得る。本実施形態は、必要とされるデータ書き込みを行うために4個のトランジスタしか必要としないので好ましい。
通常の書き込み動作の間、書き込みドライバブロック1158は、data_in信号に記憶されるべきデータビット値を受け取る。書き込みドライバ1156、1157は、相補データ信号を、ビットラインBL、BLBに、及びそれによって選択されるビットセルに、結合する。書き込みドライバ1156、1157は、書き込みイネーブル信号STOREによってイネーブルにされる。
図12Aは、読み出しサイクルの間のオフセット電圧テストを図示するタイミング図である。ビットセルにじょう乱電圧を印加するために、読み出しの間状態s1が改変される。この図は、「0」(ノードQ)のデータ値を読み出すための電圧じょう乱テストを図示しており、「1」のデータ値についての電圧じょう乱テストはこれに類似するが、じょう乱電圧がセンスアンプの反対側(ノードQB)に注入される。そのため、この実施形態におけるじょう乱電圧は、読み出される論理値に基づいてセンスアンプの低電圧側に注入される。転送ゲート1154、1155はビットラインBL、BLBに結合される。図示しないデジタル−アナログコンバータ(これは、例えば、外部テスタにおけるオンチップ又はオフチップとし得る)が、所望の量のオフセット電圧V_OFFを生成するため、NVLコントローラ106によって、オフチップテストコントローラによって、或いは、外部の生産テスタを介してプログラムされる。NVLコントローラ106は、s1時間期間の間「0」を記憶する側のビットラインについてVcon制御電圧信号をアサートし得、それによって、Vcon転送ゲート1154、1155がイネーブルにされ、s1の間M2/M4を用いて他方のビットラインを放電し、s1の間制御信号PASSをアサートして転送ゲート402、403をオンにする。これにより、1202で示されるように、「0」を記憶する側のノードQ/QB上の電圧が電圧V_Offに初期化される。このプリチャージ電圧は、1204で示されるように、s3の間SAに利用可能な差分を小さくし、そのため、ビットセルは不合格に一層近くプッシュされる。高速生産テストでは、V_Offは、必要とされるマージン値に設定され得、次いで、いかなる不良ダイも排除するためG0〜G1を用いる合否テストが用いられ得る。
図12Bは、オフセット電圧の掃引の間生成されるヒストグラムを図示する。ビットレベル不良マージンは、V_Offを掃引すること、及び、上述したように、読み出しサイクルのシーケンスを用いて読み出しデータビットをスキャンすることによって検討され得る。この例では、最悪ケースの読み出しマージンは550 mVであり、平均値は597 mVであり、標準偏差は22 mVである。このようにして、SoC上の各NVLアレイにおける全てのビットセルの動作特徴が容易に決定され得る。
上述したように、大型アレイの制御環境外に不揮発性要素を埋め込むと、信頼性及び製作上の難題が生じる。NVLビットセルは、任意のNVメモリ技術に必要とされるように、最大読み出し信号マージン及びインサイチュテスト容易性のために設計されるべきである。しかし、NVL実装は、NVLアレイが論理クラウド内部で分散しているので、SRAMのような組込み自己テスト(BIST)に頼ることができない。上述のNVL実装は、中央NVLコントローラ106によって制御されるNVLアレイを含む。満足な挙動についてダイをスクリーンニングする一方で、NVLコントローラ106は、いかなる外部テスタも介入させずにオンチップで実施されるステップのシーケンスを走らせる。テスタは、開始信号を送出し、所望の信号マージンに対応するアナログ電圧を印加するだけでよい。コントローラは、まず、NVLアレイにおける全てのビットに全て0又は1を書き込む。次いで、コントローラは、1回に1ローのアレイの読み出しを開始する。NVLアレイ読み出し動作は、必ずしもNVLアレイ書き込み動作の直後に行うとは限らない。時間及び温度依存故障メカニズムを加速させるために、しばしば、データ書き込み動作とデータ読み出し動作との間に高温ベークサイクルが挿入され、そのため、製造関連テストの間長期データ保持に影響を及ぼす欠陥が排除され得る。上記でより詳細に説明したように、アレイは、アレイの全ての出力のAND及びORを取る論理を含む。これら2つの信号がコントローラに送られる。各ローを読み出すと、コントローラは、アレイからの2つの信号を検査し、コントローラが前に書き込んだものの知見に基づいて、読み込んだデータがじょう乱電圧の存在下で正しいか否かを判定する。データが不正確な場合、コントローラはテスタに不合格信号を送出し、この時点でテスタはこのダイを排除し得る。このローが合格である場合、コントローラはアレイにおける次のローに移る。全てのアレイが、通常のNVLクロック周波数で並列にテストされ得る。これにより、テスタは、開始信号を送出し、所望の読み出し信号マージン電圧を提供するだけで、NVLアレイの高速オンチップテストを行い得、一方、NVLコントローラは、組込みテスト手順の終了時に良品レポートを作成するか、又は、最初の不良ローが検出されるたびに不合格信号を生成する。不良は直ちにレポートされるので、テスタは、最初の不良の時点でテスト手順を中止することができ、残りのローをテストするさらなるテスト時間を無駄に費やすことがない。このことは、全ての不揮発性メモリ(NVM)に対するテスト時間ひいてはテストコストがSoCに対する全体テストコストの多くを占めることが多いので、重要である。NVLコントローラが、テスト手順の間の任意の時点で、「終了」信号をアクティブにし、不良信号がアクティブにされていない場合、テスト下のダイは必要とされるテストに合格している。
さらなる故障解析のために、コントローラはさらにデバッグモードを有し得る。このモードでは、テスタはアレイ及びロー番号を指定し得、次いでNVLコントローラはそのローだけに読み出し又は書き込みを行い得る。読み出された内容は、NVLスキャンチェーンを用いてスキャンされ得る。この方法は、CPUが介入することなく、又は、NVLアレイビットが個々のフロップに無作為にマッピングされる長く複雑なSoCスキャンチェーンを用いることを必要とせずに、ダイ上の任意のNVLビットに読み出し又は書き込みアクセスを提供する。また、これは、読み出し信号マージン決定のためのアナログ電圧の印加と協調して成され得、そのため、個々のビットに対する正確なマージンが測定され得る。
これらの能力はNVLを実用的とする助けとなる。というのは、テスト容易特性なしには、製品に不揮発性論理要素を用いることは危険を伴い得るからである。また、テスタの介入を最小にしてオンダイで合否をテストすることにより、テスト時間ひいてはコストが低減される。
論理クラウド内に分散されるミニアレイを用いたNVL実装は、ECCのような高度な誤り検出方法が、膨大な量の付加的なメモリコラム、及びアレイ毎に用いられるべき制御論理を必要とし得ることを意味し、これは、面積の観点から困難であり得る。しかし、信頼性のレベルを高めるために、SoC100のNVLアレイは、ローコスト誤り検出方法としてパリティ保護を含み得る。これをこれ以降により詳細に説明する。
図13は、ビットの32コラム(0:31)を有する例示のNVLアレイを図示するNVLアレイ100におけるパリティ生成を図示する概略図である。このNVLアレイは、入力データ値DATA_IN1151と、前のコラムのIOドライバの同様のXORゲートの出力との排他的ORを取る。図11Aを再度参照して、NVLアレイの例えば部分1350などの各IOドライバセクションは、XORゲート1160を含み得る。ロー書き込みの間、コラム30にあるXORゲート1160の出力は、ビットコラム0:30に書き込まれるデータのローの全体的なパリティ値であり、図11BでXOR_INとして示す、NVLミニアレイのコラム31のデータ入力にその出力をフィードすることによって最後のコラムにパリティ値を書き込むために用いられる。
同様にして、読み出しの間、XORゲート1160は、読み出しラッチ1151からマルチプレクサ1161(図11参照)を介したデータ値DATA_OUTと、前のコラムのIOドライバの同様のXORゲートの出力との排他的ORを取る。ビットコラム30にあるXORゲート1160の出力は、ビットコラム0:30から読み出されたデータのローに対する全体的なパリティ値であり、パリティ誤り検出器1370においてビットコラム31から読み出されるパリティ値と比較するために用いられる。読み出されたデータから求められる全体的なパリティ値がコラム31から読み出されるパリティビットとマッチングしない場合、パリティ誤りが宣言される。
パリティ誤りが検出されると、このパリティ誤りは、記憶されたFF状態値が信頼できないことを示す。NVLアレイは典型的に、SoCがパワーオフ状態にされた後に動作を再開するとき読み出されるので、パリティ誤りの検出は、正しいFF状態値を再生するためにフルブート動作の実施が必要とされることを示す。
しかし、例えば、電力をオフにする前にFF状態が適切に記憶されなかった場合、又は、新品のデバイスの場合、中間の状態が存在し得る。例えば、NVLアレイが空である場合、典型的に、全てのビットが0の値を有し得るか、又は、全てのビットが1の値を有し得る。全て0の場合、全て0に対して生成されるパリティ値は0であり、これは0のパリティビット値とマッチングする。従って、このパリティテストは、FF状態が正しく、ブート動作が実際は必要とされるのに必要とされないと誤って示すことになる。こうしたことが生じるのを防ぐために、例えば、パリティビットを反転したバージョンがビットラインドライバ1365によってコラム31に書き込まれ得る。図11Aを再度参照して、コラム0〜30のためのビットラインドライバ1156は入力データビットも反転するが、マルチプレクサ1153はdata_inビットをそれらが受け取られたとき反転するので、その結果、コラム0〜30のデータは非反転で記憶されることに留意されたい。別の実施形態において、例えば、データビットが反転され得、パリティ誤りは反転されない。
全て1の場合、コラムの数が偶数の場合は、計算されるパリティはゼロに等しく、1の反転値がパリティコラムに記憶される。従って、全て1のデータコラムの数が偶数であるNVLアレイでは、パリティ誤りは検出されない。こうしたことが生じないようにするために、NVLアレイ110は、データコラムの数が奇数となるように制約される。例えば、この実施形態では、31のデータコラム及び1つのパリティコラムがあり、合計で32のビットセルコラムがある。
いくつかの実施形態では、NVL読み出し動作が行われると、NVLアレイのための制御論理により、パリティビットが読みだされ、反転され、書き戻される。これにより、NVLアレイは、前のNVLアレイ書き込みが不完全であったか又は無効/破損された時点を検出し得る。残余分極は、単一読み出しサイクルでは完全にはなくならない。典型的に、FeCapを完全に脱分極するには、又は、NVL読み出しパリティを信頼性を持ってトリガするために十分にデータを破壊するには、5〜15読み出しサイクルかかる。例えば、電力喪失のため最後のNVL記憶動作の間8NVLアレイローのうち4ローしか書き込まれなかった場合、前の機械状態の取り込みが不完全であるという結果になる可能性が極めて高い。しかし、残余分極のため、直近の状態記憶シーケンスで書き込まれなかった4ローは、直近のNVLデータ記憶イベントからのデータではなく、2つ前のNVL記憶イベントなど、以前からの古いデータを依然として含んでいる可能性がある。これら4ローからのパリティ及び古いデータは、無効データとしてではなく有効なデータとして読み出される可能性がある。これは、次のウェイクアップ/パワーアップイベントの間NVLアレイから機械状態が復元されるとき、機械をハングアップ又はクラッシュさせる可能性が高い。従って、各エントリが読み出された後反転されたパリティビットを書き戻すことによって、古いデータの各ローが強制的に本質的に無効化される。
NVLエントリにデータを書き戻すと電力が多く使われるので、全てのビットにデータを書き戻さず、パリティビットのみにデータを書き戻すことが好ましい。本実施形態のアレイでは、この特性の寄生電力消費を最小化するため、全ての非パリティビット(すなわち、データビット)に対するPL1、PL2、及びセンスアンプイネーブル信号をイナクティブにする。
このようにして、SoCが無電力状態からパワーオン状態に遷移するたびに、NVLアレイから読み出されるデータが有効なFF状態情報を含むという有効性判定が成され得る。パリティ誤りが検出される場合、NVLアレイからFF状態を復元する代わりに、ブート動作が実施され得る。
図1を再度参照すると、低電力SoC100は、表1及び表2に関して先に説明したように、複数の電圧及び電力ドメインを有する。例えば、NVLアレイのためのVDDN_FV、VDDN_CV、スリープモード保持ラッチ及びウェル電源のためのVDDR、並びにシステムマイクロコントローラ、様々な周辺デバイス、SRAM、ROMなどを形成する論理ブロックの大部分のためのVDDLなどである。FRAMは、内部電力スイッチを有し、常時オン電源VDDZに接続される。また、VDDN_FVドメインは、FeCapビットセルが必要とする1.5ボルトなど、1つの電圧で動作するように設計され得、一方、VDDL及びVDDN_CVドメインは、例えば0.9〜1.5ボルトなどの、より低い電圧で動作して電力を節減するように設計され得る。このような実装形態では、パワースイッチ108を用いること、レベル変換、及び適切な領域における絶縁が必要とされる。NVLブロック110に関して必要とされる絶縁及びレベル変換の態様をこれ以降により詳細に説明する。これらの回路は、VDDL/VDDN_CVをVDDN_FV以下の任意の有効電圧とし得るように、また、回路が正しく機能するように設計され得る。
図14は、NVLアレイ110内の電力ドメインを図示するブロック図である。論理及びメモリの様々なブロックが表3に図示するように配置され得る。
表3で説明する電力ドメインVDDL、VDDN_CV、VDDN_FV、及びVDDRは、前述のスイッチ108など、パワースイッチの別個のセットを用いて制御される。しかし、或る種の条件に対して絶縁が必要とされ得る。IOバッファブロック1044内のデータ出力バッファが、NVL論理電力ドメインVDDN_CV内にあり、従って、チップの通常動作の間ドメインVDDR(又は特定の実装形態によってはVDDL)がオンである一方で、オフのままとなり得る。このような状況下の間全てのこのような信号を接地に接続するためにISO低絶縁が実装される。VDDN_CVがオフである一方で、ランダム論理領域におけるVDDR(又は特定の実装形態によってはVDDL)ドメインにおけるデータ出力に接続される論理は、VDDN_CVドメインからの任意の信号が浮いている(VDDN_CVドメインがパワーダウンされるとき駆動されていない)場合、これらの信号が絶縁されていないと、内部回路内の電力と接地の間で短絡回路を生成し得る。NVLアレイのcorrect_0/1出力及びスキャン出力にも同じことが当てはまる。ここでの全般的な考え方は、NVLアレイのいずれの出力も、NVLアレイに電力が与えられないとき絶縁されるということである。チップ内に常時オン論理が存在する場合、VDDL又はVDDN_CVからVDDに向かう全ての信号は、入力絶縁を用いて、VDDドメインの周辺で絶縁されなければならない。NVLフロップにはND入力において付加的な組込み絶縁が存在する。ここで、この入力は送信ゲートに向かい、送信ゲートの制御信号NUは常時オン信号によって駆動される。この入力が中間であると予想されるとき、NUは低にされ、それによって、ND入力ポートがイナクティブにされる。同様の組込み絶縁が、NVLアレイのデータ入力及びスキャンインに存在する。この絶縁は、VDDLがオフになるときNVL復元の間必要とされ得る。また、信号NU及びNVLデータ入力マルチプレクサイネーブル信号(mux_sel)は、VDDRドメインにおいてのみバッファされなければならない。同じことが保持イネーブル信号にも当てはまる。
動作の様々な電力節減モードを可能にするために、VDDL及びVDDN*ドメインは様々な時点で遮断され、短絡回路電流を燃焼させずに絶縁により動作が可能になる。
低電圧VDDLドメインから高電圧VDDNドメインへのレベル変換が、NVLビットセルに向かうNVLアレイの制御入力、例えば、ローイネーブル、PL1、PL2、リストア、リコール、及びクリア、に対して必要とされる。これにより、低電圧で動作し得るSoC論理及びNVL論理ゲートのブロックを低電圧で動作させ得ることによって、システム電力消散の低減が可能になる。ビットセルアレイ1040におけるビットセルの各ローに対し、例えば、プレートラインPL1、PL2、転送ゲートイネーブルPASS、センスアンプイネーブルSAEN、クリアイネーブルCLR、及び電圧マージンテストイネーブルVCONなどを含む、ビットセルの各ローに対する信号を駆動するワードラインドライバ1042のセットがある。ビットセルアレイ1040及びワードライン回路ブロック1042は、VDDNによって供給される。1042への入力信号に対するレベルシフトは、専用のレベルシフタ(図15参照)によって扱われ、ビットセルアレイ1040への入力に対するレベルシフトは、NVLビットセル内の回路の特殊なシーケンス処理によって、アレイデータ経路又はビットセルにいかなる付加的な専用回路も付加せずに、扱われる。
図15は、NVLアレイ110において用いるためのレベルコンバータ1500の概略図である。図15は、ワードラインドライバ1402のセットの一部とし得る1つのワードラインドライバを図示する。レベルコンバータ1500は、ワードラインドライバ1042のための1.5ボルトVDDNドメインにおける領域1502に形成されるPMOSトランジスタP1、P2及びNMOSトランジスタN1、N2を含む。ただし、タイミング及び制御モジュール1046における制御論理は、1.2ボルトVDDLドメインにおける領域1503に置かれる(1.2Vは、0.9V〜1.5Vの範囲とし得る可変VDDLコア電源を表すために用いられる)。1.2ボルト信号1506は、制御モジュール1046によって生成されるロー制御信号のうちの任意のものを示し、NVLビットセルアレイ1040にアクセスする際に用いられる。インバータ1510が、領域1503における制御信号1511、1512の相補対を形成し、これらの制御信号は、レベルコンバータ1500内のトランジスタN1及びN2へ導かれる。動作において、1.2ボルト信号1506が高に向かうと、NMOSデバイスN1がPMOSデバイスP2のゲートを低にプルし、それによって、P2が信号1504を最大1.5ボルトまでプルする。同様に、1.2ボルト信号1506が低に向かうと、相補信号1512により、NMOSデバイスN2がPMOSデバイスP1のゲートを低にプルし、それがPMOSデバイスP2のゲートをプルアップし、信号1504を約0ボルトの低に向かわせる。NMOSデバイスは、PMOSより堅固でなければならず、そのため、このコンバータはスタックしない。このようにして、電圧ドメインを通じてレベルシフトが行われ得、インバータ1510を含む制御論理を低電圧ドメイン1503に置くことによって電力が節減され得る。各信号に対し、コントローラ2つの相補制御信号1511、1512によってレベルコンバータ1500の各々に結合される。
図16は、強誘電性ビットセル内でセンスアンプを用いるレベルシフトの動作を図示するタイミング図である。図2を再度参照して、マルチプレクサ212からNVLアレイ110へ提供される入力データも、1.2ボルトVDDLドメインから、書き込み動作の間1.5ボルトVDDNドメインにおけるFeCapの最良動作のために必要とされる1.5ボルトまでレベルシフトされる必要がある。これは、例えば、ビットセル400のセンスアンプを用いて行われ得る。図4及び図13を再度参照して、1.2ボルトVDDLドメインからのBL1352などの各ビットラインBLは、ビットセル400内の転送ゲート402又は403に結合されることに留意されたい。センスアンプ410は、1.5ボルトVDDN電力ドメインで動作する。ここで図16を参照して、時間期間s2の間、ビットラインBL、BLB上にデータが提供され、時間期間s2の間転送ゲート402、403がパス信号PASSによってイネーブルにされてデータビット及びその反転値がビットラインから差動ノードQ、QBへ転送されることに留意されたい。しかし、1602で示すように、転送される電圧レベルは1.5ボルトレベル未満に制限されるに過ぎない。これは、ビットラインドライバが1.2ボルトVDDLドメインに置かれるからである。
センスアンプ410は、書き込みドライバ1156、1157などの書き込みデータドライバが時間期間s2の間適切な差分1602をQ/QB上に強制的に与えた後、1604で示すように、付加的な駆動を提供するため、時間期間s3、s4の間センスアンプイネーブル信号SAEN、SAENBによってイネーブルにされる。センスアンプにはより高い電圧(VDDN)によって電力が供給されるので、センスアンプは、書き込みデータドライバによってセンスアンプの両端に確立される差分に応答し得、センスアンプの論理0側をVSS(Q又はQB)までクランプし、論理1を含む他方の側はVDDNの電圧レベルまでプルアップされる。このようにして、NVL記憶動作の間電圧レベルシフト機能を提供するために既存のNVLアレイハードウェアが再利用される。
ただし、センスアンプから1.2Vドライバ電源への短絡を回避するために、書き込みデータドライバは、時間期間s2終了時、時間期間s3、s4の間センスアンプがオンにされる前に、センスアンプから隔離される。これは、時間期間s2の後STORE信号をデアサートすることによってビットラインドライバをオフにすることによって、及び/又は時間期間s2の後PASSをデアサートすることによって転送ゲートをイナクティブにすることによって成され得る。
上述の配置を用いて、処理又は演算デバイス動作サイクルにおける様々の点において電力節減又は有用性を最大化するために様々な構成が可能である。1つのこのような手法では、演算デバイスが、データの喪失なく又はリブートすることなく一連の電力中断にわたって連続的に動作するように構成され得る。図17に示す例を参照すると、処理デバイス1700が、上述のように、複数の不揮発性論理要素アレイ1710と、複数の揮発性ストレージ要素1720と、少なくとも1つの不揮発論理コントローラ1730とを含み、少なくとも1つの不揮発論理コントローラ1730は、複数の揮発性ストレージ要素1720によって表される機械状態を記憶するため、及び記憶した機械状態を複数の不揮発性論理要素アレイ1710から複数の揮発性ストレージ要素1720に読み出すために複数の不揮発性論理要素アレイ1710を制御する構成される。電圧又は電流検出器1740が、入力電源1750から電力品質を感知するように構成される。
電力管理コントローラ1760が、電圧又は電流検出器1740から電力品質に関する情報を受け取るため、電圧又は電流検出器1740と通信する。電力管理コントローラ1760はまた、機械状態を複数の不揮発性論理要素アレイ1710に記憶させ、複数の不揮発性論理要素アレイ1710から機械状態を復元させるための情報を提供するため、少なくとも1つの不揮発論理コントローラ1730と通信するように構成される。
電圧レギュレータ1770が、入力電源1750から電力を受け取るように、及び処理デバイス1700に電力を提供するように構成される出力電源レール1755に電力を提供するように接続される。電圧レギュレータ1770はさらに、電力管理コントローラ1760と通信するように、及び電力品質が閾値を下回るという判定に応答して、スイッチ1780の制御などを介して、入力電源1750から出力電源レール1755を切断するように構成される。
電力管理コントローラ1760及び電圧又は電流検出器1740は、少なくとも1つの不揮発論理コントローラ1730及び電圧レギュレータ1770と協調作動して、一次演算経路とは独立してデータバックアップ及び復元プロセスを管理する。1つのこのような例では、電力管理コントローラ1760は、電力品質が閾値を下回るという判定に応答して、処理デバイス1700のためのクロックを停止させるために信号を送信するように構成される。次いで、電圧レギュレータ1770は、入力電源1750から出力電源レール1755が切断されることに応答して、電力管理コントローラ1760に切断信号を送信し得る。電力管理コントローラ1760は、切断信号の受信に応答して、少なくとも1つの不揮発論理コントローラ1710にバックアップ信号を送信する。NVLアレイへのシステム状態のバックアップが完了すると、SoCから電力が取り去られるか、又は、機械状態の喪失のさらなる懸念なしに電力が劣化し続け得る。
電力品質を判定する個々の要素は、異なる手法において変化し得る。例えば、電圧レギュレータ1770は、閾値よりも電力品質がよくなることを検出するように、及び、それに応答して電力管理コントローラ1760に良好電力信号を送信するように構成され得る。それに応答して、電力管理コントローラ1760は、機械状態の復元を促すために複数の不揮発性論理要素アレイ1710及び少なくとも1つの不揮発論理コントローラ1730に電力を提供するよう信号を送信するように構成される。電力管理コントローラ1760は、パワーアップが完了したことを判定するように、及び、それに応答して、処理デバイス1700のためのクロックを解放するために信号を送信するように構成される。ここで、処理デバイス1700は、電力品質が閾値を下回るという判定の前の機械状態から動作を再開する。
処理デバイス1700がバックアッププロセスを完了するために十分な電力を有することを保証するために、電荷ストレージ要素1790が、出力電源レール1755が入力電源1750から切断された後複数の不揮発性論理要素アレイ1710に機械状態を記憶するために十分に長く処理デバイス1700に電力供給するために十分な一時的電力を処理デバイス1700に提供するように構成される。電荷ストレージ要素1790は、このような緊急電力を蓄えるように設計される少なくとも1つの専用オンダイ(又はオフダイ)コンデンサとし得る。別の手法において、電荷ストレージ要素1790は、自然に生じる寄生電荷がダイ内に蓄積する回路要素とし得る。この場合、回路要素から接地への電荷の消散により、バックアップ動作を完了するために十分な電力が得られる。
図18は、上述の不揮発性アレイバックアップからの演算デバイス揮発性ストレージシステム状態の復元の間のウェイク時間及びピーク電力コストをカスタマイズするための方法を説明するフローチャートである。この方法は、本開示に記載される処理デバイスの製造業者により、又はこのような処理デバイスにより実行されるべき特定のアプリケーションコードを有し得る顧客との組み合わせで製造業者により実行される。製造業者は、処理デバイスの複数の揮発性ストレージ要素によって表わされる機械状態を記憶するように構成される複数の不揮発性論理要素アレイを有する処理デバイスを製造し1802、処理デバイスは、記憶された機械状態を複数の不揮発性論理要素アレイから複数の揮発性ストレージ要素への読み出すことを可能にするように構成される。ステップ1804で、複数の不揮発性論理要素アレイの個々の不揮発性論理要素アレイにおけるロー毎の多数のロー及び多数のビットが、複数の不揮発性論理要素アレイの1つから一度に1つのローでデータを読むために用いられる時間に基づく目標のウェイクアップ時間と、複数の不揮発性論理要素アレイの1つから同じ時間に所与の長さのビットのローを読むために用いられるピーク電力に基づくピーク電力コストとに基づく。
目標の設計を決定するための方式が多数ある。1つのアプローチにより、この方法は、アレイ毎にピーク及び平均電力を決定するために不揮発性論理要素アレイの設計のシミュレーションを分析すること1806を含む。別のアプローチにおいて、この方法は、ピーク及び平均電力消費のためのアプリケーションコードを実行する演算デバイス揮発性ストレージシステムのシミュレーションを分析すること1808を含む。更に別のアプローチにおいて、不揮発性論理要素アレイの設計のシミュレーションが、アレイ毎のピーク及び平均電力を含む第1の分析結果を決定するために分析され1810、アプリケーションコードを実行する演算デバイス揮発性ストレージシステムのシミュレーションが、演算デバイス揮発性ストレージシステムのためのピーク及び平均電力消費を含む第2の分析結果を決定するために分析される1812。第1の分析結果の少なくとも態様及び第2の分析結果の少なくとも態様が、複数の不揮発性論理要素アレイのための目標の設計を決定するために目標のウェイクアップ時間及びピーク電力コストと比較される1814。
或るアプローチにおいて、NVLミニアレイが「ロー」で配され、各ローは順次に読まれる。そのため、ダイ上のミニアレイの全てにおける最小数エントリを備えたアレイに順次アクセスするために用いられる時間が、最小ウェイクアップ及びスリープ時間コストを設定する。読まれた各アレイでアクセスされたビットの数がピーク電力コストを決定する。従って、システム設計者にエントリの数及びエントリ毎のビットの数を選択させ得るミニアレイ「コンパイラ」を提供することにより、スリープ/ウェイク時間対ピーク電力コストに対して境界が設定され得る。この柔軟性は、設計時間の間提供され、製造された後修正され、設計される。
このような分析の例には、Redhawk、Cadence EPS、Powermillなどとしてこのようなツールを用いる一方で、顧客アプリケーションコードを実行するチップ機能的シミュレーションから得られる切替えアクティビティを用いて、ピーク及び平均電力消費のために特定のチップ設計(NVLアレイなし)の分析を行うことが含まれる。NVLを備えた及び備えない設計のピーク及び平均電力は、製品仕様/目標と及び計画された電力分布のサイズ及び容量と比較され得、これは、パッケージピンの数、パッケージ寄生成分(インダクタンス、抵抗、静電容量)、オンダイ電圧レギュレータ容量(アンペア数供給スペック)、及びオンダイ電力分布(配線の電流搬送容量、金属層間のビア、及びエレクトロマイグレーション限界、電圧ドループ、局地デカップリングキャパシタサイズなどと較べたものなど)の分析を含む。概して、設計者は、設計された回路を低電力状態からできるだけ速くウェイクアップすることを望み得る。そのため、設計者は、スプレッドシートを構築し得、ウェイクアップ対突入電流のためのオプションを計算し得、NVLアレイアクセスのどの組み合わせが許容され得るか判定し得る。幾つかの場合において、チップ目標又は仕様は、電力分布容量を増大させることと一層速くウェイクアップさせるためのチップピーク電力スペック限界など、適切なトレードオフをつくるように改変され得る。
図19は、性能特性に対する制御を達成するため処理デバイスに対する制御の別の方法を図示する。上述のように、複数の不揮発性論理要素アレイが、複数の揮発性ストレージ要素によって表わされる機械状態を記憶するように、及び記憶された機械状態を複数の不揮発性論理要素アレイから複数の揮発性ストレージ要素へ読み出すように制御される1902。不揮発性論理要素アレイの記憶及び/又は読出しを制御することに関して入力信号が受信される1904。この入力信号に基づいて、少なくとも1つの不揮発性論理コントローラが、並列に、順次に、又はそれらの任意の組み合わせで複数の不揮発性アレイへのデータの記憶又は複数の不揮発性アレイからのデータの読み取りの少なくとも一方を可変的に制御する1906。入力信号は、ユーザーインターフェースから及び/又は別個の演算要素から受信され得る。例えば、別個の演算要素が、演算デバイス装置のための電力及び演算リソース要件の決定に少なくとも部分的に基づいて複数の不揮発性アレイのための記憶及び/又は読み取りシーケンスを決定する1908アプリケーションを実行し得る。このように構成され、ユーザーが、ウェイクアップ/バックアップ時間及びピーク電力使用を所定の状況に調整するために処理デバイスの動作方法を改変し得る。
システム例
図20は、上記のように、NVLアレイを含む別のSoC2000のブロック図である。SoC2000は、Cortex−M0プロセッサコア2002、ユニバーサル非同期レシーバ/トランスミッタ(UART)1904及びSPI(シリアル周辺インターフェース)2006インターフェース、並びに10KB ROM2010、8KB SRAM2012、64KB(強誘電性RAM)FRAM2014メモリブロック、市販の超低電力(ULP)マイクロコントローラの特性を特徴とする。130 nmFRAMプロセスベースのSoCは、単一1.5V電源、8MHzシステムクロック、及びNVL動作のための125MHzクロックを用いる。このSoCは、それぞれ、SRAM及びFRAMからのコードを実行する一方で、75 μA/MHz及び170 μA/MHzを消費する。2537のFFの全体システム状態をバックアップ及び復元するエネルギー及び時間コストは、それぞれ、4.72 nJ及び320 nsと1.34 nJ及び384 nsのみを要し、これらはこのクラスのデバイスの業界ベンチマークである。SoC2000は、先により詳細に説明したように、各NVLビットに対するテスト能力、及び550 mVのインサイチュ読み出し信号マージンを提供する。
SoC2000は、10のNVLアレイによって提供される2537のFF及びラッチを有する。中央NVLコントローラが、先により詳細に説明したように、全てのアレイ、及びそれらのFFとの通信を制御する。この分散NVLミニアレイシステムアーキテクチャにより、テスト特性コストの償却が促進され、わずか3.6%のSoC面積オーバーヘッドが実現され、システムレベルのスリープ/ウェイクアップエネルギーコストがビット当たり2.2 pJ/0.66 pJという極めて低い値となる。
本発明は、特定の応用例として、例えばシステムオンチップ(SoC)における、マイクロコントローラ(MCU)に実装されるが、他の形態のプロセッサにも応用される。SoCは、設計ライブラリにより提供される予め設計された機能回路と組み合わされたカスタム設計された機能回路を各々が含む、1つ又は複数のモジュールを含み得る。
本発明を例示の実施形態を参照して説明してきたが、この説明は限定的な意味で解釈されることを意図していない。本発明の様々な他の実施形態が、この説明を参照した当業者には明らかであろう。例えば、リモートコントロール、アクセスバッジ及びフォブ、スマートクレジット/デビットカード及びエミュレータ、スマートフォン、情報端末などの、他の携帯又は移動用システム、並びに任意の他の現時点で既知の又は今後開発される携帯又は埋め込みシステムが、完全にパワーダウンされた状態からフル動作状態をほぼ即座に回復し得るように本明細書で説明したようなNVLアレイを具現化し得る。
不揮発性FeCapビットセルに結合される保持ラッチの実施形態を本明細書で説明したが、別の実施形態において、NVLアレイからの不揮発性FeCapビットセルが、低電力保持ラッチを含まないフリップフロップ又はラッチに結合され得る。この場合、システムは、例えば、フル電力状態、又は別の状況で電圧又はクロックレートの低下に基づいて電力が減少した状態と、完全にオフ電力状態との間で遷移し得る。上述したように、電力をオフにする前に、フリップフロップ及びラッチの状態は分散NVLアレイに保存され得る。電力が回復されると、フリップフロップは、関連付けられたNVLアレイビットセルによって提供される入力を介して初期化され得る。
本開示に記載した技法は、ハードウェア、ソフトウェア、ファームウェア、又はこれらの任意の組み合わせにおいて実装され得る。ソフトウェアにおいて実装される場合、ソフトウェアは、マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、又はデジタル信号プロセッサ(DSP)などの1つまたは複数のプロセッサにおいて実行され得る。本技法を実行するソフトウェアは、まず、コンピュータ可読媒体、例えば、コンパクトディスク(CD)、ディスケット、テープ、ファイル、メモリ、又は任意の他のコンピュータ可読媒体デバイスに記憶され得、プロセッサにおいてロード及び実行され得る。場合によっては、ソフトウェアは、コンピュータ可読媒体及びこのコンピュータ可読媒体のためのパッケージ材料を含む、コンピュータプログラム製品に含めて販売され得る。場合によっては、ソフトウェア命令は、着脱可能なコンピュータ可読媒体(例えば、フロッピーディスク、光ディスク、フラッシュメモリ、USBキー)を介して、別のデジタルシステム上のコンピュータ可読媒体から送信経路を介する等の方式で配信され得る。
本明細書では、方法ステップが順次に提示及び説明されることがあるが、示され説明されるステップの1つ又は複数が、省略、反復、同時実行され得、及び/又は、図示され及び/又は本明細書で説明された順とは異なる順で実施され得る。従って、本発明の実施形態は、図示され及び/又は本明細書で説明されたステップの特定の順に限定されるとみなされるべきではない。
従って、特許請求の範囲は、本発明の真の範囲内に入るものとして実施形態の任意のそのような改変を包含することが意図されている。

Claims (5)

  1. 不揮発性アレイバックアップからの演算デバイス揮発性ストレージシステム状態の復元の間ウェイク時間とピーク電力コストとをカスタマイズするための方法であって、
    処理デバイスの複数の揮発性ストレージ要素によって表わされる機械状態を記憶するように構成される複数の不揮発性論理要素アレイを有する前記処理デバイスを製造することであって、前記処理デバイスが、記憶された機械状態を前記複数の不揮発性論理要素アレイから前記複数の揮発性ストレージ要素へ読み出すことを可能にするように構成される、前記処理デバイスを製造することを含み、
    前記複数の不揮発性論理要素アレイの個々の不揮発性論理要素アレイにおける特定の数のローとロー毎の特定の数のビットとが、前記複数の不揮発性論理要素アレイの1つから一度に1つのローでデータを読むために用いられる時間に基づく目標のウェイクアップ時間と、前記複数の不揮発性論理要素アレイの前記の1つから同じ時間に所与の長さのビットのローを読むために用いられるピーク電力に基づくピーク電力コストとに基づいて製造される、方法。
  2. 請求項1に記載の方法であって、
    アレイ毎のピーク及び平均電力を決定するために前記不揮発性論理要素アレイの設計のシミュレーションを分析することを更に含む、方法。
  3. 請求項1に記載の方法であって、
    ピーク及び平均電力消費のためのアプリケーションコードを実行する前記演算デバイス揮発性ストレージシステムのシミュレーションを分析することを更に含む、方法。
  4. 請求項1に記載の方法であって、
    アレイ毎のピーク及び平均電力を含む第1の分析結果を決定するために前記不揮発性論理要素アレイの設計のシミュレーションを分析することと、
    前記演算デバイス揮発性ストレージシステムのためのピーク及び平均電力消費を含む第2の分析結果を決定するためにアプリケーションコードを実行する前記演算デバイス揮発性ストレージシステムのシミュレーションを分析することと、
    前記複数の不揮発性論理要素アレイのための目標の設計を決定するために、前記第1の分析結果の少なくとも態様及び前記第2の分析結果の少なくとも態様を、前記目標のウェイクアップ時間及び前記ピーク電力コストと比較することと、
    を更に含む、方法。
  5. 請求項4に記載の方法であって、
    結果を前記目標のウェイクアップ時間及び前記ピーク電力コストと比較することが、前記演算デバイス揮発性ストレージシステムと前記複数の不揮発性論理要素アレイとのための計画された電力分布の容量を分析することを更に含む、方法。
JP2015531303A 2012-09-10 2013-09-10 不揮発性論理アレイからのカスタマイズ可能なバックアップ及び復元 Active JP6322632B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261698906P 2012-09-10 2012-09-10
US61/698,906 2012-09-10
US13/770,448 2013-02-19
US13/770,448 US9335954B2 (en) 2012-09-10 2013-02-19 Customizable backup and restore from nonvolatile logic array
PCT/US2013/058875 WO2014040012A1 (en) 2012-09-10 2013-09-10 Customizable backup and restore from nonvolatile logic array

Publications (3)

Publication Number Publication Date
JP2016502689A JP2016502689A (ja) 2016-01-28
JP2016502689A5 JP2016502689A5 (ja) 2016-11-10
JP6322632B2 true JP6322632B2 (ja) 2018-05-09

Family

ID=50234569

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2015531319A Active JP6296513B2 (ja) 2012-09-10 2013-09-10 不揮発性ドメイン及びアレイウェイクアップ及びバックアップの構成ビットシーケンシング制御
JP2015531303A Active JP6322632B2 (ja) 2012-09-10 2013-09-10 不揮発性論理アレイからのカスタマイズ可能なバックアップ及び復元
JP2015531313A Pending JP2015534675A (ja) 2012-09-10 2013-09-10 特定の機能利用可能性のための専用不揮発性アレイの制御
JP2015531301A Active JP6336985B2 (ja) 2012-09-10 2013-09-10 処理デバイスにおける不揮発性論理アレイ及び電力ドメインのセグメント化

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2015531319A Active JP6296513B2 (ja) 2012-09-10 2013-09-10 不揮発性ドメイン及びアレイウェイクアップ及びバックアップの構成ビットシーケンシング制御

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2015531313A Pending JP2015534675A (ja) 2012-09-10 2013-09-10 特定の機能利用可能性のための専用不揮発性アレイの制御
JP2015531301A Active JP6336985B2 (ja) 2012-09-10 2013-09-10 処理デバイスにおける不揮発性論理アレイ及び電力ドメインのセグメント化

Country Status (4)

Country Link
US (18) US9342259B2 (ja)
JP (4) JP6296513B2 (ja)
CN (12) CN104620194B (ja)
WO (9) WO2014040011A1 (ja)

Families Citing this family (131)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6185311B2 (ja) * 2012-07-20 2017-08-23 株式会社半導体エネルギー研究所 電源制御回路、及び信号処理回路
US20140223217A1 (en) * 2013-02-01 2014-08-07 Broadcom Corporation Power and system management information visibility
KR20140102070A (ko) * 2013-02-13 2014-08-21 삼성전자주식회사 사용자 디바이스의 패스트 부팅 방법 및 장치
US8953365B2 (en) * 2013-06-07 2015-02-10 International Business Machines Corporation Capacitor backup for SRAM
US8908463B1 (en) * 2013-07-29 2014-12-09 Kabushiki Kaisha Toshiba Nonvolatile semiconductor memory device and control method thereof
US9100002B2 (en) * 2013-09-12 2015-08-04 Micron Technology, Inc. Apparatus and methods for leakage current reduction in integrated circuits
US9454437B2 (en) 2013-09-24 2016-09-27 Texas Instruments Incorporated Non-volatile logic based processing device
EP3137990A4 (en) 2014-04-29 2017-12-27 Hewlett-Packard Development Company, L.P. Resuming a system using state information
US9286056B2 (en) * 2014-05-19 2016-03-15 International Business Machines Corporation Reducing storage facility code load suspend rate by redundancy check
US9395797B2 (en) * 2014-07-02 2016-07-19 Freescale Semiconductor, Inc. Microcontroller with multiple power modes
US10847242B2 (en) * 2014-07-23 2020-11-24 Texas Instruments Incorporated Computing register with non-volatile-logic data storage
US9753086B2 (en) * 2014-10-02 2017-09-05 Samsung Electronics Co., Ltd. Scan flip-flop and scan test circuit including the same
WO2016068840A1 (en) * 2014-10-27 2016-05-06 Hewlett Packard Enterprise Development Lp Backup power communication
WO2016069003A1 (en) * 2014-10-31 2016-05-06 Hewlett Packard Enterprise Development Lp Backup power supply cell in memory device
TWI533319B (zh) * 2014-11-20 2016-05-11 財團法人工業技術研究院 非揮發性記憶體裝置及其控制方法
JP6582435B2 (ja) * 2015-02-24 2019-10-02 セイコーエプソン株式会社 集積回路装置及び電子機器
US10037071B2 (en) 2015-02-25 2018-07-31 Texas Instruments Incorporated Compute through power loss approach for processing device having nonvolatile logic memory
US10303235B2 (en) * 2015-03-04 2019-05-28 Qualcomm Incorporated Systems and methods for implementing power collapse in a memory
US9986569B2 (en) 2015-03-18 2018-05-29 Microsoft Technology Licensing, Llc Battery-backed RAM for wearable devices
US9830093B2 (en) * 2015-03-27 2017-11-28 Intel Corporation Method and apparatus for improving immunity to defects in a non-volatile memory
US10048893B2 (en) * 2015-05-07 2018-08-14 Apple Inc. Clock/power-domain crossing circuit with asynchronous FIFO and independent transmitter and receiver sides
US9859358B2 (en) * 2015-05-26 2018-01-02 Altera Corporation On-die capacitor (ODC) structure
TWI522794B (zh) * 2015-06-10 2016-02-21 國立成功大學 節能非揮發性微處理器
US10120815B2 (en) * 2015-06-18 2018-11-06 Microchip Technology Incorporated Configurable mailbox data buffer apparatus
US9785362B2 (en) * 2015-07-16 2017-10-10 Qualcomm Incorporated Method and apparatus for managing corruption of flash memory contents
WO2017012072A1 (zh) * 2015-07-21 2017-01-26 京微雅格(北京)科技有限公司 Fpga的配置存储器上电初始化的电路和方法
US9449655B1 (en) * 2015-08-31 2016-09-20 Cypress Semiconductor Corporation Low standby power with fast turn on for non-volatile memory devices
US10581410B2 (en) 2015-09-10 2020-03-03 Samsung Electronics Co., Ltd High speed domino-based flip flop
US10838818B2 (en) 2015-09-18 2020-11-17 Hewlett Packard Enterprise Development Lp Memory persistence from a volatile memory to a non-volatile memory
US11126433B2 (en) * 2015-09-19 2021-09-21 Microsoft Technology Licensing, Llc Block-based processor core composition register
US11016770B2 (en) 2015-09-19 2021-05-25 Microsoft Technology Licensing, Llc Distinct system registers for logical processors
US9673787B2 (en) * 2015-09-22 2017-06-06 Qualcomm Incorporated Power multiplexing with flip-flops
US9564897B1 (en) 2015-10-06 2017-02-07 Samsung Electronics Co., Ltd Apparatus for low power high speed integrated clock gating cell
US9933954B2 (en) * 2015-10-19 2018-04-03 Nxp Usa, Inc. Partitioned memory having pipeline writes
US10452594B2 (en) 2015-10-20 2019-10-22 Texas Instruments Incorporated Nonvolatile logic memory for computing module reconfiguration
CN108027710B (zh) * 2015-12-03 2020-11-06 株式会社日立制作所 在软件定义的存储系统中进行高速缓存的方法和装置
US10007519B2 (en) * 2015-12-22 2018-06-26 Intel IP Corporation Instructions and logic for vector bit field compression and expansion
US9836071B2 (en) * 2015-12-29 2017-12-05 Silicon Laboratories Inc. Apparatus for multiple-input power architecture for electronic circuitry and associated methods
US10331203B2 (en) 2015-12-29 2019-06-25 Texas Instruments Incorporated Compute through power loss hardware approach for processing device having nonvolatile logic memory
US9964986B2 (en) * 2015-12-29 2018-05-08 Silicon Laboratories Inc. Apparatus for power regulator with multiple inputs and associated methods
CN106936422B (zh) * 2015-12-30 2022-12-30 格科微电子(上海)有限公司 电平转换电路
US10591902B2 (en) 2016-01-03 2020-03-17 Purdue Research Foundation Microcontroller energy management system
US10254967B2 (en) 2016-01-13 2019-04-09 Sandisk Technologies Llc Data path control for non-volatile memory
US10608615B2 (en) * 2016-01-28 2020-03-31 Samsung Electronics Co., Ltd. Semiconductor device including retention reset flip-flop
KR102378150B1 (ko) * 2016-01-28 2022-03-24 삼성전자주식회사 저 전력 리텐션 플립-플롭을 포함하는 반도체 장치
US10404240B2 (en) 2016-01-28 2019-09-03 Samsung Electronics Co., Ltd. Semiconductor device comprising low power retention flip-flop
US9824729B2 (en) * 2016-03-25 2017-11-21 Taiwan Semiconductor Manufacturing Company, Ltd. Memory macro and method of operating the same
US20170300101A1 (en) * 2016-04-14 2017-10-19 Advanced Micro Devices, Inc. Redirecting messages from idle compute units of a processor
US9766827B1 (en) * 2016-05-10 2017-09-19 Intel Corporation Apparatus for data retention and supply noise mitigation using clamps
CN106407048B (zh) * 2016-05-25 2019-04-05 清华大学 输入输出通信接口、基于该接口的数据备份和恢复方法
US10539617B2 (en) * 2016-06-02 2020-01-21 Taiwan Semiconductor Manufacturing Co., Ltd. Scan architecture for interconnect testing in 3D integrated circuits
CN106230839B (zh) * 2016-08-03 2020-02-07 青岛海信宽带多媒体技术有限公司 实时流式传输的接收控制方法和装置
CN106406767A (zh) * 2016-09-26 2017-02-15 上海新储集成电路有限公司 一种非易失性双列直插式存储器及存储方法
KR102506838B1 (ko) * 2016-09-30 2023-03-08 에스케이하이닉스 주식회사 반도체 장치 및 그의 동작 방법
US10528255B2 (en) 2016-11-11 2020-01-07 Sandisk Technologies Llc Interface for non-volatile memory
US10528286B2 (en) 2016-11-11 2020-01-07 Sandisk Technologies Llc Interface for non-volatile memory
US10528267B2 (en) 2016-11-11 2020-01-07 Sandisk Technologies Llc Command queue for storage operations
US10114589B2 (en) * 2016-11-16 2018-10-30 Sandisk Technologies Llc Command control for multi-core non-volatile memory
KR20180092430A (ko) * 2017-02-09 2018-08-20 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
CN106991022B (zh) * 2017-03-07 2020-12-18 记忆科技(深圳)有限公司 一种基于扫描链的芯片分析方法
US9947419B1 (en) 2017-03-28 2018-04-17 Qualcomm Incorporated Apparatus and method for implementing design for testability (DFT) for bitline drivers of memory circuits
US10298235B2 (en) * 2017-04-02 2019-05-21 Samsung Electronics Co., Ltd. Low power integrated clock gating cell using controlled inverted clock
US10430302B2 (en) * 2017-04-12 2019-10-01 Qualcomm Incorporated Data retention with data migration
US10419004B2 (en) * 2017-04-21 2019-09-17 Windbond Electronics Corporation NVFF monotonic counter and method of implementing same
US10224072B2 (en) * 2017-05-26 2019-03-05 Micron Technology, Inc. Error detection code hold pattern synchronization
US10153020B1 (en) * 2017-06-09 2018-12-11 Micron Technology, Inc. Dual mode ferroelectric memory cell operation
US10845866B2 (en) * 2017-06-22 2020-11-24 Micron Technology, Inc. Non-volatile memory system or sub-system
CN110945532B (zh) 2017-07-27 2023-10-31 德克萨斯仪器股份有限公司 具有隔离动态升压电源的非易失性计数器系统、计数器电路和电源管理电路
US10083973B1 (en) * 2017-08-09 2018-09-25 Micron Technology, Inc. Apparatuses and methods for reading memory cells
US10388335B2 (en) 2017-08-14 2019-08-20 Micron Technology, Inc. Sense amplifier schemes for accessing memory cells
CN107608824B (zh) * 2017-09-01 2020-07-31 中国科学院计算技术研究所 一种非易失性计算装置及其工作方法
KR102244921B1 (ko) 2017-09-07 2021-04-27 삼성전자주식회사 저장 장치 및 그 리프레쉬 방법
WO2019129389A1 (en) * 2017-12-26 2019-07-04 Silicon Mobility Sas Flexible logic unit adapted for real-time task switching
US10981576B2 (en) 2017-12-27 2021-04-20 Micron Technology, Inc. Determination of reliability of vehicle control commands via memory test
KR102427638B1 (ko) * 2018-01-10 2022-08-01 삼성전자주식회사 비휘발성 메모리 장치 및 이의 읽기 방법
KR102518370B1 (ko) * 2018-01-19 2023-04-05 삼성전자주식회사 저장 장치 및 이의 디버깅 시스템
US10217496B1 (en) * 2018-02-28 2019-02-26 Arm Limited Bitline write assist circuitry
KR102469098B1 (ko) * 2018-03-21 2022-11-23 에스케이하이닉스 주식회사 불휘발성 메모리 장치, 불휘발성 메모리 장치의 동작 방법 및 이를 포함하는 데이터 저장 장치
US10290340B1 (en) 2018-03-29 2019-05-14 Qualcomm Technologies, Incorporated Offset-canceling (OC) write operation sensing circuits for sensing switching in a magneto-resistive random access memory (MRAM) bit cell in an MRAM for a write operation
DE112019002007T5 (de) * 2018-04-19 2021-01-21 Sony Semiconductor Solutions Corporation Nichtflüchtige speicherschaltung
US10638584B2 (en) * 2018-04-24 2020-04-28 Current Lighting Solutions, Llc System and method for communicating between non-networked monitoring device and networked lighting controllers
US10621387B2 (en) 2018-05-30 2020-04-14 Seagate Technology Llc On-die decoupling capacitor area optimization
JP2019215941A (ja) * 2018-06-11 2019-12-19 一般財団法人生産技術研究奨励会 強誘電体キャパシタを備える不揮発性sram
US10979034B1 (en) * 2018-06-19 2021-04-13 Xilinx, Inc. Method and apparatus for multi-voltage domain sequential elements
CN108962311B (zh) * 2018-07-06 2020-12-11 孤山电子科技(上海)有限公司 一种顺序进入和退出低功耗状态的sram控制电路及方法
US11314596B2 (en) 2018-07-20 2022-04-26 Winbond Electronics Corp. Electronic apparatus and operative method
CN109144232B (zh) * 2018-08-01 2020-12-01 Oppo广东移动通信有限公司 进程处理方法和装置、电子设备、计算机可读存储介质
TWI703433B (zh) * 2018-08-27 2020-09-01 華邦電子股份有限公司 電子裝置及其操作方法
CN109188246B (zh) * 2018-09-06 2020-09-08 长沙理工大学 一种安全的加密芯片可测试性设计结构
KR102546652B1 (ko) 2018-09-07 2023-06-22 삼성전자주식회사 반도체 메모리 장치 및 이를 포함하는 메모리 시스템
CN111061358B (zh) * 2018-10-15 2021-05-25 珠海格力电器股份有限公司 一种无时钟芯片唤醒电路、唤醒方法、芯片
US11106539B2 (en) * 2018-10-25 2021-08-31 EMC IP Holding Company LLC Rule book based retention management engine
US11507175B2 (en) * 2018-11-02 2022-11-22 Micron Technology, Inc. Data link between volatile memory and non-volatile memory
CN109245756B (zh) * 2018-11-07 2023-10-03 深圳讯达微电子科技有限公司 一种减小电源域切换噪声的方法及芯片输出接口电路
CN111381654B (zh) * 2018-12-29 2022-01-11 成都海光集成电路设计有限公司 负载探测电路、soc系统、及负载探测电路的配置方法
US10925154B2 (en) * 2019-01-31 2021-02-16 Texas Instruments Incorporated Tamper detection
AU2019428368B2 (en) 2019-02-06 2023-02-02 Hewlett-Packard Development Company, L.P. Integrated circuits including customization bits
US20200285780A1 (en) * 2019-03-06 2020-09-10 Nvidia Corp. Cross domain voltage glitch detection circuit for enhancing chip security
CN110018929B (zh) * 2019-04-11 2020-11-10 苏州浪潮智能科技有限公司 一种数据备份方法、装置、设备及存储介质
US10637462B1 (en) 2019-05-30 2020-04-28 Xilinx, Inc. System and method for SoC power-up sequencing
WO2020252452A1 (en) 2019-06-13 2020-12-17 Arris Enterprises Llc Electronic persistent switch
CN110189704B (zh) * 2019-06-28 2021-10-15 上海天马有机发光显示技术有限公司 一种电致发光显示面板、其驱动方法及显示装置
US10964356B2 (en) * 2019-07-03 2021-03-30 Qualcomm Incorporated Compute-in-memory bit cell
JP7214602B2 (ja) 2019-09-24 2023-01-30 株式会社東芝 半導体装置、及び半導体装置の制御方法
JP2022550983A (ja) 2019-10-09 2022-12-06 マイクロン テクノロジー,インク. データ保護スキームを備えるメモリデバイス
US11520658B2 (en) * 2019-10-31 2022-12-06 Arm Limited Non-volatile memory on chip
CN111049513B (zh) * 2019-11-29 2023-08-08 北京时代民芯科技有限公司 一种带冷备份功能的轨到轨总线保持电路
CN112947738A (zh) * 2019-12-10 2021-06-11 珠海全志科技股份有限公司 一种智能终端电源系统及智能终端待机、唤醒方法
US11488879B2 (en) * 2019-12-30 2022-11-01 Micron Technology, Inc. Methods and apparatuses to wafer-level test adjacent semiconductor die
US11088678B1 (en) 2020-02-11 2021-08-10 Xilinx, Inc. Pulsed flip-flop capable of being implemented across multiple voltage domains
TWI767212B (zh) * 2020-04-16 2022-06-11 晶豪科技股份有限公司 有助於使記憶體系統在電源開啟期間提前運作的方法、使用該方法的記憶體控制器以及能夠在電源開啟期間提前運作的記憶體系統
US11366162B2 (en) * 2020-04-16 2022-06-21 Mediatek Inc. Scan output flip-flop with power saving feature
CN111580475A (zh) * 2020-04-29 2020-08-25 苏州欧立通自动化科技有限公司 基于olt-mfic01控制器的多功能工业控制方法
US11018687B1 (en) * 2020-05-13 2021-05-25 Qualcomm Incorporated Power-efficient compute-in-memory analog-to-digital converters
US11803226B2 (en) 2020-05-14 2023-10-31 Stmicroelectronics S.R.L. Methods and devices to conserve microcontroller power
CN111431536B (zh) * 2020-05-18 2023-05-02 深圳市九天睿芯科技有限公司 子单元、mac阵列、位宽可重构的模数混合存内计算模组
CN113760071B (zh) * 2020-06-02 2023-08-25 晶豪科技股份有限公司 在电源开启期间提前运行存储器系统的方法、控制器及其系统
US11416057B2 (en) * 2020-07-27 2022-08-16 EMC IP Holding Company LLC Power disruption data protection
CN112162898A (zh) * 2020-09-07 2021-01-01 深圳比特微电子科技有限公司 算力芯片阵列的状态信息获取系统、方法和虚拟货币矿机
US11626156B2 (en) * 2020-12-02 2023-04-11 Qualcomm Incorporated Compute-in-memory (CIM) bit cell circuits each disposed in an orientation of a cim bit cell circuit layout including a read word line (RWL) circuit in a cim bit cell array circuit
US11442106B2 (en) 2020-12-14 2022-09-13 Western Digital Technologies, Inc. Method and apparatus for debugging integrated circuit systems using scan chain
US20220198022A1 (en) * 2020-12-23 2022-06-23 Intel Corporation Secure device power-up apparatus and method
US11631455B2 (en) 2021-01-19 2023-04-18 Qualcomm Incorporated Compute-in-memory bitcell with capacitively-coupled write operation
CN112965010B (zh) * 2021-02-07 2023-04-07 潍柴动力股份有限公司 一种电子执行器的故障检测方法、装置、电控设备及介质
CN113359935B (zh) * 2021-06-10 2022-09-09 海光信息技术股份有限公司 Soc电源域的电压调节方法、装置及存储介质
CN113254289B (zh) * 2021-06-11 2021-10-15 武汉卓目科技有限公司 基于NVMe磁盘阵列的单机测试方法、装置及系统
US11996144B2 (en) * 2021-06-15 2024-05-28 Seagate Technology Llc Non-volatile memory cell with multiple ferroelectric memory elements (FMEs)
CN113409165B (zh) * 2021-08-19 2021-12-07 清华四川能源互联网研究院 电力数据集成方法、装置、电子设备及可读存储介质
US11854587B2 (en) 2021-12-03 2023-12-26 Taiwan Semiconductor Manufacturing Company, Ltd. Low power wake up for memory
KR20230092151A (ko) * 2021-12-17 2023-06-26 삼성전자주식회사 스토리지 장치 및 이의 동작 방법
TWI803119B (zh) 2021-12-29 2023-05-21 新唐科技股份有限公司 資料保持電路和方法

Family Cites Families (155)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS607854B2 (ja) * 1977-10-28 1985-02-27 株式会社東芝 単安定マルチバイブレ−タ回路
US5317752A (en) * 1989-12-22 1994-05-31 Tandem Computers Incorporated Fault-tolerant computer system with auto-restart after power-fall
JP3430231B2 (ja) * 1994-09-21 2003-07-28 富士通株式会社 論理セル及びこれを用いた半導体集積回路
JPH0897685A (ja) * 1994-09-22 1996-04-12 Fujitsu Ltd フリップフロップ回路
US5847577A (en) * 1995-02-24 1998-12-08 Xilinx, Inc. DRAM memory cell for programmable logic devices
US5627784A (en) 1995-07-28 1997-05-06 Micron Quantum Devices, Inc. Memory system having non-volatile data storage structure for memory control parameters and method
US6336161B1 (en) * 1995-12-15 2002-01-01 Texas Instruments Incorporated Computer configuration system and method with state and restoration from non-volatile semiconductor memory
US5773993A (en) * 1996-09-26 1998-06-30 Xilinx, Inc. Configurable electronic device which is compatible with a configuration bitstream of a prior generation configurable electronic device
WO1998020459A1 (en) * 1996-11-04 1998-05-14 3-Dimensional Pharmaceuticals, Inc. System, method, and computer program product for the visualization and interactive processing and analysis of chemical data
US6418506B1 (en) 1996-12-31 2002-07-09 Intel Corporation Integrated circuit memory and method for transferring data using a volatile memory to buffer data for a nonvolatile memory array
KR100281535B1 (ko) * 1997-02-12 2001-02-15 윤종용 컴퓨터 시스템 및 그의 제어 방법
US6185660B1 (en) * 1997-09-23 2001-02-06 Hewlett-Packard Company Pending access queue for providing data to a target register during an intermediate pipeline phase after a computer cache miss
US6127843A (en) * 1997-12-22 2000-10-03 Vantis Corporation Dual port SRAM memory for run time use in FPGA integrated circuits
US7398286B1 (en) * 1998-03-31 2008-07-08 Emc Corporation Method and system for assisting in backups and restore operation over different channels
US6226556B1 (en) * 1998-07-09 2001-05-01 Motorola Inc. Apparatus with failure recovery and method therefore
US6513097B1 (en) * 1999-03-03 2003-01-28 International Business Machines Corporation Method and system for maintaining information about modified data in cache in a storage system for use during a system failure
US6137711A (en) * 1999-06-17 2000-10-24 Agilent Technologies Inc. Ferroelectric random access memory device including shared bit lines and fragmented plate lines
US6542000B1 (en) * 1999-07-30 2003-04-01 Iowa State University Research Foundation, Inc. Nonvolatile programmable logic devices
JP2001188689A (ja) * 2000-01-04 2001-07-10 Mitsubishi Electric Corp データ処理装置
EP1630686B1 (en) * 2000-01-07 2009-03-25 Nippon Telegraph and Telephone Corporation Function reconfigurable semiconductor device and integrated circuit configuring the semiconductor device
US6851065B2 (en) * 2001-09-10 2005-02-01 Dell Products L.P. System and method for executing resume tasks during a suspend routine
US7046687B1 (en) * 2002-01-16 2006-05-16 Tau Networks Configurable virtual output queues in a scalable switching system
EP1331736A1 (en) * 2002-01-29 2003-07-30 Texas Instruments France Flip-flop with reduced leakage current
EP1351146A1 (en) * 2002-04-04 2003-10-08 Hewlett-Packard Company Power management system and method with recovery after power failure
DE10219652B4 (de) * 2002-05-02 2007-01-11 Infineon Technologies Ag Speicherschaltung und Verfahren zum Betreiben einer Speicherschaltung
EP1363132B1 (en) * 2002-05-13 2007-09-05 STMicroelectronics Pvt. Ltd A method and device for testing of configuration memory cells in programmable logic devices (PLDS)
US6976131B2 (en) * 2002-08-23 2005-12-13 Intel Corporation Method and apparatus for shared cache coherency for a chip multiprocessor or multiprocessor system
US7017038B1 (en) * 2002-08-26 2006-03-21 Network Equipment Technologies, Inc. Method and system to provide first boot to a CPU system
JP3986393B2 (ja) * 2002-08-27 2007-10-03 富士通株式会社 不揮発性データ記憶回路を有する集積回路装置
US6901298B1 (en) * 2002-09-30 2005-05-31 Rockwell Automation Technologies, Inc. Saving and restoring controller state and context in an open operating system
JP3910902B2 (ja) * 2002-10-02 2007-04-25 松下電器産業株式会社 集積回路装置
JP2004133969A (ja) * 2002-10-08 2004-04-30 Renesas Technology Corp 半導体装置
US7031192B1 (en) * 2002-11-08 2006-04-18 Halo Lsi, Inc. Non-volatile semiconductor memory and driving method
US6917967B2 (en) * 2002-12-13 2005-07-12 Sun Microsystems, Inc. System and method for implementing shared memory regions in distributed shared memory systems
US6898687B2 (en) * 2002-12-13 2005-05-24 Sun Microsystems, Inc. System and method for synchronizing access to shared resources
US7028147B2 (en) * 2002-12-13 2006-04-11 Sun Microsystems, Inc. System and method for efficiently and reliably performing write cache mirroring
JP3756882B2 (ja) * 2003-02-20 2006-03-15 株式会社東芝 情報処理装置及び情報処理方法
CN1695200B (zh) * 2003-02-27 2010-04-28 富士通微电子株式会社 半导体存储装置
US7836339B2 (en) * 2003-03-31 2010-11-16 Intel Corporation Computer memory power backup
US7069522B1 (en) 2003-06-02 2006-06-27 Virage Logic Corporation Various methods and apparatuses to preserve a logic state for a volatile latch circuit
WO2004107168A1 (en) * 2003-06-03 2004-12-09 Koninklijke Philips Electronics N.V. Booting from non-volatile memory
US7079148B2 (en) * 2003-07-23 2006-07-18 Hewlett-Packard Development Company, L.P. Non-volatile memory parallel processor
US7287126B2 (en) * 2003-07-30 2007-10-23 Intel Corporation Methods and apparatus for maintaining cache coherency
US20050027946A1 (en) * 2003-07-30 2005-02-03 Desai Kiran R. Methods and apparatus for filtering a cache snoop
US7170315B2 (en) * 2003-07-31 2007-01-30 Actel Corporation Programmable system on a chip
US20050093572A1 (en) 2003-11-03 2005-05-05 Macronix International Co., Ltd. In-circuit configuration architecture with configuration on initialization function for embedded configurable logic array
US20050097499A1 (en) * 2003-11-03 2005-05-05 Macronix International Co., Ltd. In-circuit configuration architecture with non-volatile configuration store for embedded configurable logic array
US7227383B2 (en) * 2004-02-19 2007-06-05 Mosaid Delaware, Inc. Low leakage and data retention circuitry
US7183825B2 (en) * 2004-04-06 2007-02-27 Freescale Semiconductor, Inc. State retention within a data processing system
US7536506B2 (en) * 2004-06-21 2009-05-19 Dot Hill Systems Corporation RAID controller using capacitor energy source to flush volatile cache data to non-volatile memory during main power outage
US7135886B2 (en) 2004-09-20 2006-11-14 Klp International, Ltd. Field programmable gate arrays using both volatile and nonvolatile memory cell properties and their control
JP2006100991A (ja) * 2004-09-28 2006-04-13 Matsushita Electric Ind Co Ltd 不揮発性論理回路及びそれを有するシステムlsi
DE602004003583T2 (de) 2004-10-04 2007-11-22 Research In Motion Ltd., Waterloo System und Verfahren zum Datensichern bei Stromausfall
US20060080515A1 (en) * 2004-10-12 2006-04-13 Lefthand Networks, Inc. Non-Volatile Memory Backup for Network Storage System
US7173859B2 (en) 2004-11-16 2007-02-06 Sandisk Corporation Faster programming of higher level states in multi-level cell flash memory
US7242218B2 (en) * 2004-12-02 2007-07-10 Altera Corporation Techniques for combining volatile and non-volatile programmable logic on an integrated circuit
JP4713143B2 (ja) * 2004-12-15 2011-06-29 富士通セミコンダクター株式会社 半導体記憶装置
US7882299B2 (en) * 2004-12-21 2011-02-01 Sandisk Corporation System and method for use of on-chip non-volatile memory write cache
WO2006074176A2 (en) 2005-01-05 2006-07-13 The Regents Of The University Of California Memory architectures including non-volatile memory devices
US7248090B2 (en) 2005-01-10 2007-07-24 Qualcomm, Incorporated Multi-threshold MOS circuits
US7778675B1 (en) * 2005-01-14 2010-08-17 American Megatrends, Inc. Remotely accessing a computing device in a low-power state
US7251168B1 (en) * 2005-02-01 2007-07-31 Xilinx, Inc. Interface for access to non-volatile memory on an integrated circuit
US7180348B2 (en) * 2005-03-24 2007-02-20 Arm Limited Circuit and method for storing data in operational and sleep modes
US7620773B2 (en) * 2005-04-15 2009-11-17 Microsoft Corporation In-line non volatile memory disk read cache and write buffer
US7394687B2 (en) 2005-05-09 2008-07-01 Nantero, Inc. Non-volatile-shadow latch using a nanotube switch
TWI324773B (en) 2005-05-09 2010-05-11 Nantero Inc Non-volatile shadow latch using a nanotube switch
US7639056B2 (en) 2005-05-26 2009-12-29 Texas Instruments Incorporated Ultra low area overhead retention flip-flop for power-down applications
JP2006344289A (ja) * 2005-06-08 2006-12-21 Toshiba Corp 強誘電体記憶装置
US7650549B2 (en) * 2005-07-01 2010-01-19 Texas Instruments Incorporated Digital design component with scan clock generation
US7480791B2 (en) * 2005-09-15 2009-01-20 Intel Corporation Method and apparatus for quick resumption where the system may forego initialization of at least one memory range identified in the resume descriptor
US20080256551A1 (en) * 2005-09-21 2008-10-16 Freescale Semiconductor. Inc. System and Method For Storing State Information
US7409537B2 (en) * 2005-10-06 2008-08-05 Microsoft Corporation Fast booting an operating system from an off state
JP4662550B2 (ja) * 2005-10-20 2011-03-30 株式会社日立製作所 ストレージシステム
US20070101158A1 (en) * 2005-10-28 2007-05-03 Elliott Robert C Security region in a non-volatile memory
US20070136523A1 (en) * 2005-12-08 2007-06-14 Bonella Randy M Advanced dynamic disk memory module special operations
US8056088B1 (en) * 2005-12-13 2011-11-08 Nvidia Corporation Using scan chains for context switching
JP4915551B2 (ja) * 2006-03-16 2012-04-11 パナソニック株式会社 タイムスイッチ
US20070255889A1 (en) * 2006-03-22 2007-11-01 Yoav Yogev Non-volatile memory device and method of operating the device
US7360016B2 (en) * 2006-04-20 2008-04-15 Inventec Corporation Method of protecting data in cache memory of storage system
US20080028246A1 (en) * 2006-07-31 2008-01-31 Witham Timothy D Self-monitoring and self-adjusting power consumption computer control system
US8019929B2 (en) * 2006-09-13 2011-09-13 Rohm Co., Ltd. Data processing apparatus and data control circuit for use therein
US7765394B2 (en) * 2006-10-31 2010-07-27 Dell Products, Lp System and method for restoring a master boot record in association with accessing a hidden partition
KR100843208B1 (ko) * 2006-11-02 2008-07-02 삼성전자주식회사 반도체 칩 패키지 및 그 테스트 방법
US7817470B2 (en) * 2006-11-27 2010-10-19 Mosaid Technologies Incorporated Non-volatile memory serial core architecture
CN101681282A (zh) * 2006-12-06 2010-03-24 弗森多系统公司(dba弗森-艾奥) 用于共享的、前端、分布式raid的装置、系统和方法
US8146714B2 (en) * 2006-12-14 2012-04-03 Otis Elevator Company Elevator system including regenerative drive and rescue operation circuit for normal and power failure conditions
US7908504B2 (en) * 2007-03-23 2011-03-15 Michael Feldman Smart batteryless backup device and method therefor
DE102007016170A1 (de) 2007-04-02 2008-10-09 Francotyp-Postalia Gmbh Sicherheitsmodul für eine Frankiermaschine
US7560965B2 (en) * 2007-04-30 2009-07-14 Freescale Semiconductor, Inc. Scannable flip-flop with non-volatile storage element and method
US20080307240A1 (en) 2007-06-08 2008-12-11 Texas Instruments Incorporated Power management electronic circuits, systems, and methods and processes of manufacture
US7831859B2 (en) * 2007-06-21 2010-11-09 The Board Of Regents, University Of Texas System Method for providing fault tolerance to multiple servers
US7583121B2 (en) * 2007-08-30 2009-09-01 Freescale Semiconductor, Inc. Flip-flop having logic state retention during a power down mode and method therefor
US8165621B2 (en) * 2007-10-10 2012-04-24 Unity Semiconductor Corporation Memory emulation in a cellular telephone
US7853912B2 (en) * 2007-11-05 2010-12-14 International Business Machines Corporation Arrangements for developing integrated circuit designs
US8024588B2 (en) 2007-11-28 2011-09-20 Mediatek Inc. Electronic apparatus having signal processing circuit selectively entering power saving mode according to operation status of receiver logic and related method thereof
US20090157946A1 (en) * 2007-12-12 2009-06-18 Siamak Arya Memory having improved read capability
US7827445B2 (en) * 2007-12-19 2010-11-02 International Business Machines Corporation Fault injection in dynamic random access memory modules for performing built-in self-tests
US7743191B1 (en) * 2007-12-20 2010-06-22 Pmc-Sierra, Inc. On-chip shared memory based device architecture
KR100908542B1 (ko) * 2007-12-24 2009-07-20 주식회사 하이닉스반도체 불휘발성 메모리 소자 및 그 프로그램 방법
US20090172251A1 (en) * 2007-12-26 2009-07-02 Unity Semiconductor Corporation Memory Sanitization
US7774540B2 (en) * 2007-12-26 2010-08-10 Hitachi Global Storage Technologies Netherlands B.V. Storage system and method for opportunistic write-verify
US7834660B2 (en) 2007-12-30 2010-11-16 Unity Semiconductor Corporation State machines using resistivity-sensitive memories
JP5140459B2 (ja) * 2008-02-28 2013-02-06 ローム株式会社 不揮発性記憶ゲートおよびその動作方法、および不揮発性記憶ゲート組込み型論理回路およびその動作方法
US8082384B2 (en) * 2008-03-26 2011-12-20 Microsoft Corporation Booting an electronic device using flash memory and a limited function memory controller
CN101286086B (zh) * 2008-06-10 2010-08-11 杭州华三通信技术有限公司 硬盘掉电保护方法、装置以及硬盘和硬盘掉电保护系统
US8325554B2 (en) 2008-07-10 2012-12-04 Sanmina-Sci Corporation Battery-less cache memory module with integrated backup
US7719876B2 (en) 2008-07-31 2010-05-18 Unity Semiconductor Corporation Preservation circuit and methods to maintain values representing data in one or more layers of memory
US8069300B2 (en) * 2008-09-30 2011-11-29 Micron Technology, Inc. Solid state storage device controller with expansion mode
US20110197018A1 (en) 2008-10-06 2011-08-11 Sam Hyuk Noh Method and system for perpetual computing using non-volatile random access memory
US8825912B2 (en) 2008-11-12 2014-09-02 Microchip Technology Incorporated Dynamic state configuration restore
US7954006B1 (en) * 2008-12-02 2011-05-31 Pmc-Sierra, Inc. Method and apparatus for archiving data during unexpected power loss
JP4620152B2 (ja) * 2008-12-15 2011-01-26 富士通株式会社 ストレージシステム、ストレージ管理装置、ストレージ管理方法
US9003118B2 (en) * 2009-01-09 2015-04-07 Dell Products L.P. Systems and methods for non-volatile cache control
JP2012515377A (ja) * 2009-01-12 2012-07-05 ラムバス・インコーポレーテッド クロック転送低電力シグナリングシステム
US7888965B2 (en) * 2009-01-29 2011-02-15 Texas Instruments Incorporated Defining a default configuration for configurable circuitry in an integrated circuit
US7990797B2 (en) * 2009-02-11 2011-08-02 Stec, Inc. State of health monitored flash backed dram module
US20100205349A1 (en) * 2009-02-11 2010-08-12 Stec, Inc. Segmented-memory flash backed dram module
US7983107B2 (en) * 2009-02-11 2011-07-19 Stec, Inc. Flash backed DRAM module with a selectable number of flash chips
WO2010093356A1 (en) 2009-02-11 2010-08-19 Stec, Inc. A flash backed dram module
EP2224344A1 (en) * 2009-02-27 2010-09-01 Panasonic Corporation A combined processing and non-volatile memory unit array
US8489801B2 (en) * 2009-03-04 2013-07-16 Henry F. Huang Non-volatile memory with hybrid index tag array
US7800856B1 (en) * 2009-03-24 2010-09-21 Western Digital Technologies, Inc. Disk drive flushing write cache to a nearest set of reserved tracks during a power failure
KR101504632B1 (ko) * 2009-03-25 2015-03-20 삼성전자주식회사 레이드를 사용한 장치들과 방법들
JP5289153B2 (ja) 2009-04-14 2013-09-11 キヤノン株式会社 情報処理装置及びその制御方法、並びにコンピュータプログラム
US8452734B2 (en) * 2009-04-30 2013-05-28 Texas Instruments Incorporated FAT file in reserved cluster with ready entry state
KR101562973B1 (ko) * 2009-05-22 2015-10-26 삼성전자 주식회사 메모리 장치 및 메모리 장치의 동작 방법
US20100325352A1 (en) * 2009-06-19 2010-12-23 Ocz Technology Group, Inc. Hierarchically structured mass storage device and method
GB2472050B (en) * 2009-07-22 2013-06-19 Wolfson Microelectronics Plc Power management apparatus and methods
US8542522B2 (en) * 2009-07-23 2013-09-24 Hewlett-Packard Development Company, L.P. Non-volatile data-storage latch
WO2011031900A2 (en) * 2009-09-09 2011-03-17 Fusion-Io, Inc. Apparatus, system, and method for power reduction management in a storage device
WO2011036668A1 (en) 2009-09-23 2011-03-31 Infinite Memories Ltd. Methods circuits data-structures devices and system for operating a non-volatile memory device
ES2373851T3 (es) 2009-09-23 2012-02-09 St-Ericsson Sa Mecanismo de arranque de suministro de energía, aparato, y método para controlar la activación de circuitos de suministro de energía.
JPWO2011043012A1 (ja) 2009-10-05 2013-02-28 パナソニック株式会社 不揮発性半導体記憶装置、信号処理システム、及び信号処理システムの制御方法、並びに不揮発性半導体記憶装置の書き換え方法
US20110258355A1 (en) * 2009-10-13 2011-10-20 Ocz Technology Group, Inc. Modular mass storage devices and methods of using
CN102074998B (zh) * 2009-11-19 2013-03-20 国基电子(上海)有限公司 保护电路及以太网用电设备
US8677054B1 (en) * 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
WO2011074408A1 (en) 2009-12-18 2011-06-23 Semiconductor Energy Laboratory Co., Ltd. Non-volatile latch circuit and logic circuit, and semiconductor device using the same
KR20110094468A (ko) * 2010-02-16 2011-08-24 삼성전자주식회사 저장 매체의 마스터 부트 레코드 복구 방법, 저장 매체 구동 장치, 및 저장 매체
US8578144B2 (en) * 2010-08-04 2013-11-05 International Business Machines Corporation Partial hibernation restore for boot time reduction
US8904161B2 (en) * 2010-10-20 2014-12-02 Samsung Electronics Co., Ltd. Memory system and reset method thereof to prevent nonvolatile memory corruption due to premature power loss
JP5549535B2 (ja) * 2010-10-22 2014-07-16 富士通株式会社 情報処理装置,制御方法および制御装置
US8381163B2 (en) * 2010-11-22 2013-02-19 Advanced Micro Devices, Inc. Power-gated retention flops
EP2652623B1 (en) * 2010-12-13 2018-08-01 SanDisk Technologies LLC Apparatus, system, and method for auto-commit memory
US9251005B2 (en) 2010-12-20 2016-02-02 Avago Technologies General Ip (Singapore) Pte. Ltd. Power isolation for memory backup
US8738843B2 (en) * 2010-12-20 2014-05-27 Lsi Corporation Data manipulation during memory backup
KR20120085968A (ko) * 2011-01-25 2012-08-02 삼성전자주식회사 컴퓨팅 시스템의 부팅 방법 및 이를 수행하는 컴퓨팅 시스템
US10079068B2 (en) * 2011-02-23 2018-09-18 Avago Technologies General Ip (Singapore) Pte. Ltd. Devices and method for wear estimation based memory management
US8819471B2 (en) * 2011-06-03 2014-08-26 Apple Inc. Methods and apparatus for power state based backup
JP5833347B2 (ja) * 2011-06-08 2015-12-16 ローム株式会社 データ処理装置
US8792273B2 (en) * 2011-06-13 2014-07-29 SMART Storage Systems, Inc. Data storage system with power cycle management and method of operation thereof
WO2013048467A1 (en) * 2011-09-30 2013-04-04 Intel Corporation Generation of far memory access signals based on usage statistic tracking
JP5476363B2 (ja) * 2011-12-19 2014-04-23 レノボ・シンガポール・プライベート・リミテッド 生体認証装置を利用したコンピュータの起動方法およびコンピュータ
US9251052B2 (en) * 2012-01-12 2016-02-02 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for profiling a non-volatile cache having a logical-to-physical translation layer
WO2013186807A1 (en) * 2012-06-11 2013-12-19 Hitachi, Ltd. Disk subsystem and corresponding data restoration method
TW201409054A (zh) * 2012-07-02 2014-03-01 Microsemi Soc Corp 用於檢測場可程式閘陣列(fpga)中之錯誤的晶載探針電路

Also Published As

Publication number Publication date
US20140075232A1 (en) 2014-03-13
US20190043544A1 (en) 2019-02-07
US20170287536A1 (en) 2017-10-05
US9711196B2 (en) 2017-07-18
WO2014040058A1 (en) 2014-03-13
US20140075091A1 (en) 2014-03-13
US20140075090A1 (en) 2014-03-13
CN104620217B (zh) 2018-11-23
CN104620193A (zh) 2015-05-13
US20200135246A1 (en) 2020-04-30
CN103956185B (zh) 2019-01-18
JP2016502689A (ja) 2016-01-28
US20140075175A1 (en) 2014-03-13
CN104620194B (zh) 2018-01-12
JP2015537400A (ja) 2015-12-24
US10902895B2 (en) 2021-01-26
CN104620232A (zh) 2015-05-13
WO2014040051A1 (en) 2014-03-13
US9335954B2 (en) 2016-05-10
CN103678034A (zh) 2014-03-26
US20170323673A1 (en) 2017-11-09
US20220115048A1 (en) 2022-04-14
US11244710B2 (en) 2022-02-08
US10541012B2 (en) 2020-01-21
CN103956185A (zh) 2014-07-30
US20140075174A1 (en) 2014-03-13
CN104620217A (zh) 2015-05-13
JP6296513B2 (ja) 2018-03-20
CN103678034B (zh) 2018-11-27
WO2014040012A1 (en) 2014-03-13
US9342259B2 (en) 2016-05-17
JP2015534675A (ja) 2015-12-03
CN104620243B (zh) 2018-02-23
CN109637573B (zh) 2023-08-15
US20180174627A1 (en) 2018-06-21
US20140075089A1 (en) 2014-03-13
CN104620192A (zh) 2015-05-13
WO2014040009A1 (en) 2014-03-13
US10102889B2 (en) 2018-10-16
US20140075087A1 (en) 2014-03-13
US20140075225A1 (en) 2014-03-13
CN104603715B (zh) 2019-01-01
CN104603759B (zh) 2018-10-02
US20140075233A1 (en) 2014-03-13
CN104620216A (zh) 2015-05-13
US20140075088A1 (en) 2014-03-13
US10468079B2 (en) 2019-11-05
WO2014040047A1 (en) 2014-03-13
US9899066B2 (en) 2018-02-20
JP2015537270A (ja) 2015-12-24
CN104603759A (zh) 2015-05-06
US9058126B2 (en) 2015-06-16
US9830964B2 (en) 2017-11-28
US10796738B2 (en) 2020-10-06
US20160217840A1 (en) 2016-07-28
CN109637573A (zh) 2019-04-16
WO2014040051A8 (en) 2014-10-23
US20140075218A1 (en) 2014-03-13
US9715911B2 (en) 2017-07-25
JP6336985B2 (ja) 2018-06-06
CN104620192B (zh) 2018-03-23
CN104620194A (zh) 2015-05-13
US10930328B2 (en) 2021-02-23
CN104603715A (zh) 2015-05-06
WO2014040062A1 (en) 2014-03-13
WO2014040043A1 (en) 2014-03-13
WO2014040011A1 (en) 2014-03-13
CN104620243A (zh) 2015-05-13
WO2014040065A1 (en) 2014-03-13

Similar Documents

Publication Publication Date Title
JP6322632B2 (ja) 不揮発性論理アレイからのカスタマイズ可能なバックアップ及び復元
US8854858B2 (en) Signal level conversion in nonvolatile bitcell array
US8792288B1 (en) Nonvolatile logic array with built-in test drivers
US8854079B2 (en) Error detection in nonvolatile logic arrays using parity
US8817520B2 (en) Two capacitor self-referencing nonvolatile bitcell
US8897088B2 (en) Nonvolatile logic array with built-in test result signal
US8797783B1 (en) Four capacitor nonvolatile bit cell

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20150309

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160908

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160908

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170830

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20171130

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180227

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180409

R150 Certificate of patent or registration of utility model

Ref document number: 6322632

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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