BFP Entwurf Eingebetteter Systeme Freeflight! Sommersemester Cross-Compilieren für die AR.drone

Größe: px
Ab Seite anzeigen:

Download "BFP Entwurf Eingebetteter Systeme Freeflight! Sommersemester Cross-Compilieren für die AR.drone"

Transkript

1 12 BFP Entwurf Eingebetteter Systeme Freeflight! Sommersemester 2012 Cross-Compilieren für die AR.drone 2012/06/21 Michael Engel Informatik 12 TU Dortmund

2 Überblick Cross-Compiler Beispielcode Laufen lassen 12,

3 Cross-Compiler Problem: normaler Compiler (z.b. gcc) erzeugt Code für die Architektur, auf der er läuft z.b. x86 oder (bei uns) x64 Die AR.drone hat aber einen ARM926-Prozessor: Unterschiedlicher Befehlssatz Unterschiedliche Breiten von Datentypen Aber: Sehr ähnliches Betriebssystem (Linux) Compiler benötigt, der Code für ARM926 erzeugt! 12,

4 Cross-Compiler (2) Cross-Compiler: Läuft auf Host-Plattform x Erzeugt Code für Target-Plattform y Definition der Plattform als Triplets: Für die AR.drone: arm none linux gnueabi Format: CPUarchitektur-Hersteller-OS-ABI Hier ein Quadrupel wegen verschiedener ABIs, die Linux für ARM unterstützt Innerhalb einer Architektur werden verschiedene Prozessorvarianten unterstützt (ARM7, ARM9,...) Triplet wird als Prefix für Compiler-Tools verwendet: arm none linux gnueabi g++ arm none linux gnueabi ld (usw.) 12,

5 Cross-Compiler (3) Welche CPU nutzt die AR.drone genau? Verbindung aufbauen: telnet cat /proc/cpuinfo Processor : ARM926EJ S rev 5 (v5l) BogoMIPS : Features : swp half thumb fastmult edsp java CPU implementer : 0x41 CPU architecture: 5TEJ CPU variant : 0x0 CPU part : 0x926 CPU revision : 5 Cache type : write back Cache clean : cp15 c7 ops Cache lockdown : format C Cache format : Harvard I size : I assoc : 4 I line length : 32 I sets : 256 D size : D assoc : 4 D line length : 32 D sets : 128 Hardware : Mykonos Parrot platform Revision : 0904 Serial : ,

6 ARM-Architektur Was bedeuten die Bezeichnungen? Verschiedene ARM-Entwicklungsstufen: ARMvx Anfang der ARM-Entwicklung 1983 bei Acorn: ARMv1-Prototyp ARMv2: erste kommerzielle Variante: MHz Implementierung: ARM2, ARM3 ARMv3: kb Cache, 25 MHz, 12 MIPS Implementierung: ARM6, ARM7 (z.b. Apple Newton) ARMv4: ARM7TDMI, StrongARM, ARM9TDMI ARMv5: ARM7EJ, ARM9E, ARM10E Aktuell: ARMv7 (Cortex A): bis 2 GHz... Processor : ARM926EJ S rev 5 (v5l) Features : swp half thumb fastmult edsp java CPU architecture: 5TEJ 12,

7 ARM-Architektur (2) 32-Bit RISC-Architektur Load/Store Bit-Register + Shadow-Register Dezizierte Register: R15 = PC R14 = LR (Rückspr.adr.) R13 = SP Erweiterungen möglich für: Floating-Point Vektor-Ops 12,

8 ARM-Architektur (3) Verschiedene ARM-Architekturvarianten unterscheiden sich in: Mikroarchitektur (Piplelinestufen) Cache-Architektur Unterstützer Befehlssatz ARM-Befehlssätze ARM32: 32-Bit-Befehle THUMB: 16-Bit-Befehle, nur 8 Register nutzbar, Ergänzung zu 32-Bit-Befehlen: kompakt, spart Speicher THUMB2: kompakter 16/32-Bit-Befehlssatz, eigenständig nutzbar ARM926EJ-S: ARM32 + THUMB, kein THUMB2, kein FP, keine Vektor-Ops Processor : ARM926EJ S rev 5 (v5l) Features : swp half thumb fastmult edsp java CPU architecture: 5TEJ 12,

9 Crosscompilieren für ARM Cross-Compiler selber bauen ist aufwändig, fehleranfällig und dauert... Fertige Crosscompiler existieren Für ARM z.b. CodeSourcery g++ Toolchain für ARM: software/sourcery tools/sourcerycodebench/editions/lite edition/ Angabe der Zielarchitektur auf der Compiler-Befehlszeile: arm none linux gnueabi gcc march=armv5 c foo.c...ergibt... $ file foo.o foo.o: ELF 32-bit LSB relocatable, ARM, version 1 (SYSV), not stripped Praktischerweise erzeugt die Standardeinstellung (ohne -march) bereits funktionierenden Code :-) 12,

10 Beispielprogramm Quelle: Navboard: ardrone/navboard Navboard driver and demo getting raw data from the navboard and converting it to realworld units Zwei C-Sourcedateien, ein Header: main_navboard.c Aufruf Initialisierung, Schleife liest Messwerte navboard.c Kalibrierung (flat trim), Init, Werte lesen navboard.h struct für Navigation, Funktionsprototypen Zwei weitere Files benötigt: util.c Hilfsfunktionen: Taste lesen, Zeit (in µs) liefern gpio.c Setzen von gpio-pins über Tool gpio und system-aufruf Bauen mit (siehe make.bat): arm none linux gnueabi g++ o navboard../util/util.c../gpio/gpio.c navboard.c main_navboard.c 12,

11 Beispielprogramm navboard.h: struct nav_struct { u16 size; u16 seq; // +0x00 Size of the following data (always 0x2C) // +0x02 Sequence number, increases every update u16 acc[3]; // +0x04 Raw data (10 bit) of the accelerometers multiplied by 4 u16 gyro[3]; gyros. X,Y=IDG, Z=Epson // +0x0A Raw data for the gyros, 12 bit A/D converted voltage of the u16 gyro_110[2]; // +0x10 4.5x Raw data (IDG), gyro values with another resolution (see IDG 500 datasheet) u16 acc_temp; // +0x14 Accs temperature startup value 25C, rising to 143 u16 gyro_temp; // +0x16 XYGyro temperature (IDG), 12 bit A/D converted voltage of IDG's temperature sensor startup value 25C, rising to 1572 u16 vrefepson; of the Epson sensor u16 vrefidg; of the IDG sensor // +0x18 ZGyro v_ref (Epson), 12 bit A/D converted reference voltage // +0x1A XYGyro v_ref (IDG), 12 bit A/D converted reference voltage u16 us_echo; // +0x1C bit15=1 echo pulse transmitted, bit14 0 first echo. Value 30 = 1cm. min value: 784 = 26cm... u16 checksum; // +0x1E Checksum = sum of all values except checksum (22 values) 12,

12 Laufen lassen! Übertragen des eigenen Programms: ftp ftp> bin ftp> put navboard AR.drone verwendet Steuerprogramm mit dem kreativen Namen program.elf Steuerprogramm benutzt alle Ressourcen muss vor Start eigener Programm beendet werden: telnet killall program.elf Programm ausführbar machen und starten: chmod +x navboard./navboard 12,

13 Laufen lassen! Übertragen des eigenen Programms: ftp ftp> bin ftp> put navboard AR.drone verwendet Steuerprogramm mit dem kreativen Namen program.elf Steuerprogramm benutzt alle Ressourcen muss vor Start eigener Programm beendet werden: telnet killall program.elf Programm ausführbar machen und starten: chmod +x navboard./navboard 12,

14 Eigener Code auf der AR.drone Weitere Beispiele für Ansteuerung von Sensoren und Aktuatoren unter: Wichtige Punkte für eigenen Code: ARM926 der AR.drone läuft mit nur 468 MHz Keine Unterstützung für Hardware-Fließkommazahlen In Software emuliert (soft-fp), daher sehr langsam AR.drone hat nur 128 MB RAM Ansonsten: Netzwerk-Verbindungen auch lokal machbar Entsprechende Ports auf localhost ( ) öffnen Erstmal mit Original-Flugsoftware laufen lassen Eigenes Programm steuert AR.drone wie gehabt über UDP 12,

Die ARM-Mikroarchitektur. Acorn RISC Machine ARM. Asm Prak SS03 p.1/13

Die ARM-Mikroarchitektur. Acorn RISC Machine ARM. Asm Prak SS03 p.1/13 Die -Mikroarchitektur Acorn RISC Machine Asm Prak SS03 p.1/13 Die -Mikroarchitektur Acorn RISC Machine Advanced RISC Machine Asm Prak SS03 p.1/13 Designziele Kostengünstig Asm Prak SS03 p.2/13 Designziele

Mehr

Neues vom STRIP Forth-Prozessor

Neues vom STRIP Forth-Prozessor Neues vom STRIP Forth-Prozessor Tagung der Forth-Gesellschaft März 2014 Bad Vöslau/Österreich Willi Stricker -Prozessor Inhalt 1. STRIP-Befehlssatz Bisher: minimaler Befehlssatz neu: erweiterter Befehlssatz

Mehr

Embedded Linux gnublin Board Programmieren Sonstiges. Embedded Linux am Beispiel des Gnublin-Boards

Embedded Linux gnublin Board Programmieren Sonstiges. Embedded Linux am Beispiel des Gnublin-Boards Embedded Linux am Beispiel des Gnublin-Boards Was ist Embedded Linux? Wikipedia Als Embedded Linux bezeichnet man ein eingebettetes System mit einem auf dem Linux-Kernel basierenden Betriebssystem. In

Mehr

Vom Web ins IoT: Schnelleinstieg in Tooling und Entwicklung

Vom Web ins IoT: Schnelleinstieg in Tooling und Entwicklung Vom Web ins IoT: Schnelleinstieg in Tooling und Entwicklung Webinar 11.05.2017 Andreas Schmidt @aschmidt75 www.cassini.ag www.thingforward.io @thingforward 2 11.05.17 Agenda Devices für das Internet der

Mehr

ASIC-SYNTHESE DER SHAP-MIKROARCHITEKTUR

ASIC-SYNTHESE DER SHAP-MIKROARCHITEKTUR Fakultät Informatik Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur ASIC-SYNTHESE DER SHAP-MIKROARCHITEKTUR Vortrag zum großen Beleg Andrej Olunczek Andrej.Olunczek@mailbox.tu-dresden.de

Mehr

Technische Grundlagen der Informatik 2 SS Einleitung. R. Hoffmann FG Rechnerarchitektur Technische Universität Darmstadt E-1

Technische Grundlagen der Informatik 2 SS Einleitung. R. Hoffmann FG Rechnerarchitektur Technische Universität Darmstadt E-1 E-1 Technische Grundlagen der Informatik 2 SS 2009 Einleitung R. Hoffmann FG Rechnerarchitektur Technische Universität Darmstadt Lernziel E-2 Verstehen lernen, wie ein Rechner auf der Mikroarchitektur-Ebene

Mehr

Martin Stiller, Fakultät Informatik, Institut für Technische Informatik. LLVA: Eine virtuelle Befehlssatzarchitektur

Martin Stiller, Fakultät Informatik, Institut für Technische Informatik. LLVA: Eine virtuelle Befehlssatzarchitektur Martin Stiller, Fakultät Informatik, Institut für Technische Informatik LLVA: Eine virtuelle Befehlssatzarchitektur Hauptseminar Technische Informatik, 02.05.2012 Gliederung 1 Virtual Instruction Set Computers

Mehr

Assembler - Einleitung

Assembler - Einleitung Assembler - Einleitung Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler - Einleitung 1/19 2008-04-01 Teil 1: Hochsprache

Mehr

Embedded-Linux-Seminare. Toolchains

Embedded-Linux-Seminare. Toolchains Embedded-Linux-Seminare Toolchains http://www.embedded-linux-seminare.de Diplom-Physiker Peter Börner Spandauer Weg 4 37085 Göttingen Tel.: 0551-7703465 Mail: info@embedded-linux-seminare.de Kopier-Rechte

Mehr

DIGITALE SCHALTUNGEN II

DIGITALE SCHALTUNGEN II DIGITALE SCHALTUNGEN II 3. Sequentielle Schaltkreise 3.1 Vergleich kombinatorische sequentielle Schaltkreise 3.2 Binäre Speicherelemente 3.2.1 RS Flipflop 3.2.2 Getaktetes RS Flipflop 3.2.3 D Flipflop

Mehr

Grundlagen der Rechnerarchitektur. MIPS Assembler

Grundlagen der Rechnerarchitektur. MIPS Assembler Grundlagen der Rechnerarchitektur MIPS Assembler Übersicht Arithmetik, Register und Speicherzugriff Darstellung von Instruktionen Logische Operationen Weitere Arithmetik Branches und Jumps Prozeduren 32

Mehr

Übungen zu Grundlagen der systemnahen Programmierung in C (GSPiC) im Sommersemester 2018

Übungen zu Grundlagen der systemnahen Programmierung in C (GSPiC) im Sommersemester 2018 Übungen zu Grundlagen der systemnahen Programmierung in C (GSPiC) im Sommersemester 2018 2018-05-29 Bernhard Heinloth Lehrstuhl für Informatik 4 Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl

Mehr

Android NDK API + ABI

Android NDK API + ABI Android NDK API + ABI Dr. Olaf Flebbe science + computing ag IT-Dienstleistungen und Software für anspruchsvolle Rechnernetze Tübingen München Berlin Düsseldorf Über mich Atari/Minix (Floatingpoint Implementierung)

Mehr

Hardware PCI-Bus. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg

Hardware PCI-Bus. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg Hardware PCI-Bus Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009 Hardware PCI-Bus 1/23 2008-08-06 Übersicht Inhalt:

Mehr

Hardware PCI-Bus. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg

Hardware PCI-Bus. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg Hardware PCI-Bus Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2007/2008 Hardware PCI-Bus 1/23 2007-10-26 Übersicht Inhalt:

Mehr

Informatik in Bewegung

Informatik in Bewegung Informatik in Bewegung Entwicklung eingebetteter Software für mobile Geräte Bochum, 20./21.06.2009 Präsentationsüberblick Geschichte von Research In Motion (RIM) Womit beschäftigt sich RIM? Was sind die

Mehr

Android NDK API + ABI

Android NDK API + ABI Android NDK API + ABI Dr. Olaf Flebbe science + computing ag IT-Dienstleistungen und Software für anspruchsvolle Rechnernetze Tübingen München Berlin Düsseldorf Langfristiges Ziel der Arbeiten Verteilte

Mehr

Was ist Reference Counting Implementierung. Ende. Reference Counting. Kevin Köster. Uni Hamburg. 31. März Kevin Köster Reference Counting 1/58

Was ist Reference Counting Implementierung. Ende. Reference Counting. Kevin Köster. Uni Hamburg. 31. März Kevin Köster Reference Counting 1/58 Reference Counting Kevin Köster Uni Hamburg 31. März 2013 Kevin Köster Reference Counting 1/58 Kevin Köster Reference Counting 2/58 Beschreibung Dateisystem Praxis Frage Wann wissen wir, ob ein Objekt

Mehr

M I K R O P R O Z E SS O R P R A K T I K U M SS2018. Termin1. C-Programmierung für eingebettete Systeme

M I K R O P R O Z E SS O R P R A K T I K U M SS2018. Termin1. C-Programmierung für eingebettete Systeme Mikroprozessorpraktikum Termin1 SS2018 Technische Fachgruppe C-Programmierung für eingebettete M I K R O P R O Z E SS O R P R A K T I K U M SS2018 Termin1 C-Programmierung für eingebettete Name, Vorname

Mehr

Leistungsfähige ARM CPUs für den industriellen Einsatz

Leistungsfähige ARM CPUs für den industriellen Einsatz Leistungsfähige ARM CPUs für den industriellen Einsatz Layerscape ARM Cortex-A CPUs von NXP mit Features aus der PowerPC Welt. Performance und Echtzeitfähigkeits-Vergleich von ARM und PowerPC. Kei Thomsen,

Mehr

Einführung. Übungen zur Vorlesung Virtuelle Maschinen. Stefan Potyra. SoSe 2009

Einführung. Übungen zur Vorlesung Virtuelle Maschinen. Stefan Potyra. SoSe 2009 Einführung Übungen zur Vorlesung Virtuelle Maschinen Stefan Potyra Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SoSe 2009 Übungsaufgaben 1 Entwickeln

Mehr

Bios-Update Anleitung mit Q-Flash. Wichtige Hinweise!

Bios-Update Anleitung mit Q-Flash. Wichtige Hinweise! Bios-Update Anleitung mit Q-Flash. Ein Bios Update mit dem im Bios integrierten Tool Q-Flash ist die sicherste Methode. Wichtige Hinweise! 1.) Anwender, die RAID im Bios eingestellt haben, sollten die

Mehr

Just-In-Time-Compiler (2)

Just-In-Time-Compiler (2) Just-In-Time-Compiler (2) Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2011/2012 Just-In-Time-Compiler (2) 1/13 2011-09-12 Just-In-Time-Compiler

Mehr

Bibliotheks-basierte Virtualisierung

Bibliotheks-basierte Virtualisierung Dr.-Ing. Volkmar Sieh Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2015/2016 V. Sieh Bibliotheks-basierte Virtualisierung (WS15/16)

Mehr

2. Der ParaNut-Prozessor "Parallel and more than just another CPU core"

2. Der ParaNut-Prozessor Parallel and more than just another CPU core 2. Der ParaNut-Prozessor "Parallel and more than just another CPU core" Neuer, konfigurierbarer Prozessor Parallelität auf Daten- (SIMD) und Thread-Ebene Hohe Skalierbarkeit mit einer Architektur neues

Mehr

Grundlagen der Rechnerarchitektur. Einführung

Grundlagen der Rechnerarchitektur. Einführung Grundlagen der Rechnerarchitektur Einführung Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2 Vorlesungsinhalte Binäre Arithmetik MIPS Assembler

Mehr

Just-In-Time-Compiler (2)

Just-In-Time-Compiler (2) Just-In-Time-Compiler (2) Dr.-Ing. Volkmar Sieh Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2015/2016 V. Sieh Just-In-Time-Compiler

Mehr

Software ubiquitärer Systeme 2. Übung

Software ubiquitärer Systeme 2. Übung Software ubiquitärer Systeme 2. Übung http://ess.cs.unidortmund.de/de/teaching/ss2013/sus/index.html Christoph Borchert http://ess.cs.tu-dortmund.de/~chb AG Eingebettete Systemsoftware Informatik 12, TU

Mehr

Fachprojekt for Embedded System: Design and Implement Your Own Embedded Systems (2) LS 12, TU Dortmund

Fachprojekt for Embedded System: Design and Implement Your Own Embedded Systems (2) LS 12, TU Dortmund Fachprojekt for Embedded System: Design and Implement Your Own Embedded Systems (2) Junjie Shi Niklas Ueter LS 12, TU Dortmund 09,April,2018 Junjie Shi, Niklas Ueter (LS 12, TU Dortmund) 1 / 1 Inhalt 1

Mehr

Configurable Embedded Systems

Configurable Embedded Systems Configurable Embedded Systems Prof. Dr. Sven-Hendrik Voß Wintersemester 2017 Technische Informatik (Master), Semester 2 Termin 3, 23.10.2017 Seite 2 Zynq Design Flow Configurable Embedded Systems Wintersemester

Mehr

Alte Software auf neuer Hardware, Neue Software auf alter Hardware

Alte Software auf neuer Hardware, Neue Software auf alter Hardware Alte Software auf neuer Hardware, Neue Software auf alter Hardware Ignatios Souvatzis Institut für Informatik NetBSD Project ignatios@cs.uni-bonn.de is@netbsd.org http://theory.cs.uni-bonn.de/ ignatios/

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

ARM-Rechnerarchitekturen für System-on-Chip-Design

ARM-Rechnerarchitekturen für System-on-Chip-Design 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Steve Furber ARM-Rechnerarchitekturen für System-on-Chip-Design Übersetzung

Mehr

N Bit Binärzahlen. Stelle: Binär-Digit:

N Bit Binärzahlen. Stelle: Binär-Digit: N Bit Binärzahlen N Bit Binärzahlen, Beispiel 16 Bit: Stelle: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Binär-Digit: 0 0 1 0 1 0 0 1 1 1 0 0 1 0 0 0 Least Significant Bit (LSB) und Most Significant Bit (MSB)

Mehr

Embedded Linux Portierung auf mobiles Datenerfassungsterminal. Ole Reinhardt

Embedded Linux Portierung auf mobiles Datenerfassungsterminal. Ole Reinhardt Embedded Linux Portierung auf mobiles Datenerfassungsterminal Ole Reinhardt Embedded Linux Embedded = Eingebettet, Verborgen? Embedded Linux Embedded = Eingebettet, Verborgen?

Mehr

Seminar: Multi-Core Architectures and Programming

Seminar: Multi-Core Architectures and Programming Seminar: Multi-Core Architectures and Programming Parallelisierung des Viola-Jones Algorithmus auf Tilera Hardware-Software-Co-Design Universität Erlangen-Nürnberg 1 Übersicht Einleitung Erste Versuche

Mehr

Assembler Programmierung Motivation. Informatik II SS 2004 Teil 4: Assembler Programmierung. Assembler vs. Maschinensprache

Assembler Programmierung Motivation. Informatik II SS 2004 Teil 4: Assembler Programmierung. Assembler vs. Maschinensprache Assembler Programmierung Motivation Informatik II SS 2004 Teil 4: Assembler Programmierung Was ist ein Programm? Eine Reihe von Befehlen, die der Ausführung einer Aufgabe dient Dazu wird das Programm sequentiell

Mehr

Vorlesung 3: Verschiedenes

Vorlesung 3: Verschiedenes Universität Bielefeld Technische Fakultät AG Rechnernetze und verteilte Systeme Vorlesung 3: Verschiedenes Peter B. Ladkin Vorlesung 3 - Inhalt Busarchitektur Virtuelle Maschine 2 Busarchitektur - das

Mehr

Einführung Leistungsmerkmale Aufbau am Beispiel FAT16. Das Filesystem FAT. Peter Schmid. Hochschule für Technik Zürich Studiengang Informatik

Einführung Leistungsmerkmale Aufbau am Beispiel FAT16. Das Filesystem FAT. Peter Schmid. Hochschule für Technik Zürich Studiengang Informatik Hochschule für Technik Zürich Studiengang Informatik 17.4.2009 Outline 1 Wieso FAT? Geschichtlicher Rückblick 2 FAT12 FAT16 FAT32 3 Partitionen Bereiche Wieso FAT? Wieso FAT? Geschichtlicher Rückblick

Mehr

Benchmarking Intel Pentium III-S vs. Intel Pentium 4

Benchmarking Intel Pentium III-S vs. Intel Pentium 4 Benchmarking Intel Pentium III-S vs. Intel Pentium 4 André Ceselski Raphael Rosendahl 30.01.2007 Gliederung Motivation Vorstellung der Architekturen Intel P6 Architektur Intel NetBurst TM Architektur Architektur-Unterschiede

Mehr

Mikrocontroller. Vortrag von Louis Liedtke. 8. Dezember Fakultät Elektrotechnik und Informatik. Bild 1: Atmel ATmega8

Mikrocontroller. Vortrag von Louis Liedtke. 8. Dezember Fakultät Elektrotechnik und Informatik. Bild 1: Atmel ATmega8 Mikrocontroller Bild 1: Atmel ATmega8 Vortrag von 8. Dezember 2015 Gliederung 1. Begriffserklärung 2. Besondere Merkmale 3. Aufbau und Arbeitsweise 4. Programmierung 5. Nutzen 6. Fazit 2 1. Begriffserklärung

Mehr

ARM Cortex-M Prozessoren. Referat von Peter Voser Embedded Development GmbH

ARM Cortex-M Prozessoren. Referat von Peter Voser Embedded Development GmbH ARM Cortex-M Prozessoren Referat von Peter Voser Embedded Development GmbH SoC (System-on-Chip) www.embedded-development.ch 2 Instruction Sets ARM, Thumb, Thumb-2 32-bit ARM - verbesserte Rechenleistung

Mehr

Informatik für Mathematiker und Physiker Woche 7. David Sommer

Informatik für Mathematiker und Physiker Woche 7. David Sommer Informatik für Mathematiker und Physiker Woche 7 David Sommer David Sommer 30. Oktober 2018 1 Heute: 1. Repetition Floats 2. References 3. Vectors 4. Characters David Sommer 30. Oktober 2018 2 Übungen

Mehr

1 Fehler in Bibliotheksfunktionen. 1 Überblick. 2 Ziele der Aufgabe. Besprechung der 1. Aufgabe

1 Fehler in Bibliotheksfunktionen. 1 Überblick. 2 Ziele der Aufgabe. Besprechung der 1. Aufgabe U3 3. Übung U3 3. Übung U3-1 Fehlerbehandlung U3-1 Fehlerbehandlung Besprechung der 1. Aufgabe Fehlerbehandlung Infos zur Aufgabe 3: malloc-implementierung U3.1 Fehler können aus unterschiedlichsten Gründen

Mehr

Smartphone Entwicklung mit Android und Java

Smartphone Entwicklung mit Android und Java Smartphone Entwicklung mit Android und Java predic8 GmbH Moltkestr. 40 53173 Bonn Tel: (0228)5552576-0 www.predic8.de info@predic8.de Was ist Android Offene Plattform für mobile Geräte Software Kompletter

Mehr

Implementierung und Evaluation eines Thumb- und Thumb2- Architekturmodells für den Befehlssatzsimulator Jahris

Implementierung und Evaluation eines Thumb- und Thumb2- Architekturmodells für den Befehlssatzsimulator Jahris Fakultät Informatik Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Implementierung und Evaluation eines Thumb- und Thumb2- Architekturmodells für den

Mehr

Selbststudium Informationssysteme - H1102 Christian Bontekoe & Felix Rohrer

Selbststudium Informationssysteme - H1102 Christian Bontekoe & Felix Rohrer Übung RA, Kapitel 1.5 1. Beantworten Sie bitte folgende Repetitionsfragen 1. Beschreiben Sie in eigenen Worten und mit einer Skizze die Schichtung einer Multilevel Maschine. Folie 5, rechte Seite 2. Welche

Mehr

Computer-Architektur Ein Überblick

Computer-Architektur Ein Überblick Computer-Architektur Ein Überblick Johann Blieberger Institut für Rechnergestützte Automation Computer-Architektur Ein Überblick p.1/27 Computer-Aufbau: Motherboard Computer-Architektur Ein Überblick p.2/27

Mehr

ANLEITUNG Version RBG TAURIS. Raumbediengerät Unterputz 4,3 TFT Modbus -TCP/IP mit Linux Betriebssystem und Modbus -RTU Gateway

ANLEITUNG Version RBG TAURIS. Raumbediengerät Unterputz 4,3 TFT Modbus -TCP/IP mit Linux Betriebssystem und Modbus -RTU Gateway ANLEITUNG Version 03.07.2018 RBG TAURIS Raumbediengerät Unterputz 4,3 TFT Modbus -TCP/IP mit Linux Betriebssystem und Modbus -RTU Gateway - ALS BEDIENTEIL für SPS n mit HTML Browserfunktion oder ALS EINZELRAUMREGLER

Mehr

Symbian OS. OS für kleine Endgeräte: Sven Walter

Symbian OS. OS für kleine Endgeräte: Sven Walter OS für kleine Endgeräte: Sven Walter 19.07.2004 1 1. Einleitung Symbian ist ein Software Unternehmen, das ein offenes Betriebssystem für datenfähige Mobiltelefone entwickelt. Es wurde im Juni 1998 von

Mehr

PLATO-Systemanforderungen

PLATO-Systemanforderungen PLATO-Systemanforderungen ALLGEMEINES Für die Mehrplatzinstallation von PLATO wird der Einsatz eines dedizierten Servers und ein funktionierendes Netzwerk mit Vollzugriff auf den PLATO-Ordner (Empfehlung:

Mehr

Hugepages, NUMA or nothing on Linux?

Hugepages, NUMA or nothing on Linux? Hugepages, NUMA or nothing on Linux? Daniel Hillinger Value Transformation Services S.r.l. Zweigniederlassung Deutschland München Schlüsselworte Memory; Arbeitsspeicher; NUMA; Hugepages Einleitung Speicherarchitekturen

Mehr

Software ubiquitärer Systeme 2. Übung

Software ubiquitärer Systeme 2. Übung Software ubiquitärer Systeme 2. Übung http://ess.cs.uni-.de/de/teaching/ss2014/sus Christoph Borchert http://ess.cs.tu-.de/~chb AG Eingebettete System Informatik 12, TU Dortmund Überblick C++ Crashkurs

Mehr

Verschiedenes. Peter B. Ladkin

Verschiedenes. Peter B. Ladkin Verschiedenes Peter B. Ladkin ladkin@rvs.uni-bielefeld.de Busarchitektur Virtuelle Maschine Alles sitzt auf dem gleichen Kabel Das Gerät wird nur durch die Adresse unterschieden Speicher Cache Festplatte

Mehr

Arbeiten mit Visual COBOL 3.0 for Eclipse. Rolf Becking 30. November 2017

Arbeiten mit Visual COBOL 3.0 for Eclipse. Rolf Becking 30. November 2017 Arbeiten mit Visual COBOL 3.0 for Eclipse Rolf Becking 30. November 2017 Unsere Themen im heutigen Webinar Konzept der Eclipse IDE und Konsequenzen für die Arbeitsweise Wann ist Eclipse die richtige IDE

Mehr

Erhöhung der Ausfallsicherheit einer Mikropumpensteuerung mit Hilfe einer hierarchisch organisierten, heterogenen Controllerplattform

Erhöhung der Ausfallsicherheit einer Mikropumpensteuerung mit Hilfe einer hierarchisch organisierten, heterogenen Controllerplattform Fakultät Informatik Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Erhöhung der Ausfallsicherheit einer Mikropumpensteuerung mit Hilfe einer hierarchisch

Mehr

Neue Prozessor-Architekturen für Desktop-PC

Neue Prozessor-Architekturen für Desktop-PC Neue Prozessor-Architekturen für Desktop-PC Bernd Däne Technische Universität Ilmenau Fakultät I/A - Institut TTI Postfach 100565, D-98684 Ilmenau Tel. 0-3677-69-1433 bdaene@theoinf.tu-ilmenau.de http://www.theoinf.tu-ilmenau.de/ra1/

Mehr

LeMaker HiKey 960 4GB, Octa Core 4xARM Cortex A73 + 4xA53 64-Bit-CPU, Mali G71 MP8 3D GPU, 96board

LeMaker HiKey 960 4GB, Octa Core 4xARM Cortex A73 + 4xA53 64-Bit-CPU, Mali G71 MP8 3D GPU, 96board LeMaker HiKey 960 4GB, Octa Core 4xARM Cortex A73 + 4xA53 64-Bit-CPU, Mali G71 MP8 3D GPU, 96board EAN CODE 4 0 3 8 8 1 6 1 5 1 0 8 7 LeMaker s Nachfolger des Hikey-Boards heißt HiKey960, mit leistungsstarken

Mehr

Hinweise C-Programmierung

Hinweise C-Programmierung Hinweise C-Programmierung Dr.-Ing. Volkmar Sieh Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2016/2017 V. Sieh Hinweise C-Programmierung

Mehr

Citrix Provisioning Server Marcel Berquez. System Engineer

Citrix Provisioning Server Marcel Berquez. System Engineer Citrix Provisioning Server Marcel Berquez. System Engineer Agenda Was ist der Citrix Provisioning Server? Wie funktioniert der Citrix Provisioning Server? Was gehört zum Citrix Provisioning Server? Welche

Mehr

Rechner Architektur. Martin Gülck

Rechner Architektur. Martin Gülck Rechner Architektur Martin Gülck Grundlage Jeder Rechner wird aus einzelnen Komponenten zusammengesetzt Sie werden auf dem Mainboard zusammengefügt (dt.: Hauptplatine) Mainboard wird auch als Motherboard

Mehr

Grundkurs Routing im Internet mit Übungen

Grundkurs Routing im Internet mit Übungen Grundkurs Routing im Internet mit Übungen Falko Dressler, Ursula Hilgers {Dressler,Hilgers}@rrze.uni-erlangen.de Regionales Rechenzentrum der FAU 1 Tag 4 Router & Firewalls IP-Verbindungen Aufbau von IP

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 22 Einstieg in die Informatik mit Java Generics Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 22 1 Überblick Generics 2 Generische Klassen 3 Generische Methoden 4

Mehr

Die Technik hinter IoT: Arduino, Raspberry Pi & Co.

Die Technik hinter IoT: Arduino, Raspberry Pi & Co. Die Technik hinter IoT: Arduino, Raspberry Pi & Co. Praxisbeispiele für den Hausgebrauch Uwe Steinmann MMK GmbH 25.-26. September 2017 Uwe Steinmann (MMK GmbH) Die Technik hinter IoT 25.-26. September

Mehr

Linux Terminal mit Ethernet und Java. Eine dynamische Plattform für Automatisierungsapplikationen?

Linux Terminal mit Ethernet und Java. Eine dynamische Plattform für Automatisierungsapplikationen? Linux Terminal mit Ethernet und Java. Eine dynamische Plattform für Automatisierungsapplikationen? JULIA SCHILLING SSV EMBEDDED SYSTEMS HEISTERBERGALLEE 72 D-30453 HANNOVER WWW.SSV-EMBEDDED.DE Ethernet

Mehr

Seminar Parallele Rechnerarchitekturen SS04 \ SIMD Implementierung aktueller Prozessoren 2 (Dominik Tamm) \ Inhalt. Seite 1

Seminar Parallele Rechnerarchitekturen SS04 \ SIMD Implementierung aktueller Prozessoren 2 (Dominik Tamm) \ Inhalt. Seite 1 \ Inhalt Seite 1 \ Inhalt SIMD Kurze Rekapitulation 3Dnow! (AMD) AltiVec (PowerPC) Quellen Seite 2 \ Wir erinnern uns: Nach Flynn s Taxonomie kann man jeden Computer In eine von vier Kategorien einteilen:

Mehr

C++ mit dem Arduino (Uno und Mega2560)

C++ mit dem Arduino (Uno und Mega2560) C++ mit dem Arduino (Uno und Mega2560) 1. Toolchain Als toolchain bezeichnet man die Reihe von Software, die nötig ist um den Prozessor zu programmieren, das Ergebnis draufzuladen und dann zu testen. Hier

Mehr

Rechner in Eingebetteten Systemen

Rechner in Eingebetteten Systemen 12 Rechner in Eingebetteten Systemen Peter Marwedel Informatik 12 Otto-Hahn-Str. 16 Tel. 755 6111 E-mail: peter.marwedel@tu-.de Sprechstunde: Mo 13:00-14:00 Überblick Zukunft der IT? Gemäß Vorhersagen

Mehr

Am Beispiel der SHARC-DSPs Jan Kiene

Am Beispiel der SHARC-DSPs Jan Kiene Besonderheiten von DSP-Architekturen Am Beispiel der SHARC-DSPs Jan Kiene Inhalt Digitale Signalverarbeitung (kurze Wdh) Anforderungen an DSPs Besonderheiten von DSP-Architekturen Die SHARC-DSPs von Analog

Mehr

Mikrocontroller-Programmierung

Mikrocontroller-Programmierung Mikrocontroller-Programmierung Anhand des HC12 Fabian Wiesel Überblick Überblick Mikrocontroller Überblick HC12 CPU Peripherie des DG128 Assemblerprogrammierung Mikrocontroller Leistungsfähigkeit: zwischen

Mehr

Programmiertechnik. Teil 4. C++ Funktionen: Prototypen Overloading Parameter. C++ Funktionen: Eigenschaften

Programmiertechnik. Teil 4. C++ Funktionen: Prototypen Overloading Parameter. C++ Funktionen: Eigenschaften Programmiertechnik Teil 4 C++ Funktionen: Prototypen Overloading Parameter C++ Funktionen: Eigenschaften Funktionen (Unterprogramme, Prozeduren) fassen Folgen von Anweisungen zusammen, die immer wieder

Mehr

Mikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen

Mikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen Mikroprozessoren Grundlagen Aufbau, Blockschaltbild Grundlegende Datentypen AVR-Controller Anatomie Befehlssatz Assembler Speicherzugriff Adressierungsarten Kontrollstrukturen Stack Input / Output (I/O)

Mehr

Systemanforderungen Verlage & Akzidenzdruck

Systemanforderungen Verlage & Akzidenzdruck OneVision Software AG Inhalt Asura 9.5, Asura Pro 9.5, Garda 5.0...2 PlugBALANCEin 6.5, PlugCROPin 6.5, PlugFITin 6.5, PlugRECOMPOSEin 6.5, PlugSPOTin 6.5,...2 PlugTEXTin 6.5, PlugINKSAVEin 6.5, PlugWEBin

Mehr

Zum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE

Zum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE Zum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE 754 Standard festgelegt. Es stehen sogenannte einfach

Mehr

Rechnernetze und Organisation

Rechnernetze und Organisation Framework für Assignment A2 1 Übersicht Framework für Assignment A2 WH: Aufgabenstellung Klassen und Methoden Getting started Erste Instruktion aus Testdaten dekodieren 2 Aufgabenstellung Instruction-Set

Mehr

U5-2 Register beim AVR-µC

U5-2 Register beim AVR-µC U5 4. Übungsaufgabe U5 4. Übungsaufgabe U5-2 Register beim AVR-µC U5-2 Register beim AVR-mC Grundlegendes zur Übung mit dem AVR-µC 1 Überblick Register Beim AVR µc sind die Register: I/O Ports Interrupts

Mehr

ODA Erfahrungen und Neuigkeiten

ODA Erfahrungen und Neuigkeiten ODA Erfahrungen und Neuigkeiten Dierk Lenz 25. Oktober 2017 Köln Oracle Database Appliance (ODA) Mitglied der Familie der Oracle Engineered Systems, d.h.: Hardware und Software (Betriebssystem, Datenbank)

Mehr

Die Entwicklungsumgebung. Labor Technische Informatik. Prof. Dr.-Ing. F. Kesel Dipl.-Ing. (FH) A. Reber

Die Entwicklungsumgebung. Labor Technische Informatik. Prof. Dr.-Ing. F. Kesel Dipl.-Ing. (FH) A. Reber Die Entwicklungsumgebung Labor Technische Informatik Prof. Dr.-Ing. F. Kesel Dipl.-Ing. (FH) A. Reber 19.04.2011 Inhalt 1 Das Keil MCB1700 Board...2 2 Keil ARM MDK Toolchain...3 2.1 Projekterstellung...3

Mehr

Übungen zu Systemnahe Programmierung in C (SPiC)

Übungen zu Systemnahe Programmierung in C (SPiC) Übungen zu Systemnahe Programmierung in C (SPiC) Moritz Strübe, Rainer Müller (Lehrstuhl Informatik 4) Sommersemester 2014 Inhalt Aufgabe4 Led Modul Wiederholung Konfiguration der Pins Hinweise zur Aufgabe

Mehr

RGBWW WLAN LED Dimmer mit H801 (ESP8266)

RGBWW WLAN LED Dimmer mit H801 (ESP8266) RGBWW WLAN LED Dimmer mit H801 (ESP8266) Im Internet gibt bekommt man unter der Bezeichnung H801 WLAN LED Dimmer kostengünstiges Modul, dass über WLAN angesteuert werden kann. Eigenschaften H801: 5 Kanäle

Mehr

LINUX Schulung. FrauenComputerZentrum Berlin. Jutta Horstmann, Mai 2006

LINUX Schulung. FrauenComputerZentrum Berlin. Jutta Horstmann, Mai 2006 LINUX Schulung FrauenComputerZentrum Berlin Jutta Horstmann, Mai 2006 Agenda Was ist Linux Was ist Open Source Warum Open Source Software Wie sieht Open Source Software aus Was kann man damit machen Ausprobieren!!

Mehr

Hochschule Düsseldorf University of Applied Sciences HSD RISC &CISC

Hochschule Düsseldorf University of Applied Sciences HSD RISC &CISC HSD RISC &CISC CISC - Complex Instruction Set Computer - Annahme: größerer Befehlssatz und komplexere Befehlen höhere Leistungsfähigkeit - Möglichst wenige Zeilen verwendet, um Aufgaben auszuführen - Großer

Mehr

Open Source - Mikrokontroller für Mixed Signal ASIC

Open Source - Mikrokontroller für Mixed Signal ASIC Open Source - Mikrokontroller für Mixed Signal ASIC Embedded Computing Conference 30. August 2011 Michael Roth Ablauf Vorstellung IME Motivation Vorstellung einiger OpenSource Mikrokontroller Evaluation

Mehr

Embedded Systems Themen am : 32 Bit Controller für Embedded Systems (von Atmel)

Embedded Systems Themen am : 32 Bit Controller für Embedded Systems (von Atmel) Embedded Systems II Themen am 06.12.2017: 32 Bit Controller für Embedded Systems (von Atmel) Bitte OHP-/Tafel-Notizen selbst mitschreiben! ES1d_17_V8 Ulrich Schaarschmidt FH Düsseldorf, WS 2017/18 Quellenhinweise

Mehr

Echtzeitbetriebssysteme (am Beispiel QNX) Dr. Stefan Enderle HS Esslingen

Echtzeitbetriebssysteme (am Beispiel QNX) Dr. Stefan Enderle HS Esslingen Echtzeitbetriebssysteme (am Beispiel QNX) Dr. Stefan Enderle HS Esslingen 1. Einführung 1.1 Embedded Systeme Embedded Systeme besitzen / benutzen einen Mikrocontroller Embedded Systeme erfüllen meist eine

Mehr

Aufbau und Funktionsweise eines Computers

Aufbau und Funktionsweise eines Computers Aufbau und Funktionsweise eines Computers Thomas Röfer Hardware und Software von Neumann Architektur Schichtenmodell der Software Zahlsysteme Repräsentation von Daten im Computer Praktische Informatik

Mehr

Vorlesung Rechnerarchitektur. Einführung

Vorlesung Rechnerarchitektur. Einführung Vorlesung Rechnerarchitektur Einführung Themen der Vorlesung Die Vorlesung entwickelt an Hand von zwei Beispielen wichtige Prinzipien der Prozessorarchitektur und der Speicherarchitektur: MU0 Arm Speicher

Mehr

BFP Entwurf Eingebetteter Systeme Elektronische Musik. Ein Klavier oder Wie klingt ein Rechteck?

BFP Entwurf Eingebetteter Systeme Elektronische Musik. Ein Klavier oder Wie klingt ein Rechteck? 12 2011/10/26 BFP Entwurf Eingebetteter Systeme Elektronische Musik Wintersemester 2011/12 Ein Klavier oder Wie klingt ein Rechteck? Michael Engel Informatik 12 TU Dortmund Überblick Entwurfsprinzipien

Mehr

Samsungs Exynos 5 Dual

Samsungs Exynos 5 Dual Fakultät Informatik, Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Samsungs Exynos 5 Dual Candy Lohse Dresden, 12.12.12 Gliederung 1. Motivation und

Mehr

ABLEITUNG ZUSÄTZLICHER STEUERGRÖSSEN FÜR DIE STRAHLFORMUNG IN EINEM LASER-SCANNER IM ECHTZEITBETRIEB

ABLEITUNG ZUSÄTZLICHER STEUERGRÖSSEN FÜR DIE STRAHLFORMUNG IN EINEM LASER-SCANNER IM ECHTZEITBETRIEB Fakultät Informatik, Institut für Technische Informatik ABLEITUNG ZUSÄTZLICHER STEUERGRÖSSEN FÜR DIE STRAHLFORMUNG IN EINEM LASER-SCANNER IM ECHTZEITBETRIEB Studienarbeit Patrick Schöps Dresden, 09.02.2017

Mehr

Oracle 10g Einführung

Oracle 10g Einführung Kurs Oracle 10g Einführung Teil 2 Oracle 10g Express Edition (XE) Installation auf Windows XP GridAgenda Timo Meyer Administration von Oracle-Datenbanken Seite 1 von 50 Timo Meyer Sommersemester 2006 Seite

Mehr

Programmier-Befehle - Woche 09

Programmier-Befehle - Woche 09 Zeiger und Iteratoren Zeiger (generell) Adresse eines Objekts im Speicher Wichtige Befehle: Definition: int* ptr = address of type int; (ohne Startwert: int* ptr = 0;) Zugriff auf Zeiger: ptr = otr ptr

Mehr

Einführung in die Programmierung des VEX IQ mit ROBOTC. Kurzanleitung

Einführung in die Programmierung des VEX IQ mit ROBOTC. Kurzanleitung Einführung in die Programmierung des VEX IQ mit ROBOTC Kurzanleitung 0 Inhalt 0 Inhalt 2 1 ROBOTC herunterladen und installieren 3 2 ROBOTC Graphical Language 4 2.1 ROBOTC Graphical 4 2.2 ROBOTC Natural

Mehr

Datenblatt: TERRA MINISERVER G ,00. Chipsatz: Intel C232 / Sockel 1151 / Single-Prozessor-System. Zusätzliche Artikelbilder IT. MADE IN GERMANY.

Datenblatt: TERRA MINISERVER G ,00. Chipsatz: Intel C232 / Sockel 1151 / Single-Prozessor-System. Zusätzliche Artikelbilder IT. MADE IN GERMANY. Datenblatt: TERRA MINISERVER G3 Chipsatz: Intel C232 / Sockel 1151 / Single-Prozessor-System Die TERRA MINISERVER sind perfekt für Kleinstunternehmen oder kleine Abteilungen, die Wert auf zentrale Datenverwaltung

Mehr