CN104735824B - 数据处理系统 - Google Patents

数据处理系统 Download PDF

Info

Publication number
CN104735824B
CN104735824B CN201510091317.5A CN201510091317A CN104735824B CN 104735824 B CN104735824 B CN 104735824B CN 201510091317 A CN201510091317 A CN 201510091317A CN 104735824 B CN104735824 B CN 104735824B
Authority
CN
China
Prior art keywords
group
treatment
delay unit
timing signal
processor
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
Application number
CN201510091317.5A
Other languages
English (en)
Other versions
CN104735824A (zh
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201510091317.5A priority Critical patent/CN104735824B/zh
Publication of CN104735824A publication Critical patent/CN104735824A/zh
Priority to EP16754741.3A priority patent/EP3169136B1/en
Priority to PCT/CN2016/073303 priority patent/WO2016134632A1/zh
Priority to US15/673,005 priority patent/US20170337316A1/en
Application granted granted Critical
Publication of CN104735824B publication Critical patent/CN104735824B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/08Access point devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/35Delay-insensitive circuit design, e.g. asynchronous or self-timed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/06Receivers
    • H04B1/16Circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0023Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the signalling
    • H04L1/0027Scheduling of signalling, e.g. occurrence thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Quality & Reliability (AREA)
  • Information Transfer Systems (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种数据处理系统,属于数据处理领域。所述系统包括:N个前后级联的处理组,包括a个软处理组和b个硬处理组,a+b=N;每个软处理组包括:第一延时单元、输入接口、处理器、输出接口和第二延时单元,第一延时单元通过硬连线分别与输入接口和第二延时单元相连,处理器分别与输入接口和输出接口电性相连,第二延时单元通过硬连线与输出接口相连;每个硬处理组包括:第三延时单元和硬件单元,第三延时单元通过硬连线与硬件单元相连。本发明可提高数据处理效率。

Description

数据处理系统
技术领域
本发明涉及数据处理领域,特别涉及一种数据处理系统。
背景技术
在基站通过接收设备的天线接收到高频信号后,需要将高频信号转换为中频信号,再对中频信号中的业务数据进行处理,使得处理后的业务数据能够符合接收设备的系统要求。
相关技术中采用硬件系统来处理业务数据,请参考图1所示的硬件系统的结构框图,该硬件系统包括定时信号生成单元、N个硬件单元和N-1个延时单元,定时信号生成单元通过硬连线分别与第一个硬件单元和第一个延时单元相连,第i个硬件单元通过硬连线与第i+1个硬件单元相连,第i个延时单元通过硬连线分别与第i+1个硬件单元和第i+1个延时单元相连,N和i为正整数,N>i>1。
在处理业务数据时,定时信号生成单元通过硬连线将生成的第一定时信号发送给第一个硬件单元和第一个延时单元;第一个延时单元对定时信号进行延时,将得到的第二定时信号通过硬连线发送给第二个硬件单元和第二个延时单元;第一个硬件单元根据获取的控制信息处理原始的业务数据,在第一定时信号的触发下将得到的第一业务数据和控制信息通过硬连线发送给第二个硬件单元;第二个硬件单元根据控制信息处理第一业务数据,在第二定时信号的触发下将得到的第二业务数据通过硬连线发送给第三个硬件单元;依次类推,直至第N个硬件单元在第N-1延时信号的触发下输出第N业务数据时停止,结束处理流程。
由于硬件单元对业务数据的处理能力有限,因此,当需要对业务数据进行大量运算时,采用硬件系统处理业务数据的效率较低。
发明内容
为了解决硬件单元的处理能力较弱,导致硬件系统对业务数据的处理效率低的问题,本发明实施例提供了一种数据处理系统。所述技术方案如下:
第一方面,提供了一种数据处理系统,所述系统包括:N个前后级联的处理组,所述N个前后级联的处理组中包括a个软处理组和b个硬处理组,a+b=N;
每个软处理组包括:第一延时单元、输入接口、处理器、输出接口和第二延时单元,所述第一延时单元通过硬连线分别与所述输入接口和所述第二延时单元相连,所述处理器分别与所述输入接口和所述输出接口电性相连,所述第二延时单元通过硬连线与所述输出接口相连;所述第一延时单元用于发送第一定时信号至所述输入接口和所述第二延时单元;所述第二延时单元用于对来自所述第一延时单元的第一定时信号进行延时得到第二定时信号并发送所述第二定时信号至所述输出接口;所述输入接口,用于获取业务数据、控制信息和所述第一定时信号,在所述第一定时信号的触发下将所述业务数据和所述控制信息组成第一数据包发送给所述处理器;所述处理器,用于根据所述第一数据包内的所述控制信息处理所述业务数据,将得到的第二数据包发送给所述输出接口,所述第二数据包包括处理后的所述业务数据;所述输出接口,用于解析所述第二数据包得到处理后的所述业务数据,并获取所述第二定时信号,在所述第二定时信号的触发下输出处理后的所述业务数据;
每个硬处理组包括:第三延时单元和硬件单元,所述第三延时单元通过硬连线与所述硬件单元相连;所述第三延时单元用于发送第三定时信号至所述硬件单元;
其中,N、a、b均为正整数。
在第一方面的第一种可能的实现方式中,在第i个处理组是软处理组且第i+1个处理组是硬处理组时,所述第i个处理组中的输出接口通过硬连线与所述第i+1个处理组中的硬件单元相连,所述第i个处理组中的第二延时单元通过硬连线与所述第i+1个处理组中的第三延时单元相连,i为正整数。
在第一方面的第二种可能的实现方式中,在第i个处理组是软处理组且第i+1个处理组是软处理组时,所述第i个处理组中的输出接口通过硬连线与第i+1个处理组中的输入接口相连,所述第i个处理组中的第二延时单元通过硬连线与所述第i+1个处理组中的第一延时单元相连,i为正整数。
根据第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述第i个处理组中的输出接口通过硬连线与所述i+1个处理组中的处理器相连,所述第i个处理组中的第二延时单元通过硬连线与所述i+1个处理组中的处理器相连,所述第i+1个处理组中的处理器用于根据来自所述第i个处理组中的输出接口的控制信号和来自所述第i个处理组中的第二延时单元的第二定时信号生成控制信息,再根据所述控制信息处理来自所述第i个处理组中的输出接口的业务数据。
在第一方面的第四种可能的实现方式中,在第i个处理组是硬处理组且第i+1个处理组是硬处理组时,第i个处理组中的硬件单元通过硬连线与第i+1个处理组中的硬件单元相连,所述第i个处理组中的第三延时单元通过硬连线与所述第i+1个处理组中的第三延时单元相连,i为正整数。
在第一方面的第五种可能的实现方式中,在第i个处理组是硬处理组且第i+1个处理组是软处理组时,第i个处理组中的硬件单元通过硬连线与第i+1个处理组中的输入接口相连,所述第i个处理组中的第三延时单元通过硬连线与所述第i+1个处理组中的第一延时单元相连,i为正整数。
根据第一方面的第五种可能的实现方式,在第一方面的第六种可能的实现方式中,所述第i个处理组中的硬件单元通过硬连线与所述i+1个处理组中的处理器相连,所述第i个处理组中的第三延时单元通过硬连线与所述i+1个处理组中的处理器相连,所述第i+1个处理组中的处理器用于根据来自所述第i个处理组中的硬件单元的控制信号和来自所述第i个处理组中的第三延时单元的第三定时信号生成控制信息,再根据所述控制信息处理来自所述第i个处理组中的硬件单元的业务数据。
根据第一方面或第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式或第一方面的第三种可能的实现方式或第一方面的第四种可能的实现方式或第一方面的第五种可能的实现方式或第一方面的第六种可能的实现方式,在第一方面的第七种可能的实现方式中,所述a个软处理组中的一个软处理组中的所述处理器的数量为至少一个,所述软处理组还包括第四延时单元,所述第四延时单元通过硬连线分别与所述第一延时单元和每个所述处理器相连,所述第四延时单元用于对来自所述第一延时单元的第一定时信号进行延时得到第四定时信号并发送所述第四定时信号至每个处理器;
所述处理器,具体用于在所述第四定时信号的触发下,根据所述第一数据包内的所述控制信息处理所述业务数据。
根据第一方面或第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式或第一方面的第三种可能的实现方式或第一方面的第四种可能的实现方式或第一方面的第五种可能的实现方式或第一方面的第六种可能的实现方式,在第一方面的第八种可能的实现方式中,所述a个软处理组中的一个软处理组中的所述处理器的数量为至少一个,所述软处理组还包括第四延时单元和定时调度单元,所述第四延时单元通过硬连线分别与所述第一延时单元和所述定时调度单元相连,所述定时调度单元通过硬连线分别与每个所述处理器相连,所述第四延时单元用于对来自所述第一延时单元的第一定时信号进行延时得到第四定时信号并发送所述第四定时信号至所述定时调度单元,所述定时调度单元用于对来自所述第四延时单元的第四定时信号进行延时得到第五定时信号并发送所述第五定时信号至每个处理器;
所述处理器,具体用于在所述第五定时信号的触发下,根据所述第一数据包内的所述控制信息处理所述业务数据。
根据第一方面或第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式或第一方面的第三种可能的实现方式或第一方面的第四种可能的实现方式或第一方面的第五种可能的实现方式或第一方面的第六种可能的实现方式或第一方面的第七种可能的实现方式或第一方面的第八种可能的实现方式,在第一方面的第九种可能的实现方式中,所述输入接口,还用于:
在预定周期的第n分段内,生成业务数据包,以第一数据采样率将所述业务数据添加到所述业务数据包中,所述预定周期包括前后衔接的m个分段;
在所述第n分段内,生成控制信息包,以第二数据采样率将所述控制信息添加到控制信息包中;
将所述控制信息包添加到对应的所述业务数据包之后,得到所述第一数据包的第n部分;
将所述第一数据包发送给所述处理器;
其中m为正整数,n为取值从1至m的正整数变量。
根据第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式或第一方面的第三种可能的实现方式,在第一方面的第十种可能的实现方式中,在i=1时,所述第i个处理组中的第一延时单元为定时信号生成单元,所述定时信号生成单元用于生成第一定时信号。
根据第一方面的第四种可能的实现方式或第一方面的第五种可能的实现方式或第一方面的第六种可能的实现方式,在第一方面的第十一种可能的实现方式中,在i=1时,所述第i个处理组中的第三延时单元为定时信号生成单元,所述定时信号生成单元用于生成第三定时信号。
本发明实施例提供的技术方案的有益效果是:
通过在数据处理系统中设置包括处理器的软处理组,可以将处理过程中涉及大量运算的业务数据发送给处理器进行处理,由于处理器的处理能力较强,解决了硬处理组的处理能力较弱,导致硬件系统对业务数据的处理效率低的问题,达到了提高对业务数据的处理效率的效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术提供的硬件系统的结构框图;
图2是本发明一个实施例提供的数据处理系统的结构框图;
图3A是本发明再一实施例提供的数据处理系统的结构框图;
图3B是本发明再一实施例提供的处理器的第一种硬连线示意图;
图3C是本发明再一实施例提供的处理器的第二种硬连线示意图;
图3D是本发明再一实施例提供的处理器的第一种定时调度示意图;
图3E是本发明再一实施例提供的处理器的第二种定时调度示意图;
图3F是本发明再一实施例提供的同步/异步延时的示意图;
图3G是本发明再一实施例提供的数据处理系统的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
请参考图2,其示出了本发明一个实施例提供的数据处理系统的结构框图。该数据处理系统,包括:N个前后级联的处理组,N个前后级联的处理组中包括a个软处理组210和b个硬处理组220,a+b=N;
每个软处理组210包括:第一延时单元211、输入接口212、处理器213、输出接口214和第二延时单元215,第一延时单元211通过硬连线分别与输入接口212和第二延时单元215相连,处理器213分别与输入接口212和输出接口214电性相连,第二延时单元215通过硬连线与输出接口214相连;第一延时单元211用于发送第一定时信号至输入接口212和第二延时单元215;第二延时单元215用于对来自第一延时单元211的第一定时信号进行延时得到第二定时信号并发送第二定时信号至输出接口214;输入接口212,用于获取业务数据、控制信息和第一定时信号,在第一定时信号的触发下将业务数据和控制信息组成第一数据包发送给处理器213;处理器213,用于根据第一数据包内的控制信息处理业务数据,将得到的第二数据包发送给输出接口214,第二数据包包括处理后的业务数据;输出接口214,用于解析第二数据包得到处理后的业务数据,并获取第二定时信号,在第二定时信号的触发下输出处理后的业务数据;
每个硬处理组220包括:第三延时单元221和硬件单元222,第三延时单元221通过硬连线与硬件单元222相连;第三延时单元221用于发送第三定时信号至硬件单元222;其中,N、a、b均为正整数。
本实施例中,处理器213是通过执行代码实现功能的器件,可以通过修改代码来修改处理器213实现的功能。可选的,处理器213可以包括算法单元和存储器。比如,该算法单元可以是中央处理器(英文全称:Central Processing Unit;简称:CPU)、实现数字信号处理(英文全称:Digital Signal Processing;简称:DSP)的处理器等。硬件单元222是通过电路连接实现功能的器件,在电路连接关系固定后,硬件单元222所能实现的功能固定。由于处理器213能识别数据包,而硬件单元222能通过硬连线发送或接收业务数据,因此,若需要在处理器213和硬件单元222之间实现数据通信,还需要在处理器213的前后分别设置输入接口212和输出接口214,该输入接口212用于将通过硬连线输入的业务数据组成数据包,该输出接口214用于将数据包解析成业务数据,通过硬连线发送解析得到的业务数据。其中,硬连线是物理连线,业务数据是中频信号中用于实现业务的数据。
本实施例中,还可以在处理组中设置延时单元,通过延时单元产生的定时信号来控制输出时刻。其中,在软处理组中,第一延时单元211用于发送第一定时信号至输入接口212,第一定时信号用于控制输入接口212的输出时刻;第二延时单元215用于对来自第一延时单元211的第一定时信号延时预定时长,将延时得到的第二定时信号发送至输出接口214,第二定时信号用于控制输出接口214的输出时刻,该预定时长大于等于处理器213对数据包的最大处理时长。在硬处理组中,第三延时单元221用于发送第三定时信号至硬件单元222,第三定时信号用于控制硬件单元222的输出时刻。其中,第一定时信号可以是第一延时单元211生成的,也可以是第一延时单元211对接收到的定时信号进行延时得到的;第三定时信号可以是第三延时单元221生成的,也可以是第三延时单元221对接收到的定时信号进行延时得到的,本实施例不作限定。业务数据是中频信号中用于实现业务的数据,控制信息用于指示处理器对业务数据的处理方式,比如,控制信息用于指示对业务数据的算法、或,控制信息用于指示对业务数据的运算时刻等。其中,控制信息与业务数据同步。由于处理器213能识别数据包,而硬件单元222能通过硬连线发送或接收业务数据,因此,若需要在处理器213和硬件单元222之间实现数据通信,还需要在处理器213之前设置输入接口212,该输入接口212用于将通过硬连线输入的业务数和控制信息组成第一数据包。此时,第一定时信号用于指示输入接口212发送第一数据包的时刻。
本实施例中,当软处理组是数据处理系统中的第一个处理组时,输入接口212作为数据处理系统的输入接收业务数据和控制信息,此时第一定时信号由第一延时单元211生成;当软处理组不是数据处理系统中的第一个处理组时,业务数据和控制信息由与该软处理组相连的前一个处理组生成,该处理组可以是软处理组,也可以是硬处理组,此时第一定时信号由第一延时单元211对前一个处理组发送的定时信号进行延时得到。
同理,当硬处理组是数据处理系统中的第一个处理组时,硬件单元222作为数据处理系统的输入接收业务数据,此时第三定时信号由第三延时单元221生成;当硬处理组不是数据处理系统中的第一个处理组时,业务数据由与该硬处理组相连的前一个处理组生成,该处理组可以是软处理组,也可以是硬处理组,此时第三定时信号由第三延时单元221对前一个处理组发送的定时信号进行延时得到。
本实施例中,处理器213可以在接收到第一数据包后,在第一数据包的触发下启动数据处理流程,由于处理器213能够实时处理第一数据包,缩短了对第一数据包的处理时长,提高了对业务数据的处理效率。具体地,处理器213可以从控制信息包中读取包有效信号、控制信息和包号等信息,当处理器213确定包有效信号为预定的包有效标志值时,确定该控制信息包有效且与该控制信息包对应的业务数据包也已经存储在指定存储区域内。处理器213从该指定存储区域内获取与控制信息包的包号相同的业务数据包,读取该业务数据包中的业务数据,再根据控制信息处理该业务数据。在处理完业务数据后,处理器清除包有效信号。其中,处理器213需要在固定时间段内完成对第一数据包的处理,该固定时长是处理器213最大处理一个第一数据包的时长。
处理器213在得到处理后的业务数据后,可以将处理后的业务数据添加到第二数据包中发送给输出接口214,也可以将处理后的业务数据和控制信息添加到第二数据包中发送给输出接口214,本实施例不作限定。第二定时信号用于指示输出接口214发送处理后的业务数据包的时刻,可以是第二延时单元215对第一定时信号延时预定时长得到的,该预定时长大于等于处理器213对第一数据包的最大处理时长,以保证输出接口214能对第二数据包中处理后的业务数据进行输出。由于第二定时信号是对第一延时信号进行延时后得到的,因此,可以保证输入接口212与输出接口214之间的延时固定,从而保证了数据处理系统的总延时固定。
综上所述,本发明实施例提供的数据处理系统,通过在数据处理系统中设置包括处理器的软处理组,可以将处理过程中涉及大量运算的业务数据发送给处理器进行处理,由于处理器的处理能力较强,解决了硬处理组的处理能力较弱,导致硬件系统对业务数据的处理效率低的问题,达到了提高对业务数据的处理效率的效果。另外,通过第二延时单元触发输出接口输出数据,使得软处理组对业务数据的处理时长固定,保证了数据处理系统的总延时固定。
基于图2所示的数据处理系统,本发明再一实施例还提供了一种数据处理系统。由于软处理组与硬处理组的内部结构不一样,因此,软处理组与硬处理组级联、软处理组与软处理组级联、硬处理组与软处理组级联、硬处理组与硬处理组级联各不相同,下面以第i个处理组和第i+1个处理组为例对上述四种级联关系进行具体介绍,i为正整数:
1)请参考图3A中的1,在第i个处理组是软处理组且第i+1个处理组是硬处理组时,第i个处理组中的输出接口214通过硬连线与第i+1个处理组中的硬件单元222相连,第i个处理组中的第二延时单元215通过硬连线与第i+1个处理组中的第三延时单元221相连。其中,第i个处理组中的输出接口214将业务数据输出至第i+1个处理组中的硬件单元222,第i个处理组中的第二延时单元215将第二定时信号输出给第i+1个处理组中的第三延时单元221。
2)请参考图3A中的2,在第i个处理组是软处理组且第i+1个处理组是软处理组时,第i个处理组中的输出接口214通过硬连线与第i+1个处理组中的输入接口212相连,第i个处理组中的第二延时单元215通过硬连线与第i+1个处理组中的第一延时单元211相连。其中,第i个处理组中的输出接口214将业务数据输出给第i+1个处理组中的输入接口212,第i个处理组中的第二延时单元215将第二定时信号输出给第i+1个处理组中的第一延时单元211。根据上述第一种级联关系和第二种级联关系,在i=1时,第i个处理组中的第一延时单元211为定时信号生成单元,定时信号生成单元用于生成第一定时信号。即,在i=1时,由第1个处理组中的第一延时单元211生成定时信号,此时可以将第1个处理组中的第一延时单元211称为定时信号生成单元。
3)请参考图3A中的3,在第i个处理组是硬处理组且第i+1个处理组是硬处理组时,第i个处理组中的硬件单元222通过硬连线与第i+1个处理组中的硬件单元222相连,第i个处理组中的第三延时单元221通过硬连线与第i+1个处理组中的第三延时单元221相连。其中,第i个处理组中的硬件单元222将业务数据输出给第i+1个处理组中的硬件单元222,第i个处理组中的第三延时单元221将第三定时信号输出给第i+1个处理组中的第三延时单元221。
4)请参考图3A中的4,在第i个处理组是硬处理组且第i+1个处理组是软处理组时,第i个处理组中的硬件单元222通过硬连线与第i+1个处理组中的输入接口212相连,第i个处理组中的第三延时单元221通过硬连线与第i+1个处理组中的第一延时单元211相连。其中,第i个处理组中的硬件单元222将业务数据输出给第i+1个处理组中的输入接口212,第i个处理组中的第三延时单元221将第三定时信号输出给第i+1个处理组中的第一延时单元211。根据上述第三种级联关系和第四种级联关系,在i=1时,第i个处理组中的第三延时单元221为定时信号生成单元,定时信号生成单元用于生成第一定时信号。即,在i=1时,由第1个处理组中的第三延时单元221生成定时信号,此时可以将第1个处理组中的第三延时单元221称为定时信号生成单元。
在根据上述级联关系处理业务数据时,处理器213需要根据控制信息确定对业务数据的处理方式,控制信息与业务数据同步。其中,业务数据与控制信息同步是指业务数据的采样周期与控制信息的采样周期相同。假设业务数据的采样周期是P个采样点,控制信息的采样周期也是这P个采样点。因此,第i个处理组可以对控制信号进行采样,得到与业务数据同步的控制信息,将控制信息和业务数据一起发送给第i+1个软处理组。通常,控制信号的改变频率低于业务数据的改变频率,因此,对控制信号的采样频率可以低于对业务数据的采样频率,避免造成控制信息的冗余。由于采样频率越高,控制信息的精度越高,相应的,控制信息的数据量越大,发送控制信息所要消耗的资源越多。当控制信息的实时性要求不高时,可以采用上述方法获取控制信息。此时,输入接口212,还用于在预定周期的第n分段内,生成业务数据包,以第一数据采样率将业务数据添加到业务数据包中,预定周期包括前后衔接的m个分段;在第n分段内,生成控制信息包,以第二数据采样率将控制信息添加到控制信息包中;将控制信息包添加到对应的业务数据包之后,得到第一数据包的第n部分;将第一数据包发送给处理器;其中m为正整数,n为取值从1至m的正整数变量,使得每个分段内的业务数据包共同形成待输出的业务数据包。
本实施例中,第一数据包可以包括业务数据包和控制数据包,且控制信息包位于业务数据包之后。其中,业务数据包用于添加业务数据,控制数据包用于添加控制信息。具体地,可以在一个预定周期内对控制信号采样得到m个控制信息包,此时,该预定周期包括前后衔接的m个分段,对每个分段生成一个业务数据包和一个控制信息包,将控制信息包添加在对应的业务数据包之后,将一个业务数据包和一个控制信息包的整体作为第一数据包的一部分。假设m为2,则第一数据包依次包括:第一个业务数据包、第一个控制信息包、第二个业务数据包、第二个控制信息包,其中,第一个业务数据包是对第一分段内的业务数据进行采样得到的,第一个控制信息包是对第一分段内的控制信号进行采样得到的,第二个业务数据包是对第二分段内的业务数据进行采样得到的,第二个控制信息是对第二分段内的控制信号进行采样得到的。
在一种可能的实现方式中,m=1,此时第一数据包只包括一个业务数据包和一个控制信息包。具体地,在对控制信号进行采样时,若控制信号是脉冲信号,且预定周期内控制信号存在上升沿,则将该控制信息设置为1;若预定周期内控制信号不存在上升沿,则将控制信息设置为0。若控制信号是电平信号,且在预定周期内控制信号持续为高电平,则将控制信息设置为1;若在预定周期内控制信号持续为低电平,则将控制信息设置为0。当然,还可以通过其它方式对控制信号进行采样,本实施例不作限定。
当控制信息的实时性要求较高时,为了节省传输控制信息所消耗的资源,第i个处理组可以直接通过硬连线将控制信号发送给第i+1个软处理组中的处理器213中,此时,第i+1个软处理组中的处理器213还需要获取第i个处理组发送的定时信号,从而能够根据定时信号生成与业务数据同步的控制信息。其中,当第i个处理组是软处理组时,定时信号是第二定时信号;当第i个处理组是硬处理组时,定时信号是第三定时信号,下面分别对第i个处理组是软处理组或第i个处理组是硬处理组时,第i个处理组与第i+1个处理组之间的连接关系进行具体说明。
请参考图3B所示的处理器的第一种硬连线示意图,在第i个处理组是软处理组且第i+1个处理组是软处理组时,第i个处理组中的输出接口214通过硬连线与i+1个处理组中的处理器213相连,第i个处理组中的第二延时单元215通过硬连线与i+1个处理组中的处理器213相连,第i+1个处理组中的处理器213用于根据来自第i个处理组中的输出接口214的控制信号和来自第i个处理组中的第二延时单元215的第二定时信号生成控制信息,再根据控制信息处理来自第i个处理组中的输出接口214的业务数据。其中,第i个处理组中的输出接口214向第i+1个处理组中的处理器213发送控制信号,第i个处理组中的第二延时单元215向第i+1个处理组中的处理器213发第二定时信号,第i+1个处理组中的处理器213根据控制信号和第二定时信号生成控制信息,根据控制信息处理业务数据。
请参考图3C所示的处理器的第二种硬连线示意图,在第i个处理组是硬处理组且第i+1个处理组是软处理组时,第i个处理组中的硬件单元222通过硬连线与i+1个处理组中的处理器213相连,第i个处理组中的第三延时单元221通过硬连线与i+1个处理组中的处理器213相连,第i+1个处理组中的处理器213用于根据来自第i个处理组中的硬件单元222的控制信号和来自第i个处理组中的第三延时单元221的第三定时信号生成控制信息,再根据控制信息处理来自第i个处理组中的硬件单元222的业务数据。其中,第i个处理组中的硬件单元222向第i+1个处理组中的处理器213发送控制信号,第i个处理组中的第三延时单元221向第i+1个处理组中的处理器213发第三定时信号,第i+1个处理组中的处理器213根据控制信号和第三定时信号生成控制信息,根据控制信息处理业务数据。
当处理器213与硬连线相连时,输入接口212,还用于获取业务数据和第一定时信号,在第一定时信号的触发下将业务数据组成第一数据包发送给处理器213;处理器213,还用于获取控制信号和第一定时信号,在第一定时信号的触发下根据控制信号生成与业务数据同步的控制信息,根据控制信息处理第一数据包内的业务数据,将得到的第二数据包发送给输出接口214,第二数据包包括处理后的业务数据;输出接口214,还用于解析第二数据包得到处理后的业务数据,并获取第二定时信号,在第二定时信号的触发下输出处理后的业务数据。
其中,输入接口212,具体用于生成业务数据包,在预定周期内以预定数据采样率将业务数据添加到第一数据包中,将第一数据包发送给处理器213。处理器213,具体用于获取预定周期、预定数据采样率和第一数据包的生成时刻,从生成时刻开始的预定周期内,以预定数据采样率对控制信号进行采样,得到与业务数据同步的控制信息。
本实施例中,处理器213需要保证对控制信号的采样过程和输入接口212对业务数据的采样过程同步,从而保证生成的控制信息与业务数据完全同步。在同步采样时,处理器213需要获取业务数据的开始采样时刻、采样率和采样周期,其中,开始采样时刻是第一数据包的生成时刻,采样率为预定数据采样率,采样周期为预定周期,此时,处理器213可以基于该生成时刻,在预定周期内以预定数据采样率对控制信号进行采样,得到控制信息。
相应的,在得到控制信息之后,处理器213还可以对控制信息生成控制信息包,此时该控制信息包的包号与第一数据包的包号相同。在处理器213接收到第一数据包之后,获取与该第一数据包的包号相同的控制信息包,根据该控制信息包处理该第一数据包。
当a个软处理组中的一个软处理组包括一个处理器213时,处理器213分别与输入接口212和输出接口214电性相连;当a个软处理组中的一个软处理组包括至少两个处理器213时,任意一个处理器213可以与其它处理器213电性相连,也可以与输入接口212或输出接口214电性相连。
本实施例中,处理器213可以在接收到数据包后启动数据处理过程;也可以在定时信号的触发下启动数据处理过程,此时,需要通过硬连线向处理器213发送定时信号。本实施例提供了两种通过硬连接向处理器213发送定时信号的方式,具体如下:
在第一种可能的实现方式中,a个软处理组中的一个软处理组中的处理器213的数量为至少一个,软处理组还包括第四延时单元216,第四延时单元216通过硬连线分别与第一延时单元211和每个处理器213相连,第四延时单元216用于对来自第一延时单元211的第一定时信号进行延时得到第四定时信号并发送第四定时信号至每个处理器213;处理器213,具体用于在第四定时信号的触发下,根据第一数据包内的控制信息处理业务数据。
其中,第一延时单元211向第四延时单元216发送第一定时信号,第四延时单元216根据预定策略确定每个处理器213各自的延时时长,在对第一定时信号延时对应的延时时长后,将延时得到的第四定时信号发送给对应的处理器213,第四定时信号用于控制对应的处理器213对第一数据包的处理时刻。请参考图3D所示的处理器的第一种定时调度示意图,图3D中以软处理组210包括第一处理器213和第二处理器213为例进行说明。
比如,软处理组包括第一处理器213和第二处理器213,且第一处理器213对应的延时时长是10s、第二处理器213对应的延时时长是20秒,假设第一延时单元211发送第一定时信号的时刻是16时2分15秒,则第四延时单元216确定向第一处理器213发送第四定时信号的时刻是16时2分25秒,向第二处理器213发送第四定时信号的时刻是16时2分35秒。
需要补充说明的是,由于处理器213可以包括至少两个功能部件,第四延时单元216可以通过硬连线分别与一个处理器213中的每个功能部件相连。比如,处理器213包括CPU和DSP,则第四延时单元216通过一根硬连线与CPU相连,通过另一根硬连线与DSP相连。若需要分别控制各个功能部件时,需要对该处理器213生成至少两个第四定时信号,将每个第四定时信号通过对应的硬连线发送给该处理器213中对应的功能部件。
请参考图3E所示的处理器的第二种定时调度示意图,在第二种可能的实现方式中,a个软处理组中的一个软处理组中的处理器213的数量为至少一个,软处理组还包括第四延时单元216和定时调度单元217,第四延时单元216通过硬连线分别与第一延时单元211和定时调度单元217相连,定时调度单元217通过硬连线分别与每个处理器213相连,第四延时单元216用于对来自第一延时单元211的第一定时信号进行延时得到第四定时信号并发送第四定时信号至定时调度单元217,定时调度单元217用于对来自第四延时单元216的第四定时信号进行延时得到第五定时信号并发送第五定时信号至每个处理器213;处理器213,具体用于在第五定时信号的触发下,根据第一数据包内的控制信息处理业务数据。
其中,第一延时单元211向第四延时单元216发送第一定时信号,第四延时单元216对第一定时信号进行延时后,将延时得到的第四定时信号发送给定时调度单元217,定时调度单元217根据预定策略确定每个处理器213各自的延时时长,在对第四定时信号延时对应的延时时长后,将延时得到的第五定时信号发送给对应的处理器213,第五定时信号用于控制对应的处理器213对第一数据包的处理时刻。
需要补充说明的是,由于处理器213可以包括至少两个功能部件,定时调度单元217可以通过硬连线分别与一个处理器213中的每个功能部件相连。比如,处理器213包括CPU和DSP,则定时调度单元217通过一根硬连线与CPU相连,通过另一根硬连线与DSP相连。若需要分别控制各个功能部件时,需要对该处理器213生成至少两个第五定时信号,将每个第五定时信号通过对应的硬连线发送给该处理器213中对应的功能部件。
由于存在第四延时单元216,因此,在一种实现方式中,第二延时单元215与第一延时单元211相连,且第二延时单元215对第一延时单元211发送的第一定时信号的延时时长大于第四延时单元216对第一延时单元211发送的第一定时信号的延时时长;在另一种实现方式中,第二延时单元215与第四延时单元216相连,对第四延时单元216发送的第四定时信号进行延时。
请参考图3F所示的同步/异步延时的示意图,当第一延时单元211和第二延时单元215使用的时钟源的频率相同时,第一延时单元211将第一定时信号发送给同步延时单元218,同步延时单元218将同步处理后的第一定时信号发送给第二延时单元215;当第一延时单元211和第二延时单元215使用的时钟源的频率不同时,即第一延时单元211和第二延时单元215异步时,第一延时单元211将第一定时信号发送给异步延时单元219,异步延时单元219将异步处理后的第一定时信号发送给第二延时单元215,从而保证上电后数据处理系统无抖动。其中,同步延时单元218和异步延时单元219均可以通过现有技术实现,此处不赘述。同理,第一延时单元211与第四延时单元216之间也可以通过同步延时单元218和异步延时单元219实现,此处不赘述。
请参考图3G所示的数据处理系统的示意图,图3G中包括顺序相连的硬处理组220、软处理组210、硬处理组220,其中,第一个硬处理组220中的第三延时单元221是定时信号生成单元221。
综上所述,本发明实施例提供的数据处理系统,通过在数据处理系统中设置包括处理器的软处理组,可以将处理过程中涉及大量运算的业务数据发送给处理器进行处理,由于处理器的处理能力较强,解决了硬处理组的处理能力较弱,导致硬件系统对业务数据的处理效率低的问题,达到了提高对业务数据的处理效率的效果。另外,通过第二延时单元触发输出接口输出数据,使得软处理组对业务数据的处理时长固定,保证了数据处理系统的总延时固定。另外,通过硬连线向处理器发送控制信号和定时信号,处理器根据控制信号和定时信号生成与业务数据同步的控制信息,既满足了控制信息对实时性的要求,也节省了发送控制信息所消耗的资源。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (12)

1.一种数据处理系统,其特征在于,所述系统包括:N个前后级联的处理组,所述N个前后级联的处理组中包括a个软处理组和b个硬处理组,a+b=N;
每个软处理组包括:第一延时单元、输入接口、处理器、输出接口和第二延时单元,所述第一延时单元通过硬连线分别与所述输入接口和所述第二延时单元相连,所述处理器分别与所述输入接口和所述输出接口电性相连,所述第二延时单元通过硬连线与所述输出接口相连;所述第一延时单元用于发送第一定时信号至所述输入接口和所述第二延时单元;所述第二延时单元用于对来自所述第一延时单元的第一定时信号进行延时得到第二定时信号并发送所述第二定时信号至所述输出接口;所述输入接口,用于获取业务数据、控制信息和所述第一定时信号,在所述第一定时信号的触发下将所述业务数据和所述控制信息组成第一数据包发送给所述处理器;所述处理器,用于根据所述第一数据包内的所述控制信息处理所述业务数据,将得到的第二数据包发送给所述输出接口,所述第二数据包包括处理后的所述业务数据;所述输出接口,用于解析所述第二数据包得到处理后的所述业务数据,并获取所述第二定时信号,在所述第二定时信号的触发下输出处理后的所述业务数据;
每个硬处理组包括:第三延时单元和硬件单元,所述第三延时单元通过硬连线与所述硬件单元相连;所述第三延时单元用于发送第三定时信号至所述硬件单元;
其中,N、a、b均为正整数。
2.根据权利要求1所述的系统,其特征在于,
在第i个处理组是软处理组且第i+1个处理组是硬处理组时,所述第i个处理组中的输出接口通过硬连线与所述第i+1个处理组中的硬件单元相连,所述第i个处理组中的第二延时单元通过硬连线与所述第i+1个处理组中的第三延时单元相连,i为正整数。
3.根据权利要求1所述的系统,其特征在于,
在第i个处理组是软处理组且第i+1个处理组是软处理组时,所述第i个处理组中的输出接口通过硬连线与第i+1个处理组中的输入接口相连,所述第i个处理组中的第二延时单元通过硬连线与所述第i+1个处理组中的第一延时单元相连,i为正整数。
4.根据权利要求3所述的系统,其特征在于,所述第i个处理组中的输出接口通过硬连线与所述i+1个处理组中的处理器相连,所述第i个处理组中的第二延时单元通过硬连线与所述i+1个处理组中的处理器相连,所述第i+1个处理组中的处理器用于根据来自所述第i个处理组中的输出接口的控制信号和来自所述第i个处理组中的第二延时单元的第二定时信号生成控制信息,再根据所述控制信息处理来自所述第i个处理组中的输出接口的业务数据。
5.根据权利要求1所述的系统,其特征在于,
在第i个处理组是硬处理组且第i+1个处理组是硬处理组时,第i个处理组中的硬件单元通过硬连线与第i+1个处理组中的硬件单元相连,所述第i个处理组中的第三延时单元通过硬连线与所述第i+1个处理组中的第三延时单元相连,i为正整数。
6.根据权利要求1所述的系统,其特征在于,
在第i个处理组是硬处理组且第i+1个处理组是软处理组时,第i个处理组中的硬件单元通过硬连线与第i+1个处理组中的输入接口相连,所述第i个处理组中的第三延时单元通过硬连线与所述第i+1个处理组中的第一延时单元相连,i为正整数。
7.根据权利要求6所述的系统,其特征在于,所述第i个处理组中的硬件单元通过硬连线与所述i+1个处理组中的处理器相连,所述第i个处理组中的第三延时单元通过硬连线与所述i+1个处理组中的处理器相连,所述第i+1个处理组中的处理器用于根据来自所述第i个处理组中的硬件单元的控制信号和来自所述第i个处理组中的第三延时单元的第三定时信号生成控制信息,再根据所述控制信息处理来自所述第i个处理组中的硬件单元的业务数据。
8.根据权利要求1至7中任一项所述的系统,其特征在于,所述a个软处理组中的每个软处理组中的所述处理器的数量为至少一个,每个软处理组还包括第四延时单元,所述第四延时单元通过硬连线分别与所述第一延时单元和每个处理器相连,所述第四延时单元用于对来自所述第一延时单元的第一定时信号进行延时得到第四定时信号并发送所述第四定时信号至每个处理器;
所述处理器,具体用于在所述第四定时信号的触发下,根据所述第一数据包内的所述控制信息处理所述业务数据。
9.根据权利要求1至7中任一项所述的系统,其特征在于,所述a个软处理组中的每个软处理组中的所述处理器的数量为至少一个,每个软处理组还包括第四延时单元和定时调度单元,所述第四延时单元通过硬连线分别与所述第一延时单元和所述定时调度单元相连,所述定时调度单元通过硬连线分别与每个处理器相连,所述第四延时单元用于对来自所述第一延时单元的第一定时信号进行延时得到第四定时信号并发送所述第四定时信号至所述定时调度单元,所述定时调度单元用于对来自所述第四延时单元的第四定时信号进行延时得到第五定时信号并发送所述第五定时信号至每个处理器;
所述处理器,具体用于在所述第五定时信号的触发下,根据所述第一数据包内的所述控制信息处理所述业务数据。
10.根据权利要求1至7中任一项所述的系统,其特征在于,所述输入接口,还用于:
在预定周期的第n分段内,生成业务数据包,以第一数据采样率将所述业务数据添加到所述业务数据包中,所述预定周期包括前后衔接的m个分段;
在所述第n分段内,生成控制信息包,以第二数据采样率将所述控制信息添加到控制信息包中;
将所述控制信息包添加到对应的所述业务数据包之后,得到所述第一数据包的第n部分;
将所述第一数据包发送给所述处理器;
其中m为正整数,n为取值从1至m的正整数变量。
11.根据权利要求2至4中任一项所述的系统,其特征在于,在i=1时,所述第i个处理组中的第一延时单元为定时信号生成单元,所述定时信号生成单元用于生成第一定时信号。
12.根据权利要求5至7中任一项所述的系统,其特征在于,在i=1时,所述第i个处理组中的第三延时单元为定时信号生成单元,所述定时信号生成单元用于生成第三定时信号。
CN201510091317.5A 2015-02-28 2015-02-28 数据处理系统 Active CN104735824B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201510091317.5A CN104735824B (zh) 2015-02-28 2015-02-28 数据处理系统
EP16754741.3A EP3169136B1 (en) 2015-02-28 2016-02-03 Data processing system
PCT/CN2016/073303 WO2016134632A1 (zh) 2015-02-28 2016-02-03 数据处理系统
US15/673,005 US20170337316A1 (en) 2015-02-28 2017-08-09 Data processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510091317.5A CN104735824B (zh) 2015-02-28 2015-02-28 数据处理系统

Publications (2)

Publication Number Publication Date
CN104735824A CN104735824A (zh) 2015-06-24
CN104735824B true CN104735824B (zh) 2018-03-13

Family

ID=53459139

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510091317.5A Active CN104735824B (zh) 2015-02-28 2015-02-28 数据处理系统

Country Status (4)

Country Link
US (1) US20170337316A1 (zh)
EP (1) EP3169136B1 (zh)
CN (1) CN104735824B (zh)
WO (1) WO2016134632A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104735824B (zh) * 2015-02-28 2018-03-13 华为技术有限公司 数据处理系统
KR20220077532A (ko) * 2020-12-02 2022-06-09 현대자동차주식회사 차량 방전 유발 제어기 식별 시스템

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1434361A (zh) * 2002-01-25 2003-08-06 恩益禧电子股份有限公司 数据处理器
CN1809810A (zh) * 2003-06-25 2006-07-26 皇家飞利浦电子股份有限公司 指令控制数据处理设备
CN101123597A (zh) * 2007-07-06 2008-02-13 北京天碁科技有限公司 一种终端基带处理装置
WO2009065255A1 (en) * 2007-11-21 2009-05-28 Lucent Technologies Inc. Cdma base station and signal processing method used therein
CN103870390A (zh) * 2012-12-14 2014-06-18 阿尔特拉公司 用于支持统一的调试环境的方法和装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8283975B2 (en) * 2008-03-10 2012-10-09 Nxp B.V. Data processing system
US8627175B2 (en) * 2010-09-27 2014-01-07 Seagate Technology Llc Opportunistic decoding in memory systems
CN104735824B (zh) * 2015-02-28 2018-03-13 华为技术有限公司 数据处理系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1434361A (zh) * 2002-01-25 2003-08-06 恩益禧电子股份有限公司 数据处理器
CN1809810A (zh) * 2003-06-25 2006-07-26 皇家飞利浦电子股份有限公司 指令控制数据处理设备
CN101123597A (zh) * 2007-07-06 2008-02-13 北京天碁科技有限公司 一种终端基带处理装置
WO2009065255A1 (en) * 2007-11-21 2009-05-28 Lucent Technologies Inc. Cdma base station and signal processing method used therein
CN103870390A (zh) * 2012-12-14 2014-06-18 阿尔特拉公司 用于支持统一的调试环境的方法和装置

Also Published As

Publication number Publication date
WO2016134632A1 (zh) 2016-09-01
EP3169136A1 (en) 2017-05-17
EP3169136A4 (en) 2017-08-09
EP3169136B1 (en) 2018-10-03
CN104735824A (zh) 2015-06-24
US20170337316A1 (en) 2017-11-23

Similar Documents

Publication Publication Date Title
US20220394316A1 (en) Message sending method and device, readable medium and electronic device
CN105573922B (zh) 一种实现数据格式转换的方法和装置
US20170085971A1 (en) Optical packet sending method and device, optical packet processing method, and optical switching device
CN104735824B (zh) 数据处理系统
CN112637080A (zh) 一种基于fpga的负载均衡处理系统
CN113190291A (zh) 一种基于片上网络数据采集的可配置协议转换系统及方法
CN112751788A (zh) 一种支持多类型帧混合传输的双平面交换方法
CN104158770A (zh) 一种交换机数据包切分与重组的方法与装置
CN110912841B (zh) 面向128bit位宽的SRIO协议控制字符与数据包分离系统
CN111200473A (zh) 一种基于fpga的分布式系统时钟同步控制器
CN103152134B (zh) 基于rtp协议的接收端重排语音包的方法和系统
CN102164095B (zh) 一种星上交换模块的数据报分段与重组系统及实现方法
CN102036420A (zh) 一种高速接口及其传输数据的方法
CN210518362U (zh) 一种单线通信电路及通信系统
CN112988631A (zh) 一种基于现场可编程门阵列的数据处理方法及装置
Dong et al. Queueing analysis for block fading Rayleigh channels in the low SNR regime
CN113961137A (zh) 数据采集方法、装置及电子设备
CN102611621B (zh) 信元级联的处理方法和设备
JPH01296739A (ja) 音声パケット伝送制御方式
CN116155843B (zh) 一种基于pynq的脉冲神经网络芯片数据通信方法及系统
CN100533414C (zh) 一种多路输入数据的控制系统及其控制方法
CN1798014B (zh) 一种循环冗余编码定帧方法
CN103595632A (zh) 一种可调速率的自定义多报文发送系统及其实现方法
JP2997607B2 (ja) セル遅延シミュレーション装置
Lu et al. Design of dual priority persistent CSMA protocol based on FPGA

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant