R3000 $B$H$N%$%s%?!<%U%'!<%94X?t(B:
bool instruction_fetch_p();
void instruction_fetch( word );
bool data_fetch_p();
void data_fetch( word );
void clock();
bool data_out_p();
word data_out();
void data_out_ok();
============================================================
$B%a%$%s!&%Q%$%W%i%$%s(B
  $B$"$k%9%F!<%8$,%9%H!<%k$r$7$F$b!"B>$NF0$1$k%9%F!<%8$O@h$K?J$`(B

$B2C;;4o(B
  $B%a%$%s!&%Q%$%W%i%$%s$H$OFHN)$7$FA`:n$9$k(B

$B>h;;4o(B
  $B%a%$%s!&%Q%$%W%i%$%s$H$OFHN)$7$FA`:n$9$k(B
  $B8eH>$N%9%F!<%8$G2C;;4o$rI,MW$H$9$k$,!"2C;;4o$,;HMQCf$N>l9g%9%H!<%k(B

$B=|;;4o(B
  $B%a%$%s!&%Q%$%W%i%$%s$H$OFHN)$7$FA`:n$9$k(B
  $B8eH>$N%9%F!<%8$G2C;;4o$rI,MW$H$9$k(B
  $B8eH>$N%9%F!<%8$G2C;;4o$rI,MW$H$9$k$,!"2C;;4o$,;HMQCf$N>l9g%9%H!<%k(B

$B@)8fIt(B
  R3000 $B$H$N%$%s%?!<%U%'!<%9(B
============================================================
$B3F%9%F!<%8$NF0:n(B:

IF $B%9%F!<%8(B

RD $B%9%F!<%8(B
  $B!&(BR3000 $B$+$i%$%s%9%H%i%/%7%g%s$r<u$1<h$k(B (instruction_fetch()$B$K$h$k(B)
  $B!&%$%s%9%H%i%/%7%g%s$r%G%3!<%I(B
    $BI,MW$J%l%8%9%?$N3d$j=P$7(B
  $B!&I,MW$J$i$3$3$G%G!<%?$r<h$j9~$`(B
  $B!&$^$@MQ0U$5$l$F$$$J$$%G!<%?$,I,MW$J>l9g(B($B@h9T$9$k%$%s%9%H%i%/%7%g%s$K(B
    $B0MB8$9$k>l9g(B)$B$O%9%H!<%k$9$k(B ( Read after Write )
  $B!&=q$-9~$`%l%8%9%?$r%m%C%/$9$k(B
    $B%m%C%/$G$-$J$$>l9g%9%H!<%k$9$k(B (Write after Write)
  $B!&Nc30$,H/@8$7$=$&$JL?Na$O!"%9%H!<%k%b!<%I$G<B9T(B
    ^^^^^^^^^^^^^^^^^^^^^^
    $B",%G!<%?$HL?Na$NAH9g$;$G7h$^$k$,!"H=Dj$,Fq$7$$(B
  $B!&%9%H!<%k%b!<%I(B: $B@h9T$9$kL?Na$,%Q%$%W%i%$%s$+$i=P$k$^$G!"<!$NL?Na$r(B
                    issue $B$7$J$$!#(B
    (R3000 $B$H$N6(D4F0:n$O$I$&$J$k!)!)(B)
  $B!&(Bissue $B$9$k$^$G!"$3$N%9%F!<%8$KN1$^$k(B

ALU $B%9%F!<%8(B
  $B!&Nc30$NH/@8$9$kL?Na$O$3$3$GNc30$rDLCN(B(or $B%G%U%)%k%H$NF0:n(B)$B$9$k(B
  $B!&2C;;4o!">h;;4o!"=|;;4o$r%9%?!<%H$5$;$k(B
  $B!&1i;;L?Na$N<B9T(B
    $B1i;;L?Na$N7k2L$O<!$N(B ALU $B%9%F!<%8(B($B8=(B RD $B%9%F!<%8(B)$B$K%U%)%o!<%I$9$k(B
  $B!&%a%b%j!?(BR3000 $B$N%l%8%9%?$+$i$N%j!<%IL?Na$N>l9g!"(B
    R3000 $B$K%G!<%?MW5a$r=P$;$k$h$&!"@)8fIt$K0MMj$7$F$*$/(B

MEM $B%9%F!<%8(B
  $B!&%a%b%j%"%/%;%9L?Na!?(BR3000 $B$N%l%8%9%?$H$NE>AwL?Na$N<B9T(B
  $B!&(BR3000 $BB&$+$i%G!<%?$NE>AwMW5a$,$J$$>l9g%9%H!<%k$7$FBT$D(B
  $B!&%a%b%j!?(BR3000 $B$N%l%8%9%?$X$N%i%$%HL?Na$N>l9g!"(B
    R3000 $B$K%G!<%?$,Aw$l$k$h$&$K!"@)8fIt$K0MMj$7$F$*$/(B

WB $B%9%F!<%8(B

FWB $B%9%F!<%8(B
  $B!&1i;;L?Na!?%a%b%j%j!<%IL?Na$N7k2L$r%l%8%9%?$K=q$-La$9(B
============================================================

