25 April 2000 SEESCOASEESCOA STWW - Programma Evaluation of on-chip debugging techniques Deliverable D5.1 Michiel Ronsse.

Slides:



Advertisements
Similar presentations
4 December 2001 SEESCOASEESCOA STWW - Programma Debugging of Real-Time Embedded Systems: Experiences from SEESCOA Michiel Ronsse RUG-ELIS.
Advertisements

1/1/ / faculty of Electrical Engineering eindhoven university of technology Introduction Part 3: Input/output and co-processors dr.ir. A.C. Verschueren.
1 Architectural Complexity: Opening the Black Box Methods for Exposing Internal Functionality of Complex Single and Multiple Processor Systems EECC-756.
Real-Time Systems Design JTAG – testing and programming.
1-1 Embedded Software Development Tools and Processes Hardware & Software Hardware – Host development system Software – Compilers, simulators etc. Target.
GCSE Computing - The CPU
CPU Describe the purpose of the CPU
Microcontroller: Introduction
BLDC MOTOR SPEED CONTROL USING EMBEDDED PROCESSOR
Chapter 4  Converts data into information  Control center  Set of electronic circuitry that executes stored program instructions  Two parts ◦ Control.
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
Motherboard AKA mainboard, system board, planar board, or logic board. It is printed circuit board found in all modern computers which holds many of the.
Cortex-M3 Debugging System
INTRODUCTION TO MICROCONTROLLER. What is a Microcontroller A microcontroller is a complete microprocessor system, consisting of microprocessor, limited.
Parts and usage. Motherboard is the most important component in any personal computer. It contains almost every important elements of the computer. Sometimes.
Spring 2014 SILICON VALLEY UNIVERSITY CONFIDENTIAL 1 Introduction to Embedded Systems Dr. Jerry Shiao, Silicon Valley University.
® ChipScope ILA TM Xilinx and Agilent Technologies.
Chapter 8 Input/Output. Busses l Group of electrical conductors suitable for carrying computer signals from one location to another l Each conductor in.
NetBurner MOD 5282 Network Development Kit MCF 5282 Integrated ColdFire 32 bit Microcontoller 2 DB-9 connectors for serial I/O supports: RS-232, RS-485,
CHAPTER 5 I/O PRINCIPLE Understand the principles of System Bus
Slides created by: Professor Ian G. Harris Test and Debugging  Controllability and observability are required Controllability Ability to control sources.
Chapter 4 The System Unit: Processing and Memory Prepared by : Mrs. Sara salih.
Computer Processing of Data
Reporter: PCLee. Assertions in silicon help post-silicon debug by providing observability of internal properties within a system which are.
National Taiwan University JTAG and Multi-ICE Speaker : 沈文中.
 Design model for a computer  Named after John von Neuman  Instructions that tell the computer what to do are stored in memory  Stored program Memory.
Computers Are Your Future Eleventh Edition Chapter 2: Inside the System Unit Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall1.
Microcontroller Presented by Hasnain Heickal (07), Sabbir Ahmed(08) and Zakia Afroze Abedin(19)
집적회로 Spring 2007 Prof. Sang Sik AHN Signal Processing LAB.
PRESENTED BY :BIREN KUMAR SAMAL ADMISSION NO:22I&E/2000.
Other Chapters From the text by Valvano: Introduction to Embedded Systems: Interfacing to the Freescale 9S12.
I T Essentials I Chapter 1 JEOPARDY HardwareConnector/CablesMemoryAcronymsPotpourri
Lesson 3 — How a Computer Processes Data Unit 1 — Computer Basics.
Computer Hardware The Processing Unit.
Computer Hardware A computer is made of internal components Central Processor Unit Internal External and external components.
What is a Microprocessor ? A microprocessor consists of an ALU to perform arithmetic and logic manipulations, registers, and a control unit Its has some.
THE MICROPROCESSOR A microprocessor is a single chip of silicon that performs all of the essential functions of a computer central processor unit (CPU)
© 2000 Morgan Kaufman Overheads for Computers as Components Host/target design  Use a host system to prepare software for target system: target system.
31 Oktober 2000 SEESCOASEESCOA STWW - Programma Work Package 5 – Debugging Task Generic Debug Interface K. De Bosschere e.a.
October 24, 2003 SEESCOASEESCOA STWW - Programma Debugging Components Koen De Bosschere RUG-ELIS.
HCS12 Technical Training Module 15 – Break Module Slide 1 MOTOROLA and the Stylized M Logo are registered in the US Patent & Trademark Office. All other.
Copyright © 2005 – Curt Hill MicroProgramming Programming at a different level.
Information Technology INT1001 Lecture 2 1. Computers Are Your Future Tenth Edition Chapter 6: Inside the System Unit Copyright © 2009 Pearson Education,
Submitted by:.  Project overview  Block diagram  Power supply  Microcontroller  MAX232 & DB9 Connector  Relay  Relay driver  Software requirements.
1 Chapter 1 Basic Structures Of Computers. Computer : Introduction A computer is an electronic machine,devised for performing calculations and controlling.
COMPUTER COMPONENTS Ms Jennifer Computer Components.
Software Design and Development Computer Architecture Computing Science.
10- Lock Bits, Fuse Bits and Boot Loader. Boot Loader Support – Read-While-Write Self- Programming: The Boot Loader Support provides a real Read-While-Write.
ENERGY METER TO INDICATE BILLING IN RUPEES FOR LOAD WISE OR DAY WISE
Computer Hardware What is a CPU.
Unit 2 Technology Systems
Lab 1: Using NIOS II processor for code execution on FPGA
Topics SRAM-based FPGA fabrics: Xilinx. Altera..
Computer Hardware – System Unit
Introduction to programming
PC Mouse operated Electrical Load Control Using VB Application
ECE 353 Introduction to Microprocessor Systems
UNIT – Microcontroller.
Chapter 7.2 Computer Architecture
Microcomputer Architecture
JTAG Emulators JTAG emulator Target System Debugger software
JTAG and Multi-ICE National Taiwan University
CPE/EE 428/528 VLSI Design II – Intro to Testing (Part 3)
Why microcontrollers in embedded systems?
Programmable Logic Controllers (PLCs) An Overview.
Bus-Based Computer Systems
JTAG Emulators JTAG emulator Target System Debugger software
Debugging Debug environments Debug via serial
Components of a CPU AS Computing - F451.
JTAG, Multi-ICE and Angel
Presentation transcript:

25 April 2000 SEESCOASEESCOA STWW - Programma Evaluation of on-chip debugging techniques Deliverable D5.1 Michiel Ronsse

SEESCOASEESCOA Contents  Problem description  Debugging embedded systems  On-chip debugging techniques  Logic analyser  ROM monitor  ROM emulator  In-Circuit Emulator  Background Debug Mode  JTAG  Conclusions

SEESCOASEESCOA Problem description  embedded systems have become increasingly sophisticated  debugging becomes a major problem  types of bugs  computational errors  synchronisation errors  performance errors  testing and debugging is responsible for a huge part of the development time   definitive need for appropriate debugging tools

SEESCOASEESCOA Debugging embedded systems  two test/debug phases  during the development  during the actual use  an embedded system  typically runs continuously  interactive debugging?  can have hard and soft real-time constraints  Heisenbugs  parallel and/or distributed systems: abscence of a global clock  uses lots of input  repeatability?  cyclic debugging?  hardware related problems: code in ROM, limited amount of RAM  Solution: hardware add-ons for on-chip debugging techniques

SEESCOASEESCOA On-chip debugging techniques  Logic Analyser  ROM monitor  ROM emulator  In-Circuit Emulator  Background Debug Mode  JTAG

SEESCOASEESCOA Logic Analyser  a recorder for digital signals (event triggered)  can capture real-time traces  suitable for fast logic circuits  different from other tools:  no target control  no code download  no access to memory  used in addition with other tools

SEESCOASEESCOA ROM monitor  resident piece of code on the target system  provides debugging features  access to memory and registers  downloading of code  breakpoints and single stepping  advantage: cheap  disadvantage: uses resources  CPU cycles  memory (ROM+RAM)  communication channel  UART must be running  Keep ROM monitor in end product?

SEESCOASEESCOA ROM emulator  plug-in replacement for ROM chips  connected to a host computer using a serial, parallel or Ethernet link  simplest form: download code to the ROM  most sophisticated form: download a ROM monitor  advantages  no communication channel required  easy to retarget to new systems (no processor dependencies)

SEESCOASEESCOA ROM emulator: example

SEESCOASEESCOA Disadvantage of ROM monitor/emulator  target software must work with the ROM monitor/emulator  target needs a working memory system  no emulation of target RAM  how to debug a monitor?  limited to systems with external ROM  not for single- chip microcontrollers

SEESCOASEESCOA In-Circuit Emulator  uses a bond out version of the processor, or is plugged in the processor socket  full access to the programmer’s model of the processor  hardware breakpoints  execution trace  memory emulation (RAM)

SEESCOASEESCOA In-Circuit Emulator (II)  advantage:  uses no target I/O resources  possible to debug code before the target exists  ideal for debugging ISRs  ‘place’ breakpoints in ROM  real-time tracing (size of buffer?)  disadvantages:  electrical equivalence can be a problem  ICEs lag processor availability and are expensive  difficult for deeply-embedded CPUs

SEESCOASEESCOA ICE: an example

SEESCOASEESCOA Background Debug Mode  we keep the normal processor, ROM, connectors, but we add debugging facilities in the processor and use special pins to communicate with it  also known as OCD or OnCE  port used: BDM, JTAG, OnCE  processor switches to Background Debug Mode if  signal at BKPT-pin  processor executes a BGND-instruction  a fault occurs

SEESCOASEESCOA Background Debug Mode  first type: debug monitors written in microcode  later: real-time reading of instruction counter  some allow a complete trace of the processor’s execution uses additional pins  the AMD ÉlanSC520 uses AMDebug: an on-chip instruction cache (no CPU cycles or bandwidth is used)  the PowerPC has an instruction stuff buffer  only a minimal amount of external hardware is required

SEESCOASEESCOA JTAG  Joint Test Action Group  not a debugging technique, but a standard way for connecting test circuits in hardware components  uses boundary scan to control and observe the boundary pins of a device

SEESCOASEESCOA JTAG

SEESCOASEESCOA

SEESCOASEESCOA

SEESCOASEESCOA Conclusions ualmost all contemporary embedded processors have add-ons for debugging uas embedded processors get faster, these add-ons get closer to (or in) the processor uthese add-ons take up valuable chip area (up to 10%) uthese add-ons are also available in the consumer produsts, making on-site testing possible u  hardware manufacturers believe in design for debugability