KR100787014B1 - 데이터 기록/재생 장치 및 방법 - Google Patents

데이터 기록/재생 장치 및 방법 Download PDF

Info

Publication number
KR100787014B1
KR100787014B1 KR1020060030754A KR20060030754A KR100787014B1 KR 100787014 B1 KR100787014 B1 KR 100787014B1 KR 1020060030754 A KR1020060030754 A KR 1020060030754A KR 20060030754 A KR20060030754 A KR 20060030754A KR 100787014 B1 KR100787014 B1 KR 100787014B1
Authority
KR
South Korea
Prior art keywords
data
segment
unit
data stream
recording
Prior art date
Application number
KR1020060030754A
Other languages
English (en)
Other versions
KR20060106905A (ko
Inventor
도모유키 오쿠야마
Original Assignee
엔이씨 일렉트로닉스 가부시키가이샤
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 엔이씨 일렉트로닉스 가부시키가이샤 filed Critical 엔이씨 일렉트로닉스 가부시키가이샤
Publication of KR20060106905A publication Critical patent/KR20060106905A/ko
Application granted granted Critical
Publication of KR100787014B1 publication Critical patent/KR100787014B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/30Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording
    • G11B27/3027Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording used signal is digitally coded
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10629Data buffering arrangements, e.g. recording or playback buffers the buffer having a specific structure
    • G11B2020/10666Ring buffers, e.g. buffers wherein an iteratively progressing read or write pointer moves back to the beginning of the buffer when reaching the last storage cell
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10675Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control
    • G11B2020/10685Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control input interface, i.e. the way data enter the buffer, e.g. by informing the sender that the buffer is busy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10675Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control
    • G11B2020/10694Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control output interface, i.e. the way data leave the buffer, e.g. by adjusting the clock rate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10675Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control
    • G11B2020/10722Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control wherein the size of the buffer is variable, e.g. by adding additional memory cells for coping with input streams that have high bit rates
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs

Abstract

본 발명의 실시형태에 따른 데이터 기록/재생 장치는, 복수의 데이터 유닛을 저장하는 M (M 은 자연수) 세그먼트로 분할되는, 복수의 데이터 유닛을 포함하는 데이터 스트림을 저장하기 위한 임시 저장 유닛; 데이터 스트림에 포함된 제 1 데이터 유닛이 임시 저장 유닛에 저장된 후에, 제 1 데이터 유닛의 데이터의 재생 또는 기록 데이터의 순서에 관련되는 K 개의 (K 는 자연수) 데이터 유닛을 검출하고, 제 1 데이터 유닛에서 K 개의 데이터 유닛에 대한 관련 정보를 설정하기 위한 제어 유닛; 및 세그먼트에 기초하여 임시 저장 유닛으로부터 설정된 제 1 데이터 유닛을 포함하는 데이터 스트림을 수신, 그 수신된 데이터 스트림을 참조하여 기록 데이터를 생성하여 데이터를 기록 매체 상에 기록, 및/또는 기록 매체로부터 기록된 데이터를 판독하여 판독 데이터를 재생하는 기록/재생 유닛을 포함한다.
DVD, 기록 매체, 데이터 기록/재생 장치, 데이터 기록/재생 방법

Description

데이터 기록/재생 장치 및 방법{DATA RECORDING/REPRODUCING APPARATUS AND METHOD}
도 1 은 본 발명의 일 실시형태에 따른 데이터 기록 장치의 구성을 도시하는 블록도.
도 2 는 본 발명의 실시형태에 따른 데이터 기록 장치의 스트림 버퍼의 구조를 도시하는 도면.
도 3 은 본 발명의 실시형태에 따른 데이터 기록 장치의 동작을 도시하는 플로우챠트.
도 4 는 본 발명의 실시형태에 따른 데이터 기록 장치의 동작을 도시하는 플로우챠트.
도 5a 내지 도 5e 는 본 발명의 실시형태에 따른 데이터 기록 장치의 동작을 예시하는 도면.
도 6a 내지 도 6g 는 DVD-Video 표준에 따른 데이터의 구조를 도시하는 도면.
도 7 은 종래의 스트림 버퍼의 구조를 도시하는 도면.
*도면의 주요 부분에 대한 부호의 설명*
1: 데이터 기록 장치 2: 시스템 제어 회로
3: 인코더 회로 4: 스트림 버퍼
5: 기록 매체 6: 저장 인터페이스 회로
21: VOBU 카운터 22: 세그먼트 카운터
23: 세그먼트 검출 유닛 24: 데이터 설정 유닛
31: 인코딩 유닛 32 재생 종료 시간 설정 유닛
본 발명은 데이터 기록/재생 장치 및 방법에 관한 것이다. 특히, 본 발명은 DVD (Digital Versatile Disk) 와 같은 기록 매체를 사용하여 데이터를 기록/재생하기 위한 데이터 기록/재생 장치 및 방법에 관한 것이다.
최근, DVD 는 안정적이고, 광범위하게 사용되게 되었다. DVD (DVD-R, DVD-RW, 또는 DVD-RAM) 와 같은 기록 매체 상에 비디오 신호 또는 오디오 신호를 기록하기 위한 표준으로서, DVD-Video 또는 DVD+VR (DVD+ReWritable Video format) 이 알려져 있다. DVD-Video 데이터 포맷은 DVD+VR 데이터 포맷과 호환 가능하다. 하기의 설명에서, "DVD-Video standard" 라는 용어는 DVD-Video 및 DVD+VR 뿐만 아니라, 데이터 포맷과 관련하여 이들과 호환 가능한 다른 표준들을 칭한다.
DVD-Video 표준에 따르면, MPEG2 (Moving Picture Expert Group 2) 인코딩 시스템에 기초하여 압축-인코딩된 디지털 비디오 데이터 또는 오디오 데이터 (데이터 스트림) 가 DVD 상에 기록된다.
도 6a 내지 도 6g 는 DVD-Video 표준에 기초한 데이터 구조를 도시한다. 도 6a 내지 도 6b 에서 도시된 바와 같이, DVD-Video 표준에 따른 데이터는 계층 구조를 가지고, 도 6a 는 계층 구조의 최상위 레이어에서의 데이터 구조를 도시한다. 도 6a 에서 도시된 바와 같이, VMG (Video Manager) 는 그 헤드에 기록된다. 이에 이어, 99 VTS (Video Title Sets) 까지 기록된다.
도 6b 에 도시된 바와 같이, 타이틀에 관한 제어 정보를 포함하는 VTSI (Video TitleSet Information) 가 각각의 VTS 의 헤드에 기록된다. VTSI 다음에, VOBS (Video Object Sets) 가 기록된다.
도 6c 에 도시된 바와 같이, 각각의 VOBS 는 m 개의 VOB (Video Objects) 로 이루어진다. 도 6d 에 도시된 바와 같이, 각각의 VOB 는 i 개의 VOBU (Video Object Units) 로 이루어진다. 덧붙여 말하자면, DVD-Video 표준에 따르면, VOB 는 각각 n 개의 VOBU 를 포함하는 하나 이상의 셀들로 이루어진다.
여기서, DVD-Video 및 DVD+VR 표준은 하나의 VTS 에서의 셀의 최대 수를 255로 특정한다. DVD+VR 표준에서는, 하나의 VOB 는 하나의 셀을 포함하고, 하나의 VTS 는 255 개까지의 VOB 를 포함한다. DVD-Video 표준에서는, 하나의 VOB 는 하나 이상의 셀을 포함하고, 따라서 하나의 VTS 는 마찬가지로 255 개까지의 VOB 를 포함한다. 하나의 VOB 에서의 VOBU 의 수는 비트 레이트 또는 비디오 프레임의 수에 따라 변화한다. 비트 레이트는 비디오 또는 오디오 데이터의 초당 데이터량을 의미한다. 더 높은 비트 레이트는 높은 품질의 이미지 및 사운드를 가능하게 한다.
도 6e 에 도시된 바와 같이, 각각의 VOBU 는 복수의 팩으로 이루어지고, 각각의 팩 사이즈는 2,048 바이트이다. VOBU 는 NV_PCK (Navigation Pack), V_PCK (Video Pack), 및 A_PCK (Audio Pack) 을 포함한다. VOBU 는 SP_PCK (Sub Picture Pack) 와 같은 다른 데이터일 수도 있다. 도 6e 에서 도시된 바와 같이, NV_PCK 는 각각의 VOBU 의 헤드에서만 배열된다. NV_PCK 에 이어서, V_PCK, A_PCK, 또는 SP_PCK 와 같은 임의의 수의 팩이 필요에 따라 배열된다.
A_PCK 에서, 압축-인코딩된 오디오 데이터가 기록되고, V_PCK 에서, 압축-인코딩된 비디오 데이터가 기록된다. NV_PCK 에서, 보통 재생 또는 특별 재생 (느린 재생, 고속 재생, 및 스킵 재생) 에 관한 데이터와 같은 VOBU 의 데이터를 제어하기 위한 제어 정보가 기록된다. 도 6f 에 도시된 바와 같이, NV_PCK 는 팩 헤더, 시스템 헤더, 재생/디스플레이되는 동영상 또는 사운드를 복구하기 위한 복구 정보로서의 DSI 패킷, 및 DSI 패킷을 사용하여 복구되는 동영상 또는 사운드를 제어하기 위한 디스플레이 제어 정보로서의 PCI 패킷으로 이루어진다. 도 6g 에 도시된 바와 같이, DSI 패킷은 DSI_GI (DSI general information), SML_PBI (seamless reproduction information), SML_AGLI (seamless angle information), VOBU_SRI (VOBU search information), 및 SYNCI (synchronous information) 를 포함한다. SML_PBI 는 재생 종료 시간 VOB_V_E_PTM 을 포함하고, VOBU_SRI 는 순방향 포인터 FWDI 를 포함한다. 재생 종료 시간 VOB_V_E_PTM 에서, VOBU 를 포함하는 모든 VOB 의 모든 가능한 재생 종료 시간이 기록된다. 순방향 포인터 FWDI 는 순방향 정보, 즉, 재생될 VOB 에서의 VOBU 의 헤더 어드레스를 특정하기 위한 포인터이다. 순방향 포인터 FWDI 에서, 타켓 VOBU 의 관점에서 제 2 내지 241st VOBU 의 헤더 어드레스 (FWDI 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 20, 60, 120, 240) 가 기록될 수 있다.
상기 언급한 바와 같이, DVD-Video 표준에 따른 데이터는 재생 종료 시간 VOB_V_E_PTM 또는 순방향 포인터 FWDI 와 같은 장래 데이터를 포함한다. 그 결과, 종래의 데이터 기록 장치에 따르면, 일반적으로, 데이터 스트림 (비디오 데이터 또는 오디오 데이터) 의 생성의 경우에서, 데이터 스트림은 임시적으로 스트림 버퍼에 저장된다. 재생 종료 시간 VOB_V_E_PTM 및 순방향 포인터 FWDI 가 결정될 때, 그들 데이터는 DVD 상에서 설정되고 기록된다.
도 7 은 종래의 데이터 기록 장치에서 사용되는 스트림 버퍼 (700) 의 예를 도시한다. 종래의 스트림 버퍼 (700) 는 인코더 등으로 생성된 데이터 스트림을 순차적으로 저장한다. 본 실시예에서, 데이터 스트림을 구성하는 VOBU 는 VOBU #1 으로부터 순서대로 저장된다.
재생 종료 시간 VOB_V_E_PTM 을 설정하기 위해, VOB 의 최종 비디오 프레임의 재생 종료 시간이 필요하다. 따라서, VOB 가 n 개의 VOBU 로 이루어진다고 가정하면, 스트림 버퍼 (700) 가 n 개의 VOBU 를 저장한 후에, 재생 종료 시간 VOB_V_E_PTM 은 설정될 수 있다. 따라서, 스트림 버퍼 (700) 는 하나의 VOB 모두를 저장하기에 충분한 용량을 필요로 한다.
또한, 순방향 포인터 FWDI 를 설정하기 위해, 설정-타겟 VOBU 외에, 순방향 포인터 FWDI 만큼의 VOBU 가 스트림 버퍼 (700) 에 저장될 필요가 있다. 따라서, 순방향 포인터 FWDI (1 내지 240) 을 설정하는 경우에, 스트림 버퍼 (700) 는 240 이상의 VOBU 를 저장하기에 충분한 용량을 필요로 한다.
덧붙여 말하자면, 종래의 데이터 기록 장치로서, 일본 공개특허공보 제 2002-56609 호에 개시된 바와 같은 장치가 공지되어 있다. 일본 공개특허공보 제 2002-56609 호에 개시된 장치에서, VOB 의 VOBU 의 수는 일정하게 유지되고, NV_PCK 는 VOBU 의 수에 기초하여 미리 설정된다.
상기 언급된 바와 같이, 종래의 데이터 기록 장치에서, 재생 종료 시간 VOB_V_E_PTM 또는 순방향 포인터 FWDI 를 설정하기 위해, 스트림 버퍼는 하나의 VOB 에서의 모든 VOBU 를 저장하여야 한다. 예를 들어, 단일 DVD 상에 255 VOB 를 기록하는 경우에, VOB 당 평균 크기는 17 메가바이트 (= 4.2 기가바이트/255) 이고, 따라서 스트림 버퍼는 17 메가바이트 이상의 용량을 구비할 필요가 있다.
그 결과, 종래의 데이터 기록 장치는 스트림 버퍼의 메모리 크기가 크고, 데이터 기록 장치의 비용 감소가 어렵다는 문제가 있었다.
본 발명의 양태에 따른 데이터 기록/재생 장치는, 복수의 데이터 유닛을 저장하는 M (M 은 자연수) 세그먼트로 분할되는, 복수의 데이터 유닛을 포함하는 데이터 스트림을 저장하기 위한 임시 저장 유닛; 데이터 스트림에 포함된 제 1 데이터 유닛이 임시 저장 유닛에 저장된 후에, 제 1 데이터 유닛의 데이터의 재생 또는 기록 데이터의 순서에 관련되는 K 개의 (K 는 자연수) 데이터 유닛을 검출하고, 제 1 데이터 유닛에서 K 개의 데이터 유닛에 대한 관련 정보를 설정하기 위한 제어 유닛; 및 세그먼트에 기초하여 임시 저장 유닛으로부터 설정된 제 1 데이터 유닛을 포함하는 데이터 스트림을 수신, 수신된 데이터 스트림을 참조하여 기록 데이터를 생성하여 데이터를 기록 매체 상에 기록, 및/또는 기록 매체로부터 기록된 데이터를 판독하여 판독 데이터를 재생하는 기록/재생 유닛을 포함한다.
데이터 기록/재생 장치에 따르면, 임시 저장 유닛은 세그먼트로 분할되고, 세그먼트에 기초하여 출력되도록 필요한 데이터가 보충된다. 그 다음, 임시 저장 유닛은 하나 이상의 세그먼트에서 데이터를 보충하기 위해 필요한 데이터 유닛을 저장하기에 충분한 용량을 가지는 것만이 필요하다. 따라서, 임시 저장 유닛의 용량을 절감하고 장치 비용을 감소시키는 것이 가능하다.
본 발명의 또 다른 양태에 따르면, 입력되는 복수의 데이터 유닛의 데이터 스트림을 기록 또는 재생하기 위한 데이터 기록/재생 방법은, 복수의 데이터 유닛을 포함하는 데이터 스트림을 복수의 데이터 유닛을 저장하는 M (M 은 자연수) 세그먼트로 분할되는 임시 저장 유닛에 저장하는 단계; 데이터 스트림에 포함된 제 1 데이터 유닛이 임시 저장 유닛에 저장된 후에, 제 1 데이터 유닛의 데이터의 재생 또는 기록의 순서에 관련되는 K 개의 (K 는 자연수) 데이터 유닛을 검출하는 단계; 제 1 데이터 유닛의 K 개의 데이터 유닛에 대한 관련 정보를 설정하는 단계; 및 세그먼트에 기초하여 임시 저장 유닛으로부터 설정된 제 1 데이터 유닛을 포함하는 데이터 스트림을 수신, 수신된 데이터 스트림을 참조하여 기록 데이터를 생성하여 데이터를 기록 매체 상에 기록, 및/또는 기록 매체로부터 기록된 데이터를 판독하여 판독 데이터를 재생하는 단계를 포함한다.
데이터 기록/재생 방법에 따르면, 임시 저장 유닛은 세그먼트로 분할되고, 세그먼트에 기초하여 출력되도록 필요한 데이터가 보충된다. 그 다음, 임시 저장 유닛은 하나 이상의 세그먼트의 데이터를 보충하기 위해 필요한 데이터 유닛을 저장하기에 충분한 용량을 가지는 것만이 필요하다. 따라서, 임시 저장 유닛의 용량을 절감하고 장치 비용을 감소시키는 것이 가능하다.
본 발명에 따르면, 스트림 버퍼의 메모리 크기를 절감하고 장치 비용을 절감하는 것이 가능한 데이터 기록/재생 장치, 방법, 및 프로그램을 제공하는 것이 가능하다.
본 발명의 상기 및 다른 목적, 이점과 특징들은 첨부한 도면과 함께 설명되는 하기의 설명으로부터 더욱 명백해질 것이다.
바람직한 실시형태의 설명
이하, 본 발명을 여기에서 예시적인 실시형태를 참조하여 설명한다. 당업자라면 본 발명의 교시를 이용하여 많은 대안적인 실시형태들이 달성될 수 있고, 본 발명은 설명의 목적으로 예시된 실시형태들에 한정되지 않는다는 것을 인식할 것이다.
본 발명에 따른 데이터 기록/재생 장치는 입력되는 복수의 데이터 유닛을 포함하는 데이터 스트림을 기록 또는 재생한다. 데이터 기록/재생 장치는 임시 저장 유닛, 제어 유닛, 및 기록/재생 유닛을 구비한다. 임시 저장 유닛은 스트림 버퍼 등이고, 이는 VOBU 와 같은 데이터 유닛을 포함하는 데이터 스트림을 저장한다. 또한, 임시 저장 유닛은 복수의 데이터 유닛을 저장하기 위한 M (M 은 자연수) 세그먼트로 분할된다. 제어 유닛은 시스템 제어 회로 등이다. 데이터 스트림의 제 1 데이터 유닛이 임시 저장 유닛에 저장된 후에, 순방향 포인터 FWDI 등을 설정하기 위하여, VOBU 를 재생 및 기록하는 순서에 관련된 K 개의 (K 는 자연수) 데이터 유닛이 제 1 데이터 유닛에 저장된 것이 검출된다. 그 다음, 제어 유닛은 제 1 데이터 유닛에서 K 개의 데이터 유닛의 헤더 어드레스와 같은 관련 정보를 설정한다. 기록/재생 유닛은 저장 인터페이스 회로이다. 관련 정보가 설정되는 제 1 데이터 유닛을 포함하는 데이터 스트림은 세그먼트에 기초하여 임시 저장 유닛으로부터 입력된다. 그 다음, 기록/재생 유닛은 기록 매체 상에 기록 데이터를 기록하기 위해 입력 데이터 스트림을 참조, 및/또는 판독 데이터를 재생하기 위해 기록 매체로부터 기록된 데이터를 판독한다.
또한, 본 발명의 데이터 기록/재생 방법은 입력되는 복수의 데이터 유닛을 포함하는 데이터 스트림을 기록 또는 재생한다. 데이터 기록/재생 방법은 데이터 스트림을 저장, 데이터 스트림에서 데이터를 설정, 그리고 기록 매체 상에 데이터 스트림을 기록 또는 데이터를 재생한다. 데이터 스트림은 스트림 버퍼의 임시 저장 유닛에 저장된다. 임시 저장 유닛은 VOBU 와 같은 복수의 데이터 유닛을 저장하기 위한 M (M 은 자연수) 세그먼트로 분할된다. 데이터 스트림에서 데이터의 설정에 관해서, 데이터 스트림의 제 1 데이터 유닛이 임시 저장 유닛에 저장된 후에, 순방향 포인터 FWDI 를 설정하기 위해, VOBU 를 재생 또는 기록의 순서에 관련된 K 개의 (K 는 자연수) 데이터 유닛이 저장된 것이 검출된다. 그 다음, K 개의 데이터 유닛의 헤더 어드레스와 같은 관련 정보가 제 1 데이터 유닛에서 설정된다. 관련 정보가 설정되는 제 1 데이터 유닛을 포함하는 데이터 스트림은 기록 매체 상의 데이터 기록 시간에 세그먼트에 기초하여 임시 저장 유닛으로부터 입력된다. 그 다음, 입력 데이터 스트림은 참조되어 기록 매체 상에 생성된 기록 데이터를 기록, 및/또는 기록 매체로부터 기록된 데이터를 판독하여 판독 데이터를 재생한다.
제 1 실시형태
우선, 본 발명의 제 1 실시형태에 따른 데이터 기록 장치가 설명된다. 본 실시형태에 따른 데이터 기록 장치의 특징은 복수의 세그먼트로 분할된 스트림 버퍼가 제공된다는 것이고, 하나 이상의 세그먼트가 1 VOBU 의 데이터를 보충하기 위해 필요한 VOBU 를 저장한다.
도 1 은 본 실시형태에 따른 데이터 기록 장치의 구성을 도시한다. 본 실시형태의 데이터 기록 장치 (1) 는 DVD-Video 표준에 따른 데이터 스트림을 생성하고, 그 데이터 스트림을 기록 매체 상에 기록한다. 도 1 에 도시된 바와 같이, 데이터 기록 장치 (1) 는 시스템 제어 회로 (2), 인코더 회로 (3), 스트림 버퍼 (4), 기록 매체 (5), 및 저장 인터페이스 회로 (6) 를 포함한다. 예를 들어, 시스템 제어 회로 (2), 인코더 회로 (3), 스트림 버퍼 (4), 및 저장 인터페이스 회로 (6) 는 버스를 통해 서로 연결되고, 서로 데이터를 교환할 수 있다. 또한, 시스템 제어 회로 (2), 인코더 회로 (3), 스트림 버퍼 (4), 및 저장 인터페 이스 회로 (6) 는 다른 반도체 디바이스일 수도 있고, 또는 하나의 반도체 디바이스에 통합될 수도 있다.
인코더 회로 (3) 는 MPEG2 인코딩 시스템에 기초하여 입력 신호 상에 압축-인코딩을 수행하여 데이터 스트림을 생성한다. 생성된 데이터 스트림은 도 6a 내지 도 6g 에 도시된 것과 같은 데이터 구조를 구비하고, 연속적인 VOBU 로 이루어지는 VOB 를 포함한다. VOBU 는 데이터 스트림을 구성하는 데이터 유닛의 일예이다. 데이터 스트림은 계층 구조를 구비하고, VOBU 로 이루어지는 상부 레이어 데이터 블록은 VOB 이다. 본 실시형태에서, 인코더 회로 (3) 는 NV_PCK 의 순방향 포인터 FWDI 이외의 부분이 설정되는 VOBU 를 출력한다.
또한, 인코더 회로 (3) 는 인코딩 유닛 (31), 및 재생 종료 시간 설정 유닛 (32) 을 포함한다. 인코딩 유닛 (31) 은 압축-인코딩 및 VOBU 의 생성을 수행한다. 인코딩 유닛 (31) 은, 예를 들어, MPEG2 인코딩 시스템에 기초하여 카메라로부터 비디오 신호 입력을 압축-인코딩하여 V_PCK 를 생성하고, MPEG2 또는 MPEG3 인코딩 시스템에 기초하여 마이크로폰의 오디오 신호 입력을 압축-인코딩하여 A_PCK 를 생성한다. 그 다음, 인코딩 유닛 (31) 은 헤드에서 NV_PCK 로 V_PCK 및 A_PCK 를 포함하는 VOBU 를 생성한다.
이 때, 인코딩 유닛 (31) 은 VOBU 가 생성되는 각각의 시간에 시스템 제어 회로 (2) 에 VOBU 의 생성을 통지한다. VOBU 생성 통지는 인코딩 유닛 (31) 이 하나의 VOBU 를 생성하였다는 것과 하나의 VOBU 가 스트림 버퍼 (4) 에 저장되었다는 것을 가르쳐 준다. 예를 들어, VOBU 생성이 통지되고, 또한, VOBU 의 팩의 수가 통지된다. 그 외에도, 인코딩 유닛 (31) 은 VOB 의 생성의 완성 시에 (VOBU 의 수가 1 VOB 와 같게 될 때) VOB 생성의 완성을 시스템 제어 회로 (2) 에 통지하고, 모든 데이터 스트림의 생성 완성 시에 스트림 생성의 완성을 제어 회로 (2) 에 통지한다.
여기서, 본 실시형태에서, 하나의 VOB 에서 VOBU 의 수는 고정되었다고 가정된다. 데이터 스트림의 기록 후에 재생 시간에서 고속 순방향 또는 역방향과 같은 검색 작용에서, 하나의 재생에서, 즉, 1 VTS 에서 VOB (셀) 당 VOBU 의 수는 되도록이면 고정된다. 재생 동안의 검색 동작에서, 각각의 VOBU 의 헤드에서 비디오 데이터 (I 영상) 가 검색되어 헤드에서 오직 비디오 데이터만을 디코딩하고 디스플레이한다. 따라서, 하나의 VOB 에서 VOBU 의 수가 고정되면, 검색 동작 동안, 모든 비디오 데이터에 대한 재생 시간은 일정하게 유지될 수 있다. 따라서, 검색 동작 동안, 완전히 균일한 비디오 데이터가 재생될 수 있고, 부드럽게 디스플레이될 수 있다. 하나의 VOB 에서 VOBU 의 수는 각각의 VOBU 에서 비디오 프레임의 수 N (프레임 레이트) 과 인코딩-타겟 비트 레이트 (비디오 비트 레이트 및 오디오 비트 레이트) 에 기초하여 결정된다. 비트 레이트는 기록 매체 상에 기록된 사운드 및 이미지의 기록 시간, 이미지 품질, 및 사운드 품질에 따라서 소정의 값으로 미리 설정된다.
DVD-Video 표준은 상기 언급한 바와 같이 하나의 VTS 에서 VOB 의 최대 수를 255 로 정의한다. 따라서, 하나의 VTS 에서 하나의 VOB 의 VOBU 의 수는 하기의 식 1 로부터 도출된다.
VOB 당 VOBU 의 수 = 기록 시간/((255-R)*(VOBU 당 기록 시간)) … [식 1]
식 1 에서, R 은 VOB 당 VOBU 의 수와 재생 시간 사이의 관계를 만족시키기 위한 허용치를 나타낸다. R 의 값은 각각의 VOB 에서 VOBU 의 수는 상기 언급된 바와 같이 고정된다는 가정 하에, 재생 시간 (각각의 재생 시간 모드) 에 기초하여 결정된다. 예를 들어, 하나의 VTS 가 240 VOB 로 이루어진다면, 각각의 기록 시간 모드에서 검색 속도 비율을 결정하는 것은 쉽다. 각각의 기록 시간 모드에서, 하나의 VOB 에서 VOBU 의 수가 고정이라면, 재생은 n-배 속도에서 영향을 받고, 하나의 VTS 의 모두를 검색하는 검색 시간 (검색 속도) 은 균일하게 된다. 따라서, R 은 하나의 VOB 에서 VOBU 의 수를 일정하게 설정하기 위한 허용치이다.
또한, 예를 들어, 비트 레이트의 변화로 인해, 하나의 VOB 에서 VOBU 의 수가 240 보다 작을 때, 충분한 기록 시간이 확보될 수 없다는 가능성을 고려하여, 예를 들어, R 은 15 로 설정된다. 즉, 데이터는 소정의 기록 시간 내에 기록 매체 (5) 상에 기록될 것이고, 따라서 R 은, VBR (Variable Bit Rate) 기록의 경우에 기록 매체 (5) 상에 VTS 를 기록하기 위해 충분한 총 기록 시간을 확보하는 허용치이다.
여기서, 하나의 VTS 에서 VOB 의 수가 240 (255-15) 이고, VOB 당 재생 시간이 29.97 이라면, VOB 당 VOBU 의 수는 하기 테이블 1 에 도시된 바와 같다. 덧붙여 말하자면, 테이블 1 에서, VOBU 당 재생 시간은 15 프레임*1/29.97 (NTSC 시스템) = 0.5005 초이다.
[테이블 1]
기록 시간 (시간) 허용치 R VOB 당 VOBU 의 수
10 15 300
8 15 240
6 15 180
4 15 120
2 15 60
1 15 50
예를 들어, 인코딩 유닛 (31) 은 생성된 VOBU 의 수를 카운팅하기 위한 카운터를 포함한다. 카운트 값이 식 1 의 VOBU 의 수에 도달할 때, 하나의 VOB 가 생성되었다는 것이 결정되고, 시스템 회로 (2) 는 VOB 생성이 완성되었다는 통지를 받는다.
재생 종료 시간 설정 유닛 (32) 은 인코딩 유닛 (31) 으로 생성된 VOBU 의 NV_PCK 에 대한 재생 종료 시간 VOB_V_E_PTM 을 설정하기 위한 종료 데이터 설정 유닛이다. 재생 종료 시간 VOB_V_E_PTM 은 VOBU 를 포함하는 VOB 의 재생이 상기 언급한 바와 같이 완성되는 종료 시간이고, 종료 데이터는 VOB 의 끝에 배열되고, VOBU 에 관련된다. VOB 의 재생 종료 시간은 VOB 에서 VOBU 의 수와 VOBU 당 재생 시간에 기초하여 결정된다. 현재 시간까지 재생된 VOBU 의 수가 상기 식 1 에 의해 도출된 하나의 VOB 에서 VOBU 의 수로부터 공제되어 재생되지 않은 VOBU 의 수가 도출되며, 재생 종료 시간은 (재생되지 않은 VOBU 의 수 × 하나의 VOBU 에 대한 재생 시간) 에 의해 결정된다. 재생 종료 시간을 설정한 후에, VOBU 는 스트림 버퍼 (4) 로 출력된다. 재생 종료 시간 설정 유닛 (32) 은 VOB 의 마지막 VOBU 가 스트림 버퍼 (4) 에 저장되기 전에 각각의 VOBU 에서 재생 종료 시간 VOB_V_E_PTM 을 미리 설정한다.
스트림 버퍼 (4) 는 인코더 회로 (3) 로 생성된 데이터 스트림을 임시로 저장하기 위한 임시 저장 유닛이다. 본 실시형태에서, 스트림 버퍼 (4) 는 M 세그먼트로 분할된다. 데이터 스트림은 세그먼트 기초에 기초하여 저장 인터페이스 회로 (6) 로 전송되고, 기록 매체 (5) 상에 기록된다. 그러나, 세그먼트 크기는 저장 인터페이스 회로 (6) 와 기록 매체 (5) 로의 배선 유닛과 거의 같다.
또한, 하기 언급된 바와 같이 세그먼트 크기는 복수의 VOBU 를 저장하도록 설정되고, VOBU 의 각각의 팩의 정수배, 즉, 2,048 바이트의 정수배이다.
덧붙여 말하자면, 예를 들어, 데이터는 시스템 제어 회로 (2) 의 제어 하에서, 스트림 버퍼 (4) 로 기록되고, 스트림 버퍼 (4) 로부터 판독된다. 이는 거기에 한정되지 않는다. 버퍼 제어 유닛은 스트림 버퍼 (4) 에서 제공될 수도 있고, 버퍼 제어 유닛은 데이터를 기록/판독할 수도 있다.
시스템 제어 회로 (2) 는 데이터 기록 장치 (1) 의 다양한 동작을 제어한다. 스트림 버퍼 (4) 가 제 1 VOBU 를 저장한 후에, 시스템 제어 회로 (2) 는 VOBU 의 재생 또는 기록의 순서에 관련되는 K VOBU 가 저장된 것을 검출하고, 제 1 VOBU 에서 K VOBU 의 헤더 어드레스로서 위치 정보 (관련 정보) 를 설정한다. 시스템 제어 회로 (2) 는, 예를 들어, 메모리 또는 CPU 로 이루어지고, 메모리에 미리 저장된 프로그램에 기초하여 다양한 종류의 프로세싱을 수행한다.
도 1 에 도시된 바와 같이, 시스템 제어 회로 (2) 는 VOBU 카운터 (21), 세그먼트 카운터 (22), 세그먼트 검출 유닛 (23), 및 데이터 설정 유닛 (24) 을 포함한다. 예를 들어, VOBU 카운터 (21), 세그먼트 카운터 (22), 세그먼트 검출 유 닛 (23), 및 데이터 설정 유닛 (24) 의 프로세싱을 기술한 프로그램이 메모리에 저장되고, 메모리 상에서 수행된다. CPU 는 그 프로그램에 기초하여 프로세싱을 수행하고, 다른 하드웨어 구성요소와 협력하여 도 1 의 데이터 기록 장치를 제어한다.
VOBU 카운터 (21) 는 인코더 회로 (3) 로부터의 VOBU 생성 통지의 수, 즉, VOBU 의 수를 카운트한다. VOBU 카운터 (21) 의 카운트 값에 기초하여, 순방향 포인터 FWDI 를 설정하기 위해 필요한 VOBU 가 스트림 버퍼 (4) 에 저장되는지 여부가 판정된다. 즉, VOBU 카운터 (21) 는 VOBU 가 스트림 버퍼 (4) 에 저장되는 각각의 시간에 카운트 값을 갱신하고, 그 카운트 값에 기초하여 저장된 VOBU 의 수를 검출하기 위한 데이터 유닛 검출 유닛이다.
세그먼트 검출 유닛 (23) 은 스트림 버퍼 (4) 에서 세그먼트 메모리 점유를 모니터링한다. 또한, 데이터가 헤드에서 하나의 세그먼트 끝까지 완전히 저장될 때, 세그먼트 검출 유닛 (23) 은 그것을 전체 세그먼트로서 검출한다. 예를 들어, 세그먼트에 저장된 데이터의 양이 세그먼트 크기에 도달하였을 때, 세그먼트 검출 유닛 (23) 은 그것을 전체 세그먼트로서 결정한다. 덧붙여 말하자면, 본 실시예에서 전체 세그먼트가 수를 모니터링하는 시스템 제어 회로 (2) 에 의해 검출된다. 그러나, 본 발명은 거기에 한정되지 않고, 전체 세그먼트는 스트림 버퍼 (4) 내부에서 검출될 수도 있고, 시스템 제어 회로 (2) 는 검출을 통지받을 수도 있다.
세그먼트 카운터 (22) 는 세그먼트 검출 유닛 (23) 에 의해 검출된 전체 세 그먼트의 카운트 값을 래치 (latch) 시킨다. 세그먼트 카운터 (22) 에 의해 래치된 카운트 값에 기초하여, 순방향 포인터 FWDI 를 설정하기 위해 필요한 ,VOBU 가 소정의 세그먼트에 저장되었는지 여부가 판정된다.
데이터 설정 유닛 (24) 은 저장 인터페이스 회로 (6) 에 출력하기 위해 필요한 데이터를 스트림 버퍼 (4) 에 저장되는 데이터 스트림을 위해 설정한다. 데이터 설정 유닛 (24) 은 순방향 포인터 FWDI 를 스트림 버퍼 (4) 의 각각의 세그먼트에 저장된 VOBU 의 NV_PCK 를 위해 설정한다. 상기 언급된 바와 같이, 순방향 포인터 FWDI 는 나중에 재생될 VOBU 의 헤더 어드레스이고, VOBU 를 재생하는 순서에 관련되는 위치 정보이다. 세그먼트의 VOBU 에서 순방향 포인터 FWDI 를 설정한 후에, 세그먼트의 데이터 스트림은 저장 인터페이스 회로 (6) 로 전송된다.
기록 매체 (5) 는 DVD-R, DVD-RW, 또는 DVD-RAM 과 같은 DVD 이다. 기록 매체 (5) 는 DVD-Video 표준에 따른 데이터를 기록하기 위해서만 필요하고, 따라서 기록 매체는 하드 디스크일 수도 있다.
저장 인터페이스 회로 (6) 는 스트림 버퍼 (4) 로부터 데이터 스트림을 수신하고, 그 데이터 스트림을 기록 매체 (5) 에 쓴다. 저장 인터페이스 회로 (6) 는 세그먼트에 기초하여 스트림 버퍼 (4) 로부터 VOBU 를 포함하는 데이터 스트림을 입력, 데이터 스트림을 기록 매체 상에 기록하기 위해 입력 데이터 스트림을 참조하여 생성된 데이터를 기록, 및/또는 판독 데이터를 재생하기 위해 기록 매체로부터 기록된 데이터를 판독하기 위한, 기록/재생 유닛이다. 저장 인터페이스 회로 (6) 는 스트림 버퍼 (4) 의 세그먼트에 기초하여 데이터 스트림을 기록하거나 재생한다. 예를 들어, 저장 인터페이스 회로 (6) 는 광학 헤드 또는 스핀들 모터 (spindle motor) 를 (미도시) 포함한다. 스핀들 모터는 기록 매체 (5) 를 회전시키기 위해 사용되고, 레이저광은 기록 매체 (5) 의 소정의 위치에 가해지고, 광학 헤드를 사용하여 데이터 스트림을 기록한다.
도 2 는 본 실시형태에 따른 스트림 버퍼의 구조를 도시한다. 본 실시예에서, 스트림 버퍼 (4) 는 4 개의 세그먼트로 이루어진다. 인코더 회로 (3) 에 의해 생성된 VOBU 는 세그먼트 #1 내지 #4 를 위해 저장된다. 각각의 세그먼트는 복수의 VOBU 를 포함한다. 예시된 실시예에서, 설명의 편의를 위해, 각각의 세그먼트는 3 개의 VOBU 를 포함한다.
스트림 버퍼 (4) 는 링-버퍼 구조를 구비하고, VOBU 는 세그먼트 #4 에 이어 세그먼트 #1 로부터 재기록되고, 저장된다. 데이터 스트림이 세그먼트 #1 에서 세그먼트 #4 로의 순서로 저장된 후에, 스트림 버퍼 (4) 는 세그먼트 #1 에 저장된 데이터 스트림을 출력하고, 새로운 데이터 스트림은 세그먼트 #1 에 저장된 데이터 스트림을 갱신하기 위해 사용된다. 데이터 스트림이 순차적으로 출력되는 세그먼트 #1 은 새로운 데이터 스트림으로 갱신된다. 본 실시형태에서, 데이터 스트림은 세그먼트에 기초하여 저장 인터페이스 회로 (6) 에 전송되어 기록되고, 따라서, 인코더 회로 (3) 에 의해 생성된 VOBU 를 지연 없이 기록 매체 (5) 상에 부드럽게 기록하기 위해서, 세그먼트가 새로운 VOBU 를 저장하기 위해 재사용되기 전에, 즉, 다른 세그먼트의 저장 동안, 세그먼트의 데이터 스트림을 저장 인터페이스 회로 (6) 로 출력하는 것이 필요하다.
그 다음, 세그먼트의 데이터 스트림을 전송하기 위해, 세그먼트의 모든 VOBU 의 NV_PCK 에 대해 순방향 포인터 FWDI 를 보충하는 것이 필요하다. 본 실시예에서, NV_PCK 에 대해 설정되는 순방향 포인터 FWDI 의 수는 6 으로 설정된다. 따라서, 세그먼트 #2 및 #3 의 각각의 VOBU #4 내지 #9 각각의 헤더 어드레스는 세그먼트 #1 의 끝에서 VOBU #3 의 NV_PCK 에서 VOBU_SRI 의 순방향 포인터 FWDI #1 내지 #6 에 대해 설정된다. 이 때, VOBU #4 의 헤더 어드레스는 순방향 포인터 FWDI #1 에 대해 설정된다. 그 다음, VOBU #5 는 순방향 포인터 FWDI #2 에 대해 설정되고, VOBU 는 순방향 포인터 FWDI #6 까지에 대해서 설정된다.
즉, 세그먼트 #1 에 대해 그 다음 VOBU 를 기록하기 위한 조건은 세그먼트 #1 의 각각의 NV_PCK 에 대한 순방향 포인터 FWDI 만큼의 VOBU 가 세그먼트 #1 외의 세그먼트에 저장되는 것이다. 본 실시예에서, 세그먼트 #1 의 각각의 NV_PCK 에 의해 지정된 6 이상의 VOBU 가 세그먼트 #2 및 #3 에 저장된다. 세그먼트 #2, #3, 및 #4 에 대해서도 동일하다.
따라서, NV_PCK 에 대한 순방향 포인터 FWDI 의 수가 K (보충된 FWDI 의 수) 로 설정되고, 세그먼트 (세그먼트의 수는 총 세그먼트 수 - 2) 가 보충된 FWDI 의 수 K 이상인 VOBU 를 포함하거나 항상 보충된 FWDI 의 수 K 이상인 NV_PCK 를 포함한다면, 세그먼트의 각각의 NV_PCK 에 대해 보충하고 그 데이터를 저장 인터페이스 회로 (6) 에 출력하는 것이 가능하고, 따라서 스트림 버퍼는 결코 붕괴되지 않는다. 만약 (총 세그먼트 수 - 2) 가 (총 세그먼트 수 M - A) 에 의해 나타내어진다면, 다음의 표현이 만족된다.
(총 세그먼트 수 M - A) × (스트림 버퍼 용량/총 세그먼트 수 M)/K ≥ VOBU 당 인코딩량 (비트량) … [식 2]
기준수 = (총 세그먼트 수 M - A) 라면, 식 2 는 기준수 × (스트림 버퍼 용량/총 세그먼트 수 M)/K 로서 표현될 수 있다. 식 2 에서, (총 세그먼트 수 M - A) 는 보충된 FWDI 의 수 K 만큼의 VOBU 를 확보하기 위해 필요한 세그먼트의 수이다. 여기서, A 는 기준 세그먼트 수를 나타내고, 기준 세그먼트 수 A 는 1 이상의 정수 (A ≥ 1 및 총 세그먼트 수 M - A > 0) 이다. VOBU 당 인코딩량은 비디오 프레임의 수 N 과 비트 레이트에 기초하여 결정된다. 예를 들어, 비트 레이트가 4 Mbps 라면, VOBU 당 비디오 프레임의 수 N 은 15 이고, 프레임당 재생 시간은 1/29.97 (NTSC 시스템) 이며, VOBU 당 인코딩량 = 4 Mbps*15*1/29.97 = 약 2 Mbits 정도이다.
식 2 로부터 이해할 수 있듯이, 총 세그먼트 수 M 이 클수록, 총 세그먼트 수 M 과 기준 세그먼트 수 A 사이의 비율 (기준 세그먼트 수 A / 총 세그먼트 수 M), 즉, 총 세그먼트 수 M 에 대한 기준 세그먼트 수 A 의 비율은 더 작다. 따라서, VOBU 당 용량은 증가하고, 인코더 회로 (3) 는 더 높은 비트 레이트에서 데이터를 인코딩할 수 있다. 따라서, DVD 레코더의 각 재생 시간 모드를 지원하는 것이 가능하게 된다.
여기서, 식 2 의 특정 계산의 예가 설명된다. 그것의 예를 제공하기 위해 총 세그먼트 수 M 은 48 이고, 기준 세그먼트 수 A 는 2 이며, 스트림 버퍼 용량은 4 메가바이트이다. 보충된 FWDI 수 K 에 관해서는, DVD+VR 표준에 따라서, 순방향 포인터 FWDI6 까지 부합하는 것이 가능하고, 따라서, 보충된 FWDI 수 K 는 6 으로 설정된다. 이들 값을 대입하면, 식 2 의 왼 쪽에는 (48 - 2)*(4/48)/6 = 약 0.63 MB 가 주어진다. 또한, VOBU 당 NTSC 비디오 프레임 수 N 이 15 라면, VOBU 당 시스템 비트 레이트는 DVD 시스템 레이트의 상한값으로서 약 10.8 Mbps 정도이다. 따라서, 식 2 가 성립되고, 약 4 Mbytes 의 크기를 가지는 스트림 버퍼는 데이터 스트림을 부드럽게 기록할 수 있다.
덧붙여 말하자면, 기준 세그먼트 수 A 는 본 실시예에서 2 로 설정되지만, 식 2 가 성립할 수 있는 한, 예를 들어, 1 또는 그 이상으로 임의적으로 설정될 수도 있다. 수 A 는 데이터를 디스크에 쓰는 데 걸리는 지연을 고려하여 조절될 수도 있다.
그 다음, 본 실시형태의 데이터 기록 장치를 사용한 데이터 기록 방법이 설명된다. 도 3 의 플로우챠트는 데이터 기록 장치 (1) 로 데이터를 기록 매체 상에 기록하는 프로세싱을 도시한다. 이 프로세싱 (S301 내지 S304) 은 데이터 기록 장치 (1) 에서 DVD-Video 표준에 따른 데이터 포맷에서 입력 데이터를 기록 매체 (5) 에 쓰기하는 프로세싱이다.
우선, 인코더 회로 (3) 는 데이터 스트림을 생성한다 (S301). 예를 들어, 인코더 회로 (3) 의 인코딩 유닛 (31) 은 데이터 기록 장치 (1) 의 외부로부터 제공된 신호를 압축-인코딩하고, 재생 종료 시간 VOB_V_E_PTM 및 순방향 포인터 FWDI 가 설정되지 않은 VOBU 가 실시간으로 순차적으로 생성된다. 그 다음, 재생 종료 시간 설정 유닛 (32) 이 각각의 생성된 VOBU 에 대해 재생 종료 시간 VOB_V_E_PTM 을 설정하고, 이것을 스트림 버퍼 (4) 로 출력한다.
그 다음, 스트림 버퍼 (4) 는 생성된 데이터 스트림을 저장한다 (S302). 예를 들어, S301 단계에서 생성된 연속적인 VOBU 는 인코더 회로 (3) 로부터 바로, 또는 시스템 제어 회로 (2) 를 경유하여 스트림 버퍼 (4) 로 전송된다. 그 다음, 스트림 버퍼 (4) 는 전송된 VOBU 를 생성된 순서대로 저장한다. 이 때, 스트림 버퍼 (4) 는 VOBU 를 각각의 세그먼트에 순서대로 저장하고, 마지막 세그먼트에 VOBU 를 저장한 후에, VOBU 의 저장은 헤드 세그먼트에서부터 다시 시작된다.
그 다음, 시스템 제어 회로 (2) 는 데이터 스트림을 보충한다 (S303). 예를 들어, 시스템 제어 회로 (2) 는 S302 단계에서 저장된 각각의 VOBU 의 NV_PCK 에서 순방향 포인터 FWDI 를 보충한다. 하기 언급되는 것처럼, 시스템 제어 회로 (2) 는 VOBU 의 생성 또는 전체 세그먼트의 검출에 기초하여 순방향 포인터 FWDI 를 보충하고, 세그먼트의 데이터 스트림을 저장 인터페이스 회로 (6) 로 출력한다. 이 때, 시스템 제어 회로 (2) 는 세그먼트가 재사용되고, 데이터가 다시 쓰여지기 전에 순방향 포인터 FWDI 를 보충한다.
시스템 제어 회로 (2) 는 스트림 버퍼가 VOBU 를 저장하는 각각의 시간에 발행 (issue) 되는 저장 완성 통지를 참조하여 데이터 스트림이 세그먼트의 끝까지 저장되는 각각의 시간에서 전체 세그먼트 신호를 생성한다. 생성된 전체 세그먼트 신호의 수가 소정 값에 도달할 때, 스트림 버퍼 (4) 는 첫 번째로 저장된 VOBU 를 포함하는 세그먼트의 VOBU 를 세그먼트 밖으로 출력하고, 그 세그먼트에 새로운 데이터 스트림을 저장한다.
그 다음, 저장 인터페이스 회로 (6) 는 데이터 스트림을 기록 매체 (5) 로 기록한다 (S304). 예를 들어, S303 단계에서 보충된 데이터 스트림은 스트림 버퍼로부터 바로, 또는 시스템 제어 회로 (2) 를 경유하여 세그먼트에 기초하여 저장 인터페이스 회로 (6) 로 전송된다. 그 다음, 저장 인터페이스 회로 (6) 는 세그먼트에 기초하여 전송된 데이터 스트림을 기록 매체 (5) 상에 기록한다. 이 때, 기록 매체 (5) 에 데이터를 부드럽게 기록하기 위해, 세그먼트 데이터를 기록 매체 (5) 에 기록하는 속도를 세그먼트 데이터를 스트림 버퍼 (4) 로부터 전송하는 속도보다 훨씬 더 높게 설정하는 것이 바람직하다.
다음 도 4 의 플로우챠트에 대해서 언급하면, 도 3 의 S303 단계에서의 데이터 스트림을 보충하는 프로세싱이 상세히 설명된다. 상기 설명된 것처럼, 이 데이터 스트림을 보충하는 프로세싱 (S401 내지 S414) 은 시스템 제어 회로 (2) 에서 수행된다. 예를 들어, 단계 S301 및 S302 에서의 데이터 스트림 생성 또는 저장에 병행하여, 시스템 제어 회로 (2) 는 VOBU 의 생성, 전체 세그먼트의 검출, VOB 생성의 완성, 및 데이터 스트림 생성의 완성과 같은 이벤트를 모니터링하고, 이벤트의 발생에 기초하여 다음 프로세싱을 수행한다. 덧붙여 말하자면, 프로세싱의 수행에 앞서, 각각의 데이터는 초기화되고, VOBU 또는 전체 세그먼트의 카운트 값은 리셋된다.
우선, 시스템 제어 회로 (2) 는 VOBU 생성이 통지되었는지 여부를 판정한다 (S401). 예를 들어, VOBU 카운터 (21) 는 인코더 회로 (3) 로부터의 VOBU 생성의 통지를 모니터링하고, VOBU 생성 통지가 수신된다.
VOBU 생성 통지가 S401 단계에서 전송된 것으로 판정되면, 시스템 제어 회로 (2) 는 VOBU 정보를 수신하고 VOBU 카운트 값에 1 을 더한다 (S402). 예를 들어, VOBU 카운터 (21) 가 인코더 회로 (3) 로부터 VOBU 생성 통지를 수신하는 경우, 카운터는 VOBU 정보로서 VOBU 의 팩의 수를 수신한다. 그 다음, VOBU 카운터 (21) 는 VOBU 카운터 값을 증가시킨다. VOBU 카운트 값은, 예를 들어, 스트림 버퍼 (4) 의 모든 VOBU 의 카운트 값 또는 각각의 세그먼트의 VOBU 의 카운터 값이다.
S401 단계에서, 또는 S402 단계 후에, VOBU 생성이 통지된 것이 판정된다면, 시스템 제어 회로 (2) 는 전체 세그먼트가 검출되었는지를 판정한다 (S403). 예를 들어, 세그먼트 검출 유닛 (23) 은 스트림 버퍼 (4) 의 각각의 세그먼트의 저장 상태 (저장 용량) 를 모니터링하고, 데이터 스트림이 각각의 세그먼트의 헤드에서 끝까지 완전히 저장되었는지 (세그먼트 용량이 모두 사용되었는지) 를 판정한다.
S403 단계에서, 전체 세그먼트가 검출되었다고 판정되면, 시스템 제어 회로 (2) 는 전체 세그먼트 카운트 값에 1 을 더한다 (S404). 예를 들어, 세그먼트 검출 유닛 (23) 이 전체 세그먼트를 검출한다면, 데이터 설정 유닛 (24) 은 전체 세그먼트의 카운트 값을 증가시킨다.
S403 단계에서, 또는 S404 단계 후에, 전체 세그먼트가 검출되지 않았다고 판정된다면, 시스템 제어 회로 (2) 는 VOBU 카운트 값이 보충된 FWDI 수 K 이상인지를 판정한다 (S405). 예를 들어, VOBU 카운터 (21) 는 VOBU 카운트 값을 참 조하여 카운트 값이 상기 식 2 의 보충된 FWDI 수 K 이상인지, 즉, 타겟 VOBU 를 구성하는 각각의 네비게이션 팩의 각각의 순방향 포인터에 필요한 VOBU 가 스트림 버퍼 (4) 에 저장되었는지를 판정한다.
S405 단계에서 VOBU 카운트 값이 보충된 FWDI 수 K 이상이라고 판정되면, 시스템 제어 회로 (2) 는 전체 세그먼트 카운트 값이 (총 세그먼트 수 M - 기준 세그먼트 수 A) 보다 큰지를 판정한다 (S406). 예를 들어, 세그먼트 카운터 (22) 가 전체 세그먼트 카운트 값을 참조하고, 그 카운트 값이 상기 식 2 의 (총 세그먼트 수 M - 기준 세그먼트 수 A) 보다 큰지, 즉, 데이터 스트림이 (총 세그먼트 수 M - 기준 세그먼트 수 A) 의 세그먼트까지 저장되었는지를 판정한다. S406 단계에서 전체 세그먼트 카운트 값이 (총 세그먼트 수 M - 기준 세그먼트 수 A) 보다 크지 않다면, 시스템 제어 회로 (2) 는 S401 단계의 프로세싱과 다음의 프로세싱을 다시 수행하고, 데이터 스트림이 (총 세그먼트 수 M - 기준 세그먼트 수 A) 의 세그먼트까지 저장될 때까지 반복한다. 덧붙여 말하자면, 데이터 스트림이 (총 세그먼트 수 M - 기준 세그먼트 수 A) 의 세그먼트에 도달하기 전에 데이터 스트림을 기록하는 경우에, S406 단계의 프로세싱은 생략될 수도 있다.
S406 단계에서, 전체 세그먼트 카운트 수가 (총 세그먼트 수 M - 기준 세그먼트 수 A) 보다 크다고 판정되면, 시스템 제어 회로 (2) 는 세그먼트 #n 에서 α NV_PCK 프로세싱을 수행한다 (S407). 예를 들어, 데이터 설정 유닛 (24) 이 출력될 세그먼트 (#n) 을 선택한다. 선택되는 세그먼트는 이전 세그먼트에 연속되는 다음 세그먼트이다. 그 다음, 선택된 세그먼트의 VOBU 카운트 값 (α) 이 카운트 값만큼의 VOBU 상의 NV_PCK 프로세싱을 수행하기 위해 참조된다. 즉, 각각의 VOBU 의 NV_PCK 에서, 현재 VOBU 보다 보충된 FWDI 수 K 만큼 앞의 VOBU 의 헤더 어드레스가 순방향 포인터 FWDI 에 대해 설정된다. 시스템 제어 회로 (2) 의 데이터 설정 유닛 (24) 은, 데이터 스트림이 총 세그먼트 수 M 보다 작은 기준수 (= 총 세그먼트 수 M - 기준 세그먼트 수 A) 의 세그먼트에 저장된 후에 첫 번째로 저장된 VOBU 의 K 헤드 어드레스를 설정한다.
그 다음, 시스템 제어 회로 (2) 는 세그먼트 #n 을 기록 매체로 전송한다 (S408). 예를 들어, 데이터 설정 유닛 (24) 으로 보충되고 선택된 세그먼트 데이터는 저장 인터페이스 회로 (6) 로 전송된다.
그 다음, 시스템 제어 회로 (2) 는 VOBU 카운트 값으로부터 α 를 뺀다 (S409). 예를 들어, VOBU 카운터 (21) 는 스트림 버퍼 (4) 의 총 VOBU 카운트 값으로부터 출력 세그먼트의 VOBU 의 수, 즉, S407 단계에서 프로세싱된 VOBU (α) 의 수를 빼고, 출력 세그먼트의 VOBU 카운트 값을 리셋한다.
그 다음, 시스템 제어 회로 (2) 는 전체 세그먼트 카운트 값으로부터 1 을 뺀다 (S410). 예를 들어, 세그먼트 카운터 (22) 는 출력 세그먼트의 수를 차감, 즉, 전체 세그먼트 카운터 값을 감소시킨다. S410 단계 후에, 시스템 제어 회로 (2) 는 S401 단계의 프로세싱 및 다음의 프로세싱을 반복하여 다음 세그먼트를 출력한다.
반면, S405 단계에서 VOBU 카운트 값이 보충된 FWDI 수 K 보다 작다고 판정되면, 시스템 제어 회로 (2) 는 스트림 생성 완성이 통지되었는지를 판정한다 (S411). 예를 들어, 데이터 설정 유닛 (24) 은 인코더 회로 (3) 로부터의 스트림 생성 통지를 모니터링하고, 스트림 생성 통지가 수신될 수 있는지를 판정한다.
S411 단계에서, 스트림 생성 완성이 통지되었다는 것이 판정되면, 시스템 제어 회로 (2) 는 스트림 종료 프로세싱을 수행한다 (S412). 예를 들어, 데이터 설정 유닛 (24) 이 스트림 생성 통지를 수신하고, 그 다음, 스트림 종료 프로세싱으로서 VOBU 카운트 값을 참조한다. 만약, 출력되는 VOBU 가 있다면, 순방향 포인터 FWDI 가 나머지 VOBU 의 NV_PCK 에 대해 설정되고, VOBU 를 포함하는 세그먼트 데이터는 저장 인터페이스 회로 (6) 로 전송된다. S412 단계 후에, 데이터 스트림 보충 프로세싱이 완성된다.
또한, S411 단계에서, 스트림 생성 완성이 통지되지 않은 것이 판정되면, 시스템 제어 회로 (2) 는 VOB 생성 완성이 통지되었는지를 판정한다 (S413). 예를 들어, 데이터 설정 유닛 (24) 은 인코더 회로 (3) 로부터의 VOBU 생성 완성의 통지를 모니터링하고, VOBU 생성 완성 통지가 수신되었는지를 판정한다.
S413 단계에서, VOB 생성 완성이 통지되었다고 판정되면, 시스템 제어 회로 (2) 는 VOB 종결 프로세싱을 수행한다 (S414). 예를 들어, VOB 생성 완성 통지를 수신할 때, 데이터 설정 유닛 (24) 은 VOB 종결 프로세싱으로서 포인터를 통해 VOB 의 마지막 VOBU 가 다음의 VOBU 와 연결되는 것을 방지한다. 즉, 마지막 VOBU (FWDI NEXT) 에 의해 지정된 다음 VOBU 의 포인터가 제거된다.
S413 단계에서, 또는 S414 단계 후에, VOB 생성 완성이 통지되지 않는 것으로 판정되면, 시스템 제어 회로 (2) 는 S401 의 프로세싱과 이후의 프로세싱을 다 시 반복하고, 다음 세그먼트를 출력한다.
이제, 도 5a 내지 도 5e 의 구체적인 실시예에 관해 언급하면, 도 4 의 데이터 스트림에 대한 보충 프로세싱이 더욱 상세하게 설명된다. 도 5a 내지 도 5e 는 VOBU 가 스트림 버퍼 (4) 의 세그먼트 #1 내지 #4 에 순차적으로 저장되고, 세그먼트 #1 이 기록 매체 (5) 로 전송되는 것을 도시한다. 여기서, 상기 식 2 가 성립하기 위해서는, 기준 세그먼트 수 A 는 2, 보충된 FWDI 수 K 는 6, 그리고, 총 세그먼트 수 M 은 4 라고 가정된다.
우선 도 5a 에 관해 언급하면, VOBU #1 내지 #3 은 세그먼트 #1 에 저장된다. 인코더 회로 (3) 가 VOBU 를 생성할 때, VOBU 가 생성되는 각각의 시간 (도 5a 에서, VOBU 가 스트림 버퍼에 저장되는 각각의 시간) 에, 시스템 제어 회로 (2) 는 VOBU 생성의 통지를 받는다. VOB 생성 통지를 수신할 때, 시스템 제어 회로 (2) 는 VOB 카운트 값에 1 을 더한다 (S401 내지 S402). 그 다음, 데이터 스트림이 세그먼트 #1 의 끝까지 저장될 때 (본 실시예에서는, VOBU #3 의 모두가 저장될 때), 시스템 제어 회로 (2) 는 전체 세그먼트를 검출하고, 전체 세그먼트 카운트 값에 1 을 더한다 (S403 및 S404). 이 때, VOBU 카운트 값은 3 이고, 전체 세그먼트 카운트 값은 1 이며, 따라서 시스템 제어 회로 (2) 는 VOBU 카운트 값이 6 보다 작은지 (S405), 스트림 생성 완성이 통지되지 않았는지 (S411), 그리고 VOB 생성 완성이 통지되지 않았는지 (S413) 를 판정하고, 스트림 버퍼 (4) 의 저장 상태를 모니터링한다.
그 다음, 도 5b 에 도시된 바와 같이, VOBU #4 내지 #6 및 VOBU #7 의 일 부 분이 세그먼트 #2 에 저장된다. 상기와 유사하게, 시스템 제어 회로 (2) 는 VOBU 생성이 통지되는 각각의 시간에 VOBU 카운트 값에 1 을 더한다 (S401 및 S402). 그 다음, 데이터 스트림이 세그먼트 #2 의 끝에 저장된 후 (본 실시예에서, VOBU #7 의 일 부분까지 저장된 후), 시스템 제어 회로 (2) 는 전체 세그먼트를 검출하고, 전체 세그먼트 카운트 값에 1 을 더한다 (S403 및 S404). 이 때, VOBU 카운트 값은 6 이고, 전체 세그먼트 카운트 값은 2 이고, 따라서, 시스템 제어 회로 (2) 는 VOBU 카운트 값이 6 이상이고 (S405), 전체 세그먼트 카운트 값이 2 이하 (S406) 라고 판정하고, 그 다음, 스트림 버퍼의 저장 상태를 모니터링한다.
그 다음, 도 5c 에 도시된 바와 같이, VOBU #7 내지 #9 및 VOBU #10 의 일 부분은 세그먼트 #3 에 저장된다. 상기와 유사하게, 시스템 제어 회로 (2) 는 VOBU 생성이 통지되는 각각의 시간에 VOBU 카운트 값에 1 을 더한다 (S401 및 S402). 그 다음, 데이터 스트림이 세그먼트 #3 의 끝까지 저장된 후 (본 실시예에서, VOBU #10 의 NV_PCK 까지 저장될 때), 시스템 제어 회로 (2) 는 전체 세그먼트를 검출하고, 전체 세그먼트 카운트 값에 1 을 더한다 (S403 및 S404). 이 때, VOBU 카운트 값은 9 이고, 전체 세그먼트 카운트 값은 3 이며, 따라서, 시스템 제어 회로 (2) 는 VOBU 카운트 값이 6 이상이고 (S405), 전체 세그먼트 카운트 값이 2 이상이라고 (S406) 판정하고, 그 다음 S407 단계의 프로세싱을 수행한다.
S407 단계에서, 도 5d 에 도시된 바와 같이, 시스템 제어 회로 (2) 는 NV_PCK 프로세싱을 수행한다. 시스템 제어 회로 (2) 는 세그먼트 #1 의 세 개 의 NV_PCK 에 대해 NV_PCK 프로세싱을 수행한다. 본 실시예에서, 각각의 NV_PCK 에서 순방향 포인터 FWDI #1 내지 #6 가 설정된다. VOBU #2 내지 #7 의 어드레스가 VOBU #1 의 순방향 포인터 FWDI #1 내지 #6 에 설정되고, VOBU #3 내지 #8 의 어드레스가 VOBU #2 의 순방향 포인터 FWDI #1 내지 #6 에 대해 설정된다. VOBU #4 내지 #9 의 어드레스가 VOBU #3 의 순방향 포인터 FWDI #1 내지 #6 에 대해 설정된다. 이 때, VOBU #10 및 #11 그리고 VOBU #2 의 일 부분이 세그먼트 #4 에 저장된다. 그 다음, 시스템 제어 회로 (2) 는 세그먼트 #1 을 저장 인터페이스 회로 (6) 에 전송하고, 기록 매체 상에 기록한다 (S408). 또한, 시스템 제어 회로 (2) 는 VOBU 카운트 값에서 3 을 빼고, 전체 세그먼트 카운트 값에서 1 을 뺀다 (S409 및 S410).
S408 단계 후에, 도 5e 에 도시된 바와 같이, 세그먼트 #1 의 데이터가 전송되고, 따라서, 세그먼트 #1 의 영역이 재사용될 수 있다. 또한, VOBU 는 순차적으로 저장된다. 세그먼트 #4 에서, VOBU #12 및 #13 이 저장된다.
상기 언급된 바와 같이, 본 실시형태에 따라, VOB 의 VOBU 수는 고정되고, 따라서, 재생 종료 시간 VOB_V_E_PTM 은 미리 특정될 수 있다. 따라서, 스트림 버퍼의 하나의 VOB 에서 데이터 스트림의 전부를 저장할 필요는 없다. 따라서, 버퍼 용량은 하나의 VOB 보다 더 작은 크기로 감소될 수 있고, 메모리가 절감될 수 있다.
또한, 본 실시형태에 따라, 스트림 버퍼는 세그먼트로 분할된다. 하나의 VOBU 상의 데이터에 대한 보충에 필요한 VOBU 는 하나 이상의 세그먼트에 저장되 고, 따라서 버퍼 용량은 시스템 비트 레이트와 같은 파라미터에 기초하여 설정될 수 있다. 따라서, 버퍼 용량은 상기 식 2 의 조건이 만족될 수 있는 범위 내에서 최소화될 수 있다. 예를 들어, 종래의 17 메가바이트 정도의 스트림 버퍼 용량에 비해, 본 실시형태는, 예를 들어, 4 Mbytes 의 용량을 보장한다. 따라서, 메모리는 상당히 절감될 수 있다. 본 실시형태의 메모리 크기는 종래 크기의 1/5 정도이고; 종래의 경우, 240 VOBU 가 스트림 버퍼에 저장된다. 그 결과로서, DVD 레코더와 같은 전체 데이터 기록 장치의 시스템 메모리는 절감될 수 있고, 또한, DVD 레코더의 비용을 절감할 수 있다.
다른 실시형태
덧붙여 말하자면, 상기 실시예에서, 인코더 회로 (3) 는 재생 종료 시간 VOB_V_E_PTM 을 설정하지만, 본 발명은 거기에 한정되지 않는다. VOBU 가 스트림 버퍼 (4) 에 저장된 후에, 시스템 제어 회로 (2) 는 종료 시간을 설정할 수도 있다. 재생 종료 시간 설정 유닛 (32) 이 시스템 제어 회로 (2) 에 제공되어 순방향 포인터 FWDI 의 설정 타이밍과 동일한 타이밍에서 재생 종료 시간 VOB_V_E_PTM 을 설정할 수도 있다 (S407). 또한, DVD-Video 표준의 경우, VOB 의 모든 FWDI 가 설정될 수 있다. 이 경우, 1 VOB 의 1 셀이 스트림 버퍼에 저장될 수도 있다.
또한, 상기 실시예에서, 인코딩 비트 레이트는 조절되지 않지만, CBR (Constant Bit Rate) 제어 또는 VBR (Variable Bit Rate) 제어는 더욱 영향을 받을 수도 있다. 따라서, 스트림 버퍼 용량은 더욱 감소될 수 있다.
또한, 상기의 실시예에서, 데이터 기록 장치 및 방법이 설명된다. 그러나, 본 발명은 데이터 기록에 한정되지 않고, 데이터 재생이 실행될 수도 있다. 예를 들어, 도 1 의 저장 인터페이스 회로 (6) 는 DVD-Video 표준에 따른 데이터 재생 장치로서 사용될 수도 있고, 데이터 스트림은 도 3 의 S304 단계에서 재생될 수도 있다.
본 발명은 상기의 실시형태에 한정되지 않고, 본 발명의 범위와 사상에서 벗어남이 없이 변형되고 변화될 수도 있음은 명백하다.
본 발명에 의하면, 스트림 버퍼의 메모리 크기를 절감하고 장치 비용을 절감하는 것이 가능한 데이터 기록/재생 장치, 방법, 및 프로그램을 제공하는 것이 가능하다.

Claims (15)

  1. 복수의 데이터 유닛을 저장하는 M (M 은 자연수) 세그먼트로 분할되는, 복수의 데이터 유닛을 포함하는 데이터 스트림을 저장하기 위한 임시 저장 유닛;
    데이터 스트림에 포함된 제 1 데이터 유닛이 상기 임시 저장 유닛에 저장된 후에, 제 1 데이터 유닛의 데이터를 재생 또는 기록하는 순서에 관련되는 K (K 는 자연수) 개의 데이터 유닛을 검출하고, 상기 제 1 데이터 유닛에 상기 K 개의 데이터 유닛에 대한 관련 정보를 설정하기 위한 제어 유닛; 및
    세그먼트에 기초하여 상기 임시 저장 유닛으로부터 설정된 상기 제 1 데이터 유닛을 포함하는 데이터 스트림을 수신, 상기 수신된 데이터 스트림을 참조하여 기록 데이터를 생성하여 상기 데이터를 기록 매체 상에 기록, 및/또는 상기 기록 매체로부터 기록된 상기 데이터를 판독하여 판독 데이터를 재생하는 기록/재생 유닛을 구비하고,
    상기 제어 유닛은, 상기 K 개의 데이터 유닛이 0 보다 크고 M 보다 작은 자연수인 기준수의 상기 세그먼트에 저장되는 경우에, 상기 제 1 데이터 유닛에 상기 K 개의 관련 정보를 설정하는, 데이터 기록/재생 장치.
  2. 제 1 항에 있어서,
    상기 임시 저장 유닛은, 데이터 스트림을 제 1 세그먼트로부터 M 번째 세그먼트까지 순서대로 저장한 다음, 상기 제 1 세그먼트에 저장된 상기 데이터 스트림을 출력하여 상기 제 1 세그먼트에 저장된 데이터 스트림을 새로운 데이터 스트림으로 갱신하고, 이어서, 상기 데이터 스트림이 새로운 데이터 스트림으로 출력되는 상기 세그먼트를 갱신하는, 데이터 기록/재생 장치.
  3. 제 1 항에 있어서,
    상기 제어 유닛은, 상기 임시 저장 유닛에 데이터 유닛이 저장되는 각각의 시간에 카운트 값을 갱신하고, 상기 카운트 값에 기초하여 저장된 데이터 유닛의 수를 검출하기 위한 데이터 유닛 검출 유닛을 포함하는, 데이터 기록/재생 장치.
  4. 제 1 항에 있어서,
    상기 제어 유닛은, 데이터 유닛이 상기 임시 저장 유닛에 저장되는 각각의 시간에 생성되는 저장 완성 통지를 참조하여 데이터 스트림이 세그먼트의 끝까지 저장되는 각각의 시간에 전체 세그먼트 신호를 생성하고,
    상기 임시 저장 유닛은, 생성된 전체 세그먼트 신호의 수가 소정 값에 도달할 때 세그먼트 밖으로 제 1 저장 데이터 유닛을 포함하는 세그먼트의 데이터 유닛을 출력하여 출력 세그먼트에 새로운 데이터 스트림을 저장하는, 데이터 기록/재생 장치.
  5. 삭제
  6. 제 1 항에 있어서,
    상기 제어 유닛은,
    데이터 스트림이 세그먼트의 끝까지 저장된 것을 검출하기 위한 세그먼트 검출 유닛;
    상기 세그먼트 검출 유닛에 의해 검출된 세그먼트의 수를 카운트하기 위한 세그먼트 카운터; 및
    상기 세그먼트 카운터의 카운트 값이 상기 기준수에 도달하고, 데이터 스트림이 K 개의 데이터 유닛에 저장될 때, K 개의 관련 정보를 설정하기 위한 데이터 설정 유닛을 포함하는, 데이터 기록/재생 장치.
  7. 제 1 항에 있어서,
    상기 임시 저장 유닛의 저장 용량은,
    하기 식 1
    상기 기준수·(임시 저장 유닛의 저장 용량/M)/K ≥ 데이터 유닛당 인코딩량 … [식 1]
    을 만족하도록 설정되는, 데이터 기록/재생 장치.
  8. 제 1 항에 있어서,
    상기 기록/재생 유닛은, 세그먼트에 기초하여 출력 데이터 스트림을 기록 또는 재생하는, 데이터 기록/재생 장치.
  9. 제 1 항에 있어서,
    상기 데이터 스트림의 데이터 구조는 복수의 레이어를 포함하는 계층 구조이고,
    데이터 유닛으로 이루어진 상부 레이어 데이터 블록은 소정의 수의 데이터 유닛을 포함하는, 데이터 기록/재생 장치.
  10. 제 9 항에 있어서,
    상부 레이어 데이터 블록의 끝에 배열된 데이터 유닛에 관련되는 종료 데이터는, 끝에 배열된 데이터 유닛의 저장 전에 상기 상부 레이어 데이터 블록의 데이터 유닛의 각각에 대해 미리 설정되는, 데이터 기록/재생 장치.
  11. 제 10 항에 있어서,
    상기 종료 데이터는 상기 상부 레이어 데이터 블록의 끝에 배열된 데이터 유닛에 대한 기록 또는 재생 종료 시간인, 데이터 기록/재생 장치.
  12. 입력되는 데이터 스트림을 기록 또는 재생하기 위한 데이터 기록/재생 방법으로서,
    복수의 데이터 유닛을 저장하는 M (M 은 자연수) 세그먼트로 분할되는 임시 저장 유닛에, 복수의 데이터 유닛을 포함하는 데이터 스트림을 저장하는 단계;
    상기 데이터 스트림에 포함된 제 1 데이터 유닛이 상기 임시 저장 유닛에 저장된 후에, 상기 제 1 데이터 유닛의 데이터의 재생 또는 기록의 순서에 관련되는 K (K 는 자연수) 개의 데이터 유닛을 검출하는 단계;
    상기 제 1 데이터 유닛의 상기 K 개의 데이터 유닛에 대한 관련 정보를 설정하는 단계; 및
    세그먼트에 기초하여 상기 임시 저장 유닛으로부터 상기 설정된 제 1 데이터 유닛을 포함하는 데이터 스트림을 수신, 상기 수신된 데이터 스트림을 참조하여 기록 데이터를 생성하여 상기 데이터를 기록 매체 상에 기록, 및/또는 상기 기록 매체로부터 상기 기록된 데이터를 판독하여 판독 데이터를 재생하는 단계를 포함하고,
    상기 관련 정보를 설정하는 단계는, 상기 K 개의 데이터 유닛이 0 보다 크고 M 보다 작은 자연수인 기준수의 상기 세그먼트에 저장되는 경우에, 상기 제 1 데이터 유닛에 상기 K 개의 관련 정보를 설정하는, 데이터 기록/재생 방법.
  13. 제 12 항에 있어서,
    상기 데이터 스트림을 저장하는 단계는,
    데이터 스트림을 제 1 세그먼트로부터 M 번째 세그먼트까지 순서대로 저장한 다음, 상기 제 1 세그먼트에 저장된 데이터 스트림을 출력하여 상기 제 1 세그먼트에 저장된 상기 데이터 스트림을 새로운 데이터 스트림으로 갱신하고, 이어서, 상기 데이터 스트림이 새로운 데이터 스트림으로 출력되는 상기 세그먼트를 갱신하는 단계를 포함하는, 데이터 기록/재생 방법.
  14. 제 12 항에 있어서,
    상기 K 개의 데이터 유닛을 검출하는 단계는, 상기 데이터 유닛이 상기 임시 저장 유닛에 저장되는 각각의 시간에 생성되는 저장 완성 통지를 참조하여 데이터 스트림이 세그먼트의 끝까지 저장되는 각각의 시간에 전체 세그먼트 신호를 생성하는 단계를 포함하고,
    상기 데이터 스트림을 저장하는 단계는, 생성된 전체 세그먼트 신호의 수가 소정 값에 도달할 때, 세그먼트 밖으로 제 1 저장 데이터 유닛을 포함하는 세그먼트의 데이터 유닛을 출력하여 출력 세그먼트에 새로운 데이터 스트림을 저장하는 단계를 포함하는, 데이터 기록/재생 방법.
  15. 삭제
KR1020060030754A 2005-04-04 2006-04-04 데이터 기록/재생 장치 및 방법 KR100787014B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2005-00107339 2005-04-04
JP2005107339A JP4312733B2 (ja) 2005-04-04 2005-04-04 データ記録再生装置及びデータ記録再生方法

Publications (2)

Publication Number Publication Date
KR20060106905A KR20060106905A (ko) 2006-10-12
KR100787014B1 true KR100787014B1 (ko) 2007-12-18

Family

ID=36581878

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060030754A KR100787014B1 (ko) 2005-04-04 2006-04-04 데이터 기록/재생 장치 및 방법

Country Status (6)

Country Link
US (1) US7813617B2 (ko)
EP (1) EP1710797A1 (ko)
JP (1) JP4312733B2 (ko)
KR (1) KR100787014B1 (ko)
CN (1) CN1855279A (ko)
TW (1) TWI316816B (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4925446B2 (ja) * 2006-05-18 2012-04-25 パナソニック株式会社 ストリームデータ記録方法及びストリームデータ記録装置
JP2008131547A (ja) * 2006-11-24 2008-06-05 Nec Electronics Corp フォーワード位置情報生成方法および装置ならびに記録方法および装置
JP4780024B2 (ja) * 2007-04-10 2011-09-28 船井電機株式会社 光ディスク装置
KR100815618B1 (ko) 2007-05-10 2008-03-24 주식회사 씬멀티미디어 이동통신 단말기에서 외부저장매체의 동영상 파일 재생장치및 방법
US20110075994A1 (en) * 2009-09-28 2011-03-31 Hsiao-Shu Hsiung System and Method for Video Storage and Retrieval
CN102148036B (zh) * 2010-02-09 2016-03-02 新奥特(北京)视频技术有限公司 一种赛事资料的保存方法和装置
KR101966064B1 (ko) 2012-09-06 2019-04-05 삼성전자주식회사 파이프라인 디코딩을 위한 비트스트림 처리 장치 및 이를 포함하는 멀티미디어 장치
US10841352B2 (en) 2012-11-27 2020-11-17 International Business Machines Corporation Non-chronological buffering of segments of a media file
US10114789B2 (en) 2015-01-08 2018-10-30 Samsung Electronics Co., Ltd. System on chip for packetizing multiple bytes and data processing system including the same

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001046792A1 (en) 1999-12-22 2001-06-28 Seagate Technology Llc Buffer management system for managing the transfer of data into and out of a buffer in a disc drive
US6279076B1 (en) * 1997-11-06 2001-08-21 Sony Corporation Reproducing apparatus and caching method

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5745643A (en) 1995-04-06 1998-04-28 Kabushiki Kaisha Toshiba System for and method of reproducing playback data appropriately by the use of attribute information on the playback data
US6018789A (en) * 1997-11-24 2000-01-25 Western Digital Corporation Disk drive with cache segment providing adaptively managed chunks
ID26867A (id) * 1998-11-16 2001-02-15 Koninkl Philips Electronics Nv Metode dan peranti untuk merekam informasi waktu sebenarnya
US6778265B1 (en) * 1999-11-10 2004-08-17 Thomson Licensing S.A. Copy feature for recordable DVD editing
JP2002056609A (ja) 2000-08-15 2002-02-22 Pioneer Electronic Corp 情報記録装置、情報記録方法及び記録制御プログラムが記録された情報記録媒体
JP3773805B2 (ja) * 2001-04-27 2006-05-10 Necエレクトロニクス株式会社 データストリーム生成方法とそのための装置
JP2004005853A (ja) * 2002-05-31 2004-01-08 Toshiba Corp ビデオデータ記録方法及びビデオデータ記録装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6279076B1 (en) * 1997-11-06 2001-08-21 Sony Corporation Reproducing apparatus and caching method
WO2001046792A1 (en) 1999-12-22 2001-06-28 Seagate Technology Llc Buffer management system for managing the transfer of data into and out of a buffer in a disc drive

Also Published As

Publication number Publication date
EP1710797A1 (en) 2006-10-11
TW200642462A (en) 2006-12-01
JP4312733B2 (ja) 2009-08-12
JP2006286136A (ja) 2006-10-19
KR20060106905A (ko) 2006-10-12
US7813617B2 (en) 2010-10-12
CN1855279A (zh) 2006-11-01
US20060222343A1 (en) 2006-10-05
TWI316816B (en) 2009-11-01

Similar Documents

Publication Publication Date Title
KR100787014B1 (ko) 데이터 기록/재생 장치 및 방법
US7024102B1 (en) Image data reproducing method, image data reproducing apparatus, image data recording method and image data recording apparatus
US7756394B1 (en) DVD navigation information for improved trick modes
US8155504B1 (en) Method of disaster recovery for re-writable disk media
US7099563B1 (en) Multichannel recording device and method
JP2002150683A (ja) 複数記録面対応の情報記録装置及び複数記録面対応の情報記録方法
JP2004118986A (ja) 情報記録装置および方法
US7672565B2 (en) Recording control apparatus and recording control method
JP2002152658A (ja) 情報即時記録装置及び情報即時記録方法
JP4925446B2 (ja) ストリームデータ記録方法及びストリームデータ記録装置
JP3986973B2 (ja) Avデータ記録方法、avデータ記録装置、データ記録媒体、及びプログラム
JP2003101927A (ja) フォーマット変換装置及びフォーマット変換方法
US20030223737A1 (en) Video data recording method and video data recording apparatus
US20030210899A1 (en) Replace processing method and replace processing apparatus
JP2003022604A (ja) デジタル記録再生装置
JPH11273314A (ja) デジタルデータ記録再生装置
JP3727913B2 (ja) 情報記録装置及び情報記録方法
JP4312783B2 (ja) Avデータ再生方法、avデータ再生装置、プログラム、並びに記録媒体
US7136576B1 (en) Method of and apparatus for recording search information simultaneously with encoding of data able to undergo special reproduction
KR20070105831A (ko) 정보 기록 장치와 비디오 카메라
JP2001076462A (ja) 情報記録媒体及び情報記録再生装置
CN101180681B (zh) 在记录介质上记录导航信息的方法
JP2008016130A (ja) 記録装置、記録方法、及びプログラム
JP2005328176A (ja) 映像記録再生装置
JP2005108316A (ja) 情報記録装置及び情報記録方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Publication of correction
FPAY Annual fee payment

Payment date: 20111118

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20121121

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee