您的位置 首页 资料

根据FPGA的PCIe设备怎么才干满意PCIe设备的发动时刻的要求?

基于FPGA的PCIe设备如何才能满足PCIe设备的启动时间的要求?-根据PCIe的协议,当设备启动后,PCIe设备必须满足启动时间的要求,即上电后100ms内,完成PCIe设备的初始化。如果不能满足PCIe设备启动时间的要求,则lspci可能无法检测到基于FPGA的PCIe设备,需要reboot服务器。众所周知,FPGA芯片规模越来越大,那么如何做才能满足PCIe设备的启动时间的要求呢?

依据PCIe的协议,当设备发动后,PCIe设备有必要满意发动时刻的要求,即上电后100ms内,完结PCIe设备的初始化。假如不能满意PCIe设备发动时刻的要求,则lspci或许无法检测到根据FPGA的PCIe设备,需求reboot服务器。众所周知,FPGA芯片规划越来越大,那么怎么做才干满意PCIe设备的发动时刻的要求呢?

7系列FPGA常见的装备形式如下图所示:

根据FPGA的PCIe设备怎么才干满意PCIe设备的发动时刻的要求?

SelectMAP和Master/SlaveSerial是Xilinx前期的FPGA两类装备形式,SPI装备形式为SPI接口答应FPGA把规范的工业SPI Flash作为装备数据存储介质串行读取,同理BPI装备形式指FPGA能够从一个工业规范的并行NOR Flash读取装备数据。明显,关于单FPGA芯片的规划,BPI装备形式为最快速的装备FPGA的办法。在BPI装备形式下,装备时钟能够挑选内部CCLK或许外部EMCCLK。下面的公式为核算FPGA装备时刻的公式,从公式中能够看出,关于同类型的FPGA,bitstream size越小(7系列bitstream size 巨细见附录1),装备时钟的频率越高,数据线位宽越大,则装备时刻越短。

假如运用CCLK,装备速率最大为66Mhz,所以在高速装备FPGA的需求下,需求外部EMCCLK来满意装备时刻的要求。EMCCLK最大频率核算办法见下面的公式,而且不能超过DS181, DS182, 和 DS183文档中界说的最大值。在7系列中,常见的EMCCLK时钟频率为100Mhz。比方关于K7325T,经过查阅bitstream size的巨细为91,548,896 bits(87.3Mb),EMCCLK时钟频率为100Mhz,数据位宽为16,则装备时刻为57ms,能够满意PCIe设备发动时刻的要求。

在确认了选用BPI形式装备及外部装备时钟EMCCLK后,FPGA规划应该怎么做呢。首要有必要把EMCCLK引进到FPGA中,所以在逻辑顶层,要有EMCCLK的界说,如下所示:

Input emcclk;

在生成bitstream的时分,需求对EMCCLK做管脚束缚,如下所示:

set_property IOSTANDARD LVCMOS18[get_ports emcclk]

set_property PACKAGE_PIN R24[get_ports emcclk]

还需求在xdc中增加如下束缚,也能够在图形界面中完结,增加在xdc里能够削减图形界面的交互,进步规划功率。

set_propertyBITSTREAM.CONFIG.EXTMASTERCCLK_EN DIV-1 [current_design]

set_propertyBITSTREAM.CONFIG.BPI_SYNC_MODE TYPE2 [current_design]

假如经过上述公式的核算,发现依然不能满意100ms的要求,还能够测验如下办法处理装备FPGA的问题。第一种比较简单,生成bitstream的时分,能够挑选紧缩bitsteam的巨细,这个设置能够经过图形界面完结,也能够经过在xdc里增加Compress参数完成。第二种办法比较费事,能够运用Tandem ConfiguraTIon,详细请参阅xapp1179。经过公式的核算,以及上述几种办法的挑选,终究能够使规划满意PCIe设备发动时刻的要求。

附录:7系列FPGAbitstream size

根据FPGA的PCIe设备怎么才干满意PCIe设备的发动时刻的要求?

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/337393.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部