x
x

FPGA研发之道(7)架构设计漫谈(二)稳定压倒一切

发布时间:2016-2-29 14:10    发布者:designapp
关键词: FPGA , ALTERA , XILINX
  敏捷开发宣言中,有一条定律是“可以工作的软件胜过面面俱到的文档”。如何定义可可以工作的,这就是需求确定后架构设计的首要问题。而大部分看这句话的同志更喜欢后半句,用于作为不写文档的借口。
  FPGA的架构设计最首先可以确定就是外接接口,就像以前说的,稳定可靠的接口是成功的一半。接口的选择需要考虑几个问题。
  1, 有无外部成熟IP。一般来说,ALTERA和XILINX都提供大量的接口IP,采用这些IP能够提升研发进度,但不同IP在不同FPGA上需要不同license,这个需要通过代理商来获得(中国国情,软件是不卖钱的)。
  2, 自研接口IP,能否满足时间、进度、稳定性、及兼容性的要求。
  案例1设计一个网络接口在逻辑设计上相对简单,比如MII接口等同于4bit数据线的25MHZ样,而RGMII可以使用双沿125Mhz的采样专用的双沿采样寄存器完成(使用寄存器原语)。但是如何支持与不同PHY连接一个兼容性问题(所谓设计挑PHY的问题,这个问题后面详述)。
  案例2:CPU通过接口连接FPGA时,如果CPU此时软复位,则有管脚会上拉,此时如果该管脚连接FPGA接口是控制信号且控制信号高电平有效,则此时FPGA逻辑必然出错。同样FPGA在配置时,管教输出高阻,如此时CPU上电且板级电路管脚上拉,则同样会导致CPU采样出错(误操作的问题)。
  不能只是考虑编写verilog代码仿真能对就行,接口设计应该站在系统的角度来看问题,问题不是孤立的,还是互相联系。
  设计中,如果需要存储大量数据,就需要在外部设计外部存储器,这是因为FPGA内部RAM的数量是有限的。是采用SRAM、DDR2、DDR3。这就需要综合考虑存储数据大大小,因为SRAM的容量也有限,但是其接口简单,实现简单方便,且读取延时较小。DDR2、DDR3的容量较大,接口复杂,但FPGA内部有成熟IP可用,但是读取的延时较大,从发起读信号到读回数据一般在十几个时钟周期以上。如果对数据时延有要求,需要上一次存储数据作为下一次使用,且数据量不太大(几百K到几兆),则SRAM是较好的选择。而其他方面DDR2/DDR3是较好的选择。为什么不用SDRAM或者DDR。这是因为设计完毕,采购会告诉你,市场上这样老的芯片基本都停产了。
  FPGA接口在设计选择的原则就是:能力够用,简单易用。特别值得一提的是高速SERDES接口,最好使用厂商给的参考设计,有硬核则不选择软核,测试稳定后,一定要专门的位置约束,避免后面添加的逻辑拥挤后影响到接口时序,也可避免接口设计人员与最终的逻辑设计人员扯皮(不添加过多逻辑,接口是好用的)。一个分析高速SERDES的示波器,采样频率至少20G甚至更高以上,动辄上百万,出现问题,不一定有硬件条件可调试。
  回到开头,如何定义“可用的”设计,稳定我想是前提,而接口的稳定性更是前提的前提。这里稳定包括,满负荷边界测试,量产、环境试验等一系列稳定可靠。而在架构设计中,就选择成熟的接口,能有效的避免后续流程中的问题,从源头保证产品的质量。
                               
               
本文地址:https://www.eechina.com/thread-161445-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

  • Microchip视频专区
  • EtherCAT®和Microchip LAN925x从站控制器介绍培训教程
  • MPLAB®模拟设计器——在线电源解决方案,加速设计
  • 让您的模拟设计灵感,化为触手可及的现实
  • 深度体验Microchip自动辅助驾驶应用方案——2025巡展开启报名!
  • 贸泽电子(Mouser)专区

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表