一种基于RISC-V架构的硬件GZIP数据压缩系统

    专利2025-04-22  18


    本发明涉及数据压缩处理,尤其涉及一种基于risc-v架构的硬件gzip数据压缩系统。


    背景技术:

    1、随着当今社会信息化的飞速发展,用户通过智能设备即可实现各种便捷服务,极大改变了生活方式,但随之而来的是各平台需搭载的数据量呈爆炸式增长,现代处理器中的存储系统需要处理越来越多的数据。面对这样的挑战,数据压缩是一种增加系统存储容量的有效方法,可同时提供性能与功耗上的优势。但就目前大多数的压缩算法实现而言,都是基于上位机软件完成,存在过多占用cpu的缺点,而且软件只可串行执行,极大降低了算法的压缩速率。


    技术实现思路

    1、为了解决上述技术问题,本发明的目的是提供一种基于risc-v架构的硬件gzip数据压缩系统,能够实现硬件的gzip压缩算法,提升算法的运算速度和数据的压缩速率。

    2、本发明所采用的第一技术方案是:一种基于risc-v架构的硬件gzip数据压缩系统,包括risc-v模块、硬件压缩核和fpga硬件平台,其中:

    3、所述risc-v模块包含高速总线和低速总线,并作为核心处理器对算法进行管理调度;

    4、所述硬件压缩核包含位宽转换模块、第一fifo缓存模块、第二fifo缓存模块、第一axi转ahb桥模块、第二axi转ahb桥模块和硬件压缩算法ip,用于对原始数据进行压缩,得到gzip压缩包;

    5、所述risc-v模块移植在fpga硬件平台上,根据risc-v架构发出的各项指令做相应运算;

    6、所述risc-v模块的高速总线与第一axi转ahb桥模块、第二axi转ahb桥模块连接;所述第一axi转ahb桥模块与第一fifo缓存模块连接;所述第一fifo缓存模块与位宽转换模块连接;所述位宽转换模块与硬件压缩算法ip输入端连接;所述硬件压缩算法ip输出端与第二fifo缓存模块连接;所述第二fifo缓存模块与第二axi转ahb桥模块连接。

    7、进一步,所述硬件压缩算法ip,其封装步骤如下:

    8、基于软件gzip开源算法分别对lz77模块、huffman模块进行硬件描述语言设计,得到gzip算法硬件代码;

    9、基于vivado平台对gzip算法硬件代码进行仿真验证,得到验证无误的gzip算法硬件代码;

    10、基于验证无误的gzip算法硬件代码配置相应的约束文件布局布线到fpga硬件平台中,得到初始硬件压缩算法;

    11、基于串口发送的卡尔加里语料库数据包对初始硬件压缩算法进行测试并验证,得到测试无误的硬件压缩算法;

    12、对测试无误的硬件压缩算法进行封装,得到硬件压缩算法ip。

    13、通过该优选步骤,硬件压缩算法ip能够在同一时钟周期内并行执行多个任务,减少了单个任务的执行时间,极大提高了运算效率,将硬件的并行特性发挥到最佳;卡尔加里语料库数据包的多样性使得压缩性能的测试更为丰富。

    14、进一步,所述对原始数据进行压缩,得到gzip压缩包这一步骤,其具体包括:

    15、将原始数据输入到硬件压缩算法ip中的lz77模块进行哈希处理,生成哈希链表;

    16、基于哈希链表对每一个字节进行匹配查询,得到编码长度参数和距离参数;

    17、将携带编码长度参数和距离参数的编码数据输入到硬件压缩算法ip中的huffman模块进行编码压缩,得到序列化的数据;

    18、对序列化的数据进行封装,并添加头文件和校验位,得到gzip压缩包。

    19、通过该优选步骤,实现比单独的lz77与huffman压缩更高的压缩率。

    20、进一步,所述risc-v模块的运行由上位机软件编写程序控制,通过交叉编译工具链将上位机软件编写程序中的命令转换为risc-v模块可以识别的机器码,并烧录程序至risc-v模块的cpu中。

    21、通过该优选步骤,解决了高级语言生成的可执行文件不能在risc-v架构的处理器上直接运行的问题。

    22、进一步,所述高速总线用于连接处理器、高性能外设和其他需要快速数据传输的组件,搭载了cpu核、isram模块、imem模块、dmem模块、dram模块、dma模块。

    23、进一步,所述低速总线用于连接性能低的外设和传感器,搭载了wdt模块、pwm模块、tim模块、usi模块、gpio模块、rtc模块。

    24、通过该优选步骤,综合考虑高速总线和低速总线的需求设置,实现在系统内部和外部之间实现高性能、低功耗和合适的资源分配。

    25、进一步,所述硬件压缩算法ip包含若干寄存器,所述寄存器被软件开发工具和编程语言定义,risc-v模块的cpu直接对寄存器进行指令操作。

    26、通过该优选步骤,实现无需额外添加指令、也无需在进行指令译码等环节,直接采用risc-v模块的cpu直接对寄存器进行指令操作,大幅减短指令开发用时,在保证硬件加速的同时提高开发效率。

    27、本发明系统的有益效果是:本发明基于gzip开源算法对lz77模块、huffman模块进行代码设计、仿真调试,封装得到硬件压缩算法ip,实现在同一时钟周期内并行执行多个任务,将硬件的并行特性发挥到最佳;通过risc-v架构的高速总线对硬件压缩算法ip进行挂载,将risc-v作为核心处理器对算法进行管理调度,具备开源、低功耗、灵活性强的优势;通过交叉编译工具链将上位机软件编写程序中的命令转换为risc-v模块可以识别的机器码,解决了高级语言生成的可执行文件不能在risc-v架构的处理器上直接运行的问题;通过软件开发工具和编程语言定义寄存器,实现risc-v模块的cpu直接对寄存器进行指令操作,在保证硬件加速的同时提高开发效率。

    28、附图说明

    29、图1是本发明一种基于risc-v架构的硬件gzip数据压缩系统的结构示意图;

    30、图2是本发明一种基于risc-v架构的硬件gzip数据压缩系统的risc-v模块结构示意图;

    31、图3是本发明一种基于risc-v架构的硬件gzip数据压缩系统的硬件压缩算法ip示意图;

    32、图4是本发明一种基于risc-v架构的硬件gzip数据压缩系统的硬件压缩核输出数据的压缩率结果图;

    33、图5是本发明一种基于risc-v架构的硬件gzip数据压缩系统的硬件压缩核挂载示意图;

    34、图6是本发明一种基于risc-v架构的硬件gzip数据压缩系统的数据通信示意图;



    技术特征:

    1.一种基于risc-v架构的硬件gzip数据压缩系统,其特征在于,包括risc-v模块、硬件压缩核和fpga硬件平台,其中:

    2.根据权利要求1所述一种基于risc-v架构的硬件gzip数据压缩系统,其特征在于,所述硬件压缩算法ip,其封装步骤如下:

    3.根据权利要求2所述一种基于risc-v架构的硬件gzip数据压缩系统,其特征在于,所述对原始数据进行压缩,得到gzip压缩包这一步骤,其具体包括:

    4.根据权利要求1所述一种基于risc-v架构的硬件gzip数据压缩系统,其特征在于,所述risc-v模块的运行由上位机软件编写程序控制,通过交叉编译工具链将上位机软件编写程序中的命令转换为risc-v模块可以识别的机器码,并烧录程序至risc-v模块的cpu中。

    5.根据权利要求1所述一种基于risc-v架构的硬件gzip数据压缩系统,其特征在于,所述高速总线用于连接处理器、高性能外设和其他需要快速数据传输的组件,搭载了cpu核、isram模块、imem模块、dmem模块、dram模块、dma模块。

    6.根据权利要求1所述一种基于risc-v架构的硬件gzip数据压缩系统,其特征在于,所述低速总线用于连接性能低的外设和传感器,搭载了wdt模块、pwm模块、tim模块、usi模块、gpio模块、rtc模块。

    7.根据权利要求1所述一种基于risc-v架构的硬件gzip数据压缩系统,其特征在于,所述硬件压缩算法ip包含若干寄存器,所述寄存器被软件开发工具和编程语言定义,risc-v模块的cpu直接对寄存器进行指令操作。


    技术总结
    本发明公开了一种基于RISC‑V架构的硬件GZIP数据压缩系统,该系统包括:RISC‑V模块、硬件压缩核和FPGA硬件平台,其中:所述RISC‑V模块包含高速总线和低速总线,并作为核心处理器对算法进行管理调度;所述硬件压缩核包含位宽转换模块、第一FIFO缓存模块、第二FIFO缓存模块、第一AXI转AHB桥模块、第二AXI转AHB桥模块和硬件压缩算法IP,用于对原始数据进行压缩,得到GZIP压缩包;所述RISC‑V模块移植在FPGA硬件平台上,根据RISC‑V架构发出的各项指令做相应运算。通过使用本发明,能够实现硬件的GZIP压缩算法,提升算法的运算速度和数据的压缩速率。本发明可广泛应用于数据压缩处理技术领域。

    技术研发人员:杨芸,武凯楠,袁瑞明,谢浩燊,刘伟平
    受保护的技术使用者:暨南大学
    技术研发日:
    技术公布日:2024/4/29
    转载请注明原文地址:https://wp.8miu.com/read-85893.html

    最新回复(0)