利用FPGA固有特性的远程监控系统设计_第1页
利用FPGA固有特性的远程监控系统设计_第2页
利用FPGA固有特性的远程监控系统设计_第3页
利用FPGA固有特性的远程监控系统设计_第4页
利用FPGA固有特性的远程监控系统设计_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、【Word版本下载可任意编辑】 利用FPGA固有特性的远程监控系统设计本系统立足于利用Intemet实现核环境信息的远程采集。在实现上,采用了基于SOPC技术的嵌入式解决方案,通过在FPGA中嵌入NioslI软核处理器和所需外设的IP Core(硅知识产权核),然后再配备相应的网络接口,实现利用互联网开展信息的传输。 另外,通过开发用于控制信息采集子系统的IP核,利用FPGA固有的硬件并行特性,本系统做到了对多个信息源开展真正意义上的并行监控,即在开展射线探测的同时也可以开展射线和温湿度等信息的获取。 1 系统硬件设计及实现 在本系统的设计中,硬件上为了做到通用性,在构造上划分为两部分,即用于

2、完成现场监控和数据远程传输的通用网络平台和用于完成温湿度、液位、及辐射总量测量等工作的环境信息采集子系统。其构造分别如图l、图2所示。两个子系统通过一条40芯扁平电缆连接。在软件上,考虑到利用互联网开展远程数据传输的复杂性,使用嵌入式操作系统和TCPIP协议栈是必然的选择,因此硬件上也围绕这个关键点开展设计。 1.1 Niosii软核CPU NiosII软核CPU是A137ERA公司推出的一种通用32位RISC嵌入式处理器,它特别为可编程逻辑开展了优化设计,并配备有功能完善的开发套件,包括C/C+编译器、集成开发环境(IDE)、JTAG调试器等,是ALTERA公司可编程单芯片系统解决方案的。

3、作为一个软核处理器,NiosII提供了可配置的硬件及软件调试特性,包括基本的JTAG的运行控制(运行、停止、单步、存储器等)、硬件断点、数据触发、片内和片外跟踪、嵌入式逻辑分析仪。这些强大的工具可以在开发阶段使用,调试通过后便可以去掉,节省资源。NiosII处理器还提供了高、中、低三种不同性能的内核,通过与ALTERA提供的超过60种IP核(UART、时钟、DMA、SDRAM、并行I0等)结合使用,设计师可以方便地针对特定的应用创立一个在处理器、外设、存储器和IO接口方面都完美的方案。除此以外,NiosII还有很多其他的特性,如指令定制、硬件加速器等。 1.2 网络接口单元 以太网接口芯片采用

4、了SMSC公司专门用于嵌入式产品的LAN91C111快速以太网控制器。该芯片内部同时集成了以太网介质访问控制器(MAC)及物理层收发器(PHY),支持10100M全双工传输模式、自动协商及流控等功能。其主机接口具有同步总线、异步总线等多种工作模式,可以方便地与各种体系的CPU连接。本设计中使用了异步总线接口模式,并与FLASH共用地址线和数据线,通过FPGA上的适配模块连接到Avalon片内总线。 1.3 存储器单元 由于存储操作系统内核、应用程序代码、程序数据等的需要,本系统使用了一片型号为AM29LV320D的FLASH芯片。该芯片由AMD公司推出,容量为4MB,支持CFI接口,其与AvM

5、on总线的连接需要FPGA内部的总线适配模块开展时序匹配。SDRAM用于存储运行期的程序代码和数据,HY57V563220B(L)T为现代公司推出的容量达16MB的SDRAM,由于该芯片端口宽度可达32位,因此系统中使用单芯片即可。SDRAM读写时序比较复杂,需要在FPGA中集成专用的SDRAM控制器IP核与其对接。 2 总量计数IP核 如图2所示,或探测器获得的信号经由两级放大器串接组成的线性脉冲放大器放大后送至以LM393为的甄别电路开展比较,滤掉噪声,输出矩形的脉冲信号。对于这个信号的处理,以MCU(微控制器)为的传统核探测仪只能通过MCU上已有的硬件资源(如定时器)结合软件来实现。 这

6、种方法受制于硬件资源和MCU的速度,难以对多通道信号源开展并行处理。本系统中,总量计数IP核即是针对此问题而专门设计的硬件,使用VHDL语言设计实现,其内部接口符合Avalon片内总线从设备接口规范,可以方便地挂接在Avalon总线上,作为NiosII软核cPu的一个专用外设。 总量计数IP核是网络平台FPGA中子板接口的一部分,其构造如图3所示。辐射总量测量与辐射总量测量原理类似,下面以测量为例介绍其工作原理。时钟源模块通过对主时钟分频产生一个O.1秒的脉冲信号,作为定时器计时的基准源。定时器则按照命令存放器传过来的采集时间产生所需的定时信息。 根据定时器的定时信息和命令存放器的命令,控制计

7、数器对测量模块传过来的脉冲信号开展计数,从而获得辐射总量的计数值,该计数值被存进FIFO中;而在另一侧,NiosIICPU通过Avalon总线向IP核的命令存放器写入相应的命令字实现对各通道的控制,例如启动总量计数、关闭总量计数、设置采集时间及清空FIFO等。 值得注意的是,来自甄别电路的或计数脉冲是与本IP核工作时钟异步的信号,而计数器的值终是需要存人。FIF0的,因此对或计数脉冲都以主时钟开展二次锁存并整形,使每个异步计数脉冲产生一个只持续一个主时钟周期的同步脉冲。以该脉冲开展计数,不仅解决了异步信号同步的问题,而且有效地滤除了干扰脉冲,使计敦值准确。 3 系统的软件构造 为了实现利用In

8、temet开展远程数据传输,本系统在NiosII上移植了MicroCOS2实时操作系统和LWIP(轻量级IP协议栈)进而在其上开发信息采集软件。 3.1 MicroCOS2及LWIP的移植 此部分工作主要是针对本系统的特定硬件开展移植并编写如温湿度传感器SHT75、总量计数IP核等所需的各种驱动,因此深入了解软件的各层构造和细节是移植成功的关键。 HAL即硬件抽象层,是NiosII开发套件的一部分,由ALTERA公司提供,它封装了系统中硬件操作的相关细节,驱动程序也作为它的一部分。HAL共抽象了六种器件模型,包括字符模式器件、定时器件、文件子系统、以太网器件、DMA器件和Flash器件,并为每

9、一类器件提供一系列的统一的初始化函数和访问函数接口,通过这种方式,HAL向上一层提供了一个类POSIX的API接口,即硬件抽象层应用编程界面。 针对NiosII的软件开发,其实是建立在HAL之上,而非直接面向NiosII硬件本身。本系统测量模块所对应的各个接口IP核均属于字符模式器件,因此驱动程序需按HAL中字符模式器件模型来开展编写。 MicroCOS2是一个适合于小型、微控制器的可剥夺实时操作系统。它支持56个用户任务,其内核为占先式,支持信号量、邮箱、消息队列等多种常用的进程间通信机制,通过它为应用程序提供所需的多任务环境。由于MicroCOS2自身并没带有协议栈,因此需要移植一个TCP

10、IP协议栈LWIP,从而向上层提供了一个类似UNIX套接字的接口。LWIP支持以下一些网络协议:IP、ARP、ICMF、UDP、TCP。该协议栈需要20KB的代码存储空间及4KB的数据存储空问,同时在构建系统时还需要添加一个专供其使用的定时器。 图4为分析得到的系统软件的启动流程。在该流程图中,alt_sys_init()用于初始化系统中的设备,在这个过程中会调用设备驱动程序提供的初始化程序。Lwip_stack_init()用于初始化TCPIP协议栈。而tcpip_init_done()是一个在协议栈初始化后被调用的函数,通信服务器的任务也在其中创立。有一点需要注意的是。所有基于LWIP的任

11、务,都应该使用sys_thread_new()函数来创立,而不是直接使用OSTaskCreate()。,所有的初始化都准备好后,即调用OSStart()来启动RTOS开展任务调度。 3.2 信息采集程序的设计 本模块作为一个任务,运行于MicroCOS2实时操作系统之上,完成对各个探测子系统基于策略或远程指令的测量控制,获取的信息被保存到指定的内存缓冲区,并根据要求将结果返回到远程主机上。对于温湿度测量,由于SHT75传感器的湿度输出呈一定的非线性,为了获取准确数据,需要根据给定的公式对所获得的数据开展修正,而温度输出则不需开展补偿,将数字输出转换为实际温度值即可,详见SHT75数据手册。对于

12、总量计数的处理,本模块只是简单地将数据打包后交给通信服务器传回远程主机。 3.3 通信服务器 本任务通过sys_thread_new()函数创立,作为一个服务器*约定的端口,等待远程主机的连接,提取远程主机的命令,通过消息队列将所获得的命令发送到信息采集任务;同时也根据要求将信息采集任务获得的各种数据分类发回远程主机。 LWP提供了标准的Berkeley套接字编程界面,这个界面提供了三种类型的套接字,在这里使用了流式套接字,这是一个面向连接的可靠的数据传输服务,也就是说使用的是TCP协议。通常,服务器接收到并发服务请求,要激活一新进程来处理这个客户请求,但出于系统资源和简化设计的考虑,在这里服务器同一时刻只能承受一个连接请求,而这种简化事实上也是可以满足设计需要的。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论