首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
基于NiosII的嵌入式网络通信系统
来源:本站整理  作者:佚名  2009-03-19 13:57:50



1  引言
      随着internet技术的发展,在许多领域都引起了飞跃性的变化。嵌入式系统应用领域中一个新的趋势就是开始在嵌入式设备上集成网络通信功能,比如网络监控、网络数据采集系统等,以便于通过网络与远程设备进行信息的交互和增强系统的互连性,仅仅需要一根网线就可以轻轻松松完成系统的互连。
      目前市场上的嵌入式处理器的种类很多。altera公司推出了第二代片上可编程嵌入式软核处理器nios ii,再配上其低成本、高性价比的fpga器件,使得嵌入式系统的开发变得越发方便。再者由于nios ii可配置和fpga器件可编程的特点,与专用硬件相比灵活性得有很大的优势,从而使得fpga器件在现代电子设计中得到广泛的应用。

2  系统设计
2.1 nios ii简介
      nios ii嵌入式软核处理器是altera公司推出的第二代片上可编程的软核处理器,nios ii是可配置的,用户可以根据自己的实际需要进行处理器的配置,以达到资源的合理使用,其性能可以超过200dmips。nios ii采用哈佛结构,具有32位指令集,32位数据通道和可配置的指令及数据缓冲,而且支持用户自定义指令(最多256个)以扩展cpu指令集,提升系统的性能,为可编程片上系统(sopc)设计提供了一套完整的解决方案。nios ii提供了三种内核:nios ii/f是一种高性能的内核,速度最快但消耗的资源最多;nios ii/e是低成本内核,速度最慢消耗的资源最少;nios ii/s是一种性能和成本折中的内核。本设计采用的是nios ii/s内核。
      nios ii的优势就在于其灵活性,可以根据用户的需求进行灵活的配置和裁剪。基于nios ii软核的系统设计利用altera公司提供的系统设计工具sopc builder和集成开发环境niosii ide可以进行软硬件协同设计,很大程度上缩短开发周期,在系统开发的任何阶段要都可以很方便的对系统进行修改。fpga器件丰富的逻辑资源,结合nios ii强大的处理能力,将为嵌入式系统设计提供有效的解决方案。
2.2 系统设计

图 1  系统模块图

      系统模块图如图1所示。设计采用了altera公司的cyclone ii系列芯片。在其中配置niosii软核处理器控制外围设备和协议栈的运行。而且添加了一个计算校验和的用户指令(cal_checksum)。
      片上ram用作内存运行程序;flash使用了sharp公司的lh28f160s3t-l13a,用来存储程序和配置信息,系统上电后,先将程序从flash中拷贝到片上ram运行;网络接口芯片使用smsc公司的10/100m以太网接口控制芯片lan9c111,所以在sopc builder中配置系统时,需要加上altera免费提供的lan9c111接口控制器,嵌入式设备通过lan9c111就可以接入以太网,与网络上的其他设备进行网络通信;sdram选用micron公司的mt48lc8m16a2,用来缓存网络数据,其中sdram控制器使用altera免费提供的sdram控制器。
      要提高系统的性能,一方面是提高处理器的处理能力;另一方面就是将用软件处理比较费时间的模块使用硬件模块来实现。经过分析发现,在网络协议栈的运行过程中,最耗费时间的是校验和的计算,尤其是当数据量非常大的时候。为此,专门用硬件定制了一个用户指令校验和计算指令(cal_checksum),对数据校验和的计算实现硬件加速,作为一个指令添加到niosii系统中,在协议栈程序中调用来缩短计算校验和的时间,提高处理速度,达到提升系统性能的目的。
2.3 校验和计算指令(cal_chkusm)
      在上面的分析中已经提到过,在整个协议栈的处理中,最耗时间的就是数据校验和的计算,特别是当数据长度很大时。所以在设计中将数据校验和的计算采用硬件模块来实现,作为niosii的一个用户自定义指令,以提高校验和计算的速度。在协议栈的移植过程中,将数据的宽度修改为16位,方便最后将16位校验和的计算结果添加到相应的域。

[1] [2] [3]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:27,871.09000 毫秒