- 博客(9)
- 资源 (50)
- 收藏
- 关注
原创 OpenRisc-49-or1200的except模块分析
引言“不如意事常八九,可与语人无二三”,人嘛,没有一帆风顺,一定有这样或那样的异常状况出现。对CPU来说,也是这样,如果一个CPU只能顺序执行,不能处理异常情况,那么这个CPU也就没什么存在的意义了。本小节,我们就分析一下or1200的异常处理系统。1,异常1>异常的概念这里假定中断是异常的一种类型。说到异常,大家可能并不陌生,linux里面有异常处理上下文的机制,之前我们在分析MMU模块时有TL
2013-08-28 18:44:03 4137 8
原创 OpenRisc-48-or1200的SPRS模块分析
引言之前,我们在分析or1200的WB模块时(http://blog.csdn.net/rill_zhen/article/details/10220619),介绍了OpenRISC的GPRS(general purpose register set)。除了GPRS之外,大多数的CPU还有SPRS(special purpose register set)。在分析完or1200的数据通路之后,从本
2013-08-27 14:29:18 4663 1
原创 OpenRisc-47-or1200的WB模块分析
引言“善妖善老,善始善终”,说的是无论什么事情要从有头有尾,别三分钟热度。对于or1200的流水线来说,MA阶段是最后一个阶段,也是整条流水线的收尾阶段,负责战场的清扫工作。比如,把运算指令的运算结果要写到寄存器里,把从内存读来的数据写到寄存器里,如果在前面的流水阶段出现了异常,WB阶段还要负责把异常指令的地址存到寄存器里。总之呢,就是写回寄存器。本小节,我们就分析一下or1200五级流水线最后一
2013-08-23 15:31:00 3386 2
原创 OpenRisc-46-or1200的MA模块分析
引言“茶壶里倒饺子--有口说不出“,说的是肚子里很多东西,却无法说出。其实在计算机体系结构里,也存在这个问题,这就是memory wall(存储墙)的问题。说到底,计算机的作用就是根据人们输入一堆东西,然后输出处理结果,所以,输入输出部分,就显得格外重要。CPU本身的计算能力再强,一直得不到足够的输入,或者无法将大量的结算结果输出出来,也是无济于事。流水线中的MA阶段,就是CPU和外部交流的主要窗
2013-08-22 18:08:30 2989 1
原创 数字集成电路设计-7-一个简单cpu的设计,实现,仿真与综合
引言经过对OpenRISC近一年的分析与研究,在此过程中我们了解了计算机体系结构设计相关的主要概念,重要的技术,和基本思想。我觉的,现在我们有必要练练手了。本小节,我们将设计一个简单的cpu,包括ISA的设计,模块的划分,RTL实现,编写asm汇编程序,用modelsim进行仿真,以及用quartusII的综合。1,计算器与计算机我认为,在EDVAC计算机之前的计算机,都可
2013-08-12 16:15:16 18687 25
原创 OpenRisc-45-or1200的ID模块分析
引言之前,我们分析了or1200流水线的整体结构,也分析了流水线中IF级,EX级,本小节我们来分析ID(insn decode)级的一些细节。1,基础or1200的pipeline的ID阶段包含一个模块,就是ctrl模块,其对应的文件是or1200_ctrl.v。ID,就是instruction decode,顾名思义,其主要任务就是对从IF阶段取得的指令进行解析,产生各种
2013-08-07 16:58:19 4021 3
原创 OpenRisc-44-or1200的pipeline整体分析
引言我们在前面分析了ORPSoC,or1200_top,和or1200_cpu的整体架构,在最近,我们也分析了or1200的pipeline(流水线)中的两级,EX级和IF级。但是,我们还没有从宏观的角度,整体的了解一下or1200的流水线结构,本小节就做这件事情。1,流水线1>概述关于流水线的概念,历史,划分等等这些内容,在很多文献里都提到过,而且我们之前也介绍过,这
2013-08-05 18:43:01 5682 6
原创 OpenRisc-43-or1200的IF模块分析
引言“喂饱饥饿的CPU”,是计算机体系结构设计者时刻要考虑的问题。要解决这个问题,方法大体可分为两部分,第一就是利用principle of locality而引进的cache技术,缩短取指时间,第二就是采用各种转移预测技术,提高取指正确的概率。只有cache,没有好的转移预测,取指时间再短,每次提前取的指令都是错的,不行。只有转移预测,没有cache,即使每次取得指令都对,但是每次取
2013-08-03 20:20:16 3562
原创 OpenRisc-42-or1200的ALU模块分析
引言computer(计算机),顾名思义,就是用来compute(计算)的。计算机体系结构在上世纪五六十年代的时候,主要就是研究如何设计运算部件,就是想办法用最少的元器件(那时元器件很贵),最快的速度,完成加减乘除。。。。。。等等这些运算。后来发现运算已经足够快了,快到已经无法提供足够的运算指令和运算的操作数了,人们才开始研究如何给运算部件提供足够的指令和数据,这就产生了cache啊,分支预测
2013-08-01 14:06:54 5834 1
openrisc_demo.rar
2013-12-03
Open Core Platform based on OpenRISC Processor and DE2-70 Board
2013-04-26
simplescalar 1.0 源码
2013-01-06
OpenRISC1000_System_Architecture manual
2012-11-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人