qsx

飞思卡尔 ColdFire编程参考手册

0
阅读(2704)

目 录
第1章 绪 论 ........................................................................................................................... 1
1.1整型单元用户编程模式 ............................................................................................ 2
1.1.1数据寄存器(D0-D7) ....................................................................................... 2
1.1.2地址寄存器(A0-A7) ....................................................................................... 2
1.1.3程序计数器(PC) ........................................................................................... 2
1.1.4条件码寄存器(CCR) ................................................................................. 3
1.2浮点单元用户编程模式 ............................................................................................ 3
1.2.1浮点型数据寄存器(FP0-FP7) ................................................................... 4
1.2.2浮点型状态寄存器(FPSR) ............................................................................. 5
1.2.3浮点型指令地址寄存器(FPIAR) .............................................................. 6
1.3 MAC的用户编程模型 .............................................................................................. 6
1.3.1MAC状态寄存器(MACSR) ........................................................................... 7
1.3.2 MAC累加器(ACC) ........................................................................................ 7
1.3.3 MAC掩码寄存器(MASK) ............................................................................. 7
1.4 EMAC用户编程模型 ............................................................................................... 8
1.4.1MAC状态寄存器(MACSR) ........................................................................... 8
1.4.2MAC加法器(ACC[0:3]) ................................................................................. 9
1.4.3加法器扩展(ACCext01,ACCext23) ............................................................. 10
1.4.4 MAC 掩码寄存器(MASK) .......................................................................... 10
1.5管理员编程模式 ...................................................................................................... 10
1.5.1状态寄存器(SR) ............................................................................................ 11
1.5.2管理员/用户堆栈指针(A7和OTHER_A7) ................................................ 12
1.5.3向量基址寄存器(VBR) ................................................................................ 13
1.5.4缓存控制寄存器(CACR) ............................................................................. 13
1.5.5地址空间标示符(ASID) ............................................................................... 13
1.5.6存取控制寄存器(ACR0-ACR3) ................................................................... 13
1.5.7 MMUC基址寄存器(MMUBAR)................................................................. 13
1.5.8RAM基地址寄存器(RAMBAR0/RAMBAR1) ............................................ 14
1.5.9 ROM基地址寄存器(ROMBAR0/ROMBAR1) ........................................... 14
1.5.10模块基地址寄存器(MBAR) ....................................................................... 14
1.6整数数据格式 .......................................................................................................... 15
1.7浮点型数据格式 ...................................................................................................... 15
1.7.1浮点型数据类型 ........................................................................................... 15
1.7.2FPU数据格式和类型概述 ............................................................................ 17
1.8乘法累加器数据格式 .............................................................................................. 18

1.9寄存器的数据组织 .................................................................................................. 19
1.9.1 寄存器中的整数数据格式的组织 .............................................................. 19
1.9.3 存储器中整数数据格式的组织 .................................................................. 20
1.10 硬件配置信息 ....................................................................................................... 21
历史版本 ........................................................................................................................ 25
第2章 寻址方式 ................................................................................................................... 26
2.1 指令格式 ................................................................................................................. 26
2.2 有效寻址方式 ......................................................................................................... 27
2.2.1 数据寄存器直接寻址方式 .......................................................................... 27
2.2.2 地址寄存器直接寻址方式 .......................................................................... 28
2.2.3地址寄存器间接寻址方式 ........................................................................... 28
2.2.4 带后自增的地址寄存器间接寻址 .............................................................. 28
2.2.5 带前自减的地址寄存器间接寻址 .............................................................. 29
2.2.6 带偏移的地址寄存器间接寻址 .................................................................. 29
2.2.7 带8位偏移的比例变址(Scaled Index)地址寄存器间接寻址 .............. 30
2.2.8 带偏移的程序计数器间接寻址 .................................................................. 31
2.2.9 带8位偏移的比例变址(Scaled Index)程序计数器间接寻址 .............. 32
2.2.10 绝对的短地址寻址 .................................................................................... 32
2.2.11 绝对的长地址寻址 .................................................................................... 33
2.2.12立即数据 ..................................................................................................... 34
2.2.13 有效寻址方式小结 .................................................................................... 34
2.3 堆栈 ......................................................................................................................... 35
第3章 指令集概述 ............................................................................................................... 37
3.1指令概述 .................................................................................................................. 37
3.1.1 数据传送指令 .............................................................................................. 39
3.1.2 程序控制指令 .............................................................................................. 40
3.1.3 整数算术指令 .............................................................................................. 41
3.1.4 浮点型算术指令 .......................................................................................... 43
3.1.5 逻辑指令 ...................................................................................................... 44
3.1.6 移位指令 ...................................................................................................... 45
3.1.7 位操作指令 .................................................................................................. 46
3.1.8 系统控制指令 .............................................................................................. 46
3.1.9 高速缓存保护指令 ...................................................................................... 48
3.2 指令集概述 ............................................................................................................. 48
3.3 ColdFire内核小结 ................................................................................................... 56
第4章 整型用户指令 ........................................................................................................... 63
第5章 MAC用户指令 ....................................................................................................... 168
第6章 EMAC用户指令 .................................................................................................... 182

第7章 浮点运算单元(FPU)用户指令 ............................................................................... 219
7.1 浮点型状态寄存器(FPSR) ....................................................................................219
7.2 条件测试 ................................................................................................................221
7.3 异常发生的指令结果 ............................................................................................224
7.4 ColdFire和MC680x0 FPU编程模型的本质不同 ...............................................225
7.5 指令描述 ................................................................................................................227
第8章 超级用户(特权)指令 .............................................................................................. 250
CPUSHL .......................................................................................................................250
FRESTORE ...................................................................................................................251
FSAVE ...........................................................................................................................253
HALT ............................................................................................................................255
INTOUCH .....................................................................................................................256
MOVE fromSR .............................................................................................................257
MOVE fromUSP ...........................................................................................................258
MOVE to SR .................................................................................................................259
MOVE to USP ...............................................................................................................260
MOVEC ........................................................................................................................261
RTE ...............................................................................................................................263
STRLDSR .....................................................................................................................264
STOP .............................................................................................................................265
WDEBEG ......................................................................................................................266
第9章 指令格式摘要 ......................................................................................................... 268
9.1操作码映射 .............................................................................................................268
第10章 PST/DDATA编码 ................................................................................................. 290
10.1 用户指令集 ..........................................................................................................290
10.2 特权指令集 ..........................................................................................................295
第11章 异常处理 ............................................................................................................... 296
11.1 概述 ......................................................................................................................296
11.1.1 管理员/用户堆栈指针(A7和OTHER_A7) .......................................298
11.1.2 异常栈框架定义 .......................................................................................298
11.1.3 处理器异常 ...............................................................................................300
11.1.4 浮点算法异常 ...........................................................................................300
11.1.5 分支开始无序(BSUN) ..............................................................................301
11.1.6 输入非数字(INAN) ..................................................................................301
11.1.7 输入规格化数字(IDE) ..............................................................................302
11.1.8 操作数错误(OPERR) ................................................................................302
11.1.9 溢出(OVFL) ..............................................................................................303
11.1.10 下溢(UNFL) ............................................................................................303

11.1.11 除数为零(DZ) .........................................................................................304
11.1.12 不精确结果(INEX) .................................................................................304
11.1.13 MMU转变成异常处理模式 ...................................................................305
附录A S记录输出格式 .................................................................................................... 306
A.1 S记录内容 .............................................................................................................306
A.2 S记录类型 .............................................................................................................306
A.3 S记录创建 .............................................................................................................307
表索引
表1-1 CCR位描述 .......................................................................................................... 3
表1-2 FPCR域的描述 .................................................................................................... 4
表1-3 FPSR域描述 ........................................................................................................ 5
表1-4 MACSR域描述 .................................................................................................... 7
表1-5 MACSR域描述 .................................................................................................... 8
表1-6 设备使用的管理员寄存器 ................................................................................. 11
表1-7 状态域描述 ........................................................................................................ 12
表1-8 MMU基址寄存器域描述 .................................................................................. 14
表1-9 MBAR域描述 .................................................................................................... 14
表1-10 整数数据格式 .................................................................................................. 15
表1-11 实数格式概述 .................................................................................................. 17
表1-12 D0处理器配置域描述 ..................................................................................... 22
表1-13 D1处理器配置域描述 ..................................................................................... 23
表2-1 指令字格式领域定义 ........................................................................................ 27
表2-2. 立即操作数定位 ............................................................................................... 34
表2-3 有效寻址方式和种类 ........................................................................................ 34
表3-1 符号规范............................................................................................................ 37
表3-2 数据传输操作格式 ............................................................................................ 39
表3-3 程序控制指令格式 ............................................................................................ 40
表3-4 整数算术指令格式 ............................................................................................ 42
表3-5 双值浮点型操作格式 ........................................................................................ 43
表3-6 双值浮点型操作 ................................................................................................ 44
表3-7 单值浮点型操作格式 ........................................................................................ 44
表3-8 单值浮点型操作 ................................................................................................ 44
表3-9 逻辑操作格式 .................................................................................................... 45
表3-10 移位操作格式 .................................................................................................. 45
表3-11 位操作指令格式 .............................................................................................. 46

表3-12 系统控制操作指令 .......................................................................................... 46
表3-13 缓存保护操作格式 .......................................................................................... 48
表3-14 ColdFire用户指令集概述 ............................................................................... 49
表3-15 ColdFire管理员指令集概述 ........................................................................... 55
表3-16 ColdFire指令集和处理器参考信息................................................................ 56
表7-1 有关FPSR域的描述 .......................................................................................220
表7-2 FPSR EXC位 ....................................................................................................221
表7-3 FPCC编码表 .....................................................................................................222
表7-4 浮点型条件测试 ...............................................................................................223
表7-5 FPCR EXC位异常可用或不可用的结果 ........................................................224
表7-6 设计模板的不同点 ...........................................................................................225
表7-7 68K/ColdFire操作顺序1 .................................................................................226
表7-8 68K/ColdFire操作顺序2 .................................................................................226
表7-9 68K/ColdFire操作顺序3 .................................................................................227
表7-10 数据格式编码 .................................................................................................228
表8-1 状态帧...............................................................................................................252
表8-2 状态帧...............................................................................................................254
表8-3 ColdFire CPU的空间分配 ................................................................................262
表9-1 操作码映射表 ...................................................................................................268
表10-1 用户模式下指令PST/DDATA细节..............................................................290
表10-2 用户模式下多累加器指令PST/DDATA值 ..................................................293
表10-3 用户模式下浮点型指令PST/DDATA值 ......................................................294
表10-4 数字标记与FPU操作数格式指定 ...............................................................294
表10-5 特权模式下指令PST/DDATA细节..............................................................295
表11-1 异常向量分配 .................................................................................................297
表11-2 格式/向量字 ....................................................................................................299
表11-3 异常优先级 .....................................................................................................300
表11-4 BSUN异常有效/无效结果 .............................................................................301
表11-5 INAN异常有效/无效结果 ..............................................................................301
表11-6 IDE异常有效/无效结果 .................................................................................302
表11-7 可能的操作数错误 .........................................................................................302
表11-8 OPERR异常有效/无效结果 ...........................................................................302
表11-9 OVFL异常有效/无效结果 .............................................................................303
表11-10 UNFL异常有效或无效结果 ........................................................................303
表11-11 DZ异常有效或无效结果 ..............................................................................304
表11-12 不精确舍入模式值 .......................................................................................304
表11-13 INEX异常有效或无效结果 .........................................................................304
表11-14 OEP EX周期操作 .........................................................................................305

表A-1 S记录的组成部分............................................................................................306
表A-2 ASCII码 ...........................................................................................................309
图索引
图1-1 ColdFire系列的用户编程模式............................................................................ 2
图1-2 条件码寄存器(CCR) ........................................................................................... 3
图1-3 ColdFire系列浮点单元的用户编程模式 ............................................................ 4
图1-4 浮点型控制寄存器(FPCR) ............................................................................ 4
图1-5 浮点型状态寄存器(FPSR) .................................................................................. 5
图1-6 MAC单元编程模型............................................................................................. 6
图1-7. MAC 状态寄存器(MACSR) ......................................................................... 7
图1-8 EMAC编程模式 .................................................................................................. 8
图1-9 MAC状态寄存器(MACSR) ........................................................................... 8
图1-10 EMAC分数队列 ................................................................................................ 9
图1-11 EMAC有符号和无符号整数队列 .................................................................. 10
图1-12 加法器0和1的扩展(ACCext01) ............................................................. 10
图1-13 加法器2和3的扩展(ACCext23) ............................................................. 10
图1-14 管理员编程模块 ............................................................................................... 11
图1-15. 状态寄存器(SR) ........................................................................................ 12
图1-16 向量基址寄存器(VBR) ............................................................................. 13
图1-17 MMU基址寄存器 ............................................................................................ 13
图1-18 模块基地址寄存器(MBAR) ...................................................................... 14
图1-19 规格化数据格式 .............................................................................................. 15
图1-20 零格式.............................................................................................................. 16
图1-21 无穷大格式 ...................................................................................................... 16
图1-22 非数值格式 ...................................................................................................... 16
图1-23 非规格化的数据格式 ...................................................................................... 17
图1-25 数据寄存器中整型数据的组织形式 .............................................................. 19
图1-26 地址寄存器中地址的组织形式 ...................................................................... 20
图1-27 存储器的寻址方式 .......................................................................................... 20
图1-28 存储器整型操作数的组织形式 ...................................................................... 21
图1-30 D1处理器配置信息 ......................................................................................... 21
图2-1 指令字的一般格式 ............................................................................................ 26
图2-2 指令字的具体格式 ............................................................................................ 26
图2-3 数据寄存器直接寻址 ........................................................................................ 27
图2-4 地址寄存器直接寻址 ........................................................................................ 28
图2-5 地址寄存器间接寻址 ........................................................................................ 28

图2-6 带后自增的地址寄存器间接寻址 .................................................................... 29
图2-7 带前自减的地址寄存器间接寻址 .................................................................... 29
图2-8 带前自减的地址寄存器间接寻址 .................................................................... 30
图2-9 带8位偏移的比例变址地址寄存器间接寻址 ................................................ 31
图2-10 带偏移的程序计数器间接寻址 ...................................................................... 31
图2-11 带8位偏移的比例变址程序计数器间接寻址 .............................................. 32
图2-12 绝对的短地址寻址 .......................................................................................... 33
图2-12 绝对的短地址寻址 .......................................................................................... 34
图2-14 立即数寻址方式 .............................................................................................. 34
图2-15 堆栈从高地址游历到低地址 .......................................................................... 36
图2-16 堆栈从低地址游历到高地址 .......................................................................... 36
图7-1 浮点型状态寄存器(FPSR) ...............................................................................219
图11-1 异常堆栈结构 .................................................................................................299
图A-1 组成S记录的五个部分 ..................................................................................306
图A-2. S1记录的发送 ................................................................................................308