为什么要进行在集中式总线仲裁中

总线仲裁_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!非破坏性总线优先级仲裁技术是什么意思_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
非破坏性总线优先级仲裁技术是什么意思
非破坏性总线优先级仲裁技术是什么意思
我有更好的答案
为您推荐:
其他类似问题
优先级的相关知识
换一换
回答问题,赢新手礼包在多处理器系统中,总线仲裁算法有哪些_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
在多处理器系统中,总线仲裁算法有哪些
我有更好的答案
Socket 939接口,支持1GHz的Hyper Transport。双核心并不是一个新概念,简单地说就是在一块CPU基板上集成两个处理器核心,并通过并行总线将各处理器核心连接起来,Intel和AMD都不约而同地祭起了双核心这面大旗:奔腾至尊版的双核+超线程架构让它具备同时四线程处理能力
  英特尔之所以在奔腾至尊版和奔腾D上采用共享前端总线的双核架构,还是出于双核架构自身的紧凑设计和生产进程方面的考虑,这种架构使英特尔能够迅速推出全系列的双核处理器家族,加快双核处理器的产品化,而且它带来的成本优势也大大降低了奔腾至尊版、奔腾D与现有主流单核处理器&&奔腾4系列的差价,有利于双核处理器在PC市场上的迅速普及。
  四、AMD双核心架构剖析
  从架构上来看,Athlon 64 X2除了多个&芯&外与目前的Athlon 64并没有任何区别。Athlon 64 X2的大多数技术特征、功能与目前市售的、基于AMD64架构的处理器是一样的,而且这些双核心处理器仍将使用1GHz HyperTransport总线与芯片组连接及支持双通道DDR内存技术。
  实际上Toledo核心就相当于是两个San Diego核心的Athlon 64处理器的集成,至于Manchester自然就相当于两个
Venice核心了&这也就是说,双核心的Athlon 64 X2处理器均将支持SSE3指令集。
  另外我们不难发现的是,AMD的台式双核心处理器的频率与其单核心产品基本上处于同一水平上&这一点与Intel非常不一样(Intel目前频率最高的桌面单核心处理器达到了3.8GHz,而其最高频率的双核心处理器只不过3.2GHz)。当然这并不难理解,因为Athlon 64处理器,特别是采用了90nm SOI工艺的Athlon 64处理器的发热量要比Intel的高频率的Prescott核心处理器要低不少,所以自然可以采用比较高的工作频率了(当然从频率的角度来看,Athlon 64 X2也还是低于Pentium D的)。
  由于Intel受发热量限制目前的双核心处理器最高只有3.2GHz,因此在性能上肯定要比AMD的 Athlon 64 X2要低一些&&不过Pentium D不如Athlon64 X2的地方并不仅仅只有这方面而已。在处理器的架构上AMD也有其独到之处,下图所示就是AMD的双核心处理器的架构示意图。
  AMD的双核心方案面临一个重要的问题,就是随着第二核心的出现,对内存与I/O带宽的资源将会出现争夺,如何解决好这个问题是AMD双核心处理器的性能的关键问题之一。与Pentium D不同的是,Athlon 64 X2的两个内核并不需要通过外部FSB通信这一途径。Athlon 64 X2内部整合了一个System Request Queue(SRQ)仲裁装备,每一个核心将其请求放在SRQ中,当获得资源之后请求将会被送往相应的执行核心,所有的过程都在CPU核心范围之内完成。
  AMD双核心强调是真正将两个核心崁入整合在一个硅晶内核上,可以真正发挥双核心效率,不像对手的产品事实上为两个Packet的设计,会有两个核心之间传输瓶颈的问题。因此Athlon 64 X2的架构要优于Pentium D架构,尤其是在高负载的多线程/多任务的环境下,AMD的处理器将会表现出比Intel的处理器更好的性能。
  此外,随着第二核心的出现,对内存与I/O带宽的资源将会出现争夺,如何解决好这个问题是AMD双核心处理器的性能的关键问题之一。AMD信引入了Crossbar控制器,这个全新的控制器结合优化的系统请求队列,可以有效的降低这个问题的危害性。
 AMD处理器集成的内存控制器在进化到双核心时代表现出来的优势更加明显,低延时的内存控制器使得对CPU的缓存的依赖也大幅减少,在这样的情况下,在日后过渡到多核心的时候,需要考虑的问题更多的是基于各个核心之间的连接。我们可以看到,两个核心所采用的L2缓存也是分别独享的,也就是两个L2缓存中保存的数据是一致的。
  实际的可利用容量和一个核心的L2缓存容量是 相同的&这一点和Intel一样。与Intel有所不同的是,AMD方案的两个核心之间的通信是通过处理器内部的Crossbar实现的。相比之下Intel的Pentium D处理器的核心之间的通信则是需要通过芯片组的MCH来进行&这显然比AMD的方案要带来更多的延迟时间。不过AMD的架构也并非十全十美,双核心处理器仍然只支持双通道DDR400内存无疑是一个有些令人遗憾的地方&两个处理器核心自然需要更大的内存带宽。要解决这个矛盾,只能使用全新的针脚设计,DDR2或许是一个不错的选择。
  Athlon 64 X2这样的设计还有一个好处,那就是如果打算支持新的双内核处理器的话,对旧平台而言唯一的要求就是升级到最新BIOS就OK了,这将大大降低平台的应用、升级成本。当然AMD沿用以前的内存控制器也是有很大的好处的,那就是双核心的Athlon 64 X2处理器可以在目前几乎所有的Socket 939主板上使用。这方面AMD有着Intel无可比拟的优势&因为以前的915/925主板并不能支持Intel的双核心处理器。
  此外,与Pentium D是通过降低频率来降低功耗不同,同样采用0.0
9微米生产技术的Athlon 64 X2似乎并不需要面临这样的问题。这都得益于AMD在Athlon 64 X2处理器上所采用的&Dual Stress Liner&应变硅技术。Dual Stress Liner技术是由AMD和IBM联合开发的,据称可以将半导体晶体管的响应速度提高24%。
  事实上,DSL很类似于英特尔在90nm生产技术中引入的应变硅技术。我们都知道,晶体管越微细化,运行速度就越高,但同时也会引发泄漏电流增加、开关效率降低,从而导致耗电和发热量的增加。而DSL通过向晶体管的硅层施加应力,同时实现了速度的提高与耗电量的降低。
  与Intel使用的应变硅不同,来自AMD和IBM的DSL能够被用于两种类型的晶体管:NMOS和PMOS(具有n和p通道)而无需使用极难获得的硅锗层,硅锗层会增加成本,并且有可能影响芯片的产量。 DSL这种双重性,让它比英特尔的应变硅更有效&DSL可以将晶体管的响应速度提升24%,而应变硅能提供的最大改进在15-20%。
  并且更重要的是,AMD和IBM 这项新技术对产量及生产成本并没有任何负面影响。由于在生产时无需使用新的生产方法,所以使用标准生产设备和材料便可迅速量产。另外,配合使用硅绝缘膜构造(SOI,绝缘体上硅)与应变硅,还可生产性能更高、耗电更低的晶体管。AMD工程师们表示,DSL和SOI一起结合可以让Athlon 64处理器的频率潜力有大约16%的增长。而Athlon 64 X2的初始频率与目前Athlon 64持平上也可以看到DSL技术的确很有效。
  当然,AMD也将在未来转移更先进的65nm生产线上,改进他们的内存控制器来对DDR2,DDR3和FB-DIMM等高性能内存提供支持,也将开始使用更快的HyperTransport 2.0总线,及更有效的节能降耗技术。
  五、双核心技术与超线程技术的区别
  超线程技术已经不是什么新鲜事物了,但普通用户可能与双核心技术区分不开。例如开启了超线程技术的Pentium 4 530与Pentium D 530在操作系统中都同样被识别为两颗处理器,它们究竟是不是一样的呢?这个问题确实具有迷惑性。
  其实,可以简单地把双核心技术理解为两个&物理&处理器,是一种&硬&的方式;而超线程技术只是两个&逻辑&处理器,是一种&软&的方式。
  从原理上来说,超线程技术属于Intel版本的多线程技术。这种技术可以让单CPU拥有处理多线程的能力,而物理上只使用一个处理器。超线程技术为每个物理处理器设置了两个入口-AS(Architecture State,架构状态)接口,从而使操作系统等软件将其识别为两个逻辑处理器。这两个逻辑处理器像传统处理器一样,都有独立的IA-32架构,它们可以分别进入暂停、中断状态,或直接执行特殊线程,并且每个逻辑处理器都拥有APIC(Advanced Programmable Interrupt Controller,高级可编程中断控制器)。
  虽然支持超线程的Pentium 4能同时执行两个线程,但不同于传统的双处理器平台或双内核处理器,超线程中的两个逻辑处理器并没有独立的执行单元、整数单元、寄存器甚至缓存等等资源。它们在运行过程中仍需要共用执行单元、缓存和系统总线接口。在执行多线程时两个逻辑处理器均是交替工作,如果两个线程都同时需要某一个资源时,其中一个要暂停并要让出资源,要待那些资源闲置时才能继续。因此,超线程技术所带来的性能提升远不能等同于两个相同时钟频率处理器带来的性能提升。可以说Intel的超线程技术仅可以看做是对单个处理器运算资源的优化利用。
  而双核心技术则是通过&硬&的物理核心实现多线程工作:每个核心拥有独立的指令集、执行单元,与超线程中所采用的模拟共享机制完全不一样。在操作系统看来,它是实实在在的双处理器,可以同时执行多项任务,能让处理器资源真正实现并行处理模式,其效率和性能提升要比超线程技术要高得多,不可同日而语。
  六、双核心处理器的适用范围
  目前,Windows XP专业版等操作系统支持双物理核心和四个逻辑核心,但这并不意味着所有软件对此都有优化。
  事实上大量的测试已经证明,无论是Intel还是AMD的双核心处理器,相对于其各自的同频率的单核心处理器而言,对于目前的普通应用例如多媒体软件、游戏和办公软件等等都没有任何性能提升,甚至可能还稍有降低,因为这些普通应用目前都还只是单线程程序,在处理器执行指令时实际上只有一个核心在工作,而另外一个核心则处于空闲状态帮不上忙。
  所以对普通用户而言,只要日常应用的程序仍然是单线程的话,双核心处理器实际上没有任何意义,反而还增大了购买成本。除非经常执行大运算量的多任务处理,例如在游戏的同时进行音视
频处理等等,这时双核心处理器才能真正发挥作用。
  目前最适合双核心处理器发挥威力的平台是服务器和工作站,这是因为其经常进行多任务处理,而且日常运行的大量程序都是多线程程序,例如图形工作站所使用的Adobe Photoshop和3D MAX等都是多线程程序。一般来说,在执行多任务处理和多线程程序时,双核心处理器要比同频率的单核心处理器的性能要高大约50%-70%,甚至在某些应用下性能几乎能提升100%。
  当然,随着双核心处理器的强势推出和逐渐普及,日后支持多线程的普通应用程序也会逐渐增多,对普通用户而言那时双核心处理器才会真正发挥作用。
  七、双核心处理器目前所存在的问题
  无论是Intel的Pentium D和Pentium EE,还是AMD的Athlon 64 X2处理器,都是简单地将两个物理内核&叠加&在一起,这必然带来晶体管数量的大幅度增加,双方都已经达到了两亿三千万个以上的晶体管;带来的直接后果就是由泄漏电流引起的功耗大幅度增加,就算是采用了节能技术其发热量也居高不下,从而导致双核心处理器相对于单核心处理器而言频率提升更加困难。
  而且由于目前的制造工艺的限制,双核心处理器的良品率要比单核心处理器的低,这必然会带来成本的居高不下,所以目前的双核心处理器的价格都太贵了,距离普及还差得很远。当然,随着处理器核心架构和制造技术的发展,今后必然会解决目前所遇到的问题。
相关文章
电脑ATX电源各管脚的功能与作用
开始→运行→命令集锦
BIOS(basic input output sysstem)设置详解
黑客常用的攻击方法
电脑VGA接口转电视PAL制视频转换电路
VGA信号转换为彩色电视机PAL和NTSC制式信号
更多&&&,性能没有质的飞跃。由于频率难于提升。不过,在台式机还不可能在短期内就支持4个内核和更多内核的现实情况下、最简单,而且在当初Athlon 64设计时就为双核心做了考虑,但是仍然需要仲裁器来保证其缓存数据的一致性。AMD在此采用了SRQ(System Request Queue:单核奔腾4处理器(左)和双核奔腾D处理器(右)微架构示意图
  此外,英特尔奔腾至尊版有一个独门&绝活&rdquo,直接在处理器内部就可以完成。
  基于这种设计思路,不同的是英特尔将双核争用前端总线的任务仲裁功能放在了芯片组的北桥芯片中。事实上、最容易实现的一种类型。其实在RISC处理器领域;s升级3Gb/s,进一步增加了磁盘阵列RAID 5 和 RAID 10的支持。
图2,所以在主板芯片组的选择上要比Intel双核心处理器要宽松得多,甚至可以说与主板芯片组无关。理论上来说,任何Socket 939的主板通过更新BIOS都可以支持Athlon 64 X2首页
电子元器件资料
无线收发电路&#47.5Gb&#47。而且CMP与SMT(同时多线程,都先后推出了基于双核架构的UltraSPARC以及PA-RISC芯片,但此时双核心处理器架构还都是在高端的RISC领域,直到前不久Intel和AMD相继推出自己的双核心处理器;离得越近、走得越快&rdquo。
图1:基于Smithfield衍生出的奔腾至尊版和奔腾D,主要区别就在于奔腾至尊版支持超线程,而奔腾D屏蔽了超线程功能,其型号按照PR值分为3800+至4800+等几种,同样采用0.09微米制程.8GHz的产品以后只得宣布停止4GHz的产品计划;而AMD在实际频率超过2GHz以后也无法大幅度提升,3GHz成为了AMD无法逾越的一道坎;,那就是双核心加超线程的架构,这种架构可同时处理四个线程,这让它在多任务多线程的应用中具有明显优势。
  与Intel的双核心处理器不同的是,由于AMD的Athlon 64处理器内部整和了内存控制器、双核心的由来
  所谓双核心处理器;遥控
充电器电路
电动车相关
开关电源/逆变专题
 一。早在上个世纪末。对普通消费者而言,这样可以保护已有的投资,而不必象Intel双核心处理器那样需要同时升级主板
  三、Intel双核心构架剖析
  AMD的&真伪双核论&虽无法立足,但它点出的英特尔双核处理器可能出现前端总线资源争抢的问题是否真是实情呢?对此,系统请求队列)技术。
  按照&ldquo,在工作的时候每一个核心都将其请求放在SRQ中,当获得资源之后请求将会被送往相应的执行核心,所以其缓存数据的一致性不需要通过北桥芯片,其优点是缓存数据延迟得以大大降低。
  AMD目前的桌面平台双核心处理器是Athlon 64 X2,只要有高带宽的前端系统总线,Intel在发布3,增加了对更高速DDR2内存的支持,对SATA(串行ATA)的支持速度增加了一倍由1,而只是CMP(Chip Multi Processors,单芯片多处理器)中最基本,对于双核处理器的台式机来说带来的延迟和性能损失也是微乎其微的。
  英特尔945和955系列芯片组目前可提供800MHz(用于目前的奔腾D)和1066MHz(用于奔腾至尊版)前端总线;的集成电路设计原则,英特尔表示,双核心才真正走入了主流的X86领域,随后是Sun和惠普公司,当然也都支持双通道DDR内存技术。
Athlon 64 X2
  由于AMD双核心处理器的仲裁器是在CPU内部而不是在北桥芯片上,那肯定会造成资源争抢,但对于双核来说,这个带宽已经足够了。英特尔认为目前双核系统中的主要瓶颈还是内存、I/O总线和硬盘系统,如果是供一个四核处理器使用,英特尔超线程就是一种SMT技术)的结合是业界公认的处理器重要发展趋势,最早推出双核处理器的IBM也是这一趋势的推动者。
图3,最重要的原因是原有的普通单核心处理器的频率难于提升。与Intel的双核心处理器相比,把这些功能组件集成在处理器中确实可以提高效率,减少延迟。
  MCM模块内封装了4个Power4芯片,共有8个CPU核心
  Intel和AMD之所以推出双核心处理器。
Sun UltraSPARC IV双核处理器
  二、AMD双核心处理器的简介
  AMD目前的桌面平台双核心处理器代号为Toledo和Manchester,基本上可以简单看作是把两个Athlon 64所采用的
Venice核心整合在同一个处理器内部,每个核心都拥有独立的512KB或1MB二级缓存,两个核心共享Hyper Transport,从架构上来说相对于目前的Athlon 64架构并没有任何改变,英特尔在945和955系列芯片组中加强了对PCI-Express总线的支持:AMD并不了解我们的产品和我们将来产品的技术走向,对自己的竞争对手及其产品妄加猜测和的行为是不值得赞赏的。AMD曾经指出奔腾至尊版是两个核心共享一个二级缓存,这就是一个非常明显的错误,奔腾至尊版和奔腾D都是每个核心配有独享的一级和二级缓存,惠普和IBM就已经提出双核处理器的可行性设计。IBM 在2001年就推出了基于双核心的4处理器,提升这些模块的速度才能使整个系统的计算平台更加均衡,双核心甚至多核心都早已经实现。CMP最早是由美国斯坦福大学提出的,其思想是在一块芯片内实现SMP(Symmetrical Multi-Processing,就算把这些任务仲裁组件外置。正是在这种情况下,为了寻找新的卖点,对称多处理)架构,且并行执行不同的进程
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包为了解决多个主设备同时竞争总线控制权,必须具有总线仲裁部件,以某种方式选择其中一个主设备作为总线的下一次主方。对多个主设备提出的占用总线请求,一般采用优先级或公平策略进行仲裁。
按照总线仲裁电路的位置不同,仲裁方式分为集中式仲裁和分布式仲裁两类。
集中式仲裁
集中式仲裁中每个功能模块有两条线连到中央仲裁器:一条是送往仲裁器的总线请求信号线
,一条是仲裁器送出的总线授权信号线
链式查询方式
链式查询方式的主要特点:总线授权信号
串行地从一个
接口传送到下一个
接口。假如
到达的接口无总线请求,则继续往下查询;假如
到达的接口有总线请求,
信号便不再往下查询,该
接口获得了总线控制权。离中央仲裁器最近的设备具有最高优先级,通过接口的优先级排队电路来实现。
链式查询方式的优点
只用很少几根线就能按一定优先次序实现总线仲裁,很容易扩充设备。
链式查询方式的缺点
对询问链的电路故障很敏感,如果第
个设备的接口中有关链的电路有故障,那么第
个以后的设备都不能进行工作。查询链的优先级是固定的,如果优先级高的设备出现频繁的请求时,优先级较低的设备可能长期不能使用总线。
计数器定时查询方式
总线上的任一设备要求使用总线时,通过
线发出总线请求。中央仲裁器接到请求信号以后,在
”的情况下让计数器开始计数,计数值通过一组地址线发向各设备。每个设备接口都有一个设备地址判别电路,当地址线上的计数值与请求总线的设备地址相一致时,该设备
线,获得了总线使用权,此时中止计数查询。
每次计数可以从“
”开始,也可以从中止点开始。如果从“
”开始,各设备的优先次序与链式查询法相同,优先级的顺序是固定的。如果从中止点开始,则每个设备使用总线的优先级相等。
计数器的初值也可用程序来设置,这可以方便地改变优先次序,但这种灵活性是以增加线数为代价的。
独立请求方式
每一个共享总线的设备均有一对总线请求线
和总线授权线
。当设备要求使用总线时,便发出该设备的请求信号。中央仲裁器中的排队电路决定首先响应哪个设备的请求,给设备以授权信号
独立请求方式的优点:响应时间快,确定优先响应的设备所花费的时间少,用不着一个设备接一个设备地查询。其次,对优先次序的控制相当灵活,可以预先固定也可以通过程序来改变优先次序;还可以用屏蔽
某个请求的办法,不响应来自无效设备的请求。
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题
浙ICP备号-2
扫一扫,把题目装进口袋CAN总线仲裁机制
> CAN总线仲裁机制
CAN总线仲裁机制
最近在学习CAN总线,原先一直不太明白,若有A,B2个节点同一时刻一起向总线上发送数据,CAN总线是怎么仲裁的,来让A,B其中一个节点退出,保证高优先级的节点优先传输,今天又在网上查了一些资料,总算搞明白了一些。在CAN总线上,若同一个时刻,既有节点向总线上发送隐形电平(1),也有节点发送显性电平(0),那么此时总线上表现出来的为显性(0)。本文引用地址:当总线空闲时,有多个节点同时需要发送报文,那么每个节点的发送器将会对发送位的电平和被监控的总线电平做比较,如果电平相同,那么该节点可以继续发送,如果发送的为一&隐性&电平(1),但是监控到一&显性&电平(0),那么该节点失去仲裁,必须退出发送状态,只到下一次总线空闲的时候在参与总线的仲裁竞争。由以上也可以看出,当有多个节点同时争夺总线的控制权,ID最小的那个节点将会胜出,所以在CAN总线上,节点的ID越小,优先级越高。先列举2种特殊情况,根据仲裁来判断优先级。1.若在同一时刻,标准格式的报文与扩展格式的报文同时抢占总线,且它们的基础ID相同,则发标准格式的报文节点就会PK成功。这是因为扩展格式在基本ID后,紧接着是SRR位,与IDE位,且这两位都是隐性位。而在标准格式中,这两位分别对应的位为RTR与r1,其中RTR既可以为隐性位,也可以为显性位,,但是r1必须为显性位。由仲裁规则可以此时标准帧必定胜出。2.同理,如果在同一时刻,具有相同格式,且具有相同ID的数据帧与远程帧争夺总线控制权,那么数据帧必定胜出。因为RTR显性表示数据帧,隐性表示远程帧。今天又发现了一个问题,前几天也是在21IC的论坛上看见有这样一条帖子,上面说如果有2个节点具有相同的ID,同时向总线上发送不同的数据帧,那么这两个节点将会继续仲裁数据场,只到有一方退出。开始我也是这样认为的,但是下午在看到CAN-bus规范V2.0上,关于应答场(ACK)部分的时候,想到了, 如果真是如上所述,就会出现一种比较奇怪的现象:即如果总线上,只有A,B2个节点,当前只有A节点发送报文,B节点再接收,按照以上的观点,那么将会发生什么呢?在应答场(ACK)应答间隙(ACK SLOT)的时候,A节点将会发送一个&隐性&位(1),但是同时,B节点却会发送一个&显性位&(0)来以示应答(这里假设B节点正确接收到有效的报文),那么此时总线上表现出来就是&显性&(0)了。但是A却是发送的是&隐性&(1)啊,那么按照上述说法,此时A节点就要退出总线了,也就不在发送应答界定符(ACK DELIMITER)(显性1),了,此时总线上就会一直保持显性(0)状态,只到位错误的发生。因此,以上说法是不成立的,其实由CAN-bus规范V2.0的P8页上有如下语句:ArbitrationWhenever the bus is free, any unit may start to transmit a message. If 2 or more unitsstart transmitting messages at the same time,the bus access conflict is resolved bybitwise arbitration using the IDENTIFIER. The mechanism of arbitration guarantees thatneither information nor time is lost. If a DATA and a REMOTE with thesame IDENTIFIER are initiated at the same time, the DATA prevails over theREMOTE . During arbitration every transmitter compares the level of the bittransmitted with the level that is monitored on the bus. If these levels are equal the unitmay continue to send. When a &recessive& level is sent and a &dominant& level ismonitored (see Bus Values), the unit has lost arbitration and must withdraw withoutsending one more bit.由以上红色部分可知,参与逐位仲裁的位只有仲裁场!!!那么如果有2个节点具有相同的仲裁场,但是他们的数据场不同,将会发生什么呢?我感觉可能在数据场之间可能会产生位错误(Bit Error),接收完CRC序列后,可能会发生一个应答错误,或者一个CRC错误。
分享给小伙伴们:
我来说两句……
最新技术贴
微信公众号二
微信公众号一

我要回帖

更多关于 can总线仲裁机制 的文章

 

随机推荐