RW Utility工具使用介绍
文章目录
概述
该实用程序可以访问几乎所有计算机硬件,包括 PCI (PCI Express)、PCI 索引/数据、内存、内存索引/数据、I/O 空间、I/O 索引/数据、超级 I/O、时钟发生器、DIMM SPD 、SMBus 设备、CPU MSR 寄存器、ATA/ATAPI 识别数据、磁盘读写、ACPI 表转储(包括 AML 解码)、嵌入式控制器、USB 信息、SMBIOS 结构、PCI 选项 ROM、MP 配置表、E820、EDID 和远程访问. 并且还提供了一个命令窗口来手动访问硬件。适用于硬件工程师、固件 (BIOS) 工程师、驱动程序开发人员、QA 工程师、性能测试工程师、诊断工程师等的强大实用程序。一、RW是什么?
RW是 Read & Write的缩写,是一个免费使用的软件,这个工具几乎可以访问所
有电脑硬件相关的信息,主要是面向电脑研发相关的BIOS工程师,硬件工程师,
驱动工程师,测试工程师,质量工程师等等。
目前最新的版本是v1.7,有安装版本和免安装版本可供下载
Download website: http://rweverything.com
二、主界面介绍
- 在RW主界面有快捷键图标访问和通过Access下拉菜单选项选择访问, 如下图红色框标记部分:
- 绿色区域:寄存器区(可以通过上方快捷图标8bit/16bit/32bit切换显示位数)
- 蓝色区域:解析区
思考如何查找寄存器值?
寄存器区可以显示256个BYTE(0~255), offset地址 = 横坐标值 + 纵坐标值 * 16
例如, 要查看寄存器0x48 bit0的值是0还是1?
三、常用功能
1. PCI(PCI Express)
选择PCI设备, 找到设备00 1B 00, HD Audio Device。
- Device/Vendor ID :0x9CA08086
- Class Code :0x040300
- BAR 1 :0xE1234004
- SubSystemID :0x503417AA
参考文档:
1. PCI firmware specification 3.0.pdf
2. PCI_Express_base.pdf
3. Platform CPU/PCH EDS
2. Memory
选择Memory,指定地址:0xE00FB000。注意有些电脑打开会蓝屏!
参考文档:
1. Platform CPU/PCH EDS
2. Ddr4spec.pdf
3. DDR4_spd.pdf
4. Smbus_spec20.pdf
3. IO space
选择IO Space,从IO Space Base 0x00开始。
步骤如下:
1.选择IO Space
2.输入IO Base
3.查看对应Port值
IO Space常用的有:
B2h : SMI port
80h : Debug Card
60h~64h: IO
4. I/O Index
通过IO Index/Data访问CMOS寄存器,其分上下两个BankIndex/Data Port : 70h/71h, 点击OK就可以显示CMOS寄存器的值。
CMOS寄存器地址spec:
5. ACPI
选择APCI Tables选项,会列出所有加载的ACPI tables,以及对每一个table的解释,里面包含了BIOS所有ASL code,也可以通过保存按钮把所有ACPI table 保存下来。
下图XSDT table包括所有其它table的入口地址,解析后包括:签名/长度, OEM ID和OEM Table ID等等
6. Embedded Controller
7. USB
usb拓扑结构,查看USB设备信息
参考文档:
1. USB1.1 spec.pdf
2. USB2.0 spec.pdf
3. USB3.0 spec.pdf
4. Platform PCH eds.pdf
8. SMBIOS Structures
选择SMBIOS选项,里面包括了一些基本的硬件信息;
SMBIOS (System Management BIOS) 是主板或系统制造者以标准格式显示产品管理信息所需遵循的统一规范,其数据包括了有关电脑系统和配件的信息。可以通过SMBIOS 获取序列号、电脑厂商、内存、串口信息以及其它系统硬件配件信息。
- Type 0 - BIOS Information
- Type 1 - System Information
- Type 2 - Base board Information
- Type 3 - System Enclosure or Chassis
- Type 4 - Processor Information
- Type 5 - Memory Controller Information
- Type 6 - Memory Module Information
- Type 38 - IPMI Device Information (Type 38) Structure
- ……
- Type 127 - End-of-Table
9. Command
通过选项Command,用户可以通过命令来读和写一些寄存器等,读Port80,读Port60,读PCI获取Vendor ID等
总结
以上列举的几个使用说明,是我们在工作中会经常用到的,如果想知道具体寄存器的定义,则需要看相应的spec,有些则需要咨询对应的BIOS/EC工程师.
这个工具主要涉及比较底层的知识,需要参考的文档如下:
− PCI firmware specification 3.0.pdf
− PCI_Express_base.pdf
− ACPI_6_1.pdf
− Ddr4spec.pdf
− DDR4_spd.pdf
− Smbus_spec20.pdf
− USB1.1 spec.pdf
− USB2.0 spec.pdf
− USB3.0 spec.pdf
− SMBIOS V7.1a.pdf
− UEFI_Spec2_3_1.pdf
− Platform CPU/PCH EDS
− EC_Common Enginner Spec.pdf