1. 程式人生 > >【心得】Lattice後端使用經驗小結(ECP5UM,DDR3,Diamond3.10,Reveal邏輯分析)

【心得】Lattice後端使用經驗小結(ECP5UM,DDR3,Diamond3.10,Reveal邏輯分析)

列表 con inf 很難 http type ner jta psc

【博客導航】 【導航】FPGA相關

DDR3 IP例化

LEF5UM器件,應用DDR3控制器IP。主要分幾步:IP獲取,安裝,例化。

1、先在impl1目錄下,右鍵,新建sbx文件,即Clarity Designer,通過該文件,進行IP的例化管理。

技術分享圖片

2、打開sbx,在選項卡“Lattice IP Server”裏點擊IP聯網獲取IP列表。

技術分享圖片

3、選擇“DDR3 SDRAM Controller”,目前(18年12月)最新版本3.1,下載(格式exe)後安裝到指定目錄(如:C:\LatticeCore\ddr3_sdram_common_v3.1),這樣可以在選項卡“Lattice IP”中看到“ddr3 sdram controller 3.1”。

技術分享圖片

技術分享圖片

4、打開ip,GUI界面如下,在本項目中,參考時鐘(RefClock)來自單板晶振產生的100M,ddr的工作頻率400M,雙沿也就800M。Memory Type選擇On-board Memroy,總線寬度16,配置x16,時鐘寬度1。註意,Data_rdy to Write Data Delay選擇2,表示data_rdy有效之後必須在第2拍送數據,其實,這裏2拍往往是不夠的,通常送給ddr3控制器的數據來自一個fifo,這樣,fifo跟ddr3控制器直接,不多幾拍時鐘周期的話,會導致後端時序很難收斂。我的解決辦法是,對fifo進行預讀操作,讓fifo數據打個3~4拍才到ddr3控制器,具體預讀fifo的實現就不展開了。

技術分享圖片

bit/mcs燒錄

Lattice工具一個不好用的地方,就是mcs燒錄得講究順序,否則會報錯。燒錄mcs的步驟:

A、JTAG模式下,選擇Erase Only。

技術分享圖片

B、選擇SPI Flash,操作時可以不用verify,如下。

技術分享圖片

Reveal邏輯分析儀

FPGA廠家都會提供內嵌邏輯分析儀,Xilinx叫chipscope,Lattice的叫reveal,可以單獨安裝reveal程序,也可以在diamond工程中打開。在“File List”的“Debug Files”裏,右鍵,點擊Reveal Project Files,可新建*.rvl文件,相對Xilinx,這個rvl比較好用,復制veriog代碼信號名,只要沒被優化,就可以很快找到。

技術分享圖片

=======================

by NicoWei
2018-12-25 17:48:09

=======================

【心得】Lattice後端使用經驗小結(ECP5UM,DDR3,Diamond3.10,Reveal邏輯分析)