软件算法相关技术

2024-08-05

软件算法相关技术(共4篇)

软件算法相关技术 篇1

计算机算法, 又是计算机程序运用的一种形式, 算法包括2个要素, 一部分指的是对信息的操作处理, 对信息的操作处理体现了计算机算法的一种根本的操作模式, 也在很大程度上利用了计算机对信息的获取性的这一模式的探究, 这部分对信息的操作处理包括4种处理方式, 分别为逻辑符合, 数学计算, 信息的对比以及信息的传递, 另一部分指的是对信息的处理方式的操作, 它引导指令进行有序的进行。这2部分都是根据计算机中的各种运用程序进行操作处理, 计算机软件算法在现实生活中有很多的运用, 在不同的领域也会采用不同的软件程序进行计算。随着信息化的不断发展, 计算机软禁算法已经逐渐成为一种最重要的运算模式, 近些年来, 我国十分重视对计算机软件技术的相关问题探究, 同时, 在各大高校, 也不断重视培养相关的计算机软件操作方面的人才, 并逐步深化软件算法在现实生活中的运用。

1 计算机软件算法在现实生活中应用领域

1.1 在建筑工程领域方面的运用

计算机软件算法目前已经很好的运用于工程建筑领域。许多建筑工程单位利用计算机的软件算法进行相关的成本预算, 收益预算以及采购预算等。相关的建筑单位可以根据特定的程序, 对所采用的数据进行输入, 完成输入后, 利用统一的程序计算出建筑工程中的相关数据。目前, 随着计算机软件算法水平的提高, 建筑工程领域对软件算法的大量运用, 很大程度上提高了工程建筑的运作效率。

1.2 在船舶建造领域的运用

软件算法在船舶建造领域有着广泛的运用, 其中一个软件算法方式着手就是贪心算法, 贪心算法是近些年广泛使用的一种算法方式, 在船舶建造过程中, 往往通过计算机算法中的软件算法进行合理的计算所要使用的材料量, 同时利用贪心算法, 可以最大程度上节省所要运用的建造材料以及资源, 减少在船舶建造过程中不必要的资源的浪费, 因此可以说, 软件算法的广泛运用, 在很大程度上解决了船舶建造过程中有关资源浪费的一系列问题。因此, 在我国船舶建造过程中一般都会选择软件算法的运用。

1.3 在金融领域方面的运用

在金融领域方面利用计算机相关的软件算法, 是近些年逐步运用的一种形式, 在金融领域运用软件算法, 主要是SM系列算法的运用与选择, 在金融领域, 通话SM系列软件算法, 可以实时的分析出现阶段金融时态的变化过程, 以及相关金融数据的掌握, 因此, SM系列的软件算法在金融领域的运用逐步深化, 现阶段, 我国银行业发行的金融IC卡全部采用国外芯片和国际通用标准算法 (金融社保卡除外) , 这是软件算法的一种重要的运算形式, 这种方式方法的运用, 无疑为我国金融银行领域提供了良好的便利条件与便利基础。

1.4 在资源开发领域的运用

计算机软件算法也广泛的运用于资源开发领域过程中, 资源的高效率的合理开发和利用是近些年来所追求的目标, 因此, 对资源的开发与利用, 利用计算机软件算法进行对开采度等数据的计算, 可以很好的把握资源的开采程度, 防止资源开采过度造成资源的枯竭, 或者资源的开采力度不够, 不能实现很大的经济效益。因此可以说, 计算机软件算法在资源开采方面也有很大的利用程度。

计算机软件算法在多个领域有所运用, 当然, 他不仅局限于以上所列举的3个领域, 软件, 它还在医学, 道路设计, 数学研究等多种领域有所利用和发展, 近些年来, 越来越多的计算机软件算法被开发, 不同的领域运用不同的计算机软件算法进行相关的计算, 带来了极大的便利性。

2 计算机软件算法运用过程中存在的问题及相对的策略

2.1 计算机软件算法的保密性程度不高

利用计算机算法进行相关数据的计算, 被广泛的利用于多个领域, 但是, 相关的计算机软件算法的保密程度不高, 往往在运算过程中, 相关的数据就会存留于计算机中, 会使所计算的相关数据的信息被泄露, 为相关的企业单位造成信息和资金方面的损失。这个问题普遍存在于计算机软件算法运用过程中, 也是近些年一直需要改进的问题。所以说, 解决软件算法程序的保密性问题便显得更加重要。

对这一问题的解决, 相关的计算机软件程序开发的过程中, 可以加大对软件程序计算保密性的相关问题探究, 开发新的保密软件, 让软件算法在运算的过程中可以根据各个领域对数据的需要以及保密程度对相关的计算进行加密。同时, 各个领域在利用计算机软件算法进行相关的软件计算过程中也要很好的重视有关计算人员操作过程中的保密程度, 限定计算人员的人数, 防止因操作人员过多使相关的数据流失程度过高, 造成计算程序泄露的问题。

2.2 计算机软件相关算法的程序过于复杂

有些计算机软件相关算法的程序过于复杂, 导致在计算过程中容易出现相关计算方面的问题。这也是计算机算法在运用过程中存在的相关问题, 基于现阶段软件算法所运用的时间还较短, 所以, 在运用过程中, 复杂的计算程序降低了计算的效率, 这个问题主要是软件算法本身存在的问题, 但是, 程序的复杂性还表现在相关的计算人员所掌握的技术水平还不够高, 相关的操作能力也比较差, 这一问题的存在, 也就加大了计算机软件算法在实际领域运用过程中的难度。

解决这方面的问题, 必须从2个方面入手:首先, 相关的计算机软件算法的开发人员应该不断的进行技术创新, 开发较为简便易算的计算程序, 简化相关的运算步骤, 让运算过程更能够适应各个领域的很好利用;其次, 在利用相关软件的计算的人员的操作能力与技术水平也要不断的提高, 因此, 在近些年来必须提高高校对相关的计算机专业学生的培养力度, 不断提高计算机专业学生对计算机软件算法的操作能力与水平, 为相关领域输入更多的人力资源, 同时, 在利用计算机软件算法进行计算的各个领域, 也要定期对这门技术进行传授, 对相关的计算机操作人员进行操作以及专业知识的传授, 降低因软件算法程序复杂带来的不必要错误的发生概率。

3 结论

计算机软件算法包括多种算法程序, 并运用于不同的领域, 可见计算机软件算法的重要作用。因此, 必须提高对计算机软件算法的掌握程度, 以及在不同领域不同的运算操作要点, 同时, 还要及时的掌握计算机软件算法在运算和现实领域运用过程中存在的问题, 及时进行解决, 从而更好的推动计算机软件算法技术更好的发展。

摘要:随着计算机科学的不断发展, 相应的催生了软件工程学科的合理运用, 软件工程程序设计是一项重要的研究内容, 而程序设计的核心就是算法的选择, 所以在软件程序设计中相关的软件算法的选择十分关键。本文介绍了相关的软件工程学科的相关算法的选择, 以及软件算法在现实生活中各个领域的运用, 同时, 进一步探究了相关的软件算法在运用过程中存在的问题以及相应的可行性策略。

关键词:软件工程,算法,应用

参考文献

[1]高瑞敏.基于演化算法的软件测试资源分配问题的研究[D].合肥:中国科学技术大学, 2015.

[2]罗银.基于遗传算法的软件测试数据自动生成研究[D].广州:中山大学, 2009.

[3]朱宁龙, 戴紫彬, 张立朝.SM3及SHA-2系列算法硬件可重构设计与实现[J].微电子学, 2015 (6) :777-780.

[4]丁冬平, 高献伟.SM3算法的FPGA设计与实现[J].微型机与应用, 2012, 31 (5) :26-28.

软件算法相关技术 篇2

目前网络安全越来越受到重视,银行和各种大型电子商务网站都采用了提供免费的动态口令令牌或动态口令卡来加强网络身份认证系统的安全性。但对于中小型的电子商务网站来讲,提供硬件的动态口令令牌来加强安全性成本太高,显然是不现实的。开发一种简单易行的软件实现动态口令技术的方法能解决中小型电子商务网站的燃眉之急。动态口令技术的软件实现无需购买任何硬件,只需一次编程就可解决所有问题。

1 动态口令技术的基本原理

动态口令又称为一次性口令OTP(One- Time-Password) ,其特点是:用户根据服务商提供的动态口令令牌的显示数字来输入动态口令,而且每个登录服务器的口令只使用一次,窃听者无法用窃听到的登录口令来做下一次登录,同时利用单向散列函数(如 MD5算法等)的不可逆性,防止窃听者从窃听到的登录口令推出下一次登录口令。

选取动态口令认证这种方案的商用系统采用的是静态密码与令牌相结合的方式进行身份鉴别。这种方式在检查用户静态密码(知道什么) 的同时,验证用户是否持有正确的令牌(拥有什么) 。令牌常用的有两种方式,一种是基于时间同步机制, 另一种是基于挑战应答机制。采用时间同步机制的令牌, 每分钟会提供给用户一个不同的口令, 与验证方同步获得验证,本例实现的动态口令也是基于时间同步机制的。

2 动态口令的软件实现过程

2.1 客户端动态口令的产生

动态口令的产生和验证过程如图1所示。为了方便描述, 对图中采用的符号做如下定义:A为用户;S为认证服务器; IDA为A的标识;KA1为用户密钥1; KA2为用户密钥2;PA为动态口令;T为时钟计时器。

客户端软件(即相当于硬件实现中的动态口令令牌)保存有用户密钥和用户ID 号,软件中的时钟计数器T 每隔60秒自动用密钥KA1和KA2同时加密用户ID和当前时间 t(精确到分钟),然后我们用MD5算法对加密结果进行单向散列加密(即第二层加密),产生两个等长的32位十六进制摘要。最后我们把两个摘要分别分割为8块,进行异或运算并取每块最右边位得到最终的8位动态口令。

2.2 动态口令的验证

验证服务器收到用户输入的用户ID、静态密码和动态口令后,先验证用户ID和静态密码是否正确。如正确则在数据库中读出该用户的密钥KA1和KA2。这两个密钥在发布动态口令客户端软件时应该已确定,并存放在验证服务器端数据库内。使用密钥KA1和KA2对用户ID和当前时间t进行同客户端相同的处理,最终产生验证服务器端的动态口令,并与客户端产生的动态口令进行比较,一致则通过验证。

3 主要关键技术解决和实施效果

3.1 时间的同步问题

基于时间同步机制的动态口令系统一般每60秒产生一个新口令。如果用类似动态口令令牌的硬件实现方法,由于其同步的基础是国际标准时间,故对令牌的晶振频率有严格的要求,以降低系统失去同步的几率。但随着时间的流逝,误差总是会出现的,当服务器和令牌的时间偏移超过一定值时,则系统验证会出错。而用软件实现动态技术则没有这方面的问题,只要定期通过校时网站(如:time.windows.com等)校准一下服务器和客户端的系统时间即可解决同步的问题。

3.2 主要加密过程

用密钥KA1和KA2对用户ID和当前时间t进行第一层加密,其部分VB代码如下:

For I = 1 To Len(strSource)

′从待加(解)密字符串中取出一个字符

strChar1 = Mid(strSource, I, 1)

′取字符的低字节和Key1进行异或运算

bLowData = AscB(MidB(strChar1, 1, 1)) Xor Key1

′取字符的高字节和Key2进行异或运算

bHigData = AscB(MidB(strChar1, 2, 1)) Xor Key2

′将运算后的数据合成新的字符

strString = strString & ChrB(bLowData) & ChrB(bHigData)

Next I

For K = 1 To Len(strString)

strChar2 = Mid(strString, K, 1)

strEncrypt = strEncrypt & AscB(strChar2)

Next K

第二层加密使用MD5加密算法,由于MD5算法的理论不可逆性决定了破坏者无法根据密文推出明文,这样保证了动态口令的安全性。 此外MD5加密算法把任意长度(小于2的64次方Bit)的信息通过加密产生128位信息摘要(固定位数),而动态口令的位数也是固定的(一般为6位或8位),故MD5算法很适合应用在动态口令技术的实现中。

3.3 实施步骤和效果

(1) 新客户在网站上先注册会员,并要求提供动态口令服务。

(2) 网站产生两个随机数作为密钥KA1和KA2(如12,25)并存放于数据库客户登录信息表中。

(3) 网站根据该用户ID和其相应的密钥KA1和KA2生成一个可执行文件(EXE文件),并发放给该客户。当客户登录网站时,必须先运行该文件得到该时段(精确到分钟)的动态口令。客户端文件运行效果如图2所示。

(4) 客户在网站输入用户ID、静态密码和动态口令后,如果正确即登录成功。

3.4 碰撞问题

不同的明文如果经过加密后密文是一样的, 则我们称这种现象为碰撞。由于动态口令位数固定,所以碰撞是在所难免的。本程序实际应用中动态口令每分钟变一次,在测试中为了提高效率,我们让动态口令每秒变一次,其碰撞数据如表1所示。

从上面的数据我们可以看到:动态口令软件连续运行11天可能会出现一次碰撞(即出现一次相同的动态口令),连续运行53天则大约出现29次碰撞,连续运行半年则会出现大约350次碰撞,总体碰撞率不高,而且实际应用中我们只是在需要登录时才会运行一下客户端文件并得到该时刻的动态口令,得到动态口令后即关闭程序,而不会连续运行程序。

4 结 论

本文阐述了用双密钥和MD5算法对用户ID和当前时间进行两层加密,从而产生动态口令的编程技术。该方法在保持硬件实现动态口令优点的同时,提出了用软件实现动态口令技术的整套方案。本方案已经成功应用于温州医学院计算机实验室的计算机专业学生身份认证系统,结果表明本方案完全能够满足一般性认证系统的需要,而且可以直接在现有基础上开发,无需任何额外的硬件成本。本方案也非常适用于各类中小型商务网站的身份认证系统。

摘要:描述动态口令技术的基本原理,研究一种基于MD5加密算法的动态口令技术的软件实现方法,并通过实例演示了该方法的实际效果。对于开发各类电子商务网站的动态口令技术可以提供一定的帮助。

关键词:动态口令技术,MD5算法,加密

参考文献

[1]吴佩萱.基于时间同步机制的动态密码认证系统[J].长江大学学报:自然版,2005,2(7):256-257.

[2]李传目.一次性口令技术的研究[J].集美大学学报:自然科学版,2003,8(2):160-163.

[3]胡天麟,刘嘉勇,陈芳,等.基于MD5的OTP认证系统的原理及实现[J].信息技术,2005(9):140-142.

软件算法相关技术 篇3

1 BIM技术国内外研究发展状况

1975年, 乔治亚理工大学的Chunk Eastman教授在其研究的课题“Building Description System”中提出了“a computer-based description of-a building”, 这是最早的BIM理念, 推动了当时工程项目的可视化和量化分析[2]。日本分别在1995年和2005年提出了“E-Japan”战略和“U-Japan”战略, 全面推广BIM集成技术。最近几年来, 各国对BIM的研究逐渐深入, 在动态协同决策模式、4D调度、集成交付设计、REST技术等领域有了飞跃的提升。

我国BIM技术的研究起步较晚, 在施工应用方面还不太成熟, 更多的是在一些较小项目中运用, 并没有发挥其整体全方位的功能。2008年, 中国建筑科学研究院等单位共同起草了GB/T25507—2010工业基础类平台规范, 将IFC (ISO/PAS 16739:2005) 转化为了国家标准[3]。2009年, 国家住宅工程中心开展关于BIM标准的研究, 提出了中国建筑信息模型标准框架 (CBIMS) , 主要包括数据交格式标准、信息分类及数据字典和流程规则三大部分。

2 BIM平台的技术架构与软件操运

2.1 BIM平台的技术架构

BIM是一个集成施工场地、实体模型、进度计划等的中央控制平台, 兼容方较多, 且空间分布上相互独立, 采用B/S分布式架构, 主要包括数据层、平台层、模拟层和应用层四部分, 具体流程图见图1。

2.2 BIM5D软件的操作运用———以上海七宝万科广场为例

上海七宝万科广场, 整个项目全程介入BIM。一方面检查施工相关资料, 进行信息纠错、更新, 保证施工图纸的质量;另一方面测算各个空间的使用要求及管线综合布置, 全方位可视管理;实时管理阶段, 传输项目信息数据, 建立信息云共享平台, 为后期运营维护做好准备[4]。

1) 施工场地平面图的绘制。利用三维平面布置软件, 将施工现场的各种构件及设施, 根据实际构局在相应的位置绘制出来, 形成立体的三维实物图形, 实现全方位的可视化。同时, 进行漫游处理, 使设计人员较直观的感受施工设施位置的合理性及各构件间的协调性, 及时处理施工布置方面存在的问题。

2) 建立三维实体模型并进行数据检测。利用Revit建模软件绘制建筑物内部各构件, 将所创建的场地、实体等模型, 导入BIM5D软件中, 对整个施工过程进行实时动态模拟。。该该项项目目整整体体及外观模型见图2。鉴于BIM建模的重要性, 应当把工作重点放在模型应用上。例如管线布置、碰撞检测等综合实验分析, 提前发现设计中存在的问题, 优化施工方案。

万科运用BIM技术对于土建模型进行了多轮优化工作。以实体模型为例 (见图3) , 从三维效果图可以看出其参数化楼梯由于台阶数过多、楼梯倾角过大等问题, 致使与上面的楼面板没有充分的结合在一起。再次利用BIM技术进行调整优化从而达到预想效果。然后对模型进行碰撞检测, 过滤掉设计规范允许内的碰撞点有2 000多个。该报告交于设计院修正并根据具体情况进行反复的调整和复核直至满足要求。

3) 施工图深化及进度计划控制。万科利用BIM软件进行施工图深化处理, 可以直观看出管线间的搭接是否合理并及时做出相应修改。利用进度计划软件Microsoft project制定相应的项目进度计划, 导入BIM平台, 与实体模型等相关联。此时平台针对不同需求生成子信息模型, 包括现阶段完成工作量、进度偏差以及资源消耗量等, 使管理者可以实时查看工程进度, 及时调整人员物资的分配[5]。

4) 工程量统计与清单计价。通过BIM平台, 把前一阶段生成的EXCEL报表导入工程量统计与计价应用中, 再根据实际采用当前存储数据库中的工程数据等, 即可自动生成工程数量表, 实现人工、物资的动态管理, 同时也可进行成本计划、项目管理等多方面的统计分析和实时查询[6]。

5) BIM云平台与信息共享。万科搭建了BIM云平台系统, 让多个办公室的团队基于同一个BIM模型进行跨地域范围的合作, 能够用笔记本或者手机随时随地访问和处理BIM数据, 加强了多团队间协同工作的能力, 不仅节省了时间, 还大大提高了效益。

3 BIM技术的不足与优化

3.1 BIM技术现阶段存在的问题

BIM是基于CAD (Computer Aided Design) 的基础上发展出来的, 但是和CAD相比有很大的优势, 其成果是动态可视化的, 实现了成本控制、三维实时管理。BIM技术的研究和推广一直严谨、高效的进行着。2013年1月24日, 首届“工程建设BIM应用大赛”在北京中关村举办, 在校大学生积极参与竞赛, BIM技术得到了推广与发展。

虽然BIM技术对于建筑行业有着革命性的作用, 但它毕竟是新生事物, 设计、施工人员对它的认知还不够全面, 在建筑行业的大环境下还不够成熟。就目前来看, 市场上最常用的施工算量软件仅适用于简单的钢筋预算, 不能快速准确地实现钢筋建模, 对现场施工的进度控制还有待加强。另外, BIM建模需要大量的构件族库, 现阶段提供的族库尚不全面, 甚至一些设备和构件需要在施工过程中开发[7]。对施工单位来讲, 实施BIM一般以项目部为依托, 前期建设需要花费大量时间, 对硬件和软件要求较高, 并需在过程中持续完善族库。因此使BIM不能很快的融入到建筑行业这个大市场中[8]。

3.2 优化建议

针对软件技术方面, 应设立专家小组负责相应的BIM开发和应用, 大力引进国外的先进技术来完善国内的缺陷。例如可以开发BIM技术的一个分支, 用于解决现场施工难题, 这样就省去了计算钢筋抽样所花费的大量时间和金钱。另外, 还需要建造一个比较完善的构件族库以满足操作人员用于建模的需要。

而认知方面, 要从在校大学生抓起, 进行BIM技术的宣传教育, 培育新兴BIM技术的人才, 为BIM技术研发方面提供广阔的人力资源。政府和行业协会举办BIM技术竞赛, 设立有关施工、设计和管理等方面的各种奖项, 以此来调动各个院校参赛人员的积极性, 从而全面推广BIM技术。

4 结语

目前, 国内BIM技术在建筑行业中的应用都还存在着一些困难, 需要引进国外的相关技术, 结合实际需求不断对软件进行改进, 逐步开发出更加成熟的软件, 促使国内建筑行业BIM技术的发展。BIM作为一种新兴技术, 在建筑行业上是一种全新的理念, 从规划、设计, 再到施工、维护等一系列变革和创新, 必然会促进建筑行业信息化的腾飞。

摘要:通过调查分析国内外BIM技术研究进展的相关文献, 主要围绕BIM平台的技术架构及BIM5D软件的操作运用, 以上海七宝万科广场为例, 总结了BIM技术精确高效、动态管理的优势并就现阶段的发展障碍, 提出了相关的优化建议, 该研究有利于建筑行业从业人员对BIM了解和熟悉, 为科研人员对BIM技术的研究提供一些参考。

关键词:BIM,集成,BIM5D

参考文献

[1]孙成双, 江帆, 满庆鹏.BIM技术在建筑业的应用能力评述[J].工程管理学报, 2014, 28 (3) :27-31.

[2]Eastman, Charles, Fisher David, et al.An outline of the building description system:Institute of Physical Planning[R].Pittsburgh:Carnegie-Mellon University, 1974.

[3]清华大学软件学院BIM课题组.中国建筑信息模型标准框架研究[J].土木建筑工程信息技术, 2010, 2 (2) :1-5.

[4]禹团员, 陈思源.BIM在上海万科七宝万科广场项目上的应用[EB/OL].http://www.chinabim.com/school/cases/2014-12-16/7720_9.html, 2014.

[5]何晨琛, 王晓鸣, 吴晶霞, 等.基于BIM的建设项目进度控制研究[J].建筑经济, 2015, 36 (2) :33-35.

[6]张建平, 李丁, 林佳瑞, 等.BIM在工程施工中的应用[J].施工技术, 2012, 41 (371) :10-17.

[7]罗宏.BIM面临的现实挑战[J].施工企业管理, 2013 (12) :33-35.

软件算法相关技术 篇4

近年来,无线激光通信技术越来越受到人们的关注,从大气无线激光通信到水下对潜蓝绿激光通信。但是无线激光通信的信道特别复杂,光信号在传输过程中的衰减异常严重,而时频调制技术(TFSK)的提出缓解了这种衰减。它实际上是一种频率分集技术,具有较好的抗频率选择性衰落的特性。对于TFSK信号的解调,相关检测是最理想的,但由于其要求形成准确的本地参考信号而受到限制。目前,应用最广泛的还是通过检测信号的能量来进行解调,即把信号带通滤波后送入平方律检波器,再通过延迟相加矩阵,最后比较判决输出。这种依靠信号能量的检测方法在信噪比非常小的情况下失去了其准确性,即无法检测出淹没在噪声中的信号。文中以蓝绿激光对潜通信系统为背景,研究了时频调制技术的另一种解调方法,使接收信号在不确定本地参考信号的情况下进行相关检测。通过Matlab仿真验证,此方法可行且可以进一步降低通信误码率。

1 时频调制原理

时频调制技术是在一个或一组二进制符号的持续时间内,用若干个不同频率的载波来传输原二进制的信息序列;而每一码元都用两个以上不同频率的载波来传送。在这种时频编码的码组持续时间内必须发送所有频率分量信号,一个码组与另一个码组的区别仅在于频率的顺序上不同,即时频调制信号的频率顺序携带了与其对应的码组信息。设要传送M进制码元,其宽度为TS。若以频率为fi的载波与M进制的码元xi相对应(i=0,1,2,…,M-1),即为MFSK制。若将TS划分为n个时隙(T1,T2,…,Tn),以f1,f2,…,fk在这n个时隙的不同排列代表M进制码元,这就构成了MTFSK制。以四时四频制为例,如图1所示。

四时四频制是将码元分组,两个符号一组,然后将这两个符号的宽度再分为4个时隙,以f1,f2,f3,f4在这4个时隙的不同排列顺序代表不同的码元,即“00”用频率组合f1f2f3f4表示;“01”用频率组合f2f3f4f1表示;“10”用频率组合f3f4f1f2表示;“11”用频率组合f4f1f2f3表示。因为它具有完全正交性,所以在实际应用中,采用四时四频制的比较多。

时频调制能抗频率选择性衰落的原因主要是因为TFSK不同于FSK,它在一个二进制符号内就发送两个不同频率的高频脉冲,只要选用的频率f1和f2之间具有足够大的频差(300米深海水信道的相关带宽20MHz[1]),则它们各具有相关性不大的衰落特性,从而起到分集的效果和抗码间串扰的作用。

2 解调原理分析

2.1 常用的TFSK解调方法分析

对于时频调制的解调,常用的一种方式如图2所示[2],它是以检测信号的能量为基础的。图中信号经过接收,用相应中心频率的f1,f2,f3,f4匹配滤波器滤出各时隙内不同频率的信号,经平方律检波与取样,取出f1,f2,f3,f4频率信号对应的能量。00,01,10,11编码信号所对应的能量是由延时部分和组合器相加部分完成的。例如,00对应的频率顺序为f1,f2,f3,f4,则00编码所对应的能量为f1的三个T/4延时,加上f2的两个T/4延时,加上f3的一个T/4延时,再加上f4的组合输出。由于四时四频码具有正交性的特点,经过组合后的信号能量通过比较判决器识别出对应的码组信息,从而实现信号的输出。

这种方法可以实现质量较好的通信,以误码率进行评估,在信噪比从1dB到9dB之间,误码率可实现从0.1×10-1~0.5×10-4直线下降[2]。下面介绍另外一种解调方法,可以使通信系统的误码率进一步降低。

2.2 边带相关算法

边带相关算法实际上是利用信号有良好的时间相关性而噪声不具有相关性,使信号进行积累而噪声不积累的原理,从而把被噪声淹没的信号提取出来。

根据第一节中时频调制技术的原理,4TFSK调制信号可用下面的数学表达式表示:

undefined

式中,S00(t)表示发射00时的信号,A表示信号的幅度,T为码元宽度,f1,f2,f3,f4为载波频率。

由此可见,时频调制信号的载波是余弦信号,那么其功率谱的包络是Sa2(x)函数,该函数则是以x=0为中心对称相等的脉冲,也就是说左右边带是相关的。如果逐点计算时频调制信号功率谱各点的对称相关值,那么最大值将出现在对称点载波频率fc处[3]。因此只要检测边带相关后的最大值,就可以确定载波频率值,这就是边带相关算法检测载频的基本思想。边带相关算法的数学表达式为:

undefined

其中,G(f)是待检测信号r(t)的功率谱密度。

在运用这种算法进行软件仿真时,先直接对待检测信号r(t)进行快速傅里叶变换(FFT),得到其频谱G(f)。如果r(t)中不含有噪声和干扰,则得到的频谱很纯净;如果r(t)中混入了加性高斯白噪声和单频干扰,则从G(f)几乎不能看出信号频谱的形状。然后可以按照公式(1)直接计算待检测信号频谱的边带相关函数F(f),当信号中不包含噪声和干扰时,得到的F(f)波形峰值很窄很尖锐,最大峰值对应的横坐标就是载波频率fc。当信号中包含噪声和干扰时,得到的F(f)要复杂一些,但是当信噪比在一定范围内变化时,仍然对载波频率具 有很好的 检测效果。

2.3 基于边带相关算法的时频调制解调方法

根据相关检测的理论[4],再结合边带相关算法的核心思想,提出一种利用信号的相关性特点的时频调制解调方案。因直接计算所接收信号的自相关函数运算量比较大,那么可以转移到频域进行计算。信号在时域的卷积在频域里表现为乘积。依据前一节分析,四时四频制的时频调制信号在频域内,分组的两个单位时间段内(四个时隙)含有四个Sa2(x)函数,且其中心位置分别对应四个载波频率点,若计算边带相关值,将在四个载频位置达到极大。为了在Matlab上实现,可将信号采样点按时隙单位进行分组,每组只含有一个频率的载波,在此时隙内,进行边带相关算法,可检测出载波。载波频率被检测出来了,那么依照载波的频率顺序就可以还原出原来的信号了。

在光电检测系统中,背景辐射多可视为热辐射,它可表示成强度不为零的,而其相位在0~2π间是均匀分布的高斯分布规律。利用相关检测方法,可有效的提高抗背景噪声能力[5]。所以,基于边带相关算法的解调方案可以实现低信噪比条件下的信号检测。

3 时频调制解调的Matlab仿真及分析

3.1 时频调制技术的应用

将四时四频制的时频调制技术应用于蓝绿激光对潜通信系统中,方框图如图3所示:将二进制信息序列以2位为一组进行分组,每组码元去键控可调谐激光器,当输入为00码元时,开关依次触发可调谐激光器f1,f2,f3,f4,那么输出为f1,f2,f3,f4的频率顺序,根据4TFSK原理,依此类推。携带这些频率顺序的激光信号经过复杂的无线光信道到达接收端进行相关检测。

仿真过程中,信道近似为理想的高斯信道,那么接收机端信号叠加了零均值的高斯白噪声。

3.2 时频调制解调的仿真

3.2.1 TFSK调制的仿真

本实验中,发射端信号采用四时四频制,先将输入信号分组,两位一组,并预置好载波频率的编码顺序。随信号输入,进行串行数据处理计算。在MATLAB仿真过程中,采样频率fs为21015,若一个码元内包含200个采样点,则码元传输速率为10T bit/s。四个不同载波的光波频率取在蓝绿光波段(470nm~550nm)内,其波长分别为480nm, 500nm, 520nm, 540nm。仿真信道为高斯信道。

调制信号在信噪比SNR=0dB的AWGN信道中传输后到达接收端,所接收信号的频谱图如图4所示,可见在6.25×1014、6×1014、5.77×1014、5.56×1014Hz处出现四个脉冲。

3.2.2 基于信号能量检测的TFSK解调仿真

依据2.1节中所述的原理和图2所示的流程进行仿真。用不同中心频率的滤波器分别滤出各时隙内不同频率的信号,然后经平方律检波取出这些频率信号的能量。不同编号信号的能量是他们经不同时延叠加的结果。图5描出了信噪比分别从1dB到9dB共9个点的误码率及其拟合曲线,这是在传输了105个码元后得到的仿真结果。

3.2.3 基于边带相关算法的TFSK解调仿真

在接收端,将信号分组处理。分别在四个时间单位undefined、undefined、undefined和undefined内进行Fourier变换,各时间段内计算边带相关值并搜索最大值,那么,最大值对应的频率就是此时间段内的载波频率。

在仿真过程中,初始信息设有三组数据,每组数据每帧的码元长度分别为256bit、512bit、1024bit,均由Matlab中的randint函数随机产生,那么信号具有伪随机性。图6是各传输了100帧数据得到的误码率曲线。

从图形中可以看出,在信噪比很低的情况下,仍然能够检测出载波频率,并还原出原始信号,从而证明了利用边带相关算法进行TFSK解调的可行性和正确性。并且传输的每帧数据长度越长,误码率就越低。

3.3 解调方法的对比

将MATALB仿真结果进行分析,不难看出,用TFSK技术实现光通信的调制解调,可以保证良好的通信质量。在发射端,实现调制的实现比较简单,实际应用中,主要取决于激光器的性能;在接收端,两种方法各有优缺点。比较如下:

(1)由图5和图6可以看出,基于信号能量的解调方法只能检测出在信噪比大于0的接收信号,而基于边带相关算法的TFSK解调方法在信噪比为-4dB时和原来方法0dB时的性能相当。由此可见,基于边带相关算法的解调方法不仅可行,而且比传统的解调方法具有更好性能。

(2)在仿真过程中,两种方法进行解调所用的时间也有所差距。在同一信噪比环境下,基于边带相关算法的解调方法运行时间为57s左右,而基于能量检测的方法所用时间大约为30s左右。由上可见,基于边带相关算法的解调方法虽然在精度上提高了通信性能,但是延时所带来的影响也不可忽视。这也充分体现了通信系统有效性和可靠性的相互矛盾的特性。

4 结束语

传统的时频调制解调技术原理简单,也具有一定的实际应用,但匹配滤波器的设计较为复杂。文中提出的解调方案不需要滤波、检波等复杂过程,只要能检测出载频即可。不过,它虽然最终实现了信号的还原,但还是有一定的局限性的。首先,它是假定了信号是连续的前提下进行的,在频域计算其边带相关值时,时延的选择影响着结果,如果取值太小,则检测不出来,若取值过大,计算量将大大增加;其次,要事先知道在调制端调制频率的顺序才行。此外,无线光信号的捕获、瞄准和跟踪(APT)技术、同步技术都未作考虑。此方案是一个试验性的提出,目前仅限于实验室仿真,实际应用还有待于研究,可为研究光通信中的调制解调技术提供一定的参考。

参考文献

[1]徐祺瑞.水下无线光通信接收技术研究[D].长春:长春理工大学,2008.

[2]汪春晓,钟晓春,荣健,等.时频调制技术在水下激光通信中的应用[J].信息技术,2009(1):25-30.

[3]张晓林,郭黎利.检测直扩信号载波频率的边带相关算法[J].弹箭与制导学报,2006,26(2):968-973.

[4]张贤达,保峥.非平稳信号分析与处理[M].北京:国防工业出版社,1999.

上一篇:网购诚信体系的建立下一篇:青年人胃癌