新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > SOPC在PCI總線高速數(shù)據(jù)傳輸系統(tǒng)中的應(yīng)用

        SOPC在PCI總線高速數(shù)據(jù)傳輸系統(tǒng)中的應(yīng)用

        作者: 時間:2012-08-21 來源:網(wǎng)絡(luò) 收藏

          2.2 異常的自動處理

          DMA傳輸過程中,可能出現(xiàn)的異常包括:

          (1)上SERR信號為高,系統(tǒng)錯誤。

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

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

          (4)主設(shè)備或從設(shè)備中止傳輸,或重試次數(shù)超過門限,導(dǎo)致PCI橋?qū)偩€讀/寫失敗。

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

          2.3 提高PCI總線DMA速率的優(yōu)化措施

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

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

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

          (2)DMA控制的優(yōu)化

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

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

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

        3 結(jié)束語

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


        上一頁 1 2 3 下一頁

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 监利县| 丰原市| 诏安县| 鄱阳县| 兴城市| 弥渡县| 繁昌县| 岐山县| 内黄县| 墨江| 凤庆县| 肇州县| 光山县| 石棉县| 满城县| 平和县| 奉化市| 广水市| 天全县| 志丹县| 清新县| 惠来县| 上饶县| 建湖县| 司法| 都安| 布拖县| 松溪县| 伊春市| 思南县| 胶南市| 黄龙县| 霍州市| 平罗县| 嵊州市| 仙桃市| 揭阳市| 宁南县| 通道| 五寨县| 怀仁县|