Focus Cree

Focus Cree

Multiprocessor Debug

As more processing elements, features, and functions are simultaneously embedded  into the silicon, the emerging level of embedded complexity outstrips the capability  of a stand-alone logic analyzer, a debugger, and an emulator-based diagnostic tool.

While these tools allow the capture of data off the system data bus, they work only  as long as every access (read or write) occurs over the external data bus. For embedded  processors and buses with no direct external access, this points to a growing gap in  effectively being able to provide the necessary controllability and, in particular, the
visibility of the internal operations of a complex system. 

The need for improved methods of observing and analyzing embedded proces- sor and SoC operation has increased at a pace at least proportional to the explosive  growth in SoC designs and new IP cores. This forces the analysis side of the SoC  world into a constant process of catching-up to the designer’s ability to add cores  and integrate new resources on chip. With an ever-shortening development cycle,  and often several generations of products being produced in parallel or rapid suc- cession, standardized embedded tools and capabilities that enable quick analysis
and debug of the embedded IP are a critical factor in keeping SoC verification a  manageable part of the process.

Before we can implement an on-chip debug system suitable for multicore systems
we have to ask the user requirements.
 1. Each core and bus must be observable. We must be able to see or reconstruct the
program flow of each single core independently as well as of the data flow on the  system buses. Also important are signals allowing conclusions to be drawn about  power modes, bus accessing modes, and others.

2. It is crucial for system analysis to recognize events that arise from interactions  between the cores and buses. A single core on its own is no longer of interest.  Rather, events coming from several cores have to be considered. To minimize  this challenge, cross triggers must be used, which combine events from different  sources and make them available systemwide.

3. The interactions between all SoC components during debug become more com- plex as more components are involved. A debug system with complex cross  triggering is hard for the user to manage. The debugger as a user interface for the  complex debug hardware must support the user in its work finding the mistakes  or performance bottlenecks. It has to hide the complexity that comes with  multicore debugging. We must not forget the user’s task is to cope not with the  debug hardware itself but with the faulty system.

On-chip instruments (and simulation) play an important part of SoC development  and verification flows, providing the ability to analyze what is happening on the  hardware itself, during both prototyping and system-level verification stages, and  increasingly on the final products themselves. The problem in analyzing informa- tion like embedded buses in hardware in many cases hinges on a problem of visibility:  it is difficult to fix what you cannot see. This visibility problem for the embedded  SoC is more complex than can be addressed adequately by traditional on-chip test  methods such as traditional JTAG scan, for several reasons:

 Bus operations are multicycle, with signals in a bus cycle becoming active at – different times, requiring sequential tracing rather than as a single-cycle snap- shot that scans typically provide. Bus operation problems are interrelated with the operations of at least two com- – municating blocks (a processor and memory peripheral, for example). Traditional  debug methods, such as halting part of a system for testing, can introduce  changes and new variables that interfere with the test scenario and process. If problems are intermittent or sparse, then trace operations need to operate in a – triggered mode, so information for a given range of bus cycles of interest is  captured in real time.

The problem is, to a large extent, a multicore extension of embedded processor  analysis, with run control, instruction execution, and data trace as integral parts of  processor support. For larger systems with multiple cores, the problem extends  beyond processor execution to understanding system operation and communica- tions (Fig. 2.9).

In formal terms, multicore embedded systems present an asymmetric functional  test problem. Their controllability is high, because the systems are dominated by  programmable processor cores. The observability is low, however, in terms of both  the critical signals that are directly available and the amount of embedded logic and  internal signals as a ratio of the available IO in which to observe them. Adding  dedicated resources and structures that support functional analysis is necessary to  increase system observability. This requires a hierarchical focus to the issue of  system analysis, starting at the individual core level of debug instrumentation and  resources and increasing to a more system-centric diagnostic capability to facilitate  increased observability. While embedded debug instrumentation approaches are  becoming increasingly common at the core level, system-level diagnostics and  analysis at the multicore level have historically been a largely underaddressed area in complex embedded systems.

About the Author

I’m Jerri Lily , which offers quality products such as LED Panels Lighting Manufacturer, China Cree Led Lights, and many more. Know more , please visit LED Tube Lights T5 .

Focus Adjustable Flashlight,Pop lite T71 , Cree Q4 LED

This entry was posted in Uncategorized and tagged , , , , , , , , , . Bookmark the permalink.

Comments are closed.