|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
可编程逻辑器件设计技巧(续)
--转自电子工程专辑
55. 在中国市场上, 可以容易买到使用Altera公司的软件MAX+PlussII进行VHDL和FPGA设计的教程书籍, 但是却鲜有使用Xilinx foundation软件平台的书籍, Xilinx是否考虑增强这方面内容?
答:Thank you for your input. In fact there are a number of books available in the market on Xilinx FPGA and development tools. A good example is the title "XILINX 数字系统集成技术" by Professor 朱明程, published by Southeast University Press. We will work closely with local publishers to bring out more titles on Xilinx products. (市场上还是有几本Xilinx FPGA和开发工具的书. 比较好的有朱明程教授编的《XILINX 数字系统集成技术》, 东南大学出版社出版. Xilinx公司也将会与本地出版商密切合作, 推出更多针对Xilinx产品的书籍. )
56. 在ISE4. 1环境下编写一个包结构, 里面有几个函数, 编译通过, 而MODELSIM 仿真出错, 提示:没有找到此PACKAGE, 为什么?
答:After you have created the package, you need to add it to your project. In the source window, right click and select "Add source", pick the source file for your vhdl package, and then select "Vhdl package". The package will then be added to your ISE project. (参考译文:创建了这个包之后, 需要将它添加到项目中. 在源代码窗口, 右键单击并选择“Add source”, 为vhdl包选择源文件, 然后选“Vhdl package”. 这个包就添加到ISE项目中了. )
57. 布板时, 时钟信号没有接全局时钟, 如何处理时钟使之可以更好(不需飞线)?
答:You can bring the signal back to the global clock network by inserting a BUFG. (参考译文:可以通过插入一个BUFG将一个信号返回全局时钟网络. )
58. 准备使用XCV50 FPGA, 前面有16个模块, 本来每个模块都须要一个27M的时钟, 为了达到同步, 初步设想外部接一个27M时钟, 最后由FPGA产生16个27M的时钟输出, 这样做驱动会不会有问题?
答:A possible way is to feed your 27MHz input clock to a DLL. The output of the DLL drives multiple OBUF. In this way you can create multiple copies of your input clock to drive other components on your board. You don't actually need 16 OBUFs since each OBUF can drive several loads. Note that although the DLL output can drive multiple OBUF, only the one which provides feedback to the DLL can be completely deskewed. You can also add a MAXSKEW constraint on the output net of the DLL to minimize skew among the OBUFs. This may not be a big issue since 27MHz is relatively slow. (参考译文:可能的方法是将27MHz输入时钟传递给DLL. DLL输出驱动多重OBUF. 用这种方法可以创建输入时钟的多个副本以驱动板子上的其它组件. 实际上, 不需要16个OBUF, 因为每个OBUF都可以驱动几个负载. 请注意, 虽然DLL输出能驱动多个OBUF, 但只有那个向DLL提供反馈的OBUF可以完全对称(deskewed)的. 也可以在DLL的输出量上添加MAXSKEW限制, 以最小化OBUF间的偏斜. 因为27MHz相对比较慢, 所以问题不大. )
For more information regarding the use of DLL, please refer to the application note XAPP132 which can downloaded from the xilinx websitewww. xilinx. com(关于DLL的使用, 请参考XAPP132的应用手册. )
59. IP CAPTION 就是核发生器, 它运行在核发生器目录下吗?
答:I think you mean "IP Capture". The IP Capture tool provides designers with an automated method to identify, capture, and document a core. The core can exist in the form of synthesizable VHDL or Verilog code, or a fixed function netlist. Once the new module has been captured, it can be installed into and distributed from a user's local copy of the Xilinx CORE Generator system. (参考译文:所指的应该是"IP Capture"吧. IP Capture工具为设计者提供了自动识别、捕获和归档核的方法. 核可以综合VHDL或Verilog码, 或固定功能连接表的形式存在. 一旦捕获了新模块, 就能够将核装入, 并从用户的本机Xilinx CORE Generator副本中分配此核. )
Details of the IP Capture tools can be found from Xilinx website . http://www. xilinx. com/page_moved/ipcenter_e. htm?url=/ipcenter/designreuse/ipic. htm(有关IP Capture工具的详细资料, 请访问相关网站. )
60. 制作了一块试验板, CPLD使用EPF10K20TI144-4. 用max+plus II 10. 1编程, 完成后, 下载至片子内, 经过几次下载尝试(一直提示configuration failure: SRAM load unsucessful), 直至提示“configuration complete”——这应该是表示下载成功吧, 可是片子却无法实现任何功能(连最基本的一个或门都无法实现)——不起任何作用, 我使用TQFP-144的适配座放置EPF10K20TI144. 现在有几个问题:
① 编译前选择的是EPF10K20TC144-3芯片(max+plus II的器件库中没有EPF10K20TI144-4), 有没有关系?也用EPF10K10TC144-4试过, 也是可以下载但无法实现功能.
② 为什么要下载很多次才能成功, 下载线是自己制作的?
③ 将MSEL0、MSEL1、nCE、专用输入脚、专用时钟脚接地, 其它非I/O引脚悬空, 是否还有些引脚需要接地或VCC?
④ 如果因为TQFP-144适配座一些触点与CPLD引脚接触不好导致一些VCCIO, VCCINT、GNDINT、GNDIO或其它一些非I/O引脚悬空, 会出现什么结果?
⑤ 如何才能使CPLD实现功能?
答:根据描述, 很有可能是加载电路有问题, 请参照Altera的AN116文件的加载电路图仔细核对, 特别注意和CPU相连的加载控制管脚:
① 编译芯片选择与速度等级无关;
② 请检测conf_done信号是否拉高;
③ 在常用的PS和JTAG加载模式时除了MSEL0, MSEL1, nCE, 没用的专用输入脚, 专用时钟脚应该接地 , data0, nconfig, dclk, nstatus, conf_done都应该上拉, 这些管脚不上拉很可能是导致你加载不成功的原因;
④ 如果因为TQFP-144适配座一些触点与CPLD引脚接触不好导致一些VCCIO, VCCINT, GNDINT, GNDIO或其它一些非I/O引脚悬空, 会出现会出现加载链路不通或加载不成功的现象;
⑤ 加载成功后CPLD就能实现功能.
61. 目前采用SRAM技术的LUT-based的FPGA仍然占绝对主流地位, 但是这种FPGA有其天生的缺陷, 请问下一代FPGA的构架发展趋势怎样?Altera在这方面有没有什么新的尝试?
答:下一代FPGA主要朝着SOPC的方向发展:
Altera的下一代产品Stratix, 基本单元LE仍然基于LUT结构, 但有些大的改变,
① 去掉了传统的级联链(Cascade Chain);
② 进位链(Carry Chain)由以前的单一1条变为LAB Carry-in、Carry-in1、Carry-in0三条;
③ LE的扇出也由2个变为了4个;
④ 触发器的控制信号也更多.
其它方面:
① RAM:一改以前单一2K BITs 或4K BITs的 Memory为小RAM:512BITs; 中RAM:4KBITs;大RAM:512 KBITs;
② 第一次在FPGA中嵌入DSP;
③ 时钟链路也由全局时钟变为全局时钟和区域全局时钟;
④ . . . . . .
所有的这些变化都是通过大量的用户反馈信息作出的慎重改进, 使的Stratix器件更加适合用户的设计需求
62. 能否提供7128的下载波形、DSP与PLD的典型下载电路?
答:7128的下载波形与PLD的典型下载电路在Altera应用文档AN95里有详细的说明.
63. "Always use fully synchronous design. You never need to reply on gate delay if your design is fully synchronous. " 如果设计是完全同步的, 意思是就可以不用依靠门延时. 但在设计时, 在对和数据一同进来的控制信号进行处理后所产生的输出控制信号会滞后数据数个时钟周期, 这时就不得不对数据进行门延时, 已达到同步. 现在看来, 这是不合适的. 但是, 要用什么办法来处理这个问题而不应用门延时呢?
答:In a "fully synchronous" design, you only have 3 kinds of paths(在完全同步设计中, 只有三种途径:)
① From I/O to synchronous element. (从I/O到同步元素)
② From synchronous element to synchronous element. (从同步元素到同步元素).
③ From synchronous element to I/O. (从同步元素到I/O) |
|