電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 3441|回復: 3
收起左側(cè)

DSP + ZYNQ核心板,是如何實現(xiàn)核間通訊呢?|基于DSP + ZYNQ評估板TL6678ZH-EVM

[復制鏈接]

678

主題

902

帖子

8293

積分

高級會員

Rank: 5Rank: 5

積分
8293
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2021-3-16 18:38:54 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
上篇推文為大家介紹了創(chuàng)龍科技(Tronlong)最新推出的DSP + ZYNQ評估板TL6678ZH-EVM,由核心板和底板構成,核心板(SOM-TL6678ZH)集成了C6678和Zynq-7045/7100兩款不同架構的處理器。
6 s, @; w+ b$ {( u" Z# X6 _$ f5 `8 X( R. j7 j, @, O! N

( A6 u: L0 H, x$ l那么這款DSP + ZYNQ核心板,是如何實現(xiàn)核間通訊呢?
( R8 @0 b& ^) [) N
% j/ @6 t9 U1 U; u  K3 ?( @" f

( Q% M4 r  `, `( Y' ~​
! _. r; r) w1 m  O8 |" ?) g: n' Z1 L* f8 q7 m7 I
" e  u# c$ B" f# }: d3 @
核心板簡介' G# A- G  V& R* V( Z* g
SOM-TL6678ZH是一款基于TIKeyStone架構C6000系列TMS320C6678八核C66x定點/浮點DSP,以及Xilinx Zynq-7000系列XC7Z045/XC7Z100 SoC處理器設計的高端異構多核工業(yè)級核心板。TMS320C6678每核心主頻可高達1.25GHz,XC7Z045/XC7Z100集成PS端雙核ARM Cortex-A9 + PL端Kintex-7架構28nm可編程邏輯資源。核心板內(nèi)部DSP與ZYNQ通過SRIO通信總線連接,并通過工業(yè)級高速B2B連接器引出千兆網(wǎng)口、PCIe、HyperLink、EMIF16、USB、CAN、UART、GTX等通信接口。
$ E! U! i0 x1 w# k" O! F) h​6 F$ m- U! S  R- V5 |8 g! R
​
: \7 N# K1 n/ o: p) K
) }, ?" i4 }: n4 ~$ N! |. K
$ D; O) ^& u1 f4 Z
$ n: F. R  \5 i- s

; i8 ?. A( [1 S# [& Z本文主要介紹DSP + ZYNQ基于SRIO的通信案例。
' L. V  s. i: B* B6 Q案例源碼、產(chǎn)品資料(用戶手冊、核心板硬件資料、產(chǎn)品規(guī)格書)可點site.tronlong.com/pfdownload。8 H5 z1 @! W" U" Y: Q
+ i3 l/ `7 z) B4 n: I: V# B  X

* B0 F; n) [, o. k
+ \7 `- Q; s* R! x  E3 u: |
7 c* A( _$ F" i; }$ J( E5 d
1 SRIO簡介SRIO(Serial Rapid I/O)是高速串行RapidIO通信接口,常用于DSP與DSP、DSP與FPGA之間的數(shù)據(jù)高速傳輸。SRIO引腳占用數(shù)量少,支持多點傳輸,速率可配置為1.25Gbps、2.5Gbps、3.125Gbps和5Gbps。
8 D1 `/ t8 \( l  m( `SRIO包含三層結構協(xié)議,即物理層、傳輸層、邏輯層。; L+ `5 u" X% o4 {2 |
(1) 邏輯層:定義包的類型、大小、物理地址、傳輸協(xié)議等必要配置信息。
' f1 n) _. v) ]. m2 i3 S(2) 傳輸層:定義包交換、路由和尋址規(guī)則,以確保信息在系統(tǒng)內(nèi)正確傳輸。
! u- F$ Z0 h8 L(3) 物理層:包含設備級接口信息,如電氣特性、錯誤管理數(shù)據(jù)和基本流量控制數(shù)據(jù)等信息。
# ]8 G! _& `" n0 ORapidIO體系結構如下:
3 U7 f6 e' i, _$ y" z4 Q
4 S7 w- |6 u6 w8 d4 Y; D# b

6 V+ @% _0 n( B+ \3 C& I- v; h
6 I# s3 E, H$ X" i  k# Q! A' B
" N. f  a9 G) ^% v" A& r2 w
​
* U$ [" t8 h6 u7 u: b​
- r; @' A; C5 O6 v: a1 x
/ t  F; }/ N8 V1 k8 h

" r4 ~- S; U3 C, ]8 S$ f2 SRIO通信案例6 B" c0 a1 [! P/ i* I- L+ v- k

3 n/ C' Z1 p2 y* C
' d5 z# t: I3 K) m2 I; @3 j* [, |6 o
, `3 M  d# m1 o3 K7 `
2.1 關鍵代碼2.3.1 DSP工程(1) 程序配置說明。
1 B- ?7 u. ^5 ~1 g7 u& }​
7 o/ O" r6 O; z7 @2 K+ f+ C" t) ?" |! u  `  ?
3 p. ^  i8 d5 K- L: U3 P: C
8 p$ `% s5 T! z

7 g. y& ?+ q1 N5 n& ?. H5 V- m. _# T5 B
: |+ M8 U2 K* U
(2) 使能SRIO PSC,初始化SRIO子系統(tǒng),SRIO通信測試。' F1 c2 j4 h3 o, R+ |

$ {& E1 {5 k9 ?9 i) c! q' J- s$ C

, O. [& L. x) U$ |​
$ \* t" l$ A" ~/ \
/ y7 y- [1 |( a4 P' `$ ~
6 n( N% I' G# C- I6 g
) J6 ?  Y1 Q" N6 ?* y" I6 d
8 \. m. ~$ D6 G) v
: m- V9 Z5 @  O& S6 ?! E

4 g$ D5 o! V' [) E* K% _) a$ `. m4 g8 J​
+ t3 B; d) r& a5 `  j8 Y! c  K1 ?, F
) |4 y' E" m& r3 [/ q* ?

7 N2 I! p4 O% ?) ~7 a8 F7 ]5 n1 v
- M% i) j9 B: q: L
​. m0 Y7 d2 Z' q2 I  ?) [
: X) f& v( O' \

2 i+ }* f( A7 W! `% l9 l  {+ O0 K) C, d
) c+ r0 a; Y1 g8 `: q

; Y- y( y  @4 P/ H* ~; D  ?: p- {# z* t- r: e

3 q" }( }9 a& l  ?2 D1 m6 o(3) 以NWRITE + NREAD和SWRITE + NREAD模式進行SRIO通信測試,單次讀寫大小為transfer_size,單位為Byte。w_format_type寫格式類型在main函數(shù)中調(diào)用srio_test()傳入。
( M2 v' q( k  P) w% s) [8 y5 [* d6 I4 B, q
( u9 q/ l/ s% w6 E9 s
, D& x5 v% b# Z# S+ U! s

* O- Y9 w0 K2 V! b8 N0 u, \- s; ~$ A​
3 L1 n/ q6 Y4 d) C  J6 L6 ]5 b

) D* o; l; z! g0 Y& g0 }2 `  ^: I# x- `

1 {$ z3 c2 P! p" X# @
1 ~6 Z0 N1 E. }# h

/ p  ~, i1 O& [( n# G; O% D4 g(4) SRIO寫測試流程。3 D9 w1 `# d: e- E
) [+ |$ v  E5 c0 \+ P7 a
  _+ r- R1 A# R9 t& W3 M$ B+ w: k
+ P: E9 W' D! p' X6 m9 P0 B$ y! [
4 ?% Y4 j* N4 }
​
( f; F4 c+ S; |8 M! i  F: ?​
) w+ V! a7 r: a4 o/ G' t. P​
1 a% v& f( r. Y% Y) I# D2 B
2 b  u9 E8 X" u; u3 A

7 `) b: P/ d% T8 H- _6 B1 D. j" a5 x$ v' ?
; y8 e) u* C9 _" P! ~* J, [

" e  z+ @( I5 s5 G% y

; V  |2 P, c$ D$ j; h6 }4 p(5) SRIO讀測試流程。
3 u3 R& C, h( E' h9 i0 w
4 Z3 a! n3 `) n' a
; f( t: a  J( ?

6 P2 Y1 N, Z+ z+ b; p2 l

: D2 H- F3 ]4 l$ l( U+ k​
  F6 o' H7 X+ F, h# f​" B" r! M; Q3 @0 I0 {/ l
​
* n; B! ?! u$ x. U: x1 _3 f7 s; ~2 B% I
8 S' Q8 }# Z9 M4 {/ K

9 L) Y: k: p$ j6 ^) j/ G* }
/ ~: H( R2 a& k; d
, P+ T: e0 m1 l. }6 b) `" C; |

# W# ^/ R0 h$ S" o% d: Z/ u8 z
$ \1 B2 b' }) J. U+ H: U: o  v

* j6 l+ y' Q% o. M, G  q2 e2.3.2 ZYNQ工程(1) 端口定義。
0 p  Y. Q* H# \
7 Z3 t0 N2 e3 U0 Q) B, ?6 {

2 x+ M7 y, r) w4 i, {0 l/ @
" L& R- `( _4 l- ?( e  n

0 ~2 Q5 m5 V) l/ `# w​
% A3 X7 b: J9 g/ L1 X7 @6 Y+ \7 @. t, m. f6 c
& J% R* A" y: U) u, q2 |
+ o% O+ |- Y/ x" k2 |
6 |) u9 m( b# X3 T( N3 H
4 s4 E! S6 q3 v- r3 ~
% z/ j5 ~, j$ d8 g' ]% e
(2) 使用STARTUPE2原語提供的EOS作為系統(tǒng)復位信號,CFGMCLK(65MHz)作為系統(tǒng)時鐘。' @/ O% J; N; b
7 j; ^) j' P, u. A, X
1 M: B% A4 o3 v! Q: O2 r

) N% J( q- Q" B+ x1 f% z; L
5 `5 H0 \- I; K" n
​
9 u! r& s+ @+ T" i8 w) \, p& u, \" R( `# T; Y$ Y
" T. C/ @2 t1 O# m% C( h
  x2 ]. Q6 g( s2 v; s

: ?+ p8 ?. h$ E' y8 d+ m7 {6 N% q+ c6 X, M

/ Z& |) @5 M, `+ y. k1 _(3) 例化Serial RapidIO Gen2 IP核。
7 I9 R/ b' `2 [1 ?4 R5 [8 j% k7 U

7 D; x3 f# }; G! E1 Q0 T; Y: ], ^- }, t* Z! M
8 |: a) a7 i% l3 I8 C- \
​/ A4 H- P5 X/ F6 B$ n

- @" Q" L' |: e. V, A

% {9 ^0 S3 q& V
7 W+ `$ L+ q$ q' }  N0 Q. X
* B& |& h$ [! N7 J: e$ ]* t- T. q; a
( O6 L) @* k9 N  ^+ l3 o6 S
6 C/ b4 `- f% C6 t$ a
; z- y. X- F% M$ W
7 i4 i. L# f# n: ]. u( Z/ f: r* K
​
5 i' Y, L1 U- z
. [& p) `( d/ o6 S
8 L; e4 U; u$ e- A0 V' K

9 V; u  _) Z. Y' f! `1 Z
, E: F% W2 S1 W5 l; l4 q7 C
  p9 K0 M9 m( e6 }
+ [6 M) Z/ \0 l# o
​
1 H1 g) X1 ^/ c
; ?- l0 \* W  A4 k

+ S' @, G% I# o4 h% d( O
, ~1 ]# Z  s- \. S5 ]( f8 P
) u- g9 ?/ E# N% z  K8 Y7 {. q  P

/ A# A. g! x/ g1 J  A3 q
5 Z( G0 [: ?8 ~9 _, L5 p7 B
其中Serial RapidIO Gen2 IP核輸出的log_clk為125MHz。0 E' |, o. K8 M  f- o' u2 P8 o

# a$ o; p1 U- w
& p% \. L& x: w, j

( M  k1 v, @9 U
  u3 v1 p- G2 V- R6 u1 T  [* T' T8 ]
​: ]6 z: L2 M1 j8 ?

1 Z1 K# e1 I# f1 n5 q
5 ]5 ~, |; I/ D6 p, {  W
# O- ~" ?2 M2 `% |1 X/ a" f; ]1 O

$ E# d: H8 t) W" C9 J( }  D3 j# l" A
+ i4 i: _! k: p# f! B+ z
(4) 調(diào)用srio_response_gen模塊,其接口與Serial RapidIO Gen2 IP核連接。
# Y' T9 u6 b( b3 V! S0 _2 E8 o9 _1 _% E2 c7 J8 D

2 h1 V6 z( N4 E: }% A* z
$ {0 U/ X  r; g2 l2 Q, k
. T3 G  [; i) g
​
( Y2 g; @# z5 U# Y
% L& m& y, i4 ^2 w/ ?3 |; {9 j
: P+ S5 u2 \! L
, s6 w6 Q/ X% a
( ^5 u9 P. H6 R% Z, a+ j
​" [+ s7 V/ ^) F$ C! V
​! h% V5 W, h! R: H' h0 \

/ s2 H+ D  A( F! G2 L- l
% ]9 d+ N' F& M6 m" j7 z! {
SRIO詳細開發(fā)說明請參考產(chǎn)品光盤“6-開發(fā)參考資料\TI官方參考文檔\”目錄下的《Serial Rapid IO (SRIO) User Guide.pdf》文檔。
/ G* h+ X' ]# P% Q- {: w. [' F備注:關于本案例涉及的IP核、模塊的配置詳細說明,可下載產(chǎn)品資料進行查看。
9 h$ v& a  a- e0 X$ {" H6 U" G0 F- H3 N+ `9 p6 ?
/ q/ z3 U# Z! W
) `; D8 w2 ]4 `
2.2 案例功能評估板DSP端和ZYNQ PL端進行SRIO通信測試,并統(tǒng)計讀寫速率。評估板DSP端作為Initiator,評估板ZYNQ PL端作為Target。SRIO默認配置為x4模式,每個通道速率5Gbps,并分別使用NWRITE + NREAD和SWRITE + NREAD模式進行測試。ZYNQ PL端使用一個36Kbit的BRAM作為設備存儲空間,將DSP端發(fā)送的過來數(shù)據(jù)儲存至BRAM。
$ h: O9 ~" i0 u2.3 案例測試先加載運行ZYNQ PL端程序,再運行DSP端程序,CCS Console窗口將打印測試結果。
; F0 h/ y9 i+ n9 YNWRITE + NREAD模式:NWRITE= 12.50Gbps  NREAD= 7.74Gbps/ F2 M+ s- V! G+ m
SWRITE + NREAD模式:SWRITE= 12.49Gbps   NREAD= 7.74Gbps6 N, |: U3 i$ F  |
備注:由于寫測試僅統(tǒng)計發(fā)送數(shù)據(jù)至SRIO FIFO的時間,讀測試統(tǒng)計發(fā)送讀請求并等待Target發(fā)送數(shù)據(jù)完成的時間,因此寫速率將比讀速率高。0 n! K5 Z) z* Y) t

0 Y8 N% v+ o! }# G

" ^6 K8 O) i: N1 P4 |9 I6 T8 n5 e, m2 @
' Z/ I0 Z! I8 U! E) Y- f% i/ L' Y
​% l8 x8 }( g* C/ D1 e

& ]" h1 v8 u: f5 J
0 G8 D( o. q( Z6 U

$ c! j0 j' Q' {' i5 E4 |* U- [8 |# l, v

, ~2 `* `8 ?6 y2 E$ Z" d- r# e

- J" x# K% Q! m% T
. P& w1 [! F4 @3 r6 [. W3 @
​
# e5 {) H/ A% t& f2 y1 c, E2 b) ~9 m​
/ @2 R; z4 s9 |/ p9 e# e
3 {9 a3 N# w; @& X* U- V

! t) x1 }1 b* h* _/ p: A, E3 j5 y2 X

9 M$ j# }/ O5 B3 _6 M- o+ J
嵌入式DSP、ARM、FPGA多核技術開發(fā),學習資料下載:http://site.tronlong.com/pfdownload
回復

使用道具 舉報

0

主題

13

帖子

34

積分

一級會員

Rank: 1

積分
34
沙發(fā)
發(fā)表于 2021-11-4 23:36:35 | 只看該作者
功能能性替代6678的國產(chǎn)多核定點和浮點數(shù)字處理器,國產(chǎn)替代是趨勢,需要的聯(lián)系QQ:191321088
回復 支持 反對

使用道具 舉報

0

主題

12

帖子

52

積分

一級會員

Rank: 1

積分
52
板凳
發(fā)表于 2021-11-9 10:53:05 | 只看該作者
感謝分享。
回復 支持 反對

使用道具 舉報

0

主題

15

帖子

44

積分

一級會員

Rank: 1

積分
44
地板
發(fā)表于 2022-1-12 09:23:57 來自手機 | 只看該作者
6666666666
回復 支持 反對

使用道具 舉報

發(fā)表回復

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則


聯(lián)系客服 關注微信 下載APP 返回頂部 返回列表