基于FPGA的PCI總線接口控制器的設(shè)計_第1頁
基于FPGA的PCI總線接口控制器的設(shè)計_第2頁
基于FPGA的PCI總線接口控制器的設(shè)計_第3頁
基于FPGA的PCI總線接口控制器的設(shè)計_第4頁
基于FPGA的PCI總線接口控制器的設(shè)計_第5頁
已閱讀5頁,還剩60頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、南京航空航天大學(xué)碩士學(xué)位論文基于FPGA的PCI總線接口控制器的設(shè)計姓名:王麗媛申請學(xué)位級別:碩士專業(yè):電路與系統(tǒng)指導(dǎo)教師:臧春華20080201南京航空航天大學(xué)碩士學(xué)位論文摘要為了滿足外圍設(shè)備之間、外圍設(shè)備與主機(jī)之間高速數(shù)據(jù)傳輸,Intel公司于1991年提出PCI(Peripheral Component Interconnect總線的概念,即周邊器件互連。因?yàn)镻CI總線具有極高的數(shù)據(jù)傳輸率,所以在數(shù)字圖形、圖像和語音處理以及高速數(shù)據(jù)采集和處理等方面得到了廣泛的應(yīng)用。本論文首先對PCI總線協(xié)議做了比較深刻的分析,從設(shè)計要求和PCI總線規(guī)范入手,采用TOP-DOWN設(shè)計方法完成了PCI總線接

2、口從設(shè)備控制器FPGA設(shè)計的功能定義:包括功能規(guī)范、性能要求、系統(tǒng)環(huán)境、接口定義和功能描述。其次從簡化設(shè)計、方便布局的角度考慮,完成了系統(tǒng)的模塊劃分。并結(jié)合設(shè)計利用SDRAM控制器來驗(yàn)證PCI接口電路的性能。然后通過PCI總線接口控制器的仿真、綜合及硬件驗(yàn)證的描述介紹了用于FPGA功能驗(yàn)證的硬件電路系統(tǒng)的設(shè)計,驗(yàn)證系統(tǒng)方案的選擇,并描述了PCI總線接口控制器的布局布線結(jié)果以及硬件驗(yàn)證的電路設(shè)計和調(diào)試方法。通過編寫測試激勵程序完成了功能仿真,以及布局布線后的時序仿真,并設(shè)計了PCB實(shí)驗(yàn)板進(jìn)行測試,證明所實(shí)現(xiàn)的PCI接口控制器完成了要求的功能。最后,介紹了利用驅(qū)動程序開發(fā)工具DDK軟件進(jìn)行軟件設(shè)計

3、與開發(fā)的過程。完成系統(tǒng)設(shè)計及模塊劃分后,使用硬件描述語言(VHDL描述系統(tǒng),并驗(yàn)證設(shè)計的正確性。關(guān)鍵詞:PCI局部總線、TOP-DOWN設(shè)計方法、現(xiàn)場可編程門陣列、VHDL、PCB實(shí)驗(yàn)板、SDRAM控制器i基于FPGA的PCI總線接口控制器的設(shè)計iiAbstractThe Peripheral Component Interconnect (PCI bus is a high-bandwidth,"plug-and-play" bus protocol designed to meet the performance demands of the peripherals o

4、f today's high-performance PCs and workstations and their large bandwidth application. It is rapidly becoming widely accepted in the computer industry as it opens doors to performance demanding application such as video and audio system, graphics accelerator boards, 3D native signal processing,

5、network adapter, and data storage devices.This dissertation researches the design and implementation of PCI bus interface controller, based on Top-Down design method. The PCI Local Bus Specification is also analyzed comprehensively. The whole work is described with Verilog and implemented by FPGA. T

6、his dissertation is clued by the design and implementation of PCI bus interface controller, and it expatiates on the PCI bus interface controller, which involves all processes of design, coding, simulation, synthesis and test.In this research, the design of PCI bus interface controller is mainly dis

7、cussed. Its premise is PCI Bus Specification and its sticking points are to analysis the function and architecture of PCI bus controller. The whole- design and all sub modules implementation of PCI bus controller are also discussed in detail in this paper.This dissertation finishes the design of PCI

8、 bus interface controller, and it has also completed the function simulation as well as timing simulation after placing and routing. A PCB board is designed to test this controller and the result of test proves the validity of this controller to continued researches.Keywords: PCI Local Bus, TOP-DOWN

9、, FPGA, VHDL, PCB, SDRAM Controller南京航空航天大學(xué)碩士學(xué)位論文圖目錄圖2.1 PCI系統(tǒng)框架 (9圖2.2 PCI總線的應(yīng)用 (10圖2.3 PCI總線接口信號 (14圖2.4 總線突發(fā)讀操作的時序圖 (19圖2.5 總線突發(fā)寫操作時序關(guān)系 (19圖2.6 配置讀操作時序圖 (20圖2.7 配置寫操作時序圖 (21圖3.1 PCI總線接口控制器的模塊圖及總線接口圖 (27圖3.2 Memory基地址寄存器位格式 (29圖3.3 I/O基地址寄存器位格式 (29圖3.4 命令寄存器位格式 (32圖3.5 狀態(tài)寄存器位格式 (33圖3.6 PCI從設(shè)備狀態(tài)轉(zhuǎn)換

10、(33圖3.7 SDRAM控制器系統(tǒng)模型 (36圖3.8 SDRAM控制器的整體框架 (36圖4.1 典型的PQFP封裝PCI元件引腳分配 (42圖4.2 Memory單周期寫交易時序仿真 (44圖4.3 Memory單周期讀交易時序仿真 (44圖4.4 Memory突發(fā)寫交易時序仿真 (45圖4.5 Memory突發(fā)讀交易時序仿真 (45圖4.6 FPGA接口框圖 (48圖4.7 JTAG配置電路和AS配置電路 (48v承諾書本人鄭重聲明:所呈交的學(xué)位論文,是本人在導(dǎo)師指導(dǎo)下,獨(dú)立進(jìn)行研究工作所取得的成果。盡我所知,除文中已經(jīng)注明引用的內(nèi)容外,本學(xué)位論文的研究成果不包含任何他人享有著作權(quán)的內(nèi)

11、容。對本論文所涉及的研究工作做出貢獻(xiàn)的其他個人和集體,均已在文中以明確方式標(biāo)明。本人授權(quán)南京航空航天大學(xué)可以有權(quán)保留送交論文的復(fù)印件,允許論文被查閱和借閱,可以將學(xué)位論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進(jìn)行檢索,可以采用影印、縮印或其他復(fù)制手段保存論文。(保密的學(xué)位論文在解密后適用本承諾書作者簽名:日期:第一章引言1.1 課題的背景和研究意義進(jìn)入90年代以來,由于微處理器的飛速發(fā)展,開拓了計算機(jī)應(yīng)用的新領(lǐng)域,如復(fù)雜的圖像軟件在線交易處理、全運(yùn)動視頻處理、高保真音響、WindowsNT 多任務(wù)、局域網(wǎng)以及多媒體的應(yīng)用等。這些應(yīng)用經(jīng)常需要在CPU與外設(shè)之間進(jìn)行大量以及高速的數(shù)據(jù)傳輸和處理,但傳統(tǒng)的微

12、機(jī)總線ISA、EISA等無法傳送上述應(yīng)用的大量數(shù)據(jù),為此,被稱為高性能計算機(jī)的“秘密武器”PCI(Peripheral Component Interconnection即外圍部件互連局部總線技術(shù)應(yīng)運(yùn)而生。在1991年底,美國Inter公司電腦機(jī)構(gòu)實(shí)驗(yàn)室首先提出了以PCI技術(shù)解決外設(shè)和CPU間數(shù)據(jù)通道窄的問題,并在極短的時間內(nèi)實(shí)現(xiàn)了PCI技術(shù)4。傳統(tǒng)的總線結(jié)構(gòu)往往把高速數(shù)據(jù)通道預(yù)留給CPU、高速緩存及內(nèi)存子系統(tǒng)使用,而外設(shè)卡到擴(kuò)充總線控制器的數(shù)據(jù)通道卻既慢又窄,影像外設(shè)到CPU、高速內(nèi)存子系統(tǒng)的數(shù)據(jù)傳輸。PCI總線推出后,以其突出的性能倍受計算機(jī)和通信業(yè)界的青睞,將取代以往的總線,稱為高檔微機(jī)

13、及高性能工作站的外部基石。PCI作為局部總線,一邊與處理器和存儲器總線接口,另一邊為外設(shè)擴(kuò)展提供了高速的通道。33MHZ,32位的PCI總線可以實(shí)現(xiàn)132MB/S的數(shù)據(jù)傳輸速率,64位的PCI總線性能加倍,可將系統(tǒng)的數(shù)據(jù)傳輸速率提高到264MB/S??偩€接口是外設(shè)或外部數(shù)據(jù)網(wǎng)絡(luò)和計算機(jī)之間的接口,外設(shè)通過總線接口與PC交換數(shù)據(jù)、共享資源。一方面,接口電路接收外部傳來的數(shù)據(jù),再傳給本地計算機(jī);另一方面,本地計算機(jī)上的數(shù)據(jù)也必須經(jīng)總線接口才能傳至外部?;诓煌目偩€標(biāo)準(zhǔn),都存在多種可供選擇的總線控制器,它們具有不同的特性和參數(shù),需要不同的外圍設(shè)備支持。PCI優(yōu)越的特性使得PCI總線接口的研究和開發(fā)

14、成為一個熱點(diǎn)。開發(fā)以PCI 總線為基礎(chǔ)的數(shù)據(jù)傳輸控制設(shè)備是技術(shù)發(fā)展的必然要求。在實(shí)際工作中,利用PCI總線將數(shù)據(jù)直接傳到系統(tǒng)內(nèi)存,可有效解決數(shù)據(jù)的實(shí)時傳輸和存儲,為信號的實(shí)時處理提供方便。本研究課題就是開發(fā)以PCI2.2協(xié)議為基礎(chǔ)的PCI總線接口控制器,使后端應(yīng)用設(shè)備通過該總線接口控制器與主機(jī)進(jìn)行高速的數(shù)據(jù)傳輸,使用戶避免解決與PCI總線接口相關(guān)的復(fù)雜問題,只需要通過接口控制器便可方便快捷的作為PCI 目標(biāo)設(shè)備來進(jìn)行PCI總線的高速數(shù)據(jù)傳輸,有很大的靈活性。該P(yáng)CI總線接口控制器時鐘頻率為33MHZ,數(shù)據(jù)為32位,支持單數(shù)據(jù)段傳輸和突發(fā)傳輸兩種方式,提供奇偶校驗(yàn)生成和奇偶校驗(yàn)測試,支持0型配置

15、訪問,實(shí)現(xiàn)16雙字的PCI配置空間存儲器,支持配置空間讀寫、I/O讀寫、存儲器讀寫等PCI總線命令,可應(yīng)用于CPU與視頻卡的高速數(shù)據(jù)傳輸中以滿足視頻處理對數(shù)據(jù)的實(shí)時性要求3033。1.2 計算機(jī)總線技術(shù)和應(yīng)用總線是構(gòu)成計算機(jī)系統(tǒng)的互連機(jī)構(gòu),是多個系統(tǒng)功能部件之間進(jìn)行數(shù)據(jù)傳送的公共通路。以總線形式將計算機(jī)各個模塊:CPU模塊、存儲器模塊、各種I/O 模塊互聯(lián)在一起,有序的交換信息,從而構(gòu)成計算機(jī)整體。微型計算機(jī)系統(tǒng)中廣泛采用總線結(jié)構(gòu),其優(yōu)點(diǎn)是系統(tǒng)成本低、功能靈活、維修方便。采用總線標(biāo)準(zhǔn),生產(chǎn)的硬件模塊兼容性強(qiáng),并通過系統(tǒng)總線可以方便的組合在一起,以構(gòu)成滿足不同需要的微機(jī)系統(tǒng)。計算機(jī)總線技術(shù)包括通

16、道控制功能、使用方法、仲裁方法和傳輸方式等,任何系統(tǒng)的研制和外圍模塊的開發(fā),都必須服從一定的總線規(guī)范??偩€的結(jié)構(gòu)不同,性能差別很大。計算機(jī)總線的主要職能是負(fù)責(zé)計算機(jī)各模塊間的信息傳輸,因此,對總線性能的衡量,也是圍繞著這一職能而定義、測試和比較的。總線的傳輸速率是其性能的主要技術(shù)指標(biāo)。另外,總線的可操作性、兼容性和性能價格比,也是很重要的技術(shù)特征。隨著計算機(jī)技術(shù)的不斷發(fā)展、微型計算機(jī)的體系結(jié)構(gòu)發(fā)生了顯著的變化。比如CPU運(yùn)行速度的提高,多處理器結(jié)構(gòu)的出現(xiàn),高速緩沖存儲器的廣泛采用等,都要求有高速的總線來傳輸數(shù)據(jù),從而出現(xiàn)了多總線結(jié)構(gòu)。多總線結(jié)構(gòu)是指CPU 與存儲器、I/O等設(shè)備之間有兩種以上的

17、總線,這樣可以將慢速的設(shè)備和快速的設(shè)備掛在不同的總線上、減少總線競爭現(xiàn)象,使系統(tǒng)效率大大提高19。在多總線結(jié)構(gòu)中,局部總線的發(fā)展令人矚目,局部總線是指來自處理器的延伸線路,與處理器同步操作。外部設(shè)備如果直接掛到局部總線上就能以CPU的速度運(yùn)行。由于局部總線具有極高的數(shù)據(jù)傳輸率,因此在CPU與高速緩沖寄存器、CPU與高速圖形卡等需要高速傳輸信息的場合得到了廣泛的應(yīng)用。一個單處理器系統(tǒng)中的總線,大致分為三類:1. 內(nèi)部總線:CPU內(nèi)部連接各寄存器及運(yùn)算部件之間的總線。2. 系統(tǒng)總線:CPU同計算機(jī)系統(tǒng)的其他高速功能部件,如存儲器、通道等互相連接的總線。3. I/O總線:中、低速I/O設(shè)備之間互相連

18、接的總線。計算機(jī)技術(shù)可以說是日新月異,隨著微處理機(jī)、多媒體和網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,以及當(dāng)今多任務(wù)操作系統(tǒng)和功能豐富的應(yīng)用程序產(chǎn)生,人們對微機(jī)系統(tǒng)的I/O 帶寬不斷提出新的要求,其間經(jīng)歷了包括MCA、VESA 等在內(nèi)的多種總線規(guī)格,但從整體來看,大致只經(jīng)過了ISA 和PCI 總線兩個階段。最早的PC總線是IBM公司1981年在PC/XT 電腦采用的系統(tǒng)總線,它基于8bit的8088 處理器,被稱為PC總線或者PC/XT總線。在1984年的時候, IBM 推出基于16-bit Intel 80286處理器的PC/AT 電腦,系統(tǒng)總線也相應(yīng)地擴(kuò)展為16bit,并被稱呼為PC/AT 總線。而為了開發(fā)與I

19、BM PC 兼容的外圍設(shè)備,行業(yè)內(nèi)便逐漸確立了以IBM PC 總線規(guī)范為基礎(chǔ)的ISA(工業(yè)標(biāo)準(zhǔn)架構(gòu):Industry Standard Architecture 總線33。ISA 是8/16bit 的系統(tǒng)總線,最大傳輸速率僅為8MB/s ,但允許多個CPU 共享系統(tǒng)資源。由于兼容性好,它在上個世紀(jì)80年代是最廣泛采用的系統(tǒng)總線,不過它的弱點(diǎn)也是顯而易見的,比如傳輸速率過低、CPU占用率高、占用硬件中斷資源等。后來在PC98 規(guī)范中,就開始放棄了ISA 總線,而Intel 從i810 芯片組開始,也不再提供對ISA 接口的支持。使用286和386SX以下CPU的電腦似乎和8/16bit ISA

20、總線還能夠相處融洽,但當(dāng)出現(xiàn)了32-bit 外部總線的386DX處理器之后,總線的寬度就已經(jīng)成為了嚴(yán)重的瓶頸,并影響到處理器性能的發(fā)揮。因此在1988年,康柏、惠普等9個廠商協(xié)同把ISA 擴(kuò)展到32-bit,這就是著名的EISA(Extended ISA,擴(kuò)展ISA總線。EISA 總線的工作頻率仍舊僅有8MHz ,并且與8/16bit 的ISA總線完全兼容,由于是32-bit 總線的緣故,帶寬提高了一倍,達(dá)到了32MB/s .可惜的是, EISA 仍舊由于速度有限,并且成本過高,在還沒成為標(biāo)準(zhǔn)總線之前,在20世紀(jì)90年代初的時候,就被PCI 總線給取代了。CPU 的飛速發(fā)展,ISA/EISA

21、逐漸顯現(xiàn)出疲態(tài),跟不上時代的步伐。當(dāng)時CPU 的速度甚至還高過總線的速度,造成硬盤、顯示卡還有其它的外圍設(shè)備只能通過慢速并且狹窄的瓶頸來發(fā)送和接收數(shù)據(jù),使得整機(jī)的性能受到嚴(yán)重的影響。為了解決這個問題,1992年Intel 在發(fā)布486處理器的時候,也同時提出了32-bit 的PCI總線。最早提出的PCI 總線工作在33MHz 頻率之下,傳輸帶寬達(dá)到了133MB/s (33MHz X 32bit/8,比ISA 總線有了極大的改善,基本上滿足了當(dāng)時處理器的發(fā)展需要。隨著對更高性能的要求,1993年提出了64-bit 的PCI 總線,后來又提出把PCI 總線的頻率提升到66MHz .目前廣泛采用的是

22、32-bit、33MHz 的PCI 總線39。PCI 總線是獨(dú)立于CPU 的系統(tǒng)總線,采用了獨(dú)特的中間緩沖器設(shè)計,可將顯示卡、聲卡、網(wǎng)卡、硬盤控制器等高速的外圍設(shè)備直接掛在CPU 總線上,打破了瓶頸,使得CPU 的性能得到充分的發(fā)揮。1.3 論文涉及的關(guān)鍵技術(shù)本課題采用了EDA設(shè)計方法和多種關(guān)鍵技術(shù),例如:FPGA與CPLD技術(shù)、VHDL語言編程技術(shù)、PCI局部總線技術(shù)等。EDA技術(shù)是以大規(guī)??删幊踢壿嬈骷樵O(shè)計載體,以硬件描述語言(HDL為系統(tǒng)邏輯描述的主要表達(dá)方式,以計算機(jī)、大規(guī)??删幊踢壿嬈骷拈_發(fā)軟件及實(shí)驗(yàn)開發(fā)系統(tǒng)為設(shè)計工具,通過有關(guān)的開發(fā)軟件,自動完成用軟件方式設(shè)計的電子系統(tǒng)到硬件系

23、統(tǒng)的邏輯編譯、邏輯化簡、邏輯分割、邏輯綜合與優(yōu)化、邏輯布局布線、邏輯仿真,直至對于特定目標(biāo)芯片的適配編譯、邏輯映射、編程下載等工作,最終形成集成電子系統(tǒng)或?qū)S眉尚酒囊婚T新技術(shù)。與傳統(tǒng)的電子設(shè)計技術(shù)相比,EDA技術(shù)的優(yōu)越性主要表現(xiàn)在:1. 縮短設(shè)計周期方案或概念構(gòu)思以高層次描述的形式輸入計算機(jī)后,EDA系統(tǒng)就能以規(guī)則驅(qū)動的方式自動完成整個設(shè)計,大大縮短了產(chǎn)品的研發(fā)周期。2. 節(jié)省設(shè)計費(fèi)用EDA技術(shù)使電子工程師在實(shí)際的電子系統(tǒng)產(chǎn)生之前就可以采用較為精確的模型,全面地了解系統(tǒng)的功能特性和物理特性,實(shí)現(xiàn)各種分析,從而將開發(fā)過程中出現(xiàn)的缺陷消滅在設(shè)計階段,不僅縮短了開發(fā)時間,也降低了開發(fā)成本。3.

24、設(shè)計資源共享在EDA系統(tǒng)中,成熟的單元設(shè)計、各種模型及其相關(guān)參數(shù)均存放在數(shù)據(jù)庫文件中。在完成電路設(shè)計后,可以很方便地生成各種需要的數(shù)據(jù)文件與報表文件,用戶可以直接共享這些設(shè)計資源。4. 驗(yàn)證電路方案設(shè)計的正確性EDA技術(shù)可用于系統(tǒng)方案設(shè)計或某種新理論、新構(gòu)思的方案設(shè)計,進(jìn)而對構(gòu)成系統(tǒng)的各種電路結(jié)構(gòu)進(jìn)行模擬分析.以判斷電路結(jié)構(gòu)設(shè)計的正確性及其性能指標(biāo)的可實(shí)現(xiàn)性。5. 實(shí)現(xiàn)電路特性的模擬測試采用EDA方式可以方便地實(shí)現(xiàn)全功能測試,也可以直接模擬各種惡劣的工作環(huán)境及各種極限條件F的電路特性而不損壞器件或電路,比傳統(tǒng)的設(shè)計方式要經(jīng)濟(jì)的多45??傊?利用EDA技術(shù)進(jìn)行電子系統(tǒng)的設(shè)計實(shí)質(zhì)上就是用軟件的方式

25、設(shè)計硬件,它最突出的優(yōu)點(diǎn)就是軟件方式設(shè)計的系統(tǒng)到硬件系統(tǒng)的轉(zhuǎn)換是由相關(guān)的開發(fā)軟件自動完成的,設(shè)計過程中可使用有關(guān)軟件進(jìn)行各種仿真,系統(tǒng)可現(xiàn)場編程、在線升級,整個系統(tǒng)可集成在一個芯片上,體積小,功耗低,可靠性高。正是這些優(yōu)點(diǎn),使得EDA技術(shù)成為現(xiàn)代電子設(shè)計的發(fā)展趨勢。傳統(tǒng)的硬件系統(tǒng)采用的是自下而上(Bottom-Up的設(shè)計方法,這種方法的仿真和調(diào)試都在設(shè)計后期進(jìn)行,因而對設(shè)計人員有較高的要求,一旦考慮不周,就會引起設(shè)計回溯,使得設(shè)計周期和開發(fā)成本大大增加。另外,它的主要設(shè)計文件是電路圖,不利于歸檔、保存和維護(hù),同時閱讀、修改也非常不便。隨著電子工業(yè)的飛速發(fā)展,這種方法顯然已不能適應(yīng)新的形式,為此

26、,引入了一種高層次的設(shè)計方法。即自上而下(Top-Down的設(shè)計方法。具體地說,Top-Down設(shè)計方法具有以下優(yōu)點(diǎn):1. 提高了設(shè)計速度,縮短了產(chǎn)品的開發(fā)周期由于高層次設(shè)計的描述采用行為級描述語言,這種語言不僅易于描述,而且簡潔易懂,一般來說,行為級HDL大約僅為相同功能RTL級HDL代碼的十分之一。2. 有效地保證了設(shè)計質(zhì)量,降低了設(shè)計成本高層次設(shè)計中行為描述通常要比低層次的結(jié)構(gòu)描述簡潔而且易于編寫和理解,這就相應(yīng)地降低了設(shè)計的復(fù)雜性,減少了描述錯誤,且容易檢查和修改。另外,由于描述層次的提高而大大縮短了仿真時間,并使設(shè)計中出現(xiàn)的問題能在早期得到發(fā)現(xiàn),降低整體設(shè)計的成本。3. 優(yōu)化產(chǎn)品設(shè)計

27、方案基于行為級的設(shè)計可以優(yōu)化系統(tǒng)的體系結(jié)構(gòu),可尋求最優(yōu)或較優(yōu)的設(shè)計方案,并快速評估多種結(jié)構(gòu)間的性價比。4. 與工藝無關(guān),提高了設(shè)計的再利用性在高層次設(shè)計中,由于VHDL語言具有與工藝無關(guān)的特性,因而在行為和結(jié)構(gòu)級可不必關(guān)心與工藝相關(guān)的細(xì)節(jié),這就為設(shè)計的再利用性提供了條件,也為今后更快地設(shè)計出新產(chǎn)品創(chuàng)造了條件,即使半導(dǎo)體廠商的工藝改變,也只需改變相應(yīng)的映射工具,重新進(jìn)行綜合即可。5. 大大提高了設(shè)計的可交流性在高層次設(shè)計中,用戶一般以VHDL語言描述作為設(shè)計的規(guī)范說明和需求說明,在經(jīng)高層次綜合、用戶修改、驗(yàn)證之后,仍可將結(jié)果轉(zhuǎn)換為VHDL語言的描述方式,從而可以實(shí)現(xiàn)設(shè)計過程的自動文檔化。6. 提

28、高了產(chǎn)品的可測試性通過高層次設(shè)計的產(chǎn)品,可降低設(shè)計的復(fù)雜性和故障覆蓋率,提高產(chǎn)品的可測試性。由于Top-Down的設(shè)計方法具有諸多傳統(tǒng)設(shè)計方法所無可比擬的優(yōu)點(diǎn),所以在研制數(shù)據(jù)通信接口板時本人也采用這種方法。美國國防部開發(fā)的VHDL (Very high speed Hardware Description Language語言是唯一被公認(rèn)的硬件描述語言之一,它出現(xiàn)于80年代,并于1987年12月作為IEEE-STD-1076標(biāo)準(zhǔn)公布開發(fā)。作為一種電路設(shè)計高級語言,VHDL有著其它硬件描述語言所無與倫比的優(yōu)越性,具體表現(xiàn)在以下兒個方面:1. 設(shè)計技術(shù)齊全、方法靈活、支持廣泛VHDL語言不僅支持T

29、op-Down, Botom-Up,混合和基于庫(Library-Based的設(shè)計方法,而且還支持同步電路、異步電路、FPGA以及其它隨機(jī)電路的設(shè)計。2. 系統(tǒng)硬件描述能力強(qiáng)VHDL語言具有多層次描述系統(tǒng)硬件功能的能力,可以從系統(tǒng)的數(shù)學(xué)模型直到門級電路進(jìn)行描述。另外,高層次的行為描述可以和低層次的RTL描述與結(jié)構(gòu)描述混合使用。VHDL語言能進(jìn)行系統(tǒng)級的硬件描述,這是它最突出的一個優(yōu)點(diǎn)。其它HDL語言,例如Verilog等只能進(jìn)行IC級、PCB級描述,而不能對系統(tǒng)級的硬件很好地進(jìn)行描述。3. 可以與工藝無關(guān)編程在用VHDL語言設(shè)計系統(tǒng)硬件時,沒有嵌入與工藝有關(guān)的信息。與大多數(shù)HDL語言不同,采用

30、VHDL語言設(shè)計時,當(dāng)門級或門級以上層次的描述通過仿真驗(yàn)證以后,再用相應(yīng)的工具將設(shè)計映射成不同的工藝。這樣,在工藝更新時,無需修改原設(shè)計程序,只需改變相應(yīng)的映射工具即可。由此可見,無論修改電路還是修改工藝,兩者相互之間不會產(chǎn)生什么不良影響。4. VHDL語言標(biāo)準(zhǔn)、規(guī)范,易于共享和復(fù)用由于VHDL語言已作為一種IEEE的工業(yè)標(biāo)準(zhǔn),所以其設(shè)計結(jié)果便于復(fù)用和交流。VHDL語言的語法嚴(yán)格,其風(fēng)格類似于Ada語言,給閱讀和使用都帶來極大的方便。由于VHDL語言具有以上優(yōu)點(diǎn),所以該課題將它作為描述邏輯的主要表達(dá)方式663??删幊唐骷LD經(jīng)過幾年的發(fā)展,芯片規(guī)模、密度和性能都有了驚人的變化。而作為PLD的

31、主流產(chǎn)品,FPGA和CPLD更是物美價廉,應(yīng)用廣泛。本節(jié)就FPGA和CPLD技術(shù)做一簡要介紹?,F(xiàn)場可編程門陣列(FPGA: Field Programmable Gate Array和復(fù)雜可編程邏輯器件(CPLD: Complex Programmable Logic Device是實(shí)現(xiàn)EDA的基礎(chǔ),是EDA思想的最終表述手段,它們同屬于近年來發(fā)展迅速的大規(guī)??删幊虒S眉呻娐贰M酝腜AL、GAL相比,FPGA 與CPLD的規(guī)模較大,適合于時序、組合等邏輯電路的設(shè)計,它們可以替代幾十甚至上百片通用IC芯片。一般來說,FPGA與CPLD具有以下優(yōu)點(diǎn)14:1. 集成度高,容量大隨著超大規(guī)模集成

32、電路工藝的不斷提高,單一芯片內(nèi)部可以容納上百萬個晶體管,FPGA與CPLD芯片的規(guī)模也越來越大。2. 花費(fèi)低廉設(shè)計人員只需在實(shí)驗(yàn)室里就可以通過相關(guān)的軟硬件來完成芯片最終的功能指定,現(xiàn)場可編程技術(shù)使可編程器件在使用上更為方便,因此研發(fā)費(fèi)用相對較低。3. 可重復(fù)編程FPGA與CPLD芯片和PROM配合使用時,用戶可以反復(fù)編程、擦除或在外圍電路不動的情況下用不同的PROM就可以實(shí)現(xiàn)不同的功能。4. 設(shè)計周期短FPGA與CPLD軟件包中不但有各種輸入工具和仿真工具,而且還有版圖設(shè)計工具和編輯器等全線產(chǎn)品,電路設(shè)計人員在很短時間內(nèi)就可完成電路的輸入、編譯、優(yōu)化和仿真,直至最后芯片的制作。勻易于開發(fā)電路設(shè)

33、計人員在使用FPGA 與CPLD進(jìn)行電子設(shè)計時,不需要具備專門的IC深層知識,EDA軟件大多簡單易用,可以使設(shè)計人員集中精力進(jìn)行電路設(shè)計。基于以上原因,在數(shù)據(jù)通信接口板的研制過程中,我們采用了FPGA與CPLD技術(shù)。1.4 論文研究內(nèi)容本論文分為五章,具體安排如下:第一章:引言介紹課題的背景和意義。主要研究PCI總線技術(shù)的發(fā)展歷史、現(xiàn)狀以及未來的趨勢。介紹PCI總線技術(shù)在網(wǎng)絡(luò)和視頻傳輸上的重要意義,研究現(xiàn)階段實(shí)現(xiàn)PCI總線協(xié)議的手段,并介紹現(xiàn)代EDA設(shè)計用到的工具:FPGA設(shè)計工具、邏輯仿真工具、PCB布線工具等。第二章:PCI局部總線的協(xié)議介紹PCI局部總線的體系結(jié)構(gòu),與其他總線性能進(jìn)行比較

34、有何優(yōu)點(diǎn),以及他的應(yīng)用領(lǐng)域。然后系統(tǒng)介紹PCI局部總線協(xié)議。第三章:PCI總線接口邏輯的設(shè)計根據(jù)PCI總線規(guī)范結(jié)合自身的設(shè)計目標(biāo)進(jìn)行具體電路設(shè)計。并結(jié)合設(shè)計SDRAM控制器來驗(yàn)證PCI接口電路的性能。第四章:PCI總線接口控制器的仿真、綜合及硬件系統(tǒng)設(shè)計原理圖和PCB設(shè)計是整個硬件實(shí)現(xiàn)的一個非常重要的環(huán)節(jié),特別是信號完整性的處理會影響到整個電路工作的性能。第五章:驅(qū)動程序設(shè)計和板卡的驗(yàn)證。第二章PCI局部總線規(guī)范2.1 PCI總線的系統(tǒng)結(jié)構(gòu) 圖2.1 PCI系統(tǒng)框架在圖2.1中,各種外設(shè)可直接與PCI總線連接,然后通過PCI主橋路芯片,所有的PCI外設(shè)元件均可與處理器相匹配,從而使PCI總線與

35、處理器保持相對獨(dú)立。這樣,當(dāng)處理器更新時,只要更換相應(yīng)的主橋路芯片,系統(tǒng)的其他部分可保持不變。因此,無論是外設(shè)的升級還是處理器的更新,都對PCI總線體系結(jié)構(gòu)的影響很小。另外,處理器/Cache/存儲器子系統(tǒng)經(jīng)過一個PCI橋連接到PCI總線上,這個橋提供了一個低延遲的訪問通路,處理機(jī)可以通過它直接訪問到映射于存儲器地址空間或I/O地址空間任何地方的PCI設(shè)備。同時,他提供了允許PCI主設(shè)備直接訪問主存儲器的高速通路。一些PCI中央功能(例如仲裁一般要由這個橋來提供。另外,PCI橋可以提供數(shù)據(jù)緩沖能力,使處理器與PCI總線上的設(shè)備可以并行工作而不必相互等待。橋的另一個重要作用是使PCI總線的操作與

36、處理器總線分開,使它們互不影響42。2.2 PCI總線的應(yīng)用對于一個新型總線標(biāo)準(zhǔn),只有提供高性能、低成本、應(yīng)用廣泛、生命周期長等優(yōu)點(diǎn),才能成為工業(yè)標(biāo)準(zhǔn)。不但要著眼當(dāng)前系統(tǒng)應(yīng)達(dá)到新的性能價格比,更重要的是要能適應(yīng)將來的系統(tǒng)要求,能在多種平臺和體系結(jié)構(gòu)上應(yīng)用。圖2.2說明了PCI總線的多種應(yīng)用范圍。PCI局部總線不僅可以應(yīng)用到低檔至高檔的臺式系統(tǒng)上,而且也可應(yīng)用在便攜機(jī)乃至服務(wù)器的范圍中。對于便攜機(jī)應(yīng)用要求3.3V電源的同時,臺式機(jī)應(yīng)用也迫切要求由5V電源改為3.3V電源,這必須在標(biāo)準(zhǔn)中予以考慮。因此,PCI 局部總線規(guī)范中明確制定了兩種電源電壓,并說明了相應(yīng)的轉(zhuǎn)變途徑。即為此定義了兩種插接卡連接

37、器:一種是5V信號環(huán)境,一種是3.3V信號環(huán)境;同時為這兩種信號環(huán)境規(guī)定了三種插接卡電氣類型,分別是5V卡、3.3V卡和通用卡,其中通用卡是實(shí)現(xiàn)5V到3.3V過渡時使用的5。 圖2.2 PCI總線的應(yīng)用PCI的自動配置功能使其應(yīng)用更為方便,由于該總線標(biāo)準(zhǔn)為其元件及插接分配了相應(yīng)的配置寄存器,對于一個系統(tǒng)只要有嵌入的自動配置軟件,就可以在加電時自動配置PCI總線上的設(shè)備,為用戶提供了很大的方便。2.3 PCI總線的特點(diǎn)在PCI (peripheral component interconnect總線標(biāo)準(zhǔn)出現(xiàn)前曾經(jīng)廣泛流行的總線標(biāo)準(zhǔn)有ISA總線、EISA總線以及IBM的MCA總線等。衡量總線標(biāo)準(zhǔn)好

38、壞的性能指標(biāo)是:1. 總線寬度W:即數(shù)據(jù)總線的寬度,以bit為單位。2. 尋址能力:即可直接尋址的存儲器空間的大小。3. 傳輸率:由以下公式?jīng)Q定:Q= W*f /N。其中Q為帶寬(單位為MB/s,W是總線寬度,f,是總線時鐘頻率,N是完成一次數(shù)據(jù)傳送所需的時鐘數(shù)。4. 總線的握手協(xié)議:同步總線以統(tǒng)一的總線時鐘為基準(zhǔn),其控制電路最簡單,數(shù)據(jù)傳送速度快,但是不適合在速度相差很大的設(shè)備間互聯(lián);異步總線嚴(yán)密的握手協(xié)議使傳送絕對可靠,但是其控制電路復(fù)雜,而且一次傳送需要一對握手信號在總線上應(yīng)答兩個來回,造成額外的延遲,因此數(shù)據(jù)傳輸率不高。半同步總線兼有二者的優(yōu)點(diǎn)。5. 負(fù)載能力:即總線上可以掛接的設(shè)備數(shù)

39、目。6. 突發(fā)傳送:在傳送開始后,只需給出數(shù)據(jù)的首地址,然后連續(xù)地發(fā)送多個數(shù)據(jù),后續(xù)數(shù)據(jù)的地址按一定的算法得出,可以實(shí)現(xiàn)一個時鐘傳送一個數(shù)據(jù)。和其他總線標(biāo)準(zhǔn)相比,PCI總線有以下優(yōu)點(diǎn)9:1. 高性能:PCI是一套整體的系統(tǒng)解決方案,較其他只為加速圖形或視頻操作的局部總線優(yōu)越。它提供高速網(wǎng)絡(luò)界面卡、硬盤的性能;可以出色的配合全活動影像、及各種高速外圍設(shè)備的要求,PCI局部總線以33MHZ的時鐘頻率操作,采用32位數(shù)據(jù)總線,可支持多組外圍部件及附加卡。數(shù)據(jù)傳輸速率可高達(dá)132MB/S,遠(yuǎn)遠(yuǎn)超過標(biāo)準(zhǔn)ISA總線5MB/S的速率。即使在32位的情況下,也能支持奔騰級電腦的圖形數(shù)據(jù)傳輸速率。2. 線性突發(fā)

40、傳輸:PCI能支持一種稱為線性突發(fā)的數(shù)據(jù)傳輸模式,可確保總線不斷滿載數(shù)據(jù)。外圍設(shè)備一般會由內(nèi)存某個地址順序接收數(shù)據(jù),這種線性或順序的尋址方式意味著可以由某一個地址起讀寫大量數(shù)據(jù),然后每次只需將地址自動加1,便可以接收數(shù)據(jù)流內(nèi)下一個字節(jié)的數(shù)據(jù)。線性突發(fā)傳輸能夠更有效的運(yùn)用總線的帶寬去傳送數(shù)據(jù),以減少無謂的地址操作。另外,PCI最獨(dú)特之處是可以支持突發(fā)讀取及突發(fā)寫入,對使用高性能圖形加速器尤為重要。3. 極小的存取延誤:支持PCI的設(shè)備,存取延誤很小,能夠大幅度減少外圍設(shè)備取得總線控制權(quán)所需的時間,例如,連接局部網(wǎng)絡(luò)的以太網(wǎng)控制器,其緩沖區(qū)隨時需要由網(wǎng)絡(luò)接收大型檔案,由于要等待使用總線的批準(zhǔn),從而

41、使以太網(wǎng)界面卡往往無法及時在緩沖區(qū)溢出之前迅速將數(shù)據(jù)送給中央處理器,網(wǎng)絡(luò)界面卡被迫將文件內(nèi)容存在額外的內(nèi)存區(qū)。對于PCI兼容的外圍設(shè)備,由于它能提供更快速的存取,因此以太網(wǎng)卡可及時將數(shù)據(jù)傳至中央處理器,減少所需的額外內(nèi)存,從而降低附加卡的整體成本。4. 采用總線主控和同步操作:PCI的總線主控和同步操作功能有利于PCI 性能的改善??偩€主控是大多數(shù)總線都具有的功能,目的是讓任何一個具有處理能力的外圍設(shè)備暫時接管總線,以加速度執(zhí)行高吞吐量、高優(yōu)先級的任務(wù)。PCI 獨(dú)特的同步操作功能可保證微處理器能夠與這些主控同時操作不必等待后者的完成。5. 不受處理器限制:PCI獨(dú)立于處理器的結(jié)構(gòu),形成一種獨(dú)特

42、的中間緩沖器設(shè)計方式,將中央處理器子系統(tǒng)與外圍設(shè)備分開。一般來說,在中央處理總線上增加更多的設(shè)備或部件,只會降低性能的可靠程度。而有了緩沖器的設(shè)計方式,用戶可以隨意增添外圍設(shè)備,以擴(kuò)展電腦系統(tǒng)而不必?fù)?dān)心在不同時鐘頻率下會導(dǎo)致性能的下降。獨(dú)立于處理器的總線設(shè)計還可以保證處理器技術(shù)的變化不會使任何個別系統(tǒng)的設(shè)計變得過時,使消費(fèi)者大為受惠。6. 適合于各種機(jī)型:PCI局部總線不只是為標(biāo)準(zhǔn)的臺式電腦提供合理的局部總線設(shè)計,同時也適用于便攜式電腦和服務(wù)器。它可以為便攜式電腦及筆記本電腦提供臺式電腦的圖形性能,可支持3.3V的電源環(huán)境,延長電池壽命,為電腦的小型化創(chuàng)造了良好的實(shí)現(xiàn)條件。PCI可縮小零件的尺

43、寸,減少零件的數(shù)目,從而節(jié)省了寶貴的線路板空間,可使系統(tǒng)設(shè)計者在其產(chǎn)品中加入更多功能。在服務(wù)器環(huán)境下,PCI支持分級式外圍設(shè)備的特性,可使一個PCI界面支持一組級聯(lián)的PCI局部總線;也可以使設(shè)置為多組PCI總線的服務(wù)器增添額外的擴(kuò)展插槽,提供更多的I/O接口,并將高帶寬與低帶寬的數(shù)據(jù)分割開來。7. 兼容性強(qiáng):由于PCI的設(shè)計是要輔助現(xiàn)有的擴(kuò)展總線標(biāo)準(zhǔn),因此它與ISA、EISA及MCA總線完全兼容。雖然現(xiàn)有電腦系統(tǒng)的插槽數(shù)目有限,但PCI局部總線可提供“公用插槽”,以便接插一個ISA、EISA及MCA插頭。這種兼容能力能保障用戶的投資,讓用戶在繼續(xù)沿用附加卡之余,又能提供額外的插槽,方便用戶選用

44、新的外圍設(shè)備。8. 預(yù)留了發(fā)展空間:PCI總線在開發(fā)時預(yù)留了充足的發(fā)展空間,這是它的一項(xiàng)重要特性。例如,它支持64位地址/數(shù)據(jù)多路復(fù)用,這是考慮到新一代的高性能外圍設(shè)備最終將需要64位寬的數(shù)據(jù)通道。PCI的64位延伸設(shè)計,可將系統(tǒng)的數(shù)據(jù)傳輸速率提高到264MB/S,同時,由于PCI插槽能同時接插32位和64位插卡,所以,32位和64位外圍設(shè)備之間的通信是在用戶不知不覺間進(jìn)行的,從而做到了真正的瞻前顧后兼容。PCI還提供了自動配置功能,從而保障了在安裝外圍卡時,不需要手工調(diào)整跨接線。9. 成本低,高效率:PCI的芯片將大量系統(tǒng)功能高度集成,節(jié)省了邏輯電路,耗用較小的線路板空間,成本降低。PCI部

45、件采用地址/數(shù)據(jù)復(fù)用,從而使PCI 部件用以連接其他部件的引腳數(shù)減至50以下。10. 是立足現(xiàn)在放眼未來的標(biāo)準(zhǔn):PCI局部總線即迎合了當(dāng)今的技術(shù)要求,又能滿足未來的需求,是計算機(jī)界公認(rèn)的最具高瞻遠(yuǎn)矚的局部總線標(biāo)準(zhǔn)。PCI的高性能、高效率及與現(xiàn)有標(biāo)準(zhǔn)的兼容性和充裕的發(fā)展?jié)摿?是其他總線不可及的??傊甈CI總線是一種廣泛采用的總線標(biāo)準(zhǔn),它提供了許多優(yōu)于其它總線標(biāo)準(zhǔn)(如EISA的新特性,目前已經(jīng)成為計算機(jī)系統(tǒng)中應(yīng)用最為廣泛,并且最為通用的總線標(biāo)準(zhǔn)。作為一種通用的總線接口標(biāo)準(zhǔn),它在目前的計算機(jī)系統(tǒng)中得到了非常廣泛的應(yīng)用。它提供了一組完整的總線接口規(guī)范,其目的是描述如何將計算機(jī)系統(tǒng)中的外圍設(shè)備以一種結(jié)構(gòu)

46、化和可控化的方式連接在一起,同時它還刻畫了外圍設(shè)備在連接時的電氣特性和行為規(guī)約,并且詳細(xì)定義了計算機(jī)系統(tǒng)中的各個不同部件之間應(yīng)該如何正確地進(jìn)行交互。2.4 PCI總線信號定義在一個PCI應(yīng)用系統(tǒng)中,如果某設(shè)備取得了總線控制權(quán),就稱其為“主設(shè)備”;而被主設(shè)備選中以進(jìn)行通信的設(shè)備稱為“從設(shè)備”或“目標(biāo)節(jié)點(diǎn)”。對于相應(yīng)的接口信號線,通常分為必備信號和可選信號兩大類。如果只作為目標(biāo)設(shè)備,至少需要47條線,若作為主設(shè)備則需要49條。只用必備的信號線即可以處理數(shù)據(jù)、尋址、實(shí)現(xiàn)接口控制仲裁及系統(tǒng)功能。圖2.3按功能分組表示了這些信號2。In:輸入,是一個標(biāo)準(zhǔn)的輸入信號。Out:輸出,是一個標(biāo)準(zhǔn)的輸出驅(qū)動信號

47、。t/s:表示一個雙向的三態(tài)輸入/輸出信號。s/t/s:表示一個持續(xù)的并且低電平有效的三態(tài)信號。在某一時刻只能從屬于一個主設(shè)備并被其驅(qū)動。這種信號從有效變?yōu)楦】?高阻狀態(tài)前必須保證使其至少有一個時鐘周期的高電平狀態(tài)。另一個主設(shè)備想要驅(qū)動它,至少要等到該信號的原有驅(qū)動者將其釋放(變?yōu)槿龖B(tài)一個時鐘周期之后才能開始。同時,如果此類信號處于持續(xù)的非驅(qū)動狀態(tài)時,在有新的主設(shè)備驅(qū)動它之前應(yīng)采取上拉措施,并且該措施必須由中央資源提供。od:表示漏極開路,以線或形式允許多個設(shè)備共同驅(qū)動和分享。信號代理使信號有效,一個弱上拉電阻可實(shí)現(xiàn)信號返回穩(wěn)定狀態(tài),上拉電阻可維持無效狀態(tài),上拉需要2個或3個PCI時鐘周期將信

48、號恢復(fù)為無效狀態(tài)。#:在信號名字末尾的#標(biāo)識符號表示該信號的低電平有效,無此標(biāo)識的信號為高電平有效。 圖2.3 PCI總線接口信號下面按功能分組對各信號進(jìn)行說明:1. 系統(tǒng)信號CLK in:系統(tǒng)時鐘信號,對于所有的PCI設(shè)備都是輸入信號。其頻率最高可達(dá)33MHZ,最低頻率一般為0HZ(DC,這一頻率也稱為PCI的工作頻率。對于PCI的其它信號,除RST#、INTA#、INTB#、INTC#、INTD#之外,其余信號都在CLK的上升沿有效(或采樣。RST# in:復(fù)位信號。用來使PCI專用的特性寄存器、配置寄存器、定序器、主設(shè)備、目標(biāo)設(shè)備以及輸出驅(qū)動器相關(guān)的信號恢復(fù)為規(guī)定的初始狀態(tài)。至于PCI

49、定序器之外的設(shè)備復(fù)位如何變化,不屬于本說明的范圍,但必要的PCI配置寄存器,其復(fù)位狀態(tài)是明確規(guī)定的。每當(dāng)復(fù)位時,PCI的全部輸出信號一般都應(yīng)驅(qū)動到第三態(tài),SERR#信號為高阻狀態(tài)。REQ#和GNT#必須同時驅(qū)動到第三態(tài),不能在復(fù)位期間為高或者為低。為防止AD、C/BE#及PAR在復(fù)位期間浮動,可由中央資源將它們驅(qū)動到邏輯低,但不能驅(qū)動到高電平。當(dāng)設(shè)備請求引導(dǎo)系統(tǒng)時,將響應(yīng)復(fù)位,復(fù)位后響應(yīng)系統(tǒng)引導(dǎo)。2. 地址和數(shù)據(jù)信號AD31:0 t/s:它們是地址、數(shù)據(jù)多路復(fù)用輸入/輸出信號。在FRAME#有效時,是地址期;在IRDY#和TRDY#同時有效時,是數(shù)據(jù)期。一個PCI總線的傳輸中包含了一個地址期和

50、接著的一個(或無限個數(shù)據(jù)期。PCI總線支持突發(fā)方式的讀寫功能。地址期為一個時鐘周期,該周期中AD31:0線上含有一物理地址(32位。對于I/O操作,它是一個字節(jié)地址;若是存儲器操作和配置操作,則是雙字地址。在數(shù)據(jù)期,AD7:0為最低字節(jié),AD31:24為最高字節(jié)。當(dāng)IRDY#有效時表示寫數(shù)據(jù)穩(wěn)定有效,而TRDY#有效時表示讀數(shù)據(jù)有效。C/BE3:0# t/s:它們是總線命令和字節(jié)使能多路復(fù)用信號線。在地址期中,這四條線上傳輸?shù)氖强偩€命令;在數(shù)據(jù)期內(nèi),它們傳輸?shù)氖亲止?jié)使能信號,用來表示在整個數(shù)據(jù)期中,AD31:0上哪些字節(jié)為有效數(shù)據(jù)。3. 接口控制信號FRAME# s/t/s: 幀周期信號。由當(dāng)

51、前主設(shè)備驅(qū)動,表示一次訪問的開始和持續(xù)時間。FRAME#的有效預(yù)示著總線傳輸?shù)拈_始;在其存在期間,意味著數(shù)據(jù)傳輸繼續(xù)進(jìn)行;FRAME#失敗后,是傳輸?shù)淖詈笠粋€數(shù)據(jù)周期。IRDY# s/t/s: 主設(shè)備準(zhǔn)備好信號。該信號的有效表明發(fā)起本次傳輸?shù)脑O(shè)備能夠完成一個數(shù)據(jù)期。它要與TRDY#配合使用,二者同時有效,數(shù)據(jù)方能完整傳輸,否則即為等待周期。在寫周期,該信號有效時,表示數(shù)據(jù)變量已在AD31:0中;在讀周期,該信號有效時,表示主設(shè)備已做好接收數(shù)據(jù)的準(zhǔn)備。TRDY# s/t/s: 從設(shè)備準(zhǔn)備好信號。該信號有效時表示從設(shè)備已作好完成當(dāng)前數(shù)據(jù)傳輸?shù)臏?zhǔn)備工作,也就是說,可以進(jìn)行相應(yīng)的數(shù)據(jù)傳輸。同樣,該信號

52、要與IRDY#配合使用,兩個信號同時有效時,數(shù)據(jù)才能完整傳輸。在寫周期內(nèi),該信號有效表示從設(shè)備已作好了接受數(shù)據(jù)的準(zhǔn)備;在讀周期,該信號有效表示有效數(shù)據(jù)已提交到AD31:0。同理,IRDY#和TRDY#任何一個無效時都為等待周期。STOP# s/t/s: 停止數(shù)據(jù)傳送信號。當(dāng)它有效時,表示從設(shè)備要求主設(shè)備中止當(dāng)前的數(shù)據(jù)傳送。很顯然,該信號應(yīng)由從設(shè)備發(fā)出。LOCK# s/t/s: 鎖定信號。當(dāng)該信號有效時,表示驅(qū)動它的設(shè)備所進(jìn)行的操作可能需要多個傳輸才能完成,也就是說,對此設(shè)備的操作是排他性的。而此時,未被鎖定的設(shè)備,對它的非互斥訪問仍然可以進(jìn)行。IDSEL in: 初始化設(shè)備選擇信號。在參數(shù)配置

53、讀寫傳輸期間,用作片選信號。DEVSEL# s/t/s: 設(shè)備選擇信號。該信號有效時,表示驅(qū)動它的設(shè)備已成為當(dāng)前訪問的從設(shè)備,換言之,它的有效說明總線上某一處設(shè)備已被選中。4. 仲裁信號REQ# t/s: 總線占用請求信號。該信號一旦有效表明驅(qū)動它的設(shè)備要求使用總線。它是一個點(diǎn)到點(diǎn)的信號線,任何主設(shè)備都有其REQ#信號。GNT# t/s: 總線占用允許信號。用來向申請占用總線的設(shè)備表示,其請求已獲得批準(zhǔn)。這也是一個點(diǎn)到點(diǎn)的信號線,任何主設(shè)備都應(yīng)有自己的GNT#信號。5. 錯誤報告信號為使數(shù)據(jù)傳輸可靠、完整,PCI局部總線標(biāo)準(zhǔn)要求,所有掛于其上的設(shè)備都應(yīng)具有錯誤報告線。PERR# s/t/s:

54、數(shù)據(jù)奇偶校驗(yàn)錯誤報告信號。但該信號不報告特殊周期中的數(shù)據(jù)奇偶錯。一個設(shè)備只有在響應(yīng)設(shè)備選擇信號(DEVESEL#和完成數(shù)據(jù)期之后,才能報告一個PERR#。對于每個數(shù)據(jù)接收設(shè)備,如果發(fā)現(xiàn)數(shù)據(jù)有錯誤,就應(yīng)在數(shù)據(jù)收到后的兩個時鐘周期內(nèi)將PERR#激活。該信號的持續(xù)時間與數(shù)據(jù)期的多少有關(guān),如果是一個數(shù)據(jù)期,則最小持續(xù)時間為一個時鐘周期;若是一連串的數(shù)據(jù)周期并且每個數(shù)據(jù)期都有錯,那么PERR#的持續(xù)時間將多于一個時鐘周期。由于該信號是持續(xù)的三態(tài)信號,因此,該信號在釋放前必須先驅(qū)動為高電平。另外,對于數(shù)據(jù)奇偶錯的報告既不能丟失也不能推遲。SERR# od: 系統(tǒng)錯誤報告信號。該信號的作用是報告地址奇偶錯、

55、特殊命令序列中的數(shù)據(jù)奇偶錯,以及其他可能引起災(zāi)難性后果的系統(tǒng)錯誤。6. 中斷信號PCI上中斷引腳是可操作的,定義為低電平有效,既邏輯非。INT#信號與時鐘不同步;PCI定義一個中斷向量對應(yīng)一個信號設(shè)備,4個以上中斷向量對應(yīng)一個多功能設(shè)備或連接器,對于單一功能的設(shè)備,只有INTA#可用,其他三個中斷向量沒有意義。2.5 PCI總線基本操作PCI總線上支持三個獨(dú)立的物理地址空間:存儲器地址空間、I/O地址空間和配置空間。PCI總線操作類型主要有2:1. 存儲器讀寫操作用于同一個映射于存儲器的地址空間進(jìn)行讀寫操作。支持單數(shù)據(jù)段傳輸和突發(fā)傳輸兩種。單數(shù)據(jù)段傳輸由一個地址期和一個數(shù)據(jù)期組成。突發(fā)傳輸由一

56、個地址期和多個數(shù)據(jù)期組成,可由一個地址起讀寫大量數(shù)據(jù),然后每次只需將地址加一,便可接受數(shù)據(jù)流內(nèi)下一個字節(jié)的數(shù)據(jù)。在存儲器訪問的地址期中,所有的目標(biāo)設(shè)備都要檢查AD1:0,或者提供所要求的突發(fā)傳輸順序,或者執(zhí)行一目標(biāo)設(shè)備斷開操作。當(dāng)AD1:0=00時,表示存儲器突發(fā)傳輸順序?yàn)榫€性增長方式;AD1:0=10時,為Cache行切換方式; AD1:0=x1時,為保留(第一個數(shù)據(jù)期后斷開。在32位存儲器地址空間,要用AD31:2譯碼得到一個雙字地址的訪問,在線性增長方式下,每個數(shù)據(jù)周期過后地址按一個DWORD增長,直到傳輸結(jié)束。2. I/O讀寫操作用于對一個映射于I/O地址空間的單元進(jìn)行讀寫操作。支持單

57、數(shù)據(jù)傳輸和突發(fā)傳輸兩種。在I/O訪問的地址期中,AD31:0提供某個字節(jié)的地址,32位都必須解碼。其中,AD1:0兩位很重要,一方面它參與地址譯碼,另一方面它也表示傳輸涉及的最低有效字節(jié),并且要與C/BE3:0#配合。例如,C/BE0#有效時,AD1:0必須為“00”;如果C/BE3#有效,AD1:0就應(yīng)當(dāng)為“11”。在具體訪問中,每當(dāng)一個從設(shè)備被地址譯碼選中后,便要檢查C/BE3:0#信號是否與AD1:0相符,如果二者矛盾,則整個訪問就無法完成,此時,從設(shè)備不傳送任何數(shù)據(jù),而是以一個“目標(biāo)終止”操作來結(jié)束訪問。3. 配置空間讀寫操作用于對256字節(jié)(64個雙字的配置空間進(jìn)行讀寫操作,支持單數(shù)

58、據(jù)段傳輸。在配置周期的地址段,AD1:0=01表示1類配置訪問,用來將配置傳遞到另一條PCI局部總線;AD1:0=00表示0類配置訪問,用來在運(yùn)行的PCI局部總線上選擇一個設(shè)備,0類配置較常用。AD7:2尋址設(shè)備配置空間的64個雙字寄存器之一,AD10:8用于選擇多功能設(shè)備的某一個功能。2.6 PCI總線基本操作時序在PCI局部總線中,除RST#、INTA#、INTB#、INTC#、INTD#之外,其余信號都在CLK的上升沿有效或采樣。PCI總線上的操作有一個地址期和一個(多個數(shù)據(jù)期組成。所有的數(shù)據(jù)傳輸基本上都是由以下三條信號線控制的2:1. FRAME# 由主設(shè)備驅(qū)動,指明一個數(shù)據(jù)傳輸?shù)钠鹗己徒Y(jié)束。FRAME#有效時,表明地址期開始,FRAME#

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論