最近在找PCIe/NVMe协议分析仪,发现一款软件分析仪:busTRACE,非常不错的工具,对于从事协议开发的同胞们,是个福利,下面把硬件和软件两种分析仪的各自的优势比较了一下(来自busTrace文档),供参考学习:

  Hardware
Analyzer Advantages over busTRACE 硬件协议分析仪的优势

  • Captures all state transitions 可以抓取所有的状态转换信号

A hardware analyzer provides you the ability to capture the actual physical communications that occur on the bus; for example the handshaking that occurs between the host and target. busTRACE is unable to show you this low-level detail.

  • Detailed timing analysis 详细的时序分析

If you want to view detailed timing analysis, such as the time to send the command, data, messaging, etc., then only a hardware analyzer can show you this type of low-level detail. busTRACE shows you when an I/O starts and when it completes, with a timing analysis of the entire I/O sequence (not the individual state transitions).

  • Not affected by PC system crashes 不受PC系统挂机的影响

Because busTRACE is a software tool, if the Windows PC crashes, any captured I/O activity will be lost. You can use a remote capture, or capture to file, to try and limit your exposure, but results may be limited. A hardware analyzer is not affected by system crashes.

  • Ability to view I/O activity from hardware perspective 可以从硬件层面查看I/O动态

In discussing busTRACE advantages, we talk about the benefits busTRACE provides because it captures and analyzes I/O activity from the operating system's perspective. There are equal benefits from viewing the I/O activity from the hardware perspective. Here, you are seeing the exact physical communication going on between the host and target. This can help you diagnose problems, particularly timing problems or hardware problems.

  • OS independent 与操作系统不相关

busTRACE supports Windows 7 (and above) PCs. Hardware bus analyzers do not have any such restrictions and can be run independent of the OS you are using.

busTRACE Advantages over a Hardware Analyzer 软件协议分析仪busTRACE的优势

  • Cost effective 便宜

Hardware bus analyzers typically cost ten to twenty times as much as busTRACE. For the cost of one hardware bus analyzer, you could provide each engineer in a department their own copy of busTRACE 10.0.

  • Multiple bus architecture support 支持多种协议架构

busTRACE can capture I/O activity across a wide variety of bus architectures including USB, USB 2.0, USB 3.0, ATA, SATA, ATAPI, Fibre Channel, SCSI, iSCSI, 1394 (storage I/O only), RAID, SAS, PCIe, MultiPath, and more. Hardware analyzers typically support only one type of bus architecture. If they do support more than one, you usually need to purchase an additional hardware "pod" for the new architecture thereby increasing your cost even further.

  • Easy to use 方便使用

busTRACE is simpler to use than conventional hardware bus analyzers. When you run busTRACE, you simply place a checkmark on the devices you are interested in analyzing and then click on the Capture button. A detailed bus capture then occurs. The user friendly busTRACE interface, with powerful bus analysis features, is designed to be used by any engineer from junior level to the most senior level. Hardware analyzers, on the other hand, typically require a specialized skill that only the most senior engineers have.

  • Detailed command/data analysis 详细的命令、数据分析

busTRACE prides itself on not just showing you a dump of hex data that was sent or received from a device. busTRACE will look at the data and decode it into human readable terms. For example, we decode Command Descriptor Blocks (CDBs) in a format nearly identical to the format you would see in the device's command specification. This greatly speeds up your bus analysis efforts.

  • Ability to view I/O activity from the OS perspective 可以从OS层面分析I/O动态

Keep in mind that busTRACE is capturing I/O activity from the operating system's perspective. This can be advantageous in a number of ways.

  1. When possible, we show you which driver is generating the I/O. This can help diagnose software conflicts.
  2. You can see what the I/O timeout values are set for the I/O being sent. This can help you diagnose why the operating system reset the bus and/or aborted I/O activity. From the hardware perspective, all you would see is a bus reset without understanding why it occurs.
  3. There are times when no error appears on the actual hardware bus, but the I/O fails internally. This could be caused by a driver bug, for example. busTRACE can help diagnose this type of failure too.
  4. In a multiple NUMA node system, busTRACE can show you which NUMA node the device is located on, the I/O data buffer NUMA node, and the processor NUMA node.
  5. busTRACE can capture and show you event log activity generated by I/O failures
  • Complete Suite of Device Analysis Tools 完整的设备分析工具(获取IO动态,发送任何命令,自动检测FW bug,模拟硬件错误等)

busTRACE 10.0 is MUCH more than just a bus analyzer. It is a complete suite of bus and device analysis tools. You can capture I/O activity, send any command, automatically look for any firmware bugs, simulate hardware faults, build simple CDB scripts, and so much more.

正所谓:

既生瑜何生亮,两者生来会打仗。矛盾共存之为道,两者结合更有效。

busTrace VS HW protocol analyzer - 好东西推荐的更多相关文章

  1. PCIe/NVMe Soft Protocol Analyzer - 惊天发现

    最近在看一些协议方面的东西,刚刚接触很多东西不懂.为了尽快熟悉,打算搭建一套系统,包括上层主机和下层SSD. 既然是协议,那就需要硬啃spec.但是俺是懒人一个,想找个便捷方式快速熟悉.这就想到了协议 ...

  2. Verdi Protocol Analyzer Debug 简单使用

    转载:Verdi Protocol Analyzer Debug 简单使用_Holden_Liu的博客-CSDN博客_verdi 技巧 文档与源码: User Guide: UVMDebugUserG ...

  3. 基于物品的协同过滤推荐算法——读“Item-Based Collaborative Filtering Recommendation Algorithms” .

    ligh@local-host$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.0.3 基于物品的协同过滤推荐算法--读"Item-Based ...

  4. 推荐一款idea 翻译插件 ECTranslation

    无意中看到一款idea翻译插件, ECTranslation,才知道有这么个东西,推荐给看到的人吧,使用简单,值得拥有. 参考:http://p.codekk.com/detail/Android/S ...

  5. 推荐一本书:《UML面向对象建模基础》

    http://www.cnblogs.com/onlytiancai/archive/2006/10/13/528205.html 以前对UML呀,感觉用不上,不知道都干啥的,也就是知道有个用例图.类 ...

  6. (转载)Linux 套接字编程中的 5 个隐患

    在 4.2 BSD UNIX® 操作系统中首次引入,Sockets API 现在是任何操作系统的标准特性.事实上,很难找到一种不支持 Sockets API 的现代语言.该 API 相当简单,但新的开 ...

  7. 绝不能错过的10款最新OpenStack网络运维 & 监控工具

    摘要 今天我们要推荐给大家的是关于奥斯汀OpenStack Summit的OpenStack网络方面功能与工具相关的技术演讲. 希望可以帮助国内的开发者.架构师和用户更好地了解OpenStack在SD ...

  8. Security+学习笔记

    第二章 风险分析 风险管理 评估:确定并评估系统中存在的风险 分析:分析风险对系统产生的潜在影响 响应:规划如何响应风险的策略 缓解: 缓解风险对未来安全造成的不良影响 风险分析流程 资产确定 漏洞确 ...

  9. 张小龙宣布微信小程序1月9日发布,并回答了大家最关心的8个问题

    2016 年 12 月 28 日,张小龙在微信公开课 PRO 版的会场上,宣布了微信小程序的正式发布时间. 微信小程序将于 2017 年 1 月 9 号正式上线. 同时他解释称,小程序就像PC时代的网 ...

随机推荐

  1. SVN操作出现locked错误解决办法

    SVN操作出现locked错误解决办法:在SVN中执行 commit 操作时,在更新过程中,中断过,或者因为其他原因导致SVN 出现 locked 异常. 解决办法:1. 选中出现异常的文件,右键 - ...

  2. Recovering BST CodeForces - 1025D (区间dp, gcd)

    大意: 给定$n$个数, 任意两个$gcd>1$的数间可以连边, 求是否能构造一棵BST. 数据范围比较大, 刚开始写的$O(n^3\omega(1e9))$竟然T了..优化到$O(n^3)$才 ...

  3. JSON序列化必看以及序列化工具类

    1.要序列化的类必须用 [DataContract] 特性标识   2.需要序列化的属性应用 [DataMember] 特性标识,没有该特性则表示不序列化该属性.类亦如此!   3.可以网络上找封装好 ...

  4. 【转载】salesforce 零基础开发入门学习(五)异步进程介绍与数据批处理Batchable

    salesforce 零基础开发入门学习(五)异步进程介绍与数据批处理Batchable   本篇知识参考:https://developer.salesforce.com/trailhead/for ...

  5. FlowPortal BPM流程中调用封装好的API如何调试

    遇到复杂一点的业务,我们常常都会将业务逻辑封装到一个dll中,在流程中调用封装好的API. 业务逻辑库封装到企业库后,是可以在Visual Studio中调试库的哦. [附加到进程] [流程中调用AP ...

  6. MMU简介

    MMU(Memory Management Unit)内存管理单元 负责虚拟地址到物理地址的映射,并提供硬件机制的内存访问权限检查.内存访问权限的检查可以保护每个进程所用的内存不会被其他进程所破坏 地 ...

  7. 3.通道 Channel

    一.通道(Channel):由java.nio.channels包定义的 .Channel 表示 IO 源与目标打开的连接. Channel 类似于传统的 ‘流’.只不过 Channel 本身不能直接 ...

  8. 分布式系统唯一ID生成方案

    分布式系统唯一ID生成方案汇总 数据库自增主键 最常见的方式.利用数据库,全数据库唯一. 优点: 1)简单,代码方便,性能可以接受. 2)数字ID天然排序,对分页或者需要排序的结果很有帮助. 缺点: ...

  9. 论文笔记:Deformable ConvNets v2: More Deformable, Better Results

    概要 MSRA在目标检测方向Beyond Regular Grid的方向上越走越远,又一篇大作推出,相比前作DCN v1在COCO上直接涨了超过5个点,简直不要太疯狂.文章的主要内容可大致归纳如下: ...

  10. iis深入学习资源

    iis站点:https://www.iis.net/overview/reliability/richdiagnostictools 感兴趣可以深入学习下iis