1. 研究目的与意义
基于verilog hdl的8位risc-cpu设计是工程实践性课题,主要的目的是培养学生将所学习的电路知识、集成电路生将所学习的电路知识、集成电路设计和集成电路cad的技能运用到实际的芯片设计中,结合半导体加工厂的制造工艺,完成具有一定专用功能的专用芯片的设计。
在很久之前,科学家们就发现,计算机中80%的任务只占用了20%的指令,只有20%的指令会用到剩下的80%指令,如果对系统指令做相应的优化,就能提高处理器的执行效率,而risc-cpu相比较于普通的cisc-cpu来说,指令简单而且少,执行更高效,功耗也低。因此得到了广泛的使用,而后随着数字通信和工业控制领域的高速发展,要求专用集成电路(asic)的功能越来越强,功耗越来越低,生产周期越来越短,这些都对芯片设计提出了巨大的挑战,传统的芯片设计方法已经不能适应复杂的应用需求了。而soc(system on a chip)以其高集成度,低功耗等优点越来越受欢迎。开发人员不必从单个逻辑门开始去设计asic,而是应用己有ic芯片的功能模块,称为核(core),或知识产权(ip)宏单元进行快速设计,效率大为提高。cpu 的ip核是soc技术的核心,开发出具有自主知识产权的cpu ip核对我国在电子技术方面跟上世界先进的步伐,提高信息产业在世界上的核心竟争力有重大意义。
本课题的意义在于:
2. 课题关键问题和重难点
课题的关键问题在于如何设计一个risc-cpu的架构?一个基本的cpu包括三部分:数据存储,数据运算和控制部分。对应的硬件结构分为三个:存储器,数据通路,控制器。存储器存放指令和数据,数据通路对操作数进行运算,控制器内有指令寄存器,它能产生控制信号,能完成对存储器和数据通路部分控制。
针对以上的结构,需要考虑的是什么样的指令集?采用几条总线?用多少个寄存器?怎样进行分支预测,指令预存取和执行?此外,由于采用的软件并不熟悉,因此,需要在使用之前就要了解需要的软件的硬件的特性和作用。
指令集方面,优先考虑兼容mcs-51汇编指令集全部指令
3. 国内外研究现状(文献综述)
cpu是中央处理器的缩写,它是计算机中最重要的一个部分,从最初发展到现在已经有几十年的历史了,这期间,按照其处理信息的字长,cpu可以分为:四位微处理器、八位微处理器、十六位微处理器、三十二位微处理器以及六十四位微处理器等。risc处理器的出现标志着计算机体系结构的一次重要的变革。
risc cpu即精简指令集cpu,它的特点是:指令系统小,一个时钟周期内可以执行一条或者多条指令;采用标准长度指令;存储器访问只使用加载和存储两个指令等;采用硬布线逻辑控制为主。与一般的cpu不同之处在于:它的时序控制信号形成部件使用硬布线逻辑实现的而不是采用微程序控制的方式。所谓硬布线逻辑也就是用触发器和逻辑门直接连线所构成的状态机和组合逻辑,故产生控制序列的速度比用微程序控制方式快得多,因为这样做省去了读取微指令的时间。
传统的 cisc(complex instruction set computer,复杂指令集计算机)结构有其固有的缺点,即随着计算机技术的发展而不断引入新的复杂的指令集,为支持这些新增的指令,计算机的体系结构会越来越复杂,然而,在cisc指令集的各种指令中,其使用频率却相差悬殊,大约有20%的指令会被反复使用,占整个程序的80%。而余下的80%的指令却不经常使用,在程序设计中只占20%,显然,这种结构是不太合理的。从以上的信息可以看出,risc(精简指令集计算机)是和cisc(复杂指令集计算机)相对的一种cpu架构,它把较长的指令分拆成若干条长度相同的单一指令,可使cpu的工作变得单纯、速度更快,设计和开发也更简单。
4. 研究方案
由于硬件描述语言简单而且高效,所以借助于硬件描述语言设计risc-cpu,既能节约成本且完成效率较高。本次设计主要是对risc-cpu的架构进行了探讨,考虑如何设计risc-cpu,并且立足于八位的 risc-cpu设计实例,应用硬件描述语言verilog hdl语言实现8位简化risc-cpu ip软核的设计,通过对risc-cpu结构和指令执行的分析将整个系统划分为各个功能模块,并阐明各模块间的接口信号,给出了每个模块内部设计实现的详细叙述,最后介绍对设计的综合和验证工作,给出了仿真验证数据以及时序图。
本次设计的rsic-cpu 数据总线为8 位,而每条指令为两个字节(高3 位为操作码,低13 位是地址),所以每条指令需取两次。cpu 每次取到指令后,其状态控制器(cpu 控制中心)分析操作码后,产生一系列控制信号,启动或停止某些部件。其中时钟发生器利用外来时钟信号进行分频生成一系列时钟信号,送往其他部件用作时钟信号。
设计需要实现的这个简化的8位 risc-cpu采用mips的部分指令集,同时对mips cpu的结构进行一定的修改。要求简化的系统应包含以下几部分:(1)程序计数器;(2)存储器;(3)指令寄存器;(4)算术逻辑单元;(5)控制单元等。完成risc-cpu的控制器、运算器、存储器的设计,实现基本的加、减运算并给出仿真结果。完成risc-cpu的综合并给出复位/启动操作时序,并给出单片机复位、启动操作时序仿真结果。
5. 工作计划
第1周:熟悉课题,查阅文献资料查找资料,论证设计的可行性,研究设计方案和设计思路;
第2周: 写开题报告,完成外文翻译,进一步熟悉verilog hdl语言及编程方法
第3周: 方案设计,确定各部分功能
课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。