terasoft
MATLAB & Simulink©óFPGA¡BASIC¡B¥H¤ÎSoC¶}µo

MATLAB®©óFPGA­ì«¬¤Æ ¨Ï¥ÎMATLAB»PSimulink¶i¦æ­ì«¬¶}µo¡B³¡¸p»P°£¿ù

µL»Ý¨ã³Æ¤j¶qFPGA³]­p¸gÅç¡A§A¤]¥i¥H¦b¥HFPGA¬°°ò¦ªºµwÅé¤W±Nºtºâªk­ì«¬¤Æ¡C

³z¹LMATLAB©MSimulink¡A§A¥i¥H¡G

  • ¨Ï¥Î¸g¹L»{ÃÒªºIP¼Ò¶ô»P¤l¨t²Î«Ø¥ß¥i³¡¸p©óµwÅ骺³]­p
  • ¼ÒÀÀ¨t²Î¼h¯ÅµwÅ馿¬°¡A¦b³¡¸p¦ÜFPGA«e®ø°£¿ù»~
  • ²£¥Í¾A¥Î©óFPGA©ÎSoC¸Ë¸mªºHDL»PCµ{¦¡½X
  • ¦Û°Ê³¡¸p¦ÜAMD®©MIntel® FPGA»PSoCªO¤l©M®M¥ó
  • ±´´ú¨Ã®·®»°õ¦æ©óµwÅ骺°T¸¹
¨t²Î¼h¯Åªº³]­p©M¼ÒÀÀ¡A±µµÛ³vº¥¥[¤J§Y®ÉµwÅ餸¥ó¡Aª½¨ì¹ê²{§¹¾ã³¡¸p¨Ó¶i¦æ²{³õ´ú¸Õ¡C

µL½u³q°TÀ³¥Î

§A¥i¥Hº¥¶i¦a±N§Y®ÉµwÅ餸¥ó¥[¤J§Aªº³]­p¡A±q³z¹L§Y®ÉªÅ¤¤¿é¤J/¿é¥X¨Ó¼ÒÀÀºtºâªk¨ì§¹¾ã¦a³¡¸p¦ÜFPGA©ÎSoC SDR¥­¥x©Î«È»sªO¤l¡C

Wireless HDL Toolbox¤§¤¤¸g¹LµwÅé»{ÃÒªºµL½u³]­pIP¼Ò¶ô²°¤l¨t²ÎÅý§A¥i¥H§Ö³t¦a¶}©l¡CIP¥]§t¤F½d¨Ò¡A¦V§A®i¥Ü¦p¦ó±q¨Ï¥ÎMATLAB¶}µoºtºâªk¡A¨ì¨Ï¥ÎSimulink«Ø¥ßµL½u¨t²Î¹ê²{ªº¼Ò«¬¡C©Ò¦³ªºIP³£³Q¶q¤Æ¬°©wÂI¡A§A¥i¥H±µµÛ¨Ï¥ÎFixed-Point Designer¨ÓºÞ²z«È»sÅ޿誺¶q¤Æ¡A¦A¨Ï¥ÎHDL Coder¶i¦æ³¡¸p¡C

±N°¨¹F»P¹q¤O¹q¤l±±¨îºtºâªk³¡¸p©óFPGAµwÅé
±N°¨¹F»P¹q¤O¹q¤l±±¨îºtºâªk³¡¸p©óFPGAµwÅé¡A¨Ã¨Ï¥ÎSpeedgoat I/O¼Ò¶ôµ¥FPGA¥[³t¾¹¹ïµwÅé°j°é¨ü±±Åé¼Ò«¬¶i¦æ¥[³t

°¨¹F»P¹q¤O¹q¤l±±¨îÀ³¥Î

§A¥i¥H±´¯Á±±¨îºtºâªk°õ¦æ©óFPGAµwÅ骺®Ä¯à©Î³z¹L¥HFPGA¬°°ò¦ªºµwÅé°j°é(hardware-in-the-loop)¨Ó¥[³t¨ü±±Åé¼Ò«¬¡C³z¹L¼sªx¤ä´©¼Æ¾Ç©M¤T¨¤¨ç¼Æªº©wÂI©Î­ì¥Í¯BÂIHDLµ{¦¡½X¥Í¦¨¡AHDL Coder´£¨Ñª½±µªº¤èªk¡A¨ó§U±qSimulink¼Ò«¬³q©¹µwÅé¡C

¦pªG§A¥¿¦b±´¯Á¦p¦ó¬°SoCªº³¡¸p¶i¦æºtºâªk°Ï¤À¡A§A¥i¥H·j´M¨Ã¼ÒÀÀ°Ï¤Àµ¦²¤¡A¦b³¡¸p¨ì­ì«¬¥­¥x¤§«e¥ý´N©Ê¯àªí²{¶i¦æµû¦ô¡C±µµÛ¡A¥i¥H±N¹w¥ý°t¸mªº®M¥ó¡BSpeedgoatµwÅé¡A©Î§A¦Û¤vªº«È»s¤ÆªO¤l§@¬°³¡¸pªº¥Ø¼Ð¡C

°õ¦æ¦bFPGA­ì«¬ªOªº¥hÃúºtºâªk
°õ¦æ¦bFPGA­ì«¬ªOªº¥hÃúºtºâªk

¼v¤ù»P¼v¹³³B²zÀ³¥Î

§A¥i¥HÂǥѦ۰ʲ£¥ÍHDL»PCµ{¦¡½X±NµøÄ±ºtºâªk­ì«¬¤Æ©ó³s±µ¨ìMATLAB»PSimulinkªº¥HFPGA¬°°ò¦ªº¥­¥x¡C§A¤]¥i¥H¨Ï¥Î¸g¹LµwÅé»{ÃÒªºµøÄ±³B²z¼Ò¶ô«Ø¥ß¹ê²{¼Ò«¬¨Ó¼ÒÀÀµwÅ馿¬°¡A¦p¹³¯À¬y(pixel streaming)¡B°ò©ó¾F°ìªººtºâªk(neighborhood-based algorithms)¡B¥~³¡°O¾ÐÅé¦s¨ú¡B¥H¤Î±±¨î°T¸¹¡C

§A¥i¥H±N¼Ò«¬³¡¸p¦Ü±a¦³Äá¼v¾÷ªº²{¦¨FPGAµû¦ô®M¥ó¡C©ÎªÌ¡A§AªºµwÅé¹Î¶¤¥i¥H¬°¥­¥x´£¨Ñ¤ä´©¡AÅý§A¥i¥Hª½±µ±qMATLAB»PSimulink³¡¸p­ì«¬¡C

MATLAB¦b­ì«¬µwÅé°õ¦æ¥HFPGA¬°°ò¦ªº²`«×¾Ç²ß±À½×
ª½±µ³z¹LMATLAB¦b­ì«¬µwÅé°õ¦æ¥HFPGA¬°°ò¦ªº²`«×¾Ç²ß±À½×¡A¨Ã¥B²£¥Í²`«×¾Ç²ßIP®Ö¤ß¥H³¡¸p¦ÜFPGA©ÎASIC¡C

²`«×¾Ç²ß±À½×

¶È»Ý­n³z¹L¤Ö¶qªºMATLAB«ü¥O¡A§A¥i¥H¦bFPGA©MSoCªO¶i¦æºô¸ôªº­ì«¬¤Æ¨Ó¥[³t²`«×¾Ç²ß±À½×¡C±µ¤U¨Ó¡A§A¥i¥H¤ÀªRFPGA±À½×ªº©Ê¯àªí²{¡B½Õ¾ãºô¸ô¡B¶q¤Æ¬°©wÂI¡B­«·s³¡¸p¡A±q¦Ó¦bMATLAB¤º¶i¦æºô¸ôªº­¡¥N¡C³Ì«á¡A§A¥i¥H²£¥Í¤£¨Ì¿à©ó¯S©w³¡¼Ð±oHDL IP®Ö¤ß¡A¥æ¥ÑµwÅé¹Î¶¤¨Ó¶i¦æ¹ê²{¡C

¦Û°Ê´¡¤JÅÞ¿è¨Ó¶i¦æ°£¿ù¡A¨Ã¥B±qMATLAB»PFPGA­ì«¬¤¬°Ê
¦Û°Ê´¡¤JÅÞ¿è¨Ó¶i¦æ°£¿ù¡A¨Ã¥B±qMATLAB»PFPGA­ì«¬¤¬°Ê¡C

FPGA­ì«¬°£¿ù

±a¦³¯u¹ê¥@¬É¿é¤JªºFPGA­ì«¬¥iÀ°§U§Aµoı¦­´Á¼ÒÀÀ¨Ã¥¼µo²{¨Ã­×¥¿ªº¿ù»~¡C§A¥i¥H±NÅÞ¿è´¡¤J¨ìFPGA©ÎSoC­ì«¬¡A¤è«K¨Ï¥ÎMATLAB«ü¥O¨Ó¤¬°Ê¦¡¦a¹ïAXI¥i¦s¨úªº¼È¦s¾¹Åª¨ú©M½s¼g¡A©ÎªÌ±qFPGAµ²ºc¤º³¡ªº´ú¸ÕÂI®·®»¸ê®Æ¡C¦pªG§A°¾¦n¨Ï¥ÎMATLAB©ÎSimulink´ú¸Õ¥­¥x¨Ó°õ¦æ§AªºFPGA­ì«¬¡AFPGA°j°é(FPGA-in-the-loop)¥i±N³]¸m¦Û°Ê¤Æ¡AºÞ²z¼ÒÀÀ¤¶­±¨Ó¶Ç°e¸ê®Æ¦ÜFPGA¨Ã±N¸ê®ÆÅª¨ú¦^¨ì§Aªº´ú¸Õ¥­¥x¡C

³o¨Ç§Þ¥©¤ä´©¦UºØªO¤l¡A¥]§tAMD¡BIntel¡B©MMicrosemi¸Ë¸m¡A©ÎªÌ§A¥i¥H ¦Û¦æ©w¸q¨Ó¨Ï¥Î«È»s¤ÆªO¤l¶i¦æFPGA°j°éÅçÃÒ¡C