Hi,
RM Rev. 4, 07/2018 mentioned we can set the priority for IPU module as below.
However, I could not find any description in RM. Could you please teach us following points?
Q1. What does meaning of AXI ID 11, 10, 01 and 00?
Q2. What does meaning of bit field? 0000b is the lowest priority and 0111b is the highest priority. Is it right?
Best Regards,
Kazuma Sasaki.
Solved! Go to Solution.
Hello Kazuma Sasaki,
The AXI IDs refer to different channels on the IPU so you can set the priority of each channel accordingly. You can see a bit more on this on the “Handling real time channels” section of the Reference Manual.
Regarding your second question you are correct, a higher binary value translates to a higher priority. 1000b is the lowest priority and 1111b is the highest priority. If you wish to force a specific priority trough these registers you need to use 1 on the MSB, otherwise the priority will be passed as configured.
I hope this information helps!
Regards,
Hello Kazuma Sasaki,
The AXI IDs refer to different channels on the IPU so you can set the priority of each channel accordingly. You can see a bit more on this on the “Handling real time channels” section of the Reference Manual.
Regarding your second question you are correct, a higher binary value translates to a higher priority. 1000b is the lowest priority and 1111b is the highest priority. If you wish to force a specific priority trough these registers you need to use 1 on the MSB, otherwise the priority will be passed as configured.
I hope this information helps!
Regards,
Hello gusarambula,
I appreciate your support. it is very useful information for us.
Let me confirm one more thing.
From section of the 38.4.2.4.1 Handling real time channels in the Reference Manual.
In order to do that, the user has to set the channel's ID according to the settings in the
memory controller and set the priority of the channel according to its nature. The buffer
controller (BCW/BCR) holds all the pending requests that won the arbitration. However,
as the memory controller can distinguish between the real time channels and non real
time channels within the IPU, there could be a situation where the real time requests are
blocked as the IPU's queue is filled with non real time requests. To avoid that, the user
can limit the number of non-real time requests in the queue.The queue for read requests can handle up to 8 requests. The queue for write requests can
handle up to 6 requests. The user can limit the number of non real time requests by
setting the USED_BUFS_MAX_W for write requests and USED_BUFS_MAX_R for
read requests. The feature that limits the number of requests is enabled by setting the
USED_BUFS_EN_R bit for the read requests and USED_BUFS_EN_W for the write
requests.
We would like to limit the number of non-real time stream to avoid IPU bus filling error.
How do we chose real time channels of IDMAC?
Best Regards,
Kazuma Sasaki.