powerpc的内存体系结构

E500内核中包含内存管理单元MMU,其包含两个查找表(TLB0 Transaction Lookside Buffer)和TLB1来实现虚拟地址和物理地址的转化,其中TLB0用来进行页式映射,TLB1用来进行段式映射。E500有两个版本v1和v2,其中v2内核中的物理地址为36位,支持64GB的寻址,配置上有些不同。

E500v1内核的虚实地址转换





E500内核中使用了两级MMU结构,E500内核中的地址转换不能被禁止,并且在内部支持两个地址空间,分别为地址空间0和地址空间1

L1MMU包括I-L1VSP,D-L1VSP,I-L1TLB4K,D-L1TLB4k, I-L1VSP,D-L1VSP有4个Entry,是TLB1的数据缓冲区。I-L1TLB4K,D-L1TLB4k有64个Entry,是TLB0的数据缓冲区。

E500内核的L2MMU包括TLB0(16个Entry),和TLB1(256个Entry),

L1MMU和L2MMU中的Entry

E500内核的L1MMU和L2MMU中包含了许多Entry,在这些Entry中又包含了许多字段用来支持虚实地址转换,系统软件部能直接操作L1MMU的Entry,而是通过操作L2MMU的Entry来影响L1MMU的Entry

在E500内核中TLB1用来实现虚拟地址和物理之间的段映射方式,在E500内核复位后,TLB1中除了Entry0之外,其他的Entry都被置为无效,TLB1的Entry0初始值如表



E500内核的系统复位地址为0xFFFFFFFC,此时系统只能访问从0xFFFFF000开始的4KB地址,在这段程序空间中,引导程序需要完成对TLB1的其他Entry的初始化操作,建立基本的地址映射,

TILB1支持可变的长度页表,TLB1中一共有16个Entry,支持的最大内存地址空间为4GB,改变TLB1相应的Entry的SIZE字段将会调整TLB1中所支持的页表大小



1.系统软件可以使用TLB1映射IO空间,如PCI总线地址,局部总线地址空间,也可以你使用TLB1对主存储器,如SDRAM,DDR,进行地址映射,使用TLB1进行映射的优点是配置简单,一次最多可以将最多256MB空间进行映射,对于许多简单的应用而言,系统软件设计可以只使用TLB1完成虚实地址转换,而不需要使用TLB0进行页式虚实地址转换。

2.TLB0,TLB0是MMU地址转换单元的核心,E500内核的TLB0共支持256个Entry,支持的页表大小为4KB,因此TLB0所能直接覆盖的物理地址空间只有1MB,但是系统软件只是将TLB0作为页表的缓冲,采用TLB0进行虚拟内存管理需要在主存储器中建立也变,页表的每一个Entry所能管理的页表大小也是4KB,也TLB0支持的页表大小相等,

3.由于TLB0能直接映射地址空间只有1MB,当一个程序使用的地址不在这1MB空间时,将产生TLB miss异常,E500内核中一共有两只TLB miss异常,指令TLB miss异常和数据TLB miss异常。当产生异常时,进入异常处理程序会对存放在外部存储器中的页表进行检索,然后查到页表中和的Entry,将此Entry的值更新到TLB-的Entry中。

E500内核的Cache组成

1.E500内核中仅包含L1 cache,而不包含L2 cache,目前基于E500内核的处理器如,MPC8541,MPC8548包含了L2 cache,但是这些L2cache不属于内核,而是出于处理器。

2.E500内核的L1 cache采用哈佛结构将指L1 cache 和数据L1 cache分离,指令和数据L1 cache的大小都为32K

32kB = cache行长度(32B)X 路数(8路)X组数(128组)

PPC MPC85xx e500学习笔记的更多相关文章

  1. 学习笔记:CentOS7学习之十六:LVM管理和ssm存储管理器使用

    目录 学习笔记:CentOS7学习之十六:LVM管理和ssm存储管理器使用 16.1 LVM的工作原理 16.1.1 LVM常用术语 16.1.2 LVM优点 16.2 创建LVM的基本步骤 16.2 ...

  2. [转帖]Linux学习笔记之rpm包管理功能全解

    Linux学习笔记之rpm包管理功能全解 https://www.cnblogs.com/JetpropelledSnake/p/11177277.html rpm 的管理命令 之前学习过 yum 的 ...

  3. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  4. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  5. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  6. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

  7. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  8. seaJs学习笔记2 – seaJs组建库的使用

    原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...

  9. CSS学习笔记

    CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...

随机推荐

  1. String和string的区别(C#)

    从位置讲: 1.String是.NET  Framework里面的String,小写的string是C#语言中的string 2.如果把using System;删掉,没有大写的String了,Sys ...

  2. Asp.Net MVC4入门指南(4):添加一个模型

    在本节中,您将添加一些类,这些类用于管理数据库中的电影.这些类是ASP.NET MVC 应用程序中的"模型(Model)". 您将使用.NET Framework 数据访问技术En ...

  3. 传统B2B中小型企业如何做好全网营销

    优网特独创全网营销服务理念,全网营销即以企业网站推广为核心,通过SEO.SEM.BBS营销.博客营销.微营销.即时通讯营销.网络口碑营销.视频营销.邮件营销.SNS营销等网络营销手段,全面提升企业网站 ...

  4. String,StringBuffer

    String类代表不可变的字符序列. String s1 = "hello"; String s2 = "hello"; s1 == s2  ==> tr ...

  5. DEV设计之自动流水号,DEV专家解答,自己折腾了半天也没有搞定,怪英文不好

    () 老外专家给了回答,结果没有全到懂,又折腾了20分钟朋友提示才搞定 获取一个自动增加1的流水号值, 第一个参数是本事的数据库连接对象,第2个参数是也这个值为唯一标识返回来一个增量的值,第三个好像没 ...

  6. R与Java

    对于从未接触代码的我,看到这些很陌生,现在需要做的是用r语言去做数据处理分析,将分析的结果给Java,然后在Java上输出想要的结果,没人给予指导,自己就这样瞎摸索,真希望有这方面的牛人给予指导,让一 ...

  7. pl/sql中文乱码问题解决

    最近用pl/sql连我们公司的数据库,发现表里的中文数据都是“???”,上网查了一下,发现是数据库的编码格式和pl/sql的编码格式不统一造成的. 解决方法非常简单,只要创建一个系统环境变量:NLS_ ...

  8. java获取文件名的三种方法

    import java.io.File; import java.util.Arrays; public class FileName { /** * @param args */ public st ...

  9. 使用Wireshark 查看查找未被过滤端口

    打开Wireshark ,过滤输入“ip.src == [IP] && ip.ttl < 255”,因为防火墙伪造的数据包的TTL都是255,真实的数据包应该是56,所以这句话直 ...

  10. 【线段树】bzoj1018 [SHOI2008]堵塞的交通traffic

    线段树的每个叶子节点存一列. 每个节点维护六个域,分别是左上左下.左上右上.左上右下.左下右上.左下右下.右上右下在区间内部的连通性,不考虑绕出去的情况. 初始每个叶子的左上左下.右上右下是连通的. ...