- 相關(guān)推薦
基于FPGA的核物理實驗定標器的設(shè)計與實現(xiàn)
摘要:介紹使用現(xiàn)代EDA手段設(shè)計核物理實驗常用儀器——定標器的原理和實現(xiàn)方法。新的定標器利用FPGA技術(shù)對系統(tǒng)中大量電路進行集成,結(jié)合AT89C51單片機進行控制和處理,并增加數(shù)據(jù)存儲功能和RS232接口,實現(xiàn)與PC機通信,進行實驗數(shù)據(jù)處理。本文給出詳細新定標器設(shè)計原理圖和FPGA具體設(shè)計方案。關(guān)鍵詞:G-M計數(shù)器 定標器 現(xiàn)場可編程邏輯門陣列器件(FPGA)
定標器在大學實驗中有很廣泛的應用,其中近代物理實驗中的核物理實驗里就有2個實驗(G-M計數(shù)管和β吸收)要用到高壓電源和定標器,(范文先生網(wǎng)www.panasonaic.com收集整理)而目前現(xiàn)有的設(shè)備一般使用的是分立元器件,已嚴重老化,高壓極不穩(wěn)定,維護也較為困難;另一方面在許多常用功能上明顯欠缺,使得學生的實驗課難以維持。為此我們提出了一種新的設(shè)計方案:采用EDA進行結(jié)構(gòu)設(shè)計,充分發(fā)揮FPGA(Field Programmable Gate Array)技術(shù)的集成特性,拋棄原電路中眾多晶體管,成功地對系統(tǒng)中的大量處理電路進行了簡化和集約,提高了儀器的可靠性和穩(wěn)定性,有利于電路的測試和檢修。改進方案后的定標器不僅完善了原有的功能,還增加了數(shù)據(jù)存儲、RS232接口等功能,可以方便地與PC機接口通信,進行數(shù)據(jù)處理、圖像顯示和打印等。
1 G-M計數(shù)器原理
G-M計數(shù)管是一種低壓氣體放電管,作用是將入射粒子(射線)轉(zhuǎn)換成電壓脈沖輸出。原子核心物理實驗中常用它作為計數(shù)裝置的“探頭”探測射線及射線強度。G-M計數(shù)管有2種:用于探測β射線的鐘罩型和主要用于探測γ射線的長圓柱型。其中鐘罩型β計數(shù)管的工作電壓為千V(伏)左右,圓柱型工作電壓接近千V(伏)。
射線粒子在計數(shù)管中引起氣體“雪崩”放電,使得計數(shù)管導通;電流通過負載電阻R形成一個負脈沖,此脈沖信號通過電容C,經(jīng)前置放大器送至定標器計數(shù),如圖1所示。由于計數(shù)管在放電終止后會形成連續(xù)放電現(xiàn)象,此現(xiàn)對計數(shù)管極其有害,故一發(fā)現(xiàn)計數(shù)突然增加時,就應立即降低高壓。改進后的定標器會自動控制高壓源,將其電壓降低。這些改進。即可避免以前實驗中出現(xiàn)的計數(shù)管損壞問題。
2 定標系統(tǒng)原理及硬件實現(xiàn)
定標器系統(tǒng)由電源部分、輸入電路部分和脈沖計數(shù)顯示部分3個模塊組成,原理框圖如圖2所示。
G-M計數(shù)管產(chǎn)生的負脈沖經(jīng)過輸入整形電路,進行整形、放大處理,產(chǎn)生標準TTL信號,再由計數(shù)測量電路進行計數(shù)。定時脈寬門控電路控制計數(shù)的脈寬,分6個檔:×10 -3、×10 -2、×10 -1、×10 0、×10 1、×10 2。時間倍乘檔有4種選擇:×1、×2、×4、×8。這樣進行的一組測量數(shù)據(jù)即可以用來描述射線粒子產(chǎn)生的規(guī)律。
圖2中,顯示部分采用的是動態(tài)顯示的方法,利用單片機AT89C51來進行即時的控制和相應的顯示數(shù)據(jù)。同時根據(jù)需要,選擇部分測量數(shù)據(jù)(包括此次計數(shù)數(shù)據(jù)及對應的高壓值)存儲到RAM中,然后將所選取的RAM中的數(shù)據(jù)通過RS232串行端口發(fā)送到PC機上,經(jīng)過相應的處理軟件進行描圖,以及相應的實驗數(shù)據(jù)處理。為了使系統(tǒng)更加集成化,特定時脈寬門控、計數(shù)測量電路、地址譯碼及數(shù)據(jù)鎖存、總線的驅(qū)動等電路集成到1片F(xiàn)LEX10K的FPGA中。圖3為系統(tǒng)詳細電路原理框圖。
3 FPGA芯片設(shè)計
3.1 FPGA邏輯功能結(jié)構(gòu)及其總體設(shè)計
為了簡化設(shè)計,實現(xiàn)系統(tǒng)大量邏輯電路的集成,在設(shè)計中使用了現(xiàn)場可編程邏輯門陣列器件(FPGA)。FPGA主要實現(xiàn)以下邏輯功能:定時脈寬門控、計數(shù)測量、地址鎖存、譯碼、總線的驅(qū)動和擴展以及數(shù)碼顯示的控制等功能。其邏輯功能頂層結(jié)構(gòu)如圖4所示。FPGA器件選擇Altera公司FLEX10K10系列的EPF10K10LC84-4芯片。該芯片集成有1萬個等效邏輯門,含有572個邏輯單元(LEs)、72個邏輯陣列塊(LABs)、3個嵌入
式陣列塊(EAB s),并具有720個片內(nèi)寄存器,可以在不占用內(nèi)部資源的條件下實現(xiàn)6144 bit的片內(nèi)存儲器;內(nèi)部模塊間采用高速、延時可預測的快速通道連接;邏輯單元間具有高速、高扇出的級聯(lián)鏈和快速進位鏈;片內(nèi)還有三態(tài)網(wǎng)絡和6個全局時鐘、4個全局清零信號以及豐富的I/O資源;每個I/O引腳可以選擇為三態(tài)控制或集電極開路輸出,可以通過編程控制每個I/O引腳的速度以及I/O寄存器的使用。
FPGA使用的開發(fā)軟件為MAX+PLUS II。該軟件是一個集設(shè)計輸入、編譯、仿真和編程為一體的超級集成環(huán)境;提供了自動邏輯綜合工具,可以在多個邏輯層次上對高級設(shè)計描述進行綜合、優(yōu)化,大大縮短了編譯時間,加速了FPGA設(shè)計開發(fā)進程。MAX+PLUS II支持各種HDL輸入選項,包括VHDL、Verilog HDL和ALTERA的硬件描述語言AHDL;提供豐富的庫單元供設(shè)計者調(diào)用,其中包括74個系列的全部器件和多種特殊的邏輯宏單元(macrofunction),以及新型的參數(shù)化的巨單元(magafunction)。
FPGA設(shè)計經(jīng)過4個基本階段:設(shè)計輸入、設(shè)計編譯、設(shè)計驗證和器件編程。首先,根據(jù)系統(tǒng)的邏輯功能生成頂層結(jié)構(gòu)圖,如圖4所示。然后,分成幾個小模塊進行下一級設(shè)計。由此由上而下分析其邏輯功能,從底層進行設(shè)計編譯,每一級都進行波形驗證。當最后頂層模塊的邏輯功能在波形仿真中滿足系統(tǒng)時序要求時,才可進行器件編程。
由于FLEX10K在工作期間,將配置數(shù)據(jù)保存在SRAM中,而SRAM數(shù)據(jù)是易丟失的。SRAM單元必須在器件加電后裝入配置數(shù)據(jù),且配置完成后,它的存儲器和I/O引腳必須被初化。初始化后,器件進入用戶模式,開始系統(tǒng)運行。對于FLEX10K系列器件,Altera公司提供了4種配置方案:EPC1(或EPC1441)EPPOM方式配置法、被動串行法、被動并行同步法、被動并行異步法。對器件進行配置時,我們先用被動串行法(passive serial)。這種方式是通過下載電纜對器件進行配置的,適合于調(diào)試階段。當整個系統(tǒng)設(shè)計完成后,利用EPPOM方式對器件進行配置。這樣固化在EPROM中的數(shù)據(jù)將在系統(tǒng)上電時對FPGA芯片配置,其中EPROM芯片選用EPC1441。
3.2 FPGA單元模塊設(shè)計
FPGA單元主由脈沖計數(shù)模塊,定時控制模塊,地址鎖存、譯碼、總線驅(qū)動、擴展模塊這3大模塊組成。其中脈沖計數(shù)模塊和定時控制模塊用來實現(xiàn)對輸入脈沖的計數(shù)次數(shù)的測量;地址鎖存、譯碼、總線驅(qū)動和擴展這部分模塊,主要實現(xiàn)各數(shù)據(jù)在總線上的分時傳輸?偩上的數(shù)據(jù)包括脈沖計數(shù)數(shù)據(jù)和電源模塊的高壓數(shù)據(jù),以及來自單片機的數(shù)據(jù)總線D0~D7的數(shù)碼顯示用數(shù)據(jù)。此模塊中的地址譯碼部分,提供鎖存單元片選信號。圖5所示為FPGA頂層電路圖。
在具體設(shè)計時,考慮到計數(shù)脈沖寬度為0.1~100μs,最高計數(shù)率為2MHz,即計數(shù)位數(shù)達7位,所以設(shè)計中的脈沖良數(shù)模塊就相當于1個7位的BCD加計數(shù)器;而定時控制模塊相當于1個7位的BCD減計數(shù)器。減計數(shù)器的預置初始值由定時選擇開關(guān)控制,從而控制數(shù)的時間。CLR信號為“計數(shù)鍵”產(chǎn)生的一脈沖信號,標志計數(shù)開始,而減計數(shù)器減到0時加計數(shù)器即停止計數(shù)。這部分設(shè)計通過調(diào)用MAX+PLUS II提供的庫函數(shù)用AHDL語言結(jié)合圖形輸入完成。地址譯碼、鎖存、總線驅(qū)動模塊主要由D觸發(fā)器和I/O接口設(shè)計而成。由于數(shù)據(jù)傳輸中用的是雙向輸入/輸出端口,但是Altera芯片的引腳端口并不可以直接使用,需要加1個三態(tài)的邏輯門,因此,總線接口部分采用這2種函數(shù)原形(三態(tài)門和雙向端口)進行組合設(shè)計。
3.3 FPGA功能模塊仿真時序
在整個FPGA設(shè)計中,各單元模塊都是經(jīng)過嚴格的設(shè)計驗證之后才繼續(xù)上一層設(shè)計的。這里主要使用MAX PLUS II的TIMER進行波形仿真,來驗證各子模塊的功能,判斷其時序是否滿足要求。若時序稍有不對,甚至僅是小毛刺,也要立即更改輸入設(shè)計。這樣,設(shè)計的精度才高,系統(tǒng)工作才穩(wěn)定。當每個模塊最終都在時序上滿足邏輯功能需求時,設(shè)計才能完成。圖6為FPGA在MAX PLUS II環(huán)境下綜合設(shè)計后的時序仿真波形圖。
4 單片機軟件設(shè)計
軟件部分主要是單片機AT89C51對系統(tǒng)進行控制及相應的數(shù)據(jù)處理,整個控制流程如圖7所示。
結(jié)束語
本文給出了一種用于核物理實驗中的G-M計數(shù)裝置定標器的新設(shè)計方案。此方案在傳統(tǒng)的實驗原理下,對舊儀器在電路和功能上做了較大程度的改進。在設(shè)計中采用EDA設(shè)計思想,以AT89C51單片機作為數(shù)據(jù)傳輸?shù)目刂坪诵,用Altera現(xiàn)場可編程邏輯器件(FLEX10K系列的FPGA)對核心計數(shù)部分電路進行效而靈活的集成,并在此基礎(chǔ)上,擴展了數(shù)據(jù)的存儲功能,增加了與PC機通信
的RS232串行接口,從而更加智能化。
【基于FPGA的核物理實驗定標器的設(shè)計與實現(xiàn)】相關(guān)文章:
基于FPGA的直接數(shù)字頻率合成器的設(shè)計和實現(xiàn)08-06
基于模糊控制的遲早門同步器及其FPGA實現(xiàn)08-06
基于FPGA的快速傅立葉變換08-06