当前位置:文档之家› 离散时间系统的输入输出描述的编程实现

离散时间系统的输入输出描述的编程实现

离散时间系统的输入输出描述的编程实现
离散时间系统的输入输出描述的编程实现

课程设计任务书

学生姓名:专业班级:电信1306班

指导教师:王虹工作单位:信息工程学院

题目: 离散时间系统的输入输出描述的编程实现

初始条件:

1.Matlab软件;

2.课程设计辅导资料:“Matlab语言基础及使用入门”、“信号与系统”、“数字信号处理原理与实

现”、“Matlab及在电子信息课程中的应用”等;

3.先修课程:信号与系统、数字信号处理、Matlab应用实践及信号处理类课程等。

要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)

1.课程设计时间:1周;

2.课程设计内容:离散时间系统的输入输出描述的编程实现,具体包括:已知系统差分方程求任一激励下的响应、系统线性性质的分析讨论、利用卷积运算求响应等;

3.本课程设计统一技术要求:研读辅导资料对应章节,对选定的设计题目进行理论分析,针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析和总结,按要求进行实验演示和答辩等;

4.课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,具体包括:

?目录;

?与设计题目相关的理论分析、归纳和总结;

?与设计内容相关的原理分析、建模、推导、可行性分析;

?程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结;

?课程设计的心得体会(至少500字);

?参考文献(不少于5篇);

?其它必要内容等。

时间安排:1周

指导教师签名:年月日

系主任(或责任教师)签名:年月日

目录

1 概述 (1)

1.1 离散时间信号及MATLAB实现 (1)

1.1.1离散时间信号 (1)

1.1.2离散时间信号的MATLAB表示 (1)

1.1.3常用的典型序列 (1)

2设计要求 (3)

3 理论分析 (3)

3.1 差分方程MATLAB实现 (3)

3.2 系统的线性性质验证 (4)

3.3直接卷积原理 (4)

4程序设计与结果仿真 (5)

4.1题一 (5)

4.1.1原理分析 (5)

4.1.2程序代码与结果 (5)

4.2题二序列的相乘、相加 (10)

4.2.1理论分析 (10)

4.2.2 程序代码与结果 (11)

4.3题三 (13)

4.3.1 理论分析 (13)

4.3.2 程序代码与结果 (14)

5.心得体会 (16)

参考文献 (17)

本科生课程设计成绩评定表 (17)

1 概述

MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。

随着其功能的日益完善,MATLAB已经发展成为适合多学科,多种工作平台的功能强大型软件。在国外高校,MATLAB 已经成为线性代数,自动控制理论,数理统计,数字信号处理,时间序列分析,动态系统仿真等高级课程的基本教学工具;成为攻读学位的大学生,硕士生,博士生必须掌握的基本技能。在设计研究单位和工业部门,MATLAB 被广泛用于科学研究和解决各种具体问题。在国内,特别是工程界,MATLAB一定会盛行起来。可以说,无论你从事工程方面的哪个学科,都能在 MATLAB 里找到合适的功能。

另一方面,正如同FORTRAN和 C 等高级语言使人们摆脱了需要直接对计算机硬件资源进行操作一样,被称作为第四代计算机语言的MATLAB,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来。MATLAB用更直观的,符合人们思维习惯的代码,代替了C和FORTRAN 语言的冗长代码,给用户带来的是最直观,最简洁的程序开发环境。使得其迅速普及,并显示出旺盛的生命力。

1.1 离散时间信号及MATLAB实现

1.1.1离散时间信号

在离散时间系统中,信号要用序列来表示,其特点是时间离散,幅值连续。离散时间信号通常由对连续时间信号进行抽样获得。离散时间信号表示方法有3种:列表法、函数表示法、线图法。

1.1.2离散时间信号的MATLAB表示

表示一个序列要用两个元素:样值和位置。在MATLAB中用样值向量和位置向量来表示一个序列,要求两个向量长度相等。

例如x(n)={5,6,7,8}[0,3],其MATLAB产生语句为:n=0:3;X=[5,6,7,8]。

(1)单位阶跃序列

单位阶跃序列定义如下,

在MATLAB中,可以用逻

辑关系表达式产生,在区间[n1,n2]范围内,其产生方式为:n=n1:n2;x=((n-n0)>=0)。

具体代码如下:

function [x,n]=stepseq(n1,n2,n0)

n=[n1:n2];

x=[(n-n0)>=0];

[x,n]=stepseq(-2,8,2); %调用该函数

stem(n,x); %绘制函数图像

同理,单位采样序列的产生方法如下:

function [x,n]=impseq(n1,n2,n0)

n=[n1:n2];

x=[(n-n0)==0];

调用该函数

[x,n]=impseq(-2,8,2);

stem(n,x)

(2)矩形序列

矩形序列定义如下:

其中,N为矩形序列的长度。在MATLAB中,可以用逻辑关系表达式产生,其产生方式为:x=(((n-n1)>=0)&((n-n2)<=0));其中n1,n2表示取值区间的范围,由这两个值可以确定该矩形序列的长度,公式为N=n2-n1+1。具体代码如下:

function [x,n]=jx(n1,n2,n0)

n=[n1:n2];

x=[((n-n1)>=0)&((n-n2)<=0)];

[x,n]=jx(-2,8,2);

stem(n,x)

(3)实指数序列

实指数序列定义为x(n)=a^n,-∞

n=[0:10];

x=0.9.^n; % (运算符“.^”) stem(n,x)

2设计要求

课程设计内容:离散时间系统的输入输出描述的编程实现。

具体包括:求系统的输出序列、验证系统的线性性质、求卷积。 设计内容如下: 1.给定因果稳定线性时不变系统的差分方程0

()()N

M

k k k k a y n k b x n k ==-=-∑∑,对下列输入序

列()x n ,求出系统的输出序列()y n 。(1) ()()x n n δ=,(2) ()(10)x n n δ=-,(3) ()()x n u n =,(4) 32()()x n R n =,(5) 8

32()()j n

x n e

R n π

=。

2设系统差分方程为()()0.8(1)y n x n y n =+-,要求用程序验证系统的线性性质。 3计算下列卷积,并图示各序列及其卷积结果。

3 理论分析

3.1 差分方程MATLAB 实现

在《信号与系统》和《数字信号处理》课程中,我们知道描述线性移不变离散时间系统的数学模型是常系数差分方程,它与系统的结构流图之间可以互相推导。迭代解法(也称递推解法)是求解差分方程的最简单也最适用的方法,也是实现数字滤波器的一种基本方法。

差分方程通式为:0

()()N

M

k k k k a y n k b x n k ==-=-∑∑,x(n)与y(n)分别为系统的激励和响应。

离散系统的响应可分为零输入响应分量和零状态响应分量,零输入分量仅由系统的初始状态 y(-1)、y(-2)、…、y(-N) 引起,外激励 x(n)=0 ;而零状态分量仅由外激励x(n)引起,初始状态 y(-1)、y(-2)、…、y(-N) 均为零。 初始条件是指计算差分方程所需的初始

值 y(0)、y(1)、…、y(N-1)。

如果已知 y(-1)、y(-2)、…、y(-N),欲求y(0)、y(1)、…、y(N-1),可利用迭代法逐一导出。这样我们可以由给定的差分方程以及已知的初始状态找到所需的初始值(包括零输入初始值、零状态初始值、全响应初始值),进而求出响应。也可以利用系统单位冲激响应h(n)与输入信号x(n)的离散卷积求出。

MATLAB 以函数filter(num , den , x),来计算在给定输入和差分方程系数时求差分方程的数值解。num,den 分别为系统方程的系数向量。X 是输入序列。

3.2 系统的线性性质验证

线性系统是一个既具有分解特性,又具有零状态线性和零输入线性的系统,线性性质是线性系统所具有的本质特性,线性离散系统的数学模型是线性差分方程。

即满足叠加原理的系统称为线性系统。线性性质实际上包含了可加性和齐次性两个性质。设y1(n)和y2(n)分别是系统对输入x1(n)和x2(n)的响应,系统的激励x(n)与响应y(n)之间的关系可简记为y (n )=T[x (n )]即y1(n)=T[x1(n)]和y2(n) = T[x2(n)],若满足:

a1 y1(n) + a2 y2(n) = T[a1 x1(n) + a2 x2(n)] = a1 T[x1(n)] + a2 T[x2(n)] 则此系统称为线性系统。验证系统的线性性质,即验证上式是否成立。

3.3 直接卷积原理

1.离散时间序列f1(k)和f2(k)的卷积和定义:

1212(k)=(k)*(k)=()()i f f f f i f k i ∞

=-∞

?-∑

2.在离散信号与系统分析中有两个与卷积和相关的重要结论: (1) ()()()=()*()i f k f i k i f k k δδ∞

=-∞

=

?-∑

,即离散序列可分解为一系列幅度

由f(k)决定的单位序列δ(k)及其平移序列之积。

(2) 对线性时不变系统,设其输入序列为f(k),单位响应为h(k),其零状态响应为y(k),

则有:

()()()

i y k f i h k i ∞

=-∞

=

?-∑

3.在Matlab 中可以通过直接调用conv.m 用来实现两个离散序列的线性卷积。 其调用格式是:y=conv(x,h)

4 MATLAB 程序设计与结果仿真

4.1题一

题目:给定因果稳定线性时不变系统的差分方程0

()()N

M

k k k k a y n k b x n k ==-=-∑∑,对下列

输入序列()x n ,求出系统的输出序列()y n 。(1) ()()x n n δ=,(2) ()(10)x n n δ=-,(3)

()()x n u n =,(4) 32()()x n R n =,(5) 8

32()()j n x n e

R n π

=。

4.1.1原理分析

MATLAB 以函数filter(num , den , x),来计算在给定输入和差分方程系数时求差分方程的数值解。num,den 分别为系统方程的系数向量。X 是输入序列。

只需改变输入序列,便可以得到不同的输出。由于题目中没有给定差分方程,设 该方程为:2y[n]-1.7y[n-1]+1.1y[n-2]=2x[n],则num = [2]; den = [2 –1.7 1.1]; 4.1.2程序代码与结果 第一小题代码如下: n=[-20:100]; num=[2]; den=[2 -1.7 1.1];

x=impseq(-10,100,0); % x(n)为冲击函数 h=filter(num,den,x); % 使用函数filter()求输出 stem(n,h) %绘制离散序列数据 xlabel('n'); ylabel('y(n)'); title('响应y(n)电信1306胡容'); 系统输出函数y(n)的图像如图4.1所示

4.1 输出函数

第二小题代码如下:

n=[-20:100];

num=[2];

den=[2 -1.7 1.1];

x=impseq(-20,100,10);

h=filter(num,den,x); % 使用函数filter()求输出stem(n,h)

xlabel('n'); ylabel('y(n)');

title('响应y(n)电信1306胡容');

系统输出函数y(n)的图像如图4.2所示。

图4.2 系统输出响应第三小题代码如下:

n=[-20:100];

num=[2];

den=[2 -1.7 1.1];

x=stepseq(-20,100,0);

h=filter(num,den,x); % 使用函数filter()求输出stem(n,h)

xlabel('n'); ylabel('y(n)');

title('响应y(n)电信1306胡容');

系统输出函数y(n)的图像如图4.3所示。

图4.3 系统输出响应图

第四小题代码如下:

n=[-20:100];

num=[2];

den=[2 -1.7 1.1];

x=stepseq(-20,100,0)-stepseq(-20,100,32); %两个阶跃序列之差

h=filter(num,den,x); % 使用函数filter()求输出stem(n,h)

xlabel('n'); ylabel('y(n)');

title('响应y(n)电信1306胡容');

系统输出函数y(n)的图像如图4.4所示。

图4.4 系统输出响应图第五小题代码如下:

n=[-20:100];

num=[2];

den=[2 -1.7 1.1];

x0 = stepseq(-20,100,0)-stepseq(-20,100,32);

x1=exp(pi*n*j/8);

x = x1.*x0; %对应项之间相乘,即点乘h=filter(num,den,x); % 使用函数filter()求输出stem(n,h)

xlabel('n'); ylabel('y(n)');

title('响应y(n)电信1306胡容');

图4.5系统输出函数

题目小结:通过本题我们学会了如何在给定因果稳定线性时不变系统的差分方程情况下对给定的输入序列求输出序列。

4.2题二序列的相乘、相加

题目:设系统差分方程为()()0.8(1)

=+-,要求用程序验证系统的线性性质。

y n x n y n

4.2.1理论分析

产生两种输入序列,分别乘以常数后:

1. 分别激励系统,再求输出之和;

2. 先相加,再激励系统求输出;

对两个结果进行比较,方法是求它们之差,按误差的绝对值是否极小进行判断。如果

二者误差绝对值极小则可忽略不计,即两序列为线性序列。

4.2.2 程序代码与结果

本题MATLAB代码如下:

N=64;n=0:N-1;m=20;

num=[1];den=[1,-0.8]; % 设定系统参数num,den

x1=0.9.^n; % 产生输入信号x1(n)

x=[(n>=0)&(n<32)];

x1=x1.*x; %点乘

y1=filter(num,den,x1); % 对x1(n)的响应y1(n)

x2=[(n-m)==0];

y2=filter(num,den,x2); % 对x2(n)的响应y2(n)

x3=7*x1+2*x2;

y3=filter(num,den,x3); % 对5x1(n)+3x2(n)的响应y3(n) y=7*y1+2*y2; % y(n)=5y1(n)+3y2(n)

subplot(2,2,1);stem(n,y1,'.');line([0,N],[0,0])

axis([0,N,min(y1),max(y1)]);

ylabel('y1(n)]')

title(’电信1306胡容’)

subplot(2,2,2);stem(n,y2,'.');line([0,N],[0,0])

axis([0,N,min(y2),max(y2)]);

ylabel('y2(n)]')

title(’电信1306胡容’)

subplot(2,2,3);stem(n,y3,'.');line([0,N],[0,0])

axis([0,N,min(y3),max(y3)]);

xlabel('n');ylabel('y3(n)]')

title(’电信1306胡容’)

subplot(2,2,4);stem(n,y,'.');line([0,N],[0,0])

axis([0,N,min(y),max(y)]);

title(’电信1306胡容’)

e=y-y3,figure;stem(e)

运行结果如图4.6和4.7所示。

图4.6 各输出响应图像

由图4.6可以看出y(n)和y3(n)的函数图像几乎一模一样,由图4.7可以看出y(n)与y3(n)之差非常小,验证了y1(n)和y3(n)满足可加性和齐次性,所以该系统是线性的。

图4.7 序列e的图像

4.3题三

题目:计算下列卷积,并图示各序列及其卷积结果。

4.3.1 理论分析

卷积的计算

计算x1(n)和x2(n)的线性卷积的FFT算法可由下面步骤实现: ?计算X1(k)=FFT[x1(n)];

?计算Y(k)=X1(k) X2(k);

?计算x1(n)*x2(n)=IFFT[Y(k)].

在Matlab自带的系统函数中,Conv( )可以很好的完成两个有限长序列的卷积运算,特别是对于N值较小的向量,是十分有效的。

4.3.2 程序代码与结果

题二MATLAB代码如下:

>> Nx=20;Nh=10;m=5; %设定Nx,Nh和位移值m

n=0:Nx-1;

x1=(0.9).^n; %产生x1(n)

x2=zeros(1,Nx+m);

for k=m+1:m+Nx %产生x2(n)

x2(k)=x1(k-m);

end

nh=0:Nh-1;h1=ones(1,Nh); %产生h1(n)

h2=h1; %产生h2(n)

y1=conv(x1,h1); %计算y1(n)=x1(n)*h1(n)

y2=conv(x2,h2); %计算y2(n)=x2(n)*h2(n)

subplot(321),

stem(x1,'.')

ylabel('x1')

title(’电信1306胡容’)

subplot(323),

stem(h1,'.')

ylabel('h1')

title(’电信1306胡容’)

subplot(325),

stem(y1,'.')

subplot(322),

stem(x2,'.')

ylabel('x2')

title(’电信1306胡容’)

subplot(324),

stem(h2,'.')

ylabel('h2')

title(’电信1306胡容’)

subplot(326)

stem(y2,'.')

ylabel('y2')

title(’电信1306胡容’)

运行结果如图4.8所示

图4.8 序列卷积结果图

5.心得体会

在前几次课设和实验中我们就认识到了Matlab的强大功能,本次信号分析与处理次课程设计也是利用它完成的。Matlab作为一个功能强大,运算效率相当高的数学工具软件,经过了多年发展,目前几乎可以解决科学计算中的任何问题。作为一种以数组与矩阵为核心的处理工具,Matlab还具有与高级语言相似的编程特性,在可视化方面,Matlab提供了图形用户界面,使得用户可以进行可视化编程。可以这么说,Matlab把数据结构、编程特性与图形用户界面完美的结合在一起。

这次的课程设计运用了很多以前课堂中学习到的理论知识,使我对数字信号处理方面的知识有了进一步的加深。如验证系统的线性性质,卷积的运算。通过这次课程设计,我以前学习到的理论知识得到了进一步的了解和深入,我想这就是理论与实践相结合的作用吧!单独的理论学习是比较枯燥的,这种模式不仅加深了我们的知识,而且增强了我们的动手能力,整个的过程中,也非常的有趣,使我对数字信号处理的兴趣大大提高。

对于我们电子信息工程专业而言,数字信号处理是一门很重要的学科,它要求在一定的理解和计算的基础上掌握其内容,领悟其要旨。通过课程设计的学习,可以在掌握一定的理论知识的基础上通过实践加深理解,使得理论知识的学习在实践之中得到升华。对于我个人来说,这是一次很好的学习和实践的机会。Matlab有很多的库函数,这为我们开发学习提供了一个非常方便的平台。同时,我们可以根据自己的需要,建立新的函数,然后储存起来,方便以后的使用。

课程设计,让我们学会了思考问题,不单单是依靠课本知识,还需要联系实际,理论需要结合实践才能发挥最大的作用。我们在课程设计的过程中,发现问题,并找出问题的原因,还需要自己动手将问题解决,这极大的调动了我们的积极性,扩展了我们的思维,对待出现的问题,我们学会了不逃避,而是努力将其解决,这对我们今后的学习生活有着重大影响。

参考文献

[1] 薛山.MATLAB基础教程.北京:清华大学出版社,2011

[2] 艾冬梅编. MA TLAB与数学实验[M].北京:机械公业出版社,2010

[3] 高会生.MATLAB实用教程.北京:电子工业出版社,2011

[4] 王正盛编. MA TLAB与科学计算[M].北京:国防工业出版社,2011

[5] 张琨.MATLAB2010从入门到精通.北京:电子工业出版社,2011

本科生课程设计成绩评定表

指导教师签字:年月日

实验1离散时间信号的产生与运算

数字信号处理 实验报告 班级: 学号: 姓名:word文档可自由复制编辑

实验1离散时间信号的产生与运算 一、实验目的 (1)了解离散时间信号的特点。 (2)掌握在计算机中生成及绘制各种常用离散时间信号序列的方法。 (3)掌握序列的加、减、乘、除和平移、反转、尺度变换等基本运算及计算机的 实现方法。 二、实验原理 信号是随时间变化的物理量,而计算机只能处理离散信号。离散信号是在某些不连续的时间上有信号值,而在其它时间点上没有定义的一类信号。离散信号一般可以由连续信号通过模数转换得到。 常用的离散信号有单位脉冲序列、单位阶跃序列、复指数序列、正弦信号序列、随机序列等。 离散信号的基本运算包括信号的加、减、乘、除。离散信号的时域变换包括信号的平移、反转、尺度变换等。 三、实验内容与方法 1、编写程序,生成如下数字信号:sqrt(2*k)u(k错误!未找到引用源。3), δ(k+5)。 (1) f(k)=sqrt(2*k)u(k错误!未找到引用源。3) 代码: k=(1:10); n=3; u=[(k-n)>=0]; a=sqrt(2*k); stem(k,a.*u); title('sqrt(2*k)u(k 3)的图像'); xlabel('时间(k)');ylabel('幅值f(k)'); 运行图: word文档可自由复制编辑

(2) f(k)= δ(k+5) 代码: k1=-10;k2=0;k=k1:k2; n=-5; %单位脉冲出现的位置 f=[(k-n)==0]; stem(k,f,'filled');title('δ(k+5)序列的图像') xlabel('时间(k)');ylabel('幅值f(k)'); 运行图: word文档可自由复制编辑

离散时间系统特性分析

实验五实验报告 实验名称:离散时间系统特性分析

一、实验目的: 1 。深入理解单位样值响应,离散系统的频率响应的概念; 2。 掌握通过计算机进行求得离散系统的单位样值响应,以及离散系统的频率 响应的方法。 二、实验原理: 对于离散系统的单位样值而言,在实际处理过程中,不可能选取无穷多项的取值。往往是选取有限项的取值,当然这里会产生一个截尾误差,但只要这个误差在相对小一个范围里,可以忽略不计。 另外,在一些实际的离散系统中,往往不是事先就能得到描述系统的差分方程的,而是通过得到系统的某些相应值,则此时系统的分析就需借助计算机的数值处理来进行,得到描述系统的某些特征,甚至进而得到描述系统的数学模型。 本实验首先给出描述系统的差分方程,通过迭代的方法求得系统的单位样值响应,进而求得该离散系统的频率响应。限于试验条件,虽然给出了系统方程,但处理的方法依然具有同样的实际意义。 具体的方法是: 1 在给定系统方程的条件下,选取激励信号为δ(n),系统的起始状态为零 状态,通过迭代法,求得系统的单位样值响应h(n)(n=0,…,N )。 2 利用公式 其中Ω的取值范围为0~2π 。计算系统的频率响应。 三、实验内容 1 已知系统的差分方程为 利用迭代法求得系统的单位样值响应,取N =10。 2 利用公式 其中

#include #include #define N 10 #define M 20 #define pi 3.1415926 struct pinlv{ double fu; double xiang;}; double h[N+1],x[N+1]; struct pinlv PL(double w) { double a=0, b=0,fu,xiang; int k; struct pinlv FX; for(k=0;k<=N;k++){ a=a+h[k]*cos(-k*w); b=b+h[k]*sin(-k*w);} fu=sqrt(a*a+b*b); xiang=atan(b/a); if((a<0)&(b>0)) xiang=xiang+pi; if((a<0)&(b<0)) xiang=xiang-pi; FX.fu=fu; FX.xiang=xiang; return(FX); } main() { int i,j; double w0; struct pinlv FX[M+1]; FILE *fp1,*fp2; fp1=fopen("H:\\单位样值响应.txt","w"); fp2=fopen("H:\\频率特性.txt","w"); h[-1]=0;h[-2]=0; for(i=-1;i<=N;i++) x[i]=0; x[0]=1; for(i=0;i<=N;i++) h[i]=1.3*h[i-1]-0.4*h[i-2]+x[i-1]; printf("系统的单位样值响应为\n"); fprintf(fp1,"系统的单位样值响应(从x[0]开始)为\n"); fprintf(fp1,"激励x[i] 响应y[i]\n"); for(i=0;i<=N;i++)

实验一离散时间信号分析

实验一离散时间信号分析 一、实验目的 1. 初步掌握Matlab 的使用,掌握编写M 文件和函数文件 2. 掌握各种常用序列的表达,理解其数学表达式和波形表示之间的关系。 3. 掌握生成及绘制数字信号波形的方法。 4. 掌握序列的基本运算及实现方法。 5. 研究信号采样时采样定理的应用问题。 二、实验原理 1.序列的基本概念 离散时间信号在数学上可用时间序列{x(n)}来表示,其中x(n)代表序列的第n个数字,n 代表时间的序列,n 的取值范围为-∞< n<+∞的整数,n 取其它值x(n)没有意义。离散时间信号可以是由模拟信号通过采样得到,例如对模拟信号x a(t)进行等间隔采样,采样间隔为T,得到{x (nT )} a 一个有序的数字序列就是离散时间信号,简称序列。 2.常用序列 常用序列有:单位脉冲序列(单位抽样)δ(n)、单位阶跃序列u(n)、矩形序列R N(n)、 实指数序列、复指数序列、正弦型序列等。 3.序列的基本运算

序列的运算包括移位、反褶、和、积、标乘、累加、差分运算等。 4.序列的卷积运算 y(n)=∑ x (m )h (n ?m )+∞m=?∞ =x(n)*h(n) 上式的运算关系称为卷积运算,式中* 代表两个序列卷积运算。两个序列的卷积是一个序列与另一个序列反褶后逐次移位乘积之和,故称为离散卷积,也称两序列的线性卷积。其计算的过程包括以下4 个步骤。 (1)反褶:先将x (n )和h (n )的变量n 换成m ,变成x (m )和h (m ),再将h (m )以纵 轴为对称轴反褶成h (-m )。 (2)移位:将h (-m )移位n ,得h (n- m )。当n 为正数时,右移n 位;当n 为负数时, 左移n 位。 (3)相乘:将h (n -m )和x (m )的对应点值相乘。 (4)求和:将以上所有对应点的乘积累加起来,即得y (n )。 三、主要实验仪器及材料 PC 机、Matlab7.0。 四、实验内容 1.知识准备 认真复习以上基础理论,理解本实验所用到的实验原理。 2.离散时间信号(序列)的产生 利用MATLAB 产生和绘制下列有限长序列:

matlab实现:常见的离散时间信号

1. 单位抽样序列,或称为离散时间冲激,单位冲激: ? ??=01)(n δ 00≠=n n 如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即: ???=-01)(k n δ 0≠=n k n 2.单位阶跃序列 ? ??01)(n u 00<≥n n 在MATLAB 中可以利用ones( )函数实现。 );,1(N ones x = 3.正弦序列 )(cos )(0φω+=n A n x 这里, ,,0ωA 和φ都是实数,它们分别称为本正弦信号)(n x 的振幅,角频率和初始相位。 πω200=f 为频率。 4.复正弦序列 n j e n x ω=)( 5.实指数序列 n A n x α=)( 6. 随机序列 长度为N 的随机序列 基本数学函数参考教材P69页以及随后的使用说明。 注意使用行向量,特别是冒号运算符。 举例,长度为N 的实指数序列在MATLAB 中实现: n a x N n .^1 :0=-= 1. 单位采样 长度为N 的单位采样序列u(n)可以通过下面的MATLAB 命令获得:

u=[1 )1,1(-N zeros ]; 延迟M 个采样点的长度为N 的单位采样序列ud(n)(M

实验三___离散时间系统的时域分析

实验三 离散时间系统的时域分析 1.实验目的 (1)理解离散时间信号的系统及其特性。 (2)对简单的离散时间系统进行分析,研究其时域特性。 (3)利用MATLAB对离散时间系统进行仿真,观察结果,理解其时域特性。 2.实验原理 离散时间系统,主要是用于处理离散时间信号的系统,即是将输入信号映射成的输出的某种运算,系统的框图如图所示: (1)线性系统 线性系统就是满足叠加原理的系统。如果对于一个离散系统输入信号为时,输出信号分别为,即:。 而且当该系统的输入信号为时,其中a,b为任意常数,输出为,则该系统就是一个线性离散时间系统。 (2)时不变系统 如果系统的响应与激励加于系统的时刻无关,则该系统是时不变系统。对于一个离散时间系统,若输入,产生输出为,则输入为,产生输出为,即: 若,则。 通常我们研究的是线性时不变离散系统。 3.实验内容及其步骤 (1)复习离散时间系统的主要性质,掌握其原理和意义。 (2)一个简单的非线性离散时间系统的仿真 系统方程为: x = cos(2*pi*0.05*n); x1[n] = x[n+1] x2[n] = x[n] x3[n] = x[n-1] y = x2.*x2-x1.*x3; 或者:y=x*x- x[n+1]* x[n-1] 是非线性。 参考:% Generate a sinusoidal input signal clf; n = 0:200; x = cos(2*pi*0.05*n); % Compute the output signal x1 = [x 0 0]; % x1[n] = x[n+1] x2 = [0 x 0]; % x2[n] = x[n] x3 = [0 0 x]; % x3[n] = x[n-1]

离散时间信号的表示及运算

第2章 离散时间信号的表示及运算 2.1 实验目的 ● 学会运用MATLAB 表示的常用离散时间信号; ● 学会运用MATLAB 实现离散时间信号的基本运算。 2.2 实验原理及实例分析 2.2.1 离散时间信号在MATLAB 中的表示 离散时间信号是指在离散时刻才有定义的信号,简称离散信号,或者序列。离散序列通常用)(n x 来表示,自变量必须是整数。 离散时间信号的波形绘制在MATLAB 中一般用stem 函数。stem 函数的基本用法和plot 函数一样,它绘制的波形图的每个样本点上有一个小圆圈,默认是空心的。如果要实心,需使用参数“fill”、“filled”,或者参数“.”。由于MA TLAB 中矩阵元素的个数有限,所以MA TLAB 只能表示一定时间范围内有限长度的序列;而对于无限序列,也只能在一定时间范围内表示出来。类似于连续时间信号,离散时间信号也有一些典型的离散时间信号。 1. 单位取样序列 单位取样序列)(n δ,也称为单位冲激序列,定义为 ) 0()0(0 1)(≠=?? ?=n n n δ (12-1) 要注意,单位冲激序列不是单位冲激函数的简单离散抽样,它在n =0处是取确定的值1。在MATLAB 中,冲激序列可以通过编写以下的impDT .m 文件来实现,即 function y=impDT(n) y=(n==0); %当参数为0时冲激为1,否则为0 调用该函数时n 必须为整数或整数向量。 【实例2-1】 利用MATLAB 的impDT 函数绘出单位冲激序列的波形图。 解:MATLAB 源程序为 >>n=-3:3; >>x=impDT(n); >>stem(n,x,'fill'),xlabel('n'),grid on >>title('单位冲激序列') >>axis([-3 3 -0.1 1.1])

第七章 输入输出(IO)系统

一、选择 1、计算机所配置的显示器中,若显示控制卡上双薪存储器 的容量是1MB,则当采用800×600像素的分辨率时,每个像素最多可以有(C)种不同的颜色。 A.256 B.65536 C.16M D.4096 2、CRT的分辨率为1024×1024像素,像素的颜色数为256, 则刷新存储器的容量约为(B) A.256M B.1M C.256KB D.32MB 3、CRT的分辨率为1024×1024像素,像素的颜色总数为 256色,则刷新存储器每单元字长是(A) A.1个字节 B.2个字节 C.256个字节 D.1024个字节 4、若计算机屏幕上每个像素的灰度级为256,则刷新存储 每个单元的宽度是。 5、显示汉字采用点阵字库,若每个汉字用16×16的点阵表 示,7500个汉字的字库容量是240KB 。 6、磁盘存储器的等待时间通常是磁盘旋转半周所用的时间。 7、某磁盘的转速为7200r/min,传输速度为4MN/s,控制 器开销为1ms,要保证读或写一个512B的扇区的平均时间为11.3ms。那么,该磁盘的平均寻道时间不超过(D) A.3.9ms B.4.7ms C.5.5ms D.6.1ms 8、一个磁盘的转速为7200转/分,每个磁道有160个扇区,每扇区有512字节,那么理想情况下,其数据传输率为(C)A.7200×160KB/s B.7200KB/s C.9600KB/s D.19200KB/s 9、某计算机系统中,假定硬盘以中断方式与处理机进行数据输入输出,以16位为传输单位,传输率为50KB/s,每次传输的开销(包括中断)为100个CPU时钟,处理器的主频为50MHz,请问软盘数据传送时占处理器的时间比例是 10、设一个磁盘盘面共有200个磁道,盘面总存储容量60MB,磁盘旋转一周的时间为25ms,每磁道有8个扇区,各扇区之间有一间隙,磁头通过每个间隙需 1.25ms。则磁盘通道所需最大传输率是 11、下列有关程序中断I/O方式的叙述中,错误的是(D) A. 程序中断I/O方式是CPU和外设能够并行工作 B. 中断I/O方式下,外设和CPU直接交换数据 C. 中断I/O方式下,CPU会有额外的开销用于断点、现场 的保护和回复等 D. 中断I/O方式适用于像磁盘一类的高速设备 12、指令执行结果出现异常而引起的中断是(B) A.I/O中断 B.程序性中断 C.机器校验中断 D.外中断 13、主存故障引起的中断是(C) A.I/O中断 B.程序性中断 C.机器校验中断 D.外中断

离散时间系统的时域分析

第七章离散时间系统的时域分析 §7-1 概述 一、离散时间信号与离散时间系统 离散时间信号:只在某些离散的时间点上有值的 信号。 离散时间系统:处理离散时间信号的系统。 混合时间系统:既处理离散时间信号,又处理连 续时间信号的系统。 二、连续信号与离散信号 连续信号可以转换成离散信号,从而可以用离散时间系统(或数字信号处理系统)进行处理: 三、离散信号的表示方法:

1、 时间函数:f(k)<——f(kT),其中k 为序号,相当于时间。 例如:)1.0sin()(k k f = 2、 (有序)数列:将离散信号的数值按顺序排列起来。例如: f(k)={1,0.5,0.25,0.125,……,} 时间函数可以表达任意长(可能是无限长)的离散信号,可以表达单边或双边信号,但是在很多情况下难于得到;数列的方法表示比较简单,直观,但是只能表示有始、有限长度的信号。 四、典型的离散时间信号 1、 单位样值函数:? ??==其它001)(k k δ 下图表示了)(n k ?δ的波形。

这个函数与连续时间信号中的冲激函数 )(t δ相似,也有着与其相似的性质。例如: )()0()()(k f k k f δδ=, )()()()(000k k k f k k k f ?=?δδ。 2、 单位阶跃函数:? ??≥=其它001)(k k ε 这个函数与连续时间信号中的阶跃函数)(t ε相似。用它可以产生(或表示)单边信号(这里称为单边序列)。 3、 单边指数序列:)(k a k ε

比较:单边连续指数信号:)()()(t e t e t a at εε=,其 底一定大于零,不会出现负数。 (a) 0.9a = (d) 0.9a =? (b) 1a = (e) 1a =? (c) 1.1a = (f) 1.1a =?

离散时间信号表与运算

离散时间信号表与运算

————————————————————————————————作者:————————————————————————————————日期:

实验一 离散时间信号的表示与运算 一 实验目的 1、熟悉MATLAB 的绘图函数; 2、掌握单位取样序列、单位阶跃序列、矩形序列和正余弦序列的产生方法; 3、掌握离散时间信号基本运算的MATLAB 实现; 4、掌握离散时间信号线性卷积和运算的MATLAB 实现。 二 实验设备 1、计算机 2、MA TLAB R2007a 仿真软件 三 实验原理 1)序列相加和相乘 设有序列)(1n x 和)(2n x ,它们相加和相乘如下: ) ()()()()()(2121n x n x n x n x n x n x ?=+= 注意,序列相加(相乘)是对应序列值之间的相加(相乘),因此参加运算的两个序列必须具有相同的长度,并且保证位置相对应。如果不相同,在运算前应采用zeros 函数将序列左右补零使其长度相等并且位置相对应。在MATLAB 中,设序列用x1和x2表示,序列相加的语句为:x=x1+x2;然而要注意,序列相乘不能直接用x=x1*x2,该式表示两个矩阵的相乘,而不是对应项的相乘。对应项之间相乘的实现形式是点乘“.*”,实现语句为:x=x1.*x2。 2)序列翻转 设有序列:)()(n x n y -=,在翻转运算中,序列的每个值以n=0为中心进行翻转,需要注意的是翻转过程中序列的样值向量翻转的同时,位置向量翻转并取反。MATLAB 中,翻转运算用fliplr 函数实现。设序列)(n x 用样值向量x 和位置向量nx 表述,翻转后的序列 )(n y 用样值向量y 和位置向量ny 描述。 3)序列的移位 移位序列)(n x 的移位序列可表示为:)()(0n n x n y -=,其中,00>n 时代表序列右移 0n 个单位;00

实验一离散时间信号的分析

武汉工程大学 信号分析与处理实验一 专业:通信02班 学生姓名:李瑶华 学号:1304200113 完成时间:2016年6月1日

实验一: 离散时间信号的分析 一、实验目的 1.认识常用的各种信号,理解其数学表达式和波形表示。 2.掌握在计算机中生成及绘制数字信号波形的方法。 3.掌握序列的简单运算及计算机实现与作用。 4.理解离散时间傅立叶变换、Z 变换及它们的性质和信号的频域特性。 二、实验设备 计算机,MATLAB 语言环境。 三、实验基础理论 1.序列的相关概念 2.常见序列 ● 单位取样序列?? ?≠==0n 0,0 n 1n ,)(δ ● 单位阶跃序列? ??<≥=0,00 ,1)(n n n u ● 单位矩形序列???-≤≤=其他,01 0,1)(N n n R N ● 实指数序列)()(n u a n x n = ● 复指数序列n jw e n x )(0)(+=σ ● 正弦型序列)n sin()(0?+=w A n x 3.序列的基本运算 ● 移位 y(n)=x(n-m) ● 反褶 y(n)=x(-n) ● 和 )()()(21n x n x n y += ● 积 )()()(21n x n x n y ?= ● 标乘 y(n)=mx(n) ● 累加∑-∞ == n m m x n y )()( ● 差分运算 ???--=?-+=?) 1()()() ()1()(x n x n x n x n x n x n 后相差分前向差分

4.离散傅里叶变换的相关概念 ● 定义 ∑+∞ -∞ =-=n jwn jw e n x e X )()( ● 两个性质 1) [] )2()2()2()()(,2)(ππππ++∞ -∞ =+-+--== =∑w j n n w j jw n w j jwn jw e X e n x e X e e w e X 故有。由于的周期函数,周期为是 2) 当x (n )为实序列时,)(jw e X 的幅值)(jw e X 在π20≤≤w 区间内是偶对称函 数,相位)(arg jw e X 是奇对称函数。 5.Z 变换的相关概念 ● 定义 ∑+∞ -∞ =-= n n z n x z X )()((双边Z 变换) ∑+∞ =-=0 )()(n n z n x z X (单边Z 变换) 四、实验内容与步骤 1.离散时间信号(序列)的产生 利用MATLAB 语言编程产生和绘制单位样值信号、单位阶跃序列、指数序列、正弦序列及随机离散信号的波形表示。 1. 单位取样序列的产生函数 function [x,n]=impseq(n0,n1,n2) %产生x(n)=delta(n-n0);n1<=n,n0<=n2; %[x,n]=impseq(n0,n1,n2) if ((n0n2)|(n1>n2)) error('参数必须满足n1<=n0<=n2') end n=[n1:n2]; %x=[zeros(1,(n0-n1)),1,zeros(1,(n2-n0))]; x=[(n-n0)==0]; 2. 单位阶跃序列的产生函数 function [x,n]=stepseq(n0,n1,n2) %产生x(n)=u(n-n0);n1<=n,n0<=n2; %[x,n]=stepseq(n0,n1,n2) if ((n0n2)|(n1>n2)) error('参数必须满足n1<=n0<=n2') end n=[n1:n2];

离散时间信号分析

离散时间信号分析 实验目的:利用MA TLAB进行离散时间序列的基本运算,掌握基本的MA TLAB函数的编写和调试方法。 实验内容: (1)信号相加 x(n)=x1(n)+x2(n) 当两个相加的序列长度不同时或位置不对应时,首先必须调整二者的位置对齐,然后通过zeros函数左右补零使其长度相等后再相加。下面的参考代码利用函数sigadd说明了这些运算,其验证将在后续实验中进行。 MATLAB参考代码 function[y,n]=sigadd(x1,n1,x2,n2) %implements y(n)=x1(n)+x2(n) %--------------------------------------------- %[y,n]=sigadd(x1,n1,x2,n2) %y=sum sequence over n,which includes n1 and n2 %x1=first sequence over n1 %x2=second sequence over n2(n2 can be different from n1) % n=min(min(n1),min(n2)):max(max(n1),max(n2));%duration of y(n) y1=zeros(1,length(n)); y2=y1; y1(find((n>=min(n1))&(n<=max(n1))==1))=x1;%x1 with duration of y y2(find((n>=min(n2))&(n<=max(n2))==1))=x2;%x2 with duration of y y=y1+y2;%sequence addition (2)信号相乘 信号相乘,即两个序列的乘积(或称“点乘”),表达式为: x(n)=x1(n)?x2(n) 在MA TLAB中,用运算符“.*”实现。

计算机组成原理(第七章 输入输出系统

第七章输入输出系统 第一节基本的输入输出方式 一、外围设备的寻址 1.统一编址:将输入输出设备中控制寄存器、数据寄存器、状态寄存器等与内存单元一样看待,将它们和内存单元联合在一起编排地址,用访问内存的指令来访问输入输出设备接口的某个寄存器,从而实现数据的输入输出。 2.单独编址:将输入输出设备中控制寄存器、数据寄存器、状态寄存器单独编排地址,用专门的控制信号进行输入输出操作。 3.CPU与外围设备进行通信有三种类型: (1)CPU向外围设备发出操作控制命令。 (2)外围设备向CPU提供状态信息。 (3)数据在CPU与外围设备之间的传递。 历年真题 1.对外设统一编址是指给每个外设设置一个地址码。(2002年) 【分析】CPU与外设之间的信息传送是通过硬件接口来实现的,各种外设的硬件接口上又都包含有多个寄存器,如控制寄存器、数据寄存器、状态寄存器等。统一编址是将外设接口上的各种寄存器等同于内存储器的存储单元,通过使用访问内存单元的指令来访问外设接口上的各个寄存器,这样就可以使用访存指令来访问外设,输入输出操作简单,程序设计比较简便。由于外设接口上的寄存器种类和数量通常不止一个,所以一个外设至少对应一个以上的内存地址。 【答案】对外设统一编址是将外设接口上的寄存器等同内存单元,给每个外设设置至少一个地址码。 二、外围设备的定时 1.外围设备的定时方式有异步传输方式和同步定时方式两种。 2.实现输入输出数据传输的方式主要有:程序控制方式、直接存储访问(DMA)方式、通道方式。程序控制方式又可分为程序查询方式和中断方式两种。 历年真题 1.对I/O数据传送的控制方式,可分为程序中断控制方式和独立编址传送控制方式两种。(2001年)【分析】对1/O数据传送的控制方式,可分为程序直接控制方式、程序中断控制方式、DMA控制方式、通道控制方式等。程序中断控制方式只是其中的一种方法,独立编址是指对1/O设备的控制寄存器、数据寄存器、状态寄存器等单独进行地址编排,使用专门的指令对其进行操作,可用在各种数据传送的控制方式中。 【答案】对1/O数据传送的控制方式,可分为:程序控制方式、DMA方式、通道控制方式等 三、程序查询输入输出方式 了解程序查询输入输出过程即可(从未考过)。 第二节中断 一、中断的基本概念 1.中断:是指CPU在接到随机产生的中断请求信号后,暂停原程序,转去执行相应的中断处理程序,以处理该随机事件,处理完毕后返回并继续执行原程序。 2.中断方式的特点:中断方式的输入输出操作可以减少CPU等待外围设备的时间,提高CPU的工作效率。 3.中断方式的应用范围:中断方式主要应用于处理复杂随机事件、控制中低速1/O。

实验四-离散时间系统的频域分析(附思考题程序)

实验四 离散时间系统的频域分析 1.实验目的 (1)理解和加深傅里叶变换的概念及其性质。 (2)离散时间傅里叶变换(DTFT)的计算和基本性质。 (3)离散傅里叶变换(DFT)的计算和基本性质。 2.实验原理 对离散时间信号进行频域分析,首先要对其进行傅里叶变换,通过得到的频谱函数进行分析。 离散时间傅里叶变换(DTFT ,Discrete-time Fourier Transform)是傅立叶变换的一种。它将以离散时间nT (其中,T 为采样间隔)作为变量的函数(离散时间信号)f (nT )变换到连续的频域,即产生这个离散时间信号的连续频谱()iw F e ,其频谱是连续周期的。 设连续时间信号f (t )的采样信号为:()()()sp n f t t nT f nT d ¥ =-? = -?,并且其傅里叶变 换为:()()(){}sp n iwt f t f nT t nT dt e d ¥ ¥ -? =-? --= ? òF 。 这就是采样序列f(nT)的DTFT::()()iwT inwT DTFT n F e f nT e ¥ -=-? = ?,为了方便,通常将采 样间隔T 归一化,则有:()()iw inw DTFT n F e f n e ¥ -=-? = ?,该式即为信号f(n)的离散时间傅 里叶变换。其逆变换为:()1()2iw DTFT inw F e dw f n e p p p -=ò。 离散傅里叶变换(DFT ,Discrete-time Fourier Transform )是对离散周期信号的一种傅里叶变换,对于长度为有限长信号,则相当于对其周期延拓进行变换。在频域上,DFT 的离散谱是对DTFT 连续谱的等间隔采样。 21 1 20 ()()| ()()DFT k DTFT k w N knT N N i iwT iwnT N n n F w F e f nT e f nT e p p =----==== = 邋 长度为N 的有限长信号x(n),其N 点离散傅里叶变换为: 1 ()[()]()kn N N n X k DFT x n x n W -=== ?。 X(k)的离散傅里叶逆变换为:10 1()[()]()kn N N k x n IDFT X k X k W N --===?。 DTFT 是对任意序列的傅里叶分析,它的频谱是一个连续函数;而DFT 是把有限长序列作为周期序列的一个周期,对有限长序列的傅里叶分析,DFT 的特点是无论在时域还是频域

实验一离散时间信号与系统分析

实验一 离散时间信号与系统分析 一、实验目的 1.掌握离散时间信号与系统的时域分析方法。 2.掌握序列傅氏变换的计算机实现方法,利用序列的傅氏变换对离散信号、系统及系统响应进行频域分析。 3.熟悉理想采样的性质,了解信号采样前后的频谱变化,加深对采样定理的理解。 二、实验原理 1.离散时间系统 一个离散时间系统是将输入序列变换成输出序列的一种运算。若以][?T 来表示这种运算,则一个离散时间系统可由下图来表示: 图 离散时间系统 输出与输入之间关系用下式表示 )]([)(n x T n y = 离散时间系统中最重要、最常用的是线性时不变系统。 2.离散时间系统的单位脉冲响应 设系统输入)()(n n x δ=,系统输出)(n y 的初始状态为零,这是系统输出用)(n h 表示,即)]([)(n T n h δ=,则称)(n h 为系统的单位脉冲响应。 可得到:)()()()()(n h n x m n h m x n y m *=-= ∑∞ -∞= 该式说明线性时不变系统的响应等于输入序列与单位脉冲序列的卷积。 3.连续时间信号的采样 采样是从连续信号到离散时间信号的过渡桥梁,对采样过程的研究不仅可以了解采样前后信号时域何频域特性发生的变化以及信号内容不丢失的条件,而且有助于加深对拉氏变换、傅氏变换、Z 变换和序列傅氏变换之间关系的理解。 对一个连续时间信号进行理想采样的过程可以表示为信号与一个周期冲激脉冲的乘 积,即:)()()(?t t x t x T a a δ=

其中,)(?t x a 是连续信号)(t x a 的理想采样,)(t T δ是周期冲激脉冲 ∑∞ -∞=-= m T mT t t )()(δδ 设模拟信号)(t x a ,冲激函数序列)(t T δ以及抽样信号)(?t x a 的傅立叶变换分别为)(Ωj X a 、)(Ωj M 和)(?Ωj X a ,即 )]([)(t x F j X a a =Ω )]([)(t F j M T δ=Ω )](?[)(?t x F j X a a =Ω 根据连续时间信号与系统中的频域卷积定理,式(2.59)表示的时域相乘,变换到频域为卷积运算,即 )]()([21)(?Ω*Ω=Ωj X j M j X a a π 其中 ?∞ ∞ -Ω-==Ωdt e t x t x F j X t j a a a )()]([)( 由此可以推导出∑∞-∞=Ω-Ω=Ωk s a a jk j X T j X )(1)(? 由上式可知,信号理想采样后的频谱是原来信号频谱的周期延拓,其延拓周期等于采样频率。根据香农定理,如果原信号是带限信号,且采样频率高于原信号最高频率的2倍,则采样后的离散序列不会发生频谱混叠现象。 4.有限长序列的分析 对于长度为N 的有限长序列,我们只观察、分析在某些频率点上的值。 ???-≤≤=n N n n x n x 其它010),()( 一般只需要在π2~0之间均匀的取M 个频率点,计算这些点上的序列傅立叶变换: ∑-=-=1 0)()(N n jn j k k e n x e X ωω 其中,M k k /2πω=,1,,1,0-=M k 。)(ωj e X 是一个复函数,它的模就是幅频特 性曲线。 三、主要实验仪器及材料

离散时间信号与系统

实验:离散时间信号与系统的时域分析 一、实验目的 1、熟悉和掌握常用的用于信号与系统时域仿真分析的MA TLAB函数; 2、掌握离散时间信号的MATLAB产生,掌握用周期延拓的方法将一个非周期信号进行周期信号延拓形成一个周期信号的MA TLAB编程; 3、牢固掌握系统的单位序列响应的概念,掌握MATLAB描述LTI系统的常用方法及有关函数,并学会利用MATLAB求解LTI系统响应,绘制相应曲线。 基本要求:掌握用MATLAB描述离散时间信号的方法,能够编写MATLAB程序,实现各种信号的时域变换和运算,并且以图形的方式再现各种信号的波形。掌握线性时不变离散系统的时域数学模型用MATLAB描述的方法,掌握线性常系数差分方程的求解编程。 二、实验原理 信号(Signal)一般都是随某一个或某几个独立变量的变化而变化的,例如,温度、压力、声音,还有股票市场的日收盘指数等,这些信号都是随时间的变化而变化的,还有一些信号,例如在研究地球结构时,地下某处的密度就是随着海拔高度的变化而变化的。一幅图片中的每一个象素点的位置取决于两个坐标轴,即横轴和纵轴,因此,图像信号具有两个或两个以上的独立变量。 在《信号与系统》课程中,我们只关注这种只有一个独立变量(Independent variable)的信号,并且把这个独立变量统称为时间变量(Time variable),不管这个独立变量是否是时间变量。 在自然界中,大多数信号的时间变量都是连续变化的,因此这种信号被称为连续时间信号(Continuous-Time Signals)或模拟信号(Analog Signals),例如前面提到的温度、压力和声音信号就是连续时间信号的例子。但是,还有一些信号的独立时间变量是离散变化的,这种信号称为离散时间信号。前面提到的股票市场的日收盘指数,由于相邻两个交易日的日收盘指数相隔24小时,这意味着日收盘指数的时间变量是不连续的,因此日收盘指数是离散时间信号。 而系统则用于对信号进行运算或处理,或者从信号中提取有用的信息,或者滤出信号中某些无用的成分,如滤波,从而产生人们所希望的新的信号。系统通常是由若干部件或单元组成的一个整体(Entity)。系统可分为很多不同的类型,例如,根据系统所处理的信号的不同,系统可分为连续时间系统(Continuous-time system)和离散时间系统(Discrete-time system),根据系统所具有的不同性质,系统又可分为因果系统(Causal system)和非因果系统(Noncausal system)、稳定系统(Stable system)和不稳定系统(Unstable system)、线性系统(Linear system)和非线性系统(Nonlinear system)、时变系统(Time-variant system)和时不变系统(Time-invariant system)等等。 然而,在信号与系统和数字信号处理中,我们所分析的系统只是所谓的线性时不变系统,这种系统同时满足两个重要的基本性质,那就是线性性和时不变性,通常称为线性时不变(LTI)系统。 1. 信号的时域表示方法 1.1将信号表示成独立时间变量的函数

第7章输入输出系统习题

1.在微型机系统中.I/O设备通过( B )与主板的系统总线相连接。 A. DMA控制器 B.设备控制器 C.中断控制器 D. I/O端口 I/O设备不可能真接与主板总线相连接,总是通过设备控制器来相连的。 2.下列关于I./O指令的说法,错误的是( D )。 A. I/O指令是CPU系统指令的一部分 B.I/O指令是机器指令的一类 C.I/O指令反映CPU和T/O设备交换信息的特点 D. I/O指令的格式和通用指令格式相同 I/O指令是指令系统的一部分,是机器指令,其为了反映与I/O设备交互的特点,格式和其他指令相比有所不同。 3.以下关于通道程序的叙述中,正确的是( A )。 A. 通道程序存放在主存中 B.通道程序存放在通道中 C.通道程序是由CPU执行的 D.通道程序可以在任何环境下执行I/O操作 通道程序存放在主存而不是存放在通道中,豳通道从主存中取出并执行。通道程序由通道执行,目.只能在具有通道的I/O系统中执行。 4.挂接在总线上的多个I/O设备( B )。 A.只能分时向总线发送数据,并只能分时从总线接收数据 B.只能分时向总线发送数据,但可同时从总线接收数据 C.可同时向总线发送数据,并同时从总线接收数据 D. 可同时向总线发送数据,但只能分时从总线接收数据 为了使总线上的数据不发生“碰撞”,挂接在总线上的多个设备只能分时地向总线发送数据。总线上接收数据的设备可以有多个,因为接收数据的设备不会对总线产生“干扰”。如向一个人说话可以多个人听,如果多个人说话一个人听的话,那会是非常混乱的场面。5.一台字符显示器的VRAM中存放的是( A )。 A. 显示字符的ASCII码 B.BCD码 C.字模 D.汉字内码 在字符显示器中的VRAM存放ASCII码用以显示字符。 6.CRT的分辨率为1024x1024像素,像素的颜色数为256,则刷新存储器的每单元字长为( B ),总容量为( )。 A.8B,256MB B.8bit,IMB C. 8bit,256KB D. 8B,32MB 刷新存储器中存储单元的字长取决于显示的颜色数,颜色数为m.字长为n,二者的关系为2n=rn。本题颜色数为256.因此刷新存储器单元字长为8位。刷新存储器的容量是每个像素点的位数和像素点个数的乘积,故而刷新存储器的容量为1024x1024x8bit= IMB。

离散时间系统的分析

课程设计报告 课程设计题目:离散时间系统分析学号:201420130206 学生姓名:董晓勇 专业:通信工程 班级:1421301 指导教师:涂其远 2015年12月18日

离散时间系统的分析 一、设计目的和意义 1 . 目的: (1)深刻理解卷积和、相加、相乘运算,掌握求离散序列卷积和、相加相乘的计算方法;(2)加深理解和掌握求离散序列Z变换的方法; (3)加深和掌握离散系统的系统函数零点、函数极点和系统时域特性、系统稳定性的关系。 2 . 意义: 在对《信号与系统》一书的学习中,进行信号与系统的分析是具有十分重要的意义,同时也是必不可少的。利用matlab函数,只需要简单的编程,就可以实现系统的时域、频域分析,对系统特性进行分析,为实际的系统设计奠定了基础。本设计在离散系统Z域分析理论的基础上,利用matlab对离散系统的稳定性和频域响应进行了分析。 二、设计原理

第一部分:对离散时间系统的时域进行分析呈 对离散时间信号的代数运算(相加、相乘、卷积和),是在时域进行分析。相加用“+”来完成,相乘用“·*”来完成,卷积和则用conv 函数来实现,具体形式为y=conv(x1,x2,….),其中x1,x2,…..为输入的离散序列 ,y 为输出变量。 在零初始状态下,matlab 控制工具箱提供了一个filter 函数,可以计算差分方程描述的系统的响应,其调用形式为: y=filter(b,a,f) 其中,a=[a0,a1,a2,…]、b=[b0,b1,b2,….]分别是系统方程左、右边的系数向量,f 表示输入向量,y 表示输出向量。 第二部分:对离散时间系统的Z 域进行分析 matlab 工具箱提供了计算Z 正变换的函数ztrans,其调用形式为: F=zrtans(f) %求符号函数f 的Z 变换,返回函数的自变量为z 。 Matlab 的zplane 函数用于系统函数的零极点图的绘制,调用方式为: zplane(b,a)其中,b 、a 分别为系统函数分子、分母多项式的系数向量。 matlab 中,利用freqz() 函数可方便地求得系统的频率响应,调用格式为: freqz(b,a,N) 该调用方式将绘制系统在0~PI 范围内N 个频率等分点的幅频特性和相频特性图。 三、 详细设计步骤 1.自己设计两个离散时间序列x1、x2,对其进行相加,相乘,卷积运算,并显示出图形。 2.根据已知的LTI 系统:y[n]-0.7y[n-1]-0.6y[n-2]+y[n-3]=x[n]+0.5[n-1],得其在Z 域输 入输出的传递函数为: 1 12310.5()10.70.6z H z z z z ----+= --+ 利用matlab 求:(1)系统函数的零点和极点,并在z 平面显示他们的分布;(2)画出幅频响应和相频响应的特性曲线。 四、 设计结果及分析 (1).自行设计产生两个离散序列信号,对其进行相加、乘及卷积运算

实验一-离散时间信号分析

实验一 离散时间信号分析 一、实验目的 1. 初步掌握 Matlab 的使用,掌握编写M 文件和函数文件 2. 掌握各种常用序列的表达,理解其数学表达式和波形表示之间的关系。 3. 掌握生成及绘制数字信号波形的方法。 4. 掌握序列的基本运算及实现方法。 5. 研究信号采样时采样定理的应用问题。 二、实验原理 1.序列的基本概念 离散时间信号在数学上可用时间序列{x (n )}来表示,其中x (n )代表序列的第n 个数字,n 代表时间的序列,n 的取值范围为-∞< n<+∞的整数,n 取其它值x (n )没有意义。离散时间信号可以是由模拟信号通过采样得到,例如对模拟信号x a (t ) 进行等间隔采样,采样间隔为T ,得到{x (nT )} a 一个有序的数字序列就是离散时间信号,简称序列。 2.常用序列 常用序列有:单位脉冲序列(单位抽样)δ (n )、单位阶跃序列u (n )、矩形序列R N (n ) 、 实指数序列、复指数序列、正弦型序列等。 3.序列的基本运算 序列的运算包括移位、反褶、和、积、标乘、累加、差分运算等。 4.序列的卷积运算 y(n)=∑x (m )h (n ?m )+∞m=?∞=x(n)*h(n) 上式的运算关系称为卷积运算,式中* 代表两个序列卷积运算。两个序列的卷积是一个序列与另一个序列反褶后逐次移位乘积之和,故称为离散卷积,也称两序列的线性卷积。其计算的过程包括以下4 个步骤。 (1)反褶:先将x (n )和h (n )的变量n 换成m ,变成x (m )和h (m ),再将h (m )以纵 轴为对称轴反褶成h (-m )。 (2)移位:将h (-m )移位n ,得h (n- m )。当n 为正数时,右移n 位;当n 为负数时, 左移n 位。 (3)相乘:将h (n -m )和x (m )的对应点值相乘。 (4)求和:将以上所有对应点的乘积累加起来,即得y (n )。 三、主要实验仪器及材料 PC 机、Matlab7.0。

相关主题
文本预览
相关文档 最新文档