总线(什么是南北桥?您都用过哪些总线?)

什么是总线?

        计算机系统中的总线(Bus)是指计算机设备和设备之间传输信息的公共数据通道,是连接计算机硬件系统内多种设备的通信线路,它的一个重要特征是由总线上的所有设备共享,因此可以将计算机系统内的多种设备以总线方式进行连接。它可以连接中央处理器(CPU)、内存、输入输出设备和其他各种外部设备。总线负责在这些组件之间传递控制信号、地址信息和数据。

总线的分类

地址总线(Address Bus)

        地址总线用于传递地址信息,指示数据在内存或其他设备的位置。

        地址总线的宽度决定了系统可以寻址的内存范围,即可以传递的地址数量。例如,一个32位地址总线可以寻址2^32个不同的内存地址。

数据总线(Data Bus)

        数据总线用于在计算机组件之间传递实际的数据。

        数据总线的宽度决定了每次数据传输的位数。例如,一个32位数据总线可以一次传输32位(4字节)的数据。

控制总线(Control Bus)

        控制总线用于传递控制信号,包括读写信号、时钟信号、中断信号等。

        控制总线协调各个组件之间的操作,确保数据在正确的时间和顺序传递。

总线的工作方式

总线请求阶段(Bus Request Phase)

        设备发出请求,表明其要使用总线进行数据传输。

总线占用阶段(Bus Arbitration Phase)

        如果多个设备同时请求总线,系统需要进行仲裁以确定哪个设备获得总线的使用权。

总线传输阶段(Bus Transfer Phase)

        获得总线使用权的设备可以在这个阶段进行数据传输。

        总线的性能直接影响计算机系统的整体性能。总线的宽度越大,每次数据传输的量就越大,但也需要更多的硬件支持。因此,在计算机设计中需要权衡总线的宽度和系统的成本、复杂度等因素。

总线的一些关键特点

        带宽(Bandwidth): 总线的带宽决定了它能够传输的数据量。更高的带宽通常意味着更快的数据传输速度。

        时序(Clocking): 总线的时序定义了数据何时可用以及何时应该被读取。时序同步是确保各个组件正确协同工作的关键。

        多总线系统(Multiple Bus System): 一些系统使用多个总线,如前端总线、后端总线等,以提高系统的整体性能。

        总线标准和协议: 不同的计算机系统和组件通常需要遵循一些共同的总线标准和协议,以确保它们可以正确地进行通信。

南北桥芯片结构

        南北桥(Northbridge和Southbridge)是计算机主板上的两个关键芯片组,它们起到协调和连接不同组件的作用。虽然随着技术的发展,南北桥的概念逐渐淡化,但仍然有一些系统采用类似的结构。

北桥(Northbridge)

        北桥是主板上的一个芯片,负责高速数据传输,主要连接处理器(CPU)、内存(RAM)、显卡(图形处理器)等性能较高的组件。

        北桥与CPU之间通过前端总线(FSB,Front Side Bus)或类似的连接进行通信。北桥的任务包括内存控制、图形接口等。

        随着技术的进步,一些集成显卡的系统将图形处理器整合到CPU中,使得北桥的功能逐渐减少,而新的处理器与内存之间的连接也逐渐不再使用前端总线。

南桥(Southbridge)

        南桥是主板上的另一个芯片,主要负责连接低速外设和各种I/O设备,例如硬盘、USB接口、声卡、网卡等。

        南桥通常包含了许多接口和控制器,用于管理和协调主板上的各种外部设备。这些设备通常需要较低的带宽和速度。

        南桥的任务包括硬盘控制、USB控制、声音控制、PCI总线管理等。

        在一些现代系统中,北桥和南桥的功能逐渐被集成到单一的芯片中,例如Intel的"Platform Controller Hub"(PCH)或AMD的"Promontory"。这种集成化的设计简化了主板的结构,减小了主板的物理尺寸,并提高了整体系统的性能和效率。

        总体而言,南北桥结构早期是为了解决各个组件之间不同速度和带宽需求而设计的,但随着技术的发展和集成度的提高,传统的南北桥结构正在逐渐演变或淡化。

单芯片结构

        单芯片结构指的是将原本需要多个芯片来实现的功能集成到一个单一芯片上的设计。这种集成化的设计有助于简化电路板布局、减小物理空间需求、提高整体系统性能,并减少功耗。

SoC(System-on-Chip)

        SoC是一种将整个计算机系统的所有核心组件(包括处理器、内存控制器、图形处理器、I/O控制器等)集成到一个单一芯片上的设计。SoC常见于嵌入式系统、移动设备(如智能手机和平板电脑)以及一些小型计算机系统。

        SoC的优势在于紧凑的设计、低功耗和高度集成的特性,同时也有助于提高系统的性能和响应速度。

PCH(Platform Controller Hub)

        PCH是Intel引入的一种单芯片结构,它集成了南桥的功能,包括I/O控制、USB控制、SATA控制、网卡等,使得主板上的芯片数量减少。

        PCH常与Intel处理器一同使用,构成了Intel平台的基本架构。

APU(Accelerated Processing Unit)

        APU是AMD提出的一种集成了CPU和GPU核心的单芯片设计。这种结构旨在提高处理器性能,尤其是图形处理性能。

        APU通常用于一些对图形性能要求较高的场景,如轻量级游戏和多媒体应用。

        这些单芯片结构的设计有助于提高系统的整体性能、降低成本,并使得电子设备更加紧凑和便携。然而,集成所有组件到一个芯片上也带来了一些挑战,如散热和热管理问题,因为多个功能单元在一个小封装内产生的热量需要有效地散发。

常见总线

前端总线(Front Side Bus,FSB)

        FSB是连接CPU和北桥芯片(或类似结构)的总线,负责传递数据、地址和控制信号。它是连接CPU与其他高速组件的重要通道。

内存总线(Memory Bus)

        内存总线是连接CPU与系统内存(RAM)之间的通道,负责传递内存地址和数据。内存总线的宽度影响了系统能够支持的内存容量和速度。

图形总线(Graphics Bus)

        图形总线用于连接图形处理器(GPU)和系统的其他部分。PCI Express(PCIe)是一种常见的图形总线标准,用于高性能图形卡的连接。

后端总线(Back Side Bus)

        后端总线用于连接CPU与高级缓存(L2缓存)之间,以提高数据访问速度。

系统总线(System Bus)

        系统总线是一个通用术语,通常指的是连接计算机主要组件(CPU、内存、I/O设备等)的总线系统。在过去的架构中,前端总线和后端总线合在一起也被称为系统总线。

I/O总线(I/O Bus)

        I/O总线用于连接CPU、北桥(或PCH)、南桥和各种输入输出设备(如硬盘、USB设备、网卡等)。常见的标准包括PCI(Peripheral Component Interconnect)和PCI Express。

ISA总线(Industry Standard Architecture)

        ISA是早期个人计算机上使用的总线标准,用于连接CPU、内存和外部设备。随着技术的发展,ISA总线逐渐被更快的总线标准所替代。

USB总线(Universal Serial Bus)

        USB是一种用于连接各种外部设备的串行总线标准,如打印机、键盘、鼠标、摄像头等。

SATA总线(Serial ATA)

        SATA是一种用于连接存储设备(如硬盘和光驱)的串行总线标准。

PCI Express总线(PCIe)

        PCI Express是一种高速串行总线标准,用于连接各种设备,包括图形卡、存储设备和扩展卡等。

FireWire(IEEE 1394)

        FireWire是一种高速串口总线标准,用于连接音视频设备、外部存储和其他多媒体设备。它支持热插拔和高带宽传输。

Thunderbolt

        Thunderbolt是一种基于PCI Express和DisplayPort的高速接口,支持数据传输和视频传输。它常用于连接外部硬盘、显示器和其他高性能外部设备。

HyperTransport

        HyperTransport是一种高速、点对点的串行总线标准,用于连接处理器、内存和其他芯片。它的设计旨在提供高带宽和低延迟的数据传输。

InfiniBand

        InfiniBand是一种用于高性能计算和数据中心互连的高速串行总线标准。它支持点对点和多点拓扑结构,提供低延迟和高带宽。

SPI(Serial Peripheral Interface)

        SPI是一种用于连接微控制器和外部设备的串行总线协议。它通常用于连接闪存、传感器和其他低带宽设备。

I2C(Inter-Integrated Circuit)

        I2C是一种串行总线协议,用于连接微控制器和其他数字设备。它支持多点连接和低速通信,适用于连接各种外设。

CAN(Controller Area Network)

        CAN总线是一种用于车辆和工业控制系统等领域的串行总线协议。它设计用于在不同设备之间进行实时通信。

UART(Universal Asynchronous Receiver-Transmitter)

        UART是一种用于串行通信的通用接口,通常用于连接计算机和串口设备,如调制解调器和串口打印机。

LIN总线(Local Interconnect Network)

        LIN总线是一种用于汽车电子系统的串行通信总线,主要用于连接车内的一些辅助设备,如门锁、窗户控制等。

FlexRay

        FlexRay是一种用于汽车电子系统的高性能实时通信总线,特别适用于需要高带宽和低延迟的应用,如电动汽车和高级驾驶辅助系统。

MIL-STD-1553

        MIL-STD-1553是一种军用飞行器和航空航天器上广泛使用的串行数据总线标准,用于连接各种飞行器系统和子系统。

RS-232(Recommended Standard 232)

        RS-232是一种串行通信标准,用于连接计算机和外部设备,如调制解调器、打印机等。尽管已经过时,但仍在某些应用中使用。

SPIFI(Serial Peripheral Interface with Flash Interface)

        SPIFI是一种结合了SPI和闪存接口的总线标准,通常用于连接微控制器和闪存存储器。

MIPI(Mobile Industry Processor Interface)

        MIPI是一组用于移动设备的通信接口标准,包括MIPI CSI-2(摄像头接口)、MIPI DSI(显示接口)等。

DOCSIS(Data Over Cable Service Interface Specification)

        DOCSIS是一种用于有线电视系统中的数据传输的标准,主要用于连接电缆调制解调器和网络提供商。

USB4

        USB4是USB标准的最新版本,支持更高的数据传输速率和更灵活的连接,与Thunderbolt 3兼容,使其更加多用途。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/258898.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spingboot3详解(全网最详细,新建springboot项目并详解各种组件的用法)

一.Spring Initializr创建向导 1.新建一个空项目 2.在新创建的空项目里,新建Module 3. 选择Spring Initializr 4.选择Spring Boot的版本3以上 5.创建好的一个项目结构 controller包是自己创建的 6.项目结构分析 spingboot主程序 package com.example.boot;impor…

因为 postman环境变量全局变量设置好兄弟被公司优化了!

postman环境变量、全局变量设置 在公司中,一般会存在开发环境、测试环境、线上环境等,如果需要在不 同的环境下切换做接口测试,显然我们需要把所有接口的域名进行修改,如果接 口测试用例较多,那么修改会非常费力&…

Java当中常用的算法

文章目录 算法二叉树左右变换数据二分法实现 冒泡排序算法插入排序算法快速排序算法希尔排序算法归并排序算法桶排序算法基数排序算法分治算法汉诺塔问题动态规划算法引子代码实现背包问题 KMP算法什么是KMP算法暴力匹配KMP算法实现 今天我们来看看常用的算法,开干。…

⭐ Unity里 用Shader 去做实时动态绿幕抠图

1.先看一下效果 a.这是背景图片 b.抠完图之后(这里用的是扣去白色的) 2.shader代码如下 Shader "UniversalChromaKey" {Properties{_MainTex("Base (RGB)", 2D) "white" {}_Sens("Sensibilidad", Range(0,.9)) .3_Cutoff("R…

使用DockerUI结合内网穿透工具轻松实现公网访问和管理docker容器

文章目录 前言1. 安装部署DockerUI2. 安装cpolar内网穿透3. 配置DockerUI公网访问地址4. 公网远程访问DockerUI5. 固定DockerUI公网地址 前言 DockerUI是一个docker容器镜像的可视化图形化管理工具。DockerUI可以用来轻松构建、管理和维护docker环境。它是完全开源且免费的。基…

线性回归实战

3.1 使用正规方程进行求解 3.1.1 简单线性回归 公式 : y w x b y wx b ywxb 一元一次方程,在机器学习中一元表示一个特征,b表示截距,y表示目标值。 使用代码进行实现: 导入包 import numpy as np import matp…

vim + ctags 跳转, 查看函数定义

yum install ctags Package ctags-5.8-13.el7.x86_64 already installed and latest version 创建 /home/mzh/pptp-master/tags.sh #!/usr/bin/shWORKDIR/home/mzh/pptp-masterfind ${WORKDIR} -name "*.[c|h]" | xargs ctags -f ${WORKDIR}/tags find /usr/inclu…

实现个微机器人的二次开发

请求URL: http://域名地址/scanJoinRoom 请求方式: POST 请求头Headers: Content-Type:application/jsonAuthorization:login接口返回 参数: 参数名必选类型说明wId是string登录实例标识url是string…

k8s引用环境变量

一 定义环境变量 ① 如何在k8s中定义环境变量 env、configmap、secret补充: k8s 创建Service自带的环境变量 ② 从pod属性中获取 kubectl explain deploy.spec.template.spec.containers.env.valueFrom关注: configMapKeyRef、fieldRef 和 resour…

解决typescript报错:找不到名称xxx

现象: 原因:在同时导入默认导出和命名导出时,默认导出必须放在命名导出之前 下面的就是原始文件: 默认导出指: export default导出类型, import时无需大括号 命名导出指: 仅有export关键字…

【华为数据之道学习笔记】1-2华为数字化转型与数据治理

传统企业通过制造先进的机器来提升生产效率,但是未来,如何结构性地提升服务和运营效率,如何用更低的成本获取更好的产品,成了时代性的问题。数字化转型归根结底就是要解决企业的两大问题:成本和效率,并围绕…

Qt 5.15.2 三维显示功能

Qt 5.15.2 三维显示功能 三维显示效果: .pro项目文件 QT core gui opengl 3dcore 3drender 3dinput 3dextrasgreaterThan(QT_MAJOR_VERSION, 4): QT widgetsCONFIG c17# You can make your code fail to compile if it uses deprecated APIs. # In ord…