99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于協(xié)議轉(zhuǎn)換芯片PCI9054與FPGA實現(xiàn)PCI通信接口的設(shè)計

電子設(shè)計 ? 來源:微計算機信息 ? 作者:江勇 ? 2021-05-19 09:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1 引言

PCI,外設(shè)組件互連標準(Peripheral Component Interconnection)是一種由Intel公司1991年推出的用于定義局部總線的標準,自規(guī)范推出,得到網(wǎng)絡(luò)通信,數(shù)據(jù)采集處理,工業(yè)控制等多行業(yè)的廣泛應(yīng)用,并出現(xiàn)PCI-E。CPCI,PXI等多個擴展改良版本。PCI總線支持其即插即用,中斷共享,高速數(shù)據(jù)傳輸?shù)裙δ?,有著廣闊的市場前景。

本文介紹了目前使用美國PLX公司生產(chǎn)的協(xié)議轉(zhuǎn)換芯片PCI9054,用verilog HDL在FPGA中產(chǎn)生相應(yīng)的控制信號.完成對數(shù)據(jù)的快速讀寫,從而實現(xiàn)了與PCI總線的高速數(shù)據(jù)通訊。本系統(tǒng)可擴展,適用于其他PCI設(shè)備系統(tǒng),具有實用價值。

2 系統(tǒng)實現(xiàn)

本系統(tǒng)主要由PCI9054與FPGA構(gòu)成,系統(tǒng)結(jié)構(gòu)圖以及信號連接如圖1所示??梢愿鶕?jù)實際需要,利用FPGA的可編程性,實現(xiàn)預(yù)定功能,如與單片機,DSP處理器的不同速率間接高速通信等。協(xié)議轉(zhuǎn)換芯片PCI9054作用就是為本地處理器和主機之間架起一座通信的橋梁。

圖1 系統(tǒng)總體結(jié)構(gòu)

1) PCI9054硬件實現(xiàn)

PCI9054是美國PCI公司生產(chǎn)的先進的PCI總線接口芯片,它滿足PCI V2.2協(xié)議,支持32位33MHz時鐘PCI總線,特別適用于PCI總線外設(shè)產(chǎn)品的開發(fā)。PCI9054局部總線有三種工作模式:M模式、C模式和J模式,可方便地與多種微處理器連接。PCI9054的工作方式可利用模式選擇引腳(MODEO,MODE 1)加以選擇。

M模式是專為Motorola公司的MCU設(shè)計的工作模式,其主要應(yīng)用于電信領(lǐng)域。C模式是一種類似于單片機的工作方式,通過片內(nèi)邏輯控制,將PCI的地址線和數(shù)據(jù)線分開,很方便地為本地工作時序提供各種工作方式,對于這種工作方式,設(shè)計者只需要關(guān)注PCI9054的Local端的時序控制時序,就可以很方便的利用PCI9054實現(xiàn)PCI接口電路設(shè)計。J模式是地址總線和數(shù)據(jù)總線沒有分開,嚴格仿效PCI總線的時序,只是為時序控制增加了很多的控制信號。數(shù)據(jù)傳輸模式有三種:直接主模式,直接主模式就是本地處理器(如伺服控制卡上的DSP)訪問PCI總線上的I/O接口和計算機的內(nèi)存資源,由本地處理器發(fā)起整個數(shù)據(jù)傳輸。直接從模式,直接從模式就是主機作為主控設(shè)備發(fā)起對本地總線上資源的訪問.包括對本地處理器的控制和對本地端存儲器的訪問。DMA模式,DMA模式支持PCI總線與本地總線之間的高效突發(fā)。

2) PCI9054硬件連接電路(如圖2所示):

圖2 PCI9054硬件連接電路圖

3) PCI9054與PCI插槽信號連接

PCI9054與PCI插槽間的連接信號線,這些信號線包括地址數(shù)據(jù)復(fù)用信號AD[31:0],總線命令信號C/BE[3:0]和PCI協(xié)議控制信號PAR,F(xiàn)RAME#,IRDY#,TRDY#,STOP#,IDSEL,DEVSEL#等,電路連接中將彼此對應(yīng)的信號線連接在一起即可。在PCI總線信號中.除了RST#。INTA#-INTD#之外,其他所有的信號都在始終上升沿被采樣。每個信號都

有相對于時鐘前沿建立和保持時間。在此期間,不允許有信號的跳動。該時間一過,信號的變化就無關(guān)緊要了。這種建立和保持時間對于不同的信號其情形是不同的。對于AD[31:0],PAR和IDSEL來說,只有在一定的十種邊沿上才有上述時間的要求。對于LOCK#,IRDY#,TRDY#.FRAME#,DEVSEL#,STOP#,ⅢeQ#,GNT#,SERR#和PERR#這些信號在每個時鐘前沿都有建立和保持時間。對于C/BE[3:0]#在傳輸總線命令是,要在FRAME#第一次建立時對應(yīng)的時鐘邊沿上遵守建立和保持時間的關(guān)系。若傳輸字節(jié)使能信號時,要在完成一個地址期或數(shù)據(jù)期之后的每一個時鐘邊沿保證相應(yīng)的建立和保持時間。

4) PCI9054與EEPROM接口

各種接口芯片都需要外接串行EEPROM芯片來加載配置數(shù)據(jù).對于串行EEPROM芯片,需要根據(jù)接口芯片數(shù)據(jù)手冊中給出的生產(chǎn)廠家及型號選擇。這里選擇FM93LC56。PCI9054提供4個管腳與串行EEPROM相連接,他們分別是EEDI,EEDO,EESK,EECS,對應(yīng)于FM93LC56的DI,DO,SkCS這四個管腳,這4對管腳直接相連就可以,另外93Lc56的VCC管腳需要接+5V電源,GND接地。因為需要對串行EEPROM進行寫操作,串行EEPROM應(yīng)處于可編程而且非保護狀態(tài),所以PE接高電平而PRE接低電平。FM93LC56的技術(shù)手冊規(guī)定兩個管腳上拉和下拉的電阻應(yīng)為10K左右。

5) PCI9054與LOCAL Bus端連接

LHOLD:申請使用本地總線,輸出信號;LHOLDA:對LHOLD應(yīng)答,輸入信號;ADS:新的總線訪問有效地址的開始,在總線訪問first clock設(shè)置時,輸出信號;BLAST:表示為總線訪問的last transfer,輸出信號;LW/R#:高電平表示讀操作,低電平表示寫操作,輸出信號;LA:地址線;LD:數(shù)據(jù)線;READY:表示總線上讀數(shù)據(jù)有效或?qū)憯?shù)據(jù)完成,用以連接PCI9054等待狀態(tài)產(chǎn)生器,輸入信號。

3 VeHiog HDL軟件實現(xiàn)

FPGA內(nèi)部在PCI9054本地總線LOCAL Bus基礎(chǔ)之上進行設(shè)計;FPGA片內(nèi)RAM或FIFO可以在QUARTUSII環(huán)境下利用利用工具MegaWizard Plug_In Manager調(diào)用功能模塊生成。單雙口、存儲容量、數(shù)據(jù)總線的寬度以及同步或異步自行定制。為與MCU或DSP等處理器通信,要設(shè)計RAM訪問仲裁模塊。決定某一時刻對RAM訪問的主方;PCI9054支持單周期、突發(fā)和DMA傳輸,在FPGA內(nèi)部要設(shè)計本地端總線控制模塊,實現(xiàn)局部總線的狀態(tài)控制,同時產(chǎn)生FPGA片內(nèi)RAM的讀寫時序及地址信號。

PCI9054支持單周期、突發(fā)傳輸和DMA傳輸,因此在狀態(tài)機設(shè)計中不僅要滿足單周期傳輸?shù)臅r序。還要兼顧突發(fā)和DMA傳輸時序。依據(jù)FCl9054的datasheet以及PCI總線協(xié)議,其狀態(tài)轉(zhuǎn)換圖如圖3所示:

圖3 PCI9054狀態(tài)轉(zhuǎn)換圖

狀態(tài)機是控制單元的主體,接受外部信號以及數(shù)據(jù)單元產(chǎn)生的信號,產(chǎn)生控制信號序列。狀態(tài)機的關(guān)鍵是如何把一個實際的時序邏輯關(guān)系,抽象成一個時序邏輯函數(shù)。根據(jù)狀態(tài)轉(zhuǎn)換圖.采用3個always語句.即對應(yīng)三個進程來完成Moore狀態(tài)機。一個用于狀態(tài)機的同步時序部分,在本地時鐘clk的上升沿到來時.將nextstate狀態(tài)賦給currentstate;個用于描述狀態(tài)轉(zhuǎn)換;另一個用于描述輸出的組合邏輯。在這里重點闡述狀態(tài)轉(zhuǎn)換進程,其Verilog HDL代碼簡略如下所示:

always @ (lads,lblast)

begin case(currentstate)

S0:if(! lads)

nextstate《=S1;

else

nexbtate《=S0;

S1:if(! lblast)

nextstate《=S2;

else

nextstate《=S4;

S2: nextstate《=S3:

S3:if(! lads)

nextstate《=Sl;

else

nextstate《=S0;

S4:nextatate《=S5;

S5:if(blast)

nextstate《=S5;

else

nextstate《=S6;

S6:if(! lads)

nextstate《=S1;

else

nexmmte《=S0;

endcase

end

輸出組合邏輯進程如下所示:

always @(currentstate)

case(currentstate)

SO:begin lready《=1‘b1;

ram_wr《=1’b0:

ram_rd《=1‘b0;

end

。..。..

endcase

圖4 利用QUARTUSⅡ仿真生成的State Machine圖(可與圖3對應(yīng))

圖5 PCI9054 LOCAL Bus單周期傳輸時序圖

4 結(jié)論

利用DriverStdio開發(fā)PCI9054的驅(qū)動程序,實現(xiàn)主機對FPGA內(nèi)部RAM的讀寫,利用示波器檢測ads,blast信號,在8位數(shù)據(jù)總線的情況下,實現(xiàn)數(shù)據(jù)傳輸率可以達到26.8Mbyte/s,接近PCI的極限傳輸速率(圖4、5所示)。本設(shè)計已經(jīng)應(yīng)用,經(jīng)實際運行,傳輸速度快,數(shù)據(jù)正確,穩(wěn)定可靠,經(jīng)過擴展,同時可應(yīng)用于其它需要與PCI數(shù)據(jù)總線接口的設(shè)備當(dāng)中,可縮短PCI設(shè)備的開發(fā)周期,提高工作效率。

本文創(chuàng)新點:利用PCI9054設(shè)計的PCI高速通信接口,采用了FPGA內(nèi)部RAM間接緩沖技術(shù),可以與DSP,MCU等微處理器高速通信,擴展性強,適用于可應(yīng)用于其它需要與PCI數(shù)據(jù)總線接口的設(shè)備當(dāng)中。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1645

    文章

    22050

    瀏覽量

    618729
  • 芯片
    +關(guān)注

    關(guān)注

    460

    文章

    52520

    瀏覽量

    441224
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    9005

    瀏覽量

    153780
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    PCI總線接口芯片9054及其應(yīng)用

    、AMCC S5933,PLX 公司的PLX9054、PLX9080 等,通過專用芯片可以實現(xiàn)完整的PCI主控模塊和目標模塊的功能,將復(fù)雜的PCI
    發(fā)表于 10-09 11:23

    PCI9054驅(qū)動

    哪位大神有用FPGA控制PCI9054驅(qū)動的相關(guān)資料,謝謝啦。
    發(fā)表于 05-22 15:25

    PCI9054驅(qū)動開發(fā)

    哪位大神有用FPGA控制PCI9054驅(qū)動的相關(guān)資料,謝謝啦
    發(fā)表于 05-24 16:14

    PCI總線接口芯片9054及其應(yīng)用

    PCI總線接口的開發(fā)提供了一種簡潔的方法,設(shè)計者只需設(shè)計出本地總線接口控制電路,即可實現(xiàn)PCI總線的高速數(shù)據(jù)傳輸。圖3是應(yīng)用
    發(fā)表于 12-05 10:12

    采用專用接口電路PCI9054實現(xiàn)ARINC429總線接口板設(shè)計

    協(xié)議器件HS3282完成發(fā)送數(shù)據(jù)緩存和串并轉(zhuǎn)換(接收時串行轉(zhuǎn)換為并行,發(fā)送時并行轉(zhuǎn)換為串行),HS3182作為3282的驅(qū)動器完成差分信號轉(zhuǎn)換
    發(fā)表于 04-26 07:00

    基于FPGAPCI9054的LVDS數(shù)據(jù)通信卡的設(shè)計

    數(shù)據(jù)通信中應(yīng)用廣泛。DDS頻率合成技術(shù)通過頻率控制字、相位控制字及參考時鐘的控制來實現(xiàn)輸出信號的調(diào)頻調(diào)相,并且輸出信號具有頻率轉(zhuǎn)換快、頻率分辨率高和相位噪聲低等優(yōu)點。綜合上述特點,設(shè)計運用PC
    發(fā)表于 07-18 06:35

    PCI9054 pdf datasheet

    PCI9054 p
    發(fā)表于 10-13 11:13 ?682次下載

    基于PCI9054接口

       PCI9054是PLX公司生產(chǎn)的橋接PCI總線與本地總線的接口器件。在PCI9054的結(jié)構(gòu)性能、數(shù)據(jù)傳輸模式及總線工作方式等特性的基礎(chǔ)上,給出以
    發(fā)表于 07-21 16:18 ?76次下載

    PCI總線接口芯片PCI9054及其應(yīng)用

    PCI總線接口芯片PCI9054及其應(yīng)用PCI9054是PLX公司推出的一種PCI主模式橋
    發(fā)表于 10-09 11:18 ?8651次閱讀
    <b class='flag-5'>PCI</b>總線<b class='flag-5'>接口</b><b class='flag-5'>芯片</b><b class='flag-5'>PCI9054</b>及其應(yīng)用

    Linux環(huán)境下開發(fā)PCI9054芯片驅(qū)動

      O 引言   本文主要對的具體方法進行描述,并給出了如何將驅(qū)動程序編譯進內(nèi)核,以使驅(qū)動模塊靜態(tài)加載的方法。   1 PCI9054簡介   PCI總線協(xié)議一般需
    發(fā)表于 08-27 09:33 ?2304次閱讀
    Linux環(huán)境下開發(fā)<b class='flag-5'>PCI9054</b><b class='flag-5'>芯片</b>驅(qū)動

    基于PCI9054橋路器的數(shù)據(jù)傳輸?shù)?b class='flag-5'>接口邏輯設(shè)計

      PCI總線支持突發(fā)傳送,多處理器和并發(fā)工作,廣泛應(yīng)用于各種平臺設(shè)計?;?b class='flag-5'>PCI9054接口板也廣泛地應(yīng)用于各種高速、大數(shù)據(jù)量的處理系統(tǒng)。由于PCI9054橋接有
    發(fā)表于 09-08 11:40 ?3615次閱讀
    基于<b class='flag-5'>PCI9054</b>橋路器的數(shù)據(jù)傳輸?shù)?b class='flag-5'>接口</b>邏輯設(shè)計

    基于PCI9054的數(shù)據(jù)轉(zhuǎn)換模塊設(shè)計

    為了實現(xiàn)把軟件仿真的數(shù)據(jù)通過PCI總線DMA傳輸、處理后轉(zhuǎn)換成高速視頻串行數(shù)據(jù)流(LVDS數(shù)據(jù)流),設(shè)計出了基于PCI9054的數(shù)據(jù)轉(zhuǎn)換模塊
    發(fā)表于 01-14 17:32 ?50次下載
    基于<b class='flag-5'>PCI9054</b>的數(shù)據(jù)<b class='flag-5'>轉(zhuǎn)換</b>模塊設(shè)計

    PCI 總線接口芯片9054及其應(yīng)用

    PCI9054是PLX公司推出的一種PCI主模式橋芯片。本文主要介紹了它的特性、功能及應(yīng)用,說明了以PCI9054作為接口
    發(fā)表于 05-14 18:10 ?95次下載
    <b class='flag-5'>PCI</b> 總線<b class='flag-5'>接口</b><b class='flag-5'>芯片</b><b class='flag-5'>9054</b>及其應(yīng)用

    基于PCI9054PCI接口數(shù)據(jù)通信系統(tǒng)

    本文首先介紹了 PCI 總線 接口芯片 PCI9054 的性能,并從PCI9054 接口設(shè)計、寄
    發(fā)表于 06-02 18:20 ?106次下載
    基于<b class='flag-5'>PCI9054</b>的<b class='flag-5'>PCI</b><b class='flag-5'>接口</b>數(shù)據(jù)<b class='flag-5'>通信</b>系統(tǒng)

    PCI9054在高速數(shù)據(jù)采集系統(tǒng)中的應(yīng)用

    本文介紹了PCI總線接口芯片PCI9054的性能、總線操作及其DMA數(shù)據(jù)傳輸方式,并且通過它在高速數(shù)據(jù)采集系統(tǒng)中的應(yīng)用實例,闡述了PCI9054
    發(fā)表于 07-18 15:32 ?64次下載