欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    面向网络测试的嵌入式系统设计与实现.pdf

    • 资源ID:74668538       资源大小:258.15KB        全文页数:5页
    • 资源格式: PDF        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    面向网络测试的嵌入式系统设计与实现.pdf

    http:/-1-面向网络测试的嵌入式系统设计与实现面向网络测试的嵌入式系统设计与实现 薛亚杰,钱宗珏,寿国础 北京邮电大学通信测试技术研究中心,北京 100876)Email: 摘摘 要:要:本文分别从硬件和软件角度阐述了一款新一代高性能网络测试仪中嵌入式系统的的设计和实现方案。该测试仪采用 ARM9 处理器,简化了硬件平台的设计,配合嵌入式 Linux操作系统和应用软件,可以监测网络设备的状况,并且可以主动对网络发送测试数据包,进行网络性能的测试。关键词:关键词:ARM,嵌入式 Linux,网络测试 1.引言引言 近年来网络正以空前的速度在发展,规模越来越大,结构越来越复杂,新的设备越来越多,网络出现的问题也越来越复杂,这就对网络测试提出了更高的要求;另一方面随着后PC时代的到来,集成电路的设计和制造工艺的进步,嵌入式技术也渐渐成熟,广泛应用于网络通信领域,这就使得开发高速高性能的网络测试仪成为可能。由于网络测试仪专用性强,前期投入大,开发难度高,目前国内在这一领域基本上是空白,大量的设备需国外进口如SmartBits,我们结合以往测试仪的经验以信息产业部的相关设备测试规范为主要依据,研制出新一代高性能网络测试仪,在这个高性能网络测试系统中,嵌入式系统起着举足轻重的作用,本文将从硬件和软件的角度介绍其中嵌入式系统的设计与实现。2.嵌入式系统的硬件嵌入式系统的硬件 本嵌入式系统是这款高性能网络测试仪中的一部分。它实现的主要功能有与终端PC实现Socket网络通信、PC终端下载配置CPU程序FPGA程序,CPU小系统及外围器件的自检,动态配置外围器件和读取数据返回终端PC。嵌入式系统硬件实现框图如图1。图1 测试仪系统物理结构图 http:/-2-整个系统主要由两部分组成:CPU 小系统和外围器件。PC 终端计算机通过网络与嵌入式系统进行通信,对系统进行读写控制。CPU 小系统包括:ARM 芯片,RAM 和 FLASH,以太网接口。本嵌入式系统采用 32 位 ARM 作为 CPU,有功耗低、高性能等突出优点。由于 ARM内部集成的 ROM 和 RAM 的容量不能够满足信号机的要求,因此设计了外存储单元来扩展存储空间,由一片 64M 的 NAND FLASH 以及两片 32MB 的 SDRM 组成外存储系统。FLASH存储器在系统中主要用于存放引导程序 loader、操作系统内核镜像和应用程序代码等。为了提高系统运行的效果,系统启动后将 FLASH 中的代码拷贝到 SDRAM 中,有 SDRAM 作系统程序运行场所1。为了发挥 ARM 处理器 32 位数据处理性能,本设计选用 2 片 SDRAM,并联组成 32M 的 RAM,总共 64MB 空间,完全可以满足嵌入式操作系统及各种复杂功能的运行要求。以太网接口芯片作为一个 PHY 与 ARM 的 MAC 连接,外接一个 RJ45,实现 ARM与 PC 的 Socket 网络通行。外围器件主要有 FPGA 和一款高速网络交换芯片,FPGA 模块受ARM控制产生高速的测试数据发送到高速网络芯片端口最大为100Mb/s流量;或者由FPGA模块产生高速的测试数据发送到 GE/FE PHY 从 SFP 光模块产生 1000Mb/s 流量,同时 FPGA也可按 ARM 要求将其所需数据发送至 ARM。3.嵌入式系统软件实现嵌入式系统软件实现 网络测试仪软件采用 C/S 架构,Client 端 Windows 平台下软件实现用户界面操作,测试帧构建、速率控制、统计分析、实时显示等功能;Server 端嵌入式 Linux 系统下软件完成流量产生、数据统计、数据上报、通信处理等功能,具体程序设计包括 Bootloader 启动代码、设备驱动设计、API 接口程序设计、有限状态机设计和 Socket 通信机制程序设计2。下图是服务器嵌入式系统的软件结构图。图2 服务器端软件结构图 控制终端软件的核心是嵌人式Linux操作系统,一切功能的实现都基于Linux操作系统来完成。Linux本身作为一个桌面系统,在进人嵌人式操作系统领域时,需要解决的问题主要包括硬件支持、提供二次开发的环境以及小型化(裁减内核)等。小型化的目的是在满足操作http:/-3-系统基本功能和用户特定需要的情况下,使内核尽可能小。作为一个操作系统,Linux内核主要负责程序的管理与调度、内存的管理及对外设的驱动和管理等。由于Linux内核采用模块化的设计,很多模块可以独立地加载或卸载,所以小型化就是对Linux内核重新编译,在编译时仔细地选择嵌入式设备所需要的功能模块,同时删除不需要的功能。这里只需要串口驱动、还要支持TCP/IP网络协议,其他都可以删除掉,使系统运行所需要的内核显著减小至1 Mb以内。一般嵌入式系统的启动过程如下:系统加电后复位,引导装载器Bootloader初始化CPU,SDRMA,分配地址空间等,Bootloader把Linux内核的压缩文件解压到SDRAM中,同时把控制权从Bootloader移交到Linux,然后开始执行SDRMA中的代码,Linux内核初始化,完成堆栈、中断的分配等;接着加载串口驱动模块和FPGA和网络芯片的驱动模块,完成外接器件的初始化,最后运行应用程序3。根据嵌入式系统的启动过程和原理,我们的嵌入式的开发过程如下?安装和设置开发工具,建立交叉编译环境;?在目标机上安装适合自己硬件平台的bootloader;?配置和编译内核;?通过引导装载器安装和运行内核;?驱动程序开发;?准备目标根文件系统得内容;?安装目标根文件系统;?开发和运行应用程序;?系统集成。这个流程基本上是一个由低向上、逐步推进的过程。但是有些工作可以并行开展,我们的测试仪开发时,在进行内核移植及驱动程序开发同时就进行应用程序的开发。其中驱动程序的开发往往是开发中较重要的一部分,因为它涉及到对硬件的熟悉,内核空间与用户空间之间数据的传送等一系列底层的东西。Linux 的设备驱动程序的主要功能是:对设备进行初始化;启动或停止设备的运行;把设备上的数据传送到内存;把数据从内存传送到设备;检测设备状态。设备驱动程序可分为三类:字符设备、块设备、网络设备驱动,对于不同的设备有不同的访问方式4。本嵌入式系统对 FPGA 和网络交换芯片的驱动都采用基本的字符设备驱动程序的编写方法。下面的函数分别是驱动设备的初始化和读写操作函数。static void device_cfgio(void)/*使能 IO 口*/sys-PIOA_PER=PA0_MISO|PA1_MOSI|PA2_SPCK|PA3_CS;sys-PIOA_PDR=0 x0;sys-PIOA_OER=PA1_MOSI|PA2_SPCK|PA3_CS;sys-PIOA_ODR=PA0_MISO;/其它初始化设置 sys-PMC_PCER=(unsigned int)0 x1 AT91C_ID_PIOA);/时钟提供 static void device_read(struct file*filp,unsigned char*buf,ssize_t count,loff_t*ppos)http:/-4-device_read_data();/内核部分操作 copy_to_user();/把数据从内核空间传送到用户空间 static void device_write(struct file*filp,unsigned char*buf,ssize_t count)char drv_buf1024;copy_from_use(drv_buf,buf,count);/把数据从内核空间传送到用户空间 device_write_datd();/内核部分操作 驱动程序有两种加载方式:一是直接编译进内核,使设备驱动作为内核的一部分,即静态编译;二是动态编译,单独作为一个模块编译,在需要时动态地把它插入到内核。我们的ARM9 芯片带有 MMU,使用动态编译比编译连接有更多的优点,故这里采用第二种方式。API主要用于上层应用程序调用内核空间的驱动模块,以实现对硬件的各种操作。对于C/S结构的测试仪来说,在Server端上层的服务程序是C+编写的,而底层驱动模块是C编写的,通过使用API可以给上层的应用程序提供更丰富的函数接口,可以屏蔽掉C+和C的一些差异5。另外,如果下层的驱动模块有变化,只需要调节API以下的内容即可,而API对上层提供的服务是相对稳定的。4.结束语结束语 在网络快速发展的今天迫切需要高速和高性能的网络测试仪器,然而目前国内在这个方面几乎是个空白。我们成功地研制出了这款网络高性能测试仪,填补了国内这方面的空白,同时能对现有的以太网测试提供直接帮助。在这个测试系统中嵌入式系统起着关键的作用,本文从硬件和软件两个方面介绍了这个测试系统中的嵌入式系统。该侧试系统在一个虚拟的网络环境或实际的高速网络环境中都能很好地测试10/100/1000M速率下的以太网的性能,测试系统中的嵌入式系统也能很好地满足要求,正常地工作。http:/-5-参考文献参考文献 1孙天泽,袁文菊,张海峰.嵌入式设计及 Linux 驱动开发指南M.北京:电子工业出版社,2005 2Steven R W.TCP/IP 详解卷 1:协议M.范建华等译.北京:机械工业出版社,2000.3周立功,等.ARM 与嵌入式系统基础教程M.广州周立功单片机发展有限公司.4 Alessandro Rubini,Jonathan Corbet.Linux Device Drivers,Second EditionM.OReilly,2004 5Wall K.GUN/Linux 编程指南M.张辉译.北京:清华大学出版社,2002.The Design and implementation of Embedded Linux Operating System Orienting to Network Test XueYajiem,Qian Zongjue,Shou Guochu BUPT COMTEST R&D CENTER,Beijing Univ.of Posts&Telecom.,Beijing(100876)Abstract A design and implementation of a embedded system used in a high-performance network tester is introduced in this paper in hardware and software aspects.The testing instrument based on embedded Linux operating system and ARM920T processor makes it easy to design the hardware platform.With application software,its able to monitor network equipment and carry out network performance test by transmitting testing data packets to network actively.Keywords:ARM,embedded Linux operating system,network test

    注意事项

    本文(面向网络测试的嵌入式系统设计与实现.pdf)为本站会员(qwe****56)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开