基于HLS的Gzip无损压缩硬件设计实现

来源 :西安电子科技大学 | 被引量 : 0次 | 上传用户:waly7208346
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着大数据时代来临,大量信息需要通过互联网进行传输,占用的网络资源急剧增加,给网络传输带来极大的压力。数据压缩技术能够节约数据存储空间、传输时间和带宽,从而缓解传输压力。无损压缩Gzip是目前最常用的一种压缩工具,被广泛应用在网络资料的下载和数据备份等领域。其中开源代码zlib是Gzip算法最著名的实现版本,但因其算法本身计算量较大,导致压缩的数据吞吐率较低。FPGA在数据处理速度上有着通用处理器无法比拟的巨大优势,但硬件开发通常需要消耗较长周期。为了缩短开发周期,Xilinx公司推出的高级综合工具Vivado-HLS能够将C/C++、System C等高级编程语言描述的算法或行为级直接转换成硬件电路,并进行RTL级仿真验证。相比传统的硬件开发,使用高级综合工具更易于实现设计模块的仿真验证和迭代优化,从而极大缩短硬件开发周期。为解决Gzip压缩吞吐率较低的问题,本文在仔细研究Gzip压缩原理的基础上,根据算法的特点设计了适合硬件实现的流水和并行结构,并且使用Vivado-HLS工具进行实现。本文的主要工作有:1.提出一种多级流水的Gzip压缩设计架构。将压缩过程划分为读取数据、哈希表更新、匹配查找和选择、Huffman编码、Huffman码流打包以及压缩码流输出六个模块,利用并行处理窗口的设计实现数据压缩的并行处理,通过匹配选择消除了并行处理的相关性。另外在模块间建立起多级流水,最终提高Gzip压缩数据吞吐率。2.利用Vivado-HLS工具完成了满足高吞吐率的Gzip数据压缩架构的实现。针对提出的Gzip压缩硬件架构,利用HLS工具分别对压缩子模块进行实现及优化。通过约束ARRAY_PARTITION将数组的存储结构映射为寄存器,约束UNROLL将顺序执行的循环处理过程映射为并行处理,实现并行窗口结构达到缩短处理时延的目的;通过约束PIPELINE和DATAFLOW实现模块之间的多级流水处理结构;最后利用HLS工具对压缩架构进行RTL仿真验证。本文针对Gzip压缩的硬件实现,提出了一种多级流水的并行处理硬件架构,并通过Vivado-HLS工具进行实现。实验结果表明,该架构能够在227MHz的频率下,当并行处理窗口大小为16时获得3.46GB/s的吞吐率,相比目前zlib提供的软件实现的吞吐率提高了10.4倍。另外本文提供的硬件加速设计结构具备规模可扩充性,其中并行窗口的大小与资源规模和吞吐率成比例增长。本文所提出的Gzip压缩的架构具备数据吞吐率高,可适应不同规模的FPGA进行实现。
其他文献
随着市场经济的逐步完善,职业教育在新时期的重要作用已经开始凸现出来,它能否得到快速和健康的发展,关系到未来社会经济发展的持续性。由于我国社会主义市场经济的快速发展,
采用自蔓燃热压法(SHS+HP)成功制备了Ti C基金属陶瓷-钢复合板。对Ti C基金属陶瓷-钢复合板进行形貌、金相、显微硬度以及抗弹性能的测试与分析。结果表明,金属陶瓷与钢板实
随着我国经济形势的发展,各企事业单位外部竞争环境及内部治理环境发生了巨大的变化,作为企业管理中重要一环的财务管理也必然发生相应的变革。目前,许多企事业单位都顺应这
小学生由于其年龄较小,在小学学习期间容易受其老师教学风格的影响,在小学这一时期,性格、行为模式与习惯等都会受其影响。教师能引导小学生养成良好的习惯,促使其健康成长。
马克思主义中国化是马克思主义彰显自身强大的实践功能以及中国实践需要理论指导的"双向需要"合力的结果。迄今为止,既存的马克思主义中国化研究几乎全部集中于政治学、历史
根据快速消费品行业消费者在购买时所表现出的特点及现有渠道中存在的问题,提出了快速消费品分销渠道深度分销的对策。
<正> 一、关于上栗花炮产业上栗作为我国花炮发源地.千百年来,百姓世代以制售花炮为生,并形成了独特的花炮文化,花炮产业也在上栗不断繁衍生息,逐渐发展壮大。2003年,上栗仅
就业问题是当今世界性的社会难题之一。我国是世界第一人口大国,受人口数量的制约,劳动力总供给大于总需求是我国必须长期面对的严峻挑战。伴随着我国加大力度推进经济体制改革
在概述开放式公园种类的基础上,详细介绍了大连劳动公园的概况,并对大连劳动公园开放式改造历程及管理模式进行了探讨。
不断被媒体曝光的名人代言的虚假广告引发了大家对名人广告的质疑,名人广告的道德失范行为不仅与社会道德规范相冲突,也不利于广告的有效传播。应用康德的"有良心的社会责任"