阅读:2810回复:7
谁做过DMA 读数据 与 内核空间内存映射到用户空间的读取速度比较?
我的PCI板子上有个ARM控制器,可以把采集芯片fifo中数据DMA到板上的ram中,而这段ram可通过PCI基址访问,这样我就可以在驱动中把这段地址空间映射到用户空间进行读取,
另外 我可以通过 PCI的burstmaster方式 直接 DMA数据到用户地址空间,头一种实现比较容易,後一种牵涉到两个处理器,不是很方便实现。 大家给个建议,哪种速度较快? |
|
沙发#
发布于:2007-08-09 11:24
在线等,我已经回答了好几个别人的问题,有没人回答我的问题啊?
|
|
板凳#
发布于:2007-08-09 11:46
楼主的问题俺不明白,我连PCI基地址,Local端地址以及怎么映射的都搞不清楚,比如下面的语句m_IoRange1.out(0xC0,2)是什么意思,往0xC0里面写入2,但是0xC0这个地址在什么地方,其实这条语句是往板子上的FPGA里面写东西的,但是这个地址怎么贺FPGA搭上边,还有就是初始化了IoRange0和IoRange1,这两个IO怎么在内存和本地段之间建立关系啊!楼主咱们都帮忙想象对方的问题吧,谢谢
|
|
地板#
发布于:2007-08-09 12:03
还有啊楼主,我看了访问9054内部寄存器都是用m_IoRange0,访问FPGA都是用的m_IoRange1,请问为什么,大家都来讨论一下啊,版主可以帮忙啊,我们这些迷途的羔羊好可怜啊
|
|
地下室#
发布于:2007-08-09 12:13
1 0xC0是 基地址的偏移量,向那个你的基地址+0xC0写2,
2 要问你的硬件工程师是怎么设计的了! 你老人家自己新开个主贴吧,你这这叫捣乱,哈哈!!!! |
|
5楼#
发布于:2007-08-09 12:21
没有捣乱的意思,楼主莫见怪,只是不明白,新帖已经开了,谢谢!
|
|
6楼#
发布于:2007-08-10 15:56
人呢,自己顶
|
|
7楼#
发布于:2007-08-13 13:47
理论上是DMA 快。内存映射还是要CPU处理的
|
|