一种适用于航天领域基于fpga的高可靠性嵌入式最小cpu核设计方法

文档序号:6430837阅读:336来源:国知局
专利名称:一种适用于航天领域基于fpga的高可靠性嵌入式最小cpu核设计方法
技术领域
本发明涉及基于FPGA的嵌入式CPU核领域的软件,尤其适用于航天FPGA的小资源、高可靠性的技术要求。
背景技术
航天领域由于其工作地点的特殊性,产品的质量和可靠性要求极高,不允许出现任何故障。在太空中,由于高能粒子的冲击和持续辐照,对元器件的等级要求极高,FPGA由于其本身工艺设计的原因,目前能上天的FPGA可用资源有限,而用80C51核由于占用资源太多而不能应用。目前航天领域大多数型号任务采用FPGA+单片机+片外RAM+片外PROM的体系架构,这种体系架构用到的元器件较多,应用时要考虑每个元器件的质量等级和可靠性指标,可靠性会降低。

发明内容
本发明要解决的问题是提供一种基于FPGA的高可靠性嵌入式最小CPU核设计方法,它能够解决适用于航天领域FPGA的资源有限的问题,能增加航天器的可靠性。为解决上述技术问题,本发明的一种基于FPGA的高可靠性嵌入式最小CPU核设计方法,其包括如下步骤步骤a :根据定义的指令,预先用仿汇编语言编写程序,转换为Binary格式的机器码,并写入PROM中;步骤b :根据程序读取PROM中的数据;步骤c :将读到的数据进行指令和目标源拆分,识别指令类型和目标源,进行数据的算数逻辑运算,并把运算结果放入指定的地方,最后根据指令进行对外数据的读写操作。上述步骤a包含有如下步骤步骤al :根据定义的指令,用仿汇编语言编写程序;步骤a2 :将编译后的执行代码转换为Binary格式的机器码;步骤a3 :根据程序大小,写入片内ROM或片外PROM中。所述步骤b包含有如下步骤步骤bl :根据程序指令,确定要访问的PROM的地址;步骤b2 :读取PROM中地址相对应的数据。所述步骤c包含有如下步骤步骤Cl :将读到的数据进行指令和目标源拆分;步骤C2 :识别指令类型和目标源操作目标源,进行数据的算数逻辑运算,并把运算结果放入指定的地方;步骤C3 :根据指令进行对外数据的读写操作。
本发明通过一种基于FPGA的高可靠性嵌入式最小CPU核设计方法,与现有技术相t匕,其有益效果是占用极小的FPGA资源,比现有的80C51核减小10倍以上资源开销,特别适合在航天领域中FPGA资源有限的情况下应用;工程运用效果好,可以对外进行数据的读写,可实现422和1553B通讯;采用仿汇编语言编写,程序可靠性高;与现有航天的体系架构相比,减少元器件开销,节省成本。


以下将结合附图和实施例对本发明作进一步详细说明。图I是本发明的最小CPU核的内部数据流图;图2是本发明的指令和目标源解析图;图3是本发明Binary格式数据流的定义。
具体实施例方式适用于本发明需要有下面几个条件I、计算机配置和软件条件需配置一台内存大于512M,硬盘存储空间大于IG的计算机,需要安装FPGA仿真和烧写软件。2、存储空间条件—般航天领域的FPGA软件为了抵抗SEU(单粒子反转,Single Event Upset)效应对程序的影响,在航天器发射之前进行FPGA反熔丝固化,固化好的程序将不能进行修改。 而Binary格式的机器码一般存放在PROM(可编程只读存储器,Program Read Only Memory)中,为了抵抗SEU效应对程序的影响,用于存放代码的PROM在航天器发射之前进行烧结固化,固化好的程序将不能在原PROM基础上进行修改。因此只需要可适用于航天领域的FPGA和PR0M,存储空间条件较易满足,本发明能适用于大多数的航天领域。鉴于上述两个条件航天领域一般都满足,故本发明可以应用到大多数的航天领域中FPGA的嵌入式CPU核设计。具体实施例如下本实施例采用C语言编写一段程序(一个简单的1553B通讯程序),根据图2的指令和目标源的解析用仿汇编语言将C语言程序转换为Binary格式的机器码,并写入PROM中,并依据设计在FPGA软件内部的CPU核,对注入的代码进行指令和目标源拆分,识别指令类型和目标源,然后进行数据的读写操作。其方法的具体步骤如下C语言程序如下
权利要求
1.一种适用于航天领域基于FPGA的高可靠性嵌入式最小CPU核设计方法,其特征在于包括如下步骤 步骤a :预先用仿汇编语言编写程序,转换为Binary格式,并写入PROM中; 步骤b :根据程序读取PROM中的数据; 步骤c :将读到的数据进行指令和目标源拆分,识别指令类型和目标源,进行数据的算数逻辑运算,并把运算结果放入指定的地方,最后根据指令进行对外数据的读写操作。
2.根据权利要求I所述的基于FPGA的高可靠性嵌入式最小CPU核,其特征在于上述步骤a包含有如下步骤 步骤al :根据定义的指令,用仿汇编语言编写程序; 步骤a2 :将编译后的执行代码转换为Binary格式的机器码; 步骤a3 :根据程序大小,写入片内ROM或片外PROM中。
3.根据权利要求I所述的基于FPGA的高可靠性嵌入式最小CPU核,其特征在于所述步骤b包含有如下步骤 步骤bl :根据程序指令,确定要访问的PROM的地址; 步骤b2 :读取PROM中地址相对应的数据。
4.根据权利要求I所述的基于FPGA的高可靠性嵌入式最小CPU核,其特征在于所述步骤c包含有如下步骤 步骤Cl :将读到的数据进行指令和目标源拆分; 步骤c2 :识别指令类型和目标源操作目标源,进行数据的算数逻辑运算,并把运算结果放入指定的地方; 步骤c3 :根据指令进行对外数据的读写操作。
全文摘要
本发明公开了一种适用于航天领域基于FPGA的高可靠性嵌入式最小CPU核设计方法。该方法包括如下步骤预先用仿汇编语言编写程序,转换为Binary格式的机器码,并写入PROM中;根据程序读取PROM中的数据;将读到的数据进行指令和目标源拆分,识别指令类型和目标源,进行数据的算数逻辑运算,并把运算结果放入指定的地方,最后根据指令进行对外数据的读写操作。与现有技术相比,其有益效果是占用极小的FPGA资源,比现有的80C51核减小10倍以上资源开销,特别适合在航天领域中FPGA资源有限的情况下应用;工程运用效果好,可以对外进行数据的读写,实现422和1553B通信;采用仿汇编语言编写,程序可靠性高。
文档编号G06F9/30GK102937888SQ20111023388
公开日2013年2月20日 申请日期2011年8月16日 优先权日2011年8月16日
发明者施未勋, 徐建萍, 周振宇, 宋晓东 申请人:上海航天测控通信研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1