首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

一种matlab调用signaltap采集数据的方法

一种matlab调用signaltap采集数据的方法

最近,在利用FPGA采集数据,前端是通过AD采集,然后直接输出给FPGA,需要分析采集到的数据,通常的办法只能在signaltap中,右击信号列表然后点击”Create SignalTap II List File”生成数据文件,操作如图1所示,图2为生成的数据文件,处理数据时先将文件中所有数据拷贝到ultraedit中,然后通过列模式提取需要处理的那列数据,拷贝到matlab中进行后续分析处理。

  


  图1


  


  图2


  上述操作方法过程比较繁琐,主要是手动操作比较多,如果需要采集的数据较多,则需要多次重复操作,真是体力活儿啊,难免然操作者产生厌烦心理。下面介绍一种通过matlab直接调用signaltap采集数据的方法。
  在matlab端只需要一下语句:
  addpath (‘d:/altera/11.0sp1/quartus/bin’);
  din = alt_signaltap_run(‘stp1.stp’,‘signed’);
  alt_signaltap_run(‘END_CONNECTION’);
  其中addpath语句是将quartus软件路径加入进来;alt_signaltap_run语句执行数据的采集工作,当然此时对应的*.sof文件应该已经下载到FPGA中了,’signed’返回的是有符号数据;alt_signaltap_run(‘END_CONNECTION’)语句表示断开由matlab建立的jtag连接。
  采用此方法,无需打开signaltap,matlab直接获取数据进行处理,免除了大量重复的手动操作,大大提高了工作效率。
返回列表