matlab生成波形然后采样,FPGA写testbench读取数据

一、在matlab产生激励

复制代码
fs=1000;
% 这个是路数
M=16; 
% 这个是FFT的点数,64K
L=65536; 
% 将N写为两个整数乘积的形式,即N = ML,(log2 M和log2 L都为正整数)
N=M*L;   
% 这段 MATLAB 代码是用来生成一个时间序列的,
% 该时间序列从0开始,以1/fs的步长递增,直到(N-1)/fs为止。这里的N代表了序列的长度,而fs是采样频率。
%在这里一共是在fs=1000这个频率上,以0.001的步长,采集了65536点
t=0:1/fs:(N-1)/fs;  
f=465;
% 这个是一个离散的信号
ss=cos(2*pi*f*t);


% 把点数数据收集一下,后续用来放到FPGA上
fid1=fopen('E:\FPGA\FPGA_project\test_parallel_fft\test_parallel_fft.sim\sim_1\behav\xsim\data.txt','wt');
for i=1:N
    fwrite(fid1,ss(i));%按照行,把数据读进去,但是其实这个ss信号是一个一行的行向量
    fprintf(fid1,'\n');
end
fclose(fid1);

效果如下图

二、在testbench读取

用下面的方式读取,注意从windows资源管理器复制的路径,需要把所有的反斜杠改正正斜杠才能正确读取数据。

相关推荐
dhxhsgrx3 小时前
PYTHON训练营DAY25
java·开发语言·python
风逸hhh5 小时前
python打卡day25@浙大疏锦行
开发语言·python
刚入门的大一新生5 小时前
C++初阶-string类的模拟实现与改进
开发语言·c++
Yesheldon6 小时前
Cadence 高速系统设计流程及工具使用三
嵌入式硬件·fpga开发·硬件架构·硬件工程·智能硬件
chxii6 小时前
5java集合框架
java·开发语言
老衲有点帅7 小时前
C#多线程Thread
开发语言·c#
C++ 老炮儿的技术栈7 小时前
什么是函数重载?为什么 C 不支持函数重载,而 C++能支持函数重载?
c语言·开发语言·c++·qt·算法
IsPrisoner7 小时前
Go语言安装proto并且使用gRPC服务(2025最新WINDOWS系统)
开发语言·后端·golang
Python私教7 小时前
征服Rust:从零到独立开发的实战进阶
服务器·开发语言·rust