《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于SOPC的PCI總線高速數據傳輸系統設計
基于SOPC的PCI總線高速數據傳輸系統設計
OFweek電子工程網
摘要: 本文針對一體化偵察通信接收機高速數據傳輸的需求,提出了一種基于SOPC實現PCI總線高速傳輸系統的設計方案。該方案將PCI橋與用戶邏輯集成到一片FPGA上,并利用片上CPU實現了DMA控制器的自動配置和總線異常處理,提高了系統數據速率。
關鍵詞: SoPC PCI總線 數據傳輸
Abstract:
Key words :

  隨著戰場電磁環境復雜程度越來越高,偵察與通信系統的融合成為一種必然的發展趨勢。數據量大、算法復雜是數字化偵察接收系統的主要特征。使用DSP和FPGA進行高速信號譜分析、濾波等預處理,借助通用計算機平臺實現信號的分選、顯示等后處理是一種理想的系統設計方案。因此,如何構建與PC機間的高速數據通道,便成了偵察接收系統設計中的關鍵問題之一。PCI (Peripheral CompONent Interconnect)總線,即外圍部件互連總線,是目前應用最廣泛的一種高速同步總線,在32位總線寬度33Mz時鐘下,其理論最大傳輸速率可達132Mbyte/s (64位總線寬度66MHz時可達到528Mbyte/s),因此成為上述偵察接收系統中高傳輸速率、低成本PC接口的首選實現方式。目前,實現PCI總線接口的常用方法有兩種:一是采用專門的PCI橋芯片實現PCI接口,如PLX公司的PCI905X系列芯片等;二是使用可編程芯片實現PCI接口。

  隨著集成電路技術的發展,可編程芯片成本越來越低、資源越來越豐富,用戶可將PCI橋和其它用戶邏輯在一片可編程芯片上實現,其中后者不需要額外的PCI橋芯片,系統硬件電路得以簡化,系統的穩定性和可靠性更高,進而可以縮短系統開發周期。基于以上考慮,本文提出一種采用可編程片上系統(SySTem-On-Programmable-Chip,SOPC)實現偵察接收機PCI總線高速數據傳輸系統的設計方案,并采用直接存儲器訪問(DIRect Memory Access,DMA)傳輸方式來提高數據傳輸速率。

  1 PCI總線接口方案設計

  在PCI總線接口標準中,根據數據傳輸的發起者所在位置,PCI接口有從模式和主模式兩種工作模式。根據工作方式的不同,DMA傳輸方式可分為連續式DMA (Continuous DMA)和集散式DMA(Scatter-Gather DMA)兩種。

  1.1 PCI模式的選擇

  PCI總線標準中,由PC發起數據傳輸、讀/寫PCI接口卡的模式稱為從模式。這種模式只要求PCI接口設備具備PCI從設備的功能,接口邏輯相對較簡單;主模式是由PCI接口卡主動讀寫PC內存,PCI接口的邏輯相對復雜。頻繁地要求PC發起數據傳輸會占用PC的資源,為了減少PC的負擔,使其有更多的資源用于后續的數字信號處理,在偵察接收系統中,PCI接口卡的傳輸模式選擇主傳輸模式。

  1.2 DMA傳輸方式的選擇

  DMA是提高數據傳輸速率和微處理器使用效率的一種數據傳輸機制。連續式DMA用于實現連續數據塊的傳輸,即在一次DMA傳輸中設備端讀/寫物理地址連續變化(讀存儲器空間)或不變化(讀IO口),PC端的物理存儲地址連續變化。集散式DMA用于實現不連續數據塊的傳輸,各傳輸數據塊的起始讀/寫地址和長度都可以不同,它采用一個寄存器鏈表存儲每個數據塊的讀/寫起始地址和長度,DMA傳輸過程中自動從該鏈表加載地址和長度信息。集散模式DMA應用靈活,其缺點是在傳輸完一個數據塊之后要重新配置DMA控制寄存器的值,速度比連續模式稍慢。在偵察接收系統中,DMA傳輸模式選擇連續式傳輸模式。

  1.3 PCI總線DMA傳輸方案設計

  PCI接口總體結構框圖如圖1所示。數據輸入到乒乓RAM緩沖區,乒乓切換信號通知CPU數據準備好,CPU通過PCI橋的控制狀態寄存器判斷PC端是否備妥,如PC備妥則配置并啟動DMA控制器,DMA控制器讀口從乒乓RAM中讀數據,寫口將數據寫至PCI總線訪問端,PCI總線接口單元申請并獲得PCI總線訪問權,將數據送上PCI總線。

  2 PCI總線接口的SOPC實現

  SOPC是Ahera公司提出的一種靈活、高效的片上系統解決方案,它將處理器、存儲器、I/O口以及一些通用的功能模塊集成在一個PLD器件上,構成一個可編程的片上系統。利用SOPC開發偵察接收機中的PCI總線接口,具有開發周期短、系統穩定性好的優點。

  2.1 系統實現

  PCI總線接口的SOPC內部結構如圖2所示。實現PCI總線DMA傳輸系統使用到4類功能模塊,分別是實現PCI橋邏輯的pci_comiler組件(pci_c ompiler)、負責數據傳輸的DMA控制器(dma)、控制整個SOPC的NiosII處理器(cpu)及其數據程序存儲器(onchip_mem),以及SOPC和外部用戶邏輯通信的接口模塊(BA1、DMARD和datardy),上述組件通過avalon總線連接在一起組成SOPC。

  PCI總線DMA傳輸系統功能模塊之間的交互過程如圖3所示,過程描述如下:

  (1)CPU等待PC使能DMA傳輸,PC使能DMA后,執行(2);

  (2)PC等待乒乓RAM的數據準備好信號,數據準備好后,執行(3);

  (3) CPU將DMA的讀/寫地址和傳輸長度參數寫入DMA控制器中,使能DMA控制器,DMA控制器開始數據傳輸,即讀口通過DMARD接口從RAM中讀數,寫口將數據寫到PCI橋,PCI橋將數據送至PCI總線;

  (4)當傳輸結束后,DMA控制器產生一個中斷(IRQ1)送CPU;

  (5)CPU判斷傳輸是否完成,傳輸完成則通過PCI橋向PC發送中斷,并執行(1),開始下一次DMA傳輸;

  (6)PCI總線發生異常時,PCI橋邏輯中斷CPU,CPU查詢異常狀態,并自動從異常中恢復。

  2.2 PCI總線異常的自動處理

  PCI總線DMA傳輸過程中,可能出現的異常包括:

  (1)PCI總線上SERR信號為高,系統錯誤。

  (2)PCI總線上PERR信號為高,數據奇偶校驗錯誤;

  (3)主設備或從設備中止傳輸;

  (4)主設備或從設備中止傳輸,或重試次數超過門限,導致PCI橋對總線讀/寫失敗。

  在偵察接收系統設計中,上述異常一旦發生,PCI接口便中斷NiosCPU,CPU接收到中斷后,通過查詢PCI橋的控制寄存器訪問(Control RegisterAccess,CRA)空間,獲得異常信息。系統錯誤發生時,PCI接口設備是沒有辦法恢復的,在這種情況下,NiosCPU可點亮指示燈,指示系統錯誤發生;其它異常情況發生后,Nios CPU可立即通過對DMA控制器的狀態空間的長度寫零來停止DMA傳輸,然后重新啟動DMA傳輸,讓系統從異常中恢復過來。

  2.3 提高PCI總線DMA速率的優化措施

  為了盡可能提高DMA傳輸速率,本方案中共采取了以下三個方面的措施。

  (1)PCI總線的突發傳輸與Avalon總線的流水線操作

  為了提高系統傳輸速率,應充分利用PCI總線的突發傳輸特性,使PCI總線處于突發傳輸狀態。為此,在系統設計中,一方面使Avalon總線工作于流水線模式下,降低Avalon總線的延遲時間;另一方面適當增大緩存存儲空間,避免因緩沖區滿造成的傳輸延遲等待。

  (2)DMA控制的優化

  為了使DMA傳輸更為靈活,如程序運行過程中改變DMA長度、讀寫地址、數據的幀長度,以及發生異常時程序自動恢復等,本文中使用Nio sCPU控制DMA傳輸。CPU的主要任務是在PC使能DMA和數據準備好時啟動DMA傳輸,應盡可能使程序緊湊,減少冗余操作,做到條件具備立即啟動DMA傳輸。

  (3)功能模塊的時鐘設置

  如圖2所示,SOPC中包括7個功能組件,為了進一步提高系統的速度,需要分別讓這7個組件的時鐘處于最佳狀態。PCI總線訪問相關組件的時鐘為33MHz,Nios CPU相關的組件運行在150MHz時鐘上。使系統在正確穩定運行的基礎上,最大限度地提高運行速度。

  3 結束語

  本文給出了一種基于SOPC系統的PCI總線高速DMA傳輸方案。與傳統的使用PCI橋芯片實現PCI總線的方案相比,該方案將PCI橋和用戶邏輯在一片FPGA中實現,減少了硬件電路的復雜度、降低了系統成本;采用SOPC創建PCI橋,大大縮短了開發周期,提高了系統的可靠性,且因使用了片上Nios CPU進行DMA的在線配置和自動異常處理,使DMA傳輸更加靈活。通過在EP3C120芯片上驗證,該設計能夠實現大于100Mbytes /s的PCI總線DMA傳輸速率。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 日韩精品一区二区三区中文3d | 色综合视频在线观看 | 曰批视频免费 | 日日噜噜夜夜狠狠视频buoke | 日本欧美在线视频 | 欧美视频在线观看一区 | 极品福利在线 | 天天狠天天操 | 亚洲精品午夜久久aaa级久久久 | 国产精品高清免费网站 | 日韩久久精品 | 日本人与人xxⅹ | 狠狠色丁香久久婷婷综合五月 | 免费黄色欧美视频 | 天天干夜夜骑 | 午夜视频成人 | 国产网站91 | 一级做a毛片免费视频 | 国产一区二卡三区四区 | 婷婷久久久五月综合色 | 国产精品一区二区不卡的视频 | 青青草综合在线 | 成人免费视屏 | 国产亚洲一路线二路线高质量 | 国产午夜三级 | 精品国产91乱码一区二区三区 | 成人毛片免费观看 | 在线一级黄色片 | 中文字幕精品1在线 | 毛片动态 | 成 人网站免费 | 热久久视久久精品18国产 | 最近免费字幕中文大全视频 | 在线欧美视频免费观看国产 | 亚洲成人xxx | 国产偷国产偷亚洲高清在线 | 欧美两性人xxxx高清免费 | 久久精品一区二区国产 | 国产综合在线观看视频 | 一级a毛片免费观看 | 欧美午夜大片 |