0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用ALU,RAM,寄存器打造一个CPU 1

jf_78858299 来源:北洋洋洋 作者:北洋 2023-01-30 15:56 次阅读

CPU简介

「计算机的心脏是中央处理单元,简称“CPU”」 。这篇文章就利用前几篇文章中提到过的ALU,RAM,寄存器组件做一个CPU。

CPU负责运行程序, 「程序是由一个个操作组成的,这些操作叫做指令」 ,因为他们“指示”计算机要做什么.

CPU能做什么

「数学计算指令」 :让ALU去做加减乘除或者更复杂的数学计算

「内存指令」 :CPU会和内存(RAM)通信,然后操作内存进行读写值

组装CPU零件

16位内存条

首先把上一篇文章的RAM拿出来(只有16个地址意味着是每个内存是16位的,每个地址又可以存8位可以得出是8个内存组装在一起的;因此这个RAM可以看到是 「由8个16位内存组成」 )。

「内存条的寻址空间意味着每块内存可以可以存储的位数,内存条中的每个地址可以存多少位又是由多少个内存组成。」

可以看到每个地址都存储着8位,在后面讲解指令表的时候要注意这八位数字的表示方式。「前四位代表操作码,后四位代表的是地址OR寄存器」

四个八位的寄存器

回顾一下:

上一篇文章中讲到八位的寄存器无非是把八个锁存器链接在一起,8个数据输入线,8个数据输出线,还有一个链接着所有锁存器中的允许写入线。总共17条线

寄存器的作用:用来 「临时存储数据」 和操作数据

指令表

数据是以二进制值存储在内存里,程序也可以在内存里。

指令: 「所有CPU支持的指令都会分配一个指令ID」 也就是表中的第一个INSTRUCTION中的LOAD_A

描述:就是描述这个指令ID是用来做什么操作的

「4-BIT OPCODE」 (操作码):「这个指令要做的操作,用4位的操作码表示」

「ADDRESS OR REGISTERS (地址OR 寄存器):也是4位,表示的是 「操作码需要使用的地址或者寄存器」 (比如加载一个内存里的值放入寄存器中就需要指定打开的是哪个内存地址)

「在之前我们拿出RAM,可以看到每个地址都存储着8位数字,前四位代表的就是操作码,后四位代表的是地址OR寄存器」 「.」

「之后我们会模拟CPU的执行过程,要执行怎样的操作以及怎么样执行就是通过RAM中存储的这八位数字来运行的。」

两个八位的寄存器

「指令地址寄存器」 :追踪程序运行到哪里了。用于通过地址**「定位到内存条中的哪条指令,也就是存储当前指令的内存地址ADDRESS」**

「指令寄存器」 :用于 「存储当前运行的指令DATA」 。通过指令地址寄存器读取RAM中指定ADDRESS的DATA然后并写入这个寄存器

开始运行

启动计算机时,所有的寄存器都是0.

在RAM中放了一个程序(ADDRESS,DATA),现在就是要过一遍运行这个程序的过程

取指令阶段

该阶段负责拿到指令,即**「指令地址寄存器读取RAM中对应地址的值复制到指令寄存器」**

1.首先将 「指令地址寄存器连接到RAM」 中(ADDRESS INPUT),寄存器的初始值为0,因此会去读取RAM中ADDRESS为0的DATA

2.「DATA会被复制到指令寄存器中,现在指令寄存器存储了00101110这个指令」


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10533

    浏览量

    207611
  • RAM
    RAM
    +关注

    关注

    8

    文章

    1332

    浏览量

    113931
  • ALU
    ALU
    +关注

    关注

    0

    文章

    32

    浏览量

    13022
收藏 人收藏

    评论

    相关推荐

    解析CPU中的寄存器

    8位寄存器在16位寄存器中,而16位寄存器在32位寄存器中。
    发表于 09-19 10:10 3191次阅读

    寄存器用厂家distributed ram描述是否比"HDL通用寄存器描述...

    个人觉得如果用“HDL通用寄存器描述”32位寄存器,则综合需要32LUT(假设每个LUT后有1
    发表于 10-04 22:44

    什么样的寄存器不需要复位呢?哪些寄存器CPU能够访问的

    1寄存器的作用1)时序逻辑存储数据。例如,计数,每个周期要加
    发表于 07-08 17:43

    8051单片机中的寄存器是算CPU还是RAM

    可以划分CPURAM部分,但CPURAM有交叉的部分(比如寄存器组等) 4、CPU部分
    发表于 06-14 15:42 3817次阅读

    关于Block RAM寄存器输出

    关于Block RAM寄存器输出,我们在《通过RTL改善时序的技巧之Block RAM的输出》中介绍过。如果我们在时序报告中关键路径上看到这样一条信息: 在第一级的C2Q delay(clock
    的头像 发表于 03-26 15:50 1664次阅读
    关于Block <b class='flag-5'>RAM</b>的<b class='flag-5'>寄存器</b>输出

    如何在VHDL中实现一个简单的寄存器

    寄存器是设备中用于存储数据的常见电子元件。这些是最小的数据保存元素,用于存储 CPU 正在处理的操作数或指令。有不同类型的寄存器,即指令寄存器、程序
    发表于 07-29 16:48 4137次阅读
    如何在VHDL中实现一个简单的<b class='flag-5'>寄存器</b>

    如何使用ALU,RAM,寄存器打造一个CPU 2

    CPU简介 **「计算机的心脏是中央处理单元,简称“CPU”」** 。这篇文章就利用前几篇文章中提到过的ALU,RAM,寄存器组件做一
    的头像 发表于 01-30 15:56 609次阅读
    如何使用<b class='flag-5'>ALU</b>,<b class='flag-5'>RAM</b>,<b class='flag-5'>寄存器</b><b class='flag-5'>打造</b>一个<b class='flag-5'>CPU</b> 2

    如何使用ALU,RAM,寄存器打造一个CPU 3

    在指令表中我们看到ADD指令的后四位 **「寄存器 OR RAM地址一列中,列出来的不是之前的RAM地址而是两位的寄存器ID」** 。两位可以表示四个数字,正好对应ABCD四个
    的头像 发表于 01-30 16:01 856次阅读
    如何使用<b class='flag-5'>ALU</b>,<b class='flag-5'>RAM</b>,<b class='flag-5'>寄存器</b><b class='flag-5'>打造</b>一个<b class='flag-5'>CPU</b> 3

    cpu寄存器和存储器的区别

    cpu寄存器和存储器的区别 寄存器存在于CPU中,速度很快,数目有限;存储器是内存,速度稍慢,但数量很大。寄存器的功能是存储二进制代码,是由
    发表于 03-21 15:12 1089次阅读

    计算机寄存器和存储器

    计算机寄存器和存储器 一般意义上理解,寄存器CPU里的存储单元,与CPU离得近,所以CPU在运算时通常都会用
    发表于 03-21 15:22 1639次阅读

    寄存器和存储器如何区分

    寄存器是计算机硬件中最快、最小、最常用的存储器。它是CPU内部的存储器,通常作为指令和数据的存储和暂存空间。在CPU中,寄存器直接与算术逻辑单元(A
    的头像 发表于 04-09 18:43 1.2w次阅读

    用于RISC-V处理器的三重模块化冗余ALU寄存器文件的设计示

    用于RISC-V处理器的三重模块化冗余ALU寄存器文件的设计示例 演讲ppt分享
    发表于 07-17 16:34 2次下载

    怎样通过改变寄存器中的内容实现对CPU的控制呢?

    寄存器CPU中程序员可以用指令读写的部件,通过改变寄存器中的内容实现对CPU的控制。
    的头像 发表于 09-20 15:49 911次阅读
    怎样通过改变<b class='flag-5'>寄存器</b>中的内容实现对<b class='flag-5'>CPU</b>的控制呢?

    CPU的6个主要寄存器

    CPU寄存器是中央处理器内的组成部分,是有限存贮容量的高速存贮部件。寄存器CPU内部的元件,包括通用寄存器、专用
    的头像 发表于 02-03 15:15 1996次阅读

    CPU寄存器的用途

    在计算机体系结构中,中央处理单元(CPU)无疑是整个系统的核心。CPU负责执行指令、处理数据、控制计算机系统的运行等关键任务。而在这个过程中,寄存器扮演着至关重要的角色。本文将详细探讨CPU
    的头像 发表于 05-30 17:09 337次阅读