照着教程写了第一个工程
都是用的verilog
`timescale 1ns / 1ps // // Company: // Engineer: // // Create Date: 2018/04/27 23:17:56 // Design Name: // Module Name: test // Project Name: // Target Devices: // Tool Versions: // Description: // // Dependencies: // // Revision: // Revision 0.01 - File Created // Additional Comments: // // module test( input [7:0] switch, output [7:0] led ); assign led=switch; endmodule
以上是.v代码文件
以下是testbench:
`timescale 1ns / 1ps // // Company: // Engineer: // // Create Date: 2018/04/27 23:21:10 // Design Name: // Module Name: test_tb // Project Name: // Target Devices: // Tool Versions: // Description: // // Dependencies: // // Revision: // Revision 0.01 - File Created // Additional Comments: // // module test_tb(); reg [7:0] switch; wire [7:0] led; test uut( .switch(switch), .led (led) ); initial begin switch =8'h0; #100; end always #10 begin switch={$random}%256; end endmodule
原来timescale是1ns/1ps=1000啊,那么#100不应该是100000ps吗,为什么initial只持续了10000ps啊~always倒是没错......
8‘h0是8个0,就是00000000啦~
至于random就很好读了~取2^8的余数,控制在8位~
本来想再研究下的,但是太晚啦,还病着,得睡觉啊~
我一定会好好学嵌入式的!