基于FPGA的核物理实行定标器的计划与实现
发布日期:2011-05-06
先容利用当代EDA本领计划核物理实行常用仪器——定标器的原理和实现要领。新的定标器利用FPGA技能对体系中大量电路举行集成,连合AT89C51单片机举行控制和处理惩罚,并增长数据存储成果和RS232接口,实现与PC机通讯,举行实行数据处理惩罚。本文给出细致新定标器计划原理图和FPGA详细计划方案。
定标器在大学实行中有很遍及的应用,此中近代物理实行中的核物理实行里就有2个实行(G-M计数管和β吸取)要用到高压电源和定标器,而如今现有的配置一样平常利用的是分立元器件,已紧张老化,高压极不稳固,维护也较为困难;另一方面在很多常用成果上明显短缺,使得门生的实行课难以维持。为此我们提出了一种新的计划方案:采取EDA举行布局计划,充分发挥FPGA(Field Programmable Gate Array)技能的集成特性,扬弃原电路中浩繁晶体管,告成地对体系中的大量处理惩罚电路举行了简化和集约,进步了仪器的可靠性和稳固性,有利于电路的测试和查验。改造方案后的定标器不但美满了原有的成果,还增长了数据存储、RS232接口等成果,可以方便地与PC机接口通讯,举行数据处理惩罚、图像表现和打印等。
1 G-M计数器原理
G-M计数管是一种低压气体放电管,作用是将入射粒子(射线)转换成电压脉冲输出。原子内核物理实行中常用它作为计数装置的“探头”探测射线及射线强度。G-M计数管有2种:用于探测β射线的钟罩型和重要用于探测γ射线的长圆柱型。此中钟罩型β计数管的事变电压为千V(伏)左右,圆柱型事变电压靠近千V(伏)。
射线粒子在计数管中引起气体“雪崩”放电,使得计数管导通;电流畅过负载电阻R形成一个负脉冲,此脉冲信号通过电容C,经前置放大器送至定标器计数,如图1所示。由于计数管在放电停止后会形成连续放电征象,此现对计数管极其有害,故一发明计数忽然增长时,就应立即低落高压。改造后的定标器会主动控制高压源,将其电压低落。这些改造。即可克制过去实行中出现的计数管破坏题目。
2 定标体系原理及硬件实现
定标器体系由电源部分、输入电路部分和脉冲计数表现部分3个模块构成,原理框图如图2所示。
G-M计数管孕育产生的负脉冲颠末输入整形电路,举行整形、放大处理惩罚,孕育产生标准TTL信号,再由计数丈量电路举行计数。定时脉宽门控电路控制计数的脉宽,分6个档:×10 -3、×10 -2、×10 -1、×10 0、×10 1、×10 2。时间倍乘档有4种选择:×1、×2、×4、×8。如许举行的一组丈量数据即可以用来形貌射线粒子孕育产生的规律。
图2中,表现部分采取的是动态表现的要领,利用单片机AT89C51来举行实时的控制和相应的表现数据。同时根据必要,选择部分丈量数据(包括这次计数数据及映射的高压值)存储到RAM中,然后将所选取的RAM中的数据通过RS232串行端口发送到PC机上,颠末相应的处理惩罚软件举行描图,以及相应的实行数据处理惩罚。为了使体系越发集成化,特定时脉宽门控、计数丈量电路、地点译码及数据锁存、总线的驱动等电路集成到1片FLEX10K的FPGA中。图3为体系细致电路原理框图。
3 FPGA芯片计划
3.1 FPGA逻辑成果布局及其总体计划
为了简化计划,实现体系大量逻辑电路的集成,在计划中利用了现场可编程逻辑门阵列器件(FPGA)。FPGA重要实现以下逻辑成果:定时脉宽门控、计数丈量、地点锁存、译码、总线的驱动和扩展以及数码表现的控制等成果。其逻辑成果顶层布局如图4所示。FPGA器件选择Altera公司FLEX10K10系列的EPF10K10LC84-4芯片。该芯片集成有1万个等效逻辑门,含有572个逻辑单位(LEs)、72个逻辑阵列块(LABs)、3个嵌入式阵列块(EAB s),并具有720个片内寄存器,可以在不占用内部资源的条件下实现6144 bit的片内存储器;内部模块间采取高速、延时可预测的快速通道连接;逻辑单位间具有高速、高扇出的级联链和快速进制链;片内另有三态网络和6个全局时钟、4个全局清零信号以及丰富的I/O资源;每个I/O引脚可以选择为三态控制或集电极开路输出,可以通过编程控制每个I/O引脚的速率以及I/O寄存器的利用。
FPGA利用的开辟软件为MAX+PLUS II。该软件是一个集计划输入、编译、仿真和编程为一体的超等集成环境;提供了主动逻辑综合东西,可以在多个逻辑层次上对高级计划形貌举行综合、优化,大大收缩了编译时间,加快了FPGA计划开辟进程。MAX+PLUS II支持种种HDL输入选项,包括VHDL、Verilog HDL和ALTERA的硬件形貌语言AHDL;提供丰富的库单位供计划者调用,此中包括74个系列的全部器件和多种特别的逻辑宏单位(macrofunction),以及新型的参数化的巨单位(magafunction)。
FPGA计划颠末4个根本阶段:计划输入、计划编译、计划验证和器件编程。起首,根据体系的逻辑成果天生顶层布局图,如图4所示。然后,分成几个小模块举行下一级计划。由此由上而下阐发其逻辑成果,从底层举行计划编译,每一级都举行波形验证。当末了顶层模块的逻辑成果在波形仿真中餍足体系时序请求时,才可举行器件编程。
由于FLEX10K在事变时期,将配置数据生存在SRAM中,而SRAM数据是易丢失的。SRAM单位必须在器件加电后装入配置数据,且配置完成后,它的存储器和I/O引脚必须被初化。初始化后,器件进入用户模式,开始体系运行。对付FLEX10K系列器件,Altera公司提供了4种配置方案:EPC1(或EPC1441)EPPOM方法设置装备摆想法、被动串行法、被动并行同步法、被动并行异步法。对器件举行配置时,我们先用被动串行法(passive serial)。这种方法是通过下载电缆对器件举行配置的,得当于调试阶段。当整个体系计划完成后,利用EPPOM方法对器件举行配置。如许固化在EPROM中的数据将在体系上电时对FPGA芯片配置,此中EPROM芯片选用EPC1441。
3.2 FPGA单位模块计划
FPGA单位主由脉冲计数模块,定时控制模块,地点锁存、译码、总线驱动、扩展模块这3大模块构成。此中脉冲计数模块和定时控制模块用来实现对输入脉冲的计数次数的丈量;地点锁存、译码、总线驱动和扩展这部分模块,重要实现各数据在总线上的分时传输。总线上的数据包括脉冲计数数据和电源模块的高压数据,以及来自单片机的数据总线D0~D7的数码表现用数据。此模块中的地点译码部分,提供锁存单位片选信号。图5所示为FPGA顶层电路图。
在详细计划时,思量到计数脉冲宽度为0.1~100μs,最高计数率为2MHz,即计数码数达7位,以是计划中的脉冲良数模块就相称于1个7位的BCD加计数器;而定时控制模块相称于1个7位的BCD减计数器。减计数器的预置初始值由定时选择开关控制,从而控制数的时间。CLR信号为“计数键”孕育产生的一脉冲信号,标记计数开始,而减计数器减到0时加计数器即克制计数。这部分计划通过调用MAX+PLUS II提供的库函数用AHDL语言连合图形输入完成。地点译码、锁存、总线驱动模块重要由D触发器和I/O接口计划而成。由于数据传输中用的是双向输入/输出端口,但是Altera芯片的引脚端口并不可以直接利用,必要加1个三态的逻辑门,因此,总线接口部分采取这2种函数本相(三态门和双向端口)举行组合计划。
3.3 FPGA成果模块仿真时序
在整个FPGA计划中,各单位模块都是颠末严格的计划验证之后才连续上一层计划的。这里重要利用MAX PLUS II的TIMER举行波形仿真,来验证各子模块的成果,果断当时序是否餍足请求。若时序稍有不同错误,乃至仅是小毛刺,也要立即变动输入计划。如许,计划的精度才高,体系事变才稳固。当每个模块终极都在时序上餍足逻辑成果需求时,计划才华完成。图6为FPGA在MAX PLUS II环境下综合计划后的时序仿真波形图。
4 单片机软件计划
软件部分重要是单片机AT89C51对体系举行控制及相应的数据处理惩罚,整个控制流程如图7所示。
结束语
本文给出了一种用于核物理实行中的G-M计数装置定标器的新计划方案。此方案在传统的实行原理下,对旧仪器在电路和成果上做了较大程度的改造。在计划中采取EDA计划头脑,以AT89C51单片机作为数据传输的控制内核,用Altera现场可编程逻辑器件(FLEX10K系列的FPGA)对内核计数部分电路举行效而机动的集成,并在此底子上,扩展了数据的存储成果,增长了与PC机通讯的RS232串行接口,从而越发智能化。