stimulus.cpp revision 12855
12023SN/A/*****************************************************************************
22023SN/A
32023SN/A  Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
42023SN/A  more contributor license agreements.  See the NOTICE file distributed
52023SN/A  with this work for additional information regarding copyright ownership.
62023SN/A  Accellera licenses this file to you under the Apache License, Version 2.0
72023SN/A  (the "License"); you may not use this file except in compliance with the
82023SN/A  License.  You may obtain a copy of the License at
92023SN/A
102023SN/A    http://www.apache.org/licenses/LICENSE-2.0
112023SN/A
122023SN/A  Unless required by applicable law or agreed to in writing, software
132023SN/A  distributed under the License is distributed on an "AS IS" BASIS,
142023SN/A  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
152023SN/A  implied.  See the License for the specific language governing
162023SN/A  permissions and limitations under the License.
172023SN/A
182023SN/A *****************************************************************************/
192023SN/A
202023SN/A/*****************************************************************************
212023SN/A
222023SN/A  stimulus.cpp --
232023SN/A
242023SN/A  Original Author: Rocco Jonack, Synopsys, Inc., 1999-07-30
252023SN/A
262023SN/A *****************************************************************************/
272023SN/A
282665Ssaidi@eecs.umich.edu/*****************************************************************************
292665Ssaidi@eecs.umich.edu
302665Ssaidi@eecs.umich.edu  MODIFICATION LOG - modifiers, enter your name, affiliation, date and
312023SN/A  changes you are making here.
324202Sbinkertn@umich.edu
332023SN/A      Name, Affiliation, Date:
344202Sbinkertn@umich.edu  Description of Modification:
359022Sgblack@eecs.umich.edu
364997Sgblack@eecs.umich.edu *****************************************************************************/
374202Sbinkertn@umich.edu
388780Sgblack@eecs.umich.edu
398780Sgblack@eecs.umich.edu#include "stimulus.h"
408745Sgblack@eecs.umich.edu
414997Sgblack@eecs.umich.eduvoid stimulus::entry() {
426313Sgblack@eecs.umich.edu
438777Sgblack@eecs.umich.eduint i;
448780Sgblack@eecs.umich.edu
458780Sgblack@eecs.umich.edu  // sending some reset values
468780Sgblack@eecs.umich.edu  reset.write(true);
478777Sgblack@eecs.umich.edu  stim1.write(0);
484997Sgblack@eecs.umich.edu  stim2.write(0);
498780Sgblack@eecs.umich.edu  stim3.write(0);
506327Sgblack@eecs.umich.edu  stim4.write(0);
514202Sbinkertn@umich.edu  wait();
528777Sgblack@eecs.umich.edu  reset.write(false);
538780Sgblack@eecs.umich.edu  wait();
544997Sgblack@eecs.umich.edu  for  (i=0; i<= 15; i++) {
558780Sgblack@eecs.umich.edu    stim1.write(i);
568780Sgblack@eecs.umich.edu    stim2.write(i);
578780Sgblack@eecs.umich.edu    stim3.write(i);
584826Ssaidi@eecs.umich.edu    stim4.write(i);
598755Sgblack@eecs.umich.edu    input_valid.write(true);
602023SN/A    cout << "Stimuli: stim1= " << i << " stim2= " << i << " stim3= "
618745Sgblack@eecs.umich.edu	 << i << " stim4= " << i << "  "
629384SAndreas.Sandberg@arm.com	 << sc_time_stamp() << endl;
638780Sgblack@eecs.umich.edu    wait();
644997Sgblack@eecs.umich.edu    input_valid.write(false);
654997Sgblack@eecs.umich.edu    wait(10);
662023SN/A  }
674202Sbinkertn@umich.edu
684202Sbinkertn@umich.edu  sc_stop();
694202Sbinkertn@umich.edu}
704202Sbinkertn@umich.edu
714202Sbinkertn@umich.edu// EOF
724202Sbinkertn@umich.edu