首页 » 技术文章 » 基于CY7CO9449的高速PCI数据采集卡设计

基于CY7CO9449的高速PCI数据采集卡设计

作者:  时间:2010-09-14 09:38  来源:EDN

   局部总线控制模块从FIFO中读取数据然后写入CY7C09449SRAM中。CY7C09449的局部总线支持同步数据传输,虽然它也兼容异步数据传输,但FPGA的局部总线控制模块选用了同步数据传输逻辑,因为这样可以获得更高的数据传输速度。CY7C09449的局部总线支持最高的时钟速度是50MHz,一次同步的突发数据传输在给出读或写的起始地址之后,每个时钟周期可以传送一次数据。CY7C09449局部总线的数据总线宽度是32位,这使得局部总线的最高传输速度达200Mbs

  在CY7C09449的局部总线上,FPGA处于类似于微处理器的地位,控制着局部总线数据传输的主动权。FPGA的逻辑设计中,局部总线控制模块的逻辑设计是获得高速数据传输的关键。同步数据传输要比异步数据传输的逻辑复杂得多。在局部总线控制模块的逻辑设计中使用了状态机,其设计的关键在于状态机的状态的定义和在各种条件下状态的转换。为了简单起见这里不对多块数据传输控制、中断信号产生逻辑作讨论而只介绍传送一个数据块的逻辑。

  状态机共定义了7个状态,各种状态的转换关系见图3

  在论述状态机的工作过程之前,先就影响状态机状态转换的一些信号作说明。

  Reset信号就是CY7C09449的引脚RSOUTD输出的信号,它由低到高的转变将启动FPGA进行一次数据采集。

  FifoEmpty信号是由FIFO模块提供的,用来指示FIFO是否为空,它为1时表示FIFO是空的,没有数据要传输,否则表示FIFO内有数据等待传输。

  RdyOut信号是CY7C09449的引脚RDY OUT提供的信号,它用来指示CY7C09449的局部总线是否准备好数据传输。当RdyOut为高电平,表示CY7C09449的局部总线已经准备好数据传输,反之表示CY7C09449的局部总线未准备好数据传输。

  Last信号是用来指示将要写的数据是否为本次突发传输要写的最后一个数据。这个信号由局部总线控制模块内部产生。局部总线控制模块内部有一个计数器,当准备一次突发传输的时候,就将要传送的数据长度放入这个计数器内,每传送一个双字数据计数器的值就减去1,当且仅当计数器的值等于l的时候 Last就为高电平。

  现在就状态机的工作过程作简要说明:

  当Reset0转变到l时就启动一次数据传输。状态机首先进入T1写地址状态。

  状态机在T1写地址状态将本次数据传输存放在CY7C09449SRAM的起始地址及有关控制信号送到局部总线上。T1状态之后无条件进入T2等待读FIFO数据状态。

  在T2等待读数据状态,如果FifoEmpty=1,将继续等待,如果FifoEmpty=0,将进入T3FIFO状态。

  在T3FIFO数据状态,状态机发出有效的读FIFO控制信号,如果从FIFO读取的数据是最后一个将要写入CY7C09559的数据,那么就进入状态T5,否则进入状态T4

  T4等待写并可能读状态是很关键也很复杂的状态,在这个状态下影响状态机行为的信号比较多。在图3中,确定T4状态的下一个状态的条件被标上序号,序号小的条件是被优先考虑的条件。满足条件(1)RdyOut=0,表示CY7C09449没有准备好数据传输,所以要仍在状态T4继续等待。不满足条件(1),满足条件(2)FifoEmptV=1是表示CY7C09449已经准备好数据传输,同时FIFO是空的,所以下一个状态要进入T2等待读FIFO数据状态。不满足条件(1)(2),满足条件(3)表示CY7C09449已经准备好数据传输,同时FIFO非空,同时将要传输的数据是本次传输的最后一个数据,所以要下一个状态要进入状态T5等待写最后一个数据。满足条件 (4),也就是不满足条件(1)(2)(3),表示本次往CY7-C09449写了一个数据、又从FIFO读了一个数据且不是最后一个要写的数据,所以下一个状态仍旧是T4

  在T5等待写最后一个数据状态,当RdyOut=0表不CY7C09449没有准备好数据传输,所以要继续等待。否则表示最后一个数据已经可以写入CY7C09449,所以下一个状态要进入T6空闲态。

  在T6空闲状态如果Reset=1就仍旧在空闲状态,否则进入T0复位状态。

  状态机在每种状态下要发出各种控制信号。有控制FIFOFif0Read信号,控制CY7C09449局部总线的SelectStrobeWriteBlast信号。从这些信号的名称就可以知道它们的作用,这里不再赘述。

  局部总线控制逻辑通过使用同步数据传输控制方式,支持突发传输,加快了数据传输速度。

相关推荐

基于Virtex5的PCI-Express总线接口设计

PCI  Virtex5  2011-08-16

外接PCI-E标准计划挑战Thunderbolt

PCI-E  hunderbolt  2011-06-24

力科公司启动第三届“精品工程”系列网络视频讲座会

力科在PCI-SIG开发者大会上展示PCI Express 3.0测试套件

LeCory  PCI-SIG  测试套件  2011-06-23

IDT推出PCI Express® Gen2产品,用于x86处理器

IDT  协议交换网桥  PCI Express  Gen2  2011-06-09

基于LabVIEW 语言的信号采集与处理

在线研讨会
焦点