阅读:2440回复:20
如何在PCI9054数据采集卡中实现缓存的逻辑转换
我要做一个高速的数据采集卡,但是,高速率的数据采集系统在采集数据流时,有数据丢失问题,导致采集后的数据流不完整,要想稳定可靠的采集数据流,采集卡上必须要大小合适的缓存,现在的数据流是1.25MBb/s.我采用9054片子,想用FIFO器件,在9054和FIFO之间怎么去实现它们之间的逻辑转换。也就是怎么去实现数据流的逻辑转换。请高手不吝赐教!谢谢了!
急切盼望中!!! |
|
最新喜欢:jackyw... |
沙发#
发布于:2003-06-06 08:11
用一片EPM7128ATEC100-5的片子
|
|
板凳#
发布于:2003-06-06 09:05
谢谢!有问题还望多指教!
|
|
地板#
发布于:2003-06-06 09:20
我刚才查了,没有EPM7128ATEC100-5这个型号啊,是不是EPM7128AETC100-5呀?
|
|
地下室#
发布于:2003-06-06 12:45
YES
SORRY! |
|
5楼#
发布于:2003-06-09 09:28
如果是16位或者8位的FIFO就必须把地址用FPGA锁一下,32位的就不用,我用过8BIT*64K的同步fifo,和36BIT*128K的异步双口RAM,控制信号都直接接的很简单,推荐用双口IDT70V659S-10,已经实现20MBYTE/S寄盘,普通7200转ATA100硬盘
|
|
6楼#
发布于:2003-06-09 15:22
如果选用同步FIFO一定注意时序,如果一时想不明白,最好全部将管脚连到CLPD或者FPGA去,以便调试时实际测试。我前几天刚刚调了9054与同步FIFO。异步FIFO就简单了。
|
|
7楼#
发布于:2003-06-10 19:42
多谢大虾提携!我正在做方案呢,用双口RAM成本低,用FIFO控制简单一些,给单位做设计我就不考虑成本了,嘻嘻!现在是时间紧任务重还要应付繁重的节点汇报,所以能省点事就省了!欣喜大虾体调通了
9054与同步FIFO,恭喜了!希望你在调试异步FIFO时,同样能顺利通过!将来我定会有许多不懂之处请教呢!多交流,谈谈贴会,愿我们 都能天天进步,与时俱进:) |
|
8楼#
发布于:2003-06-16 12:01
请问大虾你用的同步FIFO是16为的吗,我选的是16位的,你用的是什么型号?谢谢!
|
|
9楼#
发布于:2003-06-16 14:19
是16位的,FIFO型号为IDT72V255LA,与此管脚兼容的有265/275/285等。但是我是将两个16位拼成一起作成32位,分别写,一起读的。
|
|
10楼#
发布于:2003-06-16 15:49
哦,谢谢,我看了IDT72V255LA,我做的数据采集卡以12位的AD进行采样,1.25M/S的采样速率,如果用此8KFIFO的话会不会有大材小用之嫌,请问大虾是在多大的传输速率下选用该FIFO的?谢谢!
|
|
11楼#
发布于:2003-06-17 10:17
<我看了IDT72V255LA,我做的数据采集卡以12位的AD进行采样,1.25M/S的采样速率,如果用此8KFIFO的话会不会有大材小用之嫌>
我的采集速度是40MSPS,但是,不是所有数据都存储,只有过阈值的数据才保存。数据流大概也就几M。 选择FIFO的容量主要考虑不丢失数据,记住:FIFO不能增加输入输出系统的数据通过率,只能作为缓冲和方便配合时序用,如果输出输出速度差太大且长期实时采集,则再大的FIFO也无济于事。 如果1.25M/S的采集速度,12位如果采用32位总线可以每两个采样拼成一个32位数据,速度相当于32位的0.625M/S,如果用16位总线则仍然保持1.25M/S;速度是否满足实时采集的要求主要取决于你采用DMA、主方式、从方式,操作系统,以及是否有其他线程存在。这些都是影响速度的因素。一般说,9054完成上述工作如为DMA方式没有问题。从方式则受影响的因素更多,但只要其它任务不非常重,问题不大。 |
|
12楼#
发布于:2003-06-17 22:32
我决定选用IDT72V235,因为采集部分用的DSP是3.3V供电,加之9054是3.3V内核,所以采集卡的芯片我打算全部选用3.3V供电的,现在不知9054和FIFO之间的CPLD的选择有何要求,当然最好是3.3V的了,对于CPLD的选择请大虾在指点一二!多谢!!
|
|
13楼#
发布于:2003-06-17 23:59
ALTERA公司和XLINX公司都有的。主要看可用的I/O管教数、响应时间等。我用的是XLINX的XC95144XLTQ100,它是3。3V的
|
|
14楼#
发布于:2003-06-18 10:33
3.3V的CPLD似乎是主流,yunyanrong说的对,还有,LATTICE也有,而且大多3.3V的CPLD允许5V输入。主要考虑你的逻辑规模和速度、封装等。
|
|
15楼#
发布于:2003-06-19 15:20
我把FIFO芯片选定为IDT72V235,18位的,在读他的英文资料中有不懂之处,FL、RXI、WXI三个管脚在不同的0、1组合下,有多种模式供选择。搞不明白的是FIFO中的同步、异步指什么呀?还有就是缓冲器的Single和Double个是怎么回事啊?恳请大虾赐教!谢谢!
|
|
16楼#
发布于:2003-06-19 19:36
异步FIFO操作相对简单,一般写操作只需要一个信号,而读操作一般也只有2个信号,R和OE信号。但异步FIFO的速度比较慢。
而同步FIFO的操作则需要较多的信号,一般数据操作在时钟的沿和选通信号上同时起作用。所以,其控制比较麻烦,但是FIFO可以达到较高的速度。 缓冲器的问题我没有注意,请仔细看看手册。 |
|
17楼#
发布于:2003-06-19 23:32
在大虾的指点下,我对FIFO的理解正逐步深入,多谢!还有一个问题,写FIFO的时钟WCLK和读FIFO的时钟RCLK,可以不用同一个时钟源吗,要是可以用不同的时钟,有特殊的什么要求吗?
|
|
18楼#
发布于:2003-06-20 00:29
我认为235LA和255LA(注意尾缀LA和L不一样,时序有差别)应该时序一样,但是我没有比较过,应该一样。如果这样的话:
1、RCLK和WCLK完全可以用一个,也可以用不同的时钟; 2、如果设计中需要用EF、FF、HF、PAE、PAF等信号作为其它的实时(注意!此处实时,软件无法干预的意思)控制信号,例如请求DMA(我就是这么用的)等情况,一定注意RCLK、WCLK对上述标志信号的影响。具体我忘了,请查看手册时序,大概是上述几个信号中有的信号在RCLK、WCLK处于一定关系时会导致额外的延时,当然,这些延时不一定对你的设计产生致命的影响,但是需要注意。具体请仔细看时许图和参数表的nS数据。 |
|
19楼#
发布于:2003-06-21 14:44
不和IDT72V255LA一样,只IDT72V235L有尾缀是L的,没有LA的。谢谢大虾指点,我好好研究一下IDT72V235L的时序!
|
|
上一页
下一页