S3C44B0X处理器体系结构分析课件_第1页
S3C44B0X处理器体系结构分析课件_第2页
S3C44B0X处理器体系结构分析课件_第3页
S3C44B0X处理器体系结构分析课件_第4页
S3C44B0X处理器体系结构分析课件_第5页
已阅读5页,还剩100页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1S3C44B0X处理器体系结构分析体系结构、接口功能1S3C44B0X处理器体系结构分析体系结构、接口功能2ContentsIntroduction of Samsung ARM CPU embedded Microcontroller Bus architectureThe Usage of ICE引脚定义Application of S3C44B0X2ContentsIntroduction of Samsu3A photo of ARM-R44B0X-002(S3C44B0X)Summarize of S3C44B0X3A photo of ARM-R44B0X-002(S3C4Inn

2、er structure of S3C44B0X4Inner structure of S3C44B0X5Architecture Features- Integrated system for hand-held devices and general embedded applications.- 16/32-Bit RISC architecture and powerful instruction set with ARM7TDMI CPU core.- Thumb de-compressor maximizes code density while maintaining perfo

3、rmance.- On-chip ICEbreaker debug support with JTAGbased debugging solution.- 32x8 bit hardware multiplier.- New bus architecture to implement Low-Power SAMBA II(SAMSUNGs ARM CPU embedded Micro-controller Bus Architecture).5Architecture Features- Integr61.Introduction of Samsung ARM CPU embedded Mic

4、rocontroller Bus architecture由ARM公司推出的AMBA片上总线受到了广大IP开发商和SoC系统集成者的青睐,已成为一种流行的工业标准片上结构。AMBA( Arm Microcontroller Bus architecture)规范主要包括了AHB (Advanced High performance Bus)系统总线和APB( Advanced Peripheral Bus)外围总线。 S3C44B0X 采用在AMBA基础上采用了新的更节能的总线结构:SAMBA II ( Samsungs ARM CPU embedded Micro-controller Bu

5、s Architecture).61.Introduction of Samsung ARM7SAMBA II片上总线AMBA 2.0规范包括四个部分:AHB、ASB、APB和Test Methodology。AHB的相互连接采用了传统的带有主模块和从模块的共享总线,接口与互连功能分离,这对芯片上模块之间的互连具有重要意义。AMBA已不仅是一种总线,更是一种带有接口模块的互连体系。Microprocessors, DMA controllers, memory controllers and other higher performance blocks are suited for conn

6、ection to the AHB/ASB. Lower performance blocks such as UARTs, General Purpose Input/Output (GPIO) and Timers are suited for connection to the APB.7SAMBA II片上总线AMBA 2.0规范包括四个部分:8The reason why adopts partitioning blocks onto separate bus connectionsIn systems which use a common bus, each block adds

7、to the total capacitance on the bus. It is quite common for the total capacitance to exceed the maximum driving capability of buffers in ASIC vendors standard cell libraries. Bus signals are often left under driven, thereby reducing the performance of the bus.8The reason why adopts partiti9AHB (Adva

8、nced High performance Bus)AHB主要用于高性能模块(如CPU、DMA和DSP等)之间的连接,作为SoC的片上系统总线,它包括以下一些特性:单个时钟边沿操作;非三态的实现方式;支持突发传输;支持分段传输;支持多个主控制器;可配置32位128位总线宽度;支持字节、半字节和字的传输。AHB 系统由主模块、从模块和基础结构(Infrastructure)3部分组成,整个AHB总线上的传输都由主模块发出,由从模块负责回应。基础结构则由仲裁器(arbiter)、主模块到从模块的多路器、从模块到主模块的多路器、译码器(decoder)、虚拟从模块(dummy Slave)、虚拟主模

9、块(dummy Master)所组成。 9AHB (Advanced High performanc10AHB总线互连结构图 AHB总线互连结构图 10AHB总线互连结构图 AHB总线互连结构图 11APB:Advanced Peripheral BusAPB主要用于低带宽的周边外设之间的连接,例如UART、1284等,它的总线架构不像AHB支持多个主模块,在APB里面唯一的主模块就是APB桥。其特性包括:两个时钟周期传输;无需等待周期和回应信号;控制逻辑简单,只有四个控制信号。1)系统初始化为IDLE状态,此时没有传输操作,也没有选中任何从模块。2)当有传输要进行时,PSELx1,PENAB

10、LE0,系统进入SETUP状态,并只会在SETUP 状态停留一个周期。当PCLK的下一个上升沿时到来时,系统进入ENABLE 状态。11APB:Advanced Peripheral Bus12APB:Advanced Peripheral Bus3)系统进入ENABLE状态时,维持之前在SETUP 状态的PADDR、PSEL、PWRITE不变,并将PENABLE置为1。传输也只会在ENABLE状态维持一个周期,在经过SETUP与ENABLE状态之后就已完成。之后如果没有传输要进行,就进入IDLE状态等待;如果有连续的传输,则进入SETUP状态。 12APB:Advanced Peripher

11、al Bus313APB传输状态图13APB传输状态图14基于AMBA的片上系统大多数挂在总线上的模块(包括处理器)只是单一属性的功能模块:主模块或者从模块。主模块是向从模块发出读写操作的模块,如CPU,DSP等;从模块是接受命令并做出反应的模块,如片上的RAM,AHBAPB 桥等。14基于AMBA的片上系统大多数挂在总线上的模块(包括处理15基于AMBA的片上系统还有一些模块同时具有两种属性,例如直接存储器存取(DMA)在被编程时是从模块,但在系统读传输数据时必须是主模块。如果总线上存在多个主模块,就需要仲裁器来决定如何控制各种主模块对总线的访问。虽然仲裁规范是AMBA总线规范中的一部分,但

12、具体使用的算法由RTL设计工程师决定,其中两个最常用的算法是固定优先级算法和循环制算法。 15基于AMBA的片上系统还有一些模块同时具有两种属性,例16基于AMBA的SoC结构图 16基于AMBA的SoC结构图 17Energy savingIncreasing levels of on chip system integration means that more functional units need to be interconnected. The need to limit clock cycle times and power consumption means that bu

13、s capacitance must be as low as possible. This can be done effectively by partitioning functional units onto discrete bus connections that are joined by bus bridges. 17Energy savingIncreasing leve18Partitioning blocks onto separate bus connections has several advantages:Each bus has a lower capacita

14、nce giving higher speed operation or reduced power consumption.If frequently accessed peripherals are grouped on a separate bus from peripherals that are only accessed occasionally then power can be saved.The high bandwidth data transfer required for the LCD controller occurs on its own local bus st

15、ub, reducing power consumption.18Partitioning blocks onto sep19开发系统ARM 全面的调试解决方案包括电路内仿真工具Multi-ICE 和MultiTrace 以及片上嵌入式电路单元EmbeddedICE 和Embedded Trace Macrocell(ETM).Multi-ICE: Multi-ICE 是ARM 的JTAG 电路内仿真器ICE 支持ARM 实时调试提供触发点位置上处理器运行的宝贵历史记录和现场信息通过Multi-ICE 可以控制存储器和内核寄存器内容.19开发系统ARM 全面的调试解决方案包括电路内仿真工具M2

16、02.The introduction of EmbeddedlCEThe ICErun controlunit allows the core to be started and stopped under control of the connected debugger software. The user can then examine and modify registers and memory, and set breakpoints and watch points. ICE also provides support for code download, trace and

17、 real-time debug. 202.The introduction of Embedd21 The introduction of EmbeddedlCEEmbeddedlCE是集成在ARM内核中的嵌入式ICE仿真器,通过对EmbeddedlCE的控制,对EmbeddedlCE中寄存器的读取,可以获得ARM内核的状态,为程序设置断点以及读取Debug通信通道。EmbeddedICE的长度是38位,包括:32位数据,5位的访问EmbeddedICE中寄存器的地址,1个读写控制位。21 The introduction of Embedde22The introduction of Em

18、beddedlCEEmbeddedICE的一个主要作用就是可以在ARM的程序中设置软件或者硬件的断点。在ARM7TDMI处理器的内核中,有两种断点的设置方式:硬件断点和软件断点。 在有两个Watchpoint资源的ARM7TDMI的内核中,断点可以有如下情况:2个硬件断点,没有软件断点;1个硬件断点,任意多个软件断点;任意多个软件断点。22The introduction of Embedded23EmbeddedlCE宏单元组成一个与EmbeddedlCE 兼容的 宏单元包括一个 内核、少量的内核调试逻辑、一个 测试端口()控制器和EmbeddedlCE 宏单元。EmbeddedlCE 宏单

19、元包括断点寄存器,后者能够比 较地址、数据和控制总线同寄存器内的设置值。若两者匹配,会产生一个断点信号,该信号将被传送到处理器。举个例子来说,当一个特定地址的指令或一个特定的数据值被加载入指定的位置,宏单元就会产生一个断点。23EmbeddedlCE宏单元组成一个与Embeddedl242425EmbeddedlCE使用 如果在一条指令上设置了断点,当指令到达流水线的执行级时,指令的执行将被中断,处理器进入调试状 态。然后,处理器和存储系统通过控制器由进行状态检测。一旦处理器进入调试状态,它就会停止从数据总线读取指令,并且与存储系统隔离。 EmbeddedlCE此时就可以通过扫描链将指令读入流

20、水线、驱动处理器。寄存器和存储内容在调试状态下仍可以进行访问。这个过程是可逆的,用户可以在调试器下把代码下载进存储器,避免了烧写 的不便。25EmbeddedlCE使用 如果在一条指令上设置了断点,26EmbeddedlCE在多处理器debug中的使用EmbeddedlCE宏单元提供的调试特征使 处理器能够在多处理器环境下进行调试。当 处理器遇到一个断点时,它的执行就被中断,控制权通过接口交由调试器。处理器向存储系统发出一个“调试确认”( debug Acknowledge )信号,告知后者处理器处于调试状态。同时,它不再向存储器发出访问请求,保证了其它处理器或者 通道继续工作、继续与存储系统

21、通信。在调试过程的最后, 处理器会发出一个“存储请求”(memory equest)信号,系统控制器将根据此信号对存储系统作出仲裁。26EmbeddedlCE在多处理器debug中的使用Emb27S3C44B0X芯片及引脚分析S3C44B0X共有160只引脚,采用QFP封装具有大量的电源和接地引脚,以及地址总线、数据总线和通用I/O口,以及其他的专用模块如UART、IIC等接口在硬件系统的设计中,应当注意芯片引脚的类型, S3C44B0X的引脚主要分为三类,即:输入(I)、输出(O)、输入/输出(I/O)输出类型的引脚主要用于S3C44B0X对外设的控制或通信,由S3C44B0X主动发出,这些

22、引脚的连接不会对S3C44B0X自身的运行有太大的影响输入/输出类型的引脚主要是S3C44B0X与外设的双向数据传输通道27S3C44B0X芯片及引脚分析S3C44B0X共有16028S3C44B0X的引脚信号描述 总线控制信号28S3C44B0X的引脚信号描述 总线控制信号29S3C44B0X的引脚信号描述 DRAM/SDRAM/SRAM29S3C44B0X的引脚信号描述 DRAM/SDRAM30S3C44B0X的引脚信号描述 LCD控制信号30S3C44B0X的引脚信号描述 LCD控制信号31S3C44B0X的引脚信号描述 TIMER/PWM控制信号31S3C44B0X的引脚信号描述 TI

23、MER/PWM控32S3C44B0X的引脚信号描述 中断控制信号32S3C44B0X的引脚信号描述 中断控制信号33S3C44B0X的引脚信号描述 DMA控制信号33S3C44B0X的引脚信号描述 DMA控制信号34S3C44B0X的引脚信号描述 UART控制信号34S3C44B0X的引脚信号描述 UART控制信号35S3C44B0X的引脚信号描述 IIC-BUS控制信号35S3C44B0X的引脚信号描述 IIC-BUS控制信36S3C44B0X的引脚信号描述 IIS-BUS控制信号36S3C44B0X的引脚信号描述 IIS-BUS控制信37S3C44B0X的引脚信号描述 SIO控制信号37S

24、3C44B0X的引脚信号描述 SIO控制信号38S3C44B0X的引脚信号描述 ADC38S3C44B0X的引脚信号描述 ADC39S3C44B0X的引脚信号描述 GPIO39S3C44B0X的引脚信号描述 GPIO40S3C44B0X的引脚信号描述 复位和时钟信号40S3C44B0X的引脚信号描述 复位和时钟信号41S3C44B0X的引脚信号描述 JTAG测试逻辑JTAG是Joint Test Action Group的缩写;是IEEE1149.1标准41S3C44B0X的引脚信号描述 JTAG测试逻辑JT42S3C44B0X的引脚信号描述 电源42S3C44B0X的引脚信号描述 电源43

25、ARM接口简述ARM接口主要包括:键盘接口LED显示器接口LCD显示器接口S3C44BOX内部集成的UARTUSB接口JTAG接口 触摸屏接口IIC接口43 ARM接口简述ARM接口主要包括:44用ARM芯片实现键盘接口 本应用实例中,要与4X4的矩阵键盘接口,采用节省口线的“行扫描法”方法来检测键盘,这样只需要8根口线,在此选取PF口作为检测键盘用端口,并设定PF0 PF3为输出扫描码的端口,PF4-PF7为键值读入口。44用ARM芯片实现键盘接口 本应用实例中,要与4X4的矩45 用ARM芯片实现键盘接口矩阵键盘按键的识别方法,此方法分两步进行: 识别键盘哪一行的键被按下:让所有行线均为低

26、电平,检查各列线电平是否为低,如果有列线为低,则说明该列有键被按下,否则说明无键被按下。如果某列有键被按下,识别键盘哪一行的键被按下:逐行置低电平,并置其余各行为高电平,检查各列线电平的变化,如果列电平变为低电平,则可确定此行此列交叉点处按键被按下。45 用ARM芯片实现键盘接口矩阵键盘按键的识别方法,46 行扫描法获取键值的程序设计1. 寄存器设置 接口中利用了PF口的相关寄存器,PF口的寄存器有3个:PCONF ,PDATF和PUPF。 (1)设置PCONF寄存器需要设定PF0-3为输出口,PF4 - 7为输入口,因此,在端口工作之前设置: rPCONF 000 000 000 00 01

27、 01 01 01 B0 x55; (2)设置PDATF寄存器PF0-3作为输出口输出扫描码时,可采用语句:rPDATF=Oxf0; PF0-3全写入0PF4-7作为输入口读入键值时,采用语句:Keyval=(rPDATF&0 xf0)4; (3)设置PUPF寄存器设置内部上拉电阻的语句为:rPUPF=0 x00; /使能PF0-7的内部上拉电阻46 行扫描法获取键值的程序设计1. 寄存器设置47 行扫描法获取键值的程序设计2.编写键盘扫描程序47 行扫描法获取键值的程序设计2.编写键盘扫描程序48 LED显示器接口概述 LED(Light Emitting Diode)常称为七段发光二极管,

28、 在专用的微型计算机系统中,特别是在嵌入式控制系统中, 应用非常普遍。它价格低廉、体积小、功耗低,而可靠性又很好,因此,从单板微型机、袖珍计算机到许多微型机控制系统及数字化仪器都用LED作为输出显示。48 LED显示器接口概述 LED(Ligh49LED显示器接口概述49LED显示器接口概述50 LED显示器接口概述在多个LED显示电路中,通常把阴(阳)极控制端接至一输出端口,我们称它为位控端口;而把数据显示段接至一个输出端口,我们称这个端口为段控端口。段控端口处应输出十六进制数的7段代码。为了将一个4位二进制数(可能为一个十六进制数,也可能是一个BCD码)在一个LED上显示出来,就需要将4位

29、二进制数译为LED的7位显示代码。要完成译码功能,可以采用两种方法:50 LED显示器接口概述在多个LED显示电路51 一种方法是采用专用芯片,可以实现对BCD码的译码,但不能对大于9的二进制数译码。 另一种常用的办法是软件译码法。在软件设计时,将0到F共16个数字(也可以为0到9)对应的显示代码组成一个表。51 一种方法是采用专用芯片,可52 用ARM芯片实现LED显示接口 1接口电路52 用ARM芯片实现LED显示接口 1接口电路53用ARM芯片实现LED显示接口2.初始化程序如下。 (1)设置PCONF、PCONG寄存器,由于需要设定端口F、G为输出口,因此,在端口工作之前设置: rPC

30、ONF 001 001 001 01 01 01 01 01 B0 x12555; rPCONG 01 01 01 01 01 01 01 01 B0 x5555;(2)设置PUPF、PUPG寄存器,设置内部上拉电阻的语句为: rPUPF=0 x00; /使能PF0-7的内部上拉电阻 rPUPG=0 x00; /使能PG0-7的内部上拉电阻53用ARM芯片实现LED显示接口2.初始化程序如下。54用ARM芯片实现LED显示接口3. 7段数码LED编程 54用ARM芯片实现LED显示接口3. 7段数码LED编程55 LCD显示器接口概述液晶显示是一种被动的显示,它不能发光,只能使用周围环境的光。

31、基本原理是通过给不同的液晶单元供电,控制其光线的通过与否,从而达到显示的目的。LCD有三种显示方式:反射型,透射型和透反射型。55 LCD显示器接口概述液晶显示是一种被动的显56市面上出售的LCD有两种类型: 一种是带有驱动电路的LCD显示模块,这种LCD可以方便地与各种低档单片机进行接口; 另一种是LCD显示屏,没有驱动电路,需要与驱动电路配合使用56市面上出售的LCD有两种类型:57 LCD控制器 LCD 控制器用来把定位在系统存储器中的视频缓冲区的LCD图象数据传输到LCD驱动器,并产生必须的LCD控制信号 。REGBANK具有18个可编程寄存器,用于配置LCD控制器LCDCDMA为专用

32、DMAVIDPRCS 从LCDCDMA 接收数据,将相应格式的数据通TIMEGEN包含可编程的逻辑 TIMEGEN部分产生VFRAME, VLINE, VCLK, VM等信号。57 LCD控制器 LCD 控制器用来58 LCD应用实例1.LCD接口电路 58 LCD应用实例1.LCD接口电路 59 LCD应用实例3. LCD初始化程序59 LCD应用实例3. LCD初始化程序60S3C44BOX内部集成的UART S3C44B0X的UART(通用异步收发器)单元提供两个独立的异步串行I/O端口,每个都可以在中断和DMA两种模式下工作。它们支持的最高波特率为115.2Kbps。每个UART通道包

33、含2个16位FIFO分别提供给接收和发送。 每个UART模块包含以下几个部件:波特率发生器,发送器,接收器和控制单元。60S3C44BOX内部集成的UART 61S3C44BOX内部集成的UART61S3C44BOX内部集成的UART62 UART操作数据发送数据接收 可检测溢出错误、奇偶校验错误、帧错误和终止状况。动流控制(AFC) 非自动流控制(通过软件控制nRTS和nCTS) 调制解调器接口62 UART操作数据发送63 中断DMA请求产生器 S3C44BOX的每个UART都有7个状态信号:接收FIFO/缓冲区数据准备好、发送FIFO缓冲区空、发送移位寄存器空、溢出错误、奇偶校验错误、帧

34、错误和中止,所有这些状态都由对应的UART状态寄存器(UTRSTATn/UERSTATn)中的相应位来表现。63 中断DMA请求产生器 S3C44BOX的每64举例:当接收器要将接收移位寄存器的数据送到接收FIFO,它会激活接收FIFO满状态信号,如果控制寄存器中的接收模式选为中断模式,就会引发接收中断。当发送器从发送FIFO中取出数据送到发送移位寄存器,那么FIFO空状态信号将会被激活。如果控制寄存器中的发送模式选为中断模式,就会引发发送中断。64举例:65UART提供的两种模式 1. 回送模式 S3C44B0X的UART提供一个测试模式,即回送模式。在这种模式下,发送的数据会立即被接收。这

35、一特性运行处理器校验内部发送和接收通道的功能。这种模式可以通过设置UART控制寄存器(UCONn)中的回送位来设定。 2.红外通信模式 S3C44B0X的UART模块支持红外线(IR)发送和接收。可以通过设置UART控制寄存器(ULCONn)中的红外模式位来选择这一模式。65UART提供的两种模式 1. 回送模式66 与FIFO有关的中断 类型FIFO类型非FIFO模式Rx中断每当接收数据达到接收FIFO触发的水平,就产生接收中断;如果FIFO非空且连续3个字时间没有接收到任何数据,就产生超时中断;每当接收数据满,接收移位寄存器将产生一个中断;Tx中断每当发送数据达到发送FIFO触发的水平,就

36、产生发送中断;每当发送数据空,发送保持寄存器将产生一个中断;错误中断帧错误、奇偶校验错误和被检测到并按字节接收的中止信号,都将产生错误中断;当达到接收FIFO的顶部,就会产生溢出错误中断;所有错误都会立即产生一个错误中断。但两个错误同时发生,只有一个中断会产生;66 与FIFO有关的中断 类型FIFO类67 波特率发生器 波特率发生器以MCLK作为时钟源 每个UART的波特率发生器为传输提供了串行移位时钟。波特率时钟由通过时钟源的16分频及一个由UART波特率除数寄存器(UBRDIVn)指定的16位除数决定。 UBRDIVn(取整)(MCLK(波特率16)-1 67 波特率发生器 波特率发生器

37、以MCLK作为时钟源 68 UART的寄存器1.UART线控制寄存器 ULCONn位描述初始值保留70红外线模式6该位确定是否使用红外通信模式0:正常模式 1:红外收发模式0奇偶校验模式5:3 该位确定奇偶如何产生和校验0 xx:无校验位 100:奇校验 101:偶校验 110:校验位强制/检测置1 111:校验位强制/检测置0000停止位的数量2该位确定停止位的个数,0:1位停止位 1:2位停止位0数据位长度1:0该位确定数据位的个数00:5位 01:6位 10:7位 11:8位0068 UART的寄存器1.UART线控制69 UART的寄存器2.UART控制寄存器UCONn位描述初始值发送

38、中断类型9发送中断请求类型0:脉冲(在发送缓冲区变空时立即引发中断)1:电平(在发送缓冲区为空时引发中断)0接收中断类型8接收中断请求类型0:脉冲(接收缓冲区接收到数据时立即引发中断)1:电平(接收缓冲区正在接收数据时引发中断)0接收超时中断使能7在UART的FIFO使能的情况下,使能禁止接收超时中断 0:禁止 1:使能0接收错误状态中断使能6使能UART在接收操作中发生错误时的错误中断响应0:不产生错误状态中断 1:产生错误状态中断0回送模式5该位使UART自动进入回送模式0:正常操作 1:回送模式0发送中止信号4 该位将引发UART在一帧时间内发送中止信号, 该信号发送 完后,该位自动被清

39、除0:正常操作 1:发送中止信号0发送模式3:2这2位决定当前哪个功能项能够向UART发送保持寄存器写入发送数据00:禁止 01:中断请求或轮流检测模式10: BDMAO请求(仅对UARTO)11: BDMAI请求(仅对UART1)00接收模式1:0这2位决定当前哪个功能项能够从UART接收保持寄存器中读出接收数据 00:禁止01:中断请求或轮流检测模式 IO:BDMAO请求(仅对UARTO) 11:BDMAl请求(仅对UART1)0069 UART的寄存器2.UART控制寄70 UART的寄存器3.FIFO控制寄存器 UFCONn位描述初始值发送FIFO的触发电平7:6这两位确定发送FIFO

40、的触发条件 00:空 01:4字节 10 :8字节 11 :12字节00接收FIFO的触发电平5:4这两位确定接收FIFO的触发条件 00 :4字节01:8字节 10: 12字节 11:16字节00保留30发送FIFO复位2该位在FIFO复位后自动清除 0 :正常 1:发送FIFO复位0接收FIFO复位1该位在FIFO复位后自动清除 0 :正常 1:接收FIFO复位0FIFO使能00 :禁止 FIFO 1 :FIFO 使能070 UART的寄存器3.FIFO控制寄存71 UART的寄存器4.Modem控制寄存器UMCONn位描述初始值保留7:5这3位必须为 0000自动流控制4AFC是否允许0

41、 :禁止 1 :使能0保留3:1这3位必须为 0000请求发送0如果AFC允许,该位忽略;如果AFC禁止,必须由软件来控制nRTS。0 : 高电平(不激活 nRTS) 1 : 低电平(激活 nRTS)071 UART的寄存器4.Modem控制72 UART的寄存器5.发送/接收状态寄存器 UTRSTATn位描述初始状态发送移位寄存器为空2当发送移位寄存器中不包含有效数据或移位寄存器为空,该位自动被置位。0:非空1:发送保持和移位寄存器为空1发送缓冲器为空1当发送缓冲区寄存器中不包含有效数据,这一位将自动被置位 0:缓冲区寄存器非空 1:空如果使用了FIFO,则用户不用检测这个位,而应当检测UF

42、STAT中发送FIFO计数器位和FIFO满位1接收缓冲器数据准备好0当接收缓冲器寄存器中包含了有效数据,这一位将自动被置位0:完全为空 1:缓冲区寄存器中包含有效数据如果使用了FIFO则用户不用检测这个位,而应当检测UFSTAT中接收FIFO计数器位072 UART的寄存器5.发送/接收状态73 UART的寄存器6.UART错误状态寄存器 UERSTATn位描述初始值间隔中断3如果接收到某个中止信号,该位将自动置10:未接收到中止信号 1:接收到中止信号0数据帧错误2如果在接收操作中发生了帧错误,该位将自动置1 0:接收中没有发生帧错误 1:帧错误0奇偶错误1如果在接收操作中发生了奇偶校验错误

43、,该位将自动置1 1:奇偶校验错误 0:接收中没有发生奇偶校验错误0Overrun错误0如果在接收操作中发生了溢出错误,该位将自动置1 0:接收中没有发生溢出错误 1 :溢出错误073 UART的寄存器6.UART错误状74 UART的寄存器7.UART的FIFO状态寄存器UFSTATn位描述初始值保留15:10000000发送FIFO满9当发送 FIFO满时该位为10 : 0字节发送 FIFO 的数据个数 15字节 1 :满0接收FIFO满8当FIFO将要满时,该位为10 : 0字节接收 FIFO 数据个数 15字节 1 :满0发送FIFO计数器7:4发送FIFO里的数据数量0000接收FI

44、FO计数器3:0接收 FIFO里的数据数量000074 UART的寄存器7.UART的FI75 UART的寄存器8.Modem状态寄存器: Modem状态寄存器0(UMSTAT0)、寄存器1(UMSTAT1)的地址分别为0 x01D0001C、0 x01D0401C,可读, 初始值为0 x06。9.UART发送/接收保持(缓冲区)寄存器: 发送/接收保持寄存器0(UTXH0)、寄存器1(UTXH1)的地址在小模式下分别为0 x01D00020、0 x01D04020,在大模式下分别为0 x01D00023、0 x01D04023,可写, 初始值可编程。10.UART波特率除数寄存器 UART波

45、特率除数寄存器0(UBRDIV0)、寄存器1(UBRDIV1)的地址分别为0 x01D00028、0 x01D04028,可读写, 初始值可编程。75 UART的寄存器8.Modem状态76USB接口概述 USB(通用串行总线)接口正在被用于多种嵌入式系统设备的数据通信中,如移动硬盘、数码相机、PDA、高速数据采集设备等。它是由Compaq、HP、Intel、Lucent、Microsoft、NEC和Philips七家公司联合推出的新一代标准接口总线。是一种连接外围设备的机外总线。 其主要性能特点如下: 提供机箱外的即插即用功能 ;每个USB系统中有个主机,采用“级联”方式USB总线可连接多个

46、外部设备;适用于带宽范围在几千位秒(Kb/s)一几百兆位l秒(Mb/s)的设备;低成本的电缆和连接器;具有错误检测和处理机制;较低的协议开销带来了高的总线性能;支持主机与设备之间的多数据流和多消息流传输 。76USB接口概述 USB(通用串行总线)接口正在被用于多种77 USB系统组成一个USB系统由三部分来描述:USB主机:在任一USB系统中只有一个主机,到主计算机系统的USB接口被称作主控制器。 USB设备:分为Hub(集线器)和Function(功能)两大类。Hub提供到USB的附加连接点,功能为主机系统提供附加的性能。USB互连:USB互连指的是USB设备与主机的连接和通信方式,它包括

47、总线拓扑结构、内层关系、数据流模型和USB调度表。 USB总线用来连接各USB设备和USB主机 。77 USB系统组成一个USB系统由三78 USB的物理接口USB总线的电缆有4根导线:一对标准尺寸的双绞信号线和一对标准尺寸的电源线。USB总线支持的数据传输率有三种:高速信令位传输率为480Mbs;全速信令位传输率为12Mbs;低速信令位传输率为1.5Mb/s。USB2.0支持在主控制器与Hub之间用高速传输、全速和低速数据,而Hub与设备之间以全速或低速传输数据,这种支持能力可以将全速设备和低速设备对高速设备可用带宽的影响减到最小。78 USB的物理接口USB总线的电缆有79 USB的电源

48、USB的电源规范包括两个方面:电源分配用 来处理USB设备如何使用主机通过USB总线提供的电源。电源管理 用来处理USB系统软件和设备如何适应主机上的电源管理系统。79 USB的电源 USB的电源规范80 USB的总线协议 USB是一种查询(Polling)总线,由主控制器启动所有的数据传输。USB上所挂连的外设通过由主机调度的( Host-Scheduled)、基于令牌的(Token-Based)协议来共享USB带宽。大部分总线事务涉及3个包的传输 :令牌包 (Token Packet) 数据包(Data Packet) 握手包(Handshake Packet)80 USB的总线协议 US

49、B是一种查询(81主控制器和Hub之间的某些总线事务涉及4个包的传输,这些类型的事务用来管理主机与全/低速设备之间的数据传输。主机与设备端点之间的USB数据传输模型被称作管道,管道有两种类型:流和消息。81主控制器和Hub之间的某些总线事务涉及4个包的传输,这些82 USB接口工作原理 USB设备最大的特点就是即插即用。 原因:USB协议规定在主机启动或USB设备插入系统时都要对设备进行配置。就是按照USB协议,在USB主机与USB设备之间进行的一系列“问答”过程 。从而主机知道了设备的情况以及该如何与设备通讯,并为设备设置一个唯一的地址 。82 USB接口工作原理 USB设备最大的特83在配

50、置阶段主机也了解了设备端点的使用情况,便可以通过这些端点来进行特定传输方式的通讯。对于标准USB设备,操作系统带有它的驱动,而不需要编写专门的主机驱动程序。但这样就必须为它选择一种标准命令集;但对于非标准设备,则可以自定义一套请求指令集,并需要编写专门的主机驱动程序来实现对USB设备的操作。83在配置阶段主机也了解了设备端点的使用情况,便可以通过这些84 USB设备应用对USB设备的开发需要考虑的因素:选择USB接口控制器芯片。编写USB设备要执行的USB通信代码(也称为固件程序)。USB设备需要执行的其他功能,例如处理接收数据和即将发送数据所需要的硬件和程序代码。一台支持USB接口的主机。主

51、机上装有与USB设备通信的驱动软件。84 USB设备应用对USB设备的开85 USB设备应用USB设备开发的一般步骤:根据所要开发的设备的功能需要,确定设备在USB总线上的位置、传输数据的速度以及传输数据的量等,从而确定选择哪一类的USB控制器芯片,并进一步具体决定采用芯片的厂家和型号,然后根据该器件和其他所需芯片进行电路设计。编写固件程序,其作用是让主机能够识别该设备,并响应主机的各种请求。根据所用设备是否为标准USB设备,来决定是另外编写驱动,还是使用操作系统自带的驱动程序来访问USB设备。把编写好的固件程序载入 USB设备,并将USB设备插入主机总线打开应用程序可以对该设备进行指定的操作

52、。按需要调试和重复以上步骤。85 USB设备应用USB设备开发的86 以太网接口概述以太网以其高度灵活、相对简单、易于实现的特点,成为当今最重要的一种局域网建网技术。通常所说的以太网主要是指以下3种不同的局域网技术:以太网/IEEE 802.3 采用同轴电缆作为网络介质,传输速率达到10 Mbps。100 Mbps以太网 又称为快速以太网,采用双纹线作为网络介质,传输速率达到100 Mbps。1000 Mbps以太网 又称为千兆以太网,采用光缆或双纹线作为网络介质,传输速率达到1000 Mbps(1 Gbps)。 86 以太网接口概述以太网以其高度灵活87以太网控制器RTL8019 RTL80

53、19是高度集成的以太网控制器,为即插即用式NE2000兼容网络适配器提供了简易的解决方案。RTL8019共有32个输入输出地址,对应地址偏移量为00hlFh。RTL8019的内部寄存器是分页的,每个寄存器都是8位。87以太网控制器RTL8019 RTL8019是高度集成的以88 RTL8019的复位RTL8019的复位引脚RSTDRV是高电平有效的复位信号,高电平时间长度需大于800 ns,通常在RSTDRV从高电平回到低电平之后的100ms时,再对RTL8019进行读写操作,以确保完全复位。当处理器复位时,以太网控制器也复位。热复位:为了保证能够完全复位,可以使用热复位方法。18h一1Fh的

54、8个地址,为复位端口,对该端口的偶数地址读或写入任何数,都会引起以太网控制器的复位,这种方式称为热复位。88 RTL8019的复位RTL801989RTL8019的复位中断状态寄存器中的第7位RST跟复位有关,它的地址为07h,位于第0页,可直接读写。在以太网控制器执行了正确复位之后该位为1。一般在复位之后检查该标志位,以确认是否复位成功。89RTL8019的复位中断状态寄存器中的第7位RST跟复位90 RTL8019寄存器 1.命令寄存器CR:地址偏移量是00h,长度为一个字节。 位符号描述7,6PS1,PS0选择寄存器页 00:0页 01:1页 10:2页 11:3页(为RTL8019AS

55、配置)53RD20表示要执行的功能 000:不允许001:远程读取以太网控制器内存010:远程写入以太网控制器内存011:发送包 1XX:中止/完成远程DMA2TXP要发送数据包时,要将该位置1,该位可能在发送完成后或者发送中止时内部清0,对该位写0操作无效1STA写STP组合使用0STP该位是停止命令。该位被置1,就停止接收或发送任何数据包,上电时该位为1。STA 与STP组合使用,10:启动命令 01:停止命令90 RTL8019寄存器 1.命令寄存器91 RTL8019寄存器(1)2.与发送接收相关的寄存器:PSTART:接收缓冲区的起始页地址(位于01h,在第0页可写,在第2页可读)。

56、PSTOP:接收缓冲区的结束页地址(该页不用于接收,位于02h,在第0页可写,在第2页可读)。BNRY:边界寄存器(作为读指针使用,位于03h,在第0页可读写)。这个寄存器用来避免对环形接收缓冲区中数据的错误覆盖,通常用作指针,指向接收缓冲区中已经被读取的最后一个页。CURR:当前页寄存器(作为写指针使用,位于07h,在第1页可读写)。这个寄存器的内容指向接收缓冲区中第一个可用于接收新数据的页面。DCR:数据配置寄存器。将它设置为使用FIFO缓存,普通模式,8位数据传输模式。字节顺序为高位字节在前,低位字节在后。91 RTL8019寄存器(1)2.与发送接92 RTL8019寄存器(2)TPS

57、R:为发送页的起始页地址。初始化为指向第一个发送缓冲区的页。RCR :接收配置寄存器,设置为使用接收缓冲区,仅接收与自己地址相匹配的数据包(以及广播地址数据包)和多点播送地址包;小于64字节的包和校验错的数据包将被丢弃。TCR:发送配置寄存器,启用CRC(循环冗余校验)自动生成和校验功能,工作在正常模式。RSAR0,1:对存储器进行操作的起始地址寄存器,RSAR0存放低8位,RSARl存放高8位。RBCR0,1:对存储器操作的字节计数寄存器,RBCR0存放低8位,RBCRl存放高8位。TBCR0,1:发送字节计数器,这两个寄存器设置了要发送数据包中的字节个数。TBCR0存放低8位,TBCRl存

58、放高8位。92 RTL8019寄存器(2)TPSR:为发93 RTL8019寄存器3.其他寄存器:IMR:中断屏蔽寄存器,设置成0 x00时,屏蔽所有的中断,设置成0 xFF将允许中断。MAR0一MAR8:多点播送地址,可以全写0 xFF。PAGE2的寄存器是只读的,不用设置。PAGE3的寄存器不是NE2000兼容的,所以也不用设置。93 RTL8019寄存器3.其他寄存器:94 RAM空间结构 以太网控制器含有16KB的RAM,地址为0 x40000 x7FFF,每256个字节称为一页,共有64页。使用0 x400 x45作为以太网控制器的发送缓冲区,共6页。使用0 x460 x5F作为以太

59、网控制器的接收缓冲区,共32页。CURR和BNRY寄存器是以太网数据收发中用到的两个最主要的寄存器,CURR和BNRY主要用来控制缓冲区的存取过程,保证能顺次写入和读出。 CURR是以太网控制器写接收缓冲区的指针。BNRY指向接收缓冲区中已经被读取的最后一个页。94 RAM空间结构 以太网控制器含有195 网卡的物理地址 在完成对寄存器的初始化后,还要对以太网控制器的物理地址(即48位的以太网控制器地址)进行设置。RAM地址中的0 x00000 x000B的12字节是网卡的物理地址。网卡的物理地址本应该是6个字节的,这12字节是单双地址重复存储的。0 x000B后面的地址存储的是生产厂商的代码和产品标识代码,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论