2.6 Mikrocontroller-Beispiele

Größe: px
Ab Seite anzeigen:

Download "2.6 Mikrocontroller-Beispiele"

Transkript

1 2.6.1 ATmega128A - ein kompakter Mikrocontroller 8-Bit-Mikrocontroller Mitglied der AVR8-Familie ATmega Reihe größere Bauform als ATtiny ATtiny: DIL8, ATmega: QIL64, etwas erweiterter Prozessorkern 50% Reduktion des Energieverbrauchs zu ATmega128 1

2 Einordnung in die Familie ATtiny1X 2X 4X 8X ATmega 8X 16X 32X 64X 128X 256X AT90X AT94X Grundmodelle mit 1, 2, 4 oder 8 kbytes ROM. Je nach X unterschiedliche Versionen, z.b. ATtiny11 mit 6 MHz, ATtiny12 mit 8 MHz und ATtiny13 mit 20 MHz Taktfrequenz. Erweiterte Modelle mit 8 bis 256 kbytes ROM. Je nach X unterschiedliche Varianten, z.b. ATmega128A mit 4 kbytes RAM und ATmega1280 mit 8 kbytes RAM Spezialversionen, z.b. AT90CAN128 mit CAN-Bus-Einheit oder AT90PWM1 mit Pulsweitenmodulator Enthält programmierbare Logik (FPGA) 2

3 Prozessorkern - RISC-Architektur - Taktfrequenz bis 16 MHz - Harvard-Architektur mit 8 Bit Datenbus, 16 Bit Befehlsbus und 16 Bit Adressbus - 32 allgemeine 8 Bit Register, 6 davon paarweise als 16 Bit Indexregister nutzbar - 7 Adressierungsarten - Gemeinsame Adressierung (Memory Mapped IO) - 8 x 8 Bit Multiplikation Speicher - statisches RAM - FlashRAM - EEPROM 3

4 Zeitgeber und Ein-/Ausgabeeinheiten - 7 parallele Ein-/Ausgabeeinheiten, insgesamt 53 Bit - 2 synchrone serielle Ein-/Ausgabeeinheiten - 2 synchrone/asynchrone serielle Ein-/Ausgabeeinheiten Bit-Zähler/Zeitgeber mit Compare-Funktion und Pulsweitenmodulator Bit-Zähler/Zeitgeber mit Capture/Compare-Funktion und Pulsweitenmodulator - 1 Watchdog - 1 Analogvergleicher - 8 Digital/Analog-Wandlerkanäle, jeweils 10 Bit - 8-Bit-Erweiterungsbus im Daten-/Adressmultiplexing, 16 Bit Adressen - JTAG Test- und Debuginterface 4

5 Aufbau: Quarz Reset Unterbrechungen (0-3), Zähler/Zeitgeber, Serielle EA, Parallele EA Unterbrechungen (4-7), Zähler/Zeitgeber, Serielle EA, Parallele EA Parallele Schnittstelle D Parallele Schnittstelle E Unterbrechungen (INT0-INT7) FlashRAM 128 kbyte Takt Unterbrechungs- Steuerung Synchrone serielle Schnittstelle 1 (Two Wire) 2 x synchrone/ asynchrone serielle Schnittstellen (USART) EEPROM 4 kbyte Prozessorkern Erweiterungsbus Daten/Adressen (0-7) Adressen (8-15) Steuersignale 4 x Zähler/Zeitgeber (2 x 8 Bit, 2 x 16 Bit, Capture/Compare, Pulsweitenmodulator) Watchdog Synchrone serielle Schnittstelle 2 (SPI) RAM 4 kbyte Test/Debug Schnittstelle (JTAG) Analog/Digital Wandler Parallele Schnittstelle A Parallele Schnittstelle C Parallele Schnittstelle G Parallele Schnittstelle B Parallele Schnittstelle F Erweiterungsbus Daten / Adressen (0-7), Parallele EA Erweiterungsbus Adressen (8-15), Parallele EA Erweiterungsbus Steuersignale, Zähler/Zeitgeber, Parallele EA Serielle EA, Zähler/Zeitgeber, Parallele EA, Analoge EA, Testschnittstelle, Parallele EA,

6 Prozessorkern 2.6 Mikrocontroller-Beispiele Adress-, Daten- und Befehlsbusse des Prozessorkerns Harvard Architektur Direkte Verbindung zwischen ALU und Registersatz (RISC) Befehlsadressraum 64kWorte = 128 kbytes Taktfrequenz 16 MHz Programmzähler FlashRAM 128 kbyte (Programmspeicher) 16-Bit Befehlsbus Prozessorkern 16-Bit Adressbus EEPROM 4 kbyte (Datenspeicher) RAM 4 kbyte (Datenspeicher) ALU Registersatz Zähler/Zeitgeber Schnittstellen 8-Bit Datenbus 6

7 Programmiermodell: R0 PC Load/Store-Architektur RAMPZ (Bit0): Ansprechen der oberen oder unteren 64k Byte des Programmspeichers als Datum RAMPX, RAMPY beim ATmega128 nicht vorhanden (Datenspeicher 64 kbytes) R1 R2 R3... R13 R14... R26 R27 R28 R29 R30 R31 X-Register Low X-Register High Y-Register Low Y-Register High Z-Register Low Z-Register High Programmzähler (Program Counter) 7 0 SPL SPH Kellerzeiger (Stack Pointer) 7 0 PSW I T H S V N Z C Prozessorstatuswort (C = Carry, V = Overflow, Z = Zero, N = Negative, H = Half Carry, S = Sign, I = Interrupt Maske, T = Bit Copy) 7 0 RAMPX RAMPY RAMPZ 32 allgemeine Register Speichererweiterungsregister 7

8 Adressierungsarten: 2-Adress Format Rx = Rx + Ry (x, y {0.. 31}) Registerdirekt ADD R1,R0 R1 = R1 + R0 0C 10 Unmittelbar SUBI R16,$10 R16 = R16-10 h Adressdirekt LDS R1,($2000) R1 = (2000 h ) Registerindirekt LD R1,X R1 = (X) 90 1C Registerindirekt LD R1,X+ R1 = (X), X D (Postinc, Predec) 8

9 Registerindirekt LD R1,Y+5 R1 = (Y + 5) (Displacement) PC Relativ RJMP $10 PC = (PC + 10) C Befehle 8 und 16 Bit Ganzahl-Datentypen, Einzelbits Befehsbreite 16 Bit (Ausnahme adressdirekte Adressierung, dort 32 Bit) 9

10 SLEEP-Befehl für statisches Power-Management Betriebsarten: Idle Mode: ADC Noise Reduction Power Save Mode Power Down Mode Standby Mode Prozessorkern abgeschaltet Prozessorkern und Teil der Peripherie abgeschaltet Prozessorkern und alle Peripherie bis auf externe Unterbrechungen, Watchdog, eine serielle Schnittstelle und ein Zähler/Zeitgeber abgeschaltet wie Power Save, nur Zähler/Zeitgeber ebenfalls abgeschaltet wie Power Down, aber Taktgenerator bleibt zum schnellen Wiederanfahren aktiv Extended Standby Mode wie Power Save, aber Taktgenerator bleibt aktiv 10

11 Unterbrechungsbehandlung Einfacher Vektorinterrupt Vektoren fest den Komponenten und 8 externen Interrupt- Eingängen zugeordnet 35 Vektoren 70 Byte Vektortabelle (16 Bit pro Eintrag = Adressbreite) Vektortabelle am Anfang des Programmadressraums positioniert (0000 h 0044 h ), kann jedoch auch auf den Anfang des Boot-Bereiches verschoben werden Feste Prioritäten, globales Maskenbit (I-Bit), jede Quelle kann jedoch durch Steuerregister auch individuell maskiert werden 11

12 Adresse Vektor Priorität Unterbrechungsquelle 0000 h 1 hoch Rücksetzen 0002 h 2 Externer Interrupt-Eingang INT h 3 Externer Interrupt-Eingang INT h 4 Externer Interrupt-Eingang INT h 5 Externer Interrupt-Eingang INT3 000A h 6 Externer Interrupt-Eingang INT4 000C h 7 Externer Interrupt-Eingang INT5 000E h 8 Externer Interrupt-Eingang INT h 9 Externer Interrupt-Eingang INT h 10 Zähler/Zeitgeber 2 (8 Bit) Compare 0014 h 11 Zähler/Zeitgeber 2 (8 Bit) Überlauf 0016 h 12 Zähler/Zeitgeber 1 (16 Bit) Capture 0018 h 13 Zähler/Zeitgeber 1 (16 Bit) Compare A 001A h 14 Zähler/Zeitgeber 1 (16 Bit) Compare B 001C h 15 Zähler/Zeitgeber 1 (16 Bit) Überlauf 001E h 16 Zähler/Zeitgeber 0 (8 Bit) Compare 0020 h 17 Zähler/Zeitgeber 0 (8 Bit) Überlauf 0022 h 18 Synchrone serielle Schnittstelle 2 (SPI) 0024 h 19 Sync/async. Schnittstelle 1 (USART) empfangen 0026 h 20 Sync/async. Schnittstelle 1 (USART) leer 0028 h 21 Sync/async. Schnittstelle 1 (USART) senden 002A h 22 Analog/Digitalwandler 002C h 23 EEPROM bereit 002E h 24 Analogvergleicher 0030 h 25 Zähler/Zeitgeber 1 (16 Bit) Compare C 0032 h 26 Zähler/Zeitgeber 3 (16 Bit) Capture 0034 h 27 Zähler/Zeitgeber 3 (16 Bit) Compare A 0036 h 28 Zähler/Zeitgeber 3 (16 Bit) Compare B 0038 h 29 Zähler/Zeitgeber 3 (16 Bit) Compare C 003A h 30 Zähler/Zeitgeber 3 (16 Bit) Überlauf 003C h 31 Sync/async. Schnittstelle 2 (USART) empfangen 003E h 32 Sync/async. Schnittstelle 2 (USART) leer 0040 h 33 Sync/async. Schnittstelle 2 (USART) senden 0042 h 34 Synchrone serielle Schnittstelle 1 (Two Wire) 0044 h 35 niedrig Programmspeicher (FlashRAM) programmiert

13 Speicher und Adressraum h 0044 h Interrupt-Vektortabelle Internes FlashRAM 0000 h 0020 h 0060 h 0100 h 1100 h Registersatz EA-Register Externe EA- Register Internes RAM 4096 x 8 Bit 0000 h 0FFF h 0 7 EEPROM 4096 x 8 Bit Über EA-Register zugreifbar/ programmierbar 64k x 16 Bit Externes RAM Boot-Bereich: FFFF h Anwendungsbereich Interrupt-Vektortabelle Bootbereich konfigurierbare Größe, 512, 1024, 2048 oder 4096 Worte FFFF h nur dort können Befehle zum Schreiben des FlashRAMs ausgeführt werden => generisches Ladeprogramm über serielle oder Debugschnittstelle dort ladbar Programmspeicher Datenspeicher

14 EA-Einheiten, Zähler und Zeitgeber Digitale parallele EA Einheit Eingabe- Bits Ausgabe- Bits Bidirektion ale Bits Geteilt mit A Erweiterungsbus Daten/Adressen B Zähler/Zeitgeber, synchrone serielle E/A (SPI) C Erweiterungsbus Adressen D Ext. Unterbr. 0-3, Zähler/Zeitgeber, sync. /async. serielle E/A (USART, Two Wire) E Ext. Unterbr 4-7, Zähler/Zeitgeber, sync./async. serielle E/A (USART) F Analog/Digital-Wandler, Debugschnittstelle G Erweiterungsbus Steuersignale, Zähler/Zeitgeber 14

15 Digitale serielle EA RxD (Receive Data) TxD (Transmit Data) XCK (External Clock) RxD (Receive Data) TxD (Transmit Data) XCK (External Clock) Synchrone/Asynchrone serielle Schnittstelle 1 (USART) Synchrone/Asynchrone serielle Schnittstelle 2 (USART) Max. Baudrate USART: SPI: Two Wire 250 kbaud 4 MBaud 400 kbaud Synchrone serielle Schnittstelle 1 (Two Wire) SDA (Serial Data) SCL (Serial Clock) max 128 Teilnehmer MOSI (Master Out Slave In) Synchrone serielle Schnittstelle 2 (SPI) MISO (Master In Slave Out) SCK (Serial Clock) SS (Slave Select) 15

16 Analog/Digital-Wandler 2.6 Mikrocontroller-Beispiele interner Datenbus 8-Bit Kanalwahlregister 8 Bit Status/Steuerregister 8 Bit Ausgangsregister low 16 Bit Ausgangsregister high Digitalwert Wägeverfahren 10-Bit AD-Wandler 16 µsec Wandlungszeit 10 Bit Auflösung Analog- Signal 8 Kanäle Analog MUX Single oder Free Running Conversion Mode Analog In 7... Analog In 0 16

17 Zähler und Zeitgeber Programmierbarer Watchdog-Zähler Impulsausgang C von 16-Bit Zähler/Zeitgeber 1 Watchdog: 1 MHz Takt, 8 Stufen ( = 14msec 1,8sec) Watchdog Datenbus Reset 8 Bit Zähler +/- Zählerbus Impulsausgang von 8-Bit Zähler/Zeitgeber 2 Takt Vorteiler Compare-Interrupt Modulator (Und/Oder) Impulsausgang Modulator Modulator Externer Takt Interner Takt Modulator: Wahlweise Und bzw Oder Verknüpfung zweier Signale Compare-Register 8-Bit Zähler/Zeitgeber 0 8-Bit Zähler/Zeitgeber 2 Impulserzeuger Impulsausgang 17

18 Impulserzeuger: Datenbus 16 Bit Zähler +/- Zählerbus Takt Vorteiler Externer Takt Interner Takt Compare-Intterupt A erzeugt zahlreiche Impulsformen bei Compare-Ereignis, z.b. Ausgang setzen, rücksetzen, wechseln, setzen bei Compare und rücksetzen bei max. Zählerstand,... Compare-Register A Compare-Register B Compare-Register C Capture-Register Compare-Interrupt B Compare-Interrupt C Capture-Interrupt Impulserzeuger Impulserzeuger Impulserzeuger Flankenerkennung Impulsausgang A Impulsausgang B Impulsausgang C Capture-Eingang Analog-Vergleicher 16-Bit Zähler/Zeitgeber 1 16-Bit Zähler/Zeitgeber 3 18

19 Erweiterungsbus Kann über Steuerregister aktiviert und konfiguriert werden Bei aktivem Erweiterungsbus sind die geteilten parallelen EA- Einheiten nicht verfügbar Unterstützt variablen Adressraum Die Adressbits A8 A15 sind schrittweise zuschaltbar Nicht benutzte Adressbits stehen den parallelen EA-Einheiten zur Verfügung Wartezyklen (bis zu 3) beim Zugriff sind programmierbar 19

20 Aufbau des Erweiterungsbusses: Port C A 8 A 15 ATmega128 Port A Latch En A 0 A 7 ALE D 0 D 7 Port G RW WR RW WR 20

21 2.6.2 PXA 270 ein Hochleistungs-Mikrocontroller 32 Bit Mikrocontroller Weiterentwicklung der StrongARM Familie ARM Version 5TE RISC Prozessorkern Vielfältige Peripherie Wird z.b. gerne in portablen Geräten eingesetzt 21

22 Prozessorkern - skalare RISC-Architektur ARM Version 5TE - Taktfrequenz bis 624 MHz - 32-Bit-Datenbus, 32-Bit-Adressbus - Virtuelle Speicherverwaltung für Daten und Befehle - 32 KBytes Befehls-Cache - 32 KBytes Daten-Cache - 2 KBytes Mini-Daten-Cache zur Aufnahme von Datenströmen - Erweiterte Multiplikations-/Additionseinheit für Signalverarbeitung - komprimierbarer Befehlssatz - Multimedia Coprozessor - Ruhebetrieb 22

23 Speicher kbytes statischer Speicher (zusätzlich zu den bereits genannten Caches) - Schnittstelle für verschiedene Speichertypen (ROM, Flash- RAM, statisches RAM, dynamisches RAM, PC-Karten,...) Zeitgeber und Ein-/Ausgabeeinheiten Bit breite parallele Ein-/Ausgabe - 3 synchrone serielle Ein-/Ausgabeschnittstellen - 3 asynchrone serielle Ein-/Ausgabeschnittstelle, davon eine optimiert für den Bluetooth-Funkstandard - 1 serielle Infrarot-Schnittstelle - 2 USB-Schnittstellen 23

24 Zeitgeber und Ein-/Ausgabeeinheiten (fortg.) - 1 serielle I 2 C-Schnittstelle - 1 serielle Audio-Schnittstelle (I 2 S) - 1 Audiocontroller - 1 Highspeed Chip zu Chip Schnittstelle (Mobile Serial Link) - 1 Tastaturschnittstelle - 1 USIM (Universal Subscriber Identity Module) Schnittstelle für Mobiltelefonie - 1 Kameraschnittstelle - 1 LCD-Anzeigecontroller - 32 DMA-Kanäle 24

25 Zeitgeber und Ein-/Ausgabeeinheiten (fortg.) - 1 Echtzeit-Zähler - 1 Zähler mit 4 Compare-Einheiten und Watchdog-Funktion - 8 Zeitgeber - 4 Pulsweitenmodulatoren - vollständiger Erweiterungsbus mit 32 Bit Daten und 26 Bit Adressen 25

26 Aufbau: Quarz 256 KBytes statischer Speicher 32 KBytes Daten-Cache Prozessorkern ARM 5TE Multimedia Coprozessor Takt 32 KBytes Befehls- Cache 2 KBytes Mini-Daten- Cache Virtuelle Speicherverwaltung Daten Virtuelle Speicherverwaltung Befehle DMA-Controller Unter- brechungs- Steuerung Erweiterungs -bus/ Speichercontroller LCD- Controller Echtzeituhr, Zeitgeber, Watchdog PWM, USIM Serielle Schnittstellen Tastatur- Schnittstelle, Kamera- Schnittstelle, MSL, Audio- Controller Parallele Schnittstellen Interrupts, parallele EA Adr. Daten Steuersignale, parallele EA LCD-Anzeige, parallele EA Zeitgeber, Pulsweitenmodulator, USIM parallele EA Serielle EA, Kamera, Tastatur, parallele EA Audio- Schnittstelle, parallele EA

27 Prozessorkern Intel XScale Mikroarchitektur 7-stufige skalare Pipeline spekulative Befehlsausführung mit 2-Bit Sprungvorhersage ARM Version 5 Erweitert die im Vorgänger StrongARM verwendete ARM Version 4 um Codekompression und MAC-Einheit Mehrere Registerbänke, die je nach Betriebsart gewechselt werden 27

28 Benutzer und System R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 R14 R15 (PC) FIQ IRQ Supervisor Abbruch Undefiniert R0 R1 R2 R3 R4 R5 R6 R7 R8 fiq * R9 fiq * R10 fiq * R11 fiq * R12 fiq * R13 fiq * R14 fiq * R15 (PC) R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 irq * R14 irq * R15 (PC) R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 svc * R14 svc * R15 (PC) R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 abt * R14 abt * R15 (PC) R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 und * R14 und * R15 (PC) allgemeine Register Programmiermodell CPSR CPSR SPSR fiq * CPSR SPSR irq * PC : Programm Counter, Programmzähler CPSR : Current Program Status Register, Prozessorstatuswort SPSR : Saved Program Status Register, gerettetes Prozessorstatuswort CPSR SPSR svc * CPSR SPSR abt * CPSR SPSR und * Statusregister *: betriebsartspezifisches Register 28

29 Besonderheiten des Befehlssatzes: MAC-Einheit wie bei Signalprozessoren 32-Bit Standard RISC Befehlssatz 16-Bit komprimierter Thumb-Befehlssatz Für RISC eher untypisch viele Adressierungsarten 29

30 Acht Arbeitsmodi: Turbo-Modus: hohe Taktfrequenz Half-Turbo-Modus: halbe Taktfrequenz Normaler Modus: niedere Taktfrequenz, Umschaltung zu hoher Taktfrequenz in Nanosekunden Idle-Modus: Kern ist angehalten, Wecken durch Interrupt Deep-Idle-Modus: Wie Idle-Modus, jedoch bleiben nur Tastatur und LCD aktiv Standby-Modus: Kern und alle Komponenten bis auf Echtzeituhr, Takt und Power-Manager abgeschaltet, erniedrigte Versorgungsspannung 30

31 Acht Arbeitsmodi (fortg.): Sleep-Modus: Wie Standby, jedoch mit weiter reduzierter Versorgungsspannung, nur Echtzeituhr, Takt und Power- Manager und vom Benutzer definierte Komponenten bewahren ihren Zustand Deep-Sleep-Modus: Wie Sleep-Modus, nur Echtzeituhr, Takt und Power-Manager bewahren ihren Zustand 31

32 Unterbrechungsbehandlung Einfaches Unterbrechungssystem mit festen Vektoren 8 verschiedene Vektoren, davon 2 extern (IRQ, FIQ) Adresse Vektor Unterbrechungsquelle Priorität 0 h 0 Rücksetzen 1 4 h 1 Undefinierter Befehl 6 8 h 2 Software Interrupt 6 C h 3 Abbruch vorgezogener Datenzugriff 5 10 h 4 Abbruch Datenzugriff 2 14 h 5 Reserviert - 18 h 6 IRQ (Interrupt) 4 1C h 7 FIQ (Fast Interrupt) 3 32

33 FIQ (Fast Interrupt) erlaubt eine etwas kürzere Reaktionszeit auf einen Interrupt als IRQ Grund: Der Prozessorkern entnimmt der Vektortabelle nicht die Adresse der Behandlungsroutine Vielmehr springt er auf die Tabellenadresse. Dort muss dann ein Sprungbefehl zur Behandlungsroutine stehen => eher Sprungtabelle als Vektortabelle FIQ ist der letzte Eintrag der Tabelle. Daher muss hier kein Sprungbefehl stehen, die Behandlungsroutine kann sofort beginnen 33

34 Die Zuordnung der externen und internen Komponenten auf IRQ und FIQ erfolgt durch einen integrierten Interruptcontroller Unterbrechungsanforderungen der peripheren Komponenten... Maskenregister (ICMR) Zuordnungsregister (ICLR) IRQ FIQ Statusregister* (ICPR) * Existiert auch als ICIP und ICFP Register getrennt für IRQ und FIQ Welche Komponente hat die Unterbrechung ausgelöst? 34

35 Speicher und Adressraum Externer Speicher ist in Bänken zu je 64 MBytes organisiert h h h 0C h h h h h h h h Ext. statische Speicherbank 1 64 MBytes Ext. statische Speicherbank 2 64 MBytes Ext. statische Speicherbank 3 64 MBytes Ext. statische Speicherbank 4 64 MBytes Ext. statische Speicherbank 5 64 MBytes Ext. statische Speicherbank 6 64 MBytes Reserviert 2 x 64 MBytes PCMCIA Slot 1 4 x 64 MBytes PCMCIA Slot 2 4 x 64 MBytes Interne Komponenten, interner Speicher 8 x 64 MBytes Reserviert 16 x 64 MBytes A h Ext. dynamische Speicherbank 1 64 MBytes A h Ext. dynamische Speicherbank 2 64 MBytes A h Ext. dynamische Speicherbank 3 64 MBytes AC h Ext. dynamische Speicherbank 4 64 MBytes B h FFFFFFFF h Reserviert 20 x 64 MBytes

36 EA-Einheiten, Zähler und Zeitgeber Digitale parallele EA 119 parallele E/A-Bits, Richtung einzelbitweise festlegbar Jedes Bit kann als Interrupt-Eingang genutzt werden Digitale serielle EA 3 asynchrone serielle Schnittstellen (Standard, Bluetooth, Modem) 3 synchrone serielle Schnittstellen Spezielle serielle Schnittstellen (Fast Infrared, USB, I 2 C, I 2 S) 36

37 FIFOs (64 Bytes) FIFOs (64 Bytes) FIFOs (64 Bytes) RI (Ring Indicator) DCD (Data Carrier Detect) DSR (Data Set Ready) DTR (Data Terminal Ready) CTS (Clear to Send) RTS (Request to Send) RxD (Receive Data) TxD (Transmit Data) CTS (Clear to Send) RTS (Request to Send) RxD (Receive Data) TxD (Transmit Data) RxD (Receive Data) TxD (Transmit Data) 2.6 Mikrocontroller-Beispiele Asynchrone serielle Schnittstellen Schnittstelle 1 (Standard) Schnittstelle 2 (Bluetooth) Schnittstelle 3 (Modem) 37

38 EXTCLK (External Serial Clock)) CLKEN (Internal Clock Eneblae) CLK (Internal Serial Clock) FRM (Frame) RxD TxD LR (Left/Right) CLK (Bit Clock) SDI (Serial Data In) SDO (Serial Data Out) SLC (Serial Clock) SDA (Serial Data/Address) USB- USB+ RxD TxD 2.6 Mikrocontroller-Beispiele synchrone und spezielle serielle Schnittstellen Infrarot USB I 2 C I 2 S SSP1,2,3 geteilt mit asynchroner Schnittstelle 1 (Standard) geteilt mit Audio-Controller 38

39 Stereo-Datenübertragung zwischen Audio-Bausteinen über die I 2 S Schnittstelle Bit Clock Serial Data 1 rechter Kanal 32 1 linker Kanal 32 1rechter Kanal 32 1 linker Kanal Left/Right... Stereodaten i Stereodaten i+1 39

40 Audio-Controller (Abspielen und Aufnehmen von Audiosignalen im PCM-Format) LCD Controller Bilddaten im externen Speicher DMA- Controller FIFO LCD-Controller Farbpalette Dithering Ausgabesteuerung Bildpunkte Steuersignale Anzeige 40

41 Zähler und Zeitgeber 2.6 Mikrocontroller-Beispiele Systemtakt Echtzeituhr Vorteiler Feinjustierung 1 Hz Ausgang 1 Hz Takt Echtzeit- Zähler 32 Bit (freilaufend) Echtzeit- Zähler 32 Bit (freilaufend) Compare- Register (Alarm) Compare- Register (Alarm) Echtzeit- Unterbrechung Echtzeit- Unterbrechung 100 Hz Takt Echtzeit- Zähler 32 Bit (freilaufend) Compare- Register (Alarm) Echtzeit- Unterbrechung 1 khz Takt Echtzeit- Zähler 32 Bit (freilaufend) Compare- Register (Alarm) Echtzeit- Unterbrechung PXA255 Kompatibilitäts- Zeitgeber Zähler 32 Bit (freilaufend) 4 x Compare- 4 Compare- Register 4 Compare- Register 4 Compare- Register Register Unterbrechung 1-4, Watchdog Ereignis Betriebssystem-Zeitgeber 8 x Prog. prog. Vorteiler Prog. Prog. Vort Prog. Vor Prog. Vortei Prog. Vortei Prog. Vortei Vo 8 x Zähler Compare- 32 Compare- Bit Register (freilaufend) Compare- 1-8 Register Compare- 1-8 Register Compare- 2 Register Compare- 3 Register Compare- 4 Register 1-8 Register x Compare- Compare- Register Compare- Register Compare- 1-8 Register Compare- 1-8 Register Compare- 2 Register Compare- 3 Register Compare- 4 Register 1-8 Register 1-8 Unterbrechung 5-12 Pulsweitenmodulator Pulsweitenmodulator 1-4 Pulsweitenmodulator Pulsweiten- 1-4 Pulsweitenmodulator x modulator PWM Ausgang

42 DMA-Controller DREQ1 Externe Eingänge 1 und 2 5 Bit DRCMR0 Zuordnung DREQ2 DRCMR1 DMA-Kanal 0 Steuerregister Interne DMA-Anforderung 1... DRCMR2 Asynchrone serielle Schnittstellen, synchrone serielle Schnittstelle, I2C, I2S, USB, Audio Controller... Interne DMA-Anforderung DRCMR73... DMA-Kanal 31 Steuerregister DREQ3 Externer Eingang 3 DRCMR74 DMA Controller 32 Kanäle, frei den internen und drei externen Komponenten zuordenbar 42

43 Bedienung der DMA Gruppen im Round Robin Verfahren Gruppe Kanäle Priorität Bedienhäufigkeit 1 0,1,2,3,16,17,18,19 hoch 4 2 4,5,6,7,20,21,22,23 mittel 2 3 8,9,10,11,24,25,26,27 nieder ,13,14,15,28,29,30,31 nieder 1 Gruppen

44 Erweiterungsbus 26-Bit Adressbus 32-Bit Datenbus Steuerbus - zum Anschluss von 6 statischen Speicherbänken à 64 MBytes - zum Anschluss von 4 dynamischen Speicherbänken à 64 MBytes - zum Anschluss einer PC-Kartenschnittstelle (PCMCIA) 44

45 PXA270 CS1 Statische Speicherbank 1 (64 Mbytes) CS2 Statische Speicherbank 2 (64 Mbytes) CS3 Statische Speicherbank 3 (64 Mbytes) CS4 Statische Speicherbank 4 (64 Mbytes) CS5 Statische Speicherbank 5 (64 Mbytes) Speicher-Controller CS6 Daten (D 0 D 31 ) Adressen (A 0 A 25 ) Steuersignale Statische Speicherbank 6 (64 Mbytes) (D 0 D 15 ) PC-Kartenschnittstelle Multiplex DCS1 Dynamische Speicherbank 1 (64 Mbytes) DCS2 Dynamische Speicherbank 2 (64 Mbytes) DCS3 Dynamische Speicherbank 3 (64 Mbytes) DCS4 Dynamische Speicherbank 4 (64 Mbytes)

46 2.6.3 MCore - optimiert für niedrigen Energieverbrauch Architektur bzw. Mikroarchitektur eines Prozessorkerns Primäres Ziel: niedriger Energieverbrauch Wird in verschiedenen Mikrocontrollerns verwendet, z.b. MMC2001, MMC2003, MMC2107, MMC2114,... Wir wollen uns hier auf die Energiespartechniken im Prozessorkern konzentrieren 46

47 Eigenschaften: skalare RISC Architektur Load/Store Konzept 32 Bit Datenbus, Register und Ausführungseinheiten 32 Bit Adressbus Feste 16 Bit Befehlslänge 4-stufige Pipeline 2 Registersätze mit je 16 Registern zum schnellen Kontextwechsel 8-, 16- und 32-Bit Datentypen Statisches und dynamisches Power-Management Statisches CMOS Design (bis 0 Hz Taktfrequenz) 33 MHz maximale Taktfrequenz 1,8 bis 3,6 Volt Versorgungsspannung 47

48 Operationswerk Steuerwerk Low-Power Betriebsart (LPMD) Registersatz Allgemeiner Registersatz 16 x 32 Bit Alternativer Registersatz 16 x 32 Bit Steuerregistersatz 13 x 32 Bit Betriebsartensteuerung Statisches Power- Management Verringerung der Busaktivitäten Multiplizierer, Dividierer, Barrel-Shifter Dynamisches Power- Management Befehls-Pipeline: 1. Befehl holen 2. Befehl decodieren / Register lesen 3. Befehl ausführen 4. Register schreiben Dynamisches Power-Management, Code-Dichte Addierer, Subtrahierer, Logische Operationen, Lade- und Speicheroperationen Dynamisches Power- Management Adresserzeugung Code-Dichte MCore Verringerung der Busaktivitäten Datenbus Adressbus 48

49 Reduktion der Busaktivitäten und Erhöhung der Code-Dichte Benutzer Supervisor Reduktion der externen Busaktivitäten durch reichhaltigen Registersatz R0 (SP) R1 R2 R3 R4 R5 R6 R7 R0 (SP) R1 R2 R3 R4 R5 R6 R7 R0* R1* R2* R3* R4* R5* R6* R7* CR0 CR1 CR2 CR3 CR4 CR5 CR6 CR7 R8 R8 R8* CR8 R9 R9 R9* CR9 R10 R10 R10* CR10 R11 R11 R11* CR11 R12 R12 R12* CR12 R13 R14 R13 R14 R13* R14* 0 31 R15 R15 R15* C C PC PC 49

50 Hohe Code-Dichte durch 16-Bit Befehlssatz Befehlscode Rx Adressierung mit einem Register Befehlscode Ry Rx Adressierung mit zwei Registern Befehlscode Immediate Rx Befehlscode Displacement Adressierung mit Register und unmittelbarer Konstanten Adressierung mit Displacement Befehlscode Rx Displacement Adressierung mit Register und Displacement Rx = Register R0... R15 50

51 Statisches Power Management Voll statisches Steuerwerk, bis zu 0 Hz Taktfrequenz Niedere Versorgungsspannung von 1.8 Volt Spezialbefehle und Ausgangssignale (LPMD = low power mode) um nicht benötigte Komponenten abzuschalten Modus (Befehl) LPMD1 LPMD0 Stop 0 0 Wait 0 1 Doze 1 0 Run

52 Dynamisches Power Management Power Aware Pipeline Die Pipeline erkennt und deaktiviert gerade nicht benötigte Komponenten Eine Addition aktiviert z.b. den Addierer, deaktiviert aber den Barrel-Shifter Unterschiedliche Datengrößen werden unterstützt Für 8 und 16 Bit Operationen werden unbenutzte Teile der internen 32 Bit Datenpfade und Verarbeitungseinheiten abgeschaltet 52

53 Gesamtverteilung des Energiebedarfs im Prozessorkern Taktleitungen: Datenpfade: Steuerlogik: 36% des gesamten Energiebedarfs 36% des gesamten Energiebedarfs 28% des gesamten Energiebedarfs => Optimierung der Taktleitungen und Sperrung von Teilen des Takt-Baumes (Clock Gating) kann viel Energie einsparen Die Pipeline sperrt z.b. den Takt für einige Komponenten während dem Auftreten von Pipeline-Hazards 53

54 2.6.4 Komodo - ein Forschungs-Mikrocontroller Java einfache Programmierung, Threads Echtzeit Zeitbedingungen, Scheduling Mehrfädige Prozessortechnik schneller Kontextwechsel Komodo Mikrocontroller Java Prozessor, mehrfädige Hardware, Thread-basierte Unterbrechungsbehandlung, Middleware 54

55 Das Komodo-Projekt ist in fünf Ebenen gegliedert Anwendung Middleware OSA+ Standard Klassen Driver.Klassen Garbage Collection Heap Traps Mem. Klasse Ethreads. Klasse Prioritäts- Manager Multithreading Komodo- Mikrocontroller Signal Einheit I/O Einheit Der Mikrocontroller ist die niedrigste Ebene 55

56 Prozessorkern mehrfädige 32 Bit Architektur bis zu 4 Hardware-Threads direkte Ausführung von Java Bytecode thread-basierte Unterbrechungsbehandlung extrem schneller Kontextwechsel (0 Taktzyklen) Speicher Schnittstelle für externen Arbeitsspeicher Datentransferpuffer für Ein-/Ausgabedaten Zeitgeber und Ein-/Ausgabeeinheiten 1 parallele und 2 serielle Ein-/Ausgabeschnittstellen 1 Capture- und Compare-Einheit 1 Zähler- und Zeitgebereinheit 56

57 Architektur des Komodo-Mikrocontrollers Quarz Prozessorkern Takt mehrfädige Java Pipeline Ein-/Ausgabe- Einheit Signal- Einheit Datentransfer- Puffer Speicherschnittstelle Weck-Einheit Parallele Ein- /Ausgabe- Einheit Serielle Ein- /Ausgabe- Einheit Capture- /Compare- Einheit Zähler- /Zeitgeber- Einheit Externer Speicher Externe Ereignisse Parallele EA Serielle EA Einfangen/Treffer Zählen/Takt 57

58 Prozessorkern Java Prozessor Ausführung von Java Bytecode direkt in Hardware (Einfache Bytecodes) Mikrocode (mittel-komplexe Bytecodes) Trap Routinen (komplexe Bytecodes) Stack-Register-Satz Hardware-Unterstützung für Garbage Collection 58

59 Mehrfädiger Prozessor Kann mehr als einen Thread gleichzeitig in der Pipeline verarbeiten Besitzt mehrere Programmzähler und Registersätze Extrem schneller Kontextwechsel Latenzen bei der Ausführung eines Threads können durch Instruktionen aus anderen Threads überbrückt werden Befehl holen Befehl dekodieren Stackadresse berechnen Stack- Zugriff Befehl ausführen, Speicherzugriff Thread-Kennung Thread-Kennung Thread-Kennung Thread-Kennung Thread-Kennung Befehl 5 (aus Thread 4) Befehl 4 (aus Thread 3) Befehl 3 (aus Thread 3) Befehl 2 (aus Thread 2) Befehl 1 (aus Thread 1) 59

60 Speicherschnittstelle Adressen Daten Adressen Befehle Mikrocode ROM Befehlsholeinheit PC1 PC2 PC3 PC4 IW1 IW2 IW3 IW4 Prioritätenmanager Befehlsdecodiereinheit Operandenholeinheit RS1 RS2 RS3 RS4 Speicherzugriffseinheit Ausführungseinheit Ein-/Ausgabezugriffseinheit Signaleinheit Peripherie- Signale... Adressen Daten Ein-/Ausgabeschnittstelle Mikroarchitektur: Mehrfädig (0 Takte Kontextwechsel) Bis zu 4 Hardware Threads Prioritäten-Manager für Echtzeit-Scheduling (in Hardware) Signaleinheit für externe Komponenten Stackregistersätze 60

61 Echtzeit-Scheduling Erfolgt in Hardware durch den Prioritäten-Manager 2 Ebenen Scheduling: 1. Ebene: ordnet den Threads gemäß Echtzeit- Scheduling Prioritäten zu 2. Ebene: wählt den Thread höchster Priorität, der gerade keine Latenz besitzt => Kombination von Echtzeit-Scheduling und Latenzzeitnutzung 61

62 Unterstützte Echtzeit-Scheduling Verfahren: Fixed Priority Preemptive (FPP) Earliest Deadline First (EDF) Least Laxity First (LLF) Guarantied Percentage (GP) Das Scheduling wird in Hardware durchgeführt, um eine Entscheidung in einem Taktzyklus zu erlauben 62

63 Guaranteed Percentage Scheduling weist einem Thread einen garantierten Prozentsatz der Prozessorleistung zu, garantiert dies in einem kurzen Intervall Thread A, 30% Thread B, 20% Thread C, 40%... Thread A 30 Taktzyklen Thread B 20 Taktzyklen Thread C 40 Taktzyklen Thread A 30 Taktzyklen Thread B 20 Taktzyklen Thread C 40 Taktzyklen Taktzyklen 100 Taktzyklen 63

64 Klassen: Exakt Minimum Maximum ein Thread erhält genau den geforderten Prozentsatz ein Thread erhält mindestens den geforderten Prozentsatz ein Thread erhält höchstens den geforderten Prozentsatz Die Summe der geforderten Prozentsätze der Klassen Exakt und Minimum darf 100 % nicht überschreiten Der Latenzgewinn über 100% kann von der Klasse Maximum genutzt werden 64

65 Vorteile von GP: strikte zeitliche Isolation der Threads Garantierte Antwortzeiten und Datenraten für mehrere Threads Einfache Erkennung von Überlast (>100%) Ermöglicht Debug-Threads ohne Veränderung des Echtzeit- Verhaltens Fein-granulare Realisierung auf einem mehrfädigen Prozessorkern 65

66 Unterbrechungsbehandlung Standard Echtzeit-Ereignisbehandlung: Interrupt Service Routinen (ISR) mit festen Prioritäten (FPP) Nicht-optimale Prozessorausnutzung (< 100%) Blockierung niederpriorer Ereignisse Komplexe Programme, schwer zu testen 66

67 Komodo benutzt Interrupt Service Threads (IST) Ein Ereignis aktiviert direkt einen zugeordneten Hardware-Thread im mehrfädigen Prozessorkern Ereignisse werden durch Java Threads behandelt Die Aktivierung erfolgt per Hardware (der Signaleinheit) Jeder IST wird in einen Thread-Slot des mehrfädigen Prozessorkerns geladen 67

68 Vorteile: Interrupt Service Threads passen perfekt in das Thread Konzept von Java. Ereignisse lassen sich wie alle anderen Aufgaben einheitlich mittels Java Threads behandeln. Die direkte Aktivierung per Hardware vermeidet Verzögerungszeiten. Alle Threads inklusive der Interrupt Service Threads unterliegen einem einheitlichen, hardwareunterstützten Scheduling. Es können flexible Kontextwechsel zwischen Interrupt Service Threads und anderen Threads stattfinden. Schedulingverfahren wie EDF, LLF oder GP erlauben eine Prozessorauslastung von 100 Prozent 68

69 Verküpfung von Ereignissen und Threads durch die Signaleinheit Verbindungsmatrix mit Steuer- und Statusregister Steuerregister Statusregister Pweripherie-Signale (Ereignisse) Thread 1 Thread 2 Thread 3 Thread 4 69

70 Anbindung der periphere Komponenten Einfach (kein Forschungsschwerpunkt in diesem Projekt) Daisy Chain Ein-/Ausgabe- Zugriffseinheit Serielle Schnittstelle 1 Serielle Schnittstelle 2 Parallele Schnittstelle Zähler- /Zeitgeber Capture/ Compare Datentransferpuffer Ein-/Ausgabebus: Daten / Adressen / Steuersignale Prozessorkern 70

71 Datentransferpuffer entlastet den Prozessorkern von der Aufgabe der Datenübertragung da die Zeitbedingungen für die Datenübertragung und Datenverarbeitung meist unterschiedlich sind, müsste anderenfalls ein eigener Thread zur Datenübertragung oder ein Thread mit wechselnden Zeitbedingungen für Übertragung und Verarbeitung eingesetzt werden 71

72 Evaluierungs-Ergebnisse Leistungsgewinn durch den mehrfädigen Ansatz für die Echtzeit- Scheduling Verfahren FPP, EDF, LLF and GP Lastprogramm FFT PID-Regler Impulszähler (ca. 6 Millionen Befehle) (ca Befehle) (ca. 10 Befehle) Modelle Einfädig (Standard Prozessor, 100 Takte Kontextwechselzeit) Mehrfädig mit 0 Takte Kontextwechselzeit, aber keiner Latenzzeitnutzung Mehrfädig mit Latenzzeitnutzung 72

73 Threads mit ähnlichen Deadlines (4 * Impulszähler) : Einfädig Mehrfädig, ohne Latenzzeitnutzung 3,00 Mehrfädig, mit Latenzzeitnutzung 2,50 2,00 Gewinn 1,50 1,00 0,50 0,00 FPP EDF GP LLF 73

74 Für einfädige Prozessorkerne kein Leistungsunterschied zwischen einfachem FPP und komplexeren EDF. Ursache: einfacher Impulszähler GP und LLF fallen hier ab. Ursache: häufige Kontextwechsel Mehrfädiger Prozessorkern ohne Latenzzeitnutzung eliminiert diesen Nachteil. Leistungssteigerung um Faktor 1,45 Mehrfädigen Prozessorkern mit Latenzzeitnutzung steigert den Gewinn. GP und LLF effizienter als FPP und EDF. Ursache: Anzahl aktiv-bleibender Threads. 74

75 T1 T2 Kontextwechsel d1 d2 d3 Deadlines T1 T2 Kontextwechsel d1 d2 d3 Deadlines T3 d4 T3 d4 T4 T Anzahl aktive Threads Anzahl aktive Threads a: FPP und EDF Scheduling b: GP und LLF Scheduling 75

76 Threads mit verschiedenen Deadlines : Einfädig Mehrfädig, ohne Latenzzeitnutzung 3,00 Mehrfädig, mit Latenzzeitnutzung 2,50 2,00 Gewinn 1,50 1,00 0,50 0,00 FPP EDF GP LLF 76

77 Für den einfädigen Prozessorkern bestätigt sich zunächst das Ergebnis der ersten Evaluation: GP und LLF schneiden schlecht ab Durch die komplexere Last: Unterschiede zwischen dem einfachen FPP und dem leistungsfähigeren EDF Dies gilt auch für den mehrfädigen Prozessorkern ohne Latenzzeitnutzung. GP fällt durch die schwierige Wahl geeigneter Prozentsätze ab. Beim mehrfädigen Prozessorkern mit Latenzzeitnutzung liefert wie bei der ersten Evaluierung LLF hervorragende Ergebnisse. Auch GP kann die Latenzen sehr gut verwerten, verliert aber durch die oben genannten Probleme 77

78 Weiterführende Konzepte Problem: Pipeline-Hemmnisse oder Locks verringern den Durchsatz, zeitliche Vorhersagbarkeit (Echtzeit) wird erschwert Durchsatz = Anzahl Befehle / Anzahl Taktzyklen (IPC, Instructions per Cycle) Beispiel Komodo, GP-Scheduling, Klasse Exakt, GP = 30% idealerweise IPC = 30 / 100 = 0,3 treten jedoch z.b. 5 Latenzzyklen auf IPC = 25 / 100 = 0,25 78

79 Abhilfe: Einsatz eines geschlossenen Regelkreises Sollwert - Stellwert PID- Regler Neuer GP-Prozentsatz Komodo- Prozessorkern Istwert Messung des Durchsatze s Regelung des Durchsatzes mittels eines PID-Reglers 79

80 Modifizierte Komodo- Pipeline Adressen Befehle Befehlsholeeinheit PC1 PC2 PC3 PC4 Peripherie- Signale Speicherschnittstelle PID- Regler Mikrocode ROM IW1 IW2 IW3 IW4 Prioritätenmanager Befehlsdecodiereinheit Operandenholeeinheit Signaleinheit... Ein-/Ausgabeschnittstelle Adressen Daten Speicherzugriffseinheit Ausführungseinheit Ein-/Ausgabezugriffseinheit Adressen Daten RS1 RS2 RS3 RS4 Stack-Registersätze 80

81 Durchsatz eines Erzeuger- Threads in einem Erzeuger/ Verbraucher- Benchmark GP = 0,49 keine Regelung 81

82 Durchsatz eines Erzeuger- Threads in einem Erzeuger/ Verbraucher- Benchmark GP = 0,49 PID- Regler 82

83 Verbleibendes Problem: Kurzfristige Änderungen der IPC-Rate können nicht kompensiert werden, da der Regler nicht in die Zukunft blicken kann Idee: Vorhersage der Latenzen für das nächste 100 Taktzyklen- Intervall Verbesserung des Regelverhaltens Vorgehensweise: Aufteilung des Programms in Basic Blocks (von Sprung zu Sprung) Lineare Analyse vor Programmstart Sprungvorhersage für bedingte Sprünge am Blockende 83

84 Programmzähler zu Beginn des Intervalls Latenzzähler = 0 2 Latenzen Latenzzähler = 2 Sprungbefehl Sprungvorhersage: Sprung genommen 3 Latenzen Latenzzähler = 5 Sprungbefehl Sprungvorhersage: Sprung genommen 3 Latenzen Latenzzähler =

85 Durchsatz eines Erzeuger- Threads in einem Erzeuger/ Verbraucher- Benchmark GP = 0,49 PID- Regler + Latenz-Prädiktor 85

Rechnerarchitektur Atmega 32. 1 Vortrag Atmega 32. Von Urs Müller und Marion Knoth. Urs Müller Seite 1 von 7

Rechnerarchitektur Atmega 32. 1 Vortrag Atmega 32. Von Urs Müller und Marion Knoth. Urs Müller Seite 1 von 7 1 Vortrag Atmega 32 Von Urs Müller und Marion Knoth Urs Müller Seite 1 von 7 Inhaltsverzeichnis 1 Vortrag Atmega 32 1 1.1 Einleitung 3 1.1.1 Hersteller ATMEL 3 1.1.2 AVR - Mikrocontroller Familie 3 2 Übersicht

Mehr

Der Mikrocontroller beinhaltet auf einem Chip einen kompletten Mikrocomputer, wie in Kapitel

Der Mikrocontroller beinhaltet auf einem Chip einen kompletten Mikrocomputer, wie in Kapitel 2 Der Mikrocontroller Der Mikrocontroller beinhaltet auf einem Chip einen kompletten Mikrocomputer, wie in Kapitel 1 beschrieben. Auf dem Chip sind die, ein ROM- für das Programm, ein RAM- für die variablen

Mehr

Einführung in die Welt der Microcontroller

Einführung in die Welt der Microcontroller Übersicht Microcontroller Schaltungen Sonstiges Einführung in die Welt der Microcontroller Übersicht Microcontroller Schaltungen Sonstiges Inhaltsverzeichnis 1 Übersicht Möglichkeiten Einsatz 2 Microcontroller

Mehr

BLIT2008-Board. Uwe Berger

BLIT2008-Board. Uwe Berger 11/2008 (BLIT) 2 Inhalt Was sind Mikrocontroller AVR-Mikrocontroller Werkzeugkasten Prinzipielles zur Programmierung BLIT2008-Board 11/2008 (BLIT) 3 Was sind Mikrocontroller AVR-Mikrocontroller Werkzeugkasten

Mehr

Die Mikroprogrammebene eines Rechners

Die Mikroprogrammebene eines Rechners Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl holen Befehl dekodieren Operanden holen etc.

Mehr

Mikrocontroller - Tipps & Tricks

Mikrocontroller - Tipps & Tricks Mikrocontroller - Tipps & Tricks Mikrocontroller vs. CPU CPU alles RAM, viel RAM Keine On-Chip Peripherie Viele Chips, Motherboard Mikrocontroller Wenig RAM, Flash im Chip mit drin Peripherie an Board

Mehr

Name: ES2 Klausur Thema: ARM 25.6.07. Name: Punkte: Note:

Name: ES2 Klausur Thema: ARM 25.6.07. Name: Punkte: Note: Name: Punkte: Note: Hinweise für das Lösen der Aufgaben: Zeit: 95 min. Name nicht vergessen! Geben Sie alle Blätter ab. Die Reihenfolge der Aufgaben ist unabhängig vom Schwierigkeitsgrad. Erlaubte Hilfsmittel

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

Atmel AVR für Dummies

Atmel AVR für Dummies Atmel AVR für Dummies [email protected] 29.12.2005 Übersicht 1 Hardware Kurzvorstellung Atmega8 Programmierkabel (Eigenbau vs. Kommerzlösung) Alternative: Bootloader (Programmieren via rs232) Software Speicher

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

Mikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit)

Mikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit) Der Demo-Computer besitzt einen 4Bit-Mikroprozessor. Er kann entsprechend Wörter mit einer Breite von 4 Bits in einem Schritt verarbeiten. Die einzelnen Schritte der Abarbeitung werden durch Lampen visualisiert.

Mehr

L3. Datenmanipulation

L3. Datenmanipulation L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus

Mehr

Johann Wolfgang Goethe-Universität

Johann Wolfgang Goethe-Universität Flynn sche Klassifikation SISD (single instruction, single data stream): IS IS CU PU DS MM Mono (Mikro-)prozessoren CU: Control Unit SM: Shared Memory PU: Processor Unit IS: Instruction Stream MM: Memory

Mehr

Mikroprozessor als universeller digitaler Baustein

Mikroprozessor als universeller digitaler Baustein 2. Mikroprozessor 2.1 Allgemeines Mikroprozessor als universeller digitaler Baustein Die zunehmende Integrationsdichte von elektronischen Schaltkreisen führt zwangsläufige zur Entwicklung eines universellen

Mehr

Teil VIII Von Neumann Rechner 1

Teil VIII Von Neumann Rechner 1 Teil VIII Von Neumann Rechner 1 Grundlegende Architektur Zentraleinheit: Central Processing Unit (CPU) Ausführen von Befehlen und Ablaufsteuerung Speicher: Memory Ablage von Daten und Programmen Read Only

Mehr

Rechnerstrukturen. 6. System. Systemebene. Rechnerstrukturen Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1. Prozessor.

Rechnerstrukturen. 6. System. Systemebene. Rechnerstrukturen Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1. Prozessor. Rechnerstrukturen 6. System Systemebene 1 (Monoprozessor) 2-n n (Multiprozessor) s L1- in der L2- ( oder Motherboard) ggf. L3- MMU Speicher Memory Controller (Refresh etc.) E/A-Geräte (c) Peter Sturm,

Mehr

6. Peripheriegeräte und Schnittstellen

6. Peripheriegeräte und Schnittstellen Abb. 6.1: Tastatur und Tastaturschnittstelle Abb. 6.2: Tastatur-SDU und Belegung der Stecker Abb. 6.3: Die Scan-Codes der MF-II-Tastatur Tastatur Tastaturkontaktmatrix Tastaturprozessor Tastaturkabel 11

Mehr

TBE332 Controller. Produktbeschreibung

TBE332 Controller. Produktbeschreibung TBE332 Controller Produktbeschreibung Bei der Entwicklung der TBE332 Steuerung wurde auf die Erfahrung unserer jahrelangen Planung und Realisierung verschiedenster Steuerungs- und Regelungseinrichtungen

Mehr

Hardwareaufbau der Mikrocontroller der 51er -Familie

Hardwareaufbau der Mikrocontroller der 51er -Familie Hardwareaufbau der Mikrocontroller der 51er -Familie Mikrocontroller (51er Familie) Quarz Port Timer A D Serielle Schnittst. CPU ROM RAM Ext. ROM Ext. RAM Programmspeicher (ROM) Datenspeicher (RAM) FFFFh

Mehr

Ein- Ausgabeeinheiten

Ein- Ausgabeeinheiten Kapitel 5 - Ein- Ausgabeeinheiten Seite 121 Kapitel 5 Ein- Ausgabeeinheiten Am gemeinsamen Bus einer CPU hängt neben dem Hauptspeicher die Peripherie des Rechners: d. h. sein Massenspeicher und die Ein-

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

Interrupts. Funktionsprinzip. Funktionsprinzip. Beispiel in C

Interrupts. Funktionsprinzip. Funktionsprinzip. Beispiel in C Interrupts Funktionsprinzip Interrupts bei ATmega128 Beispiel in C Funktionsprinzip 1 Was ist ein Interrupt? C muss auf Ereignisse reagieren können, z.b.: - jemand drückt eine Taste - USART hat Daten empfangen

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

SPI Serial Peripheral Interface

SPI Serial Peripheral Interface SPI Serial Peripheral Interface Physik- Seminar Universität Koblenz-Landau Christian Büch 27. Juni 2006 Einleitung SPI bedeutet Serial Peripheral Interface zu Deutsch serielle Peripherie Schnittstelle

Mehr

Serielle Kommunikation mit dem Arduino. Teil 1: Das Serial Peripheral Interface (SPI)

Serielle Kommunikation mit dem Arduino. Teil 1: Das Serial Peripheral Interface (SPI) Serielle Kommunikation mit dem Arduino Teil 1: Das Serial Peripheral Interface (SPI) Axel Attraktor e.v. 4. Juni 2012 Axel (Attraktor e.v.) 5. Arduino-Stammtisch 4. Juni 2012 1 / 25 Serielle Kommunikation

Mehr

a. Flipflop (taktflankengesteuert) Wdh. Signalverläufe beim D-FF

a. Flipflop (taktflankengesteuert) Wdh. Signalverläufe beim D-FF ITS Teil 2: Rechnerarchitektur 1. Grundschaltungen der Digitaltechnik a. Flipflop (taktflankengesteuert) Wdh. Signalverläufe beim D-FF b. Zähler (Bsp. 4-Bit Zähler) - Eingang count wird zum Aktivieren

Mehr

Smart Metering: Entwicklung eines intelligenten Stromzählers

Smart Metering: Entwicklung eines intelligenten Stromzählers Smart Metering: Entwicklung eines intelligenten Stromzählers Boppard, Echtzeit 2010 Steffen Mauch Dirk Benyoucef 19. Nov. 2010 DCSP-Lab Gliederung 1 Kontext 2 Arbeit 3 Ergebnisse / Bewertung 4 Zusammenfassung

Mehr

3.0 8051 Assembler und Hochsprachen

3.0 8051 Assembler und Hochsprachen 3.0 8051 Assembler und Hochsprachen Eine kurze Übersicht zum Ablauf einer Programmierung eines 8051 Mikrocontrollers. 3.1 Der 8051 Maschinencode Grundsätzlich akzeptiert ein 8051 Mikrocontroller als Befehle

Mehr

Mikrocontrollerprogrammierung in Assembler und C

Mikrocontrollerprogrammierung in Assembler und C mitp Professional Mikrocontrollerprogrammierung in Assembler und C für die Mikrocontroller der 8051-Familie - Simulation unter Multisim von Herbert Bernstein 1. Auflage Mikrocontrollerprogrammierung in

Mehr

Neues vom STRIP Forth-Prozessor

Neues vom STRIP Forth-Prozessor Neues vom STRIP Forth-Prozessor Tagung der Forth-Gesellschaft April 2011 in Goslar Willi Stricker 1 STRIP Forth-System Praxisdemonstration Aufbau Hardware Aufbau Software 2 STRIP-Kernel Clocks So,S1 Clock

Mehr

XT - FEMTO - SXL XT-FEMTO-SXL

XT - FEMTO - SXL XT-FEMTO-SXL XT - FEMTO - SXL MADE IN GERMANY XT-FEMTO-SXL XT-FEMTO-SXL ist ein sehr kleines Embedded - Netzwerk Modul, welches sehr leicht in jedes Endgerät integrierbar ist. Das XT-FEMTO-SXL Embedded Netzwerk - Modul

Mehr

Software ubiquitärer Systeme

Software ubiquitärer Systeme Software ubiquitärer Systeme Übung 2: Speicherarchitekturen in Mikrocontrollern und AOStuBS Christoph Borchert Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund http://ess.cs.uni-dortmund.de/~chb/

Mehr

StarterKit Embedded Control SC13 + DK51. From the electronic to the automation

StarterKit Embedded Control SC13 + DK51. From the electronic to the automation SC13 + DK51 From the electronic to the automation 21.10.2005 No. 1 /14 Entwicklungssystem für Embedded Controller Applikationsspezifische Komponenten ergänzen. Ethernet-Anbindungen seriellen Schnittstellen

Mehr

Arbeitsfolien - Teil 4 CISC und RISC

Arbeitsfolien - Teil 4 CISC und RISC Vorlesung Informationstechnische Systeme zur Signal- und Wissensverarbeitung PD Dr.-Ing. Gerhard Staude Arbeitsfolien - Teil 4 CISC und RISC Institut für Informationstechnik Fakultät für Elektrotechnik

Mehr

Das Prinzip an einem alltäglichen Beispiel

Das Prinzip an einem alltäglichen Beispiel 3.2 Pipelining Ziel: Performanzsteigerung é Prinzip der Fließbandverarbeitung é Probleme bei Fließbandverarbeitung BB TI I 3.2/1 Das Prinzip an einem alltäglichen Beispiel é Sie kommen aus dem Urlaub und

Mehr

AVR-Mikrocontroller mit dem GCC programmieren

AVR-Mikrocontroller mit dem GCC programmieren AVR-Mikrocontroller mit dem GCC programmieren Mario Haustein Chemnitzer Linux User Group 10. Februar 2012 Mario Haustein (CLUG) AVR-Mikrocontroller 10. Februar 2012 1 / 21 1. Die Architektur 2. AVR in

Mehr

Zusatzplatine MP-Bus HZS 562

Zusatzplatine MP-Bus HZS 562 ZUSATZPLATINE MP-BUS HZS 562 Zusatzplatine MP-Bus HZS 562 Die MP-Bus Interfaceelektronik stellt die Schnittstelle zwischen einem CAN-Bus-System und einem MP-Bus-System dar. Die Elektronik wird als MP-Bus

Mehr

Autonome Mobile Systeme. Dr. Stefan Enderle

Autonome Mobile Systeme. Dr. Stefan Enderle Autonome Mobile Systeme Dr. Stefan Enderle 2. Mikrocontroller Einleitung Unterschied Controller / Prozessor: Speicher (RAM, Flash, Eprom) intern Viele I/Os (Digital, Analog) Bus-Unterstützung (Seriell,

Mehr

X-MAX-400 SORCUS. High Performance X-Bus Modul. Eigenschaften

X-MAX-400 SORCUS. High Performance X-Bus Modul. Eigenschaften X-MAX-400 High Performance X-Bus Modul SORCUS Eigenschaften Standard Modul für alle X-Bus Trägerysteme Intel X Scale CPU 400 MHz ARM V5TE (inkl. Thumb- und DSP) Multi-Prozessor fähig bis zu 32 MByte RAM

Mehr

Prozessoren für mobile und. eingebettete Systeme II: Die AVR-Architektur. EMES: Eigenschaften mobiler und eingebetteter Systeme

Prozessoren für mobile und. eingebettete Systeme II: Die AVR-Architektur. EMES: Eigenschaften mobiler und eingebetteter Systeme EMES: Eigenschaften mobiler und eingebetteter Systeme Prozessoren für mobile und 00101111010010011101001010101 eingebettete Systeme II: Die AVR-Architektur Dipl. Inf. Jan Richling Wintersemester 2004/2005

Mehr

Kap 4. 4 Die Mikroprogrammebene eines Rechners

Kap 4. 4 Die Mikroprogrammebene eines Rechners 4 Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten (Befehl holen, Befehl dekodieren, Operanden holen etc.).

Mehr

Aufgabe 2 - Erweiterung um PIC und Interrupts

Aufgabe 2 - Erweiterung um PIC und Interrupts Aufgabe 2 - Erweiterung um PIC und Interrupts Rainer Müller Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2014/2015 R. Müller Erweiterung

Mehr

Steuerungen. 4 Typen verbindungsprogrammierte Steuerung (VPS), speicherprogrammierte Steuerung (SPS), Mikrokontroller (MC) und Industrie-PCs (IPC)

Steuerungen. 4 Typen verbindungsprogrammierte Steuerung (VPS), speicherprogrammierte Steuerung (SPS), Mikrokontroller (MC) und Industrie-PCs (IPC) Steuerungen 4 Typen verbindungsprogrammierte Steuerung (VPS), speicherprogrammierte Steuerung (SPS), Mikrokontroller (MC) und Industrie-PCs (IPC) VPS - Funktion der Steuerung in der Schaltungstopologie

Mehr

Tutorial. Microcontroller. Grundlagen µc. Kapitel 1

Tutorial. Microcontroller. Grundlagen µc. Kapitel 1 Microcontroller Kapitel 1 Grundlagen µc µc Inhaltsverzeichnis 1 - Vorwort Seite 2 2 - Prinzipieller Programmablauf Seite 4 3 - ISR Interrupt Service Routine Seite 5 4 - Compiler Seite 7 5 - ATMega8 Seite

Mehr

2.2 Rechnerorganisation: Aufbau und Funktionsweise

2.2 Rechnerorganisation: Aufbau und Funktionsweise 2.2 Rechnerorganisation: Aufbau und Funktionsweise é Hardware, Software und Firmware é grober Aufbau eines von-neumann-rechners é Arbeitsspeicher, Speicherzelle, Bit, Byte é Prozessor é grobe Arbeitsweise

Mehr

Programmieren in C Teil 3: Mikrocontrollerprogrammierung

Programmieren in C Teil 3: Mikrocontrollerprogrammierung Programmieren in C Teil 3: Mikrocontrollerprogrammierung 08/30/10 Fachbereich Physik Institut für Kernphysik Bastian Löher, Martin Konrad 1 Tag 1 Hello World 08/30/10 Fachbereich Physik Institut für Kernphysik

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen der Rechnerarchitektur Grundlagen der Rechnerarchitektur ARM, x86 und ISA Prinzipien Übersicht Rudimente des ARM Assemblers Rudimente des Intel Assemblers ISA Prinzipien Grundlagen der Rechnerarchitektur Assembler 2 Rudimente

Mehr

Ringlicht-v3 - Frei konfigurierbares Ringlicht mit RS232 Anbindung. Kurzbeschreibung

Ringlicht-v3 - Frei konfigurierbares Ringlicht mit RS232 Anbindung. Kurzbeschreibung Ringlicht-v3 - Frei konfigurierbares Ringlicht mit RS232 Anbindung Kurzbeschreibung Das frei konfigurierbare Ringlicht kann jede beliebige Abfolge an Lichtmustern erzeugen und über einen Triggereingang

Mehr

Instruktionssatz-Architektur

Instruktionssatz-Architektur Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2005/2006 Übersicht 1 Einleitung 2 Bestandteile der ISA 3 CISC / RISC Übersicht 1 Einleitung 2 Bestandteile

Mehr

3. Rechnerarchitektur

3. Rechnerarchitektur ISS: EDV-Grundlagen 1. Einleitung und Geschichte der EDV 2. Daten und Codierung 3. Rechnerarchitektur 4. Programmierung und Softwareentwicklung 5. Betriebssyteme 6. Internet und Internet-Dienste 3. Rechnerarchitektur

Mehr

Prozessoren für mobile und. eingebettete Systeme II: Die AVR-Architektur. EMES: Eigenschaften mobiler und eingebetteter Systeme

Prozessoren für mobile und. eingebettete Systeme II: Die AVR-Architektur. EMES: Eigenschaften mobiler und eingebetteter Systeme EMES: Eigenschaften mobiler und eingebetteter Systeme Prozessoren für mobile und 111111111111111 eingebettete Systeme II: Die AVR-Architektur Dr. Felix Salfner, Dr. Siegmar Sommer Wintersemester 29/21

Mehr

XT - NANO - XXL XT-NANO-XXL

XT - NANO - XXL XT-NANO-XXL XT - NANO - XXL MADE IN GERMANY XT-NANO-XXL Mit seinen extrem geringen Ausmaßen von nur 20 x 34 mm ist das neue XT-NANO XXL Modul besonders gut geeignet, auch in sehr kleine Endgräte integriert zu werden.

Mehr

Fachhochschule Kaiserslautern Fachbereich Angewandte Ingenieurwissenschaften WS2010/11. Zeitpunkt der Prüfung: 18.01.2011 Beginn: 10.

Fachhochschule Kaiserslautern Fachbereich Angewandte Ingenieurwissenschaften WS2010/11. Zeitpunkt der Prüfung: 18.01.2011 Beginn: 10. Lehrprozessor: Coldfire MCF-5272 Zeitpunkt der Prüfung: 18.01.2011 Beginn: 10.45 Uhr Raum: Aula Bearbeitungszeit: 180 Minuten Erlaubte Hilfsmittel: Gedrucktes Vorlesungsskript von Prof. Neuschwander mit

Mehr

Grundlagen der Rechnerarchitektur. Ein und Ausgabe

Grundlagen der Rechnerarchitektur. Ein und Ausgabe Grundlagen der Rechnerarchitektur Ein und Ausgabe Übersicht Grundbegriffe Hard Disks und Flash RAM Zugriff auf IO Geräte RAID Systeme SS 2012 Grundlagen der Rechnerarchitektur Ein und Ausgabe 2 Grundbegriffe

Mehr

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich Seite 1 von 10 CU-R-CONTROL Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32 Autor: Christian Ulrich Datum: 08.12.2007 Version: 1.00 Seite 2 von 10 Inhalt Historie

Mehr

Johannes Kelper Universität Linz. Institut für Elektrische Messtechnik. Dokumentation. ATmeag8-USB Modul. Bernd R. Arminger ATmega8-USB Modul 1

Johannes Kelper Universität Linz. Institut für Elektrische Messtechnik. Dokumentation. ATmeag8-USB Modul. Bernd R. Arminger ATmega8-USB Modul 1 Dokumentation ATmeag8-USB Modul Bernd R. Arminger ATmega8-USB Modul 1 1. Beschreibung Das ATmega8-USB Modul besteht aus einen ATmega8 Mikrokontroller der Firma Atmel (Datenblatt/buch erhältlich unter http://www.atmel.com)

Mehr

Tickt ihr Board noch richtig? Frequenzmessung durch ChipVORX als Ergänzung zum Boundary Scan Test. Dipl.-Ing. (FH) Martin Borowski

Tickt ihr Board noch richtig? Frequenzmessung durch ChipVORX als Ergänzung zum Boundary Scan Test. Dipl.-Ing. (FH) Martin Borowski Tickt ihr Board noch richtig? Frequenzmessung durch ChipVORX als Ergänzung zum Boundary Scan Test. Dipl.-Ing. (FH) Martin Borowski 05.03.205 05.03.205 Was ist ChipVORX? 05.03.205 3 Typische Testaufgaben

Mehr

Mikrocomputertechnik. Einadressmaschine

Mikrocomputertechnik. Einadressmaschine technik Einadressmaschine Vorlesung 2. Mikroprozessoren Einführung Entwicklungsgeschichte Mikroprozessor als universeller Baustein Struktur Architektur mit Akku ( Nerdi) FH Augsburg, Fakultät für Elektrotechnik

Mehr

C4 Die SPI Schnittstelle

C4 Die SPI Schnittstelle C4 Die SPI Schnittstelle Einführung Motorola entwickelte die synchrone SPI-Master-Slave Schnittstelle, (Serial Periphal Interface) für die Kommunikation zwischen Mikrocontrollern. Ein ähnliches Bus System

Mehr

4 Der Von-Neumann-Rechner als Grundkonzept für Rechnerstrukturen

4 Der Von-Neumann-Rechner als Grundkonzept für Rechnerstrukturen 4 Der Von-Neumann-Rechner als Grundkonzept für Rechnerstrukturen Ein Rechner besteht aus den folgenden Bestandteilen: Rechenwerk Rechenoperationen wie z.b. Addition, Multiplikation logische Verknüpfungen

Mehr

Operating System Kernels

Operating System Kernels Operating System Kernels von Patrick Bitterling 1 Themenübersicht -Eine Einleitung über Kernel -Begriffserklärung, Architekturen -Kernel Subsysteme -Prozess-Scheduling, Speichermanagement,... -Der Networking

Mehr

Einführung in die Programmierung von Mikrocontrollern mit C/C++

Einführung in die Programmierung von Mikrocontrollern mit C/C++ Einführung in die Programmierung von Mikrocontrollern mit C/C++ Vorlesung Prof. Dr.-Ing. habil. G.-P. Ostermeyer Rechenleistung/Speicher Systemintegration Grundlagen der Mikrocontrollertechnik (Wiederholung)

Mehr

Selbstbau-USB-Programmiergerät für AVR

Selbstbau-USB-Programmiergerät für AVR [email protected] 1 Selbstbau-USB-Programmiergerät für AVR Nach Christian Ullrich Homepage: www.ullihome.de Weitere Infos bei http://weigu.lu/a/pdf/micel_f6_programmieradapter.pdf Schaltung

Mehr

Handbuch CompactPCI-Karten

Handbuch CompactPCI-Karten Handbuch CompactPCI-Karten W&T Typ 1341 1361 Version 1.0 05/004 by Wiesemann & Theis GmbH Irrtum und Änderung vorbehalten: Da wir Fehler machen können, darf keine unserer Aussagen ungeprüft verwendet werden.

Mehr

DTMF Sender. Es können 252 Zeichen maximal am Stück übertragen werden; die Länge des Strings wird mit einem Byte übertragen.

DTMF Sender. Es können 252 Zeichen maximal am Stück übertragen werden; die Länge des Strings wird mit einem Byte übertragen. DTMF Sender Author DK1RI, Version V02.1, 20160104 This project can be found in https://www.github.com/dk1ri Einleitung Dieses Interface ist eine Vorlage für ein Interface, das ein Gerät, das sich mit DTMF

Mehr

Aufgabe 2 - Erweiterung um PIC und Interrupts

Aufgabe 2 - Erweiterung um PIC und Interrupts Aufgabe 2 - Erweiterung um PIC und Interrupts Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS2010/2011 Aufgabe 2 - Erweiterung um

Mehr

Dateiübertragung mit ProComm Plus (Posten 6)

Dateiübertragung mit ProComm Plus (Posten 6) Dateiübertragung mit ProComm Plus (Posten 6) Einleitung Um die Zeit optimal ausnutzen zu können und nicht im wenig Benutzerfreundlichen MS-Dos zu verweilen, wurde der Versuch mit dem Programm ProComm Plus

Mehr

Mikrocontroller. eine Einführung. Florian Schmitt - 16.11.2010 1 / 34

Mikrocontroller. eine Einführung. Florian Schmitt - 16.11.2010 1 / 34 Mikrocontroller eine Einführung Florian Schmitt - 16.11.2010 1 / 34 Inhalt Was sind Mikrocontroller, wozu sind sie nützlich? Unterschiede und Gemeinsamkeiten mit dem PC Wie funktionieren Mikrocontroller

Mehr

Übung 7. Mikroprozessor & Eingebettete Systeme 1

Übung 7. Mikroprozessor & Eingebettete Systeme 1 Übung 7 Mikroprozessor & Eingebettete Systeme 1 WS2015/2016 Hinweis: Die folgenden Aufgaben erheben nicht den Anspruch, eine tiefergehende Kenntnis zu vermitteln; sie sollen lediglich den Einstieg in weiterführende

Mehr

Ein Computer zum Selbstbauen

Ein Computer zum Selbstbauen www. MyCPU.eu Ein Computer zum Selbstbauen von Dennis Kuschel Gliederung: 1. Was ist die MyCPU und warum existiert sie? 2. Architektur der MyCPU 3. Befehlssatz 4. Emulator 5. Software 6. Nachbau Was ist

Mehr

Intelligente GPRS- und UMTS-Modems - MT-202 / MT-251

Intelligente GPRS- und UMTS-Modems - MT-202 / MT-251 Modem, Gateway und SPS in einem Gerät Die Geräte der MT-200 Serie verzichten weitestgehend auf I/Os, sind aber im übrigen Funktionsumfang mit den Telemetriemodulen der MT-100 Serie identisch. Schnittstellen

Mehr

Technische Informatik 2: Addressierung und Befehle

Technische Informatik 2: Addressierung und Befehle Technische Informatik 2: Addressierung und Befehle Memory Map Programm Speicher: Adresse $000-$FFF max. 4096 Byte für kompiliertes Programm Data Memory: Adresse $0000-$FFFF 32 8Bit Register 64 I/O Register

Mehr

DST EINFÜHRUNG IN MRT (V2)

DST EINFÜHRUNG IN MRT (V2) DST EINFÜHRUNG IN MRT (V2) Aufgabe: Reaktionstester 1. Pflichtenheft Taster an -PA0 8 LEDs an PCx LCD-Anzeige für Ergebnis Die LEDs an Port C sollten unerwartet irgendwann angehen! Jetzt wird die Zeit

Mehr

Mikrocontrollertechnik. A1 Einführung

Mikrocontrollertechnik. A1 Einführung Eine Datenverarbeitungsanlage besteht allgemein aus einem oder mehreren Eingabegeräten (Messfühler (Sensoren), Tastatur, Schalter, mobiler Datenspeicher (USB Stick, Diskette)...), einer zentralen Verarbeitungseinheit

Mehr

Netduino Mikroprozessor für.net Entwickler

Netduino Mikroprozessor für.net Entwickler Netduino Mikroprozessor für.net Entwickler Patrick Herting Softwareentwickler BlueTem Software GmbH Blog E-Mail www.wdev.de [email protected] Ablaufplan - Theorieteil Was ist der Netduino? Welche Modelle gibt

Mehr

Teil I: Wat isse ne Mikrokontroller?

Teil I: Wat isse ne Mikrokontroller? Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13 Eine Einführung in Aufbau, Funktionsweise, Programmierung und Nutzen von Mikroprozessoren Teil I: Wat isse ne Mikrokontroller? Wat

Mehr

ZENTRALEINHEITEN GRUPPE

ZENTRALEINHEITEN GRUPPE 31. Oktober 2002 ZENTRALEINHEITEN GRUPPE 2 Rita Schleimer IT für Führungskräfte WS 2002/03 1 Rita Schleimer TEIL 1 - Inhalt Zentraleinheit - Überblick Architekturprinzipien Zentralspeicher IT für Führungskräfte

Mehr

Inhalt. Prozessoren. Curriculum Manfred Wilfling. 28. November HTBLA Kaindorf. M. Wilfling (HTBLA Kaindorf) CPUs 28. November / 9

Inhalt. Prozessoren. Curriculum Manfred Wilfling. 28. November HTBLA Kaindorf. M. Wilfling (HTBLA Kaindorf) CPUs 28. November / 9 Inhalt Curriculum 1.4.2 Manfred Wilfling HTBLA Kaindorf 28. November 2011 M. Wilfling (HTBLA Kaindorf) CPUs 28. November 2011 1 / 9 Begriffe CPU Zentraleinheit (Central Processing Unit) bestehend aus Rechenwerk,

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 [email protected] http://www.theoinf.tu-ilmenau.de/ra1/

Mehr

Prozess-rechner. auch im Büro. Automation und Prozessrechentechnik. Prozessrechner. Sommersemester 2011. Prozess I/O. zu und von anderen Rechnern

Prozess-rechner. auch im Büro. Automation und Prozessrechentechnik. Prozessrechner. Sommersemester 2011. Prozess I/O. zu und von anderen Rechnern Automation und Prozessrechentechnik Sommersemester 20 Prozess I/O Prozessrechner Selbstüberwachung zu und von anderen Rechnern Prozessrechner speziell Prozessrechner auch im Büro D A D A binäre I/O (Kontakte,

Mehr

Programmieren der AVR RISC MikroController mit BASCOM-AVR

Programmieren der AVR RISC MikroController mit BASCOM-AVR Claus Kühnel Programmieren der AVR RISC MikroController mit BASCOM-AVR 3. bearbeitete und erweiterte Auflage Eine Einführung anhand von Programmbeispielen 5 Inhalt 1 Vorwort 9 2 Die AVR-Mikrocontroller

Mehr

GinLink Interface 1GHz RISC CPU M-RAM High-Speed Feldbus Controller RISC-CPU, 800MHz... 1GHz Bis zu 256 MByte SDRAM

GinLink Interface 1GHz RISC CPU M-RAM High-Speed Feldbus Controller RISC-CPU, 800MHz... 1GHz Bis zu 256 MByte SDRAM GinLink-News Feldbus-Controller GinLink Interface 1GHz RISC CPU M-RAM High-Speed Feldbus Controller RISC-CPU, 800MHz... 1GHz Bis zu 256 MByte SDRAM Technische Daten GIN-SAM3 610736800 Schnittstellen 2

Mehr

B1 Stapelspeicher (stack)

B1 Stapelspeicher (stack) B1 Stapelspeicher (stack) Arbeitsweise des LIFO-Stapelspeichers Im Kapitel "Unterprogramme" wurde schon erwähnt, dass Unterprogramme einen so genannten Stapelspeicher (Kellerspeicher, Stapel, stack) benötigen

Mehr

Der Scheduler von Windows Konzepte und Strategien

Der Scheduler von Windows Konzepte und Strategien Gliederung Der Scheduler von Windows Konzepte und Strategien Daniel Lohmann 1 Grundbegriffe 2 Eigenschaften des Schedulers Grundlegende Eigenschaften Prioritätenmodell Dynamische Prioritätenanpassungen

Mehr

8. SPS Komponenten: Beschreibung der Hardware-Komponenten einer SPS samt deren Eigenschaften

8. SPS Komponenten: Beschreibung der Hardware-Komponenten einer SPS samt deren Eigenschaften 8. SPS Komponenten: Beschreibung der Hardware-Komponenten einer SPS samt deren Eigenschaften Automatisierungsgerät: Zentralbaugruppe mit Prozessor Kommunikationsbaugruppe (Feldbusanschaltung) Bussysteme

Mehr

Der 80535-Übungsrechner

Der 80535-Übungsrechner 6. Für den Test kleinerer Programmodule ohne Berücksichtigung des Echtzeitverhaltens ist der Simulator das geeignete Werkzeug. Durch die Möglichkeit der Einzelschrittausführung sind erste Tests von Programmen

Mehr

Ergänzungen zum Manual OS V 2.05/2.06

Ergänzungen zum Manual OS V 2.05/2.06 Ergänzungen zum Manual OS V 2.05/2.06 SYSTEMRESOURCEN - PROGRAMM DOWNLOAD - Ab der Betriebssystemversion 2.05 haben die C-Control Units M-2.0 und Station 2.0 die Möglichkeit das Anwenderprogramm von einem

Mehr

Inhaltsverzeichnis. Teil I Aufgaben 1

Inhaltsverzeichnis. Teil I Aufgaben 1 iii Teil I Aufgaben 1 1 Grundlagen der Elektrotechnik 3 Aufgabe 1: Punktladungen............................ 3 Aufgabe 2: Elektronenstrahlröhre........................ 3 Aufgabe 3: Kapazität eines Koaxialkabels...................

Mehr

Echtzeitprogrammierung und Echtzeitverhalten von Keil RTX. Frank Erdrich Semester AI 7

Echtzeitprogrammierung und Echtzeitverhalten von Keil RTX. Frank Erdrich Semester AI 7 Echtzeitprogrammierung und Echtzeitverhalten von Frank Erdrich Semester AI 7 Inhalt Einleitung Echtzeit und Echtzeitsysteme Echtzeitprogrammierung Real-Time Operating System Keil RTOS RTX Zusammenfassung

Mehr

eblock, SD-Kartenleser Projektteam: Henrik Esche Tobias Albers Michael Heßling Daniel Lütfrenk Jonas Wieschmann

eblock, SD-Kartenleser Projektteam: Henrik Esche Tobias Albers Michael Heßling Daniel Lütfrenk Jonas Wieschmann eblock, SD-Kartenleser Projektteam: Henrik Esche Tobias Albers Michael Heßling Daniel Lütfrenk Jonas Wieschmann eblock, SD-Kartenleser Zieldefinition: Am 17.06.2009 ist ein eblock betriebsbereit und mit

Mehr

Einführung in die Microchip PIC-Controller vergleichende Betrachtung zu anderen Microcontrollern CLUG 12.2.2016. Matthias Kupfer

Einführung in die Microchip PIC-Controller vergleichende Betrachtung zu anderen Microcontrollern CLUG 12.2.2016. Matthias Kupfer Einführung in die Microchip PIC-Controller vergleichende Betrachtung zu anderen Microcontrollern CLUG 12.2.2016 Matthias Kupfer [email protected] 1 Übersicht Überblick über Microchip PIC-Familie Eigenschaften

Mehr

Übung "Struktur von Mikrorechnern" (SMR)

Übung Struktur von Mikrorechnern (SMR) 1 ie Controller der TLCS 900 Familie und ihre Schaltungstechnik 1.2 Speicherorganisation des TLCS 900 Inhaltsverzeichnis Kapitel 1 Kap.1 1 / 14 llgemeines Bei der TLCS-900-Familie von Toshiba handelt es

Mehr

Embedded OS für ARM Cortex Microcontroller

Embedded OS für ARM Cortex Microcontroller Embedded OS für ARM Cortex Microcontroller RTOS Design, Timinganalyse und Test mit Core Simulation und Hardware Debugger Entscheidende Fragen für oder gegen RTOS Lohnt sich der Einsatz eines RTOS auch

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

Treiberinstallation Bitte laden Sie sich die *inf Datei für den Treiber des Prog-S-Programmer hier herunter: www.diamex.de Kartenreiter download Programmiergeräte - ERFOS-Prog-S.zip Die *inf Datei auf

Mehr

Kommunikationseinheit 520CMD01 Datenblatt

Kommunikationseinheit 520CMD01 Datenblatt RTU520 Produktlinie Kommunikationseinheit 520CMD01 Datenblatt Die Kommunikationseinheit wird auf einer DIN-Schiene montiert, zusammen mit dem Spannungsversorgungsmodul und den E/ A-Modulen. Die Baugruppe

Mehr

3 Rechnen und Schaltnetze

3 Rechnen und Schaltnetze 3 Rechnen und Schaltnetze Arithmetik, Logik, Register Taschenrechner rste Prozessoren (z.b. Intel 4004) waren für reine Rechenaufgaben ausgelegt 4 4-Bit Register 4-Bit Datenbus 4 Kbyte Speicher 60000 Befehle/s

Mehr