原创 CycloneIII设计向导-第二篇.早期系统规划

2008-12-20 22:29 4637 7 7 分类: FPGA/CPLD

1.早期功耗估计


 


  需要提早就估算好芯片的功耗是多少,才能做好供电设计和散热设计。


下面是Altera对于Cyclone III器件的功耗估计excel表格:


 http://www.altera.com.cn/support/devices/estimator/cy3-estimator/cycloneiii_epe_72sp1.xls


如果设计已经基本完成,QuartusII软件也可以根据实际设计估算功耗。


 


2.I/O支持


 


   A. 三类I/O标准,包括Single-ended(单端),Voltage-referenced(参考电压),Differential(差分)。三者各有优缺点。不过在实际应用中,使用哪种标准,往往由FPGA连接的芯片决定。


 


B.灵活的I/O bank。8个bank的I/O电压和Vref参考电压可以不一样,但在每个bank内部必须一致。在I/O电压确定的情况下,还可以有一定的兼容性。比如2.5V和3.3V的兼容性。


 


C.外部内存接口。支持ddr,ddr2,qdrII,需要专门的管脚。以前的sdram和sram当然也支持,不需要专门的管脚(把时钟脚小心处理更好)。使用top和bottom的bank速度更快,最快支持200MHz。这里简单介绍,做高速设计,得多查文档。


 


D.Pin-Out文件。QuartusII工程编译后会生成该文件,里面对引脚的描述就是该引脚最终确定的功能。对这个文件的检查,可以帮助我们明确问题。一些多功能引脚,需要小心处理。


 


3.选择FPGA配置方案


 


下面是原文中的配置方案的表格,说得很清楚。


点击看大图


  配置方案很多,包括


Active serial (AS):


单芯片,使用Altera的EPCS系列芯片,配置速度第3。芯片价格较贵。
Active parallel (AP):


单芯片,使用特定型号的FLASH(INTEL P30,P33),配置速度第1。芯片价格便宜。但需要占用FPGA 40个管脚(16data+24addr)。
Passive serial (PS):


被动方式,需要额外的控制器参与。配置速度第4.
Fast passive parallel (FPP):


被动方式,需要额外的控制器和flash芯片。配置速度第2。flash芯片价格便宜。需要占用FPGA 8个管脚(8data)。
Joint Test Action Group (JTAG)——调试使用


 


配置方案的选择,由MSEL pin控制。


选择考虑:是否需要fast power-on reset (POR) time ,达到快速上电工作的目的。


封装不同,支持的配置方案也不同。


配置方案的选择,需要考虑配置时间的要求。


AS和AP模式,FPGA的DCLK为输出,最大速度40MHz。PS和FPP模式,FPGA的DCLK为输入,上升沿采样。最大速度为100MHz。


 


下载电缆包括:


USB-Blaster,目前最常用的。价格中等,下载配置文件到FPGA的速度快。不想购买的话,可以从网上下载pcb,采购器件自己做。


ByteBlaster II,常见,最便宜,但是下载速度慢。同样可以自己做。器件规模大了用这个会慢得很痛苦。


EthernetBlaster,不常见,价格贵,下载速度快。


目前,强烈建议使用USB-Blaster,除非对价格太敏感。


 


可以通过FPGA的JTAG接口,烧写EPCS配置芯片。需要用到Serial Flash Loader这个Altera提供的IP核。


使用MAX II芯片,PS或者FPP模式,也有MAX II Parallel Flash Loader这个IP核,来通过MAX II芯片JTAG烧写FLASH。


AP模式,有FPGA-Based Parallel Flash Loader这个IP核,通过FPGA的JTAG烧写FLASH。


 


4.配置特性


 


      AS和PS模式,配置文件可以选择压缩模式,能减少配置文件的大小。


     远程系统升级,不熟悉,待补充


 


5.PLL锁相环


 


      强大的PLL功能,包括时钟倍频,分频,相移,可编程占空比,输入时钟切换,PLL级联,PLL动态重配,动态相移,扩展频谱时钟,外部时钟输出和控制信号。


   相对于Cyclone和Cyclone II,现在Cyclone III增加了PLL的动态重配功能。


  PLL的时钟输入,必须使用FPGA的专用时钟输入脚(dedicated clock
input pins)或者另一个PLL的时钟输出。也就是说,PLL可以级联。


  输入时钟切换:可以给PLL输入双时钟,当使用的输入时钟失效时,可以自动或者手动切换使用另一个备用输入时钟。


 PLL有5个输出。如果要输出到专用外部时钟输出脚,建议用C0输出,这样jitter最小。当然也是可以使用其它的输出的。


如果对输入时钟和PLL的输出时钟,有相位上的要求,就得了解PLL的相位补偿模式的设置。


 


6.芯片内部调试方法


 A.SignalProbe Incremental Routing   不改变目前的布线,引出内部信号到一个没使用的I/O上。


 B.SignalTap II Embedded Logic Analyzer 嵌入式逻辑分析仪,可以捕捉实时的内部信号。是最常用的调试工具。需要消耗一定的LE和M9K资源。使用时,如果想减少对原设计的影响和编译时间,可以反标原设计,使用增量编译模式。


C.Logic Analyzer Interface  等效于多路选择器,把多个内部信号通过少量的管脚输出。可以切换输出哪些信号而不用重新编译。适合于把信号引出给外部的逻辑分析仪。


D.In-System Memory Content Editor  在线修改内存或者常量的值。


E.In-System Sources and Probes  能对内部节点给一个简单的激励信号,然后捕获输出。


F.Virtual JTAG Megafunction  能对内部节点给一个简单的激励信号,然后捕获输出。和上面的方式有不同的地方。

文章评论0条评论)

登录后参与讨论
我要评论
0
7
关闭 站长推荐上一条 /2 下一条