UCC polling frequency in case of scheduler

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

UCC polling frequency in case of scheduler

1,108 次查看
nicolasl_hostis
Contributor I

Hi,

I have a timing reponse difference when configuring UCCs with or without sheduler on a MPC8321E.

On one HW, I configure in ethernet

- UCC2 with 5 queues (QOS) + scheduler enabled

- UCC3 + UCC4 with 1 queue (no scheduler)

- UTPT register configured with 256

On the other HW, I configure in ethernet

- UCC2 + UCC3 with 5 queues (QOS) + scheduler enabled

- UCC4 with 1 queue (no scheduler)

- UTPT register configured with 256

On both configurations, the QUICC engine has the priority on the internal BUS.

When I perform a simple memory test to know my throughput, with no ethernet messages in RX nor TX, I notice that

- the first configuration is worse, which means to me that the UCC polls more.

If I activate the scheduler on all queues, I have exactly the same timing performances

Same timing performances also if I set the UTPT register to 384 only on the UCCs with 1 queue.

Has the scheduler a lower polling frequency compared to "no scheduler" ? If yes, any factor ?

Is it forbidden to enable a scheduler on a UCC with only one queue ? (it is specified in the doc §29.5.3.3: "When the number of send queues is 1 the scheduler shall be disabled.")

Thanks,

Nicolas L'HOSTIS

标签 (1)
0 项奖励
回复
1 回复

880 次查看
alexander_yakov
NXP Employee
NXP Employee

Sorry for delay, I had to consult with factory expert.

The following is said in QE Reference Manual, Section 8.17.9 "Enabling the UCC":

When the scheduler is disabled, the UCC Transmitter polls the TxBDs on expiration of the polling timer

(programmed in UTPT register). When the scheduler is enabled, the UCC would poll the CPU counters

instead.

So, it is difficult to predict this factor, because it depends on how these CPU counters are configured in your case.

It is not forbidden to enable the scheduler for only one queue, this is just "not recommended" due to QE performance reasons - scheduller code is quite complicated and takes some time to execute. If you want to run scheduler for one queue just to reduce bus polling, than this is not necessary, this can be reduced by UTPT.


Have a great day,
Alexander

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 项奖励
回复