Difference between revisions of "Ratrob"

From Vlsiwiki
Jump to: navigation, search
 
(39 intermediate revisions by the same user not shown)
Line 3: Line 3:
 
==Fetch Engine==
 
==Fetch Engine==
 
===[[Branch Predictor I/F]]===
 
===[[Branch Predictor I/F]]===
*<b> BPredRecoveryType </b>     
+
*<b> <u>BPredRecoveryType </u></b>    <span style="color:Blue"> <i> OUTPUT </i></span>
<span style="color:Blue"> <i> OUTPUT </i></span>
+
  
::{| height=”50”
+
:{| height=”50”
 
|width=150pt |<i> '''BoolType''' </i>
 
|width=150pt |<i> '''BoolType''' </i>
 
|width=100pt | <span style="color:Crimson"> <b>miss </b></span>
 
|width=100pt | <span style="color:Crimson"> <b>miss </b></span>
Line 28: Line 27:
 
|}
 
|}
  
*<b> Status Flag </b>     
+
*<b> <u>Status Flag</u> </b>    <span style="color:Blue"> <i> OUTPUT </i></span>
<span style="color:Blue"> <i> OUTPUT </i></span>
+
:{| height=”50”
::{| height=”50”
+
 
|width=150pt |<i> BoolType </i>
 
|width=150pt |<i> BoolType </i>
 
|width=100pt | <span style="color:Crimson"> <b> rr_empty </b></span>
 
|width=100pt | <span style="color:Crimson"> <b> rr_empty </b></span>
 
|width=100pt | (1 bits)
 
|width=100pt | (1 bits)
 
|}
 
|}
 
 
 
 
 
 
 
 
 
 
  
 
===[[Crack I/F]]===
 
===[[Crack I/F]]===
*<b> Constants </b>   
 
::{| height=”50”
 
|width=150pt |<i> const  ClusterIdType </i>
 
|width=100pt | <span style="color:Crimson"> <b> CLUSTER_AUNIT </b></span>
 
|width=100pt | 2'b00
 
|-
 
|width=150pt |<i> const ClusterIdType </i>
 
|width=100pt | <span style="color:Crimson"> <b> CLUSTER_AUNIT </b></span>
 
|width=100pt | 2'b01
 
|-
 
|width=150pt |<i> const ClusterIdType </i>
 
|width=100pt | <span style="color:Crimson"> <b> CLUSTER_AUNIT </b></span>
 
|width=100pt | 2'b10
 
|-
 
|width=150pt |<i> const ClusterIdType  </i>
 
|width=100pt | <span style="color:Crimson"> <b> CLUSTER_AUNIT </b></span>
 
|width=100pt | 2'b11
 
|}
 
 
*<b> LRegType </b>   
 
::{| height=”50”
 
! Range of Register
 
|-
 
|width=150pt |<i> 0..31 </i>
 
|width=200pt | <span style="color:Crimson"> <b> integer logical register </b></span>
 
|-
 
|width=150pt |<i> 32..63  </i>
 
|width=200pt | <span style="color:Crimson"> <b> FP logical register </b></span>
 
|-
 
|width=150pt |<i> 64..74</i>
 
|width=200pt | <span style="color:Crimson"> <b> special use registers </b></span>
 
|}
 
 
 
 
 
 
 
 
 
 
 
 
::{| height=”50”
 
!Special Use Registers Definitions
 
|-
 
|width=150pt |<i> const  LRegType </i>
 
|width=100pt | <span style="color:Crimson"> <b> LOG_ZERO </b></span>
 
|width=100pt | 7'b0000000;
 
|-
 
|width=150pt |<i> const  LRegType </i>
 
|width=100pt | <span style="color:Crimson"> <b> LOG_CEXC </b></span>
 
|width=100pt | 7'd64;
 
|-
 
|width=150pt |<i> const  LRegType </i>
 
|width=100pt | <span style="color:Crimson"> <b> LOG_ PSR  </b></span>
 
|width=100pt | 7'd65;
 
|-
 
|width=150pt |<i> const  LRegType </i>
 
|width=100pt | <span style="color:Crimson"> <b> LOG_ WIM  </b></span>
 
|width=100pt | 7'd66;
 
|-
 
|width=150pt |<i> const  LRegType </i>
 
|width=100pt | <span style="color:Crimson"> <b> LOG_ CWP  </b></span>
 
|width=100pt | 7'd67;
 
|-
 
|width=150pt |<i> const  LRegType </i>
 
|width=100pt | <span style="color:Crimson"> <b> LOG_ TBR  </b></span>
 
|width=100pt | 7'd68;
 
|-
 
|width=150pt |<i> const  LRegType </i>
 
|width=100pt | <span style="color:Crimson"> <b> LOG_ Y  </b></span>
 
|width=100pt | 7'd69;
 
|-
 
|width=150pt |<i> const  LRegType </i>
 
|width=100pt | <span style="color:Crimson"> <b> LOG_ FSR  </b></span>
 
|width=100pt | 7'd70;
 
|-
 
|width=150pt |<i> const  LRegType </i>
 
|width=100pt | <span style="color:Crimson"> <b> LOG_ ICC  </b></span>
 
|width=100pt | 7'd71;
 
|-
 
|width=150pt |<i> const  LRegType </i>
 
|width=100pt | <span style="color:Crimson"> <b> LOG_ FCC  </b></span>
 
|width=100pt | 7'd672;
 
|-
 
|width=150pt |<i> const  LRegType </i>
 
|width=100pt | <span style="color:Crimson"> <b> LOG_ PC  </b></span>
 
|width=100pt | 7'd73;
 
|-
 
|width=150pt |<i> const  LRegType </i>
 
|width=100pt | <span style="color:Crimson"> <b> LOG_ TMP  </b></span>
 
|width=100pt | 7'd74;
 
|}
 
 
*<b> DInst_CRType </b>   
 
<span style="color:Blue"> <i> INPUT </i></span>
 
  
::{| height=”50”
+
*<b> DInst_CRType </b>    <span style="color:Blue"> <i> INPUT </i></span>
 +
:{| height=”50”
 
|width=150pt |<i> '''BoolType''' </i>
 
|width=150pt |<i> '''BoolType''' </i>
 
|width=100pt | <span style="color:Crimson"> <b> valid </b></span>
 
|width=100pt | <span style="color:Crimson"> <b> valid </b></span>
Line 154: Line 46:
 
|width=100pt | (1 bits)
 
|width=100pt | (1 bits)
 
|-
 
|-
|width=150pt |<i> ‘’’OPType ‘’’</i>
+
|width=150pt |<i> '''OPType'''</i>
 
|width=100pt | <span style="color:Crimson"> <b> op </b></span>
 
|width=100pt | <span style="color:Crimson"> <b> op </b></span>
 
|width=100pt | 10 bits)
 
|width=100pt | 10 bits)
 
|-
 
|-
|width=150pt |<i> ‘’’IMMType ‘’’</i>
+
|width=150pt |<i> '''IMMType'''</i>
 
|width=100pt | <span style="color:Crimson"> <b> imm </b></span>
 
|width=100pt | <span style="color:Crimson"> <b> imm </b></span>
 
|width=100pt | (32 bits)
 
|width=100pt | (32 bits)
 +
 
|-
 
|-
 
|width=150pt |<i> '''BoolType''' </i>
 
|width=150pt |<i> '''BoolType''' </i>
Line 186: Line 79:
 
|width=100pt | (9 bits)
 
|width=100pt | (9 bits)
 
|-
 
|-
|width=150pt |<i> ''' ClusterIdType ‘’’</i>
+
|width=150pt |<i> ''' ClusterIdType ''' </i>
 
|width=100pt | <span style="color:Crimson"> <b> id </b></span>
 
|width=100pt | <span style="color:Crimson"> <b> id </b></span>
 
|width=100pt | (3 bits)
 
|width=100pt | (3 bits)
Line 202: Line 95:
 
|width=100pt | (7 bits)
 
|width=100pt | (7 bits)
 
|}
 
|}
*<b> Status Flag </b>     
+
*<b> Status Flag </b>    <span style="color:Blue"> <i> INPUT </i></span>
<span style="color:Blue"> <i> INPUT </i></span>
+
:{| height=”50”
::{| height=”50”
+
 
|width=150pt |<i> BoolType </i>
 
|width=150pt |<i> BoolType </i>
 
|width=100pt | <span style="color:Crimson"> <b> sched_busy </b></span>
 
|width=100pt | <span style="color:Crimson"> <b> sched_busy </b></span>
 
|width=100pt | (1 bits)
 
|width=100pt | (1 bits)
 
|}
 
|}
 
+
*<b> Status Flag </b>    <span style="color:Blue"> <i> OUTPUT </i></span>
::{| height=”50”
+
:{| height=”50”
 
|width=150pt |<i> BoolType </i>
 
|width=150pt |<i> BoolType </i>
 
|width=100pt | <span style="color:Crimson"> <b> rr_clear </b></span>
 
|width=100pt | <span style="color:Crimson"> <b> rr_clear </b></span>
 
|width=100pt | (1 bits)
 
|width=100pt | (1 bits)
 
|}
 
|}

Latest revision as of 01:13, 18 May 2009

THIS PAGE IS UNDER CONSTUCTION

Fetch Engine

Branch Predictor I/F

  • BPredRecoveryType OUTPUT
BoolType miss (1 bits)
BoolType taken (1 bits)
AddrType target_PC (32 bits)
AddrType addrs (32 bits)
BPredStateType state (9 bits)
  • Status Flag OUTPUT
BoolType rr_empty (1 bits)

Crack I/F

  • DInst_CRType INPUT
BoolType valid (1 bits)
BoolType slow (1 bits)
OPType op 10 bits)
IMMType imm (32 bits)
BoolType expop (1 bits)
BoolType cexc (1 bits)
BoolType aexc_clear (1 bits)
BoolType icc (1 bits)
BoolType useY (1 bits)
BPredStateType state (9 bits)
ClusterIdType id (3 bits)
LRegType ldest (7 bits)
LRegType lsrc1 (7 bits)
LRegType lsrc2 (7 bits)
  • Status Flag INPUT
BoolType sched_busy (1 bits)
  • Status Flag OUTPUT
BoolType rr_clear (1 bits)