Code Browser Pages:
| #include <rvm_std_lib.vrh> #ifndef PHY_DRIVER_CLASS #define PHY_DRIVER_CLASS class phy_driver extends rvm_xactor { task new(string name); function bit [2:0] read_Speed (); function bit read_Tx_er (); function bit read_Tx_en (); function bit [7:0] read_Txd (); task drive_Rx_er (bit Rx_er ) ; task drive_Rx_dv (bit Rx_dv ) ; task drive_Rxd (bit [7:0]Rxd ) ; task drive_Crs (bit Crs ) ; task drive_Col (bit Col ) ; task posedge_clk(); } task phy_driver::new(string name) { super.new("PHY_DRVR",name); log = new("PHY_DRVR",name); } function bit [2:0] phy_driver::read_Speed () { read_Speed = phy_intf.Speed ;} function bit phy_driver::read_Tx_er () { read_Tx_er = phy_intf.Tx_er ;} function bit phy_driver::read_Tx_en () { read_Tx_en = phy_intf.Tx_en ;} function bit [7:0] phy_driver::read_Txd () { read_Txd = phy_intf.Txd ;} task phy_driver::drive_Rx_er (bit Rx_er ) {phy_intf.Rx_er = Rx_er ;} task phy_driver::drive_Rx_dv (bit Rx_dv ) {phy_intf.Rx_dv = Rx_dv ;} task phy_driver::drive_Rxd (bit [7:0]Rxd ) {phy_intf.Rxd = Rxd ;} task phy_driver::drive_Crs (bit Crs ) {phy_intf.Crs = Crs ;} task phy_driver::drive_Col (bit Col ) {phy_intf.Col = Col ;} task phy_driver::posedge_clk () { @(posedge phy_intf.clk);} #endif |