聪明文档网

聪明文档网

最新最全的文档下载
当前位置: 首页> 一种PCIe接口的高速电子存储板设计

一种PCIe接口的高速电子存储板设计

时间:2018-10-05 09:09:05    下载该word文档

一种PCIe接口的高速电子存储板设计

  摘 要为了满足高速数字图像摄像机的视频数据实时存储的需求,本文给出了一种PCIe接口的高速电子存储板的设计方法;该存储板采用Nand Flash作为存储介质,单板最大存储容量为1TB,具有与数字摄像机相连的Base CameraLink数据接口,最大写入速度可以达到2.25Gbps

  【关键词】PCIe接口 Nand Flash存储芯片 CameraLink接口 FPGA

  随着科学技术的发展,摄像传感技术备广泛应用于军事、工业和民用领域;并且对摄相机的分辨率和帧频的要求越来越高,使得图像信息更加的丰富,但伴随而来的是数据率的大幅度提高。

  为了满足大容量视频数据传输的需要,近些年来,区别与传统的PAL制式或NTSC制式的模拟视频传输接口的数字视频摄像机得到了迅速的发展,并开发出了LVDSChannel LinkCamera LinkGigabit Ethernet等接口;上述各种接口较好的满足了数字摄像机视频数据传输的要求;但是,上述数字视频摄像机大容量视频数据的存储和怎样输入到PC平台的处理系统,同样也变得越来越重要。

  如何能把产生较大视频数据量的数字视频摄像机的视频信息完成采集、存储和送到PC平台进行处理,是目前图像处理工程项目中常常要解决的一个问题;例如,在某项目中,使用的数字相机分辨率为1024×1024像素,帧频120/秒,8/10/12Base CameraLink输出,视频数据需存储并由PC平台进行处理;由此,可以计算出如果设置摄相机输出设置为12位的话,其数据将达到1.44Gbps;根据上述情况,就迫切需要设计一种具有较大存储容量,并具有PC平台常用接口的存储板满足该功能设计需求。

  1 高速电子存储板的设计构思

  如图1所示,高速电子存储板包含如下4个部分:

  1.1 PCIe接口

  与PC平台进行数据交换的接口,符合 PCI工业计算机总线标准,是目前PC机平台常用和主流的外设接口。

  1.2 Base CameralLink接口

  与数字视频摄像机的接口,符合美国自动化工业协会AIA制定、修改和发布CameraLink协议标准。

  1.3 NAND Flash存储阵列

  64Nand Flash存储芯片组成,最大存储空间达到1TB,以满足大容量数据高速存储的要求。

  1.4 FPGA模块

  存储板的控制核心,完成接收前端数字CCD相机的数据接收和缓冲;Flash芯片的读写、擦除、逻辑控制以及PCIe总线控制。

  高速电子存储板可以完成具有Base CameraLink接口的CCD图像传感器视频信息的输入和采集;并且能够根据需要,完成采集后视频信息的存储和实时向PC平台通过PCIe接口传输;存储的视频信息可以被PC平台进行管理和使用。

  2 逻辑功能的实现

  考虑到板卡设计需要尽可能的多增加存储容量,因此,以1FPGA作为存储板的控制核心,其选取综合考虑了速度、I/O管脚数量、片内数据存储容量等综合因素,选用了Xilinx Virtex5系列XC5VLX155T FPGA芯片进行设计;Virtex5系列作为第二代高级芯片组合模块(ASMBLTM 列式架构,除最先进的高性能逻辑结构外,其还内置大量IP硬核系统级模块、可支持多达330000个逻辑单元及多达17个外部模拟输入通道、具有多速率FIFO支持逻辑、也可以通过JTAG TAP或内部结构访问系统监控器。

  FPGA逻辑功能模块主要包括PCIe接口模块、CameralLink接口模块和NAND Flash阵列控制模块3个部分,后续将继续介绍FPGA芯片的各个逻辑功能模块的实现。

  3 CameralLink接口模块

  CameraLink协议是一个工业高速串口数据和连接协议,它是各公司达成的一种协议,由美国自动化工业协会AIA制定、修改和发布,其目的是简化图像采集接口,方便高速图像传感器和采集系统的连接。

  CameraLink接口有三种配置方式,即基本(Base)配置、中档(Medium)配置、全速(Full)配置;主要是解决数据传输量的问题,这为不同速度的相机提供了合适的配置和连接方式;其中,基本(Base)配置的有效数据带宽(时钟75MHz时),可达1.8Gbps,完全可以满足系统使用数字摄相机最大1.44Gbps数据量的需要,由此,高速电子存储系统与摄相机连接的数据接口采用Base CameraLink的形式。

  CameraLink接口是基于LVDSLow Voltage Differential Signaling,低电压差分信号)标准,LVDS通过约350 mV的低幅度共模差分信号来传输信息,其传输速率可以达到自100 Mbit/s甚至超过1 Gbit/s,且其信号连线较少、带宽较高、抗干扰能力较强。

  由于选择的Xilinx Virtex5系列XC5VLX155T FPGA芯片具有强大的功能,并且支持高速LVDS接口,因此,在本设计中,就可以不再采用相关芯片专门进行LVDS电平和LVTTL电平信号的转换,而直接采用FPGA芯片完成该接口模块的设计,减少了存储板的元器件数量,减少了PCB空间占用。

  图2所示为Base CameraLink接口设计图,FPGA通过接口控制完成图像传感器工作状态和工作参数控制,图像传感器将视频数据发送给FPGAFPGA通过LVDS接收器完成12路数据的校验并将串行LVDS数据转换为并行数据,并完成图像数据顺序整理,最后根据CameraLink接口要求完成视频数据格式调整。

  4 NAND Flash存储阵列单元   高速电子存储板的存储介质选择了Nand Flash存储芯片, 对比Nor Flash存储芯片,Nand Flash存储芯片具有容量更大、写入速度更快、成本更低等优点。

  高速电子存储板Nand Flash芯片采用Samsung公司的K9系列Nand Flash存储芯片,该芯片在同样的封装形式和控制接口下,主流的存储空间有16GBit32GBit64GBit128GBit等规格,在6U机箱规格的存储板上,可以轻松配置64Nand Flash存储芯片进行视频信息的存储,最大容量可以达到1024GB,即1T的存储容量。

  实际设计中,根据数据存储的需要,选用K9HCG08UIM Nand Flash存储芯片,该存储芯片单片容量达到8GB,从而整个高速电子存储板实际的存储容量为512GB;该芯片由CE1CE2R/B1R/B2信号线控制选择;基于页进行读写、基于块进行擦除。

  如图3所示,高速电子存储板的存储阵列由64Nand Flash组成,所有的存储芯片分为16组,每组为4片。每组4Nand Flash芯片共用1套控制信号线,整个阵列对应了由XC5VLX155T FPGA芯片设计组成的16套控制总线,同组的4片芯片并联成32位的数据宽度,这样做有如下优点;一是可以有效提高Nand Flash芯片写入/读取的带宽,解决单片Nand Flash芯片写入/读取速度较慢的问题;二是可以与PCI总线标准定义的32位、64位数据宽度相匹配,提高数据的读写效率。

  图4给出了Nand Flash芯片典型的写入时序图。

  由图4可以看出,Nand Flash芯片的tWC最小为25nstADL最小为75nstWB100nstPROG典型时间为200us,芯片写入按照页进行操作,典型的持续写入速率为5MB/s,一组内4片并行写入的速率为20MB/s160Mbit/s)。

  为了进一步提高电子存储板的写入速度,在板上的16Nand Flash芯片之间,可以采取组间流水线写入的方式;由于该项目前端数字摄像机数据量为1.44Gbits/s,可以计算出需要的最小流水深度为:

  (1

  高速电子存储板的流水设计成16级,理论上达到的最大写入速度可以到2.25 Gbits/s,完全可以满足项目要求并有较大的设计余量。

  但采用组间流水方式虽然大大提高了高速电子存储板的写入速度,并且使控制流程极大的简化,但也引出了数据存储在阵列中不连续和Nand Flash芯片坏块管理的问题;借助XC5VLX155T FPGA芯片强大的逻辑控制、FIF0存储器资源和加载相应文件管理系统,可以解决该不足;但通过综合权衡考虑,在设计中,采取牺牲一些存储空间的方法,即在存储阵列的Nand Flash出现坏块的地址上,所有的16组芯片中该地址均不再使用该地址空间,以保证16级流水写入的数据保持同步,并易于管理;可以较大简化设计的难度。

  5 PCIe接口设计

  PCIPeripheral Component Interconnection)总线是“PCI总线工业计算机制造商组织” 推出的一种工业计算机总线标准,PCI-E是近年来推出的PCI总线的第3IO技术,能够提供更高的带宽,且软件具有向后兼容性,完全兼容PCI,现有的操作系统和驱动程序无需任何修改就可以在PCIe系统上运行,被越来越广泛的应用在PC机平台的IO设备互连。

  PCIe总线支持支持双向传输模式和数据分通道传输模式,支持x1x4x8x16等模式,x1模式下单向传输带宽可达到250MByte/s,双向传输带宽更能够达到500MByte/s;完全可以满足设计的存储板数据读取到PC平台的速度的要求。

  实现PCIe总线通常采用如下2种方式:

  5.1 采用专用接口芯片

  例如PLX公司的系列接口芯片,该类型芯片可以实现完整的PCIe主控模块和目标模块接口功能,将复杂的PCI-E总线转换为相对简单的本地总线,用户可以专注于应用层面的开发,降低了开发难度。

  5.2 采用IP Core资源

  分为软核和硬核两类,现阶段,随着主流的FPGADSP发展,不少高端芯片均在片内集成了基于PCIe协议的IP硬核,这样可以高度集成,节约空间,并加快开发速度。

  5.3 自行设计

  使用FPGA自行设计,同样可以实现高度集成化,其缺点是需要详细了解PCI总线协议,增大了开发的难度。

  考虑到高速电子存储板需要尽可能多的增加存储芯片的数量,并且所选用的XC5VLX155T FPGA芯片本身具有PCIe协议的IP Core;所以,本文设计中,采取基于FPGA芯片IP Core资源完成PCI-E总线开发,这样,提高了存储板的集成度,减少了存储板的元器件数量,减少了PCB空间占用。

  PCIe的接口模块框图如图5所示;具体的各个功能模块的实现和调试,就不再逐一详细叙述,可以参考相关文献[1][12][13]

  6 驱动程序的开发

  高速电子存储板需要开发PCIe的驱动程序,才能完成与计算机之间的连接;在Windows系列的操作环境下,微软推出了一种设备驱动程序模型-WDMWDM的分层结构有利于系统的设计、扩展和驱动程序的开发。使用Driver Studio来进行WDM模式的PCIe软件开发,具体方法如下:

  (1)用Driver Works编写驱动程序代码;

  (2)用Driver MonitorSoft ICE调试驱动程序。

  Driver WorksWindows DDK的类进行了很好的封装,因此在开发WDM驱动程序时,DriverWorks向导产生驱动框架,开发人员只需要选择合适的例程即可较快的开发出驱动程序。   一个WDM驱动程序的功能模块一般由初始化、创建和删除设备、即插即用处理、访问硬件、处理Win32 I/O及控制请求、调用其他驱动程序等部分组成。

  7 结束语

  PCIe接口的高速电子存储板的设计,成功解决了高速数字摄像机与计算机系统之间数据存储、读取的问题,并具有高速、体积小、重量轻、抗冲击、振动性能好的特点,可以实现较为恶劣环境下的特定应用,如果能更好的解决存储数据管理方面的不足,将具有良好的使用前景。

  参考文献

  [1]田玉敏,等译.BUDRUK RANDERSON DSHANLEY T.PCI Express系统体系结构标准教材[M].北京:电子工业出版社,2005.

  [2]李宁,汪骏发.基于Camera Link的高速数据采集系统[J].红外,2005267):31-37.

  [3]黄晓敏.LVDS驱动器电路设计及硬件实现[D].武汉:华中科技大学,2004.

  [4]K9XXG08XXM Flash Memory[EB]. SUMSUNG ELEC-TRONICS2007.3K9XXG08XXM 系列Flash存储器[EB].三星电子,2003.

  [5]PCI-SIG.PICMG 2.0 R3.0compact PCI specification[DB/OL].1999-10[2009-10-20]http//www.pcisig.com.

  [6]李贵山,戚德虎.PCI局部总线开发指南[M].西安:西安电子科技大学出版社,1997.

  [7]李国光,罗丰.一种64位高速PCI总线接口的设计与实现[J].电子科技,2011242):57-60.

  [8]PCI9054 DataBook[Z].PLX TechnologyInc1998.

  [9]武安河,邰铭,于洪涛.Windows 2000/XP WDM设备驱动程序开发[M].北京:电子工业出版社,2003.

  [10]杨翠虹,文丰,姚宗.基于LVDS的高速数据传输系统的设计[J].通信技术,2010439):59-61.

  [11]魏丽玲,朱平,石永亮.基于FPGA的图像采集与存储系统设计[J].测控技术与仪器仪表,20154111):67-69.

  [12]汪精华,胡善清,龙腾,基于FPGA实现的PCIE协议的DMA读写模块[J].微计算信息,20102610):7-9.

  [13]何琼,陈铁,程鑫.基于FPGADMA方式高数数据采集系统设计[J].电子技术应用,20113712):40-43.

  作者单位

  中国电子科技集团公司第二十七研究所 河南省郑州市 450047

  • 29.8

    ¥45 每天只需1.0元
    1个月 推荐
  • 9.9

    ¥15
    1天
  • 59.8

    ¥90
    3个月

选择支付方式

  • 微信付款
郑重提醒:支付后,系统自动为您完成注册

请使用微信扫码支付(元)

订单号:
支付后,系统自动为您完成注册
遇到问题请联系 在线客服

常用手机号:
用于找回密码
图片验证码:
看不清?点击更换
短信验证码:
新密码:
 
绑定后可用手机号登录
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系 在线客服