《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的新型虛擬邏輯分析儀的設計
基于FPGA的新型虛擬邏輯分析儀的設計
來源:電子技術應用2011年第12期
鮮 果, 龔曉峰
(四川大學 電氣信息學院,四川 成都610065)
摘要: 提出了一種基于FPGA的虛擬邏輯分析儀的設計。該系統(tǒng)對采集到的模擬或數(shù)字信號進行存儲、處理和邏輯分析。通過FPGA控制數(shù)據(jù)單次或連續(xù)采集、緩沖,通過PCI總線將緩沖區(qū)數(shù)據(jù)轉(zhuǎn)移到硬盤管理卡,由硬盤管理卡將數(shù)據(jù)存入海量硬盤。
中圖分類號: TP36
文獻標識碼: B
文章編號: 0258-7998(2011)12-0087-03
New virtual logic analyzer design based on FPGA
Xian Guo, Gong Xiaofeng
College of Electrical Engineering and Information Technology, Sichuan University, Chengdu 610065, China
Abstract: This paper presents a design of a virtual logic analyzer based on FPGA. The system of collection of analog or digital signals for storage, processing and logical analysis. Through the FPGA to control a single or continuous acquisition of data, buffer, buffer the data through the PCI bus will be transferred to the hard disk management card, a hard disk management card data into the massive hard drive.
Key words : logic analyzer; acquisition of data; PCI bus; FPGA


    邏輯分析儀是一種通用數(shù)據(jù)域測試儀器。應用在由中大規(guī)模數(shù)字集成電路組成的數(shù)字系統(tǒng)中,主要查找總線相關性故障,能以多種方式跟蹤與顯示總線上的數(shù)據(jù)流,是測量領域不可缺少的工具。
    隨著電子技術和計算機技術的發(fā)展,邏輯分析儀與 PC機相結(jié)合,研發(fā)的虛擬邏輯分析儀是近年的一個新的發(fā)展方向,兩者的結(jié)合擴展了邏輯分析儀的分析和計算能力,提高了性價比,且增強了儀器的通用性?,F(xiàn)場可編程邏輯器件FPGA,是一種可由用戶根據(jù)所設計的數(shù)字系統(tǒng)的要求,在現(xiàn)場由自己配置、定義的高密度專用數(shù)字集成電路。它具有設計方便、靈活、校驗快和設計可重復改變的特點。
    本文提出了一種基于FPGA的虛擬邏輯分析儀的設計方法。該系統(tǒng)對采集到的模擬或數(shù)字信號進行存儲、預處理和邏輯分析。通過FPGA控制數(shù)據(jù)單次或連續(xù)采集、緩沖,通過PCI9030將緩沖區(qū)數(shù)據(jù)轉(zhuǎn)移到硬盤管理卡,由硬盤管理卡將數(shù)據(jù)存入海量硬盤。
1 系統(tǒng)結(jié)構(gòu)設計
    本文設計的虛擬邏輯分析儀主要由高速模擬量采集通道、高速數(shù)字量采集通道、PCI接口電路、時鐘產(chǎn)生電路四部分組成。數(shù)據(jù)采集系統(tǒng)要解決的問題主要是數(shù)據(jù)的采集和傳輸問題。為了增強設計的靈活性和可擴展性,系統(tǒng)采用FPGA(Field Programmable Logic Array)來實現(xiàn)對A/D轉(zhuǎn)換器、數(shù)據(jù)緩沖器、時鐘、數(shù)據(jù)傳輸?shù)倪壿嬁刂啤O到y(tǒng)功能框圖如圖1所示。

2 FPGA在系統(tǒng)中的應用
    FPGA領域的快速發(fā)展使FPGA片上資源大量豐富,尤其是其高速性能和片上RAM使其特別適用于高速數(shù)據(jù)采集系統(tǒng)的設計。設計選用Altera公司的FLEX10K30E,該器件含有8個EAB(嵌入式陣列),每個EAB能夠提供4 Kbit存儲位,每個EAB都有雙口RAM實現(xiàn)能力;提供30 000邏輯門;支持PCI總線,可提供 66 MHz的PCI性能;門級延時僅為6.5 ns。本系統(tǒng)中FPGA設計主要包含地址譯碼及初始化接口電路、分頻電路、觸發(fā)方式控制電路、采樣時鐘產(chǎn)生電路、8 bit轉(zhuǎn)32 bit電路、中斷電路等。FPGA功能框圖如圖2所示。

3 系統(tǒng)功能分析與系統(tǒng)描述

 


    依據(jù)前面討論的系統(tǒng)級設計方法,首先對高速模擬量采集通道邏輯控制與觸發(fā)電路所應具備的功能進行分析。歸納出本部分電路應完成的功能主要有以下幾點:(1)軟件初始化設定的接口;(2)觸發(fā)方式控制;(3)采樣時鐘產(chǎn)生;(4)啟動/停止采樣及數(shù)據(jù)的緩存與讀取。
3.1 軟件初始化設定
    采集通道的初始化設定主要包括耦合方式選擇、前端電路使能、觸發(fā)源(內(nèi)/外觸發(fā))選擇、觸發(fā)方式設定、采樣方式及采樣頻率設定。這些設定均采用模擬量采集通道工作方式寄存器(16 bit)的各標志位來控制。工作方式寄存器作為Local Bus的I/O端口來操作。另外,還有觸發(fā)延遲計數(shù)值預置端口、觸發(fā)超前計數(shù)值預置端口、采樣點計數(shù)值預置端口、增益調(diào)整D/A轉(zhuǎn)換操作端口以及觸發(fā)電平D/A轉(zhuǎn)換操作端口等I/O端口。這些I/O端口組成一個連續(xù)的I/O地址范圍,由Local Bus總線譯碼來尋址并進行相應I/O操作。
3.2 觸發(fā)方式控制
    本設計提供了三種常用的觸發(fā)方式:立即電平觸發(fā)、延遲電平觸發(fā)、超前電平觸發(fā)。根據(jù)外部觸發(fā)信號選擇所需的觸發(fā)方式。
3.3 采樣時鐘
    由于受高速ADC最低采樣頻率的限制(最低為5 MHz,低于此值會造成ADC的量化誤差急劇增大,甚至ADC不能正常工作),因此,本文設計的異步采樣提供了四種采樣頻率:由60 MHz有源晶振提供基準時鐘送到FPGA的可編程分頻器,經(jīng)過可編程分頻電路之后產(chǎn)生60 MHz、30 MHz、15 MHz、7.5 MHz四種時鐘輸出到觸發(fā)方式控制器中。把時鐘信號和觸發(fā)方式送到采樣時鐘產(chǎn)生電路中產(chǎn)生系統(tǒng)需要的各個時鐘信號。
3.4啟動/停止采樣及數(shù)據(jù)的緩存與讀取
     由計算機軟件發(fā)出啟動命令后開始采樣,并同步將ADC輸出的8 bit數(shù)據(jù)轉(zhuǎn)換成32 bit存入FIFO中。若是單次采集(采樣點規(guī)定小于16 K),則在采集完成后產(chǎn)生中斷,由計算機一次性全部讀回數(shù)據(jù);若是連續(xù)采集,則當FIFO的可編程近滿/PAF標志位有效時,產(chǎn)生中斷信號,此時計算機響應中斷后,僅依次讀取2 K×32 bit的數(shù)據(jù),由于采集數(shù)據(jù)從FIFO中讀出比寫入的時鐘頻率高很多,而采樣還在繼續(xù),因此當/PAF再次有效時,計算機又讀取同樣的數(shù)據(jù)量,這樣連續(xù)循環(huán)地進行,直到計算機軟件發(fā)出停止命令才完成數(shù)據(jù)采集過程。
4 時序仿真分析
    時序仿真是接近真實器件運行環(huán)境的仿真,仿真過程中已考慮了器件硬件特性,且時序仿真的網(wǎng)表文件中已包含了較為精確的延遲信息,因此仿真精度很高。
    時序仿真環(huán)境按照數(shù)據(jù)采集的過程來建立,完成各種初始化設定后,主要注意觸發(fā)控制、采樣時鐘的輸出以及數(shù)據(jù)采集的啟/??刂剖欠駶M足要求,如果沒有達到設計要求,則必須對前面的設計描述加以修改,直到符合要求,才可以將產(chǎn)生的下載文件通過編程器或下載電纜載入目標器件FPGA中。仿真結(jié)果如圖3~圖5所示。

    從時序邏輯圖可知,觸發(fā)控制、采樣時鐘的輸出以及數(shù)據(jù)采集的啟/停控制滿足系統(tǒng)要求??梢詫a(chǎn)生的下載文件通過編程器或下載電纜載入目標器件FPGA中。
    經(jīng)測試表明,本文設計的虛擬邏輯分析儀系統(tǒng)穩(wěn)定,工作狀態(tài)良好,具備了較強的邏輯分析能力,能滿足信號分析的要求。由于該方案基于Altera公司的EPF10K30E系列FPGA來實現(xiàn),使部分硬件功能軟件化,使硬件電路大為簡化,提高了邏輯分析儀的可靠性,降低了成本,且功能易于擴展,具有一定的教學和科研價值。
參考文獻
[1] 閭琳 汪道輝.基于FPGA的虛擬邏輯分析儀設計與實現(xiàn)[J].電子技術應用,2008,34(7):85-87.
[2] 陳建泗,張敏芳. USB 2.0接口的虛擬邏輯分析儀卡的設計與實現(xiàn)[J].微計算機信息,2005,28(18):121-122,136.
[3] 竇振卓.用FPGA實現(xiàn)虛擬邏輯狀態(tài)分析儀多種功能[J].電子測量技術,2006(1):121-122.
[4] 何海婷,王召巴.基于FPGA的嵌入式邏輯分析儀設計[J].長沙電力學院學報(自然科學版),2006(2):46-50.
[5] 許美容,胡仁杰.虛擬邏輯分析儀控制電路的設計與實現(xiàn)[J].電氣應用,2005,24(12):56-58.
[6] 雷曉平,羅海天. 多通道實時數(shù)據(jù)采集系統(tǒng)的設計和實現(xiàn)[J]. 計算機工程, 2002,28(11):230-231.
[7] 楊坤德,趙亞梅,馬遠良.高速大容量多通道數(shù)據(jù)采集系統(tǒng)設計[J].數(shù)據(jù)采集與處理, 2002,17(4):455-458.
[8] MORGAN F, BENNET T, SHEARER A. An FPGA-based time resolved data acquisition system for astronomical and other applications[C].Proceedings of the Irish Signals and Systems Conference, 2000.
[9] 宋萬杰,羅豐,吳順君. CPLD技術及其應用[M]. 西安:西安電子科技大學出版社, 2002
[10] PLX Technology, Inc. PCI 9056BA Data Book, Version 1.1. 2003.
[11] Altera, Co. FLEX 10KE Datasheet. www. altera. Com.
[12] 黃新財,佃松宜,汪道輝.基于FPGA的高速連續(xù)數(shù)據(jù)采集系統(tǒng)的設計[J].微計算機信息,2005,28(2).

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉(zhuǎn)載。