序一
序二
前言
第1章 数字信号处理器简介
1.1 数字信号处理器的发展历程
1.2 数字信号处理器的主要特征
1.2.1 指令集
1.2.2 存储结构
1.2.3 数据格式与算法
1.2.4 运算部件
1.2.5 寻址方式
1.3 数字信号处理器的应用领域
1.4 本章小结
第2章 RISC-V架构
2.1 RISC-V的发展历程
2.2 RISC-V的优势
2.2.1 技术优势
2.2.2 生态优势
2.2.3 知识产权优势
2.3 RISC-V的主要特征
2.3.1 模块化设计
2.3.2 基础整数指令集
2.3.3 M扩展
2.3.4 F扩展
2.3.5 C扩展
2.3.6 Zifencei扩展
2.3.7 Zicsr扩展
2.3.8 特权架构
2.4 RISC-V开源项目
2.4.1 加州大学伯克利分校
2.4.2 PULP组织
2.4.3 OpenHW组织
2.4.4 lowRISC组织
2.4.5 平头哥
2.4.6 北京开源芯片研究院
2.4.7 印度理工学院马德拉斯分校
2.5 本章小结
第3章 SpringCore体系结构
3.1 设计目标
3.2 数字信号处理算法
3.3 指令集
3.3.1 支持的数据类型
3.3.2 结构寄存器
3.3.3 控制和状态寄存器
3.3.4 编码概括
3.3.5 指令扩展
3.4 内核结构
3.4.1 取指单元
3.4.2 译码单元
3.4.3 控制单元
3.4.4 执行单元
3.4.5 访存单元
3.4.6 存储空间
3.5 本章小结
第4章 SpringCore流水线设计
4.1 流水线技术简介
4.2 取指单元
4.2.1 取指单元结构
4.2.2 指令对齐
4.3 译码单元
4.3.1 预译码
4.3.2 基础译码
4.3.3 异常检测
4.3.4 指令发射
4.4 相关检测
4.4.1 数据相关
4.4.2 结构相关
4.4.3 控制相关
4.5 流水线低功耗控制
4.6 循环控制
4.7 控制和状态寄存器
4.8 本章小结
第5章 访存结构
5.1 存储结构
5.2 存储属性与保护
5.2.1 物理存储属性
5.2.2 安全域
5.2.3 访存保护机制
5.3 访存模块设计
5.3.1 访存功能
5.3.2 访存流水线
5.4 存储一致性
5.4.1 存储一致性定义及意义
5.4.2 存储一致性模型
5.4.3 顺序同步指令及原子指令
5.5 本章小结
第6章 运算部件
6.1 定点运算部件设计
6.1.1 定点运算部件的结构
6.1.2 超前进位加法器
6.1.3 布什-华莱士树乘法器
6.1.4 乘累加部件
6.1.5 移位器
6.1.6 基4 SRT除法器
6.2 浮点运算部件设计
6.2.1 浮点数据格式
6.2.2 浮点控制和状态寄存器
6.2.3 浮点运算部件的结构
6.2.4 浮点乘加器
6.2.5 浮点除法和开平方根部件
6.3 本章小结
第7章 异常和中断机制
7.1 异常和中断介绍
7.2 中断处理机制
7.2.1 中断类型
7.2.2 处理器中断控制器
7.2.3 中断处理机制的流程
7.3 本章小结
第8章 调试单元设计
8.1 JTAG简介
8.1.1 JTAG背景
8.1.2 JTAG接口
8.1.3 TAP控制器
8.2 调试单元的结构
8.2.1 调试单元总览
8.2.2 调试传输模块
8.2.3 调试模块
8.2.4 核内调试支持
8.3 调试处理机制
8.3.1 调试流程
8.3.2 复位控制与运行控制
8.3.3 抽象命令
8.4 调试功能实现示例
8.4.1 单步调试
8.4.2 访问连续存储区域
8.5 本章小结
第9章 软件开发环境
9.1 编译器
9.1.1 LLVM的工作流程
9.1.2 LLVM后端的处理流程
9.1.3 有向无环图
9.1.4 指令合法化
9.1.5 调用下降
9.2 汇编器和反汇编器
9.2.1 工作过程
9.2.2 使用方法
9.3 链接器
9.3.1 链接器的选择
9.3.2 链接器松弛
9.3.3 栈的增长方向
9.4 模拟器
9.4.1 模拟器软件架构
9.4.2 模拟器定制开发
9.5 调试器
9.5.1 调试器方案概述
9.5.2 GDB介绍
9.5.3 OpenOCD介绍
9.6 集成开发环境
9.6.1 软件框架与插件开发
9.6.2 工程创建与管理
9.6.3 工具链集成与配置
9.6.4 调试方案
9.7 本章小结
第10章 基于SpringCore的DSP芯片
10.1 FDM320RV335
10.2 功能结构
10.3 引脚说明
10.4 地址映射
10.5 低功耗模式
10.6 原型板卡
10.7 芯片性能
10.8 本章小结
参考文献
展开