Overzicht van On-chip Debugtechnieken voor Embedded Systemen

13
SEESCOA 10/11/99 1 Overzicht van On-chip Overzicht van On-chip Debugtechnieken Debugtechnieken voor Embedded Systemen voor Embedded Systemen Michiel Ronsse

description

Overzicht van On-chip Debugtechnieken voor Embedded Systemen. Michiel Ronsse. Probleem. Vaststelling: het debuggen van software is verantwoordelijk voor 60 à 70% van de ontwikkelingstijd fouten in software zijn verantwoordelijk voor 80% van de laattijdige projecten - PowerPoint PPT Presentation

Transcript of Overzicht van On-chip Debugtechnieken voor Embedded Systemen

Page 1: Overzicht van On-chip Debugtechnieken  voor Embedded Systemen

SEESCOA10/11/99 1

Overzicht van On-chip Overzicht van On-chip Debugtechnieken Debugtechnieken

voor Embedded Systemenvoor Embedded Systemen

Michiel Ronsse

Page 2: Overzicht van On-chip Debugtechnieken  voor Embedded Systemen

SEESCOA10/11/99 2

ProbleemProbleem

• Vaststelling:– het debuggen van software is verantwoordelijk

voor 60 à 70% van de ontwikkelingstijd– fouten in software zijn verantwoordelijk voor

80% van de laattijdige projecten

efficiente debugtools en/of methoden zijn nodig

Page 3: Overzicht van On-chip Debugtechnieken  voor Embedded Systemen

SEESCOA10/11/99 3

SoortenSoorten fouten fouten

• Sequentiële programma’s: computationele fouten

• Parallelle en/of gedistribueerde systemen: ook synchronisatiefouten

• Embedded systemen: ook prestatiefouten

Page 4: Overzicht van On-chip Debugtechnieken  voor Embedded Systemen

SEESCOA10/11/99 4

Debuggen van softwareDebuggen van software

• Statische analyse

• Dynamische analyse– post mortem– printf-methode– runtime debuggers– automatische debuggers

Page 5: Overzicht van On-chip Debugtechnieken  voor Embedded Systemen

SEESCOA10/11/99 5

Problemen by Embedded SystemsProblemen by Embedded Systems

• Twee debugfasen:– tijdens ontwikkeling– tijdens gebruik

• Problemen:– Continue werking interactief debuggen?– Geen globale klok– Wat met reproduceer-/herhaalbaarheid?– hoeveelheid I/O– RT-beperking– ROM, beperkte middelen (geheugen, uitvoer, ...)

Page 6: Overzicht van On-chip Debugtechnieken  voor Embedded Systemen

SEESCOA10/11/99 6

Hardware-toevoegingen (I)Hardware-toevoegingen (I)

• Logic analyzer• ROM-monitor– niet transparant, niet steeds aanwezig

• In-Circuit Emulator (ICE):– functioneel en fysische equivalent– probleem bij hoge snelheid– late beschikbaarheid– voordeel: gebruik van complexe predikaten

Page 7: Overzicht van On-chip Debugtechnieken  voor Embedded Systemen

SEESCOA10/11/99 7

Hardware-toevoegingen (II)Hardware-toevoegingen (II)

• later: tussen bord en processor d.m.v bond-out versie van de processor

• nog later: – In-Circuit (ICD) & On Chip Debugging (OCD)– simpele predikaten, minimale traces

Page 8: Overzicht van On-chip Debugtechnieken  voor Embedded Systemen

SEESCOA10/11/99 8

Background Debug ModeBackground Debug Mode

• transparant, altijd aanwezig• in hardwarecircuits of microcode• omschakeling van de mode– BACKGROUND-commando– BGND-instructie– hardware-breekpunt– single stepping

• `dichter’ bij de processor dan via ROM-monitor

Page 9: Overzicht van On-chip Debugtechnieken  voor Embedded Systemen

SEESCOA10/11/99 9

Joint Test Action Group (JTAG)Joint Test Action Group (JTAG)

logicainvoer uitvoer

Page 10: Overzicht van On-chip Debugtechnieken  voor Embedded Systemen

SEESCOA10/11/99 10

JTAGJTAG

logica

bypass

TAP contr.

TDI

TCK

TDO

TMS

invoer uitvoer

Boundary

Scan Cell

Page 11: Overzicht van On-chip Debugtechnieken  voor Embedded Systemen

SEESCOA10/11/99 11

JTAGJTAG

TAP Control

Device

Page 12: Overzicht van On-chip Debugtechnieken  voor Embedded Systemen

SEESCOA10/11/99 12

Algemene BesprekingAlgemene Bespreking

• intrusief

• laag niveau• te veel informatie met te veel detail

• traag

Page 13: Overzicht van On-chip Debugtechnieken  voor Embedded Systemen

SEESCOA10/11/99 13

BesluitBesluit

• Hardware bevat steeds meer uitbreidingen om het debuggen te vereenvoudigen: Design for Debugability

• Hetzelfde doen voor software?