universität rostock fachbereich elektrotechnik und informationstechnik institut für angewandte...
Post on 06-Apr-2015
102 Views
Preview:
TRANSCRIPT
Universität RostockFachbereich Elektrotechnik und InformationstechnikInstitut für Angewandte Mikroelektronik und Datentechnik
Eine Prozessorarchitektur mit integrierter Debugunterstützung
H. Ploog, J. Hildebrand, T. Rachui
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
Agenda
• Prozessorarchitektur
• µC-Debugging
• Modifiziertes JTAG
• Integration
• Zusammenfassung
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
Zielapplikationen
I/O-Steuerung:- Portanzahl- I/O-Befehle- Interruptverhalten
Sensorik (SoC):- arithmetische Fähigkeiten- Kennlinienlinearisierung- Kalibrierung- Datenvorkomprimierung
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
Architektur
M R EG
M ALU B
M EM
M X Y
X X X X
IP IN C
M IP_1
M IP_2
AR
STIP
ALU
R A MR O M
CU
IR Q
R ESET
C LK
10
1010
412+1
Y
12
RUN 4V 1.2
userdefineable
10
10
M ALU A_1
M ALU A_2
MD
U
10
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
Programmiermodell
X 0 X 1 X 2
Y 0 Y 1 Y 2
IP
STACK
I C Z OVN
X 3
Y 3
• optimiert für 4b- und 12b/16b-Operationen
• Verzicht auf separate Adreßarithmetik
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
Befehlssatz (Auswahl)
• einstellige ALU-Operationen SHL, RLC, SHR, RRC, (NOT)
• zweistellige ALU-OperationenTEST, CMP, ADC, SBC, AND, OR, XOR
• SKIP-Bedingungeneinfach : Z, NZ, C, NC vorzeichenlos : UGT, UGE, ULE, ULTvorzeichenbehaftet : GT, GE, EQ, NE, LE, LT
• FLAG-OperationenCLI, STI, STC, CLCMOV X0, FMOV F, X0
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
Befehls-Mapping (Auswahl)
• Kaum Doppelbelegung von Bitpositionen im Op-Code
0 0 1D-
REGD-
REGALU ALU ALU 0 1
S-REG
S-REGREG+Y
0 0 1SD-REG
SD-REG
ALU ALU ALU 1 0 0 0MonoReg
0 0 1D-
REGD-
REGALU ALU ALU 1 1
S-REG
S-REGRegReg
0 0 0 REG REG 0 0 0 0 0 a1 a0IY-store
0 0 0 0 0 00=C1=I
0=C1=S
1 0 0 0FLAGS
0 0 00=U1=S
M 1 M 0 REF REF 1 0 0 1SKIP
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
Entwicklungssystem
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
Agenda
• Prozessorarchitektur
• µC-Debugging
• Modifiziertes JTAG
• Integration
• Zusammenfassung
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
µC-DebuggingVerfahren Echt-
zeitKom.-
Interfaceuni.-
EinsatzKosten
Evaluation Board CPU niedrig bis mittel
ICE CPU sehr hoch
ROM-Emulator niedrig bis mittel
Software-Simulator CPU hoch
JTAG-Interface CPU niedrig bis mittel
Mod. JTAG-Interface
niedrig bis mittel
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
Agenda
• Prozessorarchitektur
• µC-Debugging
• Modifiziertes JTAG
• Integration
• Zusammenfassung
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
JTAG-Scan I
TAP
Bypass
Inst.-Reg
Core
TDI
TDO
TMS
TCK
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
JTAG-Scan II
TAP
Bypass
Inst.-Reg
Core
TDI
TDO
TMS
TCK
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
modifizierter JTAG-Scan
TAP
Bypass
Inst.-Reg
Core
TDI
TDO
TMS
TCK
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
JTAG Modifikationen
Aufgaben
Decodierung der
Befehle
Auswahl des aktuellen
Datenregisters Generierung der
Steuersignale für das aktuelle
Datenregister
Schalten des „clk-enable“
Signals
Reset des Core-
Designs
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
Funktionen der Hardware
• Zugriff auf► Register, Stack, Instruction-Pointer
• Lesen und Verändern der Flags• Setzen eines HW-Breakpoints• Einzelschritt-Modus (OpCode und Takt)• Lesen und Schreiben von RAM und ROM
(/RAM)• Ausführung beliebiger Instruktionen
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
Agenda
• Prozessorarchitektur
• µC-Debugging
• Modifiziertes JTAG
• Integration
• Zusammenfassung
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
Realisierung
ROM RAM
ALU
INC
+1
Register BRegister A
IP-Register
TDI
TDO
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
mod. design flow
VHDL
Simulation
Synthese XILINXBack-annotation
spezielle Library Skripte Target
Library
Institut für Angewandte Mikroelektronik und Datentechnik
Universität Rostock, Fachbereich Elektrotechnik und Informationstechnik
Zusammenfassung
• parametrierbarer VHDL-Core RUN4
• Einsatz von modifiziertem JTAG für on-target-realtime-Software-Debugging
• automatische Integration in den design-flow
top related