【lattice軟核】ROM的使用


 

=======================》》》》》

一、ROM核調用:==================》》》》》

=======================》》》》》

  

 

 

=======================》》》》》

二、ROM表的生成:==================》》》》》

=======================》》》》》

查看內存使用手冊,如圖可以找到,我的是MachXO2系列芯片

在手冊中查看.mem文件需要的格式

了解了文件數據格式,那么就需要編寫數據了,數據可以自己計算來填寫,比如編一個1024*8的正弦波表,但是手工麻煩

下面介紹下工具,我暫時沒找到更好的工具,如果大家有更好的工具希望能告知。當然也可以用execl,matlab等實現。

軟件下載頁面點此下載

使用方法

1、查看--全局參數里設置一下

2、點設定波形--正弦波。就有了波形數據了

3、點保存,保存為mif文件。  此時保存的文件和.mem需要的內容格式不同,需要手動修改,打開文件如圖

每行后的分號也需要去掉哦

在最后一行還有個END,記得刪除

4、另保存為.mem格式(記事本似乎不可以豎列選,我用的是notepad++,其他高級編輯器也都可以)

5、回到IP核調用那塊重新調用,把這個文件添加進去,選擇hex文件格式的,生成

=======================》》》》》

三、ROM軟核添加進工程:==================》》》》》

=======================》》》》》

1、打開工程目錄,找到剛才省成的rom.v文件,拖放到diamond的source文件

=======================》》》》》

四、rom核的使用:==================》》》》》

=======================》》》》》

我現在要寫一個ROM直接接DAC輸出正弦波的,則要考慮時序,查看手冊

DAC的時序如下

具體分析自己看,可以看出需要在時鍾下降沿改變地址,上升沿時保持穩定

則代碼如下

 1 /*--------------------------------------------------------------------------------------
 2 -- Filename ﹕ dac.v
 3 -- Author ﹕tony-ning
 4 -- Description ﹕DAC硬件測試  ,10M方波,AD9760
 5 -- Called by ﹕Top module
 6 -- Revision History ﹕15-10-16
 7 -- Revision 1.0
 8 -- Company ﹕ 
 9 -- Copyright(c)  All right reserved
10 ---------------------------------------------------------------------------------------*/
11 
12 
13 module dac
14 (
15     input CLK25, //輸入25M時鍾
16     output CLK_DA,//輸出給DAC的100M時鍾
17     output [9:0]date_out
18 );
19     
20 
21     
22     reg [9:0]count2;
23     
24     always @( negedge CLK)//地址累加,下降沿改變
25         begin
26             count2<=count2+2;//改變累加數字可改變輸出頻率
27         end
28 
29     assign CLK_DA=CLK;//時鍾輸出
30     
31     pll PLL100M//鎖相環倍頻
32     (
33         .CLKI(CLK25), 
34         .CLKOP(CLK)
35     );
36     
37     rom_sin sin//調用rom核,
38     (
39         .Address(count2), //地址
40         .OutClock(CLK), //時鍾
41         .OutClockEn(1'b1), //輸出使能,高有效
42         .Reset(1'b0), //復位,高有效
43         .Q(date_out)
44     );
45     
46 
47 endmodule

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM