关于内存管理单元需要掌握的相关知识

1.如何将虚拟地址转换为物理地址,

2.MMU的内存访问权限机制,

3.TLB,Catch和write buffer原理。

…………………………

内存管理单元MMU的功能:将虚拟地址映射到物理地址,并提供内存访问权限。

没启动MMU时,cpu核,cache,MMU和外设等所有部件使用的都是物理地址。

启动MMU后,cpu核发出虚拟地址,由MVA转换成物理地址供cache和MMU使用。

最后使用物理地址访问实际设备。

问题:

为什么是从虚拟地址到物理地址的转换。

NAND Flash控制器需要掌握的相关知识:

1. NAND Flash芯片接口,

2.掌握通过 NAND Flash控制器来访问 NAND Flash的方法。

…………………………

NAND Flash相当于PC上的硬盘,用于保存系统运行时必需的数据,掉电后仍可永久保存。

NAND Flash多用于存储数据,体积更小,寿命更长,常用yaffs文件系统,如芯片K9F1208U0M, Nor Flash多用于存储程序,常用jffs2文件系统。

NAND Flash控制器用来简化对 NAND Flash的操作。

………………………………

UART:universal asychronous reciever transmitter,通用异步收发器,cpu将并行数据写入UART, UART将其在一根电线上串行发出,并用另一根电线接收数据,全双工方式。

………………………………

系统时钟和定时器相关知识:

1.了解2440的时钟体系

2.通过MPLL改变系统时钟的方法

为了降低电磁干扰,降低板间布线要求,2440外接晶振频率通常很低,比如12MHz,因此需要PLL提高系统时钟。

ARM920T有37个寄存器,包括31个通用寄存器和6个程序寄存器。

ARM体系cpu有7种工作模式。

ARM体系cpu有以下两种工作状态,即ARM状态和Thumb状态。但是cpu一上电就处于ARM状态,所以无需关心cpu工作状态。

时间: 2024-11-03 09:04:57

关于内存管理单元需要掌握的相关知识的相关文章

关于内存管理单元须要掌握的相关知识

1.怎样将虚拟地址转换为物理地址, 2.MMU的内存訪问权限机制, 3.TLB,Catch和write buffer原理. ---------- 内存管理单元MMU的功能:将虚拟地址映射到物理地址,并提供内存訪问权限. 没启动MMU时.cpu核.cache,MMU和外设等全部部件使用的都是物理地址. 启动MMU后,cpu核发出虚拟地址.由MVA转换成物理地址供cache和MMU使用. 最后使用物理地址訪问实际设备. 问题: 为什么是从虚拟地址到物理地址的转换. NAND Flash控制器须要掌握

MMU内存管理单元相关知识点总结

1.MMU是Memory Management Unit的缩写,中文名是内存管理单元,它是中央处理器(CPU)中用来管理虚拟存储器.物理存储器的控制线路,同时也负责虚拟地址映射为物理地址,以及提供硬件机制的内存访问授权,多用户多进程操作系统. 2.虚拟内存由来:许多年以前,当人们还在使用DOS或是更古老的操作系统的时候,计算机的内存还非常小,一般都是以K为单位进行计算,相应的,当时的程序规模也不大,所以内存容量虽然小,但还是可以容纳当时的程序.但随着图形界面的兴起还有用户需求的不断增大,应用程序

SoC软件架构设计之二:内存管理单元的硬件设计实现

程序的大部分代码都可以在必要的时候才加载到内存去执行,运行完后可以被直接丢弃或者被其他代码覆盖.我们PC上同时跑着很多的应用程序,每个应用程序使用的虚拟地址空间几乎可以整个线性地址空间(除了部分留给操作系统或者预留它用),可以认为每个应用程序都独占了整个虚拟地址空间(字长是32的CPU是4G的虚拟地址空间),但我们的物理内存只是1G或者2G.即多个应用程序在同时竞争使用这块物理内存,其必然会导致某个时刻只存在程序的某个片段在执行,也即是所有程序代码和数据分时复用物理内存空间-这就是内存管理单元(

MMU内存管理单元

arm-linux学习-(MMU内存管理单元) 什么是MMU MMU(Memory Management Unit)主要用来管理虚拟存储器.物理存储器的控制线路,同时也负责虚拟地址映射为物理地址,以及提供硬件机制的内存访问授权.多任务多进程操作系统.(来自百度百科,对其几个点不熟悉,因此可以只考虑加粗部分) 发展历史 注意:学习一个知识点,很重要的一步是了解其为什么而存在?它的存在是为了解决什么问题?然后,在学习的过程中带着这些问题去理解.去思考. 在许多年以前,还是使用DOS或一些古老的操作系

02-JZ2440裸机学习之MMU内存管理单元【转】

本文转载自:http://blog.csdn.net/fengyuwuzu0519/article/details/66479248 版权声明:本文为博主原创文章,转载请注明http://blog.csdn.net/fengyuwuzu0519. 1.MMU定义: MMU是Memory Management Unit的缩写,中文名是内存管理单元,它是中央处理器(CPU)中用来管理虚拟存储器.物理存储器的控制线路,同时也负责虚拟地址映射为物理地址,以及提供硬件机制的内存访问授权,多用户多进程操作系

ARM4412的MMU内存管理单元

由于在裸板驱动的时候要中断>>异常>>MMU MMU是一个内存管理单元,在CP15协处理器里面,而CP15处理器是嵌入在ARM芯片里.功能是将虚拟地址映射到物理地址里面. 在使用MMU寄存器机制之前首先要配置寄存器.将寄存器的功能打开 映射的机制支持段模式1M,小段模式,小页模式(更精细) 000000-------1000000  rom的地址 TLB虚拟地址与物理地址缓存的对应关系 页表的产生:假如将4个G的虚拟地址映射到1G的物理地址,假如有100个线程同时使用表,此时,建立

内存管理单元编程实例【转】

转自:http://blog.chinaunix.net/uid-29091195-id-4020919.html 一.MMU初步了解    概念:内存管理单元(memory management unit),简称MMU    主要作用:负责虚拟地址到物理地址之间的转换             提供硬件机制的内存访问权限检查        发展由来:由于程序的大小逐步发展到大于内存的大小这一问题的出现    导致了虚拟存储器的产生,虚拟存储器的基本思想是:数据.堆栈的总    大小可以超越物理存

内存管理单元MMU

一. .text .global _start _start: ldr sp, =4*1024 @调用C函数之前,要设置栈指针:栈的作用:保存上下文,传递参数,保存临时变量:因为堆栈向下生长,所以要将栈指针设置到地址空间的顶层:总共可用的只有4K,也就是4*1024 bl close_watchdog @关看门狗 bl mem_ctrl_set @设置存储控制器 bl copy_code_sdram @复制代码到sdram bl set_page @设置页表 bl start_mmu @启动mm

Mini2440内存管理单元MMU

一级页表: TTB base代表一级页表的地址,将它写入协处理器CP15的寄存器C2(称为页表基址寄存器)即可,一级页表的地址是16K对齐,使用[31:14]存储页表基址,[13:0]为0.一级页表使用4096个描述符来表示4GB空间,每个描述符对应1MB的虚拟地址,要么存储它对应的1MB物理空间的起始地址,要么存储下一级页表的地址.使用MVA[31:20]来索引一级页表(2^12=4096个描述符),得到一个描述符,每个描述符占4个字节. 一级描述符低两位: 00:无效(Fault) 01:粗