關(guān) 閉

新聞中心

EEPW首頁 > 安全與國防 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的核物理實(shí)驗(yàn)定標(biāo)器的設(shè)計(jì)實(shí)現(xiàn)

基于FPGA的核物理實(shí)驗(yàn)定標(biāo)器的設(shè)計(jì)實(shí)現(xiàn)

作者: 時(shí)間:2008-07-10 來源:網(wǎng)絡(luò) 收藏

  定標(biāo)器在大學(xué)實(shí)驗(yàn)中有很廣泛的應(yīng)用,其中近代物理實(shí)驗(yàn)中的核物理實(shí)驗(yàn)里就有2個(gè)實(shí)驗(yàn)(G-M和β吸收)要用到高壓電源和定標(biāo)器,而目前現(xiàn)有的設(shè)備一般使用的是,已嚴(yán)重老化,高壓極不穩(wěn)定,維護(hù)也較為困難;另一方面在許多常用功能上明顯欠缺,使得學(xué)生的實(shí)驗(yàn)課難以維持。為此我們提出了一種新的設(shè)計(jì)方案:采用EDA進(jìn)行結(jié)構(gòu)設(shè)計(jì),充分發(fā)揮FPGA(Field Programmable Gate Array)技術(shù)的集成特性,拋棄原電路中眾多晶體管,成功地對(duì)系統(tǒng)中的大量處理電路進(jìn)行了簡化和集約,提高了儀器的可靠性和穩(wěn)定性,有利于電路的測試和檢修。改進(jìn)方案后的定標(biāo)器不僅完善了原有的功能,還增加了數(shù)據(jù)存儲(chǔ)、RS232接口等功能,可以方便地與PC機(jī)接口通信,進(jìn)行數(shù)據(jù)處理、圖像顯示和打印等。

  1 G-M計(jì)數(shù)器原理

  G-M是一種低壓氣體放電管,作用是將入射粒子(射線)轉(zhuǎn)換成電壓。原子核心物理實(shí)驗(yàn)中常用它作為計(jì)數(shù)裝置的“探頭”探測射線及。G-M有2種:用于探測β射線的鐘罩型和主要用于探測γ射線的長圓柱型。其中鐘罩型β計(jì)數(shù)管的工作電壓為千V(伏)左右,圓柱型工作電壓接近千V(伏)。

  射線粒子在計(jì)數(shù)管中引起氣體“雪崩”放電,使得計(jì)數(shù)管導(dǎo)通;電流通過負(fù)載電阻R形成一個(gè)負(fù)脈沖,此脈沖信號(hào)通過電容C,經(jīng)前置放大器送至定標(biāo)器計(jì)數(shù),如圖1所示。由于計(jì)數(shù)管在放電終止后會(huì)形成連續(xù)放電現(xiàn)象,此現(xiàn)對(duì)計(jì)數(shù)管極其有害,故一發(fā)現(xiàn)計(jì)數(shù)突然增加時(shí),就應(yīng)立即降低高壓。改進(jìn)后的定標(biāo)器會(huì)自動(dòng)控制高壓源,將其電壓降低。這些改進(jìn)。即可避免以前實(shí)驗(yàn)中出現(xiàn)的計(jì)數(shù)管損壞問題。

  

  2 定標(biāo)系統(tǒng)原理及硬件實(shí)現(xiàn)

  定標(biāo)器系統(tǒng)由電源部分、部分和脈沖計(jì)數(shù)顯示部分3個(gè)模塊組成,原理框圖如圖2所示。

  

  G-M計(jì)數(shù)管產(chǎn)生的負(fù)脈沖經(jīng)過輸入整形電路,進(jìn)行整形、放大處理,產(chǎn)生標(biāo)準(zhǔn)TTL信號(hào),再由計(jì)數(shù)測量電路進(jìn)行計(jì)數(shù)。定時(shí)脈寬門控電路控制計(jì)數(shù)的脈寬,分6個(gè)檔:×10 -3、×10 -2、×10 -1、×10 0、×10 1、×10 2。時(shí)間倍乘檔有4種選擇:×1、×2、×4、×8。這樣進(jìn)行的一組測量數(shù)據(jù)即可以用來描述射線粒子產(chǎn)生的規(guī)律。 圖2中,顯示部分采用的是動(dòng)態(tài)顯示的方法,利用單片機(jī)AT89C51來進(jìn)行即時(shí)的控制和相應(yīng)的顯示數(shù)據(jù)。同時(shí)根據(jù)需要,選擇部分測量數(shù)據(jù)(包括此次計(jì)數(shù)數(shù)據(jù)及對(duì)應(yīng)的高壓值)存儲(chǔ)到RAM中,然后將所選取的RAM中的數(shù)據(jù)通過RS232串行端口發(fā)送到PC機(jī)上,經(jīng)過相應(yīng)的處理軟件進(jìn)行描圖,以及相應(yīng)的實(shí)驗(yàn)數(shù)據(jù)處理。為了使系統(tǒng)更加集成化,特定時(shí)脈寬門控、計(jì)數(shù)測量電路、地址譯碼及數(shù)據(jù)鎖存、總線的驅(qū)動(dòng)等電路集成到1片F(xiàn)LEX10K的FPGA中。圖3為系統(tǒng)詳細(xì)電路原理框圖。

  

  3 FPGA芯片設(shè)計(jì)

  3.1 FPGA邏輯功能結(jié)構(gòu)及其總體設(shè)計(jì)

  為了簡化設(shè)計(jì),實(shí)現(xiàn)系統(tǒng)大量邏輯電路的集成,在設(shè)計(jì)中使用了現(xiàn)場可編程邏輯門陣列器件(FPGA)。FPGA主要實(shí)現(xiàn)以下邏輯功能:定時(shí)脈寬門控、計(jì)數(shù)測量、地址鎖存、譯碼、總線的驅(qū)動(dòng)和擴(kuò)展以及數(shù)碼顯示的控制等功能。其邏輯功能頂層結(jié)構(gòu)如圖4所示。選擇Altera公司FLEX10K10系列的EPF10K10LC84-4芯片。該芯片集成有1萬個(gè)等效邏輯門,含有572個(gè)邏輯單元(LEs)、72個(gè)邏輯陣列塊(LABs)、3個(gè)嵌入式陣列塊(EAB s),并具有720個(gè)片內(nèi)寄存器,可以在不占用內(nèi)部資源的條件下實(shí)現(xiàn)6144 bit的片內(nèi)存儲(chǔ)器;內(nèi)部模塊間采用高速、延時(shí)可預(yù)測的快速通道連接;邏輯單元間具有高速、高扇出的級(jí)聯(lián)鏈和快速進(jìn)位鏈;片內(nèi)還有三態(tài)網(wǎng)絡(luò)和6個(gè)全局時(shí)鐘、4個(gè)全局清零信號(hào)以及豐富的I/O資源;每個(gè)I/O引腳可以選擇為三態(tài)控制或集電極開路輸出,可以通過編程控制每個(gè)I/O引腳的速度以及I/O寄存器的使用。

  FPGA使用的開發(fā)軟件為MAX+PLUS II。該軟件是一個(gè)集設(shè)計(jì)輸入、編譯、仿真和編程為一體的超級(jí)集成環(huán)境;提供了自動(dòng)邏輯綜合工具,可以在多個(gè)邏輯層次上對(duì)高級(jí)設(shè)計(jì)描述進(jìn)行綜合、優(yōu)化,大大縮短了,加速了開發(fā)進(jìn)程。MAX+PLUS II支持各種HDL輸入選項(xiàng),包括VHDL、Verilog HDL和ALTERA的硬件描述語言AHDL;提供豐富的庫單元供設(shè)計(jì)者調(diào)用,其中包括74個(gè)系列的全部器件和多種特殊的邏輯宏單元(macrofunction),以及新型的參數(shù)化的巨單元(magafunction)。

  經(jīng)過4個(gè)基本階段:設(shè)計(jì)輸入、設(shè)計(jì)編譯、設(shè)計(jì)驗(yàn)證和器件編程。首先,根據(jù)系統(tǒng)的邏輯功能生成頂層結(jié)構(gòu)圖,如圖4所示。然后,分成幾個(gè)小模塊進(jìn)行下一級(jí)設(shè)計(jì)。由此由上而下分析其邏輯功能,從底層進(jìn)行設(shè)計(jì)編譯,每一級(jí)都進(jìn)行波形驗(yàn)證。當(dāng)最后頂層模塊的邏輯功能在波形仿真中滿足系統(tǒng)時(shí)序要求時(shí),才可進(jìn)行器件編程。

  

  由于FLEX10K在工作期間,將配置數(shù)據(jù)保存在SRAM中,而SRAM數(shù)據(jù)是易丟失的。SRAM單元必須在器件加電后裝入配置數(shù)據(jù),且配置完成后,它的存儲(chǔ)器和I/O引腳必須被初化。初始化后,器件進(jìn)入用戶模式,開始系統(tǒng)運(yùn)行。對(duì)于FLEX10K系列器件,Altera公司提供了4種配置方案:EPC1(或EPC1441)EPPOM方式配置法、被動(dòng)串行法、被動(dòng)并行同步法、被動(dòng)并行異步法。對(duì)器件進(jìn)行配置時(shí),我們先用被動(dòng)串行法(passive serial)。這種方式是通過下載電纜對(duì)器件進(jìn)行配置的,適合于調(diào)試階段。當(dāng)整個(gè)系統(tǒng)設(shè)計(jì)完成后,利用EPPOM方式對(duì)器件進(jìn)行配置。這樣固化在EPROM中的數(shù)據(jù)將在系統(tǒng)上電時(shí)對(duì)FPGA芯片配置,其中EPROM芯片選用EPC1441。

  3.2 FPGA設(shè)計(jì)

  FPGA單元主由脈沖計(jì)數(shù)模塊,定時(shí)控制模塊,地址鎖存、譯碼、總線驅(qū)動(dòng)、擴(kuò)展模塊這3大模塊組成。其中脈沖計(jì)數(shù)模塊和定時(shí)控制模塊用來實(shí)現(xiàn)對(duì)輸入脈沖的計(jì)數(shù)次數(shù)的測量;地址鎖存、譯碼、總線驅(qū)動(dòng)和擴(kuò)展這部分模塊,主要實(shí)現(xiàn)各數(shù)據(jù)在總線上的分時(shí)傳輸??偩€上的數(shù)據(jù)包括脈沖計(jì)數(shù)數(shù)據(jù)和電源模塊的高壓數(shù)據(jù),以及來自單片機(jī)的數(shù)據(jù)總線D0~D7的數(shù)碼顯示用數(shù)據(jù)。此模塊中的地址譯碼部分,提供鎖存單元片選信號(hào)。圖5所示為FPGA頂層電路圖。

  

  在具體設(shè)計(jì)時(shí),考慮到計(jì)數(shù)脈沖寬度為0.1~100μs,最高計(jì)數(shù)率為2MHz,即計(jì)數(shù)位數(shù)達(dá)7位,所以設(shè)計(jì)中的脈沖良數(shù)模塊就相當(dāng)于1個(gè)7位的BCD加計(jì)數(shù)器;而定時(shí)控制模塊相當(dāng)于1個(gè)7位的BCD減計(jì)數(shù)器。減計(jì)數(shù)器的預(yù)置初始值由定時(shí)選擇開關(guān)控制,從而控制數(shù)的時(shí)間。CLR信號(hào)為“計(jì)數(shù)鍵”產(chǎn)生的一脈沖信號(hào),標(biāo)志計(jì)數(shù)開始,而減計(jì)數(shù)器減到0時(shí)加計(jì)數(shù)器即停止計(jì)數(shù)。這部分設(shè)計(jì)通過調(diào)用MAX+PLUS II提供的庫函數(shù)用AHDL語言結(jié)合圖形輸入完成。地址譯碼、鎖存、總線驅(qū)動(dòng)模塊主要由D觸發(fā)器和I/O接口設(shè)計(jì)而成。由于數(shù)據(jù)傳輸中用的是雙向輸入/輸出端口,但是Altera芯片的引腳端口并不可以直接使用,需要加1個(gè)三態(tài)的邏輯門,因此,總線接口部分采用這2種函數(shù)原形(三態(tài)門和雙向端口)進(jìn)行組合設(shè)計(jì)。

  3.3 FPGA功能模塊仿真時(shí)序

  在整個(gè)中,各都是經(jīng)過嚴(yán)格的設(shè)計(jì)驗(yàn)證之后才繼續(xù)上一層設(shè)計(jì)的。這里主要使用MAX PLUS II的TIMER進(jìn)行波形仿真,來驗(yàn)證各子模塊的功能,判斷其時(shí)序是否滿足要求。若時(shí)序稍有不對(duì),甚至僅是小毛刺,也要立即更改輸入設(shè)計(jì)。這樣,設(shè)計(jì)的精度才高,系統(tǒng)工作才穩(wěn)定。當(dāng)每個(gè)模塊最終都在時(shí)序上滿足邏輯功能需求時(shí),設(shè)計(jì)才能完成。圖6為FPGA在MAX PLUS II環(huán)境下綜合設(shè)計(jì)后的時(shí)序仿真波形圖。

  

  

  4 單片機(jī)軟件設(shè)計(jì)

  軟件部分主要是單片機(jī)AT89C51對(duì)系統(tǒng)進(jìn)行控制及相應(yīng)的數(shù)據(jù)處理,整個(gè)控制流程如圖7所示。

  

  結(jié)束語

  本文給出了一種用于核物理實(shí)驗(yàn)中的G-M計(jì)數(shù)裝置定標(biāo)器的新設(shè)計(jì)方案。此方案在傳統(tǒng)的下,對(duì)舊儀器在電路和功能上做了較大程度的改進(jìn)。在設(shè)計(jì)中采用EDA設(shè)計(jì)思想,以AT89C51單片機(jī)作為數(shù)據(jù)傳輸?shù)目刂坪诵?,用Altera現(xiàn)場可編程邏輯器件(FLEX10K系列的FPGA)對(duì)核心計(jì)數(shù)部分電路進(jìn)行效而靈活的集成,并在此基礎(chǔ)上,擴(kuò)展了數(shù)據(jù)的存儲(chǔ)功能,增加了與PC機(jī)通信的RS232串行接口,從而更加智能化。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉