您的位置: 嵌入式在线 > 技术中心 > 总线设计 > 低成本PCI仲裁器逻辑扩展设计

低成本PCI仲裁器逻辑扩展设计

2007-12-11      嵌入式在线      收藏 | 打印
        本文论述了飞思卡尔公司32位处理器MPC5200B的PCI接口设计要点,阐述了PCI仲裁器逻辑扩展设计及方法。经过CPLD仿真及实际应用证明,该电路设计正确,针对MPC5200B有效地扩展了PCI仲裁器逻辑,增加了PCI总线上主设备个数。

       PCI总线是现今最为流行的控制总线之一,它广泛地应用在计算机中,目前嵌入式设备中的很多解决方案都包含了PCI总线。在多主设备的PCI系统应用中,必须为各个主设备提供仲裁授权信号。为了使PCI设备能够更方便地应用在嵌入式系统中,本文介绍一种基于飞思卡尔MPC5200B的低成本PCI总线仲裁器逻辑扩展的设计方法,此方法可以在已有的PCI仲裁器的基础上,实现扩展PCI总线上主设备的个数,从而满足多PCI设备的设计要求,提高系统的扩展性要求,在体积、功能、成本等诸多方面都有很好的应用前景。 

       MPC5200B 
       
       飞思卡尔公司的MPC5200B是基于PowerPC架构下的一款性能卓越的微处理器。它具有760MIPS、带浮点运算单元(FPU)、低功耗等特点。该处理器采用高性能的e300内核,集成了高性能存储控制器、中断控制器、DMA控制器、PCI控制器、以太网控制器以及USB、CAN 2.0A/B、I2C等丰富的接口。其结构框图如图1所示。

                                                           图1 MPC5200B 框图

        MPC5200B能够快速提供数据吞吐和处理。集成的 BestComm DMA控制器可降低主e300核心传送I/O密集数据的负荷。集成的双倍数据速率(DDR)内存控制器的有效内存总线速度达到266MHz,能够实现高速数据访问。 BestComm DMA 控制器和DDR内存支持的高速PCI 接口能够实现高速数据输入和输出。

       MPC5200B内部集成了一个PCI总线仲裁器,但其仲裁只支持两个外部PCI主设备(包含MPC5200B的PCI模块)。为了增加PCI主设备,我们必须对PCI仲裁器进行扩展。
  
        PCI总线仲裁

        PCI总线是一种共享式的总线,可以连接多个主设备,但由于数据传输的独享性,每一时刻只能由一个主设备占用总线。因此,为了有效地利用PCI总线带宽,总线上必须设置一个仲裁器。 

        每个具有主设备功能的PCI设备必须提供两个与仲裁有关的信号:REQ#(请求总线信号)和GNT#(总线授权信号)。由需要发起PCI传输事务的设备发出REQ#信号,由PCI总线仲裁器裁决后给出GNT#信号。接到GNT#信号的PCI设备将在下一次总线空闲后开始操作。 

        PCI总线仲裁的裁决过程可以在PCI传输期间完成,并不占用PCI总线的带宽,这被称为隐式仲裁:即需要发起PCI操作的设备可以随时发出请求REO#,PCI仲裁器立即批准该请求并给出GNT#。但实际的传输过程一定要等到当前传输完毕、线空闲后才可以开始。 
    
        具体设计及仿真 

        以MPC5200B外扩两个主PCI设备为例,依据PCI仲裁原理及MPC5200B PCI控制器接口,逻辑扩展方式如图2所示。其中逻辑单元(Logic Unit)就是本文详细阐述的部分。


                                      图2 MPC5200B PCI仲裁逻辑扩展示意图

       MPC5200B含有一个片上PCI总线仲裁器,现在需要对外扩展其仲裁功能,以满足多主PCI设备的需求。

       对于外扩PCI主设备而言,有两对REQ#和GNT#信号需要和MPC5200B片上PCI仲裁器进行通讯;对于MPC5200B而言,逻辑单元就是它一对一的主PCI设备,通讯信号为相关的PCI总线控制信号。逻辑单元电路如图3所示。


                                     图3 MPC5200B PCI仲裁逻辑扩展电路


                               图3b MPC5200B PCI仲裁逻辑扩展电路(续)

       PCI总线复位信号对逻辑电路复位后,如果仅有一个总线请求,则相对应的总线授权信号MASTER_GNT通过由此总线请求控制的MUX进行输出,实现总线“请求-授权”过程。

        如果两PCI外设同时产生总线请求信号REQ0#和REQ1#,则DR(Dual Require)信号配合PCI_PRAME和PCI_CLK,锁住NG(Next Grant)信号的更新,直到当前帧传输完毕。

         由图4可以看出,仿真环境模拟了一个设备申请和两个设备同时申请的情况,并分别给出了总线授权信号(GNT),验证了仲裁器扩展逻辑的正确性。

                                    图4 MPC5200B PCI仲裁逻辑扩展电路仿真

      结语

       PCI总线协议抽象性很强,且时序逻辑复杂。本文采用简单的逻辑设计实现了对于PCI仲裁器扩展,已经在CPLD中实现,成功应用于MPC5200B的PCI仲裁器逻辑扩展。

       参考文献:
      1.  MPC5200B User’s manual. Rev.1 
      2.  PCI Local Bus Specification. Rev 2.2

本文来源:电子产品世界    作者:飞思卡尔半导体(中国)有限公司上海分公司 田茂昕
热点资讯(一周点击率)
热评博文
评一评已有 0 位网友对此文发表了看法。  我也来评一下

验证码:  看不清?换一张

 

快乐大本营

    无线时代来临,移动产业生态系统将发生一些根本变化。今日头条推荐“芯片是嵌入式4G技术的关键 产业生态系统将发生变化”。

    想了解嵌入式开发工具的市场情况吗?先来体验下我们的在线调查吧!填写调查问卷

工程师之星
朱礼昆
电子信息工程专业,擅长硬件编程
  • 胡菲菲  技术专长:嵌入式系统linux
  • 柳如峰  技术专长:模电,电源
热门招聘
论坛热贴