新闻中心

EEPW首页 > 嵌入式系统 > 牛人业话 > FPGA研发之道(7)架构设计漫谈(二)稳定压倒一切

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

作者:时间:2014-10-23来源:网络收藏

  敏捷开发宣言中,有一条定律是“可以工作的软件胜过面面俱到的文档”。如何定义可可以工作的,这就是需求确定后架构设计的首要问题。而大部分看这句话的同志更喜欢后半句,用于作为不写文档的借口。

本文引用地址:http://www.eepw.com.cn/article/264350.htm

  的架构设计最首先可以确定就是外接接口,就像以前说的,稳定可靠的接口是成功的一半。接口的选择需要考虑几个问题。

  1, 有无外部成熟IP。一般来说,都提供大量的接口IP,采用这些IP能够提升研发进度,但不同IP在不同上需要不同license,这个需要通过代理商来获得(中国国情,软件是不卖钱的)。

  2, 自研接口IP,能否满足时间、进度、稳定性、及兼容性的要求。

  案例1设计一个网络接口在逻辑设计上相对简单,比如MII接口等同于4bit数据线的25MHZ样,而RGMII可以使用双沿125Mhz的采样专用的双沿采样寄存器完成(使用寄存器原语)。但是如何支持与不同PHY连接一个兼容性问题(所谓设计挑PHY的问题,这个问题后面详述)。

  案例2:CPU通过接口连接时,如果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甚至更高以上,动辄上百万,出现问题,不一定有硬件条件可调试。

  回到开头,如何定义“可用的”设计,稳定我想是前提,而接口的稳定性更是前提的前提。这里稳定包括,满负荷边界测试,量产、环境试验等一系列稳定可靠。而在架构设计中,就选择成熟的接口,能有效的避免后续流程中的问题,从源头保证产品的质量。

fpga相关文章:fpga是什么


汽车防盗机相关文章:汽车防盗机原理
频谱分析仪相关文章:频谱分析仪原理


关键词: FPGA ALTERA XILINX

评论


相关推荐

技术专区

关闭