CN107623555B - 一种通用型通信仿真平台的实现方法及装置 - Google Patents
一种通用型通信仿真平台的实现方法及装置 Download PDFInfo
- Publication number
- CN107623555B CN107623555B CN201610552841.2A CN201610552841A CN107623555B CN 107623555 B CN107623555 B CN 107623555B CN 201610552841 A CN201610552841 A CN 201610552841A CN 107623555 B CN107623555 B CN 107623555B
- Authority
- CN
- China
- Prior art keywords
- function
- module
- functional
- functional module
- channel
- 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 96
- 230000006854 communication Effects 0.000 title claims abstract description 88
- 238000004891 communication Methods 0.000 title claims abstract description 85
- 238000004088 simulation Methods 0.000 title claims abstract description 74
- 230000006870 function Effects 0.000 claims abstract description 250
- 230000008569 process Effects 0.000 claims abstract description 71
- 238000010276 construction Methods 0.000 claims abstract description 24
- 230000000737 periodic effect Effects 0.000 claims abstract description 8
- 238000012905 input function Methods 0.000 claims description 20
- 238000005562 fading Methods 0.000 claims description 19
- 230000008859 change Effects 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 125000004122 cyclic group Chemical group 0.000 claims description 2
- 230000000295 complement effect Effects 0.000 description 3
- 238000007639 printing Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005094 computer simulation Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请公开了一种通用型通信仿真平台的实现方法,构造一个控制接口虚基类,调用虚基类中的功能模块构建过程的接口函数,分别构建出仿真所需的功能模块;每一个功能模块对应一个通信设备或信道;顺次完成虚基类中的发射机功能模块、信道功能模块和接收机功能模块的初始化过程;进行指定数目的周期循环,在每一次周期循环中,顺次调用所有发射机功能模块、信道功能模块和接收机功能模块的每一个时间周期内工作流程的接口函数;在每一个周期循环中采集仿真数据,并对所采集的仿真数据进行整理。本申请还公开了一种通用型通信仿真平台的实现装置。
Description
技术领域
本申请涉及通信技术,尤其涉及一种通用型通信仿真平台的实现方法及装置。
背景技术
通信仿真平台是一种利用计算机仿真技术研究通信系统性能的软件工具。传统的通信仿真平台往往仅能支持针对一类通信设备的性能仿真,所述一类通信设备可以是通信网络中的任一类型的节点设备,例如终端、基站、网关、网络控制器等等。
如果要进行不同类型通信设备之间的通信性能仿真,往往需要构建多套相似的仿真平台,成本较高并且实现过程繁琐。
发明内容
本申请提供了一种通用型通信仿真平台的实现方法及装置,可以通过同一个通信仿真平台,实现对不同类型通信设备之间的通信性能进行仿真。
本申请实施例提供了一种通用型通信仿真平台的实现方法,包括:
A、构造一个控制接口虚基类,所述控制接口虚基类包括:标志信息、功能模块的构建过程的接口函数、功能模块的初始化过程的接口函数、功能模块的每一个时间周期内工作流程的接口函数、功能模块的状态输入函数、功能模块的内部状态的输出函数;所述标志信息包含用于标识功能模块派生类的类别、编号、构成属性的标志位;所述各个函数均为虚函数;
B、调用所述功能模块构建过程的接口函数,分别构建出仿真所需的功能模块;每一个功能模块对应一个通信设备或信道,相同类型的功能模块对应所述控制接口虚基类的一个派生类;所构建出的功能模块的数目至少为3个;在功能模块的数目最少的情况下,所述构建的功能模块分别为发射机功能模块、信道功能模块和接收机功能模块;需要进行协作的两个功能模块,采用将控制接口虚基类进行向下类型转换的方式,相互持有对方派生类指针,从而完成对方功能模块完整功能函数的调用;
C、顺次完成发射机功能模块、信道功能模块和接收机功能模块的初始化过程;
D、进行指定数目的周期循环,在每一次周期循环中,顺次调用所有发射机功能模块、信道功能模块和接收机功能模块的每一个时间周期内工作流程的接口函数;
E、在每一个周期循环中采集仿真数据,并对所采集的仿真数据进行整理。
较佳地,所述功能模块的构建过程的接口函数执行如下功能中的一个或多个:构造对象自身;构造对象包含的子函数;将对象中的参数进行初始化。
较佳地,所述功能模块的初始化过程的接口函数执行如下功能中的一个或多个:寻找通信信源的过程;将相关功能模块的控制接口虚基类进行向下类型转换的过程;进行全局变量信息登记过程。
较佳地,所述进行全局变量信息登记过程包括:登记自身的类别、登记自身控制接口指针和登记自身通信射频参数。
较佳地,所述功能模块的每一个时间周期内工作流程的接口函数执行如下功能中的一个或多个:进行通信信道状态更新,包含大尺度衰落、小尺度衰落、阴影衰落、用户通信频段变化导致的信道干扰情况变化的更新。
较佳地,所述功能模块的状态输入函数用于接收来自功能模块外部的数据以及接收来自功能模块外部的控制消息;以及,
功能模块的内部状态的输出函数用于向外部输出模块内部的数据;以及向外部输出相应消息。
较佳地,所述步骤D中进一步包括:在每一次周期循环中,顺次调用所有发射机功能模块、信道功能模块和接收机功能模块的模块状态的输入函数和/或模块内部状态的输出函数。
较佳地,所述各个功能模块在场景和用户初始化构建时,统一存放在总线的驱动容器中。
本申请实施例还提供了一种通用型通信仿真平台的实现装置,包括:虚基类构造单元、模块构造单元、初始化单元、循环调用单元和数据整理单元;
所述虚基类构造单元用于构造一个控制接口虚基类,所述控制接口虚基类包括:标志信息、功能模块的构建过程的接口函数、功能模块的初始化过程的接口函数、功能模块的每一个时间周期内工作流程的接口函数、功能模块的状态输入函数、功能模块的内部状态的输出函数;所述标志信息包含用于标识功能模块派生类的类别、编号、构成属性的标志位;所述各个函数均为虚函数;
所述模块构造单元用于调用所述功能模块构建过程的接口函数,分别构建出仿真所需的功能模块;每一个功能模块对应一个通信设备或信道,相同类型的功能模块对应所述控制接口虚基类的一个派生类,所有封装后的类均继承自所述控制接口虚基类;所构建出的功能模块的数目至少为3个;在功能模块的数目最少的情况下,所述构建的功能模块分别为发射机功能模块、信道功能模块和接收机功能模块;需要进行协作的两个功能模块,采用将控制接口虚基类进行向下类型转换的方式,相互持有对方派生类指针,从而完成对方功能模块完整功能函数的调用;
所述初始化单元用于完成调用发射机功能模块、信道功能模块和接收机功能模块的初始化过程;
所述循环调用单元用于进行指定数目的周期循环,在每一次周期循环中,顺次调用所有发射机功能模块、信道功能模块和接收机功能模块的每一个时间周期内工作流程的接口函数;
数据整理单元用于在每一个周期循环中采集仿真数据,并对所采集的仿真数据进行整理。
较佳地,所述功能模块的构建过程的接口函数执行如下功能中的一个或多个:构造对象自身;构造对象包含的子函数;将对象中的参数进行初始化。
较佳地,所述功能模块的初始化过程的接口函数执行如下功能中的一个或多个:寻找通信信源的过程;将相关功能模块的控制接口虚基类进行向下类型转换的过程;进行全局变量信息登记过程。
较佳地,所述进行全局变量信息登记过程包括:登记自身的类别、登记自身控制接口指针和登记自身通信射频参数。
较佳地,所述功能模块的每一个时间周期内工作流程的接口函数执行如下功能中的一个或多个:进行通信信道状态更新,包含大尺度衰落、小尺度衰落、阴影衰落、用户通信频段变化导致的信道干扰情况变化的更新。
较佳地,所述功能模块的状态输入函数用于接收来自功能模块外部的数据以及接收来自功能模块外部的控制消息;以及,
功能模块的内部状态的输出函数用于向外部输出模块内部的数据;以及向外部输出相应消息。
较佳地,所述循环调用单元进一步用于,在每一次周期循环中,顺次调用所有发射机功能模块、信道功能模块和接收机功能模块的模块状态的输入函数和/或模块内部状态的输出函数。
较佳地,所述各个功能模块在场景和用户初始化构建时,统一存放在总线的驱动容器中。
从以上技术方案可以看出,用于模拟通信设备的功能模块对应控制接口虚基类的一个派生类,该控制接口虚基类实现了对所有通信设备以及信道对象的抽象,用这种方式,即可实现通过同一个通信仿真平台,实现对不同类型通信设备之间的通信性能进行仿真。
附图说明
为了更清楚的说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。其中,
图1为本发明实施例提供的一种通用型通信仿真平台的实现装置的框图;
图2为本发明实施例提供的一种实现通信设备之间的通信仿真的流程示意图;
图3为在车联网领域,应用本发明提供的通用型通信仿真平台,实现对不同类型的通信设备之间的通信过程仿真的流程图;
图4为本申请实施例中涉及的虚基类、派生类及其指针的关系示意图。
具体实施方式
本发明的核心思想是:
将用于控制设备工作的控制类函数写入统一的控制接口虚基类中,所有仿真中涉及到的功能模块(包括但不限于场景相关仿真模块,信道相关仿真模块,通信设备相关仿真模块)继承自这一控制接口虚基类,从而使得仿真流程控制模块可以通过虚基类中的控制类函数来控制系统仿真的推进;
进行通信仿真的功能函数写入到继承自控制接口虚基类的功能模块派生类中,需要进行协作的功能模块派生类(如基站和接收机)采用将控制接口虚基类进行向下类型转换的方式持有对方派生类指针,从而完成对方功能模块完整功能函数的调用。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明的一个实施例提供了一种通用型通信仿真平台的实现装置,包括:虚基类构造单元101、模块构造单元102、初始化单元103、循环调用单元104和数据整理单元105;
所述虚基类构造单元101用于构造一个控制接口虚基类,所述控制接口虚基类包括:标志信息、功能模块的构建过程的接口函数、功能模块的初始化过程的接口函数、功能模块的每一个时间周期内工作流程的接口函数、功能模块的状态输入函数、功能模块的内部状态的输出函数;所述标志信息包含用于标识功能模块派生类的类别、编号、构成属性的标志位;所述各个函数均为虚函数;
所述模块构造单元102用于调用所述功能模块构建过程的接口函数,分别构建出仿真所需的功能模块;每一个功能模块对应一个通信设备或信道,相同类型的功能模块对应所述控制接口虚基类的一个派生类,所有封装后的类均继承自所述控制接口虚基类;所构建出的功能模块的数目至少为3个;在功能模块的数目最少的情况下,所述构建的功能模块分别为发射机功能模块、信道功能模块和接收机功能模块;在功能模块的数目大于3时,发射机功能模块、信道功能模块和接收机功能模块中的任一个的数目可以大于1。
需要进行协作的两个功能模块,采用将控制接口虚基类进行向下类型转换的方式,相互持有对方派生类指针,从而完成对方功能模块完整功能函数的调用;
所述初始化单元103用于顺次完成发射机功能模块、信道功能模块和接收机功能模块的初始化过程;
所述循环调用单元104用于进行指定数目的周期循环,在每一次周期循环中,顺次调用所有发射机功能模块、信道功能模块和接收机功能模块的每一个时间周期内工作流程的接口函数;
数据整理单元105用于在每一个周期循环中采集仿真数据,并对所采集的仿真数据进行整理。
较佳地,所述功能模块的构建过程的接口函数执行如下功能中的一个或多个:构造对象自身;构造对象包含的子函数;将对象中的参数进行初始化。
较佳地,所述功能模块的初始化过程的接口函数执行如下功能中的一个或多个:寻找通信信源的过程;将相关功能模块的控制接口虚基类进行向下类型转换的过程;进行全局变量信息登记过程。
较佳地,所述进行全局变量信息登记过程包括:登记自身的类别、登记自身控制接口指针和登记自身通信射频参数。
较佳地,所述功能模块的每一个时间周期内工作流程的接口函数执行如下功能中的一个或多个:进行通信信道状态更新,包含大尺度衰落、小尺度衰落、阴影衰落、用户通信频段变化导致的信道干扰情况变化的更新。
较佳地,所述功能模块的状态输入函数用于接收来自功能模块外部的数据以及接收来自功能模块外部的控制消息;以及,
功能模块的内部状态的输出函数用于向外部输出模块内部的数据;以及向外部输出相应消息。
较佳地,所述循环调用单元进一步用于,在每一次周期循环中,顺次调用所有发射机功能模块、信道功能模块和接收机功能模块的模块状态的输入函数和/或模块内部状态的输出函数。
较佳地,所述各个功能模块在场景和用户初始化构建时,统一存放在总线的驱动容器中。
本发明的一个实施例提供了控制接口虚基类的构造方法,所述控制接口虚基类包括:
标志信息:包含用于标识功能模块派生类的类别、编号、构成属性(标识包含哪些子模块)的标志位。
功能模块的构建过程的接口函数:
该函数采用虚函数的形式,构建过程的接口函数执行如下功能中的一个或多个:构造对象自身;构造对象包含的子函数;将对象中的参数进行初始化。
功能模块的初始化过程的接口函数:
该函数采用虚函数的形式,派生类中的初始化函数执行如下功能中的一个或多个:寻找通信信源的过程;将相关模块的控制接口虚基类进行向下类型转换的过程;进行必要的全局变量信息登记过程,如登记自身的类别、登记自身控制接口指针、登记自身通信射频参数。
功能模块的每一个时间周期内工作流程的接口函数:
该函数采用虚函数的形式,派生类中的时间周期内工作函数执行如下功能中的一个或多个:进行通信信道状态更新,包含大尺度衰落、小尺度衰落、阴影衰落、用户通信频段变化导致的信道干扰情况变化的更新;
功能模块的状态输入函数:
该函数采用虚函数的形式,功能模块的状态输入函数主要执行如下功能:接收来自模块外部的数据;接收模块外部的控制消息。
功能模块的内部状态的输出函数:
该函数采用虚函数的形式,功能模块的内部状态的输出函数主要执行如下功能:向外部输出模块内部的数据;向外部输出相应消息。
基于所述通用型通信仿真平台,实现通信设备之间的通信仿真的流程如图2所示,包括:
步骤201:构造一个控制接口虚基类。
所述控制接口虚基类包括:标志信息、功能模块的构建过程的接口函数、功能模块的初始化过程的接口函数、功能模块的每一个时间周期内工作流程的接口函数、功能模块的状态输入函数、功能模块的内部状态的输出函数;所述标志信息包含用于标识功能模块派生类的类别、编号、构成属性的标志位;所述各个函数均为虚函数。
步骤202:调用所述功能模块构建过程的接口函数,分别构建出仿真所需的功能模块。
每一个功能模块对应一个通信设备或信道,相同类型的功能模块对应所述控制接口虚基类的一个派生类;所构建出的功能模块的数目至少为3个;在功能模块的数目最少的情况下,所述构建的功能模块分别为发射机功能模块、信道功能模块和接收机功能模块。在功能模块的数目大于3时,发射机功能模块、信道功能模块和接收机功能模块中的任一个的数目可以大于1。
需要进行协作的两个功能模块,采用将控制接口虚基类进行向下类型转换的方式,相互持有对方派生类指针,从而完成对方功能模块完整功能函数的调用。
步骤203:顺次完成发射机功能模块、信道功能模块和接收机功能模块的初始化过程。
步骤204:进行指定数目的周期循环。
在每一次周期循环中,顺次调用所有发射机功能模块、信道功能模块和接收机功能模块的状态的输入函数,每一个时间周期内工作流程的接口函数,以及内部状态的输出函数。
步骤205:在每一个周期循环中采集仿真数据,并对所采集的仿真数据进行整理。
需要强调,在某一个特定时隙内的特定设备,每一个时间周期内工作流程的接口函数是必须调用的函数,而模块状态的输入函数、模块内部状态的输出函数可以调用也可以不调用。
以下以车联网为例,具体说明如何应用本发明提供的通用型通信仿真平台,实现对不同类型的通信设备之间的通信过程仿真。
步骤301:构造出车联网仿真研究需要涉及的模块。
具体包括:两种车辆终端(分别命名为车辆终端A,车辆终端B,为程序中两个不同的类,车辆终端A,车辆终端B,对应发射机功能模块或接收机功能模块)、信道模块(封装为信道模块类)、道路模块(封装为道路模块类,对应发射机功能模块或接收机功能模块)。
所述封装后的类继承自相同的控制接口虚基类,该虚基类包含时隙工作模块、打印或输出仿真结果模块、获取设备类型模块、获取设备在时隙循环中的优先级模块、获取设备在整个仿真TTI中的唯一标识模块等。
步骤302:初始化过程。
虽然以上功能模块封装后的类型各不相同,但是由于继承自同一虚基类,在场景和用户初始化构建时可以统一存放在总线的驱动容器中。其中包括:
(1)场景用户初始化工作,在完成的同时,需要将这些多种类型的设备的基类指针和类型、基类指针和设备ID都分别存放在两个容器中,便于基类指针类型的派生类实例进行向下类型转换之前去查找是否存在该派生类类型。
(2)总线在完成场景用户的构建之后,利用驱动容器中的接收设备和发射设备指针,开始为每个接收设备构建信道对象。为了便于信道类和其他设备类型进行交互通信,信道类同样继承自该虚基类。构建好的信道对象指针也存放在总线的驱动容器中。
(3)现在驱动容器已经完全填充完成,开始遍历驱动容器里的每个基类类型的派生类指针,调用虚基类的初始化函数接口,该接口对各个设备进行初始化操作。
步骤303:进行时隙循环。总线按照存储的顺序:发射设备、信道、接收设备,来进行多种设备的遍历。
遍历驱动容器里的每个基类类型的派生类指针,调用虚基类的时隙工作函数接口。其中,对不同的设备类型,在派生类中重写该时隙工作函数,去实现该类设备在通信过程中的功能。
步骤304:调用输出结果函数,打印出当前时隙的通信性能统计结果。
以下再通过多个实施例,对上述各个模块的具体构造以及连接关系进行说明。
控制接口类中初始化模块、设备的时隙循环模块、打印或输出仿真结果模块的主要功能。
本申请的一个实施例提供了初始化模块的功能,包括:
(1)发射设备和接收设备的初始化模块实现了以下功能:随机出一个起始发射时隙以模拟实际场景中的业务模型;为每个车辆用户生成一个阴影衰落表。
(2)信道的初始化模块实现如下功能:把所有可能的发射机对本接收机的路损求出来,存放到容器中。这里就需要将指向派生类对象的基类指针进行向下类型转换,才能从发射机中获取对应的坐标位置信息,从而算出路损。
本申请的另一个实施例提供了时隙循环模块的功能,包括:
(1)发射端的时隙循环:在有业务的时隙产生数据包,存入缓存(buffer)中。每次调度之前先查看该buffer是否为空,不为空则按一定的资源分配算法来进行调度。并将相应的资源的占用情况登记在发射端的干扰登记表里。发射端遍历所有的信道对象,将自己的功率登记到信道里(这里需要将指向信道类对象的基类指针进行向下类型转换成信道类)。另外,还要把该发射机的ID坐标信息发送给每个接收机(这里需要将指向车辆类对象的基类指针进行向下类型转换成车辆类)。
(2)信道的时隙循环:对每个信道对象在每100ms会更新一次信道对象里的信息,包含所有具有发射功能的设备ID对应该发射与本接收机之间的链路损耗表。
(3)接收端的时隙循环:
1)对每个接收机,首先遍历当前时隙下存储所有发射机信息的容器,判断每个发射机与当前接收机的距离是否在一定范围内,若在,则将该发射机ID存放在接收机的主服务基站容器里。
2)向信道发送信息(这里需要将指向信道类对象的基类指针进行向下类型转换成信道类),调用信道里的函数将发射机功率路损信息计算出来并取回到接收机。查找该发射机功率路损信息表,取出每个资源块上的所有发射用户,去遍历该接收机的主服务基站容器,把其中的一个作为信号,其余的当成干扰。计算当前时隙下,每个资源块上的信干噪比(SINR)。
3)由SINR查询链路级块差错率(BLER)曲线,判断该数据包是否接收正确。
最后,打印输出结果模块统计每时隙的结果:对每个发射机,计算数据包被成功接收的个数和总的接收机个数,得到包接收率(PRR,Packet Reception Rate);对于平均PRR,即等于本次时隙中,多个发射机的成功接收个数累加/总的接收机个数累加。
本申请所述虚基类,实际上规定了计算机设备总线控制所需要的四个最基础的接口函数:创建,初始化,时隙流程和输出。这意味着任何继承了这个虚基类的派生类模块(前文所述的发射机功能模块、信道功能模块或接收机功能模块)都会自动包含各自的创建,初始化,时隙流程和输出。
继承:模块B继承模块A,其中B为派生类,A为基类,意味着模块B将具有模块A的全部功能;如果A是虚基类(不是基类),则意味着模块B可以重新实现模块A中的功能,或者说将模块A中对应的功能替换掉。如图4所示,模块B继承自模块A(虚基类),虚基类中的函数形式上都保留了下来,但具体内容已经被模块B重写了,继承的函数用阴影形式表示。
虚基类的指针,派生类的指针:虚基类指针和派生类指针都可以指向模块B,区别是虚基类指针可以指向模块B,也可以指向另一个派生类模块C,但是只能仿真模块B或模块C中虚基类包含的函数。如对于模块B,虚基类指针只能访问阴影部分的模块,不能访问模块B补充的函数。对于模块C也是类似;而指向模块B的派生类指针可以访问模块B中全部的函数,但指向模块B的派生类指针没有办法指向模块C。
指针类型转换:当已有指向模块B的虚基类指针而又需要访问模块B的补充功能时,需要将模块B的虚基类指针转为派生类指针(这叫做向下类型转换)才能进一步访问。
如果理解了以上的原理,就可以理解为什么发射机、信道和接收机要继承自同一个虚基类了:发射机、信道、接收机继承自同一个虚基类,就意味着这些不同的功能模块的地址可以通过虚基类存储在统一的存储结构中;虚基类中规定了为了推进仿真流程而需要的功能函数,而发射机、信道、接收机各自实现了这些功能函数,例如,都叫做工作时隙(workslot),发射机、信道、接收机的workslot实现的功能各不相同,但都可以通过虚基类指针调用;进一步的,如果发射机、信道、接收机需要进一步相互访问补充功能,则需要对所持有的虚基类指针进行向下类型转换才可以,这就是为什么发射机中会持有转换后的接收机派生类指针(而不是指向接收机的虚基类指针),因为发射机要访问接收机的补充功能。类似的,接收机也会持有发射机和信道的派生类指针。
另外,在本发明各个实施例中的各模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
另外,本发明的每个实施例可以通过由数据处理设备如计算机执行的数据处理程序来实现。显然,数据处理程序构成了本发明。此外,通常存储在一个存储介质中的数据处理程序通过直接将程序读取出存储介质或者通过将程序安装或复制到数据处理设备的存储设备(如硬盘和或内存)中执行。因此,这样的存储介质也构成了本发明。存储介质可以使用任何类型的记录方式,例如纸张存储介质(如纸带等)、磁存储介质(如软盘、硬盘、闪存等)、光存储介质(如CD-ROM等)、磁光存储介质(如MO等)等。
因此,本发明还公开了一种存储介质,其中存储有数据处理程序,该数据处理程序用于执行本发明上述方法的任何一种实施例。
应当理解,虽然本说明书是按照各个实施方式描述的,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请的保护范围,凡在本申请技术方案的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (16)
1.一种通用型通信仿真平台的实现方法,其特征在于,包括:
A、构造一个控制接口虚基类,所述控制接口虚基类包括:标志信息、功能模块的构建过程的接口函数、功能模块的初始化过程的接口函数、功能模块的每一个时间周期内工作流程的接口函数、功能模块的状态输入函数、功能模块的内部状态的输出函数;所述标志信息包含用于标识功能模块派生类的类别、编号、构成属性的标志位;所述各个函数均为虚函数;
B、调用所述功能模块构建过程的接口函数,分别构建出仿真所需的功能模块;每一个功能模块对应一个通信设备或信道,相同类型的功能模块对应所述控制接口虚基类的一个派生类;所构建出的功能模块的数目至少为3个;在功能模块的数目最少的情况下,所述构建的功能模块分别为发射机功能模块、信道功能模块和接收机功能模块;需要进行协作的两个功能模块,采用将控制接口虚基类进行向下类型转换的方式,相互持有对方派生类指针,从而完成对方功能模块完整功能函数的调用;
C、顺次完成发射机功能模块、信道功能模块和接收机功能模块的初始化过程;
D、进行指定数目的周期循环,在每一次周期循环中,顺次调用所有发射机功能模块、信道功能模块和接收机功能模块的每一个时间周期内工作流程的接口函数;
E、在每一个周期循环中采集仿真数据,并对所采集的仿真数据进行整理。
2.根据权利要求1所述的方法,其特征在于,所述功能模块的构建过程的接口函数执行如下功能中的一个或多个:构造对象自身;构造对象包含的子函数;将对象中的参数进行初始化。
3.根据权利要求1所述的通用型通信仿真平台的实现方法,其特征在于,所述功能模块的初始化过程的接口函数执行如下功能中的一个或多个:寻找通信信源的过程;将相关功能模块的控制接口虚基类进行向下类型转换的过程;进行全局变量信息登记过程。
4.根据权利要求3所述的通用型通信仿真平台的实现方法,其特征在于,所述进行全局变量信息登记过程包括:登记自身的类别、登记自身控制接口指针和登记自身通信射频参数。
5.根据权利要求1所述的通用型通信仿真平台的实现方法,其特征在于,所述功能模块的每一个时间周期内工作流程的接口函数执行如下功能中的一个或多个:进行通信信道状态更新,包含大尺度衰落、小尺度衰落、阴影衰落、用户通信频段变化导致的信道干扰情况变化的更新。
6.根据权利要求1所述的通用型通信仿真平台的实现方法,其特征在于,所述功能模块的状态输入函数用于接收来自功能模块外部的数据以及接收来自功能模块外部的控制消息;以及,
功能模块的内部状态的输出函数用于向外部输出模块内部的数据;以及向外部输出相应消息。
7.根据权利要求1所述的通用型通信仿真平台的实现方法,其特征在于,所述步骤D中进一步包括:在每一次周期循环中,顺次调用所有发射机功能模块、信道功能模块和接收机功能模块的模块状态的输入函数和/或模块内部状态的输出函数。
8.根据权利要求1所述的通用型通信仿真平台的实现方法,其特征在于,所述各个功能模块在场景和用户初始化构建时,统一存放在总线的驱动容器中。
9.一种通用型通信仿真平台的实现装置,其特征在于,包括:虚基类构造单元、模块构造单元、初始化单元、循环调用单元和数据整理单元;
所述虚基类构造单元用于构造一个控制接口虚基类,所述控制接口虚基类包括:标志信息、功能模块的构建过程的接口函数、功能模块的初始化过程的接口函数、功能模块的每一个时间周期内工作流程的接口函数、功能模块的状态输入函数、功能模块的内部状态的输出函数;所述标志信息包含用于标识功能模块派生类的类别、编号、构成属性的标志位;所述各个函数均为虚函数;
所述模块构造单元用于调用所述功能模块构建过程的接口函数,分别构建出仿真所需的功能模块;每一个功能模块对应一个通信设备或信道,相同类型的功能模块对应所述控制接口虚基类的一个派生类,所有封装后的类均继承自所述控制接口虚基类;所构建出的功能模块的数目至少为3个;在功能模块的数目最少的情况下,所述构建的功能模块分别为发射机功能模块、信道功能模块和接收机功能模块;需要进行协作的两个功能模块,采用将控制接口虚基类进行向下类型转换的方式,相互持有对方派生类指针,从而完成对方功能模块完整功能函数的调用;
所述初始化单元用于完成调用发射机功能模块、信道功能模块和接收机功能模块的初始化过程;
所述循环调用单元用于进行指定数目的周期循环,在每一次周期循环中,顺次调用所有发射机功能模块、信道功能模块和接收机功能模块的每一个时间周期内工作流程的接口函数;
数据整理单元用于在每一个周期循环中采集仿真数据,并对所采集的仿真数据进行整理。
10.根据权利要求9所述的通用型通信仿真平台的实现装置,其特征在于,所述功能模块的构建过程的接口函数执行如下功能中的一个或多个:构造对象自身;构造对象包含的子函数;将对象中的参数进行初始化。
11.根据权利要求9所述的通用型通信仿真平台的实现装置,其特征在于,所述功能模块的初始化过程的接口函数执行如下功能中的一个或多个:寻找通信信源的过程;将相关功能模块的控制接口虚基类进行向下类型转换的过程;进行全局变量信息登记过程。
12.根据权利要求11所述的通用型通信仿真平台的实现装置,其特征在于,所述进行全局变量信息登记过程包括:登记自身的类别、登记自身控制接口指针和登记自身通信射频参数。
13.根据权利要求9所述的通用型通信仿真平台的实现装置,其特征在于,所述功能模块的每一个时间周期内工作流程的接口函数执行如下功能中的一个或多个:进行通信信道状态更新,包含大尺度衰落、小尺度衰落、阴影衰落、用户通信频段变化导致的信道干扰情况变化的更新。
14.根据权利要求9所述的通用型通信仿真平台的实现装置,其特征在于,所述功能模块的状态输入函数用于接收来自功能模块外部的数据以及接收来自功能模块外部的控制消息;以及,
功能模块的内部状态的输出函数用于向外部输出模块内部的数据;以及向外部输出相应消息。
15.根据权利要求9所述的通用型通信仿真平台的实现装置,其特征在于,所述循环调用单元进一步用于,在每一次周期循环中,顺次调用所有发射机功能模块、信道功能模块和接收机功能模块的模块状态的输入函数和/或模块内部状态的输出函数。
16.根据权利要求9所述的通用型通信仿真平台的实现装置,其特征在于,所述各个功能模块在场景和用户初始化构建时,统一存放在总线的驱动容器中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610552841.2A CN107623555B (zh) | 2016-07-14 | 2016-07-14 | 一种通用型通信仿真平台的实现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610552841.2A CN107623555B (zh) | 2016-07-14 | 2016-07-14 | 一种通用型通信仿真平台的实现方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107623555A CN107623555A (zh) | 2018-01-23 |
CN107623555B true CN107623555B (zh) | 2021-05-14 |
Family
ID=61087715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610552841.2A Active CN107623555B (zh) | 2016-07-14 | 2016-07-14 | 一种通用型通信仿真平台的实现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107623555B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111123727B (zh) * | 2018-10-30 | 2022-09-02 | 阿波罗智能技术(北京)有限公司 | 无人车仿真搭建方法、装置、设备及计算机可读介质 |
CN109947488B (zh) * | 2019-03-19 | 2022-05-10 | 武汉斗鱼鱼乐网络科技有限公司 | 通用功能模块的对象初始化方法、装置、设备和存储介质 |
CN112580126B (zh) * | 2020-12-29 | 2022-09-20 | 中国航空工业集团公司沈阳飞机设计研究所 | 一种用于飞机模拟系统的hmi绘制方法及系统 |
CN115080014B (zh) * | 2022-07-26 | 2024-09-17 | 华控清交信息科技(北京)有限公司 | 一种密文计算引擎和隐私保护装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003292542A1 (en) * | 2003-11-27 | 2005-06-17 | Telecom Italia S.P.A | Method for simulating a communication networks that cosiders quality of service |
CN101426221A (zh) * | 2008-12-12 | 2009-05-06 | 北京航空航天大学 | 面向可生存性的移动Ad Hoc网络仿真系统 |
CN101841839A (zh) * | 2010-01-22 | 2010-09-22 | 华中科技大学 | 一种无线传感器网络仿真系统 |
-
2016
- 2016-07-14 CN CN201610552841.2A patent/CN107623555B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003292542A1 (en) * | 2003-11-27 | 2005-06-17 | Telecom Italia S.P.A | Method for simulating a communication networks that cosiders quality of service |
CN101426221A (zh) * | 2008-12-12 | 2009-05-06 | 北京航空航天大学 | 面向可生存性的移动Ad Hoc网络仿真系统 |
CN101841839A (zh) * | 2010-01-22 | 2010-09-22 | 华中科技大学 | 一种无线传感器网络仿真系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107623555A (zh) | 2018-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107623555B (zh) | 一种通用型通信仿真平台的实现方法及装置 | |
CN103109469B (zh) | 用于无线网络中多用户mimo探测的设备和方法 | |
CN108965484A (zh) | 一种物联网数据的传输方法、系统及终端 | |
CN109726016A (zh) | 一种用于分布式系统的链路追踪方法、装置和系统 | |
CN108401037A (zh) | 用户终端和设备的绑定方法、装置和系统 | |
CN105389160A (zh) | 一种信息发布方法及装置 | |
CN103441931B (zh) | 一种报文发送方法及装置 | |
CN111817824B (zh) | 一种信息传输方法、终端设备和控制节点 | |
CN110166485B (zh) | 一种协议的调度使用方法及装置 | |
CN113791766B (zh) | 组合数据接口的方法、电子设备和可读存储介质 | |
CN105072212B (zh) | 对码方法与对码系统 | |
CN112838886B (zh) | 一种用于小卫星的数据处理方法、装置、设备及存储介质 | |
CN104956764A (zh) | 上报/获取缓冲区状态的方法、用户设备及网络设备 | |
CN104284351A (zh) | 一种测距方法及装置 | |
CN102917429A (zh) | 报文传输方法及装置 | |
CN102917370B (zh) | 确定远端机对应的近端机的方法、装置、系统以及远端机 | |
CN104618335A (zh) | 一种消息交互的方法和接口处理平台 | |
CN112714146B (zh) | 一种资源调度方法、装置、设备及计算机可读存储介质 | |
CN116521602A (zh) | 一种总线数据的传输方法和装置及存储介质 | |
CN109495931A (zh) | 链路聚合的数据传输方法及相关装置 | |
CN110401925A (zh) | 一种通讯消息的生成方法及装置 | |
CN112019357B (zh) | 网络配置方法、装置、设备和系统 | |
CN107710793A (zh) | 一种定位方法及对应装置 | |
CN104980352A (zh) | 一种多线路机房选路方法和装置 | |
CN109814871B (zh) | 基于dds总线的节点管理方法及系统 |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211222 Address after: 100191 No. 40, Haidian District, Beijing, Xueyuan Road Patentee after: CHINA ACADEMY OF INFORMATION AND COMMUNICATIONS Address before: 100191 No. 52 Garden North Road, Beijing, Haidian District Patentee before: CHINA ACADEME OF TELECOMMUNICATION RESEARCH OF MIIT |