标题 | 阅读 | 评论 | 转发 | 发布日期 | |
---|---|---|---|---|---|
编译和运行Codec Engine examples(小寿转载) | 5258 | 1 | 2 | 2011-09-23 | |
at91sam9260 linux 中断调用示意图(小寿原创) | 3502 | 0 | 0 | 2010-07-09 | |
环形缓冲区的实现原理(ring buffer)(小寿转载 ) | 35008 | 1 | 7 | 2010-06-17 | |
uboot 和linux内核关键 地址解析!(小寿原创) | 2490 | 0 | 0 | 2010-06-10 | |
u-boot地址空间分配图(小寿原创) | 2475 | 0 | 0 | 2009-08-26 | |
常用官方网站(小寿原创) | 1275 | 0 | 0 | 2009-06-17 | |
linux C程序中获取shell脚本输出(小寿修改) | 2825 | 1 | 1 | 2009-05-08 | |
linux下查找文件内容!find+grep(小寿原创) | 12063 | 1 | 0 | 2008-05-10 | |
Mysql数据库安装-卸载及-密码修改(小寿原创) | 2420 | 0 | 0 | 2008-03-28 | |
获取当前的绝对路径(小寿原创) | 3910 | 1 | 0 | 2008-03-27 | |
TI davinci开发之前必须看的 (小寿转载) | 2503 | 0 | 0 | 2011-09-23 | |
Git 中文教程 (小寿转载) | 1155 | 0 | 1 | 2011-07-12 | |
CMake 实践 (小寿转载) | 1458 | 0 | 0 | 2011-07-12 | |
炒黄金挂单教程(小寿修改) | 2113 | 0 | 0 | 2010-09-07 | |
UART设备驱动(小寿转载) | 3656 | 0 | 1 | 2010-07-22 | |
Linux终端设备驱动(理顺概念)(小寿转载) | 3200 | 0 | 1 | 2010-07-22 | |
arm板 释放ttyS0作为通信串口(关闭调试串口)(小寿转载) | 5938 | 0 | 0 | 2010-07-02 | |
Epson TM-T88IV 热敏票据打印机串口程序linux(小寿) | 5423 | 0 | 0 | 2010-06-19 | |
esc/pos打印指令 (小寿转载) | 30999 | 1 | 0 | 2010-06-19 | |
Linux内核中的platform机制 (小寿转载) | 1380 | 0 | 1 | 2010-03-27 |
config20102010-01-15 01:27
若看到,一定帮我,谢谢! FPGA有2个PIN与2440中断相连。1s都可以产生1333次中断(750us)。 中断服务子程序:产生中断后将fpga寄存器的数据读出放入内存(链表的一个元素),并由2440写FPGA寄存器清除中断,通知驱动中的读函数数据已处理完毕(这一块是用等待队列,来唤醒驱动中的读函数)。从示波器上看,完成这些用了50us. 我想让每次中断产生的数据在下次中断来前执行完毕,也就是说还有700us的时间处理。但是现在两个中断同时出现不能完成,一个中断可以完成。若将中断周期换为1ms,刚两个可以同时完成。(完成思路:读取链到的一个元素(128位)到用户层,在链表中删除这个元素,再由socket送入PC)。任意时刻链表的长度为1或者0。 出现问题的现象:链表的长度瞬时变的很长,上万。我猜就是下次中断来之前数据没读走,就造成了恶性循环,再也读不完。或者两个中断突然就剩下一个,还有个没有了(1,我估计是执行的过程中,没有清楚中断就退出,恢复不了了,可能是没有保护好,不知???) 2,从时间是看,剩下的700us怎么可能处理不完这件事情呢? 3,同时处理两个难道cpu到极限的吗? 4,cpu中断返回后,是不是没有立即去等到队列等待处去执行,过了会才过去?有没有对策。 5,我估计cpu每次从中断返回到驱动中的读函数数据这个切换过程可能耗时很多(猜),所以我尝试的方法:10次中断的数据存在一起后,再唤醒驱动中的读函数的等待队列去读。结果是一样的,还是来不及?很想不通。 6, 有没有延时中断子函数的方法?local_irq_save()?
sanfenxiao2008-05-07 00:21
北京瑞雪技术团队有个项目请兼职,项目要求如下: 瑞雪团队又有新项目了!加入这个发展的日新月异的技术团队吧!机会多多!! 项目:solarisx86下访问pci网卡的状态寄存器,以实现网卡通信和双冗余备份功能 环境:solarisx86 (5.10版本,我是在www.sun.com上down的) 设备:rtls8139pci双网卡(这是自己开发的一块“双网卡”,就是做在一块板子上有2个网络控制芯片, 即一个板子上有两块网卡,网卡1和网卡2) 最终功能:实现网卡的正常通信功能和实现双网卡的双冗余备份功能。(同一时间只有一块网卡工作,另一块网卡在备用状态, 当其中的工作网卡故障时,切换到备份网卡工作以保证网络正常通信) 实现方法:在solarisx86下通过访问pci双网卡的配置空间,i/o空间,内存空间某个寄存器以获取网卡的链路状态。 具体一点:通过读取网卡1的配置空间得到i/o基址,然后查询某个偏移量(i/o基址+offset)以读取状态寄存器的状态。 觉得主要问题是:如何在solarisx86下读取pci网卡的i/o空间。 目前状态:双网卡硬件上已经实现,在vxworks,window,solaris下都能正常工作。 在solarisx86下用系统本身自带的rtls驱动或者网上下载的驱动都可以正常工作。 现在的问题就是怎么加这个冗余备份切换功能。 资料:8139芯片手册可以在网上下载,文档名称是p-guide(8139)和spec-8139d(130).pdf,应该可以下载到。 环境搭建:我自己的调试环境是一个旧的笔记本,我的上面的网卡正好是rtls8139的。 2块网卡都有自己独立的function id,bus id,device id和自己独立的配置空间。 要求是北京,天津地区均可, 联系方式: 手机:13552584515 QQ:846005373 E-Mail:ruixuejishu@sina.com 联系人:瑞雪技术 李金喜