基于FPGA双RAM乒乓操作的数据存储系统的研究_图文_第1页
基于FPGA双RAM乒乓操作的数据存储系统的研究_图文_第2页
基于FPGA双RAM乒乓操作的数据存储系统的研究_图文_第3页
基于FPGA双RAM乒乓操作的数据存储系统的研究_图文_第4页
基于FPGA双RAM乒乓操作的数据存储系统的研究_图文_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、科技信息。机械与电子o2010年第2l期基于FPGA双RAM乒乓操作的数据存储系统的研究钱黄生1夏忠珍z11。中国电子科技集团公司第四十一研究所山东青岛266555;2.南京立汉化学有限公.-3江苏南京211102l【搐要】本文阐速了在对实时性要求较高,而对数据存储深度要求不高的数据采集系统中,用FPGA构建双RAM来乒乓存储数据的方法,重点介绍了乒乓操作的控制方法。本方法在XILINX9.1软件中通过时序仿真。并且通过XC2VP20验证了本方法完全能够满足设计的要求。【关键词】FPGA;KAM;乒乓操作0引言经过70年的不断发展,FPGA已由当初的1200门发展成为今天的百万门级。通过不断更

2、新优化产品架构和生产工艺,实现了更多的逻辑单元、更高的性能、更低的单位成本和功耗【11。本文用到的FPGA是xilinx公司Virtex-Il Pro家族的xc2vp20芯片,它包含2个POWER PC处理器.20880个cell.多达290KB的分布式RAM以及88个18KB的Block RAM嘲。由于本系统的存储深度不大,所以采用FPGA片内资源来构建RAM。这样效率更高.且使用方便,而且还可以避免板级信号干扰。既节省了印制板空间又节约了成本。1乒乓操作原理乒乓操作口棚是种经常应用于数据流控制的处理方法。图l是它的典型操作示意图。乒乓操作的处理流程为:输人数据流通过“输入数据选择单元”将数

3、据流等时分配到两个数据缓冲区.数据缓冲模块选择双口RAM(DPRAM或单r】RAM,FIFO等。在第一个周期,将输入的数据流缓存到。数据暂存单元1”:在第2个周期,通过“输人数据选择单元”的切换,将输入的数据流缓存到“数据暂存单元2”,同时将“数据暂存单元1”缓存的第1个周期数据通过“输出数据选择单元”的选择。输送到“数据处理单元”即上位机凄走进行处理;在第3个缓冲周期通过“输人数据选择单元”的再次切换,将输入的数据流缓存到“数据暂存单元1”,同时将“数据暂存单元2”缓存的第2个周期的数据通过“输出数据选择单元”切换,输送到“数据处理单元”进行运算处理。如此循环。输入输出数数据据数据刊l(D骱

4、PRA甑M1选择选择处单元单元理堕2选lI数篙DPA单M亍2P一2选l了E 图1典型乒乓操作操作示意图乒乓操作的最大特点是通过“输入数据选择单元”和“输出数据选择单元”按节拍、相互配合的切换,将经过缓冲的数据流不断输送到“数据流运算处理模块”进行运算与处理。将乒乓操作模块作为一个整体,通过观察此模块两端的数据,发现输入数据流和输出数据流都是连续不断的,因此非常适合对数据流进行流水线式处理。所以乒乓操作常常应用于流水线式算法.完成数据的无缝缓冲与处理。本文采用这种方法是为了实现采样后的数据能被较连续地输送人上位机进行处理,显示波形等。2FPGA仞化双口RAMXilinx公司为相应的FPGA器件提

5、供了很多的IP核,可根据需要调用来直接使用。例化双口M时.可以选择Block RAM来例化4Kx 32bit的双口RAM。component dpramport(addra:IN std_logie_VECTOR(1l downto0;addrb:IN std_logicVECTOR(1l downto o;clka:IN std_logic;cikb:IN std_logie;dina:IN stdlogic_VECTOR(13downto o;dinb:IN std_logicVECTOR(I3downto o;doutb:OUT stdlogic_VECTOR(13downto o;er

6、la:IN std_logic;enb:IN std_logic;w能:IN std_logie;web:IN stdlogic;end component;双端¨RAM两个端口完全独立,支持宽度1到256bit,深度2到IM字的数据。双端口RAM由两套地址线、控制线和数据线组成.分别与两端的系统相连。本文双端口RAM一端连接AD芯片的数据输出端,另一端通过PCI9054与L位机CPU交换数据。A端口配置为只写模式,AD芯片准换输ffj的数据由其写入。B端订配置为读写模式,可以方便验证出读出数据的正确性。同时每个端口都具有使能和读写管脚。Addra和addrb是地址线.elka和cl

7、kb是时钟。dina和dinb是A、B 端几输入的数据.doutb是B端Ll输出的数据,ella和errb是A、B端口的使能信号,wea和web是A、B端u的读写信号。3逻辑实现数据2选l单元选择切换两块RAM的地址线、读写线以及使能线。对于单块双端n RAM,A端¨输入数据时,地址线即为计数器产生的连续地址,输入数据就是AD芯片转换后的数宁信号。计数器记到数据写满RAM空间时,停止计数。此时等待CPU读取,此时另外一块RAM正在输出数据。CPu通过其B端【J读出数据。伞部完成后再进行轮换。对第2片RAM进行写撩作.读取第1块RM内数据(aJ读写梅供信仿真田支奠支支Ij.。?Ij气j

8、囊曼: :.:!j!?j。!。j:tt.1_.:。,:.:.:.I、:tj?。000誓苫j i0寸0:(b实际采样敷据波形田圈2仿真与实际采样数据波形图数据流进行无缝传输时,在理想的乒乓读写时序下,此时RAM为非读即写状态。读写切换控制信号较简单,但是采样率为20MHz以及系统总线为CPCI情况下,CPU读取数据的时间远小于FPGA内部双口RAM写入相同数据的时间。于是可能导致以下情况:A端口输人数 据后,CPU读取另外一RAM数据还未完成,即出现等n:转第96页 基于FPGA双RAM乒乓操作的数据存储系统的研究作者:钱黄生, 夏忠珍作者单位:钱黄生(中国电子科技集团公司第四十一研究所,山东,青岛,266555, 夏忠珍(南京立汉化学有限公司,江苏,南京,211102刊名:科技信息英文刊名:SCIENCE & TECHNOLOGY INFORMATION年,卷(期:2010(21参考文献(4条1.冯远辉.FPGA的现状及展望.电子设计应用,2006,2.2.Xilinx Corp.Virtex-Pro and

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论