积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> CPLD/FPGA >> 应用论文
  相关分类: 相关文章 | 应用论文 | 新产品 | 下载 |
高速数据采集系统中的存储与传输控制逻辑设计
 
作者:哈尔滨理工大学测控技术与通信工程学院 童子权   来源:电子设计信息网    点击数:352   更新时间:2007-11-8
您可以添加到网摘 让更多人关注此文章:

     

随着信息科学的飞速发展,数据采集和存储技术广泛应用于雷达、通信、遥测遥感等领域。在高速数据采集系统中,由adc转换后的数据需要存储在存储器中,再进行相应的处理,保证快速准确的数据传输处理是实现高速数据采集的一个关键。由于高速adc的转换率很高,而大容量ram相对adc输出速度较慢,保持高速数据存储过程的可靠性、实时性是一个比较棘手的问题。对于数据采集系统中的大容量高速度数据存储、传输,本文提出一种基于fpga的多片ram实现高速数据的存储和传输的方案,并应用于1gs/s数据采集系统中,实现了以低成本ram完成高速实时数据存储系统的设计。

方案选择


高速的数据采集速度是保证数据采集精度的标准,但往往在数据处理时并不需要以同样的速度来进行,否则对硬件的需求太高,成本也较高。这就需要有一个数据缓存单元,将数据有效地存储,再根据系统需求进行数据处理。


通常构成高速缓存的方案有三种。第一种是fifo(先进先出)方式。fifo存储器就像数据管道一样,数据从管道的一头流入,从另一头流出,先进入的数据先流出。fifo具有两套数据线而无地址线,可在其一端写操作而在另一端读操作,数据在其中顺序移动,因而能够达到很高的传输速度和效率,且由于省去了地址线而有利于pcb板布线。缺点是只能顺序读写数据,不易灵活控制,而且大容量的高速fifo非常昂贵。


第二种是双口ram方式。双口ram具有两套独立的数据、地址和控制总线,因而可从两个端口同时读写而互不干扰,并可将采样数据从一个端口写入,而由控制器从另一个端口读出。双口ram也能达到很高的传输速度,并且具有随机存取的优点,缺点是大容量的高速双口ram的价格很昂贵。


第三种是高速sram切换方式。高速sram只有一套数据、地址和控制总线,可通过三态缓冲门分别接到a/d转换器和控制器上。当a/d采样时,sram由三态门切换到a/d转换器一侧,以使采样数据写入其中。当a/d采样结束后,sram再由三态门切换到控制器一侧进行读写。这种方式的优点是sram可随机存取,同时较大容量的高速sram有现成的产品可供选择。


从降低成本上考虑,采用第三种方式实现大容量数据存储功能。结合1gs/s数据采集系统的要求,存储深度为4mb。选择issi公司的静态ram,由8片is61lv25616构成4mb测试数据的存储,系统结构如图1所示。

图1  数据存储原理框图

数据存储设计


● 数据流控制


adc为双通道500ms/s的转换率,8bit的垂直分辨率,转换数据的输出是每通道i、q两个方向上差动输出,在差动时钟500mhz的驱动下,可以实现1gs/s的实时采样率,由adc输出的4路转换数据流输出分别为250ms/s。而is61lv256系列ram的速度级别为10ns或12ns,这样数据必须经过fpga进行缓存以后,才可以再次存入ram。


is61lv25616系列ram芯片有16位数据线,18位地址宽度,同时还包括数据读rd、写wr及片选cs等控制信号。将8片ram并行连接到fpga上,组成数据采集的存储单元。


将从adc输出ai[8...0]、aq[8...0]、bi[8...0]、bq[8...0],每路信号都为lvds输出,共32位为一组转换数据data[31...0],速率为250ms/s,要将这个速度在fpga内部降至ram可接受的范围。选用cycloneii系列fpga,其内部时钟可工作在402.5mhz,支持单端和高速差动标准i/o接口,对于250ms/s的数据流完全可以接收。利用fpga内部的d触发器作为缓冲,经过4级缓冲之后分别得到dbo[127...0],这样数据速度降为62.5ms/s。经过缓冲后的数据已经在选用的ram接受速度级别内,将得到128位的数据作为8片ram的数据线,完成了数据流的控制。数据缓冲的原理如图2所示。

图2  数据缓冲设计


● 地址发生器设计


每次读写数据时,必须提供数据的存储位置,以读写信号作为时钟计数信号,顺序产生地址信号,其中nwe是ram的写数据信号,noe是读数据信号,二者都是低电平有效,选择ab[17...0]作为ram组的地址信号。cnten是地址计数器的使能信号,由读取/写入数据的深度决定,当未完成读取/写入的数据时,cnten=0,此时允许读/写操作继续执行;当读/写操作完成时,相应的地址信号将cnten设置为1,则停止地址计数。地址发生器的原理如图3所示。

图3  地址发生器设计


● 读写数据的设计


在设计好采集数据的地址发生单元后,接下来就是配合时序进行读写操作。


图4是ram的读操作时序图,从图中可以看出,当指定待操作的地址后,设置芯片使能信号oe和片选使能信号ce有效,即可从数据线上读出相应地址内的数据。

图4  ram的读数据时序图


对于单片ram的操作比较简单,但是要将数据顺序写入8片ram中,就要求对上一片ram写操作完成后,系统能够设置下一个待操作的ram有效,128位数据线分别对应8片ram的数据线,由于地址线和读写使能线公用,则需要分别设置每个ram的片选,以区别当前操作是针对哪一个ram。片选信号可以由译码器产生。读操作时设置相应ram的片选有效,即可读出存储的数据,而进行写操作时,则可以设置所有的ram片选有效,将采集到的数据同时并行的写入8片ram中。根据这些描述,片选信号的设计如图5所示。niomd为操作的状态信号,说明当前的操作是读状态或是写状态,读数据情况下设置为1,片选信号分别有效,写数据情况下设置为0,所有ram均处于片选有效状态下,可以同时写入数据。这样的设计也是为了配合系统的需求,一般的,读取数据的速度相对于写数据来说还是要快一些的。

图5  ram片选使能信号设计

仿真验证


将上述设计方案整合后,配合其他控制信号的设计,就完成了数据采集系统数据存储功能的设计。在quartusii软件中对上述设计进行波形仿真,可以看到设置set值及相应的状态控制信号,则在vdb端就可以按照cs指示的相应的ram芯片中顺序读出预先存入的数据。按照图中所示的状态寄存器设置,读取深度设置寄存器设置为最小值set[4...1]=000,即只读每片ram的首个存储数据,则地址发生器的最高值为8,从图中可以看到当地址发生器输出值增加到8时,we跳变为高电平,ram的读使能无效。由于ab[3]=1,使得cnten=1,地址发生器的计数时钟使能无效,计数器停止计数,完成一轮数据的读取操作。读数据仿真验证结果如图6所示。

图6  读数据仿真验证


在图6中,对于当前数据线上的数据串db=0010,0011,1010,1110,1101,0011,1001,0111,片选信号cs低电平有效,当cs=11011111时,即选中按顺序由低位到高位计算的第6片ram,此时对应的在vdb上读出的数据应该为db的第6个数据值,即为1010。从波形方针图上得到验证。

结语


利用fpga的内部资源,设计灵活的逻辑控制,完成高速大容量数据采集的存储和传输设计,本文提出的设计方案可以在选用低成本、操作简单的静态ram组的情况下,实现实时大容量数据存储需求的一种设计方法,并在eda软件中进行了仿真验证,成功地应用在1gs/s数据采集模块中。



相关文章
· HP实验室展示集CMOS电路与忆阻器3D芯片[60]
· 德国一处理器架构开发商指控赛灵思和安富利侵权[49]
· 低功耗、DFM及高速接口是65/40纳米设计重点[94]
· 采用FPGA实现视频和图像处理设计[303]
· 用FPGA构成液晶显示控制器[217]
热门评论排行
·VHDL设计中电路简化问题的
·ARM嵌入式系统基础教程(N
·江苏嵌入式Linux教育培训
·ARM处理器应用开发4步骤
·锐极LINUX驱动培训班定于

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
严冬期如何发展半导体业 扩
2008年中国集成电路市场回顾与展望
分析师:亚洲芯片厂商库存远超预期
2008年基础电子业十大事件点评
Aptina并购智多微手机软件平台设
凌力尔特公司推出用于多核处理器的&n
安森美半导体任命麦满权为韩国及南亚区
Broadcom:半导体产业依然机会
飞思卡尔推i.MX51芯 
日立芯片守卫新年倒数计时晚会
 
热门下载 [更多]
 
[ PCB设计] Protel99教程下载
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
 
论坛新帖 [更多]
 
低价专业PCB打样 双面板20...
深圳市天漠科技超低价供应atm...
深圳市天漠科技超低价供应ARM...
[推荐]2.5米精度,高灵敏度...
830实验箱+电脑没有并口...
[原创]平望科技助力自服终端国...
低价专业PCB打样 双面板20...
[原创]低价专业PCB打样 双...
Bootloader for ...
【有奖调查】08-09嵌入式开...

 
赞助商 [更多]
 

ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网