收藏 分享(赏)

嵌入式系统最小系统硬件设计.pdf

上传人:精品资料 文档编号:10455317 上传时间:2019-11-14 格式:PDF 页数:9 大小:817.67KB
下载 相关 举报
嵌入式系统最小系统硬件设计.pdf_第1页
第1页 / 共9页
嵌入式系统最小系统硬件设计.pdf_第2页
第2页 / 共9页
嵌入式系统最小系统硬件设计.pdf_第3页
第3页 / 共9页
嵌入式系统最小系统硬件设计.pdf_第4页
第4页 / 共9页
嵌入式系统最小系统硬件设计.pdf_第5页
第5页 / 共9页
点击查看更多>>
资源描述

1、引言 嵌入式系统是以应用为中心 ,软件硬件可裁剪 ,适应应用系统对功能 、可靠性 、成本 、体积、功耗等综合性严格要求的专用计算机系统 。本文主要研究了基于 SEP3202(内嵌 ARM7TDMI处理器内核 )的嵌入式最小系统 ,围绕其设计出相应的存储器 、总线扩展槽 、电源电路 、复位电路 、 JTAG、 UART等一系列电路模块 。 嵌入式最小系统 根据 IEEE的定义 ,嵌入式系统是 :控制 、监视或者辅助装置 、机器和设备运行的装置 。这主要是从应用上加以定义的 ,从中可以看出嵌入式系统是软件和硬件的综合体 ,还可以涵盖机械等附属装置 。 不过上述定义并不能充分体现出嵌入式系统的精髓

2、,目前国内一个普遍被认同的定义是 :以应用为中心 、以计算机技术为基础 、软件硬件可裁剪 、适应应用系 统对功能 、可靠性 、成本 、体积 、功耗严格要求的专用计算机系统 。 嵌入式最小系统即是在尽可能减少上层应用的情况下 ,能够使系统运行的最小化模块配置 。以 ARM内核嵌入式微处理器为中心 ,具有完全相配接的 Flash电路 、 SDRAM电路 、 JTAG电路 、电源电路 、晶振电路 、复位信号电路和系统总线扩展等 ,保证嵌入式微处理器正常运行的系统 ,可称为嵌入式最小系统 。对于一个典型的嵌入式最小系统 ,以 ARM处理器为例 ,其构成模块及其各部分功能如图 1所示 ,其中 ARM微处

3、理器 、 FLASH和 SDRAM模块是嵌入式最小系统的核心部分。 微处理器 采用了 SEP3203; 电源模块 为 SEP3203内核电路提供 2.5V的工作电压 ,为部分外围芯片提供 3.3V的工作电压; 时钟模块 (晶振 ) 通常经 ARM内部锁相环进行相应的倍频 ,以提供系统各模块运行所需的时钟频率输入 。 32.768kHz给 RTC和 Reset模块 ,产生计数时钟 , 10MHz作为主时钟源 ; Flash存储模块 存放嵌入式操作系统 、用户应用程序或者其他在系统掉电后需要保存的用户数据等 ; SDRAM模块 为系统运行提供动态存储空间 ,是系统代码运行的主要区域 ; JTAG模

4、块 对芯片内部所有部件进行访问 ,通过该接口对系统进行调试 、编程等 ,实现对程序代码的下载和调试 ; UART模块 用于系统与其他应用系统的短距离双向串行通信 ; 复位模块 实现对系统的复位 ; 系统总线扩展 引出地址总线 、数据总线和必须的控制总线 ,便于用户根据自身的特定需求 ,扩展外围电路 。 SEP3202简述 SEP3203处理器内嵌由英国 ARM 公司提供的 ARM7TDMI 处理器内核 ,整个芯片可以运行在75MHz。集成了支持黑白 ,灰度 ,彩色的 LCD 控制器 ;多媒体加速模块 ,用于提供多 媒体处理定点矢量乘加的计算能力 ;支持低成本的 NAND Flash 控制器并可

5、从其直接启动 ;支持多种外存类型 : SRAM, NOR Flash, SDRAM;支持实时钟 ( RTC); 支持四通道的定时器和两通道的 PWM;支持用于连接触摸屏通讯的 SPI 协议 ;支持两个 UART 控制器 ,其中一个支持红外传输 ;支持USB1.1 Device 控制器用于 PC 与移动终端之间的高速信息传输 ;支持 MMC/SD 卡控制器 ,用户可以扩展系统的存储能力和外设功能 ;支持兼容 AC97 协议的控制器 ,用于音频文件的播放和录制。 SEP3203 处理器内嵌 20KByte 零等待的静态存储器 ( SRAM), 用于多媒体处理时的核心代码与数据的存放 ,用户也可以将

6、操作系统的核心代码或 LCD 帧缓存存放在该处理器中 ,用于提供更高的性能和更低的能量消耗 ; 6 通道 DMA 控制器 ,为用户提供了高速的数据传输通道 。为了支持低成本的系统方案 , SEP3203 支持外部 32 位 /16 位数据总线 ,结合 ARM 提供的 Thumb 指令集 ,将大大降低系统成本和功耗 ,考虑到 Nand Flash 的成本优势 , SEP3203 处理器提供专用的 Nand Flash 控制器 ,并支持系统直接 从 Nand Flash 启动 。 SEP3203 处理器采用 LQFP176 封装形式 (针对用户需求 ,我们还可以提供 BGA 封装的版本 )。 最小

7、系统硬件的选择和单元电路的设计 电源电路 电源电路的好坏 ,直接影响应用系统的稳定性 、可靠性 、功耗 、成本及电池寿命和可靠性 。电源系统的总体架构如图所示 : 当电池电量充足时 ,由电池供给整个系统用电 ,当电池电量不足时 ,由 5V输入电源一方面对电池充电 ,另一方面供给真个系统 。主要包括以下几个部分 : 3.3V5V的 DC-DC转换器 ,给 SEP3203及其他需要 3.3V电源的外围电路供电 。 2.5V5V的 DC-DC转换器 ,给 SEP3203芯片内核电路供电 。 上电顺序为 3.3V 2.5V。其中 5V 2.5V转换电路前面连接 RC延迟网络 ,可获得比 3.3V较晚些

8、的上电时间 ,时间设为约 10ms。 电源电路中使用了大量的去耦电容 ,用于滤除交流成分 ,使输出的直流电源更平滑 。同时 ,每个芯片的电源引脚和地之间都连接了这样的去耦电容 ,以防止电源噪声影响元件正常工作 。 晶振电路 晶振电路为微处理器及其他电路提供工作时钟 ,是系统必须的重要电路 。本系统用两个晶振电路分 别为微处理器及其他电路提供工作时钟 , 32.768kHz给 RTC(实时时钟电路 )和 Reset模块,产生计数时钟 , 10MHz作为主时钟源 。电路图如下 。其中 CD4096是非门 。 复位及唤醒电路 在应用系统中 ,复位电路主要完成系统的上电复位和系统在运行时用户的按键复位

9、功能 。SEP3202中的 Reset方案主要是产生整个系统工作需要的 Reset信号 ,处理 wakeup信号 ,对外接的不规则 reset、 wakeup信号进行规则化 ,避免误触发 。外围硬件复位电路如图所示 : 该复位电路的工作原理如下 :在系统上电时 ,通过 电阻 R5向电容 C5充电 ,当 C5两端的电压未达到高电平的门限电压时 , RESET端输出为低电平 ,系统处于复位状态 ;当 C5两端的电压达到高电平的门限电压时 , RESET端输出为高电平 ,系统进入正常工作 。当用户按下按钮 K1时, C5两端的电荷被释放掉 , RESET端输出为低电平 ,系统进入复位状态 ,再重复以

10、上充电过程 ,系统进入正常工作状态 。其中具体参数为 :复位响应点电压 ( +2.9 3.00V), 复位时间 ( 140 560ms), 有效复位条件 ( 1V), 并且支持手动复位功能 。 除此之外 ,我们还增加了一个 watchdog电路 ,用于监视系统状态 ,防止系统锁死 。使能watchdog功能以后 ,需要软件周期性复位 ,以避免该模块产生中断或者复位 。 设计该模块我们用到了芯片 DS1232LPS。 DS1232LP/DS1232LPS是一款低功耗的 Micro Monitor芯片 ,用于监视微处理器控制系统的三个关键条件 :电源 、软件运行和外部故障 。首先 ,DS1232L

11、P/DS1232LPS精确的温度补偿电路用于监视 Vcc 状态 。一旦检测到主电源失效 ,DS1232LP/DS1232LPS将产生一个掉电中断信号 ,强制将处理器重置为有效状态 。当 Vcc 回到电压容差范围 ,重置信号至少保持 250ms 的有效状态 ,以便恢复供电和保持处理器稳定 。当软件没有对 watchdog进行服务时 ,会产生 timeout事件 ,通过配置中断使能寄存器中的中断位和reset请求位可以产生中断和 reset请求 ,如果需要屏蔽也可以通过配置这两位来获得 (默认情况为屏蔽 )。 其电路图如下 : 因为 SEP3203芯片有四种工作模式 ,即 slow、 normal

12、、 idle、 sleep。为了帮助系统从 idle模式或 sleep模式中恢复过来 ,建立完善的 、有效的唤醒机制是必须的 ,这将从硬件上保证系统 不会瘫痪 。 存储器 存储器是计算机硬件系统中用于存放程序和数据等二进制信息的部件 ,是计算机的记忆部件。 CPU根据地址访问存储单元 ,读出或写入数据 。从一个存储单元读出或写入数据的时间称为读写时间 ,两次读 /写操作之间的间隔称为存取周期 ,这两项是衡量存储器存取速度的指标 。 本次试验 ,我们所选取的 FLASH以及 SDRAM的芯片如下所示 : 型号 描述 W986416EH SDRAM 64Mbit TE28F160 NorFlash

13、 16M bit FLASH存储 FLASH即为闪存 ,有许多种种类 ,从结构上分主要有 and、 nand、 nor、 dinor等,其中 nand和 nor是目前主流的类型 ,在嵌入式系统中 ,一般用 FLASH来存放需要永久保存的程序和数据 ,掉电后不会丢失 。而用 SDRAM来存放系统运行时的数据 ,掉电后则消失 。 综合各方面的性能 , nand flash更优 ,它拥有较快的擦除和写入速度 (大多数的写入操作需要先进行擦除操作 ); 在更低的成本上获得更大的容量 ;它的每个块最大擦写次数是 100万次 ,远高于 nor的 10万次 ,拥有更长的使用寿命 ;并且 nand的擦除单元

14、( nor的擦出块单元为 64128KB,nand的擦除块单元为 832KB)更小 ,相应的擦除电路更简单 。 但是在 nand flash中,位反转的问题更加严重 ,在使用 nand闪存时必须同时使用 EDC/ECC算法来确保其可靠性 ,并且 nand器件中的坏块是随机分布的 ,如果通过可靠的方法不能进行坏块扫描 ,则将导致较高的故障率 。 与此同时 , nor闪存的连接方式类似于其他存储器 ,并可以直接运行代码 ,而不像 nand器件上始终必须进行虚拟映射 。并且在 nor器件上运行代码不需要任何的软件支持 ,在进行写入和擦除操作时 , nor器件所需要的 MTD(闪存技术驱动程序 )相对

15、较 少,驱动程序还可用于对 DiskOnChip产品进行仿零点和闪存管理 ,包括纠错 、坏块处理和损耗平衡 。 虽然 nand的性能较好 ,但是 Nor Flash 带有 SRAM接口 ,有足够的地址引脚 ,可以很容易的对存储器内部的存储单元进行直接寻址 。在实际的系统中 ,可以根据需要选择 ARM处理器与Nor Flash的连接方式 。 nor的操作最更加方便 ,电路也更为简易易懂 ,因此本次试验我们选择了nor型的闪存 。其电路图如下所示 : SDRAM SDRAM是对 bank结构 ,例如在一个具有两个 bank的 SDRAM的模组中 ,其中一 个 bank在进行预充电期间 ,另一个 b

16、ank则马上可以被读取 ,这样可以大大提高存储器的访问速度 。在 SDRAM芯片中一般会有实现 bank选择的引脚 ,用于实现多个 bank的选择 。 目前常用的 SDRAM为 8bit/16bit数据宽度 、工作电压一般为 3.3V,主要生产厂商为 Micron、HynixI、 Winbond等,若同类器件具有相同的电气特性和封装形式可通用 。但在使用 SDRAM时要注意 ARM芯片是否具有独立的 SDRAM的刷新控制逻辑 ,若有可直接与 SDRAM接口 ,若无则不能直接与 SDRAM连接 。 实验中选用 Winbond公司的 64Mbit的 SDRAMW986416EH。其读写速度都高于

17、SEP3203芯片的典型工作时钟 75MHz,从而消除了存储器访问瓶颈 。 SDRAM通过对电容的充放电完成存储操作 ,但因电容本身有漏电问题 ,所以内存中的数据要持续不断地存取 ,存储在 SDRAM中的数据必须不断地刷新以保持数据的完整性 ,否则数据将会丢失 。通常使用特定的刷新电路来对 SDRAM中存储的数据进行刷新工作 。 图 1-3 两片 SDRAM连接 串行接口电路设计 UART通用异步收发器 ,是处理器总线与串行线接口的外围设备 。对于主机 系统而言 , UART就像一个能读取和写入的 8位输入和输出端口 ,任何时候 ,对于主机要发送的数据 ,它只需要以字节格式把这些数据发送到 U

18、ART,当 UART从另一个串行装置接收数据时 ,它把这些数据临时缓存在它的 FIFO中,然后通过内部寄存器位或通过一个硬件中新信号向主机指示这些数据的可用性。 UART收发字符位数是可配置的 ,可以是 58位。在发送时 ,数据从数据总线上写入 32个字符深度的发送 FIFO,然后再被送入移位寄存器 ,转换成串行数据 ,从 TXD引脚输出 。在接收时 ,数据从 RXD引脚串行的接收 ,先送入接收移位寄存器 ,然后再送入 32级半字长深度的 FIFO。接收FIFO和发送 FIFO都具有可屏蔽的可用软件配置触发沿的中断 ,当 FIFO中的数据量达到预先设定的数据量时 ,可发出中断 。同时 ,接收

19、FIFO和发送 FIFO都可以请求 DMA。 SEP3203提供了串行接口 ,使用 RS-232标准接口 ,近距离通信系统中可直接进行端对端的连接,但由于 SEP3203系统中 LVTTL电路的逻辑电平与 RS-232标准逻辑电平不相匹配 ,二者间要进行正常的通信必须经过信号电平转换 ,本系统使用 MAX3221电平转换电路 ,以 RS-232标准 9芯 D型接口为例 ,要完成最基本的串行通信功能 ,只需要 RXD(数据接收 )、 TXD(数据发送 )和 GND(地)端即可 。串行接口电路如图所示 : JTAG模块 JTAG( Joint Test Action Group)是测试联合行动组的

20、简称 。该委员会制定基于串行接口的测试标准 IEEE1149。这个标准描述了一个用于数字电路引脚信号电平访问和控制的 5引脚串行协议 ,并扩展到测试芯片的电路上 。在 JTAG边界扫描测试接口的一般结构中 ,核逻辑与引脚之间的所有信号都被串行的扫描路径截取 。在正常工作模式下 ,扫描路径能将逻辑核连接到引脚上 ;在测试模式下 ,扫描路径能够读取原始数据并以新的数据代替 。 支持这个测试标准的芯片必须提供 5格专用信号接口 : TMS(测试模式选择 )、 TCK(测试时钟 )、 TDI(测试数据串行输入 )、 TDO(测试数据串行输出 )。 以及可选引脚 TRST(测试复位,低电平有效 )。 J

21、TAG 主要应用于 :电路的边界扫描测试和可编程芯片的在线系统编程 。目前大多数 ARM器件支持 JTAG协议 ,标准 JTAG接口是 4线。通常所说的 JTAG大致分两类 ,一类用于测试芯片的电气特性 ,检测芯片是否有问题 ;一类用于 Debug;一般支持 JTAG的 CPU内都 包含了这两个模块 。 JTAG测试允许多个器件通过 JTAG接口串连在一起 ,行程一个 JTAG链,能实现对各个器件分别测试 。测试电路的通常组织方式是将 nTRST、 TCK和 TMS并行连接到每个芯片 ,将一个芯片的 TDO连接到另一个芯片的 TDI,这样就可以使印制电路板测试接口同样具有如上所述的 5个信号

22、。这里我们只需将所需接口引出 。 JTAG模块采用 20Pin的标准插头 ,部分信号引脚要接上拉电阻 。具体实现电路如下图所示 : JTAG内部有一个状态机 ,称为 TAP( Test Access Port)控制器 ,通过 TCK、 TMS进行 状态的改变,实现数据和指令的输入 。 JTAG测试电路的主要目的是测试印刷电路上走线与焊盘之间的连接 。通过 JTAG测试接口不仅可以控制芯片的输出并观察其输入 ,还可以检查芯片之间的板级联接 。 JTAG电路在系统调试成功后 ,可以从应用系统中剔除以降低成本 。 而在我们实验中所用到的实验箱中 JTAG接口与计算机之间存在着的黑色硬件设备的功能是使

23、用并口的通信协议接收 AXD发出的调试命令 ,并转换成 JTAG的数据格式 ,发送到实验板 ,在调试主机和实验板的通信中起协议转换的作用 。因为是硬件实现 ,所以传输速度较快 ,能达到几百 KB,但是成本很高 。而采用 ADP进行调试需要在实验板上运行一个代理监视器程序 ,以控制实验板上程序的运行 ,并把相关信息通过串口 、并口或网口传送到调试主机 。 ADP调试方式不需要特殊的硬件设备支持 ,成本较低 。但是协议转换都使用软件实现 ,传输速度较慢 。 扩展功能 ( LED) 上图为 LED的实现电路图 。在实验中运用 LED功能时 ,可以利用相应软件程序进行编程 ,调试运行后的发出的 AXD调试命令可让 LED实现某种具体功能 ,如跑马灯 ,数字时钟显示的 。控制信号通过串口到达实验板 ,经处理器达功能扩展接口与上图所示的 LED模块相连 。 参考文献 嵌入式系统 基于 SEP3203微处理器的应用开发 : 时龙兴 、凌明 、王学香 ; 32位 ARM嵌入式系统开发技术 流程 、技巧与实现 : 赵刚等 ; 实验指导书

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报