




已阅读5页,还剩88页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2020/5/17,1,河南工业大学电气工程学院,HenanUniversityofTechnology,2020/5/17,2,调试嵌入式系统程序,5,嵌入式系统概述,1,基于ARM9的硬件开发平台,2,创建嵌入式系统开发环境,4,Bootloader,6,嵌入式Linux驱动程序开发,8,嵌入式Linux在ARM平台的移植,7,课程内容,Linux操作系统,3,图形用户接口,9,2020/5/17,3,基于ARM9处理器的硬件开发平台,2020/5/17,4,2.1ARM处理器简介,2.2ARM9微处理器简介,2.3UP-NetARM2410-S平台介绍(补充),重点,实验四:触摸屏控制实验,2.3.3触摸屏设计,提高,2020/5/17,5,2.1ARM处理器简介,2.1.1ARM公司简介2.1.2ARM微处理器核,2020/5/17,6,引子:嵌入式处理器概述,嵌入式微处理器是嵌入式系统的核心。目前32位嵌入式微处理器是市场的主流。32位嵌入式微处理器市场,我们可以发现超过100家的芯片供应商和近30种指令体系结构。在1996年以前,最成功的嵌入式微处理器是Motorola公司的68000系列。当然,现在最引人注目的还是ARM公司的ARM系列、MIPS公司的MIPS系列(ARM和MIPS都知识产权公司,把他们的微处理器IP技术授权给半导体厂商,由各厂商生产形态各异的微处理器芯片)。,2020/5/17,7,知识产权核(IP核,intellectualproperty),2020/5/17,8,一个合适的选择ARM,ARM79.5%,2020/5/17,9,2002年全球IP核供应商排名,2020/5/17,10,2004年全球半导体IP供应商排名,2020/5/17,11,2020/5/17,12,2.1ARM处理器简介,ARM即AdvancedRISCMachines的缩写,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。,2.1.1,ARM公司简介,2020/5/17,13,ARM公司,内核,IP,2020/5/17,14,说说ARM,ARM(AdvancedRISCMachines)公司是全球领先的16/32位RISC微处理器知识产权设计供应商。世界各大半导体生产商从ARM公司购买其设计的ARM微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM微处理器芯片进入市场。目前,Motorola、IBM、TI、Philips、VLSI、Atmel和Samsung等几十家大的半导体公司都获得了ARM公司的授权,生产形态各异的ARM芯片。,2020/5/17,15,ARM的业务模型,2020/5/17,16,ARM的业务模型,2020/5/17,17,ARM处理器的特点,Show,2020/5/17,18,ARM处理器的技术优势,低能耗:相对同时期的其他解决方案,ARM架构的能效比优势非常明显。应用方案非常灵活:由于ARM公司只是提供了一个高效精简的核心,各半导体厂商可根据自身需求进行应用设计,架构灵活简便、扩展力很强。得到大量的软件支持:包括WindowsCE、Symbian和PalmOS在内的手持设备三种主要操作系统系统都是基于ARM架构所设计。目前,ARM已经牢牢占领手机、PDA以及其他的掌上电子产品市场。,2020/5/17,19,采用WindowsCE操作系统、三星S3C2410处理器的智能双模手机:,2020/5/17,20,ARM处理器的应用,消费类电子领域,2020/5/17,21,1.27BillionShipmentsIn2004,2020/5/17,22,ARM公司已成为移动通信、手持设备、多媒体数字消费嵌入式解决方案的RISC标准。补充两个概念:,2.1.2,ARM微处理器核,CISC,RISC,2020/5/17,23,2020/5/17,24,CISC与RISC的对比,2020/5/17,25,嵌入式微处理器可分为CISC和RISC两类。大家熟悉的大多数台式PC都是使用CISC微处理器,如Intel的x86。RISC结构体系有两大主流:SiliconGraphics公司(硅谷图形公司)的MIPS技术;ARM公司的AdvancedRISCMachines技术。,2020/5/17,26,ARM微处理器系列,2020/5/17,27,ARM7、ARM9、ARM9E和ARM10是4个通用处理器系列。每个系列提供一套特定的性能来满足设计者对功耗、性能、和体积的需求。其中,ARM7系列适用于工业控制、网络设备、移动电话等应用;ARM9、ARM9E和ARM10E系列则更适合无线设备、消费类电子产品的设计。ARM11是第5个产品系列,是专门为安全设备而设计的。,2020/5/17,28,ARM家族的更新,2020/5/17,29,ARM微处理器后缀命名的含义,2020/5/17,30,ARM体系结构的发展,ARM架构自诞生至今,发展并定义了6种不同的版本:V1版架构V6版架构,2020/5/17,31,ARM体系结构的发展,2020/5/17,32,2020/5/17,33,2.2ARM9微处理器简介,2.2.1ARM9与ARM7处理器的比较2.2.2ARM920T简介(补充)2.2.3三星S3C2410X处理器详解,2020/5/17,34,ARM7TDMI是ARM公司最成功的微处理器IP之一,至今在蜂窝电话领域已销售了数亿个微处理器,是目前使用最广泛的32位嵌入式RISC处理器,属低端ARM处理器内核。ARM9TDMI核将ARM7TDMI的功能显著提高。最显著的区别是:流水线从3级提高到5级。,2.2.1与ARM7处理器的比较,2020/5/17,35,流水线技术,计算机中一条指令的指向可分为若干个阶段,由于每个阶段的操作相对都是独立的。因此可以采用流水线的重叠技术来大大提高系统的性能。在流水线装满以后,几个指令可以并行执行。这样可充分利用现有硬件资源,提高了CPU的运行效率。以ARM7为例,ARM处理器使用的简单3级流水线分别为:,2020/5/17,36,ARM7TDMI的指令流水线,取指,译码,2020/5/17,37,ARM7单周期指令的三级流水线操作,注:程序计数器PC指向正在取指的指令而不是正在执行的指令,2020/5/17,38,ARM9的五级流水线P16,ARM920T核由ARM9TDMI内核、存储管理单元MMU和高速缓存三部分组成。其中,MMU可以管理虚拟内存,高速缓存由独立的16KB地址和16KB数据高速Cache组成。ARM9TDMI处理器一个显著的特点是采用指令和数据分离访问的方式,即采用了指令缓存(I-Cache)和数据缓存(D-Cache)。这样可以把指令访问和数据访问单独安排一级流水线。ARM9TDMI采用5级流水线,其结构图如下页图2.2所示,具有分开的指令和数据存储器,5级流水线具体如下:,2020/5/17,39,即:,(1)取指:从存储器中取出指令,并将其放入指令流水线。(2)译码:对指令进行译码。(3)执行:把一个操作数移位,产生ALU的结果。(4)缓冲/数据:如果需要,则访问数据存储器;否则ALU的结果只是简单地缓冲1个时钟周期,以便所有的指令具有同样的流水线流程。(5)回写:将指令产生的结果回写到寄存器,包括任何从存储器中读取的数据。,2020/5/17,40,ARM流水线的级数,2020/5/17,41,ARM流水线结构的发展,2020/5/17,42,ARM微处理器特性,2020/5/17,43,冯诺依曼结构简介,冯诺依曼结构计算机系统是由一个中央处理单元(CPU)和一个存储器组成。这个存储器存储全部的数据和指令,并且可以根据所给的地址对其进行读写操作。数据和指令都存在一个存储器中的计算机被称为冯诺依曼结构计算机。CPU有几个可以存放内部使用数据的内部寄存器。其中典型的寄存器是程序计数器PC。CPU先从存储器取出指令,然后对指令译码,最后执行。程序计数器是间接地指向了存储器中的指令。我们只要改变指令,就能改变CPU所做的事情。,2020/5/17,44,冯诺依曼体系结构模型,2020/5/17,45,哈佛体系结构计算机,哈佛体系结构计算机为数据和程序提供了各自独立的存储器,程序计数器只指向程序存储器而不指向数据存储器。独立的程序存储器和数据存储器为数字处理提供了较高的性能,让两个存储器有不同的端口,可以提供较大的存储器带宽。这样一来,数据和程序不必再竞争同一个端口,这使得数据适时地移动更加容易。目前大部分DSP和ARM9微处理器都是采用这种哈佛体系结构。但这种结构的弱点是很难在哈佛机上编写出一个自修改的程序(即写入数据值后,使用这些值作为指令的程序)。,2020/5/17,46,哈佛体系结构图,2020/5/17,47,1ARM微处理器的工作状态从编程的角度看,ARM920T微处理器的工作状态一般有两种:ARM状态,此时处理器执行32位的、字对齐的ARM指令;Thumb状态,此时处理器执行16位的、半字对齐的Thumb指令。,2.2.2ARM920T简介(补充),2020/5/17,48,2ARM体系结构的存储器格式ARM920T体系结构将存储器看做是从零地址开始的字节的线性组合。从0字节到3字节放置第1个存储的字数据,从第4个字节到第7个字节放置第2个存储的字数据,依次排列。作为32位的微处理器,ARM920T体系结构所支持的最大寻址空间为4GB(232字节)。ARM920T体系结构可以用两种方法存储字数据,分别称为大端格式和小端格式:,2020/5/17,49,大端格式中字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中,如图1所示:,1,2020/5/17,50,与大端存储格式相反,在小端存储格式中,低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节,如图2所示:,2,2020/5/17,51,3处理器模式ARM920T支持7种运行模式,分别为:用户模式(usr),ARM处理器正常的程序执行状态;快速中断模式(fiq),用于高速数据传输或通道处理;外部中断模式(irq),用于通用的中断处理;管理模式(svc),操作系统使用的保护模式;数据访问终止模式(abt),当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护;系统模式(sys),运行具有特权的操作系统任务;未定义指令中止模式(und),当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。,2020/5/17,52,ARM微处理器的运行模式可以通过软件改变,也可以通过外部中断或异常处理改变。大多数的应用程序运行在用户模式下,当处理器运行在用户模式下时,某些被保护的系统资源是不能被访问的。除用户模式以外,其余的6种模式称为非用户模式或特权模式;其中除去用户模式和系统模式以外的5种又称为异常模式,常用于处理中断或异常,以及访问受保护的系统资源等情况。,2020/5/17,53,2.2.3三星S3C2410X处理器详解,S3C2410韩国三星(Samsung)电子公司最近推出的一款基于ARM920T核的1632位RISC嵌入式微处理器。该处理器主要面向手持式设备以及高性价比、低功耗的应用。该处理器采用0.18umCMOS制造工艺。S3C2410X与S3C2410AARM920T以ARM9TDMI为内核,增加了高速缓存和内存管理单元,系统结构图如下页图所示。,难点,2020/5/17,54,S3C2410X芯片内部原理框图,2020/5/17,55,S3C2410X处理器体系结构,(1)ARM920T核,16位/32位RISC结构和ARM精简指令集。(2)ARMMMU,支持WindowsCE、Linux、VxWork、UCOS-II精简指令集;(3)指令Cache、数据Cache、写缓冲;(4)支持ARM调试结构,片上ICE支持JTAG调试方式;(5)内置先进微控制器总线接口AMBA。,2020/5/17,56,S3C2410X处理器的资源,S3C2410集成了一个LCD控制器(支持STN和TFT带有触摸屏的液晶显示屏)、SDRAM控制器、NANDFlash控制器、3个通道的UART、4个通道的DMA、4个具有PWM功能的计时器和一个内部时钟、8通道的10位ADC。S3C2410还有很多丰富的外部接口,例如触摸屏接口、IIC总线接口、IIS总线接口、两个USB主机接口、一个USB设备接口、两个SPI接口、SD接口和MMC卡接口。,2020/5/17,57,S3C2410X处理器的性能,电源:内核1.8V,外围3.3VSDRAM控制器LCD控制器:STN和TFT4路DMA,3路串口8路(10位)ADC和触摸屏控制接RTC功能主频高达200M支持MMC、SMC卡2路USBHost,一个USBDevice(ver1.1)4路PWM定时器和1路内部定时器看门狗电路117路通用I/O口,24路外部中断272管脚FBGA封装,如下图:,2020/5/17,58,272-FBGA封装图,2020/5/17,59,在时钟方面S3C2410也有突出的特点,该芯片集成了一个具有日历功能的RTC和具有PLL(MPLL和UPLL)的芯片时钟发生器。MPLL产生主时钟,能够使处理器工作频率最高达到203MHz(内核电压增加到2.0V时最高266MHz)。这个工作频率能够使处理器轻松运行WindowsCE、Linux等操作系统以及进行较为复杂的信息处理。UPLL产生实现主从USB功能的时钟。,1.时钟与电源管理P17,2020/5/17,60,P23,S3C2410X的主时钟由外部晶振或者外部时钟提供,选择后可以生成3种时钟信号,分别是CPU使用的FCLK,AHB总线使用的HCLK和APB总线使用的PCLK。时钟管理模块同时拥有两个锁相环,一个称为MPLL,用于FCLK、HCLK和PCLK;另一个称为UPLL,用于USB设备。S3C2410X电源管理模块通过4种模式有效地控制功耗:Normal模式:为CPU和所有的外设提供时钟,所有的外设开启时,该模式下的功耗最大。这种模式允许用户通过软件控制外设,可以断开提供给外设的时钟以降低功耗。,电源管理P24,2020/5/17,61,Slow模式:采用外部时钟生成FCLK的方式,此时电源的功耗取决于外部时钟。IdLe模式:断开FCLK与CPU核的连接,外设保持正常,该模式下的任何中断都可唤醒CPU。Power-off模式:断开内部电源,只给内部的唤醒逻辑供电。一般模式下需要两个电源,一个提供给唤醒逻辑,另外一个提供给CPU和内部逻辑,在Power-off模式下,后一个电源关闭。该模式可以通过EINT15:0和RTC唤醒。,2-6,2020/5/17,62,2.存储空间P17,S3C2410将系统的存储空间分成8个bank,每个bank的大小是128M字节,共1G字节。bank0到bank5的开始地址是固定的,用于ROM或SRAM。bank6和bank7用于SDRAM,这两个bank可编程,且大小相同。bank7的开始地址是bank6的结束地址,灵活可变。所有内存块的访问周期都可编程,外部Wait扩展了访问周期。S3C2410采用nGCS7:08个通用片选线选择8个bank区。,2020/5/17,63,3.NANDFlashP17,在介绍NandFlash之前,先介绍Flash以及NorFlash和NandFlash的区别FlashFlash(闪存)存储器是近年来发展迅速的非易失性存储器。Flash存储器可在线进行电写入、电擦除,并且掉电后信息不丢失。具有低功耗、大容量、擦写快、可整片或分扇区在系统编程、擦除等特点。常用的Flash为8位或16位数据宽度,编程电压为3.3V。Flash在各种嵌入式系统中得到了广泛的应用。作为一种非易失性存储器,通常用于存放一些在系统掉电后需要保存的用户数据等。常见的Flash媒质存储器:SD/MMC卡、CF卡、SM卡、U盘、IC卡、SIM卡。,2020/5/17,64,NorFlash和NandFlash的区别Flash媒质存储器的构成主要采用两种技术,NAND结构和NOR结构形式。(1)NandFlashNAND结构形式内部存储单元的构成是采用串行工作方式进行工作的,它是按顺序读写存储单元的内容,非常适合于大容量的数据或文件的串行读/写,一般容量可达上百兆字节。我们日常使用的U盘和CF卡都采用这种结构的Flash存储器。NandFlash结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快,价格也便宜。,2020/5/17,65,(2)NorFlashNOR形式的结构则是采用并行方式工作的,其特点可以随机读取任意单元的内容,适合于程序代码的并行读写、存储。该类存储器常用于制作计算机的BIOS存储器和为控制器的内部存储器。NorFlash的特点是XIP(eXecuteInPlace,芯片内执行)特性,这样,应用程序可以直接在Flash闪存内运行,不必再把代码读到系统RAM中。Nor的传输效率很高,在14MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。,2020/5/17,66,扩展阅读,No14:NAND和NORflash的区别No2,P183,补充提高,2020/5/17,67,NANDFlash控制器P17,S3C2410支持NANDFlash的Bootloader(可从NANDFlash启动),NANDFlash具有容量大、比NorFlash更具竞争力的价格等特点,系统采用NANDFlash与SDRAM组合,可以获得非常高的性价比。S3C2410具有三种启动方式,由OMl:0管脚选择:00时处理器从NANDFlash启动;01时从16位宽的ROM启动;10时从32位宽ROM启动。,2020/5/17,68,用户可以将Bootloader代码和操作系统镜像放在外部的NANDFlash,采用NANDFlash启动。处理器上电复位时,通过内置的NANDFlash访问控制器将位于NANDFlash前4KB位置的Bootloader代码自动加载到片内的4KBbootSRAM(此时该SRAM定位于起始地址空间0 x00000000)并且运行,在bootSRAM运行的Bootloader程序将操作系统的镜像加载到SDRAM,之后操作系统就能够在SDRAM中运行。启动完毕后,4KBbootSRAM就可以用于其它用途。,P18,启动过程!,2020/5/17,69,S3C2410X支持NandFlash启动,启动代码存储在NandFlash上。启动时,NandFlash的前4KB将被装载到内部的固定地址中,利用硬件纠错码ECC对数据的正确性检验,然后开始执行其中的启动代码。一般情况下,该启动代码会把NandFlash中的内容拷贝到SDRAM中去,拷贝完后,主程序将在SDRAM中执行。操作流程如图2-4所示。,NandFlash控制器P20,2-4,2020/5/17,70,ARM920T共有37个32位寄存器,其中31个为通用寄存器,6个为状态寄存器。但是这些寄存器不能被同时访问,具体哪些寄存器是可编程访问的,取决于微处理器的工作状态及具体的运行模式。,4.ARM920T寄存器定义:,2020/5/17,71,内存控制器为访问外部存储空间提供存储器控制信号,共有13个寄存器。,内存控制器(MemoryController)P18,2020/5/17,72,5.带PWM的定时器P34,S3C2410中的定时器具有PWM(脉宽调制)功能,通过对一些功能寄存器的配置,可定义占空比以及定义频率的高低。内部具有5个16位带PWM的定时器/1个16位基于DMA或基于中断的定时器,可编程的工作循环,频率和极性选择。,2020/5/17,73,6.异常,异常(Exception)是指任何打断处理器正常执行,并且迫使处理器进入一个由有特权的特殊指令执行的事件。当正常的程序执行流程发生暂时的停止时,就称之为异常。在处理异常之前,当前处理器的状态必须保留,这样,当异常处理完成之后,当前程序可以继续执行。处理器允许多个异常同时发生,处理器会按固定的优先级对多个异常进行处理。,2020/5/17,74,异常可分为4类:中断(interrupt)、陷井(trap)、故障(fault)和终止(abort)。,2020/5/17,75,7.中断,CISC机器是在一条指令执行结束后响应中断的;而RISC机器在一条指令执行的适当地方可以响应中断。在嵌入式系统中,中断有三种类型:硬件中断软件中断异常中断,2020/5/17,76,接下来结合三星S3C2410X处理器介绍博创UP-NetARM2410-S嵌入式开发平台。,2.3UP-NetARM2410-S平台介绍(补充),重点,2020/5/17,77,2.3.12410-S平台强大的软件功能,支持Linux、WINCE、UCOS-II操作系统ARM交叉编译连接工具Cygwin、GDB、DGBServer、ARMInsight、Bootloader二进制文件所有硬件驱动程序及实验程序源代码,2020/5/17,78,2410-S平台强大的软件功能,1、可播放电影等媒体文件,支持AVI、MPEG4、MP3等格式文件,媒体文件可存放在移动硬盘或SD、CF卡上;2、可通过摄像头实现视频采集,画面清晰,扫描速度可达到15pic/s;3、无线通讯四种模式:a、外接蓝牙模块可以与蓝牙设备通讯;b、通过PCMCIA插座插上无线网卡可与无线网卡设备实现IEEE802.11b无线局域网通讯;,2020/5/17,79,c、红外通讯;d、通过GPRS模块实现无线通讯。4、两种上网方式:a、通过PCMCIA插上无线上网卡就可以上网;b、在WINCE操作系统下插上局域网线即可上网,在8寸TFT液晶屏下,可以自由方便的浏览网页。,2020/5/17,80,2.3.2UP-NetARM2410-S平台硬件简介,2020/5/17,81,2410-S平台硬件架构,2410核心资源,总线隔离驱动,168Pin扩展槽,网卡设备,LCD驱动,音频电路,串口设备,USB设备,PCMCIA,IDE/CF卡,SD卡接口,IO扩展,电机等,其他资源,局部总线,扩展总线,2020/5/17,82,UP-NETARM2410S平台硬件环境介绍,一.核心板CPU:ARM920T结构芯片,工作频率203MHz,SAMSUNG公司的S3c2410XFLASH:64MNANDflash,SAMSUNG公司的K9F1208RAM:64MBSDRAM,HY公司的HY57V561620ATH,2020/5/17,83,S3C2410ARM处理器,NANDFLASH64M存贮器,SDRAM32M,S3C2410核心板,2020/5/17,84,硬件环境介绍,二.主板USB口:包括1个USBDevice接口和4个USBHost接口。前者直接来自处理器,后者是处理器的Host接口经过由AT43301构成的USBHUB电路扩展出来的4个Host接口;jtag调试口:20针标准口,14针简易口;AUDIO:44.1KHz音频,采用UDA1341芯片构成,可放音和录音,通过IIS总线连接到处理器,具有功放电路驱动喇叭,板载MIC和音频IO插座;,2020/5/17,85,硬件环境介绍,2410-S平台上通过一片ATMEGA8单片机作为控制器,驱动PS2接口、IC卡接口和板载KEYPAD。ATMEGA8单片机通过IIC总线和ARM处理器连接;LED:共阴极LED,由通过IIC总线扩展连接的ZLG7290控制;AD:3个电位器控制输入,8个通道经过跳线设置可全部作为外部模拟电压输入,由S3C2410芯片
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全知识考试试题及答案
- 高利润返租商铺合同模板(3篇)
- 艾灸知识考试试题及答案
- 高新技术企业担保合同集合
- 民航工程结算与飞行安全保障协议
- 智能家居产业人才派遣与智能家居产品研发合同
- 体育场馆餐饮厨师招聘合同范本
- 环保专业面试题目及答案
- 2025至2030中国碳碳复合材料行业市场深度研究与战略咨询分析报告
- 金融风险管理教学课件
- 更换钢板施工方案
- 大学生职业规划大赛《机械电子工程专业》生涯发展展示
- 家政三方合同协议范本
- 预制双层不锈钢烟道及烟囱技术规程
- DB32T 5079-2025城镇供水水表安装及维护技术规程
- 行业法律法规解读
- 大学生就业心理调适与应对
- 中考数学复习计划的个性化调整
- 2025年半月谈材料试题及答案
- DB37-T 5310-2025《城镇排水管渠养护维修服务规范》
- 如何预防动物伤害
评论
0/150
提交评论