[ ]h] ^ ]6`h` a - ftp.cs.wisc.eduftp.cs.wisc.edu/pub/sohi/trs/trace-processors.1310.pdf · a a ¯ u...

48

Upload: doandieu

Post on 01-Sep-2018

223 views

Category:

Documents


0 download

TRANSCRIPT

�������������� ������������ �������������! #"�"��$�%���& '���'(*),+- /.0����12�3)412�� 56��7$���$8�����)4�-�:9;�<���& �)4��+

=?>A@CB�DFEHGAIKJ�L�I6>NM O$GAIKP$IRQ%IKJ&J�IKGNG SH@UTVO$TW@UGNXY;Z >N@\[�]H]_^�]6`H`_a

bFc<d4eNfhg_ijekmlon_p,qsrstNuhvwuhq<nxqsyKt4p4rzrsy{qzr�qsp4|Klo}~qzp�rslK�;t4}~p4�K�&}~�ors�zqslot,�s}~y{�%�\p,�st����Huh�o�o��}~�o�z���zy��\p4p4�F�z�op4}~q&�o}~�{�ov~��n_uhq��

uhv~v~p4vKp4�Kp4t4lo�z}�y��Ft4y{qzp4rA���op,�st��F�_uh�x�o��}~�o�s�%}~r<�op4�zp4qs�2}��xp4���K�Fu��6lx�F�_p4q&yj�_��ujt4�sy�qsrN�{�_uj�;p4v~��}~�ors�zqslot,�s}~y{�tAuht��op��o}~��q�uh�zp{�K�oq�uj�ot��Fnoqsp,�o}~t4�s}~y{��uht4t,loq�ujt4�6�Kuh�x�F��uh��p4�F�oq�uh�ot��op4r�}~�F�s�op�}~�ors�zqslot4�z}~y{�Frs�zqspAuj�����<uh�{p,��oq�uj�ot��op4r�}~�K�sqsyK�olxt4p��s�op�noqzy{�ov~p4�*yj���o���o���{�o�U�¡ �¢K�{¢�£��w�K£4�U¤4¢K�A�U�w���-¥4¦N�\��§o�w�� {¨��s�op��o�K�_uj�;}~t�}~�ors�zqslot,�s}~y{�rsp4|Klop4�xt4p;p4�K}~rs�zr-}~���z�op%tAuht��op{�&�xlo���s�opF}~�orz�sqslxt4�s}~y{�xr�uhqzp��oy���}��©t4y��6�z}~�{loy�lor�tAuht��opFv~yKtAuh�z}~y{�orN�-���o}~rqsp4nHy{qz�ªt4y��ors}~�op4qzrª�z�op�noqsy��ov~p4�3yj���\p,�st��o}~�o�F�oy��ot4y{�K�z}���loy{lxr��ov~yKt��Kr�yh�<}~�ors�zqslot4�z}~y{�or�}~�Ru-rz}~�o�{v~p�t4�Kt4v~p{�« p%noqzy{nHy{rspF�z�op��\¤z¬{��¦;��¬{��§o¦N�&u;rzn_p,t4}wuhv<}~�orz�sqslxt4�s}~y{�©tAujt��xp;�s�Huh��tAuhnx�sloqzp4r��x�6�Huh�;}~t�}~�ors�zqslot,�s}~y{�

rsp4|Klop4�xt4p4rA�®­<uht���v~}~�opF}~���z�op;�zq�ujt4p;tAujt��op�rs�sy�qsp4r;u¯�o�K�_uh�2}�t%t4yK�op2rsp4|Klop4�xt4p{�����o}~t����°uN�±t4y{�K��uj}~�y{�opFy�q-�;y�qspF��uj�{p4���xq�uh�xt��xp4rA��²��K�_uh�2}�t�rsp4|Klop4�xt4p4r°ujqsp2�olo}~v~�-lon�uhr��s�op2noqsy��{q�uj�³p4�Kp4t4lo�zp4rA��´U��unoqsp4�x}�t,�sp4�R�x�6�Huh�;}~t�rzp4|Klop4�ot4p%p4�K}~rs�zrª}~�;�z�op-�sq�uht4p�tAuht��op{�x}~��tAuj�R�Hpª�Up4���o}~qsp4t4�zv~�;�syF�z�op-�op,t4yK�op4qsrN�« p%}~�Kµ{p4rz�s}~�6uj�sp%y{�s�xp4q-�;p,�s�oyK�or��Uy{q��\p4�zt��x}��x�°�xy{�ot4y��K�s}~�{loy�lor�}~�ors�zqslot4�z}~y{��rsp,|6lxp4�ot4p4rF}~��u�rs}~�o��v~p

t4�Kt4v~p{�����op�¶�q�uh�ot��¸·��o�oqsp,rsrR¹�uht��op�º¼»,½-uh�o�¸¹�y{v~vwuhnxrs}~�o�©¶�lK¾$p4q©º�¿À½�uht��o}~p4µ�pR�o}~�{���_uj�o�o��}~�o�s���K��\p4p4�o}~�o���Flov~�s}~nov~p��xy{�ot4y��K�s}~�{loy�lor&�\p,�st��Ruh�o�oqzp4rsrzp4rª�zy�uh�2}~�6�zp4qsv~pAuNµ�p4�;tNuht��op-uh�o�FnHp4q��\y{qz�;}~�o�-t4y��;nov~p4�uhv~}~�{�o�2p4�K�$y{�%�s�op�}~�orz�sqslxt4�s}~y{�xr�uhr<�z�op4�-t,y{�;p�y{lx��yj�Á�z�op�tAujt��xp{�&´C�op4µK}~��uj�ov~�6�h�z�o}~r<uhnonoqzy6ujt��%v~p4�o���s�op4�xr�s�op-t,qs}~�s}~tAujv�n_uj�s�R�z�oqsy�lo�{���s�xp�}~�orz�sqslxt4�s}~y{�¯�\p4�st��Rlx�o}~�A��­&�K�sq�uFrs��uh��p4rª}~���s�op?�\p4�st��©no}~n_p,v�}~�op�}~�ot4qzpAuhrzp�oq�uj�ot����;}~rznoqsp4�x}�t,�-qsp4t,yhµ{p4qz���s}~�2p{���xp4t4qspNuhrs}~�o��yhµ�p4q�ujv~v�nHp4qC�Uy{qs��uh�ot,p{��ªlxqÃujnonoqsyKuht����2yhµ{p4r�t4y{�Ä�nov~p4�K}��C���olxp��zy°�xy{�ot4y��K�s}~�{loy�lorª}~�orz�sqzlot4�s}~y��R�\p,�st��o}~�o��yh¾��s�opFt,qs}~�s}~tAujv�nHuh�s��uh�x�Ry{�K�sy��z�op-ÅHv�v&rz}��xp�yj��s�op��sq�uht4p�tAuht��op{�« p�t4y{�2n_uhqzp��z�op�nHp4q��\y{qz�°uh�xt4p�yj�Á�z�op��sq�ujt4p�tAujt��xpªuh�6uj}~�ors��y{�s�xp4q&�\p4�zt����op,rs}~�{�orN� « p<ÅHqsrs�&t4y��ors}~�op,q

rs}~�;nov~p�}��xrs�sqzlot4�z}�y��-�Up4�st��o}~�o���;p4t��_uj�o}~rs�;rH�s�Huh��nxqsp4�o}~t4��y{�ov~�ªy��op<�oq�uh�ot��Fuh�&u��s}~�2p�y�q$�\p,�st���y��ov~�ªlon��sy�s�opÆÅ_qsrz����uh��p4�;�xq�uh�xt���� « p�uhv~rzy-t4y{�xrs}~�op4q��2y{qspªuj�{��qsp4rzrs}~µ{p��;p,�s�oyK�or<�z�_uh��uhqzp-uh�ov~pª�zy��\p4�zt��°�Hp4��y{�o��Flov~�s}~nov~p���uh��p4���oq�uj�ot��op4rA�¸�xy{q%}~�K�sp4��p4qF�_p,�ot��o�°ujqs�KrA���s�xp°�zq�ujt4p�tAuht��opR}~�2noqsyhµ�p4r-nHp4qC�\y�qs��uh�ot4p�y��uNµ{p4q�uh�{p��K�;ÇhÈ6É0yhµ�p4q��s�op��\p,�st���lo�o}~��v~}~�;}~�zp4���zy�y��op��_uhrz}~tª�ov~yKt��Fn_p4q�t,�6t,v�p��_uh�x��¿AÊ�É0yhµ{p4q��z�op��\p4�st��lo�o}~��v~}��2}~�sp4�2�syF�Flov~�s}~nov~p�t4y{�K�s}~��loy{lor��Huhrs}~t-�xv�yKt��KrA�����xp-t4y{qzqsp4rzn_y��o�o}~�o��}~�;noqzyhµ{p4�Fp,�6�zr<�Uy{q�Ë_yKuh�s}~�o�n_y�}��K���_p,�ot��o�°ujqs�Krªuhqzp;¿AÌ�É*uh�o�RÍ�É��<�oloqz�s�op,qA�o�z�op-�zq�uht,p-tAuht��op�t4y{�orz}~rs�sp,�6�zv~�°nHp4q��\y{qz�;r��Hp4�s�zp4qª�z�_uh��s�op�y��s�op4q��o}~�{�F�_uj�o�o��}~�o�s���\p4�zt��F�;p4t��_uj�o}~rs�;r�rs�zlo�o}~p4��¦NÎN¦A�2� ¥�£4�w�{ jÏ�¦,Ðs�AÑh�,Ï�¦&¥4¦N�\��§ÄÏ�¬{�U¦N�o�AÑ��~£ª¬h£�£4¢KÒ�¦�Ó¬{�N¤s�h£�£-¬hÏÔÏÕÒ%¦���§x¬{�o�Ö£ÀÒ�£4�ªkK}~�Flovwuh�z}~y{�or<��}~�z�R�;y�qsp�qspAujv~}�rz�s}~t-vwuh�zp4�ot4}~p4r��\y�q��s�op%y{�z�op4q��o}~�{�R�_uj�o�o��}~�o�z�uhnonoqzy6ujt��xp4rA�K�_ujrsp4�2y{�2no}~n_p4v~}~�op�rz��uh��p4r��_p��Uy{qsp-uj�o�;uN�\�zp4q��s�op�}��xrs�sqzlot4�z}�y��;tAujt��op{�orz�oyh���s�_uj���z�opª�zq�ujt4ptAuht��op2t4v~pAuhqzv���y�lo�snHp4q��\y{qz�;r-y��s�op4q;ujnonoqzy6uht��op,rA¨2y{��uNµ{p,q�uh��p{��»�×{ɳuh�x�¸¿A×{ÉØ�Hp4�s�zp4q;�z�_uh���z�op��op4�K��o}~�{�op4rz��n_p,qC�\y�qs�;p,q��\y{q�}~�6�zp4�{p,qªuh�o�2Ë_yKuh�s}~�o�%nHy{}~�K���Hp4�ot��o��uhqs�KrN�oqsp,rsnHp4t4�s}~µ�p4v~�6�

Ù

� ����������� ��������

�������������! #"$�&%('*)�+,�.-0/������1-�+�'324'5�6���1"�+,�,-�-�"��7"$�1�$'5)���8�'39��:"$)�-6;��:<��:;��=)�'39>/���'?2:2:@��A)59�"B'*)C�4)�-&9>��/�+,9��:"$)D #�,9�+,�%7�,+,��'*)��:->%E'*)�;F'*)G�A)�-�90��/�+,9��:"$)H�,I��,+�/�9��:"$)B%J�,+K��'*)��:->%MLONP�:�$/��1� �QSR.T ���� #�,9�+,�H'*)�;B�,I��,+�/�9��:"$)F%7�,+,�5U'*)��:->%7-7'*�1�7-�����'*�&'?9��,;GV*@W�A)�-�9>��/�+,9��:"$)X�:-�->/��6V�/5Y�����L#- Q,Z ["$�\�,I]'5%(��2:�(^]/���/��,- Z �1�,-����_<`'?9��:"$)=-�9>'?9��:"$)�- Z �,9�+ Ra "$)�+,����90/�'?2:2�@ Z 9>���6�A)�-�90��/�+,9��:"$)= #�,9�+,�H%7�,+K��'5)���-0%b'3+,9�-c'?-7'Fd>���_"$;e/�+,���1fhgi���:+,�h [�,9�+,���,- Z ;��,+,"$;��,- Z '*)�;��2A'?+,�,-�A)�-�90��/�+,9��:"$)�-�A)59�"j9>���(V�/5Y���� RT ���7�A)�-�9>�&/�+,9��:"$)h�,I��,+�/�9��:"$)h��)��*�A)��(�:-k9>���hd�+,"$)�-0/�%7���1fjgi���:+,�G�1�0U%7"?<*�,-k�A)�-�9>�&/�+,9��:"$)�-7 l�1"$%m9>���jV�/5Y����'*)�;G�,I��,+�/�9��,-79>����% Z ->/�V]n!�,+,9o9�".;e'?90'j;�������)�;���)�+,�.'5)�;D�1�,-&"$/��1+,�+,"$)�-�90��'?�A)*9&- R a "$)*90�1"*2P;�������)�;���)�+,�,-BLpV���'*)�+,���,-J'5)�;.n�/�%(��- Q ���1"?<���;��.'q #�,�,;eV�'3+KrH%7�,+,��'*)��:->%sV��,91gt�,��)9>������1"�;e/�+,���\'*)�;.+,"$)�-0/�%7��� R

InstructionFetch &Decode

Instruction

branch outcomes/jump addresses

Buffer(s)

ExecutionInstruction

NP�:�$/��1� Ù*uwv )�-�9>�&/�+,9��:"$)� #�,9&+K�W'*)�;j�,I$�,+�/�9&�c%7�,+,��'*)��:->%7-\-�����'*��'39��,;.V*@x�A)�-�9>��/�+,9&��"�).V�/5Y����1- R

yw�1"�+,�,-�-�"$�1-(��'z<��4)��H9>���:-("$�_�$'*)��:8�'?9��:"$)C��%(��2:"`@F'?�*���1�,-�-��:<*�j9��,+,��)��:^]/��,-j9&"{�,I���2:"*�:96�A)�-�90��/�+,9��:"$)5Ul2:�,<*�,2��'*��'32�2:�,2:�:->%}| Ùz~,�1R�� �:;��\;���-0��'?9�+,�('*)�;(�:-�->/��k��'?9>��-t��2A'?+,��'5)(/��������tV�"�/�)�;6"$)�����'*ro�A)�-�9>��/�+,9&��"�)(9>���_"$/��$�5U��/�9 R�� '*�1�5�.�:-�->/��hV�/5Y����_-q'*�_�./�-��,;�9�"H%('?�A)*90'?�A)�'��P�����*�*��"3 ��A)�-�9>�&/�+,9��:"$)�-q)��,+,�,-&->'*�1@H ["$�7;��,9��,+,9&�4)����'*��'32�2:�,2:�:->% Z '5)�;D'x2A'*�1�5�6��"�"*2�"3 ����5@�-��:+�'?2��1�,�5��-&9����1-c���_"`<��:;��,-7;��,-�9��A)�'?9��:"$)�-o ["$�k'?2:2�"? �9>�����4)5U[�e�:�$�597�A)5U-�9>�&/�+,9��:"$)�-k�:-�->/��,;W p�_"$%�90���cg��4)�;�"?g RkT "6��)�'5V�2���+,"$)�+�/����1��)59k�,I$�,+�/�9&��"�)h"? ��A)�-�9>��/�+,9&��"�)�- Z 9>���7�,I$�,+�/�9&��"�)��)��*�A)��j�:-7+,"$%(��"5-��,;G"? i%('*)5@G��'*��'?2:2:�,2w p/�)�+,9&��"�)�'?2�/�)���9&- R.T ���� #�,9&+K�h��)��5�4)��j-0���,+�/�2A'?9��,-(��'?-�97%7/�2�9&�4��2:�V���'*)�+,���,-\�4)�"$�1;����w9�"(-0/�����2�@.'J+,"$)*9&�4)�/�"$/�-\�A)�-�9>��/�+,9��:"$)�-�9>�1��'5%�9&"(9>���kg��A)�;�"?g R

T ���9>�1��)�;h�A)h->/������1-�+�'?2A'*�\;��,-&����).�:-o9�"6-&+�'?2:�c90���,-��79��,+K��)��:^�/��,- u g��:;����\;��:->��'?9�+,���?�:-�->/�� Z 24'5�1�*����g��A)5U;�"?g�- Z %J"$�1�.���5@$-��:+�'?2\�1�,�*�:-�9����1- Z %7"$�1�x l/�)�+,9��:"$)�'?2\/�)���9&- Z '5)�;F;��,��������->���,+�/�2A'?9��:"$) R�T "=%�'?�A)*9>'3�4)C9>���:-9>�1��)�; Z �:9\�:-k�4%���"$�190'*)*9\9�"jV�'?2A'*)�+,�6'?2:2P��'*�19�-\"? �9>���(���1"�+,�,-�-�"��t�.'*)[email protected]�"*9�9&2���)��,+,r5-k;��4%J�4)��:->�X9>���(V���)��0�e9"? �'?�*�$�_�,-�-��:<*� vl� yF9��,+,��)��:^]/��,- R

v )�9>���:-.��'*����� Z gt�{'5�1�.+,"$)�+,���&)��,;�g��:9>���A)�-�9>��/�+,9��:"$)� #�,9�+,��V�'*)�;�g��:;�9>��V��,+,"$%7�A)���'F�����! #"$�&%('*)�+,�V�"59�9�2:��)��,+Kr R(v )�-&9>��/�+,9��:"$)W [�,9�+,�h������ ["$��%('5)�+,�(;�������)�;�-7"$)h'j)�/�%cV����k"? w p'3+,9�"$�1- Rov )�-�9>�&/�+,9��:"$)h+�'?+,���(����9��'?9&�.'*)�;�V���'*)�+,�����1�,;��:+,9��:"$)�'?+,+�/��&'?+,@D��'z<*�j2:"$)��FV��,��)��1�,+,"*�$)��:8,�,;�'?-(�A%(��"$�19>'5)*96���_"$V�2:��%7-6�A)D #�,9�+,������! #"$�&%('*)�+,�6'*)�;H'*�1�7gt�,2�2�U!�1�,-&��'*�1+,���,;�'*�1��'?- R(v )h9>���:-c��'5����� Z gt�('*�1�(�A)59����1�,-�9��,;X�4)H'?;�;��:9��:"$)�'?2� p'3+,9�"$�1-9>��'?9�'*�_�k"$)�2:@.)�"`g���%7���1�*�A)��6'?-\���1"$+,�,-&-�"$�t�:-�->/��7��'?9��,-��,I$+,�,�,;� #"$/����4)�-&9>��/�+,9��:"$)�-k������+,@$+,2:� u

� �,¡1¢ �e£S¤{¥O¤ ¡ �*¦z§*¤S¨�¦$¥�� v t"$)�2:@h"$)��(+,"$)�;��:9��:"$)�'?2tV���'*)�+,�W��-7���1�,;��:+,9��,;F�����k+,@�+,2:� Z 9>����)W9>���(g��A)�;�"?g+�'*)7�$�1"?g�'?9w9>���k��'?9���"3 �"�)�2�@�"$)��iV�'?-��:+kV�2:"$+,r6�����w+,@$+,2:� R yw�1�,;��:+,9��A)��6%7/�2�9&�4��2:�V���'5)�+K���,-������w+,@�+,2:�'?2:2�"?g�-�9>���k"?<*����'?2:2��A)�-�9>�&/�+,9��:"$)j9>���_"$/��$����/�9�9�"(V��+,"$���_�,->��"$)�;��A)��*2:@h����������� R

� �e�*��£>�*��¥[�©§�¦$�5¦*ªj����ªK¥ ¡ ¦�£�¥[�O�*� ¢*« �©§��e¬7­���¥P�D®w�,+�'*/�-&�."? V���'*)�+,���,-q'5)�;Gn�/�%(��- Z �4)�-&9>��/�+,9��:"$)�-x9�"BV�� #�,9�+,���,;.;e/��_�4)��j'*)5@6�5��<5��)j+,@�+,2��(%('z@j)�"*9iV���A)W+,"$)*9&����/�"$/�-�+�'?+,���2:"�+�'?9��:"$)�- R ����)�+,� Z 90�����1�c%7/�-�9V��'?;��,^�/�'?9��k��'?9>��-�'*)�;x2:"*�*�:+'z<`'?�:2A'*V�2:�9�"o [�,9�+,�6'*)�;j'?2:�:�$)j)�"$)�+,"$)59��:�$/�"$/�-\V�'?-��:+V�2:"$+,r*-\'*)�;q��'3-�-

¯

9>����%�/��790�������A���,2:�A)�� R�T ��'?9w�:- Z �:9t�:-�)�"*9w��)�"$/��$�J #"$��90�����A)�-�9>��/�+,9��:"$)�-t9�"7V��k���1�,-���)59��A)�9>����+�'?+,��� Z��9\%c/�-&9i'?2:-�"6V��c��"5-�-��AV�2:�c9&"J'3+,+,�,-�-i90����% �A).��'*��'32�2:�,2 R

� � ­z¥[£,¤.¦��e�O¥ «:¢ ¥[­z�e£����.yP�A���,2��A)��x2A'?9���)�+,@.��'?-k'6���_"? #"�/�)�;.�A%(��'?+,9\"$).���_"$+,�,-�-&"$�i������ ["$��%('*)�+,� R�T ����-��-k;e/���9�"j9>���7+,"*-�9k"? ��1�0�e2:2:�4)��X9>���(���4���,2:�4)��h'z [9������A)�+,"$�&�1�,+,9+,"$)59>�1"52�->���,+�/�2A'?9��:"$) R6v )h9>���7+�'?-��7"? 9>���k [�,9�+,�./�)��:9 Z gt�c'*�_�+,"$)�+,����)��,;hg��:9>��9>���7-�9>'*�_9>/��x+,"*-�9\"? ��1�,;��A�1�,+,9��A)��j [�,9�+,���4)��.'` #9������1�,-�"*2:<��4)��'(V���'*)�+,�j%7�:->���1�,;��:+,9 Z n�/�%(� Z "$���4)�-&9>��/�+,9��:"$)�+�'?+K���7%7�:-�- R�v )��,<$�:9>'5V�2�@ Z 90���c)��,�,;j ["$�����:�$�����\V���'*)�+,�9>���1"$/��$����/�9P'*)�;()�"$)�+,"$)59��:�$/�"$/�-P�A)�-�90��/�+,9��:"$)7'?2:�:�$)�%7��)59Pg��:2�2��A)�+��1��'?-��w [�,9�+K�7/�)��:9P2A'?9���)�+,@��*@*�,9�g�'z@$-%c/�-&9�V��k ["$/�)�;.9&"J%J�4)��A%7�:8,�(90���k24'39���)�+,@j�A%(��'?+,9 R

T '*V�2:� Ù �:2:2A/�-�9>��'39��,-tgi�*@xV���'*)�+,�(9>���_"$/��$����/�9�'5)�;q)�"$)�+,"�)*9��:�$/�"�/�-��A)�-�90��/�+,9��:"$)j'?2:�:�$)�%7��)59i)��,�,;x9�"cV��+,"$)�-��:;����1�,; R a /����_��)*9\ [�,9�+,�{/�)��:9�-'5�1�72��A%7�:9��,;H9�"x"$)��(V���'*)�+,�h���1�,;��:+,9��:"$)B�����\+,@$+,2:� Z '*)�;h+�'*)W9>�����1�0 ["$�1� [�,9�+K� Ù V�'?-&��+V�2:"�+Krx������+,@$+,2:�"���/��x9&"9>���%('3I$�A%7/�% �4)�-&9>��/�+,9��:"$)q #�,9�+,��g��:;�9>� Z gi���:+,���,<*���t+,"$%7�,-����1-�9 RT ���\;e'?9>'�->��"?g�-�9>��'39�9>���k'z<*����'?�*�t-��:8,�k"? �V�'?-&��+V�2:"�+Kr5-t�:-�'5�1"$/�)�;��c"���k�A)�-�90��/�+,9��:"$)�-t ["$�P�A)59��,�*���w+,"�;��,- R� ���:2��J #�,9�+,���A)��{'�-��A)��*2:�6V�'?-��:+6V�2:"�+Kr���'?+,�.+,@�+,2:�(�:-->/�x+,����)59\ ["$�\�A%(��2:��%7��)*90'?9��:"$)�-90��'?9i�:-�-0/��6'?9k%7"*-�9�.�A)�-�90��/�+,9��:"$)�-(������+,@$+,2:� Z �:9�:-()�"*9o-�"j ["$�k���1"�+,�,-�-�"$�_-g��:9>�G���:�$�����7����'*rh�:-�->/��j��'?9��,- R6v �gt�(�A)59>�1"�;e/�+,�%7/�2:9��A��2��.V��&'*)�+K�X���1�,;��:+,9��:"$)�| ¯z� | Ù&�!Z 9>����)=9>���7 [�,9�+K�X/�)���97+�'*)X'?9k2:��'?-�9k [�,9�+,�G%7/�2:9��A��2��G£0�*��¥[�©§�¦$�*¦5ª�V�'3-��:+V�2:"$+,r5-6�A)�'=+,@$+,2:� R � '?9>'� #"��90���{)�/�%cV����7"? k�A)�-�9>��/�+,9��:"$)�-jV��,91gt�,��)F90'*r?��)HV���'*)�+,���,-6->��"?g�-79>��'39(9>���/���������V�"$/�)�;F"$)= [�,9�+K�HV�'*)�;�g��:;�9>�C�:-c-&9��:2�2�-�"$%7�,gi��'392:�A%7�:9��,;��A)H9>���:-(+�'?-&� Z ;e/��j9�".90���( l�1�,^�/���)�+,@B"? 9>'*r3��){V��&'*)�+K���,- R6T �����1�0 ["$�1� Z �� �'x9>'*r?��)XV���'*)�+,�h�:-��)�+,"$/�)59����1�,; Z �:9�:-c)��,+,�,-&->'*�1@h9�"x [�,9�+,�h�A)�-�9>��/�+,9��:"$)�-;�"?gi)x9>���k9>'5r?��)j��'?9>�x�A)j90���k->'*%7�k+,@�+,2:�c90��'?9t9>���V���'*)�+,�j�:-t [�,9�+,���,; R

®���)�+,��%('*�&r 90'*r?��)�� 'z<��JV�'3-��:+cV�2:"$+,rx-��:8,� 'z<��7-��,^]/���)59��A'?2P��/�)x-��:8,��,^])59�"*9�9 ��� R©¯ � � R©¯�� � R ����,->���_�,-�-�" ��� R ��� � R©¯ � � R ���

I�2:�:->� ��� R ��� � R ��� � R � ��*+,+ ��� R ��� � R ��� � R ���-�+ � ��R©¯ � � R � Ù � R � Ù

+,"$%����1�,-�- � ��R©~ � � R � ~ � R ���

T '*V�2:� Ù5u y����1+,��)59>'?�*�k"? �'32�2�;�@�)�'*%7�:+cV���'5)�+K���,-\9>��'?9i'5�1�9>'5r?��) Z 'z<*����'?�5�V�'?-��:+cV�2:"�+Kr�-��:8,� Z '*)�;h'z<*����'?�*�2:��)��*9>��"? �'J-��,^]/���)59��A'?2��&/�)x"? �A)�-�90��/�+,9��:"$)�-(LO� R � R )�/�%cV�����"3 �A)�-�9>�&/�+,9��:"$)�-�V��,91g��,��)x90'*r?��)jV���'*)�+,���,- Q,R

����� ������ ��!#"$� %&!�"��'�

T ���\n1"$Vj"? t9>���k [�,9�+,�h/�)���9k�:-o9�"( [�,�,;h9>���;�@�)�'*%7�:+(�A)�-�90��/�+,9��:"$)h-�90�1��'*% 9�"j90���;��,+,"�;���� R)( ���_"$V�2:��%m��-9>��'?9��4)�-&9>��/�+,9��:"$)�-'*�_�c��2A'?+,�,;h�A).90���+�'?+,����A)W9>���,�A�\+,"$%(���:2:�,;h"$�1;���� R+* 9�"��1�A)��q���1"5�$��'*%7-��4)W-�90'?9��:+k ["$��% l'�<5"$�1-P [�,9�+,���A)��(+,"$;��k90��'?9t;�"$�,-i)�"59�V��&'*)�+K�x"���+,"�;��kg��:9>�x2A'*�1�5��V�'?-&��+V�2:"�+Kr5- R-, �,�:9>������"? �9>���,-��k+�'3-��,-t��-91@]���:+�'?2 "? �A)59��,�*���t+,"�;�� R

� �q���1"���"*-��.'W->���,+,�A'?2��A)�-�9>��/�+,9&��"�)F+�'?+,���jgi���:+K�H+�'5��9>/��1�,-(;�@�)�'*%7�:+j�A)�-�9>��/�+,9&��"�)H-��,^]/���)�+,�,- RDT ����--�9>�&/�+,9>/��1�.�:-j+�'?2:2:�,; '�¥ ¡1¢ £0­h£ ¢ £S¤$­.V��,+�'*/�-��h��'?+,��2:�A)��G-�9&"$�1�,-j'G->)�'5��->��"*9 Z "$��9>��'3+,� Z "? 9>���h;�@])�'5%7�:+�A)�-�9>��/�+,9&��"�)h-�9>�1��'5% Z '?-\->��"?gi)W�4)=NP����/��1� ¯�R.( 9>��'?+,�7�:-'x-��,^�/���)�+,�("? �'?9%7"*-�9)/X�4)�-&9>��/�+,9��:"$)�-7'*)�;B'?9%7"*-&910EV�'?-��:+6V�2:"�+Kr5--&9>'*�19��A)��.'?9k'*)5@{��"*�A)*9o�4)=9>���7;�@])�'*%J��+��4)�-&9>��/�+,9��:"$)h-&9>�1��'*% RoT ���72��A%7�:92/X��-o9>���9>��'3+,�6+�'?+,���x2��A)��W-��:8,� Z '*)�;30 ��-�9>���qV��&'*)�+K�F���_�,;���+,9&"$�79>���1"�/��$����/�9 R4( 9>�&'?+,�(�:-7 l/�2�2:@F->���,+,���e�,;�V5@B'-�9>'5�19��A)��('?;�;e�1�,-�-�'*)�;.'o-��,^�/���)�+,�k"? /��x9�"2065 Ù V���'*)�+,�("�/�9�+,"$%7�,-tgi���:+,�x;��,-�+��1�AV��o9>�����'?9>�J #"52�2:"?gt�,; R

T ���o���1-�9\9��A%7�7'(9>�&'?+,��:-k��)�+,"$/�)59����1�,; Z �:9\��-'32�2:"�+�'?9��,;B'�2:�A)��(�A).90���9>��'3+,�+�'?+,��� RkT ���2:�A)��(�:-\�e2:2��,;H'?-�A)�-�9>��/�+,9&��"�)�-c'*�1�� #�,9&+K���,;W l�1"$% 9>���7�4)�-&9>��/�+,9��:"$)W+�'?+,��� Rv t9>���7->'*%7�o9>��'?+,�o�:-k��)�+,"$/�)*9&���1�,;B'?�$'3�4)��A)h9>���+,"$/��1-&�k"? �,I��,+�/�9��A)��x9>������1"*�$�&'*% Z � R � R 9>���o->'*%7�\-�9>'*�_9��A)��6'?;�;e�1�,-�-\'*)�;.���1�,;��:+,9��,;GV���'*)�+,�x"$/�9�+,"$%J�,- Z �:9g��:2:2�V��'z<?'?�:24'5V�2��k�A)x9>���k90��'?+,��+�'?+,���'*)�;x�:-t #�,;x;��A�1�,+,9�2:@j9�"o9>���i;��,+,"�;���� R�� 9>�����1g��:-�� Z #�,9�+,���A)��(���1"$+,�,�,;�-)�"$��%�'?2:2�@x l�1"$% 9>���o�A)�-�9>��/�+,9��:"$)�+�'?+,��� R

ttA

2nd basic block

1st basic block

3rd basic block (still filling)

Att

TRACE CACHETRACE CACHE

to DECODER

DYNAMIC INSTRUCTION STREAM

trace {A:taken,taken} trace {A:taken,taken}

A At t

Fill New Trace from Instruction Cache Access existing trace using A and predictions(t,t)

t t

later...

NP�:�$/��1� ¯�u ���:�$�h2:�,<*�,2w<$�:�,g "? �90���(9>��'?+,�7+�'?+,���6'*�����_"$'?+,� RcT �����4)�-&9>��/�+,9��:"$)X9>��'?+,�7-�90'*�19��A)��.'?9'?;�;e�_�,-�-� '*)�;.+,"$)59��A)�/��4)��j��'?-�9 ¯ 9>'*r?��)GL_¥ Q V���'*)�+,���,-��:-��e2:2:�,;G�A)59�"(9>���k9>�&'?+,�k+�'?+,���c'?9�90���\���1-�9���)�+,"$/�)59����\'*)�;2A'?9���� #�,9�+,���,;x�4)x'k-&�4)��52��\+,@�+,2�� RwT ����'3;�;e�1�,-�- � '*)�; ¯ V���'*)�+,�(���1�,;��:+,9��:"$)�-\'*�1�i/�-��,;x9�"k2:"�"$r$/���9>����90��'?+,��A)j9>���k90��'?+,�k+�'?+,��� R

T ���9>��'3+,�+�'?+,���('*�����1"$'?+,�.�_�,2��:�,-k"$)�;�@])�'5%7�:+(-��,^�/���)�+,�,-k"? �+,"$;��(V��,�4)��h�1��/�-��,; R\T ���:-%('[email protected]��79>���+�'?-��\ ["$�t91gt"(�1��'?-�"�)�- u

� ¥[­�¬�¨]� ¡1¢*«�« ��£ ¢*« ��¥ � �k2:�4r3��90�������1�A%('*�_@k�4)�-&9>��/�+,9��:"$)o+�'?+,��� Z 90����90��'?+,�P+�'?+,����+�'*)�+,"$/�)59�"$)��A)�-�9>��/�+,9��:"$)�-gi���:+K�W��'�<5��V��,��){�_�,+,��)*9�2:@./�-��,;.V��,�A)��./�-��,;{'?��'?�A)x�4)�9>���)���'*�w l/�9>/��1� R

� �,¡1¢ �e£S¤ � ­,¤ ¢�� �O� ¡ �%7"*-�9PV���'*)�+,���,-P9���)�;(9&"�V���V��A'?-&�,;(9�"?g�'*�1;�-�"$)���;��4�_�,+,9��:"$) Z gi���:+,�7�:-Pgi�5@cV���'*)�+,����1�,;��:+,9��:"$)h'?+,+�/���'?+,@j�:-/�->/�'?2:2:@{���:�$� R\T ��/�- Z �:9\�:-i2:�Ar?�,2:@h9>��'?9�+,���190'?�A){��'39>��-i90���1"$/��$�x9>���o+,"$)59>�1"*2�e"`g��$�&'*���xg��:2:2 V��k ["*2:2�"?gt�,;x l�1�,^]/���)59�2:@ R

����� � ���!� ���� 2���������������

T ���1�,�(�1�,+,��)59-&9>/�;��:�,-��'�<5� ["�+�/�-��,;G"$)h���:�$�GV�'*)�;�g���;�90�h�A)�-�9>��/�+,9��:"$){ #�,9�+,���A)��{'*)�;G'*�_�c+,2:"*-&�,2�@H�1�,2A'?9��,;9�"79>����1�,-&��'*�1+,�6�1����"$�19��,;.�����_� R ( 2:2�"3 9>���,-&��'?9&9���%(��9t9�"o #�,9&+K�j%7/�2:9��A��2:� Z ��"*-�-��AV�2:@.)�"$)�+,"$)59��:�$/�"$/�-iV�'3-��:+V�2:"$+,r5-i��'?+,�x+,@�+,2��o l�1"$% 9>���k�A)�-�9>�&/�+,9��:"$)j+�'?+,��� R

NP�A�1-&9 Z�� ��� Z�� '*��� Z '*)�;FyP'?9�9(| ¯`� +,"$)�-��:;����('� [�,9�+,�B%7�,+,��'*)��:->% 9>��'?9(���1"?<��:;��,-J���:�$�FV�'5)�;�g��:;�9>�FV*@���1�,;��:+,9��A)��B%7/�2:9��A��2:�.V���'*)�+,�G9>'5�1�*�,9'?;�;e�1�,-&-��,-�,<*���_@G+,@$+,2:� R.T ���q%7�,90��"$;h [��'?9>/��_�,-c'�� ¡1¢ ��£,¤ � �*� ¡ ­,ª0ª

� ¢ £S¤$­ Z 'j)�'?9>/���'32P�,I$9���)�-&��"�)h"? �9>���(V���'*)�+,�h9>'*�_�*�,9V�/5Y����7| � �!R7� �:9>�G'jV���'5)�+K�h90'*�1�*�,9kV�/5Y���� Z '�-��A)��*2:�V���'*)�+,�.���_�,;���+,9&��"�){'5)�;.'(® T ®����:9����_"$;e/�+,�,-\9>���k-�9>'5�19��A)��6'?;�;e�1�,-&-i"? P9>���)��,I�9�V�'3-��:+cV�2:"$+,r R * �A%7�:2A'*�12:@ Z'j���:9�A)h9>���(V���'5)�+K�G'3;�;e�1�,-�-k+�'?+,���7+,"$%7V��4)��,;Hg��:9>�h%7/�2:9��A��2��jV���'*)�+,�G���1�,;��:+,9��:"$)�-(���1"�;e/�+,�,-90���c-&9>'*�191U�A)��G'?;�;e�1�,-�-��,-7"? �9>���j)��,I�96ª,­ � ­ ¡1¢*« V�'?-��:+.V�2:"$+,r5- R{T ���,-��q'3;�;e�1�,-�-��,-('*�1�J #�,;H�A)*9�"G'W��������2�@H�A)*9&���12:��'�<5�,;�A)�-�9>��/�+,9&��"�)j+�'?+,���9�"o [�,9�+,�j%c/�2:9��A��2:�(V�'?-��:+cV�2:"�+Kr5-\�4)W'7-��A)��*2:�7+,@$+,2:� R

( -��,+,"$)�;j-&9>/�;�@qV5@xN���'*)�r52:�A).'*)�; � /�9�90'6| � � /�-��,-i'7-��A%7�:2A'*�\'*�����1"$'3+K��9�"(9>���V��&'*)�+K�j'3;�;e�1�,-�-�+�'?+,���L[���1"?<��:;��4)��j%7/�2:9��A��2��xV���'*)�+,�j9>'*�_�*�,9�- Q,Z V�/�9\g��:9>�.'x)��,g %7�,9>��"�;j ["$�����1�,;��:+,9��A)��{%7/�2:9��A��2:�(V���'*)�+,���,-k�4)W'-��A)��*2:��+,@�+,2:� R�T ���,�A��'*�����_"$'?+,�c���:;��,-t%c/�2:9��A��2:�\�4)�;��:<��:;e/�'?2�V���'*)�+,�(���1�,;��:+,9��:"$)�-�g���90���4)x'�-��A)��*2:�����1�,;��:+,9��:"$)��� R � R �&'?9>�����\9>��'*)h%('5r?� ¯ V���'*)�+,�h���1�,;��:+,9��:"$)�- Z %�'*r?� Ù ���1�,;��:+,9��:"$)X9>��'?9k-��,2:�,+,9�-� p�1"�%}'*%7"$)����h��'?9>��- RT ���:-\��)�'*V�2:�,-i9>���/�-&�"? �%7"$�1�k'?+,+�/���'39��k91g�"3Ul2��,<5�,2����1�,;��:+,9�"$�1- R

( )�"*9>�����7��'*�_;�g�'5�1�(-�+,����%7�j���1"$��"5-��,;�V*@ a "$)59�� Z�� �:2:2:- Z � ��)��,8,�,- Z '*)�;FyP'?9��,2i| Ù�� /�-��,-791gt"{��'?-&-��,-9>���1"�/��$�j'*)x�A)*9&���12:��'�<5�,;{V���'*)�+,�x9>'*�_�*�,9�V�/5Y���� R�� '?+,�j��'?-�-�9>���1"$/��$�x90���cV���'*)�+,�x9>'*�_�*�,9�V�/5Y��������1"$;e/�+,�,-'x [�,9�+,�G'?;�;e�1�,-&- Z '?2:2:"?g��A)��h9!gt".)�"$)�'3;?n_'?+,��)59+�'3+K���(2:�A)��,-(9�".V��( [�,9�+,���,; Rjv )H'?;�;��:9��:"$) Z 9>���(�A)*9&���12:��'�<5�,;V���'*)�+,��9>'*�1�*�,9�V�/5Y����w��)�'*V�2:�,-�;��,9��,+,9&��"�)("? �'*)5@6)�/�%7V����w"? �V���'*)�+,���,-t�4)x'k+�'3+K���\2:�4)�� Rtv )j��'5�19��:+�/�2A'*� Z 9>���;��,-��:�$)X�:-J'5V�2��j9&".;��,9��,+,9o->��"$�19� #"$�_g�'5�1;GV���'*)�+,���,-cg���90���4)F'�2:�4)��.'5)�;B�,2:�A%7�A)�'?9��j�A)�-�9>�&/�+,9��:"$)�-6V��,91gt�,��)9>���V���'5)�+K�j'*)�;j�:9�-�9>'*�1�*�,9t/�-��A)��q'x£0� «O«�¢ ¨eªK�O�*§ � ¦��i­ ¡ R�T ���kgt"$�&r('?2:-�"6���1"���"*-��,-t+,"$%�����2:���\9��,+,��)��:^]/��,-\9�"�1�,;e/�+,�o9>���\ p�_�,^]/���)�+,@j"? P9>'*r3��)jV���'*)�+,���,- R

T g�"\���1�,<$�:"$/�-&2�@(���1"���"*-��,;(��'*�_;�g�'5�1��-�90��/�+,9>/��1�,-�'*�_��-��A%7�:2A'*�P9&"i9>���t9>�&'?+,��+�'?+,����V�/�9P�,I$�:-�9P�A)7;���Y����1��)59'*����2:�:+�'?9��:"$)�- RtT ���\�e2:2�/�)��:9 Z ���1"$��"*-��,;.V5@ � �,2:<$�A) Z * ����V�'*)�"?g '5)�;qyP'?9&9i| Ù � �!Z +�'?+,���,-�� v�* a Ul2:�Ar?��A)�-�9>�&/�+0U9��:"$)�-ogi���:+K�G'5�1�7;����1�:<*�,;G l�1"$%}' a v * a �A)�-�90��/�+,9��:"$)h-�90�1��'*% R7T ���:-c���1�,;��,+,"�;��A)��G��'?-��,;X9>���(���1"$V�2:��%}"? ->/�����"$�19��A)��('k+,"$%���2��,I��4)�-&9>��/�+,9��:"$)x-��,9w->/�+,�6'?-�� ( "$)79>���k�\y * �1�,-&9>�1�:+,9��,;x;e'?9>'z�e"?gF��)��*�A)�� R N���'*)�r52:�A)'*)�; * %7"*9>�����&%('*)F| � � �,I$9���)�;��,;F90���(�e2:2�/�)��:9�� -c�_"*2:�69�"W;�@])�'5%7�:+�'?2:2�@�'3-�-���%7V�2:� � ��v[� Ul2:�Ar?�j�A)�-�9>��/�+,9&��"�)gt"$�1;�-t l�1"$% '�� v * a �A)�-�90��/�+,9��:"$)W-�9>�1��'5% Z gi���:+K�h'*�1�k90����)j-�9�"��1�,;j�A){'qª>¤ ¢ �*�*��£ ¢ £,¤�­ RtT ����*"�'?2 "? �9>���:--�9>�&/�+,9>/��1�k�:-i9&"c��'3-��k9>���;�������)�;���)�+,@.+,���,+Kr5�A)��q'5)�;.�:-�->/��o+,"$%(��2:�,I$�:91@j"? �'og��:;��c�:-�-0/��c���1"�+,�,-�-�"$� R

����� 2����� ��������� � ���� ��'� ��� � �"���� � "��! � �!�"�#�

�t�,+�'?2:2�9>��'39�9>����n1"$Vo"? e9>���� #�,9�+,�7/�)��:9P��-P9&"� [�,�,;(9>���w;�@])�'*%J��+��4)�-&9>��/�+,9��:"$)o-�9>�_��'*%�9&"i9>���t;��,+,"�;���� R%$ )�2:�Ar?�9>����90��'?+,�t+�'?+,���i'*�����1"$'3+K� Z ���1�,<$�:"$/�-t;��,-��:�$)�-t��'z<*��"$)�2:@79>����+,"$)5<*��)59��:"$)�'?2��A)�-�9>�&/�+,9��:"$)(+�'3+K��� Z +,"$)*90'?�A)��4)��'k-&9>'?9��:+� #"$�&% "? �9>���k���1"*�$�&'*% Z 9&"gt"$��rog��:9>� R%� <5���1@(+,@�+,2�� Z �4)�-&9>��/�+,9��:"$)�-w l�1"$%�)�"�)�+,"$)*9&����/�"$/�-t2�"�+�'?9��:"$)�-%7/�-�9cV��( [�,9�+,���,;h l�1"$%}90���(�A)�-�9>��/�+,9��:"$)X+�'?+,���q'5)�;B'?-�-���%7V�2:�,;H�4)59�"W9>���6���1�,;��:+,9��,;F;�@�)�'*%7�:+x-��,^]/���)�+,� RT �����1�'5�1����1"$V�2:��%7-\g��:9>�j90����-\'*�����1"$'?+,� u

� y�"*�A)*9����_-�9�"('?2:2e"3 �9>���k)�"$)�+,"$)59��:�$/�"$/�-t�A)�-�9>��/�+,9��:"$)jV�2:"�+Kr5-i%7/�-�9tV��k�*��)�����'39��,;qV��0 #"��1�� [�,9�+,���A)��(+�'*)V��,�*�A) R�T ���:-k�A%(��2:�:�,-c'72:�,<*�,2�"? ��A)�;��A�1�,+,9��:"$) Z 9>���1"�/��$�j-�"�%7�\ #"���% "? �V���'*)�+,�j9>'5�1�*�,9�9>'5V�2��jL[V���'*)�+,�9>'*�1�*�,9\V�/5Y���� Z V���'5)�+K�h'?;�;e�1�,-&-i+�'?+,��� Z �,9�+ R©QSZ gi���:+,�W9>��'*)�-�2A'?9&�,-i�A)59�".'*).'3;�;���9&��"�)�'?2����A���,2:�A)��j-�9>'?�*�V��0 ["$�1�k9>���k�A)�-�9>�&/�+,9��:"$)W+�'?+K��� R

� T ���j�A)�-�9>��/�+,9��:"$)C+�'?+,���.%c/�-&9(->/�����"��19(-��A%7/�2:9>'*)��,"$/�-j'?+,+,�,-�-(9&"B%7/�2�9&�4��2:� Z )�"$)�+,"�)*9��:�$/�"�/�-6+�'?+,���2��A)��,- R7T ���:-\ ["$�1+,�,-k9>���7+�'?+,���79�"qV��6%7/�2:9��A��"$�19&�,;����� �%7/�2:9��A��"$�_9��A)��.�:-k;�"$)��(9>���_"$/��$�j�A)59����12:��'z<$�A)�� ZV�'*)�r(+,"�)5�e��+,9&-�'*�_�k->/5Y����1�,; R

� ( [9����� [�,9�+K���A)��W9>���6)�"$)�+,"$)59��:�$/�"$/�-o�A)�-�9>��/�+,9��:"$)�-o l�1"$%m9>����+�'?+K��� Z 9>���,@G%7/�-�9V��j'?-�-���%7V�2:�,;G�A)59�"9>���7;�@])�'*%J��+7-��,^�/���)�+,� R(v )�-&9>��/�+,9��:"$)�-%7/�-�9kV��(-0���© [9��,;B'5)�;='32��:�$)��,;X9�"q%�'*r?�79>����%}'*������'*�\+,"$)5U9��:�$/�"$/�-t9�"79>���\;��,+,"$;���� RwT ���:-i%7"*-�9t2:�Ar?�,2:@j9>��'*)�-&24'39��,-��A)59�"6'*)x'?;�;��:9��:"$)�'?2����A���,2:�A)��7-�9>'3�*�i'z [9����w9>����4)�-&9>��/�+,9��:"$)�+�'?+K��� R

T ���{90��'?+,�.+�'3+K���B'5�����1"$'?+,��'z<*"*�:;�-j9>���,-&�=���_"$V�2:��%7-{V5@F+�'?+,���4)���;�@])�'5%7�:+G�A)�-�9>��/�+,9��:"$) -��,^]/���)�+,�,-9>����%7-&�,2�<5�,- Z �1��'?;�@X ["$�k9>���j;��,+,"�;���� RGv �9>���j���1�,;��:+,9��,;�;�@])�'*%J��+j-&�,^]/���)�+,�j�,I��:-�9�-(�A)H9>���x9>��'?+,�x+�'?+,��� Z�:9.;�"��,-.)�"*9.��'z<*�h9�"�V��H�1�,+��1��'?9��,;�"$)�9>���h�e@F l�1"$% 90���{�A)�-�90��/�+,9��:"$)�+�'?+K���&� -j-�9>'?9��:+G�1�����1�,-&��)*9>'39��:"$) R

v )���'*�19��:+�/�2A'*� Z )�"H'?;�;��:9��:"$)�'?2\-�9>'?�*�,-xV��0 ["$�1�."��c'` #9����J9>���.�A)�-�9>�&/�+,9��:"$)F+�'?+,���{'5�1�.)��,�,;��,;� #"$�� [�,9�+,���4)��)�"$)�+,"$)59��:�$/�"$/�-o�A)�-�9>��/�+,9��:"$)�- RqT ���6-�90'?�*�,-k;�".�,I��:-�9 Z V�/�9c)�"*9o"$)h9>���(+��_��9&��+�'32���'?9>�="? �9>���7 [�,9�+K�X/�)���9����'?90����� Z "$)k90�����e2:2�-��:;���"? e9>���t9>��'3+,��+�'?+,��� RPT ���t+,"*-�9P"? e9>���:-t'*�����1"$'?+,�k�:-��1�,;e/�)�;e'5)*9w�4)�-&9>��/�+,9��:"$)7-&9�"$��'?�5� u9>���(-0'*%7�7�A)�-�9>��/�+,9��:"$)�-(%('z@.�1�,-&��;��x�A)GV�"59>�h9>���6���_�4%�'*�1@.+�'3+K���6'5)�;G9>���(9>�&'?+,�7+�'?+K��� Z '*)�;G9>�����_�(�,<*��)%7�:�$�59iV��7�1�,;e/�)�;e'*)�+,@.'*%J"$)��(2:�A)��,-k�4)�9>���k9>��'3+,�k+�'?+K��� R

����� % ��� ���� ������ � ���

( -Pg��:9>�7���1�:"$��gt"$�&r\�4)7���:�$�(V�'5)�;�g��:;�9>�o�4)�-&9>��/�+,9��:"$)o [�,9�+,���A)�� Z 9>���:-��1����"$�19�;���%7"$)�-�90��'?9��,-�9>�����A%(��"$�19>'5)�+,�"? � [�,9�+,���4)����'3-�9 %7/�2:9��A��2:�i��"5-�-��AV�2:@*Ul9>'5r?��)(V���'*)�+,���,-P��'?+,�k+,@�+,2:� R�$ )�2:�Ar?��"59>������gt"$�&r\�4)o9>����'*�_��' Z gt�t��24'3+,��,^�/�'?2 ��%(����'?-��:-\"$)7 [�,9�+,�j/�)��:9i2A'?9���)�+,@ RwT ���k��)�;.�1�,->/�2:9��:-\9>���i90��'?+,�k+�'?+,���'?-�'7%7��'*)�-t ["$�w2:"`g�2A'?9���)�+,@ Z���:�$�.V�'5)�;�g��:;�9>�j�A)�-�9>�&/�+,9��:"$)x [�,9�+,���4)�� R

( )�"*9>������+,"$)*90�1�AV�/�9��:"$)j�:-k';��,90'?�:2��,;h-��A%7/�2A'?9��:"$)�-�9>/�;�@j+,"$%(��'5�1�A)��6���1"$��"*-��,;{���:�$�WV�'*)�;�g��:;�9>�q #�,9�+,�%7�,+,��'*)��:->%7-o�4)�+,2A/�;��A)��G9>����9>��'?+,�7+�'?+,��� R y��1�,<��:"$/�-�2:@ Z 9>���('*�����1"$'3+K���,-k;��,-�+��_�4V��,;F�A) * �,+,9��:"$) Ù*R�¯ +,"$/�2:;)�"*9tV��\;��4�_�,+,9�2:@6+,"$%���'*�1�,;(;e/��\9�";���Y����1��)59t�,I]�����1�A%7��)*90'?2e-��,90/���-��7;���Y����_��)*9 v * ( - Z ���1"�+,�,-�-�"$���,I$�,+�/�9&��"�)%7"�;��,2:- Z V��&'*)�+K�j���_�,;���+,9&"$�1- Z +�'3+K���,- Z g�"���r*2:"$'3;�- Z '*)�;{%7�,90�1�:+,- R

v )(90���i+,"$/��_-��i"3 �9>���:-tg�"���r Z %('*)5@6%7�:+��1"$'5�1+K���:9��,+,90/���'?2�'5)�;j2�"5�*�:+i;��,-��:�$)x�:-�-0/��,-i'*�1"*-&� R�� �i2:"�"$r?�,;.'?9;��,-��:�$)W�:-�->/��,-\ ["$�\)�"*9i"�)�2�@j90���c90��'?+,�+�'3+K��� Z V�/�9i"59>�����i���_"$��"*-&�,;=%J�,+K��'*)��:->%J-'?-�gt�,2:2 RkT ���(�1�,-0/�2�9&-i"? 9>���:-\;��,9>'?�:2:�,;.-�9>/�;�@.'5�1�i;�"�+�/�%7��)59��,;h�A)j9>��� ( ������)�;��:I."3 9>���:-k�1����"��19 R

����� !�� � � �� � �� � � �

v )W9>���()��,I�9k-��,+,9��:"$)h90���9>��'3+,�c+�'3+K���o [�,9�+K�h/�)��:9k�:-k;��,-�+��1�AV��,;H�A)h;��,9>'?�:2 R * �,+,9��:"$) �� #"*2:2:"?g�-/��Wg��:9>�h'*)'*)�'?2:@�-��:-k"? �"59>�����i���_"$��"*-&�,;=���:�$�hV�'*)�;�g���;�90�W #�,9&+K�h%7�,+,��'*)��:->%7- Rov ) * �,+,9��:"$) �xgt�;��,-�+��1�AV��69>���o-��A%7/5U2A'?9��:"$)W%7�,9>��"�;�"*2:"*�*@x�4)�+,2A/�;��A)��.90������1"$+,�,-&-�"$��%7"�;��,2 Z gt"$�&r*2:"$'?; Z '*)�;h������ ["$��%�'*)�+,�%7�,9>�1�:+ R-* �A%c/�2A'?9&��"�)�1�,->/�2:9�-'5�1�c���1�,-&��)*9��,;h�A) * �,+,9��:"$) � R ( -��'5�19i"3 �9>���-�90/�;�@.�A) * �,+,9��:"$) � Z gt�+,"$%(��'5�1�9>���79>�&'?+,�+�'?+,���g��:9>�j���1�,<��:"$/�-�2:@j���1"$��"5-��,;.���:�$�j������ ["$��%�'*)�+,�� [�,9�+,�j%7�,+,��'*)��:->%7-�"$)x'Wd�2:�,<*�,2���2A'�@��A)��7�e�,2:;�f6�A)x9����&%7-�"? +�'?+,���,- Z V���'5)�+K�j���1�,;��:+,9��:"$)h%7�,90��"$;�- Z �,I$�,+�/�9��:"$)���)��*�A)��,- Z '*)�;{������ #"���%('*)�+,�%7��'3->/��1�,- R

� ������ ������� ��

v ) * �,+,9��:"$) Ù5RwÙ gt�k�A)*9>�_"$;e/�+,�,;h9>���k+,"$)�+,����9\"? P9>���90��'?+,�k+�'?+,���k�q'5)x�4)�-&9>��/�+,9��:"$)W+�'?+,���gi���:+,�j+�'*��90/��1�,-;�@�)�'*%7�:+7�4)�-&9>��/�+,9��:"$)W-��,^�/���)�+,�,- R\� �c)�"?g ���1�,-���)59�'J9>��'?+,�o+�'?+K���7�A%(��2:��%7��)59>'?9��:"$) R ®w�,+�'*/�-��79>���90��'?+,�+�'?+,���(�:-)�"*9k�A)*9&��)�;��,;B9�".�_����24'3+,�(9>���7+,"$)5<*��)*9&��"�)�'?2P�A)�-�9>��/�+,9��:"$)=+�'?+K����"$�\9>���o #�,9&+K�h��'*�1;�g�'*�_�J'5�1"$/�)�;�:9 Z gt��V��,�*�A)jg��:9>�j'�;��,-�+��1�A��9��:"$)j"3 �9>���\+,"$�1�\ [�,9�+K�x%7�,+,��'*)��:->% RP� �i9>����)x-0��"`g���"?g�90���k+,"$�1�� #�,9�+,�x/�)���9�:-�'5/��$%7��)59��,;jg��:9>�x9>���o9>��'?+,�\+�'?+,��� R

� ��� % ����� � � "�� � � ��

T ���j+,"$�_�( [�,9�+,�B/�)��:9(�:-(�A%(��2:��%7��)59��,;�/�-&�4)��X�,-�9>'*V�2:�:->���,;���'5�1;�g�'*�1�x-�+K����%J�,- RBv 9c�:-(+�'32�2:�,; ����¥[­ ¡0« ­ ¢�� ­>�ª,­��z¦$­z�e¥[� ¢*« �A)�| Ù0�1R Ne�,9&+K���A)��F/��H9�"G9>���x���1-&9J���_�,;���+,9&�,;�90'*r?��)HV���'*)�+,�H��'?+K�H+,@�+,2:�.+�'*)FV��.;�"$)��./�-&�4)��9>���7+,"$%7V��A)�'?9��:"$)h"3 �'*)h'?+,+�/���'?9��(%7/�2:9��A��2:�qV���'5)�+K�h���1�,;��:+,9�"$��| ¯S�!Z '*)W�A)*9&���12:��'�<5�,;BV���'*)�+,�W9>'*�1�*�,9kV�/5Y����L[® T ® Q | Ù&� | � �!Z 'j�1�,9>/���)h'?;�;e�_�,-�--�90'?+KrHL � ()*�Q | Ù � �!Z '*)�;G' ¯ Ulg�'z@j�A)*9����_2���'z<*�,;X�4)�-&9>��/�+,9��:"$)X+�'?+,���q| Ù0� | � �!R�t�0 [����9&"cNP�:�$/��_� � R

T ���{+,"��1�W #�,9�+,��/�)��:9.�:-j;��,-��:�$)��,; 9�"G [�,9�+,��'?-.%('*)5@F+,"$)59��:�$/�"$/�-j�A)�-�9>��/�+,9&��"�)�-{��"5-�-��AV�2:� Z /���9�"F'%('?I��A%7/�% �A)�-�9>��/�+,9&��"�)(2:�A%7�:9i'*)�;6'o%('?I��A%c/�% V���'*)�+,�72:�A%7�:9 R�T �����A)�-�9>��/�+,9��:"$)�+,"$)�-�90��'?�A)*9w�:-��A%(��"*-��,;jV*@9>���Pg��:;�9>��"? �9>���P;e'?9>'*��'39>� Z '5)�;k9>����V���'*)�+,�k+,"$)�-&9>��'?�A)59��:-��A%(��"*-&�,;JV5@\9>����V���'*)�+,����1�,;��:+,9�"�� 9>���1"$/�������/�9 RNe"��t;���%7"$)�-�90��'?9��:"$) Z 'o [�,9�+,�x2��A%7�:9k"? Ù �7�A)�-�9>��/�+,9&��"�)�-�'*)�; �7V���'*)�+,���,-i�:-k/�-��,;j9>���1"$/�����"$/�9 R

A

taken branch

16-way Interleaved

A

BRANCH TARGET BUFFER

A

fetchBTB

valid instructionsbit vectors

targetaddress

Line Size = 16 Instructions

to decoder

INTERCHANGE, SHIFT, MASK

2-Way Interleaved

LOGIC

Instruction Cache

STACKADDRESSRETURN

not takenbranch

111111000000000000000000001111111st:

2nd:

address

BRANCH

PREDICTOR

Line Size = 16 Instructions

MULTIPLE

3

"01x"

NP�:�$/��1� � uPT ���+,"��1�\ #�,9&+K�j/�)��:9 R

T ���+�'?+,����:-\�4)59����12:��'z<*�,;h-�"x9>��'?9 ¯ +,"$)�-��,+�/�9��:<*�7+�'?+,���2:�A)��,-+�'*)WV��('?+,+,�,-�-&�,;��e9>���:-k'?2:2:"`g�-� [�,9�+,���4)��-��,^�/���)*9&�4'32�+,"�;��69>��'39->��'*)�-7'j+�'?+,���(2:�A)��.V�"$/�)�;e'5�1@ Z '?2:g�'z@�-�$/�'5��'*)59��,�,�A)��{'� l/�2�2t+�'?+,���(2:�A)��j"$�/��X9�"9>���o���1-�9\9>'*r3��).V���'*)�+,�G| � �1R�T ����-k-&+K����%7�7�1�,^�/��4�_�,-c%7�A)��A%('?2P+,"$%���2��,I��:91@j ["$�i'32��:�$)��A)��W�4)�-&9>��/�+,9��:"$)�- u L Ù�Q2:"*�*�:+x9�"j-�g�'*�W9>���("$�_;����\"? �9>���(91gt"6+�'?+,���(2:�A)��,-.LO�A)*9����_+K��'*)��5�(-�g��:9�+,� Q,Z L ¯*Q 'x2:�0 #91Ul-0���© [9����o9�".'?2:�:�$)X9>����A)�-�9>��/�+,9&��"�)�-i�A)59�"6' Ù �`Ulg��:;���A)�-�9>��/�+,9&��"�)j2A'?9�+,� Z '*)�;BL � Q 2:"*�*�:+9�"(%('3->r("3Y=/�)�/�-��,;.�A)�-�9>�&/�+,9��:"$)�- R

( 2:2�V�'*)�r5-i"? t9>���c® T ® '*�1�('?+,+,�,-&-��,;h�4)h��'*�&'?2:2��,2wg��:9>�W9>����A)�-�90��/�+,9��:"$)h+�'?+,��� RkT ���,@.-&���1<*�79>���(�1"*2:�"? �L Ù�Q ;��,9��,+,9��A)��qV��&'*)�+K���,-��4)�9>���k�A)�-�9>��/�+,9&��"�)�-�+�/����1��)59�2:@.V��,�A)��� #�,9�+,���,;.'*)�;BL ¯5Q ���_"`<��:;��A)��69>���,�A�t90'*�1�*�,9'?;�;e�1�,-&-��,- Z �A)X9��A%7�7 ["$�\9>���6)��,I�9\ [�,9�+K�=+,@$+,2:� RjT ���6® T ® %7/�-�9cV��&/�Ulg�'z@W�4)59����12:��'z<*�,; Z gi�����1��/H��-o9>���)�/�%cV����\"? ��A)�-�90��/�+,9��:"$)�-�A)h'x+�'?+,���72��A)�� R(T ���:-o��-k-&"j9>��'?9k'?2:2P�4)�-&9>��/�+,9��:"$)�-og��:9>���A)G'(+�'3+K���(2:�A)��(+�'*)hV��+,���,+Kr?�,;J #"$�PV��&'*)�+K���,-P�A)(��'5��'?2:2:�,2�| Ù0�1R�T ���i® T ®X+�'*)7;��,9&�,+,9P"*9>������91@]���,-�"? e+,"�)*9>�_"*2$90��'*)�-1 [�����A)�-�9>��/�+,9��:"$)�-'?-kgt�,2:2 Rcv �'on�/�%(�W��-k;��,9&�,+,9��,; Z 9>���\n�/�%(�h'?;�;e�1�,-�-%�'�@.V��6���1�,;��:+,9��,; R L���/�%(�W9>'*�1�*�,9k���1�,;��:+,9��:"$)�-7'*�1�)�"*9\+,"$)�-��:;����1�,;G�A)h90����-��'5����� Z ��"?gt�,<*��� R©Q �t�,9>/���)X'?;�;e�1�,-�-��,-\+�'*)h'?2A%7"*-&9�'?2:g�'z@$-kV���"$V�9>'?�A)��,;hg��:9>�h)�"����)�'32�91@jV*@(/�-��A)��6'o+�'?2:2A�*�1�,90/���)(-&9>'?+,r RPv �9>����® T ®C;��,9��,+,9�-�'7�1�,9>/���)J�4)x90���i�A)�-�9>�&/�+,9��:"$)�-iV��,�A)��7 [�,9�+,���,; Z�:9i��"���-i9>���'3;�;e�1�,-�-k'?9t9>���k9�"$�x"? P9>��� � ()* R

, "*9��:+,�x�A)HNP����/��1� �j9>��'39c90���qV���'5)�+K�F���1�,;��:+,9�"���:-(-&����'*��'?9��� l�1"$%}90���q® T ® RPT ���:-(�:-(9�"h'?2:2�"?g ["$����1�,;��:+,9�"$�_-�9>��'?9�'5�1��%7"$�1��'?+,+�/���'39���9>��'*)o9>��� Ù U!V��:9�"$� ¯ U!V��:9w+,"$/�)*9&���1-�)�"$��%('32�2:@7-�9�"��1�,;7g��:9>�7��'?+,�(V���'*)�+,���)59>�1@G�A)X9>���.® T ® R�� ���:2��W-�9�"$�_�4)��W+,"$/�)59����1-7g��:9>�H��'?+,�BV��&'*)�+K�H'?+,���:�,<*�,-(%c/�2:9��A��2:�{V��&'*)�+K�H���1�,;��:+,9��:"$)9>�1�:<��A'?2:2�@ Z V���'*)�+,�����1�,;��:+,9��:"$)�'3+,+�/���'?+,@��:-j2:�A%7�:9��,; R ®t��'*)�+,�����1�,;��:+,9��:"$)��:-x l/�)�;e'*%7��)59>'?2\9�" v�� y Z '*)�;->��"$/�2:;���'�<5�.���1�,+,�,;���)�+,�h"`<5���"59>�����o l'?+,9�"$�1- R N�"$�(���:�$��V���'*)�+,�F���1�,;��:+,9��:"$)�'?+,+�/���'?+,@ Z gt�./�-��.' ��r$®� ( ��L Ù � Q +,"$�&�1�,2A'?9��,;{V��&'*)�+K�j���_�,;���+,9&"$�| Ù �S�!R�T ��� Ù �xV���9\�*2:"$V�'?2�V���'*)�+,�j����-&9�"$�1@j�1�,�*�:-�9������4)�;��,I��,-k�A)*9&"6'-��A)��*2:�i��'?9&9�����)7���:-�9�"$�1@o9>'*V�2:� R�T ���:-����1�,;��:+,9�"��Pg�'?-�+K��"*-&��)o #"����:9�-�'?+,+�/��&'?+,@('*)�;(V��,+�'*/�-�����9w�:-�%7"$�1�t��'?-��:2:@�,I�9���)�;��,;B9&"q%7/�2:9��A��2:�.V���'*)�+,�G���1�,;��:+,9��:"$)�-79>��'*)W"*9>�����k���_�,;���+,9&"$�1-g\����+,�H�1�,^]/��A�1�x'?;�;e�1�,-�-o�4)5 ["$��%�'?9��:"$)| ¯S� | � �!Rov 9\��-7�1�,2A'?9��:<*�,2:@h-�9>��'3�����*91 ["$�1g�'*�_;69�"x�,I�9���)�;G9>���7-��A)��*2:�(+,"$�&�1�,2A'?9��,;GV���'*)�+,�h���1�,;��:+,9�"$�\9�"j%7/�2�9&�4��2:����1�,;��:+,9��:"$)�-t��'?+,�o+,@$+,2:� Z '?-P���1"$��"5-��,;(�A)j| ¯S�!R ( )c'3+,9>/�'?2e��'*�1;�g�'*�_���A%(��2:��%7��)59>'?9��:"$)��:-P->��"?gi)o�4)JNP����/��1�+� R

® T ®�2:"*�*�:+o+,"$%7V��4)��,-\9>���® T ®����:9i�A)5 ["$��%('39��:"$)xg��:9>�x9>���V���'5)�+K�W���1�,;��:+,9��:"$)�-i9&"6���1"�;e/�+,�9>���)��,I�9 [�,9�+K��'?;�;e�_�,-�- Z '5)�;�9�"H�*��)�����'?9��h9>�&'?�:2��A)���8,���1"$�,-j�A)�90��� �z¢*« ���F�O��ª,¥ ¡ ¦$£z¥[���*� � �O¥ � ­0£�¥[� ¡ ª{LO�� (9>�����1�h�:-.'���1�,;��:+,9��,;W9>'*r?��)jV���'5)�+K� Q,RwT ���k2:��'?;��A)��68,���1"��,-\�4)x90���<`'32��:;W�4)�-&9>��/�+,9��:"$)WV���9\<*�,+,9�"��1-�'*�1�k;��,9�����%J�4)��,;hV*@9>����2:"?gtUl"$�_;�����V��:9�-�"3 �90����+�/����1��)59P [�,9�+,�('?;�;e�1�,-�- R T ���i%('?->r5�A)��2:"*�*�:+\�:-�+,"�)*9>�_"*2:2��,;xV*@79>���,-��kV��:9�<*�,+,9&"$�1- R

®w"*90�h9>���(�A)59����1+,��'*)��*�j'*)�;G->���� [9c2:"*�5��+j'*�1��+,"$)*90�1"*2:2:�,;DV5@h9>���62:"?gtUl"$�_;����V��:9�-7"? �90���6+�/����_��)*9� #�,9�+,�'?;�;e�1�,-&- R�� ¤$� ª6� ª ¢�� ­ �J¨]�*�O�e¥��W¥O¤$­ « ­ � ¥�lª0¤$� � ¥ ¢ ¬7�*¦��e¥� ª � �e�*�P� ¢ ¥k¥O¤$­ � ­�§$�O�e�e�O�*§W� � ¥O¤�­ � ­�¥[£S¤B£ �?£ « ­�¢ ���.¤ ¢ ª(¥O¤$­j­���¥[� ¡ ­x£ ¢ £S¤$­ ¢ £0£>­Sª>ª7¥[� � ¢ ���*¦�¥i¥[�h¥O¤$­�ª>¤�� � ¥[­ ¡ � ¢ ¥ ¢ ¨ ¢ ¥O¤ �xN�/��_9>����� Z �� i'j90��'*)�->%7�:-�-&��"�)h�$'?9��V�'*���_�,2�-0���© [9����w�:-i/�-��,; Z �A)�-�90��/�+,9��:"$)�-i��'?-&-�9>���1"$/����("$)�2:@("�)��k9>��'*)�->%J��-&-��:"$)x�$'?9���;��,24'z@xg��:9>�j'ogt"$�1-�9w+�'?-��+�'*��'?+,�:9��:<*�72:"$'?;��A)��W"? Ù �("*90������9>�&'*)�->%7�:-�-��:"$)W�$'39��,-�"$)hV�"59>�j�A)���/�9c'5)�;."$/�9>��/�9 Riv )W->/�%�%('*�1@ Z +,"$)59>�1"*2�:-)�"*9�"$)�9>���+��_��9&��+�'32���'?9>� Z '*)�;h;e'?90'*��'?9>�x;��,2A'z@j�:-%7�A)��4%�'?2 R�T �����1�0 #"��1� Z �A)�"$/���-&�4%7/�2A'?9��:"$)�-kgt�o9>�1��'?99>���k+,"$�_�\ #�,9�+,�j/�)��:9�'3-i'7-��A)��*2:�(���A���,2:�A)��(-�9>'?�5� R

� ��� ��� � � ��� ��'� � ��!�"$�3%&!�"��'�T ���o+,"$�1�\ [�,9�+K�W/�)��:9k+�'*)x"$)�2:@j [�,9�+,�x+,"$)*9&����/�"$/�-i-&�,^]/���)�+,�,-k"? P�A)�-�9>��/�+,9&��"�)�- Z � R � R �:9\+�'*)�)�"*9t [�,9�+,�.��'?-&9i'9>'*r3��)(V���'*)�+,�(�A)�9>���\->'*%7��+,@�+,2:�i90��'?9�9>���kV���'*)�+,�7�:-w #�,9&+K���,; R�T ���i9>�&'?+,��+�'?+,�������_"`<��:;��,-t9>���:-�'3;�;���9&��"�)�'?2+�'*��'*V��:2:�:91@ R�T ���o9>��'?+,�k+�'3+K���k9�"5�*�,9>�����tg��:9>�x90���k+,"$�1�\ [�,9�+K�W/�)��:9i�:-�->��"?gi)x�A)�NP����/��1� � R

T ���k9>��'?+,�o+�'?+K���k�:-k%('?;��7/��j"? P�A)�-�9>��/�+,9��:"$)W9>�&'?+,�,- Z +,"$)59>�1"52��A)5 ["$��%('39��:"$) Z '*)�;W2��A)��0U[�e2:2�V�/5Y����t2:"*�5��+ RT ���k2:��)��*9>�x"3 '79>��'3+,�i�:-�2:�A%7�:9��,;h�A)x9!gt"og�'z@�-w��V5@j)$/�%7V�����"? ��A)�-�9>��/�+,9&��"�)�-1/h'*)�;jV*@j)�/�%cV����t"? V�'3-��:+V�2:"$+,r5- 0 RhT ���� #"���%7���k2:�A%7�:9&/C��-7+,��"*-���)HV�'?-��,;H"$)X9>���q����'*rh;��:->��'?9&+K�H��'?9�� RWT ���62A'?9&9����o2��A%7�:9&0 ��-+,��"*-���)(V�'?-&�,;("$)2/j'*)�;�9>���i'z<*����'?�5��)�/�%7V�����"? ��A)�-�9>�&/�+,9��:"$)�-t�4)x'kV�'?-��:+kV�2:"$+,r R 0 '32�-&";��,9�����%J�4)��,- Z "�����-+,"$)�-�90��'?�A)��,;{V5@ Z 9>���)�/�%7V�����"? �V��&'*)�+K�j���_�,;���+,9&��"�)�-%('?;��������+,@�+,2�� Rtv )�NP�:�$/��1� � Z /�� ٠�7'*)�; 0�� � RT ���\+,"$)59>�1"*2��A)5 ["$��%('?9&��"�)(�:-t-��A%7�:2A'*�t9�"o9>���i90'?�'*����'z@7"? �-�9>'5)�;e'*�1;(+�'?+,���,-�V�/�9t+,"$)*90'?�A)�-�'3;�;���9&��"�)�'?2 -�9>'?9���A)5 #"���%('?9��:"$) u

k2 2-bit counters )(

shift inoutcomes

update counterwith outcome

k bits( )

single prediction

BRANCH HISTORY REGISTER

PATTERN HISTORY TABLE

���������� � �������������� ����������� ���!�"�!#$��� �%�&'#� �����()�$ �������������!�*�+� ,��-��.���0/

b

b13:2

b

13

b11:0

b0

b1

12:1

b0

b0

p0

p0

p

b

p0

p2

p1

1

1214 2-bit counters

212( )x 4 arrayarranged in

PATTERN HISTORY TABLE

GLOBAL HISTORY REGISTER

4:1 MUX

4:1 MUX

4:1 MUX

3 branch predictions

�1#2������ �.���0�����"�3�$ �����������!,���!�"�!#$���4�!%657#� ����8()�� ���������������9'�+�.:��-��.���0/

NP�:�$/��_�)� u�� I�9���)�;��A)��x9>������1�,;��:+,9�"$��9>���1"$/�������/�9 R

� ��¢*« �O� � ��¥ u �A)�;��:+�'?9��,-\9>���:-\��-k'o<`'?2:�:;h9>��'?+,� R

� ¥ ¢ § u 90���k9>'?�o�e�,2:;{�:;���)59����e�,-k9>���k-�9>'5�19��A)��6'?;�;e�1�,-&-�"? P9>���k9>��'?+,� R

� �,¡1¢ �e£S¤,; ¢ §*ª u 9>�����_���:-�'�-��A)��*2:�iV��:9� #"�����'?+,�7V���'*)�+,�og��:9>���A)79>���t9>��'?+,�w9�"\�4)�;��:+�'?9&��9>������'?9>�� ["*2:2�"?gt�,;'z #9&���t9>���(V���'*)�+,�FLO9>'*r?��)��5)�"*9�9>'*r3��) Q,RiT ���20=<?>�V���'*)�+,�."3 �9>���9>�&'?+,�7;�"$�,-)�"*9k)��,�,;G'���'?�x-��A)�+,�)�"(�A)�-�9>��/�+,9��:"$)�-� ["*2:2�"?g��:9 Z ����)�+,�c90�����1�'*�1�k"$)�2:@�0 5 Ù V��:9�-��4)�-&9���'?;."3 0}V��:9�- R

� �,¡1¢ �e£S¤G¬ ¢ ª � u -&9>'?9��(�:-6)��,�,;��,;�9�"h�A)�;���+�'39��DL ÙzQ 9>���.)�/�%7V����7"? kV���'*)�+,���,-c�A)C9>���690��'?+,�j'*)�; L ¯*Qgi���,9>�����t"$�t)�"*9�9>���k9>��'?+,�k��)�;�-��4)W'(V���'*)�+,� R�T ���:-��:-k)��,�,;��,;j ["$�t+,"$%���'*�1�A)��(9>���k+,"$�&�1�,+,9i)�/�%cV����"? �V���'*)�+,�6���1�,;��:+,9��:"$)�-\'?�$'?�A)�-�9w9>���i-0'*%7�i)�/�%7V����w"? �V���'*)�+,�7��'3�*- Z gi����)�+K���,+,r*�A)��o ["$��'o9>��'3+,�i���:9 RT ���:-k��-'32�-&".)��,�,;��,;BV*@W9>���(V���'*)�+,�h���1�,;��:+,9�"$�\9�"jr$)�"?g���"?g %('*)5@.���1�,;��:+,9��:"$)�-7g����_�c/�-��,; R7T ������1-�9A@�B�C�DFE�L 0HG Ù�Q!I V���9&-c��)�+,"�;��x9>���q)�/�%7V�����"? iV���'*)�+,���,- R � )��j%7"$�1�6V��:97�A)�;��:+�'?9��,-(�� i9>����24'3-�9�4)�-&9>��/�+,9��:"$)��4)W9>���o9>��'?+,�k�:-k'6V��&'*)�+K�����© t9>��/�� Z 90���cV���'*)�+,� � -�+,"����1�,->��"$)�;��A)��.V���'*)�+,�x��'?�(;�"��,-k)�"*9)��,�,;.9�"(V��o+K���,+,r?�,;W-��A)�+,�c)�"(�A)�-�9>�&/�+,9��:"$)�-� ["*2:2:"?g �:9 R

~

FILL

CONTROL

n instructions

INSTRUCTION LATCH

merge logic(uses info from decoder)

n instructions

BRANCH

TARGET

BUFFER

BTB logic

next fetchaddress

RETURNADDRESSSTACK

PREDICTOR

fetchfetchaddress

branchflags

address

mask

addressfall-through

targetaddress

1 + log (m+1)2

branch

m predictions

1st branch

2nd branch

3rd branch

m-1

HIT LOGIC

2:1 MUX

n instructions

TRACE CACHE

to DECODER

INSTRUCTION CACHE

to TC

PREDICTORfrom

m mask/interchange/shift

CORE FETCH UNIT

LINE-FILL BUFFER

11A

tag

X Y11,1

NP����/��1� � uPT ���o9>��'?+,�k+�'3+K���\ [�,9�+,�j%7�,+K��'5)���-0% R

� ¥ ¡!¢ £>­ � ¢*«�« 1¥O¤ ¡ �*¦�§5¤ ¢ �*� ¡ ­Sª>ª u �� �9>���k2A'?-&9�V���'5)�+K���4)�9>���90��'?+,�k�:-����_�,;���+,9&�,;=)�"59�9>'*r?��) Z 9>���:-�'?;�;e�_�,-�-��-\/�-��,;{'?-�9>���)��,I$9� #�,9�+,�.'3;�;e�1�,-�- R

� ¥ ¡!¢ £>­o¥ ¢*¡ §$­�¥ ¢ �*� ¡ ­Sª>ª u �� 90���k24'3-�9iV���'*)�+,�x�A)j9>���k90��'?+,�\��-k���1�,;��:+,9��,;W9>'*r?��) Z 9>���:-i'?;�;e�_�,-�-��:-�/�-&�,;.'?-9>���)��,I$9� #�,9�+,�j'?;�;e�1�,-&- R

T ���k9>�&'?+,�i+�'3+K���k�:-k'?+,+,�,-�-��,;j�A).��'5��'?2:2:�,2�g��:9>�x9>���k�A)�-�9>�&/�+,9��:"$)j+�'?+,���'*)�;.® T ®�/�-��A)��(9>���k+�/��&�1��)*9� #�,9�+,�'?;�;e�1�,-&- RcT ���J���_�,;���+,9&"$�k�*��)����&'?9��,-%7/�2:9��A��2��jV���'*)�+,�h���1�,;��:+,9��:"$)�-7gi���:2:�69>���7+�'?+,���,-'*�1�('?+,+,�,-&-��,; R(T ��� [�,9�+K�W'?;�;e�1�,-�-k�:-/�-��,;W9�"*�*�,90������g��:9>�W9>���7%7/�2�9&�4��2:�6V��&'*)�+K�h���1�,;��:+,9��:"$)�-o9�"(;��,9����&%7�A)��(�� �9>���o9>��'?+,�7�1��'?; l�1"$%}90���69>�&'?+,�(+�'?+,���.%('?9�+,���,-90���q���1�,;��:+,9��,;F-&�,^]/���)�+,�j"? kV�'?-��:+qV�2:"�+Kr5- R * ���,+,�©�e+�'32�2:@ Z 'j9>��'3+,�6+�'?+,������:96�1�,^�/��A�1�,-(9>��'?9.L ÙzQ 9>���x [�,9�+,�B'?;�;e�_�,-�-(%('?9�+,�G90���j9>'?�{'5)�; L ¯*Q 90���.V���'*)�+,�B���1�,;��:+,9��:"$)�-j%('?9&+K�X9>���V���'*)�+,�x��'3�*- RtT ���(V���'*)�+,�.%('?-0r(��)�->/��_�,-i9>��'39�9>���+,"����1�,+,9k)$/�%7V�����"? ����1�,;��:+,9��:"$)GV��:9�-k'*�1�7/�-��,;.�A)W9>���+,"$%(��'5�1�:-�"$) R � )h'(9>�&'?+,�+�'?+,���(���:9 Z '*)j��)59��A�1�79>��'3+,�"? ��A)�-�9>�&/�+,9��:"$)�-�:-\ [�,;{�A)59�"x9>���7�4)�-&9>��/�+,9��:"$)W2A'?9�+,� ZV5@]��'?-&-��A)��69>���k�A)�-�90��/�+,9��:"$)j+�'3+K��� R

� )h'x9>�&'?+,�+�'?+,���(%7�:-�- Z #�,9�+,���A)��.���1"�+,�,�,;�-c)�"$��%�'?2:2�@� p�_"$%�90���c�A)�-�90��/�+,9��:"$)h+�'?+,��� Z � R � R +,"$)*9&����/�"$/�-�A)�-�9>��/�+,9&��"�)k [�,9�+,���A)�� RPT ���t2��A)��0U[�e2:2�V�/5Y���� 2:"*�*�:+t-����1<���+,�,-P90��'?+,��+�'3+K���t%7�:-�-��,- RPv )o9>���w�,I]'5%(��2:���A)oNP�:�$/��1�+� Z9>���1�,�hV�'?-��:+GV�2:"$+,r*-j'*�1�� #�,9&+K���,;�"$)��h'?96'X9��A%7�j l�1"$%E90���.�A)�-�9>��/�+,9&��"�)�+�'3+K��� Z -��A)�+,�='32�2kV���'*)�+,���,-j'*�1����1�,;��:+,9��,;F9>'5r?��) R{T ���qV�'?-&��+.V�2:"�+Kr5-6'*�_�62A'?9�+,���,;H"$)��q'39J'�9��A%7�j�A)*9&"{90���62:�A)��0U[�e2:2�V�/5Y���� �w9>���x2��A)��0U[�e2:2+,"$)59>�1"*2�2:"*�*�:+i-&���1<*�,-t9�"c%J���1�*����'?+,���4)�+,"�%7�A)��6V�2:"$+,r("3 ��A)�-�90��/�+,9��:"$)�-�g��:9>�x���1�,+,�,;��A)��x�4)�-&9>��/�+,9��:"$)�-t�A)x9>���2:�A)��0U[�e2�2�V�/5Y���� R NP��2:2:�A)��6�:-�+,"�%(��2:�,9��gi����)x�,�:9>����� /.�A)�-�90��/�+,9��:"$)�-k��'�<5��V��,��)x9>��'?+,�,;j"$�-0mV���'*)�+,���,-i��'z<*�V��,��)H;��,9&�,+,9��,;B�A)X9>���x9>��'?+,� R�( 99>���:-(��"*�A)5979>���6+,"�)*9���)59�-o"? �9>���62:�A)��0U[�e2:2�V�/5Y����o'*�1�xgi�1�:9�9���)h�A)59�"h9>���9>��'3+,�k+�'?+K��� R\T ���cV��&'*)�+K�q��'?�*-k'*)�;{V��&'*)�+K�W%('?->rx'*�1�o�*��)�����'?9&�,;.;e/��1�A)��j9>���o2��A)��0U[�e2:2����_"$+,�,-�- Z '*)�;W9>���9>��'3+,�c90'*�1�*�,9k'*)�;W p'32�2�Ul9>���_"$/��$�G'?;�;e�_�,-�-��,-'*�1�7+,"$%���/�9��,;B'?9\9>���7��)�;G"? t9>���72��A)��0U[�e2:2 Rxv �9>���79>��'?+,�7;�"��,-)�"*9���)�;W�A).'(V���'5)�+K� Z 90���k9>'*�1�*�,9�'?;�;e�_�,-�-��:-i-&�,9��,^]/�'32�9�"79>���k l'?2:2�Ul9>���1"$/����j'?;�;e�1�,-�- R

Ù �

T �����1�i'*�1�\;���Y����1��)*9t+,2A'?-�-&�,-�"3 �+,"�)*9>�_"*2�9>��'*)�-_ #�����4)�-&9>��/�+,9��:"$)�-w�(+,"$)�;��:9��:"$)�'?2�V���'*)�+,���,- Z /�)�+,"$)�;��:9��:"$)�'?2V���'*)�+,���,- Z +�'32�2:-x"$�o;��A�1�,+,9kn�/�%(��- Z �1�,90/���)�- Z �A)�;��A�1�,+,9on_/�%(��- Z '*)�;F9>��'5��-�G@*�,97-�"W l'*�k"�)�2�@H+,"$)�;��:9��:"$)�'?2V���'*)�+,���,-(��'z<*�6V��,��)H;��:-�+�/�-&-��,; RGT ���x+,"$%(��2:�,IB'?2:9�����)�'39��:<*�( ["$�o��'*)�;�2:�4)��H'?2:2�"3 �90���,-��6+�'3-��,-7��-79�"h'?;�;'?;�;��:9��:"$)�'?2PV��:9�-\9�"7��'?+K�WV���'*)�+,����'?�(9�"�;���-&9��A)��$/��:->�h9>���k91@����k"? P+,"$)59>�1"*2�90��'*)�-1 [���w�4)�-&9>��/�+,9��:"$) R N�/��190����� Z9>���(2:�A)��0U[�e2:2iV�/5Y����%7/�-�9k-�9&"$�W�e2:2:�4)��H'x9>��'?+,�(g\����)G'.�1�,90/���) Z �A)�;��A�1�,+,9\n_/�%�� Z "��\9>��'*�W�:-7��)�+,"$/�)*9&���1�,; ZV��,+�'5/�-��690���,-��(+,"$)59>�1"*2�9>��'5)�-1 #���\�A)�-�90��/�+,9��:"$)�-(��'z<*�('*)W�4)�;��,9&����%7�A)��:9��.)$/�%7V����k"? �9>'*�_�*�,9�- Z gi�����1��'?-o9>������1�,;��:+,9�"$��+�'*)�"$)�2:@.���1�,;��:+,9k"$)��k"? �91gt"c90'*�1�*�,9�- R�� '?-�9&2�@ Z 9>���V���'5)�+K�W%('?->rx'*)�;.90���c���:9i2:"*�5��+('*�_�%('?;��-�2:�:�$�59�2:@{%7"$�_�k+,"$%(��2:�,I.-��A)�+,�7/�)�+,"$)�;��:9��:"$)�'?2�V���'*)�+,���,-k'*)�;.+�'?2:2:-k->��"$/�2:;G)�"*9iV���A)5<*"*2:<*�,;h�A).���1�,;��:+,9��:"$)LO9>���k"�/�9�+,"$%7�k�:-ir�)�"?gi) Q,R

� ��-&�4%���2��� [@690���,-���+,"$%(��2:�:+�'?9��:"$)�-t�A)�9!gt"kg�'z@$- R NP�A�1-�9 Z 90����9>��'?+,�t+�'?+,���\;�"$�,-t)�"*9P-�9�"$�_���_�,9>/���)�- Z �4)�;���U�1�,+,9�n�/�%(��- Z "$��9>��'*��-�'?9�'?2:2 ��9>���\2:�A)��0U[�e2�2�V�/5Y����t'*V�"$�19�-�'��e2:2�gi����)x�:9t;��,9��,+,9�-i'*)5@("? �9>���,-��\�4)�-&9>��/�+,9��:"$)�- R* �,+,"$)�; Z /�)�+,"$)�;��:9��:"$)�'?2�V���'*)�+,���,-�'5)�;(+�'?2:2:-�+�'*)(V��i<��:�,g��,;.'3-�+,"$)�;��:9��:"$)�'?2�V���'5)�+K���,-t9>��'?9�'5�1���,I�9>�1��%7�,2:@���1�,;��:+,9>'*V�2:���� p�_"$% 9>���:-���"5�4)59t"? �<��:�,g Z 9>���,@(+�'*)xV��k�$�_"$/����,;x�A)*9�"79>���\+,"$)�;��:9��:"$)�'?2�V���'5)�+K��+,2A'?-�-�'*)�;j)�"*9V��x9>�1��'39��,;G'*)*@h;���Y����1��)59�2:@ Rj� ��90�h9>���,-��(91gt"j-��A%(��2:���e+�'?9��:"$)�- Z 9>���(90��'?+,�7+�'?+,���q��'?-o"$)�2:@h9�".;���'?2wg��:9>�+,"$)�;��:9��:"$)�'?2PV���'*)�+,���,- R

T ���6-��:8,�j"? k'h;��A�1�,+,96%('*�����,;F9>��'?+,�x+�'?+,���6g���90�3���h2��A)��,- Z / � Ù � Z '5)�; 0 � �W�:-&� Ù�¯ V*@�9��,-7 ["$�9>'?�5->�?+,"$)59>�1"*2*'*)�; ��r5�:2�"�V*@�9��,-P ["$� �A)�-�9>��/�+,9��:"$)�-kLO+,"$%(��'5��'*V�2:�t�4)�'*�1��'�9�"k9>���t+,"$���1�,2A'?9&�,;JV��&'*)�+K�7���1�,;��:+,9�"�� Z�$r�® Q,R�T ���:-i+,"$)5�e��/���'?9��:"$)���-\/�-��,;.�A)j90���k�,I]�����1�A%7��)*9&-kgi���:+K�q #"*2:2:"?g R

� ��� � ��!�"$�3%&!�"��'��� � � � � ��� �'!#"$�T ���x9>��'?+,�x+�'?+,���j;������:+,9��,;��A)HNP�:�$/��1���W��-�9>���6-&�4%���2��,-&9(;��,-��:�$)�'5%7"$)��{%�'*)*@H'?2:9�����)�'?9��:<*�,- RGv 97�:-(9>����A%(��2:��%7��)59>'?9��:"$)H/�-��,;G�A)h-��A%7/�2A'?9��:"$)�-7"? t9>���79>��'?+,�7+�'?+,��� R ��"?gt�,<*��� Z 90���c;��,-&����)G->��'3+,�(;��,-����1<*�,-k-&"$%7�'?9�9&��)*9��:"$) u

��¢ ª>ª,��£z� ¢ ¥[� � ��¥ � u�T ����-��A%(��2:�,-�9t9>��'?+,��+�'?+K������-t;��A�1�,+,9�%('*�����,; R ��"?gt�,<*��� Z ��9w+�'*)(V���%('3;��i%7"$�1�\'?-�-�"?U+,�4'39��:<*�9�"x�1�,;e/�+,�+,"$)5�e�:+,9k%7�:-�-��,- R�T ����-\g��:2:2 V��c'?9�9>���k�,I]����)�-��7"? �'?+,+,�,-�-\9��A%7�c'*)�;.�_����24'3+,��%7��)*9+,"$%(��2:�,I$�:91@ R

� ¬c¦ « ¥[� ¨ « ­�¨ ¢ ¥O¤*ª u ( ;�"?gi)�-��:;��x"? �9>���7-��A%(��2:�x9>��'?+,��+�'?+K���7�:-90��'?9\ p�_"$%}'x�*�:<*��)h-�90'*�19��A)��.'?;�;e�1�,-&- Z"$)�2:@{"�)��(9>��'?+,��+�'*)GV��x-�9�"��1�,; R6v 9c%7�:�$�59cV��6'?;�<`'5)*9>'3�*�,"$/�-9&".V��j'*V�2:�69�"j-&9�"$�1�(%7/�2:9��A��2��.��'39>��-��%7�A)�'?9��A)��j l�1"$%}'��*�:<*��)G'?;�;e�1�,-&- R6T ���:-o+�'*)GV��x9>��"$/����*9k"? �'?-'*)�"*90�����\ ["$��%m"? �'?-�-�"�+,�A'?9��:<$�:91@W�¨ ¢ ¥O¤ ¢ ª0ªK�z£�� ¢ ¥[� � �O¥ � R ( ;�;��A)��7��'?9>�('?-&-�"$+,�A'?9&��<��:91@+,"$/�2:;j�1�,;e/�+,��9>����'3->���A)��V��,91gt�,��)79>��'?+,�,-P90��'?9�-&9>'*�19'?9t9>���k->'*%7�'3;�;e�1�,-�- R

� ¨ ¢*¡ ¥[� ¢5« ¬ ¢ ¥[£,¤$­Sª u ( )F'?2:9����&)�'?9��:<*�j9�"B���_"`<��:;��A)��D��'?90�F'?-�-�"�+,�A'?9��:<$�:91@F�:-(9�"B'32�2:"?g ¨ ¢*¡ ¥[� ¢*« ¤���¥Oª R�v 9>���� [�,9�+,�6'3;�;e�1�,-�-�%('?9�+,���,-t9>���\-�9>'*�19&�4)��('?;�;e�_�,-�-t"? 'o9>��'?+,�k'*)�;x9>�������1-�9w #�,g�V���'5)�+K�x���1�,;��:+,9��:"$)�-%('?9�+,�\9>�������1-�9� #�,gBV��&'*)�+K����'?�*- Z ���1"?<���;��w"$)�2:@'����1�0�eIk"? �9>���P9>�&'?+,� R�T ���:-��:-��A)��2A'?+,�t"? �9>���P-��A%(��2:�d>'?2:2�"$�o)�"*9>���A)��*fG'*�����1"�'?+K�=g��j/�-�� R.T ���q'?;�;��:9��:"$)�'32�+,"5-�97"? �9>���:-c-&+K����%7�x�:-79>��'?9�A)59�����%7�,;��A'?9&�V�'?-��:+(V�2�"�+,r.'?;�;e�1�,-&-��,-%7/�-�9�V��7-�9�"$�1�,;� #"���9>���7->'5%7�c�1��'3-�"$)j90��'?9i90��'?+,�90'*�1�*�,9k'*)�;j l'?2:2�Ul9>���1"$/����'?;�;e�1�,-�-��,-�'*�_�k-�9�"$�1�,; R ( 2:-�" Z '()��,g��:-�->/��k�:-��A)59>�1"�;e/�+,�,; u 90�����1�k�:-�9>���\^]/��,-�9&��"�)x"? g\���,9>�����w"$�t)�"*9'(��'*�19��A'?2����:9kV��90�1��'?9��,;j'?-i'(%J��-&- R

� �*¥O¤$­ ¡ �����*­��?���5§j¬c­z¥O¤$���3ª u�T ���o-��A%(��2:�79>��'?+,�o+�'?+K���o�A)�;��,I$�,-kg��:9>�W9>���� #�,9&+K�W'?;�;e�1�,-�-k'*)�;.�A)�+,2A/�;��,-V���'*)�+,�{���_�,;���+,9&��"�)�-�A)h9>���79>'?�j%('?9&+K� R)( 2:9�����)�'?9&��<5�,2�@ Z 9>���7�A)�;��,IG�A)*9�"x9>���(90��'?+,�+�'3+K���7+,"$/�2:;BV��;����1�:<*�,;GV*@W+,"$)�+�'?9���)�'?9&�4)��x9>���o [�,9�+K�W'?;�;e�1�,-�-kg���90�.90���cV���'*)�+,�h���1�,;��:+,9��:"$)GV��:9�- RkT ���:-k�0Y��,+,9��:<*�,2:@'?+K���:�,<*�,-k��'?9>�W'?-�-�"�+,�A'?9��:<���91@jgi���:2:�(r?�,�����A)��.'(;��A�1�,+,9k%('*�����,;h-�9>��/�+,9>/��_� Z V��,+�'*/�-&�c;���Y����1��)59���'39>��--�9>'*�19&�4)��('?9w9>���k->'*%J��'?;�;e�_�,-�-i)�"?g�%('*��9�"7+,"$)�-��,+�/�9��:<*�k2:"�+�'?9��:"$)�-\�4)x90���k9>��'?+,�\+�'?+,��� R�T �����1�\�:-i'-��,<*���1�o+,"$%(��2:�:+�'?9��:"$) Z ��"?gt�,<*��� Z V��,+�'5/�-��(9>���7)$/�%7V����\"3 �V���'*)�+,���,-k�4)X'(9>�&'?+,�+,"$/�2:;BV��72��,-&-k9>��'*)

ÙoÙ

0 5 Ù*R7T ���:-�A%(��2:�:�,-c90���(�A)�;��,I{-0��"$/�2:;D)�"*9/�-&�J'32�2tV���'*)�+,�h���1�,;��:+,9��:"$)BV��:9�-o9�"j'?+,+,�,-�-90���c90��'?+,�+�'?+K��� Z @*�,9w9>���:-��:-i)�"*9tr$)�"?gi)��A)j'?;�<`'*)�+,� R ( ��"*-&-��AV�2��o-�"*2A/�9��:"$)x�:-�9�"ogi�1�:9��\9>���\->'*%7�\9>��'?+,�\9�"o9!gt""$�t%7"$�1�k+,"$)�-&�,+�/�9��:<*�2:"�+�'?9��:"$)�- Z -�"(9>��'39��,�:9>������2:"$+�'39��:"$)j�*�:<*�,-\'(���:9 R

����«O« � ª0ªK¦�­,ª uP� ���:2��79>���o2:�4)��0U[�e2:2tV�/5Y�������-\+,"*2:2:�,+,9��A)��{'()��,g 9>��'3+,� Z 9>���k9>��'3+,�k+�'?+K���o+,"$)59��A)$/��,-\9�"6V��'?+,+,�,-�-��,;6V5@79>���t [�,9�+,�(/�)��:9 R�T ���:-�%7��'*)�-t'k%7�:-�-t+,"$/�2:;6"�+,+�/��P�A)�9>���i%7�:;�-�9w"? ���'*)�;�2:�4)��x'k���1�,<$�:"$/�-%7�:-�- R�T ���k;��,-&����)x"$��9��:"$)�-��A)x"$�1;�����"? ��A)�+��1��'?-��A)��x+,"$%(��2:�,I���91@j'*�1� u �:�$)�"��1��'5)*@j)��,g %7�:-�-��,- Z ;��,2A'z@-����1<���+,�A)��F)��,g %7�:-�-��,-x/�)*9��:2�90���j2��A)��0U[�e2:2V�/5Y����7�:-( l�1�,� Z "��(���1"?<$�:;��.%7/�2:9��A��2:�{2:�A)��0U[�e2:2V�/5Y����1-(9�"->/�����"$�_9i+,"$)�+�/��&�1��)*9%J��-&-��,- R ( )�"59>�������:-�-0/��(�:-kgi���,9>������9�"(�e2:2P9>���79>�&'?+,�+�'?+,���g���90�.-0���,+�/�2A'?9��:<*�9>��'?+,�,-t"$�t9&"(g�'?�:9� ["$��V��&'*)�+K�x"�/�9�+,"$%7�,-iV��0 #"��1�+,"$%�%7�:9�9��A)��6'79>�&'?+,�k9�"79>���k+�'?+,��� R

��� ¦��*�O£��O�*¦*ª7¥ ¡1¢ £>­JªK­ « ­0£�¥[�O�*� u T �����1�c'*�_�2:�Ar?�,2:@.9�"6V��79>��'?+,�,-�90��'?9i'*�1�o+,"$%(%7�:9�9&�,;{V�/�9k)��,<*���i�_��/�-��,; RT ���,-��k9>��'3+,�,-i%('z@6;��:->��2A'?+,�(/�-��0 l/�2�9>�&'?+,�,- Z +�'*/�-&�4)��j)��,�,;�2:�,-�-%7�:-�-��,- R�T "(�A%(���1"?<*�k9>�&'?+,�k+�'?+,�������9��'?9��,- Z 9>���o;��,-��:�$)W+,"$/�2:;{/�-��7'7->%('32�2PV�/5Y����t9�"(-&9�"$�1��1�,+,��)59\9>��'?+,�,- ��'79>��'?+,�k�A)W9>���:-kV�/5Y�������-\"$)�2:@+,"$%(%7�:9�9��,;j9&"c90���9>��'3+,�k+�'?+K���'` #9����w"$)��o"$�t%7"$�1����:9�-\9�"79>��'?9�9>��'?+,� R

� � �O£�¥[�O¬}¥ ¡!¢ £>­x£ ¢ £,¤$­ u)( )h'?2:9����&)�'?9��:<*�(9�"7n�/�;��:+,�:"$/�-79>��'?+,�7-��,2:�,+,9��:"$)X�:-9�"./�-��x'x<$�:+,9��A% +�'?+,���.| ¯��S�!R( <$�:+,9��A%m9>��'3+,�+�'?+,���c%('[email protected]?�,����<`'?2A/�'*V�2:�(90��'?+,�,-� p�1"�%�V��,�A)��{������%('*)���)59�2:@.;��:->��2A'?+,�,;HV*@./�-��,2:�,-�-9>��'?+,�,- R

Ù�¯

� ������P������� �� �\�� ��o��� �P� �� �w ��\��� ���

v )�9>���:-�-��,+,9��:"$)�gt�'*)�'?2:@$8,�o9>���k"$�1��'*)��:8�'?9��:"$)x"? P91g�"7���1�,<���"�/�-�2:@{���1"$��"*-��,;x [�,9�+,�j%7�,+K��'5)���-0%7-�'3�4%J�,;{'?9 [�,9�+K���A)��6'5)�;.'?2:����)��4)��x%c/�2:9��A��2:�()�"$)�+,"$)59��:�$/�"$/�-�V�'?-��:+V�2:"�+Kr5-i��'3+K��+,@$+,2:� RtT ���k'*)�'?2:@$-&��-\+,"$%(��'5�1�,-t9>���,-��%7�,+,��'*)��:->%7-k'?�$'?�A)�-�9�9>���k9>��'?+,�k+�'3+K��� Z g���90�x24'39���)�+,@.V��,�A)��j9>���r?�,@j��"5�4)59� #"$�w+,"$%���'*�1�:-�"$) R

� ��� ����! �'"�� ��� ������ � %&!�"��'�T ���tV���'*)�+,�k'?;�;e�1�,-�-�+�'3+K���� #�,9�+,�k%7�,+,��'*)��:->% ���1"$��"5-��,;cV5@ � ��� Z � '*�&� Z '*)�;cyP'?9&9 | ¯,� ��-�->��"?gi)\�A)kNP�:�$/��_� � RT �����1�.'5�1�x #"�/��(���1�A%('*�1@H+,"$%(��"$)���)59�- u L ÙzQ 'hV���'*)�+,��'?;�;e�1�,-&-(+�'?+,���DL[® ( a QSZ L ¯*Q 'G%7/�2�9&�4��2:�GV���'*)�+,����1�,;��:+,9�"$� Z L � Q '*)7�A)59����12:��'z<*�,;6�A)�-�90��/�+,9��:"$)�+�'?+K��� Z '*)�;GL � Q '*)7�A)59����1+,��'*)��*�i'5)�;q'?2:�:�$)�%7��)59�)��,91g�"���r R�T ���® ( a �,I�9���)�;�-k9>���® T ®�9&"6%7/�2�9&�4��2:�(V���'*)�+,���,-kV*@j-�9&"$�1�A)��6'�9>�1�,�k"? P9>'*�1�5�,9i'*)�;x l'?2:2©Ul90���1"$/��$�h'?;�;e�1�,-&-��,-'?-\;������:+,9��,;B�A)WNP�:�$/��1�2� RT ���c;�����90�."3 �9>���79>�1�,�7;�������)�;�-o"$)W9>���()$/�%7V����\"3 �V���'*)�+,���,-���1�,;��:+,9��,;B�����+,@�+,2�� R

1st branch

2nd branch

3rd branch

A

F GED

B C

H I J K L M N O

T

T

T

NT

NP�:�$/��1� � u � '?+,�j® ( a ��)*90�1@6-&9�"$�1�,-�'(��"$�19��:"$)�"? 90���k+,"$)*90�1"*2��e"?g�����'*��� R

v )GNP�:�$/��_�&� Z 2:�:�$�597�$�1�,@GV�"?I��,-J�_�����1�,-���)59c)�"$)5Ul+,"$)59>�1"52�9>��'5)�-1 #���\�A)�-�90��/�+,9��:"$)�-('*)�;H;e'*��rW�$�1�,@GV�"?I��,-�1�����1�,-&��)*9.V���'5)�+K���,- ��9>���W�e�,2�;�-j�A)�90���=® ( a +,"$���_�,->��"$)�;�9�"F90���.9>�1�,�h�A)�NP�:�$/��1� � Z '3-j�4)�;��:+�'?9&�,; V*@9>���6'3;�;e�1�,-�-k2A'*V��,2:- ( 9>���1"$/���� �7R�T ���(;��A'?�$��'*%m;������:+,9�-79>���791gt"?Ul-�9>'3�*�c)�'?90/��1�7"? �9>����;��,-��:�$) R6v )h9>������1-�9k-&9>'?�*� Z '*)W��)*90�1@j+,"$)59>'?�A)��A)��{/��W9�" Ù �.V�'?-��:+(V�2:"$+,rh'?;�;e�1�,-�-��,-k�:-�1��'3;. l�1"$% 9>���(® ( a R N �1"$% 9>���,-��'?;�;e�1�,-&-��,- Z /��.9&" �xV�'?-��:+(V�2:"$+,r.'?;�;e�_�,-�-��,-\+,"$���1�,->��"$)�;��A)��j9�"x9>���c���1�,;��:+,9��,;H��'?9>�.'5�1�-��,2:�,+,9��,; Rov )W9>���:-�,I�'*%(��2:� Z 9>����)��,I�9 �oV���'*)�+,���,-�'*�1�i'?2:2����1�,;��:+,9��,;j9>'5r?��) Z +,"$�&�1�,->��"�)�;��4)��79�"o9>����-��,^�/���)�+,�k"? �V�'?-��:+kV�2:"$+,r*-� a Z � Z ��$R�v )F90���.-��,+,"$)�;�-�90'?�*� Z 9>���j�A)�-�9>��/�+,9��:"$)�+�'?+,���{�_��'?;�-690���.9>���1�,�hV�'?-��:+{V�2:"�+Kr5-x�4)�;��:+�'?9&�,; V*@'?;�;e�1�,-&-��,-� l�1"$% 9>���7® ( a �A).��'*�&'?2:2��,2 l�1"$% �:9�-i%7/�2:9��A��2:�6V�'*)�r5- R* �A)�+,�79>���cV�'3-��:+cV�2:"$+,r5-�%('z@jV��7��24'3+,�,;'*��V��:9>�&'*�1�:2:@j�4)59�"(90���+�'?+,���V�'*)�r5- Z 90���,@q%7/�-�9i��'3-�-�9>���1"�/��$�j'*)j'?2:�:�$)�%7��)59�)��,91gt"$��r�9�"('?2:�:�$)W9>����% �A)59�";�@�)�'*%7�:+c���1"5�$��'*% "$�1;�����'*)�;.%7���1�*�k90����%��A)59�"(9>���k�A)�-�9>�&/�+,9��:"$)j2A'?9�+,� R

T ����91gt"�-�9>'?�5�,-��A)90����-P;��,-&����)c'5�1�����A���,2:�A)��,; R-� /��1�A)��\9>���t-��,+,"$)�;-&9>'?�*� Z gi���:2:�iV�'?-��:+�V�2:"$+,r*- � a Z � Z ��'*�1�(V��,�4)��� #�,9&+K���,;h l�1"$% 9>���7�A)�-�9>��/�+,9&��"�)h+�'?+,��� Z 9>���(® ( a V��,�5�4)�-7'j)��,g +,@$+,2:�j/�-��A)��.'?;�;e�1�,-�- � '?-k�:9�-�A)�;��,I Rtv )x�5��)�����'?2 Z 90���i2A'?-�9\V�'?-��:+cV�2:"�+Krx'?;�;e�1�,-�-��4)�;��,I��A)��j�A)*9�"�9>���k�A)�-�9>��/�+,9��:"$)x+�'3+K���o��-\'?2:-�"(9>���k�A)�;��,I�A)*9&"(9>���® ( a R

v �'5)6'?;�;e�_�,-�-i%7�:-�-��,-��4)�9>���® ( a Z '*)���)*90�1@6�:-i'32�2:"�+�'?9��,;� #"$�w9>���k��"��19��:"$)x"? P9>���k+,"$)59>�1"*2��e"?g�����'*���gi���:+,�GV��,�*�A)�-('?9k9>��'39'?;�;e�1�,-�- R ®t��'*)�+,�h9>'*�_�*�,9�'5)�;h p'32�2�Ul9>���_"$/��$�G'?;�;e�_�,-�-��,-c'5�1�o�e2�2:�,;H�A)G9>���7��)59>�1@h'?-��'?9>��-�9>���1"$/��$��9>���k9>�_�,��'*�_�k9>��'z<*���1-��,;���'*)���)59>�1@j%('z@(+,"$)59>'?�A)j��"*2:�,-�+,"$���_�,->��"$)�;��A)��x9�"(V���'*)�+,���,-�gi���:+,���'z<*�)�"*9�@5�,9�V��,��)W��)�+,"$/�)*9&���1�,; R

T ��"$/��$�k+,"�)�+,����9>/�'?2:2:@9>���t;��,-��:�$)7��'?-�91gt"i���A���,2:�A)��k-�9>'3�*�,- Z ��"*-�-��AV�2:@7"$)���"$��%7"$�_��'?;�;��:9��:"$)�'?2e���A���,2:�A)��-�9>'3�*�,-�'*�_�i�A%(��2:�:�,;GV*@6��'z<��A)��(9>���\+,"$%(��2:�:+�'?9��,;.'?2:�:�$)�%7��)59i)��,91gt"$��r R T ����'?2:�:�$)�%7��)59i)��,91gt"$��r7%7/�-�9L �Q

Ù �

�A)*9&���1+K��'5)��*��9>���w+�'?+,����2:�A)��,-� p�1"�%�)$/�%J���1"$/�-PV�'*)�r*-�LOg��:9>�k%J"$�1�P9>��'*)�91g�"�V�'*)�r5- Z 9>���t������%7/�9>'39��:"$)�-��$�1"?g^�/���+,r52�@ Q,Z '5)�; L ¯5Q +,"*2:24'5��-��j9>���6V�'?-&��+.V�2:"�+Kr5-79�"*�*�,90����� Z �,2:�A%7�A)�'?9��A)��F/�)$/�-��,;H�A)*9&���1<*��)��A)��h�4)�-&9>��/�+,9��:"$)�- RT ��"$/����6)�"*9t;��:-�+�/�-�-&�,;.�A)G| ¯S�!Z 2:"*�*�:+k2:�Ar?�90���i+,"*2:2A'*��-��A)��jV�/5Y����k| Ù&� ;���-&+�/�-�-��,;.�A)x9>���)��,I�9t-��,+,9��:"$)xg��:2:2�V��)��,�,;��,;h9�"7;�"(9>���:- R

ALIGNMENT and MASKING NETWORK

bank address latches

instruction latchOGC

Interleaved Instruction Cache

O

G

C

C G O3 predictions

14 addresses

select logic

tag CA B

A

N O

(e.g. 111)

Branch Address Cache

Predictor

F

Fill Buffer

G L M

Control Logicfill buffer

Address Caclculation Logic

Seco

nd S

tage

Firs

t Sta

ge

NP�:�$/��1�.� u�T ���® ( a '*�����1"$'3+K�x9�"��4)�-&9>��/�+,9��:"$)q #�,9�+,���A)�� R

Ù �

� ��� % � ��� ! ��� �!� � �� � � �

T ���W�4)�-&9>��/�+,9��:"$)C [�,9�+K��%7�,+,��'*)��:->% ���_"$��"*-&�,; V5@ a "$)59�� Z � ��2:2:- Z � ��)��,8,�,- Z yP'?9��,2o| Ù&� �:-j��2:2A/�-�9>�&'?9��,;��A)NP�:�$/��1�2� Rv 9k�:-k+,"$%(��"5-��,;h"? �L ÙzQ '*)W�A)*9����_2���'z<*�,;X�4)�-&9>��/�+,9��:"$)h+�'3+K��� Z L ¯5Q '*)W�A)59����12:��'z<*�,;GV���'*)�+,�.90'*�1�*�,9V�/5Y�����L[® T ® Q,Z L � Q '�%7/�2�9&�4��2:��V���'*)�+,����_�,;���+,9&"$� Z L � Q ->���,+,�A'?2�2:"*�*�:+�'z [9�����9>����® T ® Z '*)�;6L � Q '*)k�A)59����1+,��'*)��*�'*)�;.'?2:�:�$)�%7��)59k)��,9!gt"$�&ro #��'39>/��1�A)��q'�£>� «O«:¢ ¨eª,���5§ � ¦ �i­ ¡ R

C

BA

BA

CBA

COLLAPSING BUFFER

16-way Interleaved

BRANCH TARGET BUFFER

C

LOGICBTB

fetchaddress

targetaddress

MULTIPLE

BRANCH

PREDICTOR

valid instructionsbit vector

intrablockbranch

interblockbranch

2-Way InterleavedInstruction Cache

to decoder

3

"111"

1st: 00111000111110002nd: 0000000111111000

Line Size = 16 InstructionsLine Size = 16 Instructions

INTERCHANGE/MASKING NETWORK

== C

NP����/��1� � uPT ���o�A)�-�9>��/�+,9��:"$)q #�,9&+K�j%7�,+,��'*)��:->%m���1"$��"*-��,;{V5@ a "$)59��i�,9\'?2�| Ù&�!R

T ���c��'*�1;�g�'*�_��:-k-��A%7�:2A'*�k9�"�9>���7+,"$�1�k [�,9�+,�h/�)���9k"3 �9>���79>��'?+,�o+�'?+K���jLO;��,-�+��1�AV��,;G�A) * �,+,9��:"$) � Q,Z V�/�9��'?-o9!gt"W�4%���"$�190'*)*9o;��:-�9��A)�+,9��:"$)�- R NP�A�1-�9 Z 9>���6® T ® 2:"*�*�:+6�:-7+�'*��'*V�2:�j"? �;��,9��,+,9&�4)��F�O�e¥ ¡1¢$�S« �z£ � V���'*)�+,���,-�.->��"$�_9��"$��-kg��:9>���A)G'x+�'?+,���(2:�A)�� R&* �,+,"$)�; Z 'x-��A)��*2:�7 #�,9&+K�W�*"��,-9>���_"$/��$�j91gt"j® T ® '?+,+,�,-�-��,- R ( -kg��:2�2V��o;��,-�+��1�AV��,;HV��,2:"?g Z 90����-k'?2:2:"?g�-� [�,9�+,���A)��qV��,@*"$)�;."�)��9>'*r3��)h����¥[­ ¡,�,« ��£ � V���'*)�+,�x�j'(V���'*)�+,�j"$/�9\"? P9>���+�'?+,����2:�A)�� R�v )(V�"*90�7+�'?-��,- Z 9>����+,"*2:2A'*��-��A)��6V�/5Y����w/�-��,-�+,"$)59>�1"52$�A)5 ["$��%('?9&��"�)7�*��)�����'?9&�,;6V*@79>���\® T ®H2�"5�*�:+9�"6%J���1�*�)�"$)�+,"$)59��:�$/�"$/�-\V�'?-��:+cV�2:"�+Kr5- R

NP�:�$/��_� �k�:2:2A/�-�9>��'?9&�,-���"?g�9>���1�,�i)�"$)�+,"�)*9��:�$/�"�/�-�V�'?-��:+kV�2:"$+,r*-t2A'*V��,2�2:�,; (cZ ® Z '*)�; a '*�1�t [�,9�+,���,; R�T ���

Ù �

[�,9�+K�h'?;�;e�_�,-�- ( '?+,+,�,-�-��,-k90���c�A)59����12:��'z<*�,;B® T ® R T ���(® T ®��A)�;��:+�'?9��,-o9>��'?9\9>�����1�('*�1�791gt"6V���'*)�+,���,-k�A)9>���k+�'?+,���k2:�A)�� Z "$)��'?9t9>���k�A)�-�9>��/�+,9&��"�) �7g��:9>�x90'*�1�*�,9�'?;�;e�1�,-&-i® Z 90���k"*9>������'?9t9>���k�A)�-�90��/�+,9��:"$) Ù �7g��:9>�9>'*�_�*�,9�'?;�;e�_�,-�- a R ®t'?-��,;j"�)79>���:-iV���'*)�+,���4)5 ["$��%�'?9��:"$)x'*)�;qV��&'*)�+K�j���_�,;���+,9&��"�)�-t p�_"$% 9>���k���1�,;��:+,9�"$� Z 9>���® T ® 2:"*�*�:+j�A)�;��:+�'?9��,-7gi���:+K�X�A)�-�9>��/�+,9&��"�)�-c�A)X9>���� #�,9�+,���,;G2:�A)��.'*�1�(<?'?2:�:;�'*)�;D���_"$;e/�+,�,-79>���6)��,I�9cV�'3-��:+V�2:"$+,rj'?;�;e�1�,-&- Z a R

T ���k�4)��:9��A'?2P® T ®�2:"$"$r�/��.���_"$;e/�+,�,-(L Ù�Q '(V��:9�<*�,+,9&"$�t�A)�;��:+�'?9��A)��j9>������1�,;��:+,9��,;W<`'?2:�:;h�4)�-&9>��/�+,9��:"$)�-\�A)9>���k+�'?+,���2:�A)��.LO�A)�-�9>��/�+,9&��"�)�-� l�1"$%�V�'3-��:+cV�2:"$+,r5- ( '*)�;{® Q,Z '*)�;BL ¯*Q 9>���7���1�,;��:+,9��,;h9>'*�1�*�,9�'?;�;e�_�,-�- a "? V�'?-��:+kV�2:"$+,r6® R�T ���� [�,9�+,�6'3;�;e�1�,-�- ( '*)�;690'*�1�*�,9�'?;�;e�_�,-�- a '*�1�\9>����)x/�-��,;x9�"k [�,9�+,�791g�"7)�"$)�+,"$)�-��,+�/�9&��<5�+�'?+,���72��A)��,-\ l�1"$% 9>����A)59����12:��'z<*�,;h�A)�-�9>��/�+,9��:"$)=+�'?+K��� R\T ���:-k+�'*).V��7;�"$)��7"$)�2:@.�� �9>���7+�'?+,���2:�A)��,-c'*�1�o�A);���Y����1��)*9(V�'*)�r5- Rhv )H��'*��'?2:2:�,2tg��:9>�X9>���:-c�A)�-�90��/�+,9��:"$)H+�'?+,���q'3+,+,�,-�- Z 9>���x® T ® �:-6'?+,+,�,-�-&�,;D'?��'?�A) Z /�-&�4)��9>���k9>'5�1�*�,9�'?;�;e�1�,-�- a R�T ���:-�-��,+,"$)�; Z -&���1�A'?2:��8,�,;h2:"�"$r$/���;��,9�����%7�A)��,-\gi���:+K�x�A)�-�90��/�+,9��:"$)�-k'*�1�k<`'32��:;W�4)�9>���-��,+,"$)�;W+�'?+,���k2��A)��('*)�;.���1"�;e/�+,�,-\9>���c)��,I�9t [�,9�+K�j'3;�;e�1�,-�-cLO90������1�,;��:+,9��,;h->/�+,+,�,-�-�"$��"? �V�'3-��:+cV�2:"$+,r a Q,R

� ����)�9>���W9!gt"H+�'?+,���.2:�A)��,-=��'z<*�hV��,��)��_��'?;F l�1"$% 9>���h+�'?+,��� Z 9>���,@���'?-&-j9>���1"$/��$��%('?->r5�A)���'*)�;�A)*9&���1+K��'5)��*�62:"*�5��+j'*)�;H9>���x+,"*2:24'5��-��A)��BV�/5Y����qL#gi���:+K�H%7���1�*�,-o9>���x�4)�-&9>��/�+,9��:"$)�- QSZ '?2:2�+,"$)59>�1"52�2:�,;�V5@GV���9<*�,+,9�"��1-���1"�;e/�+,�,;DV5@h9>���691gt"j��'?-�-��,-o9>���1"$/��$�=9>���6® T ® R�( #9&���k9>���:--&9���� Z 9>���j���1"$�����12:@G"$�1;����_�,;B'*)�;%7���1�5�,;j�4)�-&9>��/�+,9��:"$)�-k'*�1�k+�'*��90/��1�,;.�A)j90���k�4)�-&9>��/�+,9��:"$)�24'39�+K���,-\9�"(V��� #�,;W9�"79>���k;��,+,"�;����1- R

T ����-o-�+,����%7�(��'?--��,<5����'?2�;���-0'?;�<`'*)59>'?�5�,- R NP�A�1-�9 Z 9>���o [�,9�+,�h2:�4)��j'*)�;h->/�+,+,�,-�-&"$�k2:�A)��q%7/�-�9�_�,-��:;��(�A);���Y����1��)*97+�'?+,���6V�'*)�r5- R ®t'*)�rW+,"$)5�e�:+,9�-7+�'*)HV��j�1�,;e/�+,�,;FV*@H'?;�;��A)��=%J"$�1�6V�'*)�r5- Z V�/�990����-(�1�,^�/��A�1�,-('%7"$�_�+,"$%(��2:�:+�'?9��,; Z ���:�$�����k2A'?9���)�+,@W�A)*9����_+K��'*)��5�c-&g��:9�+K� R * �,+,"$)�; Z 9>���:-k-�+,����%7�7;�"��,-)�"*9i-&+�'?2:�(gt�,2�2� ["$��A)*9&����V�2:"$+,rGV���'*)�+,���,- �P-0/�����"$�19&�4)��h'?;�;��:9��:"$)�'?2t�A)*9&����V�2:"$+,rGV���'*)�+,���,-c�_�,^]/��A�1�,-('?-7%('*)5@{'?;�;��:9��:"$)�'?2�® T ®'?+,+,�,-�-&�,- Z '?2:2w-����1�A'?2:�:8,�,; RqT ���4�_; Z 90���6® T ®�2:"*�5��+j�1�,^�/��A�1�,-c'�-����1�A'?2P+,��'?�A)G"? +/F'?;�;e�1�,-�-o+,"$%(��'*�&'?9�"$�1-\9�";��,9��,+,9��A)59>��'*V�2:"�+KrjV��&'*)�+K���,- Z g\�����1� /W�:-�9>���)�/�%7V����t"? �® T ®�V�'*)�r5- R�� "*-�9t-����1�:"$/�-&2�@ Z ��"`gt�,<*��� Z �:-\9>��'?99>���:-P [�,9�+,�(%7�,+,��'*)��:->% '?;�;�-�'\-&����)��©�e+�'5)*9�'*%7"�/�)*9P"? 2:"*�*�:+�V�"*9>�(V��0 #"��1�i'*)�;6'` #9�����90�����A)�-�9>��/�+,9��:"$)�+�'?+,��� RT �����A)�-�90��/�+,9��:"$)J #�,9�+,�(���A���,2:�A)���:-t2:�Ar?�,2:@69�"��'z<*��9>���1�,��-�90'?�*�,- Z '?-P;������:+,9��,;j�A)�NP�:�$/��1� ~�u L ÙzQ �4)��:9��A'?2�® T ®2:"$"�r$/��G'5)�;=® T ®�2:"*�*�:+ Z L ¯*Q �A)�-�9>��/�+,9&��"�)h+�'?+,���J'3+,+,�,-�-'*)�;h-��,+,"$)�;G® T ®�2�"�"$r�/�� Z '*)�;�L � Q �A)59����1+,��'*)��*�-�g��:9�+,� Z %('?-0r*�A)�� Z '*)�;7+,"*2:2A'*��-��A)��7V�/5Y���� R ®w�,+�'*/�-&��90����® T ®X�:-�/�-��,;7�A)(V�"*90�k9>���w���1-�9P'*)�;7-��,+,"$)�;7-�90'?�*�,- Z'x)��,g� [�,9�+,�.+,@�+,2:�7+�'*)�)�"*9kV��7�A)���9&�4'39��,;B/�)59��:2�9>���79>���A�1;h-�90'?�*�/�)�2:�,-�-k9>���(® T ®��:-k;e/�'?2�U!��"��19��,;G'*)�;h9>���® T ®�2:"*�*�:+�:-\;e/���2��:+�'?9&�,; R

T ���i+,"*2:2A'*��-��A)��6V�/5Y����w9>'*r3�,-�"$)�2:@j'k-��A)��*2:�-&9>'?�*���� ��A%(��2:��%7��)59��,;h'?-�'7V�/�-1U!V�'?-&�,;j+��1"*-�->V�'5��| Ù&�!R , "*9��9>��'?979>���x+,"*2:2A'*��-��A)��FV�/5Y����o�:-(;�������)�;���)*9x"$)X+,"$)*90�1"*2��A)5 ["$��%('39��:"$)h l�1"$% 9>���x-��,+,"$)�;�® T ® 2:"�"$r$/�� Z -�"+,"$)59>�1"*2� p'*)�"�/�9�2:"*�*�:+o p�1"�% 9>���90���4�_;.-�9>'3�*�+�'*)�)�"59iV��(V��1"$/����*9i/��W�A)59�"(9>���o-��,+,"$)�;h-�9>'?�5����� R � R 9>�����1�o��-9>��/�2:@.'o9>���A�1;W-�9>'?�*� R

ICACHE

BTB 2BTB 1 CB

NP�:�$/��1� ~�u * 90'?�*�,-��A)j90��� a ®�'*�����1"$'?+,� R

Ù �

� �k� �m��� �t� ���k� � �P� ��o7����� ���

� ��� 2��� "$��� � ����� ���'��

� /��P-&�4%7/�2A'?9��:"$)j%J"$;��,2� #"*2:2:"?g�-�90���iV�'?-��:+\-�9>��/�+,9>/��_��-0��"`g\)7�A)(NP�:�$/��1� Ù �J'� #�,9&+K�7��)��5�4)��k'*)�;6'5)7�,I$�,+�/�9&���)��*�A)��;��,+,"�/���2��,;h<��A'7�A)�-�9>��/�+,9��:"$)��:-�->/��cV�/5Y����1- R ��'*�1�:"$/�-t [�,9�+,�x��)��*�A)��,-��x9>��'?+,�k+�'?+,��� Z V���'5)�+K�j'?;�;e�_�,-�-+�'?+,��� Z '*)�;G+,"*2:2A'*��-��A)��BV�/5Y����\�G'*�1�6%J"$;��,2:�,;H�4)X;��,9>'?�:2 R.T ���x���1"$+,�,-&-�"$�k�,I��,+�/�9��:"$)F��'*�_9k"? �9>���6%7"�;��,2�:-6+,"�)�-�9>��'?�A)��,;�"$)�2:@�V5@B9>�&/��.;e'?9>'=;�������)�;���)�+,�,- R�� ­ ¢ ª0ªK¦�¬7­{¦�� « �O¬7��¥[­0�G¤ ¢*¡ �*� ¢*¡ ­ ¡ ­,ª,�*¦ ¡ £0­,ª ¢ � ��O��ª,¥ ¡ ¦�£�¥[�O�*��ªx����¥O¤$­.�O��ª,¥ ¡ ¦�£�¥[�O�*� � ¦��i­ ¡ ªq¥O¤ ¢ ¥k¤ ¢�� ­.¥O¤�­�� ¡ � ¢ ¥ ¢B¢��z¢ � «�¢��,« ­.¬ ¢ �G� ª0ªK¦�­ � T ���:-(�:-(;�"$)��j9�"��2A'?+,��'?-P%c/�+,�o;���%('*)�;o"$)o9>���P [�,9�+,�/�)��:9�'?-P'*)*@k�A%(��2:��%7��)59>'?9&��"�)7g��:2:2��,<*����'3+K���:�,<*� Z %('5r*�A)��k�A)�-�9>��/�+,9&��"�) [�,9�+K��9>���i������ ["$��%('*)�+,�kV�"59�9�2:��)��,+KrJgi����)��,<*������"*-�-��AV�2:� R�v )(�0Y��,+,9 Z /�)�2:�4%J��9&�,;{�1�,�*�:-�9&�����_��)�'*%7�A)��('*)�;( l/�2:2;�@�)�'*%7�:+G�A)�-�9>��/�+,9&��"�)��:-�->/��B'*�_�='3-�->/�%7�,; R � "$'?;�-.'5)�;�-�9�"$�_�,-q'*�_�='3-�->/�%7�,;�9�"���'z<*�W"$��'?+,2:�B'?;�;e�_�,-�-;��:->'*%7V��:�$/�'?9��:"$){�q2:"$'?;�-'5)�;{-&9�"$�1�,-\g�'?�:9� ["$�\���1�,<$�:"$/�-o-�9�"$�_�,-i"$)�2:@W�© t9>�����1�7�:-c'�9>��/��('?;�;e�1�,-&-i+,"$)5�e�:+,9 R( 2�-&" Z 9>���(;e'?9>'x+�'3+K���6'32�g�'z@�-����9&- RjT ���("$)�2:@G��'*�1;�g�'*�1�72:�A%7�:9>'?9��:"$)�-��4%���"*-��,;F'*�1�79>���x%('?I��4%7/�% -��:8,�"? P9>���7�A)�-�9>��/�+,9��:"$)WV�/5Y����i'*)�;W9>���;��,���1�,�7"? -0/������1-�+�'324'5�\;���-0��'?9�+,� R�v )h'?2:2�-&�4%7/�2A'?9��:"$)�- Z 9>���-��:8,�o"? �9>����A)�-�9>��/�+,9&��"�)�V�/5Y����(�:- ¯�� � �h/�-��0 l/�2\�4)�-&9>��/�+,9��:"$)�-j'*)�;�90���.%('?I��4%7/�% [�,9�+,���?;��:->��'?9�+,��V�'5)�;�g��:;�9>����- Ù ��A)�-�9>��/�+,9&��"�)�-�������+,@�+,2:� R�v )j->/�%(%�'*�1@ Z 9>���'*%7"�/�)*9�"3 v�� yF�,I���2:"*�:9��,;h��-\2:�A%7�:9��,;GV*@��o l'?+,9�"$�1- u

� ¬ ¢ �`�O¬c¦�¬ � ­z¥[£,¤��e�5�Aª�¨ ¢ ¥[£S¤ ¡1¢ ¥[­ ������e£ �?£ « ­��

� ¬ ¢ �`�O¬c¦�¬ ªK���K­o� � �O��ª,¥ ¡ ¦$£z¥[���*�h�P�O�e�*�5�� ����������

� ¥ ¡ ¦�­7� ¢ ¥ ¢ �5­1¨]­z�e�*­z�e£0­,ªi�O�h¥O¤$­�¨ ¡ ��§ ¡!¢ ¬

� �0¨]­ ¡!¢ ¥[���*� «:¢ ¥[­z�e£��O­,ª

� ¨]­ ¡ � � ¡ ¬ ¢ ��£>­7� � ¥O¤�­ � ­z¥[£,¤j­��5§$�O�e­

v 9���-\9>���k2A'?-�9� p'?+,9&"$�t9>��'?9tgt�'*�1�k�A)59����1�,-�9&�,;.�A).'*)�;jg\����+,�jg���2:2�<`'*�_@qV��,9!gt�,��)x-��A%7/�2A'?9��:"$)�- RT ���(�A)�-�9>��/�+,9��:"$)H���A���,2:�A)��W��-7+,"$%���"*-��,;H"? +�{����'3-��,- u #�,9�+,� Z ;��:->��'?9�+,� Z ��-&->/�� Z '*)�;G�,I��,+�/�9��:"$) RhT ���

2A'?9���)�+,@j"? P9>���\ [�,9�+,�j����'?-���:-�<?'*�1�:�,;G'?+,+,"$�1;��A)��(9&"(�A%(��2:��%7��)*90'?9��:"$) Z '*)�;.9>���k;��:->��'39�+K��2A'?9���)�+,@j�:-t�eI��,;'?9 Ù +,@$+,2:� R.v �'32�2w"$�����&'*)�;�-('*�1�6'z<`'3��2A'*V�2:�j'?9"��\�4%�%7�,;��A'?9��,2:@D'` #9�����;��:->��'?9�+,� Z �4)�-&9>��/�+,9��:"$)X�:-�->/��x9>'*r?�,-"$)�2:@ Ù +,@�+,2���� "*9>�����1g���-&�c�:-�-0/��c�:-k;��,2A'z@*�,;G/�)*9&��2P"�������'*)�;�-'5���1�:<*� R ®w�,+�'*/�-&�c"3 �/�)�2��A%7�:9��,;F�1�,-�"�/��1+,�,-'*)�;/�)�2:�A%7�:9��,;��1�,�*�:-�9����k�_��)�'*%7�A)�� Z �:-�-0/��6)��,<*���\-�9>'32�2:-o;e/��(9�"j-�9>�&/�+,9>/���'?2�"$�k�1�,�*�:-�9&��� � ( ��� � (�� ��'?8�'*�_;�- R( #9������:-�->/�� Z �,I��,+�/�9��:"$)�9>'*r?�,-t'k+,���19>'3�4)x)�/�%cV����w"? �+,@$+,2:�,-iV�'?-&�,;6"$)J9>���i"�������'?9&��"�) R � ������'?9��:"$)x2A'?9&��)�+,���,-'*�1��->��"?gi)7�A) T '*V�2:� ¯�RPT ���i%7�A)��A%7/�% ���A���,2��A)��72A'?9���)�+,@o l�1"$%  [�,9�+,�79�"o+,"$%(��2:�,9��:"$)���-w9>�����1�0 ["$�1�+�o+,@$+,2:�,- Z ["$�i'J [�,9�+K�W/�)��:92A'?9���)�+,@W"? Ù +,@�+,2:� Z )�"j;e'?9>'�;�������)�;���)�+,�x-�9>'?2:2:- Z '*)�;h' Ù +,@�+,2���"$������'39��:"$) RkT ���(�1�,9��A�1�-�9>'3�*�$LO- Q "? �9>���\���4���,2:�4)��('*�_�i���:;�;���)x;e/��i9�"7/�)�2:�4%J��9&�,;{�1�,->/�2:9w ["$�1g�'*�1;��A)��\ l�1"$% 90�����,I$�,+�/�9&�k-�9>'?�*�t9�"o9>����:-�->/��o-�9>'?�*� R

� ��� � � ����� ��! �

* �:Ij�A)*9��,�5����'*)�;.-&��Ix�e"�'?9��A)��6��"5�4)59iV���)�+K��%('5��r*-� l�1"$% 9>��� * y � a -0/���9&�gt���1�/�-��,;j9�"��,<`'?2A/�'?9��o9>��������!U ["$��%('*)�+,�t"? 9>����<?'*�1�:"$/�-P [�,9�+,�7%7�,+K��'5)���-0%7- RPT ���iV���)�+K��%('5��r*-wgt���1�t+,"$%(���:2:�,;6"$)�' * /�) * y ( � a -�90'?9��:"$)Ù � ��� � /�-��A)���d��*+,+JU � �.Ul-&9>'?9��:+�U[ #-�+,���,;e/�2:�0Ul�A)�->)�-(U[ [-�+,���,;e/�2:�0Ul�4)�-0)�- ¯ fX #"$���A)*9��,�5���cV���)�+K��%�'*��r5-J'5)�; d1 ���U � �7U!®w-�9>'39��:+kU[ l'?-�9wUl+,� � ~ fo ["$�w�e"$'39��A)��6��"*�A)59�V���)�+K��%�'*��r5- R* y ( � a �A)�-�90��/�+,9��:"$)j90��'?+,�,-�gt���1�k�*��)����&'?9��,;/�-��A)��6¥O¤�­ ��¦$�O£ �"!t¡ � ��« ­ ¡t¢ ��� � ¡1¢ £0­ ¡ L$#ky T�Q | Ù � � '*)�;(9>����)� [�,;(�A)*9&"9>����90��'?+,�0Ul;e�1�:<*��)(���_"$+,�,-�-&"$��-��A%7/�24'`U9�"$� R T '*V�2:� �J->��"?g�-t�4)���/�9&-� ["$�w��'?+,�x"? 90���V���)�+,��%('*��r5- R ®w��)�+,��%('*��r5-�gt���1�k-��A%7/�2A'?9��,;j ["$� Ù ��� %7�:2�2:�:"$)�A)�-�9>��/�+,9&��"�)�- R

T ���� ["$�1��%7"5-�9����1"�V�2���% g��:9>��9>��'?+,�0Ul;e�_��<5��)x-��A%c/�2A'?9&��"�)j�:-�9>��'?9w�A)�+,"$���1�,+,9�-0���,+�/�2A'?9��:<*�o�,I$�,+�/�9��:"$)�+�'*)5U)�"*9�V��k-&�4%7/�2A'?9��,; Z -��A)�+,�9>��'3+,�,-��_�����1�,-���)59�"�)�2�@x9>���k+,"$�&�1�,+,9���'?9>��"? ��,I��,+�/�9��:"$) R�T ����-\%('z@c2:��'?;j9&"c-&"$%7�

Ù �

� y � � (�T�v �), ��(�T �, a v!�* L#+,@$+,2:�,- Qv )59��,�*��� (k��$ � ������'?9��:"$)�- Ù

� "�'?;�- ¯��* 9�"$�1�,- Ù��

a "�)*9>�_"*2 T ��'5)�-1 #��� v )�-�9>��/�+,9��:"$)�- ÙN�y ( ;�;e� * /�V�� � /�2:9>� a "$)*< �

N�y � ��< ÙoÙ � Ù �N�y * ^��19 Ù �5��� ¯

'?2:2�"*9>�����wN�yC"$��- Ù

� Â��op-t4�Kt4v~p-�zy�t,y{�;nxlo�sp-uh�x�oqsp4rzrA�xy{�op-t,�6t,v�p��zy;uht4t4p,rsr��s�op��_uj��u%tAujt��op{��RÂ��opRt,�6t,v�p±�sy�t4y��;nolo�zpRuh�o�oqzp4rsrN���s�xpRqsp4rz��yh���z�opR��qz}��zpR}~rF�o}~�o�op4���ªrz�sy{qzpR�_uj��u©tAuj� uhv~��uN�6r%�HpR�K�6nHuhrsrzp4�¸�zy�op4nHp4�o�xp4�K��v~yKuh�or����op4�RuNµ{uh}~vwuh�xv�p��T '*V�2:� ¯�u � ������'39��:"$)��,I$�,+�/�9��:"$)�2A'?9���)�+,�:�,- R , "59��j9>��'?9� #"��72:"$'?;�-j'*)�;�-�9&"$�1�,- Z ;e'?9>'h+�'3+K���h%7�:-�-��,-j'*�1�)�"*9\-��A%7/�24'39��,; R NP2:"$'39��A)��.��"*�A)59k24'39���)�+,�:�,-k ["$��90���J%J"*-�9\+,"$%(%7"$)�"$�����&'?9��:"$)�-'*�1�7-��A%7�:2A'*��9�"690��� �Gv y *� Ù ������� | Ù � �!R

�����1"�� R Ne"$���,I�'*%(��2:� Z +�'?+,���i-�90��/�+,9>/��1�,-w;�"c)�"*9w-��,�i90���i��"*2:2A/�9��:"$)��0Y��,+,9&-�+�'*/�-��,;jV5@ [�,9�+,���A)��J'5)�;(�,I$�,+�/�9_U�A)��j�A)�-�9>��/�+,9��:"$)�-o;�"?gi)j9>���ogi�1"$)��j��'?9>� R N /��19>����� Z "$/����,I$�,+�/�9��:"$)=��)��*�A)��(;�"$�,-)�"59i-��,�(�1�,-&"$/��1+,�c/�-0'?�*�;e/��79�"(�A)�+,"$���_�,+,9�2:@.->���,+�/�24'39��,;h�4)�-&9>��/�+,9��:"$)�-6L[��"?gt�,<*��� Z V��,+�'*/�-��o"? �/�)�2:�A%7�:9��,;B�1�,-�"�/��1+,�c'?-&->/�%(��9��:"$)�-\�A)9>���t�,I��,+�/�9��:"$)6%J"$;��,2 Z 90����-w2A'?9�9���� l'?+,9�"$��g���2:2 )�"*9����1"�;e/�+,�i������ ["$��%�'*)�+,��%c/�+,�7;���Y����1��)59� p�1"�% -��A%c/�2A'?9&��"�)"? P�A)�+,"$���1�,+,9�-0���,+�/�2A'?9��:"$) Q,R

® �, a � � ( �� �4)���/�9 ® �', a � � ( �� �A)���/�9�,^�)*9�"59�9 �4)59 ���1� � R �,^]) ;�"$;e/�+ ;�"�;e/�+,�A)�,->���1�,-&-�" V�+�' R �A) 9�"$%7+�'?9&< LO�A)59�����)�'?2 Q+,"$%(���_�,-�- �4) )�'?->'�� LO�A)59�����)�'?2 Q�*+,+ -�9>%o9 R � %7;�2 n!;e� ¯ %7;�2 n ¯�R ;e'?9I�2��:->� 2���Ul�A)���/�9 R 2:->� -�gi% ¯ ��� -�g\% ¯ ��� R �4)-�+ 2�"�'?;e' Ù ->/ ¯ +,"$� ->/ ¯ +,"$� R �A)

T '*V�2:� � u ®w��)�+K��%�'*��r5-i'*)�;j9>���,�A���4)���/�9&- R

� ��� � �� ���&� ! �'"$� � � ��� "

Ne"���%7��'?->/��_�4)�������� ["$��%('*)�+,�wgt��/�-����A)�-�9>�&/�+,9��:"$)�-P+,"$%(��2:�,9��,;(������+,@�+,2:�L v y a Q,Z gi���:+,�k�:-�'t;��A�1�,+,9�%7��'3->/��1�"? ������ ["$��%('*)�+,�'5)�;j��-k'?2A%7"*-&9�+,���_9>'?�A)�2:@j9>���%7��'?->/��_�i9>��'39�+,"$/�)59�-�%7"*-�9 RPT �����'5��%7"$)��:+%7��'*)x�:-i/�-&�,;9�"6'z<*���&'?�*�\9>��������� ["$��%�'*)�+,�k"? �V���)�+,��%('*��r5- R

Ù �

� � � � �_�

T '*V�2:� �o->/�%(%('*�_��8,�,-t9>����9>��'?+,��+�'3+K���(L T a QSZ +,"*2:2A'*��-��A)��6V�/5Y����kL a ® Q,Z '5)�;6V���'*)�+,�6'3;�;e�1�,-�-�+�'3+K���(L[® ( a Q [�,9�+K�X/�)���97��'*��'*%J�,9����1-/�-��,;G�A)H'?2:2P�,I]�����1�A%7��)59�- Rjv )h90���(-��,+,9��:"$)�-ogi���:+K�= #"52�2:"?g Z �1�,->/�2:9�-k ["$�\9>����9>���1�,����:�$�jV�'*)�;�g��:;�9>�x�A%(��2:��%7��)59>'?9&��"�)�-�'*�_�i+,"$%���'*�1�,; R yw�1�,<$�:"$/�-&2�@ Z 9>���,-��k%7�,9>��"�;�-�+,"$/�2:;.)�"*9�V��k+,"$%���'*�1�,;V��,+�'5/�-���9>���w-�9>/�;��:�,-P/�-��,;;���Y����1��)59�-��A%7/�2A'?9��:"$)���)*<��A�1"$)�%7��)59�-�LO�A)�-�9>��/�+,9��:"$)�-��,9�- Z V���)�+,��%('*�&r*- Z +,"$%(���:2:���1- Z�����! #"$�&%('*)�+,�j%7�,9>�1�:+,- Q '*)�;H;���Y����_��)*9(��'*�1;�g�'*�_�(+,"$)5�e�$/���'39��:"$)�-.LO�,I$�,+�/�9&��"�)F%7"$;��,2 Z �A)�-�90��/�+,9��:"$)H+�'?+,��� ZV���'*)�+,�j���1�,;��:+,9�"$� Z �,9�+ R�Q,R

( -i'xV�'?-��o+�'?-��\ ["$��+,"�%(��'*�1�:-�"$) Z �1�,->/�2:9�-k'*�1�c'32�-&"6���1�,-���)59��,;W #"��t+,"$)5<*��)*9&��"�)�'?2��A)�-�9>��/�+,9&��"�)j [�,9�+,���A)�� RT ���o+,"$�1�k [�,9�+,�./�)��:9k"? �9>���o9>��'?+,�k+�'3+K���.LO;��,-�+��_�4V��,;h�4) * �,+,9��:"$) ¯�RÔÙ�Q �:-�/�-&�,;='3-i9>���7V�'?-��o+�'?-�� Rt� �og��:2�2+�'?2:2�9>���cV�'?-&�+�'?-��Wd�-��,^�/���)*9&�4'32�fGL * � # Q,Z -&�4)�+,�7"$)�2:@j-��,^�/���)59��A'?2��A)�-�90��/�+,9��:"$)�-k+�'*)WV��o #�,9&+K���,;W�4)h'7�5��<5��)+,@�+,2�� RwT "k;���%7"�)�-�9>��'?9&��9>���t�0Y��,+,9P"? �V��&'*)�+K�o9>���_"$/��$����/�9 Z 91gt"i<?'*�1�A'?9��:"$)�-P"3 * � #�'*�_��-&�4%7/�2A'?9��,; u * � # RwÙ�:-2:�A%7�:9��,;H9�"6"�)��6V�'?-��:+6V�2:"�+Krh�����\+,@�+,2:� Z '*)�; * � # R �x+�'*){ #�,9�+,�h/��h9�"x9>���1�,�7+,"$)59��:�$/�"$/�-7V�'?-��:+6V�2:"$+,r5- R* �A%7/�24'39��:"$)h��'*��'*%7�,9&���1-w #"$� * � #�'5�1�k9>���k->'*%J�'?-�9>��"*-&�\ #"$� T a �4) T '*V�2:�.� Z V�/�9\g��:9>�x9>���o9>��'?+,�k+�'?+,���)�"*9i���_�,-���)*97L['*)�; Ù "$� �(V���'*)�+,�j���1�,;��:+,9��:"$)�-������+,@$+,2:� Q,R

v , *�T � $ a T�v �), * $ y�y ��� � � a � (),\v * �*�v � $\��(�T�v��), y ( � ( � ��T � � T a a ® ® ( a

�4)�-&9>��/�+,9��:"$)q #�,9�+,�x2:�A%7�:9 Ù �7�A)�-�90��/�+,9��:"$)�-k������+,@$+,2:�®��� Ù �6V��:9�-

� /�2:9��A��2:�J®t��'5)�+K� yw� T ¯����i¯ U!V���9\+,"$/�)59����1-cL � �k® -�9�"$��'3�*� Qyw�1�,;��:+,9�"$� �����1�,;e�?+,@�+,2:� /��x9�"��(���1�,;��:+,9��:"$)�-\��'?+K��+,@$+,2:�

-��:8,� Ù�¯ � �k®'?-&-�"$+,�A'?9&��<��:91@ ;��A�1�,+,9k%('*�����,;

v )�-�9>��/�+,9��:"$) a '?+,��� 2:�4)��o-��:8,� Ù �o�A)�-�9>��/�+,9��:"$)�- Ù �7�A)�-�90��/�+,9��:"$)�- ���4)�-&9>��/�+,9��:"$)�-�4)59����12:��'z<*�\ l'?+,9�"$� ¯ Ulg�'z@ ¯ Ulg�'�@ �zUlg�'�@

%7�:-�-�����)�'?2:91@ ٠� +,@�+,2:�,-�t�,9>/���) ( ;�;e�_�,-�- * 9>'?+,r ;�����9>� /�)�2��A%7�:9��,;

-��:8,� Ù �*¯ �c��)59>�1�:�,- Ù �5¯ �7��)*9>�_���,-®t��'*)�+,� T '*�1�*�,9i®t/5Y���� '?-&-�"$+,�A'?9&��<��:91@ ;��A�1�,+,9k%('*�����,; ;��A�1�,+,9k%('*�����,; )��5'

�4)59����12:��'z<*�\ l'?+,9�"$� ٠�zUlg�'z@ ٠�`Ulg�'z@-��:8,� ���7��)59>�1�:�,-

T ��'?+,� a '3+K��� '?-&-�"$+,�A'?9&��<��:91@ ;��A�1�,+,9k%('*�����,; )��*'2:�4)��o-��:8,� ٠�o�A)�-�9>��/�+,9��:"$)�-

� +,"$)�+�/����1��)59t�e2:2:- Ù-��:8,� Ù �5¯ �7��)*9>�_���,-

®t��'*)�+,� ( ;�;e�_�,-�- a '?+K��� '?-&-�"$+,�A'?9&��<��:91@ )��*' ;��A�1�,+,9k%('*�����,;� +,"$)�+�/����1��)59t�e2:2:- Ù

T '*V�2:�.� u Ne�,9&+K�j/�)��:9\+,"$)5�e�$/���'?9&��"�)�- R

T ���c-&�4%7/�2A'?9�"��1-"$)�2:@h;���Y����\�4)= [�,9�+K�h/�)��:91Ul->���,+,���e+.��'*�1;�g�'*�1� R ®w�,+�'*/�-��("? t9>���7 l/�)�;e'*%7��)59>'?2�;���Y����!U��)�+,�,-�V��,91gt�,��)o [�,9�+K��/�)���9&- Z ��9w�:-�;�� 6+�/�2:9t9�"7%('?�A)*90'?�A)('*)('*�_��'kV�/�;��*�,9t"`<5���P'?2:2e9>����-&+K����%7�,- R T �����1�0 #"��1� Z'*�1��'\;���Y����1��)�+,�,-�%7/�-�9�'?2:g�'z@$-�V��ir?����9P�A)6%J�4)�;xgi����)7+,"�%(��'*�1�A)��k9>���i�_�,->/�2:9�- R �����1�tgt��+,"$%(%7��)59�V��1�:�0�e@'*V�"$/�9i'*�1��'J+,"$%(��'*�1�:-�"�)�- u

� T ���(9>��'3+,�(+�'?+,���q/�-��,;F'?;�;�-7/�)�;���� �hr�® "? i'?;�;��:9��:"$)�'?2 * � ( � -�9&"$��'?�*�79�"W9>���(+,"$�_�7 #�,9&+K�H/�)��:9 Z

Ù�~

* � # R � RPT ��� * � ( � �:-k'?-�->/�%J�,;j9�"6��'z<*� Ù �1��'3;.��"$�19\'*)�; Ù gi�1�:9����"$�19 R� * /��������e+,�A'?2:2:@ Z 90��� a ®X [�,9�+K��/�)���9w;���Y����_-� l�1"$% * � #�"$)�2:@(�A)�;e'?9>'*��'?90�c'` #9�����90�����A)�-�9>��/�+,9��:"$)�+�'?+,��� R��"?gt�,<*��� Z 9>���\® T ®F%c/�-&9�V��\;e/�'?2�U!��"$�19&�,;69�"k-0/�����"$�19t���A���,2:�A)���)��690��� a ®X [�,9�+K��/�)���9 R�v )790����gt"$�1-�9+�'?-��{L[�_����2��:+�'?9&�4)��X+,�,2�2:- QSZ '�;e/�'?2�U!��"$�_9��,;�® T ® ��'?-91g��:+,�x9>���6'*�_��' RjT ���6® T ®�/�-&�,;B9>���_"$/��$��"$/�99>'*r?�,-t/��6'*V�"$/�9 �7r�®F"? * � ( � -&9�"$��'?�5���*�� �gt��'3-�->/�%7� Ù5R �k9�" ¯ 9��A%7�,-t9>��'?9P ["$��;e/�'?2�U!��"$�19&�4)�� Z '?;�;'*)�"*9>�����-� R �J9�"2�(r$®�"? P-�9�"���'?�*�� #"��t9>��� a ®C [�,9�+K�j/�)��:9 R

� ( 2A'*�1�*�x® ( a L Ù �*¯ �x��)59>�1�:�,- Q �:-c/�-��,;X�4)X9>���7�,I������1�A%7��)59�-(V��,+�'*/�-&�(9>���6® ( a %7/�-�9������ #"���%m9>��� p/�)�+,9��:"$)�-t"? PV�"*9>��9>��� T a '*)�;j® T ® R�T ���k® T ®F�:-i'7��'*�_9��:+�/�24'5�12:@6�A%(��"$�19>'*)59��1�,-�"$/��_+,��V��,+�'*/�-��k�:9�*�,9�-i%7"5-�9�"? P9>���cV�'3-�������� ["$��%�'*)�+,� R-( �_"$/��$�.'5�1��'7�,-�9��A%('39��\ #"��t9>���c® ( a �:-�'5V�"$/�9 � � r$® L � ���V���9&-i��������)*90�1@{| ¯,�[Q,R

T ���q�1�,-0/�2�9&-6'*�1�x->��2:�:9(�A)*9�"X9!gt"W-��,9�- RGT �������1-�97-��,9x'?-�->/�%7�,-('?2:2w [�,9�+K�H/�)��:9�-6��'z<*�j'W24'39���)�+,@B"3 Ù+,@�+,2�� Z �4)X"$�1;�����9�"j;���%7"$)�-&9>��'?9�����'?+K�X%7�,+K��'5)���-0% � -('*V��:2:��91@G9&".;��,2:�:<*���7V�'*)�;�g��:;�9>�F�����! #"$�&%('*)�+,� RjT ���-��,+,"$)�;h-��,9\->��"?g�-\gi��'?9k��'*������)�-ogi����)W9>����,I�9>��'x���A���(-&9>'?�*�,-\�A%(��2:���,;FV5@ a ® '5)�;=® ( a '*�1�7'?+,9>/�'?2:2:@-��A%7/�2A'?9��,; R

� ��� ��� � ��� ����% � " � � � � "���� !�����'" �T ���7���_-�9-��,9k"3 ��_�,->/�2:9�- Z�T '*V�2:���.'*)�;G+,"����1�,->��"$)�;��A)��.�$��'5����-�A)GNP�:�$/��_�,- Ù � '*)�; ÙoÙ*Z '3-�->/�%7�,-'q #�,9�+,�/�)��:9k2A'?9���)�+,@."3 Ù +,@$+,2:�o ["$�i'32�2�-�+,����%7�,- R�T ���:-k�:-k;�"$)��o9�"6�:-�"524'39��9>���7'*V��:2:��91@h"? P9>���k [�,9�+,�.%7�,+,��'*)��:->%7-9�"(-0/�����2�@j�A)�-�90��/�+,9��:"$).V�'5)�;�g��:;�9>� R

®w��)�+,��%('*��r * � # RÔÙ * � # R � ® ( a a ® T a�,^�)*9&"*9�9 � R � � � R � � � R�~ � � RwÙ � � R©¯ ��,->���1�,-�-&" � RwÙ � � RwÙ � � R � ¯ � R � Ù � R©¯��

I$2:�:->� ¯�R ��� � RwÙ � � R�¯*~ � R � � � R ����*+,+ ¯�RwÙ � ¯�R � ¯ ¯�R�¯ � ¯�R � � ¯�R � �-�+ � RwÙ � � R ��� � RÔÙ � � R ��� � R � �

+,"$%(���1�,-&- � R©¯ � � R � ¯ � R � ¯ � R �*¯ � RwÙ �;�"$;e/�+ � R©¯5¯ � R ��� � RÔÙ � � R � � � R � �

9�"$%7+�'?9&< Ù ��R � ÙoÙ*R©~ Ù�¯�R � Ù � R©~ Ù � R©¯)�'?->'�� � R � Ù � R ��� � R � ¯ � R ��� Ù ��R �

%7;�2 n!;e� ¯ � R � � � R � � � R �*~ � R©¯ � � R ���-�gi% ¯ ��� � R ��� ~�R©¯ � ~�RÔÙ�~ ~�R ��� ~�R � �->/ ¯ +,"�� � R ��� � R ��� � R � ¯ � R©~�� � R �*¯

T '*V�2:� � u y����� ["$��%�'*)�+,�k"? P�4)�-&9>��/�+,9��:"$)q #�,9�+,�j%7�,+,��'*)��:->%7- Z '?-�->/�%7�A)��j/�)��:9� [�,9�+,�x24'39���)�+,@x #"���'32�2 R

T �������1-�9�"$V�-&���1<`'?9&��"�)k�:-�90��'?9 * � # R �t�5��<5�,- 't-0/�V�-�9>'*)59��A'?2$������ #"���%('*)�+,��V�"$"*-&9�"?<*��� * � # RÔÙ*R�T ���P����'*����A)GNP�:�$/��_� Ù�¯ ->��"?g�-k9>��'39\ #�,9�+,���A)��G��'?-�9%7/�2:9��A��2��.)�"591Ul9>'*r?��)hV���'5)�+K���,-o��'?+K�=+,@$+,2:�x@$�:�,2:;�-6�����! #"$�&%('*)�+,��A%(���1"?<*��%7��)59k'*V�"?<*� ��� #"��i'?2:2�"? �9>���7�A)*9&�,�*���kV���)�+,��%('*��r5- R �\'?2� �"? t9>����A)59��,�*���kV���)�+,��%('*�&r*-k->��"?g 'Ù ��� "$��V��,9�9����������� ["$��%('5)�+,��A%(���1"?<*��%7��)59 R�� )�2:@.91gt"7"? �9>�����e"$'?9��A)��6��"*�A)*9iV���)�+K��%�'*��r5-i->��"?g�-&�4%J��2A'*��A%(���1"?<*��%7��)59 R

T ���(-��,+,"$)�;H"$V�-����1<?'?9��:"$)h�:-79>��'?9\ ["$���4)59��,�*���oV���)�+,��%('*��r5- Z [�,9�+K���A)��G��'?-�9o9>'*r?��)hV���'5)�+K���,-7�:-('jV����g��A) R ( ;�;��A)��j9>��� T a l/�)�+,9��:"$)W9�"(9>��� * � # R �6%7�,+,��'*)��:->%m@��:�,2�;�-7'?-k%c/�+,�.������ ["$��%('*)�+,�o�A%(���1"?<*��%7��)59

¯��

IPC for the Various Fetch Mechanisms, Single-Cycle Latency

1.5

2

2.5

3

3.5

4

4.5

5

5.5

eqntott espresso xlisp gcc sc compress

integer benchmark

IPC

SEQ.1

SEQ.3

BAC

CB

TC

NP�:�$/��1� ٠��u\v y a ["$��90���c<?'*�1�:"$/�-� #�,9�+,�h%7�,+,��'*)��:->%7- Z '?-&->/�%7�A)��{'J #�,9&+K�h/�)��:92A'?9���)�+,@h"? ٠+,@�+,2:�( ["$�\'?2:2;��,-��:�$)�- R LO�A)59��,�*����V���)�+K��%('5��r*- Q

'?-t�,I�9���)�;��A)�� * � # RwÙ 9�"(%c/�2:9��A��2:�()�"*91Ul9>'5r?��)6V��&'*)�+K���,-\�����t+,@�+,2:� Z '*)�;j�A)x-�"$%7�k+�'3-��,-t-��:�$)����e+�'*)*9&2�@.%J"$�1��A%(���1"?<*��%7��)59 R * "$%7�,g\��'?9t->/������1�:-��A)��*2:@ Z ��'?2� "? �9>�����e"�'?9��A)��(��"*�A)59iV���)�+,��%('*��r5-�-��,�\->/�V�-�90'*)*9&�4'32������� ["$��U%('*)�+,�k�A%(���_"`<5��%7��)*97L Ù�¯ � "$��%J"$�1� Q g��:9>�x90��� T a R

T ���i�$�&'*���7�A)xNP�:�$/��1� Ù �k->��"?g�-w9>���k������ ["$��%('5)�+,�i�A%(���1"?<*��%J��)*9t9>��'?9t® ( a Z a ® Z '*)�; T a @$�:�,2:;."?<*���* � # R �BL * � # R �j�:-c/�-&�,;D'?-o9>���6V�'?-&�6�A)�-�9���'3;G"? * � # RwÙ V��,+�'*/�-&�6�:97�:-J'3�*�$�1�,-�-&��<5� Z @*�,9)�"*97%7/�+K�G%J"$�1�+,"$%(��2:�,Ix9>��'*) * � # RwÙzQ,R�� )��%7�:�$�*9��,I]���,+,9�9>��'?9t/�)�;����t9>���\-��A)��*2:�0Ul+,@$+,2:�o #�,9&+K�x2A'?9���)�+,@j'?-�-0/�%(��9��:"$) Z 9>���9>���1�,�j'*�����1"�'?+K���,-ogt"$/�2:;D������ #"���% -��A%7�:24'5�12:@ R ��"?gt�,<*��� Z�T a ��)zn!"?@�-c'h)�"*9��:+,��'*V�2:�j2:��'?;H"`<5��� a ® R�T ����-�:-6%7"*-&92:�Ar?�,2:@�V��,+�'*/�-��j90���6"$�_���5�4)�'32�+,"*2:2A'*��-��A)��BV�/5Y����og�'3-J)�"59c;��,-&����)��,;F9�"G��'*)�;�2:�.V�'?+Kr5g�'*�1;G90'*r?��)�A)*90��'*V�2:"$+,rxV���'*)�+,���,-c| Ù&�!Z gi�����_��'?-�9>��� T a +�'*)j��'5)�;�2��7'*)5@q'*�&V���90��'*�1@(90��'?+,� RPT ���® ( a ������ #"���%7-tgt"$�1-�9"? P9>���90���1�,� Z '5)�;.�A)W-�"$%7�k+�'?-&�,-i�,<*��)W������ ["$��%J- � ­ « �*� * � # R �7�.��'*�19&��+�/�2A'*�_2�@W�A)j�e"�'?9��A)��6��"5�4)59 R\T �����1�'*�1�k91gt"7�,I]��2A'*)�'39��:"$)�-� ["$�w9>���:-kV�����'z<$�:"$� u

� v )�-�9>�&/�+,9��:"$)G+�'3+K���jV�'*)�rW+,"$)5�e�:+,9�-6'*�_�(9>���6���1�A%('5�1@B�����! #"$�&%('*)�+,�x2�"5-�-k ["$�® ( a R�T '*V�2:� �W->��"?g�-9>��'?9�® ( a �:-�+,"$%���'*��'*V�2:��9�" T a �� �V�'*)�ro+,"$)5�e�:+,9�-�'*�_���:�$)�"$�1�,; Z '?�$'?�A)('?-&->/�%7�A)��-��A)��*2:�0Ul+,@�+,2:�\ #�,9�+,�24'39���)�+,@( ["$��® ( a R

� T ���c® ( a 90�1��'?9�-iV�'3-��:+cV�2:"$+,r5-'?-i'?9�"�%7�:+c/�)��:9�- R-( -�'��1�,->/�2:9 Z '(® ( a ��)59>�1@xg��:2:2����1"?<$�:;��o"$)�2:@.'?-%('*)5@6V�'?-��:+cV�2:"�+Krx'?;�;e�1�,-&-��,-i'?-�g���2:2 �e9�g��:9>���A)j9>��� Ù �J�4)�-&9>��/�+,9��:"$)� [�,9�+,�x2��A%7�:9 RtT ���o+,"$)�-��,^�/���)�+,���-w9>��'?9P�*�:<*��)�����9&-��A)6V�"*9>�o9>��� T a '*)�;6® ( a Z 9>���\® ( a +�'*)7)��,<*����->/�����2:@6%7"$�1���4)�-&9>��/�+,9��:"$)�-w9>��'*)9>��� T a ReT ����-\-��:9>/�'?9&��"�)j+�'*)WV��c�_��%7�,;��:�,;=V5@j��'�<��A)��q'Jg��:;����t [�,9�+,�j;e'?9>'5��'?9>��9>��'*)j90���k;���-0��'?9�+,�;e'?9>'*��'?90� Z g\����+,�.'5%7"$/�)59�-t9�"6���1�0 [�,9�+,���4)�� R

¯$Ù

IPC for the Various Fetch Mechanisms, Single-Cycle Latency

3

5

7

9

11

13

doduc tomcatv nasa7 mdljdp2 swm256 su2cor

floating point benchmark

IPC

SEQ.1

SEQ.3

BAC

CB

TC

NP�:�$/��1� ÙoÙ*u\v y a ["$��90���c<?'*�1�:"$/�-� #�,9�+,�h%7�,+,��'*)��:->%7- Z '?-&->/�%7�A)��{'J #�,9&+K�h/�)��:92A'?9���)�+,@h"? Ù +,@�+,2:�( ["$�\'?2:2;��,-��:�$)�- R L �e"$'39��A)��6��"*�A)59iV���)�+,��%('*�&r*- Q

Performance Improvement of SEQ.3 over SEQ.1

0.0%

5.0%

10.0%

15.0%

20.0%

25.0%

30.0%

eqnt

ott

espr

esso

xlis

p

gcc sc

com

pres

s

dodu

c

tom

catv

nasa

7

mdl

jdp2

swm

256

su2c

or

benchmark

% im

pro

vem

ent

in IP

C

NP�:�$/��_� Ù�¯�u y����� ["$��%('*)�+,�k�A%(���_"`<5��%7��)*9�"? * � # R �7"?<*��� * � # RÔÙ*R

¯*¯

Performance Improvement over SEQ.3, Single-Cycle Latency

-10.0%

-5.0%

0.0%

5.0%

10.0%

15.0%

20.0%

25.0%

30.0%eq

ntot

t

espr

esso

xlis

p

gcc sc

com

pres

s

dodu

c

tom

catv

nasa

7

mdl

jdp2

swm

256

su2c

or

benchmark

% im

pro

vem

ent

in IP

C

BAC

CB

TC

NP�:�$/��1� Ù � u y����! #"$�&%('*)�+,�x�4%����1"?<*��%7��)59("? ® ( a Z a ® Z '*)�; T a "?<*��� * � # R � Z '?-&->/�%7�A)��D'� [�,9�+,�F/�)���92A'?9���)�+,@j"? Ù +,@$+,2:�o ["$�t'?2:2�;��,-��:�$)�- R

®w��)�+K��%('5��r ® ( a LO+,"$)5�e�:+,9�- Q ® ( a L[)�"(+,"$)5�e�:+,9�- Q T a�,^])59�"*9&9 � R©~ � � R©¯ � � R©¯ ��,-0���1�,-�-�" � R � ¯ � R � � � R©¯��

I$2:�:->� � R©¯*~ � R � � � R ����*+,+ ¯�R©¯ � ¯�R ��� ¯�R � �-�+ � RwÙ � � R � � � R � �

+,"�%(���1�,-�- � R � ¯ � R©~ � � RwÙ �

T '*V�2:� � u�T ���������� ["$��%('*)�+,�t"? �® ( a �:-w-��,<*���1�,2:@2:�A%7�:9��,;jV*@o�A)�-�9>��/�+,9��:"$)J+�'?+K����V�'*)�r�+,"$)5�e�:+,9�- R�T ����-w9>'*V�2:�->��"?g�-\9>��'?9k9>���(������ #"���%('*)�+,�7"? �® ( a ��-o+,"$%(��'*�&'*V�2:�c9&" T a �� iV�'*)�r�+,"$)5�e�:+,9�-c'*�_�c�:�$)�"��1�,; Z '?-&->/�%7�A)��/�)��:9� [�,9�+,�x2A'?9���)�+,@ R

¯ �

� ��� ������ � � " ��� � !�����" �T ���x�0Y��,+,9c"3 � [�,9�+,�B/�)��:9(2A'?9&��)�+,@G�:-(^]/�'5)*9����e�,;H�A) T '*V�2:� �W'*)�;B+,"����1�,->��"$)�;��A)��G�$��'*����-7�A)XNP����/��1�,- Ù �'*)�; Ù � R * �4)�+,�7V�"*90�79>��� a ®F'*)�;j® ( a -&+K����%7�,-t'?;�;x-�9>'?�*�,-tV��0 ["$�1�k'*)�;6'z [9�����9>���i�A)�-�90��/�+,9��:"$)�+�'?+K��� Z gt��*�:<*��90���������� #"���%('*)�+,��"3 �90���,-���-�+,����%7�,-�'3-P [�,9�+K�J24'39���)�+,@(�:-t<`'*�1�:�,;� p�_"$% Ù 9�" �\+,@$+,2:�,- R NP�:�$/��1� Ù �k->��"?g�-9>��'?9w9>�����A%(��'?+,9t"? �2A'?9���)�+,@���-t^�/��:9��i-&�,<*���1� R a ®F'5)�;q® ( a p'?2:2�g��,2:2�V��,2:"?g�9>���i������ #"���%('*)�+,�\"? T a R Ne"$�'?2:2�V�/�9+�k"? �90����V���)�+K��%('5��r*- Z ® ( a g��:9>�j'k2A'?9&��)�+,@("? ¯ +,@$+,2:�,-i������ #"���%7-tgt"$�1-���90��'*) * � # R � RP� �Ar?�,g��:-�� Z ["$�t"?<*���t��'?2� �"? �9>���7V���)�+,��%('*��r5- Z a ®�g���90�.'o2A'?9���)�+,@j"? �7+,@�+,2��,-k�����! #"$�&%7-�gt"$�1-��k90��'*) * � # R � R

T ���i�0Y��,+,9�"? �24'39���)�+,@j�:-i%7"$�1�\;e��'*%�'?9��:+\ #"����A)59��,�*���w+,"�;��9>��'*)J�e"$'?9&�4)��x��"*�A)59�+,"$;�� R'* 9��:2�2 Z "$)�2:@x"$)��V���)�+,��%('*�&r��{¥[�*¬7£ ¢ ¥ � �q'*������'*�1-�9&"6V��o9�"*2:����'*)59t"? � [�,9�+,�j/�)��:9i2A'?9���)�+,@ R

®���)�+,��%('*�&r a ® a ® L ��¯*Q a ® L � � Q ® ( a ® ( a L ��¯5Q ® ( a L � � Q�,^])59�"*9�9 � RwÙ � � R ��� � R � � � R©~ � � R ��� � R ����,->���_�,-�-�" � R � Ù � R ��� � RÔÙ � � R � ¯ � RwÙ � � R©~ �

I�2:�:->� � R � � � RwÙ � ¯�R�~ � � R©¯5~ � R � � ¯�R � ~�*+,+ ¯�R � � ¯�R©¯ � ¯�R � � ¯�R©¯ � ¯�R � � Ù*R©~*¯-�+ � R ��� � R ��� � R ��� � RwÙ�� � R ��� � R � �

+,"$%����1�,-�- � R �*¯ � R ��� � R ��� � R � ¯ � R ��� � R � ~;�"�;e/�+ � R � � � R ��� � RÔÙ�~ � RwÙ � � R �$Ù � R ���

9�"$%J+�'?9�< Ù � R©~ Ù � R � Ù � R � Ù�¯�R � Ù�¯�R � Ù�¯�R©¯)�'?->'�� � R ��� � R©¯ � � R�~ � � R � ¯ � RwÙ � � R ���

%7;�2 n1;e� ¯ � R©¯ � � R �$Ù � R � � � R �5~ � R©~$Ù � R ���-&gi% ¯ ��� ~�R ��� ~�R ��� ~�R � Ù ~�RwÙz~ ~�R � � � R©~*¯-0/ ¯ +,"$� � R©~�� � R ��� � R � Ù � R � ¯ � R ��� � R � �

T '*V�2:� � u y����! #"$�&%('*)�+,�k"? P9>��� a ®�'5)�;{® ( a -�+,����%7�,-\g��:9>�j2A'?9&��)�+,@j9>'*r?��)x�A)59�"q'3+,+,"$/�)*9 R���¯ � ¯ +,@�+,2:� [�,9�+K�x2A'?9&��)�+,@ Z�� � � �o+,@$+,2:�o [�,9�+K�x2A'?9&��)�+,@ R

¯ �

Performance of Various Fetch Mechanisms, Non-unit Latency

1.5

2

2.5

3

3.5

4

4.5

5

5.5

eqntott espresso xlisp gcc sc compress

integer benchmark

IPC

SEQ.1

SEQ.3

BAC

BAC (L2)

BAC (L3)

CB

CB (L2)

CB (L3)

TC

NP�:�$/��1� Ù � u�v y a ["$�P90���i<?'*�1�:"$/�-w #�,9&+K�x%7�,+,��'*)��:->%7- Z /�-��A)��6�1��'32��:-�9&��+k2A'?9&��)�+,���,-� #"$� a ®F'*)�;j® ( a R�� �k'*)�;��� -�9>'*)�;x ["$� ¯ +,@�+,2:�J'5)�; �7+,@$+,2:�o24'39���)�+,@ Z �_�,->���,+,9��:<*�,2:@ R LO�A)59��,�*����V���)�+K��%�'*��r5- Q

Performance of Various Fetch Mechanisms, Non-unit Latency

3

5

7

9

11

13

doduc tomcatv nasa7 mdljdp2 swm256 su2cor

floating point benchmark

IPC

SEQ.1

SEQ.3

BAC

BAC (L2)

BAC (L3)

CB

CB (L2)

CB (L3)

TC

NP�:�$/��1� Ù � u�v y a ["$�P90���i<?'*�1�:"$/�-w #�,9&+K�x%7�,+,��'*)��:->%7- Z /�-��A)��6�1��'32��:-�9&��+k2A'?9&��)�+,���,-� #"$� a ®F'*)�;j® ( a R�� �k'*)�;��� -�9>'*)�;x ["$� ¯ +,@�+,2:�J'5)�; �7+,@$+,2:�o24'39���)�+,@ Z �_�,->���,+,9��:<*�,2:@ R L �e"�'?9��A)��6��"5�4)59iV���)�+K��%('5��r*- Q

¯ �

Performance Improvement over SEQ.3, Non-unit Latency

-20.0%

-15.0%

-10.0%

-5.0%

0.0%

5.0%

10.0%

15.0%

20.0%

25.0%

30.0%

eqnt

ott

espr

esso

xlis

p

gcc sc

com

pres

s

dodu

c

tom

catv

nasa

7

mdl

jdp2

swm

256

su2c

or

benchmark

% im

pro

vem

ent

in IP

C

BAC (L2)

BAC (L3)

CB (L2)

CB (L3)

TC

NP�:�$/��1� Ù � u y����� #"���%('*)�+,�t�A%(���1"?<*��%7��)59�"3 ® ( a Z a ® Z '*)�; T a "?<*��� * � # R � Z /�-��A)��c�1��'?2:�:-�9��:+k2A'?9���)�+,�:�,-t ["$�a ®�'*)�;h® ( a R � �'5)�; � � -&9>'*)�;x ["$� ¯ +,@�+,2:�c'*)�; �+,@�+,2:�724'39���)�+,@ Z �1�,->���,+,9��:<*�,2:@ R

¯ �

� ��� � ��!�"$�3%&!�"��'� � � � " ��� ���'��� �

T "i;��,9����&%7�A)��i��"?gB�0Y��,+,9��:<*�w9>���t9>��'?+,�w+�'?+K���t�:- Z gt��%7/�-�9��,-�9>'5V�2��:->�o9>����/��������PV�"$/�)�;("�)k�:9�-������! #"$�&%('*)�+,�'*)�;h%7��'?->/��1�(��"?g� p'*��->��"$�19\�:9� l'?2:2:-\ p�1"�%�9>���:-V�"$/�)�; RkT ���cV�"$/�)�;G�:-i�,-&9>'*V�2:�:->���,;BV5@{'*)Cd��:;���'?2:fx #�,9�+,�%7"�;��,2 Z ;��0��)��,;G'?-� #"52�2:"?g�- u '?-i2:"$)��j'?-iV��&'*)�+K��"$/�9�+,"$%J�,-i'*�1����1�,;��:+,9��,;h+,"$�&�1�,+,9�2:@.'*)�;.�A)�-�90��/�+,9��:"$)�-k����9�A)h9>���7�A)�-�9>��/�+,9&��"�)h+�'?+,��� Z /��h9�"��jV�'?-��:+6V�2:"$+,r5-k"$� ٠���4)�-&9>��/�+,9��:"$)�-��.gi���:+K���,<*����+,"$%7�,-\���1-&9��.+�'*)hV�� [�,9�+K���,;W�,<*���1@x+,@$+,2:� R

NP�:�$/��_� Ù �o->��"?g�-t9>��'39�90�����1�k�:-�-�9��:2:2������! #"$�&%('*)�+,�\9�"(V��k�$'?�A)��,;hV*@6V��,9�9����t�A)�-�90��/�+,9��:"$)� [�,9�+K���A)�� RwT a l'?2:2�-�->��"$�19t"? ��:;���'?2������� #"���%('*)�+,�\;e/��k9�"79>��'?+,�\+�'?+,����'5)�;q® T ®�%7�:-�-��,- R�T ���\9>��'?+,�\+�'?+,���/�-��,;q�����_���'?-"$)�2:@2�����)59>�1�:�,-t'*)�;(�:-�;��A�1�,+,9�%('*�����,;���'?;�;��A)�� ¯ ���?Ulg�'z@'?-�-�"�+,�A'?9��:<$�:91@7"$��-��A%(��2:@x�4)�+��_��'?-��A)��79>���i)�/�%cV����"? P��)*90�1�:�,-ig��:2:2P)�'*���1"?g�9>���c������ ["$��%('*)�+,�k��'*�jV��,91gt�,��) T a '*)�;.�:;���'?2 R NP����/��1� Ù �����1"?<$�:;��,-\�4)�+,��)59��:<*�79�"�,I���2�"��1�9>���k;��,-&����)j->��'?+,�7'?2:9�����)�'?9&��<5�,-�"? * �,+,9��:"$) ¯�R �c'3�4%J�,;{'?9��A%(���_"`<��A)��6���:9��&'?9�� R

Comparing Trace Cache to Ideal

2

2.5

3

3.5

4

4.5

5

5.5

6

eqntott espresso xlisp gcc sc compress

integer benchmark

IPC TC

ideal

NP�:�$/��1� Ù � u T a p'32�2:-\->��"$�19t"? � l/�2�2������� ["$��%('5)�+,���"*9���)59��A'?2�;e/��o9�"79>��'?+,�k+�'3+K���%7�:-�-&�,-i'*)�;{® T ®�%7�:-�-&�,- R

T ��'?+,�k+�'3+K���7%7�:-�-��&'?9��k+�'*)WV��-0���,+,���e�,;G�A)j91gt"7g�'z@�- u �A)W9�����%7-�"? 90��'?+,�,-cLO90��'?+,�%7�:-�-k��'?9�� Q '*)�;W�A)9�����%J-�"? ��A)�-�90��/�+,9��:"$)�-cLO�A)�-�90��/�+,9��:"$)j%7�:-�-���'?9&� Q,R�T ��'?+,�k%7�:-�-i��'39����:-t9>���� l��'?+,9&��"�)("? P'?+,+,�,-�-��,-t9>��'?9w;�"()�"*9��)�;{'�9>��'3+,����1�,-���)59 R�v )�-�90��/�+,9��:"$).%J��-&-���'39���:-\9>���k l��'?+,9��:"$)x"3 ��4)�-&9>��/�+,9��:"$)�-k)�"*9\->/�����2:���,;HV*@j9>���k90��'?+,�+�'?+,��� R�T ��'?+,�i%7�:-�-t��'?9�����-�'o%7"$�1��;��A�1�,+,9�%7��'3->/��1��"? �9>�&'?+,��+�'?+,���������� ["$��%('*)�+,�\V��,+�'*/�-��\�:9t�4)�;��:+�'?9&�,-�9>��� l��'?+,9��:"$)x"? P [�,9�+,�x+,@$+,2:�,-k9>��'39iV���)��0�e9� p�_"$%����:�$�����\V�'*)�;�g��:;�9>� R ��"`gt�,<*��� Z �A)�-�9>��/�+,9��:"$)W%7�:-�-k��'?9��k�:-k'?2:-�"�1����"$�19��,;GV��,+�'5/�-��7��9k+,"����1�,->��"$)�;�-k9�"x+�'?+K���(%7�:-�-�&'?9���A)h90���9>��'3;���9&��"�)�'?2P-���)�-�� R � �:-�-��'?9��,-k'*�1�o->��"?gi)�A) T '*V�2:� � R

¯ �

®w��)�+,��%('*��r 9>��'3+,�%7�:-�-��&'?9�� �4)�-&9>��/�+,9��:"$)W%7�:-�-i��'?9&��,^�)*9&"*9�9 ¯ � R � � � R � � ��,->���1�,-�-&" � Ù5R©~ � ¯$Ù*RwÙ �

I�2��:->� ��� R � � � ~�R ����*+,+ � ��R ��� � Ù*R©¯ �-�+ � ��R ��� ¯ � R ���

+,"$%(���1�,-&- ٠� R ��� � Rw٠� �;�"$;e/�+ ��� R ��� � ~�Rw٠�

9�"$%7+�'?9&< � Ù5R©¯ � � ~�R©~ �)�'3->'�� ~�R � � � ¯�R � � �

%7;�2 n!;e� ¯ Ù � RwÙ � � R � � �-�gi% ¯ ��� � ~�R � � ��� RwÙ �->/ ¯ +,"�� ¯$Ù5R � � � R � � �

T '*V�2:� � u�T �&'?+,�%7�:-�-k��'?9��k'*)�;.�A)�-�90��/�+,9��:"$).%J��-&-i��'?9��\ ["$�t'2������)*9>�_@6;��A�1�,+,9k%('*�����,;.9>��'3+,�i+�'?+,��� R

¯ �

� ������ �K� �����

T �1��)�;�-7�4)F���_"$+,�,-�-&"$�k"$�_�$'*)��:8�'?9��:"$)=�Gg��:;����;��:->��'39�+K���3��-&->/�� Z 2A'*�_�*���o�4)�-&9>��/�+,9��:"$)Xg��A)�;�"?g�- Z '*)�;H;��,�������->���,+�/�24'39��:"$)����,I���"5-��B)��,g}�A)�-�9>��/�+,9&��"�)� #�,9&+K�������! #"$�&%('*)�+,�G�:-�->/��,- R�T ���,-��G'*�1�GV���'*)�+,��9>���1"$/�������/�9 Z)�"$)�+,"$)59��:�$/�"$/�-��4)�-&9>��/�+,9��:"$)h'?2:�:�$)�%7��)59 Z '*)�;� #�,9&+K�j/�)��:9\24'39���)�+,@ R

� I]�����1�A%7��)59�-�g��:9>�W�1��'?2��A%(��2:��%7��)59>'?9��:"$)�-\@����,2:;h9>���\ ["*2:2:"`g��4)��j�1�,->/�2:9�- u

� Ne"$�w�A)*9&�,�*���t+,"�;�� Z V��,�4)��j'*V�2:�9&"7 #�,9&+K�j��'?-&9�%7/�2:9��A��2:�j�e�*¥�1¥ ¢ � ­z�6V���'*)�+,���,-\�4%����1"?<*�,-i�����! #"$�&%('*)�+,�"$)B'z<*���&'?�*�(V*@ Ù � � "?<*���'� [�,9�+K�H/�)��:9(9>��'?9o�:-c2:�A%7�:9��,;�9�" Ù V��&'*)�+K�H���1�,;��:+,9��:"$)F�����7+,@$+,2:� R Ne"$��e"$'?9��A)��6��"*�A)*9 Z 9>���'z<*����'?�*�k�����! #"$�&%('*)�+,��A%(���_"`<5��%7��)*9���- ��� R

� Ne"$�t�A)59��,�*���\+,"�;�� Z V��,�A)��{'5V�2��79�"� [�,9�+K�W��'?-�9k%7/�2�9&�4��2:�.¥ ¢ � ­��jV���'5)�+K���,-k�A%(���1"?<*�,-k�����! #"$�&%('*)�+,�7"$)'�<5����'?�*��V5@ Ù ��� "?<*���P'� #�,9�+,�(/�)��:9t9>��'?9w+�'*)7"$)�2:@7 [�,9�+,�7+,"$)59��:�$/�"$/�-��A)�-�90��/�+,9��:"$)�-cLO90����-t�1�,->/�2:9t�:-� ["$�9>���79>��'?+,�7+�'?+,���7�4%���2���%J��)*9>'39��:"$) Q,R N�"$���e"$'?9��A)��.��"5�4)59 Z 9>���6'z<*����'?�5�c�����! #"$�&%('*)�+,�7�A%(���1"?<*��%7��)59��- ~ � R

� T ���79>��'?+,�7+�'?+,���7+,"$)�-��:-�9���)59�2:@G������ ["$��%7-V��,9�9����\9>��'5).�,�:9>������"? �90���c"59>�����k���:�$�GV�'*)�;�g��:;�9>�{ #�,9�+,�%7�,+K��'5)���-0%7-P-�9>/�;��:�,;o��+,"52�2A'*��-&�4)��7V�/5Y�����'*)�;(V���'5)�+K�o'?;�;e�1�,-�-P+�'?+,���P�(­ � ­��(� � ¦$����¥ � ­z¥[£,¤ «:¢ ¥[­���£ �\�Aª¢ ª>ª,¦�¬c­0� ¢ £ ¡ �?ª0ª ¢*«O« ¥O¤ ¡ ­0­ R�T ���i���1�A%('*�1@(�1��'3-�"$)�-� ["$��9>���:-�'*�_�cL Ù�Q 9>����"$�_���5�4)�'32 a ®H;��,-��:�$)J;�"$�,-t)�"*9��'*)�;�2:�cV�'?+,r*g�'*�_;j9>'*r?��)x�A)59>��'*V�2:"�+KrjV���'5)�+K���,-k'*)�;DL ¯*Q 9>���® ( a ;��,-��:�$)j-0/5Y����_-t p�_"$% �A)�-�9>��/�+,9&��"�)+�'?+K���V�'5)�r(+,"$)5�e�:+,9�- R

� * �4%7/�2A'?9��:"$)�-tg��:9>��%7"$�1�i�_��'?2:��-&9��:+i2A'?9���)�+,�:�,-w ["$�P9>��� a ®F'*)�;6® ( a ;��,-��:�$)�-L[V�'?-��,;("�)7-�9>'?�5�,-�V��0 ["$�1�'*)�;.'z [9����w9>����A)�-�9>�&/�+,9��:"$)j+�'?+,��� Q +,2:��'*�12:@j->��"?g�90���'?;�<`'*)59>'?�5�i"? �/�-��A)��j'72:"`g�24'39���)�+,@.'*�����1"$'3+K� RT ���,�A�k������ ["$��%('5)�+,�k l'?2:2�-kgt�,2:2PV��,2:"?g 9>��'?9\"? �9>���90��'?+,�+�'3+K��� Z '*)�;h�A).-&"$%7�+�'3-��,-�'�2:"?g 2A'?9���)�+,@ Z2�"?gt���tV�'*)�;�g��:;�9>�� [�,9�+K�j/�)��:9\;�"$�,-\V��,9�9���� R

T ���(+,"�%cV��A)��,;F�0Y��,+,9"3 �%7/�2:9��A��2:�.V���'*)�+,���,-c�����+,@�+,2:�q'5)�;D)�"$)�+,"�)*9��:�$/�"�/�-�A)�-�9>��/�+,9&��"�)X #�,9�+,���A)��.�:-('*)'z<*����'?�5���A%(���1"?<*��%7��)59t"? ��� �  ["$�w�A)*9&�,�*���tV���)�+,��%('*��r5-�'*)�; Ù ��� #"$� �e"$'?9��A)��(��"5�4)59iV���)�+K��%('5��r*- Z /�-&�4)��9>���k9>�&'?+,�k+�'?+,��� R

� ���:2:�i'k-0%('?2:2�9>��'?+,�t+�'?+,���i������ #"���%7-Pgt�,2:2 Z +,"$%���'*�1�:-�"$)og��:9>�790���(d��:;���'?2:fc)�"$)�+,"�)*9��:�$/�"�/�-��A)�-�9>��/�+,9&��"�) [�,9�+K��%7"$;��,2�-0��"`g�-P9>���i��"59���)*9&�4'32� ["$���,<*��)(���:�$�����w������ ["$��%('5)�+,�t�c'?;�;��:9��:"$)�'?2 �A%(���1"?<*��%7��)59P�A)79>���i�&'*)��*�"? ����9&" � � � RPT ���:-i�,I������_�4%J��)*9i%J"*9��:<`'?9&�,-��A)*<*�,-&9��:�$'?9��:"$)x"? �24'5�1�*����'*)�;e�3"$�t%7"$�1�\+,"$%(��2:�,Ix9>��'?+,�k+�'?+,���;��,-��:�$)�- Z ->/�+,��'3-.��'?9>��'3-�-�"�+,�4'39��:<$�:91@ Z ��'*�_9��A'?2�%�'?9�+,���,- Z n�/�;��:+,��"�/�-.9>��'3+,�.-��,2:�,+,9��:"$) Z '*)�;�<���+,9&�4% 90��'?+,�+�'?+,���,- R

v )W+,"$)�+,2A/�-��:"$) Z ��9o�:-k�4%���"$�190'*)*9k9&"6;��,-��:�$){ #�,9�+,�G/�)��:9�-k+�'*��'5V�2���"? � [�,9�+,���4)��h��'?-�9k%7/�2�9&�4��2:� Z ��"5-�-��AV�2:@9>'*r3��)V���'*)�+,���,-���'3+K�o+,@�+,2�� R ��"?gt�,<*��� Z 9>���:-�'?;�;��:9��:"$)�'?2 V�'*)�;�g��:;�9>�(������ #"���%('*)�+,�t->��"$/�2:;6)�"59 V��i'?+,�����,<5�,;'?9w9>���k�,I]����)�-��k"? �2:"$)��5���P [�,9�+,�6/�)��:9�2A'?9&��)�+,@ R�T ���\9>��'?+,�\+�'?+,���i�:-�->/�+,+,�,-&-1 p/�2 �4)�->'?9&��-_ #@��A)��6V�"*90�("? �9>���,-���1�,^�/��A�1��%7��)59�- R

� � ��7�� � � �w � � � �t���

T ���:-kgt"$��rxg�'?-\->/�����"��19��,;h�A){��'5�19�V5@ , * N � ��'5)*9 �Gv y�U ~ � � �������('5)�;=V5@j9>��� $oR * R ( ��%o@ v )59��,2:2:�:�*��)�+,�a ��)59����k'*)�;hNe"��19�i/�'3+K��/�+�'j/�)�;���� a "�)*9>�&'?+,9 � ( ® T ���zU ~ �zU a U �$Ù�¯ �('5)�; ( ��y ( "$�1;����k)�" R � ��� � RT ���<����,g�-'*)�;h+,"$)�+,2A/�-��:"$)�-+,"$)59>'?�A)��,;G�����1�,�A)G'*�_�9>��"*-&�"? �9>���('*/�90��"$�1-k'*)�;.->��"�/�2�;H)�"*9�V��7�4)59��������_�,9��,;G'?-)��,+,�,-�->'5�1�:2�@��_�����1�,-���)59��A)��G9>���j"�6+,�A'?2���"*2:��+,�:�,-W"$�o��)�;�"$�1-���%7��)59�- Z �,��90�����7�,I]���_�,-�-��,;�"���A%(��2:�:�,; Z "3 i9>���$oR * R$( ��%o@ v )59��,2:2:���5��)�+,� a ��)59�����'*)�;WNe"$�19��\/�'?+,�$/�+�' Z "$�w9>��� $oR * R � "?<*����)�%J��)*9 R

� �1�:+ �t"*9���)�V����_�6�:-t l/�)�;��,;GV*@j' � �&'?;e/�'?9��\Ne�,2:2:"?g�->���A�� p�1"�% v ® �DR

¯*~

� ��� �P���t� ��

| Ù0�cT�R a "�)*9�� Z �,9'?2 R�Z d � ��9��A%7�:8�'?9��:"$)h"3 v )�-�9>�&/�+,9��:"$)hNe�,9&+K� � �,+,��'*)��:->%7-\ ["$�k���:�$� v -�->/�����'39��,- Z f !t¡ � £0­>­0�*�O�*§5ªi� � ¥O¤�­��0�e¥[­ ¡ � ¢ ¥[���*� ¢*«�� �?¬�¨]�?ª,�O¦$¬��5� � �*¬�¨�¦$¥[­ ¡ � ¡ £S¤$��¥[­0£�¥[¦ ¡ ­ Z ��/�)�� Ù�~*~ � R

| ¯z�cT U � � ��� Z �(R � '*�&�k'*)�; �7R yP'?9�9 Z d v )�+��_��'?-��A)��h9>��� v )�-�9>��/�+,9&��"�)HNe�,9�+,� ��'?9&�6<��A' � /�2:9��A��2:�{®t��'*)�+,�yw�1�,;��:+,9��:"$)j'*)�;.'®t��'5)�+K� ( ;�;e�_�,-�- a '?+,��� Z f !�¡ �z£>­0­>�5���5§*ª�� � ¥O¤$­��,¥O¤ � �� �0�e¥[­ ¡ � ¢ ¥[���*� ¢*« � �*� � ­ ¡ ­���£>­�*� � ¦,¨�­ ¡ £>�5¬�¨ ¦$¥[�O�*§ Z �$/�2:@ Ù�~*~ � R

| � � �FR N ��'*)�r52:�4)X'*)�; �DR * %7"*9>������%�'*) Z d ( NP��2:2�U $ )���9 ( �����1"$'?+,�W9�" � /�2:9��A��2:� v )�-�9>��/�+,9��:"$) v -�->/�� Z f !t¡ � £0­>­0�*�O�*§5ªi� � ¥O¤�­ ���,¥O¤ � �e��¦ ¢5« �0�e¥[­ ¡ � ¢ ¥[���*� ¢*«�� �?¬�¨]�?ª,�O¦$¬m�*� � �O£ ¡ � ¢5¡ £S¤$�O¥[­>£z¥[¦ ¡ ­ Z � �,+,��%7V���� Ù�~*~ � R

| � � * R � /�9�90'c'5)�; �DR N ��'*)�r52��A) Z d a "$)59>�1"52�NP2�"?g yw�1�,;��:+,9��:"$)jg���90� T �1�,�0U � �4r3� * /�V��$��'5����-t #"�� * /������1-�+�'?2A'*�yw�1"$+,�,-&-�"$�1- Z fq¥[� ¢ ¨*¨]­ ¢*¡ � �O£ ¡ � ��� Z , "?< R�Ù�~*~ � R

| � � � R*� �,�i'*)�; (7R � R * %7�:9>� Z d>®t��'5)�+K�(yw�1�,;��:+,9��:"$) * 9>�&'?9��,�*�:�,-�'5)�;J®t��'5)�+K� T '*�1�5�,9�®�/5Y���� � �,-��:�$) Z f��� ���� �5¬�¨ ¦$¥[­ ¡ Z ��'*)$/�'5�1@ Ùz~ ��� R

| � � � R*� "*-�^ Z d � ��)����&'?2:��8,�,;j����-&9�"$�1@ T '*V�2:�t ["$�P®t��'*)�+,�7y��1�,;��:+,9��:"$) Z f�� � � � ­0£,¤$����£ ¢*«�� �Aª,£ « �?ª,¦ ¡ ­ ��¦ «O« ­�¥[�O� Z�$/�)�� Ù�~ � ¯�R

| � � � R N R � �1"$��"*->r5� Z d � '?+,���4)�� � �1�$'*)��:8�'?9&��"�)"3 ]9>��� v ® � � v * a * @�-�9���%(��� ����� ���1"�+,�,-�-�"$� Z f�� � ��� �*¦ ¡ � ¢*«� ��� ­,ª,­ ¢5¡ £S¤ ¢ �e� � ­ � ­ « �0¨ ¬c­z�e¥ Z ��'*)$/�'5�1@ Ùz~*~���R

| � � * U T yP'5) Z � R�* " Z '*)�;�� R�TkR ��'5��%7��� Z d v %(���1"?<��4)��j90��� ( +,+�/���'?+,@W"? � @�)�'*%7�:+(®t��'*)�+,�Gy��_�,;���+,9&��"�)$ -��A)���®t��'*)�+,� a "$���1�,2A'?9��:"$) Z f !�¡ ��£0­>­0�*�O�*§5ªq� � ¥O¤$­��?¥O¤��>��¥[­ ¡ � ¢ ¥[�O�*� ¢*« � �*� � ­ ¡ ­��e£0­.�5� � ¡ £,¤$�O¥[­0£�¥[¦ ¡!¢5«� ¦,¨*¨�� ¡ ¥ � � ¡ !t¡ �&§ ¡1¢ ¬7¬7���5§ � ¢ �*§$¦ ¢ §�­,ª ¢ �e����¨]­ ¡!¢ ¥[���5§ � �zªK¥[­z¬ª Z � +,9�"$V���� Ù�~*~*¯�R

| ~z�cT U ��� ���j'*)�; �cR$,oR yP'39�9 Z d ( 2:9�����)�'?9��:<*� v %(��2:��%7��)59>'?9��:"$)�-�"3 T g�"3U � �,<*�,2 ( ;e'5��9��:<*�®t��'*)�+,�6yw�1�,;��:+0U9��:"$) Z f !�¡ ��£0­0­>�*�O�*§5ªi� � ¥O¤$­ ���?¥O¤��>��¥[­ ¡ � ¢ ¥[�O�*� ¢5«�� �?¬�¨��?ª,��¦�¬��*� � �*¬�¨�¦�¥[­ ¡ � ¡ £,¤$�O¥[­0£�¥[¦ ¡ ­ Z � 'z@ Ùz~*~*¯�R

| Ù �`��T U � � ��� Z d T gt"?Ul2:�,<*�,2 ( ;e'*��9��:<*�\®��&'*)�+K��y��1�,;��:+,9��:"$)x'*)�; v )�-�9>��/�+,9��:"$)JNe�,9�+,� � �,+K��'5)���-0%7-P ["$�P�������5Uy����� ["$��%�'*)�+,� * /������1-�+�'?2A'*�xy��_"$+,�,-�-&"$�1- Z fHy�� �}T ���,-��:- Z-� ����'*�190%7��)*97"? � 2:�,+,9>�1�:+�'?2 � )��*�A)��,���1�A)���'*)�;a "�%(��/�9���� * +,�:��)�+,� Z $ )��:<*���1-&��91@j"? � �:+K���:�$'*) Z�Ù�~*~ � R

| ÙoÙK��T U ��� ����'5)�; �cR ,oR yP'?9�9 Z d ( a "$%����1������)�-��:<*� v )�-&9>��/�+,9��:"$)CNe�,9�+,� � �,+K��'*)��:->%b #"$�7'hy��_"$+,�,-�-&"$�* /�����"$�19��A)�� * ���,+�/�2A'?9��:<*� � I��,+�/�9��:"$) Z f R

| Ù�¯`� ��R �\'?" Z y R a ��'*)��F'*)�; �7R yP'?9&9 Z d T ��� � Y��,+,9("? * ���,+�/�2A'?9��:<*�,2:@ $ ��;e'?9��A)���®t��'*)�+,�F���:-�9�"��1@F"$)®t��'*)�+,�yw�1�,;��:+,9��:"$) ( +,+�/��&'?+,@ Z �t�,<���-&��9&�,; Z f !t¡ �z£>­0­0�*���5§*ªP� � ¥O¤�­ ���,¥O¤ ¢ �e��¦ ¢*« �>��¥[­ ¡ � ¢ ¥[�O�*� ¢5«�� �?¬�¨]�?ª,�O¦$¬�*� � ��£ ¡ � ¢*¡ £,¤$�O¥[­0£�¥[¦ ¡ ­ Z � �,+,��%cV���� Ùz~*~ � R

| Ù � �1�(R �k'3�,2���'*)�;.y R�� %(%�' Z d>®t��'*)�+,�j���:-�9�"��1@ T '*V�2:�cy��_�,;���+,9&��"�)j"? � "`<��A)�� T '*�_�*�,9�®��&'*)�+K���,- � /��k9�"* /�V��1"�/�9��A)�� �t�,9>/���)�- Z f !t¡ �z£>­0­0�*���5§*ªk� � ¥O¤$­ � �*¥O¤��>�e¥[­ ¡ � ¢ ¥[�O�*� ¢*«�� �?¬�¨]�3ªK�O¦$¬}�5� � �5¬�¨ ¦$¥[­ ¡ � ¡ £,¤$�O¥[­0£ ¥[¦ ¡ ­ Z � 'z@ Ù�~*~ Ù*R

| Ù � �1�(R�� '?2:2 Z d � �A%7�:9�-k"? v )�-�9>�&/�+,9��:"$)5U � �,<*�,2�yP'*�&'?2:2��,2:�:->% Z f��>�e¥[­ ¡ � ¢ ¥[���5� ¢*« � �*� � ­ ¡ ­��e£0­�5� � ¡ £,¤$�O¥[­0£�¥[¦ ¡!¢5«� ¦,¨*¨�� ¡ ¥ � � ¡ !t¡ �&§ ¡1¢ ¬7¬7���5§ � ¢ �*§$¦ ¢ §�­,ª ¢ �e����¨]­ ¡!¢ ¥[���5§ � �zªK¥[­z¬ª Z&Ù�~*~$Ù5R

| Ù � ���PR � gt��)�)�'*� Z d �Gv y * � Ù ������� $ -��,- � �,+,"$/���2:�,; ( �1+K���:9��,+,90/��1� Z f � ��£ ¡ �0¨ ¡ ��£0­,ª0ªK� ¡ � ­1¨�� ¡ ¥ Z � +,9�"$V����Ù�~5~ � R

| Ù � � � R � '*�&/�- Z d � 6+,�:��)59�yw�1"*�$�&'*% T ��'3+,�4)�� Z f������ � � �*¬�¨�¦$¥[­ ¡ Z � 'z@ Ù�~*~ � R

� �

| Ù � � * R � �,2�<��A) Z �FR* ����V�'*)�"?g}'*)�; �7R yP'?9&9 Z f$�\'*�1;�g�'*�1� * /�����"$�19� #"�� � '*�1�5� ( 9�"�%7�:+ $ )��:9�-j�A) � @5U)�'*%J��+�'32�2:@ * +,���,;e/�2��,; � '3+K���A)��,- Z f !t¡ ��£0­>­0�*�O�*§*ªx� � ¥O¤$­ � �zª,¥ � �e�e¦ ¢*« �>��¥[­ ¡ � ¢ ¥[�O�*� ¢5« � �?¬�¨]�?ª,�O¦$¬s�5�� ��£ ¡ � ¢*¡ £,¤$�O¥[­0£�¥[¦ ¡ ­ Z � �,+,��%cV���� Ùz~ ��� R

| Ù � � � R ��R * %J��90� Z d ( * 9>/�;�@("? P®��&'*)�+K�xy��_�,;���+,9&��"�) * 9>��'?9��,�5���,- Z f !t¡ �z£>­0­0�*���5§*ª�� � ¥O¤$­��5¥O¤ � �`¬�¨��?ªK�O¦�¬ �5�£0�*¬�¨�¦�¥[­ ¡ � ¡ £S¤$�O¥[­>£z¥[¦ ¡ ­ Z � 'z@ Ù�~ � Ù*R

| Ù�~`� � R ��R�* %7�:9>�H'*)�; � R�* R * "$��� Z d T ��� � ��+��_"$'*�1+,���:9��,+,9>/��1�("3 * /������1-�+�'?2A'*�oy��1"�+,�,-�-�"��1- Z f !t¡ �z£>­0­0�*���5§*ª��� ��� Z � �,+,��%7V���� Ù�~*~ � R

| ¯��`� ,oR �5"$/������ Z d v %(���1"?<$�A)�� � �A�1�,+,91U � '*�����,; a '?+,���cy����� ["$��%('5)�+,�cV5@j9>��� ( ;�;��:9��:"$)h"? �' * %('?2:2�N�/�2:2:@*U( -�-�"�+,�A'?9��:<*� a '?+,���6'*)�;Fy��1�0 [�,9�+,�G®t/5Y����_- Z f !t¡ ��£0­>­0�*�O�*§*ª7� � ¥O¤$­ � �,¥O¤ �>��¥[­ ¡ � ¢ ¥[�O�*� ¢5« � �?¬�¨]�?ª,��¦�¬ �5�� �5¬�¨ ¦$¥[­ ¡ � ¡ £,¤���¥[­0£�¥[¦ ¡ ­ Z � '�@ Ù�~*~���R

� Ù

� � � �i�& �� ��� � � � �t��� �t���&�k� � ���

T ���:-c'5������)�;��:IB-&���1<*�,-'?-7'j�1����"*-&��9&"$�1@W #"��k%('*)5@."? t9>���(�:-�->/��,-79>��'?9kgt�7��)�+,"$/�)59����1�,;H�A)h"$/��k-&9>/�;�@."? 9>���x<`'*�_��"�/�-6���:�$�FV�'*)�;�g��:;�9>�H�A)�-�9>�&/�+,9��:"$)X #�,9&+K�H%7�,+,��'*)��:->%7- RGT �����_�j��-()�"h-��:�$)����e+�'*)�+,�h9�"W9>���6"��1;����9>��'?9\9>���A)��*-'*�_�J���_�,-���)*9&�,; Z �,I$+,����9o9>��'?9\-��,<*����'?2�->/�V�-��,+,9&��"�)�-;�������)�;X"$)W9>���(® T ®�;��,-�+��_�4��9&��"�) Z gi���:+,��:-i���1�,-���)59��,;����1-�9 R ( 2:-�" Z 'o�*�:<*��)x-��,+,9&��"�)6%('z@6V���1�,2:�,<`'*)59�9�"o"$)��k"$�w%7"$�1�\;���Y����_��)*9t [�,9�+,�6%J�,+K��'*)��:->%J- R

��� � % ���"$� �&� �!� � �'� ����! �"��6� !�� � � �� � � �

T ���6V��&'*)�+K�=9>'*�1�*�,9kV�/5Y����\;���Y����_-k l�1"$%m�:9�-"��1�:�*�A)�'?2P;��,-��:�$)X�4)=9>��'?9k�:9c%7/�-�9k2:"�+�'?9��6V���'5)�+K���,-og��:9>���A)G'�,« �z£ � "? ��A)�-�90��/�+,9��:"$)�- R�T ���k+,"$)*<5��)*9��:"$)�'32�V��&'*)�+K�x90'*�1�*�,9tV�/5Y�����9>'*r?�,-t'7-��A)��*2:�gt"$�1;x'?;�;e�1�,-�-i'5)�;j;��,9�����U%7�A)��,-\�© �90�����1�k�:-�'(V��&'*)�+K�j'39�9>��'?9�'?;�;e�1�,-&- Z '7-�+,����%7�o"$�1�:�*�A)�'?2:2:@.�A)*9&��)�;��,;j ["$�t-��A)��*2:��:-�-0/��J���_"$+,�,-�-&"$�1- R� I�9���)�;��A)��j9>���(V���'*)�+,�W9>'*�1�5�,9iV�/5Y�����9�"x;��,9��,+,9%7/�2:9��A��2:�6V���'*)�+,���,-k�A){'jV�2:"�+Kr�"? ��A)�-�9>��/�+,9&��"�)�-k��-\ l'?�A�12:@-�9>�&'?�:�$�*9_ #"$�_g�'5�1; R a "$)59��k�,9i'?2 R | Ù&� ���1"���"*-��7'*)j�A)59����12:��'z<*�,;{V��&'*)�+K��9>'*�1�5�,9�V�/5Y�����gi�����1�o9>���)$/�%7V�����"? V�'*)�r5-��:-t�,^]/�'32e9�"o9>���i)�/�%cV����w"? ��A)�-�9>�&/�+,9��:"$)�-��A)6'�+�'?+,����2:�4)�� Rtv )�9>���:-tg�'�@ Z '32�2�2:"$+�'?9&��"�)�-��A)�9>���� #�,9�+,���,;+�'?+,���i2:�A)��k+�'*)xV��\+K���,+,r?�,;� #"���V���'*)�+,���,-t�A)6��'*�&'?2:2��,2 R L T ���k'?;�;e�1�,-�-w"? �9>�������1-�9��A)�-�90��/�+,9��:"$)x�A)(90���i+�'?+,���2:�A)��c�:-i/�-&�,;.9�"7�A)�;��,Ij9>���\���1-�9\V�'*)�r ��9>���'?;�;e�1�,-�-�"? 90���k-��,+,"$)�;j�A)�-�9>��/�+,9&��"�)j�A)�;��,I$�,-k90���k-��,+,"$)�;.V�'*)�r �'*)�;j-�"�"$) R©Q

®t'*�&�1�A)��=%J��-&-��,- Z 9>���.V��&'*)�+K�X9>'*�_�*�,9cV�/5Y����(���1"?<��:;��,-6'?2:2t"? i9>���jV���'*)�+,�H�A)5 #"$�&%('?9��:"$)X+,"$)59>'?�A)��,;F�A)'j+�'3+K���(2:�A)�� R.T ���:-o�4)5 ["$��%�'?9��:"$)G%7/�-�9V��6+,"$%7V��A)��,;Hg��:9>�G%7/�2:9��A��2��.V��&'*)�+K�X���1�,;��:+,9��:"$)�-(9�"j;��,9����&%7�A)��91gt".9>���A)��*- u gi���:+,�H�A)�-�9>��/�+,9��:"$)�-x�A)H9>���x [�,9�+K���,;F2:�A)��{'5�1�6<?'?2:�:;�'*)�;Fgi��'39c�:-(90���q)��,I�97 [�,9�+K�H'?;�;e�1�,-&- R� '?9�+,���A)������1�,;��:+,9��:"$)�-t9�"\9>���,�A���A)*9&��)�;��,;6V���'*)�+,���,-��1�,^�/��4�_�,-P->���,+,�A'?2�2�"5�*�:+�'` #9���� 9>����V���'*)�+,�o9>'*�1�5�,9�V�/5Y���� Ra "$)�+,����90/�'?2:2�@j90����-�2�"5�*�:+k-�+�'*)�-�9>���kV���'*)�+,�x�A)5 #"���%('?9��:"$)� l�1"$% 9>���\���1-�9�V�'*)�r�9�"79>���\2A'?-�9iV�'*)�r�+,"$/�)59��A)��V���'*)�+,���,- R�T ����-t+,"$/�)59��A)��(��'?-�'*)7�A)������1��)59i�1�A����2:�k�0Y��,+,9�g\����+,����-�)�"$)59>�1�:<��A'?2� #"$��2A'*�1�*���w+�'?+,���i2:�A)��,- RtT ���2:"*�*�:+;��A'?����'*% �A)jNP�:�$/��_� Ù �7-0��"`g�-�'���"*-�-&�4V�2:�7�A%(��2:��%7��)59>'?9��:"$)Wgi�����1�V�'5)�r*-k'*�1�k+,"$/�)59��,;j�A)j���1"$/���-�"? ["$/��t9�"(�1�,;e/�+,�o9>���c'*%J"$/�)*9t"? ��1�A����2:� R�v P #"�/��t�:-i)�"*9�->/�x+,����)59 Z �,<*��)j%7"$�_�jd�2:"$"$rz'*����'?;�fx+�'*)jV��7/�-��,; R

� �6)�"?g����1�,-���)59c'j;��,90'?�:2��,;F�A%(��2:��%7��)59>'?9&��"�)G"? �9>���x® T ® 2�"5�*�:+ RqT ���6��/�����"5-��6"3 �90����-o2:"*�*�:+6�:-79�"+,"$%7V��A)��q%7/�2:9��A��2:�qV��&'*)�+K�X���1�,;��:+,9��:"$)�-7g��:9>�GV���'*)�+,�h�A)5 ["$��%('?9&��"�)W p�_"$%m9>���(® T ® 9�"j;��,9�����%J�4)��xgi���:+,��A)�-�9>��/�+,9&��"�)�-i�A)j90���\ #�,9�+,���,;.+�'3+K���k2:�A)��('*�1�k<`'32��:;G'*)�;j9�"x���1"$;e/�+,�o9>���)��,I�9� [�,9�+,�j'?;�;e�1�,-�- R

T ����A%(��2:��%7��)59>'?9��:"$)G'3-�->/�%7�,-'�+�'?+,���c2:�A)��(-��:8,�("3 ٠�(�A)�-�90��/�+,9��:"$)�-'*)�; �jV���'*)�+,�.���_�,;���+,9&��"�)�-c�����+,@�+,2�� RtT ���\ ["*2:2:"`g��4)��j)�"*9>'39��:"$)j'*)�;.-&����)�'?2:-�'*�_��/�-��,;W�A)j�,I����1�,-�-��:"$)�-k'*)�;.2:"*�5��+o;��A'?�$��'*%J- u

��� u ® T ®�V�'*)�rx)$/�%7V���� Z '?2:-�"x�A)�-�9>��/�+,9��:"$)W��"*-&��9&��"�)j�A)j9>���k+�'3+K���o2��A)�� R � ��'5)��*�,-t l�1"$% � 9�" Ù � R������� u ®t'*)�r � "? �9>���q® T ® �A)�;��:+�'?9��,-x'.���:9 Rhv )X"*9>�����kgt"$�_;�- Z 9>�����_�(�:-J'hV���'5)�+K�G'39�A)�-�9>��/�+,9&��"�)��"*-��:9��:"$) � "? P9>���k+�'?+,���2:�A)�� R

���� � ������ E u ®w�:9�- ¯ 90���1"$/��$� �W"? \9>���( [�,9�+,�G'?;�;e�1�,-&-J��"*�A)*9�9�".9>�������1-�97<?'?2:��;F�A)�-�90��/�+,9��:"$)H�A)H9>���+�'?+K���k2:�A)�� R

���� u�v P-��,9 Z 90�����1�k�:-�'7<?'?2:�:;=V��&'*)�+K�j'39��A)�-�9>��/�+,9��:"$)W��"*-&��9&��"�) � �A)�9>���k+�'?+,���2:�A)�� R

� C /�� u�v -��,9 Z 9>�����1�k�:- ¢ ¥ « ­ ¢ ªK¥ "�)��k<`'?2:�:;GV���'*)�+,�j���1�,+,�,;��A)��j9>���k�A)�-�9>��/�+,9��:"$)W'?9i��"*-��:9��:"$) � R

����� C u�v P-��,9 Z 9>�����1�'*�1� ¢ ¥ « ­ ¢ ªK¥ 91gt"7<`'?2:�:;{V���'5)�+K���,-k���1�,+,�,;��A)��j9>���k�A)�-�9>��/�+,9&��"�).'?9i��"*-��:9��:"$) � R

������� ��� uwv �-��,9 Z 9>�����_�'*�1� ¢ ¥ « ­ ¢ ªK¥�9>���1�,�k<?'?2:��;GV���'5)�+K���,-k���1�,+,�,;��A)��690����A)�-�9>��/�+,9&��"�).'?9���"5-��:9��:"$) � R

� ��! u NP�A�1-�9\V���'*)�+,�j���1�,;��:+,9��:"$) R

� � � u* �,+,"$)�;hV���'*)�+,�j���1�,;��:+,9��:"$) R

� ¯

� � E u�T ���A�1;hV���'*)�+,�j���1�,;��:+,9��:"$) R

��� u � '?-0r6V��:9� #"$�w9>���k�A)�-�90��/�+,9��:"$)h'?9���"*-&��9&��"�) � �A)j9>���k+�'?+,���k2:�A)�� R

������� ukv �9>���:--��:�$)�'32P��-o-��,9 Z 9>����9>'*�1�*�,9k'?;�;e�1�,-&-\ p�1"�%}V�'*)�r � "? �90���J® T ® �:-/�-��,;H'?-k9>���6)��,I�9 #�,9�+,�j'?;�;e�1�,-&- R

T ����"�/�9>��/�9�-P"? 9>���t2�"5�*�:+i'*�1��'kV��:9�<*�,+,9&"$���A)�;��:+�'?9��A)��7<`'32��:;x�A)�-�9>��/�+,9��:"$)�-t'*)�;(9>����)��,I�9� #�,9&+K�7'?;�;e�1�,-&- RT ���6V��:9o<*�,+,9�"$��+�'*)GV��(;����1�:<*�,;h l�1"$%m9>���(%('3->r.V��:9�- � Rcv �90�����1�7��-7'x9>'*r?��)hV���'5)�+K� Z 9>���6)��,I�9\ #�,9�+,�'?;�;e�1�,-&-��:-i-��,2:�,+,9��,;h/�-��A)��690��� ����� -��:�$)�'32�- R �����1�'*�1�k90���c)��,+,�,-�->'5�1@6�,I����1�,-�-&��"�)�- u

�� � � �� L ��� �� � ���� � E QL Ù�Q� ��L � ! C�/�� G � � � � C G ��� � � � Q G�L � � � ������ E QL ¯*Q

����� � �� L C�/ � ��! G C�/�� � � C ��! � � G � � C � ��� � � ��! � � � E QL � Q

� "*-&9�"? e9>���t+,"$%(��2:�,I��:9!@o�:-P�4)o+,"$%���/�9��A)�� C /�� Z ��� C Z '*)�; � ��� � � #"���'?2:2 � R%� -&-���)*9&�4'32�2:@79>���:-��4)5<*"*2:<*�,-+,"$/�)59��A)��j9>���c)�/�%7V����\"? �<?'?2:�:;BV���'*)�+,���,-� l�1"$% 9>���o2��0 [9>%7"5-�9�V�'5)�rj9�"(90���J�_�����*9>%J"*-�9iV�'*)�r RkT ���c�_�4����2:��0Y��,+,9k�A)*9>�_"$;e/�+,�,-o9�"$"j2:"$)��.'x;��,2A'z@h�� �+,"$/�)59��A)��{���1"�+,�,�,;�-"�)��JV�'5)�r.'?9'x9��A%7� R NP�:�$/��1� Ù �x->��"?g�-k��"?g�.V�'*)�r5-k+�'*)hV��7�$�1"�/����,;G9�"5�*�,9>������ #"$��+,"$/�)59��A)��.V���'*)�+,���,- Z '5)�'?2:"*�*"$/�-\9�"j+�'*���_@j2�"�"$rz'*����'?;G2:"*�*�:+ R7T ���;��A'?�$��'5% ->��"?g�-���"?gF9>���i�_�4����2:�k��'?9>�.L#->��'?;��,;6�1�,�5��"�) Q -��,�,-w"$)�2:@ ¯ '?;�;��:9��:"$)�'?2��$'?9��t2:�,<*�,2:-t�,<*���1@ �V�'*)�r5- R

���

b A b B Cb Db

b Bb A+

b ACb

b ADb

b Ab B

b BCb

b BDb

CbDb

b Ab B

Db

b Ab B

Cb

b ACb

Db

b BCb

Db

Dbb C

b Bb A

++

+

Cbb B

b A++

thre

e A

two

A

one

A

one

B

thre

e B

two

Bon

eC

two

C

thre

e C

two

D

thre

e D

one

D

two

OU

T

thre

e OU

T

one

OU

T

one

IN

two

IN

thre

e IN

NP�:�$/��1� Ù � u a "$/�)59��A)��x9>���()$/�%7V�����"? �V���'5)�+K���,-kg��:9>���A)G'J�$�1"$/��W"? �q® T ® V�'*)�r5- RiT ���c-0��'?;��,;G�1�,�*�:"$)���:�$��2:�:�$�*9&-k9>���+��1�:9��:+�'?2���'39>� R�v �9>�����_�c'*�1� Ù �(�A)�-�9>�&/�+,9��:"$)�-k�A).'�+�'?+K���o2:�4)�� Z '*)�;{����)�+,� Ù ��® T ®�V�'*)�r5- Z�("? P9>���,-��k2:"*�5��+7V�2:"$+,r*-k'*�1�k;e'3��-&@*Ul+,��'?�A)��,;h9�"*�*�,9>����� R

���

��� � % ���"$� �&� �!� � �'� � � ���� � ��� ����! �"�� 2���� � " ����

y��_�,;���+,9&�4)��F90���=)��,I�9x-��,^]/���)�+,�h"? cV�'3-��:+{V�2:"$+,r5-j9�"DV��W #�,9�+,���,;��_�,^]/��A�1�,-.���1�,;��:+,9��A)���9>���."$/�9&+,"$%7�,-("? %7/�2:9��A��2��x�A)*9&���1<*��)��A)��{V���'5)�+K���,- R7T ���6���_�,;���+,9&"$�k%7/�-�9'?2:-�".V��x��������2�@H'?+,+�/���'?9��7-�"x9>��'?9k90��� [�,9�+,�h/�)���9+�'*)o->���,+�/�24'39��i��'?-�9P%('*)5@cV��&'*)�+K���,-P9&"� ["$��% '�2A'*�_�*� Z '?+,+�/���'?9&��g��4)�;�"?gF"? e�A)�-�90��/�+,9��:"$)�-P ["$� 9>���t�,I$�,+�/�9&��"�)��)��*�A)�� RT ���(%7/�2:9��A��2:�qV���'5)�+K�W���1�,;��:+,9�"$�/�-&�,;{90���1"$/��$��"$/�9\9>���:-��'*�����\��-k90��'?9����_"$��"*-&�,;=V5@ � ���h�,9k'?2 R| ¯S�!R ®w�0 #"��1�j;��,-�+��1�AV��A)��F9>���.%7/�2:9��A��2��GV���'5)�+K�F���1�,;��:+,9�"�� Z �:9(�:-j)��,+,�,-�->'*�_@B9�"GV��1�:�0�e@��1�,<��:�,g 90���j-��A)��*2:�V���'*)�+,�j���1�,;��:+,9�"$��"$)xgi���:+,�j�:9\��-\V�'?-��,;j�x9>���k+,"$���1�,2A'?9&��"�).���1�,;��:+,9�"$��| � �!R

T ���c+,"����1�,2A'?9��:"$)h���1�,;��:+,9�"$�\�:-k->��"?gi)��A)hNP�:�$/��1� Ù�~�R a "$�&�1�,2A'?9��:"$)h���1�,;��:+,9��:"$)G/�-��,-k90��� l'?+,9\9>��'?9\9>���"$/�9�+,"�%7�("? i'.V��&'*)�+K�X9���)�;�-79�"hV��x�4)5��/���)�+,�,;�V*@h9>���x"$/�9�+,"�%7�,-"? iV���'5)�+K���,-7���1�,+,�,;��A)��G�:9 R.v 97�:-7"$)��"? �)��A)�� T gt"?Ul2:�,<*�,2 ( ;e'*��9&��<5�.®��&'*)�+K�Hy��_�,;���+,9&��"�)F-�+,����%7�,-.| ~S� '?2:2t"? igi���:+,��/�-��x91gt".2:�,<*�,2:-6"3 ����:-�9�"$�1@9�"6'3+K���:�,<*�(���:�$�.'3+,+�/���'?+,@ R�T ���o�*2:"$V�'?2PV���'*)�+,�.���:-�9�"$�_@.�1�,�*�:-�9����7L[®t��� Q '*)�;.90���c��'?9�9&����).���:-�9�"��1@j9>'*V�2:�L[yw� T�Q �1�0�e�,+,9i90���91gt"c2:�,<*�,2:-k"? ����:-�9�"$�_@ R-( ®�����.V��:9�-\�4)W2:��)��*9>�Wr?�,����-k'(�1�,+,"$�1;W"? P9>���"$/�9&+,"$%7�,-�"? 9>���(2A'?-&9��XV���'*)�+,���,- R�( -c)��,g V��&'*)�+K���,-('*�_�(��)�+,"$/�)59����1�,; Z 9>���,�A�o"$/�9�+,"$%7�,-7'*�1�(-0���© [9��,;H�A)*9�"W9>���x2���'3-�9-��:�$)����e+�'*)59V��:9k"? 90���c®t��� R�T ���cyw� T �:-�'�9>'*V�2:�7"? ¯��c¯ U!V��:9k+,"$/�)59����1- Z "$)��o+,"$/�)59����t ["$�t��'3+K�W��"*-�-&�4V�2:���'?9�9&����)k�A)o9>����®t�� R*T "����1�,;��:+,9P9>����)��,I�9 V��&'*)�+K� Z 90����®t���H�:-�/�-��,;79�"\�A)�;��,I9>����yw� T '*)�;c'\���1�,;��:+,9��:"$)�:-%('?;��(V�'?-��,;X"$)j9>���7<?'?2A/��6"? �90���c+,"����1�,->��"$)�;��A)��{y�� T ��)59>�1@ Rkv )h-0/�%(%('*�1@ Z 90���c+�/��&�1��)*9k���1�,;��:+,9��:"$);�������)�;�-\"$)hL Ù�Q 9>������'39�9�����)7"3 ��6���_�,+,�,;��4)��jV���'*)�+,���,-LO9>���k®t��� QSZ '5)�;=L ¯5Q 9>���kV�����'z<���"��t"? �9>���kV���'*)�+,�9>���\2A'?-�9t [�,g�9��A%7�,-�9>��'?9t��'?9�9����&)(g�'?-t��)�+,"$/�)59����1�,;BL ¯ U!V���9�+,"$/�)*9&�����A)x9>���yw� T�Q,R*� ����)x9>���\"$/�9�+,"$%J�i"? 9>���7V���'*)�+,�j�:-r$)�"?gi) Z �:9i�:-/�-��,;W9�"j/���;e'?9��o9>���7->'*%7� ¯ U!V���9k+,"�/�)*9������A)W9>���cyw� T LO�A)�+��1��%7��)59i�� t9>'*r?��) Z;��,+��1��%7��)59\�© �)�"*9�90'*r?��) Q,R

k2 2-bit counters )(

shift inoutcomes

update counterwith outcome

k bits( )

single prediction

BRANCH HISTORY REGISTER

PATTERN HISTORY TABLE

NP�:�$/��1� Ùz~�u a "$���1�,2A'?9&��"�).V���'*)�+,�j���1�,;��:+,9�"$� R

( ;e'*��9��A)��(90������1�,;��:+,9�"$�w ["$�t%7/�2�9&�4��2:�(V���'*)�+,�j���1�,;��:+,9��:"$)�-\�A)x"$)��k+,@$+,2:�7�1�,^]/��A�1�,-\+,��'*)��*�A)��6V�"59>�x9>������5@$-��:+�'?2P2A'z@*"$/�9\"? �9>���7y�� T '*)�;.90���cg�'z@x9>��'?9\9>���7-�9>��/�+,9>/��_�,-�'*�_�c/���;e'39��,; R a "$)�+,����90/�'?2:2�@h9>���7y�� T%7/�-�9V��x'?+,+,�,-�-��,;B%7/�2:9��A��2:�j9��A%7�,- Z ��'?+,�h9��A%7�x/�-��A)��.->/�+,+,�,-�-&��<5�6->���� [9�-"3 �9>���(®t��� '?-'*)h�A)�;��,I R6v 9k��-�A%(����'?+,9&��+�'32�9�"('?-&->/�%7�k9>��'?9\%c/�2:9��A��2:�7-��,^�/���)*9��A'?2P'?+,+,�,-�-&�,-�"? P9>���cyw� T +�'5)jV��c%�'?;��k�A){'J-��A)��*2:�+,@�+,2�� RNP�:�$/��1� ¯�� ->��"?g�-�"�)����"*-�-&�4V�2:�(�A%(��2:��%7��)59>'?9&��"�)."3 9>���%7/�2:9��A��2:�6V���'*)�+,�j���1�,;��:+,9�"$� R�T �����1�c'5�1�k91g�"(r?�,@ [��'?9>/��1�,- R NP�A�1-&9 Z 9>���.y�� T ��'?-(%c/�2:9��A��2:�{�_��'?;D��"$�19�- Z "�)��x #"$����'?+,�F���1�,;��:+,9��:"$) R * �,+,"$)�; Z 9>���jy�� T ��-"$�1��'*)��:8,�,;G->/�+,�h9>��'?9k' ¡ �*�F"? t+,"$/�)*9&���1-k�:-c�1��'?;W l�1"$%m��'?+,�h��"$�_9 RcT ����-o�:-cV��,+�'5/�-��690���c2:"?g "$�1;����oV��:9�-"? �-0/�+,+,�,-�-��:<*�c®t����A)�;��:+,�,-'*�1�\�A)�+,"$%(��2:�,9�� RtT ���,-��o2�"?g�"$�1;�����V���9&-i'*�1�\"$)�2:@.r$)�"?gi)x'z [9����t'?+,+,�,-�-��A)��x9>���y�� T �59>���,@o #�,�,;j'k+,��'?�A)x"? �%7/�2�9&�4��2:�,I�"$�1-�'z [9����P90���iy�� T 9�"%('*r?����)�'?2 -��,2:�,+,9��:"$)�- R�v )�-�9���'?;x"? �/���;e'?9&�4)��9>���k-�90��/�+,9>/��1�,-tg��:9>�xV���'*)�+,�h�*¦�¥[£>�*¬7­Sª Z 9>���,@j%7/�-�9�V��k->���,+�/�24'39��:<*�,2:@{/���;e'39��,;jg��:9>�jV���'*)�+,�J¨ ¡ ­>�*�O£�¥[�O�*��ª RT ���.®t���)��,�,;�-69&"{-0���© [9(�A)F���1�,;��:+,9��:"$)�-.V��,+�'*/�-��j"$/�9�+,"�%7�,-('*�1�j-��A%(��2:@�/�)�'z<`'?�:2A'*V�2:� R � )C9>���6"59>�������'*)�; Z -0���,+�/�2A'?9��:<*�,2:@{/���;e'?9��A)��x9>���y�� T ��-\)�"*9i'o-�9>�1�:+,9i�_�,^]/��A�1��%7��)59 Z V�/�9� p�1"�% '7����/��1�:-�9&��+7-�90'*)�;e��"*�A)59�:9k�:-c���1�0 [�����1�,;h"?<*���\/�-��A)��.-�9>'32��(���:-�9�"��1@ Rv )W9>���7�,<*��)59k9>��'?9k'jV���'*)�+,�W�:-%7�:->���1�,;��:+,9��,; Z 9>���7-�9>��/�+,90/��1�,-

���

->��"$/�2:;�V��.�1����'?�A�1�,; R �t����'?�A�1�A)��H9>���q®t�� �:-(��'?-��:2:@F;�"$)��jV*@F%('?�A)59>'?�A)��A)��B'W-��,+,"$)�; Z d��*"*2:;���)�fG®t���gi���:+,�h�:-c/���;e'39��,;Gg��:9>�h90��/��(V���'*)�+,�h"$/�9�+,"$%J�,- � gi����)G'j%7�:->���_�,;���+,9&��"�)H��-o;��,9��,+,9��,; Z 9>���7�*"*2:;���)G®t����:-i2:"$'3;��,;{�A)59�"(9>���o->���,+�/�2A'?9&��<5�J®t���L[�1"*2:2:�A)��qV�'3+Krx9>���o-�9>'?9&� Q,R �t����'?�A�1�A)��j��)59>�1�:�,-\�4)W9>���7y�� T �:-�%J"$�1�+,"$%(��2:�,I��e�:9�gt"$/�2:;hV��gt"$�_9>�*g\����2:�k9�"�-�9>/�;�@x9>��������� ["$��%�'*)�+,�k�A%(��'?+,9\"? ����*¥��1����'?�A�1�A)��jy�� T ��)59>�1�:�,- R

b

b13:2

b

13

b11:0

b0

b1

12:1

b0

b0

p0

p0

p

b

p0

p2

p1

1

1214 2-bit counters

212( )x 4 arrayarranged in

PATTERN HISTORY TABLE

GLOBAL HISTORY REGISTER

4:1 MUX

4:1 MUX

4:1 MUX

3 branch predictions

NP����/��1� ¯���u a "$�&�1�,2A'?9��:"$)jV���'*)�+,�.���_�,;���+,9&"$�i'3;e'*��9��,;x ["$�t%c/�2:9��A��2:�(V���'*)�+,�.���1�,;��:+,9��:"$)�-\�A).'7+,@�+,2:� R

� ����)� [�,9�+K���A)��� p�1"�%m9>���(�A)�-�9>��/�+,9&��"�)h+�'?+,��� Z +,"$���_�,+,9��'*)�;�2:�4)��h"? �V���'*)�+,���,-c�1�,^�/��A�1�,-+,"�"$�1;��A)�'?9&��"�)"? �90����%7/�2:9��A��2:�cV���'*)�+,�j���1�,;��:+,9�"$� Z V��&'*)�+K��9>'*�_�*�,9�V�/5Y���� Z '*)�;j;��,+,"�;��k2:"*�*�:+'z [9����w9>���i�A)�-�90��/�+,9��:"$)x2A'?9�+,� RT ���\ ["*2:2:"`g��4)��j��/�2:�,-k���1"?<$�:;��90����-\+,"�"$�1;��A)�'?9��:"$) R

� v c'GV���'5)�+K��%7�:-�-��,-x�4)C9>���{V��&'*)�+K�C9>'*�1�5�,96V�/5Y���� Z 90���{V���'*)�+,�F�:-j'*/�9�"$%�'?9��:+�'?2:2:@����1�,;��:+,9��,;�)�"*99>'*r?��) R2* �A)�+,�j9>���(V���'*)�+,�X��-7)�"*9k;��,9��,+,9��,;F/�)59��:2�9>���(;��,+,"�;��x-�9>'?�*�.L['x+,@�+,2:�q'` #9����� [�,9�+,���A)�� Q,Z 9>���-��A%(��2:�,-�96'?2:9�����)�'39��:<*�j�:-(9�"G+,"$)59��A)�/��x #�,9�+,���A)��G-��,^�/���)*9&�4'32�2:@ R � <*��)H�� �90���.���1�,;��:+,9�"$�(���1�,;��:+,9��,;�'9>'*r?��)xV���'*)�+,� Z �:9i�:-\9>�1��'?9&�,;q'?-\)�"*9�9>'*r3��) R

� T ���(���1�,;��:+,9�"$�k�:9�-&�,2© \;�"$�,-7)�"*9r$)�"?g gi����)=9�"j->���� #9o9>���6®t�� Z '*)�;BV5@G��"`g�%�'*)*@hV��:9�- Z -&�4)�+,�x�:9��'?-)�".r$)�"?g�2:�,;��*��"? �V���'*)�+,���,-�A)h9>���o [�,9�+,�h-�9>�1��'5% RT ���(���1"$V�2:��% ��-o�:2�2A/�-�90��'?9��,;G�A)hNP�:�$/��_� ¯$Ù*Rv �'32�2�V��&'*)�+K���,-k�A)h90��� [�,9�+,���,;G2:�A)��6���:9�A)h9>���(V���'*)�+,�W9>'*�1�5�,9�V�/5Y���� Z 9>�����_�c�:-)�".���1"�V�2���% �.9>���)$/�%7V�����"? �V��:9�-k9�"�->���� #9k9>���7®t��� V5@.�:-\�,^]/�'?2�9�"x9>���c)�/�%7V����\"? �V��&'*)�+K���,-k/��W9�"j'*)�;.�A)�+,2A/�;��A)��9>���7���1-�9o9>'*r?��)XV���'*)�+,��LONP�:�$/��1� ¯$Ù L[' Q�Q,R ��"`gt�,<*��� Z �� i-�"$%J�6V���'*)�+,���,-;�"h)�"*9c���:97�A)G9>���jV���'*)�+,�9>'*�1�*�,9�V�/5Y���� Z 9>���c���_�,;���+,9&"$��g���2:2�)�"*9\r$)�"?g '*V�"$/�9�9>����% /�)59��:2���9\�:-k9�"�"(2A'?9��qL#9>���;��,+,"�;��-�90'?�*� Q,R( -6'W+,"$)�-&�,^]/���)�+,� Z 9>���.®t��� ->���� #9&-(2:�,-�-qV��:9�-�9>��'*)F�1�,^�/��A�1�,; Z '*)�;�+,"�/�2�; � ¢5«�«�� ­,¤$�O�e�j90���x #�,9�+,�/�)���9x�A)F->/�V�-&�,^]/���)596+,@�+,2:�,-=L#NP����/��1� ¯$Ù L[V Q&Q,RFT ���.-�"524/�9&��"�)F�:-69&"='32�g�'z@�-6r?�,���H9>���h®���m'*����'?;LONP�:�$/��1� ¯ Ù LO+ Q�Q,RkT ��'39i�:- Z �� �90���J���_�,;���+,9&"$�k�:-k+�'*��'*V�2:�("3 � ���1�,;��:+,9��:"$)�-c�����\+,@$+,2:� Z �:9k->��"�/�2�;X-�9>'z@/��x9�" � V���'5)�+K���,-i'5����'?;."? �9>���k [�,9�+,�x-�9>�1��'*% R

� T ��� � ���1�,;��:+,9��:"$)�-�%7/�-�9�V�����'3�4�_�,;(g��:9>�79>���,�A�P�1�,-0���,+,9��:<*�iV��&'*)�+K���,- R ( �$'?�A) Z 9>�����1�t�:-�)�"���1"$V�2:��% �� '?2:2eV���'*)�+,���,-��A)79>���t [�,9�+,���,;(2:�A)������:9��A)790���iV���'*)�+,�o9>'*�1�*�,9PV�/5Y������9>�������1-�9����1�,;��:+,9��:"$)��*"��,-P9�"k9>������1-�9PV���'*)�+,� Z 9>���t-��,+,"$)�;(���1�,;��:+,9��:"$)79�"\9>���t-��,+,"$)�;(V���'5)�+K� Z '*)�;7-�"\"$)jLONP�:�$/��1� ¯*¯ L[' Q�Q,R ��"`gt�,<*��� Z �� '*)*@xV���'*)�+,�6%7�:-�-&�,-��A)x9>���V���'*)�+,�(90'*�1�*�,9�V�/5Y���� Z ���1�,;��:+,9��:"$)�-\+�'*)(�5�,9cd&->r?�,gt�,;�f.LONP�:�$/��1� ¯*¯ L[V Q�Q �->/�V�-��,^�/���)*9tV���'*)�+,���,-�'*�1��'?-�-��:�$)��,;x���1�,;��:+,9��:"$)�-t�4)59���)�;��,;� #"������1�,<��:"$/�-�V��&'*)�+K���,- R T �����1���:-�)�"kg�'z@9�"c'z<*"*�:;x9>���k���1"$V�2:��% Z '?2:9>��"�/��$�6�_�,+,"`<5���1@(-�9�����-t+�'*)xV��k�A)��:9��A'?9��,;W�A)x9>���i;��,+,"�;��-&9>'?�*� R ��"?gt�,<*��� Z9�"(V��+,"�)�-��:-�9���)59�g��:9>�j90���\���1-�9i��/�2:�7'*V�"?<*� Z ���_�,;���+,9&��"�)Fd�->r3�,g�f(�:-�-��A%(��2:@.9&"*2:����'?9��,; R

���

� v %7"��1��9>��'*) � V��&'*)�+K���,-�'*�_��;��,9��,+,9��,;x�A)x9>���t [�,9�+K���,;x+�'?+,���i2:�A)�� Z "$)�2:@(�A)�-�9>��/�+,9��:"$)�-�/���9�"90��� � <�>V���'*)�+,�{'5�1�->/�����2:�:�,;H9�"690���c;��,+,"�;���� R Ne�,9�+,���A)��j"? ��A)�-�90��/�+,9��:"$)�-'z [9�����9>��� � <?> V���'5)�+K�W�:-k;��,2A'�@5�,;/�)*9��:2�90���{)��,I�9(+,@$+,2:� R T ���:-q��/�2:�W��-x�A%(��"5-��,;�-�"G9>��'?9�9>���.���1�,;��:+,9�"$��;�"$�,-j)�"*97 l'?2:2kV������A)�;�LO�:9�-9>���1"$/��$����/�9���-�2��A%7�:9��,;h9�" � ���1�,;��:+,9��:"$)�-������+,@$+,2:� Q,R

, "*9��:+,�9>��'39����_�,;��,+,"$;��7�A)5 #"���%('?9��:"$)x�A)�9>����A)�-�9>�&/�+,9��:"$)j+�'?+,���c�����19>'?�A)��A)��x9�"(9>���)�/�%7V����\'*)�;j2:"$+�'?9&��"�)"? �V���'*)�+,���,-�+�'*)W���,24��9>���\ [�,9�+K�j%J�,+K��'*)��:->%m'7�$�_��'?9t;���'?2 R

hit in BTB =

0

1

3

4

2

7

8

9

11

13

12

10

15

14

labeled with

predictions (0 or 1)

fetched branches are

5

6

branch at this

position=

010predictions

1

0

number of bits to shift BHR by

number BTB hits 3

2

0

0

1

3

3

instructions in fetched line

001

��� ��� % ���� #� �����("��9 ($������ ��(���������� ��("�. � ��9��� �$ �!#$��� �������.� ���$�����(�� ��4�!��- �� ���������������9 �! � �����,��($��9���-��.���,���� ��(��. ���% � � (�� �� ���-,#$����9 ���:9�($��%����(�������� #�-�/

0

3

1

2

6

7

8

5

4

12

9

14

prediction of thisbranch is delayed1 cycle since it missesin BTB

consequently,the predictionfor this branch

11

13

10

15 this cycleis unavailable

010predictions

0

number of bits to shift BHR by

number BTB hits

0

0

1

3

3

instructions in fetched line

1

1

1

100

�1#+���1� ��(���9 ����� �$��� ��("� 9���������#$ �!�"��(3��9������$�������������7��� ��(����$ 9��6��-���.���39����"��������7��9�9���97��� ��(��������'/ �'9�� ��9!������ �!�$��- &7�� �������������� ��9�4�0�$���� ��("�"�� 9�� ��-��.��� ���� ��(��#����� ��99�($��% ����� #�- �����- &4#$����/$� � ��(��4�"������-��.����� ��("� �����������.=����������������9 ��(������("� �#%'&�(:� 9���������*#� ����8( �6����*����������������!� ��("�. � � � 54�"�)� #$ �!�"��(���9�/��($��9:�������9'%��!�*7�"�)� #� ����8()�� ����������������9�7#+�"� ��(�� �� ����������� ���!� �����-�$ � ,������,5$/�-/.102&13406587 5 9:&106583<;�0>=4?@()?�7A.134BDC E!&13:7�=F583"0>=4?'G�EH()0'7 I�7J>?�7�&1KL()?(0>=4?M9 EN?�B1587 06.1E�06.@O)&�J8JPC�?�=45Q34B1R

1

0

3

5

6

2

8

4

13

7

10

15

14

predictions aremade for these 3branches in the 1st

9

only the 1st branchis known about

11

12

cycle, even though

010predictions

1

0

number of bits to shift BHR by

number BTB hits

0

0

1

3

instructions in fetched line

1

3

01-

2

���!�S��($��9 ����<7�$��� 9�("� ��9 ��("�*�� ������������UT���� �$�����V��� ��� 5 #� �����("��9�(������ �%�%�������(����"�+��������������.���������:���-#$ �!�"��(���9���($����( � ���$���$�������������D���W������+��(�� �����������'9����0����/X��(�� �� �����������4�YT ��9'54�� ���������������97�!�"� 9�(���%���9'��(������� #�-=5 #$����9 ��� ��(��S�$ 9�� ��-��.������,�� � ��(��Y���( �����- & #� ����8( ��9 ����������������4#�-3��(��������'/:Z ����-S['�� ����������������9,� �7�����������)��� ��(��\�� 9��,��-��.�����9�� ��(��)��($�� �=�� �������������� ��9D�"9����=�����("�,9���������)��-��.����/

NP�:�$/��1� ¯ Ù*u+� �,9����&%7�A)��4)��h��"?g�%('*)5@{���1�,;��:+,9��:"$)�-79�"j%('*r?�('*)�;h9>�����_�0 #"$�_�J��"?g�%('5)*@hV���9&-9�"x->���� #9o9>���®t��� V5@ R

���

b b b

hit hit hit

0 0 1

predictions: 0 0 1

��� �S�1%4�!���7#� ����8(���9)($��� ��� ��("� ����������(��. �*��9 ����� �#���� �������������$�,�� ���������������9�������(4��(��.�� �������.�������#� �����("��9�/

0

b b b

hit hit

0

predictions: 0 0 1

�1#2�'� %���#$ �!�"��(�7��9�9���9 ���3��("�X�������!�$ �������������!�"9 4�!-#2��� �!�"�!��-)��9�9����!�"���)��� #$ �!�"��("��9�/

NP�:�$/��1� ¯*¯�u ( -�-��:�$)��A)��.���1�,;��:+,9��:"$)�-\9�"6V���'5)�+K���,-i'5)�;.9>������1"�V�2���% "? ����1�,;��:+,9��:"$)Fd&->r?�,g�f R

��� � � ���� % � ���

T ���k)��,I$9� #�,9&+K�('3;�;e�1�,-�-��:-w [�,;qV5@('k<*���1@72A'*�1�5� � $ 7R$T ���� ["*2:2�"?g��A)��('?;�;e�1�,-&-��,-�'*�_��+�'*)�;��:;e'?9��,-w ["$��)��,I�9 [�,9�+K�j'3;�;e�1�,-�- u

� ! ��� ­>­0� �&¢ £ � �j)�"(+K��'5)��*��A)j90���y a R

� � ­ ��¦�­��e¥[� ¢*« ! � �690���y a �A)�+��1��%7��)59��,;GV5@69>���\ [�,9�+,�jV�'*)�;�g��:;�9>� R

� � ­0£>� � ­ ¡�! � �� #�,�,;eV�'?+,rJ p�1"�% 9>���k�,I��,+�/�9��:"$)j��)��*�A)��7gi���:+,�.�1�,;��A�1�,+,9�-� #�,9�+,���A)�� R

� � � � ! � �j��"$�j�1�,90/���).'?;�;e�_�,-�-�"?Yh9>����1�,9>/���)W'?;�;e�1�,-�-�-�9>'?+,r7�� �'(�1�,9>/��&)x��-\;��,9��,+,9��,; R

� ¥ ¡!¢ £>­7¥ ¢*¡ §$­z¥��6�� �'J9>��'?+,�k+�'?+,���k�,I���-&9�- Z '*)�;j�� ���9\����9&- Z 9>���:-k'?;�;e�1�,-�-��:-\9>���k9>'*�_�*�,9t"? 90��'?+,� R

� ¥ ¡!¢ £>­ � ¢5«�« !¥O¤ ¡ �5¦�§5¤j�{�� �'�9>��'?+,�(+�'3+K���(�,I��:-�9�- Z '*)�;H�� i�:9c���:9�- Z 9>���:-J'3;�;e�1�,-�-�:-79>���7 l'?2:2�Ul9>���1"$/����G"? 9>��'?+,� R

� � � � �S¡1¢ �e£S¤6¥ ¢*¡ §$­z¥OªP�c�� P9>���® T ®F;��,9��,+,9&-�'o9>'5r?��)6V��&'*)�+K� Z %7/�-�9t-��,2:�,+,9�9>���'5�����1"$���1�A'?9��kV���'*)�+,�9>'*�1�*�,9w l�1"$% Ù "? Ù �7V�'*)�r5- R

®w@7 l'*��9>���i+��_��9&��+�'32���'39>�(�,I��:-�9�-t�A)(90��� � $ 9>�1�,�i/�-&�,;j9�"-��,2:�,+,9 Ù "? �9>��� Ù �7® T ®F9>'*�_�*�,9�'?;�;e�1�,-�-&�,- Z;e/��(9�"j90���(+,"$%(��2:�,I���91@h�A)G�5��)�����'?9��A)��.90��� � ��� � ��� ! -��,2:�,+,9o-��:�$)�'?2:-qL[�_�0 #����9�" * �,+,9��:"$) (7RwÙ�Q,R7T ���(-&�,2��,+,9-��:�$)�'?2:-t'*�1���A)�+��1��'?-&�4)��52�@�9��A%7�A)��+��1�:9��:+�'?2��*"*�A)��k l�1"$% V��:9 � 9&"V���9 Ù � R�T ����;e'?9>'5��'?9>�o�A)7NP�:�$/��1� ¯ �k�_�0�e�,+,9�-9>���:-�V5@->r?�,g��4)��k90��� � $ 9>�_�,��->/�+,�o9>��'?9 ����� � ��� � E �5"$�,-P9>���_"$/��$�%J�4)��A%('32e2:"*�*�:+ RPT �����,I����,+,9��,;�+��1�:9��:+�'?2��'?9>�=��-72A'*V��,2�2:�,; Z 9>��"$/��$�="*9>�����k+��_��9&��+�'32���'39>��-c%('z@hV��x�,I]��"*-��,;H�4)X9>���x�0Y�"$�19k9�".�1�,;e/�+,�j90���6���1�A%('*�1@"$)�� R

���

TARGET ADDRESSES FROM BTB

fall-through @TC

target @TC

SEL15:12

SEL11:8

SEL7:4

SEL3:0MUX1

MUX2

MUX3

MUX4

PC

MUX5

MUX_OTHER

muxA

muxB

seq. PC

recover PCRAS

ExpectedCriticalPath

NP�:�$/��1� ¯ � uPT ���c)��,I�9iy a � $ 2�"5�*�:+ R

� ~

��� � � � � � " � �� � �'��� ��� �� �" ������6%&!�"��'�

�������� ��� ������� �������������� �"!#����$%�

T ���V�'?-&�k�4)�-&9>��/�+,9��:"$)�+�'?+K���k;�"��,-k)�"*9����1"?<$�:;��c'5)*@x->/�����"��19t ["$�� #�,9�+,���A)��6'?+��1"5-�-�9>'*r3��)6V���'5)�+K���,- Z @*�,9��:9�:-����:�$�W������ ["$��%�'*)�+,�k�A)j"$)��7�1�,->���,+,9 u �:9i+�'*)j'32�g�'z@�-i���1"?<$�:;��'o l/�2:2�+�'3+K���k2:�A)��7g�"��19>��"? �A)�-�90��/�+,9��:"$)�-\"$�/��W9�"(9>���o���1-&9�9>'*r?��)WV���'*)�+,� Riv )."59>������gt"$�_;�- Z �:9��'*)�;�2:�,-k9>���(���1"$V�2:��%m"? kd1 l'?2:2��A)��W"?Y�f(90����,;��*�o"? �'+�'?+,���2:�A)��(V*@x91g�"3Ulg�'z@(�A)59����12:��'z<$�A)��x9>���+�'3+K��� Rw� ��90�j91gt"c+�'3+K���V�'*)�r5- Z 91g�"('?;?n�'?+,��)59�+�'?+,���2:�A)��,-k+�'*)V��7'?+,+,�,-�-��,; R

T ���1�,�7-�9>'?�*�,-k"3 �2�"5�*�:+q'*�_�c�1�,^�/��A�1�,;D'` #9�����9>���6V�'3-��7�4)�-&9>��/�+,9��:"$)h+�'3+K��� R(v 9kg��:2�2tV��(-0��"`g\).90��'?9k9>���:-2:"*�*�:+('?;�;�-%7/�+K��2:�,-�-k;��,2A'�@W9>��'*)�"*9>������+�'?+K���7;��,-��:�$)�-kg\����+,�h'?9�9���%���9i9�"x'?2:����)G)�"$)�+,"$)59��:�$/�"$/�-kV�2:"$+,r*-"? P�A)�-�9>��/�+,9��:"$)�-\�A)j9>���\ [�,9�+,�j��'?9>�GLO90���,-��'*�1�k9>�_��'?9��,;j�A)j9>���\ ["*2:2:"?g��A)��6-��,+,9&��"�)�- Q,R

T ����9>���1�,�� p/�)�+,9&��"�)�-P9>��'?9P%c/�-&9�V��������! #"$�&%7�,;('*�1��L Ù�Q %('?-0r*�A)��\"?Yq/�)�/�-��,;7�4)�-&9>��/�+,9��:"$)�- Z L ¯*Q ��"5-�-��AV�2:@�A)*9&���1+K��'5)��*�A)��c90����"$/�9>��/�9w"? �9>���i91gt"k+�'?+,���iV�'*)�r5- Z '*)�;{L � Q 2��0 [91Ul->���� [9��A)��(9>�����A)�-�90��/�+,9��:"$)�-��A)59�"9>������)�'?2�A)�-�9>��/�+,9&��"�)H24'39�+K�HV5@='5)B'*�&V���90��'*�1@G'*%7"�/�)*9 RWT ���7���1-�9791gt"x p/�)�+,9&��"�)�-6'*�1�(90�1�:<$�A'?2 Z '*)�;H9>��/�-7"$)�2:@G9>���9>���A�1;� p/�)�+,9��:"$)��:-i;��:-�+�/�-�-&�,;{�����1� R

NP�:�$/��_� ¯ �7->��"?g�-t9>���k9>���1�,�� p/�)�+,9��:"$)�-�9>��'?9i'*�_�������� #"���%7�,; R ( 9����1-�9t�:9i%7�:�$�59�-��,��% 9>��'39�9>���k->���� [9���� l/�)�+,9��:"$).'?;�;�-\'*)�"*9>�����w l/�2:2�-&9>'?�*�\9�"(9>���\ [�,9�+,�j/�)��:9i2A'?9���)�+,@ RtT ���:-\��-\)�"*9�9>���k+�'?-&�k ["$�w9!gt"(�1��'?-&"$)�- u

� * ���© [9��A)��j2:�0 #9kV5@q'*)W'*��V��:9>��'5�1@q'5%7"$/�)59�+�'*).V��7;�"$)��^�/��:9��k l'?-�9i/�-&�4)��.'�V�'*���1�,2�Ul->���� [9���� R NP�:�$/��_� ¯ �->��"?g�-�' Ù U!V���9o-�2:�:+,�6"? t9>���7->���� #9&��� R(v �9>�����1�('*�_� Ù �x�4)�-&9>��/�+,9��:"$)�-o�4)X'x+�'?+K����2��A)�� Z 9>��� Ù U!V���9k-&2��:+,��1�,^]/��A�1�,- ¯ ���x9>�&'*)�->%7�:-�-��:"$)=�$'?9��,- R ( l/�2:2�->���� [9�����1�,^�/��A�1�,-2� ¯ "? t9>���,-��(2:"*�*�:+jV�2:"$+,r*-jLO-��A)�+,�x9>�����1�'*�1� � ¯ V��:9�->�?�A)�-�9>�&/�+,9��:"$) Q,Z ["$�i'�9�"*90'?2�"? � ZwÙ�~5¯ 9>��'*)�-0%7�:-�-��:"$)W�$'?9��,- R�T ���7;��,24'z@j�:-%7�A)��A%('?2 u ;e'?9>'-��:�$)�'?2:-���'3-�-�9>���1"�/��$�("�)�2�@ Ù 9>��'*)�->%J��-&-��:"$)x�$'?9�� Z '*)�;j�A)j9>���kgt"$�1-&9�+�'3-��k9>���k-��:�$)�'?2:-\-��,�c'5)x�4)���/�92�"�'?;j"? Ù �7"*9>������9>��'*)�->%J��-&-��:"$)x�$'?9��,-\'*)�;.'*)x"$/�9>��/�9�2�"�'?;."? Ù �o"*9>������9>��'*)�->%J��-&-��:"$)j�$'39��,- R ®w"*9>�'*�1��'7'*)�;j+�'*��'?+,�:9��:<*�o2:"$'?;��A)��(+�'*)jV��c�1�,;e/�+,�,;hV*@6���_�,+K��'*�_�*�A)��(9>���k"$/�9>��/�9\V�/�-i'*)�;.�1��%7"?<��A)��(9>����5Ul9>��'*)�-��:-�9&"$�1-w p�_"$% 9>���k9>�&'*)�->%7�:-�-��:"$)��$'?9��,- R

� T ����;��,2A'z@c90���1"$/��$�o9>����-0���© [9������ ¢ ¥ ¢ ¨ ¢ ¥O¤k��-w->%('?2:2 R ��"?g��,<5��� Z 90���i�1��'?2e���1"�V�2���% �:-�g���90�79>���t+,"$)59>�1"*2-��:�$)�'?2:- � !�& � � & � E &�'�'�'(& � � � R � '?+K�=-��:�$)�'?2P [�,�,;�- Ù �j9>��'5)�->%7�:-�-��:"$)h��'?9��,-�����oV��:9 Z #"$�)� ¯ V��:9�- u 9>���:-%7��'*)�-�'k2:"$'3;("? � Ù�¯ �$'39��,- R*) � ¡ ¥[¦�� ¢ ¥[­ « � �¥O¤�­kª0¤$� � ¥�£>�*��¥ ¡ � « ªK��§$� ¢*« ª ¢*¡ ­ ��¢ ª,­0�kª,� « ­ « �k�*� � � ������ E ¥O¤$­�� « ­ ¢ ªK¥�ªK��§$��� � £ ¢ ��¥ � �O¥Oª� � ¥O¤�­ � ­z¥[£,¤ ¢ �5� ¡ ­,ª0ª�� T ���:-�%7��'5)�-i9>���o+,"$)59>�1"*2�-&����)�'?2:-���'z<*�7)���'*�12:@.' p/�2:2�+,@$+,2:�9&"7 p'5)�"$/�9i9&"&� Ù�¯ �$'?9&�,- Z �A)h��'*��'?2:2:�,2�g���90�j9>���k+�'?+,���c'3+,+,�,-�- R-( -�->/�%7�A)��x9>���9��,+,��)�"*2:"*�*@->/�����"$�_9�-t;e�1�:<$�A)��&�zUl��'?9��,-�g���90��"$/�9��1����"?gt���1�A)�� Z 'V�/5Y����� p'5)�"$/�9t9>�1�,�)�k2:�,<*�,2:-i;��,�����:-�->/�6+,�:��)59�9�";e�1�:<*�1� Ù�¯ �$'39��,- RPT ��/�-�90���i+,"$)59>�1"52�-��:�$)�'?2:-�g��:2:2���'z<*�i)�"(���1"$V�2:��%��_��'?+K���A)��79>���\->���� #9&����V��0 ["$�1�\9>����4)�-&9>��/�+,9��:"$)�-k'*���1�:<*� R

��������+ !#�-,.,/��01 ��2�%345�768�9�

NP�:�$/��1� ¯ ��->��"?g�-'xV�/�-1U!V�'?-��,;G+��_"*-�->V�'*���A%(��2:��%7��)59>'?9��:"$)h"3 �9>���7+,"*2:24'5��-��A)��=V�/5Y����7| Ù&�!R), "*9k->��"?gi)W'*�1�9>���k+,"$)59>�1"52e-��:�$)�'?2:-i�_�,^]/��A�1�,;j9�"(�1"�/�9��i�A)�-�90��/�+,9��:"$)�-��A)59�"(9>������)�'?2��A)�-�9>�&/�+,9��:"$)x2A'?9�+,� R* "$%7����"?g�9>���\9!gt"��¢5« �O�.�O��ª,¥ ¡ ¦$£z¥[���*� � �O¥ � ­>£z¥[� ¡ ª��*��)�����'?9��,;W l�1"$% 91g�"x��'?-�-��,-k9>���_"$/��$�j90���J® T ® 2�"5�*�:+6%7/�-�9�V��7+,"$)*<5���19��,;�A)*9&"(+��1"*-�-0V�'*�t-�g��:9�+,�x-��:�$)�'?2:- R'( -�g��:2:2 V��->��"?gi) Z �*��)�����'39��A)��69>���,-&�k+,"$)*90�1"*2 -��:�$)�'?2:-\��-\)�"$)*90�1�:<$�A'?2 R

®w�0 ["$�1�k;��,-�+��_�4V��A)��j9>���k+,"�)*9>�_"*2 2�"5�*�:+ Z �����1�k�:-\-�"$%7�)�"59>'?9��:"$) u

���-:; < �(-��A)��*2:�V��:9�+,"$)59>�1"*2�-��:�$)�'?2 gi���:+K�j�_"$/�9��,-t�A)�-�9>��/�+,9��:"$) � "3 �9>���k�A)���/�9��A)*9&"c�A)�-�90��/�+,9��:"$)>=("3 �9>���"$/�9>��/�9 R

� �

left shifter

0

15

mask mask

interchange

fetch address

NP�:�$/��1� ¯ � u � ��%7"$)�-�9>�&'?9��A)��72�"5�*�:+J'` #9����w9>���V�'3-���A)�-�9>�&/�+,9��:"$)j+�'?+,��� R

��� : � � <?> V��:9\"? 90���k<`'?2:�:;h�4)�-&9>��/�+,9��:"$)hV��:9�<*�,+,9�"�� R�v �-&�,9 Z 9>�����1��:-k'7<`'32��:;h�A)�-�9>��/�+,9&��"�).'?9i��"*-��:9��:"$) �"? �9>���o�4)���/�9 R

� C /�� : &���� C : & ��� � � � : &�'�'�' &������ � ��� / : �F9>�����1�h'*�1� ¢ ¥ « ­ ¢ ªK¥w"$)�� Z 91gt" Z 9>���1�,� Z �,9�+ R <`'?2:�:;��A)�-�9>��/�+,9��:"$)�-V��0 ["$�1�k9>��� � <?> �A)�-�9>�&/�+,9��:"$) R

� "*-&96"? 79>���G+,"$%���2��,I��:91@ '*)�;�+��1�:9��:+�'?2o9��A%7�A)����:-.�A)��*��)�����'?9&�4)���9>��� C�/ � & � � C & � ��� � � &�'�'�' -&����)�'?2:- R* �A%7�:2A'*�o-��:�$)�'?2:-('*�1�7�*��)�����'?9&�,;BV*@h9>���x® T ® 2�"5�*�:+ Z ;��,-&+��1�AV��,;F��'*�12:�:���o�A) * �,+,9��:"$) (cRwÙ5R(T ���(�A%(��"��19>'*)599>���A)��(9�"(�1��'32��:8,�o��-�9>��'?9�90����-�2�"5�*�:+�:-��,-�-���)59��A'?2:2:@.r?�,�����A)��(+,"$/�)59�"? �90����)�/�%7V����t"? ��4)�-&9>��/�+,9��:"$)�-iV��0 #"��1�'�*�:<*��)W��"*-��:9��:"$)���+,"$/�)59��A)��(�:-i�A)������1��)59�2:@.-&���1�A'?2�'*)�;j9>��/�-�9��A%7�A)��x+��1�:9��:+�'?2 R

� )�+,�j90���6+��1�:9��:+�'?2 C /�� & ��� C & � ��� � � &�'�'�' -��:�$)�'32�-x'*�1�x�*��)�����'?9��,; Z 9>���,@G+�'*)FV��./�-��,;B9&"{�5��)�����'?9��x9>���'?+,9>/�'32�+��_"*-�->V�'*��-�g��:9�+,�j%('?9>�1�:Ij'?-t ["*2:2:"`g�- R

��������

� !(; ! � � ; ! � E ; ! '�'�' �� � ; !� � ; � � E ; � '�'�' �� � ; �

� E ; E '�'�' � � � ; ER R R RRR�� � ; � �

������� �

��������

0 ! 0�C /��

�0 E C /��$E '�'�' 0 � � C /�� � �0

�C /��

�0 E�C /��$E � � C"E '�'�' 0 � � C�/�� � � � � C � �0 E � � C"E '�'�' 0 � � ��� C � � ��� � � � � �R R R RRR

0 � � ������� � ��/ � �

�������

L � Q

( #9�����9>����1"$/�9��A)��(+,"�)*9>�_"*2 -��:�$)�'?2:-�'5�1�k�*��)�����'?9&�,; Z 9>���,@j'*�1�\ l'*)�)��,;."$/�9�9�"79>���V�/�-i;e�_��<5���1- R

T ���\ #"*2:2:"?g��A)��62A'?9&��)�+,@.���1"$V�2:��%7-\+�'*)jV��o��;���)59����e�,;hg��:9>�j90����-� #�,9�+,�j%7�,+,��'*)��:->% u

� NP�4�_-�9 Z �*��)�����'?9��A)��H9>���.<?'?2:�:;��A)�-�9>��/�+,9��:"$)�V��:9j%('?->r5-(�:-G­ � ­���¬7� ¡ ­x+,"$%(��2:�:+�'?9��,;�9>��'5)F9>���W2�"5�*�:+;���-&+�/�-�-��,;F�A) * �,+,9&��"�) (7RwÙ*RjT ���j�1��'?-�"�) u ��'*)�;�2:�A)��G�A)59>��'*V�2:"�+KrGV��&'*)�+K���,-(�1�,^�/��A�1�,-('j-����_�4'32�+,��'?�A)"? �+,"$%���'*��'?9�"��1-\ p�_"$%}"$)��x® T ®�V�'*)�rW9�"W9>���6)��,I�96| Ù0�1R(� �j��'z<*�6)�"*9'?9&9���%(��9��,;G9&"{%7���1�5�(9>���+,"$%(��'*��'39�"$�P2:"*�5��+o�A)jg��:9>��"$/������1�,�,I��:-�9��A)��q® T ® 2�"5�*�:+;��,-��:�$) R

� Ù

S0 S1 S2 S3 S5S4 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15

FROM FIRST CACHE BANK FROM SECOND CACHE BANK

TO

IN

STR

UC

TIO

N L

AT

CH

NP�:�$/��1� ¯ � u N�'3-�962:�0 [91Ul->���� [9����x;��,-��:�$)C #"��(9>���hV�'?-��h�A)�-�9>��/�+,9&��"�)�+�'3+K���,- R T ���:-j�:-.' Ù U!V��:96-�2:�:+,���7����)�+,�9>�����1�('*�_� � ¯ "? �9>���,-&�JV�2:"�+Kr5- Z "$)��o #"$�\��'3+K�hV��:9�A)G'*)W�A)�-�9>�&/�+,9��:"$)hgt"$�1; R)( +,"$%���2��,9&�(->���� #9&���k�1�,^]/��A�1�,-L ¯ ��� Q L � ¯5Q � � & Ù�~*¯ 9>�&'*)�->%7�:-�-��:"$)J�$'?9��,- R�T ��� � Ù �A)���/�9tV���9&-�L Ù �\V��:9�-P l�1"$%����_-�9P+�'?+,����V�'5)�r Z�Ù �kV��:9�-P l�1"$%-��,+,"$)�;x+�'?+,���V�'*)�r Q ��/�)�<*���19��:+�'?2:2:@ Z '*)�;690��� Ù ��"$/�9>��/�9�V��:9�-LOgi���:+,�7 [�,�,;j9>���\"$/�9>��/�9��A)�-�90��/�+,9��:"$)x2A'?9�+,� Q��/�)F��"$�_��8,"�)*9>'32�2:@ R ®w"*90�F��"*-��:9��:<*�h'*)�;�)��,�$'?9&��<5�j->���� #9x+,"$)59>�1"*2w-��:�$)�'?2:-q'5�1�6-0��"`g\)F'?-(;�"*9�9&�,;B;��A'?�*"�)�'?22:�A)��,- R�T ���k->���� #9�����+�'*)(-0���© [9��A)�-�9>�&/�+,9��:"$)�-�2:�0 #9\'*)*@�gi�����1�\ l�1"$% � 9�" Ù �7��"*-��:9��:"$)�-��4) Ù 9>��'*)�->%J��-&-��:"$)x�$'?9��;��,2A'z@jg��:9>�j�1��'?-�"�)�'*V�2:�2:"$'?;��A)�� R

, "*9&��90��'?9�9>����2�"5�*�:+i�A) * �,+,9��:"$) (7RwÙ LOg\����+,�(%('39�+K���,-t%7/�2�9&�4��2:����1�,;��:+,9��:"$)�-t9�"k90���,�4�w+,"$�&�1�,->��"�)�;��4)��V���'*)�+,���,- Q ;�"$�,-i)�"59��,I��:-�9��A)x9>���k"$�_���5�4)�'32 a ®�;��,-&����)x"? �| Ù&�!R�T ����-���-\V��,+�'*/�-��k-&�4%���2�� ¯ U!V��:9iV���'*)�+,����1�,;��:+,9�"$�1-| Ù � � '*�1�\��%7V��,;�;��,;.g���90�j�,<*���1@jV���'*)�+,�x�A)x9>���® T ® ReT ���:-\-��A%(��2:�cV���'*)�+,�j���1�,;��:+,9�"$����-'7-����1�:"$/�-i������ ["$��%('*)�+,���'5)�;���+�'5� Z ��"`gt�,<*��� R

� T ���(+,"*2:2A'*��-��A)��BV�/5Y����k+��_"*-�->V�'*�o)��,91g�"���rj�:-;e�_��<5��)BV5@h9>���6<?'?2:�:;F�4)�-&9>��/�+,9��:"$)HV��:9<*�,+,9�"��1- RjT ��'?9��- Z 9>���k+,"*2:2A'*��-��A)��.V�/5Y����t-�9>'3�*�i;�������)�;�-k"$)x9>���® T ®�-&9>'?�*�,- RPT ���:-�;�������)�;���)�+,�7 ["$�1+,�,-i'7;��:-�9&�4)�+,9-�9>'?�*�k'z [9����t9>���k�A)�-�90��/�+,9��:"$)j+�'3+K��� R

� T ���i+,"52�2A'*��-&�4)��.V�/5Y����w-�9>'3�*�i�:-i'o2:"$)��*������'?9>�x9>��'*)��,I����,+,9��,;hV��,+�'*/�-��k90���'?+,9>/�'?2��1"$/�9&�4)��7-��:�$)�'32�-'*�1�j)�"*96'z<`'?�:2A'*V�2:�G'?979>���{V��,�*�A)�)��A)��F"? �90���j+,@$+,2:� R NP�4�_-�9 Z +,"$%���2��,IF2:"*�5��+W�:-q)��,�,;��,;�9�"G+,"$)5<*���199>���j<`'?2:�:;��A)�-�90��/�+,9��:"$)�V��:9(<5�,+,9�"$�1-7�A)*9&"G9>���j-�g��:9�+,�H-��:�$)�'?2:- RFT ����)C9>���x-�g��:9�+,�H-��:�$)�'?2:-q%7/�-�9(V�� p'*)�)��,;�"$/�9�9�"o9>���iV�/�-w;e�1�:<*���1- R � )�2:@(90����)(+�'*)J9>�����A)�-�9>��/�+,9&��"�)�-����_"$��'?�$'?9&��9>���1"$/����90���i+��1"5-�->V�'*�)��,9!gt"$�&r R

��������� >���-� ��$4���������9 � >!���� $-�

T ���:--&�,+,9��:"$)h+,"$)59>'?�A)�-k"$)�2:@h+,"$%(%7��)59�-��'39>������90��'*)h;��,9>'?�:2:�,;G2:"*�*�:+x;��,-�+��1�A��9��:"$)�- Z ;e/��(�A)G��'5�19i9&"j+,"$%oU��2:�,I$�:91@ Z V�/�9� #"$�_��%7"*-�9tV��,+�'*/�-��\�:9t��-�/�)�+,2:��'*����"?g�9�";��,-��:�$)�9>���\�A)�-�9>��/�+,9��:"$)x+�'3+K����9&"->/�����"$�19t9>���:-w #�,9�+,�%7�,+,��'*)��:->% R

� ¯

DEMUX...

DEMUX...

DEMUX...

DEMUX...

. . .DEMUX

...DEMUX

...DEMUX

...DEMUX

...

0 1 2 15. . .

0 1 2 15. . .

16 17 18 31

NP�:�$/��1� ¯ � u7T ���x+,"*2:24'5��-��A)��BV�/5Y����-&9>'?�*�("3 �90��� a ® #�,9&+K�G%J�,+K��'*)��:->% Z �A%(��2:��%7��)*9&�,;�'?-('.V�/�-1U!V�'?-&�,;+��1"*-&->V�'*� R

T ���i® ( a �1�,^]/��A�1�,-t2:"*�*�:+k-��A%7�:2A'*�t9&"9>����+,"52�2A'*��-&�4)��jV�/5Y�����'z [9�����9>���i�A)�-�90��/�+,9��:"$)�+�'?+K��� Z -��A)�+,�/�-��,2:�,-�-�A)�-�9>��/�+,9&��"�)�-iV��,91gt�,��)jV���'*)�+,���,-�'*)�;j9>���,�A�t9>'*�_�*�,9�-�%7/�-�9tV���1��%J"`<5�,; R ��"?gt�,<*��� Z 90���k2�"5�*�:+k��-��,<*��)6%J"$�1�+,"$%(��2:�,I(;e/���9�"9>����24'5�1�*�i)�/�%7V����P"3 �+�'?+,����V�'5)�r*-kL �k'*�1��/�-��,;x�A)(9>���:-t��'*�����w'*)�;(�A).| ¯z�#Q,R � <*��)7g���90��"$/�99>��'?9���/��1;�2:� Z 90�����1�c'*�_�k-��,<*����'?2�%('3n!"������_"$V�2:��%7-�g��:9>��9>���:-� [�,9�+,�j/�)���9 u

� � �7;�"q)�"*9��'z<*�7' ��¢*« �O�j����ªK¥ ¡ ¦�£�¥[�O�*� � ��¥t¬ ¢ ª � Z )�"$�\��'?-'*)5@�9>���A)��.V��,��)G%7��)59��:"$)��,;G�A)H| ¯z� '*V�"$/�9-�9�"$�1�A)��(2:��)��*90��-�"? �V�'?-��:+cV�2:"�+Kr5- R-* "$%7����"?g�9>���2:"*�*�:+7'z #9&����90���k�4)�-&9>��/�+,9��:"$)�+�'?+K���7)��,�,;�-i9&"Jr�)�"?ggi�����1�.'?2:2�<?'?2:��;��A)�-�9>��/�+,9��:"$)�-j'*�1� Z @*�,97"$)�2:@F9>���j-�90'*�19��A)��h2:"$+�'?9&��"�)F"? k��'?+,�H+,"$)*9&����/�"$/�-6V�2:"$+,rX��-r$)�"?gi) R�( ® ( a Ul2:�4r3�.;��,-��:�$)C�4)�| � � ;�"��,-(;��:-�+�/�-�-j���1"?<$�:;��A)��B2:��)��*90�F�A)5 #"���%('?9��:"$) Z '*%7"�)��{"59>�����V�'?-��:+cV�2:"�+Kr ¢ ¥[¥ ¡ � � ¦$¥[­Sª R

� v 9��:-k)�"*9�+,2:��'*�\��"`g�9�"6�����! #"$�&%�9>���k�A)59����1+,��'*)��*�� p/�)�+,9��:"$) R�T �����1�c'*�_�%('*)5@q%7"��1�������%7/�9>'39��:"$)�-9>��'*)xg��:9>�on�/�-�9 ¯ +�'3+K���V�'*)�r5- R

� � <*��)7�� �90���i���1�,<���"�/�-�91gt"���1"$V�2:��%7-�'*�_�i'?;�;e�1�,-�-&�,;{LO-�"o9>��'?9Pgt�i��'z<*����)�"$/����(+,"$)59>�1"52��4)5 ["$��%�'?9��:"$)'*)�;h9>���cV�'*)�r5-'*�1�(���1�,-&��)*9��,;h�A)h-��,^�/���)59��A'?2�"��1;���� Q,Z gt�c'5�1�(V�'?+Krx9&"69>���7->'5%7�7+,"*2:24'5��-��A)��{V�/5Y����24'39���)�+,@6�:-�-0/��,- R

� �

��� � � �4% ��� � � � � � � �!��� ���"� �"��'���

�������� � � ���9��� ��� �-� ���-�9��� ���

T ���j®t��'*)�+,� ( ;�;e�1�,-�- a '?+,���x-�+K����%J�q'?-7���1"$��"*-��,;H�4)�| ¯,� �A)*9>�_"$;e/�+,�,-(-0/�V�9�2:�j��-&->/��,-7gi���:+K�H+,"$%���2��:+�'?9&��A%(��2:��%7��)59>'?9��:"$)�'?2:9�����)�'39��:<*�,- R T ���j [�,9�+K��/�)��:9.��'?-q'5)�/��������x2:�A%7�:9j"$)C9>���{)�/�%7V�����"? �A)�-�9>��/�+,9��:"$)�-gi���:+,�x+�'*)jV��k->/�����2:�:�,;h�A)j'7+,@$+,2:� R�T g�"7�:-�->/��,-��q�����1�k+�'?2:2:�,;B¦��e�*­ ¡ ;��*�G'5)�;{� � ­ ¡ ;��*�W�6'*�1�:-��\ l�1"$% 9>����A)*9&����'?+,9��:"$)WV��,91gt�,��)x9>���® ( a '*)�;W9>���:-��A)�-�9>��/�+,9��:"$)� [�,9�+,�x2��A%7�:9 R

���e�5­ ¡ ;��5�j�:-�'o-�+,��)�'5�1�:"cg\�����1�JL Ù�Q 9>���� #�,9�+,��2��A%7�:9i��'3-�)�"59�V��,��)j�_��'?+K���,; Z L ¯5Q ��9t�:-t¨��?ª>ª,� �,« ­P9�"� #�,9�+,�%7"$�_�(�A)�-�9>��/�+,9��:"$)�-7�A)X9>���(->'*%J�(+,@$+,2:� Z ��� � L � Q -�9>�1�:+,9c'3;e�����1��)�+,�69&".9>���(-0���4�_��97"? �9>���j® ( a ;��:+,9>'39��,-9>��'?9� [�,9�+,���A)��c90���i'?;�;��:9��:"$)�'?2 �A)�-�9>��/�+,9&��"�)�-�V��i;��,2A'z@*�,;j'k+,@�+,2:� R L[����)�+,�i9>����9�����%�/�)�;����!�e"`gC�J���1"?<��:;��4)��2:�,-�-k�A)�-�9>��/�+,9&��"�)�-k9>��'*)W+,"$/�2:;GV��(���1"?<$�:;��,; R©Q � � ­ ¡ ;��5�B�:-'�-�+,��)�'*�1�:"jgi�����_�9>���(® ( a +�'*/�-��,-k9>���� #�,9�+,�/�)��:9i9&".­��?£>­0­>�\9>���k�A)�-�90��/�+,9��:"$)x [�,9�+,�x2:�4%J��9 R L[����)�+,�90���9�����% "?<*�����e"?g��6�,I�+,�,�,;��A)��j9>�����'*�1;j2:�A%7�:9 R©Q

���0 #���t9&"(NP�:�$/��1� ¯ �o #"���90���;��,-�+��1�A��9��:"$)W"? �/�)�;������e"?g R�v )j+,@�+,2:� Ù5Z 9>�����1�k�:-\"$)��'?;�;e�1�,-�- � gi���:+K����-/�-��,;G9&"6�A)�;��,IBV�"*9>�W�A)*9�"j90���c�A)�-�90��/�+,9��:"$)h+�'?+,���6'*)�;h9>���(® ( a R�* /�����"*-��(90��'?9�V��&'*)�+K� � Ù �:-c���_�,;���+,9&�,;)�"*9o9>'*r?��)G'5)�;BV���'*)�+,� � ¯ �:-7���1�,;��:+,9��,;F9>'*r?��) RjT ���x® ( a �A)�;��:+�'?9��,-6'W����97'*)�;F���1"?<$�:;��,-c'392:��'?-�9o9!gt"'?;�;e�1�,-&-��,-i+,"����1�,->��"$)�;��A)��j9�"(9>���7���1�,;��:+,9��,;G��'?9>� u� '*)�;�� R�T ���c���_"$V�2:��% ��'?-\9�"(;�"xg��:9>�WV���'*)�+,� � Ù*R* �A)�+,�7��9���-k���1�,;��:+,9��,;h)�"*9�9>'*r3��) Z 91g�"('?2:9����&)�'?9��:<*�,-��,I��:-�9 u

� � « ¥[­ ¡ � ¢ ¥[� � ­ � u Ne�,9&+K��"$)�2:@j9>���\���1-�9�V�'?-&��+7V�2:"$+,r{L � Q "3 ��A)�-�9>��/�+,9��:"$)�-\�A)j+,@�+,2:� Ù*R�� '?�:9i/�)59��:2�+,@�+,2:�¯ 9�"7 [�,9�+,�.V��,@5"$)�;{V���'5)�+K� � ��­ � ­z�h¥O¤$�*¦z§*¤ �S¡1¢ �e£S¤ � �x� ªt¨ ¡ ­>�*�O£�¥[­0�j�e�5¥�¥ ¢ � ­�� Z /�-��A)��j9>���c'?;�;e�_�,-�- ���_"`<��:;��,;{V5@690���® ( a R

� � « ¥[­ ¡ � ¢ ¥[� � ­ � u Ne�,9�+,�hV�"*9>�WV�'?-��:+6V�2:"�+Kr5- � '*)�; �A)W+,@�+,2�� Ù*Z -&�4)�+,�xV���'*)�+,� � �k�:-���1�,;��:+,9��,;H)�"*99>'*r?��) R � ¤$� ª ¡ ­��z¦$� ¡ ­,ªk¥O¤ ¢ ¥ ¢ �*� ¡ ­Sª>ª � � ¡ �*¬�¥O¤�­ � � � �e�5¥ � ­c¦5ª,­>�x���h£��`£ « ­ � �

( 2�9&����)�'?9��:<*� Ù ��-�9>���6-&+K����%7�j"3 �+,��"*�:+,�x l�1"$%E'j+,"$%���2��,I��:91@D��"*�A)*9("3 �<��:�,g Z -��A)�+,�.'?;�;e�1�,-�-��,-(���1"?<��:;��,;V5@F9>���{® ( a '*�1�.'?2:g�'z@$-x/�-��,;�LO�:�$)�"$�1�A)��FV�'*)�rH+,"$)5�e�:+,9�-x��%7"$�1�j"$)C9>���:-62A'?9&��� Q,R ( 2�9&����)�'?9��:<*� ¯�Z "$)9>���j"*90�����(��'*)�; Z �A)*90�1"$;e/�+,�,-x->���,+,�4'32i+�'?-&�,-6gi���:+,��)��,�,;�9�"BV��h��'*)�;�2:�,;�;��©Y����1��)59�2:@ R * ���,+,���e+�'?2:2:@ Z 9>���"$/�9�+,"�%7�,-P"? �V���'*)�+,���,-�'?-Pgt�,2:2�'3-P9>���i)�/�%cV����P"? �'?;�;e�1�,-�-&�,-����1"?<���;��,;jV5@c90����® ( a ��'z<*�t9�"V��\�,I]'5%7�A)��,;9�".%('5r?�(+,"$���_�,+,9k;��,+,��-&��"�)�- R.T ���:-2:��'?;�-79�".'�2:�,-�-c/�)��� ["$��%};��,-&����) RqT ���6������ ["$��%�'*)�+,�(�A%(��2:�:+�'?9��:"$)�-("? /�-��A)�� ( 2:9�����)�'?9��:<*� Ù "?<*��� ( 2:9�����)�'39��:<*� ¯ '*�1�j)�"*97+,2���'5� u gi���:2:� ( 2:9�����)�'?9&��<5� ¯ 9&��)�;�-c9&"=���_"`<��:;��q%J"$�1��A)�-�9>��/�+,9&��"�)�-i�A)j90���\���1-�9�+,@�+,2:� Z ( 2:9�����)�'?9��:<*� Ù d�+�'?9&+K���,-i/���f��4)�9>���)��,I�9i+,@�+,2:� R

T �����1�'*�1�\91g�"7+,"$)�;��:9��:"$)�-\gi���:+,�j+,��'*��'?+,9����_��8,�/�)�;����!�e"`g R NP�A�1-�9 Z 90�����1�%7/�-�9�V��c'7���:9\�4)x90���c® ( a R* �,+,"$)�; Z 9>���V���'*)�+,�x ["*2:2:"?g��A)��69>���'3;�;e�1�,-�-\gi���:+K�W����9\�A)j9>���® ( a %c/�-&9iV��7���1�,;��:+,9��,;G)�"*9�9>'*r3��) R�T ����:-�->/��o��-\gi���,9>������"$�t)�"*9�9&"6/�-��90���\ p'?2:2�Ul9>���1"�/��$�.'?;�;e�_�,-�-�"? P9>���c)�"59�9>'*r?��)xV���'*)�+,� Z 2���'3;��4)��x9�"(90���k9!gt"'?2:9�����)�'39��:<*�,-i���1�,<��:"$/�-�2:@.;��,-�+��_�4V��,; R

T ���q���1"�V�2���% "? i"?<*�����e"?g��:-(;������:+,9��,;��A)FNP�:�$/��1� ¯ � R * /�����"*-��.90��'?99>���x [�,9�+,�B/�)��:9(�:-(2:�A%7�:9��,;�9�"'.%�'?I$�A%7/�% V�'5)�;�g��:;�9>�H"? Ù �j�A)�-�9>��/�+,9&��"�)�-J�����o+,@$+,2:� R�( -7�4)X9>���6���_�,<$�:"$/�-7�,I�'*%(��2:� Z ;e/��1�A)��h+,@$+,2:� Ù9>�����1�7�:-"�)��J'3;�;e�1�,-�- � g\����+,�h�:-c/�-&�,;G9�"x�4)�;��,IHV�"*9>�W�A)59�"j9>���7�A)�-�9>��/�+,9��:"$)=+�'?+K���x'*)�;h9>���(® ( a R�T ���® ( a �A)�;��:+�'?9��,-'(���:9k'*)�;{���_"`<��:;��,-i90���1�,�'?;�;e�1�,-�-&�,-i+,"$�&�1�,->��"�)�;��4)��x9�"(90������1�,;��:+,9��,;G��'?9>� u� �Z��xZ '*)�;� R T ���{V�'3-��:+=V�2:"�+Kr5-j-�9>'5�19��A)��B'?9x9>���,-��h'?;�;e�1�,-�-��,-j'*�1�� #�,9&+K���,;��4)�+,@�+,2:� ¯�R ��"`gt�,<*��� Z V��,+�'*/�-��h9>���Ù �?90�j�A)�-�9>��/�+,9&��"�).2:�:�,-(�P�O¥O¤$���WV�'?-��:+cV�2:"�+Kr�� Z ��'*�19\"? �9>��'39iV�'?-��:+(V�2:"$+,rj�:-)�"*9� #�,9&+K���,;W�4)W+,@�+,2:� ¯ ��9>���,-���A)�-�9>��/�+,9&��"�)�-�'*�_�%('*��r?�,;jg���90�x9>���2:�:�$�59����t->��'?;��A)��x�A)j9>���o;��4'3�$��'*% RPT ���o2A'?-�9i'?;�;e�_�,-�-�� �:-i/�-��,;{'3-i'*)�A)�;��,Ih�4)59�"x9>���(® ( a ;e/��_�4)��W+,@$+,2:� ¯�RiT ���:-k�:-kgi�����1�('x��"*9���)59��A'?2����1"�V�2���%m�,I��:-�9�- Rkv �9>���7�A)�;��,I�� ���:9�-�A)h9>���(® ( a Z 9>����)W9>���()��,I$9\ [�,9�+,�.'?;�;e�_�,-�-6LO� R � R��GQ g��:2�2P-0r*�A�h"?<*����9>���72A'?-�9� #�,g �A)�-�9>�&/�+,9��:"$)�-"? �V�'3-��:+V�2:"$+,r�� RwT �����1�c'5�1�k91g�"7'?2:9�����)�'?9&��<5�-�"*2A/�9��:"$)�-\9�"79>���:-k���1"$V�2:��% u

���

b1

A

Y

5 Instructions fetched in cycle 1:

B10+ Instructions fetched in cycle 2

b2

Y

Y

B

b1

A

12 Instructions fetched in cycle 1

b2

...

B

b1

Y

b2

A B

not takentaken

Y

A

A

BAC Hit

addr 3

addr 2

addr 1

BAC addr

B

Y

Y

b1

b2

dc

dc

2 31CYCLE

A

A

BAC Hit

addr 3

addr 2

addr 1

BAC addr

b1

b2 t

nt

CYCLE 1 2

I$

I$

I$

I$

I$

I$

hit hit

3+ Instructions fetched in cycle 2

Alternative 1 Alternative 2

b1b2

...NP�:�$/��1� ¯ � u%$ )�;������e"?g R

� � « ¥[­ ¡ � ¢ ¥[� � ­ � u "$)x'(���:9 Z 9>���® ( a %('z@("$)�2:@q���_"`<��:;�� /h'?;�;e�1�,-&-��,-��� �:9��:-\�$/�'*��'5)*9��,�,;x9>��'?9+/W l/�2:2V�'?-��:+qV�2:"�+Kr5-7+�'*)GV��( [�,9�+,���,;Bg��:9>���A)X9>���6V�'*)�;�g���;�90�H2��A%7�:9{L#����)�"$�1�A)��{V�'*)�r=+,"$)5�e�:+,9�- Q,RjT ���x"$)���,I$+,����9��:"$)X9�"j9>���:-7��/�2:�6�:-k ["$�)/ � Ù*u �A)X9>���:-+�'?-&� Z 'x l/�2:2�V�'?-&��+xV�2�"�+,rG)��,�,;D)�"59V��x�$/�'*��'*)59��,�,; Rv )x9>���7'*V�"?<*�k�,I�'*%(��2:� Z �A)�;��,I��4)��j�A)59�"x9>���® ( a g��:9>�j'?;�;e�_�,-�- � g��:2:2�@��:�,2:;{"�)�2�@x91gt"JV�'3-��:+cV�2:"$+,r'?;�;e�1�,-�-��,- u '*)�; �6R ®t'?-��:+GV�2:"$+,r � �:-{)�"59.���1"?<$�:;��,;�-��A)�+,�G�:9j;�"��,-{)�"*9x�e9jg���90���4) 9>��� Ù ��4)�-&9>��/�+,9��:"$)q #�,9�+,�x2:�A%7�:9 R

� � « ¥[­ ¡ � ¢ ¥[� � ­ � u(T ���j'*V�"?<*�j�1�,-�90�1�:+,9��:"$)G;�"��,-()�"*9c'5����2�@ RGT �����1�0 #"��1� Z 9>���q��'5�1;�g�'*�1�6%7/�-�9o;��,9��,+,9"`<5�����e"?g�"3 �9>���2A'?-&9iV�'?-��:+cV�2:"�+Krj'5)�;x #�,9�+,�x9>���k2:�0 [9�"?<*���t�A)�-�9>��/�+,9&��"�)�- R

( 2�9&����)�'?9��:<*� ¯ -����1�:"$/�-&2�@H+,"$%(��2:�:+�'?9��,-�9>���6;��,-&����)H-��A)�+,�.�:97;��,<$�A'?9��,-J p�1"�% V�'?-��:+.V�2:"�+KrHV�"$/�)�;e'5�1�:�,- RBv )9>���k�,I�'*%(��2:� Z 9>���\ #�,9&+K�j/�)��:9k��'?-t9�"(�*��)�����'39��'*)h­��?¥ ¡1¢ '?;�;e�1�,-�-�9�"(����+,rj/��j90���k2��0 [9�"?<*���w�A)�-�9>��/�+,9&��"�)�-i"? V�'?-��:+V�2:"�+Kr�� Z g\����+,�j+,"�/�2�;j�A)59>�1"�;e/�+,�c)��,g�V�'*)�r�+,"$)5�e�:+,9�-k'?-tg��,2:2�'?-�'?�*����'z<`'?9���9>���k"?<*�����e"?g����1"�V�2���%�A)j+,@�+,2:� � R ( 2:9�����)�'?9&��<5� Ù �:-i'7+,2:��'*)�����;��,-��:�$) Z V�/�9i%('z@x@$�:�,2:;h2�"?gt���������� #"���%('*)�+,� R

��������+ !#� �����7���>�-� ��� �,., �� � ��-�9

� '3+K�x��)59>�1@x�A)j9>���k"$�_���5�4)�'32�® ( a ;��,-��:�$)W-�9�"��1�,-t9>���\ #"52�2:"?g��A)��x�4)5 ["$��%�'?9��:"$) u

� ( ;�;e�1�,-&-�9>'?� R

� T ���1�,�cV��:9�-\"? �-�90'?9�������\V���'*)�+,�j�A)W9>���o9>�1�,� Z<Ù <`'?2:�:;BV��:9k'*)�; ¯ V��:9�-i�:;���)59��� #@��A)��.9>���7V���'*)�+,�j91@����LO+,"$)�;��:9��:"$)�'?2 Z /�)�+,"$)�;��:9��:"$)�'?2 Z "$�t�1�,9>/���) QSR

� �

b3

Xtaken

16

b1 b2

not taken

C

taken

16th instruction

Y

B

A

C

B

X

Y

fetched in cycle 2

fetched in cycle 1

fetched in cycle 3

these instructions are skipped over

A

A

BAC Hit

addr 3

addr 2

addr 1

BAC addr

Y

Y

2 31CYCLE

B

C

X

hit hit

I$

I$

I$

NP�:�$/��1� ¯ � u � <*�����e"?g R

� T '*�_�*�,9�'*)�;x p'32�2�Ul9>���_"$/��$�.'3;�;e�1�,-�-��,-\"? ���'?+,�.V��&'*)�+K�x�A)�9>���k9>�1�,� RT ���:-�A)5 ["$��%('39��:"$)h�:-7��)�"$/��$�h9�"x [�,9�+,�G'j2A'*�_�*�(9>��'3+,�c"3 ��A)�-�9>��/�+,9&��"�)�- l�1"$%m90���(+�'?+,���(9�".90���(;��,+,"$;����_- R��"`gt�,<*��� Z 9>���t+,"$%(��2:�,I$�:91@("? 2:"*�*�:+�V��,91g��,��)o9>���\® ( a '*)�;79>���iV�'5)�rc'3;�;e�1�,-�-�2A'?9&+K���,- Z '*)�;7"? �9>���t+,"$)59>�1"*22:"*�*�:+;e�_��<��A)��j9>���'?2:�:�$)�%7��)59�)��,91gt"$��r Z %('z@(�A%(��'?+,9\+,@$+,2:�o9��A%7� R�v +,@�+,2:�79��A%7�k;�"$�,-kV��,+,"�%7�c'7+,"�)�+,����) Z9>����;��,-&����)7+,"$/�2:;qV���+,��'*)��*�,;(�A)�-��,<*����'?2�g�'z@�- R NP�A�1-�9 Z '?9�)�"�,I�9>��'k��'*�_;�g�'5�1�t+,"*-�9 Z V�'*)�ro+,"$)5�e�:+,9�-w+�'*)(V��;��,9�����%J�4)��,;h'*����'?;j"? �9��A%7�'*)�;j"$)�2:@x"$)�+,�\�6'?9t9>���k9��A%7�V���'*)�+,�j'?;�;e�1�,-&-��,-i'*�1�\��)59����1�,;j�A)*9&"(9>���® ( a Rv )H"59>�����og�"��1;�- Z '*)5@BV�'?-&��+hV�2:"$+,rB'3;�;e�1�,-�-��,-6���_"`<��:;��,;�V*@H9>���j® ( a '*�1�x�$/�'*�&'*)*9&�,�,;B9�"G)�"*97+,"$)5�e�:+,9 R* �,+,"$)�; Z '3;�;���9&��"�)�'?2�+,"$)59>�1"*2��A)5 #"$�&%('?9��:"$)�+,"$/�2:;.V��k-�9&"$�1�,;x�4)x��'3+K�x��)59>�1@7�6'?2:-�"7;��,9����&%7�A)��,;{'?9w9>���k9��A%7�9>���(��)59>�1@X��-��e2:2��,; RGT ���(�,I$90�1��%7�x��-79�"j-&9�"$�1�6���_�,+�'?2:+�/�24'39��,;�V�'*)�rG'?;�;e�_�,-�-��,-c'5)�;D'?2:�:�$)�%7��)59()��,91g�"���r+,"$)59>�1"*2�-��:�$)�'?2:-� ["$����'?+,�7��'?9>�o9>���1"$/����k9>���t9>�1�,� RPv )79>���t->���A�1�:9�"? ���"��1�:8,"$)*90'?2]%J��+��_"$+,"�;�� Z 9>���t�4)5 ["$��%�'?9��:"$)�:-� l'*)�)��,;j"$/�9�;��4�_�,+,9�2:@.9�"79>���o;e'?9>'*��'?90�(+,"$)59>�1"52���"*�A)*9&- R

( )�"*9>�����w�A%(��2:��%7��)59>'?9��:"$)��:-�->/��k�:-�9>���k)$/�%7V����t"? �+,"$)�+�/��&�1��)*9w�e2:2:-i-0/�����"$�19&�,; R�v �'*)x'?;�;e�1�,-�-i%J��-&-��,-�A)G90���6® ( a Z '5)h��)*90�1@.�:-('?2:2:"$+�'?9&�,;G ["$�k90���(9>�1�,�6V��,�*�A)�)��A)��B'?9k9>��'?97'?;�;e�1�,-�-���90���(��)*90�1@h��-o�e2:2:�,;Fg��:9>�V���'*)�+,��9>'*�1�*�,9�'5)�;( l'?2:2�Ul9>���1"$/��$�j'3;�;e�1�,-�-��,-�'?-tV���'*)�+,���,-��A)x9>���\���1�,;��:+,9��,;.��'?9>�x'*�1����)�+,"�/�)*9����_�,; R�� ���:2:�'*)h��)59>�1@h�:-k�e2:2:�A)�� Z 9>���7 [�,9�+K�X/�)���97+,"$)59��A)�/��,-c9&".'?+,+,�,-�-79>���6® ( a R�v �'*)�"*90�����%7�:-�-o"$+,+�/��1-7V��0 ["$�1�x9>������1-�9���'?-w+,"$%(��2:�,9��,; Z 90������'*�_;�g�'5�1�i+�'5)(�,�:9>�����w-�9>'5�19�'*)�"59>�������e2�2 �A%(%7�,;��A'?9&�,2�@ Z ;��,2A'z@(-����1<��:+,�4)��x9>���k)��,g%7�:-�-/�)59��:2�9>���o���1-&9���'?-k+,"�%(��2:�,9��,; Z "$�\�:�$)�"��1�79>���(%7�:-�-c'?2:9�"5�*�,9>����� R.* /�����"$�19��A)��h%c/�2:9��A��2:�x+,"$)�+�/����1��)59�e2:2:-�1�,^]/��A�1�,-k'?-�%('*)5@��e2�2PV�/5Y����1- R

� �

����� � ��!#"$� %&!�"��'� � � ��� � � � ��"T ���:-�-��,+,9&��"�)j���1�,-���)59�-t9>����%�'?n1"$����'*�_9�"? �90�����e2:2�2:"*�*�:+�1�,^�/��A�1�,;j9�"('?+,+�/�%7/�2A'?9��k9>�&'?+,�,-P ["$�w9>��� T a R�T ���;��,-��:�$)��:-��A)*9&��)*9��:"$)�'32�2:@(�A)�+,"$%���2��,9&����9>�����A)59���)*9P�:-w9�"k�*�:<*�i'� #�,�,2� ["$��9>���ir5�A)�;6"3 e l/�)�+,9��:"$)�-�9>����2�"5�*�:+�%7/�-�9�����! #"$�&% R2( 2:-�" Z 9>���(;e'?90'*��'?9>�W�:-()�"*9)��,+,�,-�->'*�_��2:@H2A'?�:;B"$/�9� #"��\"$��9��A%('?2w9��A%7�A)�� R NP����/��1� ¯*~ ->��"?g�-o9>���;��,-��:�$) Z gi���:+K�W'?-�->/�%J�,-i' T a 2:�A)��-&��8,�o"? Ù �7�A)�-�9>��/�+,9&��"�)�-�'*)�;./���9�"6'7%('?I��A%7/�%�"? �(V�'?-��:+cV�2:"�+Kr5- R

T ���k2�"5�*�:+c'?-�-0/�%7�,-�9>���\ ["*2:2:"`g��4)��x2A'?9�+,���,;.�A)���/�9�-� p�_"$% 9>���k;��,+,"�;�������'3+K�x+,@�+,2:� u

� ����£>�*¬7�O�*§G�O��ª,¥ ¡ ¦�£�¥[�O�*� «:¢ ¥[£,¤��X��"52�;�-j/��F9&" Ù �G)��,g��A)�-�9>��/�+,9&��"�)�-( [�,9�+,���,;H p�1"�%E9>���j�A)�-�9>��/�+,9&��"�)+�'?+K��� R

� ! � �69>���k-�90'*�19��A)��6'?;�;e�_�,-�-�"? P9>���k�A)�+,"$%7�A)��j+,"$)59��:�$/�"$/�-iV�2:"�+Krx"3 �A)�-�9>�&/�+,9��:"$)�- R

� � �69>���k9&"*9>'?2 )$/�%7V�����"? �V���'*)�+,���,-��A)j9>���o�A)�+,"$%7�A)��6�A)�-�90��/�+,9��:"$)j2A'?9&+K� R

� ¨ � ¨ � ¨ � �J90���c���1�,;��:+,9��,;W;��4�_�,+,9��:"$)�-k"? �'*)*@xV���'*)�+,���,-i�A)j90���k�4)�-&9>��/�+,9��:"$)�24'39�+K� R

� � � � � � � �x9>���9>'5�1�*�,9�'?;�;e�1�,-�-&�,-�"? �'*)*@jV���'*)�+,���,-��A)j90���k�4)�-&9>��/�+,9��:"$)W2A'?9�+,� R

� � � � � � � �q90���(-��:8,�("? �V�'?-&��+xV�2�"�+,r Ù5Z 9>���7-��:8,�6"? �V�'3-��:+6V�2:"$+,r*- Ù '*)�; ¯ 9�"*�*�,90����� Z '*)�;h9>���-��:8,�"? �V�'?-��:+V�2:"$+,r5- Ù*Z�¯�Z '*)�; �79&"*�*�,9>����� Z �1�,-0���,+,9��:<*�,2:@ R

T ����+,��)59>��'32$+,"$)59>�1"52?��2A'*V��,2:2��,;.'3- 'ky ��( �%7"$)��:9�"$�_-P9>�������1"*�$�1�,-&-�"? e90�����e2:2e'*)�;(%('3�4)59>'?�A)�-��1�,2:�,<?'*)*92A'?9�+,���,- R* ���,+,�©�e+�'32�2:@ Z 9>���k ["*2:2:"`g��4)��� l/�)�+,9��:"$)�-�'5�1�������� ["$��%7�,; u

� �t�,-��,9i'?2:2�+,"�)*9>�_"*2�'*)�;.;e'?90'2A'?9&+K���,-\gi����)j'7-��:�$)�'32��A)�;���+�'39��,-k9�"(-�90'*�19�'�)��,g��e2:2 R

� � '3�4)59>'?�A)x9>���k+�/��&�1��)*9�2���)��59>�j"? P9>���\�e2:2PV�/5Y���� Z � R

� � '3�4)59>'?�A)x9>���k+�/��&�1��)*9\)$/�%7V�����"? �V���'*)�+,���,-��A)j9>�����e2:2�V�/5Y���� Z� (R

� $ ��;e'?9��k9>��� �,¡1¢ �e£S¤6¬ ¢ ª �q� �O¥Oª R

� $ ��;e'?9��k9>��� �,¡1¢ �e£S¤3; ¢ §*ª R

� � �,9��,+,97gi����)H�,�:9>�����.L Ù�Q 9>���.)�/�%cV����7"? �V��&'*)�+K���,-7�,^�/�'?2:-6"��k�,I�+,�,�,;�- � Z "$�jL ¯*Q 90���.)$/�%7V����o"? �4)�-&9>��/�+,9��:"$)�-k�,^�/�'?2:-"$���,I�+,�,�,;�- Ù �hLO"?<*�����e"?g V��:9�- QSR)( 9\9>���:-��"*�A)59 Z 9>���hd1�e2:2P+,"$%���2��,9&�,fj-��:�$)�'?2���-'?-�-����19&�,;.'*)�;.'?2:2�2A'?9�+,���,-�'5�1�� l�1"*8,��) Z /�)*9��:2�9>���\�e2:2 V�/5Y����t�A)5 ["$��%('39��:"$)x�:-i+,"$%�%7�:9�9��,;j9�"(90��� T a R

� v )X9>���(+,@�+,2��j90��'?9k�e2:2:�A)��G+,"$%(��2:�,9��,- Z 9>���6y � ( +,"$)59>�1"*2:-g\��'?9<?'?2A/��,-6'*�1�(2:"$'3;��,;B�A)59�"h9>���.¥ ¡1¢ £0­¥ ¢*¡ §$­�¥ ¢ �*� ¡ ­Sª>ª�'*)�;G¥ ¡1¢ £0­ � ¢*«O« !¥O¤ ¡ �*¦z§*¤ ¢ �5� ¡ ­,ª0ª��1�,�5��-&9����1- R

v )JNP����/��1� ¯5~�Z +,"$)59>�1"*2��:-�;��:-�90�1�AV�/�9��,;6<��A'k;�"*9&9��,;(2:�A)��,-� l�1"$% 90���iy ��( 9�"o+,"$)59>�1"*2���"*�A)59�-��A)�9>����;e'?90'*��'?9>� RT ���w<`'?2A/��t"? e�1�,�*�:-�9���� � ;��4�_�,+,9�2:@+,"$)59>�1"*2:-�9>���P->���� [9��A)��k"? �)��,gB�A)�-�90��/�+,9��:"$)�-��4)59�"\9>����'5�����1"$���1�A'?9��t��"*-&��9&��"�)"? P9>���\�e2:2 V�/5Y���� R

� �

SHIFTER

RIGHT

L B

Br.Mask Br.Flags

updatelogic

updatelogic

LOGIC

(PLA)

start

reset alllatches

Fall-Thru

fill

W1

W2W3

X

PC

T2 T3T1

MUX

MUX

30 4

Target

b

number ofincomingbranches

p1 p2 p3 T2 T3 W2 W3 PC

startingaddress

5 9 dctnt2 dc

predictions branch targets lengths

W1

shift amount

logicenable

latch write enables

W2

W3

W1

ov1

ov2

ov3

16

ov1ov2

ov3

overflows

b

accumulate lengthaccumulate number

of branches

fill complete

p1 p2 p3

predictions

MUX

FILL BUFFER

to data array of Trace Cache

to control array of Trace Cache

W1

W2

incoming instructions

X

16

T1

from DECODER

NP�:�$/��1�¯*~�u��'?n1"$�t��"��19��:"$)�-�"? P9>���T a

�e2�2�2:"*�*�:+R

��