FPGA Editor應用技巧
當然,你可以改變PCB,更換出現問(wèn)題的ASIC或者讓第三方IP小組來(lái)修改時(shí)鐘輸出邏輯以提供90度相移的interface_clk。所有這些解決方案都既耗費時(shí)間又成本高昂。一個(gè)更簡(jiǎn)單的建議是利用FPGA Editor來(lái)記錄修改動(dòng)作,對interface_clk邏輯進(jìn)行必要的更改,從而為出現問(wèn)題的ASIC提供正確的時(shí)鐘相位。一旦有了相關(guān)修改的 FPGA Editor腳本,就可以回放這些命令行腳本記錄的修改步驟,而你也可以正常繼續你的FPGA設計流程。當出現問(wèn)題的ASIC修復正常以后,你只需要將 FPGA Editor腳本從編譯腳本中移除就可以,而interface_clk也會(huì )恢復其正常的行為。
要想對設計進(jìn)行手動(dòng)編輯,首先需要在FPGA Editor中開(kāi)啟讀/寫(xiě)(read/write)權限。在菜單條中點(diǎn)擊File → Main Properties。在此菜單下,可以調整編輯模式(從No logic Change到Read/Write)。點(diǎn)擊Apply,現在就可以開(kāi)始對設計進(jìn)行編輯了。在下一步利用FPGA Editor記錄對設計進(jìn)行的所有修改時(shí),只需要簡(jiǎn)單地從菜單條中點(diǎn)擊Tools → Scripts →Begin Recording。FPGA Editor將會(huì )提示輸入一個(gè)腳本名字(如patch.scr)。輸完腳本名字,就可以對設計進(jìn)行必要的修改了。
在設計中運行設計規則檢查(DRC)來(lái)看一下是否有規則沖突的紅色標志是一個(gè)很好的方式。在我的設計例子中,有14條警告,但都可以忽略。下一步我們將需要定位interface_clk使用的DCM,并為此DCM的90度相移輸出創(chuàng )建另一個(gè)稱(chēng)為DCM_clk90_out的時(shí)鐘。這需要利用全局時(shí)鐘布線(xiàn)資源將時(shí)鐘連接到BUFG。要增加一個(gè)BUFG,先在FPGA構造中找到一個(gè)未用的BUFG位置,右擊并選擇 Add(添加)。然后,工具會(huì )提醒你為BUFG命名(clk90_bufg)并確定其類(lèi)型:BUFG(參見(jiàn)圖1)。
圖1:屬性窗口允許用戶(hù)配置并命名選定的邏輯項目
創(chuàng )建了新的BUFG,就需要將其輸入和輸出連接到適當的位置。在本例中,DCM的90度相移輸出將驅動(dòng)BUFG。在窗口A(yíng)rray1中,點(diǎn)擊DCM 的90度輸出端衰減器,在窗口A(yíng)rray2中,點(diǎn)擊BUFG的輸入端衰減器,同時(shí)按住Ctrl鍵,可實(shí)現連接。然后釋放Ctrl鍵,點(diǎn)擊鼠標右鍵并選擇 Add。工具會(huì )提示為新網(wǎng)絡(luò )連接輸入名字。這樣就將DCM 和 BUFG通過(guò)新網(wǎng)絡(luò )連接到一起了(參看圖2)。
評論