OpenCores
URL https://opencores.org/ocsvn/usb2uart/usb2uart/trunk

Subversion Repositories usb2uart

[/] [usb2uart/] [trunk/] [verify/] [tests/] [usb_test2.v] - Blame information for rev 3

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 3 dinesha
`define usbbfm  tb.u_usb_agent.bfm_inst
2
task usb_test2;
3
 
4
reg [6:0] address;
5
reg [3:0] endpt;
6
reg [3:0] Status;
7
 reg [31:0] ByteCount;
8
 
9
  integer    i,j;
10
  reg [7:0]  startbyte;
11
  reg [15:0] mask;
12
  integer    MaxPktSize;
13
  reg [3:0]  PackType;
14
 
15
 
16
parameter  MYACK   = 4'b0000,
17
           MYNAK   = 4'b0001,
18
           MYSTALL = 4'b0010,
19
           MYTOUT  = 4'b0011,
20
           MYIVRES = 4'b0100,
21
           MYCRCER = 4'b0101;
22
 
23
     begin
24
     address = 7'b000_0001;
25
     endpt   = 4'b0000;
26
 
27
    $display("%0d: USB Reset  -----", $time);
28
    `usbbfm.usb_reset(48);
29
 
30
    $display("%0d: Set Address = 1 -----", $time);
31
    `usbbfm.SetAddress (address);
32
    `usbbfm.setup(7'h00, 4'h0, Status);
33
    `usbbfm.printstatus(Status, MYACK);
34
    `usbbfm.status_IN(7'h00, endpt, Status);
35
    `usbbfm.printstatus(Status, MYACK);
36
    #5000;
37
 
38
    $display("%0d: Set configuration  -----", $time);
39
    `usbbfm.SetConfiguration(2'b01);
40
    `usbbfm.setup(address, 4'b0000, Status);
41
    `usbbfm.printstatus(Status, MYACK);
42
    `usbbfm.status_IN(address, 4'b0000, Status);
43
    `usbbfm.printstatus(Status, MYACK);
44
    #2000;
45
 
46
    $display("%0d: Configuration done !!!!!!", $time);
47
 
48
   // write UART  registers through USB
49
 
50
      //////////////////////////////////////////////////////////////////
51
 
52
 
53
    // register word write
54
    $display("%0d: Performing Register Word Write------------", $time);
55
    `usbbfm.VenRegWordWr (address, 32'h8, 32'h123);
56
    #500;
57
 
58
    // register word Read
59
    $display("%0d: Performing Register Word Read------------", $time);
60
    `usbbfm.VenRegWordRdCmp (address, 32'h8, 32'h123, ByteCount);
61
    #500
62
 
63
 
64
 
65
    $display ("USB doing register writes and reads to USB block end \n");
66
 
67
    tb.test_control.finish_test;
68
  end
69
 
70
endtask

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.