基于ARM核嵌入式微处理器的以太网应用

引言

随着微电子技术和计算机技术的发展,嵌入式技术得到广阔的发展空间,特别是进入20世纪90年代以来,嵌入式技术的发展和普及更为引人注目,已经成为现代工业控制、通信类和消费类产品发展的方向,在通信领域,众多网络设备如voip,wirelesslan,adsl等都包含有大量嵌入式技术的成份,广播电视在向数字化的趋势发展,dvb,dab技术也逐渐在全面推广起来,个人消费类产品,如pda、数码相机、mp3播放器等产品都离不开嵌入式技术的支持,嵌入式技术在atm、可视电话、汽车的abs等产品中也都有大量的应用,此外,军事领域之中也处处可见嵌入式技术的身影,如单兵信息终端,便携式保密机,战场指挥系统等,可以说,嵌入式系统已经渗透到人们日常生活以至国家安全防御体系之中。

嵌入式技术发展的核心是嵌入式微控制芯片技术的发展,当今微控制芯片功能变得越来越强,种类更为繁多,如mips,powerpc,x86,arm,pic等,但这些嵌入式处理器受到价格以及兼容性等因素要求的限制,应用状况有所不同,mips和powerpc处理器市场定位较高,对于成本敏感的应用并不合适,而x86系列处理器要与8068、286、386等保持兼容性,使用相同的指令集,从而限制了cpu系统性能的提高,当今嵌入式领域中使用最为广泛的是基于arm体系结构的嵌入式处理器,其占据了80%以上的32位嵌入式处理器市场份额,从发展之初至今,arm公司已经推出arm7,arm9,arm9e,arm10,securcore以及intel的strong arm和xscale等一系列的产品。这些不同版本的处理器内核,虽一脉相承,但应用背景不同,例如,arm7系列处理器针对功耗和陈本要求比较苛刻的应用而设计的;而arm9系列处理器主要应用于下一代的无线设备;securcore则是专为安全设备而定制的[1]。

技术的发展要与实际应用相结合,才能体现出技术进步的价值,嵌入式系统的发展正如日中天,基于arm核嵌入式微处理器的以太网的嵌入式控制实现也正在国内外如火如荼的展开,以太网在实时操作、可靠传输、标准统一等方面的卓越性能及其便于安装、维护简单、不受通信距离限制等优点,已经被国内外很多监控、控制领域的研究人员广泛关注,并在实际应用中展露出显著的优势。

2 arm处理器体系的结构

迄今为止,arm体系一共定义了6个版本,版本号为1-6,从版本1到版本6,arm体系的指令集功能不断增强,同时,各版本中还有一些变种,这些变种定义了该版本指令集中不同的功能。如支持thumb指令集、支持长乘法指令集、增量型dsp指令集、java加速器、媒体功能扩展指令等。这些变种的指令都是针对不同的应用而产生的,arm处理器系列中的各种处理器,由于采用的实现技术各不相同,性能差别很大,应用的场合也有所不同,这必然引出应用程序代码的可重用性问题,例如:一段在samsung公司的arm处理器上运行良好的代码,如果把处理器换成了atmel公司的arm处理器,是否也可以稳定可靠地工作呢?答案就是只要处理器支持相同的arm体系版本,基于他们的应用软件将是兼容的。

arm处理器目前包括下面几个系列的处理器产品:arm7系列、arm9系列,arm9e系列、arm10系列,securcore系列,intel的xscale和strongarm,arm9系列处理器是新近推出且性能比较稳定的一个系列,包括arm920t,art922t,arm940t三种类型,适用不同需求的市场,本课题所选用的s3c2410x嵌入式处理器就是以arm920t为核心的。

arm9系列处理器主要特点如下:支持32位arm指令集和16位thumb指令集;5级流水线;单一的32位amba总线接口;mmu支持windows ce。palm os,symbian os,linux等,mpu支持实时操作系统,包括vxworks;统一的数据cache和指令cache[2]。

在arm存储系统中,使用内存管理单元(mmu)实现虚拟地址到实际物理地址的映射。利用mmu,可把sdram的地址完全映射到0x0起始的一片连续地址空间,而把原来占据这片空间的flash或者rom映射到其他不相冲突的存储空间位置。例如,flash的地址从0x0000 0000~0x00ff ffff,而sdram的地址范围是0x3000 0000~ox3lff ffff,则可把sdram地址映射为0x0000 0000~oxlfff ffff而flash的地址可以映射到ox9000 0000~ox90ff ffff(此处地址空间为空闲,未被占用)。映射完成后,如果处理器发生异常,假设依然为irq中断,pc指针指向oxl8处的地址,而这个时候pc实际上是从位于物理地址的ox3000 0018处读取指令。通过mmu的映射,则可实现程序完全运行在sdram之中。在实际的应用中.可能会把两片不连续的物理地址空间分配给sdram。而在操作系统中,习惯于把sdram的空间连续起来,方便内存管理,且应用程序申请大块的内存时,操作系统内核也可方便地分配。通过mmu可实现不连续的物理地址空间映射为连续的虚拟地址空间。操作系统内核或者一些比较关键的代码,一般是不希望被用户应用程序访问。通过mmu可以控制地址空间的访问权限,从而保护这些代码不被破坏。

  • 基于ARM核嵌入式微处理器的以太网应用已关闭评论
    A+
发布日期:2019年07月02日  所属分类:参考设计