0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

PCI Express体系结构导读笔记之桥和中断的基础知识

jf_78858299 来源:布鲁斯的读书圈 作者:Bruce 2023-01-30 15:38 次阅读

看完两章后感觉此书干货很多(有时候觉得废话也挺多),特别是关于桥的配置/bus号/device号的分配过程的描述的比较详细。

要点:

  1. PCI设备能直接使用的地址是PCI总线域的地址,处理器能够直接使用的是存储器域的地址,PCI主桥负责在这两种地址之间转换。当然为了方便管理,可以把这两种地址设置为相同的值(如果是I/O地址,则一定相同)。
  2. 每一条PCI总线上都有一个总线仲裁器,每一个PCI主设备都有独立的总线仲裁信号,并与PCI总线仲裁器一一相连。可见一条PCI总线可以挂接PCI主设备的数目,除了与负载能力相关外,还和仲裁器能够提供的仲裁信号数目直接相关。某PCI主设备使用PCI总线进行数据传递时,首先置REQ#信号有效,向PCI仲裁器发出申请,如果仲裁器允许PCI主设备获得总线使用权,则将相应GNT#信号置为有效。之后此PCI主设备就获得了总线使用权,可开始数据通信
  3. 如果感觉CPU写PCI设备时速度低,考虑检查是否是Posted传送方式(只支持存储器空间写请求)。
  4. 如果感觉各设备相互影响,PCI总线利用效率低,考虑Non-Posted传送方式(一般用于存储器空间读请求、IO/读写请求、配置读写请求)下是否支持了Split总线事务。
  5. PCI桥一般都没有私有寄存器操作系统也不需要为PCI桥提供专门的驱动程序,这也是这类桥被称为透明桥的原因。(俺觉得这并不表示桥不需要配,只是不需要用户写驱动,因为它是被内核自带的PCI总线驱动配置的)

关于中断,下表为PCI桥规范推荐使用的建立下游PCI设备的INTx信号与上游PCI总线INTx信号之间的映射关系。

PCI设备INTx#信号与PCI总线INTx#信号的映射关系

设备号 PCI设备的INTx#信号 PCI总线的INTx#信号
0, 4, 8, 12, 16, 20, 24, 28 INTA# INTA#
INTB# INTB#
INTC# INTC#
INTD# INTD#
1, 5, 9, 13, 17, 21, 25, 29 INTA# INTB#
INTB# INTC#
INTC# INTD#
INTD# INTA#
2, 6, 10, 14, 18, 22, 26, 30 INTA# INTC#
INTB# INTD#
INTC# INTA#
INTD# INTB#
3, 7, 11, 15, 19, 23, 27, 31 INTA# INTD#
INTB# INTA#
INTC# INTB#
INTD# INTC#

我画了个简化版的映射关系图,适合最常见的场景,只有一层桥,所有设备只使用INTA。很明显,这样映射的主要好处就是负载均衡。

图片

明天继续阅读PCI总线的数据交换部分,一些硬件细节应该可以跳过,希望尽快进入软件相关章节。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储器
    +关注

    关注

    38

    文章

    7192

    浏览量

    162210
  • PCI
    PCI
    +关注

    关注

    4

    文章

    608

    浏览量

    129657
  • i/o
    i/o
    +关注

    关注

    0

    文章

    33

    浏览量

    4529
收藏 人收藏

    评论

    相关推荐

    浅析PCI体系结构

    PCI总线作为处理器系统的局部总线,主要目的是为了连接外部设备,而不是作为处理器的系统总线连接Cache和主存储器。但是PCI总线、系统总线和处理器体系结构之间依然存在着紧密的联系。
    发表于 08-06 06:02

    ARM体系结构的相关硬件知识介绍

    ARM体系结构的相关硬件知识
    发表于 06-19 08:00

    ARM裸机全集ARM体系结构

    ARM裸机全集ARM体系结构
    发表于 07-01 06:12

    了解计算机硬件体系结构

    模块一知识点1.了解计算机硬件体系结构2.掌握常见的计算机硬件设备3.了解计算机软件体系结构4.掌握主板结构的组成5.了解CPU、内存、硬盘的发展历程6.掌握CPU、内存、硬盘的
    发表于 09-17 09:03

    聊聊嵌入式系统需求分析与体系结构设计的一些基础知识

    今天和大家来聊聊 嵌入式系统需求分析与体系结构设计的一些基础知识:1.1软件需求分析1.1.1 关于选择裸机开发还是基于实时操作系统一是采用在裸机上直接开发的方式,且关键部分采用汇编语言编写,可以保证该控制系统的实时性;二是由于该软件系统由多种周期的...
    发表于 12-22 08:10

    计算机体系结构的相关资料推荐

    第一部分 IO基础知识计算机系统软件体系结构采用一种层的结构,有人说过一句名言:“Any problem in computer science can be solved by anther
    发表于 01-07 06:42

    初探RISC-V—《RISC-V体系结构编程与实践》

    最近有幸读了一本介绍RISC-V的书籍《RISC-V体系结构编程与实践》,这是一本非常有价值的书籍,它介绍了RISC-V体系结构的各个方面,包括指令集、寄存器、内存管理、中断等等。在阅读完本书
    发表于 03-28 11:41

    了解体系结构 - 介绍 Arm 体系结构

    架构。不需要事先了解 Arm 体系结构,但假定对处理器和编程及其术语大致熟悉。在本指南的最后,您可以检查您的知识.您将了解 Arm 架构的不同配置文件,以及某些功能是特定于架构还是特定于微架构。
    发表于 08-01 14:35

    LTE体系结构

    LTE体系结构 LTE体系结构可以借助SAE 体系结构来做详细描述。在SAE 体系结构中,RNC部分功能、GGSN、SGSN 节点将被融合为一个新的节点,
    发表于 06-16 13:09 9620次阅读

    51单片机的中断体系结构_中断的响应过程

    51单片机的中断系统十分重要,分为外部中断和定时器中断。本文主要详解51单片机的中断体系结构以及中断
    的头像 发表于 05-18 15:28 1.9w次阅读
    51单片机的<b class='flag-5'>中断</b><b class='flag-5'>体系结构</b>_<b class='flag-5'>中断</b>的响应过程

    用于基于超级体系结构设备的PCI Express总线接口资料免费下载

    从简单的寄存器访问到移动数百GB的数据,UltraScale™体系结构中最新的PCI Express集成块为下一代系统提供了多种连接。
    发表于 02-19 11:53 7次下载
    用于基于超级<b class='flag-5'>体系结构</b>设备的<b class='flag-5'>PCI</b> <b class='flag-5'>Express</b>总线接口资料免费下载

    浅谈PCI Express体系结构(二)

    PCI总线的信号定义PCI总线是一条共享总线,在一条PCI总线上可以挂接多个PCI设备。这些PCI设备通过一系列信号与
    发表于 12-17 18:26 3次下载
    浅谈<b class='flag-5'>PCI</b> <b class='flag-5'>Express</b><b class='flag-5'>体系结构</b>(二)

    浅谈PCI Express体系结构(四)

    PCI总线的中断机制PCI总线使用INTA#、INTB#、INTC#和INTD#信号向处理器发出中断请求。这些中断请求信号为低电平有效,并与
    发表于 12-17 18:26 10次下载
    浅谈<b class='flag-5'>PCI</b> <b class='flag-5'>Express</b><b class='flag-5'>体系结构</b>(四)

    PCI Express体系结构导读笔记之寄存器和配置

    之前调试了几个PCI网卡驱动,虽然功能没什么问题,但驱动中调用的某些内核提供的PCI相关的接口一直没搞太清楚,所以最近准备深入研究一把。 **PCI设备的识别及配置方式** P
    的头像 发表于 01-30 15:34 2617次阅读

    PCI Express体系结构导读笔记之基本连接方式

    1. 每一个PCI设备都有独立的配置空间,在配置空间中含有该设备在PCI总线中使用的基地址。系统软件可以动态配置这个基地址,保证每一个PCI设备的物理地址不相同。PCI桥的配置空间中含
    的头像 发表于 01-30 15:39 659次阅读