完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
//八位多路开关
module Mux_8(addr, in1, in2, in3, in4, in5, in6, in7, in8, Mout, nCS); input[2:0] addr; input[width-1:0] in1, in2, in3, in4, in5, in6, in7, in8; input nCS; output[width-1:0]Mout; parameter width = 8; always@(addr or in1 or in2 or in3 or in4 or in5 or in6 or in7 or in8 or nCS) begin if(! nCS) case(addr) 3`b000: Mout = in1 ; 3`b001: Mout = in2 ; 3`b010: Mout = in3 ; 3`b011: Mout = in4 ; 3`b100: Mout = in5 ; 3`b101: Mout = in6 ; 3`b110: Mout = in7 ; 3`b111: Mout = in8 ; endcase else Mout = 0; end endmodule 这个程序是照着 夏宇闻译_Verilog数字系统设计教程(第二版)上面敲的 为啥编译时总是有错误 Error (10137): Verilog HDL Procedural Assignment error at Mux_8.v(20): object "Mout" on left-hand side of assignment must have a variable data type |
|
相关推荐
5个回答
|
|
好吧 还是自己解决了 去掉使能控制 直接完成数选功能
//八位多路开关 module Mux_8(addr, in1, in2, in3, in4, in5, in6, in7, in8, Mout); input[2:0] addr; input[width-1:0] in1, in2, in3, in4, in5, in6, in7, in8; output reg [width-1:0] Mout; parameter width = 8; always@(addr or in1 or in2 or in3 or in4 or in5 or in6 or in7 or in8 ) begin case(addr) 3'b000: Mout = in1 ; 3'b001: Mout = in2 ; 3'b010: Mout = in3 ; 3'b011: Mout = in4 ; 3'b100: Mout = in5 ; 3'b101: Mout = in6 ; 3'b110: Mout = in7 ; 3'b111: Mout = in8 ; default: Mout = 0; endcase end endmodule |
|
|
|
用了使能,缺少输出寄存器定义:"reg[width-1:0] Mout"
|
|
|
|
|
|
{:soso_e101:}, 还需要多学习声光控开关http://www.haiyingpir.com
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
求FPGA 驱动控制ltc2271 或者 ltc2180 或者 ltc2190或者 ltc2202 的代码
904 浏览 0 评论
353 浏览 0 评论
求助:遇见诡异问题,FPGA模块A输出端口连接模块B输入后,模块A不能正常工作的
1085 浏览 1 评论
409 浏览 0 评论
1020 浏览 1 评论
3918 浏览 89 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-4 22:23 , Processed in 0.551140 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号