CN105630424A - 数据处理方法、装置及*** - Google Patents

数据处理方法、装置及*** Download PDF

Info

Publication number
CN105630424A
CN105630424A CN201511021641.6A CN201511021641A CN105630424A CN 105630424 A CN105630424 A CN 105630424A CN 201511021641 A CN201511021641 A CN 201511021641A CN 105630424 A CN105630424 A CN 105630424A
Authority
CN
China
Prior art keywords
data
data frame
subaddressing
module
equal
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.)
Pending
Application number
CN201511021641.6A
Other languages
English (en)
Inventor
张聪
姜琰俊
张宏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Space Star Technology Co Ltd
Original Assignee
Space Star Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Space Star Technology Co Ltd filed Critical Space Star Technology Co Ltd
Priority to CN201511021641.6A priority Critical patent/CN105630424A/zh
Publication of CN105630424A publication Critical patent/CN105630424A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)

Abstract

本发明实施例提供了一种数据处理方法、装置及***,在应用于中央处理其的数据处理方法和装置中,中央处理器在接收数据时,可以通过同一个子地址接收同一个数据的所有数据帧。在应用于发送端的数据处理方法和装置中,发送端在发送数据时,可以通过同一子地址将同一数据的所有数据帧发送给外部存储器。在应用于接收端的数据处理方法和装置中,接收端在接收数据时,可以依据中央处理器与其商定的同一子地址接收同一数据的多个数据帧。采用本发明实施例提供的方法、装置和***接收和发送数据,不需要同时占用多个子地址,从而节省了子地址的资源。

Description

数据处理方法、装置及***
技术领域
本发明涉及通信数据领域,更具体的涉及一种数据处理方法、装置及***。
背景技术
机载***包括中央处理器(CPU,CentralProcessingUnit)、数据总线和芯片,芯片可以作为CPU的外部存储器,CPU可以通过总线从外部存储器的外部地址中读取其他终端发送的数据,同时CPU也可以将需要发送的数据放在外部存储器中,下面以CPU为ARM处理器、总线为1553B总线、芯片为1553B芯片为例进行说明。
1553B芯片可以通过1553总线接收发送端发送的数据,发送端需要将数据帧中的数据写入相应的子地址中,每个子地址可以对应存储32个字长的数据,当需要发送的一帧数据的长度超过32个字长时,将无法一次完成数据的发送,此时可以通过多个子地址将同一帧数据分成多个子帧分次发送出去,ARM处理器需要从对应的各个子地址中将数据取出,并按照先后的时序将子帧拼接起来。此种方法需要发送接收双方协议好各个子地址中对应数据的先后顺序,增加了双方协议的内容,并且因为子地址数量是有限的,当数据帧比较多时,将会出现子地址资源使用紧张的情况。
发明内容
有鉴于此,本发明提供了一种数据处理方法、装置及***,用以解决现有技术中当数据帧比较多时,将会出现子地址资源使用紧张的情况的问题,其技术方案如下:
一种数据处理方法,应用于中央处理器,所述数据处理方法包括:
A1、响应于外部存储器收到发送端的第一数据帧的消息对应的第一中断;
A2、通过所述发送端与所述中央处理器商定的第一子地址,接收所述第一数据帧;
A3、依据所述第一数据帧,确定出待接收的数据的总长度以及接收完毕所述数据所需要的次数N,N为大于等于2的正整数;
A4、依据所述数据的总长度,确定出存储所述数据需要的缓存区依据所述数据的总长度,确定出存储所述数据需要的缓存区;
A5、将所述第一数据帧存储至所述缓存区;
A6、通过所述第一子地址接收所述第M数据帧,M为大于等于2小于等于N的正整数;
A7、将所述第M数据帧存储至所述缓存区;
A8、重复步骤A6至步骤A7,直至M等于N。
优选地,在步骤A8之后,还包括:
A9、当通过堆栈指针和EOM判断出第N数据帧未读取完毕时,重新从所述外部存储器中读取。
优选地,在步骤A8之后还包括:
A10、将所述第N数据帧的读取状态信息发送往上位机,所述读取状态信息包括读取完毕信息或未读取完毕信息。
一种数据处理方法,应用于发送端,所述数据处理方法包括:
B1、判断待发送的数据的长度是否大于子地址能够存储数据的最大字节长度;
B2、当所述数据的长度大于所述子地址能够存储数据的最大字节长度时,依据所述数据的长度以及所述子地址能够存储数据的最大字节长度,计算出发送所述数据所需要的次数N,N为大于等于2的正整数;
B3、通过所述发送端与中央处理器商定的第一子地址,发送所述数据的第一数据帧,并将所述次数N和所述数据的总长度信息写入所述第一数据帧中;
B4、当发送完毕所述第M-1数据帧时,通过所述第一子地址,发送所述数据的第M数据帧,M为大于等于2小于等于N的正整数;
B5、重复步骤B4直至M等于N。
一种数据处理方法,应用于接收端,所述数据处理方法包括:
C1、确定出所述外部存储器中存储有中央处理器发送给所述接收端的第一数据帧;
C2、通过所述接收端与所述中央处理器商定的第一子地址,接收所述第一数据帧;
C3、依据所述第一数据帧,确定出待接收的数据的总长度以及接收完毕所述数据所需要的次数N,N为大于等于2的正整数;
C4、从所述外部存储器中依次接收所述数据的第M数据帧,M为大于等于2小于等于N的正整数,且M等于N。
一种数据处理装置,应用于中央处理器,所述数据处理装置包括:
第一响应模块,用于响应与外部存储器收到发送端的第一数据帧的消息对应的第一中断;
第一接收模块,用于通过所述发送端与所述中央处理器商定的第一子地址,接收所述第一数据帧;
第一确定模块,用于依据所述第一数据帧,确定出待接收的数据的总长度以及接收完毕所述数据所需要的次数N,N为大于等于2的正整数;
第二确定模块,用于依据所述数据的总长度,确定出存储所述数据需要的缓存区依据所述数据的总长度,确定出存储所述数据需要的缓存区;
第一存储模块,用于将所述第一数据帧存储至所述缓存区;
第二接收模块,用于通过所述第一子地址接收所述第M数据帧,M为大于等于2小于等于N的正整数;
第二存储模块,用于将所述第M数据帧存储至所述缓存区;
第一触发模块,重复出发所述第二响应模块、所述第二接收模块,所述第二存储模块,直至M等于N。
优选的,还包括:
重新读取模块,用于当通过堆栈指针和EOM判断出第N数据帧未读取完毕时,重新从所述外部存储器中读取;
状态反馈模块,用于将所述第N数据帧的读取状态信息发送往上位机,所述读取状态信息包括读取完毕信息或未读取完毕信息。
一种数据处理装置,应用于发送端,所述数据处理装置包括:
判断模块,用于判断待发送的数据的长度是否大于子地址能够存储数据的最大字节长度;
计算模块,用于当所述数据的长度大于所述子地址能够存储数据的最大字节长度时,依据所述数据的长度以及所述子地址能够存储数据的最大字节长度,计算出发送所述数据所需要的次数N,N为大于等于2的正整数;
第一发送模块,用于通过所述发送端与中央处理器商定的第一子地址,发送所述数据的第一数据帧,并将所述次数N和所述数据的总长度信息写入所述第一数据帧中;
第二发送模块,用于当发送完毕所述第M-1数据帧时,通过所述第一子地址,发送所述数据的第M数据帧,M为大于等于2小于等于N的正整数;
第二触发模块,用于触发所述第二发送模块,直至M等于N。
一种数据处理装置,应用于接收端,所述数据处理装置包括:
第三确定模块,用于确定出所述外部存储器中存储有中央处理器发送给所述接收端的第一数据帧;
第三接收模块,用于通过所述接收端与所述中央处理器商定的第一子地址,接收所述第一数据帧;
第二确定模块,用于依据所述第一数据帧,确定出待接收的数据的总长度以及接收完毕所述数据所需要的次数N,N为大于等于2的正整数;
第四接收模块,用于从所述外部存储器中依次接收所述数据的第M数据帧,M为大于等于2小于等于N的正整数,且M等于N。
一种数据处理***,包括:中央处理器和终端,
所述中央处理器包括上述应用于中央处理器的数据处理装置;
所述终端包括上述应用于接收端的数据处理装置,以及上述应用于发送端的数据处理装置。
上述技术方案具有如下有益效果:
本发明实施例提供的应用于中央处理其的数据处理方法和装置中,中央处理器在接收数据时,可以通过同一个子地址接收同一个数据的所有数据帧,不需要同时占用多个子地址,从而节省了子地址的资源。
本发明实施例提供的应用于发送端的数据处理方法和装置中,发送端在发送数据时,可以通过同一子地址将同一数据的所有数据帧发送给外部存储器,不需要同时占用多个子地址,从而节省了子地址的资源。
本发明实施例提供的应用于接收端的数据处理方法和装置中,接收端在接收数据时,可以依据中央处理器与其商定的同一子地址接收同一数据的多个数据帧,不需要同时占用多个子地址,从而节省了子地址的资源。
附图说明
图1为本发明实施例提供的一种数据处理方法的流程示意图;
图2为本发明实施例提供的一种应用于发送端的数据处理方法的流程示意图;
图3为本发明实施例提供的一种应用于接收端的数据处理方法的流程示意图;
图4为本发明实施例提供的一种应用于中央处理器的数据处理装置的结构示意图;
图5为本发明实施例提供的1553B总线通信下基于ARM处理器的高速处理控制算法的***框图;
图6为本发明实施例提供的一种应用于发送端的数据处理装置的结构示意图;
图7为本发明实施例提供的一种应用于接收端的数据处理装置的结构示意图。
具体实施方式
为了引用和清楚起见,下文中使用的技术名词的说明、简写或缩写总结如下:
CPU:CentralProcessingUnit,中央处理器;
Eom:ENDOFMESSAGE;
BC:总线控制器,BUSCONTROLLER;
RT:远程终端remoteterminal。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,为本发明实施例提供的一种数据处理方法的流程示意图,该方法可以应用于中央处理器,该数据处理方法包括:
步骤S101:响应与外部存储器收到发送端的第一数据帧的消息对应的第一中断。
外部存储器可以为1553B芯片,1553B芯片在接收到发送端发送给中央处理器的数据时,1553B芯片会给中央处理器发送消息,中央处理器就会通过中断来响应该消息。
由于中央处理器在接收同一帧数据时,可能需要接收多个数据帧,所以将该帧数据分为第一数据帧、第二数据,直至第N数据帧,N为大于等于2的正整数。相应的,外部存储器每接收到来自发送端的数据后,都会向中央处理器发送消息,中央处理器会通过中断响应该消息,所以相应的第一数据帧对应第一中断,第二数据对应第二中断,第N数据帧对应第N中断。
步骤S102:通过所述发送端与所述中央处理器商定的第一子地址,接收所述第一数据帧。
发送端与中央处理器在发送数据之前,就已经商定好发送该数据所需要的子地址,以及中央处理器接收该数据所需要的子地址。
为了凸显出中央处理器都是通过同一子地址接收来自发送端的数据,将商定的子地址称为第一子地址。
步骤S103:依据所述第一数据帧,确定出待接收的数据的总长度以及接收完毕所述数据所需要的次数N,N为大于等于2的正整数。
第一数据帧中的表头可以包括数据的总长度,以及接收完毕所述数据所需要的次数N。
以1553B芯片为例,1553B芯片的每一子地址可以存储32个字长的数据,当数据的总长度为150个字长时,次数N为5,次数N为数据的总长度除以子地址可以存储的数据的最大字长的商取整,即INT[150/32]=5,所以N为5。
步骤S104:依据所述数据的总长度,确定出存储所述数据需要的缓存区。
步骤S105:将所述第一数据帧存储至所述缓存区。
假设N为5,这样中央处理器就可以快速响应中断,缓存区将5个数据帧放入同一段缓存区中。
假设中央处理器为ARM处理器,外部存储器为1553B芯片,N为5,ARM处理器通过外部中断来响应1553B芯片发出的中断信号,通过EMC接口来读取1553B芯片中存储区中发送端的数据。ARM连续5次响应中断,并将数据顺序放入ARM的同一段存储区中,待数据全部读取完毕后再整体取出处理。
ARM处理器,可以为NXPLPC3240型处理器。
步骤S106:通过所述第一子地址接收所述第M数据帧。
M为大于等于2小于等于N的正整数。
步骤107:将所述第M数据帧存储至所述缓存区。
步骤S108:重复步骤S106至步骤S107,直至M等于N。
M取值从2一直至M。
本发明实施例所提供的数据处理方法,中央处理器在接收数据时,可以通过同一个子地址接收同一个数据的所有数据帧,不需要同时占用多个子地址,从而节省了子地址的资源。
在上述实施例中,为了确保最后一帧数据读取成功,在步骤S109之后还可以包括:当过通堆栈指针和EOM判断出第N数据帧未读取完毕时,重新从所述外部存储器中读取。
在发送端连续发送消息时,中央处理器进入中断读取指令很容易造成指令丢失,例如在判定完毕堆栈指令时,此时仍有消息发送,中断无法响应该消息,会造成指令丢失,所以本发明实施例还可以包括:在接收到下一个中断时,判定上次中断对应的数据是否未处理完成,如果是,则继续处理上次中断对应的数据,从而避免丢失指令。
在上述任一实施例中,还包括:将所述第N数据帧的读取状态信息发送往上位机,所述读取状态信息包括读取完毕信息或未读取完毕信息。
请参阅图2,为本发明实施例提供的一种应用于发送端的数据处理方法的流程示意图,该数据处理方法可以包括:
步骤S201:判断待发送的数据的长度是否大于子地址能够存储数据的最大字节长度。
步骤S202:当所述数据的长度大于所述子地址能够存储数据的最大字节长度时,依据所述数据的长度以及所述子地址能够存储数据的最大字节长度,计算出发送所述数据所需要的次数N,N为大于等于2的正整数。
以1553B芯片为例,1553B芯片的每一子地址可以存储32个字长的数据,当数据的总长度为150个字长时,次数N为5,次数N为数据的总长度除以子地址可以存储的最大字长的商取整,即INT[150/32]=5,所以N为5。
步骤S203:通过所述发送端与中央处理器商定的第一子地址,发送所述数据的第一数据帧,并将所述次数N和所述数据的总长度信息写入所述第一数据帧中。
步骤S204:当发送完毕所述第M-1数据帧时,通过所述第一子地址,发送所述数据的第M数据帧,M为大于等于2小于等于N的正整数。
步骤S205:重复步骤S204直至M等于N。
M取值从2一直至N。
本发明实施例提供的应用于发送端的数据处理方法中,发送端在发送数据时,可以通过同一子地址将同一数据的所有数据帧发送给外部存储器。不需要同时占用多个子地址,从而节省了子地址的资源。
请参阅图3,为本发明实施例提供的一种应用于接收端的数据处理方法的流程示意图,该数据处理方法描述的是中央处理器将数据发送给接收端的方法,该数据处理方法包括:
步骤S301:确定出所述外部存储器中存储有中央处理器发送给所述接收端的第一数据帧。
步骤S302:通过所述接收端与所述中央处理器商定的第一子地址,接收所述第一数据帧。
步骤S303:依据所述第一数据帧,确定出待接收的数据的总长度以及接收完毕所述数据所需要的次数N,N为大于等于2的正整数。
步骤S304:从所述外部存储器中依次接收所述数据的第M数据帧,M为大于等于2小于等于N的正整数,直至M等于N。
M取值从2一直至N。
本发明实施例提供的应用于接收端的数据处理方法中,接收端在接收数据时,可以依据中央处理器与其商定的同一子地址接收同一数据的多个数据帧。不需要同时占用多个子地址,从而节省了子地址的资源。
上述本发明公开的实施例中详细描述了方法,对于本发明的方法可采用多种形式的装置实现,因此本发明还公开了多种装置,下面给出具体的实施例进行详细说明。
请参阅图4,为本发明实施例提供的一种应用于中央处理器的数据处理装置的结构示意图,该数据处理装置包括:第一响应模块401、第一接收模块402、第一确定模块403、第二确定模块404、第一存储模块405、第二接收模块407、第二存储模块408、第一触发模块409,其中:
第一响应模块401,用于响应与外部存储器收到发送端的第一数据帧的消息对应的第一中断。
外部存储器可以为1553B芯片,1553B芯片在接收到发送端发送给中央处理器的数据时,1553B芯片会给中央处理器发送消息,中央处理器就会通过中断来响应该消息。
由于中央处理器在接收同一帧数据时,可能需要接收多个数据帧,所以将该帧数据分为第一数据帧、第二数据,直至第N数据帧,N为大于等于2的正整数。相应的,外部存储器每接收到来自发送端的数据后,都会向中央处理器发送消息,中央处理器通过中断响应该消息,所以相应的第一数据帧对应第一中断,第二数据对应第二中断,第N数据帧对应第N中断。
第一接收模块402,用于通过所述发送端与所述中央处理器商定的第一子地址,接收所述第一数据帧。
发送端与中央处理器在发送数据之前,就已经商定好发送该数据所需要的地址,以及中央处理器接收该数据所需要的地址。
为了凸显出中央处理器都是通过同一子地址接收来自发送端的数据,将商定的子地址称为第一子地址。
第一确定模块403,用于依据所述第一数据帧,确定出待接收的数据的总长度以及接收完毕所述数据所需要的次数N,N为大于等于2的正整数。
第一数据帧中的表头可以包括数据的总长度,以及接收完毕所述数据所需要的次数N。
以1553B芯片为例,1553B芯片的每一子地址可以存储32个字长的数据,当数据的总长度为150个字长时,次数N为5,次数N为数据的总长度除以子地址可以存储的最大字长的商取整,即INT[150/32]=5,所以N为5。
第二确定模块404,用于依据所述数据的总长度,确定出存储所述数据需要的缓存区。
第一存储模块405,用于将所述第一数据帧存储至所述缓存区。
假设N为5,这样中央处理器就可以快速响应中断,缓存区将5个数据帧放入同一段缓存区中。
假设中央处理器为ARM处理器,外部存储器为1553B芯片,N为5,ARM处理器通过外部中断来响应1553B芯片发出的中断信号,通过EMC接口来读取1553B芯片中存储区中发送端的数据。ARM连续5次响应中断,并将数据顺序放入ARM的同一段存储区中,待数据全部读取完毕后再整体取出处理。
第二接收模块407,用于通过所述第一子地址接收所述第M数据帧。
M为大于等于2小于等于N的正整数。
第二存储模块408,用于将所述第M数据帧存储至所述缓存区。
第一触发模块409,重复出发所述第二响应模块406、所述第二接收模块407,所述第二存储模块408,直至M等于N。
M取值从2一直至N。
本发明实施例所提供的数据处理方法,中央处理器在接收数据时,可以通过同一个子地址接收同一个数据的所有数据帧,不需要同时占用多个子地址,从而节省了子地址的资源。
在基于上述应用于中央处理器的数据处理装置的实施例的基础上,本发明实施例还可以包括:重新读取模块,用于当通过堆栈指针和EOM判断出第N数据帧未读取完毕时,重新从所述外部存储器中读取。
通过堆栈指针和EOM判断出第N数据帧未读取完毕时,重新从所述外部存储器中读取,为现有技术,在此不再一一赘述。
在发送端连续发送消息时,中央处理器进入中断读取指令很容易造成指令丢失,例如在判定完毕堆栈指令时,此时仍有消息发送,中断无法响应该消息,会造成指令丢失,所以在基于上述任一应用于中央处理器的数据处理装置的实施例的基础上,本发明实施例还可以包括:处理模块,用于在接收到下一个中断时,判定上次中断对应的数据是否未处理完成,如果是,则继续处理上次中断对应的数据,从而避免丢失指令。
在基于上述任一应用于中央处理器的数据处理装置的实施例的基础上,本发明实施例还可以包括:状态反馈模块,用于将所述第N数据帧的读取状态信息发送往上位机,所述读取状态信息包括读取完毕信息或未读取完毕信息。
为了让本领域技术人员更加理解本发明实施例所公开的数据处理装置,这里将以一具体的例子进行说明,请参阅图5,为本发明实施例提供的1553B总线通信下基于ARM处理器的高速处理控制算法的***框图。
上位机501安装windowsXP操作***,并装有1553B软件5022,上位机501的1553B板卡5021配置为BC端,ARM处理器502的1553B配置为RT端。ARM处理器502通过EMC接口来读取1553B芯片中存储区中发送端的数据。
1553B芯片可以为型号为BU-61580的芯片,是ARM处理器的外部设备。
1553B芯片是ARM处理器的外设,1553B板卡安装在上位机上,1553B软件是基于1553B板卡的软件。上位机通过1553B软件和1553B板卡向1553B芯片发送和接收数据,ARM处理器通过与1553B芯片进行数据交互来完成与1553B总线上设备的通信。在这里上位机的1553B板卡为BC端,ARM的外设1553B芯片为RT端。
连接ARM处理器502和上位机501,对上位机501和ARM处理器502加电,运行windowsXP操作***,***启动后运行1553B软件,并驱动1553B板卡5021。通过1553B软件5022向RT子地址15发送一帧命令信息,长度为160个字长。ARM处理器502需要连续5次从子地址15读取信息,并对信息进行解析和处理,处理结束后将状态信息通过1553B接口返还给上位机,在上位机701上可以观察到ARM处理器返还的状态信息。
上位机向ARM处理器发送的数据被分成连续的5个32字长的数据帧,当第一个数据帧到来时,ARM处理器响应中断,进入1553B中断处理服务函数。软件首先判断是否有消息来到,当软件判断有新消息来到时要读取堆栈指针数据,然后比对当前读到的堆栈指针数据是否与上一次读取堆栈指针数据后的值相等,如果不相等,则证明堆栈命令没有读取完毕,软件继续读取堆栈命令数据。当堆栈命令数据读取成功后,软件将继续对数据进行接收。
请参阅图6,为本发明实施例提供的一种应用于发送端的数据处理装置的结构示意图,该数据处理装置包括:判断模块601、计算模块602、第一发送模块603、第二发送模块604、第二触发模块605,其中:
判断模块601,用于判断待发送的数据的长度是否大于子地址能够存储数据的最大字节长度。
计算模块602,用于当所述数据的长度大于所述子地址能够存储数据的最大字节长度时,依据所述数据的长度以及所述子地址能够存储数据的最大字节长度,计算出发送所述数据所需要的次数N,N为大于等于2的正整数。
第一发送模块603,用于通过所述发送端与中央处理器商定的第一子地址,发送所述数据的第一数据帧,并将所述次数N和所述数据的总长度信息写入所述第一数据帧中。
第二发送模块604,用于当发送完毕所述第M-1数据帧时,通过所述第一子地址,发送所述数据的第M数据帧,M为大于等于2小于等于N的正整数。
第二触发模块605,用于触发所述第二发送模块604,直至M等于N。
本发明实施例提供的应用于发送端的数据处理装置中,发送端在发送数据时,可以通过同一子地址将同一数据的所有数据帧发送给外部存储器,不需要同时占用多个子地址,从而节省了子地址的资源。
请参阅图7,为本发明实施例提供的一种应用于接收端的数据处理装置的结构示意图,该应用于接收端的数据处理装置描述的是中央处理器给接收端发送数据的技术,该数据处理装置包括:
第三确定模块701,用于确定出所述外部存储器中存储有中央处理器发送给所述接收端的第一数据帧。
第三接收模块702,用于通过所述接收端与所述中央处理器商定的第一子地址,接收所述第一数据帧。
第二确定模块703,用于依据所述第一数据帧,确定出待接收的数据的总长度以及接收完毕所述数据所需要的次数N,N为大于等于2的正整数。
第四接收模块704,用于从所述外部存储器中依次接收所述数据的第M数据帧,M为大于等于2小于等于N的正整数,直至M等于N。
本发明实施例提供的应用于接收端的数据处理装置中,接收端在接收数据时,可以依据中央处理器与其商定的同一子地址接收同一数据的多个数据帧,不需要同时占用多个子地址,从而节省了子地址的资源。
本发明实施例还公开了一种数据处理***,包括:如上述实施例所公开的应用于中央处理器的数据处理装置、上述实施例所公开的应用于接收端的数据处理装置和上述实施例所公开的应用于发送端的数据处理装置。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所提供的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所提供的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种数据处理方法,应用于中央处理器,其特征在于,所述数据处理方法包括:
A1、响应于外部存储器收到发送端的第一数据帧的消息对应的第一中断;
A2、通过所述发送端与所述中央处理器商定的第一子地址,接收所述第一数据帧;
A3、依据所述第一数据帧,确定出待接收的数据的总长度以及接收完毕所述数据所需要的次数N,N为大于等于2的正整数;
A4、依据所述数据的总长度,确定出存储所述数据需要的缓存区依据所述数据的总长度,确定出存储所述数据需要的缓存区;
A5、将所述第一数据帧存储至所述缓存区;
A6、通过所述第一子地址接收所述第M数据帧,M为大于等于2小于等于N的正整数;
A7、将所述第M数据帧存储至所述缓存区;
A8、重复步骤A6至步骤A7,直至M等于N。
2.根据权利要求1所述数据处理方法,其特征在于,在步骤A8之后,还包括:
A9、当通过堆栈指针和EOM判断出第N数据帧未读取完毕时,重新从所述外部存储器中读取。
3.根据权利要求2所述数据处理方法,其特征在于,在步骤A8之后还包括:
A10、将所述第N数据帧的读取状态信息发送往上位机,所述读取状态信息包括读取完毕信息或未读取完毕信息。
4.一种数据处理方法,应用于发送端,其特征在于,所述数据处理方法包括:
B1、判断待发送的数据的长度是否大于子地址能够存储数据的最大字节长度;
B2、当所述数据的长度大于所述子地址能够存储数据的最大字节长度时,依据所述数据的长度以及所述子地址能够存储数据的最大字节长度,计算出发送所述数据所需要的次数N,N为大于等于2的正整数;
B3、通过所述发送端与中央处理器商定的第一子地址,发送所述数据的第一数据帧,并将所述次数N和所述数据的总长度信息写入所述第一数据帧中;
B4、当发送完毕所述第M-1数据帧时,通过所述第一子地址,发送所述数据的第M数据帧,M为大于等于2小于等于N的正整数;
B5、重复步骤B4直至M等于N。
5.一种数据处理方法,应用于接收端,其特征在于,所述数据处理方法包括:
C1、确定出所述外部存储器中存储有中央处理器发送给所述接收端的第一数据帧;
C2、通过所述接收端与所述中央处理器商定的第一子地址,接收所述第一数据帧;
C3、依据所述第一数据帧,确定出待接收的数据的总长度以及接收完毕所述数据所需要的次数N,N为大于等于2的正整数;
C4、从所述外部存储器中依次接收所述数据的第M数据帧,M为大于等于2小于等于N的正整数,且M等于N。
6.一种数据处理装置,应用于中央处理器,其特征在于,所述数据处理装置包括:
第一响应模块,用于响应于外部存储器收到发送端的第一数据帧的消息对应的第一中断;
第一接收模块,用于通过所述发送端与所述中央处理器商定的第一子地址,接收所述第一数据帧;
第一确定模块,用于依据所述第一数据帧,确定出待接收的数据的总长度以及接收完毕所述数据所需要的次数N,N为大于等于2的正整数;
第二确定模块,用于依据所述数据的总长度,确定出存储所述数据需要的缓存区依据所述数据的总长度,确定出存储所述数据需要的缓存区;
第一存储模块,用于将所述第一数据帧存储至所述缓存区;
第二接收模块,用于通过所述第一子地址接收所述第M数据帧,M为大于等于2小于等于N的正整数;
第二存储模块,用于将所述第M数据帧存储至所述缓存区;
第一触发模块,重复出发所述第二响应模块、所述第二接收模块,所述第二存储模块,直至M等于N。
7.根据权利要求5所述数据处理装置,其特征在于,还包括:
重新读取模块,用于当通过堆栈指针和EOM判断出第N数据帧未读取完毕时,重新从所述外部存储器中读取;
状态反馈模块,用于将所述第N数据帧的读取状态信息发送往上位机,所述读取状态信息包括读取完毕信息或未读取完毕信息。
8.一种数据处理装置,应用于发送端,其特征在于,所述数据处理装置包括:
判断模块,用于判断待发送的数据的长度是否大于子地址能够存储数据的最大字节长度;
计算模块,用于当所述数据的长度大于所述子地址能够存储数据的最大字节长度时,依据所述数据的长度以及所述子地址能够存储数据的最大字节长度,计算出发送所述数据所需要的次数N,N为大于等于2的正整数;
第一发送模块,用于通过所述发送端与中央处理器商定的第一子地址,发送所述数据的第一数据帧,并将所述次数N和所述数据的总长度信息写入所述第一数据帧中;
第二发送模块,用于当发送完毕所述第M-1数据帧时,通过所述第一子地址,发送所述数据的第M数据帧,M为大于等于2小于等于N的正整数;
第二触发模块,用于触发所述第二发送模块,直至M等于N。
9.一种数据处理装置,应用于接收端,其特征在于,所述数据处理装置包括:
第三确定模块,用于确定出所述外部存储器中存储有中央处理器发送给所述接收端的第一数据帧;
第三接收模块,用于通过所述接收端与所述中央处理器商定的第一子地址,接收所述第一数据帧;
第二确定模块,用于依据所述第一数据帧,确定出待接收的数据的总长度以及接收完毕所述数据所需要的次数N,N为大于等于2的正整数;
第四接收模块,用于从所述外部存储器中依次接收所述数据的第M数据帧,M为大于等于2小于等于N的正整数,且M等于N。
10.一种数据处理***,其特征在于,包括:中央处理器和终端,
所述中央处理器包括权利要求6所述数据处理装置;
所述终端包括权利要求8所述数据处理装置,以及权利要求9所述的数据处理装置。
CN201511021641.6A 2015-12-31 2015-12-31 数据处理方法、装置及*** Pending CN105630424A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201511021641.6A CN105630424A (zh) 2015-12-31 2015-12-31 数据处理方法、装置及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511021641.6A CN105630424A (zh) 2015-12-31 2015-12-31 数据处理方法、装置及***

Publications (1)

Publication Number Publication Date
CN105630424A true CN105630424A (zh) 2016-06-01

Family

ID=56045422

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511021641.6A Pending CN105630424A (zh) 2015-12-31 2015-12-31 数据处理方法、装置及***

Country Status (1)

Country Link
CN (1) CN105630424A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209309A (zh) * 2016-06-30 2016-12-07 北京小米移动软件有限公司 数据传输方法、装置及***
CN108319557A (zh) * 2017-12-15 2018-07-24 天津津航计算技术研究所 一种具有数据重传功能的数据缓存器及其读写方法
CN111405040A (zh) * 2020-03-16 2020-07-10 北京星际荣耀空间科技有限公司 一种实时数据处理方法、装置及设备
CN111541595A (zh) * 2020-04-16 2020-08-14 上海航天计算机技术研究所 1553b总线数据通信方法和***
CN112148444A (zh) * 2020-09-04 2020-12-29 珠海格力电器股份有限公司 一种数据处理方法、装置、***及存储介质
CN112187754A (zh) * 2020-09-18 2021-01-05 交控科技股份有限公司 基于Powerlink的数据包封装、解析方法及数据包结构

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101222430A (zh) * 2008-01-24 2008-07-16 中兴通讯股份有限公司 一种高速多协议数据传输***和方法
CN102147733A (zh) * 2010-02-10 2011-08-10 上海卫星工程研究所 使用1553b串行数据总线给星载远程终端计算机加载程序的方法
CN103473196A (zh) * 2013-08-30 2013-12-25 中国空间技术研究院 一种1553b总线与星内设备总线间遥测遥控数据传输装置
US20150082975A1 (en) * 2013-09-23 2015-03-26 Raytheon Company Interface bridge for initializing a weapon with mission planning data
CN105099504A (zh) * 2014-05-20 2015-11-25 中国科学院空间科学与应用研究中心 一种基于脉冲超宽带的星载高速数据网络***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101222430A (zh) * 2008-01-24 2008-07-16 中兴通讯股份有限公司 一种高速多协议数据传输***和方法
CN102147733A (zh) * 2010-02-10 2011-08-10 上海卫星工程研究所 使用1553b串行数据总线给星载远程终端计算机加载程序的方法
CN103473196A (zh) * 2013-08-30 2013-12-25 中国空间技术研究院 一种1553b总线与星内设备总线间遥测遥控数据传输装置
US20150082975A1 (en) * 2013-09-23 2015-03-26 Raytheon Company Interface bridge for initializing a weapon with mission planning data
CN105099504A (zh) * 2014-05-20 2015-11-25 中国科学院空间科学与应用研究中心 一种基于脉冲超宽带的星载高速数据网络***

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209309A (zh) * 2016-06-30 2016-12-07 北京小米移动软件有限公司 数据传输方法、装置及***
CN108319557A (zh) * 2017-12-15 2018-07-24 天津津航计算技术研究所 一种具有数据重传功能的数据缓存器及其读写方法
CN108319557B (zh) * 2017-12-15 2022-02-08 天津津航计算技术研究所 一种具有数据重传功能的数据缓存器及其读写方法
CN111405040A (zh) * 2020-03-16 2020-07-10 北京星际荣耀空间科技有限公司 一种实时数据处理方法、装置及设备
CN111405040B (zh) * 2020-03-16 2021-05-07 北京星际荣耀空间科技股份有限公司 一种实时数据处理方法、装置及设备
CN111541595A (zh) * 2020-04-16 2020-08-14 上海航天计算机技术研究所 1553b总线数据通信方法和***
CN112148444A (zh) * 2020-09-04 2020-12-29 珠海格力电器股份有限公司 一种数据处理方法、装置、***及存储介质
CN112148444B (zh) * 2020-09-04 2024-06-07 珠海格力电器股份有限公司 一种数据处理方法、装置、***及存储介质
CN112187754A (zh) * 2020-09-18 2021-01-05 交控科技股份有限公司 基于Powerlink的数据包封装、解析方法及数据包结构

Similar Documents

Publication Publication Date Title
CN105630424A (zh) 数据处理方法、装置及***
CN102866971B (zh) 传输数据的装置、***及方法
CN101707565B (zh) 零拷贝网络报文发送、接收方法和装置
US5958024A (en) System having a receive data register for storing at least nine data bits of frame and status bits indicating the status of asynchronous serial receiver
CN109558344B (zh) 一种适用于网络传输的dma传输方法及dma控制器
US8051222B2 (en) Concatenating secure digital input output (SDIO) interface
CN104038450A (zh) 基于pcie总线的报文传输方法与装置
US20200210224A1 (en) Methods and apparatus for verifying completion of groups of data transactions between processors
CN101707564B (zh) 用于零拷贝缓冲区队列网络数据发送和接收的处理方法和装置
CN102724122A (zh) 基于硬件***的串口可靠传输方法及装置
CN113660351B (zh) 数据通信方法、装置、通信终端及计算机可读存储介质
CN113138802B (zh) 命令分发装置、方法、芯片、计算机设备及存储介质
CN114138700A (zh) 一种串口数据传输的流控方法、装置、设备及存储介质
CN115396527B (zh) 一种基于fpga的pcie和srio协议转换***及方法
CN109324874A (zh) 一种虚拟机内存快照导入块设备的方法、***及装置
CN102750245B (zh) 报文接收方法、报文接收模块、装置及***
CN110941582B (zh) 一种bmc芯片的usb总线结构及其通信方法
CN112422485B (zh) 一种传输控制协议的通信方法及装置
CN112181887B (zh) 数据传输方法及装置
CN101777037B (zh) 一种查找引擎实时***内数据传输的方法和***
KR20110134465A (ko) 데이터 전송 시스템 및 그 데이터 판독 방법
CN109800202B (zh) 一种基于pcie的数据传输***、方法及装置
US20030101298A1 (en) Bus system and bus interface
CN106776393B (zh) 一种无中断的串口数据接收方法和装置
CN111371799B (zh) Mctp控制器收发数据的控制方法、装置及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160601