Open Core Protocol Debug Interface Specification rev 1.0 - OCP-IP
Open Core Protocol Debug Interface Specification rev 1.0 - OCP-IP
Open Core Protocol Debug Interface Specification rev 1.0 - OCP-IP
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>OCP</strong>-<strong>IP</strong> Confidential<br />
1.2 <strong>OCP</strong> <strong>Debug</strong> strategy<br />
The initial goal of the working group is to document a common set of <strong>Debug</strong> Guidelines and<br />
signal models that address the range of simple to more complex debug of <strong>OCP</strong> based systems.<br />
Many approaches are based on contributed prior art. Others identify new capabilities that are<br />
needed for debug configurations and strategies that that incorporate embedded analysis that<br />
comprehends multiple clock domains, power management domains, security domains, etc.<br />
required in modern SoC and embedded systems design.<br />
Where possible we leverage signals and interfaces defined in other <strong>OCP</strong> specifications. As an<br />
example, JTAG signals as defined in <strong>OCP</strong>2.0 are initial primary debug interface. Due to<br />
(largely bandwidth) limitations of JTAG for SoC debug, other options are presented where<br />
possible, to enable alternatives. As example, for debug control interface, we discuss memory<br />
mapped debug control options that use one of the embedded processors for debug configuration<br />
and control as alternative to JTAG. Similarly, we discuss trace port interfaces (in the general<br />
case, compatible with Nexus <strong>Interface</strong>s as defined by IEEE 5001) as higher bandwidth parallel<br />
trace port alternatives to JTAG serial interfaces.<br />
1.3 Common guidelines and infrastructure<br />
There are 2 preferred methods of mapping the registers of the debug <strong>IP</strong>-blocks - such that all<br />
debug registers should be memory mapped to fit well into the usual programmer’s models and<br />
allow for standard and extended testability concepts in manufacturing:<br />
a. memory space mapping. – On-chip processor core can operate the debug blocks<br />
b. JTAG mapped register access - controlled by external software debuggers over JTAG can<br />
operate all debug <strong>IP</strong>-blocks<br />
Comparative two-channel debugging with true time display of events is similar to the Logic<br />
Analyzer philosophy. The time aligned display of system bus traces of data events from<br />
different initiators on different buses is the main source of information. Setting of triggers on<br />
any signals or combination of events from different cores, <strong>IP</strong>-blocks and firing assertions is<br />
also basic to this idea. That is accomplished by the cross-trigger debug hardware block.<br />
1.4 Scalability and configurability of debug resources<br />
The <strong>OCP</strong> <strong>Debug</strong> <strong>Interface</strong> is following the general concept of master-slave request-response<br />
philosophy to assure easy mapping of existing signaling schemes in the contemporary debug<br />
interfaces to various cores and <strong>IP</strong>-blocks including assertions.<br />
In general there will be two signal wrappers required on the hardware side: Between the core<br />
and the debug interface to the <strong>OCP</strong> interconnect and between the <strong>OCP</strong> interconnect and any<br />
existing debug infrastructure. Gradually debug infrastructures will be developed that connect<br />
natively to the <strong>OCP</strong> <strong>Debug</strong> <strong>Interface</strong>.<br />
The main idea of presenting it as a <strong>Debug</strong> Socket to the SoC designers is a structural<br />
regularization to minimize errors in understanding of its functionality and to allow the<br />
development of automatic checkers for this well defined debug interface.<br />
7 of 62<br />
© 2007 <strong>OCP</strong>-<strong>IP</strong> Association, All Rights Reserved.