FPGA数字信号处理
文章平均质量分 94
使用FPGA完成数字信号处理的基本工作
black_pigeon
想要成为一个FPGA工程师
展开
-
数字信号处理基础----xilinx除法器IP使用
前言在进行数字信号处理的时候,计算是必不可少的,通常情况下,能够不用乘法器和除法器就不用乘除法器,可以采用移位和加减法的方式来完成计算。但在一些特殊情况下,希望采用乘除法,这时候在FPGA当中就需要专用的IP了。乘除法在FPGA当中实现起来是比较困难的一件事情。若直接在verilog 代码中使用了乘法或者除法,其实最终对应到电路中,要么是采用大量的block ram来实现,要么是占用DSP资源。这种情况下,对资源的占用是拿捏不准确。因此需要使用专用的乘除法器来实现乘除法。1. 数据的表示1.1原码,反原创 2020-12-24 17:53:39 · 5672 阅读 · 2 评论 -
数字信号处理基础----FM的调制与解调(1)
FM调制与解调的数学原理原创 2020-12-18 10:57:12 · 61304 阅读 · 6 评论 -
FPGA数字信号处理基础----ASK解调的判决门限与抽样
前言 ASK是最简单的一种数字调制方式,对ASK信号的解调一般是通过包络检波的方式来完成的,在得到信号的包络之后,需要将ASK的信息从包络中恢复出来,有两件事情比较重要,分别是判决门限来决定信号的具体取值,抽样来决定具体在什么时刻对信号进行取值。 在信号的解调过程中,信号的判决门限和抽样稍微有点复杂。因此需要记录一下。1. 判决门限的获取 对于判决门限的获取,当信号的速率较高的时候,可以使用求均值的方式,来对获取信号的判决门限,但是当信号速率比较慢的时候,再采用求均值的方式,将会消耗较多的资源原创 2020-12-02 17:45:48 · 8368 阅读 · 2 评论 -
FPGA数字信号处理基础----HLS生成平均滤波器
前言 在对数字信号进行解调或者滤波的时候,经常会使用均值滤波器。均值滤波器也是一种低通滤波器,均值滤波器能够使信号变得更加平滑,有效地减小噪声对信号的影响。使用HLS或者FPGA来实现均值滤波器都是比较简单的,在这篇博客中就使用HLS来完成均值滤波器的设计。1 HLS设计均值滤波器1.1 滤波器实现模块 均值滤波器的设计比较简单,就是将输入的数据进行延时,累加之后求一个平均值就可以了。均值滤波器的设计跟FIR滤波器的设计其实是一样的。void mean_filter(ap_int<32&原创 2020-12-02 15:31:14 · 1095 阅读 · 0 评论 -
FPGA数字信号处理基础----AD936x接口
前言 AD9361是一个集成度很高的通信芯片,使用这个芯片能够方便快速地完成通信相关的设计。原创 2020-11-30 10:48:38 · 6174 阅读 · 1 评论 -
FPGA数字信号处理基础----使用HLS设计FIR滤波器
前言 FIR滤波器,是在做数字信号处理中会经常使用到的一个结构,该滤波器具有线性相位的特性,且其结构是对称的结构,实现起来相对来说比较容易。在前面数字信号处理基础中,已经记录了有关FIR滤波求是如何来实现的,以及其背后的原理。现在需要在代码中来实现这个结构,其中最重要的就是通过Matlab来生成对应滤波求的抽头系数。1. Matlab生成系数 在Matlab中,有专门用于生成滤波器系数的工具FilterDesigner(FDATool),使用这个工具能够很轻松的就设计出一个滤波器。同样的也可以使用原创 2020-11-16 19:35:39 · 1420 阅读 · 0 评论 -
FPGA数字信号处理基础----使用HLS生成信号
前言 HLS 是Xilinx推出的高层次综合工具,可以用来加速算法的设计。我在之前,用这玩意儿做了些简单的图像算法的处理的,感觉还是比手撸Verilog代码要来的快一点,正好现在在学习数字信号处理,先拿HLS来进行一些简单的算法验证还是可以的。1 使用HLS生成正余弦波形1.1 使用matlab产生ram 中存储的波形数据 产生正余弦信号的波形,其中采样频率40MHz,正余弦的频率为1.25MHz。生成将一个周期内的正余弦数据进行保存。clear all; close all; clc;Fs原创 2020-11-16 13:21:15 · 1445 阅读 · 0 评论 -
FPGA数字信号处理基础----Xilinx DDS IP使用
前言 用RAM实现一个DDS,从原理上来说很简单,在实际使用的时候,可能没有直接使用官方提供的IP核来的方便。这个博客就记录一下,最近使用到的这个DDS IP。1 基于相位截断的DDS DDS IP核的内部的基本结构如下图所示,主要是一个基于相位截断的DDS。在数字信号处理中,经常会使用到DDS,其内部主要有一个相位累加器,一个ROM存储这正弦波的查找表。相位累加器在时钟的作用下对相位进行累加,每次的累加值是通过phase increment 来指定的。累加得到的结果,通过量化器,取其高位,低位舍原创 2020-11-11 15:34:02 · 7195 阅读 · 3 评论