0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

PCIE的BAR空間介紹

FPGA設(shè)計(jì)論壇 ? 來源:FPGA設(shè)計(jì)論壇 ? 2024-04-22 11:00 ? 次閱讀

PCIE是一種高速串行總線接口標(biāo)準(zhǔn),用于連接計(jì)算機(jī)內(nèi)部的各種外設(shè)和組件。在PCIe架構(gòu)中,BAR(Base Address Register)空間是用于映射I/O端口或內(nèi)存地址空間的一組寄存器

BAR空間是通過PCIe配置空間進(jìn)行分配和管理的。每個(gè)PCIe設(shè)備都具有其自己的配置空間,其中包含了一組BAR寄存器。這些寄存器用于告知操作系統(tǒng)和其他設(shè)備該設(shè)備所需的資源,例如內(nèi)存地址范圍或I/O端口地址范圍。

在PCIe設(shè)備的BAR寄存器中,可以配置為I/O BAR或者內(nèi)存BAR。I/O BAR用于映射設(shè)備的I/O端口,而內(nèi)存BAR用于映射設(shè)備的內(nèi)存地址。每個(gè)BAR寄存器都包含一個(gè)基地址和一些控制位,用于指定地址范圍和訪問權(quán)限。

操作系統(tǒng)在初始化PCIe設(shè)備時(shí),會(huì)讀取BAR寄存器的值,并將相應(yīng)的資源映射到系統(tǒng)地址空間中,以便應(yīng)用程序可以通過訪問這些地址來與設(shè)備進(jìn)行通信。BAR空間的大小取決于每個(gè)BAR寄存器的配置,通常情況下,每個(gè)BAR寄存器的大小為32位或64位。

需要注意的是,BAR空間的大小可能會(huì)受到一些限制,例如操作系統(tǒng)或主板的限制。因此,在進(jìn)行PCIe設(shè)備設(shè)計(jì)和驅(qū)動(dòng)程序開發(fā)時(shí),需要遵循相關(guān)的規(guī)范和要求,以確保BAR空間分配的合理性和可用性。

總結(jié)起來,PCIe的BAR空間是用于映射設(shè)備的I/O端口或內(nèi)存地址空間的一組寄存器,通過配置寄存器的值,可以告知操作系統(tǒng)和其他設(shè)備該設(shè)備所需的資源。操作系統(tǒng)會(huì)將BAR空間映射到系統(tǒng)地址空間中,以便應(yīng)用程序可以與設(shè)備進(jìn)行通信。

審核編輯:劉清
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5343

    瀏覽量

    120385
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7494

    瀏覽量

    87980
  • PCIe接口
    +關(guān)注

    關(guān)注

    0

    文章

    120

    瀏覽量

    9706

原文標(biāo)題:pcie的BAR空間的介紹

文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設(shè)計(jì)論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    6678通過pcie進(jìn)行boot時(shí),PC無法寫bar空間

    我使用windriver開發(fā)了pcie的驅(qū)動(dòng),可以通過windriver看到分配的bao0和bar1空間,其地址范圍對應(yīng)的是DDR3的空間,此時(shí)出現(xiàn)問題:可以通過windriver對
    發(fā)表于 03-28 16:06

    求教:關(guān)于DM8168的PCIe寄存器

    : ?????????????? 1.如何將DM8168 PCIe寄存器(地址是0x51000000)映射到它的內(nèi)核空間,這樣我就可以在內(nèi)核空間通過訪問其對應(yīng)的虛擬地址查看PCIe寄存
    發(fā)表于 05-28 01:52

    關(guān)于PCIEBAR配置的問題。

    \drv\exampleProjects\PCIE_exampleProject 里面的例子 這個(gè)工程可以成功跑起來,并且在PC端通過用WinDriver可以看到設(shè)備,但是目前有一個(gè)關(guān)于例程中BAR配置
    發(fā)表于 06-19 00:50

    關(guān)于C6678的PCIEBAR配置問題

    設(shè)備?,F(xiàn)在有幾個(gè)問題想要搞明白: 1.pdk的PCIE例程中配置了bar1基地址為0x70000000,我通過WinDriver查看bar1基地址也是0x70000000,然后用WinDriver在
    發(fā)表于 06-19 04:33

    C6657 PCIE 問題咨詢

    link 完成后, 在本地PCIE config空間映射的 EP端的config空間, 后續(xù)初始化EP端Bar base地址的時(shí)候,就是操作?gpPCIE_remote_EP_reg
    發(fā)表于 06-21 18:49

    C6678,PCIe,BAR的地址范圍

    it to the?internal bus side.” 1.這段話的大概意思是說PCIe接收數(shù)據(jù)包是有條件的,只有數(shù)據(jù)包中的PCIe地址在BAR配置的地址范圍內(nèi)時(shí),PCIe模塊才
    發(fā)表于 06-21 18:17

    如何通過BAR0和BAR1訪問(讀/寫)寄存器?

    各位大家好,我正在嘗試使用我在Xilinx論壇下載的SP605連接套件參考設(shè)計(jì),我閱讀了用戶指南:我了解了如何通過BAR0和BAR1訪問(讀/寫)寄存器,但我不明白如何通過PCIe(當(dāng)然還有DMA
    發(fā)表于 07-09 08:40

    如何使用AXI-PCIe橋接IP與我的邏輯進(jìn)行通信

    嗨,我正在使用AXI-PCIe橋接IP與我的邏輯進(jìn)行通信。我的poroject要求有128K內(nèi)存。我不知道如何配置AXI BAR地址來擴(kuò)展內(nèi)存。我閱讀了IP文檔,但沒有任何意義。目前我能夠從具有32K PCIe
    發(fā)表于 06-19 10:14

    關(guān)于PCI9054在BAR3空間讀取SDRAM數(shù)據(jù)地址需要*4的問題

    板卡集成了16M*32Bit的SDRAM, 可通過BAR空間+頁地址訪問。BAR3空間在本協(xié)議中規(guī)定為1M*32Bit的空間。所有的SDR
    發(fā)表于 05-14 16:23

    如何解決PCIe采集卡在3588J開發(fā)板無法進(jìn)行大容量高端BAR Memory空間分配的問題

    | 一、貴司3588J開發(fā)板,4x PCIe插槽插入我司的PCIe采集卡,無法進(jìn)行大容量64MB的高端 BAR Memory地址空間分配問題:1、lspci、lspci -vvv 及相
    發(fā)表于 10-20 14:56

    IMX8 PCIE BAR 15沒有空間是怎么回事?

    0x18900000-0x1890ffff pref][5.246523] pci 0000:01:00.0:BAR 0:[mem size 0x400000000 64bit pref]沒有空間[5.254191
    發(fā)表于 04-11 06:30

    體驗(yàn)紫光PCIE之使用WinDriver驅(qū)動(dòng)紫光PCIE

    可以表明主機(jī)與FPGA硬核能夠鏈接成功,link_up后主機(jī)內(nèi)核程序可以讀到PCIE的配置空間信息,進(jìn)而給FPGA的PCIE分配PCIE總線域空間
    發(fā)表于 11-17 14:35

    PCIeBar空間是怎么生效的

    PCIe接口相對來講還是打交道比較多的接口。無論是Intel還是Xilinx的IP也都接觸到過。
    的頭像 發(fā)表于 06-05 10:47 ?6634次閱讀
    <b class='flag-5'>PCIe</b>—<b class='flag-5'>Bar</b><b class='flag-5'>空間</b>是怎么生效的

    PCIeBar空間是怎么生效的?

    最近在研究cocotbext-pcie的實(shí)現(xiàn),對于學(xué)習(xí)PCIe還是挺有幫助的,陸陸續(xù)續(xù)做個(gè)總結(jié),有時(shí)間也會(huì)在SpinalHDL下實(shí)現(xiàn)類似的方針功能。
    的頭像 發(fā)表于 07-03 17:47 ?4133次閱讀
    <b class='flag-5'>PCIe</b>—<b class='flag-5'>Bar</b><b class='flag-5'>空間</b>是怎么生效的?

    PCIe相關(guān)問題解答

    CPU 發(fā)起的,訪問PCIe設(shè)備配置空間的數(shù)據(jù)流。這種數(shù)據(jù)流主要是BIOS/Linux PCIe driver 對設(shè)備進(jìn)行初始化、資源分配時(shí),讀寫配置空間的。包括
    的頭像 發(fā)表于 09-15 09:39 ?1727次閱讀
    <b class='flag-5'>PCIe</b>相關(guān)問題解答