CN102075291B - 一种实现遥测数据接收完整性的方法 - Google Patents
一种实现遥测数据接收完整性的方法 Download PDFInfo
- Publication number
- CN102075291B CN102075291B CN2010106116696A CN201010611669A CN102075291B CN 102075291 B CN102075291 B CN 102075291B CN 2010106116696 A CN2010106116696 A CN 2010106116696A CN 201010611669 A CN201010611669 A CN 201010611669A CN 102075291 B CN102075291 B CN 102075291B
- Authority
- CN
- China
- Prior art keywords
- telemetry
- extra buffer
- current road
- telemeter
- filled
- 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
Links
Images
Landscapes
- Arrangements For Transmission Of Measured Signals (AREA)
Abstract
本发明公开了一种实现遥测数据接收完整性的方法,在遥测中断服务程序中设立遥测帧标志位TM_INT,这样可以使处理中断时间很短,在遥测中断服务程序中查询标志TM_INT并进行遥测数据打包,相邻两次打包的遥测数据存放在SRAM中设置的两个临时缓冲区中,然后根据遥测当前路计数TM_POINT,两个临时缓冲区临时存储的打包遥测数据向双端口RAM中填充,从而保证了数据的完整性,由于中断处理时间非常短,能够减少中断冲突问题和避免对部件异步通讯造成影响;同时,相对关中断保护方式而言,该方法避免了频繁开关中断的操作,从而降低了系统和软件时序的复杂性,解决了遥测数据的完整性问题。
Description
技术领域
本发明涉及一种实现遥测数据接收完整性的方法,尤其涉及一种航天器控制周期与遥测周期不一致时实现遥测数据接收完整性的方法,属于航天控制领域。
背景技术
遥测数据的完整性要求是航天器在轨飞行过程中进行数据判读和分析的基础,为航天器在轨飞行控制和运行维护提供了重要前提。目前在航天器控制系统任务中实现遥测功能的方法主要有两种:(1)采用查询方式进行遥测数据打包和发送。该方法实现简单,没有中断冲突等问题,但如果在控制周期快、遥测周期慢时,并不能将每个控制周期的数据全部都通过遥测传送到地面,可能会造成发送的同一帧数据不是在同一个控制周期内打包的数据,不能保证遥测数据的完整性,会给数据判读带来困难;(2)在中断里打包和发送遥测数据。该方法虽然可以保证数据的实时性和完整性,但由于中断时间过长,可能会对部件通讯造成影响;如果为避免对通讯造成影响可以在异步通讯过程和遥测数据打包时关闭遥测中断,但是这种方法需要频繁开关中断,且关闭中断的时间受由通讯过程决定,从而增加了软件时序分析的复杂性,可能对系统带来安全隐患。
发明内容
本发明的技术解决问题是:克服现有技术的不足,提供一种实现遥测数据接收完整性的方法,解决了快周期变化数据的异步慢遥测中保证遥测数据完整性的问题。
本发明的技术解决方案是:一种实现遥测数据接收完整性的方法,步骤如下:
(1)在SRAM中设置两个遥测数据临时缓冲区,临时缓冲区TM1用于存放本次打包的遥测数据,临时缓冲区TM2用于存储上次打包的遥测数据;
(2)在遥测帧中断服务程序中置遥测帧标志TM_INT;
(3)查询遥测帧标志,如果有遥测帧标志TM_INT,执行步骤(4),否则执行步骤(5);
(4)将遥测数据打包放至临时缓冲区TM1中,当遥测周期与控制周期的差值小于50ms时,读取当前路计数n1,然后判断当前路计数n1是否小于遥测数据的长度n,如果当前路计数n1小于遥测数据的长度n,则将临时缓冲区TM1的遥测数据填充在双端口RAM的0~(n1-1)地址空间,临时缓冲区TM2的遥测数据填充在双端口RAM的n1~n-1地址空间,如果当前路计数n1大于遥测数据的长度n,则将临时缓冲区TM1的遥测数据填充在双端口RAM的0~n-1地址空间,然后用临时缓冲区TM1中的遥测数据更新临时缓冲区TM2中的遥测数据,清除遥测帧标志;
当遥测周期与控制周期的差值大于50ms时,则读当前路计数n1,然后判断当前路计数n1是否小于遥测数据的长度n,如果当前路计数n1小于遥测数据的长度n,则将临时缓冲区TM2的遥测数据填充在双端口RAM的n1~n-1地址空间,如果当前路计数n1大于遥测数据的长度n,则将临时缓冲区TM1的遥测数据填充在双端口RAM的0~n-1地址空间,然后用临时缓冲区TM1中的遥测数据更新临时缓冲区TM2中的遥测数据,清除遥测帧标志;
(5)将遥测数据打包放至临时缓冲区TM1中,读取当前路计数n2,将临时缓冲区TM1的遥测数据填充在双端口RAM的0~(n2-1)地址空间,清除遥测帧标志;
(6)接收下一遥测帧数据,重复步骤(3)-(5)直至所有遥测数据接收完毕。
本发明与现有技术相比的有益效果:本发明在遥测中断服务程序中设立遥测帧标志位TM_INT,这样可以使处理中断时间很短,在遥测中断服务程序中查询标志TM_INT并进行遥测数据打包,相邻两次打包的遥测数据存放在SRAM中设置的两个临时缓冲区中,然后根据遥测当前路计数TM_POINT,两个临时缓冲区临时存储的打包遥测数据向双端口RAM中填充,从而保证了数据的完整性,由于中断处理时间非常短,能够减少中断冲突问题和避免对部件异步通讯造成影响;同时,相对关中断保护方式而言,该方法避免了频繁开关中断的操作,从而降低了系统和软件时序的复杂性,解决了遥测数据的完整性问题。
附图说明
图1是本发明的实现原理图;
图2是本发明一种实施例的实现流程图。
具体实施方式
为了在快周期变化数据的异步慢遥测中实现遥测数据的完整性,本发明采用FPGA提供遥测当前路计数的信息,利用双缓冲的处理逻辑实现遥测数据完整地传送。本发明的设计原理是:在遥测中断服务程序中设立遥测帧标志位TM_INT,这样可以使处理中断时间很短,在遥测中断服务程序中查询标志TM_INT并进行遥测数据打包,相邻两次打包的遥测数据存放在SRAM中设置的两个临时缓冲区中,然后根据遥测当前路计数TM_POINT,两个临时缓冲区临时存储的打包遥测数据向双端口RAM中填充,FPGA在监测到有效的遥测帧同步信号后,等待N个码元周期后,清零遥测数据发送FIFO,然后开始从双端口RAM中依次读取前1字节本轮遥测数据写入遥测数据发送FIFO,遥测数据发送FIFO深度为8个字节,在首次从双端口RAM读取1个字节数据写入遥测发送FIFO后,在每个有效的GNC遥测路同步信号到达后,FPGA都将从遥测发送FIFO中顺序读取1个字节数据写入移位寄存器输出给测控分系统,同时从双端口RAM依次读取后一字节遥测数据补充入遥测发送FIFO。本发明利用慢遥测帧周期与快控制周期之间的相位关系,采用一定的逻辑和策略,以实现数据的一致性和完整性。
如图2所示,一种实现遥测数据完整性的方法,步骤如下:
(1)在SRAM中设置两个遥测数据临时缓冲区,临时缓冲区TM1用于存放本次打包的遥测数据,临时缓冲区TM2用于存储上次打包的遥测数据;
(2)在遥测帧中断服务程序中置遥测帧标志TM_INT;
(3)查询遥测帧标志,如果有遥测帧标志TM_INT,执行步骤(4),否则执行步骤(5);
(4)将遥测数据打包放至临时缓冲区TM1中,当遥测周期与控制周期的差值小于50ms时,读取当前路计数n1,然后判断当前路计数n1是否小于遥测数据的长度n,如果当前路计数n1小于遥测数据的长度n,则将临时缓冲区TM1的遥测数据填充在双端口RAM的0~(n1-1)地址空间,临时缓冲区TM2的遥测数据填充在双端口RAM的n1~n-1地址空间,如果当前路计数n1大于遥测数据的长度n,则将临时缓冲区TM1的遥测数据填充在双端口RAM的0~n-1地址空间,然后用临时缓冲区TM1中的遥测数据更新临时缓冲区TM2中的遥测数据,清除遥测帧标志;
当遥测周期与控制周期的差值大于50ms时,则读当前路计数n1,然后判断当前路计数n1是否小于遥测数据的长度n,如果当前路计数n1小于遥测数据的长度n,则将临时缓冲区TM2的遥测数据填充在双端口RAM的n1~n-1地址空间,如果当前路计数n1大于遥测数据的长度n,则将临时缓冲区TM1的遥测数据填充在双端口RAM的0~n-1地址空间,然后用临时缓冲区TM1中的遥测数据更新临时缓冲区TM2中的遥测数据,清除遥测帧标志;
(5)将遥测数据打包放至临时缓冲区TM1中,读取当前路计数n2,将临时缓冲区TM1的遥测数据填充在双端口RAM的0~(n2-1)地址空间,清除遥测帧标志;
(6)接收下一遥测帧数据,重复步骤(3)-(5)直至所有遥测数据接收完毕。
例如,控制周期为500ms和200ms两种,遥测周期为512ms,遥测数据长度为485,采用本发明的方法进行遥测数据存储。
在SRAM中设置两个遥测数据临时缓冲区:临时缓冲区TM1用于存放最新打包的遥测数据,临时缓冲区TM2用于存储上次打包的遥测数据;
在遥测帧中断服务程序中置遥测帧标志TM_INT;当遥测任务开始时,首先查询遥测帧标志,如果有遥测帧帧标志TM_INT:则将遥测数据打包,放至临时缓冲区TM1中,如果是500ms控制周期,则读当前路计数n1,然后判断当前路计数n1是否小于485,如果小于485,则将临时缓冲区TM1的遥测数据填充在双端口RAM的0~(n1-1)地址空间,临时缓冲区TM2的遥测数据填充在双端口RAM的n1~484地址空间,如果当前路计数n1大于485,则将临时缓冲区TM1的遥测数据填充在双端口RAM的0~484地址空间,然后用临时缓冲区TM1中的遥测数据更新临时缓冲区TM2中的遥测数据,清除遥测帧标志;
如果是200ms控制周期,则读当前路计数n1,然后判断当前路计数n1是否小于485,如果小于485,则将临时缓冲区TM2的遥测数据填充在双端口RAM的n1~484地址空间,如果当前路计数n1大于485,则将临时缓冲区TM1的遥测数据填充在双端口RAM的0~484地址空间,然后用临时缓冲区TM1中的遥测数据更新临时缓冲区TM2中的遥测数据,清除遥测帧标志;为下一遥测帧准备数据。
如果无遥测帧标志,则读当前路计数n2,将临时缓冲区TM1的遥测数据填充在双端口RAM的0~(n2-1)地址空间,清除遥测帧标志,为下一遥测帧准备数据。
本发明未详细描述内容为本领域技术人员公知技术。
Claims (1)
1.一种实现遥测数据接收完整性的方法,其特征在于步骤如下:
(1)在SRAM中设置两个遥测数据临时缓冲区,临时缓冲区TM1用于存放本次打包的遥测数据,临时缓冲区TM2用于存储上次打包的遥测数据;
(2)在遥测帧中断服务程序中置遥测帧标志TM_INT;
(3)查询遥测帧标志,如果有遥测帧标志TM_INT,执行步骤(4),否则执行步骤(5);
(4)将遥测数据打包放至临时缓冲区TM1中,当遥测周期与控制周期的差值小于50ms时,读取当前路计数n1,然后判断当前路计数n1是否小于遥测数据的长度n,如果当前路计数n1小于遥测数据的长度n,则将临时缓冲区TM1的遥测数据填充在双端口RAM的0~(n1-1)地址空间,临时缓冲区TM2的遥测数据填充在双端口RAM的n1~n-1地址空间,如果当前路计数n1大于遥测数据的长度n,则将临时缓冲区TM1的遥测数据填充在双端口RAM的0~n-1地址空间,然后用临时缓冲区TM1中的遥测数据更新临时缓冲区TM2中的遥测数据,清除遥测帧标志;
当遥测周期与控制周期的差值大于50ms时,则读当前路计数n1,然后判断当前路计数n1是否小于遥测数据的长度n,如果当前路计数n1小于遥测数据的长度n,则将临时缓冲区TM2的遥测数据填充在双端口RAM的n1~n-1地址空间,如果当前路计数n1大于遥测数据的长度n,则将临时缓冲区TM1的遥测数据填充在双端口RAM的0~n-1地址空间,然后用临时缓冲区TM1中的遥测数据更新临时缓冲区TM2中的遥测数据,清除遥测帧标志;
(5)将遥测数据打包放至临时缓冲区TM1中,读取当前路计数n2,将临时缓冲区TM1的遥测数据填充在双端口RAM的0~(n2-1)地址空间,清除遥测帧标志;
(6)接收下一遥测帧数据,重复步骤(3)-(5)直至所有遥测数据接收完毕。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010106116696A CN102075291B (zh) | 2010-12-17 | 2010-12-17 | 一种实现遥测数据接收完整性的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010106116696A CN102075291B (zh) | 2010-12-17 | 2010-12-17 | 一种实现遥测数据接收完整性的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102075291A CN102075291A (zh) | 2011-05-25 |
CN102075291B true CN102075291B (zh) | 2013-01-23 |
Family
ID=44033648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010106116696A Active CN102075291B (zh) | 2010-12-17 | 2010-12-17 | 一种实现遥测数据接收完整性的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102075291B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102508932B (zh) * | 2011-11-17 | 2013-06-12 | 航天科工深圳(集团)有限公司 | 一种遥测、遥信数据处理方法及装置 |
CN102761320B (zh) * | 2012-07-13 | 2014-10-08 | 北京控制工程研究所 | 一种数字量遥测电路 |
CN104679667B (zh) * | 2013-11-28 | 2017-11-28 | 中国航空工业集团公司第六三一研究所 | 高效采样端口缓冲管理方法 |
CN103646000B (zh) * | 2013-12-26 | 2015-11-25 | 北京控制工程研究所 | 一种适用于多路热备份数据传输的高可靠中断处理方法 |
CN103699042B (zh) * | 2013-12-31 | 2015-04-22 | 北京控制工程研究所 | 一种并发中断驱动软件系统的时序确定方法 |
CN103970027B (zh) * | 2014-04-02 | 2015-07-08 | 北京控制工程研究所 | 一种综合电子软件仿真环境中的遥测处理单元模拟方法 |
CN104253719B (zh) * | 2014-09-11 | 2017-11-17 | 上海卫星工程研究所 | 基于分包遥测填充数据的遥测误码测试方法 |
CN107834697B (zh) * | 2017-10-23 | 2020-12-29 | 广东电网有限责任公司肇庆供电局 | 提升电网故障时调度自动化系统遥测数据响应速度的方法 |
CN108334286B (zh) * | 2018-01-29 | 2021-03-02 | 中国北方车辆研究所 | 一种高可靠性嵌入式软件数据防掉电方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6370162B1 (en) * | 1997-07-02 | 2002-04-09 | Nec Corporation | Frame aligner including two buffers |
CN101170345A (zh) * | 2007-11-30 | 2008-04-30 | 航天东方红卫星有限公司 | 一种卫星分包遥测数据的解包方法 |
CN101354829A (zh) * | 2008-09-12 | 2009-01-28 | 航天东方红卫星有限公司 | 一种卫星遥测数据传输方法 |
CN101419278A (zh) * | 2008-12-05 | 2009-04-29 | 航天恒星科技有限公司 | 多通道高速遥感数据采集处理设备 |
CN101655824A (zh) * | 2009-08-25 | 2010-02-24 | 北京广利核系统工程有限公司 | 一种双口ram互斥访问的实现方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070297433A1 (en) * | 2006-06-26 | 2007-12-27 | Mediatek Inc. | Method and apparatus for double buffering |
-
2010
- 2010-12-17 CN CN2010106116696A patent/CN102075291B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6370162B1 (en) * | 1997-07-02 | 2002-04-09 | Nec Corporation | Frame aligner including two buffers |
CN101170345A (zh) * | 2007-11-30 | 2008-04-30 | 航天东方红卫星有限公司 | 一种卫星分包遥测数据的解包方法 |
CN101354829A (zh) * | 2008-09-12 | 2009-01-28 | 航天东方红卫星有限公司 | 一种卫星遥测数据传输方法 |
CN101419278A (zh) * | 2008-12-05 | 2009-04-29 | 航天恒星科技有限公司 | 多通道高速遥感数据采集处理设备 |
CN101655824A (zh) * | 2009-08-25 | 2010-02-24 | 北京广利核系统工程有限公司 | 一种双口ram互斥访问的实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102075291A (zh) | 2011-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102075291B (zh) | 一种实现遥测数据接收完整性的方法 | |
US5406554A (en) | Synchronous FIFO having an alterable buffer store | |
CN103209137B (zh) | 可配置高精度时间间隔帧发布以太网接口控制系统 | |
CN104702474A (zh) | 一种基于FPGA的EtherCAT主站装置 | |
CN106850046A (zh) | 一种基于fpga的星载遥控遥测终端、系统及方法 | |
EP3206123B1 (en) | Data caching method and device, and storage medium | |
CN107656886B (zh) | 一种跨时钟域信号处理电路及其处理方法 | |
CN100524269C (zh) | 一种突发机制下实现数据读写控制的方法和装置 | |
CN101286830A (zh) | 用于卡件的基于双核控制器的双冗余高速io网络系统 | |
CN113946297A (zh) | 基于FPGA和PCIe的光纤数据采集存储系统及方法 | |
CN101178700A (zh) | 数据同步方法与数据缓冲装置 | |
CN112948295A (zh) | 一种基于axi4总线的fpga与ddr高速数据包传输系统及方法 | |
WO2024077890A1 (zh) | 一种异步fifo读写控制方法、系统及电子设备 | |
CN106055512B (zh) | 一种mipi接口raw10数据重组编码与读出方法 | |
CN102790801A (zh) | 异步远程复制系统及其维护数据一致性的方法 | |
CN102880442B (zh) | 用于时钟树转换处的先入先出(fifo)装置与方法 | |
CN103219982A (zh) | 一种基于双采样的异步信号同步电路 | |
CN101594305B (zh) | 一种报文处理方法及装置 | |
CN101833431B (zh) | 基于fpga实现的双向高速fifo存储器 | |
CN110851390B (zh) | 一种基于fpga实现4m 1553b总线协议的方法及系统 | |
US10621122B1 (en) | Systems and methods for transferring data with a dual-line first-in-first-out (FIFO) memory array | |
CN103684656A (zh) | 基于fpga的自适应链路层差错控制方法及装置 | |
CN103095595A (zh) | 一种基于单向并行多链表的网络数据管理方法及系统 | |
CN102760105A (zh) | 实现本地主从模块间的通信的系统及方法 | |
CN101520722B (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 |