정보 캐리어로의 평균 액세스 시간을 저감하기 위한 버퍼를 갖는 재생 장치(REPRODUCTION APPARATUS HAVING A BUFFER FOR REDUCING THE MEAN ACCESS TIME TO AN INFORMATION CARRIER)
(19) 대한민국특허청(KR)
(12) 등록특허공보(B1)
(45) 공고일자 2010년01월22일
(11) 등록번호 10-0938428
(24) 등록일자 2010년01월15일
(51) Int. Cl.
G11B 27/10 (2006.01) G06F 3/06 (2006.01)
G06F 12/08 (2006.01) G11B 27/32 (2006.01)
(21) 출원번호 10-2004-7009076
(22) 출원일자 2002년12월05일
심사청구일자 2007년11월29일
(85) 번역문제출일자 2004년06월11일
(65) 공개번호 10-2004-0062676
(43) 공개일자 2004년07월07일
(86) 국제출원번호 PCT/EP2002/013783
(87) 국제공개번호 WO 2003/052760
국제공개일자 2003년06월26일
(30) 우선권주장
10162046.2 2001년12월17일 독일(DE)
(56) 선행기술조사문헌
US20010008507 A1
US20010034808 A1
(73) 특허권자
톰슨 라이센싱
프랑스 세데 볼로뉴 께아 르 갈로 46
(72) 발명자
빈터마르코
독일, 30173 하노버, 뵈메르스트라쎄 17
코할레,악셀
독일, 31832 슈프링거, 벡커벡 1
(74) 대리인
김학수, 문경진
전체 청구항 수 : 총 12 항 심사관 : 하태진
(54) 정보 캐리어로의 평균 액세스 시간을 저감하기 위한 버퍼를 갖는 재생 장치
(57) 요 약
본 발명은 예를 들어 불연속 데이터 구조 또는 비교적 긴 액세스시간을 갖는 정보 캐리어로의 평균 액세스 시간
을 저감시키기 위한 버퍼를 구비한 재생장치에 관한 것이다. 버퍼로 섹터(S)를 기록하고 버퍼에서 섹터(S)를 찾
기 위해, 다수의 위치 홀더와 3개의 변수를 갖는 제어 테이블(CS)이 마련되고, 각 케이스에 있어서의 위치홀더는
3개의 영역으로 분할된 위치홀더의 무단 체인(endless chain)에 있어서 다음의 위치 홀더로의 인덱스로 지시하고
각 영역의 순서에 있어서 소정 섹터(S)가 하나의 변수로 식별된다. 위치홀더의 행이 하나만 마련되어도, 버퍼에
기록된 복수의 섹터(S)로의 다중 액세스를 제어 테이블(CS)을 이용하여 저비용으로 실행하는 것이 가능해지므로,
정보 캐리어로의 더 낮은 저속 액세스의 회수가 저감되고 평균 액세스 시간이 단축된다. 응용은 예를 들어 DVD
재생장치 등의 작은 저장 공간을 갖는 재생장치에 대해 실시할 수 있다.
대 표 도
- 1 -
등록특허 10-0938428
특허청구의 범위
청구항 1
정보 캐리어로의 평균 액세스 시간을 저감하기 위한 버퍼를 갖는 재생 장치로서,
상기 버퍼로 섹터(S)를 기록하고, 이 버퍼에서 섹터(S)를 찾기 위해,
다수의 위치홀더(PH)와 3개의 변수(la, lf, lu)를 갖는 제어 테이블(CS)이 마련되고,
각 경우에 있어서의 상기 위치홀더(PH)가, 섹터(S)의 할당된 영역(AS), 섹터(S)의 해제된 영역(FS), 및 섹터
(S)의 미할당된 영역(US)으로 분할된, 순환적으로 구성된, 위치홀더(PH)의 하나의 무단 체인(endless chain) 내
의 후속하는 위치홀더(PH)를 인덱스(next)로 지시하며,
상기 변수(la, lf, lu)의 하나는 각각 상기 영역(AS, FS 및 US)의 하나로의 소정의 진입점(entry point)을 식
별하는 것을 특징으로 하는, 재생장치.
청구항 2
제1항에 있어서,
상기 제어 테이블(CS)은 어플리케이션 메모리(AM)에 배치되는 것을 특징으로 하는, 재생장치.
청구항 3
제1항에 있어서,
상기 위치홀더(PH)는 상기 버퍼에 기록된 섹터(S)에 마련되는 것을 특징으로 하는, 재생장치.
청구항 4
제1항에 있어서,
상기 버퍼는 트랙버퍼(TB)인 것을 특징으로 하는, 재생장치.
청구항 5
제1항에 있어서,
상기 3개의 변수(la, lf, lu)와, 최하위 인덱스(next)를 갖는 위치홀더(PH)만이 상기 제어 테이블(CS)의 초기화
단계에서 초기화되는 것을 특징으로 하는, 재생장치.
청구항 6
제1항에 있어서,
어플리케이션 메모리(AM)의 위치홀더(PH)의 배열의 경우에 있어서, 상기 버퍼의 각 저장위치에는 위치홀더(PH)
가 할당되는 것을 특징으로 하는, 재생장치.
청구항 7
제1항에 있어서,
상기 위치홀더(PH)의 무단 체인의 3개의 영역(AS, FS, US)은 섹터(S)의 할당된 영역(AS), 섹터(S)의 해제된 영
역(FS) 및 섹터(S)의 미할당된 영역(US)인 것을 특징으로 하는, 재생장치.
청구항 8
제1항에 있어서,
상기 섹터(S)의 할당된 영역(AS)의 첫 번째 섹터(S)를 지시하는 변수(la)가 마련되고, 상기 섹터(S)의 해제된
영역(FS)의 첫 번째 섹터(S)를 지시하는 변수(lf)가 마련되고, 상기 섹터(S)의 미할당된 영역(US)의 첫 번째 섹
터(S)를 지시하는 변수(lu)가 마련되며, 이들 변수는 각 영역(AS, FS 또는 US)으로의 소정의 진입점을 형성하는
- 2 -
등록특허 10-0938428
것을 특징으로 하는, 재생장치.
청구항 9
제1항에 있어서,
상기 섹터(S)의 미할당된 영역(US)의 섹터(S)는 섹터(S)의 미할당된 영역(US)에 있어서 상기 섹터(S)의 할당된
영역(AS)의 첫 번째 섹터(S)를 지시하는 마지막 섹터(S)를 제외하고는 연쇄순서(chained order)에서 벗어나는
방식으로 마련되는 것을 특징으로 하는, 재생장치.
청구항 10
제1항에 있어서,
상기 영역(AS, FS 및 US)의 섹터(S)는 이들이 상기 버퍼에 기록된 시간적 순서에 대응하는 순서로 서로 연쇄되
어 있는 것을 특징으로 하는, 재생장치.
청구항 11
제1항에 있어서,
각 경우에 있어서 상기 체인의 각 영역(AS, FS, US)에 선행하고 또한 이 선행영역(AS, US, FS)의 마지막 섹터
(S)인 섹터(S) 또는 위치 홀더(PH)는 상기 변수(la, lf, lu)중의 하나를 갖는 영역(AS, FS 및 US) 중 하나의
영역에 대한 소정의 진입점으로서 마련되는 것을 특징으로 하는, 재생장치.
청구항 12
제1항에 있어서,
각 경우에 있어서 상기 각각의 영역(AS, FS, US)의 섹터(S)의 순서에 있어서 섹터(S) 또는 위치홀더(PH)의 소정
의 번호 뒤에 위치한 섹터(S)는 상기 변수(la, lf, lu) 중의 하나를 갖는 영역(AS, FS 및 US) 중 하나의 영역에
대한 소정의 진입점으로서 마련되는 것을 특징으로 하는, 재생장치.
명 세 서
기 술 분 야
본 발명은 예를 들어 불연속 데이터 구조를 갖거나 비교적 액세스시간이 긴 정보 캐리어로의 평균 액세스 시간<1>
을 저감하기 위한 버퍼를 갖는 재생 장치에 관한 것이다.
배 경 기 술
재생 장치 또는 드라이브의 속도는 종종 제품에 주의를 끌게 한다. 특히, 드라이브의 경우에 있어서, 속도가 더<2>
빠른 것은 소음도 더 많이 난다는 것을 의미하기도 하며, 반면에 실제로 특정한 최대의 성능은 극소수의 드라이
브에 의해 실현된다. 오히려, 편리한 동작을 위해 보다 더 중요한 것은 불연속 데이터 구조를 갖거나 비교적 액
세스 시간이 긴 DVD와 CD매체의 판독 시의 평균속도 또는 평균 액세스 시간이다. 또, 여기서 일정하게 빠른 속
도를 제공하는 드라이브는 음성 및 화상 파일을 확실하게 재생하게 할 것이다. CD 응용에 있어서, 판독헤드는
예를 들면 재생시에 중간 시퀀스나 미션지시를 로드하기 위해서 하나의 섹터에서 다른 섹터로 점프하는 경우가
종종 있다.
이 액세스 시간은 픽업이라고도 부르는 더 빠른 판독 헤드로 감소될 수 있다. 그러나, 이 판독 헤드는 고가이며<3>
제한된 범위 내에서만 개선한다.
또한, 비교적 저속 저장매체의 재생을 고속화하거나 평균 액세스 시간을 저감하는 컴퓨터 기술에 있어서, 캐싱<4>
이라고도 불리는 버퍼기술이 알려져 있다. 캐시는 고속 버퍼이다. 버퍼는 더 낮은 저속 저장매체에 저장된 빈번
히 사용되는 데이터를 버퍼 저장한다. 버퍼의 실효성은 그 속도 및 어플리케이션에 의해 요구된 데이터가 버퍼
내에서 유용하고 더 낮은 저속 저장매체로부터 찾아냈거나 또는 아직도 검색해야 할 데이터의 비율에 따라서 결
정된다. 기본적으로, 3가지 형태의 버퍼로 구별된다:
직접 매핑 캐시(direct mapped cache)라고도 불리는 버퍼인 경우에 있어서, 각 저장위치는 많은 다른 저장위치<5>
- 3 -
등록특허 10-0938428
와 함께 캐시가 공유하는 하나의 캐시 행 위에 매핑된다. 저장위치를 버퍼저장할 수 있는 가능 위치가 1개뿐이
므로, 실행될 탐색이 없고 또 저장정보를 포함하거나 포함하지 않는 캐시행이 없다. 불운하게도, 최소 비용을
필요로 하는 직접 매핑 캐시는 어드레스를 저장할 수 있는 개소가 1개뿐이기 때문에 또 가장 나쁜 성능을 갖는
다. 요구된 데이터를 행의 최초 개소에 임의로 위치시켜야 하기 때문에, 적중률도 비교적 낮다.
완전 연관 캐시(fully associative cache)는, 캐시의 각 행이 버퍼 저장할 각 어드레스를 포함하고 있어, 최고<6>
의 적중률을 갖고 있다. 이것은, 어드레스가 사용해야 하는 행이 단지 1개가 아니기 때문에, 직접 매핑 캐시에
서 발생하는 문제점이 없어진다는 것을 의미한다. 그러나, 이 캐시는 캐시를 탐색해야 한다는 단점이 있다. 또,
여러 행 중 어느 것이 새로운 엔트리를 가산하기 위해 사용될 것인지를 결정하기 위해서는 더 많은 논리 회로가
가산되어야 한다. 통상, 어느 캐시 행이 사용될 것인지를 결정하기 위해서는 최근에 가장 적게 사용된 행부터
진행하는 알고리즘이 이용된다. 그러나, 이것은 시스템의 비용 및 복잡성을 증가시키는 것을 의미한다. 버퍼의
제3 형태인 다중 연관 캐시(multiway associative cache)는 직접 매핑 캐시 및 연관 캐시의 중간물이다. 이 캐
시는 "N"행의 조로 분할되어 있고, "N"은 통상 2, 4, 8,…이고, 각 저장어드레스는 복수 행의 하나에 버퍼저장
될 수 있다. 이것에 의해, "N"을 낮게 유지할 수 있으므로, 광범위한 탐색을 실행하는 일 없이, 직접 매핑 캐시
에 비해 적중률이 향상된다. 그렇지만, 제어를 위해 복수의 저장 행이 필요하고, 또 비용 증가가 필요하게
된다.
발명의 상세한 설명
따라서, 본 발명의 목적은 예를 들어 불연속 데이터 구조를 갖거나 비교적 액세스 시간이 긴 정보 캐리어로의<7>
평균 액세스 시간을 저감하기 위한 버퍼를 갖는 재생장치로서 저 비용을 요구하며 짧은 평균 액세스 시간을 보
장하는 재생 장치를 제공하는 것이다.
상기의 목적은 독립 청구항에 규정되어 있는 특징에 의해 달성된다. 유익한 구체화는 종속 청구항에 규정되어<8>
있다.
본 발명의 일 측면에 따르면, 버퍼를 제어하는데 저렴한 비용이 요구되며, 또 저속 정보 저장 매체로의 액세스<9>
회수 및 평균 액세스 시간을 저감하는 버퍼를 갖는 재생장치가 제안된다. 이를 위해, 서로 연결되어 있는 위치
홀더의 일렬 즉 행으로 그리고 적은 개수의 변수에 의해 액세스되는 버퍼가 마련된다. 위치홀더는 일렬 즉 행으
로 구성되어 있음에도 불구하고, 정보 캐리어에서 버퍼로 로드되어 있는 버퍼내의 첫 번째 섹터로 바로 액세스
되는 것이 아닌, 오히려 복수의 섹터로의 액세스는 위치홀더의 단지 1행과 변수들에 의해 가능하게 된다. 위치
홀더의 행은 어플리케이션 메모리에 변수의 행과 함께 마련하거나, 또는 버퍼에 직접 마련할 수 있다. 어플리케
이션 메모리내의 위치홀더의 배열의 경우에 있어서, 각 위치홀더는 버퍼내의 저장위치에 대응하고, 그 위치홀더
는 변수의 행과 함께, 버퍼에 섹터를 기록하거나 버퍼로부터 섹터를 판독하기 위해 사용되는 제어 테이블을 형
성한다. 그 다음의 위치홀더의 인덱스를 각 경우에 있어서 정보로서 위치홀더가 포함하도록 위치홀더의 행이 구
성되어 있고, 그 결과 바람직하게 3개의 영역으로 분할되어 있는 무단 체인이 형성된다. 변수는 각각 상기 영역
중 1개의 영역으로의 진입점을 식별한다. 이 각 영역으로의 진입점은 예를 들면 각 영역내의 첫 번째 섹터이다.
그러나, 위치홀더에 할당된 인덱스의 변경시의 점프를 저감하기 위해서, 선행하는 영역내의 섹터를 진입점으로
서 사용할 수도 있다. 상술한 영역은 할당된 섹터라고 불리는 사용시의 섹터의 영역, 해제된 섹터의 영역 및 미
할당 위치홀더의 영역이다. 이 3개의 영역내의 섹터는 그들이 캐시 또는 버퍼로 전송된 시간적 순서로
분류된다. 따라서, 행 부분의 현재 섹터는 이 행 부분의 첫 번째 섹터이다. 정보 캐리어로부터 판독된 시간적
순서로 섹터가 분류되며, 즉 마지막에 판독된 섹터가 이 영역의 첫 번째 섹터이며, 이 영역의 마지막 위치홀더
는 후속하는 영역의 첫 번째 위치홀더를 지시한다. 마찬가지로, 해제된 섹터는 예를 들면 할당에서 자유로워졌
으면, 이들 섹터가 캐시로 전송된 시간에 따라서 분류된다. 그리고, 할당된 섹터의 영역에서 해제된 섹터의 영
역으로 수용된 마지막 섹터는 해제된 섹터의 영역에 있어서 첫 번째 섹터이다. 그 다음에 해제된 섹터의 영역에
서의 마지막 위치홀더는 미할당된 위치홀더의 영역의 첫 번째 위치홀더를 지시한다. 미할당된 위치홀더는 섹터
를 포함하고 있지 않다. 미할당된 위치홀더의 영역에 있어서 임의의 순서가 가능하지만, 제안된 무단(endless)
체인을 형성하기 위해서는 미할당 위치홀더의 영역내의 마지막 섹터가 할당된 섹터의 영역내의 첫 번째 위치홀
더를 지시하는 것이 보장되어야 한다.
위치홀더의 행 또는 체인의 초기화를 단축하기 위해서, 첫 번째 섹터의 기록시에 다음의 제1 포인터만이 형성되<10>
도록 마련한다. 그 결과, 할당될 다음의 위치홀더가 이미 결정되어 있으므로, 그 이상의 위치홀더의 초기화는
불필요하게 되고, 그 결과 초기화를 위해 필요한 시간이 대폭 단축된다.
상술한 위치홀더의 3개의 영역을 제어하기 위해서는, 각 영역에 있어서 이 영역으로의 엔트리용 섹터를 식별하<11>
- 4 -
등록특허 10-0938428
는 3개의 변수가 기본적으로 필요하다. 그러나, 복수의 변수가 동일한 엔트리를 액세스하는 것에 의해 발생하는
모호한 상태를 방지하기 위해서, 어떠한 유효 인덱스값도 식별하지 않는 것을 나타낼 기회가 변수에
주어지거나, 3개의 변수 중 하나가 다른 2개의 변수에서 유도될 수 있는, 3개의 다른 변수가 부가적으로 마련되
게 제공된다.
어플리케이션이 정보 캐리어의 정보를 포함하는 섹터를 요구하면, 먼저 대응하는 섹터 번호를 갖는 섹터가 이미<12>
캐시내에 위치되어 있는지를 판단하기 위해 검사가 실행된다. 대응하는 섹터 번호를 갖는 섹터가 이미 캐시내에
위치되어 있으면, 버퍼 저장된 섹터가 사용되고, 대응하는 섹터가 캐시내에 위치되어 있지 않으면, 정보 캐리어
에서 캐시로의 판독이 실행된다. 다음에, 섹터 판독 시에는 위치홀더의 행의 인덱스 및 대응하는 변수가 제어
테이블에 세트된다. 이 섹터는 현재 섹터로서 식별되고, 또 이것은 할당된 섹터의 영역내의 첫 번째 위치홀더에
할당된다. 할당된 섹터의 영역내의 섹터가 캐시에 이미 할당되고 또 미할당된 위치홀더가 아직 유효하다면, 그
의 인덱스는 새로운 섹터에 사용되고, 이전에 판독된 섹터의 인덱스가 1씩 증가되고, 이것에 의해 위치홀더의
무단 체인을 유지한다. 동시에, 영역내의 위치홀더를 식별하는 상기 변수가 적절히 변경된다. 새로운 엔트리의
저장 전에, 체인내의 선행하는 위치홀더가 미할당된 섹터의 영역내의 마지막 위치홀더였거나 만일 미할당된 섹
터의 영역내에 존재하는 위치홀더가 없고 적어도 1개의 해제된 섹터가 캐시내에 저장되어 있으면, 해제된 섹터
의 영역에서 가장 오래된 섹터를 형성하는 마지막 섹터가 사용된다. 다시말해, 해제된 섹터의 영역내의 마지막
또는 가장 오래된 섹터는 새로운 섹터용 위치홀더를 형성하기 위해 물리적으로 해제된다.
만일 위치홀더가 미할당된 섹터의 영역내 또는 해제된 섹터의 영역내에서 연쇄식 위치홀더의 원리에 따라서 이<13>
용불가능한 경우, 할당된 섹터의 영역내에서 사용된 마지막 위치홀더, 즉 가장 오래된 할당된 섹터인 선행하는
위치홀더가 사용된다. 그 후에, 어플리케이션이 이 섹터로의 액세스를 요구하면, 이 섹터는 재로딩되어야 한다.
교체되어 오래된 할당된 섹터의 어플리케이션이 섹터가 더이상 즉시 유효하지 않다는 것을 인식할 수 있으면,<14>
즉 또다른 섹터 액세스 또는 이 섹터로의 액세스를 위한 재로딩이 이 섹터의 재로딩을 자동적으로 일으키는 예
외를 구성하는 경우에만, 이 처리는 실용적이다. 위치홀더의 행을 할당하기 위해 이용가능한 메모리가 충분하지
않으면, 캐시는 스위치오프되고, 섹터번호는 정보캐리어로부터 직접 판독된다.
할당된 섹터의 영역내의 섹터가 해제되면, 그 섹터는 해제된 섹터의 영역 내의 첫 번째 위치로 이동되고, 그 영<15>
역의 길이는 소정의 연관으로 인해 각 영역내의 섹터의 번호에 동적으로 적응시킨다.
모든 삽입 및 이동 기능은 다음의 위치홀더로의 대응하는 인덱스의 변경 및 변수의 변경만을 필요로 한다. 알려<16>
진 타입의 버퍼 구조의 단점이 동적으로 연관된 버퍼 영역에 의해 회피될 수 있으므로, 1개의 행임에도 불구하
고 행 내의 복수의 섹터 어드레스를 액세스하는 것이 가능하여, 정보 캐리어로의 직접 액세스 회수가 저감되고,
그 결과 평균 액세스 시간이 저감된다.
액세스 시간이라는 용어는 데이터의 요구와 공급 사이의 시간을 나타내며, 통상 밀리초(milliseconds)로 정해진<17>
다. 평균 액세스 시간은 저장매체상의 정보의 임의의 항목을 찾아 판독하는데 필요한 평균 시간을 나타낸다.
제안된 해결책은, 캐시에 존재하거나 또는 요구에 따라 캐시로 기록된 섹터가 메모리에 수용되는 일없이 캐시로<18>
부터 직접 사용될 수 있기 때문에, 예를 들면 액세스 시간이 긴 판독헤드를 갖는 광학적 저장매체를 위한 드라
이브와 같은 액세스 시간이 긴 장치 및 작은 메모리에 유리하게 적용할 수 있다. 게다가, 캐시의 제어는 낮은
비용을 요구한다. 또한, 캐시의 사이즈는, 위치홀더의 번호가 각각의 요구사항에 적합하게 되므로, 메모리에 있
어서 이용가능한 저장공간에 알맞게 유리하게 적응된다. 불연속 데이터 액세스 또는 불연속 데이터 구조를 갖는
정보 캐리어에 대한 평균 액세스 시간은, 특히 충분한 양의 데이터가 버퍼에 유지되어 있고, 또 정보캐리어로부
터 이미 판독된 데이터로 리턴할 필요없이 직접 액세스할 수 있는 것에 의해 저감된다. 광학적 저장매체의 섹터
로의 액세스 회수는, 특히 소위 파일시스템의 디렉토리가 다수의 횟수로 판독되고 또 대응하는 데이터가 버퍼에
의해 유용하게 되는 것에 의해 초기 단계에서 저감된다.
예를 들면 기록보관(archive)에 있어서 순환적(recursive) MP3 파일 탐색의 경우, 저장매체의 전체 디렉토리 트<19>
리가 전체로서 탐색되기 때문에, 버퍼에 이미 유지된 섹터를 유효하게 이용할 수 있으며, 이것에 의해 저장 매
체로의 액세스 회수 및 판독헤드 리턴의 회수가 저감된다.
버퍼의 대응하는 섹터 번호는 요구와 탐색된 섹터의 비교에 의해 알려진 방식으로 탐색된다. 연관된 버퍼에 있<20>
어서의 탐색이 정보캐리어로의 액세스보다 매우 빠르고, 연관에 의해서 버퍼내의 모든 섹터가 액세스될 수
있어, 평균 액세스 시간이 저감되고 저비용화가 도모된다.
- 5 -
등록특허 10-0938428
이하, 도면을 참조하면서 본 발명의 예시적 실시예에 대해 더욱 상세하게 설명한다.<21>
실 시 예
도 1은 정보 캐리어로의 평균 액세스 시간을 저감하기 위한 버퍼를 갖는 재생 장치의 블록도이다. 이 재생 장치<31>
는, 예를 들면 DVD 재생 장치로서, 판독 헤드라고도 하는 픽업 PU에 의해 광학적 정보 캐리어의 섹터 S가 주사
되고, 버퍼 또는 캐시로서 이용되는 트랙 버퍼 TB를 거쳐, 본 실시예에 있어서, 이 트랙 버퍼 TB의 제어용으로
도 이용되는 어플리케이션 메모리 AM에 마련된다. 정보 캐리어의 섹터번호 PSN을 요청하기 위해서 제어 유닛 CU
가 마련되고, 이 제어 유닛 CU는 어플리케이션에 의해 요구되는 섹터 S를 탐색하기 위해 픽업 PU를 제어한다.
어플리케이션 메모리 AM에서 어플리케이션이 섹터 S의 판독을 요구하면, 이 어플리케이션은 우선 어플리케이션<32>
메모리 AM의 제어 테이블 CS 내에 섹터 S가 이미 트랙 버퍼 TB에 존재하는지의 여부를 알아보도록 찾아본다. 섹
터 S가 트랙 버퍼 TB에 존재하지 않으면, 그 어플리케이션은 섹터 S를 판독하기 위한 코맨드를 제어부 CU로 보
내고, 이 제어부 CU에서는 대응하는 소정의 물리적 섹터번호 PSN을 갖는 섹터 S를 판독하기 위한 섹터 판독 코
맨드를 픽업 PU에 대해 발행한다. 이 픽업 PU는 광학적 정보 캐리어의 대응하는 위치로 점프하여 이 섹터 S를
판독하고, ECC 복호화를 실행하며 트랙 버퍼 TB의 프리 섹터 S에 이 섹터 S를 기록한다. 이것에 의해, 요구된
섹터 S가 트랙 버퍼 TB에 위치결정되게 보장되고, 요구된 섹터는 그후 평균 액세스 시간을 단축하기 위해 다수
회 액세스된다. 그 후, 어플리케이션 메모리 AM에 있는 어플리케이션은 트랙 버퍼 TB에 저장된 이 섹터 S를 액
세스한다.
트랙 버퍼 TB의 할당 제어 및 트랙 버퍼 TB에 저장된 섹터 S의 탐색을 위해 어플리케이션 메모리 AM에는 제어<33>
테이블 CS가 마련되며, 이 제어 테이블 CS는, 행 즉 일렬로 순환적으로 연결된 위치 홀더(place holder)(PH)와
3개의 변수(la, lf, lu)를 포함한다.
또, 트랙 버퍼 TB로의 섹터 S의 기록 및 트랙 버퍼 TB내의 섹터 S로의 다중 액세스를 위해서, 도 2에 도시하는<34>
바와 같이 논리적으로 연결된 저장 위치를 포함하는 트랙 버퍼 TB가 마련된다. 각각의 저장 위치에는, 트랙 버
퍼 TB가 3개의 영역, 즉 섹터(S)의 할당된 영역(AS), 섹터(S)의 해제된 영역(FS) 및 섹터(S)의 미할당된 영역
(US)의 3개의 영역으로 논리적으로 분할되게 하는 위치 홀더 PH가 지정되어 있다. 섹터(S)의 할당된 영역(AS)
내의 섹터 S는 어플리케이션 메모리 AM의 어플리케이션에 의해 이용되는 섹터 S이다. 섹터(S)의 해제된 영역
(FS)내의 섹터 S는 어플리케이션 메모리 AM의 임의의 어플리케이션에 의해 서로 이용되지 않고, 또 어떤 섹터도
아직까지 픽업PU에 의해 섹터(S)의 미할당된 영역(US)로 판독되지 않았다. 이용가능한 미할당 저장 또는 섹터
위치는 서서히 지금까지 더 적어지게 되고, 결국 트랙 버퍼 TB는 섹터(S)의 할당된 영역(AS)와 섹터(S)의 해제
된 영역(FS)만을 포함하게 되므로, 섹터(S)의 미할당된 영역(US)는 통상 초기 상태만을 나타낸다. 또, 대응하는
번호에 의해 연속하는 영역 AS, FS 및 US를 고려하는 위치 홀더 PH의 논리 조합이 마련되어, 0부터 k-1까지 연
장하는 섹터(S)의 할당된 영역(AS) 뒤에는 k부터 m-1까지의 섹터(S)의 해제된 영역(FS)과 m부터 n-1까지의 섹터
(S)의 미할당된 영역(US)이 후속하고 있다. 모든 섹터 위치가 링 배열로 마련된 연관에 의해 논리적 다음 섹터
위치를 갖는다. 그러나, 이 논리적 다음 섹터 위치는 도 3에 도시되는 바와 같이, 반드시 또한 물리적 용어로
그 다음 섹터 위치일 필요는 없다. 그러나, 원칙적으로 섹터(S)의 할당된 영역(AS)의 첫 번째 섹터 S는 시간적
으로 마지막의 할당 섹터 S이고, 섹터(S)의 할당된 영역(AS)의 두 번째 섹터 S는 시간적으로 마지막에서 두 번
째의 할당 섹터 S이고, …, 섹터(S)의 할당된 영역(AS)의 마지막 섹터 S는 섹터(S)의 해제된 영역(FS)의 첫 번
째 섹터 S를 지시한다. 섹터(S)의 해제된 영역(FS)의 첫 번째 섹터 S는 시간적으로 마지막의 해제 섹터 S이고,
섹터(S)의 해제된 영역(FS)의 두 번째 섹터 S는 시간적으로 마지막에서 두 번째의 해제 섹터 S이고, … , 섹터
(S)의 해제된 영역(FS)의 마지막 섹터 S는 섹터(S)의 미할당된 영역(US)의 첫 번째 섹터 S를 지시한다.
섹터(S)의 미할당된 영역(US)의 섹터 S는 특별한 순서를 필요로 하지 않는다. 단순한 순서, 예를 들면 오름차순<35>
저장 어드레스에 따른 순서와 같은 메모리의 물리적 배열로 할 수 있다. 그러나, 링을 폐쇄하기 위해서, 섹터
(S)의 미할당된 영역(US)의 마지막 섹터 S는 섹터(S)의 할당된 영역(AS)의 첫 번째 섹터 S를 지시해야 한다.
오른차순 저장 어드레스에 따른 트랙버퍼 TB의 섹터 S의 물리적 배열, 즉 이 트랙버퍼 TB의 섹터 S의 물리적 배<36>
열은 도 3에 도시한 바와 같다. 도 2 및 도 3에 있어서, 개별 섹터 S의 논리적 조합은 화살표로 나타내었 다. 0
〈r〈r 1〈s〈s 1〈t〈u인 섹터 S의 물리적 순서는 예를 들면 0〈k-1〈k〈m-1〈m〈n-1로 식별되는 섹터 S의 논
리적 순서와 다르다. 또, 트랙버퍼 TB의 섹터 번호에 할당된 저장 위치를 찾을 수 있게 하는 트랙버퍼 TB의 섹
터 S의 논리적 순서와 물리적 배열 사이의 관계는 어플리케이션 메모리 AM에 마련되고 또한 변수 la, lf, lu를
포함하는 제어 테이블 CS에 의해 실현되고 있다. 예를 들면 도 4에 도시하는 바와 같이, 제1 변수 la는 트랙버
- 6 -
등록특허 10-0938428
퍼 TB에 있어서 첫 번째로 할당된 섹터 S의 저장 어드레스 인덱스를 포함하고, 제2 변수 lf는 트랙버퍼 TB에 있
어서 첫 번째로 해제된 섹터 S의 저장 어드레스 인덱스를 포함하고 있으며, 또한 제3 변수 lu는 트랙버퍼 TB의
첫 번째 미할당섹터 위치 S의 저장 어드레스 인덱스를 지시한다. 본 실시예에 있어서 영역 AS, FS 및 US의 각각
의 첫 번째 섹터 S는 각각의 영역 AS, FS, US로의 진입점으로서 선택된다. 하나의 실시예에 따르면, 영역 AS,
FS 및 US의 섹터 S의 번호는 부가적 변수 na, nf 및 nu에 의해 지정할 수 있지만, 부가적 변수 na, nf 및 nu는,
변수 la, lf, lu가 유효 인덱스값을 특정하지 않는다는 것을 나타내도록 기회가 변수 la, lf, lu에 부여되면 원
칙적으로 필요하지 않는다. 도 4에 나타낸 예에 있어서, 할당된 섹터 S의 수가 7이므로, 대응하는 변수 na=7로
된다. 따라서, 변수 nf 및 nu는 영역 FS 및 영역 US의 섹터S의 수를 특정하며, 여기서 nf=6이고, nu=7이다. 트
랙버퍼 TB의 오름차순 저장 어드레스에 따른 섹터 S의 논리적 순서 LOR과 섹터 S의 물리적 순서 사이의 관계는,
대응하는 위치홀더 번호 PHN로 제어 테이블 CS에 표시되어 있는 바와 같이, 도 4의 하측 영역에 도시되어 있다.
화살표와 번호는 할당을 나타내기 위해 사용된다. 도시된 실시예에 있어서는, 섹터 S 또는 위치홀더의 논리적
순서 LOR의 일련번호 0 내지 19에 대응하는 연속 번호인 저장 어드레스 인덱싱 0 내지 19를 사용하는 것에 의해
서, 저장 위치 또는 그의 저장 어드레스 인덱스와 다음의 섹터 S 또는 위치홀더 PH 로의 인덱스 next를 갖는 후
속하는 엔트리와의 조합을 생성한다. 예를 들어, 섹터(S)의 해제된 영역(FS)의 첫 번째 섹터 S의 위치를 지정하
는 변수 lf의 값이 lf=6 이라 하면, 이것은 섹터(S)의 해제된 영역(FS)의 첫 번째 섹터 S가 위치 홀더 번호
PHN=6에 위치해 있는 것을 결정한다. 이것은 논리적 순서 LOR에 있어서 번호 7이다. 위치 홀더 번호 PHN=6의 엔
트리 또는 후속하는 위치홀더 PH를 지시하는 인덱스 next는 next:9이다. 위치홀더 번호 PHN=9일 때, 논리적 순
서 LOR의 번호는 숫자 8이므로, 트랙버퍼 TB에 저장된 섹터 S의 논리적 조합은 이에 의해 물리적 불규칙에도 불
구하고 생성된다.
엔트리 next: x를 변경할 필요가 없는 상태 및 엔트리 next: x가 변경된 경우에 대해, 도 6 내지 도 9에 도시된<37>
실시예를 참조하여 설명한다.
도 6 내지 도 9에는, 예를 들어, 6개의 저장위치를 갖는 트랙버퍼 TB의 할당과 위에서부터 아래에 이르기까지의<38>
수행 기간에 걸친 제어 테이블 CS의 위치홀더 번호 PHN의 열에의 대응하는 매핑을 설명하는 2개의 테이블을 도
시하고 있다. 1 내지 15의 행 Z 각각은 각각의 경우에 있어서 트랙버퍼 TB의 할당의 변경에 대응하며 도 6∼도
9에 예시된 바와 같이, 각 행은 위치홀더 번호 PHN 0 내지 5를 갖는 6개의 위치홀더 PH를 갖도록 되어 있다. 루
프(loop)에 있어서 섹터 S의 인덱스가 항상 후속하는 섹터 S를 지시하도록 되어 있으므로, 도 7 및 도 8에 있어
서 첫 번째 행 Z=1에 나타내는 바와 같이, 위치 홀더 PH의 개시 포인트로서 유리하게 선택된 것은 1로 시작하여
연속해서 증가하며 위치 홀더 PH의 열의 끝에는 0을 갖는 인덱싱 next이다. 개시시에는 트랙버퍼 TB에 기록된
섹터 S가 아직 없고 할당된 위치홀더 PH도 없으므로, 도 8에 도시된 변수 la, lf, lu, na, nf, nu에 대한 결과
는, nu=6으로 미할당된 섹터 S의 번호를 지정하는 변수 nu를 제외하고는, 나머지 모든 변수 la, lf, lu, na, nf
는 0과 동일하다는 것이다. 테이블의 행 Z=2는 위치홀더 PHN=0에서 트랙버퍼 TB에 인덱스1을 수용하는 섹터 S가
기록되어 있는 것을 지정한다. 선두의 3개의 변수 la, lf, lu와 같은 대응하는 저장 어드레스 인덱스를 포함하
는 제어 테이블 CS에 있어서 이것은, 섹터 S가 위치홀더 번호 PHN=0에 저장되기 때문에, la=0으로 이후 맵핑된
다. 할당된 섹터의 영역 AS의 다음에 오도록 되어 있는 제1의 해제된 섹터 S는 위치홀더 번호 PHN=1에 위치되어
있는 섹터 S이다. 그러나, 위치홀더 번호 PHN=1은 제1의 미할당섹터 S이기도 하므로, 변수 lu는 마찬가지로
lu=1이 된다. 할당된 섹터 S의 번호는 1과 같고, 변수 na=1로 표시된다. 프리섹터 S의 영역 FS에 지금까지는 저
장된 섹터 S가 없으므로, 변수 nf의 번호는 따라서 nf=0이다. 트랙버퍼 TB에 섹터가 기록된 것에 의해서, 섹터
(S)의 미할당된 영역(US)의 섹터 S의 번호는 등식 nu=6-na-nf로 결정할 수도 있는 변수 nu=5에 따라 5로 감소된
다. 세 번째 행 Z=3에 있어서, 트랙버퍼 TB에 다시 기록된 섹터 S는 규정된 연관 때문에 인덱스 0을 수용한다.
제1의 해제된 또는 미할당 섹터 S는 이제 위치홀더 번호 PHN=3에 위치하게 되므로, 이전에 기록된 섹터 S의 인
덱스 next는 next=2로 된다. 세 번째 행의 변수 la=1은, 제1의 할당된 섹터 S가 위치홀더 번호 PHN=1인 위치에
위치되는 것을 지정한다. 위치홀더 번호 PHN=2에 있어서 다음의 위치홀더 PH의 엔트리 인덱스 next:0은 다음에
할당된 섹터 S가 위치홀더 번호 PHN=0에 위치되는 것을 지정한다. 그 결과, 비록 섹터들이 단일 행에 논리적으
로 배열되었다고 해도, 섹터 S의 논리적 조합이 생성되고, 미할당 또는 해제된 저장 위치에서의 섹터 S의 기록
이 제어되며, 섹터 S로의 액세스도 가능하게 된다. 도 6 내지 도 9에 있어서, 위치홀더 PH의 할당의 변경의 추
이는 설명을 위해 독점적으로 기호 in#, del#, ru#로 지정되어 있다. 이 기호 in#, del#, ru# 뒤에 오는 숫자는
변경에 관련이 있는 위치홀더 번호 PHN을 지정한다. 상세하게, 기호 in#, del#, ru#는 다음과 같다:
기호 in#는 후속하는 번호로 지정된 위치홀더 번호 PHN에 있어서 트랙버퍼 TB에 섹터 S가 기록되어 있는 것을<39>
지정한다.
- 7 -
등록특허 10-0938428
또, 기호 ru#는 트랙버퍼 TB에 아직 포함되어 있는 섹터 S가 다시 사용되는 것을 지정한다.<40>
또, 기호 del#는 번호가 부가된 위치홀더 번호 PHN에 의해 지정된 위치에서 대응하는 섹터 S가 더 이상 어떠한<41>
어플리케이션에 의해서도 사용되지 않는 것을 지정한다. 그러나, 이 섹터 S는 트랙버퍼 TB로부터 소거되지
않고, 오히려 새로운 섹터 S에 의해 갱신(오버기록)되거나 또는 다시 사용될 때까지 그 내부에 유지된다.
이 실시예에 있어서는 트랙버퍼 TB의 섹터 S의 총수가 6개인 것으로 되어 있으므로, 원칙적으로 na nf nu=6이<42>
된다. 이와 같이, 이 시스템은 여분(redundancy)을 포함하고 있다. 바꿔말하면, 도 8에 따른 예시적 실시예에
있어서 3개의 변수 na, nf, nu중의 하나는 생략 가능하다. 실시예에 따라, 변수 nu는 식 nu=6-na-nf로 완전하게
대체할 수 있다.
도 6에는 영역 AS, FS, US의 섹터 S의 번호를 지정하는 변수 na, nf, nu를 필요로 하지 않는 예시적 실시예를<43>
도시하고 있다. 동일한 표(token)에 의해, 3개의 변수 la, lf, lu에는 이들 변수가 유효 인덱스값을 지정하지
않는다는 것을 지시하도록 기회가 부여된다. 이러한 상태는 도 6, 도 7 및 도 9에 있어서 별표 *로 식별되고 있
다. 이 별표 *는, 예를 들면, 가능한 인덱스값, 즉 사용되고 있는 1, 2, 3, 4, 5를 제외한 모든 값에 대응하지
않는 값이 이 변수가 무효인 것을 나타내는 것으로 실현된다.
이와 같이, 이 실시예에 있어서 별표 *는 예를 들면 번호 -1 또는 6으로 실현되는 것이다. 따라서, 이 예시적<44>
실시예는, 위치홀더 PH가 아직 할당되지 않았을 때의 다음 포인터의 초기화를 부가적으로 필요로 하지
않으므로, 또한 바람직한 1실시예를 나타낸다. 이것은 도 6 및 도 9에 있어서 빈 상태의 위치홀더 PH에 의해 나
타내져 있다. 위치홀더 PH가 아직 할당되지 않았을 때의 초기화는, 위치홀더 PH가 아직 할당되지 않았을 때의
새로운 할당인 경우에 있어서, 원칙적으로 최하위 인덱스를 갖는 위치홀더 PH가 사용되는 규칙을 사용한다면,
생략할 수 있다. 도 6에 도시된 예의 경우, 이것은 미할당 위치 홀더 PH가 좌측에서 우측으로 할당되는 것을 의
미한다. 새롭게 할당된 위치홀더 PH의 다음 포인터만이 초기화되어 있다. 이러한 처리는 제어 테이블 CS의 새로
운 생성시에 모든 위치홀더 PH의 초기화에 시간이 걸리는 것을 방지한다. 그렇지만, 연관된 위치홀더 PH의 원칙
에서 본질적으로 벗어나지는 않는다. 이것은 도 7에 도시되어 있으며, 도 7 은 미할당 위치홀더 PH의 할당 또는
인덱스들이 지정된다는 차이점을 제외하면 도 6과 동일하다. 제안된 해결책은 버퍼를 제어하기 위한 필요 저장
공간의 넓이가 저감되고 또한 캐시를 동적으로 스위치오프하는 것도 가능한 버퍼에 있다.
특정 섹터 캐시 방법에 대해, 각 섹터 S용의 캐시에 있어서 위치홀더 PH를 지시하는 위치홀더 PH의 행에 기초하<45>
여 위에서 설명이 주어졌다. 각 위치홀더 PH는 캐시내의 그의 섹터 S의 위치에 대한 포인터를 포함하고, 위치홀
더 PH의 행에 다음의 위치홀더 PH의 인덱스를 포함하며, 그 결과 위치홀더 번호 PHN에 할당된 인덱스값에 의해
실현되는 폐쇄 체인(closed chain)이 생긴다.
제안된 방법은 위치홀더 PH의 설정과 3개의 변수 la, lf, lu만을 필요로 한다. 단지 예를 들면 위치홀더 PH에<46>
대해 충분한 4바이트 워드를 위치홀더 PH를 위한 메모리에 할당하는 것만이 필요하고, 또 변수 la, lf, lu를 초
기화하는 것이 필요하다.
도 5에는 DVD재생장치에 있어서의 트랙버퍼 TB의 할당의 실제적 실시예가 도시되어 있다. 도 5에 도시된 섹터 S<47>
는 DVD에 기록된 DVD 데이터열의 파일을 포함하고 있다. 예를 들면, 어플리케이션이 어플리케이션의 서브디렉토
리 VIDEO_TS에 있어서 우선 VIDEO_TS.IFO 파일을 요구한 후, 동일 디렉토리에 있어서 VTS_01.0.IFO 파일을 요
구하면, 해당 어플리케이션을 표시하는 파일 매니저는 이 VIDEO_TS.IFO 파일이 어디에 있는지 찾기 위해, 동일
한 디렉토리 VIDEO_TS에 있어서 두 번 참조하여야 한다. 이 경우, 디렉토리 VIDEO_TS가 아직도 그곳에 있는지를
보기 위해 어플리케이션이 먼저 캐시에 있어서 참조하는 것에 의해, 캐시는 픽업PU로의 반복적 액세스를 방지할
수 있다. 그렇다면, 어플리케이션은 트랙버퍼 TB에 있어서 디렉토리의 섹터 S를 직접 액세스할 수 있다. 트랙버
퍼 TB의 대응하는 섹터S로의 액세스는 픽업 PU를 거친 액세스보다 고속이며, 평균 액세스 시간이 단축된다.
도 9는 영역 AS, FS, US를 선행하는 섹터 S가 영역 AS, FS 및 US로의 진입점으로서 사용되는 다른 실시예를 도<48>
시한 것이다. 여기서, 이 다른 실시예에 있어서, 각각의 영역 AS, FS, US의 첫 번째 섹터 S를 식별하는 변수
la, lf, lu는 선행하는 영역 AS, FS, US의 각각의 마지막 섹터 S 또는 위치홀더 PH를 그들의 엔트리로
지시한다. 이것은, 예를 들면 행Z=10에 있어서의 위치홀더 PH의 할당을 행Z=11에 대응하는 위치홀더 PH의 할당
으로 천이로 명백하게 되는 바와 같이, 연속된 위치홀더 PH에 있어서 인덱스의 변경에 필요한 점프 수를 저감시
킨다. 여기에 기술된 실시예는 단지 예로서 기재된 것이며, 당해 분야에서 통상의 지식을 가진 자라면 본 발명
의 범주내에서 본 발명의 나머지 다른 실시예를 실현할 수 있을 것이다.
- 8 -
등록특허 10-0938428
산업상 이용 가능성
상술한 바와 같이, 본 발명은 불연속 데이터 구조를 갖거나 비교적 액세스시간이 긴 정보 캐리어로의 평균 액세<49>
스 시간을 저감하기 위한 재생장치에 이용된다
도면의 간단한 설명
도 1은 평균 액세스 시간을 저감하기 위한 버퍼를 갖는 재생 장치의 블록도,<22>
도 2는 버퍼 내의 섹터 어드레스의 논리적 배열의 개략도,<23>
도 3은 오름차순 저장 어드레스에 따른 트랙 버퍼에서 섹터의 물리적 배열을 도시한 도면,<24>
도 4는 섹터의 논리적 배열과 그 제어 사이의 관계에 관한 개략도,<25>
도 5는 트랙 버퍼의 예시적 할당의 개략도,<26>
도 6은 초기 단계에서 트랙 버퍼의 할당의 변경을 설명하기 위한 테이블을 나타내는 도면,<27>
도 7은 연관을 표시한 초기 단계에서 트랙 버퍼의 할당의 변경을 설명하기 위한 테이블을 나타내는 도면,<28>
도 8은 부가적 변수를 가지고 트랙 버퍼의 할당의 변경을 설명하기 위한 테이블을 나타내는 도면,<29>
도 9는 변경된 진입점으로 트랙 버퍼의 할당의 변경을 설명하기 위한 테이블을 나타내는 도면.<30>
도면
도면1
- 9 -
등록특허 10-0938428
도면2
- 10 -
등록특허 10-0938428
도면3
- 11 -
등록특허 10-0938428
도면4
- 12 -
등록특허 10-0938428
도면5
- 13 -
등록특허 10-0938428
도면6
- 14 -
등록특허 10-0938428
도면7
- 15 -
등록특허 10-0938428
도면8
- 16 -
등록특허 10-0938428
도면9
- 17 -
등록특허 10-0938428