當(dāng)前位置:首頁(yè) > EDA > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀]介紹了換體DMA高速數(shù)據(jù)采集電路原理及其CPLD實(shí)現(xiàn)。用CPLD設(shè)計(jì)雙端口RAM緩存、控制譯碼、時(shí)序邏輯電路,很好地解決了電路元件所占體積大、電路復(fù)雜、不能實(shí)現(xiàn)在線升級(jí)等問題,大大提高了系統(tǒng)的整體性能。

在許多儀器和控制系統(tǒng)中,高速數(shù)據(jù)采集電路是必不可少的,也是經(jīng)常需要解決的問題。數(shù)據(jù)采集電路設(shè)計(jì)方法很多,但往往離不開A/D轉(zhuǎn)換電路、數(shù)據(jù)緩存電路、控制邏輯電路、地址發(fā)生器、地址譯碼電路等。而數(shù)據(jù)緩存、控制邏輯、地址譯碼等電路通常是由RAM芯片、與非門、觸發(fā)器、緩沖/驅(qū)動(dòng)器等構(gòu)成,導(dǎo)致數(shù)據(jù)采集電路復(fù)雜、芯片繁多,特別是硬件的固定使得采集系統(tǒng)在線升級(jí)幾乎不可能。很多情況下只有重新設(shè)計(jì)電路和印刷板,重新焊接和調(diào)試,造成開發(fā)周期長(zhǎng)、成本大大增高。復(fù)雜可編程邏輯器件CPLD的應(yīng)用,為這些問題的解決提供了一種好的辦法。利用CPLD芯片本身集成的上萬(wàn)個(gè)邏輯門和EAB,把數(shù)據(jù)采集電路中的數(shù)據(jù)緩存、地址發(fā)生器、控制譯碼等電路全部集成進(jìn)一片CPLD芯片中,大大減小了系統(tǒng)的體積,降低了成本,提高了可靠性。同時(shí),CPLD可由軟件實(shí)現(xiàn)邏輯重構(gòu),而且可實(shí)現(xiàn)在系統(tǒng)中編程(ISP)以及有眾多功能強(qiáng)大的EDA軟件的支持,使得系統(tǒng)具有升級(jí)容易、開發(fā)周期短等優(yōu)點(diǎn)。在數(shù)據(jù)采集電路中,采用換體DMA技術(shù)不但大大地提高了數(shù)據(jù)采集的速度,而且彌補(bǔ)了數(shù)據(jù)采集中可能丟失數(shù)據(jù)的缺陷。 

1 換體DMA數(shù)據(jù)采集電路原理 

    系統(tǒng)原理框圖如圖1所示。在時(shí)序電路的控制下,模擬輸入開關(guān)將多達(dá)16路(單端輸入)或8路(差分輸入)的模擬輸入信號(hào)經(jīng)多路開關(guān)送至放大器的輸入端,放大后由內(nèi)含采樣/保持電路的模數(shù)轉(zhuǎn)換器AD774B轉(zhuǎn)換成數(shù)字量,轉(zhuǎn)換完的數(shù)字量經(jīng)時(shí)序電路的控制寫入兩個(gè)存儲(chǔ)體的一個(gè)(例如存儲(chǔ)體0)中。每個(gè)存儲(chǔ)體有4KB的容量,但實(shí)際使用中的存儲(chǔ)體容量可設(shè)定為小于4KB。當(dāng)計(jì)數(shù)到設(shè)定的存儲(chǔ)容量后,控制電路產(chǎn)生換體信號(hào),后續(xù)的A/D轉(zhuǎn)換數(shù)據(jù)自動(dòng)地存入另一個(gè)存儲(chǔ)體(存儲(chǔ)體1)。同時(shí)控制電路向主機(jī)發(fā)出DMA請(qǐng)求信號(hào),主機(jī)響應(yīng)請(qǐng)求后在時(shí)序電路的配合下,從已存夠規(guī)定數(shù)據(jù)的存儲(chǔ)體(存儲(chǔ)體0)中讀入所存的數(shù)據(jù)。這樣存儲(chǔ)體0和存儲(chǔ)體1交替存取,直到規(guī)定的換體次數(shù)計(jì)完為止。 

 

 

    數(shù)據(jù)采集電路中,時(shí)序控制電路、地址發(fā)生器、多路控制驅(qū)動(dòng)器等芯片眾多,占用了大部分體積,邏輯時(shí)序復(fù)雜。用CPLD實(shí)現(xiàn)這些電路則顯得簡(jiǎn)單明了,如圖2所示。圖2中地址發(fā)生器、雙端口RAM、時(shí)序控制等電路都可以用HDL語(yǔ)言或原理圖,或是兩者結(jié)合來(lái)實(shí)現(xiàn),使電路開發(fā)簡(jiǎn)單、靈活、方便。 

 

 

2 采用CPLD實(shí)現(xiàn)換體DMA 

    CPLD的開發(fā)必須經(jīng)過(guò)前期的邏輯設(shè)計(jì)、前仿真、后仿真、目標(biāo)代碼下載及在線調(diào)試等過(guò)程,該設(shè)計(jì)過(guò)程是借助ALTERA公司的EDA軟件MAXPLUS II 10.1來(lái)實(shí)現(xiàn)的。MAXPLUS II支持原理圖輸入、HDL語(yǔ)言輸入、設(shè)計(jì)波形輸入等。本設(shè)計(jì)則是將原理圖和HDL語(yǔ)言輸入相結(jié)合,這樣既可以加快開發(fā)速度,又不失靈活性。本電路設(shè)計(jì)所用的CPLD芯片—FLEX10K30E。它是ALTERA公司1995年把EAB與邏輯陣列塊相結(jié)合的產(chǎn)品,增加了許多FLEX10KA、B系列沒有的新特點(diǎn);FLEX10K30E內(nèi)有30000個(gè)邏輯門,247576個(gè)RAM位,支持3.3V、5V多種電源,速度等級(jí)高。 

2.1 數(shù)據(jù)緩存——雙端口RAM 

    雙端口RAM的核心是存儲(chǔ)器陣列,它的讀與寫相互獨(dú)立,有各自的時(shí)鐘線、地址總線、數(shù)據(jù)總線和使能端。在數(shù)據(jù)采集時(shí),數(shù)據(jù)進(jìn)入存儲(chǔ)器進(jìn)行緩存,同時(shí)CPU可以從緩存中取出數(shù)據(jù)讀進(jìn)計(jì)算機(jī)內(nèi)存。在傳統(tǒng)的雙RAM換體方案中要實(shí)現(xiàn)換體,存儲(chǔ)器芯片必須使用偶數(shù)片來(lái)交互存儲(chǔ);當(dāng)A/D數(shù)據(jù)位數(shù)超過(guò)8位時(shí),需要另加芯片來(lái)存儲(chǔ)高于8位的數(shù)據(jù)。在CPLD中設(shè)計(jì)雙端口RAM模塊不但實(shí)現(xiàn)了雙RAM換體功能,而且使緩存RAM的數(shù)據(jù)位數(shù)、存儲(chǔ)量大小可以根據(jù)需要任意配置。 

    如上所述,在CPLD中設(shè)計(jì)雙端口RAM,可以有兩種方式:原理圖輸入和HDL語(yǔ)言輸入。本設(shè)計(jì)采用的是MAXPLUS II庫(kù)中的LPM_RAM_DP宏,原理圖如圖3所示。 

 

 

    在LPM_RAM_DP宏中總共有10個(gè)可配置參數(shù)。通常情況下,只配置LPM_WIDTH(數(shù)據(jù)寬度)、LPM_WIDTHAD(地址總線寬度)、USE_EAB(是否使用嵌入式陣列塊EAB)三個(gè)參數(shù)。在本設(shè)計(jì)中,AD774B的數(shù)據(jù)寬度是12位,轉(zhuǎn)換速率為8微秒,所以配置了LPM_WIDTH=12,LPM_WIDTHAD=10(緩存容量為1K),USE_EAB=ON。對(duì)于緩存的大小,可以在調(diào)試過(guò)程中根據(jù)具體采集速度和緩存要求進(jìn)行在線調(diào)整,而不影響其他邏輯電路。 

    圖3LPM_RAM_DP模塊中rdaddress、rden、rdclock、rdclken、q分別為讀端的地址線、使能端、時(shí)鐘線、時(shí)鐘使能和數(shù)據(jù)線;data、wraddress為寫端的數(shù)據(jù)總線和地址總線。圖3的雙端口RAM模塊并沒有BUSY端,當(dāng)寫地址和讀地址相同時(shí),數(shù)據(jù)位沖突,讀寫不能正常工作。在實(shí)際工作中,這種問題是不應(yīng)該出現(xiàn)的。結(jié)合本系統(tǒng)的具體需要,在此引入了存儲(chǔ)器分頁(yè)概念,即把1K字節(jié)的雙端口RAM分為2頁(yè),每頁(yè)512字節(jié),分別為讀緩存頁(yè)和寫緩存頁(yè),兩者相互交換。當(dāng)采集數(shù)據(jù)量達(dá)到512字節(jié)時(shí),系統(tǒng)馬上申請(qǐng)DMA傳送,把剛轉(zhuǎn)換完的第一頁(yè)中的512字節(jié)數(shù)據(jù)送給計(jì)算機(jī),傳送結(jié)束后等待下一次DMA申請(qǐng);與此同時(shí),A/D繼續(xù)工作,轉(zhuǎn)換的數(shù)據(jù)放在第2頁(yè)0~511地址中。任何時(shí)候讀寫都分別在不同的頁(yè)工作,從而有效地避免了數(shù)據(jù)沖突,但又不影響數(shù)據(jù)傳輸速度。具體的分頁(yè)控制主要由地址發(fā)生器設(shè)計(jì)確定。 

2.2 分頁(yè)地址發(fā)生器 

    分頁(yè)地址發(fā)生器不但要產(chǎn)生雙端口RAM的讀寫地址,而且還要為緩存器分頁(yè);頁(yè)寫滿時(shí),還要提供DMA傳輸申請(qǐng)信號(hào)。為了增強(qiáng)靈活性,讀寫地址發(fā)生器由VHDL語(yǔ)言編程集中在一個(gè)模塊實(shí)現(xiàn),部分程序如下: 

signal wtmp:integer range 0 to 1023; 

signal rtmp:integer range 0 to 1023; 

signal page:intefer range 0 to 1; 

if(wclk'event and wclk='1') then 

    if(wtmp>1023) then wtmp<=0; 

        else wtmp<=wtmp+1;    --wtpm為寫地址值 

    end if; 

    if (0=

        else page<=1;               --“0”代表第0頁(yè) 

    end if;                      --“1”代表第一頁(yè) 

    if(wtmp=512 and wtmp=1023)then  page_full<='1'; 

        else page_full<='0';      --page-full為頁(yè)寫滿標(biāo)志,同時(shí)為DMA傳送申請(qǐng)信號(hào) 

    end if; 

end if; 

if(page=0)then rtmp<=0;             --不同的頁(yè)置不同的數(shù)據(jù)讀地址初始值 

    else if(page=1)then rtmp<=512; 

end if; 

if(rclk'event and rclk='1') then 

    if(en='1' and rtmp<1024) then rtmp<=rtmp+1; 

    end if;                       --rtmp為讀地址值 

end if; 

    代碼經(jīng)過(guò)編譯生成的原理框圖如圖3的ADD_CREATE模塊。在圖形輸入編輯環(huán)境下,可以把它作為一個(gè)標(biāo)準(zhǔn)的原理圖與其他模塊連接;寫地址時(shí)鐘WCK由AD774B的STS端產(chǎn)生,每一組數(shù)據(jù)轉(zhuǎn)換結(jié)束后,地址發(fā)生器加1,讀地址時(shí)鐘RCK由DMA應(yīng)答信號(hào)DACK提供;PAGE_FULL在0頁(yè)或1頁(yè)滿時(shí)變?yōu)楦唠娖?經(jīng)D觸發(fā)器申請(qǐng)DMA傳輸,把剛滿頁(yè)的數(shù)據(jù)送給計(jì)算機(jī)內(nèi)存。 

2.3 時(shí)序邏輯電路的設(shè)計(jì) 

    在數(shù)據(jù)采集電路中,時(shí)序邏輯電路主要解決地址譯碼、時(shí)序邏輯控制、數(shù)據(jù)鎖存等功能。用普通的中小規(guī)模集成電路實(shí)現(xiàn),電路組成龐大;而用VHDL語(yǔ)言實(shí)現(xiàn)則簡(jiǎn)單靈活、易于更新升級(jí)。圖3中的微機(jī)譯碼電路、數(shù)據(jù)緩沖器、D觸發(fā)器等都可以在MAXPLUS II的圖形編輯環(huán)境下,從庫(kù)中直接調(diào)出。計(jì)算機(jī)在每次DMA傳送中都向外設(shè)輸出一個(gè)應(yīng)答信號(hào)DACK和讀允許信號(hào)IOR,利用這個(gè)特點(diǎn),正好把它們作為讀緩存的地址時(shí)鐘,即每DMA傳送一次,讀地址加1;AD774B每轉(zhuǎn)換完一組數(shù)據(jù),在STS端輸出由低電平轉(zhuǎn)為高電平,剛好給寫緩存提供寫地址時(shí)鐘,同時(shí)經(jīng)過(guò)適當(dāng)延時(shí),STS又可以送到R/C端作為A/D下一次轉(zhuǎn)換的啟動(dòng)信號(hào)。 

3 DMA的應(yīng)用 

    數(shù)據(jù)傳送的查詢方式和中斷方式都是在CPU的控制下進(jìn)行的,因而傳輸速率受CPU指令運(yùn)行速度的限制。直接存儲(chǔ)器存取方式,即DMA方式。存儲(chǔ)器與外設(shè)在DMA控制器控制下,直接傳送數(shù)據(jù)而不通過(guò)CPU,傳輸速率主要取決于存儲(chǔ)器存取速度。所以在DMA過(guò)程中,數(shù)據(jù)傳輸完全由DMA控制器8237A控制,不占用CPU時(shí)間。 

    在本換體DMA高速數(shù)據(jù)采集電路中,用復(fù)雜可編程邏輯器件CPLD來(lái)實(shí)現(xiàn)數(shù)據(jù)緩存、帶分頁(yè)功能的地址發(fā)生器以及復(fù)雜的邏輯和時(shí)序電路等,使得電路大大簡(jiǎn)化;同時(shí)硬件電路軟件化,具有可在線更新、升級(jí)容易、保密性強(qiáng)等特點(diǎn)。本換體DMA高速數(shù)據(jù)采集電路已成功地應(yīng)用在生物醫(yī)學(xué)儀器、核譜獲取電路中。 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉