Zynq开发流程的捷径SDSoC

时间:2025-06-17  作者:Diven  阅读:0

之前我们已经向大家介绍了全可编程的Zynq SoC平台应用开发所需的一系列“神器”,如Vivado、Xilinx SDK、PetaLinux等。那么这是否意味着在Zynq开发的过程中就会是“一马平川”呢?

Zynq开发流程的捷径SDSoC

让我们先来看看一个典型的Zynq SoC开发流程(如图1):开发者首先需要对软硬件进行分区,即确定系统哪些部分放入PL(可编程逻辑)中进行硬件加速,哪些部分在PS(处理器系统)中用软件实现;接下来,要完成软/硬件之间的连接,包括使用怎样的DataMover、PS与PL之间的接口如何配置等;之后要完成配套的软件驱动和应用程序的开发。

整个流程通常需要一个完整团队的通力合作,并不简单。而且,开发工作本身就是一个探索性的过程,很多情况下上述所有设计工作完成之后人们才发现,系统在吞吐量、延迟或面积等方面还需要进一步的优化,这就意味着“软硬件区分——硬件架构搭建——驱动和应用软件开发”整个流程要重新来过。如此经过多次迭代,才能获得一个令人满意的设计方案。而因此却可能造成开发周期的不可控,严重拖延Time-To-Market。这无疑是一个很大的挑战。

图1,传统的Zynq SoC开发流程

那么Zynq开发流程,有没有捷径可走呢?Xilinx给出的答案是:有!这个捷径就是SDSoC。

SDSoC是Xilinx推出的一个基于简便易用的Eclipse集成设计环境(IDE)的工具套件,支持Zynq-7000全可编程SoC和Zynq UltraScale+ MPSoC,以及MICroBlaze处理器,可以为开发者提供类似嵌入式 C/C++/OpenCL 应用的开发体验。

如果感觉上面的描述比较抽象,那就让我们来看看使用SDSoC对Zynq开发流程的影响和改变(如图2)。应用SDSoC之后,工具可以自动搭建软硬件之间的通讯部分,包括DataMover、软件驱动程序和硬件连接接口,还可以将整个开发过程抽象到C/C++的应用层面,让开发者以C/C++为起点来进行算法开发。

在进行系统软件/硬件划分时,用户仅需在图形化界面中用鼠标单击指定那些需要进行硬件加速的模块即可。 而在将设计应用到Zynq系统上之后,如果发现性能不达标,可以使用SDSoC快速选择不同的用于硬件加速的功能块,探索不同的硬件/软件分区方案,或是通过pragma等手段来指导工具产生不同的系统配置等方法来进一步优化设计,实现快速的迭代优化。而整个开发过程都是在SDSoC这个统一的IDE中完成的,流程大为简化。有分析认为使用SDSoC进行Zynq系统开发,可以将整体开发时间从数周缩短至数日,甚至数个小时。

图2,采用SDSoC后Zynq SoC开发流程发生的改变

之所以能够达到这样的“境界”,与SDSoC的4个关键特性不无关系:

类似嵌入式开发的体验:SDSoC提供了一个大大简化的C / C++编程体验,用户可以在嵌入式开发人员所熟悉的基于Eclipse的IDE上完成整个Zynq SoC的开发。

系统级的特性描述:几分钟内快速完成性能估算与面积估算,自动监测高速缓存、存储器以及总线利用率,方便探索和实现最佳的总体系统架构。

全系统优化编译器:可将C/C++/OpenCL应用编译成全功能Zynq SoC与MPSoC系统,自动将软件代码放入可编程逻辑中加速,自动产生系统连接,以及相关的库以加速开发。

面向平台开发人员的专家级使用模型:为用户和第三方平台开发者提供了流程支持,通过提供平台描述文件的的手段,可以使自己设计的包含有Zynq SoC的开发板在SDSoC开发环境中使用。

图3,SDSoC开发环境的特点及流程

因此对于一个Zynq开发者来说,熟悉和掌握SDSoC也是一门必修课。在日前由安富利举办的MiniZed Speedway培训活动中,安富利的专家讲师就为学员设置了这样一个有关SDSoC的培训单元,帮助大家理解Xilinx SDSoC工具的概念,并通过实验环节,让学员为一个提供的平台创建一个设计,同时为安富利MiniZed创建一个客户SDSoC平台。通过学习和实际操作,学员可以直观地体验到如何利用SDSoC加速一个算法,这种经验对于开发者未来开发包含定制化算法的客户SDSoC平台并通过SDSoC加速,大有裨益。

MiniZed Speedway培训活动中SDSoC课程要点包括:

什么是SDSoC?

SDSoC的设计流程

SDSoC平台的概念

使用SDSPFM创建客户SDSoC平台

HLS概览

通过实验环节,学员可掌握的技能包括:

SDSoC的基础设计流程

创建一个客户SDSoC平台

当然,所谓“师傅领进门,修行在个人”,SDSoC在设计实战中所能够释放出的强大能量,还需要大家不断地和摸索, Zynq平台高效灵活的优势也才能够随之呈现在用户面前。

猜您喜欢

现代电子产品中,DFN8_2X3MM_EP作为一种高效的封装形式,逐渐受到设计师和工程师的青睐。它不仅具备小巧的体积,还能在高频率和高功率的电路中表现出色。本文...
2025-02-24 15:17:31

现代电子设备中,集成电路(IC)的封装类型对其性能、散热和尺寸都有着重要的影响。HVSSOP10_3X3MM_EP作为一种新型的封装形式,因其优越的特性而受到广...
2025-02-24 10:47:08

在数字电路中,门电路是最基本的构成单位,可以说,任何复杂的数字电路系统都可以通过我们耳熟能详的与门,非门,或门,与非门,异或门等等组合实现。对于各种门电路的逻辑...
2023-06-20 15:43:00

电阻器作为电路中的基础元件,其种类和应用也日益丰富。其中,ROHM(罗姆)瓷管电阻优异的性能和可靠的质量,成为众多电子设计工程师的首选。本文将详细介绍ROHM瓷...
2014-09-13 16:27:30

贴片电阻R120是一种应用于电子电路中的小型电子元件。采用表面贴装技术(SMT),体积小巧,方便机器自动化贴装,从而降低生产成本,提高生产效率。R120的120...
2024-11-29 10:26:01

随着互联网的快速发展,网络通信技术也在不断更新换代。其中,以太网协议(Ethernet Protocol)是一种广泛应用于局域网(LAN)的通信协议。它采用了C...
2023-08-28 15:21:00

贴片电阻,作为电子电路中很重要的基础元件,其材质直接影响着性能和稳定性。市面上常见的贴片电阻主要采用厚膜和薄膜两种技术制造,所使用的材质也各有不同。厚膜电阻通常...
2024-11-29 10:25:30


保护电路安全的保险丝显得尤为重要。汇君(HUIJUN)作为国内知名的一次性保险丝品牌,高品质的产品性能和多样的分类赢得了广大用户的信赖。本文将全面介绍汇君一次性...
2023-06-10 21:37:30

外六角自攻钉是常见的紧固件,应用于建筑、机械、电子等领域。头部呈外六角形状,便于使用扳手或钳子进行紧固,提供了良好的扭矩传递能力。自攻钉的特点在于其尖锐的螺纹设...
2009-07-07 00:00:00