从请求总线到完成总线使用的操作序列称为总线事务(Bus transaction),它是在一个总线周期中发生的一系列活动。典型的总线事务包括请求操作、裁决操作、地址传输、数据传输和总线释放。

总线

总线(Bus)是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束, 按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和控制总线,分别用来传输数据、数据地址和控制信号。总线是一种内部结构,它是cpu、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统。在计算机系统中,各个部件之间传送信息的公共通路叫总线,微型计算机是以总线结构来连接各个功能部件的。

总线事务造价信息

市场价 信息价 询价
材料名称 规格/型号 市场价
(除税)
工程建议价
(除税)
行情 品牌 单位 税率 供应商 报价日期
CAN总线线 TX6625 查看价格 查看价格

13% 深圳市泰和安科技有限公司
总线联动操作卡 查看价格 查看价格

13% 无锡蓝天电子股份有限公司(湖州市厂商期刊)
CAN转总线网关 TX3253 查看价格 查看价格

13% 深圳市泰和安科技有限公司
总线联动操作卡 查看价格 查看价格

13% 无锡蓝天电子股份有限公司(湖州市厂商期刊)
总线模块 HJ-7051 查看价格 查看价格

13% 上海鸿真电子有限公司(湖州市厂商期刊)
总线式无线网关 TX3625 查看价格 查看价格

13% 深圳市泰和安科技有限公司
总线 ZN-RVS-2×1.5 查看价格 查看价格

m 13% 深圳凌宇线缆有限公司
总线终端适配器 TX3240 查看价格 查看价格

13% 深圳市泰和安科技有限公司
材料名称 规格/型号 除税
信息价
含税
信息价
行情 品牌 单位 税率 地区/时间
总线隔离模块 查看价格 查看价格

湛江市2021年3季度信息价
总线隔离模块 查看价格 查看价格

湛江市2021年2季度信息价
总线隔离模块 查看价格 查看价格

湛江市2020年2季度信息价
总线隔离模块 查看价格 查看价格

湛江市2019年4季度信息价
总线隔离模块 查看价格 查看价格

湛江市2019年3季度信息价
总线隔离模块 查看价格 查看价格

湛江市2019年2季度信息价
总线隔离模块 查看价格 查看价格

湛江市2018年3季度信息价
总线隔离模块 查看价格 查看价格

湛江市2018年2季度信息价
材料名称 规格/需求量 报价数 最新报价
(元)
供应商 报价地区 最新报价时间
总线 CAN总线|1m 3 查看价格 深圳市福克网络有限公司 广东   2022-08-04
总线 CAN总线|1m 3 查看价格 山东正瑞电子有限公司 全国   2019-11-11
总线 RS232/485总线|1m 3 查看价格 广州英博通讯设备有限公司 广东   2022-08-04
总线 RS232/485总线|1m 3 查看价格 山东正瑞电子有限公司 全国   2019-11-11
MODBUS总线 MODBUS总线|1台 3 查看价格 广东岑安机电有限公司 全国   2022-08-01
Modbus总线 Modbus总线|500m 2 查看价格 安徽天康(集团)股份有限公司 全国   2021-11-04
Modbus现场总线 Modbus现场总线|1m 3 查看价格 上海畅宇线缆有限公司 全国   2021-04-30
CANBUS总线 CANBUS总线|1m 2 查看价格 特变电工(德阳)电缆股份有限公司 全国   2019-04-10

总线事务常见问题

  • 造价事务所

    果都在三个拉筋里输入信息,但实际中没有设置三道,只是两道的话,会否多算量? 有几道填写几道,多填了会多算量的

  • 造价事务所

    造价工作是要求综合能力较高的,需要对施工程序,施工验收规范,标准图集,建筑材料都比较熟悉。而在施工现场是提高最快的。如果您在施工现场工作了三年以上,并且积累了上述知识,可以考虑工作调动。

  • 无锡造价事务所

    听说过 一日为师 终身为父 这句话吗,拜师要是用心去拜的 不是嘴上说说的,徒弟缝年过节给师傅送点礼品那是应该的,师徒又没有血缘关系,一切都是靠孝心来维持的, 在无锡市场上使用的软件很多,每个单位用的都...

总线事务文献

比选事务所报送材料 比选事务所报送材料

格式:pdf

大小:48KB

页数: 5页

评分: 4.7

参加比选会计师事务所需出具的材料 各会计师事务所: 根据比选评比需要,各会计师事务所需提供的材料和证明如下: 一、执业资质 1、文字说明部分: 经 批准,我所于 年 月 日获得 H股审计资质 。 经 批准,我所于 年 月 日获得 证券期货审计资质 。 经 批准,我所于 年 月 日获得 审计资质。 2、资料部分: 相应印证材料 二、业务能力 1、文字说明部分 2016 年我所审计业务(不包括评估、税务、工程造价等业务收 入):全年审计业务收入为 万元。 2、资料部分 2016 年审计报告复印件 三、人力资源 1、文字说明部分 截止 2017 年 9 月 30 日,我所注册会计师共计 人。 2、资料部分 提供注册会计师名单。 四、内控及质量 1、文字描述 审计业务控制系统及网络管理 序号 名 称 有 无 1 1.公司章程 2 2.股东会工作规则 3 3.董事会工作规则 4 4.监事会工作规则

立即下载
工程事务部培训内容 工程事务部培训内容

格式:pdf

大小:48KB

页数: 19页

评分: 4.6

工程事务部培训内容 维修人员行为规范 3.1 维修人员仪容仪表方面要求: 1应勤换勤洗工作服,保持着装整洁,精神饱满。 2不留长发,不留胡须,不留鬃角。 3勤洗头、洗澡,勤嗽口,保持个人卫生。 4上班时需穿着工作服,配戴好工作证。 3.2 礼节礼貌要求 1在区内公共区域做维修工作时应尽可能注意少影响或不影响业户, 对无法避免的情况应主动向过往业户说“对不起,请小心! ” 2无论上班或下班后在区内遇到熟悉的业户应主动打招呼、问好。 3与业户同行一处时,应主动让路,不可与业户争道,更不可以从两 个业户中间穿行。 4当业户提出小区问题时,自己职责范围内能答复的即时答复,不能 答复的应讲“对不起,您的这个问题我本人不能给您答复, 不过我会 尽快将您的意见(建议)向我们主管反映后再给您一个满意的答复 (解 释)的,好吗?” 5对业户提出的问题,自己职权范围以外的,切不可随便承诺业户要 求。如果本人可

立即下载

前面的文章介绍了TLP的几种类型以及TLP的包结构。这篇文章来详细地聊一聊Non-Posted Transaction(包括Ordinary Read、Locked Read和IO/Configuration Writes)与Posted Writes(包括Memory Writes和Message Writes)。

Non-Posted Transaction

o Ordinary Reads

下图显示的是一个Endpoint向System Memory发送读请求(Read Request)的例子。

在这个例子中,Endpoint的读请求通过了两个Switch,然后到达其目标,即Root。Root对读请求的包进行解码后,并从中识别出操作的地址,然后锁存数据,并将数据发送至Endpoint,即包含数据的Completion包,ClpD。需要注意的是,PCIe允许每个包的最大数据量(Max Data Payload)为4KB,但实际上经常需要发送大于4KB的数据。因此,常常一个读请求会对应多个ClpD,即将大于4KB的数据分成多个包发送。如果遇到错误,则Root会通过Completion包告知相应的Endpoint。

注:Root向发送请求的Endpoint发送Completion包,是通过Request包中的BDF信息(Bus,Device和Function)进行查找对应的Endpoint的。关于BDF,会在后面的文章详细地介绍。

o Locked Reads

Locked请求实际上是PCIe为了兼容早期的PCI总线而设置的一种方式,对于非PCI兼容的设计中,是不允许使用Locked操作的。并且也只有Root可以发起Locked请求操作,Endpoint是不可以发起Locked请求操作的。下图显示的是一个简单的Locked Read请求操作:

Locked Read主要用于支持一种叫做Atomic Read-Modify-Write操作,这是一种高优先级且不可被打断的操作。主要用于测试链路状况等任务(针对PCI设备,PCIe设备禁止使用Locked操作)。此外,Locked操作采用的是目标存储寻址(Target Memory Address)来寻找Legacy Endpoint(PCI设备),而不是采用前面介绍的BDF。

o IO/Configuration Writes

下图是一个Non-Posted IO写操作的例子。和Locked操作一样,IO操作也是为了兼容早期的PCI设备,在PCIe设备中也是不建议使用。

Posted Writes

o Memory Writes

前面的文章有所提及,PCIe中的Memory写操作都是Posted的,因此Requester并不需要来自Completer的Completion。一个简单的Memory Writes例子如下图所示:

因此没有返回Completion,所以当发生错误时,Requester也不会知道。但是,此时Completer会将错误记录到日志(Log),然后向Root发送包含错误信息的Message。

o Message Writes

和其他的几种类型不太一样,Message支持多种Routing方式。比如Requester可以将Message发送至一个指定的Completer,但是不管指定的Completer是不是Root,Root都会自动的收到来自任何一个Endpoint发送的Message。此外,当Requester是Root的时候,Requester还可以向所有的Endpoint进行广播发送Message。

不得不说,Message机制的提出帮助PCIe总线省去了很多PCI总线中的边带信号。PCI中很多用于中断、功耗管理、错误报告的边带信号,在PCIe中都通过了Message来进行实现了。

在介绍事务层之前,首先简单地了解一下PCIe总线的通信机制。假设某个设备要对另一个设备进行读取数据的操作,首先这个设备(称之为Requester)需要向另一个设备发送一个Request,然后另一个设备(称之为Completer)通过Completion Packet返回数据或者错误信息。在PCIe Spec中,规定了四种类型的请求(Request):Memory、IO、Configuration和Messages。其中,前三种都是从PCI/PCI-X总线中继承过来的,第四种Messages是PCIe新增加的类型

详细的信息如下表所示:

从表中我们可以发现,只有Memory Write和Message是Posted类型的,其他的都是Non-Posted类型的。所谓Non-posted,就是Requester发送了一个包含Request的包之后,必须要得到一个包含Completion的包的应答,这次传输才算结束,否则会进行等待。所谓Posted,就是Requester的请求并不需要Completer通过发送包含Completion的包进行应答,当然也就不需要进行等待了。很显然,Posted类型的操作对总线的利用率(效率)要远高于Non-Posted型。

那么为什么要分为Non-Posted和Posted两种类型呢?对于Memory Writes来说,对效率要求较高,因此采用了Posted的方式。但是这并不意味着Posted类型的操作不需要Completer进行应答,只是此时Completer采用了另一种应答机制——Ack/Nak的机制。

PCIe的TLP包共有一下几种类型:

TLP传输的示意图如下图所示:

TLP在整个PCIe包结构的位置如以下两张图所示:(第一张为发送端,第二张为接收端)

其中,TLP包的结构图如下图所示:

图中的TLP Digest即ECRC(End-to-End CRC),是可选项。此外,TLP的长度(包括其中的Header、Data和ECRC)是以DW(双字,即四个字节)为单位的。

PCIe总线设计之初,主要是针对于音频和视频传输等这些对时间要求特别敏感的应用的。为了保证这些特殊应用的数据包能够得到优先发送,PCIe Spec中为每一个包都分配了一个优先级,通过TLP的Header中的3位(即TC,Traffic Class)。

如下图所示:

TC值越大,表示优先级越高,对应的包也就会得到优先发送。一般来说,支持QoS(Quality of Service)的PCIe总线系统,对于每一个TC值都会有一个独立Virtual Channel(VC)与之对应。这个Virtual Channel实际上就是一个Buffer,用于缓存数据包。

注:当然也有那些只有一个VC Buffer的,此时不管包的TC值如何,都只能缓存在同一个VC Buffer中,自然也就没有办法保证按优先级传输了。这样的PCIe设备称之为不支持QoS的PCIe设备。

一个简单的QoS的例子如下图所示:

图中左下角的Endpoint(即Isochronous Traffic)的优先级比右边的Endpoint(即Ordinary Traffic)的优先级要高。因此,在Switch中,来自左边的Endpoint的包会得到优先传输。而Switch的这种判决操作叫做端口仲裁(Port Arbitration)。

默认情况下,VC Buffer中的数据包是按照包达到的时间顺序,依次放入VC Buffer中的。但是也并不是总是这样,PCIe总线继承了PCI/PCI-X总线关于Transaction-Ordering和Relaxed-Ordering的架构,但也只是针对相同的TC值才有效。关于Transaction-Ordering和Relaxed-Ordering,大家可以去参考PCI-X的Spec,这里不再详细地介绍。

对于大部分的串行传输协议而言,发送方能够有效地将数据发送至接收方的前提是,接收方有足够的接收Buffer来接收数据。在PCI总线中,发送方在发送前并不知道接收法是否有足够的Buffer来接收数据(即接收方是否就绪),因此经常需要一些Disconnects和Retries的操作,这将会严重地影响到总线的传输效率(性能)。

PCIe总线为了解决这一问题,提出了Flow Control的概念,如下图所示。PCIe总线中要求接收方必须经常(在特定时间)向发送方报告其VC Buffer的使用情况。而报告的方式是,接收方向发送方发送Flow Control的DLLP(数据链路层包),且这种DLLP的收发是由硬件层面上自动完成的,并不需要人为的干预。需要注意的是,虽然这一操作旨在数据链路层之间进行,但是这些VC Buffer的使用情况对于应用层(软件层)也是可见的。

采用Flow Control机制的PCIe总线,相对于PCI总线获得了更高的总线利用率。虽然增加了Flow Control DLLP,但是这些DLLP对带宽的占用极小,几乎对总线利用率没有什么影响。

总线事务相关推荐
  • 相关百科
  • 相关知识
  • 相关专栏