碧波液压网 欢迎你,游客。 登录 注册

一种智能相机的Bootloader设计与实现

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

   

    引言

    智能相机是一种高度集成化的微小型机器视觉系统,它将图像的采集、处理和通信功能集成于单一的相机内,主要用于工业控制与工业检测领域。由于功能高度集成化,智能相机也是一种典型的嵌入式系统。

    一个典型的嵌入式Linux系统通常分为4个层次:引导加载程序(Bootloader),inux内核,文件系统,应用软件。

    引导加载程序就是在系统加电后运行的第一段软件代码,其类似于pc机的BIOS。其功能一般是初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。Boot-loader一般严重依赖于硬件,因此建立通用的Bootloader几乎是不可能的。目前较常用的 Bootloader 主要有:RedBoot,Vivi,UBoot,BLOB。

    1 智能相机系统组成结构

    该智能相机系统主要由CCD图像采集模块、PXA270嵌入式处理模块、串口和网络通信模组成。图像采集模块主要负责将光学图像转换为数字图像,并输出至图像处理模块;图像处理模块可对图像采集模块的图像数据进行实时的存储,并通过运行图像处理软件对图像数据进行处理;串口和网络通信模块主要完成控制信息、图像数据的通信任务;该智能相机支持多种标准网络和总线协议,能够使多台智能相机构成更大的机器视觉系统。

    Flash用于存储Bootloader、Linux内核、根文件系统的二进制文件,操作系统以及应用程序在SDRAM中执行。

   (1)Flash的空间分配

    平台Flash由NOR Flash和NAND Flash组成,其中NORFlash容量为16M,地址范围是0x0~0x01000000,用于存储Boot-loader和Linux内核;64M,地址范围是0x04000000~0x08000000,用于存储根文件系统。具体分配如下:

    NORFlash:

    Bootloader 0x0 256K

    参数0x00080000 256K

    内核0x00100000 2M

    NANDFlash:全部用于根文件系统

   (2)    SDRAM的空间分配

    SDRAM作为系统内存,地址范围是0xa0000000 ~0xa4000000,其空间分配如下:

    Bootloader 0xa0100000 256K

    参数0xa01ff000 256K

    内核0xa0200000 2M

    根文件0xa0600000 13M

    LCD 0xa0400000

    2 Bootloader设计

    本方案设计的引导程序具备硬件初始化、下载可执行镜像文件和启动Linux内核的基本功能。这些功能的分别由CPU定义、启动初始化、驱动、命令操作几个功能模块实现。接下来分别结合具体的实现加以描述。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论