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

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

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

PCI9054的DMA傳輸過(guò)程可通過(guò)幾個(gè)步驟實(shí)現(xiàn)?

lhl545545 ? 來(lái)源:維庫(kù)電子市場(chǎng)網(wǎng) ? 作者:維庫(kù)電子市場(chǎng)網(wǎng) ? 2020-08-12 16:39 ? 次閱讀

目前衛(wèi)星技術(shù)已廣泛應(yīng)用于國(guó)民生產(chǎn)的各個(gè)方面。通訊衛(wèi)星,氣象衛(wèi)星以及遙感衛(wèi)星,科學(xué)探測(cè)衛(wèi)星等與人們的生活密切相關(guān)。衛(wèi)星所收集的大量數(shù)據(jù)資料能否及時(shí)準(zhǔn)確地下傳、接收和存儲(chǔ)是衛(wèi)星技術(shù)的一個(gè)重要方面。其傳送過(guò)程如圖1所示。

PCI9054的DMA傳輸過(guò)程可通過(guò)幾個(gè)步驟實(shí)現(xiàn)?

從衛(wèi)星上高速下傳的數(shù)據(jù)由地面衛(wèi)星接收站轉(zhuǎn)發(fā)為基帶信號(hào),通過(guò)光纜傳送至數(shù)據(jù)中心,速度可達(dá)上百兆波特率,要求系統(tǒng)正確接收,經(jīng)過(guò)同步和預(yù)處理,然后存入計(jì)算機(jī)系統(tǒng),供數(shù)據(jù)中心使用。其特點(diǎn)是:數(shù)據(jù)下傳速度高,數(shù)據(jù)量大,持續(xù)時(shí)間長(zhǎng),并且要求具有差錯(cuò)控制功能。而本文介紹了為了滿(mǎn)足此要求而設(shè)計(jì)的數(shù)據(jù)接收和存儲(chǔ)系統(tǒng)。

系統(tǒng)設(shè)計(jì)

數(shù)據(jù)接收和存儲(chǔ)系統(tǒng)主要包括數(shù)據(jù)接收和預(yù)處理,數(shù)據(jù)傳送,數(shù)據(jù)存儲(chǔ)等部分。本文主要介紹CPLD,PCI總線結(jié)構(gòu),總線控制器PCI9054。其系統(tǒng)組成如圖2所示。

基帶串行信號(hào)由復(fù)雜可編程邏輯器件(CPLD)進(jìn)行串并轉(zhuǎn)換,變?yōu)?位數(shù)據(jù)信號(hào)后根據(jù)編碼方式找到同步幀,并進(jìn)行預(yù)處理,然后傳到先入先出存儲(chǔ)器FIFO, 在邏輯控制下將數(shù)據(jù)送入PCI總線控制器PCI9054,由9054采用DMA突發(fā)方式傳輸至內(nèi)存,再存儲(chǔ)到RAID磁盤(pán)陣列。

采用復(fù)雜可編程邏輯器件(CPLD)可大大減少?gòu)?fù)雜的控制,通過(guò)VHDL語(yǔ)言即可靈活設(shè)置控制邏輯。而且隨著超大規(guī)模集成電路的發(fā)展,可編程邏輯器件的發(fā)展非常迅速,現(xiàn)已達(dá)到數(shù)十萬(wàn)門(mén),速度《1ns(管腳之間)。由于高速電路設(shè)計(jì)中的干擾問(wèn)題非常嚴(yán)重,因此要盡可能地減少線路設(shè)計(jì),所以采用CPLD不僅可滿(mǎn)足系統(tǒng)要求的復(fù)雜的邏輯關(guān)系,而且可大大減少布線干擾,調(diào)試和更改也非常方便,是今后邏輯控制的發(fā)展方向。在本系統(tǒng)中,CPLD不僅實(shí)現(xiàn)串并轉(zhuǎn)換和同步的功能,同時(shí)還用以實(shí)現(xiàn)數(shù)據(jù)進(jìn)入FIFO以及由FIFO傳入PCI9054的傳輸控制邏輯,中斷邏輯以及主機(jī)對(duì)數(shù)據(jù)傳輸通道的前端控制。

在總線結(jié)構(gòu)上,由于數(shù)據(jù)傳輸速度高,以往的ISA總線不能滿(mǎn)足要求(ISA總線最大傳輸速度5MB/S),必須采用更快的PCI總線結(jié)構(gòu)。PCI總線協(xié)議是Intel公司1992年提出的,為滿(mǎn)足高速數(shù)據(jù)輸入/輸出要求而設(shè)計(jì)的一種低成本,高性能的局部總線協(xié)議。它是一種獨(dú)立于處理器的總線結(jié)構(gòu),具有32位或64位的復(fù)用的數(shù)據(jù)地址總線,總線上的設(shè)備可以以系統(tǒng)總線的速度在相互之間進(jìn)行數(shù)據(jù)傳輸,或直接訪問(wèn)系統(tǒng)內(nèi)存,可以達(dá)到132MB/s的數(shù)據(jù)傳輸速率(64位則性能加倍)。采用PCI接口的設(shè)備必須滿(mǎn)足PCI接口規(guī)范V2.2標(biāo)準(zhǔn)。

PCI 總線結(jié)構(gòu)具有非常明顯的優(yōu)點(diǎn),但其總線規(guī)范十分復(fù)雜,要求非常嚴(yán)格的時(shí)序關(guān)系,接口的設(shè)計(jì)難度較大。因此,為了減少PCI總線在實(shí)際應(yīng)用中的復(fù)雜性,許多公司設(shè)計(jì)出了專(zhuān)門(mén)針對(duì)PCI總線接口的控制芯片。PCI9054就是其中比較先進(jìn)的一種。PCI9054是PLX公司推出的一種33M, 32位PCI接口控制器,可同時(shí)支持3.3V和5V兩種信號(hào)環(huán)境,并且具有電源管理功能。其結(jié)構(gòu)框圖如圖3所示。

PCI9054的DMA傳輸過(guò)程可通過(guò)幾個(gè)步驟實(shí)現(xiàn)?

它提供了三種物理總線接口:PCI總線接口,LOCAL總線接口,及串行EPROM接口。

LOCAL總線的數(shù)據(jù)寬度為32位,時(shí)鐘頻率可達(dá)到50MHZ, 并且支持?jǐn)?shù)據(jù)預(yù)取功能。 9054的LOCAL總線與PCI總線之間數(shù)據(jù)傳輸有三種方式:主模式(Direct Master),從模式(Direct Slave),DMA方式。其內(nèi)部具有兩個(gè)DMA數(shù)據(jù)通道,雙向數(shù)據(jù)通路上各有6個(gè)FIFO進(jìn)行數(shù)據(jù)緩沖,可同時(shí)進(jìn)行高速的數(shù)據(jù)接收和發(fā)送。8個(gè)32位Maibox寄存器可為雙向數(shù)據(jù)通路提供消息傳送。9054還有2個(gè)32位Doorbell寄存器,用來(lái)在PCI和Local總線上產(chǎn)生中斷。

PCI9054的DMA傳輸過(guò)程可通過(guò)幾個(gè)步驟實(shí)現(xiàn)?

用戶(hù)通過(guò)設(shè)置其內(nèi)部寄存器,即可完成各種控制功能。9054內(nèi)部寄存器的配置信息可以寫(xiě)在一片串行EPROM中,在加電時(shí)9054自動(dòng)加載串行EPROM配置信息,并由PCIBIOS通過(guò)PCI總線對(duì)配置寄存器讀寫(xiě)。9054可方便地與各種存儲(chǔ)設(shè)備相連接,在本設(shè)計(jì)中,它與FIFO及EPROM的設(shè)計(jì)接口如圖4所示。在本系統(tǒng)中,數(shù)據(jù)傳輸是單方向的,因此只設(shè)計(jì)PCI9504從FIFO中讀數(shù)據(jù)的情況,只用到與讀FIFO有關(guān)的信號(hào),如REN,RCLK等。其中的CPLD邏輯關(guān)系如下:

REN平時(shí)為高電平(無(wú)效電平),當(dāng)ADS#為低(有效),BLAST為高(無(wú)效),LW/R為低(有效)時(shí),表明9054開(kāi)始了一個(gè)有效的讀數(shù)據(jù)周期,CPLD產(chǎn)生一個(gè)低電平信號(hào)REN(有效電平)給FIFO,同時(shí)作為Ready信號(hào)返回給9054,通知9054設(shè)備已準(zhǔn)備就緒。此信號(hào)持續(xù)到ADS#為高(無(wú)效)且BLAST為低(有效)時(shí),表明9054已經(jīng)開(kāi)始最后一個(gè)周期,此時(shí)REN信號(hào)再次變高電平(無(wú)效)。

OE信號(hào)與REN信號(hào)可同樣設(shè)置,在讀信號(hào)允許的同時(shí)使能FIFO芯片。

本設(shè)計(jì)中采用了PCI9054的DMA工作方式,在此方式下,9054作為PCI總線的主設(shè)備,同時(shí)也是Local總線的控制者,通過(guò)設(shè)置其DMA控制器內(nèi)部的寄存器即可實(shí)現(xiàn)兩總線之間的數(shù)據(jù)傳送。表1顯示了與DMA傳輸相關(guān)的寄存器在PCI總線上的地址分配:

PCI9054的DMA傳輸過(guò)程可由以下幾個(gè)步驟實(shí)現(xiàn):

1.設(shè)置方式寄存器:設(shè)置DMA通道的傳輸方式,寄存器DMAMODE0或者DMAMODE1的位9:0-表示塊傳輸,1-表示散/聚傳輸;

2.設(shè)置PCI地址寄存器:設(shè)置PCI總線側(cè)的地址空間。

3.設(shè)置LOCAL地址寄存器:設(shè)置LOCAL總線側(cè)的地址空間。

4.設(shè)置傳輸計(jì)數(shù)寄存器:以字節(jié)位單位設(shè)置傳輸數(shù)據(jù)量。

5.設(shè)置描述寄存器:設(shè)置DMA傳輸?shù)姆较颍辉谏?聚方式下,位0表示傳輸參數(shù)的加載地址,0-PCI地址,1-Local地址; 位1表示傳輸鏈結(jié)束,0-未結(jié)束,1-結(jié)束;位2設(shè)置當(dāng)前塊傳輸結(jié)束后中斷;位3指示DMA的傳輸方向,0-從PCI總線到Local總線,1-從Local總線到PCI總線;高28位[31:4]表示傳輸參數(shù)表的地址指針。

6.設(shè)置命令/狀態(tài)寄存器:?jiǎn)?dòng)或停止DMA操作,并讀此寄存器返回DMA狀態(tài) 。

PCI9054的DMA傳輸過(guò)程可通過(guò)幾個(gè)步驟實(shí)現(xiàn)?

通過(guò)PCI9054的DMA傳輸方式,高速數(shù)據(jù)可以較容易地實(shí)現(xiàn)從PCI接口板上傳入計(jì)算機(jī),不必考慮PCI總線接口的實(shí)現(xiàn),從而大大簡(jiǎn)化了設(shè)計(jì)中的復(fù)雜度,加快了設(shè)計(jì)周期。

結(jié)語(yǔ)

隨著數(shù)字技術(shù)的發(fā)展,要求的數(shù)據(jù)傳輸速率將會(huì)越來(lái)越高,CPLD技術(shù)和PCI總線將會(huì)越來(lái)越多地應(yīng)用在數(shù)據(jù)傳輸?shù)脑O(shè)計(jì)中,PCI9054總線控制器有著較高的性能/價(jià)格比,將來(lái)的應(yīng)用將會(huì)更加廣泛。
責(zé)任編輯:pj

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

    關(guān)注

    31

    文章

    5253

    瀏覽量

    119212
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8257

    瀏覽量

    149976
  • 可編程邏輯器件
    +關(guān)注

    關(guān)注

    5

    文章

    136

    瀏覽量

    30246
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    簡(jiǎn)述DMA控制器的工作過(guò)程

    DMA(Direct Memory Access)控制器的工作過(guò)程是一個(gè)復(fù)雜但高效的硬件執(zhí)行過(guò)程,它實(shí)現(xiàn)了內(nèi)存與外設(shè)之間直接的數(shù)據(jù)傳輸,顯著
    的頭像 發(fā)表于 08-20 10:35 ?201次閱讀

    can總線的數(shù)據(jù)傳輸過(guò)程是什么

    CAN總線(Controller Area Network)是一種用于汽車(chē)和工業(yè)控制系統(tǒng)的通信協(xié)議。它具有高可靠性、實(shí)時(shí)性和靈活性,因此在許多領(lǐng)域得到了廣泛應(yīng)用。本文將詳細(xì)介紹CAN總線的數(shù)據(jù)傳輸過(guò)程
    的頭像 發(fā)表于 06-16 10:18 ?1234次閱讀

    FX3主機(jī)通過(guò)控制傳輸向EP0發(fā)送數(shù)據(jù),這個(gè)過(guò)程DMA嗎?

    主機(jī)通過(guò)控制傳輸向 EP0 發(fā)送數(shù)據(jù),這個(gè)過(guò)程DMA 嗎? 非常感謝!
    發(fā)表于 05-29 06:46

    無(wú)線模塊透明傳輸原理及過(guò)程解析

    透明傳輸,顧名思義,是指在傳輸過(guò)程中對(duì)外界完全透明,不需要關(guān)注傳輸過(guò)程以及傳輸協(xié)議,最終目的是要把傳輸的內(nèi)容原封不動(dòng)地傳遞給接收端,發(fā)送和接
    的頭像 發(fā)表于 04-30 16:58 ?446次閱讀

    如何確保DMA傳輸過(guò)程中的數(shù)據(jù)都是好的?

    有沒(méi)有哪位大佬清楚DMA原理的 想請(qǐng)教下,芯片廠是如何確保DMA傳輸過(guò)程中的數(shù)據(jù)都是OK的 比如傳輸前后SRAM里面的數(shù)據(jù)不變,傳輸出來(lái)的數(shù)
    發(fā)表于 04-12 06:23

    Xilinx高性能PCIe DMA控制器IP,8個(gè)DMA通道

    基于PCI Express Integrated Block,Multi-Channel PCIe QDMA Subsystem實(shí)現(xiàn)了使用DMA地址隊(duì)列的獨(dú)立多通道、高性能Continous或
    的頭像 發(fā)表于 02-22 11:11 ?1107次閱讀
    Xilinx高性能PCIe <b class='flag-5'>DMA</b>控制器IP,8個(gè)<b class='flag-5'>DMA</b>通道

    Traveo CYT2B7使用P-DMA連續(xù)將ADC的16-bit采樣結(jié)果傳輸到內(nèi)存中,每16-bit的數(shù)據(jù)傳輸是否是原子傳輸

    您好, 我正在使用 Traveo CYT2B7,我想要使用 P-DMA 連續(xù)將 ADC 的 16-bit 采樣結(jié)果傳輸到內(nèi)存中,請(qǐng)問(wèn)每 16-bit 的數(shù)據(jù)傳輸是否是原子傳輸?在 P-
    發(fā)表于 02-02 12:36

    STM32 DMA傳輸的問(wèn)題分析

    用戶(hù)使用STM32G473RET6芯片,開(kāi)發(fā)環(huán)境STM32CubeMX+Keil(LL庫(kù))。使用DMA1通道1,在半傳輸中斷和完全傳輸中斷里,拷貝ADC采集的數(shù)據(jù)。在應(yīng)用過(guò)程中發(fā)現(xiàn)
    的頭像 發(fā)表于 12-01 09:19 ?2274次閱讀
    STM32 <b class='flag-5'>DMA</b><b class='flag-5'>傳輸</b>的問(wèn)題分析

    電機(jī)繞組端產(chǎn)生的電壓脈沖波在電機(jī)繞組中的傳輸過(guò)程

    在本文中,我們將討論在電機(jī)繞組端產(chǎn)生的電壓脈沖波在電機(jī)繞組中的傳輸過(guò)程,詳細(xì)的介紹對(duì)電機(jī)繞組絕緣的影響。
    的頭像 發(fā)表于 11-01 15:11 ?926次閱讀
    電機(jī)繞組端產(chǎn)生的電壓脈沖波在電機(jī)繞組中的<b class='flag-5'>傳輸過(guò)程</b>

    STM32串口中斷及DMA接收常見(jiàn)的幾個(gè)問(wèn)題

    STM32串口中斷及DMA接收常見(jiàn)的幾個(gè)問(wèn)題
    的頭像 發(fā)表于 10-26 16:41 ?3174次閱讀
    STM32串口中斷及<b class='flag-5'>DMA</b>接收常見(jiàn)的<b class='flag-5'>幾個(gè)</b>問(wèn)題

    STM32基礎(chǔ)知識(shí):串口通信-DMA方式

    直接存儲(chǔ)器訪問(wèn) (DMA) : 用于在外設(shè)與存儲(chǔ)器之間以及存儲(chǔ)器與存儲(chǔ)器之間進(jìn)行高速數(shù)據(jù)傳輸。DMA傳輸過(guò)程的初始化和啟動(dòng)由CPU完成,傳輸過(guò)程
    的頭像 發(fā)表于 10-26 11:48 ?4774次閱讀
    STM32基礎(chǔ)知識(shí):串口通信-<b class='flag-5'>DMA</b>方式

    請(qǐng)問(wèn)nrf24l01傳輸過(guò)程中結(jié)束符有什么作用?

    nrf24l01傳輸過(guò)程中結(jié)束符有什么作用?
    發(fā)表于 10-23 07:31

    SPI未及時(shí)使能DMA通道導(dǎo)致接收數(shù)據(jù)錯(cuò)誤

    SPI 配置為使用 DMA 接收數(shù)據(jù),但在 DMA 通道未使能或在傳輸過(guò)程中關(guān)閉 DMA通道的時(shí)段,通過(guò)查詢(xún)方式讀取 SPI_DT 寄存器來(lái)
    發(fā)表于 10-20 08:08

    DMA不產(chǎn)生傳輸完成中斷

    DMA不產(chǎn)生傳輸完成中斷
    的頭像 發(fā)表于 10-18 16:44 ?1147次閱讀
    <b class='flag-5'>DMA</b>不產(chǎn)生<b class='flag-5'>傳輸</b>完成中斷

    基于PCI總線的雷達(dá)視頻高速數(shù)據(jù)采集接口設(shè)計(jì)?

    點(diǎn)擊上方 藍(lán)字 關(guān)注我們 本文提出了一種新的包括PCI9054單周期讀、寫(xiě)和存儲(chǔ)器映射傳輸的設(shè)計(jì),并討論了通用PCI總線高速數(shù)據(jù)采集卡的實(shí)現(xiàn)方案。
    的頭像 發(fā)表于 10-07 14:55 ?540次閱讀