0% found this document useful (0 votes)
25 views53 pages

Modeling

The document discusses modeling systems and defining their characteristics. It begins with an introduction on how modeling is used in the early stages of system design to gain information and perform initial analysis. It then defines what a model is and provides examples of characteristics of modeling languages like hierarchical description, support for parallelism, and behavior over time. Finally, it reviews different modeling methods commonly used like informal modeling in natural language for an initial description.

Uploaded by

erfan soltani
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views53 pages

Modeling

The document discusses modeling systems and defining their characteristics. It begins with an introduction on how modeling is used in the early stages of system design to gain information and perform initial analysis. It then defines what a model is and provides examples of characteristics of modeling languages like hierarchical description, support for parallelism, and behavior over time. Finally, it reviews different modeling methods commonly used like informal modeling in natural language for an initial description.

Uploaded by

erfan soltani
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 53

‫ﺳﻴﺴﺘﻢ ﻫﺎي ﺗﻌﺒﻴﻪ ﺷﺪه‬

‫داﻧﺸﮕﺎه ﺻﻨﻌﺘﻲ اﺻﻔﻬﺎن‬


‫داﻧﺸﻜﺪه ﻣﻬﻨﺪﺳﻲ ﺑﺮق و ﻛﺎﻣﭙﻴﻮﺗﺮ‬
‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬
‫ﭘﺎﻳﻴﺰ ‪1402‬‬
‫ﺗﻌﻴﻴﻦ وﻳﮋﮔﻲ ﻫﺎ و ﻣﺪل ﺳﺎزي‬
‫ﺳﺮﻓﺼﻞ ﻣﻄﺎﻟﺐ‬

‫• ﻣﻘﺪﻣﻪ‬
‫• ﺗﻌﺮﻳﻒ ﻣﺪل‬
‫• وﻳﮋﮔﻲ ﻫﺎي زﺑﺎن ﻫﺎي ﺗﻮﺻﻴﻒ ﻣﺪل‬
‫• ﻣﺮوري ﺑﺮ روش ﻫﺎي ﻣﺪل ﺳﺎزي ﻣﺘﻔﺎوت‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪3‬‬


‫ﻣﻘﺪﻣﻪ‬

‫• ﻧﺨﺴﺘﻴﻦ ﻣﺮاﺣﻞ ﻃﺮاﺣﻲ ﻳﻚ ﺳﻴﺴﺘﻢ ﺑﺎ ﺗﻌﻴﻴﻦ وﻳﮋﮔﻲ ﻫﺎ و اﻳﺠﺎد ﻳﻚ ﻣﺪل ﺑﺮاي‬


‫ﺳﻴﺴﺘﻢ آﻏﺎز ﻣﻲ ﮔﺮدد‪.‬‬

‫• ﻫﺪف اﻳﻦ ﻣﺮﺣﻠﻪ ﻛﺴﺐ ﺳﺮﻳﻊ اﻃﻼﻋﺎت و ﺗﺤﻠﻴﻞ اوﻟﻴﻪ ﺳﻴﺴﺘﻢ ﺟﻬﺖ ﺷﺮوع‬
‫ﻃﺮاﺣﻲ اﺳﺖ‪.‬‬

‫• اﻟﺒﺘﻪ ﻣﺪل ﺳﺎزي در اداﻣﻪ ﻃﺮاﺣﻲ و در ﻣﺮاﺣﻞ دﻳﮕﺮ ﻧﻴﺰ اﺳﺘﻔﺎده ﻣﻲ ﮔﺮدد‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪4‬‬


‫ﺗﻌﺮﻳﻒ ﻣﺪل‬

‫• ﻳﻚ ﻣﺪل در ﺣﻘﻴﻘﺖ ﺳﺎده ﺷﺪه ﻳﻚ ﻣﻮﺟﻮدﻳﺖ ﻓﻴﺰﻳﻜﻲ ﻳﺎ ﻳﻚ ﻣﺪل دﻳﮕﺮ اﺳﺖ‬


‫ﻛﻪ ﺗﻨﻬﺎ رﻓﺘﺎرﻫﺎ و وﻳﮋﮔﻲ ﻫﺎي ﻣﻮﺛﺮ آن ﻣﻮﺟﻮدﻳﺖ ‪ /‬ﻣﺪل را ﺑﺮاي ﻳﻚ ﻫﺪف ﺧﺎص‬
‫در ﺑﺮ ﻣﻲ ﮔﻴﺮد‪.‬‬

‫• ﻳﻚ ﻣﺪل ﻣﻴﻨﻴﻤﺎل اﺳﺖ اﮔﺮ ﻫﺮ ﮔﻮﻧﻪ رﻓﺘﺎر ﻳﺎ وﻳﮋﮔﻲ ﻏﻴﺮﻣﺮﺗﺒﻂ ﻣﻮﺟﻮدﻳﺖ اﺻﻠﻲ‬
‫را ﺷﺎﻣﻞ ﻧﺸﻮد‪.‬‬

‫• ﻣﺪل ﻫﺎ ﺑﺎ اﺳﺘﻔﺎده از زﺑﺎن ﻫﺎي ﻣﺨﺘﻠﻒ ﺗﻮﺻﻴﻒ ﻣﻲ ﺷﻮﻧﺪ‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪5‬‬


‫وﻳﮋﮔﻲ ﻫﺎي زﺑﺎن ﻫﺎي ﺗﻮﺻﻴﻒ ﻣﺪل‬

‫• ﺗﻮﺻﻴﻒ ﺳﻠﺴﻠﻪ ﻣﺮاﺗﺒﻲ )ﺗﺠﺮﻳﺪ(‬


‫• رﻓﺘﺎري‬
‫• ﺳﺎﺧﺘﺎري‬

‫• اﻣﻜﺎن ﺗﺮﻛﻴﺐ ﻣﺪل اﺟﺰاء ﻛﻮﭼﻜﺘﺮ‬

‫• ﭘﺸﺘﻴﺒﺎﻧﻲ از ﺗﻮازي‬

‫• در ﺑﺮ ﮔﺮﻓﺘﻦ رﻓﺘﺎر ﺳﻴﺴﺘﻢ در ﻃﻮل زﻣﺎن‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪6‬‬


‫وﻳﮋﮔﻲ ﻫﺎي زﺑﺎن ﻫﺎي ﺗﻮﺻﻴﻒ ﻣﺪل )اداﻣﻪ(‬

‫• ﺗﻮﺻﻴﻒ ﺑﺎ اﺳﺘﻔﺎده از ﻣﺎﺷﻴﻦ ﺣﺎﻟﺖ‬

‫• ﺗﻮﺻﻴﻒ ﺳﻴﺴﺘﻢ ﻫﺎي روﻳﺪادﮔﺮا‬

‫• ﭘﺸﺘﻴﺒﺎﻧﻲ از اﺳﺘﺜﻨﺎﺋﺎت‬

‫• ﺑﻪ ﻛﺎرﮔﻴﺮي زﺑﺎن ﻫﺎي ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﻲ ﺑﺮاي ﺗﻮﺻﻴﻒ روال ﻫﺎي ﭘﺮدازﺷﻲ‬

‫• ﻗﺎﺑﻠﻴﺖ اﺟﺮا‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪7‬‬


‫وﻳﮋﮔﻲ ﻫﺎي زﺑﺎن ﻫﺎي ﺗﻮﺻﻴﻒ ﻣﺪل )اداﻣﻪ(‬

‫• ﺧﺎص ﻣﻨﻈﻮره ﺑﻮدن‬

‫• ﺧﻮاﻧﺎ ﺑﻮدن‬

‫• ﻗﺎﺑﻠﻴﺖ اﻧﻌﻄﺎف و اﻧﺘﻘﺎل‬

‫• ﭘﺎﻳﺎن ﭘﺬﻳﺮي‬

‫• ﻗﺎﺑﻠﻴﺖ ﺗﻮﺻﻴﻒ اﻧﻮاع ورودي‪/‬ﺧﺮوﺟﻲ‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪8‬‬


‫وﻳﮋﮔﻲ ﻫﺎي زﺑﺎن ﻫﺎي ﺗﻮﺻﻴﻒ ﻣﺪل )اداﻣﻪ(‬

‫• ﻗﺎﺑﻠﻴﺖ ﺗﻮﺻﻴﻒ ﭘﺎراﻣﺘﺮﻫﺎي اﻣﻨﻴﺘﻲ و اﻳﻤﻨﻲ و اﺳﺘﺨﺮاج ﭘﺎراﻣﺘﺮﻫﺎي اﺗﻜﺎﭘﺬﻳﺮي‬

‫• اﻣﻜﺎن ﺑﻬﻴﻨﻪ ﺳﺎزي‬

‫• ﻳﻚ زﺑﺎن ﻧﻤﻲ ﺗﻮاﻧﺪ ﻫﻤﻪ اﻳﻦ وﻳﮋﮔﻲ ﻫﺎ را ﻳﻚ ﺟﺎ اراﺋﻪ دﻫﺪ‪ .‬ﻟﺬا ﻋﻤﻮﻣﺎً‬
‫ﺑﺎﻳﺴﺘﻲ از ﺗﺮﻛﻴﺐ آن ﻫﺎ ﺟﻬﺖ ﺗﻮﺻﻴﻒ ﻳﻚ ﺳﻴﺴﺘﻢ اﺳﺘﻔﺎده ﺷﻮد‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪9‬‬


‫ﻣﺪل ﻣﻮرد ﻛﺎرﺑﺮد‬

‫• ﺗﻌﻴﻴﻦ وﻳﮋﮔﻲ ﻫﺎ و ﻋﻤﻠﻜﺮد ﻛﻠﻲ ﺳﺎﻣﺎﻧﻪ ﺗﻮﺳﻂ ﻳﻚ زﺑﺎن ﻣﺤﺎوره و ﻏﻴﺮ رﺳﻤﻲ ﺑﻪ‬
‫ﻣﻨﻈﻮر دﺳﺘﻴﺎﺑﻲ ﺑﻪ ﻳﻚ ﺗﻮﺻﻴﻒ اوﻟﻴﻪ‬

‫• ﺗﻤﺮﻛﺰ ﺑﺮ روي ﻛﺎرﺑﺮدﻫﺎي ﺳﺎﻣﺎﻧﻪ‬

‫• اﺳﺘﺎﻧﺪارد ‪UML‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪10‬‬


‫ﻣﺜﺎل‬

‫• ﻣﻨﺸﻲ ﺗﻠﻔﻨﻲ‬
‫ﭘﺨﺶ ﭘﻴﺎم ﺑﻌﺪي‬

‫ﭘﺎك ﻛﺮدن ﭘﻴﺎم آﺧﺮ‬

‫ﭘﺎك ﻛﺮدن ﻫﻤﻪ ﭘﻴﺎم ﻫﺎ‬

‫ﻓﻌﺎل ﻛﺮدن ﺳﺎﻣﺎﻧﻪ‬

‫ﻏﻴﺮﻓﻌﺎل ﻛﺮدن ﺳﺎﻣﺎﻧﻪ‬


‫ﻛﺎرﺑﺮ‬ ‫ﺗﻤﺎس ﮔﻴﺮﻧﺪه‬
‫ﭘﻴﺎم ﺧﻮش‬
‫آﻣﺪ‪/‬ﺑﻮق‪/‬ﺿﺒﻂ ﭘﻴﺎم‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪11‬‬


‫ﻧﻤﻮدار ﺗﻮاﻟﻲ‬

‫• ﺗﻮاﻟﻲ ﺑﻴﻦ اﺟﺰاء و ﻋﻤﻠﻜﺮدﻫﺎ را ﺗﻮﺻﻴﻒ ﻣﻲ ﻧﻤﺎﻳﺪ‪.‬‬

‫• ﺗﺒﺎدل ﭘﻴﺎم ﻫﺎ ﺑﻴﻦ اﺟﺰاء ﻣﺨﺘﻠﻒ را ﻧﻤﺎﻳﺶ ﻣﻲ دﻫﺪ‪.‬‬

‫• ﺗﺎ ﺣﺪي رﻓﺘﺎر ﺳﻴﺴﺘﻢ را ﻣﺪل ﻣﻲ ﻧﻤﺎﻳﺪ‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪12‬‬


‫ﻣﺜﺎل‬

‫• ﻣﻨﺸﻲ ﺗﻠﻔﻨﻲ‬
‫ﺗﻤﺎس ﮔﻴﺮﻧﺪه‬ ‫ﺗﻠﻔﻦ‬ ‫ﻣﻨﺸﻲ ﺗﻠﻔﻨﻲ‬

‫ﺷﻤﺎره ﮔﻴﺮي‬
‫زﻧﮓ‬

‫اﻧﺘﻈﺎر‬
‫ﺑﺮداﺷﺘﻦ ﮔﻮﺷﻲ‬
‫ﭘﺨﺶ ﭘﻴﺎم ﺧﻮش آﻣﺪ‬
‫ﭘﺨﺶ ﭘﻴﺎم ﺧﻮش آﻣﺪ‬
‫ﺑﻮق ﺷﺮوع‬
‫ﺑﻮق ﺷﺮوع‬
‫ارﺳﺎل ﭘﻴﺎم ﺻﻮﺗﻲ‬
‫درﻳﺎﻓﺖ و ﺿﺒﻂ ﭘﻴﺎم ﺻﻮﺗﻲ‬
‫ﮔﺬاﺷﺘﻦ ﮔﻮﺷﻲ‬
‫ﭘﺎﻳﺎن ﺿﺒﻂ‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪13‬‬


‫ﻧﻤﻮدار زﻣﺎن‪/‬ﻓﺎﺻﻠﻪ‬

‫• ﻳﻚ ﻧﻮع ﭘﺮ ﻛﺎرﺑﺮد از ﻧﻤﻮدار ﺗﻮاﻟﻲ اﺳﺖ‪.‬‬

‫• ﻣﺤﻮر ﻋﻤﻮدي زﻣﺎن واﻗﻌﻲ و ﻣﺤﻮر اﻓﻘﻲ ارﺗﺒﺎط اﺟﺰاء را ﺑﻪ ﻫﻤﺮاه ﻓﺎﺻﻠﻪ آن ﻫﺎ‬
‫ﻧﺴﺒﺖ ﺑﻪ ﻫﻢ ﻧﻤﺎﻳﺶ ﻣﻲ دﻫﺪ‪.‬‬

‫• ﺑﺮاي ﺑﺮﻧﺎﻣﻪ رﻳﺰي ﺣﺮﻛﺖ ﻗﻄﺎرﻫﺎ و اﺗﻮﺑﻮس ﻫﺎ ﻛﺎرﺑﺮد دارد‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪14‬‬


‫ﻣﺜﺎل‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪15‬‬


‫ﻣﺪل ﺳﺎزي ﻣﺤﺎﺳﺒﺎت‬

‫• از دو ﺑﺨﺶ ﺗﺸﻜﻴﻞ ﻣﻲ ﺷﻮد‪:‬‬

‫• اﺟﺰاء ﻣﺤﺎﺳﺒﺎﺗﻲ‬

‫• ارﺗﺒﺎﻃﺎت ﺑﻴﻦ اﺟﺰاء‬

‫• ﻋﻤﻮﻣﺎً از ﻳﻚ ﮔﺮاف ﺑﺮاي ﺗﻮﺻﻴﻒ اﻳﻦ ﻣﺪل ﻫﺎ اﺳﺘﻔﺎده ﻣﻲ ﺷﻮد‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪16‬‬


‫ﮔﺮاف وﻇﻴﻔﻪ‬

‫• ﻳﻚ ﮔﺮاف ﺟﻬﺖ دار‪:‬‬

‫ﺑﻼﻓﺎﺻﻠﻪ‬ ‫ﻧﺸﺎن دﻫﻨﺪه اﻳﻦ اﺳﺖ ﻛﻪ اﺟﺮاي وﻇﻴﻔﻪ‬ ‫• ﻳﻚ ﻳﺎل‬


‫ﺷﺮوع ﺧﻮاﻫﺪ ﺷﺪ‪.‬‬ ‫ﭘﺲ از اﺗﻤﺎم وﻇﻴﻔﻪ‬

‫ﮔﻮﻳﻨﺪ‪.‬‬ ‫را ﻣﻮﺧﺮ ﺑﻼﻓﺼﻞ‬ ‫و ﺑﻪ ﻫﻤﻴﻦ ﺻﻮرت‬ ‫را ﻣﻘﺪم ﺑﻼﻓﺼﻞ‬ ‫•‬

‫را ﻣﻘﺪم‬ ‫ﺑﺎﺷﺪ‪،‬‬ ‫و‬ ‫• اﮔﺮ در ﮔﺮاف ﻳﻚ ﻣﺴﻴﺮ ﺑﺎ ﻃﻮل ﺑﻴﺶ از ﻳﻚ ﺑﻴﻦ‬
‫و ﺑﻪ ﻫﻤﻴﻦ ﺻﻮرت را ﻣﻮﺧﺮ ﮔﻮﻳﻨﺪ‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪17‬‬


‫ﻣﺜﺎل‬

‫𝜏‬

‫𝜏‬ ‫𝜏‬

‫𝜏‬ ‫𝜏‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪18‬‬


‫وﻳﮋﮔﻲ ﻫﺎي ﮔﺮاف وﻇﻴﻔﻪ‬

‫• ﺗﻮﺻﻴﻒ ﻣﺤﺪودﻳﺖ ﻫﺎي زﻣﺎﻧﻲ‬

‫]‪(2,10‬‬ ‫]‪(1,12‬‬ ‫]‪(4,9‬‬ ‫]‪(0,20‬‬

‫𝜏‬ ‫𝜏‬ ‫𝜏‬ ‫𝜏‬

‫𝜏‬ ‫𝜏‬ ‫𝜏‬


‫]‪(0,7‬‬ ‫]‪(1,8‬‬ ‫]‪(6,21‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪19‬‬


‫وﻳﮋﮔﻲ ﻫﺎي ﮔﺮاف وﻇﻴﻔﻪ )اداﻣﻪ(‬

‫• ﭘﺸﺘﻴﺎﻧﻲ از اﻧﻮاع ﻣﺨﺘﻠﻒ ارﺗﺒﺎﻃﺎت‬


‫• ﺗﻘﺪم اﺟﺮا‬
‫• ﺗﺒﺎدل داده‬
‫• ورودي‪/‬ﺧﺮوﺟﻲ ﺳﻴﺴﺘﻢ‬

‫𝜏‬

‫𝜏‬ ‫𝜏‬

‫𝜏‬ ‫𝜏‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪20‬‬


‫وﻳﮋﮔﻲ ﻫﺎي ﮔﺮاف وﻇﻴﻔﻪ )اداﻣﻪ(‬

‫• دﺳﺘﺮﺳﻲ اﻧﺤﺼﺎري ﺑﻪ ﻣﻨﺎﺑﻊ‬

‫• ﭘﺸﺘﻴﺒﺎﻧﻲ از وﻇﺎﻳﻒ ﺑﺎ اﺟﺮاي ﻣﺘﻨﺎوب‬

‫• ﮔﺮه ﻫﺎي ﺳﻠﺴﻠﻪ ﻣﺮاﺗﺒﻲ‬


‫𝜏‬

‫𝜏‬ ‫𝜏‬

‫𝜏‬ ‫𝜏‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪21‬‬


‫اﻧﻮاع ﺗﻮﺻﻴﻒ اﺟﺰاء در ﻣﺪل ﺳﺎزي ﻣﺤﺎﺳﺒﺎت‬

‫• ﻣﻌﺎدﻻت دﻳﻔﺮاﻧﺴﻴﻞ‪Modelica, Simulink, VHDL-AMS :‬‬

‫• ﻣﺎﺷﻴﻦ ﺣﺎﻟﺖ ﻣﺘﻨﺎﻫﻲ‬

‫• ﺟﺮﻳﺎن داده‪ :‬اﻟﮕﻮرﻳﺘﻢ ﻫﺎي ‪Scoreboarding and Tomasulo‬‬

‫• روﻳﺪادﻫﺎي ﮔﺴﺴﺘﻪ‪ :‬زﺑﺎن ﻫﺎي ‪HDL‬‬

‫• ‪Von-Neumann‬‬

‫• روش ﻫﺎي ﺗﺮﻛﻴﺒﻲ‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪22‬‬


‫ﻣﻌﺎدﻻت دﻳﻔﺮاﻧﺴﻴﻞ‬

‫• اﺟﺰاء ﻓﻴﺰﻳﻜﻲ ﺳﻴﺴﺘﻢ ﺑﺎ ﻣﻌﺎدﻻت دﻳﻔﺮاﻧﺴﻴﻞ ﺗﻮﺻﻴﻒ ﻣﻲ ﺷﻮﻧﺪ‪.‬‬

‫• ﻃﺒﻴﻌﺘﺎً زﺑﺎن ﻣﻮرد اﺳﺘﻔﺎده ﺑﻪ ﺻﻮرت رواﺑﻂ رﻳﺎﺿﻲ اﺳﺖ‪.‬‬

‫• ارﺗﺒﺎط ﺑﻴﻦ اﺟﺰاء از ﻃﺮﻳﻖ ﻣﺘﻐﻴﺮﻫﺎي ﻣﺸﺘﺮك ﻣﺪل ﻣﻲ ﮔﺮدد‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪23‬‬


‫ﻣﺜﺎل‬

‫• ﺑﻪ زﻣﻴﻦ اﻓﺘﺎدن ﻳﻚ ﺗﻮپ از ارﺗﻔﺎع ‪h‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪24‬‬


(‫ﻣﺜﺎل )اداﻣﻪ‬
model StickyBall ‫ﻣﺪل ﺗﻮﺻﻴﻒ ﺷﺪه در ﻣﺤﻴﻂ ﻧﺮم اﻓﺰار ﻣﺪﻟﻴﻜﺎ‬
type Height = Real(unit ="m");
type Velocity = Real(unit = "m/s");
parameter Real s = 0.8 "Restitution";
parameter Height h0 = 1.0 "Initial hight";
constant Velocity eps = 1e-3 "small velocity";
Boolean stuck;
Height h;
Velocity v;
initial equation
v = 0;
h = h0;
stuck = false;
equation
v = der(h);
der(v) = if stuck then 0 else -9.81;
when h <= 0.0 then
stuck = abs(v) < eps;
reinit(v, if stuck then 0 else -s*v);
end when;
end StickyBall;

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ 25
‫ﻣﺎﺷﻴﻦ ﺣﺎﻟﺖ ﻣﺘﻨﺎﻫﻲ‬
‫• ﻣﺎﺷﻴﻦ ﺣﺎﻟﺖ ﻗﻄﻌﻲ‪ :‬در ﻫﺮ ﻟﺤﻈﻪ ﻳﻚ ﺣﺎﻟﺖ ﻓﻌﺎل اﺳﺖ‪.‬‬

‫• ﻣﺎﺷﻴﻦ ﺣﺎﻟﺖ ﺳﻨﻜﺮون‪ :‬ﺗﻐﻴﻴﺮ ﺣﺎﻟﺖ ﺗﻨﻬﺎ در ﻟﺒﻪ ﭘﺎﻟﺲ ﺳﺎﻋﺖ رخ ﻣﻲ دﻫﺪ‪.‬‬

‫• ﻣﺎﺷﻴﻦ ﺣﺎﻟﺖ ﻣﻲ ﺗﻮاﻧﺪ ﺑﻪ ﺗﻌﺪاد ﻻزم ﺧﺮوﺟﻲ داﺷﺘﻪ ﺑﺎﺷﺪ‪.‬‬

‫• ﻗﺎﻟﺐ ﻛﻠﻲ ﺑﺮﭼﺴﺐ ﻳﺎل ﻫﺎ‪event[condition]/reaction :‬‬

‫‪f‬‬
‫‪g‬‬ ‫‪h‬‬ ‫‪i‬‬ ‫‪j‬‬
‫‪A‬‬ ‫‪B‬‬ ‫‪C‬‬ ‫‪D‬‬ ‫‪E‬‬
‫‪k‬‬ ‫‪k‬‬ ‫‪k‬‬ ‫‪k‬‬
‫‪k‬‬
‫‪m‬‬
‫‪Z‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪26‬‬


‫ﻣﺎﺷﻴﻦ ﺣﺎﻟﺖ زﻣﺎن دار‬
‫• اﻃﻼﻋﺎت زﻣﺎﻧﻲ را ﻧﻴﺰ در ﺑﺮ ﻣﻲ ﮔﻴﺮد‪.‬‬
‫ﮔﺬاﺷﺘﻦ‬
‫ﺑﺮداﺷﺘﻦ‬ ‫ﮔﻮﺷﻲ‬
‫ﮔﻮﺷﻲ‬ ‫ﻣﻜﺎﻟﻤﻪ‬ ‫ﭘﺎﻳﺎن‬
‫‪x<5‬‬

‫ﺷﺮوع‬ ‫اﻧﺘﻈﺎر‬ ‫‪y>=1‬‬


‫زﻧﮓ‬ ‫‪y<2‬‬ ‫‪x<9‬‬
‫‪x=0‬‬
‫‪x>=4‬‬ ‫ﺧﻮش‬
‫ﺑﻮق‬
‫ﺿﺒﻂ‬ ‫‪x>=8‬‬ ‫ﺑﻮق‬
‫آﻣﺪ‬ ‫ﭘﻴﺎم‬ ‫‪y=0‬‬
‫ﭘﺎﻳﺎن‬ ‫‪y>=1‬‬
‫ﺳﻜﻮت‬ ‫‪y<2‬‬
‫ﺧﻮش آﻣﺪ‬ ‫‪x=0‬‬
‫‪y=0‬‬
‫‪y=0‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪27‬‬


‫ﻧﻤﻮدار ﺣﺎﻟﺖ‬
‫• ﻣﻲ ﺗﻮاﻧﺪ ﺳﻠﺴﻠﻪ ﻣﺮاﺗﺐ را ﻧﻤﺎﻳﺶ دﻫﻨﺪ‪.‬‬

‫‪S‬‬

‫‪f‬‬
‫‪g‬‬ ‫‪h‬‬ ‫‪i‬‬ ‫‪j‬‬
‫‪A‬‬ ‫‪B‬‬ ‫‪C‬‬ ‫‪D‬‬ ‫‪E‬‬

‫‪k‬‬
‫‪m‬‬
‫‪Z‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪28‬‬


‫ﻧﻤﻮدار ﺣﺎﻟﺖ )اداﻣﻪ(‬

‫• ﻣﻲ ﺗﻮان درون ﻳﻚ ﺣﺎﻟﺖ ﺳﻄﺢ ﺑﺎﻻ‪ ،‬ﻳﻚ زﻳﺮ ﺣﺎﻟﺖ ﭘﻴﺶ ﻓﺮض ﺗﻌﻴﻴﻦ ﻧﻤﻮد‪.‬‬

‫‪S‬‬

‫‪f‬‬
‫‪g‬‬ ‫‪h‬‬ ‫‪i‬‬ ‫‪j‬‬
‫‪A‬‬ ‫‪B‬‬ ‫‪C‬‬ ‫‪D‬‬ ‫‪E‬‬

‫‪k‬‬
‫‪m‬‬
‫‪Z‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪29‬‬


‫ﻧﻤﻮدار ﺣﺎﻟﺖ )اداﻣﻪ(‬

‫• اﻣﻜﺎن ﻧﮕﻪ داري ﺗﺎرﻳﺨﭽﻪ )ﺣﺎﻟﺖ ﻗﺒﻠﻲ ﭘﻴﺶ از ﺗﺮك ﺣﺎﻟﺖ ﺳﻄﺢ ﺑﺎﻻ( وﺟﻮد دارد‪.‬‬

‫‪S‬‬

‫‪f‬‬
‫‪g‬‬ ‫‪h‬‬ ‫‪i‬‬ ‫‪j‬‬
‫‪A‬‬ ‫‪B‬‬ ‫‪C‬‬ ‫‪D‬‬ ‫‪E‬‬
‫‪H‬‬
‫‪k‬‬
‫‪m‬‬
‫‪Z‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪30‬‬


‫ﻧﻤﻮدار ﺣﺎﻟﺖ )اداﻣﻪ(‬

‫• ﻣﻲ ﺗﻮان ﻓﺮاﻳﻨﺪﻫﺎي ﻫﻤﺰﻣﺎن را ﻧﻴﺰ ﻣﺪﻟﺴﺎزي ﻛﺮد‪.‬‬


‫ﻣﻨﺸﻲ ﺗﻠﻔﻨﻲ‬
‫روﺷﻦ‬
‫ﺑﺮرﺳﻲ وﺿﻌﻴﺖ ﺧﻂ‬ ‫ﺑﺮرﺳﻲ ﻓﺸﺮدن ﻛﻠﻴﺪ‬
‫زﻧﮓ‬ ‫ﻓﺸﺮدن ﻛﻠﻴﺪ‬

‫ﺑﺮﻗﺮاري‬ ‫ﻋﻜﺲ اﻟﻌﻤﻞ‬


‫اﻧﺘﻈﺎر‬ ‫اﻧﺘﻈﺎر‬
‫ﺗﻤﺎس‬ ‫ﻣﻨﺎﺳﺐ‬

‫ﻗﻄﻊ ﺗﻤﺎس‬ ‫ﭘﺎﻳﺎن ﻛﺎر‬

‫ﻛﻠﻴﺪ روﺷﻦ‬ ‫ﻛﻠﻴﺪ ﺧﺎﻣﻮش‬

‫ﺧﺎﻣﻮش‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪31‬‬


‫ﻧﻤﻮدار ﺣﺎﻟﺖ )اداﻣﻪ(‬

‫• ﺑﺮاي اﻧﺘﻈﺎر از ﻣﺪل ﺗﺎﻳﻤﺮ اﺳﺘﻔﺎده ﻣﻲ ﺷﻮد‪.‬‬

‫‪a‬‬ ‫‪timeout‬‬
‫‪20ms‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪32‬‬


‫ﻧﻤﻮدار ﺣﺎﻟﺖ )اداﻣﻪ(‬

‫• اﻧﺘﺴﺎب ﻣﻘﺎدﻳﺮ ﺑﻪ ﻣﺘﻐﻴﺮﻫﺎي ﻣﺸﺘﺮك ﺑﻪ ﺻﻮرت ﻫﻤﺰﻣﺎن اﻧﺠﺎم ﻣﻲ ﺷﻮد‪.‬‬

‫‪swap‬‬

‫‪e/a=b‬‬ ‫‪e/b=a‬‬

‫ﺑﺮاي ﺳﻴﺴﺘﻢ ﻫﺎي ﮔﺴﺘﺮده از زﺑﺎن ﻫﺎي ﺳﻨﻜﺮون اﺳﺘﻔﺎده ﻣﻲ ﺷﻮد ﻛﻪ در آن ﻛﻞ‬
‫ﻣﺠﻤﻮﻋﻪ ﻳﻚ ﭘﺎﻟﺲ ﺳﺎﻋﺖ واﺣﺪ دارد‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪33‬‬


‫ﻧﻤﻮدار ﺣﺎﻟﺖ )اداﻣﻪ(‬

‫• ﺳﻴﺴﺘﻢ ﻣﻌﻠﻮم ﺷﻤﺮده ﻣﻲ ﺷﻮد اﮔﺮ رﻓﺘﺎر آن از ﻗﺒﻞ ﻣﺸﺨﺺ ﺑﺎﺷﺪ‪.‬‬

‫‪A‬‬

‫‪A‬‬ ‫‪x<20‬‬ ‫‪x>10‬‬

‫• ﻣﻲ ﺗﻮان از اوﻟﻮﻳﺖ ﺑﺮاي دﺳﺘﻴﺎﺑﻲ ﺑﻪ وﻳﮋﮔﻲ ﻣﻌﻠﻮم ﺑﻮدن ﺑﻬﺮه ﺑﺮد‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪34‬‬


‫ارﺳﺎل ﭘﻴﺎم‬
‫• ﺑﺮاي ﺗﻮﺻﻴﻒ ﺳﻴﺴﺘﻢ ﻫﺎي ﺗﻮزﻳﻊ ﺷﺪه و ﺑﻪ ﺟﺎي ﻣﻜﺎﻧﻴﺰم ﺣﺎﻓﻈﻪ ﻣﺸﺘﺮك ﺑﻪ ﻛﺎر ﻣﻲ رود‪.‬‬

‫• زﺑﺎن ‪ SDL‬ﻳﻚ ﻧﻤﻮﻧﻪ از ﻣﺪﻟﺴﺎزي ﺑﻪ اﻳﻦ روش اﺳﺖ‪.‬‬

‫ﺷﺮوع ﻓﺮاﻳﻨﺪ‬ ‫ﺣﺎﻟﺖ‬

‫ورودي‬ ‫ﺧﺮوﺟﻲ‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪35‬‬


‫ﻣﺜﺎل‬

f/v
g/w h/x i/y j/z
A B C D E

P1

A B C D E
g h i j f k
w x y z v
B C D E A A

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ 36
‫ﻣﺜﺎل دﻳﮕﺮ‬

P1
Timer T
A B C D E
g h i j f T
w x y Set T v
B C D E Reset T

A A

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ 37
‫ارﺳﺎل ﭘﻴﺎم )اداﻣﻪ(‬

‫• ﺑﺮاي ﻫﺮ ﻓﺮاﻳﻨﺪ ﻳﻚ ﺻﻒ در ﻧﻈﺮ ﮔﺮﻓﺘﻪ ﻣﻲ ﺷﻮد ﻛﻪ ﭘﻴﺎم ﻫﺎي درﻳﺎﻓﺘﻲ از ﺳﺎﻳﺮ ﻓﺮاﻳﻨﺪﻫﺎ را‬
‫درون ﺧﻮد ذﺧﻴﺮه ﻣﻲ ﻛﻨﺪ‪.‬‬

‫‪P3‬‬

‫‪FIFO‬‬
‫‪FIFO‬‬
‫‪P1‬‬

‫‪FIFO‬‬
‫‪P2‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪38‬‬


‫ﻣﺪل ﺟﺮﻳﺎن داده‬
‫• ﭘﺮ ﻛﺎرﺑﺮدﺗﺮﻳﻦ ﻣﺪل ﺑﺮاي ﺗﻮﺻﻴﻒ ﺳﻴﺴﺘﻢ ﻫﺎي واﻗﻌﻲ اﺳﺖ‪.‬‬

‫• ﻧﻤﺎﻳﺶ دﻫﻨﺪه ﭼﮕﻮﻧﮕﻲ ﺣﺮﻛﺖ داده ﺑﻴﻦ واﺣﺪﻫﺎي ﭘﺮدازﺷﻲ ﻣﺨﺘﻠﻒ اﺳﺖ‪.‬‬

‫• زﺑﺎن اﺻﻠﻲ ﺑﺮاي ﺗﻮﺻﻴﻒ اﻳﻦ ﻣﺪل ﻧﻴﺰ ﮔﺮاف ﺟﻬﺖ دار اﺳﺖ‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪39‬‬


‫ﻣﺜﺎل‬
‫• ﺳﺎﻣﺎﻧﻪ ‪VoD‬‬

‫ﺻﻒ درﺧﻮاﺳﺖ‬
‫ﻣﺠﻮز ﭘﺬﻳﺮش‬
‫ﻫﺎي ﻣﺸﺘﺮﻳﺎن‬
‫ﻟﻴﺴﺖ ﻣﺸﺘﺮﻳﺎن‬
‫درﺧﻮاﺳﺖ‬
‫زﻣﺎن ﺑﻨﺪي اﺟﺮاي‬ ‫دﺳﺘﻮرات‬
‫درﺧﻮاﺳﺖ ﻫﺎ‬

‫آدرس ﺷﺒﻜﻪ‬

‫ﺳﻴﺴﺘﻢ ﻓﺎﻳﻞ‬

‫درﺧﻮاﺳﺖ‬
‫ﻛﻨﺘﺮل ﺣﺎﻓﻈﻪ‬ ‫وﻳﺪﺋﻮ‬
‫دﻳﺴﻚ‬ ‫واﺳﻂ ﺷﺒﻜﻪ‬
‫ﺟﺎﻧﺒﻲ‬
‫وﻳﺪﺋﻮ‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪40‬‬


‫ﺷﺒﻜﻪ ﻓﺮاﻳﻨﺪ ‪Kahn‬‬
‫• ﻳﻚ ﻣﺪل ﺟﺮﻳﺎن داده را ﺑﺎ اﻟﺰاﻣﺎت زﻳﺮ ﺗﻌﻴﻴﻦ ﻣﻲ ﻛﻨﺪ‪:‬‬

‫ارﺳﺎل اﻃﻼﻋﺎت ﺑﻴﻦ ﻓﺮاﻳﻨﺪﻫﺎ در زﻣﺎن ﻣﺤﺪود اﻧﺠﺎم ﻣﻲ ﺷﻮد‪.‬‬ ‫•‬


‫ارﺳﺎل ﭘﻴﺎم آﺳﻨﻜﺮون اﺳﺖ‪.‬‬ ‫•‬
‫ﮔﺮه ﻫﺎي ﭘﺮدازﺷﻲ در ﻫﺮ ﻟﺤﻈﻪ ﻓﻘﻂ از ﻳﻚ ﻛﺎﻧﺎل ورودي داده درﻳﺎﻓﺖ ﻣﻲ ﻛﻨﻨﺪ‪.‬‬ ‫•‬
‫ﮔﺮه ﻗﺒﻞ از اﻳﻦ ﻛﻪ درﺧﻮاﺳﺖ ﺧﻮاﻧﺪن داده ﻧﺪاﺷﺘﻪ ﺑﺎﺷﺪ از وﺟﻮد داده در ﻛﺎﻧﺎل آﮔﺎه ﻧﺨﻮاﻫﺪ ﺷﺪ‪.‬‬ ‫•‬
‫اﮔﺮ در ﻣﻮﻗﻊ ارﺳﺎل درﺧﻮاﺳﺖ ﺧﻮاﻧﺪن داده ﺻﻒ ﺧﺎﻟﻲ ﺑﺎﺷﺪ‪ ،‬ﺻﺒﺮ ﻣﻲ ﻛﻨﺪ ﺗﺎ داده ﺟﺪﻳﺪ ﺑﺮﺳﺪ‪.‬‬ ‫•‬
‫در ﻫﺮ ﻟﺤﻈﻪ ﻓﻘﻂ ﻳﻚ ﮔﺮه ﻣﻲ ﺗﻮاﻧﺪ از ﻳﻚ ﺻﻒ ﺑﺨﻮاﻧﺪ و ﺗﻨﻬﺎ ﻳﻚ ﮔﺮه ﻣﻲ ﺗﻮاﻧﺪ در ﻳﻚ ﺻﻒ ﺑﻨﻮﻳﺴﺪ‪.‬‬ ‫•‬

‫• اﻳﻦ ﺷﺮاﻳﻂ ﺳﺒﺐ ﻣﻲ ﺷﻮد در ﻫﺮ ﺣﺎﻟﺖ اﻳﻦ ﻣﺪل رﻓﺘﺎر ﻣﺸﺨﺺ داﺷﺘﻪ ﺑﺎﺷﺪ )ﻣﻌﻠﻮم ﺑﺎﺷﺪ(‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪41‬‬


‫ﺟﺮﻳﺎن داده ﻫﻤﺰﻣﺎن‬
‫• ﺑﻪ ﻣﻨﻈﻮر ﺳﺎده ﺳﺎزي ﻓﺮاﻳﻨﺪ زﻣﺎن ﺑﻨﺪي‪ ،‬در ﻣﻮرد زﻣﺎن اﺟﺮا و ارﺳﺎل داده ﻫﺎ ﻣﺤﺪودﻳﺖ ﻫﺎﻳﻲ‬
‫را اﻋﻤﺎل ﻣﻲ ﻧﻤﺎﻳﺪ‪.‬‬

‫• ﺑﺮاي اﻳﻦ ﻛﺎر از ﻳﻚ ﺳﺮي ﺗﻮﻛﻦ اﺳﺘﻔﺎده ﻣﻲ ﻛﻨﺪ‪.‬‬

‫• ﺗﺎ زﻣﺎﻧﻲ ﻛﻪ ﺗﻮﻛﻦ ﺗﻌﻴﻴﻦ ﺷﺪه در ﺧﺮوﺟﻲ ﻫﻤﻪ ﻳﺎل ﻫﺎي ورودي ﻳﻚ ﮔﺮه ﻓﺮاﻫﻢ ﻧﺒﺎﺷﺪ اﺟﺮاي‬
‫ﭘﺮدازش ﻣﺮﺑﻮط ﺑﻪ آن ﮔﺮه ﺷﺮوع ﻧﻤﻲ ﺷﻮد‪.‬‬

‫• اﻳﻦ ﻛﺎر ﺳﺒﺐ ﺗﻌﻴﻴﻦ ﻣﻘﺪار ﻣﻮرد ﻧﻴﺎز ﺑﺮاي ﺻﻒ ﻫﺮ ارﺗﺒﺎط ﺑﻪ ﺻﻮرت ﻣﺘﻨﺎﻫﻲ ﻧﻴﺰ ﻣﻲ ﮔﺮدد‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪42‬‬


‫ﻣﺜﺎل‬

‫‪1‬‬

‫‪2‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪2‬‬


‫‪A‬‬ ‫‪B‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪43‬‬


‫ﺷﺒﻜﻪ ‪Petri‬‬
‫• ﺟﺮﻳﺎن ﻛﻨﺘﺮل در ﻳﻚ ﺳﻴﺴﺘﻢ ﺗﻮزﻳﻊ ﺷﺪه را ﺗﻮﺳﻂ ﻳﻚ ﮔﺮاف ﻧﻤﺎﻳﺶ ﻣﻲ دﻫﺪ‪.‬‬

‫• در اﻳﻦ ﮔﺮاف ﺷﺮاﻳﻂ‪ ،‬روﻳﺪادﻫﺎ و رواﺑﻂ ﺑﻴﻦ آن ﻫﺎ ﺗﻮﺻﻴﻒ ﻣﻲ ﺷﻮد‪.‬‬

‫• اﻧﻮاع ﻣﺨﺘﻠﻔﻲ دارد‪:‬‬


‫• ﺷﺒﻜﻪ ﺷﺮط‪/‬روﻳﺪاد‬
‫• ﺷﺒﻜﻪ ﻣﻜﺎن‪/‬اﻧﺘﻘﺎل‬
‫• ﺷﺒﻜﻪ ﮔﺰاره‪/‬اﻧﺘﻘﺎل‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪44‬‬


‫ﻣﺜﺎل‬
‫• ﺧﻂ آﻫﻦ دو ﻃﺮﻓﻪ‬
‫ورود ﻗﻄﺎر از ﺳﻤﺖ ﭼﭗ‬ ‫ﺧﺮوج ﻗﻄﺎر از ﺳﻤﺖ راﺳﺖ‬
‫ﻗﻄﺎر آﻣﺎده ﺣﺮﻛﺖ ﺑﻪ ﺳﻤﺖ راﺳﺖ‬ ‫ﺣﺮﻛﺖ ﻗﻄﺎر ﺑﻪ راﺳﺖ‬

‫آزاد ﺑﻮدن ﺧﻂ‬

‫ﺣﺮﻛﺖ ﻗﻄﺎر ﺑﻪ ﭼﭗ‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪45‬‬


‫زﺑﺎن ﻫﺎي ﻣﺒﺘﻨﻲ ﺑﺮ روﻳﺪادﻫﺎي ﮔﺴﺴﺘﻪ‬
‫• ﻓﺮاﻳﻨﺪ اﻳﺠﺎد و ﭘﺮدازش روﻳﺪادﻫﺎي ﻣﺨﺘﻠﻒ درون ﻳﻚ ﺳﻴﺴﺘﻢ در ﻃﻮل زﻣﺎن را ﺗﻮﺻﻴﻒ ﻣﻲ ﻧﻤﺎﻳﺪ‪.‬‬

‫• ﺑﺮاي اﻳﻦ ﻛﺎر از ﺻﻒ اﺳﺘﻔﺎده ﻣﻲ ﺷﻮد‪.‬‬

‫• روﻳﺪادﻫﺎ ﺑﻪ ﺗﺮﺗﻴﺐ زﻣﺎن وﻗﻮع درون ﺻﻒ ذﺧﻴﺮه ﻣﻲ ﺷﻮﻧﺪ‪.‬‬

‫• زﻣﺎن ﺑﻪ ﺟﻠﻮ رﻓﺘﻪ و ﺑﻪ ﻣﺤﺾ ﻓﺮا رﺳﻴﺪن زﻣﺎن ﻣﺮﺑﻮط ﺑﻪ روﻳﺪاد ﺳﺮ ﺻﻒ‪ ،‬آن روﻳﺪاد از ﺻﻒ‬
‫ﺧﺎرج ﺷﺪه و ﭘﺮدازش ﻣﻲ ﺷﻮد‪.‬‬

‫• زﻣﺎن ﻣﻲ ﺗﻮاﻧﺪ ﺑﻪ ﺻﻮرت ﭘﻴﻮﺳﺘﻪ و ﻳﺎ ﺑﺮ اﺳﺎس ﭘﺎﻟﺲ ﺳﺎﻋﺖ ﭘﻴﺶ ﺑﺮود‪.‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪46‬‬


‫زﺑﺎن ﻫﺎي ﻣﺒﺘﻨﻲ ﺑﺮ روﻳﺪادﻫﺎي ﮔﺴﺴﺘﻪ )اداﻣﻪ(‬

‫• ﻳﻚ ﺳﺮي زﺑﺎن ﺑﺎ ﮔﺮاﻣﺮ ﺧﺎص ﺑﺮاي اﻳﻦ ﻛﺎر ﻣﻌﺮﻓﻲ ﺷﺪﻧﺪ‪ Verilog :‬و ‪VHDL‬‬

‫• ﺗﺮﺟﻴﺢ ﺑﺮ اﻳﻦ اﺳﺖ ﻛﻪ از زﺑﺎن ﻫﺎي ﺷﻨﺎﺧﺘﻪ ﺷﺪه ﻣﺎﻧﻨﺪ ‪ C‬ﺑﺮاي اﻳﻦ ﻛﺎر اﺳﺘﻔﺎده ﺷﻮد‪:‬‬

‫ﻗﺎﺑﻠﻴﺖ ﻣﺪل ﻛﺮدن ﺗﻮازي‬ ‫•‬


‫ﺗﻌﻴﻴﻦ زﻣﺎن دﻗﻴﻖ روﻳﺪادﻫﺎ و ﭘﺮدازش ﻫﺎ‬ ‫•‬
‫ﭘﺸﺘﻴﺒﺎﻧﻲ از ﻣﻨﻄﻖ ﭼﻨﺪ ﺳﻄﺤﻲ ﺑﻪ ﺟﺎي ﺑﺎﻳﻨﺮي‬ ‫•‬
‫ﺗﺤﻘﻖ وﻳﮋﮔﻲ ﻣﻌﻠﻮم ﺑﻮدن‬ ‫•‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪47‬‬


‫ﺳﻄﻮح ﻣﺨﺘﻠﻒ ﻣﺪل ﺳﺎزي ﺳﺨﺖ اﻓﺰار‬

‫ﺳﻴﺴﺘﻢ‬
‫رﻓﺘﺎر )اﻟﮕﻮرﻳﺘﻢ(‬
‫ﻣﺠﻤﻮﻋﻪ دﺳﺘﻮرات‬
‫اﻧﺘﻘﺎل ﺛﺒﺎت‬
‫دروازه ﻫﺎي ﻣﻨﻄﻘﻲ‬
‫ﺳﻮﻳﻴﭻ )ﺗﺮاﻧﺰﻳﺴﺘﻮر(‬
‫ﻣﺪار‬
‫ﻃﺮح ﺟﺎﻧﻤﺎﻳﻲ‬
‫ﻓﺮاﻳﻨﺪ ﺳﺎﺧﺖ‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪48‬‬


‫زﺑﺎن ﻫﺎي ‪Von-Neumann‬‬
‫• ﺗﻮاﻟﻲ اﺟﺮا و ﻛﻨﺘﺮل ﺻﺮﻳﺢ از وﻳﮋﮔﻲ ﻫﺎي اﻳﻦ دﺳﺘﻪ از زﺑﺎن ﻫﺎ اﺳﺖ‪.‬‬

‫• ﺳﺎﻳﺮ وﻳﮋﮔﻲ ﻫﺎي اﻳﻦ زﺑﺎن ﻫﺎ ﻋﺒﺎرﺗﻨﺪ از‪:‬‬


‫دﺳﺘﺮﺳﻲ روال ﻫﺎ ﺑﻪ ﻣﺘﻐﻴﺮﻫﺎي ﺳﺮاﺳﺮي‬ ‫•‬
‫اﻣﻜﺎن ﺗﺒﺎدل داده ﺑﻴﻦ روال ﻫﺎي ﻣﺨﺘﻠﻒ ﺗﻮﺳﻂ ﺗﻮاﺑﻊ از ﭘﻴﺶ ﺗﻌﻴﻴﻦ ﺷﺪه‬ ‫•‬
‫ﻗﺎﺑﻠﺖ ﻫﻤﺰﻣﺎن ﻛﺮدن روال ﻫﺎي ﻣﻮازي‬ ‫•‬
‫ﻣﻌﻠﻮم ﻧﺒﻮدن رﻓﺘﺎر ﺳﻴﺴﺘﻢ‬ ‫•‬

‫• ﻣﺜﺎل‪ STEP7 ،Pearl ،CSP ،Java ،Ada :‬و ‪...‬‬

‫• ﻋﻤﻮﻣﺎً ﻛﺘﺎﺑﺨﺎﻧﻪ ﻫﺎﻳﻲ ﻣﺮﺑﻮط ﺑﻪ ﺗﺒﺎدل داده ﺑﻴﻦ روال ﻫﺎ در ﺳﻴﺴﺘﻢ ﻫﺎي ﺗﻮزﻳﻊ ﺷﺪه ﺑﻪ اﻳﻦ‬
‫زﺑﺎن ﻫﺎ اﺿﺎﻓﻪ ﻣﻲ ﺷﻮﻧﺪ‪OpenMP ،MPI :‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪49‬‬


‫ﻣﻘﺎﻳﺴﻪ زﺑﺎن ﻫﺎي ﻣﺨﺘﻠﻒ‬

‫اﻳﺠﺎد ﻓﺮاﻳﻨﺪ ﺑﻪ‬ ‫اﻣﻜﺎن ﻛﻨﺘﺮل‬ ‫ﺗﻮﺻﻴﻒ از ﻃﺮﻳﻖ‬ ‫ﺗﻮﺻﻴﻒ ﺳﺎﺧﺘﺎري‬ ‫ﺗﻮﺻﻴﻒ رﻓﺘﺎري‬
‫ﺻﻮرت ﭘﻮﻳﺎ‬ ‫اﺳﺘﺜﻨﺎء ﻫﺎ‬ ‫ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﻲ‬
‫×‬ ‫‪‬‬ ‫×‬ ‫×‬ ‫‪‬‬ ‫ﻧﻤﻮدار ﺣﺎﻟﺖ‬
‫×‬ ‫×‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪VHDL‬‬
‫‪‬‬ ‫×‬ ‫‪×‬‬ ‫‪×‬‬ ‫‪×‬‬ ‫‪SDL‬‬
‫‪‬‬ ‫×‬ ‫×‬ ‫×‬ ‫×‬ ‫ﺷﺒﻜﻪ ‪Petri‬‬
‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫×‬ ‫‪‬‬ ‫‪Java‬‬
‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪SpecC‬‬
‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪SystemC‬‬
‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫×‬ ‫‪‬‬ ‫‪Ada‬‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪50‬‬


‫ﻣﺪل ﺗﺮﻛﻴﺒﻲ‬

UML

SDL / Java

C VHDL

Assembly Net List

Object Code Hardware

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ 51
‫‪UML‬‬
‫• ﻳﻚ زﺑﺎن اﺳﺘﺎﻧﺪارد ﻣﻨﺎﺳﺐ ﺑﺮاي ﺗﻮﺻﻴﻒ اوﻟﻴﻪ ﺳﻴﺴﺘﻢ ﻣﻲ ﺑﺎﺷﺪ‪.‬‬

‫• ﺑﻪ ﻣﻨﻈﻮر اﺳﺘﻔﺎده در ﺗﻌﻴﻴﻦ وﻳﮋﮔﻲ ﻫﺎي ﺳﻴﺴﺘﻢ ﻫﺎي ﺗﻌﺒﻴﻪ ﺷﺪه رده ﻫﺎي ﻣﺨﺘﻠﻒ از اﻳﻦ زﺑﺎن‬
‫ﺗﻌﺮﻳﻒ ﺷﺪه اﻧﺪ‪:‬‬

‫ﺗﻌﺮﻳﻒ وﻳﮋﮔﻲ ﻫﺎي زﻣﺎن ﺑﻨﺪي‪ ،‬ﻛﺎراﻳﻲ و زﻣﺎن )‪(SPT‬‬ ‫•‬


‫ﺗﺴﺖ‬ ‫•‬
‫ﻛﻴﻔﻴﺖ ﺳﺮوﻳﺲ و ﺗﺤﻤﻞ ﺧﺮاﺑﻲ‬ ‫•‬
‫ﻣﺪل ﺳﺎزي ﺳﻴﺴﺘﻢ )‪(SysML‬‬ ‫•‬
‫ﻣﺪل ﺳﺎزي و ﺗﺤﻠﻴﻞ ﺳﻴﺴﺘﻢ ﻫﺎي ﺗﻌﺒﻴﻪ ﺷﺪه ﺑﻲ درﻧﮓ )‪(MARTE‬‬ ‫•‬
‫اﻓﺰوﻧﻪ ﺑﺮﻗﺮاري ارﺗﺒﺎط ﺑﻴﻦ ‪ UML‬و ‪SystemC‬‬ ‫•‬
‫ﻗﺎﺑﻠﻴﺖ اﺳﺘﻔﺎده ﻣﺠﺪد ﻃﺮح )‪(SPRINT‬‬ ‫•‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪52‬‬


‫‪Ptolemy II‬‬
‫• ﭘﺮوژه اي ﺑﻪ ﻣﻨﻈﻮر ﻣﺪل ﺳﺎزي‪ ،‬ﺷﺒﻴﻪ ﺳﺎزي و ﻃﺮاﺣﻲ ﺳﻴﺴﺘﻢ ﻫﺎي ﻧﺎﻫﻤﮕﻮن ﺑﻪ وﻳﮋه ﺳﻴﺴﺘﻢ‬
‫ﻫﺎي ﺗﻌﺒﻴﻪ ﺷﺪه اﺳﺖ‪.‬‬

‫• وﻳﮋﮔﻲ ﻫﺎ‪:‬‬
‫ﺗﻮﺻﻴﻒ ﻓﺮاﻳﻨﺪﻫﺎي ﺗﺮﺗﻴﺒﻲ و ارﺗﺒﺎط ﺑﻴﻦ آن ﻫﺎ‬ ‫•‬
‫ﻣﺪل زﻣﺎن ﭘﻴﻮﺳﺘﻪ‬ ‫•‬
‫ﻣﺪل ﮔﺴﺴﺘﻪ روﻳﺪاد ﮔﺮا‬ ‫•‬
‫ﻣﺪل روﻳﺪاد ﮔﺮاي ﺗﻮزﻳﻊ ﺷﺪه‬ ‫•‬
‫ﻣﺪل ﻣﺎﺷﻴﻦ ﺣﺎﻟﺖ ﻣﺘﻨﺎﻫﻲ‬ ‫•‬
‫ﺷﺒﻜﻪ ﻓﺮاﻳﻨﺪ ‪Kahn‬‬ ‫•‬
‫ﺟﺮﻳﺎن داده ﻫﻤﺰﻣﺎن‬ ‫•‬
‫ﻣﺪل ﻣﺤﺎﺳﺒﺎﺗﻲ ﻫﻤﺰﻣﺎن‬ ‫•‬

‫اﻣﻴﺮ ﺧﻮرﺳﻨﺪي‬ ‫‪53‬‬

You might also like