找回密码
 注册
关于网站域名变更的通知
查看: 407|回复: 2
打印 上一主题 下一主题

RK3562J 处理器 M 核启动实操

[复制链接]

该用户从未签到

跳转到指定楼层
1#
 楼主| 发表于 2025-2-27 11:26 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 Heaven_1 于 2025-2-28 17:47 编辑
  w' h7 X4 K& `0 o
/ k3 R! w& [: p1 _" O- [7 a4 x一、RK3562J处理器概述
* X4 q: U$ X6 t! `7 QRK3562J处理器是一款高性能、多核心的处理器,采用了独特的异构架构设计。它集成了4个Cortex-A53核心和1个Cortex-M0核心,其中4个Cortex-A53核心运行频率高达1.8GHz,凭借其强大的处理能力,主要负责运行复杂的操作系统任务和各种高性能应用程序,能够高效地处理多任务操作和数据密集型计算,为设备提供卓越的性能表现。而Cortex-M0核心则以200MHz的频率运行,作为一个辅助核心,它运行裸核系统,具有极高的响应速度和低延迟特性,能够快速响应实时性要求较高的任务,如传感器数据采集、电机控制等,确保设备在实时任务处理方面具备出色的稳定性和可靠性。这种独特的架构设计使得RK3562J处理器在兼顾高性能计算的同时,还能满足对实时性要求较高的应用场景,广泛适用于智能物联网设备、工业自动化控制以及嵌入式系统等多种领域,为用户带来高效、稳定且灵活的解决方案。6 _( A) g( w0 M3 X7 l! B/ I

& M. ^% m5 ~: g( E# q  {' j# [/ Y+ J, I; p* \

% m/ \1 L: M. p6 ^* X2 j8 \) l9 z( |0 w% L
[backcolor=rgba(0, 0, 0, 0.1)]
; q) ^1 X; q! x. n! u. |$ m[backcolor=rgba(0, 0, 0, 0.1)]1 p! o2 `# G3 p; C# \

& c- R0 \1 F1 s  a
6 j/ j+ k0 R) o/ {& F/ z- |
3 O4 P8 @  }! q/ o+ o3 t  c

( }' B1 i% _8 i# |; H- b) u, @5 P/ y( K4 {4 R

6 Z! W( i- g" l5 U0 X% D添加图片注释,不超过 140 字(可选). A( |# i* T* w  ]
4 X6 `0 |% C* x7 Z! N

* ^8 l; j. t7 B3 w* s/ F4 D  |
, ~) ]7 H) D9 U( [9 m6 J9 N4 p3 U9 v# G6 [' }
二、启动M0核固件的前期准备
. r) Q4 X8 h) P1 ?: U( R. ~目前,飞凌嵌入式OK3562J-C开发板上默认并没有启动M0核固件。因此,我们需要通过一系列步骤来配置和启动M0核。以下是具体的操作步骤:' j1 c3 i8 x& f$ r3 y8 q7 I- R

/ J$ |- d4 U, C0 ]# q. B  Z1. U-Boot修改
2 Q2 F$ u, y4 ^( ]" o理论上我们需要打开AMP(非对称多处理)编译宏,但由于飞凌嵌入式OK3562J-C开发板的U-Boot已默认配置AMP功能,因此用户无需进行任何U-Boot修改操作。
8 Y) e: w! S& O' j2 o8 w1 [5 l- @3 m/ s% |. U1 H
2. Kernel修改; g" h6 ~1 D, p# R" h. ~
(1)安装工具包
5 o- U+ ]) S* G# Y. R2 @8 b& k
3 E/ U4 H& O! D: Q9 F3 {. ?! I" c首先,我们需要安装SCons工具包,用于后续的编译工作。可以通过以下命令进行安装:& p( G& D7 |1 n4 ]5 {; [
# d9 F) v" N! ?& v" l8 r
forlinx@ubuntu:~$ sudo apt-get install scons8 n+ P9 l, t: m) j0 C8 h/ Z
(2)添加AMP设备树的调用+ L; p1 p3 f1 @0 I+ y) ]
3 m% \, t' \. A5 s
OK3562J-C开发板已经添加了AMP设备树的调用,我们可以查看相关配置文件以了解其内容。1 Q) ^9 k, v; x6 z
# O% T0 \" {$ |4 j& z2 B
forlinx@ubuntu:~$ cd /home/forlinx/work/OK3562-linux-source/forlinx@ubuntu:~/work/OK3562-linux-source$ vi kernel-5.10/arch/ARM64/boot/dts/rockchip/OK3562-C-common.dtsi+include"rk3562-amp.dtsi"
6 E" l! q% F& w: z* L
rk3562-amp.dtsi 主要内容包括:* B% G7 T/ B( A( G4 Q$ h- o

5 U2 M" w# ^6 ^8 B1 }+ H
/ {/* 描述设备 */    rockchip_amp: rockchip-amp {        compatible = "rockchip,amp";        clocks = <&cru FCLK_BUS_CM0_CORE>, <&cru CLK_BUS_CM0_RTC>,            <&cru PCLK_MAILBOX>, <&cru PCLK_INTC>,        //  <&cru SCLK_UART7>, <&cru PCLK_UART7>,            <&cru PCLK_TIMER>, <&cru CLK_TIMER4>, <&cru CLK_TIMER5>;        //pinctrl-names = "default";        //pinctrl-0 = <&uart7m1_xfer>;        amp-cpu-aff-maskbits = /bits/ 64 <0x0 0x1 0x1 0x2 0x2 0x4 0x3 0x8>;        amp-irqs = /bits/ 64 <GIC_AMP_IRQ_CFG_ROUTE(147, 0xd0, CPU_GET_AFFINITY(3, 0))>;        status = "okay";    };/* 定义了一些保留内存区域 */    reserved-memory {        #address-cells = <2>;        #size-cells = <2>;        ranges;        /* remote amp core address */        amp_shmem_reserved: amp-shmem@7800000 {            reg = <0x0 0x7800000 0x0 0x400000>;            no-map;        };        rpmsg_reserved: rpmsg@7c00000 {            reg = <0x0 0x07c00000 0x0 0x400000>;            no-map;        };        rpmsg_dma_reserved: rpmsg-dma@8000000 {            compatible = "shared-dma-pool";            reg = <0x0 0x08000000 0x0 0x100000>;            no-map;        };        /* mcu address */        mcu_reserved: mcu@8200000 {            reg = <0x0 0x8200000 0x0 0x100000>;            no-map;        };};/* 实现Rockchip RPMsg功能 */    rpmsg: rpmsg@7c00000 {        compatible = "rockchip,rpmsg";        mbox-names = "rpmsg-rx", "rpmsg-tx";        mboxes = <&mailbox 0 &mailbox 3>;        rockchip,vdev-nums = <1>;        /* CPU3: link-id 0x03; MCU: link-id 0x04; */        rockchip,link-id = <0x03>;        reg = <0x0 0x7c00000 0x0 0x20000>;        memory-region = <&rpmsg_dma_reserved>;        status = "okay";    };};" x# W/ ?" j" `& }. a  C
3. 生成配置文件
7 e4 ?- f% x) q9 Y0 a接下来,我们需要生成M0核固件的配置文件。在RTOS源码目录下,通过复制默认配置文件并运行SCons菜单配置界面来生成所需的配置文件。虽然在此示例中无需进行额外配置,但用户可以根据需求进行相应的配置。
# ^! V! q, X+ ?% k
* x. H1 ~; [5 v7 Z; G+ D! s
forlinx@ubuntu:~/work/OK3562-linux-source$ cd rtos/bsp/rockchip/rk3562-32forlinx@ubuntu:~/work/OK3562-linux-source/rtos/bsp/rockchip/rk3562-32$ cp board/rk3562_evb1_lp4x/defconfig .configforlinx@ubuntu:~/work/OK3562-linux-source/rtos/bsp/rockchip/rk3562-32$ scons --menuconfig& N8 Z& R; x5 H& O2 |% p& R0 j
打开图形化配置界面后,无需配置,直接退出即可。
: D0 ^7 f$ D, y/ j: Z# X) K- q+ z; F4 @$ Z: L: \' i

9 {( g/ s" m  j6 _, Y1 e5 y' o6 W9 M

, u- C# R+ U. G# p# K) O
[backcolor=rgba(0, 0, 0, 0.1)]
" W5 o4 R! [" f$ h[backcolor=rgba(0, 0, 0, 0.1)]
) E: ~3 Y# r" F% f. V1 z! a. L: {+ d5 R1 i

7 B/ U6 X2 J/ X. X, f5 X+ f0 P/ `5 b1 I1 g: p3 p9 v# E$ T$ L
3 {9 Z9 G3 }( F. |1 I8 g
; g9 ?9 w$ z2 n( {) D! G. X/ m

- Z( ~% J. Q" \添加图片注释,不超过 140 字(可选)
5 S" G* v" F! T* g& R
) z7 D% ]0 h1 r! K5 e4 M6 {, n" A( h- [3 D  c' L* Z0 k: G$ U

+ a/ N7 }) `0 C; n
" h' ^5 T' n: o% H. I4 _" s/ {若有其他功能需求,可进行相应配置后再退出并保存。
/ w% {% m- y) U2 k* x9 M) _1 s0 D  o" ~+ m
forlinx@ubuntu:~/work/OK3562-linux-source/rtos/bsp/rockchip/rk3562-32$ cp .config board/rk3562_evb1_lp4x/defconfigforlinx@ubuntu:~/work/OK3562-linux-source/rtos/bsp/rockchip/rk3562-32$ cp rtconfig.h board/rk3562_evb1_lp4x/defconfig.h& b' d1 w+ C3 B) @3 m
4. 编译源码
2 }% L( k, J# O( X+ ~! Z9 G, V完成配置文件的生成后,我们可以开始编译源码。通过运行构建脚本,选择相应的defconfig配置,并分别编译Linux系统和M0核固件。编译成功后,会在指定目录下生成 amp.img 镜像文件。2 C- o  @% s4 b! k. E" _
* t9 w) G5 k  T2 ~% @* o
forlinx@ubuntu:~/work/OK3562-linux-source/rtos/bsp/rockchip/rk3562-32$ cd ../../../../forlinx@ubuntu:~/work/OK3562-linux-source$ ./build.sh chipLog colors: message notice warning error fatalLog saved at /home/forlinx/work/3562/git/OK3562-linux-source/output/sessions/2024-08-27_15-48-21Switching to chip: ok3562Pick a defconfig:1. forlinx_defconfig2. forlinx_ok3562_linux_defconfig3. forlinx_ok3562_linux_mcu_defconfig4. forlinx_ok3562_linux_rtos_defconfigWhich would you like? [1]: 4   //选择第四个配置forlinx@ubuntu:~/work/OK3562-linux-source$ ./build.sh rtosforlinx@ubuntu:~/work/OK3562-linux-source$ ./build.sh mcu- Y7 g8 B* L7 M$ ~" ~
编译后在rockdev目录下生成amp.img:4 P& A; }7 f/ N$ L. m' K

! S7 l- Z$ t4 m/ e0 {
forlinx@ubuntu:~/work/OK3562-linux-source$ ls rockdev/amp.img  boot.img  linux-headers.tar  MiniLoaderAll.bin  misc.img  oem.img  parameter.txt  recovery.img  rootfs.img  uboot.img  update.img  userdata.img
, {1 Q2 x" r) s, V: k
三、烧写镜像  c( F- ]( ?$ n( y" o" l1 M
将生成的 amp.img 镜像文件拷贝到电脑中,并将开发板切换到烧写模式。使用烧写工具配置 amp.img 的路径。9 S) Y: t/ x& j  ^* m, U' e

) W8 d7 V" w7 U1 R* K
[backcolor=rgba(0, 0, 0, 0.1)]9 M& ?6 f# m! W
[backcolor=rgba(0, 0, 0, 0.1)]
& \$ O9 l3 c5 l. E! _( L& q' e. p' ?4 p- i9 `2 I

% d! R& w6 z: U" K' {
/ Q' M" \$ z9 ~% Y8 i% A# p
9 r8 E: G6 k# U% U" Q) h* K: ^. I% W; g/ i: G# e5 K0 y& \
- x( i6 ]5 ^5 T1 M# K
添加图片注释,不超过 140 字(可选)& L. L7 n" q2 _5 B0 R
2 |4 S! ]; J& |# B1 T
点击“设备分区表”,读取成功后点击“执行”。5 M: I5 `' }3 m& m; n' p7 O! I" l( |
" f$ L2 |" z( z

" r1 C5 E0 o$ M1 A0 l. }6 n
6 A- r% O- a6 T
) \; g0 l7 J& m8 |% P
[backcolor%3保魑患抑档眯爬档墓┯ι蹋鹑缱佑涤惺甑腗CU设计经验,并以双源生产模式、业界先进的MCU工艺技术,以及由250多家生态系统合作伙伴组成的庞大体系为后盾。
! k; o8 {) p8 A8 G4 D& L6 r! H5 T
* E- T; r. ?% D3 l6 D. z( B' |$ _! I, Y3 H1 A+ J9 N. {

' V. ]4 m$ s: y) M
  • TA的每日心情
    开心
    2023-5-15 15:25
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2025-2-28 17:47 | 只看该作者
    RK3562J处理器整体性能很不错,要是有开发板就好了
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-8-23 11:12 , Processed in 0.140625 second(s), 26 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表