test.h revision 12855:588919e0e4aa
111569Sgabor.dozsa@arm.com/***************************************************************************** 211348Sandreas.sandberg@arm.com 311348Sandreas.sandberg@arm.com Licensed to Accellera Systems Initiative Inc. (Accellera) under one or 411348Sandreas.sandberg@arm.com more contributor license agreements. See the NOTICE file distributed 511348Sandreas.sandberg@arm.com with this work for additional information regarding copyright ownership. 611348Sandreas.sandberg@arm.com Accellera licenses this file to you under the Apache License, Version 2.0 711348Sandreas.sandberg@arm.com (the "License"); you may not use this file except in compliance with the 811348Sandreas.sandberg@arm.com License. You may obtain a copy of the License at 911348Sandreas.sandberg@arm.com 1011348Sandreas.sandberg@arm.com http://www.apache.org/licenses/LICENSE-2.0 1111348Sandreas.sandberg@arm.com 1211348Sandreas.sandberg@arm.com Unless required by applicable law or agreed to in writing, software 1311348Sandreas.sandberg@arm.com distributed under the License is distributed on an "AS IS" BASIS, 1411348Sandreas.sandberg@arm.com WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 1511348Sandreas.sandberg@arm.com implied. See the License for the specific language governing 1611348Sandreas.sandberg@arm.com permissions and limitations under the License. 1711348Sandreas.sandberg@arm.com 1811348Sandreas.sandberg@arm.com *****************************************************************************/ 1911348Sandreas.sandberg@arm.com 2011348Sandreas.sandberg@arm.com/***************************************************************************** 2111348Sandreas.sandberg@arm.com 2211348Sandreas.sandberg@arm.com test.h -- 2311348Sandreas.sandberg@arm.com 2411348Sandreas.sandberg@arm.com Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15 2511348Sandreas.sandberg@arm.com 2611348Sandreas.sandberg@arm.com *****************************************************************************/ 2711348Sandreas.sandberg@arm.com 2811348Sandreas.sandberg@arm.com/***************************************************************************** 2911348Sandreas.sandberg@arm.com 3011348Sandreas.sandberg@arm.com MODIFICATION LOG - modifiers, enter your name, affiliation, date and 3111348Sandreas.sandberg@arm.com changes you are making here. 3211348Sandreas.sandberg@arm.com 3311348Sandreas.sandberg@arm.com Name, Affiliation, Date: 3411348Sandreas.sandberg@arm.com Description of Modification: 3513510Sjairo.balart@metempsy.com 3613510Sjairo.balart@metempsy.com *****************************************************************************/ 3713510Sjairo.balart@metempsy.com 3813510Sjairo.balart@metempsy.com/* Common interface file for test cases 3911348Sandreas.sandberg@arm.com Author: PRP 4013510Sjairo.balart@metempsy.com */ 4113510Sjairo.balart@metempsy.com 4213510Sjairo.balart@metempsy.comSC_MODULE( test ) 4313510Sjairo.balart@metempsy.com{ 4411569Sgabor.dozsa@arm.com SC_HAS_PROCESS( test ); 4511569Sgabor.dozsa@arm.com 4613510Sjairo.balart@metempsy.com sc_in_clk clk; 4713510Sjairo.balart@metempsy.com 4813510Sjairo.balart@metempsy.com // Input Reset Port 4913510Sjairo.balart@metempsy.com const sc_signal<bool>& reset_sig; 5013510Sjairo.balart@metempsy.com 5113510Sjairo.balart@metempsy.com // Input Data Ports 5211348Sandreas.sandberg@arm.com const sc_signal<int>& i1; 5313668Skevin.brodsky@arm.com const sc_signal<int>& i2; 5413668Skevin.brodsky@arm.com const sc_signal<int>& i3; 5513668Skevin.brodsky@arm.com const sc_signal<int>& i4; 5613668Skevin.brodsky@arm.com const sc_signal<int>& i5; 5713668Skevin.brodsky@arm.com 5813668Skevin.brodsky@arm.com // Input Control Ports 5913668Skevin.brodsky@arm.com const sc_signal<bool>& cont1; 6013668Skevin.brodsky@arm.com const sc_signal<bool>& cont2; 6111348Sandreas.sandberg@arm.com const sc_signal<bool>& cont3; 6211348Sandreas.sandberg@arm.com 6311348Sandreas.sandberg@arm.com // Output Data Ports 6411348Sandreas.sandberg@arm.com sc_signal<int>& o1; 6511348Sandreas.sandberg@arm.com sc_signal<int>& o2; 6611348Sandreas.sandberg@arm.com sc_signal<int>& o3; 6711348Sandreas.sandberg@arm.com sc_signal<int>& o4; 6811348Sandreas.sandberg@arm.com sc_signal<int>& o5; 6911348Sandreas.sandberg@arm.com 7013668Skevin.brodsky@arm.com // Constructor 7111348Sandreas.sandberg@arm.com test ( 7211348Sandreas.sandberg@arm.com sc_module_name NAME, 7313668Skevin.brodsky@arm.com sc_clock& CLK, 7411348Sandreas.sandberg@arm.com 7511348Sandreas.sandberg@arm.com const sc_signal<bool>& RESET_SIG, 7613668Skevin.brodsky@arm.com 7713510Sjairo.balart@metempsy.com const sc_signal<int>& I1, 7813510Sjairo.balart@metempsy.com const sc_signal<int>& I2, 7911569Sgabor.dozsa@arm.com const sc_signal<int>& I3, 8013668Skevin.brodsky@arm.com const sc_signal<int>& I4, 8111569Sgabor.dozsa@arm.com const sc_signal<int>& I5, 8211569Sgabor.dozsa@arm.com 8311348Sandreas.sandberg@arm.com const sc_signal<bool>& CONT1, 8411348Sandreas.sandberg@arm.com const sc_signal<bool>& CONT2, 8511348Sandreas.sandberg@arm.com const sc_signal<bool>& CONT3, 8611348Sandreas.sandberg@arm.com 8711348Sandreas.sandberg@arm.com sc_signal<int>& O1, 8811348Sandreas.sandberg@arm.com sc_signal<int>& O2, 8911348Sandreas.sandberg@arm.com sc_signal<int>& O3, 90 sc_signal<int>& O4, 91 sc_signal<int>& O5) 92 : reset_sig(RESET_SIG), i1(I1), i2(I2), 93 i3(I3), i4(I4), i5(I5), cont1 (CONT1), cont2 (CONT2), 94 cont3 (CONT3), o1(O1), o2(O2), o3(O3), o4(O4), o5(O5) 95 { 96 clk(CLK); 97 SC_CTHREAD( entry, clk.pos() ); 98 reset_signal_is(reset_sig,true); 99 } 100 101 void entry(); 102}; 103