4 基于RISC-V的RedCap DSP在5G基带中的应用
4.1 基带处理器的关键任务和性能需求
基带处理器是移动通信设备中的关键部件,负责处理无线信号,包括信号的接收、发送和处理。在5G通信系统中,基带处理器的关键任务和性能需求包括以下几个方面:
- 信号调制与解调:基带处理器需要具备将信号从模拟信号转化为数字信号(解调)或将数字信号转化为模拟信号(调制)的能力。在5G中,采用了多种新型的调制方式如QPSK、16QAM、64QAM等,以提升频谱效率和数据传输速率。
- 信道编码与解码:为了提高通信的可靠性,基带处理器还需要进行信道编码和解码。通过添加冗余信息,信道编码可以提高信号的鲁棒性,降低误码率。而解码则是从接收到的信号中提取出有用的信息。
- 数字信号处理:基带处理器还需要进行数字信号处理,包括但不限于滤波、FFT/IFFT、判决反馈均衡等操作。这些操作有助于减小噪声干扰、提高信号的接收灵敏度以及补偿信号传播过程中的损耗。
- 高性能与低功耗:由于移动设备的电池寿命有限,因此基带处理器需要具备高性能和低功耗的特点。这有助于延长设备的续航时间,并满足5G通信系统对于高速数据传输和处理的需求。
- 安全性与可靠性:基带处理器还需要具备一定的安全性和可靠性。这包括硬件安全措施(如加密/解密、防篡改等)和软件安全措施(如访问控制、数据备份与恢复等)。同时,基带处理器还需要满足相关的可靠性指标,以确保设备的稳定运行和数据的可靠传输。
基带处理器在5G通信系统中扮演着关键角色,需要具备多种功能和性能以满足系统的需求。
4.2 5G RedCap基带信号处理流程
5G RedCap基带信号处理流程如下图所示:
- RX DFE/TX DFE: 接收机数字前端电路,用于处理射频前端的采样后的数字信号;
- CSM: 小区搜索,同步跟踪和测量处理单元;
- EST: 信道估计单元;
- PBCH/PDCCH/PDSCH DEM:下行解调单元;
- PBCH/PDCCH/PDSCH DEC:下行解码单元;
- Polar/LDPC Decoder:下行Polar/LDPC解码;
- PUCCH/PUSCH DEM:上行调制单元;
- PUCCH/PUSCH DEC:上行编码单元;
- Polar/LDPC Encoder:上行Polar/LDPC编码;
基于信号处理信号处理算法的稳定性和复杂度需求,CSM和EST模块最适合采用软件处理,DEM、DEC、MOD、ENC模块也可以考虑采用软件处理。
针对5G RedCap基带处理中需要的信号处理,选取了一些常见的 算法进行介绍并分析算法,之后针对 DSP应用的运算设计出若干用于加速数字信号处理相关应用的指令。
4.3 FIR 滤波器
滤波器是一种选频装置,在数据采集和分析中具有很多应用,它们通过放大 或减小某些频率来改变时间信号的频率成分35,36]。对于大多数处理器,只需要使用循环就可以完成 FIR 计算。L 阶或者长度为L 的 FIR 输出对应于输入时间序列 x[n]的关系由一种有限卷 积和的形式给出,具体形式在公式4.1中给出,其中从f[0]≠0 一直到f[L-1]≠0 均是滤波器的L 个系数,同时它们也对应于FIR的脉冲响应。
图4.1为L 阶直接型 FIR 滤波器的示意图。可以看出, FIR 滤波器由一个“抽 头延迟线”加法器和乘法器的集合构成。给每个乘法器提供的其中一个操作数就
是一个 FIR 系数。对于直接型 FIR 滤波器来说,需要进行大量的一维卷积运算,也就是乘法和加法。
图4.1 直接型 FIR 滤波器
4.4 图像处理
1. 边缘检测
边缘检测的目的是标识数字图像中亮度变化明显的点。图像属性中的显著变 化通常反映了属性的重要事件和变化。这些包括深度上的不连续、表面方向不连 续、物质属性变化和场景照明变化。边缘检测是图像处理和计算机视觉中,尤其是特征检测中的一个研究领域。计算机视觉在对图像的处理过程中,需要从图像中辨别所要识别的物体,为 了实现这一目标,就必须要分析出图像的轮廓。因此在图像处理中需要经常使用 到边缘检测,用于把图像中的目标从背景中识别出来,然后再将其分离,进行下一步的处理。为了实现准确的边缘检测,图像边缘检测通常采用滤波的方法。图像边缘检测大幅度地减少了数据量,并且剔除了可以视为不相关的信息, 保留了图像重要的结构属性。边缘检测的基本方法有很多,但是总体而言,就是使用算子对原图像进行卷积并最终得到处理后的图像。
2. 高斯模糊
对图像的模糊处理是游戏以及系统界面等广泛使用的一种处理效果,图像处 理软件对其也有良好的支持。对图像的模糊可以使图像看起来更加平滑,细节层 次的过度不那么明显。图像模糊处理的一种常见算法是高斯模糊算法。高斯模糊 算法处理出来的图像与在摄影中由于浅景深所导致的焦外成像效果并不相同,它更接近于透过毛玻璃观看所产生的图像。高斯模糊之所以叫高斯模糊,是由于它运用了高斯的正态分布的密度函数,从数学的角度来看,图像的高斯模糊过程就是图像与正态分布算子做卷积。
3. 总结
上述两种图像处理应用从实现上来讲都是使用算子对图像进行卷积而生成结 果或者新的图像。与 FIR 滤波器相比较,FIR滤波器是一维的算子 (FIR系数)和一维的数据进行一维卷积,而上述图像处理则是用二维的算子和二维的数据进行二维卷积。
4.5 快速傅里叶变换
傅里叶变换用于将信号从时域转换到频域,是一个能提供另一个视角的工具。 有些信号在时域上是很难看出什么特征,但是如果变换到频域之后,就很容易看 出特征了。因此,在数字信号处理的领域通常需要对信号进行从时域到频域的转 换。在计算机系统中,由于计算的点是离散的,想要进行傅里叶变换就需要做离 散傅里叶变换,而快速傅里叶变换就是为了加速离散傅里叶变换所产生的一类算 法。原先的 DFT 算法的复杂度是 O(N²), 而快速傅里叶变换则将复杂度将为了O(NlogN)⁴3]。快速傅里叶算法的基本运算是蝶形运算,快速傅里叶变换就是由若干级的蝶形运算迭代而成,图4.2 即为快速傅里叶变换中的蝶形运算。
图4.2 快速傅里叶变换中的蝶形运算
以按时间抽取的8点基2快速傅里叶计算为例,其算法如图4.3所示。可以看 到,首先进入蝶形运算的数据并不是顺序的,而是进行了重新排序。从数据的二 进制序号来看,是将码位进行了倒序。在顺序排列的情况下二进制数从0到7分 别是000、001、010、011、100、101、110、111,经过倒序之后的二进制码变为
000、100、010、110、001、101、011、111,即0、4、2、6、1、5、3、7。
图4.3 按时间抽取的8点基2快速傅里叶算法
对数据重新排序之后,就可以对数据进行蝶形运算。图中按时间抽取的8 点 基 2 快速傅里叶计算共需要进行三级的蝶形运算,其中第一级参与蝶形运算的 两个数据之间的距离是1,第二级参与蝶形运算的两个数据之间的距离是2,第三 级参与蝶形运算的两个数据之间的距离是4。更通常地说,对于2°点快速傅里叶变换,蝶形运算共有n 级,并且第k 级蝶形运算的两个数据之间的距离是2K¹。
4.6 针对5G RedCap信号处理算法的专用指令集扩展与应用
针对5G信号处理算法的专用指令集扩展与应用可以从以下几个方面展开:
- 专用指令集扩展:为了更好地支持5G信号处理算法,可以对现有的指令集进行扩展。例如,可以增加针对5G特有的信号处理算法的指令,如基于傅里叶变换的频域信号处理指令、基于向量运算的信号处理指令等。同时,还可以考虑增加一些专用指令来优化算法的实现,如特定的滤波器设计、快速傅里叶变换等。
- 异构计算能力扩展:5G信号处理算法需要处理的数据类型和数据格式更加多样化,因此需要指令集能够支持异构计算能力。内存访问优化:5G信号处理算法需要处理大量的数据,因此需要优化内存访问以减少数据传输的开销。可以通过引入特定的指令来支持缓存、预取等技术,以提高内存访问的效率。
- 安全和可靠性优化:5G信号处理算法需要具备较高的安全性和可靠性。可以通过在指令集中增加安全和可靠性相关的指令和机制,如加密/解密、防篡改、错误检测与纠正等,来提高处理器的安全性和可靠性。
- 支持软件可编程性:为了适应不同的应用需求,可以在指令集中增加对软件可编程性的支持。例如,可以支持更多的编程语言和编译器技术,以方便用户进行算法开发和优化。
针对5G信号处理算法的专用指令集扩展与应用需要考虑算法的需求和硬件架构的特点,通过优化指令集架构和扩展功能来提高处理器的性能、效率和安全性。同时还需要与相关的软硬件开发商合作,共同推动指令集的发展和应用。
支持在基本指令集之上的专用指令,以便进一步加速各种算法,并在面积和性能以及代码大小效率。增强指令可以在IP硬件安装阶段,包括不同算法的说明以及Viterbi、FFT、解扩器、32x32型ISAs、伪浮点和三角函数Xtend HW(VXHT)机制。