CN117666965A - 一种支持在轨程序重构的星载固态存储器 - Google Patents

一种支持在轨程序重构的星载固态存储器 Download PDF

Info

Publication number
CN117666965A
CN117666965A CN202311723156.8A CN202311723156A CN117666965A CN 117666965 A CN117666965 A CN 117666965A CN 202311723156 A CN202311723156 A CN 202311723156A CN 117666965 A CN117666965 A CN 117666965A
Authority
CN
China
Prior art keywords
program
loading
upper computer
reconstruction
core
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.)
Pending
Application number
CN202311723156.8A
Other languages
English (en)
Inventor
邵明强
杜承烈
贺呈磊
宛霁
王洪泽
刘晓飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northwestern Polytechnical University
Xian Microelectronics Technology Institute
Original Assignee
Northwestern Polytechnical University
Xian Microelectronics Technology Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Northwestern Polytechnical University, Xian Microelectronics Technology Institute filed Critical Northwestern Polytechnical University
Priority to CN202311723156.8A priority Critical patent/CN117666965A/zh
Publication of CN117666965A publication Critical patent/CN117666965A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种支持在轨程序重构的星载固态存储器,属于电子信息领域。星载固态存储器包括控制核心、数据存储阵列、缓存单元、刷新加载电路、接口单元、程序存储单元,控制核心实现存储阵列的控制、解析上位机指令、坏块管理、磨损均衡以及地址管理,缓存单元有效的防止单粒子翻转错误。存储阵列避免了高主频下FPGA可能出现的时序违例等难题。加载刷新电路采用刷新加载电路定时对FPGA内部程序进行刷新,减少单粒子翻转的影响。接口单元实现上位机对星载固态存储器的控制管理。程序存储单元根据作用、存储容量大小、读写带宽要求选择存储载体。整个硬件设计以FPGA软核实现星载固态存储器的控制管理功能,不必设计专门的CPU硬件。

Description

一种支持在轨程序重构的星载固态存储器
技术领域
本发明属于电子信息技术领域,涉及一种支持在轨程序重构的星载固态存储器。
背景技术
FPGA器件因为可编程资源丰富、具有抗辐照高等级器件在宇航领域内的应用非常广泛,尤其是在星载固态存储领域可以代替专门的存储控制器。
目前星载固态存储器产品和设计领域大都采用的是CPU+FPGA架构,CPU通常采用8051、SPARC V8、ARM等处理器,这些处理器由于采用了抗辐照设计价格极其昂贵,这与目前日趋激烈的市场竞争相违背。FPGA中的软核是由FPGA内部通用资源搭建而成,相比硬核具有更好的灵活性和移植性,采用软核替代FPGA外部的CPU可以有效的降低元器件成本。为保证星载固态存储器在轨的冗余容灾,通常设计有程序重构,以Xilinx系列FPGA为例,其配置比特流大小从4MB到35MB不等,而基于FPGA的软核程序大小约数百KB。FPGA配置比特流在实际应用中,更新频率远低于软核程序,现有技术软核程序与FPGA配置比特流为同一文件,更新时需整体文件替换,在当前星地通道最高Mbps级别现状下,程序更新效率低下。
发明内容
本发明的目的在于解决现有技术中软核程序与FPGA配置比特流为同一文件,更新时需整体文件替换,在当前星地通道最高Mbps级别现状下,程序更新效率低下的问题,提供一种支持在轨程序重构的星载固态存储器。
为达到上述目的,本发明采用以下技术方案予以实现:
本发明提出的一种支持在轨程序重构的星载固态存储器,包括控制核心、数据存储阵列、缓存单元、刷新加载电路、程序存储单元和接口单元;控制核心包括软核和逻辑单元;所述控制核心、接口单元和刷新加载电路均与上位机交互;
所述软核与所述逻辑单元交互,用于星载固态存储器擦除、记录、回放时序启动与组合;所述缓存单元与所述逻辑单元交互,用于实现记录、回放数据缓存、分拣及组合;所述数据存储阵列与所述控制核心交互,用于实现对存储阵列的状态检测、故障管理、冗余策略管理执行及时序控制;所述刷新加载电路与所述控制核心交互,用于控制核心程序加载刷新;所述接口单元均与所述控制核心交互,用于实现星载固态存储器数据交互;所述程序存储单元与所述控制核心交互,用于加载命令字检测、程序分区加载、参数存储。
优选地,所述逻辑单元包括记录进程缓存管理、回放进程缓存管理、数据调度控制和阵列控制器;
记录过程中数据由接口单元进入控制核心中的逻辑单元,数据调度控制调用记录进程缓存管理将数据存储进缓存单元,完成缓存后记录进程缓存管理进行数据分拣、组合通过阵列控制器存储进入存储阵列单元;
回放过程与之相反,阵列控制器从数据存储阵列中取出存储数据,数据调度控制通过回放进程缓存管理将数据放入缓存单元后经过数据分拣通过接口单元送至上位机。
优选地,所述刷新加载电路上连接有NOR FLASH。
优选地,软核通过AXI总线与逻辑单元交互;所述控制核心与上位机通过CAN总线交互;所述刷新加载电路与上位机通过RS422交互。
优选地,在软核中进行在轨程序重构的步骤如下:上电固化、软核加载检测、软核程序重构和FPGA程序重构。
优选地,上电固化步骤如下:
1)、上位机对加载刷新电路发送程序加载指令,将FPGA.bit加载至加载刷新电路,引导程序加载到软核中运行;
2)、软核检查程序存储单元中命令字,进入等待重构流程;
3)、上位机对软核发送重构指令,将应用程序更新至程序存储单元中;
4)、更新完成后上位机给软核的引导程序发送预运行指令,引导程序引导加载应用程序到缓存单元中并执行,软核对上位机反馈进入预运行状态,上位机对软核发送重构退出指令;
5)、软核的应用程序接收到重构退出指令后,回填命令字到程序存储单元中;
6)、上位机向加载刷新电路发送加载指令系统重启,应用程序开始正常运行。
优选地,软核加载检测步骤如下:
1)、引导程序正常加载运行,通过加载刷新电路的加载完成管脚判断是否正常加载;
2)、检测到程序存储单元中命令字存在,直接从程序存储单元中加载应用程序到缓存单元中执行。
优选地,软核程序重构步骤如下:
1)上位机发送重构进入查询应用程序系统状态;系统状态为空闲时,上位机发送重构启动指令后擦除程序存储单元中命令字后正常返回响应,这时系统需要重新上电;
2)系统上电加载引导程序运行,检查命令字不存在,进入到重构流程;
3)、上位机发送重构指令,将新的应用程序更新至程序存储单元中;
4)、更新完成后上位机给引导程序发送预运行指令,引导程序引导加载应用程序到缓存单元中并执行;
5)、上位机发送重构进入指令和重构退出指令;
6)、应用程序接收到重构退出指令后,表明退出重构模式,回填命令字到程序存储单元中;
7)、上位机向加载刷新电路发送加载指令系统重启,应用程序开始正常运行,完成重构过程。
优选地,程序重构步骤如下:
1)、上位机通过UART总线控制加载刷新器发送NorFlash擦除指令,对FPGA.bit执行擦除操作,回读状态变量判读擦除是否完成;
2)、上位机通过UART总线向加载刷新电路发送重构程序数据,执行NorFlash编程操作;
3)、编程完成后上位机向加载刷新电路发送程序校验指令进行程序校验,执行NorFlash程序校验后,加载刷新电路将校验结果反馈给上位机,上位机控制下电;
4)、上位机向加载刷新电路发送加载指令系统重启,重构完成。
优选地,缓存单元由五个DDR组成。
与现有技术相比,本发明具有以下有益效果:
本发明提出的一种支持在轨程序重构的星载固态存储器,可对包含软核程序进行部分或全部重构,对于降低星载固态存储器生产研制成本与提高可靠性具有重要意义。具体的:控制核心是本发明星载固态存储器的关键单元,控制核心由软核和逻辑单元两部分组成实现存储阵列的控制、解析上位机指令、坏块管理、磨损均衡以及地址管理。缓存单元能够有效的防止单粒子翻转错误。缓存单元具备两部分功能一是基于数据存储阵列无法直接写入必须先执行擦除操作才能执行写入编程操作的特点,设计数据缓存单元保证在执行数据记录时数据不会丢失;二是作为软核的内存,软核的应用程序运行在其中。数据存储阵列保证NAND FLASH工作在较低的主频即可满足上位机对于星载固态存储存储器的带宽要求,避免了高主频下FPGA可能出现的时序违例等难题。数据存储阵列中NAND FLASH均为并行操作,同一时刻由控制核心产生对存储阵列所有NAND FLASH的指令序列。加载刷新电路针对SRAM型的FPGA抗单粒子翻转能力较差的问题,采用刷新加载电路定时对FPGA内部程序进行刷新,减少单粒子翻转的影响。接口单元是星载固态存储器与上位机通信管理单元。程序存储单元根据作用、存储容量大小、读写带宽要求选择存储载体,本发明中选择程序存储单元作为程序存储区。整个硬件设计与现有技术相比主要集中在以FPGA软核实现星载固态存储器的控制管理功能,不必设计专门的CPU硬件,软核在功能上实现对CPU的完全替代,主要实现指令解析、坏块管理、地址管理等功能,由于减少了CPU器件的使用,本发明中设计的星载固态存储器在更新效率、重量等方面与当前技术相比具有优势。
进一步地,缓存单元由DDR实现,5片DDR实现64+8的EDAC设计,能够有效的防止单粒子翻转错误。
附图说明
为了更清楚的说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明的星载存储器硬件架构图。
图2为本发明的软核系统示意图。
图3为本发明的首次上电流程图。
图4为本发明的软核减灾检测流程图。
图5为本发明的软核程序重构流程图。
图6为本发明的FPGA程序重构流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明实施例的描述中,需要说明的是,若出现术语“上”、“下”、“水平”、“内”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
此外,若出现术语“水平”,并不表示要求部件绝对水平,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。
在本发明实施例的描述中,还需要说明的是,除非另有明确的规定和限定,若出现术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
下面结合附图对本发明做进一步详细描述:
本发明提出的一种支持在轨程序重构的星载固态存储器,星载固态存储器是关键的星载设备,主要功能是完成在轨数据的记录和回放。本发明所设计的星载固态存储器在硬件上由控制核心、数据存储阵列、缓存单元、刷新加载电路、接口单元、程序存储单元六个模块组成,如图1所示,出于低成本化考虑控制核心需要选用具有软核功能的FPGA而不再单独选用CPU处理器,各模块功能如下:
控制核心:控制核心是本发明星载固态存储器的关键单元,实现存储阵列的控制、解析上位机指令、坏块管理、磨损均衡以及地址管理,在本发明中控制核心为具备Microblaze软核的SRAM型FPGA,控制核心由软核和逻辑单元两部分组成软核作为处理器通过AXI总线与FPGA逻辑部分交互对阵列控制器进行控制实现文件管理、NAND FLASH坏块管理、磨损均衡管理等功能。考虑到宇航应用辐照要求,本发明中的Microblaze软核进行三模设计。其中,逻辑单元包括记录进程缓存管理、回放进程缓存管理、数据调度控制和阵列控制器。记录过程中数据由接口单元进入控制核心中的逻辑单元,数据调度控制调用记录进程缓存管理将数据存储进缓存单元,完成缓存后记录进程缓存管理进行数据分拣、组合通过阵列控制器存储进入存储阵列单元;回放过程与之相反,阵列控制器从数据存储阵列中取出存储数据,数据调度控制通过回放进程缓存管理将数据放入缓存单元后经过数据分拣通过接口单元送至上位机。
缓存单元:本发明中的缓存单元采取抗辐照设计,由DDR实现,5片DDR实现64+8的EDAC设计,能够有效的防止单粒子翻转错误。缓存单元具备两部分功能一是基于存储载体NAND FLASH无法直接写入必须先执行擦除操作才能执行写入编程操作的特点,设计数据缓存单元保证在执行数据记录时数据不会丢失;二是作为软核处理器的内存,软核的应用程序运行在其中。
数据存储阵列:星载存储系统历经SRAM、SDRAM、NAND FLASH三个发展阶段,最终NAND FLASH因其存储密度高、成本低、非易失的特点成为星载存储系统最主要的存储载体。本发明中不同于商业SSD采用的高主频低位宽特点,存储阵列设计高位宽,保证NAND FLASH工作在较低的主频即可满足上位机对于星载固态存储存储器的带宽要求,避免了高主频下FPGA可能出现的时序违例等难题。存储阵列中NAND FLASH均为并行操作,同一时刻由控制核心产生对存储阵列所有NAND FLASH的指令序列。
加载刷新电路:针对SRAM型的FPGA抗单粒子翻转能力较差的问题,采用刷新加载电路定时对FPGA内部程序进行刷新,减少单粒子翻转的影响,FPGA加载刷新电路采用SelectMAP模式进行加载。
接口单元:接口单元包括控制接口与数据接口,是星载固态存储器与上位机通信管理单元。其中数据接口可以采用2711、LVDS以及GTH等接口主要负责数据传输,控制接口主要负责接收和传输星载固态存储器上位机的指令,实现上位机对星载固态存储器的控制管理,控制接口以低速的1553B、CAN、UART总线等为主。
程序存储单元:在本发明中程序存储单元根据作用、存储容量大小、读写带宽要求选择存储载体,本发明中选择程序存储单元作为程序存储区。
整个硬件设计与现有技术相比主要集中在以FPGA软核实现星载固态存储器的控制管理功能,不必设计专门的CPU硬件,软核在功能上实现对CPU的完全替代,主要实现指令解析、坏块管理、地址管理等功能,由于减少了CPU器件的使用,本发明中设计的星载固态存储器在成本、重量、尺寸等方面与当前技术相比具有优势。
考虑提高星载固态存储器在轨使用的灵活性和可靠性,同时可以为软件定义存储提供平台设计了一种支持部分程序重构的策略。星载固态存储器外部配置上位机与加载刷新电路通过CAN总线及UART交互,以Nor FLASH、程序存储单元作为程序存储区,选用DDR作为应用程序,示意图见图1。设计两个程序存储区,引导程序与FPGA比特流合并为配置程序保存在Nor FLASH中,应用程序存储在MRAM存储器中。
如图2所示,本发明中定义需要更新的FPGA配置比特流为FPGA.bit,在软核中进行在轨程序重构包括首次上电固化、软核加载检测、软核程序重构、FPGA程序重构四个部分。
第一部分:首次上电固化,如图3所示;
系统首次上电将FPGA.bit与引导程序合并而成的配置程序首先由上位机通过加载刷新电路固化到比特流存储区的Nor Flash中,完成程序重构的准备。
流程步骤:
1)、系统上电,上位机对加载刷新电路发送程序加载指令,将FPGA.bit加载至加载刷新电路,引导程序加载到软核中运行;
2)、检查程序存储单元中没有命令字,进入到等待重构流程;
3)、上位机发送重构指令,将应用程序更新至程序存储单元中;
4)、更新完成后上位机给引导程序发送预运行指令,引导程序引导加载应用程序到缓存单元中并执行;此时要求上位机发送重构进入指令和重构退出指令,确保应用程序运行过程中支持重构功能;
5)、应用程序接收到重构退出指令后,表明退出重构模式,回填命令字到程序存储单元中;
6)、系统进行重启,应用程序开始正常运行。
第二部分:软核加载检测,如图4所示;
首次上电要求上注程序完成上注后,检测软核是否正常加载。软核程序正常加载条件:引导程序已经加载到Norflash中,应用程序已经正常加载到程序存储单元中。
流程步骤:
1)、系统上电,引导程序正常加载运行,通过加载刷新电路的加载完成管脚判断是否正常加载;
2)、检测到程序存储单元中命令字存在,直接从程序存储单元中加载应用程序到缓存单元中执行。
第三部分:软核程序重构,如图5所示;
要软核程序重构流程,必须保证软核程序在正常运行中。在软核程序正常运行中,执行程序重构流程。
流程步骤:
1)、首先上位机发送重构进入查询应用程序系统状态;
2)、如果返回系统状态为空闲时,上位机发送重构启动指令后擦除程序存储单元中命令字后正常返回响应;
3)、这时系统需要重新上电,上位机向加载刷新电路发送加载指令系统重启;
4)、系统上电加载引导程序运行,检查命令字不存在,进入到重构流程;
5)、上位机发送重构指令,将新的应用程序更新至程序存储单元中;
6)、更新完成后上位机给引导程序发送预运行指令,引导程序引导加载应用程序到缓存单元中并执行;
7)、此时要求上位机发送重构进入指令和重构退出指令,确保应用程序运行过程中支持重构功能;
8)、应用程序接收到重构退出指令后,表明退出重构模式,回填命令字到程序缓存单元中;
9)、上位机向加载刷新电路发送加载指令系统重启,应用程序开始正常运行,至此完成重构过程。
第四部分:程序重构,如图6所示;
1)、开机上电,上位机向加载刷新电路发送加载指令;
2)、上位机通过UART总线控制加载刷新电路发送NorFlash擦除指令,对FPGA.bit执行擦除操作,回读状态变量判读擦除是否完成;
3)、上位机通过UART总线向加载刷新电路发送重构程序数据,执行NorFlash编程操作;
4)、编程完成后进行程序校验,上位机控制下电;
5)、上位机向加载刷新电路发送加载指令系统重启,重构完成。
程序重构的策略与当前技术相比,可针对软核与FPGA程序执行部分重构,也可执行全部重构,精准定位重构内容,尤其是在仅需更新软核程序时能够有效提高重构效率,通过重构程序的轻量化设计避免在轨星地链路通信的浪费。
控制核心选用JFM7VX690T36负责输入输出的高速数据接口和缓存管理;管理内部数据通道,把数据、地址、指令等信息按照存储器规定格式打成特定的数据包数据,实现对FLASH阵列的写操作、读操作和擦除操作,并向处理器反映阵列工作状态;管理内部记录、回放和边记边放的任务调度管理。
数据存储阵列的存储芯片采用SLC型NAND FLASH基片SM29F512G08SRM,产品共安装17片NAND FLASH,其中16片为工作芯片,1片为用来存储RS编码,对存入前16片FLASH的数据进行RS纠检错,16片组成9.6Tb存储空间。单个SM29F512G08SRM装机存储容量为848Gb,考虑纠检错编码效率后(168/182)有效存储容量782Gb,考虑初始坏快(1884/2012)后有效存储容量732Gb,整个存储阵列的容量约11.43Tb,工作容量为9.6Tb,后备容量为1.83Tb。存储阵列的工作容量与后备容量比例约为5.2:1,后备容量用于在轨坏块替换。
加载刷新电路采用JFMRS01RH,采用定时刷新技术对SRAM型主控FPGA轮询刷新,缓解SEU对FPGA的影响,提高空间环境的适应性。
数据缓存单元采用IS46TR16256BL-107MBLA3,采用4+1的EDAC校验方式,并行位宽64bit,时钟速率最大支持933MHz,设计时钟速率为533MHz,按80%降额使用,接口速率可达27.2Gpbs。
接口单元采用CAN总线与UART总线,422总线接口电路采用58所集成电路芯片JSR26CLV31AF和JSR26CLV32F。
上位机选用LCSoC3233,内部集成UART;NOR Flash选用N25Q512A11G1240E;MRAM选用LSMR64M08VS4E1。
本发明提出的一种支持在轨程序重构的星载固态存储器,本发明中的程序重构技术可以对软核程序与FPGA配置比特流分别进行更新,能够实现星载固态存储器程序的部分或全部重构,提高了程序重构的准确度与效率,为星载固态存储器在轨故障处理与功能重构提供了基础,同时为软件定义星载固态存储器提供技术支撑。经过地面测试及在轨飞行验证,效果主要体现在三方面一是星载固态存储器由于减少了CPU器件的使用,成本减少5-10万,成本优势相较同类产品巨大;二是采用了程序重构设计,保证在轨使用的可靠性和灵活性;三是支持程序的部分和全部重构,提高了程序重构的准确度与效率,降低星地通信带宽的浪费。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种支持在轨程序重构的星载固态存储器,其特征在于,包括控制核心、数据存储阵列、缓存单元、刷新加载电路、程序存储单元和接口单元;控制核心包括软核和逻辑单元;所述控制核心、接口单元和刷新加载电路均与上位机交互;
所述软核与所述逻辑单元交互,用于星载固态存储器擦除、记录、回放时序启动与组合;所述缓存单元与所述逻辑单元交互,用于实现记录、回放数据缓存、分拣及组合;所述数据存储阵列与所述控制核心交互,用于实现对存储阵列的状态检测、故障管理、冗余策略管理执行及时序控制;所述刷新加载电路与所述控制核心交互,用于控制核心程序加载刷新;所述接口单元均与所述控制核心交互,用于实现星载固态存储器数据交互;所述程序存储单元与所述控制核心交互,用于加载命令字检测、程序分区加载、参数存储。
2.根据权利要求1所述的支持在轨程序重构的星载固态存储器,其特征在于,所述逻辑单元包括记录进程缓存管理、回放进程缓存管理、数据调度控制和阵列控制器;
记录过程中数据由接口单元进入控制核心中的逻辑单元,数据调度控制调用记录进程缓存管理将数据存储进缓存单元,完成缓存后记录进程缓存管理进行数据分拣、组合通过阵列控制器存储进入存储阵列单元;
回放过程与之相反,阵列控制器从数据存储阵列中取出存储数据,数据调度控制通过回放进程缓存管理将数据放入缓存单元后经过数据分拣通过接口单元送至上位机。
3.根据权利要求1所述的支持在轨程序重构的星载固态存储器,其特征在于,所述刷新加载电路上连接有NOR FLASH。
4.根据权利要求1所述的支持在轨程序重构的星载固态存储器,其特征在于,软核通过AXI总线与逻辑单元交互;所述控制核心与上位机通过CAN总线交互;所述刷新加载电路与上位机通过RS422交互。
5.根据权利要求1所述的支持在轨程序重构的星载固态存储器,其特征在于,在软核中进行在轨程序重构的步骤如下:上电固化、软核加载检测、软核程序重构和FPGA程序重构。
6.根据权利要求5所述的支持在轨程序重构的星载固态存储器,其特征在于,上电固化步骤如下:
1)、上位机对加载刷新电路发送程序加载指令,将FPGA.bit加载至加载刷新电路,引导程序加载到软核中运行;
2)、软核检查程序存储单元中命令字,进入等待重构流程;
3)、上位机对软核发送重构指令,将应用程序更新至程序存储单元中;
4)、更新完成后上位机给软核的引导程序发送预运行指令,引导程序引导加载应用程序到缓存单元中并执行,软核对上位机反馈进入预运行状态,上位机对软核发送重构退出指令;
5)、软核的应用程序接收到重构退出指令后,回填命令字到程序存储单元中;
6)、上位机向加载刷新电路发送加载指令系统重启,应用程序开始正常运行。
7.根据权利要求5所述的支持在轨程序重构的星载固态存储器,其特征在于,软核加载检测步骤如下:
1)、引导程序正常加载运行,通过加载刷新电路的加载完成管脚判断是否正常加载;
2)、检测到程序存储单元中命令字存在,直接从程序存储单元中加载应用程序到缓存单元中执行。
8.根据权利要求5所述的支持在轨程序重构的星载固态存储器,其特征在于,软核程序重构步骤如下:
1)上位机发送重构进入查询应用程序系统状态;系统状态为空闲时,上位机发送重构启动指令后擦除程序存储单元中命令字后正常返回响应,这时系统需要重新上电;
2)系统上电加载引导程序运行,检查命令字不存在,进入到重构流程;
3)、上位机发送重构指令,将新的应用程序更新至程序存储单元中;
4)、更新完成后上位机给引导程序发送预运行指令,引导程序引导加载应用程序到缓存单元中并执行;
5)、上位机发送重构进入指令和重构退出指令;
6)、应用程序接收到重构退出指令后,表明退出重构模式,回填命令字到程序存储单元中;
7)、上位机向加载刷新电路发送加载指令系统重启,应用程序开始正常运行,完成重构过程。
9.根据权利要求5所述的支持在轨程序重构的星载固态存储器,其特征在于,程序重构步骤如下:
1)、上位机通过UART总线控制加载刷新器发送NorFlash擦除指令,对FPGA.bit执行擦除操作,回读状态变量判读擦除是否完成;
2)、上位机通过UART总线向加载刷新电路发送重构程序数据,执行NorFlash编程操作;
3)、编程完成后上位机向加载刷新电路发送程序校验指令进行程序校验,执行NorFlash程序校验后,加载刷新电路将校验结果反馈给上位机,上位机控制下电;
4)、上位机向加载刷新电路发送加载指令系统重启,重构完成。
10.根据权利要求1所述的支持在轨程序重构的星载固态存储器,其特征在于,缓存单元由五个DDR组成。
CN202311723156.8A 2023-12-14 2023-12-14 一种支持在轨程序重构的星载固态存储器 Pending CN117666965A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311723156.8A CN117666965A (zh) 2023-12-14 2023-12-14 一种支持在轨程序重构的星载固态存储器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311723156.8A CN117666965A (zh) 2023-12-14 2023-12-14 一种支持在轨程序重构的星载固态存储器

Publications (1)

Publication Number Publication Date
CN117666965A true CN117666965A (zh) 2024-03-08

Family

ID=90078736

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311723156.8A Pending CN117666965A (zh) 2023-12-14 2023-12-14 一种支持在轨程序重构的星载固态存储器

Country Status (1)

Country Link
CN (1) CN117666965A (zh)

Similar Documents

Publication Publication Date Title
CN100570572C (zh) 微小卫星星载计算机数据存储用的差错检测和纠错系统
US8510598B2 (en) Buffer management method and apparatus for power reduction during flush operation
US8862808B2 (en) Control apparatus and control method
JP2019527424A (ja) Ddrメモリエラーリカバリ
CN111176908B (zh) 一种基于三模冗余的程序在轨加载刷新方法
CN110555237B (zh) 一种fpga在轨动态可重构方法
CN112667445B (zh) 封装后的内存修复方法及装置、存储介质、电子设备
CN110874245B (zh) 一种微小卫星星载计算机及其可重构实现方法
CN111625286B (zh) 一种星载dsp程序外部引导加载方法及加载系统
CN109491707A (zh) 一种dsp程序在轨重构和维护方法
CN102073600A (zh) 数据备份方法、闪存控制器及闪存储存系统
CN114860650A (zh) 一种多片sram型fpga在轨配置管理装置
CN101593218A (zh) 芯片维护方法
CN117666965A (zh) 一种支持在轨程序重构的星载固态存储器
CN113238985A (zh) Fpga在轨重构控制系统及方法
CN116302635A (zh) 面向商业卫星领域的zynq在轨加载重构方法及系统
CN101539785A (zh) 集成闪存存储单元的主板
US20140244900A1 (en) Non-volatile memory based system ram
CN109783266B (zh) 一种面向空间计算机引导区的多模冗余与数据维护系统
CN117453279B (zh) 一种适用于太空强辐射环境下的星载设备硬件架构
CN117453462B (zh) 一种星载设备软件可靠重构和加载运行方法
CN109189719B (zh) 一种片内容错存储的复用结构及方法
CN111176732A (zh) 一种基于mram实现的软硬件冗余安全启动与维护方法
US20240094920A1 (en) Exception Handling Using Security Subsystem in Storage Device
CN113687871B (zh) 一种星载微处理器启动防死锁方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination