前言:
都知道FPGA的啟動方式有很多種,比如JTAG、SPI,BPI,SeletMAP,Serial等等吧,又分為主從即Master和Slave(時鐘由FPGA的管腳發出,專用的CCLK信號為主,否則為從,有的配置有輔助時鐘EMCCLK,它由外部的晶振提供,從FPGA的EMCCLK輸入,經過專用的邏輯,再從CCLK管腳輸出給想用的器件,),那么問題來了,配置失敗怎么辦呢??????????????看DONE管腳呀,你已經失敗了 ,一般情況下DONE管腳是低電平,另尋途徑了 只有。。。。。。
只有一個辦法,廠家已經給你想好了 看狀態寄存器(相應手冊的),它可以很快的輔助你找到配置失敗的原因,不管你是哪個系列的或者使用的是ISE也好,Vivado也罷,Xilinx FPGA的狀態字,在它的所有系列器件當中,關于狀態位的定義基本保持一直,但是也有一些細微的差別,建議看相應系列的數據手冊,比如我所要調試的時V-7,我查看Ug470
每一位的解釋已經很清楚了 ,那么我們怎么讀出這些狀態字呢,首先我們拿出一塊FPGA,連接好下載線和板子,板子上電,打開JTAG,Hardware Manager 窗口顯示如下:
將鼠標選中1(我們的器件),擦看2處,點擊3處,查看4處,我們來展開配置狀態的寄存器,同時對照上面的對每一位的解釋大概說一下把,
只有BIT02 PLL_LOCK, BIT03 DCI_MATCH, BIT11 INIT_B_INTERNAL, BIT12 INIT_B_PIN(即初始化狀態和時鐘及DCI部分)的值必須是1;
BIT08-10 MODE PINS(配置模式),BIT21 SECURITY_STATUS, BIT25-26 BUS_WIDTH,BIT28 PUDC_B根據FPGA和板子具體的設定,可以為1或者0,其他都必須是0。
這樣大概就能夠判斷你的板子的狀態了,如果出現其他的值,那么可以能你的配置電路出現了問題,還有其他的出現的比較典型的值,下次再給大家討論吧。
編輯:lyn
-
FPGA
+關注
關注
1629文章
21729瀏覽量
603002 -
Vivado
+關注
關注
19文章
812瀏覽量
66472 -
狀態寄存器
+關注
關注
0文章
39瀏覽量
7083
發布評論請先 登錄
相關推薦
評論