为什么会闪电| 3人死亡属于什么事故| 感冒了可以吃什么水果| 琉璃是什么材质| 昕五行属什么| 肌醇是什么| 礼是什么意思| 配伍是什么意思| 什么的青草| 荷叶配什么减肥效果好| 睾丸癌是由什么引起的| 喉咙嘶哑是什么原因| 车票改签是什么意思| 皮疹是什么原因引起的| 虫草有什么功效| 清明节干什么| 内分泌失调是什么原因引起的| 紫玉是什么玉| 为什么会得近视眼| 睡觉流口水是什么原因引起的| 鹅吃什么| 晚上扫地有什么说法| 男生什么时候会有生理反应| 女人打呼噜是什么原因| 为什么广西女孩子好娶| 咳必清又叫什么| 岁运并临是什么意思| 眼镜框什么材质的好| rapper什么意思| 中统和军统有什么区别| 前列腺增大伴钙化灶是什么意思| 岗位性质指的是什么| cg是什么意思| 什么是对数| 走投无路是什么意思| 小孩子走神是什么原因| 心脑供血不足吃什么药效果最好| 职业年金有什么用| 胆汁反流是什么原因| 盆腔积液吃什么药效果好| 湿热体质适合喝什么茶| 非浅表性胃炎是什么意思| 什么是强迫症| 怀孕一个月内有什么反应| 55年属什么| 十月三十号什么星座| 六亲不认是什么生肖| 子宫增大是什么原因造成的| 做梦放鞭炮什么意思| 六月是什么星座的| 脾阳虚吃什么药| 阴阳八卦是什么生肖| 孤寡是什么意思| 天加一笔变成什么字| 完全性右束支阻滞是什么意思| 黄体破裂什么症状| 乳房痒是什么原因| 日皮是什么意思| 心脑血管挂什么科| 梦见掉牙是什么意思| 茉字五行属什么| 生菜有什么营养价值| dvd是什么意思| ur品牌属于什么档次| 肺看什么科室| 补充镁有什么好处| 小便发黄什么原因| 腔梗是什么| 补钙最好的食物是什么| 牙医靠什么吃饭| 铁剂不能和什么一起吃| 踢馆什么意思| 喉咙肿瘤有什么症状| 红鸾是什么意思| cnb是什么意思| 贾乃亮演过什么电视剧| 事无巨细是什么意思| 怀孕肚子上长毛是什么原因| 屠苏酒是什么酒| 虾头部黄黄的是什么| tvoc是什么意思| 什么叫点映| 道德制高点什么意思| 什么时候有胎心| 硬下疳长什么样| 白细胞满视野是什么意思| 戴字五行属什么| pa是什么| 东南五行属什么| 直采是什么意思| 倾字五行属什么| 真丝衣服用什么洗最好| 吃什么容易放屁| 无妄是什么意思| 滑膜炎是什么原因引起的| 才子是什么生肖| fasola是什么品牌| 霍启刚家族做什么生意| prbpm是什么意思| 小狗呕吐吃什么药| 南瓜和什么食物相克| point是什么意思| 脚脱皮用什么药膏| 舌根痛吃什么药好得快| 泥鳅什么人不能吃| 什么是喜欢什么是爱| 什么水果不能放冰箱| 为什么老是口腔溃疡| 脱肛是什么原因造成的| 脚掌疼是什么原因| 粉是什么做的| 体态是什么意思| 1942年属什么生肖属相| 淋巴挂什么科室| 桦树茸有什么功效| 房水由什么产生| 什么牌子的钙片好| 吃汤圆是什么节日| 萃的意思是什么| 小孩几天不大便是什么原因怎么办| 脸上白了一小块是什么原因| 龙吃什么食物| 什么的走| 矫正视力是什么意思| 子宫息肉有什么症状| 合肥原名叫什么名字| 小孩掉头发是什么原因| samsonite什么牌子| 流莺是什么意思| 三十六计的第一计是什么| 塞浦路斯说什么语言| 非你莫属是什么意思| 羊奶有什么作用与功效| 言字旁的字和什么有关| 好人是什么意思| 什么肉不含嘌呤| 什么方法避孕最安全有效| 什么是溺水| ca是什么意思| 儿童肠炎吃什么药| 月经淋漓不尽是什么原因| 父亲节什么时间| 12月15日是什么星座| 女人长胡子是什么原因| 异常灌注是什么意思| 美尼尔症是什么病| 燕窝有什么功能| lagogo是什么牌子| 老枞是什么茶| 太白金星是什么神| 嘴唇紫色是什么原因| 再创佳绩是什么意思| 什么是竖式计算| 男人做什么运动能提高性功能| 罴是什么动物| 凿壁偷光告诉我们什么道理| 什么能让虱子卵脱落| 点数是什么意思| 胃肠外科是看什么病的| 什么蔬菜吸脂减肥| 晚上总是做梦是什么原因引起的| 备孕需要做些什么准备| 金汤是什么汤| 儿童过敏吃什么药| 手麻木什么原因| 湿气重有什么症状| 求知欲的欲什么意思| 屈膝是什么意思| 麟是什么意思| 陆地上最重的动物是什么| 什么是钼靶检查| 枫树叶子像什么| ect是什么| 小确幸是什么意思| 什么叫肾功能不全| 十万为什么| 做梦掉牙齿是什么意思周公解梦| 梦见蛇是什么意思| 耳朵痒用什么药最有效| 结肠和直肠有什么区别| 肠胃炎吃什么水果比较好| 光年是什么单位| 苏字五行属什么| 小孩子肚子疼吃什么药| poems综合征是什么病| 肚子疼喝什么药| 梦见捡了好多钱是什么预兆| 甲状腺需要做什么检查| 胃老是恶心想吐是什么原因| 什么是射频| 息肉吃什么药可以消掉| 为什么来我家| 唯我独尊是什么生肖| 卤蛋吃多了有什么危害| 83年属猪是什么命| 有料是什么意思| 沙眼衣原体是什么| 888红包代表什么意思| 老气横秋是什么意思| 家里为什么有蟑螂| 早起眼皮肿是什么原因引起的| 胃发炎吃什么药好得快| 拔智齿后吃什么| 1972年是什么年| 巴宝莉属于什么档次| 股骨头疼痛吃什么药| 6月26日是什么星座| 耳朵真菌感染用什么药最好| 追什么| 人流后吃什么水果| slogan是什么意思| 择日是什么意思| 亚临床甲亢是什么意思| 五月11号是什么星座| 什么是孝| 朱雀玄武是什么意思| 或是什么意思| 私密是什么意思| 吃羊肉不能吃什么水果| 什么颜色显皮肤白| 空调感冒吃什么药| 扛扛的是什么意思| 友五行属什么| 面基什么意思| 支行行长什么级别| 头皮屑多是什么原因引起的| 检查怀没怀孕挂什么科| 精华液是干什么的| 扬长避短什么意思| 鸽子单眼伤风用什么药| 窦骁父母是干什么的| 生完孩子可以吃什么水果| 妇科炎症用什么药好| 梦见种地是什么意思| 喝羊奶有什么好处| 冬天用什么护肤品好| 肺炎吃什么药| 94属什么生肖| 准奏是什么意思| crocodile是什么牌子| 6月29什么星座| 早餐吃什么营养又健康| 吃什么增肥最快| 摩拳擦掌是什么意思| 内分泌失调吃什么调理| 右眼皮跳代表什么| 咽喉干燥是什么原因| 月经期吃什么水果| 孩子睡觉咬牙齿是什么原因引起的| zoom是什么| 脉滑是什么意思| 韩信属什么生肖| 花胶是鱼的什么部位| 心率快吃什么中成药| captain是什么意思| 天珠是什么| 什么是穿刺| 梦见吃雪糕是什么意思| 肺结节手术后吃什么好| 缴费基数是什么意思| 低蛋白血症吃什么最快| 站军姿有什么好处| 老板喜欢什么样的员工| 鹅口疮是什么样的图片| 百度

新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 如何用插值查找表简便实现FPGA的DSP功能

高位截瘫志愿者引领一个特殊团队奉献爱心

作者: 时间:2025-08-05 来源:网络 收藏
百度   三是妥善处理软资源的保护与共享之间的关系。

作为赛灵思的现场工程师,我常常问这样的问题:我们是否能够提供一款其功能可满足客户所有独特设计要求的内核。有时候内核会太大,太小或者不够快。有时,我们会开发一款能确切满足客户需求的内核,并迅速以CORE GeneratorTM商标推出。不过即便在这种情况下,客户仍然想要一套特定的功能,而且刻不容缓。在这些情况下,我常常建议他们使用我们器件中的插值来定制他们的功能。

(LUT) 实质上是一个存储元件,能够根据任何给定的输入状态组合,“查找”输出,以确保每个输入都有确切的输出。采用LUT来实现 DSP功能具有一些重大优势:

您可用诸如MATLAB?或Simulink?等高抽象层编程语言改变LUT内容。

您可以设计一项DSP功能来运行那些采用离散逻辑运算将极度困难的数学函数,比如l y=log(x)、y=exp(x)、y=1/x、y=sin(x) 等。

LUT还可轻松执行在可配置逻辑块 (CLB)l 芯片,以及嵌入式乘法单元或DSP48可编程乘法累加 (MAC) 单元方面可能要求过多资源的复杂数学函数。

不过,以这种方式使用LUT当然也会存在一些弊端。当您使用LUT来实现DSP功能时,您必须使用块RAM (BRAM) 元件。若执行函数 y=sqrt(x)(其中x 表示16位输入,y 表示18位输出),每个变量则需要约64个18KB BRAM单元。如果,比如说,您的目标是实现小型化Spartan?器件,或者您有太多的运算需要执行,无法为每个变量省出64个BRAM单元,建议您放弃这种需要如此大量BRAM单元的方法,从系统架构的角度来看,这种方法代价太大。

插值LUT方法不仅具有LUT方法在实现DSP功能时所带来的各种优势,而且无需使用太多BRAM单元。采用这种方法,您可以使用来自容量较小的 LUT (比如,1000字 LUT)的连续输出,线性地对其内插,以模拟更大容量的LUT。这样,您就可以实现比1000 字 LUT 更高的数值分辨率。此外,通过这种方法,仅需 1 个 BRAM、1 个嵌入式乘法器(或DSP48),以及少数几个CLB芯片便可实施控制逻辑,因此LUT的使用成本变得更加合理化。而且,从信噪比的角度来看,其数值精度也是非常让人满意。

当然,应用插值LUT (ILUT) 方法需要一定的技巧。举例来说,采用该方法执行y=sqrt(x) 函数时,可以清楚地显示ILUT在面积占用、时序和数值精度方面的性能。我们先大致看一下这个示例,然后我再讲解部分实例,说明如何使用这种方法来满足客户截然不同的需求,比如让传递函数呈非线性的传感器实现线性化,以及实施自适应有限脉冲响应(FIR) 滤波器以消除合成孔径雷达 (SAR) 图像上的斑点噪声。

图 1. System Generator for DSP中插值顶层方框图

使用System Generator for DSP进行设计

为在赛灵思上实施DPS算法,我借助了采用MathWorks Simulink基于模型设计方法的System Generator for DSP设计与综合工具。System Generator得益于赛灵思在Simulink 环境中的DSP模块组,可自动调用CORE Generator为DSP构建块生成高度优化的网表。Simulink是一种双精度浮点设计工具,而System Generator则是一款定点运算工具。不管怎样,您只要将这两种工具协同使用,就可以定义每个信号的总位数以及每个信号的二进制位置,从而在定点运算中巧妙处理分数。仿真结果周期精确、位真,因此您可以方便地将它们与MATLAB脚本或Simulink模块生成的浮点参考值相比较,以检查量化误差。

图1显示了System Generator中ILUT方案的顶层结构图。为让这个方法尽可能一般化,假设nx=16位中的输入变量 x 的取值范围为0≤x<1,因此其格式为“无符号16位加上二进制点右边的16 位”,也称为Ufix_16_16格式。最高有效位 (MSB) 和最低有效位 (LSB) 模块分别对应输入数据nb=10的最高位和nx-nb=6的最低位。这些信号被命名为x0和dx。y=sqrt(x) 输出则以ny=17位二进制数表示,格式为:Ufix_17_17。

图2显示了1000字小容量LUT通过双端口RAM模块的部署步骤。由于该模块系只读存储器,布尔常数模块We_const强制将写入归零。信号 X0和X0+1则用作ROM表上后续的两个地址。Data_const模块的零常数定义了任何ROM字的大小(即本例中的ny)。

下面的公式显示了以x0为x的最高有效位的情况下,如何在两个已知点(x0,y0)和(x1,y1)之间插入坐标为(x,y)的点:

注意X1和X0是这个小容量LUT的相邻地址,它们之间只隔了一个最低有效位。由于这个小容量LUT的地址空间为nb 位,那么该LSB的值为2-nb。

图2 System Generator for DSP中的小容量LUT图

图3 System Generator for DSP的线性内插图

内插步骤见图3。“Reinterpret”模块在不改变二进制表示法的情况下,可改变dx=x-x0信号。其重置了二进制小数点(从 UFix_6_0到UFix_6_6格式),并输出nx-nb位二进制数的一个分数,从而计算出 (x-x0)/2-nb 的值。

从硬件角度来看,这些模块什么都不占用。总的来说(且根据我们通过ILUT方法应用的函数类型),如果y1=0且y0=0,我们可以强制y1- y0=1,这样我们就可以得到1/2-nb而不是0。我们采用Mux、Rational、Constant和Constant1模块来执行这项工作。剩下的Mult、Add和Sub模块则执行线性内插公式。在本例中,我强制Mult模块的输出信号为17位分辨率,而非理论上要求的23位,因为总体数值精度对本试验来说已经足够。此外,由于y-sqrt(x) 函数呈单调递增,因此所有结果都无符号。换句话说,不同的函数需要对数据类型进行不同的精心调整,但不会与图3所示的原理相去甚远。

假定我们以Spartan-3E 1200(fg320-4)为目标器件,现使用ISE设计套件和System Generator for DSP 10.1 SP3版工具对其进行布局和布线,结果其所占用的资源的总体情况如下:

该设计完全流水线作业,可以在任何一个时钟周期提供新的输出。时延为10个时钟周期,最大数据速率达194.70MSPS(每秒百万采样数)。从数值精度来说,对1000或2000字ILUT而言,参考浮点结果与System Generator for DSP定点输出的量化误差之间的比值,即信噪比分别为 71.94dB或77.95dB。

除ILUT外,我们还可应用赛灵思System Generator for DSP提供的Reference Math Blockset(参考数学模块组)中的CORDIC SQRT模块。在本例中,总时延为37个时钟周期,最大数据速率达115.18 MSPS,区域资源占用为940片触发器,总共有885个四输入LUT,560个占用的芯片以及两个MULT 18x18嵌入式乘法器。信噪比为40.64dB。这些结果显示CORDIC是实施定点数学运算的理想方法,但ILUT在许多方面更加出色。

线性化非线性传感器

目前许多企业在工业控制系统中使用“智能传感器”,以满足低占用面积、低功耗、高性能、最低成本以及最短开发时间等要求。通用智能传感器可视为一个由传感器及其信号控制线路、模数转换器 (ADC) 、带或不带嵌入式处理器的相关DSP子系统组成的功能组件,所有这些功能块都集成在的同一器件上,如图4所示。

智能传感器的目的是将物理量(如电机中的电流)转化为数字电路能够处理的数字信号。构建这类传感器所采用的技术及组件的某些特性通常会导致诸如失调、增益和非线性等误差,进而导致总体传递函数呈非线性。

一般来说,客户会校正他们产品中运行的DSP子系统所出现的上述误差。如果 y=f(x) 是来自传感器和ADC级联的数字输出信号,那么DSP必须执行其反函数g(y)=f-1(y) 来补偿非线性函数,这样总体输出z即为:

这是直线方程,其斜率为m,纵截距为b。

智能传感器的方框图

图4. 智能传感器的方框图

最简单的线性化方法是LUT法,采用存储在ROM中的传感器校准点。不过,对16位的ADC来说,ROM显得过大了,且需要64个BRAM单元。而内插LUT则不然,是一个良好的解决方案。

举例来说,我们假定非线性传递函数是一条抛物线。下一 MATLAB分段码说明了如何生成最终直线的m和b参数,以及如何计算 g(y)(即 f(x) 的反函数)。图5用三种颜色显示了三条不同曲线。请注意在计算 f(x) 的反函数 g(y) 过程中会丢失一些值。这是因为有几个y值相同的点对应着不同的x点。因此,需要对 g(y) 进行平滑化,填补所有缺失的点。(为精确起见,我没有把这部分运算包括在MATLAB分段码中)

图5.黑色抛物线表示非线性传感器传递函数f(x) 的曲线;绿色直线表示线性化DSP子系统获得的最终线性传感器传递函数曲线;蓝色抛物线则表示反函数g(y) 的曲线。

我采用非常类似于图1-3的设计,在System Generator for DSP中运行基于定点周期的仿真,在非线性传感器的总体输出范围内得到了92.48dB的信噪比。

斑点噪声消除

跟踪高速运动系统的目标物体(比如导弹)是一项极富挑战性的工作,需要非常复杂的DSP算法以及诸如合成孔径雷达 (SAR) 等各种不同类型的探测介质。作为典型的相干电磁源(如激光),SAR成像器件也受斑点噪声的影响。因此,任何基于SAR的DSP链的第一级都是二维 (2D) 自适应FIR滤波器,用以降低这种噪声(但不可能完全消除)。图6显示了斑点噪声的MATLAB仿真。该噪音对左边图像的画质造成了综合性的不良影响。右边的图像是2D FIR滤波器黄金模型的输出结果。

斑点噪声对左边图像画质造成了影响,右边的是滤波后的图像

图 6. 斑点噪声对左边图像画质造成了影响,右边的是滤波后的图像

斑点噪声是一种倍增噪声,呈指数分布,完全由其方差值σ决定。因此,广泛使用的抗斑点噪声的方法就是Frost滤波器(由发明者 V.S.Frost的名字命名而来)。V.S.Frost 在1981年发表的论文对这个现象进行了探讨。在一个3x3的矩阵中,可以用下列公式进行建模:

其中xij和yij分别代表Frost滤波器的输入和输出采样。K 是控制滤波强度的增益系数(为方便起见,我在下面假定K=1),μ1和σ分别是2D内核的平均值和方差值,Tij是中心输出像素(系数ij=22)及所有周边像素的距离矩阵。下面的等式说明实施这个滤波器的关键因素是R1,即3x3矩阵中的一阶μ1和二阶μ2之间的比值:

R1的取值范围在0和1之间。根据实验发现要取得良好的数值精度,R1可以使用16位至20位二进制数来表示。

我在system Generator for DSP中设计R1计算步骤后,我决定通过内插LUT来实施滤波系数的归一化。LUT的内容以下列MATLAB代码表示:

图7显示的是归一化后的系数沿R1输入信号分布的曲线。这里只有三条曲线,因为 Tij矩阵在系数 ij=22的中心像素周围呈对称分布。根据曲线,与纯浮点参考模型相比,数值结果显示信噪比介于81.28至83.38dB之间。对有兴趣的读者,下面的 MATLAB分段码说明了2D滤波器的处理过程(为简便起见,没有包括ILUT函数)。

沿斑点噪声降噪滤波参数R1分布的归一化系数

图7 沿斑点噪声降噪滤波参数R1分布的归一化系数

简言之,这些例子说明插值查找表是实施赛灵思FPGA的DSP功能的简便而强大的方法。插值查找表可帮助您在保持面积占用相对较低的情况下实现极高数值精度 (SNR) 和高数据速率。

合成孔径雷达相关文章:合成孔径雷达原理


关键词: 查找表 DSP FPGA

评论


相关推荐

技术专区

关闭
乐五行属性是什么 脉沉细是什么意思 忌诸事不宜什么意思 人为什么会得白血病 舍本逐末是什么意思
勺子是什么意思 为什么不来大姨妈也没有怀孕 慢性咽炎用什么药 人加三笔是什么字 促甲状腺素低是什么原因
blub是什么意思 岑岑是什么意思 前列腺挂什么科 维生素c偏高是什么原因 舌头紫红色是什么原因
内径是什么意思 什么的公园 羊奶有什么作用与功效 乳腺结节不能吃什么 为什么一直不怀孕是什么原因
低钾有什么症状和危害hcv9jop7ns4r.cn 梦见什么是怀孕的征兆hcv8jop7ns5r.cn 运六月有什么说法hcv7jop4ns8r.cn 扶正固本是什么意思hcv9jop0ns5r.cn 吃什么对肾有好处hcv8jop6ns0r.cn
手莫名其妙的肿了因为什么hcv8jop7ns9r.cn 不好意思是什么意思hcv7jop5ns1r.cn 一直咳嗽不好是什么原因hcv8jop4ns6r.cn 胎儿头偏小是什么原因引起的luyiluode.com 为什么会得红斑狼疮hcv9jop2ns3r.cn
火红火红的什么hcv7jop5ns2r.cn 学痞是什么意思hcv7jop6ns5r.cn 工匠精神是什么beikeqingting.com mido手表什么牌子xianpinbao.com 娃娃脸是什么意思hcv7jop9ns9r.cn
为什么叫买东西不叫买南北hcv8jop0ns0r.cn gu是什么品牌hcv9jop4ns3r.cn 鹿象征什么寓意jasonfriends.com 副乳挂什么科xjhesheng.com 堆肥是什么意思hcv9jop0ns2r.cn
百度