CN1967467A - 多传输率的环型缓冲器、装置、和方法 - Google Patents

多传输率的环型缓冲器、装置、和方法 Download PDF

Info

Publication number
CN1967467A
CN1967467A CNA200610103057XA CN200610103057A CN1967467A CN 1967467 A CN1967467 A CN 1967467A CN A200610103057X A CNA200610103057X A CN A200610103057XA CN 200610103057 A CN200610103057 A CN 200610103057A CN 1967467 A CN1967467 A CN 1967467A
Authority
CN
China
Prior art keywords
data
scope
address
circular buffer
writing speed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA200610103057XA
Other languages
English (en)
Other versions
CN1967467B (zh
Inventor
李松樵
林慧冰
埃里克·潘
约翰逊·塞贝尼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Via Technologies Inc filed Critical Via Technologies Inc
Publication of CN1967467A publication Critical patent/CN1967467A/zh
Application granted granted Critical
Publication of CN1967467B publication Critical patent/CN1967467B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Information Transfer Systems (AREA)

Abstract

一种控制环型缓冲器的装置、解展频接收器、和其方法。该控制环型缓冲器的装置包括一环型缓冲器和一控制器。该环型缓冲器,根据第一数据的第一写入速度,和该第一写入速度和第一读取速度间的第一时间差,决定所述环型缓冲器内的第一范围,于所述第一范围内,存取所述第一数据,根据第二数据的第二写入速度,和该第二写入速度和第二读取速度间的第二时间差,决定所述环型缓冲器内的第二范围,于所述第二范围内,存取所述第二数据,以及其中所述第二范围较所述第一范围大,并且所述第二范围由所述第一范围所部分覆盖。

Description

多传输率的环型缓冲器、装置、和方法
技术领域
本发明涉及环型缓冲器,特别是涉及使用多传输率的环型缓冲器的装置和方法。
背景技术
在数字讯号处理(digital signal process,DSP)系统、多媒体系统、计算机系统、和通讯系统经常运用多传输率(multirate data),其中数据以许多不同的数据种类、格式、和速率进行传输。多传输率通常伴随着使用暂存装置或缓冲器,其中前一笔数据在下一笔数据处理时会被移除或覆写。
虽然环型缓冲器早已使用于缓冲多传输率数据的应用中,但是有关环型缓冲器容量最佳化的课题仍是设计上的一项挑战。第三代移动通讯系统,例如全球移动通讯系统(Universal Mobile telecommunication System,UMTS),需要多传输率数据处理,在其中数据率随着每个数据帧(frame)而改变。
美国专利6,807,589披露了一种用于多传输率的环型缓冲器,使用四个地址表示前一笔数据的处理状态,并且利用这些地址来计算可用的内存空间,藉此内存空间可以分配下一个缓冲器空间给具有不同数据率的下一笔数据。然而,地址的维护和计算会增加电路复杂度和制造成本。
因此需要一种用于多传输率的环型缓冲器,其具有一种简单而有效率的内存分配方式。
发明内容
有鉴于此,于本发明一实施例中提出一种控制环型缓冲器(circular buffer)的方法,根据第一数据的第一写入速度,和该第一写入速度和第一读取速度间的第一时间差,决定所述环型缓冲器内的第一范围,于所述第一范围内,存取所述第一数据,根据第二数据的第二写入速度,和该第二写入速度和第二读取速度间的第二时间差,决定所述环型缓冲器内的第二范围,于所述第二范围内,存取所述第二数据,以及其中所述第二范围较所述第一范围大,并且所述第二范围由所述第一范围所部分覆盖。
此外,本发明另一实施例中提出一种控制环型缓冲器的装置,包括一环型缓冲器和一控制器。该环型缓冲器,根据第一写入速度来接收第一数据,以及根据第二写入速度来接收第二数据。该控制器,耦接到所述环型缓冲器,根据所述第一写入速度,和该第一写入速度和第一读取速度间的第一时间差,决定所述环型缓冲器内的第一范围,于所述第一范围内,存取所述第一数据,根据所述第二写入速度,和该第二写入速度和第二读取速度间的第二时间差,决定所述环型缓冲器内的第二范围;以及于所述第二范围内,存取所述第二数据。所述第二范围较所述第一范围大,并且所述第二范围由所述第一范围所部分覆盖。
此外,本发明另一实施例中提出一种解展频接收器(spread spectrumreceiver),根据第一写入速度来接收第一数据,以及根据第二写入速度来接收第二数据。该解展频接收器包括一早期指节(early finger)、一晚期指节(latefinger)、一匹配滤波器(matched filter)、和一耙式结合器(耙式combiner)。该早期指节,解展频(despreading)所述第一数据的第一早期数据以及所述第二数据的第二早期数据。该晚期指节,解展频所述第一数据的第一晚期数据以及所述第二数据的第二晚期数据。该匹配滤波器耦接到所述早期指节和晚期指节,分派所述早期数据以及所述第二早期数据给所述早期指节,分派所述晚期数据以及所述第二晚期数据给所述晚期指节。该耙式结合器,耦接到所述第一和所述第二指节,包括、一加法器、一环型缓冲器、和一控制器。该加法器,耦接到所述第一和所述第二指节,结合所述第一早期数据和所述第一晚期数据作为所述第一数据,以及结合所述第二早期数据和所述第二晚期数据作为所述第二数据。该环型缓冲器,耦接到所述加法器,接收所述第一和所述第二数据。该控制器,耦接到所述环型缓冲器,根据所述第一写入速度,和该第一写入速度和第一读取速度间的第一时间差,决定所述环型缓冲器内的第一范围,于所述第一范围内,存取所述第一数据,根据所述第二写入速度,和该第二写入速度和第二读取速度间的第二时间差,决定所述环型缓冲器内的第二范围;以及于所述第二范围内,存取所述第二数据。所述第二范围较所述第一范围大,并且所述第二范围由所述第一范围所部分覆盖。
为使本发明的所述目的、特征和优点能更明显易懂,下文特举较佳实施例,并结合附图详细说明如下。
附图说明
图1显示本发明实施例中的接收多传送率数据的装置方块图。
第2a、b和c图显示实施例中的内存分配。
图3显示本发明实施例中的耙式(耙式)接收器的方块图。
图4a显示本发明实施例中图3内的环型缓冲器的内存分配。
图4b显示本发明实施例中的在图3内数据存取操作。
图5a显示本发明实施例中图3内的环型缓冲器的内存分配。
图5b显示本发明实施例中的在图3内数据存取操作。
图6a显示本发明实施例中图3内的环型缓冲器的内存分配。
图6b显示本发明实施例中的在图3内数据存取操作。
具体实施方式
在此必须说明的是,在下述披露内容中所提出的不同实施例或范例,是用以说明本发明所揭示的不同技术特征,其所描述的特定范例或排列是用以简化本发明,然非用以限定本发明。此外,在不同实施例或范例中可能重复使用相同的参考数字与符号,这种重复使用的参考数字与符号是用以说明本发明所揭示的内容,而非用以表示不同实施例或范例间的关系。
图1显示本发明实施例中的接收多传送率(multirate)数据的装置方块图,包括环型缓冲器(circular buffer)10和控制器12。环型缓冲器10耦接到控制器12。
环型缓冲器10根据第一数据率接收第一数据Di1,以及根据第二数据率接收第二数据Di2。控制器12分派缓冲器空间给具有不同数据率的两个连续数据,使得其中的一由另一缓冲器空间所局部覆盖,用以达成环型缓冲器10的最小缓冲器空间需求。所分配的缓冲器空间,或称为范围,可以由控制器12根据数据写入速度、读取和写入速度的时间差、以及整个操作的时间周期来决定。在WCDMA系统的例子,整个操作的时间周期是以槽(slot)来定义。特别在WCDMA系统中,一个10微秒的帧包括15个槽,因此整个操作的时间周期为10/15微秒或0.667微秒。在某些实施例中,读取和写入操作的时间差为所预期的最大延迟。本领域的技术人员可以了解所述预定参数的选择可能由许多因素所决定,例如物理工程限制。控制器12根据第一写入速度决定环型缓冲器10内的第一范围,并于第一范围内存取第一数据,再根据第二写入速度决定环型缓冲器10内的第二范围,并于第二范围内存取第二数据。当第二写入速度大于第一写入速度,则在一特定时间内将预期有比第一数据Di1更多的第二数据Di2,所以第二范围比第一范围大。另外,第二范围被第一范围所局部覆盖,用以减低环型缓冲器10的最小空间需求,该最小空间需求由第二写入速度的最大写入速度所决定。
第一写入和读取操作的第一时间差等于第二写入和读取操作的第二时间差。特别在WCDMA的例子中,当接收来自多个基站的数据的符号(symbol)时多路径频道和WCDMA无线电频率网络,时间差可以视为最早和最晚指节(fingers)间的最大延迟,而其则由多路径频道以及WCDMA无线电频率网络的控制延迟所造成。例如,时间差可以是1024个时间切片(chip)。当展频因子为256时,范围是4个符号长度(=1024/256)。另外,在WCDMA实施例中时间差和展频因子无关。在一个实施例中,第一写入速度等于第一读取速度,并且第二写入速度等于第二读取速度。
在一实施例中,控制器12存取第一数据,利用在第一范围中写入第一数据Di1,接着在存取第二数据Di2于内前读取该第一数据Di1。控制器12利用写入而后读取第二范围来存取第二数据Di2。既然第二范围部分包括第一范围,控制器12确保只在读取第一数据Di1的相对应部分后,才释放第一范围的相对应缓冲器空间。控制器12经由写入指标(pointer)pWn和读取指标pRn,分别控制对于环型缓冲器10的写入和读取操作。
第一范围包括一第一起始地址和一第一结束地址,第二范围包括一第二起始地址和一第二结束地址。控制器12分派第一和第二范围,使得第一起始地址大致对齐于第二起始地址。图2a显示实施例中的内存分配,包括第一范围20a、第二范围22a、第一起始地址200a、第一结束地址202a、第一写入地址204a、第一读取地址206a、第二起始地址220a、第二结束地址222a、第二写入地址224a、以及第二读取地址226a。
参考图2a,第一范围20a比第二范围22a小,第一起始地址200a和第二起始地址220a对齐,并且第一结束地址202a比第二结束地址222a少。当第一数据Di1写入第一范围20a时,第一写入地址204a根据第一写入速度由第一起始地址200a向第一结束地址202a移动。第一读取地址206a根据一第一读取速度跟随第一写入地址204a,该第一读取速度相等或小于第一写入速度。相似地,当第二数据Di2写入第二范围22a时,第二写入地址224a根据第一写入速度由第二起始地址220a向第二结束地址222a移动。第二读取地址226a根据一第二读取速度跟随第二写入地址224a,该第二读取速度相等或小于第二写入速度。当环型缓冲器10的数据接收从第一数据率切换到第二数据率时,第一读取地址206a仍在向第一结束地址202a移动时,第二写入地址224a以比第一写入速度更快的第二写入速度,移入被第一范围20a所部分覆盖的第二范围22a。只要第一读取地址206a比第二写入地址224a更快到达第一结束地址202a,第二数据Di2就不会覆写(overwrite)第一数据Di1。第一写入地址204a和第二写入地址224a可以由读取/写入指标或写入指标实现,第一读取地址206a和第二读取地址226a可以由读取指标实现。
在另一实施例中,第一范围包括一第一起始地址和一第一结束地址,第二范围包括一第二起始地址和一第二结束地址。控制器12分派第一和第二范围,使得第一起始地址大致对齐于第二起始地址。图2b显示实施例中的内存分配,包括第一范围20b、第二范围22b、第一起始地址200b、第一结束地址202b、第一写入地址204b、第一读取地址206b、第二起始地址220b、第二结束地址222b、第二写入地址224b、以及第二读取地址226b。
参考图2b,第一范围20b比第二范围22b小,第一结束地址202和第二结束地址222b对齐,并且第一起始地址200b比第二起始地址220b大。当第一数据Di1写入第一范围20b时,第一写入地址204b根据第一写入速度由第一起始地址200b向第一结束地址202b移动。第一读取地址206b根据一第一读取速度跟随第一写入地址204b,该第一读取速度相等或小于第一写入速度。相似地,当第二数据Di2写入第二范围22b时,第二写入地址224b根据第一写入速度由第二起始地址220b向第二结束地址222b移动。第二读取地址226b根据一第二读取速度跟随第二写入地址224b,该第二读取速度相等或小于第二写入速度。当环型缓冲器10的数据接收从第二到第一数据率时,第二读取地址226b仍在向第二结束地址222b移动时,第一写入地址204b以比第二写入地址224b更慢的第一写入速度,移入被第二范围22b所部分覆盖的第一范围20b。只要第二读取地址226b比第一写入地址204b更快到达第二结束地址222b,第一数据Di1就不会覆写(overwrite)第二数据Di2。第一写入地址204b和第二写入地址224b可以由读取/写入指标或写入指标实现,第一读取地址206b和第二读取地址226b可以由读取指标实现。
在其它实施例中,第一范围包括第一起始地址、第一中央地址、和第一结束地址,第二范围包括第二起始地址、第二中央地址、和第二结束地址。控制器12分派第一和第二范围,使得第一中央地址大致对齐于第二中央地址。图2c显示实施例中的内存分配,包括第一范围20c、第二范围22c、第一起始地址200c、第一结束地址202c、第一写入地址204c、第一读取地址206c、第一中央地址208c、第二起始地址220c、第二结束地址222c、第二写入地址224c、以及第二读取地址226c、第二中央地址228c。
参考图2c,第一范围20c比第二范围22c小,第一中央地址208c和第二中央地址228c对齐,第一起始地址200c比第二起始地址220c大,并且第一结束地址202c比第二结束地址222c小。当第一数据Di1写入第一范围20c时,第一写入地址204c根据第一写入速度由第一起始地址200c向第一结束地址202c移动。第一读取地址206c根据一第一读取速度跟随第一写入地址204c,该第一读取速度相等或小于第一写入速度。相似地,当第二数据Di2写入第二范围22c时,第二写入地址224c根据第一写入速度由第二起始地址220c向第二结束地址222c移动。第二读取地址226c根据一第二读取速度跟随第二写入地址224c,该第二读取速度相等或小于第二写入速度。当环型缓冲器10的数据接收从第一数据率切换到第二数据率时,第一读取地址206c仍在向第一结束地址202c移动时,第二写入地址224c以比第一写入速度更快的第二写入速度,移入被第一范围20c所部分覆盖的第二范围22c。只要第一读取地址206c靠近第一结束地址202c,第二写入地址224c就至少为离第一读取地址206c一半第二范围的距离,使得第一读取地址206c有比第二写入地址224c更多时间到达第一结束地址202c。只要在第一读取地址206c的第一数据在第二写入地址224c的第二数据写入前被读取,第二数据Di2就不会覆写第一数据Di1。第一写入地址204c和第二写入地址224c可以由读取/写入指标或写入指标实现,第一读取地址206c和第二读取地址226c可以由读取指标实现。
图3显示本发明实施例中的耙式(Rake)接收器的方块图,用于接收码分多址(Code Division Multiple Access,CDMA)系统的多传送率数据。耙式接收器可以用于CDMA接收器,天线接收由不同路径来的数据,在RF解调器内解调该数据,再耙式接收器内结合所述数据用以形成一比个别讯号组成还强的数据,而后再将该结合的数据传送到数据解调器。各个路径可以利用交互关联(correlating)一解展频码(spreading code)和所接收的数据来找出。每个CDMA系统内的使用者各自具有一独一无二的解展频码,每个解展频码互相为正交(orthogonal),使得所有使用者能够共享一共同频谱。解展频码的速率称为时间切片率(chip rate)。每个数据所用到的时间切片数量称为展频因子(spreading factor,SF)。
SF=传输速率/数据率
CDMA系统使用4到512的展频因子在~5MHz的频带上展开基频(baseband)数据。
在CDMA系统内,一个时间切片期间为0.26微秒。一个具有256展频因子的数据符号由256个时间切片展频(spread)以及解展频(despread)。在一些实施例内,定义一个期间t为一个槽(slot)。在CDMA系统内,一个10微秒的帧(frame)具有10个槽。期间t等于环型缓冲器10/15或0.667微秒。如果展频因子为4,符号率为(4时间切片/符号)*(0.26ms/时间切片)等于1.04ms/符号或960符号/ms。在一实施例中,因为期间t定义为一个槽或0.667微秒,则范围可以估计为640符号(=0.667ms*960symbol/ms)。表一显示CDMA系统中在一个槽内,展频因子和相对应的缓冲器空间需求。
  展频因子   缓冲器空间(符号)
  4   640
  8   320
  16   160
  32   80
  64   40
  128   20
  256   10
表一
在另一实施例中,装置1用于通讯系统中耙式接收器内的耙式结合器,其中第一数据Di1包括第一早期数据De1和导因于多路径的第一晚期数据Dl1,类似地第二数据Di2包括第二早期数据De2和第二晚期数据Dl2。第一早期数据De1比第一晚期数据Dl1先到达耙式结合器,并且第二早期数据De2比第二晚期数据Dl2先到达耙式结合器。装置1还包括一耦接到环型缓冲器10和控制器12的加法器。控制器12写入第一早期数据De1到环型缓冲器10,然后在加法器内读取写入的第一早期数据De1用以第一晚期数据Dl 1结合作为第一数据Di1,并且将结果的第一数据Di1写入于第一范围。同样地,控制器12将第二早期数据De2写入到环型缓冲器10,然后在加法器内读取其所写入的将第二早期数据De2用以第二晚期数据Dl2结合作为第二数据Di2,并且将结果的第二数据Di2写入于第二范围。因为第二范围由第一范围所部份覆盖,所以必须在第二早期数据De2写入前读取第一数据Di1。第一早期数据De1、第一晚期数据Dl1、第一数据Di1、第二早期数据De2、第二晚期数据Dl2、第二数据Di2可以是CDMA数据,并且包括同相(in-phase,I)和正交(quadrature,Q)组成。
参考图3,耙式接收器3包括匹配滤波器30、早期指节32、晚期指节34、和耙式结合器36。匹配滤波器30耦接到早期指节32和晚期指节34,两者皆耦接到耙式结合器36。具有多路径组成的输入数据Din经由匹配滤波器30执行用以估计多路径的延迟,并且分配早期指节32和晚期指节34间相对应的耙式指节。早期指节32解展频(despread)和反错乱(descramble)第n个数据的早期数据Den,并且晚期指节34展开和反错乱第n个数据的晚期数据Dln。虽然这里只有显示早期指节32和晚期指节34,耙式接收器3可以根据需要具有更多的耙式指节。早期指节32和晚期指节34补偿早期数据Den和晚期数据Dln,传递所补偿的数据到耙式结合器36,并且结合两者来获得输入数据Din。早期数据Den和晚期数据Dln可以根据最大比结合(Maximum Ratio Combining,MRC)的方式来补偿。输入数据Din可以是CDMA数据,并且包括同相(in-phase,I)和正交(quadrature,Q)组成。在CDMA系统中,耙式接收器3可以用不同数据率接收连续的第一数据Di1和第二数据Di2。
耙式结合器36包括控制器360、加法器364、和环型缓冲器366。控制器控制器360耦接到加法器364和环型缓冲器366。加法器364接收以及结合早期数据Den和晚期数据Dln作为要储存于和环型缓冲器366内的第n个输入数据Din,环型缓冲器和环型缓冲器366根据第一数据率接收第一数据Di1,以及第二数据率接收第二数据Di2。控制器控制器360根据第一数据率决定控制器360内的第一范围,在第二范围内存取第二数据Di2根据第二数据率决定控制器360内的第二范围,并且在第二范围内存取第二数据Di2。第二数据率超过第一数据率,而且在相同时间内将会有比第一数据Di1多的的第二数据Di2,所以第二范围会大于第一范围。另外,第二范围会由第一范围所部份覆盖,用以减低和环型缓冲器366的最小空间需求,该最小空间需求由最大的第二范围所决定,所以也由第二数据Di2的最大数据率所决定。
在执行时耙式接收器3顺序获得第一早期数据De1、第一晚期数据Dl1、第二早期数据De2、和第二晚期数据Dl2。对第一早期数据De1补偿多路径效应,将补偿的数据写入和环型缓冲器366的第一范围,并且由控制器360读取储存的数据用以由加法器364和第一晚期数据Dl1结合,产生第一数据Di1。接着控制器360将第一数据Di1写回第一范围。同样地,控制器360写入补偿的第二早期数据De2到第二范围,加法器364将写入的第二早期数据De2和第二晚期数据Dl2结合产生第二数据Di2,并且将第二数据Di2写入第二范围。因为第二范围覆盖部分第一范围,所以必须在第二早期数据De2写入前读取第一数据Di1。
虽然图3披露了耙式接收器两个指节的实施例,本领域的技术人员可以在不偏离本发明精神的情况下,将耙式接收器3修改为多指节(multiplefingers)。当数据到达耙式结合器36时,其将会在加法器364将所有相对应指节的数据相加,并且储存相加后的数据到366,用以在结合所有相对应指节的数据后产生输出数据Do。
图4a显示本发明实施例中图3内的环型缓冲器的内存分配,包括内存范围40(SF=256)、41(SF=128)、42(SF=64)、43(SF=32)、44(SF=16)、45(SF=8)、46(SF=4)、内存地址400、412、一直到462,其中400和402、400和412、400和412、400和422、400和432、400和442、400和452、400和462分别为内存范围40、41、42、43、44、45、46的起始和结束地址,每个起始地址大致对齐于地址400。范围40表示最慢的数据率以及最大的展频因子(SF=256),范围46表示最快的数据率以及最小的展频因子(SF=4)。
图4b显示本发明实施例中的在图3内数据存取操作,利用图4a的内存分配。图4b包括第一范围40、第二范围44、第一和第二起始地址400、第一结束地址402、第二结束地址440、第一早期数据地址404、第一晚期数据地址406、第一读取地址408、第二早期数据地址444、第二晚期数据地址446、第二读取地址448。当接收数据时和环型缓冲器366由第一(SF=256)切换到第二展频因子(SF=16),第二早期数据地址444用一比第一数据率快速的第二数据率,移动至第一范围40部分覆盖的第二范围44,但是第一读取地址408还未到达第一结束地址402。只要第一读取地址408在第二早期数据地址444前到达还未到达第一结束地址402,第一数据Di1就不会被第二数据Di2覆写。第一早期数据地址404、第一晚期数据地址406、第二早期数据地址444、第二晚期数据地址446可以用读取和写入指标实现,第一读取地址408和第二读取地址448可以用读取指针实现。
图5a显示另一本发明实施例中图3内的环型缓冲器的内存分配,包括内存范围50(SF=256)、51(SF=128)、52(SF=64)、53(SF=32)、54(SF=16)、54(SF=8)、56(SF=4)、内存地址500、512、一直到562,其中502和500、512和500、522和500、532和500、542和500、552和500、562和500分别为内存范围50、51、52、53、54、55、56的起始和结束地址,每个起始地址大致对齐于地址500。范围50表示最慢的数据率以及最大的展频因子(SF=256),范围56表示最快的数据率以及最小的展频因子(SF=4)。
图5b显示本发明实施例中在图3内数据存取操作,利用图5a的内存分配。图5b包括第一范围54、第二范围50、第一和第二结束地址500、第一起始地址542、第二起始地址500、第一早期数据地址544、第一晚期数据地址546、第一读取地址548、第二早期数据地址504、第二晚期数据地址506、第二读取地址508。当接收数据时和环型缓冲器366由第一(SF=16)切换到第二展频因子(SF=256),第二早期数据地址504用一比第一数据率慢的第二数据率,移动至第一范围54部分覆盖的第二范围50,但是第一读取地址548还未到达第一结束地址500。只要第一读取地址548在第二早期数据地址504前到达还未到达第一结束地址500,第一数据Dil就不会被第二数据Di2覆写。第一早期数据地址544、第一晚期数据地址546、第二早期数据地址504、第二晚期数据地址506可以用读取和写入指标实现,第一读取地址548和第二读取地址508可以用读取指针实现。
图6a显示另一本发明实施例中图3内的环型缓冲器的内存分配,包括内存范围60(SF=256)、61(SF=128)、62(SF=64)、63(SF=32)、64(SF=16)、64(SF=8)、66(SF=4)、内存地址600、612、一直到670,其中600和602、610和612、620和612、630和632、640和642、650和652、660和662分别为内存范围60、61、62、63、64、66、66的起始和结束地址,每个起始地址大致对齐于地址670。范围60表示最慢的数据率以及最大的展频因子(SF=256),范围66表示最快的数据率以及最小的展频因子(SF=4)。
图6b显示本发明实施例中在图3的数据存取操作,利用图6a的内存分配。图6b包括第一范围62、第二范围63、第一起始地址620、第一结束地址622、第二起始地址630、第二结束地址632、第一早期数据地址624、第一晚期数据地址626、第一读取地址628、第二早期数据地址634、第二晚期数据地址636、第二读取地址638。当接收数据时和环型缓冲器366由第一(SF=256)切换到第二展频因子(SF=16),第二早期数据地址604用一比第一数据率快的第二数据率,移动至第一范围62部分覆盖的第二范围63,但是第一读取地址628还未到达第一结束地址622。只要第一读取地址628在第二早期数据地址634前到达还未到达第一结束地址622,第一数据Di1就不会被第二数据Di2覆写。第一早期数据地址624、第一晚期数据地址626、第二早期数据地址634、第二晚期数据地址636可以用读取和写入指标实现,第一读取地址628和第二读取地址638可以用读取指针实现。
在本发明另一实施例中披露了一控制图1的装置的方法,包括根据第一数据Di1的第一写入速度,决定环型缓冲器10内的第一范围,于第一范围内,存取第一数据Dil,根据第二数据Di2的第二写入速度,决定环型缓冲器10内的第二范围,以及于第二范围内,存取第二数据Di2。第二写入速度比第一写入速度大,并且第二范围比第一范围大。另外,第二范围由第一范围所部分覆盖来减低环型缓冲器10的最小空间需求,该最小空间需求由最大的第二范围所决定,所以也由第二数据Di2的最大数据率所决定。
在某些实施例中,存取第一数据Dil步骤包括写入第一数据Di1于第一范围内,在存取第一范围内的第二数据Di2之前,以及读取第一范围内的第一数据Di1,使得第一数据Di1不会被第二数据Di2覆写。存取第二数据Di2步骤包括,写入第二数据Di2于第二范围内,以及读取第二范围内的第二数据Di2。
在一些用于耙式接收器的耙式结合器内的实施例中,耙式结合器接收连续的第一早期数据De1、第一晚期数据Dl1、第二早期数据De2、和第二晚期数据Dl2。该方法还包括写入第一早期数据至第一范围内,结合第一早期数据De1和第一晚期数据Dl1,作为第一数据Di1,写入第二早期数据至第二范围内,以及结合第二早期数据De2和第二晚期数据Dl2,作为第二数据Di2。
在一个实施例中,第一和第二范围在起始地址对齐,并且第一写入和读取操作间,以及第二写入和读取操作间,都具有N个时间切片的时间差。如果第一速度由第一展频因子SF1所决定,第二速度由第二展频因子SF2所决定,则第一读取操作将会和第一写入操作相差N/SF1个符号。在第二写入操作起始后,第二写入地址由环型缓冲器10的起始处开始,即地址0。对于1个槽的例子来说,同时第一读取地址会在(2560/SF1-N/SF1)的位置。如果第一读取操作先到达第一结束地址,然后第二写入操作才进入第一范围所包括的地址,将不会发生第二数据覆写第一数据的问题。换句话说,2560/SF1*SF2>N/SF1*SF1的情况要成立。因此(SF2/SF1>N/2560)
在某些WCDMA的实施例中,可以根据早期和晚期指节间的时间差而选择N的最小值。
在另一些实施例中,第一和第二范围在结束地址对齐,并且如同前面的实施例,也具有第一展频因子SF1、第二展频因子SF2、和N个时间切片的时间差。当地二写入操作在第二范围的起始地址(640-2560/SF2)开始时,第一读取指针位于地址(640-N/SF1)。如果第一读取操作先到达第一结束地址,然后第二写入操作才进入第一范围所包括的地址,将不会发生第二数据覆写第一数据的问题。换句话说,(2560/SF2*SF2>N/SF1*SF1)以及(640-2560/SF2<640-N/SF1)的情况要成立。因此(SF1/SF2>N/2560),并且(2560>N)。
在其它实施例中,第一和第二范围在中央地址大致对齐,并且如同前面的实施例,也具有第一展频因子SF1、第二展频因子SF2、和N个时间切片的时间差。如果以下关系成立则数据就不会被覆写:(SF1+SF2)/SF1>N/1280,其中SF2<SF1。当第二写入速度比第一写入速度慢时,第二写入操作要先写完一半的缓冲器空间(1280个时间切片),在同时第一读取操作可以完成到结束地址的过程。在中央地址大致对齐的实施例中,可以使用所有第一道第二写入速度的切换而不会导致第二数据覆写到第一数据。
虽然本发明部分披露使用CDMA系统,所述电路和方法也可以运用在其它系统中,本领域的技术人员可以根据本发明的精神在合适的地方作更改。
本发明虽以较佳实施例披露如上,然其并非用以限定本发明,本领域技术人员在不脱离本发明的精神和范围的前提下可做若干的更动与润饰,因此本发明的保护范围以本发明的权利要求为准。

Claims (18)

1.一种在一预定期间内控制环型缓冲器的方法,包括:
根据一第一数据的一第一写入速度,和该第一写入速度和该第一读取速度间的一第一时间差,决定所述环型缓冲器内的一第一范围;
于所述第一范围内,存取所述第一数据;
根据一第二数据的一第二写入速度,和该第二写入速度和该第二读取速度间的一第二时间差,决定所述环型缓冲器内的一第二范围;以及
于所述第二范围内,存取所述第二数据;以及
其中所述第二范围较所述第一范围大,并且所述第二范围由所述第一范围所部分覆盖。
2.如权利要求1所述的控制环型缓冲器的方法,其中所述存取所述第一数据步骤包括:
写入所述第一数据于所述第一范围内;以及
在存取所述第一范围内的所述第二数据之前,读取所述第一范围内的所述第一数据;以及
所述存取所述第二数据步骤包括:
写入所述第二数据于所述第二范围内;以及
读取所述第二范围内的所述第二数据。
3.如权利要求1所述的控制环型缓冲器的方法,还包括:
写入一第一早期数据至所述第一范围内;
结合所述第一早期和一第一晚期数据,作为所述第一数据;
写入一第二早期数据至所述第二范围内;以及
结合所述第二早期和一第二晚期数据,作为所述第二数据;。
4.如权利要求1所述的控制环型缓冲器的方法,其中所述第一范围包括一第一起始地址和一第一结束地址,所述第二范围包括一第二起始地址和一第二结束地址,所述第一范围和第二范围的对齐方式由以下其中一种作选择:
所述第一起始地址大致对齐于所述第二起始地址;
所述第一结束地址大致对齐于所述第二结束地址;以及
所述第一范围和所述第二范围以中央对齐。
5.如权利要求1所述的控制环型缓冲器的方法,其中所述第一和所述第二数据是码分多址数据,以及所述第一和所述第二写入速度分别由所述第一和所述第二数据的第一和第二展频因子所决定。
6.如权利要求1-5所述的控制环型缓冲器的方法,其中所述第一写入速度由第一展频因子SF1所决定,所述第二写入速度由第二展频因子SF2所决定,所述第一及第二时间差为N个时间切片,并且所述预定期间为一个槽期间,第一展频因子SF1、第二展频因子SF2、与第一及第二时间差N个时间切片的间的关系由以下其中的一来决定:
SF2/SF1>N/2560,如果所述第一起始地址大致对齐于所述第二起始地址;
SF1/SF2>N/2560并且2560>N,如果所述第一结束地址大致对齐于所述第二结束地址;以及
(SF1+SF2)/SF1>N/1280其中SF2<SF1,如果所述第一范围和所述第二范围以中央对齐。
7.一种控制环型缓冲器的装置,包括:
一环型缓冲器,在一预定期间内根据一第一写入速度来接收一第一数据,以及根据一第二写入速度来接收一第二数据;
一控制器,耦接到所述环型缓冲器,根据所述第一写入速度,和该第一写入速度和一第一读取速度间的一第一时间差,决定所述环型缓冲器内的一第一范围;于所述第一范围内,存取所述第一数据;根据所述第二写入速度,和该第二写入速度和一第二读取速度间的第二时间差,决定所述环型缓冲器内的一第二范围;以及于所述第二范围内,存取所述第二数据;以及
其中所述第二范围较所述第一范围大,并且所述第二范围由所述第一范围所部分覆盖。
8.如权利要求7所述的控制环型缓冲器的装置,其中所述控制器写入所述第一数据于所述第一范围内,在存取所述第一范围内的所述第二数据之前,读取所述第一范围内的所述第一数据,写入所述第二数据于所述第二范围内,以及读取所述第二范围内的所述第二数据。
9.如权利要求7所述的控制环型缓冲器的装置,其中所述控制器还写入一第一早期数据至所述第一范围内,结合所述第一早期和一第一晚期数据,作为所述第一数据,写入一第二早期数据至所述第二范围内,以及结合所述第二早期和一第二晚期数据,作为所述第二数据。
10.如权利要求8所述的控制环型缓冲器的装置,其中所述第一范围包括一第一起始地址和一第一结束地址,所述第二范围包括一第二起始地址和一第二结束地址,所述第一范围和第二范围的对齐方式由以下其中一种作选择:
所述第一起始地址大致对齐于所述第二起始地址;
所述第一结束地址大致对齐于所述第二结束地址;以及
所述第一范围和所述第二范围以中央对齐。
11.如权利要求7所述的控制环型缓冲器的装置,其中所述第一和所述第二数据是码分多址数据,以及所述第一和所述写入速度分别由所述第一和所述第二数据的第一和第二展频因子所决定。
12.如权利要求7-11所述的控制环型缓冲器的装置,其中所述第一写入速度由第一展频因子SF1所决定,所述第二写入速度由第二展频因子SF2所决定,所述第一及第二时间差为N个时间切片,并且所述预定期间为一个槽期间,第一展频因子SF1、第二展频因子SF2、第一及第二时间差N个时间切片的间的关系由以下其中的一来决定:
SF2/SF1>N/2560,如果所述第一起始地址大致对齐于所述第二起始地址;
SF1/SF2>N/2560并且2560>N,如果所述第一结束地址大致对齐于所述第二结束地址;以及
(SF1+SF2)/SF1>N/1280其中SF2<SF1,如果所述第一范围大致对齐和所述第二范围以中央对齐。
13.一种解展频接收器(spread spectrum receiver),用于在一预定期间内,根据一第一写入速度来接收一第一数据,以及根据一第二写入速度来接收一第二数据,包括:
一早期指节,解展频所述第一数据的一第一早期数据以及所述第二数据的一第二早期数据;
一晚期指节,解展频所述第一数据的一第一晚期数据以及所述第二数据的一第二晚期数据;
一匹配滤波器耦接到所述早期指节和晚期指节,分派所述早期数据以及所述第二早期数据给所述早期指节,分派所述晚期数据以及所述第二晚期数据给所述晚期指节,以及;
一耙式结合器,耦接到所述第一和所述第二指节,包括:
一加法器,耦接到所述第一和所述第二指节,结合所述第一早期数据和所述第一晚期数据作为所述第一数据,以及结合所述第二早期数据和所述第二晚期数据作为所述第二数据;
一环型缓冲器,耦接到所述加法器,接收所述第一和所述第二数据;
一控制器,耦接到所述环型缓冲器,根据所述第一写入速度,和该第一写入速度和第一读取速度间的一第一时间差,决定所述环型缓冲器内的第一范围,于所述第一范围内,存取所述第一数据,根据所述第二写入速度,和该第二写入速度和第二读取速度间的一第二时间差,决定所述环型缓冲器内的第二范围;以及于所述第二范围内,存取所述第二数据;以及
其中所述第二范围较所述第一范围大,并且所述第二范围由所述第一范围所部分覆盖。
14.如权利要求13所述的解展频接收器,其中所述控制器写入所述第一数据于所述第一范围内,在存取所述第一范围内的所述第二数据之前,读取所述第一范围内的所述第一数据,写入所述第二数据于所述第二范围内,以及读取所述第二范围内的所述第二数据。
15.如权利要求13所述的解展频接收器,其中所述早期和所述晚期指节更补偿所述第一早期数据、所述第二早期数据、所述第一晚期数据、以及所述第二晚期数据的相位位移。
16.如权利要求13所述的解展频接收器,其中所述第一范围包括一第一起始地址和一第一结束地址,所述第二范围包括一第二起始地址和一第二结束地址,所述第一范围和第二范围的对齐方式由以下其中一种作选择:
所述第一起始地址大致对齐于所述第二起始地址;
所述第一结束地址大致对齐于所述第二结束地址;以及
所述第一范围和所述第二范围以中央对齐。
17.如权利要求13所述的解展频接收器,其中所述第一和所述第二数据是码分多址数据,以及所述所述第一和所述写入速度分别由所述第一和所述第二数据的第一和第二展频因子所决定。
18.如权利要求13-17所述的解展频接收器,其中所述第一写入速度由第一展频因子SF1所决定,所述第二写入速度由第二展频因子SF2所决定,所述第一及第二时间差为N个时间切片,并且所述预定期间为一个槽期间,第一展频因子SF1、第二展频因子SF2、第一及第二时间差N个时间切片的间的关系由以下其中的一来决定:
SF2/SF1>N/2560,如果所述第一起始地址大致对齐于所述第二起始地址;
SF1/SF2>N/2560并且2560>N,如果所述第一结束地址大致对齐于所述第二结束地址;以及
(SF1+SF2)/SF1>N/1280其中SF2<SF1,如果所述第一范围和所述第二范围以中央对齐。
CN200610103057XA 2005-07-11 2006-07-11 多传输率的环型缓冲器、装置、和方法 Active CN1967467B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US69824005P 2005-07-11 2005-07-11
US60/698,240 2005-07-11
US11/456,229 2006-07-10
US11/456,229 US7689739B2 (en) 2005-07-11 2006-07-10 Spread spectrum receiver, apparatus and method of a circular buffer for multirate data

Publications (2)

Publication Number Publication Date
CN1967467A true CN1967467A (zh) 2007-05-23
CN1967467B CN1967467B (zh) 2010-06-23

Family

ID=45073895

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200610103057XA Active CN1967467B (zh) 2005-07-11 2006-07-11 多传输率的环型缓冲器、装置、和方法

Country Status (3)

Country Link
US (1) US7689739B2 (zh)
CN (1) CN1967467B (zh)
TW (1) TWI321912B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7706427B2 (en) * 2005-08-18 2010-04-27 Agere Systems Inc. Method and apparatus for compact OVSF despreading
US20120198267A1 (en) 2011-01-31 2012-08-02 Srinjoy Das System and Method for Facilitating Data Transfer Between a First Clock Domain and a Second Clock Domain
US11481323B2 (en) * 2019-09-25 2022-10-25 Meta Platforms Technologies, Llc Systems and methods for efficient data buffering

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0369920A3 (en) * 1988-11-18 1992-01-15 Rolm Company Interleaving circular buffers
JP3154190B2 (ja) * 1992-04-10 2001-04-09 ソニー株式会社 汎用走査周期変換装置
US5448706A (en) * 1992-05-13 1995-09-05 Sharp Microelectronics Technology, Inc. Address generator for multi-channel circular-buffer style processing
KR970005598B1 (ko) * 1994-06-29 1997-04-18 삼성전자 주식회사 대역확산통신방식의 비동기 디지탈 수신장치
US6404828B2 (en) * 1997-03-12 2002-06-11 Interdigital Technology Corporation Multichannel decoder
US5916309A (en) * 1997-05-12 1999-06-29 Lexmark International Inc. System for dynamically determining the size and number of communication buffers based on communication parameters at the beginning of the reception of message
US6324235B1 (en) * 1997-11-13 2001-11-27 Creative Technology, Ltd. Asynchronous sample rate tracker
GB2357406B (en) * 1999-12-14 2004-01-21 Nokia Mobile Phones Ltd Combiner
WO2002011387A1 (en) * 2000-07-31 2002-02-07 Morphics Technology, Inc. Apparatus and methods for sample selection and reuse of rake fingers in spread spectrum systems
US6624767B1 (en) * 2000-09-06 2003-09-23 Qualcomm, Incorporated Data buffer structure for asynchronously received physical channels in a CDMA system
US7187708B1 (en) * 2000-10-03 2007-03-06 Qualcomm Inc. Data buffer structure for physical and transport channels in a CDMA system
ATE365345T1 (de) * 2001-02-06 2007-07-15 Nortel Networks Sa Mehrfachratenringpuffer und entsprechendes betriebsverfahren
EP1164700B1 (en) * 2001-03-31 2002-12-04 Agilent Technologies, Inc. (a Delaware corporation) Data flow synchronization
TW507209B (en) 2001-05-25 2002-10-21 Acer Labs Inc Asynchronous FIFO controller
US8274892B2 (en) * 2001-10-09 2012-09-25 Infinera Corporation Universal digital framer architecture for transport of client signals of any client payload and format type
US7286487B2 (en) * 2002-11-18 2007-10-23 Infinera Corporation Optical transmission network with asynchronous mapping and demapping and digital wrapper frame for the same
US6934826B2 (en) * 2002-03-26 2005-08-23 Hewlett-Packard Development Company, L.P. System and method for dynamically allocating memory and managing memory allocated to logging in a storage area network
US20050262314A1 (en) * 2004-05-21 2005-11-24 Oh Yong S System and method for circular buffer

Also Published As

Publication number Publication date
US20070022230A1 (en) 2007-01-25
CN1967467B (zh) 2010-06-23
US7689739B2 (en) 2010-03-30
TWI321912B (en) 2010-03-11
TW200705834A (en) 2007-02-01

Similar Documents

Publication Publication Date Title
CN1122375C (zh) 码分多址移动通信设备
CN1264283C (zh) 通信系统中处理接收信号的方法和设备
CN1210877C (zh) 用于改进时隙同步的系统和方法
KR20050098789A (ko) 모든 레이크 핑거에 이용되는 공유 메모리를 구비한 사용자장치(ue)의 레이크 구조
EP1336257B1 (en) System and method of deskew buffering cdma signals
CN1967467A (zh) 多传输率的环型缓冲器、装置、和方法
CN1605163A (zh) 用于多速率物理信道接收的方法和wcdma
US8134981B2 (en) Correlator for primary cell search using memory architecture
CN101291157A (zh) 用于可缩放的脱机cdma解调的装置和方法
KR20090038561A (ko) 무선통신 시스템에서 다중 경로 신호 수신 장치 및 방법
EP1300961B1 (en) Receiving unit and semiconductor device
CN101295997A (zh) 耙式接收器
CN101056122A (zh) 一种宽带码分多址系统中导频的rake接收实现方法及装置
CN1248441C (zh) 一种码分多址系统中信道估计装置
CN1303839C (zh) 一种降低小区初搜运算量并提高运算精度的方法及装置
CN1619975A (zh) 查找多径信道的延迟的方法
KR20020042046A (ko) 핑거의 fifo 수를 줄이는 심볼 컴바이닝 방법, 이를이용한 레이크 수신기 및 이러한 레이크 수신기를구동시키기 위한 방법
US8462818B2 (en) Method for processing CDMA signals and a device having CDMA signal capabilities
KR100492978B1 (ko) 부호분할다중접속 이동통신시스템의 기지국에서 메모리관리방법
CN101068126A (zh) 用于码分多址的峰值搜索方法和装置
EP1469611A2 (en) Rake reception method and apparatus
KR20060084260A (ko) 광대역 코드 분할 다중 접속 기지국 모뎀의 제어 채널프로세서 구현 장치 및 그 방법
KR20040057394A (ko) 부호분할 다중접속 수신기의 결합기의 디스큐잉 버퍼 및그 동작 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant