{"id":1611,"date":"2010-09-13T08:35:00","date_gmt":"2010-09-13T08:35:00","guid":{"rendered":"http:\/\/support.plunify.com\/en\/2010\/09\/13\/%e6%9c%89%e5%85%b3fpga%e8%ae%be%e8%ae%a1%e7%9a%84%e5%b0%8f%e8%b4%b4%e5%a3%ab-fpga-design-tips-%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87-followed-by-english\/"},"modified":"2010-09-13T08:35:00","modified_gmt":"2010-09-13T08:35:00","slug":"%e6%9c%89%e5%85%b3fpga%e8%ae%be%e8%ae%a1%e7%9a%84%e5%b0%8f%e8%b4%b4%e5%a3%ab-fpga-design-tips-%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87-followed-by-english","status":"publish","type":"post","link":"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/%e6%9c%89%e5%85%b3fpga%e8%ae%be%e8%ae%a1%e7%9a%84%e5%b0%8f%e8%b4%b4%e5%a3%ab-fpga-design-tips-%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87-followed-by-english\/","title":{"rendered":"\u6709\u5173FPGA\u8bbe\u8ba1\u7684\u5c0f\u8d34\u58eb &#8211; FPGA design tips (\u7b80\u4f53\u4e2d\u6587 followed by English)"},"content":{"rendered":"<p><span>(Reproduced from <a href=\"http:\/\/www.eefocus.com\/ican\/blog\/10-09\/196096_3ac9d.html\">eefocus.com<\/a>)<\/span><br \/>Some tips on FPGA design found online, apparently contributed by an experienced designer.<br \/><span>Thought it made some good points with respect to general ways to approach the process.<\/span><br \/><span><br \/><\/span><br \/><span>\u5f88\u591a\u4eba\u5728\u5b66\u4e60FPGA\u8bbe\u8ba1\uff0c\u8fd9\u91cc\u8f6c\u8f7d\u4e00\u4e2a\u8001\u9e1f\u7684\u535a\u6587\uff0c\u8c08\u8c08FPGA\u8bbe\u8ba1\u768417\u4e2a\u5c0f\u8d34\u58eb\u3002<\/span><\/p>\n<p>1\u3001\u72b6\u6001\u673a\u7684\u95ee\u9898\uff0c\u5c3d\u91cf\u4e0d\u8981\u5199\u51fa\u592a\u5927\u7684\u72b6\u6001\u673a\uff0c\u5b81\u613f\u7528\u4e00\u4e9b\u5c0f\u578b\u7684\u72b6\u6001\u673a\u6765\u76f8\u4e92\u5173\u8054\u3002<\/p>\n<p>2\u3001\u63a8\u8350\u5927\u5bb6\u4f7f\u7528timequest\u6765\u505a\u65f6\u5e8f\u7ea6\u675f\uff0c\u597d\u5904\u662f\uff0c\u5b83\u53ef\u80fd\u5bf9\u4f60\u7684\u65f6\u5e8f\u7ea6\u675f\u548c\u4f60\u7684\u8bbe\u8ba1\u5bf9\u7167\u505a\u5206\u6790\uff0c\u5728\u505a\u65f6\u5e8f\u5206\u6790\u4e4b\u524d\uff0c\u5148\u5bf9\u4f60\u7684\u7ea6\u675f\u505a\u5206\u6790\uff0c\u7136\u540e\u544a\u8bc9\u4f60\uff0c\u4f60\u6709\u591a\u5c11\u8be5\u505a\u7684\u4e8b\u60c5\u800c\u6ca1\u6709\u505a\u7684\uff08\u4e3a\u88ab\u7ea6\u675f\u7684\u8def\u5f84\uff09\u8fd8\u6709\u591a\u5c11\u4f60\u8981\u6c42\u505a\u7684\uff0c\u800c\u6ca1\u6709\u88ab\u505a\u7684\uff08\u88ab\u5ffd\u7565\u7684\u65f6\u5e8f\u8981\u6c42\uff09\u3002<\/p>\n<p>3\u3001\u5bf9\u65f6\u949f\u7684\u7ea6\u675f\uff0c\u8981\u91cd\u70b9\u5173\u6ce8\u4e24\u4e2a\u73b0\u8c61\u3002\u9996\u5148\u662f\u5c3d\u91cf\u5c11\u7684\u5728\u65f6\u949f\u8def\u5f84\u4e0a\u5f15\u5165\u903b\u8f91\uff0c\u5426\u5219\u53ef\u80fd\u9020\u6210\u4e86\u65f6\u949f\u548c\u65f6\u949f\u4e4b\u95f4\u7684skew\u3002\u53e6\u5916\u5c31\u662f\u4e00\u79cd\u4e0a\u4e0b\u6cbf\u90fd\u9700\u8981\u7528\u6765\u91c7\u96c6\u6570\u636e\u7684\u65f6\u949f\u3002\u5bf9\u4e8e\u65f6\u949f\u7684\u7ea6\u675f\u6709\u5f88\u591a\u7684\u5730\u65b9\u9700\u8981\u6ce8\u610f\uff0c\u5426\u5219\u4f60\u7684\u7535\u8def\u90fd\u4e0d\u77e5\u9053\u4f1a\u98de\u5230\u54ea\u91cc\u53bb\u3002<\/p>\n<p>4\u3001\u7ea6\u675f\u4e2d\u6700\u91cd\u8981\u7684\u4e00\u4e2a\u5173\u952e\uff0c\u4e0d\u8981\u8fc7\u7ea6\u675f\u3002\u8fc7\u7ea6\u675f\u7684\u574f\u5904\u4e00\u5927\u5806\uff0c\u589e\u52a0\u7f16\u8bd1\u65f6\u95f4\uff0c\u8d44\u6e90\u4f7f\u7528\u8fc7\u5ea6\uff0c\u5bfc\u81f4\u5176\u4ed6\u7684\u65f6\u5e8f\u95ee\u9898\u3002\u5982\u679c\u4f60\u5bf9\u81ea\u5df1\u7684\u7ea6\u675f\u6709\u4e9b\u4e0d\u592a\u653e\u5fc3\uff0c\u53c8\u6216\u8005\u8bf4\u53ef\u80fd\u5668\u4ef6\u548c\u5668\u4ef6\u4e4b\u95f4\u4f1a\u6709\u5f88\u7ec6\u5fae\u7684\u5dee\u522b\uff0c\u4f60\u53ef\u4ee5\u7ed9\u7ea6\u675f\u505a\u4e00\u4e9b\u4f59\u91cf\uff0c\u4f46\u662f\u8fc7\u7ea6\u675f\u662f\u4e07\u4e07\u8981\u4e0d\u5f97\u7684\u3002<\/p>\n<p>5\u3001   IP\u7684\u4f5c\u7528\u5c31\u662f\u4e3a\u4e86\u5b8c\u6210\u4e00\u4e2a\u7279\u5b9a\u7684\u529f\u80fd\uff0c\u6240\u4ee5\u6211\u4eec\u5e76\u4e0d\u9700\u8981\u77e5\u9053\u5b83\u662f\u5982\u4f55\u5b9e\u73b0\u7684\u3002\u4f5c\u4e3a\u4e00\u4e2aIP\uff0c\u6700\u91cd\u8981\u7684\uff0c\u5176\u5b9e\u662f\u63a5\u53e3\uff0c\u56e0\u4e3a\u4f60\u6700\u91cd\u8981\u7684\u662f\u9700\u8981\u77e5\u9053\u662f\u600e\u4e48\u8ba9\u5b83  \u5de5\u4f5c\u8d77\u6765\uff0c\u800c\u4e0d\u662f\u5b83\u600e\u4e48\u5de5\u4f5c\u7684\u3002\u6240\u4ee5\u5728\u770b\u6587\u6863\u7684\u65f6\u5019\uff0c\u6700\u4e3b\u8981\u770b\u7684\u5c31\u662f\u63a5\u53e3\u4fe1\u53f7\uff0c\u5bf9\u6240\u6709\u7684\u4fe1\u53f7\u7684\u4f5c\u7528\u6709\u4e00\u4e2a\u4e86\u89e3\u3002\u4f8b\u5982\uff0cNiosII  CPU\u4f5c\u4e3a\u4e00\u4e2a\u6bd4\u8f83\u5927\u578b\u7684\u6a21\u5757\uff0c\u4f7f\u7528\u7684\u662fAvalon MM  \u70b9\u5bf9\u70b9\u63a5\u53e3\uff0c\u5b83\u4e0e\u666e\u901a\u7684PCI\u63a5\u53e3\u4e0d\u540c\u7684\u5730\u65b9\u662f\uff0c\u4ed6\u53ef\u4ee5\u652f\u6301\u540c\u65f6\u591a\u7ebf\u63a7\u5236\u3002\u56e0\u4e3a\u5b83\u6ca1\u6709\u603b\u7ebf\u7684\u6982\u5ff5\uff0c\u4e0d\u4f1a\u5728\u603b\u7ebf\u88ab\u5360\u636e\u7684\u65f6\u5019\uff0c\u5176\u4ed6\u4efb\u4f55\u901a\u8baf\u90fd\u65e0\u6cd5\u8fdb\u884c\u3002  NiosII\u662f\u5728SOPC builder  \u4e2d\u88ab\u76f4\u63a5\u4f7f\u7528\u7684\uff0c\u6211\u4eec\u4e0d\u9700\u8981\u77e5\u9053\u5177\u4f53\u6709\u54ea\u4e9b\u4fe1\u53f7\uff0c\u56e0\u4e3a\u6ca1\u6709\u975e\u5e38\u9700\u8981\uff0c\u6211\u4eec\u662f\u770b\u4e0d\u5230\u8fd9\u4e9b\u63a5\u53e3\u7684\u3002\u5728NiosII\u4e2d\uff0c\u6211\u4eec\u6709\u4e24\u4e2aMaster Avalon  MM \u63a5\u53e3\uff0c\u4e00\u4e2a\u662fInstruction Master Port,  \u8fd9\u662fCPU\u7528\u6765\u8bfb\u53d6\u6307\u4ee4\u7684\u63a5\u53e3\u3002CPU\u901a\u8fc7\u8fd9\u4e2a\u7aef\u53e3\u4eceMemory\u4e0a\u8bfb\u53d6\u6307\u4ee4\u3002\u53e6\u4e00\u4e2a\u662fData master port,  \u5f88\u7b80\u5355\uff0c\u8fd9\u662f\u7528\u6765\u8fde\u63a5\u6570\u636e\u901a\u9053\u7684\u3002\u6bd4\u5982\u8bf4\u4f60\u8981\u8bfb\u53d6\u7684\u6570\u636e\uff0c\u4f60\u8981\u5b58\u50a8\u7684\u6570\u636e\uff0c\u90fd\u662f\u8d70\u8fd9\u4e2a\u901a\u9053\u3002\u8fd9\u4e24\u4e2a\u7aef\u53e3\u53ef\u4ee5\u8fde\u63a5\u540c\u4e00\u4e2a\u5185\u5b58\uff0c\u5728\u8fd9\u79cd\u65f6\u5019\u9700\u8981\u7279\u522b\u5c0f\u5fc3\uff0c\u5f88\u6709  \u53ef\u80fd\u81ea\u5df1\u628a\u81ea\u5df1\u7684\u6307\u4ee4\u7ed9\u6539\u6389\u4e86\u3002\u4f46\u662f\u53cd\u8fc7\u6765\u601d\u8003\u4e00\u4e0b\uff0c\u5176\u5b9e\u6211\u4eec\u53ef\u4ee5\u505a\u4ec0\u4e48\uff1f\u53ef\u4ee5\u6309\u7167\u72b6\u51b5\u6539\u53d8\u8f6f\u4ef6\u4ee3\u7801\u3002NiosII\u4e2d\u8fd8\u6709\u7b2c\u4e09\u4e2a\u7aef\u53e3\uff0c\u8fd9\u662f\u7528\u6765\u505a  Debug\u7528\u7684\u7aef\u53e3\u3002\u8fd8\u6709\u5176\u4ed6\u7684\u4e00\u4e9b\u63a5\u53e3\uff0c\u6bd4\u5982TCM\u63a5\u53e3\u3002\u6211\u4eec\u9700\u8981\u77e5\u9053\u8fd9\u4e9b\u63a5\u53e3\u7684\u5b58\u5728\uff0c\u4f46\u662f\u4e0d\u9700\u8981\u77e5\u9053\u7ec6\u8282\uff0c\u53ea\u6709\u5728\u7528\u5230\u7684\u65f6\u5019\u518d\u53bb\u770b\u76f8\u5173\u7684\u6587\u6863\u5c31\u597d\u4e86\u3002<\/p>\n<p>6\u3001\u4f5c\u4e3a\u7cfb\u7edf\u8bbe\u8ba1\uff0c\u662f\u9700\u8981\u6709\u4e00\u79cd\u7c97\u65f7\u578b\u7684\u5927\u6c14\u9b44\uff0c\u4e0d\u9700\u8981\u5728\u7ec6\u8282\u4e0a\u6d6a\u8d39\u65f6\u95f4\u3002\u4f60\u4f1a\u53d1\u73b0\u5f88\u591a\u7684\u7ec6\u8282\u662f\u6ca1\u6709\u610f\u4e49\u7684\u3002\u5e76\u4e0d\u662f\u8bf4\u6211\u4eec\u4e0d\u9700\u8981\u53bb\u7814\u7a76\u7ec6\u8282\uff0c\u7ec6\u8282\u662f\u5f88\u91cd\u8981\u7684\uff0c\u4f46\u662f\u7ec6\u8282\u9700\u8981\u5728\u88ab\u7528\u5230\u7684\u65f6\u5019\u624d\u53bb\u5173\u6ce8\u5c31\u597d\u4e86\u3002<\/p>\n<p>7\u3001\u5728\u4f7f\u7528IP\u7684\u65f6\u5019\uff0c\u4f1a\u906d\u9047\u5230\u610f\u60f3\u4e0d\u5230\u7684\u75db\u82e6\u7684\u3002\u6240\u4ee5\uff0c\u5c3d\u91cf\u4e0d\u8981\u4f9d\u9760\u5047\u8bbe\u6765\u81c6\u60f3\u4e86\u6a21\u5757\u7684\u8bbe\u7f6e\u3002\u800c\u662f\u5c3d\u91cf\u7684\u9002\u5e94\u73af\u5883\uff0c\u6765\u914d\u7f6e\u81ea\u5df1\u7684\u8bbe\u8ba1\u3002\u4f5c\u4e3a\u4e00\u4e2aFPGA\u7684\u73a9\u5bb6\uff0c\u8fd9\u79cd\u4f9d\u7167\u73af\u5883\u6765\u6539\u53d8\u7684\u80fd\u529b\u662f\u5fc5\u987b\u7684\u3002<\/p>\n<p>8\u3001\u8003\u8651Cashes\u7684\u8bbe\u7f6e\uff0cCash \u6709\u4e24\u79cd\uff0c\u4e00\u79cd\u662f\u7528\u6765\u505a\u6307\u4ee4\u7f13\u5b58\u7684\uff0c\u4e00\u79cd\u662f\u7528\u6765\u505a\u6570\u636e\u7f13\u5b58\u7684\u3002Cash\u7684\u5927\u5c0f\u5bf9\u7a0b\u5e8f\u7684\u8fd0\u884c\u901f\u5ea6\u662f\u6709\u5f71\u54cd\u7684\u3002\u5f53\u7136\u4e5f\u6ca1\u5fc5\u8981\u4f7f\u7528\u8fc7\u591a\u7684\u8d44\u6e90\u3002\u591f\u7528\u5c31\u597d\u4e86\u3002<\/p>\n<p>9\u3001\u81ea\u5b9a\u4e49\u6307\u4ee4\u8bbe\u7f6e\u3002\u8fd9\u662f\u6700\u6709\u4ef7\u503c\u7684\u8bbe\u7f6e\u3002\u6240\u8c13\u81ea\u5b9a\u4e49\u6307\u4ee4\uff0c\u5e76\u4e0d\u662f\u4e00\u4e2a\u8f6f\u4ef6\u5b8f\u6216\u8005\u51fd\u6570\u3002\u800c\u662f\u4e00\u5757\u786c\u4ef6\u3002\u5f53CPU\u8c03\u7528\u5230\u8fd9\u4e2a\u6307\u4ee4\u7684\u65f6\u5019\uff0c\u4e8b\u5b9e\u4e0a\u5b83\u8c03\u7528\u7684\u5c31\u662f\u8fd9\u4e2a\u786c\u4ef6\u6a21\u5757\uff0c\u5b83\u88ab\u5d4c\u5165\u5728CPU\u4e2d\u3002\u800c\u8fd9\u5176\u5b9e\u5c31\u662fNiosII\u597d\u73a9\u7684\u5730\u65b9\u3002<\/p>\n<p>10\u3001SOPC builder\u662fQuartusII\u4e2d\u7528\u6765\u5efa\u7acb\uff0c\u5f00\u53d1\uff0c\u7ef4\u62a4\u7cfb\u7edf\u7684\u5e73\u53f0\u3002\u867d\u7136\u5f88\u591a\u65f6\u5019\u6211\u4eec\u7528\u5b83\u4f5c\u4e3aNiosII\u7684\u4e00\u4e2a\u5d4c\u5165\u5f0f\u7cfb\u7edf\u7684\u5f00\u53d1\u73af\u5883\uff0c\u4f46\u6211\u4e0d\u8981\u628a\u601d\u8def\u53ea\u662f\u5c40\u9650\u5728NiosII\u4e0a\u9762\u3002\u5b83\u5c06\u6210\u4e3a\u4e00\u4e2a\u5305\u5bb9\u5168\u90e8\u7cfb\u7edf\u5185\u5bb9\u7684\u4e00\u4e2a\u5e73\u53f0\u3002<\/p>\n<p>11\u3001  Avalon\u63a5\u53e3\u5206\u6210\u4e24\u79cd\uff0c\u4e00\u79cd\u662fAvalon-MM\u63a5\u53e3\uff0c\u53e6\u4e00\u79cd\u662fAvalon-ST  \u63a5\u53e3\u3002MM\u63a5\u53e3\uff0c\u662f\u901a\u8fc7\u5730\u5740\u6765\u8bfb\u5199\u6570\u636e\uff0c\u66f4\u591a\u7684\u662f\u7528\u5728\u63a7\u5236\u903b\u8f91\u4e0a\u9762\u3002ST\u63a5\u53e3\u662f\u7528\u4e8e\u70b9\u5230\u70b9\u7684\u6d41\u6570\u636e\u63a5\u53e3\uff0c\u66f4\u591a\u7684\u53ef\u4ee5\u7528\u5728\u6709\u9ad8\u901f\u901a\u8fc7\u7387\u7684\u6a21\u5757\u4e2d\u95f4\u3002\u8fd9\u4e24\u4e2a\u63a5   \u53e3\u672c\u8eab\u5e76\u6ca1\u6709\u77db\u76fe\uff0c\u4e0d\u662f\u8bf4\u52bf\u4e0d\u4e24\u7acb\u7684\uff0c\u4e00\u4e2a\u6a21\u5757\u4e2d\u65e2\u53ef\u4ee5\u6709MM\u63a5\u53e3\uff0c\u751a\u81f3\u51e0\u4e2aMM\u63a5\u53e3\uff0c\u4e5f\u53ef\u4ee5\u540c\u65f6\u5b58\u5728ST\u63a5\u53e3\u3002\u4f5c\u4e3a\u4e00\u4e2a\u70b9\u5bf9\u70b9\u7684\u63a5\u53e3\u5b9a\u4e49\uff0cAvalon   \u53ef\u4ee5\u505a\u5230\u9ad8\u6548\u7684\u63a5\u53e3\u6548\u679c\u3002\u8fd9\u4e0ePCI\u4e4b\u7c7b\u7684\u603b\u7ebf\u63a5\u53e3\u662f\u6709\u672c\u8d28\u533a\u522b\u7684\u3002PCI\u603b\u7ebf\u53ef\u4ee5\u770b\u4f5c\u662f\u94c1\u8def\u8f68\u9053\uff0c\u5f53\u4e00\u4e2a\u706b\u8f66\u5728\u8f68\u9053\u4e0a\u884c\u9a76\u7684\u65f6\u5019\uff0c\u5c31\u4e0d\u53ef\u4ee5\u6709\u53e6\u4e00\u4e2a\u706b\u8f66  \u540c\u65f6\u4f7f\u7528\u8f68\u9053\u3002Avalon\u63a5\u53e3\u66f4\u591a\u597d\u50cf\u9ad8\u901f\u516c\u8def\uff0c\u8f66\u8f86\u53ef\u4ee5\u53cc\u5411\u884c\u9a76\u3002<\/p>\n<p>12\u3001\u4f5c\u4e3aFPGA\u8bbe\u8ba1\u4e2d\u6bd4\u8f83\u72ec\u7279\u7684\u4e00\u4e2a\u539f\u5219\u5c31\u662f\uff0c\u8fd9\u4e2a\u4e16\u754c\u4e0d\u662f\u4f60\u521b\u9020\u7684\uff0c\u6240\u4ee5\u4f60\u5fc5\u987b\u53bb\u9002\u5e94\u5b83\uff0c\u800c\u4e0d\u662f\u987d\u56fa\u81ea\u5df1\u7684\u610f\u56fe\u3002<\/p>\n<p>13\u3001\u5728FPGA\u4e2d\uff0c\u9664\u4e86\u95e8\u4e0e\u95e8\u4e4b\u95f4\u7684\u5ef6\u8fdf\u662f\u56fa\u5b9a\u7684\uff08\u65f6\u949f\u9891\u7387\uff09\u5916\uff0c\u4e00\u5207\u7684\u7ec4\u5408\u7535\u8def\u7684\u5ef6\u8fdf\u90fd\u662f\u4e0d\u786e\u5b9a\u7684\u3002\u8bb0\u4f4f\u8fd9\u6837\u4e00\u4e2a\u89c4\u5f8b\u5c31\u597d\u4e86\uff0c\u51e1\u662f\u6ca1\u6709\u88ab\u95e8\u5173\u8fc7\u7684\u4fe1\u53f7\u90fd\u662f\u4e0d\u7a33\u5b9a\u7684\uff0c\u90fd\u53ea\u662f\u6682\u65f6\u7684\u3002<\/p>\n<p>14\u3001\u5728\u751f\u6210\u65b0\u7684\u518d\u751f\u95e8\uff08\u4e00\u4e9b\u903b\u8f91\u7684\u7ed3\u679c\u4f5c\u4e3a\u65f6\u949f\u53bb\u9a71\u52a8\u4e00\u4e2a\u95e8\uff0c\u6211\u4eec\u4e14\u7ba1\u4ed6\u53eb\u4f5c\u518d\u751f\u95e8\u5427\uff09\u4e4b\u524d\uff0c\u4f60\u6700\u597d\u628a\u8fd9\u4e2a\u65f6\u949f\u4fe1\u53f7\u7528\u539f\u6765\u7684\u90a3\u79cd\u95e8\u5728\u5173\u4e00\u4e0b\u3002\u8fd9\u6837\u4f60\u83b7\u5f97\u7684\u4f1a\u662f\u4e00\u4e2a\u5e72\u51c0\u7684\uff0c\u7eaf\u7cb9\u7684\u65f6\u949f\u4fe1\u53f7\u3002<\/p>\n<p>15\u3001\u9488\u5bf9\u65b0\u7684\u4e00\u4e9b\u5668\u4ef6\uff0c\u5668\u4ef6\u672c\u8eab\u53ef\u4ee5\u63d0\u4f9b\u4e00\u4e9b\u65f6\u949f\u63a7\u5236\u6a21\u5757\uff0c\u5f53\u4f60\u9700\u8981\u4f7f\u7528\u95e8\u9501\uff08gated lock\uff09\u7684\u65f6\u5019\uff0c\u5c3d\u91cf\u7684\u4f7f\u7528\u8fd9\u4e9b\u6a21\u5757\uff0c\u4f1a\u8ba9\u4f60\u7684\u65f6\u949f\u53d8\u5f97\u5b89\u5168\uff08clock control block\uff09\u3002<\/p>\n<p>16\u3001\u5982\u679c\u4f60\u4e0d\u5f97\u4e0d\u4f7f\u7528\u903b\u8f91\u7535\u8def\u6765\u9501\u95e8\uff0c\u800c\u4f60\u7684\u5668\u4ef6\u53c8\u6ca1\u6709\u7279\u5b9a\u7684\u6a21\u5757\u3002\u90a3\u4e48\u6700\u597d\u7684\u60c5\u51b5\u5c31\u662f\uff0c\u4f60\u53ef\u4ee5\u5148\u7528\u90a3\u4e2a\u65f6\u949f\uff0c\u628a\u4f60\u7684\u95e8\u9501\u4fe1\u53f7\u5173\u4e00\u4e0b\u3002\u8fd9\u6837\u7684\u597d\u5904\u5c31\u662f\u53ef\u4ee5\u628a\u6bdb\u523a\u4fe1\u53f7\u5b8c\u5168\u7684\u89c4\u907f\u5728\u95e8\u5916\u9762\uff0c\u4f7f\u4f60\u7684\u65f6\u949f\u66f4\u52a0\u5b89\u5168\u3002<\/p>\n<p>17\u3001\u4e0a\u7535\u521d\u59cb\u503c<br \/>\u5728\u901a\u5e38\u7684\u72b6\u51b5\u4e0b\uff0c\u6240\u6709\u7684\u95e8\u5728\u4e0a\u7535\u7684\u65f6\u5019\u8f93\u51fa\u4e3a\u4f4e\u3002\u4f46\u662f\u8fd9\u5e76\u4e0d\u662f\u4e0d\u80fd\u6539\u53d8\u7684\u3002\u4f60\u53ef\u4ee5\u628a\u4e0a\u7535\u8bbe\u7f6e\u4e3a\u9ad8\uff0c\u8fd9\u6837\u7efc\u5408\u5de5\u5177\u53ef\u80fd\u4f1a\u505a\u4e24\u79cd\u4e8b\u60c5\uff0c\u628a\u8f93\u51fa\u53cd\u5411\uff0c\u6216\u8005\u4f7f\u7528preset\u63a7\u5236\uff08\u5982\u679c\u5b58\u5728\u7684\u8bdd\uff09\u628a\u521d\u59cb\u503c\u653e\u8fdb\u95e8\u91cc\u3002<br \/>\u5f53\u65f6\u4e0a\u7535\u4e3a\u9ad8\u7684\u505a\u6cd5\uff0c\u5e76\u4e0d\u662f\u975e\u5e38\u5fc5\u8981\uff0c\u56e0\u4e3a\u4f60\u5176\u5b9e\u662f\u53ef\u4ee5\u4f7f\u7528\u590d\u4f4d\u4fe1\u53f7\u6765\u83b7\u5f97\u4f60\u60f3\u8981\u7684\u521d\u59cb\u72b6\u6001\u7684\u3002<\/p>\n<hr \/>\n<p>Many people are learning FPGA design, and here are some tips from an old hand.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>1\u3001Try not to have large state machines, but rather smaller ones that communicate with one another.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>2\u3001 It is recommended that Timequest is used to create timing constraints.  The benefit is, before it analyzes your timing, it will first analyze  your constraints and then inform you about unconstrained paths and  timing requirements that you haven't attended to.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>3\u3001 Two things are worth noting with regards to clock constraints. First, as  much as possible avoid inserting logic into the clock path, otherwise  clock-to-clock skew may occur. Second, be very careful when gathering  data on both edges of a clock, otherwise your circuit might well end up  in lalaland.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>4\u3001 The most critical point in constraining is not to over-constrain. There  are many pitfalls of doing so--increased compile time, utilizing more  chip resources than necessary, all resulting in other timing problems.  If you're concerned about your constraints, or if there are minute  differences in timing characteristics from device to device, try giving  more allowance in your constraints, but never over-constrain.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>5\u3001 The purpose of IP is to fulfill a specific function, so we don't have to  know how a particular piece of IP works. The most important aspect of  an IP core is its interface because that's all you need to make it work  for you. Hence the most important section of an IP core datasheet is its  interface chapter.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>For  example, Altera's NIOS-II CPU is a somewhat large module which uses an  Avalon MM point-to-point interface. It differs from a \"normal\" PCI  interface in that it is a simultaneous multi-master interface.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>The  NIOS-II is directly invoked and used within the SOPC Builder software.  We don't need to know what signals it contains, for we won't be able to  see those internal interfaces unless there is a real need to do so. In  the NIOS-II, we have two Master Avalon MM interfaces, one of which is an  Instruction Master Port--used by the CPU to fetch instructions from  memory.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>The  other is the Data Master Port; simply put, this is used to connect  datapaths. For instance the data you'd like to read and the data you'd  like to save both use this datapath.<br \/>These two ports can be linked to  the same internal storage. However, in that situation great care must  be taken to avoid overwriting your own instructions. But thinking about  it, what can we do with such an implementation? We can change our  software code depending on the situation.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>NIOS-II  has a third port that is used for Debug, plus some other interfaces  like the ITCM. We need to know that those interfaces exist but we don't  need to know the details until we actually use them. When that time  comes, we just need to consult the datasheet.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>6\u3001 A system designer needs to be bold and daring, and not waste time on  details. You will find that many details are meaningless. This is not  saying that we don't have to look into the details; details are very  important, but they need to be given attention only when they are  utilized.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>7\u3001 The use of IP brings with it many unpredictable issues and pain. Hence,  as much as possible, don't rely on assumptions to guess a module's  setup. Instead, adapt to the situation in order to deploy one's own  design. This kind of improvisation is essential for an FPGA user.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>8\u3001 Consider the cache configuration. There are two types of  caches--instruction caches and data caches. Their size affect software  execution speed. But there's also no need to use too many resources for  caches. Just enough will do.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>9\u3001 Configuring custom, user-defined instructions. This is the most valuable  type of setup. A user-defined instruction in this case does not refer  to a software macro or function, but to a piece of hardware. When the  CPU invokes this instruction, it is invoking a hardware module which in  embedded in the CPU. That's the fun of NIOS-II.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>10\u3001 SOPC Builder is a platform within Quartus-II that's used to build,  develop and maintain systems. Even though we often use it as a  development environment for a NIOS-II embedded system, let's not limit  our thoughts about it to just a NIOS-II platform, but rather as a  platform for an entire system.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>11\u3001 There are two kinds of Avalon interfaces, Avalon-MM and Avalon-ST. The  former is used to read\/write data via addresses and is more used for  controlling logic. The latter is for point-to-point streaming data, more  for use inside high-speed filter modules. These two interfaces aren't  contradicting or mutually exclusive, and can co-exist in the same  module. There can even be multiple MM interfaces. As a point-to-point  interface, the Avalon interface can achieve high throughput. It is  fundamentally different from a PCI interface; think of a PCI interface  as a railway track--only one train can travel on it at a time. An Avalon  interface is like a highway--multiple cars can travel on it in two  different directions.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>12\u3001 A rather special principle of FPGA design is that the world wasn't made  by you, so you must adapt to circumstances and not stubbornly stick to  your own intentions.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>13\u3001 In an FPGA, apart from gate-to-gate delays which are fixed(clock  frequency), all other combinational circuit delays are uncertain. Just  remember this rule: all signals that aren't gated are unstable and  temporary.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>14\u3001 Before generating a gated clock(using the result of some logic as a  clock to drive a gate), you'd better use the same primary clock signal  as an input to the gate that generates the gated clock signal. This way,  you get a clean clock signal.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>15\u3001 Newer devices have embedded clock control modules. When you need to use  gated locks, try to use those modules as much as possible. That will  allow your clock to become stable.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>16\u3001 If you have no choice but to use a logic circuit to lock a gate and your  device doesn't have specialized modules, then the best thing to do is  to use that clock to gate your gated lock signal. That way, glitches are  prevented and your clock becomes more stable.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>17\u3001 Under normal conditions, the initial output values of gates at power-up  are low. But those can be changed. You can configure power-up values to  be high. This kind of integrated tool can do two things--either reverse  the output or use some sort of preset control (if it exists) to  configure the gate with the desired initial value.<\/p>\n<div style=\"height: 8pt;min-height: 8pt;padding: 0px\"><\/div>\n<p>This  is not really necessary because you can actually use reset signals to  get the initial conditions that you want. If you really have to, there  are several ways to do it... (the rest is cut off)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>(Reproduced from eefocus.com)Some tips on FPGA design found online, apparently contributed by an experienced designer.Thought it made some good points with respect to general ways to approach the process.\u5f88\u591a\u4eba\u5728\u5b66\u4e60FPGA\u8bbe\u8ba1\uff0c\u8fd9\u91cc\u8f6c\u8f7d\u4e00\u4e2a\u8001\u9e1f\u7684\u535a\u6587\uff0c\u8c08\u8c08FPGA\u8bbe\u8ba1\u768417\u4e2a\u5c0f\u8d34\u58eb\u3002 1\u3001\u72b6\u6001\u673a\u7684\u95ee\u9898\uff0c\u5c3d\u91cf\u4e0d\u8981\u5199\u51fa\u592a\u5927\u7684\u72b6\u6001\u673a\uff0c\u5b81\u613f\u7528\u4e00\u4e9b\u5c0f\u578b\u7684\u72b6\u6001\u673a\u6765\u76f8\u4e92\u5173\u8054\u3002 2\u3001\u63a8\u8350\u5927\u5bb6\u4f7f\u7528timequest\u6765\u505a\u65f6\u5e8f\u7ea6\u675f\uff0c\u597d\u5904\u662f\uff0c\u5b83\u53ef\u80fd\u5bf9\u4f60\u7684\u65f6\u5e8f\u7ea6\u675f\u548c\u4f60\u7684\u8bbe\u8ba1\u5bf9\u7167\u505a\u5206\u6790\uff0c\u5728\u505a\u65f6\u5e8f\u5206\u6790\u4e4b\u524d\uff0c\u5148\u5bf9\u4f60\u7684\u7ea6\u675f\u505a\u5206\u6790\uff0c\u7136\u540e\u544a\u8bc9\u4f60\uff0c\u4f60\u6709\u591a\u5c11\u8be5\u505a\u7684\u4e8b\u60c5\u800c\u6ca1\u6709\u505a\u7684\uff08\u4e3a\u88ab\u7ea6\u675f\u7684\u8def\u5f84\uff09\u8fd8\u6709\u591a\u5c11\u4f60\u8981\u6c42\u505a\u7684\uff0c\u800c\u6ca1\u6709\u88ab\u505a\u7684\uff08\u88ab\u5ffd\u7565\u7684\u65f6\u5e8f\u8981\u6c42\uff09\u3002 3\u3001\u5bf9\u65f6\u949f\u7684\u7ea6\u675f\uff0c\u8981\u91cd\u70b9\u5173\u6ce8\u4e24\u4e2a\u73b0\u8c61\u3002\u9996\u5148\u662f\u5c3d\u91cf\u5c11\u7684\u5728\u65f6\u949f\u8def\u5f84\u4e0a\u5f15\u5165\u903b\u8f91\uff0c\u5426\u5219\u53ef\u80fd\u9020\u6210\u4e86\u65f6\u949f\u548c\u65f6\u949f\u4e4b\u95f4\u7684skew\u3002\u53e6\u5916\u5c31\u662f\u4e00\u79cd\u4e0a\u4e0b\u6cbf\u90fd\u9700\u8981\u7528\u6765\u91c7\u96c6\u6570\u636e\u7684\u65f6\u949f\u3002\u5bf9\u4e8e\u65f6\u949f\u7684\u7ea6\u675f\u6709\u5f88\u591a\u7684\u5730\u65b9\u9700\u8981\u6ce8\u610f\uff0c\u5426\u5219\u4f60\u7684\u7535\u8def\u90fd\u4e0d\u77e5\u9053\u4f1a\u98de\u5230\u54ea\u91cc\u53bb\u3002 4\u3001\u7ea6\u675f\u4e2d\u6700\u91cd\u8981\u7684\u4e00\u4e2a\u5173\u952e\uff0c\u4e0d\u8981\u8fc7\u7ea6\u675f\u3002\u8fc7\u7ea6\u675f\u7684\u574f\u5904\u4e00\u5927\u5806\uff0c\u589e\u52a0\u7f16\u8bd1\u65f6\u95f4\uff0c\u8d44\u6e90\u4f7f\u7528\u8fc7\u5ea6\uff0c\u5bfc\u81f4\u5176\u4ed6\u7684\u65f6\u5e8f\u95ee\u9898\u3002\u5982\u679c\u4f60\u5bf9\u81ea\u5df1\u7684\u7ea6\u675f\u6709\u4e9b\u4e0d\u592a\u653e\u5fc3\uff0c\u53c8\u6216\u8005\u8bf4\u53ef\u80fd\u5668\u4ef6\u548c\u5668\u4ef6\u4e4b\u95f4\u4f1a\u6709\u5f88\u7ec6\u5fae\u7684\u5dee\u522b\uff0c\u4f60\u53ef\u4ee5\u7ed9\u7ea6\u675f\u505a\u4e00\u4e9b\u4f59\u91cf\uff0c\u4f46\u662f\u8fc7\u7ea6\u675f\u662f\u4e07\u4e07\u8981\u4e0d\u5f97\u7684\u3002 5\u3001 IP\u7684\u4f5c\u7528\u5c31\u662f\u4e3a\u4e86\u5b8c\u6210\u4e00\u4e2a\u7279\u5b9a\u7684\u529f\u80fd\uff0c\u6240\u4ee5\u6211\u4eec\u5e76\u4e0d\u9700\u8981\u77e5\u9053\u5b83\u662f\u5982\u4f55\u5b9e\u73b0\u7684\u3002\u4f5c\u4e3a\u4e00\u4e2aIP\uff0c\u6700\u91cd\u8981\u7684\uff0c\u5176\u5b9e\u662f\u63a5\u53e3\uff0c\u56e0\u4e3a\u4f60\u6700\u91cd\u8981\u7684\u662f\u9700\u8981\u77e5\u9053\u662f\u600e\u4e48\u8ba9\u5b83 \u5de5\u4f5c\u8d77\u6765\uff0c\u800c\u4e0d\u662f\u5b83\u600e\u4e48\u5de5\u4f5c\u7684\u3002\u6240\u4ee5\u5728\u770b\u6587\u6863\u7684\u65f6\u5019\uff0c\u6700\u4e3b\u8981\u770b\u7684\u5c31\u662f\u63a5\u53e3\u4fe1\u53f7\uff0c\u5bf9\u6240\u6709\u7684\u4fe1\u53f7\u7684\u4f5c\u7528\u6709\u4e00\u4e2a\u4e86\u89e3\u3002\u4f8b\u5982\uff0cNiosII CPU\u4f5c\u4e3a\u4e00\u4e2a\u6bd4\u8f83\u5927\u578b\u7684\u6a21\u5757\uff0c\u4f7f\u7528\u7684\u662fAvalon MM \u70b9\u5bf9\u70b9\u63a5\u53e3\uff0c\u5b83\u4e0e\u666e\u901a\u7684PCI\u63a5\u53e3\u4e0d\u540c\u7684\u5730\u65b9\u662f\uff0c\u4ed6\u53ef\u4ee5\u652f\u6301\u540c\u65f6\u591a\u7ebf\u63a7\u5236\u3002\u56e0\u4e3a\u5b83\u6ca1\u6709\u603b\u7ebf\u7684\u6982\u5ff5\uff0c\u4e0d\u4f1a\u5728\u603b\u7ebf\u88ab\u5360\u636e\u7684\u65f6\u5019\uff0c\u5176\u4ed6\u4efb\u4f55\u901a\u8baf\u90fd\u65e0\u6cd5\u8fdb\u884c\u3002 NiosII\u662f\u5728SOPC builder \u4e2d\u88ab\u76f4\u63a5\u4f7f\u7528\u7684\uff0c\u6211\u4eec\u4e0d\u9700\u8981\u77e5\u9053\u5177\u4f53\u6709\u54ea\u4e9b\u4fe1\u53f7\uff0c\u56e0\u4e3a\u6ca1\u6709\u975e\u5e38\u9700\u8981\uff0c\u6211\u4eec\u662f\u770b\u4e0d\u5230\u8fd9\u4e9b\u63a5\u53e3\u7684\u3002\u5728NiosII\u4e2d\uff0c\u6211\u4eec\u6709\u4e24\u4e2aMaster Avalon MM \u63a5\u53e3\uff0c\u4e00\u4e2a\u662fInstruction Master Port, \u8fd9\u662fCPU\u7528\u6765\u8bfb\u53d6\u6307\u4ee4\u7684\u63a5\u53e3\u3002CPU\u901a\u8fc7\u8fd9\u4e2a\u7aef\u53e3\u4eceMemory\u4e0a\u8bfb\u53d6\u6307\u4ee4\u3002\u53e6\u4e00\u4e2a\u662fData master port, \u5f88\u7b80\u5355\uff0c\u8fd9\u662f\u7528\u6765\u8fde\u63a5\u6570\u636e\u901a\u9053\u7684\u3002\u6bd4\u5982\u8bf4\u4f60\u8981\u8bfb\u53d6\u7684\u6570\u636e\uff0c\u4f60\u8981\u5b58\u50a8\u7684\u6570\u636e\uff0c\u90fd\u662f\u8d70\u8fd9\u4e2a\u901a\u9053\u3002\u8fd9\u4e24\u4e2a\u7aef\u53e3\u53ef\u4ee5\u8fde\u63a5\u540c\u4e00\u4e2a\u5185\u5b58\uff0c\u5728\u8fd9\u79cd\u65f6\u5019\u9700\u8981\u7279\u522b\u5c0f\u5fc3\uff0c\u5f88\u6709 \u53ef\u80fd\u81ea\u5df1\u628a\u81ea\u5df1\u7684\u6307\u4ee4\u7ed9\u6539\u6389\u4e86\u3002\u4f46\u662f\u53cd\u8fc7\u6765\u601d\u8003\u4e00\u4e0b\uff0c\u5176\u5b9e\u6211\u4eec\u53ef\u4ee5\u505a\u4ec0\u4e48\uff1f\u53ef\u4ee5\u6309\u7167\u72b6\u51b5\u6539\u53d8\u8f6f\u4ef6\u4ee3\u7801\u3002NiosII\u4e2d\u8fd8\u6709\u7b2c\u4e09\u4e2a\u7aef\u53e3\uff0c\u8fd9\u662f\u7528\u6765\u505a Debug\u7528\u7684\u7aef\u53e3\u3002\u8fd8\u6709\u5176\u4ed6\u7684\u4e00\u4e9b\u63a5\u53e3\uff0c\u6bd4\u5982TCM\u63a5\u53e3\u3002\u6211\u4eec\u9700\u8981\u77e5\u9053\u8fd9\u4e9b\u63a5\u53e3\u7684\u5b58\u5728\uff0c\u4f46\u662f\u4e0d\u9700\u8981\u77e5\u9053\u7ec6\u8282\uff0c\u53ea\u6709\u5728\u7528\u5230\u7684\u65f6\u5019\u518d\u53bb\u770b\u76f8\u5173\u7684\u6587\u6863\u5c31\u597d\u4e86\u3002 6\u3001\u4f5c\u4e3a\u7cfb\u7edf\u8bbe\u8ba1\uff0c\u662f\u9700\u8981\u6709\u4e00\u79cd\u7c97\u65f7\u578b\u7684\u5927\u6c14\u9b44\uff0c\u4e0d\u9700\u8981\u5728\u7ec6\u8282\u4e0a\u6d6a\u8d39\u65f6\u95f4\u3002\u4f60\u4f1a\u53d1\u73b0\u5f88\u591a\u7684\u7ec6\u8282\u662f\u6ca1\u6709\u610f\u4e49\u7684\u3002\u5e76\u4e0d\u662f\u8bf4\u6211\u4eec\u4e0d\u9700\u8981\u53bb\u7814\u7a76\u7ec6\u8282\uff0c\u7ec6\u8282\u662f\u5f88\u91cd\u8981\u7684\uff0c\u4f46\u662f\u7ec6\u8282\u9700\u8981\u5728\u88ab\u7528\u5230\u7684\u65f6\u5019\u624d\u53bb\u5173\u6ce8\u5c31\u597d\u4e86\u3002 7\u3001\u5728\u4f7f\u7528IP\u7684\u65f6\u5019\uff0c\u4f1a\u906d\u9047\u5230\u610f\u60f3\u4e0d\u5230\u7684\u75db\u82e6\u7684\u3002\u6240\u4ee5\uff0c\u5c3d\u91cf\u4e0d\u8981\u4f9d\u9760\u5047\u8bbe\u6765\u81c6\u60f3\u4e86\u6a21\u5757\u7684\u8bbe\u7f6e\u3002\u800c\u662f\u5c3d\u91cf\u7684\u9002\u5e94\u73af\u5883\uff0c\u6765\u914d\u7f6e\u81ea\u5df1\u7684\u8bbe\u8ba1\u3002\u4f5c\u4e3a\u4e00\u4e2aFPGA\u7684\u73a9\u5bb6\uff0c\u8fd9\u79cd\u4f9d\u7167\u73af\u5883\u6765\u6539\u53d8\u7684\u80fd\u529b\u662f\u5fc5\u987b\u7684\u3002 [&hellip;]<\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_links_to":"","_links_to_target":""},"categories":[99],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v17.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u6709\u5173FPGA\u8bbe\u8ba1\u7684\u5c0f\u8d34\u58eb - FPGA design tips (\u7b80\u4f53\u4e2d\u6587 followed by English) - Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/\u6709\u5173fpga\u8bbe\u8ba1\u7684\u5c0f\u8d34\u58eb-fpga-design-tips-\u7b80\u4f53\u4e2d\u6587-followed-by-english\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u6709\u5173FPGA\u8bbe\u8ba1\u7684\u5c0f\u8d34\u58eb - FPGA design tips (\u7b80\u4f53\u4e2d\u6587 followed by English) - Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af\" \/>\n<meta property=\"og:description\" content=\"(Reproduced from eefocus.com)Some tips on FPGA design found online, apparently contributed by an experienced designer.Thought it made some good points with respect to general ways to approach the process.\u5f88\u591a\u4eba\u5728\u5b66\u4e60FPGA\u8bbe\u8ba1\uff0c\u8fd9\u91cc\u8f6c\u8f7d\u4e00\u4e2a\u8001\u9e1f\u7684\u535a\u6587\uff0c\u8c08\u8c08FPGA\u8bbe\u8ba1\u768417\u4e2a\u5c0f\u8d34\u58eb\u3002 1\u3001\u72b6\u6001\u673a\u7684\u95ee\u9898\uff0c\u5c3d\u91cf\u4e0d\u8981\u5199\u51fa\u592a\u5927\u7684\u72b6\u6001\u673a\uff0c\u5b81\u613f\u7528\u4e00\u4e9b\u5c0f\u578b\u7684\u72b6\u6001\u673a\u6765\u76f8\u4e92\u5173\u8054\u3002 2\u3001\u63a8\u8350\u5927\u5bb6\u4f7f\u7528timequest\u6765\u505a\u65f6\u5e8f\u7ea6\u675f\uff0c\u597d\u5904\u662f\uff0c\u5b83\u53ef\u80fd\u5bf9\u4f60\u7684\u65f6\u5e8f\u7ea6\u675f\u548c\u4f60\u7684\u8bbe\u8ba1\u5bf9\u7167\u505a\u5206\u6790\uff0c\u5728\u505a\u65f6\u5e8f\u5206\u6790\u4e4b\u524d\uff0c\u5148\u5bf9\u4f60\u7684\u7ea6\u675f\u505a\u5206\u6790\uff0c\u7136\u540e\u544a\u8bc9\u4f60\uff0c\u4f60\u6709\u591a\u5c11\u8be5\u505a\u7684\u4e8b\u60c5\u800c\u6ca1\u6709\u505a\u7684\uff08\u4e3a\u88ab\u7ea6\u675f\u7684\u8def\u5f84\uff09\u8fd8\u6709\u591a\u5c11\u4f60\u8981\u6c42\u505a\u7684\uff0c\u800c\u6ca1\u6709\u88ab\u505a\u7684\uff08\u88ab\u5ffd\u7565\u7684\u65f6\u5e8f\u8981\u6c42\uff09\u3002 3\u3001\u5bf9\u65f6\u949f\u7684\u7ea6\u675f\uff0c\u8981\u91cd\u70b9\u5173\u6ce8\u4e24\u4e2a\u73b0\u8c61\u3002\u9996\u5148\u662f\u5c3d\u91cf\u5c11\u7684\u5728\u65f6\u949f\u8def\u5f84\u4e0a\u5f15\u5165\u903b\u8f91\uff0c\u5426\u5219\u53ef\u80fd\u9020\u6210\u4e86\u65f6\u949f\u548c\u65f6\u949f\u4e4b\u95f4\u7684skew\u3002\u53e6\u5916\u5c31\u662f\u4e00\u79cd\u4e0a\u4e0b\u6cbf\u90fd\u9700\u8981\u7528\u6765\u91c7\u96c6\u6570\u636e\u7684\u65f6\u949f\u3002\u5bf9\u4e8e\u65f6\u949f\u7684\u7ea6\u675f\u6709\u5f88\u591a\u7684\u5730\u65b9\u9700\u8981\u6ce8\u610f\uff0c\u5426\u5219\u4f60\u7684\u7535\u8def\u90fd\u4e0d\u77e5\u9053\u4f1a\u98de\u5230\u54ea\u91cc\u53bb\u3002 4\u3001\u7ea6\u675f\u4e2d\u6700\u91cd\u8981\u7684\u4e00\u4e2a\u5173\u952e\uff0c\u4e0d\u8981\u8fc7\u7ea6\u675f\u3002\u8fc7\u7ea6\u675f\u7684\u574f\u5904\u4e00\u5927\u5806\uff0c\u589e\u52a0\u7f16\u8bd1\u65f6\u95f4\uff0c\u8d44\u6e90\u4f7f\u7528\u8fc7\u5ea6\uff0c\u5bfc\u81f4\u5176\u4ed6\u7684\u65f6\u5e8f\u95ee\u9898\u3002\u5982\u679c\u4f60\u5bf9\u81ea\u5df1\u7684\u7ea6\u675f\u6709\u4e9b\u4e0d\u592a\u653e\u5fc3\uff0c\u53c8\u6216\u8005\u8bf4\u53ef\u80fd\u5668\u4ef6\u548c\u5668\u4ef6\u4e4b\u95f4\u4f1a\u6709\u5f88\u7ec6\u5fae\u7684\u5dee\u522b\uff0c\u4f60\u53ef\u4ee5\u7ed9\u7ea6\u675f\u505a\u4e00\u4e9b\u4f59\u91cf\uff0c\u4f46\u662f\u8fc7\u7ea6\u675f\u662f\u4e07\u4e07\u8981\u4e0d\u5f97\u7684\u3002 5\u3001 IP\u7684\u4f5c\u7528\u5c31\u662f\u4e3a\u4e86\u5b8c\u6210\u4e00\u4e2a\u7279\u5b9a\u7684\u529f\u80fd\uff0c\u6240\u4ee5\u6211\u4eec\u5e76\u4e0d\u9700\u8981\u77e5\u9053\u5b83\u662f\u5982\u4f55\u5b9e\u73b0\u7684\u3002\u4f5c\u4e3a\u4e00\u4e2aIP\uff0c\u6700\u91cd\u8981\u7684\uff0c\u5176\u5b9e\u662f\u63a5\u53e3\uff0c\u56e0\u4e3a\u4f60\u6700\u91cd\u8981\u7684\u662f\u9700\u8981\u77e5\u9053\u662f\u600e\u4e48\u8ba9\u5b83 \u5de5\u4f5c\u8d77\u6765\uff0c\u800c\u4e0d\u662f\u5b83\u600e\u4e48\u5de5\u4f5c\u7684\u3002\u6240\u4ee5\u5728\u770b\u6587\u6863\u7684\u65f6\u5019\uff0c\u6700\u4e3b\u8981\u770b\u7684\u5c31\u662f\u63a5\u53e3\u4fe1\u53f7\uff0c\u5bf9\u6240\u6709\u7684\u4fe1\u53f7\u7684\u4f5c\u7528\u6709\u4e00\u4e2a\u4e86\u89e3\u3002\u4f8b\u5982\uff0cNiosII CPU\u4f5c\u4e3a\u4e00\u4e2a\u6bd4\u8f83\u5927\u578b\u7684\u6a21\u5757\uff0c\u4f7f\u7528\u7684\u662fAvalon MM \u70b9\u5bf9\u70b9\u63a5\u53e3\uff0c\u5b83\u4e0e\u666e\u901a\u7684PCI\u63a5\u53e3\u4e0d\u540c\u7684\u5730\u65b9\u662f\uff0c\u4ed6\u53ef\u4ee5\u652f\u6301\u540c\u65f6\u591a\u7ebf\u63a7\u5236\u3002\u56e0\u4e3a\u5b83\u6ca1\u6709\u603b\u7ebf\u7684\u6982\u5ff5\uff0c\u4e0d\u4f1a\u5728\u603b\u7ebf\u88ab\u5360\u636e\u7684\u65f6\u5019\uff0c\u5176\u4ed6\u4efb\u4f55\u901a\u8baf\u90fd\u65e0\u6cd5\u8fdb\u884c\u3002 NiosII\u662f\u5728SOPC builder \u4e2d\u88ab\u76f4\u63a5\u4f7f\u7528\u7684\uff0c\u6211\u4eec\u4e0d\u9700\u8981\u77e5\u9053\u5177\u4f53\u6709\u54ea\u4e9b\u4fe1\u53f7\uff0c\u56e0\u4e3a\u6ca1\u6709\u975e\u5e38\u9700\u8981\uff0c\u6211\u4eec\u662f\u770b\u4e0d\u5230\u8fd9\u4e9b\u63a5\u53e3\u7684\u3002\u5728NiosII\u4e2d\uff0c\u6211\u4eec\u6709\u4e24\u4e2aMaster Avalon MM \u63a5\u53e3\uff0c\u4e00\u4e2a\u662fInstruction Master Port, \u8fd9\u662fCPU\u7528\u6765\u8bfb\u53d6\u6307\u4ee4\u7684\u63a5\u53e3\u3002CPU\u901a\u8fc7\u8fd9\u4e2a\u7aef\u53e3\u4eceMemory\u4e0a\u8bfb\u53d6\u6307\u4ee4\u3002\u53e6\u4e00\u4e2a\u662fData master port, \u5f88\u7b80\u5355\uff0c\u8fd9\u662f\u7528\u6765\u8fde\u63a5\u6570\u636e\u901a\u9053\u7684\u3002\u6bd4\u5982\u8bf4\u4f60\u8981\u8bfb\u53d6\u7684\u6570\u636e\uff0c\u4f60\u8981\u5b58\u50a8\u7684\u6570\u636e\uff0c\u90fd\u662f\u8d70\u8fd9\u4e2a\u901a\u9053\u3002\u8fd9\u4e24\u4e2a\u7aef\u53e3\u53ef\u4ee5\u8fde\u63a5\u540c\u4e00\u4e2a\u5185\u5b58\uff0c\u5728\u8fd9\u79cd\u65f6\u5019\u9700\u8981\u7279\u522b\u5c0f\u5fc3\uff0c\u5f88\u6709 \u53ef\u80fd\u81ea\u5df1\u628a\u81ea\u5df1\u7684\u6307\u4ee4\u7ed9\u6539\u6389\u4e86\u3002\u4f46\u662f\u53cd\u8fc7\u6765\u601d\u8003\u4e00\u4e0b\uff0c\u5176\u5b9e\u6211\u4eec\u53ef\u4ee5\u505a\u4ec0\u4e48\uff1f\u53ef\u4ee5\u6309\u7167\u72b6\u51b5\u6539\u53d8\u8f6f\u4ef6\u4ee3\u7801\u3002NiosII\u4e2d\u8fd8\u6709\u7b2c\u4e09\u4e2a\u7aef\u53e3\uff0c\u8fd9\u662f\u7528\u6765\u505a Debug\u7528\u7684\u7aef\u53e3\u3002\u8fd8\u6709\u5176\u4ed6\u7684\u4e00\u4e9b\u63a5\u53e3\uff0c\u6bd4\u5982TCM\u63a5\u53e3\u3002\u6211\u4eec\u9700\u8981\u77e5\u9053\u8fd9\u4e9b\u63a5\u53e3\u7684\u5b58\u5728\uff0c\u4f46\u662f\u4e0d\u9700\u8981\u77e5\u9053\u7ec6\u8282\uff0c\u53ea\u6709\u5728\u7528\u5230\u7684\u65f6\u5019\u518d\u53bb\u770b\u76f8\u5173\u7684\u6587\u6863\u5c31\u597d\u4e86\u3002 6\u3001\u4f5c\u4e3a\u7cfb\u7edf\u8bbe\u8ba1\uff0c\u662f\u9700\u8981\u6709\u4e00\u79cd\u7c97\u65f7\u578b\u7684\u5927\u6c14\u9b44\uff0c\u4e0d\u9700\u8981\u5728\u7ec6\u8282\u4e0a\u6d6a\u8d39\u65f6\u95f4\u3002\u4f60\u4f1a\u53d1\u73b0\u5f88\u591a\u7684\u7ec6\u8282\u662f\u6ca1\u6709\u610f\u4e49\u7684\u3002\u5e76\u4e0d\u662f\u8bf4\u6211\u4eec\u4e0d\u9700\u8981\u53bb\u7814\u7a76\u7ec6\u8282\uff0c\u7ec6\u8282\u662f\u5f88\u91cd\u8981\u7684\uff0c\u4f46\u662f\u7ec6\u8282\u9700\u8981\u5728\u88ab\u7528\u5230\u7684\u65f6\u5019\u624d\u53bb\u5173\u6ce8\u5c31\u597d\u4e86\u3002 7\u3001\u5728\u4f7f\u7528IP\u7684\u65f6\u5019\uff0c\u4f1a\u906d\u9047\u5230\u610f\u60f3\u4e0d\u5230\u7684\u75db\u82e6\u7684\u3002\u6240\u4ee5\uff0c\u5c3d\u91cf\u4e0d\u8981\u4f9d\u9760\u5047\u8bbe\u6765\u81c6\u60f3\u4e86\u6a21\u5757\u7684\u8bbe\u7f6e\u3002\u800c\u662f\u5c3d\u91cf\u7684\u9002\u5e94\u73af\u5883\uff0c\u6765\u914d\u7f6e\u81ea\u5df1\u7684\u8bbe\u8ba1\u3002\u4f5c\u4e3a\u4e00\u4e2aFPGA\u7684\u73a9\u5bb6\uff0c\u8fd9\u79cd\u4f9d\u7167\u73af\u5883\u6765\u6539\u53d8\u7684\u80fd\u529b\u662f\u5fc5\u987b\u7684\u3002 [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/\u6709\u5173fpga\u8bbe\u8ba1\u7684\u5c0f\u8d34\u58eb-fpga-design-tips-\u7b80\u4f53\u4e2d\u6587-followed-by-english\/\" \/>\n<meta property=\"og:site_name\" content=\"Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af\" \/>\n<meta property=\"article:published_time\" content=\"2010-09-13T08:35:00+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"plunify\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/support.plunify.com\/jp\/#website\",\"url\":\"https:\/\/support.plunify.com\/jp\/\",\"name\":\"Plunify \\u65e5\\u672c\\u8a9e\\u30d8\\u30eb\\u30d7\\u30c7\\u30b9\\u30af\",\"description\":\"Plunify \\u65e5\\u672c\\u8a9e\\u30b5\\u30dd\\u30fc\\u30c8\\u30b5\\u30a4\\u30c8\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/support.plunify.com\/jp\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/%e6%9c%89%e5%85%b3fpga%e8%ae%be%e8%ae%a1%e7%9a%84%e5%b0%8f%e8%b4%b4%e5%a3%ab-fpga-design-tips-%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87-followed-by-english\/#webpage\",\"url\":\"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/%e6%9c%89%e5%85%b3fpga%e8%ae%be%e8%ae%a1%e7%9a%84%e5%b0%8f%e8%b4%b4%e5%a3%ab-fpga-design-tips-%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87-followed-by-english\/\",\"name\":\"\\u6709\\u5173FPGA\\u8bbe\\u8ba1\\u7684\\u5c0f\\u8d34\\u58eb - FPGA design tips (\\u7b80\\u4f53\\u4e2d\\u6587 followed by English) - Plunify \\u65e5\\u672c\\u8a9e\\u30d8\\u30eb\\u30d7\\u30c7\\u30b9\\u30af\",\"isPartOf\":{\"@id\":\"https:\/\/support.plunify.com\/jp\/#website\"},\"datePublished\":\"2010-09-13T08:35:00+00:00\",\"dateModified\":\"2010-09-13T08:35:00+00:00\",\"author\":{\"@id\":\"https:\/\/support.plunify.com\/jp\/#\/schema\/person\/0702317d75b841ce991ca9936b72f8b0\"},\"breadcrumb\":{\"@id\":\"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/%e6%9c%89%e5%85%b3fpga%e8%ae%be%e8%ae%a1%e7%9a%84%e5%b0%8f%e8%b4%b4%e5%a3%ab-fpga-design-tips-%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87-followed-by-english\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/%e6%9c%89%e5%85%b3fpga%e8%ae%be%e8%ae%a1%e7%9a%84%e5%b0%8f%e8%b4%b4%e5%a3%ab-fpga-design-tips-%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87-followed-by-english\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/%e6%9c%89%e5%85%b3fpga%e8%ae%be%e8%ae%a1%e7%9a%84%e5%b0%8f%e8%b4%b4%e5%a3%ab-fpga-design-tips-%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87-followed-by-english\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/support.plunify.com\/jp\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\\u6709\\u5173FPGA\\u8bbe\\u8ba1\\u7684\\u5c0f\\u8d34\\u58eb &#8211; FPGA design tips (\\u7b80\\u4f53\\u4e2d\\u6587 followed by English)\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/support.plunify.com\/jp\/#\/schema\/person\/0702317d75b841ce991ca9936b72f8b0\",\"name\":\"plunify\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/support.plunify.com\/jp\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/79e7edc12624b682db2df4112ff7210b?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/79e7edc12624b682db2df4112ff7210b?s=96&d=mm&r=g\",\"caption\":\"plunify\"},\"url\":\"https:\/\/support.plunify.com\/jp\/author\/plunify\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u6709\u5173FPGA\u8bbe\u8ba1\u7684\u5c0f\u8d34\u58eb - FPGA design tips (\u7b80\u4f53\u4e2d\u6587 followed by English) - Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/\u6709\u5173fpga\u8bbe\u8ba1\u7684\u5c0f\u8d34\u58eb-fpga-design-tips-\u7b80\u4f53\u4e2d\u6587-followed-by-english\/","og_locale":"en_US","og_type":"article","og_title":"\u6709\u5173FPGA\u8bbe\u8ba1\u7684\u5c0f\u8d34\u58eb - FPGA design tips (\u7b80\u4f53\u4e2d\u6587 followed by English) - Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af","og_description":"(Reproduced from eefocus.com)Some tips on FPGA design found online, apparently contributed by an experienced designer.Thought it made some good points with respect to general ways to approach the process.\u5f88\u591a\u4eba\u5728\u5b66\u4e60FPGA\u8bbe\u8ba1\uff0c\u8fd9\u91cc\u8f6c\u8f7d\u4e00\u4e2a\u8001\u9e1f\u7684\u535a\u6587\uff0c\u8c08\u8c08FPGA\u8bbe\u8ba1\u768417\u4e2a\u5c0f\u8d34\u58eb\u3002 1\u3001\u72b6\u6001\u673a\u7684\u95ee\u9898\uff0c\u5c3d\u91cf\u4e0d\u8981\u5199\u51fa\u592a\u5927\u7684\u72b6\u6001\u673a\uff0c\u5b81\u613f\u7528\u4e00\u4e9b\u5c0f\u578b\u7684\u72b6\u6001\u673a\u6765\u76f8\u4e92\u5173\u8054\u3002 2\u3001\u63a8\u8350\u5927\u5bb6\u4f7f\u7528timequest\u6765\u505a\u65f6\u5e8f\u7ea6\u675f\uff0c\u597d\u5904\u662f\uff0c\u5b83\u53ef\u80fd\u5bf9\u4f60\u7684\u65f6\u5e8f\u7ea6\u675f\u548c\u4f60\u7684\u8bbe\u8ba1\u5bf9\u7167\u505a\u5206\u6790\uff0c\u5728\u505a\u65f6\u5e8f\u5206\u6790\u4e4b\u524d\uff0c\u5148\u5bf9\u4f60\u7684\u7ea6\u675f\u505a\u5206\u6790\uff0c\u7136\u540e\u544a\u8bc9\u4f60\uff0c\u4f60\u6709\u591a\u5c11\u8be5\u505a\u7684\u4e8b\u60c5\u800c\u6ca1\u6709\u505a\u7684\uff08\u4e3a\u88ab\u7ea6\u675f\u7684\u8def\u5f84\uff09\u8fd8\u6709\u591a\u5c11\u4f60\u8981\u6c42\u505a\u7684\uff0c\u800c\u6ca1\u6709\u88ab\u505a\u7684\uff08\u88ab\u5ffd\u7565\u7684\u65f6\u5e8f\u8981\u6c42\uff09\u3002 3\u3001\u5bf9\u65f6\u949f\u7684\u7ea6\u675f\uff0c\u8981\u91cd\u70b9\u5173\u6ce8\u4e24\u4e2a\u73b0\u8c61\u3002\u9996\u5148\u662f\u5c3d\u91cf\u5c11\u7684\u5728\u65f6\u949f\u8def\u5f84\u4e0a\u5f15\u5165\u903b\u8f91\uff0c\u5426\u5219\u53ef\u80fd\u9020\u6210\u4e86\u65f6\u949f\u548c\u65f6\u949f\u4e4b\u95f4\u7684skew\u3002\u53e6\u5916\u5c31\u662f\u4e00\u79cd\u4e0a\u4e0b\u6cbf\u90fd\u9700\u8981\u7528\u6765\u91c7\u96c6\u6570\u636e\u7684\u65f6\u949f\u3002\u5bf9\u4e8e\u65f6\u949f\u7684\u7ea6\u675f\u6709\u5f88\u591a\u7684\u5730\u65b9\u9700\u8981\u6ce8\u610f\uff0c\u5426\u5219\u4f60\u7684\u7535\u8def\u90fd\u4e0d\u77e5\u9053\u4f1a\u98de\u5230\u54ea\u91cc\u53bb\u3002 4\u3001\u7ea6\u675f\u4e2d\u6700\u91cd\u8981\u7684\u4e00\u4e2a\u5173\u952e\uff0c\u4e0d\u8981\u8fc7\u7ea6\u675f\u3002\u8fc7\u7ea6\u675f\u7684\u574f\u5904\u4e00\u5927\u5806\uff0c\u589e\u52a0\u7f16\u8bd1\u65f6\u95f4\uff0c\u8d44\u6e90\u4f7f\u7528\u8fc7\u5ea6\uff0c\u5bfc\u81f4\u5176\u4ed6\u7684\u65f6\u5e8f\u95ee\u9898\u3002\u5982\u679c\u4f60\u5bf9\u81ea\u5df1\u7684\u7ea6\u675f\u6709\u4e9b\u4e0d\u592a\u653e\u5fc3\uff0c\u53c8\u6216\u8005\u8bf4\u53ef\u80fd\u5668\u4ef6\u548c\u5668\u4ef6\u4e4b\u95f4\u4f1a\u6709\u5f88\u7ec6\u5fae\u7684\u5dee\u522b\uff0c\u4f60\u53ef\u4ee5\u7ed9\u7ea6\u675f\u505a\u4e00\u4e9b\u4f59\u91cf\uff0c\u4f46\u662f\u8fc7\u7ea6\u675f\u662f\u4e07\u4e07\u8981\u4e0d\u5f97\u7684\u3002 5\u3001 IP\u7684\u4f5c\u7528\u5c31\u662f\u4e3a\u4e86\u5b8c\u6210\u4e00\u4e2a\u7279\u5b9a\u7684\u529f\u80fd\uff0c\u6240\u4ee5\u6211\u4eec\u5e76\u4e0d\u9700\u8981\u77e5\u9053\u5b83\u662f\u5982\u4f55\u5b9e\u73b0\u7684\u3002\u4f5c\u4e3a\u4e00\u4e2aIP\uff0c\u6700\u91cd\u8981\u7684\uff0c\u5176\u5b9e\u662f\u63a5\u53e3\uff0c\u56e0\u4e3a\u4f60\u6700\u91cd\u8981\u7684\u662f\u9700\u8981\u77e5\u9053\u662f\u600e\u4e48\u8ba9\u5b83 \u5de5\u4f5c\u8d77\u6765\uff0c\u800c\u4e0d\u662f\u5b83\u600e\u4e48\u5de5\u4f5c\u7684\u3002\u6240\u4ee5\u5728\u770b\u6587\u6863\u7684\u65f6\u5019\uff0c\u6700\u4e3b\u8981\u770b\u7684\u5c31\u662f\u63a5\u53e3\u4fe1\u53f7\uff0c\u5bf9\u6240\u6709\u7684\u4fe1\u53f7\u7684\u4f5c\u7528\u6709\u4e00\u4e2a\u4e86\u89e3\u3002\u4f8b\u5982\uff0cNiosII CPU\u4f5c\u4e3a\u4e00\u4e2a\u6bd4\u8f83\u5927\u578b\u7684\u6a21\u5757\uff0c\u4f7f\u7528\u7684\u662fAvalon MM \u70b9\u5bf9\u70b9\u63a5\u53e3\uff0c\u5b83\u4e0e\u666e\u901a\u7684PCI\u63a5\u53e3\u4e0d\u540c\u7684\u5730\u65b9\u662f\uff0c\u4ed6\u53ef\u4ee5\u652f\u6301\u540c\u65f6\u591a\u7ebf\u63a7\u5236\u3002\u56e0\u4e3a\u5b83\u6ca1\u6709\u603b\u7ebf\u7684\u6982\u5ff5\uff0c\u4e0d\u4f1a\u5728\u603b\u7ebf\u88ab\u5360\u636e\u7684\u65f6\u5019\uff0c\u5176\u4ed6\u4efb\u4f55\u901a\u8baf\u90fd\u65e0\u6cd5\u8fdb\u884c\u3002 NiosII\u662f\u5728SOPC builder \u4e2d\u88ab\u76f4\u63a5\u4f7f\u7528\u7684\uff0c\u6211\u4eec\u4e0d\u9700\u8981\u77e5\u9053\u5177\u4f53\u6709\u54ea\u4e9b\u4fe1\u53f7\uff0c\u56e0\u4e3a\u6ca1\u6709\u975e\u5e38\u9700\u8981\uff0c\u6211\u4eec\u662f\u770b\u4e0d\u5230\u8fd9\u4e9b\u63a5\u53e3\u7684\u3002\u5728NiosII\u4e2d\uff0c\u6211\u4eec\u6709\u4e24\u4e2aMaster Avalon MM \u63a5\u53e3\uff0c\u4e00\u4e2a\u662fInstruction Master Port, \u8fd9\u662fCPU\u7528\u6765\u8bfb\u53d6\u6307\u4ee4\u7684\u63a5\u53e3\u3002CPU\u901a\u8fc7\u8fd9\u4e2a\u7aef\u53e3\u4eceMemory\u4e0a\u8bfb\u53d6\u6307\u4ee4\u3002\u53e6\u4e00\u4e2a\u662fData master port, \u5f88\u7b80\u5355\uff0c\u8fd9\u662f\u7528\u6765\u8fde\u63a5\u6570\u636e\u901a\u9053\u7684\u3002\u6bd4\u5982\u8bf4\u4f60\u8981\u8bfb\u53d6\u7684\u6570\u636e\uff0c\u4f60\u8981\u5b58\u50a8\u7684\u6570\u636e\uff0c\u90fd\u662f\u8d70\u8fd9\u4e2a\u901a\u9053\u3002\u8fd9\u4e24\u4e2a\u7aef\u53e3\u53ef\u4ee5\u8fde\u63a5\u540c\u4e00\u4e2a\u5185\u5b58\uff0c\u5728\u8fd9\u79cd\u65f6\u5019\u9700\u8981\u7279\u522b\u5c0f\u5fc3\uff0c\u5f88\u6709 \u53ef\u80fd\u81ea\u5df1\u628a\u81ea\u5df1\u7684\u6307\u4ee4\u7ed9\u6539\u6389\u4e86\u3002\u4f46\u662f\u53cd\u8fc7\u6765\u601d\u8003\u4e00\u4e0b\uff0c\u5176\u5b9e\u6211\u4eec\u53ef\u4ee5\u505a\u4ec0\u4e48\uff1f\u53ef\u4ee5\u6309\u7167\u72b6\u51b5\u6539\u53d8\u8f6f\u4ef6\u4ee3\u7801\u3002NiosII\u4e2d\u8fd8\u6709\u7b2c\u4e09\u4e2a\u7aef\u53e3\uff0c\u8fd9\u662f\u7528\u6765\u505a Debug\u7528\u7684\u7aef\u53e3\u3002\u8fd8\u6709\u5176\u4ed6\u7684\u4e00\u4e9b\u63a5\u53e3\uff0c\u6bd4\u5982TCM\u63a5\u53e3\u3002\u6211\u4eec\u9700\u8981\u77e5\u9053\u8fd9\u4e9b\u63a5\u53e3\u7684\u5b58\u5728\uff0c\u4f46\u662f\u4e0d\u9700\u8981\u77e5\u9053\u7ec6\u8282\uff0c\u53ea\u6709\u5728\u7528\u5230\u7684\u65f6\u5019\u518d\u53bb\u770b\u76f8\u5173\u7684\u6587\u6863\u5c31\u597d\u4e86\u3002 6\u3001\u4f5c\u4e3a\u7cfb\u7edf\u8bbe\u8ba1\uff0c\u662f\u9700\u8981\u6709\u4e00\u79cd\u7c97\u65f7\u578b\u7684\u5927\u6c14\u9b44\uff0c\u4e0d\u9700\u8981\u5728\u7ec6\u8282\u4e0a\u6d6a\u8d39\u65f6\u95f4\u3002\u4f60\u4f1a\u53d1\u73b0\u5f88\u591a\u7684\u7ec6\u8282\u662f\u6ca1\u6709\u610f\u4e49\u7684\u3002\u5e76\u4e0d\u662f\u8bf4\u6211\u4eec\u4e0d\u9700\u8981\u53bb\u7814\u7a76\u7ec6\u8282\uff0c\u7ec6\u8282\u662f\u5f88\u91cd\u8981\u7684\uff0c\u4f46\u662f\u7ec6\u8282\u9700\u8981\u5728\u88ab\u7528\u5230\u7684\u65f6\u5019\u624d\u53bb\u5173\u6ce8\u5c31\u597d\u4e86\u3002 7\u3001\u5728\u4f7f\u7528IP\u7684\u65f6\u5019\uff0c\u4f1a\u906d\u9047\u5230\u610f\u60f3\u4e0d\u5230\u7684\u75db\u82e6\u7684\u3002\u6240\u4ee5\uff0c\u5c3d\u91cf\u4e0d\u8981\u4f9d\u9760\u5047\u8bbe\u6765\u81c6\u60f3\u4e86\u6a21\u5757\u7684\u8bbe\u7f6e\u3002\u800c\u662f\u5c3d\u91cf\u7684\u9002\u5e94\u73af\u5883\uff0c\u6765\u914d\u7f6e\u81ea\u5df1\u7684\u8bbe\u8ba1\u3002\u4f5c\u4e3a\u4e00\u4e2aFPGA\u7684\u73a9\u5bb6\uff0c\u8fd9\u79cd\u4f9d\u7167\u73af\u5883\u6765\u6539\u53d8\u7684\u80fd\u529b\u662f\u5fc5\u987b\u7684\u3002 [&hellip;]","og_url":"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/\u6709\u5173fpga\u8bbe\u8ba1\u7684\u5c0f\u8d34\u58eb-fpga-design-tips-\u7b80\u4f53\u4e2d\u6587-followed-by-english\/","og_site_name":"Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af","article_published_time":"2010-09-13T08:35:00+00:00","twitter_card":"summary_large_image","twitter_misc":{"Written by":"plunify","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/support.plunify.com\/jp\/#website","url":"https:\/\/support.plunify.com\/jp\/","name":"Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af","description":"Plunify \u65e5\u672c\u8a9e\u30b5\u30dd\u30fc\u30c8\u30b5\u30a4\u30c8","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/support.plunify.com\/jp\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/%e6%9c%89%e5%85%b3fpga%e8%ae%be%e8%ae%a1%e7%9a%84%e5%b0%8f%e8%b4%b4%e5%a3%ab-fpga-design-tips-%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87-followed-by-english\/#webpage","url":"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/%e6%9c%89%e5%85%b3fpga%e8%ae%be%e8%ae%a1%e7%9a%84%e5%b0%8f%e8%b4%b4%e5%a3%ab-fpga-design-tips-%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87-followed-by-english\/","name":"\u6709\u5173FPGA\u8bbe\u8ba1\u7684\u5c0f\u8d34\u58eb - FPGA design tips (\u7b80\u4f53\u4e2d\u6587 followed by English) - Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af","isPartOf":{"@id":"https:\/\/support.plunify.com\/jp\/#website"},"datePublished":"2010-09-13T08:35:00+00:00","dateModified":"2010-09-13T08:35:00+00:00","author":{"@id":"https:\/\/support.plunify.com\/jp\/#\/schema\/person\/0702317d75b841ce991ca9936b72f8b0"},"breadcrumb":{"@id":"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/%e6%9c%89%e5%85%b3fpga%e8%ae%be%e8%ae%a1%e7%9a%84%e5%b0%8f%e8%b4%b4%e5%a3%ab-fpga-design-tips-%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87-followed-by-english\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/support.plunify.com\/jp\/2010\/09\/13\/%e6%9c%89%e5%85%b3fpga%e8%ae%be%e8%ae%a1%e7%9a%84%e5%b0%8f%e8%b4%b4%e5%a3%ab-fpga-design-tips-%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87-followed-by-english\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/support.plunify.com\/jp\/2010\/09\/13\/%e6%9c%89%e5%85%b3fpga%e8%ae%be%e8%ae%a1%e7%9a%84%e5%b0%8f%e8%b4%b4%e5%a3%ab-fpga-design-tips-%e7%ae%80%e4%bd%93%e4%b8%ad%e6%96%87-followed-by-english\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/support.plunify.com\/jp\/"},{"@type":"ListItem","position":2,"name":"\u6709\u5173FPGA\u8bbe\u8ba1\u7684\u5c0f\u8d34\u58eb &#8211; FPGA design tips (\u7b80\u4f53\u4e2d\u6587 followed by English)"}]},{"@type":"Person","@id":"https:\/\/support.plunify.com\/jp\/#\/schema\/person\/0702317d75b841ce991ca9936b72f8b0","name":"plunify","image":{"@type":"ImageObject","@id":"https:\/\/support.plunify.com\/jp\/#personlogo","inLanguage":"en-US","url":"https:\/\/secure.gravatar.com\/avatar\/79e7edc12624b682db2df4112ff7210b?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/79e7edc12624b682db2df4112ff7210b?s=96&d=mm&r=g","caption":"plunify"},"url":"https:\/\/support.plunify.com\/jp\/author\/plunify\/"}]}},"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/posts\/1611"}],"collection":[{"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/comments?post=1611"}],"version-history":[{"count":0,"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/posts\/1611\/revisions"}],"wp:attachment":[{"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/media?parent=1611"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/categories?post=1611"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/tags?post=1611"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}