verilog 程序题

verilog 程序题,第1张

首先,硬件的不叫程序,叫代码。。。

其次你那个A是[3:0]A吧?

第一圈:k=2,v=v^A[2]

w=A[2]^A[3]

你这个v没有初始值啊。怎么计算?

修改了一下,加了输入输出端口,以及触发条件

module test(red,amber,green ,able)

input able

output red,amber,green

reg clock,red,amber,green

parameter on=1,off=0,red_tics=350,green_tics=200,amber_tics=30

//交通灯初始化

initial red=off

initial amber=off

initial green=off

//交通灯控制时序

always

wait(able)

begin

red=on//开红灯

light(red,red_tics)//调用等待任务

green=on//开绿灯

light(green,green_tics)//等待

amber=on//开黄灯

light(amber,amber_tics)//等待

end

//定义交通灯开启时间的任务

task light

output color

input [31:0]tics

begin

repeat(tics)

@(posedge clock)

color=off

end

endtask

always

begin

#100 clock=0

#100 clock=1

end

endmodule

module select(sel,in,out)

input [1:0]sel

input [7:0]in

output [7:0]out0,out1,out2,out3

reg [7:0]out0,out1,out2,out3

always @(*)

case(sel)

2'b00:out0=in

2'b01:out1=in

2'b10:out2=in

2'b11:out3=in

default:

begin

out0=8'b0

out1=8'b0

out2=8'b0

out3=8'b0

end

endcase

endmodule


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11749809.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存