基带ofdm通信系统教学平台的制作方法

文档序号:7945624阅读:195来源:国知局
专利名称:基带ofdm通信系统教学平台的制作方法
技术领域
本发明是一种用于教学的基带OFDM通信系统平台,在一块平台上完成发送接收 全过程。属于多载波通信系统中的正交频分复用技术领域。
背景技术
(Orthogonal Frequency Division Multiplexing,OFDM) i—禾中$ 载波通信技术,它将发送数据调制到多个并行子载波上,将一路高速串行数据流转化为多 路低速并行数据流,显著降低了码间干扰的影响,在接收端不必进行复杂的均衡就可达到 理想的效果。加上OFDM系统所独有的子信道之间正交和频谱重叠的特征,可以根据各子信 道不同的传输条件灵活分配系统资源并达到极高的频谱利用率。因此,使用OFDM技术解决 机载航拍系统中的高速多媒体数据通信问题是一种优选方案。目前,OFDM技术已广泛应用 于数字音视频广播、ADSL和无线局域网等领域,OFDM与其他技术相结合还可解决水下高速 通信和宽带移动接入的难题。因此,该技术已经受到学术界和产业界日益密切的关注,被普 遍认为是未来通信系统的核心技术之一。

发明内容
建立完整的基带OFDM系统教学平台,实现各种信号处理算法,并对多种信道环境 进行模拟,利用该平台可以对OFDM系统在各种通信环境下的性能进行测试、分析和评估, 从而为理论研究和实际应用提供有益的参考。在发射端,信源生成的序列首先经过卷积编码和交织以提供差错控制机制,随后 的符号映射模块在自适应比特分配算法的控制下将二进制比特映射成星座图上的符号,串 并转换和IFFT模块将串行的符号序列调制到并行的多个子载波上,完成多载波调制的功 能。IFFT处理之后进行并串转换,得到的序列通过峰均功率比抑制算法以限制可能出现的 大的峰值功率。添加循环前缀(CP)的操作用来消除多径带来的符号间干扰(ISI)和信道 间干扰(ICI)。最后对符号组帧发送。组帧的过程主要包括添加帧头、导频序列和帧尾,这 些操作用于保证接收端进行准确的时间同步和信道估计,并对发送数据提供保护。通过软 件编程模拟多径衰落、信道时变和加性噪声等于扰因素,将畸变后的信号送入接收端处理。 接收端首先进行解帧、解时隙及去除循环前缀的操作以消除冗余,串并转换和FFT将时域 信号变换至频域,完成多载波解调的功能,FFT的输出送入信道估计模块并完成子载波均衡 和比特分配,比特分配的结果反馈给发射端供符号映射模块决定各子信道的调制阶数。符 号解映射模块将符号还原为二进制序列,最后,并串转换、解交织和信道解码去除差错控制 的冗余信息,还原二进制序列,传给信宿。


图1为基带OFDM系统框2为系统实现框图
具体实施例方式设计的系统信道编码部分采用(2,1,7)归零卷积码,约束长度为7,码率为50%。 生成式为:gl = [1011011], g2 = [1111001]。卷积码编码的实现过程如下stepl 生成三个数组input [],shift_reg[],output □,分别用于存储输入序列、 寄存器单元和输出序列。Shift_reg[]初始化为零。St印2 对input 口中的每个输入比特,依据生成式和shift_reg[]中的值计算 出两个编码后的比特,存入output□,并更新shift_reg[]的内容。持续这一过程,直至 input[]中的每个比特都完成了编码。step3 在信源序列的末尾补充K-I个零值(K为约束长度),对这些零值进行编 码。这一步的作用是使编码结束后编码器的状态归零,否则译码算法无法正确解码。卷积码的解码方法很多,其中Viterbi算法从序列整体似然度最大这个意义上说 是卷积码的最佳译码算法,它具有固定的译码延时,并且适合硬件实现,因此本设计给出的 信道译码模块使用Viterbi算法。Viterbi译码器本质上说是一个最大似然序列估计器,它 的基本思想是搜遍网格图找出最可能的序列。虽然Viterbi算法具有很多优点,但当编码序列较长时,译码延时对大多数应用 场合来说无法忍受,同时存储全部留存路径需要使用大量的存储单元,这也是不可取的。因 此在实现中采用改进的Viterbi算法,具体方法是在任意的给定时间t内只保留每个留 存路径里最新的S个译码信息符号。每当收到一个新的信息符号时,译码器对各留存路 径的分支度量进行比较,找出具有最小分支度量的留存路径,再在网格图上沿时间回溯δ 个分支,将该留存路径上最早的信息符号判决输出。仿真实验表明,当δ >5Κ时,与最佳 Viterbi算法相比,性能虽有下降,但使用存储单元数和译码延时却大为减小。把在时刻i,状态Sj所对应的网格图节点记作Sjii,每个网格图节点被分配一个最 小分支度量值,记作V (Sm)。count表示当前保留的路径长度。算法实现的步骤为St印1 根据编码器结构生成网格图。st印2 设 V (S0,0) = 0,i = 1,count = 1。step3 在时刻i,对于进入每一个节点的所有路径计算其分支度量,关于分支度 量的计算,硬判决时采用汉明距离,软判决时采用欧氏距离。step4 令V (Sj,为在i时刻到达与状态Sj相对应的节点Sj,,的最小分支度量。 该路径为留存路径,将其余非留存路径从网格图中删除。以这种方式可以从S"处生成M条 最小路径,针对本文所采用的编码器,M就等于移位寄存器系统的状态数。st印5 δ表示事先预设的回溯深度,其取值应满足δ > 5Κ。若count < δ,令 count = count+1,返回 step3。st印6:当count = δ时,沿网格图中留存路径里具有最小分支度量的路径回溯 δ个分支,将此分支最早的信息符号译码输出,并且把所有留存路径的最前一个分支删除。 L表示输入的待编码信息序列的长度,m为编码器中移位寄存器的长度,若i < L+m,令i = i+Ι,返回st印3。st印7 —但i =L+m,则以状态Stl为结束状态,沿着该状态对应节点所发出的留存路径回溯,得到剩余的译码序列。stepS 将译码输出序列的最后K-1个值删去,即得最终结果。交织和解交织用于将实际信道中的突发错误离散成随机错误,从而进一步提高系 统的抗干扰性能。交织的方式有卷积交织和分组交织两种,出于系统实时性对于处理速度 的要求,本设计采用实现较为简单的分组交织。OFDM作为一种多载波调制技术,其突出特点就是,使用多个并行的子载波传输数 据,这不仅可以有效的抵抗ISI,还可以根据各子信道的传输条件灵活的分配系统资源,自 适应比特分配正是基于这一思想。自适应比特分配的基本原理为接收端利用信道估计技术估计出各子信道的频率 响应和信道噪声,比特分配模块根据各子信道的信噪比决定调制方式,信噪比高的信道分 配较多的比特数,即使用高阶调制,信噪比低的信道分配较少的比特数,即使用低阶调制, 对于深衰落信道不分配比特。比特分配的结果反馈回发送端,发送端的符号映射模块便根 据这一结果将交织器输出的比特按照不同的组合方式映射成相应的星座点。自适应比特分配算法的实现过程为stepl 根据公式(1)计算每一子信道应当分配的比特数 其中N为可用子信道总数,i为子信道标号,Rt为待分配总比特数,氏和o ;2分别为 第i个子信道的频率响应和噪声方差,对于信道噪声为高斯白噪声的情况,各子信道的噪 声方差相同。st印2 除去不可用的子载波若氏< 0. 1,则将第i个子信道标记为坏信道,将其 从可用子载波中剔除。记坏信道个数为M,则令N = N-M,若M不为零则返回stepl重新进 行分配直至M = 0,否则进入st印3。step3 :对所有氏做规格化处理。设系统所用最高调制阶数为P,则氏=PXR,/ st印4:对所有可用子信道上分配的比特数进行调整。对于i = 1,2...N,若该子 信道为坏信道则不作处理,否则记调整后的结果为戎,按(2)式进行调整 记“砍⑴-代-戎(3) step5 计算H若Btotal = RT,结束计算,否则进入st印6和st印7。
/=lst印6 如果Bt。tall>RT,则在戎关0的可用子信道中选择diff⑴最小的子信道,从 它分配到的比特中减去1比特,重新计算i,,diff(i)和Bt。tal。重复执行st印6,直至Bt。tal =RT,算法结束。step7 如果Bt。tal < RT,则在i乂 P的可用子信道中选择diff⑴最大的子信道,从它分配到的比特中加上1比特,重新计算及,,diff(i)和Bt。tal。重复执行st印7,直至Bt。tal =Rt,算法结束。比特分配结果反馈至发送端,发送端的符号映射模块依据这一结果完成自适应调 制,将比特序列映射成星座点。考虑到系统复杂度不宜过高,本系统中的符号映射部分采用 四种调制类型,分别为BPSK、QPSK、8PSK和16PSK,符号映射方式均采用可靠性较高的格雷 映射。这样,各子信道可能分配到的比特数包括0、1、2、3、4五种情况。(0表明相应信道为 深衰落信道,不传输信息)在具体实现上,符号映射采用查表法完成,“以空间换时间”,确保系统满足实时性 要求。符号解映射即与之相反的自适应解调过程,首先根据信道估计的结果和接收到的符 号估计出发送的符号,再根据比特分配的结果查找相应的表格完成。能够使用IFFT实现多载波调制,相应的,使用FFT实现多载波解调,是OFDM的一 大优点,这使得OFDM系统可以很方便地在DSP平台上得以实现。对于本设计的基带OFDM系统,多载波调制和解调仍然基于IFFT和FFT实现,主要 需要解决FFT运算点数和子载波个数的问题,理论上讲,两者取同样的数值即可,但考虑到 直流量不宜进行传输,并且在实际中,生成的序列最终要通过D/A变换,然后送入信道,而 ADC芯片有一定的频率范围,过高的频率分量不能无失真的通过,所以,频率较高的子载波 不适合传输数据。综上,本设计的系统完成256点的IFFT/FFT(相当于256个子信道),但 序号为0的子载波(对应直流分量)和序号为65 191的子载波(对应高频分量)不携 带数据,只使用与低频分量相对应的其余128个子载波。对于发送端的多载波调制,需要在 对应位补零形成“虚载波”之后再完成IFFT,对于接收端的多载波解调,则在FFT之后只取 出数据子信道的值供信道估计模块处理。由于OFDM系统的输出是多个子信道信号的叠加,若在某一时刻各子载波同时达 到最大峰值,则会造成叠加的信号瞬时功率远大于平均功率,即呈现比较大的峰值平均功 率比(Peak-to-Average Power Ratio,PAPR)。这对发射机和接收机内放大器的线性动态 范围提出了很高要求。如果信号峰值超过了放大器的动态范围,则会由丁削波而产生信号 畸变,进而引起ICI。较高的PAI3R是OFDM系统所固有的一个缺点,严重限制了 OFDM技术的 实用化,因此,研究PAPR抑制算法并基于DSP实现具有重要的意义。目前已经出现了一系列的峰均比抑制算法,包括幅度剪切、剪切滤波、动态星座扩 张(ActiveConstellation Extension, ACE)以及添加辅助信息的方式例如部分传输序列 (Partial Transmit Sequence, PTS)和选择性映射(Selected Mapping, SLM)等等。其中, 幅度剪切和剪切滤波的方法操作简单,对峰值功率的抑制效果好,但会造成系统误码率的 升高,ACE方法不仅可以较好的抑制PAPR,还可以改善系统的误码性能,但缺点是运算复杂 度高,添加辅助信息的方法也可以达到较好的峰值功率抑制效果,但在总带宽固定的情况 下,辅助信息的引入降低了系统有效的数据传输速率。综合比较上述算法的优缺点,本系统中采用ACE方法完成峰均功率比抑制,同时, 通过对算法和程序的改进与优化来解决该方法复杂度过高的问题。算法的实现步骤如下stepl 对于由IFFT变换生成的每个OFDM符号的采样序列{χ[η]},计算峰值功率 和平均功率。如果两者之比低于要求的门限,则算法结束,否则进入step2。step2:将每个采样的幅度和平均功率的平方根作比较,若两者之比高于预设门限,则对该点进行限幅处理,这一过程称为剪切。记剪切后的序列为可…,R为预设门限,平 均功率的平方根为A,则剪切过程可表示为 st印3 对剪切后的差值序列lx。lip[n]}进行FFT,得到频域序列{X。lip[k]}。step4 对比{x[n]}的频域样本{X[k]]}和{X。lip[k]},将{X。lip[k]}中对应已用子 载波之外的分量都置零,对带内星座点,若在允许的扩张区内发生移动则保持不变,否则将 其移回原位。st印5 对频域序列{X。lip[k]}进行IFFT,重新生成时域序列{x'。lip[n]}。st印6 根据步长算法确定调节步长μ。st印7:生成调节后的符号序列χ' [η] =χ[η] + μχ'。lip[n]。st印8:检查χ' [η]的峰均功率比,若符合要求则将χ' [η]输出,否则重复 st印2 st印7,直至生成序列的PAI3R符合要求。上面St印6所提到的调节步长μ,使用近似梯度步长算法确定,描述如下简记上一次生成的OFDM符号为XiJIjcdv =X-X1,将Cclip执行FFT变换到频域,消
除带外干扰及带内的收缩量,再执行IFFT程序变换回时域,得到一。调节后的OFDM符号采 样记为xi+1 = Xi+μ c、最优的μ应使得xi+1的峰值尽量低,即 为了得到最佳的l·^需要验证所有的可能情况,但这样的运算量会非常庞大,实际 应用中只要选择一个次优的μ就可以了。记上一次迭代中峰值最大的点是χΚη.],一般 来说在这一次迭代后,很有可能的情况是仍然对应着最高峰值(尽管相对于原峰值已 经下降)。假设有另一个点nt经过迭代后,峰值达到了和相同的程度,即 移项得0= (I Ci [nmax] 12_ I Ci [nt] |2) μ 2+1 Xi [nfflax] |2-1 Xi [nt] |2
-2 (Re (x1 [nmax]Ci [nmax])-Re (x1 [nt]Ci[nt])) μ (8)由于xi+1[n] = [η] + μ [η],其中,向平行于?⑷的方向的投影分量是 对|xi+1[n]|贡献最大的,而垂直方向的投影分量需要较大的值才能达到相同的效果,因此 主要考虑同相投影分量,这样,寻求μ的算法过程可以简化为Stepl 对于 Xi,查找它的模的最大值五=mfx 丨 l,"max = arg max | xl[n\ |。st印2 对每个采样点按(9)式求Ci [η]向Xi [η]方向的投影Cproj [n] = Re (χ1 [η] c* [η]) / | Xi [η] | (9)st印3 对于每个Cpraj [η] ^ O的采样点,计算= 丄L(10) step4 选择μ [η]中的最小值作为步长μ。如果此时μ彡0,则统一设为0,不
再进行ACE调整算法。
信道估计用于在接收端估计各子信道的频率响应,子载波均衡根据FFT模块输出 的频域序列和信道估计的结果得到发送符号的估值,将其送入符号解映射模块处理。本设计使用基于块状导频的信道估计方案,利用每帧数据最前端的导频序列进 行估计,考虑到系统实时性的要求,信道估计算法采用复杂度较低的最小二乘法(Least Square, LS),算法原理为假设载波间干扰被很好的消除,则在频域有Y = XH+W(11)其中,X= diag[X0 X” XN_JT,Y = [Y0 Y” YN_JT,ff = [ff0 W” ff^]1, H = [H0 H” . . HN_JT表示各子信道的频率响应,LS估计器以使得(12)式最小的应作为H的估值E {| ff (k) |2} = (Y-XH)H (Y-XH) (12)容易求得,H的最小二乘估计为
(13)当利用导频符号完成了信道估计后,只需通过简单的频域除法就可实现子载波均衡。本设计的基带OFDM系统包含诸多复杂度较高的信号处理算法,因此,为了保证实 时性,选择的DSP平台必须具有很高的时钟频率和强大的处理能力,同时,最好能够提供对 算法的硬件支持。基于这个原则,本设计选用TI的TMS320C6416T芯片。该处理器采用先 进的超长指令字(VLIW)结构,主频可达1GHz,片内存储器采用两级高速缓存结构,并包含 增强型DMA控制器(EDMA)和Viterbi译码协处理器(VCP),可以极大的优化算法,此外,这 一款芯片还具有丰富的外设资源。完成的工作包括在一块DSK平台上构建完整的基带OFDM系统,编程实现了发射 机、接收机的各种基带信号处理算法,并对AWGN信道、Rice平坦衰落信道、Rice频率选择性 衰落信道、Rayleigh平坦衰落信道和Rayleigh频率选择性衰落信道等五种信道环境进行 了软件模拟,通过程序模拟实际信道的非理想情况,对真实的无线通信环境作了抽象和近 似,以此验证系统设计的正确性。实现的主要模块包括1.数据的采集和输出模块对于语音信号,利用开发板自带的音频I/O接口和音频编解码芯片AIC23完成;对 于数据信号(图片、文字等),利用实时数据交换(Real-Time Data Exchange,RTDX)技术, 通过USB接口,在PC和开发板之间完成数据交换。2.接收与发送缓冲模块设计合理的缓冲区结构,对接收和发送的数据进行缓冲存储,使数据收发与数据 处理并行完成。3.基带处理模块实现第2部分给出的各种信号处理算法,包括发射机部分和接收机部分。4.信道仿真模块通过RTDX通道或DIP开关将信道参数传给DSP,DSP调用相应的函数模拟信号通 过信道的传输过程。OFDM技术的诸多优势都体现在它能有效地对抗信道衰落和噪声上,因此,必须利
8用软件编程的方法实现对信道的模拟。信道建模理论指出,对于时变衰落信道,通常采用具 有时变增益的抽头延时线模型。然而,建立这一模型涉及到随机数生成、频谱成型等一系列 复杂运算,且对于不同的通信环境,模型也有所差异,因此不适合在DSP上直接实现,基于 此,本设计采取的策略是将信道等效为一 FIR滤波器,信道建模在Matlab中预先完成,待 需要使用时利用Matlab的Link for CCS模块,通过RTDX通道将信道脉冲响应系数和随机 噪声传输给DSP,这样,无论信道为何种类型,在DSP上都只需进行卷积运算就可以模拟出 衰落特性,对于时变特性的模拟,只需周期性的改变RTDX通道传输的内容即可近似体现。 而噪声的引入则通过简单的加法就可以完成。除此以外,主机端的信道建模也必须进行适当的简化,因为RTDX的传输速度较 低,如果传输的数据量过大,必然会影响整个系统的处理速度。Matlab程序中所作的简化主 要包括不采用抽头延时线模型,而是直接建立信道的脉冲响应;各可辨多径分量的衰落 系数和相对时延随机生成,但只考虑衰落的包络为Rice分布和Rayleigh分布这两种典型 的情况,且规定各径的相对时延只能为整数个样本间隔;根据平坦衰落信道中各符号之间 互不干扰的特点,将平坦衰落信道建模为单径信道;根据系统性能对功率_延时曲线的形 状不敏感的特点,将各径的功率分布设计成简单的均勻分布。经过上面的简化和近似,在DSP平台上对信道进行模拟时所需的运算量大为减 小,而信道的本质特征如多径效应、衰落、时变和随机噪声等仍能充分的体现。本设计的基带OFDM系统主要完成语音通信和图像通信两项功能,为了保证系统 的实时性,应当尽可能使数据采集、处理与输出并行执行,针对这一点,采取了如下方案(1)利用乒乓缓冲和链式EDMA控制音频数据的采集与发送乒乓缓冲技术利用两个缓冲器(Ping缓冲器和Pong缓冲器)进行数据传输,可以 很好的协调数据传输与数据处理之间的关系。EDMA配置为首先填充Ping缓冲器,然后填 充Pong缓冲器。在对Pong缓冲器进行填充的时候,对Ping缓冲器进行处理,确保当前的 EDMA传输不会对Ping缓冲器重写,反复进行这一过程,直至全部数据读取完毕。为此,在采 样端和传送端分别使用了 Ping-Pong缓冲器,满足了实时处理的要求。EDMA控制器的配置对四个缓冲器稍微有些不同。当一个缓冲器装满之后,EDMA控 制器产生中断。中断处理必须在下一次采样到来之前为下一个缓冲器重新装载配置信息, 这对时间的要求较高。利用EDMA的“链接传输”特性可以使得这一配置过程对时间的要求 降低每项配置都事先创建好,当前配置完成之后,EDMA控制器自动链接到下一个配置。(2)利用RTDX技术实现主机和DSP之间的通信图像数据的输入与输出采用RTDX技术,实现计算机和DSP之间的实时数据传输。 PC作为主机,DSP作为目标机。两端都有RTDX库提供API函数供用户进行操作,两端的通 信通过JTAG接口连接。目标机端通过API建立数据接收和发送的通道,数据则在通道中 进行传输,通道带有缓存,数据发送后会驻留缓存,当数据读取开始,通道处于忙(Busy)状 态,数据读取完毕后,通道进入空闲状态。通过这样的机制,可以保证数据连贯不丢失的传 输。本系统中,图片数据在PC端发送,由RTDX通道传输至DSP处理,待处理结束后,再 通过RTDX通道传回至PC端,对处理结果进行显示。对于峰均功率比抑制算法,步长的搜索是比较费时的部分。仔细分析这一部分算法,可以看到对某些心,[“]=0的点,它所对应的调整量Ci [η]也很小,如果同时那些点上 的采样IxiM I也比较小,那么只有比较大的μ [η]才能使得|xi+1[n] I达到和nmax处相当 的程度。因此,在搜索μ [η]的时候,对于</ν[ ] = 0且|xi[n] |较小的点就不包含在内。同 时,对于某些IxiM I ( A,但又比较接近于A的采样点,虽然在st印2的时候没有被剪切, 即该点的^M = 0,但在重新调整的过程中,该点的峰值是有较大的上升潜力的,因此这 些点要加入μ [η]的计算和比较过程中。这样,在搜索μ的过程中减少了很多较小的样点, 降低了运算量。对于Viterbi译码算法,仅通过软件优化后仍然不能满足要求,因此,利用6416芯 片特有的Viterbi译码协处理器(Viterbi-Decoder Coprocessor, VCP)进行优化,用硬件 译码代替软件译码。VCP是TMS320C6416T内嵌的高效信道解码协处理器,支持的约束长度为5 9,码 率为1/2、1/3和1/4,回溯方式包括尾比特回溯(Tailed)、混合回溯(Mixed)和收敛回溯 (Convergent)。判决输出可以选择软判决方式或者硬判决方式。VCP和DSP通过EDMA方式传输数据。使用VCP需要在DSP/BI0S配置文件中配置 其所需要的EDMA资源。在DSP/BI0S可以使用的64个EDMA通道事件资源中,有两个专门 用于VCP 事件28和事件29。其中,事件28与VCP接收事件(VCPREVT)关联,用于VCP到 DSP的EDMA传输;事件29与VCP传输事件(VCPXEVT)关联,用于DSP到VCP的传输。使用 VCP完成卷积码译码的操作流程如下stepl 初始化存储空间。DSP根据待译码数据预先计算其分支度量,写入指定的 输入缓冲区,并分配输出缓冲区,准备存储译码结果。st印2 准备VCP的寄存器配置参数。这些参数用于设置译码器对应的生成多项 式、码率、约束长度等。将准备好的参数放在DSP的内存,当VCP启动时由EDMA写入VCP内 部寄存器。st印3 设置EDMA参数。设置EDMA通道29参数,该通道事件由VCPXEVT触发,搬 移VCP配置参数到VCP内部寄存器,搬移待译码数据的分支度量到VCP内部输入FIFO ;设 置EDMA通道28参数,该通道事件由VCPREVT触发,从VCP输出FIFO搬移VCP译码结果到 DSP指定的输出缓冲区。st印4 使能EDMA通道28和29,使其可以响应VCPXEVT和VCPREVT同步触发事件。st印5 启动VCP。DSP写“VCP_start”命令到VCP内部的命令寄存器(VCPEXE), 这会使VCP生成VCPXEVT事件,触发EDMA通道29,搬移配置参数和待译码数据的分支度量 到VCP,完成译码。st印6 处理VCP译码结果。VCP译码完成后会触发EDMA,由EMDA通道28搬移译 码结果到DSP指定的输出缓冲区,并产生中断。DSP在中断响应函数中响应这个中断,对译 码结果进行处理。对于卷积码编码以及多载波调制/解调中旋转因子的生成,采用查表法完成,这 可以显著减少运行时的计算量。在定点设备上完成浮点运算耗时很多,为此,通过合理的估计数据的取值范围,将 许多double或float型的数据转化为int或short类型,这样,一方面,完成很多基本运
10算如乘法、除法、取倒数等所需的时间大为缩短,另一方面可以有效的利用TI提供的数字 信号处理库(DSPLIB)中的库函数来加速代码的执行。这些函数采用汇编语言编写并经 过优化,且可以方便的在C编程环境下调用,非常适合应用于对于处理速度要求较高的实 时系统。在本文完成的OFDM系统中,多载波调制/解调所需的IFFT/FFT操作利用DSP_ ifft32x32和DSP_fft32x32实现,信道与信号进行卷积的运算利用DSP_fir_cplx实现,此 外,在很多模块中需要完成的功能如计算信号总能量,计算最大值、最小值等也利用DSPLIB 中的库函数 DSP_dotp_sqr,DSP_maxval, DSP_minval, DSP_maxidx 等实现。这些库函数的 使用有效的提升了程序运行的速度。对于仍然存在的浮点运算,利用C62x/C64x FastRTS Library提高运算速度。该 库是一个针对TMS320C62X/C64X芯片优化的浮点库,提供实时的浮点运算函数。该库的使 用非常方便,无需重写代码,只需做简单的设置并包含所需的头文件即可。采用FastRTS Library之后,整个系统的运行时间减少了三分之一。对于循环的优化。循环是程序中大量使用的而又极其费时的操作,优化循环主要 从两个方面着手。一是对于完成数据初始化和数据拷贝等功能的循环结构,使用C语言库 函数memset和memcpy代替,提高数据搬移的效率,节省不必要的开销。二是对于循环体内 的操作具有明显并行特点的结构,如交织和解交织,利用循环展开技术,同时将循环计数改 写成递减形式,使软件流水更顺利的进行。
权利要求
一种基带OFDM通信系统,将发送和接收过程集中在一块TMS320C6416平台,并且通过软件模拟多种信道环境,对声音和图像信号在各种通信环境下的性能进行测试、分析和评估。
全文摘要
本发明是一种用于教学的基带OFDM通信系统平台,属于多载波通信系统中的正交频分复用技术领域。采用多种软硬件方法建立了完整的基带OFDM发送接收系统,可以实现各种信号处理算法,并对多种信道环境进行模拟。利用该平台可以对OFDM系统在各种通信环境下的性能进行测试、分析和评估,从而为理论研究和实际应用提供有益的参考。
文档编号H04W24/00GK101873287SQ200910022168
公开日2010年10月27日 申请日期2009年4月24日 优先权日2009年4月24日
发明者邓炜 申请人:邓炜
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1