DSD_course_Ver2.pdf

‫ﺑﺴﻤﻪ ﺗﻌﺎﻟﯽ‬
‫ﻋﻨﻮان درس‪ :‬ﻃﺮاﺣﯽ ﺳﯿﺴﺘﻢﻫﺎي دﯾﺠﯿﺘﺎل‬
‫‪Digital System Design‬‬
‫ﻣﺪرس‪ :‬اﺟﻼﻟﯽ‬
‫ﻣﻌﺮﻓﯽ درس‪:‬‬
‫در درس ﻃﺮاﺣﯽ ﺳﯿﺴﺘﻢﻫﺎي دﯾﺠﯿﺘﺎل داﻧﺸﺠﻮﯾﺎن دو ﻫﺪف زﯾﺮ را ﭘﯽﮔﯿﺮي ﻣﯽﮐﻨﻨﺪ‪:‬‬
‫‪ (1‬ﯾﺎﻓﺘﻦ ﺗﻮاﻧﺎﯾﯽ ﺗﺤﻠﯿﻞ و ﻃﺮاﺣﯽ ﺳﺨﺖ اﻓﺰار ﺑﺎ اﺳﺘﻔﺎده از زﺑﺎن ﺗﻮﺻﯿﻒ ﺳﺨﺖ اﻓﺰار ‪ .Verilog‬ﺑﺎ ﯾﺎدﮔﯿﺮي زﺑﺎن ‪ Verilog‬ﻣﯽﺗﻮان اﺑﺰارﻫـﺎي ﺷـﺒﯿﻪﺳـﺎزي و ﺳـﻨﺘﺰ‬
‫ﺳﯿﺴﺘﻢﻫﺎي دﯾﺠﯿﺘﺎل را ﺑﮑﺎر ﮔﺮﻓﺖ ﺗﺎ ﺳﺨﺖاﻓﺰارﻫﺎي ﭘﯿﭽﯿﺪه و ﺑﺰرگ )در ﺣﺪ ‪ (VLSI‬را ﻃﺮاﺣﯽ‪ ،‬ﻣﺪلﺳﺎزي و ارزﯾﺎﺑﯽ ﻧﻤﻮد ‪.‬‬
‫‪ (2‬آﺷﻨﺎﯾﯽ ﺑﺎ ﻣﺪارات ﻗﺎﺑﻞ ﭘﯿﮑﺮﺑﻨﺪي ﻣﺎﻧﻨﺪ ‪ FPGA‬ﻫﺎ و ‪ CPLD‬ﻫﺎ‪ FPGA .‬ﻫﺎ و ‪ CPLD‬ﻫﺎ واﺣﺪﻫﺎي ﺳﺨﺖاﻓﺰاري ﻫﺴﺘﻨﺪ ﮐﻪ ﻣﺪار درون آنﻫﺎ ﺗﻮﺳـﻂ ﮐـﺎرﺑﺮ و‬
‫ﻫﻨﮕﺎم اﺳﺘﻔﺎده )ﺧﺎرج از ﻣﺤﯿﻂ ﮐﺎرﺧﺎﻧﻪ( ﻗﺎﺑﻞ ﺗﻌﯿﯿﻦ اﺳﺖ‪ .‬ﺑﻪ اﯾﻦ ﺗﺮﺗﯿﺐ اﯾﻦ اﻣﮑﺎن وﺟﻮد دارد ﮐﻪ ﮐﺎرﺑﺮ ﻃﺮح ﺧـﻮد ﮐـﻪ ﺑـﺎ زﺑـﺎن ‪ Verilog‬ﺗﻮﺻـﯿﻒ ﺷـﺪه را در درون‬
‫‪ FPGA‬ﯾﺎ ‪ CPLD‬ﭘﯿﺎدهﺳﺎزي ﮐﻨﺪ‪.‬‬
‫در داﻧﺸﮑﺪة ﻣﻬﻨﺪﺳﯽ ﮐﺎﻣﭙﯿﻮﺗﺮ – داﻧﺸﮕﺎه ﺻﻨﻌﺘﯽ ﺷﺮﯾﻒ ﻫﻤﺰﻣﺎن ﺑﺎ درس ﻃﺮاﺣﯽ ﺳﯿﺴﺘﻢﻫﺎي دﯾﺠﯿﺘﺎل آزﻣﺎﯾﺸﮕﺎه ‪ ) PLD‬آزﻣﺎﯾﺸﮕﺎه ‪ (FPGA‬ﻧﯿﺰ اراﺋـﻪ ﻣـﯽﺷـﻮد ﮐـﻪ ﺑـﻪ‬
‫داﻧﺸﺠﻮﯾﺎن اﻣﮑﺎن ﻣﯽدﻫﺪ آﻣﻮﺧﺘﻪﻫﺎي ﺧﻮد در درس ﻃﺮاﺣﯽ ﺳﯿﺴﺘﻢﻫﺎي دﯾﺠﯿﺘﺎل را ﺑﻄﻮر ﻋﻤﻠﯽ در آزﻣﺎﯾﺸﮕﺎه ﺑﮑﺎرﮔﯿﺮﻧﺪ و درك ﺑﻬﺘﺮي از ﻣﻄﺎﻟﺐ اراﺋﻪ ﺷﺪه ﺑﯿﺎﺑﻨﺪ‪.‬‬
‫ﺳﺮﻓﺼﻞ درس‪:‬‬
‫ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ آﻧﭽﻪ ﺑﯿﺎن ﺷﺪ ﻣﻄﺎﻟﺐ اراﺋﻪ ﺷﺪه در درس ﻃﺮاﺣﯽ ﺳﯿﺴﺘﻢﻫﺎي دﯾﺠﯿﺘﺎل ﺑﻪ دو ﺑﺨﺶ ﺗﻘﺴﯿﻢ ﺷﺪه اﺳﺖ‪ (1 :‬زﺑﺎن ‪ (2 ، Verilog‬ﻣﺪارات ﻗﺎﺑﻞ ﭘﯿﮑﺮﺑﻨﺪي ‪ .‬در ﻃـﯽ‬
‫ﯾﮏ ﺗﺮم ﺗﺤﺼﯿﻠﯽ اﯾﻦ دو ﻣﻮﺿﻮع ﺑﻪ ﻣﻮازات ﻫﻢ در درس ﻃﺮاﺣﯽ ﺳﯿﺴﺘﻢﻫﺎي دﯾﺠﯿﺘﺎل اراﺋﻪ ﻣﯽﺷﻮﻧﺪ‪.‬‬
‫ﺳﺮﻓﺼﻞﻫﺎي ﻣﺮﺑﻮط ﺑﻪ زﺑﺎن ﺗﻮﺻﯿﻒ ﺳﺨﺖاﻓﺰار ‪Verilog‬‬
‫ﻣﺮوري ﺑﺮ زﺑﺎنﻫﺎي ﺗﻮﺻﯿﻒ ﺳﺨﺖاﻓﺰار ‪ ،‬ﻣﺮاﺣﻞ ﻃﺮاﺣﯽ ﺳﯿﺴﺘﻢﻫﺎي دﯾﺠﯿﺘﺎل‪ ،‬ﻣﺮوري ﺑﺮ وﯾﮋﮔﯽﻫﺎي زﺑﺎن ‪ ،Verilog‬روشﻫﺎي ﻃﺮاﺣـﯽ ‪ Top-down‬و ‪،Bottom-up‬‬
‫روشﻫﺎي ﻣﺪلﺳﺎزي ﺳﺎﺧﺘﺎري و رﻓﺘﺎري ‪ ،‬ﻃﺮاﺣﯽ ﻣﺪوﻻر و ﻣﻔﻬﻮم ‪ ،Test bench‬ﻣﻨﻄﻖ ‪ 4‬ﻣﻘﺪاره در ‪ Verilog‬و ﻣﻔﻬﻮم ﻗـﺪرت ﺳـﯿﮕﻨﺎل‪ wire ،‬و ‪ register‬در زﺑـﺎن‬
‫‪ Verilog‬و ﺗﻔﺎوتﻫﺎ و ﮐﺎرﺑﺮدﻫﺎي آنﻫﺎ ‪ ،‬ﻣﻔﻬﻮم آراﯾﻪ و ﺑﺮدار در زﺑﺎن ‪ Verilog‬و ﺗﻔﺎوتﻫﺎ و ﮐﺎﺑﺮدﻫﺎي آنﻫﺎ ‪ ،‬ﻧﻮعﻫﺎي دادهاي )‪ Integer ، Real‬و ‪ ،(Time‬رﺷﺘﻪﻫـﺎ‪،‬‬
‫‪ System Task‬ﻫﺎ در ‪ parameter ،Verilog‬و ﮐﺎرﺑﺮد آن در ‪ Directive ،Verilog‬ﻫﺎ و ‪ Macro‬در ‪ port ، Verilog‬ﻫـﺎ در ‪ module‬ﻫـﺎي ‪ Verilog‬و اﻧـﻮاع‬
‫آنﻫﺎ ‪ ،‬ﻃﺮاﺣﯽ ‪ gate-level‬در ‪ ، Verilog‬ﻣﺪلﺳﺎزي ﺗﺄﺧﯿﺮ در زﺑﺎن ‪ ،Verilog‬ﻣﺪلﺳﺎزي ﺟﺮﯾﺎن‪-‬داده در زﺑﺎن ‪ ،Verilog‬ﻋﻤﻠﮕﺮﻫﺎ در زﺑﺎن ‪assignment ، Verilog‬‬
‫ﻫﺎي ﻧـﻮع ‪ blocking‬و ‪ non-blocking‬در ﺗﻮﺻـﯿﻒ رﻓﺘـﺎري زﺑـﺎن ‪ Event control ،Verilog‬در زﺑـﺎن ‪ Construct ،Verilog‬ﻫـﺎي ﻣـﺪلﺳـﺎزي رﻓﺘـﺎري در‬
‫‪ Function ،Verilog‬ﻫﺎ و ‪ Task‬ﻫﺎ در زﺑﺎن ‪ ،Verilog‬ﮐﺪﻫﺎي ﻗﺎﺑﻞ ﺳﻨﺘﺰ در زﺑﺎن ‪Verilog‬‬
‫ﺳﺮﻓﺼﻞﻫﺎي ﻣﺮﺑﻮط ﺑﻪ ﻣﺪارات ﻗﺎﺑﻞ ﭘﯿﮑﺮﺑﻨﺪي‬
‫وﯾﮋﮔﯽﻫﺎي ﺳﯿﺴﺘﻢﻫﺎي دﯾﺠﯿﺘﺎل‪ ،‬ﺳﻄﻮح ﺗﺠﺮﯾﺪ و روشﻫﺎي ﻣﺪلﺳﺎزي‪ ،‬ﮐﺎرﺑﺮدﻫﺎي ﻣﺪارﻫﺎي ﻗﺎﺑﻞ ﭘﯿﮑﺮﺑﻨﺪي‪ SPLD ،‬ﻫﺎ و ﺳﺎﺧﺘﺎر آنﻫﺎ )ﺷﺎﻣﻞ ‪ PLA ،PAL‬و ‪،(ROM‬‬
‫‪ CPLD‬ﻫﺎ و ﺳﺎﺧﺘﺎر آنﻫﺎ‪ ،‬ﺗﮑﻨﻮﻟﻮژيﻫـﺎي ﺳـﺎﺧﺖ ‪ SPLD‬ﻫـﺎ و ‪ CPLD‬ﻫـﺎ‪ FPGA ،‬ﻫـﺎ و ﺳـﺎﺧﺘﺎر آنﻫـﺎ‪ ،‬اﻧـﻮاع ‪ LUT-Based) FPGA‬و ‪،( MUX-Based‬‬
‫ﺗﮑﻨﻮﻟﻮژيﻫﺎي ﺳﺎﺧﺖ ‪ FPGA‬ﻫﺎ )ﻣﺒﺘﻨﯽ ﺑﺮ ‪ Anti-fuse‬و ﻣﺒﺘﻨﯽ ﺑﺮ ‪ ، (SRAM‬روشﻫﺎي ﺳـﺎﺧﺖ ‪ Programmable Connections‬در ‪ FPGA‬ﻫـﺎ ‪ ،‬ﻣـﺮوري ﺑـﺮ‬
‫ﺑﺮﺧﯽ از ‪ CPLD‬ﻫﺎي )ﺑﻮﯾﮋه ‪ EPLD‬ﻫﺎي ﺗﻮﻟﯿﺪ ﺷﺮﮐﺖ ‪ ، (Altera‬ﻣﺮوري ﺑﺮ ﺑﺮﺧﯽ از ‪ FPGA‬ﻫـﺎي ‪ ) LUT-Based‬ﺑـﻮﯾﮋه ‪ FPGA‬ﻫـﺎي ‪ FLEX‬ﺗﻮﻟﯿـﺪ ﺷـﺮﮐﺖ‬
‫‪ ،( Altera‬ﻣﺮوري ﺑﺮ ﺑﺮﺧﯽ از ‪ FPGA‬ﻫﺎي ‪) MUX-Based‬ﻣﺤﺼﻮﻻت ﺷﺮﮐﺖ ‪( Actel‬‬
‫ﻣﻨﺎﺑﻊ‪:‬‬
‫‪1) Samir Palnitkar, "Verilog HDL: A Guide to Digital Design and Synthesis" SunSoft Press, 1st ed.1996, or 2nd ed. 2003.‬‬
‫‪2) S. Brown, J. Rose, "FPGA and CPLD Architectures: A Tutorial", IEEE Design and Test of Computers, pp. 42-57, 1996.‬‬
‫‪ Data sheet (3‬ﻫﺎي ﺷﺮﮐﺖ ‪ Altera‬ﻗﺎﺑﻞ دﺳﺘﺮﺳﯽ از ﺳﺎﯾﺖ ‪www.altera.com‬‬
‫‪ Data sheet (4‬ﻫﺎي ﺷﺮﮐﺖ ‪ Xilinx‬ﻗﺎﺑﻞ دﺳﺘﺮﺳﯽ از ﺳﺎﯾﺖ ‪www.xilinx.com‬‬
‫‪ Data sheet (5‬ﻫﺎي ﺷﺮﮐﺖ ‪ Actel‬ﻗﺎﺑﻞ دﺳﺘﺮﺳﯽ از ﺳﺎﯾﺖ ‪www.actel.com‬‬