- 博客(15)
- 资源 (25)
- 收藏
- 关注
转载 NandFlash ECC 校验算法原理与实现
ECC的全称是Error Checking and Correction,是一种用于Nand的差错检测和修正算法。如果操作时序和电路稳定性不存在问题的话,NAND Flash出错的时候一般不会造成整个Block或是Page不能读取或是全部出错,而是整个Page(例如512Bytes)中只有一个或几个bit出错。ECC能纠正1个比特错误和检测2个比特错误,而且计算速度很快,但对1比特以上的错误无法纠
2016-09-28 16:31:23 6658
转载 SLC和MLC NAND Flash
SLC和MLC的价格差很多,比如256M的SLC nand价格就和1G的MLC nand一样。MLC优势确实正在日益凸显,很快就会成为闪存的主力。至于说它存储慢、安全性低,这个都是很久以前的事情了,随着各大芯片生产商对它的完善,现在MLC技术已经比较成熟,这些问题也就模糊了。Flash闪存是非易失性存储器,这是相对于SDRAM等存储器所说的。即存储器断电后,内部的数据仍然可以保存。Flash根
2016-09-28 10:13:38 623
转载 使用u-boot引导smart210提供的内核,卡在了“Starting kernel ...”
大家好,我问个问题,使用u-boot引导友善smart210提供的内核,卡在了“Starting kernel ...”。我百度了很久都没能解决。。。不知道大家有没有处理过这个问题的经验?谢谢!直接go zImage也不行。gcc:4.9.2u-boot:2014.07linux内核:3.0.8(config已配置好串口,使用superboot引导是可以打印的)boot
2016-09-27 17:26:36 2411
转载 SDRAM中数据掩码DQM的作用
DQM就是掩码控制位.在sdram中,每个DQM控制8bit Data在读操作的时候没什么大的影响,比如你读32位的sdram module, 但你只要其中低8bit的数据,没有关系,只要读出32bit数据,再在软件里将高24位bit和0"与"就可以了,有没有DQM关系不大.但在执行写操作时,如果没有DQM,你就麻烦了,可能你在软件上是写一个8bit数据,但实际上32根数据线是物理存在板上连接到S
2016-09-27 17:24:18 2857
转载 Ubuntu 16.04[64bit]嵌入式交叉编译环境arm-linux-gcc搭建过程图解
开发裸机环境之前需要先搭建其开发环境,毕竟工欲善其事必先利其器嘛。 安装步骤1、准备工具安装目录将压缩包arm-linux-gcc-4.4.3.tar.gz存放在一个目录下,这个目录就是你等会解压缩的目录,以后这个目录就不能随便删掉了,我的存放路径是/home/aldrich/arm,如下图,记住这个路径,等会还会用到。 .tar.gz 和.tgz解压:ta
2016-09-26 18:12:10 38431 16
转载 Ubuntu下搭建tftp服务器最简单方法
今天开始调试ARM的板子,要通过tftp下载到板子上,所以又要配置tftp服务器,真的烦死了... (本人酷爱装系统,所以经常都要搞配置)因为之前已经在Ubuntu下搭建过很多次tftp服务器了,但是一直记不住那一个配置文件的名字(记性太差),所以每次都要百度。可是每次百度出来的结果都不一样,而且出入很大,有的过程相当的繁琐,不仅很麻烦,而且搞到最后还没有配置成功。所以干脆写个日志记下来。
2016-09-26 08:59:33 439
转载 uboot的relocation原理详细分析
最近在一直在做uboot的移植工作,uboot中有很多值得学习的东西,之前总结过uboot的启动流程,但uboot一个非常核心的功能没有仔细研究,就是uboot的relocation功能。这几天研究下uboot的relocation功能,记录在此,跟大家共享。自己辛苦编辑,转载请注明出处,谢谢!所谓的relocation,就是重定位,uboot运行后会将自身代码拷贝到sdram
2016-09-25 11:28:00 588
转载 U-Boot移植——链接地址、运行地址、加载地址、存储地址
1 运行地址/链接地址 根据参考资料[1]的说明,运行地址和链接地址是等价的,只是两个不同的说法而已,指的是程序在SRAM、SDRAM中执行时的地址,就是执行这条指令时,PC应该等于这个地址,换句话说,PC等于这个地址时,这条指令应该保存在这个地址内[1]。 然而,根据参考资料[5]的分析,运行时地址与链接地址有时候是不一致的[6],例如U-Boot开始启动的其_start标号
2016-09-25 10:14:43 1307
转载 Arm汇编 位置无关代码 adr 指令
adr r0, _start 得到的是_start的当前执行位置,由 pc+offset 决定的 得到有效地址ldr r0, =_start 得到的是绝对的地址,链接时决定;------------------------------------------------------------------------/* 重定位Boot代码到RAM内存,将Boot代
2016-09-24 20:24:17 1079
转载 ARM协处理器CP15寄存器详解
用于系统存储管理的协处理器CP15MCR{cond} coproc,opcode1,Rd,CRn,CRm,opcode2MRC {cond} coproc,opcode1,Rd,CRn,CRm,opcode2coproc 指令操作的协处理器名.标准名为pn,n,为0~15 opcode1 协处理器的特定操作码. 对于CP15寄存器
2016-09-22 21:27:03 1338
转载 GNU ARM汇编--(三)ARM处理器的基本原则
这一篇的知识来源全部来自《ARM System Developer's Guide》 从编程人员的视角来看,arm核是由数据总线连接的功能单元组成,如下图所示: 数据通过数据总线流向处理器核心,这里的数据可以是将要执行的指令,也可以是数据项.上面的图是Von Neumann体系的arm核,数据项和指令共用同一总线.而h哈佛结构体系的arm核就
2016-09-21 09:14:54 328
转载 GNU ARM汇编--(二)汇编编译链接与运行
GNU的汇编器是GNU Tools的一部分,可以用来ARM的汇编语言源代码编译为二进制文件.关于GNU汇编器的介绍可以搜索《GNU Assembler Manual》.这里我们只是做一个简短的介绍,对GNU汇编器有一个大概的认识,同时通过两个例子了解一下GNU ARM汇编. 给出一个模板文件:[cpp] view plain copy .text
2016-09-21 08:42:13 654
转载 arm程序的反汇编程序 试读
我们以一个小程序来学习如何分析反汇编程序 这是汇编源文件:MCU:S3C2440(arm920T)代码实现点亮个led小灯.text.global _start_start: ldr r0,=0x56000010 @GPBCON mov r1,#0x00000400 @ str r1,[r
2016-09-20 10:43:37 525
转载 GNU ARM汇编--(一)开篇
在大学的时候,汇编就是学的很烂.一是对汇编这门语言没概念,二是那些指令集很难记清楚,用的机会也少,自然学的不好.但是现在觉得相当有必要重头学习一下汇编.部分原因我在上一篇写完设备模型的总结时提到了而.最近在看一本书《ARM:Assembly Language Programming》,作者是Peter Knaggs & Stephen Welsh.作者在开头也提出学习汇编的必要性和重要性,借他们的
2016-09-20 07:38:12 400
转载 arm-linux-gcc: 没有那个文件或目录
最近弄了个4412的板子(友善之臂的Tiny4412增强版),准备搞搞android,开发服务器用的是Ubuntu12.04-64bit版本(对于Android 2.3.X和更新的版本,需要64位的系统,之前的老版本2.2以下(包括2.2)可以 在32位版本上编译,另外不推荐虚拟机,因为官网上写的虚拟机配置过于变态,要16G的RAM/swap和30G以上的硬盘,速度上也不会很理想)用友善提供的
2016-09-10 16:21:06 9872 3
usb-monitor7.12
2014-05-16
Android-jni-test for smart210-led
2014-02-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人