论文部分内容阅读
嵌入式微处理器作为嵌入式系统的核心,其重要性不言而喻。堆栈处理器是一种专门面向嵌入式控制领域的处理器,其所有执行过程均依赖于硬件支持的堆栈,而不是通用寄存器。因此,相比较于传统的RISC和CISC处理器,堆栈处理器具有以下三点优势:(1)避免了上下文切换带来的开销,这是因为处理器的运行不依赖于大量的通用寄存器;(2)寻址方式非常简单,这是因为几乎所有指令都是0操作数指令;(3)更加适合执行具有深度递归或者嵌套特征的程序,这是因为具有专门的硬件堆栈支持子程序调用与返回。目前国内鲜有相关研究报道,因此研究并实现出高性能的堆栈处理器具有重要的意义。本文围绕堆栈处理器做了两方面的工作:一是设计与实现,二是应用。在堆栈处理器的设计与实现方面,本文首先采用基于FPGA的方式设计与实现了一款16位单周期堆栈处理器。该处理器包含两个堆栈:执行数学表达式的数据堆栈和支持子程序调用的返回堆栈。它具有结构紧凑、系统复杂度低、主频性能高以及代码体积小等优点。其次,为了提高处理器性能,本文将流水线技术应用于单周期堆栈处理器,设计与实现了三级流水线的堆栈处理器,详细讨论了流水线技术带来的冒险问题,并给出了解决方法。在堆栈处理器的应用方面,本文以单周期堆栈处理器与流水线堆栈处理器为核心分别构建出了SOPC,为SOPC设计了总线控制器,中断控制器以及多种外设。论文详细介绍了SOPC的架构,描述了每一种外设的功能。堆栈处理器仅使用常规的访存指令就可以控制中断控制器与所有外设。本文的所有设计均采用Verilog硬件描述语言进行RTL级描述,采用ModelSim软件进行功能仿真,采用Synplify软件进行综合。仿真与综合的结果证明本文设计的堆栈处理器与SOPC功能正确。在以XC5VLX110T为目标芯片时,单周期堆栈处理器与流水线堆栈处理器的主频分别达到了146.7MHz与257.1MHz。结果优于国外同类设计,性能令人满意。