Hardware / Software Codesign Optimierungskriterien und Constraints WAS soll optimiert werden? Diskussion Vor-Auswahl Wählen Sie für die folgende Diskussion einen der Anwendungsbereiche (jede Gruppe eines) 2 Automotive Telekom Industrie-Automation Raumfahrt Multimedia (MP3, Camcorder,…) A. Steininger TU Vienna Diskussion Fragen Welche Anforderungen an das Produkt bestehen? Was fällt in die Klasse „Kosten“ ? Was fällt in die Klasse „Nutzen“ ? Was ist speziell an Ihrem Anwendungsbereich? Wie kann man sie zum Zeitpunkt des Partitioning quantitativ erfassen? 3 A. Steininger TU Vienna Wh. The Constraints Dependability safety, security, availability [Joseph Sifakis, Workshop on Strategies for Embedded Systems 2005] Autonomy no humans in the loop Low resource consumption memory, power, energy Physical constraints weight size, heat dissipation, … Market positioning 4 optimal cost/quality, time to market A. Steininger TU Vienna Prinzip einer Optimierung Mittels eines Algorithmus soll eine Kostenfunktion minimiert oder eine Nutzenfunktion maximiert werden und zwar unter Einhaltung von Randbedingungen Als Voraussetzung müssen daher Kosten / Nutzen meßbar und alle Randbedingungen bekannt sein 5 A. Steininger TU Vienna Erfassen der Eigenschaften die relevante Eigenschaften müssen erfasst werden quantitativ, hinreichend genau schon früh im Design Flow Ist das realistisch möglich? 6 Tools erstellen Schätzungen auf Basis von vereinfachten Modellen Heuristiken A. Steininger TU Vienna Optimaler Tradeoff Wie vergleicht man quantitativ 7 Speicherverbrauch physikalische Größe Performance Preis A. Steininger TU Vienna Gegebene Plattform Typisches Szenario gegeben ist Prozessor FPGA für Spezialfunktionen => SW => HW Reales Problem 8 optimale Nutzung des vorh. Prozessors („Einsparen“ bringt keinen Gewinn!) optimale Nutzung des FPGA Es geht um ein „optimales“ Verschieben von Tasks zwischen FPGA und Prozessor A. Steininger TU Vienna