基于dsp_builder的算法在FPGA上的实现(转自https://www.cnblogs.com/sunev/archive/2012/11/17/2774836.html)
一、摘要
结合dsp_builder、matlab、modelsim和quartus ii等软件完成算法的FPGA实现。
二、实验平台
硬件平台:DIY_DE2
软件平台:quartus ii9.0 + ModelSim-Altera 6.4a (Quartus II 9.0) + dsp_builder9.0 + matlab2010b
三、软件平台的准备
1、软件的匹配
根据altera的官方文档,可以看到quartus ii、modelsim、dsp_builder和matlab的版本匹配信息。如图1所示。
http://www.altera.com/support/ip/dsp/ips-dsp-version.html
图1 软件版本匹配
一般情况下,quartus ii、modelsim和dsp_builder版本一定要匹配,而matlab版本高于规定的版本也可以,但这样做有可能会出现某些模块不能使用的情况。
2、软件的安装
安装与破解dsp_builder的步骤可以参看“清风醉明月”同学的文章,链接如下:
需要说明的是:
针对dsp_builder9.0版本的matlab版本应为2007b,而我的是2010b,虽说是兼容的,但是仍出现了些问题,如高级库的一些组件无法显示,如图2所示。最好的解决办法还是按照建议,使版本完全匹配。
图2 某些功能无法使用
四、例程
通过一个正弦波的例程阐述dsp_builder的使用流程。可参看潘松著《EDA技术与VHDL》(第3版)第9章的例程。
1、建立simulink设计模型
在matlab中,新建立一个simulink模型,如图3所示。
图3 建立的simulink模型
2、simulink模型仿真(系统级,即算法级)
设置好参数后,运行仿真,双击scope可以看到仿真波形,如图4所示。
图4 simulink仿真波形
3、SignalCompiler使用方法
在simulink中完成仿真验证后,就需要把设计转到硬件上加以实现。这是整个DSP builder设计中最关键的一步,据此可以获得针对FPGA的VHDL RTL代码。如图5所示。
图5 SignalCompiler
4、使用modelsim进行RTL级仿真
这一步,其实是对由.mdl文件转换的VHDL文件进行仿真验证,可以通过添加TestBench组件实现。如图6所示。
图6 TestBench
另外,Launch GUI选型,勾选的话,则直接启动modelsim进行仿真;不勾选的话,可以通过modelsim的Tools菜单下的TCL——>Execute Macro...查找工程文件夹下的sinwave_add.tcl文件进行仿真。
5、使用Quartus II实现时序仿真
上一步是功能仿真,即modelsim中的前仿真。这是进一步验证时序仿真的正确与否,即后仿真。这一步,需要说明几点:
(1)Quartus II 9.1之前的软件自带仿真组件,而之后软件不再包含此组件。
(2)可以用modelsim实现后仿真,验证时序仿真。
6、FPGA的验证
将设计下载到FPGA,进行验证。通过示波器验证波形的正确与否。
五、总结
上面的流程涉及到的各个部分的具体使用,可以参看altera的dsp_builder官方文档。
dsp_builder的介绍:http://www.altera.com.cn/literature/hb/dspb/hb_dspb_intro.pdf
dsp_builder的基本库:http://www.altera.com.cn/literature/hb/dspb/hb_dspb_std.pdf
dsp_builder的高级库:http://www.altera.com.cn/literature/hb/dspb/hb_dspb_adv.pdf
基于dsp_builder的算法在FPGA上的实现(转自https://www.cnblogs.com/sunev/archive/2012/11/17/2774836.html)的更多相关文章
- 基于dsp_builder的算法在FPGA上的实现
基于dsp_builder的算法在FPGA上的实现 一.摘要 结合dsp_builder.matlab.modelsim和quartus ii等软件完成算法的FPGA实现. 二.实验平台 硬件平台 ...
- STL所有算法简介 (转) http://www.cnblogs.com/yuehui/archive/2012/06/19/2554300.html
STL所有算法简介 STL中的所有算法(70个) 参考自:http://www.cppblog.com/mzty/archive/2007/03/14/19819.htmlhttp://hi.baid ...
- Hadoop上的中文分词与词频统计实践 (有待学习 http://www.cnblogs.com/jiejue/archive/2012/12/16/2820788.html)
解决问题的方案 Hadoop上的中文分词与词频统计实践 首先来推荐相关材料:http://xiaoxia.org/2011/12/18/map-reduce-program-of-rmm-word-c ...
- mysql 查询当天、本周,本月,上一个月的数据---https://www.cnblogs.com/benefitworld/p/5832897.html
mysql 查询当天.本周,本月,上一个月的数据 今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 昨天 SELECT * FROM ...
- FPGA上如何求32个输入的最大值和次大值:分治
上午在论坛看到个热帖,里头的题目挺有意思的,简单的记录了一下. 0. 题目 在FPGA上实现一个模块,求32个输入中的最大值和次大值,32个输入由一个时钟周期给出.(题目来自论坛,面试题,如果觉得不合 ...
- 转:【专题十一】实现一个基于FTP协议的程序——文件上传下载器
引言: 在这个专题将为大家揭开下FTP这个协议的面纱,其实学习知识和生活中的例子都是很相通的,就拿这个专题来说,要了解FTP协议然后根据FTP协议实现一个文件下载器,就和和追MM是差不多的过程的,相信 ...
- 专题十一:实现一个基于FTP协议的程序——文件上传下载器
引言: 在这个专题将为大家揭开下FTP这个协议的面纱,其实学习知识和生活中的例子都是很相通的,就拿这个专题来说,要了解FTP协议然后根据FTP协议实现一个文件下载器,就和和追MM是差不多的过程的,相信 ...
- 目标反射回波检测算法及其FPGA实现 之三:平方、积分电路及算法的顶层实现
目标反射回波检测算法及其FPGA实现之三: 平方.积分电路及算法的顶层实现 前段时间,接触了一个声呐目标反射回波检测的项目.声呐接收机要实现的核心功能是在含有大量噪声的反射回波中,识别出发射机发出的激 ...
- 目标反射回波检测算法及其FPGA实现 之二:互相关/卷积/FIR电路的实现
目标反射回波检测算法及其FPGA实现之二: 互相关/卷积/FIR电路的实现 前段时间,接触了一个声呐目标反射回波检测的项目.声呐接收机要实现的核心功能是在含有大量噪声的反射回波中,识别出发射机发出的激 ...
随机推荐
- HTTP的长连接(持久连接)和短连接
HTTP的长连接和短连接 本文总结&分享网络编程中涉及的长连接.短连接概念. 关键字:Keep-Alive,并发连接数限制,TCP,HTTP 一.什么是长连接 HTTP1.1规定了默认保持 ...
- orcal 安装失败解决办法
若安装失败
- python中的新式类与旧式类
在python2中,有新式类与旧式类的区别: 首先创建一个类: class Sb(object): pass 如果创建时继承自object,说明这是一个新式类,不写object,说明是一个旧式类: 那 ...
- Linux命令:mapfile
mapfile [-n 计数] [-O 起始序号] [-s 计数] [-t] [-u fd] [-C 回调] [-c 量子] [数组] 两个作用: 一是给index数组读取标准输入来赋值:二是文件描述 ...
- cdn贝四层协议配置端口映射TCP端口转发
端口映射就是将外网主机的IP地址的一个端口映射到内网中一台机器,提供相应的服务.当用户访问该IP的这个端口时,服务器自动将请求映射到对应局域网内部的机器上.端口映射有动态和静态之分 1.安装好节点后初 ...
- 解题(TakeBusChooseLine)
题目描述 从小明家所在公交站出发有n路公交到公司,现给出每路公交的停站数(不包括起点和终点),及每次停的时间(一路车在每个站停的时间相同)和发车的间隔,先假定每辆车同时在相对时间0分开始发车,且所有车 ...
- 【转】IO多路复用机制详解
高性能IO模型浅析 服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型. (2)同步非阻塞IO(Non-blocking ...
- Zabbix告警脚本-邮件
[root@iot-svndata02 bin]# cat zbmail.sh #!/bin/bash to_email_address="$1" # 收件人Email地址,zab ...
- Linux磁盘配额
Step1:修改fstab文件,增加磁盘限额用户和用户组信息 # /etc/fstab# Created by anaconda on Sat Dec 29 04:48:18 2018## Acces ...
- Jupyter Notebook 的快捷键
原文:http://blog.csdn.net/lawme/article/details/51034543 Jupyter Notebook 的快捷键 Jupyter Notebook 有两种键盘输 ...