1.編譯正確,仿真出現(xiàn)如下錯誤:FATAL_ERRORFuse.cpp$Id: Fuse.cpp,v 1.35 2007/11/07 2147 sonals Exp $ - Failed to link the design Process will terminate. For technical support on this issue, please open a WebCase with this project attached at http://www.xilinx.com/support.解決辦法:在任務(wù)管理器中關(guān)閉所有和ise相關(guān)的.exe進程,包括testbench.exe,再打開仿真即可
2.能正確打開ISE工程,卻打不開對應(yīng)文件資源,雙擊文件在文件編輯區(qū)一直顯示“1”,如何解決?問題原因:將工程名改成了漢字或者存儲在漢字目錄下解決辦法:存儲工程的所有文件夾名要使用英文命名,總之不要在ISE中出現(xiàn)中文,即使在程序中出現(xiàn)中文注釋,程序也會不時出現(xiàn)亂碼
3.在工程管理區(qū),右擊選中new resource,但彈出的向?qū)Э驔]有IP核選項,解決辦法之一:看所建工程中選擇的器件是不是FPGA系列,如下圖:
選中xc3s400a-4fg400工程(不是其他的選項),右擊選擇屬性properities,然后從family開始檢查,核對所選器件的family、device、package和speed,如下圖:
核對后點擊ok,即可。
4.當IP核建成功之后,如果要調(diào)用IP核,則必須將資源管理區(qū)source for項后面的選項改為Implementation,才能看到IP核的代碼,在behavioral simulation下是不能看見的
5.新建IP核后,在top文件中實例化IP核,但卻沒顯示將IP包含進來,如何解決? 將IP核重新建一遍,ok
6.仿真出現(xiàn)如下錯誤:“ERROR615“K:/IP0_K.14/env/Databases/ip/export/rtf/verilog/src/XilinxCoreLib/BLK_MEM_GEN_V2_7.v” Line 497. Argument given for file Identifier is not correct”解決辦法:把原來的.v文件remove掉,然后添加相應(yīng)的.vhd,照著師姐說的做了,依然提示上面的錯誤,后來點擊project--》Cleanup Project Fles,然后重新仿真,嘿,通過了
7.寫完1段代碼,最好保存一下,否則死機會造成代碼丟失
8.不要按“insert”鍵,否則輸入光標會變成橫線,輸入代碼出現(xiàn)不便
9.結(jié)構(gòu)向?qū)В杭磇p核向?qū)г谔砑觟p核向?qū)Ы缑嬷?,若某IP核為灰色,表示你使用的器件不支持該IP核,你可以單機該IP核,則界面上會出現(xiàn)“this core is not supported by your current part”,若你想知道哪些器件支持該IP核,點擊這句話旁邊的“Supported Families…”,如下圖:
10.ISE調(diào)試中遇到的問題:(來自UART項目)在添加dcm時鐘ip核后,程序在行為仿真時正確,綜合語法檢查正確,可綜合結(jié)果錯誤為:系統(tǒng)的輸入時鐘CP與一個輸入緩沖器和多個元素連接,其中輸入緩沖器為被調(diào)用的DCM核的時鐘input buffer,其他的元素為在CP時鐘沿下被賦值的變量,如下: always @ (posedge CP or negedge rst_n) if(!rst_n) mcu_data_r 《= 8‘d0; else if(!rd_cmd) if(mcu_addr == 3’d2) mcu_data_r 《= rx_buf; else mcu_data_r 《= mcu_data_r; else mcu_data_r 《= mcu_data_r; 元素為mcu_data_r[0]至mcu_data_r[7],解決辦法如下: 生成IP核時,第一頁:將CLKIN Source改為Internal,RST和LOCKED不選,只選CLKFX 第二頁:clock buffer setting 選擇第一項,其他不變
11.在試用ise license下,將不能生成位流文件,即:generate programming file 無法執(zhí)行,可以在Manage Xilinx License對話框中,將license改為“l(fā)ocal license”
12.如何將下載線正確地插到PCB板中的插針上? 下載器旁邊有兩個插口,一個插口有兩排插針,另一個只有一排,兩個插口中的插針信號名稱排列在下載器上都有說明,我們通過這個信號名字對應(yīng)插到PCB板插針上相應(yīng)的網(wǎng)絡(luò)號
13.把需要顯示的信號添加到仿真器后,下次重新仿真時,那些信號卻沒顯示了,如何辦? 解決辦法:在上次仿真完成后,關(guān)閉時點“是”保存,下次打開仿真器后,點打開文件,添加上次保存的仿真文件,進行仿真
14.如何設(shè)置差分對? 打開ise菜單EDIT,打開下拉菜單中的language template,打開UCF選項,到FPGA選項,到I/O選項,點擊差分,將模板代碼copy到ise工程UCF文件中
15.關(guān)于真雙端口true double ports RAM1在建立IP核時,若設(shè)置深度為N,則地址范圍為0到N-1;2在沒有輸入時鐘信號或者使能信號時,輸出端輸出不是高阻態(tài),而是低電平;3端口A和端口B共用一塊空間,即若設(shè)置A位寬為16,B位寬為8,則A端口輸出位寬為16,而B端口為8,相當于并串轉(zhuǎn)換,可類比簡單雙端口4只要ENA打開,輸出端口隨時都有數(shù)據(jù),所以可以設(shè)置一個信號,表示什么時候輸出數(shù)據(jù)有效
16.關(guān)于chipscope analyzer
在match區(qū)域,在value列設(shè)置觸發(fā)條件,得到采集結(jié)果是:采集的第一個數(shù)據(jù)即為觸發(fā)條件設(shè)置的value值,value最右邊的值對應(yīng)CH0,可將光標放在相應(yīng)的X上,光標上會顯示出該X所代表的信號通道。 在capture區(qū)域,觸發(fā)的位置由“Position”文本框決定,有效取值范圍在 1 到每個捕獲緩沖區(qū)深度減 1 之間,觸發(fā)位置可以設(shè)置在捕獲窗口的起始點(即先觸發(fā),后采樣),也可設(shè)置在捕獲窗口的終點(即采集數(shù)據(jù)直到觸發(fā)事件發(fā)生),還可以設(shè)置在兩者之間的任何位置,最好選擇在中間,選為開始端容易造成看不見。 捕獲時,使用apply trigger and capture,不要使用“!”捕獲
17.FPGA設(shè)計中部分流程 綜合,時序約束/plan ahead/chipscope core inserter,布局布線實現(xiàn),chipscope analyzer
18.在ise工具中無法打開planahead 進行管教約束怎么辦?
首先,選中工程頂層模塊,雙擊上圖中第二個選項,即I/O Pin Planning-Pre-Synthesis,則會在工程文件夾中產(chǎn)生planahead run文件夾;如果沒產(chǎn)生,雙擊第一個選項后,再雙擊第二個選項,一般情況下能夠產(chǎn)生; 然后,打開桌面上的planahead,選擇open project,打開對應(yīng)工程文件夾下的planahead run文件夾,選中planahead 工程文件圖標; 打開后,菜單欄和工具欄如下圖,沒有管腳約束;雙擊下圖右邊project manager選項框中Elaborate項,工具分析后,將會出現(xiàn)管腳約束,在下圖工具欄中最后一項project management將變成I/O Planning,若為出現(xiàn),可通過其下拉框選擇。
19.遇見Xilinx軟件的問題,一般遇到奇怪的問題,怎么辦? 例如使用chip scope core inserter插入核時出現(xiàn)如下錯誤:FAILED.coreutil - XST failed for icon_pro. ERROR439 - No write access insim - Error found during generation.sim - Failed to generate ‘icon_pro’。 Error found during generation.sim:877 - Error found during execution of IP‘ICON (ChipScope Pro –See CoreGen Log G:my work sdramprojectsdramprojectsdram\_ ngo cs_icon_procoregen.log Unable to generate icon_pro.ngc又例如新建IP核時出現(xiàn)如下錯誤:
解決方案之一:重新清空工程或者重建工程
20.ISE下載遇見的問題
NFO583 - ’1‘: The idcode read from the device does not match the idcode in the bsdl File.
INFO1578 - ’1‘: Device IDCODE : 00000011011110010111001101110100
INFO1579 - ’1‘: Expected IDCODE: 00000010000010001000000010010011
PROGRESS_END - End Operation.
解決方案:下載線線序錯誤,換下載線
No fixed solution for this error. It depends on the idcode you get.
E.g. if what you read out is: 00001111111111111111111111111111
This is a typical one that you did not correctly initialize the whole JTAG chain. Some of the devices in the chain (such as some non-Xilinx parts) are not correctly bypassed. You either initialize the chain automatically or you assign bsdl files to your third-party parts.
If the idcode read out only has one or two bit difference with the expected one, this is mostly a SI issue. lower down the operating frequency of the cable should help.
Don’t modify the bsdl files!
21.當在頂層模塊中例化了模塊,然后添加資源時,右擊會出現(xiàn)add resource和add copy of resource,一般用前者,若錯誤則用后者
22.當使用chipscope進行調(diào)試時,如果想添加的多位寬寄存器信號只有一位,或者沒有,則說明在綜合時沒有生成該寄存器,
可查看頂層模塊中,信號在模塊間傳遞的位寬是否正確
23.在工程中修改的模塊名,并不能修改rtl文件夾下的.v文件名,注意區(qū)別開
24.使用JTAG端口對flash進行燒寫程序
在process窗口中點擊configure target device,運行完成后,彈出impact界面,在其flows 窗口中,雙擊create prom file,如下圖:
圖一
然后會然出如下對話框:
圖二
在step1中選中上圖陰影選項,然后單擊右邊箭頭,進入step2,如下圖:
圖三
根據(jù)你flash的大小,選擇下拉框的容量,然后點擊add storage device,接著點擊右邊箭頭,進入step 3,如下圖:
圖四
在output file name中輸入你希望的文件名,在location中選擇輸出文件的存放位置,最后點擊整個對話框的“ok”,
在上面點擊“ok”后,會彈出新的對話框,如下:
圖五
點擊ok,從彈出的文件目錄中選擇.bit文件,添加成功后,彈出如下對話框:
圖六
點擊no,彈出如下對話框:
圖七
點擊ok,回到impact界面中,在界面的process區(qū)中雙擊generate file,則.mcs文件生成成功!如下
圖八
產(chǎn)生成功后,接著的操作就和JTAG調(diào)試操作一致了!不同的是,添加.bit文件后,還要添加先前生成的.mcs文件,最后右擊spi器件,進行program,而JTAG調(diào)試操作是右擊FPGA器件,進行program。
注意1:在圖二中,可以根據(jù)你PCB上實際使用的PROM器件,選擇配置器件,在本例中我們采用的是SPI flash,當然也可以使用Xilinx flash,從而生成相應(yīng)的.MCS等編程文件。
注意2:同JTAG調(diào)試模式下載一樣,先initialize chain,如果掃描到FPGA器件和相應(yīng)的FLASH器件,而且只有.mcs文件,則可使用impact直接對FLASH進行編程即可。同時說明,JTAG配置端口可對器件配置,也可對FLASH配置。
注意3:模式配置管腳M2、M1和M0在任何配置下,都可以采用JTAG模式,該模式即不采用PROM器件,直接對FPGA配置,掉電丟失,但在配置為101時,只能采用JTAG模式。主串配置模式為000,從串配置模式為111。
注意4:主模式是FPGA控制整個配置過程。從模式需要外部主智能終端,如處理器、微控制器或DSP等將數(shù)據(jù)下載到FPGA中。
25.仿真器ISIM的信號進制變換
當想將仿真窗口的各個信號以無符號十進制來顯示,操作方式如下:
在左邊的窗口,使用shift來選中所有信號,并按住shift不放,右擊鼠標,選擇進制,選擇無符號十進制即可
26.通過ise10.1的SPI配置方法
若13.1已安裝在D盤的xilinx文件夾下,則把10.1己安裝文件放在該目錄下,
打開如下D:Xilinx10.1ISEin t,有兩個impact圖標,打開一個能用的(一般是較大的那個),
打開impact,彈出如下對話框,
點擊cancel,再點擊左上邊Direct SPI Configuration:
在右邊空白區(qū)域右擊,如下:
點擊Add SPI Device,選擇配置FPGA的.MCS文件,
最后右擊器件圖標,點擊PROM
注意:燒寫時要將跳帽跳上,燒完后去掉跳帽
27.ise simulator:ISim(0.4d) 如果仿真中含有ram及sdram等存儲器,可以在該仿真器右邊的memory一項看到讀寫的數(shù)據(jù)內(nèi)容
值得注意的是:memory中行的數(shù)字表示的不是第幾行,而是該行開頭的那個數(shù)是所有數(shù)中的第幾個數(shù)據(jù)。
責任編輯:lq6
-
ISE
+關(guān)注
關(guān)注
1文章
100瀏覽量
36432
原文標題:至芯學(xué)員筆記-ISE學(xué)習(xí)總結(jié)
文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設(shè)計論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論