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 Platf…
貌似最近都在公司混日子过了,怎么办?哎哎哎~罪过啊罪过,不过也是的,加工资居然没我份,顶领导个肺的,叫我怎么继续活啊~哎哎哎~ 算了,不谈这些鸟事情了,说多了都是泪啊,这篇blog开始我们进入raw-os的api学习,为期大概是2个月吧,因为我从来没有接触过操作系统,好多东西都要补,本科学的是通信专业,妹的天天搞电路,不是放大器就是滤波器,不是锁相环就是AGC,天天搞天天搞,搞到现在出来工作了分配到个做软件的岗位,天朝就是这个坑爹来的么,从来都不懂什么叫资源合理分配,不过也没办法了,有时也找找自…
下面内容摘自<步步惊芯--软核处理器内部设计分析>一书 2 IMMU中的特殊寄存器 OR1200处理器中的IMMU包括第2组特殊寄存器,如表10.1所看到的. ITLBW0MRx是指令TLB匹配寄存器,其格式如表10.2所看到的. 表10.2是OpenRISC 1000规范中的定义,实际在OR1200处理器中仅仅实现了当中一部分字段,包含VPN(Virtual Page Number)的一部分.V(Valid标志位).ITLBW0MRx相应图10.7中MR_RAM的表项,每个表项相应一个ITL…
这次就来说说基于上一节介绍的系统框图去建立我们所需要的任务,顺便学习Raw-OS提供的API,根据上节的分析,对于Slave Board有如下设计: Slave Board有三个任务,分别负责测试阻抗,电压,电流功能,至于底层实现先不管,先把任务框架设计出来~ 对于任务相关的操作,Raw-OS提供一组API操作,用到什么解释什么,说多了都是泪~ 首先建立任务用到的API是raw_task_create,详细的解释见下文~ /* **********************************…
引言 之前关于openrisc的内容,几乎都是基于opencores官方的ordb2a那个开发板的,但是,实际情况是有那个板子的人不是很多,所以目前我在做一个与之类似的板子,并且很快就会跟大家见面,这是后话. 在新做的板子出来之前,本小节我们先在xilinx ml501板子上跑一下openrisc和orpmon. 1,实验准备 1>熟悉开发板 ML501是xilinx比较老的一款FPGA开发板,在最开始,如果对这个板子不是很熟悉的话,可以先参考一下相关文档,链接如下: 1,Getting Sta…
引言 前面我们简单分析了ORPSoC的整体结构,or1200_top的整体结构,or1200_cpu的整体结构. 并对ORPSoC的启动过程,ORPSoC的debug子系统,clock子系统进行了介绍. 本小节,我们一起来分析一下ORPSoC的存储器组织(memory hierarchy). 1,背景知识 在分析ORPSoC的memory hierarchy之前,我们有必要先了解一下关于cache的background. 关于cache,大概可以从三个方面进行阐述:内存到cache的映射方式,c…
没有图我说个~毛(J)线(B)~对吧??? 直接上一个以前做过的项目来说说怎么去从一个前后台的程序过度到利用操作系统去管理的你代码吧~以前想过直接用事件驱动的框架去编写代码的,无奈这方面的资料实在太少~而且我的水平也不足以胜任,既然现在在全力支持Raw-OS,那么就用RTOS的框架去描述这个工程lor,好了,直接上图了,没有图我说个~毛(J)线(B),一个ICT的例子,先给框图再说功能吧,也希望初学者能和小弟我一起讨论讨论,仅限于初学者哈~大牛不小心路过就不要吐槽小弟了~ 这是一个简易ICT的模…
以下摘录<步骤吓得核心--软-core处理器的室内设计与分析>一本书 12.1 Cache基本知识 12.1.1 Cache的作用 处理器的设计者通常会声称其设计的处理器一秒钟能做多少次乘法.每条指令仅仅占用xx个时钟周期,但是当我们实际使用处理器时,就会发现并非那么回事.比方在第11章,从图11.8中能够发现,当程序运行在简单SOPC上时.原先设计在运行阶段仅仅须要一个时钟周期的指令l.movhi却使用了6个时钟周期才完毕运行.造成实际情况与设计不符的原因是因为实际情况是一个由多个模块.设备…
以下摘录<步骤吓得核心--软-core处理器的室内设计与分析>一本书 13.7DCache使用情景之中的一个--存储指令运行阶段DCache失靶 存储指令运行阶段DCache失靶这样的情景在通写法.回写法策略下有不同的运行过程,在通写法策略下直接写存储器中相应的地址,不操作DCache. 在回写法策略下.首先推断目的地址相应的DCache中文件夹表的line是否被改动,假设是(Dirty为1).则将该line写回到内存,然后将目的地址所在的内存块读入DCache,填充到相应line,然后再改动…
以下摘录<步骤吓得核心--软-core处理器的室内设计与分析>一本书 OR1200中乘法除法类指令共同拥有9条,表8.3给出了全部的乘法除法类指令的作用及说明. 说明:表8.3是ORBIS32中给出的指令使用方法.可是通过分析OR1200的代码.发现有些指令并没有依照ORBIS32实现.如:l.mac.l.maci.l.msb.这三条指令有一个共同点就是涉及到乘法结果的低32位与{MACHI,MACLO}的运算,比方l.mac指令须要乘法结果的低32位加上{MACHI,MACLO},可是在OR…