完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
各位专家,
EVM板卡是通过AMC to pcie adapter接到电脑主板上的,想实现PC内存与DSP的outbound region数据交换。 设置OB_SIZE=1MB,现在配置outbound region 0(0x6000_0000)映射到PC内存中的一个位置(假设为0x1230_0000),当DSP发起outbound read时(用EDMA传输),发现传输的数据是一些随机值,并不是想要传输的数据。 下面是我的具体配置:(这里的srcAddr=0x1230_0000) OB_SIZE=1MB; pageBase = srcAddr & 0xFFFFFFFF; WDC_WriteAddr32(hDev, 0, OB_OFFSET_INDEX(0), pageBase|0x1);//将pageBase|0x1写入OB_OFFSET_INDEX(0),下同 WDC_WriteAddr32(hDev, 0, OB_OFFSET_HI(0), 0x0); PS:传输函数的代码是改写的pciedemo.c,只是把在Linux下的操作通过调用windriver中的函数转化到了Windows下的操作。 问题: 为什么测试时传输的数据是一些随机值,并不是想要传输的数据?是没有做好outbound region和PC内存的映射吗? 谢谢! |
|
相关推荐
3个回答
|
|
根据你的描述,DSP应该是设置为RC,PC为EP。请先:
1)查看下DEBUG0寄存器中的LTSSM_STATE是否为0x11(L0) 2)读取一下PC的PCIe deviceID,看看是否正确。 如果link处于L0状态并能读到deviceID,那么link是连接上了。 请再检查一下两边outbound和inbound的地址映射,可以先用CPU直接读写操作,避免由于EDMA配置有误导致的数据读写失败。 |
|
|
|
问题已解决,是由于PC内存地址映射到outbound region 0时,需要使用的地址是物理地址而不是虚拟地址。
|
|
|
|
您好: 请教一下,您最终实现的EDMA通信,是DSP作为RC,PC作为EP吗?所提到的物理地址是windriver里面那个结构体I.MEM.PAGE[0X0]里面的physicalAddr吗?好像是64位,然后取其low 32bit。 谢谢! |
|
|
|
只有小组成员才能发言,加入小组>>
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
692 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
605 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1064 浏览 1 评论
755 浏览 0 评论
普中科技F28335开发板每次上电复位后数码管都会显示,如何熄灭它?
529 浏览 1 评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
171浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
133浏览 14评论
在使用3254进行录音的时候出现一个奇怪的现象,右声道有吱吱声,请教一下,是否是什么寄存器设置存在问题?
129浏览 13评论
TLV320芯片内部自带数字滤波功能,请问linein进来的模拟信号是否是先经过ADC的超采样?
125浏览 12评论
GD32F303RCT6配置PA4 ADC引脚,将PA2代替key功能,PA2连接时无法实现预期功能,为什么?
62浏览 10评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-28 12:10 , Processed in 0.862175 second(s), Total 82, Slave 66 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号