tb.h revision 12855:588919e0e4aa
111308Santhony.gutierrez@amd.com/***************************************************************************** 211308Santhony.gutierrez@amd.com 311308Santhony.gutierrez@amd.com Licensed to Accellera Systems Initiative Inc. (Accellera) under one or 411308Santhony.gutierrez@amd.com more contributor license agreements. See the NOTICE file distributed 511308Santhony.gutierrez@amd.com with this work for additional information regarding copyright ownership. 611308Santhony.gutierrez@amd.com Accellera licenses this file to you under the Apache License, Version 2.0 711308Santhony.gutierrez@amd.com (the "License"); you may not use this file except in compliance with the 811308Santhony.gutierrez@amd.com License. You may obtain a copy of the License at 911308Santhony.gutierrez@amd.com 1011308Santhony.gutierrez@amd.com http://www.apache.org/licenses/LICENSE-2.0 1111308Santhony.gutierrez@amd.com 1211308Santhony.gutierrez@amd.com Unless required by applicable law or agreed to in writing, software 1311308Santhony.gutierrez@amd.com distributed under the License is distributed on an "AS IS" BASIS, 1411308Santhony.gutierrez@amd.com WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 1511308Santhony.gutierrez@amd.com implied. See the License for the specific language governing 1611308Santhony.gutierrez@amd.com permissions and limitations under the License. 1711308Santhony.gutierrez@amd.com 1811308Santhony.gutierrez@amd.com *****************************************************************************/ 1911308Santhony.gutierrez@amd.com 2011308Santhony.gutierrez@amd.com/***************************************************************************** 2111308Santhony.gutierrez@amd.com 2211308Santhony.gutierrez@amd.com tb.h -- 2311308Santhony.gutierrez@amd.com 2411308Santhony.gutierrez@amd.com Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15 2511308Santhony.gutierrez@amd.com 2611308Santhony.gutierrez@amd.com *****************************************************************************/ 2711308Santhony.gutierrez@amd.com 2811308Santhony.gutierrez@amd.com/***************************************************************************** 2911308Santhony.gutierrez@amd.com 3011308Santhony.gutierrez@amd.com MODIFICATION LOG - modifiers, enter your name, affiliation, date and 3111308Santhony.gutierrez@amd.com changes you are making here. 3211308Santhony.gutierrez@amd.com 3311308Santhony.gutierrez@amd.com Name, Affiliation, Date: 3411308Santhony.gutierrez@amd.com Description of Modification: 3511308Santhony.gutierrez@amd.com 3611308Santhony.gutierrez@amd.com *****************************************************************************/ 3711308Santhony.gutierrez@amd.com 3811308Santhony.gutierrez@amd.com/* Common interface file for test bench 3911308Santhony.gutierrez@amd.com Author: PRP 4011308Santhony.gutierrez@amd.com */ 4111308Santhony.gutierrez@amd.com 4211308Santhony.gutierrez@amd.com#include "systemc.h" 4311308Santhony.gutierrez@amd.com 4411308Santhony.gutierrez@amd.comSC_MODULE( tb ) 4511308Santhony.gutierrez@amd.com{ 4611308Santhony.gutierrez@amd.com SC_HAS_PROCESS( tb ); 4711308Santhony.gutierrez@amd.com 4811308Santhony.gutierrez@amd.com sc_in_clk clk; 4911308Santhony.gutierrez@amd.com 5011308Santhony.gutierrez@amd.com // Output Reset Port 5111308Santhony.gutierrez@amd.com sc_signal<bool>& reset_sig; 5211308Santhony.gutierrez@amd.com 5311308Santhony.gutierrez@amd.com // Output Data Ports 5411308Santhony.gutierrez@amd.com sc_signal<int>& i1; 5511308Santhony.gutierrez@amd.com sc_signal<int>& i2; 5611308Santhony.gutierrez@amd.com sc_signal<int>& i3; 5711308Santhony.gutierrez@amd.com sc_signal<int>& i4; 5811308Santhony.gutierrez@amd.com sc_signal<int>& i5; 5911308Santhony.gutierrez@amd.com 6011308Santhony.gutierrez@amd.com // Output Control Ports 6111639Salexandru.dutu@amd.com sc_signal<bool>& cont1; 6211534Sjohn.kalamatianos@amd.com sc_signal<bool>& cont2; 6311534Sjohn.kalamatianos@amd.com sc_signal<bool>& cont3; 6411308Santhony.gutierrez@amd.com 6511308Santhony.gutierrez@amd.com // Input Data Ports 6611534Sjohn.kalamatianos@amd.com const sc_signal<int>& o1; 6711308Santhony.gutierrez@amd.com const sc_signal<int>& o2; 6811308Santhony.gutierrez@amd.com const sc_signal<int>& o3; 6911308Santhony.gutierrez@amd.com const sc_signal<int>& o4; 7011308Santhony.gutierrez@amd.com const sc_signal<int>& o5; 7111534Sjohn.kalamatianos@amd.com 7211308Santhony.gutierrez@amd.com // Constructor 7311308Santhony.gutierrez@amd.com tb ( 7411308Santhony.gutierrez@amd.com sc_module_name NAME, 7511308Santhony.gutierrez@amd.com sc_clock& CLK, 7611308Santhony.gutierrez@amd.com 7711308Santhony.gutierrez@amd.com sc_signal<bool>& RESET_SIG, 7811308Santhony.gutierrez@amd.com 7911308Santhony.gutierrez@amd.com sc_signal<int>& I1, 8011308Santhony.gutierrez@amd.com sc_signal<int>& I2, 8111308Santhony.gutierrez@amd.com sc_signal<int>& I3, 8211308Santhony.gutierrez@amd.com sc_signal<int>& I4, 8311308Santhony.gutierrez@amd.com sc_signal<int>& I5, 8411308Santhony.gutierrez@amd.com 8511308Santhony.gutierrez@amd.com sc_signal<bool>& CONT1, 8611308Santhony.gutierrez@amd.com sc_signal<bool>& CONT2, 8711308Santhony.gutierrez@amd.com sc_signal<bool>& CONT3, 8811308Santhony.gutierrez@amd.com 8911308Santhony.gutierrez@amd.com const sc_signal<int>& O1, 9011308Santhony.gutierrez@amd.com const sc_signal<int>& O2, 9111308Santhony.gutierrez@amd.com const sc_signal<int>& O3, 9211308Santhony.gutierrez@amd.com const sc_signal<int>& O4, 9311308Santhony.gutierrez@amd.com const sc_signal<int>& O5) 9411308Santhony.gutierrez@amd.com : reset_sig(RESET_SIG), i1(I1), i2(I2), 9511645Salexandru.dutu@amd.com i3(I3), i4(I4), i5(I5), cont1 (CONT1), cont2 (CONT2), 9611645Salexandru.dutu@amd.com cont3 (CONT3), o1(O1), o2(O2), o3(O3), o4(O4), o5(O5) 9711645Salexandru.dutu@amd.com { 9811645Salexandru.dutu@amd.com clk(CLK); 9911645Salexandru.dutu@amd.com SC_CTHREAD( entry, clk.pos() ); 10011645Salexandru.dutu@amd.com } 10111645Salexandru.dutu@amd.com 10211645Salexandru.dutu@amd.com void entry(); 10311645Salexandru.dutu@amd.com}; 10411308Santhony.gutierrez@amd.com