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

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

3天内不再提示

PCI总线的三种传输模式

SwM2_ChinaAET 来源:未知 作者:李倩 2018-04-10 09:14 次阅读

三种数据传输模型的示意图如下图所示:

PIO

首先来介绍一下Programmed I/O(PIO)

PIO在早期的PC中被广泛使用,因外当时的处理器的速度要远远大于任何其他外设的速度,所以PIO足以胜任所有的任务。举一个例子,比如说某一个PCI设备需要向内存(SDRAM)中写入一些数据,该PCI设备会向CPU请求一个中断,然后CPU首先先通过PCI总线把该PCI设备的数据读取到CPU内部的寄存器中,然后再把数据从内部寄存器写入到内存(SDRAM)中。

现在看来,这种传输方式的效率还是很低的。首先,每次CPU和PCI设备以及SDRAM通信都需要额外的时钟周期(相对于DMA);其次,这种传输方式还需要长时间地占用CPU,影响CPU的使用率。试想一下,你在用PC在线观看一个1080p60的高清视频,这需要以太网连续地向内存(SDRAM)中写入数据,如果使用PIO的方式的话,将难以保证数据的写入速度。随着目前的PCI外设速度越来越高,PIO已经逐渐被DMA传输方式所取代,但是为了兼容早期的一些设备,PCI Spec依然保留了PIO。

DMA

DMA,即Direct Memory Access

DMA是一种在传输过程中,几乎不需要CPU进行干预的数据传输方式。如上面的图片所示,以太网可以直接向内存(SDRAM)中写入数据,而几乎不需要CPU的干预。实际上,DMA不仅仅应用于PCI总线系统中,它是一种更为广泛应用的数据传输方式。目前,几乎所有的CPU,甚至是MCU都支持DMA。具体这里就不详细地介绍了,有兴趣的可以参考百度百科:https://baike.baidu.com/item/DMA/2385376?fr=aladdin或者其它的资料

Peer-to-Peer

前面的文章中,我们介绍过PCI总线系统中的主机身份并不是固定不变的,而是可以切换的(借助仲裁器),但是同一时刻只能存在一个主机。完成Peer-to-Peer这一传输方式的前提是,PCI总线系统中至少存在一个有能力成为主机的设备。在仲裁器的控制下,完成主机身份的切换,进而获得PCI总线的控制权,然后与总线上的其他PCI设备进行通信。不过,需要注意的是,在实际的系统中,Peer-to-Peer这一传输方式却很少被使用,这是因为获得主机身份的PCI设备(Initiator)和另一个PCI设备(Target)通常采用不同的数据格式,除非他们是同一个厂家的设备。

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

    关注

    68

    文章

    10901

    浏览量

    212926
  • pci总线
    +关注

    关注

    1

    文章

    203

    浏览量

    31912
  • dma
    dma
    +关注

    关注

    3

    文章

    566

    浏览量

    100916

原文标题:【博文连载】PCIe扫盲——PCI总线的三种传输模式

文章出处:【微信号:ChinaAET,微信公众号:电子技术应用ChinaAET】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    PCI总线接口芯片9054及其应用

    速率。PCI9054的LOCAL总线PCI总线之间数据传输三种方式:主
    发表于 10-09 11:23

    PCI总线接口芯片9054及其应用

    /S的本地总线突发传输速率。PCI9054的LOCAL总线PCI总线之间数据
    发表于 12-05 10:12

    STM32有三种启动模式

    01STM32的三种启动模式STM32有三种启动模式:FLASH启动、SRAM启动和系统存储器启动,通常三种启动方式由外部引脚boot0和b
    发表于 08-18 07:52

    CPU有三种总线

    CPU唯一的能力其实就是处理二进制数据。CPU有三种总线:控制总线,地址总线,数据总线,这些总线
    发表于 08-24 06:14

    STM32的三种boot模式介绍

    浅识STM32的三种boot模式文章目录浅识STM32的三种boot模式任务摘要一、认识boot1.三种BOOT
    发表于 12-10 07:46

    STM32的三种Boot模式的差异

    如有错误,欢迎指正,谢谢!目录一、STM32的三种Boot模式的差异二、创建基于MDK创建纯汇编语言的STM32工程模板、汇编基本语法的学习四、编程练习一、STM32的三种Boot
    发表于 12-20 07:54

    记录三种DMA模式

    串口模式实现有三种1.普通模式:在主函数中接收函数2.中断模式:产生的不影响主程序运行3. DMA模式:与主函数互不影响,独立运行本文记录
    发表于 02-28 07:54

    PCI总线传输的终止方式探析

    PCI总线传输的终止方式探析:探讨了PCI 总线传输的终止方式。
    发表于 06-28 19:32 22次下载

    嵌入式PCI总线模式设计

    针对PCI接口取代ISA接口的芯片发展趋势,给出了一采用8位单片机8Oc5l和PCI总线主控I/O加速器芯片PCI9054驱动
    发表于 07-07 15:28 22次下载

    BUCK变换器轻载时三种工作模式原理及应用

    BUCK变换器轻载时三种工作模式原理及应用:降压型Buck 变换器在轻载有三种工作模式:突发模式、跳脉冲
    发表于 10-27 22:52 76次下载

    PCI9052总线接口芯片及其ISA模式应用

    PCI9052总线接口芯片及其ISA模式应用 PCI9052是PLX公司开发的服从PCI协议的从模式
    发表于 05-04 21:48 1914次阅读
    <b class='flag-5'>PCI</b>9052<b class='flag-5'>总线</b>接口芯片及其ISA<b class='flag-5'>模式</b>应用

    PCI总线接口技术及其在高速数据采集系统中的应用

    PCI总线接口技术及其在高速数据采集系统中的应用 一基于PCI总线的高速数据采集传输系统的实
    发表于 12-08 14:39 1155次阅读
    <b class='flag-5'>PCI</b><b class='flag-5'>总线</b>接口技术及其在高速数据采集系统中的应用

    PCI总线传输的终止方式

    探讨了PCI 总线传输的终止方式。PCI 总线的主设备和目标设备都可以终止PCI
    发表于 05-18 16:43 28次下载
    <b class='flag-5'>PCI</b><b class='flag-5'>总线</b><b class='flag-5'>传输</b>的终止方式

    SD卡的三种传输模式及功能解析

    SD卡共支持三种传输模式:SPI模式(独立序列输入和序列输出),1位SD模式(独立指令和数据通道,独有的
    发表于 09-23 15:49 2.1w次阅读
    SD卡的<b class='flag-5'>三种</b><b class='flag-5'>传输</b><b class='flag-5'>模式</b>及功能解析

    单片机的三种总线结构

    单片机的三种总线结构包括地址总线(Address Bus, AB)、数据总线(Data Bus, DB)和控制总线(Control Bus,
    的头像 发表于 09-10 11:32 3676次阅读