0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

根据实例来介绍程序定点化的复杂度和重要性

通信工程师专辑 来源:未知 作者:易水寒 2018-07-06 14:40 次阅读

和同学们一起交流程序定点化过程中的经验,这对同学们的学习很有帮助。本堂课不讲解具体的理论内容,而是从一个实际的文档案例来说明定点化的复杂度和重要性。

定点化是程序走向实用的必经之路。

大多芯片都是在定点运算中发挥速度优势。现在信号处理要求的实时性要求高,所以浮点程序定点化是必须完成的过程,还要保证性能几乎没有变化。

课程《数字信号处理》中有一章专门讲这方面的知识,可见其有多重要。

先看看文档内容吧!

1.设计与调试总结

1.1.有关verilog HDL

1.1.1.二进制补码取反

既是双目的减法运算符,也可演变为单目运算符得到原值的二进制补码。

1.1.2.二维数组

假设对于一个位宽为wordsize,长度为memsize的二维数组由如下定义:

reg [wordsize-1:0] mem[memsize-1:0];

如果想单独读取二位数组中地址为addr的某个字,那么addr只能是模块内部产生的变量,而不能是外部输入。

1.1.3.带符号移位操作符

使用verilog HDL语言中的带符号移位运算符“>>>”和“<<<”时,需要设置变量为signed型,否则带符号移位无效。

1.2.CIC经验总结

1.2.1.CIC阶数对下变频器频率响应的影响

实际测试表明5级的CIC滤波器的频率响应性能大大好于3级CIC滤波器,由于1005#电台有较严格的频率响应指标,必须使用5级CIC滤波器。

1.2.2.CIC运算位宽的确定

CIC滤波器中由于存在积分单元,因此计算结果溢出在所难免。由于二进制补码对数据的溢出能够进行自动补偿,所以如果数据采用补码的形式进行运算,对积分器的溢出问题可以不用考虑。在多级CIC级联的情况下,为了保证不至于因为寄存器溢出而导致的数据的丢失,需要对寄存器进行位数的扩展,这就涉及到寄存器最大长度的问题。

1.3.FIR经验总结

1.3.1.FIR滤波器的设计

生成FIR滤波器的matlab语句为:

fir_coef = fir1(255,0.18,'low',chebwin(256,110));

使用窗函数法设计滤波器。

第一个参数是滤波器的阶数。

第二个系数是截止频率,这是一个介于0和1之间的数。假设实际截止频率是F,采样率是Fs,那么函数中第二个参数为 本文的FIR,截止频率是电台要求的3.2KHz,采样率是36KHz。通过公式计算约为0.1778,因此设为0.18,即实际截止频率比3.2KHz稍大。因为之后的DSP处理还有带通滤波器,将会把上截止频率严格限制在3.2KHz。但是该值也不可以太大,截止频率越大,就会有更多的噪声进入音频信号,从而使电台的灵敏度指标恶化。

第三个参数是滤波器类型,可以设为低通滤波器low,高通滤波器high和带通滤波器bandpass。

第四个参数是窗函数的类型,默认为汉明(Hamming)窗,同样还可以设计为KAISER或者切比雪夫窗。本文中的FIR采用切比雪夫窗。切比雪夫窗的使用方法是CHEBWIN(N+1,R),其中N是FIR的阶数,R是带外抑制度,单位是dB。带外抑制越高,电台的灵敏度和阻塞指标越好。

上述内容是一位研究生所写,从文档中可以看出理论知识即使学的好,也需要在实践中去应用。知识只有应用了才能得到真正的提高和理解。

休息一下!

没有定点化的过程,

就很难完成实际的产品

学过DSP和FPGA的人自然能明白!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 二进制
    +关注

    关注

    2

    文章

    705

    浏览量

    41248
  • 信号处理
    +关注

    关注

    47

    文章

    854

    浏览量

    102505
  • 程序
    +关注

    关注

    114

    文章

    3630

    浏览量

    79527

原文标题:数字信号处理之信号处理仿真 第三章 程序定点化(1)

文章出处:【微信号:gh_30373fc74387,微信公众号:通信工程师专辑】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于纹理复杂度的快速帧内预测算法

    为降低帧内预测的运算复杂度,根据不同的模式在宏块中出现概率的大小不同,在帧内4×4的亮度预测模式中,选取出现概率最大的5种预测模式,作为优先选择的预测模式。基于像素块的纹理特性,选择不具有
    发表于 05-06 09:01

    一种新的定量评估电磁环境复杂度方法

    和分布熵的加权相加,仿真结果表明了复合熵值符合上文四个原则。各熵值的权值可根据实际应用需求而定。3 结束语本文针对跳频信号分选,定义的“复合信息嫡”实现了定量了评价电磁环境复杂度,仿真结果表明了方法的有效。以信息熵作为电磁信号
    发表于 07-11 22:35

    嵌入式视频教程之软硬件关系的复杂度

    创客学院在这里和读者介绍嵌入式视频教程之软硬件关系的复杂度?  嵌入式视频教程之软硬件关系的复杂度:  嵌入式系统通常是一个包含微处理器的特殊计算机系统,是一个较大系统或设备的组成部分,它在很大程度
    发表于 06-27 09:30

    嵌入式视频教程之软硬件关系的复杂度

    创客学院在这里和读者介绍嵌入式视频教程之软硬件关系的复杂度?  嵌入式视频教程之软硬件关系的复杂度:  嵌入式系统通常是一个包含微处理器的特殊计算机系统,是一个较大系统或设备的组成部分,它在很大程度
    发表于 06-29 16:03

    嵌入式视频教程之软硬件关系的复杂度

    创客学院在这里和读者介绍嵌入式视频教程之软硬件关系的复杂度?  嵌入式视频教程之软硬件关系的复杂度:  嵌入式系统通常是一个包含微处理器的特殊计算机系统,是一个较大系统或设备的组成部分,它在很大程度
    发表于 07-05 09:59

    请问对12.918做无损定点化,最小位宽是多少?

    前些天做了大疆的笔试题,有一个问题是对12.918做无损定点化,最小位宽是多少?在网上看了别人的解答,但是感觉都不太对,比如下面这种。以12位,能表示的最小精度为 1/(2^12),12.918
    发表于 07-27 10:00

    JEM软件复杂度的增加情况

    这篇文档展示了几个机构关于JEM软件复杂度的增加情况的看法,特别提出来创立一个新的Ad-hoc组,研究降低软件一般复杂度的可能方法。
    发表于 07-19 08:25

    使用ODDR原语的重要性是什么?

    你好我将virtex5 LX50与具有应根据standardEIA / TIA-644 LVDS规范终止的输出数据的设备连接起来我在用着IBUFDS用于将输入LVDS转换为LVTTL,OBUFDS用于输出信号和时钟这是这样做的正确方法为此目的使用ODDR原语的重要性是什么
    发表于 06-17 14:59

    时间复杂度是指什么

    原理->微机原理->软件工程,编译原理,数据库数据结构1.时间复杂度时间复杂度是指执行算法所需要的计算工作量,因为整个算法的执行时间与基本操作重复执行的...
    发表于 07-22 10:01

    操作系统的重要性如何?

    明白你学习操作系统的目的是什么?操作系统的重要性如何?学习操作系统会给我带来什么?下面我会从这几个方面为你回答下。操作系统也是一种软件,但是操作系统是一种非常复杂的软件。操作系统提供了几种抽象模型文件:对 I/O 设备的抽象虚拟内存:对
    发表于 07-23 08:26

    时钟的重要性

    运行执行指令,才能够做其他的处理 (点灯,串口,ADC),时钟的重要性不言而喻。为什么stm32需要多个时钟源?STM32本身十分复杂,外设非常多但我们实际使用的时候只会用到有限的几个外设,使用任何外设
    发表于 08-13 07:31

    时钟系统的重要性

    时钟系统就是CPU的脉搏,像人的心跳一样,重要性不言而喻。由于STM32本身十分复杂,外设非常多,但并不是所有的外设都需要系统时钟那么高的频率,比如看门狗以及RTC只需要几十k的时钟即可。并且
    发表于 08-20 07:59

    各种排序算法的时间空间复杂度、稳定性

    各种排序算法的时间空间复杂度、稳定性一、排序算法分类:二、排序算法比较:注:1、归并排序可以通过手摇算法将空间复杂度降到O(1),但是时间复杂度会提高。2、 基数排序时间复杂度为O(N
    发表于 12-21 07:48

    浮点模型的定点化到产品级代码的生成

    浮点模型的定点化到产品级代码的生成 浮点转换为定点是嵌入式软件开发中的一个重要步骤,这项工作非常繁琐,需要大量人力并且容易产生错误。用浮点数学设计的
    发表于 01-04 13:24 3172次阅读

    根据实例介绍程序定点化的面目和定浮点转换的概念详细资料概述

    讲了定点化复杂度重要性,自然就要让大家看看定点化程序的面目!在实际教学中,我发现定浮点转换的概念是同学们的薄弱环节,后续在课程《数字信号
    的头像 发表于 07-06 14:48 4103次阅读
    <b class='flag-5'>根据实例</b>来<b class='flag-5'>介绍</b><b class='flag-5'>程序</b><b class='flag-5'>定点化</b>的面目和定浮点转换的概念详细资料概述