通信系统的设计与验证

上传人:ji****72 文档编号:45920844 上传时间:2018-06-20 格式:PDF 页数:8 大小:609.43KB
返回 下载 相关 举报
通信系统的设计与验证_第1页
第1页 / 共8页
通信系统的设计与验证_第2页
第2页 / 共8页
通信系统的设计与验证_第3页
第3页 / 共8页
通信系统的设计与验证_第4页
第4页 / 共8页
通信系统的设计与验证_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《通信系统的设计与验证》由会员分享,可在线阅读,更多相关《通信系统的设计与验证(8页珍藏版)》请在金锄头文库上搜索。

1、White Paper通信系统的设计与验证 LTE与WiMAX物理层设计工具选择AuthorMarkus Willems, Ph.D. Product Marketing Manager Synopsys, Inc. Holger Keding, Ph.D. Corporate Application Engineer Synopsys, Inc.引言如今, 3G无线网络和手持终端设备已经开始大规模部署, 下一代无线通信协议标准, 俗称4G, 也已经基本制定完成。 3GPP的长期演进 (LTE) 被大多数国家接受为4G标准。 LTE的支持者宣称只需对现有的网络基础设施更新部分关键部件就可以完成

2、升级, 因此LTE得到了业界的广泛认同。 2008年12月11日, 3GPP批准并冻结了LTE Release 8, 这一里程碑式的事件开启了研发兼容新协议的产品的大幕。 移动WiMAX (802.16) 作为4G的另一个候选方案, 与LTE在物理层应用上有许多相同的概念, 只是实现细节上存在不同。 这也为开发同时支持WiMAX和LTE方案的产品提供了可能。 在物理层设计上, LTE和WiMAX的复杂度相差不多。对LTE的研究为我们重提调制解调算法设计和验证过程的重要性提供了机会。 在算法设计阶段犯下的错误很难在硬件设计或者嵌入式软件开发阶段弥补回来。 对算法的验证是为了检测设计能否满足协议标

3、准的要求。 例如, 需要检测不同信道环境下的最大误包率。 协议标准的很大一部分内容都被用来定义测试环境。当选择某种工具或者方法来进行有效的算法设计时, 工程设计者需要从整个设计流程的角度来考虑算法复杂度的要求。 针对一些简单设计的解决方案对更大更复杂的系统来说可能完全不适用。 而如果每一个项目都采用独特的工具和方法, 项目的维护就会成为噩梦。 一些表面上看成本很小的解决方案, 后续可能需要购买其他昂贵的工具。 而如果工具某些基础功能缺失, 也会耗费工程师更多的时间和精力。本文主要探讨从3G转向4G的物理层设计过程中的仿真工具效率问题。 这些关于效率的准则也可以用于其他信号处理领域。LTE和Wi

4、MAX: 物理层关键技术LTE和WiMAX都是基于正交频分复用 (OFDM) 的多载波调制方案, 通过多输入输出天线 (MIMO) 进行信号传输。 这与3G基于码分复用 (CDMA) 的概念有很大不同。 3G与4G系统的物理层基带处理算法有着本质区别。 图1: N发送天线-M接收天线的MIMO-OFDM发送接收链路系统框图February 2010MNlllMlNInput dataOutput dataOFDM modulatorOFDM modulatorChannel decoderMIMO encoderDescramblingModulatorDemodulatorScramblin

5、gMIMO detectorChannel encoderOFDM demodulatorOFDM demodulator通信系统的设计与验证2物理层概念的不同直接导致了仿真复杂度的增加。 相比3G而言, 4G系统的物理层仿真复杂度大概有100倍的增长。 部分原因在于4G系统中, 每个数据采样点都需要更多的操作: 更复杂的编码/解码算法, 需要同时在平行的多个信道上传输, 采用了更复杂的信道均衡技术。 针对不同频带上的不同信道模型, 还有多输入多输出 (MIMO) 的不同配置 (见图1) , 需要增加大量的测试方案。 在此基础上, 还需要考虑不同量化精度对系统性能的影响。 因此算法的验证工作越

6、来越艰巨也就不足为奇了 。下文的例子都会以LTE为基础。 所有的结论也适用于WiMAX和其他需要大规模仿真的信号处理系统。设计和验证流程制定一个新的通信协议标准的目的, 是以最小的成本实现用户和网络运营商对高速信号传输的要求, 同时也要符合市场化的预期。 一个LTE调制解调系统往往同时包含了ASIC和DSP或者微控制器, 整个工程需要实现复杂的硬件设计和软件算法。因此, 制定一个覆盖算法设计、 软硬件实现、 以及系统验证的高效流程显得尤为重要。算法设计的初始阶段, 一般都需要首先为算法创建一个浮点模型。 一旦这个浮点模型验证通过, 下一步就会开始对算法的定点转换, 最后再移植到硬件及软件平台上

7、进行验证。算法的浮点模型在设计目标确定以后, 系统工程师就需要针对几种备选算法进行测试和优化, 然后在蒙特卡洛仿真结果的基础上确定最优的算法。 图2给出了以误比特率 (BER) 或者误块率 (BLER) 为指标, 进行性能仿真的蒙特卡洛仿真平台框图 (蒙特卡洛仿真是指激励信号由随机或者伪随机数据源产生的一类仿真) 。 此时仿真模型并不需要考虑最后的实现细节, 所有的算法都可以用浮点模型来表示。建模效率是反映创建仿真平台难易程度的一个概念。 决定建模效率的一个关键因素就是可重用的模型数量。 这些可重用的模型可能来自厂商提供的库, 也可能是从以前的项目继承得来 (也称为重用效率) 。 当然并不是所

8、有的模型都能从库里面找到, 有些模型也需要用户自己开发。 开发的模式有多种, 比如可以由一些基本的模型组合成一个复杂的模型 (分层设计) , 或者从零开始, 根据新的功能需求创建新的模型。仿真时还需要考虑的一个因素是仿真效率。 以前面提到的LTE和WiMAX为例, 由于涉及到许多设计参数, 因此为了得到最优的算法, 就需要仿真大量的参数组合。 仿真效率成为制约整个过程的关键。图2: 基于BER/BLER性能指标的蒙特卡洛仿真平台框图从浮点算法到定点算法的转换考虑到成本的因素, 算法的主要部分最后都需要以定点而不是浮点来实现, 除非选择浮点DSP。 因此, 当算法从设计到应用的转换过程中, 需要

9、分析量化精度的影响。 字长的选择直接关系到实现的性能, 字长太短会使系统质量有很大损失。 算法本身可能很好理解, 但是量化噪声对算法的影响可能很难评估, 因此需要小心对待。一般来说, 对算法进行定点转换是一个递归的过程。 首先需要创建一个浮点模型, 然后将变量逐个进行转换。 每个变量定点化后, 都需要将仿真结果与浮点模型进行比较。 仿真工具应该仅仅通过修改模型参数就实现这一过程, 而不需要每次都重写模型。 另外, 工具对常用的定点数据类型的支持也很重要。 因为如果仅仅依靠以整型位移来实现定点, 调试的时候会非常麻烦。 仿真工具的选择应该在项目的初期就考虑好。 如果在项目开始几个月后才意识到问题

10、, 此时要更换工具几乎是不可能的。人们往往会低估定点化过程需要的时间。 定点转换其实非常繁琐, 花费的时间可能并不比算法设计来得短。 因此选择合适的仿真工具显得尤其重要。BER/BLER evaluationTransmitterChannel(s)ReceiverSource通信系统的设计与验证3软硬件实现和验证当算法的定点转换完成以后, 定点模型就是系统实现的参考模型, 因为它定义了系统的算法性能。 一般来说, 从算法模型到硬件实现的过程会出现很多错误。 这是因为算法开发和硬件实现所遵循的设计原则是不同的, 使用的工具也做不到紧密结合。 算法工程师往往需要给硬件工程师提供激励信号, 作为H

11、DL仿真的输入, 然后将HDL仿真的结果与算法仿真做比较。 这种方法实现起来会有许多困难: 针对每一组参数配置和测试方案都会有一个仿真结果, 为了比较所有的这些参数组合, 需要保存大量的激励信号和参考结果文件, 既费时又费力 每一个新创建的HDL测试案例都需要算法工程师和硬件工程师一起进行验证, 工作量很大 当HDL仿真和参考仿真结果不同时, 很难确定错误发生的位置和原因这种方法已经逐渐被淘汰。 现在流行的方法是不同部门之间通过一个可执行平台来传递设计定义。 算法部门、 RTL硬件部门、 以及采用虚拟平台做软件开发的部门可以共享一个仿真平台。 算法部门创建的浮点或定点模型作为一个可执行的参考模

12、型文件, 可以直接用到HDL代码和软件验证中去。实现这种设计共享存在两种途径。 第一, 在算法设计工具中直接导入RTL代码, 实现RTL和算法模型的联合仿真。 第二, 由算法设计工具导出算法模型, 以标准库的形式集成到硬件验证工具中去。 硬件验证工程师往往更愿意采用熟悉的工作环境, 所以第二种途径更为常用。 SystemC是大多数HDL仿真工具都能识别的一种标准接口, 因此算法设计工具导出的模型一般会采用SystemC的格式。 这些SystemC模型也可以直接在虚拟平台中表示一个硬件模型或者激励信号源, 对开发的软件进行验证。 SystemC模型是在软硬件开发中实现算法模型重用的关键。图3给出

13、了利用算法设计工具导出的模型来验证接收机实现模块的一个例子。 信号源与传输信道模型 (蓝色) 封装了SystemC接口 (红色) , 产生的激励信号作为定点算法参考模型和实现模型 (也采用SystemC封装) 的输入。图3: 在实现工具中重用算法设计工具产生的模型, 完成软硬件的验证算法设计效率上述的例子表明, 从算法设计的角度来看, 工具效率是由多个方面组成的。 从算法构思到最后的软硬件实现, 效率的提升需要工具的各个方面紧密结合, 共同完成。效率包括多个方面: 建模效率 仿真效率 重用效率 验证效率在设计的开始阶段, 选择工具时常犯的错误是只注重某一个方面的影响, 而忽视了其他。 这并不奇

14、怪。 首先, 面对复杂的应用环境, 传统的思维方式往往只考虑设计环节, 即创建浮点模型。 其次, 项目的压力使得人们急于看到成果, 迫使工程师们追求尽快获得一个初步的模型。 这些因素导致了大家更倾向于选择浮点优化能力强的工具, 因为只有这样才能更快的完成一个设计雏形。 而当项目逐渐深入, 实现变得越来越重要的时候, 这种工具选择的短视才会显现出来。 SourceComparisonTransmitterChannel(s)Detailed receiver (SW and HDL)Reference receiver通信系统的设计与验证4建模效率建模效率是反映创建模型难易程度的一个概念, 这其

15、中既包含了创建浮点算法模型, 也包含从浮点到定点的转换。 算法的最初形式是一些数学表达式, 把这些抽象的表达式转换成仿真模型的过程应该是越简单越好。 利用标准接口以及遵循一定的代码规则可以提高模型的互操作性。 如果工具有好的调试和分析能力, 也能改善建模的效率。 建模效率是衡量浮点到定点转换过程的一个关键因素。 浮点到定点的转换要求尽可能的保留设计的关键部分, 不对代码做大的改动。 因此, 工具需要支持一些特殊的数据类型、 常用运算符、 模板、 以及运算符重载等。仿真效率 工具的仿真效率主要体现在仿真速度上。 仿真平台的运行速度对项目周期的每一个阶段都有很大影响。 比如在算法设计阶段, 需要反

16、复测试算法的有效性, 而在定点转换过程中, 需要不断调整量化字长。 这些都需要很高的仿真速度支持, 否则整个项目周期会拉长。在诸如LTE之类的通信系统接收机设计中, 利用接收机算法模型得到衰落信道下的一个误比特率值可能需要好几个小时,有时甚至是几天的仿真时间。 而不同的仿真工具之间也可能存在100x的速度差异。 如今, 通信标准越来越多的采用复杂算法模块, 比如多天线发送接收, turbo编解码等等, 需要做的一致性测试也大量增加。 为了避免项目延迟, 保证设计符合预期, 我们应该在设计和验证的每一个阶段都仔细考虑工具的仿真效率问题。仿真效率的提高还体现在工具的批处理能力和平行仿真能力上。虽然工具仿真效率的重要性不言而喻, 但是由于在设计开始阶段往往只有一些简单的测试案例, 工具效率的差别无法充分体现, 从而导致选择工具时不够慎重。 随着项目深入, 设计越来越复杂, 效率的瓶颈会变得日益明显。 所以我们需要在一开始就仔细考虑仿真效率的问题。重用效率在通信系统的开发过程中, 我们可以重用一些以前的设计。 这些设计可能来自其他设计部门。 为了能有效的将

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号