我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: 初次编verilog就受打击 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

hello_4





性别: 保密 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 713
威望: 0
浮云: 1133
在线等级:
注册时间: 2006-08-04
最后登陆: 2007-06-26

5come5帮你背单词 [ base /beis/ n. 基础,底部,基地,根据地;vt. 以…为根据 ]


初次编verilog就受打击

module controller(send_floor,stop,up,clk);
input up;
input stop;
input clk;
reg upin;
reg stopin;
reg current_up,next_up;
reg send_floor;
output send_floor;

parameter
busy=1'b1,
idle=1'b0,
send=1'b1,
nsend=1'b0;

initial
begin
current_up=0;
end

always @(posedge clk)
begin
upin<=up;
stopin<=stop;
end


always @(posedge clk)
begin
case(current_up)
idle:begin
if(upin)
begin
next_up<=busy;
send_floor<=send;
end
else
next_up<=idle;
end
busy:begin
if(stopin)
begin
next_up<=idle;
send_floor<=nsend;
end
else
next_up<=busy;
end
default:next_up<=current_up;
endcase
current_up<=next_up;

end

endmodule
顶端 Posted: 2007-04-26 08:24 | [楼 主]
hello_4





性别: 保密 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 713
威望: 0
浮云: 1133
在线等级:
注册时间: 2006-08-04
最后登陆: 2007-06-26

5come5帮你背单词 [ accelerate /æk'seləreit/ vt. 加速,促进;vi. 增加速度 ]


Quote:
引用第2楼yinx于2007-04-26 08:54发表的:
我也不是很懂,不过我把output的声明提到reg的前面我就编译通过了

module controller(send_floor,stop,up,clk);
input up;
input stop;
.......

果然有经验,确实是顺序的问题,这种小问题有时真折磨人啊,谢了。
PS:以前都是用VHDL的,但cadence对verilog支持要好的多,所以就改学verilog.
顶端 Posted: 2007-04-26 09:26 | [1 楼]
hello_4





性别: 保密 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 713
威望: 0
浮云: 1133
在线等级:
注册时间: 2006-08-04
最后登陆: 2007-06-26

5come5帮你背单词 [ dance /da:ns/ vi. 跳舞;n. 舞蹈,舞会 ]


Quote:
引用第7楼wolfc于2007-05-03 09:51发表的:
wire 最好都声明出来
lz应该写的是状态机吧。
另外代码风格不好。 对于IC设计来说写的好多都是不可综合的。

要声明那些wire呢?我最怕声明wrie了,因为都不知道内部结构。
你眼力真好,确实是状态机。代码那些地方不好?或者是不可综合的?最近也为这个头疼。请指教,不胜感激。
顶端 Posted: 2007-05-03 13:35 | [2 楼]
我来我网·5come5 Forum » 电子设计·数学建模

Total 0.011131(s) query 6, Time now is:01-13 14:04, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号