完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
写了个最简单的分频程序:
[C] 纯文本查看 复制代码 module fp_verilog( clk,rst_n, fm );parameter devide=32'd99;input clk; //时钟信号input rst_n; //复位output fm; //输出 低亮高不亮reg[31:0] cnt;always @(posedge clk or negedge rst_n)beginif(rst_n==0||cnt==0)cnt<=devide;elsecnt<=cnt-32'd1;endassign fm=(cnt>=(devide/2))? 1'b0:1'b1;endmodule显示if语句用法错误 改为: [C] 纯文本查看 复制代码 module fp_verilog( clk,rst_n, fm );parameter devide=32'd99;input clk; //时钟信号input rst_n; //复位output fm; //输出 低亮高不亮reg[31:0] cnt;always @(posedge clk or negedge rst_n)beginif(rst_n==0)cnt<=devide;else if(cnt==0)cnt<=devide;elsecnt<=cnt-32'd1;endassign fm=(cnt>=(devide/2))? 1'b0:1'b1;endmodule后,编译通过,请问这样使用逻辑表达式有什么问题,为何在if语句中条件表达式不能使用“或”? |
|
相关推荐
4个回答
|
|
我发现不是 "或"的问题了,是always 后的第一个if 必须为敏感表中的变量,只要添加其他任何变量都会出错,我又发了一个帖子,你可以看看
|
|
|
|
|
|
|
|
错误信息是在always块中条件表达式中无法匹配操作数Error (10200): Verilog HDL Conditional Statement error at fp_verilog.v(17): cannot match operand(s) in the condition to the corresponding edges in the enclosing event control of the always construct
|
|
|
|
我发现不是 "或"的问题了,是always 后的第一个if 必须为敏感表中的变量,只要添加其他任何变量都会出错,所以把第二段程序中的第二个条件判断与第一个调换也会出错,我又发了一个帖子,你可以看看
|
|
|
|
只有小组成员才能发言,加入小组>>
2900 浏览 3 评论
27706 浏览 2 评论
3480 浏览 2 评论
3987 浏览 4 评论
基于采用FPGA控制MV-D1024E系列相机的图像采集系统设计
2335 浏览 3 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 09:42 , Processed in 0.657478 second(s), Total 88, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号