Samsung S3C2500B User Manual page 513

Table of Contents

Advertisement

GDMA CONTROLLER
12.3.1.1 Problem Solving with Programmable Round-Robin
S3C2500B has stuff to thing about with GDMA arbiter. This only applies to GDMA arbiter with Round-Robin
priority. Assuming all '0's are set for GDMA programmable priority register for Round-Robin, HPRIR (all same
bus occupancy in Round-Robin), and only three of six channels of GDMA are used, the problem arises as
follows.
Number
1
2
3
4
5
6
When DPRIR is 0x0 and only GDMA channel 0, 1, and 2 are used, the expected bus occupancy for each channel
is 1/3. However, S3C2500B does not work in that way, instead, GDMA channel 0 gets 4/6 of the bus occupancy,
GDMA 1 1/6, and GDMA 2 1/6. In short, GDMA 0 is run four times more than GDMA 1, and 2. This is because
S3C2500B is designed to turn the bus occupancy to the next channel when there is non-used GDMA channel.
For instance,
Number 1: GDMA 0
Number 2: GDMA 1
Number 3: GDMA 2
Number 4: No GDMA → go to number 5: No GDMA → go to number 6: No GDMA → go to number 1: GDMA 0
Number 5: No GDMA → go to number 6: No GDMA → go to number 1: GDMA 0
Number 6: No GDMA → go to number 1: GDMA 0
12-6
DPRIR
Channel
0
GDMA 0
0
GDMA 1
0
GDMA 2
0
Not used
0
Not used
0
Not used
Expected Bus
Actual GDMA
Occupancy
Channel Run
1/3
GDMA 0
1/3
GDMA 1
1/3
GDMA 2
0
GDMA 0
0
GDMA 0
0
GDMA 0
S3C2500B
Real System
Bus Occupancy
1/6
1/6
1/6
1/6
1/6
1/6

Advertisement

Table of Contents
loading

Table of Contents