DebugJet JTAG Emulator
DebugJet is an advanced multi-core JTAG development tool used for testing, programming and debugging of embedded systems. It connects to any host system via a USB or an Ethernet port. The connection to the Target system is achieved using the target JTAG port. A custom developed controller, JTAGJet Engine, is used to facilitate the JTAG port functions allowing DebugJet to achieve download speeds in excess of 1 MByte/Sec. The Expansion port is used to add more functionality to DebugJet such as processor trace collection modules using a TraceJet.
Additionally, DebugJet supports Flash memory emulation when used with PROMJet. DebugJet can support up to 2 PROMJets from the available PROMJet I and II ports. The PROMJets can be configured individually or in sets to support wider data busses up to 32 bit. SPI and LPC/FWH Flash emulation is also supported. Host communications is done using PROMJet Windows or Linux software in network mode or using an FTP client software from any host computer. PROMJet communication functions that allow any debugger to communicate with a target monitor via PROMJet virtual communication channels is also supported. In such a system, the host application connects to DebugJet via a TCP/IP port and DebugJet will execute all the functions needed to send and receive data to and from PROMJet.
PROMJet functionality is also full integrated into the JTAG debug protocol. This allows a debugger to fully use PROMJet dual-ported memory functions to access memory on-the-fly without stopping the target system while using the JTAG port to control the target execution and other debug functions such as reading Processor registers. Such integration between PROMJet memory emulation and JTAG debug functions allow DebugJet to optionally offer added functionality not available when using JTAG interfaces alone.
DebugJet is fully user configurable and upgradable via USB or Ethernet ports using DebugJet software or an ethernet telnet or FTP session. The user can use these ports to set Ethernet as well as all other user interface parameters. The new parameters will be stored in DebugJet Flash memory for future use.
A serial port is also provided as an optional way to set Ethernet parameter using a dump terminal. The user can use this port with a dump terminal to set Ethernet, serial port as well as all other user interface parameters. Additionally, the serial port can be also used with a telnet session to remotely connect a host computer to a serial port over Ethernet. This allows an application on a host computer to connect remotely to a target board serial port over Ethernet.
The JTAG port uses our advanced hardware controller JTAGJet Engine for ultra fast JTAG transfer speeds (in excess of 1MByte/S). The JTAG port can provide an internal clock speed between 75KHz and 50MHz as well as external clock from the test board. The JTAG port supports target systems running at 1.5 to 3 Volt.
A wide range of functionality is supported by the JTAG port . For simple hardware test applications, JTAG SCAN IR/DR functions are accessible to the user.. This allows a hardware designer to test basic chip functions. Also more common test languages such as Serial Vector Format SVF as well as STAPL are supported.
DebugJet has extensive support for JTAG programmable chips such as Flash memory and CPLD/FPGA logic chips. Support is offered for Flash memory chips from AMD, Intel and any CFI enabled Flash memory. Also FPGA/CPLD chips from Altera, Lattice semiconductors and Xilinx are supported. The user can use a single DebugJet script file to program all programmable chips such as CPLD and Flash memory on a single board using a single JTAG chain.
DebugJet is integrated with Xpresso, an Eclipse based JTAG debugger. A single DebugJet supports multiple debug sessions running simultaneously on multiple cores of similar or dissimilar architectures (e.g. mix of PPC and ARM). DebugJet also supports the standard GDB protocol. This allows the user to use their version of GDB or any software that supports the GDB protocol and not being limited to a special debugger.
A powerful macro language is also available to enable the user to setup target hardware and handle manufacturing related tasks such as testing target board hardware or programming of Flash memory or CPLD chips. The macro language can be also used to execute test functions using the SVF or STAPL languages. It can be either used in a batch format or under customer control using DebugJet target server software.
DebugJet connects to a test board using a target specific JTAG adapter with the appropriate JTAG cable. EmuTec offers various adapters to support different JTAG connectors for various processors. The picture above shows an example of such a JTAG adapter.
The JTAG adapter includes a JTAG port connector and comes with a cable to allow connection to the target system. On the top of the adapter, the user will find a custom 16-pin connector to allow other functionality not supported by the JTAG port. This custom connector allows the user to choose target voltage (1.5-3.3V) as well as the ability to use an external variable clock signal.
The Trigger-In and Trigger-Out pins are used to stop the CPU if the Trigger-In pin goes to a user programmable level. If the JTAG port has a signal that controls the code execution or can stop the CPU, DebugJet will use this pin with the Trigger-In pin for faster hardware-based event. The Trigger-Out pin can be set to go to a predetermined level once a CPU is stopped. If the JTAG port provides a hardware pins that show the CPU status, DebugJet can use these pins to control the Trigger-out pin for faster response time and minimal delay. The Trigger-In and Trigger-Out lines can be used with target Events for more advanced functionality.
The O0-3 and I0-3 are output and input pins used to read and control input and output ports on the target board. For example the Input pins I0-3 can be used to read the value of a port pins during the debugging process and are fully accessible from the debugger interface. The O0-3 pins can similarly be used to control the value of some signals on the target board. Some of our customers use one of these output pins to switch the target power supply on and off to simulate a power-up condition.
DebugJet software protocol also supports a JTAG virtual communication channel to allow software applications on the target board to communicate over the JTAG port with other applications on the host computer. This provides the customer with the functionality of a USB or an Ethernet connection without implementing the actual hardware on the target board. The user can simply link DebugJet software libraries to the target and host applications to facilitate this functionality.
Please feel free to check DebugJet software description on our web site for more about DebugJet functionality, features and support.