CN117520226B - 基于zynq平台的ps端ddr直接访问方法及系统 - Google Patents
基于zynq平台的ps端ddr直接访问方法及系统 Download PDFInfo
- Publication number
- CN117520226B CN117520226B CN202410020307.1A CN202410020307A CN117520226B CN 117520226 B CN117520226 B CN 117520226B CN 202410020307 A CN202410020307 A CN 202410020307A CN 117520226 B CN117520226 B CN 117520226B
- Authority
- CN
- China
- Prior art keywords
- data
- request
- axi
- ddr
- requests
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000012545 processing Methods 0.000 claims abstract description 61
- 238000005070 sampling Methods 0.000 claims description 26
- 230000001360 synchronised effect Effects 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 18
- 230000000977 initiatory effect Effects 0.000 claims description 7
- 238000004806 packaging method and process Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 4
- 230000003139 buffering effect Effects 0.000 claims 1
- 230000003993 interaction Effects 0.000 abstract description 28
- 238000013461 design Methods 0.000 abstract description 18
- 238000012360 testing method Methods 0.000 abstract description 9
- 238000004891 communication Methods 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 29
- 230000005540 biological transmission Effects 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000012937 correction Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 3
- 230000001052 transient effect Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Bus Control (AREA)
Abstract
本发明公开了基于ZYNQ平台的PS端DDR直接访问方法及系统,涉及信号处理技术领域;PL端根据输入数据生成操作请求和AXI总线请求;AXI连接模块根据AXI总线请求配置出对应的AXI总线,操作请求通过AXI总线传输至AXI连接模块;AXI连接模块通过HP端口与PS端内的DDR控制器通信;通过AXI总线配合HP端口实现AXI连接模块与DDR控制器之间的通信,实现PL端直接访问PS端DDR的方式,解决了带宽要求较高的数据的交互问题,同时PL端进行信号处理后可以直接将处理后的数据通过AXI总线和HP端口写入PS端DDR,不需要PL端挂载DDR的设计,节约硬件成本,缩小信号处理测试板设计面积。
Description
技术领域
本发明涉及信号处理技术领域,具体涉及基于ZYNQ平台的PS端DDR直接访问方法及系统。
背景技术
目前信号处理测试板主要以ZYNQ平台为主理器,ZYNQ平台的主要功能是基于PL端实现对各类传感数据的采集,并通过DMA直接内存访问方式传输给PS端,由PL端和PS端对传感数据进行疵点补偿、均匀性校正等信号处理后通过以太网或PL端发送给上位机;上位机软件采集到处理后的所有传感器数据后显示结果。
ZYNQ平台的开发中,PS端需要与PL端之间进行交互,PL端一边对传感数据进行信号处理过程需要储存在挂载DDR上,再通过DMA直接内存访问方式传输给PS端进行下一步处理或储存;该数据处理架构适用于简单的数值型数据,如传感器采集的速度、压力和温度等数据,而对于复杂的图像型的数据,在PL端进行信号处理时,需要PL端额外挂载DDR,PL端处理过程需要储存在挂载DDR上,然后再交互至PS端,这中间存在时间的延迟,当上位机软件需要同步采集数值型数据与图像型数据时,不仅会影响上位机软件采集数据的实时性和准确性,还会增加PL端与PS端数据交互的复杂性。
发明内容
本发明所要解决的技术问题是:在不同类型数据同步采集过程中,传统的ZYNQ平台数据处理架构中PL端与PS端数据交互复杂,且会导致上位机软件采集的图像型数据存在延迟,影响上位机软件同步数据采集的准确性;本发明目的在于提供基于ZYNQ平台的PS端DDR直接访问方法及系统,在传统的ZYNQ平台数据处理架构基础上,进行结构和数据传输方法上的改进,通过AXI连接模块根据AXI总线请求配置出对应的AXI总线用于传输操作请求和操作响应,结合HP端口实现AXI连接模块与DDR控制器(PS端DDR)之间的通信,实现PL端直接访问PS端DDR的方式,解决了带宽要求较高的数据(如图像型数据)的交互问题,同时AXI连接模块通过HP端口与PS端内的DDR控制器通信,PL端进行信号处理时,若需要使用到DDR,也可以直接通过AXI总线和HP端口读写DDR,不需要PL端挂载DDR的设计,节约硬件成本,缩小信号处理测试板设计面积。
本发明通过下述技术方案实现:
本方案提供基于ZYNQ平台的PS端DDR直接访问方法,所述ZYNQ平台包括PL端和BlockDesign模块;所述BlockDesign模块包括PS端和AXI连接模块;
所述方法包括:
步骤一:PL端接收输入数据并生成操作请求和AXI总线请求;
步骤二:AXI连接模块根据AXI总线请求调用对应的AXI总线,PL端将操作请求通过AXI总线传输至AXI连接模块;
步骤三:AXI连接模块通过HP端口与PS端内的DDR控制器通信:
AXI连接模块通过HP端口向DDR控制器发送操作请求,DDR控制器根据操作请求对DDR进行对应操作;DDR控制器将DDR的操作响应通过HP端口发送给AXI连接模块;AXI连接模块通过AXI总线将操作响应传输至PL端。
本方案工作原理:在不同类型数据同步采集过程中,传统的ZYNQ平台数据处理架构中PL端与PS端数据交互复杂,且会导致上位机软件采集的图像型数据存在延迟,影响上位机软件同步数据采集的准确性;本方案在传统的ZYNQ平台数据处理架构基础上,进行结构和数据传输方法上的改进,通过AXI连接模块根据AXI总线请求配置出对应的AXI总线用于传输操作请求和操作响应,结合HP端口实现AXI连接模块与DDR控制器(PS端DDR)之间的通信,实现PL端直接访问PS端DDR的方式,解决了带宽要求较高的数据(如图像型数据)的交互问题,同时AXI连接模块通过HP端口与PS端内的DDR控制器通信,PL端进行信号处理时,若需要使用到DDR,也可以直接通过AXI总线和HP端口读写DDR,不需要PL端挂载DDR的设计,节约硬件成本,缩小信号处理测试板设计面积。本发明中PL端为逻辑端,PS端为软件端,DDR为双倍速率动态随机存储器。
进一步优化方案为,所述操作请求和AXI总线请求的生成方法包括:
S1,打包缓存输入数据;
S2,发起读数据请求/写数据请求;
S3,对写数据请求/读数据请求进行优先级处理,并按照优先级顺序生成AXI总线指令;
S4,根据AXI总线指令,生成对应的AXI总线请求。
本方案主要是针对各类传感数据的采集,尤其是混合型传感数据的同步采集,各个传感器分别连接一个写数据模块,多路写数据模块/读数据模块分别向仲裁模块发起写请求/读请求;仲裁模块对写请求/读请求优先级处理后生成AXI总线指令,若在一个写请求/读请求中需要对数值型数据和图像型数据同步读/写;以写请求为例,对于传统的ZYNQ平台数据处理架构,如图2所示,需要由PL端对写入数据进行数据处理(补偿、信号校正等处理)时需要暂时储存在挂载DDR上,等数据处理完成后,从挂载DDR中读出数据,通过DMA通道传输给PS端,在PS端进行下一步数据处理,过程中数值型数据的数据处理过程速度较快,从PL端到PS端基本不会数据延迟现象,但是对于图像型带宽要求较高且较为复杂的数据,在PL端到PS端的交互过程,大量图像数据需要暂时储存在挂载DDR,并且在PS端还需要进行转换等操作,致使数据从PL端到PS端交互过程中存在时延,对于数值型数据和图像型数据同步写入过程中,导致两种数据存在时差,影响后续上位机软件采集数据的准确性,并且图像型数据从PL端到PS端的交互过程复杂,容易出错;而本方案通过仲裁模块对写请求/读请求进行优先级处理后,生成对应的AXI总线请求,由AXI总线和HP端口实现PL端与PS端DDR的交互,由PL端完成数据处理后通过AXI总线和HP端口直接将数据写入PS端DDR中,由PS端进行下一步数据处理,一方面省去了PL端的挂载DDR,节约硬件成本,缩小板卡设计面积;另一方面,省去了挂载DDR暂时存储过程和PS端的转换操作过程,缩短图像型数据从PL端到PS端的交互时间,简化了图像型数据从PL端到PS端的交互过程。
进一步优化方案为,所述优先级处理包括方法:
按照写数据请求/读数据请求的时间先后顺序进行优先级排列,时间在先的写数据请求/读数据请求,优先于时间在后的写数据请求/读数据请求;
对同一时刻的写数据请求/读数据请求,获取各写数据请求/读数据请求对应的采样模式,采样模式为独立采样的写数据请求/读数据请求,优先于采样模式为同步采样的写数据请求/读数据请求;
对采样模式为同步采样的写数据请求/读数据请求,获取同步采样的数据类型,数据类型为单一型的写数据请求/读数据请求,优先于数据类型为混合型的写数据请求/读数据请求;
对单一型的写数据请求/读数据请求中,数值型数据的写数据请求/读数据请求,优先于图像型数据的写数据请求/读数据请求;
对混合型的写数据请求/读数据请求中,图像型数据的写数据请求/读数据请求,优先于数值型数据的写数据请求/读数据请求;
所述单一型表示写数据请求/读数据请求中的采集数据均为数值型数据或图像型数据;所述混合型表示写数据请求/读数据请求中的采集数据为数值型数据和图像型数据。
为了实现对混合型的写数据请求/读数据请求,避免图像型数据在写数据/读数据中的延时,本方案对混合型的写数据请求/读数据请求,使图像型数据的读写请求,优先于数值型数据的读写请求,以缩短二者的时间差距,提高数据的同步采集效率。对于同一优先级别下的不同数值型数据,或同一优先级别下的不同图像型数据,可以根据预设的规则进行优先级排序。
进一步优化方案为,所述AXI连接模块为BlockDesign模块中的一个官方IP,所述AXI连接模块用于对多个AXI总线进行互联,不同通道的AXI总线通过预设偏移地址区分;所述AXI连接模块还用于统一HP端口的接收方式。
进一步优化方案为,在打包缓存输入数据后,还需将数据的时钟域,从本地时钟域过度到AXI连接模块时钟域,然后再发起写数据请求。
所述AXI连接模块还用于调整HP端口的接收方式,包括方法:
对于采样模式为独立采样的写数据请求/读数据请求,将HP端口的接收方式调整为第一接收方式;
对于采样模式为同步采样的写数据请求/读数据请求,将HP端口的接收方式调整为第二接收方式;
对于混合型的写数据请求/读数据请求,将图像型数据对应HP端口的接收方式调整为第二接收方式,将数值型数据对应HP端口的接收方式调整为第一接收方式。
进一步优化方案为,第二接收方式的接收数据的能力优于第一接收方式。
HP端口可能会支持不同形式的AXI总线,本方案中AXI连接模块根据采样模式和数据类型实时调整HP端口的接收方式,保障同步采样过程的数据传输的稳定性和及时性。
HP端口可能存在有些端口支持收AXI3总线,有些HP端口支持AXI4总线,在进行数据交互时,HP端口的支持方式也会影响数据交互的稳定性和及时性,按照上述方案将支持AXI3总线的HP端口或支持AXI4总线的HP端口进行支持模式的调整,在有图像型数据传输时,调整为传输能力更强的AXI4总线方式(第二接收方式),在简单的独立采样传输过程调整为AXI3总线方式(第一接收方式),不仅提高数据传输的速率和准确性,还能合理利用系统宽带。
本方案还提供基于ZYNQ平台的PS端DDR直接访问系统,用于实现上述的基于ZYNQ平台的PS端DDR直接访问方法;所述ZYNQ平台包括PL端和BlockDesign模块;所述BlockDesign模块包括PS端和AXI连接模块;
PL端,用于接收输入数据后,生成操作请求和AXI总线请求;
AXI连接模块,用于根据AXI总线请求配置出对应的AXI总线,所述操作请求通过AXI总线传输至AXI连接模块;
PS端,内置有DDR控制器和DDR;
所述AXI连接模块还用于通过HP端口与PS端内的DDR控制器通信:
所述AXI连接模块通过HP端口向DDR控制器发送操作请求,DDR控制器根据操作请求对DDR进行对应操作;DDR控制器将DDR的操作响应通过HP端口发送给AXI连接模块;所述操作响应通过AXI总线传输至PL端。
所述PL端包括:写数据模块、读数据模块、仲裁模块和AXI驱动模块;
所述写数据模块用于打包缓存输入数据,并过渡时钟域到AXI接口时钟,然后向仲裁模块发起写数据请求;
所述读数据模块用于向仲裁模块发起读数据请求,并输出仲裁模块发来的操作响应;
所述仲裁模块用于对写数据请求/读数据请求进行优先级处理,并按照优先级顺序生成AXI总线指令;
所述AXI驱动模块根据AXI总线指令,生成对应的AXI总线请求。
所述写数据模块还用于打包缓存输入数据后,将自身时钟域过渡到AXI连接模块的时钟域,然后写数据模块向仲裁模块发起写数据请求。
本方案还提供一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行可实现如上述的基于ZYNQ平台的PS端DDR直接访问方法。
本发明与现有技术相比,具有如下的优点和有益效果:
本发明提供的基于ZYNQ平台的PS端DDR直接访问方法及系统;在传统的ZYNQ平台数据处理架构基础上,进行结构和数据传输方法上的改进,通过AXI连接模块根据AXI总线请求配置出对应的AXI总线用于传输操作请求和操作响应,结合HP端口实现AXI连接模块与DDR控制器(PS端DDR)之间的通信,实现PL端直接访问PS端DDR的方式,解决了带宽要求较高的数据(如图像型数据)的交互问题,同时AXI连接模块通过HP端口与PS端内的DDR控制器通信,PL端进行信号处理后可以直接将处理后的数据通过AXI总线和HP端口写入PS端DDR,不需要PL端挂载DDR的设计,节约硬件成本,缩小信号处理测试板设计面积。
附图说明
为了更清楚地说明本发明示例性实施方式的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。在附图中:
图1为基于ZYNQ平台的PS端DDR直接访问系统结构示意图;
图2为传统的ZYNQ平台数据处理架构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
在不同类型数据同步采集过程中,如图2所示,传统的ZYNQ平台数据处理架构中PL端与PS端数据交互复杂,且会导致上位机软件采集的图像型数据存在延迟,影响上位机软件同步数据采集的准确性;鉴于此,本发明提供以下实施例解决上述技术问题。
实施例1
本实施例提供基于ZYNQ平台的PS端DDR直接访问方法,如图1所示,所述ZYNQ平台包括PL端和BlockDesign模块;所述BlockDesign模块包括PS端和AXI连接模块;
所述方法包括:
步骤一:PL端接收输入数据并生成操作请求和AXI总线请求;
步骤二:AXI连接模块根据AXI总线请求调用对应的AXI总线,PL端将操作请求通过AXI总线传输至AXI连接模块;
步骤三:AXI连接模块通过HP端口与PS端内的DDR控制器通信:
AXI连接模块通过HP端口向DDR控制器发送操作请求,DDR控制器根据操作请求对DDR进行对应操作;DDR控制器将DDR的操作响应通过HP端口发送给AXI连接模块;AXI连接模块通过AXI总线将操作响应传输至PL端。
本方案在传统的ZYNQ平台数据处理架构基础上,进行结构和数据传输方法上的改进,通过AXI连接模块根据AXI总线请求配置出对应的AXI总线用于传输操作请求和操作响应,结合HP端口实现AXI连接模块与DDR控制器(PS端DDR)之间的通信,实现PL端直接访问PS端DDR的方式,解决了带宽要求较高的数据(如图像型数据)的交互问题,同时AXI连接模块通过HP端口与PS端内的DDR控制器通信,PL端进行信号处理后可以直接将处理后的数据通过AXI总线和HP端口写入PS端DDR,不需要PL端挂载DDR的设计,节约硬件成本,缩小信号处理测试板设计面积。
所述操作请求和AXI总线请求的生成方法包括:
S1,打包缓存输入数据;
S2,发起读数据请求/写数据请求;
S3,对写数据请求/读数据请求进行优先级处理,并按照优先级顺序生成AXI总线指令;
S4,根据AXI总线指令,生成对应的AXI总线请求。
本方案主要是针对各类传感数据的采集,尤其是混合型传感数据的同步采集,各个传感器分别连接一个写数据模块,多路写数据模块/读数据模块分别向仲裁模块发起写请求/读请求;仲裁模块对写请求/读请求优先级处理后生成AXI总线指令,若在一个写请求/读请求中需要对数值型数据和图像型数据同步读/写;以写请求为例,对于传统的ZYNQ平台数据处理架构,如图2所示,需要由PL端对写入数据进行数据处理(补偿、信号校正等处理)后暂时储存在挂载DDR上,等数据处理完成后,DDR才通过DMA直接内存访问方式向PS端发出写入请求,在PS端进行下一步数据处理,过程中数值型数据的数据处理过程速度较快,从PL端到PS端基本不会数据延迟现象,但是对于图像型带宽要求较高且较为复杂的数据,在PL端到PS端的交互过程,大量图像数据需要暂时储存在挂载DDR,并且在PS端还需要进行转换等操作,致使数据从PL端到PS端交互过程中存在时延,对于数值型数据和图像型数据同步写入过程中,导致两种数据存在时差,影响后续上位机软件采集数据的准确性,并且图像型数据从PL端到PS端的交互过程复杂,容易出错;而本方案通过仲裁模块对写请求/读请求进行优先级处理后,生成对应的AXI总线请求,由AXI总线和HP端口实现PL端与PS端DDR的交互,由PL端完成数据处理后通过AXI总线和HP端口直接将数据写入PS端DDR中,由PS端进行下一步数据处理,一方面省去了PL端的挂载DDR,节约硬件成本,缩小板卡设计面积;另一方面,省去了挂载DDR暂时存储过程和PS端的转换操作过程,缩短图像型数据从PL端到PS端的交互时间,简化了图像型数据从PL端到PS端的交互过程。
优先级处理包括方法:
按照写数据请求/读数据请求的时间先后顺序进行优先级排列,时间在先的写数据请求/读数据请求,优先于时间在后的写数据请求/读数据请求;
对同一时刻的写数据请求/读数据请求,获取各写数据请求/读数据请求对应的采样模式,采样模式为独立采样的写数据请求/读数据请求,优先于采样模式为同步采样的写数据请求/读数据请求;
对采样模式为同步采样的写数据请求/读数据请求,获取同步采样的数据类型,数据类型为单一型的写数据请求/读数据请求,优先于数据类型为混合型的写数据请求/读数据请求;
对单一型的写数据请求/读数据请求中,数值型数据的写数据请求/读数据请求,优先于图像型数据的写数据请求/读数据请求;
对混合型的写数据请求/读数据请求中,图像型数据的写数据请求/读数据请求,优先于数值型数据的写数据请求/读数据请求;
所述单一型表示写数据请求/读数据请求中的采集数据均为数值型数据或图像型数据;所述混合型表示写数据请求/读数据请求中的采集数据为数值型数据和图像型数据。
所述AXI连接模块为BlockDesign模块中的一个官方IP,所述AXI连接模块用于对多个AXI总线进行互联,不同通道的AXI总线通过预设偏移地址区分;所述AXI连接模块还用于统一HP端口的接收方式。
HP端口可能存在有些端口可接收AXI3总线,有些端口可接收AXI4总线,本方案中AXI连接模块将HP端口的AXI3总线转换为AXI4总线进行统一,方便PL端处理。
所述写数据模块还用于打包缓存输入数据后,将自身时钟域过渡到AXI连接模块的时钟域,然后写数据模块向仲裁模块发起写数据请求。
AXI连接模块还用于调整HP端口的接收方式,包括方法:
对于采样模式为独立采样的写数据请求/读数据请求,将HP端口的接收方式调整为第一接收方式;
对于采样模式为同步采样的写数据请求/读数据请求,将HP端口的接收方式调整为第二接收方式;
对于混合型的写数据请求/读数据请求,将图像型数据对应HP端口的接收方式调整为第二接收方式,将数值型数据对应HP端口的接收方式调整为第一接收方式。
第二接收方式的接收数据的能力优于第一接收方式。
实施例2
本实施例还提供基于ZYNQ平台的PS端DDR直接访问系统,用于实现上述的基于ZYNQ平台的PS端DDR直接访问方法;所述ZYNQ平台包括PL端和BlockDesign模块;所述BlockDesign模块包括PS端和AXI连接模块;
PL端,用于接收输入数据后,生成操作请求和AXI总线请求;
AXI连接模块,用于根据AXI总线请求配置出对应的AXI总线,所述操作请求通过AXI总线传输至AXI连接模块;
PS端,内置有DDR控制器和DDR;
所述AXI连接模块还用于通过HP端口与PS端内的DDR控制器通信:
所述AXI连接模块通过HP端口向DDR控制器发送操作请求,DDR控制器根据操作请求对DDR进行对应操作;DDR控制器将DDR的操作响应通过HP端口发送给AXI连接模块;所述操作响应通过AXI总线传输至PL端。
PS端,用于通过HP端口接收AXI总线的数据,其中的DDR控制器根据AXI总线内的操作请求(如地址和长度等)控制数据读写DDR的操作。
PL端包括:写数据模块、读数据模块、仲裁模块和AXI驱动模块;
述写数据模块用于打包缓存输入数据,并过渡时钟域到AXI接口时钟,向仲裁模块发起写数据请求;
读数据模块用于向仲裁模块发起读数据请求,并输出仲裁模块发来的操作响应;
仲裁模块用于对写数据请求/读数据请求进行优先级处理,并按照优先级顺序生成AXI总线指令;
AXI驱动模块根据AXI总线指令,生成对应的AXI总线请求。
本实施例实现了PL端直接访问PS端DDR拥有以下优势:可实现PS端与PL端之间高带宽数据的交互;数据交互的方式相对简单,即读写PS端DDR即可;可取消PL端挂载DDR的设计,节约硬件成本,缩小板卡设计面积。
实施例3
本实施例还提供一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行可实现如实施例1的基于ZYNQ平台的PS端DDR直接访问方法。本实施例中ZYNQ平台基于Vivado2018.3进行开发。
实施例4
本实施例以信号处理测试板为例,信号处理测试板主要由1片高性能的 ZYNQ芯片(包含FPGA和ARM)、1个千兆网口、2个ADC芯片、3个三轴陀螺仪、3个三轴加速度计、1个三轴磁传感器、1个气压高度计、1个视频采集器等其他外围接口芯片组成,ZYNQ芯片与传感器采用SPI、I2C等接口进行连接;采集各个传感器的数据。信号处理测试板的主要功能是使用PL端实现对三轴陀螺仪、三轴加速度计、三轴磁传感器、气压高度计、视频数据和短波红外传感器数据的采集,再将陀螺仪、加速度计、磁传感器、气压高度计数据和视频数据通过AXI连接模块内部PS-PL数据接口传输给PS端,PS端将陀螺仪、加速度计、磁传感器、气压高度计数据进行补偿和信号处理,再通过PL端UART接口将数据发送给上位机;将视频数据和短波红外传感器信号数据通过AXI连接模块内部PS-PL数据接口传输给PS端,PS端通过图像处理算法对图像原始信号进行疵点补偿和均匀性校正,补偿后数据通过千兆以太网发送给上位机;上位机软件采集到上述所有传感器数据并显示结果。
针对各类传感数据的采集,尤其是混合型传感数据的同步采集,各个传感器分别连接一个写数据模块,多路写数据模块/读数据模块分别向仲裁模块发起写请求/读请求;仲裁模块对写请求/读请求优先级处理后生成AXI总线指令,若在一个写请求/读请求中需要对数值型数据和图像型数据同步读/写;本实施例通过仲裁模块对写请求/读请求进行优先级处理后,生成对应的AXI总线请求,由AXI总线和HP端口实现PL端与PS端DDR的交互,由PL端完成数据处理后通过AXI总线和HP端口直接将数据写入PS端DDR中,由PS端进行下一步数据处理,一方面省去了PL端的挂载DDR,节约硬件成本,缩小板卡设计面积;另一方面,省去了挂载DDR暂时存储过程和PS端的转换操作过程,缩短图像型数据从PL端到PS端的交互时间,简化了图像型数据从PL端到PS端的交互过程。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.基于ZYNQ平台的PS端DDR直接访问方法,其特征在于,所述ZYNQ平台包括PL端和BlockDesign模块;所述BlockDesign模块包括PS端和AXI连接模块;
所述方法包括:
步骤一:PL端接收输入数据并生成操作请求和AXI总线请求;
所述操作请求和AXI总线请求的生成方法包括:
S1,打包缓存输入数据;
S2,发起读数据请求/写数据请求;
S3,对写数据请求/读数据请求进行优先级处理,并按照优先级顺序生成AXI总线指令;
所述优先级处理包括方法:
按照写数据请求/读数据请求的时间先后顺序进行优先级排列,时间在先的写数据请求/读数据请求,优先于时间在后的写数据请求/读数据请求;
对同一时刻的写数据请求/读数据请求,获取各写数据请求/读数据请求对应的采样模式,采样模式为独立采样的写数据请求/读数据请求,优先于采样模式为同步采样的写数据请求/读数据请求;
对采样模式为同步采样的写数据请求/读数据请求,获取同步采样的数据类型,数据类型为单一型的写数据请求/读数据请求,优先于数据类型为混合型的写数据请求/读数据请求;
对单一型的写数据请求/读数据请求中,数值型数据的写数据请求/读数据请求,优先于图像型数据的写数据请求/读数据请求;
对混合型的写数据请求/读数据请求中,图像型数据的写数据请求/读数据请求,优先于数值型数据的写数据请求/读数据请求;
所述单一型表示写数据请求/读数据请求中的采集数据均为数值型数据或图像型数据;所述混合型表示写数据请求/读数据请求中的采集数据为数值型数据和图像型数据;
所述按照优先级顺序生成AXI总线指令,包括方法:
对于采样模式为独立采样的写数据请求/读数据请求,每个写数据请求/读数据请求调用一条AXI总线,并生成输入数据在PS端DDR中的地址指令和占用长度指令;
对于采样模式为同步采样的写数据请求/读数据请求,每个写数据请求/读数据请求调用多条AXI总线;并生成输入数据在PS端DDR中的地址指令和占用长度指令,以及调用多条AXI总线互联指令;
S4,根据AXI总线指令,生成对应的AXI总线请求;
步骤二:AXI连接模块根据AXI总线请求调用对应的AXI总线,PL端将操作请求通过AXI总线传输至AXI连接模块;
步骤三:AXI连接模块通过HP端口与PS端内的DDR控制器通信:
AXI连接模块通过HP端口向DDR控制器发送操作请求,DDR控制器根据操作请求对DDR进行对应操作;DDR控制器将DDR的操作响应通过HP端口发送给AXI连接模块;AXI连接模块通过AXI总线将操作响应传输至PL端。
2.根据权利要求1所述的基于ZYNQ平台的PS端DDR直接访问方法,其特征在于,所述AXI连接模块为BlockDesign模块中的一个官方IP,所述AXI连接模块用于对多个AXI总线进行互联,不同通道的AXI总线通过预设偏移地址区分;所述AXI连接模块还用于调整HP端口的接收方式。
3.根据权利要求2所述的基于ZYNQ平台的PS端DDR直接访问方法,其特征在于,所述AXI连接模块还用于调整HP端口的接收方式,包括方法:
对于采样模式为独立采样的写数据请求/读数据请求,将HP端口的接收方式调整为第一接收方式;
对于采样模式为同步采样的写数据请求/读数据请求,将HP端口的接收方式调整为第二接收方式;
对于混合型的写数据请求/读数据请求,将图像型数据对应HP端口的接收方式调整为第二接收方式,将数值型数据对应HP端口的接收方式调整为第一接收方式。
4.根据权利要求3所述的基于ZYNQ平台的PS端DDR直接访问方法,其特征在于,第二接收方式的接收数据的能力优于第一接收方式。
5.根据权利要求1所述的基于ZYNQ平台的PS端DDR直接访问方法,其特征在于,在打包缓存输入数据后,还需将数据的时钟域,从本地时钟域过度到AXI连接模块时钟域,然后再发起写数据请求。
6.基于ZYNQ平台的PS端DDR直接访问系统,其特征在于,用于实现权利要求1-5任意一项所述的基于ZYNQ平台的PS端DDR直接访问方法;所述ZYNQ平台包括PL端和BlockDesign模块;所述BlockDesign模块包括PS端和AXI连接模块;
所述PL端,用于接收输入数据后,生成操作请求和AXI总线请求;
AXI连接模块,用于根据AXI总线请求调用对应的AXI总线,所述操作请求通过AXI总线传输至AXI连接模块;
PS端,内置有DDR控制器和DDR;
所述AXI连接模块还用于通过HP端口与PS端内的DDR控制器通信:
所述AXI连接模块通过HP端口向DDR控制器发送操作请求,DDR控制器根据操作请求对DDR进行对应操作;DDR控制器将DDR的操作响应通过HP端口发送给AXI连接模块;所述AXI连接模块通过AXI总线将操作响应传输至PL端。
7.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行可实现如权利要求1-5中任意一项所述的基于ZYNQ平台的PS端DDR直接访问方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410020307.1A CN117520226B (zh) | 2024-01-08 | 2024-01-08 | 基于zynq平台的ps端ddr直接访问方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410020307.1A CN117520226B (zh) | 2024-01-08 | 2024-01-08 | 基于zynq平台的ps端ddr直接访问方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117520226A CN117520226A (zh) | 2024-02-06 |
CN117520226B true CN117520226B (zh) | 2024-03-26 |
Family
ID=89742436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410020307.1A Active CN117520226B (zh) | 2024-01-08 | 2024-01-08 | 基于zynq平台的ps端ddr直接访问方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117520226B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118260225A (zh) * | 2024-05-29 | 2024-06-28 | 杭州沃镭智能科技股份有限公司 | 一种基于fpga的多通道dma实现方法 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6567564B1 (en) * | 1996-04-17 | 2003-05-20 | Sarnoff Corporation | Pipelined pyramid processor for image processing systems |
CN108008206A (zh) * | 2017-11-29 | 2018-05-08 | 北京无线电测量研究所 | 一种近场天线发射单元级测量系统 |
CN108107827A (zh) * | 2017-12-13 | 2018-06-01 | 天津津航计算技术研究所 | 一种基于zynq平台软核的srio控制方法 |
CN108132897A (zh) * | 2017-12-13 | 2018-06-08 | 天津津航计算技术研究所 | 一种基于zynq平台软核的srio控制器 |
CN110244304A (zh) * | 2019-04-15 | 2019-09-17 | 浙江工业大学 | 一种基于zynq的侧扫声纳信号处理方法 |
CN110471872A (zh) * | 2019-07-12 | 2019-11-19 | 卡斯柯信号有限公司 | 一种基于zynq芯片实现m-lvds总线数据交互系统和方法 |
CN112235525A (zh) * | 2020-09-15 | 2021-01-15 | 中国科学院微电子研究所 | 基于ZYNQ的GigE接口相机目标识别方法及系统 |
CN112685693A (zh) * | 2020-12-31 | 2021-04-20 | 南方电网科学研究院有限责任公司 | 一种实现Softmax函数的设备 |
CN113302987A (zh) * | 2019-01-10 | 2021-08-24 | 联想(新加坡)私人有限公司 | 上行链路功率控制 |
CN114662125A (zh) * | 2022-02-22 | 2022-06-24 | 大连海事大学 | 一种无人船异构链路多尺度数据安全重构系统 |
CN115693928A (zh) * | 2022-10-14 | 2023-02-03 | 哈尔滨工业大学 | 一种基于zynq的飞机直流远程配电单元及配电控制方法 |
CN116775550A (zh) * | 2023-03-06 | 2023-09-19 | 华南理工大学 | 基于fpga的risc-v处理器自动化部署方法 |
CN117194289A (zh) * | 2023-09-11 | 2023-12-08 | 电子科技大学 | 一种基于fmql的多通道可重构数据传输装置 |
CN117277584A (zh) * | 2023-11-17 | 2023-12-22 | 国网江苏省电力有限公司无锡供电分公司 | 融合电气量与时钟信息的多端电气量保护同步方法与系统 |
CN117292433A (zh) * | 2023-09-22 | 2023-12-26 | 安徽大学 | 一种基于FPGA部署的改进Yolov8行人检测系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10178175B2 (en) * | 2014-12-16 | 2019-01-08 | Verifir | Method and system for triggering an online interaction in connection with a physical product |
-
2024
- 2024-01-08 CN CN202410020307.1A patent/CN117520226B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6567564B1 (en) * | 1996-04-17 | 2003-05-20 | Sarnoff Corporation | Pipelined pyramid processor for image processing systems |
CN108008206A (zh) * | 2017-11-29 | 2018-05-08 | 北京无线电测量研究所 | 一种近场天线发射单元级测量系统 |
CN108107827A (zh) * | 2017-12-13 | 2018-06-01 | 天津津航计算技术研究所 | 一种基于zynq平台软核的srio控制方法 |
CN108132897A (zh) * | 2017-12-13 | 2018-06-08 | 天津津航计算技术研究所 | 一种基于zynq平台软核的srio控制器 |
CN113302987A (zh) * | 2019-01-10 | 2021-08-24 | 联想(新加坡)私人有限公司 | 上行链路功率控制 |
CN110244304A (zh) * | 2019-04-15 | 2019-09-17 | 浙江工业大学 | 一种基于zynq的侧扫声纳信号处理方法 |
CN110471872A (zh) * | 2019-07-12 | 2019-11-19 | 卡斯柯信号有限公司 | 一种基于zynq芯片实现m-lvds总线数据交互系统和方法 |
CN112235525A (zh) * | 2020-09-15 | 2021-01-15 | 中国科学院微电子研究所 | 基于ZYNQ的GigE接口相机目标识别方法及系统 |
CN112685693A (zh) * | 2020-12-31 | 2021-04-20 | 南方电网科学研究院有限责任公司 | 一种实现Softmax函数的设备 |
CN114662125A (zh) * | 2022-02-22 | 2022-06-24 | 大连海事大学 | 一种无人船异构链路多尺度数据安全重构系统 |
CN115693928A (zh) * | 2022-10-14 | 2023-02-03 | 哈尔滨工业大学 | 一种基于zynq的飞机直流远程配电单元及配电控制方法 |
CN116775550A (zh) * | 2023-03-06 | 2023-09-19 | 华南理工大学 | 基于fpga的risc-v处理器自动化部署方法 |
CN117194289A (zh) * | 2023-09-11 | 2023-12-08 | 电子科技大学 | 一种基于fmql的多通道可重构数据传输装置 |
CN117292433A (zh) * | 2023-09-22 | 2023-12-26 | 安徽大学 | 一种基于FPGA部署的改进Yolov8行人检测系统 |
CN117277584A (zh) * | 2023-11-17 | 2023-12-22 | 国网江苏省电力有限公司无锡供电分公司 | 融合电气量与时钟信息的多端电气量保护同步方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
CN117520226A (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN117520226B (zh) | 基于zynq平台的ps端ddr直接访问方法及系统 | |
KR100272072B1 (ko) | 동기형 다이나믹 램들을 활용한 고성능, 고대역폭 메모리 버스구조체 | |
EP1808772B1 (en) | Apparatus, system, and method for graphics memory hub | |
WO2023066391A1 (zh) | 一种内存控制器、物联网芯片及电子设备 | |
US8977788B2 (en) | Observing an internal link via an existing port for system on chip devices | |
US7610061B2 (en) | Communication device and method having a common platform | |
CN212486527U (zh) | 一种基于modbus协议的从站转换装置 | |
CN102638649B (zh) | 一种usb3.0高速高清工业摄像机 | |
CN115379069A (zh) | 带lvds采样时钟相位自校准的图像数据采集传输方法及系统 | |
US20240021239A1 (en) | Hardware Acceleration System for Data Processing, and Chip | |
WO2022213883A1 (zh) | 多个视觉传感器的同步曝光电路、曝光方法及曝光装置 | |
CN115599717B (zh) | 一种数据搬移方法、装置、设备及介质 | |
CN110673021B (zh) | 一种基于NoC的边界扫描测试控制方法及控制器接口 | |
CN111504329B (zh) | 基于fpga和dsp的导航敏感器高速硬件平台 | |
US8244929B2 (en) | Data processing apparatus | |
CN113037604B (zh) | 一种基于两级描述符表征的以太网控制系统 | |
CN115776653A (zh) | 一种车载数据的获取方法、装置、设备及介质 | |
CN113533941A (zh) | 芯片接口的测试方法、装置、计算机设备和存储介质 | |
CN113970896A (zh) | 基于fpga芯片的控制装置及电子设备 | |
CN2775682Y (zh) | 地震勘探数据采集记录系统可视数据处理板 | |
WO2021089430A1 (en) | Bus system and method for operating a bus system | |
CN112468162A (zh) | 双发万兆网中频信号处理机和双路径系统及数据传输方法 | |
CN102855208B (zh) | 一种实现文件交互的系统及方法 | |
CN113132648A (zh) | 一种基于fpga的高速实时视频传输方法 | |
CN115955273B (zh) | 一种光通信总线监听记录板卡 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |