msdhj
驱动牛犊
驱动牛犊
  • 注册日期2005-03-30
  • 最后登录2005-04-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:906回复:3

91c96网卡,很困惑的问题!!!

楼主#
更多 发布于:2005-03-30 17:47
91c96网卡,word(16bit)读写,68K bus
裸机下测试:
1. in loopback mode, 可以收到发送的数据,前面加了Byte count,但是没有status word。
2. in normal, 可以接收到PC发送的包,包前面加了Byte count,但是也没有status word,并且有丢数据现象,总是第9和12个word 丢失,后面的没有分析。

修改smsc网站上的driver,现象和裸机下(2)一样。

为什么没有加上status word,这是91c96自己加的,为什么总读不到;还有为什么会有丢数据现象,是进到chip里的数据就有问题?

各位驱友,可否遇到过此问题;或是你对此问题有什么丝丝见解,我都不甚感激!!!
wxl_50685330
论坛版主
论坛版主
  • 注册日期2002-11-19
  • 最后登录2018-09-25
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望521点
  • 贡献值0点
  • 好评度419点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-03-30 19:24
byte count和status是读mac帧之前读出来的值吗?

我没有具体看过这块网卡,不过原来用的一块卡曾经有过读这些值有误的状况,你再看看data sheet,看看有没有什么寄存器值没设好,还有以上数据是从同一端口串行读出的吗?还有没有别的地方可以读出这些值,你看看其他地方读出来的值对不对。再看看读时序有没有什么要求。
根据地的兄弟们,团结就是力量
msdhj
驱动牛犊
驱动牛犊
  • 注册日期2005-03-30
  • 最后登录2005-04-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-03-31 09:44
我是按照datasheet上的流程操作的;status word&byte count是网卡就收到正确的MAC帧后,在帧前面加的。
会不会是芯片接收的物理线路(变压器等)不匹配,导致数据丢失

 :( :( :(
wxl_50685330
论坛版主
论坛版主
  • 注册日期2002-11-19
  • 最后登录2018-09-25
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望521点
  • 贡献值0点
  • 好评度419点
  • 原创分0分
  • 专家分0分
地板#
发布于:2005-03-31 13:43
这个问题你需要多试试,你能确定从接受端口读数,当读第二个字时本来是status,现在变成了mac帧的第一个字?

你直接去读接收长度和状态寄存器看看呢。

变压器不匹配怎么可能老是同一个错误呢。

如果可能,最好直接询问一下芯片厂的工程师,这个问题好像有好几次了,看看有什么地方需要特别处理
根据地的兄弟们,团结就是力量
游客

返回顶部