《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 一種基于PCD656的高速PCI總線接口的設計與實現
一種基于PCD656的高速PCI總線接口的設計與實現
摘要: 本文利用高效PCI芯片和FPGA設計了一款64位總線傳輸接口電路,傳輸速度達到212 MB·s-1,較以往總線傳輸速度有了較大地提高,滿足了目前高速數據傳輸系統的要求。
Abstract:
Key words :

     現代雷達信號處理具有數據量大、實時性高等特點,而總線傳輸的效率決定了系統的性能,目前普遍使用標準化的PCI總線技術,以便升級更新。為加快產品開發和降低設計難度,一般有兩種解決方法:采用通用的PCI芯片或IP核。目前常用的PCI芯片如PCD054、PCD052等雖然性能穩定、使用方便,但它們只適用33 MHz、32位總線接口,受時序設計和應用程序效率等影響,總線傳輸速度約穩定在70 MB·s-1;使用IP核雖可以兼容66 Hz、64位總線且節省板卡面積,但其價格昂貴不利于高校及中小企業推廣使用。而PCI9656適用于66 MHz、64位的PCI總線,因此逐漸成為總線開發的主流元器件,使得總線傳輸速度達到了150 MB·s-1甚至更高。

  本文利用高效PCI芯片和FPGA設計了一款64位總線傳輸接口電路,傳輸速度達到212 MB·s-1,較以往總線傳輸速度有了較大地提高,滿足了目前高速數據傳輸系統的要求。

  1 PCI總線接口架構

  本系統主要由PCI9656和FPGA構成,系統框圖如圖1所示。當主機發起讀寫操作時PCI9656需要響應其操作,并將相應命令發送到FPGA進行處理,FPGA進行處理后將數據和命令通過PCI9656回傳給主機。PCI9656與主機之間的通信需要相應的設備驅動程序支持,而FPGA響應主機命令則需要配置相應的局部時序。因此,本設計主要的工作為設備驅動程序的開發和FPGA局部時序的設計。

 總體傳輸系統框圖

圖1 總體傳輸系統框圖

  2 PCI9656性能概述

  PCI9656是PLX公司推出的一款兼容32位和64位PCI總線標準的橋接芯片,采用PLX數據流水線結構(Data Pipe Architecture),內部配有DMA控制器、可編程主模式傳輸及從模式傳輸;內部有PCI優先判決器,可以支持外部7個外部主控器;可由本地中斷信號LINTi和LINTo生成一個PCI中斷信號INTA;本地時鐘獨立于PCI時鐘工作;支持位寬為8位、16位和32位的66,MHz本地總線。PCI9656寄存器與PCI9054寄存器兼容,可容易地進行基于32位PCI總線與基于64位PCI總線的軟件移植。

  PCI 9656具有6條獨立的數據通道,分別支持Direct Master、Direct Slave以及DMA功能模式下的數據傳輸。

  (1)Direct Master模式。用于局部總線到PCI(CompactPCI)的數據傳輸,主控設備在局部總線端。16 QWord(128 Byte)和32 QWords(256Byte)的FIFO各應用于數據的讀、寫通道。

  (2)Direct Slave模式。用于PCI(CompactPCI)到局部總線的數據傳輸,主控設備在PCI端。16QWords(128 Byte)和32 QWords(256 Byte)的FIFO各應用于數據的讀、寫通道。

  (3)DMA模式。DMA傳輸時PCI9656同時是PCI和局部總線的主控設備,PCI 9656有兩條DMA通道(Channel 0、Channel 1),每條通道都由一DMA控制器和32 QWords(256 Byte)雙向FIFO組成。其DMA方式有常規的塊模式(Block Mode)、集散模式(Scatter/Gather Mode)和命令模式(Demand Mode)。

  在局部總線端,根據不同的處理器PCI9656有3種工作模式。

  (1)M模式。支持Motorola 32 bit的處理器,提供了可與MPC850/860 PowerQUICC直接相連的接口。

  (2)C模式。適合大多數處理器的通用模式,比如常用的FPGA,在本設計中采用此模式。

  (3)J模式。與C模式類似,但其地址線與數據線復用。

  3 總線設備驅動開發

  在Windows環境下開發PCI設備驅動程序主要有兩種模型,即WinDriver和WDM。本設計使用了WDM驅動模型。開發PCI設備驅動程序WDM需要處理:硬件訪問、中斷處理和DMA傳輸3方面問題。

  3.1 硬件訪問

  X86處理器有兩種獨立的映射空間:I/O空間和內存空間,I/O空間只能通過I/O指令來訪問,KIoRange類封裝了對I/O空間的操作命令。對于設計的PCI設備,可以通過實例化KIoRange類來對I/O空間進行相應的操作。

  對于PCI設備可以使用KMemoryRange類對內存進行相應操作,具體操作與KIoRange類對I/O空間的操作相似。

  3.2 中斷處理

  驅動程序使用KInterrupt類來實現對中斷操作的處理,其中包括中斷的初始化、將一個中斷服務例程連接到一個中斷和解除其連接等。

  中斷服務例程不是KInterrupt類的成員函數,這是為了減少中斷延遲時間。中斷處理需要中斷服務例程和延遲過程調用例程,在中斷服務例程中,首先判斷該中斷是否是自己設備產生的,若不是,則返回False;若是,則請求一個延遲過程調用例程(DPC)。

  3.3 DMA傳輸

  PCI9656使用DMA方式進行數據傳輸。實現DMA傳輸需要3個類:KDmaAdapter,KDmaTransfer和KCommonDmaBuffer。其中,KDmaAdapter類用于建立一個DMA適配器,它說明了DMA通道的特性,如總線寬度,單次傳輸最大個數等,需要注意的是本設備使用的是64位總線寬度,因此需要特別指出;KDmaTransfer類用于DMA傳輸控制,如傳輸開始、傳輸字節數等;KCommonDmaBuffer類用于申請系統提供的公共緩沖區。具體DMA傳輸設置如下

  (1)實例化三個類

  OnDmaReady例程中獲取傳輸的物理內存的地址和字節數,然后設置相應的DMA寄存器值開始DMA傳輸。DMA傳輸結束后,應使m_CmxentTm-nsfer無效并刪除。具體流程如圖2所示。

DMA傳輸流程

圖2 DMA傳輸流程

  4 局部總線端設計

  本設計中,局部總線端采用了C模式。C模式下可配置3種數據傳輸方式:單周期方式(Single Cycle Mode)、4字方式(Brust-4 Mode)和連續突發傳輸方式(Continuous Mode),在本設計中采用了連續突發方式,可以有效地提高輸出效率。

  PCI9656在局部總線為為主設備,始終占用局部總線,局部總線端的FPGA始終響應PCI9656的操作。方案中使用PCI9656的DMA傳輸模式,在本地端不需要進行地址譯碼,因此可以對PCI9656的控制信號進行簡化處理,PCI9656的局部端主要控制信號如下

  ADS#:一次總線訪問開始;

  Blast#:總線訪問結束;

  LW/R#:讀寫控制信號;

  Ready#:從設備準備好信號,有效時表示總線訪問進行中;

  LHOLD:PCI9656占用本地總線申請信號;

  LHOLDA:占用本地總線應答信號;

  Wait#:主設備傳輸暫停信號;

  EOT#:數據傳輸異常中止信號,用于FIFO溢出或空時中斷數據傳輸;

  Lint#:用于引起CompaetPCI總線端的中斷信號;

  LRST#:本地總線復位信號;

  CCS#:配置寄存器選擇信號。

  在DMA傳輸過程中主要關心的信號可簡化為:ADS#、Blast#、LW/R#、Ready#、LHOLD、LHOLDA,如圖3所示。

PCI局部總線控制時序

圖3 PCI局部總線控制時序

  圖3中,lclk為本地總線時鐘,當PCI9656要發起一次DMA操作時,先發送lhold信號申請本地總線,若本地總線空閑則FPGA發出lholda信號響應PCI9656,然后PCI有效ads_n信號以示總線傳輸開始,FPGA使ready_n有效以示總線傳輸正在進行中,此時本地數據通過局部數據線傳送到PCI總線,或著數據由PCI總線傳送到局部邏輯。一次傳輸結束時PCI使blast_n信號有效并使lhold信號無效,然后FPGA使lholda信號和ready_n信號無效,一次DMA傳輸完成。傳輸中若是DMA讀操作則lwr信號拉低,若為寫操作則拉高。

  本地總線位寬為32位,因此本地總線理論速度為264MB·s-1,由于應用程序的效率問題和傳輸中一些無效狀態的存在,目前PCI總線平均速率達到212 MB·s-1,可以滿足目前高速數據采集、傳輸對總線傳輸速度的要求。

  PCI9656本地總線時序設計中需要注意blast_n信號有效說明為突發傳輸最后一個時鐘周期,此時ready_n信號仍然為有效,否則會造成總線等待;在正常讀寫訪問中CCS#信號應置高,否則總線訪問將指向配置空間而非內存或I/O空間。

  5 結束語

  利用PCI9656和FPGA實現了一種高速PCI總線接口,較全面地論述了總線驅動開發和局部時序設計的過程。這種設計提高了總線傳輸速度,為高速數據采集系統的實現創造了條件。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
日韩香蕉视频| 久久爱www.| 欧美一级电影久久| 一本色道久久综合亚洲精品不卡| 在线欧美福利| 狠狠88综合久久久久综合网| 国产精品中文字幕在线观看| 国产精品久久久久aaaa| 欧美午夜精品一区| 欧美日韩亚洲综合| 欧美日韩国产999| 欧美另类一区二区三区| 美女999久久久精品视频| 亚洲国产天堂久久综合网| 永久域名在线精品| 经典三级久久| 亚洲第一在线综合在线| 伊人久久av导航| 精品盗摄一区二区三区| 精品成人一区二区| 在线观看视频欧美| 亚洲国产高清高潮精品美女| 亚洲国产成人精品女人久久久 | 欧美高清hd18日本| 欧美激情久久久久久| 欧美日韩三级| 国产精品久久久久久久久搜平片 | 一本色道久久99精品综合| 日韩一区二区免费看| 亚洲美女视频网| av成人免费在线观看| 亚洲专区免费| 欧美一区二区播放| 久久久久久久久久久久久女国产乱| 久久精品国产69国产精品亚洲| 久久久噜久噜久久综合| 欧美激情a∨在线视频播放| 欧美日韩在线播放三区| 国产精品一区二区久久国产| 国产亚洲欧美色| 亚洲成人在线视频播放| 日韩小视频在线观看专区| 亚洲欧美一区二区原创| 亚洲第一页自拍| 中文久久乱码一区二区| 午夜在线电影亚洲一区| 久久五月激情| 欧美日本韩国在线| 国产伦精品一区二区三区在线观看 | 亚洲国产日韩欧美在线99| 一区二区三区视频观看| 欧美在线播放视频| 亚洲精品一区二区在线观看| 亚洲在线视频观看| 久热国产精品| 国产精品v欧美精品∨日韩| 国产一区二区三区免费观看| 亚洲日本欧美| 欧美一区二区三区啪啪| 99精品黄色片免费大全| 欧美在线视频免费播放| 欧美成人蜜桃| 国产热re99久久6国产精品| 91久久在线| 欧美一区午夜精品| 这里只有精品丝袜| 久久久国产一区二区三区| 欧美三级精品| 精品成人国产| 亚洲一区久久久| 亚洲精品系列| 久久精品夜色噜噜亚洲a∨| 欧美日韩另类视频| 伊人男人综合视频网| 亚洲一区日本| 宅男噜噜噜66一区二区| 美日韩精品免费| 国产麻豆9l精品三级站| 亚洲乱码国产乱码精品精可以看 | 亚洲欧美一区二区在线观看| 久久嫩草精品久久久精品| 国产精品久久久久毛片软件| 亚洲国产你懂的| 欧美一区激情| 香蕉久久夜色精品| 欧美日韩亚洲一区二区三区四区| 激情视频亚洲| 欧美一级理论性理论a| 亚洲天堂第二页| 欧美精品18+| 在线欧美小视频| 欧美一区二区三区视频在线观看| 亚洲中字黄色| 欧美日韩一区三区| 91久久黄色| 最近看过的日韩成人| 久久精品国产第一区二区三区| 国产精品免费网站在线观看| 日韩午夜在线视频| 亚洲精品日韩一| 免费中文日韩| 激情久久久久久久久久久久久久久久| 亚洲在线一区二区| 亚洲一区在线直播| 欧美三区在线视频| 99热这里只有精品8| 一区二区三区福利| 欧美极品在线视频| 亚洲日本成人| 日韩视频专区| 欧美激情一区三区| 亚洲激情欧美| 日韩一区二区电影网| 欧美激情一区| 亚洲精品国产品国语在线app| 亚洲人成在线影院| 免费不卡中文字幕视频| 国外成人免费视频| 亚洲缚视频在线观看| 理论片一区二区在线| 狠狠色狠狠色综合| 亚洲国产欧美日韩精品| 老司机aⅴ在线精品导航| 激情欧美丁香| 亚洲国产欧美不卡在线观看| 蜜臀av国产精品久久久久| 激情欧美亚洲| 91久久综合亚洲鲁鲁五月天| 欧美成年人网| 亚洲欧洲另类国产综合| aa级大片欧美| 欧美性片在线观看| 亚洲永久免费精品| 久久成人羞羞网站| 精品成人国产| 99www免费人成精品| 欧美视频四区| 亚洲欧美在线另类| 久久手机精品视频| 亚洲第一精品电影| 日韩亚洲欧美成人一区| 欧美日韩亚洲一区二区三区四区 | 美女脱光内衣内裤视频久久网站| 中国日韩欧美久久久久久久久| 国精品一区二区| 久久精品视频在线观看| 免费毛片一区二区三区久久久| **欧美日韩vr在线| 99精品国产高清一区二区| 欧美性猛交一区二区三区精品| 亚洲女同精品视频| 另类av一区二区| 亚洲精品少妇30p| 亚洲欧美国产77777| 狠狠色丁香久久婷婷综合丁香 | 激情久久综艺| 99视频超级精品| 国产精品一区视频| 久久爱www.| 欧美人与性动交cc0o| 亚洲欧美高清| 裸体丰满少妇做受久久99精品| 亚洲精品国精品久久99热| 午夜精品一区二区三区电影天堂| 国产日韩欧美精品综合| 91久久精品一区二区别| 欧美色另类天堂2015| 久久av资源网站| 欧美日韩a区| 先锋影音一区二区三区| 欧美高清视频| 亚洲欧美视频在线| 欧美激情精品久久久久久黑人| 亚洲专区免费| 欧美国产三级| 性色一区二区| 欧美另类99xxxxx| 欧美一级在线播放| 欧美日韩国产限制| 欧美一区二区精美| 欧美日韩激情网| 久久精品欧美日韩精品| 欧美肉体xxxx裸体137大胆| 久久精品日产第一区二区| 国产精品成人va在线观看| 亚洲国产精品嫩草影院| 欧美日韩一区二区精品| 久久精品国产69国产精品亚洲| 国产精品高潮呻吟视频| 亚洲三级免费观看| 国产日韩欧美中文| 亚洲一区二区三区精品动漫| 亚洲高清视频一区| 久久国产婷婷国产香蕉| 一区二区三区欧美激情| 欧美成人一区二区三区片免费| 欧美影院成人| 国产精品一区二区欧美| 在线综合亚洲欧美在线视频| 在线精品视频一区二区三四|