基于PCI9054总线控制器的数据接收和存储系统设计

时间:2011-09-04

  随着社会的发展,卫星技术已广泛应用到我们生活的各个领域。通讯卫星,气象卫星以及遥感卫星,科学探测卫星等与我们的生活密切相关。

  从卫星上高速下传的数据由地面卫星接收站转发为基带信号,通过光缆传送至数据中心,速度可达上百兆波特率,要求系统正确接收,经过同步和预处理,然后存入计算机系统,供数据中心使用。其特点是:数据下传速度高,数据量大,持续时间长,并且要求具有差错控制功能。本文介绍为了满足此要求而设计的数据接收和存储系统。

  系统设计

  数据接收和存储系统主要包括数据接收和预处理,数据传送,数据存储等部分。本文主要介绍CPLD,PCI总线结构,总线控制器PCI9054。

  基带串行信号由复杂可编程逻辑器件(CPLD)进行串并转换,变为8位数据信号后根据编码方式找到同步帧,并进行预处理,然后传到先入先出存储器FIFO, 在逻辑控制下将数据送入PCI总线控制器PCI9054,由9054采用DMA突发方式传输至内存,再存储到RAID磁盘阵列。

  采用复杂可编程逻辑器件(CPLD)可大大减少复杂的控制,通过VHDL语言即可灵活设置控制逻辑。由于高速电路设计中的干扰问题非常严重,因此要尽可能地减少线路设计,而且可大大减少布线干扰,调试和更改也非常方便,是今后逻辑控制的发展方向。在本系统中,CPLD不仅实现串并转换和同步的功能,同时还用以实现数据进入FIFO以及由FIFO传入PCI9054的传输控制逻辑,中断逻辑以及主机对数据传输通道的前端控制。

  在总线结构上,由于数据传输速度高,以往的ISA总线不能满足要求(ISA总线传输速度5MB/S),必须采用更快的PCI总线结构。它是一种独立于处理器的总线结构,具有32位或64位的复用的数据地址总线,总线上的设备可以以系统总线的速度在相互之间进行数据传输,或直接访问系统内存,可以达到132MB/s的数据传输速率(64位则性能加倍)。采用PCI接口的设备必须满足PCI接口规范V2.2标准。

  LOCAL总线的数据宽度为32位,时钟频率可达到50MHZ, 并且支持数据预取功能。 9054的LOCAL总线与PCI总线之间数据传输有三种方式:主模式(Direct Master)、从模式(Direct Slave)、DMA方式。其内部具有两个DMA数据通道,双向数据通路上各有6个FIFO进行数据缓冲,可同时进行高速的数据接收和发送。8个32位Maibox寄存器可为双向数据通路提供消息传送。9054还有2个32位Doorbell寄存器,用来在PCI和Local总线上产生中断。

  用户通过设置其内部寄存器,即可完成各种控制功能。9054内部寄存器的配置信息可以写在一片串行EPROM中,在加电时9054自动加载串行EPROM配置信息,并由PCIBIOS通过PCI总线对配置寄存器读写。在本系统中,数据传输是单方向的,因此只设计PCI9504从FIFO中读数据的情况,只用到与读FIFO有关的信号,其中的CPLD逻辑关系如下:

  REN平时为高电平(无效电平),当ADS#为低(有效),BLAST为高(无效),LW/R为低(有效)时,表明9054开始了一个有效的读数据周期,CPLD产生一个低电平信号REN(有效电平)给FIFO,同时作为Ready信号返回给9054,通知9054设备已准备就绪。此信号持续到ADS#为高(无效)且BLAST为低(有效)时,表明9054已经开始一个周期,此时REN信号再次变高电平(无效)。

  本设计中采用了PCI9054的DMA工作方式,在此方式下,9054作为PCI总线的主设备,同时也是Local总线的控制者,通过设置其DMA控制器内部的寄存器即可实现两总线之间的数据传送。

  PCI9054的DMA传输过程实现步骤:

  ① 设置方式寄存器:设置DMA通道的传输方式,寄存器DMAMODE0或者DMAMODE1的位9:0-表示块传输,1-表示散/聚传输;

  ② 设置PCI地址寄存器:设置PCI总线侧的地址空间;

  ③ 设置LOCAL地址寄存器:设置LOCAL总线侧的地址空间;

  ④ 设置传输计数寄存器:以字节位单位设置传输数据量;

  ⑤ 设置描述寄存器:设置DMA传输的方向;在散/聚方式下,位0表示传输参数的加载地址,0-PCI地址,1-Local地址;位1表示传输链结束,0-未结束,1-结束。位2设置当前块传输结束后中断;位3指示DMA的传输方向,0-从PCI总线到Local总线,1-从Local总线到PCI总线;高28位[31:4]表示传输参数表的地址指针;

  ⑥ 设置命令/状态寄存器:启动或停止DMA操作,并读此寄存器返回DMA状态 。

  通过PCI9054的DMA传输方式,高速数据可以较容易地实现从PCI接口板上传入计算机,不必考虑PCI总线接口的实现,从而大大简化了设计中的复杂度,加快了设计周期。

  



  

参考文献:

[1]. CPLD datasheet https://www.dzsc.com/datasheet/CPLD_1136600.html.
[2]. PCI datasheet https://www.dzsc.com/datasheet/PCI_1201469.html.
[3]. PCI9054 datasheet https://www.dzsc.com/datasheet/PCI9054_1054563.html.
[4]. EPROM datasheet https://www.dzsc.com/datasheet/EPROM_1128137.html.


上一篇:基于嵌入式系统的远程抄表设计
下一篇:利用车载CAN总线记录仪进行大容量存储系统的设计

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料