CN115391247A - 一种phy数据传输系统 - Google Patents
一种phy数据传输系统 Download PDFInfo
- Publication number
- CN115391247A CN115391247A CN202210965093.6A CN202210965093A CN115391247A CN 115391247 A CN115391247 A CN 115391247A CN 202210965093 A CN202210965093 A CN 202210965093A CN 115391247 A CN115391247 A CN 115391247A
- Authority
- CN
- China
- Prior art keywords
- data
- ram
- dma
- length
- arm
- 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.)
- Granted
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 60
- 238000004891 communication Methods 0.000 claims description 11
- 102100031584 Cell division cycle-associated 7-like protein Human genes 0.000 claims description 8
- 101000777638 Homo sapiens Cell division cycle-associated 7-like protein Proteins 0.000 claims description 8
- 238000000034 method Methods 0.000 claims description 8
- 230000000630 rising effect Effects 0.000 claims description 8
- 101100325756 Arabidopsis thaliana BAM5 gene Proteins 0.000 claims description 7
- 101150046378 RAM1 gene Proteins 0.000 claims description 7
- 101100476489 Rattus norvegicus Slc20a2 gene Proteins 0.000 claims description 7
- 230000001360 synchronised effect Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
Images
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/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- 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/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/606—Protecting data by securing the transmission between two devices or processes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Communication Control (AREA)
Abstract
本发明公开了一种PHY数据传输系统,其中,PHY数据传输装置包括:数据接收转发模块、协议处理模块、仲裁控制器、ARM和上位机;所述数据接收转发模块具有一耦接外部设备硬件接口的PHY数据接收器,所述数据接收转发模块还具有一DDR数据发送器,且所述PHY数据接收器接收的数据通过DDR数据发送器发送到协议处理模块中;所述协议处理模块包括:DDR接收器、RAM、FIFO和DMA;其中,DDR为双倍数据速率;RAM为存储器;FIFO为先进先出阵列;DMA为内存访问模块。本发明传输速率可以达到800Mbps,传输速率是目前通过ARM传输到上位机的传输速率的2倍,大大提高了传输效率。
Description
技术领域
本发明涉及一种数据传输技术领域,具体为一种PHY数据传输系统。
背景技术
PHY中文可称之为端口物理层,是一个对OSI模型物理层的共同简称,PHY数据传输最关键的两个因素是传输速度和传输的安全性,例如,参考图1,申请号201610710456.6,发明名称为一种基于M-PHY接口实现的数据传输加密装置的发明专利,通过主控制器、Flash模块、加解密算法模块和USB-KEY模块组成加解密模块,且PC主机将要写入的数据经过加解密模块实现加密后写入UFS主控端UFSHOST连接的UFS设备;加解密模块实现将UFS设备上的加密数据进行解密后传输给PC主机,能够提高M-PHY数据传输的安全性;
目前PHY数据传输在传输速度上还存在着一定缺陷,现有的PHY数据传输接口通过ARM传输到上位机的传输速率只能达到400Mbps,这样的传输速率已经不能满足现阶段人们的需求,基于现状,急需对现有技术进行改革。
发明内容
本发明的目的在于提供一种PHY数据传输系统,以解决上述背景技术中提出的问题。
一方面,本发明提供如下技术方案一种PHY数据传输装置,包括:数据接收转发模块、协议处理模块、仲裁控制器、ARM(处理器)和上位机;
所述数据接收转发模块具有一耦接外部设备硬件接口的PHY数据接收器,且所述数据接收转发模块还具有一DDR数据发送器,所述PHY数据接收器用于接收外部设备发送的数据,且PHY数据接收器接收的数据通过DDR数据发送器发送到协议处理模块中的DDR接收器中;
所述数据接收转发模块与协议处理模块采用并口通信方式,所述数据接收转发模块输出端包括:用于接收信号的ready信号线、用于判断信号是否有效的valid信号线、用于发送数据的data信号线和用于控制上升沿和下降沿的clk时钟信号线;所述ready信号线为高电平有效,当所述ready信号线为高电平时,协议处理模块的DDR接收器准备好接收数据,且只有在ready信号线为高电平的前提下,所述valid信号线为高电平时,DDR数据发送器发送到DDR接收器的数据才有效。
所述协议处理模块包括:DDR接收器、RAM(存储器)、FIFO(先进先出阵列)和DMA(内存访问模块);
所述DDR仲裁控制器与协议处理模块中的DMA采用AXI协议通信,DDR仲裁控制器与RAM采用SPI协议通信;
在协议处理模块中,所述DDR接收器与FIFO通过信号线fifo_we连接,且所述DDR接收器与RAM之间通过信号线ram_we连接;所述FIFO采用8bits输入32bits输出,且所述FIFO与DMA之间采用AXIS协议通信;
所述FIFO与RAM通过信号线fifo_we和信号线ram_we同步接收DDR数据接收器传输的数据,但是,FIFO与RAM的传输数据不同之处在于:FIFO接收数据后不断的累加并写入到DMA中,而RAM接收数据后以设定的字节数为周期进行更新;
所述DMA和RAM均通过SPI协议与ARM通信,且DMA中具有DMA长度寄存器:DMA_LENGTH_REG、DMA_LENGTH_REG_d1和DMA_LENGTH_REG_d2;且RAM中具有RAM长度寄存器RAM_LENGTH_REG;
ARM定时通过SPI协议一方面查询DMA的长度寄存器,将设定的字节数的整数倍的数据通过DMA传输到ARM的内存中;ARM定时通过SPI协议另一方面查询RAM的长度寄存器,将不足设定的字节数的数据通过RAM传输到ARM的内存中。
另一方面,本发明还提供如下技术方案一种PHY数据传输方法,具体步骤包括:
步骤S1:数据接收转发模块将接收的外部数据通过采用并口通信方式传输到协议处理模块的DDR接收器;
步骤S2:DDR接收器分别通过信号线fifo_we和信号线ram_we将数据同步传输到FIFO和RAM中,且所述FIFO接收数据后不断的累加,且RAM接收数据后以设定的字节数为周期进行更新,且RAM存储的字节数达到设定的字节数时,更新为0字节;
步骤S3:ARM定时通过SPI协议查询DMA的长度寄存器,将步骤S2中所述设定的字节数的整数倍的数据,通过DMA传输到ARM的内存中;
步骤S4:ARM定时通过SPI协议查询RAM的长度寄存器,将小于步骤S2中所述设定的字节数的数据,通过RAM传输到ARM的内存中。
附图说明
图1为现有技术一种基于M-PHY接口实现的数据传输加密装置的结构示意图;
图2为本发明PHY数据传输方法示意图;
图3为本发明PHY数据传输装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参考图3,一方面,本发明提供如下技术方案一种PHY数据传输装置,包括:数据接收转发模块、协议处理模块、仲裁控制器、ARM(处理器)和上位机;
在实施例中,数据接收转发模块具有一耦接外部设备硬件接口的PHY数据接收器,且数据接收转发模块还具有一DDR(双倍数据速率)数据发送器,PHY数据接收器用于接收外部设备发送的数据,且PHY数据接收器接收的数据通过DDR数据发送器发送到协议处理模块中的DDR接收器中;
在实施例中,数据接收转发模块与协议处理模块采用并口通信方式,数据接收转发模块输出端包括:用于接收信号的ready信号线、用于判断信号是否有效的valid信号线、用于发送数据的data信号线和用于控制上升沿和下降沿的clk时钟信号线;所述ready信号线为高电平有效,当所述ready信号线为高电平时,协议处理模块的DDR接收器准备好接收数据,且只有在ready信号线为高电平的前提下,所述valid信号线为高电平时,DDR数据发送器发送到DDR接收器的数据才有效,相应的,在ready信号线为低电平时,无论valid信号线为高电平或者低电平,DDR数据发送器发送到DDR接收器的数据均无效;clk时钟信号线在上升沿和下降沿都有效,由于PHY数据接收器发送8个字节给DDR数据发送器,data信号线在上升沿和下降沿时分别发送4个字节到DDR接收器,有效的节省了数据接收转发模块与协议处理模块之间的总线数量。
所述协议处理模块包括:DDR接收器、RAM(存储器)、FIFO(先进先出阵列)和DMA(内存访问模块);
在实施例中,协议处理模块用于通过DDR接收器接收到数据接收转发模块发送的数据后,为了避免不断的传输到ARM内存中,一直占用ARM内存,导致ARM无法进行其他正常工作的情况,所以协议处理模块在向ARM内存传输数据之前,先通过DDR仲裁控制器对ARM内存申请访问,当ARM内存空闲时,再进行协议处理模块的数据传输,其中,所述DDR仲裁控制器与协议处理模块中的DMA采用AXI协议通信,DDR仲裁控制器与RAM采用SPI协议通信;
在实施例中,在协议处理模块的数据传输过程中,又为了避免一直不断的传输数据,会导致ARM的内存不断的工作,占用ARM内存时间过长的情况,协议处理模块一方面采用64字节的整数倍的数据通过DMA传输到ARM的内存中,另一方面将不足64字节的整数倍的数据通过RAM传输到ARM的内存中;
在实施例中,在协议处理模块中,所述DDR接收器与FIFO通过信号线fifo_we连接,且所述DDR接收器与RAM之间通过信号线ram_we连接;所述FIFO采用8bits输入32bits输出,且所述FIFO与DMA之间采用AXIS协议通信;
在实施例中,所述FIFO与RAM通过信号线fifo_we和信号线ram_we同步接收DDR数据接收器传输的数据,但是,FIFO与RAM的传输数据不同之处在于:FIFO接收数据后不断的累加并写入到DMA中,而RAM接收数据后以设定的字节数(本实施例以64字节为例)为周期进行更新;
在实施例中,所述DMA和RAM均通过SPI协议与ARM通信,且DMA中具有DMA长度寄存器:DMA_LENGTH_REG、DMA_LENGTH_REG_d1和DMA_LENGTH_REG_d2;且RAM中具有RAM长度寄存器RAM_LENGTH_REG;
在实施例中,ARM定时通过SPI协议一方面查询DMA的长度寄存器,将设定的字节数(本实施例以64字节为例)的整数倍的数据通过DMA传输到ARM的内存中;ARM定时通过SPI协议另一方面查询RAM的长度寄存器,将不足设定的字节数(本实施例以64字节为例,即0-63字节)的数据通过RAM传输到ARM的内存中;
在本实施例中,例如在一定时间内,DDR数据接收器同步向FIFO和RAM都传输了68字节的数据,FIFO中存储了68个字节并写入到DMA中,且ARM定时通过SPI协议查询DMA的长度寄存器,将64个字节数据传输到ARM内存中,而RAM中只存储了4个字节,ARM定时通过SPI协议查询RAM的长度寄存器,并在一定时间t3内将该4个字节的数据传输到ARM内存中。
在实施例中,本发明clk时钟信号线的时钟频率为100M,由于clk时钟信号线包括上升沿触发和下降沿触发,且由图3可知数据接收转发模块与协议处理模块的数据位宽为4,所以本发明的传输速率可以达到100×2×4=800Mbps,传输速率是目前通过ARM传输到上位机的传输速率的2倍,大大提高了传输效率。
参考图2,另一方面,本发明还提供如下技术方案一种PHY数据传输方法,基于前述PHY数据传输装置为硬件基础对PHY数据进行传输;具体步骤包括:
步骤S1:数据接收转发模块将接收的外部数据通过采用并口通信方式传输到协议处理模块的DDR接收器;在ready信号线为高电平的前提下,协议处理模块的DDR接收器准备好接收数据,valid信号线为高电平时,DDR数据发送器有效的将数据发送到DDR接收器;
步骤S2:DDR接收器分别通过信号线fifo_we和信号线ram_we将数据同步传输到FIFO和RAM中;FIFO接收数据后不断的累加,而RAM接收数据后以设定的字节数为周期进行更新,在本实施例中,设定的字节数为64字节,当RAM存储的字节数达到64字节时,会更新为0字节;
步骤S3:ARM定时通过SPI协议查询DMA的长度寄存器,将步骤S2中所述设定的字节数的整数倍的数据,通过DMA传输到ARM的内存中;其中,在本实施例中,所述设定的字节为64字节。
步骤S301:当FIFO不为空时,DMA通过读取FIFO中的数据往DMA写入4字节数据,DMA每写入4字节数据,DMA的长度寄存器DMA_LENGTH_REG累加4,且每一段时间t1(本实施例t1采用100ms)锁存一下该数值,并赋值给DMA的长度寄存器DMA_LENGTH_REG_d1,记录此100ms共写入的DMA数据量;其中,且长度寄存器DMA_LENGTH_REG_d1中的字节数小于等于长度寄存器DMA_LENGTH_REG中的字节数。
在实施例中,由于存在长度寄存器DMA_LENGTH_REG_d1中的字节数在100ms时刚好是64字节的情况,若此时ARM通过SPI协议查询DMA的长度寄存器DMA_LENGTH_REG_d1而获取DMA的传输数据时,会导致长度寄存器DMA_LENGTH_REG_d1与RAM抢占传输到ARM内存的情况发生,因此,通过步骤S302进行解决;
步骤S302:在100ms的基础上再延时一段时间t2(本实施例t2采用50ms),并将数据锁存到DMA的长度寄存器DMA_LENGTH_REG_d2中;其中,DMA_LENGTH_REG_d2中的字节数小于等于DMA_LENGTH_REG_d1中的字节数;这样,当长度寄存器DMA_LENGTH_REG_d1中的数据就会延时50ms将64字节的整数倍的数据锁存到长度寄存器DMA_LENGTH_REG_d2中,从而ARM定时通过SPI协议查询DMA的长度寄存器DMA_LENGTH_REG_d2,获取DMA的传输数据,其中,ARM通过SPI查询的长度寄存器DMA_LENGTH_REG_d2的值为64的倍数;
本发明提供另一可选实施例,用于阐述说明上述ARM获取DMA的数据的具体过程:例如,0-99ms之间,FIFO向DMA的长度寄存器DMA_LENGTH_REG写入的数据为60个字节,此时,长度寄存器DMA_LENGTH_REG_d1还没有到100ms锁存,所以,DMA长度寄存器DMA_LENGTH_REG_d1和DMA长度寄存器DMA_LENGTH_REG_d2中数据的字节数都为0;ARM定时通过SPI协议查询DMA的长度寄存器DMA_LENGTH_REG_d2获取DMA的传输数据为0字节;
在实施例中,当100ms时,FIFO向DMA的长度寄存器DMA_LENGTH_REG写入的数据为64个字节,此时,将该64字节数据锁存到DMA长度寄存器DMA_LENGTH_REG_d1中,长度寄存器DMA_LENGTH_REG_d2中的数据字节数还是0;ARM定时通过SPI协议查询DMA的长度寄存器DMA_LENGTH_REG_d2获取DMA的传输数据还是为0字节;
在实施例中,当150ms时,FIFO向DMA的长度寄存器DMA_LENGTH_REG写入的字节数为68字节,此时,将64字节数据锁存到长度寄存器DMA_LENGTH_REG_d1中,且将64字节数据锁存到长度寄存器DMA_LENGTH_REG_d2中,ARM定时通过SPI协议查询DMA的长度寄存器DMA_LENGTH_REG_d2获取DMA的传输数据为64字节。
步骤S4:ARM定时通过SPI协议查询RAM的长度寄存器,将小于步骤S2中所述设定的字节数的数据,通过RAM传输到ARM的内存中;
步骤S401:RAM通过信号线ram_we接收数据后,RAM读写地址累加,将数据保存至RAM的长度寄存器RAM_LENGTH_REG中;RAM中的数据上传到ARM内存有两种方式分别为步骤4021和步骤4022:
步骤4021:将DMA传输数据的时间与RAM传输数据的时间设置为同步,且RAM使用2个RAM(RAM1和RAM2),深度分别为64bytes,采取乒乓存储方式,以150ms为一个周期,ARM定时150ms通过SPI协议查询RAM1的长度寄存器RAM1_LENGTH_REG和RAM2的长度寄存器RAM2_LENGTH_REG;例如,当第一个150ms时,不足64字节的数据锁存到RAM1的长度寄存器RAM1_LENGTH_REG中,ARM在150ms时通过SPI协议查询RAM1的长度寄存器RAM1_LENGTH_REG,获取RAM1的长度寄存器RAM_LENGTH_REG的数据;当第二个150ms时,不足64字节的数据锁存到RAM2的长度寄存器RAM2_LENGTH_REG中,ARM在300ms时,通过SPI协议查询RAM2的长度寄存器RAM2_LENGTH_REG,获取RAM2的长度寄存器RAM_LENGTH_REG的数据。
本发明提供了一可选实施例,在实施例中,当0-150ms时,DDR接收器总计传输了132个字节的数据,其中,ARM通过SPI协议查询DMA的长度寄存器DMA_LENGTH_REG_d2获取DMA的传输数据为128个字节,且ARM通过SPI协议查询RAM1的RAM_LENGTH_REG获取RAM1中4个字节的数据,从而ARM在150ms内获取了128+4=132个字节的数据;若当到300ms时,DDR接收器总计写入了136个字节的数据,ARM通过SPI协议查询RAM2的RAM_LENGTH_REG获取RAM2中151-300ms之间发送的4个字节的数据,从而ARM在300ms内获取了132+4=136个字节的数据。
步骤4022:DMA传输数据的时间与RAM传输数据的时间不同步,ARM通过SPI协议不断的查询RAM_LENGTH_REG中的数据,当RAM中超过一定的时间t3(本实施例t3采用200ms)没有新数据写入,则将RAM写地址锁存至RAM的长度寄存器RAM_LENGTH_REG中,此长度寄存器RAM_LENGTH_REG内的数据值范围必然是0~63字节之间,ARM再通过SPI协议查询RAM_LENGTH_REG,若为非0值,则通过SPI通信的方式将RAM数据读出上传至上位机。
尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种PHY数据传输装置,其特征在于,包括:数据接收转发模块、协议处理模块、仲裁控制器、ARM和上位机;
所述数据接收转发模块具有一耦接外部设备硬件接口的PHY数据接收器,所述PHY数据接收器用于接收外部设备发送的数据;
所述数据接收转发模块还具有一DDR数据发送器,且所述PHY数据接收器接收的数据通过DDR数据发送器发送到协议处理模块中;
所述数据接收转发模块与协议处理模块采用并口通信方式;
所述数据接收转发模块输出端包括:用于接收信号的ready信号线、用于判断信号是否有效的valid信号线、用于发送数据的data信号线和用于控制上升沿和下降沿的clk时钟信号线;
所述协议处理模块包括:DDR接收器、RAM、FIFO和DMA;其中,DDR为双倍数据速率;RAM为存储器;FIFO为先进先出阵列;DMA为内存访问模块;
所述ready信号线、valid信号线、data信号线和clk时钟信号线均加载到DDR接收器的输入端;
所述DDR接收器与FIFO通过信号线fifo_we连接,且所述DDR接收器与RAM之间通过信号线ram_we连接,且所述FIFO与DMA之间采用AXIS协议通信;
所述DDR仲裁控制器与协议处理模块中的DMA采用AXI协议通信,且DDR仲裁控制器与RAM采用SPI协议通信;
所述DMA和RAM均通过SPI协议与ARM通信,且DMA具有DMA长度寄存器:DMA_LENGTH_REG、DMA_LENGTH_REG_d1和DMA_LENGTH_REG_d2;且RAM具有RAM长度寄存器:RAM_LENGTH_REG。
2.根据权利要求1所述的一种PHY数据传输装置,其特征在于:所述ready信号线为高电平且所述valid信号线为高电平时,DDR数据发送器发送到DDR接收器的数据有效。
3.根据权利要求1所述的一种PHY数据传输装置,其特征在于:所述PHY数据接收器发送8个字节给DDR数据发送器,所述data信号线通过在clk时钟信号线上升沿和下降沿时分别发送4个字节到DDR接收器,将数据接收转发模块与协议处理模块之间的总线数量减少一半。
4.根据权利要求1所述的一种PHY数据传输装置,其特征在于:所述协议处理模块在向ARM内存传输数据之前,所述DDR仲裁控制器对ARM内存先申请访问,当ARM内存空闲时,ARM再通过SPI协议读取DMA和RAM中的数据。
5.根据权利要求1所述的一种PHY数据传输装置,其特征在于:所述FIFO与RAM通过信号线fifo_we和信号线ram_we同步接收DDR数据接收器传输的数据;且,
所述FIFO接收数据后不断的累加并写入到DMA中;且,
所述RAM接收数据后以设定的字节数为周期进行更新。
6.根据权利要求1所述的一种PHY数据传输装置,其特征在于:所述ARM定时通过SPI协议查询DMA的长度寄存器,将设定的字节数的整数倍数据通过DMA传输到ARM的内存中;且,
所述ARM定时通过SPI协议查询RAM的长度寄存器,将不足设定的字节数的数据通过RAM传输到ARM的内存中。
7.根据权利要求1所述的一种PHY数据传输装置,其特征在于:所述clk时钟信号线的时钟频率为100M,且数据接收转发模块与协议处理模块的数据位宽为4,且clk时钟信号线具有上升沿和下降沿有效,从而传输速率达到100×4×2=800Mbps。
8.一种如权利要求1-7任意一项所述装置的PHY数据传输方法,其特征在于:
步骤S1:数据接收转发模块将接收的外部数据通过采用并口通信方式传输到协议处理模块的DDR接收器;
步骤S2:DDR接收器分别通过信号线fifo_we和信号线ram_we将数据同步传输到FIFO和RAM中,且所述FIFO接收数据后不断的累加,且RAM接收数据后以设定的字节数为周期进行更新,且RAM存储的字节数达到设定的字节数时,更新为0字节;
步骤S3:ARM定时通过SPI协议查询DMA的长度寄存器,将步骤S2中所述设定的字节数的整数倍的数据,通过DMA传输到ARM的内存中;
步骤S301:当FIFO不为空时,DMA通过读取FIFO中的数据往DMA写入4字节数据,DMA每写入4字节数据,DMA的长度寄存器DMA_LENGTH_REG累加4,且每一段时间t1锁存一下该数值,并赋值给DMA的长度寄存器DMA_LENGTH_REG_d1;其中,长度寄存器DMA_LENGTH_REG_d1中的字节数小于等于长度寄存器DMA_LENGTH_REG中的字节数;
步骤S302:在时间t1的基础上再延时一段时间t2(t2>t1),再将此时的数据锁存到DMA的长度寄存器DMA_LENGTH_REG_d2中,ARM定时通过SPI协议查询DMA的长度寄存器DMA_LENGTH_REG_d2,获取DMA的传输数据,其中,ARM通过SPI查询的长度寄存器DMA_LENGTH_REG_d2的值为步骤S2中所述设定的字节数的整数倍;
步骤S4:ARM定时通过SPI协议查询RAM的长度寄存器,将小于步骤S2中所述设定的字节数的数据,通过RAM传输到ARM的内存中;
步骤S401:RAM通过信号线ram_we接收数据后,RAM读写地址累加,将数据保存至RAM的长度寄存器RAM_LENGTH_REG中;
步骤4021:将DMA传输数据的时间与RAM传输数据的时间设置为同步,且RAM使用2个RAM:RAM1和RAM2,深度分别为64bytes,采取乒乓存储方式,以时间t2为一个周期,ARM定时时间t2通过SPI协议查询RAM1的长度寄存器RAM1_LENGTH_REG和RAM2的长度寄存器RAM2_LENGTH_REG,将数据读出。
9.根据权利要求8所述的PHY数据传输方法,其特征在于:步骤S1中,在ready信号线为高电平的前提下,协议处理模块的DDR接收器准备好接收数据,valid信号线为高电平时,DDR数据发送器有效的将数据发送到DDR接收器。
10.根据权利要求8所述的PHY数据传输方法,其特征在于:所述步骤S4还包括:
步骤S4:ARM定时通过SPI协议查询RAM的长度寄存器,将小于步骤S2中所述设定的字节数的数据,通过RAM传输到ARM的内存中;
步骤S401:RAM通过信号线ram_we接收数据后,RAM读写地址累加,将数据保存至RAM的长度寄存器RAM_LENGTH_REG中;
步骤4022:DMA传输数据的时间与RAM传输数据的时间设置为不同步,ARM通过SPI协议不断的查询RAM_LENGTH_REG中的数据,当RAM中超过一定的时间t3(t3>t2)没有新数据写入,则将RAM写地址锁存至RAM的长度寄存器RAM_LENGTH_REG中,此长度寄存器RAM_LENGTH_REG内的数据值范围必然小于步骤S2中所述设定的字节数之间,ARM再通过SPI协议查询RAM_LENGTH_REG,若为非0值,则将RAM数据读出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210965093.6A CN115391247B (zh) | 2022-08-12 | 2022-08-12 | 一种phy数据传输系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210965093.6A CN115391247B (zh) | 2022-08-12 | 2022-08-12 | 一种phy数据传输系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115391247A true CN115391247A (zh) | 2022-11-25 |
CN115391247B CN115391247B (zh) | 2023-11-03 |
Family
ID=84117744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210965093.6A Active CN115391247B (zh) | 2022-08-12 | 2022-08-12 | 一种phy数据传输系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115391247B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1577292A (zh) * | 2003-07-28 | 2005-02-09 | 深圳市朗科科技有限公司 | 存储控制芯片及数据存储控制方法 |
CN106874224A (zh) * | 2017-02-17 | 2017-06-20 | 杭州朔天科技有限公司 | 自动搬运且适应器件的多线SPI‑Flash控制器 |
CN106933760A (zh) * | 2017-03-13 | 2017-07-07 | 郑州云海信息技术有限公司 | 一种基于axi协议的dma控制器及数据上传方法 |
WO2018049648A1 (zh) * | 2016-09-18 | 2018-03-22 | 深圳市大疆创新科技有限公司 | 数据转换设备、芯片、方法、装置及影像系统 |
CN109412914A (zh) * | 2018-08-31 | 2019-03-01 | 南京理工大学 | 流数据与axi接口通信装置 |
CN112765054A (zh) * | 2019-11-01 | 2021-05-07 | 中国科学院声学研究所 | 一种基于fpga的高速数据采集系统及方法 |
-
2022
- 2022-08-12 CN CN202210965093.6A patent/CN115391247B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1577292A (zh) * | 2003-07-28 | 2005-02-09 | 深圳市朗科科技有限公司 | 存储控制芯片及数据存储控制方法 |
WO2018049648A1 (zh) * | 2016-09-18 | 2018-03-22 | 深圳市大疆创新科技有限公司 | 数据转换设备、芯片、方法、装置及影像系统 |
CN106874224A (zh) * | 2017-02-17 | 2017-06-20 | 杭州朔天科技有限公司 | 自动搬运且适应器件的多线SPI‑Flash控制器 |
CN106933760A (zh) * | 2017-03-13 | 2017-07-07 | 郑州云海信息技术有限公司 | 一种基于axi协议的dma控制器及数据上传方法 |
CN109412914A (zh) * | 2018-08-31 | 2019-03-01 | 南京理工大学 | 流数据与axi接口通信装置 |
CN112765054A (zh) * | 2019-11-01 | 2021-05-07 | 中国科学院声学研究所 | 一种基于fpga的高速数据采集系统及方法 |
Non-Patent Citations (1)
Title |
---|
李仁刚等: "基于FPGA内存数据保护技术的设计与实现", 计算机工程与应用, vol. 56, no. 2020 * |
Also Published As
Publication number | Publication date |
---|---|
CN115391247B (zh) | 2023-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111737175B (zh) | 一种高速spi主从机通信方法、终端设备及存储介质 | |
JP4427214B2 (ja) | 非同期転送モードにおけるホスト・プロセッサおよびディジタル信号プロセッサ間転送用インターフェース・ユニット、およびこれを用いたデータ処理システム | |
CN100471156C (zh) | 数据总线桥接器及其工作方法 | |
KR101885935B1 (ko) | 전환 가능한 데이터 전송 속도에서의 직렬 데이터 전송을 위한 방법 및 그 장치 | |
CN102065569B (zh) | 一种适用于wlan的以太网mac子层控制器 | |
CN110471872A (zh) | 一种基于zynq芯片实现m-lvds总线数据交互系统和方法 | |
CN103346977A (zh) | 一种数据资源的动态分配方法 | |
CN108462620B (zh) | 一种吉比特级SpaceWire总线系统 | |
CN113852533B (zh) | 一种多通道数据通信系统、方法及电子设备 | |
CN100579125C (zh) | 一种pci以太网媒体访问控制器传输数据的方法 | |
CN102571317A (zh) | 软件无线电系统中基于pci总线的数据同步方法及系统 | |
CN103107862B (zh) | 逻辑器件及其mdio数据发送方法 | |
US5898889A (en) | Qualified burst cache for transfer of data between disparate clock domains | |
CN100591067C (zh) | 一种用逻辑实现sdh和以太网速率适配的方法 | |
CN115391247B (zh) | 一种phy数据传输系统 | |
CN116049054A (zh) | 一种spi从设备在跨时钟域中的数据读写方法及系统 | |
CN102035733A (zh) | 通过以太网建立串行数据透明传输通道的方法 | |
CN213069802U (zh) | 非同源时钟数据传输系统 | |
TW202306365A (zh) | 用於互連協定的訊框接收的資料處理的方法以及儲存裝置 | |
TW202310594A (zh) | 用於互連協定的錯誤處理的方法、控制器以及儲存裝置 | |
US7321593B1 (en) | Fibre channel SERDES with elastic transmitter FIFO | |
JP2760280B2 (ja) | 通信データ交換装置および該交換装置を用いた通信システム | |
CN117009276B (zh) | 一种基于axi总线的信号压缩传输的方法、装置及系统 | |
CN218829985U (zh) | 可集成于SoC系统的千兆以太网MAC控制器 | |
CN217135515U (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 |