连续相位调制方式与UART异步端口的同步设计

2006-05-07 15:50:10来源: 国外电子元器件

随着通信技术和计算机技术的飞速发展,计算机数字通信技术显得越来越重要。但是目前常用的数字通信传输信道仍为模拟信道,为了能使数字信号可靠,有效地在模拟信道中传输,就必须将数字信号调制到模拟信道的载波上。在实际应用中,使用较多的是在连续相位调制方式(如CPFSK连续相位频移键控、MSK最小频移键控、GMSK高斯最小频移键控等),这些方式的调制信号均为相位连续,即调制后的信号相位连续具有最小功率谱占用率,这就使得调制信号所占用的频带率及资源利用率比变通的调制方式大大提高。正是由于调制信号的相位是连续的,因而使得发送端的数据信号不能随机输出而必须和调制设备的时钟同步,不然就难以保证调制信号相位的连续性。在PC机和单片机通信中普遍使用UART异步端口,而UART异步端口的数据同步主要依靠数据起始位和停止位来进行,这就使得UART异步端口不能直接与连续相位调制方式的设备相连接而必须加入一个时钟同步转换电路,以将UART端口的输出数据与调制设备的时钟同步。

最简单的时钟同步转换电路是在调制设备的数据输入端口前加入一个D触发器,用调制设备的同步时钟作为触发器的时钟输入,UART异步端口的输出数据信号作为触发器的输入。图1所示为这种简单的时钟同步转换电路图。

经过D触发器的时钟触发,Q输出端的数据便可与调制设备的同步时钟信号同步,这样,就保证了调制信号相位的连续性。目前较常用的CPFSK、MSK、GMSK调制芯片都可发送时钟同步输出信号,这种时钟同步输出信号可作为串行数据输入端口的同步时钟。因此在设计中只需简单地将调制芯片的发送时钟同步信号接到D触发器的时钟触发端即可。

在实际的使用过程中,常常会出现通信数据出现误码的情况。这是由于UART异步端口的发送时钟与调制设备的同步时钟存在着微小误差所造成的。特别是在连续长时间发送数据时,这种调制设备的同步时钟和UART异步端口的时钟之间存在的微小误差会产生积累效应从而使误差更加明显。通常调制设备的同步时钟是与UART波特率相一致的,如UART2400bps,同步时钟信号周期为2400Hz。

图2所示即为UART数据、同步时钟和D触发的同步后的数据脉冲的比较,可以看出,当同步时钟比UART异步端口的时钟脉冲小时,D触发器输出的同步数据就会出现误码错误。

因此使用简单的D触发器方式不能保证通信双方可靠的数据传输。为了保证时钟同步转换电路能够正常可靠的工作,实际应用时可以采用软件设计和硬件设计两种处理方式。软件设计就是在UART异步端口和调制设备之间加入一个单片机,单片机的任务就是接收UART异步端口发送的数据信号,并将其暂存在单片机的存储器中,在调制设备同步时钟的同步沿到来时依按位把存储器中,数据输出到调制设备的数据输入端,即实现异步——存储——同步发的转发功能,这样就避免了UART和调制设备之间由于时钟误差所形成的误码现象。硬件设计的设计原理与单片机类似,它主要用两个移位寄存器来实现单片机的数据存储和转发功能。硬件设计要比软件设计简单、执行速度快、占用的系统资源少,因此在实际工程中使用较多。

时钟同步转换电路的硬件电路原理如图3所示。该时钟同步转换电路在工作时,先由IC1 D触发器检测UART发送数据起始位的下降沿,当检测到起始位后,再启动IC2.1和IC2.2计数器以读出UART发送的数据,并将数据串行送入移位寄存器IC3中,当读完UART的1Byte数据后,通过IC3控制计数器IC2.1和IC2.2以禁止计数,同时将IC3存储的1Byte数据并行送入IC5.2和IC5.1中,调制设备的同步时钟送入IC5.1的时钟输入端以用来将数据串行输出。硬件设计的思想是使用串行/并行移位到并行/串行移位以完成数据的时钟同步转换。这种存储转发的技术避免了由于UART时钟和调制设备同步时钟的误差。

硬件电路的实现可以用74系列的分离集成电路来完成,也可以使用现今流行的可编程逻辑器件来完成。笔者使用的是Altera公司MAX7000S系列EPLD可编程逻辑器件,并配合Altera公司的AMX+PLUS Ⅱ可编程逻辑器件开发软件。由于MAX+PLUS Ⅱ提供了一种与结构无关的全集成化的设计环境,因而设计者能对Altera的各种PLD系列方便地进行设计输入、快速处理和器件编程。MAX+PLUS Ⅱ软件同时还具有强大的处理能力和高度的灵活性,其优点主要表现在以下方面:

(1)MAX+PLUS Ⅱ的核心Compiler(编译程序)支持从Classic琶FLEX10K的Altera全部系列的PLD产品,并能提供与结构无关的PLD设计开发环境,具有强大的逻辑综合与优化功能。

(2)MAX+PLUS Ⅱ可在基于PC机的MS WINDOWS或WINDOWS NT环境下以及多种工作站的X WINDOWS环境下运行。

(3)MAX+PLUS Ⅱ的设计输入、处理和校验功能全部集成在统一的开发环境下,可以加快动态调试,缩短开发周期。

(4)MAX+PLUS Ⅱ支持各种HDL输入选项,包括VHDL、Verilog HDL和Altera的硬件描述语言AHDL。

(5)MAX+PLUS Ⅱ提供了丰富的库单元以供设计者调用,其中包括74系列的全部器件和多种特殊的逻辑宠单元(Macro-Function)以及新型的参数化的巨单元(Maga-Function)。调用库单元进行设计可以大大减轻设计的工作量,从而使设计周期成倍缩短。

(6)MAX+PLUS Ⅱ还提供了符合EDIF 200和209标准的接口,因而可以与其它工业标准的EDA软件协同使用。设计者可以先使用其它的EDA软件工具进行设计输入,然后再利用MAX+PLUS Ⅱ的Compiler进行编译处理,并可使用其它EDA软件工具进行器件和板级仿真。

采用Altera的MAX7000S系列EPLD芯片设计的时钟同步转换电路的硬件,具有系统结构简单、成本低、可靠性高、在线修改方便和升级容易等优点。该时钟同步转换电路经过实际的工作运行证明:其性能稳定可靠。

编辑: 引用地址:http://www.eeworld.com.cn/designarticles/network/200605/3162.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部

小广播

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved