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

Subversion Repositories wisbone_2_ahb

[/] [wisbone_2_ahb/] [tags/] [t2/] [svtb/] [avm_svtb/] [wb_ahb_env.svh] - Blame information for rev 11

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 5 toomuch
// env class
2
import avm_pkg::*;
3
import wb_ahb_pkg::*;
4
import global::*;
5
 
6
class wb_ahb_env extends avm_env;
7
 
8
virtual wb_ahb_if pin_if;// interface
9
 
10
// operational components
11
wb_ahb_stim_gen    stim_gen;
12
wb_ahb_driver      driver;
13
wb_ahb_responder   responder;
14
 
15
// analysis components
16
wb_ahb_monitor     monitor;
17
wb_ahb_coverage    coverage;
18
//wb_ahb_scoreboard  scoreboard;
19
 
20
tlm_fifo #(wb_req_pkt) fifo;
21
 
22
avm_analysis_port#(monitor_pkt) e_ap;
23
 
24
        function new (virtual wb_ahb_if pin);
25
                stim_gen   =new("stim_gen",this);
26
                driver     =new("driver",this);
27
                responder  =new("responder",this);
28
                monitor    =new("monitor",this);
29
                coverage   =new("coverage", this);
30
//              scoreboard =new("scoreboard", this);
31
                fifo       =new("fifo",this);
32
                e_ap       =new("e_ap",this);
33
                pin_if        =pin;
34
                monitor.ap_sb =e_ap;
35
 
36
        endfunction
37
 
38
        function void connect();
39
                stim_gen.initiator_port.connect(fifo.blocking_put_export);
40
                driver.request_port.connect(fifo.nonblocking_get_export);
41
                //monitor.ap_sb.register(scoreboard.ap_if);
42
                monitor.ap_sb.register(coverage.ap_if);
43
        endfunction
44
 
45
        function void import_connections();
46
                driver.pin_if    = pin_if;
47
                responder.pin_if = pin_if;
48
                monitor.pin_if   = pin_if;
49
        endfunction
50
 
51
        task run;
52
                fork
53
                        stim_gen.stimulus();
54
                        responder.wait_state_by_slave();
55
                        #525;
56
                join
57
        endtask
58
 
59
endclass
60
 

powered by: WebSVN 2.1.0

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