matlab产生波形数据文件,Matlab产生波形数据文件

本文介绍了如何使用Matlab生成复杂波形数据并导出为文本文件,以便在FPGA仿真中作为外部激励。通过示例展示了生成三个不同频率正弦波相加的信号,并详细说明了Matlab程序和Vivado Testbench的编写过程,验证了仿真结果的准确性。
摘要由CSDN通过智能技术生成

前言

在FPGA开发过程中几乎都要用到仿真的功能,对于一些简单的外部激励(如时钟、复位、简单数据或者信号等)直接在testbench中编写产生就行了,但对于复杂的外部激励数据,很难在testbench中产生,这时就要通过读取外部文件里的数据来实现。通过和matlab的配合使用,基本上可以模拟各种外部激励。

举例来说:输入信号是三个不同频率的正弦波的相加,经过FIR低通滤波器滤除高频分量,输出频率最低的那个正弦信号。这种情况下测试用的输入信号不能通过testbench编写产生。

简单来说有以下两种方法可以模拟输入信号:

在FPGA内部通过DDS产生三个正弦波,然后将三个波形相加作为输入信号。

利用matlab产生输入信号,将数据导出为.txt文件,在仿真时读取文件内的数据作为外部激励。

显然第二种方法更加灵活和便捷。下面,具体介绍一下这种方法的使用。

平台:

Vivado 16.4

Matlab R2017b

Matlab程序编写:

代码如下:

%=============设置系统参数==============%

f1=1e6; %设置波形频率

f2=500e3;

f3=800e3;

Fs=20e6; %设置采样频率

L=1024; %数据长度

N=14; %数据位宽

%=&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值