15
MIN-Fakultät Fachbereich Informatik 64-189 Projekt: Entwurf eines Mikrorechners https://tams.informatik.uni-hamburg.de/ lectures/2016ws/projekt/mikrorechner – Einführung – Andreas Mäder, Bernd Schütz Universität Hamburg Fakultät für Mathematik, Informatik und Naturwissenschaften Fachbereich Informatik Technische Aspekte Multimodaler Systeme 20. Oktober 2016 A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 1 / 15

64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

MIN-FakultätFachbereich Informatik

64-189Projekt: Entwurf eines Mikrorechners

https://tams.informatik.uni-hamburg.de/lectures/2016ws/projekt/mikrorechner

– Einführung –

Andreas Mäder, Bernd Schütz

Universität HamburgFakultät für Mathematik, Informatik und NaturwissenschaftenFachbereich Informatik

Technische Aspekte Multimodaler Systeme

20. Oktober 2016

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 1 / 15

Page 2: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

OrganisationOrganisation Motivation Systemrealisierung weiteres Vorgehen

I TermineZeit Donnerstag 14:00 – 18:30 Uhr

Raum F-304 + Arbeitsräume: F-332, F-3261. Plenum

I Einführung am AnfangI Vorstellung von (Zwischen-) Ergebnissen

2. praktische Arbeit in KleingruppenI Selbstorganisation der ArbeitsgruppenI Info auf den Web-Seiten (im Wiki?)

https://tams.informatik.uni-hamburg.de/lectures/2016ws/

projekt/mikrorechner

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 2 / 15

Page 3: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

Ziel des ProjektsOrganisation Motivation Systemrealisierung weiteres Vorgehen

I Entwurf und Programmierung eines MikrorechnersI aktuelle Architekturkonzepte

I RISC-BefehlssatzI PipelineverarbeitungB CachesB SprungvorhersageB parallele AusführungseinheitenB Pipeline ForwardingB virtueller SpeicherB Interrupts

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 3 / 15

Page 4: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

RechnerarchitekturOrganisation Motivation Systemrealisierung weiteres Vorgehen

Zwei Aspekte der Rechnerarchitektur1. Hardwarestruktur: Art und Anzahl der

Hardware-Betriebsmittel und deren Verbindungsstruktur= Mikroarchitektur, hier z.B. Harvard-Architektur

2. Operationsprinzip: das funktionelle Verhalten der Architektur= ISA – Instruction Set Architecture= Programmierschnittstelle

⇒ Möglichkeiten zur Arbeit in dem Projekt

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 4 / 15

Page 5: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

Arbeit in dem ProjektOrganisation Motivation Systemrealisierung weiteres Vorgehen

1. Hardware-BezugI VHDL-Implementation der zugrundeliegenden

ArchitektureinheitenI Simulation der HardwareeinheitenI Synthesewerkzeuge zur Implementation

2. Software-BezugI AssemblerI Demonstrations- / AnwendungsprogrammB CompilerB Betriebssystemfunktionalität

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 5 / 15

Page 6: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

Realisierung des SystemsOrganisation Motivation Systemrealisierung weiteres Vorgehen

FPGA-Prototypenplatine

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 6 / 15

Page 7: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

FPGAOrganisation Motivation Systemrealisierung weiteres Vorgehen

Field Programmable Gate Array„Programmierbare Hardware“: kann durch Konfiguration sogeschaltet und verbunden werden, dass sich beliebige Netzlistenaus logischen Gattern, Flipflops, Addierern, etc. realisieren lassen

1. Schaltnetze ⇒ boole‘sche Funktionen2. Schaltwerke ⇒ endliche Automaten3. komplexe Systeme ⇒ Prozessoren, etc.

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 7 / 15

Page 8: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

FPGA (cont.)Organisation Motivation Systemrealisierung weiteres Vorgehen

I

Up to 150K LEs

Up to 8 transceivers,up to 3.125 Gbps

PCIe hard IP block

Up to 6.5-Mbitembedded memory

Up to 4 MPLLs

Up to 400-Mbpsexternal memory interfaces

Up to 360 embeddedmultipliers

Up to 475 flexibleuser I/O pins

Up to 4 PLLs

Altera CycloneIV

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 8 / 15

Page 9: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

FPGA (cont.)Organisation Motivation Systemrealisierung weiteres Vorgehen

I

Row, Column,

And Direct Link

Routing

data 1

data 2

data 3

data 4

labclr1

labclr2

Chip-Wide

Reset

(DEV_CLRn)

labclk1

labclk2

labclkena1

labclkena2

LE Carry-In

LAB-Wide

Synchronous

Load

LAB-Wide

Synchronous

Clear

Row, Column,

And Direct Link

Routing

Local

Routing

Register Chain

Output

Register Bypass

Programmable

Register

Register Chain

Routing from

previous LE

LE Carry-Out

Register Feedback

Synchronous

Load and

Clear Logic

Carry

ChainLook-Up Table

(LUT)

Asynchronous

Clear Logic

Clock &

Clock Enable

Select

D Q

ENACLRN

LE

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 9 / 15

Page 10: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

DE0-NanoOrganisation Motivation Systemrealisierung weiteres Vorgehen

I programmierbare Hardware: FPGAI Cyclone IV EP4CE22F17C6N [60 nm Prozess, 2009]I 153 I/O Pins, gesamt 256 PinsI 22 320 LEs≈ 270 000 GatterI 594 Kbit (interner) SpeicherI 66 HW-Multiplizierer: 18× 18 bitI 4 PLLs

I On-Board SpeicherI 32MB SDRAMI 2Kbit I2C EEPROM

I KonfigurationI über USB SchnittstelleI EPCS64: Flash, serielle Konfig.

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 10 / 15

Page 11: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

DE0-Nano (cont.)Organisation Motivation Systemrealisierung weiteres Vorgehen

I Ein-/AusgabeI 8 LEDsI 2 TasterI 4 DIP Schalter

I Beschleunigungssensor: ADXL 345, 3-Achsen, 13-bit AuflösungI A/D Wandler: ADC128S022, 8-Kanal, 12-bit AuflösungI Erweiterungsstecker

I 2× 40-Pin: 72 I/O Pins + Spannungsversorgung; 5V, 3,3V, GndI 26-Pin: 16 I/O Pins + 8 analoge Eingänge

z.B. Verbindung zu (Character-) DisplayI vordefinierte IP-Schnittstelle: cDisp14x6I 14×6 Zeichen

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 11 / 15

Page 12: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

DE0-Nano (cont.)Organisation Motivation Systemrealisierung weiteres Vorgehen

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 12 / 15

Page 13: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

DE0-Nano (cont.)Organisation Motivation Systemrealisierung weiteres Vorgehen

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 13 / 15

Page 14: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

weiteres VorgehenOrganisation Motivation Systemrealisierung weiteres Vorgehen

I Grundlagenvermittlung / Vorlesung Plenum

1. Festlegung der ISA Plenum

2.a Hardwareentwurf Kleingruppen

2.b Softwareentwurf Kleingruppen

B Koordination PlenumB Diskussion der Ergebnisse Plenum

⇒ Projektbericht als Abschluss

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 14 / 15

Page 15: 64-189 Projekt: Entwurf eines Mikrorechners · Ziel des Projekts OrganisationMotivationSystemrealisierungweiteres Vorgehen I Entwurf und Programmierung eines Mikrorechners I aktuelle

TerminplanungOrganisation Motivation Systemrealisierung weiteres Vorgehen

20.10. „Rechnerarchitektur: ISA / Pipelining / Speicherhierarchie“27.10. „VLSI- und Systementwurf“03.11. „Einführung in VHDL“

+ praktische Übungen mit den EDA-Werkzeugen10.11. Festlegung der ISA

. . .

A. Mäder – 64-189 Projekt: Entwurf eines Mikrorechners 15 / 15