Example Image´ó·¢28

ÔÚÕâÀï¸æËßÎÒÃÇÄúµÄÐèÇó°É

ÎÒÃÇ¿ÉÒÔ¸ü¿ìµÄÏàʶÄúµÄÐèÇó
ÆóÒµÈ˲ÅÕÐÆ¸ÐèÇó·´Ïì

È˲ÅÐèÇó


ÁªÏµÈË&ÁªÏµ·½·¨


ÔÚÕâÀï¸æËßÎÒÃÇÄúµÄÐèÇó°É

ÎÒÃÇ¿ÉÒÔ¸ü¿ìµÄÏàʶÄúµÄÐèÇó
ÆóÒµÍÅÅà±íµ¥
´ó·¢28¡¤(ÖйúÓÎ)¹Ù·½ÍøÕ¾

FPGA¹¤³ÌʦְҵԶ¾°ÆÊÎö£º»úÔµÓëÌôÕ½²¢´æ

FPGA¹¤³ÌʦְҵԶ¾°ÆÊÎö£º»úÔµÓëÌôÕ½²¢´æ

Ò»¡¢Ð¡Ðò£ºFPGA¹¤³Ìʦ¡ª¡ªÊý×Öʱ´úµÄÓ²¼þ»ùʯ

1.1 FPGA¼¼ÊõµÄÕ½ÂÔְλÓëÐÐÒµ¼ÛÖµ

FPGA£¨ÏÖ³¡¿É±à³ÌÃÅÕóÁУ©×÷ΪһÖÖ¿ÉÖØ¹¹Ó²¼þÆ÷¼þ £¬£¬ £¬Æä½¹µãÌØÕ÷ÔÚÓڿɱà³ÌÐÔÓëÓ²¼þ²¢Ðд¦Öóͷ£ÄÜÁ¦µÄÍêÃÀÁ¬Ïµ¡£¡£¡£¡£ÓëÀο¿¹¦Ð§µÄASICоƬÏà±È £¬£¬ £¬FPGAÔÊÐí¿ª·¢Õßͨ¹ýÓ²¼þÐÎòÓïÑÔ£¨HDL£©½ç˵µç·Âß¼­ £¬£¬ £¬²¢¿ÉÔÚ²úÆ·ÉúÃüÖÜÆÚÄÚ¶¯Ì¬¸üй¦Ð§£» £»£»£»£»£»ÓëͨÓô¦Öóͷ£Æ÷Ïà±È £¬£¬ £¬Æä²¢Ðмܹ¹ÄÜʵÏÖ΢Ã뼶ʵʱÏìÓ¦ÓëTb¼¶Êý¾ÝÍÌÍÂÁ¿ £¬£¬ £¬ÕâÖÖ”Ó²¼þ¿É±à³Ì”ÌØÕ÷ʹÆä³ÉΪ5GͨѶ¡¢È˹¤ÖÇÄÜ¡¢¹¤Òµ¿ØÖƵÈÁìÓòµÄÒªº¦µ×²ãÖ§³Ö¡£¡£¡£¡£ÔÚÊý×Ö¾­¼Ã¼ÓËÙÉøÍ¸µÄ½ñÌì £¬£¬ £¬FPGAÒѴӹŰåµÄ¾ü¹¤º½ÌìÁìÓòÀ©Õ¹ÖÁÏûºÄµç×Ó¡¢Æû³µµç×ӵȹ«¹²Êг¡ £¬£¬ £¬ÓÈÆäÔÚ¹ú²úÌæ»»À˳±Ï £¬£¬ £¬º£ÄÚFPGAÊг¡¹æÄ£ÈýÄ긴ºÏÔöÌíÂÊ´ï16.74% £¬£¬ £¬³ÉΪ°ëµ¼Ì幤ҵÖÐÔöËÙ×î¿ìµÄϸ·ÖÈüµÀÖ®Ò»¡£¡£¡£¡£

´Ó¼¼ÊõʵÖÊ¿´ £¬£¬ £¬FPGAÊÇÅþÁ¬Ëã·¨ÓëÎïÀíÊÀ½çµÄÇÅÁº¡£¡£¡£¡£ÔÚ5G»ùÕ¾ÖÐ £¬£¬ £¬FPGA¼ç¸º×Å»ù´øÐźŴ¦Öóͷ£µÄ½¹µãʹÃü £¬£¬ £¬Í¨¹ý²¢ÐÐÂß¼­ÊµÏÖMassive MIMO²¨Êø¸³ÐÎËã·¨µÄʵʱÅÌË㣻 £»£»£»£»£»ÔÚAI¼ÓËÙÁìÓò £¬£¬ £¬»ùÓÚFPGAµÄ¾í»ýÉñ¾­ÍøÂç¼ÓËÙÆ÷¿ÉÎÞаÊÊÅä²î±ðÄ£×Ӽܹ¹ £¬£¬ £¬ÊµÏÖËã·¨µü´úÓëÓ²¼þЧÂÊµÄÆ½ºâ£» £»£»£»£»£»ÔÚ¹¤Òµ»¥ÁªÍø³¡¾°Ï £¬£¬ £¬FPGAµÄµÍÑÓ³ÙÌØÕ÷ʹÖÇÄÜÖÆÔì×°±¸µÄÏìÓ¦ËÙÂÊ´ÓºÁÃë¼¶½µÖÁ΢Ãë¼¶¡£¡£¡£¡£Ëæ×Ŕлù½¨”Õþ²ßµÄÍÆ½ø £¬£¬ £¬FPGA×÷Ϊ”Ó²¼þ²Ù×÷ϵͳ”µÄÕ½ÂÔ¼ÛÖµÓú·¢Í¹ÏÔ £¬£¬ £¬ÆäÔÚÊý×Ö¾­¼Ã»ù´¡ÉèÊ©ÖеÄְλ¿°±ÈCPUÖ®ÓÚPCʱ´ú¡¢GPUÖ®ÓÚÈ˹¤ÖÇÄÜʱ´ú¡£¡£¡£¡£

1.2 ±¾ÎÄÆÊÎö¿ò¼ÜÓë½¹µã¼ÛÖµ

±¾ÎĽ«Î§ÈÆFPGA¹¤³ÌʦְҵÉú³¤µÄ½¹µãά¶ÈÕö¿ªÉî¶ÈÆÊÎö £¬£¬ £¬Ïêϸ°üÀ¨Ëĸö²ãÃæ£ºÊ×ÏÈÆÊÎöÐÐÒµÐèÇóÓëÊг¡Ô¶¾° £¬£¬ £¬Í¨¹ýÁ¿»¯Êý¾Ý·ºÆðFPGA¹¤³ÌʦµÄÈ˲Åȱ¿ÚÓëн×ʾºÕùÁ¦£» £»£»£»£»£»Æä´ÎÉîÈë½¹µãÓ¦ÓÃÁìÓò £¬£¬ £¬Õ¹ÏÖ²î±ð³¡¾°Ïµļ¼ÊõÐèÇóÌØµãÓëÄÜÁ¦ÒªÇó£» £»£»£»£»£»½Ó×Å´ÓÖ°ÒµÉúÃüÖÜÆÚÊÓ½Ç £¬£¬ £¬ÆÊÎöFPGA¹¤³Ìʦ”ÂÄÀúÔöÖµ”µÄµ×²ãÂß¼­ÓëתÐÍ·¾¶£» £»£»£»£»£»×îºó¹¹½¨¿ÆÑ§µÄÄÜÁ¦×÷Óýϵͳ £¬£¬ £¬ÎªÑ§Ï°ÕßÌṩ´ÓÈëÃŵ½ÊµÕ½µÄÍêÕûÉú³¤¼Æ»®¡£¡£¡£¡£

¹ØÓÚFPGAÅàѵѧԱ £¬£¬ £¬±¾ÎĽ«×ÊÖúÄãÇåÎúÈÏÖªÐÐÒµ»úÔµÓëÄÜÁ¦±ê×¼ £¬£¬ £¬Ã÷ȷѧϰƫÏò£» £»£»£»£»£»¹ØÓÚÐÐÒµ´ÓÒµÕß £¬£¬ £¬¿Éͨ¹ýÖ°ÒµÉú³¤Â·¾¶ÆÊÎöÓÅ»¯Éú³¤ÍýÏë £¬£¬ £¬ÕÆÎÕתÐÍ»úÔµ£» £»£»£»£»£»¹ØÓÚ¼¼Êõϲ»¶Õß £¬£¬ £¬±¾ÎĽ«ÏµÍ³Õ¹ÏÖFPGA¼¼ÊõµÄ÷ÈÁ¦ÓëÉú³¤Ô¶¾° £¬£¬ £¬ÎªÖ°ÒµÑ¡ÔñÌṩ²Î¿¼¡£¡£¡£¡£È«ÎÄ»ùÓÚ×îÐÂÐÐÒµÊý¾ÝÓëʵ¼ù°¸Àý £¬£¬ £¬¼æ¹ËרҵÐÔÓë¿É¶ÁÐÔ £¬£¬ £¬Ö¼ÔÚΪ²î±ðȺÌåÌṩ¼æ¾ßÕ½ÂÔÊÓÒ°Óëʵ²Ù¼ÛÖµµÄÆÊÎö±¨¸æ¡£¡£¡£¡£

FPGAÊг¡¹æÄ£ÔöÌíÇ÷ÊÆÍ¼

¶þ¡¢ÐÐÒµÐèÇóÓëÊг¡Ô¶¾°£º¸ßÔöÌíÈüµÀµÄÈ˲ŻúÔµ

2.1 È«Çò¼°ÖйúFPGAÊг¡¹æÄ£ÔöÌíÇ÷ÊÆ

ÖйúFPGAÊг¡Õý´¦ÓÚ¼ÓËÙÀ©ÕŽ׶Ρ£¡£¡£¡£Æ¾Ö¤Frost & SullivanÊý¾Ý £¬£¬ £¬º£ÄÚÊг¡¹æÄ£ÒÑ´Ó2022ÄêµÄ208.8ÒÚÔªÔöÌíÖÁ2025ÄêµÄ332.2ÒÚÔª £¬£¬ £¬ÈýÄ긴ºÏÄêÔöÌíÂÊ´ï16.74% £¬£¬ £¬ÔöËÙÏÔÖø¸ßÓÚÈ«ÇòÊг¡Æ½¾ùˮƽ¡£¡£¡£¡£ÕâÒ»ÔöÌíÖ÷ÒªÓÉͨѶ¡¢¹¤Òµ¿ØÖÆ¡¢È˹¤ÖÇÄÜÈý´óÁìÓòÇý¶¯ £¬£¬ £¬ÆäÖÐͨѶ°å¿éÊг¡Õ¼±ÈÒ»Á¬¼á³Ö30%ÒÔÉÏ £¬£¬ £¬Î´À´ÈýÄ긴ºÏÔöÌíÂÊ´ï17.43% £¬£¬ £¬¹¤Òµ¿ØÖÆÁìÓò¸´ºÏÔöÌíÂÊΪ15.63% £¬£¬ £¬³ÉΪÀ­¶¯Êг¡ÔöÌíµÄ½¹µãÒýÇæ¡£¡£¡£¡£

È«ÇòÊг¡·ºÆðÎȽ¡ÔöÌíÌ¬ÊÆ¡£¡£¡£¡£Future Market InsightsÕ¹Íû £¬£¬ £¬2022-2032ÄêÈ«ÇòFPGAоƬÊг¡¹æÄ£¸´ºÏÄêÔöÌíÂÊΪ7.6% £¬£¬ £¬2032ÄêÓÐÍûµÖ´ïÔ¼139ÒÚÃÀÔª£» £»£»£»£»£»ÉÐÓÐÐÐÒµ±¨¸æÏÔʾ £¬£¬ £¬2025ÄêÈ«ÇòÊг¡¹æÄ£½«Áè¼Ý125ÒÚÃÀÔª¡£¡£¡£¡£ÖµµÃ×¢ÖØµÄÊÇ £¬£¬ £¬ÖйúÒѳÉΪȫÇò×î´óµÄFPGAÏûºÄÊг¡ £¬£¬ £¬Õ¼±ÈÔ¼38% £¬£¬ £¬ÓÈÆäÔÚ5G»ùÕ¾½¨Éè¡¢Êý¾ÝÖÐÐÄÀ©½¨µÈÁìÓòµÄÐèÇóÕ¼±ÈÁìÏÈÈ«Çò¡£¡£¡£¡£Ëæ×Źú²úÌæ»»Àú³ÌµÄÍÆ½ø £¬£¬ £¬º£ÄÚFPGAÆóÒµ´Ó2018Äê7.98ÒÚÔªµÄÓªÊÕ¹æÄ£ÔöÌíÖÁ2021ÄêµÄ44.34ÒÚÔª £¬£¬ £¬ÈýÄ긴ºÏÔöÌíÂʸߴï77.14% £¬£¬ £¬Õ¹ÏÖ³öÇ¿¾¢µÄÉú³¤¶¯ÄÜ¡£¡£¡£¡£

Êг¡ÔöÌíµÄµ×²ãÂß¼­Ô´ÓÚÓ¦Óó¡¾°µÄÒ»Á¬ÍØÕ¹¡£¡£¡£¡£ÔÚͨѶÁìÓò £¬£¬ £¬5G»ùÕ¾¶ÔFPGAµÄµ¥»úÐèÇóÁ¿ÊÇ4G»ùÕ¾µÄ3±¶ÒÔÉÏ £¬£¬ £¬º£ÄÚÈý´óÔËÓªÉÌ2023Äêн¨5G»ùÕ¾³¬60Íò¸ö £¬£¬ £¬Ö±½ÓÀ­¶¯FPGA²É¹ºÐèÇó£» £»£»£»£»£»¹¤ÒµÁìÓò £¬£¬ £¬ÖÇÄÜÖÆÔì×°±¸µÄFPGAÉøÍ¸ÂÊ´Ó2020ÄêµÄ12%ÌáÉýÖÁ2023ÄêµÄ25% £¬£¬ £¬ÓÈÆäÔÚ¹¤Òµ»úеÈË¡¢ÖÇÄÜ´«¸ÐÆ÷µÈ¸ß¶Ë×°±¸ÖгÉΪ±êÅ䣻 £»£»£»£»£»AI¼ÓËÙÁìÓò £¬£¬ £¬FPGAÔÚ±ßÑØÅÌË㳡¾°µÄ°²ÅÅÁ¿ÄêÔöÌíÂʳ¬50% £¬£¬ £¬Ìî²¹ÁËGPUÔڵ͹¦ºÄ³¡¾°ÏµÄÓ¦Óö̰å¡£¡£¡£¡£

2.2 н×ÊˮƽÌݶÈÓëµØÇø²î±ðÆÊÎö

FPGA¹¤³Ìʦн×Ê·ºÆðÏÔÖøµÄÂÄÀúÌݶÈÌØÕ÷ £¬£¬ £¬²î±ð×ÊÀúÈ˲ŵÄÊг¡¼ÛÖµ²î±ðÏÔ×Å¡£¡£¡£¡£Ó¦½ìÉú·½Ãæ £¬£¬ £¬Ñ§ÀúÓëÆðн·ºÆðÇ¿Ïà¹ØÐÔ£ºË¶Ê¿Ñ§ÀúÓ¦½ìÉúÔÚ±±¾©¡¢ÉϺ£µÈÒ»Ïß¶¼»áµÄFPGA¹¤³Ìʦ¸ÚλÆðнÆÕ±éµÖ´ï20k-25k/Ô £¬£¬ £¬²¿·Ö°ëµ¼ÌåÆóÒµ£¨È绪Ϊº£Ë¼¡¢×ϹâÕ¹Èñ£©Îª¶¥¼âԺУ½áÒµÉú¿ª³ö30k+µÄÔÂн£» £»£»£»£»£»±¾¿ÆÓ¦½ìÉúÆðнÏà¶Ô½ÏµÍ £¬£¬ £¬´ó¶¼¼¯ÖÐÔÚ10k-15k/ÔÂÇø¼ä £¬£¬ £¬µ«¾ß±¸¿ªÔ´ÏîÄ¿ÂÄÀú»ò¾ºÈü»ñ½±ÂÄÀúµÄ±¾¿Æ½áÒµÉú £¬£¬ £¬Ð½×ʿɴï18k-22k/Ô £¬£¬ £¬¿¿½ü˶ʿˮƽ¡£¡£¡£¡£ÀýÈç±±¾©Ä³×¨Òµ¼¼ÊõЧÀ͹«Ë¾Õë¶Ô˶ʿӦ½ìÉúµÄFPGA¸ÚλÌṩ20-25k/ÔÂн×Ê £¬£¬ £¬²¢×¢Ã÷¿É½â¾öÂä»§ÎÊÌ⣻ £»£»£»£»£»¶øÁãÒ¼¿Õ¼ä¼¯Íŵı¾¿Æ³õ¼¶¸Úλн×ÊΪ10-13k¡¤13н¡£¡£¡£¡£

×ÊÉ³Ìʦ£¨3-10ÄêÂÄÀú£©µÄн×ʽøÈë¿ìËÙÔöºã¾Ã £¬£¬ £¬µØÇø²î±ð½øÒ»²½Í¹ÏÔ¡£¡£¡£¡£ÉîÛÚ×÷ΪFPGA¹¤ÒµÖØÕò £¬£¬ £¬×ÊÉ³ÌʦÔÂнÆÕ±éÔÚ30k-50kÇø¼ä £¬£¬ £¬ÈçÉîÛÚFPGAÔ­ÐÍÑéÖ¤¹¤³Ìʦ¸Úλн×ÊΪ30-50k/Ô £¬£¬ £¬ÓîÊӿƼ¼µÈÆóÒµµÄ×ÊÉî¸Úλ¿É´ï25-50k¡¤14н £¬£¬ £¬º¬¼¨Ð§½±½ðµÄ¸ÚλÄêн¿ÉÍ»ÆÆ60Íò£» £»£»£»£»£»ÉϺ£µØÇøÐ½×ÊˮƽÓëÉîÛÚ¿¿½ü £¬£¬ £¬ÒÁ¹ÈÐÅÏ¢¿Æ¼¼¿ª³ö30-50k/ÔµÄн×Ê£» £»£»£»£»£»Î人¡¢ÄϾ©µÈÐÂÒ»Ïß¶¼»áн×ÊÂÔµÍ £¬£¬ £¬Î人Èý¼ÓÒ»¿Æ¼¼ÔÚÉîÛÚµÄ×ÊÉî¸ÚλΪ20-45k¡¤13н £¬£¬ £¬ÄϾ©ÈÊо¿Æ¼¼ÔòÌṩ21-35k¡¤15н¡£¡£¡£¡£ÖµµÃ×¢ÖØµÄÊÇ £¬£¬ £¬¾ß±¸5GͨѶ¡¢AI¼ÓËÙµÈÈÈÃÅÁìÓòÂÄÀúµÄ¹¤³Ìʦ £¬£¬ £¬Ð½×ʽÏͨÓÃÆ«Ïòºá¿ç20%-30% £¬£¬ £¬²¿·ÖÆóҵΪÕùȡϡȱÈ˲Š£¬£¬ £¬»áÌṩ¹ÉȨ¼¤Àø»òÏîÄ¿·Öºì¡£¡£¡£¡£

10ÄêÒÔÉÏÂÄÀúµÄ¸ß¼¶¹¤³Ìʦ³ÉΪÊг¡”ÏãâÄâÄ” £¬£¬ £¬Ð½×ʽøÈëÎȹ̸ßÊÕÈëÇø¼ä¡£¡£¡£¡£ÌìϹæÄ£ÄÚ £¬£¬ £¬10ÄêÒÔÉÏÂÄÀúµÄFPGA¹¤³Ìʦ¸Úλн×Ê100%¼¯ÖÐÔÚ30k-50k/Ô £¬£¬ £¬°´´ËÅÌËãÄêн¿É´ï36Íò-60Íò¡£¡£¡£¡£²¿·ÖÆóҵΪÎüÒý×ÊÉîÈ˲Š£¬£¬ £¬»áÌṩ¸ü¾ß¾ºÕùÁ¦µÄн³ê°ü £¬£¬ £¬ÀýÈçÎ人Èý¼ÓÒ»¿Æ¼¼µÄ¸ß¼¶¸Ú루3-10ÄêÂÄÀú£©ÉÏÏÞ´ï45k¡¤13н £¬£¬ £¬ÍÆËã10ÄêÒÔÉÏÂÄÀúÕßн×Ê¿ÉÄÜ¿¿½ü»òÁè¼Ý¸Ãˮƽ£» £»£»£»£»£»ÔÚ¾ü¹¤º½Ì졢оƬÑéÖ¤µÈÌØÊâÁìÓò £¬£¬ £¬×ÊÉ³ÌʦÄêн50Íò-100ÍòµÄ°¸Àý²¢²»Ïʼû £¬£¬ £¬Õⲿ·Öн×Êͨ³£°üÀ¨ÏîÄ¿½±½ð¡¢±£ÃܽòÌùµÈÌØÊâÊÕÈë¡£¡£¡£¡£ÓëÈí¼þ¹¤³Ìʦ²î±ð £¬£¬ £¬FPGA¸ß¼¶¹¤³ÌʦµÄн×ÊÔÚ35ËêºóÈÔÄܼá³ÖÔöÌíÌ¬ÊÆ £¬£¬ £¬70%µÄÆóÒµÕÐÆ¸ÐèÇóÖÐÃ÷È·ÌåÏÖ”ÄêËê²»ÏÞ £¬£¬ £¬ÄÜÁ¦ÓÅÏÈ”¡£¡£¡£¡£

Èý¡¢½¹µãÓ¦ÓÃÁìÓòÉî¶ÈÆÊÎö£ºÐèÇ󱬷¢µÄËÄ´óÆ«Ïò

3.1 5GͨѶ£º»ùÕ¾½¨ÉèµÄ½¹µãÇý¶¯Á¦

5GͨѶÊÇÄ¿½ñFPGA×î´óµÄÓ¦ÓÃÊг¡ £¬£¬ £¬Õ¼È«ÇòFPGAÐèÇóµÄ30%ÒÔÉÏ £¬£¬ £¬³ÉΪÀ­¶¯ÐÐÒµÔöÌíµÄ”ÒýÇæ”¡£¡£¡£¡£ÔÚ5G»ùÕ¾ÖÐ £¬£¬ £¬FPGAÖ÷Òª¼ç¸º» £»£»£»£»£»ù´øÐźŴ¦Öóͷ£¡¢É䯵ÐźŴ¦Öóͷ£ºÍǰ´«½Ó¿ÚЭÒéת»»Èý´ó½¹µãʹÃü£ºÔÚ»ù´ø´¦Öóͷ£»·½Ú £¬£¬ £¬FPGAʵÏÖMassive MIMO£¨´ó¹æÄ£ÌìÏߣ©¼¼ÊõµÄʵʱ²¨Êø¸³ÐÎËã·¨ £¬£¬ £¬Ö§³Ö64T64RÉõÖÁ128T128RµÄÌìÏßÉèÖà £¬£¬ £¬µ¥»ùÕ¾Ðè°²ÅÅ4-8ƬÖи߶ËFPGAоƬ£¨ÈçXilinx UltraScale+ϵÁУ©£» £»£»£»£»£»É䯵´¦Öóͷ£»·½Ú £¬£¬ £¬FPGAÍê³ÉÊý×ÖÔ¤Ê§Õæ£¨DPD£©¡¢ crest factor reduction£¨CFR£©µÈÒªº¦Ëã·¨ £¬£¬ £¬ÌáÉý¹¦ÂÊ·Å´óÆ÷ЧÂÊ£» £»£»£»£»£»Ç°´«½Ó¿Ú·½Ãæ £¬£¬ £¬FPGAʵÏÖCPRI/eCPRIЭÒéת»» £¬£¬ £¬Öª×ã»ùÕ¾ÓëRRUÖ®¼äµÄ¸ßËÙÊý¾Ý´«ÊäÐèÇó £¬£¬ £¬µ¥Í¨µÀÊý¾ÝËÙÂÊÒÑ´Ó5G³õÆÚµÄ25GbpsÌáÉýÖÁ100Gbps¡£¡£¡£¡£

º£ÄÚ5G»ùÕ¾½¨ÉèµÄ¼ÓËÙΪFPGA¹¤³Ìʦ´´Á¢Á˺£Á¿ÐèÇ󡣡£¡£¡£×èÖ¹2023Äêµ× £¬£¬ £¬ÌìÏÂ5G»ùÕ¾×ÜÊý´ï337Íò¸ö £¬£¬ £¬Õ¼È«Çò60%ÒÔÉÏ £¬£¬ £¬Æ¾Ö¤Ã¿¸öºê»ùվƽ¾ùʹÓÃ6ƬFPGAоƬÅÌËã £¬£¬ £¬½ö»ùÕ¾½¨Éè¾Í´ßÉúÊýÍòÍòƬ¼¶µÄFPGAÐèÇ󡣡£¡£¡£Ëæ×Å5G-A£¨Advanced£©¼¼ÊõÊÔÑéµÄÍÆ½ø £¬£¬ £¬³¬¿í´ø¡¢µÍʱÑÓÌØÕ÷¶ÔFPGAµÄËãÁ¦Ìá³ö¸ü¸ßÒªÇó £¬£¬ £¬ÀýÈ绪ΪÔÚ5G-AÔ­ÐÍ»úÖнÓÄÉ»ùÓÚFPGAµÄȫջ¿É±à³Ì¼Ü¹¹ £¬£¬ £¬ÊµÏÖ10Gbps·åÖµËÙÂʺÍÑǺÁÃ뼶ʱÑÓ £¬£¬ £¬ÕâÒ»¼¼ÊõÑݽøÊ¹µÃ¾ß±¸5GÎïÀí²ãË㷨ʵÏÖÂÄÀúµÄFPGA¹¤³Ìʦ³ÉΪͨѶװ±¸³§É̵ÄÖØµãÕÐÆ¸¹¤¾ß¡£¡£¡£¡£Ä³Í¨Ñ¶×°±¸³§É̵ÄÕÐÆ¸Êý¾ÝÏÔʾ £¬£¬ £¬ÊìϤXilinx Zynq UltraScale+ RFSoCϵÁеÄFPGA¹¤³Ìʦ £¬£¬ £¬Ð½×ʽÏͨÓÃÆ«Ïòºá¿ç25% £¬£¬ £¬ÇÒ¼òÀúÏìÓ¦ÂÊ´ï100%¡£¡£¡£¡£

3.2 AI¼ÓËÙÓëÊý¾ÝÖÐÐÄ£ºËãÁ¦ÓÅ»¯µÄÒªº¦Â·¾¶

FPGAÔÚAI¼ÓËÙÁìÓòµÄÆæÒìÓÅÊÆÊ¹Æä³ÉΪGPUµÄÖ÷ÒªÔö²¹ £¬£¬ £¬ÓÈÆäÔÚ±ßÑØÅÌËãºÍµÍ¹¦ºÄ³¡¾°ÖÐÕ¼Óв»¿ÉÌæ»»µÄְλ¡£¡£¡£¡£ÓëGPUÏà±È £¬£¬ £¬FPGA¾ßÓмܹ¹¿É±à³ÌÐÔÇ¿¡¢ÄÜЧ±È¸ß¡¢Ñӳٵ͵ÄÌØµã£ºÔÚ¾í»ýÉñ¾­ÍøÂ磨CNN£©ÍÆÀíʹÃüÖÐ £¬£¬ £¬FPGAµÄÄÜЧ±È£¨TOPS/W£©¿É´ïGPUµÄ3-5±¶£» £»£»£»£»£»ÔÚʵʱÊÓÆµÆÊÎö³¡¾°ÖÐ £¬£¬ £¬FPGA¿É½«¶Ëµ½¶ËÑÓ³Ù´ÓGPUµÄ50ms½µÖÁ10msÒÔÄÚ¡£¡£¡£¡£ÏÖÔÚ £¬£¬ £¬FPGAÒÑÆÕ±éÓ¦ÓÃÓÚÖÇÄܰ²·ÀÉãÏñÍ·¡¢×Ô¶¯¼ÝÊ»¼¤¹âÀ×´ï¡¢¹¤ÒµÖʼì×°±¸µÈ±ßÑØÅÌËã½Úµã £¬£¬ £¬ÀýÈçÑÇÂíÑ·AWSµÄEC2 F1ʵÀý¡¢Î¢ÈíAzureµÄFPGAÔÆÐ§À;ù½ÓÄÉFPGA×÷ΪAI¼ÓËÙÒýÇæ¡£¡£¡£¡£

Êý¾ÝÖÐÐÄÁìÓò £¬£¬ £¬FPGAÕý´Ó”¸¨Öú¼ÓËÙ”Ïò”Ö÷Á¦ËãÁ¦”Ñݽø¡£¡£¡£¡£» £»£»£»£»£»¥ÁªÍø¾ÞÍ··×·×½á¹¹»ùÓÚFPGAµÄAI¼ÓËټƻ®£º°Ù¶ÈÔÚÆäÉî¶Èѧϰƽ̨PaddlePaddleÖм¯³ÉFPGA¼ÓËÙÄ£¿£¿£¿£¿é £¬£¬ £¬ÊµÏÖBERTÄ£×ÓÍÆÀíÐÔÄÜÌáÉý3±¶£» £»£»£»£»£»°¢Àï°Í°Íƽͷ¸ç¿ª·¢µÄÐþÌú´¦Öóͷ£Æ÷ÓëFPGAЭͬ¼Ü¹¹ £¬£¬ £¬ÔÚÍÆ¼öϵͳ°²ÅÅÖÐʵÏÖÄÜЧ±ÈÌáÉý40%¡£¡£¡£¡£ÕâЩӦÓó¡¾°¶ÔFPGA¹¤³ÌʦÌá³ö¸´ºÏÐÍÄÜÁ¦ÒªÇ󡪡ª²»µ«ÐèÒªÕÆÎÕVerilog/VHDL±à³ÌºÍʱÐòÓÅ»¯¼¼Êõ £¬£¬ £¬»¹ÐèÃ÷È·Éî¶ÈѧϰËã·¨Ô­Àí £¬£¬ £¬Äܹ»½«TensorFlow/PyTorchÄ£×Ó¸ßЧӳÉäµ½FPGAÓ²¼þ×ÊÔ´¡£¡£¡£¡£Ä³»¥ÁªÍø¹«Ë¾µÄʵ¼ùÅú×¢ £¬£¬ £¬Í¬Ê±¾ß±¸FPGA¿ª·¢ÓëÉî¶ÈѧϰÅä¾°µÄ¹¤³Ìʦ £¬£¬ £¬ÆäÓ²¼þʵÏÖЧÂʱȴ¿Ëã·¨Åä¾°Ö°Ô±ÌáÉý40% £¬£¬ £¬ÕâÒ»¸´ºÏÐÍÈ˲ŵÄн×ʽϼòµ¥¼¼ÄÜÕ߸ß30%-50%¡£¡£¡£¡£

3.3 оƬÑéÖ¤ÓëASICÔ­ÐÍ£ºICÉè¼ÆµÄ±Ø±¸¹¤¾ß

FPGAÒѳÉΪоƬÉè¼ÆÁ÷³ÌÖеĔԭÐÍÑéÖ¤±ê×¼¹¤¾ß” £¬£¬ £¬ÔÚASIC/SoC¿ª·¢ÖÐʩչ×Ų»¿ÉÌæ»»µÄ×÷Óᣡ£¡£¡£Ëæ×ÅÐ¾Æ¬ÖÆ³Ì½øÈë7nm¡¢5nmʱ´ú £¬£¬ £¬Ð¾Æ¬Éè¼ÆÖØÆ¯ºó³ÊÖ¸Êý¼¶ÔöÌí £¬£¬ £¬¹Å°åµÄÈí¼þ·ÂÕæ£¨Simulation£©ÒÑÄÑÒÔÖª×ãÑé֤ЧÂÊÐèÇ󡣡£¡£¡£FPGAÔ­ÐÍÑé֤ͨ¹ý½«RTL´úÂëÓ³Éäµ½FPGAоƬ £¬£¬ £¬¿ÉʵÏÖ°ÙÍòÃż¶µç·µÄʵʱÔËÐÐÑéÖ¤ £¬£¬ £¬ÑéÖ¤ËÙÂʽÏÈí¼þ·ÂÕæ¿ì100-1000±¶ £¬£¬ £¬ÏÔÖøËõ¶ÌоƬ¿ª·¢ÖÜÆÚ¡£¡£¡£¡£¾ÝCadenceͳ¼Æ £¬£¬ £¬½ÓÄÉFPGAÔ­ÐÍÑéÖ¤µÄоƬÏîÄ¿ £¬£¬ £¬Æ½¾ùÁ÷ƬÀÖ³ÉÂÊÌáÉý25% £¬£¬ £¬ÉÏÊÐʱ¼äÌáǰ3-6¸öÔ¡£¡£¡£¡£

оƬÑéÖ¤ÁìÓòµÄFPGA¹¤³Ìʦ¸ÚλÐèÇó·ºÆð±¬·¢Ê½ÔöÌí¡£¡£¡£¡£µä·¶Ö°Ôð°üÀ¨£ºÆ¾Ö¤Ð¾Æ¬Spec´î½¨Ô­ÐÍÑé֤ƽ̨ £¬£¬ £¬±àдTestbench²¢¾ÙÐй¦Ð§ÑéÖ¤ £¬£¬ £¬ÆÊÎöʱÐòÊÕÁ²ÎÊÌâ £¬£¬ £¬Ð­ÖúÓ²¼þµ÷ÊԵȡ£¡£¡£¡£¸Ã¸Úλ¶Ô¹¤³ÌʦµÄ×ÛºÏÄÜÁ¦ÒªÇó¼«¸ß £¬£¬ £¬ÐèÍ¬Ê±ÕÆÎÕRTLÉè¼Æ¡¢ÑéÖ¤ÒªÁìѧ£¨UVM£©¡¢FPGA¼Ü¹¹ºÍµ÷ÊÔ¹¤¾ßʹÓᣡ£¡£¡£ÏÖÔÚ £¬£¬ £¬ÉϺ£¡¢ÉîÛڵȵصÄFPGAÔ­ÐÍÑéÖ¤¹¤³Ìʦ¸Úλн×ÊΪ30k-50k/Ô £¬£¬ £¬×ÊÉîÑéÖ¤¹¤³ÌʦÄêн¿É´ï60Íò-80Íò £¬£¬ £¬²¿·ÖоƬÉè¼Æ¹«Ë¾ÎªÑéÖ¤ÍŶÓÌṩÏîÄ¿½±½ð £¬£¬ £¬Á÷ƬÀֳɺó¿É»ñµÃÌØÊâ½±Àø¡£¡£¡£¡£ÀýÈçÉîÛÚijоƬÉè¼Æ¹«Ë¾µÄFPGAÔ­ÐÍÑéÖ¤¸ÚλҪÇó”3ÄêÒÔÉÏASICÔ­ÐÍÑéÖ¤ÂÄÀú £¬£¬ £¬ÊìϤXilinx/Vivado¹¤¾ßÁ´” £¬£¬ £¬¿ª³ö35-50k¡¤16нµÄÓźñÌõ¼þ¡£¡£¡£¡£

3.4 ¾ü¹¤º½ÌìÓë¸ß¶ËÖÆÔ죺¸ß¿É¿¿ÐÔÓ¦Óó¡¾°

¾ü¹¤º½ÌìÁìÓòÊÇFPGAµÄ¹Å°åÓÅÊÆÊг¡ £¬£¬ £¬Æä¶Ô×°±¸¿É¿¿ÐÔ¡¢¿¹×ÌÈÅÄÜÁ¦µÄÑÏ¿ÁÒªÇóÓëFPGAµÄ¼¼ÊõÌØÕ÷¸ß¶ÈÆõºÏ¡£¡£¡£¡£ÔÚÎÀÐÇͨѶϵͳÖÐ £¬£¬ £¬FPGAÓÃÓÚʵÏÖÐÇÔØÐźŴ¦Öóͷ£¡¢¼ÓÃܽâÃܺÍ×Ë̬¿ØÖÆËã·¨ £¬£¬ £¬ÐèÖª×ã-55¡æ~+125¡æµÄ¿íÎÂÊÂÇ鹿ģºÍ¿¹·øÉäÒªÇó£» £»£»£»£»£»ÔÚµ¼µ¯ÖƵ¼ÏµÍ³ÖÐ £¬£¬ £¬FPGAµÄ²¢ÐÐÅÌËãÄÜÁ¦¿ÉʵÏÖʵʱĿµÄʶ±ðÓë¹ì¼£ÍýÏë £¬£¬ £¬ÏìÓ¦ÑÓ³Ù¿ØÖÆÔÚ΢Ãë¼¶£» £»£»£»£»£»ÔÚÀ×´ïϵͳÖÐ £¬£¬ £¬FPGA¼ç¸º×ÅÊý×Ö²¨ÊøÐγɣ¨DBF£©¡¢Âö³åѹËõµÈÒªº¦Ê¹Ãü £¬£¬ £¬Ä³Ïà¿ØÕóÀ×´ïϵͳͨ¹ý½ÓÄÉFPGA¼Ü¹¹ £¬£¬ £¬½«²¨ÊøÇл»Ê±¼ä´ÓºÁÃë¼¶½µÖÁ100΢Ãë £¬£¬ £¬Ì½²â¾«¶ÈÌáÉý40%¡£¡£¡£¡£

¹ú²úÌæ»»À˳±Îª¾ü¹¤º½ÌìÁìÓòµÄFPGA¹¤³Ìʦ´´Á¢ÁËлúÔµ¡£¡£¡£¡£ºã¾ÃÒÔÀ´ £¬£¬ £¬º£ÄÚ¾ü¹¤ÏîÄ¿Ö÷ÒªÒÀÀµXilinx¡¢Intel£¨Altera£©µÈÍâÑó³§É̵ÄFPGAоƬ £¬£¬ £¬µ«Êܹú¼ÊÐÎÊÆÓ°Ïì £¬£¬ £¬¹ú²úFPGAÌæ»»ÒѳÉΪһ¶¨Ç÷ÊÆ¡£¡£¡£¡£×Ϲâͬ´´LogosϵÁС¢°²Â·¿Æ¼¼EGϵÁС¢¸´µ©Î¢µçFMϵÁеȹú²úFPGAоƬÒÑͨ¹ý¾ü¹¤ÈÏÖ¤ £¬£¬ £¬×îÏÈÅúÁ¿Ó¦ÓÃÓÚÖØµãÐͺÅÏîÄ¿¡£¡£¡£¡£ÕâÒ»Àú³ÌÖÐ £¬£¬ £¬ÊìϤ¹ú²úFPGA¼Ü¹¹ÌØÕ÷¡¢¾ß±¸ÒÆÖ²ÂÄÀúµÄ¹¤³Ìʦ³ÉΪϡȱÈ˲Š£¬£¬ £¬Ä³¾ü¹¤Ñо¿ËùµÄÕÐÆ¸ÒªÇóÃ÷È·±ê×¢”ÓÅÏÈ˼Á¿Óйú²úFPGAÒÆÖ²ÂÄÀúÕß” £¬£¬ £¬Ïà¹Ø¸Úλн×ʽϽÓÄÉÍâÑóоƬµÄÏîÄ¿¸ß15%-20%¡£¡£¡£¡£ÀýÈçÄϾ©Ä³º½ÌìÆóÒµµÄFPGA¹¤³Ìʦ¸Úλ £¬£¬ £¬ÒªÇó”ÊìϤ×Ϲâͬ´´LogosϵÁÐFPGA¿ª·¢” £¬£¬ £¬Ð½×ÊΪ25-40k¡¤15н £¬£¬ £¬ÇÒÌṩÊÂÒµÌåÀýºÍ±£ÃܽòÌù¡£¡£¡£¡£

ËÄ¡¢Ö°ÒµÉú³¤Â·¾¶Ó뾺ÕùÁ¦¹¹½¨£ºÂÄÀúÖý¾ÍµÄ”·ÇÇà´º·¹”

4.1 ¼¼ÊõÉú³¤µÄÈý½×¶ÎÄ£×Ó

FPGA¹¤³ÌʦµÄ¼¼ÊõÉú³¤·ºÆðÇåÎúµÄõ辶ʽ·¾¶ £¬£¬ £¬Ã¿¸ö½×¶Î¶ÔÓ¦²î±ðµÄÄÜÁ¦ÒªÇóºÍ½¹µãʹÃü¡£¡£¡£¡£» £»£»£»£»£»ù´¡Âß¼­Éè¼Æ½×¶Î£¨1-3ÄêÂÄÀú£©ÊÇÄÜÁ¦¹¹½¨µÄÒªº¦ÆÚ £¬£¬ £¬½¹µãÄ¿µÄÊÇÕÆÎÕFPGA¿ª·¢µÄ”ÓïÑÔ”ºÍ”¹¤¾ß”£ºÊìÁ·Ê¹ÓÃVerilog/VHDL±àд¿É×ۺϴúÂë £¬£¬ £¬Äܹ»×ÔÁ¦Íê³É¼òÆÓÄ£¿£¿£¿£¿é£¨ÈçUART¡¢SPI¡¢I2C½Ó¿Ú£©µÄÉè¼ÆÓë·ÂÕæ£» £»£»£»£»£»ÕÆÎÕXilinx Vivado»òIntel QuartusµÈÖ÷Á÷¿ª·¢¹¤¾ßÁ´ £¬£¬ £¬°üÀ¨RTL±àÂë¡¢×ۺϡ¢ÊµÏÖ¡¢ÌìÉú±ÈÌØÁ÷µÈÈ«Á÷³Ì²Ù×÷£» £»£»£»£»£»Ã÷È·Êý×ֵ緻ù´¡ÀíÂÛ £¬£¬ £¬Äܹ»ÆÊÎö¼òÆÓʱÐòÎÊÌâ²¢Ìá³öÓÅ»¯¼Æ»®¡£¡£¡£¡£´Ë½×¶ÎµÄµä·¶ÏîÄ¿°üÀ¨£º»ùÓÚFPGAµÄLEDÏÔʾÆÁ¿ØÖÆ¡¢´®¿ÚÊý¾Ý´«Êäϵͳ¡¢¼òÆÓÊý×ÖÂ˲¨Æ÷Éè¼ÆµÈ £¬£¬ £¬Í¨¹ýÕâЩÏîÄ¿»ýÀÛÓ²¼þ±à³ÌÍ·ÄԺ͹¤¾ßʹÓÃÂÄÀú¡£¡£¡£¡£

ÖØ´óϵͳ¿ª·¢½×¶Î£¨3-7ÄêÂÄÀú£©ÒªÇ󹤳Ìʦ¾ß±¸ÏµÍ³¼¯³ÉÄÜÁ¦ºÍÉî¶ÈÓÅ»¯ÄÜÁ¦ £¬£¬ £¬½¹µãʹÃü´Ó”Ä£¿£¿£¿£¿éÉè¼Æ”תÏò”ϵͳʵÏÖ”£ºÕÆÎÕ¸ßËÙ½Ó¿ÚЭÒ飨ÈçPCIe Gen4/Gen5¡¢DDR4/DDR5¡¢10G/25G Ethernet£©µÄFPGAʵÏÖ £¬£¬ £¬Äܹ»½â¾ö¿çʱÖÓÓò´¦Öóͷ£¡¢ÐźÅÍêÕûÐÔµÈÖØ´óÎÊÌ⣻ £»£»£»£»£»ÐÑĿʱÐòÆÊÎöÓëÓÅ»¯¼¼Êõ £¬£¬ £¬¿ÉÕë¶Ô°ÙÍòÃż¶µç·¾ÙÐÐʱÐòÊÕÁ² £¬£¬ £¬Öª×ãÄÉÃ뼶ʱÐòÔ¼Êø£» £»£»£»£»£»ÊìϤSoC FPGA£¨ÈçXilinx Zynq¡¢Intel Cyclone V£©µÄ¿ª·¢Á÷³Ì £¬£¬ £¬ÊµÏÖARM´¦Öóͷ£Æ÷ÓëFPGAÂß¼­µÄЭͬÊÂÇé¡£¡£¡£¡£Ä³Í¨Ñ¶×°±¸³§É̵Ä5G»ùÕ¾»ù´ø´¦Öóͷ£ÏîÄ¿ÖÐ £¬£¬ £¬Öм¶FPGA¹¤³ÌʦÐè×ÔÁ¦Íê³É10GbpsÊý¾ÝÍÌÍÂÁ¿µÄÐźŴ¦Öóͷ£Ä£¿£¿£¿£¿éÉè¼Æ £¬£¬ £¬Í¨¹ýʱÐòÓÅ»¯½«Òªº¦Â·¾¶ÑÓ³Ù´Ó8ns½µÖÁ5ns £¬£¬ £¬Öª×ãϵͳÐÔÄÜÒªÇ󡣡£¡£¡£´Ë½×¶Î¹¤³Ìʦ×îÏÈÐγÉÁìÓòר³¤ £¬£¬ £¬ÈçרעÓÚͨѶ¡¢AI¼ÓËÙ»ò¹¤Òµ¿ØÖÆÆ«Ïò £¬£¬ £¬Ð½×ʽøÈë30k-50k/ÔÂÇø¼ä¡£¡£¡£¡£

¼Ü¹¹Éè¼Æ½×¶Î£¨7ÄêÒÔÉÏÂÄÀú£©ÊǼ¼ÊõÉú³¤µÄ¸ß¼¶½×¶Î £¬£¬ £¬¹¤³Ìʦ´Ó”Ö´ÐÐÕߔת±äΪ”Éè¼ÆÕß” £¬£¬ £¬½¹µãʹÃü°üÀ¨£º¼ÓÈëϵͳ¼Ü¹¹Éè¼Æ¾öÒé £¬£¬ £¬ÆÀ¹ÀFPGAÔÚÕûÌ弯»®ÖеĿÉÐÐÐÔÓë±¾Ç®Ð§Òæ£» £»£»£»£»£»Ö÷µ¼ÖØ´óFPGAϵͳ£¨Èç¶àоƬ»¥Áª¡¢Òì¹¹ÅÌËã¼Ü¹¹£©µÄÉè¼ÆÓëʵÏÖ £¬£¬ £¬½â¾ö×ÊÔ´·ÖÅÉ¡¢¹¦ºÄÓÅ»¯µÈϵͳÐÔÎÊÌ⣻ £»£»£»£»£»Ö¸µ¼³õ¼¶¹¤³Ìʦ¿ªÕ¹ÊÂÇé £¬£¬ £¬Öƶ©¼¼Êõ¹æ·¶ºÍ¿ª·¢Á÷³Ì¡£¡£¡£¡£ÔÚAI¼ÓËÙÁìÓò £¬£¬ £¬¸ß¼¶¹¤³ÌʦÐèÆ¾Ö¤Ëã·¨ÐèÇóÉè¼ÆFPGA¼ÓËÙÆ÷¼Ü¹¹ £¬£¬ £¬Æ½ºâÅÌËã×ÊÔ´¡¢´æ´¢´ø¿íºÍ¹¦ºÄÖ¸±ê£» £»£»£»£»£»ÔÚоƬÑéÖ¤ÁìÓò £¬£¬ £¬ÐèÉè¼ÆÔ­ÐÍÑé֤ƽ̨µÄÕûÌå¼Ü¹¹ £¬£¬ £¬Öƶ©ÑéÖ¤²ßÂÔºÍÁýÕÖÂÊÄ¿µÄ¡£¡£¡£¡£Ä³°ëµ¼ÌåÆóÒµµÄ¸ß¼¶FPGA¹¤³ÌʦÖ÷µ¼¿ª·¢µÄSoCÔ­ÐÍÑé֤ƽ̨ £¬£¬ £¬Ö§³Ö5ÒÚÃż¶µç·ÑéÖ¤ £¬£¬ £¬½ÏÉÏÒ»´úƽ̨Ñé֤ЧÂÊÌáÉý60% £¬£¬ £¬¸Ã¹¤³ÌʦÒò´Ë»ñµÃ¹«Ë¾½¹µã¼¼Êõ½± £¬£¬ £¬²¢ÌáÉýΪ¼¼Êõ×ܼà¡£¡£¡£¡£

4.2 ÂÄÀúÔöֵЧӦÓëÖ°ÒµÉúÃüÖÜÆÚ

FPGA¹¤³ÌʦµÄÖ°Òµ¾ºÕùÁ¦ËæÂÄÀúÀÛ»ý·ºÆð”Ö¸Êý¼¶ÔöÌí” £¬£¬ £¬ÕâÒ»ÌØÕ÷ʹÆäÏÔÖøÇø±ðÓÚ²¿·Ö”Çà´º·¹”ÐÐÒµ¡£¡£¡£¡£¼¼Êõ±ÚÀݸߡ¢ÖªÊ¶¸´ÓÃÐÔÇ¿ÊÇÂÄÀúÔöÖµµÄµ×²ãÂß¼­£ºFPGA¿ª·¢Éæ¼°Êý×ֵ緡¢Ó²¼þ¼Ü¹¹¡¢Ë㷨ʵÏֵȶàѧ¿ÆÖªÊ¶ £¬£¬ £¬ÕâЩ֪ʶϵͳ¾ßÓи߶ÈÎȹÌÐÔ £¬£¬ £¬²»»áÒò¼¼Êõµü´ú¶ø¿ìËÙ¹ýʱ£» £»£»£»£»£»Ê±ÐòÓÅ»¯¡¢¿çʱÖÓÓò´¦Öóͷ£µÈ½¹µã¼¼ÄÜÐèÒªºã¾ÃÏîÄ¿ÂÄÀú³Áµí £¬£¬ £¬ÀýÈçÔÚ¸ßËÙ½Ó¿ÚÉè¼ÆÖÐ £¬£¬ £¬×ÊÉ³Ìʦ¿ÉÒÀ¸½¶ÔFPGA¼Ü¹¹µÄÉî¿ÌÃ÷È· £¬£¬ £¬Í¨¹ý½á¹¹²¼ÏßÔ¼ÊøºÍÂß¼­Öع¹ £¬£¬ £¬½«Êý¾Ý´«ÊäËÙÂÊ´Ó8GbpsÌáÉýÖÁ12Gbps £¬£¬ £¬ÕâÒ»ÄÜÁ¦Ðè5ÄêÒÔÉÏÏîÄ¿ÂÄÀú²Å»ªÐγÉ¡£¡£¡£¡£

ÐÐÒµÊý¾ÝÓ¡Ö¤ÁËFPGA¹¤³ÌʦµÄ”ÓÀÉúÃüÖÜÆÚ”ÌØÕ÷¡£¡£¡£¡£º£ÄÚFPGAÈ˲ÅÊг¡µ÷Ñб¨¸æÏÔʾ £¬£¬ £¬35ËêÒÔÉÏFPGA¹¤³ÌʦµÄ¸ÚλÐèÇóÕ¼±È´ï42% £¬£¬ £¬ÏÔÖø¸ßÓÚÈí¼þ¹¤³Ìʦ£¨28%£©ºÍǶÈëʽ¹¤³Ìʦ£¨35%£©£» £»£»£»£»£»ÔÚн×Ê·½Ãæ £¬£¬ £¬35-45Ëê×ÊÉ³ÌʦµÄн×ÊÔöÌíÂÊÈÔ¼á³ÖÔÚ8%-12%/Äê £¬£¬ £¬¶øÍ¬ÆÚ²¿·Ö»¥ÁªÍøÐÐÒµµÄ¹¤³Ìʦн×ÊÔöÌíÂÊÒѽµÖÁ3%-5%¡£¡£¡£¡£Ä³Í¨Ñ¶×°±¸³§É̵ݸÀý¼«¾ß´ú±íÐÔ£ºÒ»Î»42ËêµÄFPGA¹¤³Ìʦͨ¹ýתÐÍSoCϵͳ¼Ü¹¹Éè¼Æ £¬£¬ £¬Ïòµ¼ÍŶÓÍê³É5G»ùÕ¾»ù´ø´¦Öóͷ£Ä£¿£¿£¿£¿é¿ª·¢ £¬£¬ £¬ÆäÖ÷µ¼µÄʱÐòÊÕÁ²¼Æ»®±»ÄÉÈ빫˾½¹µã¼¼Êõ¿â £¬£¬ £¬Äêн´Ó50ÍòÌáÉýÖÁ80Íò¡£¡£¡£¡£ÕâÖÖתÐÍÄÜÁ¦Ô´ÓÚºã¾Ã»ýÀÛµÄÓ²¼þÁýͳͷÄÔ¡ª¡ªÓë´¿Èí¼þ¹¤³ÌʦÏà±È £¬£¬ £¬FPGA¹¤³ÌʦÔÚËã·¨Ó²¼þ»¯ÊµÏÖ¡¢µÍ¹¦ºÄÉè¼ÆµÈ·½ÃæÐγɵļ¼Êõ±ÚÀÝ £¬£¬ £¬Ê¹ÆäÔÚÖ°ÒµÖкóÆÚÈÔÄܼá³Ö¾ºÕùÁ¦¡£¡£¡£¡£

4.3 µä·¶Ö°Òµ×ªÐÍÆ«ÏòÓëÉú³¤¿Õ¼ä

FPGA¹¤³ÌʦµÄ¼¼Êõ¸´ºÏÐÔʹÆä¾ß±¸¶àÔªÖ°ÒµÉú³¤Â·¾¶ £¬£¬ £¬¿Éƾ֤СÎÒ˽¼ÒÐËȤºÍÐÐÒµÇ÷ÊÆÑ¡ÔñתÐÍÆ«Ïò¡£¡£¡£¡£ASICǰ¶ËÉè¼ÆÊÇ×î×ÔÈ»µÄתÐÍ·¾¶ £¬£¬ £¬FPGAÓëASICÔÚRTLÉè¼Æ¡¢Ê±ÐòÆÊÎöµÈ·½ÃæµÄ¼¼Êõ¸ß¶È»¥Í¨ £¬£¬ £¬¾ß±¸FPGAÂÄÀúµÄ¹¤³ÌʦתÐÍASICǰ¶ËÉè¼Æ¿ÉËõ¶Ì6-12¸öÔµÄ˳ӦÆÚ¡£¡£¡£¡£ÏÖÔÚ £¬£¬ £¬Ð¾Æ¬Éè¼Æ¹«Ë¾¶ÔFPGAתASICÈ˲ŵÄÐèÇóÐËÍú £¬£¬ £¬Ä³°ëµ¼ÌåÆóÒµµÄASICǰ¶Ë¸ÚλÃ÷È·±ê×¢”ÓÅÏÈ˼Á¿ÓÐFPGA¿ª·¢ÂÄÀúÕß” £¬£¬ £¬Ð½×ʽÏͬ¼¶±ðFPGA¸Úλ¸ß15%-20%¡£¡£¡£¡£×ªÐÍÀֳɵÄÒªº¦ÊÇÔö²¹ASICÉè¼ÆÁ÷³Ì֪ʶ£¨Èç×ۺϲßÂÔ¡¢ÎïÀíÔ¼Êø£©ºÍ¹¤¾ßʹÓÃÂÄÀú£¨ÈçDesign Compiler¡¢PrimeTime£©¡£¡£¡£¡£

ǶÈëʽϵͳ¼Ü¹¹Ê¦ÊÇÁíÒ»ÈÈÃÅתÐÍÆ«Ïò £¬£¬ £¬ÓÈÆäÊʺ϶ÔÈíÓ²¼þЭͬÉè¼Æ¸ÐÐËȤµÄ¹¤³Ìʦ¡£¡£¡£¡£FPGA¹¤³ÌʦÔÚSoC FPGA¿ª·¢ÖлýÀÛµÄARM´¦Öóͷ£Æ÷±à³Ì¡¢LinuxÇý¶¯¿ª·¢ÂÄÀú £¬£¬ £¬Îª×ªÐÍǶÈëʽϵͳ¼Ü¹¹Ê¦µÓÚ¨»ù´¡¡£¡£¡£¡£Ëæ×Å×Ô¶¯¼ÝÊ»¡¢¹¤Òµ»¥ÁªÍøµÈÁìÓòµÄÉú³¤ £¬£¬ £¬¾ß±¸”FPGA+ǶÈëʽ”¸´ºÏ¼¼Äܵļܹ¹Ê¦Ð½×ÊË®ÕÇ´¬¸ß £¬£¬ £¬Ä³×Ô¶¯¼ÝÊ»¹«Ë¾µÄÓò¿ØÖÆÆ÷¼Ü¹¹Ê¦¸Ú루ҪÇóFPGA+CANoe×ÜÏß¿ª·¢ÂÄÀú£©Æðн´ï40k-60k/Ô £¬£¬ £¬½Ï¼òµ¥¼¼ÄÜÕ߸ß25%¡£¡£¡£¡£×ªÐÍÐèÖØµãÔö²¹²Ù×÷ϵͳԭÀí¡¢×ÜÏßЭÒ飨ÈçCAN¡¢Ethernet AVB£©ºÍϵͳ¼¯³É֪ʶ¡£¡£¡£¡£

ÐÂÐËÁìÓòΪFPGA¹¤³Ìʦ´´Á¢ÁË¿ç½çתÐÍ»úÔµ¡£¡£¡£¡£×Ô¶¯¼ÝÊ»Óò¿ØÖÆÆ÷¿ª·¢ÐèÒª¹¤³Ìʦ½«¸ÐÖªËã·¨£¨È缤¹âÀ×´ïµãÔÆ´¦Öóͷ££©¸ßЧӳÉäµ½FPGAÓ²¼þ £¬£¬ £¬Ä³Æû³µµç×ÓÆóÒµµÄÕÐÆ¸Êý¾ÝÏÔʾ £¬£¬ £¬¾ß±¸FPGA+×Ô¶¯¼ÝÊ»Ëã·¨ÂÄÀúµÄ¹¤³ÌʦÄêн¿É´ï80Íò-120Íò£» £»£»£»£»£»Á¿×ÓÅÌËãÁìÓò £¬£¬ £¬FPGAÓÃÓÚÁ¿×Ó±ÈÌØ¿ØÖƺÍÁ¿×Ó¾À´íË㷨ʵÏÖ £¬£¬ £¬IBM¡¢¹È¸èµÈÆóÒµÒÑ×îÏÈÕÐÆ¸¾ß±¸FPGAÅä¾°µÄÁ¿×ÓÅÌË㹤³Ìʦ£» £»£»£»£»£»¹¤ÒµÔªÓîÖæÁìÓò £¬£¬ £¬FPGA¿ÉʵÏÖÐéʵÁ¬Ïµ³¡¾°µÄµÍÑÓ³ÙäÖȾ £¬£¬ £¬Ä³¹¤ÒµÈí¼þ¹«Ë¾µÄFPGA¼ÓËÙÏîĿΪ¼ÓÈëÕß¿ª³ö3±¶ÓÚÐÐҵƽ¾ùˮƽµÄн×Ê¡£¡£¡£¡£ÕâЩ¿ç½çתÐÍÆ«ÏòËäȻΣº¦½Ï¸ß £¬£¬ £¬µ«Ò»µ©ÀÖ³É £¬£¬ £¬½«»ñµÃÔ¶³¬¹Å°åÁìÓòµÄÖ°Òµ»Ø±¨¡£¡£¡£¡£

Îå¡¢¼¼ÊõÃż÷ÓëÄÜÁ¦×÷Óýϵͳ£º¹¹½¨½¹µã¾ºÕùÁ¦

5.1 ½¹µã¼¼ÄÜϵͳÓë֪ʶ¼Ü¹¹

FPGA¹¤³ÌʦµÄ½¹µã¼¼ÄÜϵͳ·ºÆð”½ð×ÖËþ”½á¹¹ £¬£¬ £¬µ×²ãÊÇÔúʵµÄÀíÂÛ»ù´¡ £¬£¬ £¬ÖвãÊǹ¤¾ßʹÓÃÄÜÁ¦ £¬£¬ £¬¶¥²ãÊǹ¤³Ìʵ¼ùÂÄÀú¡£¡£¡£¡£Êý×Öµç·ÀíÂÛÊÇÕû¸öϵͳµÄ»ùʯ £¬£¬ £¬°üÀ¨Âß¼­Ãŵç·¡¢×éºÏ/ʱÐòÂß¼­¡¢×´Ì¬»úÉè¼ÆµÈ½¹µã¿´·¨ £¬£¬ £¬¹¤³ÌʦÐèÄܹ»ÔËÓÿ¨ÅµÍ¼»¯¼òÂß¼­¡¢ÆÊÎö½¨Éèʱ¼ä/¼á³Öʱ¼äÎ¥Àý £¬£¬ £¬ÕâÒ»»ù´¡Ö±½Ó¾öÒéÁËRTL´úÂëµÄÖÊÁ¿ºÍʱÐòÓÅ»¯ÄÜÁ¦¡£¡£¡£¡£Ó²¼þÐÎòÓïÑÔ£¨HDL£©ÊÇFPGA¿ª·¢µÄ”ÓïÑÔ” £¬£¬ £¬º£ÄÚ90%ÒÔÉϵĸÚλҪÇóÕÆÎÕVerilog HDL £¬£¬ £¬ÒòÆäÓï·¨¿¿½üCÓïÑÔÇÒ¿É×ÛºÏÆø¸Å´úÂë±àдÎÞа£» £»£»£»£»£»VHDLÔÚ¾ü¹¤¡¢º½¿Õº½ÌìÁìÓòÈÔÓÐÓ¦Óà £¬£¬ £¬µ«Êг¡ÐèÇóÕ¼±ÈÖðÄêϽµ¡£¡£¡£¡£ÓÅÒìµÄVerilog´úÂëÓ¦¾ß±¸¿É×ÛºÏÐÔ¡¢¿Éά»¤ÐԺͿÉÖØÓÃÐÔ £¬£¬ £¬Äܹ»Í¨¹ýÄ£¿£¿£¿£¿é»¯Éè¼ÆÊµÏÖÖØ´ó¹¦Ð§¡£¡£¡£¡£

¿ª·¢¹¤¾ßÁ´ºÍÓ²¼þµ÷ÊÔÄÜÁ¦×é³ÉÖв㽹µã¼¼ÄÜ¡£¡£¡£¡£¹¤³ÌʦÐèÐÑÄ¿ÖÁÉÙÒ»ÖÖÖ÷Á÷FPGA³§É̵Ŀª·¢¹¤¾ß£ºXilinx Vivado»òIntel Quartus £¬£¬ £¬ÕÆÎÕ´ÓRTL¼Èë¡¢×ۺϡ¢½á¹¹²¼Ïßµ½ÌìÉú±ÈÌØÁ÷µÄÈ«Á÷³Ì²Ù×÷£» £»£»£»£»£»ÊìϤ·ÂÕæ¹¤¾ß£¨ÈçModelSim¡¢Questa£©µÄTestbench±àд £¬£¬ £¬Äܹ»Í¨¹ý¹¦Ð§·ÂÕæºÍʱÐò·ÂÕæÑéÖ¤Éè¼Æ×¼È·ÐÔ£» £»£»£»£»£»ÕÆÎÕÔÚÏßµ÷ÊÔ¹¤¾ß£¨ÈçXilinx ChipScope¡¢Intel SignalTap£©µÄʹÓà £¬£¬ £¬¿É¿ìËÙ¶¨Î»Ó²¼þ¹ÊÕÏ¡£¡£¡£¡£Ó²¼þµ÷ÊÔÄÜÁ¦ÓÈΪҪº¦ £¬£¬ £¬°üÀ¨Ê¹ÓÃʾ²¨Æ÷¡¢Âß¼­ÆÊÎöÒǵȲâÊÔ×°±¸ÆÊÎöÐźÅÖÊÁ¿ £¬£¬ £¬Í¨¹ýÔ¼ÊøÎļþÓÅ»¯¸ÄÉÆÊ±ÐòÐÔÄÜ £¬£¬ £¬Ä³×ÊÉ³Ìʦ̹ÑÔ£º”Ò»¸öÖØ´óFPGAϵͳµÄµ÷ÊÔʱ¼äÍùÍùÕ¼Õû¸öÏîÄ¿ÖÜÆÚµÄ60%ÒÔÉÏ £¬£¬ £¬µ÷ÊÔÄÜÁ¦Ö±½Ó¾öÒéÏîÄ¿³É°Ü¡£¡£¡£¡£”

¸ß½×¼¼Äܾ۽¹Ìض¨ÁìÓòµÄÉî¶ÈÓÅ»¯ÄÜÁ¦¡£¡£¡£¡£¸ßËÙ½Ó¿ÚЭÒéʵÏÖÊÇͨѶ¡¢Êý¾ÝÖÐÐÄÁìÓòµÄ±Ø±¸¼¼ÄÜ £¬£¬ £¬¹¤³ÌʦÐèÕÆÎÕPCIe Gen4/Gen5¡¢DDR4/DDR5¡¢10G/25G EthernetµÈЭÒéµÄFPGA IPºËÉèÖÃÓë×Ô½ç˵Âß¼­¿ª·¢ £¬£¬ £¬½â¾öÐźÅÍêÕûÐÔ¡¢Ê±ÐòÊÕÁ²µÈÄÑÌ⣻ £»£»£»£»£»µÍ¹¦ºÄÉè¼Æ¼¼ÊõÔÚµç³Ø¹©µç×°±¸£¨ÈçÊÖ³ÖÖÕ¶Ë¡¢ÎïÁªÍø½Úµã£©ÖÐÖÁ¹ØÖ÷Òª £¬£¬ £¬Í¨¹ýʱÖÓÃſء¢µçÔ´¹ÜÀí¡¢¶¯Ì¬µçѹµ÷ÀíµÈÒªÁì £¬£¬ £¬¿É½«FPGA¹¦ºÄ½µµÍ30%-50%£» £»£»£»£»£»AI¼ÓËÙË㷨ʵÏÖÒªÇ󹤳ÌʦÃ÷È·Éñ¾­ÍøÂçÁ¿»¯¡¢²¢ÐÐÅÌËã¼Ü¹¹ £¬£¬ £¬Äܹ»Ê¹ÓÃHLS£¨¸ßÌõÀí×ۺϣ©¹¤¾ß»òÊÖ¶¯±àдRTL´úÂëʵÏÖCNN¡¢RNNµÈÄ£×ÓµÄÓ²¼þ¼ÓËÙ¡£¡£¡£¡£ÕâЩ¸ß½×¼¼ÄܵÄÕÆÎÕˮƽֱ½Ó¾öÒéн×Êˮƽ £¬£¬ £¬Ä³ÆóÒµÕÐÆ¸Êý¾ÝÏÔʾ £¬£¬ £¬¾ß±¸PCIe Gen5ʵÏÖÂÄÀúµÄFPGA¹¤³Ìʦн×ʽÏÎÞ¸ßËÙ½Ó¿ÚÂÄÀúÕ߸ß40%¡£¡£¡£¡£

5.2 ѧϰÄÑ¶ÈÆÊÎöÓëÄÜÁ¦Í»ÆÆµã

FPGAѧϰ·ºÆðÏÔÖøµÄ”õ辶ʽÄÑ¶È”ÌØÕ÷ £¬£¬ £¬²î±ð½×¶ÎÃæÁÙ²î±ðµÄÄÜÁ¦Æ¿¾± £¬£¬ £¬Í»ÆÆÕâЩƿ¾±ÊǼ¼Êõ½ø½×µÄÒªº¦¡£¡£¡£¡£ÈëÃŽ׶Σ¨0-1Ä꣩µÄÖ÷Ҫƿ¾±ÊǔӲ¼þÍ·ÄÔ½¨Éè” £¬£¬ £¬Èí¼þ¹¤³ÌʦתÐÍFPGAʱ³£Òò”ʱÐòÎ޹ؔͷÄÔµ¼Ö´úÂë²»¿É×ۺϡª¡ªÀýÈçʹÓÃforÑ­»·ÊµÏÖ¼ÆÊýÆ÷¶øÎ´Ë¼Á¿Ó²¼þ²¢ÐÐÐÔ £¬£¬ £¬»òºöÂÔʱÖÓÔ¼Êøµ¼Ö¹¦Ð§¹ýʧ¡£¡£¡£¡£Í»ÆÆÕâһƿ¾±µÄÒªº¦ÊÇͨ¹ý´ó×ÚʵÀýѵÁ· £¬£¬ £¬½«”Èí¼þËã·¨”ת»¯Îª”Ó²¼þµç·”Í·ÄÔ £¬£¬ £¬ÀýÈçÓÃ״̬»úÌæ»»ÖØ´óÌõ¼þÅÐ¶Ï £¬£¬ £¬ÓÃÒÆÎ»¼Ä´æÆ÷ʵÏÖÑÓ³Ù¹¦Ð§¡£¡£¡£¡£Ä³Åàѵ»ú¹¹µÄ½Ìѧʵ¼ùÅú×¢ £¬£¬ £¬Í¨¹ý”´úÂë-µç·”±ÈÕÕÆÊÎöѵÁ· £¬£¬ £¬Ñ§Ô±µÄVerilog´úÂë¿É×ÛºÏÂÊ´Ó³õÆÚµÄ40%ÌáÉýÖÁ90%ÒÔÉÏ¡£¡£¡£¡£

Öм¶½×¶Î£¨2-5Ä꣩µÄ½¹µãÆ¿¾±ÊǔʱÐòÆÊÎöÓëÓÅ»¯” £¬£¬ £¬ÕâÊÇFPGA¿ª·¢ÖÐ×î¾ßÌôÕ½ÐԵĻ·½ÚÖ®Ò»¡£¡£¡£¡£¹¤³ÌʦÐèÃæÁÙ¶àÖÖʱÐòÎÊÌ⣺¿çʱÖÓÓòÊý¾Ý´«Êäµ¼ÖµÄÑÇÎÈ̬ £¬£¬ £¬¸ßËٽӿڵĽ¨Éèʱ¼ä/¼á³Öʱ¼äÎ¥Àý £¬£¬ £¬ÖØ´óÂß¼­µÄÒªº¦Â·¾¶ÑÓ³Ù¹ý´óµÈ¡£¡£¡£¡£½â¾öÕâЩÎÊÌâÐèÒª×ÛºÏÔËÓÃÔ¼ÊøÓÅ»¯£¨ÈçÉèÖöàÖÜÆÚ·¾¶¡¢Ðéα·¾¶£©¡¢Âß¼­Öع¹£¨ÈçÁ÷Ë®ÏßÉè¼Æ¡¢×ÊÔ´¸´Óã©¡¢ÎïÀíʵÏÖÓÅ»¯£¨Èç½á¹¹Ô¼Êø¡¢Âß¼­·ÖÇø£©µÈÒªÁì¡£¡£¡£¡£Ä³Í¨Ñ¶ÏîÄ¿ÖÐ £¬£¬ £¬¹¤³Ìʦͨ¹ý½«10Gbps Ethernet½Ó¿ÚµÄÒªº¦Â·¾¶²ð·ÖΪ3¼¶Á÷Ë®Ïß £¬£¬ £¬Á¬Ïµ½á¹¹Ô¼Êø½«Â·¾¶ÑÓ³Ù´Ó12ns½µÖÁ7ns £¬£¬ £¬Öª×ãϵͳʱÐòÒªÇ󡣡£¡£¡£Í»ÆÆÊ±ÐòÆ¿¾±Ã»Óнݾ¶ £¬£¬ £¬Ðèͨ¹ý¶à¸öÏÖʵÏîÄ¿»ýÀÛÂÄÀú £¬£¬ £¬ÊìϤ²î±ðFPGAÆ÷¼þµÄ¼Ü¹¹ÌØÕ÷£¨ÈçXilinx UltraScale+µÄSLR¼ä»¥ÁªÑÓ³Ù£©¡£¡£¡£¡£

¸ß¼¶½×¶Î£¨5ÄêÒÔÉÏ£©µÄÆ¿¾±Êǔϵͳ¼¶Éè¼ÆÄÜÁ¦” £¬£¬ £¬¹¤³ÌʦÐè´Ó”Ä£¿£¿£¿£¿éÍ·ÄԔתÏò”ϵͳͷÄÔ” £¬£¬ £¬×ÛºÏ˼Á¿ÐÔÄÜ¡¢±¾Ç®¡¢¹¦ºÄ¡¢¿É¿¿ÐԵȶàά¶ÈÖ¸±ê¡£¡£¡£¡£ÔÚ¶àоƬ»¥ÁªÏµÍ³ÖÐ £¬£¬ £¬ÐèÉè¼Æ¸ßЧµÄͨѶЭæÅºÍͬ²½»úÖÆ£» £»£»£»£»£»ÔÚÒì¹¹ÅÌËã¼Ü¹¹ÖÐ £¬£¬ £¬ÐèÆ½ºâFPGAÂß¼­¡¢CPU¡¢GPUµÄËãÁ¦·ÖÅÉ£» £»£»£»£»£»ÔÚ´ó¹æÄ£FPGAϵͳÖÐ £¬£¬ £¬Ðè½â¾ö×ÊÔ´³åÍ»¡¢É¢ÈȹÜÀíµÈ¹¤³ÌÎÊÌâ¡£¡£¡£¡£Ä³AI¼ÓËÙÏîÄ¿ÖÐ £¬£¬ £¬¸ß¼¶¹¤³Ìʦ̫ͨ¹ýÎö¾í»ýÉñ¾­ÍøÂç¸÷²ãµÄÅÌËãÌØÕ÷ £¬£¬ £¬½«È¨ÖØ´æ´¢·ÖÅɵ½FPGAµÄBRAMºÍÍⲿDDRÖÐ £¬£¬ £¬ÊµÏÖÅÌËã×ÊԴʹÓÃÂÊÌáÉý50% £¬£¬ £¬¹¦ºÄ½µµÍ30%¡£¡£¡£¡£ÏµÍ³¼¶Éè¼ÆÄÜÁ¦µÄ×÷ÓýÐèÒª¼ÓÈë¶Ëµ½¶ËÏîÄ¿ £¬£¬ £¬´ÓÐèÇóÆÊÎö¡¢¼Ü¹¹Éè¼Æµ½²âÊÔÑé֤ȫ³Ì¸ú½ø £¬£¬ £¬Öð²½½¨ÉèÈ«¾ÖÓÅ»¯Í·ÄÔ¡£¡£¡£¡£

5.3 ¸ßУ½ÌÓýÓëÐÐÒµÐèÇóµÄ²î±ðÆÊÎö

Ä¿½ñ¸ßУFPGA½ÌÓýÓëÐÐÒµÏÖʵÐèÇó±£´æÏÔÖø²î±ð £¬£¬ £¬Ö÷ÒªÌåÏÖÔڿγÌÉèÖÃÖͺó¡¢Êµ¼ù×ÊԴȱ·¦ºÍ½ÌѧÄÚÈÝÓ빤ҵÍѽÚÈý¸ö·½Ãæ¡£¡£¡£¡£¿£¿£¿£¿Î³ÌÆÕ¼°Ë®Æ½È±·¦ £¬£¬ £¬ËäÈ»º£ÄÚµç×ÓÐÅÏ¢ÀàרҵÒÑÆÕ±é¿ªÉè¡¶Êý×ÖÂß¼­Éè¼Æ¡·¿Î³Ì £¬£¬ £¬µ«×¨ÃŵÄFPGA¿Î³Ì£¨Èç¡¶FPGAÔ­ÀíÓëÓ¦Óá·£©¿ªÉèÂÊȱ·¦40% £¬£¬ £¬ÇҴ󶼸ßУÔÚ´óÈý»ò´óËIJſªÉè £¬£¬ £¬µ¼ÖÂѧÉú½Ó´¥FPGAµÄʱ¼ä½ÏÍí£» £»£»£»£»£»¿Î³ÌÄÚÈݸüлºÂý £¬£¬ £¬¿Î±¾ÖÐÈÔ´ó×ÚÆª·ù½éÉܹŰåCPLDºÍÔçÆÚFPGAÆ÷¼þ£¨ÈçXilinx Spartan-3£© £¬£¬ £¬¶Ô×îеÄSoC FPGA¡¢AI¼ÓËÙÓ¦ÓõÈÇ°ÑØÄÚÈÝÉæ¼°½ÏÉÙ£» £»£»£»£»£»½ÌѧҪÁì×ÅÖØÀíÂÛ½Ìѧ £¬£¬ £¬ÊµÑé»·½Ú¶àΪÑéÖ¤ÐÔʵÑ飨ÈçµãÁÁLED¡¢ÊµÏÖ¼òÆÓ¼ÆÊýÆ÷£© £¬£¬ £¬È±·¦ÖØ´óϵͳÉè¼ÆÑµÁ· £¬£¬ £¬ÓëÆóÒµÏÖʵÏîÄ¿ÐèÇóÍѽÚ¡£¡£¡£¡£

ʵ¼ù×ÊԴȱ·¦ÊǸßУFPGA½ÌÓýµÄÁíÒ»´óÍ´µã¡£¡£¡£¡£FPGA¿ª·¢°å¼ÛÇ®ÌÚ¹ó£¨Öи߶˿ª·¢°åµ¥¼ÛÁè¼Ý5000Ôª£© £¬£¬ £¬´ó¶¼¸ßУÒò¾­·ÑÏÞÖÆÎÞ·¨ÎªÑ§ÉúÅ䱸СÎÒ˽¼Ò¿ª·¢°å £¬£¬ £¬µ¼ÖÂѧÉúÈ˾ùʵ¼ùʱ¼äȱ·¦£» £»£»£»£»£»ÊµÑéÆ½Ì¨³Â¸¯ £¬£¬ £¬²¿·Ö¸ßУÈÔÔÚʹÓÃ10ÄêǰµÄ¿ª·¢°å£¨ÈçXilinx Spartan-6£© £¬£¬ £¬ÎÞ·¨Ö§³Ö¸ßËÙ½Ó¿Ú£¨ÈçPCIe¡¢10G Ethernet£©ÊµÑ飻 £»£»£»£»£»È±·¦ÆóÒµ¼¶EDA¹¤¾ßÖ§³Ö £¬£¬ £¬Synopsys¡¢CadenceµÈÉÌÒµEDA¹¤¾ßÿÌ×ÊÚȨÓöȸߴïÊý°ÙÍò £¬£¬ £¬¸ßУÄÑÒԼ縺 £¬£¬ £¬Ñ§Éú½áÒµºóÐèÖØÐÂѧϰÐÐÒµÖ÷Á÷¹¤¾ß¡£¡£¡£¡£Ä³ÆóÒµHRÌåÏÖ£º”Ó¦½ìÉú¼òÀúÖÐдµÄFPGAÏîÄ¿¶àÊÇLED¿ØÖÆ¡¢Á÷Ë®µÆµÈ¼òÖÊÆÓÑé £¬£¬ £¬ÓëÎÒÃÇÐèÒªµÄ¸ßËÙÊý¾Ý´«Ê䡢ͼÏñ´¦Öóͷ£ÏîÄ¿²î±ðÌ«´ó £¬£¬ £¬»ù±¾²»¾ß±¸ÏÖʵ¹¤³Ì¼ÛÖµ¡£¡£¡£¡£”

¸ßУ×÷ÓýÓëÆóÒµÐèÇóµÄÄÜÁ¦¶Ï²ãµ¼Ö”ÕÐÆ¸ÄÑ”Ó딾ÍÒµÄÑ”²¢´æ¡£¡£¡£¡£ÆóÒµÕÐÆ¸FPGA¹¤³Ìʦʱ £¬£¬ £¬ÒªÇó¾ß±¸×ÔÁ¦ÏîÄ¿¿ª·¢ÂÄÀú¡¢ÊìϤ¸ßËÙ½Ó¿ÚʵÏÖºÍʱÐòÓÅ»¯ £¬£¬ £¬µ«Ó¦½ìÉúÆÕ±éȱ·¦ÕâЩÄÜÁ¦£» £»£»£»£»£»Ñ§ÉúÔòÃæÁÙ”ÏëʵϰûÂÄÀú £¬£¬ £¬Ã»ÂÄÀúÕÒ²»µ½ÊµÏ°”µÄÄæ¾³ £¬£¬ £¬ÐγɶñÐÔÑ­»·¡£¡£¡£¡£Ä³FPGAÅàѵ»ú¹¹µÄµ÷ÑÐÏÔʾ £¬£¬ £¬85%µÄÓ¦½ìÉúÒÔΪѧУËùѧ֪ʶÎÞ·¨Ö±½ÓÓ¦ÓÃÓÚÊÂÇé £¬£¬ £¬70%µÄÆóÒµÌåÏÖÕÐÆ¸²»µ½¾ß±¸3ÄêÒÔÉÏÂÄÀúµÄÖм¶FPGA¹¤³Ìʦ¡£¡£¡£¡£ÕâÖÖ¹©Ðè´íÅäΪְҵÅàѵ´´Á¢ÁË¿Õ¼ä £¬£¬ £¬Í¨¹ýϵͳ»¯¿Î³ÌºÍÆóÒµ¼¶ÏîĿʵ¼ù £¬£¬ £¬¿É×ÊÖúѧԱ¿ìËÙÌî²¹¸ßУ½ÌÓýµÄȱ·¦ £¬£¬ £¬ÊµÏִӔУ԰”µ½”Ö°³¡”µÄÎÞ·ìÏνÓ¡£¡£¡£¡£

Áù¡¢¿ÆÑ§Ñ§Ï°Â·¾¶ÓëÅàѵ¼ÛÖµ£º´ÓÈëÃŵ½ÊµÕ½µÄ¼ÓËÙͨµÀ

6.1 »ù´¡½×¶Î£ºÖþÀÎÊý×Öµç·Óë±à³Ì»ù±¾

FPGAѧϰµÄ»ù´¡½×¶ÎÐèÍê³É”ÀíÂÛ-¹¤¾ß-ʵ¼ù”µÄÈýÖØÍ»ÆÆ £¬£¬ £¬¹¹½¨ÔúʵµÄ֪ʶϵͳ¡£¡£¡£¡£Êý×Öµç·ÀíÂÛѧϰӦÏÈÐÐ £¬£¬ £¬ÍƼöͨ¹ý¸ßУ¿£¿£¿£¿Î³Ì»òÔÚÏß×ÊÔ´£¨ÈçMIT OpenCourseWareµÄ¡¶Êý×Öµç·Éè¼Æ¡·£©ÏµÍ³Ñ§Ï°Âß¼­ÃÅ¡¢´¥·¢Æ÷¡¢¼Ä´æÆ÷¡¢¼ÆÊýÆ÷¡¢×´Ì¬»úµÈ½¹µã¿´·¨ £¬£¬ £¬ÖصãÕÆÎÕʱÐòµç·µÄÆÊÎöÒªÁì £¬£¬ £¬ÓÉÓÚFPGAʵÖÊÊÇ´ó¹æÄ£Ê±ÐòÂß¼­µç·¡£¡£¡£¡£ÍƼö¿Î±¾°üÀ¨¡¶Êý×ÖÉè¼ÆÔ­ÀíÓëʵ¼ù¡·£¨John F. WakerlyÖø£©ºÍ¡¶FPGAÊý×ÖÂß¼­Éè¼Æ½Ì³Ì¡· £¬£¬ £¬Í¨¹ýϰÌâºÍʵÑé¼ÓÉîÃ÷È·¡£¡£¡£¡£´Ë½×¶Î¿ÉÅäºÏ·ÂÕæÈí¼þ£¨ÈçLogisim£©¾ÙÐÐÂß¼­µç·Éè¼ÆÓëÑéÖ¤ £¬£¬ £¬Ö±¹Û¸ÐÊÜÊý×ֵ緵ÄÊÂÇéÔ­Àí¡£¡£¡£¡£

Ó²¼þÐÎòÓïÑÔ£¨Verilog£©Ñ§Ï°Ó¦¾Û½¹”¿É×ÛºÏÆø¸Å”´úÂë±àд¡£¡£¡£¡£³õѧÕ߿ɴÓÓï·¨»ù´¡ÈëÊÖ £¬£¬ £¬ÕÆÎÕÄ£¿£¿£¿£¿é½ç˵¡¢¶Ë¿ÚÉùÃ÷¡¢Êý¾ÝÀàÐÍ¡¢ÔËËã·ûµÈ»ù±¾ÒªËØ£» £»£»£»£»£»Öصãѧϰ×éºÏÂß¼­£¨always @*£©ºÍʱÐòÂß¼­£¨always @(posedge clk)£©µÄ½¨Ä£ÒªÁì £¬£¬ £¬Ã÷È··ÇÛÕ±Õ¸³Öµ£¨<=£©ºÍÛÕ±Õ¸³Öµ£¨=£©µÄÇø±ð¼°Ó¦Óó¡¾°£» £»£»£»£»£»Í¨¹ý״̬»úÉè¼Æ£¨Ò»¶Îʽ¡¢Á½¶Îʽ¡¢Èý¶Îʽ£©ÕÆÎÕÖØ´óÂß¼­µÄ½¨Ä£¼¼ÇÉ £¬£¬ £¬Èý¶Îʽ״̬»úÒò×´Ì¬Ìø×ªÇåÎú¡¢Ò×ÓÚά»¤¶ø³ÉΪ¹¤Òµ½çÖ÷Á÷¡£¡£¡£¡£ÍƼö¡¶VerilogÊý×ÖϵͳÉè¼Æ½Ì³Ì¡·£¨ÏÄÓîÎÅÖø£©×÷ΪÈëÃſα¾ £¬£¬ £¬ÅäºÏ¿ªÔ´ÏîÄ¿£¨ÈçOpenCoresÉϵÄUART¡¢SPI¿ØÖÆÆ÷£©Ñ§Ï°ÓÅÒì´úÂëÆø¸Å¡£¡£¡£¡£´Ë½×¶ÎÐèÍê³ÉÖÁÉÙ3¸ö»ù´¡ÏîÄ¿£ºLEDÉÁׯ¿ØÖÆ£¨ÕÆÎÕʱÐòÂß¼­£©¡¢°´¼üÏû¶¶µç·£¨ÕÆÎÕ״̬»úÉè¼Æ£©¡¢BCDÂë¼ÆÊýÆ÷£¨ÕÆÎÕ×éºÏÂß¼­ÓëʱÐòÂß¼­Á¬Ïµ£©¡£¡£¡£¡£

¿ª·¢¹¤¾ßÓëFPGAÆ÷¼þѧϰÐèÀíÂÛÓëʵ¼ùÁ¬Ïµ¡£¡£¡£¡£Ñ¡ÔñÒ»¿îÖ÷Á÷FPGA¿ª·¢°å£¨ÈçXilinx Artix-7»òIntel Cyclone V£© £¬£¬ £¬ÅäÌ×ѧϰ¶ÔÓ¦³§É̵Ŀª·¢¹¤¾ß£¨Vivado»òQuartus£©£» £»£»£»£»£»Æ¾Ö¤¹Ù·½½Ì³ÌÍê³É¹¤¾ß×°ÖÃÓëÇéÐÎÉèÖà £¬£¬ £¬ÊìϤ¹¤³Ì½¨Éè¡¢RTL¼Èë¡¢×ۺϡ¢ÊµÏÖ¡¢ÌìÉú±ÈÌØÁ÷µÄÈ«Á÷³Ì£» £»£»£»£»£»Ñ§Ï°FPGAÆ÷¼þ½á¹¹ £¬£¬ £¬Ã÷È·²éÕÒ±í£¨LUT£©¡¢´¥·¢Æ÷£¨FF£©¡¢¿éRAM£¨BRAM£©¡¢DSP48µÈ×ÊÔ´µÄÊÂÇéÔ­Àí £¬£¬ £¬ÒÔ¼°Verilog´úÂëÓëÓ²¼þ×ÊÔ´µÄÓ³Éä¹ØÏµ¡£¡£¡£¡£´Ë½×¶ÎÐèÕÆÎÕ»ù±¾Ô¼ÊøÎļþ£¨XDC»òSDC£©µÄ±àд £¬£¬ £¬ÈçʱÖÓÔ¼Êø£¨create_clock£©¡¢ÊäÈëÊä³öÑÓ³ÙÔ¼Êø£¨set_input_delay/set_output_delay£© £¬£¬ £¬Ã÷È·Ô¼Êø¶ÔʱÐòÊÕÁ²µÄÓ°Ïì¡£¡£¡£¡£Í¨¹ýÍê³É»ùÓÚ¿ª·¢°åµÄUARTͨѶÏîÄ¿ £¬£¬ £¬ÊµÏÖPCÓëFPGAÖ®¼äµÄÊý¾Ý´«Êä £¬£¬ £¬Ä¥Á·»ù´¡½×¶ÎµÄѧϰЧ¹û¡£¡£¡£¡£

6.2 ½ø½×½×¶Î£ºÉÉè¼ÆÒªÁìÓ빤¾ßÓ¦ÓÃ

½ø½×½×¶ÎµÄ½¹µãÄ¿µÄÊÇÍ»ÆÆ”¸ßËÙ½Ó¿Ú”ºÍ”ʱÐòÓÅ»¯”Á½´ó¼¼ÊõÄѵ㠣¬£¬ £¬ÕÆÎÕÖØ´óFPGAϵͳµÄÉè¼ÆÒªÁì¡£¡£¡£¡£¸ßËÙ½Ó¿ÚЭÒéʵÏÖÊÇͨѶ¡¢Êý¾ÝÖÐÐÄÁìÓòµÄ±Ø±¸¼¼ÄÜ £¬£¬ £¬½¨Òé´ÓPCIe Gen2/Gen3ºÍDDR3/DDR4ÈëÊÖ £¬£¬ £¬ÕâÁ½ÖÖ½Ó¿ÚÓ¦ÓÃÆÕ±éÇÒѧϰ×ÊÔ´¸»ºñ¡£¡£¡£¡£Ñ§Ï°PCIeЭÒéÐèÃ÷È·ÊÂÎñ²ã¡¢Êý¾ÝÁ´Â·²ã¡¢ÎïÀí²ãµÄ·Ö²ã¼Ü¹¹ £¬£¬ £¬ÕÆÎÕXilinx PCIe IPºË»òIntel PCIe IPºËµÄÉèÖÃÒªÁì £¬£¬ £¬Í¨¹ýÓû§Âß¼­ÓëIPºËµÄ½»»¥ÊµÏÖ¸ßËÙÊý¾Ý´«Ê䣻 £»£»£»£»£»DDR´æ´¢Æ÷½Ó¿ÚÑ§Ï°ÖØµãÊÇʱÐò²ÎÊýÉèÖã¨ÈçtCK¡¢tCAS¡¢tRCD£©ºÍ¿ØÖÆÆ÷״̬»úÉè¼Æ £¬£¬ £¬½â¾ö¶ÁдʱÐò¶ÔÆëºÍÊý¾ÝÒ»ÖÂÐÔÎÊÌâ¡£¡£¡£¡£Ä³Í¨Ñ¶ÏîÄ¿ÖÐ £¬£¬ £¬¹¤³Ìʦͨ¹ýÓÅ»¯DDR¿ØÖÆÆ÷µÄÍ»·¢³¤¶ÈºÍԤȡ²ßÂÔ £¬£¬ £¬½«Êý¾ÝÍÌÍÂÁ¿´Ó800MB/sÌáÉýÖÁ1.2GB/s¡£¡£¡£¡£´Ë½×¶ÎÍÆ¼öʹÓÃXilinx KC705»òIntel DE10-Standard¿ª·¢°å £¬£¬ £¬ÕâÁ½¿î¿ª·¢°å¾ùÖ§³ÖPCIeºÍDDR3/4½Ó¿Ú £¬£¬ £¬ÇÒ¹Ù·½Ìṩ¸»ºñµÄ²Î¿¼Éè¼Æ¡£¡£¡£¡£

ʱÐòÆÊÎöÓëÓÅ»¯¼¼ÊõÊǽø½×½×¶ÎµÄÁíÒ»½¹µãÄÚÈÝ¡£¡£¡£¡£¹¤³ÌʦÐèϵͳѧϰʱÐòÆÊÎö»ù´¡ £¬£¬ £¬Ã÷È·½¨Éèʱ¼ä£¨Tsu£©¡¢¼á³Öʱ¼ä£¨Th£©¡¢Ê±ÖÓÖÜÆÚ£¨Tclk£©µÄ¹ØÏµ £¬£¬ £¬ÕÆÎÕʱÐò·¾¶ÆÊÎöÒªÁ죨ÈçÊý¾Ý·¾¶¡¢Ê±ÖÓ·¾¶£©£» £»£»£»£»£»Ñ§»áʹÓÃʱÐòÆÊÎö¹¤¾ß£¨ÈçVivado Timing Analyzer£©Éó²éʱÐò±¨¸æ £¬£¬ £¬Ê¶±ðÒªº¦Â·¾¶ºÍʱÐòÎ¥Àý£» £»£»£»£»£»ÕÆÎÕʱÐòÓÅ»¯µÄ³£ÓÃÒªÁ죺Âß¼­ÓÅ»¯£¨Èç×ÊÔ´¸´Óá¢Á÷Ë®ÏßÉè¼Æ£©¡¢Ô¼ÊøÓÅ»¯£¨Èç¶àÖÜÆÚ·¾¶¡¢Ðéα·¾¶ÉèÖã©¡¢ÎïÀíÓÅ»¯£¨Èç½á¹¹Ô¼Êø¡¢Âß¼­·ÖÇø£©¡£¡£¡£¡£Ä³¹¤Òµ¿ØÖÆÏîÄ¿ÖÐ £¬£¬ £¬Í¨¹ý½«Òªº¦Â·¾¶²ð·ÖΪÁ½¼¶Á÷Ë®Ïß £¬£¬ £¬²¢ÉèÖöàÖÜÆÚÔ¼Êø £¬£¬ £¬Àֳɽ«Ê±ÐòÎ¥Àý´Ó-2.3nsÓÅ»¯ÖÁ+1.5ns £¬£¬ £¬Öª×ãϵͳÊÂÇ鯵ÂÊÒªÇ󡣡£¡£¡£Ê±ÐòÓÅ»¯ÄÜÁ¦µÄÌáÉýÐèͨ¹ý¶à¸öÏÖʵÏîÄ¿»ýÀÛÂÄÀú £¬£¬ £¬½¨ÒéÆÊÎö¿ªÔ´ÏîÄ¿ÖеÄʱÐòÔ¼ÊøÎļþ £¬£¬ £¬Ñ§Ï°ÐÐÒµ×î¼Ñʵ¼ù¡£¡£¡£¡£

SoC FPGA¿ª·¢ÍØÕ¹ÁËFPGA¹¤³ÌʦµÄÄÜÁ¦½çÏß £¬£¬ £¬ÊµÏÖ”Ó²¼þ+Èí¼þ”ЭͬÉè¼Æ¡£¡£¡£¡£Xilinx Zynq»òIntel Cyclone V SoCϵÁÐÆ÷¼þ¼¯³ÉÁËARM´¦Öóͷ£Æ÷£¨ÈçCortex-A9£©ºÍFPGAÂß¼­ £¬£¬ £¬¹¤³ÌʦÐèÕÆÎÕARM´¦Öóͷ£Æ÷µÄLinuxÏµÍ³ÒÆÖ²¡¢×°±¸Çý¶¯¿ª·¢ £¬£¬ £¬ÒÔ¼°´¦Öóͷ£Æ÷ÓëFPGAÂß¼­µÄͨѶҪÁ죨ÈçAXI×ÜÏߣ©¡£¡£¡£¡£Ñ§Ï°ÄÚÈݰüÀ¨£ºÊ¹ÓÃPetalinux»òBuildroot¹¹½¨Ç¶ÈëʽLinuxϵͳ £¬£¬ £¬±àдFPGAÂß¼­ÓëARM´¦Öóͷ£Æ÷ͨѶµÄAXI½Ó¿Ú £¬£¬ £¬¿ª·¢×Ô½ç˵IPºË²¢Í¨¹ýXilinx Vivado HLS»òIntel OpenCLʵÏÖËã·¨¼ÓËÙ¡£¡£¡£¡£Ä³ÖÇÄÜ¼à¿ØÏîÄ¿ÖÐ £¬£¬ £¬»ùÓÚZynqµÄ½â¾ö¼Æ»®Í¨¹ýARM´¦Öóͷ£Æ÷ÔËÐÐÓ¦ÓóÌÐò £¬£¬ £¬FPGAÂß¼­ÊµÏÖÊÓÆµÍ¼ÏñÔ¤´¦Öóͷ£ £¬£¬ £¬½Ï´¿Èí¼þ¼Æ»®ÐÔÄÜÌáÉý10±¶ £¬£¬ £¬¹¦ºÄ½µµÍ50%¡£¡£¡£¡£´Ë½×¶Î¿ÉÍê³É»ùÓÚSoC FPGAµÄÈËÁ³Ê¶±ðÏîÄ¿ £¬£¬ £¬×ÛºÏÔËÓÃÓ²¼þ¼ÓËÙºÍÈí¼þ±à³ÌÄÜÁ¦¡£¡£¡£¡£

6.3 ʵս½×¶Î£ºÏîÄ¿Çý¶¯µÄÄÜÁ¦Ô¾Éý

ʵս½×¶ÎÊÇFPGA¹¤³ÌʦÄÜÁ¦ÐγɵÄÒªº¦ £¬£¬ £¬Í¨¹ý¼ÓÈëÆóÒµ¼¶ÏîÄ¿»ýÀÛ¹¤³ÌÂÄÀú £¬£¬ £¬×÷Óý½â¾öÏÖʵÎÊÌâµÄÄÜÁ¦¡£¡£¡£¡£ÏîĿѡÔñÓ¦×ñÕÕ”´Ó¼òÆÓµ½ÖØ´ó””´Ó¼òµ¥¹¦Ð§µ½ÏµÍ³¼¯³É”µÄÔ­Ôò £¬£¬ £¬Öð²½ÌáÉýÏîÄ¿ÄѶȺ͹æÄ£¡£¡£¡£¡£ÈëÃż¶ÊµÕ½ÏîÄ¿¿ÉÑ¡Ôñ»ùÓÚFPGAµÄǧÕ×ÒÔÌ«ÍøÊý¾Ý´«Êäϵͳ £¬£¬ £¬ÊµÏÖPCÓëFPGAÖ®¼äµÄ¸ßËÙÊý¾ÝͨѶ £¬£¬ £¬ÕÆÎÕMAC²ãЭÒéʵÏÖ¡¢DMA¿ØÖÆÆ÷Éè¼Æ¡¢Êý¾Ý»º´æ¹ÜÀíµÈ¼¼Êõ£» £»£»£»£»£»Öм¶ÏîÄ¿¿ÉÌôÕ½»ùÓÚFPGAµÄʵʱÊÓÆµ´¦Öóͷ£ÏµÍ³ £¬£¬ £¬Íê³ÉÊÓÆµÊÕÂÞ¡¢Í¼Ïñ´¦Öóͷ££¨Èç±ßÑØ¼ì²â¡¢»Ò¶Èת»»£©¡¢ÏÔʾÊä³öµÄÈ«Á÷³Ì¿ª·¢ £¬£¬ £¬Éæ¼°HDMI½Ó¿Ú¡¢DDR»º´æ¡¢Í¼Ïñ´¦Öóͷ£Ëã·¨Ó²¼þʵÏÖµÈ֪ʶµã£» £»£»£»£»£»¸ß¼¶ÏîÄ¿¿É¾Û½¹AI¼ÓËÙÁìÓò £¬£¬ £¬Èç»ùÓÚFPGAµÄ¾í»ýÉñ¾­ÍøÂ磨CNN£©¼ÓËÙÆ÷ £¬£¬ £¬ÊµÏÖMNISTÊÖдÊý×Öʶ±ð»òCIFAR-10ͼÏñ·ÖÀà £¬£¬ £¬ÕÆÎÕÉñ¾­ÍøÂçÁ¿»¯¡¢²¢ÐÐÅÌËã¼Ü¹¹Éè¼Æ¡¢HLS¹¤¾ßʹÓõÈÇ°ÑØ¼¼Êõ¡£¡£¡£¡£

ÆóÒµ¼¶ÏîĿʵ¼ùÐè¹Ø×¢¹¤³Ì¹æ·¶ºÍ¿Éά»¤ÐÔ £¬£¬ £¬ÕâÊÇÇø±ðÓÚСÎÒ˽¼ÒÏîÄ¿µÄÒªº¦¡£¡£¡£¡£¹¤³ÌʦÐèѧϰ°æ±¾¿ØÖƹ¤¾ß£¨ÈçGit£©µÄʹÓà £¬£¬ £¬Ñø³É´úÂëÌύϰ¹ß²¢±àдÇåÎúµÄÌá½»ÈÕÖ¾£» £»£»£»£»£»½ÓÄÉÄ£¿£¿£¿£¿é»¯Éè¼ÆÒªÁì £¬£¬ £¬Í¨¹ý½Ó¿Ú½ç˵ʵÏÖÄ£¿£¿£¿£¿é½âñî £¬£¬ £¬Ìá¸ß´úÂ븴ÓÃÐÔ£» £»£»£»£»£»±àдÏêϸµÄÉè¼ÆÎĵµ £¬£¬ £¬°üÀ¨ÐèÇ󹿏ñ˵Ã÷Êé¡¢Éè¼Æ¼Æ»®¡¢²âÊÔ±¨¸æµÈ £¬£¬ £¬Ä³ÆóÒµµÄÖÊÁ¿Éó¼ÆÏÔʾ £¬£¬ £¬ÍêÉÆµÄÎĵµ¿ÉʹºóÆÚά»¤±¾Ç®½µµÍ40%£» £»£»£»£»£»×ñÕÕ´úÂë¹æ·¶ £¬£¬ £¬ÈçͳһµÄÃüÃû¹æÔò¡¢Ëõ½øÃûÌá¢×¢ÊÍÒªÇó £¬£¬ £¬Ìá¸ß´úÂë¿É¶ÁÐÔ¡£¡£¡£¡£¼ÓÈ뿪ԴÏîÄ¿ÊÇ»ýÀÛʵսÂÄÀúµÄÓÐÓÃ;¾¶ £¬£¬ £¬ÈçOpenCores¡¢GitHubÉϵÄFPGAÏà¹ØÏîÄ¿ £¬£¬ £¬Í¨¹ýÌá½»Issue¡¢ÐÞ¸´Bug¡¢Ð¢Ë³´úÂëµÈ·½·¨ÈÚÈ뿪·¢ÕßÉçÇø £¬£¬ £¬¼ÈÌáÉý¼¼ÊõÄÜÁ¦ÓÖÔöÌí¼òÀúÁÁµã¡£¡£¡£¡£

Åàѵ»ú¹¹µÄʵսÏîĿΪѧϰÕßÌṩÁË”¶Ìƽ¿ì”µÄÄÜÁ¦ÌáÉý·¾¶ £¬£¬ £¬ÓÈÆäÊʺÏȱ·¦ÆóÒµ×ÊÔ´µÄ³õѧÕß¡£¡£¡£¡£ÓÅÖÊFPGAÅàѵ¿Î³Ìͨ³£°üÀ¨¶à¸öÆóÒµ¼¶ÊµÕ½ÏîÄ¿ £¬£¬ £¬Èç´ó·¢28¹úоµÄÅàѵ¿Î³Ìº­¸Ç5GͨѶ»ù´ø´¦Öóͷ£¡¢AI¼ÓËÙ¡¢Æû³µµç×Ó¿ØÖƵÈÈÈÃÅÁìÓòÏîÄ¿ £¬£¬ £¬ÇÒÿÄê¸üÐÂ60%½ÌѧÄ£¿£¿£¿£¿éÒÔ¸ú½ø¼¼ÊõÉú³¤£» £»£»£»£»£»ÏîÄ¿¿ª·¢Àú³ÌÑÏ¿á×ñÕÕÆóÒµÁ÷³Ì £¬£¬ £¬´ÓÐèÇóÆÊÎö¡¢¼Æ»®Éè¼Æµ½²âÊÔÑéÊÕÈ«³ÌÄ£ÄâÕæÊµÊÂÇ鳡¾°£» £»£»£»£»£»Å䱸¾ßÓÐ10ÄêÒÔÉÏÐÐÒµÂÄÀúµÄÆóÒµ¼¼Êõר¼Òµ£µ±µ¼Ê¦ £¬£¬ £¬Ìṩ”´úÂëÖðÐÐÅú×¢”ºÍ”ʵʱÎÊÌâ½â´ð” £¬£¬ £¬×ÊÖúѧԱ¿ìËÙ¶¨Î»ÎÊÌâ¡£¡£¡£¡£Ä³Åàѵ»ú¹¹µÄѧԱ·´ÏìÏÔʾ £¬£¬ £¬Í¨¹ý4¸öÔµÄϵͳÅàѵºÍ5¸öÆóÒµ¼¶ÏîĿʵ¼ù £¬£¬ £¬ÆäÄÜÁ¦µÖ´ïÐÐÒµ2ÄêËêÇéÂÄÀúˮƽ £¬£¬ £¬¾ÍÒµÂÊ´ï95%ÒÔÉÏ £¬£¬ £¬Æðн½ÏÅàѵǰƽ¾ùÌáÉý80%¡£¡£¡£¡£

Æß¡¢ÐÐÒµÌôÕ½ÓëÓ¦¶Ô²ßÂÔ£ºÀíÐÔÈÏÖªÓëÆð¾¢ÆÆ¾Ö

7.1 ѧÀúÒªÇóÓ뾺ÕùѹÁ¦

FPGAÐÐÒµµÄѧÀúÃż÷ÕýÖð²½Ìá¸ß £¬£¬ £¬ÓÈÆäÔÚËã·¨Ñз¢ºÍ¸ß¶ËÉè¼Æ¸Úλ £¬£¬ £¬Ë¶Ê¿¼°ÒÔÉÏѧÀú³ÉΪ”±êÅ䔡£¡£¡£¡£Ð¾Æ¬Éè¼Æ¹«Ë¾µÄFPGAËã·¨Ñз¢¸ÚÖÐ £¬£¬ £¬Ë¶Ê¿Ñ§ÀúÕ¼±ÈÒÑ´Ó2018ÄêµÄ65%ÉÏÉýÖÁ2023ÄêµÄ82% £¬£¬ £¬²¿·ÖÆóÒµ£¨È绪Ϊº£Ë¼¡¢º®Îä¼Í£©µÄ¸ß¶Ë¸ÚλÃ÷È·ÒªÇó”985/211ԺУ˶ʿѧÀú”£» £»£»£»£»£»¾ü¹¤¡¢º½ÌìÁìÓòµÄFPGA¸ÚλÒòÏîÄ¿ÉæÃÜÐÔ £¬£¬ £¬¶ÔѧÀúºÍÅä¾°Éó²é¸üΪÑÏ¿á £¬£¬ £¬Ä³º½ÌìÑо¿ËùµÄÕÐÆ¸Í¨¸æÃ÷È·±ê×¢”½öÏÞ˶ʿ¼°ÒÔÉÏѧÀú £¬£¬ £¬±¾¿Æ½×¶ÎΪÕûÈÕÖÆÍ³ÕД¡£¡£¡£¡£Ñ§Àú²î±ðÖ±½ÓÌåÏÖÔÚн×ÊˮƽÉÏ£ºÒ»Ïß¶¼»á˶ʿѧÀúFPGA¹¤³ÌʦµÄÆðн±È±¾¿Æ¸ß30%-50% £¬£¬ £¬ÇÒÌáÉýËÙÂʸü¿ì £¬£¬ £¬Ä³ÆóÒµµÄÌáÉýÊý¾ÝÏÔʾ £¬£¬ £¬Ë¶Ê¿Ñ§Àú¹¤³ÌʦÌáÉýÖÁ¼¼ÊõÖ÷¹ÜµÄƽ¾ùʱ¼äΪ5Äê £¬£¬ £¬¶ø±¾¿ÆÎª7Äê¡£¡£¡£¡£

ѧУÅä¾°³ÉΪ²¿·ÖÆóҵɸѡ¼òÀúµÄÒþÐÔÃż÷ £¬£¬ £¬¼Ó¾çÁ˾ºÕùѹÁ¦¡£¡£¡£¡£Í·²¿°ëµ¼ÌåÆóÒµºÍ»¥ÁªÍø¹«Ë¾µÄFPGA¸Úλ¼òÀúɸѡ½×¶Î £¬£¬ £¬»áÓÅÏÈ˼Á¿”˫һÁ÷”ԺУ½áÒµÉú £¬£¬ £¬·ÇÖØµãԺУѧÉú×ÝÈ»ÄÜÁ¦ÓÅÒìÒ²¿ÉÄܱ»¾ÜÖ®ÃÅÍ⣻ £»£»£»£»£»²¿·ÖÆóÒµ½ÓÄɔԺУ·Ö¼¶”ÖÆ¶È £¬£¬ £¬Õë¶Ô²î±ð¼¶±ðԺУÉèÖòî±ðµÄн×ʱê×¼ £¬£¬ £¬ÀýÈçijÆóÒµ¶Ô985ԺУ˶ʿ¿ª³ö30k/ÔÂн×Ê £¬£¬ £¬¶ø¶ÔË«·ÇԺУ˶ʿ½öÌṩ22k/Ô¡£¡£¡£¡£ÕâÖÖÕ÷ÏóÔÚAI¼ÓËÙ¡¢Ð¾Æ¬ÑéÖ¤µÈÈÈÃÅÁìÓòÓÈΪͻ³ö £¬£¬ £¬Ä³ÕÐÆ¸Æ½Ì¨Êý¾ÝÏÔʾ £¬£¬ £¬AI¼ÓËÙFPGA¸ÚλµÄ985ԺУ½áÒµÉú¼òÀúͶµÝÏìÓ¦ÂÊΪ85% £¬£¬ £¬¶øË«·ÇԺУ½öΪ32%¡£¡£¡£¡£Ñ§ÀúºÍѧУÅä¾°µÄÏÞÖÆ £¬£¬ £¬Ê¹µÃͨË×ԺУѧÉúÐèÒªÖ§¸¶¸ü¶àÆð¾¢²Å»ª»ñµÃÒ»ÂÉʱ»ú £¬£¬ £¬ÀýÈçͨ¹ý¿ªÔ´ÏîÄ¿¡¢¾ºÈü»ñ½±µÈ·½·¨Ö¤Êµ×ÔÉíÄÜÁ¦¡£¡£¡£¡£

Ó¦¶ÔѧÀúÌôÕ½Ðè½ÓÄɲî±ð»¯¾ºÕù²ßÂÔ £¬£¬ £¬Í¨¹ý”ѧÀú+¼¼ÄÜ+ÂÄÀú”µÄ×éºÏÓÅÊÆÌî²¹¶Ì°å¡£¡£¡£¡£±¾¿Æ½áÒµÉú¿Éͨ¹ý¿¼ÑÐÌáÉýѧÀú £¬£¬ £¬Ñ¡ÔñFPGAÏà¹ØÑо¿Æ«Ïò£¨ÈçǶÈëʽϵͳ¡¢¼¯´ó·¢28·Éè¼Æ£© £¬£¬ £¬Í¬Ê±¼ÓÈ뵼ʦµÄºáÏòÏîÄ¿»ýÀÛ¹¤³ÌÂÄÀú£» £»£»£»£»£»ÔÚÖ°¹¤³Ìʦ¿Éͨ¹ýÔÚְ˶ʿ»òרҵ˶ʿ£¨Èçµç×ÓÐÅϢ˶ʿ£©ÌáÉýѧÀú £¬£¬ £¬²¿·ÖÆóҵΪԱ¹¤Ìṩѧ·Ñ½òÌù£» £»£»£»£»£»·ÇÖØµãԺУѧÉúÓ¦¾Û½¹¼¼ÄÜÌáÉý £¬£¬ £¬Í¨¹ýÅàѵ»ò×ÔÑ§ÕÆÎÕÈÈÃż¼Êõ£¨ÈçAI¼ÓËÙ¡¢¸ßËÙ½Ó¿Ú£© £¬£¬ £¬¼ÓÈëÌìÏ´óѧÉúFPGAÁ¢ÒìÉè¼Æ¾ºÈüµÈȨÍþÈüÊ £¬£¬ £¬»ñ½±ÂÄÀú¿ÉÏÔÖøÌáÉý¼òÀú¾ºÕùÁ¦£» £»£»£»£»£»»ýÀÛʵսÏîÄ¿ÂÄÀú £¬£¬ £¬ÔÚGitHubÉÏ¿ªÔ´¸ßÖÊÁ¿ÏîÄ¿ £¬£¬ £¬Í¨¹ý¼¼Êõ²©¿Í·ÖÏíѧϰÐĵà £¬£¬ £¬ÎüÒýÆóÒµ¹Ø×¢¡£¡£¡£¡£Ä³Ë«·ÇԺУ±¾¿Æ½áÒµÉúͨ¹ý¿ªÔ´»ùÓÚFPGAµÄRISC-V´¦Öóͷ£Æ÷ÏîÄ¿ £¬£¬ £¬»ñµÃ¶à¼Ò°ëµ¼ÌåÆóÒµµÄÃæÊÔÔ¼Çë £¬£¬ £¬×îÖÕÒÔ25k/ÔµÄн×ÊÈëְijоƬÉè¼Æ¹«Ë¾¡£¡£¡£¡£

7.2 ¼¼Êõµü´úÓëÒ»Á¬Ñ§Ï°Ñ¹Á¦

FPGA¼¼ÊõµÄ¿ìËÙµü´ú¶Ô¹¤³ÌʦµÄÒ»Á¬Ñ§Ï°ÄÜÁ¦Ìá³ö¸ßÒªÇó £¬£¬ £¬Æ÷¼þ¼Ü¹¹¡¢¿ª·¢¹¤¾ßºÍÓ¦ÓÃÁìÓòµÄÀå¸ïһֱˢÐÂ֪ʶ½çÏß¡£¡£¡£¡£Æ÷¼þ¼Ü¹¹·½Ãæ £¬£¬ £¬FPGAÕý´Ó¹Å°åµÄ”´¿Âß¼­”Ïò”Òì¹¹ÅÌËã”Ñݽø £¬£¬ £¬¼¯³ÉCPU¡¢GPU¡¢AI¼ÓËÙÆ÷µÄSoC FPGA³ÉΪÖ÷Á÷ £¬£¬ £¬ÈçXilinx VersalϵÁм¯³ÉÁËAIÒýÇæºÍHBM´æ´¢Æ÷ £¬£¬ £¬ÒªÇ󹤳ÌÊ¦Í¬Ê±ÕÆÎÕÓ²¼þÂß¼­Éè¼ÆºÍÈí¼þ±à³Ì£» £»£»£»£»£»¿ª·¢¹¤¾ß´Ó¹Å°åµÄRTLÉè¼ÆÏò¸ßÌõÀí×ۺϣ¨HLS£©¡¢AIÄ£×Ó×Ô¶¯Ó³É䯫ÏòÉú³¤ £¬£¬ £¬Xilinx Vitis AI¡¢Intel OpenVINOµÈ¹¤¾ß¿É½«Éî¶Èѧϰģ×Ó×Ô¶¯×ª»»ÎªFPGA¼ÓËÙ´úÂë £¬£¬ £¬¸Ä±äÁ˹Ű忪·¢Ä£Ê½£» £»£»£»£»£»Ó¦ÓÃÁìÓòÒ»Ö±ÍØÕ¹ £¬£¬ £¬´ÓͨѶ¡¢¹¤Òµ¿ØÖÆÏò×Ô¶¯¼ÝÊ»¡¢Á¿×ÓÅÌËã¡¢ÔªÓîÖæµÈÐÂÐËÁìÓòÉøÍ¸ £¬£¬ £¬Ã¿¸öÁìÓò¶¼ÓÐÆæÒìµÄ¼¼ÊõÒªÇ󡣡£¡£¡£Ä³×ÊÉ³Ìʦ̾Ϣ£º”ÈëÐÐ10ÄêÀ´ £¬£¬ £¬ÎÒÒѾ­ÂÄÀúÁË3´úFPGA¼Ü¹¹ºÍ5Ì׿ª·¢¹¤¾ßµÄ¸üР£¬£¬ £¬²»Ñ§Ï°¾Í»á±»ïÔÌ­¡£¡£¡£¡£”

¼¼Êõµü´ú´øÀ´µÄ֪ʶ½¹ÂÇÆÕ±é±£´æ £¬£¬ £¬ÓÈÆä¶Ô35ËêÒÔÉϵŤ³ÌʦÐγÉѹÁ¦¡£¡£¡£¡£Ñ§Ï°Ð¹¤¾ßºÍм¼ÊõÐèҪͶÈë´ó×Úʱ¼äºÍ¾«Éñ £¬£¬ £¬¶ø×ÊÉ³ÌʦÍùÍù¼ç¸º¹ÜÀíÖ°Ôð»ò¼ÒÍ¥ÔðÈÎ £¬£¬ £¬ÄÑÒÔ°ü¹ÜÒ»Á¬Ñ§Ï°Ê±¼ä£» £»£»£»£»£»²¿·Ö¹¤³ÌʦÒòºã¾Ã´ÓʹŰåÁìÓò¿ª·¢ £¬£¬ £¬¶ÔÐÂÐ˼¼Êõ£¨ÈçAI¼ÓËÙ¡¢Òì¹¹ÅÌË㣩±£´æµÖ´¥ÐÄÀí £¬£¬ £¬×ªÐÍÒâÔ¸²»Ç¿£» £»£»£»£»£»¼¼Êõ¸üÐÂËÙÂÊ¿ìÓÚ֪ʶÏû»¯ËÙÂÊ £¬£¬ £¬µ¼Ö¹¤³ÌʦÏÝÈë”ѧ²»ÍꔵĽ¹ÂÇÑ­»· £¬£¬ £¬Ä³µ÷ÑÐÏÔʾ £¬£¬ £¬65%µÄFPGA¹¤³ÌʦÒÔΪ”¼¼Êõµü´úÌ«¿ì”ÊÇÖ°ÒµÉú³¤µÄÖ÷ҪѹÁ¦ÈªÔ´¡£¡£¡£¡£ÕâÖÖѹÁ¦ÔÚ¼¼Êõ÷缯ÐÍÆóÒµÓÈΪÏÔ×Å £¬£¬ £¬È绪Ϊ¡¢ÖÐÐ˵ȹ«Ë¾ÒªÇ󹤳ÌʦÿÄêÍê³ÉÒ»¶¨Ñ§Ê±µÄм¼ÊõÅàѵ £¬£¬ £¬²¢Í¨¹ý¼¼ÊõÈÏÖ¤ÉóºË¡£¡£¡£¡£

¹¹½¨Ò»Á¬Ñ§Ï°ÏµÍ³ÊÇÓ¦¶Ô¼¼Êõµü´úµÄ»ù´¡ÒªÁì £¬£¬ £¬Ð轨Éè”Ä¿µÄÇý¶¯””×ÊÔ´ÕûºÏ””ʵ¼ùÀο¿”µÄѧϰ±Õ»·¡£¡£¡£¡£Ã÷ȷѧϰĿµÄ £¬£¬ £¬Æ¾Ö¤Ö°ÒµÍýÏëÑ¡ÔñѧϰƫÏò £¬£¬ £¬ÀýÈçרעͨѶÁìÓòµÄ¹¤³Ìʦ¿É¾Û½¹5G/6GÎïÀí²ãËã·¨µÄFPGAʵÏÖ £¬£¬ £¬¶ø¹¤Òµ¿ØÖÆÁìÓò¹¤³Ìʦ¿É¹Ø×¢¹¤ÒµÒÔÌ«Íø¡¢Êý×ÖÂÏÉúµÈ¼¼Êõ£» £»£»£»£»£»ÕûºÏÓÅÖÊѧϰ×ÊÔ´ £¬£¬ £¬ÓÅÏÈÑ¡Ôñ³§É̹ٷ½Îĵµ£¨ÈçXilinx UGϵÁÐÊֲᣩºÍÅàѵ¿Î³Ì £¬£¬ £¬ÄÚÈÝȨÍþÇÒÓë×îÐÂÆ÷¼þͬ²½£» £»£»£»£»£»¼ÓÈë¼¼ÊõÉçÇø £¬£¬ £¬ÈçXilinx¿ª·¢ÕßÉçÇø¡¢Intel FPGAÂÛ̳ £¬£¬ £¬Í¨¹ý½»Á÷½â¾öѧϰÄÑÌ⣻ £»£»£»£»£»¼á³Öʵ¼ùÀο¿ £¬£¬ £¬½«Ñ§µ½µÄм¼ÊõÓ¦Óõ½ÏÖʵÏîÄ¿ÖÐ £¬£¬ £¬ÀýÈçѧϰHLS¹¤¾ßºó £¬£¬ £¬¿É½«Ö®Ç°µÄRTLÏîÄ¿ÓÃHLSÖØÐ´²¢±ÈÕÕÐÔÄܲî±ð£» £»£»£»£»£»×÷Óý֪ʶ¹ÜÀíÄÜÁ¦ £¬£¬ £¬Ê¹ÓÃNotion¡¢ObsidianµÈ¹¤¾ßÕûÀíѧϰÌõ¼Ç £¬£¬ £¬½¨ÉèСÎÒ˽¼Ò֪ʶϵͳ £¬£¬ £¬°´ÆÚ»ØÊ××ܽá¡£¡£¡£¡£Ä³ÆóÒµ¼¼Êõ×ܼà·ÖÏíÂÄÀú£º”ÎÒÿÖܼá³Ö3¸öÍíÉÏѧϰм¼Êõ £¬£¬ £¬Ã¿¸ö¼¾¶ÈÍê³ÉÒ»¸öм¼ÊõÑéÖ¤ÏîÄ¿ £¬£¬ £¬ËäÈ»ÐÁÇÚ £¬£¬ £¬µ«È·±£ÁË×Ô¼ºÔÚÍŶÓÖеļ¼ÊõÁìÏÈְλ¡£¡£¡£¡£”

7.3 ÌáÉý¾ºÕùÁ¦µÄÈý´ó½¹µã²ßÂÔ

¹¹½¨²î±ð»¯¼¼ÊõÓÅÊÆÊÇFPGA¹¤³ÌʦÌáÉý¾ºÕùÁ¦µÄÒªº¦ £¬£¬ £¬Í¨¹ý¾Û½¹Ìض¨ÁìÓòÐγɔÈËÎÞÎÒÓДµÄרҵר³¤¡£¡£¡£¡£Ñ¡Ôñϸ·ÖÁìÓòÉî¸û £¬£¬ £¬Èç5GͨѶÎïÀí²ãË㷨ʵÏÖ¡¢¹¤Òµ¿ØÖÆÊµÊ±ÒÔÌ«ÍøÐ­Ò飨ÈçEtherCAT¡¢PROFINET£©¡¢¾ü¹¤¿¹·øÉäFPGAÉè¼ÆµÈ £¬£¬ £¬ÕâЩÁìÓò¼¼Êõ±ÚÀݸߡ¢È˲Åȱ¿Ú´ó £¬£¬ £¬ÈÝÒ×ÐγɾºÕùÓÅÊÆ£» £»£»£»£»£»ÕÆÎÕϡȱ¼¼Êõ £¬£¬ £¬Èç¹ú²úFPGAоƬ£¨×Ϲâͬ´´¡¢°²Â·¿Æ¼¼£©µÄ¿ª·¢ÓëÒÆÖ² £¬£¬ £¬Ëæ×Źú²úÌæ»»Íƽø £¬£¬ £¬ÊìϤ±¾ÍÁÆ÷¼þÌØÕ÷µÄ¹¤³Ìʦн×ʽÏͨÓÃÆ«Ïò¸ß20%-30%£» £»£»£»£»£»ÐγɔӲ¼þ+Èí¼þ+Ëã·¨”µÄ¸´ºÏÄÜÁ¦ £¬£¬ £¬ÀýÈçFPGA+AIËã·¨¡¢FPGA+ǶÈëʽϵͳ¡¢FPGA+Êý×ÖÐźŴ¦Öóͷ£ £¬£¬ £¬ÕâÖÖ¸´ºÏÐÍÈ˲ÅÔÚ¿ç½çÁìÓò£¨Èç×Ô¶¯¼ÝÊ»¡¢ÖÇÄÜÒ½ÁÆ£©Öм«¾ß¾ºÕùÁ¦¡£¡£¡£¡£Ä³¾ü¹¤Ñо¿ËùµÄFPGA¹¤³ÌʦÒòרעÓÚ¿¹·øÉä¼Ó¹Ì¼¼Êõ £¬£¬ £¬³ÉΪ¸ÃÁìÓòµÄ¼¼ÊõȨÍþ £¬£¬ £¬ËäȻн×ʲ¢·ÇÐÐÒµ×î¸ß £¬£¬ £¬µ«Ö°ÒµÎȹÌÐԺͻ°ÓïȨԶ³¬Í¨Ë×¹¤³Ìʦ¡£¡£¡£¡£

¸ßÖÊÁ¿ÏîÄ¿ÂÄÀúÊǾºÕùÁ¦µÄÖ±½ÓÌåÏÖ £¬£¬ £¬Ðè×¢ÖØÏîÄ¿µÄÉî¶È¡¢¹ã¶ÈºÍÓ°ÏìÁ¦¡£¡£¡£¡£Éî¶È·½Ãæ £¬£¬ £¬¼ÓÈëÏîÄ¿µÄÈ«Á÷³Ì¿ª·¢ £¬£¬ £¬´ÓÐèÇóÆÊÎö¡¢¼Ü¹¹Éè¼Æµ½²âÊÔÑéÊÕÈ«³Ì¸ú½ø £¬£¬ £¬¶ø·Ç½öÈÏÕæ¼òµ¥Ä£¿£¿£¿£¿é£» £»£»£»£»£»¹ã¶È·½Ãæ £¬£¬ £¬½Ó´¥²î±ðÀàÐ͵ÄÏîÄ¿ £¬£¬ £¬ÈçͨѶ¡¢AI¼ÓËÙ¡¢¹¤Òµ¿ØÖÆµÈ £¬£¬ £¬ÐγɶàÔª»¯¼¼ÊõÅä¾°£» £»£»£»£»£»Ó°ÏìÁ¦·½Ãæ £¬£¬ £¬¼ÓÈë¾ßÓÐÐÐÒµÓ°ÏìÁ¦µÄÏîÄ¿£¨Èç¹ú¼ÒÖØ´óרÏî¡¢×ÅÃûÆóÒµ²úÆ·Ñз¢£© £¬£¬ £¬»òͨ¹ý¿ªÔ´ÏîÄ¿¡¢¼¼Êõ·ÖÏíÀ©´óСÎÒ˽¼ÒÓ°ÏìÁ¦¡£¡£¡£¡£ÏîÄ¿ÂÄÀúµÄ¼ÛÖµ²»µ«ÔÚÓÚ”×ö¹ýʲô” £¬£¬ £¬¸üÔÚÓÚ”½â¾ö¹ýʲôÎÊÌâ” £¬£¬ £¬ÀýÈç½â¾ö¹ý10GbpsÒÔÉϸßËÙ½Ó¿ÚʱÐòÊÕÁ²ÎÊÌâ £¬£¬ £¬»òÖ÷µ¼¹ý°ÙÍòÃż¶FPGAϵͳµÄµÍ¹¦ºÄÉè¼Æ £¬£¬ £¬ÕâЩÂÄÀúÔÚÃæÊÔÖм«¾ß˵·þÁ¦¡£¡£¡£¡£Ä³¹¤³ÌʦÔÚÃæÊÔÖÐÏêϸÐðÊöÁËÔõÑùͨ¹ýʱÐòÓÅ»¯½«5G»ùÕ¾FPGAϵͳµÄ¹¦ºÄ´Ó15W½µÖÁ8W £¬£¬ £¬ÕâÒ»°¸ÀýÖ±½Ó¸Ð¶¯ÃæÊÔ¹Ù £¬£¬ £¬ÀֳɻñµÃÄêн80ÍòµÄoffer¡£¡£¡£¡£

½èÖúרҵÅàѵ¼ÓËÙÄÜÁ¦ÌáÉý £¬£¬ £¬ÊÇFPGA¹¤³ÌʦµÄ¸ßЧÉú³¤Â·¾¶ £¬£¬ £¬ÓÈÆäÊʺÏÁã»ù´¡×ªÐÍ»òÔÚÖ°ÌáÉýµÄȺÌå¡£¡£¡£¡£Ñ¡ÔñÓÅÖÊÅàѵ»ú¹¹Ð迼²ìÈý¸ö½¹µãÒªËØ£º¿Î³ÌÄÚÈÝÓ빤ҵÐèÇóµÄÆ¥Åä¶È £¬£¬ £¬ÓÅÖʿγÌÓ¦ÁýÕÖ5GͨѶ¡¢AI¼ÓËÙµÈÈÈÃÅÁìÓò £¬£¬ £¬ÇÒ°üÀ¨ÆóÒµ¼¶ÊµÕ½ÏîÄ¿£» £»£»£»£»£»Ê¦×ÊʵÁ¦ £¬£¬ £¬½²Ê¦Ó¦¾ß±¸10ÄêÒÔÉÏÆóÒµFPGAÉè¼ÆÂÄÀú £¬£¬ £¬Äܹ»Á¬ÏµÏÖʵÏîÄ¿½â˵¼¼ÊõÄѵ㣻 £»£»£»£»£»¾ÍÒµÖ§³Ö £¬£¬ £¬°üÀ¨ÆóÒµÏàÖú×ÊÔ´¡¢¼òÀúÖ¸µ¼¡¢ÃæÊÔÏòµ¼µÈ £¬£¬ £¬×ÊÖúѧԱʵÏÖ´Óѧϰµ½¾ÍÒµµÄÏνÓ¡£¡£¡£¡£´ó·¢28¹úоµÈרҵFPGAÅàѵ»ú¹¹ £¬£¬ £¬Í¨¹ý”ÀíÂÛ+ʵս”Ë«¹ì½Ìѧģʽ £¬£¬ £¬ÓÉÆóÒµ¼¼Êõר¼ÒÊÚ¿Î £¬£¬ £¬¿ª·¢ÁýÕÖ5GͨѶ¡¢AI¼ÓËÙ¡¢Æû³µµç×ÓµÈÁìÓòµÄ¿Î³ÌÄÚÈÝ £¬£¬ £¬Ã¿Äê¸üÐÂ60%½ÌѧÄ£¿£¿£¿£¿é £¬£¬ £¬ÏàÖúÆóÒµ°üÀ¨»ªÎª¡¢ÉϺ£º½Ìì¡¢¹ãµç¼ÆÁ¿µÈ500Óà¼Ò £¬£¬ £¬ÎªÑ§Ô±Ìṩ´Ó¼¼ÄÜ×÷Óýµ½¾ÍÒµÔËË͵ÄÈ«Á´ÌõЧÀÍ¡£¡£¡£¡£Ä³Áã»ù´¡Ñ§Ô±Í¨¹ý4¸öÔÂÅàѵ £¬£¬ £¬ÕÆÎÕÁË»ùÓÚFPGAµÄǧÕ×ÊÓÆµ´«ÊäϵͳÉè¼Æ £¬£¬ £¬ÀÖ³ÉÈëְij°²·ÀÆóÒµ £¬£¬ £¬Æðн´ï18k/Ô £¬£¬ £¬½ÏÅàѵǰн×Ê·­±¶¡£¡£¡£¡£

°Ë¡¢×ܽáÓëÕ¹Íû£ºFPGA¹¤³ÌʦµÄ»Æ½ðÈýÊ®Äê

8.1 ÐÐÒµÉú³¤Ç÷ÊÆÓë»úÔµ×ܽá

FPGAÐÐÒµÕý´¦ÓÚÀúÊ·ÐÔÉú³¤»úÔµÆÚ £¬£¬ £¬¶àÖØÀûºÃÒòËØ¹²ÕñÍÆ¶¯Êг¡¹æÄ£Ò»Á¬ÔöÌí £¬£¬ £¬Îª¹¤³Ìʦ´´Á¢ÁÉÀ«µÄÖ°Òµ¿Õ¼ä¡£¡£¡£¡£¹ú²úÌæ»»À˳±ÊÇ×î´óÕþ²ßÓ¯Àû £¬£¬ £¬Êܹú¼ÊÐÎÊÆºÍ×ÔÖ÷¿É¿ØÕ½ÂÔÍÆ¶¯ £¬£¬ £¬º£ÄÚFPGAÊг¡µÄ¹ú²ú»¯ÂÊÕý´Óȱ·¦5%¿ìËÙÌáÉý £¬£¬ £¬Ô¤¼Æ2025Äê½«Í»ÆÆ15% £¬£¬ £¬×Ϲâͬ´´¡¢°²Â·¿Æ¼¼¡¢¸´µ©Î¢µçµÈ±¾ÍÁÆóÒµ¼ÓËÙ¼¼Êõµü´ú £¬£¬ £¬·¢¶¯¹ú²úFPGAÈ˲ÅÐèÇ󱬷¢Ê½ÔöÌí£» £»£»£»£»£»Ð»ù½¨Õþ²ßΪFPGAÓ¦Óô´Á¢º£Á¿ÐèÇó £¬£¬ £¬5G»ùÕ¾½¨Éè¡¢Êý¾ÝÖÐÐÄÀ©½¨¡¢¹¤Òµ»¥ÁªÍøË¢Ðµȹú¼ÒÕ½ÂÔ¹¤³Ì £¬£¬ £¬Ö±½ÓÀ­¶¯FPGAоƬ²É¹º £¬£¬ £¬½ö5G»ùÕ¾½¨Éè¾ÍΪFPGAÊг¡´øÀ´Äê¾ù°ÙÒÚ¼¶ÔöÁ¿£» £»£»£»£»£»¼¼ÊõÁ¢ÒìÍØÕ¹Ó¦ÓýçÏß £¬£¬ £¬FPGAÔÚAI¼ÓËÙ¡¢×Ô¶¯¼ÝÊ»¡¢Á¿×ÓÅÌËãµÈÐÂÐËÁìÓòµÄÓ¦ÓÃÒ»Ö±Í»ÆÆ £¬£¬ £¬´Ó¹Å°å”Åä½Ç”±äΪҪº¦”Ö÷½Ç” £¬£¬ £¬ÀýÈçÔÚ×Ô¶¯¼ÝÊ»Óò¿ØÖÆÆ÷ÖÐ £¬£¬ £¬FPGA¼ç¸º×ż¤¹âÀ×´ïµãÔÆ´¦Öóͷ£ºÍ´«¸ÐÆ÷ÈںϵĽ¹µãʹÃü £¬£¬ £¬Êг¡¹æÄ£ÄêÔöËÙ³¬50%¡£¡£¡£¡£

FPGA¹¤³ÌʦµÄÖ°Òµ¼ÛÖµ½«ÔÚδÀ´20-30ÄêÒ»Á¬Í¹ÏÔ £¬£¬ £¬·ºÆð”ÐèÇóÐËÍú¡¢´ýÓöÓźñ¡¢ÉúÃüÖÜÆÚ³¤”µÄÌØÕ÷¡£¡£¡£¡£ÐèÇó¶Ë £¬£¬ £¬º£ÄÚFPGA¹¤³Ìʦȱ¿ÚÒÑ´ï30Íò £¬£¬ £¬ÇÒÿÄêÒÔ20%µÄËÙÂÊÔöÌí £¬£¬ £¬Í¨Ñ¶×°±¸¡¢°ëµ¼Ìå¡¢¹¤Òµ¿ØÖƵÈÐÐÒµµÄÈ˲ÅÕùȡսÓúÑÝÓúÁÒ£» £»£»£»£»£»´ýÓö¶Ë £¬£¬ £¬FPGA¹¤³ÌʦµÄн×ÊˮƽÏÔÖø¸ßÓÚÆäËûÓ²¼þ¸Úλ £¬£¬ £¬×ÊÉ³ÌʦÄêн50Íò-100Íò³ÉΪ³£Ì¬ £¬£¬ £¬²¿·ÖAI¼ÓËÙ¡¢Ð¾Æ¬ÑéÖ¤¸Úλн×ÊÍ»ÆÆ150Íò£» £»£»£»£»£»Ö°ÒµÉúÃüÖÜÆÚ·½Ãæ £¬£¬ £¬FPGA¹¤³ÌʦÒò¼¼Êõ±ÚÀݸߡ¢ÂÄÀúÔöֵЧӦǿ £¬£¬ £¬Ö°Òµ¾ºÕùÁ¦¿É¼á³ÖÖÁ45ËêÒÔÉÏ £¬£¬ £¬Ô¶³¤ÓÚ´¿Èí¼þ¹¤³Ìʦ £¬£¬ £¬42Ë깤³ÌʦתÐÍϵͳ¼Ü¹¹Ê¦²¢»ñµÃ¸ßнµÄ°¸ÀýÔÚÐÐÒµÄÚ²¢²»Ïʼû¡£¡£¡£¡£ÕâÖÖ”¸ßÐèÇó+¸ßн×Ê+³¤ÖÜÆÚ”µÄÖ°ÒµÌØÕ÷ £¬£¬ £¬Ê¹FPGA¹¤³Ìʦ³ÉΪ¿Æ¼¼ÐÐÒµµÄ”»Æ½ðÖ°Òµ”¡£¡£¡£¡£

8.2 ¸øÑ§Ï°ÕßÓë´ÓÒµÕßµÄÐж¯½¨Òé

¹ØÓÚFPGAÅàѵѧԱ £¬£¬ £¬Ó¦Öƶ©ÇåÎúµÄѧϰÍýÏë £¬£¬ £¬·Ö½×¶ÎʵÏÖÄÜÁ¦Í»ÆÆ¡£¡£¡£¡£» £»£»£»£»£»ù´¡½×¶Î£¨1-3¸öÔ£©¾Û½¹Êý×ֵ緺ÍVerilog±à³Ì £¬£¬ £¬Í¨¹ý¡¶Êý×ÖÉè¼ÆÔ­ÀíÓëʵ¼ù¡·µÈ¿Î±¾´òÀÎÀíÂÛ»ù´¡ £¬£¬ £¬Íê³ÉUART¡¢SPIµÈ½Ó¿ÚÉè¼ÆÏîÄ¿£» £»£»£»£»£»½ø½×½×¶Î£¨3-6¸öÔ£©ÉîÈëʱÐòÆÊÎöÓë¸ßËÙ½Ó¿ÚʵÏÖ £¬£¬ £¬ÕÆÎÕPCIe¡¢DDRµÈЭÒéµÄFPGA¿ª·¢ £¬£¬ £¬Íê³ÉǧÕ×ÒÔÌ«ÍøÊý¾Ý´«ÊäµÈÖм¶ÏîÄ¿£» £»£»£»£»£»ÊµÕ½½×¶Î£¨6-12¸öÔ£©¼ÓÈëÆóÒµ¼¶ÏîÄ¿¿ª·¢ £¬£¬ £¬Èç»ùÓÚFPGAµÄAI¼ÓËÙ»ò5GͨѶÄ£¿£¿£¿£¿éÉè¼Æ £¬£¬ £¬»ýÀÛÏîÄ¿ÂÄÀú²¢¹¹½¨×÷Æ·¼¯¡£¡£¡£¡£Ñ§Ï°Àú³ÌÖÐÒª×¢ÖØÊµ¼ù £¬£¬ £¬”ÏÂÊÖ”±È”¿´Ê锸üÖ÷Òª £¬£¬ £¬½¨ÒéÌìÌì°ü¹Ü2-3СʱµÄFPGA¿ª·¢Ê±¼ä £¬£¬ £¬Óöµ½ÎÊÌâ¶à²éÔĹٷ½ÎĵµºÍ¼¼ÊõÂÛ̳ £¬£¬ £¬×÷Óý×ÔÁ¦½â¾öÎÊÌâµÄÄÜÁ¦¡£¡£¡£¡£Ñ¡ÔñרҵÅàѵ¿É¼ÓËÙÉú³¤ £¬£¬ £¬´ó·¢28¹úоµÈ»ú¹¹µÄ¶¨Ïò°àÅàѵÌṩ´ÓÈ˲ÅÑ¡°Îµ½ÉóºËÈÎÃüµÄÈ«Á´ÌõЧÀÍ £¬£¬ £¬×ÊÖúѧԱ¿ìËÙʵÏÖ´Ó”Áã»ù´¡”µ½”ÆóÒµ¼¶¹¤³Ìʦ”µÄ¿çÔ½¡£¡£¡£¡£

¹ØÓÚÐÐÒµ´ÓÒµÕß £¬£¬ £¬Ó¦¹¹½¨¿ÉÒ»Á¬µÄÖ°ÒµÉú³¤Â·¾¶ £¬£¬ £¬Æ½ºâ¼¼ÊõÉî¶ÈÓë¹ã¶È¡£¡£¡£¡£Éî¸ûÌØ¶¨ÁìÓòÐγɼ¼Êõ±ÚÀÝ £¬£¬ £¬ÈçרעÓÚͨѶÎïÀí²ãËã·¨»ò¹¤Òµ¿ØÖÆÊµÊ±ÏµÍ³ £¬£¬ £¬³ÉΪ¸ÃÁìÓòµÄ¼¼Êõר¼Ò£» £»£»£»£»£»¹Ø×¢¼¼ÊõÇ°ÑØ £¬£¬ £¬°´ÆÚѧϰFPGA¼Ü¹¹¡¢¿ª·¢¹¤¾ßµÄ×îÐÂÏ£Íû £¬£¬ £¬Æð¾¢ÊµÑéAI¼ÓËÙ¡¢Òì¹¹ÅÌËãµÈÐÂÐËÆ«Ïò£» £»£»£»£»£»ÍØÕ¹Ö°Òµ½çÏß £¬£¬ £¬Í¨¹ý¼¼Êõ¹ÜÀí¡¢ÏîÄ¿¹ÜÀí»ò¼Ü¹¹Éè¼ÆÊµÏÖÌáÉý £¬£¬ £¬»òÏòASICÉè¼Æ¡¢Ç¶ÈëʽϵͳµÈÏà¹ØÁìÓòתÐÍ£» £»£»£»£»£»½¨ÉèÐÐÒµÈËÂöÍøÂç £¬£¬ £¬¼ÓÈëFPGA¼¼Êõ×êÑлᡢ¿ª·¢Õß´ó»áµÈÔ˶¯ £¬£¬ £¬ÓëÙÉÐн»Á÷ÂÄÀú¡¢·ÖÏí×ÊÔ´¡£¡£¡£¡£Ä³×ÊÉîFPGA¹¤³ÌʦµÄÖ°ÒµÉú³¤Â·¾¶ÆÄ¾ß²Î¿¼¼ÛÖµ£º´ÓͨѶװ±¸³§É̵ÄFPGA¹¤³ÌʦÆð²½ £¬£¬ £¬5Äêºó³ÉΪ¼¼Êõר¼Ò £¬£¬ £¬7ÄêºóתÐͼܹ¹Ê¦ £¬£¬ £¬10Äêºóµ£µ±Ñз¢×Ü¼à £¬£¬ £¬Í¨¹ýÒ»Á¬Ñ§Ï°ºÍÈËÂö»ýÀÛ £¬£¬ £¬ÊµÏÖÁ˼¼ÊõÓë¹ÜÀíµÄË«ÖØÍ»ÆÆ¡£¡£¡£¡£

FPGA¹¤³ÌʦְҵԶ¾°ÁÉÀ« £¬£¬ £¬µ«ÀÖ³ÉÐèÒªÒ»Á¬µÄÆð¾¢ºÍ¿ÆÑ§µÄÍýÏë¡£¡£¡£¡£ÎÞÂÛÊÇÁã»ù´¡Ñ§Ô±ÕÕ¾ÉÐÐÒµ´ÓÒµÕß £¬£¬ £¬¶¼Ó¦×½×¡¹ú²úÌæ»»ºÍ¼¼ÊõÁ¢ÒìµÄÀúÊ·»úÔµ £¬£¬ £¬Í¨¹ýϵͳѧϰ¡¢ÏîĿʵ¼ùºÍÂÄÀú»ýÀÛ £¬£¬ £¬¹¹½¨½¹µã¾ºÕùÁ¦¡£¡£¡£¡£ÔÚÕâ¸ö¼¼ÊõÇý¶¯µÄʱ´ú £¬£¬ £¬FPGA¹¤³ÌʦÒÀ¸½”Ó²¼þ¿É±à³Ì”µÄÆæÒìÓÅÊÆ £¬£¬ £¬±Ø½«ÔÚÊý×Ö¾­¼ÃµÄÀ˳±ÖÐÊÎÑÝÔ½À´Ô½Ö÷ÒªµÄ½ÇÉ« £¬£¬ £¬ÊµÏÖСÎÒ˽¼Ò¼ÛÖµÓëÐÐÒµÉú³¤µÄ¹²Ó®¡£¡£¡£¡£

´ó·¢28¡¤(ÖйúÓÎ)¹Ù·½ÍøÕ¾
¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿