发明内容
本申请所要解决的技术问题是提供一种仿真方法和系统,以解决仿真效率低的问题。
为了解决上述问题,本申请公开了一种仿真方法,包括:
预先创建仿真结果数据库,所述仿真结果数据库中设置用于索引的数据库关键词;
接收用户输入的数据库关键词和仿真配置文件;
查找所述仿真结果数据库中与所述用户输入的数据库关键词相匹配的仿真结果;
若查找到,则输出所述相匹配的仿真结果;
若未查找到,则依据用户输入的仿真配置文件执行仿真过程,将仿真得到的仿真结果输出,并将所述仿真得到的仿真结果作为与所述用户输入的数据库关键词相匹配的仿真结果,存储到仿真结果数据库中。
优选的,所述仿真结果数据库为分层存储结构,
所述创建仿真结果数据库的步骤包括:
针对仿真结果数据库的第1层进行分类,并为每个分类分配一个数据库关键词;
从第2层开始直到预设层数N的最后一层,通过对第i-1层中的每个分类再次进行分类,得到第i层的分类,并为第i层中的每个分类分配一个数据库关键词,其中,i=2,3,...,N。
优选的,所述用户输入的数据库关键词为多个,所述查找所述仿真结果数据库中与所述用户输入的数据库关键词相匹配的仿真结果的步骤包括:
从第1层开始,依次判断第j层中是否存在用户输入的数据库关键词中的任意一个,其中,j=1,2,...,N-1;
若存在,则获取所述数据库关键词的分类,并判断第j+1层中属于该分类的数据库关键词中是否存在用户输入的剩余的数据库关键词中的任意一个;
若不存在,则判断第j+1层中是否存在用户输入的数据库关键词中的任意一个;
查找仿真结果数据库第N层中与用户输入的剩余的最后一个数据库关键词相匹配的仿真结果。
优选的,所述仿真结果数据库中的每个数据库关键词对应一个存在标识变量,所述存在标识变量的取值为0或1,
当所述存在标识变量的取值为1时,表示所述仿真结果数据库中存在对应所述数据库关键词的仿真结果;
当所述存在标识变量的取值为0时,表示所述仿真结果数据库中不存在对应所述数据库关键词的仿真结果。
优选的,在判断出第j层中存在用户输入的数据库关键词中的任意一个之后,还包括:
获取所述数据库关键词对应的存在标识变量的取值;
当所述存在标识变量的取值为1时,则执行获取所述数据库关键词的分类的操作;
当所述存在标识变量的取值为0时,则停止判断,并执行所述仿真过程。
优选的,在将所述仿真得到的仿真结果作为与所述用户输入的数据库关键词相匹配的仿真结果,存储到仿真结果数据库中之后,还包括:
将所述用户输入的数据库关键词对应的存在标识变量的取值设置为1。
优选的,所述仿真结果数据库中的每个数据库关键词对应一个搜索次数变量。
优选的,在输出所述相匹配的或仿真得到的仿真结果之后,还包括:
将所述仿真结果数据库中每个用户输入的数据库关键词对应的搜索次数变量的取值加1。
优选的,在依据用户输入的仿真配置文件执行仿真过程,将仿真得到的仿真结果输出之后,还包括:
将所述仿真配置文件作为与所述用户输入的数据库关键词对应的仿真配置文件,存储到仿真结果数据库中。
另一方面,本申请还公开了一种仿真系统,包括:
创建模块,用于预先创建仿真结果数据库,所述仿真结果数据库中设置用于索引的数据库关键词;
接收模块,用于接收用户输入的数据库关键词和仿真配置文件;
查找模块,用于查找所述仿真结果数据库中与所述用户输入的数据库关键词相匹配的仿真结果;
输出模块,用于当查找模块查找到与所述用户输入的数据库关键词相匹配的仿真结果时,输出所述相匹配的仿真结果;
仿真模块,用于当查找模块未查找到与所述用户输入的数据库关键词相匹配的仿真结果时,依据用户输入的仿真配置文件执行仿真过程,将仿真得到的仿真结果输出,并将所述仿真得到的仿真结果作为与所述用户输入的数据库关键词相匹配的仿真结果,存储到仿真结果数据库中。
优选的,所述仿真结果数据库为分层存储结构,
所述创建模块包括:
第一分类子模块,用于针对仿真结果数据库的第1层进行分类,并为每个分类分配一个数据库关键词;
第二分类子模块,用于从第2层开始直到预设层数N的最后一层,通过对第i-1层中的每个分类再次进行分类,得到第i层的分类,并为第i层中的每个分类分配一个数据库关键词,其中,i=2,3,...,N。
优选的,所述用户输入的数据库关键词为多个,所述查找模块包括:
第一判断子模块,用于从第1层开始,依次判断第j层中是否存在用户输入的数据库关键词中的任意一个,其中,j=1,2,...,N-1;还用于当判断结果为不存在时,判断第j+1层中是否存在用户输入的数据库关键词中的任意一个;
第一获取子模块,用于当第一判断子模块的判断结果为存在时,获取所述数据库关键词的分类,第二判断子模块执行判断操作;
第二判断子模块,用于判断第j+1层中属于所述分类的数据库关键词中是否存在用户输入的剩余的数据库关键词中的任意一个;
查找子模块,用于查找仿真结果数据库第N层中与用户输入的剩余的最后一个数据库关键词相匹配的仿真结果。
优选的,所述仿真结果数据库中的每个数据库关键词对应一个存在标识变量,所述存在标识变量的取值为0或1,
当所述存在标识变量的取值为1时,表示所述仿真结果数据库中存在对应所述数据库关键词的仿真结果;
当所述存在标识变量的取值为0时,表示所述仿真结果数据库中不存在对应所述数据库关键词的仿真结果。
优选的,所述查找模块还包括:
第二获取子模块,用于在第一判断子模块判断出第j层中存在用户输入的数据库关键词中的任意一个之后,获取所述数据库关键词对应的存在标识变量的取值;
控制子模块,用于当第二获取子模块获取的所述存在标识变量的取值为1时,控制第一获取子模块执行所述获取操作;当第二获取子模块获取的所述存在标识变量的取值为0时,控制仿真模块执行仿真过程。
优选的,所述系统还包括:
设置模块,用于在仿真模块将所述仿真得到的仿真结果作为与所述用户输入的数据库关键词相匹配的仿真结果,存储到仿真结果数据库中之后,将所述用户输入的数据库关键词对应的存在标识变量的取值设置为1。
与现有技术相比,本申请包括以下优点:
本申请通过预先创建仿真结果数据库,其中设置用于索引的数据库关键词,当用户有仿真需求时,接收用户输入的数据库关键词和仿真配置文件。但是本申请并不立即对所述仿真配置文件进行仿真,而是首先查找仿真结果数据库中与用户输入的数据库关键词相匹配的仿真结果,若查找到,则不需要再对输入的仿真配置文件执行一次仿真,而是直接将查找到的相匹配的仿真结果输出给用户。因此,本申请能够简化仿真过程,有效减少重复的工作量,提高仿真效率。并且,由于新的仿真用户可以直接利用已进行仿真的用户的仿真结果,因此提高了仿真结果的重用性和共享性。
其次,由于本申请通过仿真结果数据库存储仿真结果,保证了仿真结果的统一存储,提高了仿真结果的安全性,并且仿真结果可以长期存储,进一步提高了其有效性。
再次,本申请不仅适用于通信系统的链路级、系统级和网络规划优化等各类仿真,还适用于计算机系统、雷达系统等其它系统,通用性较强。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
本申请通过创建用于存储仿真结果的仿真结果数据库,当用户有仿真需求时,直接在仿真结果数据库中查找是否存在对应的仿真结果,对于存在的仿真结果,则直接将其输出给用户,提高了仿真结果的重用性和共享性,并且针对用户的仿真需求,如果存在对应的仿真结果,则不需要再进行一次重复的仿真过程,提高了仿真效率。
参照图2,示出了本申请实施例一所述的一种仿真方法的流程图,所述方法包括:
步骤S201,预先创建仿真结果数据库,所述仿真结果数据库中设置用于索引的数据库关键词。
本实施例预先创建一个仿真结果数据库,然后将每次执行仿真后的仿真结果都存储在仿真结果数据库中,当后续用户有同样的仿真需求(例如,应用同样的仿真配置文件执行相同的仿真过程)时,则可以直接将仿真结果数据库中相匹配的仿真结果输出给用户,从而不需要再执行一次重复的仿真过程。
为了便于后续的查询工作,本实施例在所述仿真结果数据库中设置用于索引的数据库关键词,并且设置所述仿真结果数据库为分层存储结构。
具体的,所述创建仿真结果数据库的步骤包括:
步骤1,针对仿真结果数据库的第1层进行分类,并为每个分类分配一个数据库关键词;
其中,所述数据库关键词可以为对应类型的类型名称,当然,还可以采用其他名称作为数据库关键词,本申请对此并不加以限制。
步骤2,从第2层开始直到预设层数N的最后一层,通过对第i-1层中的每个分类再次进行分类,得到第i层的分类,并为第i层中的每个分类分配一个数据库关键词,其中,i=2,3,...,N。
例如,所述仿真结果数据库为3层存储结构,创建方法具体包括:
步骤i,针对第1层进行分类:
例如将其分成A、B两种分类,并为A分类分配数据库关键词为A,为B分类分配数据库关键词为B。
步骤ii,针对第2层进行分类:
将第1层中的A分类再次进行分类,得到a1和a2两种分类,并分别分配数据库关键词为a1和a2;
将第1层中的B分类再次进行分类,得到b1和b2两种分类,并分别分配数据库关键词为b1和b2。
因此,得到第2层的分类分别为a1、a2、b1和b2,数据库关键词分别为a1、a2、b1和b2。
步骤iii,针对第3层进行分类:
将第2层中的a1分类再次进行分类,得到a11和a12两种分类,并分别分配数据库关键词为a11和a12;
将第2层中的a2分类再次进行分类,得到a21和a22两种分类,并分别分配数据库关键词为a21和a22;
将第2层中的b1分类再次进行分类,得到b11和b12两种分类,并分别分配数据库关键词为b11和b12;
将第2层中的b2分类再次进行分类,得到b21和b22两种分类,并分别分配数据库关键词为b21和b22。
因此,得到第3层的分类分别为a11、a12、a21、a22、b11、b12、b21和b22,数据库关键词分别为a11、a12、a21、a22、b11、b12、b21和b22。
其中,对于所述预设层数N,本领域技术人员根据实际情况设定即可,本申请在此并不限制其具体的数值。
步骤S202,接收用户输入的数据库关键词和仿真配置文件。
当用户有仿真需求时,接收用户输入的数据库关键词和仿真配置文件。由于是在仿真结果数据库中查找相匹配的仿真结果,因此用户首先要输入数据库关键词,该输入的数据库关键词应该为上述步骤S201所创建的仿真结果数据库中的数据库关键词。
步骤S203,查找所述仿真结果数据库中与所述用户输入的数据库关键词相匹配的仿真结果。
在本申请实施例中,接收到用户输入的数据库关键词和仿真配置文件之后,并不立即依据仿真配置文件执行仿真过程,而是首先依据用户输入的数据库关键词查找所述仿真结果数据库中与所述数据库关键词相匹配的仿真结果。
由于本实施例中仿真结果数据库采用分层存储结构,除数据库的最后一层外,每一层中的数据库关键词所对应的分类都存在下一级分类,即对于每一层中的各个分类再次进行了分类。因此,如果想要查找到与某一个数据库关键词相匹配的仿真结果,则需要查找到仿真结果数据库最后一层中的数据库关键词,然后获取与该关键词相匹配的仿真结果。
在本申请一种优选的实施例中,所述用户输入的数据库关键词为多个,则所述查找所述仿真结果数据库中与所述用户输入的数据库关键词相匹配的仿真结果的步骤包括:
步骤S2031,从第1层开始,依次判断第j层中是否存在用户输入的数据库关键词中的任意一个,其中,j=1,2,...,N-1;
步骤S2032,若存在,则获取所述数据库关键词的分类,并判断第j+1层中属于该分类的数据库关键词中是否存在用户输入的剩余的数据库关键词中的任意一个;
步骤S2033,若不存在,则判断第j+1层中是否存在用户输入的数据库关键词中的任意一个;
步骤S2034,查找仿真结果数据库第N层中与用户输入的剩余的最后一个数据库关键词相匹配的仿真结果。
用户输入多个数据库关键词,依据这些数据库关键词从第1层开始,依次判断每一层中是否存在用户输入的数据库关键词。如果第1层中存在用户输入的数据库关键词中的一个,则获取该数据库关键词的分类,在查找第2层时,直接判断属于该分类的数据库关键词中是否存在用户输入的剩余的数据库关键词中的任意一个,而不需要再考虑第2层中属于其他分类的数据库关键词;如果第1层中不存在用户输入的数据库关键词,则直接判断第2层中是否存在用户输入的数据库关键词中的任意一个,然后按照上述方法依次查找下面的层级;直至查找到最后一层,此时用户输入的数据库关键词只剩余最后一个,则在最后一层中查找该剩余的数据库关键词,并查找与该数据库关键词相匹配的仿真结果。
需要说明的是,在本申请实施例中,所述用户输入的多个数据库关键词还可以分次输入。例如,用户首先输入一个数据库关键词,该数据库关键词为其中一层中的某个数据库关键词,当在对应的层中查找到用户输入的数据库关键词后,则向用户提供输入框,提示用户输入下一层中的某一个数据库关键词,或者将下一层中属于查找到的数据库关键词分类中的所有数据库关键词通过一个选择框展现给用户,然后用户直接选择所需的数据库关键词即可。本申请对此并不加以限制,本领域技术人员根据实际情况采用相应方案处理即可。
步骤S204,若查找到,则输出所述相匹配的仿真结果。
如果步骤S203中在仿真结果数据库中查找到与所述用户输入的数据库关键词相匹配的仿真结果,则不需要再重新执行一次仿真过程,直接将所述相匹配的仿真结果输出给用户即可。
步骤S205,若未查找到,则依据用户输入的仿真配置文件执行仿真过程,将仿真得到的仿真结果输出,并将所述仿真得到的仿真结果作为与所述用户输入的数据库关键词相匹配的仿真结果,存储到仿真结果数据库中。
对于具体的仿真过程,按照常规的仿真方法执行即可,本申请在此不再详细论述。
本申请实施例通过预先创建仿真结果数据库,其中设置用于索引的数据库关键词,当用户有仿真需求时,接收用户输入的数据库关键词和仿真配置文件。但是本申请并不立即对所述仿真配置文件进行仿真,而是首先查找仿真结果数据库中与用户输入的数据库关键词相匹配的仿真结果,若查找到,则不需要再对输入的仿真配置文件执行一次仿真,而是直接将查找到的相匹配的仿真结果输出给用户。因此,本申请能够简化仿真过程,有效减少重复的工作量,提高仿真效率。并且,由于新的仿真用户可以直接利用已经过仿真的用户的仿真结果,因此提高了仿真结果的重用性和共享性。
其次,由于本申请实施例通过仿真结果数据库存储仿真结果,保证了仿真结果的统一存储,提高了仿真结果的安全性,并且仿真结果可以长期存储,进一步提高了其有效性。
参照图3,示出了本申请实施例二所述一种仿真方法的流程图,所述方法包括:
步骤S301,预先创建仿真结果数据库,所述仿真结果数据库中设置用于索引的数据库关键词。
在本实施例中,所述仿真结果数据库为分层存储结构,对于具体的创建仿真结果数据库的方法,参照上述实施例一的相关描述即可,本申请在此不再详细论述。
优选的,在创建仿真结果数据库时,设置其中的每个数据库关键词都对应一个存在标识变量,用于标识所述数据库中是否存在对应所述数据库关键词的仿真结果。
在本实施例中,设置所述存在标识变量的取值为0或1。当所述存在标识变量的取值为1时,表示所述仿真结果数据库中存在对应所述数据库关键词的仿真结果;当所述存在标识变量的取值为0时,表示所述仿真结果数据库中不存在对应所述数据库关键词的仿真结果。
步骤S302,接收用户输入的数据库关键词和仿真配置文件。
步骤S303,查找所述仿真结果数据库中与所述用户输入的数据库关键词相匹配的仿真结果。
其中,所述用户输入的数据库关键词为多个,则所述步骤S303具体包括:
步骤S3031,从第1层开始,依次判断第j层中是否存在用户输入的数据库关键词中的任意一个,其中,j=1,2,...,N-1。
步骤S3032,若存在,则获取所述数据库关键词对应的存在标识变量的取值。
如果在本步骤中获取的所述数据库关键词对应的存在标识变量的取值为1,说明存在对应该数据库关键词的仿真结果,则继续执行第j+1层的判断。
如果在本步骤中获取的所述数据库关键词对应的存在标识变量的取值为0,说明不存在对应该数据库关键词的仿真结果,因此不需要再执行第j+1层的判断,即停止判断,直接依据用户输入的仿真配置文件执行仿真过程即可,从而避免了对于其它层的不必要的判断过程。
步骤S3033,当所述存在标识变量的取值为1时,获取所述数据库关键词的分类,并判断第j+1层中属于该分类的数据库关键词中是否存在用户输入的剩余的数据库关键词中的任意一个。
步骤S3034,若步骤S3031中判断出第j层中不存在用户输入的数据库关键词中的任意一个,则判断第j+1层中是否存在用户输入的数据库关键词中的任意一个。
步骤S3035,查找仿真结果数据库第N层中与用户输入的剩余的最后一个数据库关键词相匹配的仿真结果。
依据上述步骤S3031到步骤S3035依次对仿真结果数据库中的每一层进行判断,如果查找到的数据库关键词的存在标识变量取值为1,则继续进行判断,直至判断到最后一层,然后查找仿真结果数据库最后一层中与用户输入的剩余的最后一个数据库关键词相匹配的仿真结果。
步骤S304,若步骤S303中查找到与所述用户输入的数据库关键词相匹配的仿真结果,则输出所述相匹配的仿真结果。
步骤S305,若步骤S303中未查找到与所述用户输入的数据库关键词相匹配的仿真结果,或者步骤S3032中获取的所述数据库关键词对应的存在标识变量的取值为0时,则依据用户输入的仿真配置文件执行仿真过程,将仿真得到的仿真结果输出,并将所述仿真得到的仿真结果作为与所述用户输入的数据库关键词相匹配的仿真结果,存储到仿真结果数据库中。
步骤S306,将所述用户输入的数据库关键词对应的存在标识变量的取值设置为1。
由于对于用户输入的数据库关键词所对应的仿真配置文件执行了仿真过程,并且将仿真得到的仿真结果作为与所述用户输入的数据库关键词相匹配的仿真结果,存储到仿真结果数据库中,因此,需要将所述用户输入的数据库关键词对应的存在标识变量的取值设置为1,表示在仿真结果数据库中针对用户所输入的数据库关键词存在对应的仿真结果。
本实施例相对于上述实施例一的改进之处在于,在仿真结果数据库中的每个数据库关键词都对应一个存在标识变量,根据该存在标识变量即可得知仿真结果数据库中是否存在对应所述数据库关键词的仿真结果。如果判断出某一层中存在用户输入的数据库关键词,则进一步获取其对应的存在变量标识的取值,如果所述存在变量标识表示不存在对应该数据库关键词的仿真结果,则不需要再执行下一层的判断过程,直接针对用户输入的仿真配置文件执行仿真过程即可。通过上述方法,避免了对于不存在对应仿真结果的数据库关键词不必要的判断过程,从而进一步提高仿真效率。
参照图4,示出了本申请实施例三所述一种仿真方法的流程图,所述方法包括:
步骤S401,预先创建仿真结果数据库,所述仿真结果数据库中设置用于索引的数据库关键词。
在该实施例中,创建仿真结果数据库时,设置其中的每个数据库关键词对应一个搜索次数变量,用于表示对应的数据库关键词被搜索了多少次。初始设置时,设置每个数据库关键词对应的搜索次数变量的取值为0。
步骤S402,接收用户输入的数据库关键词和仿真配置文件。
步骤S403,查找所述仿真结果数据库中与所述用户输入的数据库关键词相匹配的仿真结果。
对于具体的查找过程,参照上述实施例一或者实施例二的相关描述即可,本实施例在此不再详细论述。
步骤S404,若步骤S403中查找到所述仿真结果数据库中与所述用户输入的数据库关键词相匹配的仿真结果,则输出所述相匹配的仿真结果。
步骤S405,将所述仿真结果数据库中每个用户输入的数据库关键词对应的搜索次数变量的取值加1。
步骤S406,若步骤S403中未查找到所述仿真结果数据库中与所述用户输入的数据库关键词相匹配的仿真结果,则依据用户输入的仿真配置文件执行仿真过程,将仿真得到的仿真结果输出,并将所述仿真得到的仿真结果作为与所述用户输入的数据库关键词相匹配的仿真结果,存储到仿真结果数据库中。
步骤S407,将所述仿真结果数据库中每个用户输入的数据库关键词对应的搜索次数变量的取值加1。
步骤S408,将所述仿真配置文件作为与所述用户输入的数据库关键词对应的仿真配置文件,存储到仿真结果数据库中。
本实施例所述的方法与上述实施例一或实施例二所述的方法基本相似,具体过程参照上述实施例一或实施例二的相关描述即可,本申请在此不再详细论述。
本实施例相对于上述实施例的改进之处在于,在仿真结果数据库中的每个数据库关键词都对应一个搜索次数变量,用于表示对应的数据库关键词被搜索了多少次,从而使用户更加直观地了解哪个数据库关键词被搜索的次数比较多,哪个数据库关键词对应的仿真结果的重用性和共享性更强。
下面,以四层结构的仿真结果数据库为例,详细描述本申请所述的仿真方法的执行过程。
首先,介绍一下所述仿真结果数据库的结构,具体如下:
第一层:按照仿真类型进行第一级别分类。
仿真类型包括:链路级(LLS)、系统级(SLS)和网络规划优化(NLS)。
其中,设置数据库关键词为:LLS、SLS和NLS。
第二层:对于每个第一级别的仿真类型分类,按照物理信道/信号进行第二级别分类。
其中,物理信道/信号包括:下行物理信道/信号和上行物理信道/信号。
下行物理信道/信号包括:物理下行共享信道(Physical Downlink SharedChannel,PDSCH)、物理下行控制信道(Physical Downlink Control Channel,PDCCH)、物理控制格式指示信道(Physical Control Format Indicator Channel,PCFICH)、物理混合ARQ指示通道(Physical Hybrid ARQ Indicator Channel,PHICH)、物理广播通道(Physical Broadcast Channel,PBCH)、物理多播信道(Physical Multicast Channel,PMCH)、主同步信号(Primary SynchronizationSignal,PSS)和辅同步信号(Secondary Synchronization Signal,SSS)。
上行物理信道/信号包括:物理上行共享信道(Physical Uplink SharedChannel,PUSCH)、物理上行控制信道(Physical Uplink Control Channel,PUCCH)、物理随机接入信道(Physical Random Access Channel,PRACH)和探测参考信号(Sounding Reference Signal,SRS)。
其中,分别设置数据库关键词为:PDSCH、PDCCH、PCFICH、PHICH、PBCH、PMCH、PSS、SSS、PUSCH、PUCCH、PRACH和SRS。
第三层:对于每个第二级别的物理信道分类,按照仿真的功能/目的进行第三级别分类。
仿真的功能/目的包括:解调门限类的仿真、不同信道估计算法性能的对比仿真、不同检测算法的对比仿真、不同测量算法的对比仿真。
其中,分别设置数据库关键词为:解调门限类、不同信道估计算法性能对比、不同检测算法对比和不同测量算法对比。
第四层:对于每个第三级别的仿真功能/目的分类,按照仿真人员(User)、仿真时间(Time)和仿真平台版本号(Version)进行第四级别的分类。
其中,分别设置数据库关键词为:User、Time和Version。
如果第四层中的某一个数据库关键词所对应的仿真配置文件已经过仿真,并且得到了仿真结果,则在第四层下面给出所述仿真配置文件和仿真结果文件。其中,仿真配置文件包含了与仿真相关的所有参数配置;仿真结果文件包括了与仿真相关的所有仿真结果,例如:吞吐量(Throughput)、误块率(BLER)、误比特率(BER)、无编码的误比特率(rawBER)等。
需要说明的是,本实施例所述的每一级别的分类并不一定指其包含了所有的类别,即可以只包括所有类型中的一个或多个,本申请对此并不加以限制。
参照图5,示出了本实施例所述的具有四层结构的仿真结果数据库的示意图,如图5所示,以仿真类型为链路级(LLS)为例进行介绍。
第一层,包括链路级类型、系统级类型和网络规划优化类型,数据库关键词分别为LLS、SLS和NLS。
第二层,从图中可以看出,在对链路级(LLS)按照物理信道进行第二级别的分类时,将其分成了物理下行共享信道(Physical Downlink SharedChannel,PDSCH)、物理上行共享信道(Physical Uplink Shared Channel,PUSCH)和物理上行控制信道(Physical Uplink Control Channel,PUCCH)3类,数据库关键词分别为PDSCH、PUSCH和PUCCH。
第三层,在对第二层中的PUSCH进行第三级别分类时,将其分成了不同检测算法的对比仿真、解调门限类的仿真和不同信道估计算法性能的对比仿真3类,数据库关键词分别为不同检测算法对比、解调门限类和不同信道估计算法性能对比。
第四层,在对第三层中的解调门限类进行第三级别分类时,将其分成了仿真人员1、仿真时间1、仿真平台版本号1以及仿真人员2、仿真时间2、仿真平台版本号2两类,数据库关键词分别为User1、Time1、Version1和User2、Time2、Version2。
对于第四层中的数据库关键词,由于每次仿真的仿真人员和仿真时间均不相同,因此,对于该层中的数据库关键词只需依据仿真平台版本号Version进行识别即可。
在本实施例中,每个数据库关键词都对应一个存在标识变量和一个搜索次数变量。其中,所述存在标识变量的取值为0或1,当存在标识变量的取值为1时,表示所述仿真结果数据库中存在对应所述数据库关键词的仿真结果;当存在标识变量的取值为0时,表示所述仿真结果数据库中不存在对应所述数据库关键词的仿真结果。如果某一层中数据库关键词的存在标识变量的取值为0,则不存在对应该数据库关键词的仿真结果,因此,不需要再查找该层以后的层级。
从图5中可以看出,在仿真结果数据库的第四层下面,数据库关键词User1、Time1和Version1对应一组仿真配置文件和仿真结果,数据库关键词User2、Time2和Version2也对应一组仿真配置文件和仿真结果。因此,相应的,该图中所述的仿真结果数据库中的数据库关键词LLS、PUSCH、解调门限类、Version1和Version2所对应的存在标识变量的取值为1。
为了使描述更加清楚,对于该仿真结果数据库中其他的分类以及数据库关键词,在图5中并没有全部标出,但是,本领域技术人员应该清楚,这些关键词在图5中是存在的。
下面,以图5所示的仿真结果数据库为例,详细描述本实施例所述的仿真方法,具体如下:
步骤1,接收用户输入的数据库关键词和仿真配置文件。
例如,用户输入4个数据库关键词,分别为LLS、PUSCH、解调门限类和Version1。
步骤2,判断第1层中是否存在用户输入的数据库关键词中的任意一个。
经判断,得出第1层中存在用户输入的数据库关键词中的LLS。
步骤3,获取所述数据库关键词LLS对应的存在标识变量的取值,可以得出,其取值为1。
步骤4,判断第2层中属于LLS分类的数据库关键词中是否存在用户输入的剩余数据库关键词中的任意一个。
其中所述用户输入的剩余数据库关键词包括PUSCH、解调门限类和Version1。
经判断,得出第2层中存在用户输入的数据库关键词中的PUSCH。
步骤5,获取所述数据库关键词PUSCH对应的存在标识变量的取值,可以得出,其取值为1。
步骤6,判断第3层中属于PUSCH分类的数据库关键词中是否存在用户输入的剩余数据库关键词中的任意一个。
其中所述用户输入的剩余数据库关键词包括解调门限类和Version1。
经判断,得出第3层中存在用户输入的数据库关键词中的解调门限类。
步骤7,获取所述数据库关键词解调门限类对应的存在标识变量的取值,可以得出,其取值为1。
步骤8,判断第4层中属于解调门限类分类的数据库关键词中是否存在用户输入的剩余数据库关键词中的任意一个。
其中所述用户输入的剩余数据库关键词包括Version1。
经判断,得出第4层中存在用户输入的数据库关键词中的Version1。
步骤9,获取所述数据库关键词Version1对应的存在标识变量的取值,可以得出,其取值为1。
步骤10,将仿真结果数据库中与所述数据库关键词Version1相匹配的仿真结果输出给用户。
步骤11,分别将仿真结果数据库中的数据库关键词LLS、PUSCH、解调门限类和Version1对应的搜索次数变量的取值加1。
本实施例主要描述了仿真结果数据库中存在与用户输入的数据库关键词相匹配的仿真结果时的具体执行过程,对于不存在与用户输入的数据库关键词相匹配的仿真结果时的执行过程,参照上述实施例进行相应处理即可,本申请在此不再详细论述。
参照图6,示出了本申请实施例四所述一种仿真系统的结构框图,所述系统包括:
创建模块601,用于预先创建仿真结果数据库,所述仿真结果数据库中设置用于索引的数据库关键词;
在本实施例中,所述仿真结果数据库为分层存储结构,所述创建模块601包括:
第一分类子模块6011,用于针对仿真结果数据库的第1层进行分类,并为每个分类分配一个数据库关键词;
第二分类子模块6012,用于从第2层开始直到预设层数N的最后一层,通过对第i-1层中的每个分类再次进行分类,得到第i层的分类,并为第i层中的每个分类分配一个数据库关键词,其中,i=2,3,...,N。
接收模块602,用于接收用户输入的数据库关键词和仿真配置文件;
查找模块603,用于查找所述仿真结果数据库中与所述用户输入的数据库关键词相匹配的仿真结果;
优选的,所述用户输入的数据库关键词为多个,所述查找模块603包括:
第一判断子模块6031,用于从第1层开始,依次判断第j层中是否存在用户输入的数据库关键词中的任意一个,其中,j=1,2,...,N-1;还用于当判断结果为不存在时,判断第j+1层中是否存在用户输入的数据库关键词中的任意一个;
第一获取子模块6032,用于当第一判断子模块的判断结果为存在时,获取所述数据库关键词的分类,第二判断子模块执行判断操作;
第二判断子模块6033,用于判断第j+1层中属于所述分类的数据库关键词中是否存在用户输入的剩余数据库关键词中的任意一个;
查找子模块6034,用于查找仿真结果数据库第N层中与用户输入的剩余的最后一个数据库关键词相匹配的仿真结果。
输出模块604,用于当查找模块查找到与所述用户输入的数据库关键词相匹配的仿真结果时,输出所述相匹配的仿真结果;
仿真模块605,用于当查找模块未查找到与所述用户输入的数据库关键词相匹配的仿真结果时,依据用户输入的仿真配置文件执行仿真过程,将仿真得到的仿真结果输出,并将所述仿真得到的仿真结果作为与所述用户输入的数据库关键词相匹配的仿真结果,存储到仿真结果数据库中。
本申请实施例通过预先创建仿真结果数据库,其中设置用于索引的数据库关键词,当用户有仿真需求时,接收用户输入的数据库关键词和仿真配置文件。但是本申请实施例并不立即对所述仿真配置文件进行仿真,而是首先查找仿真结果数据库中与用户输入的数据库关键词相匹配的仿真结果,若查找到,则不需要再对输入的仿真配置文件执行一次仿真,而是直接将查找到的相匹配的仿真结果输出给用户。因此,本申请能够简化仿真过程,有效减少重复的工作量,提高仿真效率。并且,由于新的仿真用户可以直接利用已经过仿真的用户的仿真结果,因此提高了仿真结果的重用性和共享性。
其次,由于本申请实施例通过仿真结果数据库存储仿真结果,保证了仿真结果的统一存储,提高了仿真结果的安全性,并且仿真结果可以长期存储,进一步提高了其有效性。
参照图7,示出了本申请实施例五所述一种仿真系统的结构框图,所述系统包括:
创建模块701,用于预先创建仿真结果数据库,所述仿真结果数据库中设置用于索引的数据库关键词;
在本实施例中,所述仿真结果数据库为分层存储结构,对于具体的创建过程,参照上述实施例四的相关描述即可,本申请在此不再详细论述。
在创建仿真结果数据库时,设置其中的每个数据库关键词都对应一个存在标识变量,用于标识所述数据库中是否存在对应所述数据库关键词的仿真结果。
在本实施例中,设置所述存在标识变量的取值为0或1。当所述存在标识变量的取值为1时,表示所述仿真结果数据库中存在对应所述数据库关键词的仿真结果;当所述存在标识变量的取值为0时,表示所述仿真结果数据库中不存在对应所述数据库关键词的仿真结果。
接收模块702,用于接收用户输入的数据库关键词和仿真配置文件;
查找模块703,用于查找所述仿真结果数据库中与所述用户输入的数据库关键词相匹配的仿真结果;
优选的,所述用户输入的数据库关键词为多个,所述查找模块703包括:
第一判断子模块7031,用于从第1层开始,依次判断第j层中是否存在用户输入的数据库关键词中的任意一个,其中,j=1,2,...,N-1;还用于当判断结果为不存在时,判断第j+1层中是否存在用户输入的数据库关键词中的任意一个;
第二获取子模块7032,用于在第一判断子模块判断出第j层中存在用户输入的数据库关键词中的任意一个之后,获取所述数据库关键词对应的存在标识变量的取值;
控制子模块7033,用于当第二获取子模块获取的所述存在标识变量的取值为1时,控制第一获取子模块执行所述获取操作;当第二获取子模块获取的所述存在标识变量的取值为0时,控制仿真模块执行所述仿真过程;
第一获取子模块7034,用于当第一判断子模块的判断结果为存在时,获取所述数据库关键词的分类,第二判断子模块执行判断操作;
第二判断子模块7035,用于判断第j+1层中属于所述分类的数据库关键词中是否存在用户输入的剩余数据库关键词中的任意一个;
查找子模块7036,用于查找仿真结果数据库第N层中与用户输入的剩余的最后一个数据库关键词相匹配的仿真结果。
输出模块704,用于当查找模块查找到与所述用户输入的数据库关键词相匹配的仿真结果时,输出所述相匹配的仿真结果;
仿真模块705,用于当查找模块未查找到与所述用户输入的数据库关键词相匹配的仿真结果时,或者当第二获取子模块获取的所述存在标识变量的取值为0时,依据用户输入的仿真配置文件执行仿真过程,将仿真得到的仿真结果输出,并将所述仿真得到的仿真结果作为与所述用户输入的数据库关键词相匹配的仿真结果,存储到仿真结果数据库中;
设置模块706,用于在仿真模块将所述仿真得到的仿真结果作为与所述用户输入的数据库关键词相匹配的仿真结果,存储到仿真结果数据库中之后,将所述用户输入的数据库关键词对应的存在标识变量的取值设置为1。
本实施例相对于上述实施例四的改进之处在于,在仿真结果数据库中的每个数据库关键词都对应一个存在标识变量,根据该存在标识变量即可得知仿真结果数据库中是否存在对应所述数据库关键词的仿真结果。如果判断出某一层中存在用户输入的数据库关键词,则进一步获取其对应的存在变量标识的取值,如果所述存在变量标识表示不存在对应该数据库关键词的仿真结果,则不需要再执行下一层的判断过程,直接针对用户输入的仿真配置文件执行仿真过程即可。通过上述方法,避免了对于不存在对应仿真结果的数据库关键词不必要的判断过程,从而进一步提高仿真效率。
参照图8,示出了本申请实施例六所述一种仿真系统的结构框图,所述系统包括:
创建模块801,用于预先创建仿真结果数据库,所述仿真结果数据库中设置用于索引的数据库关键词;
在该实施例中,创建仿真结果数据库时,设置其中的每个数据库关键词对应一个搜索次数变量,用于表示对应的数据库关键词被搜索了多少次。初始设置时,设置每个数据库关键词对应的搜索次数变量的取值为0。
接收模块802,用于接收用户输入的数据库关键词和仿真配置文件;
查找模块803,用于查找所述仿真结果数据库中与所述用户输入的数据库关键词相匹配的仿真结果;
对于具体的查找过程,参照上述实施例四或实施例五的相关描述即可,本实施例在此不再详细论述。
输出模块804,用于当查找模块查找到与所述用户输入的数据库关键词相匹配的仿真结果时,输出所述相匹配的仿真结果;
仿真模块805,用于当查找模块未查找到与所述用户输入的数据库关键词相匹配的仿真结果时,依据用户输入的仿真配置文件执行仿真过程,将仿真得到的仿真结果输出,并将所述仿真得到的仿真结果作为与所述用户输入的数据库关键词相匹配的仿真结果,存储到仿真结果数据库中;
计算模块806,用于在输出模块输出所述相匹配的仿真结果之后或仿真模块输出仿真得到的仿真结果之后,将所述仿真结果数据库中每个用户输入的数据库关键词对应的搜索次数变量的取值加1;
存储模块807,用于仿真模块在依据用户输入的仿真配置文件执行仿真过程,将仿真得到的仿真结果输出之后,将所述仿真配置文件作为与所述用户输入的数据库关键词对应的仿真配置文件,存储到仿真结果数据库中。
本实施例相对于上述实施例的改进之处在于,在仿真结果数据库中的每个数据库关键词都对应一个搜索次数变量,用于表示对应的数据库关键词被搜索了多少次,从而使用户更加直观地了解哪个数据库关键词被搜索的次数比较多,哪个数据库关键词对应的仿真结果的重用性和共享性更强。
对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种仿真方法和系统,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。