不好意思,拖了好久才开始写这些博客,今晚准备熬个小夜了。碰巧今天实验课要求设计SSE 和 FSE 系统,所以就以这个作为一个开始吧。 首先我先来解释一下几个相关的定义: 均衡器: 关于什么是均衡器我们可以通过一个问题来切入:我们假设信道特性C(w)是已知的,在实际信号的传输过程中肯定存在滤波器设计有缺陷,或信道特性发生变化导致传输的效果变差。因此我们为了解决这个问题就考虑在接收滤波器和抽样判决器之间加上可调滤波器来校正或补偿系统特性。这种起到补偿作用的滤波器我们就称为均衡器。
SSE(symbol spaced equalisation):符号间隔均衡器。
FSE (fractionally spaced equalisation): 分数间隔均衡器。
均衡器最主要的作用就是:用在基带系统中消除ISI (Inter-Symbol Interference)码间干扰。
因为本题涉及到的理论概念不多,提供以下这个链接給想理解的更清楚的同学观看:https://download.csdn.net/download/lanluyug/10768089 接下来我们来完成今天的小实验: 题目:
给定的参数有 c_bar = [0:04; -0:05; 0:07; -0:21; 0:5; 0:72; 0:36; 0:21; 0:03; 0:07]; x = [1 1 - 1 1 - 1 1 1 - 1 1 1 - 1 - 1]: 采样因子:M = 2。 本题假设h = 1. 噪声w = 0. Task1 : 根据(b)图中的c_bar 求解 图(a) 中的c. Task2 : 求解FSE系统中经过上采样后的结果x_bar. Task3 : 计算SSE 和FSE系统中的y(n), z(n). Task4 : 根据Tas3 的结果判断信号是否能够还原。 我把书中的题目简化了,想看具体题目的同学参考下面链接: https://pan.baidu.com/s/1s4vlQ5Ci0trX7j2hYV_gUg 接下来是代码部分了。注释还算清楚,就不过多解释了。
%-------------------------------------------------------------------------% % Laboratory 6 % 2019.11.1 % leledidi % compare SSE and FSE System %-------------------------------------------------------------------------% clear all; clc; %--------------------------- c_bar = [0.04, -0.05, 0.07, -0.12, 0.5, 0.72, 0.36, 0.21, 0.03, 0.07]; x = [1 1 -1 1 -1 1 1 -1 1 1 -1 -1]; M = 2; h = 1; w = 0; %-------------------------------------------------------------------------- %Task 1.1 d = downsample(c_bar, M); % 做归一化 A = norm(d); c = d/A; %-------------------------------------------------------------------------- %Task 1.2 %使用上采样函数upsample获取采样点 x_bar = upsample(x,M); display(x_bar); %-------------------------------------------------------------------------- %Task 1.3 sse_y = conv(x, c); % 卷积运算求a图中的y(n) sse_h = [1]; % 均衡器设计 sse_z = conv(sse_y, sse_h); % a图中的输出z %--------- fse_y = conv(x_bar, c_bar); % 卷积运算求b图中的y(n) fse_h = upsample(sse_h, M); % 上采样因子为 2 v_n = conv(fse_y, fse_h); fse_z = downsample(v_n, M); %下采样因子为2还原 %--------- figure(1) subplot(1, 2, 1); xlabel('x'); ylabel('y'); title('SSE System'); stem(x); hold on; stem(sse_y, 'r'); hold on; stem(sse_z, 'g'); legend('x(n)','y(n)','z(n)'); grid on %--------- figure(1) subplot(1, 2, 2) xlabel('x'); ylabel('y'); title('FSE System'); stem(x); hold on; stem(fse_y, 'r'); hold on; stem(fse_z, 'g'); legend('x(n)','y(n)','z(n)'); grid on %---------compare figure(2) subplot(1, 2, 1) xlabel('x'); ylabel('y'); title('SSE System'); hold on ; %为了防止标题被覆盖遮挡所以加上这句话 stem(sse_z, 'g'); legend('z(n)'); grid on figure(2) subplot(1, 2, 2) xlabel('x'); ylabel('y'); title('FSE System'); hold on stem(fse_z, 'g'); legend('z(n)'); grid on %-------------------------------------------------------------------------- %task 1.4 % x = + + - + - + + - + + - - % z_a = + + + + - + - + + - + + - - - - % z_b = + + + + - + - + + - + + - - - - % 可以发现存在极性相同的连续采样点因此能够恢复原始信号。 % 因此在接下来应该进行抽样判决用来回复原始的信号。 % 抽样判决器 %---------------------------------- len_x = length(x); sign_a = sign(sse_z(3 : len_x + 2)); sign_b = sign(fse_z(3 : len_x + 2)); %--------------------------------- figure(3); subplot(2,2,1); title('SSE System x(n)'); hold on; xlabel('x'); ylabel('y'); stem(x); legend( 'x(n)'); %--------------------------------- figure(3) subplot(2,2,3); title('SSE System z(n)'); hold on; xlabel('x'); ylabel('y'); stem(sign_a, 'r'); legend('z(n)'); %--------------------------------- figure(3); subplot(2,2,2); title('FSE System x(n)'); hold on; xlabel('x'); ylabel('y'); stem(x); legend('x(n)'); %--------------------------------- figure(3); subplot(2,2,4); title('FSE System z(n)'); hold on; xlabel('x'); ylabel('y'); stem(sign_b, 'r'); legend('z(n)');然后我们来看下效果图:
综上这个小实验我们可以比较一下SSE和FSE的优缺点: SSE:结构简单但是效果不好,还原度不如FSE可以参考图2的比较。 FSE:结构更复杂但是效果好,但是实际运用中能带来的好处也不多。
本实验到这就暂时结束了,下周实验课还会在这个基础上加大难度设计一个实验,届时更新。 leledidi
