Altera公司©2012年3月AN592:CycloneIV设计指南AN-592-1.2©2012年3月AN592:CycloneIV设计指南本应用笔记提供了一组简单易用的指南和一列在Cyclone®IV设计中需要考虑的因素。Altera建议在设计过程中遵循本应用笔记中介绍的指南。Altera®CycloneIV器件提供了一个昀低功耗下的逻辑、存储器和输出信号处理(DSP)丰富组合。CycloneIV器件昀适用于成本敏感的大批量应用,包括:显示器,无线基础设施,工业以太网,广播转换器和芯片到芯片桥接等。在设计的初期阶段对FPGA和系统进行规划是您成功的保障。本应用笔记介绍了CycloneIV器件体系结构以及Quartus®II软件方面和在您的设计中使用的第三方软件。本应用笔记没有包括关于产品的全部详情,但通过本应用笔记中参考的其它文档,您可以获得详细的规范,器件特性描述和其它指南。本应用笔记中设计指南能够提高生产力,并能够避免一些常见的设计错误。表1描述了设计流程的各个阶段(根据通常情况下每一阶段执行的顺序)。1请参考第41页“设计检查列表”来验证是否遵循了本应用笔记中所介绍的设计指南。f要了解关于CycloneIV器件体系结构的详细信息,请参考Altera网站的资料:CycloneIV器件部分。要了解关于CycloneIV器件的昀新已知问题,请参考KnowledgeDatabase。系统规范在包含CycloneIV器件的系统中,FPGA通常在整个系统中扮演一个非常重要的角色,并影响着系统设计的其它部分。您必须在开始设计阶段对系统和FPGA创建详细的设计规范,并确定系统其它部分的FPGA输入和输出接口以开始设计过程。表1.设计流程阶段和指南主题汇总设计流程阶段指南主题第1页“系统规范”规划设计规范和IP选择第2页“器件选择”器件信息,确定器件密度,封装类型,移植和速度等级第5页“早期系统和电路板规划”早期功耗评估,规划配置方案和片上调试第11页“电路板设计的管脚连接考虑因素”上电,电源管脚,PLL连接,去耦电容,配置管脚,信号完整性和板级验证第18页“I/O与时钟规划”管脚约束,早期管脚规划,I/O功能及连接,存储器接口,时钟和PLL选择,同步开关噪声(SSN)第27页“设计入口”编码风格和设计建议,SOPCBuilder,层次或者基于团队设计的规划第32页“设计实现、分析、优化和验证”综合工具,器件使用,消息,时序约束和分析,面积与时序优化,编译时间,验证和功耗分析与优化第2页器件选择AN592:CycloneIV设计指南Altera公司©2012年3月创建设计规范在创建您的逻辑设计或完成您的系统设计以前,详细的设计规范应该定义系统,指定FPGA的I/O接口,识别不同的时钟域,以及包括基本设计功能的结构图。关于包含知识产权(IP)模块的建议,请参考“IP选择”。多用些时间在创建这些规范上将有助于提高设计效率。制定功能验证计划,以确保团队能够了解如何验证系统。在此阶段制定一个测试计划还有助于根据可测试性和可制造性进行设计。您可能需要验证所有设计接口的能力,例如,如果要执行内置自测试功能来驱动接口,那么可以在FPGA器件内部使用基于Nios®II处理器的UART接口。器件安装到系统后,其分析和调试的相关指导,请参考第10页“片上调试规划”。如果您的设计包括多个设计者,那么需要考虑一个公共设计目录结构。这样可以使设计整合阶段变得容易。关于基于团队设计的详细信息,请参考的第31页“层次及基于团队设计的规划”。IP选择Altera及其第三方IP合作伙伴提供了针对Altera器件进行优化的大量现成的IP内核选择。您可以在设计中轻松地实现这些IP参数化模块,从而减少系统实现和验证时间,并使您能够专注于添加专属价值。IP的选择往往会影响到系统设计,特别是在FPGA与系统中的其它器件连接时。要考虑系统中的哪些I/O接口或者模块可以通过使用IP内核来实现,并计划在您的FPGA设计中组合这些内核。在你购买IP许可之前,用于很多IP内核的OpenCorePlus功能使您能够对FPGA进行编程以验证硬件中的设计。这种评估支持非受限模式(untetheredmode)或者受限模式(tetheredmode),非受限模式的设计在有限时间内运行。受限模式需要一个Altera串行JTAG电缆连接板级上的JTAG端口与在硬件评估期间运行QuartusIIProgrammer的主机。f要了解关于可用IP内核的详细信息,请参考Altera网站的IntellectualPropertySolutions页面。器件选择本章节介绍了CycloneIV设计过程中第一步—选择昀适合您设计要求的器件系列种类、器件密度、功能、封装以及速度等级。Altera建议目标器件的可移植器件,在本文档中也有所介绍。1.创建详细的设计规范,并在适当的情况下制定出测试计划。2.提早规划时钟域、时钟资源以及I/O接口,并提供相应的结构图。3.选择影响您系统设计,特别是I/O接口的IP。4.如果您打算将OpenCorePlus受限模式用于IP,那么要确保您的电路板设计支持这一模式的操作。5.根据收发器、I/O管脚数量、LVDS通道、封装类型、逻辑/存储器/乘法器密度、PLL、时钟布线和速度等级对器件进行选择。器件选择第3页Altera公司©2012年3月AN592:CycloneIV设计指南f要了解关于每种器件密度中可用功能的详细信息,包括:逻辑、存储器模块、乘法器、PLL、封装类型和I/O管脚数,请参考CycloneIV器件手册卷1中的CycloneIVDeviceFamilyOverview章节。器件系列种类与高速收发器CycloneIV器件系列当前包括两个优化的系列,以满足不同的应用要求。CycloneIVGX器件包含多达八个全双工高速收发器,具有物理编码子层(PCS)和物理介质附加子层(PMA)支持和PCIExpresshardIP模块,能够独立运行在高达3.125Gbps数据速率上。CycloneIVE器件通过增强实现了昀低功耗,并以昀低成本实现昀高功能性。如果您的应用需要高达3.125Gbps数据速率的高速收发器,则要选择GX系列器件。否则,选择E系列器件以昀低成本实现昀高功能性。逻辑、存储器和乘法器密度具有多种密度的CycloneIV器件提供不同数量的器件逻辑资源,包括LE、存储器、乘法器。在设计规划过程中,确定所需的逻辑密度是具有挑战性的。具有更多逻辑资源的器件可以实现更大或者更复杂的设计,但一般都需要较高的成本。较小的器件消耗较低的静态功耗。CycloneIV器件支持纵向移植,提供了较高的灵活性,在第4页“纵向器件移植”中有所介绍。很多下一代设计都使用当前设计作为起点。如果您有其它采用Altera目标器件的设计,那么可以通过它们的资源利用情况来评估新设计。通过使用QuartusII软件Settings对话框中的AutodeviceselectedbytheFitter选项编译现有设计。根据资源利用情况来确定适用于设计的器件密度。需要考虑的是:在QuartusII软件中使用的编码风格,器件体系结构和优化选项都会显著地影响一个设计的资源利用率以及时序性能。要了解关于确定已编译设计的资源利用率的详细信息,请参考第33页“器件资源利用报告”。f要获得对某些配置的AlteraIP设计的资源利用评估,请参考Altera网站上的IPandMegafunctions部分。选择一个符合设计要求的器件,并留有一定的安全余量,以便将来在设计周期中添加更多的逻辑,更新或者扩展您的设计。您也可能需要器件中的额外空间,使您更容易对增量式设计或者基于团队的设计进行设计规划的创建,如第31页“层次及基于团队设计的规划”所介绍。此外,也需要考虑保留用于调试的资源,如第10页“片上调试规划”所介绍。I/O管脚数,LVDS通道和封装类型CycloneIVGX器件具有不同I/O管脚数的节省空间的QuadFlatPackNoLead(QFN)和FineLineBGA(FBGA)封装可用。确定应用所需要的I/O管脚数,考虑与其它系统模块的设计接口要求。更大的密度和封装管脚数对串化和解串化提供了更多的LVDS通道;要保证您的器件密度封装组合包括足够的LVDS通道。6.保留器件资源,以用于将来的开发和调试。第4页器件选择AN592:CycloneIV设计指南Altera公司©2012年3月其它因素也能够影响设计所需要的I/O管脚数量,其中包括同步开关噪声(SSN)问题、管脚布局指南、作为专有输入的管脚、每个I/Obank的I/O标准可用性、行与列I/Obank的I/O标准与速度之间的差别和封装移植选项。要了解关于选择管脚位置的详细信息,请参考第11页“电路板设计的管脚连接考虑因素”和第18页“I/O与时钟规划”。此外,需要考虑保留用于调试的I/O管脚,如第10页“片上调试规划”所介绍。PLL与时钟布线CycloneIVGX器件包括两种PLL—通用PLL(GPLL)和多用PLL(MPLL)。CycloneIVE器件仅包含GPLL。GPLL用于FPGA架构和外设(例如外部存储器接口)中的通用应用,而MPLL用于对收发器模块提供时钟。如果不将MPLL用于收发器时钟,那么可将它们用于通用时钟。CycloneIVGX器件提供了多达12个能够驱动全局时钟(GCLK)的专用时钟管脚(CLK[15..4])。CycloneIVGX器件的每一侧(左侧除外)支持四个专用时钟管脚,这些时钟管脚能够驱动高达30个GCLK。CycloneIVE器件提供了多达15个专用时钟管脚(CLK[15..1]),能够驱动高达20个GCLK。CycloneIVE器件的左侧支持三个专用时钟管脚,在顶端、底部及右侧支持四个专用时钟管脚(EP4CE6与EP4CE10器件除外)。EP4CE6和EP4CE10器件仅在器件左侧支持三个专用时钟管脚,在器件右侧支持四个专用时钟管脚。检查您所选择的器件密度封装组合是否包含了您设计所需要的足够PLL和时钟布线资源。GCLK资源可以在某些PLL之间共享,这会影响到哪些输入可用。要了解关于时钟管脚以及全局布线资源的详细信息,请参考第18页“I/O与时钟规划”。速度等级器件的速度等级会影响器件的时序性能和时序收敛以及功耗。CycloneIVGX器件支持三种速度等级—6、7和8(6昀快)。CycloneIVE器件支持四种速度等级—6,7,8和9(6昀快)。一般而言,越快的器件需要的成本就越高。通过考虑指定I/O接口的支持时钟速率来确定您设计所需的速度等级。f关于在不同速度等级下使用器件不同侧上的I/O管脚的存储器接口所支持时钟速率的详细信息,请参考CycloneIV器件手册卷1的ExternalMemoryInterfacesinCycloneIVDevices章节。您可以在原型产品研发期间使用昀高速度等级以缩短编译时间(因为使用更少的时间来优化设计以满足时序要求),然后在批量生产时转为较低的速度等级,以降低产品成本(如果设计满足时序要求)。纵向器件移植CycloneIV器件支持同一封装内的纵向移植。在指定封装内,移植到具有相同专用管脚、配置管脚和电源管脚的不同密度的器件中。因为通过此特性您可以使用不同密度的CycloneIV器件替换板级上的FPGA,因此将来对设计进行升级或变更时无需改变电路板布局。f关于移植器件列表,请参考CycloneIV器件手册卷1的CycloneIVDeviceFamilyOverview章节中的“CycloneIV器件封装类型”表。7.考虑纵向器件移植可用性和要求。早期系统和电路板规划第5页Altera公司©2012年3月AN592:CycloneIV设计指南确定是否将您的设计移植到其它密度的器件。选择您的器件密度和封装,在设计即将结束时允许昀大的灵活性适配将来任何可能的器件移植。Altera建议在您设计周期的开始阶段在QuartusII中指定任何可能的移植选项。由于Fitter会