[内容提要]
左冬红编著的《计算机组成原理与接口技术—— 基于MIPS架构实验教程》是与《计算机原理与接口技 术——基于MIPS微处理器》配合使用的实验指导书, 书中以实验为主线,在简要阐述基本原理的基础上, 详细地描述了各个实验的具体过程。全书分为三部分 :MIPS汇编程序设计、基于FPGA的计算机原型系统设 计和基于FPGA的嵌入式计算机系统设计。本书介绍了 基于计算机平台的MIPS仿真器QTSpim,Xilinx ISE FPGA开发套件ISE、EDK、SDK等开发工具的使用,并 通过大量具体的实验案例,帮助读者在掌握基本原理 的基础上,动手实践计算机软硬件技术。此外,本书 还在各类实验案例的基础上,设置了不同难易程度的 实验任务,可以满足不同层次读者的学习需求。
[目录]
第一篇MIPS汇编程序设计
第1章MIPS汇编程序开发环境
1.1QtSpim简介
1.2菜单栏简介
1.2.1File菜单
1.2.2Simulator菜单
1.2.3其他菜单
第2章MIPS汇编程序
2.1MIPS汇编程序结构
2.2QtSpim系统功能调用
2.3QtSpim伪指令
2.4QtSpim常用宏汇编指令
第3章QtSpim汇编、调试程序示例
3.1QtSpim用户程序入口
3.2QtSpim汇编查错
3.3QtSpim查看程序内存映像
3.4QtSpim调试查错
第4章MIPS汇编程序示例
4.1常用C语句汇编指令实现示例
4.1.1if语句
4.1.2while语句
4.1.3for语句
4.1.4switch语句
4.2子程序设计示例
4.2.1子程序结构
4.2.2递归子程序设计
4.3编程练习
第二篇基于FPGA的计算机原型系统设计
第5章FPGA开发工具Xilinx ISE
5.1FPGA设计流程
5.2ISE功能与应用
5.2.1工程管理器
5.2.2HDL 编辑器
5.2.3IP 核生成工具
5.2.4测试激励生成器
5.2.5iSim仿真工具
5.3基于ISE开发FPGA的完整过程示例
5.3.1启动ISE
5.3.2新建工程
5.3.3代码输入
5.3.4仿真
5.3.5约束文件编写
5.3.6综合
5.3.7实现
5.3.8编程文件产生
5.3.9编程下载
第6章单周期类MIPS微处理器设计
6.1实验目的
6.2实验环境
6.3实验示例
6.4示例设计原理
6.5示例工程代码
6.5.1新建工程
6.5.2指令存储器ROM模块
6.5.3数据存储器RAM模块
6.5.4符号扩展模块
6.5.5寄存器组模块
6.5.6控制器模块
6.5.7ALU控制译码
6.5.8ALU模块
6.5.9顶层模块
6.6示例代码功能仿真
6.6.1寄存器组仿真
6.6.2控制器仿真
6.6.3顶层仿真
6.7实验任务
第7章存储器映射I/O接口设计
7.1实验目的
7.2实验环境
7.3实验示例
7.4示例设计原理
7.4.1存储器映像I/O寻址原理
7.4.2I/O接口原理
7.5示例工程代码
7.5.1增加I/O接口模块
7.5.2实例化I/O模块
7.5.3修改DRAM模块的连线
7.5.4修改IROM测试指令
7.5.5修改控制器模块和ALU模块
7.6功能仿真
7.6.1I/O模块仿真
7.6.2顶层仿真
7.7综合、实现、生成bit流文件并下载检验
7.7.1配置时序、引脚约束
7.7.2综合、实现、生成bit流文件
7.7.3安装开发板驱动
7.7.4开发板编程
7.8实验任务
第8章简单VGA接口设计
8.1实验目的
8.2实验环境
8.3实验示例
8.4示例设计原理
8.5示例工程代码
8.5.1增加25MHz时钟产生模块
8.5.2增加行列计数器模块
8.5.3增加同步信号及地址产生器模块
8.5.4增加显示存储器模块
8.5.5合成VGA控制器
8.5.6实例化VGA控制器
8.5.7实例化显示存储器
8.5.8实例化显示控制器时钟模块
8.5.9修改指令
8.6功能仿真
8.6.1VGA模块仿真
8.6.2整体功能仿真
8.7综合、实现、产生bit流文件以及下载测试
8.7.1修改引脚约束文件
8.7.2综合并产生bit流文件以及下载测试
8.8实验任务
第三篇基于FPGA的嵌入式计算机系统设计
第9章Xilinx嵌入式系统开发环境
9.1Xilinx嵌入式硬件开发环境XPS
9.1.1XPS 使用的特殊文件
9.1.2XPS 的图形界面
9.1.3XPS的菜单
9.1.4ChipScope片内调试工具
9.2Xilinx嵌入式软件开发环境
9.2.1SDK软件库
9.2.2SDK图形界面
9.2.3ELF文件结构
9.2.4lscript.ld文件结构
9.2.5SDK菜单
9.2.6编译和链接选项配置
9.2.7SDK软件调试图形界面
第10章基于MicroBlaze的Xilinx嵌入式系统平台
10.1MicroBlaze软核微处理器
10.1.1基本结构
10.1.2中断系统
10.1.3总线结构
10.2Standalone操作系统
10.2.1中断操作类函数
10.2.2异常操作类函数
10.2.3指令缓存操作类函数
10.2.4数据缓存操作类函数
第11章最小系统建立流程
11.1建立工程
11.2工程结构分析
11.3使用SDK设计程序
11.4使用SDK下载程序
11.5使用SDK调试程序
第12章C数据类型实验
12.1实验目的
12.2实验环境
12.3实验要求
12.4示例实验过程
12.4.1修改helloworld程序
12.4.2观察不同数据类型值
12.4.3观察foo结构体的内存映像
12.5实验任务
第13章基于IP核的并行I/O接口实验
13.1实验目的
13.2实验环境
13.3实验要求
13.4相关IP核
13.4.1AXI GPIO
13.4.2AXI INTC
13.4.3AXI Timer
13.5示例实验过程
13.5.1中断方式button按键以及switch输入
13.5.2中断方式走马灯实验
13.5.37段数码管实验
13.5.4矩阵键盘输入实验
13.6实验任务
第14章定制IP核I/O接口实验
14.1实验目的
14.2实验环境
14.3实验要求
14.4实验原理
14.5示例实验过程
14.5.1定制并添加AXI IP到系统
14.5.2连接AXI外设
14.5.3导入硬件设计到SDK工具
14.5.4添加定制IP核软件驱动
14.5.5使用SDK编写IP核的应用程序
14.6实验任务
第15章并行存储器接口设计
15.1实验目的
15.2实验环境
15.3实验要求
15.4实验基本原理
15.5示例实验过程
15.6实验任务
第16章DMA技术实验
16.1实验目的
16.2实验环境
16.3实验要求
16.4实验原理
16.4.1Xilinx XPS DMA控制器
16.4.2standalone提供的DMA API函数
16.4.3分级存储系统
16.5示例实验过程
16.5.1DMA实验
16.5.2Cache实验
16.6实验任务
第17章串行接口实验
17.1实验目的
17.2实验环境
17.2.1RS?232模块(DCE)
17.2.2D/A模块
17.2.3A/D模块
17.3实验基本原理
17.3.1uart?lite IP核
17.3.2SPI IP核
17.4示例实验过程
17.4.1RS?232接口通信
17.4.2SPI接口D/A转换
17.4.3SPI接口A/D转换
17.5实验任务
第18章人机接口实验
18.1实验目的
18.2实验环境
18.2.1VGA接口
18.2.2PS2模块
18.2.3图像数据转换工具
18.3实验基本原理
18.3.1TFT IP核
18.3.2PS2 IP核
18.3.3键盘工作原理
18.3.4鼠标工作原理
18.4示例实验过程
18.4.1VGA接口实验
18.4.2PS2键盘接口实验
18.4.3PS2鼠标接口实验
18.5实验任务
附录COE文件制作过程示例
参考文献