低密度奇偶校验(Low-Density Parity-Check,LDPC)码是第五代移动通信技术(5th Generation Mobile Communication Technology,5G)系统采用的信道编码技术之一,用于业务信道高速数据传输,具有很强的抗干扰能力和纠错能力。5G-LDPC码编译...低密度奇偶校验(Low-Density Parity-Check,LDPC)码是第五代移动通信技术(5th Generation Mobile Communication Technology,5G)系统采用的信道编码技术之一,用于业务信道高速数据传输,具有很强的抗干扰能力和纠错能力。5G-LDPC码编译码在嵌入式平台的实现是一个值得关注的研究方向。CEVA-XC4500数字信号处理(Digital Signal Processing,DSP)芯片具有极低功耗、高密度计算、集成了超长指令字(Very Long Instruction Word,VLIW)和单指令多数据(Single Instruction Multiple Data,SIMD)矢量功能的特点。针对CEVA-XC4500 DSP矢量汇编指令和内联指令集的特点,提出一系列针对5G-LDPC码编码的代码优化方法,使其满足5G-LDPC码编码工程应用指标要求。仿真结果表明,优化后的5G-LDPC码编码在CEVA-XC4500 DSP内核上表现良好,中长块编码吞吐率超过100 Mb/s、核心矩阵吞吐率超过1 Gb/s,最大吞吐率达到250 Mb/s、最大核心矩阵吞吐率达到1.6 Gb/s。如果CEVA-XC4500 DSP芯片的最大数据位宽将来能进一步增大,吞吐率可以做得更好。该5G-LDPC码编码的代码优化方法为其他信道编码在类似嵌入式平台的实现提供了参考。展开更多
数字信号处理器(digital signal processor,DSP)通常采用超长指令字(very long instruction word,VLIW)和单指令多数据(single instruction multiple data,SIMD)的架构来提升处理器整体计算性能,从而适用于高性能计算、图像处理、嵌入...数字信号处理器(digital signal processor,DSP)通常采用超长指令字(very long instruction word,VLIW)和单指令多数据(single instruction multiple data,SIMD)的架构来提升处理器整体计算性能,从而适用于高性能计算、图像处理、嵌入式系统等各个领域.飞腾迈创数字处理器(FT-Matrix)作为国防科技大学自主研制的高性能通用数字信号处理器,其极致计算性能的体现依赖于对VLIW与SIMD架构特点的充分挖掘.不止是飞腾迈创系列,绝大多数处理器上高度优化的内核代码或核心库函数都依赖于底层汇编级工具或手工开发.然而,手工编写内核算子的开发方法总是需要大量的时间和人力开销来充分释放硬件的性能潜力.尤其是VLIW+SIMD的处理器,专家级汇编开发的难度更为突出.针对这些问题,提出一种面向飞腾迈创数字处理器的高性能的内核代码自动生成框架(automatic kernel code-generation framework on FT-Matrix),将飞腾迈创处理器的架构特性引入到多层次的内核代码优化方法中.该框架包括3层优化组件:自适应循环分块、标向量协同的自动向量化和细粒度的指令级优化.该框架可以根据硬件的内存层次结构和内核的数据布局自动搜索最优循环分块参数,并进一步引入标量-向量单元协同的自动向量化指令选择与数据排布,以提高内核代码执行时的数据复用和并行性.此外,该框架提供了类汇编的中间表示,以应用各种指令级优化来探索更多指令级并行性(ILP)的优化空间,同时也为其他硬件平台提供了后端快速接入和自适应代码生成的模块,以实现高效内核代码开发的敏捷设计.实验表明,该框架生成的内核基准测试代码的平均性能是目标-数字信号处理器(DSP)--的手工函数库的3.25倍,是使用普通向量C语言编写的内核代码的20.62倍.展开更多
文摘数字信号处理器(digital signal processor,DSP)通常采用超长指令字(very long instruction word,VLIW)和单指令多数据(single instruction multiple data,SIMD)的架构来提升处理器整体计算性能,从而适用于高性能计算、图像处理、嵌入式系统等各个领域.飞腾迈创数字处理器(FT-Matrix)作为国防科技大学自主研制的高性能通用数字信号处理器,其极致计算性能的体现依赖于对VLIW与SIMD架构特点的充分挖掘.不止是飞腾迈创系列,绝大多数处理器上高度优化的内核代码或核心库函数都依赖于底层汇编级工具或手工开发.然而,手工编写内核算子的开发方法总是需要大量的时间和人力开销来充分释放硬件的性能潜力.尤其是VLIW+SIMD的处理器,专家级汇编开发的难度更为突出.针对这些问题,提出一种面向飞腾迈创数字处理器的高性能的内核代码自动生成框架(automatic kernel code-generation framework on FT-Matrix),将飞腾迈创处理器的架构特性引入到多层次的内核代码优化方法中.该框架包括3层优化组件:自适应循环分块、标向量协同的自动向量化和细粒度的指令级优化.该框架可以根据硬件的内存层次结构和内核的数据布局自动搜索最优循环分块参数,并进一步引入标量-向量单元协同的自动向量化指令选择与数据排布,以提高内核代码执行时的数据复用和并行性.此外,该框架提供了类汇编的中间表示,以应用各种指令级优化来探索更多指令级并行性(ILP)的优化空间,同时也为其他硬件平台提供了后端快速接入和自适应代码生成的模块,以实现高效内核代码开发的敏捷设计.实验表明,该框架生成的内核基准测试代码的平均性能是目标-数字信号处理器(DSP)--的手工函数库的3.25倍,是使用普通向量C语言编写的内核代码的20.62倍.