对FPGA加载速度提升的方法研究

2016-03-12 01:40:17潘吉华贵州航天天马机电科技有限公司贵州遵义563000
电子测试 2016年10期
关键词:单板寄存器时钟

潘吉华(贵州航天天马机电科技有限公司,贵州遵义,563000)

对FPGA加载速度提升的方法研究

潘吉华
(贵州航天天马机电科技有限公司,贵州遵义,563000)

由于当前FPGA技术呈现出迅猛发展的态势,这也就会存在更多的继承FPGA逻辑资源,相应也就会存在更大的配置FPGA文件。从这就能够了解到,在当前科学技术背景下,相应也就会存在更大的高端配置FPGA文件,相应也会使得极大的增加加载FPGA时间,导致启动单板时间缩短,必须提升FPGA加载速度。本文在此背景下,通过对FPGA加载过程的分析,提到方法能够将FPGA加载速度加快,另外凭借相应工程实践实施的证明,借助这一描述方法能够做到缩减加载速度为优化和之前的五分之一以下。

逻辑资源;FPGA技术;加载速度

根据当前相对来说使用比较广泛的Xilinx这种 FPGA芯片选择的加载模式往往是Slave SelectMAP (parallel,x8) 配置模式,将这一过程具体化,这也就是凭借着相应所具备的CPU当中的GPIO模拟localbus总线,从而可以做到有效的读写EPLD当中的城乡定义的寄存器,通常EPLD引脚上面映射部分寄存器的Bit,以便能够让这些引脚与相关FPGA配置引脚相连接,针对这样的情况,这也就能够凭借着CPU对EPLD的寄存器读写,从而可以将相关FPGA配置引脚进行控制,使得满足配置FPGA的目的。

根据对某个单板实施分析就能够发现,其中存在着多块的FPGA芯片,凭借这种方法的使用加载一块FPGA,往往从时间上必须达到三十秒左右的时间,那么如果是加载四块FPGA的时间则累积达到两分钟以上,要想做到将加载速度提升,这就应该做出一系列的分析讨论,从而提出三个层次优化。

1 一般方法加载FPGA时序

根据对FPGA实施加载的EPLD寄存器实施控制主要存在着两种类型,第一种类型是做好数据寄存器FPGA_CFGDATA_REG的配置,CPU能够做到将这一寄存器当中写入所有的配置数据,立足于此基础,这一寄存器的数值则是在所有配置时钟的上升写入FPGA。另外的一个寄存器则是做好寄存器FPGA_CFG_REG的控制配置,在这一寄存器当中存在着五个Bits。那么在这一单板当中,进行FPGA配置数据时序的加载则为以下两步:第一个步骤是通过CPU向FPGA_CFGDATA_REG写入配置数据;第二个步骤则是凭借着三次读写FPGA_CFG_REG,以便能够做到让FPGA_ CFGCLK从低到高再到底的顺序实施,导致FPGA_CFGCLK面临上升沿,这也就会导致相应的配置数据在FPGA_CFGCLK的上升沿写入FPGA。。从这就能够了解到,将一个配置数据写入到FPGA当中,这就应该让CPU针对EPLD寄存器执行三个读操作与四个写操作,其中总共耗费的时间大致是3018ns,型号XC6VLX240T的FPGA配置数据为9232444字节,则加载一块FPGA时间大约为3018ns*9232444=27.8s。在这里需要值得重点关注的问题是,全部耗费的时间数值则是出于仿真的环境下,凭借着TSC计数器进行测量获得,在进行编译代码的过程当中,选择出的是03优化。

2 自动产出配置时钟

根据以上所进行的分析就能够了解到,将一个配置数据写入到AFPGA,这必须借助于CPU对于EPLD寄存器执行三个读操作与四个写操作,在这一环节当中,后面的三次写操作与三次读操作知识为了产生一个配置时钟的上升沿。党在CPU将一个配置数据写入到EPLD的时候,EPLD可以自动产生出一个周期的配置时钟,那么一个配置数据价值只是需要CPU针对EPLD及寻求执行一个写操作就可以了,这也就可以将加载FPGA的时间最大限度的缩短。根据这样的思路,如果CPU写入一个数据到EPLD的时候,那么EPLD则是会做到一个配置时钟的自动产生。如果CPU写入数据到EPLD的时候,这也就会导致呈现一个WR的低脉冲,相应的时钟配置则是属于一个高脉冲,除此之外,还处于WR低脉冲的基础的后面,针对这样的情况,那么就能够考虑取反WR,另外还对其实施延时。根据对某单板进行分析,这也就会存在着四块FPGA,每个FPGA配置时钟FPGA_CFGCLK和片选FPGA_CFGCS保持着独立的状态,在进行数据的配置过程当中则会存在着八条数据线。要想在实际应用环节当中做到分开四个FPGA_CFGCLK,在这里必须做到把WR取反另外延时之后的信号与CFGCS取反后的信号相与。凭借着现实环节当中进行的测试结果现实,一个配置数据写入从时间上则是从3018ns缩短至633ns,加载XC6VLX240T型号的FPGA时的加载总时间则是从之前的27.8秒减少到5.85秒。

3 CPU连续写EPLD寄存器

从XC6VLX240T型号的FPGA角度进行分析就能够发现,那么所配置的数据字节数是9232444个,CPU则是做到在EPLD的同一个寄存器当中写入全部的配置数据,也就是FPGA_CFGDATA_ REG。那么在进行这一寄存器的写入的过程当中,CPU往往是率先将这一寄存器的地址写入,基于此基础随后将数据进行写入。通常来说,寄存器是存在着固定的地址,针对这样的情况,我们能够考虑只是在第一次写FPGA_CFGDATA_REG的过程当中提供相应的寄存器地址,EPLD寄存地址,随后CPU在进行这一寄存器的写入过程并不提供地址,只是在比较低的WR的过程当中,将有效数据提供给EPLD就行。如果使用这一方式,那么一块FPDA加载的时间是3.01秒,而一个配置数据加载的时间则是325ns。

4 FPDA配置数据压缩

根据对FPDA配置数据进行观察就能够了解到,大量的连续值存在于数据当中,比如连续1000个0x00。在这里则是将某一个单板下行FPDA当成例子,处于050d这一版本之下,那么在下行FPDA代码当中的0x00的连续个数超过512的就有31处之多,最多一处为连续1215388个字节0x00;在某单板上,下行FPGA连通性测试代码中,0x00连续个数超过512的也有271处之多,最多一处为2428942个字节0x00。根据这样的i情况,我们能够考虑通过CPU对某个数值连续个数进行统计,立足于此基础,向EPLD告诉这一数值与连续个数,那么EPLD则存在着不变的配置数据,那么随后就会呈现N个配置时钟,也就是将加载N个配置数据完成。凭借着以上所提到的方法优化实施测试之后,那么下行FPDA加载的时间则是减少至0.75秒。

根据相应的理论分析与实际测试,那么以上所提到的三个层次优化方法显得十分有效。通过对比以上的三种优化方式,其特征为:

第一种方式能够将CPU部分代码进行简化,仅仅只是做到把配置数据顺序写入到EPLD配置数据寄存器,EPLD能够增加自动检测WR,另外还会导致产生CCLK逻辑,相对来说,要想实现这一方式显得比较简单,提升加载速度则是大致五倍。

第二种方式则是立足于第一章方式的基础之上,稍微改动CPU代码,确保EPLD代码不变,相对来说实现这一方式也比较简单,可以进一步提升加载速度大致是两倍。

第三种方式比较大幅度的改动CPU与EPLD代码,除此之外,在进行FPDA版本的制作过程当中,应该进行相应的处理,相对来说实现这一方式比较复杂,能够进一步提升一倍至十五倍的加载速度。

[1]刘远华.极大规模集成电路测试技术发展[J].电子与封装.2014(07)

[2]王高峰,赵文生.三维集成电路中的关键技术问题综述[J].杭州电子科技大学学报.2014(02)

[3] 樊丽春,李群.模拟集成电路设计的自动化综合流程研究[J].科技资讯.2013(07)

Study on the method of loading speed of FPGA

Pan Jihua
(Guizhou Aerospace Tianma Electromechanical Technology Co.Ltd.Guizhou Zunyi 563000)

Due to the current FPGA technology showing a rapid development trend,it will also exist more inherited FPGA logical resources,accordingly there will be a larger configuration FPGA file.From this can be learned,under the background of the current science and technology,there will be more high-end FPGA configuration file,the corresponding will also make great FPGA loading time increases,resulting in start single board time relationship,it is necessary to improve the loading speed of FPGA.Under this background,this paper,through on FPGA loading process analysis,mentioned method can to accelerate FPGA loading speed,also with the corresponding engineering practice implementation of proof,with the aid of this method can do reduce the load speed optimization and before a fifth of the following.

logical resources;FPGA technology;loading speed

猜你喜欢
单板寄存器时钟
摄影作品
体育风尚(2023年24期)2024-01-26 05:59:00
摄影作品
体育风尚(2023年17期)2023-10-17 13:18:36
别样的“时钟”
古代的时钟
Lite寄存器模型的设计与实现
计算机应用(2020年5期)2020-06-07 07:06:44
单板U型场地滑雪关键技术动作及训练方法
冰雪运动(2019年3期)2019-08-23 08:10:32
分簇结构向量寄存器分配策略研究*
有趣的时钟
单板层积材带来的内部生产模式
国际木业(2016年4期)2017-01-15 13:54:25
时钟会开“花”