首页 > 其他分享 >PCIe扫盲——PCI总线配置周期产生和配置寄存器

PCIe扫盲——PCI总线配置周期产生和配置寄存器

时间:2024-12-13 17:33:12浏览次数:8  
标签:Header 配置 Number PCIe PCI 寄存器

上一篇文章中也是说到了,I/O Address Space的空间很有限(64KB),所以一般在I/O Space中都有两个寄存器,第一个指向要操作的内部地址,第二个存放读或者写的数据。因此,对于PCI的配置周期来说,包含了两个步骤:

Step1:CPU先对IO Address中的0xCF8~0xCFB写入要操作的配置寄存器的地址。如下图所示,其中包括了总线号(Bus Number)、设备号(Device Number)、功能号(Function Number)和寄存器指针。

Step2:CPU向IO Address中的0xCFC~0xCFF中写入读或者写的数据。

image

前面介绍过,每一个PCI功能(Function)都包含256个字节的配置空间(Configuration Space),其中前64个字节被称为Header,剩余的192个字节用于一些可选的功能。PCI Spec规定了两种类型的Header:Type1 和Type0。其中,Type1 Header表示该PCI设备功能为桥(Bridge),而Type0 Header则表示该PCI设备功能不是桥。两种Header的结构图分别如下所示:

image
image

注:因为PCIe完整的继承了PCI Header相关的内容,所以关于Header的详细介绍和操作会放在后面关于PCIe的介绍中。

标签:Header,配置,Number,PCIe,PCI,寄存器
From: https://www.cnblogs.com/linhaostudy/p/18605404

相关文章

  • 明明正确配置了export PATH=XXX环境变量,但是source ~/.bashrc和/etc/profile之后还是
    问题:明明正确配置了exportPATH="/***:$PATH",比如:exportPATH="/usr/bin:/bin:$PATH"exportPATH=$PATH:/home/jie/myapp/dealii-9.2.0但是source~/.bashrc之后还是不生效然后在/etc/profile配置了之后也是不自动生效。问题根源:后面有一个PATH配置错了没有加后缀:$......
  • RocketMQ的下载与安装(快速安装无痛使用)、图形化配置
    不说废话,就让大家直接下载安装,无痛使用【不需要了解很多安装方式】RocketMQ的下载方式官网下载下载地址2.安装环境要求说明 Windows/Linux64位系统JDK1.8(64位)源码安装需要安装Maven 3.2.x一、Windows中的安装1.官网中下载RocketMQ的运行版本下载地址2.......
  • jdk1.8安装及环境配置(最新最详细教学!!!)
    jdk1.8安装:看了网上很多关于jdk1.8的安装,我觉得有时候会让人云里雾里,虽然自己可能配置成功,不过没有一套自己的思路,我结合自己的经验来说一下。jdk在windows有两种安装方式,一种是解压缩包,还有一种是点击运行安装注意两种方式选一个就行,一般选择解压缩,解压完成,然后配置环境变......
  • EHOME视频平台EasyCVR关于监控摄像机电源功率配置及供电模式的选择
    在构建一个高效、可靠的监控系统时,电源配置是至关重要的一环。电源不仅需要为监控摄像头提供稳定的电力支持,还要确保整个系统的长期稳定运行。正确的电源功率配置可以预防许多潜在的问题,比如摄像机的频繁重启、图像质量下降,甚至是设备损坏。本文将深入探讨监控系统中电源功率配置......
  • [Burp] burp 2024.3下载及安装配置过程(附有下载链接)
     前言Burp链接:https://pan.quark.cn/s/fb5a4e8c16a9提取码:MgBnBurp是一款Java语言编写的工具。下载得到压缩文件将文件解压,不要解压到有中文的目录!!文件名jdk-21.0.2Java环境start-burp.vbs用于启动burp_pro_v2024.3.1.1.jar千万不要解压!BurpLoaderKeygen.jar千万......
  • 在 Windows Server 上,你可以通过 PowerShell 来开启和配置 Active Directory(AD)、分布
    在WindowsServer上,你可以通过PowerShell来开启和配置ActiveDirectory(AD)、分布式文件系统(DFS)、卷影复制(VolumeShadowCopy)和重复数据删除(DataDeduplication)。以下是详细的PowerShell配置脚本,涵盖了这些功能的启用和管理。1.配置ActiveDirectory(AD)要配置Active......
  • Windows Server 上启用存储空间中的重复数据删除功能(Data Deduplication),你可以按照以
    WindowsServer上启用存储空间中的重复数据删除功能(DataDeduplication),你可以按照以下步骤在PowerShell中配置。1.启用重复数据删除功能首先,确保你的系统已经安装了DataDeduplication功能。如果没有安装,可以使用以下命令进行安装:powershellCopyCodeInstall-WindowsFea......
  • DHCP中继配置
    配置PC的IP地址获取方式在SW2(DHCP中继)上配置创建VLAN,并为其配置IP地址(VLAN10、20配置网关),命令如下:[SW2]vlanbatch1020100[SW2]interfaceVlanif10[SW2-Vlanif10]ipaddress192.168.10.25424[SW2-Vlanif10]interfaceVlanif20[SW2-Vlanif20]ipaddress192.1......
  • 配置ESXi虚拟交换机连接办公室网络实现VLAN划分
    标题:配置ESXi虚拟交换机连接办公室网络实现VLAN划分 1.ESXi配置ESXi上添加两个虚拟交换机,分别使用两张网卡。一张做管理,一张做虚拟机交换。 (此处vSwitch0为管理,vSwitch1为虚拟机;请忽视我大小写搞错的V(lll¬ω¬))创建VMkernel网卡,加入VLANID为0的端口组,加入虚拟交换机0。创......
  • PCIe扫盲——PCI总线的地址空间分配
    PCI总线具有32位数据/地址复用总线,所以其存储地址空间为2的32次方=4GB。也就是PCI上的所有设备共同映射到这4GB上,每个PCI设备占用唯一的一段PCI地址,以便于PCI总线统一寻址。每个PCI设备通过PCI寄存器中的基地址寄存器来指定映射的首地址。如下图所示:注:需要注意的是PCI的地址空间......