TW201510726A - 隨機熔絲感應 - Google Patents

隨機熔絲感應 Download PDF

Info

Publication number
TW201510726A
TW201510726A TW103107233A TW103107233A TW201510726A TW 201510726 A TW201510726 A TW 201510726A TW 103107233 A TW103107233 A TW 103107233A TW 103107233 A TW103107233 A TW 103107233A TW 201510726 A TW201510726 A TW 201510726A
Authority
TW
Taiwan
Prior art keywords
fuse
array
string
die
bit
Prior art date
Application number
TW103107233A
Other languages
English (en)
Other versions
TWI587138B (zh
Inventor
Jason G Sandri
Horaira Abu
Charles A Peterson
Matthew B Pedersen
Brian Harris
Ian S Walker
Monib Ahmed
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of TW201510726A publication Critical patent/TW201510726A/zh
Application granted granted Critical
Publication of TWI587138B publication Critical patent/TWI587138B/zh

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/16Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM using electrically-fusible links
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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/75Protecting 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 by inhibiting the analysis of circuitry or operation
    • G06F21/755Protecting 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 by inhibiting the analysis of circuitry or operation with measures against power attack
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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/76Protecting 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting 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/79Protecting 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/18Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/24Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/06Address interface arrangements, e.g. address buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/4402Internal storage of test result, quality data, chip identification, repair information

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Read Only Memory (AREA)
  • Storage Device Security (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

依照一些實施例,在方法中,感應到熔絲且尤其是可使它們的順序更隨機,如此更難以簡單地運用裝置及判定在熔絲陣列內之儲存元件的所有值。一個結果係一更安全的儲存裝置。

Description

隨機熔絲感應
本發明大致關於熔絲感應。
熔絲感應一般係指包括佈置成列和行之位元的記憶體陣列之感應。一般來說,一次可感應一列且可以一些不同方法來選擇用於此列的位址。
使用熔絲感應的儲存元件之實例包括熔絲、非揮發性記憶體、一次性可編程記憶體、及晶粒上可編程熔絲。目前熔絲感應協定的一個特性為每次係以相同順序來進行熔絲感應。選定列的順序或序列永遠是相同的。
這對所謂的側通道攻擊方法揭露了熔絲感應協定,例如,差動電磁分析(DEMA)、差動功率分析(DPA)、及潛在特質模型(LTM)。能在熔絲感應期間判定熔絲值。藉由將裝置置放於無限重設迴路中且自重設每個迴路起同時地在相同的裝置位置上進行測量,駭客能在裝置內建立熔絲值的標記。敏感性資產有時儲存在熔絲中,防止這些類型的攻擊是非常重要的。
10‧‧‧晶粒
12‧‧‧原始設備製造商熔絲控制器
14‧‧‧晶粒上熔絲控制器
16‧‧‧定序器
18‧‧‧供電狀態機
20‧‧‧用於JTAG方塊的暫存器
22‧‧‧熔絲映射至個別熔絲匯流排
24‧‧‧熔絲電壓調節器
26‧‧‧外部電壓調節器
28‧‧‧原始設備製造商熔絲模組
30‧‧‧熔絲模組
32‧‧‧主機電腦
34‧‧‧介面
36‧‧‧介面
38‧‧‧介面
40‧‧‧暫存器
42‧‧‧OR閘
44‧‧‧仲裁器
46‧‧‧交叉偵測器
48‧‧‧暫存器
50‧‧‧熔絲讀取/寫入狀態機
52‧‧‧熔絲電壓調節器狀態機
54‧‧‧SPI主匯流排
56‧‧‧熔絲電壓調節器
58‧‧‧熔絲模組
80‧‧‧熔絲陣列
86‧‧‧狀態機
90‧‧‧線性反饋移位暫存器計數器
91‧‧‧隨機存取記憶體
92‧‧‧熔絲介面
98‧‧‧隨機數產生器
110‧‧‧熔絲陣列積體電路
112‧‧‧熔絲陣列
114‧‧‧行位址電路
116‧‧‧列位址電路
118‧‧‧感應放大器
120‧‧‧控制
700‧‧‧系統
702‧‧‧平台
720‧‧‧顯示器
730‧‧‧內容服務裝置
740‧‧‧內容傳送裝置
750‧‧‧導航控制器
705‧‧‧晶片組
710‧‧‧處理器
712‧‧‧記憶體
714‧‧‧儲存器
715‧‧‧圖形子系統
716‧‧‧應用程式
718‧‧‧無線電
722‧‧‧使用者介面
760‧‧‧網路
800‧‧‧裝置
802‧‧‧外殼
804‧‧‧顯示器
806‧‧‧輸入/輸出裝置
808‧‧‧天線
812‧‧‧導航特徵
參考下面的圖來說明一些實施例:第1圖係用於一實施例的示意圖;第2圖係根據一實施例之第1圖所示之序列的示意圖;第3圖係根據一實施例之用於晶粒上可編程熔絲陣列之序列的流程圖;第4圖係根據一實施例之熔絲陣列的方塊圖;第5圖係本發明之一實施例的示意圖;第6圖係根據一實施例之用於熔絲感應陣列的流程圖;第7圖係根據一實施例之熔絲陣列的圖;第8圖係根據一實施例之用於冗餘熔接的流程圖;第9圖係根據一實施例之用於讀取熔絲陣列之序列的流程圖;第10圖係用於一實施例的系統圖;及第11圖係一實施例的前視圖。
【發明內容及實施方式】
依照一些實施例,在方法中,感應到熔絲且尤其是可使感應順序更隨機,如此更難以簡單地運用裝置及判定在熔絲陣列內之儲存元件的所有值。一個結果係一種更安全的儲存裝置。
在本文所述之一實施例中,可使用晶粒上可編程熔絲。晶粒上可編程熔絲可在已製造且出貨熔絲陣列晶片之後由除了晶片製造商以外的實體編程。然而,也可使用其他非揮發性記憶體。
參考第1圖,晶粒10可包括原始設備製造商熔絲控制器12及晶粒上或使用者可編程熔絲控制器14。晶粒上熔絲控制器14可耦接至熔絲映射至個別熔絲匯流排22。這允許不同介面與晶粒上熔絲控制器14互動。之後將說明和顯示這些介面。
晶粒上熔絲控制器可包括定序器16,其進行晶粒上可編程熔絲模組30的自動編程。換言之,使用者能簡單地指示使用者期望的編程且定序器16自動地處理實作實際上進行且實作熔絲編程所需的所有步驟。也耦接至定序器16的是供電狀態機18,其可負責隨機地感應/編程熔絲模組列。亦即,可自動地且隨機地進行選擇用於編程的列以防止(或減少可能性)駭客干擾此編程。控制器14也包括用於聯合測試行動組織(JTAG)方塊的暫存器20。
晶粒10係耦接至熔絲電壓調節器24,依序耦接至晶粒上可編程熔絲模組30。外部電壓調節器26可耦接至原始設備製造商(OEM)熔絲模組28。
在一些實施例中,晶粒上熔絲控制器14和晶粒上可編程熔絲模組30完全隔離,且獨立於原始設備製造商熔絲控制器12和原始設備製造商熔絲模組28。這阻擋了駭客存取原始設備製造商熔絲模組的另一途徑。
因此,參考第2圖,在一實施例中,繪示出用於晶粒上可編程熔接的四個不同介面。第一介面係主機電腦32。另一個係安全控制器介面34。又一介面係原始設備製造商JTAG介面36,且最後介面係客戶JTAG介面38。介面32-38之各者可將資訊提供至專用暫存器40,其經由OR閘42與定序器10通訊。
控制OR閘,使得一次只有一個介面能將信號提供至定序器10。與定序器10的通訊係僅經由自動存取,如仲裁器44所執行。仲裁器44係耦接至交叉偵測器46,其儲存來自選定介面的資料在暫存器48中。
當是時候將資料寫入熔絲模組58中時,當達到正確初始電壓或多級熔絲編程中的期望電壓級時,熔絲讀取/寫入狀態機50對熔絲電壓調節器狀態機52發出電壓調節器起始信號。對熔絲讀取/寫入機50發出電壓調節器完成信號。熔絲讀取/寫入狀態機50接著對選定之熔絲模組58的適當區塊發出編程信號。同時,在一實施例中,熔絲電壓調節器狀態機52經由串列平行介面(SPI)主匯流排54來發出信號至熔絲電壓調節器56以對選定熔絲區塊驅動編程電壓VCCFHV。
針對每個介面,暫存器40控制熔絲製法的所有態樣,包括電壓準位和編程期間。另外,每個介面可具有如OR閘42的機制以去能各別介面。仲裁器可用以在超過一個介面的事件中判定處置增益存取的哪個介面和類型同時發出處置。
在一些實施例中,有四個介面和兩個處置類型。一個處置類型係熔絲存取且另一處置類型係經由用於每個介面之SPI主匯流排的熔絲電壓調節器存取。每個處置類型能被每個介面使用。針對來自四個介面之各者的熔絲存取,位址暫存器的位元31可用以對仲裁器指示處置就緒。
當仲裁器看到設定位元31時,便接受處置且將其發送至定序器10。在仲裁器已將資訊發送至定序器之後,仲裁器等待,直到設定完成位元為止。接著,仲裁器擷取任何返回資訊並將資訊輸出至起始處置的介面。當完成處置時,仲裁器接受下一個處置。
狀態機50從仲裁器取得所有輸入且進行如使用者所要求的適當處置。在一些實施例中,與熔絲58和電壓調節器狀態機52通訊且對所有操作維持適當時序。在一些實施例中,熔絲電壓調節器狀態機處理讀取/寫入狀態機與電壓調節器之間的所有處置且負責所有時序要求。
用於熔絲狀態機寫入的虛擬碼係如下:
用於熔絲狀態機讀取的虛擬碼係如下:
參考第3圖,依照一些實施例,熔絲狀態機寫入協定60可在軟體、韌體及/或硬體中實作。在韌體和軟體實施例中,其可由儲存於一或更多非暫態電腦可讀媒體(如磁、光、或半導體儲存器)中的電腦執行指令實作。例如,在一實施例中,其可儲存於適當控制器(如控制器14)內。
狀態機60序列可藉由在使用者請求被編程的資料中移位來開始,如方塊62所示。然後,提高電壓調節器電壓,如方塊64所示。一次一個位元被編程為選定電壓準位,如方塊66所示。若這是最後一級,則流程結束,如菱形68所判定。否則,在方塊64中,電壓調節器電壓被提高至下一個準位且流程重覆。
在完成編程之後,編程錯誤校正和控制(ECC)位元,如方塊70所示。接著,讀取剛被編程的資料,如方塊72所示。最後,使用ECC位元來檢查已被讀出的編程資料(方塊74)。若資料正確(菱形76),則流程結束,否則,流程重覆以重作編程。
在讀取操作期間,讀回且比較每個已被編程的列。若ECC資料相配,則資料有效且能被使用。
熔絲陣列架構80通常包括複數個模組。每個模組可包括四個群組。每個群組可包含四個熔絲區塊,其通常各為1000個位元。每個熔絲區塊可各包括32列的32位元。於是,如第4圖所示,模組0(編號81)可包括四個群組0-3(編號82)。每個群組包括複數個區塊84。可結 合任何數量的模組以建立熔絲陣列80。
存取熔絲區塊係經由定址。被感應之列的位址被取得為模組號、群組號、區塊號、和列號的串聯。當已使用位址從熔絲區塊感應到熔絲列時,可使用相同的位址以將熔絲內容儲存至晶片上隨機存取記憶體中。
傳統熔絲感應技術的可預測性通常利於駭客在側通道攻擊所用。可藉由隨機化熔絲感應演算法來減少此攻擊途徑。在一實施例中,每當將進行熔絲感應時,這種隨機化可使用隨機數產生器(RNG)來播種線性反饋移位暫存器計數器(LFSR)。計時LFSR以透過暫存器將信號從一個前進至下一個最有效位元。接著,一些輸出進行OR互斥且反饋至移位暫存器輸入。計數器係用以提供下一個熔絲列的位址以感應。下面的虛擬碼顯示演算法:
熔絲感應狀態機86中的所有邏輯(顯示於第5圖中)可基於隨機計算的位址。因此,熔絲被感應且儲存至隨機存取記憶體中的順序對邏輯不具有任何影響。使用線性反饋移位暫存器計數器來隨機化初始熔絲感應位址而防止駭客判定熔絲狀態、保護安全資產。
由此,如第5圖所示,狀態機86可包括隨機數產生器(RNG)98,其將種子提供至線性反饋移位暫存器(LFSR)計數器90。此種子改變列選擇的起始順序,且由於LFSR的本質,每次感應一組列時改變感應列的順序。移位暫存器計數器90被提供至熔絲介面(I/F)92,其接著將位址提供至熔絲陣列80。在一實施例中,熔絲陣列80的輸出可儲存於隨機存取記憶體(RAM)91中。然而,可使用任何技術來隨機化定址協定。在一些實施例中,可使用超過一個具有RNG 98的LFSR。
用於實作隨機化熔絲感應的序列94(顯示在第6圖中)可實作在軟體、韌體、及/或硬體中。在軟體和韌體實施例中,可實作成儲存於一或更多非暫態電腦可讀媒體(如磁、光、或半導體儲存器)中的電腦執行指令。作為其他實例,這類裝置的實例包括狀態機86、以及傳統處理器和傳統隨機存取記憶體。在一些實施例中,例如,線性反饋移位暫存器計數器可以是硬體裝置,且在其他實施例中,其可全部或部分地在軟體中實作。
藉由取得隨機數產生的種子來開始序列94(顯示於第6圖中),如方塊96所示。通常,這回應於存取熔絲陣列的請求而發生。然後,使用種子來取得位址,如方塊99所示。在一實施例中,種子可被提供至線性反饋移位暫存器計數器,其以熔絲列位址的方式來輸出隨機產生的位址。之後,使用此位址以藉由對熔絲陣列80驅動位址來挑選第一列以感應熔絲的選定列,如方塊100所示。 在一實施例中,後續的列可一個接著一個地被LFSR隨機地選擇。LFSR不選擇相同列兩次;反而每次選擇未選定列。在一實施例中,熔絲陣列將選定資料輸出至隨機存取記憶體91。在其他實施例中,可使用行感應。另外,也可使用二維區塊感應,其中隨機地選擇起始區塊位址。
在菱形102中,檢查判斷是否接著已感應到所有列。若否,則流程重覆,否則,流程可結束。
在一些實施例中,可使用多個隨機選擇技術。例如,除了選定區塊的隨機選定列之外,還可選擇一或更多模組、群組、和區塊。亦即,在一些實施例中,具有隨機數的分離LSFR、產生的種子可用於從列至區塊、至群組、至模組的每個期望粒度。
其他實施例可使用除了LFSR以外的其他技術。例如,隨機數產生器可選擇列以服務。儲存器或計分板可儲存已選擇的列。如此,若列被再次選擇(如藉由檢查計分板所判定),則命令隨機選擇器隨機地挑選另一列。
在一些情況下,可結合上述隨機感應順序概念來使用用於定址熔絲之侵入的其他技術。在一些情況下,這些組合可導致協同結果。
例如,在一些實施例中,可增加用以儲存重要資訊的位元數。作為一實例,可將單一位元增加至一串位元,其中一些位元係其他位元的補數。在一些實施例中,除了沿著一個可存取列儲存位元串之外,還可藉由連 續地讀取一連串列沿著行讀取來擴展位元。此外,也可使行中的位元補足列中的對應位元。接著,藉由讀取列中的這串位元和行中的補數位元串及比較這兩串,能識別出攻擊。例如,在電壓上升的攻擊中,攻擊者將必須在正確的時間提高電壓三倍以改變行中的每個位元。而且,只有將所有位元改變為1,會被認定為不當熔絲值,因為每個碼係由1與0兩者組成。同樣地,可阻礙其他攻擊。
參考第7圖,熔絲陣列積體電路110可包括記憶體或熔絲陣列112,包含可佈置成沿著分頁垂直延伸之列和跨分頁水平延伸之行的位元。當然,其他佈置也係可能的。行可被存取用於藉由行位址電路114來讀取和寫入。列可被存取用於藉由列位址電路116來讀取或寫入。能使用感應放大器118來判定所存取胞元的狀態。電路114和116及感應放大器118的操作可由控制120控制,作為兩個實例,控制120可以是微控制器或微處理器。
參考第8圖,用於冗餘熔接的序列122可在軟體、韌體、或硬體中實作。在軟體和韌體實施例中,其可由儲存於非暫態電腦可讀媒體(如磁、光、或半導體儲存器)中的電腦執行指令實作。作為一實施例,序列可由控制120實作。也可設想出其他變化。
序列122係藉由判斷是否有位元被儲存(如菱形124所示)來開始。若有的話,則可建立多位元碼串,如方塊126所示。因此,例如,若零係打算表示服務提供,則碼串能由超過一個位元組成,其中例如,中央位元 表示串中的碼且其他位元係碼的簡單補數。本領域之那些技藝者可設想出其他變化。接著,多位元碼串係沿著列儲存(如方塊128所示)在可定址位置中。
接下來,碼串被轉換成補數,如方塊130所示。例如,碼010被轉換成101。然後,可沿著行儲存補數碼串。於是,為了取出整個行儲存的碼補數串,在一實施例中,你必須讀取一串連續列,其中永遠是讀取列,而不是行。之後,補數碼係儲存於行中,如方塊132所示。
當談到存取碼串的時間時,可使用第9圖所示之序列134。如同第8圖之序列,此序列134可在軟體、韌體及/或硬體中實作。在軟體和韌體實施例中,其可由儲存於一或更多非暫態電腦可讀媒體(如磁、光、或半導體儲存器)中的電腦執行指令實作。又,在一些實施例中,其可由第7圖所示之控制120實作。
第9圖之序列係藉由一個接著一個地讀取列來開始,如方塊136所示。可逐一地讀取列或讀取列的序列可以是隨機的,使得每次讀取列時,使用不同的序列。接著,藉由讀取一串包括碼的列和一串包括補數的列來提取碼串與其補數,如方塊138所示。比較碼串與其補數,如方塊140所示。若在菱形142中判定相配,則碼串可被接受為有效或真正的,如方塊144所示。否則,可拒絕碼串,如方塊146所示,且阻止服務。
在一些實施例中,能結合抵抗侵入的多個防禦。例如,在一實施例中,熔絲陣列的隨機定址能結合可 分開存取的晶粒上和非晶粒上可編程熔絲陣列。在其他實施例中,隨機定址的熔絲陣列可利用冗餘熔絲編碼。在其他實施例中,隨機定址技術可結合任何上述技術。本發明並不限於晶粒上可編程熔絲實施例。
第10圖繪示系統700的實施例。在實施例中,系統700可以是媒體系統,雖然系統700並不限於此內文。例如,系統700可併入個人電腦(PC)、膝上型電腦、纖薄膝上型電腦、平板電腦、觸控墊、可攜式電腦、手持電腦、掌上型電腦、個人數位助理(PDA)、蜂巢式電話、組合蜂巢式電話/PDA、電視、智慧型裝置(例如,智慧型手機、智慧型平板電腦或智慧型電視)、行動上網裝置(MID)、通信裝置、資料通訊裝置、等等。
在實施例中,系統700包含耦接至顯示器720的平台702。平台702可從如內容服務裝置730或內容傳送裝置740或其他類似內容來源的內容裝置接收內容。包含一或更多導航特徵的導航控制器750可用以與例如平台702及/或顯示器720互動。下面更詳細說明這些元件之各者。
在實施例中,平台702可包含晶片組705、處理器710、記憶體712、儲存器714、圖形子系統715、應用程式716及/或無線電718之任何組合。晶片組705可在處理器710、記憶體712、儲存器714、圖形子系統715、應用程式716及/或無線電718之間提供內部通訊。例如,晶片組705可包括能夠提供與儲存器714內部通訊 的儲存配接器(未示出)。
處理器710可實作成複雜指令集電腦(CISC)或精簡指令集電腦(RISC)處理器、x86指令集可相容處理器、多核心、或任何其他微處理器或中央處理單元(CPU)。在實施例中,處理器710可包含雙核心處理器、雙核心行動處理器、等等。處理器可與記憶體712一起實作第3、6、8和9圖所示之序列。
記憶體712可實作成揮發性記憶體裝置,例如,但不限於隨機存取記憶體(RAM)、動態隨機存取記憶體(DRAM)、或靜態RAM(SRAM)。
儲存器714可實作成非揮發性儲存裝置,例如,但不限於磁碟機、光碟機、磁帶機、內部儲存裝置、附接儲存裝置、快閃記憶體、電池備用SDRAM(同步DRAM)、及/或網路可存取儲存裝置。在實施例中,例如,當包括多個硬碟機時,儲存器714可包含用以對貴重的數位媒體提高儲存效能強化保護的技術。
圖形子系統715可進行如靜止或視頻的影像之處理以供顯示。例如,圖形子系統715可以是圖形處理單元(GPU)或視覺處理單元(VPU)。類比或數位介面可用以通訊地耦接圖形子系統715和顯示器720。例如,介面可以是高解析多媒體介面、顯示埠、無線HDMI、及/或無線HD相容技術之任一者。圖形子系統715可整合至處理器710或晶片組705中。圖形子系統715可以是通訊地耦接至晶片組705的獨立卡。
本文所述之圖形及/或視頻處理技術可實作在各種硬體架構中。例如,圖形及/或視頻功能可整合在晶片組內。另外,可使用分開的圖形及/或視頻處理器。作為另一實施例,可藉由包括多核心處理器的通用處理器來實作圖形及/或視頻功能。在又一實施例中,可在消費性電子裝置中實作功能。
無線電718可包括能夠使用各種適當之無線通訊技術來傳送和接收信號的一或更多無線電。這類技術可包含跨一或更多無線網路的通訊。示範無線網路包括(但不限於)無線區域網路(WLAN)、無線個人區域網路(WPAN)、無線都會區域網路(WMAN)、蜂巢式網路、及衛星網路。在跨上述網路的通訊中,無線電718可依照一或更多為任何型式的適用標準來操作。
在實施例中,顯示器720可包含任何電視型的監視器或顯示器。例如,顯示器720可包含電腦顯示螢幕、觸控螢幕顯示器、視頻監視器、類似電視的裝置、及/或電視。顯示器720可以是數位及/或類比的。在實施例中,顯示器720可以是全像式顯示器。而且,顯示器720可以是可接收視覺投影的透明表面。上述投影可傳送各種形式的資訊、影像、及/或物件。例如,上述投影可以是用於行動擴增實境(MAR)應用程式的視覺重疊。在一或更多軟體應用程式716的控制下,平台702可在顯示器720上顯示使用者介面722。
在實施例中,例如,內容服務裝置730可由 任何國家、國際及/或獨立服務控制且由此可經由網際網路被平台702存取。內容服務裝置730可耦接至平台702及/或顯示器720。平台702及/或內容服務裝置730可耦接至網路760以傳遞(例如,發送及/或接收)至及來自網路760的媒體資訊。內容傳送裝置740也可耦接至平台702及/或顯示器720。
在實施例中,內容服務裝置730可包含有線電視盒、個人電腦、網路、電話、能夠傳送數位資訊及/或內容的網際網路啟動裝置或設備、及任何其他能夠經由網路760或直接地在內容提供者與平台702及/或顯示器720之間單向或雙向傳遞內容的類似裝置。將了解內容可單向及/或雙向地傳遞至系統700中的任一元件和經由網路760傳遞至內容提供者並從中單向及/或雙向地傳遞。內容之實例可包括任何媒體資訊,例如包括視頻、音樂、醫學及遊戲資訊、等等。
內容服務裝置730接收如包括媒體資訊、數位資訊、及/或其他內容之有線電視節目的內容。內容提供者之實例可包括任何有線或衛星電視或無線電或網際網路內容提供者。所提出之實例並不打算限制本發明之實施例。
在實施例中,平台702可從具有一或更多導航特徵的導航控制器750接收控制信號。例如,控制器750的導航特徵可用以與使用者介面722互動。在實施例中,導航控制器750可以是指向裝置,其可以是允許使用 者將空間(例如,連續的和多維的)資料輸入電腦中的電腦硬體元件(具體而言,是人性化介面裝置)。如圖形使用者介面(GUI)、及電視和監視器的許多系統允許使用者使用實體手勢來控制和提供資料給電腦或電視。
控制器750之導航特徵的移動可藉由顯示於顯示器上的指標、游標、聚焦環、或其他可見指示器之移動來模擬在顯示器(例如,顯示器720)上。例如,在軟體應用程式716的控制下,位於導航控制器750上的導航特徵可被映射至顯示於例如使用者介面722上的虛擬導航特徵。在實施例中,控制器750可能不是單獨元件,而是整合至平台702及/或顯示器720中。然而,實施例並不限於本文所示或所述之元件或內文。
在實施例中,驅動程式(未示出)當被啟動時可包含讓使用者能在初始開機之後以觸碰按鈕來立即打開和關閉類似電視的平台702之技術。當「關閉」平台時,程式邏輯可允許平台702將內容流至媒體配接器或其他內容服務裝置730或內容傳送裝置740。此外,晶片組705可包含對例如5.1環繞立體聲音頻及/或高解析7.1環繞立體聲音頻的硬體及/或軟體支援。驅動程式可包括用於整合圖形平台的圖形驅動程式。在實施例中,圖形驅動程式可包含周邊元件互連(PCI)快捷圖形卡。
在各種實施例中,可整合系統700中所示的任一或更多元件。例如,可整合平台702和內容服務裝置730、或可整合平台702和內容傳送裝置740、或例如, 可整合平台702、內容服務裝置730、和內容傳送裝置740。在各種實施例中,平台702和顯示器720可以是整合單元。例如,可整合顯示器720和內容服務裝置730、或可整合顯示器720和內容傳送裝置740。這些實例並不打算限制本發明。
在各種實施例中,系統700可實作成無線系統、有線系統、或這兩者之組合。當實作成無線系統時,系統700可包括適用於透過無線共享媒體來傳遞的元件和介面,如一或更多天線、傳送器、接收器、收發器、放大器、濾波器、控制邏輯等。無線共享媒體之實例可包括如RF頻譜等的無線頻譜之部分。當實作成有線系統時,系統700可包括適用於透過有線通訊媒體來傳遞的元件和介面,如輸入/輸出(I/O)配接器、用以將I/O配接器與對應有線通訊媒體連接的實體連接器、網路介面卡(NIC)、磁碟控制器、視頻控制器、音頻控制器、等等。有線通訊媒體之實例可包括導線、電線、金屬導線、印刷電路板(PCB)、底板、交換結構、半導體材料、雙扭線、同軸電纜、光纖、等等。
平台702可建立一或更多邏輯或實體通道以傳遞資訊。資訊可包括媒體資訊和控制資訊。媒體資訊可指表示預定給使用者之內容的任何資料。內容之實例可包括例如來自語音對話、視頻會議、串流視訊、電子郵件(「email」)信息、語音郵件信息、字母數字符號、圖形、影像、視頻、文字等的資料。來自語音對話的資料可以是 例如語音資訊、靜默時間、背景雜音、舒適雜音、音調等。控制資訊可指表示預定給自動化系統之命令、指令或控制字的任何資料。例如,控制資訊可用以路由通過系統的媒體資訊、或命令節點以預定方式來處理媒體資訊。然而,實施例並不限於第10圖所示或所述之元件或內文。
如上所述,系統700可以各種實體式樣或尺寸來實作。第11圖繪示於其中可實作系統700之小尺寸裝置800的實施例。在實施例中,例如,裝置800可實作成具有無線能力的行動計算裝置。例如,行動計算裝置可指具有處理系統以及如一或更多電池之行動電源的任何裝置。
如上所述,行動計算裝置之實例可包括個人電腦(PC)、膝上型電腦、纖薄膝上型電腦、平板電腦、觸控墊、可攜式電腦、手持電腦、掌上型電腦、個人數位助理(PDA)、蜂巢式電話、組合蜂巢式電話/PDA、電視、智慧型裝置(例如,智慧型手機、智慧型平板電腦或智慧型電視)、行動上網裝置(MID)、通信裝置、資料通訊裝置、等等。
行動計算裝置之實例亦可包括被安排由人們穿戴的計算機,例如手腕計算機、手指計算機、戒形計算機、眼鏡計算機、皮帶夾計算機、臂帶計算機、鞋子計算機、衣服計算機、及其他隨身計算機。在實施例中,例如,行動計算裝置可實作成能夠執行電腦應用程式以及語音通訊及/或資料通訊的智慧型手機。舉例來說,雖然有 些實施例可以實作成智慧型手機的行動計算裝置來說明,但可了解仍可同樣使用其他無線行動計算裝置來實作其他實施例。實施例並不限於此內文。
在一些實施例中,處理器710可與照相機722和全球定位系統感應器720通訊。在軟體及/或韌體實施例中,耦接至處理器710的記憶體712可儲存用於實作第2圖所示之序列的電腦可讀指令。
如第6圖所示,裝置800可包含外殼802、顯示器804、輸入/輸出(I/O)裝置806、及天線808。裝置800亦可包含導航特徵812。顯示器804可包含任何適當顯示單元來顯示適用於行動計算裝置之資訊。I/O裝置806可包含任何適當I/O裝置來將資訊輸入行動計算裝置中。例如,I/O裝置806可包括字母數字鍵盤、數字小鍵盤、觸控墊、輸入鍵、按鍵、開關、搖桿開關、麥克風、揚聲器、語音辨識裝置及軟體、等等。資訊亦可透過麥克風輸入至裝置800中。可透過語音辨識裝置來數位化上述資訊。實施例並不限於此內文。
各種實施例可使用硬體元件、軟體元件、或這兩者之組合來實作。硬體元件之實例可包括處理器、微處理器、電路、電路元件(例如,電晶體、電阻器、電容器、電感器等等)、積體電路、專用積體電路(ASIC)、可程式邏輯裝置(PLD)、數位信號處理器(DSP)、現場可程式閘陣列(FPGA)、邏輯閘、暫存器、半導體裝置、晶片、微晶片、晶片組等等。軟體之實例可包括軟體元件、程式、 應用、電腦程式、應用程式、系統程式、機器程式、作業系統軟體、中間軟體、韌體、軟體模組、常式、副常式、函數、方法、程序、軟體介面、應用程式介面(API)、指令集、計算碼、計算機碼、碼段、計算機碼段、字組、值、符號、或以上之任何組合。判定實施例是否使用硬體元件及/或軟體元件來實作可依照如期望計算率、功率級、耐熱性、處理週期預算、輸入資料率、輸出資料率、記憶體資源、資料匯流排速度及其他設計或效能限制的一些因素而有所不同。
本文所述之圖形處理技術可在各種硬體架構中實作。例如,圖形功能可整合在晶片組內。另外,可使用分散圖形處理器。作為另一實施例,可藉由包括多核心處理器的通用處理器來實作圖形功能。
在整篇本說明書中提及「一個實施例」或「一實施例」意味著結合實施例所述之特定特徵、結構、或特性係包括在本發明所包含之至少一個實作中。於是,出現「一個實施例」或「在一實施例中」的說法不一定都指相同的實施例。再者,可以除了所示之特定實施例以外的其他適當形式來建立特定特徵、結構、或特性,且所有上述形式可包含在本申請案的申請專利範圍內。
儘管已針對有限數量的實施例來說明本發明,但本領域之那些技藝者將了解由此而來的許多修改和變化。預期所附之申請專利範圍當落在本發明之實際精神和範圍內時涵蓋所有這樣的修改和變化。
10‧‧‧晶粒
12‧‧‧原始設備製造商熔絲控制器
14‧‧‧晶粒上熔絲控制器
16‧‧‧定序器
18‧‧‧供電狀態機
20‧‧‧用於JTAG方塊的暫存器
22‧‧‧熔絲映射至個別熔絲匯流排
24‧‧‧熔絲電壓調節器
26‧‧‧外部電壓調節器
28‧‧‧原始設備製造商熔絲模組
30‧‧‧熔絲模組

Claims (25)

  1. 一種電腦執行的方法,包含:使用在一晶粒上之一編程器來編程在該晶粒上的一熔絲陣列。
  2. 如申請專利範圍第1項所述之方法,包括在具有一晶粒上可編程熔絲陣列的一第一熔絲陣列中選擇熔絲位址及包括與該第一熔絲陣列分開之僅可存取的一第二熔絲陣列。
  3. 如申請專利範圍第1項所述之方法,包括使複數個介面之其一者能將信號提供至該編程器。
  4. 如申請專利範圍第3項所述之方法,包括防止超過一個介面同時將信號提供至該編程器。
  5. 如申請專利範圍第3項所述之方法,包括使該些介面能使用不同的編程電壓或編程期間。
  6. 如申請專利範圍第1項所述之方法,更包含:提供一第一串位元以記錄一熔絲狀態,包括至少一補數位元;及沿著一位址線儲存該第一串和為該第一串之補數的一第二串在一不同方向上之一位址線中,使得該第一串和該第二串之其一者係儲存於一列中,而另一串係儲存於一行中。
  7. 如申請專利範圍第6項所述之方法,更包括接收一位元以儲存及建立來自該位元的一多位元第一串。
  8. 如申請專利範圍第7項所述之方法,包括讀取該列 和取得該位元及讀取該行。
  9. 一種設備,包含:一熔絲陣列;一第一熔絲控制器,用以使一熔絲製造商能編程該熔絲陣列;及一第二熔絲控制器,與該第一熔絲控制器隔離,該第二熔絲控制器係用以允許一使用者編程該熔絲陣列。
  10. 如申請專利範圍第9項所述之設備,包括一控制,用以沿著一第一位址線儲存一值作為至少兩個不同狀態的一串位元及用以儲存一補數串在垂直於該第一位址線之一第二位址線中。
  11. 如申請專利範圍第10項所述之設備,該設備係用以接收一位元以儲存及建立來自該位元的一多位元第一串。
  12. 如申請專利範圍第11項所述之設備,該控制係用以讀取該列和取得該位元及讀取該行。
  13. 如申請專利範圍第12項所述之設備,該控制係用以比較該碼與其補數。
  14. 如申請專利範圍第13項所述之設備,該控制係用以若該第一串和該第二串不相配為碼和碼補數,則拒絕該碼。
  15. 如申請專利範圍第9項所述之設備,該控制係用以隨機地選擇一熔絲位址以開始熔絲感應。
  16. 如申請專利範圍第9項所述之設備,其中該熔絲 陣列係一晶粒上可編程熔絲陣列。
  17. 如申請專利範圍第9項所述之設備,包括不為晶粒上可編程的一第二陣列,該第一陣列和該第二陣列係使用不同的密碼來存取。
  18. 如申請專利範圍第9項所述之設備,包括一作業系統。
  19. 如申請專利範圍第9項所述之設備,包括一電池。
  20. 如申請專利範圍第9項所述之設備,包括韌體及一模組,用以更新該韌體。
  21. 一或更多非暫態電腦可讀媒體,儲存用以使一處理器能進行一系列的指令,該系列包含:使用一晶粒上編程器來編程一熔絲陣列。
  22. 如申請專利範圍第21項所述之媒體,該系列係用以在具有一晶粒上可編程熔絲陣列的一第一熔絲陣列中選擇熔絲位址及包括與該第一熔絲陣列分開之僅可存取的一第二熔絲陣列。
  23. 如申請專利範圍第22項所述之媒體,該系列係用以使複數個介面之其一者能將信號提供至該編程器。
  24. 如申請專利範圍第21項所述之媒體,該系列係用以防止超過一個介面同時將信號提供至該編程器。
  25. 如申請專利範圍第22項所述之媒體,該系列係用以使該些介面能使用不同的編程電壓或編程期間。
TW103107233A 2013-03-07 2014-03-04 隨機熔絲感應 TWI587138B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US13/788,028 US9922720B2 (en) 2013-03-07 2013-03-07 Random fuse sensing

Publications (2)

Publication Number Publication Date
TW201510726A true TW201510726A (zh) 2015-03-16
TWI587138B TWI587138B (zh) 2017-06-11

Family

ID=50241127

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103107233A TWI587138B (zh) 2013-03-07 2014-03-04 隨機熔絲感應

Country Status (4)

Country Link
US (1) US9922720B2 (zh)
EP (1) EP2775403B1 (zh)
CN (1) CN104064220B (zh)
TW (1) TWI587138B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10217498B2 (en) * 2016-09-12 2019-02-26 Qualcomm Incorporated Techniques for preventing tampering with PROM settings
US11310028B2 (en) 2019-01-31 2022-04-19 The Boeing Company Tamper resistant counters
US11295826B1 (en) 2021-03-30 2022-04-05 Nxp B.V. OTP control logic with randomization for sensing and writing fuse values

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2802668B1 (fr) 1999-12-15 2002-02-08 St Microelectronics Sa Procede de transfert securise de donnees
WO2002043152A2 (en) * 2000-11-27 2002-05-30 Koninklijke Philips Electronics N.V. Poly fuse rom
US6445606B1 (en) * 2001-05-10 2002-09-03 Koninklijke Philips Electronics N.V. Secure poly fuse ROM with a power-on or on-reset hardware security features and method therefor
US8001054B1 (en) * 2001-07-10 2011-08-16 American Express Travel Related Services Company, Inc. System and method for generating an unpredictable number using a seeded algorithm
US6879021B1 (en) 2003-10-06 2005-04-12 International Business Machines Corporation Electronically programmable antifuse and circuits made therewith
US6944083B2 (en) 2003-11-17 2005-09-13 Sony Corporation Method for detecting and preventing tampering with one-time programmable digital devices
US7437531B2 (en) 2004-09-30 2008-10-14 Intel Corporation Testing memories
US7737763B2 (en) * 2007-02-13 2010-06-15 International Business Machines Corporation Virtual electronic fuse apparatus and methodology
US7778074B2 (en) * 2007-03-23 2010-08-17 Sigmatel, Inc. System and method to control one time programmable memory
US7573762B2 (en) 2007-06-06 2009-08-11 Freescale Semiconductor, Inc. One time programmable element system in an integrated circuit
US8781111B2 (en) * 2007-07-05 2014-07-15 Broadcom Corporation System and methods for side-channel attack prevention
US7924596B2 (en) 2007-09-26 2011-04-12 Intel Corporation Area efficient programmable read only memory (PROM) array
JP5032290B2 (ja) * 2007-12-14 2012-09-26 株式会社東芝 不揮発性半導体記憶装置
EP2133882B1 (en) 2008-06-13 2015-08-12 EM Microelectronic-Marin SA Non-volatile memory device and method for secure readout of protected data
SG171730A1 (en) * 2008-11-24 2011-07-28 Certicom Corp System and method for hardware based security
US8395923B2 (en) * 2008-12-30 2013-03-12 Intel Corporation Antifuse programmable memory array
TWI462107B (zh) * 2010-08-20 2014-11-21 Chien Shine Chung 電子系統、記憶體及其提供方法
US9003246B2 (en) * 2012-09-29 2015-04-07 Intel Corporation Functional memory array testing with a transaction-level test engine
US9107069B2 (en) * 2012-10-11 2015-08-11 Nordic Semiconductor Asa Addressable radio device

Also Published As

Publication number Publication date
EP2775403B1 (en) 2018-09-26
US20140254234A1 (en) 2014-09-11
US9922720B2 (en) 2018-03-20
EP2775403A2 (en) 2014-09-10
CN104064220A (zh) 2014-09-24
TWI587138B (zh) 2017-06-11
EP2775403A3 (en) 2014-11-26
CN104064220B (zh) 2018-09-11

Similar Documents

Publication Publication Date Title
JP5840712B2 (ja) オンダイのプログラム可能なヒューズ
US11706199B2 (en) Electronic device and method for generating attestation certificate based on fused key
CN104050416A (zh) 显示表面的安全绘制
JP2016085381A (ja) 暗号化方法、暗号化装置、及び暗号化システム
CN105095097B (zh) 随机化的存储器访问
CN105336352B (zh) 存储器装置
US20140019322A1 (en) Mobile banking systems and related methods
TWI587138B (zh) 隨機熔絲感應
CN111008407A (zh) 用于执行虚拟加密操作的加密电路
CN109718554B (zh) 一种实时渲染方法、装置及终端
CN107040649A (zh) 用于信息呈现的装置和方法
WO2015077951A1 (en) Techniques for block-based indexing
KR101852986B1 (ko) 중복 퓨즈 코딩을 위한 컴퓨터 실행 방법, 정보 저장 장치 및 비일시적 컴퓨터 판독 가능 매체
CN104054049A (zh) 减少由cpu执行以便复制源数据从而实现对源数据的并行处理的读/写操作的数量
US10031734B2 (en) Device and method for generating application package
US9292713B2 (en) Tiered access to on chip features
CN104036827B (zh) 基于位的熔丝修复
CN107025392B (zh) 基于使用的认证系统
CN105607906A (zh) 一种业务实现方法、装置及电子设备
CN107430656B (zh) 用于os级驱动器的系统管理模式信任建立
CN108491548A (zh) 基于地图的画线处理方法以及装置
US20170351865A1 (en) Computing device to generate a security indicator
TWI610178B (zh) 共享函數多埠rom系統及裝置
WO2014053075A1 (en) Method, apparatus and system of managing a user login interface

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees