Forschungszentrum Informatik, Karlsruhe Architekturentwurf und Emulation eingebetteter Systeme...

Post on 06-Apr-2015

105 views 1 download

Transcript of Forschungszentrum Informatik, Karlsruhe Architekturentwurf und Emulation eingebetteter Systeme...

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