當(dāng)前位置:首頁 > EDA > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀]本文給出了數(shù)據(jù)緩存、傳輸模塊控制電路的設(shè)計(jì),并采用VHDL語言和CPLD很好的完成邏輯控制任務(wù)和系統(tǒng)驅(qū)動(dòng)程序的編寫與調(diào)試。

0引言

    聲發(fā)射技術(shù)是光纖傳感技術(shù)和聲發(fā)射技術(shù)相結(jié)合的產(chǎn)物,是目前聲發(fā)射技術(shù)的發(fā)展趨勢(shì)。它將高靈敏度聲發(fā)射傳感器安裝于受力構(gòu)件表面以形成一定數(shù)目的傳感器陣列,實(shí)時(shí)接收和采集來自于材料缺陷的聲發(fā)射信號(hào),進(jìn)而通過對(duì)這些聲發(fā)射信號(hào)的識(shí)別、判斷和分析來對(duì)材料損傷缺陷進(jìn)行檢測(cè)研究并對(duì)構(gòu)件強(qiáng)度、損傷、壽命等進(jìn)行分析和研究。

    在實(shí)際的構(gòu)件檢測(cè)中,現(xiàn)場(chǎng)聲源信號(hào)通常是在100~800 kHz之間的微弱高頻信號(hào),而且材料損傷檢測(cè)、聲發(fā)射源定位往往需要多個(gè)傳感器形成傳感器陣列,而聲發(fā)射信號(hào)的數(shù)據(jù)傳輸系統(tǒng)必須達(dá)到640 Mbps以上的數(shù)據(jù)傳輸能力;并應(yīng)具有應(yīng)付突發(fā)或長(zhǎng)時(shí)間數(shù)據(jù)接收和存儲(chǔ)能力。本文就是利用CPLD來實(shí)現(xiàn)對(duì)聲發(fā)射信號(hào)的采集,從而有效解決了數(shù)據(jù)的實(shí)時(shí)傳輸和存儲(chǔ)問題。

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

    本方案采用FIFO存儲(chǔ)器構(gòu)成外部大容量數(shù)據(jù)緩沖區(qū),而使用PCI總線的DMA傳輸方式與微機(jī)進(jìn)行高速數(shù)據(jù)傳輸?,F(xiàn)場(chǎng)聲發(fā)射信號(hào)經(jīng)過AD轉(zhuǎn)換和驅(qū)動(dòng)電路驅(qū)動(dòng)后進(jìn)入PCI板卡,然后將部分?jǐn)?shù)據(jù)鎖存,同時(shí)將并行信號(hào)轉(zhuǎn)換為串并行信號(hào),通過CPLD控制邏輯電路存入FIFO。當(dāng)FIFO存儲(chǔ)器中的數(shù)據(jù)到達(dá)一定狀態(tài)時(shí),CPLD控制邏輯會(huì)產(chǎn)生中斷信號(hào)給PCI9054總線控制器,之后由后者啟動(dòng)DMA傳輸將數(shù)據(jù)傳人計(jì)算機(jī)內(nèi)存中。DMA傳輸完成后,PCI9054產(chǎn)生通道中斷,并由計(jì)算機(jī)將數(shù)據(jù)從內(nèi)存取出存入硬盤。該數(shù)據(jù)存儲(chǔ)傳輸模塊的總體框圖如圖1所示。

2 FIFO數(shù)據(jù)存儲(chǔ)電路設(shè)計(jì)

    FIFO是一個(gè)先人先出的雙口緩沖器,為保證整個(gè)系統(tǒng)正常工作,F(xiàn)IFO存儲(chǔ)器允許系統(tǒng)進(jìn)行DMA操作,以提高數(shù)據(jù)的傳輸速度。否則,數(shù)據(jù)傳輸將達(dá)不到傳輸要求,而且會(huì)大大增加CPU的負(fù)擔(dān),甚至無法同時(shí)完成數(shù)據(jù)的存儲(chǔ)。

    本設(shè)計(jì)在數(shù)據(jù)傳輸系統(tǒng)中采用了六片IDT72281芯片來緩存數(shù)據(jù),并將其分成兩組,其中由三片F(xiàn)IFO進(jìn)行字寬擴(kuò)展,圖2所示是其緩存?zhèn)鬏斒疽鈭D。按照這種設(shè)計(jì),其字寬可達(dá)27位,可以傳輸24位數(shù)據(jù)和兩個(gè)OTR位。

3 CPLD邏輯控制

    本系統(tǒng)中由于要對(duì)高速信號(hào)進(jìn)行處理,因此,對(duì)控制信號(hào)的時(shí)序要求比較嚴(yán)格。在控制芯片的選擇上要盡量選用時(shí)延小、速度快的芯片。本設(shè)計(jì)采用美國Altera公司的MAX7000S系列可編程邏輯器件EPM7128SLC84-15,并采用MAX+PlusⅡ來完成系統(tǒng)的輸入、編譯、驗(yàn)證及編程,進(jìn)而完成向量測(cè)試及仿真.最后的數(shù)據(jù)可通過下載線傳輸?shù)叫酒衼硗瓿尚酒呐渲谩?BR>

3.1 CPLD邏輯控制電路

    CPLD為采樣控制器的核心,數(shù)據(jù)傳輸所要求的嚴(yán)格時(shí)序控制關(guān)系就由CPLD負(fù)責(zé)處理。它在本系統(tǒng)中主要負(fù)責(zé)產(chǎn)生與PCI9054的握手信號(hào)、數(shù)據(jù)存儲(chǔ)器的片選信號(hào)和讀寫控制信號(hào)。CPLD的外圍信號(hào)接口如圖3所示。

    CPLD可根據(jù)FIFO存儲(chǔ)器的時(shí)序控制要求產(chǎn)生控制信號(hào),并在第一個(gè)時(shí)鐘周期中將數(shù)據(jù)分別存入FIFO和數(shù)據(jù)鎖存器74LS373中,而在第二個(gè)時(shí)鐘周期將鎖存器中的數(shù)據(jù)再存入FIFO,從而完成并行數(shù)據(jù)向串行數(shù)據(jù)的轉(zhuǎn)換。同時(shí)根據(jù)存儲(chǔ)器的相關(guān)信號(hào)向PCI9054控制器發(fā)出中斷請(qǐng)求,并在PCI9054讀取數(shù)據(jù)時(shí)產(chǎn)生相應(yīng)的控制邏輯。

3.2 CPLD控制邏輯

    當(dāng)并行數(shù)據(jù)進(jìn)入板卡后,CPLD首先將一部分?jǐn)?shù)據(jù)存入鎖存器,而將另一部分?jǐn)?shù)據(jù)直接存入FIFO。但此時(shí)必須將寫時(shí)鐘信號(hào)WCLK進(jìn)行二分頻,以便在一個(gè)AD轉(zhuǎn)換周期內(nèi)完成兩次FIFO寫操作。當(dāng)FIFO數(shù)據(jù)到達(dá)半滿時(shí),CPLD便向PCI9054發(fā)出中斷申請(qǐng),并由PCI9054將該申請(qǐng)傳入計(jì)算機(jī)。若系統(tǒng)響應(yīng)該中請(qǐng),則在中斷響應(yīng)程序內(nèi)發(fā)出讀命令,以讀取字節(jié)數(shù)和地址信號(hào)等。

    PCI9054通過LHOLD申請(qǐng)LOCAL總線控制權(quán),而CPLD則通過LHOLDA響應(yīng),以使PCI9054能得到局部總線的控制權(quán)。PCI9054首先將PCI地址窄間映射到本地地址空間,接著啟動(dòng)本地總線的散聚DMA周期。CPLD收到讀信號(hào)(LW/R)、地址選通信號(hào)(ADS)和地址(LA16、LA17)后便開始傳送數(shù)據(jù)。當(dāng)LA16位為0,LA17位為1時(shí),系統(tǒng)將使能后三片F(xiàn)IFO的讀使能端(REN2),以使后三片F(xiàn)IFO數(shù)據(jù)線上的Q0~Q31有效而同時(shí)也使PCI9054的準(zhǔn)備好信號(hào)(READY)有效,開始數(shù)據(jù)傳送。在最后一個(gè)數(shù)據(jù)傳送之前,BLAST信號(hào)有效,之后,CPLD將在一個(gè)時(shí)鐘周期后使FIFO的讀使能(REN1或REN2)無效,從而完成一次數(shù)據(jù)傳送過程。

3.3 控制程序設(shè)計(jì)

    PCI9054單周期讀、寫和DMA讀的VHDL語言時(shí)序控制狀態(tài)機(jī)設(shè)計(jì)如圖4所示。圖中,S0為空閑狀態(tài)。當(dāng)本地總線請(qǐng)求信號(hào)LHOLD被置1時(shí)轉(zhuǎn)到S1,否則留在S0。S1為總線保持狀態(tài),此狀態(tài)下應(yīng)將本地總線響應(yīng)信號(hào)LHOLDA置1。如ADS信號(hào)為0且LW/R為1則轉(zhuǎn)到S3,如ADS信號(hào)為1且LW/R和BLAST為0則轉(zhuǎn)到S4,這種狀態(tài)表明此次讀操作為單周期讀。S2為DMA讀狀態(tài),在此狀態(tài)下應(yīng)將READY信號(hào)和FIFO讀使能信號(hào)REN1置0。如BLAST為1,則表明此次DMA讀取還未完成,應(yīng)繼續(xù)留在S2,如BLAST為0,則表明此次DMA讀取完成,可轉(zhuǎn)到S4。S3為單周期寫狀態(tài),此狀態(tài)下也要置READY信號(hào)為0以表示寫數(shù)據(jù)有效,并在BLAST為0時(shí)轉(zhuǎn)到S4。S4為讀寫操作完成狀態(tài),當(dāng)LHOLD被置0時(shí),表明PCI9054不再請(qǐng)求本地總線,此時(shí)應(yīng)轉(zhuǎn)到S0,當(dāng)BLAST為0且LHOLD為1時(shí),表明PCI9054還要進(jìn)行數(shù)據(jù)讀寫,故應(yīng)轉(zhuǎn)到S1繼續(xù)操作。

3.4 控制程序邏輯的仿真結(jié)果

    MAX+PLUSⅡ是開發(fā)Aletra公司的FPGA/CPLD系列產(chǎn)品的軟件工具,本設(shè)計(jì)利用此工具提供的設(shè)計(jì)環(huán)境和設(shè)計(jì)工具來對(duì)CPLD控制程序進(jìn)行開發(fā)和調(diào)試。其功能時(shí)序如圖5所示。

   CPLD的設(shè)計(jì)是用VHDL編程實(shí)現(xiàn)的。本設(shè)計(jì)的操作代碼都已經(jīng)過仿真,并在實(shí)際調(diào)試中得到應(yīng)用。

4 系統(tǒng)驅(qū)動(dòng)程序設(shè)計(jì)

    本設(shè)計(jì)使用DriverWorks的DriverWizard來創(chuàng)建WDM框架程序??筛鶕?jù)設(shè)計(jì)需求添加程序代碼,從而完成PCI設(shè)備的DMA傳輸系統(tǒng)驅(qū)動(dòng)程序,以執(zhí)行DMA操作、訪問I/O端口和存儲(chǔ)器空間、處理器中斷和訪問PCI。根據(jù)系統(tǒng)需要,驅(qū)動(dòng)程序的關(guān)鍵是三個(gè)方面:硬件訪問、中斷處理和DMA傳輸。

    KdmaAdapter類可用于建立一個(gè)DMA適配器,以標(biāo)明一個(gè)DMA通道的特性和提供串行化訪問服務(wù);KDmaTransfer類則用于控制DMA的傳輸和啟動(dòng)DMA傳輸,以傳輸DMA數(shù)據(jù)緩沖區(qū)物理地址和字節(jié)數(shù),DMA傳輸結(jié)束后,數(shù)據(jù)將由公用緩沖區(qū)拷貝到應(yīng)用數(shù)據(jù)緩沖區(qū);KCommon DmaBuffer用于實(shí)現(xiàn)公用緩沖區(qū)的操作。對(duì)于DMA操作,本系統(tǒng)還提供了一個(gè)特殊的內(nèi)存,即公用緩沖區(qū)。應(yīng)當(dāng)說明的是,公用緩沖區(qū)是稀有的系統(tǒng)資源,應(yīng)該避免浪費(fèi)使用。

5 結(jié)束語

    本文給出了數(shù)據(jù)緩存、傳輸模塊控制電路的設(shè)計(jì),并采用VHDL語言和CPLD很好的完成邏輯控制任務(wù)和系統(tǒng)驅(qū)動(dòng)程序的編寫與調(diào)試。實(shí)驗(yàn)結(jié)果表明,該數(shù)據(jù)存儲(chǔ)傳輸模塊的硬件、軟件工作十分可靠、穩(wěn)定,可實(shí)現(xiàn)640 Mbps(80 MByte/s)以上實(shí)時(shí)數(shù)據(jù)的存儲(chǔ)與傳輸,完全能滿足聲發(fā)射信號(hào)采集的要求。

本站聲明: 本文章由作者或相關(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日 /美通社/ -- 英國汽車技術(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日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(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中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

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

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

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

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(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)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(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)閉