Electronic Design Automation (EDA) Spezifikation

Ähnliche Dokumente
Electronic Design Automation (EDA) Register-Transfer-Synthese

2.2 Register-Transfer-Synthese

c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}}

Modellbau Ampel für 10 LEDs (2x Auto- und 2x Füssgängerverkehr)

Laborübung 4. Zustandsautomaten (Finite State Machines)

Grundbegriffe der Informatik

Sommersemester Analyse II: Verhalten (Zustandsautomaten)

Vortrag zum Hauptseminar Hardware/Software Co-Design

Theoretische Informatik I

Zusicherungen und Laufzeit Überwachungen in der modellbasierten Software Entwicklung

SMAVIA Recording Server Version SP A

Lexikalische Programmanalyse der Scanner

Endliche Automaten. Endliche Automaten J. Blömer 1/23

Notationen zur Prozessmodellierung

Einführung in die Informatik

Modellbildung und Analyse eingebetteter Systeme für mechatronische Anwendungen mit höheren Petri-Netze unter Verwendung verschiedener Erweiterungen

Jürg Gutknecht, SI und ETH Zürich, April 2015

Digitalelektronik - Inhalt

Versuch D3: Busse, Speicher und Ampelsteuerung mit Speicher

1. Beschreibung der Aufgabe

Endliche Automaten. Im Hauptseminar Neuronale Netze LMU München, WS 2016/17

transportation SYMTES Testen mit System

Neues Verfahren zur Roboterzielführung ohne Kalibrierung

Einführung: Zustandsdiagramme Stand:

Automaten und Formale Sprachen ε-automaten und Minimierung

Eine Anleitung zur Entwicklung von Simulink-Targets für die Lehre. 10. MBEES 2014, Dagstuhl

Entwicklungsboard 16F1824

7 Endliche Automaten. 7.1 Deterministische endliche Automaten

Unified Modeling Language (UML )

AutoEdit: Vom Automat zum LaTeX Dokument

Elektrische Schnittstelle Signal

Grundlagen verteilter Systeme

Application Note Nr. 102 RS485 Kommunikation

- Prüfung - Prüfspezifikation für Anforderungen (Lastenheft)

UML fürs Pflichtenheft

VU Grundlagen digitaler Systeme

Theoretische Informatik I

SMAVIA Recording Server Version SP A

Anweisung für den Aufbau und die Verkabelung der Modulanlage mit DigiRef Vorwort

VS2 Slide 1. Verteilte Systeme. Vorlesung 2 vom Dr. Sebastian Iwanowski FH Wedel

12. Vorlesung. 19. Dezember 2006 Guido Schäfer

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Objektmodellierung. Grundkurs C++

System IWK. N-Kanal-Flickermeter nach IEC Copyright by Enetech Alle Rechte vorbehalten.

Anwenderhandbuch logiware IO-Stick in go1984

6. Modellierung von Informationssystemen. 6.1 Einleitung 6.2 Konzeptuelles Modell 6.3 OASIS Spezifikation 6.4 Execution Model 6.

Generierung von Steuerungsprogrammcode für SPS und μc aus Petri-Netz-Modellen

Recordersoftware Version SP C

2. Der Software-Entwicklungszyklus

Mit dem neuen Baukasten Computing Starter

Test. Dipl. Wirtsch. Ing. Alexander Werth 9-1

Lösungsvorschlag 2. Übung Technische Grundlagen der Informatik II Sommersemester 2009

EIDI 1 Einführung in die Informatik 1. PGdP Praktikum Grundlagen der Programmierung. Harald Räcke 2/217

Von der Idee zum Anforderungsmodell ohne Medienbruch

Benutzerhandbuch für eine Software-Anwendung gestalten

DALI 0-10V PWM. Datenblatt. Interface DALI auf 0-10V PWM. DT5 Schnittstellenmodul zum Einbinden von Leuchten mit PWM- Steuereingang in ein DALI-System

Basisanforderungen: Erweiterte Anforderungen: Das fertige Protokoll bitte im Aufgabentool von I-Serv unter Abgaben hochladen!

Nicht nur zum Spielen geeignet Atmels AVR und AVR32 Xplain Evalkitserie sind die ideale Hardwareplattformen für das neue AVR Studio 5

Steuerungsanlagen in der Bahntechnik

Die Softwareentwicklungsphasen!

Es gibt drei unterschiedliche Automaten:

Ethernet basierendes I/O System

Protokoll zu Grundelemente der Digitaltechnik

PSE: Analysesoftware für Logistiknetzwerke

Digitale Signalverarbeitung Vorlesung 5 - Filterstrukturen

1. Einleitung. 2. Aufgabenstellung. R. Bartholomä, Prof. F. Kesel, Prof. T. Greiner Fachhochschule Pforzheim, Tiefenbronnerstraße 65, Pforzheim

Semestralklausur Einführung in Computer Microsystems

Semantik von Programmiersprachen

Prüfung SS Mechatronik. Prof. Dr.-Ing. K. Wöllhaf

EasyLab: Modell-basierte Software-Entwicklung für mechatronische Systeme

Anwenderhandbuch logiware IO-Stick

Automatisierung kompletter Kühlanlagen mittels LabVIEW und PAC-Systemen

Medienarchitektur AVI. ein Vortrag von Christian Beugel

DALI PWM Interface. Datasheet. DALI to PWM Interface. DT5 Schnittstellenmodul zum Einbinden von Leuchten mit PWM- Steuereingang in ein DALI-System

FAQ. Sage Informationen zur Umstellung und dem Vertrieb von Sage 50 Handwerk

+++ Bitte nutzen Sie die integrierte Audio-Funktion von WebEx (Menü Audio -> Integrated Voice Conference -> Start auswählen), um uns zu hören!!!.

Reaktive Systeme und synchrones Paradigma

Vertiefungsrichtung Rechnerarchitektur

I. Alle Funktionen im Überblick (MF = Masterfinger)

Codes und Informationsgehalt

Thema 8 Ein Schätzverfahren für das Wachstum von Gefäßnetzwerken auf der Grundlage von Zufallsgraphen. 2.Definitionen aus Graphentheorie

WS 2009/10. Diskrete Strukturen

Zeitaufwand: ca. 45min. (je nach Geschick)

Infos zu IP-Symcon. von Thomas Reger (Tom3244)

Protokoll zum Praktikum des Moduls Technische Informatik an der JLU Gießen

Ampelsteuerung Merkblatt 1 Wie werden die Bauteile angeschlossen?

7.0 Endliche Zustandsautomaten und Steuerwerke

Funktionale Sicherheit Testing unter

1. eine Hilfe beim Editieren der Diagramme sein, indem es alle SDL-Symbole zur Verfügung stellt,

myavr Klassendiagramm der UML mit SiSy-AVR Schnelleinstieg für myavr Board MK3

Praxisgerechte Validierung von Sicherheitsapplikationen

Informatik. Teil 1 Wintersemester 2011/2012. Prof. Dr.-Ing. habil. Peter Sobe Fachkultät Informatik / Mathematik

Reguläre Sprachen und endliche Automaten

Inhalt. Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig.

Informationssystemanalyse Use Cases 11 1

Formale Sprachen und endliche Automaten

Anlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt

AQStation UP Input 4x

Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 8

Versuch: D2 Zähler und Ampelschaltung

Betriebssysteme Betriebssysteme und. Netzwerke. Netzwerke Theorie und Praxis

Transkript:

Electronic Design Automation (EDA) Spezifikation Inhalte einer Spezifikation Beispielspezifikation Ampelsteuerung Formale Beschreibung Blockdiagramme... für die Ampel Zustandsübergangs-diagramme... für die Ampel Task-Flow-Graphen... für die Ampel System Level Design Language... Vorteile

Spezifikation: Inhalte einer Spezifikation Ausgangspunkt jedes Entwurfsprozesses ist die Spezifikation des zu entwerfenden Systems. Diese soll dazu dienen, alle zu Beginn des Entwurfsprozesses gewünschten Eigenschaften und Randbedingungen formalisiert zu dokumentieren. Insbesondere bei der Arbeit in größeren Teams ist eine solche formale Spezifikation wichtig, damit alle an einem Projekt Arbeitenden einen Überblick über das Gesamtsystem haben. Gleichzeitig dient die (formale) Spezifikation als Referenz bei der Verfeinerung des Systems im Laufe des Entwurfsprozesses. Idealerweise sollte eine Spezifikation vollständig und widerspruchsfrei sein. Eine Spezifikation wird auf einer hohen Abstraktionsebene erstellt. Sie kann eine Vielzahl von unterschiedlichen Informationen enthalten. Je nach System elektrisch, elektro-mechanisch, digital, analog, mixed-signal wird die Spezifikation nicht alle der oben genannten Daten bzw. zusätzliche Informationen beinhalten.

Spezifikation: Beispielspezifikation Ampelsteuerung Als einfaches Beispiel sei hier eine Ampelsteuerung spezifiziert, also ein System, das im Wesentlichen lediglich ein Steuerwerk darstellt, das einen Kontrollfluss realisiert. Es beschreibt die Steuerung einer Hauptstraßen/Nebenstraßen-Ampel mit zusätzlicher Fußgänger-Ampel für die Hauptstraße und soll die in der Abbildung dargestellten Eigenschaften aufweisen. Neben diesen globalen Eigenschaften werden der detaillierte Aufbau der Ampelsteuerung und die Funktionalität mit verschiedenen formalen Methoden beschrieben.

Spezifikation: Formale Beschreibung In den meisten Fällen wird die Spezifikation in natürlicher Sprache abgefasst, da bislang keine einheitliche Sprache zur Beschreibung von Spezifikationen existiert. Neben der natürlichen Sprache werden für Teile der Spezifikation auch Blockdiagramme, Zustandsübergangsdiagramme oder Task- Flow-Graphen verwendet. Während Blockdiagramme der Beschreibung der Struktur eines Systems dienen, beschreiben Zustandsübergangsdiagramme das Verhalten des Systems. Mit Task-Flow- Graphen wird der Datenfluss eines Systems spezifiziert. Grundsätzlich kann die Spezifikation auch mit Hilfe einer formalen Sprache erfolgen. Dazu werden häufig Erweiterungen regulärer Programmierspachen (z. B. C) oder aber auch spezielle Systembeschreibungssprachen benutzt.

Spezifikation: Blockdiagramme Blockdiagramme werden in vielen Spezifikationen zur Beschreibung der grundlegenden Struktur eines Systems verwendet. Blockdiagramme bestehen aus Blöcken und Verbindungen zwischen den Blöcken, wobei jeder Block einer auszuführenden Aufgabe des Gesamtsystems entspricht. Die Verbindungen zwischen den Blöcken entsprechen dem Datenfluss zwischen den Blöcken und können bezüglich der Signalbreiten in einem Blockdiagramm spezifiziert werden. Ein Blockdiagramm basiert auf der Annahme, dass die Aufgaben des Gesamtsystems auf die Blöcke verteilt worden sind. Eine weitergehende Festlegung des Datenflusses zwischen den Modulen wie beispielsweise das Protokoll oder das Datenformat ist in einem Blockdiagramm nicht vorgesehen.

Spezifikation:... für die Ampel Im Bild ist das Blockschaltbild der Ampelsteuerung dargestellt. Die Ampelsteuerung besteht aus zwei Sensoren, die registrieren, ob Linksabbieger an der Ampel stehen bzw. ob eine Querungsanforderung durch Fußgänger besteht. Die Steuereinheit berechnet aus den Sensorsignalen sowie einem Timer den nächsten Ampelzustand. Der Timer dient der Steuerung der Intervalllängen, in denen eine Ampel auf grün geschaltet ist. Dabei kann das Zeitintervall, nach dem das Timermodul den Timeout auslöst, von außen gesetzt werden. Dazu wird ein 4-bit breites Signal benutzt. Das Signal Timeout signalisiert den Ablauf des Zeitintervalls. Die Ampeltreiber enthalten die Treiber für die Lampen der Ampel. Der akustische Signalgeber signalisiert durch ein Tonsignal die Grünphase der Fußgängerampel.

Spezifikation: Zustandsübergangs-diagramme Zustandsübergangsdiagramme beschreiben Zustände und Übergänge zwischen den Zuständen. Ein Systemzustand entspricht im Regelfall einem Satz von inneren Zuständen und/oder Ausgangswerten des Systems. Ein Zustandsübergang erfolgt jeweils bei der Änderung der Eingangsvariablen. Die Zustandsübergänge werden in Zustandsübergangsdiagrammen durch Kanten dargestellt. Die Zustände werden durch Knoten beschrieben. An den Zustandsübergängen werden jeweils die Eingangssignaltransitionen notiert, unter denen der entsprechende Zustandswechsel erfolgt. Zustandsübergangsdiagramme eignen sich besonders gut, um endliche Automaten zu beschreiben. Die Beschreibung von Systemeigenschaften oder Strukturinformationen ist in Zustandsübergangsdiagrammen nicht möglich. Je nach Art des beschriebenen endlichen Automaten erfolgt die Darstellung der Ausgangssignale.

Spezifikation:... für die Ampel Die Abbildung zeigt das Zustandsübergangsdiagramm für das Modul "Ampelsteuerung" aus dem Blockschaltbild der Ampel. Nach einem Reset startet der endliche Automat in dem Zustand, in dem die Hauptstraße grün hat. Nach Ablauf der Grünzeit, was durch das Signal Timeout signalisiert wird, wechselt die Ampel der Hauptstraße auf gelb. In Abhängigkeit von den Sensoren der Linksabbieger (LA) bzw. Fußgänger (FG) erfolgt der nächste Zustandsübergang. Wurde der Linksabbieger-Sensor ausgelöst, erfolgt jetzt die Linksabbiegerphase. Anschließend folgt die Grünphase der Nebenstraße, wobei die Länge dieser Phase vom Auslösen des Fußgängersensors abhängt. Danach erfolgt wieder der Wechsel in den Initialzustand.

Spezifikation: Task-Flow-Graphen ask-flow-graphen werden häufig bei der System-Spezifikation genutzt. Sie stellen den Kontroll- und Datenfluss zwischen den einzelnen Aufgaben (Tasks) eines Systems dar. Jeder Knoten des Graphen stellt dabei eine Aufgabe des Systems dar, die aus vielen einzelnen Schritten bestehen kann. Jede Kante des Graphen repräsentiert einen Datenfluss. Die einzelnen Aufgaben des Systems können zu Aufgabengruppen zusammengefasst werden. Ferner können Task-Flow-Graphen hierarchisch aufgebaut sein, so dass ein Knoten des Graphen in einem weiteren Task-Flow-Graphen detailliert beschrieben werden kann.

Spezifikation:... für die Ampel Die Abbildung zeigt den Taskflow-Graphen für die Ampelsteuerung. Man erkennt insgesamt vier Taskgruppen, die den Aufgaben Hauptstraße grün, Linkabbieger grün, Nebenstraße grün sowie Nebenstraße und Fußgänger grün entsprechen. Jede Taskgruppe besteht dabei aus mehreren Ampelphasen.

Spezifikation: System Level Design Language System-Level-Entwurfssprachen sollen eine einheitliche Darstellung für die Beschreibung eines vollständigen Systems bestehend aus Hard- und Software - liefern. Bisher sind diese Sprachen wenig verbreitet. Zurzeit wird international versucht, einen Standard für eine solche Sprache zu schaffen. Als Quasi-Standard hat sich mittlerweile SystemC etabliert. SystemC ist eine OpenSource-Initiative, die aus einem Zusammenschluss von Halbleiter-, IP- und EDA-Firmen besteht. SystemC ist frei verfügbar. Zur Simulation von SystemC-Code wird lediglich ein ANSI C++ Compiler benötigt. Neben der Entwicklung einer speziellen System-Level-Entwurfssprache wurde auch die Hardware- Beschreibungssprache Verilog um Konstrukte auf höheren Ebenen ergänzt.

Spezifikation:... Vorteile Der Einsatz von SystemC bietet verschiedene Vorteile gegenüber dem konventionellen HDL-Designflow. Wichtigster Vorteil ist die Ausführbarkeit der Spezifikation. Die auf hoher Abstraktionsebene beschriebenen Eigenschaften des Systems können bereits simuliert werden. Aufgrund des geringen Detailliertheitsgrads der Spezifikation erfolgt die Simulation auf dieser Ebene sehr schnell. Anschließend ist keine manuelle Umsetzung der Spezifikation in eine Hardware- Beschreibungssprache erforderlich, der C-Code wird lediglich verfeinert.