ه اراtarjomefa.com/wp-content/uploads/2018/01/tarjomefa-f428...hartik, keilos / js ˛o . pc,...
TRANSCRIPT
:ارائه شده توسط
ه فا �� سايت ��
� مرجع �� ه شده جديد�� �� مقا�ت ��
ت معت � �# از ن%$
����� CPU �� �� �� ���� �� ������ � ��� �� �� ���� !"#�
$�%&'�(�) *%+� :(./�01) 3��4� 56/7� �8 9"#% �� ���� 5���/��� :%� ���1�� � � 3;�( ��5
�� �4<� +#�=�; ���>� .��@� �A ���%�1 �� �B�� �� :&4� 5 C� ��������� �) (�@ �<>�1 ��;��1
������ >D� E�F ��)deadline��;�� � ���� ���� �� ( .���( ���A �%�1 �G1 �(���) �� ��40� H/ 5��!� :/
�� �� ���� �"� �( �'�I&/ �����CPU �� �+��� ��:� �) ��(�J!; (B/� ���KL��� �/�> � ���� ����� ��
���� ��pipeline ���� ������ �) M� �(CPU �� $(N"� H/ � .��)� ���>��� �"� � �OP ������
�� ���� $�@ $(N"�&%��/( ����� "� � (/�Q) 5�N%7� H%1 ���/�/�� ���� �"( ���� 5������ �� � � L�
$�@ �"@�RS T��"@� ���� $�@ $(N"� U�� ���� � 5(��/�� (B/� 5 ��40� �� CV"��NA� �(�( ���� �/�N/7� �
��%� / �JA �( �� ��K�) �%O48 H/ �) M�"�) �3;�( �� �� �4%��� �+��� ��) ��RW4� 40����"( H/ .9%�)
3��4� �����N%7� � �� $(N"� (��/�� L��� :/��' � ���4� � �N%7� �(�) *%+� �� 5��40� :/� .(�@
���' H/ � � ) �8 � ��/�� ��� :/�1��3 ���' 40���"( ��� �8 � ���� $�@ $(N" C� ��
��"(�X�� �� <�1 � YQ �� H/ � (�>�� �5.1 ���'�� �#%� �� �(��/�� ���� �8 � .( ����
9#%;&��� �"��S �X; �( ��;�� ���>� �8� (��<� ���� �.�;�@
�� :Z�@ ����8�� ����$�; �(�Q��&%� 5������ 9"#% 5��1�%I�)��&%� � �3;�( �� 9"#% �> �� �
$�@
1. ���!�
9"#% � $(N"� �8 ��3;�( �� )�;��) ��B1 � ��%"��RTOSs9"#% ���� ( � �X; � 5$�@ � > ��
� �(�O[# �� (B/� �� $�48 ��RW"( �� �&/ �) ��� �( .��)�O/� H/) �NA� ((��( $�<0� �� �NA� �) �1\%<#1 /
�� $�@� �!%!� :/� �� ���( 5(��( $�@��4; �N%7� H/ �) ��) ���� $�@ $(N"� ��(��/�� � ���4� ��]� ���1
3��4�T��"@� 5� M�W% 5�(��/�� :%�' .(�@ 3��4� ���1�� 5L��� ���RS 4���� ���%1 5�
)semaphores$�; �(�Q 5() ��"� �4O) � �!"� �VG;�es=%Q 5(9'�Q 5�.�@ ������ :/�/ � �
�( +#� :/�RTOSs M�"�)��&%� �( �) �;�@ �/�@$���)�X�� �/�/�� ���� ���� � ���� � � B� �
�� ��>� �X��M^� .�;�@ � �) �/�RTOSs �� ���%Q: � ��1��8 ���)
μITRON, μTKernel, μC/OS-II, EmbOS, FreeRTOS, SharcOS, XMK OS, eCOS, Erika,
Hartik, KeilOS
&@1 ��40� .nMPRA �O��� 40����"( �J)�� 40����"( �/JS ��� �- PC, IFID�O��� . �/JS ��� �
40����"(ID/EX�O��� 5�X�� �- ��>�EX/MEM�O��� 5�"JS�� :"@�; �- �X��MEM/WB
�/�> � $(N"� � C�V�� 5�O[#� :%����NA� `/�� �(8 ��)�AN1� 9X��; �)�� 5$�@ �%��1 �jitter (
��9"#% � �4<� a�> H/ 5�� &J� ��G� ���� �K 5�&�/� %�( �� .�@� ��3;�( �� ��:&4� :/� .�@�
���!� �� �B�� �� >D� E�F �� )deadline:%��( .(�@ ( �� �) ���>� �� :"�/ U�"#S 5�O[#� .�@� :/�
������� � $(N"� � 5�#��Q ���(��;�� ��� L���1 �Q) �#/�;API��;�� ( �RTOS �&/ (���� Z%�J1 ����
�� (B/� D� ��(��/�� � ��1 �� b�P 5�W/( 9<� c�F�� .(�@RTOS �N%7� ��JA / �JA �(�) *%+� ����
���� ��1 $�@ =B;� �%O48 H/ 5��JA *%+�) �@� ����RTOS �� $�\0� .((��( �(/ �� �� %; �) �@�
������� L�1 ��API $���) b�V� 5�� �� � ��� �� ���) ��� � M!";� �� %; $�; �(�Q �S� C�V�� 5�;�@
.�@� �"@�( `&0�� / �7;$�;( �(�Q �4� ��$��X��9"#% ���� �;��) ���� $(N"� $�@ � > ��@ �;�
�� <;K �� :%�' � �%��Q ��X�� �� .���) (B/� ��K�); �d�;� b�P � 4"G��%e (�&O48 %�( �� �� �1\&J� ��;��1
:� 5�1\&J����K�;�"G� ����� ��:� :/� .(�@ f�1� �� :&4� �/����K�� �OQ ��;�1� �%#� (g�]) =��
�� �/��@ :/�1�� �G1 h�� �"�� �� �(A �) ���) (B/� �� �S��� 5�B%"; H/ ����0� .��@� � $(N"� :/�
$�; �(�Q(���) 5�9"#% ���� <;K � �� $(�) (��G� �� ��/RQ�Si/� � $�@ � > �� �� �0A� �� ��
d�;� b�V� ��F!1 / ������ �$W"( 5j��%�� 5�W/( b�� � .��"#� h��; :%/Q ��/��K ��) �FPGA �A (
��;��U �� � ���%� ��/��1����) �� ��� �( M(0� �%��7 � ��� $(�"#S (��%O%� � k%�) �!]�� ���@ .�;
�� ��%"JQ H/ � %�( :/� ��9"#% �� �� �� ������ ��FPGA �� (<�J%Q .9%�(
&@2 ��40� .nHSE) .a�� .(�� ��� l] ������sCPUi)b) $��K ��� ���� ��"%B/( m]�� (b ��(�4; (
�)�O�
�� �+��� �� �"� ����;� ��40� H/ ��� ����� H/ �) 9%�)�� L��� ���&1 � ������$�;�4@) �@�� ��;��
)PC 5(���) ���� �� �pipeline � 5(���$��X�� �4� � �CPU L>��� �( �&;�' (6 �7 $�@ 6/�01 ��40� .�;�
$�; �(�Q �� �� ����� �� ���� ��40� ���� ��&%� �) $�@ NA 9� �( �MIPS�� ( ���� C� ��]� �) �@�
�� �%O48 �;�%"JQ�� ���� � �J�� ����0� ������CPU .�@ f�1� �K8�4B� H� �K � �4 ��� ���� �� �
40���"( ����<W; ���� �) �N%7� �� ���� �� ���>� M� �( ��CPU �� �&� �;�@ $(N"� /� .(����� ����
�� ���&1 �) / �N%7� �� .(�@�J!; (B/� � $(N"� � �S( �� 5��%� / �JA L/� �(�) *%+� h>�� ��� :/��
��%� / �JA � (�B��� ��@ ��>� ���� M0� � L>�� �( �) 5��40� :/� .(�@7 ��40�������� �� ��' � �/�
)multipipeline ) �@ $�%�; (MPRA U�� 5($�%�f ��) �"JQ �stack saving( �J!; (B/� 9"/��W�� � �� �
�/�>)remapping ( �� :/�W/>�N%7� c��@ ���>� �� �(A 9"/��W�� :/� ��)� ���' � �/�> ��0� �8 �
��.�@�
�� Z�J� �/ ���P �� �/�> ��40�:(�@
$(%Q H/ �@ �K�� �"� �OP� � �������� ���� $�@ $(N"� 6/7� H%1"� � (/�Q) H%��/( ����
���NA� � �(��/�� ���� �/�/�� �� �(A �K 5�@��� ��� L��� �� ��"( �K 5�@� 9���� �� �"@�RS T��"@�
���NA� MV1� ���� $�@ $(N"� U�� :%4n� � ��)�� 9���� 6/7� �� � �( �� ����) �%O48 H/ :/����� ��)
��%� ��F!1 / ����� �3;�( �� �� (B/�.��)
M�"�)��&%� ��(�&O48 (��<� 5�/�> ����� � b��$���) ��RTOSs ���(�&O8 .�@� �/ (���� �� o����
:��"#�
&@3�� .�� ���) �O) �����a�� () H%1"� ���b�� ���� �/4� ((/�Q) H%��/( ���
�NA� �"�� 5�>�� ��(��/�� �� YQ �� 56/7� �(�) *%+� �� 3��4� ���>� �� � 5� ���1�� �
) ���/��� ��(IPC�%��� �P�8 ( H/ �) ��;��=%Q 5�(��/�� 5� �!"� �VG;�es$�; �(�Q)($�%e � (��"� �
�� ���;� �/ ���V� ��!� :/�:(�@
��40�nMPRA k�� �( 5II �� �+��� ��40� � (�@nHSE �\%<#1 =41 �O4> � �RTOSs k�� �(III �+���
�� k�� .(�@IV $(%Q ��� �( �� �J/� K �� H/ � �� �+��� �(<�J%Q g�� / ��40� k�� .��(V �@
��40� � �#/!� �]�1�� �)nMPRA �� k�� �( p/"; �/<; �(.�@�VI �� $(��K.(�@
II ��40�nMPRA
�"��J%Q ��40� �� � ����0�nMPRA ���)n �� �) ��� �( (�) 9%���� $�@� (�N%7� ��1�� 5$�@ �%�01 ����
� ��� ���� ������ ����n �N%7��@ ����� $�%�;)nHSE ����� .(nMPRA &@ �(1 .�� $�@ $(�( �J;
� ��^� H/ :(�) 9%���� 6/�01 �� �/ ��(4; � 5g�� 6%P�1 c��@ � �ACPU 5CPU ) �4%;sCPUi ����
�N%7� �i�� M^� :%�' .�@ ����� $�%�;( �@ 5��������� PC 5(����� /� 5���� �� ����� �
&@4 .)a$(%Q (�NA� � ) �b(-)e$(%Q ( � mutexes
����� (�� M�"�) �� 40���"( :%�n4� �K .�@��N%7� �� �i )i = 0,..., n – 1�� ��>� � (=41 .��)
k���� sCPUi���� �� ���>� �/ 5��; �(�Q � a�> ��sCPU0 5 M0� ���� <�1 �) (�B� 9%X�1 � �0����@�
#&/� �� . <�1sCPU0 5��� ��X; � �����&%Q ��nMPRA �� �#%� �� � L��� ��X; ���� �%N�) (
�� .(����
nMPRA �� ��( �� � �/�>�� �+��� H%1"� � H%��/( ������ .(�@�/��� � H%1" ����%1"� �� 5H
�� ��VG;��� 5�S 1 H/ ����0�.�@��� ���� �/ ��(��/�� � �&/ (���� �( �� �(�) *%+� �%O48 �;��1
����� C� ��� :/� ) ��( =B;� L/�nMPRA ��:(�@�
� 5��<W; �4/1 5�NA� 5� �!"� �VG;� 5 >D� E�F)deadline �N%7� 5( �O��( �intertask � ���1�� 5M0�-
.��>� � ��� �(��/�� :/� E�"; :/� � H/ �� .�/%� ��� $( ���RW4� 40����"( H/ � $(N"� � �;��1
�� �(��/�� m/�� � �;��1��� �Si/� :/�.�;�@ M0��%e / M0� 5M�"�) �� ���� 5��J��Q / H%��/( ���� �&� /
�� .(��
�� �� �>�1 � �� ���� 5H%��/( ����sCPUi ��^"� � )sCPU0%q1 �) ( H/ M�"�) �G1 �� �N%7� �/��� �%
9"/��W���� H%��/( ������ �#%� (/�Q) H/ 5��)��� �/��� 5�N%7� �� V"� ��(�/�� =41 .(��( (�>� M�"�)
�� r�� �� �� ��/�>�NA� ���� .�;���� �� *%� B�/� �( 5������M�"�)$���) H/ 5g�� �� (���; (�>� �P� �
$�@ L/ �1 g���NA� MV1� �) (��( �/��� �#%� �N%7� �� �� �� � 5�NA� :/� (���� .(
&@5 /� .ER
&@6�� .��0� ��%"�� (��/�� �)(�� �%��1 ��� �����
��%� / ��JA�4; ���A �%�1 �G1 �� 6/7� ���K) ��( 5����NA� ���� �� ���� �� ��� ���� �� d";�� �� �
��� �4; M�� �( 5$�\0� (��)����N%7� �� $���( �� :&4� �NA� H/ 5 �%O48 � $(N"� � �W/( �WRITE
H/ ���� H1��� .(�@ L/ �15nMPRA YQ ����$(��G� �� ��(��/�� � �0%� �3;�( �� ;��� (���� ��
(���� �( � 53;�( H/ ����0� .�@ ����� (�� ]� H/ � M(0� ���( � ���J� H/ � M(0� ���) >D� E�F
�� � 5��40� �/�> �Si/�E�F c�; ��(���� 9%;��1�� �) 9%�( �J; �� >D� ��;��1
&@9 ���"G� ��;��� .Eri P� �� ��CAM
�� 9"/��W�� ��E�F �� ��%� ��� ���� >D� �"@�RS T��"@� �� L��� �� M�"�) ��"( ��X�� �� .���) H4) �
5$�@nMPRA�� �( �� �!"� ���VG;� 5�� ��>� ����� .��) �!"� �VG;� ��� /� H/ �( 5 �!"� ���VG;�
)MRF$��S (�� ������� � �� H/ � /� :/� �;�@��0� �%� �( �!"� �VG;� �%� �@ �) �/��( � ��� �
��@) (�� �� �VG�� �ID�N%7� (� �( $�@ $�%�f �PV"�� ��%:%/Q ���� %&J1 ��"#� �/��� :/�1@.(�
H/ � �"0/� 5 �!"� �VG;� H/ �(��K ��� ���� 5H1 ��RW4� 40����"( H/ �) �� :/� g�� :/� �/���
L�1 �������API ��(RTOS =�; �( $�@ ��>��� $(N"� �����.(�@
�� �>�1 �ICP��� �@ ���� H/ 5) (���� ��ERs�� �+��� (��� :/� .(�@ �(���� �%0F� 5� :/�1\� �( ��
�� $�%�f �%� �%0A���%�.���) ��0� ��ID �N%7� �) �� �/��� M0� �� (��/���� �W; ��)�%� 5�;��( ��0� ��
ID �N%7��� �W; (�@ :%%01 (���� �&�/� ��� �� �V!� ��%� �/<; �( � �;��(��%� H/ ����0� ���K ��� =%Q
�� $(N"���;�� �) �;�@� �/���N%7� �� mO0"� 5$�@ �%"�� (���� �S� .(�@ �"��S �&� ���� �� ���� �;��1� � �/
���' �( ��%� ./�01 48 H/ 5�@� �/��� :/�1D��� =B;� ��0� �8 � .(�@ � $(N"� 5g�� �/��� 9� �
�� (��/�� H/ � #�0� ���� H1 ��RW4� 40���"(���� � �"0/� �) �@� L�1 ���API ��(RTOS $�@ ��>�
=�; H/ �(�� ������N%7� ./�01 �;�� 5�@� D� �/��� �S� �B%"; �( .�@��� L/� �%#� �/�> �) (�@1-3 ���' �
.($�; �(�Q�� bR� ��%"�� (���� ��B"#> ���� �� %; (��� �� =41 (���� :/� (���� �S� .��)i H/ ��1
�� 9<� (��/�� :/� L��� �(�) ��%Q 5(�@ $(�( ��SK (���� /� ��B"#> �� .(�@ER )ERF 5L��� :"�/ ���� (
� H/ �� :&4� ��%S�O> ���� .��) f�1� �� � ����A �%e ���!
M��>1$�@ ���&1 L��� ���� �X�� ����� .$�; �(�Q � �nMPRA
M��>2�X�� . �M�"�)��&%� � ���� ���� �)$���)�!�� � �D� (�&O48 � �/�
&@10 �N%7� �AN1� �)�� �4X��; ���>� e� � (��/�� (���� � o�1�� �( $�@ �"#>�� �/��� :/�1D� � �/�
�N%7�(�� $���) ��� M�W% ��X�� ) �/��� :/�1D� � �/�
( �) �;� �� 5 &J� :/� � 40����"READ ���' H/ �( �B"#> 5(�@ ��> P� �� �� $�; �(�Q � �X��
�A ��(K ��( � ��"G� )CAM�� =B;� (.(�@
4�; &@ �( �) ��]1 �� �� ���� �/( ���1CPU�8�4B� H/ 5��� !"#� �) ���� �� ��IF/ID, ID/EX,
EX/MEM, MEM/WB H/ 5 (PC H/ � ��� /� H/ 5�8�4B���� � �/� �( �) ) C� ��nHSE ��/
���N%7� �� �) �!%!� :/� �� �>�1 � .(��( (�>� (�;�@�8�4B� 5�/���� � �/����� � ���� �� � (�� �) ��
��%� ./�01 5(��( �O) b�� ���� ���� �N%7� ����' H/ �( (��1 (��/�� H/ �� YQ � (�@ =B;� H1 �8 �
��� �>� � �0� �;��15.1 �� � %�( :/� �� .(�@ $(��K ��� ���' ��40� �) 9%�) MD�"� 9%;��1/� �%#� L
� �%�1 A��� H/ � ./�01 �� �(A �� 6/7� 5�K �&;�' ��1 /5.1 ���' � �%�1 �^)��� H/ � $�; �(�Q �
3 ���' 40����"( ����)$�; �(�Q ��X�� �� � T��"@� �� 6/7� =41 ��1 �W/( L��� .( (�) M� �(
�� �"@�RS.�;�@ $�;�4@) ��%1�1 � ��1 �run �� ��� (sCPUi ��( �(sCPU0 �� ��>� 5 ��� :/� .�;�@
$��( � m%A( ��/ ��E�F �/��� �#%� �� >D�=�; �( ��>� M4"�� 5E�";� :/� .( 9"/��W�� ���� ���� ����
�( /�Q / H%��/(sCPU0�� �X; �( �� �/��� :/�1D� �� $�@ $(�( CV"�� jD�40� 5 .(�%S
�+��� �( �nMPRA�� 6/�01 �� �/ (���� � 5��� :9%�)�N%7� ��"( l] � M�"�) �� C� �cr ����
sCPUi��� 5 �OG� �� )lr_( �� �P�V� �t� � �J�� �))sCPUi ����� 5(��@� �O) ��)gr_( �J�� �))
�O) ��(K �t� nMPRA =41 ��1 � ��"#�sCPU �� ��"( �A��� � (��@� �1�X; ��)mr_( �))
�� ��1 <�1 ��;��1sCPU0 (�;�@ ��"( �A.
III ��40�nHSE
nHSE &@)2a�(��� �) �� ���"� ��� :%@� H/ ( ���� �/��NA� ��;� (��( (��/��E�F 5� >D� �4/1 5�
$�/(=%Q 5 �!"� ���VG;� 5��4/1 5�� ���>� � �N) (�� (�&%� j"A��) $�@ $�\0� .nHSEM�W% ���� ;��1 �/�
�� M�W% � � (��( H%��/( � H%1"� ���� 40����"( ���>� ��1 $�@ �%��1 ��� � $�%�f �����RS�
�� ��%S�O>�>��� .��)W% 5��M ��M0� � sCPUs ��1 $�@ �%��1nHSE ��1 .��@�� :%�' H/ <
�� �>����X�� H/ �( �;��1 &@ �( �) ��];4�) �@� M0� $�@ $(�( �2a �@ $�/(oi ≡ en_ pi pe_sC
Pui ��� �@ (���� �O) k/4;)�)�O� ��(�4; .(ID sCPU 3��4� m]�� � $��4��� 5 � 5H%1"� ����
�� �� (��/�� �� o���� T�O� � H%��/( ���� �� .�@�sCPU 5ID (�8 H/ M^� ���� �) (��( �(�� �� �VG��
� l%GP0 1n-1 �� �S� .�@�n=4 � �@�4 ID 0 51 52 � 53 ��� .9/��(ID 5sCPU �( �� M0� H/ (����
��/���� �/�@ ( ��1 ��� �( 9"#% 5�@�; M0� �(��/�� *%� �S� .��) �%e)
&@11�� YQ .���4� �%e (��/�� H/ �� �"#� ���
&@12=�; YQ .�� � ���� ���HSE ���4� �%e (����� H/ ����
(M0�)idle�� (�� u� (��/�� �) �� .�@��� M0� 9"#% ��( �S� �� (�@sCPU �&@K �� (��/�� 5$�@ V"�
5�N%7� $W;K 5��)N) (�� .�@ ����� $�@ 5(�@ $(�( ���(� ��>� �S�sCPU (��/�� �/�N) (�� &@) �� $�@2b
�2c5$(�( u� (��/�� ��@ �&@K � �A ( .��) M0�
�� �N%7� 5H%1"� ������ ��S �� �/��� .�@�sCPUi 5i �� � ��J� 5�@�ID sCPUi �) �� ��0� ��R� :/� 5
�/����� $�; �(�Q �) �;� .��"#� ��� 6/7� ���>� M�� �( � �� 5�� V"� �d�;� L��� H/%1"� ���� 5H
�� .�� M0� �%e) �/��� ��� H/ � H%��/( ����PR �� ���� (sC Pui 5i = 1, . . . , n-1 �� �+���(�@ . ��
��� :/� �� �� 5�sCPUi � �%!� �( �/��� H/ �� :&4�1 1n-1 �) �/> �@� �"@�(n-1 :%/Q :/�1
�� �/���.�@�
sCPU0 ) �/��� :/�1D� � jD�40�0�� :%%01 (�4; � (�@ �/��� .��) �%%q1 �;��1sCPU0 �� � $(N"� � ��;��1
�� 9"/��W��� �/�Q ����=�; �( 9� $�@ ��> l] �( 5�����sCPU0 �%%q1 �&%��/( ���V� 5����� �� �( 9� � 5
�� 5�� V"� �d�;� L��� H/ �� $�; �(�Q �) �;� .��) <�1 5��� :/� �( .�� M0� �%e H%��/( ����
sCPU0 �� �A� M0� H/ � �G] �( 5(�@� ��"0� �S�) �(��/�� H/ (���� .�;�sCPU0 �� $(�( �J; �S� .(�@
sCPU0 �� 5�@� �"@�( �� �/��� :/�1D� ��� � 59"#% 9� 5��� :/� �( .(�) ����� ��"0� �� k/��>� 5���
) �&%�idle�� v�� (�� (M0� �%e) ( 9� � (�@sCPU �/��� � �W/(:%/Q ���� 6A�"� bR� �1 � 5$�\0� .�;�@
�/�� �%��1 �%+�> ����� � �(�nHSE �� �+��� ��.9%�)
A. �� �� H%1"� ���������
Nakano �� �) �;(�) $�@� k;��&4� ��� ������� �� (�&O48 5������ �CPU �� M��1 �� M� �( .���(
���� �� � o�1�� �( 5h/0� :/� =41 :"��S �X; �( � ��40� 5�F� �CPU �"� .�� $�@ ����� �� �����
�� �� mO0"�sCPUi �!]�� T�O� �( $�@ �%�01)nHSE &@ �( (2b �� .�� $�@ $(�( �J; =���� ��]� 5���
� �) �/�(��/��sCPU �� $��4��� ��X; �� �;�@ ��4"�� ��(��/��.��)sCPUi �NA� :��"#�) �4/1 ��Tevi 5(
$�/( �4/1) ��WDEvi�NA� �( 5( �M�W% ���� $�@ $(N"�E�F ��() >D�D1Evi and D2Evi�NA� 5( ��
) $�@ V"�IntEvi) �!"� ���VG;� 5(MutexEvi3��4� 5(�N%7� ���1�� ��(��/�� � � �
)�O��(SynEvi ���� N) (�� ���>� � (sCPUi ) �;��)lr_run_sC Pui.(
/ (��/�� H/ �%��1 L��� H/ �) �� �� 5(�@ �&@K �NA� H/sCPUi M�"�) �� :&4� �;��)CPU �( � ��
�� w�� ��(��/�� .��(M�W% � $(N"� � ��;��1 ��lr_enTi, lr_enWDi 5lr_enD1i, lr_enD2i,
lr_enInti, lr_enMutexi, �lr_enSyni 5�^"� <�1 .�;�@ ��"0�lr_run_sCPUi ��M�W% :/� .�@� �/� �
�( �N%7� ��� 5$i/� ��� H/) $(�� =; �TR M�W% .(�@ $�%�f (sCPUiEvi (��/�� H/ (���� M�W% ���� �)
�� $(N"� �X";� (��� M�W% � $(N"� � 5(�@mr_stopCPUi �� M0� �1�X; ��� H/ � �J�� :/� .(�@
���� <�1 �) ��sCPU0 �� ��"(�(.�@�
sCPU0��� <�1 5 �(�) 6A�"� �� �(A �) �� �/��>� �sCPUi ) �W/(�� (3��4� ��� .�@� � � �
y\� z%O�D �� $(N"�) m%O01 M� �( (��/�� H/ (��� �( �8\�� �) 9%�)pending �� k/���� � (CPU
�� $�%�fM�W% .��) ��sCPUi � �)� 5m%O01 M� �( =41 �( M�"�)sCPUi ID )sCPUi_ID�� ( :/�.�@�
�B%"; (��) $S�RS �( ���!� :"@�; � $(N"� � 48�� ��� =B;� ����N%7� *%� 5B�/� �( �) ���@ ��5(�@� �/
�� ��#; �1D� �/��� :"@�( 5�@� �"@��; (�>� ��>� �(sCPUiM�W% � $(N" � 48 :/� . ��/sC PU_Ev0
. . . /sC PU_Evi – 1 �� Z�J�$��/4; H/ .(�@�� � $( �)�O� � &@ �( j\�A 5�OG� ���2c $(�( �J;
.�� $�@
&@3a�� �O) ����� 5 �� H%1"� ���� �J;�� g�� .��( &@ �( $�@ $(�( �J; ���3aT�O� 5 �@ 5 ��
�(�&O48sCPUi_ready �) �1�� 5($�@ �+��� j\�A)ID sCPUi �� $�%�f �� �/��� :/�1D� �/JS��� H/ � ��)
�)sCPUi �� M0� �� �/��� :/�1D��� ��) ��� .�@�AND z%O� �y\�D �( �) ��"#� M0� �;� 5g�� �
*%� B�/�sCPUi M�W% .�@� �"@��; (�>� ��W/( M0�en_CPU �� $�48 ��]�$�%�f ��� �;��1 �d�;� �
�@ $(N"�.(
L��� �� � #�0� �%e / � #�0�sCPUi �� � �;��1en_pipe_sCPU0M�W% m/�� � 5 ��
en_pipe_sCPUn-1 �� �(<�J%Q �4@ 5�B%"; �( .(�@ =B;��� ���� �;��1 �� (�@ $(N"� H%1"� ����
H/ �( �N%7� �� �) ���@sCPUi .(�@ ��>��/��� 5��� :/� �( H%1"� �� ��1 5ID �/�@ 6/7� ��
�� .�;�@
B. �� �� (�/�Q) H%��/( ���������
�� �% H/ �S� M^� ����) 5C� �/��@ �G19"/��W�� � ���� 5((�@ $(N"� H%��/( ������ ��� ���
�� .�;�@ (�&O48 (��<� �� �B�� ��;��1�� &@ �( $�@ $(�( �J; H%��/( ���3b �3c �(�) 9%X�1 �&�� 5
�� ������ ���� �� �/��� ����sCPUi �� 9�������� 9"/��W�� *%� �� ��)�4; ��>� �� �P� ���� :/� .��)
�� ��40��� ������$�� �� ���� �;��1 L>��� �( �[@ �+��� �8-15 .(�@ $(�� �&�$�� ��� � �@ ��;��1
$�; �(�Q�) H4))��$�; �(�Q$�; �(�Q��&%�) (��/���1 %4&1 ���� $�@ ����� �$�; �(�Q �� ����>� � (�%��� ��
on-die �� �%)1 �/ %; � .��"#�sCPU0 ( �/��� jD�40� �) 9/��0 ) 5(��(K �� �/��� :/�1D� ��sCPU �
�� 9"#% ���) C� ��� H/ � � �%!� ���� .( PRIsCPUi_( �� $(N"� �/��� �) 9%�)sCPUi �� ������
���� i = 1 to n−1 �� $�%�f�� �/JS��� 5JS��� H/ � $(N"� � �/��� .��) &@) (�@3b � �&/ �%��1 (
M�W% ��en_pri_sC PUi_1,. . ., en_ pri_sC PUi_n – 14� . ���� �NP �/��� �@ �"NS j\�A �) ��];
sCPU0 �� {�NG�9%<#1 �>��� E�";� ���� 5��J� ��� �>��� .�;�$���) �MUX &@ �3 b $(N"�
���B%"; �) (�@�/��� g�� �L4> &@ ��� �4 � �� ������ ���K ��� .��)OR &@)3c �/��� E�";� (
�� ���� ��sCPUi (i = 1,. . ., n) �� �#%� ��� .( AND �� C� �/��� H/ 5�� ��"0�z%O� � ( - y\�
D3��4� ������ $(N"� 9"#% �8 � � ���!� 5$���) 9%<#1 �>��� .(�@sCPUi_ID_TS �) ��ID
sCPUi ��� �(��� �(ID ���� ��"0� �@� ��� .( ID &@ �( j\�A ��J�3a �"� |�� $�@ $(�( l%F�1
�� &@ � ������3c � �����&%Q �(�� ���� ��J�� $(N"� H%��/( ���.(�@
M�W% ��1 5�/��� �B���"8�sCPU_Evi �� M0� �S� <�1 5(�@sCPUik%Q �� (��/�� 5 .��) ��%�en_CPU
=41 �) �1�X; ��� � �J�� 5 �O) M�W% H/ ����0�sCPUi a�> �� ��sCPU0 �� M0� �%e $(N"� (
��M�W%.(�@ ��pri_1,. . ., pri_n – 1�4� 5�/��� � ��n−1 �� �J; �� :&4�.���( ��� ��PRIsCPUi
�� $�%�f �� �/��� �)�� 5���)��� ����0� ��;��1 ���� �� ���� �OG� ��sCPUi )i=0 ��"( .�;�@ ��"( (
�� 5�7; ��� �( / (�@ �/��� �;��1sCPU0 ����� �;��1��� �� �.�#/��� / � (�
��� ��PRIsCPUi�V"�� ��]� 5PRs &@ �( 53 b �� $(�( �J;��� :/� .�;�@�� � �� �( ��;��1sCPUi ��
a�>sCPU0 ��� :/� � $(N"� ��X�� �� .�;�@ ��/ M�"�) 40����"( � 5�Rj �� (<�J%Q �� �X";� �) 59%�(
��� �( �(��/�� �� (���� ����Rj �� �X";��/�)�J) �( �1 �� 9%X�1 .(�;�@Rj ��� �� �)(�� ���V�TR
�� !"�� H/ �) �� �� .(�@sCPUi �� ��>� $���( 5�X";� 40���"( H/ � �0� 5 5(�@Rj $(�( u� ��(��/��
.(�) ����� �%�f ��) ��(/ H/ � $(N"� �� 5�"0/� � �1����) U�� H/mnemonic� ( ��D( �"�/ CV"�
�� ��(�/�� 5���� ���!� H/ ����0� �� �(���� �) ��)Rj �� $�%�f 5�X";� � �X";� (�� ��(��/�� .��)
40����"( ��� �( 5�X";�TR �� ���RS���� $(N"� $���( 5�N%7� �) �;� .(�@ �( �(���� :/� 5(�@Rj
�� ���RS�� =; �� �/�> ��� H/ ���0� � �� ����� :/� ) .(�@ER �� k/����M�W% ��;��� ��� :/� 59%�( ��
&@ �( $�@ $(�( �J;2b �� �#%� ��.( u� ��(��/�� �/�@ 5:/�$(�( �� V"� �sCPUi 5��%"�� ���V� �
��� ��;��� ����) <;K L���TR�� :&4� �� ( .( ���"( 40���� :/� ���� �(<�J%Q ��:��"#� �
movcr TR, Rj; movcr Ri, TRj movcr EV, Rj; movcr Ri, EV
��J� U�� �(��� ���� 5�/� ��PR 40����"( � � 5 :(�) 9%���� $(N"� �/ ��movcr PR, Rj; movcr
Rj, PR ��� . ��EV �TR��� 5 �� �( $�@ LA�� M�"�) ��sCPUi ��.��@�
3��4� 5�X";� 40����"(�� �#%� (��/�� :/��' � �� ��>� � �� �(��/�� :/� .( =�; M�"�) � ��;��1�� � ��
��1 $�@ $(�( �/��� �� �>�1sCPUi �;�@ �&@K �^)� .RTOSs 94#%;&� 5 �T��"@� ���� �(/ �O��( ��-
�N%7� ���1�� 5L��� ���RS� 3��4� � �O��()�%0�1 �� 5�;��( � functionalityL���1 �� ( (��G� �/�
��9#%;&� �� �) (�@�� ��>� �� � �(�� :%� � 5�NA� H/ 5M^� ���� .��)semaphore�4; 5=%Q H/ (��� � 5 ��;�1
$�� :/� .�;�@ �X"�� ���4� ��]���!� :/� ��1 $�@ (<�J%Q �[#� :/� �� 5�O�� ��X; m%A( �.��)
C. �NA� ��(��/��
�NA�9#%;&� 5�$��( ���>� �) ��"#� ���41��A �%#� ��$��( �%e 5�/�$��)��Q 5�/��%O48 �� ��1�� ��(��/�� �
CPU �� �#%� ���; �(��/�� :/� .��;> = ��� � $(N"� � ON-chip �@��1)�@��1 / (:@�� � U��� �
)OFF-chip�� �"���;� $�� ��;�� H/ ���>� / (M�"�) 5H%\) U�� �� �>�1 � .�;�@$���)) ��handlers (
�NA� �� :"�%#S �A �%e jD�40��N%7� �� ��#; �� ��"J%� �/��� jD�40� � �@��� ��;��( 3;�(
$�� H/�NA� �) �� :/� � ��handles �"()�#/� ���V� 5(� L>�� �( �16 �� �+��� 9"#% ���� :/� .�;�@
�8 Sun Solaris �&/ �� �� �K � �@ �+����#/� � �NA� � ��� H1 M�� H/ �( ��NA� .�@� $(N"� � �
�#/� �� (��G� �8\�� H/ ��� /��1 �3��4� M�� H/ 5:/� .�;�@) $(��@ �( �� H1 � kernel :&4� (
��.(
&@ �( $�@ 6%P�1 � 5��!� :/� �( $�@ (<�J%Q M��4 a �NA� � ��J��#/� U�� ��;� ��� �.�@� :/� �(
�NA� 5�/�> ������� �"�� �(��/�� ��;� ��� 6/7� �� �) ���) V"� <;K :%J;> �/��� :/����� � 3;�(
���NA� 9"#% .�;�@ ��p )�O) ��� H/ B�/� �( 5<;K � H/ �� ���� � (��( ��INT_IDi_ � (n (�>� �%N� �%�
�) (��(ID �� $�%�f (�@ �"�%Q �NA� �&�/� ���� �� �N%7�M0� . ��)�NA� � �INTi &@)4a 5(DECODER
��� �%/1 �M�W% � �&/ �) ��) ��I NT _i0,. . ., I NT _in – 1 M0� ���� .��) ���OR &@)4 a (
���NA� =41 �;��1L4> 9"#% � �� � ��� =41 �S� .��) ���Kp INT_IDi_) i = 0,. . . , p – 1 ���!� � (i �"@�;
�� <;K 5(�@ �� ��;��1sCPUi ��� � H/ *%� �S� 5m/�� :%4� �� .�;�@ V"� ��p INT_IDi_) i = 0,. . . ,
p – 1 ���!� H/ � (i �NA� *%� 5�;�J; �"@�;�4; �/� .(�@ V"� �;��1z%O� k!;- y\�D 3��4� ��<7 �
�NA� (��/�� ��(V1 �INTi $���) �%��1 �IntEvi &@)2b �4a�� ( .�@�5:/� ��� M��1 �( 9"#% �8 �
�� ��G�.(�@
�Si/��� ��A � h�> ���� �/ ���V� ���:�@�
M�"�) �@ �K$���)�4; �V%V�1 ��NA� :/�) �@��� r�� �� �� 6/7� �/��� 5��� �N%7� H/ .(�;��1 �� ��;��
=41 �"� � :/��' 5H/ 5*%�p �NA� ��;�� H/ .(�@ V"� 9"#% ��NA� �/��� :%4�1 �� �(A `/�;V"� ��
�N%7� �� $�@�� ��J� ��NA� H/ .�@� V"� ��� �N%7� H/ �� $�@�N%7� H/ �;��1:%%Q �/��� �1 w�0� �� �
�4; ��� �K 5��)�;��1 �N%7� H/ �� 5�K �&�/� ���� ��) w�0� �� �N%7� ���>��� V"� �1D� �/��� �(�@ . �NA�
���� / (�@ �N%7� H/ �;��1�N%7� H/ �� �;��1.(�@ V"� H1 � �NA� =41 5$�\0��� ���;��1%7� H/ ���N H1 �
�NA� .�;�@ V"����� �� 5� ������ �/ �sCPUi �4; ���A �%�1 �G1 ��$�%�f �� ��40� :/� .���( / � �
��%� *%� ��;�(�S ��4; ��D( �/��NA� .��)�� ��/��� � �;�@ �1 �( �1 ��;��1�NA� ���� �@ H%��/( �;��1 �;�
1� � $(N"� � )�N%7� �� (�B� MV�� V"� �&�/� ���� 6/7� �/��� �%%q1 ��1 / � �W/( �.(�;�@
$�� (��01 �� (��G� 5:&4� ��1 �( �1 g�] (��G� (��01��;� �� ��/0� ����( �(<�J%Q �sCPUs ���!� / 5
�NA� �"J%� �S� .�NA� M�"�) ����(�� � �&/ �� �sCPU ��1�� 5�;�@ V"� �=�; ��1 M�"�)�� :%%01 ������@ (
�� ��� :/� �.(�@ ��F� ���%�1 �� �B�� �;��1
D. �� �� o���� ��(����
&@ �( �&;�'2 b B�/� �( 5�� $�@ $(�( �J;3 :(��( (�>� �� �� o���� (���� c�;k%Q �� ��(���� ��%�
)Tevi (2- $�/( �4/1 ��(����)��WDEvi � (3�(E�F ��(���D�) >D1Evi � ���J� H/ � �� M(0�
D2Evi �� 5��>� ���� .(Z!; H/ � �� M(0�sCPUi 5<;K � �&/ .(��( �PV"�� �4/1 �( 53 �#/!�$���)TEvi,
D1Evi, �D2Evi �#/!� H/ <�1 ��W/( �) ��� �( (��($���) ���� $�@ $(N"� �WDEvi $�/( �S� .(��( ��
$��( ��]� (��/�� 5(�J; �/�B1 �/�WDEvi �� �;��1sCPUi 5�4/1 �( �� ���� .(�@� M0� �S�)��) 9%X�1 $���( ��
��� 5��40��X�� �( ) (��( �OG� �� �� �OG� �sCPUi 40����"( � � $�@ ��>��X�� ��"( �� �
�� ��"( �( �0%�� / M��;�� :/� $�\0� .((�@���� ����0� �� :&4� ��� �) �;�@ $�/( �1�X; ��1 ��;��
� $(N"� �sCPU0 �X�� ��"( 40����"( �.�;�@ ��"( �( 5�0%�� �
E�F �/(!� >D� ��� �� �OG� 9"/��W�� H/ � 9�sCPUi �� ��G� �O) 9"/��W�� � 9� � �( �O) 9"/��W�� 5(�@
���sCPU0 �� ��>� 1 �( � ��%)�1 H/ � �(��/�� / m%O01 M� �( / � ��>� M� �( �N%7� H/ �) �;� . (�@
���' U�4@ ���� �4/1 �( �@ ��40� 5�@� ��CPU ��=�; L�1 H/ :/����� 5�@��� ������ H/ ���>� �;��1
�( �� �N%7�sCPUi $�;�4@ :/� �� ��"( .��) ��/(���� ��J� U�� �( �;��1 j\�A �) �@� �/��4/1 �
.�;�@ ���0�
E. Mutexes ( �!"� ���VG;�)
�� $�@ �"@�RS T��"@ �� L��� � o�1�� �( 9<� c�F�� H/ 5���� �( ���>��� ��%"JQ .�@����� ������
&@ �( 5 � ����� ��1 $�@ (<�J%Q 5 �!"� �VG;�4b-e@ $(�( �@.�� $� $�� � ��>� ���� $�@ $(�( J; �
&@ �(4b-e �� (<�J%Q����� � �8�4B� H/ �) 9%�)�� �+��� �� L/� ��"( � �O) ��5M^� ����) ��)
�� ��"(�O��� �( �;�1 ���>� �EX (.(�@ ��>�MRF � c�4B� H/ �m M�� E ���n+1 %&J1 �%�
��.(�@ �A �( �!"� �VG;� ��� �@ �K�>�1%� :/�1� �ID �N%7�:%/Q �( �PV"�� ��%� :/�1�� �-
���.�@� ��MRF �� �sCPU =41 ���� �� �"@�RS T��"@� �� L��� <;K :/����� � (�@ ��"( �AsCPUi
�� .��"#�sCPUi�� T�O� H/ 5 &@ �( �&;' (��( ������4c ��(���� �) �� $�@ 6%P�1MutexEvi
�� �� �%��1 H/ �) �;� �� ��)mutex �� ���� . (�@ �J"�� $�@ T�O�sCPUi �� o���� 9%4V1 5mutex �(
M�W% �� �� 5$�@ �"��S �X; ��lr_en_M0,. . . , lr_en_Mm – 1 �� �"�.(�@ M�W% ���� � ��;��1
��� �(; �� �OG� �� ��� =mutex ) M0�EMR ��� :/��' / H/ B�/� �( .�;�@ $�%�f (EMRi �� �"#�
�%� (��01 ��mutex �( $�@ ��>�MRF y\� z%O� .(��( (�>�D 3��4� ���� �8 � � CPU $(N"�
����� �( 5�V�8 ��( �8\�� � (�@ �8 �J/���� �CPU �� �"@�( �W; 9&G� &@ �( �) ��];4� .(�@4d
�� �@ $(�( �J;�%O48 5 �J";� � ((��#;�)T�O� ��mutex ���' H/ �($�; �(�Q � �%O48 H/ ���� H1 �
�� =B;� �41� .�;�@M�W% �8�4B� 40����"( � �#1 H/�� TAS 5in_tasm_wr �Address_i �/(!� (
�%� �4/�Amutex � ��MRF )Mutex_i (�8�4B� � �%� ��Mutex_i �� �%� �S� .��;���Mutex_i �(1
5(�@ 9%X�1mutex �� �"��S �X; �( ��"( �A .(�@n � ��K �%� ���MRF M�W%)Address_i (ID
�;��($ �mutex �� �J; ��N"� � ��� :/� .���( �W% � $( ��in_tasm_wr, Address_i �Mutex_i
&@ �4e �� ��%4�� �%� �S� .��/mutex �( �K $W;K 5�@� �NP1 �� 9%X�1 � (�@ID sCPUi 40����"( �)
�� ��>� �� ��� �( 5��)MRF �� �"@�; h�� &@)(�@4e �%� ���� ��MRF �%� `I � ��N"�mutex( .
�S�mutex 40����"( ��1 $�@ $�;���1 1 �N%7� H/ � �K �S� � �@�$�;��� ���!� 5(�J; :%%0 ��� � $�@
ID 5ID $�;��( �mutex �� �J; �� 5�(�) TQ 40����"( .��(Mutex_i ���!� ���� ��0 M�W% � $(N"� �-
��in_clrm_wr �Address_i &@)4d�� �B%"; ( .��(
� �) �(mutexes 40����"( 5�� �/ �� :�;�@ $(N"� ��;��1tst Rd 5Rs)Rs ��(K �@mutex ���@�
�Rd ���!� �@ ��� MRF �� $�@ E�";� 5(�@�clrm Ri)Ri ��(K �@mutex �� (�@�movmr Rd 5
Rs ��� �K)mutex �� �)�� ����(- Rs �� ��1�� ��(K �@mutex �� � �@�Rd ��� � ����!� �@
MRF �� ��� ���!� ���RS�%�1 ���� (�@�movcr EMRi 5Ri �K )Ri �( ��EMRi �� � (�#/�;movcr Ri 5
EMRi �K)EMRi �( ��Ri �� 40����"( :/(�#/�;�� � =41 ��� �� ��;��1sCPUi $��4� �� � �;�@ ��>�
3��4� 5 �X";� 40����"( =41 �� �O) ��"( � � mutexes []� ���� :.�;
F. ��1�� � �3��4��N%7� � �O��( �
3��4� � ���1���N%7� � ���> �( 5�O��( � C� 9<� � ����RTOSs ����� � �8�4B� H/ .��@� ��
$(%Q ���� L/� ��"( � �O)�� $(N"� (��/�� 9#%;&� � .(�@ERF ��� � �8�4B� H/ � ��)2n + k
+ 1( &@ �( $�@ $(�( �J; �%�5 �� %&J1��� :/� .(�@ $�%�f �%0A�� :/�1D� �%� �( �� (��/�� �O� 5�
�� .���)N 5�/ �%�ID �N%7� ���� $�%�f �� L��� � |(�) M0� �� (��/�� �) ���)n 5 ��0� �%�ID �N%7� �
�� �W; (�@ ��X; (���� �&�/� ���� �� �V!� 5�/<; �( |�;��(k ��%� ��"( �A ����0� �/<";� �%� H�%Q �
�� $(N"� b�� �� ���� |�;�@ERF���� M0�(��/�� H/ �) �;� (�@ $(N"� C� �"�� H/ � �;��1 � � (�@
5�W/( �&/ �) �;� �N%7�� $�@ $("�� ��%Q �' � > �/<; 6J) ��X�� �� �� (��/�� 5�V!� ��� ��� �( .�;�
�� $(N"� 6O"�� 40����"( �( 5�B%";�� �� (��/�� H/ ��@ M0� 5�N%7� H/ �) �;� .�;�@8\�� �K 5����� �1
�� $(�K �� H/ � �J�� �) ��)ER ���� ��>� �� �X";� 40����"( H/ � �@��N%7� :/� .��)� ���� 5M0� �
�/�� ��(K �(�) Z�J� �� %; �(�ERF �� �> .�;�%S
�� ((��#;�) T�O� &@ �( ������6 � c��@ � ) ��(K 5�)(�� ��]� � �� $�@ $(�( �J;0 (��/�� :%��� (
�� �%��1 �� ��%"��M�W% :/� $�\0� .��)�� �)�O� �� �( �(�) 9%X�1)��@� M0� �(��/�� =41 �S� ������
1M0� � �0� .( M�W% 5 �X";� 40����"( H/ � in_rdev_rd �� �NP9%<#1 � �@��>��� � $���) ��
y\� z%O�D �� M0� &@ �( H%14@ �]� �( �&;�' (�@6 .�� $�@ $(�( �J; �S�Event_0 $�%�f ���!� )
�( $�@ER0 �%� �(2n+k M�W% $W;K 5�@� �NP (/Event_0 m]�� ���!�1 �( z%O� �( $�@ �"@�; 6/7� � (�
y\�D � o�1�� �(Event_0 �� �> �S� .�;�%SEvent_0 $W;K (�@ 9%X�1 �NP �(Event_0 m]�� ���!�1
z%O� �W/( �( :"@�; � (��( �� y\�D �� �<� &@) (�@6 ���!� .(Event_0 m]�� ���!�)1 y\� z%O� �( (
D�� $�%�f � M�W% :/� .(�@9%<#1 m/��$���) � (�) ����� ���83 ���!� .(�) ����� M0� �� ��� ���0
�>��� �( $W;KDEMUX �� �@�; ��(K �) (�@0 �� M0� �� �S� .��)Event_0 m]�� ���!�1 �"@�( ��
y\� z%O� 5�@�D ��8 � �0�9%<#1 � ��@ ����� �"@�; �NP u���) 53
M��>3 ��40� .RTOS $�; �(�Q �
M��>5�#%!� .M�"�) �$���)�NA� ��
��(K � (�) ����� �<� �� ��� ���0 z%O� :%��( ��� �� �)�� .(�) ����� M0��%e �� y\�D ���!� H/ 5
� �!]��1 ����Event_0 %OG1� �/�B1 5Event_1 M�W% =41 ���� ��J� U�� .(�) ����� ��"0� �� 1 �
(���� �� s−1 �� $(N"�.(�@
�( 5��"#� M0� �(��/�� =41 ��� :/� �(AND y\� z%O� �D �(�) ����� �%��1 �� ��"0� M�W% H/ ���K
) ��%"�� (��/�� *%� �) �� ��0� ���� :/�free�4; T�1 ( :/� �( � (�@5��� a gr_en_mem_full �%��1
�� .(�@gr_en_mem_full 40����"( ��1 :%�n4� ��READ �WRITE �� $(N"� �) ��n4�) (�@
&@ �(7 �%� �) ���W% ��X�� �� .($�@ $(�( �J; .��"#� M�qJ� (���� ��
&@7 M�W% =41 ���� %; (��� ���48 ��WRITE M�W%) ��in_wrev_wr, Address_i and
/gr_ev_mem_full (���� (i z%O� �� o���� y\�D �%� :%�n4� �) �W/( ��bit_ij ��� (Eri �� �J; �� .��(
�%O48A READ M0� �5M�W% � ��in_wrev_wr, Address_i �hit y\� z%O� �)(�� ��]�D ��
�� (��/�� H/ �� o���� �) (�) (�� 9%X�1 �(�B� :/� � ��"8�.5(�@3 �%� ���!� ��;��� 5��� ��� ��
bit_ij �� �#%� �� �W/(�) ( ��� � �J��Eri ��.��@�
M0� U�� :/��� b�� �� ��%"�� (���� H/ ��B"#> ���� = D �� =41 5(��/�� � ��� .��) ��ERF
�� �� � ��;��1sCPUi T��"@� �� L��� <;K|�;�@ ��"( �( $(�RS$�@ ������ =41 ���� �/�sCPUi .��"#�
��sCPUi �� T�O� H/ �( ������Nhse &@ �( �&;�')(��(8 M�W% �%��1 ���� �) .(�� $�@ $(�( �J; -
��SynEvi &@)2b� (��� (���� H/ �) �� �� (;�X" �� M0��� $(N"� (�@M�W% H4) � .(�@ ��
lr_en_Evi0, . . . , lr_en_Evis – 1 �� 5sCPUi �� 9%4V1�� �"��S ���A �X; (��� (���� �) (�%S :/� .(�@
M�W%) M0� (���� ��� �( �EER��� (�� $�%�f �OG� �� ��� :/��' / H/ B�/� �( .�;�@EERi �� �;��1
�"#� �( $�@ ��>� (��/�� (��01 ��ERF z%O� H/ .�@� �"@�( (�>� y\�D 3��4� ���� �8 � � CPU
�� $(N"���� ��� �� �8\�� .(�@ �8 �J/���� �CPU �� $�%�f .(�@
�N%7� H/ �S� �i))sCPUi( �� 9<� (���� �� L��� �/�@ ���� �K 5(�@ ���%� (��/�� H/ � $(N"� � .�@�
��B"#>ERF �� :&4� L��� :"�/ ���� $��( H/ �;� � :/� � �%��Q ���� .(�%W� �A� ��"( �A �%e
40����"( �) �;� �� 5�%0F�READ ��� ��;��� ����Eri �ERF �B"#> 5(�@ $�;��� P� H/ �� ��
CAM �� =B;� &@ �( �) ��];4� (�@9 �� $��J� ��(K � �B"#> .(�@0 �&�/� ���� ��(K :%��� �( � c��@
:%� w�];� H/ B;� �(ID �N%7� � �V!� �ID �N%7��� �/Q (��( (�>� �;��) � 40����"( H/ .��/READ 5
���N%7� L��� ��@ �&@K 5w�];� �;��1 ��� �/�"G� ��;��� � $(N"� � �S( �� � ��) �/�@ �� (��/�� �
ERF .�� $�@ M�� =%Q =��) �) ��/�(
�>���T�O� ��9%<#1 �� �@ $���)ID �N%7��� �/� 40����"( �) �@��V!� �/(!� �Dest I D_0, . .
. , Dest I D_s – 1 �� ��>� �� � ) ��)� $(N" M�W% �in_rdev_rd �@� �"@�( (�>� w�];� B�/� �( �S� . (
��� 5�@� M0� (��/�� ��� ���� (��#;� �"S��� Z�@ (��01 � �(���� =41 ���� ��0� �����U�� :/� )���/
&@ �( �) �� ��%' �K ��J�6 &@ �( .(�� $�@ $(�( �J;6 M�W% .in_rdev_rd ���B� ���� �(�)
9%<#1 ���!� � $(N"� ���� $���) Hiti OR gr_rdi �� $(N"� :/� ���� a�> ��.(�%;���� �� �O) ���) (�@
&@ �( $�@ $(�( �J; H%14@ $S�/( 5�4%4F6 �G%F�1 .�@ $(�( l%F�1 j\�A �) ��];4� �� �) M� �(
&@ �� o����6 .�;�@ M�;( �/� �%;
40����"( 5�(��/�� � �) ���Ri �� (��/��) (�@ $(N"� �;��1Ri �@ID �N%7� 5L��� �ID �N%7� � �VA �
�( �) ��%Qkk �� $�%�f ��K �%��� (�@.(�@� 5��>� �0�Ri ���!� �@gr_en_mem_full �� �A �) �@�
:%/Q �( 5 40����"( ���>� � .(�� �%� �%0A�� :/�1 ���!� �%� :/� �S�1 �#&@ E (��/�� � #�0� 5�@� �"@�( ��
�� ����� .(�@clrev Ri 5 40����"( ��>� � �0�Ri ��� :%��� �/��"G� 5ERF �/�@ w�];� H/ �&�/� ���� ��
�� �W; (�@ �!]�� ���!� 5(��/�� �%� �S�.(��(0 0� (��/�� �) �� �0� ���� :/� 5�@� �"@�( ���4; M �#%� .�@�
�� (��/�� =41 ���� �� �"�� :/� .�;�@ �&@K (��/�� L��� =41 �) �;� 1 (�@ :&� �"JS � ��]� �;��1
�W; / M�"�) M� �( �) �N/7�.��"#� �;S��' ��(��/�� ���( 40����"(:�/ �� mover Rd 5Rs �)�� )
ER�) �/> 5Rs �� (��/�� �� o���� ��(K �@�@�- ��� �) �;� ��gr_rdi $�@ M0�- �Rd ���!� �@
���ERF $�@ E�";�- �� �K ���!� ���RS��� ���� 5(�@�movcr EERi 5Ri �K )Ri �( ��EERi �� � (�#/�;
movcr Ri 5EERi �K )EERi �( �Ri �� =41 ���� (�#/�;sCPUi � ��"( �A� 40����"( � $��4� .��@�
�� <;K 5�X";�3��4� ��;��1.�; :[4]� �� 6/7� :%� =%Q ���8 � 5�(��/�� �� ��"( 5�
G. �"J%� �X�\�
�0�RESET5 $�� �� �( 5� ��;�nMPRA 5sCPU0 �� M0� �� =41 � ��)sCPUi �� M0� �%e �� �W/( .��)
sCPU0 =�; =41 �@h�A ���������1 � (����) ���� ��startup ��;��) ��>� ��;�� H/ c��@ �( �) �/�
�� =41 ��� ((�@sCPUi ) �W/(i=1, n-1�� ( .�@�sCPU0�� �%0�1 =41 �;��1nMPRA �NA� �� o���� ��
�� ���A 48 (��� (�@ HO<� ��]� �� �B�� �� :&4� �) �� ������ .��(PCs �� ����sCPUi H/ ��(K �
�!O�)�O1 �trap loop�� !"�� M�"�) �) �/> �@ ����� ���RS�� (�� ��;�� 5�X; �]!; :/� � .(�@���� �;��1
&�� � ��/ k<> ����� =�; ���>� ��X�� �� 6O"�� ��) ������ ���� C� �%0�1 ���� �;��1 sCPUi .(�@ ;��1
��sCPUi ���;��1 �X�� 9� � �OG� ��� / �) �� 9��X�� H/ �� � $(�( �.��/ ��"( �>�� �
IV ��40� � �"8� � ��>� .nMPRA
�� 6%P�1 �� �1%O48 5k�� :/� � ��"8� � k/� K ����<) ��)nMPRA H/ �( ��40� .�;�@ �"�� �&�
Virtex-6 FPGA ML605 ��/ �� Kit—Xilinx � ��>�$�; �(�Q �) / ��� .�� $�@ � ��"8�� 6%P�1 �� �(
��H/ ���� ����� &/I�'� �8� � �%#�) (���;"� �D�VHDL$�; �(�Q .�� $�@ 6%P�1 ( �nMPRA ����
�) `;)�� H/50 MHz ��40� .�@ ��>�nMPRA 54 ��� �@) ���� �� ���PC c�4B� �( (606 �� �%�
$(N"��� ���� L��� :/� �@�;�� .��)16 5�N%7�1.18 KB �RAM �� %; (��� ��.��)
5�'�S�nMPRA �� �%S�( �� �@ �"@�RS T��"@� �� L��� �) �� ��40� H/��/�� 5��) �1����) �%#� �K ��
��40� ��!0� (��01 H/ ���� � ��>� :%�' �) (�) �>�1 �/� .�� �W/( ��B1 �� h�� 6/7� � ��
���� � m]�� h%)�1 %�( �� 5 �<>�1 �A ���%� �� `;)�� 5}��� (��01 H/ ����.�@�5 D� �J";� �� ��]�
.��/ ����� k/���� �;D�!0� �%e
M��>1 �X�� ��4"�� � ��>� ��� %; (��� �8 516 �32 sCPUs �� �+��� �� .��( �� ����( M��> :/� b��
��#; ���� �X�� b�V� k/4;�� �/<; � ��>� ��$(�( :"��S �X; �( � .�@� M��> ��I �II %�( �� �
M�"�)��&%� $ ���� �&�/� ��P � �KB RAM �� $(N"� ������ �) 9/�/RI� �0]A ��]� �� :&4� � ���)
�X��$�; �(�Q � ��>� ���� %; (��� � �nMPRA A��"( ��� �1 M�"�)��&%� M^� � .��@�Renesas
SuperH R5S72681W266FP �) ��2.6 MB RAM $(N"� �����X�� :"��S �X; �( ���� 5(��( �O) � �
�� ���>� �/ � $�; �(�Q � ��>� ���� %; (���) �@��1 � $�@ =e(� ������chip �( .9/(�) f�1� (Virtex-
6 FPGA ML605 ��� (��01�@�� �� 514 334 �� (��01 � �@�LUTs 5�@��17 749 ����8 sCPU �� �@�
��� (��01 � �@�� ��27 374 ��(��01 � �@� LUTs �@��33 571 ����16 sCPU ��.�@�
$�; �(�Q :/� (�&O48 k/� K ��X�� ��.9/(�( �0�1 �� ��RW4� $��;�(�S�� H/ � 5� =�; :/� /� � :%�n4������� �
VHDL 40����"( �)�Q� ��(��"8� ������ $(N"� �.��) $��;�(�S � ��1 $�@ $(N"� �� ����� :/� ( ��/��� �
40���"( �(�) ��F� /� �� �/�> �� ��VHDL �� ��%<� �� <�1 �� :&4� �) H/ 5�;��) �%0A�� �( .��)
) ��RW4� �(��;�� �� :%@� �) (9>�"� /)$��;�(�S � �) ��� �( (�@ �"@�; (9>�"� � �� �"@�; /� H/ ����8
$�@ �VHDL �0�1 .(�) ����� �%��1��;�� H/ � �(<�J%Q ��40� �) �� ����F �!%!� :/� %�( �� �/�> �
$�; �(�Q 40����"( �8�4B� 5 �MIPS �� �#� �� � �0� .��(�%O�8 k/� K ���K(�S ������� 5$�; �(�Q ��
MIPS �� �"��0�1 ���� ��;��1��;�� ��� ��$(�( �S� .�;�@ $(N"� 3;�(�X�� �%G� m/�� � ��48 � ��
40����"( ��t� ��/(� 5���/ M(�1�� =B;� d";�� �� �( ���RS�� � $�%�f ��.(�@ 5��� :/� �( <�1 ( ��
:/� ���>� M�� 40����"( 5� ������ ��1���� ����������)HSE ( ��%� ./�01 (�&O48 ���� $(�( $ >�
�4;$(�( :/�����)(�@�� $(�( ��%4�� ��� ��]� ��� �+�� �� �/ k/� K � 5��%� :/ �( .�;�@ �%/1 �) 9%�)
�����' :/�1D� �� �B�� 5�%0F� :/� ��) �./�01- ���' ��� �8 � .(�@
�N%7� �( �@ ��;�� k/� K�N%7� ���V� $�@ �"@�; � �0 �N%7� � �1 ��N%7� .�@�� �0 5�� eK(�@ �)
$�4@ H/ (:%Q) �V�@ ��@I/O �� H/ �(�� 9%X�1��) �� (��/�� H/ ��� �X";��NA� H/)(�@$��( � �/�
�O%�� �4/1 H/ ��� �%��1�� ��� (���� �) �;� .((�@�N%7� 5 ��(�0 I/O � ���� � �NP ���!� � ��
40����"( ��) �1%O48 *%�NO �� (�� 9%X�1��) ���!� � �� :%Q �K |1 �� 9%X�1 ���� �X";� ��� �� �K ��)
$�@ �%��1 (��/��� �� �� �4/1�N%7� .((�S �1�� eK �/��� A��� 5�� (��� �!O� H/ �( � (�@ �@ �) (�@
c� 40����"(sw �� .�@�
� �/D� �/��� H/ B�/� �( m%A( ��]� �) (��( (�>� NA ��� �( :"@4S �&�jitter &@ � ��10 l%F�1
��E�F �^)��� H/ )��( B��60 �%;��;;- ���' � &@ � �&;�' (:%@� �10 �) �;� 5MPRA �(
� �#;)��50 Hz�� �)E�F �^)��� 5 ��)�� >D� ���60 ns �� � &@ �( `;)�� . �@� �� ��� (�@
$��( �) ��� �( 9"#% �8 � ��� M;) � �8 .�@15 �8 �1 ���@� 3��4� ���� �
�� $(N"� ���� �� ��� � �X�� �(�) M;) � �8 |(�@4 � 5�� �(�) 3��4� ��� ���HSE �� $(N"� (�@
� �8)240.(
&@11 �NA� H/ ���� �� 9"#% Y@Q �� �� �J; �>�� ���� 5��;�� :/� �( .��( ���� $�@ $(N" ��
:%Q H/ 9%X�1�� (�B� 9%X�1 / � 9%X�1 5 &@ .�;�@12 M;) �( �� ���4� �%e �>�� ��(��/��1 ��; 5p�
�� �J;�"�1 H/ � $(N"� � (��/�� 5��� :/� �( .��( �ML 60 �� �%��1 ���� YQ .��)�B%"; �( �) 5��� �
M;) �( 5�N%7� *%+� / ./�013 &@ �(12 =�; YQ �) ��� �( .�� $�@ $(�( �J; 9%X�1 �� :%Q �) �����
�� M;) �( 5��)2 �� $(�( �J; `;)�� H/ �( .(�@50 HZ�� YQ 5�� ���4� �%e (��/�� H/ ���� ��� �;��1
126.7 ns .(��D� (��/��(���� �� �� �"#� �O��( �!]�� T�O�HSE � �"J%� ��6.7 ns ����1 �� �%� ����
�� &@) .(���; %; ��%� (�B� ����� � ����12.(
=�; YQ �( �����50 ns 0��� (B/� �N%7� ./�01 � � �( �) �� �X�\� �A .(�@40 ns 40����"( ���>� ����
SW �OR �� %; (���YQ ��X; ���� $�\0� .�;�@��;�� ���� $(N"� $�@ ��� ���Q c�; H/ � � 5�) �) 9%
z%O� H/ � y\�D $�%�f ���� �O��(�� $(N"� ��� � .��) y\� z%O� :/�D ��� �($���) ���� �"@�;
�8_ � �80 �� �"@�;(�@ :/� . 5 ��� �%�1 =�( %�(�� .�@�M�W% 5�8 �� ��X; ��X�� �� NA���
���Q � � 5YQ ����;� � 5 ���4�;�� P7 5P6 � 5P5 9/(�) $(N"� $�J; ��� :/� �) �� ��0� :/� �� :/� .
���Q� *%� � y\� z%O�D �O��($�%�f ���� ��F�$(N"� ��� � �4; ���) ��/�<;K �&5 >��� � ��1�� �
�!]�� �/(!�9%!"#� ��� �� �� �%��1 �/(!� �� 5(�) ������ �� �"@�; ���Q �����;�@ � . � c�; :/� ���Q�5�
/ �� H/ �� ��%� ����;� YQ � �;�%� LA�� �� ����� 3��4� � $�@ �B%"; �%�1 �;�S �� �(�� :%� � ���� -
� � ���Q :"@�; �( 9"#% �8 9/(�) $(N"�.
V��1�� ���) .
k�� :/� �( $��K �( �� p/"; � ��V"�� %OG1 � �/�B1 ��"@RS ��( �( �( �� ���� ���;� ���>� L/�#1�
9"/��W�� � �%��� ���� �<O&@�"#��� ��� ) 3;�(- (�0A������� �� �( �� �+���9%�) $d��Q � � . �
FASTCHART (<�J%Q $�@ ] �(17 M �( [1991c��@ ��9%�) L��� . (���> �%e)nondeterminism �(
9"#%$�@ � > ��$�@ �%�01)�� (�53;�( ���' ��1� 6O"�� 40����"( ���>� /� ��t� %�( ��: ��
�X�� 5����� 5�<�Q �>�� �NA����4� �%e 5 �%q"� ���>� �� �%O48�� RTOS 6/7� � �(��01 �� �� 5
L��� � �� $(�( .�;�@�4�� �/��� <;��1�� �%O48 �(�( �)�� �RTOS ����� �� �( k�) ���/:/� . 5 =�<N�
��FASTCHART ��.�@� FASTCHART 64 6/7� �� 6O"�� �/���� �J� � �� �/�/�� B�/� �( .��)
) L��� ���� �;�%"JQ *%�mutexes (�>� ($�%e � 5���4 5;.(���
$(%Q� �����P $�; �(�Q H/RISC �NA� ���� 5 5���� �� 5$�%�f / � 5 40����"($(�( � � |�@ =B;�
5:/��������'� .�@ �0]A 40����"(FASTHARD ]9 [ $d��Q �� ��� FASTCHART �O�A ��]17 �� 5[
�"#� H/ �K�� � $��X�� �4� $�; �(�Q �) �� �������� �;�%"JQ �� .��)�X�� H/ � $(N"� �"� � 5(���;
�� ����� $(�( / ��(K $S�RS g�� 5�K .(�@ 1;&�� �)$S��K %�A � 5�rendezvous (�NA� 5� c��@ 5�>��
$��(/�M0� � 56/7� ��41� � � �� �(�( ���( ���� 56/7�CPU �� ��%"JQ.��) � �0� FASTHARD
]9 5[Adomat ;��&4� �k ]18 ���� H/ [��3;�( )RTU ( ������8 ��
�"#��� �)3;�( �0A�� �� ( �� �� ��"�� ������;(�) 6%P�1:/� .5 �64 7��N%5 5�/���� l] �J�6/7�
$��(�/� ���4 5��#; �%�1 ��/1�( ��9'�Q 5�� �NA� � 5���7; 5(��/���� �;�%�JQ ���) �K � 5
H/ �� V"� :W4� $�; �(�Q � ��1 ���4� ��� �� $S�RS M�d� ) Q��� `&0��VME (�/�/�� ��.(�@
] ���&4� � ��%�19 [�%!� ��40� H/�/RQ ���0A�� �� ��;�� ������)(3;�( )SARA( �) 5�;(�) 6%P�1
�� � �;��1RTU $(N"� .(�@SARA 5 9"#% H/ �A �0�1 ��) � �) 5��$�; �(�Q �� � �X�� � �V�@
M�"�) �$���)�� �� $(N"� $S�RS��) $���) M�"�) :/� �� � $(N"� � (���(� H/PCI $(�J� �� V"�(�@ .
;��&4� � ��k ]20 [ RTU �� ��δ-9"#% ]21 [ ����������) SoC /RTOS .�;(�) =e(� Nordstrom �
;��&4�k ]22�"#� [=�; � �����μC / OS-II RTOS � �� H/��#;� H1 $�; �(�Q�
RTU 5(�&O48 (��<� ��X�� �� 5] �( � �;(�( m��23 <;K [ �����&%QRTU ������ ��#;� $�; �(�Q H1 ;(�) ��F��.
��&%O% :/� � b��TRON )Stron] (8 [������� �8� k/���� �� 9"#%RTOS �/Q k�) � 9X��; �)��
�AN1� k%Q ��X�� ����%��� m%A( �� ������ �� �� 5�0�1 .�@�$d��Q� TRON 5 �V�J� C�V� ��
μITRON ����RTOSs 5���@� �)��������Si/� � ��� �"#� H/ �( k/������� =; ��Stron $�@ ��>�
��$�; �(�Q . � Stron 9'�Q 5�N%7� �/�/�� �@���4 5� ��� p� � � �/�/���NA��� �>�� �� .�@�
���� �K �>�� �� �X���� ����� (�@ �K �5 $�; �(�Q H4) H/ ����8 ���� ���S �X; �( .(�@�"#� �
SPRING ] �(24 [�0�1 $(�( g�@ ���(�@ �) ��� �� � (�&/�� j\�)1�N"��� � ����� �0%��RTOS
.(��(�"#�� SPRING ��� ���� � /�Q���[1 ��B"#> �� ����0J;� ��J")� �� 9"/��W�� � �N" $(
����).
:"@�( �X; �( � ���� �� �� 9"/��W�� 5�/���� �/(��G� � L��� 5� B0�� E�F 56/7� ���>� �� 5 g�� H/
��;�� ��N/7� =41 H4) ��) � E�F B0�� �� �@ :"��S ������ L��� ���� �X";� :%� �( 5(��#;��; �( .
]25 5[$(%Q H/�� � H/ ����8 �� ������ H4)$�; �(�Q� � � ����spring
�"#� ����=�; ������� ] �( $�@ �+���24.[ 6%P�1 ��9"/��W�� .(�@�� �� �� D� ��� �� �� $�48 �%��1 5/�Q ��
�� RTOSs .�;��( ��G� �� k�) ���� �/���� � H/ E�";� =W�� �(���� � �N%7� �+���� ;� M\!"��
H4) H/ 56/7� � �(��01 �(; �(�Q$��� � /�Q ���� �(FPGA ] �( �) ��];4� 5�@ ��>�26] � [27 [ 6%P�1
5�K .�� $�@ $���( E"@ H/ ����8 ���� ����� � $(N"� � 5��1�� �� �;#4������5 �@ $(�( �0�1.
� :/� �����&%Q � ��%#� ���� �;��1 �/� 9"/��W��� �)) �"# :%���laxity( ��"�/ k/���� A� �)ELLF g�@ 5(
] �( $�@ $(�(26 [�"��J%Q:/�1 .�� Vetromille ;��&4� �k ]10[
������ (�&O48 �#1 H/9"#% :%� ���) �/� $�; �(�Q H/ �� H/ / $�; �(�Q H4) 5H1
����� �� ���� �PV"�� �>������;� ���>� ���� $(N"� ��.�;(�) (B/� ���)
���"���Q �J/� K $(N"�CPU(��01 5���!� � � B0�� E�F �� (��01 � 5 � � *%+� ����%� �;(�� .
�S��#/�; ��F� ��� :%�n4� �� �� �>�1 � C� ���1��$�; �(�Q- H4) $�; �(�Q� ����� =�; ���;� � �( �)
�� $�@ ��>� �;S��> $�; �(�Q H/ �G� (��� �;(�( ���A5��"�� �"� ����� � $(N"� � .
;��&4� � ���;'] k28�W;�W' [ �%��1 �)(��HW-RTOS L��� �API POSIX ECOS RTOS �B%"; �( 5
) H/ ����8 �� 9"#% (�&O48 k/���� �;(�) 6%P�1 �� .H-"#�] �29 [$�; �(�Q H/ �� $�@ ����� C�
�� $(N"��8�4B� �) ��)�� � �� � H/ � �N%7� ��RTOS $(�( CV"�� ����� �� (��(�K .5 �� 60٪ k/����
C� (���) H/ ���� (�&O48 �( ���� ��;� 5 ��P U �(�Q��'�/1 ��3;� ����� .H-�"#�
6/7� �� 5�/���� �/�/�� �� �� �/�/���NA� 56P 5(��/�� �� T�O�� �� �/�/�� � 5�� ��>���) . � 3;
;��&4�] k29 [ $�; �(�Q �� ��"�� � $�� H/ �� 6%P�1 �;(�) �� �)���� �;��1 (��<� (�&O48 H/ �� ��%�
� $(N"� � �"�/������) ���� FPGA �HW / SW C� (���) H/ ���� ����� .(�@
�(�Q ��40�$�; �� ���"@� ��' 3;�(�� �"��J%Q )ARPA-MT �� (] �(30 [ $�@ $(�( g�@ �� ���K :� � �
����FPGA ���� 9%X�1 �A � ��%� k%Q �A $�; �(�Q H/ �� ��%��� $(N"���)��1 $�; �(�Q :/� . �(
$�; �(�Q H4)� ����� ��� Cop0-MEC �Cop2-OSC �� $��4� .(�@���� 5�X�� �]�
5�NA� ��� �/�/�� �� ��)��� �) ��� �( =41 =�( �� �Si/� �� (���;"�RTOS .�� �/�/�� �� .��) H/ T���
�"#��� �3;�( �( $�@ �"@�;C .++�� .�@�] �(31[ (�&O48 p/"; � 5����� 5$�%W;� 5 M!";� � `Q $��K �( ��
�A =41 ����� �� �� �"#� �%O�� �+��� .(�@ b�� 5(�&O48 � ��> (��<� �� .ARTESSO ]32 H/ [RTOS
��>� $�@5����� �� �( M�d� � ���� $�\8 �� ��TCP / IP C����@� .ARTESSO �W;��� �"�% � (�@
�) �!%!� :/� � $(N"� $�@ �%�01 D� �/��) � $�; �(�Q H/ 5 %; (��� �� ��;�� �S����� �� K �( ���1 �(��
���� � $(�( �8�100 MB / s �"J%� / � %;�@�$�@ �+��� ��40� .
"#� � 5�X�� �I) 5���"�) ��G� 5� k�%'���($�;���<W;) TCP / IP �� ����� �� �� �� �)��.��(
] �( h�> ��40�5(<�J%Q 5[ �� $�@ �) ���� �� H/ ��#/� �G] ��(�/� 5�X���� �%#�`/��)�'5 �
M�"�) H/$���)� DRAM ����( �X�� (�&O48 ��%S��� �A ���%� k%Q �A � �� $(N"���) ��40� :/� .
�#/�; ��;�� $ >� �;��) �N� 5�� ����<;K �� �4� �( �� �#%� ��.(
proprieties .Kuacharoen ;��&4� �k ]11 [ ����� �� ����;� � 9%X�1 �%O�A �9"#% ���� �� ��
.�;(�( �J; ����;� ����� ��� 9%X�1 �%O�A �5 ���� �� 9"/��W�� � � �� �;�%"JQ��):
1 (�%P�V� �� ��"�� |2 (u�; � |�����&/3 :%��� (E�F B0�� �O�A����� �� ����;� .:%�n4� � H/
$���) M�"�) C� ���NA� ���� �� ��>���) 40����"( 5�K . ��;� �/�mutexes 5$�%e � 5���4 5�4; ��>� ���)
�&;�' <;K=�; k�� �$(%Q ������.�@� $�@ $(�( � ;��&4� � ���;�k ]33 [hthread �) �;(�) 6%P�1 �
H/RTOS ��' �"#��#/��/� ����� =�; / ����� ���� :/� .�@��"#���;�� M�� H/ � �J�� 5 �#/�;#/���/�
��/��%�9"#% ���� �"�/ �0�1 ��%)�1 �� �� �)�� �@ �(�#/��!"#� �/��>� ������ =�;� �#��!" ��
����� � ���4� ���P ����(�@ �"#� . 5 1256 �#/� �M0� ����� =�;
5256 �#/��� ������� 5M0�64 ���4 �(��#; / �)�O� 564 ���4 NA- k��' 5�;��%WJ%Q �/���� 5 �/1�(
��( � 5:%���9"/��W�� �� ���� FIFO�� �;�%"JQ �� �@ �"#� .��) $���) M�"�) H/ � =; �� �/�> �NA�
�NA� ����;� �� �8�� $S�RS�@� ���4� �� ���4�; �NA� ��@�0� �) M�"�) �A 5 5
�����(��#/� � �"���/���� �� ��1 ������ �4>� ������ =�; .��) �� ��"�� �8 9"#% ���>� ���� �����
�� m/�� �API 5(B/� ��;� 5�@K ��v��� � 5�� :"�%Q .�;��( ��"(
�� �B%"; �OP� /D( � �) 9/�%S ���>�RTOS k�� / � 5 5�X�� k�) : � ��1��8 ����� �� �( �K � �/�
k�) ���>� ��1 $�@ (�( ��D�) �� L���1�� ���� 3�%n%+� � � (��%� (./�01)L�1 �;������ RTOS
5bR� / k�) 5; �)���AN1� 9X; �"<� �&�� � � �NA� YQ �� (��<� � ��@ �"�� M�"�)<;K )8 �� �NA� ����
�� :%�n4� .(6/7� �( �;�� �( �) �%�) �>�1 �%;��1��( E"@$��� �� ����� � ���� RTOS �� �� ��"��
&/ :(��( (�>� ����� �� �� 5�+�> � :$i/� �� $�; �(�Q �����FASTCHART ]175[
H-] �"#�29 � 5[ARPA ]30� $d��Q [$�; �(�Q H4)) � $(N"� � 5�OP� �"@� H/ � 5 (�coprocessors 5
��;�FASTHARD [9] 5RTU [18 [- ]205[ ]22[] 523 5[Stron [8] 5δ-] E�'�'21 5[HW-ECOS ]285[
OReK_ COP [31] 5AR-TESSO [32] 5hthreads ]33 ��;� 5� $���( E"@ ��/� ��;�� / � 5[ELLF_ M!;
]26] 5[27 / � [Kuacharoen ]11.[
���� �F� M� �( � 5�/ b��S��Q �( $�� � ���!� :/� �( �(<�J%Q �� �� �) �/<;K �.=�<' k�� �( g�@
$�@ $(�( �� �#/!�.9%�)
M��> �( �) ��];4� 5M�� �#/!�III �� $�@ $(�( �J;�� �� 5
1 ���%0� � �N%7� o�1�� �8� 5L��� ���&%Q$( � ����� �� / � ����� ��- ����� =�;���@� �K ��'�� .
�X; �� $( � $�� H/ ��;� �� :&4�� 5��nMPRA <�1 �� ���&1 :%4t1 ����� � ���� �� ���� ���
�(�) *%+� �8� ��� �� �(���) �N%7� ���@� ��40� .ARPA-MT <�15 ���&1 IF �ID
����� ���� ���N%7� �� ���� ���� =B;� �;�4; ���( �K 5M� :/� � .5 l] � �������K 5���� ��-EX MA 5
�RB �� ��A� (��� ��� /� ���&1 � $�� �' �S� .(�@���5� ����� �� � $�� H/� �4%A ���S �� �K 5
:%�n4� ��")� H/ �8� H/ �� ��%� �4 �� ��W4� :%� ./�011 �3 ���'� :%@� ���@�"%0A�� 5 �) �
�� <�1 �( �;��1nMPRA .�/%� ��� M��> �( g�F� �� ���1 �� �) ��];4��/(H/ ���� �"� 5 $�; �(�Q�
`;)��50 �8� 5�1��W�./�01 6/7�60 NS ���� �( . ��J� 5nMPRA �S( �� H/ ���>� ��
������$(%Q b\� �� 5� �� W/(����� �� ��%)�1 �) �� �-��]� �) ��"#� � ����� =�; �B�� ����"� ��
�;� $ � �;D�� ./�01�� �1.(�@ ����� �� 6/7� ���4� ���>� 5��40� ��N%7� H/=�; ������ �#%� �� �
�� .(
�#/!�� �� �� =�( � �� �Si/� ���;� �� M��> �( �IV �� 6%P�1 .(�@ � $�� �� �#/!�$�@ ��
���;� $�@ ��>� H%��/( � H%1"������� �� � ���� �> �� 5hthreads $�@� �����) .nMPRA <�1���;�
��>� L4> �� �(A � �� $�; �(�Q l] �( $�@ �8\�� ���K�� ���� �%�1 ���� 5����� �� � 9%!"#� ��� ��
�� o�1���� :&4� $S�RS�&;�' �@� � �"�� � $���X; �( �� $�@ �"��S�@� �W/( � 5� � $�� =41.
(<�J%Q�� 9"/��W���� (<�J%Q �� H%1"� �������) �) B;K � .�� ���� � =B;�*%+� ������ �� �� ��
�4:/�1D� �/���� �� =B; �#/��� � 5��(19%;�� �) �;�/RI�nMPRAL/� :/�1 �� H/ � �K)�N%7� ��
� ��W/( �%�11-3 $W"( ���' �� *%+���)1 .( 9"/��W�� � $(%Q �� �) B;K ���� o���� /�Q ����
��5(�@ ARPA-MT ]30 � [ � $�� ��Kuacharoen ;��&4� �k ]11�"��J%Q �"J%� [ ���;�@ 5�&;�' <;K
��>� ����� �� $�@@�� 5�F� M� �( .�nMPRA H/ 9"/��W����>� $�@� ����� ��� /�Q(���; 5�&;�' �K
�/���� � �/4� ���� /�Q ��/�Q ����;� � $(N"� � \�A �) ��];4� .(�@ �%<1=� k�� �(-B 5 $(�( �J;
�� � �@ � $�� � ���� 9%;��1/��>� �� �� ��VV�1 ��"� �( 9%�( �+�������;� �%�0� . m/�� ������ ��
��nMPRA ��>� � $(�( CV"�� ��(�@ .�&;�' �� ����;� � M0� 5�W/( �� � $�� ����H4) 5$�; �(�Q
���' ���� M!";� %; (��� $S�RS ����� =�; �O���� �"� ��� E�#��(�@.
�#/!�� � (��( �NA� 9"#% �� $�@� =� M��> �(V $�@ �+��� ��. �NA� =�<N� ��#/� �( �� ��]11 � [
]33.[�"�/�( .9/� ��;� ARPA-MT ]30G/�P L>�� *%� 5[ ���� � �/�/�� .(���; ��>� B�/� �( �NA� �(
]11M�"�)5[$���)� $(�( g�@ �V"�� �� �NA� �� 5 �K �) (�@�NA� l] �J� �� �;�"JQ ����)� �NA� �� . �
�;��1 H/ ��N%7� 5RS���NA� �� ��1�� g�] �/�/�� �� $�@ �� �@� o�1�� �( � ����8 �� �� :&4� �NA� �� .
�NA� H/� �O0� �) �( m%O01 ��� �� �NA� M�"�) ��;��) L/� ���@��NA� H/ / � (� =��K
)M�"�) �N%7� �/Q �( ��$(�( ���A �/���� ��(�@� $(%Q b\� �� .(�� L]A 5�W/(
9"#%�NA� �nMPRA ��]�$(�( CV"�� �) ���� �NA� H/ �) ���� �� 5(�@�;��1
�N%7� H/ <�1 (�@ V"� �� �) H/ �) ��� �( 5 �;��1 �� �"J%� �NA� V"�(�@ �4� �"�)8 �/�� .(<;K �$�4 �
nMPRA ��1 $�/� :/��� $(�( �@ (�@ �K �) �� ��%�1 *%� ������ (���; 5NOR $�%�f ���� �� �K �
�� %; (��� ��� .( ��5 $�\8 �NA� 5 ���;� ��( �W/( ��(��/�� 9"#% �(5 ��%@ ������ �� L/ �1
��.�;�@
���K �#/!� M��> �(VI �� $�@ $(�( �J; ���1�� � � 3��4� ���>� �� $�@� � �%��� ���� �<O&@
�(6/7� �%� (��( .nMPRA ��40� <�1 5 �/<;K �%� �( ���+��� �F� M� �( �) $�@�;� 5� ���� �<O&@
����� �� �( �%��� �� ��>� ����) u� (��/�� H/ �S� . �) �/<;K ��;� 5��(=� k�� �(-F 5 �;�@ 6%P�1 �K �S� �
�O0� �N%7� �� ��#; ��1D� �/���� �N%7� H/ � 4�$��
�@� 5$W;K �N%7� �%�1 H/ � ./�01 �1-3 �� u� ���' .��(nMPRA �� :&4� =41 � ���4� ��� ��
r(���=W4� � $(N"� � 5� H/ �!��X";� 40����"( �;�%"JQ(�@ L/A� � H/ �� . (��� �X";�) �� ���� �
�� M0� ��) �N%7� �/� �� eK ��) �/���� :/�1D� �K �) ��W����(�@�� � 5�B%"; H/ ����8 �� .%;��1 9 �%�
9%�) �)nMPRA 6P ���� $ ���� M�"�) T�O� �N%7�NOR � �>� �N%7� �D� ;�4��).
�B%";��%S
$�/� 5��!� :/� �(�%��� � L>��� �( $�@ �+��� �6 �7�Si/� 6/�01 5 ���� �OP� �/�> ����40� ��nMPRA �
nHSE �� �0�1�� ��40� .��/ 5��<W; �4/1 5�4/1) �(��/�� � $(N"� � ���� >D� E�F �� 5; 5�NA� ��S
�� �;�%"JQ ((��/�� � ��;> �(�� �"� �( .�;�@�� (<�J%Q ���� �K �( �) � H%1"� �&/ :(�@ID �/��� �
����� �)0 � �/��� :/�1D� ����0�n-1 :%/Q ����0��� �/��� :/�1�� H%��/( �W/( c�; �.��@� �K �( �) �@�
� �/���ID �� �/��� B�/� �(.��"#%; ��J� j���� ���� �� ��( �( �;��1sCPU ��;�� ���>� 5��� :/ .(�@ ��/�
�� 9"/��W���/��� � �� ����H%��/( �<� �� �#%�.(
$�� H/ ��!� :/��� �+�� �NA� 9#%;&� ���� �� ��&"�� ��NA� 5��%� :/� �( .��( �� 6/7� � ��"�� � �/��� 5�
�� r�� �� (�@ V"� �&�/� ������%� �( �NA� H/ �"�� 5U�� :/� � $(N"� � .�;����;�� � �3;�( �� A �
k%Q ��%��NA� � $(N" � <�1 �) H/) ���� ��"#� V"� �1D� �/��� � �N/7� �� �) �/��1((�@ L]A �;� .
k�� �( �) (��( ���41��A � h�> �Si/� 5�(<�J%Q ��40�III-C .�@ $(�( l%F�1
) �!"� ��S ; �� H/ �!"� �VG;�es�� �( $�@ ��>� (�� �� ��"( ���� 5����� �)��"@� L�sCPUs
$�@ %�( �"� �(5 ��"( .�;� �!"� �VG;����' H/ �( 5 �CPU �� =B;� H1�� �)(�� �K � (�@.�@�
�� �#%� �� ��) 5�(<�J%Q U�� H/ �( �) ( �!"� �VG;� �� �) �;� 1 (�� �(�) 6A�"� ���� 5�����
�!"� �VG;� =�; � ��D� *%� ���� / �����RTOS $�@ ��>� ��(��/�� �� H/ .�� �X";� M� �( (�@ (� K
H/ ����0�ERF 5(N"� ��X�� ����@ $ �N%7� :%� o�1�� H/ � �J�� ����0�9#%;&� � �'�I&/ �/� 4�3��-
� 5 $�@ %�( ��40� �(�;� .ERF T��"@� �� L��� ����0� :%�n4� =41 ���� $�@ �"@�RSsCPUi �X; �(
�� �"��S�4; $(N"� (��/�� H/ ��(K L>�� ����0� 5(��/�� H/ =B;� ���� ��"( .(�@ *%� B�/� �() (�@
(.(���; (�>� ��%"�� (��/�� ���� �/�B"#> �%O48
k�� �( �) ��];4�II-A �X";� U ��K 5�@ �+�� 5�K ��/ �� ��41��A �%#�3��4� (��/�� :/��' � �� �
�� 9������ �(��/�� :/� .( =�; M�"�) �G1 ��;��1�/��� M�;( �� ����� 6/7� ��1 �) ����sCUP %4G1
���� � 5=B;�� .�;�@ �&@K (�@ �B%"; 9%;�1 ��40� �) 9/�%W�nMPRA ���> � �%#� ��40� H/ 5�/ ��
:�� ��41��A
1. *%+� (./�01)���' H/ �( jD�40� 56/7� :%� �(���' � �^)��� �( � �8 ��� =B;� �8 � �;� .(�@
�)CPU �X�� �) ��� �) �O.��)
2. � 5�>�� (��/�� H/ �� 9"#% k�)��5.1 ���'�4; �B1 �8 � �/��� � �) H/ �� (��/�� �) �1��P �( ��)
V"� �;��) �) � �1D� .(�@
3. ���� ��pipeline$� 5�4; (�B� � ��;��4; ��%� 9%��1 / ��;�(�S � �� � %; *%� B�/� �( |�@� .�@�������� -
M����/ �� Subroutine�J!; (B/� � �)(�� �"���Q �I) m/�� � 5�8�4B� �/�> � ���� �� $(�( E"@.�;�@
4. �X��D� �8� �O��( �- �"JQ �� ��"��stack
5. 40����"(�� ��41��A ���� �� T��"@� ���RS 5L��� 3��4� 5� � ���1�� �O��( �) intertask ����0� .
) �( �) ��K�� $��/�� 9%���; 9%�( =B��� K 9/��( �VA � �#/!� ��X�� �� �/�> ��40� ���� �� C� �%� ��
�$�; �(�Q��� K 5�F� M� �() 9%�) (B/� 9X�� ���4; (�>�� �%� �� �;�@ ��>� �(<�J%Q ��40� �( ��;��1
40����"( � ��/ $(N"� ���� �� ��/�> �� �nHSE �� ���0� .(9%�):%�n4� $�@ �+��� 9%�N� 9/��( �VA �
�� ��!� :/� �(9#%;&� �( ��RISC �"��J%Q ����"� ��%� � M )ARM.9/��� �&� (
� مقا�، از �ی � ه مقا�ت ا �� ن سايت شده �� ��ه فاراي �� در PDFكه #� فرمت ميباشد ��
ان قرار � ايل ميتوانيد #� 6يک �� روی د3ه های ز�� گرفته است. اختيار -, عز�� از در صورت :�
اييد:سا�� مقا�ت � استفاده :� ن<�
ه شده از �� � مقا�ت �� � ه فا ؛ مرجع جديد�� �� ت معت<� خار�B سايت �� �# ,Dن