PCI总线是多路复用地址/数据和命令/字节选择信号的总线。
它使用主从信号的双向握手来控制数据传输。
接口电路设计与传统的总线接口电路设计没有太大区别。
通常,PCI接口电路应该执行以下功能:(1)地址解码和命令解码,因为PCI总线可以在前向和负向上解码。
因此,用户应根据应用选择适当的解码方法。
通常,选择正向解码;为了确保没有地址冲突,优选全地址解码;命令信号线C / BE [0~3]必须能够被解码。
(2)地址生成电路。
PCI的突发传输模式包括一个地址周期和几个数据周期,因此PCI接口电路必须包括高速地址生成单元,用于提供与后续应用电路的连接地址。
(3)控制信号的产生。
PCI总线上的数据传输基本上由FRAME,IRDY,TRDY和DEBVSEL四条信号线控制,因此必须根据主设备和从设备的忙碌状态相应地产生这些控制信号。
此外,PCI接口电路还应执行地址锁存和数据分离,命令锁存和字节选择信号分离的功能。
值得注意的是,该功能的设计必须考虑PCI规范中信号的负载能力。
实现PCI总线控制器有两种主要方式:使用可编程器件和专用接口芯片。
使用EPLD和FPGA等编程逻辑的优势在于其灵活的可编程性。
专用芯片可以实现完整的PCI主控模块和目标模块接口功能,并将复杂的PCI总线接口转换为相对简单的接口。
用户可以专注于应用程序设计,而不是调试PCI总线接口,从而显着缩短开发时间。
主模式操作是允许本地CPU访问PCI总线上的内存和I / O接口。
必须在PCI命令寄存器中启用模式选择,例如PCI主存储器和I / O范围寄存器,PCI基址寄存器,主配置和命令寄存器。
主要模式操作包括PCI主设备存储器和I / O解码,PCI主设备存储器和I / O配置访问,PCI双地址循环访问,PCI主设备存储器写入和无效。
从机模式允许PCI总线上的主设备访问本地总线上PCI 9054的配置寄存器或存储器,支持突发和单周期动态模式传输。
PCI 9054支持突发或单周期存储器映射访问以及通过16字PCI从读FIFO和32字PCI从写FIFO从PCI总线到本地总线的I / O映射访问。
PCI基址寄存器用于设置PCI存储器和I / O空间的地址。
从模式操作包括延迟读取操作,早期读取操作等。
PCI 9054具有强大的双通道分散/聚集DMA控制器,支持PCI主机和适配器内存,适用于高悬的公共安全室。
两个独立的DMA通道可以将数据从本地总线传输到PCI总线,从PCI总线传输到本地总线。
每个通道都包含一个DMA控制器和一个专用的双向FIFO。
两个通道都支持块传输,分散/聚集传输,应用或无EOT传输。
必须在PCI 9054成为PCI总线主机和主使能位(PCICR [2])之间启用模式选择。
此外,两个DMA通道都可以编程实现8,16或32位本地总线带宽;启用/禁用无效的内部等待周期;启用/禁用无效的本地总线突发传输;执行PCI内存写入和禁用操作;设置PCI中断(INTA)或本地中断(LINT)。