[发明专利]一种提高VxWorks实时性的CPCI设备中断复用方法有效
申请号: | 201110266556.1 | 申请日: | 2011-09-09 |
公开(公告)号: | CN102999381A | 公开(公告)日: | 2013-03-27 |
发明(设计)人: | 牛俊慧;张典国;鞠锋 | 申请(专利权)人: | 中国航天科工集团第三研究院第八三五七研究所 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 核工业专利中心 11007 | 代理人: | 高尚梅 |
地址: | 300141*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 提高 vxworks 实时 cpci 设备 中断 方法 | ||
技术领域
本发明是一种基于嵌入式操作系统VxWorks,为提高系统执行效率及实时性,解决多个CPCI设备访问控制及中断复用的方法,具体应用于多个CPCI设备共存的控制系统。
背景技术
VxWorks作为嵌入式实时操作系统,由于其性能高、具有很好的安全性和可靠性,已经成为事实上的工业标准和军用标准,目前应用于许多领域。随着某些控制系统功能要求的增多,单一系统中的功能接口设备数量在不断增加,处理好这些功能接口设备在一个系统中的共存问题,尤其是中断冲突问题,对于整个系统工作的稳定性、可靠性以及良好的实时性具有非常重要的意义。
目前多功能板卡的控制系统中常采用CPCI总线将各个具有独立功能的板卡进行集成,由VxWorks统一控制管理,使其在同一系统中分别实现不同的功能。VxWorks提供了对标准CPCI接口设备的支持。对每一个系统中的CPCI设备,操作系统会为其分配一个中断号,并且有可能给不同的设备分配相同的中断号。VxWorks对某一CPCI设备的访问控制,常用的方法即标准驱动方式,应用程序通过操作系统内核调用操作系统提供的标准接口模块访问设备。这种方式下,被访问控制设备大致分为三种类型:字符设备、块设备和网络设备,根据不同的设备类型设备驱动程序的管理也被划分成与设备类型对应的三种模块。VxWorks的I/O系统为用户提供了与设备无关的用户接口,应用程序通过标准接口open()、read()、write()、ioctl()访问设备控制程序。当向系统中添加设备时,操作系统会向自身的设备列表中添加新的结点,除了设备列表外,VxWorks操作系统还管理驱动程序描述表,I/O系统通过这个表存储驱动程序的各个函数的入口点。只要是在系统中安装过的驱动程序都会在这个表中的相应的入口点。根据设备驱动的主要功能,标准接口的设备驱动程序需要的标准函数一般包括注册、卸载函数,打开、关闭函数,读、写操作函数,设备控制函数和中断服务函数。
目前大部分应用实现中,VxWorks对CPCI设备的控制均采用了上面提到的访问方式。这种方法在系统中只有一个CPCI设备时是没问题的,但当系统中有多个CPCI设备时,它的缺点及带来的问题就会暴露:
1、操作系统的驱动程序描述表的大小是固定的,因此在系统的一次运行中,只能安装有限的驱动程序,当系统中存在的设备多时,无法共同工作;
2、对于每个CPCI设备,由于必须按照系统规定实现所有需要的接口函数,因此接口函数繁多;
3、当多个CPCI设备都需要使用中断时,系统可能会为不同设备分配相同的中断号,对使用相同中断号的不同设备的中断复用实现复杂;
4、由于对设备的很多操作都需要回调函数,中断响应的执行效率不高,实时性效果不理想。
发明内容
本发明的目的是:针对上述的VxWorks系统中多个CPCI设备共存时设备访问及中断控制的缺点和问题,提供一种高效的、可扩展的设备访问及中断复用处理的方法,只要是使用VxWorks操作系统,系统中共存多个CPCI设备的应用模式都可以使用。
本发明是这样实现的:一种提高VxWorks实时性的CPCI设备中断复用方法,其中,包括:
步骤1、对设备设置中断方式;
对于不同的设备设置不同的中断方式的步骤,其中,设置为:
对于:由采用外部设备清除中断的处理方式的设备,采用电平触发方式来产生中断,当VxWorks完成中断处理后,由VxWorks直接通过写双口RAM固定地址清中断;
对于:采用自行清除中断的处理方式的设备,采用边沿触发的中断处理方式,操作系统在响应中断后专心处理数据,连续的数据读取完成后,芯片自身清除自身的中断状态;
步骤2、编写驱动;
对标准驱动方式中使用的函数进行精简与选择、在标准驱动方式众多需要包含和实现的函数中,选择使用以下函数:
找到PCI设备的函数;获取PCI设备地址空间的函数;获取系统为PCI设备分配的中断号函数;中断设置函数;
步骤3、编写设备操作函数;
步骤4、编写各个设备的中断服务程序;
在自行实现中断服务程序后,直接利用系统提供的中断设置函数设置中断服务程序,使得系统被中断时能够调用此中断服务程序处理中断。
本发明的优点是:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航天科工集团第三研究院第八三五七研究所,未经中国航天科工集团第三研究院第八三五七研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110266556.1/2.html,转载请声明来源钻瓜专利网。