位置:51电子网 » 技术资料 » 接口电路

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

发布时间:2008/8/16 0:00:00 访问次数:396

  本文论述了飞思卡尔公司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所示。

  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)就是本文详细阐述的部分。

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

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

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

  如果两pci外设同时产生总线请求信号req0#和req1#,则dr(dual require)信号配合pci_prame和pci_clk,锁住ng(next grant)信号的更新,直到当前帧传输完毕。

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

  结语

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

  欢迎转载,信息来自维库电子市场网(www.dzsc.com)



  本文论述了飞思卡尔公司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所示。

  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)就是本文详细阐述的部分。

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

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

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

  如果两pci外设同时产生总线请求信号req0#和req1#,则dr(dual require)信号配合pci_prame和pci_clk,锁住ng(next grant)信号的更新,直到当前帧传输完毕。

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

  结语

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

  欢迎转载,信息来自维库电子市场网(www.dzsc.com)



相关IC型号

Warning: Undefined variable $stockkeys in G:\website_51dzw\www.51dzw.com\code\tech\view.php on line 152

热门点击

 

推荐技术资料

耳机放大器
    为了在听音乐时不影响家人,我萌生了做一台耳机放大器的想... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式