中频数字接收机中的NIOSⅡ设计与应用

(整期优先)网络出版时间:2019-01-11
/ 3

摘    要  SOPC(可编程片上系统)技术是当前嵌入式系统开发的一个研究热点,基于SOPC技术的嵌入式处理器在通信领域也越来越多地被广泛应用。本文介绍一种基于嵌入式软核处理器NIOSⅡ的中频数字接收机,分析了新一代NIOSⅡ内核处理器的特点,并从硬件和软件两个方面来论述NIOSⅡ系统设计的开发流程。同时论述了该系统在通信领域具有较好的应用价值。

关 键 词  SOPC;NIOSⅡ;中频数字接收机;软件无线电;数字下变频

1          引   言

       随着现场可编程逻辑阵列(FPGA)技术的日益成熟,基于片上可编程系统(SOPC)的嵌入式处理器越来越多地受到人们的关注,嵌入式系统已广泛应用到通信、家电和控制等众多领域。将NiosⅡ嵌入式处理器软核应用到数字化接收机中,在FPGA中嵌入NIOSⅡ软核处理器,大大增强了整个设计系统的灵活性和完整性。在中频数字接收机中,完成模拟中频信号预处理,数模变换,数字下变频等信号接收功能。通过软件编程的方法实现了嵌入式处理器在整个系统中的应用,使得硬件设计更加快速、灵活、完善,大大提高了整体系统的性能,并进一步降低研制成本。

2          NIOSⅡ软核

       2004年6月30日,Altera公司发布了支持新款Cyclone Ⅱ FPGA系列的NIOS Ⅱ 嵌入式微处理器。在Altera公司提供的软件SOPC中加载NIOSⅡ核和相应的外围接口以及与定义响应的自定义指令,然后对设计进行综合,下载到FGPGA中就可以设计一个具有特定功能的嵌入式处理器。

2.1      NIOS II 简介


        NIOS Ⅱ系列嵌入式处理器是一款通用的RISC结构的CPU ,它定位于广泛的嵌入式应用。使用领先的设计软件———Altera 公司的Quartus Ⅱ软件以及SOPC Builder 工具,可以将NIOS Ⅱ处理器嵌入到系统中。另外,NIOS Ⅱ处理器具有完善的软件开发套件,包括编译器、集成开发环境( IDE ) 、JTAG调试器、实时操作系统(RTOS) 和TCP/ IP 协议栈。图1显示了NIOSⅡ处理器核的模块图。

113341028.gif

图1  NIOSⅡ处理器软核的模块图

2.2      NIOS II 系列嵌入式处理器的特点

  (1) CPU 结构:32 位RISC指令集(32 位数据线宽度,32个通用寄存器,32 个外部中断源,2GB 寻址空间) 。

  (2) 片内调试:基于JTAG边界扫描测试的调试逻辑,支持硬件断点,数据触发,以及片外和片内的调试跟踪。

  (3) 定制指令: 最多达256 个用户定义的CPU 指令。

  (4) 软件开发工具:NIOS Ⅱ的IDE ,基于GNU 的编译器,硬件辅助的调试模块。

(5) 可配置外设:60 多个外设,提供种类繁多的配置选择,包括USB、存储控制器等。

(6) IP、TCP/ IP 协议栈: 提供了Berkeley socket API支持IP、ICMP、UDP 和带拥塞控制的TCP、RTT 固件及快速恢复/ 快速重传。

(7) RTOS:MicroC/ OS2 ⅡRTOS ,提供源码的操作系统,支持航空设备RTCA DO2178B 标准的强制要求。

3          系统设计

3.1 系统结构

       1992年5月,MILTRE公司的Jeo Mitola首次明确提出了软件无线电(SWR)的概念。软件无线电技术具有结构的开放性、软件的可编程性、硬件的可重构性以及功能和频段的多样性等特点,无论在军事还是在商用通信中都有着巨大的应用潜力,它可使通信系统具有良好的灵活性及可扩展性. 为使软件无线电中实现数字中频滤波技术,其中数字下变频器是软件无线电数字中频滤波技术的关键部分。本文利用嵌入式处理器NIOSⅡ对中频数字接收机中的数字下变频器进行配置和数据接收,提出一种软核与硬件逻辑相结合的中频数字接收机设计,可大大提高对信号处理,接收的灵活性和完整性。

       如图2所示。本系统首先对中频信号经过放大器,带通抗混叠滤波器,模拟AGC等预处理过程,然后经过ADC进行中频带通采样,进入数字部分实现数字下变频、码速变换、信道化、时钟回复、解调、解扩等功能。

113352667.gif

图2  系统总体框图

      在具体设计中FPGA芯片采用Altera公司的Stratix系列的EP1S10F芯片,片内结构是以32bit NIOSⅡ处理器作为核心,本系统通过嵌入式处理器NIOSⅡ来进行整个接收设备的控制,可以灵活地提供整个系统的可变时钟,各类控制信号以及专用芯片的寄存器配置。通过ByteBlaster下载电缆进行软件调试,处理完的数据通过FIFO进入FPGA,做必要的处理后通过BNC头输出数据,或者进行存盘进一步处理。

3.2 硬件设计

     硬件设计使用的是Altera公司的QuartusⅡ4.2软件,它提供了完整的多平台设计环境,能满足各种特定设计的需要,是单芯片可编程系统设计的综合性环境和SOPC开发的基本设计工具。采用其中的SOPC Builder可在图形化界面内定制一个从硬件到软件的完整系统,大大提高了设计效率。图3为NIOSⅡ应用设计流程图。

113377298.gif

图3  NIOSⅡ 应用设计流程图

3.2.1        主要模块功能介绍

3.2.1.1 信号采集

       信号采集电路主要由前端预处理和模数转换器(AD9245) 组成。模数转换器采用的是ANALOG公司的产品AD9245,其最高工作速率可达80MHz ,输入范围1Vp-pto2Vp-p可选,采用3V供电时功耗只有366mW,各项指标均适合于本设计,具有较好的性价比。对于采样速率的确定问题,此处既可以使用过采样又可使用欠采样。过采样是指根据Nyquist采样定理进行采样,它特别适合于基带信号的采样。当我们接收的信号中频载波频率较高而信号的带宽相对较窄时,若还使用过采样,则对采样速率要求较高,同时也给后续DSP 器件的实时处理带来压力,在此情况下可以考虑采用带通采样技术 。

3.2.1.2 数字下变频器

       数字下变频技术是软件无线电的关键技术之一,本设计中采用Harris 公司的数字正交调谐器HSP50214B实现数字下变频。

其前端处理速度高达65Msps,后端处理速度最高达55Msps。总的抽取因子范围:4~16384,输出采样速率可达12.94Msps,输出低通带宽最宽为982kHz(IF带宽1.96MHz)。最高支持14bits字长的数据并行输入,输出形式灵活多样,既可并行输出又可串行输出,既可选择直角坐标数据输出又能选择极坐标数据输出,可选择输出幅度、瞬时相位和频率等参数。另外,HSP50214B环内带电平检测器,可为IF自动增益控制提供支持。HSP50214B功能非常强大,使用相当灵活,可以解调AM、FM、FSK信号。与HSP50210一起使用,还可以解调SSB和PSK信号。

3.2.1.3 数字科斯塔斯环

       数字科斯塔斯环采用的是Harris 公司的芯片HSP50210它的主要功能有:匹配滤波、直角坐标向极坐标转换、软判决限幅、AGC 微调、同步误差检测和系统工作状态检测,HSP50210 是中频数字处理单元的关键部分,它的工作性能直接影响着整个系统的误码率,因此必须仔细考虑,其中的难点是同步环路的配置。

       HSP50210是Harris公司生产的数字科斯塔司环专用电路,其功能也很强大。时钟处理速率高达52MHz,内部具有以下功能:(1)可选升余弦匹配滤波器/积分和去除滤波器(I/D滤波器);(2)二阶载波和码元跟踪滤波器;(3)自动增益控制电路;(4)鉴频器;(5)锁定检测器;(6)数据质量和信号电平检测电路;(7)直角坐标向极坐标转化电路;(8)8-Bits微机控制接口。

3.2.1.4 控制电路

      在FPGA内部,加入一些控制模块,外设进行控制,如HSP50210的初始化模块和对HSP50214B的初始化程序,并且对器其配置,写控制字,完成正确读写功能。

3.2.2        设计步骤

     硬件设计步骤如下:

     1)       本设计中的CPU软核,我们选择了NIOSⅡ/f型,它占有了1800左右个逻辑单 元,当SoPC Builder软件产生一个处理器后,还需完成以下操作,配置CPU硬件选项,增加外围设备,定义处理器启动地址,设置外围设备和设定装入指令存储器或数据存储器用于初始化片内ROM,RAM的文件。

     2)       在SOPC builder下添加对应接口模块,然后生成对应VHDL文件,根据定制的结果,自动生成针对特定硬件环境的C语言和汇编语言的头文件和函数库。

    3)       编写DDC控制模块,完成H50214B的读写功能。

    4)       在FGPA中完成正确的ADC、锁存器,FIFO的时钟信号,初始化HSP50210,并控制FIFO的读写。

    5)       使用QuartusⅡ4.2软件和ByteBlaster MV下载电缆通过PC机直接配置Altera器件。

3.3 软件设计

软件设计步骤如下:

    1)        采用NiosⅡIDE开发环境编写程序源代码C/C++程序,编译源代码生成执行代码。

    2)        应用代码调试完毕后,将.elf文件存储在片内存储器中,规定文件初始化ROM或RAM,当Nios CPU复位后,自动执行应用程序。

主程序的流程图如图4:

113384129.gif

图4  主程序流程图

    整个系统FPGA设计,在使用Quartus编译后,整个系统的设计逻辑单元使用了4360个,占EP1S10F芯片内部资源的41% ,体现了系统设计的高效性。系统有以下几个特点:

  (1)由于采用Altera公司的NIOSⅡ软核微处理器,嵌入了它的FPGA开发的产品具有高度集成的特点,在一块Stratix芯片中我们不仅集成了一个CPU,而且CPU周边的硬件逻辑也一起集成进去,我们还可以在FPGA中加入解调算法和显示接口模块等。从而使该片内的外围接口尽量减少,达到高度集成的目的。

  (2)NIOSⅡ嵌入式微处理器成本低,是相近的竞争产品的50%,因此大大提高了整机的性价比。

   (3) 采用的Altera公司的可编程逻辑器件本身就具有易于扩展和升级的固有特性,因此系统具有可升级和可扩展性,不仅可以对系统集成的软件进行更新升级,还可更改FPGA的内部设计,灵活的完成不同的需求。

4          结束语

       利用SOPC解决方案,可以很方便的生成基于NIOS处理器的片上系统,可缩短系统开发时间和增加系统的灵活性,并且减小了PCB板的体积,其设计方式正在受到越来越多的开发设计者的重视。本文介绍的系统达到了预期的效果,完成基于NIOSⅡ软核微处理器的应用设计,系统可对接收不同种类的中频信号,实现数字化中频接收机的基本功能,我们还可对其进一步优化和升级,使之推广应用。

嵌入式随着新一代的Nios软核处理器的推出,它的性能将更加强大,基于NiosⅡ的开发将继续推进嵌入式系统在网络,通信及工业技术领域的应用和工业技术领域的创新。

     

[1 ] Altera , corp. The NiosⅡSoftware Developer’s Handbook[CP/DK]. http://www. altera. com. cn.

[2 ] Altera , corp. The NiosⅡProcessor Reference Handbook[CP/DK]. http://www. altera. com. cn.

[3 ] Altera ,corp. NiosⅡHardware Development Tutorial[CP/DK] . http:// www. altera. com. cn.

[4 ] 潘松,黄继业,曾毓. SOPC技术实用教程[M]. 北京:清华大学出版社, 2005

[5 ] 周博,邱卫东,陈燕,周学功,方茁等. 挑战SOC——基于NIOS的SOPC设计与实践[M].北京:清华大学出版社,2004

[6] 郭书军,王玉花,葛纫秋. 嵌入式处理器原理及应用——Nios系统设计和C语言编程[M]. 北京:清华大学出版社,2004

[7] 任爱峰,初秀琴,常存等. 基于FPGA的嵌入式系统设计[M]. 西安:西安电子科技大学出版社,2004