CN103646000B - 一种适用于多路热备份数据传输的高可靠中断处理方法 - Google Patents

一种适用于多路热备份数据传输的高可靠中断处理方法 Download PDF

Info

Publication number
CN103646000B
CN103646000B CN201310739872.5A CN201310739872A CN103646000B CN 103646000 B CN103646000 B CN 103646000B CN 201310739872 A CN201310739872 A CN 201310739872A CN 103646000 B CN103646000 B CN 103646000B
Authority
CN
China
Prior art keywords
interruption
interrupt
hot backup
timer
transmission
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.)
Active
Application number
CN201310739872.5A
Other languages
English (en)
Other versions
CN103646000A (zh
Inventor
宫经刚
刘波
孙越
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Control Engineering
Original Assignee
Beijing Institute of Control Engineering
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Control Engineering filed Critical Beijing Institute of Control Engineering
Priority to CN201310739872.5A priority Critical patent/CN103646000B/zh
Publication of CN103646000A publication Critical patent/CN103646000A/zh
Application granted granted Critical
Publication of CN103646000B publication Critical patent/CN103646000B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Hardware Redundancy (AREA)

Abstract

一种适用于多路热备份数据传输的高可靠中断处理方法如下:(1)多路中断单次触发:任何一路数据传输结束后,触发正脉冲信号T1,脉冲宽度记为T;其它各路数据传输结束后依次触发正脉冲T2、T3…Tn,多路中断信号间的最大偏差记为△T,满足T≥2*△T;T1到Tn信号相或后输出中断信号INT=T1|T2|T3|…Tn,中断信号INT的脉冲宽度为T+△T;(2)进入中断,启动定时器,定时器采用中断触发,中断优先级与多路中断优先级相同,定时长度为△T;退出中断;(3)定时器定时到,再次触发中断,中断服务程序中读取各路热备份数据,退出中断。

Description

一种适用于多路热备份数据传输的高可靠中断处理方法
技术领域
本发明涉及一种适用于多路热备份数据传输的高可靠中断处理方法,属于卫星平台或载荷的电子线路技术领域。
背景技术
为提高数据传输的可靠性,卫星平台系统中对重要数据如遥控指令数据采用热备份结构,主、备份数据接收及传输电路相互独立,单份失效不影响备份。同时为提高数据接收的实时性,接收端一般要求采用中断方式接收数据。
针对多路热备份中断在短时间内先后到来的情况,传统中断处理方法包括以下两种:(1)暂时关闭中断法:该方法在首次中断产生后,软件首先关闭所有中断,不再响应其它中断,当中断服务函数处理完中断后再打开中断;该方法的优点是处理简单,缺点是若当前中断为非最高优先级中断,则存在丢中断的可能。(2)中断嵌套软件处理法:该方法在发生同一优先级的中断嵌套后,用软件进行处理;该方法的优点是不会丢失中断,缺点是软件设计复杂,特别是热备份中断数较多时,会出现多重嵌套,软件处理方式和复杂度与热备份中断数目相关。
为正确接收各路热备份数据,以上两种方法均需在中断服务程序中进行延时等待,存在中断占用时间较长的问题。
发明内容
本发明技术解决的技术问题:克服现有技术的不足,提供一种适用于多路热备份数据传输的高可靠中断处理方法,对热备份中断信号进行处理,处理后多个中断在一可设置时间范围内到来后仅产生一个中断信号,解决了多次触发中断导致中断嵌套问题;中断处理程序内不进行延时等待和数据读取操作,仅启动定时功能,然后退出中断,解决了中断服务程序占用时间长的问题。解决了多次触发中断导致中断嵌套,中断服务程序占用时间长的问题。
本发明技术解决方案:适用于多路热备份数据传输的高可靠中断处理方法,处理流程如图1所示,其特点在于实现步骤如下:
(1)多路中断单次触发:任何一路数据传输结束后,触发正脉冲信号T1,脉冲宽度记为T;其它各路数据传输结束后依次触发正脉冲T2、T3…Tn,多路中断信号间的最大偏差记为△T,满足T≥2*△T;T1到Tn信号相或后输出中断信号INT=T1|T2|T3|…Tn,中断信号INT的脉冲宽度为T+△T;
(2)进入中断,启动定时器,定时器采用中断触发,中断优先级与多路中断优先级相同,定时长度为△T;退出中断;
(3)定时器定时到,再次触发中断,中断服务程序中读取各路热备份数据,退出中断。
本发明与现有技术相比的有益效果在于:
(1)本发明通过多路中断单次触发,巧妙利用软、硬件配合实现了多路热备份数据的中断接收功能,避免了中断嵌套情况出现,降低了软件设计的复杂度,在满足实时性的同时提高了数据接收的可靠性。
(2)本发明有效防止中断嵌套且不会出现中断丢失现象。多个中断在△T时间内到来,仅产生一个有效中断信号,避免了中断嵌套;由于没有屏蔽中断操作,不会出现中断丢失现象;
(3)本发明大大缩短中断占用时间,提高了系统处理性能。中断处理程序中不再进行延时等待,定时器定时期间,处理器同时运行其它任务,提高了系统处理性能;
附图说明
图1为本发明方法的实现流程图;
图2为“三线制”同步串口时序图;
图3为本发明处理后的中断时序图。
具体实施方式
结合附图对本发明做进一步介绍。
在月面巡视器综合电子单元研制过程中,为提高遥控的可靠性,综合电子单元内部遥控模块采用双机热备份结构,遥控模块接收数据后,主、备份模块均通过“三线制”同步串口将数据发送到中心计算机,时序关系如图2所示。其中GATE为门控信号,低电平有效;CLK为时钟信号,上升沿锁存数据;DATA为数据信号。为保证遥控指令的实时性,中心计算机采用中断方式同时接收两路“三线制”同步串口数据。
正常情况下主、备份模块均能正确接收到数据,并都通过各自的“三线制”同步串口向中心计算机发送数据,中心计算机在门控信号的上升沿产生中断。由于主、备份遥控模块锁相及同步误差,两路“三线制”同步串口不会在同一时刻完成数据传输并产生中断,正常情况下两路数据接收完数据的误差△T在1ms以内,最坏情况下可达16ms。
根据多路热备份数据中断接收的特点,通过硬件实现32ms内多路中断信号的单次触发,软件触发中断后,启动一个16ms的定时器后,退出中断,在16ms定时器中断中进行多路遥控数据的读取和处理。
按照本发明的处理方法,具体实现步骤如下:
(1)硬件产生中断:当主、备份遥控数据中的一路数据传输结束后,触发正脉冲信号T1,脉冲宽度为32ms;另外一路数据传输结束后触发正脉冲T2,两路中断信号间的最大偏差为△T;两路中断信号的单次触发功能在FPGA内部实现,处理后的中断产生时序如图3所示,其中0≤△T≤16ms,INT=32ms+△T。
(2)进入中断,启动定时器,定时器采用中断触发,中断优先级与多路中断优先级相同,定时长度为16ms;退出中断;
(3)定时器定时到,再次触发中断,中断服务程序中读取主、备份数据,退出中断。
解决的主要技术问题包括:
(1)可配置多路中断单次触发技术:
FPGA内部实现多路中断信号接收,当其中一个中断信号到来时,内部启动一个宽度为32ms的正脉冲输出,脉冲输出期间其它路中断信号也将启动等宽的脉冲输出,各路正脉冲相或后输出用于触发处理器中断;当各路中断到来偏差在脉冲配置宽度之内时,FPGA对外只输出一个正脉宽,脉冲宽度为T+△T(其中T为配置的脉冲宽度32ms,△T为最早和最晚到来的两个中断的时间间隔)。
(2)软件延时数据读取技术:
硬件触发中断后,软件在中断服务程序中不进行各路遥控数据的读取,仅启动一个16ms定时器,然后直接退出中断,避免中断服务程序长期占用处理器资源;当16ms计数器中断到来时,在16ms中断服务程序中进行遥控数据的读取及处理。

Claims (1)

1.一种适用于多路热备份数据传输的中断处理方法,其特征在于步骤如下:
(1)多路中断单次触发:任何一路数据传输结束后,触发正脉冲信号T1,脉冲宽度记为T;其它各路数据传输结束后依次触发正脉冲T2、T3…Tn,多路中断信号间的最大偏差记为△T,满足T≥2*△T;T1到Tn信号相或后输出中断信号INT=T1|T2|T3|…Tn,中断信号INT的脉冲宽度为T+△T;
(2)进入中断,启动定时器,定时器采用中断触发,中断优先级与多路中断优先级相同,定时长度为△T;退出中断;
(3)定时器定时到,再次触发中断,中断服务程序中读取各路热备份数据,退出中断。
CN201310739872.5A 2013-12-26 2013-12-26 一种适用于多路热备份数据传输的高可靠中断处理方法 Active CN103646000B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310739872.5A CN103646000B (zh) 2013-12-26 2013-12-26 一种适用于多路热备份数据传输的高可靠中断处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310739872.5A CN103646000B (zh) 2013-12-26 2013-12-26 一种适用于多路热备份数据传输的高可靠中断处理方法

Publications (2)

Publication Number Publication Date
CN103646000A CN103646000A (zh) 2014-03-19
CN103646000B true CN103646000B (zh) 2015-11-25

Family

ID=50251221

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310739872.5A Active CN103646000B (zh) 2013-12-26 2013-12-26 一种适用于多路热备份数据传输的高可靠中断处理方法

Country Status (1)

Country Link
CN (1) CN103646000B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101918920A (zh) * 2007-12-12 2010-12-15 高通股份有限公司 用于多线程处理器的共享的中断控制器
CN102075291A (zh) * 2010-12-17 2011-05-25 北京控制工程研究所 一种实现遥测数据接收完整性的方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8244946B2 (en) * 2009-10-16 2012-08-14 Brocade Communications Systems, Inc. Interrupt moderation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101918920A (zh) * 2007-12-12 2010-12-15 高通股份有限公司 用于多线程处理器的共享的中断控制器
CN102075291A (zh) * 2010-12-17 2011-05-25 北京控制工程研究所 一种实现遥测数据接收完整性的方法

Also Published As

Publication number Publication date
CN103646000A (zh) 2014-03-19

Similar Documents

Publication Publication Date Title
CN104767516B (zh) 异步信号同步电路
US4575644A (en) Circuit for prevention of the metastable state in flip-flops
TWI488437B (zh) 積體電路裝置、同步模組、電子裝置及相關方法
CN103645794A (zh) 一种通过边沿检测电路实现睡眠模式唤醒的芯片及方法
US9899992B1 (en) Low power adaptive synchronizer
WO2004109524A2 (en) Synchronous data transfer across clock domains
US10630271B2 (en) Self timed data sampler
US8156371B2 (en) Clock and reset synchronization of high-integrity lockstep self-checking pairs
CN110249309B (zh) 用于缓慢外围设备的中断处理方法和设备
CN103646000B (zh) 一种适用于多路热备份数据传输的高可靠中断处理方法
CN108694146B (zh) 一种异步/同步接口电路
EP0225512B1 (en) Digital free-running clock synchronizer
EP2847665B1 (en) Data transfer between clock domains
CN202488431U (zh) 实现数据同步的装置
US10326452B2 (en) Synchronizing a self-timed processor with an external event
CN103744813B (zh) 一种保障1553b总线通信时序正确性的时序确定方法
EP3655841B1 (en) Method to synchronize integrated circuits fulfilling functional safety requirements
CN106094496A (zh) 变电站时间同步系统
CN106201950B (zh) 一种soc异步时钟域信号接口的方法
CN105958982B (zh) 提前时钟有效信号的电路及方法
CN103944786A (zh) 一种自适应计数时钟数据检测方法
Hatture et al. Open loop and closed loop solution for clock domain crossing faults
US12050486B1 (en) System halt support for synchronization pulses
CN211296700U (zh) 一种基于异构多核人工智能芯片的信号复位系统
CN201690438U (zh) 一种抗干扰曼彻斯特码解码电路

Legal Events

Date Code Title Description
PB01 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