“硬限幅”的概念

来源:互联网 发布:云计算架构与实践 pdf 编辑:程序博客网 时间:2024/04/30 15:59

在某些时候,由于某些数据符号位太多,截位时我们需要截掉高几位的符号位,但截高位时就需要注意一个问题:硬限幅!

硬限幅的概念可以直观的用如图看出:

如图所示,下面的正弦波就是上面正弦波的一个硬限幅。

这样做有如下好处:虽然你认为你截掉的都是符号位,但难免还是会有一些数较大,比如上图中正弦的被截掉的那些值,硬限幅可以使这些过大的数不改变自己的符号位,只是在幅度上有一些失真。

例如:

对于一个5bit表示的有符号来讲,它的范围是-16~15,若已知大部分数用4bit就可以表示,即范围在-8~7之间,就可以截掉一位符号位,这样在硬件编号时可以节省FPGA资源。但是若突然来了一段范围在8~15之间的数,它们的二进制表示均为01000~01111之间,若直接将高位截去,则这些数将被截成1000~1111,这将变成负数,即变成-8~-1之间的数值,这对信号处理是有较大影响的,因此做硬限幅是很有用的。

这时如果要做硬限幅,可以这样来做:判断高两数是否一样,即是否均为符号位,如果一样,则直接可以将最高位扔掉,但如果高两位不一样,则判断最高位为1还是为0,如果是1,则代表是负数,变为-8,如果最高位是0,则代表是正数,变为-7,这样就做了硬限幅。

当然,有些研究指出,不能存在-8这个值,因为正数中没有+8与其对应,这将导致信号引入直流分量,当位数较多时不明显,因为数值比较大,但当位数较少比时,则会比较明显,因为相差1则是一个比较大的差别,因此当遇到-8时,统一将其变成-7,这个没有过多的研究,知道这么回事吧。

原创粉丝点击