Openrisc的or1200
1 什么是OpenRISC
OpenRISC 是硬件开源社区opencores开发的RISC指令集处理器架构,包括32 bits 的Openrisc1000 和64 bitsOpenrisc 2000. 目前只实现了32bits or1200处理器。所以,在实际中Openrisc实际指的就是or1200.
2 什么是ORPSOC
有了or1200处理器,就可以用其搭建SOC芯片了,Opencores给出了基于or1200的SOC平台ORPSoC (OpenRISC Reference Platform System on Chip)。该SOC平台有两个可以的版本ORPSOCv2和ORPSOCv3两个版本。ORPSOCv2的目前社区不在更新了,所有的开发都转到ORPSOCv3上了。除了ORPSOC平台外还有一个基于or1200的SOC平台是MinSoC( the Minimal OpenRISC System on Chip)。
在ORPSOCv3 版本中,它将rtl 代码和自动化构建系统代码分开了。rtl 代码部分称为orrsoc-cores,自动化工具和脚本称为fusesoc。ORPSOC平台可以在FPGA上跑linux的操作系统。当安装完ORPSOCv3后可以fusesoc list-systems 查看支持的FPGA平台。
3 ORPSOC的开发环境
Opencores 提供一整套基于GUN的linux 开发环境,如果你不想安装开发工具,可以从opencores也提供基于Ubuntu的虚拟机开发环境。
4学习的参考资料
国内现有的参考资料有Rill_zhen的CSDN博客和他的书《深入理解OpenRISC体系结构》 。这本书着重分析了or1200 处理器是如何实现的,主要包括数据通路和控制通路。雷思磊的《步步惊芯软核处理器内部设计分析》 ,该书通过一条指令如何度过它的一生角度讲述0r1200的运行原理。并通过搭建一个最简的or1200的运行系统,详细阐述CPU的执行过程。早一点的书籍有潘峰等人所著《开源软核处理器OpenRisc的SOPC设计》 ,该书讲述整个ORPSOC的基本架构,细节方面不详细。倪继利所著的《CPU源代码分析与芯片设计及Linux移植》。陈曦编著的《片上系统设计思想与源代码分析》这两本书写作风格很像,都是在将ORPSOC,前者侧重于整个系统的移植和软件开发,后者侧重分析具体的每个SOC IP core. 除了书一些个人博客写得很不错。
5 OR1200的性能
or1200在使用0.18um及6层金属工艺时,主频可以运行在300MHz,可以提供300Dhrystone、2.1MIPS和300次的 32x32 DSP乘加操作。
参考文献:
[1] OpenRisc-1-startup. rill. http://blog.csdn.net/rill_zhen/article/details/8190322. 2015,12,30.
[2] ORPSOC. http://opencores.org/or1k/ORPSoC. 2015,12,20.
[3] ORPSoCv3InitialDiscussion. http://opencores.org/or1k/ORPSoCv3InitialDiscussion.
[4] OR1200 OpenRISC Processor. http://opencores.org/or1k/OR1200_OpenRISC_Processor
[5] http://opencores.org/or1k/OR1K:Community_Portal
[6] minisoc. http://www.minsoc.com/
http://opencores.org/project,minsoc
[7] OR1k主页. http://opencores.org/or1k/Main_Page
Openrisc的or1200的更多相关文章
- or1200下raw-os(仿真环境篇)
貌似最近都在公司混日子过了,怎么办?哎哎哎~罪过啊罪过,不过也是的,加工资居然没我份,顶领导个肺的,叫我怎么继续活啊~哎哎哎~ 算了,不谈这些鸟事情了,说多了都是泪啊,这篇blog开始我们进入raw- ...
- or1200中IMMU分析(续)
下面内容摘自<步步惊芯--软核处理器内部设计分析>一书 2 IMMU中的特殊寄存器 OR1200处理器中的IMMU包括第2组特殊寄存器,如表10.1所看到的. ITLBW0MRx是指令TL ...
- or1200下raw-os学习(任务篇)
这次就来说说基于上一节介绍的系统框图去建立我们所需要的任务,顺便学习Raw-OS提供的API,根据上节的分析,对于Slave Board有如下设计: Slave Board有三个任务,分别负责测试阻抗 ...
- OpenRisc-52-run openrisc&orpmon on ml501 board
引言 之前关于openrisc的内容,几乎都是基于opencores官方的ordb2a那个开发板的,但是,实际情况是有那个板子的人不是很多,所以目前我在做一个与之类似的板子,并且很快就会跟大家见面,这 ...
- OpenRisc-39-ORPSoC,or1200的memory hierarchy整体分析
引言 前面我们简单分析了ORPSoC的整体结构,or1200_top的整体结构,or1200_cpu的整体结构. 并对ORPSoC的启动过程,ORPSoC的debug子系统,clock子系统进行了介绍 ...
- or1200下Raw-OS学习(例子篇)
没有图我说个~毛(J)线(B)~对吧??? 直接上一个以前做过的项目来说说怎么去从一个前后台的程序过度到利用操作系统去管理的你代码吧~以前想过直接用事件驱动的框架去编写代码的,无奈这方面的资料实在太少 ...
- Cache基础知识OR1200在ICache一个简短的引论
以下摘录<步骤吓得核心--软-core处理器的室内设计与分析>一本书 12.1 Cache基本知识 12.1.1 Cache的作用 处理器的设计者通常会声称其设计的处理器一秒钟能做多少次乘 ...
- OR1200数据Cache运用情景分析
以下摘录<步骤吓得核心--软-core处理器的室内设计与分析>一本书 13.7DCache使用情景之中的一个--存储指令运行阶段DCache失靶 存储指令运行阶段DCache失靶这样的情景 ...
- or1200乘法除法指令解释
以下摘录<步骤吓得核心--软-core处理器的室内设计与分析>一本书 OR1200中乘法除法类指令共同拥有9条,表8.3给出了全部的乘法除法类指令的作用及说明. 说明:表8.3是ORBIS ...
随机推荐
- 织梦dedecms标签调用集合,绝对是仿站必备利器
今天分享下整理了织梦dedecms标签调用集合,绝对是仿站必备利器啊,觉得有用就转走吧!温馨小提示:CTRL+F 搜索你需要的标签名,就可以方便找到:织梦dedecms标签调用集合-首页标签:网站导航 ...
- Adobe 官方公布的 RTMP 规范
原文: http://blog.csdn.net/defonds/article/details/17534903 RTMP 规范中文版 PDF 下载地址 译序:本文是为截至发稿时止最新 Adobe ...
- iOS NSString拼接字符串
NSString* str_C; // 结果字符串NSString* str_A, str_B; //已存在的字符串,需要将str_A和str_B连接起来 //方法1 str_C = [NSStrin ...
- html5--6-52 动画效果-过渡
html5--6-52 动画效果-过渡 实例 @charset="UTF-8"; div{ width: 300px; height: 150px; margin: 30px; f ...
- 如何下载WDK
随着Windows Vista和Windows Server 2008的相继发布,微软的驱动开发工具也进行了相应的更新换代.原来的驱动开发工具包叫做DDK(Driver Develpment Kit) ...
- bzoj 2238 Mst —— 树剖+mn标记永久化
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2238 看了半天... 首先,想要知道每条边删除之后的替代中最小的那个: 反过来看,每条不在 ...
- NYOJ3——多边形重心问题
多边形重心问题 时间限制:3000 ms | 内存限制:65535 KB 难度:5 描述:在某个多边形上,取n个点,这n个点顺序给出,按照给出顺序将相邻的点用直线连接, (第一个和最后一个连接) ...
- /proc/interrupts 和 /proc/stat 查看中断的情况 (转载)
转自:http://blog.csdn.net/richardysteven/article/details/6064717 在/proc文件系统下,又两个文件提供了中断的信息. /proc/inte ...
- django url 规则正确,却一直匹配错误,django url匹配错误的可能原因
首先看一下我想要匹配的规则如下 这个url之前设计的是 joke/index/ 后来需要加page参数就把'/'去掉了 然后再用 joke/index去访问页面时总显示 当我把鼠标放到对应连接时,显示 ...
- POJ3258【二分】
题意: 问一个河岸,两岸之间有笔直的n块石头,然后拔起(也可以施展魔法)m个石块,假设两岸也是石块,求处理过的石块的最小距离的最大. 思路: 他让我们求移开m个石块,无非是在n+2-m(已经把两岸看成 ...