i.Posei's blog

Happiness only real when shared!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

小知识,大应用--正交向量在CDMA中的运用

Posted on 2006-11-19 19:20  i.Posei  阅读(2803)  评论(4编辑  收藏  举报

     数学这东西,从幼儿园就开始学了,对大多数人来说,除了应付考试和算帐外,实在是没有多少用处。谁都知道科技的进步和数学有着紧密的联系,只不过我们没感觉到而已。这篇文章介绍了CDMA是如何使用正交向量的特性来完成信道复用任务的。

什么是CDMA?

     CDMA(Code Division Multiple Access)中文翻译为“码分多址”,它是信道复用的一种方法。最初它是用于军事通信,因为这种系统的抗干扰能力很强。随着技术的进步,CDMA设备的价格和体积都大幅下降,因此现在也广泛使用在民用移动通信中,特别是在无线局域网中。

什么是正交向量?它有那些特性?

     n维向量:n个有次序的数a1、a2、…、an所组成的数组称为n维向量。
     向量的内积:设有n维向量x=(x1,x2,x3,…,xn)T,y=(y1,y2,y3,…,yn)T,令[x,y]=x1y1+x2y2+…+xnyn,则称[x,y]为向量x和y的内积。
     向量累计的一些特性:[x,y]=[y,x];[ax,y]=a[x,y](a为实数);[x+y,z]=[x,y]+[y,z]。如果[x,y]=0则称向量x与y正交。如x=0,则x与任何向量都正交。

CDMA是如何使用正交向量的?


     CDMA首先将每一个比特时间划分为m个短的时间间隔,称为码片。m通常是64或128。使用CDMA的每个站都被指派了一个唯一的m bit的码片序列。一个站如何要发送比特1,则发送它自己的码片序列。如果要发送比特0,则发送该码片序列的二进制反码。比如,指派给S站的码片序列是10101101,当S要发送比特1时,它就发送码片序列10101101,而当要发送比特0时,就发送01010010。为了方便,按照管理将码片中的0写为-1,将1写为+1。因此S站的码片序列就是(+1 -1 +1 -1 +1 +1 -1 +1)。
     在CDMA中,每一个站分配的码片序列不光互不相同而且要求互相正交。由上边的正交向量的特性可以知道,任意两个站之间的码片序列的内积都为0。此外,某一站码片序列和其他各站码片序列的反码的向量内积也为0,而与自己的码片序列的反码的内积为-1。正是这一点使得各个站能够在收到的信息中分离出发往自己的信息。
     接收站具体是如何分离发给自己信息的呢?现在假如X站要接收S站发送的数据,X站必须知道S站所特有的码片序列。X站使用它得到的码片序列与接收到的信号进行内积(注意一点,X站收到的是各个站发送序列之和)。那么其他站的信号都被过滤掉,而只剩下S站发送的信号。当S站发送比特1时,在X站计算内积的结果便是+1,当S站发送比特0时,这一结果便是-1。
     下图是CDMA的工作原理。这里假设每个码元扩频为8个码片,S站发送110,其码片序列为(-1 -1 -1 +1 +1 -1 +1 +1),发送的扩频信号为Sx;T站发送110,其码片序列为(-1 -1 +1 -1 +1 +1 +1 -1),发送的扩频信号为Tx。此为每个站收到的都是叠加信号Tx+Sx。

     由上边的描述,可以清楚的了解正交向量及其特性在CDMA里是如何运用的。其实这一原理在我们编写特定应用程序的时候也是很有用的。
     这篇文章参考了谢希仁编著的《计算机网络》和同济大学数学教研室编写的《工程数学:线型代数》。