Authors: Bashford, Steven
Title: Constraintbasierte Codegenerierung für eingebettete Prozessoren
Language (ISO): de
Abstract: Eingebettete Systeme gewinnen zunehmenden Einfluss in vielen Bereichen unseres all-täglichen Lebens, wie z.B. in der Telekommunikation, Fahrzeugelektronik, Medizin-technik und in der Unterhaltungselektronik. Diese Systeme unterliegen strengen Rand-bedingungen, wie z.B. Realzeitanforderungen und Energieverbrauch. Beim Entwurf eingebetteter Systeme spielt die Realisierung möglichst vieler Systemkomponenten durch sogenannte eingebettete Prozessoren eine große Rolle. Diese können für eine Vielzahl von Systemen wiederverwendet werden, wodurch ein teurer und äußerst zeitaufwändiger Entwurfs-, Test- und Fertigungsprozess von dedizierter Hardware entfallen kann. Die Entwicklung von Software ermöglicht wesentlich schnellere De-signprozesse, und man gewinnt weiterhin ein hohes Maß an Flexibilität, da Designfehler noch in einer späten Entwurfsphase behoben werden können.Bei der Entwicklung von Software besteht natürlich der Wunsch, moderne Hochsprachen einzusetzen. Das Problem, das hier auftritt, ist ein Mangel an guten Compilern, besonders im Bereich der digitalen Signalprozessoren. Traditionelle Compilertechniken sind nicht geeignet, die spezifischen Eigenschaften dieser Prozessoren effektiv auszunutzen. Die erforderliche Qualität des generierten Codes genügt bei weitem nicht den gestellten Randbedingungen der Systeme. Um trotzdem den Einsatz von Prozessoren zu ermöglichen, wird in der Entwicklung von Software häufig auf die Assemblerprogrammierung zurückgegriffen, was zu großen Nachteilen führt: Entwicklungszeiten und Phasen zum Testen und zur Fehlerkorrektur verlängern sich i.d.R. wesentlich, und die Wiederverwendung von Software ist bei einem Prozessorwechsel kaum noch möglich.Ziel dieser Arbeit ist die Entwicklung neuer Compilertechniken für eingebettet Prozessoren, wobei der Schwerpunkt auf digitalen Signalprozessoren liegt, die hochgradig irreguläre Datenpfade mit eingeschränkter Parallelausführung auf Instruktionsebene besitzen. Ziel ist die Generierung einer sehr hohen Codequalität bzgl. der Ausführungsgeschwindigkeit und der Codegröße. Bei der Entwicklung neuer Techniken wird verstärkt auf die Integration von Teilphasen der Codegenerierung, im Sinne einer Phasenkopplung, hingezielt. Weiterhin spielt die Einbeziehung graphbasierter Techniken zur Instruktionsauswahl eine bedeutende Rolle. Um diesen Anforderungen gerecht zu werden, ist zur handhabbaren Umsetzung entsprechender Compiler-techniken der Einsatz neuer Programmierungs- und Optimierungsmethoden unbedingt notwendig. In dieser Arbeit werden Techniken auf der Basis der Constraint-Logikprogrammierung (CLP) entworfen und realisiert. Es wird gezeigt, in welchem Maße der Einsatz von CLP in diesem Problembereich geeignet ist. Ein weiteres Ziel ist der Entwurf von Konzepten, die eine schnelle Adaption von Compilern an neue Prozessoren erlauben.
Subject Headings: Code-Generierung
Compiler
Phasenkupplung
Code-Selektion
Register-Allokation
Schedulins
Constraint-Logikprogrammierung
CLP
Eingebettete Systeme
Entwurfsprozess
Digitale Signalprozessoren
Codegenerierung
URI: http://hdl.handle.net/2003/2768
http://dx.doi.org/10.17877/DE290R-14577
Issue Date: 2001-10-25
Provenance: Universität Dortmund
Appears in Collections:Entwurfsautomatisierung für Eingebettete Systeme

Files in This Item:
File Description SizeFormat 
Bashfordunt.pdfDNB3.29 MBAdobe PDFView/Open


This item is protected by original copyright



This item is protected by original copyright rightsstatements.org