huyupeng
驱动牛犊
驱动牛犊
  • 注册日期2004-02-17
  • 最后登录2005-08-03
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望4点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1766回复:11

请教ISP1581 DMA传输的问题

楼主#
更多 发布于:2004-06-14 13:32
我的固件上使用了GDMA功能,硬件上有一个CPLD用作DMA 主控制器,实现大块数据传输

在driver中先发一个control命令,指定DMA的块大小(不超过端点最大允许的块大小),固件中就初始化ISP1581 和用于作DMA 主控制器的CPLD,开始外部SRAM和ISP1581之间的DMA读写传输,

driver中用bulk read 和bulk write 实现ISP1581和PC之间的读写

用Bushound看,用bulk write总是对的,速度大约为136KBytes/sec。此时是DMA 从ISP1581取数到SRAM

用Bushound看,用bulk read经常出现,在读N个字节时,最后一个字节有错,或者是只读出了N-4个字节,速度大约为2MBytes/sec。此时是DMA 从SRAM取数到ISP1581

请问问题出在什么地方上,是硬件和固件的问题?

谢谢!
天天好心情
beaumenu
驱动牛犊
驱动牛犊
  • 注册日期2004-06-11
  • 最后登录2009-01-05
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望5点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-06-14 14:03
你好 我也在做ISP1581,碰到许多问题,想想你学习学习。
QQ:32634068
MSN beaumenu@hotmail.com
huyupeng
驱动牛犊
驱动牛犊
  • 注册日期2004-02-17
  • 最后登录2005-08-03
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望4点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-06-14 20:05
我也开始作不久,

是买了一块带DMA功能的USB2.0开发板,

我们一起交流,呵呵
天天好心情
darydl
驱动小牛
驱动小牛
  • 注册日期2003-06-29
  • 最后登录2017-05-02
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2004-06-14 20:25
我也在做1581,好像做这个的不多啊,大家多交流啊
lider81824
驱动牛犊
驱动牛犊
  • 注册日期2004-06-22
  • 最后登录2004-06-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-06-25 09:23
to jinghuiren
 你的电路让我看看
lider81824
驱动牛犊
驱动牛犊
  • 注册日期2004-06-22
  • 最后登录2004-06-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-06-25 09:26
to huyupeng
你电路让我看看
lider81824
驱动牛犊
驱动牛犊
  • 注册日期2004-06-22
  • 最后登录2004-06-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-06-25 09:30
to huyupeng
你电路让我看看

lider01@163.com
float97
驱动牛犊
驱动牛犊
  • 注册日期2002-06-06
  • 最后登录2005-03-16
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-06-25 11:42


[编辑 -  6/25/04 by  float97]
我是学生
float97
驱动牛犊
驱动牛犊
  • 注册日期2002-06-06
  • 最后登录2005-03-16
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-06-25 11:43
兄弟,你真幸运,我昨天刚解决这个问题,足足花费了两个多星期:在CPLD到USB芯片的写信号线上串一个200-500欧姆的电阻。
我是学生
huyupeng
驱动牛犊
驱动牛犊
  • 注册日期2004-02-17
  • 最后登录2005-08-03
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望4点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2004-06-25 20:26
兄弟!

你用的是GDMA吗?

握手!

以后多交流!
天天好心情
huyupeng
驱动牛犊
驱动牛犊
  • 注册日期2004-02-17
  • 最后登录2005-08-03
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望4点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2004-06-25 20:31
我是向版上xxg买的开发板,是作为公司买的

不好将电路图送人的

向我要原理图的兄弟,不好意思了

这个开发板还是很有助学习的,特别是DMA
天天好心情
metalwing
驱动中牛
驱动中牛
  • 注册日期2003-10-13
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分178分
  • 威望58点
  • 贡献值0点
  • 好评度17点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2004-06-28 09:40
我也在搞1581的DMA传输,大家一起探讨探讨。
我是要将PC内部的文件发送到板上的SRAM中,在1581的VENDOR
命令中有个 BULK TRANSFER SETUP (0471),它送的
6个字节的数据中 OFFSET 是干什么用的?在具体实用中
如何处理它们?
DMA 传输命令 01 是从1581的端点 BUFFER 里读数据,
还是从 USB 总线上读数据(DMA 从模式)?
谢谢。

metalwing@sina.com
新手上路,请多关照.
游客

返回顶部