基于ISP1581的USB数据采集系统的实现

来源:电子工程世界 作者:—— 时间:2010-08-24 09:27

经过反复测试发现,在现有硬件上批量传输的速度在60 Mb/s左右,可以满足当前系统采样频率为500 kHz时的数据采集要求,即500K×4路×16=32 Mb/s。但与USB2.0规范的极限速度相比,现有的批量传输速度还不及其13%,分析其原因:

  (1) USB2.0规范定义的最大速度为480 Mb/s,但它是包含令牌包在内的传输,因此,若扣除通信协议中的令牌,实际传输速度要远低于480 Mb/s。

  (2) 从访问寄存器的时序参数可以看出,读/写周期最小为80 ns,即DSP对ISP1581读写的最高频率是12.5 MHz,由于每次读写操作的数据为2 B,所以DSP与接口芯片之间数据传输的最高速率是25 MB/s,最后的实际值应该小于此值。

  (3) 利用WinDriver开发驱动,事实上它只是定制和调用WinDriver提供的通用驱动而已,所以并非有针对性地对特定硬件编程,程序执行效率上也不免大打折扣。

  (4) 计算机与USB设备的通信中还包含对计算机硬盘的写操作,使用测试软件对所用机器硬盘进行写测试,测得平均速度在22~25 MB/s之间,因此硬盘的写速度也是影响USB数据传输速度的原因之一。

  因此若想在现有硬件平台上获得更高的速度可以在以下几个方面进行:采用端点的双缓冲模式、采用ISP1581的DMA模式、采用效率更高的驱动开发方式及优化固件程序以提高硬件的工作效率等。

  参考文献

  [1]  廖济林.USB2.0应用系统开发实例精讲[M].北京:电子工业出版社,2006.

  [2]  张建鹏,解国明,李刚.基于ISP1581型接口电路的USB2.0接口设计[J].国外电子元器件, 2005(9).

  [3]  黎美. 基于USB2.0的接口芯片ISP1581的应用与设计[J].集成电路应用,2005(7).

  [4]  Compaq, Intel, Lucent, Microsoft, NEC, Philips.Universal serial bus specification, Revision2.0[S].2000.

  [5]  周立功.PDIUSBD12 USB固件编程与驱动开发[M].北京:北京航空航天大学出版社,2003.

  [6]  武安河,邰铭,于洪涛. Windows 2000/XP WDM 设备驱动程序开发[M].北京:电子工业出版社,2002.

相关文章

资讯排行榜

  • 每日排行
  • 每周排行
  • 每月排行

华强资讯微信号

关注方法:
· 使用微信扫一扫二维码
· 搜索微信号:华强微电子