MCU Reverse Engineering

Mikrocontroller entsperren – MikaTech

Unsere Werte und Ziele

Über MikaTech

Die Zeit verging schnell – vom ersten MCU-Reverse-Engineering-Projekt mit einem 8051 im Jahr 1998 bis zur Einrichtung unseres Millionen-Dollar-Reverse-Engineering-Labors im Jahr 2012 vergingen 14 Jahre. Heute starten wir unser neues Geschäftsfeld der eingebetteten visuellen Systementwicklung und hoffen, weitere 10 Jahre dienen zu können.

Unterschrift Peter Lee Mitgründer & CEO

AMD Mikrocontroller-Hack

Advanced Micro Devices, Inc. (AMD) ist ein US-amerikanisches multinationales (seit der Ausgliederung von GlobalFoundries im Jahr 2009 fabless) Halbleiterunternehmen mit Sitz in Sunnyvale, Kalifornien. Es entwickelt Computerprozessoren und verwandte Technologien für den kommerziellen und privaten Markt. Zu den Hauptprodukten gehören Mikroprozessoren, Chipsätze für Motherboards, eingebettete Prozessoren und Grafikprozessoren für Server, Workstations, Personal Computer und eingebettete Systeme.


  • Mikatech AMD MCU Reverse-Engineering-Liste:

1. Klassische Fuse-Link TTL PAL-Serie (einmal programmierbar)

1.1 Kleine Low-I/O PALs

PAL10H8, PAL10L8, PAL10P8

PAL12H6, PAL12L6, PAL12P6

PAL14H4, PAL14L4, PAL14P4

PAL16C1, PAL16H2, PAL16L2, PAL16P2

PAL16H4, PAL16L4, PAL16P4

PAL16H6, PAL16L6, PAL16P6

PAL16H8, PAL16L8, PAL16P8

PAL16R4, PAL16R6, PAL16R8

PAL16RP4, PAL16RP6, PAL16RP8

PAL16X4, PAL16X6, PAL16X8

1.2 Mittelgroße 24-Pin PALs

PAL18H4, PAL18L4, PAL18P4

PAL20C1, PAL20H2, PAL20L2, PAL20P2

PAL20R4, PAL20R6, PAL20R8

PAL20X4, PAL20X6, PAL20X8

PAL20S10

PAL22V10 (fuse-basiert, original PAL22V10, nicht löschbar)

1.3 AmPAL High-Speed Advanced PAL Serie

AmPAL16P8, AmPAL20L10, AmPAL22P10, AmPAL22XP1

1.4 Wide-Bus PAL Serie

PAL32R16, PAL32X16

2. PALCE EE CMOS elektrisch löschbare SPLD (5V Kern, wiederprogrammierbar)

2.1 PALCE16V8 Familie (20-polig)

Basis: PALCE16V8

High-Speed-Variante: PALCE16V8H

Low-Power-Variante: PALCE16V8Q

Ultra-Low-Power: PALCE16V8Z

2.2 PALCE20V8 Familie (24-polig)

Basis: PALCE20V8

PALCE20V8H, PALCE20V8Q, PALCE20V8Z

2.3 PALCE22V10 Familie (24-polig, vielseitig 10 Makrozellen)

Basis: PALCE22V10

PALCE22V10H (High-Speed Standard-Power)

PALCE22V10Q (Low Quiescent Power)

PALCE22V10Z (Zero Standby Ultra-Low-Power)

2.4 PALCE24V10 Familie

PALCE24V10, PALCE24V10H, PALCE24V10Q

2.5 PALCE29M16 Large SPLD

PALCE29M16, PALCE29M16H, PALCE29M16Q

2.6 PALCE610 High-Density SPLD

PALCE610, PALCE610H

3. PALLV Low-Voltage 3.3V EE CMOS SPLD Serie

Niederspannungs-3.3V-löschbare PALs für Batterie- und tragbare Systeme

PALLV16V8, PALLV16V8H, PALLV16V8Q

PALLV20V8, PALLV20V8H, PALLV20V8Q

PALLV22V10, PALLV22V10H, PALLV22V10Q

4. MACH Serie AMD Vantis CPLDs (Multi-Makrozellen Complex PLDs)

MACH-Geräte sind Multi-Array-CPLDs mit mehreren PAL-Blöcken, ISP-kompatibel

MACH 1 Familie (geringe Dichte)

MACH110, MACH120, MACH130, MACH140

MACH 2 Familie (mittlere Dichte)

MACH210, MACH220, MACH230, MACH240, MACH250, MACH260, MACH270, MACH280

MACH 3 Familie (hohe Dichte)

MACH335, MACH345, MACH355, MACH365, MACH375, MACH385

MACH 4 / MACH 5 Große CPLDs

MACH435, MACH445, MACH455, MACH465

MACH510, MACH520, MACH530, MACH540, MACH550, MACH560

MACH LV Low-Voltage 3.3V CPLD-Varianten

MACH110LV, MACH120LV, MACH130LV, MACH140LV

MACH210LV ~ MACH280LV

MACH335LV ~ MACH385LV

MACH435LV ~ MACH465LV

MACH510LV ~ MACH560LV

5. AMD Post-Xilinx-Übernahme Adaptive PLD/FPGA Familien (moderne AMD programmierbare Logik)

Nach der Übernahme von Xilinx durch AMD im Jahr 2022 fallen alle Xilinx-FPGA/CPLD/SoC-Produkte unter das AMD-PLD/adaptive Logic-Portfolio, einschließlich:

5.1 CPLD Legacy-Linien (ehemals Xilinx)

XC9500, XC9500XL, XC9500XV

CoolRunner-II (XC2C000 Serie)

5.2 FPGA Familien (volle programmierbare Logik-Arrays)

Spartan-II, Spartan-IIE, Spartan-3 / 3E / 3A / 3A DSP, Spartan-6, Spartan-7, Spartan UltraScale+

Virtex, Virtex-E, Virtex-II / Virtex-II Pro, Virtex-4, Virtex-5, Virtex-6, Virtex-7

Kintex UltraScale, Virtex UltraScale

Kintex UltraScale+, Artix UltraScale+, Virtex UltraScale+

5.3 Zynq All Programmable SoC (FPGA + ARM CPU)

Zynq-7000 (XC7Z Serie)

Zynq UltraScale+ MPSoC (ZU EG/EV/RFSoC Serie)

5.4 Versal ACAP (7nm Next-Gen Adaptive Compute PLD)

Versal Prime, Versal Premium, Versal AI Edge, Versal RF, Versal Automotive

5.5 Ableitungsgrade

XA (Automotive AEC-Q100 qualifizierte PLD/FPGA)

XCE (EasyPath kostengünstige Produktions-PLD/FPGA-Varianten)

Einführung in die AMD PALCE Serie EE CMOS SPLDs

1. Allgemeine Beschreibung

PALCE steht für Programmable Array Logic, Electrically Erasable CMOS – eine Familie von Single-Chip-SPLDs (Simple Programmable Logic Devices), die von AMDs Vantis-Programmierlogikabteilung entwickelt wurde. Im Gegensatz zu früheren einmal sicherungsprogrammierbaren PAL-Chips verwenden PALCE-Geräte Floating-Gate-elektrisch-löschbare CMOS-Technologie und unterstützen wiederholtes Programmieren ohne UV-Licht. Sie folgen der klassischen Sum-of-Products-Architektur (programmierbares UND-Array + festes ODER-Array) und wurden entwickelt, um diskrete kleine und mittlere Logikschaltungen zu ersetzen, die Anzahl der Bauteile auf der Leiterplatte zu reduzieren und das Hardware-Design zu vereinfachen.

AMD übertrug sein PLD-Geschäft in den 1990er Jahren an Vantis, das 1999 vollständig von Lattice Semiconductor übernommen wurde. Lattice GAL-Serie Geräte sind vollständig pin-kompatible funktionale Ersatzteile für AMD PALCE-Chips.

2. Suffix-Definition & Gerätevarianten

Jedes Basis-PALCE-Modell ist in mehrere Leistungs-/Geschwindigkeitsvarianten unterteilt, die durch Suffixbuchstaben gekennzeichnet sind:

  1. Kein Suffix: Ursprüngliche Basisgeneration, ausgewogene Timing- und Leistungswerte, für Neudesigns veraltet
  2. H = High-Speed Standard Power: schnellste Laufzeit, höchste Betriebsfrequenz, für Hochgeschwindigkeits-Industrie- und Busanwendungen
  3. Q = Low Quiescent Current: extrem niedriger statischer Stromverbrauch, begrenzte schnelle Geschwindigkeitsklassen, für batteriebetriebene tragbare Systeme
  4. Z = Zero Standby Ultra-Low Power: Mikroampere-Standby-Strom für langlebige Batteriegeräte

Geschwindigkeitsangabe: -5, -7, -10, -15, -25, was 5 ns bis 25 ns Signalausbreitungsverzögerung bedeutet.

Vollständige Bestellnummer: PALCE[Modell][Suffix]-[Geschwindigkeit][Gehäuse][Temperatur]

3. Vollständige PALCE-Produktpalette

3.1 PALCE16V8 (20-polig, 8 Ausgangsmakrozellen)

Einstiegs-Universal-PALCE, Pin-kompatibel mit GAL16V8; ersetzt PAL16R8 Serie Fuse-PALs.

Varianten: PALCE16V8, PALCE16V8H, PALCE16V8Q, PALCE16V8Z

3.2 PALCE20V8 (24-polig, 8 Ausgangsmakrozellen)

Mittelgroßes 24-poliges Gerät, kompatibel mit GAL20V8, ersetzt PAL20R4/R6/R8.

Varianten: PALCE20V8, PALCE20V8H, PALCE20V8Q, PALCE20V8Z

3.3 PALCE22V10 (24-poliger Flaggschiff, 10 variable Makrozellen)

Das am weitesten verbreitete PALCE-Flaggschiff mit ungleicher Produktterm-Verteilung (8 bis 16 Produktterme pro Makrozelle) zur Implementierung komplexer mehrstelliger Boolescher Logik. Unterstützt PCI-konformes Timing mit -5/-7/-10 Geschwindigkeitsklassen, maximale externe Frequenz bis 142,8 MHz.

Varianten: PALCE22V10, PALCE22V10H, PALCE22V10Q, PALCE22V10Z

3.4 PALCE24V10

Erweitertes Eingangsressourcenmodell mit 10 konfigurierbaren Makrozellen für breite digitale Buslogik.

Varianten: PALCE24V10, PALCE24V10H, PALCE24V10Q

3.5 PALCE29M16

Hochdichtes großes SPLD mit 16 Makrozellen für komplexe sequenzielle und kombinatorische Logikintegration.

Varianten: PALCE29M16, PALCE29M16H, PALCE29M16Q

3.6 PALCE610

Hochkapazitäts-Wide-AND-Array PALCE für komplexe Decodierungs- und Arithmetiklogik.

Varianten: PALCE610, PALCE610H

4. Universelle Kernarchitektur-Merkmale

Alle PALCE-Geräte teilen die gleiche grundlegende Hardware-Architektur:

  1. CMOS-Eingangspuffer mit optionalen Pull-up-Widerständen, TTL/CMOS-Pegel kompatibel
  2. Elektrisch löschbares programmierbares UND-Matrix zur Erzeugung benutzerdefinierter Produktterme
  3. Festes ODER-Array zur Summierung mehrerer Produktterme in Ausgangsfunktionen
  4. Unabhängig rekonfigurierbare Ausgangsmakrozelle pro Kanal:
    1. Schaltbare kombinatorische oder registrierte Flip-Flop-Ausgabe
    2. Programmierbare aktive High/Low-Ausgangspolarität
  5. Globale gemeinsam genutzte Steuersignale: gemeinsamer Takt, asynchroner globaler Reset, synchroner globaler Preset
  6. Integrierter Power-On-Auto-Reset der Register für vorhersagbaren Startzustand

5. Elektrische Leistungsvergleich (H vs. Q Varianten)

Parameter

PALCExxVxxH High-Speed Version

PALCExxVxxQ Low-Power Version

Min. tPD

5ns (-5 Klasse)

10ns (-10 Klasse)

Max. fMAX

142,8 MHz

100 MHz

Typ. Icc statisch

90~140 mA

~55 mA

Verfügbare Geschwindigkeitsklassen

-5/-7/-10/-15/-25

nur -10/-15/-25

Hauptanwendung

Hochgeschwindigkeits-PCI-Bus, industrielle Zustandsmaschinen

Batteriebetriebene Handheld-Testgeräte

6. Anwendungsfelder

  1. Allzweck-Glue-Logik: Adressdekoder, Multiplexer, Signalkomparatoren
  2. Legacy-Computerhardware: Motherboard-Interrupt-Steuerung, Bus-Arbitrierung, Taktumschaltung
  3. Industrieautomation: SPS-Sequenzlogik, Motorsteuerungs-Zustandsmaschinen
  4. Tragbare batteriebetriebene Instrumente (bevorzugt Q/Z Low-Power-Varianten)
  5. PCI/ISA Legacy-Digitalschnittstellen
  6. Hilfslogik für FPGA- und Mikrocontrollersysteme
  7. Militär- und Luftfahrtausrüstung (industrielle/militärische Temperaturklasse H Modelle)

 

AMD ist der zweitgrößte globale Anbieter von Mikroprozessoren auf x86-Basis und einer der größten Anbieter von Grafikprozessoren. Das Unternehmen besitzt außerdem 8,6 % an Spansion, einem Anbieter von nichtflüchtigen Flash-Speichern.

AMD ist der einzige bedeutende Konkurrent von Intel auf dem Markt für (x86-basierte) PC-Zentralprozessoren. Seit der Übernahme von ATI im Jahr 2006 dominieren AMD und sein Konkurrent Nvidia den Markt für diskrete Grafikprozessoren (GPUs).

Unternehmensgeschichte

 

AMD-Hauptsitz in Sunnyvale, Kalifornien

AMD-Campus in Markham, Ontario, Kanada, ehemals ATI-Hauptsitz

AMD LEED-zertifizierter Lone Star Campus in Austin, Texas
Advanced Micro Devices wurde am 1. Mai 1969[7] von einer Gruppe ehemaliger Führungskräfte von Fairchild Semiconductor gegründet, darunter Jerry Sanders III, Ed Turney, John Carey, Sven Simonsen, Jack Gifford und drei Mitglieder von Giffords Team, Frank Botte, Jim Giles und Larry Stenger. Das Unternehmen begann als Hersteller von Logikchips und stieg 1975 in das RAM-Chip-Geschäft ein. Im selben Jahr brachte es einen Reverse-Engineered-Klon des Intel 8080 Mikroprozessors auf den Markt. In dieser Zeit entwarf und produzierte AMD auch eine Reihe von Bit-Slice-Prozessorelementen (Am2900, Am29116, Am293xx), die in verschiedenen Minicomputer-Designs verwendet wurden.
In dieser Zeit versuchte AMD, den vermeintlichen Wandel hin zu RISC mit dem eigenen AMD 29K Prozessor aufzugreifen und diversifizierte sich auch in Grafik- und Audiogeräte sowie EPROM-Speicher. In der Mitte der 1980er Jahre hatte AMD einige Erfolge mit dem AMD7910 und AMD7911 "World Chip" FSK-Modem, einem der ersten Multistandardgeräte, das sowohl Bell- als auch CCITT-Töne bei bis zu 1200 Baud Halbduplex oder 300/300 Vollduplex abdeckte. Der AMD 29K überlebte als eingebetteter Prozessor, und der AMD-Ableger Spansion stellt weiterhin Flash-Speicher her. AMD beschloss, den Fokus ausschließlich auf Intel-kompatible Mikroprozessoren und Flash-Speicher zu legen, was zu einem direkten Wettbewerb mit Intel bei x86-kompatiblen Prozessoren und den sekundären Flash-Speichermärkten führte.
AMD gab am 24. Juli 2006 die Übernahme von ATI Technologies bekannt. AMD zahlte 4,3 Milliarden US-Dollar in bar und 58 Millionen Aktien, insgesamt 5,4 Milliarden US-Dollar. Die Transaktion wurde am 25. Oktober 2006 abgeschlossen.[8] Seit 2010 werden alle Grafikprodukte des Unternehmens unter dem Markennamen AMD vermarktet.[9]
Im Dezember 2006 wurde berichtet, dass AMD zusammen mit dem Hauptkonkurrenten Nvidia Vorladungen vom Justizministerium wegen möglicher Kartellverstößen in der Grafikkartenindustrie erhielt, einschließlich Preisabsprachen.[10]
Im Oktober 2008 kündigte AMD Pläne an, die Fertigungsaktivitäten in Form eines milliardenschweren Joint Ventures mit der Advanced Technology Investment Co., einer von der Regierung Abu Dhabis gegründeten Investmentgesellschaft, auszugliedern. Das neue Unternehmen heißt GlobalFoundries Inc. Diese Partnerschaft ermöglicht es AMD, sich ausschließlich auf das Chipdesign zu konzentrieren.[11] Die Ausgliederung ging mit dem Verlust von etwa 1.000 Arbeitsplätzen einher, etwa 10 % der weltweiten Belegschaft von AMD.[12]
Im August 2011 gab AMD bekannt, dass der ehemalige Lenovo-Manager Rory Read als CEO zu AMD kommt und Dirk Meyer ablöst.[13]
Um Kosteneinsparungen zu erzielen und die Personalrevision zur Entwicklung von energieeffizienter Computerhardware zu unterstützen, kündigte AMD im November 2011 an, mehr als 10 % (1400) seiner Mitarbeiter in allen Abteilungen weltweit zu entlassen.[12] Diese Maßnahme sollte bis zum 1. Quartal 2012 abgeschlossen sein, die meisten Austritte erfolgten vor Weihnachten 2011.[12] AMD kündigte im Oktober 2012 an, weitere 15 % seiner Belegschaft zu entlassen, um die Kosten angesichts sinkender Umsätze zu senken.[14]
AMD übernahm Anfang 2012 den Low-Power-Server-Hersteller SeaMicro als Teil einer Strategie, verlorenen Marktanteil im Server-Chip-Markt zurückzugewinnen.[15]
Prozessormarkt-Historie

 

Früher AMD 8080 Prozessor (AMD AM9080ADC / C8080A), 1977

AMD D8086, 1978
Siehe auch: Liste der AMD-Mikroprozessoren
IBM PC und die x86-Architektur
Hauptartikel: Am286, Am386, Am486 und Am5x86
Im Februar 1982 unterzeichnete AMD einen Vertrag mit Intel und wurde ein lizenzierter Zweithersteller von 8086- und 8088-Prozessoren. IBM wollte den Intel 8088 in seinem IBM PC verwenden, aber die IBM-Politik verlangte zu dieser Zeit mindestens zwei Quellen für ihre Chips. AMD produzierte später den Am286 unter derselben Vereinbarung, aber Intel kündigte den Vertrag 1986 und weigerte sich, technische Details des i386-Teils zu übermitteln. AMD focht die Entscheidung von Intel an und gewann im Schiedsverfahren, aber Intel bestritt diese Entscheidung. Es folgte ein langer Rechtsstreit, der 1994 endete, als der Oberste Gerichtshof von Kalifornien zugunsten von AMD entschied. Nachfolgende Rechtsstreitigkeiten drehten sich um die Frage, ob AMD das Recht hatte, Derivate des Intel-Mikrocodes zu verwenden. Angesichts der Unsicherheit war AMD gezwungen, eigene Versionen des Intel-Codes zu entwickeln.
1991 brachte AMD den Am386 heraus, einen Klon des Intel 386 Prozessors. Es dauerte weniger als ein Jahr, bis das Unternehmen eine Million Einheiten verkauft hatte. Später wurde der Am486 von vielen großen Originalgeräteherstellern wie Compaq verwendet und erwies sich als beliebt. Ein weiteres Produkt auf Am486-Basis, der Am5x86, setzte den Erfolg von AMD als kostengünstige Alternative fort. Doch als sich die Produktzyklen in der PC-Industrie verkürzten, wurde das Reverse Engineering von Intel-Produkten für AMD zunehmend weniger tragfähig.
K5, K6, Athlon, Duron und Sempron
Hauptartikel: AMD K5, AMD K6, Athlon, Duron und Sempron
AMDs erster eigener x86-Prozessor war der K5, der 1996 auf den Markt kam.[16] Das "K" war eine Anspielung auf Kryptonit. (In Comics ist Kryptonit die einzige Substanz, die Superman schaden kann – sie wird aus radioaktiven Teilen seines Heimatplaneten Krypton gebildet. Dies ist eine Anspielung auf die Vormachtstellung von Intel auf dem Markt, also eine Vermenschlichung von Intel als Superman.[17]) Die Zahl "5" bezieht sich auf die fünfte Prozessorgeneration, die Intel als Pentium einführte, da das US-Patent- und Markenamt entschied, dass bloße Zahlen nicht markenrechtlich geschützt werden können.
1996 kaufte AMD NexGen, insbesondere für die Rechte an deren Nx-Serie von x86-kompatiblen Prozessoren. AMD gab dem NexGen-Designteam ein eigenes Gebäude, ließ sie in Ruhe und gab ihnen Zeit und Geld, um den Nx686 zu überarbeiten. Das Ergebnis war der K6-Prozessor, der 1997 eingeführt wurde. Obwohl der K6 auf Socket 7 basierte, waren Varianten wie K6-3/450 schneller als Intels Pentium II (sechste Prozessorgeneration).
Der K7 war AMDs siebte x86-Prozessorgeneration und debütierte am 23. Juni 1999 unter dem Markennamen Athlon. Im Gegensatz zu früheren AMD-Prozessoren konnte er aufgrund von Lizenzierungsproblemen mit Intels Slot 1 nicht auf denselben Motherboards verwendet werden, sondern verwendete einen Slot A-Anschluss, der an den Alpha-Prozessorbus angelehnt war. Der Duron war eine kostengünstigere und abgespeckte Version des Athlon (64 KB statt 256 KB L2-Cache) im PGA-Gehäuse (Socket A) oder direkt auf dem Motherboard. Sempron wurde als kostengünstigerer Athlon XP auf den Markt gebracht und ersetzte Duron in der Socket-Ära. Es wurde später auf alle neuen Sockel bis AM3 migriert.
Am 9. Oktober 2001 wurde der Athlon XP veröffentlicht. Am 10. Februar 2003 wurde der Athlon XP mit 512 KB L2-Cache herausgebracht.[18]
Athlon 64, Opteron und Phenom
Hauptartikel: Athlon 64, Opteron und Phenom (Prozessor)
Der K8 war eine große Überarbeitung der K7-Architektur, mit den bemerkenswertesten Merkmalen: der Hinzufügung einer 64-Bit-Erweiterung zum x86-Befehlssatz (x86-64, AMD64 oder x64), der Integration eines On-Chip-Speichercontrollers und der Implementierung einer extrem leistungsstarken Punkt-zu-Punkt-Verbindung namens HyperTransport als Teil der Direct Connect Architecture. Die Technologie wurde zunächst am 22. April 2003 als serverorientierter Opteron-Prozessor auf den Markt gebracht.[19] Kurz darauf wurde sie in ein Produkt für Desktop-PCs, den Athlon 64, integriert.[20]
Am 21. April 2005 brachte AMD den ersten Dual-Core-Opteron heraus, eine x86-basierte Server-CPU.[21] Einen Monat später veröffentlichte AMD den Athlon 64 X2, die erste Dual-Core-Desktop-Prozessorfamilie.[22] Anfang Mai 2007 gab AMD den Zusatz "64" in der Dual-Core-Desktop-Produktbezeichnung auf und nannte sie Athlon X2, um die Bedeutung der 64-Bit-Computing in seinen Prozessoren herunterzuspielen. Bevorstehende Updates umfassten einige Verbesserungen der Mikroarchitektur und eine Verlagerung des Zielmarkts von High-End-Desktop-Systemen hin zu preisgünstigen Dual-Core-Desktop-Systemen. 2008 begann AMD, Dual-Core-Sempron-Prozessoren exklusiv in China unter der Bezeichnung Sempron 2000-Serie mit niedrigerer HyperTransport-Geschwindigkeit und kleinerem L2-Cache zu vertreiben. Damit vervollständigte AMD sein Dual-Core-Produktportfolio für jedes Marktsegment.
Nach K8 kam K10. Am 10. September 2007 brachte AMD die ersten K10-Prozessoren heraus: neun Quad-Core-Opteron der dritten Generation. Es folgte der Phenom-Prozessor für Desktops. K10-Prozessoren gab es in Dual-Core-, Triple-Core-[23] und Quad-Core-Versionen, wobei alle Kerne auf einem einzigen Die untergebracht waren. AMD veröffentlichte eine neue Plattform mit dem Codenamen "Spider", die den neuen Phenom-Prozessor, eine R770-GPU und einen 790 GX/FX-Chipsatz der AMD 700-Chipsatzserie nutzte. Allerdings baute AMD den Spider in 65 nm, was im Vergleich zu Intels kleinerem und energieeffizienterem 45-nm-Prozess unkonkurrenzfähig war.
Im Januar 2009 brachte AMD eine neue Prozessorlinie namens Phenom II auf den Markt, eine Überarbeitung des ursprünglichen Phenom im 45-nm-Prozess. Die neue Plattform von AMD mit dem Codenamen "Dragon" nutzte den neuen Phenom II, eine ATI R770-GPU der R700-GPU-Familie und einen 790 GX/FX-Chipsatz der AMD 700-Chipsatzserie. Der Phenom II war in Dual-Core-, Triple-Core- und Quad-Core-Varianten erhältlich, wobei bei den Triple- und Dual-Core-Versionen Kerne deaktiviert waren. Der Phenom II löste die Probleme des ursprünglichen Phenom, darunter niedrige Taktraten, einen kleinen L3-Cache und einen Cool'n'Quiet-Bug, der die Leistung beeinträchtigte. Der Phenom II war preis- und leistungsmäßig wettbewerbsfähig mit Intels Mittel- bis High-End-Core-2-Quads. Der Phenom II verbesserte auch den Speichercontroller des Phenom, sodass er DDR3 im neuen nativen Socket AM3 unterstützen konnte, während die Abwärtskompatibilität zu AM2+ erhalten blieb, dem Sockel des Phenom, und die Verwendung von DDR2-Speicher ermöglicht wurde.
Im April 2010 brachte AMD einen neuen Phenom II Hexa-Core (6-Kern)-Prozessor mit dem Codenamen "Thuban" heraus. Es handelte sich um einen völlig neuen Die, der auf dem Hexa-Core "Istanbul" Opteron basierte. Er enthielt die AMD "Turbo Core"-Technologie, die es dem Prozessor ermöglicht, automatisch von 6 auf 3 schnellere Kerne umzuschalten, wenn mehr reine Geschwindigkeit benötigt wird. Die Enthusiasten-Plattform von AMD, Codenamen "Leo", nutzte den neuen Phenom II, einen neuen Chipsatz der AMD 800-Chipsatzserie und eine ATI "Cypress"-GPU der Evergreen (GPU-Familie)-Serie.
Die Serverteile Magny Cours und Lisbon wurden 2010 veröffentlicht. Der Magny Cours kam mit 8 bis 12 Kernen, der Lisbon mit 4 und 6 Kernen. Magny Cours ist auf Leistung ausgerichtet, Lisbon auf hohe Leistung pro Watt. Magny Cours ist ein MCM (Multi-Chip-Modul) mit zwei Hexa-Core-"Istanbul"-Opteron-Teilen. Es verwendet den neuen G34-Sockel für Dual- und Quad-Socket-Prozessoren und wird daher als Opteron 61xx-Serie vermarktet. Lisbon verwendet den C32-Sockel, der für den Dual-Socket- oder Single-Socket-Einsatz zertifiziert ist, und wird daher als Opteron 41xx-Serie vermarktet. Beide werden im 45-nm-SOI-Prozess gefertigt.
Fusion, Bobcat, Bulldozer und Vishera
Hauptartikel: AMD Accelerated Processing Unit, Bulldozer (Prozessor) und Bobcat (Prozessor)
Nach der Fusion von AMD und ATI wurde eine Initiative mit dem Codenamen Fusion angekündigt, die CPU und GPU auf einigen Mainstream-Chips vereinen sollte, einschließlich einer mindestens 16-Lane-PCI-Express-Verbindung für externe PCI-Express-Peripheriegeräte, wodurch der Northbridge-Chip vollständig vom Motherboard entfällt. Die Initiative sah vor, dass einige der bisher auf der CPU durchgeführten Berechnungen (z. B. Gleitkommaoperationen) auf die GPU verlagert werden, die für Berechnungen wie Gleitkommaberechnungen besser optimiert ist. Dies wird von AMD als Accelerated Processing Unit (APU) bezeichnet.[24]
Llano ist die zweite veröffentlichte APU[25] und richtet sich an den Mainstream-Markt.[24] Sie wird CPU und GPU auf einem Die sowie die Northbridge-Funktionen integrieren und wird auf AMDs neuer Zeitleiste mit "Socket FM1" und DDR3-Speicher gekennzeichnet. Dieser wird jedoch nicht auf dem neuen Bulldozer-Kern basieren, sondern dem aktuellen Phenom II "Deneb" ähneln, der bis zur Veröffentlichung der neuen 32-nm-Teile als High-End-Prozessor von AMD dient. Am 28. September 2011 gab AMD bekannt, dass das dritte Quartal 2011 nicht das geplante Umsatzwachstum von 10 % bringen werde, aufgrund von Fertigungsproblemen mit den 32-nm-Llano-Fusion-Chips.[26]
Bulldozer ist der Codename von Advanced Micro Devices (AMD) für die neuesten Server- und Desktop-Prozessoren, die am 12. Oktober 2011 veröffentlicht wurden. Diese Family-15h-Mikroarchitektur ist der Nachfolger der Family-10h (K10)-Mikroarchitektur im M-SPACE-Design.
Bulldozer wurde von Grund auf neu entwickelt und ist keine Weiterentwicklung früherer Prozessoren.[27] Der Kern ist speziell auf 10-125 Watt TDP-Computing-Produkte ausgelegt. AMD verspricht dramatische Verbesserungen der Leistungs-effizienz in High-Performance-Computing (HPC)-Anwendungen mit Bulldozer-Kernen.
Vishera ist AMDs neueste Prozessorserie.
Bobcat ist der neueste x86-Prozessorkern von AMD für den Low-Power/Low-Cost-Markt.
Er wurde während einer Rede von AMD-Vorstand Henri Richard auf der Computex 2007 vorgestellt und ging im 1. Quartal 2011 in Produktion.[25] Einer der Hauptbefürworter war Vorstand Mario A. Rivas, der es für schwierig hielt, mit einem einzigen Kern, der für den Bereich 10-100 Watt optimiert ist, im x86-Markt zu konkurrieren, und förderte aktiv die Entwicklung eines einfacheren Kerns mit einem Zielbereich von 1-10 Watt. Es wurde angenommen, dass der Kern in den Handheld-Bereich migrieren könnte, wenn der Stromverbrauch auf unter 1 W reduziert werden kann.
ARM-Architektur-basierter Chip
AMD plant, im Jahr 2014 einen ARM-Chip für den Einsatz in Servern als stromsparende Alternative zu den aktuellen x86-Chips auf den Markt zu bringen, als Teil einer Strategie, verlorenen Marktanteil im Server-Chip-Geschäft zurückzugewinnen.

Allgemeine Fragen zur Mikrocontroller-Firmware-Extraktion


  • Ist es sicher, eine Zahlung an MikaTech zu senden?

    Wenn MikaTech ein schlechtes Unternehmen wäre, könnten Sie im Internet über die 28-jährige Geschichte hinweg jede Menge schlechter Bewertungen über den Service finden.

    Die Antwort lautet also: JA! Wir sind gute Leute.

    Warum Mikatech wählen? Hier klicken, um mehr zu erfahren


  • Kann Mikatech auch ICs knacken, die nicht auf dieser Website gelistet sind?

    Verschiedene Chiphersteller verwenden unterschiedliche Teilenummern, aber der innere Kern des Chips kann mit derselben Technologie hergestellt werden. Es wäre unmöglich, alle Teilenummern aufzulisten, bei denen unsere Technologie anwendbar ist, z. B. MYSON, STK, FEELING, ANALOG, FUJITSU, NOVATEK, LG/HYNDAI.

    Durch den Fortschritt der Technologie sammeln wir täglich mehr Erfahrung und entwickeln neue Methoden für das Reverse Engineering verschiedener integrierter Schaltkreise. Die vollständige Liste der Teilenummern, die in unseren Leistungsumfang fallen, wird immer größer. Bitte kontaktieren Sie uns, um dies zu klären.

  • Wird meine Privatsphäre geschützt?

    Mikatech Innovative Limited versteht die Bedeutung der Privatsphäre seiner Kunden. In dem Moment, in dem Sie Mikatech kontaktieren, werden Ihre persönlichen Daten gemäß unseren Verwaltungsrichtlinien geschützt, die wir im Laufe der Jahre entwickelt haben. Mikatech verwendet diese Informationen, um seinen Service für Sie zu personalisieren, und gibt sie niemals an Dritte weiter, aus welchem Grund auch immer.
    Bei jedem Projekt löschen wir alle Daten, Materialien und Codes 60 Tage nach der Lieferung der Dateien. Dies schützt uns und Ihre Privatsphäre.

  • Ist es legal, den Service von Mikatech in Anspruch zu nehmen?

    Ja, es ist völlig legal.
    Mikatech erbringt seine Reverse-Engineering-Dienste nur zu Bildungszwecken. Es kann illegal sein, die oben genannten Dienste in einigen Ländern oder Regionen zu nutzen. Bitte überprüfen Sie Ihre lokalen Gesetze. Mikatech übernimmt keine Verantwortung im Zusammenhang mit der Nutzung der oben genannten Dienste, die als illegal angesehen werden könnte.


    Die Legalität des Reverse Engineering von Mikrocontrollern

    Die Legalität des Reverse Engineering von Mikrocontrollern ist keine binäre Angelegenheit; sie ist stark kontextabhängig und unterscheidet sich erheblich zwischen den Rechtsordnungen. Der Kern des Problems hängt von zwei kritischen Faktoren ab: dem Zweck der Reverse-Engineering-Aktivität und der Art der extrahierten Informationen oder Inhalte.

    Die folgende Analyse erläutert die wichtigsten rechtlichen Überlegungen zum Reverse Engineering von Mikrocontrollern weltweit:

    1. Vorrang des beabsichtigten Zwecks

    Interoperabilität und Sicherheitsforschung: Die meisten großen Rechtsordnungen, einschließlich der USA und der EU, haben gesetzliche Ausnahmen für Reverse Engineering geschaffen, das zur Gewährleistung von Interoperabilität mit unabhängig entwickelter Software oder zur legitimen Sicherheitsbewertung und -prüfung durchgeführt wird. Diese Praktiken gelten im Allgemeinen als rechtlich zulässig.

    Kommerzielle Ausbeutung und verletzende Nachahmung: Reverse Engineering, das darauf abzielt, proprietären Binärcode aus Mikrocontrollern zu extrahieren, zu replizieren und für die Entwicklung, Produktion oder den Verkauf konkurrierender kommerzieller Produkte zu nutzen, ist in den meisten Regionen eindeutig illegal. Dies stellt einen direkten Verstoß gegen die geltenden Urheberrechtsgesetze dar.

    2. Urheberrechtsverletzungsrisiken für eingebettete Software

    Die Hauptverantwortung beim Reverse Engineering von Mikrocontrollern liegt in der im Chip gespeicherten Software. Gerichtliche Entscheidungen in vielen Ländern haben bestätigt, dass On-Chip-Binärcode als Computersoftware gilt und daher vollen Urheberrechtsschutz genießt.

    Das Reverse Engineering eines Mikrocontrollers, um proprietären Binärcode zu extrahieren, gefolgt von unbefugter Vervielfältigung, Aneignung oder kommerzieller Verbreitung dieses Codes, stellt eine klare Urheberrechtsverletzung dar. Dies bleibt die grundlegende Rechtsverletzung in den meisten aktuellen straf- und zivilrechtlichen Verfahren im Zusammenhang mit Chip-Reverse-Engineering.

    3. Regionale gesetzliche Rahmenbedingungen

    Vereinigte Staaten

    Die Legalität in den USA wird durch das Bundesurheberrecht und den Digital Millennium Copyright Act (DMCA) geregelt. Insbesondere Abschnitt 1201 des DMCA enthält strenge Anti-Umgehungsbestimmungen, die die Umgehung technischer Schutzmaßnahmen (wie Verschlüsselungsprotokolle) unter Strafe stellen, die den Zugang zu urheberrechtlich geschützten Werken einschränken.

    Obwohl der DMCA begrenzte Ausnahmen für legitimes Reverse Engineering, Verschlüsselungsforschung und Cybersicherheitstests vorsieht, sind diese Ausnahmen eng gefasst und werden streng ausgelegt. Für alle technischen Aktivitäten ist strikte Rechtskonformität erforderlich.

    Europäische Union

    Die EU-Software-Richtlinie bietet den einheitlichen Rechtsrahmen für Reverse-Engineering-Praktiken in den Mitgliedstaaten. Die Dekompilierung (eine Kernform des Reverse Engineering) ist nur dann rechtlich zulässig, wenn sie der Interoperabilität mit unabhängig erstellten Softwareprogrammen dient.

    Das EU-Regulierungssystem ist äußerst restriktiv: Es verbietet explizit sekundäre Reverse-Engineering-Aktivitäten, die für alle nicht ausgenommenen Zwecke durchgeführt werden, und beschränkt rechtmäßiges Reverse Engineering auf äußerst spezifische Szenarien.

    China

    Die rechtliche Haltung Chinas zum Reverse Engineering ist differenziert und wurde durch aktuelle gerichtliche Auslegungen und wegweisende Urteile weiter präzisiert. Das Oberste Volksgericht hat Reverse Engineering als legitime technische Methode anerkannt.

    Die Legitimität der technischen Methode bedeutet jedoch nicht, dass man von der Verantwortung für Verletzungen des geistigen Eigentums befreit ist. Wie die Urteile des Volksgerichts des Bezirks Ningbo Beilun und zahlreiche nachfolgende Gerichtsverfahren zeigen, stellt das Reverse Engineering eines Mikrocontrollers, um das proprietäre Kernprogramm für die kommerzielle Vervielfältigung und Nutzung zu extrahieren, eine Straftat dar. Dieser Grundsatz wird in der chinesischen Rechtsprechung durchgängig vertreten.

    4. Geschäftsgeheimnisse und vertragliche Beschränkungen

    Schutz von Geschäftsgeheimnissen: Kernentwurfsparameter und Herstellungsspezifikationen von Mikrocontrollern sind rechtlich als Geschäftsgeheimnisse anerkannt. Während das Reverse Engineering rechtmäßig erworbener Handelsprodukte im Allgemeinen als legitimes Mittel zur Entdeckung von Geschäftsgeheimnisinformationen gilt, berechtigt diese Ausnahme nicht zur unbefugten Vervielfältigung der eingebetteten Software oder des physischen Schaltungsentwurfs von Mikrocontroller-Chips.

    Vertragliche Verpflichtungen: Endbenutzer-Lizenzvereinbarungen (EULAs) und andere bindende Vertragsbedingungen enthalten in der Regel ausdrückliche Klauseln, die Reverse Engineering verbieten. Jeder Verstoß gegen diese Vertragsbedingungen kann zu zivilrechtlichen Schadensersatzansprüchen führen, unabhängig von Urheberrechts- oder Geschäftsgeheimnisgesetzen.

  • Angriffe auf die Lieferkette und die Integrität des MCU-Lockbit-Locks

    Die Sicherheit des MCU ist nur so stark wie seine Lieferkette. Der MCU-Lockbit-Lock wird während der Herstellung eingerichtet. Wenn der Herstellungsprozess kompromittiert wird, kann der Lock mit einem Hintertürchen vorinstalliert werden. Ein Angreifer könnte einen bösartigen Bootloader in den MCU einbringen, bevor er den Kunden erreicht. Dieser Bootloader würde es dem Angreifer ermöglichen, Flash und EEPROM auszulesen. Das Auslesen eines EEPROM-Prozessors wird für den Angreifer, der die Hintertür kennt, trivial. Dekapsulation und Code-Wiederherstellung sind nicht einmal erforderlich. Der MCU-Lockbit-Lock würde für den Kunden intakt erscheinen. Aber in Wirklichkeit ist er eine Attrappe. LockBit-Ransomware-Betreiber sind dafür bekannt, Lieferketten anzugreifen. Sie bestechen Mitarbeiter oder infizieren Programmierwerkzeuge. Die Programmier-Software könnte einen Trojaner in die Firmware einschleusen. Dieser Trojaner würde später Schlüssel exfiltrieren. Der MCU-Lockbit-Lock kann nicht vor einem bösartig programmierten Gerät schützen, da der Lock selbst durch den Trojaner umgangen werden kann. Zum Beispiel könnte der Trojaner den Lock nach einer bestimmten Bedingung deaktivieren. Die Bedingung könnte ein bestimmter Debug-Befehl sein. Der Angreifer sendet diesen Befehl, und der Lock öffnet sich. Das Auslesen eines EEPROM-Prozessors wird dann ermöglicht. Befehle zum Auslesen von Flash und EEPROM funktionieren. Dekapsulation und Code-Wiederherstellung sind nicht notwendig. Das Kopieren von Inhalten des kryptografischen Speichers ist möglich. Das Reverse Engineering eines solchen Geräts würde den Trojaner offenbaren. Aber der Schaden ist bereits angerichtet. Die Firmware-Extraktion liefert den bösartigen Code. Um Lieferkettenangriffe zu verhindern, müssen MCU-Hersteller ihre Programmiereinrichtungen absichern. Sie verwenden verschlüsselte Programmierprotokolle. Die Programmierdaten werden mit einem Schlüssel verschlüsselt, der nur dem Hersteller bekannt ist. Der MCU entschlüsselt die Daten mit seinem internen Schlüssel. Dies stellt sicher, dass selbst bei einem kompromittierten Programmierwerkzeug die Daten nicht verändert werden können. Der MCU-Lockbit-Lock wird ebenfalls während der Programmierung gesetzt. Die Lock-Sicherung wird erst nach der Verifizierung der Firmware durchgebrannt. Die Verifizierung umfasst eine Prüfsumme. Wenn die Prüfsumme übereinstimmt, wird die Sicherung durchgebrannt. Wenn nicht, bleibt der Lock offen. Ein bösartiger Programmierer kann den Lock also nicht ohne die richtige Prüfsumme durchbrennen. Aber er könnte dennoch eine bösartige Firmware programmieren, die die Prüfsumme besteht? Nur wenn er den Prüfsummen-Algorithmus kennt. Dieser Algorithmus ist oft proprietär. Aber er kann reverse engineered werden. Die Dekapsulation und Code-Wiederherstellung eines echten MCU kann den Algorithmus offenbaren. Der Lieferkettenangriff ist also ein Katz-und-Maus-Spiel. Eine weitere Verteidigung ist die Verwendung eines Hardware-Sicherheitsmoduls (HSM) für die Programmierung. Das HSM signiert die Firmware. Der MCU verifiziert die Signatur. Die Signatur basiert auf einem privaten Schlüssel. Der private Schlüssel verlässt das HSM nie. Der öffentliche Schlüssel des MCU wird in OTP gebrannt. Dies entspricht dem Secure Boot. Der MCU-Lockbit-Lock verlässt sich dann darauf, dass das OTP echt ist. Wenn das OTP mit einem gefälschten öffentlichen Schlüssel programmiert wird, ist der Lock kompromittiert. Die OTP-Programmierung muss daher in einer vertrauenswürdigen Umgebung erfolgen. Der Hersteller tut dies in der Regel. Aber der Hersteller könnte bösartig sein. Dies ist das ultimative Lieferkettenrisiko. Zur Abschwächung verwenden einige Systeme einen externen Prüfer. Der Prüfer verifiziert den OTP-Inhalt. Er verifiziert auch die Lock-Sicherungen. Dies geschieht über einen sicheren Kanal. Der Prüfer kann den MCU remote attestieren. Die Attestierung beweist, dass der Lock wie erwartet ist. Das Auslesen eines EEPROM-Prozessors kann in Frage gestellt werden. Das Auslesen von Flash und EEPROM kann getestet werden. Aber diese Tests sind zerstörerisch. Daher verlässt sich die Attestierung auf kryptografische Beweise. Der MCU generiert einen Beweis mit seinem eindeutigen Schlüssel. Der Beweis wird an den Prüfer gesendet. Wenn der Beweis gültig ist, gilt der Lock als intakt. Dies ist die Grundlage des Trusted Computing. Der MCU-Lockbit-Lock ist Teil eines Trusted Platform Module (TPM). Das TPM hat seinen eigenen Lock. Lieferkettenangriffe können erkannt werden, indem die Identität des Geräts mit einem Zertifikat verglichen wird. Das Zertifikat wird bei der Herstellung ausgestellt. Das Zertifikat enthält den öffentlichen Schlüssel des Geräts. Der private Schlüssel befindet sich im MCU. Wenn die Firmware manipuliert wurde, wird der private Schlüssel nicht offengelegt. Aber der Angreifer könnte den privaten Schlüssel durch seinen eigenen ersetzen. Das würde jedoch den öffentlichen Schlüssel ändern. Das Zertifikat würde nicht mehr übereinstimmen. Das System würde das Gerät ablehnen. Dies ist eine starke Verteidigung. Zusammenfassend sind Lieferkettenangriffe eine ernsthafte Bedrohung für den MCU-Lockbit-Lock. Sie können den Lock umgehen, bevor er den Benutzer überhaupt erreicht. Abwehrmaßnahmen umfassen sichere Programmierung, kryptografische Signaturen, Remote-Attestierung und zertifikatsbasierte Identität. Diese Maßnahmen stellen sicher, dass die Integrität des Locks überprüfbar ist, selbst wenn später ein Auslesen des EEPROM-Prozessors, das Auslesen von Flash und EEPROM, die Dekapsulation, das Kopieren von Inhalten, das Reverse Engineering und die Firmware-Extraktion versucht werden.

    mikrocontroller_hack_zeit

    Jahre

    28 +
    mikrocontroller_hack_länder

    Länder

    110 +
    mikrocontroller_angriff_kunden

    Kunden

    5000 +
    mikrocontroller_projekte_entsperrt

    Projekte

    60000 +