資源描述:
《用matlab讀取signaltap數(shù)據(jù)方法》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、用Matlab讀取SignalTap中數(shù)據(jù)的幾種方法使用FPGA進(jìn)行數(shù)字信號(hào)處理時(shí),經(jīng)常需要將FPGA中的實(shí)際檢測(cè)到的數(shù)據(jù)導(dǎo)出,然后用Matlab進(jìn)行仿真對(duì)比,以確認(rèn)設(shè)計(jì)是否達(dá)到要求,下面介紹了幾種常用的方法。一、??直接導(dǎo)入.txt或借助Excel表格轉(zhuǎn)換操作步驟如下:1〉??在Quartus工程中新建Stp文件,編譯,正確的在線采集FPGA內(nèi)部的數(shù)據(jù)。2〉??如下圖所示,在SignalTap窗口中的data下面,右鍵選擇createSignalTapIIListfile。?????????????3〉??經(jīng)過(guò)步驟2之后,工程所
2、在的文件夾中會(huì)生成一個(gè)my_stp_auto_singalTap_0.txt的文件。此時(shí)可以用Quartus打開(kāi),如下圖所示:4〉??在3步驟的圖中,藍(lán)色部分是數(shù)據(jù)的說(shuō)明(具體表示某一列代表的某個(gè)變量),為了Matlab讀取數(shù)據(jù)方便,我們可以去掉前面的說(shuō)明文件,只留下感興趣的數(shù)據(jù),重新保存為txt文件。打開(kāi)Matlab,在file下面選擇ImportDta…導(dǎo)入.txt文件即可?;蛘哌M(jìn)行第五步也可。5〉??打開(kāi)一個(gè)空的Excel文件,然后在“數(shù)據(jù)”工具中“自文本”中導(dǎo)入剛才保存好的txt文件,第一步選擇分隔符號(hào),next界面選擇空
3、格,后面的保持默認(rèn)的選項(xiàng),如下圖所示。然后保存為xslx格式的文件6〉??打開(kāi)Matlab,在file下面選擇ImportDta…,找到剛才的文件7〉??操作6后得到如下圖所示的結(jié)果。在workspace中可以看到需要導(dǎo)入的數(shù)據(jù)。Ok8>把數(shù)據(jù)讀出來(lái),畫(huà)圖二、??用alt_SignalTap_run指令這種方法在Datasheet中介紹的比較詳細(xì),個(gè)人覺(jué)得比上面的方法要簡(jiǎn)單一些1>?????在Quartus工程中新建Stp文件,編譯,正確的在線采集FPGA內(nèi)部的數(shù)據(jù)。2>?????在Matlab命令行窗口,運(yùn)行下面的指令,將Qua
4、rtusII的安裝路徑添加進(jìn)來(lái),在bin下面可以看到alt_Signaltap_run.dll文件addpathD:altera11.1quartusbin這里需要注意兩點(diǎn):A〉datasheet中,。到時(shí)不要將win一起敲入命令行,否則報(bào)錯(cuò)。B〉?SignalTap中如果有數(shù)據(jù)位款超過(guò)32bits的,需要拆分一下。3>?????運(yùn)行alt_signaltap_run即可Eg:X=alt_signaltap_run('my_stp_file.stp');?X=alt_signaltap_run('my_stp_file.s
5、tp','signed');?X=alt_signaltap_run('my_stp_file.stp','signed','auto_signaltap_0');?X=alt_signaltap_run('my_stp_file.stp','signed','auto_signaltap_0','my_signalset','my_trigger');三、導(dǎo)出signaltapII文件為.csv格式。在signaltapIIlogicanalyzerfile中選export如下:設(shè)置導(dǎo)出目錄,文件名字,ok即可。用Excel打開(kāi)
6、保存的文件,取所需要的數(shù)據(jù)到MATLAB處理?;蛘咧苯訉?dǎo)入.csv文件。