首页 > 代码库 > powerpc 扩展指令设计 1

powerpc 扩展指令设计 1

 

Introduction:

  Powerpc是上世纪由IBM,MOTO,苹果公司合作开发的精简指令集处理器(RISC).PowerPC具有良好伸缩性以及可扩展性能,同时在上世纪90年代末期,PowerPC增加类似于DSP的单指令多数据的处理指令。

  相较于ARM,以及x86架构,PowerPC具有较好能耗比。本官将针对PowePC处理器内部流水线APU接口,进行扩展指令展示。通过PowerPC内部预留APU接口,可以支持DSP,定点运算以及浮点向量运算,可变长扩展指令运算。

Backgroud:

  无论系PowerPC抑或是ARM芯片,在通用功能上基本一致。各个厂家为提升某方面性能,例如控制/浮点运算/图形计算等等增加扩展指令集。例如ARM中存在Thumb指令,相对于普通32位指令,Thumb只有16位,极大提高指令压缩比。

  本文将基于QEMU的PowerPC高层仿真平台,对PowerPC扩展指令进行设计与实现。(基于C语言,of course)。本官将根据PowerPC指令手册,对指令集定义,采用电子级仿真平台对,对扩展指令进行设计,仿真,验证。因此本文将首先分析PowerPC相关架构以及寄存器,并且大家仿真环境,然后通过GCC验证指令格式,通过QEMU验证指令功能。

  

资料参考:18摸-PowerISA_V2.06B_V2_PUBLIC手册,以及QEMU的PowerPC仿真平台。(请移驾git下载),以及PPC405,460相关扩展指令资料,以及GCC关于扩展指令支持资料。

powerpc 扩展指令设计 1