91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

Banana Pi BPI-W3 RK3588平臺(tái)驅(qū)動(dòng)調(diào)試篇 [ PCIE篇一 ] - PCIE的開(kāi)發(fā)指南

bananapi開(kāi)源硬件 ? 來(lái)源:bananapi開(kāi)源硬件 ? 作者:bananapi開(kāi)源硬件 ? 2023-11-02 09:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

RK3588平臺(tái)驅(qū)動(dòng)調(diào)試篇 [ PCIE篇 ] - PCIE的開(kāi)發(fā)指南

1、PCIE接口概述

PCIe(Peripheral Component Interconnect Express)是一種用于連接計(jì)算機(jī)內(nèi)部組件的高速接口標(biāo)準(zhǔn)。以下是關(guān)于PCIe接口的簡(jiǎn)要介紹:

高速傳輸: PCIe接口提供了高速的數(shù)據(jù)傳輸通道,可用于連接各種硬件設(shè)備,如圖形卡、存儲(chǔ)設(shè)備、網(wǎng)絡(luò)適配器等。它的速度通常以每秒傳輸?shù)臄?shù)據(jù)位數(shù)(例如PCIe x1、x4、x8、x16等)來(lái)表示,每個(gè)通道的帶寬可以根據(jù)需要擴(kuò)展。

點(diǎn)對(duì)點(diǎn)連接: PCIe采用點(diǎn)對(duì)點(diǎn)連接的架構(gòu),這意味著每個(gè)設(shè)備都直接連接到主板上的PCIe插槽,而不需要與其他設(shè)備共享帶寬。這有助于減少延遲并提高性能。

熱插拔支持: PCIe接口支持熱插拔,允許用戶在計(jì)算機(jī)運(yùn)行時(shí)添加或移除PCIe設(shè)備,而不需要重新啟動(dòng)計(jì)算機(jī)。

廣泛應(yīng)用: PCIe接口廣泛用于連接圖形卡、固態(tài)硬盤(SSD)、擴(kuò)展卡、網(wǎng)絡(luò)適配器和其他高性能設(shè)備。這使得計(jì)算機(jī)用戶可以根據(jù)需要擴(kuò)展和升級(jí)系統(tǒng)的性能和功能。

PCIe接口是一種計(jì)算機(jī)硬件連接標(biāo)準(zhǔn),它提供了高速、高性能的數(shù)據(jù)傳輸通道,支持多種設(shè)備的連接。

2、傳輸速率簡(jiǎn)介

PCIe 分類、速度,按lane的個(gè)數(shù)分有 x1 x2 x4 x8 x16 (最大可支持32個(gè)通道),按代來(lái)分 有 gen1 gen2 gen3 gen4

wKgaomVC-dmAdRZWAACj2N-ckc0705.jpg

PCIe gen1 和 PCIe gen2 采用的編解碼方式是 8b/10b,PCIe gen3 和 之后的 采用的是 128b/130b 的編碼方式。

8b/10b 意思是說(shuō),當(dāng)我們要傳輸8b的數(shù)據(jù)時(shí),實(shí)際在通道上傳輸?shù)氖?0b的數(shù)據(jù),解碼的時(shí)候,我們希望得到的是8b的有效數(shù)據(jù)。這樣,相當(dāng)于有效的帶寬是實(shí)際帶寬的 80%。

同理128b/130b,是傳輸128bit數(shù)據(jù)實(shí)際線路中傳輸?shù)氖?30bit數(shù)據(jù)。

速率圖中的單位間的關(guān)系:

傳輸速率單位 GT/s,表示 千兆傳輸/秒,是實(shí)際每秒傳輸?shù)奈粩?shù),他不包括額外吞吐量的開(kāi)銷位。

兩個(gè)例子:

PCIe gen1 x1 傳輸速率 2.5GT/s = 2500MT/s = ( 2500 / 10 ) MB/s

PCIe gen3 x1 傳輸速率 8GT/s = 8000MT/s = ( 8000 / 130 ) x ( 128/8 ) MB/s= 984.6153... MB/s

PCIe 可?帶寬:吞吐量 = 傳輸速率 * 編碼?案

例如:PCIe 2.0 協(xié)議的每?條 Lane ?持58 / 10 = 4 Gbps = 500 MB/s 的速率,Pcie 2.0 x 8的通道為例,x8的可?帶寬為 48 = 32 Gbps = 4 GB/s。

3、 芯片PCIE資源

3.1 硬件介紹

RK3588共有5個(gè)PCIe的控制器,硬件IP是?樣的,配置不?樣,其中?個(gè)4Lane DM模式可以?持作為EP使?,另外?個(gè)2Lane和3個(gè)1Lane控制器均只能作為RC使?。RK3588有兩種PCIe PHY,其中?種為pcie3.0PHY,含2個(gè)Port共4個(gè)Lane,另?種是pcie2.0的PHY有3個(gè),每個(gè)都是2.0 1Lane,跟SATAUSB combo使?。pcie3.0 PHY的4Lane可以根據(jù)實(shí)際需求拆分使?,拆分后需要合理配置對(duì)應(yīng)的控制器。

wKgaomVC-dmASA5WAAQRx1tW1to846.jpg

3.2 kernel dts解析之PCIe

控制器在DTS對(duì)應(yīng)節(jié)點(diǎn)名稱:

資源 模式 dts節(jié)點(diǎn) 可用phy 內(nèi)部DMA
PCIe
Gen3 x 4lane
RC/EP pcie3x4:
pcie@fe150000
pcie30phy
PCIe
Gen3 x 2lane
RC only pcie3x2:
pcie@fe160000
pcie30phy
PCIe
Gen3 x 1lane
RC only pcie2x1l0:
pcie@fe170000
pcie30phy,
combphy1_ps
PCIe
Gen3 x 1lane
RC only pcie2x1l1:
pcie@fe180000
pcie30phy,
combphy2_psu
PCIe
Gen3 x 1lane
RC only pcie2x1l2:
pcie@fe190000
combphy0_ps

在kernel/arch/arm64/boot/dts/rockchip/rk3588.dtsi下有具體描述

使用限制

pcie30phy拆分后,pcie30x4控制器,?作于2Lane模式時(shí)只能固定配合pcie30phy的port0,?作于 1Lane模式時(shí),只能固定配合pcie30phy的port0lane0;

pcie30phy拆分后,pcie30x2控制器,?作于2Lane模式時(shí)只能固定配合pcie30phy的port1,?作于 1Lane模式時(shí),只能固定配合pcie30phy的port1lane0;

pcie30phy拆分為4個(gè)1Lane,pcie3phy的port0lane1只能固定配合pcie2x1l0控制器,pcie3phy的 port1lane1只能固定配合pcie2x1l1控制器;

pcie30x4控制器?作于EP模式,可以使?4Lane模式,或者2Lane模式使?pcie30phy的port0, pcie30phy的port1中2lane可以作為RC配合其他控制器使?。默認(rèn)使?common clock作為reference clock時(shí),?法實(shí)現(xiàn)pcie30phy port0的lane0?作于EP模式,lane1?作于RC模式配合其他控制器使 ?,因?yàn)镻ort0的兩個(gè)lane是共??個(gè)輸?的reference clock,RC和EP同時(shí)使?clock可能會(huì)有沖突。

RK3588 pcie30phy 如果只使?其中?個(gè)port,另?個(gè)port也需要供電,refclk等其他信號(hào)可接地。

4、PCIe 使用配置

4.1 簡(jiǎn)介

Armsom-W3開(kāi)發(fā)板上有 1 個(gè) PCIe3.0 x 4 接口和一個(gè)PCIe2.0接口,如圖

wKgZomVC-dqABZNEAALDdWqbcNw137.jpg

wKgaomVC-dqAdTtWAAX-sF3QebY191.jpg

可以插入對(duì)應(yīng)模組使用, 如圖:

wKgZomVC-duAHelsAAEdXxMH7-A198.jpg

4.2 硬件設(shè)計(jì)

PCIe3.0 x 4 接口:

wKgaomVC-duAJvesAATeXYeTOE4384.jpg

PCIe 2.0接口:

wKgZomVC-dyATeFuAAPfy8T5Y38085.jpg

4.3 軟件配置

一般根據(jù)原理圖在 DTS 中配置供電引腳、復(fù)位引腳,選擇正確的 pcie 控制器節(jié)點(diǎn)和 PHY 節(jié)點(diǎn)使能就可以。

kernel/arch/arm64/boot/dts/rockchip/rk3588-armsom-w3.dts中配置如下:

/ {
	vcc12v_dcin: vcc12v-dcin {
		compatible = "regulator-fixed";
		regulator-name = "vcc12v_dcin";
		regulator-always-on;
		regulator-boot-on;
		regulator-min-microvolt = ;
		regulator-max-microvolt = ;
	};

	vcc5v0_sys: vcc5v0-sys {
		compatible = "regulator-fixed";
		regulator-name = "vcc5v0_sys";
		regulator-always-on;
		regulator-boot-on;
		regulator-min-microvolt = ;
		regulator-max-microvolt = ;
		vin-supply = ;
	};

	vcc3v3_pcie2x1l0: vcc3v3-pcie2x1l0 {
		compatible = "regulator-fixed";
		regulator-name = "vcc3v3_pcie2x1l0";
		regulator-min-microvolt = ;
		regulator-max-microvolt = ;
		enable-active-high;
		regulator-boot-on;
		regulator-always-on;
		gpios = ;
		startup-delay-us = ;
		vin-supply = ;
	};

	vcc3v3_pcie30: vcc3v3-pcie30 {
		compatible = "regulator-fixed";
		regulator-name = "vcc3v3_pcie30";
		regulator-min-microvolt = ;
		regulator-max-microvolt = ;
		enable-active-high;
		gpios = ;
		startup-delay-us = ;
		vin-supply = ;
	};

}

&pcie2x1l0 {
	reset-gpios = ;
	vpcie3v3-supply = ;
	status = "okay";
};

&combphy1_ps {
	status = "okay";
};

&pcie30phy {
	rockchip,pcie30-phymode = ;
	status = "okay";
};

&pcie3x4 {
	reset-gpios = ;
	vpcie3v3-supply = ;
	status = "okay";
};

pcie30phy、combphy1_ps:PHY 節(jié)點(diǎn)

pcie3x4、pcie2x1l0:pcie3x4 控制器節(jié)點(diǎn)

reset-gpios:復(fù)位引腳屬性

vcc3v3_pcie2x1l0、vcc3v3_pcie30:供電引腳節(jié)點(diǎn)

4.4 其他PCIE配置的實(shí)例

RK3588的控制器和PHY較多,按配置要點(diǎn)進(jìn)?配置即可,這?還有?個(gè)典型范例供參考:

wKgaomVC-d2AcH1OAARurA6XV7k684.jpg

4.4.1 ?例1 pcie3.0phy拆分2個(gè)2Lane RC, 3個(gè)PCIe 2.0 1Lane

/ {
    vcc3v3_pcie30: vcc3v3-pcie30 {
        compatible = "regulator-fixed";
        regulator-name = "vcc3v3_pcie30";
        regulator-min-microvolt = ;
        regulator-max-microvolt = ;
        enable-active-high;
        gpios = ;
        startup-delay-us = ;
        vin-supply = ;
    };
};

&combphy0_ps {
	status = "okay";
};
&combphy1_ps {
	status = "okay";
};
&combphy2_psu {
	status = "okay";
};
&pcie2x1l0 {
    phys = ;
    reset-gpios = ;
    vpcie3v3-supply = ;
    status = "okay";
};
&pcie2x1l1 {
    phys = ;
    reset-gpios = ;
    vpcie3v3-supply = ;
    status = "okay";
};
&pcie2x1l2 {
    reset-gpios = ;
    vpcie3v3-supply = ;
    status = "okay";
};
&pcie30phy {
	/*pcie30phy的組合使?模式:
    PHY_MODE_PCIE_NANBNB  /* P1:PCIe3x2 + P0:PCIe3x2 */
    PHY_MODE_PCIE_NANBBI  /* P1:PCIe3x2 + P0:PCIe3x1*2 */
    PHY_MODE_PCIE_NABINB  /* P1:PCIe3x1*2 + P0:PCIe3x2 */
    PHY_MODE_PCIE_NABIBI  /* P1:PCIe3x1*2 + P0:PCIe3x1*2 */
	*/
    rockchip,pcie30-phymode = ;
    status = "okay";
};
&pcie3x2 {
    reset-gpios = ;
    vpcie3v3-supply = ;
    status = "okay";
};
&pcie3x4 {
    num-lanes = ;//拆分為2lan使用
    reset-gpios = ;
    vpcie3v3-supply = ;
    status = "okay";
};

4.4.2 ?例2 pcie3.0phy拆分為4個(gè)1Lane, 1個(gè)使?PCIe 2.0 1 Lane

/ {
    vcc3v3_pcie30: vcc3v3-pcie30 {
        compatible = "regulator-fixed";
        regulator-name = "vcc3v3_pcie30";
        regulator-min-microvolt = ;
        regulator-max-microvolt = ;
        enable-active-high;
        gpios = ;
        startup-delay-us = ;
        vin-supply = ;
    };
};
&combphy0_ps {
	status = "okay";
};
&pcie2x1l0 {
    phys = ;
    reset-gpios = ;
    vpcie3v3-supply = ;
    status = "okay";
};
&pcie2x1l1 {
    phys = ;
    reset-gpios = ;
    vpcie3v3-supply = ;
    status = "okay";
};
&pcie2x1l2 {
    reset-gpios = ;
    vpcie3v3-supply = ;
    status = "okay";
};
&pcie30phy {
    rockchip,pcie30-phymode = ;
    status = "okay";
};
&pcie3x2 {
    num-lanes = ;
    reset-gpios = ;
    vpcie3v3-supply = ;
    status = "okay";
};
&pcie3x4 {
    num-lanes = ;
    reset-gpios = ;
    vpcie3v3-supply = ;
    status = "okay";
};

pcie30phy拆分為4個(gè)1Lane時(shí),port0lane0固定配合pcie3x4控制器,pcie3phy的port0lane1固定配合pcie2x1l0控制器,port1lane0固定配合pcie3x2控制器,pcie3phy的port1lane1固定配合pcie2x1l1控制器,加上combphy0_ps固定配合pcie2x1l2。

審核編輯 黃宇

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

    關(guān)注

    16

    文章

    1460

    瀏覽量

    88394
  • 開(kāi)源
    +關(guān)注

    關(guān)注

    3

    文章

    4203

    瀏覽量

    46125
  • banana pi
    +關(guān)注

    關(guān)注

    1

    文章

    132

    瀏覽量

    4249
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    RK3588 PCIe?壓測(cè):從崩潰到排障的全流程解析

    ? ? ? ? ? ? 在 RK3588 平臺(tái)上進(jìn)行 PCIe 設(shè)備(如 NVMe SSD )壓測(cè)時(shí),不少開(kāi)發(fā)者遇到過(guò)這樣的 “ 噩夢(mèng) ” :高負(fù)載下系統(tǒng)突然失去響應(yīng),日志里滿是異常信
    的頭像 發(fā)表于 02-06 07:11 ?368次閱讀
    <b class='flag-5'>RK3588</b> <b class='flag-5'>PCIe</b>?壓測(cè):從崩潰到排障的全流程解析

    RK3588平臺(tái)USB攝像頭調(diào)試實(shí)戰(zhàn):從報(bào)錯(cuò)到穩(wěn)定運(yùn)行

    在嵌入式開(kāi)發(fā)中,RK3588 憑借強(qiáng)勁的算力常被用于邊緣計(jì)算、工業(yè)視覺(jué)等場(chǎng)景,而 USB 攝像頭作為常見(jiàn)外設(shè),調(diào)試過(guò)程中難免遇到各類 “卡殼” 問(wèn)題。最近我們?cè)?RK3588
    的頭像 發(fā)表于 02-04 16:13 ?282次閱讀

    RK3588平臺(tái)雙存儲(chǔ)(SPI+PCIE)OTA升級(jí)方案教學(xué)文檔

    在嵌入式設(shè)備中,單存儲(chǔ)介質(zhì)可能存在容量限制或可靠性風(fēng)險(xiǎn)。RK3588 平臺(tái)的雙存儲(chǔ) OTA 升級(jí)方案支持SPI(如 SPI NAND/NOR)與 PCIE 存儲(chǔ)(如
    的頭像 發(fā)表于 02-01 16:46 ?1562次閱讀
    <b class='flag-5'>RK3588</b><b class='flag-5'>平臺(tái)</b>雙存儲(chǔ)(SPI+<b class='flag-5'>PCIE</b>)OTA升級(jí)方案教學(xué)文檔

    RK3588平臺(tái)串口配置修改指南:切換至串口8

    在嵌入式開(kāi)發(fā)中,串口作為基礎(chǔ)調(diào)試接口至關(guān)重要。本文檔針對(duì) RK3588 平臺(tái),詳細(xì)介紹如何將系統(tǒng)默認(rèn)串口修改為串口 8(UART8),包括 U-Boot 階段和內(nèi)核階段的配置調(diào)整。該修
    的頭像 發(fā)表于 02-01 16:37 ?1134次閱讀

    實(shí)戰(zhàn)復(fù)盤:RK3588 SPI+PCIe3x4方案啟動(dòng)修復(fù),從節(jié)點(diǎn)配置到驅(qū)動(dòng)適配全解析

    ? ? ? 在 RK3588 嵌入式項(xiàng)目中, “ 接口配置不匹配 ” 是高頻踩坑點(diǎn) —— 近期 基于 linux6.1 內(nèi)核 調(diào)試 SPI 閃存 +PCIe3x4 外設(shè) 方案時(shí),就遇到了 “eMMC
    的頭像 發(fā)表于 01-08 10:24 ?358次閱讀
    實(shí)戰(zhàn)復(fù)盤:<b class='flag-5'>RK3588</b> SPI+<b class='flag-5'>PCIe3</b>x4方案啟動(dòng)修復(fù),從節(jié)點(diǎn)配置到<b class='flag-5'>驅(qū)動(dòng)</b>適配全解析

    【技術(shù)分享】RK3588如何搭建xenomai3+ethercat

    說(shuō)明使用的RK3588的分支版本是linux-6.1-stan-rkr6內(nèi)核版本是6.1.99把瑞芯微的SDK更新到linux-6.1-stan-rkr6這個(gè)版本即可。編譯xenomai3的內(nèi)核請(qǐng)參考上
    的頭像 發(fā)表于 12-11 17:26 ?1042次閱讀
    【技術(shù)分享】<b class='flag-5'>RK3588</b>如何搭建xenomai<b class='flag-5'>3</b>+ethercat

    文搞懂?RK3588 PCIe:從硬件資源到拆分配置?+?避坑指南(含腦圖)

    資源解析、 3? 大拆分方案實(shí)戰(zhàn)、關(guān)鍵配置步驟及避坑要點(diǎn),附帶可視化腦圖,助力開(kāi)發(fā)者快速落地? PCIe? 相關(guān)項(xiàng)目。 ? ? ? 、 RK358
    的頭像 發(fā)表于 11-20 18:18 ?3825次閱讀
    <b class='flag-5'>一</b>文搞懂?<b class='flag-5'>RK3588</b> <b class='flag-5'>PCIe</b>:從硬件資源到拆分配置?+?避坑<b class='flag-5'>指南</b>(含腦圖)

    開(kāi)發(fā)者必備,10 分鐘搞定 RK3588 PCIE 拆分!

    前言:在嵌入式開(kāi)發(fā)中,PCIe接口的靈活配置直接影響設(shè)備擴(kuò)展能力與性能發(fā)揮。RK3588作為旗艦芯片,其PCIe拆分機(jī)制更是讓硬件設(shè)計(jì)與軟件調(diào)試
    的頭像 發(fā)表于 11-13 08:31 ?1402次閱讀
    <b class='flag-5'>開(kāi)發(fā)</b>者必備,10 分鐘搞定 <b class='flag-5'>RK3588</b> <b class='flag-5'>PCIE</b> 拆分!

    BPI-AIM7 RK3588 AI與 Nvidia Jetson Nano 生態(tài)系統(tǒng)兼容的低功耗 AI 模塊

    Banana Pi BPI-AIM7 RK3588 AI Module7 (AIM7) 配備 64 位八核處理器、6 TOPS NPU、8 GB 內(nèi)存、
    發(fā)表于 10-11 09:08

    BPI-AIM7 RK3588 AI與 Nvidia Jetson Nano 生態(tài)系統(tǒng)兼容的低功耗 AI 模塊

    Banana Pi BPI-AIM7 RK3588 AI Module7 (AIM7) 配備 64 位八核處理器、6 TOPS NPU、8 GB 內(nèi)存、
    的頭像 發(fā)表于 10-11 09:06 ?1093次閱讀
    <b class='flag-5'>BPI</b>-AIM7 <b class='flag-5'>RK3588</b> AI與 Nvidia Jetson Nano 生態(tài)系統(tǒng)兼容的低功耗 AI 模塊

    【作品合集】玄鐵Banana Pi BPI-RV2開(kāi)發(fā)板測(cè)評(píng)

    測(cè)試 作者:chen000000009【Banana Pi BPI-RV2開(kāi)發(fā)板試用體驗(yàn)】開(kāi)箱+硬件介紹 【Banana
    發(fā)表于 09-17 10:58

    RK3588 PCIe設(shè)備識(shí)別失???招避坑“非法Class”陷阱

    前言:在RK3588平臺(tái)開(kāi)發(fā)過(guò)程中,你是否遇到過(guò)這樣的窘境:明明PCIe總線上掛好了網(wǎng)卡模塊,lspci能識(shí)別到芯片,可驅(qū)動(dòng)就是加載失敗,排
    的頭像 發(fā)表于 08-29 08:32 ?1720次閱讀
    <b class='flag-5'>RK3588</b> <b class='flag-5'>PCIe</b>設(shè)備識(shí)別失?。?b class='flag-5'>一</b>招避坑“非法Class”陷阱

    Banana Pi BPI-RV2開(kāi)發(fā)板試用體驗(yàn)】開(kāi)箱上電

    ?、板載 512MB DDR3 內(nèi)存 、128 MiB NAND、16 MiB NOR、M.2接?,MINI PCIE和USB 2.0接?等。 Banana Pi
    發(fā)表于 06-26 19:51

    Banana Pi BPI-RV2開(kāi)發(fā)板試用體驗(yàn)】開(kāi)發(fā)板介紹視頻

    . 開(kāi)發(fā)板介紹香蕉派 BPI-RV2 RISC-V 路由器開(kāi)發(fā)板采用矽昌通信 SF21H8898 芯片方案矽昌 SF21H8898 四核64位RISC-V 處理器, 1.25GHz主
    發(fā)表于 06-24 23:51

    北京迅為RK3588平臺(tái)成功適配“望獲”國(guó)產(chǎn)OS

    北京迅為RK3588平臺(tái)成功適配“望獲”國(guó)產(chǎn)OS
    的頭像 發(fā)表于 04-09 15:35 ?1055次閱讀
    北京迅為<b class='flag-5'>RK3588</b><b class='flag-5'>平臺(tái)</b>成功適配“望獲”國(guó)產(chǎn)OS