CN114020663B - 一种机载总线数据记录装置 - Google Patents
一种机载总线数据记录装置 Download PDFInfo
- Publication number
- CN114020663B CN114020663B CN202111360088.4A CN202111360088A CN114020663B CN 114020663 B CN114020663 B CN 114020663B CN 202111360088 A CN202111360088 A CN 202111360088A CN 114020663 B CN114020663 B CN 114020663B
- Authority
- CN
- China
- Prior art keywords
- data
- cache
- block
- buffer
- logic
- 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.)
- Active
Links
- 238000003860 storage Methods 0.000 claims abstract description 119
- 238000007726 management method Methods 0.000 claims abstract description 105
- 238000013144 data compression Methods 0.000 claims abstract description 87
- 238000012545 processing Methods 0.000 claims abstract description 22
- 230000006870 function Effects 0.000 claims abstract description 21
- 239000000872 buffer Substances 0.000 claims description 160
- 230000005540 biological transmission Effects 0.000 claims description 36
- 238000005192 partition Methods 0.000 claims description 36
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 32
- 239000013307 optical fiber Substances 0.000 claims description 27
- 238000007906 compression Methods 0.000 claims description 22
- 230000006835 compression Effects 0.000 claims description 19
- 238000013403 standard screening design Methods 0.000 claims description 8
- 239000000284 extract Substances 0.000 claims description 3
- 238000013500 data storage Methods 0.000 abstract description 8
- 239000000835 fiber Substances 0.000 abstract description 2
- 238000000034 method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 230000003321 amplification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1684—Details of memory controller using multiple buses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明公开了一种机载总线数据记录装置,包括在主处理模块、存储模块、存储器PL_DDR_1、存储器PL_DDR_2和非易失存储器PL_NVRAM,主处理模块,采用SoPC芯片,SoPC芯片的PL端连接存储器PL_DDR_1、存储器PL_DDR_2和非易失存储器PL_NVRAM;同时PL端通过PCIe总线与外部PCIe桥片连接,外部PCIe桥片与存储模块连接;PL端上运行的逻辑包括缓存管理逻辑、光纤接口逻辑、数据压缩逻辑和存储阵列管理逻辑。该装置通过逻辑方式实现数据接收、压缩和存储阵列功能,极大提高了数据存储的效率。
Description
技术领域
本发明涉及数据传输与记录领域,涉及一种机载总线数据记录装置。
背景技术
机载总线数据用于机载网络上各设备间数据通信,包括周期性的设备监控、健康管理、BIT等数据。记录机载总线数据主要用于设备的状态监控、故障定位及飞行任务后的能效分析等目的。随着机载设备信息化和网络化的发展,机载总线数据总量和传输带宽显著增加,同时伴随瞬时传输速率峰值高的特点。传统的总线记录装置采用嵌入式处理器挂载SATA固态电子盘架构,由处理器完成总线数据记录,在功耗、体积和扩展性上存在明显劣势,且性能上已不能满足机载总线记录需求;而采用FPGA方案的记录器,实现了较高速率的数据记录能力,但是未考虑机载总线数据的特点和功用扩展性,导致复用性较差并需要配备更大容量电子盘,增加了产品成本。此外,在数据下传应用场景下,传统的总线记录装置缺乏快速检索能力,且数据下传链路带宽占用率高,影响数据下传效率。
发明内容
本发明的发明目的在于提供了一种高效机载总线数据记录装置及方法,能够实现高性能机载总线数据记录和灵活配置扩展能力。该发明可极大提高总线数据记录性能,尤其对突发传输产生的瞬时峰值数据具有较好的处理能力;降低存储介质如电子盘的实际数据写入带宽,在保证数据无损的前提下提高存储空间可用性;极大提升了数据检索与下传效率,降低下传数据链路通道占用带宽;根据需求选择功能配置,适用不同场景,提易用性和扩展性。
本发明的发明目的通过以下技术方案实现:
一种机载总线数据记录装置,该装置包括在主处理模块、存储模块、存储器PL_DDR_1、存储器PL_DDR_2和非易失存储器PL_NVRAM;
所述主处理模块,采用SoPC芯片,SoPC芯片的PL端连接存储器PL_DDR_1、存储器PL_DDR_2和非易失存储器PL_NVRAM;同时PL端通过PCIe总线与外部PCIe桥片连接,外部PCIe桥片与存储模块连接;PL端上运行的逻辑包括缓存管理逻辑、光纤接口逻辑、数据压缩逻辑和存储阵列管理逻辑;
在数据记录时:
缓存管理逻辑管理数据缓存区各缓存数据,数据缓存区包括数据收发缓存、数据压缩缓存和PL非易失缓存,数据收发缓存使用存储器PL_DDR_1,数据压缩缓存使用存储器PL_DDR_2,PL非易失缓存使用非易失存储器PL_NVRAM;缓存管理逻辑依次检查数据收发缓存中各接收缓存块的水位线,当接收缓存块中接收缓存条带数目超过预设水位线或最大时间时,由缓存管理逻辑启动DMA传输,将数据缓存块中有效数据传输至数据压缩逻辑,触发数据压缩;
缓存管理逻辑依次检查数据压缩缓存中各压缩缓存块的水位线,当数据压缩缓存块中数据水位线超过预先设定阈值时,由缓存管理逻辑触发存储模块写入操作;
光纤接口逻辑按照配置定义的机载总线数据接收数据,并对数据进行解析、分类;分类后的数据在头部位置插入时标信息、帧编号和长度信息,处理后的数据被缓存至数据缓存区中对应数据类型的数据接收缓存块中;其中,数据接收缓存块由若干接收缓存条带组成,每一个条带缓存一帧接收数据;
数据压缩逻辑在缓存管理逻辑触发接收数据缓存块DMA传输时,接收数据收发缓存中分类区域的数据接收缓存块并进行压缩,压缩完成后的数据连续缓存至对应分类的数据压缩缓存块中;
存储阵列管理逻辑在缓存管理逻辑触发存储模块写入操作时,并将数据压缩缓存中的压缩分类数据按顺序写入至对应分类的存储模块的存储空间。
优选地,数据压缩逻辑遵循RFC-1952标准,使用的数据压缩处理带宽高于光纤接口数据峰值带宽,不同接收数据缓存块共用一个数据压缩逻辑,采用分时复用方式执行压缩过程。
优选地,缓存管理逻辑按照PS_NVRAM中配置的接收缓存块的调度方式依次检查各接收缓存块的水位线,直至最后一个接收缓存块后重新开始,形成一条闭环;特殊的,对于会产生峰值数据的接收缓存块,接收缓存块的调度方式中增加该接收缓存块在闭环中的频次;
缓存管理逻辑按照PS_NVRAM中配置的压缩缓存块的调度方式依次检查各压缩缓存块的水位线,直至最后一个压缩缓存块后重新开始,形成一条闭环。
优选地,存储模块由数个NVMe SSD组成存储阵列,对上呈现为一个大空间的逻辑硬盘;该逻辑硬盘按照参数配置被划分为多个分区,每个分区对应一种类型数据,一个分区内包含若干个文件数据块,每个文件数据块大小为与压缩缓存块中水位线保持一致,并为NVMe SSD逻辑块大小的整数倍。
优选地,数据收发缓存是由若干个接收数据缓存块和一个数据发送缓存块组成,每个接收缓存块由若干个接收缓存条带构成,每个接收缓存条带可存放该类型数据一帧数据,包括时标、帧号和长度信息;光纤接口逻辑将接收、解析、处理后的数据存放至对应的缓存条带;
数据压缩缓存由若干个压缩缓存块组成,压缩缓存块数目与接收缓存块一致,每个压缩缓块大小根据PS_NVRAM中的数据压缩缓存参数配置。
优选地,机载总线数据记录装置还包含非易失存储器PS_NVRAM;
SoPC芯片PS端连接外部非易失存储器PS_NVRAM,对PL端的光纤接口逻辑、缓存管理逻辑、数据压缩逻辑、存储阵列管理逻辑以及数据收发缓存区、数据压缩缓存区和存储模块的配置是由主处理模块的PS端根据PS_NVRAM中的逻辑功能及参数配置信息来实现,详细配置如下:
为光纤接口逻辑配置机载总线数据传输定义、数据类型N、单帧长度L和传输速率R;
数据接收缓存中接收缓存块和数据压缩缓存中压缩缓存块的个数均为N;各接收缓存块中接收缓存条带大小为L+“时标信息、帧编号和帧长度信息”的长度,接收缓存条带的数目根据PL_DDR1空间大小及数据类型调整,或配置为默认值;压缩缓存块大小根据PL_DDR2空间大小及数据类型调整,或配置为默认值;
配置存储阵列管理逻辑的功能模式,JBOD或RAID 0模式;
配置存储模块中的存储空间分区数目为N+1,根据不同类型数据的传输速率、单帧长度、压缩率和单次最大传输时长,计算存储空间各分区大小,并保留一定余量;按照各分区空间大小,划分存储模块逻辑空间,设置各逻辑空间起始和截止块地址;
配置接收缓存块的调度方式和水位线,或默认按照接收缓存块编号依次调度;每个接收缓存块的水位线单独设置,或配置为默认值;配置数据压缩缓存块的水位线,或配置为默认值;配置接收缓存块和压缩缓存块刷新最大时间,或配置为默认值;
完成配置的数据,按照特定格式生成配置文件,由地面站或其他设备加载至记录装置并贮存于PS_NVRAM中,并同步更新PS_NVRAM中配置文件更新标识信息;
机载总线数据记录装置上电时,由PS端ARM内核加载PS_NVRAM中的逻辑功能及参数配置信息,并根据此逻辑功能及参数配置信息初始化逻辑功能;首次配置时,配置文件更新标识为真,PS端ARM内核将更新全部上述配置信息,同步更新PL_NVRAM中的数据块索引,并置配置文件更新标识为假;除首次配置或重新更新配置外,机载总线数据记录装置上电时仅配置除存储模块分区、逻辑块地址信息外的其他配置信息。
优选地,所述PS_NVRAM的逻辑功能及参数配置信息是由系统人员根据机载总线上的数据流类别、数据流大小、装置运行时间、数据压缩能力和存储阵列管理模式,预先计算机载总线上各数据需要的存储空间大小、数据收发缓存大小和数据压缩缓存大小,并根据该数据对存储模块空间、数据收发缓存区域空间、数据压缩缓存区域空间、缓存触发方式和存储阵列模式进行规划,生成相应的配置文件并烧录至装置PS端非易失存储介质PS_NVRAM中。
优选地,存储模块中还包括一个文件索引分区;
缓存管理逻辑根据存储模块空间分配信息提取各分配空间起始块地址、终止块地址数据并存储至PL端PL_NVRAM中;
缓存管理逻辑在启动DMA传输触发数据压缩时,缓存管理逻辑记录该数据块的起始和截止时间;
缓存管理逻辑在触发存储模块写入操作时,缓存管理逻辑根据压缩时记录的数据块起始和截止时间,计算数据压缩缓存块中此次待写入存储模块的数据起始和截止时间,并更新位于PL_NVRAM中的文件索引信息;其中,文件索引信息的为当前数据块头地址、尾地址、覆盖标识F、该分区数据块范围以及各数据块起始时间、截止时间;
缓存管理逻辑每隔一段将PL_NVRAM中的文件索引信息写入存储模块的文件索引分区中,写入方式为覆盖写。
优选地,当存储模块的某分配空间被写满时,存储阵列管理逻辑将新数据重新从该分配空间头部写入,并由缓存管理逻辑更新PL_NVRAM中数据头地址、尾地址及循环写标识。
优选地,在数据检索和下传时,光纤接口逻辑接收到数据检索命令后转发至PS端由应用软件处理;应用软件解析检索命令,确认检索数据类型和时间段信息;应用软件扫描PL_NVRAM中对应类型数据的文件索引信息,找到文件索引信息对应时间的数据块信息;应用软件将数据块信息写入存储阵列管理逻辑特定寄存器,并触发读操作;存储管理阵列逻辑在当前操作完成后,立即进行数据读取,并将读取的数据存至数据收发缓存中的发送缓存块中;缓存管理逻辑监测到数据发送缓存块中有数据,触发光纤接口逻辑将发送缓存中数据发出。
本发明的有益效果在于:该装置通过逻辑方式实现数据接收、压缩和存储阵列功能,极大提高了数据存储的效率;同时结合机载总线数据特点,提出高效的循环数据存储方法,并在此存储方法的基础上,通过构建时间和块索引区的方式提升数据检索速度;总线数据压缩后能大幅降低存储空间最大容量和数据下传占用的链路带宽,提高存储空间和传输链路利用率;数据缓存区的管理促进数据高效运转,对分类数据存储具备良好的增强能力。该装置性能高,存储空间扩展性和利用率高,可配置性强,适用于多种机载总线数据记录场景。
附图说明
图1为本发明一种机载总线数据记录装置的框架示意图;
图2为本发明一种机载总线数据记录装置的数据记录流程图;
图3为接收缓存块缓存条格式及缓存块水位线示意图;
图4为存储模块数据存储逻辑地址示意图;
图5为数据索引区存储示意图。
具体实施方式
为使本发明实施的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1所示,本实施例所示的一种机载总线数据记录装置,该装置包括在主处理模块、存储模块、存储器PS_DDR、存储器PL_DDR_1、存储器PL_DDR_2、非易失存储器PS_NVRAM、非易失存储器PL_NVRAM。所述主处理模块,采用SoPC芯片(图1以FMQL芯片为例),其内部集成ARM内核处理核心(PS端)和可编程逻辑FPGA(PL端),PS端连接外部存储器PS_DDR和非易失存储器PS_NVRAM,PL端连接双通道PL_DDR(PL_DDR_1/PL_DDR_2)和非易失存储器PL_NVRAM;同时PL端通过PCIe总线与外部PCIe桥片连接,外部PCIe桥片与存储模块连接。
PL端上运行的逻辑包括缓存管理逻辑、光纤接口逻辑、数据压缩逻辑和存储阵列管理逻辑。
缓存管理逻辑管理数据缓存区各缓存数据,数据缓存区包括数据收发缓存、数据压缩缓存和PL非易失缓存,数据收发缓存使用存储器PL_DDR_1,数据压缩缓存使用存储器PL_DDR_2,PL非易失缓存使用非易失存储器PL_NVRAM;缓存管理逻辑按照初始化时PS_NVRAM中的配置参数,监测各缓存区数据并触发下一步数据操作。
具体的,缓存管理逻辑按照PS_NVRAM中配置的接收缓存块的调度方式依次检查各接收缓存块的水位线,直至最后一个接收缓存块后重新开始,形成一条闭环;特殊的,对于会产生峰值数据的接收缓存块,接收缓存块的调度方式中增加该接收缓存块在闭环中的频次,提高处理效率,防止瞬时峰值数据溢出;当接收缓存块中接收缓存条带数目超过预设水位线或最大时间时,由缓存管理逻辑启动DMA传输,将数据缓存块中有效数据传输至数据压缩逻辑,触发数据压缩;同时,缓存管理逻辑记录该数据块起始和截止时间。
缓存管理逻辑按照PS_NVRAM中配置的压缩缓存块的调度方式依次检查各压缩缓存块的水位线,直至最后一个压缩缓存块后重新开始,形成一条闭环;当数据压缩缓存块中数据水位线超过预先设定阈值时,由缓存管理逻辑触发存储模块写入操作,同时,缓存管理逻辑根据记录的数据块起始和截止时间,计算数据压缩缓存块中此次待写入存储模块的数据起始和截止时间,并更新位于PL_NVRAM中的数据索引信息。
光纤接口逻辑按照配置定义的机载总线数据接收数据,并对数据进行解析、分类;分类后的数据在头部位置插入时标信息、帧编号和长度信息,如图3所示,其中时标信息、帧编号和长度信息共6字节,用以标识各帧数据的特性,时标数据由主处理模块上日历时钟芯片产生,亦或采用PL侧相对时钟;处理后的数据被缓存至存储器PL_DDR_1中对应数据类型的数据接收缓存块中,其中,数据接收缓存块由若干接收缓存条带组成,每一个条带缓存一帧接收数据。
数据压缩逻辑在缓存管理逻辑触发接收数据缓存块DMA传输时,接收数据收发缓存中分类区域数据并进行压缩,压缩完成后的数据连续缓存至对应的数据压缩缓存块中。数据压缩为实时无损压缩,遵循RFC-1952标准;数据压缩逻辑使用的数据压缩处理带宽高于光纤接口数据峰值带宽,不同接收数据缓存块共用一个数据压缩逻辑,采用分时复用方式执行压缩过程,降低逻辑资源占用率。
存储阵列管理逻辑在缓存管理逻辑触发存储模块写入操作时,并将数据压缩缓存中的压缩分类数据按顺序写入至对应存储模块的存储空间。
存储模块由数个NVMe SSD组成存储阵列,通过PCIe交换芯片与主处理模块PL端相连,存储模块被PL端存储阵列管理逻辑控制,用于接收存储阵列管理逻辑下发的数据并存储至NVMe SSD中。存储模块由支持NVMe协议的固态电子盘组成阵列,将若干NVMe SSD缓存的存储阵列按照功能配置参数配置成JBOD或RAID 0模式,存储模块对上呈现为一个大空间的逻辑硬盘;该逻辑硬盘按照参数配置被划分为多个分区,每个分区对应一种类型数据,数据按照逻辑块方式进行存储,图4为各分区逻辑示意图,一个分区也称为一个文件,一个分区内包含若干个File Block(文件数据块),每个File Block大小默认为与压缩缓存块中水位线保持一致,并为NVMe SSD逻辑块大小的整数倍,保证单次完整写入存储模块,降低写放大影响。
数据压缩缓存中压缩后的数据到达设定水位线时,经存储阵列管理逻辑写入对应的分区中;同时,由缓存管理逻辑更新该文件索引信息中数据块尾地址,并根据缓存管理逻辑计算时间更新当前写入数据块的起始时间和截止时间,以及该数据块地址。随着记录装置多次使用,当该文件中数据块尾地址到达该文件数据块终止地址时,由缓存管理逻辑更新覆盖标识为1,并将数据块头地址与尾地址保持一致。
存储模块中除各类型数据分区外,还包括一个文件索引分区,缓存管理逻辑每隔30秒将PL_NVRAM中的文件索引信息写入文件索引分区中,写入方式为覆盖写。
对PL端的光纤接口逻辑、缓存管理逻辑、数据压缩逻辑、存储阵列管理逻辑以及数据收发缓存区、数据压缩缓存区和存储模块的配置是由主处理模块的PS端来实现。上电初始化时,PS端ARM内核根据预先写入PS_NVRAM的逻辑功能及参数配置信息,所述预先写入PS_NVRAM的逻辑功能及参数配置信息,包括存储空间分配参数、数据收发缓存区参数、数据压缩缓存区参数、数据缓存区调度参数和存储阵列管理功能参数;其中存储空间分配参数用于存储模块的存储空间分配;数据收发缓存区参数用于配置收发缓存区范围及收发缓存区内部的数据分类区域范围;数据压缩缓存区参数用于配置数据压缩缓存区范围及数据压缩缓存区内部的数据分类区域范围;数据缓存区调度参数用于配置缓存管理逻辑监测及触发缓存数据操作的周期及方式;存储阵列管理参数用于配置存储阵列的功能模式;详细配置如下:
a)为光纤接口逻辑配置机载总线数据传输定义、数据类型(N)、单帧长度(L)和传输速率(R);
b)数据接收缓存中接收缓存块和数据压缩缓存中压缩缓存块的个数均为N;各接收缓存块中接收缓存条带大小为L+“时标信息、帧编号和帧长度信息”的长度,接收缓存条带的数目根据PL_DDR1空间大小及数据类型等适当调整,或配置为默认值;压缩缓存块大小根据PL_DDR2空间大小及数据类型等适当调整,或配置为默认值;
c)配置存储阵列管理逻辑的功能模式,可选JBOD或RAID 0模式;
d)配置存储模块中的存储空间分区数目为N+1,根据不同类型数据的传输速率、单帧长度、压缩率和单次最大传输时长,计算存储空间各分区大小,并保留一定余量;按照各分区空间大小,划分存储模块逻辑空间,设置各逻辑空间起始和截止块地址;
e)配置接收缓存块的调度方式和水位线,默认按照接收缓存块编号依次调度,可更改调度次序和频次;每个接收缓存块的水位线可单独设置,或配置为默认值;配置数据压缩缓存块的水位线,或配置为默认值;配置接收缓存块和压缩缓存块刷新最大时间,或配置为默认值;
f)完成配置的数据,按照特定格式生成配置文件,由地面站或其他设备加载至记录装置并贮存于PS_NVRAM中,并同步更新PS_NVRAM中配置文件更新标识信息;
g)记录装置上电时,由PS端ARM内核加载PS_NVRAM中的逻辑功能及参数配置信息,并根据此信息初始化逻辑功能;首次配置时,配置文件更新标识为真,PS端ARM内核将更新全部上述配置信息,同步更新PL_NVRAM中的数据块索引,并置配置文件更新标识为假;除首次配置或重新更新配置外,记录装置上电时仅配置除存储模块分区、逻辑块地址信息外的其他配置信息。
上述PS_NVRAM的逻辑功能及参数配置信息是由系统人员根据机载总线上的数据流类别、数据流大小、装置运行时间、数据压缩能力和存储阵列管理模式,预先计算机载总线上各数据需要的存储空间大小、数据收发缓存大小和数据压缩缓存大小,并根据该数据对存储模块空间、数据收发缓存区域空间、数据压缩缓存区域空间、缓存触发方式和存储阵列模式进行规划,生成相应的配置文件并烧录至装置PS端非易失存储介质PS_NVRAM中。配置参数根据总线数据差异而灵活配置,极大提升记录装置的可用性,适用于多种机载总线数据记录场景。
记录装置上电初始化配置信息后,开始接收光纤接口数据并经过解析、处理和压缩后记录至存储模块中,具体步骤如图2所示。实施例提供了机载总线数据记录装置的数据存储方法,用于高速数据循环记录,包括以下步骤:装置上电时,PS端ARM内核根据PS_NVRAM中存储模块配置信息初始化配置模块空间;缓存管理逻辑根据存储模块空间分配信息提取各分配空间起始块地址、终止块地址数据并存储至PL端PL_NVRAM中,用以维护各分配空间索引;一类机载总线数据对应一个分配空间,此分配空间被分割成特定大小的逻辑块,每个逻辑块均用于存储压缩后的总线数据;装置运行时,由光纤接口逻辑接收机载总线数据,经过插入时标、帧号和长度信息后,由数据压缩逻辑进行无损压缩;压缩后的总线数据被写入数据压缩缓存,由缓存管理逻辑监控数据压缩缓存数据,并在符合预设条件时触发存储阵列管理逻辑将数据压缩缓存中的数据写入对应的分配空间中;缓存管理逻辑更新PL_NVRAM中对应分配空间的数据块尾地址、数据块起始时间、数据终止时间;当本分配空间被写满时,存储阵列管理逻辑将新数据重新从该分配空间头部写入,并由缓存管理逻辑更新PL_NVRAM中数据头地址、尾地址及循环写标识。
本实施例还提供了机载总线数据记录装置的数据快速检索方法,包括以下步骤:主处理模块通过光纤接口接收检索命令并转发至PS端,由PS端应用软件解析检索数据分类及检索时间段信息;同步的,应用软件扫描对应数据分配空间的PL_NVRAM索引信息,根据索引信息中的时间标识确定数据存储块地址;应用软件将解析的块地址写入存储阵列管理逻辑的特定寄存器,并触发读操作;存储阵列管理逻辑读取对应数据块数据并存放至数据发送缓存中,并由缓存管理模块触发光纤接口逻辑发送检索数据。
每个文件(亦或分区)的索引信息存储于PL_NVRAM中,其格式如图5所示,包含当前文件数据块头地址、尾地址、覆盖标识F、该分区数据块范围(数据块起始、数据块终止)以及各数据块起始时间、截止时间。以File 0为例,首次初始化时,PS_NVRAM中的分区配置参数同步更新至PL_NVRAM中对应的文件索引信息数据块范围处,并置文件数据块头地址、尾地址为数据块起始地址,置覆盖标识F为0;非首次初始化时,PL_NVRAM中的文件索引信息不会随PS_NVRAM中的配置信息变动,直至记录装置更新PS_NVRAM中配置信息并重新上电初始化。
数据检索和下传的具体过程:光纤接口逻辑接收到数据检索命令,并将其转发至PS端由应用软件处理;应用软件解析检索命令,确认检索数据类型和时间段信息;应用软件扫描PL_NVRAM中对应类型数据的文件索引信息,找到其对应时间的数据块信息;应用软件将数据块信息写入存储阵列管理逻辑特定寄存器,并触发读操作;存储管理阵列逻辑在当前操作完成后,立即进行数据读取,并将读取的数据存至数据收发缓存中的发送缓存块中;缓存管理逻辑监测到数据发送缓存块中有数据,触发光纤接口逻辑将发送缓存中数据发出。
数据检索以时间信息为索引,将该时间段内压缩后的数据发出,降低了下传链路带宽占用率,尤其是对于较长时间段的数据检索时,效率提升明显。
本实施例还提供了一种机载总线数据记录装置的缓存管理方法,该方法用于数据收发缓存、数据压缩缓存的控制管理;数据收发缓存是由若干个接收数据缓存块和一个数据发送缓存块组成,每个接收缓存块由若干个接收缓存条带构成,每个接收缓存条带可存放该类型数据一帧数据,包括时标、帧号和长度信息;光纤接口逻辑将接收、解析、处理后的数据存放至对应的缓存条带;缓存管理逻辑监测每个接收缓存块数据量,当该接收缓存块缓存条带超过预设域值时,由缓存管理逻辑触发DMA传输操作,将该接收缓存块有效条带数据传输至数据压缩逻辑,触发数据压缩操作;缓存管理逻辑默认以轮询的方式监测不同接收缓存块有效缓存条带数目;
数据压缩缓存由若干个压缩缓存块组成,其数目与接收缓存块一致,每个压缩缓存块大小根据PS_NVRAM中的数据压缩缓存参数配置,默认大小为8MB;压缩后的数据存入对应的压缩缓存块中;缓存管理逻辑监测各压缩缓存块数据量,当超出PS_NVRAM中缓存管理逻辑关于数据压缩缓存的配置参数,则触发存储阵列写数据操作,存储阵列管理逻辑将对应压缩缓存块中有效的压缩缓数据写入存储模块中;同时,缓存管理逻辑更新PL_NVRAM中的索引表信息。
本发明通过逻辑功能及参数可配置方式极大提升了装置的可用性和适应性;数据块存储方式提升了数据存储效率,降低了写放大效应和文件管理性能损耗;结合机载总线数据特点,对总线数据分类压缩,极大降低了存储带宽压力和存储空间需求,提升单位存储空间能效比,降低生产成本;高效的缓存管理对于突发峰值传输有很强的应对能力,避免数据缓存溢出;数据检索下传占用传输链路带宽低,单位带宽下传输内容更丰富。
Claims (9)
1.一种机载总线数据记录装置,该装置包括在主处理模块、存储模块、存储器PL_DDR_1、存储器PL_DDR_2、非易失存储器PL_NVRAM和非易失存储器PS_NVRAM,其特征在于:
所述主处理模块,采用SoPC芯片,SoPC芯片的PL端连接存储器PL_DDR_1、存储器PL_DDR_2和非易失存储器PL_NVRAM;同时PL端通过PCIe总线与外部PCIe桥片连接,外部PCIe桥片与存储模块连接;PL端上运行的逻辑包括缓存管理逻辑、光纤接口逻辑、数据压缩逻辑和存储阵列管理逻辑;
在数据记录时:
缓存管理逻辑管理数据缓存区各缓存数据,数据缓存区包括数据收发缓存、数据压缩缓存和PL非易失缓存,数据收发缓存使用存储器PL_DDR_1,数据压缩缓存使用存储器PL_DDR_2,PL非易失缓存使用非易失存储器PL_NVRAM;缓存管理逻辑依次检查数据收发缓存中各接收缓存块的水位线,当接收缓存块中接收缓存条带数目超过预设水位线或最大时间时,由缓存管理逻辑启动DMA传输,将数据缓存块中有效数据传输至数据压缩逻辑,触发数据压缩;
缓存管理逻辑依次检查数据压缩缓存中各压缩缓存块的水位线,当数据压缩缓存块中数据水位线超过预先设定阈值时,由缓存管理逻辑触发存储模块写入操作;
光纤接口逻辑按照配置定义的机载总线数据接收数据,并对数据进行解析、分类;分类后的数据在头部位置插入时标信息、帧编号和长度信息,处理后的数据被缓存至数据缓存区中对应数据类型的数据接收缓存块中;其中,数据接收缓存块由若干接收缓存条带组成,每一个条带缓存一帧接收数据;
数据压缩逻辑在缓存管理逻辑触发接收数据缓存块DMA传输时,接收数据收发缓存中分类区域的数据接收缓存块并进行压缩,压缩完成后的数据连续缓存至对应分类的数据压缩缓存块中;
存储阵列管理逻辑在缓存管理逻辑触发存储模块写入操作时,并将数据压缩缓存中的压缩分类数据按顺序写入至对应分类的存储模块的存储空间;
SoPC芯片PS端连接外部非易失存储器PS_NVRAM,对PL端的光纤接口逻辑、缓存管理逻辑、数据压缩逻辑、存储阵列管理逻辑以及数据收发缓存区、数据压缩缓存区和存储模块的配置是由主处理模块的PS端根据PS_NVRAM中的逻辑功能及参数配置信息来实现,详细配置如下:
为光纤接口逻辑配置机载总线数据传输定义、数据类型N、单帧长度L和传输速率R;
数据接收缓存中接收缓存块和数据压缩缓存中压缩缓存块的个数均为N;各接收缓存块中接收缓存条带大小为L+“时标信息、帧编号和帧长度信息”的长度,接收缓存条带的数目根据PL_DDR1空间大小及数据类型调整,或配置为默认值;压缩缓存块大小根据PL_DDR2空间大小及数据类型调整,或配置为默认值;
配置存储阵列管理逻辑的功能模式,JBOD或RAID 0模式;
配置存储模块中的存储空间分区数目为N+1,根据不同类型数据的传输速率、单帧长度、压缩率和单次最大传输时长,计算存储空间各分区大小,并保留一定余量;按照各分区空间大小,划分存储模块逻辑空间,设置各逻辑空间起始和截止块地址;
配置接收缓存块的调度方式和水位线,或默认按照接收缓存块编号依次调度;每个接收缓存块的水位线单独设置,或配置为默认值;配置数据压缩缓存块的水位线,或配置为默认值;配置接收缓存块和压缩缓存块刷新最大时间,或配置为默认值;
完成配置的数据,按照特定格式生成配置文件,由地面站或其他设备加载至记录装置并贮存于PS_NVRAM中,并同步更新PS_NVRAM中配置文件更新标识信息;
记录装置上电时,由PS端ARM内核加载PS_NVRAM中的逻辑功能及参数配置信息,并根据此信息初始化逻辑功能;首次配置时,配置文件更新标识为真,PS端ARM内核将更新全部上述配置信息,同步更新PL_NVRAM中的数据块索引,并置配置文件更新标识为假;除首次配置或重新更新配置外,记录装置上电时仅配置除存储模块分区、逻辑块地址信息外的其他配置信息。
2.根据权利要求1所述的一种机载总线数据记录装置,其特征在于数据压缩逻辑遵循RFC-1952标准,使用的数据压缩处理带宽高于光纤接口数据峰值带宽,不同接收数据缓存块共用一个数据压缩逻辑,采用分时复用方式执行压缩过程。
3.根据权利要求1所述的一种机载总线数据记录装置,其特征在于缓存管理逻辑按照PS_NVRAM中配置的接收缓存块的调度方式依次检查各接收缓存块的水位线,直至最后一个接收缓存块后重新开始,形成一条闭环;特殊的,对于会产生峰值数据的接收缓存块,接收缓存块的调度方式中增加该接收缓存块在闭环中的频次;
缓存管理逻辑按照PS_NVRAM中配置的压缩缓存块的调度方式依次检查各压缩缓存块的水位线,直至最后一个压缩缓存块后重新开始,形成一条闭环。
4.根据权利要求1所述的一种机载总线数据记录装置,其特征在于存储模块由数个NVMe SSD组成存储阵列,对上呈现为一个大空间的逻辑硬盘;该逻辑硬盘按照参数配置被划分为多个分区,每个分区对应一种类型数据,一个分区内包含若干个文件数据块,每个文件数据块大小为与压缩缓存块中水位线保持一致,并为NVMe SSD逻辑块大小的整数倍。
5.根据权利要求1所述的一种机载总线数据记录装置,其特征在于数据收发缓存是由若干个接收数据缓存块和一个数据发送缓存块组成,每个接收缓存块由若干个接收缓存条带构成,每个接收缓存条带可存放该类型数据一帧数据,包括时标、帧号和长度信息;光纤接口逻辑将接收、解析、处理后的数据存放至对应的缓存条带;
数据压缩缓存由若干个压缩缓存块组成,压缩缓存块数目与接收缓存块一致,每个压缩缓块大小根据PS_NVRAM中的数据压缩缓存参数配置。
6.根据权利要求1所述的一种机载总线数据记录装置,其特征在于所述PS_NVRAM的逻辑功能及参数配置信息是由系统人员根据机载总线上的数据流类别、数据流大小、装置运行时间、数据压缩能力和存储阵列管理模式,预先计算机载总线上各数据需要的存储空间大小、数据收发缓存大小和数据压缩缓存大小,并根据该数据对存储模块空间、数据收发缓存区域空间、数据压缩缓存区域空间、缓存触发方式和存储阵列模式进行规划,生成相应的配置文件并烧录至装置PS端非易失存储介质PS_NVRAM中。
7.根据权利要求4所述的一种机载总线数据记录装置,其特征在于存储模块中还包括一个文件索引分区;
缓存管理逻辑根据存储模块空间分配信息提取各分配空间起始块地址、终止块地址数据并存储至PL端PL_NVRAM中;
缓存管理逻辑在启动DMA传输触发数据压缩时,缓存管理逻辑记录该数据块的起始和截止时间;
缓存管理逻辑在触发存储模块写入操作时,缓存管理逻辑根据压缩时记录的数据块起始和截止时间,计算数据压缩缓存块中此次待写入存储模块的数据起始和截止时间,并更新位于PL_NVRAM中的文件索引信息;其中,文件索引信息的为当前数据块头地址、尾地址、覆盖标识F、该分区数据块范围以及各数据块起始时间、截止时间;
缓存管理逻辑每隔一段将PL_NVRAM中的文件索引信息写入存储模块的文件索引分区中,写入方式为覆盖写。
8.根据权利要求7所述的一种机载总线数据记录装置,其特征在于当存储模块的某分配空间被写满时,存储阵列管理逻辑将新数据重新从该分配空间头部写入,并由缓存管理逻辑更新PL_NVRAM中数据头地址、尾地址及循环写标识。
9.根据权利要求7所述的一种机载总线数据记录装置,其特征在于在数据检索和下传时,光纤接口逻辑接收到数据检索命令后转发至PS端由应用软件处理;应用软件解析检索命令,确认检索数据类型和时间段信息;应用软件扫描PL_NVRAM中对应类型数据的文件索引信息,找到文件索引信息对应时间的数据块信息;应用软件将数据块信息写入存储阵列管理逻辑特定寄存器,并触发读操作;存储管理阵列逻辑在当前操作完成后,立即进行数据读取,并将读取的数据存至数据收发缓存中的发送缓存块中;缓存管理逻辑监测到数据发送缓存块中有数据,触发光纤接口逻辑将发送缓存中数据发出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111360088.4A CN114020663B (zh) | 2021-11-17 | 2021-11-17 | 一种机载总线数据记录装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111360088.4A CN114020663B (zh) | 2021-11-17 | 2021-11-17 | 一种机载总线数据记录装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114020663A CN114020663A (zh) | 2022-02-08 |
CN114020663B true CN114020663B (zh) | 2024-01-30 |
Family
ID=80064773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111360088.4A Active CN114020663B (zh) | 2021-11-17 | 2021-11-17 | 一种机载总线数据记录装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114020663B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106160A (zh) * | 2013-01-31 | 2013-05-15 | 中国航空无线电电子研究所 | 机载环境sata总线存储控制系统及其控制方法 |
CN103995855A (zh) * | 2014-05-14 | 2014-08-20 | 华为技术有限公司 | 存储数据的方法和装置 |
CN108345434A (zh) * | 2018-03-12 | 2018-07-31 | 广州酷狗计算机科技有限公司 | 数据写入方法、装置、计算机设备及可读存储介质 |
CN109358805A (zh) * | 2018-09-03 | 2019-02-19 | 中新网络信息安全股份有限公司 | 一种数据缓存方法 |
CN110555056A (zh) * | 2019-07-23 | 2019-12-10 | 北京控制工程研究所 | 一种基于双环形缓冲的时标指令序列管理方法 |
CN211606542U (zh) * | 2020-04-21 | 2020-09-29 | 广东昂立电气自动化有限公司 | 一种精确时间控制的光报文合并分发装置 |
CN112562121A (zh) * | 2020-12-30 | 2021-03-26 | 洛阳伟信电子科技有限公司 | 一种基于srio协议的存储数据和快速下载方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8176220B2 (en) * | 2009-10-01 | 2012-05-08 | Oracle America, Inc. | Processor-bus-connected flash storage nodes with caching to support concurrent DMA accesses from multiple processors |
-
2021
- 2021-11-17 CN CN202111360088.4A patent/CN114020663B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106160A (zh) * | 2013-01-31 | 2013-05-15 | 中国航空无线电电子研究所 | 机载环境sata总线存储控制系统及其控制方法 |
CN103995855A (zh) * | 2014-05-14 | 2014-08-20 | 华为技术有限公司 | 存储数据的方法和装置 |
CN108345434A (zh) * | 2018-03-12 | 2018-07-31 | 广州酷狗计算机科技有限公司 | 数据写入方法、装置、计算机设备及可读存储介质 |
CN109358805A (zh) * | 2018-09-03 | 2019-02-19 | 中新网络信息安全股份有限公司 | 一种数据缓存方法 |
CN110555056A (zh) * | 2019-07-23 | 2019-12-10 | 北京控制工程研究所 | 一种基于双环形缓冲的时标指令序列管理方法 |
CN211606542U (zh) * | 2020-04-21 | 2020-09-29 | 广东昂立电气自动化有限公司 | 一种精确时间控制的光报文合并分发装置 |
CN112562121A (zh) * | 2020-12-30 | 2021-03-26 | 洛阳伟信电子科技有限公司 | 一种基于srio协议的存储数据和快速下载方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114020663A (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9747318B2 (en) | Retrieving data in a storage system using thin provisioning | |
TWI400617B (zh) | 無線傳輸之排程及資料快取 | |
US9411519B2 (en) | Implementing enhanced performance flash memory devices | |
CN102253898B (zh) | 一种图像数据的内存管理方法及装置 | |
CN106406753B (zh) | 一种数据存储方法及数据存储装置 | |
CN104765575A (zh) | 信息存储处理方法 | |
CN112562121A (zh) | 一种基于srio协议的存储数据和快速下载方法 | |
CN103517085B (zh) | 一种基于视频解码设计实现远程服务器管理的方法 | |
CN111221759A (zh) | 一种基于dma的数据处理系统及方法 | |
CN105335323B (zh) | 一种数据突发的缓存装置和方法 | |
CN114020663B (zh) | 一种机载总线数据记录装置 | |
CN106951182A (zh) | 一种块设备缓存方法和装置 | |
CN206411658U (zh) | 一种基于FPGA的NandFlash存储系统 | |
CN116136748B (zh) | 基于FPGA实现的高带宽NVMe SSD读写系统与方法 | |
CN103617008B (zh) | 车载视频监控终端的双sd卡多媒体文件存储系统及方法 | |
CN103377163A (zh) | 超声成像系统及其实时采集数据传输方法 | |
CN114780449A (zh) | 一种基于zynq芯片的数据存储及传输系统 | |
KR20060120674A (ko) | 정보 기록 매체의 데이터 처리 장치 및 데이터 기록 방법 | |
US10061513B2 (en) | Packet processing system, method and device utilizing memory sharing | |
CN100484026C (zh) | 一种应用系统中日志信息的传送方法及系统 | |
EP1320035A1 (en) | Storage device cache management | |
CN206991288U (zh) | 一种数据存储系统 | |
CN105701060B (zh) | 基于fpga的高速实时数据记录系统 | |
US11297011B2 (en) | Data transmission method and communications device | |
US10809918B2 (en) | Cache performance on a storage system |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |