当前位置:首页 > 单片机 > 单片机
[导读]用友善之臂的板子已经有一段时间了.对于存储系统和I/O空间的认识也渐渐淡忘了,原因是在做其他开发时,一直用着自带的启动代码,从不关心板子的储存空间配置.最近在做网卡驱动,突然间就不知道网卡的地址是什么了,于是花

用友善之臂的板子已经有一段时间了.对于存储系统和I/O空间的认识也渐渐淡忘了,原因是在做其他开发时,一直用着自带的启动代码,从不关心板子的储存空间配置.最近在做网卡驱动,突然间就不知道网卡的地址是什么了,于是花点时间总结一下.废话少说.开始吧.1,板上的存储资源两个32M的SDRAM.一个2M的NOR FLASH一个128M(有些是64M)的NAND FLASH以上这些资源看原理图便知.2,板上的I/O资源 这块板子上(准确的说是S3C2440)的I/O空间是用存储映射的方法映射到存储空间上的,也就说I/O空间是要占用存储空间的.3,各种存储器的区别与各自的用途 为什么这块板子上有那么多存储设备呢?原因很简单.每种存储设备的用途都不一样,而且为了兼顾广大用户的需要,也必须有不同的存储设备.首先说SDRAM.(写到这突然想起忘了说SRAM了.SRAM是静态随机存储器,它具有掉电不丢失数据且不必频繁刷新的特点,存储速度快,相当于PC的内存,看来这块相当于内存的东西很重要,可是刚刚怎么没说有这块东西呢?原因很简单.因为本来就没有.其实,如果需要随机存储器,SDRAM就是随机存储器啊,只是它需要不断的刷新以保持里面的数据(电平).说到这,SDRAM的作用同学们也应该了解了.也就说我们这块板子就是有64M的内存,足够用了.其次说说NOR FLASH.NOR FLASH是具有SRAM接口特性的ROM.可是NOR FLASH才2M未免太少了,没错,是很少,可是我们有NAND FLASH啊,它也是ROM啊,所以加起来我们可以说这块板子有130M(66M)的硬盘.这也足够用了,可以少好几个Linux了.再说说NAND FLASH,NAND FLASH可以做的很大,但是速度却比不上NOR FLASH,NOR FLASH能做快却不能做的大,所以,速度和容量是一对矛盾.为了克服这对矛盾,这板子上两种FLASH都有了.各有用途.另外,初学者一定要知道NAND FLASH 与NOR FLASH启动的不同吧.这是跟他们的特性有关的,接下来谈谈.4,NOR FLASH 启动与NAND FLASH 启动 开发板上有一个S2开关,当它打在NOR一端是就是NOR启动.相反,打在另一端就是NAND FLASH启动了.先说着两种启动的不同,再说说硬件上是如何启动的,空间有时如何分配的.当S2打在NAND FLASH启动,那么程序就是在NAND FLASH上跑起来.其实,在内部还有一个4K字节的steppingstone的缓冲器(其实这是一个SRAM),当选择NAND FALSH 启动时,这个缓冲器映射在地址0x0000_0000上,而它负责将NAND FLASH上的代码复制到SDRAM上(大家都知道,程序运行时都是在RAM上运行的,怎么可能是在FLASH上运行呢,其实就是将FLASH上的代码复制了而已)而负责复制这段代码的东西就是传说中的BIOS啦.当S2打在NOR FLASH一端时,又有什么区别呢?当选择用NOR FLASH启动时,2M的NOR FLASH就映射到地址0x0000_0000上,程序就是从这里运行了.那难道程序就能从NOR FLASH上运行吗?当然不行,那为什么可以在这里启动呢,其实这个NOR FLASH已经安装了BIOS的了(若有读者不知什么是BIOS,那就暂且认为它的功能就是从FLASH上复制代码到SDRAM就可以了)4,S3C2410 S3C2440NAND 存储系统 大家都知道,32位可以寻址4G空间.但是S3C2440却的存储空间里把4G这样子分的:(途中只显示最低的1G) 0x4000_0000只有还有3G空间是这样分配:OM[1:0]=01或者是10 时:0x4000_0000-0x4000_0fff.这4K字节的就是前面说的stepingstone的啦.0x4000_0fff_0x4800_0000是没用到的.0x4800_0000-0x6000_0000的空间是特殊功能寄存器的.你发现,所有的寄存器都是在这个范围内的.0x6000_0000—0Xffff_ffff的还是未用到的.OM[1:0]=00时.这个时候如上图所示.刚刚说的steppingstone映射到ox000_0000那里,也即是途中的BOOT INTERNAL SRAM.其他的一样.其实.S3C2440把低1G的空间分成了8块,由图可知,第0至6这七块的起始地址是不变的.而第七段的地址是可变的(它的地址有第六块需要用到多少来决定,反正就是第六第七是连在一起的).前6块可以是ROM SRAM .最后两块不但可以是ROM,SRAM外,还可以是SDRAM.其实啊,简单点的说,就是只有最后两块才能是SDRAM.也就是说SDRAM必须要映射到这两块里面.mini2440就是选择映射在第七块上,所以SDRAM的起始地址是0x3000_0000(这就是手册上为什么在加载测试程序时DNW的初始值要设为这个,它就是为了想程序直接加载到SDRAM上,这只是做实验而且,掉电后还是会丢失的.所以做产品时是不可能这样做的).刚刚说S3C2440把存储空间分为8块,它为什么要这么做呢?其实很简单,即使它不这么做,我们也会这么做的.先了算一算数:每块128M,那就是需要27根地址线来寻址.而8块呢就跟着引出与之一一对应的8跟片选引脚.讲到这聪明的读者必能想到.其实这8根片选引脚就是里面用3根地址线译码出来的.所以一共用了30根地址线,30根不正好是1G么.呵呵.


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

北京2023年8月8日 /美通社/ -- 冬瓜哥上次学习AI和ML,还是在2019年初。当时其实是卷积神经网络和深度神经网络蓬勃发展期,其主要目的是分类识别。当时冬瓜哥还做了一个4小时的视频,那真是我见过的最小白的白也能...

关键字: 模型 存储系统 生成式AI 人工智能

北京2023年1月9日 /美通社/ -- 近日,Gartner发布2022三季度全球存储市场报告。报告显示,全球存储市场实现稳健增长,全球销售额5590.7M$,同比增长5.5%;装机容量14172PB,同比增...

关键字: SSD IO 分布式 存储系统

北京2022年12月13日 /美通社/ -- 存储系统是由控制器、背板、结构件、硬盘、内存等部件构成的多个子系统组成,其中任何单一元器件故障都可能导致存储系统出现问题。因此,系统可靠运行的基础,离不开元器件、部件以及整个...

关键字: 数据存储 系统级 元器件 存储系统

北京2022年8月30日 /美通社/ -- 数据已经成为继土地、劳动力、资本和技术之后的第五大生产要素,是当代经济社会发展的基础资源。存储作为数据载体设备发挥着重要作用,既要满足当前全球数据量高速增长需求,又要...

关键字: 数据存储 存储系统 供电 电池

北京2022年7月29日 /美通社/ -- 大海里,鱼类可以毫不费力地做到兼具速度与优雅于一身,最快游速达每小时 70 英里,而人类甚至难以达到每小时 4 英里,即便潜艇也只能达到每小时 50 英里。鱼类为何能获得如此快...

关键字: 存储系统 数据中心 SSD 闪存盘

北京2022年5月17日 /美通社/ -- 近日,美国专业存储媒体Storage Newsletter发表了关于浪潮新一代SSD高速存储介质的文章。文章提到,浪潮SSD新品基于NAND算法创新将闪存寿命提升40%,通过P...

关键字: SSD NAND IO 存储系统

北京2022年4月29日 /美通社/ -- 数字经济时代,数据具有基础性战略资源和关键性生产要素的双重属性,一方面,有价值的数据资源是催生和推动数字经济新产业、新业态、新模式发展的基础;另一方面,数据对其他生产要素具有乘...

关键字: 硬盘 耦合 机械硬盘 存储系统

(全球TMT2021年12月28日讯)由中国计算机学会(China Computer Federation,简称CCF)的体系结构专业委员会和信息存储技术专业委员会联合推出的学术盛会中国计算机学会计算机系统大会(简称C...

关键字: 存储系统

(全球TMT2021年7月28日讯)Super Micro Computer, Inc.宣布其经过市场验证的顶部装载存储解决方案的新版本,该版本采用60盘位和90盘位系统,搭配针对最新第3代Inte

关键字: 存储系统 ic

  在我国去年发布的新医改方案中,政策基本都是围绕着电子病历展开的,这也标志着电子病历在今后的医疗行业发展中扮演着重要的角色,如何应用电子病历更为有效,成了我们要思考的问题。   目前以电子病历为核

关键字: 存储系统 电子病历
关闭
关闭