第1章 概述
1.1 SOPC及其技术
1.1.1 基于FPGA嵌入IP硬核的SOPC系统
1.1.2 基于FPGA嵌入IP软核的SOPC系统
1.1.3 基于HardCopy技术的SOPC系统
1.2 Nios II软核处理器
1.2.1 Nios II软核处理器简介
1.2.2 可配置嵌入式软核处理器的优势
1.3 Altera支持SOPC的FPGA简介
1.3.1 Cyclone系列
1.3.2 Cyclone II系列
1.3.3 Stratix系列
1.3.4 Stratix II系列
第2章 SOPC开发流程及开发平台简介
2.1 SOPC开发流程
2.1.1 硬件开发
2.1.2 软件开发
2.1.3 SOPC基本开发流程简介
2.2 简单SOPC实例开发任务及步骤
2.3 分析系统需求
2.4 使用Quartus II建立工程
2.4.1 打开Quartus II软件并建立工程
2.4.2 建立顶层模块
2.5 使用SOPC Builder创建Nios II系统
2.5.1 SOPC Builder简介
2.5.2 启动SOPC Builder
2.5.3 指定目标FPGA和时钟设置
2.5.4 添加Nios II处理器内核
2.5.5 添加片内存储器
2.5.6 添加PIO
2.5.7 添加系统ID外设
2.5.8 指定基地址和中断请求优先级
2.5.9 设置Nios II复位和异常地址
2.5.10 生成Nios II系统
2.6 集成Nios II系统到Quartus II工程
2.6.1 添加Nios II系统模块到Quartus II顶层模块
2.6.2 添加引脚和其他基本单元
2.6.3 选择器件型号
2.6.4 分配FPGA引脚
2.6.5 器件和引脚的其他设置
2.7 设置编译选项并编译硬件系统
2.7.1 设置编译选项
2.7.2 编译硬件系统
2.7.3 查看编译报告
2.8 下载硬件设计到目标FPGA
2.9 使用Nios II IDE建立用户程序
2.9.1 创建一个新的C/C++应用工程
2.9.2 设置C/C++应用工程系统属性
2.9.3 编译连接工程
2.10 调试/运行程序
2.10.1 在目标硬件上运行程序
2.10.2 在目标板上调试程序
第3章 Nios II 体系结构
3.1 Nios II处理器结构
3.2 Nios II的寄存器文件
3.2.1 Nios II的通用寄存器
3.2.2 Nios II的控制寄存器
3.3 算术逻辑单元(ALU)
3.3.1 未实现的指令
3.3.2 用户指令
3.3.3 浮点指令
3.4 复位信号
3.5 Nios II处理器运行模式
3.6 异常和中断控制器
3.6.1 异常控制器
3.6.2 中断控制器
3.7 Nios II的异常处理
3.7.1 异常类型
3.7.2 异常硬件处理流程
3.7.3 异常判别及优先级
3.7.4 异常的嵌套
3.7.5 异常返回
3.7.6 异常响应时间
3.8 存储器及I/O结构
3.8.1 指令与数据总线
3.8.2 高速缓存
3.8.3 紧耦合存储器
3.8.4 地址映射
3.9 存储器和外设访问
3.9.1 寻址方式
3.9.2 高速缓存访问
3.10 Nios II处理器性能
第4章 Nios II外围设备
第5章 FPGA配置和Flash编程
第6章 Nios II应用程序及其外设HAL驱动开发
第7章 Avalon接口规范
第8章 Nios II系统深入设计
第9章 Nios II汇编程序设计及混合语言程序开发
附录1 SmartSOPC多功能教学实验开发平台
附录2 LA系列高性能逻辑分析仪
参考文献