基于ARM平台的存储卡系统设计与实现

基于ARM平台的存储卡系统设计与实现

论文摘要

随着现代计算机技术和互联网技术的飞速发展,嵌入式系统成为了当前信息行业最热门的焦点之一。而ARM以其高性能低功耗的特点成为目前应用最广泛的32位嵌入式处理器。在嵌入式操作系统方面,Linux凭借其性能优异、结构清晰、平台支持广泛、网络支持强劲及开放源代码等多方面的优势,被嵌入式系统开发者广泛地采用。Linux 2.6包含许多新的特性,为其在嵌入式领域的应用提供了强有力的支持,新的内核越来越多地应用于嵌入式Linux系统中。本文的工作基于艾科公司研发的硬件平台Ark1600开展。该平台上集成了多个功能模块,例如LCD、I2S、GPIO、I2C等,同时支持XD、CF、MMC、SD等多种硬件存储设备,在设备通信方面提供了USB、串行通信等传输方式。本文的主要工作是研究Linux在ARM芯片上的移植,并在此基础上阐述Linux设备驱动的开发。文章首先构建了交叉编译环境,然后在分析Ark1600硬件体系结构的基础上详细阐述了BootLoader程序设计与实现、Linux2.6内核移植、Ramdisk文件系统移植的全过程,为后续项目的实施搭建了一个良好的开发平台。论文最后阐述了Linux 2.6内核中开发块设备驱动程序的实现方法,并以XD块设备驱动程序为例,详细阐述了Linux驱动程序的开发流程。论文的主要工作量在于BootLoader程序的设计与实现、Linux系统移植和XD块设备驱动程序的开发。因为项目平台独特的硬件环境,一些程序代码要严格依赖硬件设备设计。在Linux移植中的主要工作包括串口控制台的驱动、设置系统的存储布局、初始化系统定时器、初始化系统中断、在Linux系统中建立标识本硬件平台的结构体变量、配置并编译Linux内核等。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 嵌入式系统的应用领域及发展现状
  • 1.2 嵌入式系统的发展趋势
  • 1.3 课题的来源及论文的主要工作
  • 1.4 论文主要工作和章节安排
  • 第二章 嵌入式开发环境创建
  • 2.1 构建交叉编译环境
  • 2.1.1 为什么需要交叉编译
  • 2.1.2 构建交叉编译的过程
  • 第三章 项目硬件平台分析
  • 3.1 ARK1600 平台结构框图
  • 3.2 ARM 处理器
  • 3.2.1 处理器运行模式
  • 3.2.2 寄存器组织
  • 3.3 异常、中断及向量表
  • 3.4 平台地址空间分配
  • 3.5 本章小结
  • 第四章 BOOTLOADER 的设计与实现
  • 4.1 BOOTLOADER 的设计与实现
  • 4.1.1 bootloader 的代码结构和流程
  • 4.2 BOOTLOAD 的制作过程
  • 4.2.1 Bootloader 代码在nand 上的存储布局
  • 4.2.2 Nand-bootloader 的制作流程
  • 4.3 本章小结
  • 第五章 LINUX 内核移植和根文件系统构建
  • 5.1 LINUX 内核结构
  • 5.1.1 Linux 的各功能模块
  • 5.2 内核的移植过程
  • 5.2.1 需要修改或重实现的内核文件
  • 5.2.2 各内核文件或重要函数的分析与实现
  • 5.2.3 Linux 的中断机制
  • 5.2.4 串口打印的实现
  • 5.2.5 内核的修改、配置与编译
  • 5.3 嵌入式LINUX 根文件系统设计与实现
  • 5.3.1 Linux 文件系统基本概念
  • 5.3.2 Ramdisk
  • 5.4 本章小结
  • 第六章 LINUX 设备驱动程序设计
  • 6.1 LINUX 设备驱动和内核的编程接口
  • 6.2 XD 卡驱动
  • 6.2.1 MTD 技术
  • 6.2.2 MTD 层的初始化流程
  • 6.2.3 MTD 层的基本读写流程
  • 6.2.4 MTD 下的XD 卡低层驱动
  • 6.2.5 XD 卡驱动模块在Linux 下的挂载过程
  • 6.3 本章小结
  • 第七章 总结和展望
  • 致谢
  • 参考文献
  • 攻读学位期间发表的学术论文
  • 相关论文文献

    标签:;  ;  ;  ;  ;  

    基于ARM平台的存储卡系统设计与实现
    下载Doc文档

    猜你喜欢