瑞薩電子最新推出RZ/T2H工業專用MPU,單芯片提供強大應用處理性能,多協議工業網絡及高達9軸高精度實時控制,支持Linux,RTOS及baremetal操作。除了強大CPU性能和9軸控制外設外,還提供2個PCIe Gen3通道等高速外設。本文主要介紹PCIe外設的功能、裸機下EP模式的程序開發、以及在Linux下,如何編譯網卡的流程。
RZ/T2H產品簡介
框圖
特性
CPU:Arm Quad Cortex-A55,最高工作頻率1200MHz
CPU:Arm Dual Cortex-R52,最高工作頻率1000MHz
內存:每個R52內核擁有576KB緊耦合內存(帶 ECC),內置2MB RAM(帶ECC)
三角函數加速器
工業以太網:EtherCAT、PROFINET RT/IRT、EtherNet/IP等。
編碼器接口:16ch(支持A-format、EnDat、BiSS、HIPERFACE DSL、FA-CODER)
多達9軸的電機控制
Octa/Quad SPI支持
ADC:12位4ch x 2個單元+6ch x 1個單元
ΔΣ I/F: 30ch
封裝:729引腳FCBGA
電壓:0.8V內核;1.1V DDR;1.8V PLL、OSC、USB I/O;3.3V GPIO、xSPI、RMII、MII
PCIe外設介紹及開發
1. PCIe外設的功能
RZ T2H的PCIe支持PCIe 3.0接口。如下圖所示,在RZ/T2H的開發板中,預留了PCIe X4和X1接口
其中有兩條lane,通過撥碼盤的設置,可以讓T2H扮演RC,也可以扮演EP,也可以同時扮演RC和EP模式:
用戶可以根據使用場景,通過撥碼盤來配置EP和RC。
2. 作為EP的實際用例和代碼實現
某A客戶將RZ T2H作為EP,接入Windows。由于RZ T2H有強大的性能,例如4個A55的核和2個R52的核,有3個GMAC等強大的外設功能。所以客戶將主控制程序放在Windows端,通過PCIe與RZ T2H通信,RZ T2H作為EtherCAT主站來組建工業網絡。
客戶的主要業務邏輯在Windows工控機端,希望通過PCIe設備快速的組建工業以太網絡,并希望RZ T2H不跑任何操作系統。根據RZ T2H的用戶數據手冊,我們根據以下流程編寫了無操作系統的PCIe EP程序。再加上瑞薩強大的FSP配置軟件,用戶可以快速的實現自己的業務邏輯。
以下是RZ T2H的EP初始化流程。
1)設置EP模式和Channel
因為T2H有兩個channel,每個channel可以單獨配置成EP或RC,所以根據用戶手冊可以去配置PCIE_MODE。
而對于linkmode,T2H有2lanes X 1channel或1lane X 2 channels的選項。對于multi-link,選擇1 lane X 2channels。Channel 0/1是相互獨立的。
2)發出reset(ARESETn)
3)釋放模塊停止狀態
4)釋放從停止功能
5)釋放reset(RST_LOAD_B,RST_CFG_B)
6)設置PHY的參數,這里用固定值
7)設置硬件寄存器組
硬件寄存器組包括PCIe的Device ID,Vendor ID,Revision ID,Class Code等。相當于配置PCIe Type 0的64字節header。
8)允許ASPM L1的狀態轉換
9)中斷設置。以下均為常規中斷設置,直接引用即可。
10)釋放reset(RST_PS_B,RST_GP_B,RST_B,RST_OUT_B),等500us,再釋放RST_RSM_B。
對于EP的初始化流程,在以下鏈接中有更詳細的介紹。
當以上流程完成后,再根據AXI總線配置AWBase,ADest,將PCIe的BAR基地址映射到SRAM地址。
瑞薩電子同時也基于Windows Drive Framework,開發出了T2H的Windows端驅動。當該燒錄了如上固件的T2H插入PC,并裝入Windows驅動后,會看到:
除了基于WDF的驅動程序外,瑞薩電子還在Windows的驅動層作了效率分析。由于Windows是非實時操作系統,對于應用層調用驅動層的讀取/寫入函數,延時不可預測。所以在Windows的驅動層做了數據的收發測試,可以達到PCIe3.0的效率。
下圖是T2H與臺式機的PCIe X1接口的連接:
同時,瑞薩還提供了T2H作為RC的裸機代碼。下圖是一臺T2H作為RC,另一臺T2H作為EP的連接和通信(注意PCIe連接線的RX與TX需要交換方向)。
3. 在Linux下使用BCM5751 PCIe網卡的流程
本文以此PCIe網卡為例,實現T2H在Linux下使能該網卡。
T2H采用YOCTO構建嵌入式Linux系統,對于BCM5751,需要將Tigon3模塊編譯進image。
1)通過menuconfig來built in Broadcom Tigon3 support。
其具體路徑是:
Linux Kernel Configuration
└─>Device Drivers
└─>Network device support
└─>Ethernet driver support
└─>Broadcom Tigon3 HWMON support
注意:通過MACHINE=rzt2h-dev bitbake virtual/kernel -c menuconfig打開menuconfig
2)編譯完BSP并燒錄鏡像文件后,插入PCIe網卡并重啟T2H開發板
可以看到,該PCIe設備已經生成了網絡設備。并且外設PC已可以與enp1s0進行ping了。
-
Linux
+關注
關注
87文章
11304瀏覽量
209483 -
MPU
+關注
關注
0文章
359瀏覽量
48795 -
PCIe
+關注
關注
15文章
1239瀏覽量
82648 -
瑞薩電子
+關注
關注
37文章
2866瀏覽量
72207 -
裸機程序
+關注
關注
0文章
5瀏覽量
6989
原文標題:RZ T2H PCIe裸機程序開發和Linux下的配置介紹
文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論