Expanded versions of source files are the output of the preprocessor. Lines subject to conditional compilation are not shown and all compiler pragmas have been stripped. Macros have been completely expanded.
RAL/vmm_ral_env.sv unexpanded source
00001: // 00002: // ------------------------------------------------------------- 00003: // Copyright 2004-2008 Synopsys, Inc. 00004: // All Rights Reserved Worldwide 00005: // 00006: // Licensed under the Apache License, Version 2.0 (the 00007: // "License"); you may not use this file except in 00008: // compliance with the License. You may obtain a copy of 00009: // the License at 00010: // 00011: // http://www.apache.org/licenses/LICENSE-2.0 00012: // 00013: // Unless required by applicable law or agreed to in 00014: // writing, software distributed under the License is 00015: // distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 00016: // CONDITIONS OF ANY KIND, either express or implied. See 00017: // the License for the specific language governing 00018: // permissions and limitations under the License. 00019: // ------------------------------------------------------------- 00020: // 00021: 00022: 00023: class vmm_ral_env extends vmm_env; 00024: vmm_ral_access ral; 00025: 00026: extern function new(string name = "RAL-Based Verif Env"); 00027: 00028: extern virtual task hw_reset(); 00029: extern virtual task sw_reset(string domain = ""); 00030: 00031: extern virtual function void gen_cfg(); 00032: extern virtual function void build(); 00033: extern virtual task reset_dut(); 00034: extern virtual task cfg_dut(); 00035: extern virtual task start(); 00036: extern virtual task wait_for_end(); 00037: extern virtual task stop(); 00038: extern virtual task cleanup(); 00039: extern virtual task restart(bit reconfig = 0); 00040: extern virtual task report(); 00041: endclass: vmm_ral_env 00042: 00043: 00044: 00045: function vmm_ral_env::new(string name); 00046: super.new(name); 00047: this.ral = new; 00048: endfunction: new 00049: 00050: 00051: task vmm_ral_env::hw_reset(); 00052: : do : if (this.log.start_msg(vmm_log::FAILURE_TYP, vmm_log::WARNING_SEV)) begin : void'(this.log.text("vmm_ral_env::hw_reset() has not be implemented")); : this.log.end_msg(); : end : while(0); 00053: endtask: hw_reset 00054: 00055: 00056: task vmm_ral_env::sw_reset(string domain); 00057: : do : if (this.log.start_msg(vmm_log::FAILURE_TYP, vmm_log::WARNING_SEV)) begin : void'(this.log.text("vmm_ral_env::sw_reset() has not be implemented")); : this.log.end_msg(); : end : while(0); 00058: endtask: sw_reset 00059: 00060: 00061: function void vmm_ral_env::gen_cfg(); 00062: super.gen_cfg(); 00063: endfunction: gen_cfg 00064: 00065: 00066: function void vmm_ral_env::build(); 00067: super.build(); 00068: endfunction: build 00069: 00070: 00071: task vmm_ral_env::reset_dut(); 00072: super.reset_dut(); 00073: this.hw_reset(); 00074: endtask: reset_dut 00075: 00076: 00077: task vmm_ral_env::cfg_dut(); 00078: super.cfg_dut(); 00079: endtask: cfg_dut 00080: 00081: 00082: task vmm_ral_env::start(); 00083: super.start(); 00084: endtask: start 00085: 00086: 00087: task vmm_ral_env::wait_for_end(); 00088: super.wait_for_end(); 00089: endtask: wait_for_end 00090: 00091: 00092: task vmm_ral_env::stop(); 00093: super.stop(); 00094: endtask: stop 00095: 00096: 00097: task vmm_ral_env::cleanup(); 00098: super.cleanup(); 00099: endtask: cleanup 00100: 00101: 00102: task vmm_ral_env::restart(bit reconfig); 00103: super.restart(reconfig); 00104: endtask: restart 00105: 00106: 00107: task vmm_ral_env::report(); 00108: super.report(); 00109: endtask: report