数据通信装置的制作方法

文档序号:7605526阅读:190来源:国知局
专利名称:数据通信装置的制作方法
背景本发明涉及主机信号处理通信,尤其,涉及一种数据通信装置,使这种数据通信装置配置成能够在非实时环境中处理实时信号,而且保持整个信号发送的质量和完整性。
传统计算机系统使用连接到电话线路或其它通信媒体的调制解调器来发送数据。这些调制解调器典型地包括被称为CODEC(编解码器)的,一般组合成单个器件的模数转换器和数模转换器(A/D-D/A转换器)。CODEC把输入模拟信号转换成可以通过信号处理单元处理的数字信号,并把来自信号处理单元的数字信号转换成输出模拟信号,可以在诸如电话线路之类的通信媒体上发送所述输出模拟信号。信号处理单元,有时把它称为“数据泵”,在传统上是称为数字信号处理器(DSP)的专用芯片,用把数字信号转换成信息位的算法对它预先编程。
调制解调器还可以包括第二专用芯片,有时把它称为“控制器”,它是一个预先编程的微控制器,以控制DSP和把信息位转换成计算机系统可使用的数据。控制器可以实施某些方案,以对信息位进行纠错,为了更有效的发送,还可以实施某些方案来压缩信息位。某些调制解调器通过在主计算机系统上执行控制功能而省去了专用的控制器芯片。通常把这些调制解调器称为“无控制器调制解调器”。
传统的调制解调器还可以包括缓冲器,以暂时存储信息位或数据,这时由于当可得到数据时,计算机系统可能不能够立刻就响应。更近代,主机信号处理器(HSP)已经把传统调制解调器的硬件减少为受HSP控制的一个缓冲器电路和一个CODEC。现在,运行在计算机系统上的HSP处理执行调制解调器的信号处理和控制功能,省去了专用DSP芯片或专用微控制器芯片的需要。由于HSP处理是在非实时环境中运行的,它们不能够按实时器件,CODEC,的取样速率作出响应。因此,需要一个专用电路来缓冲取样,允许HSP不是频繁地传递取样。现在,现代调制解调器包括HSP、控制和信号处理软件、CODEC以及缓冲取样和把计算机系统硬件连接到CODEC的专用电路。对这些调制解调器系统的最大的挑战是保持实时数据发送系统和非实时数据处理系统之间的输入和输出数据的完整性以及数据发送的连续性。在HSP调制解调器应用的系统的实时部分和系统的非实时部分之间传递的数据包括表示在通信媒体上所发送和所接收的信号的模拟波形的取样。在调制解调器通信期间,CODEC输出接收取样的恒定流,并要求发送取样的恒定流作为输入。HSP的能力足以处理所有的取样,但是不是以实时操作的,所以不能按一致的速率来处理它们。因此,缓冲器系统的作用是在主机处理器和CODEC之间保持恒定的数据流。
在相同媒体上有两个或多个实体发送信息的通信系统中,必须建立分隔信号的协议,以便避免竞争。一个如此的协议是时分多路复用(TDM),其中,每个实体轮流在媒体上发送。另一个协议是频分多路复用(FDM),其中,每方使用公用媒体的不同频带。现代调制解调器使用回波消除,其中,两个实体使用相同的媒体,并通过从接收信号减去发送信号的回波而分隔在相反方向上传递的信号。回波是网络中的阻抗失配引起的,而且它的特征在整个发送中相当恒定。为了使回波消除起作用,HSP必须接收在发送信号和所接收回波之间的一致的延迟,以致可以从所接收信号一致地减去回波。例如,如果由于所设计的缓冲器方案较差而有时使延迟改变,则回波消除方案将不能够正确地跟踪发送回波,而数据将丢失。在数字信号处理器(DSP)曾经执行回波消除处,现在HSP使用作为管道的缓冲器系统来执行该功能。
一般,按照模拟信号来定义调制解调器调制方案。大多数调制方案通过改变正弦波的特征而工作,把所述正弦波的频率称为载波频率。例如,正交调幅(QAM)通过按固定速率改变载波频率的幅度和相位而工作。已知这个固定速率是波特频率或码元频率。由于大多数现代调制解调器使用数字信号处理技术,必须使用取样速率把这些模拟信号转换成数字形式,通常所述取样速率是波特频率的倍数。因此,可以认为取样的整数表示一个“波特”或“码元”。根据调制方案和它所使用的算法的复杂性,单个的或成组的码元表示某些信息位。通常把每秒发送的信息位的平均数称为“数据速率”或“比特率”。
已经开发了应用调制解调器调制方案的标准协议来改进电信工业中的兼容性。例如,国际电信联盟(ITU),即以前的国际电报电话咨询委员会(CCITT),已经设计了研究在调制解调器工业中的变化技术的标准建议。诸如V.21、V.22和V.23之类早期的建议使用用于双工通信的FDM。诸如V.32bis、V.34和V.90之类较新的建议使用于双工通信的回消除除。其它建议描述用于传真应用的半一双工调制方案。这些建议的例子有V.27、V.29和V.17。在使用这些标准的任何一种中,重要的是调制解调器与数据发送系统保持恒定的通信链路,以便保持依从数据发送的完整性。
一种传统的HSP调制解调器依赖缓冲器解决方案,所述缓冲器解决方案根据表示整数的码元周期和整数的载波周期所需要的取样数使环形发送缓冲器分隔成帧。在传统装置中,把表示码元组的取样传递到缓冲器。在Yeh等人的美国专利第5,721,830号中描述和示出这种调制解调器,该专利转让给PC-Tel,Inc.(“‘830”专利)。在这种HSP调制解调器中,把每个缓冲器分隔成许多部分,所述部分等于待发送和接收的取样的各个组的大小。使用诸如工业标准结构(ISA)或外围元件接口(PCI)之类的通信总线,一帧一帧地传递取样,使之输入和输出分隔缓冲器到主机处理器。与在主计算机系统中的其它外围设备共享这个总线。
在这个现有技术系统的操作中,CODEC以环形的方式不断地把取样写入接收缓冲器,并从发送缓冲器读出取样。当充满一个接收帧时,HSP必须处理它,而同时CODEC正在填充其它帧。相似地,当正在发送一个帧时,HSP必须用新的取样装载其它帧。在HSP不能够处理帧的情况下,发生溢出状态。既然是这样,丢失了接收取样的整个帧,并通过CODEC重写。还有,用发送取样的旧帧来代替发送新的发送取样。为了补偿这个情况,在接口中需要增加电路,以对丢失取样的帧的数目进行计数。还有,在HSP中需要增加逻辑,以对在回波消除过程中丢失的取样进行计数,这是必须实施的,以致回波消除可以具有一致的延迟。如上所述,为了使回波消除工作,HSP接收的回波必须具有一致的延迟,以致可以一致性地减去它的值,把正确的接收信号给予HSP。
实施V.34标准使这种调制解调器的操作更为复杂。在发送和接收两种情况中使用相同的载波频率的半双工调制方案以及较旧的双工调制方案中,使发送和接收两种缓冲器的大小成为载波周期和码元周期的倍数是很容易的。然而,对于在两个方向传递的信号,V.34支持载波频率和码元速率的数种组合。根据线路条件,一个方向与其它方向可能使用不同的载波。然而,在CODEC中的A/D和D/A的取样速率通常是相同的。因此,对于发送和接收两种情况,在CODEC和主机之间正在以相同的频率发送数据,又,模拟波形的取样。在‘830专利中,缓冲器的大小是基于载波周期和码元周期的整数倍的。由于正在以相同的速率发送和接收取样,所以使缓冲器的大小成为发送载波频率和接收载波频率两者的整数倍是有困难的。根据正在使用调制方案、载波频率和波特频率的哪种组合,这个HSP将需要许多缓冲器大小。为了这种配置的灵活应用,人们需要能够改变大小或包括数种不同的缓冲器,以适应不同的调制方案。在大多数应用中,这是不现实的。
这个现有技术HSP调制解调器进一步包括中断电路,每次当已经接收到取样的帧和准备传递到主机处理器时,所述中断电路把一个中断信号从接收缓冲器发送到处理器。结果,每次当把取样的帧发送到接收缓冲器时,就把一个中断信号发送到主机处理器。因此,不管主机处理器是否准备接收取样,处理器必须不断地接收中断。处理器必须对大量中断作出响应,这种配置必定加重主机处理器的负担。在处理器不作出响应的情况中,来自CODEC的输入取样可能部分或全部重写所传递的取样的帧,使之丢失。此外,由于回波消除必须是连续的,当在回波消除方案中的回波减法与输入信号流不保持同步时,丢失取样可能产生问题。结果,这种配置要求在HSP中增加逻辑,以便在执行回波消除过程的同时对丢失取样进行计数。即使与信号流保持同步,仍不能解决丢失取样的问题。如果持续这样,可能产生过多的噪声,最终使通信链路失效。
因此,存在对于新的调制解调器配置的需要。这种新的调制解调器配置符合V.34和V.90的建议,并且较佳地处理发生在缓冲器中的溢出和下溢造成的取样丢失。将从下面看到,本发明以简单和精巧的方法来实现这个。
发明概要本发明提供在调制解调器配置中使用的一种装置,所述调制解调器配置使从HSP到CODEC的具有较少数据丢失、较低噪声的数据传递成为可能,并且可以按变化的载波频率发送数据而无需改变缓冲器的大小。此外,本发明允许灵活地具有任何给定的调制方案、载波频率或波特频率的数据传递,以符合V.34、V.90,以及以前的和以后的建议。所述装置包括用于把数据从诸如CODEC之类的A/D-D/A转换器传递到HSP的缓冲器。本发明进一步包括计数器,用于对在CODEC和HSP之间传递的数据进行计数,并警告HSP以防止溢出状态。进一步配置计数器,使之对超过缓冲器的物理大小进行计数,以便简化在溢出状态中的操作。
本发明进一步包括发送缓冲器,用于把数据从HSP传递到CODEC。与HSP和CODEC通信的计数器是与第一个计数器相似的另一个计数器,它对从HSP发送到CODEC的数据进行计数。设置一个门限值来激励连接到发送缓冲器的输出的空信号发生器,当发送缓冲器中没有数据时,通过开关把空信号发送到CODEC。这有助于保持CODEC和数据传递系统之间的通信链路。一旦在发送缓冲器中再次得到数据时,开关使发送缓冲器和CODEC之间的通信恢复。此外,发送缓冲器和接收缓冲器同步,以允许HSP执行无接缝的回波消除过程。现在,在正常操作期间和当接收缓冲器在溢出状态时的两种情况中,回波消除可以一致。
附图简述

图1A是根据本发明的一个实施例的具有接口的计算机系统的示意图;图1B是根据本发明的基于HSP的调制解调器的示意图;图2是根据本发明的第二实施例的具有接口的计算机系统;图3是示出通过图1和图2的接口而流动的数据的中断的示意图;图4是根据本发明的取样数据传递的示意图;图5是根据本发明的计数器的示意图;以及图6A是根据现有技术的传统接口的示意图;图6B是通过现有技术的接口流动的取样数据流的示意图。
较佳实施例的详述本发明针对一种接口,用于在主机信号处理器(HSP)和CODEC之间提供有效的数据传递。本发明特别适合于在个人计算机中使用的接口,并将在那种情况中描述。然而,可以理解,这只是本发明的一个应用的示例,而本发明具有较大的可应用性和较多应用。
简单地说,本发明提供一种接口,配置成传递A/D-D/A转换器之间的数据,诸如CODEC,以及符合V.34建议以及以前的和以后的建议的HSP。在CODEC和HSP之间连接一个接收缓冲器,用于接收来自CODEC的数据,并当HSP准备接收数据时,把数据传递到HSP。接收缓冲器可以是先进先出配置,其中,在缓冲器的一端输入数据,并从缓冲器的另一端输出。与上述现有技术配置不同,缓冲器没有经分隔来配合某种帧大小的固定部分。作为替代,数据在缓冲器的一端输入,并在另一端输出,不管数据传递的大小。这提供了优点,使具有较少数据丢失、具有较低噪声的数据发送成为可能,而且可以以变化的载波频率发送数据而无需改变缓冲器的大小。此外,本发明允许灵活地具有任何给定调制方案、载波频率或波特频率的数据传递,以符合V.34、V.90,以及以前和以后的建议。
本发明进一步包括与CODEC和HSP两者通信的计数器电路,以便HSP对从CODEC接收到的数据取样进行计数和存储在接收缓冲器中,并对从接收缓冲器读出的数据取样进行计数。本发明使用计数器信息,现在HSP可以跟踪所传递的数据取样数,并对可能在溢出状态期间发生的在回波消除程序中的任何数据丢失进行计数。
在操作中,当接收缓冲器已经接收到来自CODEC的取样时,计数器在基准点处开始计数并递增,当HSP从接收缓冲器读出取样时,计数器就递减。除了其它因素之外,根据HSP一次可以处理的最大取样数设置门限值,以致当计数器到达门限值时,将把中断发送到HSP,以表示数据已准备好。响应之下,HSP可以接收数据和防止溢出状态。作为一个添加的特征,可以限制中断的数目,当缓冲器计数大于或小于门限值时只发送一个中断,并在HSP已经确认以前的中断之后。这限制了发送到HSP的中断数目。
本发明进一步包括发送缓冲器,用于把数据从HSP传递到CODEC。与HSP和CODEC进行通信的是与第一计数器相似的第二计数器,当接收到从HSP到发送缓冲器的数据时递增,并且当把数据从发送缓冲器传递到CODEC时递减。根据下溢状态设置第二门限值,在该状态中,发送缓冲器不包含待发送的数据。一旦到达门限值,连接到发送缓冲器的输出的带有开关的空信号发生器就把空信号发送到CODEC,以便保持在CODEC和数据传递系统之间的通信链路。一旦当在发送缓冲器中再次可得到数据时,开关恢复在发送缓冲器和CODEC之间的通信。这是在上述现有技术配置上的改进,上述现有技术再循环和再发送来自发送缓冲器的旧数据,试图保持数据链路。使用本发明,除了其它优点之外,系统现在发送需要较少功率的空信号。
在正常操作中,两个计数器是同步的,致使主机可得到的所接收取样数等于在缓冲器中可得到的新发送取样的间隔数。如果CODEC对于每个接收取样始终发送一个取样,而且每当主机读出一个所接收取样时主机传递一个发送取样,则得到同步。主机还可以传递多个取样的组,但是总接收取样必须等于总发送取样。计数器还具有大于缓冲器的物理长度的范围。这是在现有技术系统上的改进,因为它允许包括回波消除的信号处理功能在缓冲器溢出的情况下平稳地操作。在第二计数器中使用的第二门限值可以简单地为0,这意味着在发送缓冲器中没有要发送的有效取样。为了简化设计和操作,还可以把两个缓冲器计数器组合在单个计数器中,以执行两个计数器的所有功能,起发送和接收两种缓冲器的作用。
现在参考图1A,图中示出具有主机信号处理器(HSP)112的计算机系统110,所述主机信号处理器(HSP)112经由数据管理系统116与数据发送系统114进行通信。把HSP 112连接到外围元件接口(PCI)总线118,所述总线118把HSP连接到各种外围元件,包括数据管理系统116。数据管理系统116包括PCI接口120,所述接口使用用于在PCI总线上发送数据的PCI标准协议在PCI总线118上通信。在工业中,这种协议是标准协议,而且为熟悉本技术领域的人员所众知。PCI接口120与数据通信接口122进行通信,以接收和发送来自数据发送系统的数据。信号转换器,也众知为CODEC 124,接收来自数据发送系统114的模拟信号,并把它们转换成数据通信接口122可以识别的数字信号,用于最终传递到HSP112。CODEC 124还把从数据通信接口122接收到的数字数据信号转换成数据发送系统114可识别的模拟信号。数据发送系统114是以模拟信号形式传递数据的一种系统,而且可以包括诸如本发明的数据管理系统通常使用的传统的电话系统。
下面是根据本发明的一个实施例的数据管理系统116的说明,它与HSP调制解调器软件一起的作用如同一个调制解调器,以把HSP 112连接到数据发送系统114。如上所述,现代调制解调器不再是执行所有调制解调器功能的单个单元。现在HSP 112完成调制解调器的控制功能,并在数据通信接口122中执行数据传递操作,所述数据通信接口122的作用是把HSP 112连接到数据发送系统114。
HSP 112包括受中央处理器(CPU)128控制的主存储器126,以执行除了其它功能之外的数据传递和数据处理功能。主存储器126包括通信应用程序130,以执行各种功能,包括但是不限于,文件传递、万维网浏览以及电子邮件访问。通信应用程序130还可以包括执行诸如点—对—点协议(PPP)之类的网络协议的应用程序,熟悉本技术领域的人员是众知的。通信驱动器132包括软件程序,以接收取样134、发送取样136以及执行信号处理功能和包括回波消除138的控制功能127。主存储器126进一步包括数据缓冲器140,以及杂项应用程序142,它们共享中央处理器128、主存储器126以及HSP112的其它资源。
仍参考图1A,数据通信接口122包括与CODEC 124进行通信的接收缓冲器144,以接收来自数据发送系统114的数据,通过CODEC 124转换成数字信号。接收缓冲器144进一步与PCI接口120进行通信,以在HSP 112的请求下发送数据。数据通信接口122进一步包括初始逻辑146,它与接收缓冲器144进行通信,并配置成执行逻辑操作,以启动CODEC 124和接收缓冲器144之间的通信。HSP 112使用控制寄存器(未示出)启动接收和发送两种缓冲器134、136。
第一计数器148在CODEC 124和PCI接口120之间进行通信,并最终到HSP112,以保持对传递入和传递出接收缓冲器144的数据的跟踪。在操作中,初始状态是如此的,把接收计数器148设置到缓冲器的物理大小,并把发送计数器154设置到0。在这个状态中,接收缓冲器是“充满”的,而发送缓冲器是“空”的。使用初始逻辑来使接口缓冲器144、150的状态复位。在接收缓冲器144的初始状态中,接收缓冲器144充满了“零”取样,这表示模拟波形没有能量。通过读出第一计数器148,通知HSP 112接收缓冲器144充满待传递的零取样,而且发送缓冲器150具有空间,多达全部的取样缓冲器。这将在下面进一步详述。
数据通信接口122进一步包括与PCI接口120进行通信的发送缓冲器150,以接收来自HSP 112的数据。发送缓冲器150还与数据开关152进行通信,并当开关在连接两者的位置上时,把存储在发送缓冲器中的数据传递到CODEC124,数据在那里从数字数据信号转换成模拟数据信号,用于发送到数据发送系统114。然后把数据传递到目的地,它可以是连接到相似数据管理系统的另一个HSP,或可以使用数据的任何其它装置。数据通信接口122可以进一步包括与PCI接口120和CODEC 124进行通信的第二计数器154,以跟踪发送缓冲器150接收的和从发送缓冲器150传递的数据。把第二计数器154进一步连接到空信号发生器156,把空信号发生器156进一步连接到开关152。配置开关152,使之轮流连接带有CODEC 124的发送缓冲器150和带有CODEC 124的空信号发生器156。
仍参考图1A,在操作中,CODEC 124从数据发送系统114接收数据,并从模拟信号转换成数字数据信号。在通信连接开始处,初始逻辑146启动接收缓冲器144,以接收数字数据信号,并把它以数字数据形式存储在接收缓冲器144中。参考图3,图中示出数据流的示意图,示意数据是如何传递和分类的。以串行的方式传递数据并组合到取样310中,它可以是任意的长度,诸如16位数字数据。再参考图1A,这个数据取样310的流以先进/先出(FIFO)的方式输入接收缓冲器144的一端,在接收缓冲器的另一端输出数据。然后把数据传递到PCI接口120,而且,最终传递到主机信号处理器112。一般,主机信号处理器112以取样312的组来传递数据。
参考图4和5,图中更详细地示出在接收缓冲器144中的存储操作。下面描述的,并在图4和5中示出的缓冲器的大小和长度仅用于示例。根据本发明,可以使用其它大小的缓冲器。为了正确处理溢出状态,计数器所具有的范围必须大于缓冲器的长度。这允许计数器跟踪取样丢失的数目以及那些经传递的数目,所以在缓冲器溢出的情况中,回波消除过程可以无接缝地操作。
设计人员对于用于计数器的门限值进行编程,并且可以根据许多因子。对于不同的通信标准,和对于在通信标准描述的过程中的不同点,门限值也可能不同。一个因子是取样的最小数目,这是配置HSP使之一次处理取样的最小数目,这应该考虑待传递到HSP的数据量的实际预测,以致不会太频繁地发生中断。例如,如果这个数目太小,则HSP可以有效地响应的这些更多的中断将使HSP过载。这是在现有技术系统上的改进,在任何时候当可得到数据时中断HSP,用中断信号使HSP过载。根据本发明的一个实施例,每次,HSP有仅有的中断负担,直到它响应或确认该中断,此后,允许发送另一个中断。
可以设计缓冲器的长度和门限值来平衡某些竞争性的参数,诸如,从数据通过缓冲器传递而发生的延迟,缓冲器溢出的概率以及中断的频率。如果正确地设置门限值,则在HSP必须响应中断之前,HSP可以有数个取样的等待时间。那么,缓冲器溢出的可能性就减少。
在图4中,根据本发明示出在接收缓冲器144中的数据传递的示意图。在图5中,示出计数器148和计数器的指针的相应位置的示意图,所述计数器的指针与到缓冲器的不同数据传递有关。图4又示出具有128个存储位置的缓冲器144,用于存储128个数据取样,其中,16个取样的两个传递,每一个发生于大小为保存128个取样的缓冲器中。存储在图4的缓冲器144中的取样表示在位置32-127中存储数据取样。这些表示紧接在两组取样之后的位置,所述两组取样是当没有接收取样时从缓冲器送出的,留出空间供CODEC传递32个更多的取样到空位置0-31。
参考图5,参考图1根据通过初始逻辑146的接收缓冲器144的启动,使计数器复位到0。每次接收到取样时,计数器增加1。当从接收缓冲器144传递数据时,使计数器根据从缓冲器传递的取样数进行递减。如在计数器坐标格中所示,使计数器递减计数到0,并递增计数到255。如果指针降低到0,则表示缓冲器是空的,或,换言之,从缓冲器送出128个数据取样,并且没有从CODEC 124接收到数据取样。如果指针位于位置128处,则这表示缓冲器是充满的,或,换言之,从CODEC传递128个取样到缓冲器,而且没有取样传递到PCI接口120。位置P1表示被传递的16个取样的两个组。除非读出数据,数据将开始通过输入数据在缓冲器中重写。位置P2发生在位置P1之后,表示缓冲器已经接收总数为33个的取样而且没有取样传递到PCI接口120。
再参考图4,图中示出一种情况,其中,把数据的96个取样存储在位置32-127中,而从CODEC把33个取样传递到缓冲器。这是一个溢出状态,因为在缓冲器充满128个取样之后再传递一个取样。在这个例子中,起初,接收缓冲器144处于充满的状态。这可能是由于HSP 112对数据通信接口122的初始化引起的,或由于对一个中断响应中的等待时间引起的。一旦HSP 112响应来自计数器154的中断,并从位置0-31传递32个取样,就使计数器移动到位置P1,如在图5中所示。使计数器减少到96,而位置32-127(图4)有有效的取样。假定在该点处HSP 112停止传递取样,并确认中断,如果把门限值设置到低于96,则将产生另一个中断。在这个例子中(图4),HSP 112是忙碌的,所以在它有机会响应之前,从CODEC 124传递33个取样。现在计数器154是在129处,表示已经重写了一个取样。当HSP 112再次开始响应中断时,它将在新取样已经重写旧取样处读出无效取样。来自CODEC的最后取样重写位置32,这是在取样组3中的第一取样,HSP尚未对其进行处理。这将导致在HSP 112接收的信号中的噪声。在这个例子中,计数器154的范围从0-255,所以它可以表示多达127个丢失取样。
计数器所具有的范围大于物理缓冲器的大小,把较大的灵活性添加到现有技术的缓冲器上。计数器容量限定缓冲器实际大小的极限。这并不意味着充满缓冲器的数据可以超出缓冲器的物理极限,但是计数器保持对于传递入和传递出缓冲器的取样数的跟踪,以致回波消除过程看到的延迟是一致的。实际上把计数器限制为有限的大小,因此具有最大值。需要一种机构来处理计数器的溢出。当计数器从它的最大值递增时,一种如此的机构允许计数器环绕它的最小值。这可能导致一种情况,其中,HSP响应一个中断,但是发现计数器指示小于门限值的一个值。为了防止这个,可以使用粘结位来处理计数器溢出。在这个配置中,计数器的最高有效位是粘结位。因此,一旦它变成逻辑1,它只能通过递减再变成0。这样,如果当计数器在它的最大值时对于计数器进行递增,则下一个值将是代替最小值的最大值的一半。例如,如果使用8位计数器并从值255递增,则下一个值将是128而不是0。
现在参考图1B,现在将描述在正交调幅(QAM)情况中基于HSP的调制解调器的方框图。QAM是一种方法,它以固定速率改变载波信号的相位和幅度。在一个实施例中,通过图1A的通信驱动器132执行在HSP 112中示出的功能块。使用诸如V.22、V.22bis、V.32、V.32bis、或V.34等通信标准描述的编码方法,把来自调制解调器控制器的数据映射到两维星座点160。把这些点,Ai+j*Bi,这里j定义为等于-1平方根的虚数,乘以复数载波ejω。使用结果的实数部分。结果的实数部分表示数字波形,它是通过整形滤波器164传递的,然后发送到数据管理系统116,以转换成模拟波形,并在数据发送系统114上发送。
通过高通滤波器传递来自接口硬件的输入取样,以除去直流分量。对于发送和接收方向使用重叠频带的通信标准,诸如V.32、V.32bis以及V.34,回波消除器168从这个信号减去在发射机中的QAM 162的输出中的经滤波和经延迟的形式。一般,在通信标准的启动期间,在HSP中设置滤波和延迟参数。接着,自动增益控制(AGC)170施加增益,致使把信号功率归一化到预设置电平,不管数据发送系统114的信号的衰减。接着,定时恢复过程172与数据发送(远程发射机)码元速率的远程源的码元速率同步。然后,应用均衡滤波器,以除去码元间干扰(ISI)的影响。均衡器工作于信号的同相和正交两个部分,并输出两维复数信号,通过解调和复数载波锁相环(PLL)176可以对该信号进行解调。使用锁相环来保证接收机的载波与远程发射机的载波同步。最后,使用来自通信标准的合适的方法,通过星座解码器178把解调器的复数输出解码成信息位,并传递到控制功能,用于进一步处理和解码127。
在V.90建议下,一个方向,上行(或客户到服务器),使用QAM,而另一个方向,(下行,或服务器到客户)使用脉冲编码调制(PCM)。V.90客户所用的配置与图1B的QAM块162极相似,除了其中没有解调和载波PLL块176,因为那里没有下行载波信号。既然是这样,均衡器是一维的,并且它的输出是实数。另一方面,V.90的服务器是不同的,因为它们没有在发射机中使用QAM技术,而且它们不使用CODEC。
当主计算机对接口缓冲器116的准时服务失败时,会发生如上所述的溢出状态。结果是丢失接收缓冲器中的某些取样,并把某些零取样发送到CODEC124。然而,主机继续正常地处理取样,信号流与上述相同。结果是传递到高通滤波器的某些取样不表示从数据传递系统接收到的模拟信号。而且用于回波消除的信号不是确切地实际发送的,因为它不考虑零取样。然而,仍保持相同的回波延迟,以致在溢出的情况中,HSP继续处理(包括回波消除)以起平稳的作用。可以分析丢失取样的影响为“脉冲噪声”,或具有极短持续期的高功率噪声。根据服务,脉冲噪声可以有许多影响。例如,它可以导致在发送到控制器的数据中的差错。通常在整个设计中结合诸如V.42之类的纠错标准,所以可以缓和这种影响。脉冲噪声还可以使调制解调器之一启动速率再协调或再对准过程。一般,速率再协调过程极快,小于1秒,而且在任何情况中,通信应用程序可能没有注意到它。系统的整个再对准可能要数秒,是较能注意到的。设计结合本发明的整个系统,以致不经常发生溢出。因此,难得由于溢出而发生再对准。
对计数器148用门限值进行预编程,当达到该门限值时,启动发送到HSP112的中断,表示溢出状态即将来临。为了避免丢失数据,可以在等于或小于128的计数器位置处设置门限值(图5),以致HSP可以在溢出状态之前取得数据。为了避免把大量中断发送到HSP 112,可以配置计数器使之一次发送一个中断,并仅在HSP 112已经确认以前的中断之后发送。这个特征与传统接口不同,在传统接口中每次接收缓冲器接收到数据就发送中断。在这种传统配置中,当可得到数据时,不断地使HSP 112中断。在本发明的另一个实施例中没有中断,但是HSP周期性地读出计数器,以确定是否可得到进行处理的足够的数据。
例如,再参考图4,如果把计数器148的门限值设置到小于96的一个数,则在缓冲器中接收到33个取样之前将把中断发送到HSP 112。此时,如果可能,HSP 112可以从缓冲器读出数据,为在缓冲器中的33个取样提供空间,并且避免溢出状态和防止任何取样的丢失。
发送缓冲器150以与接收缓冲器144相似的方式接收和发送数据。以先进先出方式在发送缓冲器150中接收数据,以致以串行方式在一端接收数据,并以串行方式传递到另一端输出。第二计数器154以与第一计数器148的工作相似的方式保持跟踪输入和离开发送缓冲器150的数据。第二计数器与第一计数器同步,以保证两个缓冲器以相同的取样速率工作。使发送缓冲器有问题的状态是下溢状态,这发生在接收缓冲器144经受溢出状态的相同时刻。下溢意味着CODEC需要用于转换的新取样,但是在发送缓冲器150中不可得到。
一般,对于A/D和D/A两种转换,CODEC使用单个取样速率。因此,从接收缓冲器传递到PCI接口的数据与从PCI接口传递到发送缓冲器150的数据具有相同的速率,但是在时间上稍有延迟。因此,HSP必须保持发送到发送缓冲器150的取样的数目,这个取样的数目等于从接收缓冲器读出的取样的数目。只要在发送缓冲器150中可得到数据,开关152就把发送缓冲器150的输出连接到CODEC 124,以致可以传递数据。然而,在下溢的情况中,当在发送缓冲器中不可得到新数据时,开关152连接到空信号发生器156,以把空信号发送到CODEC 124。然后,把空信号转换成发送到数据发送系统的模拟空信号。这与上述传统调制解调器相反,在传统调制解调器中,CODEC转换在以前传递中剩余在发送缓冲器中的旧取样。没有一种方法足以保持可靠的通信链路长期有效,所以必须设计系统,使溢出和下溢状态发生得最少。
现在参考图2,图中示出具有单个计数器电路的本发明的第二实施例。接收缓冲器144和发送缓冲器150的工作与图1示出的配置的工作方式相似。开关152也以相似的方式工作。然而,配置新计数器210来执行图1中的第一和第二计数器148、150的功能。计数器210接收来自PCI接口120和CODEC124的数据,对从缓冲器144、150的每一个发送的数据和它们接收到的数据保持跟踪。概念上,计数器的大小有两个意义可得到的供HSP处理的接收取样的数目,以及可得到的存储来自HSP的发送取样的空间的数目两者。实际上,可以把计数器只连接到缓冲器中之一。既然是这样,如果发送和接收传递不是同时发生的,则只有在两种传递都完成之后,计数器才具有它的双重意义。当在发送缓冲器150中可得到待传递到CODEC 124的数据时,又把计数器210连接到开关152,以把发送缓冲器150连接到CODEC 124。进一步配置计数器,当不可得到数据时,把空信号发生器156连接到CODEC 124,以发送空信号到数据发送系统114。
现在参考图6A,图中示出作为对比的现有技术配置的传统电路的示意图。电路610包括第一接收缓冲器612,把它分隔成预定长度的预定字段。把计数器614连接到缓冲器612,并配置成每当把一个数据的字段传递到缓冲器612,就发送中断到主机处理器。在操作中,CODEC接收模拟信号,把它转换成数字数据信号,并以两个字段(按所述字段分隔缓冲器)中的一个字段把它传递到缓冲器612。识别已经通过取样周期的预定数目的计数器把中断发送到主机处理器,表示该数据是可得到的。
然后,主机处理器616可以接收数据,所述数据是从留下数据的地址来的。不同于本发明,该传统配置的缓冲器612接收和传递字段块中的数据,发送和替代数据的字段。在溢出的情况中,当主机处理器616不能够获取数据时,可能丢失数据的整个字段。数据传递系统618必须保持具有连续的信号的通信链路,其走向从CODEC 611到接收缓冲器612、到主机处理器616,通过发送缓冲器620,通过CODEC 611返回,最终返回到数据传递系统618。如果把数据传递到接收缓冲器612,而主机处理器616不能够接收数据,则接着从CODEC传递的数据将重写数据的整个字段。这示出了本发明的一个优点,在本发明中,作为溢出状态的结果,只丢失绝对少量的数据。第二,优越于这种传统配置的本发明的其它方面是溢出处理计数器电路。为了产生周期性的中断,现有技术的计数器电路的作用是对取样周期进行计数。本发明的上述实施例的计数电路由于它的经扩充的范围而保持跟踪可得到的取样的确切数目,并且可以计算由于溢出而引起的取样丢失。在这个现有技术配置中,需要分开的溢出和下溢电路,连同计数器,以保持跟踪帧丢失的数目,所以HSP知道分隔两个缓冲器中的哪一个来使用。对比之下,本发明具有更简化的电路。
进一步根据本发明,可以包括其它特征,其中,根据HSP 112响应的能力,可以使中断率成为动态的。通过把门限值设置成HSP 112一次可以处理的最少取样数而设置额定中断率。只要HSP 112可以响应得足够块,在可得到下一个最少取样数之前,它将传递取样和确认中断。然而,例如,如果HSP 112以两倍长的时间来响应,则它将发现计数器表示准备好用于处理的两组取样。HSP 112可以传递用于处理的两组取样,所以下一个中断将不发生,直到可得到另外一组取样。如果HSP 112以这个方式继续进行,则中断的发生只有额定率的一半。一般,使在上述实施例中的中断率动态地匹配于HSP 112可以处理中断的速率。这与现有技术形成明显的对比,在现有技术中,以固定的周期率发生中断,使中断率增加。此外,在传统配置中,为了回波消除的目的,不能够对数据丢失进行自动计数。如果丢失数据,就完全重写,计数器并不计数,计数器的范围只是取样字段的长度。在这个情况下,为了回波消除的目的,在主机处理器中需要复杂的逻辑来对丢失数据进行计数。使用本发明的电路不需要这些复杂的算法。
现在参考图6b,示出在图6a的电路中的取样数据传递。以环形的方式把来自CODEC的取样放入缓冲器612中。当一个字段充满时,将使主机处理器中断。如果在该字段中放置另一个取样的时间之前,主机没有作出响应,则将丢失整个字段。例如,如果CODEC有一个可得到的取样,要放置在图中的位置64处,但是主机仍未处理在字段2中的以前数据,则将丢失所有这个数据,并由来自CODEC的新取样替代。既然是这样,回波消除过程将注意对丢失取样计数。
不同于传统缓冲器方案,在缓冲器溢出的情况下,本发明不需要使回波消除器去激励,或齐平(flush)缓冲器。主机,或系统的非实时部分,继续操作,就象什么也没有发生。结果是回波消除器缓冲器(未示出)将包括不是实际发送的一个信号,因为当没有按时得到实时信号时,发送一个空信号。结果,待从所接收信号减去的回波消除逻辑的输出是噪声。因此,传递到定时恢复和均衡器块的信号将是噪声。结果是缓冲器方案比传统系统要容易实施,在回波消除方案中无需更多的逻辑对取样的丢失进行计数。
接口包括适应性强的缓冲器系统,它在主机信号处理器和数据传递系统之间有效地传递数据,使数据处理系统按不同的载波频率和码元速率接收数据成为可能,并符合V.34和V.90建议。虽然在用于计算机系统的调制解调器的情况中描述和示出本实施例,但是可以把本发明的范围扩充到其它应用,其中,在实时和非实时系统之间的有效的数据传递是有用的。此外,在已经参考本发明的特定实施例进行上述说明的同时,可以理解,这些仅作为本发明的示例,可以对这些实施例进行修改而不偏离本发明的原理,由所附的权利要求书定义本发明的范围。
权利要求
1.用于把数据从实时传递系统传递到信号处理单元的一种接口,其特征在于,包括环形缓冲器,它具有输入端,并被配置成接收来自实时数据传递系统的数据取样,以及当信号处理单元接受传递时,把所接收的来自实时数据传递系统的数据取样周期性地发送到信号处理单元,其中,根据先进先出操作协议存储和传递数据;以及第一计数器电路,它与信号处理单元和数据传递系统进行通信,并且配置成对于从数据传递系统发送到环形缓冲器的每个数据取样进行递增,而对于从环形缓冲器发送到信号处理单元的每个数据取样进行递减,其中,把计数器电路配置成在超出缓冲器物理范围处对通过环形缓冲器传递的数据取样进行计数。
2.如权利要求1所述的接口,其特征在于,计数器电路具有可编程的门限值,并配置成当计数器通过门限值时,对信号处理单元产生一个中断。
3.如权利要求2所述的接口,其特征在于,把计数器配置成只在信号处理单元确认以前的中断之后才发送接着的中断。
4.如权利要求1所述的接口,其特征在于,信号处理单元周期性地询问计数器,以确定数据取样的可得到性。
5.如权利要求1所述的接口,其特征在于,进一步包括第二环形缓冲器,它具有输入端和输出端,配置成接收来自信号处理单元的数据取样,以及当可得到数据时,把数据取样发送到实时数据传递系统;以及第二计数器电路,它与第二环形缓冲器进行通信,并且配置成每当第二环形缓冲器接收到来自信号处理单元的数据取样时进行递增,而每当从第二环形缓冲器把数据取样发送到数据传递系统时进行递减,其中,把计数器电路配置成在超出缓冲器物理范围处进行计数。
6.如权利要求5所述的接口,其特征在于,进一步包括开关,它与第二计数器电路和数据传递系统进行通信;以及空信号发生器,它与开关进行通信,用于当已经到达第二门限值时把空信号发送到数据传递系统。
7.一种数据传递装置,用于把数据从数据传递系统传递到信号处理器,其特征在于,包括缓冲器装置,配置成以同步方式存储并传递数据传递系统和处理器之间的数据取样,致使所传递的接收取样数基本上等于所传递的发送取样数;计数器装置,配置成对通过缓冲器装置传递的数据进行计数,其中,进一步把计数器装置配置成在超过缓冲器的物理长度处进行计数。
8.如权利要求7所述的接口,其特征在于,计数器装置包括中断装置,把它配置成当计数器装置超过第一门限值而递增时把信号发送到信号处理器,接收来自信号处理单元的,确认计数器装置所发送的中断信号的确认信号,并只在已经确认以前的中断信号之后才发送后继的中断信号。
9.如权利要求7所述的接口,其特征在于,信号处理器周期性地询问计数器装置,以确定数据取样的可得到性。
10.一种调制解调器,用于在数据传递系统中进行通信,其特征在于,包括信号处理器,用于处理数据;一种装置,用于把缓冲器接收到的模拟信号转换成处理器可读出的数字信号,以及反之;缓冲器装置,配置成以同步方式存储并传递数据传递系统和处理器之间的数据取样,致使所传递的接收取样数基本上等于所传递的发送取样数;计数器装置,配置成对通过缓冲器装置传递到信号处理器的数据进行计数,其中,进一步把计数器装置配置成在超过缓冲器的物理长度处进行计数。
11.如权利要求10所述的调制解调器,其特征在于,进一步包括一种装置,用于当未准备好从缓冲器装置把数据传递到数据传递系统时发送空信号。
12.如权利要求10所述的调制解调器,其特征在于,计数器装置的最高有效位是粘结位,并配置成在计数器溢出的情况下保持数字逻辑1,并配置成当作为信号处理单元从第一缓冲器装置读出数据的结果而计数器接着递减时丢失数字逻辑1。
13.一种接口,用于传递信号处理单元和数据传递系统之间的数据,其特征在于,包括缓冲器电路,配置成在数据传递系统和信号处理单元之间同步地传递数据取样,缓冲器电路具有接收数据取样的至少一个输入端,以及发送数据取样的至少一个输出端,其中,根据先进先出协议传递数据取样;至少一个计数器电路,它与信号处理单元和数据传递单元进行通信,以对从每个环形缓冲器传递的数据取样的数目进行计数,其中,把计数器电路配置成在超出缓冲器的物理范围处进行计数;中断电路,它在计数器电路和信号处理单元之间进行通信,当计数器到达预定门限值时把中断信号发送到数据处理单元,以表示缓冲器具有可得到用于处理的最少数目的取样。
14.如权利要求13所述的接口,其特征在于,进一步包括空信号发生器,它与计数器进行通信;开关电路,它与计数器电路、数据传递系统、空信号发生器以及缓冲器电路的第一输出端进行通信,用于改变数据传递系统和缓冲器电路的第一输出端之间的通信以及数据传递系统和空信号发生器之间的通信,当可得到数据时,把数据从缓冲器电路传递到数据传递系统,并当不可得到数据时,把空信号从空信号发生器传递到数据传递系统。
15.一种方法,用于在主机信号处理器(HSP)和数据传递系统之间发送通信信号,其特征在于,所述方法包括下列步骤接收符合通信标准协议而产生的模拟信号;把模拟信号转换成表示数字数据取样的数字数据信号;根据先进先出操作协议把数字数据取样存储在接收缓冲器中;根据先进先出操作协议把数字数据取样从接收缓冲器发送到HSP;根据先进先出操作协议在发送缓冲器中存储第二数字数据取样;以及当可得到数字数据时,根据先进先出操作协议从发送缓冲器发送数字数据取样;使发送和接收缓冲器同步,致使供HSP读出的在接收缓冲器中可得到的新取样数目等于通过HSP写入的在发送缓冲器中的取样空间的数目;以及对缓冲器中的取样数目进行计数,致使计数机构所具有的范围大于缓冲器的物理大小。
16.如权利要求15所述的方法,其特征在于,把数字数据取样从接收缓冲器发送到主机信号处理器(HSP),其中,把中断信号发送到HSP,以表示缓冲器何时包括预定量的数据。
17.如权利要求15所述的方法,其特征在于,进一步包括当不可得到数字数据取样时发送空信号。
全文摘要
在调制解调器配置中使用的一种装置(116),它使从主机信号处理器(HSP112)到A/D-D/A转换器(CODEC 124)传递具有较少数据丢失、低噪声的数据成为可能,以及可以以变化的载波频率发送数据而无需改变缓冲器的大小。装置(116)进一步包括计数器(148),用于对在CODEC(124)和HSP(112)之间传递的数据取样进行计数,并向HSP(112)报警,以避免溢出状态。进一步配置计数器(148)在超出缓冲器的物理大小处进行计数,以便简化在溢出状态中的操作。包括发送缓冲器(150),用于把数据从HSP(112)传递到CODEC(124)。与HSP(112)和CODEC(124)进行通信的另一个计数器(154)与第一计数器(148)相似,它对从HSP(112)发送到CODEC(124)的数据进行计数。设置一个门限值以激励通过开关(152)连接到发送缓冲器(150)的输出端的空信号发生器,当发送缓冲器中没有数据时,把空信号发送到CODEC(124),以帮助保持CODEC(124)和数据传递系统之间的通信链路。
文档编号H04L12/56GK1377541SQ00813781
公开日2002年10月30日 申请日期2000年8月4日 优先权日1999年8月4日
发明者J·C·库克曼, 董平 申请人:Ess技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1