衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Banana Pi BPI-W3 RK3588平臺驅動調試篇 [ PCIE篇二 ] - PCIE的開發指南

bananapi開源硬件 ? 來源: bananapi開源硬件 ? 作者: bananapi開源硬件 ? 2023-11-02 09:24 ? 次閱讀

Banana Pi BPI-W3 RK3588平臺驅動調試篇 [ PCIE篇 ] - PCIE的開發指南(二)

wKgaomVC-i-AZQiOAAJH8vK8vCE230.jpg

一、前言

上一篇已經介紹過如何在3588上使用pcie的資源,這一篇介紹在Linux系統下如何應用pcie接上的設備

二、 PCI 配置空間

一個PCIe系統最多有256條Bus,每條Bus上最多掛32個Device,每個Device最多又能實現8個Function,每個Function對應著4KB的配置空間。PCI設備擁有256B的配置空間,PCIe還提供另外4KB的擴展,這256B的配置空間中前64B是規范了的,其他的字節是各個廠商自己定義的。

2.1 PCI 設備的地址組成

PCI設備的地址是由三個部分組成的,通常以"域(Domain):總線(Bus):設備(Device).功能(Function)"的形式表示:

域(Domain): 域是PCI設備的最高級別的地址組成部分。它用于標識不同的PCI總線。通常,大多數系統只有一個域,因此它的值為0。但在某些情況下,多個PCI域可以用于連接不同的PCI總線,每個域都有唯一的編號。

總線(Bus): 總線標識PCI設備連接到計算機主板上的不同PCI總線。每個總線可以連接多個PCI設備。總線號通常是一個介于0和255之間的整數。

設備(Device): 設備標識特定總線上的不同PCI設備。每個PCI總線可以連接多個設備,每個設備都有唯一的設備號,通常是0到31之間的整數。

功能(Function): 功能標識PCI設備中的不同功能單元。有些PCI設備具有多個功能,每個功能都有唯一的功能號,通常是0到7之間的整數。大多數PCI設備只有一個功能。

這個地址組成使得系統能夠唯一地標識和管理各種PCI設備,以便它們可以有效地與計算機系統進行通信。在使用工具如lspci時,這些地址通常用于顯示和識別PCI設備。 將上一篇介紹的ArmSom-W3開發板的M.2插槽接好對應模組,上電后使用lspci命令查看:

root@linaro-alip:/home/linaro# lspci 0000:00:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd Device 3588 (rev 01) 0000:01:00.0 Non-Volatile memory controller: Intel Corporation NVMe Optane Memory Series 0002:20:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd Device 3588 (rev 01) 0002:21:00.0 Network controller: Realtek Semiconductor Co., Ltd. Device b852 0004:40:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd Device 3588 (rev 01) 0004:41:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)

2.2 設備地址分析

lspci命令的輸出會列出所有PCI設備的信息,包括設備的制造商、型號、PCI地址等。輸出通常以文本形式提供,并按總線地址(BDF:Bus, Device, Function)的順序排列。

上述命令使用結果分析:

0000:00:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd Device 3588 (rev 01)

設備地址:0000:00:00.0 設備類型:PCI橋接器(PCI Bridge) 制造商:Fuzhou Rockchip Electronics Co., Ltd 設備型號:Device 3588 設備版本:rev 01 此設備是一種PCI橋接器,通常用于將其他PCI設備連接到計算機主板上。

0000:01:00.0 Non-Volatile memory controller: Intel Corporation NVMe Optane Memory Series

設備地址:0000:01:00.0 設備類型:非易失性內存控制器(Non-Volatile Memory Controller) 制造商:Intel Corporation 設備型號:NVMe Optane Memory Series 此設備是Intel Corporation生產的非易失性內存(NVMe)控制器,通常用于管理NVMe存儲設備,如高速固態硬盤(SSD)。

0002:21:00.0 Network controller: Realtek Semiconductor Co., Ltd. Device b852

設備地址:0002:21:00.0 設備類型:網絡控制器(Network Controller) 制造商:Realtek Semiconductor Co., Ltd. 設備型號:Device b852 此設備是一塊Realtek Semiconductor Co., Ltd生產的網絡控制器,通常用于連接計算機到網絡。

0004:41:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)

設備地址:0004:41:00.0 設備類型:以太網控制器(Ethernet Controller) 制造商:Realtek Semiconductor Co., Ltd. 設備型號:RTL8125 2.5GbE Controller 設備版本:rev 05 此設備是一塊Realtek Semiconductor Co., Ltd生產的以太網控制器,支持2.5千兆比特每秒(2.5GbE)的網絡連接速度,用于連接計算機到網絡。

設備地址"0000:01:00.0"表示了一個PCI設備在系統中的唯一標識。這個地址可以被分解為以下部分來進行分析:

域(Domain): 在這種情況下,域的值為"0000",通常情況下,大多數系統只有一個域,所以它的值通常是"0000"。

總線(Bus): 總線的值為"01",表示這個PCI設備連接到系統的第1個PCI總線。每個總線可以連接多個PCI設備。

設備(Device): 設備的值為"00",表示在該總線上的第1個PCI設備。每個總線可以連接多個設備,它們分別具有唯一的設備號。

功能(Function): 功能的值為"0",表示這個PCI設備只有一個功能單元。一些PCI設備具有多個功能單元,每個功能單元都有唯一的功能號。

這個地址用于唯一標識PCI設備,以便系統可以識別和管理它們。您可以使用這個地址來查詢或配置PCI設備,以及了解它們在系統中的物理位置和特征。

三、PCI設備使用

pcie接口接高速固態硬盤(SSD)的情景較多,這里使用由Intel Corporation生產的非易失性內存(NVMe)控制器,ArmSom-W3開發板使用的內核已經確保系統上已經加載了相應的NVMe驅動程序,并且操作系統能夠正確識別和管理NVMe設備。

3.1 NVMe控制器使用

這里介紹一下使用NVMe控制器的基本步驟:

檢查NVMe設備是否被識別: 運行以下命令,查看系統是否正確識別了NVMe設備

root@linaro-alip:/home/linaro# lspci | grep NVMe 0000:01:00.0 Non-Volatile memory controller: Intel Corporation NVMe Optane Memory Series

如果您看到與Intel Corporation相關的NVMe設備信息,則表示設備已經被識別。

檢查NVMe驅動程序是否加載 使用以下命令檢查系統是否已加載了NVMe驅動程序:

lsmod | grep nvme

如果輸出中顯示了與NVMe驅動程序相關的模塊(例如nvme),則表示驅動程序已加載。

查看NVMe設備信息: 使用以下命令查看NVMe設備的詳細信息,包括設備的名稱、容量等:

root@linaro-alip:/home/linaro# nvme list Node SN Model Namespace Usage Format FW Rev ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- -------- /dev/nvme0n1 PHBT8506028Z016N INTEL MEMPEK1J016GAL 1 14.40 GB / 14.40 GB 512 B + 0 B K4110420

或者使用以下命令查看設備的分區信息:

root@linaro-alip:/home/linaro# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT mmcblk0 179:0 0 29.1G 0 disk ├─mmcblk0p1 179:1 0 4M 0 part ├─mmcblk0p2 179:2 0 4M 0 part ├─mmcblk0p3 179:3 0 64M 0 part ├─mmcblk0p4 179:4 0 128M 0 part ├─mmcblk0p5 179:5 0 32M 0 part ├─mmcblk0p6 179:6 0 14G 0 part / ├─mmcblk0p7 179:7 0 128M 0 part /oem └─mmcblk0p8 179:8 0 14.8G 0 part /userdata mmcblk0boot0 179:32 0 4M 1 disk mmcblk0boot1 179:64 0 4M 1 disk nvme0n1 259:0 0 13.4G 0 disk

在輸出中,NVMe設備通常以/dev/nvmeXnY的形式表示,其中X是NVMe設備的編號,Y是分區編號。

注意: ArmSom-W3固件里NVMe驅動程序相關的模塊已經加載至內核里面 Linux系統通常使用nvme-cli工具執行各種操作,如查看設備信息、執行固件更新、執行健康檢查等

3.2 掛載設備

NVMe設備是/dev/nvme0n1,總容量為14.40 GB,當前使用了14.40 GB

使用以下命令掛載它:

root@linaro-alip:/dev# mount /dev/nvme0n1 /mnt [ 4399.143769] EXT4-fs (nvme0n1): recovery complete [ 4399.145058] EXT4-fs (nvme0n1): mounted filesystem with ordered data mode. Opts: (null)

recovery complete:這是文件系統(EXT4)的恢復消息,它表明文件系統在掛載前進行了一次恢復操作,以確保文件系統的一致性。

mounted filesystem with ordered data mode. Opts: (null):這是文件系統掛載成功的消息,表明文件系統已經成功掛載,并且使用了"ordered data mode"模式。括號中的"(null)"表示沒有指定特定的掛載選項。

使用以下命令卸載設備:

umount /mnt

對于存儲設備,還可以進行分區和格式化操作,這個看個人需要,可以使用工具如fdisk或parted來創建分區,并使用mkfs命令格式化分區

3.3 讀寫測試

對NVMe設備進行讀寫測試,可以使用一些專門的基準測試工具,例如fio或dd命令。 下面是一些基本的操作步驟:

使用fio進行讀寫測試:

安裝fio工具

apt-get install fio

創建一個fio測試配置文件,創建一個名為test.fio的文件,內容如下:

[sequential-read] filename=/dev/nvme0n1 rw=read bs=4k size=1G

這個配置文件將對NVMe設備執行4KB塊大小的1GB順序讀取測試。可以根據需要調整參數

使用dd命令進行讀寫測試:

運行以下寫測試命令:

sudo dd if=/dev/zero of=/dev/nvme0n1 bs=1M count=1000

其中if參數是輸入文件(通常是/dev/zero,用于寫入測試),of參數是輸出文件(通常是您的NVMe設備),bs參數是塊大小,count參數是要執行的塊數

運行以下讀測試命令:

sudo dd if=/dev/nvme0n1 of=/dev/null bs=1M count=1000

讀寫性能可能會受到多種因素的影響,包括設備型號、硬件配置和測試條件等

wKgaomVC-jWAY2F3ABfg2nCqESE422.jpg



審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • PCIe
    +關注

    關注

    15

    文章

    1260

    瀏覽量

    83193
  • banana pi
    +關注

    關注

    1

    文章

    114

    瀏覽量

    3106
  • RK3588
    +關注

    關注

    7

    文章

    343

    瀏覽量

    4562
收藏 人收藏

    評論

    相關推薦

    米爾RK3576和RK3588怎么選?-看這篇就夠了

    ISP帶有HDR和3DNR,RK3588的像素ISP分辨率更高(48M對比16M) 具備豐富的接口配置 兩者都配備了豐富的接口配置,PCIe/ SATA/ TYPE C/ USB3.0
    發表于 12-27 11:44

    一文學會RK3588核心板存儲性能測試

    前言:在使用RK3588開發板進行項目開發時,掌握各種功能的調試方法是快速上手并實現項目需求的關鍵。本文作為功能調試系列
    的頭像 發表于 12-06 01:04 ?639次閱讀
    一文學會<b class='flag-5'>RK3588</b>核心板存儲性能測試

    RK3588 SDK入門之編譯使用

    前言:在上一文章中,我們已經配置好了Ubuntu虛擬機。本期將重點介紹如何Ubuntu虛擬機中使用RK3588的SDK。具體內容包括SDK的下載與安裝、環境變量的配置、以及編譯調試的步驟和注意事項
    的頭像 發表于 11-22 01:07 ?1353次閱讀
    <b class='flag-5'>RK3588</b> SDK入門之編譯使用<b class='flag-5'>篇</b>

    開發更便利!迅為RK3568/RK3588 定制分區鏡像發布

    開發更便利!迅為RK3568/RK3588 定制分區鏡像發布
    的頭像 發表于 11-11 14:00 ?589次閱讀
    <b class='flag-5'>開發</b>更便利!迅為<b class='flag-5'>RK</b>3568/<b class='flag-5'>RK3588</b> 定制分區鏡像發布

    國產最強SOC—RK3588之虛擬機搭建

    步驟詳解,為開發者提供全面的指導,助您快速上手,為后續RK3588開發工作做好充分的準備。圖1EVM-RK3588評估板外觀(正面)一、安裝虛擬機軟件VMware在
    的頭像 發表于 11-07 09:04 ?1877次閱讀
    國產最強SOC—<b class='flag-5'>RK3588</b>之虛擬機搭建<b class='flag-5'>篇</b>

    Banana Pi BPI-R3路由器開發板運行 OrayOS物聯網系統

    近日,Banana PI開發板宣布與貝銳達成戰略合作,貝銳OrayOS現已成功適配Banana PIB
    的頭像 發表于 10-23 15:49 ?512次閱讀
    <b class='flag-5'>Banana</b> <b class='flag-5'>Pi</b> <b class='flag-5'>BPI-R3</b>路由器<b class='flag-5'>開發</b>板運行 OrayOS物聯網系統

    用戶手冊 | 國產最強SOC——RK3588調試登錄

    基于眺望EVM-RK3588V1.0評估板與Core-RK3588核心板詳細介紹如何進行RK3588調試登錄與環境搭建,幫助開發者快速上手
    的頭像 發表于 10-18 08:06 ?4242次閱讀
    用戶手冊 | 國產最強SOC——<b class='flag-5'>RK3588</b>之<b class='flag-5'>調試</b>登錄<b class='flag-5'>篇</b>

    迅為瑞芯微RK3588開發板深度剖析丨首選的性能

    手冊 itop-3588開發驅動開發指南 itop-3588開發板文件系統構建手冊 itop-
    發表于 10-17 10:49

    迅為RK3588開發板深度剖析丨首選的性能

    手冊 itop-3588開發驅動開發指南 itop-3588開發板文件系統構建手冊 itop-
    發表于 09-03 15:49

    RK3588!黑神話悟空,啟動?-迅為電子RK3588開發

    RK3588!黑神話悟空,啟動?-迅為電子RK3588開發
    的頭像 發表于 08-30 14:13 ?762次閱讀
    <b class='flag-5'>RK3588</b>!黑神話悟空,啟動?-迅為電子<b class='flag-5'>RK3588</b><b class='flag-5'>開發</b>板

    探索巔峰性能 |迅為 RK3588開發板深度剖析

    手冊 itop-3588開發驅動開發指南 itop-3588開發板文件系統構建手冊 itop-
    發表于 08-09 15:44

    迅為電子RK3588S與RK3588硬件性能區別及板卡選型

    迅為電子RK3588S與RK3588硬件性能區別及板卡選型
    的頭像 發表于 06-25 15:30 ?3773次閱讀
    迅為電子<b class='flag-5'>RK3588</b>S與<b class='flag-5'>RK3588</b>硬件性能區別及板卡選型

    Banana Pi BPI-M7 RK3588開源硬件開發板評測試

    過去幾周,我對高性能 ARM 開發板的追求進展有些不順,但經過近三個月的測試,以下是我對Banana Pi BPI-M7的筆記。
    的頭像 發表于 06-18 15:21 ?738次閱讀
    <b class='flag-5'>Banana</b> <b class='flag-5'>Pi</b> <b class='flag-5'>BPI</b>-M7 <b class='flag-5'>RK3588</b>開源硬件<b class='flag-5'>開發</b>板評測試

    Banana Pi BPI-M7 RK3588開發板運行RKLLM軟件堆AI大模型部署

    Banana Pi BPI-M7開源硬件開發板 RKLLM 軟件堆棧可以幫助用戶快速將 AI 模型部署到 Rockchip 芯片上。 整體框架如下:
    的頭像 發表于 04-11 17:12 ?2584次閱讀
    <b class='flag-5'>Banana</b> <b class='flag-5'>Pi</b> <b class='flag-5'>BPI</b>-M7 <b class='flag-5'>RK3588</b><b class='flag-5'>開發</b>板運行RKLLM軟件堆AI大模型部署

    實測952Mbps!四路千兆網PCIe拓展方案,國產工業級!

    、N500L-AM4C-QD 測試工具:iperf3 創龍科技已基于瑞芯微RK3588J、RK3568J處理器實現了PCIe拓展多路千兆網口方案,以下主要介紹基于瑞芯微
    的頭像 發表于 04-11 09:29 ?872次閱讀
    實測952Mbps!四路千兆網<b class='flag-5'>PCIe</b>拓展方案,國產工業級!
    大发888娱乐城 健账号| 网上百家乐官网乐代理| 百家乐官网娱乐城送分| 百家乐官网补牌规制| 百家乐转盘| 戰神国际娱乐城| 西畴县| 百家乐官网游戏研发| 百家乐官网网上娱乐城| 南京百家乐官网赌博现场被抓| 百家乐官网网站平台| 网上百家乐官网娱乐网| 百家乐官网庄闲符号记| 百家乐官网怎样下注| 百家乐现场新全讯网| 定做百家乐桌子| 百家乐庄闲必胜打| 大发888是什么东| 澳门凯旋门赌场| 太阳城百家乐官网软件| 网页百家乐官网官网| 太阳百家乐官网网址| 百家乐优博娱乐城| 澳门百家乐网络游戏信誉怎么样| 大发888扑克合营商| 泷泽罗拉种子| 百家乐官网9点直赢| 百家乐试玩账户| 至尊百家乐吕文婉| 大发888娱乐场菲律宾| 聚龍社百家乐官网的玩法技巧和规则| 百家乐烫金筹码| 全讯网qx1860.com| 蒙特卡罗娱乐网| 百家乐官网视频软件下载| 闲和庄百家乐官网的玩法技巧和规则| 百家乐怎么下注能赢| 新全讯网353788| 定南县| 百家乐官网号破| 金世豪百家乐的玩法技巧和规则|