0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

S3C2440嵌入式Linux开发板如何启动?

嵌入式的那些事儿 来源:嵌入式的那些事儿 2023-04-10 09:43 次阅读

1,RAM的分类

RAM分为两大类,一种称为静态RAM(static RAM/SRAM),这种RAM读写速度非常快,但价格昂贵,通常在要求苛刻的地方使用,比如CPU的一级二级缓冲;

第二种为动态RAM(Dynamic RAM/DRAM),DRAM的速度比SRAM慢很多,但依然远比ROM快,且价格比SRAM便宜,计算机的内存就是DRAM;

计算机使用的内存称为DDR RAM(Date-Rate RAM),它的基本特性与DRAM相同,区别是它可以在一个时钟读写两次数据,这样数据传输速度就加倍了。(我们常说的“内存”基本等同于DRAM)

2,两种FLASH

由于FLASH本身具备电子可擦除可编程(EEPROM)的性能,不会断电丢失数据且可以快速读取数据,因此几乎全面替代了ROM,被用于存储bootloader或者操作系统或者直接当U盘使用;

FLASH分为Nor flash与Nand flash,Nor flash与DRAM类似,用户可以直接运行装载在nor flash中的代码,由于价格比SRAM便宜,因此可以减少SRAM容量进而节约成本;

用户使用NorFlash还是Nand Flash取决于成本与空间,通常,容量不大且要求读取速度的,会使用Nor Flash,而容量较大的信息则存储于Nand Flash;

举例

问:S3C2440嵌入式Linux开发板如何启动?

已知:这块开发板来自三星,它的存储包括:一块4MB NOR FLASH,一块256MB NAND Flash,64M 内存;

方法一:从NOR Flash启动

Nor Flash启动模式下,将编译完成的bin文件烧入NorFlash,Nor Flash的基地址是0地址,片内RAM的0地址的0x40000000,Nor Flash直接与CPU传输数据,不需要通过片内RAM的中转就可以启动并运行;

方法二:从NAND Flash启动

上一种方法可以正常启动,但NorFlash价格较高,性价比低,因此可以采用方法二,S3C2440内部自带一块容量为4K的bootSRAM(叫做起步阶石“Steppingstone”),0地址处为bootSRAM, 启动前他里面是空的,启动后S3C2440 先通过硬件机制将NANDFLASH的前4K内容拷贝他里面去,之后从0地址处开始执行。

S3C2440的NAND控制器会自动把NAND FLASH中的前4K代码数据搬到内部SRAM中(地址为0x40000000),同时还把这块SRAM地址映射到了0x00000000地址,CPU从0x00000000位置开始运行程序。

注:

如果程序编译链接后大小小于4K,那么系统的启动代码中无需将程序从NANDFLASH 搬运到SDRAM 中后再去执行,因为所有的程序在启动时即全部由NANDFLASH 拷贝到了bootSRAM中执行了;

如果系统中所编的程序编译后大于4K,那么系统的启动代码中需要包含一段将系统的全部程序从NAND FLASH 搬运到SDRAM的代码,系统启动时 只将NAND FLASH 的前4K 拷贝到BootSRAM中;由于程序在NAND FLASH中是无法被执行的,所以前4K被拷贝到BootSRAM中需要有能将程序拷贝到SDRAM中的代码。






审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    4826

    文章

    17427

    浏览量

    278829
  • RAM
    RAM
    +关注

    关注

    7

    文章

    1195

    浏览量

    113047
  • EEPROM
    +关注

    关注

    8

    文章

    863

    浏览量

    79194
  • Flash存储
    +关注

    关注

    0

    文章

    31

    浏览量

    8190
收藏 人收藏

    评论

    相关推荐

    突破千元大关带3.5寸触摸屏的S3C2440开发板

    2440开发板(S3C2440)+4DVD嵌入式linux视频教程==580OK-2440-Ⅱ型S3C2440开发板+4DVD嵌入式linux视频教程==600QQ2440开发板(
    发表于 09-16 18:46

    基于ARM-LinuxS3C2440嵌入式Linux内核设计

    LinuxS3C2440嵌入式Linux内核设计【作者】:周润;谢永乐;【来源】:《中国仪器仪表》2010年03期【摘要】:简要介绍基于S3C2440芯片的嵌入式Linux内核
    发表于 04-24 09:47

    基于S3C2440嵌入式Linux操作系统移植

    S3C2440嵌入式Linux操作系统移植
    发表于 08-16 14:35

    开发板S3C2440

    开发板S3C2440在U-boot模式中烧了Linux内核后,Linux系统就进不去了,屏幕上一直显示Linux系统正在启动,请稍后。怎么办?
    发表于 07-03 20:07

    FET2440核心 --- Samsung S3C2440 ARM9

    2440以其丰富的软硬件资源、工业级的稳定性和极高的性价比,成为嵌入式学习与开发的首选产品。在当今嵌入式开发板市场中占有举足轻重的地位。核心参数基本参数CPUSamsung S3C2440处理器,主频
    发表于 05-22 10:48

    S3C2440开发板的相关资料推荐

    Linux,还买了一块天嵌的S3C2440开发板。当时热情高涨,几天内就看了很多教学视频,也用示例例程做了一些实验。短短几天内就觉得自己这艘
    发表于 12-16 06:57

    阳初S3C2440开发板使用手册

    S3C2440开发板使用手册:在阳初2440 开发板上,我们使用了mizi 公司开发的开放源代码启动程序vivi 来作为bootloader,在原有vivi的基础上,我们增加了VGA/TV芯片初始化等功能。vivi我们
    发表于 09-14 10:53 82次下载

    基于S3C2440嵌入式Linux的扩展串口设计

    嵌入式系统常需用到多个串口,但常用的ARM微控制器上只有3个串口,常常不能满足需要。针对TQ2440开发板的特点,介绍了在TQ2440开发板中利用TL16C554A芯片来扩展串口的方案, 并给出
    发表于 04-12 18:42 147次下载
    基于<b>S3C2440</b>和<b>嵌入式</b><b>Linux</b>的扩展串口设计

    s3c2440 mmc和camera的linux驱动

    s3c2440 mmc和camera的linux驱动资料,详细讲诉了s3c2440 mmc和camera的linux驱动的步骤,希望对你的学习有所帮助。
    发表于 05-25 15:53 54次下载
    <b>s3c2440</b> mmc和camera的<b>linux</b>驱动

    嵌入式Linuxs3c2440上的移植研究

    嵌入式Linuxs3c2440上的移植目的,通过将嵌入式Linux 内核移植到 S3C2440 处理器的目标上, 提出了嵌入式Linux 移植的方法与具体实现过程。编译生成的内核在嵌入式系统中运行稳定
    发表于 08-15 11:30 67次下载

    S3C2440A全套中文手册

    S3C2440全套中文手册,以前大多linux开发板都是S3C2440
    发表于 07-20 17:21 14次下载

    基于S3C2440嵌入式Linux步进电机驱动程序

    嵌入式Linux开发过程中需要为指定设备编写和编译驱动程序,这与以往在PC机上的Linux驱动开发明显不同,本文设计了基 于
    发表于 03-21 11:42 0次下载
    基于<b>S3C2440</b><b>嵌入式</b><b>Linux</b>步进电机驱动程序

    基于ARM LinuxS3C2440嵌入式Linux内核设计

    LinuxS3C2440嵌入式Linux内核设计.pdf》资料免费下载
    发表于 10-12 10:37 1次下载
    基于ARM <b>Linux</b>和<b>S3C2440</b>的<b>嵌入式</b><b>Linux</b>内核设计

    基于S3C2440嵌入式Linux的步进电机驱动程序

    嵌入式Linux开发过程中需要为指定设备编写和编译驱动程序,这与以往在PC机上的Linux驱动开发明显不同,本文设计了基于S3C2440嵌入式Linux下激光雕刻系统的 步进电机 驱动程序。 1 硬
    发表于 09-27 11:56 2161次阅读
    基于<b>S3C2440</b><b>嵌入式</b><b>Linux</b>的步进电机驱动程序

    S3C2440如何设置系统时钟

    S3C2440如何设置系统时钟 S3C2440是一款嵌入式处理器,属于SAMSUNG公司的ARM9系列。系统时钟是嵌入式系统中非常重要的一个参数,它决定了系统的计算速度和精度,是系统稳定性的关键因素
    的头像 发表于 09-02 15:12 187次阅读