⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 miller_decode_tb.v

📁 用verilog设计密勒解码器 一、题目: 设计一个密勒解码器电路 二、输入信号: 1. DIN:输入数据 2. CLK:频率为2MHz的方波
💻 V
字号:
`timescale 10ns/1nsmodule top_tb;reg  DIN,CLK,RESET;wire DOUT,DATA_EN,BIT_EN;miller_decode U1(            //inputs               .DIN(DIN),    // input miller encode serial              .CLK(CLK),    // system clk              .RESET(RESET),  // system reset            //outputs              .DOUT(DOUT),   // output miller decode serial              .DATA_EN(DATA_EN),// output enable              .BIT_EN(BIT_EN)  // bit effective enable                     );reg clock;parameter step=50;     // T_clock=step*10nsparameter A=16'b1111_1111_0000_0111;parameter B=16'b1111_1111_1111_1111;parameter C=16'b0000_0111_1111_1111;reg[16*11-1:0] frame1,frame2,frame3,frame4;reg[4*16*11+16*9-1:0] frame_total; // 1 start+ 8 signal +2 stop//reg[4*16*11+16-1:0] frame_total; //// input miller serial signalinitial begin    DIN=1;    frame1={C,A,B,C,A,B,A,A,B,C,B}; // 1001_0110    frame2={C,C,C,C,A,B,A,B,C,C,B}; // 0001_0100    frame3={C,A,B,A,B,C,A,B,A,B,B}; // 1010_0101    frame4={C,C,C,A,B,C,A,A,A,B,B}; // 0010_0111    frame_total={B,frame1,B,B,frame2,B,B,frame3,B,B,frame4,B,B}; // add B to stop   // frame_total={B,frame1,frame2,frame3,frame4};    end//// generate clock & resetinitialbegin  clock = 0;   forever  //#(16*step)  #(step/2) clock=~clock;           // 2MHzend//always #(step/2) clock =~clock;   // 2MHzinitialbegin        RESET = 0;  #step RESET = 1;  // 1 clock periodendinitial begin    #((4*16*11+16*9)*step) $stop;    //#((4*16*11+16)*step) $stop;end// inputalways @(negedge clock)begin    DIN<=frame_total[847];  // 847=4*16*11+16*9-1    //DIN<=frame_total[719];   // 719=4*16*11+16-1    frame_total<=(frame_total<<1);end// generate system clkalways @ (clock) //din orclockbegin  CLK = DIN & clock;  endendmodule

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -