本發明涉及模擬產生α射線脈沖信號領域,尤其是一種可以產生三種不同類型的信號,以滿足不同的α射線脈沖信號輸入需求的α射線標準脈沖發生器及發射方法。
背景技術:
公知的:α射線,是放射性物質所產生的高速α粒子流,它可由多種α放射性核素(如鐳)發射出來。α粒子的能量可達4~9MeV。從α粒子在電場和磁場中偏轉的方向,可知它帶有正電荷。由于α粒子的質量比電子大得多,通過物質時極易使其中的原子電離而損失能量,所以它能穿透物質的本領比β射線弱得多,容易被薄層物質所阻擋,但是它有很強的電離作用。α射線探測器的工作原理是基于α粒子與探測器物質的相互作用。當α射線通過探測器物質時,探測器物質就吸收其全部或部分能量而產生電離或激發作用,進而產生電信號,通過對電信號的分析就可以分辨α射線的信息。由于α射線對人體有危害,故可以由一種設備對α射線產生的信號進行模擬。
隨著電子計算機技術尤其是嵌入式技術的大力發展,FPGA(Field-Programmable Gate Array,現場可編程門陣列)技術得到了廣泛的發展與應用。FPGA因其并行處理能力強、控制邏輯簡單等特點逐步成為極具優勢的核心處理器。
(1)高轉換速度:現代數字系統的數據處理速度越來越快,要求獲取數據的速度也要不斷提高。
(2)高精度:現代數字系統的分辨率在不斷提高,高級儀表的最小可測值在不斷地減小。
(3)低功耗:片上系統(SOC)已經成為集成電路發展的趨勢,在同一塊芯片上既有模擬電路又有數字電路。為了完成復雜的系統功能,大系統中每個子模塊的功耗應盡可能地低。
技術實現要素:
本發明所要解決的技術問題是提供一種可以產生三種不同類型的信號,以滿足不同的α射線脈沖信號輸入需求的α射線標準脈沖發生器。
本發明解決其技術問題所采用的技術方案是:α射線標準脈沖發生裝置,包括電源、FPGA擴展模塊、DA模塊;所述FPGA具有FPGA主控器、Buffer模塊以及ROM模塊;
所述電源用于為FPGA擴展模塊、DA模塊提供電能;
所述FPGA擴展模塊具有的ROM模塊用于存儲所需波形參數,
所述FPGA主控器用于讀取ROM模塊內的波形參數,并且將波形參數轉化為波形數據;
所述Buffer模塊用于對FPGA擴展模塊發出的波形數據進行緩存除法運算;
所述DA模塊包括DAC900E模塊以及至少兩塊AD9708模塊;
所述DAC900E模塊用于接收FPGA擴展模塊發出的波形數據,并且根據接收的波形數據發射對應的α射線標準脈沖;
所述AD9708模塊用于接收Buffer模塊進行除法運算后的波形數據;并且發射對應的α射線標準脈沖。
具體的,所述FPGA擴展模塊包括FPGA控制器,所述FPGA控制器上設置有控制模塊以及拓展模塊;
所述控制模塊以及拓展模塊分別與FPGA控制器連接;
所述控制模塊用于向FPGA控制器輸入數據;所述拓展模塊用于顯示FPGA控制器處理數據或者輸出數據。
具體的,所述控制模塊包括鼠標和鍵盤,所述鼠標和鍵盤均與FPGA控制器連接;所述拓展模塊采用顯示器,所述顯示器與FPGA控制器連接。
本發明還提供了一種采用上述α射線標準脈沖發生裝置的α射線標準脈沖發射方法,包括以下步驟:
1)首先對需求波形進行分析,將FPGA拓展模塊上的時鐘信號進行分頻,使分頻以后的時鐘信號的頻率為30MHz;
2)在波形生成器軟件MifMaker中對需求波形進行繪制;通過MifMaker得到對應的mif文件,將mif文件保存到Quartus II中;
3)通過Quartus II軟件中的ROM產生功能,將mif文件固化進FPGA拓展模塊的ROM模塊中;
4)在FPGA拓展模塊上設置所需ROM模塊的地址讀寫模塊DDS與計數模塊count;將計數模塊count的間隔值設置為2249;當在計數模塊count中的時鐘信號為上升沿時,使得計數器count模塊開始計數,進行“加1”計算;計數模塊count的變量cnt在計數至2249時,FPGA主控器通過DDS模塊對ROM模塊中的波形數據進行讀取;并且對計數模塊count中的時鐘信號進行分頻,得到30MHz的時鐘頻率,通過FPGA拓展模塊引腳分別連接到DAC900E模塊的時鐘引腳以及AD9708模塊中的時鐘引腳;當count模塊中使能信號ena為低電平時,址讀寫模塊DDS中的地址值加1,同時FPGA主控器輸出ROM模塊中的波形數據;當count模塊中的使能信號ena為高電平時,址讀寫模塊DDS中的地址值清零;
通過DAC900E模塊接受波形信號發射α射線標準脈沖;
通過MifMaker產生隨機數的ROM,然后通過Quartus II將隨機數固化進FPGA拓展模塊的ROM模塊中;在時鐘信號上升沿有效時,通過Buffer模塊將接收到的ROM模塊中的波形數據與ROM模塊中隨機數進行除法運算;通過AD9708模塊接收進行除法運算后的波形數據,發射幅值調節后的α射線脈沖。
進一步的,在步驟4)中將FPGA擴展模塊上計數模塊count的間隔值設置為一個數據變量Time,并且在FPGA擴展模塊的ROM模塊中封裝間隔隨機數,當在計數模塊count中的時鐘信號為上升沿時,使得計數模塊count開始計數,進行“加間隔隨機數”計算;計數模塊count在累加至1036時,FPGA主控器輸出ROM模塊中的波形數據;繼續累加,當數模塊count的計數值cnt與變量Time中的數值相同時,計數模塊count清零,產生使能信號ena;在時鐘信號上升沿有效時,通過Buffer模塊將接收到的ROM模塊中的波形數據與ROM模塊中隨機數進行除法運算;通過AD9708模塊接收進行除法運算后的波形數據,發射相應間隔時間和幅值的α射線脈沖。
本發明的有益效果是:本發明所述的α射線標準脈沖發生裝置采用FPGA拓展模塊和DA模塊組合成α射線輸出信號的模塊;整個模塊具有控制簡單、占用資源少、處理速度快、抗干擾能力強、功能全、以及信號完整性好的特點。本發明所述的α射線標準脈沖發射方法通過采用上述α射線標準脈沖發生裝置從而實現可以產生三種不同類型的信號,以滿足不同的α射線脈沖信號輸入需求。
附圖說明
圖1為本發明實施例中α射線標準脈沖發生裝置結構框圖;
圖2是本發明實施例中在MifMaker中繪制的波形圖;
圖3為本發明實施例中DAC900E模塊原理圖;
圖4為本發明實施例中AD9708模塊原理圖;
圖5為本發明實施例中信號放大,濾波調整模塊原理圖。
具體實施方式
下面結合附圖和實施例對本發明進一步說明。
如圖1至圖5所述本發明所述的α射線標準脈沖發生裝置,包括電源、FPGA擴展模塊、DA模塊;所述FPGA具有FPGA主控器、Buffer模塊以及ROM模塊;
所述電源用于為FPGA擴展模塊、DA模塊提供電能;
所述FPGA擴展模塊具有的ROM模塊用于存儲所需波形參數,
所述FPGA主控器用于讀取ROM模塊內的波形參數,并且將波形參數轉化為波形數據;
所述Buffer模塊用于對FPGA擴展模塊發出的波形數據進行緩存除法運算;
所述DA模塊包括DAC900E模塊以及至少兩塊AD9708模塊;
所述DAC900E模塊用于接收FPGA擴展模塊發出的波形數據,并且根據接收的波形數據發射對應的α射線標準脈沖;
所述AD9708模塊用于接收Buffer模塊進行除法運算后的波形數據;并且發射對應的α射線標準脈沖。
具體的,電源采用5V電源,同時將FPGA擴展模塊的I/O管腳擴展到底板邊緣,方便與各種擴展模塊板相連,來搭建不同功能的系統。
所述DA模塊主要由一片10Bit、165MSPS的DAC900E高速數/模轉換芯片組成,可以滿足用戶對于高速信號產生的要求,用戶可以借助FPGA核心模塊板,利用DDS技術實時產生點頻、線性調頻、ASK、FSK等各種形式的數字信號,并通過控制高速D/A轉換來得到所需的模擬信號。
所述FPGA擴展模塊包括FPGA控制器,所述FPGA控制器上設置有控制模塊以及拓展模塊;所述控制模塊以及拓展模塊分別與FPGA控制器連接;所述FPGA控制器用于接收所需波形參數,并且將波形參數轉化為波形數據發生到DA模塊;所述控制模塊用于向FPGA控制器輸入數據;所述拓展模塊用于顯示FPGA控制器處理數據或者輸出數據。
所述控制模塊包括鼠標和鍵盤,所述鼠標和鍵盤均與FPGA控制器連接;所述拓展模塊采用顯示器,所述顯示器與FPGA控制器連接。
綜上所述,本發明所述的α射線標準脈沖發生裝置采用FPGA拓展模塊和DA模塊組合成α射線輸出信號的模塊;整個模塊具有控制簡單、占用資源少、處理速度快、抗干擾能力強、功能全、以及信號完整性好的特點。
本發明還提供了一種采用上述α射線標準脈沖發生裝置的α射線標準脈沖發射方法,包括以下步驟:
1)首先對需求波形進行分析,將FPGA拓展模塊上的時鐘信號進行分頻,使分頻以后的時鐘信號的頻率為30MHz;
2)在波形生成器軟件MifMaker中對需求波形進行繪制;通過MifMaker得到對應的mif文件,將mif文件保存到Quartus II中;
3)通過Quartus II軟件中的ROM產生功能,將mif文件固化進FPGA拓展模塊的ROM模塊中;
4)在FPGA拓展模塊上設置所需ROM模塊的地址讀寫模塊DDS與計數模塊count;將計數模塊count的間隔值設置為2249;當在計數模塊count中的時鐘信號為上升沿時,使得計數器count模塊開始計數,進行“加1”計算;計數模塊count的變量cnt在計數至2249時,FPGA主控器通過DDS模塊對ROM模塊中的波形數據進行讀取;并且對計數模塊count中的時鐘信號進行分頻,得到30MHz的時鐘頻率,通過FPGA拓展模塊引腳分別連接到DAC900E模塊的時鐘引腳以及AD9708模塊中的時鐘引腳;當count模塊中使能信號ena為低電平時,址讀寫模塊DDS中的地址值加1,同時FPGA主控器輸出ROM模塊中的波形數據;當count模塊中的使能信號ena為高電平時,址讀寫模塊DDS中的地址值清零;
通過DAC900E模塊接受波形信號發射α射線標準脈沖;
通過MifMaker產生隨機數的ROM,然后通過Quartus II將隨機數固化進FPGA拓展模塊的ROM模塊中;在時鐘信號上升沿有效時,通過Buffer模塊將接收到的ROM模塊中的波形數據與ROM模塊中隨機數進行除法運算;通過AD9708模塊接收進行除法運算后的波形數據,發射幅值調節后的α射線脈沖。
在步驟4)中通過DAC900E模塊接受波形信號發射α射線標準脈沖;通過將波形數據與隨機數進行除法運算從而調節α射線脈沖波形的幅值,通過AD9708模塊接收進行除法運算后的波形數據,發射幅值調節后的α射線脈沖;從而實現對多種波形的α射線脈沖進行發射。
進一步的為了使得脈沖發生器所產生的波形,不僅可以有固定的間隔時間模式,還能夠發射每個波形間隔時間隨機的α射線脈沖。在步驟4)中將FPGA擴展模塊上計數模塊count的間隔值設置為一個數據變量Time,并且在FPGA擴展模塊的ROM模塊中封裝間隔隨機數,當在計數模塊count中的時鐘信號為上升沿時,使得計數模塊count開始計數,進行“加間隔隨機數”計算;計數模塊count在累加至1036時,FPGA主控器輸出ROM模塊中的波形數據;繼續累加,當數模塊count的計數值cnt與變量Time中的數值相同時,計數模塊count清零,產生使能信號ena;通過MifMaker產生隨機數的ROM,然后通過Quartus II將隨機數固化進FPGA拓展模塊的ROM模塊中;在時鐘信號上升沿有效時,通過Buffer模塊將接收到的ROM模塊中的波形數據與ROM模塊中隨機數進行除法運算;通過AD9708模塊接收進行除法運算后的波形數據,發射相應間隔時間和幅值的α射線脈沖。通過上述步驟從而實現對α射線脈沖波形的間隔時間和幅值的調節,從而可以獲得任意間隔時間和幅值的α射線脈沖。
實施例
如圖1所示,α射線標準脈沖發生裝置,包括電源、FPGA擴展模塊、DA模塊;所述DA模塊包括DAC900E模塊以及兩塊AD9708模塊;所述FPGA擴展模塊具有FPGA主控器、Buffer模塊以及ROM模塊。
具體的,電源采用5V電源,同時將FPGA擴展模塊的I/O管腳擴展到底板邊緣,方便與各種擴展模塊板相連,來搭建不同功能的系統。
所述DA模塊主要由一片10Bit、165MSPS的DAC900E高速數/模轉換芯片組成,可以滿足用戶對于高速信號產生的要求,用戶可以借助FPGA核心模塊板,利用DDS技術實時產生點頻、線性調頻、ASK、FSK等各種形式的數字信號,并通過控制高速D/A轉換來得到所需的模擬信號。
所述FPGA擴展模塊包括FPGA控制器,所述FPGA控制器上設置有控制模塊以及拓展模塊;所述控制模塊以及拓展模塊分別與FPGA控制器連接;所述FPGA控制器用于接收所需波形參數,并且將波形參數轉化為波形數據發生到DA模塊;所述控制模塊用于向FPGA控制器輸入數據;所述拓展模塊用于顯示FPGA控制器處理數據或者輸出數據。
所述控制模塊包括鼠標和鍵盤,所述鼠標和鍵盤均與FPGA控制器連接;所述拓展模塊采用顯示器,所述顯示器與FPGA控制器連接。
上述α射線標準脈沖發生裝置的工作原理是:
所述FPGA拓展模塊采用5V直流電源供電,晶振時鐘為40MHz。上述α射線標準脈沖發生裝置發射α射線標準脈沖的方法包括以下步驟:
1、首先對需求波形進行分析,將FPGA拓展模塊上的時鐘信號進行分頻,使分頻以后的時鐘信號的頻率為30MHz。時鐘信號的輸入引腳為PIN153。在后續的設計中,為了保證各個模塊都能正常的工作,時鐘頻率均采用通過分頻模塊DivClk1的時鐘clk。
2、根據α射線脈沖信號的特征,首先在波形產生軟件中進行繪制。MifMaker是一款關于Quartus II軟件的波形生成器軟件。在該軟件中對波形參數進行設置,數據長度才用1024,數據的寬為8,數據的格式為16進制,采樣頻率為1000;根據設計需求,由于波形峰值在20mV~100mV之間,在繪制波形時,波形的幅值最高點為0x80。最終繪制波形如附圖2所示,波形的上升時間為3μs,下降時間為25μs,周期為35μs。隨機模式下,相鄰波形的間隔時間不盡相同,在固定模式下,相鄰波形的間隔時間為40μs,波形的幅值為50mV。
3、通過DA模塊產生相應的α射線標準脈沖;
3.1通過DAC900E發射α射線標準脈沖
在FPGA拓展模塊上設置所需ROM模塊的地址讀寫模塊DDS與計數模塊count;將計數模塊count的間隔值設置為2249。在計數模塊count模塊中,當時鐘信號為上升沿時,計數器開始動作,進行“加1”計算。由于所需波形的時間周期要求為35μs,通過計算可得,計數器的變量cnt在計數至1024個點時,產生的模型的基本周期大約為35μs,相鄰兩個波形的間隔時間要求為40μs,計數器的變量cnt在計數至2249時,相鄰兩個波形的間隔時間為40μs。地址讀取模塊DDS中,通過assign語句,使得分頻產生的30MHz的時鐘頻率,通過FPGA拓展模塊的PIN139引腳連接至DAC900E模塊中的芯片時鐘引腳。同時,在DDS模塊中,對波形數據在ROM中的地址進行讀取,當count模塊中使能信號ena為低電平時,地址值加1,同時輸出波形數據。通過DAC900E模塊接受波形信號發射α射線標準脈沖。當count模塊中的使能信號ena為高電平時,地址值清零。隨機周期的FPGA拓展模塊的ROM的值基本保持在1024~4096之間,這樣在設計時,可以保證所需周期能夠完整輸出,不會產生不完整的波形,進而產生任意間隔時間且幅值隨機的波形。
3.2通過AD9708模塊發射波形幅度調節后的射α射線脈沖;
將MifMaker軟件所產生的mif文件保存到Quartus II中相應的工程文件夾下,通過Quartus II軟件中的ROM產生功能,將生成的mif文件固化進FPGA拓展模塊的ROM模塊中。在波形與分頻時鐘模塊之間,編寫所需FPGA拓展模塊的ROM的地址讀寫模塊DDS與計數模塊count。在計數模塊count模塊中,當時鐘信號為上升沿時,計數器開始動作,進行“加1”計算。由于所需波形的時間周期要求為35μs,通過計算可得,計數器的變量cnt在計數至1024個點時,產生的模型的基本周期大約為35μs,相鄰兩個波形的間隔時間要求為40μs,計數器的變量cnt在計數至2249時,相鄰兩個波形的間隔時間為40μs。地址讀取模塊DDS中,通過assign語句,使得分頻產生的30MHz的時鐘頻率,通過FPGA拓展模塊的PIN139引腳連接至DAC900E模塊中的芯片時鐘引腳。同時,在DDS模塊中,對波形數據在ROM中的地址進行讀取,當count模塊中使能信號ena為低電平時,地址值加1,同時輸出波形數據。當count模塊中的使能信號ena為高電平時,地址值清零。隨機周期的FPGA拓展模塊的ROM的值基本保持在1024~4096之間,這樣在設計時,可以保證所需周期能夠完整輸出,不會產生不完整的波形,進而產生任意間隔時間且幅值隨機的波形。
如圖4所示,根據需求要求,不同波形要求其形狀相同,但其產生的波形的幅值隨機變化,因此在FPGA拓展模塊的ROM模塊中,通過在在FPGA拓展模塊數據輸出接口后面添加buffer模塊,在buffer模塊中,采用對輸出數據進行除法運算,并將相應的除數封裝在FPGA拓展模塊的ROM模塊aaa中。通過MifMaker產生隨機數的ROM,然后在Quartus II中生成該ROM模塊,命名為aaa。地址讀取模塊DDS3。buffer模塊的設計,在時鐘信號上升沿有效時,輸入數據命名為q,隨機除數數據命名為data,兩組數據進行除法運算后,通過AD9708模塊接收進行除法運算后的波形數據,發射幅值調節后的α射線脈沖。
3.3通過AD9708模塊發射波形幅度以及間隔時間均調節后的射α射線脈沖;
在FPGA拓展模塊上設置所需ROM模塊的地址讀寫模塊DDS與計數模塊count;將計數模塊count的間隔值設置為一個數據變量Time,通過在ROM中封裝好隨機數,當在計數模塊count中的時鐘信號為上升沿時,使得計數模塊count開始計數,進行“加間隔隨機數”計算;將隨機數通過count1模塊中的Time變量使得每次計數器累加的值是不固定的。通過計數模塊count,在累加至1036時,,FPGA主控器輸出ROM模塊中的波形數據;繼續累加,當數模塊count的計數值cnt與變量Time中的數值相同時,計數模塊count清零,產生使能信號ena;使后續的ROM能夠正常的輸出波形。隨機周期的ROM的值基本保持在1024~4096之間,這樣在設計時,可以保證所需周期能夠完整輸出,不會產生不完整的波形。
通過MifMaker產生隨機數的ROM,然后通過Quartus II將隨機數固化進FPGA拓展模塊的ROM模塊中;在時鐘信號上升沿有效時,通過Buffer模塊將接收到的ROM模塊中的波形數據與ROM模塊中隨機數進行除法運算;通過AD9708模塊接收進行除法運算后的波形數據,發射相應間隔時間和幅值的α射線脈沖。通過上述步驟從而實現對α射線脈沖波形的間隔時間和幅值的調節,從而可以獲得任意間隔時間和幅值的α射線脈沖。