メインページ   構成   ファイル一覧   構成メンバ   ファイルメンバ  

AmbaMaster.h

解説を見る。
00001 //=================================================
00002 //     Amba TvmT Master Module Headder File
00003 //  --------------------------------------------
00004 //   2002 3 11 revision 0.0 first revision nk
00005 //   2002 3 12              separate from cc nk
00006 //
00007 //=================================================
00008 // $Revision: 1.23 $
00009 // $Date: 2002/04/17 05:22:23 $
00010 //
00011 
00012 // =================================
00013 //      for AMBA MASTER MODULE
00014 // =================================
00015 // 
00016 
00017 struct AmbaMasterData       
00018 {
00019 
00020 public:
00021      AmbaMasterData() : adr(31,0), 
00022                         wdata(31,0), 
00023                         rdata(31,0),
00024                         trans(1,0),
00025                         size(2,0),
00026                         burst(2,0) {};
00027 
00028      tbvSignal4StateT adr ;
00029      tbvSignal4StateT wdata ;
00030      tbvSignal4StateT rdata ;
00031      tbvSignal4StateT trans ;
00032      tbvSignal4StateT size ;
00033      tbvSignal4StateT burst ;
00034      tbvSignal4StateT wrt ;
00035 //   tbvSignal4StateT prot ;      //! 追加予定
00036 //   tbvSignal4StateT busreq ;    //! 追加予定
00037 
00038 } ;
00039 
00040 
00041 struct AmbaMasterBuf        
00042 {
00043 
00044 public:
00045      AmbaMasterBuf() : wdtbf(31,0) 
00046      {
00047         wflg      = 0 ;
00048         rflg      = 0 ;
00049         next_rflg = 0 ;
00050         wdtbf     = 0x00000000 ;
00051      } ;
00052 
00053      tbvSignal4StateT wflg ;
00054      tbvSignal4StateT rflg ;
00055      tbvSignal4StateT next_rflg ;
00056      tbvSignal4StateT wdtbf ;
00057 
00058 } ;
00059 
00060 // ==================================
00061 //       for AMBA MASTER CLASS
00062 // ==================================
00068 class AmbaMaster
00069 {
00070   AmbaMasterBuf GFLAG ;
00071 
00072   public:
00073 
00074       AmbaMaster(){} ;                    
00075      ~AmbaMaster(){} ;                    
00076 
00077      int AmbaMasterOnecycle( AmbaMasterData * ) ;  
00078 
00079      int AmbaMasterTransferCtl                     
00080         (   
00081              tbvFastQueueT<AmbaMasterData> * , 
00082              tbvFastQueueT<AmbaMasterData> * 
00083        ) ;      
00084 
00085      // ===========================
00086      // Single transfer access
00087 
00088      int AmbaMasterSingle(   
00089              tbvFastQueueT<AmbaMasterData> * ,
00090              tbvFastQueueT<AmbaMasterData> * 
00091        ) ;      
00092 
00095 
00096      int AmbaMasterBurstIncr( 
00097              tbvFastQueueT<AmbaMasterData> * ,
00098              tbvFastQueueT<AmbaMasterData> * 
00099      ) ;  
00100 
00102      int AmbaMasterBurstIncr4( 
00103              tbvFastQueueT<AmbaMasterData> * ,
00104              tbvFastQueueT<AmbaMasterData> * 
00105      ) ;  
00106 
00108      int AmbaMasterBurstIncr8( 
00109              tbvFastQueueT<AmbaMasterData> * ,
00110              tbvFastQueueT<AmbaMasterData> * 
00111      ) ;  
00112 
00114      int AmbaMasterBurstIncr16( 
00115              tbvFastQueueT<AmbaMasterData> * ,
00116              tbvFastQueueT<AmbaMasterData> * 
00117      ) ;  
00118 
00121 
00122      int AmbaMasterBurstWrap4( 
00123              tbvFastQueueT<AmbaMasterData> * ,
00124              tbvFastQueueT<AmbaMasterData> * 
00125      ) ;  
00126 
00128      int AmbaMasterBurstWrap8( 
00129              tbvFastQueueT<AmbaMasterData> * ,
00130              tbvFastQueueT<AmbaMasterData> * 
00131      ) ;  
00132 
00134      int AmbaMasterBurstWrap16( 
00135              tbvFastQueueT<AmbaMasterData> * ,
00136              tbvFastQueueT<AmbaMasterData> * 
00137      ) ;  
00138 
00141 
00142      int AmbaMasterIdle( 
00143              tbvFastQueueT<AmbaMasterData> * ,
00144              tbvFastQueueT<AmbaMasterData> * 
00145      ) ;  
00146 
00147 
00151 
00153      int AmbaMasterComp(   
00154              tbvFastQueueT<AmbaMasterData> * 
00155        ) ;      
00156 
00158      int AmbaMasterCompComp(   
00159              AmbaMasterData * ,
00160              tbvSignal4StateT
00161        ) ;      
00162 
00164      int AmbaMasterSingleComp(   
00165              tbvFastQueueT<AmbaMasterData> * ,
00166              tbvFastQueueT<AmbaMasterData> *
00167        ) ;      
00168 
00171 
00172      int AmbaMasterBurstIncrComp( 
00173              tbvFastQueueT<AmbaMasterData> *  ,
00174              tbvFastQueueT<AmbaMasterData> *
00175      ) ;  
00176 
00178      int AmbaMasterBurstIncr4Comp( 
00179              tbvFastQueueT<AmbaMasterData> * ,
00180              tbvFastQueueT<AmbaMasterData> *
00181      ) ;  
00182 
00184      int AmbaMasterBurstIncr8Comp( 
00185              tbvFastQueueT<AmbaMasterData> * ,
00186              tbvFastQueueT<AmbaMasterData> *
00187      ) ;  
00188 
00190      int AmbaMasterBurstIncr16Comp( 
00191              tbvFastQueueT<AmbaMasterData> * ,
00192              tbvFastQueueT<AmbaMasterData> *
00193      ) ;  
00194 
00197 
00198      int AmbaMasterBurstWrap4Comp( 
00199              tbvFastQueueT<AmbaMasterData> * ,
00200              tbvFastQueueT<AmbaMasterData> *
00201      ) ;  
00202 
00204      int AmbaMasterBurstWrap8Comp( 
00205              tbvFastQueueT<AmbaMasterData> * ,
00206              tbvFastQueueT<AmbaMasterData> *
00207      ) ;  
00208 
00210      int AmbaMasterBurstWrap16Comp( 
00211              tbvFastQueueT<AmbaMasterData> * ,
00212              tbvFastQueueT<AmbaMasterData> *
00213      ) ;  
00214 
00217 
00218      int AmbaMasterIdleComp( 
00219              tbvFastQueueT<AmbaMasterData> * 
00220      ) ;  
00222 
00223     void AmbaMasterWait( int ) ;
00224     void AmbaMasterWaitResetUp() ;
00225 
00226 } ;
00227  
00228 

AmbaMasterTvmに対してWed Apr 17 18:25:31 2002に生成されました。 doxygen1.2.14 作者 Dimitri van Heesch, © 1997-2002