Simultaneous High speed USB transfer with eDMA transfer

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

Simultaneous High speed USB transfer with eDMA transfer

跳至解决方案
692 次查看
mrharmonsr
Contributor III

Using a K64 MCU - MK61FN1M0VMJ12

I want to transfer data into memory from an external peripheral AND transfer data from memory via high speed USB at the same time.  Currently I am doing these operations sequentially.

I can't find information about the relative priority of the two BUS masters, is it documented?

I assume the two transfers will share the bus, only using the cycles needed.

Can anyone point me to some documentation on the topic?

Larry

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

Hi Larry,

The K64 reference manual chapter 3.3.6 shows the crossbar switch configuration.

The ARM core as Master0, DMA as Master2 and USB module as Master4 using crossbar to access slave device.

pastedImage_1.png

The K64 reference manual chapter18 shows how to set crossbar switch for master with different priority to access slave.

Wish it helps.


Have a great day,
Mike

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

在原帖中查看解决方案

0 项奖励
回复
2 回复数
555 次查看
mrharmonsr
Contributor III

I finally have a working solution.  Initially I used SRAM to hold buffers and HSUSB descriptors.  This works well, but consumes a lot of SRAM.

I was able to get everything working in DDR by a combination of using the aliased DDR address space for USB descriptors and buffers and changing the crossbar priorities for the DDR (Slave 5) with HSUSB at the highest priority followed by eDMA then the ARM Core.

0 项奖励
回复
556 次查看
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi Larry,

The K64 reference manual chapter 3.3.6 shows the crossbar switch configuration.

The ARM core as Master0, DMA as Master2 and USB module as Master4 using crossbar to access slave device.

pastedImage_1.png

The K64 reference manual chapter18 shows how to set crossbar switch for master with different priority to access slave.

Wish it helps.


Have a great day,
Mike

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

0 项奖励
回复