- 博客(22)
- 收藏
- 关注
原创 从零开始设计CPU——DEILT_RISCV
本人目前是一个小小的硕士研究生,正在学习数字IC前端设计相关知识。创建此项目的目的是为了学习RISC-V,希望可以通过此项目的学习加深对数字IC设计的理解。代码等方面可能会有错误的地方,望大家能够谅解。
2023-03-28 21:52:28
600
原创 RV32IM_指令介绍
I型指令通常包括opcode(操作码,7)funct3(功能码,3)rs1(源寄存器1,5)rd(目标寄存器,5)Imm(立即数,12)shamt(位移次数,5)(因为是32位数据,所以最多只能位移32次,5位位宽即可)其中opcode用于判断指令的类型;func3用于判断具体指令需要进行的操作;rs1是需要访问通用寄存器的地址,将取到的值用于运算操作;rd是将运算结果写回的目的寄存器地址,立即数是进行运算操作的数,这里直接给出,可以直接扩展后使用,不需要访问寄存器取值。
2023-03-15 19:36:40
2573
1
原创 简单的 RISC_CPU 学习
它是一种八十年代才出 现的CPU,与一般的CPU 相比不仅只是简化了指令系统,而且是通过简化指令系统使计算机的结构更 加简单合理,从而提高了运算速度。在于:它的时序控制信号形成部件是用硬布线逻辑实现的而不是采用微程序控制的方式。所谓硬布线逻辑也就是用触发器和逻辑门直接连线所构成的状态机和组合逻辑,故产生控制序列的速度比用微程序控制方式快 得多,因为这样做省去了读取微指令的时间。CPU的作用是协调并控制计算机的各个部件执行程序的指令序列,使其有条不紊地进行。从实现的途径看,RISC_CPU与一般的CPU的。
2022-11-03 21:34:25
1631
原创 verilog实例-近期最少使用算法(LRU)
LRU算法用于cache管理或任何其他需要对访问权进行周期更新的场合。基于时间和空间考虑,cache中存储着近期将会用到的数据项。当cache被用满后,如果有新的数据项到来,需要将某个现有的数据项从cache中清除,为新进入者提供空间。此时通常使用的算法被称为LRU(Least Recently Used,近期最少使用),通过LRU算法可以找到最久未被使用过的数据项,cache将该数据项清除,并将新的数据项写入此处。另一个会用到LRU算法的地方是网络设备中的路由表管理电路。
2022-11-01 20:26:30
3676
2
原创 verilog实例-仲裁(Arbiter)
在一个轮询周期中,agent0最大可以得到3次许可,agent1可以得到2次许可,agent22可以得到1次许可。每次轮询后对应的变量值减1,一个轮询周期结束后,这些变量会被重新设置为预置的初值。在所有存在许可机会的用户之间进行公平轮询,在一个循环周期内,不用用户得到的总许可机会由预置的权重值决定。接下来,我们给出了采用WRR轮询方案的Verilog RTL代码及仿真结果,它采用的是第一种许可方式,序列为A,A,A,B,B,C…一个用户可以连续地获得许可,获得许可的次数由预置的权重值决定。
2022-10-31 15:14:17
4819
2
原创 verilog实例-流水线(Pipeline)
所谓流水线设计实际上是把规模较大、层次较多的组合逻辑电路分为几个级,在每一级插入寄存器组并暂存中间数据。K级的流水线就是从组合逻辑的输入到输出恰好有K个寄存器组(分为K 级,每一级都有一个寄存器组),上一级的输出是下一级的输入而又无反馈的电路。流水线本质上可以理解为一种以面积换性能( Trade Area for Performance )、以空间换时间( Trade Space for Timing )的手段流水线设计在性能上的提高是以消耗较多的寄存器资源为代价的。
2022-10-30 20:56:59
9872
8
原创 LEHDLAB-实验记录
1、5mg/ml的DPP-DTT,旋涂出的膜很不均匀,颜色深度不一。2、2mg/ml的DPP-DTT,与5mg/ml相比,膜的颜色很浅。3、5mg/ml测试时表现为双极性,而2mg/ml的片子没有开启。5mg/ml的DPP-DTT冷却三分钟后成胶状。5mg/ml的DPP-DTT冷却三分钟后成胶状。旋涂前,对蒸镀完的玻璃片清洗(IPA+DI/5min)。2、不采用2mg/ml的DPP-DTT,改用3mg/ml。旋涂前,对蒸镀完的玻璃片清洗(IPA+DI/5min)。Notes:旋涂前,请将溶液。
2022-10-30 15:23:26
560
原创 RISC-V— 蜂鸟 E200 设计总览和顶层架构介绍
蜂鸟 E200 处理器核采用一套统 一 的 Verilog RTL 编码风格( Coding Style ) , 来自于严谨 的工业级开发标准,其要点如下。a)对于寄存器避免直接使用 always 块编写 ,而是应该采用模块化的标准 DFF 模块进行例化。作为一种特殊 的 ASIC 设计,也需我们了解某些方面的背景知识和特点,归纳如下。也有其特点,通常 需要从 3 个不同层面对处理器进行验证。c) 标准 DFF 模块是一系列不同的模块。b) 使用标准DFF模块例化的。
2022-10-29 15:51:04
2710
原创 RISC-V— 架构基础知识学习
蜂鸟 E200 系列是一个开源的RISC-V 处理器。蜂鸟 E200 系列由中国大陆研发团队开发,用户能够轻松与开发人员取得交流和支持。RI蜂鸟 E200 处理器研发团队拥有在国际一流公司多年开发处理器的经验,使用稳健的Verilog 2001 语法编写的可综合 RTL 代码,以工业级标准进行开发。蜂鸟 E200 的代码为人工编写,添加丰富的注释且可读性强,非常易于理解。
2022-10-28 11:29:13
12044
原创 Mathcad_excel数据处理
Mathcad是美国PTC公司旗下的一款工程计算软件,作为工程计算的全球标准,与专有的计算工具和电子表格不同,Mathcad 允许工程师利用详尽的应用数学函数和动态、可感知单位的计算来同时设计和记录工程计算。独特的可视化格式和便笺式界面将直观、标准的数学符号、文本和图形均集成到一个工作表中。Mathcad采用接近在黑板上写公式的方式让用户表述所要求解的问题,通过底层计算引擎计算返回结果并显示在屏幕上。计算过程近似透明,使用户专注于对问题的思考而不是繁琐的求解步骤。
2022-10-22 19:56:24
2195
原创 verilog实例-fullshakehand握手同步
在不同时钟域之间进行数据传输时,可以考虑使用握手同步机制。握手同步机制分为半握手和全握手。当从低频时钟域向高频时钟域传输数据时,半握手机制比较适用,这是由于接收端可以更快地完成操作。但是当从高频时钟向低频时钟传输数据时,则需要全握手机制。
2022-10-20 20:32:16
1855
2
原创 Verilog实例-AMBA(AHB)协议
AHB 是为提出高性能可综合设计的要求而产生的新一代 AMBA 总线。AMBA AHB 是位于 APB 之上新一级的总线并且实现了高性能、高系统时钟频率系统的以下特征突发传输;分块处理;单周期总线主机移交;单时钟沿操作;非三态执行;更宽的数据总线架构(64 位或者 128 位)。
2022-09-28 22:00:27
2699
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人