2015-04-16 64 views
1

我對Zedboard很陌生。我正在用VHDL寫一個計數器,並嘗試在Zedboard Zynq 7000 XC7Z020-1 CSG484CES EPP上實現它。Zedboard新增功能:如何在zedboard上分配「clk」pin號碼?

當我分配引腳時,我想要一個時鐘。但將「clk」分配給用戶交換機似乎是錯誤的。於是我擡頭看文件ZedBoard_HW_UG_v1_1.pdf

在第一章2.5,它說以下內容:

的EPP的PS子系統使用專用的33.3333 MHz的時鐘源,IC18,福克斯767- 33.333333-12,與串聯終端。 PS基礎設施可以爲PL系統生成最多四個基於PLL的時鐘。一個片上100 MHz振盪器IC17,Fox 767-100-136爲第13組引腳Y9上的PL子系統時鐘輸入提供電源。

但是當我分配NET「clk」LOC = Y9;,它似乎不起作用!我無法找到時鐘的位置!假設有一個按鈕或者我可以控制的東西,對吧?

警告是這樣的:

PhysDesignRules:2452 - 的IOB q < 1>是不受限的(LOC)到一個特定的位置和/或有一個未定義的I/O標準(IOSTANDARD)。這種情況可能會嚴重影響設備,並會在創建比特流時出錯。應該通過正確指定引腳位置和I/O標準來糾正。

每個引腳都有這樣的警告。 這裏是我的UCF文件:

NET "clk" CLOCK_DEDICATED_ROUTE = FALSE; 
NET "q[6]" LOC = T22; 
NET "q[5]" LOC = T21; 
NET "q[4]" LOC = U22; 
NET "q[3]" LOC = U21; 
NET "q[2]" LOC = V22; 
NET "q[1]" LOC = W22; 
NET "q[0]" LOC = U19; 

NET "d[6]" LOC = G22; 
NET "d[5]" LOC = H22; 
NET "d[4]" LOC = F21; 
NET "d[3]" LOC = H19; 
NET "d[2]" LOC = H18; 
NET "d[1]" LOC = H17; 
NET "d[0]" LOC = M15; 
NET "clk" LOC = Y9; 
NET "clr" LOC = T18; 
NET "alm" LOC = U14; 

我在哪裏可以找到文檔解釋什麼,我需要做什麼? 如果Y9是時鐘的正確選擇,我怎麼知道上邊緣已經到來?因爲我沒有可以操作的東西嗎? 非常感謝!

+0

使用Y9是正確的。 ISE或Vivado是否確認你的聯繫? – Paebbels

+0

@Paebbels是的,它不會報告有關Y9的錯誤,但是每個信號(輸入和輸出)都有如下警告:[PhysDesignRules 2452] IOB clr要麼沒有限制(LOC)到特定的位置和/或未定義的I/O標準(IOSTANDARD)。這種情況可能會嚴重影響設備,並會在創建比特流時出錯。它應該通過正確指定引腳位置和I/O標準來糾正。所以我不知道如何處理它。 –

+0

您是否已經爲LOC另外設置了IOSTANDARD? ISE是否讀取您的ucf文件(有些情況下ISE忽略ucf文件)。如果使用您的ucf文件作爲命令行參數調用translate,則可以查看該文件。 – Paebbels

回答

0

您需要將IOSTANDARD添加到您的ucf文件。引腳和約束的完整列表列於master ucf file

例如,引腳Y9需要LVCMOS33。

+0

哇...我看到你的文件,是寫一個ucf文件的正確方法嗎?我在哪裏可以找到詳細解釋這一點的書籍或文章?如果Y9是時鐘的正確選擇,我怎麼知道上邊緣已經到來?因爲我沒有可以操作的東西嗎?對不起,我對zedboard很陌生,很困惑...... –

+0

這是完整的ucf。您需要複製針腳的線條。由於7系列FPGA對於每個引腳均需要IOSTANDARD。賽靈思提供了一個「約束用戶指南」,該指南解釋了所有可能的約束,不僅針對ucf文件和引腳。 – Paebbels