Multiple Tms320C3Xs Sharing Global Memory - Texas Instruments TMS320C3x User Manual

Texas instruments computer hardware user's guide
Table of Contents

Advertisement

Figure 7–2. Multiple TMS320C3xs Sharing Global Memory
XF0
XF1 (X)A
(X)D
'C3x #1
CTRL
Local
memory
Sometimes it may be necessary for several processors to access some
shared data or other common resources. The portion of code that must access
the shared data is called a critical section.
To ease the programming of critical sections, semaphores may be used.
Semaphores are variables that can take only nonnegative integer values. Two
primitive, indivisible operations are defined on semaphores (with S being a
semaphore):
V(S):
S + 1
P(S):
P: if (S == 0), go to P
else S – 1
Indivisibility of V(S) and P(S) means that when these processes access and
modify the semaphore S; they are the only processes doing so.
To enter a critical section, a P operation is performed on a common semaphore,
say S (S is initialized to 1). The first processor performing P(S) will be able to enter
its critical section. All other processors are blocked because S has become 0.
After leaving its critical section, the processor performs a V(S), thus allowing
another processor to execute P(S) successfully.
Global memory
Arbitration logic
Lock, count , or S
S
S
Program Flow Control
Interlocked Operations
XF0
XF1
(X)A
(X)D
'C3x #2
CTRL
Local
memory
7-17

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the TMS320C3x and is the answer not in the manual?

Table of Contents