在一个PCI应用系统中,如果某设备取得了总线控制权,就称其为“主设备”;而被主设备选中以进行通信的设备称为“从设备”或“目标节点”。对于相应的接口信号线,通常分为必备的和可选的两大类。如果只作为目标的设备,至少需要47条,若作为主设备则需要49条。利用这些信号线便可以处理数据、地址,实现接口控制、仲裁及系统功能。下面对主设备于目标设备综合考虑,并按功能分组将这些信号表示于下图。
图中#号表示低电平有效,否则为高电平有效。
1、系统信号定义
CLK_IN:系统时钟信号,对于所有的PCI设备都是输入信号。其频率最高可达33MHz,最低频率一般为0Hz(DC),这一频率也称为PCI的工作频率。对于PCI的其它信号,除了RST#、IRQB#、IRQC#、IRQD#之外,其余信号都在CLK的上升沿有效(或采样)。
RST#_IN:复位信号。用来使PCI专用的特性寄存器和定序器相关的信号恢复规定的初始状态。至于PCI定序器之外的设备复位后如何变化,本次不说明。但必要的PCI配置寄存器,其复位状态是明确规定的。每当复位时,PCI的全部输出信号一般都应驱动到第三态。SERR#信号为高阻状态,SBD#和SDONE可驱动到低电平(如果未能提供三态输出)。REQ#和GNT#必须同时驱动到第三态,不能再复位期间为高或为低。为放置AD、C/BE#及PAR在复位期间浮动,可由中心设备将它们驱动到逻辑低,但不能驱动为高电平。RST#和CLK可以不同步,但要保证其撤销的边沿没有反弹。当设备请求引导系统时,将相应复位,复位后相应系统引导。
2、地址和数据信号
AD[31..0]:它们是地址、数据多路复用的输入/输出信号。在FRAME#有效时,是地址期;在IRDY#和TRDY#同时有效时,是数据期。一个PCI总线的传输包含了一个地址信号期和接着的一个(或无限个)数据期。PCI总线支持突发方式的读写功能。地址期为一个时钟周期,该周期中AD[31..0]线上含有物理地址(32位)。对于I/O操作,它是一个字节地址;若是存储器操作和配置操作,则是双字地址。在数据期,AD[7..0]位最低字节,AD[31..24]位最高字节。当IRDY#有效时表示写数据稳定有效,而TRDY#有效时表示读数据稳定有效。
C/BE[3..0]#:它们是总线命令和字节使能多路复用信号线。在地址周期中,这四条线上传输的是总线命令;在数据期内,它们传输的是字节使能信号,用来表示在整个数据期中,AD[31..0]上哪些字节位有效数据。
3、接口控制信号
FRAME#:帧周期信号。由当前主设备驱动,表示一次访问的开始和持续时间。FRAME#的有效预示着总线传输的开始;在其存在期间,意味着数据传输继续进行;FRAME#失效后,是传输最后一个数据期。
IDRY#:主设备准备好信号。该信号的有效表明发起本次传输的设备能够完成一个数据期。它要与TRDY#配合使用,二者同时有效,数据方能完整传输,否则