+ All Categories
Home > Documents > Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte...

Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte...

Date post: 06-Apr-2016
Category:
Upload: nicolas-kuechler
View: 215 times
Download: 2 times
Share this document with a friend
18
Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien von Prof. Dr.-Ing. K. Waldschmidt) Lehrstuhl für Eingebettete Eingebettete Systeme Systeme Hardwarearchitekturen und Rechensysteme 7. Hardwareentwurf mit VHDL
Transcript
Page 1: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme vonProf. Dr. rer. nat. U. BrinkschulteProf. Dr.-Ing. L. Hedrich(basierend auf Materialien von Prof. Dr.-Ing. K. Waldschmidt)

Lehrstuhl fürEingebettete SystemeEingebettete Systeme

Hardwarearchitekturen und Rechensysteme

7. Hardwareentwurf mit VHDL

Page 2: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:2

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

Gliederung7.1 Hardwareentwurf7.2 VHDL

Page 3: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:3

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

7.1 HardwareentwurfDurch die steigenden Integrationsdichten und die anwachsende Schaltungskomplexität ist der Entwurf integrierter Schaltungen heute nur schwer beherrschbar. Um die Komplexität heutiger Hardwareentwürfe in den Griff zu bekommen, werden die folgenden Prinzipien und Strategien verfolgt:Hierarchische Strukturierung:

Bei der hierarchischen Strukturierung wird ein komplexes Problem in lösbare Teilprobleme zerlegt.

Lokalität: Die Lokalität fordert, dass Module untereinander möglichst wenig Seiteneffekte aufweisen, d.h. Änderungen innerhalb eines Moduls sollten sich nicht auf andere Schaltungsteile auswirken.

Regularität: Durch die Verwendung regulärer Strukturen wird das Design überschaubarer und daher einfacher zu beschreiben und zu überprüfen. Auf Gatterebene bedeutet Regularität, daß möglichst wenig verschiedene Gatter- und Registertypen verwendet werden.

Testbarkeit: Der Test einer integrierten Schaltung dient der Qualitätssicherung. Fatale Folgen einer Fehlfunktion, insbesondere bei sicherheitskritischen Anwendungen, sollen verhindert werden.

7.1 Hardwareentwurf

Lars Hedrich
7.1 Hardwareentwurf
Page 4: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:4

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

Hierarchische StrukturierungEine hierarchische Strukturierung beim Schaltungsentwurf führt zu einer Zerlegung in Module (Teilschaltungen), die exakt festgelegte Teilfunktionen ausführen und über eine definierte Schnittstelle verfügen. Jedes Modul wird weiter zerlegt, bis es entworfen, validiert und in seinem zeitlichen und logischen Verhalten dokumentiert werden kann.Eine sinnvolle Strukturierung von Schaltungsentwürfen führt zu einer Zerlegung in Module, die in ihrer Funktion so allgemein gehalten sind, dass sie als universell einsetzbare, überprüfte Einheiten vielfach wieder verwendet werden können (design reuse).

7.1 Hardwareentwurf

Page 5: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:5

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

Hierarchische Strukturierung

s

f c

c in

c out

s

b

a

VA

s

a

b

VA

c in

c out

VAa

b

s

f

f s

f c

c out

c in

&

11

1

1

&

&

7.1 Hardwareentwurf

Page 6: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:6

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

Idealisierter Entwurfsablauf

ergebnisse

Simulations-ergebnisse

Vermeidung von

Simulations-

Informelle Spezifikation

Chip

Entwurfs-eingabe

Fertigung

Simulation

Simulation

Simulation

Simulation

?

auto

mat

isie

rbar

e E

ntw

urfs

schr

itte

Validierung

Entwurfsfehlern

ergebnisseArchitektur-

Beschreibung

Register-Transfer-Beschreibung

Gatter-Beschreibung

Layout Simulations-ergebnisse

Simulations-

Logik-

?

?

?syntheseArchitektur-

abbildung

synthese

Technologie-

7.1 Hardwareentwurf

Page 7: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:7

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

7.2 VHDLDie Sprache VHDL

VHDL: VHSIC Hardware Description LanguageVHSIC: Very High Speed Integrated Circuit

wurde 1983 vom amerikanischen Department of Defense initiiert und ist seit 1987 als IEEE Standard 1076 genormt. VHDL ermöglicht die Beschreibung und Simulation digitaler Systeme und deren Umgebung. Die Sprache ist an höhere Programmiersprachen wie C und Pascal angelehnt und ermöglicht die Beschreibung von Verhalten und Struktur auf unterschiedlichen Abstraktionsebenen.

7.2 VHDL

Lars Hedrich
7.2 VHDL
Page 8: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:8

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

VHDLEine VHDL-Beschreibung besteht aus:package:

Fasst Gruppen verwandter, globaler Deklarationen zusammen.

entity:Beschreibt die Schnittstelle einer Komponente zur Umwelt.

architecture:Beschreibt die Implementierung einer Entity.

configuration:Beschreibt die Zuordnung einer Architecture zu einer Entity.

Weiterhin unterstützt VHDL die Verwaltung von VHDL-Komponenten in Bibliotheken und somit die Wiederverwendung von Entwürfen (design reuse).

7.2 VHDL

Page 9: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:9

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

PackageIn einer Package werden Gruppen verwandter Deklarationen zusammengefasst. Hierzu gehören: Unterprogramm

Zu den Unterprogrammen zählen Funktionen, die einen einzigen Wert zurückliefern, und Prozeduren, die mehrere Werte Zurückliefern.

TypdeklarationZu den wesentlichen Typdeklarationen zählen Enumerated Typ (z.B. Boolean, Bit,…), Array, Record und File.

Konstantendeklaration Dateideklaration Aliasdeklaration

Beispiel:package my_defs is

constant unit_delay := 1ns;end my_defs;

7.2 VHDL

Page 10: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:10

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

EntityDie Entity beschreibt die Eingangs- und Ausgangssignale einer Komponente (Schnittstelle zur Umwelt).

Für jedes Signal wird eine Richtung (in, out, inout, . . . ) und ein Datentyp (BIT, INTEGER, . . . ) angegeben.Beispiel:

entity COMPARE isgeneric (delay: time);port (A, B: in BIT; C: out BIT);

end COMPARE;

BIT CCOMPAREA

B

BIT

BIT

Komponente signaleEingangs-

signaleAusgangs-

7.2 VHDL

Page 11: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:11

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

ArchitectureDie Architecture beschreibt die Implementierung einer Komponente. Für eine durch eine Entity beschriebene Komponente können mehrere Implementierungen existieren. Die Auswahl einer Implementierung erfolgt in der Configuration. Wenn keine Configuration angegeben wird, wird jeweils die (zeitlich) zuletzt analysierte Architecture verwendet.

Die Architecture kann durch eine Verhaltens-, eine Datenfluß- oder eine Strukturbeschreibung beschrieben werden.

Entity

Architecture nArchitecture 1

7.2 VHDL

Page 12: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:12

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

Architecture – VerhaltensbeschreibungDas Verhalten von Hardwareelementen wird durch Prozesse beschrieben, die immer und gleichzeitig aktiv sind. Die Anweisungen innerhalb eines Prozesses werden in einer Endlosschleife ständig sequentiell abgearbeitet und können mit einer ’wait’-Anweisung unterbrochen werden, bis die Bedingung der ’wait’-Anweisung erfüllt ist. Alternativ zu der ’wait’-Anweisung kann nach dem Schlüsselwort process eine Liste von Signalen angegeben werden, die zur Aktivierung eines Prozesses führen (sensitivity list). Dies entspricht einer ’wait on’-Anweisung am Ende des Prozesses.Beispiel:

architecture BEHAVIOR of COMPARE isbegin

process ( A, B )begin

if ( A = B ) then C <= ’1’ after delay;else C <= ’0’ after delay;end if;

end process;end BEHAVIOR;

7.2 VHDL

Page 13: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:13

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

Architecture –DatenflussbeschreibungDie Datenflussbeschreibung besteht aus einer strukturellen Beschreibung von Datenpfaden in Kombination mit funktionalen Beschreibungen der Datenpfadkomponenten. Sie beschreiben den Datenfluss und die Modifikation der Daten durch Operationen (z.B. Addition, Vergleich, . . . ).Beispiel:

architecture DATAFLOW of COMPARE isbegin

C <= not ( A xor B ) after delay;end DATAFLOW;

Architecture

A

BC

delay

11

7.2 VHDL

Page 14: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:14

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

Architecture – Strukturbeschreibung Die Strukturbeschreibung besteht aus einer Netzliste von vordefinierten Komponenten.Beispiel:

architecture STRUCTURE of COMPARE issignal I: BIT;component XOR2 port ( x, y: in BIT; z: out BIT );end component;component INVERTER port ( x: in BIT; z: out BIT );end component;

beginU0: XOR2 port map ( A, B, I );U1: INVERTER port map ( I, C );

end STRUCTURE;

component

XOR2 INVERTERz z CI

xy

xA

B

Architecturecomponent

7.2 VHDL

Page 15: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:15

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

Beispiel – endlicher Automatentity MEALY is

port ( X, CLK: in BIT;Z: out BIT );

end MEALY;

Exemplarisch wird die Modellierung der sequentiellen Logik (COMBIN) und der Zeitglieder in den Rückkopplungspfaden (SYNCH) in getrennten Prozessen vorgestellt:

architecture BEHAVIOR of MEALY istype STATE_TYPE is ( S0, S1, S2 ); signal CURRENT_STATE, NEXT_STATE: STATE_TYPE;

beginCOMBIN: process ( CURRENT_STATE, X )…SYNCH: process…

end BEHAVIOR;

-/0

S0

S1 S2

0/1

1/0

0/0

1/1

7.2 VHDL

Page 16: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:16

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

Beispiel - COMBIN COMBIN: process ( CURRENT_STATE, X )begin

case CURRENT_STATE iswhen S0 =>

Z <= ’0’;NEXT_STATE<= S1;

when S1 =>if X = ’0’ then

Z <= ’1’;NEXT_STATE<= S0;

elseZ <= ’0’;NEXT_STATE<= S2;

end if;when S2 =>

…end case;

end process;

-/0

S0

S1 S2

0/1

1/0

0/0

1/1

7.2 VHDL

Page 17: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:17

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

Beispiel – SYNCH SYNCH: processbegin

wait until CLK’event and CLK = ’1’;CURRENT_STATE <= NEXT_STATE;

end process;

7.2 VHDL

Page 18: Folien zur Vorlesung Hardwarearchitekturen und Rechensysteme von Prof. Dr. rer. nat. U. Brinkschulte Prof. Dr.-Ing. L. Hedrich (basierend auf Materialien.

HWR · K7Nr.:18

Uwe Brinkschulte Eingebettete Systeme Lars Hedrich Entwurfsmethodik

Beispiel ALU

7.2 VHDL


Recommended