


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于自顶向下方法的CPU的VerilogHDL描述自顶向下方法pdf(1.内蒙古科技信息研究所;2.内蒙古大学 计算机学院,内蒙古 呼和浩特 010000)摘 要:文章阐述了八位简单功能CPU的设计过程,其中 包括指令集的设计、功能模块的设计,并且给出了每条指令的执行过程。最后用VerilogHDL 硬件描述语言对该CPU进行了描述用MaxPlus工具进行了代码设计。【关键词】:p :八位CPU设计;VerilogHDL描述;指令集;功能部件 中图分类号:TP334.7 文献标识码:A 文章编 号:10076921(2022)16020101简单的CPU作为数字系统,其设计一般有三种设计方法:
2、自底向上(Bottom Up)、自顶向下 (Top Down)和并行设计方法。自底向上设计的主要思想是将复杂的系统逐层进行功能 块划分和描述功能块的拓扑连接,直到用底层模块或部件来描述。自顶向下则是从系统 的需求出发,逐步将设计内容细化。并行设计运用自底向上和自顶向下设计方法,它要 求设计者开始就考虑产品在整个生命周期的所有因素,包括质量、成本、进度计划和用户需 求等。自底向上和并行设计方法有许多的弊端,而自顶向下的方法便于系统级划分和项目的 管理,减少了不少不必要的麻烦,提高了设计的成功率。自顶向下的设计方法具体实施时, 首先从系统设计入手,进行功能划分和需求分析p (指令集的设计),给出功
3、能部件的划分。 1 指令集设计指令集是计算机硬件和软件的接口,它直接影响着CPU的结构。一个完整的计算机指令应该 能够有效地执行算术操作、逻辑操作、数据存取操作以及程序控制分支操作等。指令应该包 含三个部分:操作码、目的操作数地址和操作数地址。八位CPU指令集按功能分为算术运算指令、逻辑指令、数据传送指令、比较指令、访存指令 、跳转指令、I/O指令和测试指令。2 八位CPU架构设计八位CPU采用集中式的控制单元,取来的指令经过译码产生控制信号给其他模块使指令运行 。文章主要介绍八位CPU的功能模块划分和指令运行的过程。2.1 功能模块的划分八位CPU由控制器、运算器(算术逻辑单元)、指令寄存器
4、、程序计数器、地址寄存器、数 据寄存器、启停模块和四个通用寄存器组成。2.2 指令的执行过程八位CPU共有17条指令。一条指令执行时:CPU根据指令地址从存储器中读出指令来 ,传送到指令寄存器,指令寄存器再传给控制器。控制器根据操作码进行译码,产生相 应的控制信号。执行指令。本文中的八位CPU最多需要六个周期T1T6执行完一条指令。 3 八位CPU的VerilogHDL描述八位CPU由控制器、运算器(算术逻辑单元)、指令寄存器、程序计数器、地址寄存器、数 据寄存器、启停模块和四个通用寄存器组成。3.1 运算器运算器有四个控制信号,分别是ENALU、LEFT、LOADA和LOADB。需要输入操作
5、码opcode3 0决定具体操作。算术左移和算术右移指令的前四位机器码是一样的,不能用opcode3 0来决定进行什么操作,所以在控制器对指令译码的时候如果是左移操作要产生LEFT信号 给运算器。LOADA和LOADB是装操作数的信号。3.2 控制器控制器从指令寄存器读指令进行译码并产生相应的控制信号。SZ是来自运算器的状态位Z,C 是状态位C。CLK来自输入,ENACK来自启停模块。Reset输出复位信号给其他部件。JWR是给 通用寄存器的寄存器写信号。IO决定是否选外设端口。MEM信号用于选择存储器,WR是写操 作信号。RD是读操作信号。LOADA和LOADB送给运算器,作为装入操作数的信
6、号。ENIR使能指 令寄存器,ENALU是运算器使能,LEFT作为左移操作控制信号发给运算器,INC作为程序计 数器自动加一控制信号。如果需要跳转的话发PCALU给程序计数器,这样把运算器把PC+offs et的结果作为程序计数器的值来输入。FETCH是地址存储器。ENP接地址寄存器,地址寄存 器输入来自寄存器的数据时用ENP信号。DREN使能数据寄存器。DRIN接数据寄存器的同名引 脚,从存储器那里读数据时用这信号。ENA1和ENA2作为通用寄存器的多路选择的使能信号, 用来选择操作数和目的操作数。RS1:0寄存器地址码。送给通用寄存器的多路器1。 RED1:0目的寄存器地址码。送给通用寄存
7、器的多路器2。设计控制器的时采用了有限状态机的方法。总结上文描述的指令执行过程及本节的功 能模块的设计可以推出每一条指令在每一个状态产生的控制信号了。4 结语本文主要探讨了用VerilogHDL语言设计一个八位 CPU的过程,介绍了指令集的设计、功能部 件的划分、VerilogHDL语言描述和功能仿真。在设计过程中使用了Altera公司的MuxplusII开发环境。本文以17条指令的设计为例,介绍了如何用VerilogHDL描述一个八位CPU。指令集中有算术 逻辑指令、数据移位指令和程序控制指令。文中对八位CPU的各个模块进行VerilogHDL语言 描述并生成元件图形符号。再把各个模块的元件图形符号的相应信号连起来生成了CPU。其 中数据寄存器有一个双向通道。【参考文献】:p 1 侯伯享现代数字系统设计M西安:西安电子科技大学出版社,20_.2 王保恒计算机原理与设计M北京:高等教育出版社,20_.3 汪国强EDA技术与应用M北京:电子工业出版社,20_.4 袁俊泉VerilogHDL数字系统设计及其应用M西安:西安电子科技大学 出版社,20_.5 Kelly Davidson16-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 离婚后子女抚养费增加合同范本
- 胸心外科相关护理
- 科技成果转化合同参考范本
- 住宅建筑装饰工程施工合同
- 厂房使用权合同转让模板
- 生物技术委托研发合同正规范本
- 铸件采购及技术服务合同(度)
- 建筑设计合同补充条款范本
- 度药品购销合同细则
- 建筑行业租赁合同模板大全
- 2024年同等学力申硕英语考试真题
- 江苏省南京市六校2024-2025学年高一上学期期中联合调研 化学试题
- 儿科基础临床知识题库单选题100道及答案解析
- 消除“艾梅乙”医疗歧视-从我做起
- 临床医学检验试题及答案
- 2024塔式太阳能热发电站熔融盐储热系统安装规范
- 《阿凡达》电影赏析
- 2023年江苏省中考语文现代文阅读之记叙文阅读9篇
- 水利水电枢纽工程毕业设计
- 中医内科学全套课件
- 2024-2030年中国机械锻压机行业发展形势与应用前景预测报告
评论
0/150
提交评论