Which DRAM controller slave ports is able to be accessed through which master ports on a Kinetis K70

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

Which DRAM controller slave ports is able to be accessed through which master ports on a Kinetis K70

跳至解决方案
1,329 次查看
ClausStovgaard
Contributor III

I am doing an application where performance is extremely important, causing the need for pushing the K70 to its performance limits. One of the requirements is that I need to DMA data with approximate 50 MB/s from the Flexbus to DDR memory with very low latency, while the Cortex-M4 also accessing the memory controller.

According to the K70 reference manual the DRAM controller’s slave ports can be accessed by the following master ports based on address range.

0x7000_0000-0x7FFF_FFFF

  • Cortex-M4 (M1), eDMA ( M2) can access S5, S6 and S7
  • LCD (M4) can access S5, S6 and S7
  • LCD (M5), eSDHC/NFC (M3), ENET (M7), USB (M6) can access S5

0x8000_0000-0x8FFF_FFFF

  • Cortex-M4 (M1), eDMA ( M2) can access S5
  • LCD (M4) can access S5, S6 and S7
  • LCD (M5), eSDHC/NFC (M3), ENET (M7), USB (M6) can access S5, S6 and S7

Though looking in the Freescale training material http://www.freescale.com/files/training_pdf/WBNR_LA2012_K70SP.pdf?lang_cd=en page 27 it states:

0x7000_0000-0x7FFF_FFFF

  • Cortex-M4 (M1), eDMA ( M2) can access S5
  • LCD (M4) can access S6
  • LCD (M5), eSDHC/NFC (M3), ENET (M7), USB (M6) can access S7

0x8000_0000-0x8FFF_FFFF

  • Cortex-M4 (M1), eDMA ( M2) can access S5
  • LCD (M4) can access S6
  • LCD (M5), eSDHC/NFC (M3), ENET (M7), USB (M6) can access S7

So what is correct? Is the Cortex M and DMA limited to one slave port together, or is the reference manual correct?

If the reference manual is correct. How can I change which slave port a master ports tries with its first attempt. I want to setup the system so the Cortex-M4 always asks S6 first, and the DMA always ask S7, and they both have the highest priority on those ports. The LCD is then able to share the last port together with the USB, ENET etc.

I know about the port priority (AXBS_PRSn), and arbitration (AXBS_CRSn) registers, but I can not find any details above the other elements, which I need to know to push the K70 to it full potential.

Notice, I have created a service request about this issue (1-3027240671 ) and will try to update this thread if possible with information I receive.

标签 (1)
标记 (3)
0 项奖励
回复
1 解答
1,076 次查看
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi Claus,

Please check below K70 updated DRAM controller memory map info.

updated K70 memory map about DRAM controller.jpg

Related info will be updated at next version K70 reference manual soon.

Sorry for our document with incorrect info may bring any inconvenience to you.


Wish it helps.
best regards
Ma Hui

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

在原帖中查看解决方案

0 项奖励
回复
3 回复数
1,077 次查看
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi Claus,

Please check below K70 updated DRAM controller memory map info.

updated K70 memory map about DRAM controller.jpg

Related info will be updated at next version K70 reference manual soon.

Sorry for our document with incorrect info may bring any inconvenience to you.


Wish it helps.
best regards
Ma Hui

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

0 项奖励
回复
1,076 次查看
ClausStovgaard
Contributor III

Thanks for the update.

Just for other users running into the same issues.

Based on your answer it seems that the optimum settings is something like.

Slave port

Prio1

Prio2

Prio3

S4M2M1Don't care
S5M2M1M0
S6M4Don't careDon't care
S7M5M3M6

And regarding parking register, something like.

Slave portParked
S4M2
S5M2
S6M4
S7M5

I am looking into the DDR controller registers for the last performance tweaks.

Have a nice day.

0 项奖励
回复
1,076 次查看
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi Claus,

I am in processing to get confirmation info from Kinetis product team.

Thank you for the patience.


Wish it helps.
best regards
Ma Hui

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

0 项奖励
回复