tb.h revision 12855
12135SN/A/***************************************************************************** 22135SN/A 35268Sksewell@umich.edu Licensed to Accellera Systems Initiative Inc. (Accellera) under one or 45268Sksewell@umich.edu more contributor license agreements. See the NOTICE file distributed 55268Sksewell@umich.edu with this work for additional information regarding copyright ownership. 65268Sksewell@umich.edu Accellera licenses this file to you under the Apache License, Version 2.0 75268Sksewell@umich.edu (the "License"); you may not use this file except in compliance with the 85268Sksewell@umich.edu License. You may obtain a copy of the License at 95268Sksewell@umich.edu 105268Sksewell@umich.edu http://www.apache.org/licenses/LICENSE-2.0 115268Sksewell@umich.edu 125268Sksewell@umich.edu Unless required by applicable law or agreed to in writing, software 135268Sksewell@umich.edu distributed under the License is distributed on an "AS IS" BASIS, 145268Sksewell@umich.edu WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 155268Sksewell@umich.edu implied. See the License for the specific language governing 165268Sksewell@umich.edu permissions and limitations under the License. 175268Sksewell@umich.edu 185268Sksewell@umich.edu *****************************************************************************/ 195268Sksewell@umich.edu 205268Sksewell@umich.edu/***************************************************************************** 215268Sksewell@umich.edu 225268Sksewell@umich.edu tb.h -- 235268Sksewell@umich.edu 245268Sksewell@umich.edu Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15 255268Sksewell@umich.edu 265268Sksewell@umich.edu *****************************************************************************/ 275268Sksewell@umich.edu 285268Sksewell@umich.edu/***************************************************************************** 295268Sksewell@umich.edu 302706Sksewell@umich.edu MODIFICATION LOG - modifiers, enter your name, affiliation, date and 312038SN/A changes you are making here. 322038SN/A 332038SN/A Name, Affiliation, Date: 342038SN/A Description of Modification: 352038SN/A 362038SN/A *****************************************************************************/ 372038SN/A 382135SN/A/******************************************************************************/ 392038SN/A/*************************** Testbench Function **********************/ 402038SN/A/******************************************************************************/ 412038SN/A/* */ 422038SN/A/* The testbench module has the following hierarchy: */ 432038SN/A/* */ 442038SN/A/* testbench */ 452038SN/A/* - RESET_STIM */ 462038SN/A/* - DATA_GEN */ 472038SN/A/* */ 482038SN/A/******************************************************************************/ 492686Sksewell@umich.edu 502686Sksewell@umich.edustruct testbench : public sc_module { 512686Sksewell@umich.edu sc_signal<int> addr; // Address of input memory 522686Sksewell@umich.edu sc_signal<bool> reset; 532686Sksewell@umich.edu sc_signal<bool> ready; 542686Sksewell@umich.edu signal_bool_vector8 data; 552686Sksewell@umich.edu signal_bool_vector4 sum; 562686Sksewell@umich.edu RESET_STIM rd1; 572686Sksewell@umich.edu DATA_GEN dg1; 582686Sksewell@umich.edu ADD_CHAIN ac1; 592686Sksewell@umich.edu DISPLAY d1; 602686Sksewell@umich.edu 612686Sksewell@umich.edu /*** Constructor ***/ 622686Sksewell@umich.edu testbench ( const sc_module_name& NAME, 632038SN/A sc_clock& TICK ) 642038SN/A 652038SN/A : sc_module(), 662038SN/A rd1 ("RD1", TICK, ready, reset, addr), 672686Sksewell@umich.edu dg1 ("DG1", TICK, ready, data, addr), 682038SN/A ac1 ("AC1", TICK, reset, data, sum, ready), 692686Sksewell@umich.edu d1 ("D1", ready, data, sum) 702686Sksewell@umich.edu 712686Sksewell@umich.edu { 722686Sksewell@umich.edu end_module(); 732686Sksewell@umich.edu } 742686Sksewell@umich.edu}; 752686Sksewell@umich.edu