Home
Integration eines übergeordneten Entwurfswerkzeugs für
Contents
1. Sums UOHAOQE epl eA ueajooq p jqeu psjqeugl9s ue3jooq psjqeugsi aysodwio aysodwop ee JUEULOHWOISESIO auaysuondodnyejsy use J9Ud SI Ppe ueajooq SIBUSISITSJOUDI Buns ve 1 qL ueajoog pa qeua uoxng UONNIYISUYI PSUSeH SJOUOJSI ysiqAeuy suondo eysodwo yuased O1JUODS CSIO a6eqsuonesnbiyuopdnjz1e s abegawosjamdnners zebed L N Lobed uondodnpeysy uordo UONdOAHP OU L uondox gt ayydnueis Buns ned Bo soyuondo L ueajoog p jqeu sedssAsuoydo N N uong UOYNGISMOIg J M A Adud solnuondo POL p a14 X MalAY JUoNdo olpnysjensinuondo uopng uoyngy99y9 all 4yoyequondo L L L Jausjs JuondodnyeIsI lt lt De gt pez iMmdnyezsunI 0 dnpes e Joyein6yuoyjooLdnyeIs V abegsuoneinbyuoodnyeys He qsuojesnbyuogdnye s ob abegewoojemdnuers abe 4JBWOSJSMANNEISISB Osa bedppe ue3jooq YSIUIJUBO ueajoog ystu JUIOUSd puezim In asdijaa DJO ou dnyejst lt lt adA LeJep gt gt Piezim ave lasd 510 wo abegpsezim lt lt adA LeJep gt gt p ez mdnyneIs V I DIE SEI asdijpa B10 WOY p ez m lt lt adAeyep gt gt Buns UoOndCE epleA Buns ued yyed 9S Buns yyegjyeb ueajooq pajqeua p jqeuz s ueajoog PSIgEUFSI OL PEYPSPEISSUONNAUONEIOTS
2. 2 2 2202 3 22 EelipselDE 222 EE e in beds sten es 8 23 Visual NE 200 ee EE en ee am a 8 2 1 Das Altera Prozessmodell in seiner urspr nglichen Form und erweitert um Drit therstellertools im Vergleich mit dem ESDE Prozessmodell 9 3 1 bersicht ber die Eclipse Architektur in Anlehnung an DFK 05 CD ROM VO kc Se a a a OY Be ES 14 3 2 Abh ngigkeiten der Plugins des Systems untereinander und Abh ngigkeiten von Fremd Plugins go ook RAS SR AERA SERS EAE RE EA PER ES 25 3 3 Bereitgestellte und angeforderte Schnittstellen der wichtigsten Plugins 26 34 Auswahl der Messdaten na ae eh a ae ee we 27 3 3 Eistellten Bericht anzeigen a ee a ROR era har 27 3 7 Auswahl der Projektvorlage im New Project Wizard 2 2 222 200 30 3 8 Konfigurieren der Variablen einer Projektschablone 30 3 10 Seel de Srartup Wizard ssa rodea Oe dci a a A Ei rn OE 35 3 11 Seite 2 des Startup Wizard an 0 a wa as sn aaa ae 35 3 6 Vererbungshierarchie bei der Implementierung einer Werkzeugart 36 3 9 Vererbungshierarchie bei der Implementierung einer Projektvorlage 37 3 12 Wizard zur Pflege der Konfigurationen der Standardtools 38 4 1 Das Left Shift Prinzip von Andrew Farncombe 2 222 0 40 A 1 bersicht ber die Aktoren im System 46 a2 Gesch ftsprozesse des Anwenders Aus nun Se na aa EROS pt 46 AS Seite des Startup Wizard u Era EES OEE EERE SORES G 61 A4 Seite de Siam Wizard
3. lt xs attribute name moduleConfiguration type xs string gt lt optional for merging logs gt lt xs complexType gt lt xs element gt lt xs schema gt Das Verschmelzen von Messdaten mehrerer Module bernimmt nachfolgendes XSL Transfor mationsskript Dabei geht das Skript so vor dass immer nur eine XML Datei in die XML Datei mit dem kumulierten Inhalt bernommen wird Welche Datei hinzugef gt wird ist ber den Parameter targetFile anzugeben Hauptaufgabe des Skripts ist beim Einf gen neuer Daten die Modulinformationen moduleName moduleDate moduleTime und moduleConfiguration als Attribute an die Daten anzuh ngen da diese Informationen sonst verloren gehen w rden Listing C 2 Das XSLT Skript costLogMerge xs1 kumuliert die Messdaten zweier Module lt xml version 1 0 encoding UTF 8 gt lt xsl stylesheet version 2 0 xmlns xsl http www w3 org 1999 XSL Transform xmlns xs http www w3 org 2001 XMLSchema xmlns fn http www w3 org 2005 xpath functions exclude result prefixes xs fn jxsl lt output format close to zquery gt lt xsl output method xml encoding utf 8 omit xml declaration yes gt lt xsl param name targetFile gt lt xsl variable name moduleName select CostLog Header Module Name gt lt xsl variable name moduleDate select CostLog Header Module Date gt lt xsl variable name moduleTime select CostLog Header Module Time gt lt xsl var
4. org eclipse ui elementFactories Der Erweiterungspunkt dient der Definition von Elementfa briken zur Persistierung und Erstellung von persistierten Objekten des Typs IAdaptable Eine solche Fabrik die von der Schnittstelle IElementFactory erbt erstellt beim Start der Workbench Objekte aus ihrem persistierten Memento heraus Im Gegenzug dient eine von IPersistableElement implementierte Klasse dazu beim Beenden der Workbench das Objekt aus dem bergebenen Memento heraus zu speichern Der Erweiterungspunkt wird zum Persistieren der Ausf hrungskonfigurationen und der Konfigurationstypen verwendet 3 2 Schnittstellen der Plugins 19 org eclipse ui commands An dieser Stelle k nnen abstrakte Befehle definiert werden Die konkrete Aktion ist vom Kontext abh ngig So kann derselbe Befehl im Editor eine andere Aktion ausl sen als zum Beispiel im aktiven Navigator Definiert werden hier die Befehle Run und Run Last Launched org eclipse ui bindings Verkettet Tastenkombinationen mit bereits festgelegten Befehlen sie he org eclipse ni commands Verschiedene Tastenkombinationen k nnen zu Schemata zu sammengefasst werden und einer Betriebssystemplattform oder einer Nationalit t ange h ren org eclipse ui popupMenus Dieser Erweiterungspunkt hilft bei der Realisierung von Kon textmen s Es k nnen Men punkte f r das Kontextmen bei einer bestimmten Auswahl von Objekttypen Object Contribution oder im Kontext einer bestimmten
5. L yoalgo Buys eigelien anjeAjob soyejduay n DISZIA epr Usel ap woy Uop2egetgiduieu GE UE sajyejdway In prezim opr Wise Izy ap o JaplAosga qeie l SEU saje dulsy In psezim opr Uer TS OP Wo pJez mayejdwa U2eloiduah V uegjoog JoUoyyssaJBoud JOWUOW elo alos Ustut JuuoUed eyeapieiq1 eyep HUl INPJezIm opr wsoy op woy P eziyjus uogpeloid lt lt 99eHEJUI gt gt psezim ep wise Izy epebeyoed Projektvorlage lerung einer Vererbungshierarchie bei der Implement Bild 3 9 isierung 3 Real 38 QuoneinByuogoedssksajeaso uegjoog UOHeunByUODIedsSsAssjsixe Quojesnbyu0gbo7 s05D9 e919 ueajooq UOI eINBYUODBO7 SODs s x9 Buys yged Bus aduasajaid uondoy ed310 S Buys Bus ygediinejap Buys aduasajaid uordoyJedpeol ue3jooq payoay Buys aussi uondop jqeu3 10 S ueajooq Bums sue UONdOPSIIEUFPEO 340 5 9U 1 J JdI 910 99U919 014 96 Jabeuewupunel s eueyyyounelo buns SOJdASSAS GSLOAISS WO SJJ ADVNOVd 3LVM3N39 Bus SIOT LO ASSHL WOUYF LYOdsaYy LSO9 ALVYANADS iandnyeIs asnkeuy suoydo o aysodwio9 yuased OJJUODS C9JO Qsuondgeyeplen uondodnyeysi uondo uodo uondodnyeys Aesyuondo suondoppe jpow Sums DJASSAS NOILdO Sus DOTILSOO NOILdO bus HLWd buns QA IN S 9U 4 J AddNHVJSI lt lt AJUI gt gt
6. dazu die entsprechenden Objekte als ausf hrbar zu markieren Sp ter kann die Ausf hr barkeit durch einen einfachen Adaptertest berpr ft werden org eclipse core runtime preferences Eine Implementierung der Schnittstelle AbstractPre ferencelnitializer muss die Funktion initializeDefaultPreferences enthalten Diese Methode wird beim Laden der Standardeinstellungen des Plugins aufgerufen damit das Plugin die Einstellungen selbst auf die Standardwerte setzen kann ber die Erweiterungsstelle wird das Setzen der Einstellungsseiten auf die Standardwerte definiert org eclipse core variables dynamicVariables Am Erweiterungspunkt k nnen Variablen ge nannt werden sowie eine entsprechende Ersetzungsfunktion via IDynamicVariableRe solver die zum Anwendungszeitpunkt die Variable durch eine Zeichenkette ersetzt Das Plugin de fzi esm ide run erstellt die Variablen workspace_loc project_loc project_path project_name resource_loc resource_path resource_name con tainer_loc container_path container_name string_prompt file_prompt fol der_prompt und selected_text org eclipse core expressions propertyTesters Erlaubt das Testen von Objekten auf gewisse Eigenschaften innerhalb eines Manifests in der XML Ausdruckssprache von Manifestda teien Durch das fr hzeitige Testen von Eigenschaften innerhalb von Manifesten kann unn tiges Laden von Plugins vermieden werden Die anzugebende Testerklasse muss sich von PropertyTester
7. type filter text E General C C Appearance Build Console Code Formatter Editor File Types Indexer Parser PathEntry Variables Work In Progress HDL Editor Color Error Parser Help Install Update Run Console 5 Launching Launch Configi String Substitution Team Tools Tool project builders stored in an old format will be migrated to a new format when edited Projects which store builders using an old format will be migrated whenever a change is made Once migrated project builders will not be understood by installations using these older formats Confirm before migrating tool project builders for edit Confirm before migrating projects to the new format Set up defaut tool configurations manually Select a wizard Create a preconfigured Project Wizards type filter text amp General amp cvs Embedded Development ep Bild A 5 Startup Wizard manuell starten Bild A 6 Seite 1 des New Project Wizard 62 A Pflichtenheft New Project Embedded System Project Create a new embedded system project Project name TestProjecti d Use default location Location l C Users Andi Eclipse test workspace TestProjectl Browse Finish New Project Templates system project v Available Templates Select one of the available templates to generate
8. 3 2 3 Das Plugin de fzi esm ide wizard F r die Erstellung von Projekten aus Vorlagen ist diese Komponente zust ndig Eine hnliche Aufgabe hat das Plugin org eclipse pde ui es f gt der Oberfl che einen Wizard f r die Erstellung neuer Pluginprojekte aus Vorlagen hinzu Teile von Struktur und Implementierungen k nnen von diesem Plugin kopiert werden Folgender Erweiterungspunkt wird bereitgestellt 24 3 Realisierung projectContent Eine Erweiterung dieses Punktes f gt dem Wizard eine weitere Vorlage hinzu Neben der Angabe eines repr sentativen Icons und Namens f r das Auswahlmen muss die Schnittstelle IProjectContentWizard implementiert werden Folgende Erweiterungspunkte werden f r Erweiterungen ben tigt org eclipse ui newWizards An dieser Stelle werden Wizarddialogseiten registriert die zur Er stellung eines bestimmten Ressourcentyps gedacht sind Zu einem Wizard kann seine bergeordnete Kategorie in der Wizardliste ein Icon sein Name und nicht zuletzt ei ne Implementierung abgeleitet von der Schnittstelle INewWizard angegeben werden de fzi esm ide wizard projectContent Dieser Erweiterungspunkt wird vom Plugin selbst an geboten Zum Zeitpunkt der Studienarbeit existiert lediglich eine Vorlage Minimal Cosimulation Project f r ein minimales ESDE Projekt mit einigen Steuerelementen zur Parametrisierung der Vorlage 3 2 4 Das Plugin org eclipse cdt Die Komponente erweitert die Plattform um einen voll
9. 4 3 Ausblick e o o o oo ooo EE E NEE NEE l o Das Plugin de fzi esm ide run Das Plugin de Io eem de oos Das Plugin de fzi esm ide wizard Das Plugin org eclipse cdt Das Plugin net sourceforge veditor Das Plugin com svedelivery xmlauthor Ausgewahlte Teile des Programmkonzeptes Werkzeug zur Generierung von Kostenberichten Eigene Projektvorlage Konfigurierung der Standardwerkzeuge A Pflichtenheft A 1 Zielbestimmung A 1 1 SL A 1 3 Musskriterien Wunschkriterien Abgrenzungskriterien er e ee ee ee e e e e e e ee er e ee ee ee e e e e e e e e e e e o se e esso o e e e e e e e e e e e e o E ENEE E E E ENEE NEE EE E E NEE NEW l e e e e o se e ee ee ee e e e e e e e e oo ooo o se ess s o er e oo o o ooo booo o lol l o er ooo oo booo obol bl l er ooo oo booo olol lb l l er e s o oo oo oboo o o lol l o rrr er eve DN E ooo oo booo oll GE NEE NEE er 1111111110 e e o o o o eve e o o ooo ool l o er 222211 E NEE E NEE ENEE E E E E NEE NEE o er eve DN E o ooo oboo bolbol lb l l o o e oo o o ooo booo o lol l o er o ooo ooo obolo l lb l l o x Ww oe Feb o Nu A 12 13 14 20 23 24 24 24 27 27 30 34 39 39 39 41 VI Inhaltsverzeichnis A2 Prod kteinsat soise a mrada a Beek ER ea 44 A21 Anwendungshereiches ses sae goro Gale diaa
10. 58 A Pflichtenheft Daten wirdvorausgesetzt im Folgenden werden lediglich solche Daten besprochen die durch die erweiterten Funktionen anfallen D0010 Auswahl der zu konfigurierbaren Standardwerkzeuge aus F0010 Diese werden somit bei jedem Start der Anwendung sowie beim manuellen Start des Startupwizards F0020 verifiziert D0030 Ge nderte Editoreinstellungen f r C VHDL und XML Editoren F0040 Z B Einf rbung der syntaktischen Elemente D0040 Erstellte Kosimulationskonfigurationen f r die Funktionen F0050 und F0060 D0050 Erstellte Konfigurationen der Standard Werkzeuge f r die Funktionen F0070 und F0080 D0060 Erstellte Konfigurationen von externen Werkzeugen f r die Funktionen F0090 und F0100 D0070 Erstellte Konfigurationen des Generators f r Berichte f r die Funktionen F0110 und F0120 D0080 Erstellte Konfigurationen des Generators f r Systemspezifikationen f r die Funktio nen F0130 und F0140 A 6 Produktleistungen L0010 Generieren eines Berichts F0120 aus 10000 Messdaten dauert unter 1 Minute L0020 Generieren von Systemspezifikationen F0140 aus einem Skript kleiner 100 kB dauert unter 30 Sekunden A 7 Benutzungsoberfl che In diesem Abschnitt werden die von den Funktionen vorgegebenen Dialogschnittstellen vorge stellt Art und Aufbau der Dialoge sind dem Stil von Eclipse und der Java Development Tools JDT Erweiterung angepasst H ufig komm
11. Beschreibung Der gr te Nutzen einer Projektschablone besteht in der Zeitersparnis Eigene Projektschablonen erleichtern das h ufige Neuerstellen von Projekten die schon gewisse oft vorausgesetzte Auspr gungen mitbringen sollen A 9 Technische Produktumgebung Das System selbst stellt gewisse Erwartungen an seine Umgebung die es einzuhalten gilt A 9 Technische Produktumgebung 73 A 9 1 Software e Java Laufzeitumgebung Version 1 5 mindestens in der Standardausgabe J2SE 5 e Betriebssystem f r das die genannte Java Plattform verf gbar ist A 9 2 Hardware e Intel Pentium 4 Prozessor mit mindestens 2 4 GHz Taktfrequenz e 1024 MB Arbeitsspeicher LAN Anschluss mit Verbindung ins WAN m glichst ein 19 TFT Monitor mit einer Aufl sung von 1280x 1024 Tastatur 3 Tasten Maus mit Scrollrad A 9 3 Orgware e garantierte Aktualit t des Betriebssystems e Kompatibilit t der Umgebung mit der Anwendung das hei t die Hardware die Versi on des Betriebssystems der JVM und die Version von Eclipse m ssen mit dem Produkt vertr glich sein A 9 4 Produkt Schnittstellen Diese vier Anwendungen m ssen f r die Arbeit mit dem System installiert sein Um eine op timale Eingliederung des Systems in den Entwurfsprozess zu erhalten sind insbesondere die Versionen der Anwendungen zu beachten e MentorGraphics ModelSim 6 e Microsoft Visual Studio 6 e Altera Quartus II e Altera NIOS II IDE 74 A Pflichtenheft
12. Erg nzung der Altera Werkzeuge hinzugezogen werden kann Abbildung 2 1 veranschaulicht welche Aufwands und Kostenersparnis hinter der Anwendung des ESDE Prozessmodells liegen kann Im direkten Vergleich mit Alteras Standardprozessmodell das sich nur der Werkzeuge von Altera bedient ist ca 30 40 weniger Aufwand n tig damit fallen ca 40 60 weniger Kosten an im Vergleich dazu spart das um MATLAB und Universe COVER erg nzte Altera Prozessmodell nur gesch tzte 10 20 an Aufwand und lediglich 20 30 an Kosten gegen ber dem Standardprozessmodell ein LK 07 Der Vergleich zeigt dass das gesch tzte Potential des ESDE Prozessmodells gr er ist als das seiner Konkurrenten Nicht nur die Qualit t der Tools sondern vor Allem die Qualit t der zu Grunde liegenden Prozessmodelle sind f r Aufwand und Kosten verantwortlich zu machen Eine konsequente Werkzeugunterst tzung in allen Entwurfsphasen hilft Aufwand und Kosten zu reduzieren Eine Oberfl che in der Form eines Metawerkzeugs die s mtliche in den einzelnen Phasen verwendeten Werkzeuge verwaltet ist nicht auffindbar 2 3 Wahl der Zielplattform Bild 2 2 Eclipse IDE Bild 2 3 Visual Studio NET 2005 Die Wahl einer geeigneten Zielplattform ist de fakto der Entwurfsphase zugeh rig Dennoch sollte die Entscheidung m glichst noch vor der Entwurfsphase gef llt werden da sie alle anderen Entwurfsentscheidungen ma geblich beeinflusst Im
13. Qa Run this batch file here 2 Q System Specification Package Generator Generate package files from selected Variable Value Append environment to nativ Replace native environment with Create manage and run configurations Run an external program DSslez ype fier text By Cost Repert Generator Name Open selected VisualStudio project El Main Ren Environment TESA Qu Generate cost report from these cost Qh Program Qa Run Atera NIOSIDE here Qa Run Atera Quartus There Qa Run ELAView onthisfile Qp Run Modelsim in thie directory Qa Run this batch file here Qh System Specification Package Generator Generate package files from selected unch in background Save as Local file Shared fle Display in favorites menu Console Encoding D Tools o Default Cp1252 Other 15038591 Standerd Input and Output Allocate Console necessary for input Die ace Browse File System Variables Append Apply Bild A 22 Registerkarte 3 einer konfiguration Programm Bild A 23 Registerkarte 4 einer konfiguration Programm Bild A 21 Registerkarte 2 einer Programm 68 A Pflichtenheft falls das Werkzeug als Favorit markiert ist Da oft die Auswahl der Resourcen zum Zeit punkt der Anwendung des Werkzeugs wichtig ist bietet sich der Start innerhalb der
14. 10 Fortschrittsanzeige des New Pro ject Wizard A 7 Benutzungsoberfl che 9 C C NoiseCtrl_Fxh Embedded Systems Development Environment SM KMA HMG i OW iG Ti Ror E C C 23S Navig Projen alas SE TestProjectl Archives Documentation H E ModelSources E Simulation TAMIA AAA ie ied Sew tne died tern Readers 1 1 11111111 D s Simulation fier TUM CC Visual_AvalonMasterModel System Specific Header Debug include SystemSpecification_pkg h VISUAL_AVALONMASTERM E VISUAL_AVALONMASTERN ifdef COSIMULATION E VISUAL_AVALONMASTERN include CoSim Lib h E VISUAL_AVALONMASTERN include lt stdio h gt BE VISUAL_AVALONMASTERN include lt stdlib h gt Synthesis include lt math h gt G SystemSpecification include lt assert h gt Tas include lt math h gt include fixed _point h include erf_x h include AvalonMasterModel_LongRange h ifndef _NOISECTRL_FX_ define _NOISECTRL_FX_ HWACC_NOISEARITI fim fin faval sqrt2 sgrt2_shift sart_fx COMPARATOR STL COMPARATOR ST_L COMPARATOR ST_R COMPARATOR STE COMPARATOR GT COMPARATOR _GT_L COMPARATOR GLP COMPARATOR GL COMPARATOR_GTV COMPARATOR_GTV COMPARATOR_GTV COMPARATOR_GTV MEA WANTED MFAR_TOLERANCE MFAR_WANTED_INT r else R Samplectrih include lt stdio h gt L Nios c inolude lt io h gt L NoiseCtrl Fic include alt_types h L SampleCtrl c include
15. ADC_CTRL_2 AcamCtrl CI_ARITH_FIX3216 LongRangeBuffer NIOS eArith FX on NIOS NoiseThresholdCtrl PulsePrediction LongRangeNoiseArith stem Configuration Value Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www zi de ess Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess 82 C Kostenbericht 15 30 lt H ter Module Name ADC_CTRL_1 ADC_CTRL_2 AcamCtrl CI_ARITH_FIX3216 LongRangeBuffer NIOS NoiseArith FX on NIOS NoiseThresholdCtrl PulsePrediction LongRangeNoiseArith Value Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess 17 30 Module ADC_CTRL_1 me ADC_CTRL_2 AcamCtrl CLARITH_FIX3216 LongRangeBuffer NIOS NoiseArith FX on NIOS NoiseThresholdCtrl PulsePrediction LongRangeNoiseArith Value Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www zi de ess 83 19 30 3 Dynamic System Parameters D I ith 20 Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www zi de ess Cost report created on 04 04 2007
16. AvalonMasterModel is GENERIC synthesis translate_off TratanceName arrinn mNinesaftCarenc Bild A 12 VHDL Perspektive 64 A Pflichtenheft Auf der Registerkarte Environment lassen sich f r das auszuf hrende Programm Umge bungsvariablen konfigurieren Welche Umgebungsvariablen verf gbar sind zeigt die Liste von Variablennamen Wert Paaren Buttons rechts davon bieten an neue Umgebungsvaria blen hinzuzuf gen und vorhandene zu bernehmen Eine Alternativauswahl im unteren Bereich der Karte berl sst es dem Anwender ob vom System definierte Variablen sicht bar sind oder nicht Abbildung A 17 Bei der Registerkarte Common handelt es sich um allgemeine Einstellungen der Konfigu ration bez glich ihres Speicherortes lokal im Projekt oder global im Workspace sichtbar und ihres Verhaltens und Erscheinungsbildes im Workspace Soll die Ausf hrung unsicht bar erfolgen Soll die Konfiguration im Favoritenmen des Workspace erscheinen Wei terhin kann festgelegt werden ob die Standardausgabe des Prozesses berwacht werden soll Konsole wie der Text der Standardausgabe kodiert ist und ob die Standardausgabe in eine Datei oder eine Sicht geschrieben werden soll Zu F0060 Starten eines Projekts ber eine Kosimulationskonfiguration Das Aufrufen einer Kosimulationskonfiguration kann auf mehrere Arten erfolgen Ent weder kann der Kosimulationskonfiguration
17. Javascript kann an verschiedenen Stellen in den Generatorprozess eingegriffen werden 28 COM Component Object Model Propriet re Technologie von Microsoft zur Realisierung von Komponenten nach dem Client Server Prinzip auf den Windows Betriebssystemen Wird in Zukunft vom verwalteten Net Komponentenmodell abgel st das auf der Common Langnage Runtime Schicht CLR aufsetzt und damit eine h here Abstraktion vom Be triebssystem erreicht Die Interoperabilit t zwischen den Modellen ist in beide Richtun gen m glich 10 ESS Embedded Systems and Sensors Engineering eine Abteilung innerhalb des Forschungs zentrums Informatik FZI Karlsruhe die schwerpunktm ig nach neuen Methoden in der ingenieursm igen Entwicklung eingebetteter Systeme und Sensoren forscht 1 FLI 5 FPGA Field Programmable Gate Array ein frei programmierbarer Logikschaltkreis 1 5 FZI Das Forschungszentrum Informatik Karlsruhe ist eine gemeinn tzige Forschungseinrich tung des Landes Baden Wiirttemberg 1 3 41 GUI Graphical User Interface grafische Benutzeroberflache 15 33 IBM Die International Business Machines Corporation ist seit den 50er Jahren in der Hardware Software und Betriebssystementwicklung tatig Aus der Feder des Unternehmens stammt unter Anderem die Eclipse Plattform 8 92 Glossar IDE Integrated Development Environment Eine integrierte Entwicklungsmgebung fasst alle bei der Entwicklung anfallenden Aufgaben in einer in der Regel gra
18. Kopiervorgangs nach Befehlen die er ausf hrt und Variablen die er er setzt Die GUI Repr sentation der Variablen wird erst in der n chsten Verfeinerungsstufe imple mentiert Hier wird die Verwaltung der Variablen in Form von Optionen ITemplateOption eingef hrt Optionen k nnen registriert initialisiert und abgefragt werden In der n chsten Spe zialisierungsstufe OptionTemplateSection wird die Verwaltung der Optionen auf mehreren Wizard Seiten realisiert Die letzte Spezialisierung findet durch die Klasse IDETemplateSection statt hier wird der Pfad festgelegt in dem die Vorlage gesucht wird Der unterste Verzeichnis name wird hier noch durch die Methode String getSectionId offen gelassen und in der ei gentlichen Vorlagenimplementierung als R ckgabewert minimalCosimulation festgelegt 3 3 3 Konfigurierung der Standardwerkzeuge Eine bestimmte Auswahl von Tools gilt als wichtige Grundlage f r den Entwurf mit der ESDE Da f r die Anbindung dieser Tools bekannt sein muss an welcher Stelle im Dateisystem die Anwendung installiert wurde ist eine Interaktion mit dem Anwender unabdingbar Konfigu rationen werden innerhalb des Workspace erstellt wird also ein neuer Workspace eingerichtet existieren zun chst keine Konfigurationen Bei jedem Start und nach geladenem Workspace kann Code ausgef hrt werden Der Einsprung punkt ist die Methode earlyStartup der Schnittstelle org eclipse ui startup IStartup 3 3 Ausgew hlte Teile
19. Oberfl che soll als Frontend f r die Verwaltung der Projekte dienen Artefakte sol len formatgerecht angezeigt und editiert werden k nnen Wie f r moderne Texteditoren blich mit Syntaxhighlighting Im Szenario sind dies haupts chlich die Formate C VHDL und XML 2 2 Existierende L sungsans tze 7 Template Wizard Ein Vorlagengenerator soll die Erstellung von beispielhaften Projekten durch f hren Der Generator soll leicht um eigene Vorlagen erweiterbar sein Werkzeuganbindung Der schnelle Aufruf beliebiger externer Programme soll m glich sein Artefakte sollen mit beliebigen externen Programmen bequem ffenbar sein Werkzeugverbindung Konverter sollen Artefakte f r die Weiterverarbeitung in andere For mate umwandeln Auswertung Bei der Simulation gemessene Daten sollen in Form eines Berichts visualisiert werden um Aufschl sse ber die Kosten einzelner Module zu geben Eine flexibel anpass bare Auswertung hilft ma geblich dabei Defizite im Entwurf fr hzeitig zu erkennen und dadurch unn tige Kosten zu vermeiden Im Szenario werden in der Simulation Kosten be rechnet und in einem XML Dokument zusammengefasst anschlie end werden die Daten grafisch aufbereitet Aus diesen Anforderungen werden sp ter feingranularere Gesch ftsprozesse abgeleitet die die Grundlage f r die formal spezifizierten funktionalen wie auch nichtfunktionalen Anforderun gen des Pflichtenheftes bilden Das Pflichtenheft kann im Anhan
20. Re sourcensicht Navigator View an indem auf die entsprechende Auswahl mit der Maus ein Rechtsklick ausgef hrt wird im sich ffnenden Kontextmen im Unterpunkt App ly Tool ist die schnelle Auswahl von Favoriten ebenfalls m glich Bei nicht als Favorit markierten Konfigurationen muss der Einstellungsdialog f r Werkzeugkonfigurationen ge ffnet werden dort die entsprechende Konfiguration ausgew hlt und Run Tool gew hlt werden Zu F0090 Konfigurierung des Generators f r Berichte Die Registerkarte Main enth lt Editierfelder f r die einzulesende XML Datei und den Ausgabeordner Beide enthalten einen Button der einen Auswahldialog von Workspace Resourcen erlaubt sowie einen Button um bekannte Variablen einzuf gen Checkbox Elemente erm glichen die Wahl ob PDF HTML oder beides generiert werden soll Ab bildung A 24 Die Registerkarte Common enth lt allgemeinere Einstellm glichkeiten ihr Aufbau ent spricht dem in F0050 ohne die f r die Konsole notwendigen Einstellungen Im oberen Abschnitt der Karte l sst sich der Speicherort der Konfiguraiton definieren w hrend im unteren Bereich die Konfiguration im Favoritenmen sichtbar gemacht werden kann Zu F0100 Erstellung eines Berichts an Hand von Simulationsdaten Die Interaktion mit dem System gestaltet sich zun chst analog zum f r F0080 geschil derten Aufruf Abbildung A 25 Anschlie end gilt es jedoch in einem sich ffnenden Fenster die Auswahl der e
21. Sicht oder ei nem bestimmten Editor Viewer Contribution eingerichtet werden Die Sichtbarkeit kann abh ngig von einer gemeinsamen Oberklasse oder den Namen selektierter Objekte Wild Cards gemacht werden Alle anderen Eigenschaften sind konform zu den Eigenschaften gew hnlicher Men punkte die f r den Erweiterungspunkt org eclipse ui actionSets angegeben werden k nnen Das Kontextmen wird f r eine beliebige Selektion von Objekten um ein Untermen Run As erweitert das durch RunContextualLaunchAction mit kontextabh ngigen Men punk ten gef llt wird RunContextualLaunchAction erbt daher von I0bjectActionDelegate und zur Erstellung der Men s von org eclipse jface action IMenuCreator Au erdem wird der Konsolenansicht ein Kontextmen mit den Unterpunkten Remove All Terminated und Preferences hinzugef gt org eclipse ui themes Eigenschaften die das Erscheinungsbild der Benutzerschnittstelle be treffen das hei t zu verwendende Farben und Schriftarten k nnen hier generiert werden und zu einem Thema gruppiert werden Die Eigenschaft wird automatisch im Einstel lungsdialog auf der Einstellungsseite f r Farben und Schriftarten aufgef hrt unter Gene ral Appearance Colors amp Fonts Erstellt wird das Thema Run und diesem wird die Eigenschaft Console Font hinzugef gt de fzi esm ide run launchGroups Der Erweiterungspunkt wird von diesem Plugin zur Verf gung gestellt Es wird eine Konfigurationskateg
22. des Programmkonzeptes 35 Diese Schnittstelle wird in der Klasse StartupToolConfigurator implementiert Die imple mentierte Methode berpr ft ob alle zu berwachenden Konfigurationen noch existent sind falls dem nicht so ist erstellt sie einen Wizarddialog aus einer Instanz der Klasse StartupWizard q Embedded Systems Development Environment We q Embedded Systems Development Environment Tool Configurations Setup Tool Configurations Setup Welcome to Embedded Systems Development Environment Enter tool locations to generate their corresponding launch configurations Your workspace seems not to be configured for embedded systems development yet ca ach configuration for Altera Quartus Il executable quartus exe Either you have created a completely new workspace or some tool configurations have been C Programme Altera Quartusll bin quartus exe deleted or renamed You may also have called this dialog from 5 N R R Window gt Preferences Run Tools Setup default tool configurations manually EE On the following pages you can enter informations necessary to set up your workspace C Programme Altera Nios Niosll_ 1 1 bin eclipse eclipse exe Create a launch configuration for Visual Studio 6 executable msdev exe C Programme Microsoft Visual Studio Common MSDew98 Bin msdev exe Browse File System E Create a launch configuration for ModelSim 6 executable modelsim exe C Programme ModelSim6 0 win32 modelsim exe V Create a launch
23. die Benennung des Befehls zur Ausf hrung zugeordneter Konfigura tionstypen Dieser Befehlsname muss angegeben werden Das Plugin org eclipse debug core selbst definiert die standardm ig verf gbaren Modi run debug und profile Ein weiterer Modus tools wird addiert mit den Labels Run Tool und Run Tool As org eclipse core runtime preferences Funktion und Parameter des Erweiterungspunktes wur den bereits in Abschnitt 3 2 1 besprochen ber die Erweiterungsstelle wird das Setzen der in diesem Plugin definierten Einstellungs seiten auf die Standardwerte definiert org eclipse core variables dynamicVariables Funktion und Parameter des Erweiterungspunk tes wurden bereits in Abschnitt 3 2 1 besprochen Das Plugin de fzi esm ide tools erstellt die Variablen build_type build_project und system_path org eclipse core resources builders Ein Builder ist ein inkrementeller Projektersteller die Auf gabe eines Builders ist das Verarbeiten ge nderter Ressourcen eines Projektes Ein Builder kann f r spezielle Projektnaturen definiert werden im vorliegenden Fall zum Beispiel VHDL Projekte oder C Projekte Ein Builder erbt von IncrementalProjectBuilder Wann immer nderungen an den Ressourcen eines Projektes gemacht werden oder das Projekt bereinigt wird werden die in der Builder Einstellungsseite des Projektes festgeleg ten Builderkonfigurationen ausgef hrt org eclipse ui propertyPages Funktion und Parameter des Erweiterungs
24. die gleichzeitige Erstellung einer Konfiguration des entsprechenden Typen 30 3 Realisierung f r die Buildstufe induzieren Der Erweiterungspunkt configurationDuplicationMaps definiert das Mapping der beiden Konfigurationstypen und erspart damit einige Zeilen Javacode de fzi esm ide run launchShortcuts Es ist nicht zwingend erforderlich einen Shortcut zur Ausf hrung einzurichten Ein solcher Shortcut erscheint je nach aktiv ausgew hlten Res sourcen im Kontextmen unter dem Men punkt Apply Tool und dient dazu aus dem Kontext der Auswahl eine Ausf hrungskonfiguration des entsprechenden Typs neu zu ge nerieren F r das hier besprochene Tool wird die dahinter stehende Funktionalit t von der Klasse CostLaunchShortCut bernommen Sie erstellt eine neue Konfiguration de ren einzulesende Messdaten fest aus der zum Erstellungszeitpunkt bestehenden Auswahl besteht und die den Bericht in beiden vorhandenen Formaten PDF und HTML ausgibt Es hat sich als sinnvoll erwiesen alle Textkonstanten in einer eigenen von der abstrakten Klas se org eclipse osgi util NLS abgeleiteten Klasse zu sammeln hier CostMessages Dieses Vorgehen unterst tzt die Internationalisierung National Language Support Die Eclipse JDT beinhaltet von Haus aus einen Wizard zur Externalisierung von Zeichenketten New Project Templates system project Available Templates 7 Minimal Cosimulation Project Select one of t
25. erfolgen A 8 Nichtfunktionale Anforderungen NF0010 Das Erscheinungsbild der Benutzungsoberfl che entspricht den von der Eclipse Foundation gesetzten Regeln f r Benutzungsoberfl chen die auf deren Webseite verf g bar sind Alle Dialoge und Steuerelemente f gen sich in das Erscheinungsbild von Eclipse ein NF0020 Weitere Symbole Icons sollen im Design der Eclipse IDE erstellt werden und im verwendeten Kontext soweit m glich die Identifikation von Daten und Funktionen er leichtern Ein wichtiger Aspekt des Systems ist seine Erweiterbarkeit Aus der Sicht des Erweiterers m ssen die Gesch ftsprozesse in Abbildung A 32 durchf hrbar sein Aus diesen Gesch ftsprozessen er geben sich die nachfolgend dargestellten Prozesse bez glich der Erweiterbarkeit des Systems NF1010 Neues Werkzeug implementieren Ziel Ein neuer Konfigurationstyp ist zu implementieren Vorbedingung Der einzubindende Programmcode ist in Java geschrieben verf gbar Nachbedingung Erfolg Ein neuer Typname innerhalb des Einstellungsdialogs f r Tool konfigurationen im linken Bereich fasst Instanzen seiner selbst zusammen Diese Instanzen besitzen eine Reihe von speziell angepassten und auf der rechten Seite dargestellten Einstellungen als Registerkarten dargestellt A 8 Nichtfunktionale Anforderungen 71 P Tools E E SystemSpecification E BxecuteGenerator bat Create manage and run configurations Generate VHDL and ANSI C constent
26. gewis sen Einblick in Funktion und Bedienung des Systems gew hrt nicht zuletzt beim Lesen des Pflichtenhefts in Anhang A muss eine umfassende Dokumentation des Systems noch geschrieben werden Hierbei soll wie in der Industrie blich das Pflichtenheft als Vor lage dienen e Ein Hilfesystem mit integrierter Dokumentation Rund um ESDE als Hardware Soft ware Entwurfsprozess und Entwurfssystem existieren mehrere Quellen Die Einbindung dieser Quellen in das Hilfesystem von Eclipse ist haupts chlich redaktionelle Arbeit da Hilfeplugins aus der HTML Sonderform xhtml bestehen und keinen Javacode erforder lich machen mehr dazu in DFK 05 pp 547 562 Bereits vorgesehen sind kleine Buttons mit einem Fragezeichen Icon in den Dialogen in der linken unteren Ecke Sie besitzen eine eigene ID und m ssen nur noch im Hilfesystem verlinkt werden e Das Erstellen einer Willkommensseite mit Tutorials beim ersten Start Eine Willkom mensseite begr t den unerfahrenen Nutzer beim ersten Start und bietet ihm Tutorials Cheat Sheets und einen Einstieg ins Hilfesystem Eine solche Startseite kann hinzugef gt werden indem das Plugin org eclipse ui intro inkludiert und erweitert wird Che at Sheets werden durch Inklusion und Erweiterung von org eclipse ui cheatsheets realisiert e Die Plugins des Systems als Feature verpacken Die eigenst ndig entwickelten Plugins de fzi esm ide bilden den Systemkern und ergeben am meisten Sinn wenn sie
27. im Arbeitsplatz aktualisiert Nachbedingung Fehlschlag Ein Dialog wird ge ffnet mit der Benachrichtigung dass Probleme bei der Interpretation von Variablen aufgetreten sind Bei aktivierter Kon solenansicht k nnen Fehler bei der Ausf hrung der Tools eingesehen werden Ausl sendes Ereignis Es wurde z B der Konfigurationsdialog f r Ausf hrungen ber Run Run ge ffnet Cosimulation wurde ausgew hlt Anschlie end wurde ei ne existierende Konfiguration ausgew hlt und die Ausf hrung durch Run eingelei tet Alternativ ist die kontextsensitive Ausf hrung ber Rechtsklick auf eine Datei im Arbeitsplatz und die anschlie ende Auswahl einer Konfiguration im Untermen Run m glich A A Produktfunktionen 53 Voreinstellung Beim Einrichten ber die minimale Standardprojektschablone existiert eine voreingestellte Konfiguration bereits Sie startet ModelSim auf der Hardware und Visual Studio 6 auf der Software Seite Beschreibung Es werden alle vorhandenen Variablen interpretiert Die angegeben Pro gramme werden auf der Konsole des Betriebssystems ausgef hrt Parameter werden dazu bergeben Umgebungsvariablen gesetzt die Ausgabe w hrend der Ausf hrung evtl auf das jeweilige Konsolenfenster in Eclipse umgeleitet Nach dem Beenden bei der Prozesse werden ge nderte Ressourcen falls gew nscht im Projektbaum aktuali siert F0070 Konfigurierung eines externen Programms Ziel Workspace spezifische Angaben zur Ausf h
28. lt xsl copy gt lt xsl attribute name moduleName gt lt xsl value of select moduleName gt lt xsl attribute gt lt xsl attribute name moduleDate gt lt xsl value of select moduleDate gt lt xsl attribute gt lt xsl attribute name moduleTime gt lt xsl value of select moduleTime gt lt xsl attribute gt lt xsl attribute name moduleConfiguration gt lt xsl value of select moduleConfiguration gt lt xsl attribute gt lt xsl copy of select child gt lt xsl copy of gt lt xsl copy gt lt xsl for each gt lt xsl copy gt lt xsl template gt lt xsl template match CostLog Dynamic_Hw_Costs gt lt xsl copy gt 89 lt xsl copy of select document targetFile CostLog Dynamic_Hw_Costs gt lt xsl if test ModuleName and not exists moduleName gt lt xsl message gt CostLog Dynamic_Hw_Factor DynamicFactor is missing moduleName lt xsl message gt lt xsl if gt lt xsl copy of gt lt xsl for each select DynamicFactor gt lt xsl copy gt lt xsl attribute name moduleName gt lt xsl value of select moduleName gt lt xsl attribute gt lt xsl attribute name moduleDate gt lt xsl value of select moduleDate gt lt xsl attribute gt lt xsl attribute name moduleTime gt lt xsl value of select moduleTime gt lt xsl attribute gt lt xsl attribute name moduleConfiguration gt lt xsl value of select moduleConfiguratio
29. qeLule ysop se LiapuaypuyuNyT uibuZyodayT auibua aj 4 ayl4qyndul Se Jepueye eelo Buns 8L qeLuleyysop JBUIUOD J9U e UOI LBUIeJUODYNeJEp J ULEJUODI SioU eyUODINdjno JaUJeE UODINdjnQanjosa ums 2 gqeLuieyjsog aulbugyodayy eulGusJepueyeyeeso at att Sajiquasoya saji46o7sopebiew Sums 9b qeLUWISOD pue geLulewIsod 4oyuopssasBoug Joo youne youNe Buys pow UoVesnByuopYoUNeT UoesNByuos YOUNe aysoduiog Jua ed JUaUdWODIO Da age ee10 ee S i eysodwoy yuaied JUaUOd OD AloaUIQYJOMa ees0 4 ETI SE CES ysodwo9 yuaed jUsuodwWoguoNneso7a ea19 4 Be RN e o eusodwoy uaied 101 U098 e919 Buys L INQUOYSYyouNeysop Buys 0 INYHOoySyoune Jsoy aounosayl Palgo sjuawiaja S elqQpe De eseAjosely uesjoog Ee Burzyeniu Buys 6 a eBajaqyouneyjsop Buns ON LuonsajagadA jja6y ueajooq l Us i 6 Jaydepyuonpajes Jaydepyuojosjesy Sums g eyeBelaquouneqysog ueajooq uoneinByuogyouneTy UoMesnByuod a9 nosay seounosai 8 qeyINguonesnByuogsi l uopng pop w H10 8J S Buns Z eyeBajequouneqjsop adALuonesnByuogyauneyy BdA LuoNeindyuogje z uong HN GEpog UHOWE as Buijs g eyeBajeaquouneqjsog uogeinByuopYouney sounosayy senge UoHeInByuoDa eas0 x uong WONNgEPOJIPAI0PEIaSH uoyng UoY NgueuleEJUODINdynose qeueAy uonng uoyngseulejuoDjndjngasedsyiomz uoyng UdyNguoNeso7sejqeeAy uong uoyNguojesoqyndynog yal plalja
30. von Helmut Balzert vorgeschlagene Gliederung Bal98 an A 1 Zielbestimmung Ein bergeordnetes Entwurfswerkzeug f r eingebettete HW SW Systeme ist zu entwerfen und in den bestehenden Entwicklungsprozess einzugliedern Das Produkt soll helfen alle w hrend des Entwurfs relevanten Artefakte in einer Projektstruktur zu ordnen und alle w hrend des Entwurfs zu verwendenden Werkzeuge f r die direkte Anwendung zu konfigurieren Augen merk soll auf die intuitive Erweiterbarkeit um eigene Werkzeuge gerichtet werden A 1 1 Musskriterien e Hierarchische Verwaltung von Daten zusammengefasst zu Projekten e Aufruf externer Werkzeuge und Entwicklungsoberfl chen auf Knopfdruck unter Einbe ziehung des Aufrufkontextes Aufruf im in der Projekthierarchie ausgew hlten Verzeich nis bergabe der in der Projekthierarchie ausgew hlten Dateien als Parameter e Vom Auftraggeber selbst entwickelte kleinere Werkzeuge z B Konverter Generatoren sind auf selektierte Daten anwendbar e Die Erstellung von Projekten erfolgt auf der Basis von Projektvorlagen Inhalte gegebener Dateien k nnen offen gelassen werden und bei der dialoggesteuerten Erstellung in Form von Optionen spezifiziert werden e Text und Code kann in einem Multipageeditor editiert werden 44 A Pflichtenheft e Bei der Oberfl che handelt es sich um eine g ngige grafische Entwicklungsoberfl che die spezialisierbar ist eine Projektsicht hat und mehrere Dateien gleich
31. wiederverwendet werden Einzig und allein die Registerkarte die toolspezifische Einstel lungen erm glicht muss vom Tool selbst realisiert werden im hiesigen Falle ist dies die Klasse CostMainTab Listing 3 2 Die Klasse CostTabGroup public class CostTabGroup extends AbstractLaunchConfigurationTabGroup L t see de fzi esm ide run ILaunchConfigurationTabGroup createTabs de fzi esm ide run ILaunchConfigurationDialog java lang String public void createTabs ILaunchConfigurationDialog dialog String mode ILaunchConfigurationTab tabs new ILaunchConfigurationTab new CostMainTab new SlimCommonTab setTabs tabs Listing 3 3 Die Klasse CostBuilderTabGroup public class CostBuilderTabGroup extends AbstractLaunchConfigurationTabGroup L t x see de fzi esm ide run ILaunchConfigurationTabGroup createTabs de fzi esm ide run ILaunchConfigurationDialog java lang String public void createTabs ILaunchConfigurationDialog dialog String mode ILaunchConfigurationTab tabs new ILaunchConfigurationTab new CostMainTab new ToolsBuilderTab setTabs tabs de fzi esm ide run launchConfigurationTypelmages Icons f r den Konfigurationstyp und den entsprechenden Builderkonfigurationstyp werden an dieser Stelle definiert um den Wiedererkennungswert in der IDE zu steigern de fzi esm ide tools configurationDuplicationMaps Das Erstellen einer Konfiguration die ses Typen soll
32. zu sammen installiert werden In solchen F llen sieht die Eclipseplattform eine B ndelung mehrerer Plugins zu einer Installationseinheit einem Feature vor Ein Feature kann mit einem eigenen Icon versehen werden das innerhalb des About Dialogs angezeigt wird und erlaubt die bessere Identifikation des Produkts e Das System auf einer Downloadseite anbieten Diese nderung vereinfacht die Wartbar keit da das Deployment der neuesten Version automatisiert durchgef hrt werden kann e Verbesserungen am Layout und an der Auswertungslogik des Kostenberichts Eine Ver besserung der Auswertungslogik geschah w hrend der Enrtwicklungszeit fortw hrend da st ndig neue Erfahrungen gemacht wurden Auch weiterhin kann der Kostenbericht 42 4 Evaluierung durch Editieren der Datei costLog rptdesign verfeinert werden und l sst damit zu dass ohne nderung des Javacodes neue Erfahrungen in das System einflie en k nnen Bereits w hrend der Anfertigung dieser Studienarbeit begannen Praktikanten am FZI mit der Verbesserung des Layouts und der Verfeinerung des Kostenberichts 43 A Pflichtenheft Aus den Forderungen an das Produkt die in Kapitel 2 aufgestellt wurden wird ein Pflichtenheft abgeleitet Das Pflichtenheft fasst alle Anforderungen an das zu entwerfende Softwareprodukt zusammen es liefert die vertragliche Grundlage f r alle sp teren Entwurfs sowie Implemen tierungsentscheidungen Seine Gliederung lehnt sich an die
33. 1 0 encoding UTF 8 gt lt xs schema xmlns xs http www w3 org 2001 XMLSchema gt lt xs element name CostLog gt lt xs complexType gt lt xs all gt lt xs element ref Header gt lt xs element ref Static_Hw_Costs gt lt xs element ref Dynamic_Hw_Costs gt lt xs all gt lt xs complexType gt lt xs element gt lt xs element name Header gt lt xs complexType gt lt xs sequence gt lt xs element maxOccurs unbounded ref Module gt lt xs sequence gt lt xs complexType gt lt xs element gt lt xs element name Module gt lt xs complexType gt lt xs all gt lt xs element name Name type xs string gt lt xs element name Configuration type xs string gt lt xs element name Date type xs string gt lt xs element name Time type xs string gt lt xs all gt lt xs complexType gt lt xs element gt lt xs element name Static_Hw_Costs gt lt xs complexType gt lt xs sequence gt lt xs element maxOccurs unbounded minOccurs 0 ref StaticFactor gt lt xs sequence gt lt xs complexType gt lt xs element gt lt xs element name StaticFactor gt lt xs complexType gt lt xs all gt lt xs element name Name type xs string gt lt xs element name Value type xs string gt lt xs element minOccurs 0 name Unit type xs string gt lt xs all gt lt xs attribute name moduleName type xs string gt lt optional for merging logs gt lt xs a
34. 17 47 Copyright 2006 FZI ESS www fzide ess 2 7 30 Longk 22 Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess 34 C Kostenbericht 23 30 24 30 JOS Cost report created on 04 04 2007 17 47 Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess Copyright 2006 FZI ESS www fzi de ess 25 30 26 30 on NIOS Cost report created on 04 04 2007 17 47 Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess Copyright 2006 FZI ESS www dzi deless Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www 4zi de ess Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess 86 C Kostenbericht Die einzulesenden Messdaten eines Moduls ebenso wie die kumulierten Messdaten mehrerer Module liegen in einer XML Datei vor die demselben Schema geniigen miissen Diese XSD Datei dient der Validierung des Datenformats Listing C 1 Die XML Schema Definition costLog xsd beschreibt die Messdatenstruktur lt xml version
35. 69 A26 Schritt 2 beim Erstellen eines Berichts o r a oot AN Das a Be 69 4 27 Erstellten Bericht anzeigen A A 0 ANN EN as er na een 69 A 28 Einstellung einer Systemspezifikationskonfiguration 71 A 29 Schritt 1 beim Generieren einer Systemspezifikation 71 A 30 Schritt 2 beim Erstellen einer Systemspezifikation 71 A 31 Schritt 3 beim Erstellen einer Systemspezifikation 71 A 32 Gesch ftsprozesse des Erweiterers 2 2 4 a doo EIN E ee era 71 Tabellen 2 1 Vergleich zweier m glicher Zielplattformen a saw ead EE eS 3 1 Pr prozessorbefehle innerhalb von Dateien einer Projektvorlage 3 2 Hilfsfunktionen zur Registrierung von Variablen unterschiedlichen Typs Abstract Development of embedded systems is a tedious task involving a large number of specialized tools from different vendors Such tools as well as artifacts shared by them have to be handled in acommon environment This pre diploma thesis Studienarbeit describes the development process of a meta tool supporting management of projects among different tools A meta inte grated development environment called Embedded Systems Development Environment ESDE is going to be designed and implemented by customizing and extending the Eclipse framework Requirements to ESDE include a wizard to generate projects from pre defined templates mana gement of projects and their artifacts in a hierarchical structure easy management of external
36. 996 ISBN 3 893 19 950 0 JSY03 Johnson Brian Skibo Craig Young Marc Inside Microsoft Visual Studio NET Effizientes Programmieren mit dem Visual Studio NET 2003 1 Microsoft Press Deutschland 2003 ISBN 3 8606 3683 9 94 Literatur LK07 MG97 Mic07a Mic07b PHH06 Sie02 SVCo7 T 07 TRIO7 Lutz Benjamin K llner Christian An Integrated Design Environment for Embed ded HW SW Systems In Proceedings of the Embedded World Nuremberg Germany 2007 February Micheli Giovanni D Gupta Rajesh K Hardware Software Co Design In Procee dings of the IEEE 85 1997 3 S 349 365 Microsoft Corporation Microsoft Visual Studio Extensibility http www devx com vstudioextensibility Version 29 Januar 2007 Microsoft Corporation Visual Studio 2005 Extensibility Center http msdn microsoft com vstudio extend Version 29 Januar 2007 Peh Diana Hannemann Alethea Hague Nola BIRT A Field Guide to Reporting The Eclipse Series 1 Addison Wesley Professional 2006 ISBN 0 3214 4259 8 Siedersleben Johannes Softwaretechnik Praxiswissen f r Softwareingenienre 2 Han ser Fachbuchverlag 2002 ISBN 3446218432 SVC Delivery Eclipse XML Author v0 9 12 http www svcdelivery com xmlauthor Version 12 April 2007 Tadashi Kobayashi u a Eclipse VHDL Verilog Editor v0 5 1 http veditor sourceforge net Version 12 April 2007 TRIAS Mikroelektro
37. A 10 Spezielle Anforderungen an die Entwicklungsumgebung Zur Entwicklung des Systems miissen besondere Anforderungen an Hardware Software und Orgware erf llt sein Teilweise hat der Kunde f r deren Einhaltung zu sorgen A 10 1 Software Eclipse 3 2 Java Laufzeitumgebung Version 1 5 mindestens in der Standardausgabe J2SE 5 Windows XP oder Windows Vista UltraEdit Texteditor Altova XMLSpy Enterprise Edition Version 2007 SP1 MikTeX ab der Version 2 5 und TeXnicCenter ab der Version 1 Beta 7 01 A 10 2 Hardware Intel Pentium 4 Prozessor mit mindestens 2 4 GHz Taktfrequenz 1014 MB Arbeitsspeicher 4 GB Platz auf der lokalen Festplatte e 19 TFT Monitor mit einer Aufl sung von 1280x 1024 Tastatur 3 Tasten Maus mit Scrollrad A 10 3 Orgware e Gew hrleistung einer permanenten Internetanbindung e telefonische Verf gbarkeit des Kunden A 11 Gliederung in Teilprodukte 15 A 11 Gliederung in Teilprodukte Das Produkt l sst sich in folgende Teilprodukte zerlegen die voneinander unabh ngig sind Die Entwicklung erfolgt sequentiell in dieser Reihenfolge 1 Template Wizard 2 Werkzeuganbindung und verbindung 3 Auswertung der Simulationsdaten A 12 Erg nzungen e Das System kann um ein kontextsensitives Hilfesystem erweitert werden Jeder Dialog enth lt einen Button f r den Aufruf einer Hilfeseite e Dem System kann eine Willkommensseite mit einer Einf hrung Tutorials Beispielen etc hinzuge
38. DO Forschungsuniversitat gegr ndet 1825 FZI Forschungszentrum Informatik N ita an der Universitat Karlsruhe Universit t Karlsruhe TH Sal Haid und Neu StraBe 10 14 76131 Karlsruhe Studienarbeit Integration eines bergeordneten Entwurfswerkzeugs fiir eingebettete HW SW Systeme cand inform Andreas Rentschler Betreuer Dipl Ing Benjamin Lutz Forschungsbereich Elektronische Systeme und Mikrosysteme ESM Forschungszentrum Informatik FZI Verantwortlicher Betreuer Prof Dr Ing K D M ller Glaser Institut f r Technik der Informationsverarbeitung Universit t Karlsruhe TH Korreferent Prof Dr Ing R Dillmann Institut f r Technische Informatik Universit t Karlsruhe TH Begonnen am 21 August 2006 Eingereicht am 20 Februar 2007 Erklarung Hiermit versichere ich die vorliegende Arbeit selbstandig und ohne fremde Hilfe angefertigt zu haben Die verwendete Literatur und sonstige Hilfsmittel sind vollst ndig angegeben Karlsruhe den 20 Februar 2007 Inhaltsverzeichnis Erkl rung Abstract 1 Einleitung 1 1 2 Konzeption 2 1 3 Realisierung Eclipse Rich Client Platform Schnittstellen der Plugins 2 1 3 2 3 2 1 3 2 2 KKK 3 2 4 3 25 32 6 3 3 3 3 2 3 3 3 4 Evaluierung 4 1 Umfeld 1 2 Motivation 1 3 Gliederung Unmittelbare Anforderungen 2 2 Existierende L sungsans tze 2 3 Wahl der Zielplattform R ckblick 4 2 Bewertung erster Erfahrungen
39. II JEIPUEY aysoduo e1sodwoy uesed jUsUOdWOD9 e819 euaysuondodnyeysy Suae JHUSISITPPE ueajoog S1 U S17 J0U Sums eeler Duus BUEN OO JSYSeH SJ U JJSI uondo l 4dnyes A V Upustsruopdoduget Jeu JHUSJSITPPE Buys uondQayepljent aysodwoy ayisodwio9 quased JUBUOdWODE e810 uondodnyejst lt lt gt gt dnyejs eusayur sjooyaplwusa izjap abeysed Wizard zur Pflege der Konfigurationen der Standardtools Bild 3 12 39 4 Evaluierung Die Arbeit endet mit einem R ckblick einem Erfahrungsbericht ber erste Erfahrungen die bei der Arbeit mit dem System gemacht werden konnten sowie einem Ausblick auf die Zukunft des Systems 4 1 R ckblick In Kapitel 1 wurden die Aufgabenstellung das Umfeld aus dem die Aufgabenstellung ent springt und die geplanten Schritte zur L sung skizziert pr ng SCH 5 Der erste Schritt geschildert in Kapitel 2 bestand aus einer Analysephase An Hand eines Sze narios wurde klar welchen Anforderungen das zu entwerfende System gerecht werden muss und dass sich derzeitige L sungsans tze nur unzureichend diesen Anforderungen zu stellen ver m gen Der entscheidendste Punkt in der Konzeption war die Wahl einer Plattform auf der ein geeigneteres System realisiert werden konnte Die Entscheidung fiel auf die Eclipse Plattform nicht zuletzt auf Grund ihrer hervorragenden Erweiterbarkeit Im zweiten Schritt fa
40. WUOW palo g Palo d Buns HLVdOIANLSIVNSIA ASM sajye dwa y spIeZIm In euu PIEZIM apr wsoy SP WON uoNe1sdouoyes1yuoyeinwisogjewiumnMmeN Bus HLYAWISIIAOW AIX sajeldueyIn plezim opr Wss Izy ep WO ayedwe Luonein Joyuoyysse4 oig JOWUOW SO J8 EIBUABE Buys SSYepIPLEIAIOWANIgJOB UN uoneooqaedwa Laf Tan O TANIIeIsUNaBE ejpungssunosay ajpungaoinoseyuibn qjaby Sa eIdWar SPJEZIM IN eUla UT PJEZIM opr WSe Iz OP WON vosagzjeidwaLggI SUOIWSS V aopuoyssaBoJd 10 uow eyeEQpyal4 eyep Podl Palo d 8yndexe Wu SHUMHOMJOqUNNI SL uesjooq pappysebedjab abegpiezim jul xepujebed ebegjab Plez m puezim Sebegppe Bugs Bug Ae Bums ewenaly Buujg uawede dayjob Bus Uonduoseq eb Bums BgeMe 74N UoNe9oTejedws 1426 suoipe n asdi98 BJo wo uonessdoAnpowssedsyuom lt lt adA ejep gt gt suo oas ueajoog PJezyyyualeduojuepuadegsi uoesejejdwe SuoIegeye dwe a e9I9 ueajoog Uouuoinssea Bot JOWUOW palo d oefoid ys ulJullousd eyeqplel4 eyep HUl sajelduwaer spezi In eUe U pseZIM opr WSS Gap WON P ez mMmonuoyeInwIsogjewiunN V s edieuonppyppe uopo g zejdwa L suoyoasaejdwa 1736 uo o g jdw L suoyo s ejdw 1342919 qu Junoga edia lt
41. a teien Verzeichnissen relativ zum Workspace die zur Anwendungszeit der Kon figuration im Workspace selektiert sind e Die Variable resource_path Workspacepfad zu Ressource berechnet den absoluten Pfad im globalen Dateisystem zu der relativ zum Workspace an gegebenen Datei bzw Verzeichnis Bei fehlendem Argument berechnet sie die jenigen Pfade zu Dateien Verzeichnissen im globalen Dateisystem die zur An wendungszeit der Konfiguration im Workspace selektiert sind e Die Variable resource_name Workspacepfad zu Ressource repr sentiert den Namen zu der relativ zum Workspace angegebenen Datei bzw Verzeichnis Ohne Argument repr sentiert sie diejenigen Namen von Ressourcen die zur Anwendungszeit der Konfiguration im Workspace selektiert sind e Die Variable container_loc Workspacepfad zu Ressource steht f r den entsprechenden Workspace relativen Pfad zum bergeordneten Verzeichnis der angegebenen Ressource Argumentfrei repr sentiert sie diejenigen Pfade zu Ver zeichnissen relativ zum Workspace die zur Anwendungszeit der Konfiguration im Workspace selektierte Ressourcen direkt bergeordnet sind e Die Variable container_path Workspacepfad zu Ressource berechnet den absoluten Pfad im globalen Dateisystem zu demjenigen Verzeichnis das die relativ zum Workspace angegebene Ressource Datei oder Verzeichnis enthalt 52 A Pflichtenheft Die Variable container_path alleine berechnet diejenigen abso
42. a completely new workspace or some tool configurations have been deleted or renamed You may also have called this dialog from Window gt Preferences Run Tools Setup default tool configurations manually On the following pages you can enter informations necessary to set up your workspace Tool Configurations Setup Enter tool locations to generate their corresponding launch configurations _ Create a launch configuration for Altera Quartus I executable quartus exe C Programme Altera Quartusll bin quartus exe Browse File System Create a launch configuration for NIOS IDE executable nios2 ide exe C Programme Altera Nios NiosIl_1 1 bin eclipse eclipse exe Browse File System Create a launch configuration for Visual Studio 6 executable msdev exe C Programme Microsoft Visual Studio Common MSDev28 Bin msdev exe Browse File System _ Create a launch configuration for ModelSim 6 executable modelsim exe CA Programme ModelSim6 0 win32 modelsim exe Browse File System Create a launch configuration for batch files exe Create a launch configuration for cost logs xml V Create a launch configuration for system specifications xmI Create a launch configuration for ELAView data Bild A 3 Seite 1 des Startup Wizard Preferences Bild A 4 Seite 2 des Startup Wizard New Project
43. a fully functioning embedded Create an embedded system project using one of the templates This wizard creates a standard cosimulatic project containing these folders e Documentation Empty to be added ModelSources VHDL model based on Avalon master model Simulation Avalon master model to be simulated i ModelSim Emnh filer fnr eumtherie tn he added ne Bild A 7 Seite 2 des New Project Wizard 3 New minimal cosimulation project Minimal Cosimulation Project This template will generate a basic cosimulation project using ModelSim and VisualStudio 2 Next gt Finin canca Bild A 8 Seite 3 des New Project Wizard v New minimal cosimulation project Not Responding Minimal Cosimulation Project VisualStudio This template will generate a basic cosimulation project using ModelSim and B Path to ModelSim 6 executable modelsim exe C Programme N Browse File System Path to ModelSim 6 executable modelsim exe C Programme h Path to Visual Studio 6 executable msdev exe C Programme N Browse File System Browse File System Bild A 9 Seite 4 des New Project Wizard Path to Visual Studio 6 executable msdew ex Generating content Creating StdAfx obj C Programme N Browse File System Next gt Le JI Cance Bild A
44. ableiten Es wird ein Tester der Eigenschaft launchable erstellt der Klassen auf ihre Ausf hrbar keit berpr ft Ein weiterer Tester berpr ft Ressourcen auf die Eigenschaften matche sPattern projectNature matchesContentType isContainer org eclipse ui console consolePageParticipants Der Konsolenseite k nnen Steuerelemente hinzugef gt werden eine Implementierung von IConsolePageParticipant wird ber den Lebenszyklus der Konsolenseite benachrichtigt Erstellen Aktivierung und Deakti vierung Schlie en Benachrichtigung der Klasse und somit das teuere Laden des Plugins kann von einem XML Ausdruck abh ngig gemacht werden Die F higkeit des Erweiterungspunktes wird dahingehend genutzt dass die Konsolensicht eines in der Ausf hrung befindlichen Prozesses Steuerelemente erh lt mit denen der Pro zess beendet werden kann die angezeigte Seite geschloseen werden kann oder alle Seiten beendeter Prozesse geschlossen werden k nnen 18 3 Realisierung org eclipse ui preferencePages Dem von der Workbench zur Verf gung gestellten Einstel lungsdialog k nnen eigene Einstellungsseiten hinzugef gt werden Neben einem Namen und Kategorieverzeichnis muss eine Implementierung von IWorkbenchPreferencePage erfolgen Dem Dialog werden neben einer allgemeinen Einstellungsseite Run eine Unterseite Laun ching mit Optionen f r die Ausf hrung von Konfigurationen eine Unterseite String Sub stitution f r dynamische Variablen u
45. ality Plug ins The Eclipse Series 2 Addison Wesley Professional 2006 ISBN 0 3214 2672 X Dau06a Daum Berthold Das Eclipse Codebuch 182 Tipps Tricks und L sungen f r Eclipse spezifische Probleme Dpunkt Verlag 2006 ISBN 3 8986 4376 X Dau06b Daum Berthold Java Entwicklung mit Eclipse 3 2 Anwendungen Plugins und Rich Clients Dpunkt Verlag 2006 ISBN 3 8986 4426 X Dau06c Daum Berthold Rich Client Entwicklung mit Eclipse 3 2 Anwendungen entwickeln mit der Rich Client Platform Dpunkt Verlag 2006 ISBN 3 8986 4427 8 Deu07a Deutsche Wikipedia Eclipse IDE http de wikipedia org w index php title Eclipse_ 28IDE 29 amp oldid 27018052 Version 29 Januar 2007 Deu07b Deutsche Wikipedia Synthese http de wikipedia org w index php title Synthese_ 28Elektrotechnik 29 amp oldid 25527083 Version 10 Januar 2007 DFK 05 D Anjou Jim Fairbrother Scott Kehn Dan Kellerman John McCarthy Pat The Java Developer s Guide to Eclipse Addison Wesley M nchen 2005 ISBN 3 8273 2254 5 Ecl07 Eclipse Foundation Eclipse Project http www eclipse org Version 29 Januar 2007 GB05 Gamma Erich Beck Kent Eclipse erweitern Prinzipien Patterns und Plug Ins Addison Wesley M nchen 2005 ISBN 3 8273 2238 3 GHJV96 Gamma Erich Helm Richard Johnson Ralph Vlissides John Entwurfsmuster Elemente wiederverwendbarer objektorientierter Software 1 Bonn Addison Wesley 1
46. ch dem Beenden des Prozes ses werden ge nderte Ressourcen je nach Option im Projektbaum aktualisiert F0090 Konfigurierung des Generators f r Berichte Ziel Das Erstellen einer Konfiguration mit der von ModelSim gemessene Simulationsda ten graphisch ausgewertet werden k nnen Vorbedingung Nachbedingung Erfolg Eine Konfigurationseinheit ist im Workspace eingerichtet mit der Berichte generiert werden k nnen Nachbedingung Fehlschlag Bei unvertr glichen Parametern kann die Einrichtung nicht abgeschlossen werden A A Produktfunktionen 55 Ausl sendes Ereignis Der Dialog wurde z B ber Run Tools Tools ge ffnet Cost Log Report wurde ausgew hlt Anschlie end wurde mit New Launch Configu ration eine neue Konfiguration erstellt oder eine existierende Konfiguration ausge w hlt Nach dem ndern der Einstellungen wurde das Speichern durch einen Druck auf Apply ausgel st Voreinstellung Beim Einrichten des Workspace ber den Start Up Wizard existiert be reits eine voreingestellte Konfiguration Diese Konfiguration erstellt einen Bericht mit HTML und PDF Ausgabe Eingabedateien sind die zum Ausf hrungszeitpunkt selektierten Dateien Ausgabeverzeichnis des Berichts ist eben dieses Verzeichnis Beschreibung Eine XML Eingabedatei bzw ein Verzeichnis mit den XML Eingabedatei en und das Ausgabeverzeichnis k nnen festgelegt werden dabei besteht wie gewohnt die M glichkeit Variablen wie in F0050 beschr
47. configuration for batch files exe v Create a launch configuration for cost logs xml Y Create a launch configuration for system specifications xml V Create a launch configuration for ELAView data Net gt Finish gt Cancel Bild 3 10 Seite 1 des Startup Wizard Bild 3 11 Seite 2 des Startup Wizard Die erste Wizardseite StartupWelcomePage wird mit statischem Begr ungs und Einleitungs text gef llt Abbildung 3 10 Auf der zweiten Wizardseite StartupConfigurationsPage wer den hnlich wie bei den Steuerelementen der Pr prozessorvariablen von Projektschablonen im vorherigen Abschnitt konfigurationsabh ngig Steuerelemente eingerichtet und initialisiert Abbildung 3 11 Hier fasst eine Schnittstelle IStartupOption alle Auspr gungen von Steuer elementen zusammen derzeit sind es die Optionsfelder StartupCheckOption eine beschriftete Checkbox und StartupFileOption ein Editfeld mit einem Button Browse for file und einem damit verbundenen Dialog zur Dateiauswahl Da die zweite Wizardseite StartupConfigurationsPage ber nderungen an den auf ihr enthaltenen Steuerelementen informiert werden m chte im plementiert sie die Schnittstelle IStartupOptionListener und registriert sich bei den Steuer elementen sog Beobachtermuster GHJV96 p 287 ff Die Klasse StartupUtil bietet alle Funktionen zum Laden und Speichern von Konfigurations einstellungen und zum Generieren von Konfiguratio
48. den Von vornherein sind alle Dateien ausgew hlt 56 A Pflichtenheft Voreinstellung Beim Einrichten ber die minimale Standardprojektschablone existiert eine voreingestellte Konfiguration bereits Sie erstellt f r die im Workspace ausge w hlten Dateien einen Bericht in den Formaten PDF und HTML Markierte Ver zeichnisse werden rekursiv durchlaufen Beschreibung Eine Auswertung der Messdaten ist durchf hrbar Sie zeigt nach Simulati onssitzungen getrennt die statischen Daten tabellarisch und die dynamischen Daten in Graphen aufgef hrt Ein abschlie ender Quervergleich zeigt die von allen Sit zungen gemessenen dynamischen Daten nach gemeinsamen Modulen getrennt in jeweils einem Graphen F0110 Konfigurierung des Generators f r Systemspezifikationen Ziel Das Einrichten einer Konfigration mit der Systemspezifikationen auf Hardware und Softwareseite publiziert werden k nnen Vorbedingung Nachbedingung Erfolg Eine Konfigurationseinheit ist im Workspace eingerichtet mit der Berichte generiert werden k nnen Nachbedingung Fehlschlag Bei unvertr glichen Parametern kann der Vorgang des Ein richtens nicht abgeschlossen werden Ausl sendes Ereignis Der Dialog wurde z B ber Run Tools Tools ge ffnet System Specification Package Generator wurde ausgew hlt Anschlie end wurde mit New Launch Configuration eine neue Konfiguration erstellt oder eine existierende Konfiguration ausgew hlt Nach dem
49. den und vor handene angepasst werden das System ist dadurch flexibel und schnell an den Entwurfsprozess anpassbar und optimierbar Als gr ten Vorteil in der Anwendung der unter dem Dach des Metatools ESDE vereinten Toolchain ist die Zeitersparnis zu nennen die sich durch die konsequente Anwendung des Left Shift Prinzips bei der Ausarbeitung des ESDE Entwurfsprozesses ergeben hat Dieses von An drew Farncombe formulierte Prinzip besagt dass das Aufsp ren und Eliminieren von Proble men m glichst fr h proaktiv und nicht erst zum Ende des Entwicklungssprozesses reaktiv geschehen sollte da die Kosten f r das Debugging exponentiell mit der Zeit wachsen Abbildung 4 1 proactive gt good reactive gt bad Problem Identifictation amp Elemination Design Phase Time Delivery Design Costs Design Phase Time Delivery reactive gt bad Ate Shift aet proactive gt good Elemination Costs for Problem Identifictation amp Design Phase Time Delivery Bild 4 1 Das Left Shift Prinzip von Andrew Farncombe 4 3 Ausblick 41 4 3 Ausblick Obgleich die wichtigsten Anforderungen von ESDE in seiner momentanen Entwicklungsstufe erf llt werden gibt es dennoch Punkte an denen Verbesserungen und Erweiterungen angesetzt werden k nnen Zuk nftige Entwicklungen k nnen folgende Erweiterungen beinhalten e Eine Dokumentation Handbuch des Systems Obwohl schon diese Arbeit einen
50. den weitergegeben wer den kann 1 Den Men punkt File Export ausw hlen 2 Im erscheinenden Dialog Eclipse product selektieren Next dr cken 3 Als Konfiguration de fzi esm ide ide product ausw hlen das Wurzelverzeichnis ist beliebig kann aber zum Beispiel esde lauten Das H kchen bei Synchronize before expor ting gesetzt lassen Als Ziel ein beliebiges Verzeichnis w hlen beispielsweise k nnte dies C Dokumente und Einstellungen lt Username gt Desktop sein Die Quelltexte nicht zum exportieren Produkt hinzuf gen Auf den Button Finish klicken Das erstellte Generat sollte selbst ndig lauff hig sein 78 C Kostenbericht In Kapitel 3 3 1 wurde tiber die Realisierung des Generators fiir Kostenberichte gesprochen Die ses Werkzeug erm glicht das automatische Generieren von Kostenberichten aus in der Simula tion gemessenen Daten Nachfolgend ist ein solcher Bericht dargestellt der die vergleichende Bewertung unterschiedlicher Versionen einer Architektur eines Hardware Software Systems zul sst Es wird die urspr ngliche Version der Architektur der optimierten Version gegen ber gestellt Der untere Graph mit dem Namen Average Avalon Master Peripheral Data Bus Usage auf Seite 22 des Berichts zeigt dass die modifizierte VHDL Konfiguration im Bericht SC genannt eine niedrigere Buslast verursacht und damit eine Optimierung darstellt 1 30 Co Simulation Cost Report Cost calculation r
51. den werden Das liegt daran dass erst durch die Simulation beider Komponenten Kosimulation eine Aussage gemacht werden kann ob alle nichtfunktionalen Anforderungen erf llt werden oder eine nderung des Entwurfs n tig ist Die Methodik Hardware und Soft ware gleichzeitig zu entwerfen wird Hardware Software Koentwurf genannt Analyse Realisierung Einsatz Kosten pro Fehler Zeitverlauf Bild 1 2 Kostenentwicklung zur Fehlerbeseitigung von Fehlern Der Koentwurf ist eine wichtige Herangehensweise um ein System von hoher Qualit t zu er halten MG97 Dennoch geht diese Art des Entwurfs einher mit hohen Entwicklungskosten die durch komplexe Entwurfsfliisse und eine gro e Menge verwendeter Werkzeuge verursacht wird die einige Aufgaben nicht zufriedenstellend oder g nzlich nicht l sen k nnen Denn trotz 1 3 Gliederung 3 der Integration etablierter Werkzeuge in den Entwurfsprozess fehlen beispielsweise Funktionen zu einer fr hzeitigen Architekturbewertung und Fehlererkennung Gerade beim kosteninten siven Koentwurf sind diese Funktionen besonders wichtig da die Beseitigung nicht erkannter Fehler in sp teren Entwurfsphasen immer teurer wird Abbildung 1 2 illustriert die Ze nerregel nach der die Behebungskosten eines Fehlers mit jeder Entwicklungsphase um das Zehnfache zunehmen Verbesserung kann an dieser Stelle ein Metawerkzeug schaffen das eine Schnittstelle zu den einzelnen vorhandenen Werkzeugen da
52. e Vergleichsoperati on implementiert wird Diese Stelle wird um einen Test der Variable ATTR_REFRESH_SCOPE erweitert einer Varia blen die angibt welche Ressourcen nach der Ausf hrung einer Konfiguration aktualisiert werden sollen org eclipse debug core statusHandlers An diesem Punkt kann eine von IStatusHandler abgeleitete Klasse festgelegt werden sowie ein zu berwachendes Plugin und eine zu ber wachende Zustands Fehlernummer L st das Plugin den Zustand aus wird eine Klassen instanz mit der Ereignisbehandlung beauftragt Dieser Punkt wird erweitert um auf ein ung ltiges Ausf hrungsverzeichnis zu reagieren eine Konfiguration dann zu l schen wenn seine Projekte gel scht werden und um vor dem Start einer Konfiguration nachzufragen ob im Editor geladene Ressourcen zuvor gespeichert werden sollen org eclipse core runtime adapters Hier k nnen Adapterfabriken deklariert werden das sind Klassen die einen Typ auf einen anderen abbilden k nnen Der Erweiterungspunkt ver meidet das unn tige Laden von Plugins da schon ber das Manifest entschieden werden kann ob der gew nschte Adapter vorliegt und es sich lohnt das Plugin zu laden Erweitert wird um Fabriken anzubieten die org eclipse core resources IProject org eclipse core resources IFile und org eclipse ui part FileEditorInput auf die selbst definierte Schnittstelle ILaunchable abbilden Die Schnittstelle dient nur 3 2 Schnittstellen der Plugins 17
53. e loc Note Enclose an argument containing spaces using double quotes Bild A 20 Registerkarte konfiguration Tools 1 einer Programm Create manage and run configurations Runan external program P Tools Run an external program Create manage and run configurations je e type filter tet 0 Cost Report Generator Qa Generate cost report from these cost Zut Program aR Qa Run Atera NIOSIDE here Qh Run Atera Quartus here Qa Run ELAView onthisfile Qa Run Modelsim in this directory Qa Run this batch file here Qh System Specification Package Generator Qa Generate package files from selected Name Open selected VisualStudio project E Main 7 Refrezh _ MG Environment EI Common Refresh resources upon completion The entire workspace The selected resource he project containing the selected resource he folder contsiring the selected resource specific resources Recursively include sub folders konfiguration Tools DSslez type filter tot Name Open selected VisualStudio project 5 Cost Report Generator El Main Refresh AR ERMFORMERD E Common O Generate cost report from these cost Environment variables to set 5 Progam a o Run Altera NIOS DE here Qa Run Altera Quartus T here o Run ELAView on this file 19 Run ModelSim in thie directory
54. eate manage and run configurations P Hardware Tool location does not exist EI Name Cosimulation of TestProjectl m S Spee ee fE Hardware FE Software SEMEN FB Environment E Common Refresh resources upon completion 0 Cosimulation Cosimulation of Te The entire workspace The selected resource The project containing the selected resource The folder containing the selected resource Specific resources Specify Resources Recursively include sub folders Create manage and run configurations Hardware Tool location does not exist pex epr Name Cosimulation of TestProjectl Hardware Software 7 Refresh Ag Environment Common merry Environment variables to set type filter text GO Cosimulation Cosimulation of Te Variable Value Append environment to native environment Replace native environment with specified environment Bild A 16 Registerkarte 3 einer Kosimulati onskonfiguration P Run Create manage and run configurations e Hardware Tool location does not exist taxle r type filter text Name Cosimulation of TestProjectl FE Hardware FE Software 2 Refresh MB Environment 7 common Save as Local file CO Cosimulation Sharedffile TestProject Display in favorites menu Console Encoding E Or
55. ee AR Se oS 44 B22 Zi SPE ss ss bee Ge HS n aiea ES SESS a E 45 A23 Beiriebsbedinsungen ses osoari OS oe Se OF OSS DOES HOS 45 A3 Produkt bersicht we 2 44 i ash eee Rew E SER SRR EROS 45 At Tear ann sos ee se aap oe SAW nr Oe a G 45 A5 Ts io soso oe a se ee er Se Eww AS a ai a 57 A6 Drogen s Zeg pd Ge ER ORES RE RES 58 A7 Benutzungsoberliche es si we E ET EE oo eee Ee eS i 58 A 8 Nichtfunktionale Anforderungen ZER ra in E 70 A9 Technische Produktumgebung zes r aswa no Sees aa RN 72 AJI Software eeta sneda e aa naa ec ee ERS 73 AGI We oa Ee EN Ben SOAR a ar E eS EES e 73 AGG COURS oa nn een de RER E ER ee nun G 73 AYA ProduktSchnittstellen 20 3244 6648644 su Re SESS es ea 73 A 10 Spezielle Anforderungen an die Entwicklungsumgebung 74 PLN ok Be ek E nee eek CSR hee 74 DE Paes x Seen BER S S ORES EE REE CHG eS 74 A103 CGS be oe eK SR EE ES 74 ATI Gliederane in Teillpredakte 4026 804 20 a weds DENS eee rin 75 Coke SAO ee a eA Re EPR ES E OA Ge Oe AS Ree 75 B Installation 76 Bi Eelisseenriehlen 2 nk au aan a eee REN ee VEE RE EX 76 B2 eeben des Systems so so sesira OS Re ee PE ER eee 77 C Kostenbericht 78 Glossar 91 Literatur 93 VI Abbildungen 1 1 Ausgerichtete und miteinander verschmolzene Punktwolken des Ferrari 550 Ma ranello Quelle brcp Z vuu geomagic comi eee 2 1 2 Kostenentwicklung zur Fehlerbeseitigung von Fehlern 2 13 Von ESDE vorgeschlagener Entwicklungsprozess
56. en mehrschrittige Einstellungsdialoge sogenannte Wizards zum Einsatz Diese modernen Dialoge erlauben es den Inhalt nachfolgender Einstellungsseiten von der vorherigen A 7 Benutzungsoberfl che 59 Auswahl abh ngig zu machen Die unterste Zeile im Dialog enth lt Steuerelemente zur Steue rung der Seitenabfolge Von einem angebotenen Schritt kann durch Druck auf einen Weiter But ton zum n chsten Schritt bergegangen werden ein Druck auf Zur ck macht es m glich alte Einstellungen zu revidieren Erst ein Klick auf den Button Fertig macht die Einstellungen g ltig w hrend ein Klick auf Abbruch alle Einstellungen verwirft Die Einstellungen einer Seite k n nen nur dann verabschiedet werden wenn sie erfolgreich einer G ltigkeitspr fung unterworfen wurden anderenfalls werden die Buttons Weiter und Fertig gesperrt ein Informationsfeld im oberen Dialogbereich weist auf die Eingabefehler hin Einstellungsm glichkeiten f r Start und Werkzeugkonfigurationen betten sich entsprechend den Eclipse Vorgaben in einen gemeinsamen Dialog ein Auf der linken Seite bietet eine Liste mit Steuerelementen die M glichkeit Konfigurationen nach Konfigurationstyp getrennt auszu w hlen zu erstellen zu l schen sowie zu duplizieren Im unteren Bereich befinden sich zwei Buttons zum Ausf hren der ausgew hlten Konfiguration und zum Schlie en des Dialogs Die jeweils ausgew hlte Konfiguration pr sentiert im rechten Bereich des Dialogs entspreche
57. endered during a ESDE run in a cost simulated environment Created from D FZI_FARO Development FPGA ESDE_Workspace metadata plugins de fzi esm ide tools cos tLogMerged_1175701609956 xml Created on 04 04 2007 17 46 Comparing 2 Systems 1 Involved Systems Configuration Module Name Configuration Simulation Time ADC_CTRL_1 gt E CLARITH_FIX3216 LongRangeBuffer LongRangeNoiseArith NIOS NoiseArith FX on NIOS NoiseThresholdCtrl Module Name PulsePrediction 2 1 30 Configuration Simulation Time Cost report created on 04 04 2007 17 46 Copyright 2006 FZI ESS www fzi de ess Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www zi de ess 79 3 30 4 30 PulsePrediction 2 Static System Parameters LongRangeNolseArith ADC_CTRL_1 Se ADC_CTRL_2 oO E AcamCtrl CI_ARITH_FIX3216 O oS LongRangeBuffer 7 NIOS E NoiseArith FX on NIOS NoiseThresholdCtrl I Vi PulsePrediction Cost report created on 04 04 2007 17 47 Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess Copyright 2006 FZI ESS www fzi de ess 5 30 6 30 Aluts System Configuration Value ADC_CTRL_1 ADC_CTRL_2 AcamCtrl CI_ARITH_FIX3216 LongRangeBuffer NIOS NoiseArith FX on NIOS NoiseThresholdCtrl PulsePrediction LongRangeNoiseArith Cost report created
58. er Konfigurationen gel scht hat Folgende ex ternen Werkzeuge werden konfiguriert e Altera Quartus II e NIOS IT IDE 48 A Pflichtenheft e Visual Studio 6 e ModelSim 6 e Tool zur Ausf hrung von Stapeldateien e Datenvisualisierungstool ELAView Folgende im System selbst implementierten Werkzeuge werden vorkonfiguriert e Tool zur Generierung von Kostenberichten e Tool zur Generierung von Systemspezifikationen F0020 Manuelles nachtragliches Konfigurieren der Standardwerkzeuge Ziel Ziel ist das manuelle Andern der Einstellungen des Workspaces Der Benutzer kann aus einer fest vorgegebenen Menge von Werkzeugen w hlen f r die entsprechende Werkzeugkonfigurationen im Workspace eingerichtet werden sollen Weiters soll bei einem bereits konfigurierten Workspace berpr ft werden ob die Werkzeugkonfi gurationen noch bestehen Vorbedingung Ein Workspace wurde beim Start ausgew hlt f r den die Konfiguratio nen erstellt werden sollen Die Auswahl kann auch implizit erfolgen eine Nichtaus wahl ist von Seiten der Basis IDE nicht m glich daher ist diese Bedingung immer erf llt Nachbedingung Erfolg Der Nutzer hat all diejenigen Werkzeuge abgew hlt die er nicht zur Verf gung hat und f r die angew hlten Werkzeuge eine existierende ausf hrba re Datei angeben k nnen F r diese Werkzeuge sind Konfigurationen eingerichtet worden Nachbedingung Fehlschlag Der Nutzer hat die Konfiguration entweder freiwillig ode
59. er durch den Konstruktor aufgerufenen Methode createOptions werden Variablen registriert x Add options to wizard Options can be used in code templates and expressions as foptionName later on private void createOptions addFolderOption KEY_MODELSIMPATH WizardMessages MinimalCosimulationTemplate_modelSimPath WizardMessages MinimalCosimulationTemplate_defaultModelSimPath 0 addFolderOption KEY_VISUALSTUDIOPATH WizardMessages MinimalCosimulationTemplate_visualStudioPath WizardMessages MinimalCosimulationTemplate_defaultVisualStudioPath 0 Je nach Typ der Variable gibt es neben addFolderOption noch andere Hilfsfunk tionen die entsprechende Steuerelemente erzeugen k nnen Tabelle 3 2 zeigt alle vordefi nierten Steuerelemente Das Validiieren des Inhalts ist durch die Schablonenmethode void validateOptions TemplateOption source durchf hrbar Nach der Generierung der Projektressourcen kann die Klasse MinimalCosimulation NewWizard weitergehende Arbeiten vornehmen Hierzu kann sie die Schablonenmethode boolean performFinish IProject project IProgressMonitor monitor implementieren Im Beispiel wird dem Workspace eine Startkonfiguration hinzugef gt ber die das neu erstellte Projekt gestartet werden kann Daf r wird ein eigener Thread ge startet der durch die Klasse NewMinimalCosimulationCreationOperation verk rpert wird Es gilt zu beachten dass in der Vererbungshierarchie zwische
60. essdatenschema und Kumulationsskript befinden sich im Anhang C Als Generator f r den Bericht wurde Business Intelligence Reporting Tool BIRT gew hlt BIRT ist ein kostenfreies quelloffenes auf Eclipse basierendes System das L sungen im Bereich der Gesch ftsanalyse bereitstellt Das im Rahmen dieser Studienarbeit erstellte BIRT Layout data report costLog rptdesign wertet die Daten aus und erstellt je nach Einstellung eine PDF bzw eine HTML Datei mit einem Bilderverzeichnis an der Stelle im Workspace an der die Messdateien liegen Eine Einf hrung in die Funktionsweise von BIRT bietet PHH06 In Abbildung 3 5 wird ein generierter Bericht in einer Eclipse Sicht angezeigt Abbildung 3 6 zeigt alle realisierenden Klassen und involvierte Schnittstellen auf Die Imple mentierung des Werkzeugs ist von folgenden Erweiterungspunkten abh ngig org eclipse debug core launchConfigurationTypes Der Erweiterung wird die Klasse Cost LaunchDelegate bergeben an sie wird die Ausf hrung einer Konfiguration weiterge leitet Da dem Konfigurationstyp ein weiterer Konfigurationstyp f r den Buildprozess zugeordnet ist der dieselbe Funktionalit t w hrend der Buildphase durchzuf hren hat wird auch f r dessen Erweiterung die Klasse CostLaunchDelegate definiert Diese Klasse implementiert indirekt die Schnittstelle ILaunchConfigurationDelegate Die Methode launch Listing 3 1 enth lt den Code der die dialoggef hrte Auswahl der Dateien realis
61. eugen w hlen f r die entsprechende Werkzeugkonfigurationen im Workspace eingerichtet werden sollen Weiters soll bei einem bereits konfigurierten Workspace berpr ft werden ob die Werkzeugkonfigurationen zum jetzigen Zeit punkt noch bestehen Vorbedingung Ein Workspace wurde beim Start ausgew hlt f r den die Konfiguratio nen erstellt werden sollen Die Auswahl kann auch implizit erfolgen eine Nichtaus wahl ist von Seiten der Basis IDE nicht m glich daher ist diese Bedingung immer erf llt Nachbedingung Erfolg Der Nutzer hat all diejenigen Werkzeuge abgew hlt die er nicht zur Verf gung hat und f r die angew hlten Werkzeuge eine existierende ausf hrba re Datei angeben k nnen F r diese Werkzeuge sind Konfigurationen eingerichtet worden Nachbedingung Fehlschlag Der Nutzer hat die Konfiguration entweder freiwillig oder gezwungenerma en abgebrochen weil er den Dialog auf Grund von nicht angege benen oder nicht existierenden ausf hrbaren Dateien nicht best tigen kann Die ge samte IDE wird beendet Ausl sendes Ereignis Bei jedem Start der Entwicklungsumgebung Voreinstellung Alle m glichen Werkzeuge sind zur berwachung selektiert Beschreibung Der Startup Wizard erm glicht dem Nutzer das bequeme Einrichten von Konfigurationen die sonst f r mit dem System nicht vertraute Nutzer nur m hsam von Hand einzurichten sind Die berpr fung bei jedem Start hilft dem Nutzer zus tzlich falls er versehentlich eine d
62. f gt werden 76 B Installation In diesem Kapitel werden alle Schritte beschrieben die zu einer an den Kunden verteilbaren Ver sion f hren Einzige Voraussetzung ist ein Rechner auf dem Windows XP oder Windows Vista l uft S mtliche zur Erstellung des Produkts notwendigen Daten sind im Plugin de fzi esm ide zusammengefasst B 1 Eclipse einrichten Diese Schritte richten Eclipse samt Arbeitsbereich ein 1 Installation von Eclipse 3 2 2 Deu07a 2 Installation der BIRT 2 1 2 Komponenten a Eclipse starten einen neuen Ordner als Arbeitsbereich ausw hlen b ber das Men Help Software Updates Find And Install den Aktualisierungs dialog ffnen Search for new features to install ausw hlen das H kchen bei Callisto Discovery Site setzen auf Finish klicken c In der daraufhin erscheinenden Auswahl Callisto Discovery Site Charting and Repor ting Eclipse BIRT Report Designer Framework 2 1 2 0 w hlen den Button Select Required anklicken d Um mit Birt PDF Dateien generieren zu k nnen muss die mitgelieferte Komponen te itext 1 3 jar in den Unterordner plugin com lowagie itext_ lib des Eclipse Verzeichnisses kopiert werden Arbeitsbereich ber den Men punkt Run File Import importieren Alle hinzugef gten Projekte sollten ohne Fehler kompilieren B 2 Deployment des Systems 77 B 2 Deployment des Systems Mit diesen Schritten kann eine Version erstellt werden die an den Kun
63. fischen auf Fenstern basierenden Oberfl che zusammen Sie unterst tzt den Programmierer bei seiner T tig keit Beispiele f r moderne Entwicklungsumgebungen sind die Eclipse IDE Sun NetBeans oder Microsoft Visual Studio 5 6 29 45 47 48 57 70 JDT Java Development Tools Bekannteste Erweiterung f r Eclipse sie macht aus der Rich Client Plattform eine Entwicklungsumgebung f r Java 10 13 14 30 50 58 OSGi Open Services Gateway Initiative Name eines Konsortiums und seiner entwickelten hardwareunabh ngigen generischen Dienstplattform basierend auf der Javamaschine Die Plattform erlaubt dynamisches Hinzuf gen und Entfernen von Dienstanwendungen sog Bundles zur Laufzeit Diensteffektspezifikationen der beteiligten Bundles sind feingranu lar auf Java Ebene m glich 10 PDE Plugin Development Environment Der JDT zugeh rige Erweiterung f r die Eclipse Plattform Sie unterst tzt die Entwicklung von Eclipse Plugins indem sie spezielle Edito ren f r die Schnittstellen zur Verf gung stellt Andere wichtige Erweiterungen integrieren spezielle Konfigurationen zur Pluginausf hrung einen Wizard zur Erstellung von Plugins aus Vorlagen und einen Wizard zum Exportieren von Pluginprojekten f r die Weitergabe 13 SoPC System on a Programmable Chip Ein System welches aus einem Prozessor samt anwen dungsspezifischer Logik besteht und auf einem programmierbaren Logikbaustein meist FPGA untergebracht ist Wird die Prozessorlog
64. fnen oder beim Schlie en speichern Ausl sendes Ereignis Das ffnen einer Datei mit einer der genannten Dateiendungen Voreinstellung Beschreibung Wenngleich das ndern von C und VHDL Code nicht Hauptaufgabe des Systems ist dies bernehmen externe Werkzeuge wie Visual Studio und ModelSim so soll es dennoch den Nutzer bei der Verwaltung von Sourcecode mittels Einsehen unterst tzen Da das System den Quelltext nicht kompilieren muss entf llt ebenfalls die Anzeige von Fehlern Anders bei XML Dateien hier muss das System m glichst schon w hrend der Eingabe strukturelle Fehler anzeigen da sp ter Tools aus den Daten Artefakte generieren sollen F0050 Einrichten einer Kosimulationskonfiguration Ziel Projektspezifische Angaben zur Ausf hrung einer Simulation k nnen gemacht wer den Vorbedingung Das entsprechende Projekt befindet sich im aktuellen Workspace Die zu verwendenden Tools zur Simulation sind lokal installiert Nachbedingung Erfolg Eine ausf hrbare Konfigurationseinheit ist eingerichtet die das gew nschte Projekt ausf hren kann Nachbedingung Fehlschlag Bei unvertr glichen Parametern kann der Dialog nicht be st tigt werden oder f hrt zu einem Fehler bei der Ausf hrung Ausl sendes Ereignis Der Dialog wurde z B ber Run Run ge ffnet Cosimulati on wurde ausgew hlt Anschlie end wurde mit New Launch Configuration eine neue Konfiguration erstellt oder eine existierende Konfiguration ausge
65. g A nachgelesen werden Das Pflichtenheft fasst alle Anforderungen an das zu entwerfende Softwareprodukt zusammen es liefert die vertragliche Grundlage f r alle sp teren Entwurfs sowie Implementierungsentschei dungen und liefert eine essentielle Grundlage f r das Benutzerhandbuch des Systems 2 2 Existierende L sungsans tze Vor der Durchfiihrung eines Softwareprojektes ist es unabdingbar die derzeitige Marktsitua tion gut zu analysieren um R ckschl sse ziehen zu k nnen ob es sinnvoller ist ein bereits existierendes System zu verwenden oder anzupassen hnliche Werkzeuge existieren bereits so zum Beispiel Impulse CoDeveloper Universal von TRI AS Mikroelektronik TRI07 Diese Anwendung begleitet den Entwurfsprozess von der Im portierung von ANSI C Code bis zur Synthetisierung auf FPGA Plattformen der wichtigsten Hersteller Insbesondere unterst tzt es den Entwickler bei der Architekturbewertung indem es Modellsimulationen mit anschlie ender Auswertung der Simulationsdaten durchf hrt Dadurch lassen sich die Performanz betreffende Flaschenh lse fr hzeitig erkennen Bei diesem aber auch anderen Tools zeigt sich die fatalste Unzul nglichkeit vor allem in der schlecht nderbaren und nicht erweiterbaren Oberfl che Gerade die Messdatenerhebung und Auswertung der Simulationsdaten ist nicht ausreichend anpassbar 8 2 Konzeption Eine andere Alternative bietet das Werkzeug Universe COVER von Adveda SVC07 das als
66. he available templates to generate a fully functioning embedded V Create an embedded system project using one of the templates This wizard creates a standard cosimulatic project containing these folders e Documentation Empty to be added ModelSources VHDL model based on Avalon master model Simulation Avalon master model to be simulated i ModelSim Synthesis Eent filer nr euntharie tn he added m D lt Back Next gt Cancel Bild 3 7 Auswahl der Projektvorlage im New Project Wizard 3 3 2 Eigene Projektvorlage q New minimal cosimulation project Minimal Cosimulation Project aiii This template will generate a basic cosimulation project using ModelSim and VisualStudio Path to ModelSim 6 executable modelsim exe C Programme N Browse File System Path to Visual Studio 6 executable msdev exe C Programme N Browse File System Bild 3 8 Konfigurieren der Variablen einer Projektschablone Projektvorlagen sind im ESDE eigenen NewProject Wizard aufgef hrt Abbildung 3 7 und erlau ben an dieser Stelle das Generieren eines neuen Projektes mit einem fest vorgegebenen Inhalt 3 3 Ausgew hlte Teile des Programmkonzeptes 31 Innerhalb des Wizard Dialogs kann eine Dialogseite integriert werden auf der Variablen mit Werten belegt werden k nnen Beispielsweise dient die Einstellungsseite in Abbildung 3 8 der Konfiguration zweier Variablen In der Generation
67. hiesigen Fall kommen zwei unterschiedli che Plattformen in Frage zum Einen ist dies die vom Unternehmen IBM ins Leben gerufene Eclipse Plattform zum Anderen Microsoft Visual Studio Eine Gegen berstellung der beiden 2 3 Wahl der Zielplattform Spezifikation Modellierung Simulation Synthese Evaluierung Betrieb Wartung High Level Low Level Verifikation Bewertung ModelSim IDE begrenzt SOPC bf Modell e nur HW Debugging Kosten f r das Auffinden und Beheben von Problemen Aufwand Entwurfsphase Zeit Auslieferung Spezifikation Modellierung Simulation Synthese Evaluierung Betrieb Wartung High Level Low Level Verifikation Bewertung Cover 1 1 I HAL SW amp HW 4 Cosim vonSOPC begrenzt ISS 1 Periph SW Modelle kein vollst System 1 I 1 Kosten f r das Auffinden und Beheben von Problemen Aufwand Entwurfsphase Zeit Auslieferung Spezifikation Modellierung Simulation Synthese Evaluierung Betrieb Wartung High Level Low Level Verifikation Bewertung ModelSim SE SystemC 5 ESDE CoSim Libs ESDE HW SW HAL SW HW E Systeme CoSim Gesamtsystem Seesen i SWIHW Peripheriemodelle approx Timing i 7 Standard Altera Tools Tools von Drittherstellern Propriet re ESDE Tools Law Ia Kosten f r das Auffinden und Behebe
68. hing is a plug in open source kostenlos Eclipse Public License Microsoft Windows sowie 10 weitere Plattformen meist kostenlos Eclipse Public License viel Literatur z B GB05 offizielle Webseite Ecl07 viele weitere siehe Deu07a C Editor VHDL Editor Projektvorlagen nur f r Java 12 3 Realisierung Als Plattform des zu entwerfenden Systems wurde die Eclipse Plattform ausgew hlt Daher wird zun chst auf die Grundz ge der Eclipse Plattform eingegangen Die Grobarchitektur des Sys tems wird in Abschnitt 3 2 besprochen Im Abschnitt 3 3 wird die innere Struktur interessanter Teile beleuchtet hierf r ausschlaggebende Entwurfsentscheidungen werden erl utert Eine voll st ndige Erkl rung der Architektur auf Klassenebene kann nicht f r alle Plugins erfolgen da dies zu viele Seiten f llen w rde Beim Studieren der Schnittstellen der einzelnen Komponenten kann recht schnell in Erfahrung gebracht werden an welchen Punkten die Eclipse API erweitert wird und welche Klassen die Erweiterungsschnittstellen implementieren Es empfiehlt sich von diesen Klassen als Einstiegspunkt ausgehend den Programmcode zu durchwandern um einen groben berblick ber die Architektur zu bekommen 3 1 Eclipse Rich Client Platform Die Eclipse Plattform realisiert als Rich Client Platform einen kleinen Server und lagert m g lichst viel Funktionalit t auf die Clients aus Eine Clientkomponente wird im zugrundeliegen den OSGi Ko
69. iable name moduleConfiguration select CostLog Header Module Configuration gt 88 C Kostenbericht lt xsl template match CostLog gt lt xsl copy gt lt xsl apply templates select Header gt lt xsl apply templates select Static_Hw_Costs gt lt xsl apply templates select Dynamic_Hw_Costs gt lt xsl copy gt lt xsl template gt lt xsl template match CostLog Header gt lt xsl copy gt lt xsl copy of select document targetFile CostLog Header gt lt zsl if test ModuleName and not exists moduleName gt lt xsl message gt CostLog Header Date Time is missing moduleName lt xsl message gt lt xsl if gt lt xsl copy of gt lt xsl copy of select Module gt lt asl for each select Time Date Configuration gt lt xsl copy gt lt xsl attribute name moduleName gt lt xsl value of select moduleName gt lt xsl attribute gt lt xsl value of select gt lt xsl value of gt lt xsl copy gt lt xsl for each gt lt xsl copy gt lt xsl template gt lt xsl template match CostLog Static_Hw_Costs gt lt xsl copy gt lt xsl copy of select document targetFile CostLog Static_Hw_Costs gt lt xsl if test ModuleName and not exists moduleName gt lt xsl message gt CostLog Static_Hw_Factor StaticFactor is missing moduleName lt xsl message gt lt xsl if gt lt xsl copy of gt lt xsl for each select StaticFactor gt
70. ie Standardeinstellung der unterschiedlichen Perspektiven zeigen die Abbildungen A 11 A 12 und A 13 Zu F0050 Einrichtung einer Kosimulationskonfiguration Die Steuerelemente einer Kosimulationskonfiguration ist in 5 Registerkarten aufgeteilt Auf der Registerkarte Hardware Abbildung A 14 lassen sich Programmpfad Arbeits verzeichnis und Argumente f r das die Hardware simulierende Programm festlegen Ent sprechende Schalter helfen Dateien und Resourcen in den Projekten und im globalen Dateisystem aufzufinden und Variablen einzuf gen Analog dazu sind die Steuerelemente der Registerkarte Software angeordnet auf ihr l sst sich definieren welches Programm f r die Simulation der Software zust ndig ist Abbil dung A 15 Die Registerkarte Refresh bestimmt ob nach nach Beenden beider Anwendungen nde rungen an Dateien und Verzeichnissen innerhalb des Projektbaums im Workspace aktua lisiert werden sollen Welche Resourcen bzw welcher Teil des Dateibaums einer berpr fung unterzogen wird und ob die Untersuchung alle Unterverzeichnisse mit einbeziehen soll kann n her spezifiziert werden Abbildung A 16 A 7 Benutzungsoberfl che 61 Embedded Systems Development Environment Tool Configurations Setup Welcome to Embedded Systems Development Environment Embedded Systems Development Environment Your workspace seems not to be configured for embedded systems development yet Either you have created
71. ieben zu verwenden F0100 Erstellung eines Berichts an Hand von Simulationsdaten Ziel Das Generieren eines graphischen Berichts aus von ModelSim gemessenen Simulati onsdaten Vorbedingung Eine entsprechende Konfiguration F0090 ist eingerichtet Simulati onsdaten f r die Eingabe befinden sich innerhalb des geladenen Workspace Nachbedingung Erfolg Je nach Option ist ein Bericht im PDF Format oder und im HTML Format ausgegeben worden Nachbedingung Fehlschlag Ein Dialog wird ge ffnet mit der Benachrichtigung dass Probleme bei der Interpretation von Variablen aufgetreten sind oder dass keine der angegebenen Dateien schemakonform ist Ebenfalls wird ein Fehler im Dialog pr sentiert wenn die Ausf hrung aufgrund BIRT interner Probleme nicht zu Ende ge f hrt werden konnte z B nicht ausreichender Heap Speicher Ausl sendes Ereignis Der Konfigurations Dialog f r Werkzeuge wurde z B ber Run Tools Tools ge ffnet Cost Report Generator wurde ausgew hlt Anschlie end wurde eine existierende Konfiguration ausgew hlt und die Ausf hrung durch Run Tool eingeleitet Alternativ ist die kontextsensitive Ausf hrung ber Rechtsklick auf eine Datei im Arbeitsplatz und die anschlie ende Auswahl einer Konfiguration im Untermen Apply Tool m glich In beiden F llen erscheint ein Dialogfenster mit allen angegebenen Dateien die dem Schema entsprechen die Auswahl kann einge schr nkt werden und mit OK best tigt wer
72. iert diese Dateien zu einer Datei zusammenf hrt und danach den BIRT Generator startet Listing 3 1 Die Schnittstelle ILaunchConfigurationDelegate public interface ILaunchConfigurationDelegate t Ki Launches the given configuration in the specified mode contributing targets and or processes to the given launch object The launch object has already been registered with the launch manager Cparam configuration the configuration to Launch param mode the mode in which to launch in our case either ILaunchManager RUN_MODE or IToolConstants TOOL_MODE param monitor progress monitor or null Cparam Launch the Launch object to contribute processes and targets to KR KR EK E E Gezception CoreEzception if launching fails public void launch ILaunchConfiguration configuration String mode ILaunch launch IProgressMonitor monitor throws CoreException 3 3 Ausgew hlte Teile des Programmkonzeptes 29 de fzi esm ide run launchConfigurationTabGroups Die Klasse CostTabGroup Listing 3 2 bzw die Klasse CostBuilderTabGroup f r den korrespondierenden Builder Listing 3 3 ist ma geblich an der Erstellung der Registerkarten beteiligt Beide Klassen erben die al len Konfigurationsarten gemeinen Implementierungen von der Klasse AbstractLaunch ConfigurationTabGroup Auch die Registerkarten f r allgemeine Einstellungen von Kon figurationen SlimCommonTab bzw Builderkonfigurationen ToolsBuilderTab k nnen
73. ik ebenfalls anwendungsspezifisch pro grammiert handelt es sich um ein SoPC mit Softcore Prozessor 5 SWT Standard Widget Toolkit eine in Java implementierte Schnittstelle zur Verwendung der vom Betriebssystem bereitgestellten nativen Steuerelemente GUI Neben der verbesser ten Performanz macht die Anwendung einen gewohnteren Eindruck Nachteil gegen ber anderen Java GUIs ist die erkaufte Plattformabhangigkeit SWT ist jedoch f r die meisten bekannten Betriebssysteme verf gbar 72 Synthese Aufgabe der Synthese von technischen Systemen ist es aus vorgegebenen bzw gefor derten Eigenschaften und Verhalten ein technisches System zu entwickeln das eben diese Eigenschaften aufweist Deu07b 5 Workspace Der Workspace Arbeitsbereich bezeichnet in der Terminologie der Eclipse Platt form einen ausgew hlten Ort im Dateisystem des Betriebsystems an dem arbeitsplatzab h ngige Einstellungen f r die IDE sowie Projektdateien und deren Einstellungen gespei chert werden Es muss immmer genau ein Arbeitsbereich ge ffnet sein 28 33 34 47 57 59 60 64 XSD XML Schema Definition 85 93 Literatur Bal98 Balzert Helmut Lehrbuch der Software Technik 2 Heidelberg Spektrum Akademi scher Verlag 1998 ISBN 3 8274 0065 1 BF93 Bibliographisches Institut Hrsg F A Brockhaus AG Hrsg Duden Informatik 2 Auflage 1993 ISBN 3 4110 5232 5 CRO6 Clayberg Eric Rubel Dan Eclipse Building Commercial Qu
74. ile Replace With Qa 5 Run Altera Quartus I here Properties Alt Enter Qa 6 Run Altera NIOS IDE here TTT Proben Qh 7 Open selected VisualStudio project 0 errors 0 w Qa 8 Run ModelSim in this directory Descripti Q 1 Cost Report Generator Q 2 System Specification Package Generator Q Tools Bild A 28 Einstellung einer Systemspezifika tionskonfiguration System Specification Package Generator No VHDL profiles predefined for this configuration Select profiles you want to generate VHDL code from TestProjectl SystemSpecification SystemSpecification xml cosimulation vhdl ansic LJ cosimulation default target il Bild A 30 Schritt 2 beim Erstellen einer Sys temspezifikation de fzi esm ide tools Werkzeug implementieren Systemspezifikation System Specification Package Generator Bild A 29 Schritt 1 beim Generieren einer No ANSI C profiles predefined for this configuration Select profiles you want to generate ANSI C code from TestProjectl SystemSpecification SystemSpecification xml ansic default target vhdl temspezifikation de fzi esm ide wizard Projektvorlage implementieren Erweiterer Bild A 32 Gesch ftsprozesse des Erweiterers Bild A 31 Schritt 3 beim Erstellen einer Sys 72 A Pflichtenheft Nachbedingung Fehlschlag Im Eins
75. ind oder dass keine der statuierten Dateien schemakonform ist Ebenfalls wird ein Fehler im Dialog pr sentiert wenn die Ausf hrung aufgrund interner Probleme des Parsers Generators nicht zu Ende gef hrt werden konnte z B nicht ausreichender Heap Speicher Ausl sendes Ereignis Der Konfigurations Dialog f r Werkzeuge wurde z B ber Run Tools Tools ge ffnet System Specification Package Generator wurde ausge w hlt Anschlie end wurde eine existierende Konfiguration ausgew hlt und die Aus f hrung durch Run Tool eingeleitet Alternativ ist die kontextsensitive Ausf hrung ber Rechtsklick auf eine Datei im Arbeitsplatz und die anschlie ende Auswahl ei ner Konfiguration im Untermen Apply Tool m glich F r ANSI C und VHDL Ausgabe k nnen jeweils in einem Dialog die zu verwendenden Profile ausgesucht werden Voreinstellung Beim Einrichten ber die minimale Standardprojektschablone existiert eine voreingestellte Konfiguration bereits mehr dazu siehe F0110 Beschreibung Diese Funktion erm glicht das Publizieren von globalen Systemkonstan ten sowohl auf Hardware als auch Softwareseite C Headerdatei und VHDL Datei werden aus einer einem speziellen Schema folgenden XML Daten heraus generiert A 5 Produktdaten Eclipse stellt bereits eine Standardfunktionalit t zur Verf gung diese betrifft Einstellungen f r die IDE sowie das Persistieren von Projekten und deren Einstellungen Das Speichern dieser
76. ine Ressource im Arbeitsplatz Vorbedingung Das zu verwendende externe Tool ist lokal installiert eine entsprechende Konfiguration wurde eingerichtet F0070 Nachbedingung Erfolg Das Tool wurde in einem eigenen Prozess gestartet Nach Been digung wurden falls eingestellt die ge nderten Ressourcen im Arbeitsplatz aktua lisiert Nachbedingung Fehlschlag Ein Dialog wird ge ffnet mit der Benachrichtigung dass Probleme bei der Interpretation von Variablen aufgetreten sind Bei aktivierter Kon solenansicht k nnen Fehler bei der Ausf hrung des Programms eingesehen werden Ausl sendes Ereignis Der Konfigurations Dialog f r Werkzeuge wurde z B ber Run Tools Tools ge ffnet Program wurde ausgew hlt Anschlie end wurde eine existierende Konfiguration ausgew hlt und die Ausf hrung durch Run Tool eingelei tet Alternativ ist die kontextsensitive Ausf hrung ber Rechtsklick auf eine Datei im Arbeitsplatz und die anschlie ende Auswahl einer Konfiguration im Untermen Apply Tool m glich Voreinstellung Beim Einrichten des Workspace ber den Start Up Wizard existieren vor eingestellte Konfigurationen bereits Beschreibung Alle vorhandenen Variablen werden interpretiert Dann f hrt er die ange geben Programme auf der Konsole des Betriebssystems aus Parameter werden dazu bergeben Umgebungsvariablen gesetzt die Ausgabe w hrend der Ausf hrung evtl auf das Konsolenfenster der Anwendung umgeleitet Na
77. ions wie auch der Evaluie rungsphase vor ELA View ELA View ist ein eigenes Tool zur Visualisierung von Daten die das zu entwick lende eingebettete System generiert Das Tool liegt als ausf hrbare Datei vor System Specification Generator Mit diesem Hilfswerkzeug k nnen die Eckdaten der Ziel plattform spezifiziert werden und anschlie end in Form von Konstanten nach VHDL und SystemC Code exportiert werden Cost Report Generator Hierbei handelt es sich um ein im Rahmen dieser Studienarbeit noch zu entwickelndes Werkzeug Sein Zweck ist das Verarbeiten von Messwerten aus der Si mulation zur graphischen Ausgabe in einem Kostenbericht Design Space Explorer Dieses Werkzeug wird derzeit innerhalb des Instituts noch entwi ckelt Ziel ist die graphische Darstellung der erstellten Software und Hardwarearchitektur zur einfacheren Bewertung Mit der Software sollen die nachfolgend genannten Aufgaben durchf hrbar sein Die einzelnen Anwendungsf lle orientieren sich an den im Beispielszenario genannten Werkzeugen Gemeinsame Projektverwaltung Die Verwaltung der Artefakte eines Systementwurfs soll als Projekt zusammengefasst zu jedem Zeitpunkt in der Entwicklung m glich sein Es sollen auch mehrere Projekte gleichzeitig verwaltet werden k nnen Eine bersichtliche hierarchische Gliederung in Unterordner soll machbar sein Grafische integrierte Entwicklungsumgebung IDE Eine eing ngige m glichst fensterba sierte
78. it diesem Werkzeug wird die sp tere Synthese des Hardwaremodells durch gef hrt und der FPGA programmiert Im enthaltenen SoPC Builder werden alle Kompo nenten mit dem Altera Bus verdrahtet Altera NIOS II IDE Die Entwicklungsumgebung f r den weich konfigurierbaren Mikropro zessor Soft Core SoPC Altera NIOS der zweiten Generation Sie erlaubt FPGA Pro grammierern die Wahl eines Kerns schnell konomisch oder standard sowie das Konfi gurieren desselben Eigene Befehle und Peripherie k nnen hinzugef gt werden Die Ober fl che der integrierte Entwicklungsumgebung IDE basiert auf Eclipse F r die von ESDE vorgeschlagenen Erg nzungen des Standardprozesses sind weitere Anwen dungen von Drittherstellern vorgesehen 6 2 Konzeption Microsoft Visual Studio 6 In der IDE von Microsoft kann die Software des Systems in Sys temC entwickelt werden und spater im Debugger ausgefiihrt werden Werden in ModelSim Interrupts ausgel st kann so die Ausf hrung entsprechenden Programmcodes Schritt f r Schritt verfolgt werden Die Verbindung zwischen Hardware und Software basiert auf der ModelSim Schnittstelle Foreign Language Interface FLI MATLAB Mit MATLAB lassen sich mathematische Probleme auf numerische Art l sen Mit Funktionsbibliotheken f r die Signalverarbeitung erg nzt k nnen die sp ter zu modellie renden Algorithmen entworfen und getestet werden Ferner sieht ESDE eigene Tools zur Unterst tzung der Spezifikat
79. lcher Zielplatt form das System fu en soll 4 1 Einleitung Kapitel 3 beschreibt die Grobarchitektur des Systems die das Ergebnis eines ausf hrlichen Ent wurfsprozesses ist Drei ausgew hlte Teilkonzepte der Architektur werden im Abschnitt 3 3 n her betrachtet 2 Konzeption Wie f r Softwareprojekte blich beginnt jedes Projekt mit einer umfangreichen Analyse der Problemstellung Bal98 Zun chst sind methodisch gest tzt die Anforderungen an das Pro gramm aufzustellen Anschlie end werden bereits vorhandene Werkzeuge analysiert sowie eine geeignete Zielplattform gew hlt werden 2 1 Unmittelbare Anforderungen Um Anforderungen an das Produkt definiert werden k nnen wird das geplante Einsatzszenario aufgestellt Im Szenario das in dieser Studienarbeit betrachtet wird handelt es sich um einen erweiterten und optimierten Entwurfsprozess f r eingebettete HW SW Systeme auf der Basis von FPGA Bausteinen Wie der Entwurfsfluss mit den aufgez hlten Werkzeugen aussehen kann wurde bereits in Abbildung 1 3 gezeigt Als Grundlage dieses Entwurfsprozesses dienen alle Tools die auch im von Altera vorgeschlagenen Standard Prozess eine Schl sselrolle spielen MentorGraphics ModelSim 6 Dient zur Simulation des in VHDL beschriebenen Hardware modells Ausgel ste Interrupts werden im Simulator abgefangen und mittels der Schnitt stelle Foreign Language Interface FLI an die Software weitergeleitet Altera Quartus Il M
80. le Qa Run ModelSim in this directory Q Run thisbatch file here Qh System Specification Package Generator Q Generate package files from selected Choose which type of format to generate Generate PDF file Generate HTML file with diagram images Xcontainer_path Bild A 24 Einstellung einer Berichtskonfigu ration Cost Report Generator Select cost loggings to be merged into one report Bild A 26 Schritt 2 beim Erstellen eines Be richts amp gt Visual_AvalonMasterModel amp Synthesis B SystemSpecification E ExecuteGenerator bat Ji SystemSpecification xmi B S TargetSources 6 CLARITH_FDG216 Rename m C Nios Software E S SystemSpecification H S Timer 8 Tools Refresh S S Nios_Terminal_GUI Ak H SysSpecPkgGenerator FEH amp 1 Run this batch file here Run gt Qu 2 Generate package files from selected system specifications Team Compare With Replace With P Qg 4 Run ELAView on this file LO 5 Run Altera Quartus I here Qh 6 Run Altera NIOS IDE here Qa 7 Open selected VisualStudio project Qu 8 Run ModelSim in this directory Qh 1 Cost Report Generator Q 2 System Specification Package Generator r T 3 Q Tools S 6 items selected Bild A 25 Schritt 1 beim Erstellen eines Be richts BS C Users Andi Eclipse test workspace TestProjectl simulation Si
81. le New Project erfolgen dort muss unter der Gruppe Embedded 60 A Pflichtenheft Development das Element Embedded System Project from Template ausgew hlt werden A 6 Auf der zweiten Seite Abbildung A 7 muss der Name des Projektes eingegeben werden optional kann ein besonderes Verzeichnis innerhalb des Workspace gew hlt werden stan dardm iig ist dies ein gleichnamiger Ordner im Wurzelverzeichnis des Workspace Auf der dritten Seite Abbildung A 8 kann bei aktivierter Checkbox auf der linken Seite eine Vorlage ausgew hlt werden Auf der rechten Seite k nnen Informationen ber die akti vierte Schablone eingesehen werden Die letzte Seite des Dialogs Abbildung A 9 dient zur Eingabe von Parametern der ausgew hlten Vorlage das Erscheinungsbild ist von der gew hlten Vorlage abh ngig F r das Minimalprojekt m ssen Pfade zu den Werkzeugen ModelSim und Visual Studio angegeben werden Eine abschlie ende Fortschrittsanzeige im unteren Bereich informiert den Nutzer ber die Aktivit t w hrend der Projektgene rierung Abbildung A 10 Zu F0040 Editieren von C VHDL oder XML Code Implementiert als Editor View nehmen alle Editoren ihren daf r vorgesehenen Platz ein Eine eigene Perspektive bietet die M glichkeit vorhandene Zusatzsichten entsprechend zu platzieren So bieten alle drei Editorarten eine Outline genannte Sicht die eine schnel le bersicht ber die Dokumentenstruktur und Navigierung in selbiger erm glicht D
82. lick auf das Projekt im Package Explorer Properties Builders eingesehen und ge ndert werden Builderkonfiguration sind als versteckt markiert damit sie nicht im Konfigurationsdialog aufgef hrt werden de fzi esm ide run launchConfigurationTabGroups Funktion und Parameter des Erweiterungs punktes wurden bereits im Abschnitt 3 2 1 besprochen Versieht alle registrierten Konfigurationstypen mit einem Satz Registerkarten die inner halb des Konfigurationseinstellungsdialog die Einstellung erlauben de fzi esm ide run launchConfigurationTypelmages Funktion und Parameter des Erweite rungspunktes wurden bereits im Abschnitt 3 2 1 besprochen Versieht alle registrierten Konfigurationstypen mit einem Icon de fzi esm ide run launchShortcuts Funktion und Parameter des Erweiterungspunktes wur den bereits im Abschnitt 3 2 1 besprochen F gt dem Kontextmen Men punkte hinzu die selektionsbezogen eine Werkzeugkonfi guration des Typs System Specification Package Generator bzw Cost Report Generator er stellen und ausf hren de fzi esm ide tools configurationDuplicationMaps Der Erweiterungspunkt wird vom Plu gin selbst zur Verf gung gestellt Funktion und Parameter des Erweiterungspunktes wur den bereits besprochen Erm glicht allen registrierten Konfigurationstypen die Verwendung im Buildprozess ei nes Projektes indem eine Abbildung vom Konfigurationstyp auf seinen entsprechenden Builderkonfigurationstyp gesetzt wird
83. lt adALeIep gt gt 1 Buns apow Weqioypay 104p youne LL 7 IBUS leySIoB Vv I JeBeueyouney Je6eueyyouneqjeb y ppowa107 Bngap esdijaa b10 Wo I a e69 equonesnByuogyoune uonda2x32109 uonda x Jouzuodaia 55510 Wo I lt lt ad ALeJep gt gt uoneinByuogysuneyy aounosayy senge UONeINBNLOHBeBLI0H STIER lt lt a jel I uojeinByuopysuneqy Den asr6yuoo uojeinByuogasooyoy M E l uoneunByuopypuneyy adA LUoNeinbyuogypuneT dA Byuod aounosayy sadinosas uoleunByuoDyounepuy ay lt V adA uoneinByuopypuneqy ad LuoneinByuooj aby MA aounosayl Palgo syu w j SPEIgOPEPEIESEAIOSAJ unr apr uso op won POUF 3105 BAGS ssdipa BIO wo a UNTSPFWSSTZSP Woy dnoipjgeuoneinByuogysuneqy ayeBajoquonesnByuopyouneqy I eu1 ur S007 ap saz op WO ynoyoysyouneqy SEI adA 1232 myoysypune7 00 lt lt d 1eep gt gt lt lt adAeyep gt gt lt lt adAeyep gt gt qnoyoysyauneyjooL TREG sjooy prws zy p aBeysed 36 Bild 3 6 Vererbungshierarchie bei der Implementierung einer Werkzeugart 37 3 3 Ausgew hlte Teile des Programmkonzeptes jee uondgayejdwe ounge eBeqleule tuogajepijen uoydosjeldws eounos SUONAOHSJEPIIEN P ezim puezim soBedppe yu SHUPMOMYOsoquinnjeby aonuoyyssa4 oig JO UOW Seen uoneunByuoQuojejnwWisoge easo suojdQayeaio ui SHUPMOMJOJOQuINNIEB Buus PIUOIPSSIAB Joyuoyyssa4 oud JO
84. luten Pfade zu Verzeichnissen im globalen Dateisystem in denen sich die im Workspace selektierten Ressourcen befinden e Die Variable container_name Workspacepfad zu Ressource repr sen tiert den Namen zum Verzeichnis das die relativ zum Workspace angegebene Ressource enth lt Ohne Argument repr sentiert sie diejenigen Namen von Ver zeichnissen die zur Anwendungszeit der Konfiguration im Workspace selektier ten Ressourcen direkt bergeordnet sind Die Angabe von aufl senden Variablen kann dabei helfen f r ein spezielles Projekt Konfigurationen zu erstellen indem Workspace interne Pfade in Pfade des globalen Dateisystem des Betriebssystems aufgel st werden k nnen Weiterhin ist es m glich Variablen einzusetzen Optional ist beim Beenden einer Simulation das Auffrischen der Workspace Ressourcen m glich um nderungen sichtbar machen zu k nnen Umgebungsvariablen k nnen angegeben werden und die Anzeige der Befehlskonsole kann aktiviert werden F0060 Starten eines Projekts ber eine Kosimulationskonfiguration Ziel F r ein Projekt wird eine Kosimulationssitzung begonnen Vorbedingung Ein Projekt und eine entsprechende Konfiguration f r das Projekt siehe F0050 existieren Nachbedingung Erfolg Die beiden Anwendungen zur Simulation von Hardware und Software wurden gestartet und haben die bergebenen Argumente akzeptiert Nach Beendigung beider Prozesse wurden falls eingestellt die ge nderten Ressourcen
85. mlauthor C Code editieren VHDL Code editieren XML Code editieren de fzi esm ide wizard neues Projekt von Vorlage erstellen de fzi esm ide tools internal startup 7 L include include _ Workspace konfigurieren de fzi esm ide run 7 a Se Ps H Cosimulation konfigurieren Standardwerkzeuge konfigurieren Startup Wizard Anwender Werkzeuge manuell einstellen include Cosimulation starten de fzi esm ide tools d 7 extend externes Programm externes Programm konfigurieren ausf hren Werkzeug konfigurieren Kostenbericht konfigurieren Kostenbericht generieren Werkzeug ausf hren SysSpecPkg Generator konfig SysSpecPkg Generator anwenden Bild A 2 Gesch ftsprozesse des Anwenders A A Produktfunktionen 47 Eclipse stellt Standardfunktionen fiir Workbench und Projektverwaltung zur Verfiigung Die Verf gbarkeit dieser Funktionalit t wird vorausgesetzt es wird lediglich auf Funktionen ein gegangen die nicht bereits von der integrierte Entwicklungsumgebung IDE implementiert werden F0010 Konfigurieren der Standardwerkzeuge beim ersten Start Ziel Ziel ist die Einrichtung des Workspace beim ersten Start sowie die Erhaltung erfolg ter Einstellungen bei weiteren Starts Der Benutzer kann aus einer fest vorgegebenen Menge von Werkz
86. mulationLogFiles CostLogs costLogMerge gt Ey 2 Static properties of test run Property Module Value Aluts CI_ARITH_FIX3216 500 NiosSoftCoreuC 2062 Timer_0 211 DSPBlocks CLARITH_FIX3216 8 NiosSoftCoreuC 1 Timer_0 0 Dlls CI_ARITH_FIX3216 0 NiosSoftCoreuC 0 Timer_0 0 FPGA_TYPE CI_ARITH_FIX3216 STRATIXI NiosSoftCoreuC STRATIZ I Timer_O STRATIX I MemoryBits CI_ARITH_FIX3216 0 NiosSoftCoreuC 349696 Timer_0 0 Pis CLARITH_ FIX3216 0 NiosSoftCoreuC 0 Timer_0 0 Registers CI_ARITH_FIX3216 34 NiosSoftCoreuC 1451 7 Bild A 27 Erstellten Bericht anzeigen 70 A Pflichtenheft Die Registerkarte Common enth lt allgemeinere Einstellm glichkeiten ihr Aufbau gleicht dem in F0050 beschriebenen ohne die f r die Konsole notwendigen Einstellungen Im oberen Abschnitt der Karte l sst sich der Speicherort der Konfiguraiton definieren w h rend im unteren Bereich die Konfiguration im Favoritenmen sichtbar gemacht werden kann Zu F0120 Erstellung einer Systemspezifikation Auch die Interaktion zu F0120 gestaltet sich analog zum f r F0080 geschilderten Auf ruf Abbildung A 29 F r VHDL Ausgabe und ANSI C Ausgabe ffnet sich jeweils ein Dialog mit der M glichkeit die in der Konfiguration definierten Profile anzupassen Ab bildungen A 30 und A 31 Um ein Element hinzuzuf gen oder zu entfernen muss bei gedr ckter Steuerungstaste Strg bzw Ctrl mit der Maus ein Linksklick auf das entspre chende Element
87. n gt lt xsl attribute gt lt xsl apply templates mode resolveTime select gt lt xsl copy gt lt xsl for each gt lt xsl copy gt lt xsl template gt lt xsl template mode resolveTime match CostTime gt lt CostValue gt lt xsl value of select substring before u gt lt CostValue gt lt CostUnit gt lt xsl value of select substring after gt lt CostUnit gt las lt CostTime gt 10 ns lt CostTime gt parsed to lt CostValue gt 10 lt CostValue gt lt CostUnit gt ns lt CostUnit gt Reason VHDL cost log doesnt support splitting 10 pns into 10 ns gt lt xsl template gt lt xsl template mode resolveTime match gt lt xsl copy of select gt lt xsl copy of gt lt xsl template gt lt xsl stylesheet gt 90 C Kostenbericht 91 Glossar BIRT Eine Erweiterung f r die Eclipse Plattform die das Auswerten und das anschlie ende Pr sentieren von Daten in einem Bericht erm glicht Der Bericht kann in den Forma ten PDF und HTML erfolgen das DOC Format von Word befindet sich noch in der Entwicklung Als Datenquellen k nnen XML Dateien eine SQL Datenbank oder eine beliebige andere Datenquelle dienen die mit Javacode ausgelesen werden kann Fiir das Anbinden von Datenquellen und das Editieren und Layouten eines Berichtes wird ein graphischer Editor innerhalb der Eclipse IDE zur Verfiigung gestellt Die Generierung ist durch Scripting anpassbar Mit Hilfe von
88. n ITemplateSection und der ab strakten Klasse IDETemplateSection in mehreren Stufen verfeinert wird Zuerst wird die ab strakte Klasse AbstractTemplateSection gebildet das die Schnittstellen ITemplateSection und IVariableProvider erbt Damit sind GUI Elemente der Variablen ebenso wie eine Schnitt stelle zur Variablenabfrage vereint Implementiert werden jedoch an dieser Stelle nur der Gene rator f r das zu erstellende Projekt Er rekursiert in den Dateibaum der Projektvorlage hinein 34 3 Realisierung Tabelle 3 2 Hilfsfunktionen zur Registrierung von Variablen unterschiedlichen Typs Methode Funktion addOption String name String label ein H kchen kann gesetzt werden boolean value int pageIndex boolscher Wert addOption String name String label ein einfaches Editierfeld fiir Zeichen String value int pageIndex ketten addFileOption String name String label ein Editierfeld mit zus tzlichem Schal String value int pageIndex ter mit dem nach einer Datei gesucht werden kann addFolderOption String name ein Editierfeld mit zusatzlichem Schal String label String value ter mit dem nach einem Pfad gesucht int pageIndex werden kann addOption String name String label Radiobuttons lassen die Auswahl aus String choices String value mehreren Elementen zu int pageIndex addBlankField int height int pageIndex ein vertikaler Abstandshalter zur op tischen Trennung zwischen Steuerele menten und parst w hrend des
89. n von Problemen Entwurfsphase Zeit Auslieferung Bild 2 1 Das Altera Prozessmodell in seiner urspr nglichen Form und erweitert um Drittherstel lertools im Vergleich mit dem ESDE Prozessmodell 10 2 Konzeption Plattformen in der Tabelle 2 1 zeigt eine klare Tendenz in Richtung Eclipse auf Griinde die fiir Eclipse bzw gegen Visual Studio sprechen 1 Die Kombination einer klar strukturierten Komponentenarchitektur gepaart mit voll standig verfiigbarem Quellcode aller existierender Komponenten erlaubt die einfachere Erweiterbarkeit Komponenten deren Funktionalit t nicht ben tigt werden k nnen weg gelassen werden Komponenten deren Funktionalit t in anderer Form zur Verf gung ste hen muss k nnen durch alternative Implementierungen ausgetauscht oder modifiziert werden 2 Die Investition in eine kostenlose in vollst ndigem Quellcode vorliegende Plattform ist weniger risikotr chtig als die Investition in eine kommerzielle Plattform deren Erweite rungsschnittstellen sich in kommenden Versionen grundlegend ndern k nnen Fehler hafte Eclipsekomponenten k nnen jederzeit durch neuere Versionen ausgetauscht werden oder aber selbst verbessert werden w hrend bei einer kommerziellen Plattform auf Bug fixes bzw Servicepacks seitens des Herstellers abgewartet werden muss 3 Eine deutlich bessere Verf gbarkeit von Literatur f r die Eclipseplattform ist festzustel len Selbst wenn die vorhandene Literatur nicht au
90. nd die Realisierung des Systems statt Kapitel 3 beschreibt die der Entwurfs phase entsprungenen Architektur im Groben Interessante Teile der Architektur insbesondere solche die die Erweiterbarkeit des Systems garantieren wurden genauer beleuchtet 4 2 Bewertung erster Erfahrungen Schon w hrend der Entwicklung wurde das System in dem in Kapitel 2 beschriebenen Szenario eingesetzt Die hierbei erlangten Erfahrungen und erkannten Fehler f hrten zu einer besseren Praktikabilit t und Anwendbarkeit in sp teren Iterationen Als Beispiel hierf r sei die Generierung von Kostenberichten genannt die iterativ soweit verfei nert werden konnten dass sie aus simulativen Ergebnissen gute R ckschl sse auf die Qualit t 40 4 Evaluierung der im Szenario beschriebenen Hardware Software Architektur ziehen konnten Anhang C illustriert dies an einem Beispiel Als weiteres Beispiel sei auch die Erstellung von Beispielprojekten genannt Die schon jetzt im plementierte Projektschablone Minimal Cosimulation Project illustriert wie einfach ein Projekt mit Parametern und einer kleinen Menge Code f r die dialogorientierte Einstellung dieser Para meter und Generierung der Projektartefakte ausgestattet werden kann und dadurch zur Vorlage f r neue Projekte dienen kann Der Einsatz des Metatools hat und wird sich im weiteren Einsatz als u erst praktikabel erwei sen Gerade durch die Erweiterbarkeit k nnen neue Werkzeuge hinzugef gt wer
91. nd einer Unterseite Console f r die Anpassung der Konsole eingerichtet org eclipse ui keywords F r den Einstellungsdialog k nnen einer Einstellungsseite eine Menge von Schl sselw rtern zugeordnet werden Bei der Eingabe einer Zeichenfolge im Suchfeld links oben im Einstellungsdialog werden nur die Einstellungsseiten angezeigt deren zuge ordnete Schl sselworte die Zeichenfolge enthalten Der Name einer Einstellungsseite ist automatisch unter der Menge ihrer Schl sselworte Das Plugin f gt allen Einstellungsseiten die es angelegt hat Schl sselworte hinzu org eclipse ui actionSets Mit diesem Erweiterungspunkt werden Men punkte den Men leis ten und Icons den Werkzeugleisten hinzugef gt Neben Angaben ber den darzustel lenden Namen der Buttonart den Icons einer ID f r das Hilfesystem und einem der Gruppierung dienenden Men bzw Werkzeugleistenpfad muss eine Implementierung der Schnittstelle IWorkbenchWindowActionDelegate oder f r Pulldownmen s IWork benchWindowPulldownDelegate bergeben werden Weitere Optionen k nnen der Be schreibung des Erweiterungspunktes entnommen werden Ein XML Ausdruck kann an gegeben werden damit schon vor dem Laden des Plugins entschieden wird ob der Men punkt bzw das Icon aktiviert deaktiviert oder unsichtbar sein soll Erweiterungen f gen der Men leiste ein Men Run mit den Punkten Run Last Launched Run History Run As und Run und der Toolbarleiste ein Starticon hinzu
92. nde Steuerelemente die nach der Art des zu Konfigurierenden auf mehrere Registerkarten aufgeteilt werden k nnen Hauptelement jeder Konfiguration ist ein oberhalb der Registerkarten angeord netes Editierfeld zur nderung des Konfigurationsnamens Unterhalb der Registerkarten sind zwei Buttons zum Speichern und Revidieren von nderungen an der ausgew hlten Konfigura tion Zu F0010 Konfigurieren der Standardwerkzeuge beim ersten Start Die Einstellungsm glichkeiten lassen sich am Besten in einem Wizarddialog in Seiten strukturiert pr sentieren Seite 1 Abbildung A 3 begr t den Nutzer erkl rt ihm die Ursache f r das Erscheinen des Dialogs und erkl rt ihm was zu tun ist Seite 2 Abbil dung A 4 enth lt eine Auflistung aller einzustellenden Werkzeuge wobei je nach Art des Tools ein Editierfeld f r den akzeptierten Pfad zur ausf hrbaren Datei samt einem Schalter mit einem verkn pften Suchdialog hinzugef gt wird Zu F0020 Manuelles nachtr gliches Konfigurieren der Standardwerkzeuge Das Konfigurieren der Standardwerkzeuge kann zu jedem sp teren Zeitpunkt manuell erfolgen Der entsprechende Schalter ist auf der ber Run Tools erreichbaren Eclipse Einstellungsseite plaziert Abbildung A 5 Der Schalter ffnet den zu F0010 beschrie benen Wizarddialog Zu F0030 Erstellung eines Projektes von einer Vorlage Dieser Dialog ist in den Wizarddialog New Project eingebettet Der Aufruf kann ber die Men punktfolge Fi
93. ndern der Einstellungen wurde das Speichern durch einen Druck auf Apply ausgel st Voreinstellung Beim Einrichten des Workspace ber den Start Up Wizard existiert be reits eine voreingestellte Konfiguration Diese Konfiguration berl sst die Auswahl der entsprechenden Profile dem Anwender Die erstellten Artefakte werden im daf r vorgesehenen Ordner des aktiven Projekt angelegt TargetSources SystemSpecification Beschreibung Eine XML Eingabedatei und das Ausgabeverzeichnis k nnen festgelegt werden dabei besteht wie gewohnt die M glichkeit Variablen wie in F0050 be schrieben zu verwenden Welche Profile f r die Generierung der Ausgabe in ANSI C nd VHDL verwendet werden kann getrennt spezifiziert werden Mehrere Profile Ab Produktdaten 57 werden durch Komma separiert Wird eins der Felder frei gelassen muss der Anwen der zur Anwendungszeit unter den verfiigbaren Profilen wahlen F0120 Erstellung einer Systemspezifikation Ziel Systemspezifikationen auf Hardware und Softwareseite verfiigbar machen Vorbedingung Eine entsprechende Konfiguration F0110 ist eingerichtet Systemspe zifikationen f r die Eingabe befinden sich innerhalb des geladenen Workspace Nachbedingung Erfolg Aus der Spezifikation und den ausgew hlten Profilen wurde AN SI C und VHDL Code erstellt Nachbedingung Fehlschlag Ein Dialog wird ge ffnet mit der Benachrichtigung dass Probleme bei der Interpretation von Variablen aufgetreten s
94. ndlichen else oder endif Befehl werden ignoriert lt gt lt Ausdruck gt evaluiert zu true templatepreprocessor else lt Ausdruck gt lt Zeilenumbruch gt else Befehl Die nachfolgenden Zeilen bis zum zugeh rigen endif Betehl werden ignoriert lt gt lt Ausdruck gt des zugeh rigen ifBefehls evaluierte zu false templatepreprocessor endif lt Ausdruck gt lt Zeilenumbruch gt endif Befehl Beendet zugeh rige if else Befehlsfolge lt g ltigerVariablenname gt Der Inhalt der Variable wird an Stelle der Pr prozessoranweisung ausgegeben BNF Grammatik der Nichtterminalsymbole lt Ausdruck gt lt Ausdruck gt amp amp lt Ausdruck gt lt Ausdruck gt lt Ausdruck gt lt Ausdruck gt lt Ausdruck gt lt Ausdruck gt lt Ausdruck gt C lt Ausdruck gt 1 lt Ausdruck gt lt Wert gt BNF Grammatik f r lt Ausdruck gt lt Wert gt true false lt beliebigesZeichen gt lt beliebigeZiffer gt lt g ltigerVariablenname gt BNF Grammatik f r lt Wert gt lt g ltigerVariablenname gt Name einer f r den Pr prozessor deklarierten Variable Die Variable muss ein Steuerelement auf der Projektwizardseite zugewiesen bekommen das als Eingabem glichkeit dient Die Variable pro jectName ist bereits vergeben sie steht f r den Projektnamen 3 3 Ausgew hlte Teile des Programmkonzeptes 33 Listing 3 4 In d
95. nen an Die Klasse IStartupPreferences dient als Beh ltnis f r globale Konstanten sie enth lt die IDs der zu persistierenden Optio nen Das Klassendiagramm in Abbildung 3 12 visualisiert die wichtigsten Zusammenh nge 3 Realisierung Burg apow BojeiquoneinByuogyouneyy Bojeip sOp Logan Buns apow BojeiquoneinByuogyouney oep SqeL e II Burns BwWeN o UOd Jo qUOD onuo _ JBUBJS 8 qISSe997jOUODppe SS Adoybupomuonreinbyuoyupunel Adoybumom peyeayoe Burasi KSE ANOISTELTPINEASOD Zone Ado Bunoqquonesn6yuogysuney Adopbunjiom peyeaAnoeep Sums 0 a eBajequouneqjjsop abewy ebewpjeb Sums Se eleqysune soy mero EEE me Burs alqeuenjeb Bums nr an ma Wedelidwe o6 D x et ee eg x Buns eweNellqjoayselAjg e6 une Bus Bue Guys awenuen WOISSeIdxgejgeueNMauf Dune dutzeeg de LUNSOD payajaguoyngAojauigindjnos pueyz buns 0 b geLuienIsod pa oajaguoynguoljes07Ja0edsyJoja pueyz Buys 6 qeLuleyysop Buys 8 qeLuleWsog Buys Z qeLulewsog Buns 9 GeLuleysop Bums S qeLuleyysog Sit es1nosay SeouNoseyANdul ums E gplus allg Joyuowssa1bolg Joyuow Weansinduy weas Burg awWeNel sNdyno JauIeEWUOD JauretuonIndyno al J0 Loun Buns geLUIeWSOH weaysindinoAeuyerg 1 P1041 Aopauiqabew yseLiepuaypuyunyl ep YodeyTWLHJepue Buns OZ qeLulepysop weajsindinoAenvyerdg DEG LapusypuyuNyYT dee pYodey jqddJepuel Buns 6
96. ngsdialoge der Konf gurationstyp erscheint Neben der in diesem Plugin definierten Startkategorie der Kon figurationen des Modus run zugewiesen werden wird in de fzi esm ide tools eine weitere Werkzeugkategorie erzeugt dieser sind Konfigurationen des Modus tool zugewiesen launchConfigurationTypelmages Der Erweiterungspunkt erm glicht f r einen ber seine eindeutige ID gekennzeichneten Konfigurationstyp ein Icon anzugeben Das Icon wird mit Konfigurationsinstanzen in der GUI insbesondere in den Konfigurationsdialogen und Men s in Verbindung gebracht launchGroups Um eine Kategorisierung von Konfigurationen in Gruppen vornehmen zu k n nen m ssen Gruppen mit diesem Punkt vorher kreiert werden Eine Gruppe fasst Kon figurationen eines bestimmten Modus in einem eigenen Dialog zusammen Neben Name anzuzeigendem Namen und Icon kann ein Dialogbannersymbol und ein Dialogtitel an gegeben werden Einer Kategorie k nnen mehrere Typen hinzugef gt werden die im lin ken Auswahlfeld des Dialogs erscheinen Sp ter existiert beispielsweise eine Kategorie f r Startkonfigurationen ihr sind Konfigurationstypen des Modus run zugeordnet Der Ka tegorie von Werkzeugkonfigurationen sind dann Konfigurationstypen des Modus tools zugeordnet launchShortCuts Der Erweiterungspunkt f gt dem Kontextmen je nach angegebener Liste unterst tzter Modi zum Beispiel Run und oder Apply Tool Men punkte hinzu die abh ngig von der derzeitigen Au
97. nik GmbH Impulse CoDeveloper Universal http www trias mikro de pdfs eda FPGA TRIAS_CoDeveloper_Universal pdf Version 20 Marz 2007
98. nment Common Hardware EETSBRRGFEN s Refresh BG Environment E Common Select application capable of simulating the hardware part e g ModelSim and adjust arguments Select application capable of simulating the software part e g Visual Studio and adjust arguments Location in global file system Location in global file system C Programme Mode Sim6 0 win32 modelsim exe C Programme Microsoft Visual Studio Common MSDev98 Bin msdev exe Browse Workspace Browse File System ia Browse Workspace Browse File System _ Variables Working Directory in global file system Working Directory in global file system S workspace_loc TestProject1 Simulation ModelSim_EmbeddedSystem S workspace_loc TestProject1 Simulation Visual_AvalonMasterModel Browse Workspace Browse File System e Browse Workspace Browse File System Variables Arguments Arguments Sresource_loc TestProject1 Simulation Visual_AvalonMasterModel VISUAL_AVALONMAS TERMODEL dsw Cams Note Enclose an argument containing spaces using double quotes Note Enclose an argument containing spaces using double quotes Bild A 14 Registerkarte 1 einer Kosimulati Bild A 15 Registerkarte 2 einer Kosimulati onskonfiguration onskonfiguration 66 A Pflichtenheft P Run P Run Cr
99. nnen Diese Funktionalit t wird genutzt um eine eigene Kategorie von Konfigurationen zu implementie ren die f r die Ausf hrung von Projekten zust ndig sind Der in diesem Plugin implementierte Startkonfigurationstyp dient zum Start der beiden n tigen Anwendungen die zur Cosimula tion d h zur Simulation von Hardwareteil und Softwareteil eines ESDE Projektes vorgesehen sind Die Struktur der Komponente orientiert sich an denjenigen Teilen des JDT Plugins org eclipse debug ui welche die Verwaltung von Konfigurationen erm glichen und in die Oberfl che integrieren Die Erweiterung um Startkonfigurationen orientiert sich an Teilen des Plugins 3 2 Schnittstellen der Plugins 15 org eclipse ui exernaltools auch in diesem Plugin wird ein spezieller Konfigurationstyp zur Aus f hrung externer Prozesse implementiert Folgende Erweiterungspunkte werden bereitgestellt launchConfigurationTabGroups Hier kann ein Konfigurationstyp definiert werden Durch eine Implementierung der Schnittstelle ILaunchConfigurationTabGroup ist eine Grup pe von Registerkarten mit Einstellungen zu definieren Der Konfigurationstyp mit den entsprechenden Registerkarten wird dem Einstellungsdialog f r Start Werkzeugkonfigu rationen hinzugef gt Eine mit dem Konfigurationstyp assoziierte Standardperspektive und eine textuelle Beschreibung k nnen angegeben werden ferner entscheidet die Kate gorie der Konfiguration dar ber in welchem der beiden Einstellu
100. ntext Bundle im Eclipse Kontext Plugin genannt Die Provides Schnittstelle eines Plugins dient dazu anderen Plugins einschlie lich sich selbst Funktionalit t anzubieten in der Eclipse Terminologie Erweiterungspunkte genannt Macht ein Plugin Gebrauch von angebote ner Funktionalit t muss dies in seiner Requires Schnittstelle festgelegt werden und wird in der Eclipse Terminologie Erweiterung genannt Die grobgranularste Strukturierung des Systems ge schieht also bei der Aufteilung der Funktionalit t auf Komponenten entsprechend der Entwurfs regel separation of concerns der Trennung unterschiedlicher Belange Damit der Plattformlader eine Komponente als Plugin erkennt muss es zum Startzeitpunkt im Unterordner plugins in einem Ordner oder jar Archiv mit seinem eindeutigen Namen abgelegt sein und einer festgelegten Struktur gen gen Dazu geh rt eine dort abgelegte g ltige Manifest Datei plugin xml in der folgende Informationen enthalten sind e Abh ngigkeiten zu anderen Plugins requires werden definiert 3 2 Schnittstellen der Plugins 13 e Klassen die f r andere Plugins sichtbar sind und extern verwendet werden k nnen ex ports miissen explizit genannt werden e Zur Verfiigung gestellte Erweiterungspunkte extension points werden ebenfalls im Ma nifest definiert und zwar in Form eines Verweises auf die entsprechende Schema Datei Es handelt sich um ein gew hnliches XML Schema mit Eclipse Erweiterungen die En d
101. ogMerge B gt E 2 Static properties of test run Property Module Value Aluts CI_ARITH_FIX3216 500 2 NiosSoftCoreuC 2062 Timer_0 211 DSPBlocks CI_ARITH_FIX3216 8 NiosSoftCoreuC 1 Timer_0 0 amp TargetSo Move Dis E E CL_ARITH_FIX3216 CI_ARITH_FIX3216 0 3 6 Nios Software Saas NiosSoftCoreuC 0 SystemSpecification E Tirner_0 0 amp Timer Er FPGA_TYPE Tools amp Refresh CLARITH_FIX3216 STRATIX I oe en Add Bookmark NiosSoftCoreuC STRATIX I i SysSpecPkgGenerator i Qh 1 Run this batch file here M Bit de SSES Run gt Qh 2 Generate package files from selected system specifications a CILARITH_FIX3216 0 rem ES NiosSoftCoreuC 349696 Compare With gt 4 Run Timer_0 o _Replace With 9 5 Run Alter co Pills Qh 6 Run Altera NIOS IDE here CI_ARITH_FIX3216 0 Qh 7 Open selected VisualStudio project NiosSoftCoreuC 0 Qh 8 Run ModelSim in this directory Timer_0 0 Qh 1 Cost Report Generator Registers CILARITH_FIX3216 34 Berd Qh 2 System Specification Package Generator NiosS oftCoreuC 1451 6 items selected Bier Bild 3 4 Auswahl der Messdaten Bild 3 5 Erstellten Bericht anzeigen Nachdem die Module ausgew hlt worden sind Abbildung 3 4 kumuliert das Werkzeug alle Messdaten intern in einer einzigen Datei die dann dem Generator bergeben werden Das Ku 28 3 Realisierung mulieren der Daten f hrt die XSL Transformation data report costLogMerge xs1 durch Listings von M
102. on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi deless Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi deless 80 C Kostenbericht 7 30 SPBlock Value Module Name ADC_CTRL_1 ADC_CTRL_2 AcamCtrl CLARITH_FIX3216 LongRangeBuffer NIOS NoiseArith FX on NIOS NoiseThresholdCtrl PulsePrediction LongRangeNoiseAri Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www zi de ess Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess 97 30 stem Configuration Value Module ADC_CTRL_1 ADC_CTRL_2 AcamCtrl CI_ARITH_FIX3216 LongRangeBuffer NIOS NoiseArith FX on NIOS NoiseThresholdCtrl PulsePrediction LongRangeNoise Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi deless Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess 81 MemoryBi Module Name ADC_CTRL_1 ADC_CTRL_2 AcamCtrl CI_ARITH_FIX3216 LongRangeBuffer NIOS NoiseArith FX on NIOS NoiseThresholdCtrl PulsePrediction LongRangeNoiseArith Value Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www zi de ess Cost report created on 04 04 2007 17 47 Copyright 2006 FZI ESS www fzi de ess 13 30 PII Mod ADC_CTRL_1
103. oolkonfigurationen gedacht erm glicht dieser Erweiterungspunkt die Integration von Werkzeugen in den Buildvorgang eines Projektes Die Konfigurationen f r Kosten berichte Systemspezifikationen und externe Programme definieren diesen Punkt damit sind alle internen Werkzeuge automatisiert ausf hrbar Die Funktionsweise beruht darauf dass beim Erstellen einer Konfiguration zus tzlich eine Builderkonfiguration erstellt wird Der zum Konfigurationstyp funktional identische Builderkonfigurationstyp ist ebenfalls zu registrieren Folgende Erweiterungspunkte werden f r Erweiterungen ben tigt org eclipse debug core launchConfigurationTypes Kreiert einen Konfigurationstypen mit einem Namen und einem oder mehreren m glichen Modi Eine angegebene Kategorie unterst tzt die Zuordnung zur Kategorie und damit zum Dialog Eine Implementierung der Schnittstelle ILaunchConfigurationDelegate muss die Logik zur Ausf hrung von Konfigurationen dieses Typs beinhalten 3 2 Schnittstellen der Plugins 21 Es wird ein Startkonfigurationstyp zur Ausf hrung von Cosimulationssitzungen regis triert Werkzeugkonfigurationstypen zur Ausf hrung von externen Programmen und zur Erstellung von Systemspezifikationspaketen und Kostenberichten werden ebenfalls regis triert org eclipse debug core launchModes An dieser Stelle werden Ausf hrungsmodi definiert denen anschlie end Konfigurationskategorien und Typen zugeordnet werden Der Mo dus entscheidet ber
104. orie de fzi esm ide run f r Startkonfigurationen er stellt Der untergeordnete Konfigurationstyp f r das Ausf hren einer Cosimulation wird im Plugin de fzi esm ide tools dazugef gt 20 3 Realisierung de fzi esm ide run stringVariablePresentations Der Erweiterungspunkt wird von diesem Plu gin zur Verf gung gestellt Erstellt werden Dialoge f r die Variablen resource_path resource_loc resource_name und system_property 3 2 2 Das Plugin de fzi esm ide tools Die Komponente nutzt die Erweiterungspunkte von de fzi esm ide run um eine neue Konf gurationskategorie dem System hinzuzuf gen Werkzeugkonfigurationen stellen Konfiguratio nen dar die auf eine Auswahl von Ressourcen innerhalb des Projekts angewandt die selek tierten Ressourcen einlesen und entsprechend Ausgaben erzeugen z B neue Ressourcen Der Werkzeugkategorie wird ein Konfigurationstyp f r Systemspezifikationspakete ein Typ f r die Kostenberichte und ein Typ f r beliebige externe Programme hinzugef gt Ein Teilpaket de fzi esm ide tools internal startup k mmert sich um die Einrichtung von Konfigurationen der Standardwerkzeuge Das Plugin orientiert sich an der Funktionsweise des JDT Plugins org eclip se ui externaltools insbesondere hinsichtlich des Konfigurationstyps zur Ausf hrung externer Programme Folgender Erweiterungspunkt wird bereitgestellt configurationDuplicationMaps Zur internen Erweiterung f r durch das Plugin selbst defi nierte T
105. programs implementation and integration of tools operating on artifacts e g creating reports from simulation data and comfortable viewing and editing of C XML and VHDL code Easy accessibility to tools for measuring and flexible evaluation of simulation data as well as exten sibility is important above all as it corrects short comings of similar environments and assures future use in a scientific context Keywords Meta Integrated Development Environment Meta IDE Eclipse framework Rich Client Plattform RCP Hardware software cosimulation Embedded systems development process FPGA synthesis 1 Einleitung Noch bevor eine genaue Analyse gemacht werden kann m ssen die Zusammenh nge betrachtet werden die zur Aufgabenstellung dieser Studienarbeit gef hrt haben Nach Formulierung der Aufgabenstellung folgt eine bersicht ber die Struktur der Arbeit 1 1 Umfeld Die Abteilung Embedded Systems and Sensors Engineering ESS des Forschungszentrums In formatik FZI Karlsruhe arbeitet zusammen mit dem Unternehmen FARO an der Konzeption von Algorithmen f r 3D Long Range Laserscanner und der Synthese dieser Algorithmen im Hardware Software Codesign auf FPGA Bausteinen 3D Laserscanner sind Systeme die mit tels Laserstrahl das zeilen oder rasterartige berstreichen von umgebenden Oberfl chen und K rpern erm glichen um diese zu vermessen Aus den gewonnen Daten kann ein dreidimen sionales Abbild 3D Modell der Umgebung e
106. punktes wurden be reits im Abschnitt 3 2 1 besprochen Die Klasse ToolsPreferencePage erweitert den Einstellungsdialog der Workbench um eine Einstellungsseite f r Werkzeuge org eclipse ui preferencePages Funktion und Parameter des Erweiterungspunktes wurden bereits im Abschnitt 3 2 1 besprochen 22 3 Realisierung Die Klasse BuilderPropertyPage erweitert den Eigenschaftsdialog von Projekten um eine Einstellungsseite f r Builderkonfigurationen org eclipse ui actionSets Funktion und Parameter des Erweiterungspunktes wurden bereits im Abschnitt 3 2 1 besprochen Erweiterungen f gen der Men leiste im Men Run ein Untermen Jools mit den Punkten Run Tool As Tools und Organize Favorites und der Toolbarleiste ein Toolicon mit identischem Untermen hinzu org eclipse ui editors F gt der Workbench einen neuen Editor hinzu Eine ausf hrliche Er kl rung liefern Kapitel 19 des Buches DFK 05 und Kapitel 24 des Buches GB05 Ein Editor wird f r PDF Dateien angemeldet Das ffnen der Datei geschieht im Stan dard Webbrowser des Betriebssystems in dem in den Meisten F llen der Acrobat Reader als ActiveX Plugin eingebettet ist org eclipse ui startup Programmlogik die zum Start der Workbench ausgef hrt werden soll wird an dieser Stelle der Plattform in Form einer von IStartup abgeleiteten Klasse berge ben Die Ausf hrung des Codes kann ber den Einstellungsdialog unter General Startup amp Shutdown deaktivie
107. r gezwungenerma en abgebrochen weil er den Dialog auf Grund von nicht angegebe nen oder nicht existierenden ausf hrbaren Dateien nicht best tigen kann Der Dialog wird geschlossen Ausl sendes Ereignis Klick auf einen Button unter Window Preferences im Abschnitt Run Tools Voreinstellung Alle Werkzeuge sollen konfiguriert werden Beschreibung Der manuelle Aufruf des Startup Wizards von F0010 erlaubt dem Nut zer das nachtr gliche ndern und Umkonfigurieren seiner Werkzeugkonfiguratio nen A A Produktfunktionen 49 F0030 Erstellung eines Projektes von einer Vorlage Ziel Der Prozess zielt auf die Einrichtung eines Projektes von einer vorgegebenen Aus wahl von Schablonen ab Aus einem Dialog l sst sich eine Schablone w hlen und einem weiteren Schritt von ihr ben tigte Parameter einstellen Vorbedingung Der Workspace besitzt noch kein gleichnamiges Projekt der Name des Projektes ist nach Eclipseregeln g ltig Alle Parameter wurden korrekt eingegeben Nachbedingung Erfolg Im Workspace wird ein Projekt samt einer Konfiguration zum Start der Kosimulation eingerichtet Nachbedingung Fehlschlag Bei nicht akzeptiertem bzw bereits vorhandenem Projekt namen l sst sich der Dialog nicht abschlie en Falsch eingegebene Parameter werden vom Dialog nicht akzeptiert oder f hren zu einem fehlerhaft erstellten Projekt und zu fehlerhaft erstellten Konfigurationen Ausl sendes Ereignis Der Nutzer w hlt File Ne
108. r gung eines Java Projektes Abbildung 3 1 verdeutlicht die Zusammenh n ge 3 2 Schnittstellen der Plugins Bereits bei der Ermittlung der Geschaftsprozesse konnte eine Einteilung nach den Zustandigkei ten erfolgen Abbildung A 2 Weiterhin ist es schon hier sinnvoll sich Gedanken zu machen welche Funktionalitat bereits in vorhandenen Plugins zur Verfiigung gestellt wird getreu der von Erich Gamma und Kent Beck empfohlenen Nachahmungsregel bei der Entwicklung da mit zu beginnen die Struktur eines ahnlichen Plugins zu kopieren Monkey See Monkey Do Rule GB05 p 57 Die Einteilung sieht die in den nachfolgenden Unterkapiteln dargestellten 14 3 Realisierung 5 Workspace Resources IN I Rich Client Platform optional Platform Runtime powered by OSGi Bild 3 1 bersicht ber die Eclipse Architektur in Anlehnung an DFK 05 CD ROM Compa nion Komponenten vor eine bersicht ber die Schnittstellen neu entworfener Komponenten ist im Komponentendiagramm in Abbildung 3 3 dargestellt Einen gr beren berblick ber das Sys tem vermittelt Abbildung 3 2 das Diagramm zeigt auf welche der vom System implementierten Plugins welche Plugins der Eclipse Plattform ben tigen 3 2 1 Das Plugin de fzi esm ide run Die Komponente stellt Funktionalit t zur Verwaltung von Konfigurationen unterschiedlicher Typen bereit welche wiederum in unterschiedliche Kategorien eingeteilt werden k
109. rkannten g ltigen Kostenberichte anzupassen Abbildung A 26 Dies ist n tig da bei selektierten Verzeichnissen alle rekursiv enthaltenen Resourcen ber pr ft werden Nach der Generierung ffnen sich die generierten Berichte automatisch in der Editorsicht Abbildung A 27 Zu F0110 Konfigurierung des Generators f r Systemspezifikationen Die Registerkarte Main enth lt Editierfelder f r die einzulesende XML Datei und den Ausgabeordner Beide enthalten einen Button der einen Auswahldialog von Workspace Ressourcen erlaubt sowie einen Button um bekannte Variablen einzuf gen Checkbox Elemente erm glichen die Wahl ob f r VHDL ANSI C oder beides generiert werden soll Bei ausgew hltem Element besteht vorab die M glichkeit f r die jeweilige Ausgabe zu verwendende Profile kommasepariert anzugeben Abbildung A 28 A 7 Benutzungsoberfl che 69 P Tools Create manage and run configurations Generate PDF and HTML reports from measured data stored to an XML file at simulation time Name Generate cost report from these cost logs type filter text ERR eet GQ Cost Report Generator Kik XML file with measured data to serve as input relative to werkspace root emm S resource path Output container where the generated report will be placed relative to workspace root G Open selected VisualStudio project Qa Run Altera NIDS IDE here Q Run Altera Quartus T here Q Run ELAView on this fi
110. rstellt und das um weitere Werkzeuge erg nzt werden kann um potentielle L cken in der Werkzeugunterst tzung schlie en zu k nnen Eine ber sicht ber den am FZI erarbeiteten Entwicklungsprozess der eine werkzeuggestiitzte Abde ckung aller Entwurfsphasen vorsieht zeigt Abbildung 1 3 Spezifikation Modellierung Simulation Synthese Evaluierung Betrieb Wartung High Level Low Level Verifikation Bewertung ESDE Cosimulation ModelSim SE SystemC ESDE CoSim Libs e HAL SW HW SystemC CoSim L Gesamtsystem E SDE SW e SW HW MATLAB ESDE SW sep Treiber NIOS IDE oe Anwendung E e Funktionen 6 TREE Compiling KE Bild 1 3 Von ESDE vorgeschlagener Entwicklungsprozess Aufgabe dieser Studienarbeit ist der Entwurf eines adaptierbares Metawerkzeuges das de kom fortable Verwaltung von Projekten und Werkzeugen in einer fensterbasierten Oberfl che er m glicht und jederzeit neue Funktionen und Werkzeuge in die Oberfl che integrieren kann Ein neues Werkzeug das aus der Kosimulation gewonnene Daten automatisiert auswertet und in einem graphischen Bericht visualisiert soll implementiert und zusammen mit bereits entwi ckelten Werkzeugen in die Oberfl che integriert werden 1 3 Gliederung In Kapitel 2 werden die Anforderungen an das Meta Tool er rtert Die Unzul nglichkeiten exis tierender L sungsans tze werden beschrieben und es wird entschieden auf we
111. rt werden Zum Start der Workbench wird berpr ft ob alle zur berwachung eingestellten Kon figurationstypen innerhalb des Workspace existieren Falls dem nicht so ist wird ein Wi zarddialog aufgerufen der den Anwender beim Einrichten der Konfigurationstypen hilft oder die berwachung abschalten l sst org eclipse ui commands Funktion und Parameter des Erweiterungspunktes wurden bereits im Abschnitt 3 2 1 besprochen Es werden die Befehle Run Last Launched Tool und Tools definiert org eclipse ui popupMenus Funktion und Parameter des Erweiterungspunktes wurden be reits im Abschnitt 3 2 1 besprochen Ein Untermen Apply Tool wird innerhalb des Kontextmen s eingerichtet das der An wendung von Werkzeugkonfigurationen auf eine Auswahl von Objekten dienen soll Die Klasse ToolContextualLaunchAction f llt das Untermen mit den Konfigurationen de fzi esm ide run launchGroups Funktion und Parameter des Erweiterungspunktes wurden bereits im Abschnitt 3 2 1 besprochen Es wird eine Konfigurationskategorie de fzi esm ide tools f r Werkzeugkonfigura tionen erstellt Eine weitere Kategorie de fzi esm ide tools builders soll f r jede 3 2 Schnittstellen der Plugins 23 Werkzeugkonfiguration eine identische Builderkonfiguration erhalten mit deren Hilfe Werkzeuge an den Buildprozess eines Projektes angeh ngt werden k nnen Die Liste der Builder eines Projektes kann unter dem Eigenschaftsdialog des Projektes Rechtsk
112. rung eines externen Werkzeugs k nnen gemacht werden Vorbedingung Das zu verwendende externe Tool ist lokal installiert Nachbedingung Erfolg Eine ausf hrbare Konfigurationseinheit ist eingerichtet die das externe Tool ausf hren kann Nachbedingung Fehlschlag Bei unvertr glichen Parametern kann der Dialog nicht be st tigt werden oder f hrt zu einem Fehler bei der Ausf hrung Ausl sendes Ereignis Der Dialog wurde z B ber Run Tools Tools ge ffnet Program wurde ausgew hlt Anschlie end wurde mit New Launch Configuration eine neue Konfiguration erstellt oder eine existierende Konfiguration ausgew hlt Nach dem ndern der Einstellungen wurde das Speichern durch einen Druck auf Apply ausgel st Voreinstellung Beim Einrichten des Workspace ber den Start Up Wizard existieren vor eingestellte Konfigurationen bereits Beschreibung Es muss der Name des auszuf hrenden Programms angegeben werden Ausf hrungsverzeichnis und Argumente k nnen zus tzlich spezifiert werden Die Angabe von kontextabh ngigen Variablen verh lt sich genau so wie in F0050 be schrieben Optional ist beim Beenden einer Simulation das Auffrischen der Workspace Ressourcen m glich um nderungen sichtbar machen zu k nnen Umgebungsvaria blen k nnen angegeben werden und die Anzeige der Befehlskonsole kann aktiviert werden F0080 Start eines externen Programms 54 A Pflichtenheft Ziel Die Anwendung eines Werkzeugs auf e
113. rzeugt werden das virtuell begangen werden kann Durch hohe Pr zision und weitreichende Optik sind unterschiedliche Anwendungen m glich Nicht nur das Erfassen von Fabrikhallen ist denkbar auch das Konservieren von Tatorten von Verbrechen f r eine genaue sp tere Analyse des Tathergangs ist ein m glicher Anwendungsbe reich Abbildung 1 1 zeigt ein Punktmodell einer vermessenen Karosserie aus ber 40 Millionen Punkten Am FZ wird ein werkzeuggest tzter Entwurfsprozess erarbeitet der Konzeption und Synthese von Algorithmen besonders optimal hinsichtlich Kosten Entwicklungsaufwand und Ergebnis erm glicht 1 2 Motivation Beim klassischen Entwurf eines Systems wird zun chst die unterste Ebene die Hardware entwi ckelt Anschlie end werden Schritt f r Schritt die abstrakteren Softwareschichten darauf aufge baut Bottom Up Entwurf Diese sequentielle Vorgehensweise ist beim Entwurf eingebetteter 2 1 Einleitung Bild 1 1 Ausgerichtete und miteinander verschmolzene Punktwolken des Ferrari 550 Maranello Quelle http www geomagic com Systeme selten machbar da sowohl Hardware als auch Software speziell an die Anforderungen der Zielumgebung anzupassen sind um m glichst schnell ein m glichst effizientes und kosten g nstiges System zu erhalten Die Entscheidung welcher Teil der geforderten Funktionalit t in Hardware und welcher in Software zu realisieren ist kann mitunter erst zur Implementierungs zeit entschie
114. s from system specification package aml file Name Generate package files from selected system specifications type filter text ERE Connon BQ Cost Report Generator A Generate cost report from thesecost H sysem specification file s to serve as input relative to workspace rot EQ Program Qh Open selected VisualStudio project OG Run Altera NIOS DE here Q Run Altera Quartus I here Output contziner where the generated source code will be placed relative to workspace root geed Qa Run ELAView on this file Qa Run ModelSim in this directory Qa Run this batch file here EH S project_name TargetSources SystemSpecification Browse Workspace _ Variables Choose which type of code to generate with which profiles comma separated empty opens selection dialog Generate VHDL code using these profiles Generate ANSI C code using these profiles E E TargetSources eS D W CLARITH_FDG216 3 amp Nios Software Open I8 Nios h Open With 12 NoiseCtrl_Fxch Bam mm R SampleCtri h D SC w L Nios c o L NoiseCtrl_Fx c X Delete L SampleCtrl c dE ename S SystemSpecification E B SystemSpecification 9 5 Import D Timer A Export S S Tools E Nios_Terminal GUI Refresh E SysSpecPkgGenerator Add Bookmark EE Bun gt ia fi Team gt Q 3 Generate cost report from these cost logs Compare With gt Qg 4 Run ELAView on this f
115. sdialog ber das Kontextmen in der Naviga tionssicht Navigator oder ber die Men leiste Run Run ge ffnet werden und hier die entsprechende Kosimulation ausgew hlt und der Button Run gedr ckt werden Ist die Konfiguration als Favorit gekennzeichnet siehe Registerkarte Common zu F0050 ist eine schnellere Anwahl ber das Kontextmen Run m glich oder ber das Pulldow nmen des Werkzeugicons in der Werkzeugleiste Ein Aufruf der zuletzt aufgerufenen Konfigurationen ist auch m glich Abbildung A 19 ein Druck auf das Tool Icon in der Werkzeugleiste startet die zuletzt ausgef hrte Konfiguration Zu F0070 Konfigurierung eines externen Programms Dieser Konfigurationstyp befindet sich innerhalb des Dialogs f r Werkzeugkonfiguratio nen Er besitzt die vier Registerkarten Main Environment Refresh und Common Die Registerkarte Main dient dazu das auszuf hrende Programm anzugeben und ist identisch zur Registerkarte Hardware zu F0050 gestaltet alle anderen Registerkarten sind sogar namentlich identisch mit den entsprechenden Registerkarten zu F0050 Abbildungen A 20 A 23 Zu F0080 Start eines externen Programms Konfigurationen externer Programme geh ren zur Gruppe der Werkzeugkonfiguratio nen Wie auch bei Startkonfigurationen lassen sie sich auf unterschiedliche Arten anwen den Erw hnt sei der Start ber die Men leiste Run Tools oder das Toolbar Icon A 7 Benutzungsoberfl che 65 8 C C Sys
116. sphase schlie lich werden alle Verzeichnisse und Ressourcen der Vorlage beim Kopieren in das leer erstellte Projekt mit einem Parser nach Variablen und Ausdr cken durchforstet Gefundene Variablen werden durch den entsprechend gew hlten Wert ersetzt Ausdr cke werden ausgewertet sie k nnen beispielsweise das Einf gen eines Textabschnittes von einer boolschen Variablen abh ngig machen Die Schritte beim Erstellen einer eigenen Projektvorlage lassen sich am Besten an Hand der be reits implementierten Vorlage Minimal Cosimulation Project erkl ren sie stellen einen pro grammatischen Einblick in die Feinarchitektur des betroffenen Systemabschnitts dar 1 Alle Ressourcen des vorhandenen Projekts das als Vorlage dienen soll muss zuerst in den Unterordner templates lt Projektname gt des Plugins de fzi esm ide wizard kopiert werden Der Unterordner des Beispielprojekts wurde minimalCosimulation Project genannt 2 Anschlie end werden Stellen innerhalb der Ressourcen die sp ter dynamisch mit Wer ten belegt werden sollen mit Hilfe der Templatepr prozessorsprache gekennzeichnet Im Beispiel musste innerhalb der Datei Simulation Visual_AvalonMasterModel VISU AL_AVALONMASTERMODEL dsp ein absoluter Pfad zur Anwendung ModelSim durch die Va riable modelSimPath ersetzt werden Eine Liste aller verf gbaren Pr prozessorbefehle zeigt Tabelle 3 1 3 Am Erweiterungspunkt de fzi esm ide wizard projectContent muss die Projekt
117. sreichen sollte kann der ausreichend dokumentierte Quellcode der Eclipseplattform zu Rate gezogen werden F r Visual Stu dio existiert wenig gedruckte Literatur neben dem Hilfesystem der SDK m sste auf das Wissen erfahrener Visual Studio Erweiterer auf dem eigens hergerichteten Webportal zu r ckgegriffen werden 4 Die Eclipseplattform ist f r viele Betriebssysteme verf gbar Dieser Punkt ist weniger ausschlaggebend da viele Tools die in die ESDE Entwicklungsumgebung zu integrieren sind ebenfalls nur f r Microsofts Betriebssystem zur Verf gung stehen 2 3 Wahl der Zielplattform 11 Feature Erweiterbarkeit Realisierung Schnittstelle Verf gbarkeit IDE Plattform Erweiterungen Literatur Off The Shelf Tabelle 2 1 Vergleich zweier m glicher Zielplattformen Plattform Visual Studio ab Version 7 umfangreich erweiterbar Addins COM Komponenten in C oder einer Net Sprache Makros Befehlsfolgen in VB Net Templates Projektvorlagen statisch ber fest vorgegebenes Framework erweiterbar closed source kommerziell Microsoft Windows meist kommerziell lediglich ein Buch JSY03 offizielle Webseite Mic07b und Webportal Mic07a C Editor kein VHDL Editor eigene Projektvorlagen Eclipse ab Version 2 1 vollst ndig erweiter nderbar Plugins OSGi Komponenten keine Makros Vorlagen f r Plugins in der JDT m glich dynamisch Rich Client Platform Everyt
118. st ndigen Editor f r C C Quellda teien Ein Teil der Funktionalit t wird vom gleichnamigen Plugin bernommen Dieses Plugin teilt sich auf in das Plugin org eclipse cdt f r die Kernfunktionalit ts Ebene sowie das Plugin org eclipse cdt ui f r die User Interface Ebene 3 2 5 Das Plugin net sourceforge veditor Die Komponente erweitert die Plattform um einen vollst ndigen Editor f r VHDL Code Sie kann weitestgehend die gleichnamige frei verf gbare Komponente T 07 bernehmen Anpas sungen bez glich der graphischen Erscheinungsform Icons Labels etc m ssen noch erfol gen 3 2 6 Das Plugin com svcdelivery xmlauthor Die Komponente erweitert die Plattform um einen vollst ndigen Editor f r XML Dateien Auch diese Komponente kann weitestgehend von der gleichnamigen frei verf gbaren Kom ponente SVC07 bernommen werden Bez glich der graphischen Erscheinungsform sind hier ebenfalls Anpassungen n tig 3 2 Schnittstellen der Plugins 25 component Overview lt lt component gt gt l ipse core expressions lt lt component gt gt slipse debug core lt lt component gt gt a lipse core variables lt lt componen gt gt n aoe de fzi esm ide wizard lt lt component gt gt de fzi esm ide tools lt lt component gt gt D r lipse core resources lt lt component g
119. swahl eine Konfiguration des entsprechenden Typs generieren Ob der Men punkt erscheint oder nicht kann von der Auswahl und der unterst tzten Kategorie abh ngig gemacht werden Ein Bezeichner und ein Icon d rfen spezifiziert werden ebenso in welchem Unterverzeichnis des Auswahlmen s der Eintrag erscheint Von der Schnittstelle ILaunchShortcut erbend wird die auswahlabh ngige Ge nerierung einer Konfiguration ausprogrammiert 16 3 Realisierung stringVariablePresentation Es wird die M glichkeit geschaffen im Dialog zur Auswahl ei ner Stringersetzungsvariable einen untergeordneten Dialog zu ffnen der die Auswahl aus einer Menge g ltiger Elemente und damit die Parametrisierung der entsprechenden Variablen vornimmt Die Dialogklasse muss von IArgumentSelector erben consoleColorProviders Wie Textausgaben der Konsole bestimmter Prozesstypen eingef rbt werden legen Implementierungen der Schnittstelle IConsoleColorProvider fest zusam men mit der Angabe des Prozesstypus consoleLineTrackers Plugins welche die Ausgabe bestimmter Prozesstypen abh ren m ch ten k nnen dies ber die Schnittstelle IConsoleLineTracker tun Folgende Erweiterungspunkte werden f r Erweiterungen ben tigt org eclipse debug core launchConfigurationComparators Der Erweiterungspunkt zielt dar auf ab dass Ausf hrungskonfigurationen untereinander auf Gleichheit getestet werden k nnen Erreicht wird dies indem f r jede Konfigurationsvariable ein
120. system h W SystemSpecification inolude lt unistd h gt amp Timer inolude lt math h gt 5 6 Tools endif Co Nios_Terminal_GUI E SysSpecPkgGenerator HHHERHRHHRHHHHHEEREHEEREEEEEHE EEE E Problems 2 Console i PY TO 0 errors 0 warnings 0 infos Description e Resource Path lt HDL EmbeddedSystem vhd Embedded Systems Development Environment File Edit Navigate Search Project Run Window Help M BB O Q ifr Brus m ERT C C Bj Resource EI Team Synch 5 Navigator 23 _ Project Explorer SE Outline 2 Hierarchy i ale ibrary ieee E EmbeddedSystem ieee std_logic_signed all AvalonMasterModel AvalonMas ieee std_logic_1164 all Timer Timer 0 ieee std_logic_arith all ieee std_logic_misc all ieee numeric_std all ieee math_real all std textio all ieee std_logic_textio all ES TestProjectl Documentation S ModelSources B AvalonMasterModel CostModelling M Testbench vhd Le Simulation work SystemSpecification_pkg all mm LG ModelSim_EmbeddedSystem amp SimulationLogFiles Visual_AvalonMasterModel ENTITY EmbeddedSystem IS Synthesis port B S SystemSpecification H EEE clk IN STD_LOGIC B SystemSpecification xml reset_n IN STD_LOGIC TargetSources de amp CLARITH Eine END EmbeddedSystem Nios_Software H S SystemSpecification Timer GC Tools S S Nios Terminal_GUI SysSpecPkgGenerator component
121. t gt ponent gt gt E lt lt component gt gt S E E xmlauthoy e ui workbench texteditor _ lt lt component gt gt eclipse jface ui _ lt lt component gt gt eclipse help lt lt component gt gt org eclipse cdt core lt lt component gt gt eclipse text _ lt lt component gt gt lt lt component gt gt lipse core filebuffers eclipse jface text lt lt component gt gt rg eclipse ui ide A _ lt lt component gt gt lt lt component gt gt rg eclipse search _ lt lt component gt gt SCH com ibm icu r eclipse ui forms Bild 3 2 Abh ngigkeiten der Plugins des Systems untereinander und Abh ngigkeiten von Fremd Plugins 3 Realisierung component de fzi esm ide launchConfigurationTypes launchConfigurationTabGroups launchConfigufationTypelmages Groups Shortcuts g alablePresentations A ColorProviders spfsteuietracters mponent gt gt core runtime mponent gt gt ei core variables configurationDuplicationMaps lt lt component gt gt ei de fzi esm ide tools projectContent lt lt component gt gt Si de fzi esm ide wizard newWizards Bild 3 3 Bereitgestellte und angeforder
122. t name CLEAR TIMER bi mul SysSpecPkgGenerator lt bit name CLEAR_IRQ bit 3 den const name ci_div lt register gt lt e const name ci_erf lt register name STATUS addr 1 gt lt e template name TIME Klees dei module name TIMER lt register name TIMER addr 2 gt ai name TIMER_O lt register gt a base_addr TIMER lt register name TIMER STOP addr 3 gt lt register gt d template TIMER lt template gt ei bound target lt Module Instances E on a lt module name TIMER_0 base_addr TIMER_0_BASE end_addr 8 46 module name TIMER lt const name IRQNUM value TIMER_0_IRQ comment Bit Nummer gt _ G na TERN lt module gt 5 ai base_addr 0 lt module name TIMER_0 base_addr 0 end_addr 7 templa template TIMER lt const name IRQNUM value 1 comment Bit Nummer gt od bound cosimulati lt module gt 7 den const name IRQNI e erse H lt system_specification_package gt H m EL Problems 2 Console Properties Bild A 13 XML Perspektive P Run P Run Tool location does not exist Tool location does not exist Create manage and run configurations Create manage and run configurations DSsglez type filter text OG Cosimul ER ap r Name Cosimulation of TestProjecth Name Cosimulation of TestProjecti postes E Software 7 Refresh BS Enviro
123. te Schnittstellen der wichtigsten Plugins 3 3 Ausgew hlte Teile des Programmkonzeptes 27 3 3 Ausgew hlte Teile des Programmkonzeptes Eine Untersuchung der gesamten Feinarchitektur des Systems w re zu umfangreich Darum konzentriert sich dieser Abschnitt auf drei Teile des Architekturkonzeptes Zuerst wird der Teil des Systems der f r die Integration von Werkzeugen zust ndig ist n her betrachtet im zweiten Unterabschnitt wird erkl rt wie Projektvorlagen aufgebaut sind und an das System angeschlossen sind Der dritte und letzte Unterabschnitt befasst sich mit dem Konfigurationssetup Diese Bereiche der Architektur sind insbesondere im Hinblick auf die Erweiterung des Systems wichtig 3 3 1 Werkzeug zur Generierung von Kostenberichten In Abschnitt 3 2 2 wurde ber die Schnittstelle des Plugins de fzi esm ide tools berichtet In diesem Plugin sind alle Werkzeuge gesammelt die das System realisiert Eines dieser Werk zeuge ist f r die Auswertung von Simulationsdaten zust ndig seine implementierenden Klassen liegen innerhalb des Pakets de fzi esm ide tools internal cost launchConfigurati ons Die Simulationsdaten liegen im XML Format kodiert vor wobei jedes VHDL Modul eine eigene XML Datei anlegt A CA Users Andi Eclipse test workspace TestProjectl Simulation SimulationLogfiles CostLogs costLogMerged 11716831554 7 0 A C Users Andi Eclipse test workspace TestProjectl Simulation SimulationLogFiles CostLogs costL
124. tellungsdialog f r Konfigurationen befindet sich kein neuer Toolkonfigurationstyp Ausl sendes Ereignis F r ein Projekt wird ein neuer Werkzeugtypus ben tigt Voreinstellung Es existieren bereits drei Arten von Werkzeugkonfigurationen Cost Re port Generator System Specification Package Generator Program Beschreibung Eigene Implementierungen von Werkzeugen k nnen als externes ausf hr bares Programm in das System eingebunden werden Eine weitere M glichkeit be steht darin den Quellcode direkt als Pluginerweiterung einzubinden um von den M glichkeiten der IDE profitieren zu k nnen Der Vorteil besteht in der direkteren Einbettung in die Eclipseumgebung und das Standard Widget Toolkit SWT und der direkten Verf gbarkeit des Werkzeugs ohne umst ndliche Anbindung als exter nes Programm NF1020 Neue Projektvorlage erstellen Ziel Eine neue Projektvorlage ist einzubinden Vorbedingung Das als Vorlage einzubindende Projekt existiert bereits Nachbedingung Erfolg ber File New Project l sst sich bei Auswahl von Em bedded System Project from Template auf der zweiten Einstellungsseite die Vorlage ausw hlen und auf der nachfolgenden Seite parametrisieren Nachbedingung Fehlschlag Die Projektschablone ist im Dialog nicht vorhanden Ausl sendes Ereignis Es existiert ein Projekt das als Vorlage verwendbar sein soll Voreinstellung Eine minimale Projektschablone Minimal Cosimulation Project ist bereits integriert
125. temSpecification xml Embedded Systems Development Environment File Edit Navigate Search Project Run Window Help ed KA KE MSC ESA E ma moer Fi C C Proje 33 Navigator Project Explo D i SystemSpecificationxmi 25 m alag lt const name CI_ARITH_FIX3216 n A B value n ci_div Us 3 8 TestProjectl lt const name CI_ARITH_FIX3216 n A B value n ci div H Q Archives lt const name ci_mul value 0 comment Custom Instruction Multiplic 7 den header bound vhdl lt const name ci_div value 1 comment Custom Instruction Division S bound vhdi lt const name ci_erf value 2 comment Custom Instruction Error fun ve footer bound vhdl amp Documentation H B ModelSources B S Simulation 4 header bound ansic Synthesis lt e gt header bound ansic t B E SystemSpecification lt e header bound ansic E ExecuteGenerator bat lt BUS Modules P ek GES a Li SystemSpecification xml de const name COSIMUL B TargetSources lt Module Template Cep const name sys_clk fr amp CLARITH_FDG216 lt template name TIMER gt i namessys_cik freq amp Nios Software lt const name CLK_FREQ value sys_clk freq gt H S SystemSpecification lt register name COMMAND addr 0 gt ci comment System Timer lt bit name ENABLE TIMER bit 0 gt e const name CL S S Tools lt bit name ENABLE IRQ bit 1 lt e gt const name CLARITI H 6 Nios_Terminal_GUI lt bi
126. triebsbedingungen Die Software soll sich in den Betriebsbedingungen von anderen grafischen Entwicklungsumge bungen nicht unterscheiden physikalische Umgebung des Systems gew hnlicher B roarbeitsplatzrechner t gliche Betriebszeit t glich 24 Stunden Wartung m glichst keine Beobachtung unbeaufsichtigter Betrieb A 3 Produkt bersicht Im System sind unterschiedliche Aktoren involviert Abbildung A 1 Zum Einen ist dies der regul re Anwender der Oberfl che er verwendet die vorhandene Funktionalit t zur Entwick lung eigener Systeme Eine dedizierte Person entweder der Anwender selbst oder eine f r die Aufgabe speziell ausgew hlte Person kann das System um eigene Funktionen erweitern Bei einigen Erweiterungen ist der Eingriff in den Quellcode notwendig Ein vollst ndiges Neuer stellen Rebuild des Systems ist jedoch nicht erforderlich da Erweiterungen als eigenst ndige Eclipse Plugins erstellt werden k nnen und durch einfaches Kopieren in den Eclipse Plugin Ordner eingepflegt werden A 4 Produktfunktionen Alle verf gbaren Funktionen betreffen den Anwender aus seiner Sicht werden folgende Funk tionen bereitgestellt die bersicht dieser Funktionen ist im entsprechenden Gesch ftsprozess diagramm A 2 dargestellt 46 A Pflichtenheft Benutzer Anwender Erweiterer Bild A 1 bersicht ber die Aktoren im System Sourcecode editieren org eclipse cdt net sourceforge veditor com svcdelivery x
127. ttribute name moduleDate type xs string gt lt optional for merging logs gt lt xs attribute name moduleTime type xs string gt lt optional for merging logs gt lt xs attribute name moduleConfiguration type xs string gt lt optional for merging logs gt lt xs complexType gt lt xs element gt 87 lt xs element name Dynamic_Hw_Costs gt lt xs complexType gt lt xs sequence gt lt xs element maxOccurs unbounded minOccurs 0 ref DynamicFactor gt lt xs sequence gt lt xs complexType gt lt xs element gt lt xs element name DynamicFactor gt lt xs complexType gt lt xs all gt lt xs element name Time type xs string gt lt xs element name CostName type xs string gt lt xs element minOccurs 0 name CostValue type xs string gt lt xs element minOccurs 0 name CostUnit type xs string gt lt xs element minOccurs 0 name CostTime type xs string gt i lt CostTime gt 10 ns lt CostTime gt parsed later to lt CostValue gt 10 lt CostValue gt lt CostUnit gt ns lt CostUnit gt Reason VHDL cost log doesnt support splitting 10 ns into 10 ns gt lt xs all gt lt xs attribute name moduleName type xs string gt lt optional for merging logs gt lt xs attribute name moduleDate type xs string gt lt optional for merging logs gt lt xs attribute name moduleTime type xs string gt lt optional for merging logs gt
128. uleyuogyndynogx mea pial juoneooi Dune LIGA LSYI4 buns zZ ayebajequoune7jjsog Buys owen aqjeb 0 Buns eweNalijyeweyosjeb 0 Ia ailye61e weansynduy ul Boqsogebiew Dune uyeqewayas weansyndug Bojsoga epl en at allg sat mdut Hoye quoyoejageyl4moys Seoul Date anloee ueajooq YoeINByuopysuNe Byuogypunel PIIEASI Burns ewenjeb Ado 6upyoquonesn6yuopyouneyy uogeindyuoo jddyunop d uonesnByuopyoune uoreinbyuoo Jopejsssjepdn uoneinByuogyouneq uoesnByuoo UONEOOTEJePdNF uoneinByuopyouney uogeinbyuoo Alopal qynd ngejepdnz uoesnByuopyouneq voneindyuoo WOIYSZ Adogbun Jomuone ndyuogysunel uojeinByuod s Neyeqjes buns ayeBajeaquounejsog buns gp ayeBajequounejsog Bung Z eyeBajaquoune sop Bums LI ayeBajequouneysop buns OL Sebejeqyouneysoy Quanquonsajas PEYWEIESIEBPIM Buus 0 Jaysajayaosnoseypunoibyoeg quangAy pow X LAypow Sums JWYN JANNA Sabessoniso CS S V Bung 0 enLuonssjogedAne r TUNFSPFUSSTzJSP Woy ueajoog uonenGyuogyune7 UOeINByuOD eounosay sa9 nosa SIgENNSUONEINBNUOOHSIH SJUA JMS 3Sd1P9 DIO UIO dno49ge LuopeinbyuoyypuneTpensqy i f 8 18Jdepyuon gt ajas ge uoge n yuoyypuneTpeagsqy lt lt adALeIep gt gt lt lt adAeyep gt gt WE Eeer lt lt adALeyep gt gt lt
129. un Default Cp1252 Other 1S0 8859 1 Standard Input and Output Allocate Console necessary for input O File Browse Workspace Browse File System Variables C Append Launch in background Apply Run Bild A 18 Registerkarte 5 einer Kosimulati onskonfiguration Bild A 17 Registerkarte 4 einer Kosimulati onskonfiguration File Edit Navigate Search Project tiv ted TestProjectl Archives amp Documentation ModelSources Simulation Synthesis 9 amp SystemSpecification S S CLARITH_FIG2I6 EG Nios Software 8 Nios h ma Bild A 19 Start einer Kosimulationskonfigu ration A 7 Benutzu ngsoberflache 67 P Tools Runan external program Create manage and run configurations type filter tot EQ Cost Report Generator CO Generate cost report from these cost 0 Program Qa Run Altera NIOS DE here Qa Run Altera Quartus I here CG Run ELAView on this file Qa Run ModelSim in this directory Qa Run this batch file here Qh System Specification Package Generator Qa Generate package files from selected Name Open selected VisualStudio project ENE 8 Refresh MB Environment EI Common Location In globai file EAFZNProgramme ELAView exe ai can aa Working Directory in global file system container loc a Ga ma Arguments Stresourc
130. ung ist daher nicht xsd sondern exsd Das Schema definiert wie die XML Syntax im Manifest auszusehen hat Die Eclipse Erweiterungen erlauben die Annotierung mit Erkl rungen aus denen automatisch eine Dokumentation generiert werden kann e Alle Erweiterungen extensions werden aufgez hlt Der die Erweiterung definierende Ab schnitt muss dem Schema entsprechen das der jeweilige Erweiterungspunkt festgelegt hat Manche Erweiterungspunkte verlangen dass eine Klasse angegeben werden muss die ei ne vereinbarte Schnittstelle implementiert manche Erweiterungspunkte wollen lediglich parametrisiert werden Die Eclipse Plattform an sich besteht aus einer Reihe von Pflichtkomponenten durch Zusatz komponenten kann Funktionalit t hinzugef gt werden Erst diese optionalen Komponenten machen aus der Plattform eine neutrale Arbeitsumgebung zur Verwaltung von Ressourcen in Projekten sowie mit unterschiedlichen Sichten auf die Ressourcen und Editoren f r die Res sourcen Mit der Absicht mit der Eclipse Plattform nicht nur gew hnliche Javaanwendungen sondern auch f r die Plattform selbst bestimmte sie erweiternde Plugins in Java schreiben zu k nnen wurden zwei weitere Projekte ins Leben gerufen Die Java Development Tools JDT erweitern die Eclipse Plattform zu einer Entwicklungsumgebung f r Java Projekte darauf aufbauend er m glicht die Plugin Development Environment PDE die Entwicklung von Eclipse Plugins als eine besondere Ausp
131. vorlage angemeldet werden Die Erweiterung implementiert daf r die Schnittstelle IPro jectContentWizard Die Erweiterung sollte ebenfalls Icon und Name festlegen um im Auswahldialog f r Projektvorlagen die Vorlage bestm glich identifizierbar zu machen Im Beispiel hei t diese die Erweiterungschnittstelle implementierende Klasse Minimal CosimulationNewWizard Ein gro er Teil der Funktionalit t von MinimalCosimulationNewWizard wird bereits von der abstrakten Klasse NewProjectTemplateWizard bernommen z B das Verwal ten von aus einem oder mehreren Wizardseiten bestehenden Abschnitten die durch die Schnittstelle ITemplateSection repr sentiert werden Es wird lediglich ein Abschnitt erstellt der sich von IDETemplateSection ableitet und aus einer einzigen Einstellungs seite besteht auf der alle Variablen hier modelSimPath und visualStudioPath vom Anwender mit Werten belegt werden k nnen Dies geschieht innerhalb der Methode createOptions 32 3 Realisierung Tabelle 3 1 Pr prozessorbefehle innerhalb von Dateien einer Projektvorlage Pr prozessorbefehle templatepreprocessor lt Zeilenumbruch gt Anweisung wird durch das Zeichen ersetzt templatepreprocessor lt Text ohne Dollar Zeichen gt lt Zeilenumbruch gt Anweisung wird ignoriert templatepreprocessor if lt Ausdruck gt lt Zeilenumbruch gt if Befehl Die nachfolgenden Zeilen bis zum zugeh rigen d h auf gleicher Verschachtelungstiefe befi
132. w Project und im erscheinenden Dialog Embedded Development Embedded System Project from Template aus Voreinstellung Beschreibung Der Prozess bernimmt das automatisierbare Einstellen von Projektkon figurationen Eine Schablone f r ein Minimalprojekt hilft Nutzern Zeit zu sparen Dem unerfahrenen Nutzer helfen erweiterte Schablonen beim Einstieg in die Ober fl che indem sie verf gbare Funktionen demonstrieren F r Erweiterer besteht die M glichkeit eigene Projektschablonen dem Prozess hinzuzuf gen F0040 Editieren von C VHDL oder XML Code Ziel Ziel des Prozesses ist das ndern von Projektdateien die Quellcode vom entspre chenden Typ beinhalten Vorbedingung Im Workspace befinden sich Projektdateien mit entsprechender Dateien dung c h vhd xm1 Nachbedingung Erfolg Die Datei wird in den Editor geladen Entsprechende Features der Eclipseplattform unterst tzen den Nutzer beim Edieren des Inhalts Darunter f llt die farbliche Hervorhebung der syntaktischen Elemente ein Fenster mit einer bersicht der syntaktischen Struktur sowie eine automatische Codevervollst ndi gung bei Schl sselw rtern und einfachen Strukturen z B vol induziert volatile lt p gt induziert lt p gt Anschlie end wird die Datei geschlossen und nderungen da bei gespeichert 50 A Pflichtenheft Nachbedingung Fehlschlag Die Datei l sst sich Aufgrund von Zugriffsproblemen von Seiten des Betriebssystems nicht f
133. w hlt Nach dem ndern der Einstellungen wurde das Speichern durch einen Druck auf Apply ausge l st Voreinstellung Beim Einrichten ber die minimale Standardprojektschablone existiert eine voreingestellte Konfiguration bereits Beschreibung Es m ssen der Name des Programms das die Hardwaredefinition simu liert und der Name des Programms das die auf dieser Hardware ablaufende Software in einem Debugger simuliert angegeben werden Ausf hrungsverzeichnis und Argu mente k nnen f r das jeweilige Programm zus tzlich spezifiert werden Dabei k n nen eine Reihe von dynamischen Variablen helfen Die Verwendung orientiert sich A A Produktfunktionen 51 weitestgehend an den von der Java Development Tools JDT eingef hrten Varia blen e workspace_loc Workspacepfad zu Ressource l st einen Eclipse inter nen Workspace relativen Pfad einer Ressource in einen absoluten Pfad auf der der entsprechenden Ressource im globalen Dateisystem entspricht So k nnte workspace_loc TestProject1 Simulation etwa auf C Eclipse My Workspace TestProject1 Simulation abgebildet werden Wird lediglich workspace_loc angegeben wird der ab solute Pfad zum Wurzelverzeichnis des Workspace zur ckgegeben e Die Variable resource_loc Workspacepfad zu Ressource steht f r den entsprechenden Workspace relativen Pfad zur angegebenen Datei bzw Verzeich nis Die Variable resource_loc allein repr sentiert diejenigen Pfade zu D
134. was un Se EE SEER Ea ei ES YG 61 AS Startup Wizard manuell starten A das w en ee ee 61 A 6 Seite 1 des New Project Wizard 6264 eS ee Ee TRO SOLES 61 Au See des New Project Wizard vun ba ee a ee a Owe Ar 62 AS Dee pies New nce A c see a e A a EE en 62 AD Seite 4 des New Project Wizard i ean KEE ALE be EE E ew 62 A 10 Fortschrittsanzeige des New Project Wizard 2 2 00 02 0000 ee 62 A 11 C C Perspektive d AGE AS RE Bw BORER RO RSE OO 63 VIII Abbildungen A12 VHDL Perspektiye gt aa ua fe ee ee E ER g 63 A13 XML Perspektive oeo 0 re an ran Ld eg ei 65 A 14 Registerkarte 1 einer Kosimulationskonfiguration 2 2 2 222200 65 A 15 Registerkarte 2 einer Kosimulationskonfiguration 2 2 222200 65 A 16 Registerkarte 3 einer Kosimulationskonfiguration 2 2 22 2220 66 A 17 Registerkarte 4 einer Kosimulationskonfiguration 2 2 222 200 66 A 18 Registerkarte 5 einer Kosimulationskonfiguration 2 2222 00 66 A 19 Start einer Kosimulationskonfiguration NNN EN ENEE EN es 66 A 20 Registerkarte 1 einer Programmkondiguration ss 6246600 2445 67 A 21 Registerkarte 2 einer Programmkonfiguration NENNEN 4854s 67 A 22 Registerkarte 3 einer Programmkonfiguration 2 2 220er 67 A 23 Registerkarte 4 einer Programmkonfiguration 2 222er 67 A 24 Einstellung einer Berichtskonfiguration A e EN are eu 69 A25 Schritt 1 beim Erstellen eines Berichts A 3 Su AL 00 0a Run EEN
135. zeitig per Registernavi gation editieren kann VHDL C und XML Code wird syntaxspezifisch eingef rbt sog Syntax Highlighting A 1 2 Wunschkriterien e Eigene Projektvorlagen k nnen nachtr glich hinzugef gt werden e Die Verwendung von Visual Studio oder Eclipse ist zu bevorzugen e Beim erstmaligen Start k nnen die Pfade zu externen Werkzeugen global angegeben wer den und sp ter auf Wunsch in den Einstellungen ge ndert werden e Berechnete Messwerte aus der Simulation werden mit Hilfe eines Business Intelligence Tools grafisch aufbereitet und als Graphen angezeigt A 1 3 Abgrenzungskriterien e Es ist kein vollst ndig neues Werkzeug zu implementieren Vielmehr sollen bereits vor handene erweiterbare Entwicklungsplattformen an die Anforderungen angepasst werden Dies garantiert die sp tere Erweiterbarkeit und schr nkt den Grad der Komplexit t ein die Menge zu wartenden Codes wird erheblich reduziert A 2 Produkteinsatz Die Software wird im Entwicklungsprozess zur Entwicklung von eingebetteten Systemen ein gesetzt A 2 1 Anwendungsbereiche Das System dient der Erstellung eingebetteter HW SW Systeme A 3 Produkt bersicht 45 A 2 2 Zielgruppen Das System zielt auf Entwickler eingebetteter HW SW Systeme ab die ihr Projekt bersicht lich verwalten wollen Hauptzielgruppe sind im Speziellen Entwickler die die vorgesehenen Werkzeuge verwenden ModelSim Quartus Nios Visual Studio 6 A 2 3 Be
Download Pdf Manuals
Related Search
Related Contents
Manual title - GE Healthcare Life Sciences AR200 Automatic Digital Refractometer User Guide WLA321 Access Point Hardware Guide Carte d`instruction Elexo Chaise de douche LISTE dE pRIx Sanyo ECD-T1540 CD Player BR-6258nL Quick Installation Guide Philips 190s8_190v8 RADIO RELOJ DESPERTADOR AM/FM CON BASE Fluke 9112A User's Manual Copyright © All rights reserved.
Failed to retrieve file