CN100456679C - 供双缓存tdm交换机使用的数据存储器扩展 - Google Patents
供双缓存tdm交换机使用的数据存储器扩展 Download PDFInfo
- Publication number
- CN100456679C CN100456679C CNB2004100480842A CN200410048084A CN100456679C CN 100456679 C CN100456679 C CN 100456679C CN B2004100480842 A CNB2004100480842 A CN B2004100480842A CN 200410048084 A CN200410048084 A CN 200410048084A CN 100456679 C CN100456679 C CN 100456679C
- Authority
- CN
- China
- Prior art keywords
- data
- input
- frame
- output
- cache device
- 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.)
- Expired - Fee Related
Links
- 230000015654 memory Effects 0.000 title claims abstract description 96
- 239000000872 buffer Substances 0.000 title claims abstract description 47
- 238000013500 data storage Methods 0.000 title claims description 52
- 230000009977 dual effect Effects 0.000 title 1
- 238000003860 storage Methods 0.000 claims description 22
- 238000000034 method Methods 0.000 claims description 9
- 101100166829 Mus musculus Cenpk gene Proteins 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 description 17
- 102100023471 E-selectin Human genes 0.000 description 12
- 241000283074 Equus asinus Species 0.000 description 12
- 101000622123 Homo sapiens E-selectin Proteins 0.000 description 12
- 241001269238 Data Species 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- AWSBQWZZLBPUQH-UHFFFAOYSA-N mdat Chemical compound C1=C2CC(N)CCC2=CC2=C1OCO2 AWSBQWZZLBPUQH-UHFFFAOYSA-N 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000005039 memory span Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 230000008676 import Effects 0.000 description 2
- 108010076504 Protein Sorting Signals Proteins 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 238000013497 data interchange Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9063—Intermediate storage in different physical parts of a node or terminal
- H04L49/9068—Intermediate storage in different physical parts of a node or terminal in the network interface card
- H04L49/9073—Early interruption upon arrival of a fraction of a packet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0016—Arrangements for synchronising receiver with transmitter correction of synchronization errors
- H04L7/005—Correction by an elastic buffer
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Time-Division Multiplex Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种支持多速率输入和输出串行数据流的时分多路复用交换机,所述时分多路复用交换机具有分别与存储器的每个部分相关联的缓存器扩展的双缓存数据存储器。该扩展在双缓存数据存储器的主部分已经交换后的延迟周期存储剩余数据。
Description
技术领域
本发明涉及数据交换领域,特别是双缓存TDM(时分多路复用)交换机。
背景技术
TDM交换机的双缓存数据存储的基本工作原理是,把数据的整帧存储在一个缓存器中,同时从其它缓存器播放数据的整帧,其中所述TDM交换机支持具有可编程少量延迟的多速率输入和输出,该输入和输出都是以每个流为基础而编程的。在帧边界处,使用地址上的硬件复用器逻辑地交换缓存器,使数据和控制信号送入存储器,然后整个周期重复用于后续帧。名为“速率变换的数字交换机”的美国专利US6,507,579公开了以这种方式工作的交换机,该专利的内容作为参考引用。该交换机被命名为PASIC,并将在其后的说明中沿用。名为“利用两个存储体间数据互换的快速数字信号处理器”的美国专利US5,649,148也公开了使用较小存储器的双缓存技术,该专利的内容作为参考引用。
在大多数理想情况下,任何特定帧期间接收的任何数据都可以被交换,并出现在跟随帧期间的输出上。然而,由于以下两个原因,使某些被交换数据不能在第二跟随帧期间之前出现在输出端:
1、到达帧尾的数据不能从输入移位寄存器中读出,并被加载到输入存储缓存器中直至跟随帧开始之后。
2、在一个帧开始之前,在该帧开始时被交换到时隙中的数据通常必需被加载到它们的相应输出移位寄存器中。由于这些原因,某些被交换的数据被延迟了两帧。
支持常量延迟特征的TDM交换机将包含某类存储缓存器,用来存储将出现在一帧输出的任何数据,并延迟该数据一帧。这样,任何特定帧上接收的所有数据将出现在紧跟接收数据的第二帧上。实现常量延迟特征的其它方式是可能的。支持该常量延迟特征的商用TDM的实例是Mitel装置MT8985和MT8986装置,这些装置在1997年11出版的“Mitel半导体数字交换和连网部件”中公开。
在现有技术中,如果存在多速率流和少量延迟,则这些特征可以以每个流为基础来控制,然后将根据数据速率和少量延迟设置改变信道时间的持续时间,因此,数据可出现到数据存储器的时间点也变化。由于数据流可以由不同速率或少量被编程的延迟,因此没有可以逻辑地交换存储缓存器并保证包含一个完整数据帧的时间单点。
在可变延迟吞吐量TDM交换机中,有多少帧数据延迟无关紧要,这里没有问题。然而,大多数现代TDM交换机包括常量延迟特征,该常量延迟特征需要任何特定帧期间接收的任何数据将可用于在一帧随后有固定数量帧期间的输出,而不考虑程控连接路径或者任何其它程控特征。该数量最好是两帧。
克服该问题的最有效的传统技术是使用一个第二数据存储器。数据存储缓存器在时间单点交换,但是该时间单点通常不一定在接收D1数据之后(参见图1)。下一帧数据被存储在第二不同的数据存储缓存器中。每个存储缓存器可精确地含有或者不含有一个完整的数据帧,这取决于每个流的程控数据速率。
然后,一个硬件单元被用来根据连接路径适当地从两个数据存储器之一个选择数据。该技术的显著缺点是附加存储器的尺寸。此外,该技术经常引发输出的附加帧延迟。
许多较低带宽TDM交换机不使用所述的双缓存的数据存储器,而是使用多数据存储器(通常是2个或3个),以及一个具有存储输入数据的充足时间和性能的硬件交换单元,并读出预期连接数据将其顺序地加载到输出串行移位寄存器中。
尽管从硬件观点看,该技术可能是有利的,但是在非常大的交换机(例如具有32,768个信道)中该特定的交换技术不能使用,因为没有足够时间执行顺序存入数据存储器的数据存储,以及可用时间的数据恢复和交换。PASIC中使用的双缓存技术,通过逻辑地将交换机的数据存储部分与数据重呼部分分离,明显改善了吞吐量能力。
第三技术是提供许更小的多双缓存数据存储段,其每一存储段用于每一输入流,然后在这些存储段精确收集一个数据帧的时间点适当交换每个存储段。该技术工作良好,但是会出现具有许多小存储元件的缺点。大多数SRAM较少有效地以小尺寸实施。
发明内容
本发明提供了一种小数据存储器扩展,该扩展正好大得足以保持,因较低程控输入速率和输入比特延迟而可能发生的过运行的最大数据量。
根据本发明,提供了一种支持多速率输入和输出串行数据流的时分多路复用交换机,包括:多个输入寄存器,用于接收具有不同数据速率的多个串行输入数据流;多个输出寄存器,用于输出具有不同数据速率的多个串行输出数据流;一个数据存储器,用于临时存储在所述输入数据流与输出数据流之间交换的数据,所述数据存储器具有用于存储连续数据帧的第一和第二主缓存器部分;一个连接存储器,用于存储所述已交换数据的连接路径;一个控制器,用于在所述数据存储器的所述第一和第二主缓存器部分之间进行交换;和分别与所述第一和第二主缓存器部分关联的第一和第二缓存器扩展,用于存储来自由于较慢程控速率或者输入比特延迟的结果而随后接收的相同帧的残余数据,所述控制器在相对于所述第一和第二主缓存器部分的交换的一个延迟之后,程控交换所述第一和第二缓存器扩展。其中,所述控制器予以程控,在收到帧内具有最高数据速率的流包括的所有数据时,交换所述主缓存器部分,以及在收到来自所述帧内其它数据流包括的数据时,交换所述缓存器扩展。
该技术允许在以下TDM交换机中使用双缓存数据存储器:支持具有可编程少量延迟的多速率输入和输出的TDM交换机,其中可编程输入和输出延迟以每个流为基础编程;支持常量延迟吞吐量特征的TDM交换机。然而,本发明还可应用于提供可变延迟的需要数据帧相容处理的系统。
数据存储器最好是双端口存储器,尽管单端口存储器也可以被利用。缓存器扩展是小的适宜的SRAM,例如512字节的SRAM。
本发明还提供了一种控制支持多速率输入和输出串行数据流的时分多路复用交换机的方法,包括以下步骤:接收多个串行输入数据流;提供一个数据存储器,以临时存储将在所述输入数据流与所述输出数据流之间交换的数据,所述数据存储器具有用于存储连续数据帧的第一和第二主缓存器部分,所述第一和第二主缓存器部分分别与用于存储来自由于较慢程控速率或者输入比特延迟的结果而随后接收的相同帧的残余数据的第一和第二缓存器扩展相关联;在所述数据存储器的所述第一和第二主缓存器部分之间进行交换;在相对于所述第一和第二主缓存器部分之间的交换的一个延迟之后,在所述第一和第二缓存器扩展之间进行交换。其中,在收到帧内具有最高数据速率的流包括的所有数据时,在所述主缓存器部分之间进行交换;而在收到来自所述帧内其它数据流包括的数据时,在所述缓存器扩展之间进行交换。
附图简要说明
下面将参照附图,仅通过实例详细说明本发明。
图1是显示可用于可变比特速率的数据的时序图;
图2是基本TDM交换机配置的功能方框图;
图3是数据存储器扩展的方框图;
图4是存储器扩展的时序图;
图5是显示输出移位寄存器负荷定时的时序图。
优选实施例的详细说明
参见图1,对TDM交换机的串行输入数据由图示为输入数据流D1、D2、D3和D4。在该实例中,D1以65MB/s移动,D2以32MB/s移动,D3以16MB/s移动,D4以8MB/s移动。这些数据的相应可用性由图示在所示的保持寄存器中。图示的串行数据以ST-BUS格式,但是该技术不仅仅限于ST-BUS。
如图1所示,存在相关保持寄存器内容的四个时间点,其中为了使数据存储器精确地包含一个数据帧,帧尾将必需出现。如果在D1之后交换数据存储体,则必需把D2、D3、D4存储到后续数据存储体中,在下一帧的相同时间之前,它们不可用于输出。它可以显示为,如果D2、D3、D4正在被交换到时隙0,则在自接收它们起的第三帧前,它们将不能适用于输出,这破坏了两帧延迟的常量延迟策略。
按照相似方式,如果数据存储体在D4之后被交换,D1、D2、D3和D4则被存储在当前数据存储体中;然而,从新帧开始还同时存储其它65Mb/s数据。它可以显示为,该数据随后变成在相同帧或者跟随帧上可适用于输出,再次破坏了两帧延迟的常量延迟策略。
根据本发明的原理,交换机利用了具有小扩展的主数据存储器。当主存储器成为可适用于寄存器时,主存储器存储所有帧数据。当主数据存储缓存器交换后,扩展存储器正好保持成为可适用的相同帧数据。数据存储器扩展大得足以存储从保持寄存器接收的包含D2至D4的所有数据。
主双缓存数据存储器只是在存储D1之后,接通对应于最小设置的帧边界,然后把作为较慢程控速率或者输入比特延迟的结果而随后接收的相同帧的任何数据,D2至D4存储到数据存储器扩展中。
主双缓存数据存储器扩展不在主数据存储器的相同时间交换,而是在因任何程控特征而可从相同帧接收任何数据的最大时间量后的时间交换。在图1中,数据存储器扩展缓存器在已经存储D4之后交换。
在优选实施例中,数据存储器扩展是一个小512字节存储器,正好存储从D2到D4的数据。事实上,实际只需要480字节;然而,为解决正好480字节存储器而增加的复杂度对于节省32字节来说不值。
尽管主数据存储器正好在D1时隙之后被交换,但是在D4时隙结束之前不交换存储器扩展。从D2到D4接收的所有数据存储于主数据存储器和数据存储器扩展中。
当通过交换硬件从数据存储器读出数据时,根据连接路径做出逻辑判决,是使用来自主数据存储器的数据还是使用来自数据存储器扩展的数据,以便保证所有可能的连接路径的两帧延迟。
图2是显示TDM交换机的主要部件的方框图。通常包含二进制计数器的定时单元1使用主时钟输入和帧脉冲输入建立二进制信号,该二进制信号精确地对应当前帧的有关位置。
多个输入串并移位寄存器2,它们每一个抽取对应的输入串行数据,并把该数据变换成8比特并行信号,数据选择单元3基本上是一个大多路复用器,将来自所有串行移位寄存器2的所有并行数据和来自定时单元1的二进制定时信号作为输入。该多路复用器使用来自定时单元的信号顺序选择来自输入移位寄存器的8比特并行信号之每一个,将其顺序施加到带有扩展4的双缓存数据存储器进行存储。
双缓存数据存储器执行两个主要功能:把来自数据选择单元的数据存储到数据存储器中;并且通过交换状态机5直接从数据存储器读回选择的数据。
交换状态机5提供顺序地读取连接地址的连接存储器6的必要信号,把该连接地址施加到数据存储块4,依据连接地址从数据存储器4读取数据字节,以及把该数据字节存储到输出移位寄存器7的并行输入。该操作在每个时隙期间予以重复执行,对于每个串行输出流,直至所有输出的所有时隙已经被装载了数据。
如果TDM交换机具有常量延迟特征,那么当已经读取在前帧存储的数据之后,交换硬件可以把数据存储到帧延迟存储器8中。这样做的目的是,在数据较早出现输出一帧情况下,通过一帧延迟数据。
交换状态机5读出连接存储器6的位置以确定连接地址,并经常读出用于特定连接路径的任何其它连接特征。这里总是存在一个把数据存入连接存储器的机构。图2未示出该机构。最典型地,该机构通常是一个微处理器接口端口,诸如是上述的商用MT8985和MT8986装置,尽管其它类型的接口也是可能的。本领域熟练技术人员将知道如何构建装载连接存储器的合适接口。
在输出并行到串行移位寄存器7中,每个块取交换状态机5供应的8比特并行数据,并将其装载到串行移位寄存器中。然后将装载的数据顺序地移位到串行输出上。
在与特定串行输出流的特定时隙一对一对应的位置,把交换状态机接收和交换的所有数据存储到帧延迟缓存存储器8中。在该实例中,该存储器含有32,768个字节。读和写操作被定时,使读操作将恢复在前帧上存储的数据,以及使写操作将改写在前帧上存储的数据。可以看到,该技术可以用来把任何特定输出流的任何特定时隙的输出数据延迟一帧。
除了根据本发明原理的带有扩展的数据存储器之外,图2所示的方框图示出了一般TDM数字交换机。本领域熟练技术人员可以开发此类型的硬件,并且除了数据存储器扩展的使用之外,它类似于用来在PASIC中执行数字交换的技术。
利用帧延迟缓存存储器提供常量延迟功能的方法不一定只是实施常量延迟特征的唯一方法。类似MT8985和MT8986的装置使用了与图2所示技术非常相似的交换技术,但是这些装置具有实现常量延迟特征的不同方法。
数据存储器扩展部件完整地包含在带有扩展块的双缓存数据存储器中,并且相应的数据选择硬件包含在交换状态机5中。
图3示出了数据存储器扩展硬件的方框图。所示的存储器容量相当于优选实施例的存储器容量。此外,该图未显示任何时钟信号。大多数同步存储器电路需要时钟信号,假定该时钟信号存在并正确地连接到存储器电路。所有输入和输出与该时钟信号同步。为了更清楚地进行说明,图3中省略该时钟信号。
在图3中,地址变换器12从图2的装置定时块1接收二进制信号,将其变换成读地址信号read_address,写地址信号write_address,缓存器选择信号BUF_SEL,以及扩展缓存选择ESEL。主数据存储器9是普通的SRAM单元,具有数据输入D,数据输出Q,地址输入A,低态有效写使能输入WE(低态有效是一个完全可以理解的概念,是指当对应的低态有效信号被设置到逻辑0时激活所述的功能),低态有效装置使能CE。在目前的实施例中,该存储器容量是32,768字节。
数据存储器扩展10是普通的SRAM单元,具有数据输入D,数据输出Q,地址输入A,低态有效写使能输入WE,低态有效装置使能CE。在目前的实施例中,该存储器容量是512字节。地址MUX 8是一个地址多路复用器。数据MUX 11是一个数据多路复用器。复用器11和13都具有与任何普通多路复用器一致的功能。这里使用verilog2描述最容易说明:Y<=SEL?B:A。参见IEEE标准1364-1995-基于Verilog硬件描述语言的IEEE标准描述语言。
存储器单元9和10具有与普通同步存储器一致的功能。
图3的分析显示,如果BUF_SEL信号为低电平,则write_address被施加到上位主数据存储器9,以及该存储器的写使能WE为低态有效。在此状态下,呈现在数据输入D的8比特数据将被写入该存储器。与此同时,下位主数据存储器9接收read_address,以及该存储器的写使能WE为高态无效。在此状态下,该存储器予以读取,数据通过数据MUX 11呈现在MDAT输出。
如果BUF_SEL信号为高电平,则write_address被施加到下位主数据存储器9,以及该存储器的写使能WE为低态有效。在此状态下,呈现在数据输入D的8比特数据将被写入该存储器。与此同时,上位主数据存储器9接收read_address,以及该存储器的写使能WE是高态无效。在此状态下,该存储器予以读取,数据通过数据MUX 11呈现在MDAT输出。
可见,BUF_SEL信号用于逻辑交换主数据存储器9的位置和操作。这基本上是在PASIC中执行数据存储的技术。
在一个类似方式中,图3的分析显示,如果ESEL信号为低电平,则write_address被施加到上位数据存储器扩展10,以及该存储器的写使能WE为低态有效。在此状态下,呈现在数据输入D的8比特数据将写入该存储器。与此同时,下位数据存储器扩展10接收read_address,以及该存储器的写使能WE为高态无效。在此状态下,该存储器予以读取,数据通过数据MUX 11呈现在EDAT输出。
如果ESEL信号为高电平,则write_address被施加到下位数据存储器扩展10,以及该存储器的写使能WE为低态有效。在此状态下,呈现在数据输入D的8比特数据将被写入该存储器。与此同时,上位数据存储器10接收read_address,以及该存储器的写使能WE为高态无效。在此状态下,该存储器被予以读取,数据通过数据MUX 11呈现在MDAT输出。
显而,ESEL信号用于逻辑交换主数据存储器扩展10的位置和操作。
地址转换器12建立用于整个数据存储器扩展块的地址和控制信号。地址转换器的最清楚说明如下列verilog所描述:
1、module address_translator(in,BUF_SEL,ESEL,RD_A,STA)
2、input[15:0]in;
3、output[14:0]ST_A,RD_A;
4、output BUF_SEL,ESEL;
5、wire[15:0]in;
6、wire[14:0]ST_A,RD_A;
7、wire BUF_SEL,ESEL;
8、wire[15:0]offset;
9、assign BUF_SEL=in[15],
10、ST_A=in[14:0],
11、RD_A=in[14:0]+2,
12、offset=in-512,
13、ESEL=offset[15];
14、endmodule
最有效信号描述分别是那些记述BUF_SEL和ESEL、线路9和13的描述。图4示出了这些信号的定时,这些信号与图1的那些信号存在联系。这些信号是作为它们出现在优选实施例中来图示的。信号ESEL受正在处理的输入和/或输出串行流的数量影响,受各自时隙的数量和持续时间的影响,甚至经常受其它无关要素的影响。
所述的优选实施例的许多变化都是可能的。使用两个端口存储器而不使用单端口存储器是可能的。这使经过交换机的带宽加倍,而又不增加时钟速度。图3的分析显示,可以增加替代单端口存储器的两端口存储器,附加地址和数据多路复用器11和13可以连接到第二端口,以有效加倍吞吐量而又不改变本发明的实质。
图2所示的交换状态机5装备有非常繁忙的流水线,图3所示的地址转换器12是繁忙的流水线式同步电路。在一个示范性实施例中,地址转换器是按以上隐含的verilog列表组合的电路,存储器编址中的某些局部变化需要verilog数值转换的改变。图4所示的合成波形BUF_SEL和ESEL成功地建立扩展的数据存储器操作。
在图2所示的交换状态机5中,进行硬件判决,以判决字节MDAT或EDAT(涉及图3的两个输出)之哪个用于输出移位寄存器的存储。MDAT是从主数据存储器读出的数据,EDAT从主存储器扩展读出。尽管该传递功能的细节非常复杂,它取决于许多其它无关要素,但是基本概念可相当简单地描述。例如,当连接路径正在把D2、D3或D4数据(参见图1)连接到串行输出数据流的第一时隙时,扩展的数据存储器便实现了其目的。该数据传递的定时显示在图5中。
以上讨论说明了这样一种情况:必需从扩展数据存储器选择装载到输出移位寄存器中的数据,以便保持两帧常量延迟需求。这表现为力图解释用于概念目的的一个清楚实例,因为甚至本领域熟练技术人员,也难于完全理解该类型TDM交换机的从串行输入到串行输出的延迟特征。
用于来自主数据存储器的MDAT数据或者来自扩展数据存储器的EDAT数据的选择的数据选择规则的最一般描述是:任何特定帧期间接收的任何串行输入数据,作为某些特征或者某些程控输入数据速率的结果,在主输入数据存储器缓存器指示字(BUF_SEL)已经交换之后但是在扩展数据存储缓存器指示字(ESEL)已经交换之前的一个时间点,到达输入移位寄存器2的并行输出,以及,如果这些特定数据元素经由TDM交换机连接到帧边界起点或其附近的串行输出时隙上,使数据必需在主输入数据存储缓存器指示符(BUF_SEL)已经交换之前的时间点从存储缓存器读出,以用于装载到输出移位寄存器7的并行输入,那么交换硬件必需从扩展存储器而不是主数据存储器中选择数据,以便保持两帧延迟需求。
传递功能的细节非常复杂,这取决于许多其它无关要素。在优选实施例中,流水线技术是实施中最复杂技术之一。然而在所有情况下,上述一般规则可以始终管理这些特定数据路径中的流,以便满足两帧常量延迟需求。
存在宽范围的变化,对图2所示的交换电路和图3所示的扩展数据存储器配置是可能的。这些主要导致其它非有关要素的实现。尽管本发明所用的优选实施例解决多输入和输出流造成的常量延迟问题,其中输入和输出流之每个具有独立可编程的速率和比特延迟,但是导致在帧尾以不一致时间出现来自特定帧的数据的任何要素的特征,可以使用对主数据存储器的数据存储器扩展来保持该数据。
其它变化可能在地址存储器连接、多路复用器大小、地址转换器设计方面,各种各样的写可以导致输入流和/或输出流的变化、输入和/或输出数据速率的变化、每个流的时隙数量地变化、施加到每个输入和/或输出流的特征的变化、交换期间应用于数据上的任何数据变换功能的变化。
所有这些可能性可能影响数据存储器扩展实施的细节,尽管仍然利用保持常量延迟吞吐量的概念。
数据存储器扩展概念不局限于双缓存数据存储器。相同的技术也可以使用在单一缓存数据存储器或多缓存存储器。此外,实施的理由(前提)可以不限定于常量延迟需求。需要对因输入特征变化导致不能一致地运用交换点的数据帧进行一致处理的任何应用都可以使用该类型的数据存储器扩展硬件,因此这些应用落入本发明的范围。
Claims (20)
1、一种支持多速率输入和输出串行数据流的时分多路复用交换机,包括:
多个输入寄存器,用于接收具有不同数据速率的多个串行输入数据流;
多个输出寄存器,用于输出具有不同数据速率的多个串行输出数据流;
一个数据存储器,用于临时存储在所述输入数据流与输出数据流之间交换的数据,所述数据存储器具有用于存储连续数据帧的第一和第二主缓存器部分;
一个连接存储器,用于存储所述交换数据的连接路径;
分别与所述第一和第二主缓存器部分关联的第一和第二缓存器扩展,用于存储来自由于较慢程控速率或者输入比特延迟的结果而随后接收的相同帧的残余数据;和
一个控制器,用于在所述数据存储器的所述第一与第二主缓存器部分之间进行交换,或者用于在所述第一和第二缓存器扩展之间进行交换;
其中,所述控制器予以程控,在收到帧内具有最高数据速率的流包括的所有数据时,交换所述主缓存器部分,以及在收到来自所述帧内其它数据流包括的数据时,交换所述缓存器扩展。
2、根据权利要求1所述的时分多路复用交换机,还包括一个逻辑单元,用于确定是使用来自所述第一和第二主缓存器部分的数据还是使用来自所述第一和第二缓存器扩展的数据,以确保所有可能连接路径的特定帧延迟。
3、根据权利要求2所述的时分多路复用交换机,其中所述特定帧延迟是一个固定延迟。
4、根据权利要求3所述的时分多路复用交换机,其中所述固定延迟是一个两帧延迟。
5、根据权利要求2所述的时分多路复用交换机,其中所述逻辑单元包括一个交换状态机,该交换状态机在所述连接存储器所确定的地址,从所述数据存储器读出数据。
6、根据权利要求5所述的时分多路复用交换机,其中交换状态机把数据从所述数据存储器读入到帧延迟存储器中。
7、根据权利要求6所述的时分多路复用交换机,其中所述数据在与串行输出流的特定时隙一对一对应的位置,存入所述帧延迟存储器中。
8、根据权利要求5所述的时分多路复用交换机,其中交换状态机生成一对选择信号,用于分别选择所述主缓存器部分之一和所述缓存器扩展之一。
9、根据权利要求8所述的时分多路复用交换机,其中所述交换状态机予以程控以确保:任何特定帧期间接收的任何串行输入数据,在主缓存器部分已经交换之后,但是在相关联的缓存器扩展已经交换之前的一个时间点,到达输入移位寄存器的输出,以及,如果这些特定输入数据连接到帧边界起点或其附近的串行输出时隙上,使得数据必须在所述主缓存器部分已经交换之前的时间点从数据存储器读出,以装载到输出移位寄存器的输入,那么从关联的缓存器扩展而不是从所述主缓存器部分读出数据,以便保持所述特定帧延迟。
10、根据权利要求8所述的时分多路复用交换机,其中所述选择信号由地址转换器产生。
11、根据权利要求10所述的时分多路复用交换机,其中所述地址转换器是一个组合电路。
12、根据权利要求1至11任一项所述的时分多路复用交换机,其中所述数据存储器是双端口存储器。
13、根据权利要求12所述的时分多路复用交换机,其中所述缓存器扩展是SRAM。
14、根据权利要求13所述的时分多路复用交换机,其中所述缓存器扩展是512字节。
15、一种支持多速率输入和输出串行数据流的时分多路复用交换机,包括:
多个输入寄存器,用于接收具有不同数据速率的多个串行输入数据流;
多个输出寄存器,用于输出具有不同数据速率的多个串行输出数据流;
一个数据存储器,用于临时存储在所述输入数据流与输出数据流之间交换的数据,该数据存储器具有主缓存器部分;
一个连接存储器,用于存储所述交换数据的连接路径;和
一个与所述主缓存器部分相关联的缓存器扩展,用于存储来自由于较慢程控速率或者输入比特延迟的结果而随后接收的相同帧的残余数据;和
一个控制器,对该控制器予以程控,以便在收到帧内具有最高数据速率的流包括的所有数据时,交换所述主缓存器部分,以及在收到来自所述帧内其它数据流包括的数据时,交换所述缓存器扩展。
16、一种控制支持多速率输入和输出串行数据流的时分多路复用交换机的方法,包括以下步骤:
接收多个串行输入数据流;
提供一个数据存储器,用于临时存储在所述输入数据流与所述输出数据流之间交换的数据,所述数据存储器具有用于存储连续数据帧的第一和第二主缓存器部分,所述第一和第二主缓存器部分分别与用于存储来自由于较慢程控速率或者输入比特延迟的结果而随后接收的相同帧的残余数据的第一和第二缓存器扩展相关联;和
在所述数据存储器的所述第一与第二主缓存器部分之间进行交换,或者在所述第一和第二缓存器扩展之间进行交换;
其中,在收到帧内具有最高数据速率的流包括的所有数据时,在所述主缓存器部分之间进行交换;而在收到来自所述帧内其它数据流包括的数据时,在所述缓存器扩展之间进行交换。
17、根据权利要求16所述的方法,其中当需要确保用于所有可能连接路径的特定帧延迟时,从所述主缓存器部分或所述缓存器扩展读出数据。
18、根据权利要求17所述的方法,其中所述特定帧延迟是一个固定延迟。
19、根据权利要求18所述的方法,其中所述固定延迟是一个两帧延迟。
20、根据权利要求17或18所述的方法,其中交换以确保以下处理的方式发生:任何特定帧期间接收的任何串行输入数据,在主缓存器部分已经交换之后,但是在相关联的缓存器扩展已经交换之前的一个时间点,到达输入移位寄存器的输出,以及,如果这些特定输入数据连接到帧边界起点或其附近的串行输出时隙上,使得数据必须在所述主缓存器部分已经交换之前的时间点从数据存储器读出,以装载到输出移位寄存器的输入,因此是从关联的缓存器扩展而不是从所述主缓存器部分读出数据,以便保持所述特定帧延迟。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0313986.2 | 2003-06-17 | ||
GBGB0313986.2A GB0313986D0 (en) | 2003-06-17 | 2003-06-17 | Data memory extension for use in double buffered TDM switches |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1574752A CN1574752A (zh) | 2005-02-02 |
CN100456679C true CN100456679C (zh) | 2009-01-28 |
Family
ID=27636686
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100480842A Expired - Fee Related CN100456679C (zh) | 2003-06-17 | 2004-06-15 | 供双缓存tdm交换机使用的数据存储器扩展 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7492778B2 (zh) |
CN (1) | CN100456679C (zh) |
GB (1) | GB0313986D0 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004038213A1 (de) * | 2004-08-05 | 2006-03-16 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Zugriff auf Daten eines Botschaftsspeichers eines Kommunikationsbausteins |
US7529189B2 (en) * | 2005-09-29 | 2009-05-05 | Via Technologies, Inc. | Mechanism for imposing a consistent delay on information sets received from a variable rate information stream |
JP2007287236A (ja) * | 2006-04-17 | 2007-11-01 | Sony Corp | 記録再生装置及び再生装置 |
US8248535B2 (en) * | 2009-02-18 | 2012-08-21 | Csr Technology Inc. | System and method for a versatile display pipeline architecture for an LCD display panel |
US20140229576A1 (en) * | 2013-02-08 | 2014-08-14 | Alpine Audio Now, LLC | System and method for buffering streaming media utilizing double buffers |
US10430215B1 (en) * | 2015-06-25 | 2019-10-01 | Cadence Design Systems, Inc. | Method and system to transfer data between hardware emulator and host workstation |
US10795836B2 (en) * | 2017-04-17 | 2020-10-06 | Microsoft Technology Licensing, Llc | Data processing performance enhancement for neural networks using a virtualized data iterator |
US10175912B1 (en) | 2017-07-05 | 2019-01-08 | Google Llc | Hardware double buffering using a special purpose computational unit |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1039516A (zh) * | 1988-07-12 | 1990-02-07 | 艾利森电话股份有限公司 | 在数字时分交换机中实现转接宽带接续的方法及装置 |
US5649148A (en) * | 1992-10-08 | 1997-07-15 | Mitel Corporation | Fast digital signal processor interface using data interchanging between two memory banks |
CN1250584A (zh) * | 1997-03-10 | 2000-04-12 | 艾利森电话股份有限公司 | 时间交换级和交换机 |
US6507579B1 (en) * | 1998-06-29 | 2003-01-14 | Mitel Corporation | Digital switch rate conversion |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3937738A1 (de) * | 1989-11-13 | 1991-05-16 | Standard Elektrik Lorenz Ag | Teilnehmeranschlussknoten eines digitalen nachrichtenuebertragungssystems |
JPH04145565A (ja) | 1990-10-05 | 1992-05-19 | Nec Ibaraki Ltd | 入出力バッファの拡張方式 |
JP2734889B2 (ja) | 1992-07-24 | 1998-04-02 | 日本電気株式会社 | パケットスイッチ |
US6122279A (en) | 1995-10-02 | 2000-09-19 | Virata Limited | Asynchronous transfer mode switch |
JP2950231B2 (ja) * | 1996-03-21 | 1999-09-20 | 日本電気株式会社 | セル化転送データのリアセンブルバッファ制御装置及び制御方法 |
US5815447A (en) * | 1996-08-08 | 1998-09-29 | Micron Technology, Inc. | Memory device having complete row redundancy |
US5978370A (en) * | 1997-01-13 | 1999-11-02 | At&Tcorp | Circuit-switched switching system |
JP2001060967A (ja) * | 1999-08-23 | 2001-03-06 | Fujitsu Ltd | パケットスイッチ装置 |
GB2366935B (en) | 2000-09-15 | 2004-01-07 | Mitel Corp | Method of checking for and recovering from underruns and overrun slips when writing to circular buffers in dynamic bandwidth circuit emulation services |
US7266128B1 (en) * | 2002-12-06 | 2007-09-04 | Integrated Device Technology, Inc. | Time-slot interchange switches having efficient block programming and on-chip bypass capabilities and methods of operating same |
-
2003
- 2003-06-17 GB GBGB0313986.2A patent/GB0313986D0/en not_active Ceased
-
2004
- 2004-06-09 US US10/864,136 patent/US7492778B2/en active Active
- 2004-06-15 CN CNB2004100480842A patent/CN100456679C/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1039516A (zh) * | 1988-07-12 | 1990-02-07 | 艾利森电话股份有限公司 | 在数字时分交换机中实现转接宽带接续的方法及装置 |
US5649148A (en) * | 1992-10-08 | 1997-07-15 | Mitel Corporation | Fast digital signal processor interface using data interchanging between two memory banks |
CN1250584A (zh) * | 1997-03-10 | 2000-04-12 | 艾利森电话股份有限公司 | 时间交换级和交换机 |
US6507579B1 (en) * | 1998-06-29 | 2003-01-14 | Mitel Corporation | Digital switch rate conversion |
Also Published As
Publication number | Publication date |
---|---|
US20060198384A1 (en) | 2006-09-07 |
CN1574752A (zh) | 2005-02-02 |
GB0313986D0 (en) | 2003-07-23 |
US7492778B2 (en) | 2009-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1326150C (zh) | 同步猝发半导体存储器件 | |
CN100547681C (zh) | 存储器装置及在存储器装置中读取数据的方法 | |
KR101611516B1 (ko) | 직렬 포트 메모리 통신 레이턴시 및 신뢰성을 향상시키기 위한 방법 및 시스템 | |
US6081478A (en) | Separate byte control on fully synchronous pipelined SRAM | |
US4685088A (en) | High performance memory system utilizing pipelining techniques | |
CN1961302B (zh) | 具有命令前瞻的存储器控制器 | |
JP4659792B2 (ja) | メモリ構造 | |
US7149139B1 (en) | Circuitry and methods for efficient FIFO memory | |
EP1083572A1 (en) | Three port content addressable memory device and methods for implementing the same | |
US7436728B2 (en) | Fast random access DRAM management method including a method of comparing the address and suspending and storing requests | |
JPH10340224A (ja) | Sdramを使用した高性能高帯域幅メモリおよびシステム | |
CN104599698A (zh) | 多个独立的串行链接存储器 | |
US7299324B2 (en) | Reactive placement controller for interfacing with banked memory storage | |
CN100456679C (zh) | 供双缓存tdm交换机使用的数据存储器扩展 | |
WO2001042926A1 (en) | Interface for a memory unit | |
JPH10510410A (ja) | マルチポート・メモリのためのパイプライン型多重化 | |
US7190631B2 (en) | Multi-port memory | |
CN113109778A (zh) | 一种基于中断响应机制的多体制雷达预处理实现方法 | |
JPH0792779B2 (ja) | データ転送制御装置 | |
EP1017059B1 (en) | Method for reading a memory, particularly a non-volatile memory | |
JPH10144071A (ja) | 半導体記憶装置 | |
US5732011A (en) | Digital system having high speed buffering | |
CN109935252A (zh) | 存储器装置及其操作方法 | |
US6005820A (en) | Field memories | |
KR100362341B1 (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090128 Termination date: 20190615 |
|
CF01 | Termination of patent right due to non-payment of annual fee |