<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet href='http://feed.feedsky.com/styles/temp01.xsl' type='text/xsl' ?><!--这是一个由Feedsy提供技术支持的Feed，为了提高读者阅读的体验，以及满足用户美化自己Feed的需要，我们设计了多种精美的Feed模板，提供给大家选择，所有最终呈现出来的样式，皆由用户自愿选择使用，未经许可，任何团体和个人，请不要擅自修改样式或者盗用，这是对于用户选择权的尊重。--><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:fs="http://www.feedsky.com/namespace/feed" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link href="http://feed.feedsky.com/fpganotes" type="application/rss+xml" rel="self"></atom:link><fs:self_link href="http://feed.feedsky.com/fpganotes" type="application/rss+xml"></fs:self_link><lastBuildDate>Thu, 17 Sep 2009 09:36:01 GMT</lastBuildDate><title>RickySu.FPGA Notes</title><description>Learning notes about Xilinx FPGA, ISE, EDK, Embedded System and IC industry</description><link>http://www.fpganotes.com/index.php</link><language>zh-cn</language><copyright>FPGA Notes</copyright><item><title>怎样比较两个NCD的内容是否一样？</title><link>http://www.fpganotes.com/ncd_compare/</link><description>&lt;a href=&quot;http://pic.fpganotes.com/images/ricky/orangeapple.jpg&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://pic.fpganotes.com/images/ricky/orangeapple.jpg&quot; class=&quot;insertimage&quot; alt=&quot;点击在新窗口中浏览此图片&quot; title=&quot;点击在新窗口中浏览此图片&quot; border=&quot;0&quot;/&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;有时我们想检验同样条件下生成的NCD文件是否一致。这时，仅通过比较文件大小当然是信不过的。如果是用MD5工具做检验，会发现两个NCD文件总是不同，这时为什么呢？&lt;br/&gt;&lt;br/&gt;首先，NCD是二进制文件，而且他内部还包含生成文件的时间戳，因此直接比较的话，肯定是有部分不完全相同的。&lt;br/&gt;&lt;br/&gt;那么怎么比较两个NCD文件的真正内容是否相同呢？&lt;br/&gt;&lt;br/&gt;我们可以用ISE自带的XDL工具。&lt;br/&gt;&lt;div class=&quot;code&quot;&gt;xdl -ncd2xdl xx.ncd&lt;/div&gt;&lt;br/&gt;XDL以文本的方式将NCD文件的内容表示出来。我们再比较两个导出的XDL文件就可以比较两个NCD文件有什么区别了。&lt;br/&gt;Tags - &lt;a href=&quot;http://www.fpganotes.com/tags/ise_utilities/&quot; rel=&quot;tag&quot;&gt;ise utilities&lt;/a&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/316888029/fpganotes/feedsky/s.gif?r=http://www.fpganotes.com/ncd_compare/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/fpganotes/316888029/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/fpganotes/316888029/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>技术经验</category><pubDate>Thu, 17 Sep 2009 17:36:01 +0800</pubDate><author>RickySu &lt;sutongqi+blog@gmail.com&gt;</author><guid isPermaLink="false">http://www.fpganotes.com/ncd_compare/</guid><dc:creator>RickySu &lt;sutongqi+blog@gmail.com&gt;</dc:creator><fs:srclink>http://www.fpganotes.com/ncd_compare/</fs:srclink><fs:srcfeed>http://www.fpganotes.com/feed.php</fs:srcfeed><fs:itemid>feedsky/fpganotes/~7485502/316888029/5429098</fs:itemid></item><item><title>手动布局之RPM RLOC DIRT 和 Hard Macro</title><link>http://www.fpganotes.com/rpm_rloc_dirt_hardmacro/</link><description>&lt;a href=&quot;http://pic.fpganotes.com/images/ricky/point.jpg&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://pic.fpganotes.com/images/ricky/point.jpg&quot; class=&quot;insertimage&quot; alt=&quot;点击在新窗口中浏览此图片&quot; title=&quot;点击在新窗口中浏览此图片&quot; border=&quot;0&quot;/&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;本文试着讨论手工布局的原因、方法、工具和差异。欢迎拍砖和讨论。&lt;br/&gt;&lt;br/&gt;Q1. 为啥要手工布局？&lt;br/&gt;A1. 首先人比机器更聪明，更了解自己设计的需求和结构。其次在关键路径上的手工布局能提高时序性能，使不满足要求变成满足要求。更多原因和性能的比较分析，可以参见一篇叫做&lt;&lt;a href=&quot;http://www.google.com/search?q=death+of+the+rloc&quot; target=&quot;_blank&quot;&gt;Death of the RLOC?&lt;/a&gt;&gt;的文章。IEEE上有，版权所限，我就不贴了。&lt;br/&gt;&lt;br/&gt;Q2. 有没有可能整个设计都用手工布局？&lt;br/&gt;A2. 从原理上来说是没有不可能的，但这是没有必要的。我们只要保证最关键的路径能满足时序要求即可。&lt;br/&gt;&lt;br/&gt;Q3. 手工布局牵涉哪些技术？&lt;br/&gt;A3. RPM - Relatively Placed Macros （其实就是使用RLOC约束限制布局的相对关系）&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DIRT - Directed Routing （不仅限制位置，还限制走线）&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HardMacro - 硬核，记录所有信息&lt;br/&gt;&lt;br/&gt;Q4. Hard Macro 和 RPM + DIRT 的功能有什么区别吗？&lt;br/&gt;A4. RPM位置基于Slice，Slice-based RPM可以在Slice所有范围内任意布局，不以CLB的位置作为分界。Grid-based RPM只是加入了BRAM乘法器之类的支持，原则上也跟CLB边界无关。而Hard Macro只有在完全相同的结构内在可以移动，所以他的边界至少是CLB，某些时候还需要考虑BRAM和乘法器的位置。&lt;br/&gt;&lt;br/&gt;Q5. 什么是Slice-based RPM 和 Grid-based RPM？&lt;br/&gt;A5. Slice-based 方法为整个器件内的slice设定坐标。看上去两个相邻的坐标位置实际上可能中间隔着一个BRAM。Grid-based则将整个器件统一编址，坐标系统看上去可能在某些地方会有缺少，但是不会造成上面提到的那种现象。&lt;br/&gt;&lt;br/&gt;Q6. 什么时候用Slice-based RPM，什么时候又用Grid-based RPM呢？&lt;br/&gt;A6. 如果RPM中包含既有Slice又有乘法器、DSP48、BRAM等器件的时候，就用Grid。如果RPM中只含有Slice，那么两种都可以使用，但是用Slice-based更简单一点，因为他的X和Y坐标都是逐个增加的。&lt;br/&gt;&lt;br/&gt;Q7. 有什么工具可以用来做RPM？&lt;br/&gt;A7. FloorPlanner和PlanAhead都可以生成包含RPM的UCF。我们也可以自己将一些约束添加到VHDL/Verilog中去。RPM规模较小时，后者更方便。用FPGA Editor生成DIRT约束时，也会同时产生相关路径RPM的约束。&lt;br/&gt;&lt;br/&gt;Q8. 通常RPM都是多大规模？&lt;br/&gt;A8. 通常RPM只是规定关键路径的位置，因此不会很大。比如3-5个寄存器之间的位置关系、BRAM和输出数据的第一级寄存器的位置关系等等，这些都不涉及到很多的元件。当然FloorPlanner可以把整个已布局的设计都导出成RPM，但个人以为没多大用处。&lt;br/&gt;&lt;br/&gt;Q9. 用FloorPlanner建RPM的流程是什么？&lt;br/&gt;A9. 参见Xapp422&lt;br/&gt;&lt;br/&gt;Q10. 用PlanAhead建RPM的流程是什么？&lt;br/&gt;A10. 导出Pblock就行。详细文档可以查阅PlanAhead User Guide。&lt;br/&gt;&lt;br/&gt;Q11. 手动写RPM的约束会很难吗？&lt;br/&gt;A11. 其实更简单更方便。一个例子：&lt;br/&gt;&lt;div class=&quot;code&quot;&gt;(* RLOC = &amp;quot;X1Y2&amp;quot; *)&lt;br/&gt;reg e_reg;&lt;/div&gt;&lt;br/&gt;&lt;br/&gt;另一个例子：&lt;br/&gt;&lt;div class=&quot;code&quot;&gt;(* RLOC = &amp;quot;X0Y1&amp;quot; *)&lt;br/&gt;FDCPE #(&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.INIT(1&amp;#039;b0) // Initial value of register (1&amp;#039;b0 or 1&amp;#039;b1)&lt;br/&gt;&amp;nbsp;&amp;nbsp; ) FDCPE_a (&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Q(a_reg),&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Data output&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.C(clk),&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Clock input&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.CE(1&amp;#039;b1),&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Clock enable input&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.CLR(reset),&amp;nbsp;&amp;nbsp;// Asynchronous clear input&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.D(a),&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Data input&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.PRE(1&amp;#039;b0)&amp;nbsp;&amp;nbsp; // Asynchronous set input&lt;br/&gt;&amp;nbsp;&amp;nbsp; );&lt;/div&gt;&lt;br/&gt;&lt;br/&gt;Q12. RPM的语法是什么？&lt;br/&gt;A12. 最基本的就是RLOC约束的用法。参考Constraint Guide.&lt;br/&gt;&lt;br/&gt;Q13. RPM有没有什么辅助约束？&lt;br/&gt;A13. RLOC_ORIGIN和RLOC_RANGE可以规定把某个RPM放在设计中的某个位置。 RPM可以建组（H_SET, U_SET, HU_SET）。几个寄存器放在一个Slice里的时候，可以用BEL规定某个寄存器的位置，甚至还可以用LOCK_PINS约束规定某个寄存器IO的位置。这些约束的定义都在Constraint Guide中。&lt;br/&gt;&lt;br/&gt;Q14. 怎么做DIRT呢？&lt;br/&gt;A14. 打开FPGA Editor，打开布局布线好的ncd文件，选择Tools --&gt; Directed Routing Constraints...， 选中关心的网线，生成UCF或将约束显示在FPGA Editor Console中，然后复制到HDL代码或UCF中。更详细的流程参考Constraint Guide --&gt;DIRT.&lt;br/&gt;&lt;br/&gt;Q15. 怎么做Hard Macro呢？&lt;br/&gt;A15. 还是用FPGA Editor。将NCD存成NMC， 删除不关心的逻辑，包括所有IO。与外部逻辑交互的端口通过Edit --&gt; Add Hardmacro External Pin 添加Hard Macro Pin. 更详细的流程参考&lt;a href=&quot;http://www.xilinx.com/support/answers/10901.htm&quot; target=&quot;_blank&quot;&gt;AR10901&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;Q16. 怎么用Hard Macro呢？&lt;br/&gt;A16. 在设计源代码中要使用Hard Macro的地方，就用一个Black Box就可以了。NMC文件放在工程目录下。&lt;br/&gt;&lt;br/&gt;OK. 我在学习中碰到的问题基本都讲到了。还有问题大家就留言讨论吧。&lt;br/&gt;&lt;br/&gt;【参考文档】&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/support/documentation/application_notes/xapp416.pdf&quot; target=&quot;_blank&quot;&gt;Xapp416&lt;/a&gt; - Using an RPM Grid Macro to Control Block RAM to FF Timing&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/support/documentation/application_notes/xapp422.pdf&quot; target=&quot;_blank&quot;&gt;Xapp422&lt;/a&gt; - Creating RPM using 6.2i Floorplanner&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/support/documentation/white_papers/wp329.pdf&quot; target=&quot;_blank&quot;&gt;WP329&lt;/a&gt; - Relationally Placed Macros&lt;br/&gt;Death of the RLOC? - IEEE doc&lt;br/&gt;Constraint Guide - RLOC, DIRT, etc.&lt;br/&gt;&lt;br/&gt;Tags - &lt;a href=&quot;http://www.fpganotes.com/tags/rpm/&quot; rel=&quot;tag&quot;&gt;rpm&lt;/a&gt; , &lt;a href=&quot;http://www.fpganotes.com/tags/dirt/&quot; rel=&quot;tag&quot;&gt;dirt&lt;/a&gt; , &lt;a href=&quot;http://www.fpganotes.com/tags/implementation/&quot; rel=&quot;tag&quot;&gt;implementation&lt;/a&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/316888039/fpganotes/feedsky/s.gif?r=http://www.fpganotes.com/rpm_rloc_dirt_hardmacro/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/fpganotes/316888039/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/fpganotes/316888039/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>技术经验</category><pubDate>Fri, 11 Sep 2009 18:01:49 +0800</pubDate><author>RickySu &lt;sutongqi+blog@gmail.com&gt;</author><guid isPermaLink="false">http://www.fpganotes.com/rpm_rloc_dirt_hardmacro/</guid><dc:creator>RickySu &lt;sutongqi+blog@gmail.com&gt;</dc:creator><fs:srclink>http://www.fpganotes.com/rpm_rloc_dirt_hardmacro/</fs:srclink><fs:srcfeed>http://www.fpganotes.com/feed.php</fs:srcfeed><fs:itemid>feedsky/fpganotes/~7485502/316888039/5429098</fs:itemid></item><item><title>Xilinx网站资源导读 - 新手起步 高手进阶 老少咸宜 ISE11版</title><link>http://www.fpganotes.com/Xilinx_Web_Guide/</link><description>&lt;span style=&quot;color: #FF0000;&quot;&gt;序&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;虽然自己也曾想过，但如果不是向农要求，把曾经写过的文章编排整理，我是静不下心来好好做这件事的。温故而知新，可以为师已。与大家共勉。&lt;br/&gt;&lt;br/&gt;俗话说，好的开始是成功的一半。在这个信息爆炸的时代，好的资料就是成功学习的一半。&lt;br/&gt;时常看到有人在论坛上跪求资料，也有人在论坛上灌水换积分排队下资料。如果这篇文章能帮助大家&lt;strong&gt;花更少的时间找到更有价值的资料&lt;/strong&gt;，那么我花时间维护这篇文章也就值了。&lt;br/&gt;&lt;br/&gt;---------版权声明-----------&lt;br/&gt;本文作者 Ricky Su&lt;br/&gt;&lt;a href=&quot;http://www.fpganotes.com&quot; target=&quot;_blank&quot;&gt;www.fpganotes.com&lt;/a&gt;&lt;br/&gt;rickysu.fpga@gmail.com&lt;br/&gt;&lt;br/&gt;欢迎转载，转载请保持原样及署名&lt;br/&gt;商业使用须得到本人授权&lt;br/&gt;---------版权声明-----------&lt;br/&gt;&lt;br/&gt;好，废话不多说，我们言归正传。写这篇文章主要想&lt;strong&gt;介绍Xilinx各种资料的找法、分类方法和什么问题该看哪些资料&lt;/strong&gt;。限于经验，难免有错漏，希望大家指出错误并继续补充。&lt;br/&gt;&lt;br/&gt;Topics:&lt;br/&gt;1. Xilinx软件介绍&lt;br/&gt;2. 软件版本和软件更新&lt;br/&gt;3. 软件教程哪里找&lt;br/&gt;4. 硬件资料&lt;br/&gt;5. 参考设计&lt;br/&gt;6. 问题解决&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;---------版权声明-----------&lt;br/&gt;本文作者 Ricky Su&lt;br/&gt;&lt;a href=&quot;http://www.fpganotes.com&quot; target=&quot;_blank&quot;&gt;www.fpganotes.com&lt;/a&gt;&lt;br/&gt;rickysu.fpga@gmail.com&lt;br/&gt;&lt;br/&gt;欢迎转载，转载请保持原样及署名&lt;br/&gt;商业使用须得到本人授权&lt;br/&gt;---------版权声明-----------&lt;br/&gt;&lt;br/&gt;&lt;span style=&quot;color: #FF0000;&quot;&gt;1. Xilinx软件介绍&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;用Xilinx的软件做FPGA开发，主要涉及到得软件是Xilinx自家的ISE, EDK, ChipScope Pro, System Generator, PlanAhead 和第三方的ModelSim和Synplify。&lt;br/&gt;&lt;br/&gt;ISE是主要的逻辑设计软件，其他软件的具体实现功能都依附于ISE。ISE有Foundation版和WebPack版。WebPack版免费，Foundation版收费。两者的区别是支持的器件不同。功能是相同的。&lt;br/&gt;&lt;br/&gt;WebPack版支持的功能可以看这里：&lt;a href=&quot;http://www.xilinx.com/ise/products/webpack_config.htm&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/ise/products/webpack_config.htm&lt;/a&gt;。&lt;br/&gt;Foundation当然支持所有功能，功能列表可以在这里找到：&lt;a href=&quot;http://www.xilinx.com/ise/logic_design_prod/foundation.htm&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/ise/logic_design_prod/foundation.htm&lt;/a&gt;。&lt;br/&gt;说这些的目的是，如果开发所使用的器件是WebPack版支持的，那么就从网上下载免费版就好了，不用费劲心机地找Fondation版却用不到他支持的功能。&lt;br/&gt;&lt;br/&gt;ChipScope Pro 是片内的逻辑分析仪。可以让用户方便地抓取片内信号进行debug。ChipScope支持的Trig方式非常多样，用熟悉了以后几乎是想要观察什么内部信号都可以观察到，即使他有BRAM深度的限制。&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/chipscope&quot; target=&quot;_blank&quot;&gt;www.xilinx.com/chipscope&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;PlanAhead工具自从ISE7时代被开发出来并发展了这么多年之后，已经成为了提高设计效率和提高产品性能的有力工具。&lt;br/&gt;它可以帮我们在布局布线之前做好管脚定位和DRC检查、规划区域约束、查看综合网表，并且可以跑多次实现，找出最佳的布局并分析时序。&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/planahead&quot; target=&quot;_blank&quot;&gt;www.xilinx.com/planahead&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;EDK - Embedded Development Kit，顾名思义就是用来做嵌入式系统的。它提供对PowerPC硬核和MicroBlaze软核的支持，免费提供一些常用的硬件IP Core，比如各种Memory Controller、各种外设如IIC, SPI, GPIO，并集成了GNU工具链，使之成为软硬件设计一体化的设计工具。设计出的嵌入式系统集标准性与灵活性于一身，可以支持Linux等操作系统，也可让用户自己设计用户IP用作模块接口或硬件加速。&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/edk&quot; target=&quot;_blank&quot;&gt;www.xilinx.com/edk&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;System Generator借助Matlab Simulink的框架使DSP算法用图形化的数据流来说明，在Sysgen的帮助下DSP算法可以轻易在FPGA上实现。特别是它的Hardware Co-simulation功能大大降低了Debug的难度。&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/sysgen&quot; target=&quot;_blank&quot;&gt;www.xilinx.com/sysgen&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;ISE 产品现在被包装为 ISE Design Suite 发布。Suite 分为 Logic Edition, Embedded Edtion 和 DSP Edition。每个套装都包含了必要的设计和调试工具。任何套装都可以从网站上下载30天免费评估版。&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/ise_eval/index.htm&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/ise_eval/index.htm&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;除了Xilinx的软件，我们通常还会用到一些第三方的软件，比如Synopsys (曾经Synplicity) 的 Synplify 综合工具，Mentor Graphic 的 ModelSim 工具等。&lt;br/&gt;&lt;br/&gt;Synplify 可以替代 ISE 自带的 XST。他的优势是编译速度快，编译产生的网表质量可能更高（面积小，频率高）；缺点是1.贵 2.对新器件的支持比原厂慢一拍。&lt;br/&gt;&lt;br/&gt;ModelSim 是一款常用的仿真工具。其他和ISE搭配使用的仿真工具有Cadence的NC-Sim和Synopsys的VCS。ModelSim根据价格高低和支持功能的多少分为SE, PE, XE 等版本。其中XE是Xilinx Edition的意思，也就是Xilinx定制版。&lt;br/&gt;&lt;br/&gt;ModelSim MX有免费的starter version，也有付费取得License的版本。ModelSim XE 可以和ISE WebPack 一起下载，安装以后在开始里面点licens_e request就可以申请starter的使用权了。另外，可以VHDL和Verilog各申请一个，那么就可以仿真两种语言了，不过不支持mix language。&lt;a href=&quot;http://www.xilinx.com/ise/verification/mxe_details.html&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/ise/verification/mxe_details.html&lt;/a&gt;&lt;br/&gt;不过那一页说的ModelSim XE的use case不准，XE,PE,SE的差别还是仔细看这里吧。&lt;a href=&quot;http://www.xilinx.com/support/answers/24506.htm&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/support/answers/24506.htm&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;ModelSim XE自带有Xilinx的仿真库。如果ISE软件升级，可以从Download Center下载更新的仿真库。如果使用ModelSim PE/SE，那么就需要使用compxlib工具编译仿真库。&lt;br/&gt;&lt;br/&gt;&lt;span style=&quot;color: #FF0000;&quot;&gt;2. 软件版本和软件更新&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;Xilinx的软件工具更新很频繁。自从IDS10以后，基本是三个月出一次升级包 (Service Pack)，一年出一个新版本 (Major Version)。如此高的升级速度，一方面是为了更上新器件的支持要求，一方面是为了修补前期版本的bug。&lt;br/&gt;&lt;br/&gt;那么我们是否需要以最快的速度更上更新的速度呢？ 我的建议通常是：&lt;br/&gt;- 正在进行中的项目，如果不是需要新功能或绕过某些已经存在的Bug，那么就不要盲目升级大版本，但是一定要勤快地升级到最新的升级包。&lt;br/&gt;- 新设计尽量用新版本的最稳定版本。比如现在最近版本是11的时候，还是不要急于追新，用最稳定的10.1.03来做开发。&lt;br/&gt;&lt;br/&gt;对于操作系统，建议也是类似的：&lt;br/&gt;- 习惯使用Windows的用户还是用Windows XP SP2，最好还是英文版&lt;br/&gt;- 公司最好能有一台大内存64位服务器跑RHEL Linux，提供多用户使用，也更适合跑大器件&lt;br/&gt;(操作系统支持参考&lt;a href=&quot;http://www.xilinx.com/ise/ossupport/index.htm)&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/ise/ossupport/index.htm)&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;所有以上的建议，目的归根到底可以总结为：&lt;br/&gt;1. 以最大努力保证设计平台的稳定（Windows XP 用的人最多；Linux的内存管理比Windows好，64位系统上的软件业更成熟）&lt;br/&gt;2. 避免陷入已知的Bug中浪费时间&lt;br/&gt;3. 减小遇到未知的Bug的可能性 &lt;br/&gt;&lt;br/&gt;在产品开发过程中，设计软件总是稳定比功能多来得重要，操作系统总是稳定比好看来得重要。&lt;br/&gt;&lt;br/&gt;Xilinx所有的软件下载都可以在Download Center找到(&lt;a href=&quot;http://www.xilinx.com/download)&quot; target=&quot;_blank&quot;&gt;www.xilinx.com/download)&lt;/a&gt; 。其内容包括：&lt;br/&gt;- IDS的完整版下载&lt;br/&gt;- IDS更新包的下载&lt;br/&gt;- CAE Vendor Library 就是第三方工具需要使用到的库文件，比如Cadence/Synopsys的综合工具、形式验证工具等。&lt;br/&gt;- ModelSim XE 版本的仿真库更新 （记得我们上面说过ModelSim XE不需要自己编译仿真库吗？）&lt;br/&gt;- Device Models 可以下载用于第三方仿真工具(HSpice, HyperLinks等)所需要使用的 IBIS、HSpice、BSDL模型等。&lt;br/&gt;&lt;br/&gt;过往版本的ISE WebPack，可以到ISE Classic页面下载，但是不再提供付费软件的Evaluation。&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/tools/classics.htm&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/tools/classics.htm&lt;/a&gt;&lt;br/&gt;过往版本的最终Update，也可以在Download Center找到，但是中间版本需要在以下这些Answer Record中查找：&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/support/answers/10959.htm&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/support/answers/10959.htm&lt;/a&gt;&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/support/answers/31741.htm&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/support/answers/31741.htm&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;---------版权声明-----------&lt;br/&gt;本文作者 Ricky Su&lt;br/&gt;&lt;a href=&quot;http://www.fpganotes.com&quot; target=&quot;_blank&quot;&gt;www.fpganotes.com&lt;/a&gt;&lt;br/&gt;rickysu.fpga@gmail.com&lt;br/&gt;&lt;br/&gt;欢迎转载，转载请保持原样及署名&lt;br/&gt;商业使用须得到本人授权&lt;br/&gt;---------版权声明-----------&lt;br/&gt;&lt;br/&gt;&lt;span style=&quot;color: #FF0000;&quot;&gt;3. 软件教程&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;作为入门教程来说，Xilinx的Free Course视频教程应该是最合适的了。访问&lt;span style=&quot;color: #FF0000;&quot;&gt;&lt;a href=&quot;http://www.xilinx.com/support/training/free-courses.htm&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/support/training/free-courses.htm&lt;/a&gt;&lt;/span&gt;可以找到关于Architecture, Software tools, HDL Coding technique等各方面的视频教程，内容丰富，且原汁原味，属于自我学习最好的参考资料。&lt;br/&gt;&lt;br/&gt;放在Demosondemond网站上的那些视频教程的链接现在在主页上找不到了，但是可以从下面的链接进入：&lt;br/&gt;&lt;span style=&quot;color: #FF0000;&quot;&gt;&lt;a href=&quot;http://www.demosondemand.com/clients/xilinx/001/page/index.asp&quot; target=&quot;_blank&quot;&gt;http://www.demosondemand.com/clients/xilinx/001/page/index.asp&lt;/a&gt;&lt;/span&gt;&lt;br/&gt;里面的视频教程内容有关于最新的硬件的，也有各种软件的，也算齐全，只不过不再有新内容更新了。&lt;br/&gt;最近要查看demosondemand网站的录像需要注册了，dod的注册比较严格，注册需要公司邮件地址或者学校带edu的邮件地址。&lt;br/&gt;&lt;br/&gt;视频资料还有一类，就是WebCast（网上研讨会录像）。WebCast不是Tutorial，它最主要不是说明工具怎么用，解释FPGA的具体结构等，而是根据当前的热门问题告诉大家你可以尝试哪些Solution来解决设计问题。看了WebCast后可以知道我可以再继续读哪方面资料来了解更详细的情况。&lt;br/&gt;Xilinx网站上登录的过往的WebCast：&lt;span style=&quot;color: #FF0000;&quot;&gt;&lt;a href=&quot;http://www.xilinx.com/events/webcasts_od.htm&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/events/webcasts_od.htm&lt;/a&gt;&lt;/span&gt;&lt;br/&gt;以前在TechOnline上搞过的WebCast：&lt;a href=&quot;http://www.techonline.com/electronics_directory/webinar/896&quot; target=&quot;_blank&quot;&gt;http://www.techonline.com/electronics_directory/webinar/896&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;最新的WebCast都是可以与演讲者实时互动的。就像我在&lt;a href=&quot;http://www.fpganotes.com/post/315/&quot; target=&quot;_blank&quot;&gt;这篇文章&lt;/a&gt;中提到的，曾经WebCast只在美国开设，时区跟我们有差异，中国用户很难参与到互动环节，但是中国的WebCast也逐渐多起来了。最新的中文研讨会信息，可以查询&lt;a href=&quot;http://china.xilinx.com/china/company/ch_events.htm&quot; target=&quot;_blank&quot;&gt;http://china.xilinx.com/china/company/ch_events.htm&lt;/a&gt;。参加研讨会不仅有机会抽奖得到小礼品，活跃互动者更有可能得到比较丰厚的礼品（看着IPOD就口水~~）。&lt;br/&gt;&lt;br/&gt;接下来应该看的是Tutorial。&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/support/techsup/tutorials/&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/support/techsup/tutorials/&lt;/a&gt;&lt;br/&gt;主要是ISE, EDK, PlanAhead的，还有Timing Constraint的。&lt;br/&gt;&lt;br/&gt;ISE做了Tutorial基本操作应该没问题了。&lt;br/&gt;ChipScope比较简单看了Demosondemond的视频教程应该就会了。还不清楚的话看看安装目录里的UG029。&lt;br/&gt;PlanAhead虽然比ChipScope复杂，但是视频教程还是很不错的，再加上Tutorial，应该也够了。&lt;br/&gt;时序约束的那篇文档算是讲得比较全的，还有可以深入阅读的一篇文档就是&lt;a href=&quot;http://www.xilinx.com/support/documentation/white_papers/wp237.pdf&quot; target=&quot;_blank&quot;&gt;wp237&lt;/a&gt;，关于offset约束的。&lt;br/&gt;&lt;br/&gt;更进阶地了解ISE，需要阅读ISE的Manual。打开Manual可以从开始菜单中ISE-&gt;Documentation-&gt;Software Manuals；也可以在开始菜单中的ISE --&gt; Documentation中找到。&lt;br/&gt;&lt;br/&gt;列出几个重要的Manual：&lt;br/&gt;XST User Guide (xst.pdf)：关于XST的开关选项等&lt;br/&gt;Command Tool and Development System Reference Guide (dev.pdf) ：除了XST外的实现工具比如map, par, trce等的实用指南&lt;br/&gt;Constraint Guide (cgd.pdf) ：约束的指南。包括时序约束/非时序约束；UCF约束/XCF约束。&lt;br/&gt;Synthesis and Simulation Guide (sim.pdf)：其实主要是说明仿真的具体内容。&lt;br/&gt;Library Guide：针对每个器件不同的primitive例化模板和说明。&lt;br/&gt;&lt;br/&gt;ModelSim官方网站有些Flash的演示也很不错&lt;br/&gt;&lt;a href=&quot;http://www.model.com/resources/resources_demos.asp&quot; target=&quot;_blank&quot;&gt;http://www.model.com/resources/resources_demos.asp&lt;/a&gt;&lt;br/&gt;安装目录下的User Guide如果能跟着做一遍，基本使用已经没有问题。&lt;br/&gt;&lt;br/&gt;关于HDL的写法，除了XST User Guide中说明的支持的HDL语句，&lt;a href=&quot;http://www.xilinx.com/support/documentation/white_papers/wp231.pdf&quot; target=&quot;_blank&quot;&gt;wp231&lt;/a&gt;也很实用。&lt;br/&gt;&lt;br/&gt;关于EDK，最好的起步教程是EDK Concepts, Tools, and Techniques，可以在&lt;a href=&quot;http://www.xilinx.com/ise/embedded/edk_docs.htm&quot; target=&quot;_blank&quot;&gt;EDK Documents&lt;/a&gt;页面找到。这是一份既有讲解又有实战的Hands-on Guide。跟着他做一遍，EDK的大概功能心中就能有个数了。&lt;br/&gt;&lt;br/&gt;EDK最重要的几篇文档也在安装目录的doc目录下。像ISE一般罗列几份最重要的如下：&lt;br/&gt;est_rm.pdf : EDK系统的构成工具使用指南&lt;br/&gt;psf_rm.pdf : EDK系统使用的各种文件格式的语法说明&lt;br/&gt;oslib_rm.pdf: EDK提供的库文件说明&lt;br/&gt;mb_ref_guide.pdf : MicroBlaze体系结构说明&lt;br/&gt;&lt;br/&gt;由&lt;a href=&quot;http://www.eefocus.com/&quot; target=&quot;_blank&quot;&gt;与非网&lt;/a&gt;登载的《&lt;a href=&quot;http://www.openhw.org/html/08-05/415520080549KvWJ.html&quot; target=&quot;_blank&quot;&gt;基于XILINX FPGA片上嵌入式系统的用户IP开发&lt;/a&gt;》是一本关于设计Custom IP方面非常好的参考资料，现在也已经出版。China-pub链接在此：&lt;a href=&quot;http://www.china-pub.com/43606&quot; target=&quot;_blank&quot;&gt;http://www.china-pub.com/43606&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;EDK系统由于既牵涉到FPGA硬件和很多IP Core，又牵涉到C语言软件的编写和GNU工具链甚至Linux操作系统的相关知识，只是涉及范围之广，不是三言两语可以概括，因此文档也是多得数不过来，日后将再撰文祥述。&lt;br/&gt;&lt;br/&gt;关于Sysgen，其实它的User Guide写的还是很不错的。他不仅提供了功能描述，并且详述了操作步骤，而且还带有实例工程，安装目录中提供例子很有参考价值。User Guide位于help目录下的sysgen_user.pdf&lt;br/&gt;&lt;br/&gt;关于系统设计，Xilinx有本中文版的DSP书，名字叫《DSP:最佳结果设计》。免费放出PDF版本，&lt;br/&gt;在&lt;a href=&quot;http://china.xilinx.com/publications/books/dsp/index.htm&quot; target=&quot;_blank&quot;&gt;http://china.xilinx.com/publications/books/dsp/index.htm&lt;/a&gt;可以找到。&lt;br/&gt;&lt;br/&gt;关于DSP的特性，System Generator教程，XtremeDSP Kit的演示，在Demosondemond的视频教程里也都有。&lt;br/&gt;&lt;br/&gt;另外，Xilinx有丰富的客户培训教程，大客户由Xilinx直接上课，小客户交给第三方来完成的，中国这边是E-Elements。有机会参加的话也不错。对于学校教授，赛灵思大学计划还会在各高校不定时举办各种讲座，部分讲座可以从openhard观看视频。除此之外还有一个特别优待：只要是XUP大学计划的成员，就可以通过访问&lt;a href=&quot;http://china.xilinx.com/univ/teaching_material.htm&quot; target=&quot;_blank&quot;&gt;大学计划网页&lt;/a&gt;得到丰富的教学资料。&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;---------版权声明-----------&lt;br/&gt;本文作者 Ricky Su&lt;br/&gt;&lt;a href=&quot;http://www.fpganotes.com&quot; target=&quot;_blank&quot;&gt;www.fpganotes.com&lt;/a&gt;&lt;br/&gt;rickysu.fpga@gmail.com&lt;br/&gt;&lt;br/&gt;欢迎转载，转载请保持原样及署名&lt;br/&gt;商业使用须得到本人授权&lt;br/&gt;---------版权声明-----------&lt;br/&gt;&lt;br/&gt;&lt;span style=&quot;color: #FF0000;&quot;&gt;4. 硬件资料&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;所有的硬件资料不外乎DataSheet和User Guide。这些文档都可以在主页右上角的Documentation链接中找到。&lt;br/&gt;&lt;br/&gt;User Guide阐述器件使用方法，DataSheet标明器件的具体参数。&lt;br/&gt;&lt;br/&gt;User Guide 包括很多种。以Virtex5为例，User Guide的种类从片内资源 - 基本的Slice功能, BRAM, DSP,&amp;nbsp;&amp;nbsp;IOB的使用、复杂硬核GTP, EMAC, PPC等，到片外使用包括Configuration和PCB设计指导，都有自己的User Guide。&lt;br/&gt;&lt;br/&gt;Datasheet也根据内容分类到不同的文档中。同样以Virtex5为例，Datasheet Overview 介绍了V5的Feature，所有家族成员的资源列表和提供的封装列表。DC and Switching Characteristics 文档中介绍了各种电压参数和时序参数。&lt;br/&gt;&lt;br/&gt;文档网页&lt;a href=&quot;http://www.xilinx.com/support/documentation/index.htm&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/support/documentation/index.htm&lt;/a&gt;&lt;br/&gt;在注册网站之后可以选择收取文档更新通知。&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style=&quot;color: #FF0000;&quot;&gt;5. 参考资源&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;整体应用设计的参考资源可以分为三类：Demo板的参考设计(Reference Design)、应用设计文档(Application Notes)和XCELL杂志中报道的各种应用。&lt;br/&gt;&lt;br/&gt;在Demo板的网页上可以找到参考设计的链接。它通常都提供了Demo板上各种接口的驱动例程。比如&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/ml507&quot; target=&quot;_blank&quot;&gt;www.xilinx.com/ml507&lt;/a&gt;&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/ml403&quot; target=&quot;_blank&quot;&gt;www.xilinx.com/ml403&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;Xilinx Application Notes是另一种针对特定应用的说明文档。每篇文章期望解决一个问题，比如：怎样通过外部CPU配置FPGA？有哪些使用方法来帮助我debug嵌入式设计？Application Notes文档编号都以xapp开头。地址&lt;a href=&quot;http://www.xilinx.com/xapp&quot; target=&quot;_blank&quot;&gt;www.xilinx.com/xapp&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;对于CPLD，有一个Application Note的合集，叫做CPLD Applications Handbook。&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/publications/products/cpld/cpld_applications_handbook.pdf&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/publications/products/cpld/cpld_applications_handbook.pdf&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;XCELL不会提供设计文件，因为他是一项成功应用的介绍文档，通常他们会讲解一个真正产品中FPGA设计的结构和设计难点。&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/publications/&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/publications/&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;Xilinx现在推行的“目标平台”概念，照我的理解其目的是希望让用户站在巨人的肩膀上，尽量少操心底层的细节，而更多地关注真正提供价值的设计。对于“目标平台”覆盖到的应用，都提供了从芯片选型、Demo板设计到参考设计。于是我们应该尽量多地利用现有资源，以降低设计难度加快上市速度。相信随着“目标平台”的发展，我们可以看到越来越多的有价值的参考设计。&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style=&quot;color: #FF0000;&quot;&gt;6. 问题解决&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;再次重申，遇到软件问题先考虑自己有没有打上最新的Service Pack和IP Update。&lt;br/&gt;&lt;br/&gt;如果有疑问，其实最快的方法不是到论坛提问，而是到Xilinx Answer Database找答案。大多数已知问题的答案那里边都有了。能不能找到就看会不会搜索了。&lt;br/&gt;&lt;br/&gt;Xilinx的高级搜索&lt;a href=&quot;http://www.xilinx.com/company/advanced-search.htm&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/company/advanced-search.htm&lt;/a&gt;，在Answer Database选项上打勾，就能查找Answer Record。&lt;br/&gt;&lt;br/&gt;当软件报出一个Error或者Warning，我们一定要&lt;strong&gt;先将错误信息通读一遍&lt;/strong&gt;。英文的错误信息可能理解得不是很透彻，无法从这些信息里看到解决方法，不知道是自己错了还是软件bug，就可以按这个Error Message去Answer Database查找。&lt;br/&gt;&lt;br/&gt;可以说解决问题有两种途径，一是自己解决，一是寻求帮助。通常我都觉得先尝试自己解决问题比较好，一来培养能力，二来仔细研究问题后，寻求别人的帮助更容易理解别人的指点，另一方面也更尊重给你指点的人。&lt;br/&gt;&lt;br/&gt;---------版权声明-----------&lt;br/&gt;本文作者 Ricky Su&lt;br/&gt;&lt;a href=&quot;http://www.fpganotes.com&quot; target=&quot;_blank&quot;&gt;www.fpganotes.com&lt;/a&gt;&lt;br/&gt;rickysu.fpga@gmail.com&lt;br/&gt;&lt;br/&gt;欢迎转载，转载请保持原样及署名&lt;br/&gt;商业使用须得到本人授权&lt;br/&gt;---------版权声明-----------&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style=&quot;color: #FF0000;&quot;&gt;7. 总结&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;在信息爆炸的时代，我们的资源太多，我们的时间太少。谨希望此文能够为在学习FPGA路途上的朋友们节省一些寻找资源的时间，而用更多的时间来&lt;strong&gt;创造自己的价值&lt;/strong&gt;。&lt;br/&gt;&lt;br/&gt;2009.08.31&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;History&lt;br/&gt;2007-04-05 -- Initial Release&lt;br/&gt;2007-04-06 -- 添加ML403，UG071，UG072，修改错别字&lt;br/&gt;2007-04-13 -- 添加WebCast，DSP，Manual说明&lt;br/&gt;2007-05-14 -- 修改ModelSim MXE Starter Version的说明&lt;br/&gt;2007-05-26 -- 添加声明和dod注册信息&lt;br/&gt;2007-05-30 -- 添加PlanAhead简介&lt;br/&gt;2007-10-07 -- 软件--&gt;download center不需要注册登陆&lt;br/&gt;2008-12-14 -- 添加EDK、Sysgen说明，并更新一些已经改变的功能&lt;br/&gt;2009-02-17 -- 更新视频教程的那部分，添加了Xilinx Free Course视频链接&lt;br/&gt;&lt;a href=&quot;http://www.fpganotes.com/Xilinx_Web_Guide_20090302/&quot; target=&quot;_blank&quot;&gt;2009-03-02&lt;/a&gt; -- 添加Hiden in Plain View链接&lt;br/&gt;2009-08-31 -- 更新为ISE11相匹配的版本&lt;br/&gt;Tags - &lt;a href=&quot;http://www.fpganotes.com/tags/xilinx/&quot; rel=&quot;tag&quot;&gt;xilinx&lt;/a&gt; , &lt;a href=&quot;http://www.fpganotes.com/tags/tips/&quot; rel=&quot;tag&quot;&gt;tips&lt;/a&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/316888044/fpganotes/feedsky/s.gif?r=http://www.fpganotes.com/Xilinx_Web_Guide/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/fpganotes/316888044/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/fpganotes/316888044/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>技术经验</category><pubDate>Wed, 26 Aug 2009 21:54:27 +0800</pubDate><author>RickySu &lt;sutongqi+blog@gmail.com&gt;</author><guid isPermaLink="false">http://www.fpganotes.com/Xilinx_Web_Guide/</guid><dc:creator>RickySu &lt;sutongqi+blog@gmail.com&gt;</dc:creator><fs:srclink>http://www.fpganotes.com/Xilinx_Web_Guide/</fs:srclink><fs:srcfeed>http://www.fpganotes.com/feed.php</fs:srcfeed><fs:itemid>feedsky/fpganotes/~7485502/316888044/5429098</fs:itemid></item><item><title>Tip: ISE 和 EDK 的属性存在哪个文件中</title><link>http://www.fpganotes.com/post/318/</link><description>曾经碰到过这样的情况：&lt;br/&gt;&lt;br/&gt;- 公司内有很多服务器，有本地的，有国外的。有时候要用本地服务器上的ISE，有时要用国外服务器上的ISE。由于ISE默认会记忆并打开上一次的工程，因此在切换使用服务器时，由于线路比较慢，打开一个ISE会要很长时间。打不开ISE也无法更改属性为不要打开上一次的工程。于是就要找到记录ISE属性的文件并且手动修改这个属性。&lt;br/&gt;&lt;br/&gt;&lt;a href=&quot;http://www.xilinx.com/support/answers/20892.htm&quot; target=&quot;_blank&quot;&gt;AR20892&lt;/a&gt; 讲了ISE 10.1之前版本的属性存放位置，他们是：&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Windows&lt;/strong&gt; 注册表:&lt;br/&gt;HKEY_CURRENT_USER&amp;#92;Software&amp;#92;Xilinx&amp;#92;Project Navigator&amp;#92;7.1i&amp;#92;Preferences -&gt; OpenPreviousProject&lt;br/&gt;HKEY_CURRENT_USER&amp;#92;Software&amp;#92;Xilinx&amp;#92;ISE&amp;#92;9.1i&amp;#92;Project Navigator&amp;#92;Project Manager&amp;#92;Preferences -&gt; OpenPreviousProject&lt;br/&gt;&lt;strong&gt;&lt;br/&gt;Linux&lt;/strong&gt; 属性文件$HOME/.qt/xilinxrc中的:&lt;br/&gt;10.1/Project Navigator/Project Manager/Preferences/OpenPreviousProject=true 选项&lt;br/&gt;&lt;br/&gt;11.1中&lt;strong&gt;Linux&lt;/strong&gt;系统的文件位置改成了：&lt;br/&gt;$HOME/.config/Xilinx/ISE.conf&lt;br/&gt;Tags - &lt;a href=&quot;http://www.fpganotes.com/tags/ise_utilities/&quot; rel=&quot;tag&quot;&gt;ise utilities&lt;/a&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/316888045/fpganotes/feedsky/s.gif?r=http://www.fpganotes.com/post/318/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/fpganotes/316888045/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/fpganotes/316888045/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>技术经验</category><pubDate>Tue, 04 Aug 2009 15:11:55 +0800</pubDate><author>RickySu &lt;sutongqi+blog@gmail.com&gt;</author><guid isPermaLink="false">http://www.fpganotes.com/post/318/</guid><dc:creator>RickySu &lt;sutongqi+blog@gmail.com&gt;</dc:creator><fs:srclink>http://www.fpganotes.com/post/318/</fs:srclink><fs:srcfeed>http://www.fpganotes.com/feed.php</fs:srcfeed><fs:itemid>feedsky/fpganotes/~7485502/316888045/5429098</fs:itemid></item><item><title>不要把ISE 11装到Fat32的分区上</title><link>http://www.fpganotes.com/post/316/</link><description>&lt;a href=&quot;http://pic.fpganotes.com/images/ricky/120pxiconnopermission.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://pic.fpganotes.com/images/ricky/120pxiconnopermission.png&quot; class=&quot;insertimage&quot; alt=&quot;点击在新窗口中浏览此图片&quot; title=&quot;点击在新窗口中浏览此图片&quot; border=&quot;0&quot;/&gt;&lt;/a&gt;&lt;br/&gt;ISE 11安装在Fat32分区上会有Permission问题的，在NTFS和ext2/ext3上都没有问题。&lt;br/&gt;&lt;br/&gt;【相关资料】&lt;br/&gt;AR 32796: &lt;a href=&quot;http://www.xilinx.com/support/answers/32796.htm&quot; target=&quot;_blank&quot;&gt;http://www.xilinx.com/support/answers/32796.htm&lt;/a&gt;&lt;br/&gt;Tags - &lt;a href=&quot;http://www.fpganotes.com/tags/ise/&quot; rel=&quot;tag&quot;&gt;ise&lt;/a&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/316888046/fpganotes/feedsky/s.gif?r=http://www.fpganotes.com/post/316/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/fpganotes/316888046/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/fpganotes/316888046/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>技术经验</category><pubDate>Thu, 23 Jul 2009 11:33:24 +0800</pubDate><author>RickySu &lt;sutongqi+blog@gmail.com&gt;</author><guid isPermaLink="false">http://www.fpganotes.com/post/316/</guid><dc:creator>RickySu &lt;sutongqi+blog@gmail.com&gt;</dc:creator><fs:srclink>http://www.fpganotes.com/post/316/</fs:srclink><fs:srcfeed>http://www.fpganotes.com/feed.php</fs:srcfeed><fs:itemid>feedsky/fpganotes/~7485502/316888046/5429098</fs:itemid></item><item><title>Xilinx中文网上研讨会</title><link>http://www.fpganotes.com/post/315/</link><description>&lt;a href=&quot;http://pic.fpganotes.com/images/ricky/ipodnanohero20080909.jpg&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://pic.fpganotes.com/images/ricky/ipodnanohero20080909.jpg&quot; class=&quot;insertimage&quot; alt=&quot;点击在新窗口中浏览此图片&quot; title=&quot;点击在新窗口中浏览此图片&quot; border=&quot;0&quot; width=&quot;480&quot;/&gt;&lt;/a&gt;&lt;br/&gt;4G IPOD 是填写&lt;u&gt;&lt;strong&gt;反馈单&lt;/strong&gt;&lt;/u&gt;的抽奖奖品，看上去挺诱人呵呵。&lt;br/&gt;&lt;br/&gt;在学生时代，看到有网上研讨会的广告，心怀好奇也想凑热闹。心想反正都坐在电脑前面，也没人知道你是学生，不会像某些展览还不让学生进门。可当时大多数网上研讨会都是美国开的，有时差，开会的时候宿舍都熄灯了。现在国内中文的研讨会也多起来了，合适的时间，合适的语言，最后还有人答疑，进步不小。&lt;br/&gt;&lt;br/&gt;最近有两个中文网上研讨会，可以关注一下。&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;7月9日&lt;/strong&gt;&amp;nbsp;&amp;nbsp;介绍新推出的ISE 11软件套装的新特性&lt;br/&gt;详细介绍和预先登记：&lt;a href=&quot;http://webcast.ednchina.com/102/Content.aspx&quot; target=&quot;_blank&quot;&gt;http://webcast.ednchina.com/102/Content.aspx&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;7月28日&lt;/strong&gt; 介绍 Sparten6 和 Virtex6 的高速串行收发器特性及如何正确配置&lt;br/&gt;详细介绍和预先登记： &lt;a href=&quot;http://webcast.ednchina.com/103/Content.aspx&quot; target=&quot;_blank&quot;&gt;http://webcast.ednchina.com/103/Content.aspx&lt;/a&gt;&lt;br/&gt;Tags - &lt;a href=&quot;http://www.fpganotes.com/tags/xilinx/&quot; rel=&quot;tag&quot;&gt;xilinx&lt;/a&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/316888047/fpganotes/feedsky/s.gif?r=http://www.fpganotes.com/post/315/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/fpganotes/316888047/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/fpganotes/316888047/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>新闻评论</category><pubDate>Wed, 08 Jul 2009 10:17:22 +0800</pubDate><author>RickySu &lt;sutongqi+blog@gmail.com&gt;</author><guid isPermaLink="false">http://www.fpganotes.com/post/315/</guid><dc:creator>RickySu &lt;sutongqi+blog@gmail.com&gt;</dc:creator><fs:srclink>http://www.fpganotes.com/post/315/</fs:srclink><fs:srcfeed>http://www.fpganotes.com/feed.php</fs:srcfeed><fs:itemid>feedsky/fpganotes/~7485502/316888047/5429098</fs:itemid></item><item><title>EDK IP - XPS Timer/Counter - Capture Mode</title><link>http://www.fpganotes.com/post/314/</link><description>在用XPS Timer/Counter模块检测一个外部信号检测时，发现Timer这个IP Core的Datasheet写的不是很清楚。以下对其中的比较模糊的地方梳理一下。&lt;br/&gt;&lt;br/&gt;1. 运行在哪个模式下 - Compare(Generate) 还是 Capture。在 TCSR0 的 MDT0 中配置。&lt;br/&gt;&lt;br/&gt;2. Capture 上升沿还是下降沿，由Generic C_TRIG0_ASSERT 控制。1为上升沿，0为下降沿。Datasheet中叫做 high-true 和 low-true 让人以为是高低电平。查看源代码发现原来是做了Edge比较的。&lt;br/&gt;&lt;br/&gt;3. 如果 TCSR0 的 ENT0 = 1 (Enable Timer0) 且 CAPT0 = 1 ( Enable External Capture Trigger)，那么在发现上升沿或下降沿后，T0INT会置1&lt;br/&gt;&lt;br/&gt;4. 对 T0INT 写入 1 可以清除中断，即将T0INT置0&lt;br/&gt;&lt;br/&gt;5. 如果ARHT0 = 1 (Auto Reload/Hold Timer0)，那么每次发生Capture Event时都会将现在的计数器内容存入Load Register。如果 ARHT0 = 0，那么只有在将Load Register读出后才可以重写Load Register。&lt;br/&gt;&lt;br/&gt;6. 如果 ENIT0 (Enable Interrupt for Timer0) 置1，那么T0INT会驱动Interrupt管脚，使中断信号输出。否则中断只是一个内部的状态信号，需要查询才可得知内容。&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Tags - &lt;a href=&quot;http://www.fpganotes.com/tags/edk_ip/&quot; rel=&quot;tag&quot;&gt;edk ip&lt;/a&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/316888048/fpganotes/feedsky/s.gif?r=http://www.fpganotes.com/post/314/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/fpganotes/316888048/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/fpganotes/316888048/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>技术经验</category><pubDate>Mon, 06 Jul 2009 17:05:42 +0800</pubDate><author>RickySu &lt;sutongqi+blog@gmail.com&gt;</author><guid isPermaLink="false">http://www.fpganotes.com/post/314/</guid><dc:creator>RickySu &lt;sutongqi+blog@gmail.com&gt;</dc:creator><fs:srclink>http://www.fpganotes.com/post/314/</fs:srclink><fs:srcfeed>http://www.fpganotes.com/feed.php</fs:srcfeed><fs:itemid>feedsky/fpganotes/~7485502/316888048/5429098</fs:itemid></item><item><title>IPIF - PLBv46_Slave_Single</title><link>http://www.fpganotes.com/post/313/</link><description>要做CustomIP，就要好好理解IPIF。&lt;br/&gt;PLBv46的IPIF分为很多类型，Slave的和Master的，Single Beat的和Burst的。&lt;br/&gt;PLBv46 Slave Single 的 Datasheet 已经写得很清楚了，在此做一些简要笔记。&lt;br/&gt;&lt;br/&gt;应用PLBv46 Slave Single，最主要是要理解其中的两个参数：&lt;strong&gt;C_ARD_ADDR_RANGE_ARRAY&lt;/strong&gt; 和 &lt;strong&gt;C_ARD_NUM_CE_ARRAY&lt;/strong&gt;.&lt;br/&gt;&lt;br/&gt;ARD 的意思就是 Address Range Definition.&lt;br/&gt;&lt;br/&gt;这两个参数和这些Port有关：&lt;br/&gt;Bus2IP_CS --&gt; 总线宽度为C_ARD_ADDR_RANGE_ARRAY除2。&lt;br/&gt;Bus2IP_WrCE和Bus2IP_RdCE --&gt; 总线宽度为C_ARD_NUM_CE_ARRAY。&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;C_ARD_ADDR_RANGE_ARRAY --&gt; CS&lt;/strong&gt; &lt;br/&gt;这个参数(GENERIC)定义了整个IP的地址空间中可以有多少个独立而不要求连续的地址空间。&lt;br/&gt;参数内容成对出现，一个基地址，一个高地址。&lt;br/&gt;使用64bit地址以备将来扩展。&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;C_ARD_NUM_CE_ARRAY --&gt; CE&lt;/strong&gt;&lt;br/&gt;这个参数定义了一个地址空间中有多少个需要独立使能信号(CE)。主要是为了控制不同的寄存器组而设计。&lt;br/&gt;数值需要是2的次方，比如1, 2, 4, 8, 16, 32等等。&lt;br/&gt;每个地址空间必须有至少一个CE。&lt;br/&gt;&lt;br/&gt;这两个参数都是在plb_address_decoder.vhd中被定义和使用。&lt;br/&gt;如果是做CustomIP，完全可以手动定义这两个GENERIC参数。&lt;br/&gt;如果需要做某种范围内的自动生成，可以参照GPIO的qual_ard_addr_range_array函数计算过程。&lt;br/&gt;Tags - &lt;a href=&quot;http://www.fpganotes.com/tags/ipif/&quot; rel=&quot;tag&quot;&gt;ipif&lt;/a&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/316888049/fpganotes/feedsky/s.gif?r=http://www.fpganotes.com/post/313/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/fpganotes/316888049/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/fpganotes/316888049/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>技术经验</category><pubDate>Fri, 03 Jul 2009 15:33:08 +0800</pubDate><author>RickySu &lt;sutongqi+blog@gmail.com&gt;</author><guid isPermaLink="false">http://www.fpganotes.com/post/313/</guid><dc:creator>RickySu &lt;sutongqi+blog@gmail.com&gt;</dc:creator><fs:srclink>http://www.fpganotes.com/post/313/</fs:srclink><fs:srcfeed>http://www.fpganotes.com/feed.php</fs:srcfeed><fs:itemid>feedsky/fpganotes/~7485502/316888049/5429098</fs:itemid></item><item><title>以太网学习之Ethernet Lite MAC</title><link>http://www.fpganotes.com/ethernet_lite_mac/</link><description>&lt;strong&gt;Ethernet Lite MAC 功能&lt;/strong&gt;&lt;br/&gt;- &lt;strong&gt;功能&lt;/strong&gt;&lt;br/&gt;接口： MII&lt;br/&gt;速度： 10M/100M bps （时钟速率必须大于以太网速度的一半）&lt;br/&gt;支持半双工和全双工 （ C_DUPLEX 参数控制）&lt;br/&gt;可选的乒乓Buffer （C_TX_PING_PONG 和 C_RX_PING_PONG 参数控制）&lt;br/&gt;&lt;br/&gt;- &lt;strong&gt;限制&lt;/strong&gt;&lt;br/&gt;不支持多播 - 只支持单播和广播。（Datasheet第23页）&lt;br/&gt;不支持Jumbo Frame - 仅支持标准的1500Byte长度的Frame。&lt;br/&gt;不支持Burst - 使用了plbv46_slave_single_v1_00_a作为PLB接口，不支持Burst操作&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Ethernet Lite MAC 结构&lt;/strong&gt;&lt;br/&gt;&lt;a href=&quot;http://pic.fpganotes.com/images/ricky/ethernetlite20bblockdiagram.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://pic.fpganotes.com/images/ricky/ethernetlite20bblockdiagram.png&quot; class=&quot;insertimage&quot; alt=&quot;点击在新窗口中浏览此图片&quot; title=&quot;点击在新窗口中浏览此图片&quot; border=&quot;0&quot; width=&quot;450&quot;/&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;- &lt;strong&gt;时钟&lt;/strong&gt;&lt;br/&gt;总共有三个时钟，分别为接收时钟，发送时钟和PLB时钟。&lt;br/&gt;&lt;u&gt;接收时钟&lt;/u&gt;和&lt;u&gt;发送时钟&lt;/u&gt;都由外部的PHY提供。可以是2.5MHz或25MHz(对应10Mbps和100Mbps)。时钟精度要求100ppm，占空比范围为35%-65%.&lt;br/&gt;&lt;u&gt;PLB时钟&lt;/u&gt;必须大于以太网速度的一半，即5MHz 或 50MHz.&lt;br/&gt;&lt;br/&gt;- &lt;strong&gt;控制&lt;/strong&gt;&lt;br/&gt;为减少占用的芯片资源，使用BRAM的最后一个区段作为控制寄存器&lt;br/&gt;&lt;a href=&quot;http://pic.fpganotes.com/images/ricky/emaclitetxcontrol.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://pic.fpganotes.com/images/ricky/emaclitetxcontrol.png&quot; class=&quot;insertimage&quot; alt=&quot;点击在新窗口中浏览此图片&quot; title=&quot;点击在新窗口中浏览此图片&quot; border=&quot;0&quot; width=&quot;450&quot;/&gt;&lt;/a&gt;&lt;br/&gt;GIE - Global Interrupt Enable (1为允许)&lt;br/&gt;Control - P = Program, S = Status, I = Tx Interrupt Enable&lt;br/&gt;&lt;br/&gt;用软件控制和发送数据流程是这样的&lt;br/&gt;&lt;div class=&quot;code&quot;&gt;•&amp;nbsp;&amp;nbsp; The software stores the transmit data in the dual port memory starting at address offset 0x0&lt;br/&gt;•&amp;nbsp;&amp;nbsp; The software writes the length data in the dual port memory at address offset 0x07F4&lt;br/&gt;•&amp;nbsp;&amp;nbsp; The software writes a ’1’ to the Status bit at address offset 0x07FC (bit 31 on the data bus)&lt;br/&gt;•&amp;nbsp;&amp;nbsp; The software monitors the Status bit and waits until it is set to ’0’ by the Ethernet Lite MAC before initiating another transmit&lt;br/&gt;•&amp;nbsp;&amp;nbsp; If the transmit interrupt and the global interrupt are both enabled, an interrupt will occur when the Ethernet Lite MAC clears the Status bit&lt;br/&gt;•&amp;nbsp;&amp;nbsp; The transmit interrupt if enabled will also occur with the completion on writing the MAC address&lt;/div&gt;&lt;br/&gt;&lt;br/&gt;当吧Status置1后，EMAC Lite开始发送数据，会经过这些步骤：&lt;br/&gt;&lt;div class=&quot;code&quot;&gt;Generate the preamble and start of frame fields&lt;br/&gt;•&amp;nbsp;&amp;nbsp; Read the length and the specified amount of data out of the dual port memory according to the length value adding padding if required&lt;br/&gt;•&amp;nbsp;&amp;nbsp; Detect any collision and performing any jamming, backoff, and retry if necessary&lt;br/&gt;•&amp;nbsp;&amp;nbsp; Calculates the CRC and appends it to the end of the data&lt;br/&gt;•&amp;nbsp;&amp;nbsp; Clears the status bit at the completion of the transmission&lt;br/&gt;•&amp;nbsp;&amp;nbsp; Clearing the status bit will cause a transmit complete interrupt if enabled&lt;/div&gt;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;问题&lt;/strong&gt;&lt;br/&gt;- 发送控制位的Length和前面的type/length有什么区别？&lt;br/&gt;EMAC Lite不会对type/length做任何处理，而是把它们当作普通数据一样发送出去。&lt;br/&gt;控制位的Length是在发送时用于计数的。&lt;br/&gt;Tags - &lt;a href=&quot;http://www.fpganotes.com/tags/ethernet/&quot; rel=&quot;tag&quot;&gt;ethernet&lt;/a&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/316888050/fpganotes/feedsky/s.gif?r=http://www.fpganotes.com/ethernet_lite_mac/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/fpganotes/316888050/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/fpganotes/316888050/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>技术经验</category><pubDate>Thu, 02 Jul 2009 12:24:54 +0800</pubDate><author>RickySu &lt;sutongqi+blog@gmail.com&gt;</author><guid isPermaLink="false">http://www.fpganotes.com/ethernet_lite_mac/</guid><dc:creator>RickySu &lt;sutongqi+blog@gmail.com&gt;</dc:creator><fs:srclink>http://www.fpganotes.com/ethernet_lite_mac/</fs:srclink><fs:srcfeed>http://www.fpganotes.com/feed.php</fs:srcfeed><fs:itemid>feedsky/fpganotes/~7485502/316888050/5429098</fs:itemid></item><item><title>ISE小工具 -- ReportGen</title><link>http://www.fpganotes.com/reportgen/</link><description>我也是第一次知道有这么个工具：只要有布线后的NCD网表，就可以通过ReportGen工具产生各种报告文档，比如clock region report, delay report, pad report, unrouted net report等等。&lt;br/&gt;&lt;br/&gt;直接在命令行中输入reportgen就能查看使用说明。&lt;br/&gt;Tags - &lt;a href=&quot;http://www.fpganotes.com/tags/ise_utilities/&quot; rel=&quot;tag&quot;&gt;ise utilities&lt;/a&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/316888055/fpganotes/feedsky/s.gif?r=http://www.fpganotes.com/reportgen/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/fpganotes/316888055/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/fpganotes/316888055/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>技术经验</category><pubDate>Thu, 02 Jul 2009 10:24:40 +0800</pubDate><author>RickySu &lt;sutongqi+blog@gmail.com&gt;</author><guid isPermaLink="false">http://www.fpganotes.com/reportgen/</guid><dc:creator>RickySu &lt;sutongqi+blog@gmail.com&gt;</dc:creator><fs:srclink>http://www.fpganotes.com/reportgen/</fs:srclink><fs:srcfeed>http://www.fpganotes.com/feed.php</fs:srcfeed><fs:itemid>feedsky/fpganotes/~7485502/316888055/5429098</fs:itemid></item></channel></rss>