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

📄 signal.v

📁 本程序包含:EEPROM的功能模型(eeprom.v)、读/写EEPROM的verilog HDL 行为模块(eeprom_wr.v)、信号产生模块(signal.v)和顶层模块(top.v)
💻 V
字号:
`timescale 1ns/1ns`define timeslice 200module Signal(RESET,CLK,RD,WR,ADDR,ACK,DATA);output RESET;output CLK;output RD,WR;output[10:0]ADDR;input ACK;inout[7:0] DATA;reg RESET;reg CLK;reg RD,WR;reg W_R;reg[10:0]ADDR;reg[7:0]data_to_eeprom;reg[10:0]addr_mem[0:255];reg[7:0] data_mem[0:255];reg[7:0] ROM[0:2047];integer i,j;integer OUTFILE;assign DATA=(W_R)?8'bz:data_to_eeprom;  //?????//-----??????-----always#(`timeslice/2)CLK=~CLK;//-----??????----initial    begin        RESET=1;        i=0;        j=0;        W_R=0;        CLK=0;        RD=0;        WR=0;        #1000;        RESET=0;        repeat(15)             begin                 #(5*`timeslice);                 WR=1;                 #(`timeslice);                 WR=0;                 @(posedge ACK);//dengdai gao dianping de daolai              end             #(10*`timeslice);             W_R=1;             repeat(15)             begin                 #(5*`timeslice)                 RD=1;                 #(`timeslice);                 RD=0;                 @(posedge ACK);             end         end  //-------xie caozuo---  initial  begin     $display("writing---writing---writing---writing");     #(2*`timeslice);     for(i=0;i<=15;i=i+1)       begin                      ADDR=addr_mem[i];           data_to_eeprom=data_mem[i];           $fdisplay(OUTFILE,"@%0h  %0h",ADDR,data_to_eeprom);           @(posedge ACK);       end   end        //------???----initial  @(posedge W_R)    begin        ADDR=addr_mem[0];        $fclose(OUTFILE);        $readmemh("./eeprom.dat",ROM);//  ba shuju wenjian de shuju du dao ROM zhongqu        $display("Begin READING---READING---READING---READING");         for(j=0;j<=15;j=j+1)           begin               ADDR=addr_mem[j];               @(posedge ACK);               if(DATA==ROM[ADDR])                  $display("DATA %0h==ROM[%0h]---READ RIGHT",DATA,ADDR);                else                  $display("DATA %0h!=ROM[%0h]---READ WRONG",DATA,ADDR);            end        endinitial  begin      OUTFILE=$fopen("./eeprom.dat");      $readmemh("./addr.dat",addr_mem);      $readmemh("./data.dat",data_mem);  endendmodule

⌨️ 快捷键说明

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