CN103164561B - 一种基于eda技术的多功能中断波形发生器的控制方法 - Google Patents
一种基于eda技术的多功能中断波形发生器的控制方法 Download PDFInfo
- Publication number
- CN103164561B CN103164561B CN201110427853.XA CN201110427853A CN103164561B CN 103164561 B CN103164561 B CN 103164561B CN 201110427853 A CN201110427853 A CN 201110427853A CN 103164561 B CN103164561 B CN 103164561B
- Authority
- CN
- China
- Prior art keywords
- interrupt
- enumerator
- output end
- time
- enable pin
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明是一种基于EDA技术的多功能中断波形发生器,以状态机和计数器作为主要逻辑组成部分,通过对硬件级中断响应时间、中断保持时间、中断保护时间三个时间的合理设置等方法,弥补因中断源不同,处理器不同,总线访问速度不同,逻辑处理不同等引起的设计缺陷;有效减少了软件工作量及软件设计风险,并大大提高了系统稳定性。
Description
技术领域
本发明是基于EDA技术的多功能中断波形发生器,实现了数字系统中中断输出波形处理的模块化设计。
背景技术
由于新兴EDA技术的蓬勃发展,工程设计人员越来越倾向于在CPLD/FPGA中完成各类数据通信处理及接口转换功能,随着系统集成度越来越高,复杂度越来越大,对系统的稳定性和成熟度等要求也越来越高。作为系统设计的重要环节,中断处理越来越凸显出其多样性和复杂性。
在以往基于EDA技术的接口设计及通信处理中,中断输出大多集成在某一具体功能模块里处理(如下文ARINC429控制)或对外部中断触发信号做简单的组合逻辑转换,且中断波形的产生未涉及到硬件级中断响应时间、中断保持时间、中断保护时间三个时间的具体合理化设置。在高速信号处理中往往容易出现丢帧及误码问题,而该问题的解决大多需要软件来弥补。
以航空产品中广泛使用的ARINC429总线通信为例,多使用以DEI1016为控制芯片,BD429为驱动芯片的处理方式来接收和发送数据。而现有处理器对DEI1016的访问大多需要借助CPLD/FPGA来进行接口逻辑转换。在数据量不大的情况下,429的接收通常以中断的方式通知处理器读取数据。具体的做法是,在CPLD/FPGA里设计一个DEI1016接口控制模块,中断的处理及输出集成在此模块中。中断的输出通过计数将时钟分频后以触发条件来判断中断输出电平是否翻转。附图2是该模式下示波器捕捉的一个波形,A端为中断输出信号,B端为DR信号。当DR为低电平时,表示DEI1016有数据可读,具体参考DEI1016数据手册。由于处理器中断处理函数用时过长(超出中断输出周期),中断波形输出两次,导致429通信中有丢帧现象。
发明内容
鉴于现有技术存在诸多不足,本发明提出一种中断波形发生器,实现通过硬件级中断响应时间、中断保持时间、中断保护时间三个时间的合理设置,弥补因中断源不同,处理器不同,总线访问速度不同,逻辑处理不同等引起的设计缺陷,有效减少了软件工作量及软件设计风险,并大大提高了系统稳定性。
本发明的技术方案是这样实现的:
一种基于EDA技术的多功能中断波形发生器电路,包括:中断波形发生器、处理器、中断逻辑控制器、若干中断源,其中,该中断逻辑控制器的输入端与中断源连接,其特征在于:所述中断发生器的输出端与处理器连接,中断发生器的输入端与中断逻辑控制器的输出端和/或中断源连接,具体地说,各类中断源输出给中断逻辑控制器或直接输出给中断波形发生器,中断逻辑控制器处理中断优先级并将输入的各类信号转换成统一格式中断输出信号输出给中断波形发生器,中断波形发生器根据实际硬件电路处理中断波形并输出到处理器的中断输入端。
一种基于EDA技术的多功能中断波形发生器的控制方法,其特征在于:在有效中断输入信号产生后,中断波形发生器输出端延迟一个硬件级中断响应时间Ta后输出中断波形,该中断波形保持一个硬件级中断保持时间Tb,在中断波形输出完成后必须经过一个硬件级中断保护时间Tc后,才可再次输出中断(Ta、Tb、Tc可设)。具体地说,中断波形发生器执行以下步骤:
步骤1,判断中断波形发生器的中断输入端是否有输入信号时,如有,执行步骤3;如无,执行步骤2;
步骤2,中断输出端无输出信号;
步骤3,中断输出端延迟一个硬件级中断响应时间Ta后,有输出信号,且该输出信号保持一个硬件级中断保持时间Tb后再结束;
步骤4,中断输出端保持无输出信号,经一个硬件级中断保护时间Tc后,再执行步骤1。
一种基于EDA技术的多功能中断波形发生器的控制逻辑,其特征在于:所述方法通过以状态机和计数器方式配置的逻辑电路予以实现,状态机用于产生时序逻辑,计数器用于定时。该逻辑电路具有中断输入端、中断输出端、中断使能端、实时/延时输入端和复位端等,其控制步骤如下:
步骤A,初始化,使中断输出端为高电平,计数器的使能端为高电平;
步骤B,判断中断输入端和实时/延时输入端的状态,如中断输出端和实时/延时输入端都为低电平,执行状态机的第三状态;如中断输出端为低电平,而实时/延时输入端为高电平,执行步骤D;
步骤C,计数器的模数按照中断响应时间Ta设置,并使中断输出端为高电平,计数器的使能端为低电平,计数器开始计数;当计数器计数完毕,执行步骤D;
步骤D,判断此时中断使能端状态,即中断发生器是否启用;如果中断使能端为低电平,则计数器的模数按照中断保持时间Tb设置,并使中断输出端、计数器的使能端都为低电平,计数器开始计数;否则,计数器的模数按照中断保持时间Tb设置,并使中断输出端为高电平,计数器的使能端都为低电平,计数器开始计数;当计数器计数完毕后,执行步骤E;
步骤E,使中断输出端、计数器的使能端为高电平;
步骤F,计数器的模数按照中断保护时间Tc设置,并使中断输出端、计数器的使能端为低电平,计数器开始计数;当计数器计数完毕后,执行步骤G;
步骤G,判断实时/延时输入端的状态,如实时/延时输入端为低电平,执行步骤H;如实时/延时输入端为高电平,执行步骤A;
步骤H,使中断输出端、计数器的使能端为高电平;
步骤I,判断中断输入端的状态,如为高电平,则执行步骤A;
注:低电平为有效状态。
附图说明
附图1为传统的DEI1016中断控制信号波形图。
附图2为本发明的中断处理原理框图。
附图3为本发明的工作逻辑状态图。
附图4为本发明的模块代码生成符号及其应用。
附图5为本发明的DEI1016中断控制信号波形图。
下面结合附图和实施例对本发明作详细说明。
具体实施方式
本发明提供一种可定制通用化多功能中断波形发生器,实现基于EDA技术,通过CPLD/FPGA处理或中转中断输出的模块化设计。
附图2为本发明的中断处理原理框图,包含中断波形发生器、中断逻辑控制器、处理器、若干中断源。各类中断源输出给中断逻辑控制器或直接输出给中断波形发生器,而中断逻辑控制器处理中断优先级并将输入的各类信号转换成统一格式中断输出信号输出给中断波形发生器,中断波形发生器根据实际硬件电路处理中断波形并输出到处理器的中断输入端。
附图3为本中断波形发生器的工作逻辑状态图。本设计通过一个状态机和一个计数器组合实现中断波形发生器,可以通过配置输入引脚,选择实时/延时中断功能,并可通过对内部参数的配置,设置硬件级中断响应时间Ta、硬件级中断保持时间Tb、硬件级中断保护时间Tc的具体参数(定义T1为中断输入触发时刻,T2为响应触发输出开始时刻,T3为响应触发输出结束时刻,T4为允许下次中断输出时刻,Ta=T2-T1,Tb=T3-T2,Ta=T4-T3)。
方法采用状态机实现模块的时序功能,并使用计数器配合状态机实现对时间间隔设置的要求。图中RESET为状态机复位输入信号,REALTIME为实时/延时输入配置引脚,INT_in为外部输入中断触发信号,INT_out为中断波形输出信号,INT_en为中断波形输出使能信号,co_en为内部计数器使能信号,co_modulus为内部计数模数,co_tmp为内部计数完成状态信号。通过对REALTIME的配置选择中断波形发生器的工作模式,若为“1”则表示为实时响应模式,即Ta为0个时钟周期,Tc为2个时钟周期,Tb通过co_modulus设置确定,且一次中断触发可多次中断波形输出,直到中断触发条件不满足为止;若为“0”则表示为延时响应模式,即Ta、Tb、Tc可通过co_modulus进行设置确定,且一次触发中断输出一次。
指令表如下:
背景技术中提到的ARINC429总线通信,根据图2及实际429丢帧测试,对处理器输入的中断波形设计提出以下问题及需求:
1)由于中断源的类型不同,总线访问的速度不同,相关芯片的逻辑处理不同等,中断波形输出是及时响应中断还是延时响应中断?即Ta的时间确定;
2)由于对多数处理器的中断系统而言,中断分沿触发和电平触发,而对电平触发而言,又有有效电平维持时间的限制,中断波形输出该如何确定?即由Tb的时间确定;
3)由于各处理器对中断输入口响应条件的限制,在每次中断波形输出后,多长时间允许下次中断波形输出?由Tc的时间确定;
4)由于中断源的类型不同,相关芯片的逻辑处理不同等,中断波形输出一次还是不断输出直到不满足中断触发条件为止?
针对以上问题,采用本文设计的多功能中断波形发生器来输出中断,部分原理如附图4所示。设置输出为延时输出,设置Ta时间为200ns、Tb时间为400ns、Tc时间为400ns,试验得出波形如附图5所示。通过此次优化,中断波形在一次触发下中断输出一次,与软件程序运行无关,且延时约200ns后处理器进入中断程序读取实时信号输入端EI1016数据,确保数据在总线上能正常建立(代替软件实时信号输入端EL中断输入端Y函数),即429数据读取无误,另中断低电平维持时间为400ns,与处理器手册推荐时间接近,进一步提高系统的稳定性。
上述Ta、Tb、Tc参数数值大小的设置为现有技术,本技术领域的技术人员可以技术手册或通过有限次试验得出。以DEI1016为例,它在接收到429信号后,DR输出低电平,该DR信号非标准中断输出信号,我们可以通过查询方式或中断方式将数据读取,若通过中断方式就需要按处理器接收的中断波形(手册查询确定Tb)对DR信号进行变换;另DEI1016规定,在一定时间内,若接收的数据未读取,DR信号会维持低电平,这个时候我们要根据软件中断处理时间确定Tc;由于数据通过多个器件逻辑处理,在以往的调试经验中,在DR变低瞬间,立马读取数据,往往会有误码,通常在软件处理中通过延时来读取,这方面我们又得通过大量试验来确定Ta。
经过大量实践证明,本文设计的多功能中断波形发生器科学稳定,不仅显著缩短了项目研制周期,还有效提高了系统可靠性,大大减小了设计过程中与中断处理有关的研制风险。
本发明的优点在于参数可调,操作方便,可靠性好,成熟度高,减少系统重复设计等;在中断源复杂多变,处理器中断资源有限的情况下,充分体现本中断设计思想及本模块设计的优势。
Claims (1)
1.一种基于EDA技术的多功能中断波形发生器的控制方法,其特征在于:所述方法通过以状态机和计数器方式配置的逻辑电路予以实现,状态机用于产生时序逻辑,计数器用于定时,该逻辑电路具有中断输入端、中断输出端、中断使能端、实时/延时输入端和复位端,其控制步骤如下:
步骤A,初始化,使中断输出端为高电平,计数器的使能端为高电平;
步骤B,判断中断输入端和实时/延时输入端的状态,如中断输出端和实时/延时输入端都为低电平,执行状态机的第三状态;如中断输出端为低电平,而实时/延时输入端为高电平,执行步骤D;
步骤C,计数器的模数按照中断响应时间Ta设置,并使中断输出端为高电平,计数器的使能端为低电平,计数器开始计数;当计数器计数完毕,执行步骤D;
步骤D,判断此时中断使能端状态,即中断发生器是否启用;如果中断使能端为低电平,则计数器的模数按照中断保持时间Tb设置,并使中断输出端、计数器的使能端都为低电平,计数器开始计数;否则,计数器的模数按照中断保持时间Tb设置,并使中断输出端为高电平,计数器的使能端都为低电平,计数器开始计数;当计数器计数完毕后,执行步骤E;
步骤E,使中断输出端、计数器的使能端为高电平;
步骤F,计数器的模数按照中断保护时间Tc设置,并使中断输出端、计数器的使能端为低电平,计数器开始计数;当计数器计数完毕后,执行步骤G;
步骤G,判断实时/延时输入端的状态,如实时/延时输入端为低电平,执行步骤H;如实时/延时输入端为高电平,执行步骤A;
步骤H,使中断输出端、计数器的使能端为高电平;
步骤I,判断中断输入端的状态,如为高电平,则执行步骤A;
上述低电平为有效状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110427853.XA CN103164561B (zh) | 2011-12-19 | 2011-12-19 | 一种基于eda技术的多功能中断波形发生器的控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110427853.XA CN103164561B (zh) | 2011-12-19 | 2011-12-19 | 一种基于eda技术的多功能中断波形发生器的控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103164561A CN103164561A (zh) | 2013-06-19 |
CN103164561B true CN103164561B (zh) | 2017-01-18 |
Family
ID=48587645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110427853.XA Expired - Fee Related CN103164561B (zh) | 2011-12-19 | 2011-12-19 | 一种基于eda技术的多功能中断波形发生器的控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103164561B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1790282A (zh) * | 2004-12-17 | 2006-06-21 | 日本电气株式会社 | 上下文存储方法、信息处理器及中断发生器 |
CN101719098A (zh) * | 2009-05-26 | 2010-06-02 | 苏州国芯科技有限公司 | Nandflash芯片组存储控制器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7878016B2 (en) * | 2004-12-30 | 2011-02-01 | Intel Corporation | Device and method for on-die temperature measurement |
-
2011
- 2011-12-19 CN CN201110427853.XA patent/CN103164561B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1790282A (zh) * | 2004-12-17 | 2006-06-21 | 日本电气株式会社 | 上下文存储方法、信息处理器及中断发生器 |
CN101719098A (zh) * | 2009-05-26 | 2010-06-02 | 苏州国芯科技有限公司 | Nandflash芯片组存储控制器 |
Non-Patent Citations (1)
Title |
---|
第4章 中断处理与时间管理;贡献者07224758433;《百度文库》;http://wenku.baidu.com/view/6ba0abd276a20029bd642d24.html?re=view;20101010;第5-10页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103164561A (zh) | 2013-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103440216B (zh) | 一种通过i2c从设备调试mcu的芯片及方法 | |
CN104459518A (zh) | 基于SoPC芯片的功能自动化测试系统及其测试方法 | |
CN102353891B (zh) | 一种数字集成电路功能测试仪 | |
CN102156584B (zh) | 触摸屏终端及其解决触摸屏死锁的方法 | |
CN108551338A (zh) | 一种复位电路及便携式电子产品 | |
CN101923525B (zh) | 一种带事件捕获功能的通用目的输入输出电路 | |
CN107305526B (zh) | 一种用于微控制器的调试器 | |
CN103197139A (zh) | 时钟频率测试方法和时钟频率测试电路 | |
CN103955419A (zh) | 具有串行总线协议在线实时检测分析功能的逻辑分析仪 | |
CN104571263A (zh) | 一种片上定时器 | |
CN103714190A (zh) | 简单高效的在线仿真方法及接口电路 | |
CN203241515U (zh) | 一种基于pc的逻辑分析仪 | |
CN103164561B (zh) | 一种基于eda技术的多功能中断波形发生器的控制方法 | |
CN103064477B (zh) | 一种服务器主板设计方法 | |
CN104461035A (zh) | 可处理多按键同时按下的mcu键盘电路及其实现方法 | |
CN201021996Y (zh) | 一种8位复杂指令集计算机微控制器 | |
CN111060807A (zh) | 基于SoC的高速集成电路测试平台及其测试方法 | |
CN207720115U (zh) | 一种有利于降低系统功耗的fpga计数器单元 | |
CN202710685U (zh) | 一种电容屏综合测试电路 | |
CN105523210A (zh) | 一种流量灌装机的智能计数方法及实现该方法的装置 | |
CN201945833U (zh) | 多通道高速脉冲计数触摸屏控制器 | |
CN205992148U (zh) | 电力调度自动化数据采集系统 | |
CN202650547U (zh) | 寄存器电路模块 | |
CN103235205B (zh) | 一种多路开关量信号跳变检测与精确计时系统 | |
CN204044817U (zh) | 一种多功能协议总线控制器集成电路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170118 Termination date: 20211219 |
|
CF01 | Termination of patent right due to non-payment of annual fee |