本科畢業(yè)設計--高速數(shù)據(jù)采集系統(tǒng)_第1頁
本科畢業(yè)設計--高速數(shù)據(jù)采集系統(tǒng)_第2頁
本科畢業(yè)設計--高速數(shù)據(jù)采集系統(tǒng)_第3頁
本科畢業(yè)設計--高速數(shù)據(jù)采集系統(tǒng)_第4頁
本科畢業(yè)設計--高速數(shù)據(jù)采集系統(tǒng)_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1 畢業(yè)設計論文 高速數(shù)據(jù)采集系統(tǒng) 信息技術學院 電子信息科學與技術 姓名:陳 指導教師: 2 高速數(shù)據(jù)采集系統(tǒng) 作者:陳玲 指導教師: 論文摘要 :介紹了一種基于 FPGA(現(xiàn)場可編程門陣列)和 FIFO(先入先出存儲器)的多通道高速 A D數(shù)據(jù)采集系統(tǒng)的設計方法,并給出了這種數(shù)據(jù)采集方法的硬件原理電路和主要的軟件設計思路。本系統(tǒng)的特點在于該系統(tǒng)在單片機的控制下實現(xiàn)高速數(shù)據(jù)采集,采樣頻率可達 1 2 MHz。該系統(tǒng)可靠性高,抗干擾能力強,造價低廉。采用該設 計方法所設計的數(shù)據(jù)采集系統(tǒng)不但可以實現(xiàn)高速采集多通道的數(shù)據(jù),而且還可以擴展模擬量的輸入通道數(shù)。對于一般的高速數(shù)據(jù)采集系統(tǒng)而言,除了采用高速的 A/D 轉換器、高速存儲器等高速器件之外,還要解決如何高速尋址、如何控制總線邏輯、如何進行高速存儲以及如何方便地與 PC 機交換數(shù)據(jù)等問題。這些問題都是設計一個高速數(shù)據(jù)采集系統(tǒng)所要共同面對的問題。兼顧這些共性問題,筆者設計了一套以精確故障定位為目的的高速數(shù)據(jù)采集系統(tǒng)。 Abstract: Introduced based on a CPLD (complex programmable logic devices) and FIFO (first in first out memory), multi-channel high-speed data high-speed system design A/D methods, and methods of providing such data collection hardware circuit and the main principles of software design ideas. Characteristics of the system lies in the system of control in Chanpianji achieve high-speed data collection, sampling frequency to 12 MHz. The high reliability of the system, anti-interference capability is strong, prices are low. The design methodology used to design the data collection system can achieve high-speed multi-channel data acquisition, simulation, but can also expand the volume of a few passages. High-speed data acquisition system in general, in addition to using high-speed A/D, high-speed, high-speed memory devices, but also how to solve the high-speed Xinzhi, how to control the bus logic, how to facilitate high-speed storage and data exchange with a PC. These problems are designed to be a high-speed data acquisition system common problems. Both of these common problems, the authors designed a precise breakdown as to the purpose of high-speed data acquisition systems. 關鍵詞: FPGA 高速數(shù)據(jù)采集系統(tǒng) 單片機 3 目錄 第一章緒論 . 5 1.1 發(fā)展前景及研究意義 . 5 第二章系統(tǒng)硬件設計 . 6 2.1 系統(tǒng)設計原理框圖 . 6 2.2 設計基本思 想 . 6 2.3.1AT89C51 簡介 . 7 2.3.2FIFO 存儲器件 IDT72V2113 簡介 . 9 2.3.3FPGA 芯片簡介 . 12 2.3.4AD 轉換芯片 TLC5510 的簡介 . 15 2.3.5 串口 RS232 的簡介 . 18 第三章系統(tǒng)設計原理及工作原理 16 3.1AD 轉換工作原理 . 19 3.2 關于 FPGA 的簡介 . 20 3.2.1FPGA 的概述 . 20 3.3FPGA 實現(xiàn)硬件采樣的原理 . 21 3.4 顯示電路的工作原理 . 22 3.4.1 七段顯示器的原理 . 22 3.4.2 靜態(tài)顯示接口 . 23 第四章數(shù)據(jù)采集軟件設計 . 25 4.1 數(shù)據(jù)處理 . 25 第五章結束語 . 26 第六章 附錄 . 27 6.1 系統(tǒng)設計總體流程圖 . 27 6.2 系統(tǒng)設計程序 . 29 6.3 系統(tǒng)總體電路圖 . 30 6.4 參考文獻: . 31 4 5 第一章緒論 1.1 發(fā)展前景及研究意義 現(xiàn)代工業(yè)生產和科學研究對數(shù)據(jù)采集的要求日益提高。計算機技術的發(fā)展為現(xiàn)代大工業(yè)的發(fā)展提供了硬件保障。工業(yè)應用系統(tǒng)對作為控制的計算機也提出了新的要求。一 方面要求主控機處理的數(shù)據(jù)更多,速度也更快;另一方面由于應用系統(tǒng)復雜程度不斷提高,控制單元種類很多,速度有快有慢,要求主控機有較強的適應性??偩€技術的發(fā)展為各種系統(tǒng)的設計提供了很大方便,提高了系統(tǒng)運行的速度,用戶可以進行各種組合。 PC 機總線通常聯(lián)接到 PC 微機的擴展槽再經(jīng)插槽為外設提供 I O通道,速度和可靠性都很高。主機板通過擴展槽這種開放式的總線體系與各種外圍設備進行信息交換。 IBM 的 16位工業(yè)標準 ISA 總線是在工業(yè)生產中廣為使用的工控機系統(tǒng)總線,這種總線的技術已經(jīng)很成熟并被廣泛采用。 目前不同性能指標的通用或 專用的數(shù)據(jù)采集系統(tǒng),在各種領域中隨處可見。但是,由于成本或技術開發(fā)等眾多因素的影響,一般的數(shù)據(jù)采集系統(tǒng)其速度和通道數(shù)不能滿足一些特殊領域的測試要求,或者滿足這些要求的系統(tǒng)又由于成本相當高而市場推廣的難度加大。 高速數(shù)據(jù)采集是目前數(shù)據(jù)采集的發(fā)展方向。隨著微電子技術飛速發(fā)展,電子器件運行速度有了很大的提高,幾十兆采樣頻率的 AD 逐漸得到廣泛的應用。但是,數(shù)據(jù)傳輸和存儲一直制約著數(shù)據(jù)采集系統(tǒng)向更高速度上的發(fā)展。因此,如何進行高速的數(shù)據(jù)傳輸和存儲是大容量連續(xù)數(shù)據(jù)采集系統(tǒng)的技術關鍵。目前一般是從兩個方面進行考慮: 1 采 用高速傳輸協(xié)議,例如 PCI、 USB2.0、 1394 等高速的數(shù)據(jù)傳輸協(xié)議,將采樣數(shù)據(jù)傳送到主機,然后進行后續(xù)處理; 2 采用高速度、大容量的存儲器件,如 SDRAM、 SBSRAM、 FIFO 等 ,將采樣數(shù)據(jù)存儲在采集板上直接進行處理。其中高速 FIFO 就是硬件上得到廣泛使用的一種存儲器件,因此我們采用了高速的 FIFO 器件 IDT72V2113。 對于一般的高速數(shù)據(jù)采集系統(tǒng)而言,除了采用高速的 A/D 轉換器、高速存儲器等高速器件之外,還要解決如何高速尋址、如何控制總線邏輯、如何進行高速存儲以及如何方便地與 PC 機交換數(shù)據(jù)等問 題。這些問題都是設計一個高速數(shù)據(jù)采集系統(tǒng)所要共同面對的問題。 本文介紹的高速數(shù)據(jù)采集,實現(xiàn)了數(shù)據(jù)的高速數(shù)據(jù)采集、數(shù)據(jù)存儲、數(shù)據(jù)分析等。使 CPU 能控制和協(xié)調外設的運行,并提出了一種解決慢速外設和高速 CPU 時序之間矛盾的方法??梢詰糜诟哳l數(shù)據(jù)的采集、分析處理。 1.2 方案論證: 隨著單片機構成的較小系統(tǒng)中對信號進行實時處理(如諧波分析等)已經(jīng)成為可能,且越來越受到人們的重視。這就要求作為最底層的數(shù)據(jù)采集系統(tǒng),既要具有很高的采樣速率,又要能提供更豐富的原始數(shù)據(jù)信息。 常規(guī)采集方案為: ( 1)由單片機直 接控制的采集方案,這是最簡單最常用的控制方案。由于每次采樣都要有單片機的參與,需占用單片機的時間,影響其數(shù)據(jù)處理,而且對于多通道、多個 A D轉換器的控制,因所需處理的信息更多,則更加不方便。 6 ( 2)由 DMA 控制的采集方案。此方案硬件電路復雜,若與單片機配合使用,需要單片機具有總線掛起功能( Hold 功能),否則還需要進行總線切換。在總線掛起的時候,單片機就不能訪問外部存儲器和外部端口,如果單片機要訪問外部數(shù)據(jù),也只能等待總線的釋放,這樣就帶來很多不方便,也影響數(shù)據(jù)的及時處理。 在電力系統(tǒng)的微機檢測系統(tǒng)中或 者其他數(shù)據(jù)巡檢系統(tǒng)中,需要對多通道的數(shù)據(jù)作快速的采集分析,尤其是對于實時性很強的系統(tǒng),更要求采集獲得的數(shù)據(jù)必須實時準確地反映系統(tǒng)的運行情況,例如,故障濾波和實時在線監(jiān)測系統(tǒng)。本文提出了一種易與各種單片機系統(tǒng)接口的由純硬件電路控制的多通道高速數(shù)據(jù)采集系統(tǒng)。它的自動采樣硬件電路主要采用 FPGA( Field Programmable Gate Array)和 FIFO( First In First Out)技術設計而成。該裝置可以實現(xiàn)多路模擬量的高速采集,每一個模數(shù)轉換器( ADC)可以采集 10 個通道的數(shù)據(jù),并且多個 模數(shù)轉換器件的輸出可以以總線形式進行擴展。 第二章系統(tǒng)硬件設計 2.1 系統(tǒng)設計原理框圖 多通道高速 A D數(shù)據(jù)采集系統(tǒng)的設計原理框圖如圖 1 所示: 圖 2.1 高速數(shù)據(jù)采集系統(tǒng)原理框圖 2.2 設計基本思想 7 圖中模擬量經(jīng)過低通濾波器預處理后,再進入采樣保持器( S H),經(jīng)多路開關( Multi channel Switches)分時切換進入模數(shù)轉換器,通過單片機的觸發(fā),在 FPGA 器件的控制下,進入一次循環(huán)采樣,并將采樣數(shù)據(jù)依順序打入 FIFO 器件,單片機在每個采樣結束后直接從 FIFO 芯片中讀出數(shù)據(jù)即可。該多通道高速 A D數(shù)據(jù)采集系統(tǒng)的設計核心就是在單片機的每一個定時中斷時,從 FIFO 芯片中讀入采樣數(shù)據(jù)后,復位 FIFO 器件,觸發(fā) FPGA 進行硬件時序控制采樣,采樣過程不需要單片機的參與,單片機可以并行處理主程序中的數(shù)據(jù)。 高速數(shù)據(jù)采集的數(shù)據(jù)存放在雙口 RAM 中,需要向 PC機傳送數(shù)據(jù)。通過對單片機來讀 SRAM 中的數(shù)據(jù),而沒有采用對存儲器的操作辦法。當讀入數(shù)據(jù)滿時,發(fā)出信號停止采樣。 PC 系列微機系統(tǒng)的端口地址空間為 000 3FFH,這些地址通過對 A0 A9 這 10根地址線譯碼生成。系統(tǒng)預留給用戶的地址為 300 31FH,作為用戶 I O 口的擴展。 AEN 參與譯碼 ,當 AEN 0時,才有效,表明此時由 CPU 行使總線控制權。 2.3 芯片介紹 2.3.1AT89C51 簡介 AT89C51 是一種帶 4K 字節(jié)閃爍可編程可擦除只讀存儲器( FPEROM Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能 CMOS8 位微處理器。該器件采用 ATMEL 高密度非易失存儲器制造技術制造,與工業(yè)標準的MCS-51 指令集和輸出管腳相兼容。由于將多功能 8位 CPU 和閃爍存儲器組合在單個芯片中, ATMEL 的 AT89C51 是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。 圖 2.2 單片機結構圖 1主要特性: 與 MCS-51 兼容 8 4K 字節(jié)可編程閃爍存儲器 壽命: 1000 寫 /擦循環(huán) 數(shù)據(jù)保留時間: 10 年 全靜態(tài)工作: 0Hz-24Hz 三級程序存儲 器鎖定 128*8 位內部 RAM 32 可編程 I/O 線 兩個 16位定時器 /計數(shù)器 5 個中斷源 可編程串行通道 低功耗的閑置和掉電模式 片內振蕩器和時鐘電路 2管腳說明: VCC:供電電壓。 GND:接地。 P0口: P0口為一個 8位漏級開路雙向 I/O 口,每腳可吸收 8TTL 門電流。當 P1口的管腳第一次寫 1時,被定義為高阻輸入。 P0 能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù) /地址的第八位。在 FIASH 編程時, P0 口作為原碼輸入口,當 FIASH 進行校驗時, P0輸出原碼,此時 P0 外部必須被拉高 。 P1口: P1口是一個內部提供上拉電阻的 8 位雙向 I/O 口, P1 口緩沖器能接收輸出 4TTL 門電流。 P1 口管腳寫入 1后,被內部上拉為高,可用作輸入, P1 口被外部下拉為低電平時,將輸出電流,這是由于內部上拉的緣故。在 FLASH 編程和校驗時, P1 口作為第八位地址接收。 P2口: P2口為一個內部上拉電阻的 8 位雙向 I/O 口, P2 口緩沖器可接收,輸出4個 TTL 門電流,當 P2 口被寫“ 1”時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時, P2 口的管腳被外部拉低,將輸出電流。這是由于內部上拉的緣故。 P2 口當用于外 部程序存儲器或 16 位地址外部數(shù)據(jù)存儲器進行存取時, P2 口輸出地址的高八位。在給出地址“ 1”時,它利用內部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時, P2 口輸出其特殊功能寄存器的內容。 P2口在 FLASH 編程和校驗時接收高八位地址信號和控制信號。 P3口: P3口管腳是 8個帶內部上拉電阻的雙向 I/O 口,可接收輸出 4個 TTL 門電流。當 P3 口寫入“ 1”后,它們被內部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平, P3 口將輸出電流( ILL)這是由于上拉的緣故。 P3口也可作為 AT89C51 的一些特殊功能口, 如下表所示: 口管腳 備選功能 P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 /INT0(外部中斷 0) P3.3 /INT1(外部中斷 1) P3.4 T0(記時器 0 外部輸入) P3.5 T1(記時器 1 外部輸入) P3.6 /WR(外部數(shù)據(jù)存儲器寫選通) P3.7 /RD(外部數(shù)據(jù)存儲器讀選通) 9 P3口同時為閃爍編程和編程校驗接收一些控制信號。 RST:復位輸入。當振蕩器復位器件時,要保持 RST 腳兩個機器周期的高電平時間。 ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電 平用于鎖存地址的地位字節(jié)。在 FLASH 編程期間,此引腳用于輸入編程脈沖。在平時, ALE 端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的 1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個 ALE 脈沖。如想禁止 ALE 的輸出可在 SFR8EH 地址上置 0。此時, ALE 只有在執(zhí)行 MOVX, MOVC 指令是 ALE 才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài) ALE 禁止,置位無效。 /PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個 機器周期兩次 /PSEN 有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的 /PSEN 信號將不出現(xiàn)。 /EA/VPP:當 /EA 保持低電平時,則在此期間外部程序存儲器( 0000H-FFFFH),不管是否有內部程序存儲器。注意加密方式 1 時, /EA 將內部鎖定為 RESET;當/EA 端保持高電平時,此間內部程序存儲器。在 FLASH 編程期間,此引腳也用于施加 12V 編程電源( VPP)。 XTAL1:反向振蕩放大器的輸入及內部時鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出。 3振蕩器特性 XTAL1 和 XTAL2 分別為反向 放大器的輸入和輸出。該反向放大器可以配置為片內振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅動器件, XTAL2 應不接。有余輸入至內部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。 4芯片擦除 整個 PEROM 陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持 ALE管腳處于低電平 10ms 來完成。在芯片擦操作中,代碼陣列全被寫“ 1”且在任何非空存儲字節(jié)被重復編程以前,該操作必須被執(zhí)行。 此外, AT89C51 設有穩(wěn)態(tài)邏輯,可以在低到零頻率 的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下, CPU 停止工作。但 RAM,定時器,計數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存 RAM 的內容并且凍結振蕩器,禁止所用其他芯片功能,直到下一個硬件復位為止。 2.3.2FIFO 存儲器件 IDT72V2113 簡介 高速數(shù)據(jù)采集是目前數(shù)據(jù)采集的發(fā)展方向。隨著微電子技術飛速發(fā)展,電子器件運行速度有了很大的提高,幾十兆采樣頻率的 AD 逐漸得到廣泛的應用。但是,數(shù)據(jù)傳輸和存儲一直制約著數(shù)據(jù)采集系統(tǒng)向更高速度上的發(fā)展。因此,如何進行高速的數(shù)據(jù)傳輸和存儲是大容量連 續(xù)數(shù)據(jù)采集系統(tǒng)的技術關鍵。目前一般是從兩個方面進行考慮: 1 采用高速傳輸協(xié)議,例如 PCI、 USB2.0、 1394 等高速的數(shù)據(jù)傳輸協(xié)議,將采樣數(shù)據(jù)傳送到主機,然后進行后續(xù)處理; 2 采用高速度、大容量的存儲器件,如 SDRAM、 SBSRAM、 FIFO 等 ,將采樣數(shù)據(jù)存儲在采集板上直接 10 進行處理。其中高速 FIFO 就是硬件上得到廣泛使用的一種存儲器件,在此詳細介紹了美國 IDT 公司的 IDT72V2113 的內部結構、主要功能及其使用方法,并就如何實現(xiàn)多片 72V2113 的字長和深度擴展的軟件和硬件連接給出詳細的說明。 1) IDT72V2113 功能介紹 IDT72V2113 是由美國 IDT 公司生產的高速大容量先進先出存儲器件。其最高工作頻率為 133MHz;容量為 512K 字節(jié),可以通過引腳方便的將容量設置成512K 9bit 或者 256K 18bit 兩種方式; IDT72V2113 可以設置標準工作模式或者FWFT( Fist Word Fall Through)工作模式,并提供全滿、半滿、全空、將滿以及將空等五種標志信號。 圖 2.3 IDT72V2113 內部原理圖 IDT72V2113 的內部結構如圖 2.3 所示,主要由一個內部 RAM 陣列以及 讀寫控制單元、讀寫指針單元、輸入輸出寄存器、標志信號以及復位單元組成。其內部 RAM 陣列采用先進先出設計技術,外部數(shù)據(jù)首先存到輸入數(shù)據(jù)寄存器,再傳送到 RAM 陣列,依次保存,數(shù)據(jù)的先后順序通過修改寫指針確認。 RAM 陣列始終檢測輸出數(shù)據(jù)寄存器的狀態(tài),一旦為空, RAM 陣列的數(shù)據(jù)送到輸出數(shù)據(jù)寄存器,外部設備可以直接從輸出數(shù)據(jù)寄存器讀出數(shù)據(jù),數(shù)據(jù)的讀順序通過讀指針來控制。通過設置輸出使能引腳為高狀態(tài)來禁止數(shù)據(jù)的輸出,以減低芯片的功耗。為了方便數(shù)據(jù)的讀寫, IDT72V2113 還增加了一些對數(shù)據(jù)讀寫的控制信號,包括讀寫使能 、讀寫時鐘以及字寬控制等。 2) IDT72V2113 的字長和字深擴展 11 大容量數(shù)據(jù)存儲是高速數(shù)據(jù)采集系統(tǒng)迫切需要解決的問題,例如,一個 20M采樣速率、 8位的 ADC,在一秒鐘的時間內所采集到的數(shù)據(jù)量是 20M 字節(jié),雖然IDT72V2113 的單片容量是 512K 9 bit,可以很好的滿足一般的數(shù)據(jù)采集系統(tǒng)的需要,但是,對于高速、無間隔的數(shù)據(jù)采集系統(tǒng)來說,一片的容量是不夠的。IDT72V2113 便于擴展的特性可以很容易地解決這個問題。其容量擴展可以分為字長擴展和深度擴展,且不需要外部控制電路,很方便電路設計及軟件開發(fā) 。 IDT72V2113 的字長擴展 IDT72V2113 的字長擴展比較簡單,只要把各個芯片的控制信號連在一起就可以實現(xiàn)。這里需要注意的是 EF/IR 和 FF/OR 兩個引腳,在標準模式下這兩個管腳的功能為 EF 和 FF,把各個芯片這兩個管腳分別相與;在 FWFT 模式下,這兩個管腳功能為 IR 和 OR,把各個芯片的這兩個管腳分別相或,這樣就可以確保同步讀寫每一個 IDT72V213。 IDT72V2113 的深度擴展 IDT72V2113 的深度擴展方式僅適用于 FWFT 工作模式。兩片 IDT72V2113 的字深擴展的硬件連接如圖 2.4 所示。其中,傳輸時鐘可以選擇寫時鐘和讀時鐘中頻率高的那個時鐘信號。工作原理為:當有數(shù)據(jù)寫入第一片 FIFO 中后,其輸出允許信號( OR)低有效,從而使第二片 FIFO 的寫使能信號有效;同時,只要第二片F(xiàn)IFO 中仍有空間,它的輸入允許信號( IR)有效(低有效),從而使第一片 FIFO的讀使能信號( REN)有效,這樣,在傳輸時鐘的驅動下,數(shù)據(jù)由第一片 FIFO向第二片 FIFO 傳送,直到第二片 FIFO 寫滿為止,以后的數(shù)據(jù)將儲存在第一片F(xiàn)IFO 中。通過深度擴展,兩片 IDT72V2113 可形成容量為 1M 9 bit 的數(shù)據(jù) 緩沖。 3) IDT72V2113 的容量擴展實例 12 IDT72V2113 不僅可以通過字長擴展和深度擴展來實現(xiàn)容量擴展,而且可以將兩者結合起來,進行更大容量的擴展,如用四片 IDT72V2113 擴展成容量為 1M 18 bit 的數(shù)據(jù)緩沖,連接圖如圖 2.5 所示。圖 2.5 容量擴展示例 2.3.3FPGA 芯片簡介 本數(shù)據(jù)采集的設計中,選用一片 FLEX10K 系列芯片 EPF10K130V EPF10K130B來實現(xiàn)時序發(fā)生器的功能 。 FLEX 10K是 ALTERA公司研制的第一個嵌入式的 PLD,它具有高密度、低成本、低功率等特點,是當今 ALTERA CPLD 中應用前景最好的器件系列之一。它采用了重復可構造的 CMOS SRAM 工藝,并把連續(xù)的快速通道互連與獨特的嵌入式陣列結構相結合,同時可結合眾多可編程器件來完成普通門陣列的宏功能。每一個 FLEX 10K 器件均包括一個嵌入式陣列和一個邏輯陣列,因而設計人員可輕松地開發(fā)集存貯器、數(shù)字信號處理器及特殊邏輯等強大功能于一身的芯片 。 FLEX10K 系列是 Altera 公司新近開發(fā)的一種高性能可編程邏輯 器件系列,它的結構特點使之有很多新穎的功能,尤其適合于數(shù)字信號處理系統(tǒng)應用。 1) FLEX10K 系列主要具有以下特點: 是第一種商品化的具有嵌入陣列( embeded array)的可編程邏輯器件 系列,可以高效實現(xiàn)片內存儲器和復雜邏輯函數(shù)。 高容量,單片集成度為 1 萬 10 萬等效邏輯門,具有 720 5392 個片內寄 存器,可以在不占用內部邏輯資源的條件下實現(xiàn) 6,144 24,576 bits 的片內 存儲器。 具有靈活的內部連線資源,內部模塊間采用高速、延時可預測的快速通 道連接,邏輯單 元間具有高速、高扇出的級聯(lián)鏈和快速進位鏈,片內還有三 態(tài)網(wǎng)絡和 6 個全局時鐘以及 4個全局清零信號。 豐富的 I/O 資源,每個 I/O 管腿可以選擇為三態(tài)控制或集電極開路輸出, 還可以通過編程控制每個 I/O 管腿的速度以及 I/O 寄存器的使用。 13 采用 0.5 微米三層金屬 SRAM 工藝,配置信息由片外存儲器或主機提供,可 以靈活實現(xiàn)在線動態(tài)重構功能。片內包含符合 IEEE 標準的邊界掃描測試( BST) 電路。對 3.3V 和 5V 電源兼容,并具有低功耗工作模式。 靈活的封裝形式,具有 84 560 管腿的多種封裝,并且該系列內同一封 裝 的不同型號芯片管腿兼容。 Altera 公司的 FLEX10K 是工業(yè)界第一個嵌入式的 PLD,具有高密度、低成本、低功率等優(yōu)點。器件的主要結構特點是除主要的邏輯陣列塊( LAB)之外,首次采用了嵌入陣列塊( EAB)。每個陣列塊包含 8個邏輯單元( LE)和一個局部互連。一個 LE 又由四輸入查找表( LUT)、一個可編程寄存器和專用的載運和級聯(lián)功能的信號通道所組成。 在 FLEX10K 器件中,把每一組邏輯單元( 8個 LE)組成一個邏輯陣列塊( LAB),所有的邏輯陣列塊( LAB)排成行和列。在一行里還包含一個單一的 EAB。多 個LAB 和多個 EAB 采用快速通道互相連接。 嵌入式陣列塊( EAB)是 FLEX10K 系列器件在結構設計上的一個重要部件。它是一個輸入端口和輸出端口都帶有寄存器的一種靈活的 RAM 塊,嵌入陣列塊( EAB)組成的規(guī)模和靈活性對比較多的內存是適宜的。 采用可編程的帶有只讀平臺的嵌入陣列塊( EAB)在配置期間可執(zhí)行邏輯功能并建立一個大的查找表( LUT),在這個查找表里用查找的結果執(zhí)行組合邏輯函數(shù),而不用計算它們。顯然,用這種組合邏輯函數(shù)執(zhí)行比通常在邏輯里應用算法執(zhí)行要快,而且專用 EAB 容易應用,并且快速提供可能預測的 延遲。 該系列芯片是 ALTERA 公司典型的可通過 JTAG 在線編程的 FPGA 器件。外部時鐘信號作為 FPGA 時序發(fā)生器的基準信號,所有時序信號的產生都是以此為基礎的。 EPF10K130V EPF10K130B 芯片內部分為兩部分:一部分是信號處理控制時序發(fā)生器,它為信號處理 (如 A/D 轉換、數(shù)字信號存取等 )提供各種同步控制時序;另一部分是驅動時序發(fā)生器,它根據(jù)具體驅動時序邏輯的要求,產生工作所需的驅動信號,并通過積分控制信號設定不同的積分周期,同時它還為信號處理控制時序的產生提供時鐘控制信號。該數(shù)據(jù)采集系統(tǒng)有三種工 作狀態(tài):數(shù)據(jù)采集系統(tǒng)初始化;數(shù)據(jù)采集過程;機讀取信號過程。 14 每個 FLEX 10K 中的 EAB 均含有 2048bit 的 RAM。另外,每個 EAB 單元中還包括數(shù)據(jù)區(qū)、總線和讀 /寫控制等幾部分。圖 2.6 所示為 EAB 單元的內都結構。 數(shù)據(jù)區(qū)是 EAB 的核心部分,每個 EAB 包含 2048bit 的 RAM,同時又可根據(jù)數(shù)據(jù)線 /地址線的不同設置將其寬度調整為 20481bit, 10242bit, 5124bit,2568bit 等。 總線是指 EAB 中所包括的三條總線,即輸入數(shù)據(jù)總線、 地址總線和輸出數(shù)據(jù)總線。其中輸入數(shù)據(jù)總線可以配制成 8bit、 4bit、 2bit 或 1bit 位寬;地址總線同數(shù)據(jù)總線相適應,具有 8bit、 9bit、 10bit 或 11bit 位寬;而輸出數(shù)據(jù)總線則與輸入總線相對應,這三條總線都設計有同步 /異步兩種工作方式。 第三部分為讀 /寫控制部分。當 EAB 用于異步 RAM 電路時,必須外加 RAM 寫使能信號 WE,以保證數(shù)據(jù)和地址信號滿足其時序要求,而當 EAB 用作同步 RAM時,它可以產生相對其全局時鐘信號的 WE 信號。 EAB 的 RAM 與 EPGA 中的分布式RAM 不同, FLEX 10k EAB 能 夠信號可預測的定時關系,而且 EAB 的寫使能信號( WE)即可與輸入時鐘同步工作,也可以異步工作。另外, EAB 還包含用于同步設計的輸入寄存器、輸出寄存器和地址寄存器。 EAB 的輸出可以是寄存器輸出,也可以是組合輸出, EAB RAM 的大小很靈活,因此,它既可以配置成 2568、 5124,也可以配置成 10242或 20481。 FLEX 10K 器件的 EAB 資源如表 1所列。 EAB 的 RAM 資源較為豐富,可用來設計 RAM、 FIFO 及雙端口 RAM 等許多應用電路。 表 1 FLEX 10K 器件 EAB 資源 器件型號 EAB 的個數(shù) EPF10K10 EPF10K10A 3 EPF10K20 6 EPF10K30 EPF10K30A EPF10K30B 6 15 EPF10K40 8 EPF10K50 EPF10K50V EPF10K50B 10 EPF10K70 9 EPF10K100 EPF10K100A EPF10K100B 12 EPF10K130V EPF10K130B 16 一片 FPGA 可以替代原來的幾十個分立元件來實現(xiàn)數(shù)據(jù)采集系統(tǒng)中各種驅動和控制時序邏輯,而且 FPGA 還允許設計編程保密位。采用 FPGA 有利于減小系統(tǒng)電路板的面積、提高系統(tǒng)的安全保密性、降低系統(tǒng)功耗和保證產品的質量??傊?,時序發(fā)生器的可編程特性使其能夠最大程度地滿足用戶的不同要求。 2.3.4AD 轉換芯片 TLC5510 的簡介 AD 轉換器采用 TI 公司的 T LC 5510 芯片。 TLC 5510 為 5V 電源、 8bit、 20Msps的高速并行 A/D 轉換器,最大量程為 2V。 () 的引腳說明 為引腳、表貼封裝形式()。其引腳排列如圖所示。各引腳功能如下: :模擬信號地; :模擬信號輸入端; 16 :時鐘輸入端; :數(shù)字信號地; :數(shù)據(jù)輸出端口。為數(shù)據(jù)最低位,為最高位; :輸出使能端。當為低時, 數(shù)據(jù)有效,當為高時,為高阻抗; :模擬電路工作電源; :數(shù)字電路工作電源; :內部參考電壓引出端之一,當使用內部電壓分壓器產生額定的基準電壓時,此端短路至端; :參考電壓引出端之二; :參考電壓引出端之三; :內部參考電壓引出端之四,當使用內部電壓基準器產生額定的基準電壓時,此端短路至端。 () 的內部結構及工作過程 的內部結構如圖所示。 由圖中可以看出:模數(shù)轉換器內含時鐘發(fā)生器、內部基準電壓分壓器、套高位采樣比較器、編碼器、鎖存器、套低位采樣比較器、編碼器和個低位鎖存器等電路。的外部時鐘信號通過其內部的時鐘發(fā)生器可產生路內部時鐘,以驅動組采樣比較器。基準電壓分壓器則可用來為這組比較器提供基準電壓。輸出 信號的高位由高位編碼器直接提供,而低位的采樣數(shù)據(jù)則由兩個低位的編碼器交替提供。 的工作時序時鐘信號在每一個下降沿采集模擬輸入信號。第次采集的數(shù)據(jù)經(jīng)過個時鐘周期的延遲之后,將送到內部數(shù)據(jù)總線上。在工作時序的控制下,當?shù)谝粋€時鐘周期的下降沿到來時,模擬輸入電壓將被采樣到高比較器塊和低比較器塊,高比較器塊在第二個時鐘周期的上升沿最后確定高位數(shù)據(jù),同時,低基準電壓產生與高位數(shù)據(jù)相應的電壓。低比較塊在第三個時鐘周期的上升沿的最后確定低位數(shù)據(jù)。高位數(shù)據(jù)和低位數(shù)據(jù)在第四個時鐘周期的 上升沿進行組合,這樣,第次采集的數(shù)據(jù)經(jīng)過個時鐘周期的延遲之后,便可送到內部數(shù)據(jù)總線上。此時如果輸出使能有效,則數(shù)據(jù)便可被送至位數(shù)據(jù)總線上。由于的最大周期為,因此,數(shù)模轉換器的最小采樣速率可以達到。 17 在電路中,模擬電源 VDDA 和數(shù)字電源 VDDD 相互獨立。 VDDA 與數(shù)字地 AGND 之間及 VDDD 與模擬地 DGND 之間都用 4.7電容、 0.1電容和鐵氧磁環(huán)去耦和消除電源的紋波。 AGND 與 DGND 分開,以避免數(shù)字信號給 模擬信號帶來噪聲。放大后的視頻信號直接加在 TLC5510 的 19 腳。 TLC5510 的時鐘信號由 TMS320F206的時鐘信號輸出腳 CLKOIU1 提供。 ( 3)在線陣數(shù)據(jù)系統(tǒng)中的應用 圖 2.8 為的典型外接電路。圖中的為高頻磁珠,模擬供電電源經(jīng)為三部分模擬電路提供工作電流,以獲得更好的高頻去耦效果。 18 在用該數(shù)據(jù)采集系統(tǒng)采集數(shù)據(jù)的過程中,當系統(tǒng)輸入端輸入模擬信號時,在由時序發(fā)生器產生的轉換控制時鐘的同步控制 下, 會將差動放大、低通濾波后的模擬信號實時地轉換為與其模擬幅值相對應的數(shù)字信號,當?shù)妮敵鍪鼓?為低電平且高速數(shù)據(jù)存儲器的地址譯碼控制和寫控制均有效時,系統(tǒng)可將轉換結果存入高速數(shù)據(jù)存儲器,以等待機的讀取。為了使系統(tǒng)輸入的模擬信號能夠正確可靠的轉換和存儲,在設計過程中,對的工作控制時鐘、輸出使能及高速數(shù)據(jù)存儲器的地址譯碼控制時鐘、讀寫控制時鐘的周期做了具體的時間預算,并對它們之間的邏輯相位關系做了詳細的研究。根據(jù)預算,將時序發(fā)生器內部的計數(shù)器、比較器 、邏輯門以及觸發(fā)器等進行逐級分頻和邏輯組合,從而使其產生正確可靠的時序邏輯。系統(tǒng)及數(shù)據(jù)分析實驗證明,采用作為轉換芯片,其接口電路簡單實用,使用方便,穩(wěn)定性好。 2.3.5 串口 RS232 的簡介 采用 RS-232 標準的通信連接,電平轉換芯片采用 MAX232。 RS-232 是目前串行通信中最常用的總線,其標準 RS-232C 是美國電子工業(yè)協(xié)會 EIA 制定的串行物理接口協(xié)議。 RS 表示 EIA 的“推薦標準”, 232 為標準編號。 RS-232 接口的特征是負邏輯,單端驅動,共地接收,只適用于點對點通信。當信 號線上的電平 -3V -15V 時,表示邏輯“ 1”;當信號線上的電平為 +3v +15V 時,表示邏輯“ 0”。 19 通信雙方使用一條公共信號地線作電平參考。 RS-232C 標準規(guī)定,驅動器負載電容不超過 2500pF,通信距離受此電容的限制。另外, RS-232 屬于單端信號傳送,存在共地噪聲和不能抑制的共模干擾;因此其通信距離限 15m 以下,通信速率限于 20Kbps 以下。 第三章系統(tǒng)設計原理及工作原理 3.1AD 轉換工作原理 AD 轉換器采用 TI 公司的 T LC 5510 芯片。 TLC 5510 為 5V 電源、 8bit、 20Msps的高速并行 A/D 轉換器,最大量程為 2V。 TLC5510 的工作特點是:以流水線方式工作,在每一個 clk 周期都啟動一次采樣,完成一次采樣;每次啟動采樣是在 clk 的下降沿進行,不過采樣轉換結果的輸出卻在 2.5 個周期后,如果計算上輸出時延 Tdd,從采樣到輸出需經(jīng)2.5*Tclk+Tdd。對于需要設計的采樣控制器,可以認為,每加 一個采樣 clk 周期,A/D 就會輸出一個采樣數(shù)據(jù)。當采樣時鐘為高電平時, A/D 轉換器處于跟蹤狀態(tài);時鐘下降沿時,輸入信號被保持, A/D 轉換器進入轉換狀態(tài),轉換數(shù)據(jù)延遲 2.5個時鐘周期后在時鐘上升沿輸出。這樣對于 A/D 采樣,每一個時鐘到來時就會有采樣數(shù)據(jù)輸出。因此 TLC5510 除了數(shù)據(jù)線外,還包含一個輸出允許接口信號。對于一個數(shù)據(jù)采樣系統(tǒng)關鍵的是地址產生電路和采樣時鐘產生電路,傳統(tǒng)的采樣大多是借助于邏輯芯片來分別實現(xiàn)這兩部分電路。而這里引入軟件采樣的概念,即利用軟件編程的方法來分別產生 A/D 采樣所需的時鐘脈沖和 地址信號??刂撇蓸拥闹噶钊缦隆?LD 起始地址, A RPT 每行采樣點數(shù) WRITE Smem 多通道高速 A D數(shù)據(jù)采集系統(tǒng)的采樣部分的原理框圖如圖 3.1 所示。它由一片多路模擬開關 MAX306,一片 TLC5510,構成了一個數(shù)據(jù)轉換單元。 MAX306是一個 16路的多路模擬開關,為了減小采樣誤差, TLC 采用內部 2 5V 電壓基準源,輸入接到 TLC5510 的數(shù)據(jù)線上,輸出接到連接 FIFO 的輸入數(shù)據(jù)總線上,可以將多個這樣的數(shù)據(jù)轉換單元并接到總線上,通過每個單元的 74HC245 的使能腳選通。由于設計上是可以擴展 的,即,將多個數(shù)據(jù)轉換單元數(shù)據(jù)輸出總線并聯(lián)接到 FIFO 的輸入總線上,所以,采用將 TLC5510 的 BUSY 位作為數(shù)據(jù)位最低位讀入。由于可以是多通道多 A D轉換器的工作模式,在設計時已經(jīng)考慮到采樣保持及轉換時間的要求,并給出了一定的裕度,定時采樣時不必判斷 A D轉換是否完成,而直接讀取總線上的數(shù)據(jù)。在數(shù)據(jù)處理時,判斷最低位是否為 0來確定本次采樣數(shù)據(jù)是否有效,如果有效,則右移一位得到有效數(shù)據(jù),當然,這樣會降低采樣精度,但對一般的數(shù)據(jù)處理系統(tǒng), 8 位也已經(jīng)足夠了。如果無效,則舍棄本次采樣數(shù)據(jù),并累加無效次數(shù),計數(shù)超 過設定的次數(shù),則應發(fā)出告警,提示TLC5510 采樣異常。 20 3.2 關于 FPGA 的簡介 3.2.1FPGA 的概述 FPGA 是復雜的 PLD,專指那些集成規(guī)模大于 1000 門以上的可編程邏輯器件。它由與陣列、或陣列、輸入緩沖電路、輸出宏單元組成,具有門電路集成度高、可配置為多種輸入輸出形式、多時鐘驅動、內含 ROM 或 FLASH(部分支持在系統(tǒng)編程 )、可加密、低電壓、低功耗以及支持混合編程技術等突出特點。而且 CPLD 的邏輯單元功能強大,一般的邏輯在單元內均可實現(xiàn),因而其互連關系 簡單,電路的延時就是單元本身和集總總線的延時 (通常在數(shù)納秒至十數(shù)納秒 ),并且可以預測。所以 FPGA 比較適合于邏輯復雜、輸入變量多但對觸發(fā)器的需求量相對較少的邏輯型系統(tǒng)。 當今社會是數(shù)字化的社會,是數(shù)字集成電路廣泛應用的社會。數(shù)字集成電路本身在不斷地進行更新?lián)Q代。它由早期的電子管、晶體管、小中規(guī)模集成電路、發(fā)展到超大規(guī)模集成電路 (VLSIC,幾萬門以上 )以及許多具有特定功能的專用集成電路。但是,隨著微電子技術的發(fā)展,設計與制造集成電路的任務已不完全由半導體廠商來獨立承擔。系統(tǒng)設計師們更愿意自己設計專用集成電 路 (ASIC)芯片,而且希望 ASIC 的設計周期盡可能短,最好是在實驗室里就能設計出合適的 ASIC 芯片,并且立即投入實際應用之中,因而出現(xiàn)了現(xiàn)場可編程邏輯器件 (FPLD),其中應用最廣泛的當屬現(xiàn)場可編程門陣列 (FPGA)和復雜可編程邏輯器件 (CPLD)。 FPGA 是可編程邏輯器件,是在 PAL,GAL 等邏輯器件的基礎之上發(fā)展起來的。同以往的 PAL,GAL 等相比較, FPGA 的規(guī)模比較大,它可以替代幾十甚至幾千塊通用IC 芯片。這樣的 FPGA 實際上就是一個子系統(tǒng)部件。這種芯片受到世界范圍內電子工程設計人員的廣 泛關注和普遍歡迎。經(jīng)過了十幾年的發(fā)展,許多公司都開發(fā)出了多種可編程邏輯器件。比較典型的就是 XILINX公司的 FPGA 器件系列和 ALTERA公司的 CPLD 器件系列,它們開發(fā)較早,占用了較大的 PLD 市場。通常來說,在歐洲 21 用 XILINX的人多,在日本和亞太地區(qū)用 ALTERA 的人多,在美國則是平分秋色。全球 PLD/FPGA 產品 60%以上是由 ALTERA和 XILINX提供的??梢灾v ALTERA和 XILINX共同決定了 PLD 技術的發(fā)展方向。當然還有許多其它類型器件,如: LATTICE, VANTIS,ACTEL, QUICKLOGIC, LUCENT等。 3.2.2FPGA 的發(fā)展: 可編程邏輯器 (PLD)是 70 年代發(fā)展起來的一種劃時代的新型邏輯器件,一般來說, PLD 器件是由用戶配置以完成某種邏輯功能的電路。 PLD 器件自問世以來,制造工藝上采用 TTL、 CMOS、 ECL 及靜態(tài) RAM 技術,器件類型有 PROM、藝高度發(fā)展的產物。 80 年代末,美國 ALTERA 和 XILINX 公司采用 EECMOS 工藝,分別推出大規(guī)模和超大規(guī)模的復雜可編程邏輯器件 (CPLD)和現(xiàn)場可編程邏輯門陣列器件 (FPGA),這種芯片在達到高度集成度的同時,所具有的 應用靈活性和多組態(tài)功能是以往的LSI/VLSI 電路無法比擬的。到 90 年代, CPLD/FPGA 發(fā)展更為迅速,不僅具有電擦除特性,而且出現(xiàn)了邊緣掃描及在線編程等高級特性。另外,外圍 I/O 模塊擴大了在系統(tǒng)中的應用范圍和擴展性。 較常用的有 XILIN X 公司的 EPLD 和 ALTERA 及 LATTICE 公司的 CPLD。 1992 年LATTICE 公司率先推出 ISP(IN-SYSTEM PROGRAM-MABILITY),并推出 ISP_LSI1000 系列高密度 ISP 器件。 1998 年 HDPLD 的主流產品集成 度約為 1 3 萬門,同 時 25萬門產品開始面世, 1999 年產品集成度 40 萬門, 2000 年已經(jīng)出現(xiàn)了容量為 200 萬門的產品。 PLD 器件目前正朝著更高速、更高集成度、更強功能和更靈活的方向發(fā)展,它 EPROM、 E2PROM、 FPLA、 PAL、 GAL、 PML 及 LCA 等, PLD 在性能和規(guī)模上的發(fā)展,主要依賴于制造工藝的不斷改進,高密度 PLD 是 VLSI 集成工不僅已成為標準邏輯器件的一個強有力的競爭對手,也成為掩膜式專用集成電路的競爭者。 3.3FPGA 實現(xiàn)硬件采樣的原理 FIFO 的 D0 D7 連接到 A D 轉換單元的 TLC5510 的輸出數(shù)據(jù)線 上, WR F是由 CPLD 發(fā)出的將 TLC5510 轉換完成后的數(shù)據(jù)打入 FIFO 的寫信號, RD F是 單片機采樣數(shù)據(jù)從 FIFO 芯片中讀出的讀信號。 /RST F復位 FIFO 芯片的信號, S H是啟動采樣保持器工作在采樣還是保持狀態(tài)的控制信號, CH0 CH3 是每一片 A D芯片的輸入通道選擇。由于每次采樣前會復位 FIFO 器件,所以,每次采樣開始時的讀指針和寫指針均指向第一個物理存儲地址,只要采樣的數(shù)據(jù)不超過 256 個字, EF 和 FF 標志可以不讀入判斷,實際上, EF 和 FF 標志引腳雖然連接到了 IDT72V2113,但沒有處理。 IDT72V2113 實現(xiàn)時序的控制,包括:啟動采樣,鎖存數(shù)據(jù),啟動 A D轉換,將數(shù)據(jù)打入 FIFO 存儲器,道號遞增重復下一通道采樣。硬件控制采樣邏輯實際上就是 FPGA 與采樣保持器、 A D轉換器、 FIFO 的時序配合,時序由 FPGA 在單片機觸發(fā)采樣后自動完成。單片機上電初始化時就給 FIFO 器件發(fā)一個復位信號,使FIFO 器件的讀指針和寫指針復位,指向第一個物理單元,同時,去觸發(fā) CPLD 進入第一通道的采樣邏輯。 由于 FIFO 器件的讀和寫是完全獨立的,所以單片機在每一個定時中斷中,直接一次性地將 所有采樣數(shù)據(jù)從 FIFO 中讀取數(shù)據(jù),放入單片機的內存區(qū)域供處理,讀完數(shù)據(jù)后,復位 FIFO 器件并重新觸發(fā) FPGA 執(zhí)行下一點的采樣,退出定時中斷程序處理數(shù)據(jù)。 22 TLC5510 的轉換是同時進行的,順序進行的僅僅是從 TLC5510 將采樣數(shù)據(jù)打入FIFO 存儲器和從 FIFO 讀出采樣數(shù)據(jù),所以,數(shù)據(jù)最高采樣速率取決于以下幾個部件的速率,即,采樣保持器的采樣時間, A D 轉換時間, A D 中數(shù)據(jù)打入 FIFO的時間,以及從 FIFO 中讀出數(shù)據(jù)的時間。通過選用高速的采樣保持器件和高速的A D 轉換器件,可以提高采樣的速率。 FPGA 程序用 VHDL 語言設計,設計的關鍵是分析各個器件的工作時序和采樣保持時間, A D 轉換時間,打入數(shù)據(jù)等。 VHDL 設計的時序處理的進程中,要根據(jù) FPGA工作的頻率計算各個等待周期,等器件準備好以后才能進行下一個處理。如圖 5所示,單片機觸發(fā)復位 FIFO 信號和采樣邏輯, CPLD 先復位 FIFO,然后啟動采樣保持器進行采樣,插入等待周期,等采樣完成以后,再發(fā)出命令使采樣保持器保持數(shù)據(jù),然后啟動 A D轉換器轉換,插入等待周期,即理論上的轉換完成時間加上一定的時間裕度,等待 A D轉換結束,然后將數(shù)據(jù)打入 FIFO,遞增模 擬通道號,進行下一通道的采樣。 FPGA 硬件邏輯如圖 3.3 所示。 圖 3.3 FPGA 控制的采樣邏輯 3.4 顯示電路的工作原理 3.4.1 七段顯示器的原理 1)數(shù)碼管結構 數(shù)碼管由 8 個發(fā)光二極管(以下簡稱字段)構成,通過不同的組合可用來顯示數(shù)字 0 9、字符 A F、 H、 L、 P、 R、 U、 Y、符號“ ”及小數(shù)點“ ”。數(shù)碼管的外型結構如圖 3.4 所示。數(shù)碼管又分為共陰極和共陽極兩種結構,分別如圖3.4( a)和圖 3.4(b)所示。 1 0 9 8 7 6g f G ND a b1 2 3 4 5dp.e d G ND c d pabcdefgD D+ 5V外型結構 ( a) 共陰極 ( b)共陽極 圖 3.4 數(shù)碼管結構圖 2)數(shù)碼管工作原理 23 共陽極數(shù)碼管的 8 個發(fā)光二極管的陽極(二極管正端)連接在一起,通常,公共陽極接高電平(一般接電源),其它管腳接段驅動電路輸出端。當某段驅動電路的輸出端為低電平時,則該端所連接的字段導通并點亮,根據(jù)發(fā)光字段的不同組合可顯示出各種數(shù)字或字符。此時,要求段驅動電路能吸收額定的段導通電流,還需根據(jù)外接電源及額定段導通電流來確定相應的限流電阻。 共陰極數(shù)碼管的 8 個發(fā)光二極管的陰極(二極管負端)連接在一起,通常,公共陰極接低電平(一般接地),其它 管腳接段驅動電路輸出端,當某段驅動電路的輸出端為高電平時,則該端所連接的字段導通并點亮,根據(jù)發(fā)光字段的不同組合可顯示出各種數(shù)字或字符。此時,要求段驅動電路能提供額定的段導通電流,還需根據(jù)外接電源及額定段導通電流來確定相應的限流電阻。 3)七段數(shù)碼管顯示控件的制作 原理:首先將數(shù)碼管分為七段,如下圖所示: (1)根據(jù)數(shù)碼( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9)來決定七段中的某一段或某幾段進行繪制,例如如果數(shù)碼為 0,則顯示 0、 1、 2、 3、 4、 5段;數(shù)碼為 1,則顯示 1、 2 段,依次類推。 (2)運行 AppWizard 來生成 SevenSegNum 工程。通過從 File 菜單選擇 New,然后在 Project 選項卡上選定 MFC ActiveX ControlWizard .命名工程名為SevenSegNum,接受其他默認設置。 (3)使用 ClassWizard(快捷鍵 Ctrl+W)在 CSevenSegNumCtrl 類中重載 OnDraw函數(shù) 。 七段數(shù)碼管在工業(yè)控制中有著很廣泛的應用 ,例如用來顯示溫度、數(shù)量、重量、日期、時間,還可以用來顯示比賽的比分等,具有顯示醒目、直觀的優(yōu)點。筆者采用 VC+6.0 開發(fā)了七段數(shù)碼管顯示控件,用在支持 ActiveX 技術的軟件系統(tǒng)中(如 VB, VC, EXCEL 等),取得了很好的效果。 3.4.2 靜態(tài)顯示接口 1)靜態(tài)顯示概念 靜態(tài)顯示是指數(shù)碼管顯示某一字符時,相應的發(fā)光二極管恒定導通或恒定截止。這種顯示方式的各位數(shù)碼管相互獨立,公共端恒定接地(共陰極)或接正電 24 源(共陽極)。每個數(shù)碼管的 8 個字段分別與一個 8 位 I/O 口地址相連, I/O 口只要有段碼輸出,相應字符即顯示出來,并保持不變,直到 I/O 口輸出新的段碼。采用靜態(tài)顯示方式,較小的電流即可獲得較高的亮度,且占用 CPU 時間少,編程簡單,顯示便于監(jiān)測和控制,但其占用的口線多,硬件電路復雜,成本高,只適合于顯示位數(shù)較少的場合。 2)靜態(tài)顯示電路: 3.4 單片機與雙口 RAM 的接口 在高速的數(shù)據(jù)采集系統(tǒng)中,由于數(shù)據(jù)采集速度大于 PC 微機系統(tǒng)總線的最高傳送速率 ,因此需要在采集電路中加入高速緩沖器作為緩存。先將采集的數(shù)據(jù)存儲在緩存器中 ,然后再成組的向主機傳送。存儲器數(shù)據(jù)傳送的時間要比總線周期慢,因而二者之間的時序并不相配,要想準確的傳輸數(shù)據(jù),必須解決時序問題。例如某 CPU 總線周期為 30 ns ,雙口 RAM 數(shù)據(jù)傳送時間為 70 ns,這樣 CPU 就不能得到正確的數(shù)據(jù)。解決方法之一可以利用系統(tǒng)總線上的 I O通道就緒信號( I OCHRDY),把它拉低,延長總線周期。但是實現(xiàn)起來比較麻煩,要對系統(tǒng)時鐘進行處理。在本文中采用了靜態(tài)設計的思想,保證了數(shù)據(jù)正確穩(wěn)定的傳輸。把整個讀寫過程分步實現(xiàn)。即首先由總線指定雙口 RAM 中數(shù)據(jù)的地址,通過鎖存器鎖住地址, 等待數(shù)據(jù)出現(xiàn);然后準備好數(shù)據(jù),等二者都準備好以后總線對端口操作讀或寫數(shù)據(jù)。在時間上保證了數(shù)據(jù)和數(shù)據(jù)地址相匹配,就保證了數(shù)據(jù)不丟失。此方法優(yōu)點在于無須對系統(tǒng)時鐘進行改造。這種方法也適于高速 CPU 與其他低速外設之間的時序問題。 25 第四章數(shù)據(jù)采集軟件設計 上位機首先通知單片機采集數(shù)據(jù),當數(shù)據(jù)采集完畢后,單片機給工控機發(fā)送信號。單片機把采集的數(shù)據(jù)放在 SRAM 中,然后總線通過 I O口讀取 SRAM 中的數(shù)據(jù),并進行分析處理。單片機需要與工控機進行聯(lián)絡傳送一些信息,比如通知PC 機數(shù)據(jù)采集完畢等;主機也需要對單片機發(fā)送命令, 如通知單片機采集數(shù)據(jù)等。它們之間的通訊采用了中斷方式。 8951 與 8051 的指令是兼容的,軟件使用匯編語言編寫。主要完成了數(shù)據(jù)采集和存放。單片機程序和 PC 機的程序是相互獨立的。程序框圖如圖 4.1 所示: 主機控制單片機的程序如下: 4.1 數(shù)據(jù)處理 26 工控機讀取外部 存儲器的數(shù)據(jù),以數(shù)據(jù)文件的方式將數(shù)據(jù)存放在硬盤上。便于對數(shù)據(jù)的處理和查詢。采集系統(tǒng)可以得到 A、 B、 C三相繼電器開、斷瞬間的電壓、電流,以及一相標準電壓。數(shù)據(jù)處理主要是用 Delphi 軟件將采集得到的數(shù)據(jù)復原為原始波形。并根據(jù)數(shù)據(jù)計算各個所需要的參數(shù)。 本采集系統(tǒng)用于高壓電弧的采集,事實證明本系統(tǒng)能實時、準確地復現(xiàn)出高壓電弧瞬間的波形。 第五章結束語 AT89C51 是九十年代推出的新型單片機,適用范圍廣泛,可應用于一般數(shù)據(jù)采集、監(jiān)控、檢測場合,也適用于高速數(shù)據(jù)采集系統(tǒng)。經(jīng)過實驗研究證明該系統(tǒng)和高速 A D 配合單路 采集速度最高可以達到 3 MHz。該系統(tǒng)還具有可靠性高,數(shù)據(jù)不丟失,抗干擾性強,便于數(shù)據(jù)傳輸和處理等優(yōu)點。有良好的應用前景和很大的實用價值。慢速外設和快速 CPU 之間存在的矛盾隨著 CPU 速度的不斷提高越來越明顯,尤其是單片機系統(tǒng)。本文提出的方法,解決了這一問題。實驗證明,采用SRAM 與單片機的接口技術應用于高速數(shù)據(jù)采集系統(tǒng),數(shù)據(jù)傳輸可靠性高,抗干擾能力強,具有很大的實際應用價值。 本文提出了一種與單片機系統(tǒng)接口的由純硬件電路控制的多通道高速數(shù)據(jù)采集系統(tǒng)。由于本采樣電路可以是多通道高速采樣,所以要合理地設計直流電 源,在設計 PCB 板時,要注意合理布局和設置良好的靜電屏蔽,還要考慮電磁干擾問題。如果是擴展多個 A D轉換器, A D 選擇的讀入信號為 X95108 上的 BRD1 BRD4,在 X95108 上還可以擴展讀入信號,以增加 A D轉換器,這時更應該注意總線的布局。它的自動采樣硬件電路主要采用 FPGA 和 FIFO 技術設計而成。該裝置可以實現(xiàn)多路模擬量的高速采集。在實際應用工頻電流電壓采樣中,可以采集 36 路模擬量,每個周波( 20ms)采樣 32 點,工作非常穩(wěn)定可靠,值得推廣。 致謝 本論文的主要內容到此結束,請各位老師給予寶 貴意見和建議,此設計之所以能順利完成,與宮老師的悉心指導和幫助是分不開的,宮老師在百忙之中,抽時間指導設計和審閱論文,并給出許多寶貴的意見,宮老師嚴謹?shù)闹螌W態(tài)度和淵博的知識使我受益非淺,在此表示深深的感謝。 同時還要向曾經(jīng)給過我支持和幫助的老師和同學致以最誠摯的謝意。 27 第六章 附錄 6.1 系統(tǒng)設計總體流程圖 主程序流程圖 : 28 中斷服務程序: 中斷返回 P3.2 中斷 使 P1.0=1 禁止 FPGA 調用數(shù)據(jù)列上位機子程序 P1.0=0 關 P1.2, P1.3 開 P1.2, P1.3 查20H.0=0 使 FPGA 啟動 使 FPGA 禁止 29 6.2 系統(tǒng)設計程序 采樣控制程序; Library IEEE; use IEEE.STD_LOGIC_1164.ALL; entity ad5510 is port( rst : in

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論