1. 程式人生 > >xilinx 下呼叫鎖相環IP出錯

xilinx 下呼叫鎖相環IP出錯

使用ISE 自帶的模擬軟體 或者modelsim 模擬軟體 (測試檔案右擊---design properties--可以選擇你想用的模擬工具),都會存在以下問題:

1、生成  .XCO檔案之後,直接生成該IP檔案的測試檔案,可以模擬成功。(這裡顯示,埠的名字都是大寫)

2、生成  .XCO檔案之後,再新建一個原理圖檔案(做為頂層檔案),將這個.XCO檔案拖到原理圖檔案中(在symbols 下,選擇該工程,就會顯示.XCO的原理圖檔案,此時發現,所有的埠名字都是小寫)。語法檢查沒有出錯,開始模擬的時候,總是提示以下錯誤:

ERROR:HDLCompiler:25 - "F:/liulu/project/fpga_project/test/mypll3/mypll.vf" Line 32: Module <pllip> does not have a port named <clk_in1>.

ERROR:HDLCompiler:25 - "F:/liulu/project/fpga_project/test/mypll3/mypll.vf" Line 33: Module <pllip> does not have a port named <reset>.

ERROR:HDLCompiler:25 - "F:/liulu/project/fpga_project/test/mypll3/mypll.vf" Line 34: Module <pllip> does not have a port named <clk_out1>.  

注:<pllip>  

是我呼叫IP核的檔案,clk_in1resetclk_out1 IP核自動生成的埠,為什麼總提示在PLLIP中,沒有該埠呢?

問題分析:為什麼.XCO檔案中的埠名字是大寫,而生成的原理圖檔案中就是小寫,所以,我把原理圖檔案(頂層檔案)中,關於鎖相環的例項呼叫,

   pllip  XLXI_1 (.clk_in1(clkin),
                           .reset(rst),
                          .clk_out(clkout),
                          .locked(locked));

改為

   pllip  XLXI_1 (.CLK_IN1(clkin),
                           .RESET(rst),
                          .CLK_OUT1(clkout),
                          .LOCKED(locked));

模擬就可以通過!