Internal Communication and Semaphores
MSC8113 Reference Manual, Rev. 0
Freescale Semiconductor
1-27
1.3.2 Atomic Operations
When the SC140 core executes the
bmtset
instruction, it issues a read access followed by a write
access to the semaphore address and then asserts the atomic signal. The MQBus and the SQBus
prevent the SC140 cores from writing to the same semaphore address. A semaphore shared by an
SC140 core and an external host on the system bus is protected by a snooper on the bus interface.
When the system bus interface receives a read with atomic signal, the snooper starts to snoop the
bus. The snooper returns a failure if the external host writes to the same location. Snoopers also
protect the M1 and the M2 memories, which are accessible to both the SC140 cores and external
hosts.
Note:
For details, see Section 9.3, Extended QBus System.
1.3.3 Hardware Semaphores
There are eight coded hardware semaphores. Each semaphore is an 8-bit register with a selective
write protection mechanism. When the register value is zero, it is writable to any new value.
When the register value is not zero, it is writable only to zero. Each SC140 core/host/task has a
unique pre-defined lock number (8-bit code). When trying to lock the semaphore, the SC140 core
writes its lock number to the semaphore and then reads it. If the read value equals its lock
number, the semaphore belongs to that host and is essentially locked. An SC140 core/host/task
releases the semaphore by simply writing 0.
Note:
For details, see Chapter 15, Hardware Semaphores.
Summary of Contents for MSC8113
Page 1: ...MSC8113 Reference Manual Tri Core 16 Bit Digital Signal Processor MSC8113RM Rev 0 May 2008 ...
Page 20: ...MSC8113 Reference Manual Rev 0 xx Freescale Semiconductor Contents ...
Page 28: ...MSC8113 Reference Manual Rev 0 xxviii Freescale Semiconductor ...
Page 56: ...MSC8113 Reference Manual Rev 0 1 28 Freescale Semiconductor MSC8113 Overview ...
Page 76: ...MSC8113 Reference Manual Rev 0 2 20 Freescale Semiconductor SC140 Core Overview ...
Page 134: ...MSC8113 Reference Manual Rev 0 4 30 Freescale Semiconductor System Interface Unit SIU ...
Page 168: ...MSC8113 Reference Manual Rev 0 6 18 Freescale Semiconductor Boot Program ...
Page 180: ...MSC8113 Reference Manual Rev 0 7 12 Freescale Semiconductor Clocks ...
Page 260: ...MSC8113 Reference Manual Rev 0 8 80 Freescale Semiconductor Memory Map ...
Page 300: ...MSC8113 Reference Manual Rev 0 9 40 Freescale Semiconductor Extended Core ...
Page 304: ...MSC8113 Reference Manual Rev 0 10 4 Freescale Semiconductor MQBus and M2 Memory ...
Page 308: ...MSC8113 Reference Manual Rev 0 11 4 Freescale Semiconductor SQBus ...
Page 590: ...MSC8113 Reference Manual Rev 0 17 46 Freescale Semiconductor Interrupt Processing ...
Page 614: ...MSC8113 Reference Manual Rev 0 18 24 Freescale Semiconductor Debugging ...
Page 622: ...MSC8113 Reference Manual Rev 0 19 8 Freescale Semiconductor Internal Peripheral Bus IPBus ...
Page 724: ...MSC8113 Reference Manual Rev 0 21 32 Freescale Semiconductor UART ...
Page 920: ...MSC8113 Reference Manual Rev 0 25 150 Freescale Semiconductor Ethernet Controller ...
Page 1171: ...MSC8113 Reference Manual Rev 0 Freescale Semiconductor C 61 EF wait_rts P 01077FFC 9F rts 71 ...
Page 1172: ...MSC8113 Reference Manual Rev 0 C 62 Freescale Semiconductor MSC8113 Boot Code ...
Page 1202: ...MSC8113 Reference Manual Rev 0 Index 30 Freescale Semiconductor Index ...