存储器和CPU的连接与TCP的流量控制

ops/2024/9/29 5:28:45/

存储器与CPU的连接

存储容量的拓展

(1)位拓展:增加存储字长

34032ccc78014484bd4bddea23a1e02b.png

 

(2)字拓展

增加存储器字的数量

c13aec72db644b4f9b74abcb4ed11b87.png

 

 

 

 

 

例题:设CPU有16根地址线,8根数据线,并用MREQ作为访问存储控制信号(低电平有效),WR作为读写控制信号,(高电平读,低电平写)。

 

5f7e2a8f643b4926a00cc304d877f331.png

 

 

现有以下存储芯片:1k*4位RAM,4K*8位RAM,8K*8位的RAM,2k*8位的ROM,4K*8位的ROM,8K*8位的RPM,以及74138译码器和各种门电路,如图所示

画出CPU与主存的连接图。要求如下:

(1)主存地址空间的分配:

6000H-67FFH为系统程序区;

6800H-6BFFH为用户程序区;

02c09833044b41a6adf7b616147d8f19.png

 

 

系统程序区变化范围为11位,即2K,

用户程序区变化范围为10位,即1K,

(2)合理选用上述芯片,说明各选几片。

即系统程序区选用1片2k*8位的ROM芯片;

用户程序区选用2片1k*4位的PAM芯片,之所以选用两片是因为题目的数据线是8根,即数据线宽度为8位。

(3)分配CPU的地址线

CPU的低11位地址与2k*8位的ROM地址相连(2k=2^11),CPU低10位地址与2片1K*4位的RAM相连;

由题可知,要使74138译码器正常工作,则G1为高电平,G2A,G2B为低电平,

由前面二进制地址范围可知,A15始终为0,即低电平,A14始终为1,即高电平,正好和译码器G2A(高)和G2B(低)对应,低电平G2B与访问控制信号MREQ对应,A13,A12,A11接到译码器C,B,A输入端。

526d7fb373a941a18448f75a024633b9.png

 

TCP的流量控制

利用滑动窗口实现流量控制

设A向B发送数据,连接建立时候,B告诉A自身的接收窗口大小,A的发送窗口大小不能超过接收方B的窗口大小

流量控制:发送方发送速率不要太快,要让接收方来得及接收。窗口大小的单位是字节。

窗口大小每次可以根据需求发送调整消息。

如果A向B发送了零窗口通知,而之后向B发送窗口100大小的通知,但消息丢失了,B一直没有收到,B如果一直等待下去就是死锁现象;

因此TCP为每个链接设置了计时器,当一方收到零窗口消息,启动计时器,然后计时器时间到期还没有收到更改窗口大小通知,那么就发送零窗口探测报文段(TCP规定在零窗口情况下也要接收零窗口探测字段,紧急报文段和确认报文段),对方收到后发送现在的窗口值,如果依然是零,那么重新设置计时器。

TCP发送时机的控制机制:

TCP维持一个变量,等于报文最大长度MSS,一旦接收到的数据达到MSS字节,就发送一个TCP报文段出去。

第二种机制是由发送方的应用进程指明要求发送报文段,即推送操作。

第三种机制是发送方一个计时器期限到了,将当前已有的缓存数据放入报文段。

使用Nagle算法:

发送应用进程要把发送的数据逐个发送给发送缓存,然后发送数据的第一个字节,然后把后续到达的字节存储到缓存起来,当收到对第一个字节的确认时候,发送缓存中所有数据组装成一个报文段发出,同时对后续到达缓存的报文段缓存,以后只有收到前一个报文段确认后,再发送后一个报文段。

糊涂窗口综合症:

TCP接收方的缓存已经满了,应用进程每次取用一个字节,接着发送方又传来一个字节,然后接收方发送确认,通知窗口依然为一个字节,这样效率很低。

要解决,可以让接收方等待一段时间,使接收缓存可以容纳一个最长报文段或者有一半空闲空间,这样就可以通知新的窗口大小。

拥塞;对资源的需求大于可用资源;

流量控制:点到店的通信量的控制。

拥塞控制;防止将过多数据注入网络,使网络过载。

 

 

 

 

 


http://www.ppmy.cn/ops/45211.html

相关文章

气缸前端锁紧技术探讨:从四个方面、五个方面、六个方面和七个方面深度解析

气缸前端锁紧技术探讨:从四个方面、五个方面、六个方面和七个方面深度解析 在工业自动化领域,气缸作为关键的执行元件,其前端锁紧技术的稳定性与可靠性直接影响到整个系统的运行效率。本文将从四个方面、五个方面、六个方面和七个方面&#…

计算机网络-运输层

运输层 网络层在两个端系统之间的交付服务拓展到运行在两个不同端系统上的应用层进程之间的交付服务。 概述和运输层服务 运输层协议为运行在不同主机上的引用进程之间提供了逻辑通信功能。通过逻辑通信,运行在不同进程之间的主机好像直接连接一样。 运输层协议…

Django 入门教程

1. Django简介 基本介绍 Django 是一个由 Python 编写的一个开放源代码的 Web 应用框架。 MVC 与 MVT 模型 MVC 模型 MVC 模式(Model–view–controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型&am…

北美码农面试流程,北美码农面试经验

听说有人还不知道OA是什么?HR电联跟Tech phone interview什么区别?Onsite interview有哪些关键点具体考些什么不清楚?下面为大家分享北美码农面试流程。 SDE面试流程主要包含: Online assessment HR contact email/phone Tech…

vue3中el-form表单校验,再点击提交按钮的时候通过校验才进行提交

vue3中el-form表单校验&#xff0c;再点击提交按钮的时候通过校验才进行提交 一、前言1、案例 一、前言 在 Vue 3 中&#xff0c;可以使用 Element UI 的 <el-form> 组件配合 <el-form-item> 来实现表单的必填项校验&#xff0c;并在提交时根据校验结果来决定是否…

PX4使用yolo仿真环境搭建

文章目录 前言一、修改机架sdf文件二、安装yolo三、运行 前言 ubuntu20.04 PX4 1.13.3 已配置好PX4 ROS gazebo环境 一、修改机架sdf文件 将双目相机加到仿真的iris机架上 修改下图文件 添加如下&#xff1a; <include><uri>model://stereo_camera</uri>…

Tensorflow2.0笔记 - AutoEncoder做FashionMnist数据集训练

本笔记记录自编码器做FashionMnist数据集训练&#xff0c;关于autoencoder的原理&#xff0c;请自行百度。 import os import time import tensorflow as tf from tensorflow import keras from tensorflow.keras import datasets, layers, optimizers, Sequential, metrics, …

Sql Sever删除数据库时提示数据库正在被使用,解决办法

报错解释&#xff1a; 当您尝试删除SQL Server中的某个对象&#xff08;如数据库、表等&#xff09;时&#xff0c;如果有程序或进程正在使用该对象&#xff0c;您可能会收到一个错误信息&#xff0c;提示该对象正被使用。这通常是因为还有一个或多个数据库连接仍然保持着对该…