本发明专利技术提供一种基于FPGA的中断聚合装置,包括FPGA单元,所述FPGA单元分别与一CPU以及复数个管理FXS接口的SLIC芯片连接;所述FPGA单元包括一中断检测单元和一模拟寄存器;所述中断检测单元用于根据配置中的断检测参数每间隔时间检测来自SLIC芯片的中断是否有效,若是,则将所述中断对应的标志位的值置为1并写入模拟寄存器中,否则,清零所述模拟寄存器中该中断对应的标志位;所述模拟寄存器用于存储所述SLIC芯片的中断标志位;所述FPGA单元还用于接收来自SLIC芯片的中断以及用于在模拟寄存器中存在非零的标志位时向CPU输出中断信号。本发明专利技术还提供一种基于FPGA的中断聚合方法,减少CPU逐个轮询造成的资源与时间的浪费,大大提高CPU响应速率。
【技术实现步骤摘要】
本专利技术涉及信号处理
,尤其涉及一种基于FPGA的中断聚合装置和方法。
技术介绍
每个SLIC芯片管理两个FXS接口工作,FXS接口中断查询是日常运用中常见的功能,如摘挂机检测等。对于大容量设备,带有很多FXS接口,需要中断引脚较多,会出现CPU引脚不足的问题。现有的技术一般采用接口中断信号“线与”之后送给CPU,CPU接收到中断后需要逐个中断源SLIC芯片,如果FXS接口数量多,会占用过多的CPU资源,且逐个轮询耗时太多,影响时效性,大大降低了CPU响应速率。
技术实现思路
本专利技术要解决的技术问题之一,在于提供一种基于FPGA的中断聚合装置,实现中断集中检测,减少CPU逐个轮询造成的资源与时间的浪费,大大提高CPU响应速率。本专利技术要解决的技术问题之一是这样实现的:一种基于FPGA的中断聚合装置,包括FPGA单元,所述FPGA单元分别与一CPU以及复数个管理FXS接口的SLIC芯片连接;所述FPGA单元包括一中断检测单元和一模拟寄存器;所述中断检测单元用于根据配置中的中断检测参数每间隔时间检测来自SLIC芯片的中断是否有效,若是,则将所述中断对应的标志位的值置为1并写入模拟寄存器中,否则,清零所述模拟寄存器中该中断对应的标志位;所述模拟寄存器用于存储所述SLIC芯片的中断标志位;所述FPGA单元还用于接收来自SLIC芯片的中断以及用于在模拟寄存器中存在非零的标志位时向CPU输出中断信号。进一步的,所述中断检测单元还用于中断防抖过滤。进一步的,所述中断检测参数为FPGA单元配置中预先设置好的参数,并可以通过CPU传来的参数进行修改。进一步的,所述中断检测参数包括检测中断时长和中断电位有效值。进一步的,所述FPGA单元通过总线与CPU连接,所述总线由片选CS#、写使能WE#、读使能RE#、地址ADD、数据DATA以及中断INT#组成。本专利技术要解决的技术问题之二,在于提供一种基于FPGA的中断聚合方法,实现中断集中检测,减少CPU逐个轮询造成的资源与时间的浪费,大大提高CPU响应速率。本专利技术要解决的技术问题之二是这样实现的:一种基于FPGA的中断聚合方法,需提供一带有中断检测单元和模拟寄存器的FPGA单元,所述方法包括如下步骤:步骤1、所述FPGA单元分别与一CPU以及复数个管理FXS接口的SLIC芯片连接;步骤2、所述中断检测单元根据配置中的中断检测参数每间隔时间检测来自SLIC芯片的中断是否有效,若是,则将所述中断对应的标志位的值置为1并写入模拟寄存器中,否则,清零所述模拟寄存器中该中断对应的标志位;步骤3、所述FPGA单元判断模拟寄存器中是否存在非零的标志位,若是,则向所述CPU输出中断信号,进入步骤4;否则,跳转至步骤2;步骤4、所述CPU接收到中断信号后从FPGA单元中的模拟寄存器中获取所有非零的标志位,并根据所述标志位做相应处理。进一步的,所述步骤2中判断中断是否有效之前还进行中断防抖过滤。进一步的,所述中断检测参数为FPGA单元配置中预先设置好的参数,并可以通过CPU传来的参数进行修改。进一步的,所述中断检测参数包括检测中断时长和中断电位有效值。进一步的,所述FPGA单元通过总线与CPU连接,所述总线由片选CS#、写使能WE#、读使能RE#、地址ADD、数据DATA以及中断INT#组成。本专利技术具有如下优点:1、通过一带有中断检测单元和模拟寄存器的FPGA单元连接CPU与SLIC芯片,对中断进行检测与记录,不需要占用CPU太多的引脚,有效降低CPU资源耗损;2、FPGA属于硬件语言,速率快;同时通过集中检测和集中配置,集中传递信息,实现中断聚合作用,CPU不需要对中断进行逐个轮询,就可直接获取中断信息,降低了FXS数量多时CPU逐个轮询所耗费的时间,大大提高响应速率;3、在FPGA单元内部设置模拟寄存器,可以简单有效地与CPU通信,达到中断聚合的效果;4、FPGA单元对中断信号进行滤除筛选,可以有效避免中断误判。附图说明下面参照附图结合实施例对本专利技术作进一步的说明。图1为本专利技术一种基于FPGA的中断聚合装置原理示意图。图2为本专利技术一种基于FPGA的中断聚合方法执行流程图。图3为本专利技术一种基于FPGA的中断聚合方法的中断检测流程图。具体实施方式如图1所示,本专利技术一种基于FPGA的中断聚合装置,包括FPGA单元1,所述FPGA单元1分别与一CPU2以及复数个管理FXS接口(未图示)的SLIC芯片3连接,所述FPGA单元1通过总线与CPU2连接,所述总线由片选CS#、写使能WE#、读使能RE#、地址ADD、数据DATA以及中断INT#组成;所述FPGA单元1包括一中断检测单元11和一模拟寄存器12;所述中断检测单元11用于根据配置中的中断检测参数每间隔时间检测来自SLIC芯片3的中断是否有效,若是,则将所述中断对应的标志位的值置为1并写入模拟寄存器中,否则,清零所述模拟寄存器中该中断对应的标志位;所述中断检测参数为FPGA单元1配置中预先设置好的参数,并可以通过CPU2传来的参数进行修改,当需要修改中断检测参数时,可通过CPU2将参数传给FPGA单元进行修改,否则直接使用预先设置好的参数,从而有效控制检测,所述中断检测参数包括检测中断时长(比如10ms)和中断电位有效值(比如设置低电平为有效中断电位);所述中断检测单元11还用于中断防抖过滤,即在进行中断有效判断之前进行防抖检测,从而避免中断误判,提高中断判断的准确性;所述模拟寄存器12用于存储所述SLIC芯片3的中断标志位;所述FPGA单元1还用于接收来自SLIC芯片3的中断以及用于在模拟寄存器中存在非零的标志位时向CPU2输出中断信号。所述装置的工作原理为:管理FXS接口的SLIC芯片送出的中断INT信号集中传送给FPGA单元,FPGA单元的中断检测模块每间隔时间进行防抖和中断有效检测,滤除无效中断信号,同时把各路的中断有效标志位INT[0:X]记录在所述模拟寄存器中,即将有效中断对应的标志位的值设为1记录到模拟寄存器中,中断无效的则将对应标志位值清零,当出现有效中断时,即模拟寄存器中出现中断的标志位为1时,FPGA单元输出一个中断INT#给CPU,然后CPU通过总线查询FPGA单元的模拟寄存器所记录的数据,从而直接判断是哪一路FXS接口中断,就可对中断的FXS接口进行中本文档来自技高网...
【技术保护点】
一种基于FPGA的中断聚合装置,其特征在于:包括FPGA单元,所述FPGA单元分别与一CPU以及复数个管理FXS接口的SLIC芯片连接;所述FPGA单元包括一中断检测单元和一模拟寄存器;所述中断检测单元用于根据配置中的中断检测参数每间隔时间检测来自SLIC芯片的中断是否有效,若是,则将所述中断对应的标志位的值置为1并写入模拟寄存器中,否则,清零所述模拟寄存器中该中断对应的标志位;所述模拟寄存器用于存储所述SLIC芯片的中断标志位;所述FPGA单元还用于接收来自SLIC芯片的中断以及用于在模拟寄存器中存在非零的标志位时向CPU输出中断信号。
【技术特征摘要】
1.一种基于FPGA的中断聚合装置,其特征在于:包括FPGA单元,
所述FPGA单元分别与一CPU以及复数个管理FXS接口的SLIC芯片连接;
所述FPGA单元包括一中断检测单元和一模拟寄存器;
所述中断检测单元用于根据配置中的中断检测参数每间隔时间检测来
自SLIC芯片的中断是否有效,若是,则将所述中断对应的标志位的值置为
1并写入模拟寄存器中,否则,清零所述模拟寄存器中该中断对应的标志位;
所述模拟寄存器用于存储所述SLIC芯片的中断标志位;
所述FPGA单元还用于接收来自SLIC芯片的中断以及用于在模拟寄存
器中存在非零的标志位时向CPU输出中断信号。
2.根据权利要求1所述的一种基于FPGA的中断聚合装置,其特征在
于:所述中断检测单元还用于中断防抖过滤。
3.根据权利要求1所述的一种基于FPGA的中断聚合装置,其特征在
于:所述中断检测参数为FPGA单元配置中预先设置好的参数,并通过CPU
传来的参数进行修改。
4.根据权利要求2所述的一种基于FPGA的中断聚合装置,其特征在
于:所述中断检测参数包括检测中断时长和中断电位有效值。
5.根据权利要求1所述的一种基于FPGA的中断聚合装置,其特征在
于:所述FPGA单元通过总线与CPU连接,所述总线由片选CS#、写使能
WE#、读使能RE#、地址ADD、数据DATA以及中断INT#组成。
6.一种基于FPGA的中断聚合方法,其特征在于:需提供一带有中断
检测...
【专利技术属性】
技术研发人员:高计丰,朱雅泉,
申请(专利权)人:福建星网智慧科技股份有限公司,
类型:发明
国别省市:福建;35
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。