CN107333282A - 一种基于gpp的5g终端通用平台优化方法及*** - Google Patents
一种基于gpp的5g终端通用平台优化方法及*** Download PDFInfo
- Publication number
- CN107333282A CN107333282A CN201710415240.1A CN201710415240A CN107333282A CN 107333282 A CN107333282 A CN 107333282A CN 201710415240 A CN201710415240 A CN 201710415240A CN 107333282 A CN107333282 A CN 107333282A
- Authority
- CN
- China
- Prior art keywords
- task
- general
- gpp
- subtask
- priority
- 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
- 238000000034 method Methods 0.000 title claims abstract description 66
- GVVPGTZRZFNKDS-JXMROGBWSA-N geranyl diphosphate Chemical compound CC(C)=CCC\C(C)=C\CO[P@](O)(=O)OP(O)(O)=O GVVPGTZRZFNKDS-JXMROGBWSA-N 0.000 title claims abstract description 51
- 238000005457 optimization Methods 0.000 title claims abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 34
- 230000008569 process Effects 0.000 claims abstract description 25
- 238000005520 cutting process Methods 0.000 claims abstract description 14
- 238000009826 distribution Methods 0.000 claims abstract description 10
- 230000001133 acceleration Effects 0.000 claims description 22
- 238000004891 communication Methods 0.000 claims description 9
- 238000005516 engineering process Methods 0.000 claims description 9
- 230000003466 anti-cipated effect Effects 0.000 claims description 6
- 230000003247 decreasing effect Effects 0.000 claims description 6
- 230000003068 static effect Effects 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000010295 mobile communication Methods 0.000 abstract description 4
- 238000013461 design Methods 0.000 description 7
- 238000004088 simulation Methods 0.000 description 7
- NUHSROFQTUXZQQ-UHFFFAOYSA-N isopentenyl diphosphate Chemical compound CC(=C)CCO[P@](O)(=O)OP(O)(O)=O NUHSROFQTUXZQQ-UHFFFAOYSA-N 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 101000741965 Homo sapiens Inactive tyrosine-protein kinase PRAG1 Proteins 0.000 description 1
- 102100038659 Inactive tyrosine-protein kinase PRAG1 Human genes 0.000 description 1
- 101100285899 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) SSE2 gene Proteins 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000004513 sizing Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/02—Arrangements for optimising operational condition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3887—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/16—Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
- H04W28/24—Negotiating SLA [Service Level Agreement]; Negotiating QoS [Quality of Service]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/483—Multiproc
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/484—Precedence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5017—Task decomposition
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
Abstract
本发明公开了一种基于GPP的5G终端通用平台优化方法及***,通过给基站中不同模块的程序分配不同的优先级,分配给控制信道及控制处理流程的相关程序最高优先级;在高优先级的任务处理完毕后再处理低优先级的任务;根据每个任务的属性对任务进行切分,将子任务分配给不同的线程;给每个子任务分配一个时间预算,在处理流程中给每个子任务标记时间戳,将每个子任务的时间戳与分配的时间预算进行比较来决定继续执行或提前终止;实时性处理高,反馈时延低,符合移动通信中高实时性低延迟的严格要求,大大优化了现有通用平台。
Description
技术领域
本发明涉及5G技术领域,特别涉及一种基于GPP的5G终端通用平台优化方法及***。
背景技术
目前全球关于5G的技术研究正如火如荼的开展,但是3GPP标准化也还在同步进行,迄今为止还没有一个定型的版本。多数从事5G研究的厂商一致认为,到2020年前后,5G才能逐步进入商用阶段,并在全球范围内走进人们的生活。基于5G协议的不确定性,对测试终端的软件架构设计提出了挑战。与传统的基于FPGA、专用芯片或DSP的***不同,基于通用处理器实现的纯软件架构的开放式5G无线***可以方便地使用各种成熟的软件工程方法,提高软件开发效率与开发质量;但基于开放式纯软件的开放式架构在软件实现上也面临诸多问题,比如LTE和5G协议栈的实时性处理,HARQ反馈时延,多终端模拟的实现等问题,带来了大大的不便。
因而现有技术还有待改进和提高。
发明内容
鉴于上述现有技术的不足之处,本发明的目的在于提供一种基于GPP的5G终端通用平台优化方法及***,旨在解决现有基于通用处理器的5G终端通用平台实时性不高,时延高的问题。
为了达到上述目的,本发明采取了以下技术方案:
一种基于GPP的5G终端通用平台优化方法,其中,包括:
A、给基站中不同模块的程序分配不同的优先级,分配给控制信道及控制处理流程的相关程序最高优先级;在高优先级的任务处理完毕后再处理低优先级的任务;
B、根据每个任务的属性对任务进行切分,将子任务分配给不同的线程;
C、给每个子任务分配一个时间预算,在处理流程中给每个子任务标记时间戳,将每个子任务的时间戳与分配的时间预算进行比较来决定继续执行或提前终止。
所述的基于GPP的5G终端通用平台优化方法,其中,所述基于GPP的5G终端通用平台同时支持静态调度和动态调度。
所述的基于GPP的5G终端通用平台优化方法,其中,所述步骤B还包括:
B1、对任务和线程的优先级进行分配。
所述的基于GPP的5G终端通用平台优化方法,其中,所述步骤B还包括:
B2、在后台线程中预先处理任务。
所述的基于GPP的5G终端通用平台优化方法,其中,所述步骤C还包括:
C1、通过任务控制器对任务的执行情况进行监控,并与调度器沟通来对物理层处理的任务进行增加或减少。
所述的基于GPP的5G终端通用平台优化方法,其中,采用FPGA加速单元搭建异构计算平台,通过FPGA对基带信号进行加速处理,以减少通用处理器的计算负担;通过PCI-E接口采用DMA技术对通用服务器平台的内存进行直接访问读写数据,以实现通用处理器与加速单元之间的高速数据交互;采用通用处理器支持的SIMD指令完成单指令多路数据流的并行处理,其中,基于指令集的软件加速方法包括比特级加速、符号级加速和/或采样级加速。
一种基于GPP的5G终端通用平台优化***,其中,包括:
优先级模块,用于给基站中不同模块的程序分配不同的优先级,分配给控制信道及控制处理流程的相关程序最高优先级;在高优先级的任务处理完毕后再处理低优先级的任务;
任务切分分配模块,用于根据每个任务的属性对任务进行切分,将子任务分配给不同的线程;
任务执行模块,用于给每个子任务分配一个时间预算,在处理流程中给每个子任务标记时间戳,将每个子任务的时间戳与分配的时间预算进行比较来决定继续执行或提前终止。
所述的基于GPP的5G终端通用平台优化***,其中,还包括:
预先处理模块,用于在后台线程中预先处理任务。
所述的基于GPP的5G终端通用平台优化***,其中,还包括:
监控模块,用于通过任务控制器对任务的执行情况进行监控,并与调度器沟通来对物理层处理的任务进行增加或减少。
所述的基于GPP的5G终端通用平台优化***,其中,采用FPGA加速单元搭建异构计算平台,通过FPGA对基带信号进行加速处理,以减少通用处理器的计算负担;通过PCI-E接口采用DMA技术对通用服务器平台的内存进行直接访问读写数据,以实现通用处理器与加速单元之间的高速数据交互;采用通用处理器支持的SIMD指令完成单指令多路数据流的并行处理,其中,基于指令集的软件加速方法包括比特级加速、符号级加速和/或采样级加速。
相较于现有技术,本发明提供的基于GPP的5G终端通用平台优化方法及***,实时性处理高,HARQ反馈时延低,符合移动通信中高实时性低延迟的严格要求,方便多终端模拟的实现,大大优化了现有通用平台,带来了极大的方便。
附图说明
图1为本发明提供的基于GPP的5G终端通用平台优化方法的方法流程图。
图2为本发明提供的基于GPP的5G终端通用平台优化***的结构框图。
图3为本发明提供的基于GPP的5G终端通用平台优化***模拟大量终端的架构示意图。
具体实施方式
本发明提供一种基于GPP的5G终端通用平台优化方法及***。为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
请参阅图1,本发明了提供一种基于GPP的5G终端通用平台优化方法,所述基于GPP的5G终端通用平台优化方法,包括:
S100、给基站中不同模块的程序分配不同的优先级,分配给控制信道及控制处理流程的相关程序最高优先级;在高优先级的任务处理完毕后再处理低优先级的任务;
S200、根据每个任务的属性对任务进行切分,将子任务分配给不同的线程;
S300、给每个子任务分配一个时间预算,在处理流程中给每个子任务标记时间戳,将每个子任务的时间戳与分配的时间预算进行比较来决定继续执行或提前终止。
下面结合具体的实施例对上述步骤进行详细的描述。
在所述步骤S100中,给基站中不同模块的程序分配不同的优先级,分配给控制信道及控制处理流程的相关程序最高优先级;在高优先级的任务处理完毕后再处理低优先级的任务。具体来说,本发明是基于GPP(General Purpose Processor)通用处理器平台的软件优化方法,由于移动通信中高实时性低延迟的严格要求,基于Intel通用处理器架构的基站的软件架构与传统的软件架构不同。例如,在LTE标准中,每个子帧占用l毫秒时间,这就要求基站端的软件程序必须在3毫秒之内完成上行信道的解码以及对UE(终端)发送ACK/NACK(应答/非应答)的回应。而5G NR每子帧占用的时间远小于1毫秒时间,HARQ(混合自动重传请求,Hybrid Automatic Repeat reQuest,是一种将前向纠错编码FEC和自动重传请求ARQ相结合而形成的技术)的反馈时间比LTE要求更严格。
此外,基于Intel通用处理器架构的基站也与传统的基于数字信号处理器的基站在软件架构上有所不同。在基于DSP的软件无线电实现中,数字信号处理的延迟几乎是固定的,因此可以严格控制程序处理的流程。而在基于Intel架构的终端模拟仪中,由于操作***多核、多线程的架构,使得程序在处理同一个功能模块时可能会出现抖动。一种解决方案是绑定指定的任务到某一个核上,让这个核上只运行固定的程序。
如何充分利用处理器中的多个核心是基于英特尔通用处理器架构的基站软件架构设计中的一个挑战。其软件架构必须具有可扩展性,能够支持不同的处理器以及任意个数的核。例如,在终端程序配置完成后,其可能在一个双核处理器上处理一个扇区的流量,也可能在一个四核处理器上处理三个扇区的流量。
基于英特尔通用处理器架构的基站软件架构的设计原则是在满足协议中对实时性要求的基础上,最大化的利用多核处理器的处理能力。为此,给基站中不同模块的程序分配不同的优先级。为了保证通信协议的正常运转,控制信道以及控制处理流程的相关程序必须具有最高的优先级。在此基础上,取决于处理器的能力,再尽最大的努力去处理数据信道的相关运算。这就意味着一个双核处理器和一个四核处理器都能够支持20MHz TDD LTE协议的处理,但是四核处理器可以提供更高的数据吞吐量。优选地,为了优化,所述基于GPP的5G终端通用平台同时支持静态调度和动态调度。
在所述步骤S200中,根据每个任务的属性对任务进行切分,将子任务分配给不同的线程。具体来说,为了达到优化的目的,本发明的基于GPP的5G终端通用平台,在执行任务时,根据每个任务的属性可以快速高效地对任务进行切分,并且灵活地将任务分配给不同的线程。
优选地,所述步骤S200还包括:S201、对任务和线程的优先级进行分配。具体来说,关于任务和线程的优先级分配。如前文所述,控制信道处理程序需要分配较高的优先级。但也有一些任务并没有严格的实时性要求,因此可以给其分配较低的优先级,在高优先级的任务处理完毕后再处理低优先级的任务。例如,PRACH(Physical Random Access Channel,物理随机接入信道)信道中的响应就可以在一个较长的时间周期内去处理。
在步骤S300中,给每个子任务分配一个时间预算,在处理流程中给每个子任务标记时间戳,将每个子任务的时间戳与分配的时间预算进行比较来决定继续执行或提前终止。具体来说,步骤S200中对任务进行切分为多个子任务并进行分配,然后在步骤S300中给每个子任务分配时间预算并记录每个子任务的处理时间,若超过时间预算则继续执行,若没有超过时间预算则提前终止。在实际应用时,任务管理器需要给每个子任务分配一个时间预算。软件在处理流程中会给子任务标记时间戳,并与分配的时间预算进行比较,以此来决定是继续执行还是提前终止。软件会首先处理高优先级的任务,然后在尽最大的努力处理其他任务。例如,在LTE终端接收端的物理层,首先进行IFFT(快速傅里叶反变换)运算,然后逐一对控制信道PDCCH(Physical Downlink Control Channel,物理下行控制信道)进行解码,最后再根据剩余的时间对数据信道PDSCH(Physical Downlink Shared Channel,物理下行共享信道)进行处理。
优选地,所述步骤S200还包括:
S202、在后台线程中预先处理任务。具体来说,就是任务可以在后台线程中进行预先处理。很多发送端的任务可以被事先计算完成,例如,接下来20帧的参考信号都可以被预先计算出来存放在内存中。此外,PDSCH信道中对新数据的发送也没有非常严格的实时性要求,因此可以将调制和编码实现计算完毕,而由调度器来决定何时发送。这种预先处理的机制能够减少抖动的出现,并给优先级高或者时间有限的任务提供了更多的空间。
优选地,所述步骤S300还包括:
S301、通过任务控制器对任务的执行情况进行监控,并与调度器沟通来对物理层处理的任务进行增加或减少。具体来说,任务控制器会对任务的执行情况进行监控,并通过与调度器的沟通来对物理层处理的任务进行增加或减少。例如,当有大量的物理层发送任务不能在分配的时间预算中完成时,调度器会给未来的上行处理分配较少的任务。因此,在特定平台上能够支持的吞吐量将取决于处理器的处理能力。此外,任务控制器还必须平衡不同核之间的负载。还需提供机制防止调度时产生的抖动。这是本发明的通用处理器平台中智能调度器和任务控制器的作用。
在实际应用时,本发明的基于GPP的5G终端通用平台,其物理层、MAC层和RLC层的跨层设计。这三层在LTE协议中是高度耦合的,虽然从功能上看具有一定的独立性,但是从任务的执行角度来看是耦合在一起的。传统的实现方式中不同的层使用独立的硬件结构,各层之间数据的搬移造成了多余的延迟和浪费。基于Intel通用处理器架构的终端可以很方便地实现跨层设计,因为整个协议栈都运行在一个处理器上。
优选地,为了优化,在硬件方面,所述基于GPP的5G终端通用平台,采用FPGA加速单元搭建异构计算平台,通过FPGA对基带信号进行加速处理,以减少通用处理器的计算负担;通过PCI-E接口采用DMA技术对通用服务器平台的内存进行直接访问读写数据,以实现通用处理器与加速单元之间的高速数据交互;采用通用处理器支持的SIMD指令完成单指令多路数据流的并行处理,其中,基于指令集的软件加速方法包括比特级加速、符号级加速和/或采样级加速。
具体来说,为了实现上述流程步骤对应的技术效果,一方面采用FPGA加速单元搭建异构计算平台,通过FPGA对某些计算相对简单但计算量大的基带信号进行加速处理,减少通用处理器的计算负担;设计PCI-E接口,采用DMA技术对通用服务器平台的内存进行直接访问读写数据,实现通用处理器与加速单元之间的高速数据交互;前传链路射频与通用服务器基带处理接口采用成熟的CPRI接口进行连接;给出整个开放式 5G通用平台终端模拟仪的硬件架构,实现软件自定义的物理层尤其基带处理功能。另一方面,结合Intel处理器的架构特点,采用通用处理器支持的SIMD指令(MMX,SSE,SSE2,SSE3,SSE4,AVX,AVX2等),完成单指令多路数据流的并行处理。基于指令集的软件加速方法如下:1)比特级加速:查表(Bit level-Look UP Tables,LUT ) ;其中,LUT是考量计算复杂度和空间复杂度后进行的折中操作,LUT操作替代常规的比特操作能够大大降低线上处理时延。而CRC校验与去校验,扰码与解扰码,速率匹配与去匹配等比特级运算可采用LUT方式加速。2)符号级加速:单指令多数据指令(Symbol level-Single instruction multiple data,SIMD),其中,IntelCPU有专门多数据指令SIMD(Single instruction multiple data)指令集来加速符号级运算的信号处理。SIMD主要针对符号级数据重复执行相同的操作。SIMD一条指令能处理几个操作,运算成本(计算资源)小,充分利用比特带宽,带来的好处是显著提升CPU效率。而调制解调,预编码,MIMO,信道估计等符号级运算可采用SIMD方式。3)采样级加速:Intel综合性能原语(Sample level-Intel Integrated Performance Primitives,IPP),其中,Intel开发的综合性能原语IPP,是一套跨平台,跨操作***的软件函数库,能够实现信号处理,图像处理,多媒体,向量处理等操作。IPP无需编写汇编代码,很小的代码改变就可得到极大的改变。利用IPP实现FFT/IFFT运算,测试结果显示利用IPP完成线上处理,性能优势显著。优选地,FFT/IFFT可采用IPP方式加速。这三种加速方式可分别采用或混合采用。
请参阅图2,本发明提供的基于GPP的5G终端通用平台优化***模拟大量终端的架构示意图,关于在通用平台上同时模拟大量终端的实现,基于Linux low latency版本的实时操作***天然支持多线程技术,图2是通用平台模拟多终端的软件架构,将模拟终端每TTI[TTI是指传输时间间隔,每个传输信道(TrCH)对应一个业务,由于各种业务对时延的要求不同,所以其传输时间间隔(TTI)是不同的,TTI可以是10ms、20ms、40ms或80ms]都要处理的调度信息精简并模块化(如UE Thread 0, UE Thread 1等线程所示)生成新的线程去执行,保证效率,和实时响应。对于一些需要5G***协作执行的公共处理,比如***消息(System Information),各种测量上报(Measurement nt),移动性管理(MobilityManagement)等以条件触发的方式在新线程上执行(System Information, Measurementnt, Mobility Management等), 整个***的设计将实时处理和条件处理的部分分开,保证各部分能够正常运行。System bus是***总线,本发明提供的基于GPP的5G终端通用平台的模拟大量终端架构如图2所示,在模拟终端开机接入过程会产生大量的信令交互,如果所有模拟终端同时运行势必会导致信令突发,突发的信息可能会得不到及时的处理,又可能会导致信令重传,如此必然导致***陷入恶性循环,所以需要控制终端接入时的运行顺序,通过各模拟终端线程通信,使终端的接入有序进行,模拟终端一个一个的接入,等到所有的终端都执行完成,可以达到多用户同时在线的目的. 然后根据5G网络的测试要求,随机的或是顺序的指示模拟终端上报自己的数据。
基于上述实施例提供的基于GPP的5G终端通用平台优化方法,本发明还提供一种基于GPP的5G终端通用平台优化***。请参阅图3,所述基于GPP的5G终端通用平台优化***包括:
优先级模块10,用于给基站中不同模块的程序分配不同的优先级,分配给控制信道及控制处理流程的相关程序最高优先级;在高优先级的任务处理完毕后再处理低优先级的任务;具体如步骤S100所述;
任务切分分配模块20,用于根据每个任务的属性对任务进行切分,将子任务分配给不同的线程;具体如步骤S200所述;
任务执行模块30,用于给每个子任务分配一个时间预算,在处理流程中给每个子任务标记时间戳,将每个子任务的时间戳与分配的时间预算进行比较来决定继续执行或提前终止;具体如步骤S300所述。
进一步地,所述基于GPP的5G终端通用平台同时支持静态调度和动态调度。
进一步地,所述的基于GPP的5G终端通用平台优化***,还包括:
预先处理模块,用于在后台线程中预先处理任务。
进一步地,所述的基于GPP的5G终端通用平台优化***,还包括:
监控模块,用于通过任务控制器对任务的执行情况进行监控,并与调度器沟通来对物理层处理的任务进行增加或减少。
进一步地,所述优先级模块10还用于对任务和线程的优先级进行分配。
进一步地,所述的基于GPP的5G终端通用平台优化***,采用FPGA加速单元搭建异构计算平台,通过FPGA对基带信号进行加速处理,以减少通用处理器的计算负担;通过PCI-E接口采用DMA技术对通用服务器平台的内存进行直接访问读写数据,以实现通用处理器与加速单元之间的高速数据交互;采用通用处理器支持的SIMD指令完成单指令多路数据流的并行处理,其中,基于指令集的软件加速方法包括比特级加速、符号级加速和/或采样级加速。
由于所述基于GPP的5G终端通用平台优化***的具体原理和详细技术特征在上述基于GPP的5G终端通用平台优化方法实施例中已详细阐述,在此不再赘述。
上述功能模块的划分仅用以举例说明,在实际应用中,可以根据需要将上述功能分配由不同的功能模块来完成,即划分成不同的功能模块,来完成上述描述的全部或部分功能。
本领域普通技术人员可以理解上述实施例方法中的全部或部分流程,是可以通过计算机(或移动终端)程序来指令相关的硬件完成,所述的计算机(或移动终端)程序可存储于一计算机(或移动终端)可读取存储介质中,程序在执行时,可包括上述各方法的实施例的流程。其中的存储介质可以为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。
综上所述,本发明提供的一种基于GPP的5G终端通用平台优化方法及***,通过给基站中不同模块的程序分配不同的优先级,分配给控制信道及控制处理流程的相关程序最高优先级;在高优先级的任务处理完毕后再处理低优先级的任务;根据每个任务的属性对任务进行切分,将子任务分配给不同的线程;给每个子任务分配一个时间预算,在处理流程中给每个子任务标记时间戳,将每个子任务的时间戳与分配的时间预算进行比较来决定继续执行或提前终止;优化了基于开放式纯软件的开放式架构在软件实现上面临的诸多问题,比如LTE和5G协议栈的实时性处理,HARQ反馈时延,多终端模拟的实现等问题,实时性处理高,HARQ反馈时延低,符合移动通信中高实时性低延迟的严格要求,方便多终端模拟的实现,大大优化了现有通用平台,带来了极大的方便。
可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。
Claims (10)
1.一种基于GPP的5G终端通用平台优化方法,其特征在于,包括:
A、给基站中不同模块的程序分配不同的优先级,分配给控制信道及控制处理流程的相关程序最高优先级;在高优先级的任务处理完毕后再处理低优先级的任务;
B、根据每个任务的属性对任务进行切分,将子任务分配给不同的线程;
C、给每个子任务分配一个时间预算,在处理流程中给每个子任务标记时间戳,将每个子任务的时间戳与分配的时间预算进行比较来决定继续执行或提前终止。
2.根据权利要求1所述的基于GPP的5G终端通用平台优化方法,其特征在于,所述基于GPP的5G终端通用平台同时支持静态调度和动态调度。
3.根据权利要求1所述的基于GPP的5G终端通用平台优化方法,其特征在于,所述步骤B还包括:
B1、对任务和线程的优先级进行分配。
4.根据权利要求1所述的基于GPP的5G终端通用平台优化方法,其特征在于,所述步骤B还包括:
B2、在后台线程中预先处理任务。
5.根据权利要求1所述的基于GPP的5G终端通用平台优化方法,其特征在于,所述步骤C还包括:
C1、通过任务控制器对任务的执行情况进行监控,并与调度器沟通来对物理层处理的任务进行增加或减少。
6.根据权利要求1所述的基于GPP的5G终端通用平台优化方法,其特征在于,采用FPGA加速单元搭建异构计算平台,通过FPGA对基带信号进行加速处理,以减少通用处理器的计算负担;通过PCI-E接口采用DMA技术对通用服务器平台的内存进行直接访问读写数据,以实现通用处理器与加速单元之间的高速数据交互;采用通用处理器支持的SIMD指令完成单指令多路数据流的并行处理,其中,基于指令集的软件加速方法包括比特级加速、符号级加速和/或采样级加速。
7.一种基于GPP的5G终端通用平台优化***,其特征在于,包括:
优先级模块,用于给基站中不同模块的程序分配不同的优先级,分配给控制信道及控制处理流程的相关程序最高优先级;在高优先级的任务处理完毕后再处理低优先级的任务;
任务切分分配模块,用于根据每个任务的属性对任务进行切分,将子任务分配给不同的线程;
任务执行模块,用于给每个子任务分配一个时间预算,在处理流程中给每个子任务标记时间戳,将每个子任务的时间戳与分配的时间预算进行比较来决定继续执行或提前终止。
8.根据权利要求7所述的基于GPP的5G终端通用平台优化***,其特征在于,还包括:
预先处理模块,用于在后台线程中预先处理任务。
9.根据权利要求7所述的基于GPP的5G终端通用平台优化***,其特征在于,还包括:
监控模块,用于通过任务控制器对任务的执行情况进行监控,并与调度器沟通来对物理层处理的任务进行增加或减少。
10.根据权利要求7所述的基于GPP的5G终端通用平台优化***,其特征在于,采用FPGA加速单元搭建异构计算平台,通过FPGA对基带信号进行加速处理,以减少通用处理器的计算负担;通过PCI-E接口采用DMA技术对通用服务器平台的内存进行直接访问读写数据,以实现通用处理器与加速单元之间的高速数据交互;采用通用处理器支持的SIMD指令完成单指令多路数据流的并行处理,其中,基于指令集的软件加速方法包括比特级加速、符号级加速和/或采样级加速。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710415240.1A CN107333282B (zh) | 2017-06-05 | 2017-06-05 | 一种基于gpp的5g终端通用平台优化方法及*** |
PCT/CN2018/089837 WO2018223932A1 (zh) | 2017-06-05 | 2018-06-04 | 一种基于gpp的5g终端通用平台优化方法及*** |
US16/619,465 US20200183741A1 (en) | 2017-06-05 | 2018-06-04 | Gpp-based 5g terminal common platform optimization method and system |
EP18812626.2A EP3637830A4 (en) | 2017-06-05 | 2018-06-04 | COMMON PLATFORM OPTIMIZATION PROCESS AND SYSTEM FOR GPP-BASED 5G TERMINAL |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710415240.1A CN107333282B (zh) | 2017-06-05 | 2017-06-05 | 一种基于gpp的5g终端通用平台优化方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107333282A true CN107333282A (zh) | 2017-11-07 |
CN107333282B CN107333282B (zh) | 2021-02-19 |
Family
ID=60194552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710415240.1A Active CN107333282B (zh) | 2017-06-05 | 2017-06-05 | 一种基于gpp的5g终端通用平台优化方法及*** |
Country Status (4)
Country | Link |
---|---|
US (1) | US20200183741A1 (zh) |
EP (1) | EP3637830A4 (zh) |
CN (1) | CN107333282B (zh) |
WO (1) | WO2018223932A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018223932A1 (zh) * | 2017-06-05 | 2018-12-13 | 捷开通讯(深圳)有限公司 | 一种基于gpp的5g终端通用平台优化方法及*** |
CN109062693A (zh) * | 2018-07-26 | 2018-12-21 | 郑州云海信息技术有限公司 | 一种内存管理方法及相关设备 |
CN109254758A (zh) * | 2018-08-15 | 2019-01-22 | 中国人民解放军国防科技大学 | 用于麒麟***的软件无线电***及其开发方法 |
CN111130696A (zh) * | 2019-12-19 | 2020-05-08 | 重庆邮电大学 | 一种基于5g终端模拟器的下行仿真平台 |
CN112383964A (zh) * | 2020-10-21 | 2021-02-19 | 武汉虹信科技发展有限责任公司 | 无线网络物理层的单核多任务调度方法及*** |
CN112996132A (zh) * | 2021-05-10 | 2021-06-18 | 新华三技术有限公司 | 一种应用于5g物理层的动态调度方法、装置及设备 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10528117B2 (en) * | 2014-12-22 | 2020-01-07 | Qualcomm Incorporated | Thermal mitigation in devices with multiple processing units |
US11595843B2 (en) * | 2017-12-29 | 2023-02-28 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and network nodes for handling baseband processing |
US11392415B2 (en) * | 2018-08-24 | 2022-07-19 | Samsung Electronics Co., Ltd. | Electronic devices and methods for 5G and B5G multi-core load balancing |
CN113038607B (zh) * | 2019-12-24 | 2022-11-15 | 大唐移动通信设备有限公司 | 一种信道处理方法、装置及基站 |
US20240004704A1 (en) * | 2020-11-05 | 2024-01-04 | NEC Laboratories Europe GmbH | Virtualized radio access point, vrap, and method of operating the same |
CN113873220A (zh) * | 2020-12-03 | 2021-12-31 | 上海飞机制造有限公司 | 一种偏差分析方法、装置、***、设备及存储介质 |
US11791871B2 (en) * | 2020-12-21 | 2023-10-17 | Nvidia Corporation | Parallel precoding for downlink transmission |
CN113672374A (zh) * | 2021-10-21 | 2021-11-19 | 深圳致星科技有限公司 | 用于联邦学习和隐私计算的任务调度方法及*** |
CN116225345B (zh) * | 2023-05-08 | 2023-08-11 | 珠海妙存科技有限公司 | 一种eMMC的数据存储方法、控制器及可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101290585A (zh) * | 2007-04-19 | 2008-10-22 | 中兴通讯股份有限公司 | 一种嵌入式***实时任务的调度方法 |
US20100333099A1 (en) * | 2009-06-30 | 2010-12-30 | International Business Machines Corporation | Message selection for inter-thread communication in a multithreaded processor |
CN103838552A (zh) * | 2014-03-18 | 2014-06-04 | 北京邮电大学 | 4g宽带通信***多核并行流水线信号的处理***和方法 |
CN105700937A (zh) * | 2016-01-04 | 2016-06-22 | 北京百度网讯科技有限公司 | 多线程任务处理方法和装置 |
CN105892996A (zh) * | 2015-12-14 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 一种批量数据处理的流水线作业方法及装置 |
CN106713314A (zh) * | 2016-12-22 | 2017-05-24 | 惠州Tcl移动通信有限公司 | 一种面向5g的协议栈多维度切分方法及其装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050022173A1 (en) * | 2003-05-30 | 2005-01-27 | Codito Technologies Private Limited | Method and system for allocation of special purpose computing resources in a multiprocessor system |
US10007527B2 (en) * | 2012-03-05 | 2018-06-26 | Nvidia Corporation | Uniform load processing for parallel thread sub-sets |
US10095526B2 (en) * | 2012-10-12 | 2018-10-09 | Nvidia Corporation | Technique for improving performance in multi-threaded processing units |
KR101709314B1 (ko) * | 2013-09-12 | 2017-02-23 | 한국전자통신연구원 | 태스크 우선순위 조정 장치 및 방법 |
CN105354656A (zh) * | 2015-10-09 | 2016-02-24 | 珠海许继芝电网自动化有限公司 | 基于分区解耦的配电网状态估计的分布式并行计算方法及*** |
CN107333282B (zh) * | 2017-06-05 | 2021-02-19 | 惠州Tcl移动通信有限公司 | 一种基于gpp的5g终端通用平台优化方法及*** |
-
2017
- 2017-06-05 CN CN201710415240.1A patent/CN107333282B/zh active Active
-
2018
- 2018-06-04 US US16/619,465 patent/US20200183741A1/en not_active Abandoned
- 2018-06-04 EP EP18812626.2A patent/EP3637830A4/en not_active Withdrawn
- 2018-06-04 WO PCT/CN2018/089837 patent/WO2018223932A1/zh unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101290585A (zh) * | 2007-04-19 | 2008-10-22 | 中兴通讯股份有限公司 | 一种嵌入式***实时任务的调度方法 |
US20100333099A1 (en) * | 2009-06-30 | 2010-12-30 | International Business Machines Corporation | Message selection for inter-thread communication in a multithreaded processor |
CN103838552A (zh) * | 2014-03-18 | 2014-06-04 | 北京邮电大学 | 4g宽带通信***多核并行流水线信号的处理***和方法 |
CN105892996A (zh) * | 2015-12-14 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 一种批量数据处理的流水线作业方法及装置 |
CN105700937A (zh) * | 2016-01-04 | 2016-06-22 | 北京百度网讯科技有限公司 | 多线程任务处理方法和装置 |
CN106713314A (zh) * | 2016-12-22 | 2017-05-24 | 惠州Tcl移动通信有限公司 | 一种面向5g的协议栈多维度切分方法及其装置 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018223932A1 (zh) * | 2017-06-05 | 2018-12-13 | 捷开通讯(深圳)有限公司 | 一种基于gpp的5g终端通用平台优化方法及*** |
CN109062693A (zh) * | 2018-07-26 | 2018-12-21 | 郑州云海信息技术有限公司 | 一种内存管理方法及相关设备 |
CN109254758A (zh) * | 2018-08-15 | 2019-01-22 | 中国人民解放军国防科技大学 | 用于麒麟***的软件无线电***及其开发方法 |
CN109254758B (zh) * | 2018-08-15 | 2021-08-17 | 中国人民解放军国防科技大学 | 用于麒麟***的软件无线电***及其开发方法 |
CN111130696A (zh) * | 2019-12-19 | 2020-05-08 | 重庆邮电大学 | 一种基于5g终端模拟器的下行仿真平台 |
CN112383964A (zh) * | 2020-10-21 | 2021-02-19 | 武汉虹信科技发展有限责任公司 | 无线网络物理层的单核多任务调度方法及*** |
CN112383964B (zh) * | 2020-10-21 | 2022-07-19 | 武汉虹信科技发展有限责任公司 | 无线网络物理层的单核多任务调度方法及*** |
CN112996132A (zh) * | 2021-05-10 | 2021-06-18 | 新华三技术有限公司 | 一种应用于5g物理层的动态调度方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107333282B (zh) | 2021-02-19 |
WO2018223932A1 (zh) | 2018-12-13 |
US20200183741A1 (en) | 2020-06-11 |
EP3637830A4 (en) | 2021-02-24 |
EP3637830A1 (en) | 2020-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107333282A (zh) | 一种基于gpp的5g终端通用平台优化方法及*** | |
CN105790898B (zh) | 通讯***的无线通讯处理方法 | |
US9554394B2 (en) | Uplink MU-MIMO method and system | |
CN102647263B (zh) | 一种ack/nack信息的传输方法和设备 | |
CN105246106B (zh) | Lte-a终端测试仪表在载波聚合下mac层数据调度方法 | |
CN110535565A (zh) | 一种反馈信息的发送和接收方法、装置和存储介质 | |
CN103636270A (zh) | 一种调度下行数据传输的方法和装置 | |
WO2021204122A1 (zh) | 一种上行信道的传输方法及设备 | |
CN110100494B (zh) | 一种数据传输的方法及设备 | |
WO2019085910A1 (zh) | 一种通信终端和通信测试方法、存储介质 | |
JP2020533902A5 (zh) | ||
JP2018512006A (ja) | フィードバック・情報の送信及びその制御方法及び装置 | |
CN110312283A (zh) | 一种信息处理方法及装置 | |
JP2019528618A (ja) | ダウンリンクデータをフィードバックする方法及び装置 | |
CN110034849A (zh) | 一种数据传输方法及设备 | |
CN101442399B (zh) | 高速下行分组接入协议栈的实现方法和基站 | |
Kundu et al. | Hardware acceleration for open radio access networks: A contemporary overview | |
CN103973417A (zh) | 数据传输方法和用户设备 | |
US20230354278A1 (en) | Communication method and apparatus | |
WO2019095971A1 (zh) | 一种通信方法及设备 | |
CN108337072A (zh) | 一种上行数据调度方法以及相关设备 | |
CN106162674B (zh) | 一种***性能测试方法和装置 | |
KR20220064806A (ko) | 소프트웨어 패키지에 gpu를 할당하는 방법 및 장치 | |
CN107846267A (zh) | 一种终端的反馈信息处理方法和装置 | |
CN103460733A (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 |