System Architecture: 6 - PCI Basics and Bus Enumeration

Поділитися
Вставка
  • Опубліковано 19 гру 2024

КОМЕНТАРІ • 48

  • @briancostello3238
    @briancostello3238 10 місяців тому +1

    This is the best presentation I have found so far on this subject matter to date. Thanks for putting in the time to spread this knowledge!

  • @MrVybhava
    @MrVybhava 3 місяці тому

    One of the best videos to understand PCIE enumeration

  • @atulanand1823
    @atulanand1823 5 років тому +11

    Thank you so much sir!! This is one of the most clear videos on PCI. Keep up the good work.

  • @anandpavaskar
    @anandpavaskar 5 років тому +5

    simple and lovely explanation - a good refresher before an interview

  • @anandbb1
    @anandbb1 3 роки тому

    Clear & Simple explanation. Than you @Sarathy Jaykumar!

  • @lejnyovn9251
    @lejnyovn9251 5 років тому

    Great videos, Most valuable Informations, these are the "MISSING LINKS" of the "BIG PICTURE" . Great work, expecting more videos, THANK YOU SO MUCH.

  • @dbharathi2003
    @dbharathi2003 2 роки тому

    Awesome & great explanation

  • @ms6063
    @ms6063 2 роки тому +1

    clear !! nandri

  • @shrinidhikulkarni5703
    @shrinidhikulkarni5703 5 років тому

    Thanks for your knowledge sharing session. Very clear explanation, kudos.

  • @footsldr
    @footsldr 6 років тому

    Great, clear explanation! Thank you very much.

  • @belaamg
    @belaamg 2 роки тому

    Best video ever, so clear

  • @aucetece
    @aucetece 5 років тому

    If I have a Memory read with the address 'hFFFF_FFF0.
    How can I decode this? How do I know If I am reading Internal device memory or a memory attached as an External card?
    If I decode the address I see that I am Accessing bus 255 and Device 32 and function8. What is the memory location I am reading?

    • @sarathyj
      @sarathyj  5 років тому

      You are reading the reset vector at 4G and not any device memory.

  • @yogenderyadav523
    @yogenderyadav523 Рік тому

    best explanation .

  • @thangam1096
    @thangam1096 4 роки тому

    I got a doubt Enumeration will done in GEN1 L0 or at max data rate if it supports?

  • @DineshKumar-nt4dp
    @DineshKumar-nt4dp 4 роки тому

    In soc level, how different device number assigned to different IP's in intel architecture ? This is also statically assigned at hardware level?

  • @saipraveenreddy1185
    @saipraveenreddy1185 Рік тому

    great lecture

  • @ElizabethJoseph_007
    @ElizabethJoseph_007 5 років тому +1

    Thank you. Very informative video.

  • @ЕрденЖумабеков-щ4и
    @ЕрденЖумабеков-щ4и 5 років тому

    How are the devices on PCI-e get enumerated on dual CPU system with separate PCI-e controllers? I noticed that 0x80 bus id is some boundary between sockets but I didn't find any justification beyond that...

    • @sarathyj
      @sarathyj  5 років тому

      Typically the BIOS splits the 256 buses evenly in a dual CPU system, so each CPU gets 128 buses (CPU0 gets 0-x7F, and CPU1 gets 0x80-0xFF). This doesn't have to be case and the BIOS can balance the buses depending on the population of the PCIe end-points. Some modern CPUs support Multi-PCIe segments i.e, each CPU can get it's own 256 bus range.

  • @arshidsayyad2232
    @arshidsayyad2232 7 років тому +2

    after so long time ...u make video sir....make it fast series plz

    • @sarathyj
      @sarathyj  7 років тому

      Hi Arshid, trying to get into a weekly cadence, unless I'm travelling or otherwise tied up. Just uploaded the next session.

  • @santoshsco
    @santoshsco 3 роки тому

    excellent explanation

  • @vivekceguri2341
    @vivekceguri2341 7 років тому

    my question is ...when will the pci config cycle is initiated ? .....after the link is formed or before the link is formed?
    if it happens after the link is formed then does it happens after the LTSSM ?

    • @sarathyj
      @sarathyj  7 років тому

      PCIe Config cycle is initiated by software when it tries to access the config space of a PCIe device, either by CF8/CFC or by MMCFG. The processor generates config cycles in response to this software request. If the link is not trained at this point, then the config transaction will return an error. If the link is trained, then the cycle will go the device on the other end of the link. We'll talk in more detail when we go deeper into PCIe protocols in future sessions.

  • @prasadsn9174
    @prasadsn9174 5 років тому

    Hi Sir,. After OS upgrade, Two PCI devices are not visible in the output of "lspci" command. In dmesg log, BAR memory assignment logs also not visible for those two PCI devices.
    What could be the reason ?

  • @khushboogupta8674
    @khushboogupta8674 6 років тому +1

    could you please share some video on how tlp/dlp/physical layer transactions happens in Pcie...which layer comes first in picture when RC & End point communicates

    • @sarathyj
      @sarathyj  5 років тому +1

      Sure. I can do a overview on the PCIe protocol.

  • @amarnathbaliyase7665
    @amarnathbaliyase7665 4 роки тому

    Any source for PCIe code understanding?

  • @GeetGeetArora
    @GeetGeetArora 7 років тому

    I have six GPUs installed and 1 of them is having driver issues. When I open the category "Display Adapters" in the Device Manager, the faulty GPU shows a yellow exclamation sign in the corner and the properties of this card show that it is connected to PCI bus 3.
    How can I find out which GPU is physically connected to PCI bus 3? So that I can replace the GPU with another one, rather than removing all of them one by one.

    • @sarathyj
      @sarathyj  7 років тому +1

      First you need to find the config space for Bus 3. You might be able to do it via the RW Everything utility. Look for the root port that has Bus 3 as the secondary bus #. The tricky part then is mapping that to the physical slot in the system. If your card has LEDs or some other status indication, then initiate a "Secondary Bus Reset" (SBR) by writing to the root port's bridge control register. This will reset just the card on Bus 3. But to physically identify the card, the card should be able to provide some visual indication (LED/Fan etc) that resets in response to SBR.

    • @GeetGeetArora
      @GeetGeetArora 7 років тому

      thx a lot dear sir

  • @Ssanatan
    @Ssanatan 4 роки тому

    can anybody share any link for NVME express tutorial?

  • @vijaybs1609
    @vijaybs1609 6 років тому

    Nice video please also touch upon ACPI topics

    • @sarathyj
      @sarathyj  5 років тому

      That's a bigger subject. I'll finish PCIe, Interrupts and then go on to ACPI

  • @ramesherrabolu1590
    @ramesherrabolu1590 7 років тому

    thanks for the presentation.
    If I followed you correctly, a device (End Point or Bridge) can have its config space programmed as reaching from only one CPU i.e. on a system with two CPU's it is not possible to reach the same end point device via two separate paths one from cpu0 and another from cpu1. One can reach devices under cpu0 or cpu1 via an inter-cpu link. Please clarify if this is correct ? If I am right then the device tree is static with the only change being the type of end point device that a user might plugin. For example user may plug a NIC into slot A and a GPU into slot B and in another configuration change their slots i.e. NIC into slot B and GPU into slot A.

    • @sarathyj
      @sarathyj  7 років тому

      Not sure if I fully follow your question, but the device config space can be reached from any CPU, immaterial of which CPU the device is connected to, via the CPU-CPU Link.

  • @ramakrishna4767
    @ramakrishna4767 7 років тому

    Sir , please explain the interrupt scheme in PCIe

    • @sarathyj
      @sarathyj  7 років тому

      Will do. I have separate sessions planned for Interrupts in general.

  • @Xyliant
    @Xyliant 4 роки тому

    Is there a book detailing more information on this subject that you learned from? Where did you get this information from? Like the video by the way, very detailed and conveyed in a manner everyone can understand!

  • @jichaoy
    @jichaoy 7 років тому

    thanks, nice presentation.

  • @alokcom
    @alokcom 5 років тому

    Sir a Video on DMA in PCI will be good.

  • @ricardoespinoza5086
    @ricardoespinoza5086 6 років тому

    Nice job!

  • @raghumgh
    @raghumgh 5 років тому

    Fantastic!!!

  • @felixisdev
    @felixisdev 7 років тому

    nice, thanks

  • @selvalooks
    @selvalooks 5 років тому

    Thanks a ton !!!!!

  • @TheThesiriusx
    @TheThesiriusx 6 років тому

    Thanks.