目录
一、把8×8 位的RAM存储器模块扩展为 8×32 位RAM存储空间;
二、把8×8 位的RAM存储器模块扩展为32×8位RAM存储空间;
三、把256×4 位的RAM存储器模块扩展为1K×8b的RAM存储空间。
PS:先说说存储器是什么样的小玩意:
A x B 位XXX(RAM或者ROM)存储器的意思就是说这个存储器一共有A个存储单元,每个存储单元都是保存B位数字的,RAM就是内存或称主存,RAM就是外存或称硬盘;
举个例:8 x 8 位的RAM意思就是说这是一个能存储8个位宽位8的数字的内存存储器;
再例如:256 x 4 位的ROM的意思就是说这是一个总共可以能保存256个位宽位4的数字的硬盘存储器。
提醒!!!电路嘛,只有高频和低频,也就是说这里说的数字只能是0或者1(低频代表0,高频代表1)比如01、101、1000、0000000001、01010101、01010100011、0011101……01011010这样的数字;
就这……已经很 ok 了,已经可以开始设计各式各样的存储器了。
一、把8×8 位的RAM存储器模块扩展为 8×32 位RAM存储空间;
第一步:给的存储器只有8位,而现在需要的是保存32位,那就用4个串在一起呗,第一个保存0~7位,第二个保存8~15位,第三个保存16~23位,第四个保存24~31位不就行了。
(logism里8 x 8位RAM长下图这样)
存储器位置以及下方工具栏里选项的选择:
大概设计成这样子就非常OK了
(恭喜,核心已经完成了)
第二步:设计输入输出,先用一个分离器把一个32位的数分成4个八位数,分别保存在上面的四个存储器中,再设计一个分离器反用,取数时把分开的四个数再合并成一个数后再给出)
分离器长这样 :
分离器位置以及下方工具栏里选项的选择: (第二个反向的,在工具第一栏里多个操作: 朝向 —>西)
输入输出长这样:
输入: 输出:
输入和输出的位置以及下方工具栏里选项的选择:
加起来要这样的结果:
输入的的样子 输出的样子
第三步:写入开关,读数开关,时钟信号,以及存储单元选择的输入开关
注意:时钟开关在这里
好嘞,连起来,大功告成
二、把8×8 位的RAM存储器模块扩展为32×8位RAM存储空间;
原理基本差不多,直接上图:(解释在下面)
解码器:(工具栏里自己在调一下就能和上图里一样了)
与门:(同样工具栏需要自己调一下,不调也行)
至于原理,自己研究,比如为什么 address的位宽变成5位了,为什么多了这么多与门,解码器Decd又是啥……………………
太懒,不想解释,评论区问 or 自己研究吧
三、把256×4 位的RAM存储器模块扩展为1K×8b的RAM存储空间。
(这就是前两个的结合体而已)
分离器的工具栏设置如下:
存储器扩展基本上就是这样,其实这只是很小的一部分而已,对于学校而言,掌握到这已经差不多了。