第 20 卷 第 4 期
2004 年 7 月
森 林 工 程
FOREST EN GIN EERIN G
Vol
20 No
4
J ul. , 2004
基于 MA TLAB 的数字信号基带传输系统仿真
曲中水1 , 王建卫2 , 朱 泳2
(1. 哈尔滨理工大学 , 哈尔滨 150080 ; 2. 东北林业大学 , 哈尔滨 150040)
摘 要 : SIMUL IN K是 MA TLAB 中动态系统建模 、仿真和分析的一个集成环境 , 文中按照仿真过程基本步
骤用 MA TLAB 的仿真工具 SIMUL IN K实现了数字信号基带传输系统的仿真过程 , 对系统性能进行了分析 。
关键词 : 数字信号 ; 基带传输系统 ; MA TLAB ; 仿真
中图分类号 : TP311 文献标识码 : A 文章编号 : 1001 - 005X (2004) 04 - 0031 - 03
Digital Signal Base Band Transmission System Simulation Based on MATLAB/ Qu Zhongshui ( Harbin Science and
Technology University , Harbin 150080) , Wang Jianwei , Zhu Yong (Northeast Forestry University , Harbin 150040)
Abstract : SIMUL IN K is the integration environment for modeling , simulation and analysis of the dynamic system in
MA TLAB. According to the basic steps , the simulation of digital signal base band transmission system is realized by
SIMUL IN K tool , and the system capability is analyzed.
Key words : digital signal ; base band transmission system ; MA TLAB ; simulation
(s) , 即系统采样时间 。于是采用信道编码模块的
采样时间要和前一个模块的采样时间一致 , 即 s 函
数的采样时间特性设为继承前一模块 , 设置 sample
time = - 1 。对 于 基 带 信 号 的 延 迟 设 置 , 采 用
simulink 模块库中 提 供 的 Unit Delay ( 单 位 延 迟
器) 。对其中所有 Unit Delay 模块设置初始信号为
1 , 采样时间为继承其它的模块 , 即 Sample Time
= - 1 。采用对于输入一次查四位 , 对于码元每位
被查四次的模式 , 当信号在延迟中 , 同时被预输
出 , 实现无因果关系的码元间的因果输出 。为节省
内存空间 , 在 s 函数中只设有限个变量 , 在充分利
用原有变量的原则下 , 考虑利用输入变量 u 的向
量特 性 , 把 输 入 的 4 个 信 号 用 simulink 提 供 的
singals &systems (信号与系统) 模块库的模块 Mux
(向量合成模块) 输入向量 u 。模块 Mux 的功能是将
多个输入顺序合成一个向量输出信号。整体设计模型
如图 1。
1 引 言
MA TLAB 是美国 Mathworks 公司开发的适合
于工 程 各 领 域 分 析 设 计 与 复 杂 计 算 的 软 件 。
SIMUL IN K 仿真工具包是 MA TLAB 的一个附加
组件 , 是实现动态系统建摸 、仿真和分析的一个集
成环境 。1 ,2
数字基带传输系统主要由信道信号形成器 、信
道 、接收滤波器 、抽样判决器和同步系统等部件组
成 。文中应用 SIMUL IN K 实现了数字信号基带传
输系统仿真 。1 ,3 ,4 ,5
2 数字信号基带传输系统仿真过程
下面具体介绍仿真过程 。
2
1 信道编码器和解码器的设计
合理的设计首先在于选择基带信号码型 , 文中
采用三阶高密度双极性码 ( HDB3) 最低码速为
2048kbps 码元 , 间隔为 T = 1/ 2097152 (s) 。HDB3
码是现在应用较广泛的码型之一 。下面说明信道编
码器和解码器的设计 。
在 simulink 的模块库中 , 没有对信道直接编码
的模块 , 故而采用 s 函数 , 自行设计编码程序 。
HDB3 码对输入的基带信号要求一次至少读入四位
进行比较和输出 , 但从 simulink 中对离散系统工作
状态可以知道一次只能判决一位 , 因此必须采用对
前三位延时保留一个码元持续时间 T = 1/ 2097152
收稿日期 : 2003 - 03 - 01
基金项目 : 哈尔滨市青年基金项目 (项目号 0161218034) 。
第一作者简介 : 曲中水 (1971 - ) , 男 , 山东省龙口人 , 哈尔
滨理工大学讲师 , 主要从事信号处理 。
其中 , S - Function 模块是使函数的参数以模块形
式在模型中运行。模块 In1 功能是对一个子系统或外
部输入提供一个输入端口。模块 Out1 功能是对一个
子系统或内部输出提供一个输出端口。参数保持默认
图 1 整体设计模型图
© 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
1
23
森 林 工 程 第 20 卷
值。信道编码函数的输入得到解决 , 就可以设计函数
了。在 simulink 中是系统采样时才初始化。
具体实现解码分两步进行 , ①程序实现 HDB3
码向 AM I 码的解码 ; ②AM I 码基带信号解码 。考
虑到时间特性 , 是没有因果关系的 , 故而也只能采
用延时的办法产生码元间因果关系 , 才能在程序中
实现信息恢复 。和信道编码一样采用 s 函数来实现
模块功能 , 由于有四个输入关系 , 用同样方法来模
块 Mux 实现多信号输入合成向量实现 s 函数的一
个输入 u 。因而实现和信道编码类似 。
s 函数的程序实现 HDB3 码向 AM I 码的解码 。
2
2 信号源设计
在 simulink 中没有这种信号源 , 对它的仿真模
块采用子系统方式 。主体采用 source (信号模块
库) 的模块 Unifor Random Number
(产生均匀分
布的随机数) 。该模块用于产生在指定时间区间内
的有起始种子的随机数 , 它的参数 Sample time =
000000477 。其它参数保持默认值 , 因而它产生
0
的值在 0~1 之间变化 , 在用 Nonlinear
(非线性模
块库) 的模块 Switch (两个输入模块) 进行判决 。
模块 Switch 功能是根据第二个输入决定输出其他
两个中的一个 ; 判决方式是当第二个输入大于或等
于参数 Threshold 的值 , 则输出第一个 , 否则输出
第三个 。由于模块 Unifor Random Number 产生的
数均匀分布 , 参数可任意设 ; 为了检验编码和解码
器对 BHD3 码的效果 , 加大连 “0”码的机率 , 这
75 。对于模块 Switch 的另
里设参数 Threshold = 0
两个输入用 Souce (源模块库) 的 Constant
(常数
源模块) 。它的功能是产生一个常数输出信号 。它
们的参数 Constant value 分别设为 “1”和 “0”。且
参数设为 “1”的模块用信号线和模块 Switch 的第
一个入口相连 。如图 2 所示 。
库中 有 仿 真 白 噪 声 的 模 块 Band - Limited White
Noise (白噪声信号) 。它的功能是产生适合连续或
混合系统的正态分布随机信号 。把它加入信道就成
了白噪声高斯信道 。该模块的参数 Sample time =
00000447 和信号源一致 , 其它参数可以任意设
0
置以达到干扰的目的 。
2
4 滤波器设计
发送和接收滤波器性能的好坏直接决定了基带
传输通信系统的好坏 。在仿真中 , 使用 simulink 提
供的 Discrete (离散模块库) 中的模块 Discrete Fil
(离散滤波器) , 等效理想低通特性的升余弦滤
ter
波器是数字信号基带传输系统的最理想选择 。因
此 , 采用改进的升余弦窗 , 即哈明窗来设计 。3
2
5 同步系统
在仿真实现中用 math 库中的模块 gain (增益
模块) 和 Nonlinear 中的模块 Saturation (饱和度模
块) 来进行放大限幅 。滤波器用 4 中设计的窄带滤
波器 。采用 simulink 模块库中提供的 Unit Delay
(单位延迟器) 模仿移相器的功能 , 用时间延迟来
实现相位的变化 , 只要合理选定时间 , 能实现最佳
判决 。实现时 , 把它置于脉冲形成电路之后 , 来实
现对抽样的延迟 。
脉冲形成模块主要功能是寻找需要的 f 波上
的点 , 选择抽样点在码元的中间时刻 , 即 f 波的
极值点 , 由于波形有正负两部分 , 则选用 Nonlin
ear (非线性模块库) 的模块 Switch (两个输入模
块) 两个作比较器 , 进行离散化 , 得到抽样脉冲 ;
根据电路的衰减不同 , 其参数可调整 , 这里第一个
模块 Switch 参数 threshold = 0
95 , 另一个设为 -
95 。对于模块 Switch 的输入用 Souce (源模块
0
库) 的 Constant
(常数源模块) 。它们的参数 Con
stant value 分别设为 “1”、“0”和 “ - 1”。且参数
设为 “1”的模块用信号线和模块 Switch 的第一个
入口相连 。如图 3 所示 。
图 2 信号源设计图
2
3 信道设计
现实世界中多是白噪声高斯信道 , 且通常的噪
声多是加性噪声 。在 simulink 的模块库中 , source
© 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
图 3 脉冲形成模块图
第 4 期 曲中水等 : 基于 MA TLAB 的数字信号基带传输系统仿真
33
其中两模块 Switch 后的模块是 Math 库中的
Sum (求和模块) ; 它的功能是对输入信号求和 ,
然后输出结果 。
同步系统具体实现如图 4 所示 。
2
6 抽样判决部分的设计
图 4 同步系统图
抽样判决分为抽样和判决两部分 。抽样是接收
滤波器的输出信号和定时脉冲的输出信号相乘 , 到
定时点时的值再送判决器 , 根据开始规定的判决规
则进行判决 。因此抽样部分可用 math (数学库)
中的模块 product
(乘法器) 来实现 。模块 product
的功能是对每个输入进行乘法运算 , 然后输出 。由
于是对定时信号和信息求积 , 则它的参数 Number
of inputs = 2 。判决部分用两个 Nonlinear
(非线性
模块库) 的模块 Switch (两个输入模块) 来比较 ,
参数设定 threshold = 0
85 。Souce (源模块库) 的
(常数源模块) 三个 。它们的参数 Con
Constant
stant value 分别设为 “1”、“0”和 “ - 1”。鉴于模
块 Switch 的判决准则 , 参数设为 “1”的模块用信
号线和第一个模块 Switch 的第一个入口相连 , “ -
1”模块和另一个模块 Switch 的最后一个入口相
连 。如图 5 所示 。
图 5 抽样判决图
3 传输性能分析 1 ,6
评价通信系统的性能主要有两个方面 , 一是有
效性 , 二是可靠性 。得到 pe 与 S / N 的关系曲线 ,
保持现有的带宽和码速不变 , 只有提高信噪比 S /
N , 才能降低误码率 pe 。
在仿真中 , 对信源输出和解码器输出作模 2 运
算 , 只要得到 “1”码的就是传错了 ; 因此 , 求出
最后的 “1”码个数和总码元数的比值 , 就是误码
率 。考虑中间编码和解码模块的延时 , 须在信源输
出进行延时 , 采用六个 Discrete (离散模块库) 的
Unit Delay 模块 , 参数分别设为 1 、1 、1 、0 、0 、
0 , 重点分析仿真中成功的结果 , 得到系统特性 ,
并运用到仿真中 , 计算出不等概率情况下的误码
率 。
4 结 论
文中探讨了通信系统仿真的基本步骤 , 给出
MA TLAB 在数字信号基带传输系统的仿真过程 ,
对系统性能进行了仿真比较 , 还对信噪比对系统误
码率的影响进行了仿真 。
参 考 文 献
1 樊昌兴编著. 通信原理 (第五版) M . 北京 : 国防工业出版
社 , 2002.
2 王沫然编著. SIMUL IN K 建模和仿真 M . 北京 : 电子工业
出版社 , 2002.
3 程佩青. 数字信号处理教程 (第二版) M . 北京 : 清华大学
出版社 , 2001.
4 肖田元主编. 数字通信原理 M . 北京 : 清华大学出版社.
2000.
5 唐泽鹏. Matlab 在通信中的仿真应用 J . 电声技术 , 2001 ,
(11) : 42~45.
6 王立宁编著. Matlab 与通信仿真 M . 北京 : 人民邮电出版
社 , 2000.
7 徐素妍 , 曹坤梅. 基于 Matlab 语言的现代通信仿真分析 J .
计算机应用. 2001 , 18 (1) : 52~53.
8 谢文苗. 通信原理试验的计算机仿真 J . 实验技术与管理.
2001 , 18 (1) : 83~85.
9 肖大光. PCM 数字 基 带 传 输 系 统 J . 实 验 技 术 和 管 理.
2002 , 19 (1) : 21~24.
[责任编辑 : 刘美爽 ]
© 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.