PowerPC简单了解
PowerPC相对于ARM优势:
Powerpc芯片凭借其出色的性能和高度整合和技术先进特性在网络通信应用,工业控制应用,家用数字化,网络存储领域,军工领域,电力系统控制等都具有非常广泛的应用.由于PowerPC相对ARM器件来说价格稍贵,另外ARM开
发工具盗版到处都是,所以在中国目前来说PowerPC不是很普及.但在一些欧美国家应用很广泛的,高校通信专业里面不学PowerPC,应该是高校一个重要失策.个人觉得PowerPC相对ARM优势有下面几点说明, 一是,整合度高
以及技术先进性,现在Freescale PowerPC 处理器集成USB,PCI,DDR控制器,SATA控制器,千兆网口控制器,CAN控制器,RapidIO以及PCI_Express控制器,IEEE1588通信协议,支持各种通信协议CPM协处理器 ,DMA,SPI,I
2C.UART等,客户无须设计复杂的外围电路,减少设计复杂程度以及物料使用,ARM这点比不上 二是,芯片可选范围大,性能高,升级容易,从50M-1.7G都有处理器,而且POwerPC将象多核处理器发展,如已经推出集成双
e500 core MPC8572,MIPS性能高达6897,ARM我看频率是1G的都没有,ARM 大概是 1.1 MIPS/MHz,Power Architecture 是大于2.0MIPS/MHz,所以PowerPC在高端嵌入式应用,占有很大比例,ARM这点比不上,三是,开
发难度方面,其实PowerPC处理器开发难度并不是很高,只不过因为开发的人少,所以中文资料相对较少,另外开发工具也不象ARM那么多盗版的,所以总有些人抱怨PowerPC处理器开发难度大,如Freescale都免费给客户提供
Datasheet,设计详细文档给用户,而且最底层驱动,Freesclae都已经开发好.你可以在他们论坛上提问,或者发邮件给技术支持,他们很快都能回复的, 相信以后用的人会越来越多 四是,价格方面,总有人抱怨说PowerPC处
理器价格贵,相对ARM来说,同样频率的,可能会贵点,但是如果是MIPS/MHz性能比较以及整合的外围电路来说,PowerPC还是有一定优势的,Freescale也意识到这个问题,所以推出了象工作频率低点的MPC8313,MPO8323等低
价格处理器,另外如coldfire也推出低价格处理器,随着Freescale后面产品继续推出,PowerPC处理器价格会越来越便宜
===============================================================================================================================
PowerPC Memory Management Model (MMU)
The MMU specifications are largely provided by the OEA. The primary functions of the MMU are to
translate logical (effective) addresses to physical addresses for memory accesses and I/O accesses (most
I/O accesses are assumed to be memory-mapped), and to provide access protection on a block or page
basis. Note that many aspects of memory management are implementation-dependent. The description in
Chapter 7, “Memory Management,” describes the conceptual model of a MMU; however, processors may
differ in the specific hardware used to implement the MMU model.
Processors require address translation for two types of transactions—instruction accesses and data
accesses to memory (typically generated by load and store instructions).
The memory management specification includes models for 32-bit implementations. The MMU of a 32-bit
processor provides 232 bytes of logical address space accessible to supervisor and user programs with a
4-Kbyte page size and 256-Mbyte segment size.
In 32-bit implementations, the entire 4-Gbyte memory space is defined by sixteen 256-Mbyte segments.
Segments are configured through the 16 segment registers.
The block address translation (BAT) mechanism maps large blocks of memory. Block sizes range from
128 Kbytes to 256 Mbytes and are software-selectable. In addition, the MMU of 32-bit processors uses an
interim virtual address (52 bits) and hashed page tables in the generation of 32-bit physical addresses.
Two types of processor-generated accesses require address translation: instruction accesses and data
accesses to memory generated by load and store instructions. The address translation mechanism is
defined in terms of segment tables (or segment registers in 32-bit implementations) and page tables used
to locate the logical-to-physical address mapping for instruction and data accesses. The segment
information translates the logical address to an interim virtual address, and the page table information
translates the virtual address to a physical address.
Translation lookaside buffers (TLBs) are commonly implemented to keep recently-used page table entries
on-chip. Although their exact characteristics are not specified by the architecture, the general concepts that
are pertinent to the system software are described.
The block address translation (BAT) mechanism is a software-controlled array that stores the available
block address translations on chip. BAT array entries are implemented as pairs of BAT registers that are
accessible as supervisor SPRs; refer to Chapter 7, “Memory Management,” for more information.
===============================================================================================================================
PowerPC Interrupt Model
The interrupt mechanism, defined by the OEA, allows the processor to change to supervisor state as a
result of external signals, errors, or unusual conditions arising in the execution of instructions. When
interrupts occur, information about the state of the processor is saved to various registers and the processor
begins execution at an address (interrupt vector) predetermined for each type of interrupt. Interrupt handler
routines begin execution in supervisor mode. The interrupt model is described in detail in Chapter 6,
“Interrupts.” Note also that some aspects regarding interrupt conditions are defined at other levels of the
architecture. For example, floating-point exception conditions are defined by the UISA, whereas the
interrupt mechanism is defined by the OEA.
The architecture requires that interrupts be handled in program order (excluding the optional floating-point
imprecise modes and the reset and machine check interrupt); therefore, although a particular
implementation may recognize interrupt conditions out of order, they are handled strictly in order. When
an instruction-caused interrupt is recognized, any unexecuted instructions that appear earlier in the
instruction stream, including any that have not yet begun to execute, are required to complete before the
interrupt is taken. Any interrupts caused by those instructions must be handled first. Likewise, interrupts
that are asynchronous and precise are recognized when they occur, but are not handled until all instructions
currently executing successfully complete processing and report their results.
The OEA supports four types of interrupts:
? Synchronous, precise
? Synchronous, imprecise
? Asynchronous, maskable
? Asynchronous, nonmaskable
PowerPC简单了解的更多相关文章
- 程序包管理rpm、yum与简单编译安装程序
Linux程序包管理 Linux中软件的安装主要有两种形式:一种是直接下载源代码包自行编译后安装,另一种直接获取rpm软件包进行安装. 程序的组成部分: 二进制程序:程序的主体文件,比如我们运行一个l ...
- FFmpeg源代码简单分析:configure
===================================================== FFmpeg的库函数源代码分析文章列表: [架构图] FFmpeg源代码结构图 - 解码 F ...
- /dev/mem可没那么简单
这几天研究了下/dev/mem.发现功能非常奇妙,通过mmap能够将物理地址映射到用户空间的虚拟地址上.在用户空间完毕对设备寄存器的操作,于是上网搜了一些/dev/mem的资料. 网上的说法也非常统一 ...
- [tldk][dpdk][dev] TLDK--基于dpdk的用户态协议栈传输层组件简单调研
如题,以下是一份简单的快速调研. TLDK: Transport Layer Development Kit 一 什么是TLDK transport layer development kit 处理t ...
- QEMU简单知识 以及磁盘格式转换的简单命令
From 百度百科 QEMU,是由 Fabrice Bellard开发的通用.开源机器模拟与虚拟化软件,Fabrice Bellard是另一个著名的C编译器的作者.QEMU可以在不同的机器上运行独自开 ...
- ARM、X86/Atom、MIPS、PowerPC
关注Android的时候,有一些CPU架构方面的术语知识,主要有:ARM.X86/Atom.MIPS.PowerPC1)ARM/MIPS/PowerPC均是基于精简指令集(RISC,Reduced I ...
- /dev/mem可没那么简单【转】
转自:http://blog.csdn.net/skyflying2012/article/details/47611399 这几天研究了下/dev/mem,发现功能很神奇,通过mmap可以将物理地址 ...
- 四大CPU体系结构:ARM、X86/Atom、MIPS、PowerPC
补充介绍一下RISC:RISC(reduced instruction set computer,精简指令集计算机)是一种执行较少类型计算机指令的微处理器,起源于80年代的MIPS主机(即RISC机) ...
- PowerPC架构与X86架构
PowerPC架构 PowerPC是一种精简指令集(RISC)架构的中央处理器(CPU),其基本的设计源自IBM(国际商用机器公司)的POWER(Performance Optimized With ...
随机推荐
- 运维朋友们,别再问需不需要学 Python 了!
运维人员需不需要学开发?需不需要学 Python?PythonN 和 Shell 有什么区别?天天问这种好水的问题,我实在受不了,决定帮大家扫扫盲. 现阶段,掌握一门开发语言已经成为高级运维工程师的必 ...
- 【明哥报错簿】之 mybatis异常invalid comparison: java.util.Date and java.lang.String
背景:数据库为postgresql,表字段属性为timestamp格式 原因是mybatis 3.3.0中对于时间参数进行比较时的一个bug. 如果拿传入的时间类型参数与空字符串''进行对比判断则会引 ...
- Count the string HDU - 3336
题意: 求一个字符串的每个前缀在这个字符串中出现次数的加和 解析: 默默的骂一句...傻xkmp..博主心里气愤... 拓展kmp就好多了... 因为拓展kmp每匹配一次 就相当于这些前缀出现了一 ...
- Sum of Consecutive Integers LightOJ - 1278(推公式 数学思维)
原文地址:https://blog.csdn.net/qq_37632935/article/details/79465213 给你一个数n(n<=10^14),然后问n能用几个连续的数表示; ...
- 【刷题】BZOJ 2152 聪聪可可
Description 聪聪和可可是兄弟俩,他们俩经常为了一些琐事打起来,例如家中只剩下最后一根冰棍而两人都想吃.两个人都想玩儿电脑(可是他们家只有一台电脑)--遇到这种问题,一般情况下石头剪刀布就好 ...
- 【BZOJ4011】【HNOI2015】落忆枫音(动态规划)
[BZOJ4011][HNOI2015]落忆枫音(动态规划) 题面 BZOJ 洛谷 Description 「恒逸,你相信灵魂的存在吗?」 郭恒逸和姚枫茜漫步在枫音乡的街道上.望着漫天飞舞的红枫,枫茜 ...
- 洛谷 P2123 皇后游戏 解题报告
P2123 皇后游戏 题意: 给定\(T\)组长为\(n\)的\(A\),\(B\)数组和\(C\)的计算方法,求一种排列方法,使最大的\(C\)最小化. 数据范围: \(1 \le T \le 10 ...
- Linux下的tar压缩解压缩命令详解(转)
tar -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的 ...
- Canny边缘检测算法原理及其VC实现详解(二)
转自:http://blog.csdn.net/likezhaobin/article/details/6892629 3. Canny算法的实现流程 由于本文主要目的在于学习和实现算法,而对于图像 ...
- Adaboost 算法的原理与推导——转载及修改完善
<Adaboost算法的原理与推导>一文为他人所写,原文链接: http://blog.csdn.net/v_july_v/article/details/40718799 另外此文大部分 ...