°ò¤_FPGAªº¼Æ¦r«H¸¹³B²z¡]²Ä2ª©¡^ ( ²Åé ¦r) |
§@ªÌ¡G°ª¨Èx | Ãþ§O¡G1. -> ¹q¤l¤uµ{ -> FPGA |
ĶªÌ¡G |
¥Xª©ªÀ¡G¹q¤l¤u·~¥Xª©ªÀ | 3dWoo®Ñ¸¹¡G 41984 ¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I¡i¯Ê®Ñ¡j ¡i¤£±µ¨üqÁÊ¡j |
¥Xª©¤é¡G7/1/2015 |
¶¼Æ¡G436 |
¥úºÐ¼Æ¡G0 |
|
¯¸ªø±ÀÂË¡G |
¦L¨ê¡G¶Â¥Õ¦L¨ê | »y¨t¡G ( ²Åé ª© ) |
|
¡i¤£±µ¨üqÁÊ¡j |
ISBN¡G9787121263583 |
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç |
(²Åé®Ñ¤W©Òz¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, YŪªÌ»Ýn½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ) |
§@ªÌ§Ç¡G |
ĶªÌ§Ç¡G |
«e¨¥¡G±À ÂË §Ç ÀHµÛFPGA¾¹¥ó³W¼Ò¤Î©Ê¯àªº¤£Â_´£¤É¡A¥¦¤w¸g¶V¨Ó¶V¼sªx¦aÀ³¥Î¤_¦UÃþ¦æ·~À³¥Î¤¤¡A¤×¨ä¬O¦b¤@¨Ç°ª©Ê¯àpºâªºÀ³¥Î¤¤¡AFPGA§êºt¤F¤Q¤À«nªº§@¥Î¡C¤£¦P¤_³q¥ÎªºDSP³B²z¾¹µ²ºc¡AFPGA¤º³¡¶°¦¨¤FÂ×´IªºDSP¥\¯à³æ¤¸¥H¹ê²{°ª³t¦}¦æ¹Bºâ¡A¦Ó§@¬°¤@¦WFPGAªº³]p¤Hû¡A¦p¦ó¥R¤À§Q¥Î³o¨ÇDSP¥\¯à³æ¤¸´N¦¨¬°¹ê²{³Ì²×©Ê¯àªºÃöÁä©Ò¦b¡C°ª¨Èx¥ý¥Íªº³o¥»®Ñ´N§¹¬ü¦a¸Ñ¨M¤F³o¤@°ÝÃD¡A¥L§Q¥Î¨äÓ¤H¦h¦~±q¨ÆFPGA³]p¬ãµo¡B§Þ³N¤ä«ùªºÄ_¶Q¸gÅç¡A±N¤@¨Ç¬Ý¦ü´_Âøªº°ÝÃD²`¤J²L¥X¦aªíz¥X¨Ó¡C¦b³o¥»®Ñ¤¤¡A§@ªÌ¤£¶È¤¶²Ð¤F¾¹¥ó©³¼hµw¥óµ²ºcªº¯SÂI¤Î³n¥ó¶}µo¤u¨ãªº¨Ï¥Î§Þ¥©¡A¤]ªá¤F¤j¶q½g´T¤¶²Ð¦p¦ó¦³®Ä¦a§Q¥ÎFPGA¨Ó¹ê²{±`¥Îªº¤@¨Ç¼Æ¦r«H¸¹³B²z¹Bºâ¥\¯à¡A¦P®É¡A¥»®Ñ¤¤©Ò´£¨Ñªº¤j¶qS¨Ò¤Î¤@¨Ç¹ê¥Î§Þ¥©¬Û«H¤]·|µ¹ÅªªÌ±a¨Ó«Ü¦hª½±µªºÀ°§U¡C ¥»®Ñ«D±`¾A¥Î¤_FPGA¬ãµo¤uµ{®v¤Îµw¥óºâªk¤uµ{®v¡A¦P®É¹ï¨ä¥L¬ÛÃöªº¤uµ{§Þ³N¤Hû¤Î¬ã¨s¤Hû¤]·|¦³©ÒÀ°§U¡C
±i ¹ç ÁÉÆF«ä¹q¤l¬ì§Þ¡]¤W®ü¡^¦³¤½¥q ¨È¤Ó°ÏÀ³¥Î©Ý®i¸g²z §Ç ¦b·í«e¤j²³³Ð·~¡B¸U²³³Ð·sªº·s§Î¶Õ¤U¡A¨Ì¦«¤¬Ápºô©M¤j¼Æ¾Úªº¤u·~4.0®É¥N¤w¸g¨ì¨Ó¡Cn¹ê²{´¼¼z¤u¼tªº´¼¯à¤Æ¥Í²£¡A»Ýn§Q¥Î¼s°ì¤À¥¬ªº±´´ú³]³Æ¡A³q¹L¼e±a²¾°Êªº¤¬Ápºôµ¸¡A°õ¦æ´¼¯à¿Ä¦XªºªA°È¾÷¨î¡A¶i¦æ±M®aª¾ÃѪº·|¶E§P¨M¡A¤~¥i¯à¨ã³Æ´¼¼zªº¯S©º¡C¦b¹ïÀò¨úªº«H®§¶i¦æ¼Æ¦r³B²z©M¼Æ¾Ú¿Ä¦X®É¡A¼Æ¦r«H¸¹³B²z¡]DSP¡^§Þ³N¬O¥²¤£¥i¯Êªº¤â¬q¡A¦Ó¥BÀHµÛ¦UºØÀ³¥Îªº§Ö³tµo®i¡An¨D³B²zªº³t²v©M¹F¨ìªº©Ê¯à¤£Â_´£°ª¡A³o»Ýn³q¹Lµw¥ó©M³n¥ó¨âӤ豨ӹê²{¡C ¥Ø«e¥b¾ÉÅé¤uÃÀ¤w¹F¨ì28nm¬Æ¦Ü§ó¤pªº¤Ø¤o¡AXilinx¤½¥q¦b±À¥X°ïÅ|ªº3D «Ê¸Ë¥þ¥i½sµ{FPGA ©M´O¤JÂù®ÖARM CortexA9ªº¥þ¥i½sµ{SOC¤§¦Z¡A¤S±À¥X¨ã¦³ASIC¯Å§OÀu¶ÕªºUltraSCALE FPGA ©MUltraSCALE MPSOCµ¥¾¹¥ó¡A³o¨Ç¾¹¥ó¤ºªºÅÞ¿è³æ¤¸¥i¹F¨ì4¸UÓ¡ADSP¼Ò¶ôªº¼Æ¶q³Ì¦h¹F¨ì11904Ó¡A³Ì°ªªº©Ê¯à¹F¨ì21213 GMAC¡A³o·¥¤j¦a´£°ª¤FDSPªº³B²z¯à¤O¡A©Ò¥HFPGA¬O¦W°Æ¨ä¹êªº¦}¦æ³B²z¤ÞÀº¡C¦Ó¥t¤@¤è±¡AFPGA¤S¨ã³Æ²{³õ¥i½sµ{ªº¯S©Ê¡A¥i¥H¸`¬Ù²£«~§ë¸êªº¦¨¥»¡AÁYµu¤F²£«~ªº¤W¥«®É¶¡¡A¥[§Ö¤F¾AÀ³¤£¦P¥Î¤á»Ý¨Dªº¨B¥ï¡A¨Ï¤§¦¨¬°ASIC ªº¦³¤OÄvª§¹ï¤â¡C ¦b³]p¤u¨ã¤è±¡AXilinx¤½¥q¤]±À¥X¤F·s¤@¥Nªº¶}µo¤u¨ãVivado¡C¬°¤F¨ÏFPGA¦¨¬°¶}µo¼Æ¦r«H¸¹³B²z¨t²Îªº³]p¥»O¡A°w¹ï¥HDSPºâªk¬°¥Dªº³]p¡A±À¥X°ª¼h¦¸ºî¦X¤u¨ãVivado HLS¥H¤ÎSystem Generator¡]SysGen¡^µ¥¤u¨ã¡C«eªÌ¥i¥H¹ê²{±qC»y¨¥´yzªººâªk¨ìRTL¯Åºôªí¤å¥óªºÂà´«¡A¦ZªÌ¥i¥H³q¹L°ò¤_¼Ò«¬ªº³]p¤èªk¥é¯u©MÀu¤Æ¨t²Î¼Ò«¬¦}¦Û°Ê¥Í¦¨RTLºôªí¤å¥ó¡AÀ³¥Î³o¨Ç¥Í¦¨ªººôªí¤å¥ó¥i¥Hª½±µ¶i¦æFPGAªºµw¥ó¹ê²{¡A¤£¶È¥[§Ö¤F³]pªº¹Lµ{¡A¦Ó¥BÁÙ¯à«OÃÒ³]pªº¥¿½T©Ê¡A¦P®É´î¤Ö³]pªº¡¥N¹Lµ{¡C °ª¨Èx½s¼gªº¡m°ò¤_FPGAªº¼Æ¦r«H¸¹³B²z¡n¡]²Ä2ª©¡^¤@®Ñ¦b²Ä1ª©ªº°ò¦¤W¼W¥[¤F³\¦h¤º®e¡A¥R¹ê¤F§ó¦hªº³]pS¨Ò¡C¥þ®Ñ²n¤¶²Ð¤F³Ì·sªºXilinx 7¨t¦CFPGA¬[ºc¡BVivado³Ì·s³]p¤u¨ãªº¶}µo¬yµ{¥H¤Î·sªº¶°¦¨ÅÞ¿è¤ÀªR»ö¡]ILA¡^©MµêÀÀ¿é¤J/¿é¥X¡]VIO¡^½Õ¸Õ¤u¨ã¡A¤ÀªR¤F¼Æ¦r«H¸¹³B²z¨t²Îªº¬[ºc¡B©Ê¯à©M¼Æ¾Ú®æ¦¡µ¥¡C¦b¦¹°ò¦¤W²`¤J¤ÀªR¤F°ò¤_FPGA¹ê²{¦UºØ¼Æ¦r«H¸¹³B²zºâªkªº¤uµ{¹ê¨Ò¡A¥]¬A°ò¥»ªº¥[´î¼°£¡B²Ö¥[¡B¶}¤è©MCORDICµ¥DSPºâªk¡A ¥H¤Î¸g¨åªºFIRÂoªi¾¹¡B¼Æ¦rÀW²v¦X¦¨¾¹¡B¦h¬ÛÂoªi¾¹¡BCICÂoªi¾¹©M°ò2/°ò4 FFTµ¥DSPºâªk¡A§@ªÌ¹ïºâªk§@¤F¸ÔºÉªº²z½×¤ÀªR¡Aµ¹¥X¬M®g¨ìFPGA ¬[ºcªº³]p¤è®×¥H¤Î¹ïÀ³¨ìSysGenªº³]p¼Ò«¬©ÎMatlabµ{§Ç¥N½X¡C¹ï¤_ŪªÌ¡AµL½×¬O§Q¥ÎMatlab©MSimulinkªº°ò¤_¼Ò«¬ªº³]p¤èªkÀò±oºôªí¤å¥ó¡A©ÎªÌ§Q¥ÎIP®w¤¤ªºDSP®Ö¶i¦æ°Ñ¼Æ³]¸m¡A³o¨Ç¤º®e³£¬O¶i¦æDSP¨t²Î³]p¸ÔºÉªº³]p«ü¾É©M°Ñ¦Ò¡A¶i¤@¨B¥i¥H¤è«K¦a§¹¦¨FPGAªºµw¥ó¹ê²{¡CÄݤ_Xilinx ªºUltraFastªº³]p·Ç«h©M½s½X·®æ¦b³Ì¦Z¤@³¹¤]§@¤F¸ÔºÉªº¤ÀªR¡A¥]¬A±q¨t²Îªº¨¤«×¹ï¦P¨B©M²§¨B®ÉÄÁ«H¸¹¡B´_¦ì«H¸¹ªº³]p¦Ò¼{¡A¥H¤Î±qµw¥ó¸ê·½ªº¨¤«×¨Ï½s½X·®æ©Mºâªk¬M®g¯à°÷»PFPGA ªº¬[ºc¬Û¾AÀ³¡AŪªÌ¥i¥H¿í±q³o¨Ç«OÃÒ³]p¦¨¥\ªºÃöÁän¨D¡A§Q¥Î¥»®Ñ¤¤´£¨Ñªº°ò¥»ºâªk©M¸g¨åºâªk¬°°Ñ¦Ò¡A³Ð·s¦aºc«Ø¹ê»ÚÀ³¥Î©Òn¨Dªº¦UÃþ¤£¦PDSP¨t²Î¡C ³n¥ó¡Bµw¥ó©MI/O§¡¥i½sµ{ªº¥þ¥i½sµ{FPGA¤w¸g¶V¨Ó¶V¼sªx¦a¦bDSP³]p¤¤±o¨ìÀ³¥Î¡C¥»®Ñ¹ïŪªÌ§Q¥ÎFPGA¹ê²{¼Æ¦r«H¸¹³B²z¨t²Î¬O¤@¥»«Ü¦nªº³]p«ü¾É©M°Ñ¦Ò®ÑÄy¡C
©s¾Ë¤¸ 2015¦~4¤ë10¤é¤_²MµØ¶é
«e ¨¥ ±q20¥@¬ö80¦~¥N²Ä¤@ÁûFPGA²£¥Í¨ì¥Ø«e¬°¤î¡AFPGA´N±q¥¼°±¤î¨ä§Ö³tµo®iªº¨B¥ï¡C¦Ó´N¦bèè¹L¥hªº¤T¦~¨½¡A¥b¾ÉÅé·~¬Éµo¥Í¤F¤T¦¸¨ã¦³¨½µ{¸O·N¸qªº¨Æ¥ó¡GXilinx¤½¥q±À¥X¤F²Ä¤@¥N3Dªä¤ù¡A¨Ï±oFPGA¤º³¡ÅÞ¿è³W¼Ò¹F¨ì¤F2M¡FXilinx¤½¥q±À¥X¤F´O¤JÂù®ÖARM Cortex-A9ªº¥þ·s¤@¥N¤ù¤W¥i½sµ{¡]SoC¡^FPGA¡A¶i¤@¨B´£¤É¤FFPGAªº¥\¯à©M¶°¦¨«×¡A¦³§U¤_PCBªº¤p«¬¤Æ¡FXilinx¤½¥q±À¥X¤F·s¤@¥N¶}µo¤u¨ãVivado¡A¦³¤O¤ä«ù7¨t¦CFPGA¡A´£°ª¤F¥Í²£®Ä²v¡C¦¹¥~¡AXilinx¤½¥qÁÙ±À¥X¤F°ª¼h¦¸ºî¦X¤u¨ãVivado HLS¡A¹ê²{¤F±qC/C++¨ìRTLªºÂà´«¡A¦³§Q¤_´_ÂøºâªkªºFPGA¹ê²{¡CµL½×¬OFPGAªº¤uÃÀ¤ô¥ÁÙ¬O¨ä¶}µo¤u¨ã¡A³£¦³¤Fªø¨¬ªºµo®i¡A³o¬°¥HFPGA¬°¥»Oªº¼Æ¦r«H¸¹³B²z¨t²Îªº¶}µo´£¨Ñ¤F±j¤jªº¤ä«ù¡A¤]¥[³t¤F¼Æ¦r«H¸¹³B²z¨t²Î¬[ºcªºÅܲ¡A¦P®É¤]¨Ï±oFPGA¦b§ó¦hªº»â°ìÀò±oÀ³¥Î¡C ¥»®Ñ¥H¼Æ¦r«H¸¹³B²z²z½×¬°°ò¦¡Aµ²¦XXilinx 7¨t¦CFPGA¬[ºc¡A²`¤J±´°Q¤F°ò¤_FPGA¹ê²{¦UºØ¼Æ¦r«H¸¹³B²zºâªkªº¤uµ{¤èªk¡A³o¨Çºâªk¬J¥]¬A¶Ç²Îªº°ò¥»ºâªk¡]¦pFIR¼Æ¦rÂoªi¾¹¡B¼Æ¦rÀW²v¦X¦¨¾¹µ¥¡^¡A¤]¥]¬A¸û¬°´_ÂøªºFFTºâªk¡F¬J¯A¤Î³æ³t²v¨t²Î¤]¯A¤Î¦h³t²v¨t²Î¡F¬J¦³§»Æ[¤Wªº²z½×Á¿¸Ñ¡A¤]¦³·LÆ[¤Wªº¤uµ{¹ê²{²Ó¸`©M§Þ¥©ªº»¡©ú¡A¦P®É±NFPGA³]p«ä·Q¦³¾÷¦a³e¬ï¨ä¤¤¡C¥þ®Ñ¦@¤K³¹¤º®e¡C¨ä¤¤¡A²Ä1³¹±q¤º³¡µ²ºc¡B³]p¬yµ{¡B½Õ¸Õ¤èªk¤TӤ豤¶²Ð¤FFPGA§Þ³N²{ª¬¡F²Ä2³¹¤¶²Ð¤F¥HFPGA¬°¥»Oªº¼Æ¦r«H¸¹³B²z¨t²Îªº³]p¤èªk©Mª`·N¨Æ¶µ¡F²Ä3³¹¤¶²Ð¤F¼Æ¦r«H¸¹³B²z¤¤ªº°ò¥»ºâªk¦bFPGA¤Wªº¹ê²{¤èªk¡A±q²³æªº¥[ªk¹Bºâ¨ì¸û¬°´_ÂøªºCORDICºâªk³£²[»\¨ä¤¤¡F²Ä4³¹¦Ü²Ä7³¹µ²¦X¤j¶q¹ê¨Ò«ÂI¤¶²Ð¤F¼Æ¦r«H¸¹³B²zªº¸g¨åºâªk¦bFPGA¤Wªº¹ê²{¤èªk¡A¥]¬AFIRÂoªi¾¹¡Bª½±µ¼Æ¦rÀW²v¦X¦¨¾¹¡B¦h¬ÛÂoªi¾¹¡BCICÂoªi¾¹¡B¥b±aÂoªi¾¹©MFFTºâªkµ¥¡C²Ä8³¹Á¿z¤Fªö¥ÎXilinx FPGA¹ê²{¼Æ¦r«H¸¹³B²zªº¤@¨Ç²Ó¸`°ÝÃD¡A¨ÏŪªÌ¯à°÷²`¤J²z¸ÑFPGAªº©³¼h¬[ºc¡AÆF¬¡¹B¥ÎFPGA¤º³¡¦UºØ¸ê·½¡A±q¦Ó¨Ïºâªkµ²ºc¥i¥H«Ü¦n¦a¬M®g¨ìFPGA©³¼h¬[ºc¤¤¡C ·PÁ²MµØ¤j¾Ç¹q¤l¤uµ{¨t©s¾Ë¤¸±Ð±Â¬°¥»®Ñ¼¶§Ç¡A·PÁÂÁÉÆF«ä¹q¤l¬ì§Þ¡]¤W®ü¡^¦³¤½¥q¨È¤Ó°ÏÀ³¥Î©Ý®i¸g²z±i¹ç¥ý¥Í¬°¥»®ÑÃD¼g±ÀÂË»y¡C ¦¹¥~¡A§@ªÌÁÙn·PÁÂÁÉÆF«ä¹q¤l¬ì§Þ¡]¤W®ü¡^¦³¤½¥q¥_¤¤°ê°Ï´ë¹D¾P°â¸g²z¤ý¼y®ü¥ý¥Í¡B¨È¤Ó°Ï¥«³õ¶Ç¼½¸g²z±i«T°¶¤k¤h¡B¤j¾Çp¹º¨È¤Ó°Ï¸g²z³°¨ÎµØ¥ý¥Í¡B¬ì³q¼Æ¦r§Þ³N¡]»´ä¡^¦³¤½¥q°ª¯ÅÁ`ºÊÁ³¹¥ß¥ý¥Í©M¹q¤l¤u·~¥Xª©ªÀ¹q¤l«H®§¥Xª©¤ÀªÀªÀªø¤ý·q´É¥ý¥Í¡A·PÁ§A̪º¤j¤O¤ä«ù©MÀ°§U¡I »P²Ä1ª©¬Û¤ñ¡A²Ä2ª©ªº¾ãÅé®Ø¬[¦}¨S¦³ÅܤơA¦ý¨C³¹³£¼W¥[¤F·sªº¤º®e¡C³o¨Ç·sªº¤º®e¨Ï±o¥»®Ñ§ó¥[Â׬աA¦ý§Y«K¦p¦¹¡A¤]Ãø§K¦³¤£¨¬¤§³B¡C¦pªG±z¦b¾\Ū¹Lµ{¤¤µo²{¥ô¦ó¿ù»~©Î¹ï¦Aª©¦³¥ô¦ó«Øij¡A½Ðµo°e¶l¥ó¦Ügao_xilinx@126.com¡C
½sµÛªÌ
¦Z °O ¤T¦~¡A¡m°ò¤_FPGAªº¼Æ¦r«H¸¹³B²z¡n²Ä1ª©¥Xª©¡F¦A¤T¦~¡A¡m°ò¤_FPGAªº¼Æ¦r«H¸¹³B²z¡n²Ä2ª©§¹¤u¡CÂIÀ»¶l¥óµ¹¥Xª©ªÀµo°e¤å½Z®É¡A¤ß¤¤¦}¨S¦³µ·²@¦pÄÀ«tªº·Pı¡A¸£®ü¨½¯B²{ªº¬O²Ä3ª©À³¸Ó¸É¥Rªº¤º®e¡K¡K ²@¤£¦j±i¦aÁ¿¡A³o¤T¦~·í¤¤¡A°£¤F°µ¦n¥»Â¾¤u§@©M¿ý¨îºôµ¸½Òµ{¡§Vivado¤Jªù»P´£°ª¡¨¡A¯à©â¥X¨Óªº®É¶¡³£¥Î¤_¼g§@¥»®Ñ¤F¡C¦³¨Ã䪺ªB¤Í¥]¬A¤@¨Ç¦P¤¯³£¤£¸Ñ¦a°Ý¹L¡G¬°¤°¤\¦Aª©³ºµM¤S¥Î¤F¤T¦~¡H³o¨ä¤¤ªºì¦]·íµM¤£¬O¤@¥y¸Ü¯à»¡²M·¡ªº¡C¥u¯à»¡¦p¦¹¯Ó®É³Ì¥Dnªºì¦]¬O¡A²Ä2ª©¼g±o§óÁ}Ãø¡A¨C¤@Ó³¹¸`³£³¡¤À©Î¥þ³¡¥X²{¹L«¼g¡C®Ú¾Ú¾ãÅ骺«ä¸ô¤@Ãä¼g¤@ÃäµZ¿i¡AÁ`·QµÛªí¹FªººÉ¶q²M´·¤S¤£Åã·Ðº¾¡A¯à¦b¤@©wµ{«×¤WÀ°§U¨º¨Ç¦p§Ú·í¦~¨«¦b¤Jªù±´¯Á¤§¸ôªº¤H¡C¤_¬O±`±`¦b¼g§@¹Lµ{¤¤²`·P¦Û¤v»y¨¥ªº¹¼¥F¡A¤S·Q¨ìÕYº¡½g³£¬O¤å¦r¡A¬O§_·|Åã±o³æ¤@¦Ó¬\Àê¡AŪªÌ¬O§_·|ı±o¯ÁµMµL¨ý¡A©Î¤£ª¾©Ò¤ª¥H¦Ü¤_µLªk¹ý©³²z¸Ñ¡C¦n¦bÁÙ¦³¨ä¥Lªºªí¹F¤è¦¡¡AÄ´¦p¹Ï¡Bªí©Mµ{§Ç¡C¥»®ÑÁ`¦@¦³592±i¹Ï¡B134Óªí¡B53ÓMatlab¥N½X¡B42ÓSystem Generator¼Ò«¬¡B9ÓVHDL¥N½X©M6ÓTcl¸}¥»¡C°l¨D¹Ï¤å¦}Z¡A³o¤]¬O§Ú¼g§@¥»®Ñ¹ï¦Û¤v´£¥Xªº¤@Ón¨D¡C ¤£±o¤£·P¹Ä¡Aµw¥ó¬ÛÃöªº®Ñ¯uªº¤£¦n¼g¡C¼g¨ì¤F¬YÓ²Ó¸`³Bµo²{¬O¤£¬O¬[ºc¦p¦¹³o¯ë§ï°Ê¤@¤U·|§ó²M´·¡F¹Ï¡Bªí±q¥t¤@Ó¨¤«×µe¬O¤£¬O·|§ó¥Í°Ê¡A¦³®É¬Æ¦Üµe¥X¨â´T¹Ï¹ï¤ñ¾Ü¨äÀu¡F¦A¥[¤W®Ñ¤¤©Ò¦³¤Þ¥Îªº¤½¦¡¡A¥þ³¡¸g¹L¤F«·sÅçÃÒ¡C®a¤H¤]´¿°Ý¡A¦³¥²n¦p¦¹¶Ü¡H³o¼Ë°µ¡A¥u¬O¬°¤F¹ý©³·d²M§ËÀ´¡A¹ï¦Û¤v¬O´£°ª¡A¹ïŪªÌ¬Ot³d¡C§Ú¥»¬O»{¯uªº¤H¡A¦Ó¼g®Ñ°µ¾Ç°Ý§ó¬O¦º½W¡C²öY³o¯ë¡A¤]´N¹ï¤£°_¤@ª½¥H¨Ó¤ä«ù§Ú¬Û«H§ÚªºªB¤Í̤F¡I ´X¦~«e¡A¦ñÀHµÛ¡§¤¤°ê¹Ú¡¨¤§·¡A²Ä¤@¦¸³Q°Ý¤Î¨º¥y¡§§Aªº¹Ú·Q¬O¤°¤\¡¨®É¡A¡§¼g®Ñ¡A¾Ç²ß¡A¦A¼g®Ñ¡¨§Ú¤£°²«ä¯Áªº²æ¤f¦Ó¥X¡C¦ó¨ä©¯¡A·í¦~¿ï¾Ü¤F¡§¹q¤l¤uµ{¡¨³oÓ§Ú²`·Rªº±M·~¡C¡§¸ôº©º©¨ä×»·¤¼¡A§^±N¤W¤U¦Ó¨D¯Á¡¨¡A¥¼¨Óªº§Ú¥²±N·|§ó¥[¥Î¤ß¡B¶Vµo§V¤O¡A¥H·PÁ©M¦^³ø¤@¸ô¤W¤ä«ù©MÀ°§U§Úªº¿Ë¤H¡BªB¤ÍÌ¡I °ª¨Èx 2015¦~4¤ë1¤é |
¤º®e²¤¶¡G¥»®Ñ³ò¶Xilinx·s¤@¥N28nm¤uÃÀªä¤ù7¨t¦CFPGA¡Aµ²¦XXilinx·s¤@¥N¶}µo¤u¨ãVivado¥H¤Î°w¹ïºâªk¶}µoªºVivado HLS©MSystem Generator¡AÁ¿¸Ñ¤F¼Æ¦r«H¸¹³B²z¤¤ªº¸g¨åºâªk¦bFPGA¤Wªº¹ê²{¤èªk¡C²Ä2ª©«O«ù¤F²Ä1ª©ªº¥DÃD¡X¡X¦p¦ó±N²z½×ºâªkÂà¤Æ¬°¤uµ{¹ê²{¡A·s¼W¤FºâªkªºMatlab¥N½X´yz¡F¼W¥[¤F³¡¤ÀºâªkªºSystem Generator¼Ò«¬¡C Á¿¸Ñ¤FFPGA¹ê²{®Éªº¤@¨Ç²Ó¸`°ÝÃD¦p´_¦ì¡B¸ó®ÉÄÁ°ì³]pµ¥¡C |
¥Ø¿ý¡G²Ä ³¹ ²{³õ¥i½sµ{ªù°}¦C§Þ³N¤ÀªR 1 1.1 FPGA¤º³¡µ²ºc¤ÀªR 1 1.1.1 FPGA¦b¤j³W¼Ò¶°¦¨¹q¸ô¤¤ªº©w¦ì 1 1.1.2 ¶Ç²ÎªºFPGA¤º³¡µ²ºc¤ÀªR 2 1.1.3 SoC FPGA¤º³¡µ²ºc¤ÀªR 7 1.2 FPGA³]p¬yµ{¤ÀªR 9 1.2.1 ¶Ç²ÎªºFPGA³]p¬yµ{ 9 1.2.2 SoC FPGA³]p¬yµ{ 13 1.3 FPGA½Õ¸Õ¤èªk¤ÀªR 16 1.3.1 ILA¨Ï¥Î¤èªk 16 1.3.2 VIO¨Ï¥Î¤èªk 18 °Ñ¦Ò¤åÄm 19 ²Ä ³¹ ¸ó¶VÂE·¾¡G±qºâªk¨ìµw¥ó¹ê²{ 20 2.1 ¼Æ¦r«H¸¹³B²z¨t²Î¬[ºc¤ÀªR 20 2.2 ¼Æ¦r«H¸¹³B²z¨t²Î³]p¤èªk 24 2.2.1 ¶Ç²ÎªºRTL³]p¤èªk 24 2.2.2 °ò¤_¼Ò«¬ªº³]p¤èªk 27 2.2.3 °ª¼h¦¸ºî¦X³]p¤èªk 30 2.2.4 ¤TºØ³]p¤èªkªº¿Ä¦X 32 2.3 FPGA³]p©Ê¯à´yz«ü¼Ð 33 2.4 FPGA³]p¤¤ªº¼Æ¾Ú®æ¦¡ 36 2.4.1 ¯BÂI¼Æ°ò¦ª¾ÃÑ 36 2.4.2 ©wÂI¼Æ°ò¦ª¾ÃÑ 39 2.4.3 ¯BÂI¼Æ»P©wÂI¼Æªº¤ñ¸û 44 2.4.4 ¯BÂI¼Æ¨ì©wÂI¼ÆªºÂà´« 45 2.5 Xilinx¶}µo¤u¨ã¹ï¯BÂI¼Æ»P©wÂI¼Æªº¤ä«ù 47 2.5.1 System Generator¹ï¯BÂI¼Æ»P©wÂI¼Æªº¤ä«ù 47 2.5.2 Vivado HLS¹ï¯BÂI¼Æ»P©wÂI¼Æªº¤ä«ù 51 °Ñ¦Ò¤åÄm 53 ²Ä ³¹ ¼Æ¦r«H¸¹³B²z¤¤ªº°ò¥»¹Bºâ 54 3.1 ¥[ªk¹Bºâ 54 3.1.1 ¤@¦ì¥þ¥[¾¹ 54 3.1.2 ¤G¶i¨î¥[ªkì²z 55 3.1.3 ´_¼Æ¥[ªk 58 3.1.4 ¥[ªk¾ð»P¥[ªkÃì 59 3.2 ²Ö¥[¹Bºâ 60 3.2.1 ²Ö¥[ì²z 60 3.2.2 ¶¶§Ç²Ö¥[¾¹ 60 3.2.3 ·Æ°Ê²Ö¥[¾¹ 61 3.3 ¼ªk¹Bºâ 63 3.3.1 ¤G¶i¨î¼ªkì²z 63 3.3.2 °ò¤_²¾¦ì¬Û¥[ªº¼ªk¾¹ 65 3.3.3 °ò¤_ROMªº¼ªk¾¹ 67 3.3.4 »P©T©w¼Æ¬Û¼ªº¼ªk¾¹¡]KCM¡^ 73 3.3.5 ´_¼Æ¼ªk 76 3.4 °£ªk¹Bºâ 77 3.4.1 °ò¤_«ì´_§E¼Æ¡]Restoring¡^ºâªkªº°£ªk¾¹ 77 3.4.2 °ò¤_¤£«ì´_§E¼Æ¡]Non-Restoring¡^ºâªkªº°£ªk¾¹ 80 3.4.3 °ò¤_¯Å¼Æ®i¶}ºâªkªº°£ªk¾¹ 84 3.4.4 °ò¤_Newton-Raphsonºâªkªº°£ªk¾¹ 87 3.5 ¶}¤è¹Bºâ 89 3.5.1 °ò¤_¤£«ì´_§E¼Æºâªkªº¶}¤è¹Bºâ 89 3.5.2 °ò¤_«D½u©ÊIIRÂoªi¾¹ºâªkªº¶}¤è¹Bºâ 95 3.5.3 ´_¼Æ¨D¼Ò 100 3.6 CORDICºâªk 103 3.6.1 CORDICºâªk¤§¶ê©P¨t²Î¤Î¨ä¼Æ¾ÇÀ³¥Î 103 3.6.2 CORDICºâªk¤§½u©Ê¨t²Î¤Î¨ä¼Æ¾ÇÀ³¥Î 113 3.6.3 CORDICºâªk¤§Âù¦±¨t²Î¤Î¨ä¼Æ¾ÇÀ³¥Î 116 3.6.4 ²Î¤@ªºCORDICºâªk§Î¦¡ 120 3.6.5 CORDICºâªkªºµw¥ó¹ê²{ 121 °Ñ¦Ò¤åÄm 126 ²Ä ³¹ FIR¼Æ¦rÂoªi¾¹ 127 4.1 FIRÂoªi¾¹°ò¥»²z½× 127 4.1.1 ª½±µ«¬µ²ºcªºFIRÂoªi¾¹ 127 4.1.2 Âà¸m«¬µ²ºcªºFIRÂoªi¾¹ 129 4.1.3 ½u©Ê¬Û¦ìFIRÂoªi¾¹ 131 4.2 ¦ê¦æFIRÂoªi¾¹ 133 4.2.1 °ò¤_²¾¦ì±H¦s¾¹ªº¦ê¦æFIRÂoªi¾¹ 133 4.2.2 °ò¤_ÂùºÝ¤fRAMªº¦ê¦æFIRÂoªi¾¹ 136 4.2.3 ¨t¼Æ¹ïºÙªº¦ê¦æFIRÂoªi¾¹ªº³]p 139 4.2.4 ¨âºØ¦ê¦æµ²ºcªºFIRÂoªi¾¹©Ê¯à¤ñ¸û 142 4.3 ¥þ¦}¦æFIRÂoªi¾¹ 143 4.3.1 °ò¤_ª½±µ«¬µ²ºcªº¥þ¦}¦æFIRÂoªi¾¹ 143 4.3.2 °ò¤_Âà¸m«¬µ²ºcªº¥þ¦}¦æFIRÂoªi¾¹ 144 4.3.3 °ò¤_¯ß°Êµ²ºcªº¥þ¦}¦æFIRÂoªi¾¹ 145 4.3.4 ¨t¼Æ¹ïºÙªº¥þ¦}¦æFIRÂoªi¾¹ªº³]p 147 4.3.5 ¤TºØ¥þ¦}¦æµ²ºcªºFIRÂoªi¾¹©Ê¯à¤ñ¸û 148 4.4 ¥b¦}¦æFIRÂoªi¾¹ 148 4.4.1 °ò¤_²¾¦ì±H¦s¾¹ªº¥b¦}¦æFIRÂoªi¾¹ 148 4.4.2 °ò¤_¦h¤ùÂùºÝ¤fRAMªº¥b¦}¦æFIRÂoªi¾¹ 153 4.4.3 °ò¤_³æ¤ù³æºÝ¤fRAMªº¥b¦}¦æFIRÂoªi¾¹ 155 4.4.4 ¨t¼Æ¹ïºÙªº¥b¦}¦æFIRÂoªi¾¹ªº³]p 159 4.4.5 ¤TºØ¥b¦}¦æµ²ºcªºFIRÂoªi¾¹©Ê¯à¤ñ¸û 162 4.5 ¤À¥¬¦¡FIRÂoªi¾¹ 162 4.5.1 ¤À¥¬¦¡ºâªkì²z 162 4.5.2 ¦ê¦æ¤À¥¬¦¡FIRÂoªi¾¹ 164 4.5.3 ¥þ¦}¦æ¤À¥¬¦¡FIRÂoªi¾¹ 169 4.5.4 ¥b¦}¦æ¤À¥¬¦¡FIRÂoªi¾¹ 169 4.5.5 ¤TºØ¤À¥¬¦¡FIRÂoªi¾¹©Ê¯à¤ñ¸û 171 4.6 §Ö³t¨÷¿n«¬FIRÂoªi¾¹ 171 4.6.1 ½u©Ê¨÷¿nªºpºâ¤èªk¤Î¹Bºâ¶q¤ÀªR 172 4.6.2 ¶ê©P¨÷¿nªºpºâ¤èªk¤Î¹Bºâ¶q¤ÀªR 174 4.6.3 ±q½u©Ê¨÷¿n¨ìFFTªº¸ó¶V 177 4.6.4 pºâªø¼Æ¾Ú§Ç¦C½u©Ê¨÷¿nªº¨âºØºâªk 179 4.6.5 À³¥Î«Å|«O¯dªk¹ê²{°ª¶¥FIRÂoªi¾¹ 185 4.7 ¦h³q¹DFIRÂoªi¾¹ 188 4.8 ¦hÀWÅTFIRÂoªi¾¹ 192 4.9 Á`Åé©Ê¯à¤ÀªR 194 °Ñ¦Ò¤åÄm 196 ²Ä ³¹ ª½±µ¼Æ¦rÀW²v¦X¦¨ 197 5.1 °ò¤_IIRÂoªi¾¹ªºDDS 197 5.2 °ò¤_LUTªºDDS 199 5.2.1 ±`³W«¬°ò¤_LUTªºDDS 199 5.2.2 ³q¹LLFSR§ïµ½SFDR 206 5.2.3 ³q¹LTaylor¯Å¼Æ§ïµ½SFDR 209 5.2.4 §Q¥Î¹ïºÙ©ÊÀ£ÁY¦sÀxªi§Î 210 5.3 °ò¤_Âù¼Ò¤¬½èºâªkªºDDS 213 5.3.1 Âù¼Ò¤¬½èºâªkªº°ò¥»ì²z 213 5.3.2 Âù¼Ò¤¬½èºâªkªºµw¥ó¹ê²{ 216 5.4 °ò¤_CORDICºâªkªºDDS 217 5.5 ¦h³q¹DDDS 221 5.6 ¦h¸ô¦}¦æDDS 222 5.7 ²£¥Í¨ä¥Lªi§Î 225 °Ñ¦Ò¤åÄm 226 ²Ä ³¹ ¦h³t²v«H¸¹³B²z 227 6.1 ©â¨ú©M©â¨úÂoªi¾¹ 227 6.2 ´¡È©M´¡ÈÂoªi¾¹ 231 6.3 ¤À¼Æ³t²vªºÂà´« 232 6.4 ¤»ÓùÚµ¥¦¡¤Î¨ä¨å«¬À³¥Î 233 6.5 ¦h¬ÛÂoªi¾¹ 237 6.5.1 ¦h¬Û©â¨úÂoªi¾¹ªº°ò¥»²z½× 237 6.5.2 ¦h¬Û©â¨úÂoªi¾¹ªºµw¥ó¹ê²{ 241 6.5.3 ¦h¬Û´¡ÈÂoªi¾¹ªº°ò¥»²z½× 261 6.5.4 ¦h¬Û´¡ÈÂoªi¾¹ªºµw¥ó¹ê²{ 266 6.6 CICÂoªi¾¹ 268 6.6.1 CICÂoªi¾¹°ò¥»²z½× 268 6.6.2 CICÂoªi¾¹ªº¦ì¼Wªø°ÝÃD 273 6.6.3 CICÂoªi¾¹À³¥Î¤_©â¨ú¨t²Î¤¤ 274 6.6.4 CICÂoªi¾¹À³¥Î¤_´¡È¨t²Î¤¤ 282 6.7 ¥b±aÂoªi¾¹ 284 6.7.1 ¥b±aÂoªi¾¹ªº°ò¥»²z½× 284 6.7.2 ¥b±aÂoªi¾¹À³¥Î¤_©â¨ú¨t²Î¤¤ 286 6.7.3 ¥b±aÂoªi¾¹À³¥Î¤_´¡È¨t²Î¤¤ 288 °Ñ¦Ò¤åÄm 291 ²Ä ³¹ §Ö³t³Å¨½¸ÅÜ´« 292 7.1 ±qDFT¨ìFFT 292 7.2 °ò2 FFT³B²z¾¹ 293 7.2.1 °ò2 FFTºâªkì²z 293 7.2.2 °ò2 FFTºâªk¯S©º¤ÀªR 299 7.2.3 °ò2ì¦ì¹BºâFFT³B²z¾¹ 302 7.2.4 °ò2 SDF¬y¤ôµ²ºcFFT³B²z¾¹ 313 7.2.5 °ò2 MDC¬y¤ôµ²ºcFFT³B²z¾¹ 322 7.3 °ò4 FFT³B²z¾¹ 329 7.3.1 °ò4 FFTºâªkì²z 329 7.3.2 °ò4 FFTºâªk¯S©º¤ÀªR 340 7.3.3 °ò4 SDF¬y¤ôµ²ºcFFT³B²z¾¹ 342 7.3.4 °ò4 MDC¬y¤ôµ²ºcFFT³B²z¾¹ 345 7.3.5 °ò4 SDC¬y¤ôµ²ºcFFT³B²z¾¹ 349 7.4 ´XºØ¬y¤ôµ²ºcFFT³B²z¾¹ªº¤ñ¸û 356 7.5 IFFT»PFFTªºÃö¨t 356 °Ñ¦Ò¤åÄm 357 ²Ä ³¹ ¤@¨Ç²Ó¸`°ÝÃD 358 8.1 LUT¤£¥u¬OÅÞ¿è¨ç¼Æµo¥Í¾¹ 358 8.2 ¦X²z¨Ï¥ÎIJµo¾¹ 363 8.2.1 ÁקK¹L¦h±±¨î¶° 363 8.2.2 ÁקK¨Ï¥ÎÂê¦s¾¹ 365 8.3 Block RAM¤£¥u¬O¼Æ¾Ú¦sÀx 366 8.3.1 Block RAM°t¸m¤è¦¡ 366 8.3.2 Block RAMÀ³¥Î®×¨Ò 367 8.4 DSP48E1¤£¥u¬O¼ªk¾¹ 373 8.4.1 DSP48E1°ò¥»µ²ºc 373 8.4.2 DSP48E1À³¥Î®×¨Ò 381 8.5 Ãö¤_´_¦ì 399 8.6 ¸ó®ÉÄÁ°ìªº³]p 401 8.6.1 ¦P¨B®ÉÄÁªº¸ó®ÉÄÁ°ì³]p 401 8.6.2 ²§¨B®ÉÄÁªº¸ó®ÉÄÁ°ì³]p 410 °Ñ¦Ò¤åÄm 422 ¦Z°O 423 |
§Ç¡G |