PCI仲裁器邏輯擴展設計方案解析
PCI總線(xiàn)是現今最為流行的控制總線(xiàn)之一,它廣泛地應用在計算機中,目前嵌入式設備中的很多解決方案都包含了PCI總線(xiàn)。在多主設備的PCI系統應用中,必須為各個(gè)主設備提供仲裁授權信號。為了使PCI設備能夠更方便地應用在嵌入式系統中,本文介紹一種基于飛思卡爾MPC5200B的低成本PCI總線(xiàn)仲裁器邏輯擴展的設計方法,此方法可以在已有的PCI仲裁器的基礎上,實(shí)現擴展PCI總線(xiàn)上主設備的個(gè)數,從而滿(mǎn)足多PCI設備的設計要求,提高系統的擴展性要求,在體積、功能、成本等諸多方面都有很好的應用前景。
本文引用地址:http://dyxdggzs.com/article/190430.htmMPC5200B
飛思卡爾公司的MPC5200B是基于PowerPC架構下的一款性能卓越的微處理器。它具有760MIPS、帶浮點(diǎn)運算單元(FPU)、低功耗等特點(diǎn)。該處理器采用高性能的e300內核,集成了高性能存儲控制器、中斷控制器、 DMA控制器、PCI控制器、以太網(wǎng)控制器以及USB、CAN 2.0A/B、I2C等豐富的接口。其結構框圖如圖1所示。
圖1 MPC5200B 框圖
MPC5200B能夠快速提供數據吞吐和處理。集成的 BestComm DMA控制器可降低主e300核心傳送I/O密集數據的負荷。集成的雙倍數據速率(DDR)內存控制器的有效內存總線(xiàn)速度達到266MHz,能夠實(shí)現高速數據訪(fǎng)問(wèn)。 BestComm DMA 控制器和DDR內存支持的高速PCI 接口能夠實(shí)現高速數據輸入和輸出。
MPC5200B內部集成了一個(gè)PCI總線(xiàn)仲裁器,但其仲裁只支持兩個(gè)外部PCI主設備(包含MPC5200B的PCI模塊)。為了增加PCI主設備,我們必須對PCI仲裁器進(jìn)行擴展。
PCI總線(xiàn)仲裁
PCI總線(xiàn)是一種共享式的總線(xiàn),可以連接多個(gè)主設備,但由于數據傳輸的獨享性,每一時(shí)刻只能由一個(gè)主設備占用總線(xiàn)。因此,為了有效地利用PCI總線(xiàn)帶寬,總線(xiàn)上必須設置一個(gè)仲裁器。
每個(gè)具有主設備功能的PCI設備必須提供兩個(gè)與仲裁有關(guān)的信號:REQ#(請求總線(xiàn)信號)和GNT#(總線(xiàn)授權信號)。由需要發(fā)起PCI傳輸事務(wù)的設備發(fā)出 REQ#信號,由PCI總線(xiàn)仲裁器裁決后給出GNT#信號。接到GNT#信號的PCI設備將在下一次總線(xiàn)空閑后開(kāi)始操作。
PCI總線(xiàn)仲裁的裁決過(guò)程可以在PCI傳輸期間完成,并不占用PCI總線(xiàn)的帶寬,這被稱(chēng)為隱式仲裁:即需要發(fā)起PCI操作的設備可以隨時(shí)發(fā)出請求REO#,PCI仲裁器立即批準該請求并給出GNT#。但實(shí)際的傳輸過(guò)程一定要等到當前傳輸完畢、線(xiàn)空閑后才可以開(kāi)始。
具體設計及仿真
以MPC5200B外擴兩個(gè)主PCI設備為例,依據PCI仲裁原理及MPC5200B PCI控制器接口,邏輯擴展方式如圖2所示。其中邏輯單元(Logic Unit)就是本文詳細闡述的部分。
MPC5200B含有一個(gè)片上PCI總線(xiàn)仲裁器,現在需要對外擴展其仲裁功能,以滿(mǎn)足多主PCI設備的需求。
對于外擴PCI主設備而言,有兩對REQ#和GNT#信號需要和MPC5200B片上PCI仲裁器進(jìn)行通訊;對于MPC5200B而言,邏輯單元就是它一對一的主PCI設備,通訊信號為相關(guān)的PCI總線(xiàn)控制信號。邏輯單元電路如圖3所示。
圖3 MPC5200B PCI仲裁邏輯擴展電路
圖3b MPC5200B PCI仲裁邏輯擴展電路(續)
評論