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 virtual class vmm_ral_reg_backdoor; 00024 static vmm_log log = new("vmm_ral_reg_backdoor", "class"); 00025 00026 extern virtual task write(output vmm_rw::status_e status, 00027 input bit [`VMM_RAL_DATA_WIDTH-1:0] data, 00028 input int data_id, 00029 input int scenario_id, 00030 input int stream_id); 00031 extern virtual task read(output vmm_rw::status_e status, 00032 output bit [`VMM_RAL_DATA_WIDTH-1:0] data, 00033 input int data_id, 00034 input int scenario_id, 00035 input int stream_id); 00036 endclass: vmm_ral_reg_backdoor 00037 00038 00039 virtual class vmm_ral_mem_backdoor; 00040 static vmm_log log = new("vmm_ral_mem_backdoor", "class"); 00041 00042 extern virtual task write(output vmm_rw::status_e status, 00043 input bit [`VMM_RAL_ADDR_WIDTH-1:0] offset, 00044 input bit [`VMM_RAL_DATA_WIDTH-1:0] data, 00045 input int data_id, 00046 input int scenario_id, 00047 input int stream_id); 00048 extern virtual task read(output vmm_rw::status_e status, 00049 input bit [`VMM_RAL_ADDR_WIDTH-1:0] offset, 00050 output bit [`VMM_RAL_DATA_WIDTH-1:0] data, 00051 input int data_id, 00052 input int scenario_id, 00053 input int stream_id); 00054 endclass: vmm_ral_mem_backdoor 00055 00056 00057 task vmm_ral_reg_backdoor::write(output vmm_rw::status_e status, 00058 input bit [`VMM_RAL_DATA_WIDTH-1:0] data, 00059 input int data_id, 00060 input int scenario_id, 00061 input int stream_id); 00062 `vmm_fatal(this.log, "vmm_ral_reg_backdoor::write() method has not been overloaded"); 00063 endtask: write 00064 00065 00066 task vmm_ral_reg_backdoor::read(output vmm_rw::status_e status, 00067 output bit [`VMM_RAL_DATA_WIDTH-1:0] data, 00068 input int data_id, 00069 input int scenario_id, 00070 input int stream_id); 00071 `vmm_fatal(this.log, "vmm_ral_reg_backdoor::read() method has not been overloaded"); 00072 endtask: read 00073 00074 00075 task vmm_ral_mem_backdoor::write(output vmm_rw::status_e status, 00076 input bit [`VMM_RAL_ADDR_WIDTH-1:0] offset, 00077 input bit [`VMM_RAL_DATA_WIDTH-1:0] data, 00078 input int data_id, 00079 input int scenario_id, 00080 input int stream_id); 00081 `vmm_fatal(this.log, "vmm_ral_mem_backdoor::write() method has not been overloaded"); 00082 endtask: write 00083 00084 00085 task vmm_ral_mem_backdoor::read(output vmm_rw::status_e status, 00086 input bit [`VMM_RAL_ADDR_WIDTH-1:0] offset, 00087 output bit [`VMM_RAL_DATA_WIDTH-1:0] data, 00088 input int data_id, 00089 input int scenario_id, 00090 input int stream_id); 00091 `vmm_fatal(this.log, "vmm_ral_mem_backdoor::read() method has not been overloaded"); 00092 endtask: read