hardware vs. software - ein erster vergleich€¦ · “hardware ist der oberbegriff für alle...
TRANSCRIPT
![Page 1: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/1.jpg)
Hardware vs. Software- ein erster Vergleich
![Page 2: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/2.jpg)
Hardware
“Hardware refers to the physical pieces of a computer...”- https://www.reference.com/
“Die Hardware umfasst alle Bestandteile einer Maschine, insbesondere einer Computeranlage...”- http://definition-online.de/hardware/
Universelle Definition?
“Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen eines Computers oder eines Systems.”- DIN 44.300
![Page 3: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/3.jpg)
Hardware Lösung: Beispiel
● ARINC664, Part 7– Full duplex switched Ethernet Standard für die
Luftfahrt.
● Beschreibt die Realisierung eines gesamten Systems
● Ohne Software (zB. Switches) nicht funktionsfähig.
![Page 4: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/4.jpg)
Software
● Definition● Hardware/Software Interface ist entscheident
– Compiler, Interpreter, Verifizierbarkeit
● Beeinflusst direkt:– Kosten
– Performance
– Sicherheit
![Page 5: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/5.jpg)
Software Lösung: Beispiel
● C Programm● Keine Software ohne Hardware● Verschiedene Abstraktionsgrade
– Maschinennahe Software
– Implementierungen in einer Hochsprache
![Page 6: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/6.jpg)
Hardware/Software Co-Design
“Hardware/Software Co-Design is the design of cooperating hardware components and software components in a single design effort.”- Patrick Schaumont – A Practical Introduction to Hardware/Software Codesign
● Großes Wissen über Hardware und Software notwendig im Designprozess
● Hauptproblem: Partitioning
![Page 7: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/7.jpg)
Implementierung in SW/HW?
“Hardware-like” “Software-like”Performance Handling von hoher Komplexität
Energieeffizienz Senken von Designkosten
![Page 8: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/8.jpg)
Rolle des FPGA
● Ermöglicht HW/SW Co-Design● Microprozessor und Custom Processor
PRO CONTRAKurze Implementierungszeiten Geringere Taktraten
Geprüftes Silizium Höherer Flächenbedarf
Senkt das Designrisiko Höherer Leistungsbedarf
Rekonfigurierbarkeit
![Page 9: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/9.jpg)
Partitioning
![Page 10: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/10.jpg)
Partitioning (contd)
● NP-hard● Hauptsächlich manuell● Die Möglichkeiten der Automatisierung des
Partitioning werden seit über 26 Jahren untersucht
![Page 11: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/11.jpg)
Automatisiertes Partitioning- Co-Design Ladder
- Frank Vahid, Greg Stitt – Hardware/Software Partitionig
![Page 12: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/12.jpg)
HW/SW Entwurf - Vergleich
- Marco Platzner, Lothar Thiele, ETH Zürich - Hardware/Software Codesign
![Page 13: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/13.jpg)
HW/SW Entwurf – Vergleich (contd)
Hardware SoftwareTräge Flexibel
Nach der Produktion schwer anpassbar Ständige Anpassung möglich
Kostenkurve steigt stark Kostenkurve flach
Viele Testcases Noch mehr Testcases
![Page 14: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/14.jpg)
HW/SW Entwurf - Gemeinsamkeiten
● Erfassen und Simulieren● Grobe Blockstruktur = Spezifikation
– Verfeinerung:
– HW: Logik/Transistor Diagramme
– SW: Assembler
● Simulation, Emulation, Validierung
![Page 15: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/15.jpg)
Tools
● Teure Hardwaretools (Xilinx, Altera, …)● Günstige/Gratis Softwaretools
![Page 16: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/16.jpg)
Kosten FPGA/ASIC
![Page 17: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/17.jpg)
Anforderungen aus offenen Jobausschreibungen
Abgeschlossene Ausbildung
Englisch, Teamfähigkeit
C
Oo Programmierung (C++, Java)
Standards/Protkolle
Matlab Simulink, Embedded Linux, Berufserfahrung
Maschinennahe Programmierung
VHDL, VPGA, Echtzeitsysteme
Analoge Schaltungstechnik, Messtechnik, SPICE
Microcontroller, Skriptsprachen (Python)
Dependable Systems, Verifikation, System Architekturen, Websprachen
0 5 10 15 20 25 30www.karriere.atSuchanfrage: Embedded Systems, Wien/GrazGrundmenge: 27
![Page 18: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/18.jpg)
Maintenance
● Abhängigkeiten– Umgebung
– Zugriffsmöglichkeiten
– Einsatzgebiet
– Alterung
– Laufzeitverhalten
![Page 19: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/19.jpg)
Maintenance (contd.)
● Bsp.: Tracing– Analysiert das Systemverhalten zur Laufzeit
– Aufwändige Analyse
– In Hardware oder Software realisierbar● HW: Embedded Trace Macro Cell (Bsp. )● SW: Für alle Arten von Software verfügbar
![Page 20: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/20.jpg)
Software Tracing
- Jonas Trümper, Stefan Voigt, Fürgen Döllner- Maintenance of Embedded Systems: Supporting
Program Comprehension Using Dynamic Analysis
![Page 21: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/21.jpg)
Hardware vs. SoftwareVorteile
Hardware SoftwareGeschwindigkeit Höhere Abstraktionsebene
Fehlertoleranz Schnellere Entwicklung
Energieverbrauch Vielzahl an Entwicklungstools
Günstige Produktion bei hoher Stückzahl Wartbarkeit
Modulare Wiederverwendbarkeit Leichtere Implementierung komplexer Lösungen
![Page 22: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/22.jpg)
Hardware vs. SoftwareNachteile
Hardware SoftwareAufwändige Verifikation Schwierige Verifikation
Hoher Entwicklungsaufwand Unterschiedlichste Standards
Teure Tools Schwierige Koordination der Entwicklung
![Page 23: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/23.jpg)
Bsp. CRC
● HW: Schieberegister + XOR Operationen– Leichte Implementierung
– Hohe Geschwindigkeit
● SW: Bit Maskierungen, Shifts, XOR Operationen,...– Schwierigere Implementierung
– Teurer Overhead
![Page 24: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/24.jpg)
Bsp. IP Paket Fragmentierung
● HW: Sehr große Anzahl von States– Hohe Komplexität
– Hoher Platzbedarf
– Aufwändige Verifikation
● SW: Viele Verzweigungen– Bessere Übersicht
– Geringere Entwicklungszeit
![Page 25: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/25.jpg)
Quellen
● Greg Stitt, Frank Vahid. Reconfigurable Computing. 2008.
● Rald Gessler. Entwicklung Eingebetteter Systeme. 2014.
● Jürgen Döllner, Jonas Trümper, Stefan Voigt. Maintenance of Embedded Systems: Supporting Program Comprehension using Dynamic Analysis. Hasso-Plattner-Institut, Universität Potsdam. 2012.
![Page 26: Hardware vs. Software - ein erster Vergleich€¦ · “Hardware ist der Oberbegriff für alle mechanischen, elektrischen und elektronischen Komponenten, Baugruppen und Ausrüstungen](https://reader034.vdocuments.us/reader034/viewer/2022042318/5f0774a87e708231d41d11d3/html5/thumbnails/26.jpg)
Quellen (contd.)
● Patrick Schaumont. A Practical Introduction to Hardware/Software Codesign. 2010.
● Jürgen Teich. Hardware/Software Codesign: The Past, the Present, and Predicting the Future. Proceedings of the IEEE, 100, 2012.
● Matthias Fuch Universität Ulm. Geschichte und Einführung in Aufbau und Arbeitsweise von FPGA.http://www.informatik.uni-ulm.de/ni/Lehre/SS03/ProSemFPGA/Einfuehrung_FPGAs.pdf