score_one
码龄7年
关注
提问 私信
  • 博客:32,863
    32,863
    总访问量
  • 24
    原创
  • 2,310,443
    排名
  • 9
    粉丝
  • 0
    铁粉

个人简介:知识使人奋发,学习使人头秃。

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:福建省
  • 加入CSDN时间: 2018-06-04
博客简介:

score_one的博客

查看详细资料
个人成就
  • 获得59次点赞
  • 内容获得15次评论
  • 获得110次收藏
创作历程
  • 5篇
    2023年
  • 16篇
    2022年
  • 2篇
    2021年
  • 1篇
    2019年
成就勋章
TA的专栏
  • UC操作
    3篇
  • CPU实验学习
    11篇
  • 神经网络
    1篇
  • 日常笔记
    7篇
  • 电脑操作
    1篇
  • 软件安装
    1篇
兴趣领域 设置
  • 人工智能
    机器学习人工智能深度学习
  • 嵌入式
    嵌入式硬件
  • 硬件开发
    硬件工程fpga开发
创作活动更多

2024 博客之星年度评选报名已开启

博主的专属年度盛宴,一年仅有一次!MAC mini、大疆无人机、华为手表等精美奖品等你来拿!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

UC第三节

链接静态库就是将库中被调用的代码复制到调用模块中。动态库没有将代码复制,而是使用时到制定区域调用。静态库本质是将多个目标文件打包成一个文件。静态库的拓展名 .a。例:libxxx.a。
原创
发布博客 2023.04.30 ·
88 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

UC第二节

功能:添加或修改一个环境变量,不存在则添加,存在则修改。overwrite: 传0保持原值;传非0 替换以前值。功能:根据环境变量名称获取其值。成功返回0,不成功返回非0。
原创
发布博客 2023.04.30 ·
75 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

UC第一节

定义:是管理计算机硬件和软件资源的一个系统软件。echo $name 可以查看环境变量的值。a.被子进程继承,显示在环境变量列表上。shell(壳保护系统内核)linux操作系统—bash。每个进程都有自己的环境变量表。将自定义变量输出环境变量列表。env命令查看环境变量列表。b.不能继承,自定义变量。
原创
发布博客 2023.04.30 ·
604 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

AZ Processor -----(3)分模块实现

(1)cpu存储区域的通用寄存器。指令集最大可以指定三个寄存器作为操作数,其中俩个为读取值,一个为写入值因此寄存器堆需要有俩个读取端口和一个写入端口。
原创
发布博客 2023.04.14 ·
89 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

设计中加入定点运算

定点运算实现原理:实现原理:
原创
发布博客 2023.04.13 ·
133 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

实验6补充修改部分,关于CPU模块仿真

之前的实验6仿真部分,由于端口定义问题,IF阶段出现无法设置reg类型的问题。这边做补充修改:在设计模块中,input类型才可以作为仿真时reg类型实例化,output类型只能作为仿真时的wire类型,无法参与仿真过程块。强制修改一个wire变量为reg变量,无法实现,因为一个变量会同时传递到多个模块,可能会是input,可能会是output。这边解决办法是将变量多定义一个,单独用于拥有input类型的模块,、(例如new_pc在IF模块中作为input,可以用reg类型,而在cpu控制模块作为ou
原创
发布博客 2022.02.11 ·
403 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

实验6:CUP的控制模块实现&&CPU全部模块连接

1.CPU控制模块cpu控制模块进行对保存CPU状态的控制寄存器进行管理,并且对流水线进行控制cpu控制模块中设有设置和保存CPU状态的控制寄存器主要处理流水线刷新延迟、程序中断等异常。这一模块涉及中断处理、流水线刷新延迟,知识点较杂乱,需要配合相关资料进一步研究。端口定义:part8.CPU控制模块 cpu控制模块进行对保存CPU状态的控制寄存器进行管理,并且对流水线进行控制 cpu控制模块中设有设置和保存CPU状态的控制寄存器 ctrl:
原创
发布博客 2022.02.11 ·
1355 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

实验5:CUP的内存MEM阶段实现

Memory阶段(MEM)mem阶段主要负责内存的访问。在执行LDW和STW等指令时,内存访问操作是在MEM阶段进行的端口模块定义:part7.MEM阶段mem阶段主要负责内存的访问。在执行LDW和STW等指令时,内存访问操作是在MEM阶段进行的1.mem_ctrl:基于EX阶段流水线寄存器输入的内存操作(ex_mem_op),实施内存访问操作 /********** EX/MEM pipeline register **********/ input wire ex_
原创
发布博客 2022.02.10 ·
1107 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

实验4:CUP的执行EX阶段实现

Execution(EX)阶段EX阶段主要进行运算和中断检测操作。EX阶段由算术逻辑运算单元和流水线寄存器构成。端口定义:part6.EX阶段EX阶段主要进行运算和中断检测操作。EX阶段由算术逻辑运算单元和流水线寄存器构成。1.ALU根据输入指定的操作对数据进行处理,并输出处理结果。ALu的输入为一个操作码和俩个数据,输出为运算结果和溢出信号alu: input wire [`WordDataBus] in_0, // Input 0 input wire [`WordDat
原创
发布博客 2022.02.10 ·
515 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

实验3:CUP的译码ID阶段实现

ID阶段(Instruction Decode)ID阶段对指令进行解码并生成必要的信号。数据的直通、Load冒险的检测,分支的判定都在这个阶段进行各模块和端口定义:1.指令解码器 decoder: /********** IF/ID pipeline register **********/ input wire [`WordAddrBus] if_pc, // Program counter input wire [`WordDataBus] if_insn, // I
原创
发布博客 2022.02.09 ·
885 阅读 ·
2 点赞 ·
0 评论 ·
2 收藏

实验前准备:CPU学习实验的头文件.vh

代码来源:《CPU自制入门》1.bus.vh/* -- ============================================================================ -- FILE NAME : bus.h -- DESCRIPTION : Bus header -- ---------------------------------------------------------------------------- -- Revision Da
原创
发布博客 2022.02.07 ·
650 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

实验2:CUP的取指IF阶段实现

1.通用寄存器,三个通用寄存器,两个读取,一个写入gpr input wire clk, input wire reset, /********** 读端口0 **********/ input wire [`RegAddrBus] rd_addr_0, // Read address 位宽5 output wire [`WordDataBus] rd_data_0, // Read data 位宽32 /********** 读端口1 ********
原创
发布博客 2022.02.07 ·
476 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

实验1:创建一个简单的BUS总线

经典AMBA总线系统:(主要是AHB和APB)组成主要有四部分:master,slaver,arbiter,decodermaster是BUS主控部分,例如CPUslaver是BUS从属部分,例如ROMarbiter是BUS仲裁器,用于判断多个主控的优先级decoder是地址解码器,用于判断控制哪个从属AHB总线用于高性能,高时钟工作频率模块。AHB在AMBA架构中为系统的高性能运行起到了基石作用。AHB为高性能处理器,片上内存,片外内存提供接口,同时桥接慢速外设。高性能,数据传输,多总线主控制
原创
发布博客 2022.02.05 ·
961 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

verilog RTL(5)

修改parameter语法变化(1995,2001)parameter默认32位
原创
发布博客 2022.01.27 ·
231 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

AZ Processor -----(2)总设计思路

基于RISC架构的32位CPU,经典5级流水线AZ Processor框架图:(1)组成部分:IF阶段、ID阶段、EX阶段、MEM阶段、cpu通用寄存器(gpr)、CPU控制单元、CPU直接访问的专用存储器SPM。虚线中的WB阶段,实际在结果写回通用寄存器或CPU控制单元实现,本身这个模块并不存在。(2)IF阶段和MEM阶段通过总线与内存和I/O相连。需要每个周期都向流水线提供指令或数据。因此设置了可以高速访问的CPU专用SPM。SPM与缓存类似,但分配有地址空间的存储器。(3)分支的判定在ID
原创
发布博客 2022.01.24 ·
303 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

verilog RTL(4)

////////////////////////////////////////////////////////////////////////////////////////////////////参数化设计/************************************************************/Latch锁存器(利用电平触发)/************************************************************/...
原创
发布博客 2022.01.24 ·
170 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

AZ Processor ---CPU(1)流水线

CPU1.流水线处理经典流水线–5级IF:读取指令ID:解码EX:执行,ALUMEM:内存访问WB:结果写会寄存器堆/*****************************************************************/流水线可以使处理效率提升,减少其他等待时间2.流水线冒险:A。构造冒险由于硬件资源的竞争,操作无法同时进行例如:IF阶段和MEM阶段都涉及内存访问。冯诺依曼架构:指令和数据放在一起,而访问内存使用的总线是共享资源,无法同时进
原创
发布博客 2022.01.23 ·
387 阅读 ·
2 点赞 ·
0 评论 ·
2 收藏

verilog RTL(3)

/*************************************************/连续赋值assign #del <id> = <expr>;assign 对net类型赋值书写位置:在module内在procedure外(always,initial)属性:1.并发2.相互独立3.连续作用/*************************************************/proceduresinitial不可综合,
原创
发布博客 2022.01.23 ·
70 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

verilog RTL(2)

/******************************************/integer and real data typesinteger 没有初始化reals 初始化为0.0/******************************************/arrays注意点:1.不能直接取多个地址reg var[-15:16] //32个 1-bit regsvar[2:9]=???//不能同时取出多个regs2.不能定义多维数组reg var[1:100][1
原创
发布博客 2022.01.22 ·
251 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

verilog RTL(1)

/************************************************/ASIC Design Flow(设计流程)DesignVerificationDFTPhysical Design/************************************************/RTLRegister Transfer Level全加器实现:/************************************************/硬
原创
发布博客 2022.01.22 ·
182 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多