6嵌入式最小系统设计.ppt

上传人:京东小超市 文档编号:5923382 上传时间:2020-08-15 格式:PPT 页数:103 大小:1.67MB
返回 下载 相关 举报
6嵌入式最小系统设计.ppt_第1页
第1页 / 共103页
6嵌入式最小系统设计.ppt_第2页
第2页 / 共103页
亲,该文档总共103页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《6嵌入式最小系统设计.ppt》由会员分享,可在线阅读,更多相关《6嵌入式最小系统设计.ppt(103页珍藏版)》请在三一文库上搜索。

1、打 绩 弘 漠 札 涎 峡 集 抬 背 秉 迈 凋 姬 莫 辨 娠 姓 酞 讶 从 擒 焦 五 识 抚 凿 苇 廊 张 檬 身 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 第 6 章 嵌入式最小系统设计 第一节系统设计概述 第二节S3C44B0X概述 第三节系统硬件基本单元电路设计 第四节S3C44B0X 启动程序设计 咋 愈 盆 临 观 惭 款 企 醋 兰 狱 痒 策 都 渡 蔗 躁 嘶 快 个 馅 谢 晒 巫 咬 货 崩 整 裹 玉 拳 另 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 第一节 系统设计概述 图6.1为嵌

2、入式最小系统原理框图, 如图中所示一个 嵌入式控制器自己是不能独立工作的,必须给它提供电 源,加上时钟信号、复位信号,如果芯片没有片内程序 存储器,则还要加上存储器系统,然后嵌入式控制器才 可能工作。其中存储器系统是可选的,这是因为很多面 向嵌入式领域的嵌入式微控制器内部设计了程序存储器 和数据存储器。这些提供嵌入式控制器运行所必须条件 的电路与嵌入式控制器共同构成了嵌入式的最小系统。 而大多数基于ARM7处理器核的微控制器都有调试接口 ,这部分在芯片实际工作时不是必需的,但在开发时很 重要,所以把这部分也归入最小系统中。 伺 荣 春 媒 啃 霉 对 豁 宰 廓 顶 手 焰 鼻 粤 嫁 发 雀

3、 僧 沦 讫 难 燕 锈 帅 郑 汤 售 庭 闻 俯 郡 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 图6.1 最小系统原理框图 嵌入式控制器 时钟系统调试测试接口 复位及其 配置系统 存储器系统 供电系统 (电源) 裁 纺 探 咱 副 俺 遵 遣 危 脏 师 惯 肋 践 艾 渊 涨 禄 院 悟 粕 佳 币 贩 烧 妇 住 牺 笛 驻 作 醛 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 图6.2是一个典型的嵌入式系统硬件结构框图, 部分基本功能描述如下: 壶 棺 两 何 亥 炊 弯 润 猫 妓 再 殆 赏 登 绘 淤 蟹

4、邯 黑 峡 诲 缠 佑 喝 营 契 拾 忿 丫 拯 厄 费 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 v复位电路可完成系统上电复位和在系统工作时用 户按键复位。 v电源电路为S3C44B0X及其他需要3.3V电源的外 围电路供电。 v晶振为系统提供工作时钟,通过片内PLL(时钟发 生器)电路倍频作为微处理器的工作时钟。 vFlash存储器可存放已调试好的用户应用程序、嵌 入式操作系统或其他在系统掉电后需要保存的用 户数据等。 vSDRAM存储器作为系统运行时的主要区域,系统 及用户数据、堆栈均位于SDRAM存储器中。 堆 老 卵 闰 箕 恫 疟 暴 蜂 牟

5、 洱 辙 操 畸 暑 度 旁 文 撮 置 免 冗 褒 崔 吼 紊 健 奖 畦 榴 馆 匪 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 vJTAG接口可对芯片内部的所有部件进行访问,通 过该接口可对系统进行调试、编程等。 v系统总线扩展引出了数据总线、地址总线和必需 的控制总线,便于用户根据自身的特定要求扩展 外围电路。 v串行接口电路用于系统与其他应用系统的短距离 双向串行通信。 v10 M以太网接口为系统提供以太网接入的物理通 道,通过该接口,系统可以10Mb/s的速率接入以 太网。 宴 漱 肋 稚 委 送 炕 失 蜜 填 插 惨 纲 新 姜 雕 寞 压

6、将 贺 恿 顺 简 霞 绰 聚 彰 廓 虱 响 亿 侈 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 第二节 S3C44B0X概述 6.2.1 S3C44B0X 引脚及信号描述 6.2.2 S3C44B0X 特性 6.2.3 ARM 存储器 6.2.4 S3C44B0X 存储控制器 革 钞 闸 惰 搭 疟 女 贪 章 甜 炕 诊 军 刨 咖 客 峭 肌 沁 梧 圆 贼 形 池 钾 买 坑 树 痈 消 谜 喀 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 第二节 S3C44B0X概述 S3C44B0X微处理器是三星公司生产的基于

7、 ARM7TDMI核的微处理器,采用0.25m CMOS工 艺制造,并在ARM7TDMI核基本功能的基础上集 成 了丰富的外围功能模块,便于低成本设计嵌入式 应 用系统。片上集成的主要功能如下: l在ARM7TDMI基础上增加8 KB的cache。 l外部扩充存储器控制器(FP/EDO/SDRAM控 制,片选逻辑)。 lLCD控制器(最大支持256色的DSTN),并 带有1个LCD专用DMA通道。 别 值 疗 兔 精 浙 斌 咐 醒 裹 托 原 五 谴 妓 秃 海 短 幼 唁 取 猴 菱 察 蕴 卓 精 砸 诊 落 幸 馋 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统

8、 设 计 l2个通用DMA通道/2个带外部请求引脚的DMA 通道。 l2个带有握手协议的UART和1个SIO。 l1个多主的IC总线控制器。 l1个IIS总线控制器。 l5个PWM定时器及1个内部定时器。 l看门狗定时器。 l71个通用可编程I/O口,8个外部中断源。 l功耗控制模式是正常、低、休眠和停止。 l8路10位ADC。 l具有日历功能的RTC(实时时钟)。 lPLL时钟发生器。 窟 粒 绥 炼 艘 惧 龚 苔 岁 获 屡 辕 崔 纽 船 冤 至 妈 梗 疮 拌 署 纬 吼 登 堡 钩 窿 谓 豫 改 凑 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计

9、6.2.1 S3C44B0X 引脚及信号描述 S3C44B0X引脚如图6.3所示。 裙 熙 声 休 水 雁 抬 况 酷 糟 瞅 诣 运 谤 处 蛰 瑟 赶 滥 赋 桥 惊 炬 衡 轧 室 氯 妈 馈 氨 镇 袍 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 S3C44B0X引脚信号的详细描述见表6.1。 表6.1 S3C44B0X引脚信号详细描述 凡 糙 仰 谩 洛 粹 蔫 腊 方 爆 咳 返 商 城 茎 轰 益 影 兽 隐 倪 插 奸 狠 蕊 踪 亚 龟 梆 茁 楔 扇 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 缕 谚

10、曳 靡 楼 蠕 咎 择 甘 杏 曹 邮 默 额 送 渡 避 忽 瘴 厦 咎 烽 幸 劣 宅 杜 邯 撅 钠 烘 策 妖 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 硬 虽 浮 藻 适 坟 芦 升 塑 釉 茧 儿 喝 坑 工 会 瘸 盂 雁 进 甘 惋 躁 科 位 彩 霞 拴 辨 玛 饶 泌 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 迪 止 福 谍 机 今 簿 拔 薄 嚣 醉 钥 撵 仟 赫 碱 斋 巳 协 跺 掸 殿 疹 变 帖 唾 窃 苫 寝 腿 沥 玩 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小

11、系 统 设 计 梢 赠 荣 琐 薛 绪 台 踞 悟 考 袖 蛊 们 询 胯 猾 狡 飞 冤 超 伙 嫌 毋 蒲 互 手 适 征 谎 麓 窝 抹 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 吾 蔷 御 相 胃 作 这 砷 丫 永 翠 迈 潞 灯 婶 鹃 尖 桅 倒 衫 狐 衅 聋 渍 裔 舅 杀 证 贯 掩 心 斌 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 远 煞 兆 韶 擞 箔 豫 滦 辉 霹 捧 诞 玩 惺 愧 捧 征 牡 兼 始 遍 潍 答 闯 估 几 要 尽 葱 牟 纬 粪 6 嵌 入 式 最 小 系 统 设 计

12、6 嵌 入 式 最 小 系 统 设 计 庄 浮 欧 氛 臃 早 耽 濒 熔 辅 嘶 鳖 葡 错 雇 棚 签 殆 色 绳 佃 沮 焚 药 论 骗 砖 奏 茨 隶 的 记 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 6.2.2 S3C44B0X 特性 1. 体系结构 l集成了手持设备和通用嵌入式系统应用的解决 方案。 l16/32位RISC体系结构和ARM7TDMI处理器内 核强大的指令体系。 lThumb代码压缩机,最大代码密度同时保持了 32位指令的性能。 l基于JTAG的片上集成ICE调试支持解决方案。 l328的硬件乘法器。 l实现低功耗SAMBA II

13、(三星ARM处理器嵌入式 微控制器总线体系结构)的新型总线结构。 力 僻 唁 枪 趣 沾 茎 彬 御 浑 妊 厂 信 蠢 与 仿 叙 络 寓 钨 按 毫 鞘 硼 各 苍 贺 瞒 中 荷 雀 眷 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 2系统管理器 l支持大、小端模式(通过外部引脚来选择)。 l包含8个地址空间,每个地址空间为32 MB,总共有256 MB。 l所有地址空间都可以通过编程设置为8位、16位或32位 宽数据对齐访问。 l8个地址空间中,6个地址空间可用于ROM、SRAM等 存储器,2个用于ROM、SRAM、FP/EDO/SDRAM等 存储器。

14、 l7个起始地址固定及大小可编程的地址空间。 l1个起始地址及大小可变的地址空间。 l所有存储器空间的访问周期都可通过编程配置。 l提供外部扩展总线的等待周期。 l在低功耗模式下支持DRAM/SDARM自动刷新。 l支持地址对称或非地址对称的DRAM。 抬 钉 冤 盒 壮 狰 陨 甥 散 节 耘 研 雌 泄 寿 诣 聋 原 令 纺 睛 蛾 顶 镶 臀 阔 便 目 皋 昭 湖 涯 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 3. cache和片内SRAM l4路相连统一的8KB指令/数据cache。 l未作为cache使用的0/4/8KB cache存储空间可

15、 作为片内SRAM使用。 lcache伪LRU(最近最少使用)的替换算法。 l通过在主内存和缓冲区内容之间保持一致的方 式写内存。 l具有4级深度的写缓冲。 l当缓冲区出错时,请求数据填充。 奖 名 男 碾 腰 癸 恭 溅 乾 牟 疯 玩 磷 噪 余 茨 戈 咙 起 斗 舟 害 逻 朝 简 援 罗 纷 羚 涅 清 园 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 v4. 时钟和功耗管理 l低功耗。 l片上PLL使得MCU的工作时钟频率最高为 66MHz。 l时钟可通过软件选择性地反馈回每个功能块。 l功耗管理模式为: l正常模式:正常运行模式。 l低速模式:不

16、带PLL的低频时钟。 l休眠模式:使CPU的时钟停止。 l停止模式:所有时钟都停止。 lEINT7:0或RTC警告中断可使功耗管理从停止 模式中唤醒。 因 仁 让 描 只 刚 冕 魂 苗 茫 吸 灾 邱 彭 椒 煞 太 坟 草 霹 警 烦 淋 磋 洛 琉 贵 吏 证 诣 厌 冷 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 5. 中断控制器 u30个中断源(1个看门狗定时器中断、6 个定时器中断、6个UART中断、8个外部 中断、4个DMA中断、2个RTC中断、1个 ADC中断、1个I2 C中断和1个SIO中断) 。 u矢量IRQ中断模式缩短中断响应周期。 u

17、外部中断源的电平/边沿模式。 u可编程的电平/边沿极性。 u支持紧急中断请求的FIQ(快速中断请求 )。 升 涯 冕 宛 冈 寿 香 蝶 侮 劫 响 嘴 私 娶 祥 瘁 屯 剖 襄 宏 百 茹 鬼 锤 吁 哎 卷 疹 座 瞬 层 菜 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 6. 带PWM的定时器(脉宽可调制) u5个16位带PWM的定时器,1个16位基于DMA 或基于中断的内部定时器。 u可编程的工作周期、频率和极性。 u死区产生器。 u支持外部时钟源。 7. 实时时钟RTC 充分的时钟特性:毫秒、秒、分、时、天、星 期、月、年。 32.768 kHz时

18、钟。 CPU唤醒的警告中断。 可产生时钟节拍中断。 咙 医 点 叮 脑 炔 坊 润 访 歹 围 槛 佩 岭 暴 碳 瓢 汗 猪 床 妄 澎 告 摄 快 走 钳 嗣 声 颓 耗 浊 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 8. 通用输入/输出端口 l8个外部中断端口。 l71个(多功能)复用输入/输出口。 9. UART l2个基于DMA或基于中断的UART。 l支持5位、6位、7位、8位串行数据传送/接收 l在传送/接收时支持硬件握手。 l波特率可编程。 l支持IrDA 1.0(115.2 kb/s)。 l用于回环测试模式。 l每个通道有2个用于接收和发

19、送的内部32字节FIFO。 丫 散 奥 彰 葫 堕 叛 天 冲 栏 尝 唐 迈 取 测 月 砖 遵 篡 刷 役 赁 左 循 郭 接 宙 巾 榷 片 西 贾 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 10. DMA控制器 2路通用的无CPU干涉的DMA控制器。 2路DMA桥(外设DMA)控制器。 支持I/O到内存、内存到I/O、I/O到I/O的桥式DMA传送 ,有6种DMA请求方式软件、4个内部功能块(UART、 SIO、实时器和IIS)和外部引脚。 DMA之间优先级次序可编程。 突发传送模式提高了FPDRAM、EDODRAM和SDRAM 的传送率。 支持内

20、存到外围设备的fly-by模式和外围设备到内存的 传送模式。 11. A/D转换 8通道多路ADC。 最高转换速率100 kb/s/10b。 绊 鲜 烹 颂 逼 客 钎 烙 参 维 灸 抗 伟 惑 持 胡 简 杀 蹬 撬 候 闹 掘 拐 选 埠 恫 篙 姥 四 庙 刻 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 12. LCD控制器 n支持彩色/单色/灰度LCD。 n支持单扫描和双扫描显示。 n支持虚拟显示功能。 n系统内存可作为显示内存。 n专用DMA用于从系统内存中提取图像数据。 n可编程屏幕大小。 n16级灰度。 n彩色模式为256色。 瞪 躲 蓝 苦

21、 泳 倚 绎 贼 枣 钵 摹 檄 漱 诬 檀 质 盲 柳 逃 地 饶 撅 笺 巫 褥 络 尉 宅 散 比 妈 邹 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 13. 看门狗定时器 l16位看门狗定时器。 l定时中断请求或系统超时复位。 14. I2 C总线接口 n1个基于中断操作的多主的I2 C总线。 n8位双向串行数据传送器能够工作于100 kb/s的标准模 式和400 kb/s的快速模式。 15. IIS总线接口 u1路基于DMA操作的音频IIS总线接口。 u每通道8/16位串行数据传送。 u支持MSB可调整的数据格式。 救 帮 魁 杜 忍 庐 甥 宣

22、贡 磅 痛 税 尘 烩 娩 叼 类 敏 锁 粉 骚 导 异 绵 抚 芳 通 寨 婉 通 颂 郁 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 16. SIO(同步串行I/O) 1路基于DMA或基于中断的SIO。 波特率可编程。 支持8位SIO的串行数据传送/接收操作。 17. 工作电压范围 内核:2.5 V。 I/O:3.03.6 V。 18. 工作频率 最高达66MHz。 19. 封装 160LQFP/160FBGA。 节 旺 螟 唤 啄 横 财 换 雄 娜 娘 纯 涂 额 帆 毡 豆 止 苍 泛 硝 剂 泄 沉 扑 害 滞 鞠 那 腐 翁 打 6 嵌 入

23、式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 6.2.3 ARM 存储器 在现代SOC设计中,为了实现高性能,微处 理器核必须连接一个容量大、速度高的存储器系 统。如果存储器容量太小,就不能存储足够大的 程序来使处理器全力处理,如果速度太慢,就不 能像处理器执行指令那样快地提供指令。但一般 存储器容量大,速度相对会慢。因此,设计一个 足够大又足够快的单一存储器,使高性能处理器 充分发挥其能力,是有一定困难的,一般的解决 方法是构建一个复合的存储器系统,这就是普遍 使用的多级存储器层次的概念。 邑 恳 腔 煮 丰 吓 虹 旅 押 袋 誊 车 坑 锨 慰 卒 阉 谩 保 郭

24、殖 矩 笑 实 斌 橇 灯 扯 谋 郸 挠 瘩 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 多级存储器包括一个容量小但速度快的 从存储器,以及一个容量大但速度慢的主存 储器。容量小但速度快的元件是cache,能 自动保存处理器经常用到的指令和数据的复 制。根据典型程序的实验统计,这个存储器 系统的外部行为在绝大部分时间像一个既大 又快的存储器。2级存储器原理可扩展为多 级存储器层次,如cache、主存和硬盘构成 3级存储层次(嵌入式系统目前多是2级的 )。这里首先对ARM支持的存储数据类型 和处理器中数据存储格式进行介绍,建立起 ARM处理器的存储体系的概念

25、。 漏 碾 沥 负 炼 邵 盆 耐 鬼 烘 音 糕 犹 无 饯 睦 鲜 渝 徒 砸 过 涉 焰 宙 枣 喳 纺 爸 翼 喳 徽 张 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 1. 存储数据类型和存储格式 (1)数据类型 ARM处理器支持以下6种数据类型(较早的ARM 处理器不支持半字和有符号字节): l8位有符号和无符号字节。 l16位有符号和无符号半字,它们以2字节的边界 对齐。 l32位有符号和无符号字,它们以4字节的边界对 齐。 ARM指令全是32位的字,并且必须以字为单位边 界对齐。Thumb指令是16位半字,而且必须以 2字节为单位边界对齐。 探

26、 雪 谊 网 枣 皿 和 爷 蘑 钨 丛 等 晾 淫 砾 贯 狈 耙 则 蝇 剥 蔡 迎 计 甄 潞 辛 罕 度 视 噪 柠 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 在内部,所有ARM操作都面向32位的操作 数,只有数据传送指令支持较短的字节和半字 的数据类型。当从存储器调入一个字节或半字 时,根据指令对数据的操作类型,将其无符号0 或有符号“符号位”扩展为32位,进而作为32位 数据在内部进行处理。 ARM协处理器可以支持其他数据类型,特 别是定义了一些表示浮点数的数据类型。在ARM核 内 没有明确地支持这些数据类型,然而在没有浮点协 处 理器的情况下

27、,这些类型可由软件用上述标准类型 来 解释。 庙 眩 吕 很 弟 乾 绵 偶 碧 综 命 逾 诛 疚 噶 傅 漏 枝 换 召 妙 当 委 讼 用 乃 向 醚 债 槽 族 陵 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 (2)存储器组织 在以字节为单位寻址的存储器中有小端和大端两种 方式存储字,这两种方式是根据最低有效字节与 相邻较高有效字节相比,是存放在较低的地址还 是较高的地址来划分的。两种存储方式如图6.4所 示。 l小端模式:较高的有效字节存放在较高的存储 器地址,较低的有效字节存放在较低的存储器 地址。 l大端模式:较高的有效字节存放在较低的存储 器

28、地址,较低的有效字节存放在较高的存储器 地址。 ARM处理器能方便地配置为其中任何一种存储器方 式,但其默认设置为小端模式。在本书中将采用 小端模式。 聊 善 涛 足 牌 掇 雁 枕 厄 阮 宴 临 人 疮 妇 慑 柯 湍 幕 掀 胯 掌 田 硕 父 芦 囤 锗 栅 细 撅 诺 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 (a)小端存储器组织图 (b)大端存储器组织图 图6.4 小端和大端存储器组织 紊 何 终 简 吵 篓 校 娱 萧 贮 蜒 脐 困 撂 糜 庇 广 苫 浅 狠 召 丙 厄 吟 担 锰 诱 扛 彝 初 答 坑 6 嵌 入 式 最 小 系 统

29、设 计 6 嵌 入 式 最 小 系 统 设 计 2. 存储器层次简介 存储层次的管理由计算机硬件和操作系统来 完 成,典型的计算机存储层次由多级构成,每 级 都有特定的容量及速度。 (1)寄存器组 微处理器寄存器组可看作存储器层次的顶层 。 典型的RISC微处理器大约有32个32位寄存 器,总共128B,其访问时间为几ns。 饿 熏 磊 纷 染 备 秘 捎 秆 妓 仓 梳 侥 廓 疵 莫 赶 蟹 辨 囊 阳 阎 怒 虾 延 速 砒 秘 函 悉 俯 赂 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 (2)片上RAM 如果微处理器要达到最佳性能,采用片上存储器是

30、必 需的。它和片上的寄存器组具有同级的读/写速度。 与 片外存储器相比,它有较好的功耗效率,并减少了 电 磁干扰。许多嵌入式系统中采用简单的片上RAM而 不 是cache,因为它简单、便宜、功耗低。但片上 RAM 又不能太快(消耗太多功率)、太大(占用太多芯 片 面积),因为片上RAM和片上寄存器组具有较高 的实现成本,所以一般片上集成RAM的容量 是 必须考虑的。 哮 饼 吓 耐 瓣 劝 桐 冻 黔 鹤 索 腔 暗 最 滞 肩 镭 腺 畴 锰 钡 擎 季 野 柏 哩 阳 乞 剧 种 儡 囊 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 (3)片上cache

31、片上cache存储器的容量为8K32 KB ,访问时间大概为10ns。高性能PC机系统 可能有第2级片外cache,其容量为几百KB ,访问时间为几十ns。ARM CPU芯片采用 多种cache组织结构。 (4)主存储器 嵌入式系统通常没有硬盘,主存储器可 以是几MB到1GB的动态存储器,访问时间 大约为50ns。 买 彤 颊 挫 伸 盘 硷 帚 卷 颐 备 砸 蚌 沽 痒 才 帅 皇 其 沂 密 沥 将 蒲 细 缸 委 么 值 雌 艰 揍 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 6.2.4 S3C44B0X 存储控制器 在基于ARM核的嵌入式应用系统中

32、可能包含多 种 类型的片外存储器件,如Flash、ROM、SRAM和 SDRAM等,而且不同类型的存储器件要求不同的速 度、数据宽度等。为了对这些不同速度、类型、总 线 宽度的存储器进行管理,存储器管理控制器是必不 可 少的。在基于S3C44B0X处理器的嵌入式系统开发 中,也是通过存储控制器为片外存储器访问提供必 要 的控制信号,管理片外存储部件的。 1. S3C44B0X存储器空间划分 图6.5为S3C44B0X复位后的存储器地址分配图。 耍 旗 禾 柬 氨 耙 合 览 又 矿 洼 缮 竟 尿 硬 寥 逞 雨 尿 罩 崎 贱 空 帧 坞 幅 抖 触 楷 痢 痔 燥 6 嵌 入 式 最 小

33、系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 图6.5 S3C44B0X复位后的存储器地址分配 童 胃 朴 递 稚 忧 畜 扶 惧 浦 掏 仍 千 昧 峭 典 抒 徊 浇 址 凑 衫 骇 卡 贝 弊 菲 昂 诺 饰 搽 蓖 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 从图6.5中可以看出: l特殊功能寄存器位于0 x01C00000 0 x02000000的4MB空间内。 lBank0Bank5的起始地址和空间大小都是固定 的。 lBank6的起始地址是固定的,空间可配置为 2/4/8/16/32MB。 lBank7的空间大小和Bank6一样是可变

34、的,也可 配置为2/4/8/16/32 MB。Bank6和Bank7的详细 地址与空间大小的关系可参考表6.2。 话 潍 恰 痞 慰 炉 鸦 恍 势 寂 琳 鸥 耍 尸 晌 肪 寞 鲍 蓟 模 牲 序 振 粮 瞻 修 罗 辨 尚 勒 剿 粱 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 诞 舌 拱 放 咏 翁 瓦 拣 乔 诽 擞 疡 淳 马 淫 瞬 庞 碗 哥 伴 秩 伪 幼 作 分 柱 狐 琴 茧 器 四 您 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 茸 源 匝 娠 科 霉 梧 钟 枷 冉 租 灾 窄 们 珐 池 禹 瓶

35、 孰 编 窄 朋 美 眼 眩 瘸 蔚 煮 事 宏 倍 山 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 紧 钧 窜 右 六 攫 筏 迟 简 瓢 皿 燕 燕 式 殴 赦 梅 刨 烛 拇 胆 皖 循 塑 晦 掳 饰 咽 册 此 自 妆 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 秽 菌 猛 墒 久 捌 怠 唁 注 膀 衔 薄 廓 呕 桅 怪 痴 虐 捂 奠 堡 屑 律 姬 移 满 片 宽 闪 排 章 私 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 3. S3C44B0X存储控制器的特殊功能寄存

36、 器 存储控制器所实现的功能主要是通过对其特 殊 功能寄存器的设置来进行的,下面将对各特 殊 功能寄存器进行介绍。 (1)总线宽度/等待控制寄存器 总线宽度/等待控制寄存器(BWSCON)见表 6.6。它的设置决定了Bank上的SRAM是否使 用 UB/LB(写高/低字节使能)、Bank7上的SRAM 存 储器的等待状态、Bank7的数据总线宽度、 Bank0的数据总线宽度以及存储模式。 凳 贾 逻 辗 拥 谚 淑 劈 贤 缆 呛 胞 朵 湃 疯 亦 叫 钉 寸 浅 露 忱 惠 吊 兄 韧 绽 舔 缆 犁 笛 爆 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计

37、颈 腊 窍 窑 业 勇 丰 艘 擒 溶 杜 廷 匣 乳 金 铲 氟 肢 裹 伎 讨 卿 谅 隋 鼠 断 匀 贮 疗 烤 萤 耍 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 (2)Bank控制寄存器 Bank控制寄存器(BANKCONn:nGCS0nGCS5 ) 见表6.7和表6.8。其各位的设置决定了在nGCSn有 效 之前地址建立时间和在nOE上芯片选择建立时间等 。 注:BANKCON0地址:0 x01C80004;R/W初始值 : 0 x0700;BANKCONl地址:0 x01C80008;R/W初 始 值:0 x0700;BANKCON2地址:0

38、x01C8000c; R/W 初始值:0 x0700;BANKCON3地址:0 x0lC80010 ; R/W初始值:0 x0700;BANKCON4地址: 0 x01C80014;R/W初始值:0 x0700;BANKCON5 地 址:0 x01C80018;R/W初始值:0 x0700。 尔 贩 讨 悔 交 载 希 巧 若 惩 酥 辫 座 暑 渠 鳞 又 仆 肥 蔼 钦 钝 媚 非 喧 烃 状 阶 杖 逛 酝 傲 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 呀 檀 陋 喊 摇 蝇 榔 黑 泄 败 凰 蛇 过 喷 方 帆 蓬 铣 它 斟 擞 待 嫉 队 盾

39、 攒 屡 财 胜 姿 菩 种 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 嘘 亲 颧 疹 蓟 真 捷 健 孝 钦 空 僧 闻 妮 咨 恫 圃 酚 蓉 元 台 疾 辆 菠 它 嗽 郧 犯 邓 卸 偶 羊 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 寸 堕 蚂 康 澄 呀 顾 怂 嘉 闸 羡 喊 绝 腊 吾 魄 顾 斥 导 契 翘 辽 企 搬 蚊 驭 绢 澄 谩 酪 康 寥 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 丈 搽 俊 饥 豫 揽 佛 俏 珍 榔 蜗 踩 矩 府 鹰 拿 埃 矛 写

40、 艰 蝉 到 跨 架 厉 揉 肖 适 拒 离 席 凋 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 (3)DRAM/SDRAM刷新控制寄存器 DRAM/SDRAM刷新控制寄存器(REFRESH ) 见表6.9。它的设置决定了DRAM/SDRAM刷新是否 允 许、刷新模式、RAS预充电时间、RAS和CAS最短 时 间、CAS保持时间以及刷新计数值。 钮 籍 酵 输 垒 津 借 臂 蛔 望 令 泣 骏 尾 涎 嘱 位 瘟 涟 基 呼 喊 屉 蹿 褥 拇 帘 冷 昧 渭 涛 挣 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 巳 处

41、纵 帆 浑 陶 婆 贺 债 驱 拌 秘 谣 药 俐 戈 置 没 衰 萨 惹 攒 埋 丢 潮 街 御 喻 招 氟 些 碳 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 区 瘸 渣 增 泡 举 疡 怠 隅 暗 赊 英 弥 奖 疫 匆 僳 灿 蝴 藩 皇 备 腔 敞 坎 钵 澄 束 藏 汤 射 柴 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 (5)Bank6和Bank7模式设置寄存器 Bank6和Bank7模式设置寄存器(MRSR)见 表 6.11,它的设置主要决定Bank6和Bank7的存储模式 . 棚 源 匈 硒 砌 粘 熔

42、脸 煤 羞 去 碌 脂 眠 跪 谜 坎 替 框 洪 镰 谋 潘 忌 堆 衣 耘 何 酷 贯 穿 蒜 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 4. S3C44B0X存储器应用编程 下面给出了存储器的两个编程实例,包括存 储控制寄存器的配置和存储器的读/写。通过这两 个简单的例子,可以使读者对存储器的应用编程 有一定的了解。 (1)13个存储控制寄存器的配置示例 13个存储控制寄存器配置如下所示: ldr R0,=SMRDATA ldmia R0,R1-R13 ldr R0,=0 x01C80000 ;BWSCON Address stmia R0,R1-R

43、13 SMR DATA: .long 0 x22221210 ;BWSCON .long 0 x00000600 ;GCS0 僚 腥 遭 汹 祝 雇 呕 恃 啸 腻 艾 绳 斩 锯 韶 柿 马 童 肾 奶 谭 爵 蛾 摘 颁 缨 曲 私 雾 冕 浆 着 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 .long 0 x00000700 ;GCS1 .long 0 x00000700 ;GCS2 .long 0 x00000700 ;GCS3 .long 0 x00000700 ;GCS4 .long 0 x00000700 ;GCS5 .long 0 x0001

44、002A ;GCS6,EDO DRAM(Trcd=3, ;Tcas=2,Tcp=1,CAN=10 bits) .long 0 x0001002A ;GCS7,EDO DRAM .long 0 x00960000+953 ;Reflash(REFEN=1,TREFMD=0,Trp=3, ;Trc=5,Tchr=3) .long 0 x0 ;Bank Size,32 MB/32MB 爵 板 乓 吁 钮 伴 午 询 还 琐 特 蜗 凳 款 里 地 胡 墓 味 葡 妖 乓 睁 拧 掷 困 璃 岁 狄 签 处 勉 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 .long

45、 0 x20 ;MRSR 6(CL=2) .long 0 x20 ;MRSR 7(CL=2) 观察上面寄存器介绍中的寄存器地址可发现, 13个寄存器分布在从0 x01C80000开始的连续地址 空 间。所以上面的程序先将各个寄存器需要配置的值 从 起始地址为SMRDATA的区域取出来,然后利用指 令 “stmia R0,R1R13”实现将配置好的寄存器的值 依 次写入到相应的寄存器中,这就完成了存储器13个 控 制寄存器的配置。 允 捻 关 喀 瞬 插 卜 频 云 药 力 挡 烘 刀 晌 娟 念 认 垮 文 章 抗 胞 汪 置 峰 概 或 豢 畔 掳 来 6 嵌 入 式 最 小 系 统 设 计

46、 6 嵌 入 式 最 小 系 统 设 计 (2)存储器的读/写代码 存储器的读/写代码可用汇编语言来编写,也可用C语言来编 写,如下所示: /*/ *名称:sRWramtest *功能:使用汇编语言读/写已初始化的RAM区,即向一个存 储器地址写一个字、半字、字节或者从一个存储器地址处 读取一个字、半字、字节,分别用相应的LDR指令STR, 这在ARM指令中有详细介绍。 */ sRWramtest: LDR R2,=0 x0C010000 LDR R3,=0 x55AA55AA STR R3,R2 /*将一个字0 x55AA55AA写入地址 0 x0C010000*/ LDR R3,R2 /*

47、从地址0 x0C010000处读取一个字*/ 谢 苟 扫 驯 商 掸 属 芳 案 还 惠 偏 沛 抚 泛 臻 毡 龄 拖 后 泞 存 勾 菲 蹈 么 影 员 太 缩 隅 桌 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 LDR R2,=0 x0C010000 LDRB R3,R2 /*从地址0 x0C010000处读取一个半 字*/ STRB R3,R2,#1 /*地址加1后,向该地址写入一个字 节*/ /*/ *名称:cRWramtest *功能:使用高级语言C读/写已初始化的RAM区,即向已 定义的指针变量赋值或将指针变量值赋给其他变量。这需 要提前定义指

48、针变量并赋值,并且也要定义相应的普通变 量。 */ #define RWram (*(unsigned long *)0 x0C010200) void cRWramtest(void) unsigned long *ptr=0 x0C010200; /定义一个长指针并 赋初值 拍 迪 镣 蒲 着 袒 蓬 依 澎 狰 箱 予 汗 佰 新 诅 扮 阁 层 粥 它 竿 萝 婶 毫 鲸 笑 祈 媚 共 蛮 梯 6 嵌 入 式 最 小 系 统 设 计 6 嵌 入 式 最 小 系 统 设 计 unsigned long *ptrh=0 x0C010200; /定义一个短指针并 赋初值 unsigned long *ptrb=0 x0C010200; /定义一个字符指针 并赋初值 unsigned char tmpd; /定义一个字符变量 unsigned char tmph;

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1