KR20070038881A - Method and system for storing data packets - Google Patents
Method and system for storing data packets Download PDFInfo
- Publication number
- KR20070038881A KR20070038881A KR1020060095590A KR20060095590A KR20070038881A KR 20070038881 A KR20070038881 A KR 20070038881A KR 1020060095590 A KR1020060095590 A KR 1020060095590A KR 20060095590 A KR20060095590 A KR 20060095590A KR 20070038881 A KR20070038881 A KR 20070038881A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- data packet
- buffer
- storage space
- write
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000007726 management method Methods 0.000 claims description 18
- 230000005540 biological transmission Effects 0.000 claims description 7
- 230000000750 progressive effect Effects 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims description 2
- 238000013500 data storage Methods 0.000 claims 1
- 238000012360 testing method Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 1
- 210000004185 liver Anatomy 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L13/00—Details of the apparatus or circuits covered by groups H04L15/00 or H04L17/00
- H04L13/02—Details not particular to receiver or transmitter
- H04L13/08—Intermediate storage means
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5603—Access techniques
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
본 발명은, 각각이 적어도 두 개의 데이터 블럭들로 구성되는 데이터 패킷들을 버퍼의 저장공간에 저장하는 것을 관리하기 위한 방법으로서, 상기 방법은 현재 데이터 패킷의 데이터 블럭들을 수신하는 단계(40)와, 수신된 현재 데이터 패킷의 데이터 블럭들을 상기 버퍼의 자유 저장공간에 쓰는(writing) 단계(42), 를 포함한다. 상기 버퍼에 현재 데이터 패킷의 수신된 데이터 블럭을 쓰기 위한 충분한 자유공간이 없다면, 상기 방법은 현재 데이터 패킷의 수신된 데이터 블럭들을 쓰는 동작을 멈추는 단계(48), 및 현재 데이터 패킷의 적어도 하나의 쓰기가 완료된 데이터 블럭을 자유 저장공간의 일부로 정의함으로써, 다음 데이터 패킷의 수신된 데이터 블럭들이 현재 데이터 패킷의 쓰기 완료된 데이터 블럭들에 겹쳐져서 쓰여질 수 있도록 하는, 정의단계(48)로 진행한다. The present invention provides a method for managing the storage of data packets, each of which consists of at least two data blocks, in a storage space of a buffer, the method comprising: receiving (40) data blocks of a current data packet; Writing the data blocks of the received current data packet to the free storage space of the buffer (42). If there is not enough free space in the buffer to write the received data block of the current data packet, the method stops writing the received data blocks of the current data packet (48), and at least one write of the current data packet. Defines the completed data block as part of the free storage space, so that the received data blocks of the next data packet can be overwritten by the overwritten data blocks of the current data packet.
디지털 텔레비젼 수신에 적용.Applied to digital TV reception.
데이터 패킷, 버퍼, 자유 저장공간, 읽기, 쓰기, 겹쳐쓰기 Data packet, buffer, free storage, read, write, overwrite
Description
도 1은 데이터 패킷을 나타내는 도.1 illustrates a data packet.
도 2는 도 1의 데이터 패킷과 같은 데이터 패킷들을 저장하기 위한 시스템을 나타내는 도.2 illustrates a system for storing data packets, such as the data packet of FIG.
도 3은 오버플로우 상황에서 도 2의 시스템을 나타내는 도.3 illustrates the system of FIG. 2 in an overflow situation;
도 4a 및 4b는 데이터 패킷들의 저장을 관리하는 방법을 나타내는 블럭도.4A and 4B are block diagrams illustrating a method of managing storage of data packets.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
10. 시스템 12. 버퍼10.
14. 관리수단 16. 읽기 포인터 관리부14. Control means 16. Read pointer management unit
18. 쓰기 포인터 관리부 R. 읽기 포인터18. Write Pointer Manager R. Read Pointer
W. 쓰기 포인터 W. Write Pointer
발명의 기술분야Technical Field of the Invention
본 발명은 버퍼의 저장공간에 데이터 패킷들을 저장하는 것을 관리하기 위한 방법에 관한 것이다.The present invention relates to a method for managing the storage of data packets in a storage of a buffer.
발명의 배경Background of the Invention
풀 모션 디지털 텔레비젼은 많은 양의 저장과 데이터 전송 대역폭을 필요로 한다. 따라서, 디지털 텔레비젼 시스템들은 필요한 저장량과 데이터 전송 대역폭을 줄이기 위해 비디오 압축 알고리즘들을 사용한다. 현 디지털 텔레비젼 시스템들은 요구되는 데이터 전송 대역폭을 줄이기 위해 MPEG 또는 MPEG-2 인코딩(encoding)을 이용한다. MPEG-2는 ITU-T H.222.0(ISO/IEC 13818-1)에서 "동영상 및 관련 오디오 정보의 일반 코딩(Generic Coding of Moving Pictures And Associated Audio Information)"으로 정의된다. 따라서, 영화나 다른 콘텐츠와 같은 시각적 청각적 시퀀스들은 MPEG-2 압축 형식으로 미디어 서버에 저장되고, 시각적 청각적 시퀀스는 디코딩되어 일반적으로 사용자에게 디스플레이 및/또는 전달되기 위해 아날로그 형식으로 전환된다.Full motion digital television requires large amounts of storage and data transmission bandwidth. Thus, digital television systems use video compression algorithms to reduce the amount of storage and data transfer bandwidth required. Current digital television systems use MPEG or MPEG-2 encoding to reduce the data transmission bandwidth required. MPEG-2 is defined in ITU-T H.222.0 (ISO / IEC 13818-1) as "Generic Coding of Moving Pictures And Associated Audio Information." Thus, visual auditory sequences, such as movies or other content, are stored on the media server in MPEG-2 compression format, and the visual auditory sequences are decoded and generally converted to analog format for display and / or delivery to the user.
MPEG-2에 따른 전송용 스트림(transport stream(TS))은 압축된 디지털 비디오, 압축된 디지털 오디오 등을 포함하는 스트림이라는 사실은 널리 알려져 있다. 전송용 스트림은 디지털 방송에서 사용되며, 다중방식의 복수 프로그램들을 포함한다. It is well known that a transport stream (TS) according to MPEG-2 is a stream including compressed digital video, compressed digital audio, and the like. The transport stream is used in digital broadcasting and includes a plurality of programs in multiple modes.
두 종류의 MPEG-2 수신기들이 사용되고 있다. 먼저, 셋톱 박스들에서, 입력 MPEG-2 TS 페킷들은 전용 하드웨어 기능, 즉, 입력 비트 스트림을 취급할 수 있는 MPEG-2 TS 디멀티플렉서들(demultiplexers)에 의해 처리된다. 이 경우, 데이터 오버플로우는 없다. 또한, 신호의 일시적 손실과 같은 예외적인 경우가 발생한다면, MPEG-2 TS 리더(reader)는 전용 하드웨어 기능들을 이용함으로써 쉽게 재동기화될 수 있을 것이다.Two kinds of MPEG-2 receivers are used. First, in set top boxes, input MPEG-2 TS packets are handled by dedicated hardware functionality, namely MPEG-2 TS demultiplexers, which can handle input bit streams. In this case, there is no data overflow. In addition, if exceptional cases such as temporary loss of signal occur, the MPEG-2 TS reader may be easily resynchronized by using dedicated hardware functions.
MPEG-2 수신기의 두번째 유형은 PCI 또는 USB 인터페이스들를 사용하는 PC를 이용한다. 일반적으로, PCI MPEG2-TS 수신기들은 PCI 마스터들이고, MPEG2-TS 패킷들은 전용 하드웨어에 의해 PC 시스템 메모리에 쓰여지기(기록되기) 때문에 FIFO 오버플로우는 일어나지 않는다. 또한, USB MPEG2-TS 수신기들은 MPEG2-TS 패킷들을 전송하기 위해 등시 USB 엔드포인트들(isochronous USB endpoints)을 사용하며, 실제 비트율만큼 USB 대역폭을 보유하는 이러한 유형의 전송에서의 주된 단점과 함께 데이터 읽기 비트율을 보증한다. The second type of MPEG-2 receiver uses a PC using PCI or USB interfaces. Generally, PCI MPEG2-TS receivers are PCI masters and FIFO overflow does not occur because MPEG2-TS packets are written (written) to PC system memory by dedicated hardware. In addition, USB MPEG2-TS receivers use isochronous USB endpoints to transmit MPEG2-TS packets, and with the major drawback of this type of transmission, which retains USB bandwidth by the actual bit rate. Guaranteed read bit rate.
그러므로, 이러한 모든 MPEG-2 수신기들은 높은 복잡성을 대가로 오버플로우를 경험하지 않는다. Therefore, all these MPEG-2 receivers do not experience overflow at the expense of high complexity.
한편, USB 등시 엔드포인트들을 사용하지 않는 더 간단한 USB MPEG-2 TS 수신기들이 있다.On the other hand, there are simpler USB MPEG-2 TS receivers that do not use USB isochronous endpoints.
그러나, 위성, 케이블, 지상파 어떤 전송 모드인 간에, 이러한 수신기들에서 데이터 오버플로우 그리고 오버플로우 관리의 문제는 일어날 수 있다. 종래에는, 오버플로우 관리가 수신된 데이터 비트율보다 더 높은 데이터 읽기 비트율을 보증하지 못했으며(예를 들면, 일시적으로 과부하될 수 있는 PC), MPEG-2 TS 패킷에 요구되는 동기(synchronization)를 유지할 수 없다. 특히, MPEG-2 TS 리더가 풀 MPEG-2 TS 패킷들을 수신할 수 있고, 데이터 읽기 비트율이 수신된 비트율보다 일시적으로 낮으면 동기화된 채로 남아 있는 것을 보증하기에 취약하다.However, regardless of satellite, cable or terrestrial transmission modes, problems of data overflow and overflow management can occur in these receivers. Conventionally, overflow management has not guaranteed a higher data read bit rate than the received data bit rate (e.g., a PC that may be temporarily overloaded) and maintains the synchronization required for MPEG-2 TS packets. Can not. In particular, the MPEG-2 TS reader is capable of receiving full MPEG-2 TS packets and is vulnerable to ensuring that it remains synchronized if the data read bit rate is temporarily lower than the received bit rate.
그러므로, 간단하고 그럼으로써 경제적인 방법으로 데이터 패킷을 저장하고 오버플로우 상황을 관리하기 위한 향상된 방법 및 시스템에 대한 요구가 있다. Therefore, there is a need for an improved method and system for storing data packets and managing overflow situations in a simple and economical way.
발명의 요약Summary of the Invention
따라서, 본 발명은 청구항 1항에 따른 데이터 패킷들을 저장하기 위한 향상된 방법을 제공한다. 이러한 방법의 다른 특징들은 종속항인 청구항 2항 내지 청구항 5항에 기술된다.The present invention therefore provides an improved method for storing data packets according to
본 발명은 청구항 6항 또는 7항에 따른 데이터 패킷들을 저장하기 위한 시스템을 더 제공한다.The invention further provides a system for storing data packets according to claims 6 or 7.
본 발명은 청구항 8항에 따른 MPEG-2 TS 수신기 및 청구항 9항에 따른 컴퓨터 프로그램 제품을 더 제공한다.The invention further provides an MPEG-2 TS receiver according to claim 8 and a computer program product according to claim 9.
상세한 설명details
도 1은 네 개의 데이터 블럭들(db1, db2, db3,db4)로 구성된 데이터 패킷(DP)를 나타낸다. 본 실시예에서, 데이터 패킷(DP)은 MPEG-2 전송용 스트림 패킷이다. 각 데이터 블럭(db1, db2, db3, db4)은 각각 데이터(A, B, C, 및 D)를 포함한다.1 shows a data packet DP composed of four data blocks db1, db2, db3, and db4. In this embodiment, the data packet DP is a stream packet for MPEG-2 transmission. Each data block db1, db2, db3, db4 contains data A, B, C, and D, respectively.
도 2는 도 1의 데이터 패킷(DP)과 같은 데이터 패킷들을 저장하기 위한 시스템(10)을 나타낸다. 상기 시스템(10)은 저장공간을 갖는 FIFO(first-in-first-out) 버퍼(12), 및 상기 버퍼(12)의 저장공간에 데이터 패킷들을 저장하는 것을 관리하 기 위한 관리수단(14)을 포함한다. 아래의 설명에서, 버퍼와 버퍼의 저장공간은 둘 다 부재번호 12로 기재된다.FIG. 2 shows a
상기 버퍼(12)는 데이터를 저장하기로 한 여덟 개의 데이터 셀들(dc1 내지 dc8)을 포함한다. 각각은 고유의 주소와 관계한다. 상기 버퍼(12)는 컴퓨터의 RAM(random access memory)에서 실행될 수 있다.The
본 설명에서, 데이터 셀들 및 데이터 블럭들은 동일한 크기, 예를 들면 1 바이트를 갖는다. 물론, 그들은 상이한 크기를 가질 수 있다.In the present description, the data cells and data blocks have the same size, for example 1 byte. Of course, they can have different sizes.
상기 관리수단(14)은 읽기 포인터 관리부(read pointer management unit;16) 및 쓰기 포인터 관리부(write pointer management unit;18)를 포함한다.The management means 14 includes a read
상기 읽기 포인터 관리부(16)는 데이터가 읽혀질 데이터 셀의 버퍼 저장공간(12)에서 위치를 지시하는 읽기 포인터(R)를 관리한다. 도 2에서, 읽기 포인터(R)는 데이터 셀(dc4)의 주소를 포함한다.The
쓰기 포인터 관리부(18)는 데이터가 쓰여질 데이터 셀의 버퍼 저장공간(12)에서 위치를 지시하는 쓰기 포인터(W)를 관리한다. 도 2에서, 쓰기 포인터(W)는 데이터 셀(dc6)의 주소를 포함한다.The
둘 포인터들(R, W)은 데이터 셀(dc1)에서 데이터 셀(dc8)로 가고 다시 데이터 셀(dc1)로 돌아가는 동일 진행 환형 경로(proceeding loop path)를 따라 버퍼 저장공간상에서 진행한다.Both pointers R and W travel on the buffer storage space along the same proceeding loop path from data cell dc1 to data cell dc8 and back to data cell dc1.
상기 관리수단(14)은 또한 데이터 패킷의 제 1 데이터 블록이 기록되는 데이터 셀의 주소를 저장할 수 있다. 이것은 아래에서 설명될 것이다.The management means 14 may also store the address of the data cell in which the first data block of the data packet is recorded. This will be explained below.
바람직하게는, 읽기/쓰기 포인터들(R, W)은 포인터 레지스터(register)(미도시)에 저장된다.Preferably, read / write pointers R and W are stored in a pointer register (not shown).
도 3은 오버플로우 상황, 즉, 수신된 데이터 블럭을 쓰기 위한 충분한 자유 저장공간이 없는 상황을 나타낸다. 자유 저장공간은 데이터가 없는 데이터 셀들 또는 이미 데이터가 읽혀진 데이터 셀들 중 어느 하나이다. 따라서, 버퍼(12)의 자유 저장공간은 진행경로 상에 쓰기 포인터(W)에서 읽기 포인터(R)까지의 "거리(distance)"에 의해, 즉, 쓰기 포인터(W) 및 읽기 포인터(R) 간의 데이터 셀들에 의해 구성된다.3 illustrates an overflow situation, ie there is not enough free storage space to write a received data block. Free storage is either data cells without data or data cells from which data has already been read. Thus, the free storage space of the
도 3의 오버플로우 상황에서, 상기 쓰기 포인터(W)는 진행경로 상에서 읽기 포인터(R)를 뒤 따라간다. 따라서, 버퍼의 모든 저장공간은 읽혀지지 않은 데이터로 가득 차게 된다.In the overflow situation of FIG. 3, the write pointer W follows the read pointer R on the progress path. Thus, all storage space in the buffer is filled with unread data.
설명한 예에서, 앞의 세 개의 데이터 블럭들(db1, db2, 및 db3)이 수신되고 그들의 대응하는 데이터(A, B, C)가 쓰여진다. 그러나, 수신된 데이터 블럭(db4)의 데이터(D)를 기록하는 것은 불가능하다.In the example described, the preceding three data blocks db1, db2, and db3 are received and their corresponding data A, B, C are written. However, it is impossible to record the data D of the received data block db4.
도 4a 및 도 4b는 관리수단(14)에 의해 달성되는, 버퍼(12)의 저장공간에 데이터 패킷들을 저장하는 것을 관리하기 위한 방법의 블럭도이다.4A and 4B are block diagrams of a method for managing the storage of data packets in the storage space of the
데이터 패킷들을 저장하는 것의 관리는, 도 4a에 도시된 데이터 패킷 읽기 방법과, 도 4b에 도시된 데이터 패킷 쓰기 방법을 포함한다. 이러한 두 방법들은 동시에 병행하여 실행된다.Management of storing data packets includes a data packet reading method shown in FIG. 4A and a data packet writing method shown in FIG. 4B. These two methods are executed in parallel.
도 4a를 참조하며, 상기 읽기 방법은 읽기 포인터(R)로 지시된 데이터 셀에 쓰여진 데이터를 읽는 제 1 단계(30)를 포함한다. Referring to FIG. 4A, the read method includes a
상기 읽기 방법은 읽기 가능한 데이터가 그 다음 데이터 셀에 쓰여져 있는지 테스트하는 단계(32)로 진행한다. 만약 그 경우가 아니라면, 즉, 쓰기 포인터가 그 다음 데이터 셀을 지시하고 있다면, 새 데이터의 쓰기는 대기하며, 이것은 테스트 단계(32)로 다시 돌아가는 화살표(34)로 표시된다.The read method then proceeds to step 32, where the readable data is written to the next data cell. If that is not the case, i.e. if the write pointer is pointing to the next data cell, the writing of new data is awaited, which is indicated by an
만약 읽기 가능한 데이터가 있다면, 즉, 쓰기 포인터가 다음 데이터 셀을 지시하지 않으면, 상기 읽기 방법은, 읽기 포인터(R)를 증가시켜 읽기 포인터(R)가 다음 데이터 셀을 지시하도록 하는 단계(36)로 진행하고, 다시 읽기 단계(30)로 돌아간다.If there is readable data, ie if the write pointer does not point to the next data cell, then the read method increments the read pointer R so that the read pointer R points to the next data cell (36). Proceeds back to the reading
도 4b를 참조하며, 상기 쓰기 방법은 수신되는 현재 데이터 패킷의 데이터 블럭을 수신하는 제 1 단계(40)를 포함한다. Referring to FIG. 4B, the write method includes a
다음, 상기 쓰기 방법은 추후에 수신된 새 데이터 블럭을 쓰기 위한 충분한 자유 저장공간이 있는지 테스트하는 단계(42)를 포함한다. 이 테스트하는 단계는 쓰기 포인터에서 읽기 포인터까지의 진행 환형 경로상에 저장공간을 결정함으로써 이루어진다. The write method then includes
만약 충분한 자유 저장공간이 있다면, 즉, 쓰기 포인터(W)가 읽기 포인터(R)와 동일하지 않으면, 상기 쓰기 방법은, 수신된 데이터 블럭을 쓰기 포인터(W)가 지시하는 데이터 셀에 쓰고, 쓰기 포인터(W)가 진행 환형 경로의 그 다음 데이터 셀을 지시하도록 쓰기 포인터(W)를 증가시키는 단계(44)로 진행한다.If there is sufficient free storage space, i.e., if the write pointer W is not equal to the read pointer R, the write method writes the received data block to the data cell indicated by the write pointer W, and writes. Proceeding to step 44, the write pointer W is incremented such that the pointer W points to the next data cell of the progressive annular path.
만약 쓰기 완료된 데이터 블럭이 데이터 패킷의 제 1 블럭이라면, 예를 들 면, 도 1의 데이터 패킷(DP)의 데이터 블럭(db1)이라면, 그 데이터 블럭의 위치 주소는 관리수단(14)에 의해 저장된다. 이 단계는 도 4b의 블럭(46)으로 표시된다. 다음, 상기 쓰기 방법은 현재 데이터 패킷의 추후에 수신된 데이터 블럭들의 저장을 관리하기 위한 수신단계(40)로 다시 돌아간다.If the written data block is the first block of the data packet, for example, if it is the data block db1 of the data packet DP of Fig. 1, the position address of the data block is stored by the management means 14; do. This step is represented by
만약 충분한 자유 저장공간이 없다면, 즉, 쓰기 포인터(W)가 읽기 포인터(R)와 동일하다면, 상기 쓰기 방법은 현재 데이터 패킷의 수신된 데이터 블럭들을 쓰는 동작을 멈추고, 쓰기 포인터(W)를 위치 주소가 단계(46)에서 저장된 현재 수신되고 있는 데이터 패킷의 제 1 쓰기 완료된 데이터 블럭의 위치 주소로 옮기는 단계(48)로 진행한다.If there is not enough free storage space, i.e., if the write pointer W is equal to the read pointer R, the write method stops writing the received data blocks of the current data packet and positions the write pointer W. The process proceeds to step 48 where the address is moved to the location address of the first written data block of the currently received data packet stored in
다음, 대기 단계(50)에서, 현재 데이터 패킷의 새롭게 수신된 데이터 블럭들은 버려지고, 즉, 버퍼(12)에 쓰여지지 않는다. 새로운 데이터 패킷의 제 1 블럭을 수신하면, 상기 방법은 수신단계(40)로 돌아간다.Next, in the waiting
쓰기 포인터(W)를 옮기는 단계로 인해, 다음 데이터 패킷의 수신된 데이터 블럭들은 이전 데이터 패킷의 이미 쓰기 완료된 데이터 블럭들에 유리하게 겹쳐 쓰기가 가능하다. By moving the write pointer W, the received data blocks of the next data packet are advantageously able to overwrite the already written data blocks of the previous data packet.
실제로, MPEG-2 데이터 수신과 같은 많은 적용들에서, 불완전한 데이터 패킷은 사용될 수 없으며 그리고 버퍼(12)를 이용하는 적용에 의해 버려진다.Indeed, in many applications, such as MPEG-2 data reception, incomplete data packets cannot be used and are discarded by the
이러한 데이터 패킷을 겹쳐 쓰는 것은 추후 데이터 패킷을 위한 자유 저장공간을 더 제공할 수 있으며, 따라서, 오버플로우가 다시 일어나는 횟수를 줄일 수 있다. Overwriting this data packet may further provide free storage for future data packets, thus reducing the number of times the overflow occurs again.
간단하고 그럼으로써 경제적인 방법으로 데이터 패킷을 저장하고 오버플로우 상황을 관리하기 위한 향상된 방법 및 시스템을 제공한다.It provides an improved method and system for storing data packets and managing overflow situations in a simple and economical way.
Claims (9)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP05292080A EP1773043A1 (en) | 2005-10-06 | 2005-10-06 | Method and system for storing data packets |
EP05292080.8 | 2005-10-06 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20070038881A true KR20070038881A (en) | 2007-04-11 |
Family
ID=35976786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060095590A Withdrawn KR20070038881A (en) | 2005-10-06 | 2006-09-29 | Method and system for storing data packets |
Country Status (6)
Country | Link |
---|---|
US (1) | US20070081528A1 (en) |
EP (1) | EP1773043A1 (en) |
JP (1) | JP2007124639A (en) |
KR (1) | KR20070038881A (en) |
CN (1) | CN1984339A (en) |
TW (1) | TW200729955A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101160057B1 (en) * | 2008-09-09 | 2012-06-26 | 소프트온넷(주) | Method and system for extracting repacking data of application program on host computer in dirty personal computer environment |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5240513B2 (en) * | 2008-09-11 | 2013-07-17 | ソニー株式会社 | Information processing apparatus and method |
CN104794065B (en) * | 2015-05-04 | 2018-01-09 | 常州工学院 | A kind of more packet fixed-length data cyclic access methods |
CN111381837B (en) * | 2018-12-28 | 2023-07-18 | 广州众诺微电子有限公司 | Burning method, system and readable storage medium |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5862136A (en) * | 1995-07-07 | 1999-01-19 | Northern Telecom Limited | Telecommunications apparatus and method |
US5880997A (en) * | 1995-12-22 | 1999-03-09 | Cypress Semiconductor Corp. | Bubbleback for FIFOS |
GB9606928D0 (en) * | 1996-04-02 | 1996-06-05 | Memory Corp Plc | Memory devices |
US6101329A (en) * | 1997-02-18 | 2000-08-08 | Lsi Logic Corporation | System for comparing counter blocks and flag registers to determine whether FIFO buffer can send or receive data |
US5852630A (en) * | 1997-07-17 | 1998-12-22 | Globespan Semiconductor, Inc. | Method and apparatus for a RADSL transceiver warm start activation procedure with precoding |
US5949441A (en) * | 1997-08-01 | 1999-09-07 | International Business Machines Corporation | Multimedia terminal with an encoder for converting analog video data to compressed digitized video data |
US6021449A (en) * | 1997-08-01 | 2000-02-01 | International Business Machines Corporation | Video FIFO overflow control method that blocks video encoder data when overflow is imminent and resumes flow when frames sizes have returned to nominal size |
EP1035682A1 (en) * | 1999-03-06 | 2000-09-13 | Deutsche Thomson-Brandt Gmbh | Method and bus interface employing a memory in an integrated circuit for linking a bus with an application device |
US6907481B2 (en) * | 2001-03-06 | 2005-06-14 | Ati Technologies, Inc. | System for bit-rate controlled digital stream playback and method thereof |
TWI242131B (en) * | 2003-04-25 | 2005-10-21 | Via Networking Technologies In | Method and related circuit for increasing network transmission efficiency by speeding data updating rate of memory |
US7293132B2 (en) * | 2003-10-08 | 2007-11-06 | Samsung Electronics Co., Ltd. | Apparatus and method for efficient data storage using a FIFO memory |
US7248587B1 (en) * | 2005-04-11 | 2007-07-24 | Azul Systems, Inc. | Error recovery of variable-length packets without sequence numbers or special symbols used for synchronizing transmit retry-buffer pointer |
US7949845B2 (en) * | 2005-08-03 | 2011-05-24 | Sandisk Corporation | Indexing of file data in reprogrammable non-volatile memories that directly store data files |
US7571275B2 (en) * | 2005-08-31 | 2009-08-04 | Hamilton Sundstrand Corporation | Flash real-time operating system for small embedded applications |
-
2005
- 2005-10-06 EP EP05292080A patent/EP1773043A1/en not_active Withdrawn
-
2006
- 2006-09-22 TW TW095135234A patent/TW200729955A/en unknown
- 2006-09-29 KR KR1020060095590A patent/KR20070038881A/en not_active Withdrawn
- 2006-09-29 CN CNA2006101718166A patent/CN1984339A/en active Pending
- 2006-10-02 US US11/540,538 patent/US20070081528A1/en not_active Abandoned
- 2006-10-05 JP JP2006273595A patent/JP2007124639A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101160057B1 (en) * | 2008-09-09 | 2012-06-26 | 소프트온넷(주) | Method and system for extracting repacking data of application program on host computer in dirty personal computer environment |
Also Published As
Publication number | Publication date |
---|---|
US20070081528A1 (en) | 2007-04-12 |
CN1984339A (en) | 2007-06-20 |
TW200729955A (en) | 2007-08-01 |
EP1773043A1 (en) | 2007-04-11 |
JP2007124639A (en) | 2007-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6823131B2 (en) | Method and device for decoding a digital video stream in a digital video system using dummy header insertion | |
EP1169862B1 (en) | Data format for a streaming information receiver | |
US20050283547A1 (en) | Streaming information appliance with buffer read and write synchronization | |
US20070058730A1 (en) | Media stream error correction | |
EP1239674A2 (en) | Method and apparatus for recording broadcast data | |
CN102547435A (en) | System and method for playing and processing multimedia file | |
US6831931B2 (en) | System and method for remultiplexing of a filtered transport stream | |
US20180376180A1 (en) | Method and apparatus for metadata insertion pipeline for streaming media | |
KR20070038881A (en) | Method and system for storing data packets | |
CN113055680B (en) | Distributed transcoding method | |
US6892022B1 (en) | Storing and retrieving encoded data stream with specified time of delivery on a hard disk | |
CN1491387B (en) | Device and method for managing access to storage medium | |
EP1677540A1 (en) | Content reproduce system, reproduce device, reproduce method, and distribution server | |
US20070183756A1 (en) | Methods and systems for picture rate reduction of stored video while under continuous record load | |
CN101147395B (en) | Recording device and recording method | |
JP2009296365A (en) | Video recording and playback equipment, video recording method, and video playback method | |
CN109068156A (en) | A kind of performance recording, playback method and device | |
EP3678368B1 (en) | Video streaming batch | |
US6961801B1 (en) | Method and apparatus for accessing video data in memory across flow-controlled interconnects | |
CN100461747C (en) | Method for adjusting code rate of code stream in multimedia | |
US8442126B1 (en) | Synchronizing audio and video content through buffer wrappers | |
EP1148729A1 (en) | Method and device for decoding a digital video stream in a digital video system using dummy header insertion | |
US20050097558A1 (en) | System and method for a symmetric architecture for multimedia players | |
US20230103367A1 (en) | Method and apparatus for mpeg dash to support preroll and midroll content during media playback | |
US9813689B2 (en) | Method for accelerated restitution of audio content and associated device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20060929 |
|
PG1501 | Laying open of application | ||
PC1203 | Withdrawal of no request for examination | ||
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |