DoCD Dataheet
  DoCD Presentation
  Download Software

PIC DoCD - DCD on Chip Debugger


The PIC DoCDTM is complete debugging system, dedicated for DCD's DFPIC16XXX/DRPIC16XXX Microcontroller Cores.
Consisted of three major blocks: The PIC DoCDTM provides real-time and non-intrusive debug capability allowing a pre-silicon validation and post-silicon on chip software debugging.
It allows hardware breakpoints, trace, variables watch, multi C sources debugging. The PIC DoCDTM Debug Software can work as a hardware debugger as well as a software simulator. So some tasks can be validated at software simulation level, and after this step user can continue real-time debugging by uploading code into silicon.

The PIC DoCDTM user can use its favorite C compilers or assemblers for software development, because it supports most of High Level Object files produced by C/ASM compiler tools.


Click here
System-on-Chip designs plagues keen problem with inaccessibility of important control and bus signals, because they lay often behind the physical pins of the device. It makes traditional measurement instrumentation useless. The best way to get around those limitations, for the verification tasks and software debug is using on-chip debugging tools. Other advantage of on-chip debugger is improving design productivity in integrated environment with graphical user interface. Ability to display/modify memories content, processor and peripherals register windows along with trace information, and ability to see the related C/ASM source code, are key for facilitation design process what surely increase productivity.

Our intention in developing DoCDTM was assuring customers with possibility of easy system verification and software debugging at no additional charges. Thus we decided to include complete debug system for $0 (zero dollars) to each PIC IP Core. Now DCD's customers can get from a one vendor complete solution to make their own PIC based SoC, with ability to pre-silicon validation and post-silicon software debugging.
It's a really unusual situation that designer can get a high quality IP Core and good on-chip debugging tool from the same vendor.




Debug IP Core

The Debug IP Core block provides an in-circuit emulator feature. The Debug IP Core can be provided as VHDL or Verilog source code as well as CPLD/FPGA EDIF netlist depending on the customer requirements. Because many SoC designs have both power and area limitations, DoCDTM provides a scaled solution. Debug IP Core can be scaled to control gate count. The benefit is fewer gates for lower power and core size while trading off debug capability. Typically, all of the features are utilized in pre-silicon debug (i.e. hardware emulation or FPGA evaluation) with a lesser feature set shipped in final silicon.

  • Processor execution control
    • Run, Halt
    • Reset
    • Step into instruction
    • Skip instruction
    • Step over following subroutine
    • Step out curent subroutine
  • Read-write all processor contents
    • Program Counter (PC)
    • Program Memory
    • Data Memory
    • Special Function Registers (SFRs)
    • W Register
    • Hardware Stack
    • Stack Pointer
  • Unlimited number of software breakpoints
    • Program Memory
    • Data Memory
    • Special Function Registers (SFRs)
  • Hardware execution breakpoints
    • Program Memory
    • Data Memory
    • Special Function Registers (SFRs)
  • Hardware breakpoints activated at a
    • certain program address (PC)
    • certain address by any write into memory
    • certain address by any read from memory
    • certain address by write into memory a required data
    • certain address by read from memory a required data
  • Auto refresh of all opened Windows
  • Three-wire communication interface
  • Fully static synchronous design with no internal tri-states


Debug Software

The DoCDTM Software (DS) is a Windows based application. It is fully compatible with nearly all existing PIC C compilers and Assemblers. The DS allows user to work in two major modes: software simulator mode and hardware emulator mode. Those two modes assure possibility to presilicon software validation in simulation mode and then real-time debugging of developed software inside silicon - using emulator mode. Once loaded, the program may be observed in Source Window, run at full-speed, single stepped by machine or ASM-level instructions, or stopped at any of the breakpoints. The DoCDTM Debug Software supports all DCD's PIC Cores (DRPIC1655X, DFPIC1655X) in the following architectures and particular configurations:

  • High Performance RISC - (DF -2 CLK cycle per instruction)
  • Pipelined High Performance RISC - (DR -1 CLK cycle per instruction)



  • Two working modes
    • hardware emulator
    • software simulator
  • Source Level Debugging:
    • C level hardware/software breakpoints
    • C line execution
      • line by line
      • over function
      • out of function
      • skip line
    • ASM code execution
      • instruction by instruction
      • over instruction
      • out of function
      • skip instruction
    • ASM source code view
    • C source code view
  • Symbol explorer with hierarchical view of symbols:
    • modules
    • functions
    • blocks
    • variables
  • Symbolic debug including
    • variables
    • variable type
  • Contents sensitive Watch window
  • Unlimited number of software breakpoints
    • Program Memory
    • Data Memory (DM)
    • Special Function Registers (SFR)
  • Real-time hardware breakpoints
    • Program Memory
    • Data Memory (DM)
    • Special Function Registers (SFR)
  • Set/clear breakpoints in Source Code window
  • 1024 steps deep Software Trace
  • Dedicated windows for peripherals
  • Configurable auto refresh
  • Auto refresh of all windows during execution of program
    • Registers panel including W, OPTION, INTCON, PCL etc.
    • Data Memory (DM)
    • Special Function Registers (SFR)
    • Timer/Counter
    • I/O Ports
    • Hardware Stack
  • Load Program Memory content from:
    • Intel HEX files
    • OMF object files
    • COD object files
  • The system runs on a Windows 95/98/NT/2000/XP PC





Hardware Assisted Debuger

A high-performance Hardware Assisted Debugger is connected to the target system containing the DCD's core either in FPGA or ASIC. HAD2 is a small hardware adapter that manages communication between the Debug IP Core inside silicon and a USB port of the host PC running DoCDTM Debug Software.

  • USB communication interface to target host at full speed
  • Synchronous interface betwen Debug IP Core and Software
  • Support three I/O voltage standards
    • 3.3 Volt systems
    • 2.5 Volt systems
    • 1.8 Volt systems
    • 1.5 Volt systems
  • Single power supply directly from USB
  • Small physical dimension



System features description


SOFTWARE BREAKPOINTS:

An unlimited number of software breakpoints can be set anywhere in the physical address space of the processor. This means that breakpoints can be set in Program Memory space, RAM and SFRs. If at least one software breakpoint is set program is executed in automatic step by step mode, with checking if certain breakpoint condition is met. Program execution is halted when breakpoint condition is already met, and its execution can be resumed at any time in any appropriate mode.



HARDWARE BREAKPOINTS:

The number of hardware breakpoints is limited to four in different address spaces. Like software breakpoints, hardware execution breakpoints can be set in Program Memory space, RAM and SFRs. Like their software counter-parts, they stop program execution just prior to an instruction being executed. The difference is found in the method of program execution. In this case program is run with full clock speed (in real-time), and processor is halted when hardware signalizes true breakpoint condition.



MIXED MODE BREAKPOINTS:

Mixed breakpoint mode is also allowed and it means that software and hardware breakpoints are mixed in the system. This gives user a flexibility in the debugging. For example two different break conditions can be set at the same address space using software and hardware breakpoints. In each breakpoint mode halt means: CPU is halted and instructions are no longer being fetched, all peripherals running and are not affected by halt.



SCALED SOLUTION:

Because many SoC designs have both power and gate limitations, DCD provides a scaled solution. Debug extensions can be scaled to control gate counts. The benefits are fewer gates, lower power and core size while trading off debug capability.



HOST REQUIREMENTS:

A Pentium class computer with minimum 32 MB of memory, 10 MB of free space on Hard Disk, USB port, and Windows 2000/XP operating systems.


Symbol

 docddatai
docddatao 
docdclk 
prgdatao 
prgwe 

Pins description


PinTypeDescription
  docddatai  input  DoCDTM data input
  docddatao  output  DoCDTM data output
  docdclk  output  DoCDTM clock line
  prgdatao  output  Program memory data output
  prgwe  output  Program memory write enable



Area Utilization


The following table give a survey about the Debug IP Core area in the FPGA and ASIC devices.


Device vendorArea
   Altera   760 LC
   Xilinx   380 slices
   ASIC   2800 gates

TOP OF PAGE