你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【STM32MP157A-DK1】分析启动顺序和双核开发初探

[复制链接]
北方. 发布时间:2020-4-6 21:40
1、相比此前的各式嵌入式MCU,这款MP1是比较复杂的。不仅比M系列复杂,而且比更早推出的A系列也复杂。即使是树莓派用到了A53的多核,但是,ARM-Ax 和ARM-Mx的组合都是需要更大的挑战的。4 Z! f! j9 T/ C% Z, D5 o
相比更早尝试的其他MCU,MP1使用的方法是比较简单的,也没有极其多样的选项(如以太网启动,USB启动等),而且对于公用资源的使用也是相对可行的解决方案,但对于多样的设计,选择不多。
" `$ H$ _) |8 }1 Q这个应该是MP1性能和设计优化的结果,提供一个可靠完整的产品,而且可以期待后面的MP2系列会提供更强大的性能,MP1只是一个起点,后面更多的产品线毫无疑问在路上。
& K. z# J9 `0 O7 R: x- f0 M2. 具体的启动顺序时先启动支持ARM-A7的linux内核,然后再加载M4的代码,对于外设的方法是需要单独配置和定义的。. G* R- d' q7 L8 q
对于linux开发,使用的标准的linux开发程序,那么对于arm-m4的开发,就还是需要CubeMX IDE这样的开发平台。根据这样的开发,可以有2个开发模式:
" m" V( G6 J7 j, c% A% M4 _7 V! E9 bProduction Boot Mode & Engineering Boot mode.3 X5 x  L+ C; ^- [5 p
在生产模式,Linux通常首先从SD卡或者板载NAND/NOR内存启动,通过OpenAMP框架从网络下载,用JTAG调试;在工程模式,剋直接下载到M4内核,通过JTAG直接调试。
9 y: Q9 E8 p% v1 @7 K9 [创建的工程项目范例和熟悉的嵌入式开发结构非常相似,
( a' B  Z2 j9 B7 I. ~% N 1.JPG # b9 E- V1 L) p/ I# ~
。在生产模式,M4开发的代码时通过remoteproc框架通过linux内核加载的,加载的过程不能得到过程参数。加载后,对于M4内核的控制和命令,都徐奥通过A7内核分发命令。
! F4 @+ f. B' Z. D+ x6 A- H在工程模式,linux自动进入loop模式,然后就和对于M系列编程一样,单独开发。
* G+ F7 K2 ]; p9 p0 k+ W# i以上两种方式,boot 模式的设置要正确,这个可以板载的红绿LED灯显示不同状态。* L+ Z1 H7 \# D$ W8 z
3. boot模式的选择是通过3个选择状态实现的,按照手册,参考顺序如下图,
1 `5 V8 j9 B' V5 V# a 2.JPG : u: \# d4 t( E, ^1 ~
那么在这个开发板上只有2个选择开关,直接可用的启动未知就是SD卡启动和串口启动。8 j! V+ h8 }, i- v) G
3.1 串口启动,使用的是DFU/UART协议,
9 a. i7 R( r0 q# ?* p# J 3.JPG 5 t# E& R, r/ p3 [7 i7 o3 r
MCU,外存和串口控制的相互关系就很清楚了。提供串口管理的代码内置在MP1的ROM中,负责加载,验证和执行第一阶段加载FSBL。3.2 安全启动BSEC对应于安全启动的具有一个一次写入的熔断器,在生产模式下,一次写入,不可修改并且阻止访问,对代码具有保护特性。这个是一种知识产权保护的技术措施。
4 C1 v8 m! `! F9 _7 J3.3 启动的加载时在reset指令后访问boot的设定,也可以在程序中用软件resample,但是在整个执行过程,都需要保持一致,不能变化。+ u; e+ y7 m/ ]' C5 P  A
硬件连接如下,' w0 a# o; k8 j) ?
5.JPG
' m! B5 e" r% b" v- Y: a6 W3 _这个硬件设计的逻辑,是在全部都启动失败后,都导向串口启动和调试,
9 ?3 g% e. Q2 V) N+ ? 1.JPG
9 n+ b( _3 L; `这样整个系统实现了即灵活又可靠的启动顺序。
5 e' h, K! @/ c6 e) p* N: E$ h9 \+ Z5 h. B3 P
4. 多核的架构还是独立的,分别通过AHB和AXI总线执行指令,并通过一个不对称的双向数据通道连通,在每一次,只有一个方向,工作在master-slave状态,分别具有不同的访问权限。' |4 |! V: {. v) P" P
同时各自拥有不同的内存访问权限,其中A7对应ROM,SYSRAM,M4独占SRAM。+ c6 P0 O; I0 m3 u" T* P+ w' L
对应的是4G的地址空间,分布如下,  N6 n2 S+ v& [1 o( `
5.JPG
4 l7 Z/ ^/ ~4 G详细的使用,对用着寄存器的访问和操作,在参考手册中描述得比较详细。
' w4 V+ i" f1 O1 J6 H  H3 U3 [: g9 n3 ]
5 _% h8 Y! R/ ~) A  ]) D
赞 收藏 评论2 发布时间:2020-4-6 21:40

举报

2个回答
moyanming2013 回答时间:2020-4-7 11:00:45
1.
$ p4 T+ E; H! M0 w$ ^+ n2.
6 M- J" b) h0 `1 }# K7 T3.' |( h7 _* h6 U8 {
4.- r0 Y/ o- N7 {# C* P
5.
李康1202 回答时间:2020-4-7 11:20:48
楼下围观

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版