Xilinx大部分的開(kāi)發(fā)板上都集成了Si570時(shí)鐘芯片,該時(shí)鐘的性能指標(biāo)比較好,可以滿足大部分高速串行接口應(yīng)用對(duì)于參考時(shí)鐘的要求。同時(shí)該時(shí)鐘還可以通過(guò)I2C接口配置其輸出頻率。
該專題詳細(xì)介紹如何給Xilinx 7系列以及Ultrascale系列開(kāi)發(fā)板上的Si570重新配置頻率。
Xilinx 7 Series開(kāi)發(fā)板配置詳細(xì)步驟
安裝USB UART驅(qū)動(dòng)
在Silicon Labs的官網(wǎng)上CP210x USB-to-UART Bridge VCP Drivers?下載頁(yè)面下載驅(qū)動(dòng)。
下載完成后解壓安裝。
參考UG1033。
安裝Tera Term軟件
在Tera Term的下載頁(yè)面下載軟件。
下載完成后進(jìn)行安裝
安裝完成后接好UART的cable,給FPGA上電,就會(huì)自動(dòng)掃描器件,在Windowsàdevice manager中就出現(xiàn)了UART的信息。這個(gè)過(guò)程不需要提前向FPGA中下載任何專門(mén)的程序。
?
向FPGA加載KC705 Si570 Programming的Bit文件
Si570的配置接口為I2C,還是需要通過(guò)FPGA間接下載,所以必須在FPGA設(shè)計(jì)相應(yīng)的邏輯。通過(guò)UART從外部接收指令,經(jīng)FPGA內(nèi)部的邏輯控制連接Si570的IO引腳,以I2C的時(shí)序向Si570中寫(xiě)命令。
以7系列中的KC705開(kāi)發(fā)板為例,在Xilinx官網(wǎng)上下載KC705 SI570 Programming的壓縮包
壓縮包中有很多bit文件,如圖 6所示。
其中:
與fmc相關(guān)的文件暫時(shí)不關(guān)心。
set_xxx.xx_mhz_si570_0.bit的文件是FPGA直接控制Si570,將其配置到指定頻率的程序,其中包含了大部分應(yīng)用所需要的頻率值。
freq_monitor.bit文件的作用只是配著debug_nets.ltx,對(duì)Si570的輸出頻率進(jìn)行監(jiān)測(cè)。
freq_adjust.bit文件的作用可以讀取和重新配置Si570中所有寄存器的值,即可以將Si570配置到任意頻率的程序,該bit文件下載后首先將當(dāng)前
Si570芯片內(nèi)部的寄存器信息讀出來(lái),通過(guò)串口發(fā)送到Tera Term,如圖 7所示。
接著可以通過(guò)UART,按照指令的順序配置Si570中各個(gè)寄存器的值,簡(jiǎn)單演示步驟:
在圖 7的基礎(chǔ)上按下任意鍵,Tera Term有新的數(shù)據(jù)信息。
按照顯示的信息提示,輸入第一個(gè)需要配置寄存器的值。
將剩余的寄存器全部按照提示信息輸入完成,系統(tǒng)顯示新輸入的寄存器值,同時(shí)提示按下w鍵將新的值寫(xiě)入Si570。
系統(tǒng)自動(dòng)更新Si570,并顯示更新成功。
此時(shí)回到VIO中,Si570的輸出頻率已經(jīng)按照要求改變了。
使用VIO Probes檢測(cè)Si570輸出頻率
在下載上述bit文件的同時(shí)選擇上配套的debug_nets.ltx文件。
下載完成之后點(diǎn)擊Add probes的按鍵,加入設(shè)置好的兩個(gè)probes,分別是200MHz的clock和Si570輸出時(shí)鐘的頻率。
初始狀態(tài)下顯示200MHz時(shí)鐘輸出頻率為2000,Si570輸出頻率為15624。
當(dāng)下載了set_311.040_mhz_si570_0.bit之后,再回到VIO顯示界面時(shí),Si570的輸出頻率已經(jīng)更新了。
使用Programmable Oscillator Calculator計(jì)算并配置其他頻率
Xilinx的工程中只提供了一些特殊頻率的配置文件,如果想要將Si570的輸出修改成其他頻率,就需要直接對(duì)Si570的寄存器進(jìn)行配置了。
Silicon Labs提供了一個(gè)計(jì)算不同輸出頻率對(duì)于寄存器值的軟件ProgOscillatorSwInstall.zip,下載完成后進(jìn)行安裝。
安裝完成后打開(kāi)軟件,按照要求填寫(xiě)參數(shù)。設(shè)置好初始輸出頻率和期望輸出頻率,系統(tǒng)會(huì)自動(dòng)給出相應(yīng)寄存器的值。
?
按照計(jì)算出的寄存器值進(jìn)行配置,
Xilinx Ultrascale Series開(kāi)發(fā)板配置詳細(xì)步驟
Ultrascale Series的開(kāi)發(fā)板與7 Series的開(kāi)發(fā)板不同,不需要再向FPGA實(shí)現(xiàn)燒入程序,上電后自動(dòng)啟動(dòng)System controller。
具體的操作方法是(以VCU108為例):連接好USB_UART的cable,上電后打開(kāi)Tera Term,按下開(kāi)發(fā)板上的復(fù)位按鍵,此時(shí)Tera Term就會(huì)收到System Controller傳來(lái)的數(shù)據(jù),如圖 21所示。
在Ultrascale的開(kāi)發(fā)板上集成的這個(gè)System Controller,提供給客戶一個(gè)通過(guò)UART直接進(jìn)行菜單的選擇,對(duì)板上可編程的配置部分進(jìn)行配置的方法。例如需要修改Si570的輸出頻率的整個(gè)過(guò)程如下所示。
輸入選擇的數(shù)字后需要按回車(chē)確認(rèn)。
?
至此就配置完成了,Ultrascale的配置相當(dāng)簡(jiǎn)單,且不需要實(shí)現(xiàn)下載相關(guān)的bit文件。
評(píng)論
查看更多