一、 设计要求
学生理解主存地址基本概念,理解存储位扩展基本思想,并能利用相关原理构建能同时支持字节、半字、字访问的存储子系统。
Logisim 中 RAM 组件只能提供固定的地址位宽,数据输出也只能提供固定的数据位宽,访问时无法同时支持字节/半字/字三种访问模式,实验要求利用 4 个4 K*8 位的 RAM 组件进行扩展,设计完成既能按照 8 位、也能按 16 位、也能按照 32 位进行读写访问的 32 位存储器,最终存储器引脚定义如下图。

二、 方案设计
输入:
1.题目给出的ROM的地址位宽位10位,所以地址取高10位。Str信号由各rom的wi此信号给出,表示仅当写模式下,该ROM需要参与写时才有效。sel端置一。

2.确定输入数据的取值:如果Mode为00时表示字访问,即写入32位数据,4片ROM都被选中,分别对应第0,1,2,3个字节;Mode为01表示单字节访问,即写入8位数据,这时只选中一片ROM,而且写入的是Din的最低字节;Mode位10时表示半字访问,即写入16位数据。这里要选中2片ROM,由于要对齐所以只能选高两位或低两位。

3.确定wi的取值
先使用一个解码器,根据Mode的取值来决定要进行的访问方式。

文章描述了一项实验,旨在利用4个4K*8位的RAM组件设计一个能支持8位、16位和32位访问的存储子系统。设计中涉及地址解码、模式选择和数据宽度处理。在实验过程中,作者遇到了并解决了关于半字地址的错误,通过本次实验,作者深化了对Logisim和电路设计的理解。
&spm=1001.2101.3001.5002&articleId=130272924&d=1&t=3&u=6f58db9c03514d8ebe9d991eaef7bdbe)
2万+

被折叠的 条评论
为什么被折叠?



