基于CPLDFPGACPU设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于CPLDFPGACPU设计

基于CPLDFPGACPU设计   摘要:在分析CPU选型基础上,确定设计基于CPLD/FPGA的8位字长、RISC、多周期、哈佛架构CPU。通过CPU体系结构设计、CPU指令系统的设计,描述了CPU设计相关问题。   关键词:CPLD/FPGA SOC 指令系统 体系结构   中图分类号:TN702 文献标识码:A 文章编号:1007-9416(2014)02-0162-02   1 引言   随着EDA技术的发展,用硬件描述语言设计以PLD/FPGA为载体进行各种数字电路设计成为一种不可阻挡的趋势,用硬件描述语言设计CPU也成为可能,伴随作为载体的PLD/FPGA技术飞速发展,PLD/FPGA器件内集成成千上万个门,在CPLD/FPGA上不仅可以容纳CPU,还可以CPU工作所需要的外围电路,发展成为SOC技术,设计实现CPU是这项技术的核心。   SOC技术有多种现成产品,CPLD/FPGA生产厂家多提供SOC解决方案。如Altera为业界提供多种软核处理器,从软核处理器NiosII到ARM和Freescale流行的体系结构[1]。另一CPLD/FPGA生产厂家Xilinx也提供了类似产品。这些SOC最大特点是,它们仅针对各自厂家自己的FPGA产品,没有通用性。而设计可在不同厂家CPLD或FPGA上运行、通用SOC具有现实意义,这就是设计基于CPLD/FPGA的CPU。   CPU设计涉及:CPU类型的选取、CPU体系结构设计、CPU指令系统的设计、CPU设计、CPU检验和CPU应用五个方面内容。   2 CPU设计选型   CPU类型选取涉及四个方面:选择CPU的字长、CPU的指令类型、CPU指令执行的周期类型、CPU架构。   CPU类型按字长分为8、16、32、64位等类型。CPU字长越长,处理数据的能力越强,但所需要的资源越多。   CPU类型按的指令集类型可分为CISC和RISC两类。在进行CPU设计时,CISC和RISC两者的主要区别为指令的长度和指令的多少。相对而言RISC类型CPU指令较少,每条指令的长度相同。选择不同指令类型,会直接影响CPU指令译码部分的设计难度。选择RISC类型CPU时,可以降低指令译码部分的设计难度。   CPU类型按指令执行的时间周期类型可分为单周期和多周期两类。要进行指令执行单周期CPU设计,涉及流水线、缓存等现代计算机设计相关概念,选择多周期CPU则相对简单。   CPU类型按CPU架构分为哈佛架构和普林斯顿架构两类,普林斯顿架构CPU将指令和数据放在同一存储器内,哈佛架构CPU的存储器分为指令存储器和数据存储器两部分。选择哈佛架构可以相对减少指令的条数。   在进行CPU类型的选取时,除考虑涉及四个方面外,CPU的用途也是一个重要的考虑因素,综合考虑,选择设计8位字长、RISC、多周期、哈佛架构CPU。   3 CPU体系结构设计   在确定设计8位字长、RISC、多周期、哈佛架构CPU后,首先要进行CPU体系结构的规划设计。概念上,传统计算机由控制器、运算器、存储器、输入设备、输出设备五部分组成,控制器和运算器被制作在一起,称为CPU。CPU体系结构设计主要是运算器部分的规划,CPU设计主要是控制器设计、运算器中ALU部分设计、运算器数据通道的设计。   运算器部分是各种指令的执行、完成场所。要完成各种操作,CPU必须包括通用寄存器、标志寄存器、指令指针、指令寄存器、堆栈栈顶指针、内总线、输入输出端口等部分组成。本CPU运算器各主要部分如表1。输入输出端口理论上可以看成特殊寄存器。   4 CPU指令系统的设计   在确定设计8位字长、RISC、多周期、哈佛架构CPU及其体系结构后,接着要进行CPU指令系统的设计。指令系统的设计包括三个方面:指令系统、寻址方式、机器指令设计。   4.1 指令系统与寻址   本CPU的寻址方式只有立即寻址、直接寻址和寄存器间接寻址三类。指令系统共36条指令,分为数据传输指令、算术指令、逻辑指令、转移指令、子程序指令五类。   (1)数据传输指令。数据传输指令共7条,实现立即数到通用寄存器、acc与通用寄存器间、直接地址与acc间、直接地址与acc间、通用寄存器指示的间接地址到acc、程序空间到ACC的数据传递。(2)算术指令。算术指令仅有加、减两种,共4条指令。每种运算由立即数与acc、通用寄存器与acc两条组成。传统的带进位运算没有提供,可以靠进位条件转移与立即数1与acc运算两条实现。(3)逻辑指令。逻辑指令包括逻辑运算、移位运算、比较测试运算组成,共有13条指令。逻辑运算有and、or、xor、not四种,共有7条指令。其中and、or、xor指令的操作数为acc和立即数、acc和通用寄存器,not指令的操作数只有acc。移位运算由

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档