當前位置:編程學習大全網 - 源碼下載 - 基於verilog的QPSK調制解調系統,書上代碼有了 就是不知道如何進行編寫testbench 還請大蝦勞駕了

基於verilog的QPSK調制解調系統,書上代碼有了 就是不知道如何進行編寫testbench 還請大蝦勞駕了

QPSK調制程序的testbench程序如下:

********************************************************************************

`timescale 1ns/1ns //單位時間,時間精度

module qpsk_tb; //qpsk調制的testbench

reg clk;

reg rst;

reg x;

wire y;

qpsk qpsk(.clk(clk),.rst(rst),.x(x),.y(y)); //將tb輸入輸出與主程序qpsk關聯起來

always #25 clk=~clk; //#25表示25個時間單位,

// 這句表示clk信號的周期是50(*1ns)

initial

begin

clk=0;x=0;rst=0; //賦初值

#10;rst=1;x=1; //間隔10ns,將復位信號置為1

#10;x=0;

#400; x=1; //時鐘周期是50ns,這裏的信號表示的波形為

#400; x=0; //1111111100000000111100001100

#200; x=1;

#200; x=0;

#100; x=1;

#100; x=0;

end

endmodule

QPSK解調程序的testbench程序如下:

********************************************************************************

`timescale 1ns/1ns //單位時間,時間精度

module qpsk_detb; //qpsk解調的testbench

reg clk;

reg rst;

reg x;

wire y;

qpsk_de qpsk_de(.clk(clk),.rst(rst),.x(x),.y(y)); //將tb輸入輸出與主程序qpsk_de關聯起來

always #25 clk=~clk; //#25表示25個時間單位

initial

begin

clk=0;x=0;rst=0;

#10;rst=1;x=1;#10;x=0; //時鐘周期是50ns,這裏的信號表示的波形為

#400;x=1;#400;x=0; //1111111100000000

#200;x=1;#200;x=0; //11110000

#200;x=0;#200;x=1; //00001111

#100;x=0;#200;x=1;#100;x=0; //00111100

#100;x=1;#200;x=0;#100;x=1; //11000011

#100;x=1;#100;x=0; //1100

end

endmodule

  • 上一篇:微信最接地氣的小程序,壹鍵梳理親戚關系,堪稱過年必備神器
  • 下一篇:電腦網頁秒慢。
  • copyright 2024編程學習大全網