Upload
sikke-arensberg
View
105
Download
1
Embed Size (px)
Citation preview
Forschungszentrum Informatik, Karlsruhe
Architekturentwurf und Emulation eingebetteter Systeme
Probevortrag
Karlheinz Weiss
FZI Forschungszentrum Informatikan der Universität Karlsruhe
2
Forschungszentrum Informatik, Karlsruhe
Gliederung
• Einführung und Motivation
• Analyse bestehender Entwurfsmethoden
• Definition der in dieser Arbeit eingeführten Methodik– 1. Stufe: Achitekturentwurf durch Bewertung von
Komponenten• Systematische Bewertung von Auswahlkriterien
– 2. Stufe: Überprüfung der Bewertung durch echtzeitfähige Emulation
• Emulationsumgebung: SPYDER-System
• Ergebnisse
• Zusammenfassung
• Ausblick
3
Forschungszentrum Informatik, Karlsruhe
Kommunikations-schnittstelle
Einführung: Eingebettetes System
anwendungsspezifischeSoftware
anwendungsspezifischeHardware
Mikrocontroller-Kern FPGA ASIC
SH3
7729-DSP
eingebettetes System
Umwelt
4
Forschungszentrum Informatik, Karlsruhe
MPC860
(16348 KByte, 4442 Bits, 357 Pins)
3
5
7
9
3
5
7
9
11
13
15
3 5 7 9 11 13 15
Firmware [log2(Bits)]
17
19
13
15
17
Technologie [log2(Pins)]
17 19 21
Funktionalität [log2(KByte)]
Y
X
Z
1
21
19
21
C167
(1024 KByte, 3280 Bits, 144 Pins)
Einführung: Entwurfsproblematik
MC8051
(128 KByte, 184 Bits, 40 Pins )
5
Forschungszentrum Informatik, Karlsruhe
Zusammenfassung: Motivation• Eingebettete Systeme bestehen aus wenigen, dafür
aber hochintegrierten Bausteinen
• Problemfelder beim Entwurf eingebetteter Systeme– Mikrocontroller
• wenig Freiheitsgrade, gibt Randbedingungen vor,
• steigendes Entwurfsrisiko
– ASIC-Einbindung• große Freiheitsgrade mit signifikanten Entwurfsrisiken
• höchste Auswahlpriorität (vor einem eigenem Entwurf)
– Technologie
– Echtzeitbetriebssysteme
– Entwickler
• Randbedingungen– immer kürzere Entwicklungszeiten, steigende Komplexität
6
Forschungszentrum Informatik, Karlsruhe
Analyse angewandter Entwurfsmethoden
SpezifikationSpezifikation
Partitionierung in HW und SWPartitionierung in HW und SW
Entwurfszeit
Meilen-steine
1
2
Start
Integration & TestIntegration & Test Ende 7
Implementierung Implementierung
SW-Architektur SW-Architektur 5
6
HW-Architektur HW-Architektur
ImplementierungImplementierung
3
4
Nachteil:Verzögerung
Vorteile:- am weitesten verbreitet- ergebnisorientiertNachteile:- Entwicklungsrisiko unkalkulierbar- Einschränkung der Auswahl [Gupta95]
In der Praxis eingesetzteMethode
7
Forschungszentrum Informatik, Karlsruhe
HW/SW-Partitionierung
HW/SW-Partitionierung
Einheitliche Darstellung
Analyse angewandter Entwurfsmethoden
Software-Synthese
Software-Synthese
Schnittstellen-Synthese
Schnittstellen-Synthese
Hardware-Synthese
Hardware-Synthese
System-IntegrationSystem-
Integration
Methode: Hardware/SoftwareCo-DesignGegenstand der Forschung
Änderung derPartitionierung
Einheitliche Systembeschreibung
Einheitliche Systembeschreibung
- Gerichtete Graphen- Zusandsmaschinen- Nebenläufige Programmiersprachen
Vorteile:- Auswahl anhand formaler Kriterien- frühzeitiger Einblick in das Systemverhalten- Implementierbar auf Rechnern
Nachteile:- Keine einheitliche Systembeschreibung - Definition des Entwurfsraumes- Freiheitsgrade bei der Partitionierung in vielen eingebetteten Systemen nicht gegeben
Vorteile:- Auswahl anhand formaler Kriterien- frühzeitiger Einblick in das Systemverhalten- Implementierbar auf Rechnern
Nachteile:- Keine einheitliche Systembeschreibung - Definition des Entwurfsraumes- Freiheitsgrade bei der Partitionierung in vielen eingebetteten Systemen nicht gegeben
8
Forschungszentrum Informatik, Karlsruhe
In dieser Arbeit eingeführten Methodik
1.Stufe: Komponenten-Bewertung1.Stufe: Komponenten-Bewertung
Intiale Partitionierung und KomponentenauswahlIntiale Partitionierung und Komponentenauswahl
Spezifikation der FuntionalitätSpezifikation der Funtionalität
2. Stufe: Komponenten-Emulation
2. Stufe: Komponenten-Emulation
über-nehmen
nein
ja
Hardware-Entwurf
ja
über-nehmen
2. Stufe: Komponenten-Emulation
2. Stufe: Komponenten-Emulation
nein
Software/Firmware-Entwurf
Bibliothek
neue Komp.Auswahl
neue Komp.Auswahl
VerbesserteHW/SW
Part.
VerbesserteHW/SW
Part.
SystemintegrationSystemintegration
9
Forschungszentrum Informatik, Karlsruhe
1.Stufe: Bewertung von Hardware
EntscheidungsfeldFunktionalität
EntscheidungsfeldFunktionalität
GesamtbewertungHW-Komponente
GesamtbewertungHW-Komponente
logischeBewertung
implementierungsspezifischeBewertung
EntscheidungsfeldTechnologie
EntscheidungsfeldTechnologie
EntscheidungsfeldTestbarkeit
EntscheidungsfeldTestbarkeit
Problemfeld: ASIC-Einbindung
Problemfeld: Technologieund Bauformen
EntscheidungsfeldBus-Schnittstelle
EntscheidungsfeldBus-Schnittstelle
EntscheidungsfeldInitialisierung
EntscheidungsfeldInitialisierung
Problemfeld: Mikrocontroller
Problemfeld: Echtzeitbetriebssysteme undFirmware
10
Forschungszentrum Informatik, Karlsruhe
1.Stufe: Beispiel Bus-Schnittstelle
Bus-SchnittstelleBewertung durch
Abgleich
Bus-SchnittstelleBewertung durch
Abgleich
Eigenschaften derASIC-KomponenteQuelle: Benutzerhandbuch
Eigenschaften des Mikro-controllers geben die Rand-bedingungen vorQuelle: Benutzerhandbuch
Komponentenicht
verwendbar
Komponentenicht
verwendbar
logischesVerhalten
Koppel-logik
nein
++
ZeitlichesVerhalten
jaja
nein
ja
nein
11
Forschungszentrum Informatik, Karlsruhe
Zusammenfassung: 1.Stufe
• Überprüfung des Entscheidungsfeldes Funktionalität ergibt entweder:– keine ASIC-Komponente Vorhanden, dann Eigenentwurf
– oder eine oder mehrere Komponenten vorhanden
• Bei vorhandenden Komponenten– erzeugt die Bewertung der ersten Stufe eine gewisse Rangliste
– Aussagen bzgl. der logischen und implementierungs-spezifischen Eignung einer Komponete
• Annahmen über die Komponenten werden durch Emulation in der zweiten Stufe überprüft– dazu notwendig: Werkzeugunterstützung (SPYDER-System)
– interativer Prozeß
12
Forschungszentrum Informatik, Karlsruhe
Paralleler SoftwareEntwurf
ParallelerHardware-Entwurf
2.Stufe: Beweis durch Emulation
specification
partitioning
SPYDER-VIRTEX-X2 SPYDER-CORE-P2
Integration(back-plane)
Hardware Software
KonfigurationPCI9080
PC
TrennungTrennung
13
Forschungszentrum Informatik, Karlsruhe
SPYDER-CORE-P2/SH3: Architektur
SH37709A or7729-DSP
133/66 MHz
16MB SDRAM
JTAG SER 0:2
Hochintegrierte Logik Analysator Stecker
connection toFPGA-tools
86
Erweiter-ungs-
stecker
86
Flash1 M x 32
CAN
10Base2Ethernet
EPROM1 M x 8
CPLDBuffer
RTOS: VxWorksBSP: TCP/IP, RS232, Flash HDI-Monitor
GNU-C Umgebung
14
Forschungszentrum Informatik, Karlsruhe
Verbindung zu CORE-tools
C-API-Routines for NT 4.0
SPYDER-Virtex-X2: Architektur P
CI
- S
LO
T PCI-interface
PLX-PCI9080
Xilinx-Virtex-FPGA
XCV300...XCV800
BGA 432
Arbiter
CPLD
XC95144xl
serielle EEPROMs 6 x 1Mbit
ExterneFPGA Konfigurationsstecker
Erweiterungsstecker I und II
hochintegrierteLogik Analysator Stecker
86
86
32
30
I
II
Konfiguration
Stromversorgung+ 2,5V / 10A+ 3,3V / 3A
Mic
roc
on
tro
lle
r
SSRAM128k x 32
or SDRAM4M x 32
SSRAM128k x 32
or SDRAM4M x 32
II
Memory Add-On Board
4Meg x 32 SDRAM or
256k x 32 SSRAM or
1Meg x 32 Flash
15
Forschungszentrum Informatik, Karlsruhe
Ergebnisse: Kommunikationsbereich
Mikrocontrolleri960
Mikrocontrolleri960
ASICWAC035-D
ASICWAC035-D
Hauptspeicher-Block
Hauptspeicher-Block
localerSpeicher
localerSpeicher
DMA
In Kooperation mit der Hilan Entwicklungs-GmbH, Karlsruhe
CPLDCPLD Ethernet
ATM
Ausgangspunkt: - WAC-035D kann MPC860 und i960-Mode- MPC860-Variante wurde bereits verwendet- i960-Variante hat Fehler: Kein DMA- Fehleranalyse: 1 Personen-Monat
Lösungsansatz:-FSM-Arbiter in CPLD-Entwicklungsaufwand: 2 PM
Resultat:-zeitverslust beim Umschalten-DMA-Leistung „signifikant“ unter spezifiziertem Wert
16
Forschungszentrum Informatik, Karlsruhe
Ergebnisse: Industrielle Automation
In Kooperation mit American Microsystems Inc, Dresden
• Emulation des digitalen Teils der Schaltung auf SPYDER
• Fehlererkennung, die bei Simulation nicht möglich war
• mindestens ein Entwurfschritt eingespart (ca. 50.000$)– zusätzlich: 3 PM (entsprechend 20.000$)
analoger Teil digitaler Teil
17
Forschungszentrum Informatik, Karlsruhe
Ergebnisse: Automotive Bereich
• SPYDER-Core-P2
• Emulation und Portierung von VxWorks auf SH3
• Aufwand: 1PM
• Vergleich: Fa. Becker– ca. 6 PM bis VxWorks
auf Target arbeitete
• in 2000: Umstieg auf vorgestellte Methodik
In Kooperation mit Becker Automotive Systems, Karlsbad
18
Forschungszentrum Informatik, Karlsruhe
Zusammenfassung
• Entwurfsmehtodik für eingebettete System – 1.Stufe: Bewertung von Komponeten (ASICs)
– 2.Stufe: Emulation zur Überprüfung der Bewertung
• Werkzeugunterstützung: SPYDER-SYSTEM– Paralleler Entwiklungsaubauf für Hardware und Software
– echtzeitfähige Emulation
– Ziel: Frühzeitiger Einblick in das interne System-Verhalten
• Ergebnisse– drei Beispiele aus der Evaluierung der Methodik und der Werkzeuge
• Hauptvorteile:– Beherrschung und Abschätzung des Entwicklungsrisikos
– Verkürzung des Entwurfsablaufs
19
Forschungszentrum Informatik, Karlsruhe
Ausblick
• Bewertungskriterien dienen als Grundlage für automatische Auswahlverfahren zur Unterstüzung des Entwicklers
• Implementierbar auf Rechner und Datenbanken
• Weiterentwicklung der Emulationsumgebung SPYDER– Bereits in Arbeit:
• SYPDER-CORE-P2/SH4-7751 PCI (Zusammenarbeit mit Hitachi)
• SPYDER-Virtex-X3E (Zusammenarbeit mit Xilinx)
• Evaluierung in der Methodik und Werkzeug durch mehrere Industrie-Partner und Universitäten