Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

oagFpgaSimOcc.h

Go to the documentation of this file.
00001 /* (c) Copyright 2004-2005, Cadence Design Systems, Inc.  All rights reserved. 
00002 
00003 This file is part of the OA Gear distribution.  See the COPYING file in
00004 the top level OA Gear directory for copyright and licensing information. */
00005 
00006 /*
00007 Author: Aaron P. Hurst <ahurst@eecs.berkeley.edu>
00008  
00009 ChangeLog:
00010 2005-05-31: ChangeLog started
00011 */
00012 
00013 #if !defined(oagFuncSimOcc_P)
00014 #define oagFuncSimOcc_P
00015 
00016 #include "oaDesignDB.h"
00017 #include "oagFunc.h"
00018 #include "oagFuncOccGraph.h"
00019 #include <list>
00020 #include <map>
00021 #include <set>
00022 
00023 using namespace std;
00024 
00025 namespace oagFunc {
00026 
00027 typedef unsigned int SimulationVector;
00028 
00029 // *****************************************************************************
00030 // Simulator
00031 //
00033 //
00034 // *****************************************************************************
00035 
00036 class SimOcc {
00037 
00038   public:
00039   
00040     typedef unsigned int SimVec;
00041 
00042                         SimOcc(oa::oaDesign *design);
00043     
00044     void                setVector(OccRef &ref, SimulationVector vec);
00045     void                generateRandomInputVectors();
00046     void                generateRandomStateVectors();
00047     void                clear();
00048     
00049     void                nextCycle();
00050     
00051     void                runFull();
00052     
00053     void                initializeIncremental();
00054     void                runIncremental();
00055 
00056     bool                getVector(const OccRef &ref, SimulationVector &vec);
00057     
00058   protected:
00059   
00060     SimulationVector    randomVector();
00061     int                 BITS_PER_RAND;
00062 
00063     oa::oaDesign                    *design;
00064     list<OccRef>                    toBeSimulated;
00065     map<OccRef, SimulationVector>   data;
00066 };
00067 
00068 }
00069 
00070 #endif

Generated on Mon Jul 9 14:17:20 2007 for OA Gear Fpga by  doxygen 1.3.9.1