當(dāng)前位置:首頁 > 智能硬件 > 智能硬件
[導(dǎo)讀]介紹了如何利用接口芯片PCI 9030制作PCI總線接口卡,實現(xiàn)由ISA接口向PCI接口的轉(zhuǎn)換。文中從實例出發(fā),詳細闡述了接口卡的硬件設(shè)計、EEPROM的配置、驅(qū)動程序的編寫等方面的內(nèi)容。

摘要:介紹了如何利用接口芯片PCI 9030制作PCI總線接口卡,實現(xiàn)由ISA接口向PCI接口的轉(zhuǎn)換。文中從實例出發(fā),詳細闡述了接口卡的硬件設(shè)計、EEPROM的配置、驅(qū)動程序的編寫等方面的內(nèi)容。
關(guān)鍵詞:PCI總線;PCI9030;寄存器;驅(qū)動程序

1、引言

作為對PCI總線在儀器領(lǐng)域的擴展,PXI總線由于具有高性能、低價位等特點,使其在數(shù)據(jù)采集、工業(yè)自動化系統(tǒng)、計算機機械觀測系統(tǒng)和圖像處理等方面獲得了廣泛應(yīng)用。

但是PXI總線協(xié)議十分復(fù)雜,其接口的實現(xiàn)比ISA困難得多,直接為它設(shè)計相匹配的數(shù)字邏輯控制電路難度很大。特別是對于那些沒有PCI板卡設(shè)計經(jīng)驗的人來說,要想直接設(shè)計出能滿足要求的PXI模塊幾乎是不可能的事。而PXI總線的電氣規(guī)范大部份跟PCI相同,只是增加了一些儀器特性?;谝陨峡紤],我們決定通過設(shè)計一個PCI接口卡來系統(tǒng)地了解利用接口芯片PCI 9030開發(fā)PXI模塊的過程和方法。

2、硬件設(shè)計

目前實現(xiàn) PCI 接口的方法主要是采用可編程邏輯器件或采用專用接口芯片。為降低難度,縮短開發(fā)時間 ,我們決定采用專用接口芯片來進行接口的開發(fā)。因為我們的最終目的是開發(fā)PXI模塊,所以我們選用了符合PXI性能要求的接口芯片PCI 9030。PCI 9030 是 PLX 公司開發(fā)的一種為擴展適配卡推出的高性能目標接口芯片,其符合 PCI2.2 規(guī)范,3.3V 核心電壓,低功耗,176 引腳 PQFP 或180 引腳 BGA 封裝,本地總線可以設(shè)置為 8 位、16 位、32 位復(fù)用和非復(fù)用模式。

在我們原來的性能測試系統(tǒng)中,功率計模塊是基于ISA總線的插件,端口地址是ox100-ox107,數(shù)據(jù)總線寬度是8位,具有輸入輸出功能。我們要設(shè)計的接口卡所實現(xiàn)的功能相當(dāng)于一個從ISA總線到PCI總線的轉(zhuǎn)接卡。PCI 9030作為一種橋接芯片,提供了PCI總線、EEPROM和ISA總線三個接口,下面分別介紹各部分的接口電路:

第一部分是PCI9030與PCI總線的接口。這些信號包括地址數(shù)據(jù)復(fù)用信號AD[31:0]、總線命令和字節(jié)使能信號C/BE[3:0]、奇偶校驗信號(PAR), 幀周期信號(FRAME#)、主設(shè)備準備好信號(IRDY#), 從設(shè)備準備好信號(TRDY#),停止數(shù)據(jù)傳送信號(STOP#),初始化設(shè)備選擇信號(IDSEL), 設(shè)備選擇信號(DEVSEL#)、數(shù)據(jù)奇偶校驗錯誤報告信號(PERR#)、系統(tǒng)錯誤報告信號(SERR#)、時鐘輸入信號(CLK),復(fù)位信號(RST#)、中斷信號(INTA#)等。電路連接中,把兩邊對應(yīng)的管腳相連就行,中間不需要用電阻隔離。

第二部分是PCI9030與EEPROM的接口。EEPROM選用NATIONAL公司的NM93CS66L;它是一個4K的低電壓串行存儲器,用來存儲PCI9030的配置信息并在芯片復(fù)位時進行加載,從而使PCI板卡具有即插即用的功能。PCI9030有四根信號線用于與EEPROM的連接:EESK, EEDO, EEDI和EECS。

PCI9030與EEPROM的電路連接如圖1所示:

圖1

 

第三部分是PCI9030與ISA總線的接口。

ISA總線功率計模塊的主要信號只涉及到I/0,且為8位寬的數(shù)據(jù)總線,數(shù)據(jù)傳輸只用到端口讀寫信號IORD#和IOWR#,用A0-A9作為地址譯碼。在接口芯片的本地端中我們采用非復(fù)用模式,地址和數(shù)據(jù)總線都是8位,所以只需選擇LA2、LBE0和LBE1進行地址譯碼就可以了。具體的電路連接見下表:

 

ISA端

PCI9030本地端

功能描述

A0

LBE0#

用作本地地址LA0

A1

LBE1#

用作本地地址LA1

A2

LA2

本地地址

A3

BLAST#

突發(fā)持續(xù)

A4

ADS#

本地地址選通

A5

READY#

本地準備好輸入

A6

CS1#

片選1

IORD#

RD#

讀選通

IOWR#

WR#

寫選通

AEN

LW/R#

寫/讀控制

 

3、EEPROM的配置

PCI總線能實現(xiàn)“即插即用”是因為它具有一個配置空間。當(dāng)計算機啟動時,BIOS會對每個PCI卡的配置空間進行訪問,即自動加載EEPROM內(nèi)容來獲取各個PCI卡的配置信息,并根據(jù)這些信息進行資源分配。配置空間是PCI所特有的一個空間,所有的PCI設(shè)備必須提供配置空間。

對EEPROM的配置要根據(jù)具體的硬件設(shè)備來進行,其配置的正確與否是硬件設(shè)備能否正常工作的關(guān)鍵。下面以我所做的接口卡的串行EEPROM內(nèi)容為例進行介紹。

首先介紹PCI配置寄存器的配置方法。主要是填寫器件ID號、供應(yīng)商ID號、類碼、子系統(tǒng)ID號和子系統(tǒng)供應(yīng)商ID號等。對于PCI9030,其器件ID號為9030, 供應(yīng)商ID號為lOB5 ,子系統(tǒng)ID號為9030,子系統(tǒng)供應(yīng)ID號為10B5,類碼號為0680,表示其為橋設(shè)備中的其它橋設(shè)備類。另外,由于使用到中斷INTA#,所以在中斷寄存器中要將其值設(shè)為0100。

其次介紹本地配置寄存器的配置方法。PCI9030本質(zhì)上是一個橋設(shè)備,它的作用是把對某一段PCI總線地址空間的各種操作(包括讀、寫等)轉(zhuǎn)換為相應(yīng)的本地地址總線的操作。由于在接口卡的本地總線中只用到I/O地址空間,所以我們只需對本地地址空間1的相關(guān)寄存器進行配置就行了。本地空間1范圍寄存器的值為oxFFFFFFF9,表示I/O空間大小為8個字節(jié), bit0為1表示此空間被映射為I/O空間;本地空間1基地址寄存器的值為ox00000101,表示空間1的基地址為ox100, bit0為1表示空間1使能;本地空間1描述寄存器的值為ox00000022,表示本地空間1的數(shù)據(jù)總線寬度為8位。本地片選寄存器1的值是ox00000105,表示當(dāng)本地地址落在ox100-ox107內(nèi)時,片選信號CS1#有效以用來選擇本地總線上的外圍設(shè)備。對于其它值的含義可參考PCI9030的數(shù)據(jù)手冊,這里就不再一一介紹。圖2是PLXmon界面下EEPROM的配置窗口。

圖2

4、板卡調(diào)試

板卡做好后,就可以插入計算機的PCI插槽進行調(diào)試。如果硬件電路設(shè)計正確,在自檢過程中,可以在屏幕上看到系統(tǒng)查找到的PCI設(shè)備,并且顯示出設(shè)備的DID和VID等相關(guān)信息。在系統(tǒng)正常啟動后,會提示“發(fā)現(xiàn)新硬件”,并要求用戶安裝相應(yīng)的驅(qū)動程序,跳過以后就可以配置EEPROM進而開始調(diào)試。對EEPROM的編程有兩種方法:一是先用專門的燒錄器把數(shù)據(jù)下載到EEPROM再插入板卡中,這種方法修改起來比較麻煩;二是用專用的軟件在線寫,如PLX公司提供的專用調(diào)試軟件PLXmon。PLXmon具有以下功能:PCI總線的探測與選擇;配置寄存器的檢查和修改;內(nèi)存空間的顯示、修改和填充;EEPROM內(nèi)容的讀寫等。利用這個工具,我們可以隨時對EEPROM的內(nèi)容進行在線修改,大大提高了效率。值得注意的是每次修改完EEPROM都要對系統(tǒng)進行重啟,使PCI配置寄存器和本地空間配置寄存器能夠重新加載新的值。

5、驅(qū)動程序的編寫

在板卡調(diào)試完成后,需要編寫驅(qū)動程序。驅(qū)動程序的開發(fā)工具很多,但是多數(shù)需要了解操作系統(tǒng)的核心工作機制,難度比較大。經(jīng)過比較,我們采用了Jungo公司的WinDriver進行驅(qū)動程序的開發(fā)。利用WinDriver我們不必熟悉操作系統(tǒng)的內(nèi)核知識就可以快速開發(fā)出驅(qū)動程序,它對于硬件調(diào)試也是一個很好的幫助工具。

用WinDriver開發(fā)PCI設(shè)備驅(qū)動程序一般有兩種方法:一種是使用向?qū)?Driver Wizard),  Driver Wizard能夠自動生成驅(qū)動程序的框架代碼,我們只需修改代碼,加入定制的功能,再在用戶態(tài)執(zhí)行和調(diào)試代碼就行;另一種是直接在應(yīng)用程序中調(diào)用WinDriver的API函數(shù)。

我們在開發(fā)驅(qū)動程序中采用的是前一種方法,其基本流程如下:

a. 打開Driver Wizard,在Card Information的設(shè)備列表中選中自己的設(shè)備,如圖3,點擊“Generate .INF file”生成安裝信息文件;

圖3

b. 點擊“下一步”,進入WinDriver 資源定義與測試界面中,如圖4, 調(diào)試列出的I/O、內(nèi)存等資源,并定義必要的工作寄存器,如PCI卡上的一些配置寄存器;

圖4

c. 點擊“Generate Code",選擇VC編譯器作為自己的開發(fā)語言環(huán)境,此時將生成針對硬件設(shè)備的文件,包括代碼文件、說明文件以及適用于VC編譯器的項目文件。

最后,對向?qū)Мa(chǎn)生的設(shè)備驅(qū)動代碼框架中添加自己的代碼,編譯連接后就可以生成對設(shè)備進行診斷的控制臺程序了。

6、結(jié)束語

本文作者創(chuàng)新點:在以往的接口卡設(shè)計中,對于實現(xiàn)ISA總線向PCI總線轉(zhuǎn)換的方法都是采用帶ISA接口的接口芯片,如PCI9052,這可以大大簡化開發(fā)PCI設(shè)備的過程。由于課題需要,我們選用了一種不帶ISA接口的接口芯片-----PCI9030制作了一個PCI接口卡。經(jīng)反復(fù)調(diào)試,該接口電路能夠順利地完成數(shù)據(jù)傳輸,已經(jīng)成功地實現(xiàn)PCI總線與外設(shè)的連接,這一方面驗證了用專用接口芯片實現(xiàn)PCI總線接口在技術(shù)上的可行性,另一方面也為下一步開發(fā)PXI模塊打下良好基礎(chǔ)。

同時,本文中對接口卡的硬件電路連接、EEPROM的配置、驅(qū)動程序的編寫等方面都作了比較詳細的介紹,這對于那些初次接觸PCI總線開發(fā)的人有一定的指導(dǎo)意義。

參考文獻

[1] PCI Special Interest Group. PCI Local Bus Specification, Rev.2.2, 2000

[2] PLX Technology. PCI 9030 Data Book, Version 1.4, 2002

[3] 李貴山、陳金鵬. PCI局部總線及其應(yīng)用. 西安電子科技大學(xué)出版社, 2003

[4] 湯淵清等. 基于WinDriver實現(xiàn)對PCI數(shù)采卡的快速檢驗. 微計算機信息(測控自動化), 2004.20(6)

[5]王胡艦等. 利用接口芯片PCI9052制作PCI總線接口卡詳解. 工業(yè)控制計算機,2004.12

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉