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

📄 tb_t8255a.v

📁 采用Verilog语言实现了8255A的功能
💻 V
字号:
module  tb_T8255A;
  reg        clk;
  reg        rst;
  reg        nCS;
  reg        nRD;
  reg        nWR;
  reg[1:0]   A;
  reg[7:0]   Din;
  reg[7:0]   PA_In;
  reg[7:0]   PB_In;
  reg[7:0]   PC_In;
  
  wire       Data_En;
  wire       PortA_IO_En;
  wire       PortB_IO_En;
  wire[7:0]  PortC_IO_En; 
  wire[7:0]  Dout;
  wire[7:0]  PA_Out;
  wire[7:0]  PB_Out;
  wire[7:0]  PC_Out;
  
  initial
    fork
    	clk=0;
    	rst=1;
    //nCS=1;
    	nRD=1;
    	nWR=1;
    	A  =2'b00;
    	Din=8'b00000000;
    	PA_In=8'bzzzzzzzz;
    	PB_In=8'bzzzzzzzz;
    	PC_In=8'bzzzzzzzz;
    	#200 $stop;
    join
  
  initial
    fork
    	#10 rst=0;
      #13 A=2'b11;
      #16 nWR=0;
    	#19 Din=8'b1001_0000;
    	#21 A=2'b00;
    	//#24 Din=8'b11111111;
    	#26 nWR=1;
    	#30 A=2'b11;
    	#35 nWR=0;
    	#30 Din=8'b1000_0000;
    	#45 nWR=1;
    	#45 A=00;
    	#50 nRD=0;
    	PA_In=8'b11110000;
    	PB_In=8'bzzzzzzzz;
    	PC_In=8'bzzzzzzzz;
    join  
    
   always #1 clk = ~clk;
   always @(posedge clk)
     begin
     	Din=Din+1;
      PA_In =PA_In+1;
     end

  T8255A         U   (        
                      .rst(rst),
                      .nCS(nCS),
                      .nRD(nRD),
                      .nWR(nWR),
                      .A(A),
                      .Din(Din),
                      .PA_In(PA_In),
                      .PB_In(PB_In),
                      .PC_In(PC_In),
                      
                      //wire
                      .Data_En(Data_En),
                      .PortA_IO_En(PortA_IO_En),
                      .PortB_IO_En(PortB_IO_En),
                      .PortC_IO_En(PortC_IO_En),
                      .Dout(Dout),
                      .PA_Out(PA_Out),
                      .PB_Out(PB_Out),
                      .PC_Out(PC_Out)
                      );
endmodule

⌨️ 快捷键说明

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