作者zxvc (百善孝为先)
站内Electronics
标题Re: [问题] VHDL 程式问题!!
时间Thu Dec 20 15:31:11 2007
※ 引述《zxvc (百善孝为先)》之铭言:
: ※ 引述《asdd (希望..........)》之铭言:
: : 我是不清楚为什麽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://www.xilinx.com/support/answers/9913.htm
在某些Xilinx FPGA series,例如Spartan-II,
BUFG不能直接接在IPAD上,而Synthesis tool预设会infer IBUFG,
但IBUFG不能位於non-GCLKIOB的pin位置上,
如果接错不相容的pin脚就会出现Illegal LOC on IPAD symbol...的错误。
解决方法就是你必须把他接到GCLKIOB的pin。
但要如何知道GCLKIOB pin的位置?
你必须下载你的FPGA Chip的pin out文件:
http://www.xilinx.com/support/documentation/index.htm
例如:Spartan-IIE 1.8V FPGA Family: Pinout Tables
http://www.xilinx.com/support/documentation/data_sheets/ds077_4.pdf
第49页
Spartan-IIE XC2S400E FG-676的A13 pin的功能是GCK3, I。
GCK就是global clock,所以原po的module的clk就应该接在像这种地方。
但原po的CTL其实并不是要使用global clock,
而是"外接"的一个输入,但它其实是IO_DATA的clock。
ISE 8.1i Libraries Guide说明书第135页有一段:
In Virtex, Virtex-E, Spartan-II, and Spartan-IIE,
the BUFG cannot be driven directly from a pad.
It can be driven from an IBUFG to indicate to use the dedicated
pin (GCLKIOB pin) or from an internal driver to create an internal clock.
BUFG can also be driven with an IBUF to represent
an externally driven clock that does not use the dedicated pin.
所以说CTL照我前一篇的说法就需要用IBUF去buffer,
而不必像clk接在有GCK功能的pin。
请原po测试看看。
--
西方三圣:
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
※ 编辑: zxvc 来自: 140.115.204.3 (12/20 15:32)
1F:推 asdd:真的很感谢Z大的帮忙,很成功解决我的问题了!! 12/21 00:14
2F:推 grant0920:也可以用PlanAhead和Floorplanner做BUFG的assign,产生 12/21 22:31
3F:→ grant0920:产生其相对应的UCF file,在MAP就不会有问题了:) 12/21 22:31