Prozessorentwurf
eBook - ePub

Prozessorentwurf

Von der Planung bis zum Prototyp

  1. 442 Seiten
  2. German
  3. ePUB (handyfreundlich)
  4. Über iOS und Android verfügbar
eBook - ePub

Prozessorentwurf

Von der Planung bis zum Prototyp

Angaben zum Buch
Buchvorschau
Inhaltsverzeichnis
Quellenangaben

Über dieses Buch

Beim Entwurf komplexer digitaler Systeme werden häufig Mikroprozessoren benötigt. Hier können entweder geeignete fertige Prozessoren eingesetzt werden oder programmierbare Bausteine, mit denen der Anwender eigene Prozessoren entwickeln kann. Mit Hilfe der programmierbaren Logik und durch den Einsatz von FPGAs (Field Programmable Gate Array) ist es möglich geworden, komplexe Schaltungen selbst zu entwickeln und zu testen - bis zu fertigen Prototypen. Dazu wird in der Regel CAD-Entwicklungssoftware eingesetzt. Der Schwerpunkt dieses Buches ist der Entwurf eigener Mikroprozessoren mit Hilfe der Hardware-Beschreibungssprache VHDL.
Der Anwender soll in die Lage versetzt werden, eigene Mikroprozessoren zu entwickeln und an bestimmte Anwendungen anzupassen. Es werden schrittweise die einzelnen Prozessorbausteine behandelt bis hin zu einem funktionsfähigen 12-Bit-Mikroprozessor. Das im Buch entwickelte Grundmodell wird dann erweitert zu einem 16-Bit-Mikroprozessor. Das Prinzip des Pipelinings und dessen Realisierung werden ebenfalls ausführlich behandelt. Die Prozessormodelle lassen sich mit einer CAD-Entwicklungssoftware bearbeiten und testen, die kostenlos aus dem Internet heruntergeladen werden kann. Kenntnisse im Umgang mit Hardware-Beschreibungssprachen (VHDL, Verilog) wären von Vorteil, werden aber nicht vorausgesetzt, da eine Einführung in VHDL enthalten ist.


Zielgruppe dieses Buches sind Studierende an Fachhochschulen und Universitäten der Fachrichtungen Informatik und Elektrotechnik sowie Entwickler von analogen und digitalen Schaltungen, die sich in den VHDL-Entwurf einarbeiten wollen.

Häufig gestellte Fragen

Gehe einfach zum Kontobereich in den Einstellungen und klicke auf „Abo kündigen“ – ganz einfach. Nachdem du gekündigt hast, bleibt deine Mitgliedschaft für den verbleibenden Abozeitraum, den du bereits bezahlt hast, aktiv. Mehr Informationen hier.
Derzeit stehen all unsere auf Mobilgeräte reagierenden ePub-Bücher zum Download über die App zur Verfügung. Die meisten unserer PDFs stehen ebenfalls zum Download bereit; wir arbeiten daran, auch die übrigen PDFs zum Download anzubieten, bei denen dies aktuell noch nicht möglich ist. Weitere Informationen hier.
Mit beiden Aboplänen erhältst du vollen Zugang zur Bibliothek und allen Funktionen von Perlego. Die einzigen Unterschiede bestehen im Preis und dem Abozeitraum: Mit dem Jahresabo sparst du auf 12 Monate gerechnet im Vergleich zum Monatsabo rund 30 %.
Wir sind ein Online-Abodienst für Lehrbücher, bei dem du für weniger als den Preis eines einzelnen Buches pro Monat Zugang zu einer ganzen Online-Bibliothek erhältst. Mit über 1 Million Büchern zu über 1.000 verschiedenen Themen haben wir bestimmt alles, was du brauchst! Weitere Informationen hier.
Achte auf das Symbol zum Vorlesen in deinem nächsten Buch, um zu sehen, ob du es dir auch anhören kannst. Bei diesem Tool wird dir Text laut vorgelesen, wobei der Text beim Vorlesen auch grafisch hervorgehoben wird. Du kannst das Vorlesen jederzeit anhalten, beschleunigen und verlangsamen. Weitere Informationen hier.
Ja, du hast Zugang zu Prozessorentwurf von Dieter Wecker im PDF- und/oder ePub-Format sowie zu anderen beliebten Büchern aus Technik & Maschinenbau & Elektrotechnik & Telekommunikation. Aus unserem Katalog stehen dir über 1 Million Bücher zur Verfügung.

Information

1 Grundlagen

1.1 Einleitung

Im Folgenden sollen die Grundlagen für den Entwurf von komplexen digitalen Systemen behandelt werden. Für die Entwurfsmethoden können dabei zunächst allgemeine digitale Systeme betrachtet werden. Bei der Planung für bestimmte Systeme müssen jedoch Bedingungen erfüllt werden, die z. B. in einer Anforderungsliste festgelegt werden. Durch die immer kürzer werdenden Entwicklungszeiten und die Entwicklungskosten werden Bedingungen an einen Entwurf geknüpft, die im Folgenden zusammengefasst sind:
  • – kurze Entwicklungszeiten
  • – unproblematische Änderung des Designs
  • – Wiederverwendbarkeit (Design Reuse)
  • – Einsatz von IP-Cores
  • – Frühzeitige Fehlererkennung
  • – Entwurf eigener Prototypen (Verwendung programmierbarer Logik)
Um diese Bedingungen zu erfüllen, werden leistungsfähige Entwicklungswerkzeuge benötigt, die auch unter dem Begriff EDA (Electronic Design Automation) zusammengefasst werden. Eine wichtige Hilfe für die Beschreibung von Designs sind Hardware-Beschreibungssprachen. Hier haben sich VHDL und Verilog als Standard weltweit durchgesetzt. Diese Beschreibungssprachen können jedoch nicht als alleinige bzw. ideale Beschreibungsmittel betrachtet werden. Für komplexe digitale Systeme werden deshalb zunehmend auch Hochsprachen eingesetzt, die komplexe Designs in einem hohen Abstraktionsniveau beschreiben. Hier werden nur als Beispiele SystemC und UML (Unified Modeling Language) genannt [1, 2].
Durch den Einsatz von leistungsfähiger CAD-Entwicklungssoftware und programmierbaren Logikbausteinen können die zuvor genannten Bedingungen für den Entwurf eines komplexen digitalen Systems inzwischen nahezu erfüllt werden. Die Entwicklungssoftware wird sowohl für die Modellierung als auch für die Realisierung eingesetzt. Simulations- und Syntheseschritte werden dabei während des gesamten Entwurfs verwendet. Die Synthesewerkzeuge setzen die Hardwarebeschreibung in Schaltpläne und Netzlisten um. Letztere werden für die Implementierung der Schaltungen in die Ziel-Hardware benötigt. Diese Ziel-Hardware kann beispielsweise ein FPGA (Field Programmable Gate Array) sein. Für den FPGA-Entwurf bietet der jeweilige Hersteller entsprechende Entwicklungswerkzeuge an, die meist kostengünstiger als herstellerfremde Werkzeuge sind und zusammen mit den Bausteinen vertrieben werden. Allerdings zeichnen sich herstellerfremde Werkzeuge oft durch größere Kompatibilität mit unterschiedlichen Bausteinen aus.
Logikbausteine, deren physikalische Eigenschaften festgelegt sind, die aber von den Entwicklern an ihre jeweiligen Bedürfnisse angepasst werden können, nennt man auch „Programmierbare Logik“. Im Wesentlichen unterscheidet man diesbezüglich drei verschiedene Bausteintypen:
  1. PLDs (Programmable Logic Device)
  2. CPLDs (Complex PLD)
  3. FPGAs
Die vorherrschende Grundstruktur bei PLDs ist eine zweistufige UND/ODER-Matrix, die durch Rückführung und Flip-Flops ergänzt wird. Es gibt viele verschiedene PLD-Typen, die bekanntesten sind wohl die PALs (Programmable Array Logic) bzw. PLAs. PALs sind eine Weiterentwicklung von PROMs (Programmable Read Only Memory) und lassen sich genau wie diese nur einmal programmieren. Durch einen kurzen Spannungsimpuls wird an den gewünschten Knotenpunkten die Verbindung unterbrochen. Allerdings lassen sich PALs nur über das UND-Array programmieren, da sie, im Gegensatz zu PROMs, eine feste ODER- und eine variable UND-Matrix haben. Bei PLAs schließlich sind beide Matrizen programmierbar [4].
Die CPLDs sind eine Weiterführung der PLDs. Hier werden mehrere PLD-Blöcke durch eine Schaltmatrix miteinander verbunden. FPGAs bestehen aus vielen kleinen Funktionsblöcken, in denen jeweils eine logische Funktion realisiert ist. Diese Blöcke können über ein Netzwerk von Verbindungen miteinander verknüpft werden. Neben logischen Funktionen stehen auch Register und Flip-Flops auf dem Chip zur Verfügung. Man unterscheidet rekonfigurierbare und nicht rekonfigurierbare FPGA-Typen. Bei ersteren werden wiederbeschreibbare Speichertechnologien verwendet, in denen die Konfiguration des FPGAs gespeichert wird. Bei nicht rekonfigurierbaren Typen werden sog. „Antifuses“ verwendet. Hier kann nur einmal eine Konfiguration vorgenommen werden, da sie direkt in den Baustein geschrieben wird.
Die als ASICs (Application Specific Integrated Circuit) bezeichneten Bausteine gehören zu den maskenprogrammierbaren Typen. Sie werden für ein anwendungsspezifisches Problem entworfen und optimiert. Die Vorteile sind eine optimale Ausnutzung der Chipfläche, hohe Taktraten und geringe Stückkosten. Die Nachteile sind lange Entwicklungszeiten, hohe Entwicklungskosten und geringe Flexibilität bei Designänderungen. Außerdem sind intensive Tests zur Fehlerfrüherkennung nötig, was zusätzliche Kosten verursacht.
Während die ASICs sich in höheren Stückzahlen lohnen, ermöglichen CPLDs und FPGAs den unmittelbaren und kostengünstigen Entwurf von Prototypen. Diese sofortige Testbarkeit der Bausteine ist bei den ASICs nicht annähernd gegeben, da der erstellte Systementwurf erst an den Halbleiterhersteller übermittelt werden muss, der dann die Endfertigung vornimmt. Ein FPGA kann eine Vielzahl von Anwendungen ausführen. Fertige Komponenten, sog. IP-Cores (Intellectual Property), die in das eigene Design integriert werden können, erleichtern dem Entwickler die Arbeit, da er nicht mehr jede einzelne Funktion seiner Schaltung selbst entwickeln muss. Heutige FPGAs erreichen außerdem ASIC-ähnliche Rechenleistungen und können für hochkomplexe Anwendungen eingesetzt werden. Im Folgenden werden Entwurfsmethoden für digitale Systeme behandelt. Diese Methoden sind zunächst unabhängig von der Ziel-Hardware. Für die Realisierung der hier erstellten Entwürfe liegt der Schwerpunkt bei der programmierbaren Logik und der Verwendung von FPGAs [4].

1.2 Entwurfsmethoden für digitale Systeme

Der Entwurf eines komplexen digitalen Systems könnte im Idealfall wie in der Darstellung in Abb. 1.1 verlaufen. Es werden Systemspezifikationen vorgegeben mit den Eigenschaften, die das System haben soll. Mit entsprechenden Entwicklungstools entsteht daraus ein Modell, das das digitale System beschreibt. Das Modell kann z. B. mit einer Hardware-Beschreibungssprache oder mit einer anderen geeigneten Hochsprache beschrieben werden. Die Schaltungssynthese bis zum Layout wird dann durch geeignete Entwicklungstools vorgenommen.
e9783110402964_i0007.webp
Abb. 1.1: Entwurf eines digitalen Systems
Auch d...

Inhaltsverzeichnis

  1. Weitere empfehlenswerte Titel
  2. Titel
  3. Impressum
  4. Vorwort
  5. Inhaltsverzeichnis
  6. 1 Grundlagen
  7. 2 Das 12-Bit-Mikroprozessor-System (MPU12_S)
  8. 3 Modellierung des 12-Bit-Mikroprozessor-Systems
  9. 4 Das 16-Bit Mikroprozessor-System (MPU16A_S)
  10. 5 Modellierung des 16-Bit-Mikroprozessor-Systems
  11. 6 Das erweiterte Mikroprozessor-System (MPU16B_S)
  12. 7 Das 16-Bit-Mikroprozessor-System (MPU16P_S)
  13. 8 Modellierung des 16-Bit-Mikroprozessor-Systems
  14. 9 Speichermodelle
  15. 10 Testmethoden digitaler Schaltungen
  16. Anhang
  17. Literaturverzeichnis
  18. Sachwortverzeichnis