在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 13628|回复: 1

PCI Latency timer

[复制链接]
发表于 2003-7-30 16:45:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
Jack:
    问一下latency timer的问题。在PCI规范2.2中,好像不允许latency timer硬连线到很大的值,最大为16。在规范2.2中,为了防止主设备独占总线,专门设置这个寄存器,如果latency timer定死,即不随交易进行而逐步减一,这与规范冲突,在实际的实现中
有没有可能出现问题?譬如一次交易超过300,可能交易中间GNT已经无效,但PCI卡仍然独占总线,因为latency timer永远不会到期。如果没问题的话,交易中止大部分的原因是不是由桥芯片发出stopn信号?
    我猜想你的设计中也用到FIFO,用于PCI接口和Local接口缓冲数据以及同步数据,按照你的经验,FIFO中有多少数据申请总线较好?
    每一次DMA完成后,发送中断,用什么方法清除中断?用软件通过PCI接口往中断寄存器写入数据清掉,还是有更好的方法?
发表于 2003-7-30 17:13:23 | 显示全部楼层

PCI Latency timer

latency timer 是由系统软件根据min_gnt的值来分配的,我们在设计时为了提高自己的pci板卡的传输效率,在驱动里会自己修改该值,应为我们的板卡不允许数据断链,而其他pci设备最多影响他们的传输速率,不会有其他方面的影响的。
其实既是你设定成最大255,实际中也不会到达255个clk(通常20~40个,这是几年前的测试结果,不知现在的pci桥的信能是否有了改进),其原因真如你所说,是由桥芯片发出stopn信号停止了。
我用的fifo为512x32的,一般在一半满时就可以申请了,当然不同设计应该有不同的考虑。
清除中断的方法是由你自己来定的,常设计为向中断清除寄存器写1来清除
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-4-6 02:25 , Processed in 0.017714 second(s), 8 queries , Gzip On, MemCached On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表