CN111309668A - 差异上注免擦写的fpga在轨重构实现方法 - Google Patents
差异上注免擦写的fpga在轨重构实现方法 Download PDFInfo
- Publication number
- CN111309668A CN111309668A CN202010076713.1A CN202010076713A CN111309668A CN 111309668 A CN111309668 A CN 111309668A CN 202010076713 A CN202010076713 A CN 202010076713A CN 111309668 A CN111309668 A CN 111309668A
- Authority
- CN
- China
- Prior art keywords
- fpga
- code
- difference
- configuration
- track
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000002347 injection Methods 0.000 claims abstract description 11
- 239000007924 injection Substances 0.000 claims abstract description 11
- 238000012545 processing Methods 0.000 claims abstract description 8
- 238000004891 communication Methods 0.000 claims abstract description 7
- 230000002265 prevention Effects 0.000 abstract description 2
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
Abstract
本公开提供一种差异上注免擦写的FPGA在轨重构实现方法,包括:步骤S1:在地面将新配码与原配码进行异或处理,生成差异配码;步骤S2:将步骤S1所生成的差异配码通过地轨通信传输到星载单机;步骤S3:将差异配码存储到星载FPGA配置存储器中;以及步骤S4:通过存储控制器对FPGA进行刷新配置,完成差异上注免擦写的FPGA在轨重构。可在对FPGA进行配置的过程中,根据差异配码动态修改读出的配码数据,使得输出给FPGA的配码为新配码,避免了对存储阵列的擦写操作,极大的节约了在轨重构的时间。
Description
技术领域
本公开涉及卫星数据传输与处理技术领域,尤其涉及一种差异上注免擦写的FPGA在轨重构实现方法。
背景技术
目前,随着对卫星技术的不断发展、用户技术指标的不断提高以及市场竞争的日益激烈,功能度集成和轻小型化已经成为星载电子设备的一个主流趋势。采用小型化技术能够使星载电子设备体积减小、重量减轻、功耗降低,提高航天器承载有效载荷的能力以及功效比。采用高功能集成的小型化器件,可以减小印制板的尺寸,减少焊盘数量。FPGA是星载数字电路小型化重要的实现方式,但在现有的星载FPGA应用***中,当卫星装配完成,卫星发射之后,对FPGA进行重构变的十分困难,主要瓶颈在于FPGA配码数据量太大,而在轨信号传输的速度很慢,完成一次完整的FPGA配码的传输对于有些星载单机,理论上需要进行上百次在轨任务,在实际操作中缺乏可行性。
为了解决上述问题,目前提出的解决办法有将原始数据进行压缩,如采用零游程算法等,可以将数据量缩小为原来的1/5-1/3,但是仍然需要在轨对存储器芯片进行整片擦除和重新写入的操作。
公开内容
(一)要解决的技术问题
基于上述问题,本公开提供了一种差异上注免擦写的FPGA在轨重构实现方法,以缓解现有技术中FPGA配码数据量太大,在轨信号传输的速度很慢等技术问题。
(二)技术方案
本公开提供一种差异上注免擦写的FPGA在轨重构实现方法,包括:
步骤S1:在地面将新配码与原配码进行异或处理,生成差异配码;
步骤S2:将步骤S1所生成的差异配码通过地轨通信传输到星载单机;
步骤S3:将差异配码存储到星载FPGA配置存储器中;以及
步骤S4:通过存储控制器对FPGA进行刷新配置,完成差异上注免擦写的FPGA在轨重构。
在本公开实施例中,所述原配码为存储在星载FPGA配置存储器中的配码,即要替换的配码。
在本公开实施例中,所述原配码还包括存储在其他位置的备份配码。
在本公开实施例中,所述差异配码为异或结果不为0的字节记录。
在本公开实施例中,所述差异配码格式为:地址加异或结果。
在本公开实施例中,步骤S3中,将差异配码通过地轨通信传输到星载FPGA配置存储器中的差异码存储区。
在本公开实施例中,存储到差异码存储区的方式为烧写到存储阵列中,或是保存到缓存区。
在本公开实施例中,保存到缓存区的差异配码在掉电后丢失。
在本公开实施例中,根据权利要求1所述的差异上注免擦写的FPGA在轨重构实现方法,步骤S4,包括:
子步骤S41:存储控制器会同时读取星载FPGA配置存储器中原配码存储区的原配码和差异配码存储区的差异配码;
子步骤S42:读到与差异配码中地址相同的字节时,会根据异或结果对该字节进行回读解码,得到新配码;以及
子步骤S43:将新配码通过配置接口传输给FPGA,完成对FPGA的重新配置。
(三)有益效果
从上述技术方案可以看出,本公开差异上注免擦写的FPGA在轨重构实现方法至少具有以下有益效果其中之一或其中一部分:
(1)不需要修改原配码,节约了在轨对存储阵列进行擦除和写入过程所需的时间;
(2)有效的避免了对存储器的擦写操作,极大的提高了***的稳定性。
附图说明
图1为本公开实施例差异上注免擦写的FPGA在轨重构实现方法的流程示意图。
图2为本公开实施例差异上注免擦写的FPGA在轨重构实现方法的重构通路示意图。
具体实施方式
本公开提供了一种差异上注免擦写的FPGA在轨重构实现方法,其采用差异上注的方式,将在轨传输的配码数据缩小为原来的0.3%-1.8%。本公开的回读解码方式可在对FPGA进行配置的过程中,根据差异配码动态修改读出的配码数据,使得输出给FPGA的配码为新配码,避免了对存储阵列的擦写操作,极大的节约了在轨重构的时间。
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
在本公开实施例中,提供一种差异上注免擦写的FPGA在轨重构实现方法,结合图1至图2所示,所述差异上注免擦写的FPGA在轨重构实现方法,包括:
步骤S1:在地面将新配码与原配码进行异或处理,生成差异配码;
在本公开实施例中,原配码为存储在星载FPGA配置存储器中的配码,即是要替换的配码,也可以是与替换配码地址不同的,存储在其他位置的备份配码。该方法主要是针对原配码和新配码中在数据量上完全相同,大部分数据相同,只有少部分字节数据有差别,通过异或处理,将异或结果不为0的byte记录,作为差异配码传给在轨卫星。如下表1所示,即为通过将原配码和新配码进行异或处理得到异或结果的方法原理:
地址信息 | 00 | 01 | 02 | 03 | 04 | 05 |
原配码 | 00 | 32 | 02 | 31 | 40 | 20 |
新配码 | 00 | 31 | 02 | 30 | 40 | 20 |
异或结果 | 00 | <u>03</u> | 00 | <u>01</u> | 00 | 00 |
表格1
由于所述差异配码格式为:地址+异或结果。则上述异或处理后得到差异配码如下表2所示:
表格2
地址是指差异字节在存储器中所对应的完整地址或部分地址,该地址只需要在解码时能够正确映射到需要更新的配码位置即可。
步骤S2:将步骤S1所生成的差异配码通过地轨通信传输到星载单机;
步骤S3:将差异配码存储到星载FPGA配置存储器中;
地轨传输阶段是将差异配码通过地轨通信传输到星载FPGA配置存储器中的差异码存储区;可以是烧写到存储阵列中,也可以是保存到缓存区。不同的是,保存到缓存区的差异配码在掉电后丢失。
数据保存过程是指如果将差异配码存到存储阵列中,则需要对存储阵列进行擦写操作。如果只是将差异的数据保存到缓存区则对存储阵列的擦写过程可以省略。
步骤S4:通过存储控制器对FPGA进行刷新配置,完成差异上注免擦写的FPGA在轨重构。步骤S4,包括:
子步骤S41:存储控制器会同时读取星载FPGA配置存储器中原配码存储区的原配码和差异码存储区的差异配码;
子步骤S42:读到与差异配码中地址相同的字节时,会根据异或结果对该字节进行回读解码,得到新配码;
在本公开实施例中,由下表3中的地址信息、原配码、异或结果解码(将异或结果为1的bit对应的原配码取反)可得到新配码:
地址信息 | 00 | 01 | 02 | 03 | 04 | 05 |
原配码 | 00 | 32 | 02 | 31 | 40 | 20 |
异或结果 | 00 | 03 | 00 | 01 | 00 | 00 |
新配码 | 00 | 31 | 02 | 30 | 40 | 20 |
表格3
子步骤S43:将新配码通过配置接口传输给FPGA,完成对FPGA的重新配置。
至此,已经结合附图对本公开实施例进行了详细描述。需要说明的是,在附图或说明书正文中,未绘示或描述的实现方式,均为所属技术领域中普通技术人员所知的形式,并未进行详细说明。此外,上述对各元件和方法的定义并不仅限于实施例中提到的各种具体结构、形状或方式,本领域普通技术人员可对其进行简单地更改或替换。
依据以上描述,本领域技术人员应当对本公开差异上注免擦写的FPGA在轨重构实现方法有了清楚的认识。
综上所述,本公开提供了一种差异上注免擦写的FPGA在轨重构实现方法,是在FPGA配置过程中通过差异配码动态刷新输出配码,不需要修改原配码,节约了在轨对存储阵列进行擦除和写入过程。对存储阵列的擦除和写入往往需要花费大量的时间,而星载设备的开机时间或工作时间有限。除此之外,芯片的擦写过程往往伴随着大电压大电流,考虑太空的不稳定环境,芯长时间擦写可能会导致芯片损伤或发生***故障。该方法有效的避免了对星载FPGA配置存储器的擦写操作,极大的提高了***的稳定性。
还需要说明的是,实施例中提到的方向用语,例如“上”、“下”、“前”、“后”、“左”、“右”等,仅是参考附图的方向,并非用来限制本公开的保护范围。贯穿附图,相同的元素由相同或相近的附图标记来表示。在可能导致对本公开的理解造成混淆时,将省略常规结构或构造。
并且图中各部件的形状和尺寸不反映真实大小和比例,而仅示意本公开实施例的内容。另外,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。
除非有所知名为相反之意,本说明书及所附权利要求中的数值参数是近似值,能够根据通过本公开的内容所得的所需特性改变。具体而言,所有使用于说明书及权利要求中表示组成的含量、反应条件等等的数字,应理解为在所有情况中是受到「约」的用语所修饰。一般情况下,其表达的含义是指包含由特定数量在一些实施例中±10%的变化、在一些实施例中±5%的变化、在一些实施例中±1%的变化、在一些实施例中±0.5%的变化。
再者,单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。
说明书与权利要求中所使用的序数例如“第一”、“第二”、“第三”等的用词,以修饰相应的元件,其本身并不意味着该元件有任何的序数,也不代表某一元件与另一元件的顺序、或是制造方法上的顺序,该些序数的使用仅用来使具有某命名的一元件得以和另一具有相同命名的元件能做出清楚区分。
此外,除非特别描述或必须依序发生的步骤,上述步骤的顺序并无限制于以上所列,且可根据所需设计而变化或重新安排。并且上述实施例可基于设计及可靠度的考虑,彼此混合搭配使用或与其他实施例混合搭配使用,即不同实施例中的技术特征可以自由组合形成更多的实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。并且,在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。
类似地,应当理解,为了精简本公开并帮助理解各个公开方面中的一个或多个,在上面对本公开的示例性实施例的描述中,本公开的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本公开要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,公开方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本公开的单独实施例。
以上所述的具体实施例,对本公开的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本公开的具体实施例而已,并不用于限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (9)
1.一种差异上注免擦写的FPGA在轨重构实现方法,包括:
步骤S1:在地面将新配码与原配码进行异或处理,生成差异配码;
步骤S2:将步骤S1所生成的差异配码通过地轨通信传输到星载单机;
步骤S3:将差异配码存储到星载FPGA配置存储器中;以及
步骤S4:通过存储控制器对FPGA进行刷新配置,完成差异上注免擦写的FPGA在轨重构。
2.根据权利要求1所述的差异上注免擦写的FPGA在轨重构实现方法,所述原配码为存储在星载FPGA配置存储器中的配码,即要替换的配码。
3.根据权利要求1所述的差异上注免擦写的FPGA在轨重构实现方法,所述原配码还包括存储在其他位置的备份配码。
4.根据权利要求1所述的差异上注免擦写的FPGA在轨重构实现方法,所述差异配码为异或结果不为0的字节记录。
5.根据权利要求1所述的差异上注免擦写的FPGA在轨重构实现方法,所述差异配码格式为:地址加异或结果。
6.根据权利要求1所述的差异上注免擦写的FPGA在轨重构实现方法,步骤S3中,将差异配码通过地轨通信传输到星载FPGA配置存储器中的差异码存储区。
7.根据权利要求5所述的差异上注免擦写的FPGA在轨重构实现方法,存储到差异码存储区的方式为烧写到存储阵列中,或是保存到缓存区。
8.根据权利要求6所述的差异上注免擦写的FPGA在轨重构实现方法,保存到缓存区的差异配码在掉电后丢失。
9.根据权利要求1所述的差异上注免擦写的FPGA在轨重构实现方法,步骤S4,包括:
子步骤S41:存储控制器会同时读取星载FPGA配置存储器中原配码存储区的原配码和差异配码存储区的差异配码;
子步骤S42:读到与差异配码中地址相同的字节时,会根据异或结果对该字节进行回读解码,得到新配码;以及
子步骤S43:将新配码通过配置接口传输给FPGA,完成对FPGA的重新配置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010076713.1A CN111309668A (zh) | 2020-01-23 | 2020-01-23 | 差异上注免擦写的fpga在轨重构实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010076713.1A CN111309668A (zh) | 2020-01-23 | 2020-01-23 | 差异上注免擦写的fpga在轨重构实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111309668A true CN111309668A (zh) | 2020-06-19 |
Family
ID=71158142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010076713.1A Pending CN111309668A (zh) | 2020-01-23 | 2020-01-23 | 差异上注免擦写的fpga在轨重构实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111309668A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113271139A (zh) * | 2021-04-30 | 2021-08-17 | 航天恒星科技有限公司 | 一种星载fpga软件在轨重构方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799502A (zh) * | 2012-06-28 | 2012-11-28 | 航天恒星科技有限公司 | 一种星载嵌入式软件在轨维护方法 |
CN105577262A (zh) * | 2015-12-16 | 2016-05-11 | 西安空间无线电技术研究所 | 一种基于星间链路收发设备的星载fpga重构***及重构方法 |
CN106502934A (zh) * | 2016-11-09 | 2017-03-15 | 上海微小卫星工程中心 | 高速一体化星载数据管理*** |
CN106843191A (zh) * | 2016-12-18 | 2017-06-13 | 航天恒星科技有限公司 | Fpga在轨维护方法及装置 |
CN107957972A (zh) * | 2017-10-30 | 2018-04-24 | 西安空间无线电技术研究所 | 一种基于fpga的在轨重构***及方法 |
WO2019000362A1 (en) * | 2017-06-30 | 2019-01-03 | Intel Corporation | QUICK CONFIGURATION TECHNOLOGIES OF USER-PROGRAMMED PRE-BROWSED NETWORKS |
WO2019009115A1 (ja) * | 2017-07-04 | 2019-01-10 | 日立オートモティブシステムズ株式会社 | 電子制御システム |
-
2020
- 2020-01-23 CN CN202010076713.1A patent/CN111309668A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799502A (zh) * | 2012-06-28 | 2012-11-28 | 航天恒星科技有限公司 | 一种星载嵌入式软件在轨维护方法 |
CN105577262A (zh) * | 2015-12-16 | 2016-05-11 | 西安空间无线电技术研究所 | 一种基于星间链路收发设备的星载fpga重构***及重构方法 |
CN106502934A (zh) * | 2016-11-09 | 2017-03-15 | 上海微小卫星工程中心 | 高速一体化星载数据管理*** |
CN106843191A (zh) * | 2016-12-18 | 2017-06-13 | 航天恒星科技有限公司 | Fpga在轨维护方法及装置 |
WO2019000362A1 (en) * | 2017-06-30 | 2019-01-03 | Intel Corporation | QUICK CONFIGURATION TECHNOLOGIES OF USER-PROGRAMMED PRE-BROWSED NETWORKS |
WO2019009115A1 (ja) * | 2017-07-04 | 2019-01-10 | 日立オートモティブシステムズ株式会社 | 電子制御システム |
CN107957972A (zh) * | 2017-10-30 | 2018-04-24 | 西安空间无线电技术研究所 | 一种基于fpga的在轨重构***及方法 |
Non-Patent Citations (1)
Title |
---|
徐新民;乐莹;尚丽娜;: "FPGA动态部分重构的研究及位流信息重构的实现", 科技通报 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113271139A (zh) * | 2021-04-30 | 2021-08-17 | 航天恒星科技有限公司 | 一种星载fpga软件在轨重构方法 |
CN113271139B (zh) * | 2021-04-30 | 2022-07-29 | 航天恒星科技有限公司 | 一种星载fpga软件在轨重构方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10025596B2 (en) | Memory system for portable telephone | |
US7734985B2 (en) | Systems, methods, and apparatuses for using the same memory type to support an error check mode and a non-error check mode | |
US6279133B1 (en) | Method and apparatus for significantly improving the reliability of multilevel memory architecture | |
US8028119B2 (en) | Memory module, cache system and address conversion method | |
US20070300130A1 (en) | Method of Error Correction Coding for Multiple-Sector Pages in Flash Memory Devices | |
CN102804276B (zh) | 使用新兴非易失性存储器元件及快闪存储器 | |
US20070271494A1 (en) | Error Correction Coding for Multiple-Sector Pages in Flash Memory Devices | |
CN100399276C (zh) | 存储在非易失可重新编程半导体存储器中的文件数据的访问 | |
US20020184592A1 (en) | Semiconductor memory device | |
US20060149890A1 (en) | On-chip data grouping and alignment | |
US9336081B2 (en) | Data writing and reading method, and memory controller and memory storage apparatus using the same for improving reliability of data access | |
US20120117311A1 (en) | Memory System And Method Of Operating A Memory System | |
CN112181304B (zh) | 一种星载NAND Flash存储管理*** | |
CN107562653A (zh) | 存储器***及其操作方法 | |
US9244836B2 (en) | Flash memory organization for reduced failure rate | |
CN111309668A (zh) | 差异上注免擦写的fpga在轨重构实现方法 | |
CN113223601A (zh) | 一次写入型存储器码的纠错码管理的电路、***和方法 | |
WO2007137013A2 (en) | Error correction coding for multiple-sector pages in flash memory devices | |
US10671323B2 (en) | Memory system with shared buffer architecture for multiple decoders and method of operating such memory system | |
KR20030051393A (ko) | 데이터 저장 장치 | |
CN111274199A (zh) | 差异上注定向修改的fpga在轨重构实现方法 | |
CN114442960A (zh) | 一种无惧异常掉电并增加使用寿命的固态存储方案 | |
US20040172496A1 (en) | Double buffered flash programming | |
CN110174996A (zh) | 存储器***及该存储器***的操作方法 | |
JPS59104800A (ja) | 画像メモリのパリテイ・チエツク方式 |
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 |