首页> 中文学位 >基于MIPS32架构的微处理器流水线设计
【6h】

基于MIPS32架构的微处理器流水线设计

代理获取

目录

声明

摘要

插图索引

表格索引

符号对照表

缩略语对照表

第一章 绪论

1.1 选题背景

1.2 国内外发展现状

1.3 论文主要工作

1.4 论文的组织结构

第二章 MIPS相关理论与技术

2.1 哈佛结构和冯·诺依曼结构

2.2 MIPS32的指令集架构

2.2.1 MIPS结构中的流水线设计

2.2.2 寄存器

2.2.3 指令格式与寻址方式

2.2.4 存储器中数据的存放形式

2.2.5 MIPs32指令分类

2.3 协处理器(CP0)

2.4 MIPS架构中的Cache设计

2.5 本章小结

第三章 流水线的功能需求与问题分析

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.5 MIPS32处理器中的异常分析

3.5.1 精确异常

3.5.2 异常处理过程

3.6 本章总结

第四章 流水线模块化设计与实现

4.1 取指阶段的实现

4.1.1 PC模块的设计

4.1.2 IF/ID寄存器的设计思路

4.2 译码阶段的实现

4.2.1 ID模块的设计

4.2.2 转移指令在译码阶段的实现过程

4.2.3 Regfile模块设计

4.3 执行阶段的实现

4.3.1 DIV模块的设计

4.3.2 EX模块设计

4.3.3 EX/MEM寄存器的设计

4.4 访存阶段的实现

4.4.1 存储器访问指令的访存过程

4.4.2 异常相关指令的访存过程

4.4.3 数据存储器RAM的设计

4.5 回写阶段的实现

4.6 本章小结

第五章 微处理器流水线模块的功能仿真

5.1 仿真环境介绍

5.2 取指阶段的仿真结果与分析

5.2.1 PC模块的仿真

5.2.2 指令在流水线中的传递

5.3 译码阶段的仿真结果与分析

5.3.1 ID模块的仿真

5.3.2 寄存器模块的数据读写与流水线中的数据相关仿真

5.4 执行阶段的仿真结果与分析

5.4.1 EX模块的仿真

5.4.2 DIV模块的仿真

5.5 访存阶段的仿真结果与分析

5.5.2 存储器访问指令译码过程的仿真

5.5.3 异常相关的仿真结果

5.6 回写阶段的仿真结果与分析

5.6.1 CP0模块的数据仿真

5.6.2 LLbit模块的数据仿真

5.7 本章小结

第六章 总结与展望

6.1 总结

6.2 展望

参考文献

致谢

作者简介

展开▼

摘要

随着物联网技术的快速发展,应用嵌入式微处理器系统开发的各种电子设备,越来越受到人们的欢迎,以其携带方便和能耗低、可靠性高等优点,占领了越来越多的微处理器市场。而作为影响处理器性能的关键因素,流水线的设计及优化至关重要。
  作为对微处理器发展产生巨大影响的精简指令系统(RISC),自80年代被提出以来,以其简单的指令格和寻址方式等优点,已经被已经广泛的应用到了处理器体系架构的设计当中。也正是由于这些优点,使得指令的流水化处理更加方便。MIPS公司开发出的MIPS32架构,就是一个具有RISC所有优点的经典流水线处理器架构。
  本文是在对MIPS32架构研究的基础上,实现了对微处理器五级流水线结构的设计,目标是让大部分的指令都可以在一个时钟周期内执行完成,只有除法指令与乘累加、乘累减指令执行需要多个时钟周期,这样就可以使使流水线的处理效率最大化。文中会详细的介绍MIPS架构的指令集、寄存器堆、Cache设计和对异常的处理等内容。在对微处理器设计中流水线各阶段的功能需求与指令执行时存在的数据相关、结构相关、控制相关等问题进行分析和研究的基础之上,对流水线的五个阶段进行了详细的模块划分,最后使用硬件描述语言Verilog编写代码来实现每个模块所应有的具体功能。
  在本设计中要实现的五级流水线包含了取指、译码、执行、访存和回写五个阶段。取指阶段要完成的工作就是从指令存储器读出PC寄存器指定的当前地址中的指令信息,并根据控制信号对下一次要访问的指令地址信息进行预判,IF/ID寄存器模块是存放指令信息的流水线寄存器。译码阶段要对取出的指令信息进行译码分析,从寄存器堆中取出源操作数并给出转移类指令的跳转地址,因此译码阶段设计了用于指令译码和转移判断的ID模块以及用于存放数据的Regfile模块ID/EX寄存器模块,ID/EX寄存器用于存放译码阶段得到的各类信息。执行阶段会对译码得到的各类数据进行相关运算,此阶段设计有EX模块、DIV模块和EX/MEM寄存器模块,需要执行的大部分运算都会在EX模块中的ALU运算单元内完成,DIV模块专门用来进行除法运算,执行完成后的各类数据会存放在流水线寄存器EX/MEM中。访存阶段会对存储器访问指令和异常情况进行处理,这些指令的执行会发生在MEM模块中,RAM模块用于存放所需的数据,访存阶段完成后结果会存放在MEM/WB寄存器中。回写阶段设计有四个模块,其中协处理器CPO模块用来对异常情况进行控制,LLbit寄存器模块是执行Ⅱ和sc指令时需要用到的的一个特殊的寄存器模块,HILO寄存器模块是用于存放乘除法指令结果的模块,CTRL模块产生控制信号可以对流水线实现暂停和清除等功能。
  最后再使用Mentor公司的仿真软件Modelsim对各模块进行功能仿真,将仿真的结果与预期结果进行对比,得出正确的结果则说明了设计的正确性。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号