可重构计算机技术在航天系统中的应用

时间:2022-10-27 08:11:42

可重构计算机技术在航天系统中的应用

摘要:随着小卫星技术的不断发展,卫星的功能、种类也越来越多,这就对星载计算机的性能提出了更高的要求,而传统的CPU难以胜任现代小卫星繁重的任务。由于ARM微处理器具有体积小、性能高、功率低、操作系统便于移植等优点。本文给出了基于AR91R40008处理器的可重构星载计算机的设计方案,并详细论证了方案的技术细节和可行性,以及所采用的一些关键设计技术。

关键词:星载计算机;ARM;可重构

中图分类号:TP274文献标识码:A文章编号:1007-9599 (2012) 03-0000-02

Reconfigurable Computer Technology Applications in Aerospace Systems

Huang Zhili

(Shanghai Space Systems Representative Office, Shanghai 200330,China)

Abstract: With the continuous development of small satellite technology, satellite functions, types, more and more, the performance of the onboard computer, which a higher demand, while traditional CPU could not do the onerous task of the modern small satellite. ARM microprocessor has a small size, high-performance, low power, the operating system to facilitate the advantages of transplantation. In this paper, based on AR91R40008 processor, reconfigurable onboard computer design program, and demonstrated the technical details and feasibility of the program, as well as some of the key design techniques.

Keywords: Satellite computer; ARM; Reconfigurable

随着现代计算机技术的发展,计算机的通信能力和数据处理能力和都有了长足发展,同时,作为现代高科技代表的航天工程,则对计算机技术的依赖性也越来越大。近年来,随着我国航天工程项目的不断增加,计算机技术在我国航天工程中的重要性日见凸现,航天工程项目中使用的计算机的种类和数量也越来越多。但由于我国半导体行业的整体水平还比较低,目前我国航天计算机仍然大量使用80186、803l等处理器。由于这些处理器处理能力低,而且不适合进行多任务和批处理。

小卫星通常由卫星平台和卫星有效载荷两部分组成。作为有效载荷的服务系统,小卫星平台主要完成功能为:支持有效载荷;维持有效载荷的合适温度;保持有效载荷的正确指向;使有效载荷处于正确轨道,并保持在这个轨道;提供电源、指令和遥测;提供数据存储和通信功能等。所以,小卫星平台可以分为以下的各个分系统:星载计算机、姿轨控制、电源、推进、热控、测控、结构与机构。

小卫星系统功能构成

在小卫星平台下,星载计算机负责是星上数据和程序的存储、处理以及协调管理各个分系统,主要硬件有CPU、内存、系统时钟、用户存储器等模块。

一、星载计算机硬件电路设计过程中的重点与实现方法

(一)CPU模块功能及器件选择

对于计算机系统来说,处理器是整个系统的核心模块,它完成整个系统的控制、信号和数据处理等功能。因此,处理器的选择至关重要,它直接关系到系统开发的进度和难度,对于整个航天项目的成功与否非常重要。通常我们可根据以下因素来选择处理器:

A:性能:处理器必须具备足够高的性能来处理任务,满足实时、多任务

处理数据的要求;

B:体积与封装:由于卫星上空间狭小,这就要求芯片尺寸要求尽可能小;

B:功耗:卫星能提供的电源有限,要求星载计算机采用功耗较低的处理器:

C:工具支持:是否有支持软件创建、系统集成、调试、代码调整、优化的工具,可根据具体的应用和需要的接口,确定处理器;

D:仿真支持:是否具有的处理器仿真器支持;

E:操作系统支持:针对所选处理器是否有优化的操作系统来支持,能

够缩短系统的应用开发周期;

F:应用支持:是否可以提供用于设备的驱动程序、板级支持包和

其它“启动套件”;

G:算法复杂性:由于特定的处理器能高效地运行特定算法,选择的处理器就应该尽可能与其应用相适合;

H:成本:嵌入式应用对成本非常敏感,性价比是否高;

I:安全性与可靠性问题;

综合以上种种因素,在设计中本系统拟用ARM处理器。ARM处理器具有三大优点:耗电少、功能强、16位/32位双指令集和众多合作伙伴。而且由于ARM是设计公司,采用转让许可证制度,本身不生产芯片,由合作伙伴生产芯片,ARM采用该模式建立起新型的微处理器设计、生产和销售商业模式,所以处理器的安全性也比较高。

(二)可重构设计

根据小卫星功能密度大、体积小的特点,我们可选择集中式体系结构作

为本系统的结构。由于小卫星内部节点不多,而且它们都只与一个处理器相连,每个节点都已定义清楚,采用这种结构是很有效的。另外,它也比较可靠,当一个节点出现故障时不会影响其他节点,但是中心处理器也是一个潜在的单点故障源,所以必须对它进行仔细设计,以消除或减少这种风险。

星载计算机作为小卫星平台的最重要的模块之一,它能否可靠工作直接关系着航天工程的成功与否。所以,采取适当的冗余、保护措施来保障计算机能够正常工作是十分重要的。在本设计中,为提高提高系统的可靠性,我们主要采用系统的可重构设计技术。具体来说,可重构设计是指在数据处理系统中,软、硬件模块能根据变化的数据流和算法来进行重新配置。

系统硬件主要由中央处理器(CPU)单元、存储器单元、微处理器监控单元、总线接口单元、时钟单元、电源单元及译码电路组成。CPU单元是整个系统的核心单元,它配置有看门狗电路,用以防止长时间的软件运行中出现程序死机和跑飞的现象。存储器单元包括Flash和SRAM, FLASH用来存储系统的软件程序和星务工程参数,SRAM用来存储系统运行的临时数据。时钟单元通过从GPS接收机接收精确的定时脉冲,为卫星系统提供精确时间。

在硬件设计中,采用FPGA器件,并用CPU实现对FPGA的加载。当卫星系统发生局部故障时,可以通过对FPGA的重新加载,来对发生故障区域进行隔离,从而实现星载计算机硬件系统的在轨重构。

图2.2 初步方案设计框图

本硬件系统由CPU、看门狗电路、总线接13电路、数据存储器、程序存储器等组成。其中CPU是系统的核心模块,其他电路都作为CPU的电路与CPU相连。程序存储器分别为应用程序和操作系统提供存储空间。这样,系统可根据不同任务来加载不同的应用程序。SRAM不仅可以为系统提供足够的用户数据、系统数据的应用空间,还可以提供足够的程序运行空间。同时,系统采用专门的大容量Flash执行卫星信号数据的存储任务。

(三)目前ARM处理器在航天领域的应用

虽然ARM处理器从ARM7概念产品面世至今只有十多年左右的时间。但由于ARM处理器具备高性能、低功耗的特点,在此期间,国内外的航天研究机构都围绕ARM处理器开展了这方面的应用研究。在国外, Surrey大学的小卫星平台SNAP(Surrey Nanosatellite Applications Platform)将ARM处理器作为OBC(在轨计算机)的主处理器,美国空军学院的FaleonSat.2号钠星也采用了StrongArm SAll00处理器。

二、硬件电路详细设计

(一)电源模块设计

本系统使用的输入电源电压为5V,设备所使用的电压主要有2种: 1.8V和3.3V。其中1.8V为CPU内核电压,其他电路都是采用3.3V电压,因此,这就需要系统同时提供两种电源。

LT1086系列LDO的典型落差电压为1.3V,最小落差电压为1v。在5V的电源输入时,系统的最大工作电流

(二)存储器模块

本系统采用Flash和SRAM存储器作为系统的存储器,使用两片AT29LV020作为双冗余的程序存储器,用于应用程序和操作系统的存储。AT29LV020是ATMEL公司生产的可以进行数据保护、坏块检测的CMOS型Flash,第一片Flash用于用于应用程序备份和为在轨程序动态加载的预留空间,第二片Flash用于存储底层操作系统和应用程序。通过这样分配,就实现了应用程序的在轨更新和动态加载。AT91R40008片内的256KB SRAM用于存储运行时所加载的程序。

首先,当系统启动时, BOOT程序自检后加载操作系统到SRAM中,然后再将控制权交给计算机操作系统,操作系统进行软硬件自检后,可根据系统任务的状态字,操作系统加载相应的应用程序到内存中。然后,程序将在SRAM中运行,而不需要再去访问Flash中存储的程序。256MB的外部Flash用于存储星务数据,1MB的外部SRAM提供了足够的空问用于用户数据的缓存和程序的运行。同时,为了适应空间恶劣的运行环境,存储器部分则采用动态纠错技术(EDAC)来解决单粒子翻转的问题。

(三)CPU模块设计

CPU模块主要包括CPU、CPU电路、时钟输入以及JTAG接口这几个部分。CPU采用具有ARM7TDMI内核AT91R40008, JTAG接口信号TDI、TDO、NRST、TCK分别于CPU的各个对应引脚的相连,时钟采用66MHz有源晶振,同时分别接与10PF滤波电容和10K欧的上拉电阻,用以改善仿真器输出的信号特性。在接近CPU的TCK引脚处,将RTCK和TCK信号相连,用于为仿真器提供反馈时钟。NTRST信号为JTAG仿真器复位信号,与本地CPU无关。CPU的75脚NTRI要求用10K欧电阻上拉至VCC处,用以保证使用仿真器时,目标板上的本地处理器均处于工作状态。CPU的96脚NWAIT信号则用10K欧的上拉电阻上拉至VCC,用以防止CPU在工作时由于受到外部信号的干扰而出现错误的插入等待。

三、设计总计与改进措施

随着现代航天事业的发展,卫星平台设计从大型化逐渐转向了小型化设计,卫星出现了低成本、小型化的发展趋势。而且,现代卫星的功能越来越密集,这就对完成有效载荷控制和星务管理的星载计算机也提出了更高的要求,这也导致星载计算机的软、硬件设计日趋复杂。由于传统的星载计算机软、硬件开发手段、设计方法已逐渐不适应这种发展要求,这就迫切要求我们采用新的开发手段来研制新型、高性能的星载计算机。

根据上述这种要求,本文给出了基于AR91R40008处理器的可重构星载计算机的设计方案,以及相应的软、硬件设计所采用的一些关键技术,同时,详细论证了方案的技术细节和可行性,总的来说,基于ARM的高性能可重构星载计算机系统的硬件体系以及基于任务需求而开发的软件系统,符合新一代航天任务“快、好、省”的总体设计原则,同时该系统也具有较强的软件上载功能和实时容错能力。

参考文献:

[1]何希顺,张跃,何荣森.嵌入式系统中的JTAG接口编程技术[J].电子技术应用,2009

[2]罗先武.星上数据管理中的实时多任务操作系统设计[J].中国空间科学技术,2007

[3]卢东昕,洪炳熔,张宇.基于CCSDS的小卫星系统软件重用技术研究[J].高技术通信,2005

[4]许盛柯,华更新,郭树玲.单板双机嵌入式486容错子系统的设计[J].控制工程,2006

[5]乔永强.基于软件的星载计算机系统故障注入方法的研究[M].计算机工程与应用,2008

[6]王京林,苏沽,詹横空.基于ARM7嵌入式内核的嵌入式应用程序调适技术[J].电子工程师,2002

[作者简介]黄志立(1968-),男(汉族),江苏徐州人,研究生,主要研究方向:自动控制。

上一篇:无线传感器网络发展及其在精准农业方面的应用 下一篇:参考馆员队伍建设浅枥