微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 电源设计 > 500兆/秒高速A/D系统的实现

500兆/秒高速A/D系统的实现

时间:05-26 来源:互联网 点击:

出速率。降低端口速率唯一的办法就是将输出端口的数据分成多路交替输出,使每一路的数据产生率降到可以接受的速度。但是分的路数越多,电路就越庞大,各种时钟与数据之间的关系也就越复杂。综合两者考虑,采取了将ADC的输出分成八路的方案,这样每一路的数据产生率为62.5Mbyte/s,完全可以用普通的锁存器来完成。数据锁存部分的结构如图6所示。MAX101A输出的锁存时钟(250MHz)经四分频后送入一个六位的移位寄存器产生6个相差4ns的时钟,其中的ABCD用于锁存各个端口的数据,CDEF经电平转换后作为EPLD锁存数据的时钟,之所以推迟两个时钟是为了补偿数据的传输延时和EPLD内部FIFO的建立时间。数据进入到EPLF后,后端的处理就方便得多了,可以用EPLD作DRAM控制接口将FIFO的数据存储到大容量的DRAM中去,也可将数据分组打包通过传输介质传递给计算机进行处理。在本系统中,采取第二种方法将数据通过电缆传递给位于计算机内的一块PCI卡上,计算机再通过它把数据存放到硬盘上。

3 高速电路的设计

在高速电路中如何避免各个信号之间的串扰(crosstalk),以及如何保证信号的完整性(integrality)是整个系统正常工作的保障。首先,对于高速电路电路板(PCB)应至少采用四层以上的多层板技术,本系统采用了六层板(表1).采有多层板的目的并不仅仅是为了走线的方便,更重要的是使用了大面积的电源或地层之后可以使各信号线与地或电源平面之间形成一个紧耦合从减少信号线之间的串扰。通常所用的在走线层大面积网格铺地的方法,虽然也可起到一定的屏蔽作用,但其面积和与信号线距离的关系远不如地平面产生的效果好。其次,系统的整体布局要合理,应该综合考虑地平面和电源层的分割。使用相同电源和地的芯片,布局尽量放在一起以避免地平面被琐碎的分割。当同一块电路板上既有模拟电路也有数字电路时,更应该仔细地考虑这两部分的布局。模拟部分和数字部分应该隔离,不仅是空间的隔离,而且电源也应该隔离,两部分最好单独供电。最后,模拟地和数字地通过磁珠(ferrite bead)在一点相连。地平面上的电流一般比较大,大电流流过时会对表面上的器件产生一公平的影响,尤其是对模拟器件产生的影响将直接反映在输出信号质量的好坏。为了减少地电流的影响,在设计地平面时应该在比较敏感的模拟器件下方加一道隔离沟阻断大电流的通路(如图7所示),以减小地电流对它的影响。

表1

名 称 用途说明
顶层 布线、元件
中间层1 模拟地、VTT
中间层2 数字地、ECL的VCC
中间层3 模拟+5V、数字+5V、数字+3.3V
中间层4 模拟-5V、数字-5V、数字+2.5V
底层 布线

高速电路的PCB设计是整个系统成败的关键,PCB的设计在很大程序上与所选用的EDA工具有关。在本系统的PCB设计上选用的是PADS公司出品的PowerPCB,它和传统的设计工具Protel相比有如下优点:

(1)支持圆弧拐角布线,减少信号线的辐射,降低串优;

(2)支持泪滴焊盘,使走线阻抗变化均匀,减少反射;

(3)可以方便地在PCB的内部层进行分割和走线;

(4)支持多种布线规则,如布线长度、走线阻抗等规则;

(5)与自动布线器Specctra接口方便;

(6)直接支持信号完整性分析软件HyperLynx。

鉴于以上种种优越性能,它非常适合于高速电路板的PCB设计。

4 Windows95下软件设计的实时性考虑

本系统的软件运行于Window 95平台之上的。设计的指标要求每秒能计时200次的操作,每次采集512点,既要求系统在5毫秒内将A/D部分采到的512Bytes传到计算机并存储在硬盘上。这个要求对于PCI接口来说是非常低的,实测结果显示系统的平均反应时间远小于这个时间。但是结果显示系统的平均反应时间远小于这个时间。但是我们发现系统每处理10 000次响应总会有一到两次的反应时间特别慢,超过5毫秒有时甚至达到40毫秒。而我们的系统要处理的是一个连续有序的事件,要求对每一个事件都必须做反应,否则后面的事件就会被误处理。经过分析表明,这种现象完全是由于Windows95操作系统本身的原因造成的。Windows95是一种多任务的平台,它的核心运行在优先级较高的Ring0上,普通的应用程序则运行在优先级低的Ring3上,应用程序靠内核的调度分时运行。Windows95是专门为PC机设计的,主要的用途是处理人们的娱乐以及办公自动化等事务,考虑的是使用起来如何方便,并没有对工业控制方面的实时性加以考虑,所以外层的应用程序有可能会随时被内核打断,根本没有什么时间的保障。要想准确无误地处理对时间要求比较荷刻的事件,必须把处理程序放在运行于内核级的中断服务程序中去执行,这样除非有更高级的中断否则程序就不会被打断。在编写中断服务程序处理

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top