tag 标签: stratix

相关博文
  • 热度 15
    2015-11-4 14:58
    1559 次阅读|
    0 个评论
    “开发成本居高不下,半导体经济面临越来越大的ROI(投资回报率)挑战,高级ASIC/ASSP开发很难获得ROI,而FPGA的技术优势每一代都在继续扩大。”这是Altera公司全球产品营销资深总监Patrick Dorsey在今年Altera技术大会北京站的开场白。 FPGA技术优势随着工艺节点的演进在不断扩大? 对于高级ASIC/ASSP开发而言,目前面临着两难的抉择:停留在老节点上,竞争力下降,难以赢得设计;发展到高级节点,却会带来更高的ROI,特别是在28nm之后,ROI的挑战会进一步加剧。 面临先进工艺延伸所带来的挑战,FPGA有哪些优势?Partrick介绍说,首先在工艺节点上FPGA一直处于领先地位——目前主流的ASIC设计是65nm,而Altera的FPGA已经开始向10nm演进,工艺上的优势弥补了以往FPGA在成本、功耗和性能上与ASIC的差距。而另一方面,FPGA产品在设计理念上的进化和创新,也为FPGA带来更强的竞争力,其中最重要的就是SoC FPGA产品的出现。 Altera在SoC FPGA中集成了处理器、DSP以及其他的硬件单元,使其兼具通用处理器的灵活性和ASIC/ASSP的高效率,从而能够适应更多应用开发的需要。Partrick表示,这也是Altera不断向新市场领域渗透的信心所在。 迄今为止,Altera引以为傲的第十代最新的FPGA和SoC产品,包括采用台积电55nm工艺的低成本非易失FPGA MAX 10,采用台积电20nm工艺的中端器件Arria 10,以及采用Intel 14nm工艺的高端器件Stratix 10。 其中,Stratix 10作为Altera史上最先进的产品系列,采用了全新的HyperFlex架构,该架构在所有的布线段上增加了超级寄存器,减少了关键通路,使得速度的提升达到2倍以上。 其次,工艺上的提升是Stratix 10的另一个特别之处。除了在前道工艺上采用了Intel最先进的14nm三栅极工艺以外,Stratix 10还在封装上采用了异构3D SiP工艺。该工艺基于Intel的嵌入式多管芯互联桥接(EMIB)技术,在一个封装中,可以通过EMIB与更多的互联块(Connectivity Tiles)连接,让器件具有灵活性,能够不断扩展功能,快速适应市场的需要。此外,Stratix 10集成了安全管理器(SDM),具备了物理不可克隆功能,支持用户开发可定制的多层安全解决方案。通过诸多的创新,Stratix 10实现了内核性能提升2倍,主频达到1GHz,功耗降低70%,同时在安全性上也有更突出的表现。 直观上来讲,Stratix 10能带来哪些性能上的提升?Partrick举例说,在数据中心应用中,以往需要5片Stratix V FPGA实现的性能,现在由1片Stratix 10就可以实现,而且功耗方面可以从120W降低到44W,优势非常明显。 FPGA如何满足工业市场的需求与挑战? 全球工业市场近年来持续增长,根据市场研究显示,半导体公司在该市场的成长幅度约为7%,而Altera平均成长幅度为10%,高出行业平均水平。 Altera公司亚太区工业、医疗和测试业务部首席经理兼市场开发经理 Elmer Chiang表示,全球工业市场成长的动力来自三大因素:首先是效能利用率,这要求在节能减排、降低成本方面继续努力;其次增长的重点来自生产制造中生产力的提升,这包括产品的可靠度、稳定度,产线的运作时间和生命周期;第三就是工业物联网,在工业领域现在更强调M2M,即机器对机器的物联网。 在该领域,FPGA面临的挑战主要来自四方面,首先用户最关注的是产品的生命周期是不是能够长达15年甚至20年以上;其次,用户在新的项目中,不希望改变原有的硬件设计,希望通过可编程的设计提升产品效能;第三,方案的整体成本要降低;第四,客户希望不断缩短开发周期,加快产品面世速度。 面对上述需求,Altera首先要求自身器件的可靠性;其次,注重开发平台的易用性,同时能够满足软件工程师和算法工程师不同的需求;第三,提供真正接近市场需要的参考设计。 Elmer Chiang以自动化系统为例,谈到了Altera所看到的一些发展趋势。他表示,自动化系统的核心部分首先是PLC,PLC模块集成的越多,功能越强,系统也就越高端;其次,PLC与HMI相互配合,现在很多PLC开始集成HMI,HMI也内含PLC,这是一个明确的市场趋势;第三,要支持很多工业以太网协议,从而实现无缝的互联;第四,要在云端把信息进行加密,实现功能安全。 Altera已经可以提供符合上述要求的单芯片解决方案,并与意大利的第三方公司合作开发出面向工业4.0的PLC设计。由于人工成本提升,工厂大量使用机器人是未来的趋势,因此机器人也是未来智能工厂中最关键的技术。 Altera基于Cyclone V SoC单芯片就可以实现四轴控制,它兼容各项主要联网协议,同时具备高安全功能。目前,Altera还在针对工业自动化的发展趋势,持续提供更加全面、完整的参考设计。 【 分页导航 】 第2页:披露与Intel未来的几种可能 《电子技术设计》网站版权所有,谢绝转载 披露与Intel未来的几种可能 今年6月1日,Intel收购Altera的消息正式公布。一位是IT领域的巨头,一位是FPGA行业的翘楚,业界对于二者联姻之后的发展也是充满了无限的猜想。此行,Patrick对诸多焦点话题都一一进行了回应。 ◆焦点一:Altera还会继续找台积电代工吗? Patrick表示,Altera和台积电之间的关系非常密切且牢固,它为Altera生产的各系列产品一直在市场中持续供货,Altera现在的业绩99%甚至100%都与台积电相关。Intel收购Altera之后,一方面还会继续Altera现有的业务模式,另一方面,也会与Altera共同创新,加强双方的合作。以目前Altera的第十代产品为例,既有选择台积电工艺的,也有选择Intel工艺的,不同的产品能够满足不同的市场需求。尽管Intel有自己的晶圆厂,但是未来,Altera仍会继续与包括台积电在内的其他晶圆厂进行接触,做出满足市场要求的最佳选择。 ◆焦点二:与Intel在技术层面怎么结合? Patrick以Stratix 10系列的3D SiP集成技术为例解释说,与一般的中介层方法相比,通过使用Intel的专用嵌入式多管芯互联桥接(EMIB,Embedded Multi-die Interconnect Bridge)技术,进一步提高了性能,降低了复杂度和成本,增强了信号完整性。太多具体的细节目前还不便公开,但是通过上面这张图也能够窥探未来可能的发展方向。 ◆焦点三:Intel还会支持Altera选用ARM内核吗? 除了Intel的工艺技术,Stratix 10的成功同样离不开ARM Cortex-A53处理器的支持。自2013年Altera首次发售28nm SoC器件开始,就采用了双核ARM Cortex-A9处理器,这款高端的Stratix 10中更是采用了先进的四核Cortex-A53。 这是Altera发展史上值得玩味的一代产品,集成ARM内核,结合了Intel的工艺。ARM进入高端通信、数据中心的意图路人皆知。未来,Altera的产品中同时结合Intel和ARM技术还会被Intel允许吗?对此,Patrick的态度非常肯定,他表示Intel会继续支持Altera发展ARM处理器以及未来的FPGA架构。当初决定要在产品中集成ARM内核对Altera来说是非常重大的战略决定,因为一旦决定这样的做法,就意味着要将DSP、FPGA以及ARM内核等进行整合。这要求所有的开发工具是一致的,成为使用C语言的软件开发环境,让软件人员轻松地进行编程。 ◆焦点四:再谈与Xilinx的竞争。 Altera与Xilinx的竞争,一直都是业界津津乐道的话题,而随着Altera被Intel收购,话题又有了新的探讨方向。 首先,Xilinx于今年9月份公布其市场份额,据Xilinx的数据显示,低端市场从40%涨到51%,中端更是从1%迅猛增至54%。而从两个最新节点的产品来看,其中,28nm产品已占据全球62%以上的份额,20nm产品则超过了70%。 正是这份数据引起了Altera很大的倾诉欲。Patrick表示,从历史上看,Xilinx其实是中端市场的后来者,而Altera当时已经在中端市场占据先机。就20nm节点的技术而言,Xilinx推出的是中端产品,而Altera推出的是高端产品。Patrick还补充,2014年,Altera的市场份额扩大了2%左右,收入增长了12%,高于整个半导体行业的平均增速。通过这组数据,他再次重申了对于Altera的信心。他强调,Altera的创新目前主要集中于优化中端和高端产品,中端产品主要与台积电合作,高端主要与Intel合作,未来,Altera与Xilinx的竞争仍会持续下去,相信双方针对不同的市场会有不同的优化方式。 第二,Altera与Xilinx在SoC设计中都不约而同的加入了ARM内核,双方的差异或者设计理念有什么不同?Patrick表示,Altera希望SoC无所不在,通过ARM内核实现通用的处理模块来满足用户的一般需求。此外,在SoC的开发工具方面,Altera采用了ARM的开发工具,包括debugger、编译工具等,将ARM开发工具与Altera自己的硬件工具进行了很好的结合,当用户确定某个debug的时候,可以直接从处理器一直追踪到架构,追踪到FPGA,从而找到问题来源。通过将硬件和软件工具很好的结合,从而方便开发者使用。他强调,Altera是业界第一个把OpenCL开放计算语言带入FPGA领域的,让ARM内核和FPGA能够在单一芯片上实现很好的协作。 第三,与Xilinx在数据中心各自为政吗? Intel收购Altera,也成为IBM与Xilinx在数据中心展开深度合作的催化剂,双方日前更是联合多家核心成员成立第二代分布式计算联盟,意图通过开放的资源力量直逼Intel在数据中心的霸主地位。对此,Altera怎么看? Patrick表示,Intel在该领域95%的市场份额还是使他们充满能量,二者合并以后这样的市场地位进一步得到了增强。他透露,到2016年,1/3的云服务器当中都要有FPGA,Altera的优势是已经有95%的市场基础便于他们进行扩展。数据中心是一个增长很快的领域,如果FPGA能在这个市场获得成就,就会更加激励创新,反过来又会继续加强FPGA在市场中的地位。从这方面来看,二者的竞争对整个FPGA市场都是有好处的。目前Altera最主要决的就是如何将FPGA与Intel的CPU更好的结合起来,快速扩大竞争优势。
  • 热度 22
    2015-8-10 16:55
    1131 次阅读|
    0 个评论
      Altera公司宣布,Dini集团在其业界容量最大的单板FPGA原型引擎中采用了具有340K逻辑单元(LE)的Stratix® III EP3SL340 FPGA。DN7020K10采用了1,760引脚封装的20片EP3SL340 FPGA,每个器件提供1,104个用户I/O,容量等价于5千万ASIC逻辑门。客户设计无线通信、网络和图形处理应用等定制ASIC时,可以利用这一超大容量原型电路板来验证自己的逻辑设计,在接近实时时钟速率的环境下运行设计。   Dini集团总裁Mike Dini评论说:“Altera Stratix III FPGA是目前容量最大、速度最快的FPGA,这正是我们客户所需要的。我们的DN7020K10采用了20片EP3SL340 FPGA,DN7006K10PCIe-8采用了6片EP3SL340 FPGA,ASIC逻辑门容量达到了前所未有的水平,为大容量逻辑门定制ASIC开发人员提供了最快的实施方案。”   大规模ASIC设计人员现在能够以接近最终产品的速率来运行其设计。DN7020K10包含了轻松实现原型设计需要的所有特性:   到达每片FPGA的全局时钟网络   6个DDR2 SODIMM存储器插槽   宽范围子卡(ARM内核块、A/D-D/A、PCIe等)   USB和闪存配置          Altera资深高端产品市场总监David Greenfield说:“Altera和Dini集团密切合作,确保其ASIC原型解决方案在性能和密度上达到最优。我们的Stratix III FPGA实现了前所未有的逻辑容量和片内存储器资源,是基于FPGA原型引擎的理想解决方案。”   Altera Stratix III系列高端FPGA是业界功耗最低、性能最好、密度最大的65-nm器件。Stratix III EP3SL340具有340K LE,支持接口速率超过1067 Mbps的DDR3存储器,并支持Altera创新的可编程功耗技术。这一高密度器件同时提供17 Mbits的嵌入式存储器和575个18x18乘法器,对设计人员而言,利用这些资源能够实现前所未有的功能。
  • 热度 25
    2013-12-12 10:01
    2107 次阅读|
    2 个评论
    StratixII之EDA及学术开发功能描述 1.概述 同Stratix/Cyclone。 2.逻辑单元(Logic Cell)描述 在以前的架构中(比如Cyclone),单个LE包括一个组合逻辑和寄存器。对于Stratix II来说,组合逻辑和寄存器被单独分开到两个部分,原语创建的时候也不象Cyclone和Stratix那样,而是通过lcell_comb(组合逻辑部分)和lcell_ff(flip-flop/register)分别创建。这和CycloneII的情形有点类似。注意这里的flip-flop和register的意思可以互换。 图1显示了StratixII寄存器逻辑单元完整功能框图,它有八个输入,分别是datain、adatasdata、clk、ena、sload、sclr、aload和aclr,同时只有一个输出regout。 图1:Stratix II寄存器逻辑单元完整功能框图 图2显示了Stratixii组合逻辑单元完整的功能框图,它有八个输入端口,分别是dataa、datab、datac、datad、datae、dataf、sharein和cin,以及四个输出端口,分别是shareout、cout、sumout和combout。 图2:Stratix II组合逻辑单元完整功能框图 3.坐标系统和位置约束 图3:StratixII坐标系统 图3显示了Stratix II器件底层坐标系统,坐标标注和Stratix/Cyclone类似,这里不赘述。只是从CycloneII开始,根据上述LE的结构分析,可以直接单独给lcell_comb或者lcell_ff约束位置了。这在FPGA TDC设计中延时链锁定有一定好处,同时增加了具体的工作量,因为你必须分别约束组合逻辑阵列和寄存器阵列。 可以看到M-RAM占了很大一块,一个基本坐标单元是一个LAB的位置大小。那么一个M-RAM占据的位置相当于3x4=12个LAB的面积。每个LAB有(x,y)坐标,而其内部的lcell_comb和lcell_ff又有子坐标,比如lcell_comb_X2_Y5_N4。ALTERA的意思是不建议这样按数字从上到下约束组合逻辑单元或者寄存器单元的位置,因为这样常常给fitter来麻烦,最好的办法是仅仅约束LAB的位置。 4.布线延迟与布线距离以及布线规则的关系 略,同CII 5.Netlist Recommendations 略,同II。但是由于逻辑单元端口有差别,所以表1的内容和CII有区别。 表1: 6.综合概览和优化 6.1 ALM和LAB的相关描述 第二节描述了Stratix II器件使用的基本逻辑单元,Quartus II开发软件将这些逻辑单元打包进两种结构,即ALM和LAB。这两种结构除了单独逻辑单元自己的限制外还有一些额外的限制。后面我们将讨论这些限制规则。 一个ALM(Adaptive Logic Module)包括最多2个lcell_comb模块和2个lcell_ff模块,如图4所示。Note that not all positions in an ALM need necessarily be populated with a logic cell for theALM to be valid. 图4:一个ALM中的逻辑单元(Logic Cell) Stratix II的一个LAB中有8个ALM,所以一个LAB中有32个逻辑单元(Logic cell)(16个lcell_comb和16个lcell_ff)。如图5所示,32个单元组成了一个LAB,灰色的为lcell_comb,白色的为lcell_ff,每个虚线框表示一个ALM,如前所述,位置信息显示是ALM的可能位置信息,用户逻辑电路并不一定在fit后会使用到。 注意图5中灰色所示的所有lcell_comb位置标号都是偶数,而白色所示的lcell_ff位置标号都是奇数,这些信息用户在ChipPlanner或者资源属性编辑器中看得到。如果我们要约束lcell_comb和lcell_ff位置,那么如图3所示找到这些逻辑单元所在的LAB坐标,然后确定该逻辑单元的位置,比如将一个lcell_comb进行位置约束如lcell_comb_X4_Y6_N0,就是将其约束位于图5所示ALM#1中,将一个lcell_ff进行位置约束如lcell_ff_X4_Y6_N7,就是将其约束位于图5所示的ALM#2中的第二个寄存器。 图5:Stratix II器件中的LAB 6.2 测量综合面积质量 因为组合逻辑单元(lcell_comb)可以以不同的方式组合起来,形成ALM,所以测量综合面积不是单单象统计创建的逻辑单元那样简单。从面积角度来看,当fitter争取最大密度努力时,综合将创建最少的ALM和LAB。我们来看一个很简单例子,80个6输入lcell_comb单元可能要消耗80个ALM(因为一个ALM只有在满足LUT掩码要求的情况下才可能实现两个6输入函数),而100个4输入lcell_comb仅消耗50个ALM(因为一个ALM总是包含2个四输入函数)。从电路面积角度来说,消耗最小面积的综合效果是最好的。 在Altera提供的quartus.ini文件中,包含这样的信息“fit_pack_for_density=on”和“fit_report_lab_usage _stats=on”,这些都将允许精确的面积估算。当这些变量使用的时候,Quartus II软件将试图通过Packing逻辑单元(Logic Cell)进ALM和LAB来达到最小化面积,特别是同时可以接受Fmax有很小幅降低的时候。Quartus II软件同时会给用户打印以下信息: Info: Number of LABs at the end of packing: 100 Info: Number of LEs at the end of packing: 1600 来说明当它fit电路的时候,最小的ALM和LAB使用量。当然当综合算法中的最大电路速度被执行,那么Quratus II软件运行的时候不带上述变量。 最好的办法是在工程的qsf文件中添加以下的编译设置: set_global_assignment –name INI_VARS "fit_pack_for_density=on;fit_report_lab_usage_ stats=on” 注意上述约束行中的引号中不能包含任何空格。 6.3获得好的面积及性能建议 通常来说,最好是使用6输入函数来减少电路深度从而提高电路的性能。在那些不影响电路深度的情况最好是使用6输入函数,这些情况有,如果6输入函数能节约多于两个5或者更少输入函数,或者ALM的掩码支持2个6输入函数。 6.4获得好的Fitting结果建议 1. 使用lcell_ff的.sclr应当慎重,Cyclone II架构中一个LAB最多只有一个.sclr 。不恰当地使用这个端口,会大幅降低逻辑资源利用率、fitting通过的可能性以及电路速度。举个例子,过去常常在一个逻辑单元里使用.sclr 端口来产生一个5输入函数,如此在实现这个电路的时候可以减少逻辑单元的数量,因此从一个综合角度来看这也许是一个好主意。但是,一旦这个lcell_ff使用了.sclr,那么这个lcell_ff所在的LAB一般无法将其它寄存器逻辑单元打包(Pack)进来,除非这些寄存器逻辑单元都使用同样的.sclr值或者它们的synch_mode=off。这可能在最坏情况下导致逻辑密度大量减少,因为只有一个lcell_ff可以被放置在一个LAB中,而不是16个。所以无原则地使用.sclr会导致非常坏的fitter结果和电路速度,因为fitter在这种情况将lcell_ff组合进LAB的灵活性非常小。 .sclr应该只有在用户电路中实现同步清零的时候才被使用,因为在这种情况下同步清零信号一般产生非常大的扇出。因此,fitter一般不会过分约束同步清零信号。.sclr端口也可以审慎地用于实现其他中等扇出信号,用来减少逻辑单元的使用量。 2.         上述原则同样适用于.sload 端口。同步加载应当会产生高扇出。 3.         时钟使能(.ena)使用起来相对有点宽松,因为每个LAB允许有三个不同的.ena值,这比只有一个.ena值大大提高了fitter应对多.ena值情况的能力。不过,过多的时钟使能(.ena)使得获取高逻辑利用率非常困难。我们发现电路如果使用成千上万的时钟使能,APEX通常往往逻辑利用率只能达到90%。更谨慎地使用时钟使能,常常能达到99%的逻辑利用率。因此,注意限制不同.ena信号的数量(尤其是低扇出信号)还是值得的。Stratix II比之前器件多出一个时钟使能端口,所以相对要宽松。 4.         到LAB的总的布线信号是44个(不包括cin和LAB内逻辑单元生成的信号),所以为了更好的布通性,最好使用不超过38个不同的信号布线到同一个一个LAB(不包括clk和aclr,它们可以使用全局资源)。 5.         Fitter将会在需要的时候将lcell_comb单元和lcell_ff单元“打包”一起放入一个ALM中。如此,综合阶段没有必要将二者放在一起。然而,需要注意的是单元创建的时候不要对fitter打包lcell_comb和lcell_ff进同一个LE产生不利影响。 6.         如图4所示的ALM总共包括2个lcell_comb和2个lecll_ff,表2显示了除了逻辑单元自己的限制外的lcell_comb单元组合到一个ALM的一些限制。该表并没与显示出每一种可能的lcell_comb组合,详细的情况可以查看Stratix II的LCELL所见即所得相关文档。 表2:聚合lcell_comb进入ALM的限制情况 Lcell_comb类型选择没有意义,只有当使用6输入函数有明确的优势的时候可以采用,比如需要减少电路深度或者电路面积的时候可以选择使用6输入函数。如果没有严格限制一定要使用6输入函数,最好使用更小输入函数,因为如上表所示,输入端口越少,限制也越少。 7.逻辑单元(Logic Cell)规则 7.1 对单个寄存器逻辑单元(lcell_ff)进行约束 1.如果clk端口连接,那么regout端口必须连接 2.如果sclr端口连接,那么clk端口必须连接 3.如果sload端口连接,那么clk端口必须连接 4.如果ena端口连接,那么clk端口必须连接 7.2 对单个组合逻辑单元(lcell_comb)进行约束 1.Cin端口不连接,要连接必须连接到GND或者连接到另一个lcell_comb的cout端口。如果一个lcell_comb的cin连接到另一个lcell_comb的cout端口,那么该lcell_comb使用的时候其SUMOUT或COUT一定要受到cin端口的影响。 2.Cout端口必须根据上一条连接,或者保持不连接 3.Sharein端口可能被连接只有当cin被连接且该lecll_comb的参数shared_arith = on。 4.如果sharein连接,它可以连接到GND或者必须由驱动本本lcell_comb的cin端口的lcell_comb的shareout驱动 5.Shareout端口只有在cout端口连接的时候才能被连接 6.当shareout端口连接的时候,它必须驱动被本lcell_comb的cout驱动的同一个lcell_comb的sharein端口 7.如果cout/cin连接,但是sharein/shareout没有连接,那么只有dataa,datab,datac,datad和dataf输入端口可以使用。 8.如果参数shared_arith =  on(即sharein/shareout连接),那么只有dataa,datab,datac,datad和dataf输入端口可以使用,dataf端口只影响该lcell_comb的组合逻辑输出,即combout。 9.在一个lcell_comb中,如果一个输入连接有信号,但是该信号依据LUT掩码没有影响至少一个输出,那么这是违法的,作为规则,Quartus II软件将Disconnect这个输入。 10.LUT掩码依赖一个没有任何信号连接的输入端口也是不合法的。 8.ALM和LAB规则 本节讨论一下综合器应当遵守的规则,依据这些规则产生的逻辑单元才具有电气特性,逻辑单元组合进LE和LAB的时候才能形成合法的LAB可布通性。 8.1约束LABs的进位链 进位链概念省略。如图3所示的连续相连的灰色(偶数)lcell_comb可以组成进位链。长进位链跨多个LAB的时候必须从上一个LAB直接跨入紧邻的下一个LAB,只能从上到下连接。需要注意的是StratixII中的进位链连接时,sharein和shareout的是否连接是可选的。相对比较以前器件结构,在StratixII架构中创建一个非法的进位链是不可能的,因为lcell_comb和lcell_ff无法合并进同一个LE中。 进位链的起始位置总是固定在一些特定位置的carryin/sharein,fitter可以分配一个进位链从一个LAB的子坐标(sub-location)0或者16开始(因为只有这些子坐标位置才有进位链输入的tie-off。笔者注:什么是“tie-off”)。如果这对于某个特殊设计是一个很大的限制,那么fitter可以插入一个lecll_comb单元来为进位链创建一个固定的carryin/sharein作为该链的起始。这个增加的lcell_comb的所有其他输入端口都未连接(或者都连接到VCC或GND),而只连接carryout端口(shareout端口也可能连接)到另一个lcell_comb的carryin端口。使用这种技术,fitter可以将一个进位链放置在任何LAB子坐标。 长进位链跨多个LAB的时候必须从上一个LAB直接跨入紧邻的下一个LAB,只能从上到下连接。 Stratix II的ALM可以实现8输入的算术功能,如果某个使用了整个LAB中8个ALM的链很可能使得这个LAB没有足够的输入端口来实现该链。在这些情况下,fitter会自动将这个链分成小链,并将这些小链只fit进半个LAB。这些小链将使用下面介绍到的“early exit”和“late entry”模块完成LAB之间的连接。 被放置在LAB子坐标0、4、8、和12位置的链使得其可以从这个LAB的中间离开并从下一个LAB起始的子坐标0继续。这就是所谓的“early exit”模式。链从一个LAB末尾(即子坐标30)离开,使得其有可能从下一个LAB的中间(即子坐标16)进入。这就是所谓的“late entry”模式。Stratix II器件的LAB列只能交替地支持上述模式中的一种,即某个LAB支持哪种模式取决于该LAB的列位置。图6显示了上述内容。 fitter除了使用上述early exit和late entry模式来打开进位链以外,还会使用通用布线资源(即不使用专用的carryin和carryout连接)在LAB之间连接链。如果fitter这样做了,软件会给出一个相关警告信息。 图6:early exit和late entry跨LAB的进位链 8.2约束进位链到ALM 进位链意味着一组相邻的ALM被打包在一起,这样就需要满意的ALM设置。比如,进位链的第一个和第二个lcell_comb必须位于同一个ALM中,第三个和第四个必须位于下一个ALM中,等等。图7显示了ALM中的这些进位单元。 图7:聚合进位链进ALM 图7所示的进位链相邻进位单元必须遵守下列ALM合法规则: 1.它们必须处于相同的共享算术模式(即两个进位单元要么sharein/shareout都连接,要么都不连接)。需要注意的是链中不同ALM的LUT可以毫无限制地配置成shared或者non-shared模式,只要同一个ALM中的LUT配置成相同的模式即可。 2.连接到lcell_comb端口dataa、datab和两个lcell_comb的datac的不同信号数目不能多于4个。这是因为这三个端口中的两个必须由这两个lcell_comb共享。个人觉得应该是dataa和datab在一个ALM中是由其中的两个组合逻辑单元共享,而datac应该上下有不同的datac端口。 图8显示了一个遵守规则2和一个不遵守的例子。合法的ALM有信号s1、s2、s3和s6连接到ALM的两个lcell_comb的端口dataa、datab和datac上,而非法的ALM有s1、s2、s3、s6、s7和s8六个信号连接到ALM的两个lcell_comb的端口dataa、datab和datac上。 图8:规则2合法和非法实例 8.3约束LAB-wide信号 好多连接到逻辑单元的信号叫做“LAB-wide”信号,这些信号单独为LAB产生并可以由LAB内的逻辑共享。因此,在一个LAB布置的逻辑单元如果需要过多的LAB-wide信号将是非法的。 上一节讨论的进位链,虽然进位自己不会有错,当进位链中每个逻辑单元要驱动寄存器单元的时候,这些进位链结构常常会导致比较差的fit结果。我们最好来看这样一个例子,假如一个长度为6的进位链(横跨3个ALM),进位链每个逻辑单元驱动一个寄存器,同时每个寄存器的使用不一样的时钟信号,那么进位链所在的这个LAB最多只能放入这些寄存器中的两个,因为每个LAB最多只支持两个不同的时钟信号。因此,这只会带来比较次优的布局结构,如图9所示。 在Stratix II器件中,连接到lcell_ff的clk,ena,aclr,aload,sclr和sload端口的信号都属于LAB-wide信号。一个lcell_ff端口连接到一个正常信号都消耗一个LAB-wide信号,同一个信号被取反后在LAB中使用也额外消耗一个LAB-wide信号。所以如果LAB中的一个lcell_ff使用clock,而!clock被另一个lcell_ff使用,那么将消耗两个LAB-wide信号。逻辑单元上连接到VCC和GND的端口也需要LAB-wide线。还有一种情况是逻辑单元某些端口处于悬空状态,这种unconnect情况可能需要LAB-wide线,也可能不需要,这取决于端口以及LE的配置。表3显示了lecll_ff中悬空端口的处理情况。 图9:过多LAB-wide被使用的时候地布局影响 表3:端口未连接时是否被认为“used” 下列都是表3定义的重要的规则,用于统计被认为“used”但是却未连接信号的寄存器端口。 1.所有lecll_ff上的.clk和.ena信号都成对地组成LE时钟,如图10所示。在任何LAB中,可以有不超过2个不同的时钟对。 l  同一个.clk信号和2个不同的.ena信号可认为是两个不同的寄存器时钟对 l  同一个.ena信号和2个不同的.clk信号可认为是两个不同的寄存器时钟对 图10:形成lcell_ff时钟的时钟和时钟使能组合 2.最多只有两个不同的时钟信号可以连接到clk端口 表4显示了一个时钟加时钟使能如何创建时钟对的例子。该例显示了三个的寄存器使用的三组时钟和三组时钟使能,clk(#1)和ena(#1)属于register Cell(#1),clk(#2)和ena(#2)属于register Cell(#2)。没有连接的.ena端口被配置为VCC,如表3指定那样。A,B,C、D,E和F对应信号网络。 表4:时钟和时钟使能如何组成lcell_ff时钟的例子(所有单元的.regout连接) 3. 最多2个不同的信号可能被连接到.aclr端口。(从表2,未连接的.aclr将会认为是连接到GND) 4. 最多只有一个不同的信号可以连接到aload端口 5. 如果任何LAB中的一个lcell_ff使用了alod端口,那么: l  该LAB中所有使用aload的lcell_ff必须使用和第一个lcell_ff相同的aclr l  该LAB中所有未使用aload的lcell_ff必须使用相同的aclr 6. 最多只有一个不同信号能被连接到.sload端口,最多只有一个不同信号能被连接到.sclr端口 l  一个lcell_ff使用sload和(或)sclr只能被放置在一个使用相同sload和(或)sclr或者不使用sload和(或)sclr的LAB中。 表4显示了sload和sclr组合是否被认为“used”的情况,表5则显示了sload和sclr组合被合法布局到一个LAB的例子。两个表中的A和B都是指非GND和非VCC的信号网络。 表5:当sload和sclr被认为“used”的例子 表6:lcell_ff使用sload和sclr的合法和非法组合 注:表5和表6中A和B均为非VCC和非GND的信号网络。 8.3LAB控制信号可布通性约束 这里有一些规则可以确保LAB内所有必需的控制信号能被布局进这个LAB。任何连接到逻辑单元端口的信号网络(非VCC和非GND),如果其未使用全局布线资源,那么它布进LAB,需要占用LAB-wide输入端口。一个信号如果在LAB内正和负都被用到,那么该信号必须被布线两次。如果一个逻辑单元的一个端口连接(或者说可以如表3那样认为连接)到VCC或者GND信号,那么它可能需要也可能不需要占用LAB-wide输入端口,这取决于这个端口是否存在LAB-wide tie-off。表7显示了lcell_ff的哪些端口连接到一个信号或者连接(或者说可以如表3那样认为连接)到VCC或者GND时需要LAB-wide输入端口的情况。 表7:VCC/GND需要布线进LAB的情况(*为不同于Stratix) 以下是一些重要规则,依据表7定义VCC/GND需要布线资源。 1.下面这些不同信号最大数目只能是6个 l  Clk(非全局) l  Ena l  Aload l  Sload l  Aclr(非全局) l  Sclr 2. 下面这些不同信号最大数目只能是5个 l  Ena l  Aload l  Sload l  Aclr(非全局) l  Sclr 3. 下列信号最多只能有3个不同:This is due to the fact that sload steals a non-global clk line. l  ena l  aload 4. 下列信号最多只能有2个不同:This is due to the fact that sload steals a non-global clk line. l  clk(非全局) l  sload 5. 下列信号不同组合最多不超过3,这是因为非时钟和非aclr全局信号必须通过普通LAB线布进LAB,同时连接全局走线和LAB线是有限制的。 l  Ena(global) l  aload(global) l  sload(global) l  sclr(global)
  • 热度 29
    2013-10-3 21:48
    1688 次阅读|
    8 个评论
    最近在搞了个64通道的LVDS,采用Altera 的Stratix IV,哎呦,把大家搞残了~ 先不说其他的,Altera的LVDS只支持10位解串,采用Serdes,若超过10bit,则采用DDIO +快慢时钟,进行解串,我们采用的ADC是12bit的LVDS,对于64CH啊,由于Altera采用的是DDIO +LC进行搭建,保证几个通道很容易,保证64CH,确实恼火,最后,采用每个通道进行DELAY的约束,太麻烦了。 Altera 这方面太不给力了,Xilinx的ISerdes都支持12bit很容易啊~ 在此给大家提个醒,对于LVDS10BIT,考虑省钱,采用altera的是可以;若对于LVDS12BIT,通道数很多的情况下,采用xilinx的。 血的教训,差点项目延期了,光LVDS这块,调试搞了半个月
  • 热度 23
    2012-7-26 20:36
    3807 次阅读|
    1 个评论
    最近为了给几个新同学介绍实验室所使用的两个开发板——StratixIII开发板和DEII-CycloneIV实验箱,所以整理了下关于两个板子FPGA的配置过程,从中自己也获益很多。两款芯片的配置方式算是代表了如今Altera主流的方式吧。 首先介绍下CycloneIV实验箱。 实验箱提供了简单的配置流程,首先简单介绍下CycloneIV的配置部分电路。 图中圈起部分及为FPGA配置部分电路图解,其中重点是其使用的配置芯片为EPCS64,这也是最为常用的配置方式。 首先对FPGA可以通过USB Blaster然后以JTAG模式进行下载,如下图: 图中有个拨码开关,其中有两个可选端,一个是RUN,一个是PROG,简单的理解就是运行和程序配置。这里我比较认同RUN的含义,老师们给我们讲的时候都把将程序之间“烧”到FPGA也称作配置。但我个人觉得,"运行“这个词很贴切,就好像我们是把一个文件写入到FPGA在其中运行一样。这个过程很简单,每个工程编译完成后都会生成一个sof文件,将它烧到FPGA里面就行了。 可是这样的配置每次掉电后都需要重新烧写,所以这里就需要配置芯片EPCS64来起作用了。我们把程序烧写到它里面,每次上电后,就自动由它来对FPGA进行配置,这样就不需要我们一次次的上电烧写了。 下面介绍下EPCS64的烧写了。手册中给出了它的AS模式配置: 如图,将拨码开关拨至PROG端,就可以用PC对EPCS64配置芯片进行烧写了。 1、先生成一个pof配置文件。在File下选择Convert Programming File,这部分操作后面也会提到。 2、将拨码开关拨至PROG,在Programmer中将模式选择为AS mode,选择pof文件。 3、Start,开始烧写。这里可以发现,过程较sof文件的烧写要漫长得多。 这里需要注意的是,其实上面图中圈起部分是很容易引起误解的。EPCS64要对FPGA进行配置时,拨码开关仍然需要拨回到RUN端,可以理解成,只是换成了配置芯片把程序烧写到FPGA中"运行”罢了。 下面介绍另一种对EPCS64的配置方式,我们希望通过JTAG模式来对EPCS64进行配置。我们暂且称它为jic文件模式。这里我们可以简单把EPCS64当做一个Flash存储器,既然是存储器那肯定可以利用FPGA来对它进行写入操作。这种模式下,就是通过JTAG对FPGA进行写入操作,然后让FPGA来对配置芯片进行写入操作。 首先,还是通过Convert Programming File来生成一个jic文件。 我们可以看到在下面Input files to convert设置的时候,其中比之前的pof文件生成多了一个Flash Loader,也就是说,这里选的FPGA就是用来Loader配置芯片的。 生成了jic文件后,在Programmer中选择JTAG模式下载就行了,如下图: 这里也有整个过程的体现,上图的下面也显示了整个烧写过程的简单示意图。 Start之后,就完成了我们对EPCS64的烧写了。其中并不需要再去拨动拨码开关了,我们只需一直在RUN下面用JTAG就可以对两者进行烧录了。 这里出现了个小插曲,上面过程都是在10.0里面完成的,在使用Quartus9.0的时候一直不能成功,如下图: 中途报错了,提示: 对于这个问题一直纠结了很久,后来无奈得认为是Quartus版本bug,对比两个版本Programmer里面可以看到,9.0下面Checksum部分都为0,可见它无法检测。只要换到10.0就行了,后来发现,其实别的版本也都可以,唯独9.0不行……甚是不解。 另外在网上看到很多朋友说不要勾取Verify和Blank-Check的选项可以下载成功,可是我们试过之后虽然可以下载成功,但是却无法配置FPGA,程序烧进去没有任何反应,所以还是觉得Quartus版本的问题。
相关资源
  • 所需E币: 1
    时间: 2022-7-23 15:58
    大小: 1.81MB
    上传者: Argent
    MEPV+600Faceplate-AOIsv2forStratix8000Switches
  • 所需E币: 1
    时间: 2022-7-23 15:55
    大小: 3.31MB
    上传者: Argent
    ME-SEFaceplate-AOIsv2forStratix8000Switches
  • 所需E币: 1
    时间: 2022-7-23 13:23
    大小: 1.78MB
    上传者: Argent
    MEFaceplate-AOIforStratix6000forPanelViewPlus600
  • 所需E币: 1
    时间: 2022-7-23 13:23
    大小: 2.79MB
    上传者: Argent
    ME-SEFaceplate-AOIsforStratix6000Switches
  • 所需E币: 1
    时间: 2022-7-23 12:40
    大小: 1.82MB
    上传者: Argent
    MEFaceplate-AOIforStratix8000forPanelViewPlus600
  • 所需E币: 1
    时间: 2022-7-23 12:39
    大小: 3.02MB
    上传者: Argent
    ME-SEFaceplate-AOIsforStratix8000Switches
  • 所需E币: 3
    时间: 2022-1-5 23:58
    大小: 214.25KB
    上传者: czd886
    基于Stratix系列FPGA的快速并行FIR滤波器在钢板表面缺陷图像预处理中的应用
  • 所需E币: 2
    时间: 2022-1-2 16:32
    大小: 165.58KB
    上传者: czd886
    Stratix+Ⅱ+FPGA+应用电路设计
  • 所需E币: 5
    时间: 2019-12-28 19:25
    大小: 2.79MB
    上传者: 2iot
    本应用手册为您提供了设计铁氧体磁珠滤波器网络来为Stratix®IVFPGA隔离共用电源层面的一些指南。FPGA技术的发展使数据速率提高到了10Gbps以上。为了达到这种数据速率,FPGA厂商一般要求提供多个隔离的数字和模拟电源层,以单独为FPGA的内核,I/O,敏感的锁相环(PLL)和千兆收发器模块供电。因此,电路板上电源分配系统的复杂性大大增加。由于电路板空间、层数以及成本预算均有限,电路板设计人员发现在这些系统限制内设计其FPGA电路板越来越困难。对于StratixIVGX和GT系列千兆位收发器FPGA系列,一种简化电源设计的方法是,在电源共用层面之间保持充分高频隔离的同时,要能够共用类似的电压。常用的策略是使用铁氧体磁珠。本应用手册介绍了如何正确选择磁珠以及一些设计方面的考虑,例如:反谐振、避免电感-电容(LC)谐振振荡、传输阻抗分析和直流IR压降最小化,同时还要满足去耦的目标阻抗要求。另外,还介绍了某些情况下使用PCB布局结构来替代作为电感滤波器元件的铁氧体磁珠的另一种方法。PCB结构与铁氧体磁珠的性能对比仿真结果,可用于评估验证PCB结构滤波器网络的效果,同时可以了解其诸多局限性。AN583:利用铁氧体磁珠为AlteraFPGA设计电源隔离滤波器本应用手册为您提供了设计铁氧体磁珠滤波器网络来为StratixIVFPGA隔离共用电源层面的一些指南。FPGA技术的发展使数据速率提高到了10Gbps以上。为了达到这种数据速率,FPGA厂商一般要求提供多个隔离的数字和模拟电源层,以单独为FPGA的内核,I/O,敏感的锁相环(PLL)和千兆收发器模块供电。因此,电路板上电源分配系统的复杂性大大增加。由于电路板空间、层数以及成本预算均有限,电路板设计人员发现在这些系统限制内设计其FPGA电路板越来越困难。对于StratixIVGX和GT系列千兆位收发器FPGA系列,一种简化电源设计的方法是,在电源共用层面之间保持充分高频隔离的同时,要能够共用类似的电压。常用的策略是使用铁氧体磁珠。本应用手册介绍了如何正确选择磁珠以及一些设计方面的考虑,例如:反谐振、避免电感-电容(LC)谐振振荡、传输阻抗分析和直流IR压降最小化,同时还要满足去耦的目标阻抗要求。另外,还介绍了某些情况下使用PCB布局结构来替代作为电感滤波器元件的铁氧体磁珠的另一种方法。PCB结构与铁氧体磁珠的性能对比仿真结果,可用于评估验证PCB结构滤波器网络的效果,同时可以了解其诸多局限性。铁氧体磁珠的选择一般而言,铁氧体磁珠分为两类:高Q铁氧体磁珠――一般用作谐振器,不得用于电源隔离电路中。低Q铁氧体磁珠――也称作吸收铁氧体磁珠,损耗较大,可构成较好的电源滤波器网络,因为设计它们的目的是吸收高频……
  • 所需E币: 3
    时间: 2019-12-28 21:38
    大小: 338.52KB
    上传者: 238112554_qq
    针对Stratix系列FPGA系统电源需求情况,给出了一套基于Intersil高效三输出同步补偿稳定器的"单片"电源解决方案.根据实验数据分析与验证,该方案具有较强的可行性,且在功耗、效率及稳定性等方面都优于传统的"多片"电源方案SfrafI∥FPGA电源方案设计与验证木周毅,王绍雷,赵进创(广西大学计算机与电子信息学院,广西南宁530004)摘要:针对Stratix系列FPGA系统电源需求情况,给出了一套基于Intersil高效三输出同步补偿稳定器的“单片”电源解决方案。根据实验数据分析与验证,该方案具有较强的可行性,且在功耗、效率及稳定性等方面都优于传统的“多片”电源方案。关键词:FPGA同步补偿异相PWM软启动S雠mx系列FPGA是A1tera公司推出的面向高带宽支持多种单端和差分I,O标准,如LⅥT11.、LvCMOS、系统的可编程逻辑器件。Stratix器件具备强大的内核性SSlm、HSTL、LVDS、LvPECL、PCML等,能够实现在不同能、存储能力以及灵活的设计架构,从而为日益复杂的接口电平和协议下的高速数据传输。根据所选择的I/O系统设计争取了更短的设计周期和更快的上市时间。标准,yo∞可以设定为1.5V、1.8V、2.5V或3.3V…。I/0St枷x器件支持多种I/O标准和高速接口,提供了完善标准可按照FPGA中的块区(BANK)独立设置,因此对的时钟管理功能,有多达12个嵌入式锁相环(PIJL)和40于单一的FPGA可能会存在多个I,O电压……
  • 所需E币: 5
    时间: 2019-12-25 17:34
    大小: 572.17KB
    上传者: 16245458_qq.com
    StratixIIIFPGASignalIntegrity……
  • 所需E币: 3
    时间: 2019-12-25 17:33
    大小: 287.79KB
    上传者: 238112554_qq
    DesignSecurityinStratixIIIDevices……
  • 所需E币: 4
    时间: 2019-12-25 17:33
    大小: 1.73MB
    上传者: wsu_w_hotmail.com
    StratixIIIProgrammablePower……
  • 所需E币: 4
    时间: 2019-12-25 17:33
    大小: 800.84KB
    上传者: 2iot
    RobustSEUMitigationWithStratixIIIFPGAs……
  • 所需E币: 4
    时间: 2019-12-25 17:32
    大小: 544.2KB
    上传者: quw431979_163.com
    StratixGXDevelopmentBoardDataSheet……
  • 所需E币: 4
    时间: 2019-12-25 17:31
    大小: 953.43KB
    上传者: quw431979_163.com
    UsingStratixGXTransceiversforCPRI……
  • 所需E币: 3
    时间: 2019-12-25 17:31
    大小: 591.52KB
    上传者: 16245458_qq.com
    PowerPlayEarlyPowerEstimatorUserGuideforStratix,StratixGX&CycloneFPGAs……
  • 所需E币: 4
    时间: 2019-12-25 17:30
    大小: 287.59KB
    上传者: givh79_163.com
    StratixIIGX&StratixGXBrochure……
  • 所需E币: 4
    时间: 2019-12-25 16:48
    大小: 925.54KB
    上传者: 2iot
    Altera器件选型指南,比较全面的好东东!目录1、MAX7000系列器件………………………………………………………………………………………….12、MAX3000A系列器件………………………………………………………………………………………..23、MAXII系列器件………………………………………………………………………………..………..34、Cyclone系列器件………………………………………………………………………………………….45、CycloneII系列器件………………………………………………………………………………………66、Stratix系列器件………………………………………………………………………………………….87、StratixGX系列器件…………………………………………………………………………………….108、StratixII系列器件…………………………………………………………………………………….139、HardCopyII结构化ASIC……………………………………………………………………..…………1610、其它系列器件……………………………………………………………………………………………..1711、配置器件……………………………………………………………………………………………………1912、下载电缆…………………………………………………………………………………………………..1913、开发软件…………………………………………………………………………………………………..2014、IPCORE………………………………………………………………………………………
  • 所需E币: 5
    时间: 2019-12-25 16:35
    大小: 925.54KB
    上传者: 二不过三
    altera器件选型手册目录1、MAX7000系列器件………………………………………………………………………………………….12、MAX3000A系列器件………………………………………………………………………………………..23、MAXII系列器件………………………………………………………………………………..………..34、Cyclone系列器件………………………………………………………………………………………….45、CycloneII系列器件………………………………………………………………………………………66、Stratix系列器件………………………………………………………………………………………….87、StratixGX系列器件…………………………………………………………………………………….108、StratixII系列器件…………………………………………………………………………………….139、HardCopyII结构化ASIC……………………………………………………………………..…………1610、其它系列器件……………………………………………………………………………………………..1711、配置器件……………………………………………………………………………………………………1912、下载电缆…………………………………………………………………………………………………..1913、开发软件…………………………………………………………………………………………………..2014、IPCORE………………………………………………………………………………………