论文部分内容阅读
嵌入式微处理器大量应用于各种消费类电子产品中,如手机、数码相机以及汽车信息系统等。随着嵌入式应用对计算能力要求的不断提高,32位嵌入式处理器应用日益广泛,其中ARM处理器的应用范围非常广阔。 处理器设计是一项高度复杂和高科技含量的核心技术,长期以来只为少数几个国家的几个公司和实验室所掌握。在这种背景下,探索处理器设计和实现的合理方案,加快我国处理器研究的前进步伐,就显得意义重大。 在研究流水线理论的基础上,并参考其它处理器的流水线结构,本文设计采用了5级流水线结构,分别是取指、译码、执行、访存和写回。在深入研究ARM处理器的体系结构、编程模式和指令系统之后,设计了一个处理器流水线系统。采用VerilogHDL描述完成了取指、译码、ALU单元、移位器等功能模块设计,流水线系统与ARM指令系统和编程模式基本兼容。借鉴Michael Gschwind等人把控制器功能划分的思想,本文把控制器的功能分散到各个流水段中。由于简化了流水线各段之间的控制关系,因此不会造成流水线效率的下降。 流水线相关是造成流水线效率下降的根本原因,本文设计通过采用指令存储器和数据存储器分离的哈佛结构,避免了取指和访存的结构相关;采用分支预测方案,减少了流水线的控制相关;采用数据旁路、提前形成标志位、延迟使用操作数方案,减少了流水线的数据相关,较好地解决了流水线相关问题。 在完成处理器流水线系统设计之后,针对分支预测、数据旁路等设计方案,编写了测试指令并验证其正确性和有效性。在QuartusⅡ6.0开发环境下进行了时序仿真,给出相应的仿真波形图及相应说明。最后下载到Altera DE2开发板,验证设计的正确性。