基于ARM核嵌入式微处理器的以太网应用
Oxl8处的地址,而这个时候PC实际上是从位于物理地址的Ox3000 0018处读取指令。通过MMU的映射,则可实现程序完全运行在SDRAM之中。在实际的应用中.可能会把两片不连续的物理地址空间分配给SDRAM。而在操作系统中,习惯于arm以太网应用把SDRAM的空间连续起来,方便内存管理,且应用程序申请大块的内存时,操作系统内核也可方便地分配。通过MMU可实现不连续的物理地址空间映射为连续的虚拟地址空间。操作系统内核或者一些比较关键的代码,一般是不希望被用户应用程序访问。通过MMU可以控制地址空间的访问权限,从而保护这些代码不被破坏。
MMU的实现过程,实际上就是一个查表映射ARM以太网应用的过程。建立页表(translate table)是实现MMU功能不可缺少的一步。页表是位于系统的内存中,页表的每一项对应于一个虚拟地址到物理地址的映射。每一项的长度即是一个字的长度(在ARM中,一个字的长度被定义为4B)。页表项除完成虚拟地址到物理地址的映射arm以太网应用功能之外,还定义了访问权限和缓冲特性等。
MMU的映射分为两种,一级页表的变换和二级页表变换。两者的不同之处就是实现的变换地址空间大小不同。一级页表变换支持1 M大小的存储空间的映射,而二级可以支持64 kB,4 kB和1 kB大小地址空间的映射[3]。
3 嵌入式处理器的选型
一个系统必然以硬件平台为依托.设计嵌入式系统时,要从全局arm以太网应用以及今后的发展角度出发考虑硬件平台的整体设计,不能以简单功能实现作为设计的最终目标。在设计过程中,主要需要考虑以下几个方面:
3.1 芯片选择
要选择通用性强、功能完备、稳定可靠ARM以太网应用的芯片。当今的很多处理器芯片,多为基于SoC结构,内置很多通用接口控制器,使用简单且可极大地降低成本;要选择具有代表性的芯片,市场上的某些芯片只是作为过渡产品销售,用于原理性、市场性验证,当芯片功能趋于稳定、市场需求较大时,通常会推出一款代表性芯片。对于设计人员来说,需要了解什么型号是具有代表性的,以保证可靠的货源供应。不同的应用场合,对芯片的级别要求arm以太网应用不同,尽可能选择符合更高标准的芯片,以保证整个系统的稳定性和可靠性[4]。
3.2 电路设计上要有处理突发事件的能力并易于功能arm以太网应用扩展
系统在运行的情况下,常会遇到不可预测的外部事件,这就要求系统具有处理突发事件的能力.如利用看门狗、软复位措施保证系统遇到非期望事件后可以重新启动运行。同时系统设计也要考虑到硬件扩展以及升级的能力,如,在设计存储器结构时,要考虑电路结构可兼容不同容量的存储器甚至于不同厂家的arm以太网应用芯片;如使用可编程逻辑器件CPLD或者FPGA时,宏单元要有盈余等。
3.3 以软件代硬件
嵌入式系统的软件升级要比硬件升级更容易,且在开发过程中,软件调试一般不会对硬件造成物理上的损坏。在满足实时性的前提下,尽可能地用软件代替硬件。不仅可减小硬件arm以太网应用电路的开销和电路板的尺寸,同时又方便调试,减小了硬件损坏的可能,并进一步降低成本。
3.4 布局布线
嵌入式处理器工作在几百兆的频率下已是很常见arm以太网应用的事情了,在高频电路板设计时,要注意电路的布局和信号线的走向,高频信号要尽量远离其他信号,尽量减小地弹、串扰等干扰,以及电路中的电磁干扰和热设计等。
目前,世界上各大芯片生产商纷纷推出自己的ARM芯片,其专注的应用背景不同,各有自己的特色。ARM7和ARM9是目前ARM处理器中应用较多、技术成熟的两大系列ARM芯片。相比较而言,ARM9系列处理器无论从处理速度、外设接口以及应用范围等方面都更胜一筹。Intel的Xscale系列处理器,虽然各方面性能比较突出,但是其较高的定位,并不适合于大多数应用场合。而ATMEL公司生产的AT91RM9200处理器,定位于工业过程控制,外设接口不够arm以太网应用齐全。
本文选择了SAMSUNG公司的SS3C2410X作为系统的嵌入式处理器。这是一款以ARM920T为核心的嵌入式处理器,面向低端应用,价格低廉。该芯片具有较高的处理速度,通过内部的锁相环,最高可在200 MHz的系统时钟下运行。并且,S3C2410X具有极低的功耗。核电压为1.8 V供电,外围I/O口使用3.3 V的电压,具有3种低功耗控制方式,甚至可以把CPU中除了唤醒逻辑之外的所有功能都关闭,极大地降低了功耗。与其他的ARM芯片相比,S3C2410X在片上集成了更多外设接口。例如:外部存储器控制器;LCD,DMA,USB1.1,SD,MMC卡控制器,UART,SPI接口;I2C总线控制器和
- 以太网远程监控系统实现远程监测控制和管理技术设计开发(11-30)
- ARM、DSP、FPGA的技术特点和区别(01-22)
- 基于MCU+FPGA的RFID读写器设计(05-13)
- 基于RealView MDK的CAN总线仿真研究(06-20)
- 基于ARM9系统的无线发射台智能化监控设计(06-27)
- 基于ARM7的蓝牙接入点的研究(07-04)