ARM的嵌入式Linux移植体验之基本概念

来源:百度文库 编辑:神马文学网 时间:2024/04/25 14:38:33
ARM的嵌入式Linux移植体验之基本概念发布时间:2006-08-11 15:33:28 来源:天极开发 网友评论 0 条  引言

  ARM是Advanced RISC Machines(高级精简指令系统处理器)的缩写,是ARM公司提供的一种微处理器知识产权(IP)核。

  ARM的应用已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场。基于ARM 技术的微处理器应用约占据了32位RISC 微处理器75%以上的市场份额。揭开你的手机、

  有人的地方就有江湖(《武林外传》),有嵌入式系统的地方就有ARM。

  构建一个复杂的嵌入式系统,仅有

  日前,笔者作为某嵌入式ARM(硬件)/Linux(软件)系统的项目负责人,带领项目组成员进行了下述工作:

  (1)基于ARM920T内核S3C2410A CPU的电路板

  大部分应用程序都在User模式下运行。当处理器处于User模式下时,执行的程序无法访问一些被保护的系统资源,也不能改变模式,否则就会导致一次异常。对系统资源的使用由操作系统来控制。

  User模式之外的其它几种模式也称为特权模式,它们可以完全访问系统资源,可以自由地改变模式。其中的FIQ、IRQ、supervisor、Abort和undefined 5种模式也被称为异常模式。在处理特定的异常时,系统进入这几种模式。这5种异常模式都有各自的额外的寄存器,用于避免在发生异常的时候与用户模式下的程序发生冲突。

  还有一种模式是system模式,任何异常都不会导致进入这一模式,而且它使用的寄存器和User模式下基本相同。它是一种特权模式,用于有访问系统资源请求而又需要避免使用额外的寄存器的操作系统任务。

  程序员可见的ARM寄存器共有37个:31个通用寄存器以及6个针对ARM处理器的不同工作模式所设立的专用状态寄存器,如下图:


3.2 SDRAM存储器

  SDRAM被用来存放操作系统(从FLASH解压缩拷入)以及存放各类动态数据,采用SAMSUNG公司的K4S561632,它是4Mxl6bitx4bank的同步DRAM,容量为32MB。用2片K4S561632实现位扩展,使数据总线宽度达到32bit,总容量达到64MB,将其地址空间映射在S3C2410A的bank6。

  SDRAM 所有的输入和输出都与系统时钟CL K上升沿同步,由输入信号RA S、CA S、WE组合产生SDRAM 控制命令,其基本的控制命令如下:


  SDRAM 在具体操作之前首先必须通过MRS命令设置模式寄存器,以便确定SDRAM 的列地址延迟、突发类型、突发长度等工作模式;再通过ACT命令激活对应地址的组,同时输入行地址;然后通过RD 或WR 命令输入列地址,将相应数据读出或写入对应的地址;操作完成后用PCH 命令或BT 命令中止读或写操作。在没有操作的时候,每隔一段时间必须用ARF命令刷新数据,防止数据丢失。

  下图给出了SDRAM的连接电路:


  3.3 FLASH存储器

  NOR和NAND是现在市场上两种主要的非易失闪存技术。

  NOR的特点是芯片内执行(XIP,Execute In Place),即应用程序可直接在Flash闪存内运行,不必把代码读到系统RAM中。NOR的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。

  NAND结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于Flash的管理和需要特殊的系统接口,S3C2410A内嵌了NAND FLASH控制器。

  S3C2410A支持从GCS0上的NOR FLASH启动(16位或32位)或从NAND FLASH启动,需要通过OM0和OM1上电时的上下拉来设置:


  在系统中分别采用了一片NOR FLASH(28F640)和NAND FLASH(K9S1208),电路如下图:


3.4串口

  S3C2410内部集成了UART控制器,实现了并串转换。外部还需提供CMOS/TTL电平与RS232之间的转换:


  3.5以太网

  以太网控制芯片采用CIRRUS LOGIC公司生产的CS8900A,其突出特点是使用灵活,其物理层接口、数据传输模式和工作模式等都能根据需要而动态调整,通过内部寄存器的设置来适应不同的应用环境。它符合IEEE803.3以太网标准,带有传送、接收低通滤波的10Base-T连接端口,支持10Base2,10Base5和10Base-F的AUI接口,并能自动生成报头,自动进行CRC检验,在冲突后自动重发。

  CS8900A支持的传输模式有I/O和Memory模式。当CS8900A有硬件复位或软件复位时,它将默认成为8位工作模式。因此,要使CS8900A工作于16位模式,系统必须在访问之前提供给总线高位使能管脚(/SBHE)一个由高到低、再由低到高变化的电平。



  3.6 USB接口

  USB 系统由USB 主机(USB Host)、USB集线器(USB Hub)和USB设备(USB Device)组成。USB 和主机系统的接口称作主机控制器(Host Controller),它是由硬件和软件结合实现的。根集线器是综合于主机系统内部的,用以提供USB的连接点。USB的设备包括集线器(Hub)和功能器件(Function)。

  S3C2410A集成了USB host和USB device,外部连接电路如下图:



  up监控电路采用MAX708芯片,提供上电、掉电以及降压情况下的复位输出及低电平有效的人工复位输出:


  3.8其它

  SN74LVTH62245A提供总线驱动和缓冲能力:


  S3C2410A集成LCD液晶显示器控制电路,外部引出接口:


  触摸屏有电阻式、电容式等,其本质是一种将手指在屏幕上的触点位置转化为电信号的传感器。手指触到屏幕,引起触点位置电阻或电容的变化,再通过检测这一电性变化,从而获得手指的坐标位置。通过S3C2410A集成的AD功能,完成电信号向屏幕坐标的转化,触摸屏接口如下:


  键盘则直接利用CPU的可编程I/O口,若连接 mxn键盘,则需要m+n个可编程I/O口,由软件实现键盘扫描,识别按键:


  3.9整体架构

  下图呈现了ARM处理器及外围电路的整体设计框架:


  4.小结

  本章讲解了基于S3C2410A ARM处理器电路板硬件设计的基本组成,为后续各章提供了总体性的准备工作。