thiết kế mạch số với hdl

Upload: longfet53

Post on 08-Apr-2018

230 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/7/2019 Thit k mch s vi HDL

    1/84

    I HC QUC GIA THNH PH H CH MINH

    TRNG I HC BCH KHOA

    KHOA KHOA HC V K THUT MY TNH

    ------oOo-----

    THC HNH

    THIT K MCH S VI HDL

    TP.HCM, 9-2009

  • 8/7/2019 Thit k mch s vi HDL

    2/84

    Gii thiu

    B ti liu thc hnh thit kt mch s vi HDL c son tho nhm mc ch htrcc bn sinh vin trong vic tip xc vi ngn ngc t phn cng. M c th l htrcho mn hc thit kt mch s vi HDL.

    Ti liu ny bao gm 9 bi, tng ng vi 9 bui. Ni dung chu yu hng nvic hc t duy thit kt phn cng. Gip sinh vin luyn tp cc k nng lp trnh viVerilog, m phng trn Model Sim hay trc tip trn board DE2.

    Mc d rt c gng nhng cng khng th trnh khi nhng sai st. V vy rtmong nhn c kin ng gp t pha bn c hoc cc bn sinh vin.

    Chn thnh cm n!

    TP.HCM, ngy 27 thng 9 nm 2009

  • 8/7/2019 Thit k mch s vi HDL

    3/84

    Mc lc

    Bui 1. Tng quan v cc phn mm thit k trn FPGA ....................................... 7I. Gii thiu Board DE2 ca Altera............................................................................. 7

    1. Gii thiu.......................................................................................................... 72. Thnh phn ....................................................................................................... 73. Mt vi ng dng ca board DE2 .................................................................... 8

    II. Cch ci t Quartus II 8.0 v Nios II ..................................................................... 91. Gii thiu.......................................................................................................... 92. Ci t............................................................................................................. 10

    III. Cch np chng trnh cho Quartus II 8.0:............................................................ 131. To 1 project:.................................................................................................. 132. Vit chng trnh v bin dch: ...................................................................... 173. To file m phng (simulate) v bt u simulate ......................................... 224. Cu hnh chn v n p ln board...................................................................... 30

    Bui 2. Mch t hp v mch tun t...................................................................... 40I. Gii thiu ............................................................................................................... 40

    1. Gii thiu........................................................................................................ 402. Hng dn thit k FPGA thng qua s khi/Schematic.......................... 40

    II. Bi tp .................................................................................................................... 46Bui 3. Lp trnh Verilog vi m hnh cu trc ..................................................... 48

    I. Gii thiu ModelSim ............................................................................................. 481. Gii thiu........................................................................................................ 482. Ci t............................................................................................................. 483. Hng dn ...................................................................................................... 58

    II. Bi tp .................................................................................................................... 65Bui 4. M hnh hnh vi ............................................................................................ 67

    I. Bi tp .................................................................................................................... 67Bui 5. M hnh hnh vi (tt)...................................................................................... 71

    I. Bi tp .................................................................................................................... 71Bui 6. My trng thi .............................................................................................. 75

    I. Gii thiu ............................................................................................................... 751. Gii thiu........................................................................................................ 752. Hng dn ...................................................................................................... 75

    II. Bi tp .................................................................................................................... 83

  • 8/7/2019 Thit k mch s vi HDL

    4/84

    Mc lc hnh

    Hnh 1.Board DE2 ............................................................................................................. 7Hnh 2. TV Box.................................................................................................................. 8Hnh 3. Chng trnh v (paintbrush)................................................................................ 9Hnh 4. My ht Karaoke v my chi nhc t card SD ................................................... 9Hnh 5. Thng bo cha ci dirver .................................................................................. 10Hnh 6. Chn cch thc ci t driver ............................................................................. 11Hnh 7. Chn th mc tm kim driver............................................................................ 11Hnh 8. Chn th mc cha dirver .................................................................................. 12Hnh 9. Thng bo li ...................................................................................................... 12Hnh 10. Thng bo ci t hon tt ................................................................................ 13Hnh 11. To mi mt project.......................................................................................... 14Hnh 12. Hp hi thoi to mi project ........................................................................... 15Hnh 13. Hp thoi la chn chip.................................................................................... 16Hnh 14. Hp thoi tng hp cc thng tin ca project ................................................... 17Hnh 15. To mi file....................................................................................................... 18Hnh 16. La chn loi file cn to.................................................................................. 19Hnh 17. Ca s vit code................................................................................................ 19Hnh 18. Ca s l p trnh................................................................................................. 20Hnh 19. Hp thoi lu file .............................................................................................. 20Hnh 20. La chn lop-level cho file ............................................................................... 21Hnh 21. Bin dch chng trnh ..................................................................................... 21Hnh 22. Thng bo vic bin dch thnh cng ............................................................... 22Hnh 23. To mi file testbench....................................................................................... 23Hnh 24. Chn tn hiu sc test................................................................................. 23Hnh 25. Hp thoi la chn tn hiu............................................................................... 24Hnh 26. Ca s la chn tn hiu ................................................................................... 24Hnh 27. Xc nhn li vic la chn tn hiu................................................................... 25Hnh 28. Thit lp gi tr cho cc tn hiu........................................................................ 25Hnh 29. Ca s Save As ................................................................................................. 26Hnh 30. La chn ch simulate ................................................................................. 26Hnh 31. Ca s thit lp cc thng s ca qu trnh simulate........................................ 27Hnh 32. Thc hin chc nng tng hp v phn tch chng trnh ............................... 27Hnh 33. Thng bo thnh cng....................................................................................... 28Hnh 34. Thit lp file testbench cho chng trnh ......................................................... 28Hnh 35. La chn ng dn lu tr file testbench....................................................... 28Hnh 36. Chnh v tr lu tr file testbench.................................................................. 29Hnh 37. Tin hnh qu trnh simulation ......................................................................... 29Hnh 38. Thng bo simulate thnh cng ........................................................................ 30Hnh 39. Kt qu qu trnh m phng (simulation)......................................................... 30Hnh 40. Ca s gn chn ................................................................................................ 31Hnh 41. Cc tn hiu cn gn chn ................................................................................. 31Hnh 42. Danh sch cc chn c thc gn ................................................................ 32Hnh 43. Qu trnh gn chn hon tt .............................................................................. 32Hnh 44. Lu li file cu hnh chn ................................................................................. 33

  • 8/7/2019 Thit k mch s vi HDL

    5/84

    Hnh 45. Hp thoi load file cu hnh chn ..................................................................... 33Hnh 46. Ca s lp trnh (np) ....................................................................................... 34Hnh 47. Ca s Hardware Setup .................................................................................... 35Hnh 48. Ca s l p trnh................................................................................................. 35Hnh 49. Ca s thit b ................................................................................................... 36Hnh 50. Ca s Device & Pin Options........................................................................... 37

    Hnh 51. Thng bo thay i ch lp trnh ................................................................. 37 Hnh 52. Ca s lp trnh trong ch AS...................................................................... 38Hnh 53. La chn file cu hnh ...................................................................................... 38Hnh 54. Qu trnh lp trnh hon tt ............................................................................... 39Hnh 55. Ca s la chn loi file ................................................................................... 41Hnh 56. Ca s lm vic ca Quartus ............................................................................ 42Hnh 57. Hp thoi la chn linh kin c trong th vin ................................................ 43Hnh 58. c linh kin ln ca s lm vic ..................................................................... 44Hnh 59. Ca s gn chn cho tn hiu xut nhp ........................................................... 45Hnh 60. Hon tt vic v mch....................................................................................... 45Hnh 61. La chn file cu hnh cho project ................................................................... 46

    Hnh 62. Ca s ci t ModelSim.................................................................................. 49Hnh 63. Ca s ci t ModelSim.................................................................................. 50Hnh 64. Ca s la chn th mc ci t....................................................................... 51Hnh 65. La chn tn th mc cho chng trnh........................................................... 52Hnh 66. Tng hp thng tin ci t ................................................................................ 53Hnh 67. Thanh process ci t........................................................................................ 53Hnh 68. Ca s thng bo license ca phn mm.......................................................... 54Hnh 69. ng k thng tin.............................................................................................. 55Hnh 70. Xem thng tin card mng ca my ................................................................... 56Hnh 71. Ca s thuc tn ca h thng........................................................................... 57Hnh 72. Ca s bin mi trng..................................................................................... 58Hnh 73. Hp thoi to mi mt bin mi trng ........................................................... 58Hnh 74. Ca s lm vic ca ModelSim ........................................................................ 59Hnh 75. To mi project................................................................................................. 59Hnh 76. Thng tin ca project mi ................................................................................. 60Hnh 77. Thm cc file vo project.................................................................................. 60Hnh 78. Hp thoi to mi file ....................................................................................... 60Hnh 79. Ca s son tho ............................................................................................... 61Hnh 80. To mi file....................................................................................................... 61Hnh 81. Thm file vo project ........................................................................................ 62Hnh 82. Code verilog file testbench ............................................................................... 62Hnh 83. Th vin word................................................................................................... 63Hnh 84. Thc hin simulate............................................................................................ 63Hnh 85. Chn tn hiu sc v dng sng (gin ).................................................. 64Hnh 86. Ca s lnh ....................................................................................................... 64Hnh 87. Gin thi gian ca cc tn hiu..................................................................... 65Hnh 88. Kt thc qu trnh simulate............................................................................... 65Hnh 89. S kt ni mch............................................................................................ 66Hnh 90. Kt ni mch ..................................................................................................... 68

  • 8/7/2019 Thit k mch s vi HDL

    6/84

    Hnh 91. Bng thc tr v s mch ............................................................................. 68Hnh 92. S mch........................................................................................................ 69Hnh 93. Bng thc tr v s kt ni ........................................................................... 69Hnh 94. S kt ni ..................................................................................................... 70Hnh 95. Bng thc tr ..................................................................................................... 70Hnh 96. Bng thc tr ..................................................................................................... 71

    Hnh 97. S kt ni mch............................................................................................ 72Hnh 98. Bng thc tr v s kt ni mch ................................................................. 73Hnh 99. Mch cng 4-bit Full-Adder ............................................................................. 73Hnh 100. To file my trng thi .................................................................................... 76Hnh 101. Ca s lm vic............................................................................................... 77Hnh 102. To cc trng thi............................................................................................ 78Hnh 103. To cc ng chuyn trng thi .................................................................... 78Hnh 104. Thit lp biu thc chuyn trng thi ............................................................. 79Hnh 105. Thit lp tn hiu xut v action ca mi trng thi........................................ 80Hnh 106. My trng thi ................................................................................................. 80Hnh 107. Chuyn my trng thi sang nh dng ca ngn ng thit kt phn cn ...... 81

    Hnh 108. Code verilog c to ra t my trng thi .................................................... 82Hnh 109. Chng trnh chnh ......................................................................................... 83Hnh 110. Thit l p top-level ........................................................................................... 83Hnh 111. Lu trng thi............................................................................................. 84

  • 8/7/2019 Thit k mch s vi HDL

    7/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Bui 1. Tng quan v cc phn mm thit k trn FPGAMc tiu

    Nm c cng nghFPGA Lm quen board thc hnh DE2 Cit, v lm quen vi cc phn mm: Quartus II, Nios II

    I. Gii thiu Board DE2 ca Altera1. Gii thiu

    Board DE2 l board mch phc v cho vic nghin cu v pht trin v cclnh vc lun l s hc (digital logic), t chc my tnh (computer organization)v FPGA.

    Hnh 1.Board DE2

    2. Thnh phnBoard DE2 cung cp kh nhiu tnh nng h trcho vic nghin cu v pht

    trin, di y l thng tin chi tit ca mt board DE2:

    FPGA:- Vi mch FPGA Altera Cyclone II 2C35.- Vi mch Altera Serial Configuration EPCS16.

    Thc hnh thit kt mch s vi HDL 7 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    8/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Cc thit b xut nhp:- USB Blaster cho lp trnh v iu khin API ca ngi dung; h trc 2 ch

    lp trnh JTAG v AS.- Biu khin Cng 10/100 Ethernet.- Cng VGA-out.- B gii m TV v cng ni TV-in.- Biu khin USB Host/Slave vi cng USB kiu A v kiu B.- Cng ni PS/2 chut/bn phm.- B gii m/m ha m thanh 24-bit cht lng a quang vi jack cm line-in,

    line-out, v microphone.- 2 Header mrng 40-pin vi lp bo v diode.- Cng giao tip RS-232 v cng ni 9-pin.- Cng giao tip hng ngoi. B nh:

    - SRAM 512-Kbyte.- SDRAM 8-Mbyte.- B nhcc nhanh 4-Mbyte (1 s mch l 1-Mbyte).- Khe SD card. Switch, cc n led, LCD, xung clock

    - 4 nt nhn, 18 nt gt.- 18 LED , 9 LED xanh, 8 Led 7 on- LCD 16x2- B dao ng 50-MHz v 27-MHz cho ng h ngun.

    3. Mt vi ng dng ca board DE2 ng dng lm TV box

    Hnh 2. TV Box

    Thc hnh thit kt mch s vi HDL 8 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    9/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Chng trnh v bng chut USB (paintbrush)

    Hnh 3. Chng trnh v (paintbrush)

    My ht Karaoke v my chi nhc SD

    Hnh 4. My ht Karaoke v my chi nhc tcard SD

    II.Cch ci t Quartus II 8.0 v Nios II1. Gii thiu

    B phn mm thit ki km vi board DE2 bao gm 2 da: Quartus 2 vNios 2 Integrated Development Environment (IDE)

    Quartus II l phn mm h tr tt c mi qu trnh thit k mt mch logic,bao gm qu trnh thit k, tng hp, placement v routing (sp xp v chy dy),m phng (simulation), v lp trnh ln thit b (DE2).

    Nios II, mi trng pht trin tch hp ca h Nios II (IDE), n l cng cpht trin ch yu ca h vi x l Nios II. Phn mm s l mi trng cung cpkh nng chnh sa, xy dng, debug v m t slc v chng trnh. IDE cncho php to cc chng trnh tn nhim (single-threaded) n cc chng

    Thc hnh thit kt mch s vi HDL 9 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    10/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    trnh phc tp da trn mt h iu hnh thi gian thc v cc th vinmiddleware.

    2. Ci t

    Ci t Quartus II v Nios IIQu trnh ci t Quartus II v Nios n gin ch cn a a vo my v thc

    hin theo hng dn ca chng trnh ci t

    Ci t phn mm USB blaster driverV Board DE2 c l p trnh bng cch s dng phn mm USB Blaster

    (USB Blaster mechanism). Nn nu USB Blaster driver cha c ci t th qutrnh lp trnh xung board DE2 s khng thnh cng.

    Sau khi gn board DE2 vo my tnh thng qua cng USB, nu USB Blasterdriver cha c ci t th hp thoi sau s xut hin, ChnNo, not this time sau nhnNext

    Hnh 5. Thng bo cha ci dirver

    ChnInstall from a specific location v chnNext

    Thc hnh thit kt mch s vi HDL 10 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    11/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 6. Chn cch thc ci t driver

    Kt tip bn chnSearch for the best driver in these location v sau nhnBrowse.

    Hnh 7. Chn thmc tm kim driver

    Thc hnh thit kt mch s vi HDL 11 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    12/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    H p thoi mi s xut hin bn tm n v traltera\quartus60\drivers\usbblaster, sau nhn OKv tip tc nhnNext

    Hnh 8. Chn thmc cha dirver

    Ca s thng bo vic kim tra logo window khng thnh cng, tuy nhinvic ny s khng bnh hng n vic kt ni ca chng trnh sau ny. Bntip tc nhn Continue Anyway

    Hnh 9. Thng bo li

    Nhn Finish hon tt vic ci t

    Thc hnh thit kt mch s vi HDL 12 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    13/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 10. Thng bo ci t hon tt

    III. Cch np chng trnh cho Quartus II 8.0:1. To 1 project:

    Bc 1. VoMenu > file chnNew Project Wizard

    Thc hnh thit kt mch s vi HDL 13 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    14/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 11. To mi mt projectBc 2. Ta chn th mc cha project v t tn cho project, xem hnh

    bn di

    Thc hnh thit kt mch s vi HDL 14 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    15/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 12. Hp hi thoi to mi projectBc 3. Sau ta chn hng sn xut chip v tn loi chip trn mch

    Thc hnh thit kt mch s vi HDL 15 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    16/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 13. Hp thoi la chn chipBc 4. Cui cng chn Finish hon tt

    Thc hnh thit kt mch s vi HDL 16 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    17/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 14. Hp thoi tng hp cc thng tin ca project

    2. Vit chng trnh v bin dch:Bc 1. VoMenu > file chnNew

    Thc hnh thit kt mch s vi HDL 17 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    18/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 15. To mi fileBc 2. Sau chn loi file m chng ta mun vit chng trnh. y ta

    chn loai file Verilog HDL

    Thc hnh thit kt mch s vi HDL 18 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    19/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 16. La chn loi file cn toBc 3. Di y l mt on chng trnh demo: tnh hmf = x1 EX-OR

    x2

    Hnh 17. Ca s vit codeBc 4. Sau khi vit xong th taphi lu tn file trng vi tn module ca

    chng trnh

    Thc hnh thit kt mch s vi HDL 19 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    20/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 18. Ca s lp trnh

    Hnh 19. Hp thoi lu fileCh : ChnAdd file to current projectBc 5. Sau khi lu file xong phi thit lp cho file l top-levelth mi

    bin dch c

    Thc hnh thit kt mch s vi HDL 20 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    21/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 20. La chn lop-level cho fileBc 6. Bin dch chng trnh:

    Hnh 21. Bin dch chng trnh

    Thc hnh thit kt mch s vi HDL 21 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    22/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 22. Thng bo vic bin dch thnh cngCh :n y th c th np trc tip ln board DE2 kim th hoc s dng chngtrnh m phng c trn Quartus II. Phn 3 s trnh by cc bc cn thit to file mphng v tin hnh m phng gin thi gian. Phn 4 s trnh by cc bc cn thit np ln board DE2 kim th trc tip trn board ny.

    3. To file m phng (simulate) v bt u simulateBc 1. VoMenu > file chnNew, sau chn Vector Waveform File

    Thc hnh thit kt mch s vi HDL 22 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    23/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 23. To mi file testbenchBc 2. Sau nhp chut phi chnInsert, chnInsert Node or bus

    Hnh 24. Chn tn hiu sc testBc 3. ChnNode Finder

    Thc hnh thit kt mch s vi HDL 23 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    24/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 25. Hp thoi la chn tn hiuBc 4. Ca s la chn tn hiu s xut hin (xem hnh 26). hin th ra tt c cc chn :

    ChnPins: all. Sau chn ntList hin tt c cc chn.

    Nt : Chn tng tn hiu Nt : Chn tt c cc tn hiu Nt : B tng tn hiu Nt : B tt c cc tn hiuV d mun chn 3 tn hiu f, x1, x2 ta c 2 cch:

    Chn tng tn hiu theo nt Nhn nt chn tt c c tn hiu

    Nhn OK hon tt vic chn tn hiu

    Hnh 26. Ca s la chn tn hiu

    Thc hnh thit kt mch s vi HDL 24 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    25/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Bc 5. Nhn OKn nh cc tn hiu cn chn

    Hnh 27. Xc nhn li vic la chn tn hiuBc 6. Thit lp gi tr cc tn hiu:Ta r chut t khi chng liSau s dng cc nt 0, 1 thit lp gi tr cho chng (xem hnh 28)

    Hnh 28. Thit lp gi tr cho cc tn hiuBc 7. Sau khi thit lp gi tr ca cc chn xong ta Save li.

    Thc hnh thit kt mch s vi HDL 25 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    26/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 29. Ca s Save As

    Bc 8. Nhp vo nt la chn ch simulate (xem hnh 30).

    Hnh 30. La chn ch simulateBc 9. Trong khungSimulate mode chn chc nng Functional

    Thc hnh thit kt mch s vi HDL 26 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    27/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 31. Ca s thit lp cc thng s ca qu trnh simulateBc 10. VoProcessing > Generate Functional Simulation Netlist tinhnh qu trnh phn tch v tng hp

    Hnh 32. Thc hin chc nng tng hp v phn tch chng trnhBc 11. Hp thoi thng bo qu trnh phn tch v tng hp thnh cng,

    chn OKn nh

    Thc hnh thit kt mch s vi HDL 27 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    28/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 33. Thng bo thnh cngBc 12. La chn file testbench cho chng trnh cn m phng

    Hnh 34. Thit lp file testbench cho chng trnh

    Bc 13. Nhn vo nt la chn ng dn lu tr file testbench.

    Hnh 35. La chn ng dn lu trfile testbenchBc 14. La chn v tr lu tr file testbench trong hp thoiSelect File

    Thc hnh thit kt mch s vi HDL 28 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    29/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 36. Chnh v tr lu trfile testbench

    Bc 15. ChnProcessing > Start Simulation hoc nhp vo nt tin hnh qu trnh simulation. Nu thnh cng th s c thng bo nh hnh38, v kt qu qu trnh m phng sc hin th nhhnh 39.

    Hnh 37. Tin hnh qu trnh simulation

    Thc hnh thit kt mch s vi HDL 29 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    30/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 38. Thng bo simulate thnh cng

    Hnh 39. Kt qu qu trnh m phng (simulation)

    4. Cu hnh chn v np ln board Cu hnh chn cu hnh chn bn tin hnh ln lt theo cc bc sau:

    Bc 1. Chn Assignments-> Pins ca s la chn chn s xut hin nhhnh:

    Thc hnh thit kt mch s vi HDL 30 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    31/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 40. Ca s gn chnBc 2. Nhp p vo ct To nh trn hnh. Mt menu cha

    danh sch cc chn cn gn sc hin ra. Bn chn chn cn gn (v dy chn tn hiu cn gn x1).

    Hnh 41. Cc tn hiu cn gn chnBc 3. Tip theo nhn vo ct Location. Mt menu cha

    danh sch cc chn trong FPGA sc hin ra bn chn chn ca FPGA sni vi tn hiu (v dy chn chn PIN_N25).

    Thc hnh thit kt mch s vi HDL 31 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    32/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 42. Danh sch cc chn c thc gnBc 4. Lp li qu trnh ny cho n khi gn ht cc chn linh kin.

    Hnh 43. Qu trnh gn chn hon ttBc 5. lu li file cu hnh chn bn chn File -> Export, sau nhp

    tn file cn lu.

    Thc hnh thit kt mch s vi HDL 32 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    33/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 44. Lu li file cu hnh chnBc 6. nhng ln cu hnh sau ta c th load file cu hnh bng cch

    (nu ln cu hnh chn ny l hon ton ging vi ln cu hnh trc). Bnchn. Assignment -> Import Assignments, ti p theo bn chn file cu hnhchn ri nhn OK.

    Hnh 45. Hp thoi load file cu hnh chnCh : DE2 cung cp mt file cu hnh chun, file ny c tn DE2_pin_assigments.csv trong th mc. File cu hnh chun ny s kt ni tt c cc chn ca DE2. Khi bnch cn t tn tn hiu trng tn vi tn hiu m DE2 quy c. V d: cc nt nhn s ctn l SW, cc n led s c tn l LEDG hay LEDR,

    Np ln board

    Thc hnh thit kt mch s vi HDL 33 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    34/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    DE2 h tr2 cch np ln board. l ch np l JTAG v AS. Trong chJTAG (Joint Test Action Group) th d liu cu hnh sc np trc tip lnFPGA. Trong ch ny th thng tin cu hnh s b mt khi tt ngun. chAS(Active Serial), th d liu cu hnh sc np ln b nhflash. Mi khi mngun(reset) th thng tin cu hnh y sc load ln FPGA, do thng tin cu hnh

    FPGA s khng b mt mi khi tt ngun. chuyn i gia 2 ch np ny thtrn board DE2 cung cp nt RUN/PROG. RUN tng ng vi ch np JTAG,trong khi PROG l chAS.

    Lp trnh theo ch JTAG

    Tin hnh theo cc bc:Bc 1. Gt nt RUN/PROG trn board DE2 sang RUN, sau chn

    Tools->Programmer, ca s lp trnh cho board DE2 s xut hin nh hnhv.

    Hnh 46. Ca s lp trnh (np)Bc 2. Trn ca s lp trnh, ch la chn JTAG trong khung ch lp

    trnh (Mode). Tip o nu USB-Blaster khng c chn nh trn hnh, thbn nhn Hardware Setup, ca sHardware Setup s xut hin khi bnchn USB-Blaster la chn cng kt ni vi board DE2.

    Thc hnh thit kt mch s vi HDL 34 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    35/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 47. Ca s Hardware SetupBc 3. Trli ca s lp trnh bn chn vo file lp trnh (light.sof). Nu

    file ny cha c th bn c th nhn nt Add File thm file ny vo. Tip bn nhp vo la chn Program/configure

    Hnh 48. Ca s lp trnhBc 4. Nhn nt Start bt u vic lp trnh. Trong khi lp trnh th cc

    n led trn board DE2 s sng mi. Trn ca s lp trnh, thanh Progess s

    cho thy tin trnh np ln board DE2.Lp trnh theo ch AS

    Bc 1. Gt nt RUN/PROG trn board DE2 sang PROG.Bc 2. Vo Assignment -> Device, chn Device v sau chn thit b l

    EP2C35F672C6. Tip nhp vo Device & Pin Options, ca sDevice &Pin Opions s xut hin, bn chn tab Configuration, trong khung

    Thc hnh thit kt mch s vi HDL 35 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    36/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Configuration device chn EPCS16. Nhn OKn nh sau dch lichng trnh.

    Hnh 49. Ca s thit b

    Thc hnh thit kt mch s vi HDL 36 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    37/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 50. Ca s Device & Pin OptionsBc 3. Tools->Programmer, ca s lp trnh s xut hin (nh hnh ca

    s l p trnh). Tip trong khung Mode bn chn Active SerialProgramming. Mt thng bo s hin ln bn chn Yes.

    Hnh 51. Thng bo thay i ch lp trnhBc 4. Ca s lp trnh chAS s hin ra nh hnh bn di. Bn

    chn nt Add File thm file cn np vo chng trnh (light.pof, file cu hnh cho chAS s c dng *.pofv file cu hnh cho chJTAG sc dng *.sof).

    Thc hnh thit kt mch s vi HDL 37 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    38/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 52. Ca s lp trnh trong ch AS

    Hnh 53. La chn file cu hnhBc 5. Nh p vo la chn Program/Configure. Tip bn nhn nt

    Start np chng trnh cu hnh ln board DE2

    Thc hnh thit kt mch s vi HDL 38 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    39/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 54. Qu trnh lp trnh hon tt

    Thc hnh thit kt mch s vi HDL 39 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    40/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Bui 2. Mch t hp v mch tun tMc ch: Nm vng cc kin thc

    Thit kFPGA thng qua s khi/Schematic Mch tun tv mch thp

    o Rt gn biu thc i sBoole bng phng php ba Karnaugho Gii thut rt gn Quine McCluskeyo Thit kmch tun to Thit kmch thp

    I. Gii thiu1. Gii thiu

    Ngoi vic vit chng trnh cu hnh FPGA thng qua code verilog nhtrnh by chng trc th Quartus II cn h trnhiu cch thit k FPGA khc:s dng AHDL, EDIF file, SystemVerilog HDL file, Tcl Script file trong thcch thit k s dng s khi, s dng trc tip cc khi lun l l mt trongnhng cch kh thng dng. Di y s trnh by mt v d thit k FPGA thngqua m hnh s khi.

    2. Hng dn thit k FPGA thng qua s khi/Schematic hiu r qu trnh thit k ny, chng ti s trnh by mt v dn gin s

    dng s khi/schematic. Chng trnh s hin thc php nor trn 2 tn hiuSW[0] v SW[1] sau xut tn hiu ra LEDR[0]. to mt s mch v cuhnh v d ny ln FPGA bn ln lt thc hin cc bc sau:

    Bc 1. MQuartus II v to mt project mi (thc hin nh bi trc trnh by)

    Bc 2. Vo File -> New hoc nhp vo biu tng trn thanh cng c.Ca s la chn loi file s xut hin bn chn BlockDiagram/Schematic File sau nhn OK.

    Thc hnh thit kt mch s vi HDL 40 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    41/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 55. Ca s la chn loi file

    Bc 3. Ca s son tho s hin ra nh hnh bn di.

    Thc hnh thit kt mch s vi HDL 41 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    42/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Ca s ro ect

    Thanh cn c

    Ca s lm vic

    Hnh 56. Ca s lm vic ca QuartusBc 4. thun tin cho vic son tho ca bn, th y ti s gii thiu

    chc nng ca mt vi nt trn thanh cng c:

    a. (Select tool): con tr l cng c gip chn la cc thnh phn trnca s lm vic

    b. Nt (Text tool) : cng c to cc ra cc dng vn bn trn ca slm vic

    c. (Symbol tool): cha linh kin s dng cho qu trnh son tho (cccng lun l, cc megafunction, v cc cha nng khc)

    d. (Block tool): cng c h trvic to ra cc khi chc nng. Gipcho vic thit k nhiu cp chc nng.

    e. (orthogonal node tool): ni dy tn hiuf. (orthogonal bus tool): ni bus cho cc tn hiug. (Zoom tool): phng to, thu nhh. (Full Screen): La chn ch ca s lm vic l Full Screen hay

    khng.

    i. (Find): cng c tm kim trn ca s lm vicBc 5. Tip n bn chn nt (Symbol tool) ca s xut hin

    Thc hnh thit kt mch s vi HDL 42 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    43/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 57. Hp thoi la chn linh kin c trong thvinBc 6. Trn ca s la chn linh kin bn chn primitives -> logic ->

    nor2 sau nhn OK. Tip bn nhn chut tri ln ca s lm vic thc hin vic c mt linh kin cng nor (2 ng nhp). kt thc vicchn cng nor2, bn nhp chut phi vo ca s lm vic v chn Cancel

    Thc hnh thit kt mch s vi HDL 43 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    44/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 58. c linh kin ln ca s lm vic

    Bc 7. Tip tc chn (Symbol tool), trong ca s la chn linh kinbn chn ng dn primitives -> pin -> input, sau bn c 2 tn hiung nhp. Lp li qu trnh ny c thm mt tn hiu output nh hnhbn di

    Bc 8. Bc k ti p l kt ni chn cc linh kin. Bn nh p vo biutng (orthogonal node tool) trn thanh cng c, sau drag chut tv tr mun ni n v tr ch

    Bc 9. Nhp p vo tn hiu nhp gn chn cho mch thit k. Nhpgi tr SW[0] vo pin name sau nhn OK.

    Thc hnh thit kt mch s vi HDL 44 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    45/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 59. Ca s gn chn cho tn hiu xut nhpBc 10. Tng t nh vy bn thit lp cho tn hiu nhp cn li l SW[1]

    v tn hiu output l LEDR[0].

    Hnh 60. Hon tt vic v mchBc 11. Chn Assignments -> Import Assignments, ca s la chn file

    cu hnh chn cho FPGA xut hin, bn chn ng dn cho fileDE2_pin_assignments.csv ri nhn OK

    Thc hnh thit kt mch s vi HDL 45 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    46/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 61. La chn file cu hnh cho project

    Bc 12. Nhn Ctrl + S hoc nh p vo biu tng trn thanh cng c.Khi hp thoi Save As xut hin bn chn ng th mc cha project hinti ca mnh v lu vi tn trng vi tn project ca mnh, ng thi chnAdd file to current project sau nhn OK

    Bc 13. Nh p nt trn thanh cng c hoc chn Processing -> StartComplilation bin dch chng trnh

    Bc 14. Sau khi qu trnh compile hon tt bn tin hnh n p ln boardDE2. Quy trnh np ny hon ton ging vi quy trnh np ln board DE2phn trc.

    II.Bi tpBi 1. Hy hin thc hm F (khng rt gn) ln FPGA bng phng php thit

    k s khi, tn hiu nhp c a vo t cc SW, v tn hiu xut l ccLEDR. Rt gn hm F, v m hnh transitor v kim tra li kt qu hm rtgn vi kt qu chng trnh chy trn FPGA. Vi hm F nh sau:

    a. ))(( bcadcbaF +++= b. bcddabcaF +++= )(

    Bi 2. Ch s dng tnh cht ca hm Boole bin i biu thc F thnh dngtng cc tch (SOP) v tch cc tng (POS), vi F

    a. )()( cacbaF ++= b. bcdcbaF +++= )(

    Bi 3. S dng phng php Ba Karnaugh a. Rt gn hm += )13,2()15,11,8,7,4,1,0(),,,( dmdcbaF v dng tng

    cc tch (SOP)

    Thc hnh thit kt mch s vi HDL 46 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    47/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    b. rt gn hm )11,8()15,10,7,6,4,2,0(),,,( dMdcbaF += v dngtch cc tng (POS)

    Bi 4. S dng gii thut Quine McCluskey rt gn biu thc saua. )11,8()15,10,7,6,4,2,0(),,,( dmdcbaF +=b. += )13,2()15,11,8,7,4,1,0(),,,( dmdcbaF

    Bi 5. Hy thit k mt SR-Latch s dng D-Latch v cc cng lun l v hinthc n ln FPGA.

    Bi 6. Hy thit k mt D-Latch s dng RS-Latch v cc cng lun l v hinthc n ln FPGA kim th.

    Bi 7. Mt mch tun t c 2 D-FlipFlop A v B, cc tn hiu nhp ca mchtun t l X, Y. Tn hiu xut l Z. S kt ni ca mch c biu dinthng qua cc cng thc sau:

    BABABABA QQXZQQXDYQQYXD +=+=++= ,)(),)((

    Hy hin thc mch tun t ny ln FPGA.

    Thc hnh thit kt mch s vi HDL 47 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    48/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Bui 3. Lp trnh Verilog vi m hnh cu trcMc ch: Nm vng cc kin thc

    Gii thiu cng c son tho v m phng ModelSim HDLs v Verilog Hin thc cc mch thp v tun tbng verilog Hin thc cc testbench kim th M phng v kim chng thit ktrn ModelSim

    I. Gii thiu ModelSim1. Gii thiu

    ModelSim l mi trng m phng v kim th (debug) phn cng rt thngdng hin nay. y chng ti s dng phin bn ModelSim web 6.1g(ModelSim-Altera 6.1g web edition).

    2. Ci t tin hnh ci t bn ln lt thc hin cc bc sau:

    Bc 1. Nu bn cha c file ci t th c th down load file ci t tihttps://www.altera.com/support/software/download/eda_software/modelsim/msm-

    index.jsp. Bn chn phin bn web 6.1gBc 2. Sau khi c file ci t bn nhp p chut vo file ny. Ca s ci t

    s xut hin.

    Thc hnh thit kt mch s vi HDL 48 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    49/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 62. Ca s ci t ModelSimBc 3. Bn nhn Next tip sang bc k tip.

    Thc hnh thit kt mch s vi HDL 49 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    50/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 63. Ca s ci t ModelSimBc 4. Bn nhn Yes chp nhn cc yu cu v license ca Altera

    Thc hnh thit kt mch s vi HDL 50 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    51/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 64. Ca s la chn thmc ci tBc 5. Tip theo bn nhn Browse la chn ng dn ci t mi hoc c th

    th mc mc nh. Sau nhn Next

    Thc hnh thit kt mch s vi HDL 51 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    52/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 65. La chn tn thmc cho chng trnhBc 6. Tip tc bn nhn Next, hoc nhp tn th mc mi vo.

    Thc hnh thit kt mch s vi HDL 52 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    53/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 66. Tng hp thng tin ci tBc 7. Trong ca s hin th thng tin th mc ci t bn chn Next thc

    hin qu trnh ci t. Thanh process s xut hin cho bit tin trnh ci tphn mm.

    Hnh 67. Thanh process ci tBc 8. Sau khi qu trnh ci t kt thc mt bn thng bo s xut hin. Nu

    bn c file license.dat th chn Yes v b qua quy trnh download file licenset trang web altera. Ngc li nu cha c file ny th bn chn No v sau tinhnh download file license t altera, theo hng dn sau

    Thc hnh thit kt mch s vi HDL 53 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    54/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 68. Ca s thng bo license ca phn mmBc 9. download file license, trc tin bn vo trang ch

    https://www.altera.com ng k account, sau bn vo trang web sau:Bc 10. https://www.altera.com/support/software/download/eda_software/modelsi

    m/dnl-msim-61g.jsp tin hnh download. Trong trang web ny bn chn phinbn Windows (ModelSim-Altera Web Edition) v nh p vo link requires alicense. Trang web s yu cu bn login vo h thng, bn login vo account to ra (nu cha c th ng k mi mt account) sau vo li trang ny down. Trng hp login thnh cng th bn s thy trang web nh sau:

    Thc hnh thit kt mch s vi HDL 54 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    55/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    a ch card mng

    Hnh 69. ng k thng tinBc 11. trang web ny bn nhp a ch card mng ca my mnh vo khung

    NIC number. ng thi la chn option Yes, include a free ModelSim-AlteraWeb Edition License v Academic: Only for academic/education/hobby purposes.

    Sau nhn Continue n nh. Mt email t server sc gi vo email cabn, vo mail v download file license.

    Bc 12. Sau khi download file license bn sa tn file li thnh license.dat v lutrong th mc C:\ModelSim.

    Bc 13. bit c a ch card mng ca mnh th bn vo Start-> Run, g vocmd v nhn enter. Trong ca s mi xut hin bn g lnh ipconfig /all a chcard mng ca my sc hin th nh hnh v:

    Thc hnh thit kt mch s vi HDL 55 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    56/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 70. Xem thng tin card mng ca myBc 14. Sau khi c file license bn tip tc to 2 bin mi trng chn v

    tr ca file license. u tin bn nhp chut phi vo Mycomputer (trn desktop)chn Properties. Trong ca s properties bn chn tab advanced

    Thc hnh thit kt mch s vi HDL 56 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    57/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 71. Ca s thuc tn ca h thngBc 15. Tip tc bn nh p nt vo nt Environment Variables, ca s cha cc

    bin mi trng sc hin th nh hnh v

    Thc hnh thit kt mch s vi HDL 57 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    58/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 72. Ca s bin mi trngBc 16. Trong ca s user variables bn chn nt New to mt bin mi trng

    mi. Ca s to mi s xut hin

    Hnh 73. Hp thoi to mi mt bin mi trngBc 17. Tip bn nh p tn bin l LM_LICENSE_FILE v gi tr bin l

    C:\ModelSim\license.dat, sau nhn OKn nh. Tng t bn to thm mtbin khc c tn l MGLS_LICENSE_FILE v gi tr l C:\ModelSim\license.dat.n y th vic ci c hon tt, chy chng trnh bn ch cn nhp pvo icon ca ModelSim trn desktop.

    3. Hng dnDi y s l quy trnh son tho mt project vi ModelSim.

    Thc hnh thit kt mch s vi HDL 58 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    59/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Bc 1.Nhp p vo icon ca ModelSim trn mn hnh desktop. Ca s lm vicca ModelSim s xut hin nh hnh v.

    Hnh 74. Ca s lm vic ca ModelSimBc 2. to mi mt project bn vo File -> New -> Project (xem hnh).

    Hnh 75. To mi projectBc 3. Trong ca s to mi project bn nhp tn ca project, la chn ni lu

    tr project sau nhn OK to mi project.

    Thc hnh thit kt mch s vi HDL 59 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    60/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 76. Thng tin ca project miBc 4. K, mt ca s cho php to thm cc file vo project xut hin

    Hnh 77. Thm cc file vo projectBc 5. Bn chn Create New File, hp thoi to mi mt file s xut hin

    Hnh 78. Hp thoi to mi fileBc 6. Tip theo bn nhp tn file, chn Browse chn ni lu tr file nyv

    chn kiu file s to ra (chn Verilog, nh trn hnh v). Sau khi to xong bnchn close ng ca s thm file vo project.

    Bc 7.Nhp p vo file mi to tin hnh son tho.

    Thc hnh thit kt mch s vi HDL 60 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    61/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 79. Ca s son thoBc 8. Hnh v trn cha code verilog hin thc mt cng AND 2 ng nhp. Sau

    khi g xong code verilog bn nh p vo nt trn thanh cng c bin dchchng trnh. Ca s lnh s cho bit chng trnh bin dch c thnh cng haykhng (xem hnh).

    Bc 9. Ti p theo kim th ta phi hin thc thm file testbench. FileTestBench ny s s dng chng trnh chnh (cng AND) nh l mt linh kin

    th vin, v nhim v chnh ca file testbench l lm sao to ra y cc khnng c th kim tra tnh ng n ca linh kin test. Cc bc tip theo ys l quy trnh to ra file testbench.

    Bc 10.To mi mt file bn vo File->New->Source->Verilog to mi fileverilog (xem hnh).

    Hnh 80. To mi fileBc 11.Ca s ca file mi to s xut hin, bn nhn Ctrl + S hoc nhp vo biutng trn thanh cng c lu li file mi ny. Khi ca s Save As xuthin bn nhp tn file vo sau nhn Save lu tr file

    Bc 12.K tip bn thm file mi to ny vo project ca mnh bng cch chnFile->Add to Project->Existing File.

    Thc hnh thit kt mch s vi HDL 61 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    62/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 81. Thm file vo projectBc 13.Trong ca s thm file vo project, bn chn Browse tm v tr ca file

    cn thm vo. Trong khung ca s kiu file (add file as type) bn chn loi filecn thm vo (verilog), nhn OKn nh

    Bc 14.Tip theo bn nhp p vo file va mi thm vo bn ca s project, vnhp hin thc code cho file ny.

    Hnh 82. Code verilog file testbenchBc 15.Bin dch file testbench sau nhp vo tab Library. Ton b file trong

    project sc bin dch vo th vin word. Bn m th vin ny s thy ccfile va mi to (xem hnh).

    Thc hnh thit kt mch s vi HDL 62 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    63/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 83. Thvin wordBc 16.Nhp chut phi vo file Testbench v chn Simulate thc hin qu

    trnh simulate (m phng) file testbench.

    Hnh 84. Thc hin simulateBc 17.Ca s Object s xut hin, trong ca s ny bn gi phm Ctrl v nhp

    chut tri chn nhng tn hiu sc v trn gin thi gian.

    Thc hnh thit kt mch s vi HDL 63 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    64/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 85. Chn tn hiu sc v dng sng (gin )Bc 18.Ti p theo trong ca s lnh bn g ln run 199 (nh hn thi gian

    simulate 1 n v chng trnh vn cha dng li).

    Hnh 86. Ca s lnhBc 19.Ca s v gin thi gian s xut hin

    Thc hnh thit kt mch s vi HDL 64 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    65/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 87. Gin thi gian ca cc tn hiuBc 20. kt thc qu trnh simulate bn c th vo Simulate -> End Simulate

    Hnh 88. Kt thc qu trnh simulate

    II.Bi tpBi 1. Hin thc b cng Half-adder bng VerilogBi 2. Hin thc b cng Full-adder t cc b cng Half-adder s dng Verilog.Bi 3. Hin thc cc testbench kim th b cng Half-adderBi 4. Hin thc testbench kim th cho b cng Full-adderBi 5. S dng cc cng primitive thit k mch sau

    Thc hnh thit kt mch s vi HDL 65 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    66/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 89. S kt ni mch

    Vit testbench kim th chng trnh thit k trn.

    Bi 6. Pht trin v kim th bng Verilog mch chuyn i mt m BCD sangm Excess-3 nhchng 3.

    Thc hnh thit kt mch s vi HDL 66 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    67/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Bui 4. M hnh hnh viMc ch:

    Cng ckin thc vHDL v Verilog Thc hin vic np v kim thtrc tip trn FPGA Nm vng quy trnh thit kFPGA Lm quen vi DE2 Sdng Quartus II

    I. Bi tpBi 1. Board DE2 cung c p 18 nt gt (SW0-SW17) v 18 n led (LEDR0-

    LEDR17). Hin thc mt module, v np ln board DE2 cho php s dngcc nt gt iu khin mhoc tt cc n led ny.

    Hng dn: thc hin lnh gn:

    assign LEDR[17] = SW[17]

    assign LEDR[16] = SW[16]

    assign LEDR[0] = SW[0]

    Bi 2. Hin thc mt b mch chn (Multiplexer), gm 3 tn hiu ng nhp X (8bit), Y (8 bit), s (1 bit) v 1 tn hiu ng xut 8 bit M. Nu s = 0 th tn hiung xut M = X, ngc li (s = 1) th M = Y.

    Hng dn: hin thc mt mch chn 2-to-1, ngha l X (1 bit), Y(1 bit), M(1bit). Nu s = 0 th M = X, ngc li M = Y. S mch kt ni nh sau:

    Thc hnh thit kt mch s vi HDL 67 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    68/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 90. Kt ni mch

    Verilog Code: assign m = (~s & x) | (s & y)

    Bi 3. Hin thc mt b chn 5-to-1 (Multiplexer) t 4 b chn 2-to-1 cho phpchn tn hiu ra m t 5 tn hiu nhp u, v, w, x, y v 3 tn hiu iu khin s0,s1 v s2 (m, u, v, w, x, v y u l cc tn hiu 1 bit). B chn hot ng theo

    ng bng thc tr sau:

    Hnh 91. Bng thc tr v s mch

    Hng dn:

    - Hin thc b chn 2-to-1 tng t nh bi 2 (xy dng chng trnh con).

    Thc hnh thit kt mch s vi HDL 68 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    69/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    - Hin thc b chn 5-to-1 bng cch s dng 4 b chn 2-to-1, c kt ninh hnh v:

    Hnh 92. S mch

    Bi 4. Hin thc mch decode led 7 on vi tn hiu nhp l c2c1c0 v tn hiuxut l mt led7 hot ng nh bn thc tr sau:

    Hnh 93. Bng thc tr v s kt ni

    Hng dn:

    -

    Ni c2c1c0 vo cc SW[2:0]- Ni tn hiu xut vo led 7 HEX0[0:6]Bi 5. Hin thc chng trnh verilog thc hin cc chc nng sau:

    Thc hnh thit kt mch s vi HDL 69 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    70/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 94. S kt ni

    - Tn hiu nhp bao gm cc b 3 bit ln lt l SW[0:2], SW[3:5], SW[6:8],SW[9:11], SW[12:14], cc tp bit ny s ln lt cha d liu 100, 011, 010,001, 000 tng ng vi cc k t blank (tt ht), O, L, E hoc H. Cc tn hiuSW[15:17] cho php s chn d liu no sc hin th ln led 7 on

    Bi 6. Mrng bi tp s 5 s dng c 8 led 7 on hin th chui nh sau:

    Hnh 95. Bng thc tr

    Thc hnh thit kt mch s vi HDL 70 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    71/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Bui 5. M hnh hnh vi (tt)Mc ch: Nm vng cc kin thc

    HDLs v Verilog Quartus II Vit chng trnh v kim thtrc tip trn board DE2

    I. Bi tpBi 1. Hin thc mt chng trnh verilog thc hin cc chc nng sau:- Hin th gi tr ca cc switch SW[0:3], SW[4:7], SW[8:11], SW[12:15] ln

    cc led 7 on 0, 1, 2, 3.

    - Chuyn nhng gi tr t cc switch ra gi tr trn cc led 7. Nu gi tr cacc switch l t 10 n 15 th khng cn quan tm

    Bi 2. Hin thc b gii m 4 bit thp lc phn thnh 2 s thp phn hin th trnled 7:

    - Tn hiu nhp l cc switch SW[0:3]- Tn hiu xut l cc led 7 HEX0, HEX1- Hot ng theo bng thc tr sau:

    Hnh 96. Bng thc tr

    Thc hnh thit kt mch s vi HDL 71 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    72/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 97. S kt ni mch

    Hng dn:

    - Thit k b so snh: Comparator, s dng kim tra liu tn hiu nhpv3v2v1v0 c ln hn 9 hay khng. Nu gi tr nhp ln hn 9 th tn hiuoutput ca b so snh ny, z, c tn hiu l 1 v trc tip iu khin cc bchn 2-to-1 (Multiplexer) v iu khin led7 th 2.

    - Thit k mch A, nhn tn hiu nhp v2v1v0 v tn hiu xut l bng tn hiunhp tri 2.

    - Thit k b decode7 nhn tn hiu l m3m2m1m0 v gii m ra led7- Thit k b mch B mch ny iu khin led7 th 2, nu tn hiu nhp l 1 th

    tn hiu xut l gi tr 1 trn led7. Ngc li hin th gi tr 0 trn led7

    Bi 3. Hin thc b cng 4 bit (4bit-Full-Adder) t cc b cng 2 bit (2bit-Full-Adder)

    - Tn hiu nhp l cc switch SW[0:3], SW[4:7], v tn hiu carry-in l SW[8]- Tn hiu xut l cc led n LEDR[0:3], carry-out l LEDR[4]Hng dn:

    Thc hnh thit kt mch s vi HDL 72 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    73/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    - Hin thc cc mch cng 2bit-Full-Adder theo mch sau

    Hnh 98. Bng thc tr v s kt ni mch

    - Kt ni 4 mch cng 2bit-Full-Adder thnh mch cng 4bit-FullAdder theo s sau

    Hnh 99. Mch cng 4-bit Full-Adder

    Bi 4. Hin thc b cng y 4 bit BCD (t 0 n 9) vi c t sau:- Tn hiu nh p l SW[0:3] (A) v SW[4:7] (B), carry-in SW[8] (C), cc tn

    hiu nhp A, B c ni vi cc led n LEDR[0:3], LEDR[4:7] ng thic hin th gi tr ln led 7 on l HEX6 v HEX4. C c ni viLEDR[8].

    - Tn hiu xut (kt qu php cng) c ni vi LEDG[0:3] (S) ng thic hin th ln 2 led7 l HEX1 v HEX0, v carry-out(Co) c ni viLEDG[4].

    Bi 5. Hin thc b chuyn i 6-bit nh phn sang 2 s thp phn v hin thtrn 2 led7 onBi 6. Hin thc mt chng trnh verilog thc hin cc chc nng sau:- Cho php nhp vo 2 s 16 bit, v sau hin th gi tr (thp lc phn) ca 2

    s ny ln led 7 on

    Thc hnh thit kt mch s vi HDL 73 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    74/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    - Tn hiu nhp l SW[0:15], SW[16] cho php quyt nh nhp s no (s thnht hay s th 2). Sau hin th 2 s ny ln led 7, su tin ln HEX0,HEX1, HEX2, HEX3. S th 2 ln 4 led 7 cn li.

    Bi 7. Hin thc bm BCD, cho php tng gi tr ni dung bin m c migiy mt ln

    - Tn hiu KEY0 l tn hiu reset (xa gi trm xung 0)- Cc s BCD sc hin th ln 3 led 7 HEX2-0Bi 8. Hin thc mch trn board DE2, hin th thng tin ngy thng nm- Tn hiu KEY0 l tn hiu reset (xa tt c gi tr xung 0)- Hin th thng tin ln cc led7 on.o Gi: (gi tr t 0 n 23) hin thHEX7-6o Pht: (gi tr t 0 n 59) hin thHEX5-4o Giy: (gi tr t 0 n 59) hin thHEX3-2o Sao: (= 1/100 giy, gi tr t 0 n 99) hin thHEX1-0

    Thc hnh thit kt mch s vi HDL 74 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    75/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Bui 6. My trng thiMc ch:

    Thit ksdng m hnh my trng thi Cng ckin thc l thuyt vcc my trng thi Moore v Mealy Bit cch xy dng mch tcc my trng thi Nm vng kthut rt gn mt my trng thi

    I. Gii thiu1. Gii thiu

    Quy trnh thit k FPGA thng thng kh phc tp i hi ngi thit kphi thng qua kh nhiu bc phc tp. My trng thi l mt trong nhng bctrung gian gip cho qu trnh thit k v hin thc code verilog trnn d dng

    hn i vi ngi lp trnh. Thng thng c 2 dng my trng thi: Moore vMealy. Tuy nhin trong Quartus ch h trmy trng thi Moore. Bi thc hnhny s gip cc bn sinh vin tip cn vi cch thit k HDL theo cch thc ny.

    2. Hng dn to mt my trng thi cc bn thc hin cc bc sau:

    Bc 1. MQuartus v to mi mt project (cch to nh trnh by trong buiu tin)

    Bc 2. K tip bn vo File -> New hoc nhp vo biu tng trn thanh cngc, to mi mt file

    Thc hnh thit kt mch s vi HDL 75 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    76/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 100. To file my trng thi

    Bc 3. Trong ca s to mi file bn chn loi State Machine file, sau nhnOK. Ca s son tho s xut hin nh hnh v

    Thc hnh thit kt mch s vi HDL 76 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    77/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Thanh cng c

    Ca s project

    Ca s lm vic

    Hnh 101. Ca s lm vicBc 4. Di y l mt vi cng c h trcho vic thit k mt my trng thi c

    trn thanh cng c

    a. (Selection tool): Cng c la chn cc thnh phn trong my trng thib. (Zoom tool): Cng c phng to hay thu nh.c. (State tool): Cng c v trng thid. (Transition tool): Cng c vng chuyn trng thie. (State table): Cng cn/hin bng trng thif. (State machine wizard): Cng c to my trng thi bng ca s wizardg. (Insert input port): cng c thm cng nhph. (Insert output port): cng c thm cng xuti. (Generate HDL file): Cng c chuyn my trng thi thnh code verilog,

    HDL,

    j. (Transition Equation): Cng c n/hin biu thc trn cc cnh chuyn trngthiCc bc tip theo s l quy trnh to ra mt my trng thi c kh nng nhn

    din chui 2 bit 1 lin tip. Sau chuyn file ny thnh code verilog.Bc 5. Bn nhp vo cng c (State tool) sau v 3 trng thi nh hnh v

    Thc hnh thit kt mch s vi HDL 77 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    78/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 102. To cc trng thi

    Bc 6. Tip theo bn nhp vo cng c (Transition tool) v drag chut t trngthi ny n trng thi state1 n trng thi state2 hnh thnh ng chuyntrng thi t trng thi state1 sang trng thi state2. Tng t ta vc mytrng thi nh hnh v (trng hp nu vng chuyn trng thi vo chnh nth ch cn chn cng c transition tool, sau nhp chut tri vo trng thi ).

    Hnh 103. To cc ng chuyn trng thi

    Thc hnh thit kt mch s vi HDL 78 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    79/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Bc 7. Tip theo bn nhp vo biu tng (Insert input port) thm mt tnhiu nhp v click vo biu tng (Insert output port) thm mt tn hiuxut

    Bc 8. Nhp vo biu tng (State table) hin th bng trng thi (nu bngny bn i). Trong ca s trng thi ny chn tab Transition (xem hnh)

    Hnh 104. Thit lp biu thc chuyn trng thiBc 9. Nhp tn hiu tn tn hiu nhp vo (input1). Trng hp nu ng

    chuyn trng thi ny ch bnh hng bi duy nht mt tn hiu nhp (input1)th:

    a. Nu chuyn trng thi xy ra khi gp mt tn hiu 0 th nhp tn tn hiu vo(input1)

    b. Nu chuyn trng thi xy ra khi gp tn hiu nhp l 1 th nhp tn tn hiu vpha trc c du ~ (~input1, o tn hiu input1)

    Trng hp ng chuyn trng thi bnh hng bi nhiu tn hiu th thmdu & gia cc tn hiu (v d: input1 & input2).

    Bc 10. Tng t nh vy i vi cc ng chuyn trng thi khc.Bc 11. K tip bn chn trng thi state1 sau nhp chut phi chn properties.

    Ca s properties s xut hin, bn chn tab Action (xem hnh)

    Thc hnh thit kt mch s vi HDL 79 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    80/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 105. Thit lp tn hiu xut v action ca mi trng thiBc 12. Trong ct Output Port bn chn tn hiu xut, ct Output Value bn thit

    lp gi tr xut ra cho trng thi . Sau nhn OKBc 13. Lp li thao tc ny cho 2 trng thi cn li.

    a. State1: Output Port l output1, v Output Value l 0b. State2: Output Port l ouput1, v Output Value l 0c. State3: Output Port l output1, v Output Value l 1

    Bc 14. Cui cng bn sc my trng thi nh hnh v:

    Hnh 106. My trng thi

    Thc hnh thit kt mch s vi HDL 80 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    81/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Bc 15. Nhn Ctrl + S, hoc nhp vo biu tng trn thanh cng c lu limy trng thi ny vi tn l Machine11.smf. Tip theo bn nhn vo biu tng

    (Generate HDL file) trn thanh cng c. Khi bn thng bo sinh file HDL xuthin bn nhp vo la chn Verilog HDL sau nhn OK, Quartus s sinh ra mtfile Verilog (Machine11.v) t s my trng thi ny.

    Hnh 107. Chuyn my trng thi sang nh dng ca ngn ngthit kt phn cn

    Thc hnh thit kt mch s vi HDL 81 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    82/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 108. Code verilog c to ra tmy trng thi

    Bc 16. K tip bn to mt file mi bng cch nhp vo biu tng to ramt file verilog mi. File ny s l file chnh ca project n s s dng linh kinMachine11 tao ra nh l mt thit b bnh thng.

    Bc 17. Hon tt code cho file verilog mi to ra ny (xem code).

    Thc hnh thit kt mch s vi HDL 82 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    83/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 109. Chng trnh chnhBc 18. Lu li file ny vi tn trng vi tn ca project, ng thi nhp chut

    phi vo file v chn la chn Set as Top-Level Entity.

    Hnh 110. Thit lp top-levelBc 19. Import file cu hnh chn DE2_pin_assignment.csv cho project nh

    hng dn nhng phn trc. Sau bin dch v np xung board DE2 kim th.

    II.Bi tpBi 1. Cho s my trng thi sau:

    Thc hnh thit kt mch s vi HDL 83 KTMT

  • 8/7/2019 Thit k mch s vi HDL

    84/84

    H. Bch Khoa TP.HCM Khoa KH&KTMT

    Hnh 111. Lu trng thi

    a.

    Hy hin thc my chuyn trng thi ny ln DE2b. Hy v bng trng thi v sd mch ca my trng thi trn.

    Bi 2. Thit k mt mch tun t cho php kim tra chui 1001. V hin thcn ln board DE2 kim th.