本文主要介绍复旦微FMQL20S400M的PS + PL异构多核开发案例,基于创龙科技的FMQL20SM工业评估板。开发环境如下:Windows开发环境:Windows 7 64bit、Windows 10 64bitPL端开发环境:ProciseIAR:IAR Embedded Workbench ARM 8.11.2* z! B7 a4 C( _ B* n* M9 f# z8 A! `
为了简化描述,本文仅摘录部分方案功能描述与测试结果,详细相关资料请扫描文末二维码下载。! h8 r: S1 D. \! B9 s O6 @
复旦微FMQL20SM ARM+FPGA SoC国产平台3 }6 w' J$ v! f2 {
FMQL20S400M是复旦微四核ARM Cortex-A7@1GHz(PS端)+85K可编程逻辑资源(PL端)异构多核SoC处理器。创龙科技基于FMQL20S400M设计的工业核心板(SOM-TLFM20S)板载的CPU、ROM、RAM、电源、晶振、接器等所有器件,均采用国产工业级方案,国产化率100%。此外,创龙科技基于FMQL20S400M设计的工业评估板(TLFM20S-EVM)接口资源丰富,支持2路Ethernet、4路USB2.0、2路CAN、2路RS485、RS232等,很好的满足客户的项目评估需求!
- a+ H' W( J4 K- g2 `9 E
jnccidt2owx64012363321.jpg
0 h4 `! X& C" m' s) C9 N. W* X; C0 L( s图 1
0 D" i3 T4 u7 z7 `9 ~8 ~" A% t创龙科技FMQL20SM工业评估板硬件资源图解9 O$ x' U% G2 H: b5 o l
$ L; j5 h* W6 \' F
8 }/ G3 b2 B1 r' @; E5 mPS+PL异构多核架构优势/ V2 s: O9 ^7 i, }, e5 o& T+ {
功耗优化根据系统的实际负载情况调整PS端和PL端部分的功耗,可以实现整体功耗的优化。1 y0 q/ y; e) A$ D6 U! i" t1 o
性能提升PS端可以运行操作系统和应用程序,PL端可以执行高速的数据处理或运算任务,针对特定任务进行优化,从而大幅提高系统性能。# v% @ G( ^6 z4 @9 l2 @/ ^7 ]
灵活性和可扩展性PL端可以根据具体需求配置内部的逻辑资源,提高系统的适应性,减少对外部硬件的需求,简化设计,能够适应多种复杂的应用场景。
1 ]: H4 N! ^2 \' iFMQL20SM典型应用领域5 [# w; h0 ]& [9 P) C' u
uiucqn2jw0h64012363421.jpg
* M% \$ N) t7 l9 j$ S# j
图 2 FMQL20SM典型应用领域
+ k; H/ V/ w1 Y! P$ N0 `(点击视频,1分钟解锁复旦微FMQL20SM工业核心板高光时刻!)' R! K3 }8 Q- a! T9 @- k
axi_uart_demo案例演示5 c+ K" i- V- D7 Z: v. n. b
案例说明; G$ h3 e8 q0 C0 J4 L
PS端通过AXI4-Lite总线发送命令至PL端AXI Uartlite IP核,IP核根据命令控制评估底板PL端串口进行数据收发。2 _) s' t- q! ^+ l8 j7 s4 N- l$ p
案例测试将PC机与评估板的调试串口相连接,将评估板的RS232串口连接至PC机的USB接口,硬件连接如下图所示。' ^. v' B5 p- t/ D: s, B" Z! I2 n
moy0hrjyjpv64012363522.png
$ f# S& l& g( ~图 38 |# w1 y$ N$ e- U2 T% ~& |
参考产品资料,先加载设备树文件和PL端可执行文件,然后在PS端串口终端执行如下命令,通过RS232串口向上位机发送字符。Target# echo 'tronlong' > /dev/ttyUL0
, d1 L! L6 l( w6 `! ^% y$ z5 O% c7 T
kwyck0nzk0a64012363622.png
9 Y( s, s8 X8 a Q9 h: P
图 4
8 H s2 \" Q4 |% I8 c此时,RS232串口终端将显示上位机接收到的字符。5 r# k& |/ U( Z3 [! }
% b& l6 h3 F4 t/ K% {0 F
0ylv44fae4g64012363722.png
C1 W$ J2 e% O5 `) }2 a图 5% o/ N& }, x! k) G& _9 D
在PS端串口终端执行如下命令,监听从RS232串口将要接收的字符。Target# cat /dev/ttyUL0" ^$ A2 v, i' K% K# @5 [
qsk4lwsgpzq64012363822.png
) T: R9 G- Z0 M( {" `* w: Y/ h) i图 6# O7 W$ T) O- Q( s% d4 x( E5 ~
在RS232串口窗口中输入字符,再按回车键进行发送。
' }7 x" T% E! e# ?, Z d5 n1 [
1mgdyos4qa264012363922.png
% R4 y8 ^5 n9 v5 C4 I* R& i) @6 U
图 7
' W7 ^) k. g$ E9 v同时,PS端串口终端将会打印通过RS232串口接收到的字符。
2 p4 G: L' J+ h3 |: `; ~. M
xi3f51hkgti64012364022.png
- S3 Z% T7 A+ O: I- g- g
图 8; k% _7 o/ e o) z4 ~" q$ N
( w( n. {- i% x6 M7 y
emio_can案例演示
7 o; \0 G/ L k4 ` v案例说明PS端通过EMIO方式使用CAN接口进行数据收发。" c6 A& H. r- Q" U" M' w
& w$ W# e0 ^$ R. w- A% Z9 x
' l" K# e; T- q. O案例测试% z0 e. @* q i5 ~% U4 [
将评估板CAN接口连接至PC机USB接口,硬件连接如下图所示。
8 L3 e# r8 q) ?( h
' `( F, w' J8 _ Q! N
w0gmjdqav3c64012364122.png
9 S, `8 g4 C3 T$ |% K- Y3 D
图 9
/ O& [* p. D2 k8 M5 {/ L参考产品资料,先加载PL端可执行文件,设置波特率并启动CAN接口后,请执行如下命令,评估板发送帧ID和数据。Target#cansend can0 -i 0x88 0x11 0x22 0x33 0x44 0x55
& O# l% F6 d# `/ q" k7 y
njkxlzyfz2z64012364222.png
- e2 ~6 O# ^' M8 F3 _
图 10
* D! B9 o2 D$ C$ V2 wPC机GCANTools软件接收到评估板发送的帧ID和数据。
6 Q6 I1 c- i( I# ^
14qw1cp4xzv64012364322.png
, l3 |& j) G( w% j, ]& K* t. j* _图 11& ]. f- p$ U6 r6 S
执行如下命令,评估板等待接收数据。Target#candump can0. C: n* b% `$ g) s/ i
4tpofrl32rq64012364422.png
+ O6 j& B3 [, P+ A2 t+ n, n图 124 N0 m: h0 t5 o) I# e
在GCANTools点击“发送”按钮,向评估板发送一帧数据。. V, m; F2 U% O$ S' e4 }+ j
hpsire4y2wl64012364522.png
0 u- g/ w( j0 {9 O* E9 u
图 13" l" T3 k8 A1 A! {' z) @- X, `" C/ }
评估板接收到GCANTools发送的帧ID和数据。* p9 E2 W; l; j8 w, M ~8 O6 ]
! W1 p k! f" z5 z( G7 w Y
owmkvlm2o4k64012364622.png
! w4 }& W) q- `% J. j! G2 m图 14
$ i1 l$ Y& `3 u3 i6 I$ @查看PS+PL异构多核开发案例的更多详情,各位工程师可以扫描下方二维码,下载资料,即可按照步骤进行操作。
9 O7 P; K+ ?' o- ~
jyx01zed4v464012364722.jpg
. C8 X7 h( J3 u' n' `; R
: D8 ~8 ?3 `8 i0 n; n: S
0kfcgyfqoa364012364822.jpg
( J# Z, h6 l+ f7 T) A
2bca2rjyeny64012364922.jpg
/ G8 A0 \7 d7 y/ O
ve3ciivbxa064012365022.jpg
|