KR101066807B1 - Data recording/reproduction for write-once discs - Google Patents

Data recording/reproduction for write-once discs Download PDF

Info

Publication number
KR101066807B1
KR101066807B1 KR1020067023666A KR20067023666A KR101066807B1 KR 101066807 B1 KR101066807 B1 KR 101066807B1 KR 1020067023666 A KR1020067023666 A KR 1020067023666A KR 20067023666 A KR20067023666 A KR 20067023666A KR 101066807 B1 KR101066807 B1 KR 101066807B1
Authority
KR
South Korea
Prior art keywords
data
file
metadata
track
write
Prior art date
Application number
KR1020067023666A
Other languages
Korean (ko)
Other versions
KR20070012822A (en
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 KR20070012822A publication Critical patent/KR20070012822A/en
Application granted granted Critical
Publication of KR101066807B1 publication Critical patent/KR101066807B1/en

Links

Images

Classifications

    • 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/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/036Insert-editing
    • 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/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • 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
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • 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/32Indexing; 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 separate auxiliary tracks of the same or an auxiliary record carrier
    • 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/32Indexing; 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 separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • 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
    • G11B2020/10898Overwriting or replacing recorded data
    • 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
    • G11B2020/10898Overwriting or replacing recorded data
    • G11B2020/10907Overwriting or replacing recorded data using pseudo-overwriting, i.e. virtually or logically overwriting data on WORM media by remapping recorded blocks to alternate areas
    • 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/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B2020/1264Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting concerns a specific kind of data
    • G11B2020/1288Formatting by padding empty spaces with dummy data, e.g. writing zeroes or random data when de-icing optical discs
    • 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/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B2020/1873Temporary defect structures for write-once discs, e.g. TDDS, TDMA or TDFL
    • 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/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1883Methods for assignment of alternate areas for defective areas
    • G11B2020/1893Methods for assignment of alternate areas for defective areas using linear replacement to relocate data from a defective block to a non-contiguous spare area, e.g. with a secondary defect list [SDL]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • 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/21Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
    • G11B2220/215Recordable discs
    • G11B2220/218Write-once discs
    • 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/2541Blu-ray discs; Blue laser DVR discs

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

일회-기록형 디스크를 위한 VAT 대신에 메타데이터 파티션을 사용하기 위한 파일 시스템이 인에이블되며, 이 파일 시스템은 의사-덮어쓰기 방법에 의해서, 복수의 트랙 특히, 메타데이터 및 파일 데이터를 위한 복수의 트랙들이 제공된다. 본 발명을 의사-덮어쓰기 매체를 지원하는 구동 장치에 적용할 때, 파일 시스템은 추가하는 데이터로부터 덮어쓰기 위한 데이터를 구분한다(S1701). 데이터가 새롭게 논리적 섹터에 기록될 때, 구동 장치는 논리적 섹터가 대응하는 물리적 섹터에 데이터를 기록한다(S1704). 덮어쓰여지는 데이터가 논리적 섹터에 저장된 데이터일 때, 데이터는 볼륨 공간 내의 다른 기록되지 않은 물리적 섹터에 기록되며(S1704), 재맵핑 정보가 기록된다(S1705). 재맵핑 정보는 물리적 섹터의 원래의 어드레스, 및 데이터가 기록되는 물리적 섹터의 재맵핑 어드레스를 지정한다. A file system for using metadata partitions instead of a VAT for write-once discs is enabled, which is enabled by a pseudo-overwrite method, which allows for multiple tracks, in particular for metadata and file data. Tracks are provided. When the present invention is applied to a drive device supporting a pseudo-overwrite medium, the file system distinguishes data for overwriting from data to be added (S1701). When data is newly recorded in the logical sector, the driving apparatus writes the data in the physical sector to which the logical sector corresponds (S1704). When the data to be overwritten is data stored in the logical sector, the data is recorded in another unrecorded physical sector in the volume space (S1704), and remapping information is recorded (S1705). The remapping information specifies the original address of the physical sector and the remapping address of the physical sector in which data is recorded.

일회-기록형 디스크, VAT, 메타데이터, 파티션, 트랙, 데이터, 볼륨 공간, 재맵핑 정보, 물리적 섹터, 논리적 섹터Write-once discs, VAT, metadata, partitions, tracks, data, volume space, remapping information, physical sectors, logical sectors

Description

일회-기록형 디스크용 데이터 기록/재생{Data recording/reproduction for write-once discs}Data recording / reproduction for write-once discs}

본 발명은 논리적 덮어쓰기 가능한 메카니즘(logical overwritable mechanism) 및 재생 방법 및 장치를 이용한 일회-기록형 디스크 기록 방법 및 장치와, 기록 장치 및/또는 재생 장치에 사용하기 위한 반도체 집적 회로에 관한 것이다. The present invention relates to a write-once-type disc recording method and apparatus using a logical overwritable mechanism and reproducing method and apparatus, and a semiconductor integrated circuit for use in the recording apparatus and / or reproducing apparatus.

광 디스크용 파일 시스템은 OSTA(Optical Storage Technology Association) 발행 UDF(Univerals Disk Format®) 규격을 개발하기 위한 여러 활동을 통해서 진보를 이루었다. The file system for optical disks has made progress through several activities to develop the Universal Storage Technology Association (OSTA) published Universal Disk Format® (UDF) specification.

일회-기록형 디스크에 있어서, 기록 방법은 VAT(Virtual Allocation Table)을 이용하여 멀티-세션 기록으로부터 파일별(file-by-file) 기록으로 개선되었다. In the write once type disc, the recording method has been improved from multi-session recording to file-by-file recording using a virtual allocation table (VAT).

한편, 재기록 가능한 디스크에서는, 볼륨 및 파일 구조가, 국제 표준인 ECMA 167에 규정된 비-순차 기록을 이용하는 구조로부터, UDF 버전 2.5(이하 UDF 2.5라 한다)에 지정된 메타데이터 파티션을 이용하는 구조로 개선되었다. 메타데이터 파티션을 이용하는데 따른 장점에는 엔트리/디렉토리와 같은 메타데이터를 검색하는데 있어서 성능 개선, 및 메타데이터 손상에 대한 내구성의 증가가 포함된다.On the other hand, in a rewritable disc, the volume and file structure are improved from a structure using non-sequential recording defined in the international standard ECMA 167 to a structure using a metadata partition specified in UDF version 2.5 (hereinafter referred to as UDF 2.5). It became. Advantages of using metadata partitions include improved performance in retrieving metadata such as entries / directories, and increased durability against metadata corruption.

그러나, 메타데이터 파티션은 일회-기록형 디스크 상의 데이터 첨부 용도로는 사용될 수 없다. 이것은 VAT와 함께 메타데이터 파티션을 사용하는 것이 UDF 2.5에서 허용되지 않기 때문인데, 특히 이러한 조합의 실행이 곤란한 것으로 인해서 어렵기 때문이다. However, metadata partitions cannot be used for data attachment on write-once discs. This is because using metadata partitions with VAT is not allowed in UDF 2.5, especially because of the difficulty in implementing this combination.

전형적으로, 일회-기록형 디스크를 위한 새로운 기록 방법을 개발하는 것은 어렵기도 하다. 이는 일회-기록형 디스크의 물리적 특징이 한번 기록되는 데이터가 덮어쓰여지는 것을 어렵게 하기 때문이다. 새로운 기록 방법이 컴퓨터 구조와 호환될 필요가 있으며 구동 장치에서 실행될 필요가 있으며 또한 소비자 가전 제품을 사용 가능한 자원을 고려해볼 때, 새로운 기록 방법에 대한 연구가 여러 방면에서 수행되었다.Typically, developing new recording methods for write-once discs is also difficult. This is because the physical characteristics of the write-once disc make it difficult to overwrite the data written once. Considering the new recording method needs to be compatible with the computer architecture, the drive device needs to be implemented, and the resources available to consumer electronics, research on the new recording method has been carried out in many ways.

본 발명은 전술된 문제에 비추어서 이루어진 것으로서 메타데이터 파티션의 장점을 일회-기록형 디스크 상의 데이터 기록 용도에 제공하는 목적을 포함한다. SUMMARY OF THE INVENTION The present invention has been made in view of the above problem and includes the object of providing the advantages of metadata partitioning to data recording applications on a write-once disc.

의사-덮어쓰기 기능을 갖는 구동 장치가 본 발명에 따른 복수의 트랙들을 포함하는 일회-기록형 디스크에 데이터를 기록하도록 명령하는 방법은, (a) 적어도 기록될 파일에 대한 데이터를 지정하는 기록 요청을 수신하는 단계, (b) 상기 구동 장치로 하여금 메타데이터 파일의 파일 엔트리를 판독하도록 명령하여 상기 메타데이터의 파일 엔트리를 획득하도록 하되, 상기 메타데이터는 상기 일회-기록형 디스크의 한 위치로부터 상기 파일을 관리하는 단계, (c) 상기 복수의 트랙들 각각의 위치를 표시하는 트랙 정보를 획득하는 단계, (d) 상기 메타데이터의 파일 엔트리 및 트랙 정보에 기초하여, 메타데이터가 다음에 기록되는 상기 복수의 트랙들로부터 하나의 트랙을 결정하는 단계, (e) 상기 구동 장치가 상기 일회-기록형 디스크의 위치로부터 상기 메타데이터를 판독하도록 명령하여, 상기 메타데이터를 획득하는 단계, (f) 데이터가 단계(d)에서 결정된 트랙이 아닌 트랙에서 다음으로 기록되는 위치를 표시하는 다음의 기록 가능한 어드레스를 획득하며, 상기 트랙은 복수의 트랙들로부터 선택되는 단계, (g) 상기 기록 요청에 의해서 지정된 데이터의 기록을 반영하기 위해서 상기 메타데이터를 업데이트하는 단계, (h) 상기 구동 장치에 일회-기록형 디스크 내의 기록 가능한 어드레스에 의해서 표시되는 위치에 상기 기록 요청에 의해서 지정되는 데이터를 기록하도록 명령하는 단계, 및 (i) 상기 구동 장치에, 상기 일회-기록형 디스크에 상기 메타데이터가 단계(e)에서 판독되는 위치로 상기 업데이트되는 메타데이터 중 적어도 일부를 기록하도록 명령하는 단계를 포함한다.A method for instructing a drive device having a pseudo-overwrite function to write data to a write-once disc comprising a plurality of tracks according to the present invention comprises: (a) a write request specifying at least data for a file to be recorded; (B) instructing the driving device to read a file entry of a metadata file to obtain a file entry of the metadata, wherein the metadata is generated from the location of the write once disc. Managing a file, (c) obtaining track information indicative of the location of each of the plurality of tracks, and (d) based on the file entry and track information of the metadata, where metadata is next recorded Determining one track from the plurality of tracks; (e) the drive device from the position of the write once disc to the meta Instructing data to be read, obtaining the metadata, (f) obtaining a next recordable address indicating a position where data is next recorded in a track other than the track determined in step (d), wherein the track Is selected from a plurality of tracks, (g) updating the metadata to reflect the recording of the data specified by the write request, (h) a recordable address in a write once disc to the drive device; Instructing to record the data specified by the write request at a location indicated by (i) to the drive device, to the position where the metadata is read in step (e) on the write-once disc. Instructing to record at least a portion of the updated metadata.

본 발명의 일 실시예에서, 상기 방법은, 단계(d)에서 결정된 상기 트랙 내의 다음의 기록 가능한 어드레스가 유효한지 여부를 결정하는 단계, 및 단계(d)에서 결정된 트랙 내의 다음의 기록 가능한 어드레스가 유효하지 않음이 결정될 때, 상기 구동 장치에, 메타데이터가 다음에 기록되는 제 1 트랙 및 데이터가 다음에 기록되는 제 2 트랙을 할당하도록 명령하며, 단계(f)에서 획득된 다음의 기록 가능한 어드레스를 제 2 트랙 내의 다음의 기록 가능한 어드레스로 업데이트하는 단계를 더 포함한다. In one embodiment of the invention, the method further comprises the steps of: determining whether the next recordable address in the track determined in step (d) is valid, and the next recordable address in the track determined in step (d) is When it is determined that it is not valid, the driving device is instructed to allocate a first track in which metadata is next recorded and a second track in which data is next recorded, and the next recordable address obtained in step (f). Is updated to the next recordable address in the second track.

본 발명의 일 실시예에서, 상기 제 1 및 제 2 트랙은 단계(f)에서 선택된 트랙 내에 할당된다.In one embodiment of the invention, the first and second tracks are assigned within the track selected in step (f).

본 발명의 일 실시예에서, 상기 방법은, 상기 구동 장치가, 상기 제 1 트랙 내의 다음의 기록 가능한 어드레스에 의해서 표시되는 위치의 업데이트된 메타데이터의 적어도 일부를 기록하도록 명령하며, 상기 제 1 트랙이 할당되는지 그리고 상기 업데이트된 메타데이터의 적어도 일부가 상기 제 1 트랙에 기록되는지 여부를 결정하며, 상기 제 1 트랙이 할당되며 상기 업데이트된 메타데이터의 적어도 일부가 상기 제 1 트랙에 기록된다고 결정될 때, 상기 업데이트된 메타데이터의 적어도 일부의 기록을 반영하도록 상기 메타데이터의 엔트리를 업데이트하며, 상기 구동 장치가, 상기 메타데이터 파일의 파일 엔트리가 상기 일회-기록형 디스크에서 단계(b)에서 판독되는 위치에서 메타데이터 파일의 업데이트된 파일 엔트리를 기록하도록 명령하는 단계를 더 포함한다.In one embodiment of the invention, the method instructs the drive device to record at least a portion of the updated metadata of the position indicated by the next recordable address in the first track, wherein the first track Is assigned and at least a portion of the updated metadata is recorded in the first track, and when it is determined that the first track is allocated and at least a portion of the updated metadata is recorded in the first track. Update the entry of metadata to reflect a record of at least a portion of the updated metadata, wherein the drive device is configured to read a file entry of the metadata file in step (b) on the write-once disc. Instructing to record the updated file entry of the metadata file at the location. It includes more.

의사-덮어쓰기 기능을 갖는 구동 장치가, 복수의 트랙들을 포함하는 일회-기록형 디스크에 데이터를 기록하도록 명령하는 시스템 제어기에 있어서, 상기 시스템 제어기는 상기 구동 장치를 제어하기 위한 제어기를 포함하며, 상기 제어기는, (a) 적어도 기록될 파일에 대한 데이터를 지정하는 기록 요청을 수신하는 단계, (b) 상기 구동 장치로 하여금 메타데이터 파일의 파일 엔트리를 판독하도록 명령하여 상기 메타데이터의 파일 엔트리를 획득하도록 하되, 상기 메타데이터는 상기 일회-기록형 디스크의 한 위치로부터 상기 파일을 관리하는 단계, (c) 상기 복수의 트랙들 각각의 위치를 표시하는 트랙 정보를 획득하는 단계, (d) 상기 메타데이터의 파일 엔트리 및 트랙 정보에 기초하여, 메타데이터가 다음에 기록되는 상기 복수의 트랙들로부터 하나의 트랙을 결정하는 단계, (e) 상기 구동 장치가 상기 일회-기록형 디스크의 위치로부터 상기 메타데이터를 판독하도록 명령하여, 상기 메타데이터를 획득하는 단계, (f) 데이터가 단계(d)에서 결정된 트랙이 아닌 트랙에서 다음으로 기록되는 위치를 표시하는 다음의 기록 가능한 어드레스를 획득하며, 상기 트랙은 복수의 트랙들로부터 선택되는 단계, (g) 상기 기록 요청에 의해서 지정된 데이터의 기록을 반영하기 위해서 상기 메타데이터를 업데이트하는 단계, (h) 상기 구동 장치에 일회-기록형 디스크 내의 기록 가능한 어드레스에 의해서 표시되는 위치에 상기 기록 요청에 의해서 지정되는 데이터를 기록하도록 명령하는 단계, 및 (i) 상기 구동 장치에, 상기 일회-기록형 디스크에 상기 메타데이터가 단계(e)에서 판독되는 위치로 상기 업데이트되는 메타데이터 중 적어도 일부를 기록하도록 명령하는 단계를 포함하는 프로세스를 수행하도록 구성된다.A system controller for instructing a drive device having a pseudo-overwrite function to write data to a write-once disc including a plurality of tracks, the system controller including a controller for controlling the drive device, The controller may comprise (a) receiving a write request specifying at least data for a file to be written, (b) instructing the drive device to read a file entry of a metadata file to obtain a file entry of the metadata; Managing the file from a location of the write-once disc, (c) acquiring track information indicating a location of each of the plurality of tracks; Based on the file entry and track information of the metadata, one from the plurality of tracks in which the metadata is next recorded Determining a track, (e) instructing the drive device to read the metadata from the position of the write-once disc, to obtain the metadata, and (f) the data is determined in step (d). Obtaining a next recordable address indicating a next recorded position in a track other than a track, wherein the track is selected from a plurality of tracks, (g) to reflect the recording of data specified by the recording request Updating the metadata, (h) instructing the drive device to write data specified by the write request at a location indicated by a recordable address in a write-once disc, and (i) the In the drive device, the updated meta data on the write-once disc to the position where the metadata is read in step (e). And perform a process comprising instructing to write at least some of the data.

본 발명의 일 실시예에 있어서, 상기 제어기는 반도체 집적 회로를 포함한다. In one embodiment of the invention, the controller comprises a semiconductor integrated circuit.

본 발명의 또 다른 특징에 따라서, 의사-덮어쓰기 기능을 갖는 구동 장치가, 복수의 트랙들을 포함하는 일회-기록형 디스크에 데이터를 기록하도록 명령하는 시스템 제어기에서 사용하기 위한 프로그램에 있어서, 상기 프로그램은 다음의 단계, 즉, (a) 적어도 기록될 파일에 대한 데이터를 지정하는 기록 요청을 수신하는 단계, (b) 상기 구동 장치로 하여금 메타데이터 파일의 파일 엔트리를 판독하도록 명령하여 상기 메타데이터의 파일 엔트리를 획득하도록 하되, 상기 메타데이터는 상기 일회-기록형 디스크의 한 위치로부터 상기 파일을 관리하는 단계, (c) 상기 복수의 트랙들 각각의 위치를 표시하는 트랙 정보를 획득하는 단계, (d) 상기 메타데이터의 파일 엔트리 및 트랙 정보에 기초하여, 메타데이터가 다음에 기록되는 상기 복수의 트랙들로부터 하나의 트랙을 결정하는 단계, (e) 상기 구동 장치가 상기 일회-기록형 디스크의 위치로부터 상기 메타데이터를 판독하도록 명령하여, 상기 메타데이터를 획득하는 단계, (f) 데이터가 단계(d)에서 결정된 트랙이 아닌 트랙에서 다음으로 기록되는 위치를 표시하는 다음의 기록 가능한 어드레스를 획득하며, 상기 트랙은 복수의 트랙들로부터 선택되는 단계, (g) 상기 기록 요청에 의해서 지정된 데이터의 기록을 반영하기 위해서 상기 메타데이터를 업데이트하는 단계, (h) 상기 구동 장치에 일회-기록형 디스크 내의 기록 가능한 어드레스에 의해서 표시되는 위치에 상기 기록 요청에 의해서 지정되는 데이터를 기록하도록 명령하는 단계, 및 (i) 상기 구동 장치에, 상기 일회-기록형 디스크에 상기 메타데이터가 단계(e)에서 판독되는 위치로 상기 업데이트되는 메타데이터 중 적어도 일부를 기록하도록 명령하는 단계를 포함하는 프로세스를 수행하기 위해서 구성되는 프로그램이다. According to another feature of the invention, a program for use in a system controller for instructing a drive device having a pseudo-overwrite function to write data to a write-once disc including a plurality of tracks, the program Is the following steps: (a) receiving a write request specifying at least data for a file to be written, (b) instructing the drive device to read a file entry of a metadata file to Managing a file from a location of said write-once disc, (c) acquiring track information indicative of a location of each of said plurality of tracks; d) based on the file entry and track information of the metadata, from the plurality of tracks in which metadata is next recorded; Determining my tracks, (e) instructing the drive device to read the metadata from the location of the write-once disc, to obtain the metadata, and (f) the data is stored in step (d) Obtaining a next recordable address indicating a next recorded position in a track other than the determined track, wherein the track is selected from a plurality of tracks, (g) reflecting the recording of data specified by the recording request Updating the metadata in order to (h) instruct the drive to record the data specified by the write request at a location indicated by a recordable address in the write-once disc, and (i) The drive unit updates the metadata to the position where the metadata is read in step (e) on the write-once disc. Which it is a program configured to perform a process including the step of a command to record at least a portion of metadata.

본 발명의 또 다른 특징에 따라서, 일회-기록형 디스크 상에 데이터를 기록하기 위한 기록 방법으로서, 상기 일회-기록형 디스크는 복수의 물리적 섹터들을 갖으며, 상기 일회-기록형 디스크는 복수의 논리적 섹터들을 갖는 볼륨 공간을 포함하며, 상기 복수의 논리적 섹터들 각각은 상기 복수의 물리적 섹터들 중 하나에 대응하며, 상기 일회-기록형 디스크는 복수의 트랙들을 갖으며, 상기 복수의 트랙들 각각은 상기 복수의 물리적 섹터 중 적어도 하나의 물리적 섹터를 포함하는, 기록 방법은, (a) 데이터가 기록될 적어도 하나의 논리적 섹터를 지정하는 기록 명령을 수신하는 단계, (b) 상기 복수의 트랙 각각의 위치를 표시하는 트랙 정보를 획득하는 단계, (c) 상기 기록 명령 및 단계(b)에서 획득된 트랙 정보에 의해서 지정된 논리적 섹터에 기초하여, 데이터가 기록되는 상기 복수의 트랙들로부터 하나의 트랙을 결정하는 단계, (d) 상기 기록 명령에 의해서 지정되는 논리적 섹터가 기록된 물리적 섹터 또는 기록되지 않은 물리적 섹터에 대응하는지를 결정하는 단계, (e) 상기 명령에 의해서 지정된 상기 논리적 섹터가 기록되지 않은 물리적 섹터에 대응하는 것으로 결정될 때, 상기 기록되지 않은 물리적 섹터로 데이터를 기록하는 단계, (f) 상기 기록 명령에 의해서 지정된 논리적 섹터가 기록되지 않은 물리적 섹터에 대응하는 것으로 결정될 때, 단계(c)에서 결정된 트랙 내의 다음의 기록 가능한 어드레스에 의해서 표시되는 물리적 섹터로 데이터를 기록하며, 상기 다음의 기록 가능한 어드레스에 의해서 표시되는 물리적 섹터의 재맵핑 어드레스로 기록된 물리적 섹터의 원래 어드레스를 재맵핑하는 재맵핑 정보를 포함하는 재맵핑 테이블을 발생하는 단계를 포함한다.According to another feature of the invention, a recording method for recording data on a write once disc, wherein the write once disc has a plurality of physical sectors, wherein the write once disc has a plurality of logical A volume space having sectors, each of the plurality of logical sectors corresponding to one of the plurality of physical sectors, wherein the write-once disc has a plurality of tracks, each of the plurality of tracks A recording method comprising at least one physical sector of the plurality of physical sectors, the method comprising: (a) receiving a write command specifying at least one logical sector on which data is to be recorded, (b) each of the plurality of tracks Obtaining track information indicating a position, (c) based on the logical sector designated by the recording command and the track information obtained in step (b), Determining one track from the plurality of tracks on which data is to be recorded; (d) determining whether a logical sector designated by the write command corresponds to a recorded physical sector or an unrecorded physical sector, (e) Recording data into the unrecorded physical sector when it is determined that the logical sector designated by the command corresponds to an unrecorded physical sector, (f) the logical sector designated by the write command is not recorded. When determined to correspond to a physical sector, data is written into the physical sector indicated by the next recordable address in the track determined in step (c), and the remapping address of the physical sector indicated by the next recordable address To remap the original address of the physical sector written to Generating a remapping table containing the remapping information.

본 발명의 일 실시예에서, 상기 방법은, 할당 명령을 수신하며, 상기 할당 명령에 응답하여 적어도 하나의 트랙을 할당하는 단계를 더 포함한다. In one embodiment of the invention, the method further comprises receiving an allocation command and allocating at least one track in response to the allocation command.

본 발명의 일 실시예에서, 적어도 하나의 트랙을 할당하는 상기 단계는 단계(c)에서 결정된 트랙 내의 제 1 트랙 및 제 2 트랙을 할당하는 단계를 포함한다. In one embodiment of the invention, the step of assigning at least one track comprises assigning a first track and a second track in the track determined in step (c).

본 발명의 또 다른 특징에 따라서, 일회-기록형 디스크 상에 데이터를 기록하는 구동 장치로서, 상기 일회-기록형 디스크는 복수의 물리적 섹터들을 갖으며, 상기 일회-기록형 디스크는 복수의 논리적 섹터들을 갖는 볼륨 공간을 포함하며, 상기 복수의 논리적 섹터들 각각은 상기 복수의 물리적 섹터들 중 하나에 대응하며, 상기 일회-기록형 디스크는 복수의 트랙들을 갖으며, 상기 복수의 트랙들 각각은 상기 복수의 물리적 섹터 중 적어도 하나의 물리적 섹터를 포함하는, 구동 장치에 있어서, 상기 일회-기록형 디스크에 대한 기록 동작을 수행하기 위한 구동 메카니즘, 및 상기 구동 메카니즘을 제어하기 위한 구동 제어 섹션을 포함하며, 여기서 상기 구동 제어 섹션은 다음의 단계, 즉, (a) 데이터가 기록될 적어도 하나의 논리적 섹터를 지정하는 기록 명령을 수신하는 단계, (b) 상기 복수의 트랙 각각의 위치를 표시하는 트랙 정보를 획득하는 단계, (c) 상기 기록 명령 및 단계(b)에서 획득된 트랙 정보에 의해서 지정된 논리적 섹터에 기초하여, 데이터가 기록되는 상기 복수의 트랙들로부터 하나의 트랙을 결정하는 단계, (d) 상기 기록 명령에 의해서 지정되는 논리적 섹터가 기록된 물리적 섹터 또는 기록되지 않은 물리적 섹터에 대응하는지를 결정하는 단계, (e) 상기 명령에 의해서 지정된 상기 논리적 섹터가 기록되지 않은 물리적 섹터에 대응하는 것으로 결정될 때, 상기 기록되지 않은 물리적 섹터로 데이터를 기록하기 위해 상기 구동 메카니즘을 제어하는 단계, (f) 상기 기록 명령에 의해서 지정된 논리적 섹터가 기록되지 않은 물리적 섹터에 대응하는 것으로 결정될 때, 단계(c)에서 결정된 트랙 내의 다음의 기록 가능한 어드레스에 의해서 표시되는 물리적 섹터로 상기 데이터를 기록하도록 상기 구동 메카니즘을 제어하며, 상기 다음의 기록 가능한 어드레스에 의해서 표시되는 물리적 섹터의 재맵핑 어드레스로 기록된 물리적 섹터의 원래 어드레스를 재맵핑하는 재맵핑 정보를 포함하는 재맵핑 테이블을 발생하며, 상기 일회-기록형 디스크 상에 상기 재맵핑 테이블을 기록하도록 상기 구동 메카니즘을 제어하는 단계를 포함한다.According to still another aspect of the present invention, there is provided a driving apparatus for recording data on a write once disc, wherein the write once disc has a plurality of physical sectors, wherein the write once disc has a plurality of logical sectors. And a volume space having a plurality of logical sectors, each of the plurality of logical sectors corresponding to one of the plurality of physical sectors, wherein the write-once disc has a plurality of tracks, each of the plurality of tracks A drive apparatus comprising at least one physical sector of a plurality of physical sectors, comprising: a drive mechanism for performing a write operation to the write-once-type disc, and a drive control section for controlling the drive mechanism; Where the drive control section is the next step, namely (a) writing to specify at least one logical sector on which data is to be written. Receiving a command, (b) obtaining track information indicative of the position of each of the plurality of tracks, (c) based on the logical sector designated by the recording command and the track information obtained in step (b) Determining one track from the plurality of tracks on which data is recorded, (d) determining whether a logical sector designated by the write command corresponds to a recorded physical sector or an unrecorded physical sector, ( e) controlling the drive mechanism to write data to the unrecorded physical sector when it is determined that the logical sector designated by the command corresponds to an unrecorded physical sector, (f) in the write command The track determined in step (c), when it is determined by the logical sector designated by the Control the drive mechanism to write the data to the physical sector indicated by the next writable address in the apparatus, and write the original address of the physical sector recorded as the remapping address of the physical sector indicated by the next writable address. Generating a remapping table comprising remapping information for remapping, and controlling the drive mechanism to write the remapping table on the write-once disc.

본 발명의 또 다른 특징에 따라서, 일회-기록형 디스크 상에 데이터를 기록하도록 구동 장치에서 사용하기 위한 반도체 집적 회로로서, 상기 일회-기록형 디스크는 복수의 물리적 섹터들을 갖으며, 상기 일회-기록형 디스크는 복수의 논리적 섹터들을 갖는 볼륨 공간을 포함하며, 상기 복수의 논리적 섹터들 각각은 상기 복수의 물리적 섹터들 중 하나에 대응하며, 상기 일회-기록형 디스크는 복수의 트랙들을 갖으며, 상기 복수의 트랙들 각각은 상기 복수의 물리적 섹터 중 적어도 하나의 물리적 섹터를 포함하며, 상기 반도체 집적 회로는 일회-기록형 디스크를 위한 기록 동작을 수행하기 위한 구동 메카니즘을 제어하도록 구성되는, 반도체 집적 회로에 있어서, 상기 반도체 집적 회로는 다음의 단계, 즉, (a) 데이터가 기록될 적어도 하나의 논리적 섹터를 지정하는 기록 명령을 수신하는 단계, (b) 상기 복수의 트랙 각각의 위치를 표시하는 트랙 정보를 획득하는 단계, (c) 상기 기록 명령 및 단계(b)에서 획득된 트랙 정보에 의해서 지정된 논리적 섹터에 기초하여, 데이터가 기록되는 상기 복수의 트랙들로부터 하나의 트랙을 결정하는 단계, (d) 상기 기록 명령에 의해서 지정되는 논리적 섹터가 기록된 물리적 섹터 또는 기록되지 않은 물리적 섹터에 대응하는지를 결정하는 단계, (e) 상기 명령에 의해서 지정된 상기 논리적 섹터가 기록되지 않은 물리적 섹터에 대응하는 것으로 결정될 때, 상기 기록되지 않은 물리적 섹터로 데이터를 기록하기 위해 상기 구동 메카니즘을 제어하는 단계, (f) 상기 기록 명령에 의해서 지정된 논리적 섹터가 기록되지 않은 물리적 섹터에 대응하는 것으로 결정될 때, 단계(c)에서 결정된 트랙 내의 다음의 기록 가능한 어드레스에 의해서 표시되는 물리적 섹터로 상기 데이터를 기록하도록 상기 구동 메카니즘을 제어하며, 상기 다음의 기록 가능한 어드레스에 의해서 표시되는 물리적 섹터의 재맵핑 어드레스로 기록된 물리적 섹터의 원래 어드레스를 재맵핑하는 재맵핑 정보를 포함하는 재맵핑 테이블을 발생하며, 상기 일회-기록형 디스크 상에 상기 재맵핑 테이블을 기록하도록 상기 구동 메카니즘을 제어하는 단계를 포함하는 프로세스를 수행하도록 동작한다.According to another feature of the invention, a semiconductor integrated circuit for use in a drive device for recording data on a write-once disc, wherein the write once disc has a plurality of physical sectors, the write once write disc; The disc includes a volume space having a plurality of logical sectors, each of the plurality of logical sectors corresponding to one of the plurality of physical sectors, wherein the write-once disc has a plurality of tracks, and Each of the plurality of tracks includes at least one physical sector of the plurality of physical sectors, wherein the semiconductor integrated circuit is configured to control a driving mechanism for performing a write operation for a write-once disc. The semiconductor integrated circuit comprises the following steps: (a) at least one logical sector in which data is to be written. Receiving a recording command designating a recording command, (b) acquiring track information indicating the position of each of the plurality of tracks, (c) the logical command specified by the recording command and the track information obtained in step (b) Based on a sector, determining one track from the plurality of tracks on which data is recorded, (d) determining whether a logical sector specified by the write command corresponds to a recorded physical sector or an unrecorded physical sector; (E) controlling the drive mechanism to write data to the unrecorded physical sector when it is determined that the logical sector designated by the command corresponds to an unrecorded physical sector, (f) When it is determined that the logical sector designated by the write command corresponds to a physical sector that is not recorded, step (c) Control the drive mechanism to write the data to the physical sector indicated by the next writable address in the track determined at < RTI ID = 0.0 > and < / RTI > Generate a remapping table that includes remapping information for remapping the original address, and perform a process comprising controlling the drive mechanism to write the remapping table on the write-once disc. .

본 발명의 전술된 그리고 다른 장점들은 당업자라면 첨부된 도면을 참조하여 이어지는 상세한 설명을 읽고 이해함으로써 분명해지게 된다.The above and other advantages of the present invention will become apparent to those skilled in the art upon reading and understanding the following detailed description with reference to the accompanying drawings.

도 1은 파일이 기록될 때 영역의 구성을 도시하는 도면이다.1 is a diagram showing the configuration of an area when a file is recorded.

도 2는 데이터-A 파일이 도 1에 도시된 바와 같은 상태를 갖는 디스크의 루트 디렉토리에 기록될 때 영역의 구성을 도시하는 도면이다.FIG. 2 is a diagram showing the configuration of an area when a Data-A file is recorded in the root directory of a disc having a state as shown in FIG.

도 3은 데이터-A 파일이 더 큰 여유 영역을 갖는 디스크 상의 루트 디렉토리에 기록될 때 영역의 구성을 도시하는 도면이다.FIG. 3 is a diagram showing the structure of the area when the Data-A file is recorded in the root directory on the disc having a larger free area.

도 4는 파일을 기록하기 위한 절차를 도시하는 흐름도이다.4 is a flowchart showing a procedure for recording a file.

도 5는 광 디스크 정보 기록/재생 시스템을 도시하는 도면이다.5 is a diagram showing an optical disc information recording / reproducing system.

도 6은 구동 장치 및 시스템 제어기 사이의 명령 전달을 도시하는 도면이다.6 is a diagram illustrating command transfer between a drive device and a system controller.

도 7A 내지 7D 각각은, 데이터가 재기록 가능한 디스크 케이스 및 일회-기록형 디스크 케이스에 대해서 재맵핑될 때, 사용자 데이터 영역 내의 블록을 도시하는 도면을 포함한다.7A to 7D each include a diagram showing a block in the user data area when data is remapped for a rewritable disc case and a once-writable disc case.

도 8A 및 8B는 각각, 데이터가 NWA에 기록될 때, 사용자 데이터 영역 내의 블록을 도시하는 도면을 포함한다. 8A and 8B include diagrams showing blocks in a user data area, respectively, when data is recorded in the NWA.

도 9는 재맵핑 테이블의 데이터 구조를 도시하는 도면이다.9 is a diagram illustrating a data structure of a remapping table.

도 10A-10E 각각은, 멀티-트랙 기록의 전략을 설명하기 위한 영역의 구성을 도시하는 도면을 포함한다.Each of FIGS. 10A-10E includes a diagram showing a configuration of an area for explaining a strategy of multi-track recording.

도 11은 의사-덮어쓰기 방법을 설명하기 위한 영역의 구성을 도시하는 도면이다.11 is a diagram showing the configuration of an area for explaining the pseudo-overwrite method.

도 12는 메타데이터 미러 파일에 메타데이터를 기록하기 위한 트랙을 갖는 영역의 구성을 도시하는 도면이다.12 is a diagram illustrating a configuration of an area having a track for recording metadata in a metadata mirror file.

도 13은 메타데이터 기록을 위한 새로운 트랙이 할당된 후에 영역의 구성을 도시하는 도면이다.Fig. 13 is a diagram showing the configuration of the area after a new track for metadata recording is assigned.

도 14는 메타데이터가 메타데이터 기록을 위한 새로운 트랙에 기록된 후에 영역의 구성을 도시한 도면이다.Fig. 14 is a diagram showing the structure of the area after metadata is recorded in a new track for metadata recording.

도 15A 내지 15D 각각은, 데이터가 의사-덮어쓰기 방법을 이용하여 기록될 때, 사용자 데이터 영역 내의 블록을 도시하는 도면을 포함한다.Each of FIGS. 15A-15D includes a diagram showing a block in a user data area when data is written using a pseudo-overwrite method.

도 16은 광 디스크 정보 기록/재생 시스템의 제어기에서 수행되는 시스템에 의해 데이터를 기록하기 위한 과정을 도시하는 흐름도이다.FIG. 16 is a flowchart showing a process for recording data by a system performed in a controller of an optical disc information recording / reproducing system.

도 17A 및 17B 각각은, 광 디스크 정보 기록/재생 시스템의 구동 장치에 의해서 데이터를 기록하기 위한 과정을 도시하는 흐름도를 포함한다.17A and 17B each include a flowchart showing a process for recording data by the driving apparatus of the optical disc information recording / reproducing system.

도 18은 소비자 비디오 레코더 또는 소비자 비디오 플레이어의 일부인 광 디스크 정보 기록/재생 시스템을 도시하는 도면이다.18 is a diagram illustrating an optical disc information recording / reproducing system that is part of a consumer video recorder or consumer video player.

도 19는 도 18에 설명된 기록/재생 시스템에 의해서 일회-기록 가능 광 디스크 상에 데이터를 기록하기 위한 과정을 도시하는 흐름도이다.FIG. 19 is a flowchart showing a process for recording data on a write-once optical disc by the recording / reproducing system described in FIG.

도 20은 도 5 및 18에서 설명된 기록/재생 시스템에 의해서 일회-기록 가능 광 디스크로부터 데이터를 읽기 위한 과정을 도시하는 흐름도이다.FIG. 20 is a flowchart showing a process for reading data from a write-once optical disc by the recording / reproducing system described in FIGS. 5 and 18. FIG.

도 21A 내지 21C 각각은, 논리 포맷 후, 및 일부 파일들이 기록된 후에 트랙 레이아웃의 일례를 포함한다.Each of FIGS. 21A-21C includes an example of a track layout after logical format and after some files have been recorded.

구동 장치에 의해서 수행되는 일회-기록형 디스크를 위한 덮어쓰기 기능이 연구되었다. 그러나, 실제로 하는 것은 어려웠는데, 왜냐하면 구동 장치가 얼마나 되는 데이터가 덮어쓰기가 되는지 그리고 데이터가 덮어 쓰여진 곳이 어디인지를 알 수 없기 때문이다.The overwrite function for the write-once disc performed by the drive device has been studied. In practice, however, it was difficult because the drive did not know how much data was overwritten and where the data was overwritten.

예를 들어, 덮어쓰여질 데이터는 일회-기록형 디스크로서 다른 위치에 저장되며, 원래의 위치 및 교체 위치를 지정하기 위한 정보는 구동 장치 내에서 처리되어야 한다. 덮어쓰기 데이터의 량이 증가할 때, 그것이 교체되는 곳을 찾는 시간이 더 걸리게 된다. 따라서, 그러한 구동 장치는 자원이 적기 때문에 충분한 성능으로 판독/기록될 수 없다(예를 들면, CPU 속도 및 메모리).For example, the data to be overwritten is stored in another location as a once-writable disc, and information for designating the original position and the replacement position must be processed in the drive unit. When the amount of overwrite data increases, it takes longer to find where it is replaced. Therefore, such a drive device cannot be read / written with sufficient performance because of low resources (eg, CPU speed and memory).

새로운 파일 시스템은 덮어쓰기될 데이터 및 새롭게 기록될 데이터를 구별해야 하며, 새로운 파일 시스템은 덮어쓰기 가능한 기능을 갖는 구동 장치와 매치될 수 있음을 알 수 있다. 그리고, VAT를 사용하지 않고도, 일회-기록형 디스크 상에 데이터 첨부 용도를 위한 메타데이터 파티션을 적용할 가능성이 있다. It will be appreciated that the new file system must distinguish between the data to be overwritten and the data to be newly written, and the new file system can be matched with a drive having an overwriteable function. And there is a possibility of applying a metadata partition for data attachment purpose on a write once disc without using VAT.

이러한 아이디어의 전략적 중요성에는, 상기 장치가 기존의 블록의 오버라이팅을 조정하도록 함으로써, 파일 시스템이 논리를 수행할 필요가 없게 된다는 것이 포함된다. 이것은 파일 시스템 구동기를 덜 복잡하게 한다.The strategic importance of this idea includes that the device adjusts the overwriting of existing blocks so that the file system does not need to perform logic. This makes the file system driver less complicated.

한편, 일회-기록형 매체는 데이터를 소거 가능한 매체로 기록하기 위한 가장 저렴하고 가장 빠른 방법 중 하나이다. 그러나, 이는 본질적으로 구동이 디스크 상의 한 위치로 데이터를 기록하도록 요구한다. 이 위치는 데이터가 기록될 때와 같이 전방으로 이동한다. 전형적으로, 이것은 실질적으로 데이터 파괴를 야기시킬 수 있다. 즉, 주어진 종류의 데이터 또는 파일은 디스크 상에서 많은 지역에 분산될 수 있다. On the other hand, write-once media are one of the cheapest and fastest methods for recording data to erasable media. However, this essentially requires the drive to write data to a location on the disk. This position moves forward, as when data is recorded. Typically, this can substantially result in data destruction. That is, a given kind of data or file can be distributed over many locations on disk.

후술되는 아이디어는 디스크 상에 다수의 기록 지점들을 사용함으로써 전술된 파괴중 일부를 경감시키는 방법이다. 말하자면, 메타데이터 및 파일은 디스크 상의 분리된 위치에 저장될 수 있다. 디스크 상의 상이한 위치에 기록을 위한 메카니즘을 제공함으로써, 그 유용성에 대한 일부 제한이 제거될 수 있다.The idea described below is a method of alleviating some of the above-described breakdowns by using multiple recording points on a disc. In other words, metadata and files may be stored in separate locations on disk. By providing a mechanism for recording at different locations on the disc, some limitations on its usefulness can be removed.

다음 실시예들에서, 본 아이디어에 기초한 고찰이 상세히 예시된다.In the following embodiments, a discussion based on the present idea is illustrated in detail.

(실시예 1)(Example 1)

덮어쓰기된 데이터의 량은 시스템에서 상기 과정을 최적화함으로써 감소될 수 있다. 본 실시예에서, 기본 판독/기록 동작은 일회-기록형 디스크의 덮어쓰기 가능한 기능으로 구동 장치에 대한 새로운 기록 방법에 따라서 설명된다. The amount of overwritten data can be reduced by optimizing the process in the system. In this embodiment, the basic read / write operation is described according to a new recording method for the drive apparatus with the overwriteable function of the write-once type disc.

이하, 본 발명의 실시예는 도면을 참조하여 설명된다.Hereinafter, embodiments of the present invention will be described with reference to the drawings.

도 1 및 2는 영역의 구성을 도시하는 도면이다. 도 4는 파일을 기록하기 위한 과정을 도시하는 흐름도이다. 도 1은 논리 포맷 동작 후의 상태를 도시한다. 도 2는 데이터-A 파일이 도 1의 상태를 갖는 디스크 상의 루트 디렉토리에 기록된 상태를 도시한다.1 and 2 are diagrams showing the configuration of regions. 4 is a flowchart showing a process for recording a file. 1 shows a state after a logical format operation. FIG. 2 shows a state in which the Data-A file is recorded in the root directory on the disc having the state of FIG.

먼저, 도 1이 설명된다. First, FIG. 1 is described.

데이터 영역은 리드-인 영역, 볼륨 공간 및 리드-아웃 영역과 같은 영역을 포함한다(여기서 리드-인 영역 및 리드-아웃 영역은 물리 층에 의해서 관리된다). 물리적 섹터는 데이터 영역 내의 어드레싱 가능한 유닛이며, 물리적 섹터 번호는 각각의 물리적 섹터에 상승하는 시퀀스로 할당된다. 볼륨 공간은 논리적 섹터로 이루어지며, 논리적 섹터 번호는 각각의 논리적 섹터에 대해서 상승하는 시퀀스로 할당된다. 각각의 논리적 섹터는 특이하게 미리 물리적 섹터에 대응한다. 예를 들어, 논리적 섹터 번호 0를 갖는 논리적 섹터는 물리적 섹터 번호 10000을 갖는 물리적 섹터에 대응하며 볼륨 공간의 시작 어드레스는 리드-인 영역에 저장된다.The data area includes areas such as lead-in area, volume space and lead-out area (where the lead-in area and lead-out area are managed by the physical layer). Physical sectors are addressable units in the data area, and physical sector numbers are assigned to each physical sector in an ascending sequence. Volume space is made up of logical sectors, and logical sector numbers are allocated in ascending sequence for each logical sector. Each logical sector uniquely corresponds to a physical sector in advance. For example, a logical sector with logical sector number 0 corresponds to a physical sector with physical sector number 10000 and the start address of the volume space is stored in the lead-in area.

결함 관리 영역(DMA(Defect Management Area)은, 교체될 블록의 어드레스와 교체 동작에서 교체되는 블록의 어드레스 사이의 대응성을 표시하는 정보가 결함 리스트로서 기록되는 영역이다.The defect management area (DMA) is an area in which information indicating the correspondence between the address of the block to be replaced and the address of the block to be replaced in the replacement operation is recorded as a defect list.

시간적인 DMA(TDMA)는, 시간적인 결함 리스트가 증가 기록 동작에서 기록되는 영역이다. 디스크가 증가 기록 동작들을 금지하기 위해서 최종화될 때, 시간적인 결함 리스트는 DMA 내의 결함 리스트로서 등록된다. DMA는 두 개의 디스크 부분, 즉 내부 및 외부에 제공된다. 따라서, 결함 리스트가 두 번 두 개의 상이한 영역에 기록된다. DMA에서, 트랙 정보, 여분 영역의 위치 정보 등과 같은 디스크 정보가 기록된다.Temporal DMA (TDMA) is an area where a temporal defect list is recorded in an incremental write operation. When the disc is finalized to inhibit incremental write operations, the temporal defect list is registered as a defect list in the DMA. DMA is provided in two disk parts, internal and external. Thus, the defect list is recorded twice in two different areas. In the DMA, disc information such as track information, position information of the spare area, and the like is recorded.

상기 여분 영역은 데이터가 교체 동작에 의해서 기록되는 교체 영역으로서, 이는 선형 교체 방법에 해당한다. 상기 여분 영역은 파일 시스템에 의해서 처리되는 볼륨 공간의 외측에 할당된다. 이 예에서, 데이터는 여분 영역의 일부에 기록되었다. 여분 영역 내의 어드레스들은 물리 어드레스들을 사용함으로써 본질적으로 지정된다. 이 설명을 간단히 하기 위해서, 여분 영역 내의 상대적인 어드레스가 SA(Spare area Address: 여분 영역 어드레스)로 표시된다. 여분 영역 내의 섹터들은 기록되지 않은 상태에 놓인다. The spare area is a replacement area in which data is recorded by a replacement operation, which corresponds to a linear replacement method. The spare area is allocated outside of the volume space handled by the file system. In this example, data was recorded in part of the spare area. Addresses in the spare area are essentially specified by using physical addresses. For the sake of simplicity, the relative address in the spare area is represented by SA (Spare area Address). Sectors in the spare area are left unrecorded.

본 발명에서, 일반적으로 결함 관리에 사용되는 선형 교체 알고리즘은 구동 장치에 의해서 수행되는 덮어쓰기에 적용된다. In the present invention, the linear replacement algorithm generally used for defect management is applied to the overwriting performed by the drive device.

상기 볼륨 공간은 네 개의 트랙을 포함한다. 하나의 트랙은 데이터가 일회-기록형 디스크 상의 트랙의 시작으로부터 순차적으로 기록되는 영역이다. 트랙 내의 기록된 영역의 끝은 구동 장치에 의해서 관리된다. 트랙 상태(폐쇄 및 개방)은 트랙의 상태를 표시한다. "폐쇄"는 트랙 내의 모든 섹터가 데이터 기록에 사용되었음을 표시한다. "개방"은 데이터 기록에 사용되지 않은 적어도 하나의 섹터가 존재함을 표시한다. 다시 말해서, 데이터는 개방 트랙으로 증가하여 기록될 수 있다. The volume space includes four tracks. One track is an area where data is recorded sequentially from the start of the track on the write-once disc. The end of the recorded area in the track is managed by the drive device. Track status (closed and open) indicates the status of the track. "Closed" indicates that all sectors in the track have been used for data recording. "Open" indicates that there is at least one sector not used for data recording. In other words, data can be incrementally recorded in the open track.

(볼륨 구조)(Volume structure)

볼륨 및 파일 구조는 UDF 2.5에 따른다. 더 작은 논리적 섹터 번호를 갖는 영역에 위치한 볼륨 구조는, 앵커 볼륨 디스크립터 포인터, 볼륨 인식 시퀀스, 볼륨 디스크립터 시퀀스, 및 논리 볼륨 인테그러티 시퀀스를 포함한다. 더 큰 논리적 섹터 번호를 갖는 영역에 위치한 볼륨 구조는, 앵커 볼륨 디스크립터 포인터 및 볼륨 디스크립터 시퀀스를 포함한다. 논리 볼륨 인티그러티 디스크립터가 기록되는 논리 볼륨 인테그러티 시퀀스는 볼륨 구조의 일부이다. 볼륨 구조가 이전에 기록되었기 때문에, 트랙 #1 및 #4는 폐쇄 상태에 놓인다. 트랙#2은 메타데이터를 기록하기 위해서 지정된 영역이다. 도 1에서, 예로서, 트랙#2에 할당된 메타데이터 파일은 기록되지 않은 영역을 갖는다. 메타데이터 파일은 메타데이터 파티션이라고도 한다. 트랙#2 및 #3으로 이루어지는 영역은 물리 파티션이라고 한다. 트랙#3은 파일의 데이터를 기록하도록 지정된 영역이다. 그러므로, 기록된 영역에 이어지는 영역은 기록되지 않은 상태에 놓인다.Volume and file structures are in accordance with UDF 2.5. A volume structure located in an area with a smaller logical sector number includes an anchor volume descriptor pointer, a volume recognition sequence, a volume descriptor sequence, and a logical volume integrity sequence. A volume structure located in an area with a larger logical sector number includes an anchor volume descriptor pointer and a volume descriptor sequence. The logical volume integrity sequence in which the logical volume integrity descriptor is written is part of the volume structure. Since the volume structure was previously recorded, tracks # 1 and # 4 are in a closed state. Track # 2 is an area designated for recording metadata. In Fig. 1, as an example, the metadata file assigned to track # 2 has an unrecorded area. Metadata files are also called metadata partitions. The area consisting of tracks # 2 and # 3 is called a physical partition. Track # 3 is an area designated to record data of a file. Therefore, the area following the recorded area is in an unrecorded state.

(파일 구조)(File structure)

메타데이터 비트맵 FE (메타데이터 비트맵 파일 파일 엔트리)는 메타데이터 비트맵에 대해서 할당되는 영역을 조직하기 위한 파일 엔트리이다. 메타데이터 비트맵은 메타데이터 파일에서 사용하기 위해서 준비된 사용 가능한 섹터를 지정하기 위한 비트맵이다. 기록되지 않은 영역은 물론이고 파일 엔트리 또는 디렉토리를 검출함으로써 사용되지 않은 영역이 되는 영역도 사용 가능한 영역으로서 비트맵에 등록된다. 메타데이터 파일 FE(메타데이터 파일의 파일 엔트리)는 메타데이터 파일을 위해서 할당된 영역을 조직하기 위한 파일 엔트리이다. 메타데이터 파일에서, 파일 엔트리 및 디렉토리가 기록된다. UDF에서, 파일 세트 디스크립터 역시 기록되는데, 이는 도면에는 도시되지 않는다. The metadata bitmap FE (metadata bitmap file file entry) is a file entry for organizing the area allocated for the metadata bitmap. The metadata bitmap is a bitmap for specifying the usable sectors prepared for use in the metadata file. Not only the unrecorded area but also the unused area by detecting a file entry or directory is also registered in the bitmap as an available area. The metadata file FE (file entry of the metadata file) is a file entry for organizing the area allocated for the metadata file. In the metadata file, file entries and directories are recorded. In a UDF, a file set descriptor is also written, which is not shown in the figure.

루트 디렉토리 FE(루트 디렉토리 파일 엔트리)는 루트 디렉토리에 대해서 할당된 영역을 조직하기 위한 파일 엔트리이다. 루트 디렉토리 FE는 MA #0에 기록된다. 루트 디렉토리는 MA #1에 기록된다. MA(메타데이터 파일 어드레스)는 메타데이터 파일 내의 상대적인 어드레스를 가르킨다.The root directory FE (root directory file entry) is a file entry for organizing the area allocated for the root directory. The root directory FE is recorded in MA # 0. The root directory is recorded in MA # 1. The MA (metadata file address) points to the relative address in the metadata file.

(파일 기록 과정)(File recording process)

데이터-A를 도 1의 일회-기록형 디스크에 기록하기 위한 예시적인 과정이 도 2 및 4를 참조하여 설명된다. An exemplary process for writing Data-A to the write-once disc of FIG. 1 is described with reference to FIGS. 2 and 4.

단계 S101에서, 메타데이터 비트맵이 메모리로 판독되어 들어가며 메타데이터 파일 내의 기록 영역을 획득하기 위해서 메모리 내에서 업데이트된다. In step S101, the metadata bitmap is read into the memory and updated in the memory to obtain a recording area in the metadata file.

단계 S102에서, 파일이 등록되는 디렉토리가 메모리로 판독되어 들어가며, 메모리에서 업데이트된다. 이 예에서, 루트 디렉토리가 판독되며, 데이터-A가 저장된다.In step S102, the directory in which the file is registered is read into the memory and updated in the memory. In this example, the root directory is read and data-A is stored.

단계 S103에서, 디렉토리의 파일 엔트리는 메모리로 판독되어 들어가며, 디렉토리의 정보(예를 들면, 크기 및 업데이트 시간, 등)가 업데이트된다.In step S103, the file entry of the directory is read into the memory and the information of the directory (e.g., size and update time, etc.) is updated.

단계 S104에서, 데이터-A는 트랙 #3내의 기록되지 않은 영역의 시작에서부터 기록된다. In step S104, data-A is recorded from the beginning of the unrecorded area in track # 3.

단계 S105에서, 기록된 데이터의 위치 정보를 등록하기 위해서, 데이터-A 파일의 엔트리는 메모리에서 발생된다.In step S105, in order to register the positional information of the recorded data, an entry of the data-A file is generated in the memory.

단계 S106에서, 메모리에서 업데이트 또는 발생된 메타데이터 및 메타데이터 비트맵이 기록된다. 루트 디렉토리에서, 구동 장치가 명령을 받아 데이터가 MA #2(기록되지 않은 섹터)에 기록된다. 그러므로, MA #1에 기록된 루트 디렉토리는 무효가 되며, MA #1의 섹터는 논리 공간에서 사용 가능한 섹터가 된다. 구동 장치가 명령을 받아 데이터가 메타데이터 파일 내의 사용 가능한 영역과 같은 것으로 기록된다 할지라도, 상기 데이터는 상기 영역이 이미 기록되어 있는 한, 상기 영역으로 물리적으로 기록될 수 없다. 루트 디렉토리의 파일 엔트리에 대해서, 데이터는 MA #0(이미 기록된 영역)으로 기록되도록 명령되며, 상기 데이터는 여분 영역 내의 SA #0으로 저장되는데, 이는 여분 영역 내의 기록되지 않은 영역의 시작이다. 데이터-A 파일의 엔트리에 대해서, 상기 데이터는 MA #3(기록되지 않은 섹터)로 기록되도록 명령된다. 메타데이터 비트맵에 대해서, 상기 데이터는 동일 위치(이미 기록된 영역)에 기록되도록 명령되며, 이어서 상기 데이터는 SA #1로 저장된다. In step S106, the metadata and the metadata bitmap updated or generated in the memory are recorded. In the root directory, the drive device receives a command and data is written to MA # 2 (unrecorded sector). Therefore, the root directory recorded in MA # 1 becomes invalid, and the sector of MA # 1 becomes a sector usable in the logical space. Although the drive device is commanded and data is recorded as the same as the usable area in the metadata file, the data cannot be physically recorded into the area as long as the area is already recorded. For file entries in the root directory, data is ordered to be written to MA # 0 (already written area), which data is stored as SA # 0 in the spare area, which is the beginning of the unrecorded area in the spare area. For an entry in the data-A file, the data is instructed to be written to MA # 3 (unrecorded sector). For a metadata bitmap, the data is instructed to be recorded at the same location (already recorded area), and then the data is stored as SA # 1.

교체 동작이 본 발명의 의사-덮어쓰기 동작이다. 본원에 사용될 때, "의사 덮어쓰기 동작"이라는 용어는 논리 덮어쓰기 동작을 지칭하는 것으로, 상기 데이터를 이미 기록된 영역에 기록하기 위한 명령에 응답하여 교체 동작의 메카니즘이 기록되지 않은 영역으로 상기 데이터를 기록하는데 사용된다. The replace operation is the pseudo-overwrite operation of the present invention. As used herein, the term " pseudo overwrite operation " refers to a logical overwrite operation in which the data of the replacement operation is not recorded in response to a command for writing the data to an already recorded area. It is used to record.

단계 S107에서, 논리 볼륨 인테그러티 디스크립터가 파일 명령의 인테그러티 상태를 표시하도록 업데이트되는 것이 명령된다. 상기 데이터는 의사 덮어쓰기 동작에 의해서 여분 영역으로 저장된다(도면에는 도시되지 않음).In step S107, it is instructed that the logical volume integrity descriptor is updated to indicate the integrity status of the file command. The data is stored in the spare area by a pseudo overwrite operation (not shown in the figure).

단계 S106에서 설명된 바와 같이, 복수의 데이터 조각을 함께 기록하여 캐시를 이용함으로써 가능한 많은 데이터의 조각들이 동일 ECC 블록에 기록됨으로써, 기록되지 않은 영역을 효과적으로 활용하는 것이 가능하다. 특히, 메타데이터 비트맵 또는 논리 볼륨 인테그러티 디스크립터는 파일이 기록될 때 마다 업데이트되지 않을 수 있다. 복수의 파일들이 기록된 후에 메타데이터 비트맵 또는 논리 볼륨 인테그러티 디스크립터를 기록함으로써, 여분 영역의 기록되지 않은 영역을 효과적으로 이용하는 것이 가능하다. As described in step S106, as many pieces of data as possible are recorded in the same ECC block by using a cache by recording a plurality of pieces of data together, it is possible to effectively utilize the unrecorded area. In particular, the metadata bitmap or logical volume integrity descriptor may not be updated each time a file is written. By recording the metadata bitmap or logical volume integrity descriptor after a plurality of files have been recorded, it is possible to effectively use the unrecorded area of the spare area.

데이터-A 파일은 다음 방식으로 판독된다. 트랙 #1내의 볼륨 구조가 판독된다. 그후, 메타데이터 파일을 액세스하기 위해서, 메타데이터의 파일 엔트리가 판독된다. 그후, 루트 디렉토리의 파일 엔트리가 판독될 때, 실제 데이터가 여분 영역에 기록되기 때문에 광 디스크의 외측 영역이 액세스될 필요가 있다. 그후, 섹터 MA #2에 기록된 루트 디렉토리 및 섹터 MA #3에 기록되는 데이터-A 파일의 파일 엔트리가 판독된다. 따라서, 데이터-A의 어드레스 정보가 획득됨에 따라서 파일 데이터가 액세스될 수 있다.The Data-A file is read in the following manner. The volume structure in track # 1 is read. Then, to access the metadata file, the file entry of the metadata is read. Then, when the file entry of the root directory is read, the area outside of the optical disc needs to be accessed because the actual data is recorded in the spare area. Thereafter, the file entry of the root directory recorded in sector MA # 2 and the data-A file recorded in sector MA # 3 is read. Thus, file data can be accessed as address information of Data-A is obtained.

도 5는 본 발명에 따른 광 디스크 정보 기록/재생 시스템(500)을 도시한다. 이 정보 기록/재생 시스템(500)은 시스템 제어기(510), 광 디스크로부터 정보를 판독하고 기록하기 위한 구동 장치(520), 및 입/출력 버스(530)을 포함한다.5 shows an optical disc information recording / reproducing system 500 according to the present invention. This information recording / reproducing system 500 includes a system controller 510, a drive device 520 for reading and recording information from an optical disc, and an input / output bus 530.

시스템 제어기(510) 및 구동 장치(520) 사이에서, 명령 세트를 이용한 명령 및 응답과 판독/기록 데이터의 전달이 입/출력 버스(530)를 통해서 수행된다. Between the system controller 510 and the drive device 520, the transfer of commands and responses and read / write data using the command set is performed via the input / output bus 530.

시스템 제어기(510)는 제어기(511) 및 메모리(512)를 포함한다. 시스템 제어기(510)는 개인용 컴퓨터가 될 수 있다. 제어기(511)는 예를 들면, CPU(중앙 처리 장치)와 같은 반도체 집적 회로가 될 수 있으며 본 발명의 실시예들에서 설명되니 방법을 수행한다.System controller 510 includes a controller 511 and a memory 512. System controller 510 may be a personal computer. The controller 511 may be, for example, a semiconductor integrated circuit such as a CPU (Central Processing Unit) and is described in the embodiments of the present invention to perform the method.

또한, 제어기(511)가 이러한 실시예들에서 설명된 방법을 수행하도록 하기 위한 프로그램이 메모리(512)에 저장된다. 제어기(511)에서는, 파일 시스템, 유틸리티 프로그램 또는 장치 구동기가 수행될 수 있다. Also stored in memory 512 is a program for causing controller 511 to perform the method described in these embodiments. In the controller 511, a file system, a utility program or a device driver may be performed.

구동 장치(520)는 시스템 LSI(512), 메모리(522) 및 구동 메카니즘(523)을 포함한다. 시스템 LSI(521)이 본 발명의 실시예들에서 설명된 방법을 수행하도록 하는 프로그램이 메모리(522)내에 저장될 수 있다. 시스템 LSI(512)는 반도체 칩상에서 형성될 수 있으며 매크로 프로세서를 포함할 수 있다.Drive device 520 includes a system LSI 512, a memory 522, and a drive mechanism 523. A program may be stored in the memory 522 that causes the system LSI 521 to perform the method described in embodiments of the present invention. System LSI 512 may be formed on a semiconductor chip and may include a macro processor.

구동 메카니즘(523)은 광 디스크를 적재하기 위한 메카니즘, 데이터를 디스크에 또는 디스크로 기록/판독하기 위한 픽업(524), 픽업(524)을 이동시키기 위한 트래버스 메카니즘을 포함한다. The drive mechanism 523 includes a mechanism for loading an optical disc, a pickup 524 for recording / reading data to or from the disc, and a traverse mechanism for moving the pickup 524.

전술된 바와 같이, 파일의 데이터는 덮어 쓰여지지 않고도 기록될 수 있으며, 일부 메타데이터는 의사-덮어쓰기를 이용하여 기록될 수 있다. 전형적으로, 파일을 업데이트하는데 필요한 메타데이터의 크기는 파일의 데이터 크기보다 더 작으며, 이어서 덮어쓰여진 데이터의 크기는 감소될 수 있다. 파일 엔트리의 크기는 2048 바이트이며, 디렉토리의 크기는 파일의 수 및 파일명의 길이에 의존한다. 예로서, 각각의 파일명이 12 캐릭터이며 39개의 파일이 디렉토리에 기록되면, 디렉토리 정보가 2048 바이트의 섹터 내에 기록될 수 있다. 그러므로, 판독/기록 동작은 새로운 기록 방법 및 구동 장치를 덮어 쓰여진 기능에 결합시킴으로써 일회-기록형 디스크에 대해서 기본적으로 실현될 수 있다. As mentioned above, the data in the file can be written without being overwritten, and some metadata can be written using pseudo-overwrite. Typically, the size of the metadata needed to update the file is smaller than the data size of the file, and the size of the overwritten data can then be reduced. The size of the file entry is 2048 bytes, and the size of the directory depends on the number of files and the length of the file name. For example, if each file name is 12 characters and 39 files are recorded in the directory, the directory information may be recorded in a 2048 byte sector. Therefore, the read / write operation can be basically realized for the write-once type disc by combining the new recording method and the driving device with the overwritten function.

(실시예 2)(Example 2)

본 실시예는 하나의 파일이 메타데이터 파일 내의 모든 영역을 미리 기록함으로써 판독될 때 액세스 성능을 개선하기 위한 기록 방법을 설명한다.This embodiment describes a recording method for improving access performance when one file is read by pre-recording all areas in the metadata file.

UDF 2.5에서, 메타데이터 파일은, 메타데이터가 볼륨 공간 내에서 분산되지 않도록 하기 위해서, 로컬라이즈된 영역 내의 파일 엔트리 및 디렉토리 정보와 같은 메타데이터를 기록하기 위해서 도입되어, 관리 정보에 효율적으로 액세스하게 된다. 또한 이는 손상된 디스크 상의 메타데이터가 스캔 디스크와 같은 유틸리티에 의해서 수리될 때 성능을 상당히 개선한다. 그러나, 실시예 1에 기술된 바와 같이, 메타데이터 파일 내의 일부 데이터는 데이터가 의사-덮어쓰기 동작에 종속될 필요가 있을 때 필연적으로 여분 영역으로 기록된다. 그러므로, 별도의 액세스 시간이 요구된다. 기록될 파일의 수가 적으면, 별도의 액세스 시간은 심각한 문제가 되지 않는다. 그러나, 디렉토리의 계층이 더 깊어지고 각각의 디렉토리 하의 파일 수가 증가하면, 특히 대용량의 광 디스크의 경우에, 지정된 파일을 액세스하는데 필요한 시간은 문제가 복잡하게 길어진다. In UDF 2.5, metadata files were introduced to record metadata, such as file entries and directory information in localized areas, in order to ensure that metadata is not distributed within volume space, providing efficient access to management information. do. It also significantly improves performance when metadata on a damaged disk is repaired by a utility such as a scan disk. However, as described in Embodiment 1, some data in the metadata file is inevitably written to the spare area when the data needs to be subject to a pseudo-overwrite operation. Therefore, separate access time is required. If the number of files to be recorded is small, separate access time is not a serious problem. However, as the hierarchy of directories gets deeper and the number of files under each directory increases, the time required to access a designated file becomes complicated, especially for large optical discs.

본 실시예에서, 메타데이터 파일 내의 모든 영역은 논리 포맷의 시간에 기록된다. 도 3은 도 2에 도시된 바와 같은 데이터가 기록되는 디스크 상의 영역의 구성을 예시하는 도면이다. 도 3이 도 2와 다른 점은 파일이 기록되기 전에 메타데이터 파일에 대해서 할당된 영역이 기록된다는 것이다. 그러므로, 트랙 #2은 폐쇄된 상태에 놓인다.In this embodiment, all areas in the metadata file are recorded at the time of logical format. FIG. 3 is a diagram illustrating a configuration of an area on a disc on which data as shown in FIG. 2 is recorded. The difference between FIG. 3 and FIG. 2 is that the area allocated for the metadata file is recorded before the file is recorded. Therefore, track # 2 is in a closed state.

데이터-A 파일을 기록하기 위한 과정이 도 3을 참조하여 후술된다. 파일 시스템은 구동 장치에 명령하여 루트 디렉토리가 MA #2에 논리적으로 기록된다. 데이터가 메타데이터 파일 내의 논리적으로 사용 가능한 영역으로 기록된다 할지라도, 메타데이터 파일 내의 영역은 이미 기록된 영역이다. 그러므로, 루트 디렉토리는 의사-덮어쓰기 동작에 의해서 SA #0로 물리적으로 기록된다. 유사하게, 파일 시스템이 명령하여 루트 디렉토리 FE가 MA #0로 논리적으로 기록된다 할지라도, 데이터는 의사-덮어쓰기 동작에 의해서 SA #1로 물리적으로 기록된다. 그후, 데이터-A 파일의 데이터는 기록되지 않은 영역의 시작으로부터 트랙 #3으로 기록된다. 파일 시스템은 기록 동작을 수행하기 전에 기록되지 않은 영역의 시작의 어드레스 정보를 획득한다. 데이터-A 파일이 기록된 위치를 지정하기 위해서, 파일 시스템이 명령하여 데이터-A 파일의 파일 엔트리가 MA #3으로 논리적으로 기록되며 데이터는 의사-덮어쓰기 동작에 의해서 SA #2로 실제로 기록된다.The procedure for recording the data-A file is described below with reference to FIG. The file system commands the drive to write the root directory logically to MA # 2. Although the data is recorded as a logically available area in the metadata file, the area in the metadata file is an already recorded area. Therefore, the root directory is physically written to SA # 0 by a pseudo-overwrite operation. Similarly, data is physically written to SA # 1 by a pseudo-overwrite operation, even though the file system commands to log the root directory FE logically to MA # 0. Then, the data of the data-A file is recorded in the track # 3 from the start of the unrecorded area. The file system acquires the address information of the beginning of the unrecorded area before performing the write operation. To specify the location where the Data-A file is written, the file system instructs the file entries of the Data-A file to be logically written to MA # 3 and the data is actually written to SA # 2 by a pseudo-overwrite operation. .

파일 시스템은, 루트 디렉토리, 루트 디렉토리 FE, 및 데이터-A FE가 메타데이터 파일에 논리적으로 기록되었음을 인식한다. 의사-덮어쓰기 동작이 광 디스크 구동 장치에 의해서 수행됨에 따라서, 논리적 어드레스 정보만이 구동 장치 및 시스템 제어기 사이의 인터페이스를 통해서 전달된다. 이 때, MA #1가 사용 가능하며, MA #2 및 MA #3는 메타데이터 파일 내의 논리적으로 이미 기록된 영역이다. 이 파일 시스템은 명령하여 메티데이터 비트맵이 업데이트되고 기록되어 전술된 상태를 표시하도록 하며, 이어서 대응하는 데이터가 의사-덮어쓰기 동작에 의해서 여분 영역 내의 SA #3으로 기록되게 한다. The file system recognizes that the root directory, root directory FE, and data-A FE are logically recorded in the metadata file. As the pseudo-overwrite operation is performed by the optical disk drive, only logical address information is passed through the interface between the drive and the system controller. At this time, MA # 1 is available, and MA # 2 and MA # 3 are logically recorded areas in the metadata file. This file system instructs the metadata bitmap to be updated and written to indicate the above state, and then the corresponding data is written to SA # 3 in the redundant area by a pseudo-overwrite operation.

본 발명의 기록 방법으로 기록된, 도 3의 데이터-A 파일은 다음과 같이 판독된다. 트랙 #1로부터 볼륨 구조를 판독한 후에, 메타데이터 파일의 파일 엔트리가 판독된다. 그후, 루트 디렉토리의 파일 엔트리, 루트 디렉토리, 및 여분 영역 내의 데이터-A의 파일 엔트리가 판독된다. 이러한 모든 정보는 의사-덮어쓰기 동작에 의해서 여분 영역에 기록되었다. 그러므로, 메타데이터 파일 및 여분 영역 사이에는 액세스가 요구되지 않는다.The data-A file of Fig. 3, recorded by the recording method of the present invention, is read as follows. After reading the volume structure from track # 1, the file entry of the metadata file is read. Thereafter, the file entry of the root directory, the root directory, and the file entry of data-A in the spare area are read. All of this information was recorded in the extra area by a pseudo-overwrite operation. Therefore, no access is required between the metadata file and the extra area.

메타데이터 파일을 도입하는 고유의 목적이 달성된다. 이는 메타데이터 파일이 물리적 파티션에서 논리적으로 할당된다 할지라도, 메타데이터 파일로 기록되는 데이터는 실제로 의사-덮어쓰기 동작에 의해서 여분 영역에 실제로 기록되기 때문이다. 따라서, 데이터는 메타데이터 파일에 결함이 있는지 여부에 관계없이 여분 영역으로 기록된다.A unique purpose of introducing metadata files is achieved. This is because even though the metadata file is logically allocated in the physical partition, the data written to the metadata file is actually written to the spare area by a pseudo-overwrite operation. Thus, data is recorded in the extra area regardless of whether or not there is a defect in the metadata file.

도 6은 구동 장치 및 시스템 제어기 사이에서 명령을 갖는 데이터 전달을 도시하는 도면이다. 특정 명령은 ANSI(아메리칸 네셔널 표준 기구)에서 규정한 표준 또는 INCITS(정보 기술 표준을 위한 국제 위원회) T10 에 의해서 규정된 멀티-미디어 위원회 세트 표준에 적용될 수 있다. 6 is a diagram illustrating data transfer with commands between a drive and a system controller. Certain orders may apply to standards set by the ANSI (American National Standards Organization) or multi-media committee set standards defined by INCITS (International Commission for Information Technology Standards) T10.

단계 S601, S603, S605 및 S607은 시스템 제어기에 의해서 수행된 과정을 표시한다. 단계 S602, S604, S606 및 S608은 구동 장치의 과정을 표시한다.Steps S601, S603, S605, and S607 indicate the process performed by the system controller. Steps S602, S604, S606, and S608 indicate the process of the driving device.

단계 S6012에서, 구동 장치에 적재된 매체의 유형은 시스템 제어기로부터 요청되며 시스템 제어기는 매체가 일회-기록형 의사-덮어쓰기 가능한 디스크임을 인식하며 구동 장치가 의사-덮어쓰기 기능을 지원함을 인식한다.In step S6012, the type of medium loaded in the driving device is requested from the system controller, and the system controller recognizes that the medium is a write-once pseudo-overwriteable disk and recognizes that the driving device supports the pseudo-overwrite function.

단계 S602에서, 구동 장치는 적재된 디스크의 유형에 대한 정보를 판독한다. 구동 장치는 또한 의사-덮어쓰기 기능이 디스크에 대해서 지원되는지 여부를 결정한다. 구동 장치는 시스템 제어기에 이러한 정보 조각을 알린다.In step S602, the driving apparatus reads out information on the type of the loaded disc. The drive also determines whether the pseudo-overwrite function is supported for the disk. The drive informs the system controller of this piece of information.

단계 S603에서, 일회-기록형 디스크의 트랙 정보를 요청함으로써, 시스템 제어기는 구동 장치로부터 정보를 획득한다. 특히, 트랙 #3의 기록되지 않은 영역의 크기, 및 트랙 내의 기록 가능한 마지막 어드레스 또는 트랙 내의 기록되지 않은 마지막 어드레스가 요청된다. 파일의 데이터를 기록하기 위해서, 전술된 정보를 미리 취하는 것이 필요하며, 기록되지 않은 영역이 지정된 크기 또는 그 이상인지가 점검된다. 예를 들어, 트랙 #3에서 부가적인 메타데이터 파일이 할당될 수 있으므로, 상기 지정된 크기는 전체 볼륨이 23GB인 디스크에 대해서 128MB가 될 수 있다. 기록되지 않은 영역의 크기가 지정된 크기보다 작으면, 디스크는 판독 전용 디스크로서 사용된다. 상기 크기가 상기 지정된 크기와 같거나 더 크면, 과정은 다음 단계로 간다. 파일 엔트리의 크기는 2KB이다. 파일 엔트리만이 사용 가능한 영역 128MB에 기록될 때, 기껏해야 65,536 파일에 대응하는 파일 엔트리가 기록될 수 있다. In step S603, by requesting the track information of the write-once type disc, the system controller obtains the information from the drive device. In particular, the size of the unrecorded area of track # 3, and the last recordable address in the track or the last unrecorded address in the track are requested. In order to record the data of the file, it is necessary to take the above-described information in advance, and it is checked whether the unrecorded area is at or above the designated size. For example, since additional metadata files may be allocated in track # 3, the specified size may be 128 MB for a disk whose total volume is 23 GB. If the size of the unrecorded area is smaller than the specified size, the disc is used as a read only disc. If the size is equal to or larger than the specified size, the process goes to the next step. The file entry is 2KB in size. When only a file entry is recorded in the available area 128MB, a file entry corresponding to at most 65,536 files can be recorded.

단계 S604에서, 구동 장치는 트랙의 수, 각 트랙의 위치 정보 또는 개방/폐쇄 상태, 또는 마지막으로 기록된 어드레스 정보와 관련된 정보를, 적재된 디스크의 리드-인 영역, DMA, 또는 TDMA로부터 판독한다. 상기 시스템 제어기에는 이러한 정보의 조각이 알려진다. In step S604, the driving apparatus reads out the number of tracks, the positional information or the open / closed state of each track, or information related to the last recorded address information from the lead-in area of the loaded disc, DMA, or TDMA. . This piece of information is known to the system controller.

단계 S605에서, 구동 장치에는 메타데이터 비트맵 영역을 판독하도록 명령이 전달된다. 결과적으로, 시스템 제어기는 메타데이터 비트맵을 획득하며, 사용 가능한 섹터가 있는지 여부가 점검된다. 사용 가능한 섹터가 있으면, 과정은 다음 단계로 간다. 사용 가능한 섹터가 없으면, 메타데이터 파일에 대한 부가적인 영역이 사용 가능한 섹터를 저장하기 위해서 트랙 #3의 기록되지 않은 영역에 지정된다. 이 점검에서, 시스템 제어기는, 사용 가능한 섹터에 대한 지정된 크기를 이용하여, 메타데이터 파일에 대한 부가적인 영역이 저장되는지 여부를 결정할 수 있으며, 상기 지정된 크기는 예를 들면 128KB가 될 수 있다.In step S605, a command is transmitted to the drive device to read the metadata bitmap area. As a result, the system controller obtains the metadata bitmap and checks whether there are available sectors. If there are available sectors, the process goes to the next step. If no sector is available, an additional area for the metadata file is designated in the unrecorded area of track # 3 to store the available sector. In this check, the system controller may use the specified size for the available sectors to determine whether additional areas for the metadata file are stored, which may be for example 128 KB.

단계 S606에서, 구동 장치는 지정된 영역으로부터 데이터를 판독하며, 시스템 제어기로 데이터를 전달한다.In step S606, the driving device reads data from the designated area and transfers the data to the system controller.

단계 S607에서, 구동 장치에 여분 영역 정보를 요청함으로써, 시스템 제어기는 정보를 획득하며 지정된 또는 그 이상의 크기를 갖는 여분 영역 내의 기록되지 않은 영역이 있는지 여부를 점검한다.In step S607, by requesting the spare device for spare area information, the system controller acquires the information and checks whether there is an unrecorded area in the spare area having a specified or larger size.

예를 들어, 기록되지 않은 영역의 크기가 8MB와 같거나 클 때, 디스크는 기록 가능한 디스크로서 사용될 수 없다. 상기 크기가 8MB보다 작을 때, 상기 디스크는 판독 전용 디스크로서 사용된다. 상기 여분 영역은 의사-덮어쓰기뿐 아니라, 결함 관리로도 사용된다. 그러므로, 부가적으로 기록되지 않은 영역은 디스크 상의 결함 섹터를 복구할 필요가 있다. For example, when the size of the unrecorded area is equal to or larger than 8 MB, the disc cannot be used as a recordable disc. When the size is smaller than 8MB, the disk is used as a read only disk. The redundant area is used for defect management as well as pseudo-overwrite. Therefore, additionally unrecorded areas need to recover defective sectors on the disc.

단계 S608에서, 구동 장치는 여분 영역의 수, 여분 영역의 크기, 및 각 여분 영역 내의 기록되지 않은 영역의 크기를, 적재된 디스크의 리드-인 영역, DMA 또는 TDMA로부터 판독한다. 시스템 제어기에는 이러한 정보 조각이 알려진다. In step S608, the drive apparatus reads out the number of spare areas, the size of the spare areas, and the size of the unrecorded areas in each spare area from the lead-in area, DMA or TDMA of the loaded disc. This piece of information is known to the system controller.

전술된 바와 같이, 데이터는 의사-덮어쓰기 또는 결함 관리에 의해서 여분 영역 내의 기록되지 않은 영역에 기록된다. 본 발명의 일회-기록형 디스크 구동 장치는 매체의 유형 정보는 물론이고 자유 영역 정보를 시스템 제어기로 전송하기 위한 기능을 갖는데, 이는 구동 장치가 파일 시스템이 예상하는 위치와 다를 수 있는 어떤 위치에 데이터를 저장하기 때문이다. 파일이 기록될 때 마다 이러한 자유 영역 정보를 요청하므로서, 시스템 제어기가 파일이 기록될 수 있는지 여부를 결정하며, 그 결과, 시스템 제어기는 메타데이터 파일 내의 관련된 데이터로 파일을 정확히 기록할 수 있다. As described above, data is recorded in an unrecorded area in the redundant area by pseudo-overwrite or defect management. The write-once disc drive device of the present invention has a function for transmitting not only the type information of the medium but also the free area information to the system controller, where the drive device has data at a position that may be different from the location expected by the file system. Because it saves. By requesting this free area information each time a file is written, the system controller determines whether the file can be written and, as a result, the system controller can accurately record the file with the relevant data in the metadata file.

(실시예 3)(Example 3)

이전 실시예 2에서, 메타데이터는 메타데이터를 검색하기 위한 액세스 시간을 감소시키기 위해서 여분 영역으로 재맵핑된다. 이를 위해서, 공간의 크기가 그 후에 확장될 수 없으므로, 충분한 크기를 갖는 여분 영역이 일회-기록형 디스크 상에서 포매팅 시간에 지정되어야 한다. 그러나, 사용자는 디스크 상에 기록될 파일의 수 및 파일의 크기를 알 수 없으며, 따라서, 포매팅 시간에 여분 영역의 적당한 크기를 결정하는 것이 어렵다. 모든 여분 영역이 사용되면, 기록되지 않은 영역이 사용자 데이터 영역에 남는다 할지라도, 파일이 디스크 상에서 기록될 수 없다. 한편, 더 큰 여분 영역이 지정되면, 모든 사용자 데이터 영역이 사용된 후에, 사용되지 않은 영역이 여분 영역에 남을 수도 있다.In the previous embodiment 2, the metadata is remapped to extra areas to reduce the access time for retrieving the metadata. For this purpose, since the size of the space cannot be expanded afterwards, an extra area with sufficient size must be specified at the formatting time on the write-once disc. However, the user cannot know the number of files and the size of the files to be recorded on the disk, and therefore, it is difficult to determine the proper size of the spare area at the formatting time. If all spare areas are used, even if an unrecorded area remains in the user data area, the file cannot be recorded on the disc. On the other hand, if a larger spare area is specified, after all the user data areas are used, unused areas may remain in the spare area.

더욱이, 실시예 2의 예에서는, 실시예 1 보다 재맵핑 테이블 내에서 더 많은 엔트리가 사용될 수 있다. 이것은 더 많은 테이블을 처리할 수 있는 구동 장치가 재맵핑된 섹터를 검색하도록 요청한다. 파일 시스템 구동기는 파일이 기록될 때마다 여분 영역 내의 기록되지 않은 영역의 크기를 점검해야 하며, 따라서 공간 관리는 수행하기 어렵게 된다.Moreover, in the example of Embodiment 2, more entries may be used in the remapping table than Embodiment 1. This requires a drive that can process more tables to retrieve the remapped sectors. The file system driver must check the size of the unrecorded area in the spare area every time a file is written, thus making space management difficult.

따라서, 이하 여분 영역 내에서는 물론이고 사용자 데이터 영역 내의 데이터를 교체하기 위한 지시가 설명되는 기록 방법이 기술된다.Therefore, the following describes a recording method in which an instruction for replacing data in the user data area as well as in the spare area is described.

먼저, 본 발명의 아이디어가 설명된다.First, the idea of the present invention is explained.

장치들은 새로운 데이터를 다음의 기록 가능한 블록에 기록하고 구동 장치에 의해서 저장된 테이블을 재맵핑하는데 엔트리를 생성함으로써 기존의 데이터의 덮어쓰기를 처리한다. 파일 시스템은 동일한 논리 블록 번호를 계속해서 사용하고, 구동 장치는 테이블 내의 엔트리에 기초한 새로운 위치에 요청을 재맵핑한다. 이 테이블의 크기를 감소시키기 위해서, 파일 시스템은 자유롭게 된 후에는 블록을 재사용하지 않는다. 즉, 파일 시스템은 일회-기록형 매체를 사용하고 있음을 의식해야 하며, 따라서 그 동작을 조절해야 한다.The devices handle the overwriting of existing data by writing new data to the next recordable block and creating an entry to remap the table stored by the drive. The file system continues to use the same logical block number, and the drive remaps the request to a new location based on the entry in the table. To reduce the size of this table, the file system does not reuse blocks after it is freed. In other words, the file system must be aware that it is using a write-once medium, and therefore must adjust its behavior.

상기 장치는 재맵핑된 데이터를 저장하기 위해서 정상적인 볼륨 공간을 사용한다. 즉, 원래 블록이 존재하는 것과 같은 트랙 내의 다음번 기록 가능한 위치에 기록한다. 상기 파일 시스템은 새로운 공간을 할당할 필요가 있을 때 마다 다음번 기록 가능한 블록에 대해서 장치에 질의한다. 따라서, 파일 시스템 및 장치는 기록을 위한 동일한 공간을 공유하고 있다. The device uses normal volume space to store the remapped data. That is, it records at the next recordable position in the same track as the original block exists. The file system queries the device for the next recordable block whenever it needs to allocate new space. Thus, the file system and the device share the same space for recording.

두번째로, 전술된 아이디어의 효과는 도 7A-7D, 8A-8B 및 9를 이용하여 설명된다.Secondly, the effects of the above-described idea are explained using Figs. 7A-7D, 8A-8B and 9.

도 7A-7D 및 8A-8B는 사용자 데이터 영역 내의 블록을 도시한다. 본원에서는, 일반적으로 아이디어를 설명하기 위해서 섹터보다는 블록이 사용된다. 사용자 데이터 영역은 파일 시스템에 의해서 볼륨 공간으로서 인식된다. 각각의 블록에 대해서, 물리적 블록 어드레스(이하 PBA로 기술됨) 및 논리적 블록 어드레스(이하 LBA로 기술됨)이 지정되어 PBA 및 LBA 사이의 대응성이 미리 결정되는데, 한 예로서 PBA는 번호 100으로부터 지정되며 LBA는 번호 0로부터 지정된다.7A-7D and 8A-8B show blocks in the user data area. In the present application, blocks are generally used rather than sectors to illustrate the idea. The user data area is recognized as a volume space by the file system. For each block, a physical block address (hereinafter referred to as PBA) and a logical block address (hereinafter referred to as LBA) are specified so that the correspondence between PBA and LBA is predetermined, as an example PBA from number 100. LBA is specified from number 0.

도 9는 구동 장치에 의해서 저장된 재맵핑 테이블의 데이터 구조를 도시한다. 테이블은 엔트리를 갖으며, 각각의 엔트리는 원래의 어드레스 및 재맵핑 어드레스를 지정한다. 이 데이터 구조는 기록 가능한 디스크에 대한 결함 관리에 사용되는 결함 리스트를 갖는 공통 데이터 구조가 될 수 있다. 9 shows the data structure of the remapping table stored by the drive device. The table has entries, each entry specifying an original address and a remapping address. This data structure can be a common data structure having a defect list used for defect management for a recordable disc.

전형적으로, 전술된 아이디어는, 기록 가능한 디스크에 적용될 때 모순이 있으므로 효과가 없는 것으로 여겨졌다. Typically, the ideas described above were considered ineffective because they were contradictory when applied to recordable discs.

도 7A에 도시된 바와 같이, 기록 가능한 디스크는 여분 영역을 갖는데, PBA는 예를 들면, 번호 200으로부터 지정된다. 기록 가능한 디스크에 대한 일반 경우에, 데이터가 LBA 2 및 5의 블록에 기록되고 이러한 블록에 결함이 있으면, 이러한 데이터는 선형 교체 알고리즘을 이용하여 여분 영역 내의 블록 PBA 200 및 201로 저장된다. 이는 LBA 2 및 5가 PBA 200 및 201에 재지정됨을 의미한다. 따라서, 볼륨 공간 내의 일부 블록이 결함으로 인해서 사용 불가능한 블록이 될 때, 여분 영역 내의 양호한 블록으로 보상된다.As shown in Fig. 7A, the recordable disc has a spare area, where the PBA is designated from the number 200, for example. In the general case for a recordable disc, if data is written to blocks of LBA 2 and 5 and these blocks are defective, this data is stored into blocks PBA 200 and 201 in the redundant area using a linear replacement algorithm. This means that LBA 2 and 5 are reassigned to PBA 200 and 201. Thus, when some blocks in the volume space become unusable blocks due to defects, they are compensated for by good blocks in the spare area.

전술된 아이디어가 기록 가능한 디스크로 적용되었으면, 도 7B에 도시된 바와 같이, LBA 2 및 5를 기록하기 위한 데이터가, 사용자 데이터 영역 내의 블록, 예를 들어, PBA 103 및 107으로 저장된다. 그러나, 이러한 재맵핑된 블록인 PBA 103 및 107은 LBA 3 및 7에 요청된 데이터를 저장하기 위해서 사용될 수 없는데, 이는 이러한 블록들이 LBA 2 및 5로서 교체되기 때문이다. 이러한 상황은 결함이 없는 논리적 공간을 제공한다는 가정을 위반하는 것으로서, 임의의 데이터가 파일 시스템에 의해서 기록될 때, 기록 가능한 디스크 상의 데이터 볼륨이 감소되지 않는다는 가정을 말한다. 더욱이, 이러한 상황에서, 구동 장치는 데이터를 재맵핑하기 위한 위치를 결정할 수 없는데, 왜냐하면 파일 시스템이 데이터를 랜덤하게 기록할 수 있으며 파일 시스템만이 기록을 위한 사용 가능한 영역을 지정하는 공간 비트맵을 조절하기 때문이다. If the above-described idea has been applied to a recordable disc, as shown in Fig. 7B, data for recording LBAs 2 and 5 are stored in blocks in the user data area, for example, PBAs 103 and 107. However, these remapped blocks, PBA 103 and 107, cannot be used to store the data requested in LBA 3 and 7, since these blocks are replaced as LBA 2 and 5. This situation violates the assumption that it provides a logical space free of defects and refers to the assumption that when any data is written by the file system, the data volume on the recordable disc is not reduced. Moreover, in this situation, the drive cannot determine a location for remapping the data, because the file system can randomly record the data and only the file system can create a spatial bitmap that specifies the available area for recording. Because it is controlled.

실시예 1에서 설명된 바와 같이, 선형 교체 알고리즘은 일회-기록형 디스크에도 적용될 수 있다. 도 7C에 도시된 바와 같이, 여분 영역은 미리 일회-기록형 디스크에 지정된다. 블록이 덮어쓰여지거나 결함으로 인해서 기록될 수 없으면, 블록은 여분 영역 내의 블록으로 보상된다. 예로서, 데이터 D1이 LBA 2에 기록될 때, 블록이 결함이 있으면, 이 블록은 PBA 200 블록으로 보상된다. LBA 5가 데이터 D2에 의해서 기록될 때, PBA 105가 이미 기록되었다 할지라도, 데이터가 PBA 201에 저장된다.As described in Example 1, the linear replacement algorithm can also be applied to the write-once disc. As shown in Fig. 7C, the spare area is assigned to the one-time recording disc in advance. If a block cannot be overwritten or written due to a defect, the block is compensated for by a block in the spare area. For example, when data D1 is written to LBA 2, if the block is defective, this block is compensated with a PBA 200 block. When LBA 5 is written by data D2, data is stored in PBA 201 even though PBA 105 has already been recorded.

덮어쓰여지며 결함이 있는 블록이 볼륨 공간의 외측에 속하는 또 다른 블록으로 보상된다고 가정해 본다. 이러한 아이디어는 재기록 가능한 디스크에 대해서뿐만 아니라, 일회-기록형 디스크에 대해서도 모순이 될 것 같다.Suppose that an overwritten and defective block is compensated for by another block that falls outside of the volume space. This idea is likely to be contradictory not only for rewritable discs, but also for single-writable discs.

그러나, 본 발명에 따라서, 일회-기록형 디스크는 재기록 가능한 디스크와 같이 결함이 없는 논리적 공간을 제공하는 것은 보장하지 못하는데, 왜냐하면 일회-기록형 디스크 상의 블록이 한번 기록되면, 블록 내의 데이터를 변경하기는 것이 불가능하기 때문이다. 그리고 일회-기록형 디스크에 대한 새로운 파일 시스템은 순차적인 기록을 이용하여 데이터를 기록한다. 이 점에서, 이러한 아이디어는 도 7D에 도시된 바와 같은 일회-기록형 디스크에 대해서 효과적이다. 데이터 D1, D2 및 D3는 LBA 0, 1 및 2로 순차적으로 기록되며, 이 때 블록 PBA 102이 결함이 있으면, 데이터는 다음 블록 PBA 103에 기록될 수 있다. 더욱이, 데이터 D4, D5 및 D6는 LBA 4, 5 및 6에 순차적으로 기록되며, 이어서 업데이트된 데이터 D5'는 LBA 5에 덮어쓰여질 수 있다. 이러한 덮어쓰기에서, 데이터는 다음에 기록 가능한 위치인 블록 PBA 107로 저장된다. 따라서, 이러한 아이디어는 논리적 블록 번호의 지정을 변경할 필요가 없는데, 왜냐하면 덮어쓰기가 필요할 때마다, 사용자 데이터 영역이 고갈될 때까지 다음의 기록 가능한 위치로 기록될 수 있기 때문이다. 재기록 가능한 디스크의 경우에, 데이터는 재맵핑에 사용된 블록으로 기록될 수 없지만, 본 발명의 일회-기록형 디스크에 문제가 없다. 예를 들어, 데이터는 PBA 108에 저장되며 PBA 107의 원래의 어드레스로부터 PBA 108의 재맵핑 어드레스로 이러한 재맵핑을 지정하기 위한 엔트리는 재맵핑 테이블에 부가된다.However, according to the present invention, a write once disc does not guarantee to provide a defect free logical space, such as a rewritable disc, because once a block on a write once disc has been written, it is possible to change the data in the block. Because it is impossible. And new file systems for write-once discs record data using sequential writes. In this respect, this idea is effective for the write-once disc as shown in Fig. 7D. Data D1, D2, and D3 are sequentially recorded as LBAs 0, 1, and 2, and if block PBA 102 is defective, data can be written to the next block PBA 103. Furthermore, data D4, D5 and D6 are written sequentially to LBA 4, 5 and 6, and then updated data D5 'can be overwritten to LBA 5. In this overwriting, data is stored in block PBA 107 which is the next recordable position. Thus, this idea does not require changing the designation of logical block numbers, because each time an overwrite is required, it can be written to the next recordable position until the user data area is exhausted. In the case of a rewritable disc, data cannot be written to the block used for remapping, but there is no problem with the write-once disc of the present invention. For example, data is stored in PBA 108 and an entry for specifying such remapping from the original address of PBA 107 to the remapping address of PBA 108 is added to the remapping table.

전술된 바와 같이, 본 발명에 따라서, 논리적 블록 어드레스가 더블 블로킹일지라도, 구동 장치는 새로운 물리적 블록 어드레스를 NWA로 지정함으로써 데이터를 기록할 수 있다.As described above, according to the present invention, even if the logical block address is double blocking, the driving device can write data by designating a new physical block address as NWA.

전술된 아이디어에 대해서 실제적인 또 다른 중요한 점은 파일 시스템으로부터 구동 장치로 다음의 기록 가능한 어드레스를 질의함으로써 재맵핑 테이블에 저장된 엔트리를 구하는 것이다. 도 8A 및 8B는 테이블의 크기를 감소시키는 메카니즘을 도시한다. 본 도면에서, 블록 PBA 100 내지 105는 미리 기록된다. 도 8A에 도시된 바와 같이, 데이터 D1이 LBA 1에 기록될 때, 데이터는 다음의 기록 가능한 위치 PBA 106에 저장되며 PBA 101를 지정하기 위해 부가되는 하나의 엔트리는 PBA 106에 재맵핑된다. 이 시점에, 파일 시스템은 데이터가 재맵핑되는 곳을 알지 못한다. 파일 시스템이 새로운 데이터 D2를 이전의 다음으로 기록 가능한 위치 LBA 6에 기록하도록 명령하면, 데이터는 다음 블록 PBA 107에 저장되며 하나의 엔트리가 부가된다. 본 발명에서, 파일 시스템은 임의의 데이터가 덮어쓰기를 제외하고 기록되기 전에 업데이트된 다음의 기록 가능한 어드레스를 점검하며, 도 8B의 LBA 7인 업데이트된 다음의 기록 가능한 어드레스에 데이터를 기록하도록 명령한다. 따라서, 부가적인 엔트리가 필요하지 않게 된다. 파일 시스템은 또한, 동일 이유로 덮어써야하는 요건을 제외하고는, 소거된 파일 영역으로 데이터를 할당하지 않는다. Another practical point about the above-mentioned idea is to get the entries stored in the remapping table by querying the next writable address from the file system to the drive. 8A and 8B illustrate a mechanism for reducing the size of the table. In this figure, blocks PBA 100 to 105 are previously recorded. As shown in Fig. 8A, when data D1 is written to LBA 1, the data is stored in the next recordable position PBA 106 and one entry added to designate PBA 101 is remapped to PBA 106. At this point, the file system does not know where the data is being remapped. If the file system instructs the new data D2 to be written to the previous next recordable position LBA 6, the data is stored in the next block PBA 107 and one entry is added. In the present invention, the file system checks the next writable address updated before any data is written except for overwriting, and instructs the data to be written to the next writable address LBA 7 of FIG. 8B. . Thus, no additional entry is needed. The file system also does not allocate data to the erased file area, except for the requirement to be overwritten for the same reason.

더우기, 파일 시스템에 의한 공간 관리는 간소화되는데, 왜냐하면 파일 시스템이 기록을 위한 새로운 영역을 할당하기 위해서 각각의 트랙 내의 NWA만을 사용하기 때문이다. 이것은 파일 시스템이 여분 영역 내에서 점검되지 않을 수 있으며, 공간 비트맵, 특히 메타데이터 비트맵을 기록하지 않을 수 있음을 의미한다. Moreover, space management by the file system is simplified because the file system only uses the NWA in each track to allocate a new area for recording. This means that the file system may not be checked in the spare area and may not record spatial bitmaps, especially metadata bitmaps.

상기 영역을 재맵핑하기 위한 유닛은 복수의 물리적 섹터를 포함하는 ECC 블록이 될 수 있다. 물리적 섹터가 재맵핑될 때, 물리적 섹터가 속하는 ECC 블록 내의 모든 물리적 섹터가 재맵핑된다. 이 경우에, 원래의 어드레스 및 재맵핑 테이블의 엔트리내의 재맵핑 어드레스는 ECC 블록의 출발 섹터의 물리적 어드레스에 의해서 지정된다. 어드레싱 가능한 유닛으로서, 물리적 블록 및 논리적 블록이 물리적 섹터 및 논리적 섹터가 될 수 있다. 하나의 섹터가 새롭게 기록된다 할지라도, 섹터를 포함하는 하나의 ECC 블록이 기록되며, 이어서 NWA가 다음 ECC 블록의 출발 섹터로 이동된다. 그러므로, 여러 데이터가 기록될 때, 이러한 데이터가 할당되어 이러한 데이터는 동일 ECC 블록으로 기록된다. The unit for remapping the region may be an ECC block including a plurality of physical sectors. When a physical sector is remapped, all physical sectors in the ECC block to which the physical sector belongs are remapped. In this case, the original address and the remapping address in the entry of the remapping table are specified by the physical address of the starting sector of the ECC block. As addressable units, physical blocks and logical blocks can be physical sectors and logical sectors. Even if one sector is newly recorded, one ECC block including the sector is written, and then the NWA is moved to the starting sector of the next ECC block. Therefore, when several data are recorded, such data is allocated so that such data is recorded in the same ECC block.

본 발명에 의해서, 메타데이터 파티션을 이용하는 잇점은 일회-기록형 디스크 상에서 사용하기 위해서 제공될 수 있다. 먼저, 덮어쓰여질 데이터가 메타데이터 기록을 위한 트랙 내에 재맵핑되며, 이어서 메타데이터를 검색하기 위한 액세스가 로컬라이즈되며 검색 성능이 개선된다. 보통은, 덮어 쓰여진 데이터는 트랙이 기록되지 않은 섹터를 갖는한 동일 트랙에 저장된다. 트랙이 데이터 기록에 의해서 고갈될 때, 덮어 쓰여진 데이터는 다른 트랙으로 저장될 수 있는데, 이는 동일 트랙 내의 다른 기록되지 않은 물리적 블록으로 데이터를 기록하기 위한 우선권이 주어지기 때문이다. 두번째로, 메타데이터 파일이 내구성을 개선하도록 기록될 수 있는데, 메타데이터 미러 파일에 대한 부가적인 트랙이 지정될 때 기록될 수 있다. With the present invention, the advantage of using metadata partitions can be provided for use on write-once discs. First, the data to be overwritten is remapped in the track for metadata recording, then access to retrieve metadata is localized and search performance is improved. Normally, overwritten data is stored in the same track as long as the track has unsectored sectors. When a track is depleted by data recording, the overwritten data can be stored in another track, since priority is given to writing the data to other unrecorded physical blocks within the same track. Secondly, the metadata file can be recorded to improve durability, which can be recorded when additional tracks for the metadata mirror file are specified.

이러한 이점들은 다음 아이디어로부터 나온다. 즉, 데이터를 기록할 때, 파일 시스템은 데이터의 유형에 기초하여 어떤 트랙을 사용할지를 결정한다. 이어서 그것은 이러한 트랙에 대한 다음 기록 점의 위치를 결정하기 위해 장치에 질의한다. 트랙이 꽉 차게 되면, 파일 시스템은 임의로 상이한 트랙을 결정할 수 있다. These advantages come from the following idea. That is, when recording data, the file system determines which track to use based on the type of data. It then queries the device to determine the location of the next recording point for this track. When a track is full, the file system can arbitrarily determine different tracks.

일례로서, 두 개의 트랙으로 포맷되는 매체의 조각을 고려해 본다. 제 1 트랙은 메타데이터를 저장하도록 사용된다. 제 2 트랙은 파일 데이터를 저장하도록 사용된다. 파일 시스템이 메타데이터를 기록할 필요가 있을 때, 장치에 제 1 트랙의 기록 지점을 질의하며 메타데이터를 저장하기 위한 그 위치를 사용한다. 파일 시스템이 파일 데이터를 기록할 필요가 있으면, 장치에 제 2 트랙의 기록 지점을 질의하며 파일 데이터를 저장하기 위한 그 위치를 사용한다. 어떤 트랙이 꽉 차게 되든, 파일 시스템은 다른 트랙 내에 존재할 수 있는 자유 공간을 사용하도록 결정할 수 있다. 이것은 파일 시스템이 메타데이터가 함께 그룹화하도록 하며 가능한 한 많은 파일 데이터를 함께 그룹화하도록 한다. 데이터를 함께 그룹화함으로써, 단편화가 감소한다.As an example, consider a piece of media that is formatted as two tracks. The first track is used to store metadata. The second track is used to store file data. When the file system needs to record the metadata, it queries the device for the recording point of the first track and uses that location for storing the metadata. If the file system needs to record file data, it queries the device for the recording point of the second track and uses that location for storing the file data. Whichever track becomes full, the file system can decide to use free space that can exist within other tracks. This allows the file system to group metadata together and to group as much file data together as possible. By grouping the data together, fragmentation is reduced.

이러한 아이디어는 유니버설 디스크 포맷(UDF) 파일 시스템에 의해서 사용될 수 있다. 버전 2.50의 일부 장점이 일회-기록형 매체상에서 사용되도록 할 수 있다. 현재로서, UDF 2.50은 재기록 가능한 매체를 요구하는데, 이는 메타데이터가 저장되는 방식으로 인한 것이다. UDF 2.50이 개발된 주된 이유중 하나는 파일 데이터와는 별도로, 메타데이터를 함께 그룹화하기 위한 것이었다. 이러한 장점은 일회-기록형 매체에서는 상실된다. 이러한 아이디어를 사용함으로써, 이러한 장점은 일회-기록형 매체 상에서 실현될 수 있다.This idea can be used by the Universal Disc Format (UDF) file system. Some of the advantages of version 2.50 can be used on write-once media. At the present time, UDF 2.50 requires rewritable media due to the way metadata is stored. One of the main reasons why UDF 2.50 was developed was to group metadata together, apart from file data. This advantage is lost in write-once media. By using this idea, this advantage can be realized on a write-once medium.

이러한 아이디어는 특정 목적으로 유사한 데이터를 함께 그룹화하기 위해서 사용될 수도 있다. 예를 들어, 오디오는 하나의 트랙에 저장되고 비디오는 다른 트랙에 저장될 수 있다. 또는, 하나의 트랙에 정지 화상이 저장되며 비디오는 다른 트랙에 저장될 수 있다. 여기서 장점은 상이한 업데이트 패턴을 갖는 데이터를 분리하는 것이다. 사용자가 자주 화상을 생성, 편집, 및 소거하면, 이러한 데이터는 연속해서 추가되는 비디오로부터 분리된 채 유지될 수 있다. 이것은 화상 데이터가 비디오 스트림과 상호 혼합되는 것을 방지한다. This idea may be used to group similar data together for a specific purpose. For example, audio may be stored on one track and video may be stored on another track. Alternatively, the still picture may be stored in one track and the video may be stored in another track. The advantage here is to separate the data with different update patterns. If a user frequently creates, edits, and erases an image, this data can remain separated from the video that is added continuously. This prevents picture data from intermixing with the video stream.

두 개의 트랙이 예비되면 특별한 할당 방법이 사용될 수 있다. 이 방법은 하나의 고정된 크기의 예비된 트랙을 생성하며 제 2 트랙을 개방된 상태로서 남겨둔다. 제 1 트랙이 꽉차게 되면, 제 2 트랙은 현재 기록 지점에서 폐쇄되며, 두 개의 새로운 트랙이 생성된다. 이러한 새로운 트랙은 제 1의 두 개의 트랙과 같은 패턴을 따른다. 이것은 디스크가 꽉 차게 될 때 까지 계속될 수 있다. 이것은 파일 시스템이 큰 덩어리로 같은 데이터로 함께 그룹화하도록 한다. 예를 들어, 이것은, 메타데이터가 기록 가능한 매체 상에 UDF 2.50으로 저장되는 방식과 유사한 방식으로 일회-기록형 매체 상에서 큰 덩어리로 저장되게 한다.If two tracks are reserved, a special allocation method can be used. This method creates a reserved track of one fixed size and leaves the second track open. When the first track becomes full, the second track is closed at the current recording point and two new tracks are created. This new track follows the same pattern as the first two tracks. This can continue until the disk is full. This allows file systems to be grouped together into the same data in large chunks. For example, this allows the metadata to be stored in large chunks on a write-once medium in a manner similar to the way that metadata is stored in UDF 2.50 on a recordable medium.

도 10A-10E는 전술된 멀티-트랙 기록 전략을 설명하기 위한 영역의 구성을 예시하는 도면이다. 특별한 할당 방법이 도 10A-10E에 도시된다.10A-10E are diagrams illustrating a configuration of an area for explaining the multi-track recording strategy described above. A special allocation method is shown in FIGS. 10A-10E.

도 10A에서, 메타데이터 및 파일 데이터를 기록하기 위해서 두 개의 트랙이 예비된다. 메타데이터를 위한 제 1 트랙이 고갈될 때, 파일 시스템은 구동 장치가 도 10B에 도시된 바와 같은 데이터를 위한 트랙 내의 새로운 트랙을 지정하도록 요청한다. 그후 메타데이터 기록을 위한 새로운 트랙 #3 이 도 10A내의 트랙 #2내에서 예비되며, 나머지 트랙 #4은 데이터 기록을 위해서 사용될 수 있다. 트랙#1 및 #2에 더이상 임의의 NWA가 존재하지 않음이 명백하다. 트랙 #3 및 #4이 새롭게 할당됨에 따라서, NWA는 새롭게 지정된 트랙 내의 출발 어드레스에서 사용 가능하다. 도 10C에서, 메타데이터 및 파일 데이터는 새로운 트랙, 트랙 #3 및 #4로 기록될 수 있다. In Fig. 10A, two tracks are reserved for recording metadata and file data. When the first track for metadata is exhausted, the file system requests the drive to specify a new track in the track for data as shown in FIG. 10B. New track # 3 for metadata recording is then reserved in track # 2 in FIG. 10A, and the remaining track # 4 can be used for data recording. It is evident that there are no longer any NWAs in tracks # 1 and # 2. As tracks # 3 and # 4 are newly assigned, the NWA is available at the starting address in the newly designated track. In FIG. 10C, metadata and file data can be recorded as new tracks, tracks # 3 and # 4.

도 10D에서, 두 개의 트랙이 메타데이터 및 파일 데이터를 기록하도록 예비된다. 이 경우에, 메타데이터 기록을 위한 트랙 #1은 필요로 하는한 메타데이터를 기록하기 위해서 도 10A에 기술된 트랙보다 더 크다. 데이터를 위한 제 2 트랙이 고갈될 때, 도 10E에 도시된 바와 같이, 파일 시스템은 구동 장치가 메타데이터에 대한 트랙의 후방에서 새로운 트랙을 지정하는 것을 요청하여, 제 1 트랙 및 제 2 트랙이 기록되지 않은 영역을 갖는다. 그후 데이터 기록을 위한 새로운 트랙 #2이 도 10D의 트랙 #1에 예비되며, 따라서 더 짧은 트랙이 트랙 #1로서 할당된다. 트랙 #2이 예비된 후에, 도 10D내의 트랙 #2의 트랙 수가 도 10E내의 트랙 #3으로서 변경된다. 트랙 #3내에는 NWA가 더 이상 존재하지 않는다. 트랙 #2이 새롭게 할당되므로, NWA는 새롭게 예비된 트랙 내의 출발 어드레스에서 사용이 가능하다. 도 10E에서, 메타데이터 및 파일 데이터는 새로운 트랙, 트랙 #1 및 #2로 기록될 수 있다. In Fig. 10D, two tracks are reserved for recording metadata and file data. In this case, track # 1 for metadata recording is larger than the track described in Fig. 10A to record metadata as needed. When the second track for data is depleted, as shown in FIG. 10E, the file system requests the drive to designate a new track behind the track for metadata so that the first track and the second track can be deleted. Has an unrecorded area. A new track # 2 for data recording is then reserved for track # 1 in FIG. 10D, so that a shorter track is assigned as track # 1. After the track # 2 is reserved, the number of tracks of the track # 2 in FIG. 10D is changed to the track # 3 in FIG. 10E. NWA no longer exists in track # 3. Since track # 2 is newly assigned, the NWA can be used at the starting address in the newly reserved track. In Fig. 10E, metadata and file data can be recorded as new tracks, tracks # 1 and # 2.

본원에서, 덮어쓰기를 위한 잠재력은 디스크의 볼륨이 23GB(=23 x 1024^3 바이트)인 예시된 경우에 대해서 추정되며, ECC 블록은 32 섹터로 이루어지며, 섹터 크기는 2KB(=2 x1024 바이트)이다. 디스크 상에 기록된 파일의 평균 크기가 128KB이며 10 파일이 평균적으로 디렉토리에 저장되면, 약 188,000 파일 및 18,800 디렉토리가 디스크 상에 기록될 수 있다. 파일 시스템이 파일 엔트리를 밀집시켜서 ECC 블록으로 업데이트되게 할 때, 약 6,400 엔트리가 재맵핑 테이블에 요구된다. 테이블의 크기는 엔트리 크기가 8 바이트일 때 약 50KB가 된다. 구동 장치가 최대 크기로서 재맵핑 테이블의 256KB를 처리할 수 있을 때, 188,000 파일 및 18,800 디렉토리가 랜덤하게 기록될 수 있다. 따라서, 본 발명은 블루 레이저 기술을 이용하여 차세대 일회-기록형 광 디스크에 실용화된다. Here, the potential for overwriting is estimated for the illustrated case where the volume of the disk is 23 GB (= 23 x 1024 ^ 3 bytes), the ECC block consists of 32 sectors, and the sector size is 2 KB (= 2 x1024 bytes). )to be. If the average size of the file recorded on the disk is 128 KB and 10 files are stored in the directory on average, about 188,000 files and 18,800 directories can be recorded on the disk. When the file system densifies file entries to be updated with ECC blocks, about 6,400 entries are required for the remapping table. The size of the table is about 50KB when the entry size is 8 bytes. When the drive can handle 256 KB of the remapping table as the maximum size, 188,000 files and 18,800 directories can be recorded at random. Therefore, the present invention is applied to the next generation write-once optical disc using blue laser technology.

전술된 아이디어를 UDF 기반 새로운 파일 시스템 및 차세대 일회-기록형 디스크에 적용하는 예들이 기술된다.Examples of applying the above ideas to UDF-based new file systems and next-generation write-once discs are described.

도 11은 전술된 재맵핑을 설명하기 위한 영역의 구성을 예시하는 도면이다. 실시예 1에 설명된 영역 레이아웃 역시 본 실시예에서 사용된다.11 is a diagram illustrating a configuration of an area for explaining the above-described remapping. The area layout described in Embodiment 1 is also used in this embodiment.

결함 관리 영역(DMA)은 결함 리스트가 기록되며 시간적인 DMA(TDMA)가 하나의 영역인 영역으로서, 여기에 시간적인 결함 리스트가 기록된다. 재맵핑 테이블은 결함 리스트 및 시간적인 결함 리스트를 갖는 DMA 및 TDMA에 기록될 수 있다. 여기서, 결함 리스트 및 시간적인 결함 리스트는 동일한 데이터 구조를 이용하여 결함 관리 및 재맵핑 정보에 의해서 교체 정보를 지정하도록 사용될 수 있다. 이는 구동 장치의 실행을 간략하게 하는데, 왜냐하면 엔트리의 해석이 결함 관리 및 의사-덮어쓰기에 대해서 공통적이기 때문이다. 엔트리가 재맵핑 정보를 지정할 때, 테이블 내의 엔트리는 재맵핑될 블록의 어드레스와 재맵핑된 블록의 어드레스 사이의 대응성을 표시한다.The defect management area (DMA) is an area in which a defect list is recorded and where temporal DMA (TDMA) is one area, where a temporal defect list is recorded. The remapping table can be written to DMA and TDMA with a defect list and a temporal defect list. Here, the defect list and the temporal defect list can be used to specify replacement information by defect management and remapping information using the same data structure. This simplifies the implementation of the drive because the interpretation of entries is common for defect management and pseudo-overwrite. When an entry specifies remapping information, the entry in the table indicates the correspondence between the address of the block to be remapped and the address of the remapped block.

여분 영역은 볼륨 공간으로부터 지정되며, 여분 영역 내의 어드레스는 SA (여분 영역 어드레스)에 의해서 표시된다.The spare area is designated from the volume space, and the address in the spare area is indicated by SA (extra area address).

볼륨 공간은 세개의 트랙을 포함하며, 각각에는 데이터가 순차적으로 기록된다. 트랙 내의 기록되지 않은 영역의 출발 어드레스는 다음의 기록 가능한 어드레스(NWA)로서 관리된다. 트랙의 상태는 새로운 용어로 설명되는데, 이러한 트랙 내의 데이터를 표시하기 위해서 "사용된" 및 "예비된"은 이러한 트랙 내의 데이터가 덮어쓰여질 수 있으며 데이터가 예비된 트랙 내에서 재맵핑될 수 있음을 나태낸다. 사용된 트랙은 트랙 내의 모든 섹터가 데이터 기록을 위해서 사용되었음을 의미한다. 예비 트랙은 기록되지 않은 섹터가 있음을 의미한다. 다시 말해서, 데이터가 예비된 트랙으로 증가하여 기록될 수 있다. 볼륨 구조가 이전에 기록되었으므로, 트랙 #1은 사용된 트랙이다. 트랙 #2은 메타데이터 기록을 위해서 지정된 예비 트랙이다. 트랙 #3은 사용자 데이터 기록을 위해서 지정된 예비 트랙이다.The volume space includes three tracks, each of which records data sequentially. The start address of the unrecorded area in the track is managed as the next recordable address (NWA). The state of a track is described in new terms, "used" and "prepared" to indicate the data in these tracks means that the data in these tracks can be overwritten and the data can be remapped within the reserved track. Appear. Used track means that all sectors in the track have been used for data recording. Spare track means that there are sectors that are not recorded. In other words, data can be incrementally recorded to the reserved track. Since the volume structure was previously recorded, track # 1 is the track used. Track # 2 is a spare track designated for metadata recording. Track # 3 is a spare track designated for recording user data.

데이터-A 파일을 업데이트하고 데이터-B 파일을 일회-기록형 광 디스크로 기록하기 위한 예시적인 과정이 설명된다.An exemplary process for updating a Data-A file and writing a Data-B file to a write-once optical disc is described.

먼저, 메타데이터 파일 FE는 메타데이터 파일을 위해 할당된 영역을 획득하기 위해서 판독되며 트랙 정보가 획득된다. 이어서 파일 시스템은 메타데이터 기록을 위해서 어떤 트랙이 사용될 수 있는지를 인식할 수 있으며, 여기서 MA(메타데이터 파일 어드레스)가 메타데이터 파일 내의 상대적인 어드레스를 표시한다.First, the metadata file FE is read to obtain the area allocated for the metadata file and track information is obtained. The file system can then recognize which track can be used for metadata recording, where the MA (metadata file address) indicates the relative address in the metadata file.

파일 시스템이 데이터-A 파일을 업데이트할 때, 파일 엔트리는 메모리에서 판독되며 파일 엔트리는 업데이트된 데이터가 기록되는 위치를 지정하기 위한 정보 및 메모리 내의 관련된 정보(예를 들면, 크기 및 업데이트된 시간, 등)을 등록하기 위해서 업데이트된다. 파일 시스템은 구동 장치에 명령하여 데이터-A 파일의 데이터를 논리적으로 덮어쓰게 한다. 이어서 구동 장치는, 대응하는 물리적 섹터가 이미 기록되었으며 구동 장치가 엔트리를 결함 리스트에 부가함에 따라서 데이터(데이터-A')를 NWA로 물리적으로 저장한다. 파일 시스템이 구동 장치에 질의한 후에 데이터를 NWA로 기록하도록 명령하면, 결함 리스트 내에 엔트리를 부가하는 것이 요구되지 않는다. 본 발명에서, 엔트리를 저장하는 이러한 방식은 추천되지 않는데, 왜냐하면 데이터의 위치가 파일 엔트리내에서 등록될 수 있기 때문이다. 그러나, 큰 파일의 일부가 업데이트되어야 할 때, 업데이트될 데이터는 파일의 전체 데이터를 기록하는 대신에 덮어쓰여질 수 있다. 데이터가 디스크 상에 기록된 후에, 파일 시스템은 기록된 데이터 및 업데이트된 시간을 지정하기 위해서 파일 엔트리(데이터-A' FE)를 논리적으로 덮어쓰도록 명령한다. 그후 구동 장치는 MA #k+1에 도시된 섹터로 물리적으로 데이터를 기록하며 엔트리를 결함 리스트로 저장한다. When the file system updates a Data-A file, the file entry is read from memory and the file entry contains information for specifying where the updated data is written and related information in the memory (e.g., size and updated time, Etc.) to register. The file system instructs the drive to logically overwrite the data in the Data-A file. The drive then physically stores the data (Data-A ') as an NWA as the corresponding physical sector has already been recorded and the drive adds an entry to the defect list. If the file system instructs the drive to write data to the NWA after querying the drive, it is not required to add an entry in the defect list. In the present invention, this manner of storing entries is not recommended because the location of the data can be registered within the file entry. However, when a portion of a large file needs to be updated, the data to be updated may be overwritten instead of recording the entire data of the file. After the data has been recorded on the disk, the file system instructs to logically overwrite the file entry (Data-A'FE) to specify the recorded data and the updated time. The drive device then physically writes data into the sector shown in MA # k + 1 and stores the entry as a defect list.

파일 시스템이 새롭게 루트 디렉토리하에 데이터-B를 기록할 때, 디렉토리는 메모리로 판독되며 디렉토리는 업데이트되어 새로운 파일(데이터-B 파일)을 메모리 내의 이 디렉토리에 부가한다. 데이터-B 파일의 파일 엔트리가 메모리 내에서 생성되기 전에, 데이터-B 파일의 데이터는 트랙 #3내의 NWA에 기록되며 이어서 파일 엔트리(데이터-B FE) 및 메모리상의 루트 디렉토리가 트랙 #2내의 MA #k+2로서 도시된 NWA로부터 기록된다. 루트 디렉토리의 새로운 위치를 지정하기 위해서, 디렉토리를 위한 업데이트된 파일 엔트리가 덮어쓰기를 위해 명령되며 데이터는 MA #k+4로서 도시된 NWA에 기록된다. 따라서, 메타데이터 사이의 디렉토리의 파일 엔트리가 엔트리를 저장하기 위해서 덮어쓰여지며, 다른 메타데이터(파일의 파일 엔트리 및 디렉토리) 및 파일의 데이터가 덮어쓰기 없이 기록된다.When the file system newly writes Data-B under the root directory, the directory is read into memory and the directory is updated to add new files (data-B files) to this directory in memory. Before the file entry of the Data-B file is created in memory, the data of the Data-B file is written to the NWA in track # 3, followed by the file entry (Data-B FE) and the root directory in memory in the MA in track # 2. It is recorded from the NWA shown as # k + 2. To specify the new location of the root directory, an updated file entry for the directory is ordered for overwriting and data is written to the NWA shown as MA # k + 4. Thus, file entries of directories between metadata are overwritten to store entries, and other metadata (file entries and directories of files) and data of files are written without overwriting.

파일 구조의 인테그러티를 표시하기 위해서, 업데이트된 논리적 볼륨 인테그러티 디스크립터는 덮어쓰도록 명령을 받는다(본 도면에는 도시되지 않음).In order to indicate the integrity of the file structure, the updated logical volume integrity descriptor is instructed to overwrite (not shown in this figure).

전술된 의사-덮어쓰기 동작에서, 덮어쓰여질 데이터는 이미 기록된 영역으로 데이터를 기록하는 명령에 응답하여 예비된 트랙의 여분 영역 또는 NWA내에 저장될 수 있다. 데이터를 저장하기 위한 목적지는 구동 장치에 의해서 결정될 수 있다. 유사하게, 데이터가 결함으로 인해서 섹터에 기록될 수 없을 때 데이터는 결함 관리에 의해서 트랙 내의 여분 영역 또는 NWA내에서 교체될 수 있다. In the above pseudo-overwrite operation, the data to be overwritten can be stored in the spare area or the NWA of the reserved track in response to a command to write data into the already recorded area. The destination for storing data can be determined by the drive device. Similarly, when data cannot be written to a sector due to a defect, the data can be replaced in an NWA or an extra area in the track by defect management.

재기록 가능한 디스크의 경우에, 파일 시스템은 사용 가능한 영역을 재사용한다. 그러나, 본 발명에서 상기 사용 가능한 영역이 한번 사용되었을 때 재사용되지 않는다. 예를 들어, 도 11에서, 루트 디렉토리가 재사용된 MA #i+1의 논리적 섹터가 사용 가능한 섹터가 되었다 할지라도, 파일 시스템은 MA #i+1에서 임의의 데이터를 할당하지 않는다. 데이터가 MA #i+1로 다시 기록되었으면, 데이터는 재맵핑된다. ECC 블록 기반으로 데이터가 기록되는 경우에, ECC 블록의 단지 하나의 섹터가 기록되도록 명령되며 무효 데이터가 ECC 블록의 다른 섹터 내에 기록된다 할지라도, 하나의 ECC 블록이 기록된다. 상기 파일 시스템은 무효 데이터가 동일한 이유로 기록되는 영역을 재사용하지 않는다.In the case of a rewritable disc, the file system reuses the available area. However, in the present invention the usable area is not reused once used. For example, in FIG. 11, even if the logical directory of the reused MA # i + 1 becomes a usable sector, the file system does not allocate any data in MA # i + 1. If the data has been written back to MA # i + 1, the data is remapped. In the case where data is recorded on the ECC block basis, only one sector of the ECC block is instructed to be recorded and one ECC block is recorded even though invalid data is recorded in another sector of the ECC block. The file system does not reuse an area where invalid data is recorded for the same reason.

도 12는 전술된 재맵핑을 설명하기 위한 영역의 구성을 예시하는 도면이다. 도 11과 유사하게, 데이터-A 파일은 업데이트되며 데이터-B 파일은 새롭게 기록된다. 도 11과 비교할 때, 메타데이터 미러 파일에 사용되도록 의도된 트랙은 트랙 #4로서 부가적으로 예비되며, 메타데이터 미러 파일 FE는 메타데이터 미러 파일의 위치를 지정한다. UDF 2.5에 따라서, 임의의 메타데이터는, 메타데이터 미러 파일이 존재하면, 메타데이터 파일 및 메타데이터 미러 파일 내의 동일한 상대적 어드레스에 기록된다. 메타데이터 미러 파일 FE가 간소화하기 위해서 도 11, 13 및 14에 도시되지 않지만, 메타데이터 미러 파일이 존재하지 않을 때, 메타데이터 파일 FE가 메타데이터 파일의 위치를 표시한다.12 is a diagram illustrating a configuration of an area for explaining the remapping described above. Similar to Fig. 11, the Data-A file is updated and the Data-B file is newly recorded. In comparison with FIG. 11, the track intended to be used for the metadata mirror file is additionally reserved as track # 4, and the metadata mirror file FE specifies the location of the metadata mirror file. According to UDF 2.5, any metadata is written to the same relative address in the metadata file and the metadata mirror file, if a metadata mirror file exists. Although the metadata mirror file FE is not shown in Figs. 11, 13 and 14 for simplicity, when the metadata mirror file does not exist, the metadata file FE indicates the location of the metadata file.

데이터-A를 업데이트하며 데이터-B 파일을 일회-기록형 광 디스크로 기록하는 예시 과정은 도 11에 대한 설명과 같다. 이 예에서, 메타데이터가 메타데이터 파일로 기록된 후에, 동일 메타데이터가 메타데이터 미러 파일로 기록된다. 파일 시스템은 메타데이터 파일 및 메타데이터 미러 파일을 위해 할당된 영역을 알도록 구동 장치에 명령하여 메타데이터 파일 FE 및 메타데이터 미러 파일 FE를 판독하도록 한다. 이어서 파일 시스템은 어떤 트랙이 메타데이터 기록에 사용될 수 있는지를 인식하며, 여기서 MA(메타데이터 파일 어드레스)는 메타데이터 파일 및 메타데이터 미러 파일 내의 상대적인 어드레스를 표시한다.An example process of updating Data-A and recording a Data-B file to a write-once optical disc is the same as the description of FIG. In this example, after the metadata is written to the metadata file, the same metadata is written to the metadata mirror file. The file system instructs the drive to know the area allocated for the metadata file and the metadata mirror file to read the metadata file FE and the metadata mirror file FE. The file system then recognizes which tracks can be used for metadata recording, where the MA (metadata file address) indicates the relative addresses in the metadata file and the metadata mirror file.

파일 시스템이 데이터-A 파일을 업데이트하는 경우에, 파일 시스템이 메타데이터 파일에 대한 트랙 #2에서 논리적으로 파일 엔트리(데이터-A' FE)를 덮어쓰도록 명령한 후에, 파일 시스템은 구동 장치에 명령하여 메타데이터 미러 파일 내의 동일한 상대적 어드레스 MA #k로 동일 파일 엔트리를 덮어쓰게 한다. 이 구동 장치는 MA #k+1에 도시된 섹터로 데이터를 물리적으로 기록하며 엔트리를 결함 리스트로 저장한다.If the file system updates the data-A file, after the file system instructs to logically overwrite the file entry (data-A'FE) in track # 2 for the metadata file, the file system tells the drive unit. Command to overwrite the same file entry with the same relative address MA #k in the metadata mirror file. This drive physically writes data into the sector shown in MA # k + 1 and stores the entry as a defect list.

파일 시스템이 루트 디렉토리 내의 데이터-B를 새롭게 기록하는 경우에, 파일 시스템이 MA #k+2로서 도시된 NWA로부터의 파일 엔트리(데이터-B FE) 및 루트 디렉토리를 트랙 #2의 메타데이터 파일에 기록하도록 명령한 후에, 파일 시스템은 구동 장치에 명령하여 MA #2k+2로서 도시된 NWA로부터의 동일 파일 엔트리 및 동일 루트 디렉토리를 트랙 #4의 메타데이터 미러 파일에 기록하도록 한다. 이후, 파일 시스템이 MA #k+4로서 도시된 NWA에 디렉토리에 대해서 업데이트된 파일 엔트리를 트랙 #2의 메타데이터 파일에 덮어쓰도록 명령한 후에, 파일 시스템은 MA #k+4로서 도시된 NWA에 동일하게 업데이트된 파일 엔트리를 트랙 #4의 메타데이터 미러 파일 내에 덮어쓰도록 명령한다.When the file system writes data-B newly in the root directory, the file system writes the file entry (data-B FE) from the NWA and the root directory to the metadata file of track # 2 as shown as MA # k + 2. After instructing to write, the file system instructs the driving device to write the same file entry and the same root directory from NWA shown as MA # 2k + 2 to the metadata mirror file of track # 4. Then, after the file system instructs NWA shown as MA # k + 4 to overwrite the metadata file of track # 2 with the updated file entry for the directory, the file system reads NWA shown as MA # k + 4. Command to overwrite the same updated file entry in the metadata mirror file of track # 4.

따라서, 동일 메타데이터가 메타데이터 파일 및 메타데이터 미러 파일 내의 동일한 상대 어드레스에 기록됨에 따라서, 메타데이터가 판독될 때의 내구성이 개선된다.Thus, as the same metadata is recorded at the same relative address in the metadata file and the metadata mirror file, the durability when the metadata is read is improved.

도 13은 전술된 재맵핑을 설명하기 위한 영역의 구성을 예시하는 도면이다. 도 13에서, 새롭게 예비된 트랙은 도 11에 설명된 볼륨 공간상의 트랙 #3으로서 지정된다. 이러한 트랙은, 메타데이터에 대한 트랙 #2이 고갈되므로, 부가적인 메타데이터를 기록하기 위해서, 사용자 데이터 기록을 위해 트랙 내의 기록되지 않은 영역 내 예비된다. 예를 들어, 도 11내의 트랙 #3은 기록된 영역의 끝에 종료되며, 새로운 트랙 #4은 트랙 #3의 종료후에 기록되지 않은 영역으로부터 지정된다.FIG. 13 is a diagram illustrating a configuration of an area for explaining the aforementioned remapping. In FIG. 13, the newly reserved track is designated as track # 3 on the volume space described in FIG. This track is reserved in an unrecorded area in the track for recording user data, since track # 2 for metadata is depleted. For example, track # 3 in FIG. 11 ends at the end of the recorded area, and new track # 4 is designated from the unrecorded area after the end of track # 3.

도 14는 전술된 재맵핑을 설명하기 위한 영역의 구성을 예시하는 도면이다. 도 14에서, 데이터-C 파일은 도 13에서 설명된 볼륨 공간상의 루트 디렉토리에 새롭게 기록된다. 디렉토리는 메모리로 판독되며 디렉토리는 업데이트되어 새로운 파일(데이터-C 파일)을 메모리 내의 이러한 디렉토리로 부가한다. 데이터-C 파일의 파일 엔트리는 메모리에서 생성되며, 데이터-C 파일의 데이터는 트랙 #5내의 NWA에 기록되며, 이어서 파일 엔트리(데이터-C FE) 및 메모리 상의 루트 디렉토리는 트랙 #4 내의 MA #k+5로서 도시된 NWA로부터 기록된다. 루트 디렉토리의 새로운 위치를 지정하기 위해서, 디렉토리에 대해서 업데이트된 파일 엔트리는 MA #1에서 덮어쓰여지도록 명령이 주어진다. 트랙 #2이 고갈됨에 따라서, 데이터는 다른 트랙 내의 NWA에 기록된다. 이 예에서, 트랙 #4 내의 MA #k+7에 데이터가 기록된다. 메타데이터 파일 FE는 메타데이터 파일의 부가적인 정도 #2를 지정하도록 덮어쓰기 위해 명령이 주어지며, 데이터는 MA #k+8로서 도시된 NWA에 기록된다. 메타데이터 파일에 대해서 할당된 정도는 새롭게 지정된 트랙과 같지 않을 수 있는데, 왜냐하면 메타데이터 파일의 정도가 메타데이터 파일 FE를 업데이트함으로써 확장될 수 있기 때문이다. 따라서, 메타데이터 파일의 정도는 트랙의 일부가 될 수 있다.14 is a diagram illustrating a configuration of an area for explaining the remapping described above. In Fig. 14, the Data-C file is newly written to the root directory on the volume space described in Fig. 13. The directory is read into memory and the directory is updated to add new files (data-C files) to these directories in memory. The file entry of the Data-C file is created in memory, and the data of the Data-C file is written to the NWA in track # 5, followed by the file entry (Data-C FE) and the root directory on memory in MA # in track # 4. It is recorded from the NWA shown as k + 5. In order to specify the new location of the root directory, the file entry updated for the directory is commanded to be overwritten in MA # 1. As track # 2 runs out, data is recorded in the NWA in other tracks. In this example, data is recorded in MA # k + 7 in track # 4. The metadata file FE is commanded to overwrite to specify an additional degree # 2 of the metadata file, and the data is recorded in the NWA shown as MA # k + 8. The degree assigned for the metadata file may not be the same as the newly designated track, because the degree of the metadata file can be extended by updating the metadata file FE. Thus, the degree of metadata file can be part of the track.

이하 본 발명의 기록 과정이 설명된다. 이러한 기록 과정은 도 5에서 설명된 광 디스크 정보 기록/재생 시스템에 의해서 수행된다. The recording process of the present invention is described below. This recording process is performed by the optical disc information recording / reproducing system described in FIG.

도 15A-15D는 각각, 데이터가 의사-덮어쓰기 방법을 이용하여 기록될 때, 사용자 데이터 영역 내의 블록을 예시하는 도면을 포함한다. 사용자 데이터 영역, PBA 및 LBA는 도 7에 설명된 것과 같이 규정된다.15A-15D each include a diagram illustrating a block within a user data area when data is written using a pseudo-overwrite method. User data areas, PBAs and LBAs are defined as described in FIG.

파일을 업데이트하기 위한 과정은 도 15A 및 15B에 설명되어 있다. 도 15A에 도시된 바와 같이, 파일이 업데이트되기 전에, 블록 PBA 100, 101 및 102가 기록되며, 두 개의 트랙이 예비된다. 업데이트될 파일의 파일 엔트리(D3)는 블록 LBA 2에 저장된다. 도 15B에 도시된 바와 같이, 파일 시스템은,The procedure for updating the file is described in Figures 15A and 15B. As shown in Fig. 15A, before the file is updated, blocks PBA 100, 101 and 102 are recorded, and two tracks are reserved. The file entry D3 of the file to be updated is stored in block LBA 2. As shown in Figure 15B, the file system is

1) 미리 LBA 2로부터 파일 엔트리를 판독하도록 명령하며,1) command to read a file entry from LBA 2 in advance;

2) 구동 장치에 NWA를 질의하며,2) query the drive for NWA,

3) 데이터 기록을 위해 트랙 내의 NWA (LBA 9)로 파일의 업데이트된 데이터(D4)를 기록하도록 명령하여 덮어쓰기 없이도 데이터가 기록되며 파일 엔트리(D3')을 생성하여 판독되 파일 엔트리내의 위치 정보가 업데이트된 데이터가 기록되는 영역을 지정하도록 변경되며, 이어서,3) Command to write the updated data D4 of the file to the NWA (LBA 9) in the track for data recording so that the data is recorded without overwriting and creating the file entry D3 'to read the position information in the file entry Is changed to specify the area in which the updated data is recorded, and then

4) 업데이트된 파일 엔트리(D3')를 메타데이터 기록을 위한 트랙 내의 LBA2로 기록하도록 명령하여 파일 엔트리가 덮어 쓰여진다. 이 예에서, 데이터 D3'은, 이전 기록이 PBA 109에 있었을 때와 같이, PBA 110에 물리적으로 기록된다. 따라서, 덮어쓰기 시에, 구동 장치는 데이터를 다른 트랙으로 기록할 수도 있다.4) The file entry is overwritten by instructing the updated file entry D3 'to be written to LBA2 in the track for metadata recording. In this example, data D3 'is physically recorded in PBA 110, as when the previous recording was in PBA 109. Therefore, at the time of overwriting, the drive device may record data in another track.

디렉토리 내에 파일을 기록하는 과정이 도 15C 및 15D에 설명되어 있다. 도 15C에 도시된 바와 같이, 블록 PBA 100, 101, 102, 108, 및 109가 기록되며, 두 개의 트랙이 예비된다. 디렉토리의 파일 엔트리(D1) 및 디렉토리(D2)는 블록 LBA 0 및 1에 저장된다. 도 15D에 도시된 바와 같이, 파일 시스템은,The process of writing a file in a directory is described in Figures 15C and 15D. As shown in Fig. 15C, blocks PBA 100, 101, 102, 108, and 109 are recorded, and two tracks are reserved. The file entries D1 and directory D2 of the directory are stored in blocks LBA 0 and 1. As shown in Fig. 15D, the file system is

1) LBA 0로부터 디렉토리의 파일 엔트리 및 디렉토리를 판독하도록 명령하며,1) command to read the directory's file entries and directories from LBA 0,

2) LBA 1로부터 디렉토리를 판독하도록 명령하며,2) command to read the directory from LBA 1,

3) 덮어쓰기 없이도 데이터를 기록하기 위한 위치를 결정하기 위해서 구동 장치에 각각의 트랙의 NWA를 질의하며,3) query the drive for the NWA of each track to determine the location for recording data without overwriting;

3-1) 파일의 데이터를 위해 할당된 영역의 위치 정보를 갖는 파일의 파일 엔트리(D6)를 생성하며,3-1) creates a file entry D6 of the file having the location information of the area allocated for the data of the file,

3-2) 디렉토리(D7)를 생성하여 새로운 파일이 판독 디렉토리(D2)에 등록되며,3-2) A directory D7 is created so that a new file is registered in the reading directory D2.

3-3) 디렉토리의 파일 엔트리(D1')을 생성하여 판독 파일 엔트리(D1)내의 위치 정보가 업데이트된 디렉토리가 할당되는 영역을 지정하도록 변경되며,3-3) a file entry D1 'of the directory is generated to change the location information in the read file entry D1 to designate an area to which the updated directory is assigned,

4) 데이터 기록을 위해 트랙 #2내의 NWA(LBA 10)로 파일의 데이터(D5)를 기록하도록 명령하며,4) command to record the data (D5) of the file to NWA (LBA 10) in track # 2 for data recording,

5) 메타데이터 기록을 위해 트랙 #1내의 NWA(LBA 3)로부터 파일의 파일 엔트리(D6)를 기록하도록 명령하며,5) command to record the file entry (D6) of the file from NWA (LBA 3) in track # 1 for metadata recording,

6) 디렉토리(D7)를 다음 어드레스에 기록하도록 명령하여 데이터가 연속적으로 기록되며,6) Data is continuously recorded by instructing the directory D7 to be written to the next address,

7) 업데이트된 파일 엔트리(D1')를 LBA0로 기록하도록 명령하여 파일 엔트리가 덮어쓰여지게 한다. 7) Command to write the updated file entry D1 'to LBA0 so that the file entry is overwritten.

따라서, 임의의 데이터가 기록되기 전에, 파일 시스템은 NWA에 질의한다. 이것은, 구동 장치가 자체로 재맵핑으로 데이터를 기록함에 따라서 NWA가 변경될 수 있기 때문이다. 다음에, 파일 시스템은 NWA로부터 데이터를 기록하기 위한 명령을 제공하여 상기 데이터가 덮어쓰여지지 않고도 기록된다. 그후, 파일 시스템은 업데이트된 데이터가 덮어쓰기로 기록되도록 명령한다. 데이터를 기록하는 이 시퀀스는 재맵핑 테이블에서 엔트리를 절약하는데 중요하다.Thus, before any data is written, the file system queries the NWA. This is because the NWA may change as the drive device records data by remapping itself. Next, the file system provides a command for recording data from the NWA so that the data is written without being overwritten. The file system then instructs the updated data to be overwritten. This sequence of recording data is important for saving entries in the remapping table.

도 15B의 경우에, 기록 과정이 이러한 시퀀스가 아니면, 이른바 데이터 D3'가 데이터 D4가 기록되기 전에 덮어쓰여지면, 데이터 D3'는 PBA 109로 기록될 수 있으며 NWA가 변경된다. 이것은 데이터 D4가 LBA 9로 덮어쓰여 기록되지만, 데이터가 PBA 110로 재맵핑됨을 의미한다. 도 15D의 경우에, 기록 과정이 이러한 시퀀스가 아니면, 무가적인 엔트리 역시 재맵핑 테이블에 부가될 수 있다.In the case of Fig. 15B, if the writing process is not such a sequence, if so-called data D3 'is overwritten before data D4 is written, data D3' can be written to PBA 109 and the NWA is changed. This means that data D4 is overwritten with LBA 9, but the data is remapped to PBA 110. In the case of Fig. 15D, if the writing process is not such a sequence, an unsolicited entry may also be added to the remapping table.

재기록 가능한 디스크의 경우에, 그러한 요구 조건은 없다. 전형적으로, 기록 과정이 사고로 종료될 때 복구를 고려하여 신뢰성을 개선하기 위해서 상이한 시퀀스가 재기록 가능한 디스크에 사용된다. 한편, 일회-기록형 디스크의 경우에 그러한 복구는 중요하지 않다. 오히려, 이전 상태가 일회-기록형 특징에 의해서 유지되기 때문에 재맵핑 테이블의 엔트리를 절약하는 것이 중요하다.In the case of a rewritable disc, there is no such requirement. Typically, different sequences are used for rewritable discs in order to improve reliability in consideration of recovery when the recording process ends in an accident. On the other hand, such recovery is not important in the case of a write once disc. Rather, it is important to save entries in the remapping table because the previous state is maintained by the one-time write feature.

도 11A 및 11B는 각각 일회-기록형 광 디스크 상에 데이터를 기록하기 위한 과정을 예시하는 흐름도를 포함한다. 이 기록 과정은 도 5에 설명된 광 디스크 정보 기록/재생 시스템에 의해서 수행된다.11A and 11B each include a flow chart illustrating a process for recording data on a write-once optical disc. This recording process is performed by the optical disc information recording / reproducing system described in FIG.

파일이 업데이트될 때, 파일 시스템은 파일의 데이터를 기록하도록 명령하여 데이터가 덮어쓰기 없이 기록되며, 파일 시스템은 기록된 파일을 업데이트함으로써 파일 엔트리를 생성하며, 파일 엔트리를 기록하도록 명령하여 파일 엔트리가 덮어 쓰여진다.When a file is updated, the file system instructs the data in the file to be written so that the data is written without overwriting, and the file system creates a file entry by updating the recorded file and instructs the file entry to be written so that the file entry is Overwritten.

새로운 파일이 디렉토리 하에서 기록될 때, 파일 시스템은 파일의 파일 엔트리를 생성하며 메모리 내의 기록된 디렉토리 및 그 파일 엔트리를 업데이트함으로써 디렉토리 및 디렉토리의 파일 엔트리를 생성하고 파일의 데이터, 파일 엔트리 및 디렉토리를 기록하도록 명령하여 이러한 데이터가 덮어쓰기 없이도 기록된다. 그후 파일 시스템은 디렉토리의 파일 엔트리를 기록하도록 명령하여 파일 엔트리가 덮어 쓰여진다. When a new file is written under a directory, the file system creates a file entry of the file and creates a directory and file entry of the directory by updating the recorded directory and its file entry in memory and records the file's data, file entry and directory. Command to write such data without overwriting it. The file system then instructs the file entry of the directory to be written, thereby overwriting the file entry.

도 16은 일회-기록형 광 디스크 상에 데이터를 기록하기 위한 과정에 관련된 단계를 도시한다. 이 과정을 수행하기 위해서 하나의 프로그램이 사용되며 시스템 제어기(510)에 포함되는 제어기(511)에 의해서 실행된다. 시스템 제어기(510)는 구동 장치(520)에 명령하여 일회-기록형 광 디스크 상에 데이터를 기록하도록 한다. 제어기(511)는 반도체 집적 회로를 포함할 수 있다. 이 프로그램은 여러 방식으로 제공된다. 예를 들어 이 프로그램은 프로그램이 기록된 컴퓨터 판독 매체의 형태로 제공될 수 있다. 그 대신에, 이 프로그램은 인터넷을 통해서 서버로부터 프로그램을 다운로드함으로써 제공될 수도 있다. 이 프로그램이 컴퓨터에 설치되면, 컴퓨터는 시스템 제어기(510)로서 기능을 수행한다. 일회-기록형 광 디스크는 복수의 트랙들을 포함한다.Figure 16 shows the steps involved in the process for recording data on a write-once optical disc. One program is used to perform this process and is executed by the controller 511 included in the system controller 510. The system controller 510 instructs the drive device 520 to record data on the write-once optical disc. The controller 511 may include a semiconductor integrated circuit. This program is provided in several ways. For example, the program may be provided in the form of a computer-readable medium in which the program is recorded. Instead, the program may be provided by downloading a program from a server via the Internet. When this program is installed in a computer, the computer functions as the system controller 510. The write-once optical disc includes a plurality of tracks.

도 17A 미 17B는 구동 장치(520)에 의해서 수행되는 과정을 도시한다.17A and 17B illustrate a process performed by the driving device 520.

단계 S1601에서, 시스템 제어기(510)는 적어도 사용자로부터 기록되는 파일을 지정하는 기록 요청을 수신한다. 예를 들어, 이 요청은 새로운 데이터로서 데이터-A 파일을 교체하며 이 디스크 상의 루트 디렉토리 하에서 다른 매체로부터 데이터-B 파일을 복사하는 것이다. 기록되는 데이터는 시스템 제어기(510)의 메모리(512)로 전달되며 데이터를 기록하기 위한 목적지는 디렉토리 트리 구조의 경로명에 의해 표시된다. In step S1601, the system controller 510 receives a recording request specifying a file to be recorded from at least the user. For example, this request would replace the Data-A file with new data and copy the Data-B file from another medium under the root directory on this disk. The recorded data is transferred to the memory 512 of the system controller 510 and the destination for recording the data is indicated by the path name of the directory tree structure.

단계 S1602에서, 제어기(511)는 구동 장치(520)에 명령하여 메타데이터의 파일 엔트리, 즉, 메타데이터 파일 FE를 기록하도록 하는데, 이는 일회-기록형 디스크로부터 사용자에 의해서 요청된 파일을 관리하기 위해서 메타데이터를 포함한다. 이로부터 메타데이터, 파일 FE가 획득된다.In step S1602, the controller 511 instructs the driving device 520 to record the file entry of metadata, that is, the metadata file FE, which manages the file requested by the user from the write-once disk. To include metadata. From this, metadata, file FE are obtained.

단계 S1603에서, 제어기(511)는 구동 장치(520)에 명령하여 복수의 트랙들 각각의 위치를 표시하는 트랙 정보를 획득하도록 한다. In step S1603, the controller 511 instructs the driving device 520 to acquire track information indicating the position of each of the plurality of tracks.

단계 S1604에서, 제어기(511)는 각각의 트랙을 점검하여 메타데이터 파일 및 트랙 정보의 파일 엔트리에 기초하여, 메타데이터가 다음에 기록되는 트랙을 결정한다. 트랙의 일부가 메타데이터 파일 또는 메타데이터 미러 파일의 크기에 대해서 지정되면, 트랙은 메타데이터 파일 또는 메타데이터 미러 파일 각각으로 메타데이터를 기록하는데 사용된다. In step S1604, the controller 511 checks each track to determine the track to which metadata is next recorded based on the file entry of the metadata file and track information. If part of the track is specified for the size of the metadata file or metadata mirror file, the track is used to record the metadata into the metadata file or the metadata mirror file respectively.

단계 S1605에서, 제어기(511)는 구동 장치에 명령하여 일회-기록형 광 디스크의 위치로부터 메타데이터를 판독하도록 하여, 메타데이터를 획득한다. 파일 엔트리 및 디렉토리와 같은 메타데이터는 메타데이터 파일로부터 판독된다.  In step S1605, the controller 511 instructs the driving apparatus to read the metadata from the position of the write-once optical disc, thereby obtaining the metadata. Metadata such as file entries and directories are read from the metadata file.

단계 S1606에서, 제어기(511)는, 구동 장치(520)에 명령하여 데이터를 기록하도록 하기 전에, 데이터가 트랙 내에서 다음으로 기록 가능한 위치를 표시하는 다음으로 기록 가능한 어드레스 NWA에 대해서 구동 장치(520)에 질의한다. 이것은 구동 장치(520)가 NWA를 이동시킬 가능성이 있기 때문이다. 구동 장치(520)는 질의된 NWA를 제어기(511)에 전달하며, 시스템 제어기(510)는 NWA를 제어기(511)에 전달한다. 트랙은 복수의 트랙들로부터 선택된다. 제어기(511)는 복수의 트랙에 NWA들을 질의할 수 있지만, 적어도 단계 S1604에서 결정된 트랙 이외의 트랙에 대한 NWA를 질의한다.In step S1606, before the controller 511 instructs the drive device 520 to record data, the drive device 520 for the next recordable address NWA indicating the next recordable position of the data in the track. Query). This is because the drive device 520 may move the NWA. The driving device 520 transmits the queried NWA to the controller 511, and the system controller 510 transmits the NWA to the controller 511. The track is selected from a plurality of tracks. The controller 511 may query NWAs for a plurality of tracks, but at least query NWAs for tracks other than the track determined in step S1604.

단계 S1607에서, 제어기(511)는 단계 S1604에서 결정된 트랙 내의 다음으로 기록 가능한 어드레스 NWA가 유효한지를 결정한다. 트랙 내의 NWA가 유효하면, 과정은 단계 S1608로 나간다. 예를 들어, 유효 어드레스가 단계 S1606에서 NWA로서 리턴되면, 트랙에는 NWA가 없는 것으로 인식될 수 있다. 단계 S1604 또는 S1606에서는, 트랙의 상태가 구동 장치(520)로의 질의를 통해서 질의될 수 있다. 트랙이 사용된 상태이면, 트랙에는 NWA가 없다.In step S1607, the controller 511 determines whether the next recordable address NWA in the track determined in step S1604 is valid. If the NWA in the track is valid, the process goes to step S1608. For example, if a valid address is returned as NWA in step S1606, it can be recognized that there is no NWA in the track. In step S1604 or S1606, the state of the track may be queried through the query to the drive device 520. If the track is used, there is no NWA on the track.

단계 S1608에서, 제어기(511)는 구동 장치(520)에 명령하여 메타데이터가 다음으로 기록되는 제 1 트랙과 데이터가 다음으로 기록되는 제 2 트랙을 할당하도록 한다. 파일 시스템이 구동 장치(520)에 명령하여 새로운 트랙을 할당하도록 하므로, 제어기(511)는 단계 S1606에서 획득된 NWA를 제 2 트랙 내의 NWA로 업데이트할 수 있다. 도 13의 경우에, NWA는 적어도 트랙 #4 및 #5내의 상태 어드레스이다. 제 1 트랙 및 제 2 트랙은 단계 S1606에서 선택된 트랙 내에서 할당된다.In step S1608, the controller 511 instructs the driving device 520 to allocate a first track in which metadata is next recorded and a second track in which data is next recorded. Since the file system instructs the driving device 520 to allocate a new track, the controller 511 can update the NWA obtained in step S1606 with the NWA in the second track. In the case of Fig. 13, the NWA is at least a state address in tracks # 4 and # 5. The first track and the second track are allocated in the track selected in step S1606.

단계 S1609에서, 사용자 기록 요청에 응답하여, 제어기(511)는 메타데이터의 적어도 일부를 생성 또는 업데이트하여 덮어쓰여지는 데이터 량이 기록되는 데이터의 유형을 구분함으로써 최소화된다. 도 11에 대한 설명에서 기술되었드시, 파일이 업데이트되는 경우에, 파일 시스템은 기록되는 데이터의 위치를 지정하기 위해서 파일 엔트리를 생성한다. 이러한 파일 엔트리는 덮어쓰여지는 데이터이다. 새로운 파일이 디렉토리 하에서 기록되는 경우에, 파일 시스템은 새로운 파일의 파일 엔트리를 생성하고 디렉토리의 새로운 파일 및 파일 엔트리를 등록하기 위해 디렉토리를 업데이트한다. 디렉토리의 파일 엔트리는 덮어쓰여지는 데이터이며 다른 메타데이터는 덮어쓰여지지 않고도 기록될 수 있는 데이터이다. 업데이트된 메타데이터의 예로서, 업데이트된 메타데이터는 파일이 기록되는 디렉토리의 파일 엔트리 또는, 파일의 파일 엔트리를 포함할 수 있다.In step S1609, in response to the user recording request, the controller 511 generates or updates at least a portion of the metadata to minimize the amount of data to be overwritten by distinguishing the type of data to be recorded. As described in the description of FIG. 11, when a file is updated, the file system creates a file entry to specify the location of the data to be recorded. These file entries are the data that will be overwritten. If a new file is written under the directory, the file system updates the directory to create a file entry of the new file and register the new file and file entry of the directory. File entries in a directory are data that will be overwritten and other metadata can be written without being overwritten. As an example of updated metadata, the updated metadata may include a file entry of a directory in which the file is recorded or a file entry of the file.

단계 S1610에서, 제어기(511)는 구동 장치(520)에 명령하여 NWA에 의해서 표시된 위치에 덮어쓰여지지 않고도 기록될 수 있는 데이터를 기록하도록 한다. In step S1610, the controller 511 instructs the driving device 520 to record data that can be recorded without being overwritten at the position indicated by the NWA.

단계 S1611에서, 제어기(511)는 구동 장치(520)에 명령하여 메타데이터가 판독된 위치에서 업데이트된 메타데이터의 적어도 일부를 기록하도록 하여 데이터가 논리적 섹터에 덮어 쓰여진다. 단계 S1610 및 S1611에서, 동일 기록 명령이 데이터를 기록하기 위한 명령으로 사용될 수 있는데, 이는 구동 장치가, 덮어쓰기로 또는 단계 S1702에서 논리적 섹터의 상태를 점검하지 않고도 데이터가 기록되어야 하는지를 결정할 수 있기 때문이다. 단계 S1610 및 S1611에서, 데이터는 상이한 방식으로 표시되는 상이한 어드레스에 기록되는데, 예를 들면, 단계 S1610는 사용자 기록 요청에 의해서 지정된 데이터를 기록하는 한편(단계 S1601), 단계 S1611은 판독된 메타데이터를 기록한다(단계 S1602). 에러의 가능성을 피하기 위해서 단계 S1611는 단계 S1610후에 수행된다.In step S1611, the controller 511 instructs the drive device 520 to write at least a part of the updated metadata at the location where the metadata is read, so that the data is overwritten in the logical sector. In steps S1610 and S1611, the same write command can be used as a command for recording data, since the driving device can determine whether the data should be written without overwriting or without checking the state of the logical sector in step S1702. to be. In steps S1610 and S1611, data is recorded at different addresses indicated in different ways, for example, step S1610 records data specified by a user write request (step S1601), and step S1611 writes the read metadata. Record (step S1602). Step S1611 is performed after step S1610 to avoid the possibility of an error.

단계 S1612에서, 제어기(511)는 제 1 트랙이 할당되는지 여부 그리고 업데이트된 메타데이터의 적어도 일부가 제 1 트랙에 기록되는지 여부를 결정한다. 제 1 트랙이 할당되며 업데이트된 메타데이터의 적어도 일부가 제 1 트랙에 기록되는 것이 결정되면, 프로세스는 단계 S1613으로 진행한다.In step S1612, the controller 511 determines whether the first track is assigned and whether at least a portion of the updated metadata is recorded in the first track. If it is determined that the first track has been allocated and at least a portion of the updated metadata has been recorded in the first track, the process proceeds to step S1613.

단계 S1613에서, 제어기(511)는 업데이트된 메타데이터의 적어도 일부의 기록을 반영하기 위해서 메타데이터의 파일 엔트리를 업데이트하며, 구동 장치(520)에 명령하여 메타데이터 파일의 파일 엔트리가 단계 S1602에서 판독되는 위치에 메타데이터 파일의 업데이트된 파일 엔트리를 기록하도록 한다.In step S1613, the controller 511 updates the file entry of metadata to reflect the recording of at least a portion of the updated metadata, and instructs the driving device 520 to read the file entry of the metadata file in step S1602. To record the updated file entry of the metadata file at the location.

데이터를 기록하는 제어기(511)로부터의 명령에 응답하여, 구동 장치(520)에 이어지는 과정이 도 17A에 도시된다. In response to a command from the controller 511 for recording data, a process following the drive device 520 is shown in Fig. 17A.

단계 S1701에서, 구동 장치(520)는 데이터가 기록되는 적어도 논리적 섹터를 지정하는 기록 명령을 제어기(511)로부터 수신하며 어떤 트랙이 기록되는지를 점검한다. 구동 장치(520)는 또한 복수의 트랙들 각각의 위치를 표시하는 트랙 정보를 획득하며, 기록 명령 및 트랙 정보에 의해서 지정되는 논리적 섹터에 기초하여, 데이터가 기록되는 트랙들 각각으로부터 트랙을 결정한다.In step S1701, the drive device 520 receives a write command from the controller 511 specifying at least a logical sector in which data is recorded and checks which track is recorded. The drive device 520 also obtains track information indicating the position of each of the plurality of tracks, and determines the track from each of the tracks on which data is recorded, based on the logical sector designated by the recording command and the track information. .

단계 S1702에서, 구동 장치(520)는 기록 명려에 의해서 지정된 논리적 섹터가 기록된 물리적 섹터 또는 기록되지 않은 물리적 섹터에 대응하는지 여부를 결정한다. 이 점검에서, 구동 장치(520)는 제어기(511)에 의해서 기록하기 위해서 명령되는 논리적 섹터를 이용하여 물리적 섹터의 상태를 판정한다. 논리적 섹터 수가 NWA 보다 작으면, 물리적 섹터가 기록되며, 그렇지 않으면 기록되지 않는다. 기록 명령에 의해서 지정되는 논리적 섹터가 기록되지 않은 물리적 섹터에 대응하면, 처리는 단계 S1703으로 진행되며, 그렇지 않고 논리적 섹터가 기록된 물리적 섹터에 대응하면 처리는 단계 S1704로 진행된다.In step S1702, the driving device 520 determines whether the logical sector designated by the write command corresponds to a recorded physical sector or an unrecorded physical sector. In this check, the drive device 520 determines the state of the physical sector using the logical sector commanded for writing by the controller 511. If the logical sector number is less than NWA, the physical sector is recorded, otherwise it is not recorded. If the logical sector specified by the write command corresponds to a physical sector that has not been recorded, the process proceeds to step S1703; otherwise, the process proceeds to step S1704 if the logical sector corresponds to the recorded physical sector.

단계 S1703에서, 구동 장치(520)는 미리 논리적 섹터에 대응하는 기록되지 않은 물리적 섹터로 데이터를 기록한다.In step S1703, the driving device 520 records data into an unrecorded physical sector corresponding to the logical sector in advance.

단계 S1704에서, 구동 장치(520)는 단계 S1701에서 결정된 트랙 내의 다음으로 기록 가능한 어드레스에 의해서 표시된 물리적 섹터로 데이터를 기록한다. 데이터가 ECC 블록을 기초로 재맵핑될 때, 다른 기록되지 않은 물리적 섹터는 다음으로 기록 가능한 블록인 ECC 블록에 속하는 섹터 중 하나이다. 예를 들어, ECC 블록이 32 섹터로 이루어지는 경우에, ECC 블록 내의 제 2 섹터는 ECC 블록 내의 제 2 섹터가 덮어쓰여지도록 명령되며, 그 데이터는 다음으로 기록 가능한 ECC 블록 내의 제 2 섹터로 물리적으로 기록된다. 따라서 ECC 블록 내의 상대적인 어드레스는 재맵핑된 ECC 블록에 대해서 유지된다.In step S1704, the drive device 520 records data in the physical sector indicated by the next recordable address in the track determined in step S1701. When data is remapped based on an ECC block, the other unrecorded physical sector is one of the sectors belonging to the next recordable block, the ECC block. For example, if the ECC block consists of 32 sectors, the second sector in the ECC block is instructed to overwrite the second sector in the ECC block, and the data is physically transferred to the second sector in the next recordable ECC block. Is recorded. Thus, the relative address within the ECC block is maintained for the remapped ECC block.

단계 S1705에서, 구동 장치(520)는 다음으로 기록 가능한 어드레스에 의해서 표시되는 물리적 섹터의 재맵핑 어드레스에 기록된 물리적 섹터의 원래 어드레스를 재맵핑하는 재맵핑 정보를 포함하는 재맵핑 테이블을 발생하여, 결함 리스트/재맵핑 테이블에 재맵핑 정보를 저장한다. ECC 블록이 32 섹터로 이루어지는 경우에, 원래의 어드레스는 원래의 어드레스가 속하는 ECC 블록의 시작 어드레스이며 재맵핑된 어드레스는 재맵핑된 물리적 섹터가 속하는 ECC 블록의 시작 어드레스이다.In step S1705, the driving device 520 generates a remapping table including remapping information for remapping the original address of the physical sector recorded in the remapping address of the physical sector indicated by the next recordable address, Store remapping information in the defect list / remapping table. If the ECC block consists of 32 sectors, the original address is the start address of the ECC block to which the original address belongs and the remapped address is the start address of the ECC block to which the remapped physical sector belongs.

트랙을 예비하기 위해 제어기(511)로부터의 명령에 응답하여, 구동 장치(520)에 이어지는 과정이 도 17B에 도시된다.In response to a command from the controller 511 to reserve the track, the process that follows the drive 520 is shown in FIG. 17B.

단계 S1711에서, 구동 장치(520)는 제어기(511)로부터 할당 명령을 수신하여 할당 명령에 응답하여 적어도 하나의 트랙을 할당한다. 적어도 하나의 트랙의 할당은 단계 S1701에서 결정된 트랙 내의 제 1 및 제 2 트랙을 할당하는 것을 포함한다. In operation S1711, the driving device 520 receives an allocation command from the controller 511 and allocates at least one track in response to the allocation command. Allocation of at least one track includes assigning first and second tracks in the track determined in step S1701.

본 발명이 소비자 비디오 레코더 또는 소비자 비디오 플레이어와 같은 기록/재생 시스템에 적용될 때, 제어기(511) 및 구동 장치(520)는 도 18에 도시된 바와 같은 일반적인 마이크로프로세서에 의해서 제어될 수도 있다. 이 경우에, 제어기(511)는 구동 장치(520)로 NWA를 질의하지 않을 수 있는데, 왜냐하면 상기 기록/재생 시스템이 NWA를 알기 때문이다. 먼저, 각각의 트랙 내의 NWA는 디스크가 구동 유닛 내에 적재되는 때에 점검되며, 이어서 이 시스템은 일부 데이터가 기록된 후에 NWA를 관리할 수 있다.When the present invention is applied to a recording / playback system such as a consumer video recorder or a consumer video player, the controller 511 and the drive device 520 may be controlled by a general microprocessor as shown in FIG. In this case, the controller 511 may not query the NWA to the drive device 520 because the recording / reproducing system knows the NWA. First, the NWA in each track is checked when the disc is loaded into the drive unit, and then the system can manage the NWA after some data has been recorded.

도 18은 소비자 비디오 레코더 또는 소비자 비디오 플레이어의 일부인 광 디스크 정보 기록/재생 시스템(1800)을 도시한다. 정보 기록/재생 시스템(1800)은 제어기(1811), 메모리(1812) 및 광 디스크로부터 정보를 판독하고 기록하기 위한 구동 메카니즘(1800)을 포함한다. 상기 제어기(1811)는 예를 들면, CPU(중앙 처리 장치)와 같은 반도체 집적 회로가 될 수 있으며 본 발명의 실시예들에서 설명된 방법을 수행한다. 더욱이, 제어기(1811)가 상기 실시예들에서 설명된 방법을 수행하도록 하는 프로그램이 메모리(1812)에 저장된다. 제어기(1811)에서는, 파일 시스템, 유틸리티 프로그램, 또는 장치 구동기가 수행될 수 있다. 구동 메카니즘(523)은 제어기(1811)에 의해서 제어될 수 있다.18 shows an optical disc information recording / reproducing system 1800 that is part of a consumer video recorder or consumer video player. The information recording / reproducing system 1800 includes a controller 1811, a memory 1812, and a driving mechanism 1800 for reading and writing information from the optical disc. The controller 1811 can be, for example, a semiconductor integrated circuit such as a CPU (central processing unit) and performs the method described in embodiments of the present invention. Moreover, a program is stored in the memory 1812 that causes the controller 1811 to perform the method described in the above embodiments. At the controller 1811, a file system, utility program, or device driver may be performed. The drive mechanism 523 can be controlled by the controller 1811.

도 19는 도 18에 설명된 기록/재생 시스템에 의해서 일회-기록형 광 디스크 상에 데이터를 기록하기 위한 과정을 예시하는 흐름도이다.FIG. 19 is a flowchart illustrating a process for recording data on a write-once optical disc by the recording / reproducing system described in FIG. 18.

단계 S1901에서, 제어기(1811)는 사용자로부터 요청을 수신한다. 예를 들어, 상기 요청은 데이터-A를 새로운 데이터로 교체하거나 또는 디스크 상의 다른 매체로부터 루트 디렉토리로 데이터-B를 복사하는 것이다. 기록되는 데이터는 메모리(1812)로 전달되며 데이터를 기록하기 위한 목적지는 디렉토리 트리 구조 내의 경로명에 의해서 표시된다.In step S1901, the controller 1811 receives a request from the user. For example, the request may be to replace Data-A with new data or to copy Data-B from another medium on the disk to the root directory. The data to be recorded is transferred to the memory 1812 and the destination for recording the data is indicated by a path name in the directory tree structure.

단계 S1902에서, 파일 시스템은 구동 장치에 명령하여, 메타데이터 파일 및 메타데이터 미러 파일에 대해서 할당된 영역을 인식하기 위한 메타데이터 파일 FE인 데이터를 판독하도록 한다.In step S1902, the file system instructs the driving device to read the data which is the metadata file FE for recognizing the area allocated for the metadata file and the metadata mirror file.

단계 S1903에서, 파일 시스템은 구동 장치에 명령하여 트랙 정보를 얻도록 한다. In step S1903, the file system instructs the drive device to obtain track information.

단계 S1904에서, 파일 시스템은 트랙이 메타데이터 기록에 사용되는지 여부를 알기 위해서 각각의 트랙을 점검한다. 트랙의 일부가 메타데이터 파일 또는 메타데이터 미러 파일의 크기에 지정되면, 트랙은 메타데이터 파일 또는 메타데이터 미러 파일 각각으로 메타데이터를 기록하도록 사용된다.In step S1904, the file system checks each track to see if the track is used for metadata recording. If a portion of the track is specified in the size of the metadata file or the metadata mirror file, the track is used to record the metadata into the metadata file or the metadata mirror file respectively.

단계 S1905에서, 파일 시스템은 사용자에 의해서 요청되는 디렉토리 또는 파일을 검색하기 위해서 데이터를 판독한다. 파일 엔트리 및 디렉토리와 같은 메타데이터는 메타데이터 파일로부터 판독된다.In step S1905, the file system reads data to retrieve a directory or file requested by the user. Metadata such as file entries and directories are read from the metadata file.

단계 S1906에서, 파일 시스템은 데이터를 기록하기 전에 NWA를 취한다. In step S1906, the file system takes the NWA before recording the data.

단계 S1907에서, 파일 시스템은 각각의 트랙이 사용되는지 여부를 점검한다. 메타데이터 기록을 위한 트랙이 고갈되면, 단계 S1908로 간다.In step S1907, the file system checks whether each track is used. If the track for metadata recording is exhausted, the flow goes to step S1908.

단계 S1908에서, 파일 시스템은 데이터 기록을 위해 사용된 트랙에서 예비된 트랙으로서 새로운 트랙을 지정한다. In step S1908, the file system designates a new track as a track reserved in the track used for data recording.

단계 S1909에서, 사용자 요청에 대해서 응답하여, 파일 시스템은 메타데이터의 일부를 생성하여 덮어쓰여지는 데이터 량은 기록되는 데이터의 유형을 구별함으로써 최소화된다. 도 11에 대한 설명에서 기술된 바와 같이, 파일이 업데이트되는 경우에, 파일 시스템은 기록되는 데이터의 위치를 지정하도록 파일 엔트리를 생성한다. 이 파일 엔트리는 덮어쓰여지는 데이터이다. 새로운 파일이 디렉토리하에서 기록되는 경우에, 파일 시스템은 새로운 파일의 파일 엔트리를 생성하며 디렉토리의 새로운 파일 및 파일 엔트리를 등록하기 위한 디렉토리를 업데이트한다. 디렉토리의 파일 엔트리는 덮어쓰여지는 데이터이며 다른 데이터는 덮어쓰여지지 않고도 기록될 수 있는 데이터이다. 데이터 유형은 덮어쓰여질 필요가 없는 유형 I과 덮어쓰여질 필요가 있는 유형 II 로 구분된다. In step S1909, in response to the user request, the file system generates a portion of the metadata so that the amount of data to be overwritten is minimized by distinguishing the type of data to be recorded. As described in the description of FIG. 11, when the file is updated, the file system creates a file entry to specify the location of the data to be recorded. This file entry is the data to be overwritten. When a new file is written under a directory, the file system creates a file entry of the new file and updates the directory to register the new file and file entry of the directory. File entries in a directory are data that will be overwritten and other data that can be written without being overwritten. Data types are divided into type I, which does not need to be overwritten, and type II, which needs to be overwritten.

단계 S1910에서, 파일 시스템은 NWA로부터 논리적 섹터로 유형 I 데이터를 기록하도록 명령한다. 이어서, 덮어쓰지 않고도 데이터를 기록하기 위한 동작인 단계 S1911로 간다. In step S1910, the file system instructs to write type I data from the NWA to the logical sector. Subsequently, the process goes to step S1911 which is an operation for recording data without overwriting.

단계 S1912에서, 파일 시스템은 유형 II 데이터를 논리적 섹터로 덮어쓰기 위해서 명령한다. 이어서 논리적 섹터에 데이터를 기록하기 위한 동작을 수행하는 단계 S1913으로 간다. 데이터를 기록하기 위해 명령되는 기록 명령은 유형 I 및 II에 대해서 서로 상이할 수 있다.In step S1912, the file system instructs to overwrite the type II data with the logical sectors. Subsequently, step S1913 is performed to perform an operation for writing data in the logical sector. The write commands ordered to write the data may be different for Type I and II.

단계 S1913에서, 상기 데이터는 논리적 섹터에 논리적으로 덮어쓰여지며 다른 기록되지 않은 물리적 섹터에 물리적으로 기록되는데, 특히 NWA로 기록된다. In step S1913, the data is logically overwritten in a logical sector and physically recorded in another unrecorded physical sector, in particular in NWA.

단계 S1914에서, 재맵핑 정보로서의 엔트리는 논리적 섹터에 대응하는 물리적 섹터의 원리 어드레스를 미리 지정하며 데이터가 기록된 물리적 섹터의 재맵핑 어드레스를 지정하도록 생성되며, 결함 리스트에 저장된다. In step S1914, the entry as the remapping information is generated to specify in advance the principle address of the physical sector corresponding to the logical sector and to specify the remapping address of the physical sector in which data is recorded, and is stored in the defect list.

단계 S1915에서, 파일 시스템은 메타데이터 파일 및 메타데이터 미러 파일의 크기로서 할당된 영역이 확장되는지 여부를 점검한다. 이 영역이 확장되면, 단계 S1916으로 간다.In step S1915, the file system checks whether the allocated area is expanded as the size of the metadata file and the metadata mirror file. If this area is expanded, the flow goes to step S1916.

단계 S1916에서, 파일 시스템은 메타데이터 파일 및 메타데이터 미러 파일의 파일 엔트리를 변경하여 파일 엔트리가 확장된 영역을 지정하며 구동 장치에 명령하여 단계 S1902에서 판독되는 논리적 섹터에 파일 엔트리를 기록하도록 한다.In step S1916, the file system changes the file entries of the metadata file and the metadata mirror file to designate an area in which the file entry is extended, and instructs the driving device to write the file entry in the logical sector read in step S1902.

이하, 도 16, 17A, 17B 및 19에서 전술된 방법을 이용하여 데이터가 기록되는 일회-기록형 디스크로부터 재생 과정이 설명된다. 도 20은 도 5 및 18에 설명된 기록/재생 시스템에 의해서 일회-기록형 광 디스크로부터 데이터를 판독하는 과정을 예시하는 흐름도이다. 도 20에서, 기록/재생 시스템은 적어도 데이터가 판독되는 논리적 섹터를 지정하는 판독 명령을 수신한다.Hereinafter, the reproduction process from the one-time recording disc in which data is recorded using the method described above in Figs. 16, 17A, 17B and 19 is described. 20 is a flowchart illustrating a process of reading data from a write-once optical disc by the recording / reproducing system described in FIGS. 5 and 18. In Fig. 20, the recording / reproducing system receives a read command specifying at least a logical sector from which data is read.

단계 S2001에서, 재맵핑 테이블 내에 저장된 모든 엔트리의 원래 어드레스가 검색된다. 판독되는 논리적 섹터 수가 지시되면, 미리 논리적 섹터에 대응하는 물리적 섹터 수는 물리적 섹터가 재맵핑되는 것을 표시하는 엔트리를 검색하는데 사용된다. 재맵핑이 ECC 블록 기반으로 수행될 때, 물리적 섹터 수가 재맵핑된 ECC 블록에 속하는지 여부가 점검된다. 이러한 동작은 도 5에 기술된 바와 같이 정보 기록/재생 시스템의 경우에 구동 장치에 의해서 수행될 수 있다.In step S2001, original addresses of all entries stored in the remapping table are retrieved. If the number of logical sectors to be read is indicated, the physical sector number corresponding to the logical sector in advance is used to retrieve an entry indicating that the physical sector is to be remapped. When remapping is performed on an ECC block basis, it is checked whether the number of physical sectors belongs to the remapped ECC block. This operation can be performed by the driving apparatus in the case of the information recording / reproducing system as described in FIG.

단계 S2002에서, 상기 엔트리가 발견되면, 단계 S2003으로 가고, 그렇지 않으면 단계 S2004로 간다. In step S2002, if the entry is found, go to step S2003, otherwise go to step S2004.

단계 S2003에서, 물리적 섹터의 원래 어드레스는 물리적 섹터의 재맵핑 어드레스와 교체되는데, 이는 상기 발견된 엔트리에 표시된다. 상기 엔트리가 단계 S2002에서 발견되지 않으면, 판독되는 어드레스는 판독 명령에 의해서 지정되는 논리적 섹터에 대응하는 물리적 섹터의 어드레스로서 결정된다. 상기 엔트리가 단계 S2002에서 발견되면, 판독되는 어드레스는 재맵핑 테이블에서 발견되는 원래 어드레스에 대응하는 재맵핑 어드레스로서 결정된다.In step S2003, the original address of the physical sector is replaced with the remapping address of the physical sector, which is indicated in the found entry. If the entry is not found in step S2002, the address to be read is determined as the address of the physical sector corresponding to the logical sector specified by the read command. If the entry is found in step S2002, the address to be read is determined as the remapping address corresponding to the original address found in the remapping table.

단계 S2004에서, 상기 데이터는 결정된 어드레스에서 판독된다. In step S2004, the data is read at the determined address.

전술된 바와 같이, 상기 어드레스가 발견되지 않을 때, 데이터는 미리 논리적 섹터에 대응하는 물리적 섹터로부터 판독되는데, 이는 재맵핑 테이블이 논리적 섹터 내에 저장된 데이터가 다른 물리적 섹터에 재맵핑되지 않음을 보여주기 때문이다.As described above, when the address is not found, data is read from the physical sector corresponding to the logical sector in advance, since the remapping table shows that the data stored in the logical sector is not remapped to another physical sector. to be.

어드레스가 발견되지 않을 때, 데이터는 발견된 재맵핑 정보내의 재맵핑 어드레스에 의해서 지정된 물리적 섹터로부터 판독되는데, 이는 재맵핑 테이블 내에서 발견된 엔트리가 논리적 섹터에 저장된 데이터가 재맵핑됨을 보여주기 때문이다.When no address is found, the data is read from the physical sector specified by the remapping address in the found remapping information, because the entry found in the remapping table shows that the data stored in the logical sector is remapped. .

데이터가 볼륨 공간 내에서 재맵핑되면, 특히 여분 영역이 아닌 트랙 내의 NWA로 재맵핑되면, 데이터는 더 신속히 판독될 수 있다.If data is remapped in volume space, especially if it is remapped to an NWA in a track rather than in an extra area, the data can be read more quickly.

전술된 실시예에서 설명된 바와 같이, 본 발명은, 데이터가 덮어쓰여지지 않고도 기록될 때, 상기 파일 시스템이 덮어쓰여지는 데이터 량을 최소화시키고 상기 파일 시스템이 구동 장치에 질의함으로써 기록되지 않은 섹터에 데이터를 기록하도록 명령한다는 가정하에서 구동 장치에 적용된다.As described in the above-described embodiment, the present invention is directed to minimizing the amount of data that is overwritten when the data is written without overwriting the sector and to the unwritten sector by querying the drive device. Applied to the drive device under the assumption of commanding to write data.

(실시예 4)(Example 4)

본 실시예에서는, 일례로서, UDF 파일 시스템 실행을 위한 가이드라인 및 요건이 설명된다. In this embodiment, as an example, guidelines and requirements for executing the UDF file system are described.

(의사-덮어쓰기 방법을 이용하는 잇점)(Advantages of using the pseudo-overwrite method)

물리적 특징으로 인한 복잡성을 감소시키기 위해서, 덮어쓰기 가능한 특징을 갖는 새로운 순차 기록 매체가 의사-덮어쓰기 가능한 매체로서 도입된다. 의사-덮어쓰기 방법은 이 의사-덮어쓰기 가능한 매체에 적용된다. 다음에는 새로운 순차 기록 매체를 도입하는 이점 중 일부가 설명된다.In order to reduce the complexity due to physical features, new sequential recording media with overwriteable features are introduced as pseudo-overwriteable media. The pseudo-overwrite method applies to this pseudo-overwriteable medium. Next, some of the advantages of introducing a new sequential recording medium will be described.

1) 재기록 가능한 매체와 유사하게, 덮어쓰기 가능한 볼륨 공간 및 결함 자유 공간이 제공된다. 다시 말해서, 덮어쓰기 가능한 메카니즘 및 결함 관리를 지원하는 구동 장치에 의해서 일회-기록형 매체와 호환성이 보장된다. 1) Similar to rewritable media, overwriteable volume space and defective free space are provided. In other words, compatibility with the write-once medium is ensured by the drive device supporting the overwritable mechanism and the defect management.

2) 의사-덮어쓰기 매체를 지원하는 판독 전용 구동 장치가 기록되지 않은 영역을 액세스할 때와 같이, 세션 폐쇄 및 보더 폐쇄가 불필요하다. 2) Session closure and border closure are unnecessary, such as when a read only drive supporting pseudo-overwrite media accesses an unwritten area.

3) 메타데이터 파티션 및 그 미러가 사용될 수 있다.3) Metadata partitions and their mirrors can be used.

(의사-덮어쓰기 가능한 매체의 특징)(Characteristic of pseudo-writable media)

의사-덮어쓰기 가능한 매체의 물리적 특징은 파일 시스템 구동기에 의해서 요구되는 관점으로부터 설명된다.The physical characteristics of the pseudo-overwriteable media are described from the perspective required by the file system driver.

의사-덮어쓰기 가능한 매체는 볼륨 공간 내의 논리적 섹터에 대한 멀티-트랙 기록 및 덮어쓰기 가능한 기능을 지원한다. 하나 이상의 트랙이 기록에 사용될 수 있다. 새로운 트랙이 예비된 트랙으로서 지정될 수 있다. 순차 기록 모드가 트랙 내에서 사용되어, 공간 관리를 단순화시킨다. 기록 가능한 영역에 대한 포인터는 다음으로 기록 가능한 어드레스(NWA)로서, 이는 구동 장치의 요구를 통해서 획득된다. Pseudo-overwritable media supports multi-track write and overwrite capabilities for logical sectors in volume space. More than one track can be used for recording. A new track can be designated as a reserved track. Sequential recording mode is used within the track to simplify space management. The pointer to the recordable area is the next recordable address NWA, which is obtained through the request of the driving apparatus.

데이터가 기록된 논리적 섹터 상에 기록되도록 할 때, 이 데이터는 선형 교체 알고리즘에 의해서 여분 영역 내에 또는 볼륨 공간 내의 NWA로 기록된다. 데이터를 볼륨 공간애의 NWA로 재맵핑하는 잇점으로서, 모든 사용 가능한 매체 볼륨이 사용될 수 있는데, 여분 영역 모두가 기록될 때에도 사용될 수 있다. 그러므로, 판독 모디파이 기록 동작도 지원되며, 각각의 논리적 섹터가 분리되어 덮어쓰여질 수 있다. When data is to be recorded on the recorded logical sector, this data is written to the NWA in the spare area or in the volume space by a linear replacement algorithm. As an advantage of remapping data to NWAs in volume space, all available media volumes can be used, even when all of the spare area is written. Therefore, a read modifier write operation is also supported, and each logical sector can be overwritten separately.

데이터가 교체되거나 원래의 어드레스로부터 재맵핑되는 어드레스 정보가 볼륨 공간으로부터의 결함 리스트 엔트리로서 저장되며 구동 장치에 의해서 관리된다.Address information for which data is replaced or remapped from the original address is stored as a defect list entry from the volume space and managed by the drive device.

(파일 시스템에 의한 기록 전략)(Writing strategy by file system)

일반적으로, 트랙은 기록되는 데이터 유형, 예를 들어, 메타데이터 또는 오디오/시각 데이터, 정지 영상 데이터, 음악 데이터 등과 같은 특정 데이터를 고려함으로써 지정될 수 있다. 멀티-트랙 기록에서, 예비된 트랙이 고갈될 때, 새로운 트랙이 지정되는데, 기록된 데이터의 량에 적응된다. 메타데이터 기록을 위한 트랙은 외적으로 메타데이터 파일 또는 메타데이터 미러 파일의 크기로서 표시된다.In general, a track may be designated by considering the type of data to be recorded, for example, specific data such as metadata or audio / visual data, still image data, music data, and the like. In multi-track recording, when a reserved track is depleted, a new track is designated, adapted to the amount of recorded data. The track for metadata recording is externally represented as the size of the metadata file or metadata mirror file.

의사-덮어쓰기 매체가, 트랙이 볼륨 공간의 끝에서 지정된 후에 새로운 트랙이 지정될 수 없는 제한 사항을 갖는다면, 멀티-트랙 기록은 하나의 AVDP만이 LSN 256에 기록되는 중간 상태에서 사용된다. ECMA 167 요구 사항에 따라서, AVDP는 적어도 두 개 또는 세게의 위치에 기록된다(즉, LSN 256, LSN-256 및 마지막 LSN). 이 예에서 트랙은 마지막 LSN-256 또는 마지막 LSN에서 AVDP를 기록하도록 지정된다. If the pseudo-overwrite medium has a limitation that no new track can be specified after the track is specified at the end of the volume space, multi-track recording is used in the intermediate state where only one AVDP is written to LSN 256. In accordance with ECMA 167 requirements, the AVDP is recorded in at least two or three positions (ie LSN 256, LSN-256 and the last LSN). In this example the track is designated to record the AVDP at the last LSN-256 or the last LSN.

메타데이터 미러 파일 역시 사용될 수 있다. 디스크가 기록에 사용될 때 메타데이터 미러 파일을 생성하는 것이 추천된다. 온라인 사용의 경우에, 각각의 트랙 내의 NWA의 오프셋이 각각의 트랙의 기록 조건으로 인해서 동일하게 되지 않을지라도, 메타데이터 파일 및 메타데이터 미러 파일 내에 기록된 콘텐츠가 각 파일 내에서 동일 오프셋을 갖도록 기록하는 것이 실행된다. Metadata mirror files can also be used. It is recommended to create a metadata mirror file when the disk is used for recording. In the case of online use, even if the offset of the NWA in each track is not the same due to the recording conditions of each track, the content recorded in the metadata file and the metadata mirror file is recorded to have the same offset in each file. Is done.

도 21A는 논리적 포맷 후에 트랙 레이아웃의 일례를 도시한다. 먼저 LSN 256의 AVDP 및 관련된 파일 구조를 포함하는 볼륨 구조가 기록된다. 이어서, 메타데이터 기록에 하나의 트랙이 지정되며, 메타데이터는 그 트랙에 기록된다. 볼륨 공간 내의 나머지 영역은 파일 데이터 기록에 사용된다.21A shows an example of track layout after logical format. First, a volume structure including the AVDP of LSN 256 and its associated file structure is recorded. Then, one track is designated in the metadata recording, and the metadata is recorded in that track. The remaining area in the volume space is used for recording file data.

도 21B는 일부 파일이 기록된 후의 트랙 레이아웃의 일례를 도시한다. 제 1 트랙이 고갈된 후에, 새로운 트랙이 지정된다. 따라서, 부가적인 트랙이 차례로 지정될 수 있다.21B shows an example of the track layout after some files are recorded. After the first track is exhausted, a new track is designated. Thus, additional tracks can be designated in turn.

도 21C는 일부 파일이 기록된 후의 트랙 레이아웃의 또 다른 예를 도시한다. 메타데이터 기록을 위한 트랙이 고갈될 때, 메타데이터 파일에 대한 부가적인 영역이 트랙이 아니라 확장으로서 데이터 트랙에 할당될 수 있다.21C shows another example of the track layout after some files are recorded. When a track for metadata recording is depleted, an additional area for the metadata file can be assigned to the data track as an extension rather than a track.

(파일 시스템에 대한 요구 사항)(Requirements for File System)

의사-덮어쓰기 방법에 대한 요구 사항은 다음과 같이 리스트된다.The requirements for the pseudo-overwrite method are listed as follows.

1) 구동 장치에 질의하므로 의사-덮어쓰기 가능한 매체를 인식하도록 수행된다.1) A query to the drive device is performed to recognize a pseudo-overwriteable medium.

2) 할당되지 않은 공간 비트맵 및 할당되지 않은 공간 테이블이 기록되지 않는다.2) Unallocated spatial bitmaps and unallocated spatial tables are not recorded.

3) 메타데이터 비트맵 파일이 기록되지 않는다.3) The metadata bitmap file is not recorded.

4) 부가적인 데이터 기록에 앞서서 각각의 트랙의 NWA에 대한 질의가 항상 수행되어야 한다. 기록 명령이 이미-기록된 영역에 나타나면, 결함 리스트 엔트리가 사용된다. 그러므로, 이러한 요구 사항은 결함 리스트의 크기가 제한되므로 불필요한 결함 리스트 엔트리를 감소시키는데 중요하다. 4) Inquiries about the NWA of each track should always be performed prior to additional data recording. If a write command appears in an already-recorded area, a defect list entry is used. Therefore, this requirement is important for reducing unnecessary defect list entries since the size of the defect list is limited.

5) 소거된 블록은 동일 이유로 NWA에 질의하는데 재사용되지 않아야 한다.5) The erased block should not be reused to query the NWA for the same reason.

6) 덮어쓰여지는 메타데이터는 최소화되어야 한다. 디렉토리 파일 엔트리만이 덮어쓰여지는 것이 추천된다. 6) Overwritten metadata should be minimized. It is recommended that only directory file entries be overwritten.

본 발명은 논리적 덮어쓰기 가능한 메카니즘을 이용하여 일회-기록형 디스크를 위한 기록 방법, 및 기록 장치 또는 재생 장치에서 사용하기 위한 반도체 집적 회로를 제공하는데 유용하다. The present invention is useful for providing a recording method for a write-once type disc and a semiconductor integrated circuit for use in a recording device or a reproducing device using a logically overwriteable mechanism.

Claims (12)

일회-기록형 디스크 상에 데이터를 기록하도록 의사-덮어쓰기 기능(pseudo-overwrite function)을 갖는 구동 장치에 명령하는 기록 방법으로서, 상기 일회-기록형 디스크는 복수의 트랙들을 포함하는 볼륨 공간을 포함하고, 상기 의사-덮어쓰기 기능은 교체 동작에 의해 데이터를 이미 기록된 영역으로 기록하라는 명령에 응답하여 상기 구동 장치로 하여금 상기 데이터를 기록되지 않은 영역에 기록하도록 하는, 상기 기록 방법에 있어서: A recording method for instructing a drive device having a pseudo-overwrite function to write data on a write once disc, wherein the write once disc comprises a volume space including a plurality of tracks. And wherein the pseudo-overwrite function causes the drive device to record the data in the unrecorded area in response to a command to record the data into the already recorded area by a replacement operation: (a) 기록될 파일에 대한 데이터를 지정하는 기록 요청을 수신하는 단계;(a) receiving a write request specifying data for a file to be written; (b) 메타데이터 파일의 파일 엔트리를 획득하기 위해, 상기 일회-기록형 디스크의 위치로부터 상기 파일을 관리하기 위한 메타데이터를 포함하는 상기 메타데이터 파일의 파일 엔트리를 판독하도록 상기 구동 장치에 명령하는 단계;(b) instructing the drive device to read a file entry of the metadata file that includes metadata for managing the file from the location of the write-once disc, to obtain a file entry of the metadata file. step; (c) 상기 복수의 트랙들 각각의 위치를 나타내는 트랙 정보를 획득하는 단계; (c) acquiring track information indicating a position of each of the plurality of tracks; (d) 상기 메타데이터 파일의 파일 엔트리 및 상기 트랙 정보에 기초하여, 메타데이터가 다음에 기록되는 트랙을 상기 복수의 트랙들로부터 결정하는 단계;(d) determining, from the plurality of tracks, a track to which metadata is next recorded based on the file entry of the metadata file and the track information; (e) 상기 메타데이터를 획득하기 위해, 상기 일회-기록형 디스크의 위치로부터 상기 메타데이터를 판독하도록 상기 구동 장치에 명령하는 단계;(e) instructing the drive device to read the metadata from the position of the write-once disc to obtain the metadata; (f) 상기 단계 (d)에서 결정된 트랙 이외의 트랙 내의 다음에 데이터가 기록되는 위치를 나타내는 다음의 기록 가능한 어드레스를 획득하는 단계로서, 상기 트랙은 상기 복수의 트랙들로부터 선택되는, 상기 어드레스 획득 단계;(f) obtaining a next recordable address indicating a position at which data is next recorded in a track other than the track determined in step (d), wherein the track is selected from the plurality of tracks. step; (g) 상기 기록 요청에 의해 지정된 상기 데이터의 기록을 반영하기 위해 상기 메타데이터를 업데이트하는 단계;(g) updating the metadata to reflect a record of the data specified by the record request; (h) 상기 일회-기록형 디스크 내의 상기 다음의 기록 가능한 어드레스에 의해 표시되는 위치에 상기 기록 요청에 의해 지정된 데이터를 기록하도록 상기 구동 장치에 명령하는 단계; 및(h) instructing the drive device to record the data designated by the write request at a location indicated by the next recordable address in the write-once disc; And (i) 상기 단계 (e)에서 상기 일회-기록형 디스크 내에서 상기 메타데이터가 판독되는 위치에 상기 업데이트된 메타데이터 중 적어도 일부를 기록하도록 상기 구동 장치에 명령하는 단계를 포함하고,(i) instructing the drive device to record at least some of the updated metadata at the location where the metadata is read in the write-once disc in step (e); 상기 단계 (d)에서 결정된 트랙 내의 다음의 기록 가능한 어드레스가 유효한지 여부를 결정하는 단계; 및Determining whether the next recordable address in the track determined in step (d) is valid; And 상기 단계 (d)에서 결정된 트랙 내의 상기 다음의 기록 가능한 어드레스가 유효하지 않다고 결정될 때, 메타데이터가 다음에 기록되는 제 1 트랙 및 데이터가 다음에 기록되는 제 2 트랙을 할당하도록 상기 구동 장치에 명령하고, 상기 단계 (f)에서 획득된 상기 다음의 기록 가능한 어드레스를 상기 제 2 트랙 내의 다음의 기록 가능한 어드레스로 업데이트하는 단계를 더 포함하는 것을 특징으로 하는, 기록 방법.When it is determined that the next recordable address in the track determined in step (d) is invalid, instructing the drive device to allocate a first track whose metadata is next recorded and a second track where data is next recorded. And updating the next recordable address obtained in step (f) to a next recordable address in the second track. 삭제delete 삭제delete 삭제delete 일회-기록형 디스크 상에 데이터를 기록하도록 의사-덮어쓰기 기능을 갖는 구동 장치에 명령하는 시스템 제어기로서, 상기 일회-기록형 디스크는 복수의 트랙들을 포함하는 볼륨 공간을 포함하고, 상기 의사-덮어쓰기 기능은 교체 동작에 의해 데이터를 이미 기록된 영역으로 기록하라는 명령에 응답하여 상기 구동 장치로 하여금 상기 데이터를 기록되지 않은 영역에 기록하도록 하는, 상기 시스템 제어기에 있어서:A system controller for instructing a drive device having a pseudo-overwrite function to write data on a write once disc, wherein the write once disc includes a volume space including a plurality of tracks, and the pseudo-overwrite function. In the system controller, the write function causes the drive device to write the data to the unrecorded area in response to a command to write data to the area already recorded by the replacement operation: 상기 시스템 제어기는 상기 구동 장치를 제어하기 위한 제어기를 포함하고,The system controller includes a controller for controlling the drive device, 상기 제어기는 제1항에 따른 기록 방법의 단계들을 포함하는 프로세스를 수행하도록 구성되는 것을 특징으로 하는, 시스템 제어기.Wherein said controller is configured to perform a process comprising the steps of the recording method according to claim 1. 제 5 항에 있어서,The method of claim 5, 상기 제어기는 반도체 집적 회로인, 시스템 제어기.The controller is a semiconductor integrated circuit. 일회-기록형 디스크 상에 데이터를 기록하도록 의사-덮어쓰기 기능을 갖는 구동 장치에 명령하는 시스템 제어기에서 이용하기 위한 프로그램을 저장하는 컴퓨터 판독가능 저장 매체로서, 상기 일회-기록형 디스크는 복수의 트랙들을 포함하는 볼륨 공간을 포함하고, 상기 의사-덮어쓰기 기능은 교체 동작에 의해 데이터를 이미 기록된 영역으로 기록하라는 명령에 응답하여 상기 구동 장치로 하여금 상기 데이터를 기록되지 않은 영역에 기록하도록 하는, 상기 컴퓨터 판독가능 저장 매체에 있어서:A computer-readable storage medium for storing a program for use in a system controller instructing a drive device having a pseudo-overwrite function to write data on a write-once disc, wherein the write-once disc is a plurality of tracks. And a pseudo-overwrite function, wherein the pseudo-overwrite function causes the drive device to write the data to the unrecorded area in response to a command to record the data to the already recorded area by a replacement operation, In the computer readable storage medium: 상기 프로그램은 상기 시스템 제어기에 의해 실행될 때 상기 시스템 제어기로 하여금 제1항에 따른 기록 방법의 단계들을 포함하는 프로세스를 수행하도록 구성되는 것을 특징으로 하는, 컴퓨터 판독가능 저장 매체.And wherein the program is configured to, when executed by the system controller, cause the system controller to perform a process comprising the steps of the recording method according to claim 1. 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020067023666A 2004-05-10 2005-05-09 Data recording/reproduction for write-once discs KR101066807B1 (en)

Applications Claiming Priority (16)

Application Number Priority Date Filing Date Title
US56953604P 2004-05-10 2004-05-10
US56953704P 2004-05-10 2004-05-10
US60/569,536 2004-05-10
US60/569,537 2004-05-10
US57773404P 2004-06-07 2004-06-07
US57761604P 2004-06-07 2004-06-07
US60/577,734 2004-06-07
US60/577,616 2004-06-07
US60549104P 2004-08-30 2004-08-30
US60/605,491 2004-08-30
US60548804P 2004-08-31 2004-08-31
US60/605,488 2004-08-31
US66823605P 2005-04-04 2005-04-04
US66823705P 2005-04-04 2005-04-04
US60/668,236 2005-04-04
US60/668,237 2005-04-04

Publications (2)

Publication Number Publication Date
KR20070012822A KR20070012822A (en) 2007-01-29
KR101066807B1 true KR101066807B1 (en) 2011-09-22

Family

ID=34979252

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067023666A KR101066807B1 (en) 2004-05-10 2005-05-09 Data recording/reproduction for write-once discs

Country Status (7)

Country Link
US (1) US8072860B2 (en)
EP (1) EP1745480A1 (en)
JP (1) JP5128131B2 (en)
KR (1) KR101066807B1 (en)
CN (1) CN1957414B (en)
TW (1) TWI345229B (en)
WO (1) WO2005109428A1 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8121007B2 (en) * 2004-05-10 2012-02-21 Panasonic Corporation Pseudo-overwriting data on write-once discs
EP1756823A1 (en) * 2004-05-10 2007-02-28 Matsusita Electric Industrial Co., Ltd. Data recording/reproduction for write-once discs
JP2007536676A (en) * 2004-05-10 2007-12-13 松下電器産業株式会社 Data recording / playback for write-once discs
WO2006006086A1 (en) * 2004-07-05 2006-01-19 Koninklijke Philips Electronics N.V. Device for and method of recording information on write-once record carrier
US8515249B2 (en) * 2005-10-17 2013-08-20 Mediatek Inc. Methods and apparatus for creating and playing a playable unfinalized recordable disc
US8031567B2 (en) * 2006-04-06 2011-10-04 Panasonic Corporation Data recording method and data recording device for write-once type recording medium
JP5049518B2 (en) * 2006-06-14 2012-10-17 株式会社日立製作所 Recording method and optical disk recording apparatus
JP4734215B2 (en) * 2006-10-30 2011-07-27 株式会社日立製作所 Recording method and optical disk recording apparatus
JP5296548B2 (en) * 2006-11-06 2013-09-25 パナソニック株式会社 Recording device
US8271751B2 (en) 2008-04-24 2012-09-18 Echostar Technologies L.L.C. Systems and methods for reliably managing files in a computer system
US8738621B2 (en) * 2009-01-27 2014-05-27 EchoStar Technologies, L.L.C. Systems and methods for managing files on a storage device
JP5259780B2 (en) * 2010-09-14 2013-08-07 株式会社東芝 Video file creation apparatus and video file creation method
JP6429124B2 (en) * 2015-03-27 2018-11-28 パナソニックIpマネジメント株式会社 Optical disc apparatus, method and computer program

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030011100A (en) * 2001-04-25 2003-02-06 코닌클리케 필립스 일렉트로닉스 엔.브이. Methods and devices for recording or reading files on/from a sequential medium and sequential medium

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63146287A (en) * 1986-12-10 1988-06-18 Ricoh Co Ltd Memory control method for optical disk
US5448728A (en) * 1991-08-08 1995-09-05 Sharp Kabushiki Kaisha Storage medium control system for controlling a write-once read-many storage medium
US6502174B1 (en) * 1999-03-03 2002-12-31 International Business Machines Corporation Method and system for managing meta data
JP2002117548A (en) * 2000-10-06 2002-04-19 Mitsubishi Chemicals Corp Information recording medium and recording and reproducing method of information recording medium
JP4100913B2 (en) * 2002-01-15 2008-06-11 株式会社リコー Information reproduction apparatus, data management information acquisition method, data management information acquisition program, storage medium, and reproduction system
US8121007B2 (en) * 2004-05-10 2012-02-21 Panasonic Corporation Pseudo-overwriting data on write-once discs
EP1756823A1 (en) * 2004-05-10 2007-02-28 Matsusita Electric Industrial Co., Ltd. Data recording/reproduction for write-once discs
JP2007536676A (en) * 2004-05-10 2007-12-13 松下電器産業株式会社 Data recording / playback for write-once discs

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030011100A (en) * 2001-04-25 2003-02-06 코닌클리케 필립스 일렉트로닉스 엔.브이. Methods and devices for recording or reading files on/from a sequential medium and sequential medium

Also Published As

Publication number Publication date
KR20070012822A (en) 2007-01-29
CN1957414A (en) 2007-05-02
JP2007536675A (en) 2007-12-13
US8072860B2 (en) 2011-12-06
JP5128131B2 (en) 2013-01-23
CN1957414B (en) 2011-04-20
EP1745480A1 (en) 2007-01-24
TWI345229B (en) 2011-07-11
TW200606886A (en) 2006-02-16
US20080232210A1 (en) 2008-09-25
WO2005109428A1 (en) 2005-11-17

Similar Documents

Publication Publication Date Title
KR101066807B1 (en) Data recording/reproduction for write-once discs
US8259544B2 (en) Drive device
US7894316B2 (en) Write-once recording medium, a recording apparatus and a reproducing apparatus for a write-once recording medium
KR101208321B1 (en) - Pseudo-overwriting data on write-once discs
US7821896B2 (en) Data recording/reproduction for write-once discs
KR20070005909A (en) Recording device, reproduction device, host device, drive device, recording method, reproduction method, program, and information recording medium
US7823032B2 (en) Data recording/reproduction for write-once discs

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
FPAY Annual fee payment

Payment date: 20140814

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150819

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee