一种基于FPGA和CPU综合控制的星上时间管理系统的制作方法

文档序号:14129880阅读:239来源:国知局

本发明涉及卫星星上时间管理技术领域,具体涉及一种基于fpga和cpu综合控制的星上时间管理系统。



背景技术:

卫星整星时间维护系统包括整星守时、授时、校时等功能。为节省硬件资源,常见实现方式是单一地使用cpu利用软件进行管理实现。该方式优点是节省硬件开销,不需额外硬件资源。其缺点也很明显,一是占用cpu的资源,在cpu资源有限的情况下,易造成资源紧张甚至不能满足系统需求;二是由于cpu其他任务的存在,造成时间管理系统的响应受到cpu其他任务的影响而导致精度不高,严重时不能够满足系统需求;三是由于卫星星务管理系统任务周期的缩短,单纯依靠时间管理系统输出的标准校时秒脉冲无法满足星务管理系统任务时间同步的要求。



技术实现要素:

有鉴于此,本发明提供了一种基于fpga和cpu综合控制的星上时间管理系统,能够进行综合的星上时间管理,其资源利用率高、精度高且满足星上任务时间同步的要求。

本发明技术方案为:基于fpga和cpu综合控制的星上时间管理系统,包括现场可编辑门阵列fpga芯片和中央处理器cpu芯片。

fpga芯片中集成有内部交互接口模块、守时模块、授时模块、校时模块以及外部输出接口模块。

内部交互接口模块通过通信总线连接cpu芯片。

cpu芯片通过内部交互接口模块,向校时模块发送校时控制信号。

校时模块,连接至内部交互接口模块,接收校时控制信号;校时模块连接守时模块,用于根据校时控制信号进行校时,修正守时模块的守时结果。

守时模块,配置用于存储守时结果;守时模块连接内部交互接口模块,将守时结果通过内部交互接口模块发送至cpu芯片;守时模块,还连接外部输出接口模块,将fpga芯片中产生的标准授时脉冲通过外部输出接口模块提供给外部接受授时的设备。

授时模块,配置用于存储守时结果;授时模块连接至内部交互接口模块,接收cpu芯片发来的地面授时指令,根据地面授时指令修正守时模块的守时结果;cpu芯片通过星上遥控通道接收地面注入的地面授时指令。

外部输出接口模块连接外部接受授时的设备。

进一步地,cpu芯片,还通过星上遥控通道接收地面注入。

cpu芯片通过内部交互接口模块,向校时模块发送包括如下项中的一种或多种的校时控制信号:

gps校时控制信号、集中校时控制信号以及均匀校时控制信号。

gps校时控制信号为指示是否采用gps校时的指令,由cpu芯片产生;集中校时控制信号包括指示是否采用集中校时的指令以及集中校时增减值,其中指示是否采用集中校时的指令由cpu芯片产生,集中校时增减值由cpu芯片通过星上遥控通道接收;均匀校时控制信号包括指示是否采用均匀校时的指令、均匀校时的校时周期以及校准时间,其中指示是否采用均匀校时的指令、均匀校时的校时周期以及校准时间均由cpu芯片产生。

进一步地,校时模块,用于根据校时控制信号进行校时,包括:

若根据指示是否采用gps校时的指令,确定采用gps校时,则通过连接的星上导航gps接收机获取gps校时信号对星上时进行gps校时,修正守时模块的守时结果。

若根据指示是否采用集中校时的指令,若确定采用集中校时,则根据集中校时增减值对星上时进行集中校时,修正守时模块的守时结果。

若根据指示是否采用均匀校时的指令,确定采用均匀校时,则根据均匀校时的校时周期以及校准时间对星上时进行均匀校时,修正守时模块的守时结果。

进一步地,内部交互接口模块通过如下项中的一种通信总线连接cpu芯片,包括:

isa总线、uart总线和can总线。

进一步地,守时模块,采用时间寄存器存储守时结果。

时间寄存器包括一个4字节的秒寄存器和一个3字节的微秒us寄存器。

其中us寄存器的存储范围为0~999999us,秒寄存器的存储范围为:0~4294967295s。

秒寄存器和us寄存器初始化均为0,启动后us寄存器自动累加,当累加到999999us时,us寄存器清0,秒寄存器加1。

进一步地,授时模块,接收cpu芯片发来的地面授时指令,地面授时指令由us授时值和秒授时值组成。

授时模块包括两种工作模式,即协调世界时utc授时模式和微秒us授时模式。

当授时模式工作在utc授时模式时,授时模块依据地面授时指令中的秒授时值修正授时模块的秒寄存器。

当授时模式工作在us授时模式时,授时模块依据地面授时指令中的秒授时值和us授时值分别修正授时模块的秒寄存器和us寄存器。

进一步地,校时模块,还用于:

若根据指示是否采用gps校时的指令,确定采用gps校时,则通过连接的星上导航gps接收机获取gps校时信号对星上时进行gps校时,gps校时信号为gps秒脉冲,当gps秒脉冲到达,校时模块将守时模块的us寄存器四舍五入到秒寄存器,然后将us寄存器清零,以修正守时模块的守时结果。

若根据指示是否采用集中校时的指令,确定采用集中校时,集中校时增减值为集中校时增值或者集中校时减值,则根据集中校时增减值对星上时进行如下集中校时,以修正守时模块的守时结果:

集中校时增减值为集中校时增值时,包括us增值和秒增值;校时模块依据us增值和秒增值分别对守时模块中的us寄存器和秒寄存器进行加法操作,若us寄存器相加超过999999us时,则需要向大秒寄存器进位,若秒寄存器相加超过4294967295s时,则只取低4个字节有效。

集中校时增减值为集中校时减值时,包括us减值和秒减值;校时模块依据us减值和秒减值分别对守时模块中的us寄存器和秒寄存器进行减法操作,若被减数us寄存器小于us减值时,则向秒寄存器借位后执行减法操作;若被减数秒寄存器小于设置的秒减值时,则按照溢出处理。

若根据指示是否采用均匀校时的指令,确定采用均匀校时,则在均匀校时期间,根据均匀校时的校时周期以及校准时间对星上时进行如下均匀校时,以修正守时模块的守时结果:

校准时间为us校准值,校时周期为秒间隔值;采用计数器进行计数,每隔1s计数器的计数值加1,当计数器的计数值超过秒间隔值时,判断守时模块中的us寄存器中值是否为0,若是,则利用us校准值修正us寄存器,否则us寄存器清零。

进一步地,守时模块,还用于产生时间片中断,时间片中断发送至cpu芯片,cpu芯片依据接收的时间片中断控制自身任务周期。

守时模块中包括时间片计数器,时间片中断由时间片计数器产生;设置时间片的分片间隔,利用分片间隔将1s进行等分,得到多个等分点;时间片计数器从1s的起始开始计时,当守时模块中的us寄存器的值达到等分点、且时间片计数器的计数值大于设定的时间片计数阈值时,守时模块产生时间片中断,且时间片计数器清零重新计时。

时间片计数阈值设定小于分片间隔。

有益效果:

1、本发明采用fgpa芯片进行时间管理,cpu芯片仅对fpga芯片进行控制,通过fpga芯片分担时间管理任务,能够在不占用cpu资源的情况下实现星上时间的有效管理,且不必受到cpu其他任务的影响,大大提成了时间管理的精度。

2、本发明可接收gps时间或地面授时时间进行授时或校时,校时包括gps校时、集中校时、均匀校时,采用多种校时方法进一步提升了校时精度;本发明可以提供星上的守时结果,以及标准授时脉冲和时间片中断,能够满足星务管理系统任务时间同步的要求。

附图说明

图1为本发明实施例所提供的基于fpga和cpu综合控制的星上时间管理系统的组成结构框图。

具体实施方式

下面结合附图并举实施例,对本发明进行详细描述。

图1示出了本发明实施例所提供的基于fpga和cpu综合控制的星上时间管理系统的组成结构框图。

本发明实施例提供了基于fpga和cpu综合控制的星上时间管理系统。

该系统系统包括现场可编辑门阵列fpga芯片和中央处理器cpu芯片。

fpga芯片中集成有内部交互接口模块、守时模块、授时模块、校时模块以及外部输出接口模块。

内部交互接口模块通过通信总线连接cpu芯片;参考图1中的线路(1),线路(1)是cpu芯片同fpga间通信路径,可以为通信总线,例如可以是isa总线、uart总线或者can总线。

cpu芯片通过内部交互接口模块,向校时模块发送校时控制信号;参考图1中的线路(2),线路(2)是校时模块的控制路径,cpu芯片通过内部交互接口模块实现对校时模块的控制。

校时模块,连接至内部交互接口模块,接收校时控制信号;校时模块连接守时模块,用于根据校时控制信号进行校时,修正守时模块的守时结果;参考图1中的线路(6),线路(6)是校时路径,校时模块将校时结果通过该路径传递至守时模块,修正守时结果。

守时模块,配置用于存储守时结果;守时模块连接内部交互接口模块,将守时结果通过内部交互接口模块发送至cpu芯片,参考图1中的线路(3),线路(3)是守时结果内部输出路径,守时结果通过内部交互接口模块交给cpu芯片;守时模块,还连接外部输出接口模块,将fpga芯片中产生的标准授时脉冲通过外部输出接口模块提供给外部接受授时的设备;参考图1中的线路(8),线路(8)是守时结果外部输出路径,对外输出标准授时脉冲校准其他时间用户。

授时模块,配置用于存储守时结果;授时模块连接至内部交互接口模块,接收cpu芯片发来的地面授时指令,参考图1中的线路(4),线路(4)是授时模块控制路径,cpu芯片通过内部交互接口模块实现对授时模块的控制,授时模块根据地面授时指令修正守时模块的守时结果;cpu芯片通过星上遥控通道接收地面注入的地面授时指令;参考图1中的线路(7),线路(7)是授时路径,授时模块将地面授时指令通过该路径传递至守时模块,修正守时结果。

外部输出接口模块连接外部接受授时的设备。外部输出接口模块同时受cpu芯片控制,参考图1中的线路(5),线路(5)是外部输出接口模块控制路径,cpu芯片通过内部交互接口模块实现对外部输出接口模块的控制。同时图1中线路(10)为外部输出接口模块的标准授时脉冲输出路径。

本发明采用fgpa芯片进行时间管理,cpu芯片仅对fpga芯片进行控制,通过fpga芯片分担时间管理任务,能够在不占用cpu资源的情况下实现星上时间的有效管理,且不必受到cpu其他任务的影响,大大提成了时间管理的精度。

本发明实施例中,为了能够提供更加精确的校时精度,采用了多种校时方法同时进行校时的设计。

本发明实施例中,cpu芯片,还通过星上遥控通道接收地面注入;cpu芯片通过内部交互接口模块,向校时模块发送包括如下项中的一种或多种的校时控制信号:

gps校时控制信号、集中校时控制信号以及均匀校时控制信号。

gps校时控制信号为指示是否采用gps校时的指令,由cpu芯片产生;集中校时控制信号包括指示是否采用集中校时的指令以及集中校时增减值,其中指示是否采用集中校时的指令由cpu芯片产生,集中校时增减值由cpu芯片通过星上遥控通道接收;均匀校时控制信号包括指示是否采用均匀校时的指令、均匀校时的校时周期以及校准时间,其中指示是否采用均匀校时的指令、均匀校时的校时周期以及校准时间均由cpu芯片产生。

校时模块,用于根据校时控制信号进行校时,包括:

若根据指示是否采用gps校时的指令,确定采用gps校时,则通过连接的星上导航gps接收机获取gps校时信号对星上时进行gps校时,修正守时模块的守时结果;参考图1中的线路(9),线路(9)是gps输入路径,为校时模块和外部输出接口模块提供gps校时输入。

若根据指示是否采用集中校时的指令,若确定采用集中校时,则根据集中校时增减值对星上时进行集中校时,修正守时模块的守时结果。

若根据指示是否采用均匀校时的指令,确定采用均匀校时,则根据均匀校时的校时周期以及校准时间对星上时进行均匀校时,修正守时模块的守时结果。

本发明可接收gps时间或地面授时时间进行授时或校时,校时包括gps校时、集中校时、均匀校时,采用多种校时方法进一步提升了校时精度。

本发明实施例对守时模块进行了寄存器设计:守时模块,采用时间寄存器存储守时结果;

时间寄存器包括一个4字节的秒寄存器和一个3字节的微秒us寄存器;

其中us寄存器的存储范围为0~999999us(0x0f423f),秒寄存器的存储范围为:0~4294967295s(0xffffffff)。

秒寄存器和us寄存器初始化均为0,启动后us寄存器自动累加,当累加到999999(0x0f423f)us时,us寄存器清0,秒寄存器加1。

本发明实施例中,授时模块,接收cpu芯片发来的地面授时指令,地面授时指令由us授时值(3字节)和秒授时值(4字节)组成。

授时模块包括两种工作模式,即协调世界时utc授时模式和微秒us授时模式。

当授时模式工作在utc授时模式时,授时模块依据地面授时指令中的秒授时值修正授时模块的秒寄存器。

当授时模式工作在us授时模式时,授时模块依据地面授时指令中的秒授时值和us授时值分别修正授时模块的秒寄存器和us寄存器。

本发明实施例中,校时模块,还用于:

若根据指示是否采用gps校时的指令,确定采用gps校时,则通过连接的星上导航gps接收机获取gps校时信号对星上时进行gps校时,gps校时信号为gps秒脉冲,当gps秒脉冲到达,校时模块将守时模块的us寄存器四舍五入到秒寄存器,然后将us寄存器清零,以修正守时模块的守时结果。

若根据指示是否采用集中校时的指令,确定采用集中校时,集中校时增减值为集中校时增值或者集中校时减值,则根据集中校时增减值对星上时进行如下集中校时,以修正守时模块的守时结果:

集中校时增减值为集中校时增值时,包括us增值和秒增值;校时模块依据us增值和秒增值分别对守时模块中的us寄存器和秒寄存器进行加法操作,若us寄存器相加超过999999us时,则需要向大秒寄存器进位,若秒寄存器相加超过4294967295s时,则只取低4个字节有效。

集中校时增减值为集中校时减值时,包括us减值和秒减值;校时模块依据us减值和秒减值分别对守时模块中的us寄存器和秒寄存器进行减法操作,若被减数us寄存器小于us减值时,则向秒寄存器借位后执行减法操作;若被减数秒寄存器小于设置的秒减值时,则按照溢出处理。

若根据指示是否采用均匀校时的指令,确定采用均匀校时,则在均匀校时期间,根据均匀校时的校时周期以及校准时间对星上时进行如下均匀校时,以修正守时模块的守时结果:

校准时间为us校准值,校时周期为秒间隔值;采用计数器进行计数,每隔1s计数器的计数值加1,当计数器的计数值超过秒间隔值时,判断守时模块中的us寄存器中值是否为0,若是,则利用us校准值修正us寄存器,否则us寄存器清零。

本发明实施例中,守时模块,还用于产生时间片中断,时间片中断发送至cpu芯片,cpu芯片依据接收的时间片中断控制自身任务周期。

守时模块中包括时间片计数器,时间片中断由时间片计数器产生;设置时间片的分片间隔,利用分片间隔将1s进行等分,得到多个等分点;时间片计数器从1s的起始开始计时,当守时模块中的us寄存器的值达到等分点、且时间片计数器的计数值大于设定的时间片计数阈值时,守时模块产生时间片中断,且时间片计数器清零重新计时。

时间片计数阈值设定小于分片间隔。

例如分片间隔可以是125ms,当守时模块中的时间寄存器中的us寄存器值为0,250ms,500ms,750ms时,时间片计数器清0;当us寄存器值为0,250ms,500ms,750ms且时间片计数器值>=240ms时,产生时间片中断。时间片中断计数器默认初始值为0,最大值为500ms。

本发明可以提供星上的守时结果,以及标准授时脉冲和时间片中断,能够满足星务管理系统任务时间同步的要求。

综上,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1