Example Image´ó·¢28

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

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

È˲ÅÐèÇó


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


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

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

¡¸FPGAÐÂÊÖµ½ÄÚÐбؿ´£¡4´óʵս°¸ÀýÆÊÎö²î±ðÓë½ø½×ÃØóÅ¡¹

¡¸FPGAÐÂÊÖµ½ÄÚÐбؿ´£¡4´óʵս°¸ÀýÆÊÎö²î±ðÓë½ø½×ÃØóÅ¡¹

FPGAÐÂÊÖ vs ÄÚÐеġ°´ÎÔª±Ú¡±£º´Ó´úÂ뵽ͷÄÔµÄȫά¶ÈÄëѹ£¨¸½ÕæÊµ°¸Àý²ð½â£©

A comparison of UART module design between novice and expert FPGA developers

ÔÚFPGAµÄÊÀ½çÀ£¬£¬£¬£¬ÐÂÊÖºÍÄÚÐÐÖ®¼äÍùÍù¸ô×ÅÒ»Ìõ¡°ÂíÀïÑÇÄɺ£¹µ¡±¡ª¡ª¿´Ëƶ¼ÔÚдVerilog¡¢µ÷ʱÐò£¬£¬£¬£¬£¬µ«´úÂëÖÊÁ¿¡¢Éè¼ÆÍ·ÄÔºÍÎÊÌâ½â¾öÄÜÁ¦È´ÓÐÌìÈÀÖ®±ð¡£¡£¡£¡£¡£±¾ÎÄͨ¹ý4¸öÕæÊµ¿ª·¢³¡¾°£¬£¬£¬£¬£¬´øÄã¿´¶®²î±ðÊÂʵÔÚÄÄ£¬£¬£¬£¬£¬ÒÔ¼°ÔõÑù¿çÔ½ÕâµÀºè¹µ¡£¡£¡£¡£¡£


Ò»¡¢ÃæÁÙÐèÇó£ºÐÂÊÖ¡°î­ÕßÃþÏó¡±£¬£¬£¬£¬£¬ÄÚÐС°âÒ¶¡½âÅ£¡±

°¸Àý£ºÊµÏÖÒ»¸öUART´®¿ÚͨѶÄ£¿£¿£¿£¿£¿£¿é

  • ÐÂÊÖ²Ù×÷
    • Ö±½ÓÕÕ°á¿Î±¾´úÂ룬£¬£¬£¬£¬Î´Ë¼Á¿ÏÖʵ³¡¾°ÐèÇó£¨Èç²¨ÌØÂÊ×Ô˳Ӧ¡¢ÆæÅ¼Ð£Ñé¿ÉÉèÖã©
    • ״̬»úÉè¼ÆÔÓÂÒ£¬£¬£¬£¬£¬½«¡°·¢ËÍ+ÎüÊÕ¡±¹¦Ð§Ó²Èû½øÍ³Ò»Ä£¿£¿£¿£¿£¿£¿é£¬£¬£¬£¬£¬µ¼ÖÂʱÐò³åÍ»
    • ×ÊÔ´ÏûºÄ±¨¸æÏÔʾ£ºÕ¼ÓÃLUTs 1200£¬£¬£¬£¬£¬ÏÖʵÐèÇó½öÐè600
  • ÄÚÐвÙ×÷
    • ÐèÇó²ð½â£º½«Ä£¿£¿£¿£¿£¿£¿é²ð·ÖΪ¡°²¨ÌØÂʱ¬·¢Æ÷¡±¡°·¢ËÍÒýÇæ¡±¡°ÎüÊÕÒýÇæ¡±Èý²ã¼Ü¹¹£¬£¬£¬£¬£¬Ô¤ÁôAXI-Stream½Ó¿Ú
    • ²ÎÊý»¯Éè¼Æ£ºÍ¨¹ýºê½ç˵֧³Ö¶¯Ì¬ÉèÖÃÊý¾Ýλ¿í£¨5-9룩¡¢Ð£Ñé·½·¨£¨Ææ/ż/ÎÞ£©
    • ×ÊÔ´ÓÅ»¯£º¸´ÓÃ·ÖÆµ¼ÆÊýÆ÷Âß¼­£¬£¬£¬£¬£¬×îÖÕLUTsÕ¼Óýö450

ʵÖʲî±ð£º
ÄÚÐÐÓá°ÏµÍ³Í·ÄÔ¡±½â¹¹ÐèÇ󣬣¬£¬£¬£¬Ïñ´îÀÖ¸ßÒ»Ñù¹¹½¨¿É¸´ÓᢿÉÀ©Õ¹µÄIPºË£»£»£»£»ÐÂÊÖÔòÏÝÈë¡°¹¦Ð§¶ÑÆö¡±£¬£¬£¬£¬£¬´úÂëÓÌÈç¡°Òâ´óÀûÃæÌõ¡±¾À²ø²»Çå¡£¡£¡£¡£¡£


¶þ¡¢Ê±ÐòÔ¼Êø£ºÐÂÊÖ¡°ÍöÑò²¹ÀΡ±£¬£¬£¬£¬£¬ÄÚÐС°Î´Óê³ñçÑ¡±

°¸Àý£ºDDR3¿ØÖÆÆ÷ʱÐòÊÕÁ²

  • ÐÂÊÖ·­³µÏÖ³¡
    • δÌáǰÍýÏëʱÖÓÓò£¬£¬£¬£¬£¬µ¼Ö¿çʱÖÓÓòÐźÅÖ±½ÓÏàÁ¬
    • ʱÐò±¨¸æ±¨ºìºó£¬£¬£¬£¬£¬Ã¤Ä¿Ìí¼Ófalse_pathÔ¼ÊøÑÚÊÎÎÊÌâ
    • ×îÖÕ°å¼¶²âÊÔ·ºÆðÊý¾Ý¶ª°ü£¬£¬£¬£¬£¬±»ÆÈ·µ¹¤ÖØ×öPCB
  • ÄÚÐÐÔ¤ÅвßÂÔ
    • Éè¼Æ½×¶Î£ºÌáǰ»®·Ö¡°DDR PHYʱÖÓÓò¡±¡°Óû§Âß¼­Ê±ÖÓÓò¡±£¬£¬£¬£¬£¬²åÈëCDCͬ²½Æ÷
    • Ô¼Êø½×¶Î£ºÓÃset_clock_groupsÉùÃ÷Ò첽ʱÖÓ£¬£¬£¬£¬£¬¶ÔÒªº¦Â·¾¶set_max_delay
    • ÑéÖ¤½×¶Î£ºÓÃVivadoµÄʱÐòÏòµ¼ÌìÉúÑÛͼ±¨¸æ£¬£¬£¬£¬£¬ÌáǰÓÅ»¯½á¹¹

½¹µã²î±ð£º
ÄÚÐаÑʱÐòÔ¼ÊøÊÓΪÉè¼Æ¹æ·¶£¬£¬£¬£¬£¬´ÓRTL±àÂë½×¶Î¾Í¹æ±ÜΣº¦£»£»£»£»ÐÂÊÖÈ´°ÑËüµ±¡°´´¿ÉÌù¡±£¬£¬£¬£¬£¬Ö±µ½×ÛºÏʧ°Ü²Å»Åæµ÷½â¡£¡£¡£¡£¡£


Èý¡¢DebugÄÜÁ¦£ºÐÂÊÖ¡°µØÌºÊ½ºäÕ¨¡±£¬£¬£¬£¬£¬ÄÚÐС°¾«×¼ÍµÏ®¡±

°¸Àý£ºÍ¼Ïñ´¦Öóͷ£ÏµÍ³Êä³ö»¨ÆÁ

  • ÐÂÊֵġ°¾øÍûÑ­»·¡±
    • äĿÐ޸ģºÔÚ¡°FIFOÉî¶È¡±¡°ÏñËØÊ±ÖÓ·ÖÆµ±È¡±µÈ20+¸ö²ÎÊý¼äËæ»úµ÷½â
    • µ÷ÊÔÒªÁ죺½ö¿¿SignalTap IIץȡ²¿·ÖÐźÅ£¬£¬£¬£¬£¬Î´½¨Éèϵͳ»¯ÊÓ²ìµã
    • ºÄʱ3ÌìÈÔδ¶¨Î»ÎÊÌ⣬£¬£¬£¬£¬×îÖÕÇóÖúÂÛ̳
  • ÄÚÐеġ°Íâ¿ÆÊÖÊõ¡±
    • ÎÊÌ⸴ÏÖ£º½á¹¹»Ò¶È½¥±ä²âÊÔͼ£¬£¬£¬£¬£¬Ëø¶¨»¨ÆÁ·ºÆðÔÚ¸ßÁÁ¶ÈÇøÓò
    • Á´Â·ÆÊÎö£ºÔÚ¡°Ù¤ÂíУÕýÄ£¿£¿£¿£¿£¿£¿é¡±Êä³ö²åÈëILA£¬£¬£¬£¬£¬·¢Ã÷Êý¾ÝÒç³öµ¼Ö½ضÏ
    • ¿ìËÙÐÞ¸´£º½«Ð£ÕýϵÊý´Ó8bit¶¨µãÊý¸ÄΪ12bitÓзûºÅÊý£¬£¬£¬£¬£¬ºÄʱ2Сʱ

½µÎ¬¹¥»÷£º
ÄÚÐÐÏñ¡°FPGAÕì̽¡±£¬£¬£¬£¬£¬Ó÷ֲã¸ôÀë+¿ÆÑ§ÊÓ²ìËõСÎÊÌâ¹æÄ££»£»£»£»ÐÂÊÖÓÌÈç¡°ÎÞÍ·²ÔÓ¬¡±£¬£¬£¬£¬£¬ÓÃÊÔ´í·¨ÅöÔËÆø¡£¡£¡£¡£¡£


ËÄ¡¢¹¤³ÌÍ·ÄÔ£ºÐÂÊÖ¡°Æ¾¿ÕÄóÔ족£¬£¬£¬£¬£¬ÄÚÐС°Ô˳ïá¡á¢¡±

°¸Àý£º¿ª·¢¼¤¹âÀ×´ïÐźŴ¦Öóͷ£ÏµÍ³

  • ÐÂÊֵġ°ÊµÑéÊÒÍ·ÄÔ¡±
    • ½ö¹Ø×¢¹¦Ð§ÊµÏÖ£¬£¬£¬£¬£¬Î´Ë¼Á¿Á¿²úÐèÇó£¨ÈçζÈÅâ³¥¡¢¹Ì¼þÉý¼¶½Ó¿Ú£©
    • ʹÓôó×ÚBlock RAM´æ´¢²éÕÒ±í£¬£¬£¬£¬£¬µ¼ÖÂоƬ±¾Ç®³¬Ô¤Ëã30%
    • ½»¸¶ºó¿Í»§·´Ïì-40¡æÇéÐÎÏÂÊÂÇéÒì³££¬£¬£¬£¬£¬Ðè½ôÆÈÈÈÉè¼Æ
  • ÄÚÐеġ°²úÆ·»¯Êӽǡ±
    • ±¾Ç®¿ØÖÆ£ºÓÃDistributed RAMÌæ»»Block RAM£¬£¬£¬£¬£¬½ÚÔ¼15%Ð¾Æ¬Ãæ»ý
    • ³°ôÐÔÉè¼Æ£ºÖ²Èëζȴ«¸ÐÆ÷£¬£¬£¬£¬£¬¶¯Ì¬µ÷½âSPIʱÖÓËÙÂÊ
    • ¿Éά»¤ÐÔ£ºÔ¤ÁôJTAGµ÷ÊÔÁ´£¬£¬£¬£¬£¬Ö§³ÖÔ¶³Ì¹Ì¼þOTAÉý¼¶

Í·ÄԺ蹵£º
ÄÚÐÐÓá°²úƷ˾Àí+¹¤³Ìʦ¡±Ë«ÖØÊӽǣ¬£¬£¬£¬£¬Æ½ºâÐÔÄÜ¡¢±¾Ç®¡¢¿É¿¿ÐÔ£»£»£»£»ÐÂÊÖ¾ÖÏÞÓÚ¡°¿Î³ÌʵÑ顱¼¶¿ª·¢£¬£¬£¬£¬£¬ºöÊÓÕæÊµ¹¤³ÌÔ¼Êø¡£¡£¡£¡£¡£


¿çÔ½ºè¹µ£ºÖØÐÂÊÖµ½ÄÚÐеġ°×÷±×Æ÷¡±

1?? ½¨Éè¡°IPºËÍ·ÄÔ¡±

  • °Ñÿ¸öÄ£¿£¿£¿£¿£¿£¿é¿´³É¿É¸´ÓõÄIPÉè¼Æ£¬£¬£¬£¬£¬×ñÕÕAMBA/AXIµÈ±ê×¼½Ó¿Ú
  • ²Î¿¼Xilinx UltraScale ArchitectureÊÖ²áѧϰ¼Ü¹¹ÓÅ»¯¼¼ÇÉ

2?? ÕÆÎÕ¡°Ô¼ÊøÇý¶¯Éè¼Æ¡±

  • ÔÚ±àдµÚÒ»ÐÐRTL´úÂëǰ£¬£¬£¬£¬£¬ÏÈÖÆ¶©Ê±ÖÓ¡¢I/O¡¢ÆÆÀýÔ¼Êø²ßÂÔ
  • ʹÓÃTcl¾ç±¾×Ô¶¯»¯Ô¼Êø¹ÜÀí£¨Àý£º¶¯Ì¬ÌìÉú²î±ð¹¤ÒÕ½ÚµãµÄÔ¼ÊøÎļþ£©

3?? ÐÞÁ¶¡°ÏµÍ³¼¶Debug¹¦·¨¡±

  • ÕÆÎÕVivado ILA¡¢SystemVerilog AssertionµÈ¸ß¼¶µ÷ÊÔ¹¤¾ß
  • ¶ÔÖØ´óÎÊÌâ½ÓÄÉ¡°¶þ·Ö·¨¸ôÀ롱£¨Àý£ºÖð¼¶ÅÔ·Ä£¿£¿£¿£¿£¿£¿éÈ·ÈϹÊÕϵ㣩

4?? ¼ÓÈëÆóÒµ¼¶ÏîÄ¿´ãÁ¶

  • ¼ÓÈë´ó·¢28¹úо¡¶FPGAϵͳÉè¼ÆÊµÕ½Óª¡·£¬£¬£¬£¬£¬ÔÚ»ªÎª/ÈüÁé˼µ¼Ê¦Ïòµ¼Ï£º
    • 2ÖÜÍê³É¡°5Gǰ´«FPGA¼ÓËÙ¿¨¡±È«Á÷³Ì¿ª·¢
    • ½âËø¡°µÍ¹¦ºÄÓÅ»¯¡±¡°¸ßËÙSerDesÓ¦ÓᱵȽø½×¼¼ÄÜÊ÷

½áÓFPGAûÓС°¶ÙÎò¡±£¬£¬£¬£¬£¬Ö»ÓС°½¥ÐÞ¡±
ÿһ¸öÄÚÐж¼ÔøÊÇÃæÔÝÇÒÐò±¨¸æÉªÉª²ü¶¶µÄÐÂÈË¡£¡£¡£¡£¡£ÓëÆäÔÚÂÛ̳Ë鯬»¯Ịֽ̀¬£¬£¬£¬£¬²»Èçͨ¹ýϵͳ»¯Ñ§Ï°+ÕæÊµÏîÄ¿ÄëѹʵÏÖÍɱä¡£¡£¡£¡£¡£ÏÖÔÚµã»÷Ï·½Á´½Ó£¬£¬£¬£¬£¬»ñÈ¡¡¶FPGA¹¤³ÌʦÄÜÁ¦½ø½×õ辶ͼ¡·£¬£¬£¬£¬£¬ÈÃÄãµÄ´úÂëÀë±ð¡°Ñ§ÉúÆø¡±£¬£¬£¬£¬£¬ÓµÓС°¹¤Òµ¼¶¡±Áé»ê£¡

Timing constraint strategies for DDR3 controller design
´ó·¢28¡¤(ÖйúÓÎ)¹Ù·½ÍøÕ¾
¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿