基于SOPC技术的远程测控系统设计方案

2009-09-01 10:46:18来源: 现代电子技术

  0 引言

  在高温、高压、强放射性等恶劣环境下,由于测量者不能长期置身其中,使得测控非常困难。在Nios II软核CPU上移植μ c/OS-II实时操作系统和TCP/IP协议栈,容易实现网络通信,为远程测控提供了条件。以此为基础设计的嵌入式系统具有结构小巧、实时性强、稳定性高等特点,在工业测控领域中应用前景广泛。

  1 远程测控系统的硬件架构

  远程测控系统的硬件架构如图1所示。从图中可以看出,Nios II软核CPU及各种所需的外设IP均通过SOPCBui lder集成在一片FPGA中,构成本系统所需硬件的可重构部分,实现真正的可编程片上系统(SOPC)。

  1.1 I P核设计

  为了在低成本情况下完成预定功能,选择了Cyclone FPGA系列器件中的EP1C6。EP1C6无论从逻辑资源还是存储器均能满足设计要求。在本系统中,我们设计或选用了如下主要的IP核。

  1.1.1 UART带Avalon接口的通用异步接收器/发送器。UART内核执行RS-232协议,它为FPGA上的嵌入式系统和外部设备提供了串行字符流的通信方式。带Avalon接口的JTAG-UART内核还提供Nios CPU系统到PC机的连接通路,通过JTAG-UART在PC机上调试NiosCPU所需要的程序,并通过监控程序对整个系统的运行进行控制。

  1.1.2 GPIO。并行输入/输出内核。它提供Avalon从控制器端口到通用I/O口间的映射接口。该IP核是常规的外设控制接口。通过GPIO,对内控制SOPC系统中的其他部分,对外充当并行I/O接口,读取开关量,对LED、LCD等外设进行控制。

  1.1.3 SDRAM 该IP核是外部存储器SDRAM的控制接口。通过它完成SDRAM的时序控制。软件设计中, SDRAM的时序控制对用户是完全透明的。

  1.1.4 EPCS。带Avalon接口的EPCS设备控制器内核。该IP核允许Nios II系统访问EPCS串行配置芯片,该芯片主要用于存储程序代码或一些非易失性数据。

  1.1.5三态总线桥。该IP核是Avalon和Avalon-TriBUS总线以及Avalon和Wishbone总线的桥接控制器,用于连接两种不同总线。考虑有些外设需要自行开发I2CIP核,这些外设不能直接连到Avalon总线上,需要通过桥接控制器。

  1.2 检测和执行模块

  由于远程测控系统设计的目的不同,该模块选用的IP核也不完全相同。SOPC Builder自带的IP库中并不包含I2C配置接口模块,该模块需要根据配制芯片的寄存器特点和功能进行专门设计,并以I2C核的形式通过SOPCBuilder连接到系统的Avalon总线上。

  1.3 传输接口模块

  本系统有三种数据传输方式:串口、USB接口和以太网接口。串口、USB接口通过UART接Avalon总线。以太网接口芯片选用了SMSC公司的LAN91c11 1芯片,该芯片内部集成了以太网介质访问(MAC)及物理层收发器(PHY),支持10/1OOM全双工传输模式、自动协商等功能。LAN91C111芯片通过FPGA内的适配器模块连接到EP1C6内部的Avalon总线上,从而实现系统接入Internet。

  2 远程测控系统的软件体系

  本系统有两大功能:数据的远程采集及传送。考虑到使用互联网进行远程数据传输的复杂性,在设计中使用嵌入式操作系统和TCP/IP协议栈是必然选择。

  软件系统体系结构如图2所示。主要包括嵌入式操作系统的移植;网络协议栈的实现;应用级代码编写等部分。为了方便用户编程,Nios II IDE提供了设备驱动程序,即硬件抽象层(HAL)系统库。HAL应用程序接口(API)与ANSI C标准库综合在一起,可以使用类似C语言的库函数来访问硬件设备或文件,如printf()、fopen()等,而无须关心底层硬件的实现细节。

  2.1 移植μC/OS-II和LWIP

  μC/OS-II是一种可移植、可固化、占先式多任务实时操作系统内核。其规模较小、实时性和可靠性较高,Nios II集成开发环境(IDE)对μ C/OS-II具有良好的支持,故μC/OS-II是嵌入式操作系统的首选。它通过为每个任务分配单独的任务堆栈来保存任务工作环境,提供任务管理和调度服务。

  轻量级网络协议(Lightweight IP,LWIP)是TCP/IP协议栈的一种实现,它是一种专门针对嵌入式系统应用而设计的网络通信协议,由于LWIP实现的关键在于削减代码大小和内存消耗,但可以完成传统的TCP/IP协议的大部分功能,通常只需要大约40K的ROM和几十K的RAM即可运行,在网络协议栈初始化后,使用标准套接字API创建新任务访问网络协议栈。

  2.2 通信服务器

  本任务通过sys_thread_new()函数创建,作为服务器监听约定的端口,等待远程主机的连接,提取远程主机的命令,通过消息队列将所获得的命令发送到测控任务。LWIP提供了标准的Berkeley套接字编程界面,这个界面提供了三种类型,这里使用了流式套接字,这是一个面向连接、可靠的数据传输服务,数据无差错、无重复地发送,按发送顺序接收。通常服务器接收到并发服务请求后,要激活一个新进程来处理这个客户请求。

[1] [2]

关键字:SOPC  远程测控

编辑:小甘 引用地址:http://www.eeworld.com.cn/FPGA/2009/0901/article_701.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
SOPC
远程测控

小广播

独家专题更多

迎接创新的黄金时代 无创想,不奇迹
迎接创新的黄金时代 无创想,不奇迹
​TE工程师帮助将不可能变成可能,通过技术突破,使世界更加清洁、安全和美好。
TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 

夏宇闻老师专栏

你问我答FPGA设计

北京航空航天大学教授,国内最早从事复杂数字逻辑和嵌入式系统设计的专家。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved