230 likes | 378 Views
JTAG emulator. Target System. Parallel port. Debugger software. JTAG Emulators. Boundary Scan With CASCON 4.12 SW. Introduction. We know what JTAG is – don’t we?
E N D
JTAG emulator Target System Parallel port Debugger software JTAG Emulators JTAG Emulators
Boundary Scan With CASCON 4.12 SW Introduction We know what JTAG is – don’t we? • Testing loaded boards is becoming prohibitively expensive and more difficult to perform due to increasing complexity of circuit boards. • JTAG method of testing reduces the cost and difficulty of board-level testing. • The standard provides a cost-effective method of board testing through use of the boundary scan technique. JTAG Emulators
That can’t be all it can do! We’ll see what else it’s good for… • TRY - You’ll find the word EMULATOR in most of your results. • Emulator??? Let’s look in JTAG Emulators
EMULATOR – what’s that? EMULATOR –A device built to work like another. But like what? What are we trying to emulate? Mis-named Device the JTAG only defines an interface between the embedded system and the PC. The part who is actually performing the emulation is the chip, acting like a PC. Mis-named Device HUH? JTAG Emulators
Hardware Emulator -a window to the embedded system • Hardware debugging utilities allow the processor control and data to be passed from the embedded system to a PC where debugging can occur • Hardware debugging allows setting breakpoints in code, stepping, executing blocks of code, inspection of all the control registers and data structures, feed data onto chip Emulates the CPU: • System sees real processor fitted • Programmer has full control of the system JTAG Emulators
This is actually ICE ICE – In-circuit Emulator A specially-instrumented microprocessor - the “original” processor or microcontroller of the target hardware will be replaced by the ICE. • Allows to stop execution, examine CPU state, modify registers • The CPU allows as much debugging functionality as a debugger within a monitor program, but does not take up any memory • Main drawback to ICE is that the machine is specific to a particular microprocessor, even down to the pinout JTAG Emulators
In-Circuit Emulator – cont. In-circuit emulator (ICE) is the best (most powerful) but: • Very difficult to integrate (mount the emulator on the target board); Custom variants of processors may not be supported by ICE at all • Heisenberg Effects of In-Circuit Emulation - The act of observing the processor changes its operation • Lack of ‘Post Mortem’ Debug features • Problems With Hardware Breakpoints while Cache and MMU are enabled • Typically very expensive - 25k or more JTAG Emulators
Debugging tools – JTAG A JTAG Emulator is a tool that uses the on-chip debug features of a microprocessor to provide debug services. • Emulation Solutions as low as 2.8k • Support for fullspeed operation for all accesses • On-Chip Breakpoint Logic which allows breakpoints to work even when the CACHE and MMU translation are enabled • Hot Plug - Let's you plug into a target after a crash and see what happened • Auto ID - Detects the processor you are connected to and also the FLASH type • Perform Target Operations - Even While Running JTAG Emulators
JTAG Emulator – How does it work? JTAG Emulators are real-time, transparent in-circuit emulators based on the JTAG boundary scan port. • Debug of the hardware is performed by stopping the core to enable information to be scanned into and out of the device via the JTAG header. • This information is transferred serially through the JTAG port following IEEE 1149.1 JTAG specifications. • To communicate with the emulator,the target system must have a 14-pin header (two rows of seven pins) JTAG Emulators
JTAG Emulator – How does it work? The JTAG connection is the same way we know and love but: • Various scan chains inside the processor • Microprocessor controls what scan chain is used and what information is contained. • This “scan manager” has the task of controlling this information as it is scanned to and from the various processors in the scan chain, and directing it to and from the various debugger windows. JTAG Emulators
JTAG Emulator – How is it used? DSP (Digital Signal Processor) - specialized microprocessor designed specifically for digital signal processing, generally in RT. Found at the heart of cell phones, audio and video players, digital cameras, telephony infrastructure, motor control systems, and even biometric security equipment. DSPs offer many architectural features that actually reduce the number of instructions necessary for efficient signal processing. The programmable flexibility of DSPs enables developers to implement complex algorithms in software. JTAG Emulators
~3,000$ ~500$ JTAG for DSP • JTAG is used solely for fast data transfer purposes. Usually data is sent and received through the conventional parallel ports. • However, JTAG allows high-speed data transfer and connects to the JTAG pins on your board. For TI DSP's, some based JTAG emulators specifically allow High Speed RTDX and other features. • For applications on Real-Time Video and Image Processing, JTAG will be very crucial. However, the down side is that JTAG is fairly expensive. In fact, in most cases it is more expensive than the DSP board itself. • The first consideration when choosing an emulator, is does it support the required DSP family? JTAG Emulators
JTAG Emulator – How does it work? JTAG emulators are available with PCI, USB 2.0, LAN, and PCMCIA JTAG controllers, to allow flexibility in designing the host - target environment. Vary in: code download speed portability (obviously) size of application is also a factor price to pay Some Emulators have an onboard processor that handles up to 75% of all JTAG Processing. Others use the PC processor. For portable applications using a notebook a PCMCIA, ParallelPort or USB based emulator is the best solution. For Desktop debugging solutions - ISA and PCI cards are also an option and for remote debugging there are emulators which can be used over a LAN. JTAG Emulators
JTAG Emulators • Parallel Port emulators are a flexible low cost devices. The parallel port connection allows the emulator to be used with both desktop and laptop computers. • USB based emulators offer a flexible solution for both desktop and laptop PCs. A USB emulator is compact, easily installed, hot-plugable and needs no external power supply. Speed – USB 2.0! • PCI emulator - a high performance internal emulator. The main advantage - the fast communication speed between the host computer and the DSP target. Result - faster code download times and better DSP/BIOS and RTDX performance. • A PCMCIA emulator - laptop or notebook PC users. Faster than the Parallel Port and USB based alternatives. Hot-plugable; gives PCI type performance on a portable platform. JTAG Emulators
DSP Development tools – Host side • Host Development Tools for DSP DevelopmentIDE - integrated development environment. • A typical DSP IDE consists of several major components: • Code generation (compile, assemble, link) • Edit • Simulation • Real-time analysis • Debug and emulation • Graphical user interface • Efficient connection to a target system JTAG Emulators
TI - Code Composer Studio IDE Debugging a TI DSP using 3.1 CCS • The Code Composer Studio (CCS) application provides an integrated environment with the following capabilities: • Integrated development environment with an editor, debugger, project manager, profiler, etc. • ‘C/C++’ compiler, assembly optimiser and linker (code generation tools). • Simulator. • Real-time operating system (DSP/BIOS™). • Real-Time Data Exchange (RTDX™) between the Host and Target. • Real-time analysis and data visualisation. JTAG Emulators
The End Out In JTAG Emulators