精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

采用PEX8311橋接芯片和Linux操作系統實現PCIE/104板卡的設計

電子設計 ? 來源:現代電子技術 ? 作者:楊子元;包啟亮; ? 2020-03-17 08:07 ? 次閱讀

引言

PCIE總線是由Intel公司提出用來取代現行PCI總線的下一代總線技術,被公認為未來總線的發展方向,目前已經成功應用在了商業機上。相對于目前流行的PCI總線,它具有如下特點:

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

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

PC/104標準是一種嵌入式的總線標準,具有功耗低,尺寸小,堆棧式結構的特點。隨著目前各種應用數據傳輸量的增大,現行的PCI總線在帶寬方面已經略顯疲態,而新近瑞士邏輯提出的PC/104 Express標準,使得PCIE總線技術被成功地應用在了PC/104標準的板卡上。本文采用了PLX公司的PEX8311橋接芯片,完成了PCIE到局部總線接口的轉換,應用PLX公司提供的開發工具在Linux操作系統下實現了板卡的驅動應用。在軟硬件兩方面進行了設計,完成了PCIE/104板卡的功能,升級了系統的總線。

1、 PCIE/104高速信號接口卡的系統

PCIE/104高速信號接口卡的系統設計方案如圖1所示。

采用PEX8311橋接芯片和Linux操作系統實現PCIE/104板卡的設計

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

1.1 硬件總體概述

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

1.1.1 PEX8311芯片介紹

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

PEX8311的特點如下:

(1)集成了單通道、全雙工2.5 Gb/s傳輸的PCI Express端口

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

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

(4)高性能的DMA數據傳輸,支持數據塊模式、集散模式、循環隊列管理模式和命令模式;

(5)支持端點和根復合體模式;

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

(7)芯片低功耗設計;

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

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

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

PEX8311的內部結構如圖2所示。

采用PEX8311橋接芯片和Linux操作系統實現PCIE/104板卡的設計

1.1.2 PCIE/104總線標準介紹

PC/104是最早由瑞士邏輯提出的一種工業總線標準,它由最早的PC/104總線發展到PC/104+總線,直到目前的PC/104 Express,分別對應ISA總線、PCI總線和PCIE總線。由于它是一種堆棧型的嵌入式總線,所以將PCIE總線應用在這個標準上與普通的PCIE金手指有一些不同。為了滿足PC/104的嵌入式堆棧結構,使其能夠實現從板子上、下都可以連接,必須采用PCIE Switch芯片,這里使用的是PERICOM公司

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

采用PEX8311橋接芯片和Linux操作系統實現PCIE/104板卡的設計

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

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

PEX8311有幾個類別的模式選擇,分別是根聯合體模式(Rootcomplex)與終端模式(Endpoint),根據需要這里選擇了終端模式。此外PEX 8311還區分C模式,J模式,M模式。這三種模式解釋如下:C模式的地址線與數據線是分開的,J模式下地址線與數據線是復用的,而M模式是針對了Motor的本地端CPU設置的。三種模式通過模式選擇管腳選擇,這里選擇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主要因為它是有內部FLASH,不用再加外部的E2PROM。

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

1.2 系統軟件部分的實現

該系統的軟件部分是在Linux下實現的,在Linux中所有的設備都被看成文件來對待。在Linux內核中,設備驅動作為文件系統的一個模塊存在。它向下負責與硬件系統的交互,向上通過一個通用的接口掛接到文件系統上面。從而和系統的內核鏈接起來。設備驅動為應用程序屏蔽了很多細節。使得應用程序對外設的操作就和操作普通的文件是一個樣子的。利用PLX公司提供的開發工具,驅動的開發是比較方便的,本文系統中主要用到的是要編寫一個中斷服務程序:系統在收到中斷,保存現場。進入中斷服務程序。首選讀取標志位,再馬上清中斷,之后讀取響應RAM中的數據。最后恢復現場,完成操作。

2、 系統PCB設計和高速信號的完整性分析

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

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

采用PEX8311橋接芯片和Linux操作系統實現PCIE/104板卡的設計

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

采用PEX8311橋接芯片和Linux操作系統實現PCIE/104板卡的設計

3、 結語

PC/104作為一種嵌入式總線標準已經被很多控制系統所采用,而PCIE/104接口的提出將未來最為流行的串行差分總線結構,引入到了這種嵌入式總線標準,從而為各種高速、高帶寬的嵌入式系統提供了選擇。目前該系統由于采用了PCIE總線,相比采用PLX9054實現的PCI接口具有明顯的優勢。

責任編輯:gt


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    453

    文章

    50406

    瀏覽量

    421820
  • Linux
    +關注

    關注

    87

    文章

    11229

    瀏覽量

    208927
  • 操作系統
    +關注

    關注

    37

    文章

    6738

    瀏覽量

    123190
收藏 人收藏

    評論

    相關推薦

    Linux操作系統中如何按下PCIe的復位鍵

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

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

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

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

    協議,它可用于通訊線路卡、監視系統、工業控制、IP媒體服務器和醫療成像系統,以實現可升級的高帶寬互聯。采用 根聯合體或終端點的PCI嵌入式系統
    發表于 01-29 14:09

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

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

    PEX8311 DMA 沒反應?

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

    如何構建一個PCI-E架構的實時海量存儲系統

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

    PEX8311 pdf datasheet

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

    基于Linux操作系統的嵌入式網關的實現

    基于Linux操作系統的嵌入式網關的實現
    發表于 03-28 09:48 ?29次下載

    Linux操作系統

    linux的教學內容1 、Linux概述 2 、Linux操作系統安裝3、 Linux的內核 4 、Li
    發表于 04-10 16:54 ?0次下載
    <b class='flag-5'>Linux</b><b class='flag-5'>操作系統</b>

    Linux操作系統原理及應用

    Linux操作系統原理及應用 1.1  操作系統的地位 1.2  操作系統的功能 1.3  操作系統的發
    發表于 04-28 14:53 ?0次下載

    Linux操作系統實現了在PC104 上的裁減和移植

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

    PCI Express交換及芯片的展望

    交換芯片擴展到,Gen 2提供簡化的機會 當I/O互連世界從PCI過渡到PCI Express (PCIe)時,
    發表于 02-09 11:46 ?6354次閱讀
    PCI Express交換及<b class='flag-5'>橋</b><b class='flag-5'>接</b><b class='flag-5'>芯片</b>的展望

    什么是Linux操作系統

    什么是Linux操作系統  簡單地說,Linux是一套
    發表于 12-26 12:04 ?1404次閱讀

    基于FPGA的PEX8311的LBS控制器的實現

    PLX的一款芯片PEX8311可將標準處理器,本文就是基于PEX8311和FPGA來實現PCIe
    發表于 12-22 10:28 ?4878次閱讀
    基于FPGA的<b class='flag-5'>PEX8311</b>的LBS控制器的<b class='flag-5'>實現</b>

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

    電子發燒友網為你提供Broadcom(ti)PEX 8311相關產品參數、數據手冊,更有PEX 8311的引腳圖、接線圖、封裝手冊、中文資料、英文資料,
    發表于 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