DE102018118782A1 - Erzeugung einer Physically Unclonable Function (PUF) - Google Patents

Erzeugung einer Physically Unclonable Function (PUF) Download PDF

Info

Publication number
DE102018118782A1
DE102018118782A1 DE102018118782.3A DE102018118782A DE102018118782A1 DE 102018118782 A1 DE102018118782 A1 DE 102018118782A1 DE 102018118782 A DE102018118782 A DE 102018118782A DE 102018118782 A1 DE102018118782 A1 DE 102018118782A1
Authority
DE
Germany
Prior art keywords
memory cells
sense amplifier
signal
memory
control unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102018118782.3A
Other languages
English (en)
Inventor
Chien-Chen Lin
Wei Chan
Chih-Yu Lin
Shih-Lien Lu
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.)
Taiwan Semiconductor Manufacturing Co TSMC Ltd
Original Assignee
Taiwan Semiconductor Manufacturing Co TSMC Ltd
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
Priority claimed from US16/045,066 external-priority patent/US11196574B2/en
Application filed by Taiwan Semiconductor Manufacturing Co TSMC Ltd filed Critical Taiwan Semiconductor Manufacturing Co TSMC Ltd
Publication of DE102018118782A1 publication Critical patent/DE102018118782A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • 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/73Protecting 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 creating or determining hardware identification, e.g. serial numbers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/41Digital 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/413Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
    • G11C11/417Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the field-effect type
    • G11C11/419Read-write [R-W] circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/06Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
    • G11C7/062Differential amplifiers of non-latching type, e.g. comparators, long-tailed pairs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/06Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
    • G11C7/08Control thereof
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3278Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Static Random-Access Memory (AREA)

Abstract

Ein PUF-Generator (PUF: Physically Unclonable Function) weist einen ersten Leseverstärker mit einem ersten Eingangsanschluss, der derart eingerichtet ist, dass er ein Signal von einer ersten Speicherzelle einer Mehrzahl von Speicherzellen empfängt, und mit einem zweiten Eingangsanschluss auf, der derart eingerichtet ist, dass er ein Signal von einer zweiten Speicherzelle der Mehrzahl von Speicherzellen empfängt. Der erste Leseverstärker ist derart eingerichtet, dass er Zugriffsgeschwindigkeiten der ersten und der zweiten Speicherzelle der Mehrzahl von Speicherzellen vergleicht und auf Grundlage des Vergleichs der Zugriffsgeschwindigkeiten ein erstes Ausgangssignal zum Erzeugen einer PUF-Signatur bereitstellt. Eine Steuereinheit ist derart eingerichtet, dass sie ein Aktivierungssignal an den Leseverstärker ausgibt, wobei die Steuereinheit einen ersten Eingangsanschluss aufweist, der derart eingerichtet ist, dass er ein Signal von einer Bitleitung der ersten Speicherzelle empfängt, und einen zweiten Eingangsanschluss aufweist, der derart eingerichtet ist, dass er ein Signal von einer Bitleitung der zweiten Speicherzelle empfängt.

Description

  • Querverweis
  • Diese Anmeldung beansprucht die Priorität der am 17. August 2017 eingereichten vorläufigen US-Patentanmeldung mit dem Aktenzeichen 62/546.726 , die durch Bezugnahme aufgenommen ist.
  • Hintergrund
  • Mit der zunehmenden Verwendung von elektronischen Geräten, die integrierte Schaltkreise nutzen, zum Bereitstellen verschiedener Arten von Informationen für eine breite Palette von Anwendungen ist eine wachsende Nachfrage nach einem ausreichenden Schutz von sensiblen und/oder kritischen Informationen zu verzeichnen, die in einem elektronischen Gerät gespeichert werden können, um den Zugriff auf diese Informationen nur auf solche anderen Geräte zu beschränken, die eine Zugriffsberechtigung für die Informationen haben. Beispiele für solche Anwendungen sind die Authentifizierung von Geräten, der Schutz von vertraulichen Informationen in einem Gerät und die Sicherstellung einer Kommunikation zwischen zwei oder mehr Geräten.
  • Eine Physically Unclonable Function (PUF) ist eine physische Struktur, im Allgemeinen in einem integrierten Schaltkreis, die eine Anzahl von entsprechenden Ausgaben (z. B. Antworten) in Reaktion auf Eingaben (z. B. Aufforderungen/Anforderungen) für die PUF bereitstellt. Jede PUF stellt eine oder mehrere Gruppen von Anforderung-Antwort-Paaren bereit. Mit diesen Anforderung-Antwort-Paaren, die von der PUF bereitgestellt werden, kann die Identität des integrierten Schaltkreises festgestellt werden. Mit der Feststellung der Identität kann eine sichere Kommunikation zwischen Geräten hergestellt werden. Die PUF kann auch für bestehende Authentifizierungszwecke verwendet werden, um das aktuelle Verfahren des Zuweisens einer Identität zu einem elektronischen Gerät zu ersetzen. Da die PUF auf spezifischen Eigenschaften eines Herstellungsprozesses beruht, hat sie verschiedene Vorteile gegenüber herkömmlichen Authentifizierungsmethoden, bei denen eine Identität auf einem Gerät gespeichert wird, die leichter nachgeahmt und/oder für die Nachahmung analysiert werden kann.
  • Figurenliste
  • Aspekte der vorliegenden Erfindung lassen sich am besten anhand der nachstehenden detaillierten Beschreibung in Verbindung mit den beigefügten Zeichnungen verstehen. Es ist zu beachten, dass entsprechend der üblichen Praxis in der Branche verschiedene Elemente nicht maßstabsgetreu gezeichnet sind. Vielmehr können der Übersichtlichkeit der Erörterung halber die Abmessungen der verschiedenen Elemente beliebig vergrößert oder verkleinert sein.
    • 1 ist ein Blockschaltbild, das ein Beispiel für einen Speicherbaustein zeigt, der eine Authentifizierungsschaltung aufweist, gemäß einigen Ausführungsformen.
    • 2 ist ein Blockschaltbild, das den beispielhaften Speicherbaustein von 1 sowie eine schematische Darstellung einer Authentifizierungsschaltung zeigt, gemäß einigen Ausführungsformen.
    • 3 ist ein Schaltplan, der ein Beispiel für zwei Speicherzellen der SRAM-Zellenmatrix (SRAM: statistischer Direktzugriffsspeicher) sowie einen Leseverstärker und eine Steuereinheit der Authentifizierungsschaltung von 2 zeigt, gemäß einigen Ausführungsformen.
    • 4A ist ein Schaltplan, der Leseverstärker und zugehörige Steuereinheiten eines Beispiels für die Authentifizierungsschaltung von 2 zeigt, gemäß einigen Ausführungsformen.
    • 4B ist ein Schaltplan, der Leseverstärker und eine Steuereinheit eines weiteren Beispiels für die Authentifizierungsschaltung von 2 zeigt, gemäß einigen Ausführungsformen.
    • 5 ist ein Schaltplan, der ein Beispiel für zwei Speicherzellen der SRAM-Zellenmatrix und den Leseverstärker der Authentifizierungsschaltung von 2 sowie ein Beispiel für die Steuereinheiten gemäß einigen Ausführungsformen zeigt.
    • 6 ist ein Schaltplan, der ein Beispiel für einen Impulsgenerator der in 5 gezeigten Steuereinheit zeigt, gemäß einigen Ausführungsformen.
    • 7 zeigt Beispiele für Wellenformen, die von dem in 6 gezeigten beispielhaften Impulsgenerator erzeugt werden, gemäß einigen Ausführungsformen.
    • 8 zeigt Beispiele für Wellenformen von Signalen der Schaltung von 5, gemäß einigen Ausführungsformen.
    • 9 ist ein Schaltplan, der ein weiteres Beispiel für zwei Speicherzellen der SRAM-Zellenmatrix und den Leseverstärker der Authentifizierungsschaltung von 2 sowie ein weiteres Beispiel für die Steuereinheit gemäß einigen Ausführungsformen zeigt.
    • 10 zeigt Beispiele für Wellenformen von Signalen der Schaltung von 9, gemäß einigen Ausführungsformen.
    • 11 ist ein Schaltplan, der ein weiteres Beispiel für zwei Speicherzellen der SRAM-Zellenmatrix und den Leseverstärker der Authentifizierungsschaltung von 2 sowie ein weiteres Beispiel für die Steuereinheit gemäß einigen Ausführungsformen zeigt.
    • 12 zeigt Beispiele für Wellenformen von Signalen der Schaltung von 11, gemäß einigen Ausführungsformen.
    • 13 ist ein Schaltplan, der ein weiteres Beispiel für zwei Speicherzellen der SRAM-Zellenmatrix und den Leseverstärker der Authentifizierungsschaltung von 2 sowie ein weiteres Beispiel für die Steuereinheit gemäß einigen Ausführungsformen zeigt.
    • 14 zeigt Beispiele für Wellenformen von Signalen der Schaltung von 13, gemäß einigen Ausführungsformen.
    • 15 ist ein Ablaufdiagramm, das ein Beispiel für ein Verfahren zur Erzeugung einer PUF-Signatur gemäß einigen Ausführungsformen zeigt.
  • Detaillierte Beschreibung von beispielhaften Ausführungsformen
  • Nachstehend werden verschiedene beispielhafte Ausführungsformen zum Implementieren verschiedener Merkmale des bereitgestellten Gegenstands beschrieben. Es werden spezielle Beispiele für Komponenten und Anordnungen beschrieben, um die vorliegende Erfindung zu vereinfachen. Diese sind natürlich lediglich Beispiele und sollen nicht beschränkend sein. Zum Beispiel dürfte klar sein, dass wenn ein Element als mit einem anderen Element „verbunden“ oder „gekoppelt“ bezeichnet wird, es direkt mit dem anderen Element verbunden oder gekoppelt sein kann oder dass sich ein oder mehrere Elemente dazwischen befinden können.
  • Eine Physically Unclonable Function (PUF) wird im Allgemeinen zur Authentifizierung und zur Speicherung von Geheimschlüsseln verwendet, ohne dass sichere elektrisch löschbare und wieder programmierbare Festwertspeicher (EEPROMs) und/oder andere teure Hardware (z. B. ein batteriegepufferter statischer Direktzugriffsspeicher) benötigt werden. Statt Geheimnisse in einem digitalen Speicher zu speichern, leitet die PUF ein Geheimnis aus physischen Eigenschaften eines integrierten Schaltkreises (IC) ab. Die PUF beruht auf dem Gedanken, dass obwohl ein identischer Herstellungsprozess zum Herstellen einer Mehrzahl von ICs verwendet wird, jeder IC auf Grund der Herstellungsvariabilität geringfügig anders sein kann. PUFs machen sich diese Variabilität zunutze, um „geheime“ Informationen abzuleiten, die für jeden der ICs spezifisch sind (z. B. eine Siliziumbiometrie). In der Regel werden solche geheimen Informationen als eine „Signatur“ des IC bezeichnet. Darüber hinaus kann man auf Grund der Herstellungsvariabilität, die die Signatur definiert, keine zwei identischen ICs herstellen, auch nicht mit genauer Kenntnis des IC-Entwurfs. Verschiedene Arten der Variabilität eines IC können zum Definieren dieser Signatur verwendet werden, wie zum Beispiel Gate-Verzögerungen, Einschaltzustände eines SRAM-Bausteins (SRAM: statischer Direktzugriffsspeicher) und/oder verschiedene physikalische Eigenschaften eines IC.
  • In dem Beispiel der Verwendung der vorgenannten Einschaltzustände eines SRAM-Bausteins kann, obwohl ein SRAM-Baustein symmetrische Zellen (Bits) aufweist, die Herstellungsvariabilität noch immer jedes Bit des SRAM-Bausteins veranlassen, tendenziell in einem High-Zustand (d. h. logisch Eins) oder einem Low-Zustand (d. h. logisch Null) zu sein, während der SRAM-Baustein eingeschaltet ist. Diese ersten Einschaltzustände der Bits sind über den gesamten SRAM-Baustein zufällig verteilt, was zu einer Variabilität führt, die von einer PUF so definiert werden kann, dass eine spezifische Signatur des SRAM-Bausteins entsteht. In der Regel wird die Erzeugung einer PUF-Signatur unter Verwendung der Einschaltzustände eines SRAM-Bausteins als eine „SRAM-basierte Einschalt-PUF“ bezeichnet. Zum Erzeugen einer PUF-Signatur unter Verwendung einer SRAM-basierten Einschalt-PUF wird in der Regel mindestens eine Wiederholung des Ein- und Ausschaltens des SRAM-Bausteins verwendet, die nachteilig zu einem zusätzlichen Energieverbrauch während des Betriebs des SRAM-Bausteins führen kann, und die Erzeugung der Signatur kann länger dauern (z. B. durch einen begrenzten Durchsatz). Außerdem ist der Einschaltzustand jedes Bits eines SRAM-Bausteins normalerweise verschiedenen lokalen Umgebungsparametern ausgesetzt, wie zum Beispiel einer Betriebstemperatur des Bits, einer Versorgungsspannung des Bits, einer mechanischen Spannung, die von dem Bit toleriert wird, und dergleichen. Somit können die Einschaltzustände von zwei Bits, die sich an zwei unterschiedlichen Positionen befinden, wesentlich von den jeweiligen lokalen Umgebungsparametern abhängig sein, denen die zwei Bits ausgesetzt sind. Daher kann die PUF-Signatur, die auf Grund der Einschaltzustände dieser zwei Bits erzeugt wird, weniger zuverlässig sein. Andere Arten von herkömmlichen PUFs, die die physikalischen Eigenschaften eines IC zum Erzeugen einer PUF-Signatur nutzen, können ähnliche Probleme haben, wie sie vorstehend beschrieben worden sind. Daher ist die herkömmliche PUF bisher nicht in jeder Hinsicht völlig zufriedenstellend gewesen.
  • Ausführungsformen der vorliegenden Erfindung stellen verschiedene Systeme und Verfahren zum Erzeugen mindestens eines Bits einer PUF-Signatur für einen Speicherbaustein durch Vergleichen von Zugriffsgeschwindigkeiten (z. B. Lesegeschwindigkeiten) von zwei Speicherzellen des Speicherbausteins bereit. Da bei den offenbarten Systemen und Verfahren die PUF-Signatur auf Grund des Vergleichs von Lesegeschwindigkeiten erzeugt wird, ist keine Wiederholung des Ein- und Ausschaltens des Speicherbausteins erforderlich, wodurch das Problem des höheren Energieverbrauchs behoben wird, vor dem die herkömmliche SRAM-basierte Einschalt-PUF steht. Außerdem kann durch Vergleichen der Lesegeschwindigkeiten von zwei benachbarten Speicherzellen des Speicherbausteins (zum Erzeugen der PUF-Signatur) die PUF-Signatur den vorgenannten Umgebungsparametern nicht so stark ausgesetzt sein, und sie kann somit zuverlässiger sein. Darüber hinaus wird bei bestimmten offenbarten Ausführungsformen das Vergleichen der Zugriffsgeschwindigkeiten der zwei Speicherzellen auf Grund von Signalen initiiert, die von den Speicherzellen selbst empfangen werden, statt auf Grund eines empirisch abgeleiteten Signals, wie etwa eines globalen Taktsignals, sodass eine stabilere Lesespanne zum Vergleichen der Zugriffsgeschwindigkeiten ermöglicht wird.
  • 1 zeigt einen Speicherbaustein 100 gemäß verschiedenen Ausführungsformen. Bei der Ausführungsform von 1 weist der Speicherbaustein 100 Folgendes auf: eine Speicherzellenmatrix 102, eine Authentifizierungsschaltung 104, eine Vorlade-/Vorentladeschaltung (PC/PD-Schaltung) 106, einen Zeilendecoder 108, einen optionalen Spaltendecoder 110, eine Eingabe-/Ausgabeschaltung (E/A-Schaltung) 112 und eine Steuerlogik 114. Wie in 1 gezeigt ist, weist die Speicherzellenmatrix 102 weiterhin einen eingebetteten Spannungsregler 116 auf. Obwohl es in 1 nicht dargestellt ist, können bei einigen Ausführungsformen alle Komponenten (d. h. 102, 104, 106, 108, 110 und 112) miteinander und mit der Steuerlogik 114 verbunden sein, sodass sie von der Steuerlogik 114 gesteuert werden. Obwohl bei der in 1 gezeigten Ausführungsform zum besseren Verständnis jede Komponente als ein einzelner Block dargestellt ist, können bei einigen anderen Ausführungsformen einige oder alle der in 1 gezeigten Komponenten miteinander vereinigt sein. Zum Beispiel kann die Speicherzellenmatrix 102 eine eingebettete Authentifizierungsschaltung (z. B. 104) aufweisen.
  • Bleiben wir bei 1. Bei einigen Ausführungsformen weist die Speicherzellenmatrix 102 eine Mehrzahl von Speicherzellen auf, die in einer Spalten-Zeilen-Konfiguration angeordnet sind, wobei jede Spalte eine Bitleitung (BL) und eine Bitschienenleitung (BBL) hat und jede Zeile eine Wortleitung (WL) hat. Insbesondere sind die BL und die BBL jeder Spalte jeweils mit einer Mehrzahl von Speicherzellen verbunden, die in dieser Spalte angeordnet sind, und jede Speicherzelle in dieser Spalte ist auf einer anderen Zeile angeordnet und ist mit einer jeweiligen (anderen) WL verbunden. Das heißt, jede Speicherzelle der Speicherzellenmatrix 102 ist mit einer BL einer Spalte der Speicherzellenmatrix 102, einer BBL der Spalte der Speicherzellenmatrix 102 und einer WL einer Zeile der Speicherzellenmatrix 102 verbunden. Bei einigen Ausführungsformen sind die BLs und die BBLs vertikal parallel angeordnet, und die WLs sind horizontal parallel angeordnet (d. h. senkrecht zu den BLs und BBLs). Bei einigen Ausführungsformen weist die Authentifizierungsschaltung 104 eine Mehrzahl von Leseverstärkern auf, die mit der Mehrzahl von Speicherzellen verbunden sind. Jeder Leseverstärker der Authentifizierungsschaltung 104 ist derart eingerichtet, dass er Lesegeschwindigkeiten (d. h. entweder eine Ladegeschwindigkeit oder eine Entladegeschwindigkeit, die später näher erörtert werden) von zwei oder mehr Speicherzellen, die durch die BL oder BBL jeder Speicherzelle mit dem Leseverstärker verbunden sind, miteinander vergleicht, um auf Grund des Ergebnisses des Vergleichs ein Ausgabebit bereitzustellen.
  • Bei einigen Ausführungsformen kann die Authentifizierungsschaltung 104 weiterhin einen Compiler 105 zum Empfangen des Ausgabebits jedes Leseverstärkers aufweisen und sie kann das eine oder die mehreren Ausgabebits zum Erzeugen einer PUF-Signatur verwenden. Die PC/PD-Schaltung 106 ist außerdem mit der Mehrzahl von Speicherzellen verbunden und ist derart eingerichtet, dass sie die BLs und/oder BBLs vorlädt und/oder vorentlädt. Der Zeilendecoder 108 ist derart eingerichtet, dass er eine Zeilenadresse der Speicherzellenmatrix empfängt und eine WL an dieser Zeilenadresse aktiviert. Bei einigen Ausführungsformen kann der Spaltendecoder 110 optional sein. Der Spaltendecoder 110 ist derart eingerichtet, dass er eine Spaltenadresse der Speicherzellenmatrix empfängt und eine BL und/oder BBL an dieser Spaltenadresse aktiviert. Die E/A-Schaltung 112 ist derart eingerichtet, dass sie auf ein Datenbit (d. h. eine logische Eins oder eine logische Null) an jeder der Speicherzellen zugreift. Bei einigen Ausführungsformen kann ein Datenbit mit der E/A-Schaltung 112 in eine Speicherzelle geschrieben werden oder aus einer Speicherzelle gelesen werden. Wie vorstehend dargelegt worden ist, ist bei einigen Ausführungsformen die Steuerlogik 114 mit allen Komponenten verbunden und sie ist derart eingerichtet, dass sie die verbundenen Komponenten steuert. Der Spannungsregler 116 ist derart eingerichtet, dass er einen Spannungspegel einer Versorgungsspannung, die an jede der Speicherzellen angelegt wird, steuert (z. B. erhöht oder verringert). Bei einigen alternativen Ausführungsformen kann der Spannungsregler 116 als ein separater Block implementiert sein, der nicht in die in 1 gezeigte Speicherzellenmatrix 102 eingebettet ist. Eine beispielhafte Ausführungsform der Speicherzellenmatrix 102, der Authentifizierungsschaltung 104 und der E/A-Schaltung 112 wird nachstehend unter Bezugnahme auf 2 näher erörtert.
  • In 2 ist eine Ausführungsform eines Speicherbausteins 200 gezeigt. Der Speicherbaustein 200 kann dem Speicherbaustein 100 im Wesentlichen ähnlich sein, und somit können eine Speicherzellenmatrix 202, eine Authentifizierungsschaltung 204, eine PC/PD-Schaltung 206, ein Zeilendecoder 208, eine E/A-Schaltung 212, eine Steuerlogik 214 und ein Spannungsregler 216 den entsprechenden Komponenten 102, 104, 106, 108, 112, 114 bzw. 116 von 1 im Wesentlichen ähnlich sein. Daher kann die Funktionalität jeder Komponente von 2 der entsprechenden Komponente von 1 im Wesentlichen ähnlich sein. Bei einigen Ausführungsformen kann die Speicherzellenmatrix 202 eine SRAM-Matrix sein. Die Speicherzellenmatrix 202 kann jedoch als eine von mehreren verschiedenen Speicherzellenmatrizen (z. B. DRAM, MRAM, RRAM oder dergleichen) implementiert sein, wobei sie innerhalb des Schutzumfangs der vorliegenden Erfindung liegt. Zum Beispiel kann die Speicherzellenmatrix 102/202 als eine ROM-Matrix (ROM: Festspeicher), eine logische NMOS-Matrix (NMOS: n-Metall-Oxid-Halbleiter), eine logische PMOS-Matrix (PMOS: p-Metall-Oxid-Halbleiter) oder eine Kombination davon implementiert sein, was bei einigen weiteren Ausführungsformen unter Bezugnahme auf die 11, 12 und 13 erläutert und erörtert wird.
  • Bleiben wir bei 2. Wie vorstehend dargelegt worden ist, umfasst die SRAM-Zellenmatrix 202 eine Mehrzahl von SRAM-Speicherzellen (z. B. 221, 229, 231, 239, 241, 249, 251, 259, 261, 269, 271, 279, 281, 289, 291, 299), die in einer Spalten-Zeilen-Konfiguration angeordnet sind. Der Klarheit halber wird die SRAM-Speicherzelle nachstehend als „Zelle“ bezeichnet. Obwohl bei der in 2 dargestellten Ausführungsform nur 16 Zellen gezeigt sind, kann bei der Ausführungsform des Speicherbausteins 200 jede gewünschte Anzahl von Zellen verwendet werden, was innerhalb des Schutzumfangs der vorliegenden Erfindung liegt. Insbesondere sind in der Speicherzellenmatrix 202 von 2 die Zellen 221 und 229 und alle anderen Zellen, die sich dazwischen befinden, in der Spalte A angeordnet. In ähnlicher Weise sind die Zellen 231 und 239 und alle anderen Zellen, die sich dazwischen befinden, in der Spalte B angeordnet. Die Zellen 241 und 249 und alle anderen Zellen, die sich dazwischen befinden, sind in der Spalte C angeordnet. Die Zellen 251 und 259 und alle anderen Zellen, die sich dazwischen befinden, sind in der Spalte D angeordnet. Die Zellen 261 und 269 und alle anderen Zellen, die sich dazwischen befinden, sind in der Spalte E angeordnet. Die Zellen 271 und 279 und alle anderen Zellen, die sich dazwischen befinden, sind in der Spalte F angeordnet. Die Zellen 281 und 289 und alle anderen Zellen, die sich dazwischen befinden, sind in der Spalte G angeordnet. Die Zellen 291 und 299 und alle anderen Zellen, die sich dazwischen befinden, sind in der Spalte H angeordnet. Obwohl nur 8 Spalten dargestellt sind, kann jede gewünschte Anzahl von Spalten zwischen den Spalten D und E angeordnet werden. In jeder Spalte kann jede gewünschte Anzahl von Zellen zwischen den dargestellten Zellen angeordnet werden. Zum Beispiel können in der Spalte A eine oder mehrere Zellen zwischen den Zellen 221 und 229 angeordnet werden. Insbesondere sind in 2 die Zellen in jeder Spalte jeweils in einer jeweiligen Zeile angeordnet, und jede Zeile kann eine Mehrzahl von Zellen umfassen, die jeweils zu einer jeweiligen anderen Spalte gehören. Bei der in 2 dargestellten Ausführungsform sind die Zellen 221, 231, 241, 251, 261, 271, 281 und 291, die zu der Spalte A, B, C, D, E, F, G bzw. H gehören, in der gleichen Zeile angeordnet, die nachstehend als Zeile a bezeichnet wird. In ähnlicher Weise sind die Zellen 229, 239, 249, 259, 269, 279, 289 und 299, die zu der Spalte A, B, C, D, E, F, G bzw. H gehören, in der gleichen Zeile angeordnet, die nachstehend als Zeile b bezeichnet wird. Obwohl nur zwei Zeilen dargestellt sind, kann jede gewünschte Anzahl von Zeilen zwischen den Zeilen a und b angeordnet werden.
  • Wie vorstehend dargelegt worden ist, hat jede Spalte ein jeweiliges Paar BL/BBL, die mit den Zellen in dieser Spalte verbunden sind, und jede Zeile hat eine jeweilige WL, die mit mehreren Zellen verbunden ist, die jeweils zu mehreren Spalten gehören. Wie in der SRAM-Zellenmatrix 202 von 2 gezeigt ist, hat zum Beispiel die Spalte A eine BL 222 und eine BBL 224, die Spalte B hat eine BL 232 und eine BBL 234, die Spalte C hat eine BL 242 und eine BBL 244, die Spalte D hat eine BL 252 und eine BBL 254, die Spalte E hat eine BL 262 und eine BBL 264, die Spalte F hat eine BL 272 und eine BBL 274, die Spalte G hat eine BL 282 und eine BBL 284, und die Spalte H hat eine BL 292 und eine BBL 294. Die Zellen jeder Spalte sind mit der BL und der BBL der Spalte verbunden. In 2 sind zum Beispiel die Zellen 221 und 229 und alle dazwischen befindlichen Zellen jeweils mit der BL 222 und der BBL 224 verbunden, die Zellen 231 und 239 und alle dazwischen befindlichen Zellen sind jeweils mit der BL 232 und der BBL 234 verbunden, die Zellen 241 und 249 und alle dazwischen befindlichen Zellen sind jeweils mit der BL 242 und der BBL 244 verbunden, die Zellen 251 und 259 und alle dazwischen befindlichen Zellen sind jeweils mit der BL 252 und der BBL 254 verbunden, die Zellen 261 und 269 und alle dazwischen befindlichen Zellen sind jeweils mit der BL 262 und der BBL 264 verbunden, die Zellen 271 und 279 und alle dazwischen befindlichen Zellen sind jeweils mit der BL 272 und der BBL 274 verbunden, die Zellen 281 und 289 und alle dazwischen befindlichen Zellen sind jeweils mit der BL 282 und der BBL 284 verbunden, und die Zellen 291 und 299 und alle dazwischen befindlichen Zellen sind jeweils mit der BL 292 und der BBL 294 verbunden. Weiterhin sind in 2 die Zellen 221, 231, 241, 251, 261, 271, 281 und bis 291, die in der Zeile a angeordnet sind, jeweils mit der WL 220 der Zeile a verbunden, und die Zellen 229, 239, 249, 259, 269, 279, 289 und bis 299, die in der Zeile b angeordnet sind, sind jeweils mit der WL 240 der Zeile b verbunden.
  • Bleiben wir bei 2, die Authentifizierungsschaltung 204 weist Leseverstärker 204-1, 204-2, 204-3 und 204-4 auf, wobei jeder Leseverstärker der Authentifizierungsschaltung 204 mit zwei BLs verbunden ist, die jeweils zu zwei benachbarten Spalten gehören. Wie bei der in 2 dargestellten Ausführungsform gezeigt ist, ist zum Beispiel der Leseverstärker 204-1 mit den BLs 222 und 232 verbunden, der Leseverstärker 204-2 ist mit den BLs 242 und 252 verbunden, der Leseverstärker 204-3 ist mit den BLs 262 und 272 verbunden, und der Leseverstärker 204-4 ist mit den BLs 282 und 292 verbunden. Obwohl, wie in 2 gezeigt ist, die Leseverstärker der Authentifizierungsschaltung 204 jeweils mit zwei BLs verbunden sind, die jeweils zu zwei benachbarten Spalten gehören, können bei einigen anderen Ausführungsformen die Leseverstärker der Authentifizierungsschaltung 204 jeweils mit zwei BBLs verbunden sein, die jeweils zu zwei benachbarten Spalten gehören (z. B. ist der Leseverstärker 204-1 mit den BBLs 224 und 234 verbunden). Bei einigen Ausführungsformen sind die Leseverstärker der Authentifizierungsschaltung 204 jeweils derart eingerichtet, dass sie ein erstes und ein zweites Eingangssignal über die verbundenen BLs empfangen, die zu jeweils zwei benachbarten Spalten gehören, und dass sie das erste und das zweite Eingangssignal miteinander vergleichen, um ein Ausgangssignal bereitzustellen. Insbesondere werden das erste und das zweite Eingangssignal von zwei Zellen, die auf der gleichen Zeile angeordnet sind und jeweils zu den zwei benachbarten Spalten gehören, bereitgestellt, während auf diese zwei Zellen zugegriffen wird (z. B. während sie gelesen werden). Zum Beispiel kann ein aus dem ersten und dem zweiten Eingangssignal bestehendes Paar für den Leseverstärker 204-1 erzeugt werden, während auf die Zellen 221 und 231 zugegriffen wird, und ein weiteres aus dem ersten und dem zweiten Eingangssignal bestehendes Paar für den Leseverstärker 204-1 kann erzeugt werden, während auf die Zellen 229 und 239 zugegriffen wird. Bei einigen Ausführungsformen können das erste und das zweite Eingangssignal jeweils entweder eine Entladegeschwindigkeit oder eine Ladegeschwindigkeit (d. h. eine Lesegeschwindigkeit) einer verbundenen Zelle umfassen. Somit wird ein Ausgangssignal auf Grund eines Vergleichs der Lesegeschwindigkeiten erzeugt, und dieses Ausgangssignal kann von dem Compiler 205 der Authentifizierungsschaltung 204 zum Erzeugen, zumindest eines Teils, einer PUF-Signatur verwendet werden. In einem Beispiel ist der Leseverstärker 204-1 derart eingerichtet, dass er die erste Lesegeschwindigkeit (das Signal 222-1) von der Zelle 221 entlang der BL 222 und die zweite Lesegeschwindigkeit (das Signal 232-1) von Zelle 231 entlang der BL 232 empfängt und die Signale 222-1 und 232-1 miteinander vergleicht, um ein Ausgangssignal 205-1 bereitzustellen.
  • Bleiben wir bei 2. Die PC/PD-Schaltung 206 ist mit allen BLs und BBLs der SRAM-Zellenmatrix 202 verbunden. Bei einigen Ausführungsformen ist die PC/PD-Schaltung 206 derart eingerichtet, dass sie die BL und/oder die BBL, die mit einer Zelle der SRAM-Zellenmatrix 202 verbunden ist, vorlädt und/oder vorentlädt, bevor ein Datenbit (d. h. eine logische Eins oder Null), das in der Zelle gespeichert ist, über die verbundene BL und/oder BBL gelesen wird. Als ein charakteristisches Beispiel ist die PC/PD-Schaltung 206 derart eingerichtet, dass sie vor dem Lesen von Bitdaten, die in der Zelle 221 gespeichert sind, die BL 222 und die BBL 224, die mit der Zelle 221 verbunden sind, vorlädt. Der Zeilendecoder 208 ist mit allen WLs der SRAM-Zellenmatrix 202 verbunden. Bei einigen Ausführungsformen ist der Zeilendecoder 208 derart eingerichtet, dass er eine Zeilenadresse empfängt (wie vorstehend dargelegt worden ist) und auf Grund der Zeilenadresse die WL an dieser Zeilenadresse aktiviert, um einen oder mehrere Zugriffstransistoren, die mit der WL verbunden sind, zu aktivieren. Die E/A-Schaltung 212 weist eine weitere Mehrzahl von Leseverstärkern 212-1, 212-2, 212-3, 212-4, 212-5, 212-6 bis 212-8 auf. Im Unterschied zu dem Leseverstärker der der Authentifizierungsschaltung 204 sind die Leseverstärker der E/A-Schaltung 212 jeweils mit der BL und der BBL nur einer Spalte verbunden. Zum Beispiel ist der Leseverstärker 212-1 mit der BL 222 und der BBL 224 der Spalte A verbunden, der Leseverstärker 212-2 ist mit der BL 232 und der BBL 234 der Spalte B verbunden, der Leseverstärker 212-3 ist mit der BL 242 und der BBL 244 der Spalte C verbunden, der Leseverstärker 212-4 ist mit der BL 252 und der BBL 254 der Spalte D verbunden, der Leseverstärker 212-5 ist mit der BL 262 und der BBL 264 der Spalte E verbunden, der Leseverstärker 212-6 ist mit der BL 272 und der BBL 274 der Spalte F verbunden, der Leseverstärker 212-7 ist mit der BL 282 und der BBL 284 der Spalte G verbunden, und der Leseverstärker 212-8 ist mit der BL 292 und der BBL 294 der Spalte H verbunden. Diese Leseverstärker der E/A-Schaltung 212 sind jeweils derart eingerichtet, dass sie bei Betrieb eine Spannungsdifferenz zwischen der BL und der BBL vergleichen, mit denen eine Zelle verbunden ist, um die in der Zelle gespeicherten Bitdaten zu lesen. Als ein charakteristisches Beispiel kann, wenn die in der Zelle 221 gespeicherten Bitdaten eine logische Eins sind, der Leseverstärker 212-1 eine logische Eins auf Grund des Vergleichs der Spannungsdifferenz zwischen der verbundenen BL 222 und BBL 224 lesen. Einzelheiten der Operationen des Speicherbausteins 200 und der zugehörigen Komponenten/Signale werden nachstehend unter Bezugnahme auf 3 näher erörtert.
  • 3 zeigt einen beispielhaften SRAM-Schaltkreis, der Einzelheiten von zwei benachbarten Zellen 221 und 231 und des mit diesen verbundenen Leseverstärkers 204-1 der Authentifizierungsschaltung 204 zeigt, gemäß verschiedenen Ausführungsformen. Die in 3 dargestellte Ausführungsform wird in Verbindung mit 2 erörtert. Wie in 3 gezeigt ist, sind die Zellen 221 und 231 zwar jeweils als eine 6-Transistor-SRAM-Zelle (6T-SRAM-Zelle) implementiert, aber die Zelle (z. B. 221, 231 usw.) der SRAM-Zellenmatrix 202 ist nicht auf die Implementierung als eine 6T-SRAM-Zelle beschränkt. Die Zelle der SRAM-Zellenmatrix 202 kann als eine von mehreren verschiedenen SRAM-Zellen implementiert sein, wie zum Beispiel eine 2T-2R-SRAM-Zelle, eine 4T-SRAM-Zelle, eine 8T-SRAM-Zelle usw.
  • Bleiben wir bei 3. Die Zelle 221 weist Transistoren M1, M2, M3, M4, M5 und M6 auf, und die Zelle 231 weist Transistoren M11, M12, M13, M14, M15 und M16 auf. Bei einigen Ausführungsformen sind die Zellen 221 und 231 einander im Wesentlichen ähnlich, das heißt, der Transistor M1 ist dem Transistor M11 im Wesentlichen ähnlich, der Transistor M2 ist dem Transistor M12 im Wesentlichen ähnlich, der Transistor M3 ist dem Transistor M13 im Wesentlichen ähnlich, der Transistor M4 ist dem Transistor M14 im Wesentlichen ähnlich, der Transistor M5 ist dem Transistor M15 im Wesentlichen ähnlich, und der Transistor M6 ist dem Transistor M16 im Wesentlichen ähnlich. Der Klarheit halber sind daher die folgenden Darlegungen und Operationen der Transistoren der Zelle nur auf die Zelle 221 gerichtet.
  • Wie in 3 gezeigt ist, sind die Transistoren M2 und M3 als ein erster Inverter hergestellt, und die Transistoren M4 und M5 sind als ein zweiter Inverter hergestellt, wobei der erste und der zweite Inverter miteinander verbunden sind. Insbesondere sind der erste und der zweite Inverter jeweils zwischen eine erste Spannungsreferenz 301 und eine zweite Spannungsreferenz 303 geschaltet. In der Regel ist die erste Spannungsreferenz 301 ein Spannungspegel einer Versorgungsspannung, die an die Zelle 221 angelegt wird. Die erste Spannungsreferenz 301 wird meistens als „Vdd“ bezeichnet. Die zweite Spannungsreferenz 303 wird meistens als „Masse“ bezeichnet. Bei einigen Ausführungsformen wird der Spannungspegel Vdd von der Steuerlogik 214 festgelegt und mit dem Spannungsregler 216 gesteuert. Der Spannungspegel kann zum Beispiel etwa 30 % der Vdd bis etwa 130 % der Vdd betragen. Weiterhin ist der erste Inverter mit dem Transistor M1 verbunden, und der zweite Inverter ist mit dem Transistor M6 verbunden. Die Transistoren M1 und M6 sind nicht nur mit den Invertern verbunden, sondern sie sind beide auch mit der WL 220 verbunden und sind mit der BL 222 bzw. der BBL 224 verbunden. Die Transistoren M1 und M6 werden normalerweise als Zugriffstransistoren der Zelle 221 bezeichnet. Bei einigen Ausführungsformen umfassen die Transistoren M1, M3, M5 und M6 jeweils einen NMOS-Transistor, und die Transistoren M2 und M4 umfassen jeweils einen PMOS-Transistor. Obwohl die in 3 dargestellten Ausführungsformen zeigen, dass M1 bis M6 und M11 bis M16 entweder NMOS- oder PMOS-Transistoren sind, kann einer von mehreren verschiedenen Transistoren oder Bauelementen, die zur Verwendung in einem Speicherbaustein geeignet sind, als mindestens einer der Transistoren M1 bis M6 und M11 bis M16 implementiert werden, wie zum Beispiel ein BJT, HEMT usw.
  • Wenn eine SRAM-Zelle ein Datenbit speichert, ist im Allgemeinen ein erster Knoten der SRAM-Zelle derart eingerichtet, dass er in einem ersten logischen Zustand (1 oder 0) ist, und ein zweiter Knoten der SRAM-Zelle ist derart eingerichtet, dass er in einem zweiten logischen Zustand (0 oder 1) ist, wobei der erste und der zweite logische Zustand zueinander komplementär sind. Bei einigen Ausführungsformen ist der erste logische Zustand an dem ersten Knoten das Datenbit, das von der SRAM-Zelle gespeichert wird. Die in 3 dargestellte Ausführungsform hat zum Beispiel Knoten 305 und 307. Der Knoten 305 ist derart eingerichtet, dass er im logischen Zustand 1 ist, wenn die Zelle 221 ein Datenbit (z. B. eine logische Eins) speichert, und der Knoten 307 ist derart eingerichtet, dass er in diesem Fall im logischen Zustand 0 ist.
  • Um die Authentifizierungsschaltung 204 zu veranlassen, eine PUF-Signatur zu erzeugen, wird bei einigen Ausführungsformen zunächst ein Datenbit (z. B. entweder eine logische Eins oder Null) in jede der zu lesenden Zellen in der SRAM-Zellenmatrix 202 geschrieben. Bei einigen Ausführungsformen kann diese Operation (Schreiben) von der E/A-Schaltung 212 ausgeführt werden. Insbesondere kann die E/A-Schaltung 212 außerdem Komponenten (z. B. einen oder mehrere Leseverstärker) aufweisen, um die Schreiboperationen auszuführen. Anschließend empfängt der Zeilendecoder 208 eine Zeilenadresse, um eine WL an dieser Zeilenadresse festzulegen, und dann wird die WL von dem Zeilendecoder 208 aktiviert. Bei einigen Ausführungsformen kann diese Zeilenadresse von der Steuerlogik 214 bereitgestellt werden. In Reaktion auf die Aktivierung der WL (z. B. 220) werden die Zugriffstransistoren (z. B. M1, M6, M11 und M16), die entlang der WL angeordnet sind und mit dieser verbunden sind, aktiviert (d. h. eingeschaltet). Bei einigen Ausführungsformen der vorliegenden Erfindung werden alle oder einige der BLs und BBLs (z. B. 222, 224, 232 und 234) der SRAM-Zellenmatrix 202 von der PC/PD-Schaltung 206 entweder auf Vdd vorgeladen oder auf Masse vorentladen. Dann wird das Datenbit, das in jeder Zelle (z. B. 221 usw.) der Zeile (d. h. entlang der aktivierten WL) gespeichert (geschrieben) ist, über die jeweilige BL (z. B. 222) und BBL (z. B. 224), die mit der Zelle verbunden sind, von einem entsprechenden Leseverstärker (z. B. 212-1) der E/A-Schaltung 212 gelesen. Während die Datenbits gelesen werden, vergleicht bei einigen Ausführungsformen jeder der Leseverstärker (z. B. 204-1) der Authentifizierungsschaltung 204, die mit den BLs (oder BBLs) von zwei Spalten/Zellen (z. B. 221 und 231) auf dieser Zeile verbunden sind, Lesegeschwindigkeiten (d. h. entweder die Ladegeschwindigkeiten oder die Entladegeschwindigkeiten) der zwei benachbarten Zellen entlang der mit diesen verbundenen BLs (oder BBLs) in Reaktion auf ein Leseverstärker-Aktivierungssignal 351, das von einer Steuereinheit 210 ausgegeben wird. Bei einigen Ausführungsformen ist die Steuereinheit 210 durch die Steuerlogik 214 implementiert.
  • Der Leseverstärker der Authentifizierungsschaltung 204 beginnt, die Lesegeschwindigkeiten (entweder die Entladegeschwindigkeit oder die Ladegeschwindigkeit) der zwei benachbarten Zellen in der gleichen Zeile miteinander zu vergleichen. In Reaktion auf den Vergleich kann jeder der Leseverstärker der Authentifizierungsschaltung 204 ein Bit (z. B. 205-1) für eine PUF-Signatur erzeugen. Daher kann für eine bestimmte Zeile (WL), die aktiviert ist, eine erste Mehrzahl von Bits (z. B. 205-1, 205-2, 205-3 ... 205-4) der PUF-Signatur von den Leseverstärkern der Authentifizierungsschaltung 204 (gleichzeitig) erzeugt werden. Bei einigen Ausführungsformen wird anschließend jede der übrigen Zeilen (WLs) der Speicherzellenmatrix aktiviert. Somit können eine oder mehrere Mehrzahlen von Bits der PUF-Signatur von den Leseverstärkern der Authentifizierungsschaltung 204 erzeugt werden. Wenn eine Speicherzellenmatrix N2 Zellen (N Spalten x N Zeilen) umfasst und jeder Leseverstärker der Authentifizierungsschaltung mit zwei benachbarten BLs (d. h. zwei benachbarten Spalten) der Speicherzellenmatrix verbunden ist, wie es in 2 gezeigt ist, kann somit eine erzeugte PUF-Signatur ½ N2 Bits umfassen, während die logischen Zustände (entweder 1 oder 0) der Datenbits gelesen werden.
  • Wie vorstehend dargelegt worden ist, ist der Leseverstärker 201-4 derart eingerichtet, dass er Eingangssignale 222-1 und 232-1 von der Zelle 221 entlang der BL 222 bzw. von der Zelle 231 entlang der BL 232 empfängt, um das Ausgangssignal 205-1 zu erzeugen. Bei einigen Ausführungsformen kann das Eingangssignal 222-1 ein Spannungspegel sein, der auf der BL 222 zu einem bestimmten Zeitpunkt anliegt, und das Eingangssignal 232-1 kann ein Spannungspegel sein, der auf der BL 232 zu diesem Zeitpunkt anliegt
  • Außerdem sind bei einigen Ausführungsformen die Leseverstärker 204-1, 204-2, 204-3 und 204-4 derart eingerichtet, dass sie ein Aktivierungssignal 351 von der Steuereinheit 210 empfangen. Wenn die Lesegeschwindigkeiten der benachbarten Speicherzellen des Speicherbausteins, die zum Erzeugen der PUF-Signatur verwendet werden, sehr ähnlich sind, könnte es schwierig sein, die Ausgangssignale für die PUF-Signatur wie gewünscht durchgehend zu erzeugen. Daher ist bei bestimmten offenbarten Ausführungsformen die Steuereinheit 210 derart eingerichtet, dass sie das Aktivierungssignal 351 auf Grund von Signalen ausgibt, die von der ersten und der zweiten Speicherzelle empfangen werden, wie etwa auf Grund der Signale 222-1 und 232-1 von den BLs 222 und 232 der Zellen 221 und 231, statt zum Beispiel auf Grund eines generischen Taktsignals. Außerdem wird in einigen Beispielen jeder der Leseverstärker der Authentifizierungsschaltung 204 lokal gesteuert, und zwar von einer entsprechenden Steuereinheit 210 in Reaktion auf die Eingangssignale, die an den jeweiligen Bitleitungen anliegen, statt global gesteuert zu werden, was eine stabilere Lesespanne für die BLs ermöglicht.
  • 4A zeigt eine solche Authentifizierungsschaltung 204a, bei der jeder der Leseverstärker 204-1, 204-2, 204-3 und 204-4 ein Aktivierungssignal von einer jeweiligen Steuereinheit 210-1, 210-2, 210-3 und 210-4 empfängt. Außerdem gibt jede der Steuereinheiten 210-1, 210-2, 210-3 und 210-4 ein Aktivierungssignal in Reaktion auf die BL-Signale aus, die von dem entsprechenden Leseverstärker empfangen werden. Somit empfängt die Steuereinheit 210-1 ein Eingangssignal von einer BL 222-1 der Speicherzelle 221 und ein anderes Eingangssignal von einer BL 231-1 der Speicherzelle 231. Ebenso empfangen die anderen dargestellten Steuereinheiten 210-2, 210-3 und 210-4, die in 4A gezeigt sind, Eingangssignale von den gleichen BLs, sodass Ausgangssignale für die jeweiligen Leseverstärker 204-2, 204-3 und 204-4 bereitgestellt werden.
  • Alternativ zeigt 4B eine Ausführungsform, bei der wie in dem Beispiel von 4A die einzige Steuereinheit 210 ein Eingangssignal von der BL 222-1 der Speicherzelle 221 und ein anderes Eingangssignal von der BL 231-1 der Speicherzelle 231 empfängt. Die Steuereinheit 210 gibt jedoch ein Aktivierungssignal an jeden der Leseverstärker 204-1, 204-2, 204-3 und 204-4 auf Grund der Signale aus, die von der BL 222-1 der Speicherzelle 221 und der BL 231-1 der Speicherzelle 231 empfangen werden, statt ein globales Signal, das empirisch erzeugt wird, oder ein globales Taktsignal auszugeben.
  • Somit wird jeder der Leseverstärker 204-1, 204-2, 204-3 und 204-4 der Authentifizierungsschaltungen 204a und 204b auf Grund eines Aktivierungssignals gesteuert, das in Reaktion auf Signale auf lokalen BLs erzeugt wird. Auf diese Weise werden BL-Geschwindigkeitsschwankungen zum Beispiel auf Grund einer Prozessänderung besser kompensiert und die Lesespanne für jedes E/A-Signal wird stabilisiert.
  • Der Leseverstärker 204-1 ist derart eingerichtet, dass er nach dem Triggern des Aktivierungssignals 351 (z. B. nachdem das Aktivierungssignal 351 von Low auf High gegangen ist) mit dem Vergleichen der Eingangssignale 222-1 und 232-1 (d. h. dem Vergleichen der Spannungspegel auf den BLs 222 und 232) im Zeitverlauf beginnt, was nachstehend näher erörtert wird. Bei einigen Ausführungsformen ist der Leseverstärker 204-1 derart eingerichtet, dass er in Reaktion darauf, dass eine Spannungspegeldifferenz zwischen den BLs 222 und 232 einen festgelegten Schwellenwert (z. B. 50 mV) zu einem bestimmten Zeitpunkt (d. h. wenn eine Entladegeschwindigkeit oder eine Ladegeschwindigkeit ermittelt wird) überschreitet, das Ausgangssignal 205-1 als eine logische Eins erzeugt, und dass er in Reaktion darauf, dass die Spannungspegeldifferenz zwischen den BLs 222 und 232 nicht den festgelegten Schwellenwert überschreitet, das Ausgangssignal 205-1 als eine logische Null erzeugt. Einzelheiten dazu, wie die Entlade- und Ladegeschwindigkeiten ermittelt werden, werden später näher erörtert. Bei einigen Ausführungsformen kann der Leseverstärker 204-1 den Vergleich der Spannungspegel auf den BLs 222 und 232 im Zeitverlauf so lange fortsetzen, bis die BLs 222 und 232 vollständig auf Masse entladen oder vollständig auf Vdd geladen sind oder bis die Spannungspegeldifferenz zwischen den BLs 222 und 232 den festgelegten Schwellenwert überschreitet.
  • Bleiben wir bei 3 in Verbindung mit 2. Bei einigen Ausführungsformen kann die Steuerlogik 214 entscheiden, ob entweder eine logische Eins oder eine logische Null (über die E/A-Schaltung 212) in jede der Mehrzahl von Zellen (z. B. 221, 231, 234, 251, 261, 271, 281, 291, 229, 239, 249, 259, 269, 279, 289, 299 usw.) der SRAM-Zellenmatrix 202 geschrieben wird. Diese geschriebene logische Eins oder Null kann in jeder der Zellen als ein Datenbit gespeichert werden. Wie vorstehend dargelegt worden ist, kann das Datenbit in dem ersten Knoten jeder Zelle (z. B. dem Knoten 302 der Zelle 221 oder dem Knoten 306 der Zelle 231) gespeichert werden, und ein komplementäres Datenbit (das dem logischen Zustand des Datenbits entgegengesetzt ist) kann in dem zweiten Knoten der Zelle (z. B. dem Knoten 304 der Zelle 221 oder dem Knoten 308 der Zelle 231) gespeichert werden.
  • Bei einigen Ausführungsformen sind, wenn das Datenbit, das in jeder der Mehrzahl von Zellen gespeichert (geschrieben) wird, eine logische Null ist, die Knoten 302 und 306 der Zellen 221 und 231 jeweils in einem logischen Zustand 0 und die Knoten 304 und 308 der Zellen 221 und 231 sind jeweils in einem logischen Zustand 1, und die Steuerlogik kann derart eingerichtet sein, dass sie die PC/PD-Schaltung 106 veranlasst, alle oder eine Teilmenge der BLs und BBLs (222, 224, 232 und 234) auf Vdd „vorzuladen“. Die Steuerlogik 214 kann gleichzeitig mit oder nach dem Vorladen den Zeilendecoder 208 veranlassen, eine WL einer Zeile (z. B. die WL 220 in dem Beispiel von 3) zu aktivieren, um alle Zugriffstransistoren (z. B. M1, M6, M11 und M16) zu aktivieren (einzuschalten). Bei einigen Ausführungsformen kann der Spannungspegel der Spannungsreferenz 301 niedriger als Vdd sein und kann zum Beispiel etwa 50 % bis etwa 99 % der Vdd betragen. Da die BLs 222 und 232 auf Vdd vorgeladen sind und die Knoten 302 und 306 in dem logischen Zustand o (z. B. Masse) sind, können in Reaktion auf das Einschalten der Zugriffstransistoren M1 und M11 ein Entladepfad 302 von der BL 222 über den Zugriffstransistor M1 und den Transistor M3 in der Zelle 221 zur Masse bzw. ein Entladepfad 304 von der BL 232 über den Zugriffstransistor M11 und den Transistor M13 in der Zelle 231 zur Masse hergestellt werden. Auf Grund verschiedener Herstellungsschwankungen können die einzelnen Transistoren in der Speicherzellenmatrix möglicherweise nicht exakt einander gleichen. Mit anderen Worten, jeder Transistor hat mehrere individuelle Eigenschaften, wie zum Beispiel eine individuelle Schwellenspannung, eine individuelle Trägerbeweglichkeit, ein individuelles Ein-Aus-Verhältnis, eine individuelle Flanke unterhalb des Schwellenwerts und dergleichen. Daher können bei einigen Ausführungsformen der Entladepfad 302 der Zelle 221 und der Entladepfad 304 der Zelle 231 jeweils eine Entladegeschwindigkeit haben, und diese zwei Entladegeschwindigkeiten können voneinander verschieden sein. Zum Beispiel kann die Entladegeschwindigkeit des Entladepfads 302 der Zelle 221 größer oder kleiner als die Entladegeschwindigkeit des Entladepfads 304 der Zelle 231 sein. Unter Verwendung dieses Unterschieds der Entladegeschwindigkeiten zwischen zwei benachbarten Zellen kann der Leseverstärker 204-1 ein Bit (z. B. 205-1) einer PUF-Signatur erzeugen. Zum Beispiel vergleicht der Leseverstärker 204-1 die Entladegeschwindigkeiten der Zellen 221 und 231. Wenn auf Grund des Vergleichs die Differenz dieser zwei Entladegeschwindigkeiten größer als ein festgelegter Schwellenwert (z. B. 50 mV/s) ist, kann der Leseverstärker 204-1 das Ausgangssignal 205-1 als eine logische Eins bereitstellen, und wenn die Differenz der zwei Entladegeschwindigkeiten kleiner als der festgelegte Schwellenwert ist, kann der Leseverstärker 204-1 das Ausgangssignal 205-1 als eine logische Null bereitstellen. Einzelheiten der Entladegeschwindigkeit werden später näher erörtert.
  • Kommen wir wieder zu 2 zurück. Bei einigen Ausführungsformen können eine oder mehrere Ausgangssignale (Bits) jeweils von anderen Leseverstärkern (z. B. 204-2, 204-3, 204-4 usw.) in der gleichen Zeile wie der Leseverstärker 204-1 der Authentifizierungsschaltung 204 auf Grund des Vergleichs der Entladegeschwindigkeiten der mit dem jeweiligen Leseverstärker verbundenen „Entladepfade“ bereitgestellt werden. Zum Beispiel vergleicht der Leseverstärker 204-2 die Entladegeschwindigkeiten der Entladepfade, die über den Transistor der Zellen 241 bzw. 251 hergestellt werden, und er gibt auf Grund des Vergleichs das Ausgabebit 205-2 aus. Der Leseverstärker 204-3 vergleicht die Entladegeschwindigkeiten der Entladepfade, die über den Transistor der Zellen 261 bzw. 271 hergestellt werden, und gibt auf Grund des Vergleichs das Ausgabebit 205-3 aus. Der Leseverstärker 204-4 vergleicht die Entladegeschwindigkeiten der Entladepfade, die über den Transistor der Zellen 281 bzw. 291 hergestellt werden, und gibt auf Grund des Vergleichs das Ausgabebit 205-4 aus. Bei einigen Ausführungsformen können die Ausgabebits 205-1, 205-2, 205-3 und 205-4 eine PUF-Signatur (z. B. 0100) erzeugen. Bei weiteren Ausführungsformen können die Ausgabebits 205-1, 205-2, 205-3 und 205-4 von dem Compiler 205 weiterverarbeitet (z. B. ausgewählt oder gefiltert) werden, um eine PUF-Signatur zu erzeugen. Bei noch weiteren Ausführungsformen können die Ausgabebits 205-1, 205-2, 205-3 und 205-4, die auf Grund des Vergleichs der Entladegeschwindigkeiten von zwei benachbarten Zellen in einer ersten Zeile (z. B. der Zeile a) erzeugt worden sind, zusammen mit den Ausgabebits 205-1, 205-2, 205-3 und 205-4, die auf Grund des Vergleichs der Entladegeschwindigkeiten von zwei benachbarten Zellen in einer zweiten Zeile (z. B. der Zeile b) erzeugt worden sind, von dem Compiler 205 weiterverarbeitet werden, um eine PUF-Signatur zu erzeugen.
  • 5 zeigt die Speicherzellen 221 und 231 und den mit ihnen verbundenen Leseverstärker 204-1 zusammen mit einer beispielhaften Steuereinheit 210, die derart eingerichtet ist, dass sie das Leseverstärker-Aktivierungssignal 351 erzeugt, das von dem Leseverstärker 204-1 empfangen wird. Die in 5 gezeigte Steuereinheit 210 weist ein NOR-Gate 310 auf, das einen ersten und einen zweiten Eingangsanschluss hat, die mit den BLs 222-1 und 232-1 verbunden sind. Somit empfängt das NOR-Gate 310 die gleichen Eingangssignale wie der Leseverstärker 204-1. Das Ausgangssignal des NOR-Gates 310 wird mit einem Impulsgenerator 312 empfangen, der ein gepulstes Aktivierungssignal 351 für den Leseverstärker 204-1 bereitstellt. Ein Beispiel für den Impulsgenerator 312 ist in 6 gezeigt, wo der Impulsgenerator ein UND-Gate 314 aufweist, das ein Eingangssignal 320 von dem NOR-Gate 310 empfängt und das Leseverstärker-Aktivierungssignal 351 als ein Ausgangssignal bereitstellt. Ein XOR-Gate 316 empfängt das Eingangssignal 320 direkt an einem Eingang und empfängt das Eingangssignal 320 über ein Verzögerungselement 318 an einem zweiten Eingang. Wie in 7 gezeigt ist, empfängt, wenn das von dem NOR-Gate 310 empfangene Eingangssignal 320 in einen logischen High-Zustand geht, das UND-Gate 314 das logisch hohe Eingangssignal 320 an einem Eingang und empfängt ein logisch hohes Ausgangssignal von dem XOR-Gate 316. Dadurch wird die ansteigende Flanke des gepulsten Aktivierungssignals 351 definiert, sodass das Aktivierungssignal 351 in einen logisch hohen Zustand geht. Die abfallende Flanke des Impulses des Aktivierungssignals 351 wird ermittelt, wenn eine Verzögerungszeit 324 verstrichen ist. Wenn das Ausgangssignal des Verzögerungselements 318 in einen logischen High-Zustand geht, geht das Ausgangssignal des XOR-Gates 316 in einen Low-Zustand, was dazu führt, dass das Aktivierungssignal 351 an dem Ausgang des UND-Gates 314 ebenfalls in den Low-Zustand geht.
  • 8 zeigt beispielhafte Wellenformen 402, 404, 406 und 410 von Signalen auf der WL 220, dem Entladepfad 302, dem Entladepfad 304 bzw. des Ausgangssignals 205-1 sowie eine Wellenform 408 des Aktivierungssignals 351, gemäß verschiedenen Ausführungsformen. Insbesondere kann während eines bestimmten Zeitraums während des Betriebs des Speicherbausteins 200 (2) die Wellenform 402 das Signal im Zeitverlauf auf der WL 220 darstellen, die Wellenform 404 kann das Signal (den Spannungspegel) im Zeitverlauf auf dem Entladepfad 302 darstellen, die Wellenform 406 kann das Signal (den Spannungspegel) im Zeitverlauf auf dem Entladepfad 304 darstellen, die Wellenform 408 kann das Aktivierungssignal 351 im Zeitverlauf darstellen, und die Wellenform 410 kann das Ausgangssignal 205-1 im Zeitverlauf darstellen. Wie bei der Ausführungsform von 8 gezeigt ist, werden zum Zeitpunkt t0 die BLs 222 und 232 auf Vdd vorgeladen. Zum Zeitpunkt t1 wird die WL 220 von dem Zeilendecoder 208 (2) aktiviert und beginnt daher, von einem logischen Low-Zustand zu einem logischen High-Zustand zu gehen. Wenn zum Zeitpunkt t2 die jeweiligen Leseverstärker 212-1 und 212-2 der E/A-Schaltung 212 auf die Zellen 221 und 231 zugreifen (sie lesen), werden die Entladepfade 302 und 304, wie vorstehend dargelegt, erzeugt. Dadurch beginnen die Spannungspegel der BLs 222 und 232, von Vdd abwärts zu rampen. Wie vorstehend dargelegt worden ist, wird jeder Entladepfad von einem oder mehreren Transistoren gebildet, die (auf Grund der Herstellungsvarianz) an sich und/oder äußerlich voneinander verschieden sind, sodass jeder Entladepfad eine individuelle Entladegeschwindigkeit haben kann. Wie in 8 gezeigt ist, haben die Wellenformen 404 und 406 jeweils eine Flanke (d. h., eine jeweilige Entladegeschwindigkeit).
  • Bleiben wir bei 8. Wenn zum Zeitpunkt t3 beide Spannungspegel auf den BLs 222 und 232 unter einen Triggerpegel 403 des NOR-Gates 310 (das in 5 gezeigt ist) gefallen sind, wird das Aktivierungssignal 351 (d. h., die Wellenform 408), das von dem Impulsgenerator 312 ausgegeben wird, von einem Low-Zustand in einen High-Zustand getriggert. Nachdem das Aktivierungssignal 351 getriggert worden ist (in Reaktion darauf, dass die Signale auf beiden BLs 222 und 232 unter den NOR-Triggerpunkt 403 gefallen sind), beginnt bei einigen Ausführungsformen der Leseverstärker 204-1 mit der Detektion der Differenz zwischen den Entladegeschwindigkeiten der Entladepfade 302 und 304 (über die BLs 222 und 232). Insbesondere ruft nach dem Zeitpunkt t3 der Leseverstärker 204-1 in bestimmten Zeitabständen (z. B. alle 100 ps) die Spannungspegel auf den Entladepfaden 302 und 304 ab und berechnet die Entladegeschwindigkeiten des Entladepfads 302 bzw. 304, indem er die Spannungspegel durch den Zeitraum (100 ps in diesem Beispiel) dividiert. Dadurch können die Entladegeschwindigkeiten der Entladepfade 302 und 304 für den Leseverstärker 204-1 verfügbar gemacht werden. Zum Beispiel ist zu einem Zeitpunkt „t3 + 100 ps“ der Spannungspegel auf dem Entladepfad 302 X Volt, und zu einem Zeitpunkt „t3 + 200 ps“ ist der Spannungspegel auf dem Entladepfad 302 Y Volt, und die Entladegeschwindigkeit des Entladepfads 302 kann von dem Leseverstärker 204-1 als (X - Y) / 10 (V/ps) abgeleitet werden. Zum Zeitpunkt t4, nach der Verzögerungszeit 324, geht das Aktivierungssignal 351 (Wellenform 408) zu einem logischen Low-Pegel, und der Leseverstärker 204-1 kann das Ausgangssignal als eine logische Null (410-1) oder eine logische Eins (410-2) bereitstellen.
  • Kommen wir zu 3 (in Verbindung mit 2) zurück. Wenn das Datenbit, das in jeder der Mehrzahl von Zellen gespeichert (geschrieben) wird, eine logische Eins ist, sind bei einigen Ausführungsformen die Knoten 302 und 306 der Zellen 221 und 231 jeweils in einem logischen Zustand 1 (die Knoten 304 und 308 der Zellen 221 und 231 sind jeweils in einem logischen Zustand o), und außerdem kann die Steuerlogik derart eingerichtet sein, dass sie die PC/PD-Schaltung 106 veranlasst, alle BLs und BBLs (222, 224, 232 und 234) auf Masse „vorzuentladen“. Vor, gleichzeitig mit oder nach dem Vorentladen kann die Steuerlogik 214 den Zeilendecoder 208 veranlassen, eine WL einer Zeile (die WL 220 in dem Beispiel von 3) zu aktivieren, um alle Zugriffstransistoren (z. B. M1, M6, M11 und M16) zu aktivieren (einzuschalten). Bei einigen Ausführungsformen kann der Spannungspegel der Spannungsreferenz 303 niedriger als Vdd sein und kann zum Beispiel etwa 50 % bis etwa 99 % der Vdd betragen. Da die BLs 222 und 232 auf Masse vorentladen sind und die Knoten 302 und 306 in dem logischen Zustand 1 (z. B. Vdd) sind, können in Reaktion auf das Einschalten der Zugriffstransistoren M1 und M11 ein Ladepfad 306 über die Versorgungsspannung 301, den Transistor M2 und den Zugriffstransistor M1 in der Zelle 221 bzw. ein Ladepfad 308 über die Versorgungsspannung 301, den Transistor M12 und den Zugriffstransistor M11 in der Zelle 231 erzeugt werden. Auf Grund der Herstellungsvarianz bei den Transistoren, die den Ladepfad bilden, kann jeder Ladepfad, ähnlich wie der Entladepfad, eine Ladegeschwindigkeit haben. Da der Ladepfad dem Entladepfad im Wesentlichen ähnlich ist, werden der Übersichtlichkeit halber weitere Erörterungen des Ladepfads (und der Ladegeschwindigkeit) und der Verwendung der Ladegeschwindigkeit zum Bereitstellen einer PUF-Signatur weggelassen.
  • 9 zeigt die Speicherzellen 221 und 231 und den mit diesen verbundenen Leseverstärker 204-1 zusammen mit einem weiteren Beispiel für eine Steuereinheit 210', die das Leseverstärker-Aktivierungssignal 351 erzeugt, das mit dem Leseverstärker 204-1 empfangen wird. Die in 9 gezeigte Steuereinheit 210' weist ein UND-Gate 311 auf, das einen ersten und einen zweiten Eingangsanschluss hat, die mit den BLs 222-1 und 232-1 verbunden sind. Somit empfängt das UND-Gate 311 die gleichen Eingangssignale wie der Leseverstärker 204-1. Das Ausgangssignal des UND-Gates 311 wird mit dem Impulsgenerator 312 empfangen, der wie in 6 gezeigt konfiguriert sein kann. Die Steuereinheit 210' stellt den Aktivierungssignalimpuls 351 für den Leseverstärker 204-1 bereit.
  • 10 zeigt beispielhafte Wellenformen 412, 414, 416 und 418 von Signalen auf der WL 220, dem Ladepfad 306, dem Ladepfad 308 bzw. des Ausgangssignals 205-1 sowie eine Wellenform 420 des Aktivierungssignals 351, die von dem in 9 gezeigten Beispiel erzeugt werden. Insbesondere kann während eines bestimmten Zeitraums während des Betriebs des Speicherbausteins 200 (2) die Wellenform 412 das Signal im Zeitverlauf auf der WL 220 darstellen, die Wellenform 414 kann das Signal (den Spannungspegel) im Zeitverlauf auf dem Ladepfad 306 darstellen, die Wellenform 416 kann das Signal (den Spannungspegel) im Zeitverlauf auf dem Ladepfad 308 darstellen, die Wellenform 418 kann das Aktivierungssignal 351 im Zeitverlauf darstellen, und die Wellenform 420 kann das Ausgangssignal 205-1 im Zeitverlauf darstellen.
  • Wie bei der Ausführungsform von 10 gezeigt ist, werden zum Zeitpunkt t0 die BLs 222 und 232 auf Masse vorentladen. Zum Zeitpunkt t1 wird die WL 220 von dem Zeilendecoder 208 (2) aktiviert und daher beginnt die Wellenform 412, von einem logischen Low-Zustand zu einem logischen High-Zustand zu gehen. Wenn zum Zeitpunkt t2 die jeweiligen Leseverstärker 212-1 und 212-2 der E/A-Schaltung 212 auf die Zellen 221 und 231 zugreifen (sie lesen), werden die Ladepfade 306 und 308, wie vorstehend dargelegt, erzeugt. Dadurch beginnen die Spannungspegel der BLs 222 und 232, von Masse aufwärts zu rampen. Wie vorstehend dargelegt worden ist, wird jeder Ladepfad von einem oder mehreren Transistoren gebildet, die (auf Grund der Herstellungsvarianz) an sich und/oder äußerlich voneinander verschieden sind, sodass jeder Ladepfad eine individuelle Ladegeschwindigkeit haben kann. Wie in 10 gezeigt ist, haben die Wellenformen 414 und 416 jeweils eine Flanke (d. h., eine jeweilige Ladegeschwindigkeit).
  • Bleiben wir bei 10. Wenn zum Zeitpunkt t3 beide Spannungspegel auf den BLs 222 und 232 (Wellenformen 414 und 416) über den Triggerpegel 413 des UND-Gates 311 gestiegen sind, wird das Aktivierungssignal 351 (d. h., die Wellenform 418) von einem logischen Low-Zustand zu einem logischen High-Zustand getriggert. Nachdem das Aktivierungssignal 351 getriggert worden ist, beginnt der Leseverstärker 204-1 mit der Detektion der Differenz zwischen den Ladegeschwindigkeiten der Ladepfade 306 und 308 (über die BLs 222 und 232). Insbesondere ruft nach dem Zeitpunkt t3 der Leseverstärker 204-1 in bestimmten Zeitabständen (z. B. alle 100 ps) die Spannungspegel auf den Ladepfaden 306 und 308 ab und berechnet die Ladegeschwindigkeiten des Ladepfads 306 bzw. 308, indem er die Spannungspegel durch den Zeitraum (100 ps in diesem Beispiel) dividiert. Dadurch können die Ladegeschwindigkeiten der Ladepfade 306 und 308 für den Leseverstärker 204-1 verfügbar gemacht werden. Zum Beispiel ist zu einem Zeitpunkt „t3 + 100 ps“ der Spannungspegel auf dem Ladepfad 306 X Volt, und zu einem Zeitpunkt „t3 + 200 ps“ ist der Spannungspegel auf dem Ladepfad 306 Y Volt, und die Ladegeschwindigkeit des Ladepfads 306 kann von dem Leseverstärker 204-1 als (X - Y) / 10 (V/ps) abgeleitet werden. Wie vorstehend dargelegt worden ist, wird das Aktivierungssignal 418 auf Grund dessen getriggert, dass die jeweiligen Signale auf den BLs 222 und 232 unter den Triggerpegel 413 des UND-Gates 311 fallen. An der abfallenden Flanke des Aktivierungssignals 351 (Wellenform 418), die auf der Verzögerungszeit 324 beruht, die von dem Impulsgenerator 312 festgelegt wird, kann der Leseverstärker 204-1 das Ausgangssignal als eine logische Null (420-1) oder eine logische Eins (420-2) bereitstellen.
  • 11 zeigt ein weiteres Beispiel für die Speicherzellen 221 und 231 und den mit diesen verbundenen Leseverstärker 204-1' zusammen mit einem weiteren Beispiel für eine Steuereinheit 210", die das Leseverstärker-Aktivierungssignal 351 erzeugt, das mit dem Leseverstärker 204-1' empfangen wird. In dem in 11 gezeigten Beispiel umfasst das Ausgangssignal des Leseverstärkers 204-1' ein Q- und ein Q-Schienen(QB)-Ausgangssignal. Ähnlich wie bei der in 5 gezeigten Ausführungsform weist die in 11 gezeigte Steuereinheit 210" ein NOR-Gate 310' auf, das einen ersten und einen zweiten Eingangsanschluss hat, die mit den BLs 222-1 und 232-1 verbunden sind. Somit empfängt das NOR-Gate 310' die gleichen Eingangssignale wie der Leseverstärker 204-1. Das Ausgangssignal des NOR-Gates 310' ist das Aktivierungssignal 351, das an den Leseverstärker 204-1 ausgegeben wird. Außerdem weist das NOR-Gate 310' einen Aktivierungsanschluss 326 auf, der ein NOR-Aktivierungssignal empfängt, das von einem XOR-Gate 328 ausgegeben wird. Das XOR-Gate 328 empfängt als seine Eingangssignale die Q- und QB-Ausgangssignale des Leseverstärkers 204-1'.
  • 12 zeigt beispielhafte Wellenformen 422, 424, 426 und 418 von Signalen auf der WL 220, dem Ladepfad 306, dem Ladepfad 308 bzw. des Ausgangssignals 205-1 sowie eine Wellenform 430 des Aktivierungssignals 351, die dem in 11 gezeigten Beispiel entsprechen. Insbesondere kann während eines bestimmten Zeitraums während des Betriebs des Speicherbausteins 200 (2) die Wellenform 422 das Signal im Zeitverlauf auf der WL 220 darstellen, die Wellenform 424 kann das Signal (den Spannungspegel) im Zeitverlauf auf dem Ladepfad 306 darstellen, die Wellenform 426 kann das Signal (den Spannungspegel) im Zeitverlauf auf dem Ladepfad 308 darstellen, die Wellenform 428 kann das Aktivierungssignal 351 im Zeitverlauf darstellen, und die Wellenform 430 kann das Ausgangssignal 205-1 im Zeitverlauf darstellen.
  • Wie bei der Ausführungsform von 12 gezeigt ist, werden zum Zeitpunkt t0 die BLs 222 und 232 auf Vdd vorgeladen. Zum Zeitpunkt t1 wird die WL 220 von dem Zeilendecoder 208 (2) aktiviert und sie beginnt daher, von einem logischen Low-Zustand zu einem logischen High-Zustand zu gehen. Wenn zum Zeitpunkt t2 die jeweiligen Leseverstärker 212-1 und 212-2 der E/A-Schaltung 212 auf die Zellen 221 und 231 zugreifen (sie lesen), werden die Entladepfade 302 und 304, wie vorstehend dargelegt, erzeugt. Dadurch beginnen die Spannungspegel der BLs 222 und 232, von Vdd abwärts zu rampen. Wie vorstehend dargelegt worden ist, wird jeder Entladepfad von einem oder mehreren Transistoren gebildet, die (auf Grund der Herstellungsvarianz) an sich und/oder äußerlich voneinander verschieden sind, sodass jeder Entladepfad eine individuelle Entladegeschwindigkeit haben kann. Wie in 12 gezeigt ist, haben die Wellenformen 424 und 426 jeweils eine Flanke (d. h., eine jeweilige Entladegeschwindigkeit).
  • Wenn, wie in 12 gezeigt ist, zum Zeitpunkt t3 beide Spannungspegel auf den BLs 222 und 232 unter einen Triggerpegel 423 des NOR-Gates 310' gefallen sind, wird das NOR-Gate 310' von einem Low-Zustand zu einem High-Zustand getriggert, sodass das Aktivierungssignal 351 initiiert wird, das als Wellenform 428 gezeigt ist. Nachdem das Aktivierungssignal 351 getriggert worden ist, beginnt bei einigen Ausführungsformen der Leseverstärker 204-1 mit der Detektion der Differenz zwischen den Entladegeschwindigkeiten der Entladepfade 302 und 304 (über die BLs 222 und 232), sodass die in 12 gezeigten Q- und QB-Ausgangssignale erzeugt werden. Der Zeitpunkt t4 zeigt den Punkt, an dem die Q- und QB-Ausgangssignale zu einem Punkt umgelenkt worden sind, an dem das Q-Ausgangssignal einen logischen Low-Zustand erreicht und das QB-Ausgangssignal einen logischen High-Zustand erreicht, worauf das NOR-Aktivierungssignal in einen Low-Zustand geht und das Leseverstärker-Aktivierungssignal 351 (Wellenform 428) in einen logischen Low-Zustand geht. Der Leseverstärker 204-1 kann dann das Ausgangssignal als eine logische Null (430-1) oder eine logische Eins (430-2) bereitstellen.
  • 13 zeigt ein weiteres Beispiel für die Speicherzellen 221 und 231 und den mit diesen verbundenen Leseverstärker 204-1' zusammen mit einem noch weiteren Beispiel für eine Steuereinheit 210''', die das Leseverstärker-Aktivierungssignal 351 erzeugt, das mit dem Leseverstärker 204-1' empfangen wird. Ähnlich wie bei der Ausführungsform, die in Verbindung mit 11 beschrieben worden ist, umfasst in dem in 13 gezeigten Beispiel das Ausgangssignal des Leseverstärkers 204-1' ein Q- und ein QB-Ausgangssignal. Die in 13 gezeigte Steuereinheit 210'" weist ein UND-Gate 311' auf, das einen ersten und einen zweiten Eingangsanschluss hat, die mit den BLs 222-1 und 232-1 verbunden sind, sodass das UND-Gate 311' die gleichen Eingangssignale wie der Leseverstärker 204-1 empfängt. Das Ausgangssignal des UND-Gates 311' ist das Aktivierungssignal 351, das an den Leseverstärker 204-1 ausgegeben wird. Außerdem weist das UND-Gate 311' einen Aktivierungsanschluss 326 auf, der ein UND-Aktivierungssignal empfängt, das von einem XOR-Gate 328 ausgegeben wird. Das XOR-Gate 328 empfängt als seine Eingangssignale die Q- und QB-Ausgangssignale des Leseverstärkers 204-1'.
  • 14 zeigt beispielhafte Wellenformen 432, 434, 436 und 438 von Signalen auf der WL 220, dem Ladepfad 306, dem Ladepfad 308 bzw. des Ausgangssignals 205-1 sowie eine Wellenform 440 des Aktivierungssignals 351, die von dem in 13 gezeigten Beispiel erzeugt werden. Insbesondere kann während eines bestimmten Zeitraums während des Betriebs des Speicherbausteins 200 (2) die Wellenform 432 das Signal im Zeitverlauf auf der WL 220 darstellen, die Wellenform 434 kann das Signal (den Spannungspegel) im Zeitverlauf auf dem Ladepfad 306 darstellen, die Wellenform 436 kann das Signal (den Spannungspegel) im Zeitverlauf auf dem Ladepfad 308 darstellen, die Wellenform 438 kann das Aktivierungssignal 351 im Zeitverlauf darstellen, und die Wellenform 440 kann das Ausgangssignal 205-1 im Zeitverlauf darstellen.
  • Wie bei der Ausführungsform von 14 gezeigt ist, werden zum Zeitpunkt t0 die BLs 222 und 232 auf Masse vorentladen. Zum Zeitpunkt t1 wird die WL 220 von dem Zeilendecoder 208 (2) aktiviert und daher beginnt die Wellenform 432, von einem logischen Low-Zustand zu einem logischen High-Zustand zu gehen. Wenn zum Zeitpunkt t2 die jeweiligen Leseverstärker 212-1 und 212-2 der E/A-Schaltung 212 auf die Zellen 221 und 231 zugreifen (sie lesen), werden die Ladepfade 306 und 308, wie vorstehend dargelegt, erzeugt. Dadurch beginnen die Spannungspegel der BLs 222 und 232, von Masse aufwärts zu rampen. Wie vorstehend dargelegt worden ist, wird jeder Ladepfad von einem oder mehreren Transistoren gebildet, die (auf Grund der Herstellungsvarianz) an sich und/oder äußerlich voneinander verschieden sind, sodass jeder Ladepfad eine individuelle Ladegeschwindigkeit haben kann. Wie in 14 gezeigt ist, haben die Wellenformen 434 und 436 jeweils eine Flanke (d. h., eine jeweilige Ladegeschwindigkeit).
  • Wenn zum Zeitpunkt t3 beide Spannungspegel auf den BLs 222 und 232 (Wellenformen 434 und 436) über einen Triggerpegel 433 des UND-Gates 311' gestiegen sind, wird das Aktivierungssignal 351, das durch die Wellenform 438 dargestellt ist, von einem logischen Low-Zustand zu einem logischen High-Zustand getriggert. Nachdem das Aktivierungssignal 351 getriggert worden ist, beginnt der Leseverstärker 204-1 mit der Detektion der Differenz zwischen den Ladegeschwindigkeiten der Ladepfade 306 und 308 (über die BLs 222 und 232), sodass die in 14 gezeigten Q- und QB-Ausgangssignale erzeugt werden. Der Zeitpunkt t4 zeigt den Punkt, an dem die Q- und QB-Ausgangssignale zu einem Punkt umgelenkt worden sind, an dem das Q-Ausgangssignal einen logischen Low-Zustand erreicht und das QB-Ausgangssignal einen logischen High-Zustand erreicht, worauf das UND-Aktivierungssignal in einen Low-Zustand geht und das Leseverstärker-Aktivierungssignal 351 (Wellenform 438) in einen logischen Low-Zustand geht. Der Leseverstärker 204-1' kann dann das Ausgangssignal als eine logische Null (440-1) oder eine logische Eins (440-2) bereitstellen.
  • 15 ist ein Ablaufdiagramm, das ein Beispiel für ein Verfahren 500 zur Erzeugung einer PUF-Signatur zeigt, wie etwa für die SRAM-Zellenmatrix von 2, gemäß verschiedenen Ausführungsformen. Bei einigen Ausführungsformen werden die Schritte des Verfahrens 500 mit verschiedenen Komponenten der hier erläuterten Ausführungsformen ausgeführt.
  • Zur Erörterung wird die folgende Ausführungsform des Verfahrens 500 in Verbindung mit den 2 bis 4B beschrieben. Die dargestellte Ausführungsform des Verfahrens 500 ist lediglich ein Beispiel, sodass einer der mehreren verschiedenen Schritte weggelassen, in einer anderen Reihenfolge ausgeführt und/oder hinzugefügt werden kann, was immer noch innerhalb des Schutzumfangs der vorliegenden Erfindung liegt.
  • Das Verfahren beginnt mit dem Schritt 510, in dem eine Speicherzellenmatrix, wie etwa die in 2 gezeigte SRAM-Zellenmatrix 202, bereitgestellt wird. Wie vorstehend dargelegt worden ist, kann ein Datenbit (entweder eine logische Eins oder eine logische Null) in jede der Zellen der Matrix 202 geschrieben werden. Auf Grund des logischen Zustands des Datenbits (d. h. entweder eine logische Eins oder eine logische Null), das in die Zellen geschrieben wird, können die Bitleitungen der Speicherzellen auf Vdd vorgeladen oder auf Masse vorentladen werden. Im Schritt 512 aktiviert der Zeilendecoder eine WL der Speicherzellenmatrix auf Grund einer empfangenen Zeilenadresse. Bei einigen Ausführungsformen kann diese Zeilenadresse von der Steuerlogik 214 bereitgestellt werden. Im Schritt 514 werden beim Aktivieren der WL für die empfangene Zeilenadresse die Signale auf den Bitleitungen von zwei Speicherzellen der Speichermatrix zum Beispiel mit der in 3 gezeigten Steuereinheit 210 überwacht. Wie in dem Entscheidungsblock 516 angegeben ist, werden die BL-Signale so lange überwacht, bis sie einen festgelegten Pegel erreichen. Gemäß einigen hier beschriebenen Beispielen ist der festgelegte Pegel der Triggerpegel des NOR- oder des UND-Gates der verschiedenen Steuereinheiten 210, die hier gezeigt sind.
  • Wenn die BL-Signale den festgelegten Pegel erreicht haben, beginnt der Leseverstärker (z. B. 204-1, 204-2, 204-3 und 204-4) der Authentifizierungsschaltung 204 mit dem Vergleich der Lesegeschwindigkeiten (d. h., der Entlade- oder Ladegeschwindigkeiten) von zwei Zellen in der aktivierten Zeile /WL, wie im Schritt 518 angegeben. Zum Beispiel kann der Leseverstärker (z. B. 204-1) der Authentifizierungsschaltung 204 die Entladegeschwindigkeiten von zwei im Wesentlichen benachbarten Zellen (z. B. 221 und 231) vergleichen. Wenn der logische Zustand der in die Zellen geschriebenen Datenbits eine logische Null ist, werden die BLs und BLBs auf Masse vorentladen. Dadurch kann der Leseverstärker (z. B. 204-1) der Authentifizierungsschaltung 204 die Ladegeschwindigkeiten dieser zwei im Wesentlichen benachbarten Zellen (z. B. 221 und 231) vergleichen.
  • Im Schritt 520 erzeugt der Leseverstärker der Authentifizierungsschaltung 204 ein Ausgabebit für eine PUF-Signatur auf Grund des Vergleichs der Entlade- oder Ladegeschwindigkeiten. Bei einigen Ausführungsformen können die Leseverstärker (z. B. 204-1, 204-2, 204-3 und 204-4) der Authentifizierungsschaltung 204 jeweils gleichzeitig ein Ausgabebit für die PUF-Signatur auf Grund des jeweiligen Vergleichs der Entlade- oder Ladegeschwindigkeiten in den mit ihr verbundenen Zellen erzeugen. Daher kann für eine aktivierte Zeile/WL eine erste Mehrzahl von Ausgabebits für die PUF-Signatur erzeugt werden. Bei einigen Ausführungsformen kann das Verfahren 500 wieder zum Schritt 512 zurückgehen, in dem eine oder mehrere weitere WLs aktiviert werden, um weitere Ausgabebits für die PUF-Signatur zu erzeugen.
  • Unter anderem werden durch Steuern der Leseverstärker 204-1, 204-2, 204-3 und 204-4 auf Grund der Signale auf den jeweiligen BLs Änderungen der BL-Zugriffsgeschwindigkeit besser toleriert und eine stabilere Lesespanne für die BLs wird ermöglicht. Offenbarte Ausführungsformen umfassen einen Speicherbaustein, wie etwa einen SRAM-Speicher, der eine Speicherzellenmatrix mit einer Mehrzahl von Speicherzellen hat. Jede der Mehrzahl von Speicherzellen ist derart eingerichtet, dass sie in einem Datenzustand ist. Ein PUF-Generator weist einen Leseverstärker auf, der mit der Mehrzahl von Speicherzellen verbunden ist. Der Leseverstärker ist derart eingerichtet, dass er während eines Zugriffs auf die Mehrzahl von Speicherzellen die Zugriffsgeschwindigkeiten für eine erste und eine zweite Speicherzelle der Mehrzahl von Speicherzellen vergleicht. Auf Grund des Vergleichs wird ein erstes Ausgangssignal zum Erzeugen einer PUF-Signatur bereitgestellt. Eine Steuereinheit ist mit der Mehrzahl von Speicherzellen verbunden und ist derart eingerichtet, dass sie ein Aktivierungssignal an den Leseverstärker auf Grund eines jeweiligen ersten und zweiten Signals ausgibt, die von der ersten bzw. der zweiten Speicherzelle empfangen werden.
  • Weitere Ausführungsformen umfassen einen PUF-Generator, der einen Leseverstärker mit einem ersten Eingangsanschluss, der derart eingerichtet ist, dass er ein Signal von einer ersten Speicherzelle einer Mehrzahl von Speicherzellen empfängt, und mit einem zweiten Eingangsanschluss aufweist, der derart eingerichtet ist, dass er ein Signal von einer zweiten Speicherzelle der Mehrzahl von Speicherzellen empfängt. Der Leseverstärker ist derart eingerichtet, dass er Zugriffsgeschwindigkeiten der ersten und der zweiten Speicherzelle der Mehrzahl von Speicherzellen vergleicht und auf Grund des Vergleichs ein erstes Ausgangssignal zum Erzeugen einer PUF-Signatur bereitstellt. Eine Steuereinheit ist derart eingerichtet, dass sie ein Aktivierungssignal an den Leseverstärker ausgibt. Die Steuereinheit weist einen ersten Eingangsanschluss, der derart eingerichtet ist, dass er ein Signal von einer Bitleitung der ersten Speicherzelle empfängt, und einen zweiten Eingangsanschluss auf, der derart eingerichtet ist, dass er ein Signal von einer Bitleitung der zweiten Speicherzelle empfängt.
  • Weitere Ausführungsformen umfassen ein Verfahren zum Erzeugen einer PUF-Signatur. Das Verfahren umfasst das Bereitstellen einer Speicherzellenmatrix, die eine Mehrzahl von Speicherzellen umfasst, die jeweils derart eingerichtet sind, dass sie in einem Datenzustand sind. Die Speicherzellenmatrix umfasst mindestens eine erste und eine zweite Speicherzelle mit einer ersten bzw. einer zweiten Bitleitung. Zugriffsgeschwindigkeiten der ersten und der zweiten Speicherzelle werden in Reaktion darauf verglichen, dass das erste und zweite Signal auf der ersten bzw. der zweiten Bitleitung jeweils einen festgelegten Pegel erreichen. Auf Grund des Vergleichs der Zugriffsgeschwindigkeiten der ersten und der zweiten Speicherzelle wird ein Ausgangssignal zum Erzeugen einer PUF-Signatur bereitgestellt.
  • Vorstehend sind Merkmale verschiedener Ausführungsformen beschrieben worden, sodass Fachleute die Aspekte der vorliegenden Erfindung besser verstehen können. Fachleuten dürfte klar sein, dass sie die vorliegende Erfindung ohne Weiteres als eine Grundlage zum Gestalten oder Modifizieren anderer Verfahren und Strukturen zum Erreichen der gleichen Ziele und/oder zum Erzielen der gleichen Vorzüge wie bei den hier vorgestellten Ausführungsformen verwenden können. Fachleute dürften ebenfalls erkennen, dass solche äquivalenten Auslegungen nicht von dem Grundgedanken und Schutzumfang der vorliegenden Erfindung abweichen und dass sie hier verschiedene Änderungen, Ersetzungen und Abwandlungen vornehmen können, ohne von dem Grundgedanken und Schutzumfang der vorliegenden Erfindung abzuweichen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 62/546726 [0001]

Claims (20)

  1. Speicherbaustein mit: einer Speicherzellenmatrix mit einer Mehrzahl von Speicherzellen, wobei jede der Mehrzahl von Speicherzellen derart eingerichtet, dass sie in einem Datenzustand ist; und einem PUF-Generator (PUF: Physically Unclonable Function), der Folgendes aufweist: einen ersten Leseverstärker, der mit der Mehrzahl von Speicherzellen verbunden ist, wobei der erste Leseverstärker derart eingerichtet ist, dass er während eines Zugriffs auf die Mehrzahl von Speicherzellen Zugriffsgeschwindigkeiten einer ersten und einer zweiten Speicherzelle der Mehrzahl von Speicherzellen vergleicht und auf Grund des Vergleichs ein erstes Ausgangssignal zum Erzeugen einer PUF-Signatur bereitstellt, und eine erste Steuereinheit, die mit der Mehrzahl von Speicherzellen verbunden ist, wobei die erste Steuereinheit derart eingerichtet ist, dass sie ein Aktivierungssignal an den ersten Leseverstärker auf Grundlage eines jeweiligen ersten und zweiten Signals ausgibt, die von der ersten bzw. der zweiten Speicherzelle empfangen werden.
  2. Speicherbaustein nach Anspruch 1, wobei der erste Leseverstärker einen ersten Eingangsanschluss, der mit einer Bitleitung der ersten Speicherzelle verbunden ist, und einen zweiten Eingangsanschluss aufweist, der mit einer Bitleitung der zweiten Speicherzelle verbunden ist, und die erste Steuereinheit einen ersten Eingangsanschluss, der mit der Bitleitung der ersten Speicherzelle verbunden ist, und einen zweiten Eingangsanschluss aufweist, der mit der Bitleitung der zweiten Speicherzelle verbunden ist.
  3. Speicherbaustein nach Anspruch 2, wobei die erste Steuereinheit derart eingerichtet ist, dass sie das Aktivierungssignal in Reaktion darauf erzeugt, dass das jeweilige erste und zweite Signal auf der ersten bzw. der zweiten Bitleitung jeweils einen ersten festgelegten Pegel erreichen.
  4. Speicherbaustein nach Anspruch 2 oder 3, wobei die erste Steuereinheit derart eingerichtet ist, dass sie das Aktivierungssignal mit einem Impuls mit einer ansteigenden Flanke auf Grund dessen erzeugt, dass das jeweilige erste und zweite Signal auf der ersten bzw. der zweiten Bitleitung jeweils einen ersten festgelegten Pegel erreichen.
  5. Speicherbaustein nach Anspruch 4, wobei die erste Steuereinheit derart eingerichtet ist, dass sie das Aktivierungssignal mit dem Impuls mit einer abfallenden Flanke auf Grund dessen erzeugt, dass das erste und zweite Signal jeweils einen zweiten festgelegten Pegel erreichen.
  6. Speicherbaustein nach Anspruch 4 oder 5, wobei die erste Steuereinheit derart eingerichtet, dass sie das Aktivierungssignal mit dem Impuls mit einer abfallenden Flanke auf Grundlage eines Ausgangssignals des ersten Leseverstärkers erzeugt.
  7. Speicherbaustein nach einem der Ansprüche 2 bis 6, wobei die erste Steuereinheit Folgendes aufweist: ein NOR-Gate mit dem ersten und dem zweiten Eingangsanschluss der ersten Steuereinheit; und einen Impulsgenerator, der derart eingerichtet ist, dass er das Aktivierungssignal in Reaktion auf ein Ausgangssignal des NOR-Gates erzeugt.
  8. Speicherbaustein nach einem der Ansprüche 2 bis 6, wobei die erste Steuereinheit Folgendes aufweist: ein UND-Gate mit dem ersten und dem zweiten Eingangsanschluss der ersten Steuereinheit; und einen Impulsgenerator, der derart eingerichtet ist, dass er das Aktivierungssignal in Reaktion auf ein Ausgangssignal des UND-Gates erzeugt.
  9. Speicherbaustein nach einem der vorhergehenden Ansprüche, wobei der PUF-Generator weiterhin Folgendes aufweist: einen zweiten Leseverstärker, der mit der Mehrzahl von Speicherzellen verbunden ist, wobei der zweite Leseverstärker derart eingerichtet ist, dass er während eines Zugriffs auf die Mehrzahl von Speicherzellen Zugriffsgeschwindigkeiten einer dritten und einer vierten Speicherzelle der Mehrzahl von Speicherzellen, die im Wesentlichen zueinander benachbart sind, vergleicht und auf Grund des Vergleichs ein zweites Ausgangssignal zum Erzeugen der ersten PUF-Signatur bereitstellt; und eine zweite Steuereinheit, die mit der Mehrzahl von Speicherzellen verbunden ist, wobei die zweite Steuereinheit derart eingerichtet ist, dass sie ein Aktivierungssignal an den zweiten Leseverstärker auf Grundlage eines jeweiligen ersten und zweiten Signals ausgibt, die von der dritten bzw. der vierten Speicherzelle empfangen werden.
  10. Speicherbaustein nach einem der Ansprüche 1 bis 8, wobei der PUF-Generator weiterhin Folgendes aufweist: einen zweiten Leseverstärker, der mit der Mehrzahl von Speicherzellen verbunden ist, wobei der zweite Leseverstärker derart eingerichtet ist, dass er während des Zugriffs auf die Mehrzahl von Speicherzellen Zugriffsgeschwindigkeiten der dritten und der vierten Speicherzelle der Mehrzahl von Speicherzellen, die im Wesentlichen zueinander benachbart sind, vergleicht und auf Grund des Vergleichs ein zweites Ausgangssignal zum Erzeugen der ersten PUF-Signatur bereitstellt, wobei die erste Steuereinheit derart eingerichtet ist, dass sie das Aktivierungssignal an den zweiten Leseverstärker auf Grundlage des jeweiligen ersten und zweiten Signals ausgibt, die von der ersten bzw. der zweiten Speicherzelle empfangen werden.
  11. PUF-Generator (PUF: Physically Unclonable Function) mit: einem ersten Leseverstärker, der einen ersten Eingangsanschluss, der derart eingerichtet ist, dass er ein Signal von einer ersten Speicherzelle einer Mehrzahl von Speicherzellen empfängt, und einen zweiten Eingangsanschluss aufweist, der derart eingerichtet ist, dass er ein Signal von einer zweiten Speicherzelle der Mehrzahl von Speicherzellen empfängt, wobei der Leseverstärker derart eingerichtet ist, dass er Zugriffsgeschwindigkeiten der ersten und der zweiten Speicherzelle der Mehrzahl von Speicherzellen vergleicht und auf Grundlage des Vergleichs ein erstes Ausgangssignal zum Erzeugen einer PUF-Signatur bereitstellt; und einer ersten Steuereinheit, die derart eingerichtet ist, dass sie ein Aktivierungssignal an den ersten Leseverstärker ausgibt, wobei die erste Steuereinheit einen ersten Eingangsanschluss, der derart eingerichtet ist, dass er ein Signal von einer Bitleitung der ersten Speicherzelle empfängt, und einen zweiten Eingangsanschluss aufweist, der derart eingerichtet ist, dass er ein Signal von einer Bitleitung der zweiten Speicherzelle empfängt.
  12. PUF-Generator nach Anspruch 11, der weiterhin Folgendes aufweist: einen zweiten Leseverstärker, der einen ersten Eingangsanschluss, der derart eingerichtet ist, dass er ein Signal von einer dritten Speicherzelle der Mehrzahl von Speicherzellen empfängt, und einen zweiten Eingangsanschluss aufweist, der derart eingerichtet ist, dass er ein Signal von einer vierten Speicherzelle der Mehrzahl von Speicherzellen empfängt, wobei der zweite Leseverstärker derart eingerichtet ist, dass er Zugriffsgeschwindigkeiten der dritten und der vierten Speicherzelle der Mehrzahl von Speicherzellen vergleicht und auf Grundlage des Vergleichs ein zweites Ausgangssignal zum Erzeugen der PUF-Signatur bereitstellt; und eine zweite Steuereinheit, die derart eingerichtet ist, dass sie ein Aktivierungssignal an den zweiten Leseverstärker ausgibt, wobei die zweite Steuereinheit einen ersten Eingangsanschluss, der derart eingerichtet ist, dass er ein Signal von einer Bitleitung der dritten Speicherzelle empfängt, und einen zweiten Eingangsanschluss aufweist, der derart eingerichtet ist, dass er ein Signal von einer Bitleitung der vierten Speicherzelle empfängt.
  13. PUF-Generator nach Anspruch 11, der weiterhin Folgendes aufweist: einen zweiten Leseverstärker, der einen ersten Eingangsanschluss, der derart eingerichtet ist, dass er ein Signal von einer dritten Speicherzelle der Mehrzahl von Speicherzellen empfängt, und einen zweiten Eingangsanschluss aufweist, der derart eingerichtet ist, dass er ein Signal von einer vierten Speicherzelle der Mehrzahl von Speicherzellen empfängt, wobei der zweite Leseverstärker derart eingerichtet ist, dass er Zugriffsgeschwindigkeiten der dritten und der vierten Speicherzelle der Mehrzahl von Speicherzellen vergleicht und auf Grundlage des Vergleichs ein zweites Ausgangssignal zum Erzeugen der PUF-Signatur bereitstellt, wobei die erste Steuereinheit derart eingerichtet ist, dass sie das Aktivierungssignal an den zweiten Leseverstärker ausgibt.
  14. PUF-Generator nach einem der Ansprüche 11 bis 13, wobei die erste Steuereinheit derart eingerichtet ist, dass sie das Aktivierungssignal in Reaktion darauf erzeugt, dass das jeweilige erste und zweite Signal auf der ersten bzw. der zweiten Bitleitung jeweils einen ersten festgelegten Pegel erreichen, und die zweite Steuereinheit derart eingerichtet ist, dass sie das Aktivierungssignal in Reaktion darauf erzeugt, dass das jeweilige dritte und vierte Signal auf der dritten bzw. der vierten Bitleitung jeweils den ersten festgelegten Pegel erreichen.
  15. PUF-Generator nach einem der Ansprüche 11 bis 13, wobei die erste Steuereinheit derart eingerichtet ist, dass sie das Aktivierungssignal in Reaktion darauf erzeugt, dass das jeweilige erste und zweite Signal auf der ersten bzw. der zweiten Bitleitung jeweils einen ersten festgelegten Pegel erreichen, und die zweite Steuereinheit derart eingerichtet ist, dass sie das Aktivierungssignal in Reaktion darauf erzeugt, dass das jeweilige erste und zweite Signal auf der ersten bzw. der zweiten Bitleitung jeweils den ersten festgelegten Pegel erreichen.
  16. Verfahren zum Erzeugen einer PUF-Signatur (PUF: Physically Unclonable Function) mit den folgenden Schritten: Bereitstellen einer Speicherzellenmatrix, die eine Mehrzahl von Speicherzellen umfasst, wobei jede der Mehrzahl von Speicherzellen derart eingerichtet ist, dass sie in einem Datenzustand ist, wobei die Speicherzellenmatrix eine erste und eine zweite Speicherzelle mit einer ersten bzw. einer zweiten Bitleitung aufweist; Vergleichen von Zugriffsgeschwindigkeiten der ersten und der zweiten Speicherzelle in Reaktion darauf, dass ein jeweiliges erstes und zweites Signal auf der ersten bzw. der zweiten Bitleitung jeweils einen festgelegten Pegel erreichen; und Bereitstellen eines ersten Ausgangssignals zum Erzeugen einer PUF-Signatur auf Grundlage des Vergleichs der Zugriffsgeschwindigkeiten der ersten und der zweiten Speicherzelle.
  17. Verfahren nach Anspruch 16, wobei die Speicherzellenmatrix eine dritte und eine vierte Speicherzelle mit einer dritten bzw. einer vierten Bitleitung aufweist, wobei das Verfahren weiterhin Folgendes umfasst: Vergleichen von Zugriffsgeschwindigkeiten der dritten und der vierten Speicherzelle in Reaktion darauf, dass ein jeweiliges drittes und viertes Signal auf der dritten bzw. der vierten Bitleitung jeweils den festgelegten Pegel erreichen; und Bereitstellen eines zweiten Ausgangssignals zum Erzeugen der PUF-Signatur auf Grundlage des Vergleichs der Zugriffsgeschwindigkeiten der dritten und der vierten Speicherzelle.
  18. Verfahren nach Anspruch 16, wobei die Speicherzellenmatrix eine dritte und eine vierte Speicherzelle mit einer dritten bzw. einer vierten Bitleitung aufweist, wobei das Verfahren weiterhin Folgendes umfasst: Vergleichen von Zugriffsgeschwindigkeiten der dritten und der vierten Speicherzelle in Reaktion darauf, dass das erste und das zweite Signal auf der ersten bzw. der zweiten Bitleitung jeweils den festgelegten Pegel erreichen; und Bereitstellen eines zweiten Ausgangssignals zum Erzeugen der PUF-Signatur auf Grundlage des Vergleichs der Zugriffsgeschwindigkeiten der dritten und der vierten Speicherzelle.
  19. Verfahren nach einem der Ansprüche 16 bis 18, das weiterhin das Vorladen der ersten und der zweiten Bitleitung auf einen festgelegten Vorladepegel vor dem Vergleichen der Zugriffsgeschwindigkeiten umfasst.
  20. Verfahren nach einem der Ansprüche 16 bis 18, das weiterhin das Vorentladen der ersten und der zweiten Bitleitung auf einen festgelegten Vorentladepegel vor dem Vergleichen der Zugriffsgeschwindigkeiten umfasst.
DE102018118782.3A 2017-08-17 2018-08-02 Erzeugung einer Physically Unclonable Function (PUF) Pending DE102018118782A1 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762546726P 2017-08-17 2017-08-17
US62/546,726 2017-08-17
US16/045,066 2018-07-25
US16/045,066 US11196574B2 (en) 2017-08-17 2018-07-25 Physically unclonable function (PUF) generation

Publications (1)

Publication Number Publication Date
DE102018118782A1 true DE102018118782A1 (de) 2019-02-21

Family

ID=65235347

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018118782.3A Pending DE102018118782A1 (de) 2017-08-17 2018-08-02 Erzeugung einer Physically Unclonable Function (PUF)

Country Status (1)

Country Link
DE (1) DE102018118782A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019123539B4 (de) 2019-09-03 2024-06-20 Infineon Technologies Ag Halbleiterchip

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019123539B4 (de) 2019-09-03 2024-06-20 Infineon Technologies Ag Halbleiterchip

Similar Documents

Publication Publication Date Title
DE19859494C2 (de) Nichtflüchtiger Mehrebenen-Halbleiterspeicherbaustein mit einer Schaltung zum Einstellen der Datenlesezeit
DE102010024622B4 (de) Identifikationsschaltung und Verfahren zum Erzeugen eines Identifikationsbits
DE4232025C2 (de) Elektrisch löschbarer und programmierbarer nichtflüchtiger Halbleiterspeicher mit automatischem Schreibprüfungs-Controller
DE2430690C3 (de) Integrierter Halbleiterspeicher
DE2659248A1 (de) Dynamisches speichersystem mit wahlfreiem zugriff
DE4443967A1 (de) Halbleiterspeichereinrichtung mit einer erweiterten Datenausgabefunktion
US11170839B2 (en) Programming non-volatile memory arrays with automatic programming pulse amplitude adjustment using current-limiting circuits
DE112016000654T5 (de) Mehrzustands-Programmierung für nichtflüchtigen Speicher
DE2635028A1 (de) Auf einem halbleiterplaettchen integriertes speichersystem
DE10042388B4 (de) Nichtflüchtiger ferroelektrischer Speicher
DE102016121136A1 (de) Halbleiterspeicher
DE2647892A1 (de) Eingabepufferschaltung
DE4333765A1 (de) Halbleiterspeichervorrichtung
DE2707456A1 (de) Dynamischer ram-speicher/direktzugriffspeicher
DE2614297A1 (de) Mos-speicher
DE102016125404A1 (de) Dual-rail-speicher, speichermakro und zugehöriges hybrides stromversorgungsverfahren
EP0282976A1 (de) Verfahren und Schaltungsanordnung zum parallelen Einschreiben von Daten in einen Halbleiterspeicher
DE3939849A1 (de) Halbleiterspeichereinrichtung mit einem geteilten leseverstaerker und verfahren zu deren betrieb
DE102004045903A1 (de) Schaltungsanordnung und Verfahren zum Schalten von Hochspannungssignalen mit Niederspannungssignalen
DE102018118782A1 (de) Erzeugung einer Physically Unclonable Function (PUF)
DE102019103746A1 (de) Speicher-Leseverstärker mit Vorladung
DE102018128927B4 (de) Wortleitungsaktivierung für eine variable Verzögerung
DE2205566A1 (de) Integrierte bistabile Schaltung
DE1960598A1 (de) MOS-Schnellesespeicher
DE10217290B4 (de) Verfahren zum Schreiben in einen RAM mit Spaltenlöschung

Legal Events

Date Code Title Description
R012 Request for examination validly filed