線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1718
推到 Plurk!
推到 Facebook!

FPGA portmap error (主時鐘錯誤)

缺席
KSC
一般會員


發表:4
回覆:18
積分:4
註冊:2006-09-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-09-23 02:50:29 IP:202.40.xxx.xxx 訂閱
在寫一個LCDmon的driver,
xilinx xc2s50e tq144-6,核心頻率40Mhz,P18輸入到GCK2
輸入後除頻,先除3再除2.
但不知為何出 error.之前做其它板或書的例子都沒這問題....

ERROR:MapLib:93 - Illegal LOC on IPAD symbol "clock_40Mhz" or BUFGP symbol
"clock_40Mhz_BUFGP" (output signal=clock_40Mhz_BUFGP), IPAD-IBUFG should only
be LOCed to GCLKIOB site.

請問各位為何會有這問題?怎樣解決?
[code cpp]
原程序
VHDL part
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
entity vga_sync8 is
PORT( clock_40Mhz : IN STD_LOGIC;
horiz_sync_out, vert_sync_out : OUT STD_LOGIC;
Test,CLK_LCD : OUT STD_LOGIC;
R,G,B : OUT STD_LOGIC_VECTOR( 5 DOWNTO 0 )
end vga_sync8;

architecture Behavioral of vga_sync8 is
SIGNAL horiz_sync, vert_sync : STD_LOGIC;
SIGNAL h_count, v_count : STD_LOGIC_VECTOR( 9 DOWNTO 0 ):= (others => '0');
SIGNAL h_pix, v_pix : STD_LOGIC_VECTOR( 9 DOWNTO 0 ):= (others => '0');
SIGNAL clk_count : integer := 0;
SIGNAL clk_div6,clk_div12 : std_logic;
begin
Test <= '1';
div_clk12 : process(clock_40Mhz)
begin
if rising_edge(clock_40Mhz) then
clk_count <= clk_count 1;
if clk_count = 5 then --div6
clk_div6 <= '1' ;
clk_count <= 0 ;
else
clk_div6 <= '0';
end if;
if clk_div6 = '1' then
clk_div12 <= not clk_div12;
end if;
end if;
end process;
CLK_LCD <= clk_div12;
------------------------------------------------------
HVTiming:PROCESS
.......(省略)
END PROCESS;

end Behavioral;


UCF file part
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
NET "clock_40Mhz" LOC = "p18" ;
NET "Test" LOC = "p30" ;
NET "CLK_LCD" LOC = "p28" ;
NET "horiz_sync_out" LOC = "p27" ;
NET "vert_sync_out" LOC = "p23" ;
.......(省略)

[/code]
KSC
一般會員


發表:4
回覆:18
積分:4
註冊:2006-09-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-10-08 16:12:49 IP:202.40.xxx.xxx 訂閱
P18輸入到GCK2,這兒應該是文件錯誤
轉用P52就解決了
===================引 用 KSC 文 章===================
在寫一個LCDmon的driver,
xilinx xc2s50e tq144-6,核心頻率40Mhz,P18輸入到GCK2
輸入後除頻,先除3再除2.
但不知為何出 error.之前做其它板或書的例子都沒這問題....

ERROR:MapLib:93 - Illegal LOC on IPAD symbol "clock_40Mhz" or BUFGP symbol
"clock_40Mhz_BUFGP" (output signal=clock_40Mhz_BUFGP), IPAD-IBUFG should only
be LOCed to GCLKIOB site.

請問各位為何會有這問題?怎樣解決?
[code cpp]
原程序
VHDL part
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
entity vga_sync8 is
PORT( clock_40Mhz : IN STD_LOGIC;
horiz_sync_out, vert_sync_out : OUT STD_LOGIC;
Test,CLK_LCD : OUT STD_LOGIC;
R,G,B : OUT STD_LOGIC_VECTOR( 5 DOWNTO 0 )
end vga_sync8;

architecture Behavioral of vga_sync8 is
SIGNAL horiz_sync, vert_sync : STD_LOGIC;
SIGNAL h_count, v_count : STD_LOGIC_VECTOR( 9 DOWNTO 0 ):= (others => '0');
SIGNAL h_pix, v_pix : STD_LOGIC_VECTOR( 9 DOWNTO 0 ):= (others => '0');
SIGNAL clk_count : integer := 0;
SIGNAL clk_div6,clk_div12 : std_logic;
begin
Test <= '1';
div_clk12 : process(clock_40Mhz)
begin
if rising_edge(clock_40Mhz) then
clk_count <= clk_count 1;
if clk_count = 5 then --div6
clk_div6 <= '1' ;
clk_count <= 0 ;
else
clk_div6 <= '0';
end if;
if clk_div6 = '1' then
clk_div12 <= not clk_div12;
end if;
end if;
end process;
CLK_LCD <= clk_div12;
------------------------------------------------------
HVTiming:PROCESS
.......(省略)
END PROCESS;

end Behavioral;


UCF file part
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
NET "clock_40Mhz" LOC = "p18" ;
NET "Test" LOC = "p30" ;
NET "CLK_LCD" LOC = "p28" ;
NET "horiz_sync_out" LOC = "p27" ;
NET "vert_sync_out" LOC = "p23" ;
.......(省略)

[/code]
系統時間:2024-05-07 2:37:22
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!