JP7232339B2 - プログラマブル・ロジックにおいてコンフィギュレーション・メモリのインプリンティングを軽減するアーキテクチャ - Google Patents
プログラマブル・ロジックにおいてコンフィギュレーション・メモリのインプリンティングを軽減するアーキテクチャ Download PDFInfo
- Publication number
- JP7232339B2 JP7232339B2 JP2021540788A JP2021540788A JP7232339B2 JP 7232339 B2 JP7232339 B2 JP 7232339B2 JP 2021540788 A JP2021540788 A JP 2021540788A JP 2021540788 A JP2021540788 A JP 2021540788A JP 7232339 B2 JP7232339 B2 JP 7232339B2
- Authority
- JP
- Japan
- Prior art keywords
- inversion
- mode
- memory
- input
- inverting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/24—Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1408—Protection against unauthorised use of memory or access to memory by using cryptography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/76—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/79—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/41—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/412—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger using field-effect transistors only
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Power Sources (AREA)
- Logic Circuits (AREA)
Description
Claims (20)
- フィールド・プログラマブル・ゲート・アレイ(FPGA)デバイスのコンフィギュレーション・メモリ(CM)におけるメモリ・インプリンティングを軽減する方法であって、
CMコントローラとCMセル層との間にCM入力反転プレーン、前記CMセル層とプログラマブル機能ブロック層との間にCM出力反転プレーン、および前記CM入力および出力反転プレーンと通信するCM反転制御モジュールを、FPGAデバイスに設けるステップと、
前記CM反転制御モジュールによって、システム電力投入時に、現在の電力サイクルに対して通常モードまたは反転モードのどちらを選択するか決定するステップと、
前記反転モードで動作するとき、前記CM入力および出力反転プレーンによって、前記CMセル層に流入するデータおよび前記CMセル層から流出するデータを反転させるステップであって、反転が、論理1および0の値を交換することを含む、ステップと、
前記CM反転制御モジュールによって、前記通常モードおよび前記反転モードにおいて動作した累積システム時間を追跡するステップと、
システム電力遮断時に、次のシステム電力投入時にどのモードを選択するか決定するときに使用するために、前記累積システム時間をCMモード不揮発性メモリ・モジュールに書き込むステップと、
を含む、方法。 - 請求項1記載の方法において、現電力サイクルを通常モードまたは反転モードのどちらで動作させるか決定するステップが、前記累積システム時間を前記CMモード不揮発性メモリ・モジュールから読み出し、前記現電力サイクルを、累積時間が少ない方のモードに設定するステップを含む、方法。
- 請求項1記載の方法において、前記CM反転制御モジュールが、モード制御ビットを前記CM入力および出力反転プレーンに伝達し、前記モード制御ビットが前記通常モードまたは前記反転モードを指定する、方法。
- 請求項3記載の方法において、前記CM入力および出力反転プレーンが、前記CMセル層におけるメモリ・セル毎に1つの反転エレメントとして、複数の反転エレメントを含み、前記反転エレメントの各々が、1つの出力と2つの入力とを有するマルチプレクサ(MUX)を含み、前記入力が、通常入力と反転入力とから成る、方法。
- 請求項4記載の方法において、前記CM入力および出力反転プレーンにおける前記反転エレメントが、前記モード制御ビットが前記通常モードを指定するとき、前記通常入力を前記MUXに選択し、前記モード制御ビットが前記反転モードを指定するとき、前記反転エレメントが前記反転入力を前記MUXに選択する、方法。
- 請求項4記載の方法において、前記通常入力が、着信データ・ストリームの通過ゲートであり、前記反転入力が、前記着信データ・ストリームを反転させる反転ゲートを含む、方法。
- 請求項1記載の方法において、前記FPGAデバイスが、車両、航空機、または機械における埋め込み制御システムに使用される、方法。
- 揮発性メモリのインプリント軽減を有するプログラマブル・ロジック・デバイスであって、
外部メモリ・デバイスからビットストリームを受け取るコンフィギュレーション・メモリ(CM)コントローラと、
前記CMコントローラからビットを受け取るCMセル層と、
各々が前記CMセルの1つ以上からビットを受け取る、複数の機能ブロックを含むプログラマブル機能ブロック層と、
前記CMコントローラと前記CMセル層との間の通信パス内にあるCM入力反転プレーンと、
前記CMセル層と前記プログラマブル機能ブロック層との間の通信パス内にあるCM出力反転プレーンと、
前記CM入力および出力反転プレーンと通信するCM反転制御モジュールと、
を備え、
前記CM反転制御モジュールが、デバイス電力投入時に、現電力サイクルを通常モードまたは反転モードのどちらで動作させるか決定するように構成され、
前記反転モードで動作するとき、前記CM入力反転プレーンが、前記CMコントローラから前記CMセルによって受け取ったビットを反転させ、反転が、論理1および0の値の交換を含み、
前記反転モードで動作するとき、前記CM出力反転プレーンが、前記CMセルから前記プログラマブル機能ブロック層によって受け取ったビットを反転させる、プログラマブル・ロジック・デバイス。 - 請求項8記載のプログラマブル・ロジック・デバイスにおいて、前記CM反転制御モジュールが、更に、次のデバイス電力投入時にどちらのモードを選択するか決定するときに使用するために、前記通常モードおよび前記反転モードで動作する累積デバイス時間を、周期的におよびデバイスの電力遮断時に、記録するように構成される、プログラマブル・ロジック・デバイス。
- 請求項9記載のプログラマブル・ロジック・デバイスにおいて、前記CM反転制御モジュールが、以前に記録された前記累積デバイス時間を評価し、前記現電力サイクルを、累積時間が少ない方のモードに設定することによって、前記現電力サイクルを前記通常モードまたは前記反転モードのどちらで動作させるか決定する、プログラマブル・ロジック・デバイス。
- 請求項8記載のプログラマブル・ロジック・デバイスにおいて、前記CM反転制御モジュールが、モード制御ビットを前記CM入力および出力反転プレーンに伝達し、前記モード制御ビットが前記通常モードまたは前記反転モードを指定する、プログラマブル・ロジック・デバイス。
- 請求項11記載のプログラマブル・ロジック・デバイスにおいて、前記CM入力および出力反転プレーンが、前記CMセル層におけるメモリ・セル毎に1つの反転エレメントとして、複数の反転エレメントを含み、前記反転エレメントの各々が、1つの出力と2つの入力とを有するマルチプレクサ(MUX)を含み、前記入力が通常入力と反転入力とから成る、プログラマブル・ロジック・デバイス。
- 請求項12記載のプログラマブル・ロジック・デバイスにおいて、前記CM入力および出力反転プレーンにおける前記反転エレメントが、前記モード制御ビットが前記通常モードを指定するとき、前記通常入力を前記MUXに選択し、前記モード制御ビットが前記反転モードを指定するとき、前記反転エレメントが前記反転入力を前記MUXに選択する、プログラマブル・ロジック・デバイス。
- 請求項12記載のプログラマブル・ロジック・デバイスにおいて、前記通常入力が着信データ・ストリームの通過ゲートであり、前記反転入力が、前記着信データ・ストリームを反転させる反転ゲートを含む、プログラマブル・ロジック・デバイス。
- 請求項8記載のプログラマブル・ロジック・デバイスにおいて、前記デバイスがフィールド・プログラマブル・ゲート・アレイ(FPGA)である、プログラマブル・ロジック・デバイス。
- 請求項8記載のプログラマブル・ロジック・デバイスにおいて、前記プログラマブル・ロジック・デバイスが、車両、航空機、または機械における埋め込み制御システムの一部である、プログラマブル・ロジック・デバイス。
- プログラマブル・ロジック・デバイスのメモリ・インプリント軽減システムであって、
CMコントローラとCMセル層との間の通信パス内にあるコンフィギュレーション・メモリ(CM)入力反転プレーンと、
前記CMセル層とプログラマブル機能ブロック層との間の通信パス内にあるCM出力反転プレーンと、
前記CM入力および出力反転プレーンと通信するCM反転制御モジュールと、
を備え、
前記CM反転制御モジュールが、デバイス電力投入時に、現電力サイクルを通常モードまたは反転モードのどちらで動作させるか決定するように構成され、
前記反転モードで動作するとき、前記CM入力反転プレーンが、前記CMコントローラから前記CMセルによって受け取ったビットを反転させ、反転が、論理1および0の値の交換を含み、
前記反転モードで動作するとき、前記CM出力反転プレーンが、前記CMセルから前記プログラマブル機能ブロック層によって受け取ったビットを反転させる、システム。 - 請求項17記載のシステムにおいて、前記CM反転制御モジュールが、更に、前記通常モードおよび前記反転モードで動作した累積デバイス時間を、周期的にそしてデバイスの電力遮断時に、記録し、以前に記録された前記累積デバイス時間を評価し、前記現電力サイクルを、累積時間が少ない方のモードに設定することによって、次のデバイス電力投入時に選択するモードを決定するように構成される、システム。
- 請求項17記載のシステムにおいて、前記CM反転制御モジュールがモード制御ビットを前記CM入力および出力反転プレーンに伝達し、前記モード制御ビットが、前記通常モードまたは前記反転モードを指定する、システム。
- 請求項19記載のシステムにおいて、前記CM入力および出力反転プレーンが、前記CMセル層におけるメモリ・セル毎に1つの反転エレメントとして、複数の反転エレメントを含み、前記反転エレメントの各々が、1つの出力と2つの入力とを有するマルチプレクサ(MUX)を含み、前記入力が通常入力と反転入力とから成り、前記MUXが前記モード制御ビットに基づいて前記入力から1つを選択する、システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/141,357 | 2018-09-25 | ||
US16/141,357 US10754993B2 (en) | 2018-09-25 | 2018-09-25 | Architecture to mitigate configuration memory imprinting in programmable logic |
PCT/US2019/052203 WO2020068591A1 (en) | 2018-09-25 | 2019-09-20 | Architecture to mitigate configuration memory imprinting in programmable logic |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2022502812A JP2022502812A (ja) | 2022-01-11 |
JPWO2020068591A5 JPWO2020068591A5 (ja) | 2022-05-17 |
JP7232339B2 true JP7232339B2 (ja) | 2023-03-02 |
Family
ID=68165709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021540788A Active JP7232339B2 (ja) | 2018-09-25 | 2019-09-20 | プログラマブル・ロジックにおいてコンフィギュレーション・メモリのインプリンティングを軽減するアーキテクチャ |
Country Status (4)
Country | Link |
---|---|
US (1) | US10754993B2 (ja) |
EP (1) | EP3857549A1 (ja) |
JP (1) | JP7232339B2 (ja) |
WO (1) | WO2020068591A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10754993B2 (en) * | 2018-09-25 | 2020-08-25 | Northrop Grumman Systems Corporation | Architecture to mitigate configuration memory imprinting in programmable logic |
CN114499122B (zh) * | 2022-04-18 | 2022-07-05 | 深圳库马克科技有限公司 | 一种功率单元控制电路及其控制方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004529403A (ja) | 2001-01-09 | 2004-09-24 | ザイリンクス インコーポレイテッド | ユーザによる構成可能なオンチップメモリシステム |
JP2004310700A (ja) | 2003-04-01 | 2004-11-04 | Ati Technologies Inc | メモリデバイスにおいてデータを反転させるための方法および装置 |
JP2013178868A (ja) | 2012-02-28 | 2013-09-09 | Samsung Electronics Co Ltd | 半導体メモリ装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5745403A (en) | 1997-02-28 | 1998-04-28 | Ramtron International Corporation | System and method for mitigating imprint effect in ferroelectric random access memories utilizing a complementary data path |
EP1324495B1 (en) | 2001-12-28 | 2011-03-30 | Fujitsu Semiconductor Limited | Programmable logic device with ferrroelectric configuration memories |
US6590798B1 (en) | 2002-05-08 | 2003-07-08 | Texas Instruments Incorporated | Apparatus and methods for imprint reduction for ferroelectric memory cell |
US7218545B2 (en) | 2004-10-25 | 2007-05-15 | Intel Corporation | Polymer de-imprint circuit using negative voltage |
US20060215437A1 (en) | 2005-03-28 | 2006-09-28 | Trika Sanjeev N | Recovering from memory imprints |
US7379325B1 (en) | 2005-12-16 | 2008-05-27 | Maxim Intergrated Products, Inc. | Non-imprinting memory with high speed erase |
US7729156B2 (en) | 2007-12-26 | 2010-06-01 | Texas Instruments Incorporated | Cycling to mitigate imprint in ferroelectric memories |
US8495438B2 (en) * | 2007-12-28 | 2013-07-23 | Texas Instruments Incorporated | Technique for memory imprint reliability improvement |
US8972744B1 (en) | 2008-02-14 | 2015-03-03 | Xilinx, Inc. | Preventing data imprinting in memory |
US9116828B2 (en) | 2008-06-11 | 2015-08-25 | Micron Technology, Inc. | Data bus inversion usable in a memory system |
US8359447B1 (en) | 2009-01-15 | 2013-01-22 | Xilinx, Inc. | System and method of detecting and reversing data imprinting in memory |
US8667244B2 (en) | 2011-03-21 | 2014-03-04 | Hewlett-Packard Development Company, L.P. | Methods, systems, and apparatus to prevent memory imprinting |
US9646177B2 (en) | 2011-04-29 | 2017-05-09 | Altera Corporation | Systems and methods for preventing data remanence in memory systems |
US20140149729A1 (en) | 2011-07-18 | 2014-05-29 | Ted A. Hadley | Reset vectors for boot instructions |
US10754993B2 (en) * | 2018-09-25 | 2020-08-25 | Northrop Grumman Systems Corporation | Architecture to mitigate configuration memory imprinting in programmable logic |
US10747909B2 (en) * | 2018-09-25 | 2020-08-18 | Northrop Grumman Systems Corporation | System architecture to mitigate memory imprinting |
-
2018
- 2018-09-25 US US16/141,357 patent/US10754993B2/en active Active
-
2019
- 2019-09-20 WO PCT/US2019/052203 patent/WO2020068591A1/en unknown
- 2019-09-20 JP JP2021540788A patent/JP7232339B2/ja active Active
- 2019-09-20 EP EP19783768.5A patent/EP3857549A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004529403A (ja) | 2001-01-09 | 2004-09-24 | ザイリンクス インコーポレイテッド | ユーザによる構成可能なオンチップメモリシステム |
JP2004310700A (ja) | 2003-04-01 | 2004-11-04 | Ati Technologies Inc | メモリデバイスにおいてデータを反転させるための方法および装置 |
JP2013178868A (ja) | 2012-02-28 | 2013-09-09 | Samsung Electronics Co Ltd | 半導体メモリ装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2022502812A (ja) | 2022-01-11 |
US20200097684A1 (en) | 2020-03-26 |
WO2020068591A1 (en) | 2020-04-02 |
US10754993B2 (en) | 2020-08-25 |
EP3857549A1 (en) | 2021-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7313452B2 (ja) | メモリ・インプリンティングを軽減するシステム・アーキテクチャ | |
US11625336B2 (en) | Encryption of executables in computational memory | |
US7795899B1 (en) | Enabling on-chip features via efuses | |
US9690704B2 (en) | Paging in secure enclaves | |
Farbeh et al. | Floating-ECC: Dynamic repositioning of error correcting code bits for extending the lifetime of STT-RAM caches | |
CN109003640B (zh) | 存储器中子阵列之间的数据传送 | |
JP7232339B2 (ja) | プログラマブル・ロジックにおいてコンフィギュレーション・メモリのインプリンティングを軽減するアーキテクチャ | |
US20160117265A1 (en) | Maintaining a secure processing environment across power cycles | |
US10671546B2 (en) | Cryptographic-based initialization of memory content | |
US20170039397A1 (en) | Encryption/decryption apparatus, controller and encryption key protection method | |
Salehi et al. | Mitigating process variability for non-volatile cache resilience and yield | |
CN107003882B (zh) | 用于转换高速缓存闭包和持久快照的方法、系统和装置 | |
EP4020285A1 (en) | Simulation state to detect transient execution attack | |
US20180307626A1 (en) | Hardware-assisted memory encryption circuit | |
KR20180072723A (ko) | 메모리 액세스 명령 | |
CN109313863B (zh) | 用于掩盖处理器的功耗的装置和方法 | |
US20060143375A1 (en) | Content addressable memory with shared comparison logic | |
Chinavenkateswararao et al. | DESIGN AND IMPLEMENTATION OF CACHE MEMORY USING CMOS TRANSISTORS | |
JP2006072843A (ja) | 半導体装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220509 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220509 |
|
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: 20230214 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230217 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7232339 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |