Re: [問題] VHDL 程式問題!!
※ 引述《asdd (希望..........)》之銘言:
: ※ 引述《asdd (希望..........)》之銘言:
: : 小弟的部份程式:
: : cc:PROCESS(CTL,rxd_data)
: : BEGIN
: : if CTL='1' then
: : IO_ADDR<="0000000000000000" ;
: : IO_DATA<=rxd_data(7 downto 0) ;
: : else
: : IO_ADDR<="0000000100000000" ;
: : DBUS(7 downto 0)<=IO_DATA ;
: : seg(7 downto 0)<=DBUS(7 downto 0) ;
: : end if ;
: : END PROCESS;
: : 編譯環境使用xilinx ise 在編譯的時候synthesize 的時候 是可以編譯過的
: : 可是在implement desing的時候 卻出現
: : ERROR:MapLib:93 - Illegal LOC on IPAD symbol "CTL" or BUFGP symbol "CTL_BUFGP"
: : 的錯誤訊息!!不知道有沒有其他的大大遇過類似的問題......謝謝
: 我是不清楚為什麼CTL會產生BUFGP這個東西,可是該怎樣移除掉呢?
: http://gigi596.myweb.hinet.net/uuu.bmp 如圖
: 對於CTL我只是用來當作一般的IO PIN而已,IO PIN那邊是有出現CTL
: 可是在GLOBAL LOGIC 為什麼會出現那樣呢?
: 可是我嘗試著要移除它,可是都無法如意!!
: 請問該怎樣解決呢?謝謝
我翻了Xilinx ISE的Library Guide,
BUFG, BUFGP通常會在clock net上被infer出來。
照你的uuu.bmp,在你的CTL與clk上都有相對應的BUFGP,
可見得你的CTL與clk其實是clock signal。
你寫的硬體的確如此,IO_DATA在CTL positive edge取樣資料,
其他時候都在latch資料,所以CTL是用來trigger IO_DATA register的clock signal。
你MAP時的錯誤,原因我也不太懂,我一時也無法重製你的錯誤。
但我查過網路上的解法,
就是你試試看把CTL, clk接到IBUF,再用buffered後的訊號去驅動你的電路看看。
Verilog語法是這樣(抱歉,我不太會VHDL):
wire CTL2, clk2;
IBUF CTLBuf( CTL2, CTL );
IBUF clkBuf( clk2, clk );
--
西方三聖:http://p8.p.pixnet.net/albums/userpics/8/3/553683/1193661731.jpg

《佛說阿彌陀經》http://web.cc.ncu.edu.tw/~93501025/amtf.doc
《觀世音菩薩普門品》http://web.cc.ncu.edu.tw/~93501025/pmp.doc
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.204.3
討論串 (同標題文章)