网上有关“系统总线”话题很是火热,小编也是针对系统总线寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。
朋友:
前端总线 FSB
总线是将信息以一个或多个源部件传送到一个或多个目的部件的一组传输线。通俗的说,就是多个部件间的公共连线,用于在各个部件之间传输信息。人们常常以MHz表示的速度来描述总线频率。总线的种类很多,前端总线的英文名字是Front Side Bus,通常用FSB表示,是将CPU连接到北桥芯片的总线。选购主板和CPU时,要注意两者搭配问题,一般来说,如果CPU不超频,那么前端总线是由CPU决定的,如果主板不支持CPU所需要的前端总线,系统就无法工作。也就是说,需要主板和CPU都支持某个前端总线,系统才能工作,只不过一个CPU默认的前端总线是唯一的,因此看一个系统的前端总线主要看CPU就可以。
北桥芯片负责联系内存、显卡等数据吞吐量最大的部件,并和南桥芯片连接。CPU就是通过前端总线(FSB)连接到北桥芯片,进而通过北桥芯片和内存、显卡交换数据。前端总线是CPU和外界交换数据的最主要通道,因此前端总线的数据传输能力对计算机整体性能作用很大,如果没足够快的前端总线,再强的CPU也不能明显提高计算机整体速度。数据传输最大带宽取决于所有同时传输的数据的宽度和传输频率,即数据带宽=(总线频率×数据位宽)÷8。目前PC机上所能达到的前端总线频率有266MHz、333MHz、400MHz、533MHz、800MHz几种,前端总线频率越大,代表着CPU与北桥芯片之间的数据传输能力越大,更能充分发挥出CPU的功能。现在的CPU技术发展很快,运算速度提高很快,而足够大的前端总线可以保障有足够的数据供给给CPU,较低的前端总线将无法供给足够的数据给CPU,这样就限制了CPU性能得发挥,成为系统瓶颈。显然同等条件下,前端总线越快,系统性能越好。
外频与前端总线频率的区别:前端总线的速度指的是CPU和北桥芯片间总线的速度,更实质性的表示了CPU和外界数据传输的速度。而外频的概念是建立在数字脉冲信号震荡速度基础之上的,也就是说,100MHz外频特指数字脉冲信号在每秒钟震荡一万万次,它更多的影响了PCI及其他总线的频率。之所以前端总线与外频这两个概念容易混淆,主要的原因是在以前的很长一段时间里(主要是在Pentium 4出现之前和刚出现Pentium 4时),前端总线频率与外频是相同的,因此往往直接称前端总线为外频,最终造成这样的误会。随着计算机技术的发展,人们发现前端总线频率需要高于外频,因此采用了QDR(Quad Date Rate)技术,或者其他类似的技术实现这个目的。这些技术的原理类似于AGP的2X或者4X,它们使得前端总线的频率成为外频的2倍、4倍甚至更高,从此之后前端总线和外频的区别才开始被人们重视起来。此外,在前端总线中比较特殊的是AMD64的HyperTransport。
系统总线
微型计算机都采用总线结构。所谓总线就是用来传送信息的一组通信线。微型计算机通过系统总线将各部件连接到一起,实现了微型计算机内部各部件间的信息交换。一般情况下,CPU提供的信号需经过总线形成电路形成系统总线。系统总线按照传递信息的功能来分,分为地址总线、数据总线和控制总线。这些总线提供了微处理器(CPU)与存贮器、输入输出接口部件的连接线。可以认为,一台微型计算机就是以CPU为核心,其它部件全”挂接”在与CPU相连接的系统总线上。这种总线结构形式,为组成微型计算机提供了方便。人们可以根据自己的需要,将规模不一的内存和接口接到系统总线上,很容易形成各种规模的微型计算机。系统总线在微型计算机中的地位,如同人的神经中枢系统,CPU通过系统总线对存贮器的内容进行读写,同样通过总线,实现将CPU内数据写入外设,或由外设读入CPU。
需要理解的是:地址总线是专门用于传递地址信息的,它必定是由CPU发出的。因此是单方向,即由CPU发出,传送到各个部件或外设,每个存储单元都有一个固定的地址编码,一个外部设备则常常有多个地址编码,在一台微型机中所有地址编码都是不相重合的.8位微型机中,地址总线16条,最大存储器编码有=64K个,而16位微型机的地址总线是20条,最大内存编码为=1M个。数据线用来传送数据信号,它是双向的,即数据既可以由CPU送到存储器和外设,也可以由存储器和外设送到CPU。数据总线的位数(也称总线宽度)是微型计算机的一个重要指标.它与CPU的位数相对应。但数据的含义是广义的,数据线上传送的信号不一定是真正的数据,可以是指令码、状态量、也可以是一个控制量。控制总线是用于传送控制信号的,其中包括CPU送往存储器和输入/输出接口电路的控制信号如读信号、写信号、中断响应信号、中断请求信号、准备就绪信号等。从前图可以看出,微型计算机实质上就是把CPU、存储器和输入/输出接口电路正确的连接到系统总线上,而计算机应用系统的硬件设计本质上是外部设备同系统总线之间的总线接口电路设计问题,这种总线结构设计是计算机硬件系统的一个特点。有关系统总线的详细介绍见本章第三节。由于上述的总线是用来实现微型计算机内部各部件之间信息交换的,所以系统总线也称为微型计算机的内(部)总线。与内总线相对应的还有一个外(部)总线概念。外部总线是指用于实现计算机同计算机,或计算机同其它外部设备之间信息交换的信号传输线
取地址,虽然是地址,但是cpu在取的时候只是数儿而已,所以是用数据总线
usb主要是通信功能,数据功能,通电……不至于
总线就是机器、部件、机器部件彼此通信的通道
分为串行通讯(单条1位宽,一位一位按照顺序分时传送)、并行通讯(比如八条线)
并行通讯适用于近距离的,前者是远距离,都是距离越远效率越低,短距离内并行数据速率高
系统总线(数据总线)可以传输:指令、操作数(其实是一回事儿)
进入cpu的只能是数据线
中断类型号:从外设到cpu,还是从数据总线进去的,转中断处理
握手信号:控制总线来管理(层次更低)
tcp有链接,必须握手
udp无连接
cpu插板
引脚(就是一个通道或者说是接口吧)(连接主线的接入点)
主存插板(内存条)
io插板
bus就在pcd板内,线路板的作用归结集成到一起
很多已经直接将对应的芯片安装在主板上,很多插卡已经做成了专用芯片,减少了插槽,使其结构更加合理
机械特性
1.机械连接方式
电气特性
2.每一根线上传输信号的方向和有效电平范围,cpu发出的是输出,送入的输入,地址总线是单向输出线,数据总线是双向传输线,高电平是1,低电平是0,控制总线都是单向,有输入和输出
功能特性
3.每根传输线的功能,地址总线指出地址码,数据总线传递数据,控制总线发出控制信号(向或是从cpu发出的)
时间特性
4.总线中的一根什么时间内有效,有效时序
总线宽度:数据线的根数
总线带宽:单位时间总线上传输的数据的位数,也即是每秒传输信息的字节数
标准传输率:每秒传输的最大字节数
时钟同步/异步:同步或者不同步(与时钟)
总线复用:分时复用地址线和数据线(地址接收,数据接收,数据发送)(归根结底是因为接收发送的借口复杂)(也就是地址线和数据线用一组物理线路)
信号线数:地址线、数据线和控制线的总和
总线控制方式:并发、自动、仲裁(处理同时请求)、逻辑、计数
负载能力:可以连接的扩增电路板的数量
pcie、usb、agp、rs232是常见的总线
crt显示器
usb:即插即用,带电操作,热插拔
级联方式连接多台外设,一转多
通信总线,连接不同外设
同时只能传输一位数据(因为是串行的)
存储总线可支持突发传送方式(运用局部性访问一部分地域,快于随机访问(只是一个字节))(burst)
总线之间通过桥接器相连(控制器)
pci是串行
多个部件同时提出总线请求——总线判优控制——仲裁
bg——总线同意
br——总线请求
bs——总线忙
有无控制功能可以分为主设备和从设备
总线判优控制分为集中式和分布式,前者将控制逻辑集中在一处,后者将控制逻辑分散在与总线连接的各个部件设备上
1链式查询中距离控制部件最近的设备具有最高的优先级,只需几根线就能实现优先次序,容易扩充设备,但对电路设备敏感,优先级别低的设备很难获得请求
2计时器定时查询,br总线请求,总线控制部件接收到br请求信号后,其计数器开始计数,通过地址线向设备发出地址信号,当某个请求占用总线的设备地址与计数值一致时就获得总线使用权,计数可以从0开始,优先次序被固定就不变,也可以从上一次终点开始,即循环方法,此时设备使用总线的优先级相等,初始值也可以从程序设置,对故障容错高
3独立请求方式
设备请求时就发送信号,总线控制部件中有一排电路,可根据优先次序确定响应设备请求,响应速度快,优先次序控制灵活,但是控制线数量多,复杂
总而言之是链式是两根,计数器查询是 logn(允许接纳的最大设备数),独立请求是 2n
先发送地址,然后是读取允许的命令,然后是读数据(这些都是发起),最后有结束时刻
发送地址,把数据放在总线上,开始读取,但是要维持数据,写就是向低速设备上写
连续的时候只发起一个地址,其他就是读的操作(操作要分开)
众多部件争夺总线使用权的时候就应该是按照优先等级来解决,在通信时间上就应该按照分时方式来处理,就是获得使用权的先后顺序
一次总线操作的时间就称之为总线操作,分为几个阶段
1.申请分配阶段,由需要使用的模块提出申请,然后总线的仲裁机构决定
2.寻址阶段,取得了使用权的模块通过总线发出本次要访问的地址和有关命令,启动从模块(也就是目标)
3.传数阶段,主模块和从模块进行数据交换,这个是经由数据总线
4.结束阶段,所有的主模块信息从系统总线上撤除,也就让出了总线使用权
解决问题:如何让双方获知传输开始结束,通信双方如何协调配合,
1.同步通信
通信双方由统一时标控制数据传送称为同步通信,所谓时标,由cpu的总线控制部件来发出,送到总线的所有部件上,也可以由各自的时序发生器来发出,但是必须由总线控制部件发出的时钟信号对其进行同步
cpu在t1上升沿发出了地址信息,在t2上升沿发出了读命令(与地址信号相符合的输入设备按照命令进行一系列内部操作,且必须在t3上升沿到来之前将cpu所需数据发送到数据总线上);t3周期内将数据线上的信息送到其内部寄存器中,t4上升沿撤销读命令(输入设备不再传送数据,并且撤销对数据总线的驱动)
t1:主模块发地址
t2:主模块发读命令(提供数据)
t3:从模块提供数据(主模块提出写命令,从模块在规定时间内将数据总线上的数据写到地址总线所指明的单元中)
t4:主模块撤销命令,从模块撤销数据(主模块撤销数据和命令)
优点是规定明确、统一,配合简单一致,缺点是主从指甲你强制性同步,且必须在限定时间内完成规定的要求,不同速度必须迁就慢速度,影响工作效率
同步通信一般用于总线长度较短,各部件存取时间一致的场合
这种总线系统中,传输周期越短,数据线位数直接影响传输率
2.异步通信
克服了同步通信的缺点也就是它允许各个模块的速度不一致,没有公共的时钟标准,不要求所有的部件严格的统一操作时间,采用应答方式(握手),主模块发出请求信号时要等待从模块反馈回来的响应信号,再开始通信,但是需要在主从之间加上应答线
(1)不互锁方式
主模块发出请求信号后,不必等待接收从模块的回答信号,而是经过一段时间,确认从模块已经收到请求信号后,便撤销请求信号;从模块接收到了请求信号之后,在条件允许的时候发送回答信号,并且经过一段时间(这段时间随设备的不同而不同)确认主模块已经收到了回答信号之后,自动撤销回答信号,也就是没有互锁关系
比如cpu向着主存写信息需要先后给出地址信号、写命令、写入数据就是这种方式
(2)
主模块发出请求信号,必须等待接到从模块的回答信号之后再撤销请求信号,有互锁关系,从模块在接收到了请求信号之后发出回答信号,但是不必等待获知主模块的请求信号已经撤销,而是隔一段时间之后自动撤销其回答信号,没有互锁关系,也就是说主模块受到从模块的锁定而后者不必受到前者的锁定,就称为是半互锁方式
比如多机系统中某个cpu需要访问共享存储器(供所有的cpu访问的存储器),cpu发出访存命令之后必须收到来自于存储器未被占用的回答信号才能真正进行访存操作(但是共享存储器因为比较屌就不需要)
(3)
主模块发出请求信号,必须等从模块的回答再撤销,后者也是,这即是全互锁,在网络通信中,通信双方采用的就是这种方式。
异步通信可以用于并行传送和串行传送
半同步通信
保留了同步通信的基本特点,地址命令数据信号的发出时间都严格参照系统时钟的某个前沿开始,接收方都采用系统时钟后沿来进行判断识别,也像异步通信一样允许不同速度的模块和谐工作,就增设了一条wait响应信号线,采用插入时钟等待周期的措施来协调通信双方的配合问题
主模块:t1地址,t2命令,t3传输数据,t4结束传输,
但是从模块速度慢无法在t3提供数据,就必须在t3之前通知主模块给出低电平信号,插入一个等待周期tw(与时钟周期同宽度),不立即从数据线上取数,若是还是低就再插,
t1:主模块发出地址信息
t2:主模块发出命令
t3w:低电平进入等待
t3:从模块提供数据
t4:主模块撤销读命令,从模块撤销数据
适用于系统工作速度不高但是又包含了许多工作速度差异较大的设备组成的简单系统,比起异步通信简单,在全系统内各模块在统一的系统时钟控制下同步工作,可靠性高,同步结构较为方便,缺点是对于系统时钟频率要求不能太高,所以整体速度慢
忙碌是所有灵感和可能性的敌人,身为一个健全健康的人,我们应该允许自己赋予自己以“空闲”的权利,否则的话,我们就跟慌不择路的行尸走肉没有任何区别
4.分离式通信
以上三种通信方式都是从主模块发出地址和读写命令开始,直到数据传输结束,在整个传输周期中,系统总线的使用权完全由占有使用权的主模块和由它所选定的从模块占据,进一步分析读命令传输周期,发现除了申请总线这一阶段,其余时间主要花费在3方面
1.主模块通过传输总线向从模块发送地址和命令
2.从模块按照命令进行命令进行读数据的必要准备
3.从模块经过数据总线向着主模块提供数据
由2可见,对于系统总线,从模块内部读数据过程没有实质性的信息传输,总线是空闲的,为了克服利用,在大型计算机系统中,总线的负载已处于饱和状态,充分挖掘系统总线每个瞬间的潜力,对于提高系统性能能够起到极大的作用,为此人们又提出了分离式的通信方式,使一个传输周期分解为两个子周期,第一个周期中,主模块a在获得总线使用权后将命令地址和其他相关信息包括编号发布到系统总线上(当有多个主模块的时候这个编号就很重要了),经过总线传输之后,就由相关的模块b接收下来,这个发布信息只占用很短的时间,发送之后立即放弃总线使用权,以便其他模块使用,在第二周期中,b模块收到相关信号后,选择译码读取,将所需数据准备好,申请总线使用权,获准之后就将a的编号,b的地址,a所需的数据等送到总线上,由a接收,两个周期都是单向的信息流,每个模块都是主模块
特点
1.各模块都需要提出申请
2.得到总线使用权之后必须在限定的时间内向着对方发送信息,采用同步方式,不再等待对方的回答信号
3.准备数据的过程中都不占用总线,可以接受其他模块的请求。
4.占用的时候都在做有效工作,发送命令或者是数据,没有等待,充分利用了占用,实现了总线在多个主、从模块间进行信息交叉重叠并行式传送
终于到了这里了,话说令我震惊的是一节课的内容我竟然花了足足有三四天的时间来整理笔记,但是同时我也能够明显地感觉到,现在对于知识的学习效率要比起以前高得多,以前总是要不做要不不做,总是没有模糊的时候,但是现在,却是能够放慢自己的节奏,以前觉得自己每一天活完了之后都看不到第二天的太阳,现在却不再抱有恐惧
《狐妖小红娘》中南国皇帝说过一句话:“年轻人不喜欢吃苦,只会拼命”
我想背后的意思就是,接受没有奇迹的生活吧,只有接受暂且苟且的现在,未来才有期望的价值。
今天来复习最后一点知识也就是关于总线结构的地方。
通常分为单总线结构和多总线结构
1.单总线结构
将cpu、主存、io设备都挂在一组总线上,允许彼此之间直接交换信息,也便于扩充,所有的传送都通过这组,极易形成计算机瓶颈,也不允许两个以上部件同时传输信息,会影响工作效率的提高
被小型微型计算机使用
在外部设备随着种类数量变多而对数据传输数量和速度要求变高的时候,如果仍然采用单总线结构,总线发出的控制信号依次到达很多个设备延迟时间就会影响工作效率,在数据传输量和速度要求不高的情况下,增加总线宽度和提高传输速率来解决,但是要求高的时候只能使用多总线结构
2.多总线结构
双总线结构,将io设备分离出来,通过通道与总线相连,cpu将一部分功能给通道,具有管理功能,完成外部设备与主存间的数据传送,用于大中型计算机将io设备分类,主存总线用于cpu和主存之间传输,io总线供应cpu和io设备传递信息,dma用于高速io设备,任意时刻只能使用一种总线,主存和dma不能同时对主存进行存取,io总线只有cpu执行io指令时用到
或者:
处理器与cache之间有局部总线,将两者与设备连接(局部io控制器),cache也直接连接到系统总线上,就可以直接与主存交换信息,io设备与主存也不必通过cpu,而是扩展总线,通过扩展总线上的各类接口与io设备相连,可以支持两种总线之间的信息传递,效率提高
四总线结构(反正你要玩儿死我是吧!)
增加了一条高速总线,挂接了一些高速io设备,通过cache控制机构中的高速总线或是高速缓冲器与系统总线和局部总线连接,使得这些高速设备与cpu更密切,而低速依然是扩展总线,并且由控制之下与高速总线相连,高速设备可以很少依赖又更贴近cpu,各自的效率提高,cpu、高速总线、各自信号线定义可以完全不同,改变结构也不会影响高速总线的工作
关于“系统总线”这个话题的介绍,今天小编就给大家分享完了,如果对你有所帮助请保持对本站的关注!