bjzps
驱动小牛
驱动小牛
  • 注册日期2003-03-06
  • 最后登录2009-04-13
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望22点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
阅读:1189回复:4

有关做u盘的buffer设计问题

楼主#
更多 发布于:2003-08-29 11:36
我是拿motorola 850做usb设备和pc做上传下载的交互。要求免驱的。我现在是按u盘做的,用ram模拟的fat16文件系统。握手信号什么的都是硬件自己回的。我现在的问题是:如果是scsi的写命令,写一个扇区的话,那么就会一次产生9个中断(scsi命令加512/64=8块),9个buffer。我的后台处理就要把这9个buffer都保存下来,留以后处理。那么要是一次写多个块呢?我抓u盘看见过一次写8个块的,那就是65个buffer要保存,要30多k的缓冲。大家的buffer缓冲是做的多大呢?怎么解决的这个问题?
还有对fat16的文件系统的处理程序哪里有?
我是拿vworks的ram模拟的u盘,对于vxworks这端我怎么把文件读出来呢?vxwork支持fat16的文件系统么?
还是说我开始的设计就有问题?不该按u盘做?
test2test
驱动牛犊
驱动牛犊
  • 注册日期2003-07-03
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分46分
  • 威望7点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-09-16 14:17
you can respond NAK to host while recive one int, thus only 512 byte OK :D
bjzps
驱动小牛
驱动小牛
  • 注册日期2003-03-06
  • 最后登录2009-04-13
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望22点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-09-17 10:18
motorola的ppc850是自动回握手的阿,这点我想过了不行的。
我的bd在大数据量写的时候根本就不够用
谁做用850做过usb阿
NewTech
驱动大牛
驱动大牛
  • 注册日期2002-10-02
  • 最后登录2010-03-27
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望263点
  • 贡献值0点
  • 好评度86点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-09-17 12:21
这要求你的固件能够不断的将缓冲区的数据取走,这样就不要很大的缓冲区了!
bjzps
驱动小牛
驱动小牛
  • 注册日期2003-03-06
  • 最后登录2009-04-13
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望22点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-09-17 14:56
问题是我现在固件是做好的,850是先根据bd填充buffer,然后上报中断,我得到中断后才能处理。没有bd的话,会出现bsy中断错误,因为没有bd,导致包的丢失。因为是握手自动回复,当有write命令写大数据的时候,我根本没法流控的。:(
不知道谁用850做过usb的,还有你们做的时候有没有bd的概念
游客

返回顶部