摘要:本文介绍如何在Quartus II开发平台上,使用Altera Nios II软核处理器实现信道模拟器的控制功能。使用Nios II软核处理器是一项新的设计思路和方法,本文从实例开发角度,详细讨论了基于SOPC的信道模拟系统控制单元硬件的设计思路与实现方法。 关键词:嵌入式系统;SOPC;Nios II;信道
Abstract: This paper shows how to implement the control function of the channel simulator, by using the Nios II soft IP processor in the Quartus II. This is a new method. In the term of examples, it details the method to design the control part in the channel simulator system with the SOPC. Key words: embedded system; SOPC; Nios II; channel 1. 引言 1.1 技术背景 数字无线通信系统设计的重要目标之一是使系统具有很强的抗干扰能力。为了实现这一目标,设计人员在研发阶段需要对实际通信环境中的无线信道可能存在的各种干扰(多径、噪声、同频信号等)进行虚拟实现,以便对所设计系统进行调测;同时,为了评估移动通信设备的抗干扰能力,也需要在实际通信环境中进行反复实验,这些工作必将耗费大量的人力物力。因此,无线信道模拟器是进行数字无线通信系统调测不可或缺的仪器之一,其可以灵活、准确、高效地模拟各种特征的无线信道,从而可以高效、经济、快捷地完成对数字无线通信系统调测和通信设备性能评估等工作。 1.2 Nios II处理器内核介绍 SoPC是SoC 技术和可编程逻辑技术结合的产物,首先它是SoC,即可以由单个芯片完成整个系统的主要逻辑功能;其次,它还是可编程系统,具有灵活的设计方式,可裁减、可扩充、可升级,并具备一定的系统可编程功能。 Altera公司的NiosⅡ处理器,是一种采用流水线技术、单指令流的通用RISC 软核CPU。Altera公司以IP核的方式将它提供给设计者。它能从外设和存储器接口库中进行选择,将处理器、外设、存储器和I/O接口集成在单片FPGA中,定制自己设计的系统,并且对各种外围设备的实现提供了强大的支持平台;SOPC Builder系统开发工具可以自动生成组件以及联接组件的总线,所有软件开发任务编辑、构建、程序调试都能够在IDE下完成,从而简化了开发过程,降低了系统成本、复杂性以及功耗,并且通过移植到Altera的结构化ASIC中,实现低成本、大批量产品。 2. 控制板的实现原理 本次开发的信道模拟系统主要由信道控制单元、射频处理单元、操控计算机三部分组成。其中信道模拟器控制单元将操控计算机生成的信道数据转化为基带控制信号;而射频处 理单元的主要工作是将基带控制信号转化为真实的射频信号。控制板分别与电源和射频板通过 电缆形式连接,控制板与计算机通过通讯端口连接。其整体结构框图如图1所示。 
图1信道模拟器系统框图 信道模拟系统的控制单元是信道模拟控制环节的重要部分。它接收由操控计算机产生并下载的基于场景的信道参数,缓存在控制板的存储器中,然后根据一定时序逻辑读取存储器中的参数并产生SPI数据送给射频处理单元的DA转换器。信道模拟器的控制单元采用FPGA内嵌一款软核CPU的设计思想,这种设计价格低廉,对于一般的应用系统而言添加软核几乎不用添加成本,并且设计灵活,设计中SPI、USB、网口等外部接口可以灵活的添加和改造。本文主要针对系统的硬件部分实现进行介绍。 3. 控制单元硬件实现 3.1 控制单元硬件结构 根据控制单元在系统中要完成的功能:接收计算机产生并下载的信道参数,缓存在控制单元存储器中,读取存储器中的数据并产生SPI时序数据送给射频处理单元的DA转换器。为了完成这样的功能,控制单元内部硬件采用了如图2所示电路结构。

图2 控制单元内部的硬件关系框图 从图2可以看出,整个硬件系统主要为一片FPGA实现,外加存储电路和接口电路等,而FPGA内部模块则是本次设计的重点,其详细结构如图3所示,由Nios II 处理器内核、Avalon总线模块、SDRAM控制器模块、片外存储器三态桥模块、串口收发器模块、以太网 接口控制模块、SPI接口控制模块、片内逻辑等部分构成。  图3 控制板内部FPGA相关电路结构
3.2 Nios II 嵌入式系统设计流程 硬件平台是搭建系统的基础,由于Nios II 处理器区别与传统意义的CPU,所以创建Nios II 嵌入式系统也有很大的不同,Altera公司的SOPC Builder系统开发工具是专为此设计的,它负责以上Nios II 处理器、各种外设、逻辑等模块的添加,并分配地址空间、中断优先级。图4是Nios II 嵌入式系统设计的详细流程。

图4 Nios II 嵌入式系统设计流程 1) 首先创建Altera的工程文件(.bdf)。 2) 用SOPC Builder创建Nios II 嵌入式处理器,配置系统外设,并连接这些IP模块组成系统。一般主要加入的IP如上图4的Nios II 32位CPU、Avalon总线、存储控制器、串口控制器、网口控制器等等。 3) 生成Nios II 处理器系统模块。在完成以上的CPU和各功能模块构造后,就需要用SOPC Builder对Nios II 处理器系统模块进行综合生成。 4) 在系统组建完成后,把Nios II 嵌入式处理器系统的各个端口对应到FPGA器件的引脚上,这些引脚再连接到控制单元的其它硬件。这时,一块包含了CPU和其外围电路的片上系统就生成了。 3.3 Nios II 嵌入式系统搭建的关键环节 Nios II 嵌入式处理器设计的关键环节分为内核设计、片上总线设计、IP整合和验证等。 1) Nios II 处理器内核配置 Nios II 是可重配置的RISC架构的嵌入式处理器,由于本系统相对来说比较庞大,对系统性能要求也比较高,而所选的FPGA有2万个逻辑单元,所以选择了占逻辑单元较多的快速(Nios II/f)内核,并尽量配置较大的指令和数据Cache。 2) 片上总线设计 Avalon总线是SOPC中连接片上处理器和各种外设的互连机构,它定义了主从结点之间通信的信号类型和时序关系,由FPGA内部的逻辑和布线资源组成,应用于芯片内部总线。Avalon总线结构的基本原则是:周边设备的接口与Avalon总线时钟同步,不需要复杂的异步握手确认信号;地址、数据和控制信号使用分开的专用端口。本设计中需要连接的各个IP核和内部逻辑都要通过Avalon总线高效的连接到Nios II 处理器核上。 3) IP整合和验证 在系统设计中,设计和选用了UART、SPI、GPIO、以太网口等接口IP核和片内存储器、片外SRAM、FLASH,SDRAM等存储IP核,这些IP核一起搭建了一个完整的SOC系统。再通过整合以上的这些IP核就构成了以Nios II 32位 CPU为核心的嵌入式CPU系统,用来完成信道模拟系统控制单元的各项功能。 系统中的IP核大多在整合之前都经过Altera公司的全面验证,其可靠性是比较高的。前期仿真只是进行了部分模块的功能验证,后来直接把程序下载到硬件电路上对系统进行验证。当Nios II内核频率选用50MHz时,系统送出的SPI时序可以达到116KBps,结果表明可以达到预期的效果,完全满足信道模拟器系统控制板的各项功能指标。 Altera的Nios II 软核CPU开发工具SOPC Builder能提供简洁的操作方式,能将用户的数字电路模块封装成标准的Nios II 软核外设模块,这使得Nios II 软核可以很容易的与用户逻辑结合,构成功能更加强大的SOC系统,本设计中的USB接口模块就属于这种方式。 4. 结论 由于SOPC Builder开发环境的完备功能,对于大多数外设开发了相应的驱动程序,使得硬件的验证和软件的开发速度加快,可以把注意力集中在系统整体构架和功能上来,而无须过多的考虑细节性的电路设计,同时还可以得到比较好的系统稳定性和可靠性。本次设计正是采用Nios II 软核CPU这一特点进行嵌入式系统硬件设计。该信道模拟系统控制单元已应用于实际系统当中,目前工作状态稳定可靠,能很好的模拟各种无线衰落。 本文创新点:基于Nios II +µC/OS平台设计的信道模拟控制单元能够实时高效的支持用于模拟各种场景的无线衰落信道;同时,充分利用了Nios软核灵活定制的特点,减少了PCB面积,降低成本,在保证系统性能的前提下使得模拟仪器更加小型化。 5. 参考资料 1. 张岩,陈利学,丁鹏,杨大千.基于SOPC的嵌入式Web服务器设计与实现.微计算机信息,2007,1-2:160-162。 2. 胡强斌,孙军.Nios软核处理器在DTV调制器中的实现.微计算机信息,2006,8-2:149-150。 3. 彭澄廉,挑战SOC-基于Nios的SOPC设计与实践,清华大学出版社,2004。 4. 任爱锋,基于FPGA的嵌入式系统设计,西安电子科技大学出版社,2004。 5. 郭梯云,杨家玮,李建东. 数字移动通信,人民邮电出版社,2000。 胡广书,数字信号处理(理论、算法与实现).,清华大出版社,1997。 |