凯发app-凯发天生赢家 >关于创龙 > 新闻资讯 > 技术文章
联系凯发app
contact us公司总机:020-8998-6280
技术热线:020-3893-9437
技术邮箱:support@tronlong.com
销售邮箱:sales@tronlong.com
想了解dsp zynq核间通讯?看完这篇就够了
2021/03/15
上篇推文为大家介绍了创龙科技(tronlong)最新推出的dsp zynq评估板tl6678zh-evm,由核心板和底板构成,核心板(som-tl6678zh)集成了c6678和zynq-7045/7100两款不同架构的处理器。
点击图片了解详情
那么这款dsp zynq核心板,是如何实现核间通讯呢?
核心板简介
som-tl6678zh是一款基于tikeystone架构c6000系列tms320c6678八核c66x定点/浮点dsp,以及xilinx zynq-7000系列xc7z045/xc7z100 soc处理器设计的高端异构多核工业级核心板。tms320c6678每核心主频可高达1.25ghz,xc7z045/xc7z100集成ps端双核arm cortex-a9 pl端kintex-7架构28nm可编程逻辑资源。核心板内部dsp与zynq通过srio通信总线连接,并通过工业级高速b2b连接器引出千兆网口、pcie、hyperlink、emif16、usb、can、uart、gtx等通信接口。
本文主要介绍dsp zynq基于srio的通信案例。
案例源码、产品资料(用户手册、核心板硬件资料、产品规格书)可点击下方链接或扫码二维码获取。
想了解dsp zynq核间通讯?看完这篇就够了-凯发app
srio(serial rapid i/o)是高速串行通信,常用于dsp与dsp、dsp与fpga之间的数据高速传输。srio引脚占用数量少,支持多点传输,速率可配置为1.25gbps、2.5gbps、3.125gbps和5gbps。
srio包含三层结构协议,即、、逻辑层。
(1) 逻辑层:定义包的类型、大小、物理地址、传输协议等必要配置信息。
(2) 传输层:定义包交换、路由和寻址规则,以确保信息在系统内正确传输。
(3) 物理层:包含设备级接口信息,如电气特性、错误管理数据和基本流量控制数据等信息。
rapidio体系结构如下:
2.1 案例功能
评估板dsp端和zynq pl端进行srio通信测试,并统计读写速率。评估板dsp端作为initiator,评估板zynq pl端作为target。srio默认配置为x4模式,每个通道速率5gbps,并分别使用nwrite nread和swrite nread模式进行测试。zynq pl端使用一个36kbit的bram作为设备存储空间,将dsp端发送的过来数据储存至bram。
2.2 案例测试
先加载运行zynq pl端程序,再运行dsp端程序,ccs console窗口将打印测试结果。
nwrite nread模式:nwrite= 12.50gbps nread= 7.74gbps
swrite nread模式:swrite= 12.49gbps nread= 7.74gbps
备注:由于写测试仅统计发送数据至srio fifo的时间,读测试统计发送读请求并等待target发送数据完成的时间,因此写速率将比读速率高。
2.3 关键代码
2.3.1 dsp工程
(1) 程序配置说明。
(2) 使能srio psc,初始化srio子系统,srio通信测试。
(3) 以nwrite nread和swrite nread模式进行srio通信测试,单次读写大小为transfer_size,单位为byte。w_format_type写格式类型在main函数中调用srio_test()传入。
(4) srio写测试流程。
(5) srio读测试流程。
2.3.2 zynq工程
(1) 端口定义。
(2) 使用startupe2原语提供的eos作为系统复位信号,cfgmclk(65mhz)作为系统时钟。
(3) 例化serial rapidio gen2 ip核。
其中serial rapidio gen2 ip核输出的log_clk为125mhz。
(4) 调用srio_response_gen模块,其接口与serial rapidio gen2 ip核连接。
srio详细开发说明请参考产品光盘“6-开发参考资料\ti官方参考文档\”目录下的《serial rapid io (srio) user guide.pdf》文档。
备注:关于本案例涉及的ip核、模块的配置详细说明,可下载产品资料进行查看。
c6678交流群:79635273、332643352
zynq交流群:193393878、645235672