《步步惊“芯”——软核处理器内部设计分析》.pdf

《步步惊“芯”——软核处理器内部设计分析》.pdf

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 1 章 OpenRISC 介绍 1.1 开源软核处理器 随着FPGA 技术的发展,以及EDA 软件工具的进步,如今的FPGA 应用范围越来越广, 甚至出现了SOPC (System-On-a-Programmable-Chip,可编程片上系统)的概念,用可编程逻 辑技术把整个系统放到一块可编程逻辑芯片上,其中可以包含处理器、DSP 、RAM 、ROM 、 总线控制器、UART 控制器、以太网控制器、USB 控制器、JTAG 接口和FPGA 编程接口等各 种功能模块,且每个功能模块都可以设计成为IP (Intellectual Property )核。IP 核指的是完成 某种功能的设计模块。借助于IP 核及一些标准的总线接口,硬件设计开发者可以像搭积木那 样搭建硬件平台。 IP 核有 3 种:软核、固核和硬核。软核指的是在寄存器级或者门级对电路功能用 HDL (Hardware Description Language )进行描述,表现为VHDL 或Verilog HDL 代码。软核与生产工 艺无关,不涉及物理实现,为后续设计留有很大的空间,增大了IP 的灵活性和适应性。用户可 以对软核的功能加以裁剪以符合特定的应用,也可以对软核的参数进行设置,包括总线宽度、 存储器容量、使能或禁止某些功能块等。固核是完成了综合的功能块,通常以网表的形式提交 给用户使用。硬核指的是以版图的形式实现的设计模块,它基于一定的设计工艺,不同的用户 可以根据自己的需要选用特定生产工艺下的硬核。软核使用灵活,但其可预测性差,延时不一 定能达到要求;硬核可靠性高,能确保性能,如速度、功耗等,可以很快投入使用。 本书关注的并不是如何使用各种IP 核搭建SOPC 系统,而是由于采用了可编程逻辑器件 设计各种硬件模块,由于使用了硬件编程语言,使任何一个人都可以通过阅读源代码掌握各 种功能模块的内部结构,比如可以掌握处理器内部的结构、原理,同样的,不需要高昂的代 价、漫长的周期就可以在 FPGA 上设计自己的处理器,就像开源的操作系统将操作系统拉下 神坛,开源处理器也揭开了处理器的神秘面纱,使得人人皆可谈论,正所谓:“旧时王谢堂前 燕,飞入寻常百姓家。” 使用HDL 描述的处理器称之为软核处理器。各大FPGA 厂商都有自己的软核处理器IP , Altera 公司的NiosII ,XILINX 公司的MicroBlaze ,但是这些IP 核都不开放源代码。在此之外 还有许多开源的软核处理器。本节列举部分开源软核处理器,内容如下。 1 .OR1200 OR1200 来自于OpenRISC 项目,OpenRISC 项目的目标是建立一个免费、开源的计算平 台。这个计算平台提供一个带DSP 功能的 RISC 处理器架构,提供一些基于该架构的 RISC 处理器,以及免费、开源的开发工具、库、操作系统和应用程序。OpenRISC 包括OpenRISC 1000 和OpenRISC 2000 两个子项目。OR1200 是OpenRISC 1000 项目的一个主要实现,最初发布 于2001 年,一直在持续改进,目前的稳定版本是Rel3 ,采用Verilog HDL 编写源代码。OR1200 是一个32 位的RISC 处理器,采用Harvard 结构(即分开的指令与数据缓存)、五级整数流水 第1 章 OpenRISC 介绍 │ 1 线(本书分析认为只有三级整数流水线),并且支持MMU ,具备基本DSP 功能。 2 .LEON 系列 LEON 系列至今已发布到了LEON4,这是一种SPARC V8 架构的处理器。最初的LEON1 与LEON2 由欧洲航天局发布,LEON3 由Gaisler Research 公司设计发布。2008 年Aeroflex 收 购了Gaisler Research 公司,并于2010 年1 月发布了LEON4,不过LEON4 至今还没有公布源 代码。LEON 系列使用VHDL 编写代码,其LEON2、LEON3 系列都提供了一个容错版(Fault Tolerance ),分别是LEON2-FT、LEON3-FT ,这主要是因为LEON 系列原计划是使用在

文档评论(0)

wx171113 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档