请教一个7分频编译遇到的问题!

[复制链接]
3515|6
 楼主| zgh51688 发表于 2009-4-12 23:06 | 显示全部楼层 |阅读模式
在编译是老是报:Error&nbsp;(10028):&nbsp;Can't&nbsp;resolve&nbsp;multiple&nbsp;constant&nbsp;drivers&nbsp;for&nbsp;net&nbsp;&quot;cout1&quot;&nbsp;at&nbsp;div7.v(19)<br />Error&nbsp;(10029):&nbsp;Constant&nbsp;driver&nbsp;at&nbsp;div7.v(33)<br />Error:&nbsp;Can't&nbsp;elaborate&nbsp;top-level&nbsp;user&nbsp;hierarchy<br />Error:&nbsp;Quartus&nbsp;II&nbsp;Analysis&nbsp;&&nbsp;Synthesis&nbsp;was&nbsp;unsuccessful.&nbsp;3&nbsp;errors,&nbsp;4&nbsp;warnings<br />&nbsp;&nbsp;&nbsp;&nbsp;Error:&nbsp;Processing&nbsp;ended:&nbsp;Sun&nbsp;Apr&nbsp;12&nbsp;22:54:01&nbsp;2009<br />&nbsp;&nbsp;&nbsp;&nbsp;Error:&nbsp;Elapsed&nbsp;time:&nbsp;00:00:00<br />我是新手问一下,我定义的不是常量啊!!<br /><br />module&nbsp;div7(clkin,reset,clkout);<br />&nbsp;&nbsp;&nbsp;&nbsp;input&nbsp;&nbsp;&nbsp;&nbsp;clkin,reset;<br />&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;&nbsp;&nbsp;&nbsp;clkout;<br />&nbsp;&nbsp;&nbsp;&nbsp;reg[2:0]&nbsp;m,n;<br />&nbsp;&nbsp;&nbsp;&nbsp;reg&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout1,cout2;<br />&nbsp;&nbsp;&nbsp;&nbsp;assign&nbsp;&nbsp;&nbsp;&nbsp;clkout=cout1|cout2;<br />&nbsp;&nbsp;&nbsp;&nbsp;always&nbsp;@(posedge&nbsp;clkin)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!reset)&nbsp;begin&nbsp;cout1&lt=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m&lt=0;&nbsp;end<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if(reset)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(m==6)&nbsp;begin&nbsp;m&lt=0;end<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;m&lt=m+1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(m==2)&nbsp;cout1=~cout1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if(m==5)&nbsp;cout1=~cout1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;always&nbsp;@(negedge&nbsp;clkin)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!reset)&nbsp;begin&nbsp;cout2&lt=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;n&lt=0;&nbsp;end<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if(reset)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(n==6)&nbsp;begin&nbsp;n&lt=0;end<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;n&lt=n+1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(n==2)&nbsp;cout1=~cout1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if(n==5)&nbsp;cout1=~cout1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />endmodule&nbsp;&nbsp;&nbsp;&nbsp;
worrior_1 发表于 2009-4-13 09:51 | 显示全部楼层

如果你这样定义count1他就是变量

reg&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout1,cout2;<br />你这样定义了,他就相当于中间变量了<br />中间变量是不能直接输出的,必须在最后把中间变量再赋值给输出信号,多看看书吧
 楼主| zgh51688 发表于 2009-4-13 11:00 | 显示全部楼层

是在定义一个输出网?

reg&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout1,cout2;<br />&nbsp;&nbsp;&nbsp;&nbsp;wire&nbsp;&nbsp;&nbsp;&nbsp;wout;<br />&nbsp;&nbsp;&nbsp;&nbsp;assign&nbsp;&nbsp;&nbsp;&nbsp;wout=cout1|cout2;<br />&nbsp;&nbsp;&nbsp;&nbsp;assign&nbsp;&nbsp;&nbsp;&nbsp;clkout=wout;<br />可还是同样问题&nbsp;通不过<br />能不能说细点!!<br />谢谢!!
Fourier00 发表于 2009-4-17 20:16 | 显示全部楼层

在两个 always块中对一个变量赋值了

在两个&nbsp;always块中对一个变量赋值了
lelee007 发表于 2009-4-18 12:02 | 显示全部楼层

错误就是4L所说的

不能在两个always里边对同一个量进行操作
McuPlayer 发表于 2009-4-19 19:09 | 显示全部楼层

Verilog把人都养懒了

先用数字电路搭好电路,再写Verilog肯定是很快就OK了
老狼迈克 发表于 2009-5-4 15:14 | 显示全部楼层

阿飞

弄这么麻烦啊&nbsp;直接用电路搭不久好了&nbsp;我七八年来都这么干的&nbsp;真要碰到个把需要格式文件的&nbsp;直接用工具一转就成语言文件了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

23

主题

73

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部