| | |

极致奢华,真正全可编程异构soc开发套件myd-凯发app

文章来源:米尔科技 发布日期:2019.8.13 浏览次数:2713 次

      文章来源:电路城(cirmall)  凯发app的版权归电路城(cirmall)所有
      本产品(myd-czu3eg开发板)详情介绍:http://www.myir-tech.com/product/myc-czu3eg.htm

      随着5g通信、自动驾驶及物联网等新兴应用的发展,图像处理、ai算法加速、软件无线电等复杂多任务设计越来越挑战嵌入式平台的处理能力。专用标准产品只能为设计人员提供无法扩展的固定凯发app的解决方案。这样,为了让设计更灵活就必须添加相应器件,因而不可避免地会拉高bom成本和功耗成本。xilinx的zynq-7000 soc系列作为arm和fpga全可编程的soc,以其灵活的设计方式和优异的性能功耗比,为人所熟知,但是和今天我们要介绍的这款soc平台相比,zynq-7000简直弱爆了。它就是赛灵思推出的真正 all programmable (全可编程)异构多处理 soc——zynq ultrascale mpsoc。

异构多处理 soc——zynq ultrascale mpsoc

      米尔科技推出的myd-czu3eg开发套件搭载的就是ultrascale mpsoc平台器件 — xczu3eg,它集成了四核cortex™-a53 处理器,双核 cortex™-r5 实时处理单元以及mali-400 mp2 图形处理单元及 16nm finfet 可编程逻辑相结合的异构处理系统,具有高性能,低功耗,高扩展等特性,除了这款异构soc之外,板子还搭载了丰富的接口和完善的开发资料,可以帮助开发人员降低产品开发周期,实现产品快速上市,下面我们来一探究竟。

开箱

mpsoc开发板包装

      暖色调的简洁外包装上印有一行“make your idea real”,不免给人一种立马开箱动手躁起来的冲动。

      开箱之后就是摆放在内衬中的板卡和配套设备。除了板卡之外,配套的电源、数据线、sd卡和光盘等等,可谓考虑齐全。

mpsoc开发板包装

mpsoc开发板配件

板卡资源介绍

      笔者迫不及待的拆开板卡的防静电袋,下面来看一下这块性能小怪兽的样子。myd-czu3eg 开发板由myc-czu3eg 核心板加myb-czu3eg 底板组成。散热器下面是核心板,这是一个cpu最小系统模块,集成了主处理器和存储。底板是一块外设接口板,集成了电源和多种接口,方便评估或集成。

mpsoc开发板

      下面我们详细的了解一下板卡详细的组成结构,首先,核心板基于xilinx xczu3eg全可编程处理器,4核cortex-a53(up to 1.5ghz) fpga(154k le),具体型号:xczu3eg-1sfvc784,(未来可选配xczu2cg, xczu3cg,xczu4ev,xczu5ev),性能强大;板载4gb ddr4 sdram(64bit,2400mhz) 及丰富的存储资源,从容应对复杂运算;板载千兆以太网phy 和usb phy , 轻松实现高速互联,如此奢华的配置,板子尺寸只有60*52mm,紧凑程度令人赞叹。

mpsoc核心板

      另外,板子选材和用料讲究,据称使用了intel电源模块,松下的m6 pcb板材,micron存储,村田电容,还是非常良心的。

      底板的外设接口丰富,板载了串口,网口,hdmi,dp,sata,pcie,usb3.0 type-c,lcd,pmod,arduino,fmc-lpc,tf 卡接口,sfp,adc,can等多种接口,方便用户评估或集成。这些接口根据soc的结构,有的接在ps端,有的接在pl端。

mpsoc开发板配置

ps 单元:
  • 1 路千兆以太网
  • 1 路usb3.0 typec 接口
  • 1 路displayport 接口
  • 1 路pcie2.1 x1 接口
  • 1 路sata3.1 接口
  • 1 路can 接口
  • 1 路rs232 串口
  • 1 路tf 卡接口
  • 1 路i2c 接口
  • 1 个复位按键,2 个用户按键,
  • 1 路jtag
  • 内置实时时钟
pl 单元:
  • xadc 接口
  • 1 路xilinx 标准lpfmc 接口
  • 1 路hdmi 接口,rgb 24bit,不支持音频
  • 1 路lcd dip/lpc 接口,rgb 24bit,与hdmi 复用显示信号
  • 电阻式电容式触摸屏接口,集成在lcd 触摸屏接口
  • 2 路pmod
  • 5 个电源指示灯
  • 4 路sfp 模块接口
  • 1 路arduino 接口

      除了板卡之外,套件内的光盘提供了包括用户手册,使用示例、pdf底板原理图,外扩接口驱动,bsp 源码包,开发工具等,为开发者提供了完善的软件开发环境,帮助降低产品开发周期,实现产品快速上市。

mpsoc

mpsoc开发板

      不过现在的笔记本电脑已经很少带光驱了,拷出这些资料也着实废了笔者一番功夫,建议厂商换成u盘来装资料,会更方便一些。

zynq ultrascale mpsoc介绍

      1.真正的全可编程异构多处理soc
      在使用板子之前,我们先来了解一下这款板卡的核心芯片——xczu3eg,这是xilinx继zynq-7000系列之后推出的真正的全可编程异构平台,zynq® ultrascale mpsoc 器件不仅提供 64 位处理器可扩展性,同时还将实时控制与软硬件引擎相结合,支持图形、视频、波形与数据包处理。置于包含通用实时处理器和可编程逻辑的平台上,三个不同变体包括双应用处理器 (cg) 器件、四核应用处理器和 gpu (eg) 器件、以及视频编解码器 (ev) 器件, 为 5g 无线、下一代 adas 和工业物联网创造了无限可能性。

      myd-czu3eg开发套件目前搭载的是eg器件,后期还可以选配cg或ev器件。eg 器件采用运行速率高达 1.5ghz 的四核 arm® cortex-a53 平台与双核 cortex-r5 实时处理器、mali-400 mp2 图形处理单元及 16nm finfet 可编程逻辑相结合。

mpsoc开发板eg器件

      该器件有着无与伦比的集成度、高性能和低功耗特点,与 zynq-7000 soc 相比,系统级性能功耗比提升5 倍,为交付最低系统功耗而精心设计,官方给出的典型应用包括基带 l1 加速、公共安全与移动无线电和8x8 100 mhz td-lte 远端射频单元等场景。

      2. 多媒体的理想系统
      说到应用,不得不提zynq ultrascale mpsoc最最擅长的领域——面向视频编解码器和图形引擎的前沿多媒体凯发app的解决方案。赛灵思soc为多媒体凯发app的解决方案提供了多种支持,包括:

  •  集成型视频编解码器单元 (vcu)
  •  集成型图形处理单元 (gpu)
  •  含集成式 displayport 接口模块
  •  集成型可编程逻辑 (pl)

      ev 器件带有集成型 gpu 和h.264 / h.265视频编解码器,专为超高清 (uhd) 视频而设计带有集成型 h.264 / h.265 视频编解码器,能够同时编解码达 4kx2k (60fps) 的视频,可实现单芯片4k视频处理,当然myd-czu3eg开发板使用的是eg器件,没有视频编解码器,但是有mali-400 mp2 gpu。

      mali-400 mp2 gpu与 apu 直接绑定,还可在帧缓存中加速视频图形渲染,从而实现显示器输出。gpu 可通过独立的并行引擎进行像素渲染,速度远高于依靠 cpu 来处理图形,而且与需要设计人员添加片外 gpu 引擎的凯发app的解决方案相比,成本与功耗均更低。gpu 通过全面可编程的架构加速 2d 和 3d 图形,该架构既支持基于着色器的图形 api ,也支持固定功能图形 api 。gpu 具有抗锯齿功能,能实现最佳图像质量,且几乎不会造成额外的性能损耗。xilinx配套提供经实践检验的全套 linux 驱动程序,能自动将图形命令从 apu 转到 cpu 处理。

      另外,zynq ultrascale mpsoc 提供高速互联外设,后者包含集成式 displayport 接口模块。displayport接口位于 ps 端,可多路复用至四个专用高速串行收发器中的两个,工作速率高达 6 gb/s。该架构摆脱了对于额外显示芯片的需求,进一步降低了系统 bom 成本。

      displayport 接口基于 vesa displayport standard version 1 和 revision 2a 开发,其提供的多个接口能处理来自 ps 或 pl 的实时音视频流,也能存储来自存储器帧缓存的音视频。它同时支持两个音视频流水线,支持 alpha 混合、chroma 复采样、色彩空间转换和音频混合等功能的动态渲染。displayport 既可使用一个 ps pll,也能使用 pl 的时钟生成像素时钟。

      除视频编解码器和图形处理之外,多媒体应用还需要其他重要组件,如视频数据的输入输出管理 , 以及处理高速视频数据的功能。在 pl 内可设计定制化逻辑,用于捕获来自直播源的视频。例如,sdi rx、hdmi rx、mipi csi ip 等协议均可用于捕获不同来源的原始视频。视觉算法可用于采集来自原始数据的重要信息,如路标识别和针对驾驶员辅助技术的动作检测、视频监控面部识别、高级拍摄应用的物体与动作识别等。除收集数据外,算法还可用于音视频广播和视频会议等用例中处理与操控原始数据。考虑到今后几年视频分辨率不可避免的攀升态势,有关算法需要具备极高的工作速度。pl 为此类算法提供了所需的硬件加速功能,便于大幅提高性能,满足下一代技术需求。

      zynq ultrascale mpsoc 的灵活性能加速计算密集型应用程序,在 gpu、cpu 和 pl 之间共享工作负载,在 pl 中可卸载复杂的算数计算以实现硬件加速,并且在 apu 上可预先计算 opengl 着色语言 (glsl) 一致变量。gpu 着色器核心上的计算仅适用于顶点和片断之间不同的值。整批顶点中所有保持常量的值在 cpu 上处理最为有效。

      3. 无与伦比的系统性能功耗比
      zynq ultrascale mpsoc 在设计之初就考虑了高效电源管理问题,该器件被分为四个电源域:

  • 处理系统 (ps) 中的电池电源域包含实时时钟和电池供电的 ram。
  • ps 中的低电源域包含 rpu、通用外设、片上存储器 (ocm)、平台管理单元,以及配置安全单元。
  • ps 中的全电源域包含 apu、高速外设、系统存储器管理器和 ddr 控制器
  • 可编程逻辑 (pl) 位于自身的电源域中

可编程逻辑 (pl)

      zynq ultrascale mpsoc 含有可控制电源域的创新型平台管理单元 (pmu),。pmu 负责器件的安全管理,并监管电源域内的电源。不用的电源域可在启动时关闭,然后智能地通过中断或事件唤醒,实现精细的电源管理。

      我们已经知道zynq ultrascale mpsoc 内部分了多个处理核心,四核arm cortex-a53是应用处理单元,具有高效的基线性能,适合linux应用处理;双核 arm cortex-r5是实时处理单元理想适用于低时延确定性应用,诸如安全模块和 apu 任务分担等,另外图形引擎,高速外设等针对特定应用做了优化,各个模块各司其职,系统性能明显提升。该器件采用了台积电 (tsmc) 的 16nm finfet 工艺节点,。该工艺节点采用更高效的晶体管实现方案,具备最佳的开关速度以及比平面工艺更低的漏电流,因此能实现更高性能和更低功耗。从 28nm 的 zynq-7000 到 16nm 的 zynq ultrascale mpsoc,性能提升了 60%,功耗降低 20%,使原始处理器性能提升 2.7 倍。

示例
      板子qspi闪存预先烧录了linux镜像,默认也是从qspi闪存启动的,使用数据线连接板子串口和pc,连接电源,板子上电,打开putty,可以看到系统启动信息。通过命令行可以登录,默认密码是root。

mpsoc烧录了linux镜像

      光盘中也提供了系统的镜像文件,用户如果不熟悉linux系统编译,可以直接使用。

mpsoc linux系统编译

      另外,myd-czu3eg 光盘中提供了常用外设的演示程序,例如:

  • 使用linux api 操作开发板上的led
  • 使用linux api 操作开发板上的按键
  • 使用linux api 操作开发板上的can
  • 使用linux api 进行网络通讯

      程序以及源码都位于“/examples/”,用户可以根据目录内的makefile 进行编译。

      这里我们使用xilinx vivado新建一个helloworld工程,生成启动镜像,从tf卡启动。整个过程分为:

  • 生成开发板的硬件平台
  • 将硬件平台导出到sdk
  • 创建一个“helloworld”工程
  • 产生boot loader(fsbl)
  • 生成sd 卡启动映像,从microsd启动
以下是笔者实际操作的流程:
(1) 新建vivado工程

      创建一个rtl工程,选择开发板芯片为 xczu3eg-sfvc784-1-e。

vivado

(2)创建block design,添加并配置ps 的ip核

      单击 ip integrator->create block design 新建一个 block design,点击add ip,

      添加zynq ultrascale mpsoc ip核

创建block design

      双击zynq mpsoc 核导入配置文件presets‐‐>apply configuration

zynq mpsoc 核导入配置文件

      厂家在光盘资料中提供了示例预配置文件,导入hello_world.tcl 配置文件,然后点击ok。
(3)生成综合文件

      右击 design_1‐>generate ouput products‐>generate

生成综合文件

(4)生成fpga顶层文件

生成fpga顶层文件

(5)生成bitstream

生成bitstream

(6)导出硬件配置文件

      点击菜单栏上的 file‐>export‐>export hardware‐>ok 导出硬件配置文件

导出硬件配置文件

(7)启动sdk,新建fsbl

      点击菜单栏上的 file‐>launch sdk‐>ok 启动 sdk

mpsoc 启动sdk

      在xilinx sdk软件中,点击file‐‐>application project 新建工程,输入工程名为fsbl,选择zynq mp fsbl,点击finish。

zynq mp fsbl

(8)新建一个helloworld工程

      在xilinx sdk中点击file‐‐>application project 新建工程,输入工程名为hello_world,选择board support package为上一步中生成的fsbl_bsp,选择hello_world 模板,点击finish。

hello_world

board support package

(9)生成boot image

      右击 hello_world ‐‐>create boot image,点击create image,生成boot.bin 启动文件

生成boot image

      将开发板的启动模式switch 开关sw1 的1 拨到off,2 拨到on,3 拨到off,


4 拨到on,设置成tf 卡启动模式,

mpsoc启动模式

      然后将这个boot.bin 文件拷贝到sd 卡,板子接入电源,串口连接电脑,打开电源开关,开发板上运行。电脑端连接microusb线,打开putty,可以板子上电运行在终端打印字符“”“hello world”

mpsoc开发板串口

mpsoc开发板测试

总结
      作为国内首款zynq ultrascale mpsoc平台开发板,myd-czu3eg核心板性能配置强大且设计紧凑可靠,外设底板接口资源丰富,厂家为开发者提供的软件开发环境也比较完善,非常适合人工智能,工业控制,嵌入式视觉,adas,算法加速,云计算,有线/无线通信等应用领域做原型开发。


arm相关新闻

市场活动

研讨会议

培训课程

无线通讯市场

消费类电子产品

行业相关新闻

招聘动态

网站地图