Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Adelinde Karp Geändert vor über 10 Jahren
1
School of Engineering ESI-Lektion 9- 10
2
School of Engineering ESI – Lektion 9-10 Memory MAP Controll Bootloader, ISP JTAG Debugging In Circuit Emulators Flash Speicher Accelerator
3
School of Engineering Memory MAP Control
4
School of Engineering AHB Peripherals VPB Peripherals Reserved for External Memory Boot Block Reserved for On-Chip Memory On-Chip Static RAM Reserved for Special Registers Reserved for On-Chip Memory On-Chip Non-Volatile Memory 4.0 GB 3.75 GB 3.5 GB 3.0 GB 2.0 GB 1.0 GB 0.0 GB 0xFFFF FFFF 0xF000 0000 0xE000 0000 0xC000 0000 0x8000 0000 0x4000 0000 0x3FFF 8000 0x0000 0000 64 byte Exception Vector Table Prefetch Abort (instruction fetch memory abort) Supervisor 0x0000001C Exception ModeAddress Reset Undefined instruction Software interrupt (SWI) Data Abort (data access memory abort) IRQ (interrupt) FIQ (fast interrupt) Undefined Supervisor Abort IRQ FIQ 0x00000018 0x00000010 0x0000000C 0x00000008 0x00000004 0x00000000 Speicherbereichs-Aufteilung LPC2138
5
School of Engineering 0x0000 0040 0xFFFF FFFF 0x0000 003F 0x0000 00000x4000 0000 0x8000 0000 RAM Extern Flash Boot- loader MEMMAP Register Einstellung 1230 User Flash RAM Extern Flash Boot- loader RAM Boot- loader Boot Loader RAM Extern Flash Boot- Loader Extern Flash RAM Extern Flash 0x0000 00000x8000 0000 0x4000 0000 0x4000 003F 0x8000 003F 64 Byte Exception Vector Table User Flash Mode (Normaler Modus) RAM Mode External Flash Mode Boot Loader Mode (nach Reset) Memory Map Control Register
6
School of Engineering Übung1: Memory Map
7
School of Engineering Übung1-Lösung: Memory Map
8
School of Engineering Bootloader und In Circuit Flash Programmer
9
School of Engineering Vectors: LDR PC,Reset_Addr LDR PC,Undef_Addr LDR PC,SWI_Addr LDR PC,PAbt_Addr LDR PC,DAbt_Addr.long 0xB8A06F58 /* Programm Signature */ LDR PC, IRQ_Addr LDR PC,FIQ_Addr \end{lstlisting} Ermitteln ob das Flash programmiert ist Signatur ist 2er-komplement der Checksumme
10
School of Engineering Reset Boot Programm is entered Is Force Software Reload Pin set Signature good Enter ISP Utility Switch Memory Map to Flash Mode Set PC to 0x0000 End y n y n ISP = In Circuit Flash Programming Ablauf nach Reset beim LPC
11
School of Engineering Berechnet auch die Signatur, ersetzt NOP im Startup code ISP (In Circuit Flash Programming) Utility
12
School of Engineering JTAG (Joint Action Test Group)
13
School of Engineering (TDI) (TDO) Boundary Scan mit JTAG (Joint Test Action Group)
14
School of Engineering ULINK PC USB JTAG- controller ARM Core Scan Chain Scan Flip-Flops JTAG Port LPC2138 JTAG Debug Schnittstelle
15
School of Engineering IEEE 1149.1 Erforderliche Befehle BYPASS Durchschleifen von seriellen Daten wenn ein anderes IC in der Scan Chain getestet werden soll (z.B. Instruction Code = 11111) SAMPLE/PRELOAD IC in Normalem Betriebszustand Capture möglich Serielles Schieben von Daten In/Aus Capture Register EXTEST Test Muster werden an die Ausgangspins angelegt oder von den Eingangspins eingelatched (z.B. Instruction Code = 00000)
16
School of Engineering IEEE 1149.1 Optionale Befehle INTEST Zum Testen des Verhaltens der Core Logik. Die Ausgänge der Core Logik werden in die Boundary Scan Register eingelesen. Die Boundary Scan Flip-Flops bestimmen die Signalpegel die an den Eingänge der Core Logik anliegen RUNBIST IC Selbsttest wir ausgelöst CLAMP Ausgänge werden auf einen bestimmten Pegel gebracht, dann wir die Scan Chain in den Bypass Modus gebracht um ein anders IC zu testen High-Z Alle Ausgänge werden Hochohmig geschaltet ID-CODE Auslesen des IC Typs und der Version USER CODE Instruction um Benutzer definierte Daten auszulesen
17
School of Engineering JTAG Architektur auf dem IC Befehls Register (Betriebsarten) TAP Controller Daten Register Scan Zellen
18
School of Engineering JTAG Anschlüsse am Keil Board VCC 3-3 TRST TDO TMS TCK RTK TDI RST 10 kΩ 12 20 4 6 8 10 12 14 16 18 19 3 5 7 9 11 13 15 17 JTAG spezifische PINS
19
School of Engineering JTAG Pin Beschreibungen
20
School of Engineering TAP Controller Zustandsautomat Paralleles Abspeichern der Auszulesenden Daten ins Data Register Serielles Ein- oder Auslesen in das Schieberegister über TDI/TDO Neu ins Schieberegister eingelesene Daten ins Schattenregister übertragen Paralleles Abspeichern des Auszulesenden Status ins Instruction Register Serielles Ein- oder Auslesen in das Schieberegister über TDI/TDO Neu ins Schieberegister eingelesene Befehle ins Schattenregister übertragen Test Logik ist ausser Betrieb. Das Bauteil ist in normalem Betriebszustand TMS
21
School of Engineering Beispiel für das Einstellen des Instruction Codes
22
School of Engineering Clock Steuerung Der TAP Controller Statemacine Test Daten Eingang Test Daten Ausgang Daten Register Instruction Register Select JTAG TAP Controller
23
School of Engineering Der TAP Controller Steuersignale
24
School of Engineering Auszug aus BSDL Datei (Boundary Scan Language) -- ********************************************************************* -- * INSTRUCTIONS AND REGISTER ACCESS * -- ********************************************************************* attribute INSTRUCTION_LENGTH of EP2C35F484 : entity is 10; attribute INSTRUCTION_OPCODE of EP2C35F484 : entity is "BYPASS (1111111111), "& "EXTEST (0000001111), "& "SAMPLE (0000000101), "& "IDCODE (0000000110), "& "USERCODE (0000000111), "& "CLAMP (0000001010), "& "HIGHZ (0000001011), "& "CONFIG_IO (0000001101)"; attribute INSTRUCTION_CAPTURE of EP2C35F484 : entity is "0101010101"; attribute IDCODE_REGISTER of EP2C35F484 : entity is "0000"& --4-bit Version "0010000010110100"&--16-bit Part Number (hex 20B4) "00001101110"& --11-bit Manufacturer's Identity "1"; --Mandatory LSB attribute USERCODE_REGISTER of EP2C35F484 : entity is "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; --All 32 bits are programmable attribute REGISTER_ACCESS of EP2C35F484 : entity is "DEVICE_ID (IDCODE),"& "IOCSR[8616] (CONFIG_IO)";
25
School of Engineering Übung2: JTAG TAP controller 1.Welche JTAG Register werden mit diesem JTAG Befehl angesprochen? 2.Was ist der Wert in diesem Register nach der 13ten Taktflanke? 3.Nennen sie 3 Anwendungsfälle für die JTGA Schnittstelle im FPGA [2]
26
School of Engineering Übung2 – Lösung: JTAG TAP controller 1.Welche JTAG Register werden mit diesem JTAG Befehl angesprochen? Data Register 2.Was war der Wert in diesem Register nach der 13ten Taktflanke? 13te: 1001 3.Nennen sie 3 Anwendungsfälle für die JTGA Schnittstelle in Microcontrollern 1.Testen der Leiterplattenverbindungen 2.Debuggen der Anwendung 3.Testen des IC
27
School of Engineering In Circuit Emulators
28
School of Engineering Keil (www.keil.com)
29
School of Engineering Hitex HiTop und Tantino
30
School of Engineering IAR
31
School of Engineering Beispiel Evaluation Board Stellaris LM3S6965 microcontroller with fully-integrated 10/100 embedded Ethernet controller Simple setup: USB cable provides serial communication, debugging, and power OLED graphics display User LED, navigation switches, and select pushbuttons Standard ARM® 20-pin JTAG debug connector with input and output modes
32
School of Engineering Low Cost JTAG Debug Adapter von Olimex
33
School of Engineering Hersteller von ARM Emulatoren und Tools Abatron JTAG Debugger Software GDB oder andere Hersteller Keil JTAG Debugger Development Boards für Philips LPC Prozessoren Lauterbach ICE ETM Tools Hitex ETM Tools
34
School of Engineering BDI2000 JTAG Debug Interface ( www.abatron.ch) Unterstützt auch andere gängie Prozessoren und DSPs Benötigt Debugger Tool von Dritthersteller z.B. IAR CodeWarrior GNU Debugger (GDB)
35
School of Engineering Embedded Tracers
36
School of Engineering Embedded Trace Macro Embedded Trace Macro
37
School of Engineering ARM Embedded Trace Macro (ETM) Zusätzliche IP Hardware die implementiert werden muss Jede Information über ausgeführte Befehle und Datenzugriff wird nach aussen geführt Erlaubt Tracing bei maximaler Taktfrequenz und damit Fehlersuche in Real Time Gibt es für all ARM und Cortex Prozessoren Benötigt extra Ports am Microcontroller, meist gemultiplexed mit anderen Funktionen
38
School of Engineering PC Embedded ICE Part Trace Analyser JTAG Interface ETM Trace Trigger ARM 7 PIPESTATE 0 PIPESTATE 1 PIPESTATE 2 TRACESYNC TRACEPKT 0 TRACEPKT 2 VCC2 VCC1 TRACEPKT 1 TRACEPKT 3 EXTTRIG DBGACK TRACECLK TRST TDO TMS TCK RTCK TDI RST Microcontroller Traceanschluss Embedded Trace Macro
39
School of Engineering Hitex ETM Trace Tool
40
School of Engineering Cortex-M3 Serial Wire Debug
41
School of Engineering On Chip Flash Memory of the LPC2138
42
School of Engineering Memory Accelerator Module (MAM)
43
School of Engineering Memory Accelerator Module (MAM)
44
School of Engineering MAM Ausgeschaltet Branches werden aus dem Flash geholt Alle Flash Zugriffe vom MAM Memory Accelerator Module (MAM)
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.