首页 > 其他分享 >CPU与储存器连接(例题讲解)

CPU与储存器连接(例题讲解)

时间:2024-10-21 08:50:25浏览次数:3  
标签:芯片 储存器 存储芯片 译码器 地址 例题 CPU 片选

(1)地址线的连接

          CPU的地址线数量往往比存储芯片的地址线数量要多。通常将CPU地址线的低位与存储芯片的地址线相连接,CPU地址线的高位用作对芯片的控制或其他用途。

(2)数据线的连接

        CPU的数据线数量也比存储芯片的数据线的数量要多。此时,必须对存储芯片进行位扩展,使CPU与存储器的数据线的数量相等。

(3)读/写命令连接

        CPU的读/写命令线一般是直接与存储芯片的读/写控制端相连。通常高电平为读,低电平为写。

(4)片选线的连接

        由于存储器是由许多存储芯片叠加组成的,哪一片芯片被选中完全取决于该芯片的片选控制端是否能够接收到来自CPU的片选有效信号。

        通常,CPU给出的存储单元地址线的条数往往大于单个芯片的地址线条数,因此,那么没有与存储芯片相连的高位地址线(即CPU的高位地址线),往往会通过译码器的作用,用来产生存储器的片选信号。

(5)合理选择芯片

        选择原则:芯片的数量尽可能的少、片选逻辑要尽可能的简单。但同时要考虑地址线是否足够连接芯片的控制端(以下例题会用到)

解题思路:(1)写出对应二进制地址码(2)确定芯片的数量及类型(3)分配地址线(4)确定片选信号(5)进行芯片连接

(1)写出对应二进制地址码(如下图)

(2)确定芯片的数量及类型(ROM一般用于系统区,RAM一般用于用户区)

还是看上面二进制图片,系统区选择4K×8位是没有问题的,但是用户区有两个选择:8K×8位芯片或者两片4K乘8位的芯片,此时8K×8位是不可行的,因为若选择了8K×8位,那么芯片控制端就没有足够的地址线进行相连,如果这里没看懂,下面会详细讲解。

(3)分配地址线

4k×8位即12根地址线,A_{0}~A_{11}接芯片的地址线,A_{12}A_{13}A_{14}为74138译码器的输入端,A_{15}接控制端。若选择了8K×8位的,那么A_{13}A_{14}A_{15}接入译码器的输入端,则译码器的控制端就少一根地址线进行相连,所以选择8K×8位不可行

(4)确定片选信号

74138译码器上面,G_{1}\bar{G_{2B}}\bar{G_{2A}},G_{1}接高电平,其他接低电平,上面分配地址线中提到A_{15}接控制端,从二进制码中看到A_{15}是低电平,所以接\bar{G_{2A}},题中MRWQ也是低电平,可以接\bar{G_{2B}},剩下接高电平的G_{1},此时可以接电源VCC。

(5)进行芯片连接

这部分前面都已选好,直接相连就可以了,需要注意的是,38译码器输出端是\bar{Y_{2}}\bar{Y_{1}}\bar{Y_{0}},由连接译码器的控制端CBA二进制码可得(000,001,010).剩下就是数据线与芯片相连了,与上篇文章中的方法一样。

标签:芯片,储存器,存储芯片,译码器,地址,例题,CPU,片选
From: https://blog.csdn.net/m0_74891372/article/details/143093761

相关文章

  • 简易CPU设计入门:验证取指令模块
    项目代码下载还是请大家首先准备好本项目所用的源代码。如果已经下载了,那就不用重复下载了。如果还没有下载,那么,请大家点击下方链接,来了解下载本项目的CPU源代码的方法。下载本项目代码准备好了项目源代码以后,我们接着去讲解。本节前言想要学习本节,前提是,你得是学习过我讲......
  • 性能提升:线程池大小与CPU的关系
    前言:线程池可以包含几个线程才能最大化提升整体系统性能,这个与CPU的处理能力有直接关系,线程池的线程数过多则在大多数线程处于等待状态,线程之间的切换反而性能开销变大,拖累整体效率,如果线程池里的线程过小,则没有充分利用CPU的处理能力。一、查看CPU并发处理的线程数 在Linu......
  • JAVA程序流程控制与基本例题
    程序的三种执行顺序1.分支结构(1)if分支结果packagecom.branch;publicclassifDemo{publicstaticvoidmain(String[]args){//目标:掌握了解if语句三种形式的用法,清楚其写法和应用场景。demo3();demo2();demo1();}......
  • 计算机基础(cpu,内存,硬盘)
    计算机基础(cpu,内存,硬盘)内存:负责硬盘等硬件上的数据与CPU之间数据交换处理;缓存系统中的临时数据。断电后数据丢失。硬盘:​ 存储资料和软件等数据的设备,有容量大,断电数据不丢失的特点。流程​ 简单来说,硬盘用来存储程序和数据,当运行程序时,CPU首先接受到命令,之后CPU是告诉......
  • Stanford CS149 -- Assignment 1: Performance Analysis on a Quad-Core CPU
    作业描述及代码参加:CS149-asst1程序1生成view1时加速比与线程数的关系如下:线程数加速比22.0431.6942.5452.5763.2673.5584.11生成view2时加速比与线程数的关系如下:线程数加速比21.7532.2542.6753.146......
  • AOT漫谈专题(第三篇): 如何获取C#程序的CPU利用率
    一:背景1.讲故事上篇聊到了如何对AOT程序进行轻量级的APM监控,有朋友问我如何获取AOT程序的CPU利用率,本来我觉得这是一个挺简单的问题,但一研究不是这么一回事,这篇我们简单的聊一聊。二:如何获取CPU利用率1.认识cpuUtilization字段熟悉.NET底层的朋友应该知道,.NET线程池中有一......
  • Win11系统CPU资源
    在Win11中结束进程,可以按照以下步骤进行操作:打开资源管理器。您可以通过按下Windows键并键入“资源管理器”来快速找到它。在资源管理器中,单击左侧导航栏的“此电脑”或“我的电脑”。在“此电脑”窗口中,单击左上角的“查看”选项卡。在“查看”选项卡中,单击右侧的“选......
  • Linux 中通过 cpulimit 限制服务的CPU占用率
    文章目录安装查找服务文件位置编辑服务文件重启服务通常做资源限制有多种方法,比如用CGroup方法、system-run等,cpulimit只是其中的一种方式。安装sudoaptupdatesudoaptupgradesudoaptinstallcpulimit查找服务文件位置systemctlstatusabc.service......
  • 使用C#获取系统关键信息:CPU、内存、硬盘、用户与网络状态
    在C#中,获取系统信息如CPU、内存、硬盘、用户以及网络状态等,可以通过多种方式实现,包括使用System.Management命名空间中的类来查询WMI(WindowsManagementInstrumentation)信息,或者使用.NETFramework自带的类库。以下是一些基本示例来展示如何获取这些信息。1.引入必要的命......
  • linux 系统CPU 上下文切换(Context Switch)概念
    CPU上下文切换(ContextSwitch)是操作系统调度程序在不同任务之间切换CPU执行的过程。上下文切换的核心是保存当前任务的状态(也叫“上下文”),然后恢复下一个任务的状态,最终交给CPU执行。这种切换可能发生在进程、线程或者内核级别的不同上下文之间。上下文切换的详细过程保......