Method to support flexible data transport on serial protocols
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
H04L-012/28
H04J-003/16
H04J-003/24
G06F-003/00
G06F-005/00
출원번호
US-0043918
(2008-03-06)
등록번호
US-8625621
(2014-01-07)
발명자
/ 주소
Wang, Chi-Lie
Mo, Jason Z.
출원인 / 주소
Integrated Device Technology, Inc.
대리인 / 주소
Bever Hoffman & Harms LLP.
인용정보
피인용 횟수 :
0인용 특허 :
55
초록▼
A serial buffer transports packets through queues capable of operating in a packet mode or a raw data mode. In packet mode, entire packets are stored in a queue. In raw data mode, packet header/delimiter information is not stored in the queue (only packet data is stored). Packets can be transferred
A serial buffer transports packets through queues capable of operating in a packet mode or a raw data mode. In packet mode, entire packets are stored in a queue. In raw data mode, packet header/delimiter information is not stored in the queue (only packet data is stored). Packets can be transferred out of a queue in response to a slave read request. The serial buffer constructs a packet header in response to the slave read request, and retrieves a specified amount of packet data from the selected queue. The serial buffer also transfers out packets as a bus master when a water level exceeds a water mark within a queue. The serial buffer constructs packet headers for these bus master transfers, which may be performed in a flush mode or a non-flush mode (in packet mode), or in a flush mode (in raw data mode).
대표청구항▼
1. A serial buffer comprising: one or more queues;one or more queue configuration registers, each associated with a corresponding one of the one or more queues,wherein each of the one or more queue configuration registers stores an access mode value that indicates whether the corresponding one of th
1. A serial buffer comprising: one or more queues;one or more queue configuration registers, each associated with a corresponding one of the one or more queues,wherein each of the one or more queue configuration registers stores an access mode value that indicates whether the corresponding one of the one or more queues operates in a packet mode or a raw data mode,wherein each of the one or more queues may operate in the packet mode and the raw data mode in response to the access mode value, andwherein both a packet header and corresponding packet data are written to a queue identified in the packet header if the access mode value of the identified queue indicates that the identified queue operates in the packet mode, and only the corresponding packet data are written to the queue identified in the packet header if the access mode value of the identified queue indicates that the identified queue operates in the raw data mode. 2. The serial buffer of claim 1, further comprising: a first port that operates in accordance with a first serial protocol; anda second port that operates in accordance with a second serial protocol, different than the first serial protocol, wherein the first port and the second port are coupled to the one or more queues. 3. The serial buffer of claim 1, wherein each of the one or more queue configuration registers stores a read mode value that indicates whether the corresponding one of the one or more queues operates in a flush mode or a non-flush mode, wherein each of the one or more queues may operate in either the flush mode or the non-flush mode in response to the read mode value, and wherein all packet data below a water mark of the queue is read from each of the one or more queues that operate in the flush mode, and wherein packet data associated with a single packet is read from each of the one or more queues that operate in the non-flush mode. 4. The serial buffer of claim 1, wherein each of the one or more configuration registers stores a priority value that indicates a priority with which the corresponding one of the one or more queues is accessed. 5. The serial buffer of claim 1, wherein each of the one or more configuration registers stores a destination address used to access the corresponding one of the one or more queues during a write operation. 6. The serial buffer of claim 5, wherein each of the one or more configuration registers further stores a source address used to access the corresponding one of the one or more queues during a read operation. 7. A method of operating a serial buffer comprising: receiving an incoming packet that includes a packet header and packet data, wherein the packet header identifies a queue from among one or more queues of the serial buffer;for each queue of the one or more queues, storing an access mode value that indicates whether the respective queue operates in a packet mode or a raw data mode, wherein the respective queue may operate in either the packet mode or the raw data mode depending on the access mode value;writing the packet header and the packet data of the incoming packet to the identified queue if the corresponding access mode value indicates that the identified queue operates in the packet mode; andwriting the packet data, but not the packet header, to the identified queue if the corresponding access mode value indicates that the identified queue operates in the raw data mode. 8. The method of claim 7, further comprising writing start-of-packet and end-of-packet delimiters to the identified queue if the corresponding access mode value indicates that the identified queue operates in the raw data mode. 9. The method of claim 7, further comprising: for each queue of the one or more queues, storing a read mode identification value that indicates whether the respective queue operates in a flush mode or a non-flush mode, wherein the respective queue may operate in either the flush mode or the non-flush data mode depending on the read mode identification value;determining when a water level of a particular queue reaches a water mark assigned to the particular queue; andif the corresponding access mode value indicates that the particular queue operates in the packet mode and the corresponding read mode identification value indicates that the particular queue operates in the flush mode, then reading all packet headers and packet data below the water mark assigned to the particular queue upon determining that the water level of the particular queue has reached the water mark assigned to the particular queue. 10. The method of claim 9, further comprising: if the corresponding access mode value indicates that the particular queue operates in the raw data mode and the corresponding read mode identification value indicates that the particular queue operates in the flush mode, then reading all packet data below the watermark assigned to the particular queue upon determining that the water level of the particular queue has reached the water mark assigned to the particular queue. 11. The method of claim 9, further comprising: if the corresponding access mode value indicates that the particular queue operates in the packet data mode and the corresponding read mode identification value indicates that the particular queue operates in the non-flush mode, then reading the packet header and packet data of one packet from the particular queue upon determining that the water level of the particular queue has reached the water mark assigned to the particular queue. 12. The method of claim 7, further comprising: receiving a slave read request packet from a processor, wherein the slave read request packet identifies a queue from among the one or more queues and includes a data size field that specifies an amount of data to be read from the queue identified by the slave read request packet;accessing the corresponding access mode value to determine whether the queue identified by the slave read request packet operates in the packet mode or the raw data mode; andtransferring data from the queue identified by the slave read request packet to the processor in response to the slave read request packet,wherein the data size field specifies a number of packets transferred from the queue identified by the slave read request packet to the processor when the queue identified by the slave read request packet operates in the packet mode, andwherein the data size field specifies a number of data words transferred from the queue identified by the slave read request packet to the processor when the queue identified by the slave read request packet operates in the raw data mode. 13. The method of claim 7, further comprising: receiving a slave read request packet from a processor, wherein the slave read request packet identifies a queue from among the one or more queues of the serial buffer;accessing the corresponding access mode value to determine whether the queue identified by the slave read request packet operates in the packet mode or the raw data mode; andcreating a constructed packet header from information included in the slave read request packet if the queue identified by the slave read request packet operates in the raw data mode. 14. The method of claim 13, further comprising: retrieving packet data from the queue identified by the slave read request packet; andtransmitting the retrieved packet data and the constructed packet header to the processor if the queue identified by the slave read request packet operates in the raw data mode. 15. A method of operating a serial buffer comprising: receiving an incoming packet that includes a packet header and packet data;identifying a queue specified by the packet header of the incoming packet from among one or more queues of the serial buffer, each of the one or more queues having a corresponding queue configuration register;determining, based on an access mode value stored in the queue configuration register corresponding to the identified queue, whether the identified queue operates in a packet mode or a raw data mode, wherein the identified queue is capable of operating in both the packet mode and the raw data mode in response to the access mode value;writing both the packet header and the packet data of the incoming packet to the identified queue if the identified queue operates in the packet mode; andwriting only the packet data of the incoming packet to the identified queue if the identified queue operates in the raw data mode. 16. The method of claim 15, further comprising: receiving a read request packet;identifying a queue specified by the read request packet from among the one or more queues;determining whether the queue specified by the read request packet operates in the packet mode or the raw data mode;reading packet data from the queue specified by the read request packet; andcreating a constructed packet header using information included in the read request packet if the queue specified by the read request packet operates in the raw data mode. 17. The method of claim 16, further comprising transmitting the constructed packet header and the packet data read from the queue specified by the read request packet as a response to the read request packet.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (55)
Smith, Shawn W.; Cromack, Mark R., Adaptive jitter buffer for internet telephony.
Smolinske Jeffrey C. (Hoffman Estates IL) Tran Phieu M. (Lincolnwood IL), Apparatus and method for transmitting bit synchronous data over an unreliable channel.
Chevalier Denis (La Colle Sur Loup FRX) Calvignac Jean (La Gaude FRX) Munier Jean-Marie (Cagnes-sur-Mer FRX) Naudin Bernard (Saint Laurent du Var FRX) Duault Maurice (Saint Laurent du Var FRX), Apparatus for recovering lost buffer contents in a data processing system.
Farrand Scott C. (Tomball TX) Hernandez Thomas J. (Houston TX) Neyland Ronald A. (Spring TX) Stupek Richard A. (Houston TX) Miller Andrew J. (Houston TX) Dobyns Patrick E. (Garland TX) Johnson ; Jr. , Asynchronous protocol for computer system manager.
McRoberts Louis A. (Scottsdale AZ) Clauss Kenneth J. (Chandler AZ) Morton Keith (North Reading MA), Data packet switching system having DMA controller, service arbiter, buffer type managers, and buffer managers for manag.
Masushige,Akinori; Hirao,Yukio; Abe,Masahide, Host-terminal emulation program, a relay program, a host-terminal emulation method, a communication program, a communication method, and a client computer.
Lisitsa, Rafael S.; Sather, Dale A.; Shaw, George H. J.; Woodruff, Bryan A., Improving the control of streaming data through multiple processing modules.
Karnstedt, Curt A.; Chin, Bruce L.; Shamarao, Prashant; Montana, Mario, Integrated circuit FIFO memory devices that are divisible into independent FIFO queues, and systems and methods for controlling same.
David Baker ; Christopher Basoglu ; Benjamin Cutler ; Richard Deeley ; Gregorio Gervasio ; Atsuo Kawaguchi ; Keiji Kojima JP; Woobin Lee ; Takeshi Miyazaki JP; Yatin Mundkur ; Vinay Naik ;, Integrated multimedia system with local processor, data transfer switch, processing modules, fixed functional unit, data streamer, interface unit and multiplexer, all integrated on multimedia process.
Micalizzi, Jr., Charles; Konda, Dharma R.; Sippy, Chandru M., Method and apparatus for automatically transferring I/O blocks between a host system and a host adapter.
Brown Rickey Carter ; Mayberry Mark Lane, Method and apparatus for dynamic buffering of input/output ports used for receiving and transmitting print data at a printer.
Baker Richard T. ; Pipho Randall E., Method and system for assigning a direct memory access priority in a packetized data communications interface device.
Goren,Motti; Cohen,Ron; Wulich,Dov, Methods and systems for adaptive rate management, for adaptive pointer management, and for frequency locked adaptive pointer management.
Cota-Robles, Erik C.; O'Mahony, Barry; Martinez, Alberto J., Real-time processing of a synchronous or isochronous data stream in the presence of gaps in the data stream due to queue underflow or overflow.
Brown Alison K. ; Tuck Edward Fenton ; Patterson David Palmer ; Lockie Douglas Gene ; Grencions Vilnis G. ; Jha Asu Ram ; Ashford Donald A. ; Sturza Mark Alan ; Stuart James R. ; Liron Moshe Lerner ;, Satellite communication system.
Brown Paul J. (16 Carmen Dr. Poughkeepsie NY 12603) Elliott Joseph C. (29 Larchmont Dr. Hopewell Junction NY 12533) Franaszek Peter A. (Pine Tree Dr. Katonah NY 10536) Hoppe Karl H. (R.D. 1 ; Box 30B, Switch and its protocol for making dynamic connections.
Brown Rickey Carter ; Mayberry Mark Lane, System for dynamically determining the size and number of communication buffers based on communication parameters at the.
Weber Mark S. (Germantown WI) Bronikowski Joseph T. (Milwaukee WI) Hill Brian T. (Mequon WI) Sackmann David J. (Milwaukee WI), System for sharing data between microprocessor based devices.
Fataneh F. Ghodrat ; David A. Thomas, System for transferring data packets of different context utilizing single interface and concurrently processing data packets of different contexts.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.