【FPGA学习】MATLAB和FPGA实现FFT
2024-10-20 20:55:07
本博客记录一下在matlab设计和在FPGA平台实现FFT的方法,平台是Xilinx的ZYNQ
参考:
COE文件制作与使用
Vivado使用技巧(9):COE文件使用方法
.coe文件生成
在某些IP核的配置中,需要使用.coe文件来配置参数,比如说FIR滤波器的系数以及RAM中的初始化数据文件
.coe文件是一种ASCII文本文件,文件头部定义数据基数,数据以向量的形式给出,向量以分号结尾,向量之间用逗号隔开
.coe文件的通用语法如下:
Keyword =Value ; 注释
<Radix_Keyword> =Value ; 注释
<Data_Keyword> =Data_Value1, Data_Value2, Data_Value3;
- 不区分关键词的大小写
- 分号后为注释
关键词如下:
RADIX:用于非存储类型IP核的基数定义
MEMORY_INITIALIZATION_RADIX:定义存储器初始化值的基数
COEFDATA:定义滤波器的系数
MEMORY_INITIALIZATION_VECTOR:定义块存储器与分布式存储器的数据
PATTERN:用于位相关器(Bit Correlator)COE文件
BRANCH_LENGTH_VECTOR:用于Interleaver COE文件
实例:生成用于导入到RAM中的窗函数系数的.coe文件
生成1024点汉明窗的.coe文件,matlab程序如下:
w_fl = hamming(1024);
w_tc = double(fi(w_fl,0,16,15));
for i = 1:size(w_tc,1)
w_fi(i) = org2comp(w_tc(i), 15, 16);
end
fid = fopen('hamming_1024.coe','w');
fprintf(fid, 'memory_initialization_radix=10;\n');
fprintf(fid, 'memory_initialization_vector=\n');
fprintf(fid, '%d,\n', w_fi);
其中有两个函数要说明一下:
- fi函数:定点函数fi(data,s,w,f)
- data:需要定点化的浮点数;
- s:signed or unsigned 标志(1是signed)
- w:数据位宽,如果是signed包含符号位
- f:定点小数精度
- org2comp:原码转补码函数
function data_comp = org2comp(data_org, digit, width)
data_comp = mod(2.^width + data_org*2.^digit, 2.^width);
生成的.coe文件如下:
可见符合上面提到的语法
调用FFT IP核
实现FFT可以直接调用提供的IP核,本篇博客中使用的是vivado中的FFT IP核
最新文章
- active mq 配置延时
- CentOS网卡配置文件
- cookie 使用笔记
- [iOS UI进阶 - 6.3] UIView 动画
- 国外一些好用的UX/UI设计工具和资源分享
- Zookeeper 5、Zookeeper应用场景
- 判断浏览器IE6
- hdu3038 How Many Answers Are Wrong【基础种类并查集】
- WebAssembly:随风潜入夜
- 201521123019 《Java程序设计》第5周学习总结
- CSS定位网页中的元素
- Android IPC机制(一)开启多进程
- C# 之 HttpResponse 类
- tcp、ip、http
- 2018-02-06 编程猫IDE体验:对Scratch的改进
- JavaScript Scroll家族以及封装
- Qt编写软件运行时间记录(开源)
- httpclient cookie相关介绍
- LNMP 1.2升级Nginx、MySQL/MariaDB、PHP教程
- ZOJ 2320 Cracking&#39; RSA
热门文章
- Vue 响应式原理模拟以及最小版本的 Vue的模拟
- DFS深度优先搜索例题分析
- CONDITION EVALUATION DELTA热部署启动失效
- [OpenCV实战]21 使用OpenCV的Eigenface
- [R语言] ggplot2入门笔记2—通用教程ggplot2简介
- Java时间加减操作
- test20230111考试总结 -2023寒图论专题
- 题解CF893C Rumor
- 【问题解决】Tomcat启动服务时提示Filter初始化或销毁出现java.lang.AbstractMethodError错误
- 企业应用架构研究系列十三:整合EFCore&;Dapper 通用ORM框架EFDapper