FIR IP核使用

1、 系数由matlab中的fdatool产生,放入coe文件中,

radix=10;
coefdata=
-0.062121140095564 ,  …………-0.049142699407068;

2、可以选择滤波器的类型,此处选择插值滤波器,插值倍数设为8.

3、时钟: input sampling frequency   输入该滤波器数据的采样速率。

clock   frequency    fir IP核的工作时钟,

他们之间的关系为   clock   frequency  >   input sampling frequency * N (N 插值倍数)

1、 输入系数位宽和小数点位数

输入系数位宽是系数文件导入后自动生成的,系数小数点位宽可以自动生成,也可以自己设定。比如在系数文件中,第一个数据为-0.062121140095564 。但是在FPGA中,      没有小数的概念,所以coefficient  fractional  系数小数位也就是将系数左移了17位

2、输入数据位宽。原始数据的位宽是9比特,但是为了提高精度,将数据左移 12位(input  data fractional bits)。assign  data_fir = {data_source , 12‘d0};在matlab中,左移12位,就是乘以2^12. xilinx中,输入数据小数位是多少,就需要将原始输入数据左移多少位。

3、输出数据位宽。输出数据小数位位宽为29 = 12+17. 如果要将matlab中的数据和xilinx中的数据对比,就需要将matlab中的数据左移17位。有的时候需要将输出数据位宽截取N位,,则matlab中左移位数为17 -N。

上面的设计应该和matlaB对应,经过测试,matlaB结果和ISE仿真结果基本一致(matlaB是浮点操作,FPGA是定点操作,有出入)。

在matlaB中,使用fdatool

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

一直以为我上面说的是插值滤波器,其实不是。插值的方法有很多啊,CIC插值,半带滤波器等。这个滤波器其实是一个多相滤波器的列子。该滤波器的IP核也可以设置为不同的模式,比如 单速率FIR滤波器,插值滤波器,多相抽取滤波器,多相插值滤波器,多相滤波组发射机,多相滤波器组接收机以及半带滤波器等。有一个问题不明白,下面设置中是怎么设置半带滤波器的?

根本就没有嘛,但是自己的DATASHEET中却明明有介绍。实现半带滤波器是这样的:

1、首先,你导入的COE文件要是半带滤波器的格式。

2、如果你导入的文件是半带滤波器的格式,那么第二个配置界面会有如下变换.

时间: 2024-10-27 13:15:32

FIR IP核使用的相关文章

quartus FIR IP核使用 FIR II

摘要:虽然网上有很多fir的使用博客,但是呢?本文的fir是基于最新的IP核 fir  II 来说的.在新版的软件中,搜索fir只剩下fir II 了...本文仅说明该IP的参数怎么设置,如何使用,在此笔者已经验证过了,大家可以自行到硬件上验证. 原文地址:https://www.cnblogs.com/cofin/p/10220648.html

quartus ip核破解

在证书文件中添加一段: FEATURE 6AF7_0012 alterad 2035.12 permanent uncounted E75BE809707E VENDOR_STRING="iiiiiiiihdLkhIIIIIIIIUPDuiaaaaaaaa11X38DDDDDDDDpjz5cddddddddtmGzGJJJJJJJJbqIh0uuuuuuuugYYWiVVVVVVVVbp0FVHHHHHHHHBUEakffffffffD2FFRkkkkkkkkWL$84" HOSTID

Quartus设计FIR滤波器的系数文件格式(适用于FIR II的IP核)

对常用的FIR,我们使用MATLAB的fdatool(或者filterDesigner) 设计滤波器,给定指标,生成系数.为了方便,我们将系数保存到文件,其保存格式比较简介,在此进行说明. 1.FIR II可以读取的文件,格式为系数+逗号,例如下面的3个系数的文件: -0.5,3.0,-0.5 2.注意事项: (1)逗号后面不要加换行.根据FIR II ip核使用手册,两个系数的分隔用逗号(comma)或者空格(space)完成.滤波器bank的分隔用换行(new line)完成.(bank是什

使用FDATOOL生成xilinx中FIR滤波器IP核的系数

1.在MATLAB命令窗口输入fdatool后回车,打开"Filter Designer & Analysis Tool"工具界面: 2.点击左下角的Set quantization parameter,设置Filter arithmetic为Fixed-point(定点,由于有些FPGA中是不能直接对浮点数进行操作的,只能采用定点数进行数值运算,参考http://blog.csdn.net/gsh_hello_world/article/details/78742769):

modelsim 仿真xilinx fir ip

到现在不管fir ip 用的对不对,但是在使用modelsim是可以仿真fir ip的. 具体步骤: 1.仿真库,添加到modelsim目录配置文件: 2.将这个文件中的: :List of dynamically loaded objects for Verilog PLI applications:Veriuser = D:/modeltech64_10.2c/convert_hex2ver.dll 改成如下: List of dynamically loaded objects for V

如何使用和了解ALTERA的IP核

可以通过直接对IP核进行仿真验证,通过波形来分析IP核的功能和工作方式,以及各个寄存器之间的工作关系. 也可以通过查看用户指导手册来学习IP核,如下图.

明德扬至简设计法设计的IP核加法器

一.功能描述 在Quartus II 和ISE中都有加法器的IP core,可以完成无符号数和有符号数的加.减法,支持有符号数的补码.原码操作及无符号数的加.减操作,引入了最佳流水线操作,可以方便的为用户生成有效的加法器,用户可以根据自己的需要来完成配置加法器 ,本案例用Altera和Xilinx的IP核实现了26位加法器的功能. 二.平台效果图 Altera仿真效果图 Xilinx仿真效果图 三.实现过程 Xilinx输入输出信号列表如下: 信号名 I/O 位宽 说明 clk I 1 系统工作

FPGA学习笔记之FIFO IP核

FIFO总结文档 何为FIFO .? FIFO(First In First Out ) 先进先出是一个常用于数据缓存的一个数据缓冲器. fifo主要有WRREQ(写信号)WRclk(写时钟)data(写数据)wrfull(写满标志)wrempty(写空标志)wrusedw(告知里面还有多少数据) Rdreq(读信号)rdclk(读时钟)rdfull(读满标志)rdempty(读空标志)rdusedw(告知里面数据个数) 以上所有信号全是高电平有效. 为什么要用fifo? 在项目设计中,我们通常

ISE中如何将自己的verilog源代码.v或VHDL源代码.vhd封装打包成IP核?

=======================第一篇======================= 如何将自己写的verilog模块封装成IP核 将你的设计制作成BlackBox,也就是网表文件,这样别人看不到你的设计但是可以调用你的模块了.详细的参考信息如下: 1. 什么是BlackBox - 一个大的设计中可以用到一系列网表文件作为输入的一部分而并不全部使用HDL文件.当综合这个大设计时综合器不需要知道这个网表文件是怎样实现的,而只需要知道它的输入输出接口就可以了.这样的网表就称为黑盒子,因