集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 10500|回复: 14

FPGA的灵活性

[复制链接]
zhiweiqiang33 发表于 2016-12-6 12:02:15 | 显示全部楼层 |阅读模式
       如果说用一个词来描述FPGA的特性,灵活性肯定名列前茅。

       FPGA的灵活性在于:
  (一)I/O的灵活性,其可以通过其I/O组成各种接口与各种器件连接,并且支持不同的电气特性。
  (二)内部存储器灵活性,可以通过IP生成工具生成各种深度和宽度的RAM或者FIFO等。
  (三)逻辑的灵活性,内部逻辑通可生成的各种类型IP。

  对于I/O接口来说,FPGA的I/O可以支持不同类型的电平和驱动能力,各I/O未定义之前其地位平等,例如一个数据信号可将其约束在任意引脚,只要其电平符合连接的规范。因此硬件工程师基于这种认识,在PCB布线时,基于布线需要,便调整其布线的顺序,例如互换两个信号的位置。通常情况上,这种调整是没有任何问题的。但是随着FPGA的接口IP核硬核化的趋势,逐渐由很多的接口IP不能支持这种调整。例如对于较早的SDRAM或者DDRSDRAM来说,在xilinx和ALTERA的FPGA上,其数据、地址信号等都是可调的。但是随着DDR2,DDR3接口的出现,其IP接口,只能支持在某个BANK并且例化结束后直接生成相应的约束文件,而这些的改动将会导致布局布线的错误。另一些例子则是一些高速SERDES的组合。例如对于XAUI接口来说,其硬核IP(ALTERA)上就不支持4组SERDES的顺序互换,这将会影响其硬核FCS的编码。如果板级连接上与PHY的顺序与FPGA例化IP的约束不一致,则其硬核PCS就不能布局布线通过(软核FCS可以支持调整)。这种灵活性认识导致硬件板级互联的问题可谓屡见不鲜,特别是系统复杂度的上升,板级连线的增加,将会导致设计人员疏忽从而掉入“灵活性的陷阱”。解决此类问题的方法。包括(1)预评估,在设计之前就在FPGA上评估所需的接口的逻辑占用、约束位置、时钟需求等等,预先评估给系统设计提供相应的数据支撑和设计参考。(2)沟通,对于设计的变更,要进行有效沟通,不能使铁路警察,各管一段。(3)设计评审,虽然老套,但每个环节上的评审能有效减少掉入类似陷阱的几率。

  对于内部存储资源,大多数FPGA工程师就是拿来就用的状态。而缺少整体内部memory规划,一般来说,对于单端口、双端口、假双端口,各型芯片手册中都有明确的定义,例如xilinx的SPATAN3系列中最小RAM单元为18K。一个RAM例化最小单位就是18K。而新的器件中最小单位一般为9K。也就是说虽然工程师例化的较小的RAM,例如256*16.只有4K,但是其也占用一个最小单元,根据器件的不同而不同。而乱用双端口导致RAM资源的过分占用则是更常见的设计问题。FPGA内部对于单个RAM能够支持的真双端口是有限制的。举例说明,对于ALTERA的9K的存储单元一般支持512*18的双端口RAM。但如果是一个256*32的双端口则需要占用2个9K的存储RAM。也就是说,RAM器件的能力是有限的,这取决于RAM的外部互联线是有限的,以刚才说的256*32的双端口RAM来说,其需要数据线就是64根(双端口),对于单个RAM的连线资源来说,这是FPGA内部逻辑资源难以承受的。所以根据器件特定,合理规划内部memory资源,才能在最大限度的达到高效的利用。

  FPGA内部可以例化各型IP,基于IP的复用的可以大大增加研发的进度。但是各种IP的互联之间则需对IP的特性了解清楚,明确IP是否为业务所需的IP。有的IP和工程所需可能只是名称一致,但其功能却不是你想要的。例如网口IP在MII连接方式下,是用于FPGA连接PHY的操作。如果FPGA与CPU通过MII连接,现有的IP则难以满足需求。这是因为MII连接PHY其所有的时钟都是PHY提供的。CPU的设计也是与PHY连接,其时钟也有PHY提供。而如果二者连接,就变成都等着对方提供时钟,则就变成没有时钟。这种调试问题相对来说容易解决,不过在系统规划是,就需要对整个IP是否能够满足系统的设计要求,有着明确的判断。

  灵活性是FPGA最大的特性,在设计中避开那些灵活性的陷阱,才能从FPGA整体上提升设计能力,而不是做只会写Verilog的码农。毕竟FPGA设计不是软件设计,其最终要成为变成硬件承载的,每一行语句都要考虑其综合后的电路,才能真正领会FPGA设计的精髓。
辉煌 发表于 2016-12-30 16:35:08 | 显示全部楼层
FPGA的灵活性
fpga_wuhan 发表于 2017-1-3 14:11:40 | 显示全部楼层
FPGA的灵活性
wuli韬韬 发表于 2017-2-12 09:59:30 | 显示全部楼层
FPGA的灵活性,收下了,谢谢楼猪
 楼主| zhiweiqiang33 发表于 2017-2-12 16:02:54 | 显示全部楼层
核心问题就是速度高
星宇 发表于 2017-2-12 19:18:27 | 显示全部楼层
灵活性高,其应用也会越来越广
 楼主| zhiweiqiang33 发表于 2017-2-13 09:45:31 | 显示全部楼层
FPGA芯片可编程器件的重构性
芙蓉王 发表于 2017-2-13 17:38:03 | 显示全部楼层
                     灵活性高
4798345 发表于 2017-3-9 17:04:19 | 显示全部楼层
灵活性绝B高
4798345 发表于 2017-3-9 17:04:40 | 显示全部楼层
FPGA绝B很火
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2024-12-23 20:01 , Processed in 0.066815 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表