基于FGA的NIOS II系统的探测器信号处理电路的设计方案
2018-01-18张伟张建霍亮高岩孙天澳李旭升王云亮
张伟+张建++霍亮++高岩++孙天澳++李旭升++王云亮
摘 要本文将介绍基于FPGA构建SOPC硬件系统,通过NIOS II软件系统实现具有探测信号的处理,稳峰控制等特点的电路设计方案。
【关键词】FPGA NIOS II系统 探测器
探测器信号处理电路是模拟电路和数字电路的混合设计,对稳定性,信号处理速度,信噪比等性能都有着很高的要求,同时也需要控制器与处理器对设备进行控制和互相通讯,因此在实现信号处理的过程中对硬件设计和软件设计都有很高的要求。本文提出基于FPGA的数字电路设计和NIOS II系统化处理器的信号处理设计方案,具备了在探测器信号处理中高集成化,多控制应用等特点,有条件满足探测器信号处理电路设计和软件设计的需要。
1 FPGA以及SOPC系统介绍
数字电路的发展和应用在现有产品的开发中起到的不可或缺的作用。高集成化,系统化,低功耗,低成本等要求已经成为产品开发中的主要设计要求。Altera公司基于数字电路开发中的设计要求推出了Cyclone ii系列的FPGA,其特点是功耗低,成本低,大容量的运算逻辑门,高运算速度等,其性能的优越性已经能够满足民用级产品设计的高要求。
SOPC系统(片上可編程系统)是基于FPGA设计的NIOS II系统的硬件平台,Altera公司提供了三大软件为SOPC来服务:
(1)Quartus II;
(2)SOPC builder;
(3)Nios ii IDE;
其中Quartus II软件是对FPGA和CPLD的编程软件,可以使用VHDL和VeilogHDL等硬件描述语言进行编程,但是实现应用系统的编程较为困难,而且硬件描述语言与C语言编程之间不通用,加上FPGA系统设计的局限性,大大限制的FPGA的发展。不过,SOPC builder和Nios ii IDE软件为应用系统编程提供了一个沟通的桥梁,实现了在FPGA上构建硬件环境,使用Nios ii IDE软件通过C语言进行应用系统的设计,使FPGA具有更加宽广的应用范围。
Altera公司还开发了基于Matlab的Dspbuilder软件,使在FPGA中的NIOS II系统上实现DSP数字信号处理成为可能。
2 NIOS II系统设计应用
NIOS II系统是在FPGA构建的SOPC硬件环境上使用可定制的CPU处理器,通过其独有的Avalon总线分别与存储器和其他外设驱动进行连接,使用软件编程完成应用系统,再通过各个驱动接口与实际外设建立连接,从而构成一个完整的系统。
NIOS II系统所有接口驱动都是通过官方提供的IPcore来实现的,用户不需要编写底层的驱动,只要将需要的外设接口添加到FPGA构建的SOPC硬件系统中,再与实际外设连接,就可以通过NIOS II IDE软件中用C语言编程应用程序了。
同时还有第三方厂商提供的大量的IPCore,使用IPcore可以在硬件所需功能和工艺技术尚未确定的逻辑设计阶段很容易借助EDA综合工具修改与其他外部设备的连接,并且用户可以开发自定义的软核IPcore。
当需要推出新产品时,开发人员可以使用这些IPCore灵活的构建需要的系统,也可以重复利用并复制在不同的系统中。提高了系统的可读性,可靠性和可移植性。
NIOS II系统设计不但具有可重构性的应用特点,而且还提供完善的RTOS嵌入式操作系统应用平台,方便进行系统优化设计。
3 探测器信号处理电路
探测器信号处理电路总体框图如图1所示。
探测器信号处理电路的工作原理是信号通过前置放大器转换,然后通过主放大器转换成电路所需信号,经过阈值比较器处理,信号整形,计数,分频等操作完成对探测器输出信号所带信息的处理,再输出给上位机软件,并形成用户所需要的具体数据。
探测器信号处理电路还需要对信号对应的放射源能谱进行稳峰,同时通过信号的处理,反馈控制量给高压控制器,输出高压调整探测器输出信号,实现电路稳峰。
因此,由探测器的信号特点决定了信号处理电路的稳定性,处理速度,信噪比等性能都要满足高要求的系统设计。
4 系统整体总体设计方案
整体系统主要包括3个部分:
(1)模拟电子部分;
(2)FPGA数字电路集成设计;
(3)NIOS II系统控制设计;
4.1 模拟电子部分
模拟电子部分包括电源,信号放大,阈值比较器等,这里不多做介绍。
4.2 FPGA数字电路集成设计
这一部分主要分为对信号的整形电路和频率计数器的设计:
(1)信号经过阈值比较器后,数字电路设计针对探测器信号幅值和脉冲宽度设计信号整形电路,取高电平下降沿采样,对信号脉冲信号整形。
(2)整形信号经过D触发器使信号同步进入频率计数器,计数器的设计为2进制N位频率计数器。
4.3 NIOS II控制系统设计
NIOSII系统主要是信号处理硬件电路的驱动设计以及逻辑计算功能的实现。主要包括以下几个部分:
(1)DA数模转换器应用设计。信号输入阈值比较器与阈值电压比较输出高低转换电平,阈值电压由DA数模转换芯片输出。同时高压控制器输入电压也通过DA数模转换得到。
(2)AD模数转换器应用设计。将高压控制器输入电压,温度信号等模拟信号转换成数字信号,获取上位机所需显示参数值。
(3)与上位机通讯RS232或RS485信号通讯设计。
(4)逻辑运算部分。主要包括对信号计数量的逻辑运算、超道运算、跑峰复位、PID控制、上位机通讯、参数显示、调整控制等设计。endprint
(5)显示部分和调整应用设计。在设计中需要对阈值电压等参数进行调整和显示。显示部分一般为数码管显示或液晶屏显示,控制部使用按键或拨码开关等。
(6)外部FLASH和SRAM应用设计。
(7)其他硬件设备应用设计。包括添加时钟芯片驱动,USB驱动,SD或CF卡驱动,网卡驱动,触摸屏驱动,VGA驱动等,可以依照设计需要进行添加和编程应用程序。
(8)RTOS操作系统设计。uc/os ii, uclinux等多任务实时操作系统也可以嵌入NIOS II系統中使用。
本系统具有以下几个特点:
(1)FPGA 功耗低,成本低,适于产品开发。
(2)NIOS II系统的硬件驱动都是依据IPcore修改添加,并且应用灵活,可根据产品需求删减添加外部设备。
(3)FPGA本身运算速率高,可以满足系统运算速率的设计要求。
(4)构建SOPC硬件环境和使用NIOS II 系统编程,能够使FPGA实现数字电路和应用系统相结合的设计,满足产品高集成化的要求,而且软件修改方便,使硬件调整量减小,从而减少了硬件重新设计所带来的人力,时间,物力资源的浪费,
(5)RTOS嵌入式多任务实时操作系统可以提高产品的应用性能,而且具有多种操作系统可供选择。
5 结语
未来产品设计将向着高集成化,高处理速度,一体化,多功能应用等多领域发展。在现有的系统设计中,基于FPGA设计NIOS II系统具有设计灵活,软件配置完善,硬件设计集成化高,低功率,低成本等特点,在越来越多的产品设计中崭露头角,尤其是RTOS嵌入式操作系统与NIOS II系统的结合也为产品发展提供了更高的应用环境,因此为了提高产品科技含量以及更优化设计,使用基于FPGA的NIOS II系统的设计方案将会为我们提供一个新的发展方向。
参考文献
[1]李兰英等.NIOS II嵌入式软核SOPC设计原理及应用[M].北航出版社,2006-11-01.
[2]EDA先锋工作室.ALERA CPLD/FPGA 设计[M].北京:人民邮电出版社,2011-02-01.
[3]周立功.SOPC嵌入式实验教程(二)[Z].广州致远电子有限公司,2006.
作者简介
张伟(1980-),男,1998年7月毕业于吉林大学,本科,学士,丹东东方测控技术股份有限公司副总工程师,教授研究员级高级工程师,辽宁省“百千万人才”百人层次,享受国务院特殊津贴,主要从事同位素在线检测仪表的研发工作。
作者单位
丹东东方测控技术股份有限公司 辽宁省丹东市 118000endprint