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

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

3天内不再提示

头歌计算机组成原理存储系统设计实验报告(字库存储芯片,MIPS寄存器文件设计)

电路和微电子考研 来源:CSDN-张2公子 2023-01-05 11:29 次阅读

实验存储系统设计实验

本次实验只有两道题目,但其实具有一定难度,这两题分别为汉字字库存储芯片扩展实验和MIPS寄存器文件设计,这次实验利用logisim进行设计,实验报告分为两个主要部分,在这两个部分中依次对两个实验的方案设计,设计思路进行了介绍。

字库存储芯片扩展实验

1.1设计要求

现有如下 ROM 组件,4片4K32位 ROM ,7片 16K32位 ROM,实验中有一个 16*16 点阵字库文件(存储字库的存储系统),由 7 片 16K× 32 位 ROM 和一个空白器件构成。空白处表示缺少一个器件,请按照字扩展(容量扩展,地址线扩展)的方式利用图中第一行所给出的 4 片 4K×32 位 ROM 的 存储器完成最终字库存储器,并把字库数据进行简单的分割后,存入这 4 片 4K ×32 位的 ROM 中。

d57ebb56-8c41-11ed-bfe3-dac502259ad0.png

字库电路输入输出引脚如图所示,输入引脚是 7 位的区号和位号;输出 引脚是 32 位的 D7~D0,每一个输出都是 32 位的汉字点阵信息,用于连接到汉 字点阵输入端(拆分为高低 16 位)

d5a96f54-8c41-11ed-bfe3-dac502259ad0.png

1.2设计原理

1.2.1 字括展

由题目得,要求我们用4片4K×32 位ROM按照字扩展的括展方式实现16K×32位ROM,因此这边给大家介绍一下字括展的原理

字括展也称为容量括展或地址总线括展,当存储芯片的存储容量不能满足存储器对存储容量的要求时,需要进行字括展的方式来括展,其中需要将所有存储芯片的数据线,读写控制线各自并联,同时分别与CPU的数据线和读写控制线连接,各存储芯片的片选信号可以由CPU多余的地址线通过译码器译码产生,通过计算得出,为实现上图电路,共需要16K/4K=4个ROM芯片实现

1.2.2 地址线连接

cpu分为地址线、数据线和控制线,地址线是用来传输地址信息用的,因为需要16K×32位的ROM系统,所以目标芯片中含有16K个地址,对应着14条地址线(2的14次方=16K),其中备用芯片12条地址线,高两位(分线器分开)用作片选,可以接到2-4译码器的输入端,在这边的话,需要分线器进行工作,将14个地址分开,分为低12位和高两位,对其进行编辑,将0-11设为0,其他位为1,高两位地址用于芯片的选择。

低 12 位地址直接连 4K×32b 的 ROM 芯片的地址线。4 个芯片的 32 位输出直接连到 D1,因为同时只有一个芯片工作,因此不会冲突

1.2.3 数据线连接

题目告诉我们,数据为32位,但输出LED矩阵位为16×16,所以说,该数据线应该有16位

每个16K×32b 的 ROM 的内部各自存储 16K 个地址,每个地址里存放 4 个字节数据。地址范围都一样:0x0000~0x3FFF

4 个 4K×32b 的 ROM,地址范围分别是也都一样:0x000~0xFFF,每个共有 4K个地址,现在需要把 16K×32b 的 ROM 中的数据按照顺序 每 4K 个为一组分为四组,分别放到 4 个 4K×32b 的 ROM 中去。HZK16_1 .txt 中的 1~4096 个数据放到 0 号 4K 的 ROM 中,4097~ 8192 个数据放到 1 号 4K 的 ROM 中,8193~12288 个数据放到 2 号 4K 的 ROM 中,12289~16384 个数据放到 3 号 4K 的 ROM 中

1.2.4 片选信号连接

在运行时,还需要对于片选信号线进行连接,将鼠标放置在上面,会得到相应的记录,如得到信号是1,不工作。对于连接片选信号线,可以选择译码器或是多路选择器,我选择的是译码器,连接原理为:将整个存储系统地址线的高位用于译码器的输入端,而译码器的输出端用于连接四个芯片各自合适的片选信号线。

在页面中增加一个译码器,数据位宽改为2,对于连发,需要进行讨论,对应的16K数据放置芯片位置,需要对应其译码器的连接

1.3实验步骤

1.理解题目,按照实验要求对四个4×32位的芯片进行字括展,使其成为16K×32位的芯片

2.了解数据线,地址线,片选信号的连接方式,然后进行连接

3.地址线通过分线器来进行分离,其中还需要对其中的数据进行调整,分为高2位和低14位,高位为1,低位为0

d5d95c8c-8c41-11ed-bfe3-dac502259ad0.png

4.之后对于片选信号进行连接,加入译码器,其中译码器位宽为2,可选为00,01,10,11四个信号

d5e563ec-8c41-11ed-bfe3-dac502259ad0.png

5.进行编译测评,改正错误

1.4故障与调试

1.4.1 LED灯展示不正确

故障现象:LED无法正确明亮与熄灭

d60eac20-8c41-11ed-bfe3-dac502259ad0.png

原因分析:结果检查,线条的连接没有问题,应该是只读存储器中,存储的数据存在问题,

解决方案:四个4K×32位的ROM当中,数据并不是平分的,并且对于不同的连接方式,前4k的数据需要放在不同的芯片当中

1.5测试与分析

自行测试与头歌网测试皆正确

d61b5984-8c41-11ed-bfe3-dac502259ad0.png

d6281a5c-8c41-11ed-bfe3-dac502259ad0.png

1.6最终电路图

d6359e20-8c41-11ed-bfe3-dac502259ad0.png

MIPS寄存器文件设计

2.1设计要求

利用 Logisim平台构建一个简化的MIPS寄存器文件,内部包含 4个 32 位寄存器。通过 R1#、R2#给定两个寄存器的地址编号,就可以从右侧的 R1、R2 引脚 读读出对应寄存器的值。输入引脚还包括写入寄存器的编号 W#,数据写入引脚 Din,当写使能信号 WE 有效,时钟的配合下将数据总线上的数据通过 Din 端写入寄存器文件内部对 应的寄存器中具体引脚为下图所示

d6725ff4-8c41-11ed-bfe3-dac502259ad0.png

d69995d8-8c41-11ed-bfe3-dac502259ad0.png

2.2设计原理

2.2.1 封装

首先需要看寄存器文件的封装,由输入引脚(R1,R2,W#,Din,WE,CLK时钟信号)

d6d27a24-8c41-11ed-bfe3-dac502259ad0.png

2.2.2 读控制电路设计

R1,R2分别为读寄存器的编号,我们寄存器设计好之后,一次可以读入两个寄存器里面的值,那么指定哪两个寄存器里面的值输出呢,那就需要我们通过R1#,R2#这两个信号,给出寄存器的编码,然后RD1,RD2分别是寄存器一二的数据输出引脚,它工作原理为,如果对寄存器文件进行读的话,可以读出寄存器中的值,寄存器由R1#,R2#的编号来指定是那两个寄存器,值由RD1,RD2进行输出。

由指令执行过程中,需要读两个寄存器的值,把他们送到目的寄存器中,所读寄存器的编号,由电路设计决定,为源寄存器中的编码决定的,由RD1,RD2进行输出。

数据输出可以根据 R1#、R2#的编码控制多路选择器进行选择输出。也可以采用译码器+三态门进行输出控制。由于这里需要同时读出两个寄存器,所以相关逻辑必须有两份。

2.2.3 写控制电路设计

W#这个输入引脚,是写寄存器的时候用,写寄存器时,要求WE,W#信号有效,然后数据从Din输入引脚写入数据,Din为32位,所有寄存器皆为32位。WE为写使能信号,数据必须由W#指定写入哪个寄存器,同时,WE有效,在时钟脉冲下,将Din端数据写到寄存器文件(由W#指定)中。

在指令执行时,通过分线器,将相应位提取出来,相应位代表着最终指令执行之后,想写入的目的寄存器的编号,数据送到Din端,然后RegWrite也就是写使能信号有效后,由CLK信号,把指定寄存器的数据,写入。

写入时根据 W#收到的写入寄存器编号,利用译码器或多路选择器选择具体 寄存器(写信号 WE 和译码信号同时有效时,令寄存器的使能端 en=1)

2.3实验步骤

(1)理解题目,按照实验要求进行电路连接

(2)W#为两位,可能值为00,01,10,11。当值不同时,选择不同寄存器,所以加入译码器,通过W#输出信号,由输出信号进行选择

(3)写信号还需要别的信号有效,才具备写入条件,如何控制写入寄存器,将WE和译码信号的值送入使能端,=1时,可以写入

(4)查看寄存器片选信号,如为1有效,为0无效

(5)同步置1和清零可不连,可以将电源连到地线,一直无效

(6)写入数据要把数据输出引脚连在对应寄存器输入引脚

(7)选择与门,并更改与门位宽,W#需要译码器,改为两位,W#连到译码器输入端,然后译码器四个输出引脚,WE是1时,W#如果也是1,与门相连

(8)按要求连接,进行测试

2.4故障与调试

2.4.1 位宽不匹配

故障现象:LED无法正确明亮与熄灭

d6fec85e-8c41-11ed-bfe3-dac502259ad0.png

原因分析:题目只给出四个寄存器,所以只需要两个位宽就足够

解决方案:将位宽改为2

2.5测试与分析

自行测试与头歌网测试皆正确

d70d172e-8c41-11ed-bfe3-dac502259ad0.png

2.6最终电路图

d77a25f8-8c41-11ed-bfe3-dac502259ad0.png

审核编辑:汤梓红

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

    关注

    31

    文章

    5336

    浏览量

    120230
  • 计算机
    +关注

    关注

    19

    文章

    7488

    浏览量

    87849
  • mips
    +关注

    关注

    1

    文章

    239

    浏览量

    47749
  • 存储系统
    +关注

    关注

    2

    文章

    409

    浏览量

    40852
  • 存储芯片
    +关注

    关注

    11

    文章

    896

    浏览量

    43132

原文标题:【实践】头歌计算机组成原理存储系统设计实验报告(字库存储芯片,MIPS寄存器文件设计)

文章出处:【微信号:feifeijiehaha,微信公众号:电路和微电子考研】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    计算机组成原理是什么

    计算机组成原理期末复习1.外围设备1>外围设备的定义中央处理和主存储器构成了计算机的主体,称为主机。主机以外的大部分硬件设备都称之为外部设备,简称外设或 I/O 设备,包括输入输出设
    发表于 07-16 08:09

    计算机组成原理

    计算机组成原理总复习文档目录计算机组成原理总复习文档第一章 计算机系统概述第二章 运算方法和运算第三章 内部
    发表于 07-21 07:25

    计算机组成原理mooc期末测试

    计算机组成原理mooc期末测试,第四章存储系统参考链接:计算机组成原理课后答案第四章-庞海波参考链接:計算机组成原理第3章习题参考答案参考链接:计算
    发表于 07-22 07:43

    计算机组成原理试卷题

    计算机组成原理试卷题,1单选下列不属于系统总线的为(D)A. 数据总线B. 地址总线C. 控制总线D. 片内总线2单选下列不属于片内总线连接的是(B)A. 寄存器寄存器间B. CPU
    发表于 07-22 06:03

    计算机组成原理 精选资料分享

    计算机组成原理第一章 计算机系统概述1.1 计算机系统简介计算机系统:硬件、软件软件:系统软件、应用软件
    发表于 07-23 06:15

    计算机组成原理 精选资料分享

    计算机组成原理计算机系统:硬件+软件硬件的发展:第一代:电子管第二代:晶体管第三代:中小规模集成电路时代第四代:大规模,超大规模集成电路时代目前发展趋势:更微型,多用途,更巨型,超高速硬件基本组成
    发表于 07-26 08:16

    怎样去设计一种存储系统(HUST)

    汉字字库存储芯片扩展实验MIPS寄存器文件设计MIPS RAM设计全相联cache设计4路组相连
    发表于 07-28 06:53

    计算机组成原理

    【2017年整理】计算机组成原理_8_外部设备第8章 外部设备;一个完整的计算机硬件系统由两大部分组成:一是由中央处理(CPU)和主
    发表于 09-01 07:31

    汉字字库存储系统是由哪些部分组成

    怎样去设计一种MIPS寄存器文件呢?汉字字库存储系统是由哪些部分组成的?怎样去设计呢?
    发表于 10-22 08:31

    计算机系统组成

    存储过程中按照执行的顺序;以运算和控制作为计算机结构的中心等。冯诺依曼计算机广泛应用于数据的处理和控制方面,但是存在一些局限性2、结构:
    发表于 12-09 08:19

    计算机组成原理是什么

    存储系统计算机存储系统采用了速度由慢到快,容量由大到小和价格由低到高的多层次存储结构。
    发表于 12-20 08:03

    多思计算机组成原理实验一:全加器实验

    多思计算机组成原理网络虚拟实验系统计算机组成原理实验一全加器实验
    发表于 10-22 10:36 11次下载
    多思<b class='flag-5'>计算机组成</b>原理<b class='flag-5'>实验</b>一:全加器<b class='flag-5'>实验</b>

    计算机寄存器存储器

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

    计算机存储系统的构成

    计算机存储系统计算机中用于存放程序和数据的设备或部件的集合,它构成了计算机信息处理的基础。一个完整的计算机
    的头像 发表于 09-26 15:25 789次阅读

    计算机存储系统的工作原理和功能

    计算机存储系统作为计算机系统中至关重要的组成部分,其原理和功能对于理解计算机的运行机制具有关键意义。以下将详细阐述
    的头像 发表于 09-26 16:42 859次阅读