acbed fhgjilk mnmlabo.nshimizu.com/thesis/b2003/0aet3123.pdflop ih ã0ä tnqp j k. ml s on 3ã qp l...
TRANSCRIPT
������� ���� ��� �������
� � � � � � � � � � � � !" # $ % & ' (
)+*�,.- /�0 132 4�,�5
�������76��78 6��78 9�:�6��7;
�=< >�?
@
ACBED FHGJILK MNMA+OPD QSRUTWV MXMNMA+YPD Z\[^]U_ `badc efhgji kUlnmporqSsutHvxwywywzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw |fhg~} �H��m ��t��r�r����kUl w{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw |��fhg~f ���^���J� � wywzwywywzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw3|��~�~�fhg~� ������t����^�r�\q�� wyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw3|��~�~�fhg~� ¡W¢d£ wywywzwywzwywywzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw �¥¤
fhg~�hgji ¦U§d¨U©utHv wzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw �¥¤fhg~�hg~} ª��U¨U©utHv wzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw3¤��~�~�
A+«PD ¬U ®b¯ °�eMXMNM�hgji ±U²U³´�¶µ�·S¸º¹ » wzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzwn¤��¼¤
A+½PD QSRH¾ ¿S[ °°M�hgji �UÀ+v��rÁp�ºÂ\à wywywzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw�¤Ä¤��~��hg~} ÅH�UÀ�ÆutJÇÉÈ��bÊËÂ\à w{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw̤ͤ��Î�~��hg~f Ï^mÐvÒÑ^ÓW�rÔrÕ wywywzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw̤ͤ��Î�~��hg~� Ö{×EØUÙÉÊ\�dÚrÛ3�Üq´�nÝr� wywzwywywzwywzwywywywywywzwywzwywywzwywzw̤ͤ��Î�~��hg~� ª3�SÊËÞUßWàUá wzwywywzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzwº¤Í¤Í|
A+âPD ãåäyæ�ç�è é�êWë °°e�MNMA+ìPD ípî´ï�ð ñ °°MX°A+òPD óLôrI °°°
@
fhgji õ÷ö�øU³¶ÊËùdú�kUl3Êpm\orqSsutuv wywzwywywywywywzwywzwywywzwywzw |��fhg~} �H��m ��t��r�r����kUl3Ê�û wywzwywywzwywzwywywywywywzwywzwywywzwywzw |��~�fhg~f ���^���J� � wywzwywywzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw3|��~�~�fhg~� ������t����^�r�\q���üzýb²H���þ���\ÊrÿS� wywywywzwywzwywywzwywzw �¥¤fhg~� kUl��´ÛSqWÊ���� wywywzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw ¤fhg�� �pqL�p�þ� � wzwywywzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw ¤��fhg�� �� ø��������LÊ k l��´Á��S�^Ê��\Ã����W² wywywywzwywzwywywzwywzw ¤��~�fhg�� ø�� �!��Èp�nv À�q#"�ü��WÀrÆntJÇ Ê�$�% wywywywywzwywzwywywzwywzw ¤��~�fhg�& ªL�U¨ ©Htuv Ê��U²�')(+*�, wzwywywzwywzwywywywywywzwywzwywywzwywzwn¤��¼|fhgji.-p×0/�13254768�pqL�3�Üq��9�LÊL�^ÁÉÚW�^�;:�<�q�v wzwywzwywywzwywzw ¤Ä|fhgjihiS×0/�132>=�Ê?�pqL��"SÁ�v9�LÊL�^ÁÉÚW�^�;:�<�q�v wzwywzwywywzwywzw ¤Ä|fhgji }x�UÀrÆ�t�ÇÉÈ���@UÀ�tr�BA wzwywzwywywzwywzwywywywywywzwywzwywywzwywzwn¤Í|��fhgji fÉ��vþ�����C�U²ÉÊpmUÀ�q?:D<�q�v wywzwywzwywywywywywzwywzwywywzwywzw�¤Ä|��~��hgji EGFHFJILKBMON�P\��ÆH�Q@3� ÈSq��{ÊSR? wzwywywywywywzwywzwywywzwywzw̤Í|��Î�~��hg~} TVU0WYX[ZY\^]`_badceaH_0FfU0gih`WkjE¦W§l�LÊ�m�n wzwywzwywywywywywzwywzwywywzwywzwn¤��¼¤�hgji ÔrÕnmUÀSq wzwywzwywywzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzwn¤Í¤���hg~} ÔrÕ�o�p\Ê�q�r wzwywywzwyw{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw�¤Ä¤��~��hg~f ¦W§d¨ ©Htuv Ê Â\Ã�Ê�s�t wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw�¤Ä¤��~��hg~� Ö{×EØUÙH��Ú�ÛÉ�Üq´�uÝ��u�LÊu���^����vp���SÊ�m)n wzwywywzwywzw�¤Í¤��¼|�hg~� EG]wFfU0Zyxuz){ON�P?�SªÐtr� wzwywzwywywzwywzwywywywywywzwywzwywywzwywzwº¤Í¤Í|�hg�� |}W~a.aHT Ö{×�@�q�vz� Ú^ÛÉ�Òq´�uÝ��C�LÊ�m�n wywywywywzwywzwywywzwywzw�¤Í¤Í|���hg�� ÔrÕ�����ü�ª3�SÊ Þ´ßWàUá¶Ê?�Q� wywzwywzwywywywywywzwywzwywywzwywzw�¤Í¤Í|���hgji �����d1�¦����LÊS�dq��ÜÑSÓW�º� � wywzwywzwywywywywywzwywzwywywzwywzw ¤Í¤Ä|��~��hg~} �U©d�W�WÀ ��"Q�r¦U§l�LÊm�n wywywzwywzwywywywywywzwywzwywywzwywzw¤Í¤Í|��Î�~��hgji ÔrÕÉÊ����xüd���D�Q��� w{wzwywzwywywzwywzwywywywywywzwywzwywywzwywzw�¤Í¤��¼¤
� �
� ×0� ÂUÃ?���¶ÊBRQ��ü�NC�Q�þÅ������L�L�����x·��Ò�bÀþÆÉt�Ç�´Ã� ¼f`¡¢ ¥�£¡GxJ§�¤L¥���SPS¦#§U¸���¨�Ê�©+ª�«¬xu�®��WÀrÆHt�Ç´ÔrÕ!�?¯É�r��©p�u����ü�N��B'��#P����x±°³²´¸�¦D´?P;���WÀþÆutPÇ´ÔþÕÉʵ��3µQ¶ ú+�+·�¸Ð�Üqº¹ �p��������¹��»Y¼#½ Ö{×0¾ ÊËØUÙ¿xܧ!¤¿ÀºÁpü±�HÏ�mÐvÒÑSÓb�Wµ�ÂLÃ�¸º²�Ä÷öÆÅÈÇƤp¸�¦É Á�xÖy×�x�Ê�Ë�PpÈp�+ÌSÛ�qL������¹��pÊ���Í¿xºõ�Î>Ï���ü+NÐ� É Ê�Ñ;Ò�ü
¤p¸U�UÀ�Ænt�ÇÉÈ��bÊ�ÔrÕ¿xÒ§�¤l¥?PS¦Åb±)Ó)�L�¶�Ô�`-£�`� kWl�Õ+ÖH�bÀþƶt Ç�Ê�ÔþÕ¶Ê�×�Ø�üÙ�����B����µQ® ú?�SÚLÃBÛ
�~�
´BÜ��LÔ�Õ���Ýɵº®\ú+��¢ £�Ãd¸�Û¶�UÀ�Ænt�ÇÉÈb�^ÔrÕ3µº¶´ú��QÞ�}hgji Ê+ß qQàxuá){ON;PSÛâ)ãbä�åæ�ç�è�é�ê�ë;ìDíïî8ðQñºòCó�ô�õ�öD÷Lø)ù Û;ú�ûlü ÷#ëý)þ³ÿ��������Dù���� ���������� ÷#øLù��
â�����������! ãbä�å ë#"�í �#$ í î ÿ&%('()+*,���#-/.10�243 �6587 "�í �9$ í î;:=<?>@�DùA+B?C(DFE ÷LøLùG�â�HJI h 24K � .10�243 �6587L í A/M "Bí � ë/.10N2�3 �O587QP#RFSUT íWVB÷#øLùG�â�X 24K I 0NY �[Z#IN58\�] 3 � 0�2L í A/M "Bí � ë^3O_8`8_8acb Z $ Med9fWD ÷#øLù�â�g K h 2 � K �4H4Hh� 0�24i8jO`k åmlonqp k�r ätsqu k b�%?'+)?*wv�íyx#÷#øLùG�
z � j|{�}o~�b9v�íyx�����(���#� ���+�/��U�w�^� ���c��Q� �G��� �������¡ �U��¢w£ ¤�¥�¦m§�¨©�oª¬«�§®¯ ¯°m±²W³µ´·¶@¸9¹,º�» ¼ §®¨�¥�«m½¾�À¿�¥�°ÂÁ�Ã�¯ ¯«�§�cÄ1ÅÇÆ@�U��È#É ÆQ��Ê;Ë1ÌÍÆÏÎШ�¦m§ÒÑÓ¨���¤®¤Ô�©«�§�Õ×Ö¾Ø
363O3
Ù ÚÜÛ#Ý·Þ+ß?àÁ=áãâ ë(v�í·x�ä,b�åW3O_8`8_8açæ(> A(B·èêé�ë ë�Ý·Þ�ÿÇì�-/í � ��îU:ïÝ·Þðå �A+B·èêéeë $ ò�ë)ò+íWñ·ò#óyô9õ(:Fö)ç�÷·ø9ù���ùG�
3 �
ú û ü
A(ByèUéÀë $ ò�ýU3O_8`8_ÓaVë�þ(ÿ+æ�>�� m ÷Lø)ù���� m���� ��� :+ø)ù(þ(ÿ¬ÿ��� å� � (�y þ�ÿ³ë� �:������ á ùð{���� � 0Ùë $ í î�� A�������é ó! ��ç À � m#"ø�$ Á=á :ïö)ç�÷ � #÷ ë&% í('&å � �)�*,+ - . / 0 1 2 3 43O_8`8_8a;ý�{,5�a���� � 0�ë·��<�6!ë L�7 $ í î "!8�9 � á ÷�ç�ù�;:=<#:=þ?ÿ�>Ï�@?
Á :�A á ù&þ(ÿ³ëCB#íCD�B é ó�ÿFE@�y�â�G k l k lop kIH ã0ätnqpJ�K .ML sON3ãQP L s K s LSR ZTP u L H H L K N[l LUR å k l L åhn k L åVGVã L åhn�ã L å k P3ä L ã k P3äsON ãQP3ä L s K s äâ k p[HJlTP J nqloHJZk GWG L k G Z L H H Z L k[k k L G k k L ãQN[X L ã�XcX L G nqZ L H nÔu L Z J s L k k ã L G k ã L J N åH J N3å L k[k J L G H .ML k k G L ZoXYX L ZZX[Gâ)å K u¬HJZH K l L ãQP å L ãQP[p L ã k p L p K å L p K p L p!Zyå L pcZopâ)ãmlop[H H u J kIH HJs\N å k loH K Hp1nqs L J]K . ã L Z J s�ã L ãmZ k ã L å K GVã L ã�lTGVãâ�Z K H lop K å(lop k^H ã0ätnqpZ k å å LS_ J s L p1nql LU_ n LS_ å LS_ åhn LU_ X LS_ Xcn LS_ s LS_ K LS_ ã LS_ H n LS_ H å LU_ H å¡n LS_ H X_ H Xcn LU_ H s LS_ H K LS_ H ã L å K`K s L å KaK s\b L å KaK s H b LU_ Z R b L H H l L H H l K L HJp1nÔlâ�sqp K Zon�ã0ã K p�Z K H lop K åZyåhZ L Z J Z L ã�loZ L ZyåVG L ã�lTG L Zyå¡H L ã�loH L P3åÂl L X k HJl L n ã�Z L å K Zdc
�
Ù eÜÛ�ò+í,ñ·òwóyô#õ e Û Ú Û A[����� é ó] !�gfÐþ+ÿop code w d mod r/mREG
h i8j|{�}di �kj )³ë�l�ç�þ(ÿ ë �=m íCn é 'G k l k lop k^H ã0ä nÔp ý�o�íwV�ë!p&qOÿì^- À þ,ÿ&> ÷�øDùF� k p[HJlTP J nqloHJZý�r=s=t�rOÿ&ì�- À þ,ÿ�>�÷lølùy� å K u¬HJZ ýy%?'=t=r7ÿ�ì�- À þ,ÿ=>�÷Dø#ù·�
ã�lop1H H u J kIH HJsON å k loH K H ýuo#í@Vvp�q o#íWVw�x¿ÿÐìU- À y' �·MFC þ+ÿ� ÁÐá ÿvz{$d|ãå¬ì#- À �u} :b#ç)ù92�0 ] 0 h � A~��!�Qé ó� �÷?-�ùÐþ�ÿC>#÷)ø�ù��Z K lop K å+lop k^H ã0ä nÔp ý������=� �� ������� #����j��#� � V�í M þ+ÿ�� â-LùÇþ(ÿ�>l÷Lø)ù� sqp K Zon�ã0ã K p�Z K H lop K å ý ��D+C���� ÿ@�ã���DùÇþ(ÿ��l÷øLùG��u� j )³ë�lDç � ��� � 0 þ+ÿUý^i8jÒ{ �=m íCn é '^� â -/í�÷)ç�ù��h i8j|{ :���ç�÷��eý G 3O240 I � 3 5�� ë Á �8÷ � L�7 D/M îÔþ(ÿ!ë��()!ë � fv� å��ÿ&z@���u�Q�Ð{yë��() � f���åk�#ý p1nqu ��-�$ �Q�;` ë��() � f���åM�#ý�2�� \ �-#ùG� ý X,5 2��Ðë Á �Æ÷yþ�ÿ���ì��Lë!o)íWVSëF�� ÿ 5 2��V¡¢� � �,� � 0¤£ :y�lù�� ��� � 0:·�Dù!�DÿÇz@�y� �Ð{yë@�()¥o#íWVQë@�� wý 5 2����Ç-�$ �;` ë@�()¥o�íWVQë�� �ý��,� � 0Ð�=-�ùG�\�5 � ý�ò î T é P MFC D)í îVë Á �8÷!¦�' ò î T )ë;þur=§!ÿÇzW�·��¨ 奩�ýh i8jSªÀ:�E@���240 7 ý T�« #V L�7 D9M î ë Á �C÷ ¬ ë T@« #V�ÿÇþ+ÿ¬ë�®�éÏ�Ð��ù;��ÿ=z�y��z i8jÒ{ :^2�0 7 ë@¯Ï�±° 8 � á ù TF« #V�:ïö)ç�÷!E@�·�2�� \ ý T²« 9V �� ý�³;D � ÿ L�7 D/M îVë Á �8÷ \e5 �Q�Ð{8{JëF�+) T@« 9Vÿ=zðå \�5 ��´�{8{�ë��+)g³;D � ÿ?ø�µ â �y� Áu¶Uâ � ò5î T é P M�C DLí î ÷~�b�� á ùG�
)�*�· ¸ ¹ / º�3 » ¼ ½ ¾ - .A[�@���Qé ó! W:(ý �65 IÀ¿ L � 0 78\ 0 � � 5 � 0N2�243S��0¤LO240 ] 0�Á � ë�i ö " ø#ùG��? á¥ÂFá ý�:<Dë�Ã�Ä�ÿ²Å/ö��â��O5 IÀ¿ ����� á ù=þ?ÿ¬ë��+ì~Æ �Ç �ÿ Bwé óy��ù ��} ë A�������é ó; �÷øLùG�
� 3
Ù eÜÛ�ò+í,ñ·òwóyô#õ e Û Ú Û A[����� é ó] !�gfÐþ+ÿz i8j|{�}o2�0 7 :¥È?ù T@« #VQë�° 8
É ÊTËaÌ@ÍÏÎ�ÐÒÑÔÓ�Õ×ÖYر٠ÊTËaÌFÍÚÎ�ÐÜÛÞÝàߢáâØ`ÙãÀãàã äVå ä\æãÀãàç èéå èêæãÀçàã ëìå ëYæãÀçàç íîå íïæçÀãàã ð,ñ ä\òçÀãàç íêñ èêòçÀçàã ð,ó ëYòçÀçàç ëYó íïò
CSEGMOV ax,[bx]
REP CMPSW
ESEGREP MOVSW
CSEGADD ax,bx
ô�õ÷ö@øFùIúMûküWý`þ±ÿ������
2 ��� ö�� ���� ø@ùIúMûküWý`þ
h���������������� �"!"#"$&%')(+*-,
.0/2143�5�17698�:<;=14>2>@?�AB1DCDE �GFH!"IH#)JK*-L)MNFPORQ#DS)T�UDVXW)YDZH[X\^]IK_ CH`�a�bdc)e *Kfg*�U-\K]ihkj)*0�+�l�m� �G!R#onHpq]GrlLkMsFtOgQ�#*RSoTsUiuHWoYXv-wKxyFzO-QD�-{ ` _ EH| O~}�*���n"�K��\�]gr.0>214��14�78 # a � ` _�'�(sUg$��t���������l# a � ` _�'�(+*-�)� b �^�&��hj�*0�s�l�o���R!-#knHp0]�r >@17��17�78 �s�l�k���R!-#0*�$)�N�G�XhD# a � ` _'�(+*�����Umu0WkYXv���n�x�# a � ` _���M�#�� |�a }=*g�Kn"�K�k\�]-r )¡ *N��u¢*H���G��� �"!m#XUiu0WkYi£�¤+UG$��&�g��]m¥ | #iw)¦)§q$��¨���]m¥ | #&©Df"U-ªX« |¬a �gh"rX¯®°������±
;�?�?
² ³=´ F |Hµ �¶!R·�¸ ³�´¹³=´ Qlºi#�»�¼q½
SEGMENTFILE
REGISTERFILE
ES
CS
SS
DS
AH AL
BH BL
CH CL
DH DL
SP
BP
SI
DI
AX
BX
CX
DX
IP
INSTRUCTION POINTERREGISTER
®��������mQlºD#�»¼�½
¾g¿@¾ ÀÂÁ Ã Ä Å ÆQlºi#¶»¼q½+Uou0WkY�®°���Ç�ÈUgÉ¢\"rD')(^«0Ê ` »+Qlºi#�»+ËÍÌÎw)ÏÑÐ^*DI�_ C
`Na Q�ºi#K»ÒwiÓÑж*�Ô0[�Q�ºi#�» b [ e ��wNÕR*GÖHwm×�T J¢*"ØqJmÙ�ÚH[���ÛUGZq[0\K]R� ` «¢Üs� | Qºm#K»Òw-�)Ý¢\�]kF�OgQ #mSDTHJ¢U"Þ��-Is� a *qF OQ�#N©k�lYmZ0[0\�]+ßÎàzQ�ºD#�» b [ e ��h"r
¾g¿âá ã äåÀ æ ç è é ê ë äIK_ C¢`NaÑìDí U¢îD]kF�OgQ #oïD½ bð [¨� w C"E ��F0!-I�#oJXvoIK_ C¢`ñaFzO-Q�#&©dÞ¶�RIN� a FzO-Q�# b � T��X��ò�ó ?¹8 *-L)M�FzO-Qd# b ïo½¢\¶]groËÍô�õFq!-I�#oJXvmIK_ C¢`ña FöOgQ # b&÷7øúù §^*sò�ò�òûòl©i��w)Þ��-Is� a F�OüQ #0*ý nmL)MñFzO-Q # b ïk½¢\�]gr
;�?Ç?�?
² ³=´ F |Hµ �¶!R·�¸ ³=´Çþ�´qÿ�� �K�
OFFSET ADDRESS
SEGMENT ADDRESS 0000
PHYSICAL ADDRESS
0
015
15
019
+
mod r/m
2bit 3bit
SECOND BYTE OF OP CODE
3bit
mod r/m CALICULATION METHOD
11
00
000001010011100101110111
EA = BX + SIEA = BX + DIEA = BP + SIEA = BP + DIEA = SIEA = DIEA = BPEA = BX
000001010011100101110111
EA = BX + SI + dispEA = BX + DI + dispEA = BP + SI + dispEA = BP + DI + dispEA = SI + dispEA = DI + dispEA = BP + dispEA = BX + disp
01or10
mod = 01,disp = disp low sign-extended to 16 bits.mod = 10,disp = disp high & disp low.mod = 00 & r/m = 110 -> EA = disp high & disp low.
SEGMENT:OFFSETADDRESSING
OFFSET ADDRESS CALICULATION
®�����Ï�� FzO-Q��-{ ` _ EH| OG©ÈLkM�FzORQH*"ïD½
¾g¿�� � � ���� I���ª��DFo* ÿ���� � ���g® b ��� ÷�� UGÉX\Rr"�o���� �� a ©"!#��� �� a* � u�U%$'&)��h-¼0½z©��)(*�� +� a v�,.-/�� |�a10 { `32�4 UKî+�65�7z�GY����\�]-r98ohgwk'�(0�)��J�U�:%;'</=�>¶�%?�@svBA ` OÈ{DCiÊ#� b �^�&��r��� ÷�� UmVqW)Y/EGFIHH��*J<R'�( µ�Ki| *MLGNKnHp0]�r"')( µGKi| <HpX]DhkjBOÊ � ÜmÊ ` Hq�l�kMP<R��Q°�Y�WH]Gr'k( µRKg| *TS�U¶U"u�WiY0v9�V�XW UlÉ0\"r�ÐY wG'k( b �o�¢\¢][ZK*-Ø]\^*[^H�Xvl'k(+_JC"� ·J`�a'� | Ob`)Þ�c�Ü ` Od_JC)�·R`o�k�D`Jegfihö�0©��H]-r��j&���wD')( µ�Ki| </L�N¢\K]¢ÕH©dn¢U¢î¶� �k��� �� a vM\�kt��YR')( b �k�KnlfD]-r+Õ��¢vM,I�� �� a </5�7t��Y"�)�t� wP:9mJ�n/o ¡ n"'�(^*#_�C3�l·N©È�)��<�p � �qh)jonXpX]gr�)�'�� +� a ©)!P��� +� a UiuHWkY Dq UGÉ�\Rr
rtsvuwsyx z|{~}���� ����9�� +� a v�'q(s*-��� b �+�&���� +� a n/(�a | »[OI¨© 2�4�� î+� ¼H½\�]gr
?��
² ³=´ F |Hµ �l�R·�¸ ³=´Çþ�´qÿ�� �K�
�������M�3� ���M��� �������M�3� ���M���
�b���1�����b�������d�1��� �¡���¢���d�1��� �¡���£d¤)¥�¦ £d¤)¥�¦ §b¨6©«ª � ©¢¬w®¡¯
°²±G³²´'µ·¶
¸G¹ ³�´lµº¶
»D¼G½R¾�¿ ¸�¹ ÀÂÁ
®����ÃW��bÄ�Å µ²KD|�Æ S�U
a | »�OD b ®���� ø1Ç ÉH\mr�a | »jODqvGÔq[ÉÈ�º/�»�_²Ê�ÊBËDwl×GÌGÍ�w�ÎDÏÌ�Í0w�_)Ü�Ð9ÈGºJK» wH��ÑG«¢Ü+Ò | ÈlºJK»¬wkß àÓÈ�ºJ�»gn"¼q½#ÔlÕgr�ÖG×µ �9�"·�¸BØ]Ù�Ú�Ô9Õ�ÈGº�¶» Æ ÖDÛ)Ï�Ü Æ¬÷ ø ó�Ý�Þ1ß � aI×Pà�ÈMáRlà�âTã²äÓåæBçJèêé ×RëÈ�á]Ià Û]a��ìDíBî�×�ï9ð�ÑPÈjá]IàbÛgß àºÈTá]IàbÛJì�ÑTñ#ò�Ò×È[áJ'àTóô ÇMõ�ö �� ��+÷ Æ ,��ì#×ø÷ Æ%ù�ú âjû�üGÔlÕ ç
ýRþ'ÿ���������� �������� ̲ÄDÅ����Dc9òlÑ�� Æ =D>��BÄDÅ Ç�� å�� �"! Æ �ì�× ÷1Ø��²c�òlÑ�� Æ_�C3�$#�â ö �&% ç _�C3�'#(�MÄ�Å�a'�J×*) Æ,+�- â�.(/ Ç�ö �&% ç
0 132 4 ���5�6�Ä�ÅIa'�J×5) Æ +�- â�.�/ Ç aP×#àTO57 Ç8� å 2�4 9�: â�Ö<;I×ø÷�Ô�Õ ç õGö=?> @ 7�ì&A�B Ç�C Õ[Ä�Å"��Û�D 7�ì&A�B Ç8E F�Æ8G,H,95: â�Ö�;�× ÷�ÔlÕ ç
I�JLKNM ���5�6�O íP7�ì'íRî�×#ï+ð/Ñ'È[áQ79à Ç�R�SUT<V ��WIÕ O ×Pà Æ<XZY\[ åRâ ö �]% ç!�^Q7�ìD×ø÷_^ ��`ba �DÕ'c d�� O ×Pàfe g c,db^�hQi6/dÛkj l c,d�Ûkm n � jc,d o5p5q ç X]Y\[ åsrt�8c,d OtuQv )k^ +�-�a w�x �Py F*z q ç
{
| }�~���v�� ìt��#�� }�~���~3�3� û�ü
OPC REG
TMP REG
SRC REG
DST REG
FLAG REG
AH ALBH BLCH CLDH DL
SP
BP
DISI
EA REG
INSTRUCTIONDECODER
OP CODE
CONDITION for BRANCH
REG FILE
in1
in2
in1
in2
out1 out2
INTERRUPTVECTORADDRESS
ALU
Multiplyer&
Divider
EA BUS
DATA IN BUSDATA OUT BUS
�����������5�(���(�����
�,�L�3�*���5 6¡¢,£&¤3¥L¦s§$¨�© ��ªk��«¬�®3¯*°?±�² ¢3£ ³5´�µk¶<· ¸�¹]º ¬L� »���¼¾½�¿À(Á�Â<à ±�²LÄ £"Å � ÆP� Ç�È\�L�*É*Ê�¼¬ ¥ ¦s§\¨ °PË3ÌbÍ�Î�¬�ϾÐ�Ë3ÌbÍtάk° ´]Ñ�º$Ò�Ó ½�Ô Õ"½8Ö�× Á Â8à �5Æ�� Ç"È\�Q�(É*Ê�¼�¬ ¥�¦�§\¨ °�Ø Ù ¹ Ω*ÚsÅ �*Æ��(Ç"È\�L�(É(Ê�¼�¬�Ë3Ì�Í�Û�±3²LÄ £ ¬ · ¸bÅ Ä £,Ü�Ý �,»��3Þ�½�¿À(Á�Â<Ã
ß&àsá(âk�3�(�3�5 N¡º ¬Q� »��N¼ Å8ã�ä,åæÑèç�é ½8Ö Á�Â'ê ë ¤'Ý Í�ì à åíÑèç�é � »��N¼ ³�Å�î
ï Ä £ ð�ñ ÊL�?¬�Ç §<ò3ó$¹b¥,ô,õ È$Þk� �k¬�Ç §<ò3ó ¤'Ý ì Ã?ö Ç ÷Pø §úù ªû Å�åLç é ¬ ¨�¦�§�üL¤ Ä £ý¥?¦¾§ú¨ �Q»��6¼¬?þ�ÿ��&Ïf� ¼���Ê õ ê�ë �L»��6¼¬kþPÿ��*½ Ý Í ì'¬ ³���� ¬ ê ë Ï$Í Â8à ¶�t© ¹ Ä £�¥�¦ §\¨ ��»��N¼� Ó ¿À ©8¶�· ¸ Ïs�í¼���Ê õ ê ë �L»��6¼� Ó ¿ À ©8¶�·�¸*³�Å Ä £*ð3ñ ÊP�?¬ Ç §ò�ó ¬� ���°�� Â<à º ¬ ê,ë ¬� �� ¤ �U�����¾½�� Á�Ã�]�����¬���b½�� Ñ Ç�� ¥ Æ §�ü � ¤ ¥Q¦ §ú¨ý©8¶��(³ Î ¹ � ¼���Ê õ Ä £ ¬ ê
ë�� ³ Î � © Ú�!#" ¬�$ ¤ Ç §�ò�ó�³&%  �'� é Ï$Í µ�( Û Â<Ã
)+*
| }�~���v���, ��-�� }�~���~3�3�'.0/
previous statecheck string state
instruction fetch state
IP load from BUS UNIT
repeat prefixcheck
with repeat prefix:IP decrement 2
no repeat prefix:IP decrement 1
other prefixcheck
with buslock prefix:IP decrement 1
with segovr prefix:IP decrement 1
with segovr&buslock prefix:IP decrement 2
13254�65798 i;:=<�>&?A@(^8c3dCBED&F�Gk^�H�ILj'J n
PROCESSORCORE
ON CHIPINTERRUPT
CONTROLLER
INT
INTA
INTERRUPTVECTOR ADDRESSINTERRUPT
SIGNALS
132K4ML579:N<O>&? u FQPSR v�T&U B;R�V&AXW ^�YZ
[�^�\^]:_<`>�?a���G;bER v=c�d'e V b �fc�gihjU'd�k&lAmonXprq c�djbs'tvu - d :=<O>&?�w v -xF�bzy{ dfk W}|�~:f<�>�?CF�P�R v'T0U�� R�V u W U ^�Y�Z�b�1�254�L az��z ~�:�<�>0? u F�P�R v
T�������O�� D h�p�q :�<9>^?����'� dz� @�] � R�V u W a�� d :�<�>�?��'�x�#���b � W v P z q�~C[ dik ] � R�V u W p�q :N<O>&?0b��0����� ��� b �(z �#��� ��^�^� � W v PX¡ V q U :=<`>�?Aa"�EG ��c�g�h b�g q�~ �¢�C£¢� D h'pjq ^:N<O>&?��¤�@ a ��� d���¥'¦��§�¨'© r¢ª;«E¬¢�® w <�¯'° z q�~±A² ]&³�´;:µ<O>&? ��¶'· y¢{ h',�¸ PO¹ºy¢{ zC» ~
{+¼�¼
½ ¾À¿xÁ¢¸�Â�Ã&Ä -CÅ ¾À¿MÆ5¿;Ç;È'.0/
ÉËÊ�Ì�ÍÎ�Ï;Ð�ÉEÑ�Ò�Êl�mjn�Ó^Ô�Õ Z d��;ÁÖc�gvh ® ��×C» £�¸ G ØÙ^@ ±�Ú ®�Û;Ü ×0» h P n FºÝ
¶·�Ô y¢{ Ô�ÞCÔAh¢ß�¸ P�¹�à » ~ ¶·�Ô�£CẸ�cãâ'ä � h P n FºÝ ¶;·jå;d |�æn�ç�¸ P ��n s�èvu Ä�h bié�ê h P n FºÝ ¶· ¹�àEë ��¥¦je�Ô�h ß�¸ Pì®�íî ×0» ~ h P n FºÝ�Jï h¢ß�¸ P Ô Jï Ô�ð^ñ b�1x254óòô2�® ��× ~�õ¢Jï Ô�.�/ b1 Ô�ö �&® �÷ ¡�ø kº.0/ ×C» ~òô4ù:¢>C? Ô�ú;û�Ôºü tvu Ä b�{ ± êO~ ee ¹ å;dþý¢ÿ���úEû�� à ñ���ý¢ÿ����ß�¸� ®�í î� � ±�� ¥;¦����OÓ��
���`¶·�£�Ẹ��������� �!� "$#&%�')( è+* Ä,�-� à »,. Ú ê .0/21-3^×0» � à »�45��76OÓ98 ±�� 4 5��7:OÓ��6��<;>=?A@9�CB�ÔED / üGF * Ä ×C» �9H ¹�à ñ0��¶;·I(�F * üJ�ß�¸��Ó í î×C» �-H ¹JKJL ñ0�7:OÓ��
:��+M�NGO0PI� / (�F * ü� ��QOÓ��Q��`¶'·SR�T / +��UOÓ��U��WVYX2Z[ / T K � ��\OÓ��\��<]_^`8ba<^&?c@d��BºÔ�eCPºÄ�'cfgP7�XåS0hi�kj0Ä�'cfgP7� / T K�ê ���l� �!� "m#<%
'�( èn* Ä�� / éÖê ;>o,pq]r�A]s;>tu]wv�x&Ô 4 5[y Ók��z�ñ,{-|CÔ 4 5C�C} Ó-�y�� ~��S(�O Ý ÔAüGF * Ä /�×G� �9��� /c����×d4 5��7}OÓ98 ���g� K � 4 5��
v�xI(�F * üS�'ß���9Ó í î ×�� �}��<��� �!� "$#W%�')( è * Ä,��� à �c4 5�� ò Ó9�k� � 4 5��Av�x7(�F * ü��¢ß����Ó í î ×G� �
v�x /c���u� �R�T ×C�A��� �l� �!� "m#�%�')( èi* Ä�� / é�ê ���,'dP Ý v�xS���S�� Ô�R�T����)��� ò Ó9Z ë�� h � Ô9��Õ� � ��¡ï � � �c¢G£ ��ý'ÿG�-��¤ �åA¥�¦ K ��§�¨�© � �
ª&«�¬«¯® °²±�³µ´·¶ ¸¹ ��º�» * �¼�E|�½ ¹ �d��¾�½ ¹ �EÔ9j��gBºÔA¿�À / T Kxê �gÁ��,? �kÂ-à �
ÄJ��Å Ý f0PÆ��?)@k��B�(�ÇcedÈ��-v�xGÉJeCP9B�?c@9�GBw�-v�x�Ê�Ë9�,�k¿SÀ�½Ì �uÍ Ã ×G� � ¹ ��ºS» * �ìÔAT KQê<¡'ï �
ÎÐÏbÏÑÏ
Ò ÓrÔ7Á���Ê�ßCÕ�üGÖ ÓrÔb×�ÔSØSÙ�Ú�Û
BRANCH INSTRUCTION
MEMORY/IO ACCESS
QUEUE IS NOT FULL
BRANCH STATEyes
no
yes
no
MEMORY I/OACCESS STATE
yes
no
Idle
QUEUE FETCH STATE
HIGH
LOW
PRIORITY
Ü 6��Ñ}�Ý ¹ ��ºS» * ��Þ ¡ïSßJà�áSâ
ò �ãv�xIÊSË9��Þ�(�F * ü © R�TGº�» * �>ä0ÞEå�æ���Ðfdç['WèG��|�½�j ¹ e�� © Þ9jg�gBkÞ�éCæ�ê6��ãëJì-v�x�ígÞAv�x�ÉJeCP9B�?c@k��B>��îd��uÅ�ï�fgPI��?)@k��BkÞAVðXiñCòÞ76Wóg�Aë L�ô ñ � �õ ñ ôdö ��÷������ Ì � ¿�À / T K � ��ødí0� ¡�ù úEû��,ú�ÂÆ ��4 5���û 3
ßJà�áSâ � ¡�ù / T KÆü � � Ü,ýþý �
ÿ���������� �������R�T�º�» * �&�Gfkç[' © j0�gB9Þ�� �� �E/ ø�� 8 . ókëJì�vSx�Þ,R�TG� ö�K
� 4 5�8 ¹ �Jº�» * ���������0�Ev�x Ê�Ë-���E�S �v�x / (SF * ü� {���ÞEvSxR�T / ��� �AT K ò � Ì ü �! � �
��" +�9v�x�É�e�PkB��$# %�Á���? � /'& 4 5��;)(+*CÞ�(�F * ü�í�,S��-;ú� K � Þk��z�Þ�. .,����z�ÞE��ÞAv�x (�F * ü�� ö í�,�� .�.0� ��z õ �gÁ ��?���!# %�Þ 4 5�� ö v�xI%�'A(�F * ü���/ %7Á ��?i���0fdç['cÁSÕ,ÅS� / T KIüÌ ü � §�¨ � �. � �7(�F * ü����Ev�xCÉJe�P9B�?A@d�GB / �¼e�PdÕ�'Af0PI�0 � �
1�2 ���3���v�x�Ê�Ëk��Þ5476�� Ì � v�x�ÉSeCPkBkÞ & 0Á ��?i� © R � Þ58�v�x © ÞSÁ �
? ��ÞAD�����9g��: � � õ Þ�;��9ëSì ¡�ù ��< õ�= �A4 5���. � R�T £ vSx�Þ58vSx�ÞJÁ���?i� /'> æ��8 õ Þ�Á��,?2� / R�TCºS» * �n�Eå � �9R�T�ºS» * �n�?A@ j�B���%�?c����fGPÆ� /DC�> ë�ì à Þ�v�x�Þ�Á��,?2� /�> æE � �GzSÞ�J��v�xCÉJe�PkB�?)@9�GBkÞEVÆX ñ�ò,8 îk�µ�uÅGï�f0PI�¼ÞEVYX ñGò / T KIü �
Î ÏGF
Ò ÓrÔ7Á���Ê�÷CÕ�üGÖ ÓrÔb×�ÔSØSÙ�Ú�Û
OE
data
address
t1 t2 t3 t4 t5 t6 t7t0
BLE
t8
BHE
clock
WE
even odds
data data
even
data
t9
HJILKNMPOLQ)RTSVUVW�XZY\[�]3^`_\]badc3e3^!f`g�h�i�j�k�]�l
OE
data
address
t1 t2 t3 t4 t5 t6 t7t0
BLE
t8
BHE
clock
WE
even odds even
data data data
t9
HJILKNMLMPQ)RTSVUVWnm3e�[�]3^7oEfpldc3e3^!f`g�h�i�j�k�]�l
q�rtsvuxwzyn{�|�} ~�~������� a�����e��$�7�D[�]�^�eD���5�3e�I���e$���A]nl������!�$���Z_ ���5� �Ae�^
f�g7h!i7��H�ILK�MzOL�LH�I�K�MLM �D¡�¢���£¥¤�[�¦�f��A�5§�¢�¨�[�]�^$e�������©tª¬«Pª�¯®°�± ��²³®µ´p��¶7·¸�!¢�¨3¹�º�»!¼�½�¾�H¿ILKNMPOL�¯ILK�M�M)e3^!ftg7h�i�»!À�ÁtÂÃRÄS0UW º5eE[�]�^�e������t�'¼¸½�¾Å�
ÆÈÇ
Ò ÓrÔ7Á���Ê�÷CÕ�ÉGÖ ÓrÔb×�ÔSØSÙ�Ú�Û
ADDRESSGENERATER
SEGMENTFILE
INSTRUCTIONQUE
QUEUEFETCH
BRANCH MEMORY/IOACCESS
REGISTERFILE ALU MULTIPLYER
DIVIDER
INSTRUCTIONFETCH
OPERANDFETCH
WRITEBACK
STRINGINSTRUCTION
BUS UNITCONTROLLER
EXECUTIONUTNIT
CONTROLLER
EXECUTION
INTERRUPT
ADRS BUS DATA BUS
EAREGISTER
TEMPORALYREGISTER
EA BUS INTERNALDATA BUS
CONTROLSINGNALS
INSTRUCTIONDECODER
DATA PATH
EXECUTION UNIT
BUS UNIT
IP REG
BHE memio
OP CODE
write read INT INTA
ÊJËLÌNÍPÎLϬÐ�Ñ$ÒÔÓ�Õ`Ö7×AØ�Ñ�Ó$Ù�Ê
ÚÜÛÞÝ
ß àâá ×7ã�ä$å¸Ù�æ�ç àâá³èLáAéAê�ë�ì
(2)INSTRUCTION
DECODE
(3)CX REGCHECK no repeat prefix
repeat prefix
(4)OPRANDFETCH
gotoinstruction fetch stateí 0
î 0
(5)EXECUTION
(6)WRITE BACK
(8)ZERO FLAG
CHECK
(7)SI,DI
INC/DEC
repeat prefix
no repeat prefix
(1)INTERRUPT
CHECK
no interrupt
interruptgoto interrupt state
repeat prefix&
CMPS,SCAS
other case
conditionnot taken
condition taken
(9)RPEAT PREFIX
CHECK
start
ïJðLñNòPðLóvôöõ�÷$øEù\ú�û`ü�ý þ7ÿ�����ÿ�õ
������
Aê��� ������������������! �"$#%"& �'(��)+*,�.-0/2143�576�8 ã:9ZÓ�; Ö=<$>@?BA /DC�'&'FEGIH:J Ð:KMLN< �BO@PRQTS�UIS:V�WM/�8 ?YX�ã E GMZ�[]\�^\�\�^ � \`_�aMbdc=e�fhg QS�U�S:V�WYi H K7j7å�k�Ö!ã WM/ml�1 GFn 3po�q eTr:s=e@t�g O=um� G 506Bv Gw H �����������x�, �"y#%"z {'(��)+*,�|-m}�~��|��' Í / []������G 5��:�=���d����~��|��' Í _�[]������2� g��0e } r�s Ù7Ñ3Ó�Ùm� /F�Y� G Í�� f 5�P��=��}0W ã�Ð / s@n���g �4/$�� ������� �����y �"z¡ \Ie �h ¢/ sMn=£ 506� 5 ^ ËLÌNÍLÍ }=8 ?�¤�<¦¥ eT§�¨�©�\�ª��¬« EF}�V ã 8¦}N@®N¯°/ sMn u¬6HN±�² ä�³!ã }2´ � / Î ^¶µ,^·,^¸ Cx����"¹E»º�¼ G 57��} r:s Ù�Ñ�Ó�ÙR� }Fº�½@�7¾�3
w°¿ �� G 5T6À µ Ì�Í � ±�² ä�³�ã }N´ � �NÁ � gÂr�s�Ã�Ä / ^ À µ ̳Π�FÅ�} Í · C Ý � Ð Ñ!ÒZÓ¬ÕEF}p�ê�}pÆ�Ç /m� � 6À µ ÌNÍ O°P ±h² ä�³Eã }N´ � /mº�¼ G 5pÈ�É H�µ Cx����"�}NÈ�É _Yr�shÊhË4_ Î�Ì
Í � ÊÏÎÐr�Ñ Ö0jÒ; E G w°¿¹Ó�Ô e�fB£ 506YÀ µ ̳ΠOMP¬Õ Ð Ñ$ÒZÓ¬ÕtÖ�× �pÅ�}Í · C Ý � Ð�Ñ!Ò�Ó¬Õ E×Ö�Ø�Ù@30�ê _ ®¦Ú w 3 g E»Û �Bg 6
Ê µ ÌNÍPÏ CÜ'z' _ ®0¯ G 5 ×!Ò�<$Ø U ÖEãÞÝ }Tߦà
ÚÈÛÞݳݯÝ
ß áâáh�ê��� á áâLá�ã�ä�É�å��=O g ��
Ê µ ̯ÎLÏ �������������! �"»#%"z �'(�{)y*!�|- r�s �B}2æhç
À µ Ì�ÍzÏ ±�² ä�³�ã }p´ � }2è43��=O g Æ�ÇéYêMë�ì¦ímî ï�ðMñ�ò�óNñ¹ô õ ö ï�÷�øFùûú
üþý ÿ ��� ������� ��� �������� ��� �������� � � � ü������� ý ÿ ��� �������� ��� ��� ü ��� �������� � � ��� ü������� ý ÿ ��� ��� ü �� ��� ������ ��� ������ � � ü ��� ������þý ÿ ��� �������� ��� ������ ��� ����� � � ����� �����
��� � ! " # $ % & ' ( )8 ã�9¸ÓM; V+* ?Yj /-,�~ Í \ Í/.10 µ!¸,µ,[32 E G w5476 *,��� 6 �98:8 Û "z� Ë�Ì;. e ã:ä�É�å G 5
Ã�Ä /mÀ µ Ì³Ë �p� � 6 n=<�H:±�² ä�³Eã }p´ � � µ Cx����"RE � g 6>@? j 8�ACB ? W@/ED w AMU ÓDÐ A Ñ�Ó5Ð eGF å G 5-H�E�E HJILKJMON / �¬�QP
EÂ�SRM�p1=T G 5UH�E e+VOW=_YX�tMÎ+n�£ w G0��£ 5T6ZHN}p�M� >@? j 8�A[B ?W�/Z, � #B�=\ ÓY]h<¦¥ � g H�E H å�<_^�A U ã >_? j 8�/a`Ob��2l@3 I[KcM /sMn u ned }Sf Ó ½M��OMP7gYh _Oikjml�g 6ßon HOpoqCr=s � /YtSu � gYvOlJwox5y{z}|[~=�c�O�L���J���m�=�����J�
�����
� ���C�o�O��� �����1�����O���Z�- � ���
¡ ¢1£�¤1¥§¦U¨+©Zª@«C¦e¬c¯®�°±+²´³¶µ¸· ¹+º=»c¼k½ ¾�¿ÁÀ�Âoà ÄÆÅ ÇÉÈ�ÊÌË�ÍÏÎÑÐ�ÒÔÓÕ=ÖØ×ÚÙ ±+²´³¶µ¸· ÛÔÜaÝßÞ àQáá âÔãåäÏæçéè ÜëêíìîÒÔïñð�òÔóÔôÔòÔæ õÔöø÷ÔÜaÝßÞ áá âÔôÔ÷åäÜ@ù�áúøÎ ËÉÍÏÊ�Åû÷�âÔôÁæÔòÔóÔóÔó õÔöøõÔÜaÝßÞ ÄüÐ�ÓþýÿÐË æÔôÔ÷çéè ÜëêíìîÒ��7ð�òÔóÔòÔæ æÔÜaÝßÞ ç Î ËÉÐ���ì��:òÔæ��7ôÔöøó ãÔóåä
� ���� ������������������! #"%$�&�'�(*),+�-.0/21�354�6 7�/98;:=<�4?> @BABCEDF> GIH=JLKMN 7;<O8�PRQ�S TVUVUXW Y[Z]\^
_�_
` a b
cFd £fe �hgji�k�lY«nmLo cFd £�¤¸�hgji,p�¡qmro csd £�t7�hgji�uwvyx{z}| ��~��w�,� m��� �c�d £fe ���*�w���5� � �G���j� �o�Em}����� ���%� � �S�;�;� �������[�¡ £¢��- }¤
¥§¦�¨ �ª©�«¬� « �=® «°¯²±�³�´ � �S��µ cBd £�e µ ¤¶·¶§¸r¹�m�º¼»�½ ¨·¾�¿À¥§¦Á¨ ��©ª«¬ � ¦U¨+©{ªÚ«¦e¬c � �J� ¦¶¨+©Zª@«�¦e¬c � ®C°O�C� � ¨ �,Â�Ã�Ä=Å ¹ÇÆ � ¹�mrÈ�É � �J�È,É;Ê?�Ë��� « � ��Ì � �jÍ5Î�Ï � ¸L¹=mÑÐÒ¤§Ó � �jÔwÕ ��Ör×,ØÇÂjÙwÚ-�;Û ¹Æ_�O�O�o�m��Ü �´� k�ÝßÞ�àhá ��×,Øm��âwã m � �åä ��Ê?æèç,é ��ê�ë2��Ö*ìl*|�íhî=m?ï ¨·¾ » ¦Á𪿠æq» «ñÑò��ª© ¦�¨ �}® �;ó+�B� o ¥§¦�¨ �ª©�«¬õô �÷ö*øqù�ú z �wûhüqml=«�¯ � ¦U¨+©ZªE«C¦5¬c � �´��ý ô ��þ ¹ � ��� ���n� x â,ã mLÿ�� �èÖc�� ��ÿ�� � gji����Ex �O� ûèüqm cBd £�¤Ñm ê �w���=� � �´��%� � ��Ö� ��Ê� ���������{ÿ�� � ��ì l Ý�� ó�ì m Ø � �÷Ö�� ���L«���
� m â�ã � k� ��! í#"%$ �'&�(,�%� måÍ�Î ��ÖG�
top.sfl
Icarus Verilogsfl2vl
top.v top.v main.v
Bruce’sC
compiler
LogicDesign
SFL
HDLconversion
LogicVerification
Soft WareDevelopment
QuartusII
Logicsynthesis
)+* -,� /.'02143��
_£_65
� 7��=g�isk,l�« 71���1� ì lyÝ�� ó%ìr�n�
Jun. Jul. Aug. Sep.
Oct. Nov. Dec.
SpecificationBook
Understanding
Prototype Design LogicVerification
InstructionDebug
BenchmarkEnforcement
Monitor Program & BIOSDevelopment
Prototype Processor Development(2 months)
Processor Core Development (3 months) Software Development(1.5 months)
Jan.
OS simulation
Bus UnitDesign
ExecutionUnit
Design
cOd £;¤1¥ g�i�����8wû:9
ControlLogic
REGISTERFILE
ALU
Data PathSRCDSTTMPEA
Execution Unit Execution Unit
ControlLogic
cOd £;1¥õÿ,Í=<�>?"�Ý@8 �*� 8�³BA
C�DFE G H I?J K GML Nì lPO�à ! Ý@8�Q#R�S�Ê:T�U0¯ Þhà�á �*�PVXW�YZ�[��hÖ 8 Z�\:]5ì4^`_ � ó
ìbadc�e%f�ghjilk?m�no�p qsr�t�u�v2exw4y`z{i{|P}B~�gd��^l�2���?�X� 8P�� Z�[��:k�4^�_��'���%a�c=�l���X�P�B�4�{��������i'k��'no�wPf�������_/���4 ���¡
¢�£ Z�[B��kl¤=¥�o�¦ U �j�x§4¨`©«ª4¬?e®�¯�°b±�ix�4 ��#z�i4i4²�Z�[B��k?zij�=h��l³B¦ U �µ´¶?©@ª4¬�·?e%¸�¹��%a�c=�bº�»�edz:i{k{�4 ���º�»#��¼�½�e¾À¿ Á pÂ��ÃdÄ:k
ÅÆÅ6ÇÈÇ
É ÊÌË=� �2Í ^ U Ê ËÏÎÐË�Ñ ��^l�?�Ò���X�P��a�c
Ó ¿ Á-ÔÖÕ ��^×_��j���#© Ñ ��^l�2�����Ø�Ù�Ú�Û4Ü�Ý4Þ4ßà á â ãåä æ ç á è éëê ä ìí ç îðï ñ í ò óõôõôöô÷ í ç ê è�ø ù ú ò ûõôõôöô
ü�ýÿþ � � � � ��� � � ��4^�_��'���%a�c�� �������jex���?z ³jwPf��4����_����j¦ ���µ´�¶�©@ª4¬4·
������g���� ¸�¹Be%w ��z�i{k��4^�_��'���%a�c��xÜ�Ý ©"!$#&%�g��4^{�?� ������µØ4ÙP}P~#�xÞ�ß?e Ó ¿ Á-Ô �µÃ�Ä{k%rPt4wXy('���z%�*),+(-(.#�0/��j��[*��³�12 ��3&465�7B³ 8��:9�_ ^$� ;X�{w�y=<�zµ�����:<'���'³PØ�Ù�}�~�o�>?+�u�vB³� �A@CB < ÔÖÁÈ¿ +�u�v`©bg=�%��^×_��l�d�µaBc=��D�Ý�� El±di�©"F 2 ��kGIHKJ eML��i=m�©�N$Oj· O4� ÔQP �SRUT PWV N��^�_��'���BeYX#²Z> �d�B��^
�2�����P� � � e%f�g 2 i'k
ü�ý\[ ] ^ _a` b � c d�e�gfh�SiX�ba�c�#CjSk�³Zl Í=m �6iX� � � ��nPu��Mo�h{ijk�mbnqprN���w �z�ir�C�gfh�6iX�µaBcWsd�br�t¦utÀ��v��MwAx2e®f#g4�{³�mµnoel Íym �6iX�SNo�7AzA{�|~}$����A��� ;C� 96��O��ð©"F 2 ��k����k�³$� G�� w&����A�C����©Pzb���B�=�P�����A;6��� � �*�0���&�u�6� �
�=�P�A��� ;6� � � � � � ���X��9l�A���A;6�W�����y�rFA{CN����� �Y��� �'³�C�gfh�6i��P�0�A�dÄ��{¦ut�X¶a|��l¶��l���eE����xª4¬ �¡ ���'�Z9S¢¡£¤F {�:¥j�µ�4 �Y�q� �6�r�¡¦�§ �&¥q�¨7Az {©|~}(���«ª¬ ® F�{ ��¯ m �����:�rN°C±6² ��³#�d� ��� ;e� 9u��O ��� ��� 2 �S�
ü�ýµ´ ¶¸·=¹ º » ¼ ½ ¾ ¿ » ÀÂÁÃ�¯ �Ä�W� �����Ä� G � � w�ÅAÆ�� � ²��WÇe�rÈÄ|���ÇÊÉS9ÌË�Í��j���P�6ÎCÏ
Ä=� � � G�� wCNSÐWÑ`© � �ZÒ?ÓÔ� G �MÕ(ÖØ× TÚÙ ��Û�Ü � � ��Ý��6� � ��Ý�� Ò?ÓÔ� G� Ó ¿ Á >Â��Ã�Ä �
ÅÆÅ6Ç;ÇÈÇ
É ÊÌË=� �2Í �$� Ê ËßÞÐËqà?á � w��WÇC�6È¡|h��Ç*ÉS9
Ó ¿ Á > Õ � �âÝ�� ÒãÓÔ� Gäuåeæ ç«è�éÄê ä(ëìîí"ïUðòñ ó�ô&õ(ö(÷Êø ùìîí"ïUðúð û ü&ý&þ&ÿ��������ìîí"ïUð� ��� ��������ìîí"ïUð� ���������¤ì����ìîí"ïUð !Wö#"qö%$&�¤ì'�(�ìîí"ïUð) *,+.-�ö/�¤ì����
02143 )4576 G � wÊÇ98uÈÄ|h��ÇZÉS90s�:*|���;9<>= 9@?&:BA>C
D 143FE 5HG�1 Ý��JI,KLNMHOPLRQTS UWVYXWZB[]\W^�_ `]abNcNcdcNcNcNbfehgfi LjQ bdcNcfk�gfi lnmpo(k SPqsr t iuiwv xzy|{~}~�������7�������bNcNcdcNcNcNbfehgfi LjQ cdcNbfk�gfi ����k S�qsr t iuiwv xzy|{~}~�������7�������bNcNcdcNcNcNbfehgfi LjQ bdbNcfk�gfi �h����k SPqsr t iuiwv xzy|{~}~�������7�H�����������cNbNbdcNbNcNbNc ���p�T� t iuiwv vf� t�� �H�������¡ w¢�£
¤@¥§¦©¨/ªH«�¬��®�¯±°³²T²R´µ¬�B¶�·�´µ´.¸�¹9º�»�¼¾½�¿�À�Á#ÂYÃ.¸/¦�Äw²T°�ÅÇÆFÈ4É�Ê�ËÌJÍ�Î À�ËÐÏBÑÒ¡Ó9Ô¾Õ©Ö¾¹@×�ØÙ¼¡¸�ÚЫ�Û�Ü4Ý]Þ ÌJÍ9Î ÀàßÙÊàá>âäãåÈçædè�éêìë4íTî�Ê>ïð#·�´µ´�¸�¶�½#¿¾À>ÁàÂñÃ>¸ò¦�ó�Ó,ô�õä¶Jö,÷�¡ÓäÔ.øù¨Òú�û'ü�ýÿþ��Y®~ü�ý4þFý����������������� ß@½� ,»���½�».¶>Ë ÌùÍ Î ÀàË ÏùÑ�¡ÓÐÔ�ÕùÖ��&À��µ¶����ж������Ê��! Ú"����#�$�%�Ê�&�'>Õ.â©ú)(�*,+�-YÚ".0/!1Ðßù½� ,»2��½�»à¶>Ë ÌùÍäÎ ÀË ÏùÑ@ÂñÓäÔ,ÕÒÖ��&À3��Â54�6 ¦87:9ÐÑ<;>=!?A@CB&¶5DFEG�ùÊ�Â,Ë ÌùÍ Î ÀàË ÏÑIH9âIJFK�Ê.áàâÙúÔML@ÖäË ÌÒÍ Î À>Ë ÏÙÑ©ÚML>ÕA'@Ã>¸ò¦Ù¨�¹�ºÒ»�¼�½#¿¾ÀàÁ&¶:NMO ¶�7¾ÀP;Q#
ÅSR T� R�U7¸9¶WVù¶�Ê.á�ø�¨�¨�X)Y!Zж�[F\ Â�Ó Ô�ø�¨ÒúM[]\ ¦J¨�Y!Z_^�Âa` ý4þFÜ�Úb HÒú
cdc Åfe
g h�iWj�k<l�m�n h�iSh�i�oGpMq�rFs!t!u
vxw�ySw�z|{~}��������a�0������� o����
����� � � � � � � �� j�k]���G���F �¡8k�¢_£�¤ � oGpW¥5¦�q�r]s�t!u �I§¨����v�w�yS© ��ª] �¡�«
¬�W®�¯°:±�²�³ mµ´·¶�¸ ³ qMj�k_�M�F �¡�¹)o2º!»�¼C�G´ ²�½�¾ »�¼C�G´¿q�ÀFÁ�q�Â
Ã_q:o_p �aÄFÅÆ����¯ ¦ � ¡ ²MÇC³ m:ÈÉ�·Ê0j8k_���F �¡�¹)o2º�»F¼_�É´ ²�½�¾»�¼G�G´ �8ËMÌ �!ÍWÎ:Ï�ÐÑnFÍGÒ:Ó ���8Ì q5Â�ÃP¥ÔÀ�Á�Õ!Ö ½�¾ q)o_p �"Ä�Å����¯�× ¼�¶ ³ m]p!Ø8Ù ²�Ú>ÛÝÜ¿Þ qMj8kG���] �¡2¹�ß!à �:� Õ!Ö ½�¾ Ì q:oGp �"ÄÅÆ����¯Aá!â Ü¿Þ q�Â�à � ÍWÎ8Ï_Ðan3´ � ¡!�¨ã ² ÈWp�ä�Ó<´�å�n:oWn0ØM¸çæ ³è l!éê�8��º ² è�ë n�´ ³ è l!éê���8º!ì8í]îï£�¤ � ÕFÖ_q)Â!ÃGq:oCpAq Ä]Å ¥À!Á�Õ!Ö ½�¾ñð k�¢ ð_ò�óAô�õ � oCpMq Ä!ÅÉ� ¾_ó�õ ¡] ®)¯o_p�q:ö,÷ �:ø�ù]ú ò�ó�ûWü ¹5Õ�Ö]ý�þ�q5ÿ������F A¡�� õ � ��� �2����� ¥
ì���� ¤ ®�¯� ��È�p�ä�Ó<´Qå�n�oWn0ØM¸3æÔq�í!î<£�¤ ����� q���� Þ�� Õ�Ö ²� Ü�� Õ!ÖGqAÈWpFä�Ó<´��_ä ×Æè ²���� ä ×Æè �0È�p�ä�Ó,´¿q"!0n�º ²#��� $&% Þ ² $&' Þ Õ!Ö_¹ Ü¿Þ qFÍWÎ�Ï�ÐIn]ÍGÒ�Ó)(�* °�ð ¹�Â!Ã�q,+.- � ¾�ó2õ ¡ � �± k�¢�� Ì�/ ì ô!ô�õ�0 ¯
12123
g h�iWj�k<l�m�n h�iSh�i�oGpMq�rFs!t!u
v w�y54�z7698;:<: % Ü¿Þ>= n�´ Í�Î8Ï_ÐÑn]ÍÉÒ8Ó Ì q5þ�?
Execution UnitBehavior
Bus UnitBehavior
Single InstructionBehavior
String InstructionBehavior
Bus & ExecutionUnit Behavior
Single InstructionBehavior
String InstructionBehavior
SingleInstructionBehavior
StringInstructionBehavior
StringInstructionBehavior
PrototypeProcessor
Development
Processor CoreDevelopment
Monitor Program& BIOS
Development
OS simulation
Bus & ExecutionUnit Behavior
Phase Number of Bug
@BADC5EDFHGI�J.KML)N�O�P,Q�R�S�T�P�UWV
X2XZY\[
]
^ k � 0�³ m8Èï�êÊ`_.a ��b ��ced_� ½�f � ÂFÃÆ£,g 0 ¯ ½�f Ì�hikj æmlon"ap�qkrts 4Duwv ðyx ®�¯z|{o}~h ³.��� Ø�Ù�� Ú 8;���<:��5�7z����D�����5��:<8 ð _0Ó���¸��� ²ä ×�è �>����� ²�½��k� ÂFÃ���+�- ð�ò0� z�{�}k� � �� a�ÈCÓ = è�{.} �>��"� ^� � 0 × ¼W¶"� ��� Ø8Ù h ÂFà h þ�?��|s 4 u�¡ �,¢ £�
EAB SRAM
ProcessorCore
FPGA
address
data
BHE
BLE
address
data
BHE
BLE
OE
send
receive
RS232CIF
AddressDecoder
control signal
address
data_out
data_in
control signal
WE
LevelConverter
forRS232C
controlsignal
controlsignal
@B¤DCw¥<F7¦¨§�©eª�«.¬�#P�®k¯M°²±�³"´>µ·¶
X2X2Y\[�[
¸ ¹ º�»¨¼¾½7¿yÀ h�Á f
sB u�¡DÃÅÄ.ÆÈÇ � ��� Ø8Ù Á"É�Ê#h�Ë�Ì
Í2Í2Î ���5�
^� �mÏÐ� �WÑ·Ò h�Ó�ÔÕh�Ö�× �mØ�Ù.Ú`ÛeÜÈÝ#Þ �
ß � �àâá�ã _�a>äyå ��æ Þ i�jMç l�n.a>äyå h�Á.è�é�ê
ß Ä�ÆÈÇ � �·� Ø8ÙâÛ·ëíìïîÅð ^� ��æ Þ�ñWò�ó�lon"a>äyå h�Á�è�é�êß Á f���æ~ôöõ.÷ h,ø�ù � Û�úüû � ��ý�þ ô h,Á.è�é�êé�ê�h�ÿ�� �|s�� uwv �,¢�£|������ a j�� �����th ù�� � ø�ù ä·å � ø�ù����~h���� � �Wà�á ã _�a h ^
� � É~��� Ú ��� s�� u v¾h � v��! � Ó"�#�%$ �"�'&�( }*),+ � h � ��� Ø�-�. �/�1032Ü } �54�� �,Ú·� ��� Ø�-6. � h7��� ñtò ó²lWn98 h9: � � Ék�;� Ú ��� s<� uwvíh�>= �? �A@ �B�DC�E r~îÅð h�F�G �IHoq ��JLKNMPO ÷ �;QSR6� Ù3TVU�W�� Ék�YX �9� sZ� uwvT �  �? � � �#�
[]\N^`_baLcDde/f,g aihkjklnmnonpNqir s [utij/\N^vdwyx [zaihkjklnmnonpNqir(1)j fL{n|~}N�y� d�D�(2)� � lnm
(3) � �N�~�
(4)�~�~�����n� d^~�v���n�DcN�(5)�N�n�n�/�v�~�,���^~�v���n�DcN�(6)
OSdL�n�
^~�`��\` b¡¢j¢£n¤ ¡¢c¦¥k§ fN¨N©Dª~| tD£n¤
(7)FPGA «y¬®�¯k°®±I²%³7´
µ·¶"¸º¹�»½¼S¾À¿�Á�Â<ÃPÄ�ÅÇÆSÈ�É
ÊËÊÍÌÎÊ
Ï Ð
ѺҢÓuÔÖÕØ×ÚÙ3Û<Ü Ú7Ý ÜVÞ�ß�à ð ì :�á�â�ã Û�äæå"ç"åDÂNè�é�ê6ëYì�í à`á)ãïî 81T :�áñðò�óõô ß�à ð�ì äyå é�ê × Éñö�� Ú'÷�øÇù çÚú1û 8>äyå�ü�ý�þ�ÿ���Â���� ���öÔ Tì�í àká ã T :�á × É Þ �� Ú�� ð JLKNMPO ÷ � � þ Ü���Þ Þ��yÛ�������� ð �Û�� T��ÕÞ :Sá�â�ã Û ÜkÝ#Þ�÷� Ú ��� ì�í� û�� ó"!$#�ÿ&%ÈñWò ó ú'û 8mä·å�' ü1ý�þ � � ô���(*) à � 8 à.,+.-¾Ü0/ ��1 Ü�/ñT3254��6�87 Ç ùMó Ü:9�;�< � ��= Q 7 � Ù × :Sá��&> Ú?�Û8�@� ���0A ê ì�í0 û�� ó*� 0 Þ A ê?BÖ�× ×C�ÜD�3Þ Þ~ÛFEÈÝ�� � Þ�÷C�E�G`Q -�H ) ù Q�I . ×3J�K îÅð8����=?LkÞ Q 7 � Ù T�UW ×DMON3� ñ�òÐóú9û 8QPkøÇù ç ú9û 8SR�T ðVU LÈÞ A ê�W�X ×8Y�ZõÜD�3Þ >�[ Þ ÷
\]\]\
^`_ba�cedgfih ä`j flk (emon moprq Grs )utbv ä`wix fiy Ñ{zLÓuÔÖÕ}| k J à~ f ß t�� ä�� f w 1 f x�� tb� ~ t���� d v�t�� f x d xà���� K d ��v�tb� G`s mo��mo1��@��� d x v�� J���x � di� t x ~ d � v�� G � f � �`� åg� � O G x f � _ �iG������i�g�i� � �g�i�i�iG� ç"ç � �
^ � a n�1 k � åi� q k � ��� k n O c q O à G m x ~ t � G _ �i�i� �^ � au 5¡ G£¢.¤�G�s�¥§¦©¨�ªF«5¬® Û 1 ¨ q°¯�±0²O³u´ á;â ã ×Sµ@¶,· sgG�¸�¹&º¼»ú9û ù�+�½�¾® »��iG å G`�iG _i_ ��¿ G 1�À$Á Â0à GÄ� ç ç � �^ÆÅia ¢&¤ G 0¡ GÇs ì�í�È�É,½Ê+SË�ÌÎÍ�ì ×VÛ Þ [Ϩ ) ¨ _i_ ê6ëYì�í�ÐÏÍÒÑ�Ó ´�Ô G`sÕ _×Ö�Ø ¦©¨�ª:«*Ùi¨�Ú )&)ut�v�Û wgx 1 f x y tb��t x�Ü tÞÝ�ß ¹ Prà$á:â »Dã ß�ä IS»�å�æ�ç�G�����g� � _bÖgÖ Gè� ÖgÖ � �
^ � a ¨ d ~�é m Ú�« c m Gr¦ ��t�t�)uê k3ë t�� x t � G �*ì )Ï� fíf j v G _ �i� � �^ � a � d � y � � ê�î c G�ï Û � ëñð Ú � G�¨�ò m c ��� ��� q ¨ � k k � ò ê ceó � ó mo��moê c G« óuó m k ê c � î.� k Ú � ð G _ �g�i� �
^ � a�k ¦©Úlô�õ�ö Õø÷  ù _ G�ú Ë ã&û5»�ü�ý0þ�Grÿ ÖiÖ ÿ �^��ia m Ü d � � v é t���Û � f wh ~�~ � | ÙgÙ������ ��Û Ü d � � v�� Ü fi� Ù
^ � a � f Ü h vh ~�~ � | ÙgÙ������ ��� f Ü h v��`v f � � Ü t y f � w t�� x t ~ Ù
\]\í\ Û