微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 基于PCI9054的PCI高速通信接口实现

基于PCI9054的PCI高速通信接口实现

时间:04-22 来源:互联网 点击:
1 引言

PCI,外设组件互连标准(Peripheral Component Interconnection)是一种由Intel公司1991年推出的用于定义局部总线的标准,自规范推出,得到网络通信,数据采集处理,工业控制等多行业的广泛应用,并出现PCI-E。CPCI,PXI等多个扩展改良版本。PCI总线支持其即插即用,中断共享,高速数据传输等功能,有着广阔的市场前景。

本文介绍了目前使用美国PLX公司生产的协议转换芯片PCI9054,用verilog HDL在FPGA中产生相应的控制信号.完成对数据的快速读写,从而实现了与PCI总线的高速数据通讯。本系统可扩展,适用于其他PCI设备系统,具有实用价值。

2 系统实现

本系统主要由PCI9054与FPGA构成,系统结构图以及信号连接如图1所示。可以根据实际需要,利用FPGA的可编程性,实现预定功能,如与单片机,DSP等处理器的不同速率间接高速通信等。协议转换芯片PCI9054作用就是为本地处理器和主机之间架起一座通信的桥梁。


图1 系统总体结构

1) PCI9054硬件实现

PCI9054是美国PCI公司生产的先进的PCI总线接口芯片,它满足PCI V2.2协议,支持32位33MHz时钟PCI总线,特别适用于PCI总线外设产品的开发。PCI9054局部总线有三种工作模式:M模式、C模式和J模式,可方便地与多种微处理器连接。PCI9054的工作方式可利用模式选择引脚(MODEO,MODE 1)加以选择。

M模式是专为Motorola公司的MCU设计的工作模式,其主要应用于电信领域。C模式是一种类似于单片机的工作方式,通过片内逻辑控制,将PCI的地址线和数据线分开,很方便地为本地工作时序提供各种工作方式,对于这种工作方式,设计者只需要关注PCI9054的Local端的时序控制时序,就可以很方便的利用PCI9054实现PCI接口电路设计。J模式是地址总线和数据总线没有分开,严格仿效PCI总线的时序,只是为时序控制增加了很多的控制信号。数据传输模式有三种:直接主模式,直接主模式就是本地处理器(如伺服控制卡上的DSP)访问PCI总线上的I/O接口和计算机的内存资源,由本地处理器发起整个数据传输。直接从模式,直接从模式就是主机作为主控设备发起对本地总线上资源的访问.包括对本地处理器的控制和对本地端存储器的访问。DMA模式,DMA模式支持PCI总线与本地总线之间的高效突发。

2) PCI9054硬件连接电路(如图2所示):


图2 PCI9054硬件连接电路图

3) PCI9054与PCI插槽信号连接

PCI9054与PCI插槽间的连接信号线,这些信号线包括地址数据复用信号AD[31:0],总线命令信号C/BE[3:0]和PCI协议控制信号PAR,FRAME#,IRDY#,TRDY#,STOP#,IDSEL,DEVSEL#等,电路连接中将彼此对应的信号线连接在一起即可。在PCI总线信号中.除了RST#。INTA#-INTD#之外,其他所有的信号都在始终上升沿被采样。每个信号都
有相对于时钟前沿建立和保持时间。在此期间,不允许有信号的跳动。该时间一过,信号的变化就无关紧要了。这种建立和保持时间对于不同的信号其情形是不同的。对于AD[31:0],PAR和IDSEL来说,只有在一定的十种边沿上才有上述时间的要求。对于LOCK#,IRDY#,TRDY#.FRAME#,DEVSEL#,STOP#,ⅢeQ#,GNT#,SERR#和PERR#这些信号在每个时钟前沿都有建立和保持时间。对于C/BE[3:0]#在传输总线命令是,要在FRAME#第一次建立时对应的时钟边沿上遵守建立和保持时间的关系。若传输字节使能信号时,要在完成一个地址期或数据期之后的每一个时钟边沿保证相应的建立和保持时间。

4) PCI9054与EEPROM接口

各种接口芯片都需要外接串行EEPROM芯片来加载配置数据.对于串行EEPROM芯片,需要根据接口芯片数据手册中给出的生产厂家及型号选择。这里选择FM93LC56。PCI9054提供4个管脚与串行EEPROM相连接,他们分别是EEDI,EEDO,EESK,EECS,对应于FM93LC56的DI,DO,SkCS这四个管脚,这4对管脚直接相连就可以,另外93Lc56的VCC管脚需要接+5V电源,GND接地。因为需要对串行EEPROM进行写操作,串行EEPROM应处于可编程而且非保护状态,所以PE接高电平而PRE接低电平。FM93LC56的技术手册规定两个管脚上拉和下拉的电阻应为10K左右。

5) PCI9054与LOCAL Bus端连接

LHOLD:申请使用本地总线,输出信号;LHOLDA:对LHOLD应答,输入信号;ADS:新的总线访问有效地址的开始,在总线访问first clock设置时,输出信号;BLAST:表示为总线访问的last transfer,输出信号;LW/R#:高电平表示读操作,低电平表示写操作,输出信号;LA:地址线;LD:数据线;READY:表示总线上读数据有效或写数据完成,用以连接PCI9054等待状态产生器,输入信号。

3 Ve

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

网站地图

Top