TMS320C6678
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS691D—April 2013
www.ti.com
7.26 Semaphore2
The device contains an enhanced Semaphore module for the management of shared resources of the DSP C66x
CorePacs. The Semaphore enforces atomic accesses to shared chip-level resources so that the read-modify-write
sequence is not broken. The semaphore block has unique interrupts to each of the cores to identify when that core
has acquired the resource.
Semaphore resources within the module are not tied to specific hardware resources. It is a software requirement to
allocate semaphore resources to the hardware resource(s) to be arbitrated.
The Semaphore module supports 8 masters and contains 32 semaphores to be used within the system.
The Semaphore module is accessible only by masters with privilege ID (privID) 0 to 7, which means only CorePac
0 to 7 or the EDMA transactions initiated by CorePac 0 to 7 can access the Semaphore module.
If the remote device wants to access the Semaphore module, the HyperLink configuration register needs to be
appropriately configured, so the remote device can send transactions with the desired privID value to the local
Semaphore module. For more information on HyperLink configuration, see the HyperLink for KeyStone Devices
User Guide in ‘‘Related Documentation from Texas Instruments’’ on page 73.
There are two methods of accessing a semaphore resource:
•
Direct Access: A core directly accesses a semaphore resource. If free, the semaphore will be granted. If not, the
semaphore is not granted.
•
Indirect Access: A core indirectly accesses a semaphore resource by writing it. Once it is free, an interrupt
notifies the CPU that it is available.
7.27 Emulation Features and Capability
7.27.1 Advanced Event Triggering (AET)
The TMS320C6678 device supports Advanced Event Triggering (AET). This capability can be used to debug
complex problems as well as understand performance characteristics of user applications. AET provides the
following capabilities:
•
Hardware Program Breakpoints: specify addresses or address ranges that can generate events such as halting
the processor or triggering the trace capture.
•
Data Watchpoints: specify data variable addresses, address ranges, or data values that can generate events
such as halting the processor or triggering the trace capture.
•
•
Counters: count the occurrence of an event or cycles for performance monitoring.
State Sequencing: allows combinations of hardware program breakpoints and data watchpoints to precisely
generate events for complex sequences.
For more information on AET, see the following documents in ‘‘Related Documentation from Texas Instruments’’
on page 73:
•
•
Using Advanced Event Triggering to Find and Fix Intermittent Real-Time Bugs application report
Using Advanced Event Triggering to Debug Real-Time Problems in High Speed Embedded Microprocessor
Systems application report
Copyright 2013 Texas Instruments Incorporated
Peripheral Information and Electrical Specifications 229