本发明专利技术提供一种AOS的虚拟信道动态调度方法,该方法的具体步骤为:设置多个缓存器,其中每一缓存器对应一个虚拟信道,初始时将每一缓存器的传送紧迫度设置为0;确定每一虚拟信道接收外部输入数据的类型,根据其接收数据的重要性和实时性要求,为其对应的缓存器定义一个优先级,且各缓存器所定义的优先级各不相同;根据星上数据的重要性为其设计优先级,同时根据缓存器存储数据的时间对其设置紧迫度,基于对紧迫度和优先级的判断,实现对多个缓存器中存储数据的调度,这样可以很好的应对星上数据源动态变化的问题,使得该方法调度效率高、实时性好。
【技术实现步骤摘要】
本专利技术涉及一种虚拟信道动态调度方法,具体涉及一种高级在轨系统(AOS)的虚拟信道动态调度方法,属于通信
技术介绍
虚拟信道(VC)是建立在一个物理信道上的多个并行的“虚拟”通路,利用虚拟信道机制,一个物理信道可以被多个不同业务的用户共享。各个虚拟信道中的数据单元被封装到高级在轨系统(AOS)传输帧的数据域。利用差错控制处理将AOS上多个虚拟信道的传输帧同步地装入一个信道存取数据单元(CADU)中,形成连续并邻接的CADU数据流,通过物理信道传输出去。在对AOS上多个虚拟信道的传输帧进行调度的过程中,最简单的调度策略是静态 周期轮转的调度策略。同传统的时分制非常类似,它的主要特点是各虚拟信道的传输帧输出具有等时性,其优点是星上实现简单,但这种方法对突发数据的传输效率较低,不能适应星上数据源的动态变化,比如当星上突发故障而产生大量诊断数据时,这些数据是地面关心的,占用某个或某些虚拟信道传输,地面通常希望能尽快而且完整地传回,此时静态周期轮转的调度策略对这些虚拟信道仍采用原先不紧不慢的步调传输,就不能适应这种突发数据的要求。为了保证AOS信道合路器能够高效、有序地完成合路调度的任务,因此需要设计一种虚拟信道动态调度策略,使其可以很好的解决静态周期轮转调度策略效率低、实时性差的问题。
技术实现思路
本专利技术的目的是为了解决静态周期轮转调度策略不能适应星上数据源的动态变化的问题,提出了一种AOS的虚拟信道动态调度方法。本专利技术的目的是通过以下技术方案实现的一种AOS的虚拟信道动态调度方法,具体步骤为步骤一、在FPGA中设置多个缓存器,其中每一缓存器对应一个虚拟信道,初始时将每一缓存器的传送紧迫度设置为O ;步骤二、确定每一虚拟信道接收外部输入数据的类型,根据其接收数据的重要性和实时性要求,为其对应的缓存器定义一个优先级,且各缓存器所定义的优先级各不相同;步骤三、周期性地对FPGA上各缓存器进行判断,当判定至少存在一个缓存器存有数据需要参与调度,则对FPGA上的数据调度模块提出申请;步骤四、判断各缓存器对应的紧迫度,若存在唯一一个最高紧迫度时,则将该最高紧迫度对应的缓存器定义为优先缓存器,并进入步骤五,若存在的最高紧迫度为多个时,则将该多个最高紧迫度对应的缓存器定义为优先缓存器,并进入步骤六;步骤五、数据调度模块调度优先缓存器中的数据,当调度完毕后将该优先缓存器对应的紧迫度设置为0,同时进入步骤七;步骤六、判断多个优先缓存器所对应的优先级,数据调度模块调度优先级最高的优先缓存器中存储的数据,当调度完毕后将该被调度数据的缓存器对应的紧迫度设置为O ;同时进入步骤七;步骤七、在步骤四中提出调度申请,但是得不到调度,且得不到调度的时间达到数据调度模块调度I帧数据的时间时,则将该缓存器对应的紧迫度加I;同时判断数据调度模块是否接收到外部输入的停止调度的指令,若是则结束,否则数据调度模块将采集的数据输出,并返回步骤三。有益效果本专利技术灵活的根据星上数据的重要性为其设计优先级,同时根据缓存器存储数据的时间对其设置紧迫度,基于对紧迫度和优先级的判断,实现对多个缓存器中存储数据 的调度,这样可以很好的应对星上数据源动态变化的问题,使得该方法调度效率高、实时性好。附图说明图I为基于AOS的虚拟信道动态调度方法流程框图。具体实施例方式下面结合附图和具体实施方式对本专利技术的动态调度方法作进一步说明。AOS的虚拟信道动态调度方法的实现采用VHDL硬件描述语言编程实现,并下载到可编程逻辑器件FPGA中,由FPGA和FIFO等硬件实现对虚拟信道动态调度的技术方案。如图I所示,本专利技术AOS的虚拟信道动态调度方法,具体步骤如下步骤一、在FPGA中设置多个缓存器,其中每一缓存器对应一个虚拟信道,初始时将每一缓存器的传送紧迫度设置为κ=0。根据CCSDS AOS标准协议要求,虚拟信道标识符采用6个比特位来标识,因此,在实际应用中,虚拟信道数量最多为26=64个,其中空闲帧占一个信道,因此实际的业务数据通道最多为63个。因为紧迫度与数据在缓存器中存储的时间有关,因此在初始时刻,每一缓存器中还未存储数据,因此将其紧迫度设置为O。步骤二、确定每一虚拟信道接收外部输入数据的类型,根据其接收数据的重要性和实时性要求,为其对应的缓存器定义一个优先级,且各缓存器所定义的优先级各不相同。在本实施例中,共有7种数据参与调度,7种数据分别是工程遥测数据、GPS定位数据、终端数据源高速模拟数据、激光跟瞄数据、大容量存储器数据、终端数据源1394Α数据和空闲帧数据。步骤一中的初始化时,将7路数据的传送紧迫度均分配为O ;7路数据的优先级定义如下由于工程遥测数据关系到整星的工作状态及寿命,地面用户需要及时了解,因此将其优先级设为最高为7级;GPS定位数据用于对整个卫星的位置进行定位,地面用户对该类数据的需求也较高,但其重要性要低于工程遥测数据,因此将其优先级定为6级;大容量存储器数据为卫星在境外工作时采集的数据,卫星到达境内后,需要回放下来,其重要性比GPS定位数据要低,将其优先级定为5级;激光跟瞄数据用于反映激光跟瞄的状态,由于激光跟瞄为试验项目,因此重要性要求不高,但其反映的是状态信息,其重要性要比终端数据源高速模拟数据和终端数据源1394A数据高,因此,将其优先级定为4级;终端数据源高速模拟数据及终端数据源1394A数据,均为激光通信份系统试验提供模拟源,属于试验项目,该两类数据的重要性相同,因此在实际优先级分配时根据其工作速率进行分配,若终端数据源高速模拟数据的速率高于终端数据源1394A数据的速率,则将终端数据源高速模拟数据定为3级,终端数据源1394A数据定为2级,否则将终端数据源高速模拟数据定为2级,终端数据源1394A数据定为3级;为保持物理信道链路的连续性,在上述数据均未参与数据调度时,则通过物理信道链路发送空闲数据,因此其优先级较以上数据优先级最低,定为I级。步骤三、对FPGA上各缓存器进行判断,当判定至少存在一个缓存器存有数据需要参与调度,则对FPGA上的数据调度模块提出申请。本步骤中的判断可以为在FPGA上为各缓存器对应的设计一个判断模块,当判断 模块判断出其管辖的缓存器内存储有数据时(通常数据都是以帧为单元进行存储的),则此时该判断模块对数据调度模块提出调度申请,希望数据调度模块对其管辖的缓存器内存储的数据进行调度,同时该判断是按照一定的周期进行的,该周期可以为数据调度模块调度一帧数据所需的时间。步骤四、判断各缓存器对应的紧迫度,若存在唯一一个最高紧迫度时,则将该最高紧迫度对应的缓存器定义为优先缓存器,并进入步骤五,若存在的最高紧迫度为多个时,则将该多个最高紧迫度对应的缓存器定义为优先缓存器,并进入步骤六。在任何情况下,首先为传送紧迫度高的信道提供服务,如果出现最高的传送紧迫度相同时的情况,这时需要判断每个信道的优先级,传送优先级高的信道。因此本步骤中若各缓存器对应的紧迫度互不相同,则肯定存在一个最高的紧迫度,此时只需要进入步骤五对最高紧迫度对应的缓存器中存储的数据进行调度。本步骤中若存在最高紧迫度为多个时,则仅根据紧迫度无法判断出应该先调哪一缓存器中的数据,此时进入步骤六,对各缓存器的优先级进行判断,因此在步骤二中对设置各缓存器的优本文档来自技高网...
【技术保护点】
一种AOS的虚拟信道动态调度方法,其特征在于,具体步骤为:步骤一、在FPGA中设置多个缓存器,其中每一缓存器对应一个虚拟信道,初始时将每一缓存器的传送紧迫度设置为0;步骤二、确定每一虚拟信道接收外部输入数据的类型,根据其接收数据的重要性和实时性要求,为其对应的缓存器定义一个优先级,且各缓存器所定义的优先级各不相同;步骤三、周期性地对FPGA上各缓存器进行判断,当判定至少存在一个缓存器存有数据需要参与调度,则对FPGA上的数据调度模块提出申请;步骤四、判断各缓存器对应的紧迫度,若存在唯一一个最高紧迫度时,则将该最高紧迫度对应的缓存器定义为优先缓存器,并进入步骤五,若存在的最高紧迫度为多个时,则将该多个最高紧迫度对应的缓存器定义为优先缓存器,并进入步骤六;步骤五、数据调度模块调度优先缓存器中的数据,当调度完毕后将该优先缓存器对应的紧迫度设置为0,同时进入步骤七;步骤六、判断多个优先缓存器所对应的优先级,数据调度模块调度优先级最高的优先缓存器中存储的数据,当调度完毕后将该被调度数据的缓存器对应的紧迫度设置为0;同时进入步骤七;步骤七、在步骤四中提出调度申请,但是得不到调度,且得不到调度的时间达到数据调度模块调度1帧数据的时间时,则将该缓存器对应的紧迫度加1;同时判断数据调度模块是否接收到外部输入的停止调度的指令,若是则结束,否则数据调度模块将采集的数据输出,并返回步骤三。...
【技术特征摘要】
1.一种AOS的虚拟信道动态调度方法,其特征在于,具体步骤为 步骤一、在FPGA中设置多个缓存器,其中每一缓存器对应一个虚拟信道,初始时将每一缓存器的传送紧迫度设置为O ; 步骤二、确定每一虚拟信道接收外部输入数据的类型,根据其接收数据的重要性和实时性要求,为其对应的缓存器定义一个优先级,且各缓存器所定义的优先级各不相同; 步骤三、周期性地对FPGA上各缓存器进行判断,当判定至少存在一个缓存器存有数据需要参与调度,则对FPGA上的数据调度模块提出申请; 步骤四、判断各缓存器对应的紧迫度,若存在唯一一个最高紧迫度时,则将该最高紧迫度对应的缓存器定义为优先缓存器,并进入步骤五,若存在的最高紧迫度为多个时,则将该多个最高紧迫度对应的缓存器定义为优先缓存器,并进入步骤六; 步骤五、数据调度模块调度优先缓存器中的数据,当调度完毕后将该优先缓存器对应的紧迫度设置为0,同时进入步骤七; 步骤六、判断多个优先缓存器所对应的优先级,数据调度模块调度优先级最高的优先缓存器中存储的数据,当调度完毕后将该被调度数据的缓存器对应的紧迫度设置为O ;同时进入步骤七; 步骤七、在步骤四中提出调度申请,但是得不到调度,且得不到调度...
【专利技术属性】
技术研发人员:邵飞,申景诗,张长帅,王凤阳,
申请(专利权)人:中国航天科技集团公司第五研究院第五一三研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。