當(dāng)前位置:首頁 > 測試測量 > 測試測量
[導(dǎo)讀]本文介紹了一種基于FPGA的USB2.0高速、低成本的虛擬邏輯分析儀的設(shè)計原理與實現(xiàn)方法。重點介紹了邏輯分析儀的觸發(fā)方式設(shè)計以及利用CP2102芯片構(gòu)建USB接口、實現(xiàn)系統(tǒng)與PC通信的方法。

摘 要:本文介紹了一種基于FPGA的USB2.0高速、低成本的虛擬邏輯分析儀的設(shè)計原理與實現(xiàn)方法。重點介紹了邏輯分析儀的觸發(fā)方式設(shè)計以及利用CP2102芯片構(gòu)建USB接口、實現(xiàn)系統(tǒng)與PC通信的方法。
關(guān)鍵詞:虛擬邏輯分析儀;FPGA;觸發(fā)設(shè)計;USB2.0;CP2102

引言

    傳統(tǒng)的邏輯分析儀體積龐大、價格昂貴、通道數(shù)目有限,并且在數(shù)據(jù)采集、傳輸、存儲、顯示等方面存在諸多限制,在很大程度上影響了其在實際中的應(yīng)用。選用高性能的FPGA芯片進行數(shù)據(jù)處理,充分利用PC的強大處理功能,配合LabView圖形化語言開發(fā)的虛擬邏輯分析儀,其數(shù)據(jù)處理和傳輸速率大大提高,適用性極大增強,其顯示、操作界面和低廉的成本較之傳統(tǒng)的邏輯分析儀具有極大的優(yōu)勢和發(fā)展前景。

工作原理

    本設(shè)計選用Altera公司的Cyclone系列FPGA器件EP1C3進行數(shù)據(jù)采集和處理,外接SRAM,用于數(shù)據(jù)的存儲。系統(tǒng)通過高性能的PIC單片機PIC18F6620完成與PC的通信,接收PC發(fā)出的觸發(fā)、配置信息并控制系統(tǒng)將采集處理后的數(shù)據(jù)上傳至PC顯示。單片機與PC的接口利用符合USB2.0規(guī)范的接口芯片CP2102實現(xiàn)。

    首先,PC向FPGA發(fā)送觸發(fā)字信息、數(shù)據(jù)采集控制信息和開啟數(shù)據(jù)采集信號;單片機發(fā)送數(shù)據(jù)至外接DAC產(chǎn)生門限電壓;采集到的輸入信號通過高速比較器與此門限電壓進行比較,以確定其值為0或1。接收到PC發(fā)出的開啟數(shù)據(jù)采集信號后,F(xiàn)PGA按設(shè)定的工作方式采集數(shù)據(jù),各通道數(shù)據(jù)移位輸入FPGA內(nèi)部緩存并存入外部SRAM。FPGA將緩存中存儲的采集數(shù)據(jù)與設(shè)定的觸發(fā)字、觸發(fā)方式和屏蔽位進行比較。一旦符合觸發(fā)條件,則設(shè)置觸發(fā)標(biāo)志,記錄觸發(fā)位置。當(dāng)數(shù)據(jù)采集至設(shè)定的點數(shù)后,F(xiàn)PGA向PC發(fā)送采集完成信號。上位機接收到此信號后,發(fā)送讀取數(shù)據(jù)命令,系統(tǒng)讀回采集數(shù)據(jù)并在PC屏上顯示。系統(tǒng)功能框圖如圖1所示。

圖1 系統(tǒng)功能框圖

系統(tǒng)觸發(fā)模塊設(shè)計

    觸發(fā)模塊是整個系統(tǒng)的核心部分,主要包括采樣時鐘選擇模塊、觸發(fā)電平設(shè)置和觸發(fā)電路三個部分。

采樣時鐘選擇模塊

    時鐘選擇模塊用于選擇采樣頻率??晒┻x擇的時鐘源包括:外部時鐘(由有源晶振提供)、單片機PWM模塊產(chǎn)生的PWM時鐘、外部時鐘輸入(由額外的設(shè)備提供)、以第N路數(shù)字信號輸入作為采樣時鐘。

觸發(fā)電平設(shè)置

    觸發(fā)電平用來確定系統(tǒng)正確識別采樣信號的高低電平。該模塊由串行數(shù)模轉(zhuǎn)換器TLC5615和高速比較器LT1721構(gòu)成。采樣開始前,單片機向DAC發(fā)送觸發(fā)電平數(shù)據(jù),轉(zhuǎn)換后的電平信號(范圍從0~+5V)送入高速比較器。

觸發(fā)電路

    觸發(fā)電路的作用是判斷采樣信號是否滿足觸發(fā)條件,并分別產(chǎn)生觸發(fā)動作。當(dāng)采集的信號滿足用戶設(shè)置的觸發(fā)條件時,系統(tǒng)記錄觸發(fā)位置并產(chǎn)生觸發(fā)信號通知上位機讀取、顯示采樣數(shù)據(jù)。本次設(shè)計的觸發(fā)電路具有三種可選的觸發(fā)模式:立即觸發(fā)、順序觸發(fā)和并行觸發(fā)。

立即觸發(fā)

    當(dāng)上位機向FPGA發(fā)出立即觸發(fā)觸發(fā)字和開始采樣指令后,F(xiàn)PGA開始采樣并立即產(chǎn)生觸發(fā)信號。采樣電路將采集到的信號存入外部的SRAM中,直至采集到規(guī)定的點數(shù)后停止采樣,向上位機發(fā)出采樣結(jié)束信號,通知其讀取采樣數(shù)據(jù)。此方式下讀回的觸發(fā)點位置為0。

順序觸發(fā)

    該方式設(shè)置了一個8位的序列觸發(fā),只有當(dāng)被測通道的信號按依次滿足觸發(fā)字所設(shè)定的8位序列時,才產(chǎn)生觸發(fā)信號。同時,為了操作的靈活性,還加入了屏蔽位。若對某一位的數(shù)據(jù)不敏感,可以將其對應(yīng)的屏蔽位設(shè)置為0,在判斷觸發(fā)條件時不對該位進行檢測。

    使用順序觸發(fā)方式,可以對任意一個通道選擇最多8位長度的序列進行觸發(fā)。在進行觸發(fā)設(shè)置時,除設(shè)置觸發(fā)方式(選擇順序觸發(fā))和進行采樣頻率選擇以外,還需要進行通道選擇、觸發(fā)字和屏蔽位設(shè)置。其Verilog HDL算法源程序如下:

if(((dbuf^{TrigWord[1],TrigWord[ 0]})&{enbit[1],enbit[0]}) == 8'h00)
 begin
 TrigFlag=2'b01; Trigpoint[6:0] <= MemABus_Wr[6:0];
  end

    其中:dbuf為所測采樣通道的數(shù)據(jù)緩存;TrigWord[0]、TrigWord[1]為觸發(fā)字;enbit[0]、enbit[1]為屏蔽字;Trigpoint為觸發(fā)位置寄存器。

并行觸發(fā)

    該方式設(shè)置了一個八級深度的并行觸發(fā),將每次采樣得到的4個通道的數(shù)據(jù)組合為一個十六進制數(shù),對應(yīng)于一個4位的觸發(fā)字,當(dāng)4個通道的數(shù)據(jù)在時間上依次滿足8個4位的觸發(fā)字時(并非要求連續(xù)),產(chǎn)生觸發(fā)信號。同樣,可以使用屏蔽位對某一通道的數(shù)據(jù)進行屏蔽,即在進行并行觸發(fā)檢測時,不對該路通道進行檢測。

    使用并行觸發(fā)方式,可以選擇最多八級的并行觸發(fā)。在進行觸發(fā)設(shè)置時,除設(shè)置觸發(fā)方式(選擇并行觸發(fā))和進行頻率選擇以外,還需要進行觸發(fā)字、屏蔽位和并行深度的設(shè)置。其Verilog HDL算法源程序如下:

if ((({dbuf4[0],dbuf3[0], dbuf2[0],dbuf1[0]}^ TrigWord [dcount] )&enbit[0] ) == 4'h0)
 begin
 if(dcount[2:0]==control[4:2])
 begin
 TrigFlag=2'b01; Trigpoint[6:0] <= MemABus_Wr[6:0];
     dcount=3'b000;     end
   dcount = dcount+3'b001;
     end

    其中,dbuf4、dbuf3、dbuf2、dbuf1分別為采樣通道4、3、2、1的數(shù)據(jù)緩存;TrigWord[dcount]為觸發(fā)字;dcount為觸發(fā)深度計數(shù)器;control[4:2]為設(shè)定的觸發(fā)深度;enbit[0]為屏敝字;Trigpoint為觸發(fā)位置寄存器。

USB2.0接口設(shè)計

    本設(shè)計選用符合USB2.0規(guī)范的CP2102芯片構(gòu)建系統(tǒng)與PC的通信接口。

    CP2102是USB-UART橋接芯片。該電路內(nèi)置USB2.0全速功能控制器、USB收發(fā)器、晶體振蕩器、EEPROM及異步串行數(shù)據(jù)總線,支持調(diào)制解調(diào)器全功能信號,無需任何外部的USB器件。其功能強大,采用MLP-28封裝,尺寸僅為5mm×5mm,占用空間非常小,非常適合大數(shù)據(jù)量處理與傳輸電路系統(tǒng)的設(shè)計與應(yīng)用。

    實際應(yīng)用中,系統(tǒng)只需使用CP2102基本的輸入/輸出數(shù)據(jù)線與復(fù)位信號線。其接口原理如圖2所示。

    系統(tǒng)啟動時, 單片機RB1端口發(fā)送一低電平至CP2102復(fù)位端,芯片復(fù)位,然后保持復(fù)位端高電平,CP2102正常工作。

圖2 USB2.0接口電路圖

    由于CP2102內(nèi)部的透明設(shè)計,數(shù)據(jù)通信時,可以不必構(gòu)建CP2102與單片機的握手信號;CP2102數(shù)據(jù)線直接與單片機1#USART模塊的接收移位寄存器(RSR)和發(fā)送移位寄存器(TSR)相連。CP2102數(shù)據(jù)線上一旦出現(xiàn)待發(fā)送的數(shù)據(jù),該數(shù)據(jù)會自動移入單片機接收移位寄存器;同樣,單片機發(fā)送數(shù)據(jù)時,發(fā)送移位寄存器中的數(shù)據(jù)直接移至CP2102的數(shù)據(jù)線(即USB接口數(shù)據(jù)線)上。

    程序設(shè)計中,系統(tǒng)不斷檢測單片機接收中斷標(biāo)志位RCIF1,一旦USART異步接收器的移位寄存器RSR接收到CP2102數(shù)據(jù)線上發(fā)送的停止位,RSR寄存器就將已接收的8位數(shù)據(jù)裝載到接收寄存器(RCREG1)中。系統(tǒng)發(fā)送數(shù)據(jù)時,前次裝入發(fā)送緩沖器(TXREG1)的數(shù)據(jù)的停止位P發(fā)送出去后,TXREG1緩沖器中的數(shù)據(jù)(軟件裝入)就被載入TSR寄存器中,TXREG1緩沖器就為空狀態(tài),同時發(fā)送中斷標(biāo)志位TXIF被置1。TSR將待發(fā)送數(shù)據(jù)逐位移至CP2102數(shù)據(jù)線,完成系統(tǒng)與CP2102 USB模塊的數(shù)據(jù)傳輸。

軟件設(shè)計

    FPGA功能實現(xiàn)程序運用硬件描述語言Verilog HDL編寫;PIC單片機程序用C語言編寫,并采用第三方C語言工具HITECH公司PICC—18編譯器編譯實現(xiàn)。PC顯示和操作部分運用圖形化語言LabView7.1編寫,其前面板如圖3所示。

圖3 系統(tǒng)面板

實驗操作

    采用LabView7.1開發(fā)的虛擬操作平臺,可以方便實現(xiàn)儀器的操作控制。實驗開始前,首先選擇通信端口,建立PC與本系統(tǒng)的通信;設(shè)置觸發(fā)電平,設(shè)置采樣頻率(外部、內(nèi)部或其他)、觸發(fā)方式、觸發(fā)字、屏蔽字并點擊“發(fā)送觸發(fā)命令”按鈕,完成相關(guān)設(shè)置,開啟數(shù)據(jù)采集和觸發(fā)進程。點擊“讀取采樣數(shù)據(jù)”可讀出采集到的數(shù)據(jù),并在PC上顯示。

結(jié)語

    在綜合考慮應(yīng)用需要和成本的前提下,本設(shè)計采用4個高速采樣通道,最高可達(dá)75MHz采樣率,存儲深度達(dá)512KB,最多可采集220個測試點。觸發(fā)電平由10位串行數(shù)模轉(zhuǎn)換器TLC5615產(chǎn)生,電平誤差小于5mV。高速USB2.0通信接口配合LabView7.1開發(fā)的虛擬操作平臺,可實現(xiàn)數(shù)據(jù)在PC上的實時顯示。本設(shè)計的成本還不到市場上同性能產(chǎn)品的1/2,更適用于教學(xué)等對產(chǎn)品數(shù)量要求較多,性能要求中等的單位采用。

參考文獻
1.鄧火炎,王磊,等編著.Labview 7.1測試技術(shù)與儀器應(yīng)用[M].機械工業(yè)出版社,2004.7
2.  Silicon Laboratories.CP2102 DataSheet. Rev. 1.0 2004.4.
3.  劉和平 等編著.PIC18Fxxx單片機程序設(shè)計及應(yīng)用[M].北京航空航天大學(xué)出版社, 2005.2

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

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

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

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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