DE112010005172B4 - Gepaarte programmierbare Schmelzsicherungen - Google Patents

Gepaarte programmierbare Schmelzsicherungen Download PDF

Info

Publication number
DE112010005172B4
DE112010005172B4 DE112010005172.0T DE112010005172T DE112010005172B4 DE 112010005172 B4 DE112010005172 B4 DE 112010005172B4 DE 112010005172 T DE112010005172 T DE 112010005172T DE 112010005172 B4 DE112010005172 B4 DE 112010005172B4
Authority
DE
Germany
Prior art keywords
fuse
pair
fuses
bit
blown
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
DE112010005172.0T
Other languages
English (en)
Other versions
DE112010005172T5 (de
Inventor
Steven Ross Bentley
Paul Merrill Greco
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112010005172T5 publication Critical patent/DE112010005172T5/de
Application granted granted Critical
Publication of DE112010005172B4 publication Critical patent/DE112010005172B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells
    • 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

Abstract

Schmelzsicherungs-Codiersystem, aufweisend: eine Vielzahl von paarweise angeordneten Schmelzsicherungen, die so konfiguriert sind, dass jedes Schmelzsicherungs-Paar ein Datenbit darstellt, wenn eine Schmelzsicherung des Paars durchgebrannt ist; ein unprogrammiertes Bit darstellt, wenn keine Schmelzsicherung des Paars durchgebrannt ist; und ein auf Null gesetztes Bit darstellt, wenn beide Schmelzsicherungen des Paars durchgebrannt sind, und ein Erkennungssystem, welches so konfiguriert ist, dass erkennt wird, ob irgendein Schmelzsicherungs-Paar auf Null gesetzt ist.

Description

  • GEBIET DER ERFINDUNG
  • Diese Erfindung betrifft die permanente Speicherung von Daten mittels Schmelzsicherungen und insbesondere die Programmierung und Codierung solcher Schmelzsicherungen.
  • HINTERGRUND DER ERFINDUNG
  • Schmelzsicherungen lassen sich so anordnen, dass sie eine permanente Speicherung von Daten bereitstellen, zum Beispiel durch selektives Durchbrennen der Schmelzsicherungen, um die Daten zu codieren. Eine Schmelzsicherung wird üblicherweise als eine binäre „0” angesehen, wenn die Schmelzsicherung unversehrt ist, und als eine binäre „1”, wenn die Schmelzsicherung durchgebrannt ist. Somit erzeugt das selektive Durchbrennen von Schmelzsicherungen eine Binärzahl.
  • Beispiele von zur permanenten Speicherung von Daten verwendeten Schmelzsicherungen umfassen „e-Fuses” und Laser-Schmelzsicherungen. Wie in der Patentschrift US 7461268 B2 erörtert, sind „e-Fuses” elektrisch programmierbar oder werden sie durch Anlegen einer hohen Durchbrennspannung an eine Schmelzsicherung geschrieben. Die Daten werden durch speicherndes Setzen der Daten in Register gelesen. Laser-Schmelzsicherungen werden durchgebrannt, indem ein Laser auf die Schmelzsicherung gerichtet wird, um sie zu überhitzen.
  • Schmelzsicherungen können verwendet werden, um Daten zu codieren, die unverändert fortbestehen sollen und die unbegrenzt aufbewahrt werden sollen, ohne eine Pufferbatterie zu erfordern. Ein Beispiel solcher Daten umfasst die Seriennummer einer Einheit und Daten über die Einheit. Nachdem die Daten codiert wurden, können die Daten üblicherweise nicht verändert werden. Ein weiteres Beispiel umfasst einen permanenten Verschlüsselungsschlüssel wie einen solchen, der zum Verschlüsseln und Entschlüsseln von Daten über eine Einheit, in welche die Schmelzsicherungen eingebettet sind, z. B. Einheiten-Metadaten, verwendet werden kann. Eine Verschlüsselungsmaschine hat dann den ausschließlichen Zugang zu dem Verschlüsselungsschlüssel zum Verschlüsseln oder Entschlüsseln der Daten, aber es gibt keine andere Möglichkeit des Zugangs, nachdem der Schlüssel codiert wurde.
  • Daten über eine Einheit können zum Beispiel durch den Hersteller der Einheit in einer speziellen Fertigungsstätte codiert werden. Verschlüsselungsschlüssel erfordern volle Sicherheit und werden an einem absolut sicheren Ort codiert, und nachdem sie codiert sind, kann weiteres Codieren durch Zerstören des Zugangs zur Codiervorrichtung verhindert werden. Im Fall von Laser-Schmelzsicherungen können die codierten Schmelzsicherungen durch eine Schicht bedeckt werden, welche das optische Lesen der Schmelzsicherungen verhindert und weiteres Codieren verhindert. Im Fall von „e-Fuses” kann der Zugriff von außen auf die Verschlüsselungsschlüssel zum Beispiel durch Durchbrennen einer Haupt-Schmelzsicherung beschränkt und schreibgeschützt werden, oder die „e-Fuses” können, wie in der Patentschrift US 7461268 B2 erörtert, monotone Aktualisierungen in einer Richtung mit der Zeit ausführen, wie bei einem Versionswert, der nur erhöht werden kann.
  • Ein Problem kann die mögliche Einführung eines oder mehrerer Fehler in den Codierprozess dadurch, dass eine Schmelzsicherung vor dem Codierprozess, während des Codierprozesses und nach dem Codierprozess unbeabsichtigt durchgebrannt werden kann, umfassen. Üblicherweise erfordert ein solcher Fehler, dass der gesamte die Schmelzsicherungen verkörpernde Chip ausgesondert werden muss. Nachdem die Haupt-Schmelzsicherung durchgebrannt wurde, ist es gegebenenfalls unmöglich, festzustellen, ob eine Schmelzsicherung, die unversehrt sein sollte, durchgebrannt wurde. Alles, was ein Benutzer wüsste, ist, dass die den Chip verkörpernde Einheit nicht mehr funktioniert, weil sie ihre Metadaten nicht richtig lesen kann. Zu einem weiteren Problem kann die Entsorgung der codierten Schmelzsicherungen gehören, welche nicht mehr gebraucht werden oder gefährdet sind. Die Entsorgung muss geschützt erfolgen, um unbefugte Verwendung zu unterbinden.
  • Auch andere Dokumente beschäftigen sich mit e-Fuses. Beispielsweise ist in US 6285619 B1 ein Schaltkreis zum Speichern eines Datenbit beschrieben, bei dem der Schaltkreis eine erste Sicherung ausweist, die ein erstes und ein zweites Ende hat, und eine zweite Sicherung, die ein drittes und ein viertes Ende hat.
  • KURZBESCHREIBUNG DER ERFINDUNG
  • Verfahren, Schmelzsicherungs-Codiersysteme, Schmelzsicherungs-Programmiersysteme und Einheiten werden bereitgestellt.
  • In einer Ausführungsform umfasst ein Schmelzsicherungs-Codiersystem eine Vielzahl von paarweise angeordneten Schmelzsicherungen, die so konfiguriert sind, dass jedes Schmelzsicherungs-Paar ein Datenbit darstellt, wenn eine Schmelzsicherung des Paars durchgebrannt ist; ein unprogrammiertes Bit darstellt, wenn keine Schmelzsicherung des Paars durchgebrannt ist; und ein auf Null gesetztes Bit (zero-ized bit) darstellt, wenn beide Schmelzsicherungen des Paars durchgebrannt sind. Das Anordnen der Schmelzsicherungen in Paaren gestattet das Erkennen und Melden gültiger Bits, ohne den Wert irgendeines Bits zu identifizieren.
  • Außerdem weist das Schmelzsicherungs-Codiersystem zusätzlich ein Erkennungssystem auf, das so konfiguriert ist, dass es erkennt, ob irgendein Schmelzsicherungs-Paar auf Null gesetzt ist, was zum Beispiel den Satz von Schmelzsicherungen unbrauchbar machen könnte.
  • In noch einer weiteren Ausführungsform umfasst ein Schmelzsicherungs-Programmiersystem eine Vielzahl von paarweise angeordneten Schmelzsicherungen; und ein System zum Durchbrennen von Schmelzsicherungen, das in der Lage ist, die Schmelzsicherungen der Paare so zu programmieren, dass jedes Paar ein Bit darstellt, was das Durchbrennen einer ersten Schmelzsicherung eines Paars, um ein „1”-Bit darzustellen, das Durchbrennen einer zweiten Schmelzsicherung eines Paars, um ein „0”-Bit darzustellen, und das Durchbrennen beider Schmelzsicherungen eines Paars, um ein auf Null gesetztes Paar darzustellen, umfasst, wobei, wenn keine Schmelzsicherung eines Paars durchgebrannt ist, dieses ein leeres, unprogrammiertes Bit (null, un-programmed bit) darstellt.
  • Außerdem weist auch dieses Schmelzsicherungs-Codiersystem zusätzlich ein Erkennungssystem auf, das so konfiguriert ist, dass es erkennt, ob irgendein Schmelzsicherungs-Paar auf Null gesetzt ist, was zum Beispiel den Satz von Schmelzsicherungen unbrauchbar machen könnte.
  • In noch einer weiteren Ausführungsform ist ein Prüfsystem so konfiguriert, dass es vor dem Programmieren eines Schmelzsicherungs-Paars beide Bits des Schmelzsicherungs-Paars darauf prüft, ob eine Schmelzsicherung des Paars durchgebrannt ist.
  • Und in noch einer weiteren Ausführungsform ist ein Speicherungssystem so konfiguriert, dass es jedes vom Prüfsystem gefundene Bitpaar, bei dem eine Schmelzsicherung des Paars durchgebrannt ist, identifiziert; und ist das System zum Durchbrennen von Schmelzsicherungen so konfiguriert, dass es jede Schmelzsicherung des gefundenen Schmelzsicherungs-Paars überspringt und nicht durchbrennt. Es besteht eine Wahrscheinlichkeit von 50 Prozent, dass die durchgebrannte Schmelzsicherung richtig ist.
  • In noch einer weiteren Ausführungsform ist ein Versuchs-Prüfsystem so konfiguriert, dass es die Gültigkeit der Programmierung durch Ausführen eines Versuchs prüft; und wenn der Versuch fehlschlägt, anzeigt, dass das identifizierte Bitpaar ein invertiertes Bit umfasst. Ein fehlgeschlagener Versuch zeigt an, dass die durchgebrannte Schmelzsicherung falsch ist. Es kann möglich sein, die Daten so abzuändern, dass sie zu dem invertierten Bit passen.
  • In einer weiteren Ausführungsform ist ein Erkennungssystem so konfiguriert, dass es vor dem Programmieren irgendeines Paars erkennt, ob alle Schmelzsicherungs-Paare leere, unprogrammierte Bits umfassen, und andernfalls, ob irgendein Paar nicht leer ist.
  • In noch einer weiteren Ausführungsform ist ein Prüfsystem so konfiguriert, dass es nach dem Programmieren jedes Schmelzsicherungs-Paars die Gültigkeit des jeweiligen Paars prüft.
  • In einer Ausführungsform ist das Prüfsystem so konfiguriert, dass es feststellt, ob jedes Schmelzsicherungs-Paar auf ein „1”-Bit oder ein „0”-Bit programmiert wurde, und andernfalls, dass mindestens ein Bitpaar ungültig ist.
  • In einer weiteren Ausführungsform ist das Schmelzsicherungs-System zum Durchbrennen von Schmelzsicherungen zusätzlich so konfiguriert, dass es, wenn mindestens ein ungültiges Bitpaar ermittelt wird, alle unversehrten Schmelzsicherungen der Paare durchbrennt, wodurch die Vielzahl von Schmelzsicherungen „auf Null gesetzt” wird.
  • In noch einer weiteren Ausführungsform ist ein Erkennungssystem so konfiguriert, dass es nach dem Durchbrennen der unversehrten Schmelzsicherungen der Paare erkennt, ob alle Schmelzsicherungs-Paare auf Null gesetzt sind, um dadurch sicherzustellen, dass der Satz von Schmelzsicherungen unbrauchbar ist.
  • In noch einer weiteren Ausführungsform umfasst eine Einheit ein Funktionssystem, ein Gefährdungserkennungssystem, das so konfiguriert ist, dass es erkennt, ob das Funktionssystem gefährdet ist, und ein System codierter Schmelzsicherungen, das eine Vielzahl von paarweise angeordneten Schmelzsicherungen umfasst, die so codiert sind, dass jedes Schmelzsicherungs-Paar ein Datenbit darstellt, wenn eine Schmelzsicherung des Paars durchgebrannt ist. Ein System zum Durchbrennen von Schmelzsicherungen ist so konfiguriert, dass es auf die durch das Gefährdungserkennungssystem gemachte Feststellung, dass das Funktionssystem gefährdet ist, mit dem Durchbrennen aller unversehrten Schmelzsicherungen der Paare reagiert, so dass beide Schmelzsicherungen jedes Paars durchgebrannt sind, um ein auf Null gesetztes Paar darzustellen, wodurch die Vielzahl von Schmelzsicherungen „auf Null gesetzt” wird, um dadurch den Satz von Schmelzsicherungen unbrauchbar zu machen.
  • Die folgende ausführliche Beschreibung ermöglicht in Verbindung mit den beigefügten Zeichnungen ein umfassenderes Verständnis der vorliegenden Erfindung.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist eine Zeichnung einer beispielhaften Anordnung von Schmelzsicherungen in Paaren gemäß der vorliegenden Erfindung;
  • Die 2A, 2B, 2C und 2D sind Zeichnungen von Beispielen von Darstellungen eines Schmelzsicherungs-Paars aus 1;
  • 3 ist ein Schaltbild unversehrter und durchgebrannter „e-Fuses”, das in der Anordnung von Schmelzsicherungen in 1 realisiert sein kann;
  • Die 4A und 4B sind schematische Darstellungen mittels eines Laser-Systems durchgebrannter und unversehrter Schmelzsicherungen und eines Systems zum Bedecken der Schmelzsicherungen, das in der Anordnung von Schmelzsicherungen in 1 realisiert sein kann;
  • 5 ist ein Ablaufplan, der ein Beispiel eines Fertigungsprozesses für die Anordnung von Schmelzsicherungen in 1 zeigt;
  • 6 ist ein Blockschaltbild einer beispielhaften Anordnung zum Prüfen der Anordnung von Schmelzsicherungen in 1;
  • 7 ist ein Blockschaltbild einer weiteren beispielhaften Anordnung zum Prüfen der Anordnung von Schmelzsicherungen in 1;
  • 8 ist ein Blockschaltbild einer beispielhaften Anordnung zum Programmieren und Betreiben der Anordnung von Schmelzsicherungen in 1;
  • 9 ist ein Beispiel der Zustände des Betriebs der Anordnung in 8;
  • 10 ist eine Zeichnung einer Einheit, welche die Anordnung von Schmelzsicherungen in 1 realisiert; und
  • 11 ist ein Ablaufplan, welcher ein Beispiel des Betriebs der Einheit in 10 im Fall einer Gefährdung der Einheit zeigt.
  • AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
  • In der folgenden Beschreibung wird diese Erfindung anhand bevorzugter Ausführungsformen beschrieben, wobei auf die Figuren Bezug genommen wird, in welchen gleiche Bezugszeichen gleiche oder ähnliche Elemente bezeichnen. Zwar ist diese Erfindung im Sinne der besten Art und Weise zum Erreichen der Zielsetzungen dieser Erfindung beschrieben, der Fachmann wird jedoch erkennen, dass Veränderungen im Hinblick auf diese Erläuterungen vorgenommen werden können, ohne vom Geist oder vom Umfang der Erfindung abzuweichen.
  • Wie in 1 gezeigt, sind die Schmelzsicherungen 100 in Paaren 110, 111, ... 120, 121 angeordnet, wobei jedes Paar ein einziges Bit darstellt. Die Schmelzsicherungen 130 jedes Paars stellen zum Beispiel eine „1” dar, wenn sie durchgebrannt sind, und die Schmelzsicherungen 131 jedes Paars stellen eine „0” dar, wenn sie durchgebrannt sind. Die 2A, 2B, 2C und 2D sind Beispiele von Darstellungen eines Schmelzsicherungs-Paars aus 1. In 2A sind die Schmelzsicherung 140 und die Schmelzsicherung 141 des Paars 142 beide unversehrt und stellen diese zum Beispiel ein leeres Schmelzsicherungs-Paar oder ein Schmelzsicherungs-Paar, das nicht programmiert wurde, dar. In einem weiteren Beispiel stellt das Durchbrennen einer Schmelzsicherung eines Paars ein Datenbit dar; wie das Durchbrennen einer Schmelzsicherung 150 auf der einen Seite des Paars 152, während die Schmelzsicherung 151 unversehrt ist, eine „1” darstellt, wie in 2B gezeigt, wo ein „X” eine durchgebrannte Schmelzsicherung anzeigt. Das Durchbrennen einer Schmelzsicherung 161 auf der anderen Seite des Paars 162, während die Schmelzsicherung 160 unversehrt bleibt, stellt eine „0” dar, wie in 2C gezeigt. In noch einem weiteren Beispiel, wie in 2D gezeigt, stellt es ein auf Null gesetztes Bit dar, wenn beide Schmelzsicherungen 170 und 171 des Paars 172 durchgebrannt sind.
  • Techniken zum Durchbrennen von Schmelzsicherungen sind in der Fachwelt bekannt. Zum Beispiel werden „e-Fuses” durchgebrannt, indem ein Strom, der größer als ein gegebener Schwellenwert ist, durch die Schmelzsicherung geschickt wird. Wie in 3 gezeigt, können Schmelzsicherungen 180 und 181 durch die Gatter 185, 186 zwischen eine Leitung 182 und Masse 183, 184 gelegt werden. Wenn das Gatter 186 angesteuert wird und eine hohe Spannung (wie 3,3 Volt) an die Leitung 182 angelegt ist, genügt der Stromfluss zwischen der Leitung mit der hohen Spannung 182 und Masse 184 durch die Schmelzsicherung 181, um die Schmelzsicherung 181 durchzubrennen, während die Schmelzsicherung 180 aufgrund der Nicht-Ansteuerung des Gatters 185 unversehrt bleibt. Die Schmelzsicherungen können soweit in einen Chip eingebettet sein, dass die einzelnen Schmelzsicherungen, die unversehrt oder durchgebrannt sind, nicht durch Sicht direkt erkennbar sind. In einem anderen Beispiel wird ein Laser 190 in 4A für eine Zeitdauer und mit einer Leistung, welche ausreichen, um die Schmelzsicherung durchzubrennen, auf die Schmelzsicherung 192 auf dem Substrat 193 gerichtet, während der Laser nicht auf die Schmelzsicherung 191 gerichtet wird. Wenn gewünscht wird, die Schmelzsicherungen vor direkten Blicken zu verbergen, wird in 4B ein Überzug 195 aufgebracht 194, um die Schmelzsicherungen zu bedecken.
  • Schmelzsicherungen werden für Anwendungen verwendet, welche Daten codieren, die unverändert fortbestehen sollen und die unbegrenzt aufbewahrt werden sollen, ohne eine Pufferbatterie zu erfordern. Ein Beispiel solcher Daten umfasst die Seriennummer einer Einheit und Daten über die Einheit. Nachdem die Daten codiert wurden, können die Daten üblicherweise nicht verändert werden. Ein weiteres Beispiel umfasst einen permanenten Verschlüsselungsschlüssel wie einen solchen, der zum Verschlüsseln und Entschlüsseln von Daten über eine Einheit, in welches die Schmelzsicherungen eingebettet sind, wie Einheiten-Metadaten, verwendet werden kann. Eine Verschlüsselungsmaschine hat dann den ausschließlichen Zugang zu dem Verschlüsselungsschlüssel zum Verschlüsseln oder Entschlüsseln der Daten. Die vorliegende Erfindung ermöglicht eine ständige Sichtbarkeit des Zustands des Schlüssels, ohne einen tatsächlichen Zugriff auf die codierten Werte zu gestatten.
  • Wie in den 5, 6 und 7 gezeigt, wird der die Schmelzsicherungs-Paare verkörpernde Chip in Schritt 200 unter Verwendung bekannter Techniken hergestellt. In Schritt 201 werden die Schmelzsicherungs-Paare nach der Herstellung des Chips auf durchgebrannte Schmelzsicherungen geprüft.
  • In einer Ausführungsform soll mittels der durchgeführten Prüfung 201 festgestellt werden, ob irgendeine Schmelzsicherung durchgebrannt ist, so dass, wenn die Schmelzsicherungen die Prüfung bestehen, alle Schmelzsicherungs-Paare leere, unprogrammierte Bits umfassen, wo beide Schmelzsicherungen unversehrt sind, und die Prüfung schlägt andernfalls fehl, wenn irgendein Paar nicht leer ist. In einem Beispiel wird eine ODER-Schaltung 205 aus 6 auf jede Schmelzsicherung angewendet, um alle Schmelzsicherungen zu erkennen und festzustellen, ob irgendeine Schmelzsicherung durchgebrannt ist.
  • In einer weiteren Ausführungsform soll mittels der durchgeführten Prüfung 201 festgestellt werden, ob irgendein Schmelzsicherungs-Paar auf Null gesetzt ist, was zum Beispiel den Satz von Schmelzsicherungen unbrauchbar machen könnte. Ein auf Null gesetztes Schmelzsicherungs-Paar bedeutet, dass beide Schmelzsicherungen durchgebrannt sind und dass es unmöglich ist, ein Bit bereitzustellen, wo nur eine Schmelzsicherung durchgebrannt wird, um das Bit zu bilden. In einem Beispiel werden UND-Schaltungen 207 aus 7 mit jeder Schmelzsicherung jedes Schmelzsicherungs-Paars verbunden, und eine ODER-Schaltung 208 verknüpft die Ergebnisse, um anzuzeigen, ob irgendein Schmelzsicherungs-Paar auf Null gesetzt ist, was bedeutet, dass beide Schmelzsicherungen des Paars durchgebrannt sind. Bei dieser Prüfung können eine oder mehrere Schmelzsicherungen durchgebrannt sein, aber es sind keine zwei Schmelzsicherungen desselben Paars durchgebrannt. In einer Ausführungsform gestattet die vorliegende Erfindung die Möglichkeit, trotz Vorliegen mindestens einer durchgebrannten Schmelzsicherung eine Programmierung vorzunehmen.
  • Ganz gleich, welche Prüfung 201 angewendet wird, ein defekter Chip wird ausgesondert. Da alles andere gleich ist, z. B. zufriedenstellende Ausbeuten, wird die Prüfung aus 6 bevorzugt, bei welcher ein Chip defekt ist und ausgesondert wird, wenn irgendeine Schmelzsicherung durchgebrannt ist.
  • Chips, welche die Prüfung des Schritts 201 bestehen, werden dann zum Programmieren der Schmelzsicherungs-Paare verfügbar gemacht. Wenn die Schmelzsicherungen für eine Sicherheit erfordernde Situation programmiert werden sollen, wird der unprogrammierte Chip durch den Kunden oder die mit der Programmierung des Chips beauftragte Organisation in eine sichere Umgebung verbracht.
  • Ein Beispiel einer Anordnung von „e-Fuses” und die Schaltung zum Programmieren und Lesen der „e-Fuses” sind in 8 dargestellt.
  • Die Schmelzsicherungen eines Chips 197 sind auf die in 1 dargestellte Weise angeordnet, wo die Schmelzsicherungen in Paaren 210, ... 221 angeordnet sind, wobei jedes Paar ein einziges Bit darstellt. Die Schmelzsicherungen 230 jedes Paars stellen zum Beispiel eine „1” dar, wenn sie durchgebrannt sind, und die Schmelzsicherungen 231 jedes Paars stellen eine „0” dar, wenn sie durchgebrannt sind.
  • Im Beispiel in 8 gibt es 128 Schmelzsicherungs-Paare, welche insgesamt 256 Schmelzsicherungen umfassen.
  • Ein Komparator 240 umfasst die Schaltung zum Ermitteln des Zustands jedes Schmelzsicherungs-Paars. Wie oben in Bezug auf 2A erörtert, sind die Schmelzsicherung 140 und die Schmelzsicherung 141 des Paars 142 beide unversehrt und stellen diese zum Beispiel ein leeres Schmelzsicherungs-Paar oder ein Schmelzsicherungs-Paar, das nicht programmiert wurde, dar. Das Durchbrennen einer Schmelzsicherung eines Paars stellt ein Datenbit dar; wie das Durchbrennen einer Schmelzsicherung 150 auf der einen Seite des Paars 152, während die Schmelzsicherung 151 unversehrt ist, eine „1” darstellt, wie in 2B gezeigt, wo ein „X” eine durchgebrannte Schmelzsicherung anzeigt. Das Durchbrennen einer Schmelzsicherung 161 auf der anderen Seite des Paars 162, während die Schmelzsicherung 160 unversehrt bleibt, stellt eine „0” dar, wie in 2C gezeigt. Wo eine Schmelzsicherung des Paars durchgebrannt ist, wird entweder ein „1”-Bit oder ein „0”-Bit als ein „gültiger Wert” für ein Schmelzsicherungs-Paar angesehen. Wie in 2D gezeigt, umfasst ein auf Null gesetztes Bit den Zustand, wenn beide Schmelzsicherungen 170 und 171 des Paars 172 durchgebrannt sind.
  • Das Anordnen der Schmelzsicherungen in Paaren gestattet dem Komparator 240, gültige oder ungültige Bits zu erkennen und zu melden, ohne den Wert irgendeines Bits zu identifizieren.
  • Eine Steuereinheit 250 in 8 kann einen Teil desselben Chips 197 wie die Schmelzsicherungen 230, 231 und den Komparator 240 umfassen, oder sie kann einen separaten Chip umfassen, und sie wird verwendet, um die Schmelzsicherungen zu programmieren. Schmelzsicherungs-Quellen 252 und 253 liefern den Strom, welcher unter der Kontrolle der Steuereinheit 250 freigegeben wird, um die Schmelzsicherungen bei der Programmierung durchzubrennen. Der Komparator 240 liefert der Steuereinheit Informationen über Leitungen 255, 256 und 257, um den Zustand jedes Schmelzsicherungs-Paars zu verfolgen. Jede der Leitungen 255, 256 und 257 umfasst zum Beispiel einen Satz von 128 Leitungen, um den Zustand jedes Schmelzsicherungs-Paars anzuzeigen. Nach erfolgter Programmierung stellt der Komparator 240 den Dateninhalt der Schmelzsicherungen über einen Inverter 260 an die nutzende Einheit 265 bereit. Die in die Schmelzsicherungen codierten Daten können beispielsweise einen geheimen Verschlüsselungsschlüssel umfassen. Wenn die in die Schmelzsicherungen codierten Daten geheim gehalten werden müssen, ist kein Zugriff von außen auf die einzelnen Schmelzsicherungen 230, 231, den Komparator 240, den Inverter 260 oder die Leitungen, welche diese Elemente untereinander verbinden, oder auf die nutzende Einheit 265 zulässig. Ein direkter Zugriff auf die einzelnen Schmelzsicherungen steht nicht zur Verfügung. Durch Begrenzung der Ausgabeinformationen auf die Leitungen 255, 256 und 257 wird die Identifizierung des Werts irgendeines Bits verhindert. Zusätzlich wird ein Zugriff durch Sicht, Strahlung usw. auf die Schmelzsicherungen selbst verhindert, zum Beispiel durch Überzüge auf den Schmelzsicherungen, um eine Ermittlung des Zustands der Schmelzsicherungen von außen zu verhindern. Jeder derartige Zugriff von außen bedeutet eine Gefährdung der durch die Schmelzsicherungen gespeicherten geheimen Daten.
  • 9 zeigt die Zustände einer Zustandsmaschine der zum Programmieren der Schmelzsicherungen 230, 231 verwendeten Steuereinheit 250 in 8. Wenn die Daten wie oben erörtert sicher sein müssen, muss die Fertigungsstätte, in welcher die Programmierung erfolgt, sicher sein. Die Steuereinheit 250 kann verschiedene Schnittstellen innerhalb der sicheren Umgebung aufweisen, wie eine Mikroprozessor-Schnittstelle 270, einen Takteingang 272, einen Eingang 274 zum Rücksetzen der Steuereinheit vor dem Programmieren eines Satzes von Schmelzsicherungen, einen Ausgang 276 zum Anzeigen eines Fehlers und einen Anschluss 278 zum Bereitstellen von Informationen, die zum Testen der Steuereinheit nützlich sein können.
  • Wie in den 8 und 9 gezeigt, wird die Steuereinheit im Zustand 300, wie POR (Power on reset (Einschaltrücksetzung)), rückgesetzt und werden die zu programmierenden Daten 310 an die Steuereinheit 250 geliefert. Vor dem Programmieren der Schmelzsicherungen im Zustand 320 fragt die Steuereinheit den Komparator 240 entsprechend einer der oben erörterten Prüfungen ab, um festzustellen, ob irgendeine Schmelzsicherung nach der Herstellung oder vor dem Programmieren durchgebrannt wurde.
  • In einer Ausführungsform soll die angewendete Prüfung 320 erkennen, ob irgendeine Schmelzsicherung durchgebrannt ist, so dass, wenn die Schmelzsicherungen die Prüfung bestehen, alle Schmelzsicherungs-Paare leere, unprogrammierte Bits umfassen, wo beide Schmelzsicherungen unversehrt sind, und andernfalls schlägt die Prüfung fehl, wenn irgendein Paar nicht leer ist. Dies umfasst das Abfragen der Leitungen 255 für alle Schmelzsicherungs-Paare, um festzustellen, ob sie alle leere, unprogrammierte Bits sind, und andernfalls, ob irgendein Paar nicht leer ist, was bedeutet, dass die Prüfung erkennen soll, ob irgendeine Schmelzsicherung durchgebrannt ist.
  • In einer weiteren Ausführungsform soll die angewendete Prüfung 320 feststellen, ob irgendein Schmelzsicherungs-Paar auf Null gesetzt ist, was den Satz von Schmelzsicherungen unbrauchbar macht. Ein auf Null gesetztes Schmelzsicherungs-Paar bedeutet, dass beide Schmelzsicherungen durchgebrannt sind und dass es unmöglich ist, ein Bit bereitzustellen, bei welchem nur eine Schmelzsicherung durchgebrannt ist, um das Bit zu bilden. Diese Prüfung beinhaltet das Abfragen der Leitungen 257, um festzustellen, ob irgendein Schmelzsicherungs-Paar auf Null gesetzt ist, was bedeutet, dass beide Schmelzsicherungen des Paars durchgebrannt sind.
  • In einer Ausführungsform wird die Schmelzsicherung durch die Steuereinheit 250 abgetastet, indem diese eine Funktionssteuerungsleitung 340 für die gewünschte Schmelzsicherung oder die gewünschten Schmelzsicherungen aktiviert, um einen Signalspeicher (latch) an jeder Schmelzsicherung mit ihrem Wert zu setzen, und die Komparatorlogik stellt die resultierenden Signale auf den Leitungen 255, 256 und 257 bereit. Die Abtastleitungen können einen Abtaststrom zur Schmelzsicherung freigeben und einen Signalspeicher betätigen, um die Daten an die Logik des Komparators 240 weiterzuleiten.
  • Unter der Prüfung des Zustands 320, wie in den 5 und 6 oder 7 gezeigt, bestehen die Schmelzsicherungen die Prüfung, wenn eine oder mehrere Schmelzsicherungen durchgebrannt sein können, aber keine zwei Schmelzsicherungen desselben Paars durchgebrannt sind.
  • Ganz gleich, welche Prüfung 320 angewendet wird, ein defekter Chip, der sich noch nicht in einer Einheit befindet, wird ausgesondert. Da alles andere gleich ist, da die vorliegende Erfindung in einer Ausführungsform die Möglichkeit zulässt, trotz Vorliegen mindestens einer durchgebrannten Schmelzsicherung eine Programmierung vorzunehmen, wird auf dieser Stufe die Prüfung der Leitungen 257 bevorzugt, bei welcher ein Chip nur dann ausfällt und ausgesondert wird, wenn beide Schmelzsicherungen eines Paars durchgebrannt sind.
  • Nach Abschluss der Prüfung 320 geht die Steuereinheit in einen Funktionszustand 330 über. Wenn die Schmelzsicherungen die Prüfung 320 nicht bestanden haben, können die Schmelzsicherungen zerstört werden, indem im Zustand 335 alle Schmelzsicherungen durchgebrannt werden, um den Chip auf Null zu setzen. Wenn die Schmelzsicherungen die Prüfung 320 bestanden haben, werden die Schmelzsicherungen beginnend beim Zustand 337 programmiert.
  • Die Schmelzsicherungen werden durch die Steuereinheit 250 durchgebrannt, welche die Leitungen 325, 326 einzeln ansteuert (die Leitungen 325, 326 stellen jeweils einen Satz einzelner Leitungen zu jeder Schmelzsicherung dar), um ein zugehöriges Gatter (185, 186 in 3) zu veranlassen, den Strom aus der zugehörigen Schmelzsicherungs-Quelle 252, 253 (182 in 3) durch die Schmelzsicherung zur Masse freizugeben und die Schmelzsicherung durchzubrennen. In einer Ausführungsform umfassen die Schmelzsicherungs-Quellen die geeignete Spannung, und sie liefern den geeigneten Strom, um eine Schmelzsicherung nach der anderen durchzubrennen.
  • Im Zustand 335 werden die Schmelzsicherungen zum Beispiel der Reihe nach durchgebrannt, beginnend mit dem Durchbrennen der Schmelzsicherungen 350 und 351 des Paars 210 und der Reihe nach fortfahrend mit den Schmelzsicherungen 360 und 361 des Paars 221. Wenn dies erledigt ist, werden die Schmelzsicherungen im Zustand 380 zum Beispiel durch die Abtastleitungen 257 abgetastet, um sicherzustellen, dass nun jedes Schmelzsicherungs-Paar auf Null gesetzt ist.
  • Wenn die Schmelzsicherungen die Prüfung 320 bestanden haben, werden die Schmelzsicherungen in einer Ausführungsform paarweise, beginnend beim Zustand 337, programmiert. Zum Beispiel werden die Abtastleitungen 340 für das Paar angesteuert und wird die Leitung „Gültiger Wert” 256 für das Paar abgefragt. In einer Ausführungsform erfolgt die Programmierung auf eine fehlertolerante Weise, unter der Voraussetzung, dass eine Wahrscheinlichkeit von 50 Prozent besteht, dass das Bit richtig ist, wenn eine Schmelzsicherung eines Paars vor dem Programmieren des Paars durchgebrannt wurde. Also wird das Paar bei der Programmierung übersprungen, und anschließend wird eine Überprüfungsprozedur durchgeführt, um festzustellen, ob das Bit zufällig richtig war. Wenn mehr als ein Paar eine durchgebrannte Schmelzsicherung aufweist, verringert sich die Wahrscheinlichkeit, dass die richtige Kombination von Schmelzsicherungen durchgebrannt ist, entsprechend; zum Beispiel besteht bei zwei durchgebrannten Schmelzsicherungen in zwei Paaren eine Wahrscheinlichkeit von 25 Prozent, dass die Kombination dieser Schmelzsicherungen richtig ist. Wenn der Zustand 337 zum Beispiel nach dem Abfragen der Leitung 255 für das Paar anzeigt, dass eine Schmelzsicherung dieses Paars durchgebrannt ist, wird das Programmieren dieses Paars also übersprungen und kehrt die Steuereinheit in den Zustand 330 zurück, um das nächste Paar zu abzufragen. Die Steuereinheit 250 stellt Speicherplatz bereit, um die Kennzeichnung des Bits, das übersprungen wurde, zu speichern.
  • In einer Ausführungsform werden die Instanzen des Zustands 337 der Reihe nach ausgeführt, beginnend beim Paar 210 mit dem Abfragen der Schmelzsicherungen 350 und 351 des Paars 210 und der Reihe nach fortfahrend mit den Schmelzsicherungen 360 und 361 des Paars 221.
  • Wenn die Steuereinheit die Abtastleitungen 340 für das gewünschte Schmelzsicherungs-Paar ansteuert und im Zustand 337 die Leitung 255 für das Paar abfragt und feststellt, dass das Paar unprogrammiert ist, wird im Zustand 370 eine der Schmelzsicherungen entsprechend den Programmdaten für dieses Bit durchgebrannt. Der Zustand 372 ermittelt, ob alle Daten programmiert wurden, und wenn nicht, kehrt die Steuereinheit 250 in den Zustand 337 zurück, um das nächste Schmelzsicherungs-Paar in der Abfolge abzufragen. Wenn dieses ebenfalls unprogrammiert ist, hört die Steuereinheit auf und kehrt sie in den Zustand 337 zurück, um den Wert zu prüfen, und programmiert dann im Zustand 370 durch Durchbrennen einer der Schmelzsicherungen das durch das Paar dargestellte Bit.
  • In einer Ausführungsform kann der Zustand 337 außerdem nach dem Programmieren jedes Schmelzsicherungs-Paars das Prüfen der Gültigkeit des jeweiligen Paars umfassen, zum Beispiel durch Ansteuern der Abtastleitungen 340 für das Paar und Abfragen der Leitung „Gültiger Wert” 256 für dieses Schmelzsicherungs-Paar.
  • Wenn der Zustand 372 anzeigt, dass alle Daten programmiert wurden, z. B. durch das Erreichen des Bits 221 und Durchbrennen entweder der Schmelzsicherung 360 oder der Schmelzsicherung 361, werden die Schmelzsicherungen im Zustand 380 durch die Steuereinheit 250 abgetastet. In einer Ausführungsform steuert der Zustand 380 die Abtastleitungen an und ermittelt der Zustand 330, ob jedes Schmelzsicherungs-Paar auf ein „1”-Bit oder ein „0”-Bit programmiert wurde, und andernfalls über die Abtastleitungen 256, dass mindestens ein Bitpaar ungültig ist. Der Komparator kann auf die Ansteuerung der Abtastleitungen 340 reagieren, indem er eine „Exklusiv-ODER-” Verknüpfung beider Bits jedes Schmelzsicherungs-Paars durchführt, um festzustellen, ob das Schmelzsicherungs-Paar gültig programmiert wurde und eine und nur eine Schmelzsicherung des Paars durchgebrannt wurde. Der Dateninhalt wird auf keinerlei Weise überprüft, nur die Gültigkeit des Paars wird auf dieses Weise überprüft. Also ist die Sicherheit dadurch gewahrt, dass es keinen Weg gibt, den Dateninhalt am Komparator, welcher zur Verwendung in der Steuereinheit 250 zur Verfügung steht, abzutasten, und der Dateninhalt auch nicht über die Mikroprozessor-Schnittstelle 270 oder den Hardware-Testanschluss 278 gelesen werden kann.
  • Im Fall, dass eine der Schmelzsicherungen vor dem Programmieren durchgebrannt wurde und dieses Bit deshalb im Zustand 337 übersprungen wurde, muss eine weitere Abfrage im Zustand 380 die Gültigkeit der Programmierung prüfen, indem sie einen Versuch durchführt; und bei Fehlschlagen des Versuchs anzeigt, dass das identifizierte Bitpaar ein invertiertes Bit enthält. Ein fehlgeschlagener Versuch bedeutet, dass die durchgebrannte Schmelzsicherung falsch ist. Es kann möglich sein, die Daten 310 so abzuändern, dass sie zu dem invertierten Bit passen, und der Versuch wird von neuem durchgeführt, bis das entsprechende Bit umgekehrt wurde und die Daten richtig sind.
  • Wenn der letzte durchgeführte Versuch keine richtigen Daten ergibt oder wenn die Daten 310 nicht geändert werden oder eine Änderungsgrenze erreicht wurde, kann die Steuereinheit in den Zustand 335 gehen, um alle Schmelzsicherungen durchzubrennen und den Chip auf Null zu setzen. Nachdem alle Schmelzsicherungen durchgebrannt wurden, sind keine Daten verfügbar, die aus einer Analyse des Chips ermittelt werden könnten.
  • Alternativ kann es in der Produktumgebung möglich sein, die Schaltung 260 als eine UND-Schaltung zu betreiben und alle Bits auf Null zu zwingen.
  • Wenn es sich bei den programmierten Daten um einen Verschlüsselungsschlüssel handelt, umfasst der Versuch das Verwenden des Schlüssels zum Entschlüsseln bekannter verschlüsselter Daten und zum Herausfinden, ob die Entschlüsselung erfolgreich war. Wenn die Daten geheim sind, muss die Prüfung innerhalb der sicheren Umgebung durchgeführt werden.
  • Nachdem der Chip gültig programmiert und in eine Einheit eingesetzt wurde, geht der Chip zum Beispiel bei einer Einschaltrücksetzung (POR, Power on reset) in den Rücksetzzustand 300. Die Abtastleitungen 340 werden in Schritt 320 aktiviert, und der Chip geht in den Funktionszustand 330, wo die Werte dem Benutzer 265 zur Verfügung stehen, und bleibt im Funktionszustand in Bereitschaft Der Chip bleibt bis zu einem Abschalten im Funktionszustand und wird bei einer nachfolgenden Einschaltrücksetzung rückgesetzt.
  • Die aus der in den 8 und 9 dargestellten Funktionsweise resultierende Sicherheit erfüllt oder übertrifft die Anforderungen der anwendbaren Sicherheitsstandards.
  • Wenn sich der Chip in einer Einheit befindet, wenn er auf Null gesetzt wird, kann er nicht ausgesondert werden. Wenn der Chip zum Beispiel einen Verschlüsselungsschlüssel enthalten soll, kann er nicht zur Verschlüsselung verwendet werden, aber die Einheit kann noch für alle anderen Funktionen verwendet werden.
  • Wie in den 10 und 11 gezeigt, ist der Chip 197 in einer Einheit 400 bereitgestellt. Die Einheit 400 umfasst ein Funktionssystem 401, ein Gefährdungserkennungssystem 402, das so konfiguriert ist, dass es erkennt, ob das Funktionssystem gefährdet ist, und ein System codierter Schmelzsicherungen 197, das eine Vielzahl von paarweise angeordneten Schmelzsicherungen umfasst, die so codiert sind, dass jedes Schmelzsicherungs-Paar ein Datenbit darstellt, wenn eine Schmelzsicherung des Paars durchgebrannt ist. Beispielweise ist ein System zum Durchbrennen von Schmelzsicherungen des Chips 197 so konfiguriert, dass es auf die durch das Gefährdungserkennungssystem 402 gemachte Feststellung, dass das Funktionssystem gefährdet ist, mit dem Durchbrennen aller unversehrten Schmelzsicherungen der Paare reagiert, so dass beide Schmelzsicherungen jedes Paars durchgebrannt sind, um ein auf Null gesetztes Paar darzustellen, wodurch die Vielzahl von Schmelzsicherungen „auf Null gesetzt” wird, was zum Beispiel den Satz von Schmelzsicherungen unbrauchbar und folglich den Dateninhalt, der vor dem Durchbrennen vorhanden war, unbekannt machen könnte.
  • Wenn das Gefährdungserkennungssystem 402 im Zustand 410 erkennt, dass die Einheit gefährdet ist, steuert die Steuereinheit 250, wenn sie ein Teil des Chips 197 ist, im Zustand 415 die Schmelzsicherungsleitungen 325, 326 einzeln an (die Leitungen 325, 326 stellen jeweils einen Satz einzelner Leitungen zu jeder Schmelzsicherung dar), um ein zugehöriges Gatter (185, 186 in 3) zu veranlassen, den Strom aus der zugehörigen Schmelzsicherungs-Quelle 252, 253 (182 in 3) durch die Schmelzsicherung zur Masse freizugeben und die Schmelzsicherung durchzubrennen, wofür zusätzlich 8 heranzuziehen ist.
  • Im Zustand 415 werden die Schmelzsicherungen zum Beispiel der Reihe nach durchgebrannt, beginnend mit dem Durchbrennen der Schmelzsicherungen 350 und 351 des Paars 210 und der Reihe nach fortfahrend mit den Schmelzsicherungen 360 und 361 des Paars 221. Wenn dies erledigt ist, werden die Schmelzsicherungen im Zustand 420 zum Beispiel durch die Abtastleitungen 257 abgetastet, um sicherzustellen, dass nun jedes Schmelzsicherungs-Paar auf Null gesetzt ist, und wenn dies nicht erledigt ist, wird das Auf-Null-Setzen fortgesetzt, und wenn dies im Zustand 425 erledigt ist, ist der Satz von Schmelzsicherungen unbrauchbar gemacht und ist folglich der Dateninhalt, der vor dem Durchbrennen vorhanden war, unbekannt.
  • Alternative Anordnungen der Steuereinheit 250, des Chips 197 und alternative Anordnungen der Zustände in den 9 und 11 können verwendet werden.
  • Die Umsetzungen können mit Software, Firmware, Mikrocode, Hardware und/oder jeder Kombination davon erfolgen. Die Umsetzung kann die Form von in einem Medium, z. B. einem Speicher der Steuereinheit 250, realisiertem Code oder realisierter Logik annehmen, wobei das Medium Hardware-Logik (z. B. ein Chip einer integrierten Schaltung, eine programmierbare Gatteranordnung (PGA (Programmable Gate Array)), eine anwendungsspezifische integrierte Schaltung (ASIC (Application Specific Integrated Circuit)) oder eine andere Schaltung, Logik oder Einheit) oder ein computerlesbares Speichermedium wie ein magnetisches Speichermedium (z. B. ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleiter-System, Halbleiter- oder Festkörperspeicher, Magnetband, eine entnehmbare Computerdiskette und einen Direktzugriffsspeicher (RAM (Random Access Memory)), einen Festwertspeicher (ROM (Read-Only Memory)), eine magnetische Festplatte und eine optische Platte, Compact-Disk-Festwertspeicher (CD-ROM), Schreib/Lese-Compact-Disk (CD-R/W (Compact Disk-Read/Write)) und DVD) umfassen kann.

Claims (21)

  1. Schmelzsicherungs-Codiersystem, aufweisend: eine Vielzahl von paarweise angeordneten Schmelzsicherungen, die so konfiguriert sind, dass jedes Schmelzsicherungs-Paar ein Datenbit darstellt, wenn eine Schmelzsicherung des Paars durchgebrannt ist; ein unprogrammiertes Bit darstellt, wenn keine Schmelzsicherung des Paars durchgebrannt ist; und ein auf Null gesetztes Bit darstellt, wenn beide Schmelzsicherungen des Paars durchgebrannt sind, und ein Erkennungssystem, welches so konfiguriert ist, dass erkennt wird, ob irgendein Schmelzsicherungs-Paar auf Null gesetzt ist.
  2. Schmelzsicherungs-Programmiersystem, aufweisend: eine Vielzahl von paarweise angeordneten Schmelzsicherungen; ein System zum Durchbrennen von Schmelzsicherungen, das dafür konfiguriert ist, die Schmelzsicherungen der Paare so zu programmieren, dass jedes Paar ein Bit darstellt, was ein Durchbrennen einer ersten Schmelzsicherung eines Paars, um ein „1”-Bit darzustellen, ein Durchbrennen einer zweiten Schmelzsicherung eines Paars, um ein „0”-Bit darzustellen, und ein Durchbrennen beider Schmelzsicherungen eines Paars, um ein auf Null gesetztes Paar darzustellen, aufweist, wobei, wenn keine Schmelzsicherung eines Paars durchgebrannt ist, dieses ein leeres, unprogrammiertes Bit darstellt, und ein Erkennungssystem, welches so konfiguriert ist, dass es vor dem Programmieren irgendeines Paars erkennt, ob irgendein Schmelzsicherungs-Paar auf Null gesetzt ist.
  3. Schmelzsicherungs-Programmiersystem nach Anspruch 2, das außerdem ein Prüfsystem aufweist, das so konfiguriert ist, dass es vor dem Programmieren eines Schmelzsicherungs-Paars beide Bits des Schmelzsicherungs-Paars darauf prüft, ob eine Schmelzsicherung des Paars durchgebrannt ist.
  4. Schmelzsicherungs-Programmiersystem nach Anspruch 3, das außerdem einen Speicher aufweist, um jedes vom Prüfsystem gefundene Bitpaar, bei dem eine Schmelzsicherung des Paars durchgebrannt ist, zu kennzeichnen; und wobei das System zum Durchbrennen von Schmelzsicherungen so konfiguriert ist, dass es jede Schmelzsicherung des gefundenen Schmelzsicherungs-Paars überspringt und nicht durchbrennt.
  5. Schmelzsicherungs-Programmiersystem nach Anspruch 4, das außerdem ein Versuchs-Prüfsystem aufweist, um die Gültigkeit der Programmierung durch Ausführen eines Versuchs zu prüfen; und wenn der Versuch fehlschlägt anzuzeigen, dass das gekennzeichnete Bitpaar ein invertiertes Bit aufweist.
  6. Schmelzsicherungs-Programmiersystem nach Anspruch 2, das außerdem ein Erkennungssystem aufweist, das so konfiguriert ist, dass es vor dem Programmieren irgendeines Paars erkennt, ob alle Schmelzsicherungs-Paare leere, unprogrammierte Bits enthalten, und andernfalls, ob irgendein Paar nicht leer ist.
  7. Schmelzsicherungs-Programmiersystem nach Anspruch 2, das außerdem ein Prüfsystem aufweist, das so konfiguriert ist, dass es nach dem Programmieren jedes Schmelzsicherungs-Paars die Gültigkeit des jeweiligen Paars prüft.
  8. Schmelzsicherungs-Programmiersystem nach Anspruch 2, das außerdem ein Prüfsystem aufweist, welches so konfiguriert ist, dass es beide Bits jedes Schmelzsicherungs-Paars prüft und feststellt, ob jedes Schmelzsicherungs-Paar auf ein „1”-Bit oder ein „0”-Bit programmiert wurde, und andernfalls, dass mindestens ein Bitpaar ungültig ist.
  9. Schmelzsicherungs-Programmiersystem nach Anspruch 8, wobei das System zum Durchbrennen von Schmelzsicherungen außerdem so konfiguriert ist, dass es, wenn mindestens ein ungültiges Bitpaar ermittelt wird, alle unversehrten Schmelzsicherungen der Paare durchbrennt, wodurch die Vielzahl von Schmelzsicherungen „auf Null gesetzt” wird.
  10. Schmelzsicherungs-Programmiersystem nach Anspruch 9, das außerdem ein Erkennungssystem aufweist, das so konfiguriert ist, dass es nach dem Durchbrennen der unversehrten Schmelzsicherungen der Paare erkennt, ob alle Schmelzsicherungs-Paare auf Null gesetzt sind.
  11. Eine Vorrichtung, aufweisend ein Funktionssystem, ein Gefährdungserkennungssystem, das so konfiguriert ist, dass es erkennt, ob das Funktionssystem gefährdet ist, ein System codierter Schmelzsicherungen, das eine Vielzahl von paarweise angeordneten Schmelzsicherungen aufweist, die so codiert sind, dass jedes Schmelzsicherungs-Paar ein Datenbit darstellt, wenn eine Schmelzsicherung des Paars durchgebrannt ist, und ein System zum Durchbrennen von Schmelzsicherungen, das so konfiguriert ist, dass es auf die durch das Gefährdungserkennungssystem gemachte Feststellung, dass das Funktionssystem gefährdet ist, mit dem Durchbrennen aller unversehrten Schmelzsicherungen der Paare reagiert, so dass beide Schmelzsicherungen jedes Paars durchgebrannt sind, um ein auf Null gesetztes Paar darzustellen, wodurch die Vielzahl von Schmelzsicherungen „auf Null gesetzt” wird.
  12. Verfahren zum Codieren einer Vielzahl von paarweise angeordneten Schmelzsicherungen, aufweisend: Programmieren der Schmelzsicherungs-Paare: Durchbrennen einer ersten Schmelzsicherung eines Paars, um ein „1”-Bit darzustellen; Durchbrennen einer zweiten Schmelzsicherung eines Paars, um ein „0”-Bit darzustellen; und Durchbrennen beider Schmelzsicherungen eines Paars, um ein auf Null gesetztes Paar darzustellen, wobei, wenn keine Schmelzsicherung eines Paars durchgebrannt ist, dieses ein leeres, unprogrammiertes Bit darstellt.
  13. Verfahren nach Anspruch 12, welches vor dem Programmieren irgendeines Paars außerdem ein Erkennen aufweist, ob irgendein Paar von Schmelzsicherungen auf Null gesetzt ist.
  14. Verfahren nach Anspruch 12, welches vor dem Programmieren des Schmelzsicherungs-Paars außerdem ein Prüfen beider Bits des Schmelzsicherungs-Paars darauf aufweist, ob eine Schmelzsicherung des Paars durchgebrannt ist.
  15. Verfahren nach Anspruch 14, welches außerdem ein Speichern der Identität jedes durch das Prüfen gefundenen Bitpaares aufweist, bei dem eine Schmelzsicherung des Paars durchgebrannt ist; und wobei der Schritt der Programmierung des Durchbrennens der Schmelzsicherungen außerdem ein Überspringen und Nicht-Durchbrennen jeder Schmelzsicherung des gefundenen Schmelzsicherungs-Paars aufweist.
  16. Verfahren nach Anspruch 15, welches außerdem ein versuchsweises Prüfen der Gültigkeit der Programmierung durch Ausführen eines Versuchs aufweist; und wenn der Versuch fehlschlägt, Anzeigen, dass das gekennzeichnete Bitpaar ein invertiertes Bit aufweist.
  17. Verfahren nach Anspruch 12, welches vor dem Programmieren irgendeines Paars außerdem ein Feststellen der Leere aufweist, ob alle Schmelzsicherungs-Paare leere, unprogrammierte Bits umfassen, und andernfalls, ob irgendein Paar nicht leer ist.
  18. Verfahren nach Anspruch 12, welches nach dem Programmieren jedes Schmelzsicherungs-Paars außerdem eine Paarprüfung der Gültigkeit des jeweiligen Paars aufweist.
  19. Verfahren nach Anspruch 12, welches außerdem ein Prüfen aller Paare durch Prüfen beider Bits jedes Schmelzsicherungs-Paars; und ein Feststellen, ob jedes Schmelzsicherungs-Paar auf ein „1”-Bit oder ein „0”-Bit programmiert wurde, und andernfalls, dass mindestens ein Bitpaar ungültig ist, aufweist.
  20. Verfahren nach Anspruch 19, welches, wenn im Ermittlungsschritt festgestellt wird, dass mindestens ein Bitpaar ungültig ist, außerdem ein Durchbrennen aller unversehrten Schmelzsicherungen der Paare aufweist, wodurch die Vielzahl von Schmelzsicherungen „auf Null gesetzt” wird.
  21. Verfahren nach Anspruch 20, welches nach dem Durchbrennen der unversehrten Schmelzsicherungen der Paare außerdem ein Erkennen aufweist, ob alle Schmelzsicherungs-Paare auf Null gesetzt sind.
DE112010005172.0T 2010-01-21 2010-12-17 Gepaarte programmierbare Schmelzsicherungen Active DE112010005172B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/691,501 2010-01-21
US12/691,501 US8194489B2 (en) 2010-01-21 2010-01-21 Paired programmable fuses
PCT/EP2010/070098 WO2011088938A1 (en) 2010-01-21 2010-12-17 Paired programmable fuses

Publications (2)

Publication Number Publication Date
DE112010005172T5 DE112010005172T5 (de) 2012-10-31
DE112010005172B4 true DE112010005172B4 (de) 2015-09-03

Family

ID=43558270

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112010005172.0T Active DE112010005172B4 (de) 2010-01-21 2010-12-17 Gepaarte programmierbare Schmelzsicherungen

Country Status (5)

Country Link
US (1) US8194489B2 (de)
CN (1) CN102714060A (de)
DE (1) DE112010005172B4 (de)
GB (1) GB2489570B (de)
WO (1) WO2011088938A1 (de)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9257162B2 (en) * 2012-06-18 2016-02-09 Intel Corporation Alternate control settings
US8879345B1 (en) 2013-08-21 2014-11-04 Via Technologies, Inc. Microprocessor mechanism for decompression of fuse correction data
US9223715B2 (en) 2013-08-21 2015-12-29 Via Alliance Semiconductor Co., Ltd. Microprocessor mechanism for decompression of cache correction data
US8982655B1 (en) 2013-08-21 2015-03-17 Via Technologies, Inc. Apparatus and method for compression and decompression of microprocessor configuration data
US9348690B2 (en) 2013-08-21 2016-05-24 Via Alliance Semiconductor Co., Ltd. Correctable configuration data compression and decompression system
US9659191B2 (en) * 2014-04-09 2017-05-23 Seagate Technology Llc Encryption key storage and modification in a data storage device
US9606933B2 (en) 2014-05-22 2017-03-28 Via Alliance Semiconductor Co., Ltd. Multi-core apparatus and method for restoring data arrays following a power gating event
US9665490B2 (en) 2014-05-22 2017-05-30 Via Alliance Semiconductor Co., Ltd. Apparatus and method for repairing cache arrays in a multi-core microprocessor
US9524241B2 (en) 2014-05-22 2016-12-20 Via Alliance Semiconductor Co., Ltd. Multi-core microprocessor power gating cache restoral mechanism
US9395802B2 (en) 2014-05-22 2016-07-19 Via Alliance Semiconductor Co., Ltd. Multi-core data array power gating restoral mechanism
US10643006B2 (en) * 2017-06-14 2020-05-05 International Business Machines Corporation Semiconductor chip including integrated security circuit
US11164610B1 (en) 2020-06-05 2021-11-02 Qualcomm Incorporated Memory device with built-in flexible double redundancy
US11177010B1 (en) 2020-07-13 2021-11-16 Qualcomm Incorporated Bitcell for data redundancy
US11244741B1 (en) * 2020-11-04 2022-02-08 Micron Technology, Inc. Selectable fuse sets, and related methods, devices, and systems
CN117037884B (zh) * 2023-10-10 2024-02-23 浙江力积存储科技有限公司 在存储阵列中使用的熔断器单元及其处理方法、存储阵列

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6285619B1 (en) * 1999-11-18 2001-09-04 Infineon Technologies North America Corp. Memory cell
US20030088785A1 (en) * 2001-05-10 2003-05-08 Makoto Fujiwara ID installable LSI, secret key installation method, LSI test method, and LSI development method
DE102005009050A1 (de) * 2005-02-28 2006-09-07 Infineon Technologies Ag Differentielle Ausleseschaltung für Fuse-Speicherzellen
US7461268B2 (en) * 2004-07-15 2008-12-02 International Business Machines Corporation E-fuses for storing security version data

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4812675A (en) * 1987-04-15 1989-03-14 Exel Microelectronics Incorporated Security element circuit for programmable logic array
US5668818A (en) * 1996-08-06 1997-09-16 Hewlett-Packard Co. System and method for scan control of a programmable fuse circuit in an integrated circuit
JP4212171B2 (ja) * 1999-01-28 2009-01-21 株式会社ルネサステクノロジ メモリ回路/ロジック回路集積システム
JP2000268596A (ja) * 1999-03-12 2000-09-29 Mitsubishi Electric Corp 半導体記憶装置
US6577156B2 (en) * 2000-12-05 2003-06-10 International Business Machines Corporation Method and apparatus for initializing an integrated circuit using compressed data from a remote fusebox
DE10162306A1 (de) * 2001-12-19 2003-07-03 Philips Intellectual Property Verfahren und Anordnung zur Verifikation von NV-Fuses sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium
US8255700B2 (en) * 2004-06-29 2012-08-28 Qualcomm Incorporated Lockstep mechanism to ensure security in hardware at power-up
US7308598B2 (en) * 2004-11-04 2007-12-11 International Business Machines Corporation Algorithm to encode and compress array redundancy data
US7268577B2 (en) * 2004-12-17 2007-09-11 International Business Machines Corporation Changing chip function based on fuse states
US7251756B2 (en) * 2005-04-26 2007-07-31 International Business Machines Corporation Method and apparatus for increasing fuse programming yield through preferred use of duplicate data
US20070039060A1 (en) * 2005-08-12 2007-02-15 Jamieson Georges E Methods and systems for programming secure data into programmable and irreversible cells
JP2007158104A (ja) * 2005-12-06 2007-06-21 Nec Electronics Corp ヒューズ回路を有する半導体集積回路及びその製造方法
US20070247182A1 (en) * 2006-03-31 2007-10-25 Beatty Timothy S Protection of security key information
JP4908055B2 (ja) * 2006-05-15 2012-04-04 ルネサスエレクトロニクス株式会社 半導体装置および電気ヒューズの切断方法
KR20080035208A (ko) * 2006-10-18 2008-04-23 삼성전자주식회사 퓨즈 커팅 정보들을 순차적으로 출력하는 반도체 장치 및테스트 시스템
US7528646B2 (en) * 2006-10-19 2009-05-05 International Business Machines Corporation Electrically programmable fuse sense circuit
EP2127300B1 (de) * 2007-01-26 2018-04-18 InterDigital Technology Corporation Methode und gerät zur sicherung von ortsinformation und zugangskontrolle die ortsinformation benutzend
US7538597B2 (en) * 2007-08-13 2009-05-26 Hong Kong Applied Science And Technology Research Institute Co. Ltd. Fuse cell and method for programming the same
US7663957B2 (en) * 2008-05-27 2010-02-16 Via Technologies, Inc. Microprocessor with program-accessible re-writable non-volatile state embodied in blowable fuses of the microprocessor
US7724022B1 (en) * 2009-01-28 2010-05-25 International Business Machines Corporation Implementing enhanced security features in an ASIC using eFuses

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6285619B1 (en) * 1999-11-18 2001-09-04 Infineon Technologies North America Corp. Memory cell
US20030088785A1 (en) * 2001-05-10 2003-05-08 Makoto Fujiwara ID installable LSI, secret key installation method, LSI test method, and LSI development method
US7461268B2 (en) * 2004-07-15 2008-12-02 International Business Machines Corporation E-fuses for storing security version data
DE102005009050A1 (de) * 2005-02-28 2006-09-07 Infineon Technologies Ag Differentielle Ausleseschaltung für Fuse-Speicherzellen

Also Published As

Publication number Publication date
CN102714060A (zh) 2012-10-03
DE112010005172T5 (de) 2012-10-31
GB201204914D0 (en) 2012-05-02
US8194489B2 (en) 2012-06-05
GB2489570B (en) 2014-03-12
GB2489570A (en) 2012-10-03
US20110176380A1 (en) 2011-07-21
WO2011088938A1 (en) 2011-07-28

Similar Documents

Publication Publication Date Title
DE112010005172B4 (de) Gepaarte programmierbare Schmelzsicherungen
DE102006001873B4 (de) Vorrichtung und Verfahren zum Überprüfen einer Fehlererkennungsfunktionalität einer Speicherschaltung
DE112012004439B4 (de) Speichergestützte intrinsische Fingerabdruck-Identifikation mit einem Fuzzy-Algorithmus und einem dynamischen Schlüssel
DE102013224104B4 (de) System und verfahren zum bereitstellen eines echtheitsnachweisdienstes eines chips
DE112016006170T5 (de) Puf-werterzeugung unter verwendung einer anti-schmelzsicherungs-speicheranordnung
DE10338032B4 (de) Prozessor mit elektronischen Sicherungen zum Speichern von Geheimdaten
DE102011108933A1 (de) Sichere Speicherung durch interneBetriebssicherstellung
DE102005016050A1 (de) Speicherfehlererkennungsvorrichtung und Verfahren zum Erkennen eines Speicherfehlers
DE2225841B2 (de) Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers
EP3811263B1 (de) Kryptografiemodul und betriebsverfahren hierfür
DE102004020875A1 (de) Verfahren und Vorrichtung zum Maskieren bekannter Ausfälle während Speichertestauslesungen
DE102015210651A1 (de) Schaltung und Verfahren zum Testen einer Fehlerkorrektur-Fähigkeit
DE102017124313B4 (de) Speicheranordnung und verfahren zum verifizieren eines speicherzugriffs
DE112019000488T5 (de) Speichervorrichtung, Speicheradressdecoder, System und zugehöriges Verfahren zur Erfassung eines Speicherangriffs
DE102018121445A1 (de) Zugangskontrollverfahren
EP3378006B1 (de) Verfahren zum laden eines sicheren speicherabbilds eines mikrocontrollers und anordnung mit einem mikrocontroller
DE19940611B4 (de) Verfahren zum Erzeugen von Testergebnissen während einer Selbstprüfung, Verfahren zum Signalisieren einer erfolgreichen Beendigung der Selbstprüfung und Verarbeitungssystem mit der Fähigkeit zur Selbstprüfung
DE102011014665A1 (de) Detektieren von Angriffen auf einen portablen Datenträger
DE10164419A1 (de) Verfahren und Anordnung zum Schutz von digitalen Schaltungsteilen
DE102005016051B4 (de) Speicherüberprüfungsvorrichtung und Verfahren zum Überprüfen eines Speichers
DE102018102386A1 (de) Verfahren zum Senden von Daten, Verfahren zum Empfangen von Daten, Master-, Slave-, und Master-Slave-System
WO2013160032A1 (de) Verfahren zum feststellen der originalität eines bauteils
DE102017116280B4 (de) Speicheranordnung
DE102018112816A1 (de) Adresscodierter Zugriff auf Speicher
EP2002446B1 (de) Verfahren zum betreiben einer speichereinrichtung mit markierung von als fehlerhaft erkannten speicherblöcken

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R083 Amendment of/additions to inventor(s)
R082 Change of representative

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE

Representative=s name: SPIES DANNER & PARTNER PATENTANWAELTE PARTNERS, DE

R016 Response to examination communication
R082 Change of representative

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE

R018 Grant decision by examination section/examining division
R084 Declaration of willingness to licence
R020 Patent grant now final
R082 Change of representative

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

R082 Change of representative

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE