那曲檬骨新材料有限公司

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

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

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

采用PEX8311橋接芯片和Linux操作系統(tǒng)實現(xiàn)PCIE/104板卡的設(shè)計

電子設(shè)計 ? 來源:現(xiàn)代電子技術(shù) ? 作者:楊子元;包啟亮; ? 2020-03-17 08:07 ? 次閱讀

引言

PCIE總線是由Intel公司提出用來取代現(xiàn)行PCI總線的下一代總線技術(shù),被公認(rèn)為未來總線的發(fā)展方向,目前已經(jīng)成功應(yīng)用在了商業(yè)機(jī)上。相對于目前流行的PCI總線,它具有如下特點(diǎn):

采用了串行點(diǎn)對點(diǎn)模式,數(shù)據(jù)總線從并行走回向串行無疑是一個趨勢,如現(xiàn)在流行的SATA總線、PCIE總線和rapidIO總線都是串行總線。現(xiàn)在串行總線在速度上的優(yōu)勢可以說是毋庸置疑的。PCIE總線在每個方向上都有X1,X2,X4,X8,X16或X32個信號對,用戶可根據(jù)不同的需求采用不同的配置。同時串行信號還具有管教更少,便于調(diào)試的優(yōu)點(diǎn)。

PCIE采用了基于數(shù)據(jù)包的協(xié)議來編碼事物,而不是PCI體系結(jié)構(gòu)的總線周期。數(shù)據(jù)包被串行發(fā)送和接受,并被字節(jié)拆分來通過物理鏈路。鏈路上實現(xiàn)的通道越多,數(shù)據(jù)包發(fā)送的數(shù)據(jù)越快,鏈路的帶寬也越寬。同時PCIE還定義了各種類型的數(shù)據(jù)包,如存儲器讀/寫請求、I/O讀/寫請求、配置讀/寫請求、消息請求和完成數(shù)據(jù)包等。

PC/104標(biāo)準(zhǔn)是一種嵌入式的總線標(biāo)準(zhǔn),具有功耗低,尺寸小,堆棧式結(jié)構(gòu)的特點(diǎn)。隨著目前各種應(yīng)用數(shù)據(jù)傳輸量的增大,現(xiàn)行的PCI總線在帶寬方面已經(jīng)略顯疲態(tài),而新近瑞士邏輯提出的PC/104 Express標(biāo)準(zhǔn),使得PCIE總線技術(shù)被成功地應(yīng)用在了PC/104標(biāo)準(zhǔn)的板卡上。本文采用了PLX公司的PEX8311橋接芯片,完成了PCIE到局部總線接口的轉(zhuǎn)換,應(yīng)用PLX公司提供的開發(fā)工具在Linux操作系統(tǒng)下實現(xiàn)了板卡的驅(qū)動應(yīng)用。在軟硬件兩方面進(jìn)行了設(shè)計,完成了PCIE/104板卡的功能,升級了系統(tǒng)的總線。

1、 PCIE/104高速信號接口卡的系統(tǒng)

PCIE/104高速信號接口卡的系統(tǒng)設(shè)計方案如圖1所示。

采用PEX8311橋接芯片和Linux操作系統(tǒng)實現(xiàn)PCIE/104板卡的設(shè)計

外部傳感器采集到的數(shù)據(jù)通過LVDS,RS 422等電平方式,以固定的不同串口波特率傳到FPGA內(nèi)部集成的各自對應(yīng)的雙口RAM中。當(dāng)寫入了固定字節(jié)后,設(shè)定標(biāo)志位stage為1,同時發(fā)出中斷信號LINT#給PEX8311。PEX8311產(chǎn)生了assert_INT1信息,并通過PCIE接口發(fā)給上位機(jī)。上位機(jī)保存好現(xiàn)在的任務(wù)后,通過PCIE開始發(fā)出存儲器讀命令給PEX8311。PEX8311獲得命令后,向FPGA發(fā)出本地總線申請信號,F(xiàn)PGA作為本地端的控制器將本地總線控制權(quán)交給PEX8311。PEX8311開始讀數(shù)據(jù),首先要進(jìn)行的是讀取標(biāo)志位,在讀取了標(biāo)志位后,上位機(jī)就知道是哪幾路串口信號需要讀入。然后,把標(biāo)志位清掉,這樣相當(dāng)于清掉了中斷信號。接著,中斷服務(wù)程序在進(jìn)入到各個串口的RAM中,來讀取相應(yīng)的數(shù)據(jù)。在多路串口信號傳輸過來時,針對該系統(tǒng),采用的是優(yōu)先滿足高速串口的原則,也就是采用高速串口的標(biāo)志位作為中斷信號,每次產(chǎn)生中斷后查詢其他標(biāo)志位。數(shù)據(jù)到上位機(jī)后待處理。該系統(tǒng)目前實現(xiàn)的是兩路串口,而多路串口原理相同。

1.1 硬件總體概述

主要包括以下幾部分,PEX8311橋接芯片負(fù)責(zé)完成本地總線和PCIE總線的相互裝換;FPGA選用了spartan-3an 1400K。這里在內(nèi)部實現(xiàn)了3個模塊,首先完成雙口RAM模塊;其次完成了多路串口數(shù)據(jù)的接受與協(xié)調(diào)模塊;最后還要實現(xiàn)PEX8311芯片本地端控制器模塊。

1.1.1 PEX8311芯片介紹

PEX8311是PLX Technology公司推出的一款專用于將DSP,F(xiàn)PGA等處理器總線接口升級為PCIE的橋接器件。利用PEX8311靈活的局部總線可以方便地連接多種存儲器、緩存器及。FPGA,DSP等邏輯芯片,使復(fù)雜的PCI-E接口設(shè)計簡單化。PEX8311兼容PCI Express 1.0標(biāo)準(zhǔn),其本地總線和寄存器與PCI9056兼容,能夠提供完整的本地總線到PCI-E的接口,包括地址轉(zhuǎn)換、包生成與解碼、信號中斷支持及并/串轉(zhuǎn)換等。

PEX8311的特點(diǎn)如下:

(1)集成了單通道、全雙工2.5 Gb/s傳輸?shù)腜CI Express端口

(2)可配置局部總線寬度,支持8位、16位和32位的總線方式;

(3)支持單路和多路總線操作模式;

(4)高性能的DMA數(shù)據(jù)傳輸,支持?jǐn)?shù)據(jù)塊模式、集散模式、循環(huán)隊列管理模式和命令模式;

(5)支持端點(diǎn)和根復(fù)合體模式;

(6)芯片小型封裝,適合緊湊的電路板設(shè)計;

(7)芯片低功耗設(shè)計;

(8)3.3 V的I/O并兼容5 V系統(tǒng);

(9)啟動配置的串行E2PROM支持(SPI和Microwire接口);

(10)有8 KB的通配共享RAM。

PEX8311的內(nèi)部結(jié)構(gòu)如圖2所示。

采用PEX8311橋接芯片和Linux操作系統(tǒng)實現(xiàn)PCIE/104板卡的設(shè)計

1.1.2 PCIE/104總線標(biāo)準(zhǔn)介紹

PC/104是最早由瑞士邏輯提出的一種工業(yè)總線標(biāo)準(zhǔn),它由最早的PC/104總線發(fā)展到PC/104+總線,直到目前的PC/104 Express,分別對應(yīng)ISA總線、PCI總線和PCIE總線。由于它是一種堆棧型的嵌入式總線,所以將PCIE總線應(yīng)用在這個標(biāo)準(zhǔn)上與普通的PCIE金手指有一些不同。為了滿足PC/104的嵌入式堆棧結(jié)構(gòu),使其能夠?qū)崿F(xiàn)從板子上、下都可以連接,必須采用PCIE Switch芯片,這里使用的是PERICOM公司

制造的PI2PCIE2412款Switch芯片。電路原理圖如圖3所示。

采用PEX8311橋接芯片和Linux操作系統(tǒng)實現(xiàn)PCIE/104板卡的設(shè)計

圖3中接受、發(fā)送和差分時鐘這3對差分信號線通過轉(zhuǎn)接芯片變成了6對差分信號線。由主機(jī)板卡發(fā)出選擇信號(cpu_dir),分別控制設(shè)備板卡是在主機(jī)板卡的上面還是下面。同時采用MAX6306芯片來鏈接PEX8311的復(fù)位端和PCIE接插件的復(fù)位端,同時實現(xiàn)了手動復(fù)位和LOCAL端的復(fù)位。

1.1.3 PEX8311的外圍電路配置與LOCAL端接口的控制

PEX8311有幾個類別的模式選擇,分別是根聯(lián)合體模式(Rootcomplex)與終端模式(Endpoint),根據(jù)需要這里選擇了終端模式。此外PEX 8311還區(qū)分C模式,J模式,M模式。這三種模式解釋如下:C模式的地址線與數(shù)據(jù)線是分開的,J模式下地址線與數(shù)據(jù)線是復(fù)用的,而M模式是針對了Motor的本地端CPU設(shè)置的。三種模式通過模式選擇管腳選擇,這里選擇C模式作為工作模式。PEX8311有1.5 V,2.5 V,3.3 V三種電源供電以及一個模擬電源1.5VPLL。在配置寄存器方面,PEX8311有兩個配置寄存器,分別是采用Spi-Compatible接口的PCIE配置寄存器和采用了Micro-Wire-Compatibel接口的本地配置寄存器。采用了Spartan-3an 1400 k來提供控制接口與高速緩存,選擇這款FPGA主要因為它是有內(nèi)部FLASH,不用再加外部的E2PROM。

由于PC/104是一種嵌入式的板卡,體積比較小,所以用這款FPGA是可以節(jié)省板上的空間。FPGA內(nèi)部程序的編寫是關(guān)鍵之一。這里采用Verilog,實現(xiàn)對PEX8311的控制,當(dāng)上位機(jī)響應(yīng)了中斷后,對PEX8311發(fā)出讀數(shù)信號。PEX8311通過LHOLD申請控制本地總線,待收到FPGA發(fā)出的LHOLDA響應(yīng)信號后獲得本地總線的控制權(quán),并立即啟動4 B突發(fā)模式。FPGA在收到有效的LW/R讀信號和ADS地址選通信號后,發(fā)出Ready本地準(zhǔn)備好應(yīng)答信號。PEX8311開始從雙口中讀取數(shù)據(jù),傳輸最后一個數(shù)據(jù)時,PEX8311發(fā)出BLAST信號,雙口RAM使得讀使能和輸出使能無效。

1.2 系統(tǒng)軟件部分的實現(xiàn)

該系統(tǒng)的軟件部分是在Linux下實現(xiàn)的,在Linux中所有的設(shè)備都被看成文件來對待。在Linux內(nèi)核中,設(shè)備驅(qū)動作為文件系統(tǒng)的一個模塊存在。它向下負(fù)責(zé)與硬件系統(tǒng)的交互,向上通過一個通用的接口掛接到文件系統(tǒng)上面。從而和系統(tǒng)的內(nèi)核鏈接起來。設(shè)備驅(qū)動為應(yīng)用程序屏蔽了很多細(xì)節(jié)。使得應(yīng)用程序?qū)ν庠O(shè)的操作就和操作普通的文件是一個樣子的。利用PLX公司提供的開發(fā)工具,驅(qū)動的開發(fā)是比較方便的,本文系統(tǒng)中主要用到的是要編寫一個中斷服務(wù)程序:系統(tǒng)在收到中斷,保存現(xiàn)場。進(jìn)入中斷服務(wù)程序。首選讀取標(biāo)志位,再馬上清中斷,之后讀取響應(yīng)RAM中的數(shù)據(jù)。最后恢復(fù)現(xiàn)場,完成操作。

2、 系統(tǒng)PCB設(shè)計和高速信號的完整性分析

由于PCIE的傳輸速率較高,單向速率達(dá)到2.5 Gb/s。所以對板子的布線有嚴(yán)格的要求。疊層這里選用了8層PUCB板,有4個電源層,使得每個信號都能夠屏蔽在電源層與地層中間。從而減少了信號的電磁輻射。對于PCIE的差分線部分:微帶線要求差分線寬5 mil,間距小于12 mil,差分線間距離大于20 mil,同時與地層間距為3.5~5.5 mil。帶狀線要求線寬4 mil,間距小于11 mil,間距大于20 mil。且對于收發(fā)差分線,差分線長差距不能大于5 mil。這些都是為了能達(dá)到PCIE規(guī)范的要求,即單端阻抗55 Ω,差分阻抗100 Ω(偏差10%)而設(shè)置的。

經(jīng)過ploar軟件計算,將以上的數(shù)據(jù)輸入進(jìn)去,再加入PCB廠家提供的介電常數(shù)等參數(shù),最后得出的阻抗完全滿足設(shè)計需求。多層板的高速信號設(shè)計很有必要進(jìn)行信號完整性仿真,應(yīng)用廠家提供的IBIS模型,采用Hyperlynx對板子進(jìn)行了本地端和時鐘端的信號完整性仿真。并根據(jù)仿真對布線提供了約束條件。而針對PCIE的高速差分端總線,因為在高速信號仿真方面IBIS模型還不夠精確,所以,PLX公司對其兩對收發(fā)端口提供SPice模型,如圖4所示。

采用PEX8311橋接芯片和Linux操作系統(tǒng)實現(xiàn)PCIE/104板卡的設(shè)計

將上訴模型導(dǎo)入HSpice中,同時引入PCIESwitch芯片給出的IBIS模型與板子上面的差分線trace的rglc模型。輸出端的仿真效果圖如下,可以看出差分信號的幅值是可以滿足PCIE規(guī)范的電氣要求的。

采用PEX8311橋接芯片和Linux操作系統(tǒng)實現(xiàn)PCIE/104板卡的設(shè)計

3、 結(jié)語

PC/104作為一種嵌入式總線標(biāo)準(zhǔn)已經(jīng)被很多控制系統(tǒng)所采用,而PCIE/104接口的提出將未來最為流行的串行差分總線結(jié)構(gòu),引入到了這種嵌入式總線標(biāo)準(zhǔn),從而為各種高速、高帶寬的嵌入式系統(tǒng)提供了選擇。目前該系統(tǒng)由于采用了PCIE總線,相比采用PLX9054實現(xiàn)的PCI接口具有明顯的優(yōu)勢。

責(zé)任編輯:gt


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

    關(guān)注

    456

    文章

    51192

    瀏覽量

    427300
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11345

    瀏覽量

    210404
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    6896

    瀏覽量

    123751
收藏 人收藏

    評論

    相關(guān)推薦

    Linux操作系統(tǒng)中如何按下PCIe的復(fù)位鍵

    Linux操作系統(tǒng)中,看如何按下PCIe的復(fù)位鍵
    的頭像 發(fā)表于 01-20 09:31 ?1752次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>操作系統(tǒng)</b>中如何按下<b class='flag-5'>PCIe</b>的復(fù)位鍵

    基于PCIE總線的PLX8311芯片硬件設(shè)計原理圖

    這是基于PCIe總線的PLX8311的硬件設(shè)計原理圖(內(nèi)附Verilog程序)
    發(fā)表于 11-03 19:58

    【FPGA干貨分享三】基于FPGA的LBS控制器設(shè)計

    協(xié)議,它可用于通訊線路卡、監(jiān)視系統(tǒng)、工業(yè)控制、IP媒體服務(wù)器和醫(yī)療成像系統(tǒng),以實現(xiàn)可升級的高帶寬互聯(lián)。采用 根聯(lián)合體或終端點(diǎn)的PCI嵌入式系統(tǒng)
    發(fā)表于 01-29 14:09

    自己做的PXIe板卡,插在NI的PXIe-1082背板上不識別

    各位大神,我使用PEX8311片做了一塊PXIe板卡,插在NI的PXIe-1082背板上不識別,但是使用PXIe轉(zhuǎn)PCIe轉(zhuǎn)接卡轉(zhuǎn)接到普通電腦上可以識別,功能調(diào)試沒有問題。不知道是什
    發(fā)表于 08-16 09:54

    PEX8311 DMA 沒反應(yīng)?

    做了一塊8311+FPGA的板子,電腦能成功識別到板卡。用PLXMON 工具測試DMA 是沒反應(yīng),大概是什么原因造成的 有沒有大神了解一點(diǎn),
    發(fā)表于 05-16 17:41

    如何構(gòu)建一個PCI-E架構(gòu)的實時海量存儲系統(tǒng)

    如何設(shè)計一個基于PC主機(jī)北的長時間不間斷高速采集和存儲的系統(tǒng)。本文最后介紹了利用PC主機(jī)、PCI-E接口芯片PEX8311、Switch芯片
    發(fā)表于 04-15 06:32

    PEX8311 pdf datasheet

    The ExpressLane™ PEX 8311 1-lane PCI Express (PCIe) to 32-bit, 66MHz generic local bus bridge
    發(fā)表于 10-13 09:52 ?85次下載

    基于Linux操作系統(tǒng)的嵌入式網(wǎng)關(guān)的實現(xiàn)

    基于Linux操作系統(tǒng)的嵌入式網(wǎng)關(guān)的實現(xiàn)
    發(fā)表于 03-28 09:48 ?29次下載

    Linux操作系統(tǒng)

    linux的教學(xué)內(nèi)容1 、Linux概述 2 、Linux操作系統(tǒng)安裝3、 Linux的內(nèi)核 4 、Li
    發(fā)表于 04-10 16:54 ?0次下載
    <b class='flag-5'>Linux</b><b class='flag-5'>操作系統(tǒng)</b>

    Linux操作系統(tǒng)原理及應(yīng)用

    Linux操作系統(tǒng)原理及應(yīng)用 1.1  操作系統(tǒng)的地位 1.2  操作系統(tǒng)的功能 1.3  操作系統(tǒng)的發(fā)
    發(fā)表于 04-28 14:53 ?0次下載

    Linux操作系統(tǒng)實現(xiàn)了在PC104 上的裁減和移植

    論文簡要分析了Linux 操作系統(tǒng)啟動過程,介紹了Busybox、MiniGUI 等優(yōu)秀的嵌入式專用軟件,以及以PC104 主板和CF(CompactFlash)卡構(gòu)建帶圖象用戶界面(GUI)的嵌入式
    發(fā)表于 06-24 15:37 ?31次下載

    什么是Linux操作系統(tǒng)

    什么是Linux操作系統(tǒng)  簡單地說,Linux是一套
    發(fā)表于 12-26 12:04 ?1410次閱讀

    基于FPGA的PEX8311的LBS控制器的實現(xiàn)

    PLX的一款芯片PEX8311可將標(biāo)準(zhǔn)處理器,本文就是基于PEX8311和FPGA來實現(xiàn)PCIe
    發(fā)表于 12-22 10:28 ?4951次閱讀
    基于FPGA的<b class='flag-5'>PEX8311</b>的LBS控制器的<b class='flag-5'>實現(xiàn)</b>

    PEX 8311 x1 Lane PCI Express Bridge,21 x 21mm PBGA

    電子發(fā)燒友網(wǎng)為你提供Broadcom(ti)PEX 8311相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊,更有PEX 8311的引腳圖、接線圖、封裝手冊、中文資料、英文資料,
    發(fā)表于 07-04 10:18
    <b class='flag-5'>PEX</b> <b class='flag-5'>8311</b> x1 Lane PCI Express Bridge,21 x 21mm PBGA

    趣談Linux操作系統(tǒng)

    趣談Linux操作系統(tǒng)
    的頭像 發(fā)表于 01-13 16:00 ?6544次閱讀
    澳门百家乐官网网址多少| 幸运水果机游戏| 奔驰百家乐官网游戏电玩| 威尼斯人娱乐城客户端| 基础百家乐官网的玩法技巧和规则 | 十六浦百家乐官网的玩法技巧和规则| A8娱乐城| 下载百家乐棋牌大厅| 任我赢百家乐官网自动投注系统| 大发888网页版出纳| 百家乐体育直播| 百家乐官网连开6把小| 水果机价格| 百家乐专业赌徒| 半圆百家乐官网桌子| 大发888怎么开户| 海立方百家乐海立方| 百家乐官网风云人物| 大发888博彩论坛贴吧| 网上百家乐博彩正网| 金钻国际| 诸子百家乐的玩法技巧和规则| 筹码百家乐官网的玩法技巧和规则| 武邑县| 太阳城紫玉园| 亚洲百家乐新全讯网| 香港百家乐官网六合彩| 新利国际网站| 手机百家乐游戏| 金宝博百家乐游戏| 百家乐官网桌布9人| 竹北市| 太阳城管理| 百家乐稳赢投注| 在线玩百家乐官网的玩法技巧和规则| 百家乐官网免费路单| 大发888官方6222.| 真人百家乐是真的吗| 百家乐官网桌子黑色| 澳门玩百家乐官网赢1000万| 足球下注|