mean.h revision 12855:588919e0e4aa
14484Sbinkertn@umich.edu/*****************************************************************************
24484Sbinkertn@umich.edu
34484Sbinkertn@umich.edu  Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
44484Sbinkertn@umich.edu  more contributor license agreements.  See the NOTICE file distributed
54484Sbinkertn@umich.edu  with this work for additional information regarding copyright ownership.
64484Sbinkertn@umich.edu  Accellera licenses this file to you under the Apache License, Version 2.0
74484Sbinkertn@umich.edu  (the "License"); you may not use this file except in compliance with the
84484Sbinkertn@umich.edu  License.  You may obtain a copy of the License at
94484Sbinkertn@umich.edu
104484Sbinkertn@umich.edu    http://www.apache.org/licenses/LICENSE-2.0
114484Sbinkertn@umich.edu
124484Sbinkertn@umich.edu  Unless required by applicable law or agreed to in writing, software
134484Sbinkertn@umich.edu  distributed under the License is distributed on an "AS IS" BASIS,
144484Sbinkertn@umich.edu  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
154484Sbinkertn@umich.edu  implied.  See the License for the specific language governing
164484Sbinkertn@umich.edu  permissions and limitations under the License.
174484Sbinkertn@umich.edu
184484Sbinkertn@umich.edu *****************************************************************************/
194484Sbinkertn@umich.edu
204484Sbinkertn@umich.edu/*****************************************************************************
214484Sbinkertn@umich.edu
224484Sbinkertn@umich.edu  mean.h --
234484Sbinkertn@umich.edu
244484Sbinkertn@umich.edu  Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
254484Sbinkertn@umich.edu
264484Sbinkertn@umich.edu *****************************************************************************/
274484Sbinkertn@umich.edu
284484Sbinkertn@umich.edu/*****************************************************************************
294484Sbinkertn@umich.edu
304484Sbinkertn@umich.edu  MODIFICATION LOG - modifiers, enter your name, affiliation, date and
314484Sbinkertn@umich.edu  changes you are making here.
324484Sbinkertn@umich.edu
334484Sbinkertn@umich.edu      Name, Affiliation, Date:
344484Sbinkertn@umich.edu  Description of Modification:
354484Sbinkertn@umich.edu
364484Sbinkertn@umich.edu *****************************************************************************/
374484Sbinkertn@umich.edu
384484Sbinkertn@umich.edu/* Filename mean.h */
394484Sbinkertn@umich.edu/* This is the interface file for synchronous process `mean' */
404484Sbinkertn@umich.edu
414484Sbinkertn@umich.edu#include "systemc.h"
424484Sbinkertn@umich.edu
434484Sbinkertn@umich.edutypedef sc_signal<sc_bv<24> > sc_signal_bool_vector;
444484Sbinkertn@umich.edu
454484Sbinkertn@umich.eduSC_MODULE( mean )
464484Sbinkertn@umich.edu{
474484Sbinkertn@umich.edu  SC_HAS_PROCESS( mean );
484484Sbinkertn@umich.edu
494484Sbinkertn@umich.edu  sc_in_clk clk;
504484Sbinkertn@umich.edu
514484Sbinkertn@umich.edu  const sc_signal_bool_vector& in; //input
524484Sbinkertn@umich.edu  sc_signal_bool_vector& out; //output
534484Sbinkertn@umich.edu  const sc_signal<bool>& input_available; //input
544484Sbinkertn@umich.edu  sc_signal<bool>& send_data; //output
554484Sbinkertn@umich.edu  sc_signal<bool>& output_ready; //output
564484Sbinkertn@umich.edu  const sc_signal<bool>& receiver_ready; //input
574484Sbinkertn@umich.edu
584484Sbinkertn@umich.edu  //Constructor
59  mean(sc_module_name NAME,
60       sc_clock& CLK,
61       const sc_signal_bool_vector& IN_,
62       sc_signal_bool_vector& OUT_,
63       const sc_signal<bool>& INPUT_AVAILABLE,
64       sc_signal<bool>& SEND_DATA,
65       sc_signal<bool>& OUTPUT_READY,
66       const sc_signal<bool>& RECEIVER_READY)
67    : in(IN_), out(OUT_), receiver_ready(RECEIVER_READY), send_data(SEND_DATA), input_available(INPUT_AVAILABLE), output_ready(OUTPUT_READY)
68  {
69    clk(CLK);
70	SC_CTHREAD( entry, clk.pos() );
71  }
72
73  // Process functionality in member function below
74  void entry();
75};
76