一种Zynq平台数据交互装置的制造方法

文档序号:9750764阅读:2220来源:国知局
一种Zynq平台数据交互装置的制造方法
【技术领域】
[0001 ] 本发明涉及Zynq平台应用技术,尤其涉及一种Zynq平台PS(Processing System,处理系统)与PL(Programmable Logic,可编程逻辑)数据交互装置。
【背景技术】
[0002]Zynq平台是赛灵思公司(Xilinx)推出的基于Xilinx全可编程SoC(System onChip,片上系统)架构的行业第一个可扩展处理平台,将处理器的软件可编程能力与FPGA(Field Programmable Gate Array,现成可编程门阵列)的硬件可编程能力完美结合,以低功耗和低成本等系统优势实现无以伦比的系统性能、灵活性、可扩展性,为多样化的市场提供了广泛的解决方案,主要涉及视频采集与处理、高速通信、高吞吐量桥接等数字系统和信号密集型应用。
[0003]Zynq平台由两部分组成:处理器系统PS(Processing System)和可编程逻辑PL(Programmable Logic) JS部分以ARM Cortex_A9双核处理器为核心,配有NEON协处理器,片上存储器,AXI互联矩阵,中断控制器,以太网、USB等通用外设控制器等,提供了全面的操作系统支持,包括开源Linux、Android和FreeRTOS等。PL部分基于XiIinx 7系列FPGA架构,采用28nm技术,提供了通用硬件可编程资源,包括CLB(Configurable Logic Blocks,可配置逻辑块)、10B( Input/Output Blocks,输入输出块)、时钟资源、高性能ADC、DSP、BlockRAM(块随机存储器)等。
[0004]为了发挥Zynq平台的优越性能,通常需要将PS与PL配合使用,在PL中实现硬件加速器,解决计算密集等消耗时间的部分,在PS中主要实现数据采集传输、系统流程控制等部分,由此,不可避免会遇到PS与PL进行数据交互的问题。

【发明内容】

[0005]发明目的:本发明针对现有技术的不足,提出一种在Zynq平台上,实现PS与PL进行大数据交互的装置。
[0006]技术方案:本发明提供了一种Zynq平台数据交互装置,包括基于IP核(Intellectual Property,知识产权)设计方法学的处理系统与可编程逻辑单元,所述处理系统包括ZYNQ7处理器系统、AXI_GP0接口、ΑΧΙ_ΗΡ0和AXI_HP2接口 ;
[0007 ] 所述可编程逻辑单元包括AXI DataMover单元、AXI (AdvancedeXtensiblelnterface,高级扩展接口)互联接口、FIF0(First Input First Output,先进先出)存储器以及DataMover控制核;所述AXI DataMover单元为基于AXI总线协议的数据转移核;
[0008]所述ZYNQ7处理器系统通过AXI_GP0接口读取或者写入DataMover控制核的寄存器,用于数据传输参数设定、启动AXI DataMover单元以及监测数据传输结果;ZYNQ7处理器系统通过AXI_HP0和AXI_HP2接口在PS(Processing System)处理系统与PL(ProgrammabIeLogic)可编程逻辑单元间完成数据的传输。
[0009]所述AXI DataMover单元使能MM2S和S2MM传输通道,AXI4总线的存储器映射数据线宽为64位,MM2S和S2MM传输通道的ΑΧΓ流接口数据线宽为32位,丽2S和S2丽传输通道的AXI4总线数据突发传输长度为64个字数据,命令中BTT(Bytes to Transfer,传输字节数)有效比特为20位。
[0010]所述FIFO存储器为AXI流接口的同步FIFO,接口数据总线为32位,深度为65536字
-K-
T O
[0011 ]所述DataMover控制核基于AXI总线传输协议,包括寄存器读写控制模块以及与其相连的MM2S CMD模块、MM2S STS模块、S2MM CMD模块和S2MM STS模块,MM2S STS模块和S2MMSTS模块分别通过S_AXIS_MM2S_STS总线和S_AXIS_S2MM_STS总线与外部通信,MM2S CMD模块和S2MM CMD模块分别通过M_AXIS_MM2S_CMD总线和M_AXIS_S2MM_CMD总线与外部通信,寄存器读写控制模块通#S_AXI_Lite总线接到处理器系统的AXI_GP0接口,供处理器读取或写入寄存器的值。
[0012]所述丽2S CMD模块用于生成AXI DataMover单元的MM2S通道传输需要的命令,其生成的命令字通过M_AXIS_MM2S_CMD总线传输到AXI DataMover单元。
[0013]所述MM2SSTS模块通SS_AXIS_MM2S_STS总线接收AXI DataMover单元的MM2S通道传输数据状态字,通过判断状态字,给出MM2S通道数据传输的状态。
[0014]所述S2丽CMD模块用于生成AXI DataMover单元的S2MM通道传输需要的命令,其生成的命令字通过M_AXIS_S2MM_CMD总线传输到AXI DataMover单元。
[0015]所述S2MMSTS模块通SS_AXIS_S2MM_STS总线接受AXI DataMover单元的S2MM通道传输数据状态字,通过判断状态字,给出S2MM通道数据传输的状态。
[0016]所述寄存器读写控制模块包含了 12个寄存器,用于存储AXI DataMover单元传输数据中需要的参数及传输状态。
[0017]所述处理系统通过读写寄存器读写控制模块中的寄存器控制数据传输与传输状态监测,包括如下步骤:
[0018]步骤1-1,初始化整个硬件处理系统;
[0019]步骤1-2,在处理系统端处理器中配置DataMover控制核中MM2S通道数据传输基地址寄存器,此过程及后续配置过程均通过AXI互联接口和AXI_GP0接口完成;
[0020]步骤1-3,在处理系统端处理器中按需要传输的字节量配置DataMover控制核中MM2S通道需要传输的数据量寄存器;
[0021]步骤1-4,在处理系统端处理器中配置DataMover控制核中S2MM通道数据传输基地址寄存器;
[0022]步骤1-5,在处理系统端处理器中按需要传输的字节量配置DataMover控制核中S2MM通道需要传输的数据量寄存器;
[0023]步骤1-6,在处理系统端处理器中使能AXI DataMover单元MM2S通道;
[0024]步骤1-7,在处理系统端处理器中等待AXI DataMover单元丽2S通道传输完成,此过程中数据流经AXI_HP0接口并存入FIFO存储器;
[0025]步骤1-8,在处理系统端处理器中使能AXI DataMover单元的S2MM通道;
[0026]步骤1-9,在处理系统端处理器中等待AXI DataMover单元的S2MM通道传输完成,此过程中数据流经AXI_HP2接口传回处理器;
[0027]步骤1-10,在处理系统端处理器中比较传输前后数据,分析得出能够正确在PS处理系统与PL可编程逻辑单元之间传输的数据。
[0028]有益效果:本发明与现有技术相比,具有如下优点:
[0029]1.使用AXI DataMover实现PS端与PL端数据交互,简化了系统设计,提高了设计性能,其AXI4总线工作频率最高达280MHz,AXI4 Stream总线工作频率最高达280MHz JM2S和S2MM通道数据吞吐量最高达391.27MB/sec。
[0030]2.通过对DataMover控制核的寄存器的读写,控制数据传输过程,简化了软件的设
i+o
[0031]3.由于AXI HPO和AXI HPl通过互联中相同接口与DDR3(Double Data Rate,双倍速率同步动态随机存储器)连接,AXI HP2和AXI HP3通过互联中另一个相同接口与DDR3连接,所以本发明使用AXI HPO接口与AXI HP2接口进行数据传输,消除数据传输中竞争,提高系统性能。
[0032]4.提出了基于AXI总线协议的IP核开发方法,基于IP核设计方法学的系统构建方法,基于定制硬件的软件设计方法。
【附图说明】
[0033]图1为DataMover控制核实现框图。
[0034]图2为硬件系统框图。
[0035]图3为软件系统框图。
[0036]图4为应用软件控制流程图。
【具体实施方式】
[0037]本发明提供了一种Zynq平台数据交互装置,基于S0PC(System on ProgrammableChip,可编程片上系统)设计方法学构建硬件系统与开发软件控制程序。包括处理系统与可编程逻辑单元,所述处理系统包括ZYNQ7处理器系统、AXI_GP0接口、AXI_HP0和AXI_HP2接口,所述可编程逻辑单元包括AXI DataMover单元,AXI互联接口、FIF0存储器以及DataMover 控制核;
[0038]所述AXI DataMover单元为基于AXI总线协议的数据转移核;
[0039]所述ZYNQ7处理器系统通过AXI_GP0接口读取或者写入DataMover控制核的寄存器,用于数据传输参数设定、启动AXI DataMover单元以及监测数据传输结果;ZYNQ7处理器系统通过AXI_HP0和AXI_HP2接口在处理系统与可编程逻辑单元间完成数据的传输。
[0040]软件控制程序基于上述定制硬件系统,完成数据传输流程控制和数据监测。
[0041 ] 所述AXI DataMover使能MM2S和S2MM传输通道,AXI4总线的存储器映射数据线宽为64位,丽2S和S2MM传输通道的ΑΧΓ流接口数据线宽为32位,丽2S和S2丽传输通道的AXI4总线数据突发传输长度为64个字数据,命令中BTT(Bytes to Transfer,传输字节数)有效比特为20位。
[0042]所述FIFO存储器为AXI流接口的同步FIFO,接口数据总线为32位,深度为65536字
-K-■P。
[0043]所述DataMover控制核如图1所示,基于AXI总线传输协议,包括寄存器读写控制模块以及与其相连的MM2S CMD模块、丽2S STS模块、S2丽CMD模块和S2丽STS模块,MM2S STS模块和S2MM STS模块分别通过S_AXIS_MM2S_STS总线和S_AXIS_S2MM_STS总线与外部通信,MM2S CMD模块和S2MM CMD模块分别通过M_AXI S_MM2S_CMD总线和1々乂I S_S2MM_CMD总线与外部通信,寄存器读写控制模块通过S_AXI_Lite总线接到处理器系统的AXI_GPO接口,供处理器读取或写入寄存器的值。
[0044]所述MM2S CMD模块用于生成AXI
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1