阅读:1756回复:3
帮我看看这个程序?(50分感谢)
CP为10M方波输入,PLUSEX为输出。程序本身没太多用途,但为何不行???
XC2S15 -5 TQ144 ISE 6 entity XC2S151 is Port ( CP : IN STD_LOGIC ; --CLK CP5:OUT STD_LOGIC; PLUSEX : OUT STD_LOGIC; ); end XC2S151; architecture Behavioral of XC2S151 is SIGNAL QN :STD_LOGIC_VECTOR (3 DOWNTO 0); SIGNAL CP1,CP2,RST,CONXA,CONXB:STD_LOGIC; SIGNAL COUNTER :STD_LOGIC_VECTOR (15 DOWNTO 0); SIGNAL CP11,CP22 :STD_LOGIC; SIGNAL DLY :STD_LOGIC begin PROCESS(CP,RST) --- 十分频 BEGIN IF RST=\'1\'THEN QN<=\"0000\"; ELSIF CP\' EVENT AND CP=\'1\' THEN QN<=QN+1; END IF; END PROCESS; RST<=\'1\' WHEN QN=10 ELSE \'0\'; CP2<=QN(2); CP5<=CP2; PROCESS(CP2) BEGIN IF CP2\' EVENT AND CP2=\'0\' THEN IF CONXA=\'1\' THEN CONXB<=\'0\'; ELSE CONXB<=\'1\'; END IF; END IF; END PROCESS; PROCESS(CP2) BEGIN IF CP2\' EVENT AND CP2=\'1\' THEN IF CONXB=\'1\' THEN CONXA<=\'1\'; ELSE CONXA<=\'0\'; END IF; END IF; END PROCESS; PROCESS(CONXA,CONXB) BEGIN PLUSEX<=CONXA XOR CONXB; END PROCESS; end Behavioral; 如此简单的程序,在MAP时出错: Started process \"Map\". Using target part \"2s15tq144-6\". ERROR:MapLib:93 - Illegal LOC on IPAD symbol \"CP\" or BUFGP symbol \"CP_BUFGP\" (output signal=CP_BUFGP), IPAD-IBUFG should only be LOCed to GCLKIOB site. Error found in mapping process, exiting... Errors found during the mapping phase. Please see map report file for more details. Output files will not be written. Design Summary -------------- Number of errors : 1 Number of warnings : 0 ERROR: MAP failed Process \"Map\" did not complete. Mapping Module xc2s151 . . . MAP command line: map -intstyle ise -p xc2s15-tq144-6 -cm area -pr b -k 4 -c 100 -tx off -o xc2s151_map.ncd xc2s151.ngd xc2s151.pcf Mapping Module xc2s151: failed 不知道为何,请指点!! 不知道还有没有更好的输出方波的办法??? |
|
沙发#
发布于:2004-04-29 16:58
三个错误:
1)你没有加: lIBRARY ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; 2)PLUSEX : OUT STD_LOGIC; ); 括号前多了一个分号 3)SIGNAL DLY :STD_LOGIC 末尾少了一个分号 改过之后map 没有问题了,不要忘了给分哦 |
|
板凳#
发布于:2004-04-29 16:59
程序最好写规范点
|
|
地板#
发布于:2004-04-29 21:14
谢谢你!你上面提到的错误我还看的出来。
是我复制过来时出的错。 但是如果是这样的话,综合时早就提示错误了,肯定不能到 MAP这一步。 问题我找到了,是属于CP由于扇出太多,被ISE自动指定为全局时钟,但我的CP没有连接到GCLK 管脚。 |
|