在verilog中如何对数据某一位赋值
时间:10-02
整理:3721RD
点击:
想对数据led的某一位赋值,采用了下面的语句:
wire [3:0]ql;
assign ql=RxD_data%5'd16;
assign led[ql]=1'b1;
但quartus报错:Error (10734): Verilog HDL error at uart_rx_test.v(56): ql is not a constant
ql只能是一个常量吗,有法使用变量么?
wire [3:0]ql;
assign ql=RxD_data%5'd16;
assign led[ql]=1'b1;
但quartus报错:Error (10734): Verilog HDL error at uart_rx_test.v(56): ql is not a constant
ql只能是一个常量吗,有法使用变量么?
always语句下可以把,<=
只有几个bit的话,可以写成case 或者类似的结构即可
ql改成reg型试试
wire [3:0]ql;
assign ql=RxD_data%5'd16;
1.ql是4bit位宽,最大值是15吧,不可能赋值为16
2.RxD_data%5是取模操作吗,RxD_data是固定数吗
