KR100241741B1 - The sector address converting circuit of hard disk driving apparatus - Google Patents

The sector address converting circuit of hard disk driving apparatus Download PDF

Info

Publication number
KR100241741B1
KR100241741B1 KR1019950025473A KR19950025473A KR100241741B1 KR 100241741 B1 KR100241741 B1 KR 100241741B1 KR 1019950025473 A KR1019950025473 A KR 1019950025473A KR 19950025473 A KR19950025473 A KR 19950025473A KR 100241741 B1 KR100241741 B1 KR 100241741B1
Authority
KR
South Korea
Prior art keywords
sector address
cylinder
operation mode
logical
sector
Prior art date
Application number
KR1019950025473A
Other languages
Korean (ko)
Other versions
KR970012102A (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 윤종용
Priority to KR1019950025473A priority Critical patent/KR100241741B1/en
Publication of KR970012102A publication Critical patent/KR970012102A/en
Application granted granted Critical
Publication of KR100241741B1 publication Critical patent/KR100241741B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야1. TECHNICAL FIELD OF THE INVENTION

하드 디스크 구동장치에서 디스크상의 특정 위치를 나타내는 논리적 섹터 어드레스를 물리적 섹터 어드레스로 변환하는 기술에 관한 것이다.The present invention relates to a technique for converting a logical sector address representing a specific position on a disk into a physical sector address in a hard disk drive.

2. 발명이 해결하고자 하는 기술적 과제2. Technical problem to be solved by the invention

섹터 어드레스 변환을 소프트웨어적으로 처리함에 따라 많은 시간이 소요되는 것을 개선한다.Software-intensive sector address translation improves the time-consuming process.

3. 발명의 해결방법의 요지3. Summary of Solution to Invention

논리적 섹터 어드레스의 한 입력에 대해 순차적으로 제1, 제2동작모드로 동작하며, 제1동작모드에서 논리적 섹터 어드레스를 실린더당 섹터수로 제산하여 몫을 실린더번호로 출력하고, 뒤이어지는 제2동작모드에서 실린더번호 연산에 따른 나머지를 트랙당 섹터수로 제산하여 몫을 헤드번호로 출력하며 나머지를 섹터번호로 출력한다.One input of the logical sector address is sequentially operated in the first and second operation modes, and in the first operation mode, the logical sector address is divided by the number of sectors per cylinder to output a share as the cylinder number, followed by the second operation. In this mode, the remainder of the cylinder number calculation is divided by the number of sectors per track, and the quotient is output as the head number, and the remainder is output as the sector number.

4. 발명의 중요한 용도4. Important uses of the invention

HDD에서 섹터 어드레스 변환에 소요되는 시간을 줄이는데 사용한다.It is used to reduce the time required for sector address translation on the HDD.

Description

하드 디스크 구동장치의 섹터 어드레스 변환회로Sector Address Translation Circuit of Hard Disk Drive

제1도는 본 발명에 따른 섹터 어드레스 변환회로도.1 is a sector address conversion circuit diagram according to the present invention.

제2도는 제1도의 동작 타이밍도.2 is an operation timing diagram of FIG.

제3도는 제1도중 제산기(16)의 상세구성도.3 is a detailed configuration diagram of the divider 16 in FIG.

제4도는 제1도중 감산기(10)와 제3도중 감산기(40)의 상세구성도.4 is a detailed configuration diagram of the subtractor 10 in FIG. 1 and the subtractor 40 in FIG.

본 발명은 하드 디스크 구동장치(Hard Disk Drive: 이하 “HDD”라 함)에 관한 것으로, 특히 디스크상의 특정 위치를 나타내는 논리적 섹터 어드레스(logical sector address)를 물리적(physical) 섹터 어드레스로 변환하는 회로에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a hard disk drive (hereinafter referred to as "HDD"), and more particularly to a circuit for converting a logical sector address representing a specific location on a disk into a physical sector address. It is about.

일반적으로 HDD는 대량의 데이타를 고속으로 액세스할 수 있는 장점을 가지고 있어 컴퓨터 시스템의 보조기억장치로서 널리 사용되어지고 있다. HDD와 같은 디스크 구동장치에 있어서 데이타는 자기 디스크상에 동심원 형태로 배열되는 트랙들에 섹터단위로 저장된다. 이들 트랙들은 디스크상에 데이타를 독출, 기록, 소거하기 위한 자기 헤드(또는 데이타 트랜스듀서)에 의해 섹터단위로 액세스된다.In general, the HDD has the advantage of accessing a large amount of data at high speed, and is widely used as a secondary memory device of a computer system. In a disk drive such as an HDD, data is stored sector by sector in tracks arranged concentrically on a magnetic disk. These tracks are accessed sector by sector by magnetic heads (or data transducers) for reading, writing and erasing data on the disc.

전형적인 HDD는 2장 이상의 양면 디스크를 스택(stack)형태로 하나의 스핀들(spindle)에 설치하여 사용하며, 각각의 디스크면들에 일대일로 대응되며 디스크상에서 동시에 함께 이동되는 헤드를 가진다. 이러한 HDD에 있어서 디스크 콘트롤러가 디스크상의 특정 위치를 참조할 때 3개의 좌표, 즉 헤드번호, 실린더(cylinder)번호, 섹터번호를 사용한다. 헤드번호는 헤드들에 부여하는 번호로서 곧 특정 디스크면을 가리킨다. 실린더번호는 실린더들에 부여하는 번호로서, 하나의 실린더는 각 디스크면의 동일한 위치에 배치되는 모든 트랙들을 포함한다. 섹터번호는 섹터들에 부여하는 번호로서, 섹터는 트랙을 쐐기형태로 분할한 것으로 디스크상에 데이타를 액세스하기 위한 단위영역이다. 예를들어 헤드가 4개이고 실린더가 3000개이며 트랙당 섹터가 100개라면 전체 섹터의 수의 3000×4×100=1,200,000개가 된다. 현재 널리 사용되는 DOS(Disk Operating System)는 512바이트 섹터를 사용하는 것을 고려하면, 2개의 섹터가 1K바이트이므로 1,200,000개의 섹터를 가지는 디스크는 600M바이트의 저장용량이 되는 것이다. 따라서 헤드 개수, 실린더 개수, 트랙당 섹터 개수에 따라 HDD의 저장용량이 결정됨을 알 수 있다. 이와같은 3개의 좌표를 물리적 섹터 어드레스라 한다. 상기한 바와 같은 물리적 섹터 어드레스는 통상적으로 제조회사나 제품 모델(model)에 따라 달라진다.Typical HDDs use two or more double-sided disks stacked on a single spindle, with one-to-one correspondence to each disk surface, with heads moving simultaneously on the disk. In such an HDD, three coordinates are used when the disk controller refers to a specific position on the disk, that is, a head number, a cylinder number, and a sector number. The head number is a number assigned to the heads, which indicates a specific disk surface. The cylinder number is a number assigned to the cylinders, and one cylinder includes all tracks arranged at the same position on each disk surface. A sector number is a number assigned to sectors. A sector is a unit area for accessing data on a disk by dividing a track into a wedge shape. For example, if you have 4 heads, 3000 cylinders, and 100 sectors per track, you have 3000 × 4 × 100 = 1,200,000 of the total number of sectors. DOS (Disk Operating System), which is widely used at present, considers using 512-byte sectors, so that two sectors are 1K bytes, and thus a disk having 1,200,000 sectors has a storage capacity of 600M bytes. Therefore, it can be seen that the storage capacity of the HDD is determined according to the number of heads, the number of cylinders, and the number of sectors per track. These three coordinates are called physical sector addresses. The physical sector address as described above typically depends on the manufacturer or product model.

이와 반면에 호스트 컴퓨터(host computer)측의 인터페이스(interface)는 어떠한 HDD와 접속되더라도 동작이 가능하여야만 하므로 통일된 섹터 어드레스 체계를 가진다. 예를 들어 DOS에 있어서는 1차원 섹터번호 부여방식(one-dimensional sector numbering scheme)으로 디스크상의 섹터를 배치한다. DOS는 단순히 디스크면 0, 트랙 0의 섹터 1번부터 시작하여 트랙 0상의 모든 섹터들에 번호를 순차적으로 모두 부여하고 이어서 다음면, 즉 디스크면 1, 트랙 0상의 섹터들에게 앞 번호에 이어 순차적으로 모든 섹터들에 번호를 부여하여 나간다. 이러한 섹터 어드레스를 논리적 섹터 어드레스라 하며, 물리적 섹터 어드레스와 논리적 섹터 어드레스는 표현상의 차이는 있으나 모두 디스크상의 특정 위치, 즉 특정 섹터를 나타낸다.On the other hand, an interface on the host computer side has to have a uniform sector address system because it must be able to operate when connected to any HDD. In DOS, for example, sectors on a disk are arranged in a one-dimensional sector numbering scheme. DOS simply numbers all sectors on track 0, starting with sector 0 on disk 0 and track 0, followed by the previous number to the next, disk 1, sector on track 0. All sectors are numbered out. Such a sector address is called a logical sector address, and both the physical sector address and the logical sector address represent a specific position on the disk, that is, a specific sector, although there is a difference in representation.

HDD와 컴퓨터 시스템간의 인터페이스(interface)방식은 주로 2가지방식이 널리 사용되고 있다. 하나는 SCSI(Small computer System Interface)로서 워크스테이션(workstation)급 컴퓨터나 고급이상의 PC(Personal computer)에 주로 사용되고, 다른 하나는 IDE(Integrated Devoce Electronics)로 중급이하의 PC에 주로 사용된다. SCSI인 경우에는 논리적 섹터 어드레스만 지원하고, IDE의 경우에는 CHS(Cylinder, Head, Sector), 즉 물리적 섹터 어드레스와 LBA(Logical Block Address), 즉 논리적 섹터 어드레스를 모두 지원하며 논리적 섹터 어드레스모드를 많이 사용하는 추세이다.There are mainly two types of interfaces between the HDD and the computer system. One is a small computer system interface (SCSI), which is mainly used for workstation-class computers or advanced PCs, and the other is an IDE (Integrated Devoce Electronics). In case of SCSI, only logical sector address is supported.In case of IDE, it supports both CHS (Cylinder, Head, Sector), that is, physical sector address and LBA (Logical Block Address), that is, logical sector address. The trend is to use.

따라서 HDD에 있어서 호스트 컴퓨터로부터 입력된 논리적 섹터 어드레스가 나타내는 디스크상의 특정 위치를 참조하기 위해서는 논리적 섹터 어드레스를 실제 디스크상의 물리적인 위치를 나타내는 물리적 섹터 어드레스로 변환하여야만 한다.Therefore, in order to refer to a specific position on the disk indicated by the logical sector address input from the host computer in the HDD, the logical sector address must be converted into a physical sector address indicating a physical position on the actual disk.

종래에는 상기와 같은 섹터 어드레스 변환을 HDD에 구비된 MPU(Micro Processor Unit)에 의해 소프트웨어적으로 처리하여 왔었다. 그러나 섹터 어드레스 변환을 위해서는 가감승제의 계산을 반복해야하므로 시간이 소요되는 단점이 있었다. 특히 일반적인 CPU를 사용하는 경우에는 제산을 하는데 많은 시간이 소요되게 된다.Conventionally, such sector address translation has been processed in software by an MPU (Micro Processor Unit) provided in the HDD. However, the sector address translation has a disadvantage in that it takes time because the calculation of the sum or decrease is repeated. In particular, when using a general CPU, the division takes a lot of time.

따라서 본 발명의 목적은 섹터 어드레스 변환에 소요되는 시간을 줄일 수 있는 섹터 어드레스 변환회로를 제공함에 있다.Accordingly, an object of the present invention is to provide a sector address conversion circuit that can reduce the time required for sector address translation.

본 발명의 다른 목적은 섹터 어드레스 변환을 간단한 하드웨어로 처리할 수 있는 섹터 어드레스 변환회로를 제공함에 있다.Another object of the present invention is to provide a sector address translation circuit capable of processing sector address translation with simple hardware.

상기한 목적들을 달성하기 위한 본 발명의 섹터 어드레스 변환회로는 논리적 섹터 어드레스의 한 입력에 대해 순차적으로 제1, 제2동작모드로 동작하며, 제1동작모드에서 논리적 섹터 어드레스를 실린더당 섹터수로 제산하여 몫을 실린더번호로 출력하고, 뒤이어지는 제2동작모드에서 실린더번호 연산에 따른 나머지를 트랙당 섹터수로 제산하여 몫을 헤드번호로 출력하며 나머지를 섹터번호로 출력하는 것을 특징으로 한다.The sector address conversion circuit of the present invention for achieving the above objects operates sequentially in the first and second operating modes for one input of the logical sector address, and in the first operating mode, the logical sector address in sectors per cylinder. The quotient is output by the number of cylinders, and in the following second operation mode, the quotient of the cylinder number operation is divided by the number of sectors per track to output the quotient by the head number, and the remainder is output by the sector number.

이하 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 하기 설명 및 첨부도면에서 등과 같은 많은 특정 상세들이 본 발명의 보다 전반적인 이해를 제공하기 위해 나타나 있다. 이들 특정 상세들 없이 본 발명이 실시될 수 있다는 것은 이 기술분야에서 통상의 지식을 가진자에게 자명할 것이다. 그리고 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Many specific details are set forth in order to provide a more thorough understanding of the present invention, such as in the following description and the accompanying drawings. It will be apparent to those skilled in the art that the present invention may be practiced without these specific details. And a detailed description of known functions and configurations that may unnecessarily obscure the subject matter of the present invention will be omitted.

제1도는 본 발명에 따른 섹터 어드레스 변환회로도를 도시한 것으로, “콘스턴트-덴시티(constant-density)” 또는 “존-비트(zone-bit)” 형태의 기록방식을 채용한 HDD에 적용예를 보인 것이다. 콘스턴트-덴시티 기록형태는 디스크의 정보 용량을 개선하기 위하여 내주 트랙들과 외주 트랙들을 포함하는 모든 트랙들이 실질적으로 동일한 정보 밀도를 가지도록 한다. 콘스턴트-덴시티 기록형태에 있어서 자기 디스크상의 정보기록영역은 자기 디스크상의 원심으로부터 방사방향으로 기록밀도가 일정하게 되는 다수의 존(zone)들로 분할되어진다. 이에따라 콘스턴트-덴시티 기록형태를 채용한 경우에는 존을 고려하여 섹터 어드레스 변환을 하여야 한다.1 shows a sector address conversion circuit diagram according to the present invention, which is applied to an HDD employing a recording method in the form of " constant-density " or " zone-bit ". Will be shown. The constant-density recording form allows all tracks, including inner tracks and outer tracks, to have substantially the same information density in order to improve the information capacity of the disc. In the constant-density recording form, the information recording area on the magnetic disk is divided into a plurality of zones in which the recording density is constant in the radial direction from the centrifugal on the magnetic disk. Accordingly, when the constant-density recording type is adopted, sector address translation must be performed in consideration of the zone.

또한 논리적 섹터 어드레스를 물리적 섹터 어드레스로 변환하기 위해서는 통상적으로 두 번의 별도 제산을 해야 하나, 본 발명에서는 후술하는 바와 같이 시분할 다중방식을 사용하여 하나의 논리적 섹터 어드레스 입력에 대해 하나의 제산기(16)만으로 두 번의 제산을 수행하도록 함으로써 회로의 구성을 간단하게 하였다. 이를 위해 제1도의 동작 타이밍을 보인 제2도와 같은 동작지정신호 CYLB_HDSEC로서 논리적 섹터 어드레스의 하나의 입력에 대해 서로 동일한 시간동안 순차로 제1, 제2동작모드를 지정한다. 제2도에서 동작지정신호 CYLB_HDSEC가 논리 “0”인 제1시간구간 T1동안에 해당하는 제1동작모드에서는 실린더번호 P_CYL를 구하고, 동작지정신호 CYLB_HDSEC가 논리 “1”인 제2시간구간 T2동안에 해당하는 제2동작모드에서는 헤드번호 P_HD와 섹터번호 P_SEC를 구한다. 상기 제1, 제2시간구간은 각각 예를들어 제2도와 같은 클럭신호 DIV_CLK 33개 펄스에 해당한다. 상기 클럭신호 DIV_CLK는 제산시에 데이타를 쉬프트시키기 위한 클럭신호이다.In addition, in order to convert a logical sector address into a physical sector address, two separate divisions are generally required. However, in the present invention, as described later, one divider 16 is used for one logical sector address input using time division multiplexing. The circuit configuration was simplified by performing two divisions alone. To this end, the first and second operation modes are sequentially designated for one input of the logical sector address for the same time as the operation designation signal CYLB_HDSEC shown in FIG. 2 showing the operation timing of FIG. In FIG. 2, the cylinder number P_CYL is obtained in the first operation mode in which the operation designation signal CYLB_HDSEC corresponds to the logic “0” during the first time interval T1. In the second operation mode, the head number P_HD and the sector number P_SEC are obtained. The first and second time periods correspond to 33 pulses of the clock signal DIV_CLK, for example, as shown in FIG. The clock signal DIV_CLK is a clock signal for shifting data during division.

그리고 상기 제1도에서 참조부호 L_AD는 호스트 컴퓨터로부터 입력되는 논리적 섹터 어드레스이다. ST_AD는 디스크상에서 논리적 섹터 어드레스에 해당하는 존의 시작 어드레스로 미리 설정된다. SEC_P_CYL은 실린더당 섹터수로서 미리 설정된다. SEC_P_TRK는 트랙당 섹터수로서 미리 설정된다.In FIG. 1, reference numeral L_AD denotes a logical sector address input from a host computer. ST_AD is preset to the start address of the zone corresponding to the logical sector address on the disk. SEC_P_CYL is preset as the number of sectors per cylinder. SEC_P_TRK is set in advance as the number of sectors per track.

우선 감산기(10)는 입력되는 하나의 논리적 섹터 어드레스 L_AD로부터 디스크상의 해당 존의 시작 어드레스 ST_AD를 감산하여 논리적 옵셋값 L_OFS으로 출력한다. 이러한 상태에서 동작지정신호 CYLB_HDSEC 논리 “0”에 의해 제1시간구간 T1동안 제1동작모드의 동작이 먼저 이루어지고 뒤이어 동작지정신호 CYLB_HDSEC 논리 “1”에 의해 제2시간구간 T2동안 제2동작모드의 동작이 이루어진다.First, the subtractor 10 subtracts the start address ST_AD of the corresponding zone on the disk from the input logical sector address L_AD and outputs the logical offset value L_OFS. In this state, the operation of the first operation mode is first performed during the first time interval T1 by the operation designation signal CYLB_HDSEC logic "0", followed by the second operation mode during the second time interval T2 by the operation designation signal CYLB_HDSEC logic "1". The operation is made.

먼저 제1동작모드시의 동작을 살펴본다. 이때 감산기(10)의 논리적 옵셋값 L_OFS와 제산기(16)의 제산결과에 따른 나머지를 입력하는 제1멀티플렉서(12)는 논리 “0”의 동작지정신호 CYLB_HDSEC에 의해 논리적 옵셋값 L_OFS를 선택하여 제산기(16)의 입력단자 DA에 인가한다. 또한 디스크상의 실린더당 섹터수 SEC_P_CYL과 트랙당 섹터수 SEC_P_TRK를 입력하는 제2멀티플렉서(14)는 논리 “0”의 동작지정신호 CYLB_HDSEC에 의해 실린더당 섹터수 SEC_P_CYL을 선택하여 제산기(16)의 입력단자 DB에 인가한다.First, the operation in the first operation mode will be described. At this time, the first multiplexer 12 which inputs the logical offset value L_OFS of the subtractor 10 and the remainder according to the division result of the divider 16 selects the logical offset value L_OFS by the operation designation signal CYLB_HDSEC of logic "0". To the input terminal DA of the divider 16. In addition, the second multiplexer 14 which inputs the sector number SEC_P_CYL per cylinder and the sector number SEC_P_TRK per track on the disk selects the sector number SEC_P_CYL per cylinder according to the operation designation signal CYLB_HDSEC of logic " 0 " Apply to terminal DB.

그러면 제산기(16)는 제1, 제2멀티플렉서(12, 14)에 의해 각각 선택 출력되는 논리적 옵셋값 L_OFS과 실린더당 섹터수 SEC_P_CYL를 제2도와 같은 로드신호 LDB에 의해 로드하고, 논리적 옵셋값 L_OFS을 실린더당 섹터수 SEC_P_CYL로 제산하여 그 결과에 따른 몫과 나머지를 출력한다. 이때 제2도와 같은 33개의 클럭신호 DIV_CLK를 이용한다. 상기 로드신호 LDB는 논리적 섹터 어드레스의 하나의 입력에 대해 두번 발생된다. 즉, 로드신호 LDB는 제2도와 같이 제1, 제2동작모드의 각 시작시점에 발생된다.The divider 16 then loads the logical offset value L_OFS and the number of sectors per cylinder SEC_P_CYL selected by the first and second multiplexers 12 and 14, respectively, by the load signal LDB as shown in FIG. The L_OFS is divided by the number of sectors per cylinder SEC_P_CYL to output the quotient and remainder according to the result. At this time, 33 clock signals DIV_CLK as shown in FIG. 2 are used. The load signal LDB is generated twice for one input of a logical sector address. That is, the load signal LDB is generated at each start point of the first and second operation modes as shown in FIG.

이때 몫은 실린더 옵셋값 CYL_OFS으로서 가산기(18)에 인가된다. 그러면 가산기(18)는 실린더 옵셋값 CYL_OFS를 해당 존의 베이스 실린더 어드레스 CYL_BASE와 가산하여 물리적 섹터 어드레스의 실린더번호 P_CYL로 출력한다. 이때 가산기(18)의 출력은 제1래치회로(26)에 래치되어 출력되는데, 제1래치회로(26)는 제1동작모드에서 래치제어회로(32)와 앤드게이트(22)로부터 인가되는 클럭신호에 의해 가산기(18)의 출력을 래치한다.The quotient is then applied to the adder 18 as a cylinder offset value CYL_OFS. The adder 18 then adds the cylinder offset value CYL_OFS to the base cylinder address CYL_BASE of the zone and outputs the cylinder number P_CYL of the physical sector address. At this time, the output of the adder 18 is latched and output to the first latch circuit 26. The first latch circuit 26 is a clock applied from the latch control circuit 32 and the AND gate 22 in the first operation mode. The output of the adder 18 is latched by the signal.

상기와 같이 실린더번호 P_CYL이 구해진 다음에 수행되는 제2동작모드시의 동작을 살펴본다. 이때 제1멀티플렉서(12)는 제산기(16)의 제산결과에 따른 나머지 즉, 상기한 제1동작모드시에 실린더번호 연산에 따른 나머지를 논리 “1”의 동작지정신호 CYLB_HDSEC에 의해 선택하여 제산기(16)의 입력단자 DA에 인가한다. 또한 제2멀티플렉서(14)는 논리 “0”의 동작지정신호 CYLB_HDSEC에 의해 트랙당 섹터수 SEC_P_TRK을 선택하여 제산기(16)의 입력단자 DB에 인가한다.The operation in the second operation mode performed after the cylinder number P_CYL is obtained as described above will be described. At this time, the first multiplexer 12 selects the remainder according to the division result of the divider 16, that is, the remainder according to the cylinder number operation in the first operation mode by the operation designation signal CYLB_HDSEC of logic “1”. It is applied to the input terminal DA of the diffuser 16. The second multiplexer 14 selects the sector number SEC_P_TRK per track and applies it to the input terminal DB of the divider 16 by the operation designation signal CYLB_HDSEC of logic "0".

그러면 제산기(16)는 제1, 제2멀티플렉서(12, 14)에 의해 선택 출력되는 나머지와 트랙당 섹터수 SEC_P_TRK를 제2도와 같은 로드신호 LDB에 의해 로드하고, 나머지를 트랙당 섹터수 SEC_P_TRK로 제산하여 그 결과에 따른 몫과 나머지를 출력한다. 이때 제2도와 같은 33개의 클럭신호 DIV_CLK를 이용한다.The divider 16 then loads the remainder selected by the first and second multiplexers 12 and 14 and the number of sectors per track SEC_P_TRK by the load signal LDB as shown in FIG. 2, and the remainder by the number of sectors per track SEC_P_TRK. Divide by to print the quotient and remainder according to the result. At this time, 33 clock signals DIV_CLK as shown in FIG. 2 are used.

이때 몫은 물리적 섹터 어드레스의 헤드번호 P_HD로서 제2래치회로(28)에 인가되고, 나머지는 물리적 섹터 어드레스의 섹터번호 P_SEC로서 제3래치회로(30)에 인가된다. 그러면 제2, 제3래치회로(28, 30)는 각각 헤드번호 P_HD와 섹터번호 P_SEC를 래치 출력한다. 이때 제2, 제3래치회로(28, 30)는 제2동작모드에서 래치제어회로(32)의 앤드게이트(24)로부터 인가되는 클럭신호에 의해 제산기(16)의 출력을 래치한다.The share is applied to the second latch circuit 28 as the head number P_HD of the physical sector address, and the rest is applied to the third latch circuit 30 as the sector number P_SEC of the physical sector address. Then, the second and third latch circuits 28 and 30 latch output the head number P_HD and the sector number P_SEC, respectively. In this case, the second and third latch circuits 28 and 30 latch the output of the divider 16 by a clock signal applied from the AND gate 24 of the latch control circuit 32 in the second operation mode.

따라서 제1도의 회로에 의해 하나의 논리적 섹터 어드레스가 물리적 섹터 어드레스로 변환되는 것이다.Therefore, one logical sector address is converted into a physical sector address by the circuit of FIG.

한편 상기한 래치제어회로(32)는 상기한 바와 같이 제2도와 같은 클럭신호 CLK를 동작지정신호 CYLB_HDSEC에 따라 제1래치회로(26)와 제2, 제3래치회로(28, 30)에 선택적으로 인가한다. 상기 래치제어회로(32)는 동작지정신호 CYLB_HDSEC를 반전시키는 인버터(20)와, 인버터(20)의 출력과 클럭신호 CLK를 논리곱하여 제1래치회로(26)에 인가하는 앤드게이트(22)와, 동작지정신호 CYLB_HDSEC와 클럭신호 CLK를 논리곱하여 제2, 제3래치회로(28, 30)에 인가하는 앤드게이트(24)로 구성한다. 이에따라 제1동작모드의 종료시점에는 제1래치회로(26)만이 래치동작을 하게 되고 제2동작모드의 종료시점에는 제2, 제3래치회로(28, 30)만이 래치동작을 하게 된다. 상기 클럭신호 CLK는 제2도와 같이 제1동작모드의 종료시점과 제2동작모드의 종료시점에 한번씩 발생된다.Meanwhile, as described above, the latch control circuit 32 selectively selects the clock signal CLK as shown in FIG. 2 to the first latch circuit 26 and the second and third latch circuits 28 and 30 according to the operation designation signal CYLB_HDSEC. Is applied. The latch control circuit 32 includes an inverter 20 for inverting the operation designation signal CYLB_HDSEC, an AND gate 22 for multiplying the output of the inverter 20 with the clock signal CLK and applying it to the first latch circuit 26. And the AND gate 24 which logically multiplies the operation specifying signal CYLB_HDSEC and the clock signal CLK and applies it to the second and third latch circuits 28 and 30. Accordingly, only the first latch circuit 26 performs the latch operation at the end of the first operation mode, and only the second and third latch circuits 28 and 30 perform the latch operation at the end of the second operation mode. The clock signal CLK is generated once at the end of the first operation mode and the end of the second operation mode as shown in FIG.

한편 상기한 제산기(16)는 제3도에 도시한 바와 같이 제3멀티플렉서(34)와 제1, 제2쉬프트 레지스터(36, 38)와 감산기(40)와 낸드게이트(42)와 인버터(44)와 직/병렬 변환기(46)로 구성한다. 상기 제3도에서 입력단자 DA에 입력되는 피젯수와 감산기(40)의 출력중 하나를 제3멀티플렉서(34)에 의해 선택하여 제1쉬프트 레지스터(36)에 로드하고, 제2도와 같은 클럭신호 DIV_CLK에 의해 쉬프트시킨다. 또한 입력단자 DB에 입력되는 젯수를 제2쉬프트 레지스터(38)에 로드하여 쉬프트시키고 클럭신호 DIV_CLK에 의해 쉬프트시킨다. 제1, 제2쉬프트 레지스터(36, 38)의 출력은 감산기(40)에 의해 서로간의 차가 구해진다. 이때 감산기(40)의 감산에 의해 구해지는 피젯수와 젯수의 차가 0보다 크면, 낸드게이트(42)와 제3멀티플렉서(34)는 새로운 피젯수와 젯수의 차값을 제1쉬프트 레지스터(36)에 로드하고 몫을 “1”로 한후 젯수를 1비트 쉬프트하여 다시 감산을 반복하는 직렬 쉬프트방식의 제산기로 구성한 예를 보인 것이다. 감산기(40)의 출력중 최상위비트 MSB는 인버터(44)에 의해 반전된후 직/병렬 변환기(46)에 인가되어 병렬데이타의 몫으로 출력되며, 그때의 제1쉬프트 레지스터(36)의 출력이 나머지가 된다.Meanwhile, as shown in FIG. 3, the divider 16 includes the third multiplexer 34, the first and second shift registers 36 and 38, the subtractor 40, the NAND gate 42, and the inverter ( 44) and a serial / parallel converter 46. In FIG. 3, one of the number of pidgets input to the input terminal DA and the output of the subtractor 40 is selected by the third multiplexer 34 and loaded into the first shift register 36, and the clock signal as shown in FIG. Shift by DIV_CLK. The number of jets input to the input terminal DB is loaded into the second shift register 38 to be shifted and shifted by the clock signal DIV_CLK. The difference between the outputs of the first and second shift registers 36 and 38 is determined by the subtractor 40. At this time, if the difference between the number of jets and the number of jets determined by the subtraction of the subtractor 40 is greater than 0, the NAND gate 42 and the third multiplexer 34 transmit the new difference between the number of jets and the number of jets to the first shift register 36. The example shows a serial shift divider that loads, sets the quotient to "1", shifts the jet number by 1 bit, and repeats subtraction again. The most significant bit MSB of the output of the subtractor 40 is inverted by the inverter 44 and then applied to the serial / parallel converter 46 to be output as the quotient of parallel data, and the output of the first shift register 36 at that time is The rest.

또한 상기한 감산기(40)는 제4도와 같이 가산기(48)와 인버터(50)로서 구성한다. 즉 입력 A로부터 입력 B를 감산하는 경우로서, 입력 B는 인버터(50)에 의해 반전된후 가산기(48)에 의해 입력 A와 가산됨으로써 감산이 이루어진다. 이를 논리식으로 보이면 하기 (1)식과 같다.The subtractor 40 is configured as the adder 48 and the inverter 50 as shown in FIG. That is, as the case where the input B is subtracted from the input A, the input B is inverted by the inverter 50 and then added by the adder 48 with the input A to subtract it. If this appears to be a logical formula, it is as following Formula (1).

상술한 바와 같이 본 발명은 간단한 하드웨어로서 섹터 어드레스를 변환함으로써 섹터 어드레스 변환에 소요되는 시간을 줄여 HDD의 성능을 향상시킬 수 있는 잇점이 있다.As described above, the present invention has the advantage of improving the performance of the HDD by reducing the time required for sector address translation by converting the sector address as simple hardware.

한편 상술한 본 발명의 설명에서는 구체적인 실시예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시할 수 있다. 특히 본 발명의 실시예에서는 콘스턴트-덴시티 기록형태를 채용한 HDD에 적용예를 보였으나, 그렇지 않은 경우에도 동일하게 적용된다. 다만 이경우에는 존을 구분할 필요가 없으므로 감산기(10)와 가산기(18)를 사용할 필요가 없다. 또한 HDD뿐만아니라 FDD에도 동일하게 적용된다. 따라서 발명의 범위는 설명된 실시예에 의하여 정할 것이 아니고 특허 청구의 범위와 특허 청구의 범위의 균등한 것에 의해 정하여져야 한다.Meanwhile, in the above description of the present invention, specific embodiments have been described, but various modifications can be made without departing from the scope of the present invention. In particular, although the embodiment of the present invention shows an application example to the HDD employing the constant-density recording form, the same applies to the other cases. In this case, however, there is no need to distinguish the zones, so it is not necessary to use the subtractor 10 and the adder 18. The same applies to FDD as well as HDD. Therefore, the scope of the invention should not be defined by the described embodiments, but should be defined by the equivalents of the claims and the claims.

Claims (8)

논리적 섹터 어드레스를 실린더번호와 헤드번호와 섹터번호로 이루어지는 물리적 섹터 어드레스로 변환하는 하드 디스크 구동장치의 섹터 어드레스 변환회로에 있어서, 상기 논리적 섹터 어드레스의 한 입력에 대해 순차적으로 제1, 제2동작모드로 동작하며, 상기 제1동작모드에서 상기 논리적 섹터 어드레스를 실린더당 섹터수로 제산하여 몫을 상기 실린더번호로 출력하고, 뒤이어지는 상기 제2동작모드에서 상기 실린더번호 연산에 따른 나머지를 트랙당 섹터수로 제산하여 몫을 상기 헤드번호로 출력하며 나머지를 상기 섹터번호로 출력하는 제산수단과, 상기 논리적 옵셋값과 상기 실린더번호 연산에 따른 나머지를 상기 제1, 제2동작모드에 대응되게 순차로 하나씩 선택하여 상기 제산수단에 인가하는 제1선택수단과, 디스크상의 실린더당 섹터수와 트랙당 섹터수를 상기 제1, 제2동작모드에 대응되게 순차로 하나씩 선택하여 상기 제산수단에 인가하는 제2선택수단을 구비하는 것을 특징으로 하는 섹터 어드레스 변환회로.A sector address conversion circuit of a hard disk drive device that converts a logical sector address into a physical sector address consisting of a cylinder number, a head number, and a sector number, the first and second operation modes sequentially for one input of the logical sector address. The logical sector address is divided by the number of sectors per cylinder in the first operation mode, and the quotient is output as the cylinder number, and in the subsequent second operation mode, the remainder of the cylinder number operation is calculated. Division means for dividing by the number and outputting the quotient to the head number, and outputting the remainder to the sector number, and the rest according to the logical offset value and the cylinder number operation in order to correspond to the first and second operation modes. First selection means for selecting one by one and applying to the division means, and the number of sectors per cylinder on the disc; And second selection means for sequentially selecting one sector per track in correspondence to the first and second operation modes and applying it to the division means. 제1항에 있어서, 상기 제산수단이, 상기 논리적 섹터 어드레스의 하나의 입력에 대해 두 번 발생되는 로드신호에 의해 상기 논리적 섹터 어드레스 및 상기 실린더당 섹터수와 상기 실린더번호 연산에 따른 나머지 및 상기 트랙당 섹터수를 순차로 로드하는 것을 특징으로 하는 섹터 어드레스 변환회로.2. The track according to claim 1, wherein the division means comprises the logical sector address and the number of sectors per cylinder and the remainder from the calculation of the cylinder number and the track by a load signal generated twice for one input of the logical sector address. A sector address conversion circuit characterized by loading the number of sectors sequentially. 제2항에 있어서, 상기 제1, 제2선택수단이, 상기 논리적 섹터 어드레스의 하나의 입력에 대해 서로 동일한 시간동안 순차로 상기 제1, 제2동작모드를 지정하는 동작지정신호에 의해 상기 순차 선택동작을 하는 것을 특징으로 하는 섹터 어드레스 변환회로.3. The method according to claim 2, wherein the first and second selection means sequentially designate the first and second operation modes sequentially for the same time with respect to one input of the logical sector address. And a sector address conversion circuit characterized in that the selection operation is performed. 제2항에 있어서, 상기 제1동작모드에서 상기 제산수단으로부터 출력되는 상기 실린더번호를 래치 출력하는 제1래치수단과, 상기 제2동작모드에서 상기 제산수단으로부터 출력되는 상기 헤드번호를 래치 출력하는 제2래치수단과, 상기 제2동작모드에서 상기 제산수단으로부터 출력되는 상기 섹터번호를 래치 출력하는 제3래치수단과, 상기 제1동작모드의 종료시점과 상기 제2동작모드의 종료시점에 발생하는 클럭신호를 상기 동작지정신호에 따라 상기 제1래치수단과 상기 제2, 제3래치수단에 순차로 제공하는 래치제어수단을 더 구비하는 것을 특징으로 하는 섹터 어드레스 변환회로.3. The apparatus of claim 2, further comprising: latching the first latch means for latching the cylinder number output from the dividing means in the first operation mode, and latching the head number output from the dividing means in the second operation mode. A second latch means, a third latch means for latching out the sector number output from the division means in the second operation mode, at the end of the first operation mode and at the end of the second operation mode. And latch control means for sequentially providing a clock signal to the first latch means and the second and third latch means in accordance with the operation designation signal. 논리적 섹터 어드레스를 실린더번호와 헤드번호와 섹터번호로 이루어지는 물리적 섹터 어드레스로 변환하는 하드 디스크 구동장치의 섹터 어드레스 변환회로에 있어서, 상기 논리적 섹터 어드레스로부터 디스크상의 해당 존의 시작 어드레스를 감산하여 논리적 옵셋값으로 출력하는 감산수단과, 상기 논리적 섹터 어드레스의 한 입력에 대해 순차적으로 제1, 제2동작모드로 동작하며, 상기 제1동작모드에서 상기 논리적 옵셋값을 실린더당 섹터수로 제산하여 몫을 실린더 옵셋값으로 출력하고, 뒤이어지는 상기 제2동작모드에서 상기 실린더 옵셋값 연산에 따른 나머지를 트랙당 섹터수로 제산하여 몫을 상기 헤드번호로 출력하며 나머지를 상기 섹터번호로 출력하는 제산수단과, 상기 제1동작모드에서 상기 실린더 옵셋값을 상기 해당 존의 베이스 실린더 어드레스와 가산하여 상기 실린더번호로 출력하는 가산수단과, 상기 논리적 옵셋값과 상기 실린더번호 연산에 따른 나머지를 상기 제1, 제2동작모드에 대응되게 순차로 하나씩 선택하여 상기 제산수단에 인가하는 제1선택수단과, 디스크상의 실린더당 섹터수와 트랙당 섹터수를 상기 제1, 제2동작모드에 대응되게 순차로 하나씩 선택하여 상기 제산수단에 인가하는 제2선택수단을 구비하는 것을 특징으로 하는 섹터 어드레스 변환회로.In a sector address conversion circuit of a hard disk drive device that converts a logical sector address into a physical sector address consisting of a cylinder number, a head number, and a sector number, a logical offset value is obtained by subtracting the start address of the corresponding zone on the disk from the logical sector address. A subtracting means for outputting the sequential means, and sequentially operating in the first and second operation modes with respect to one input of the logical sector address, and in the first operation mode, dividing the logical offset value by the number of sectors per cylinder in the first operation mode. Division means for outputting an offset value, dividing the remainder according to the cylinder offset value calculation by the number of sectors per track in the subsequent second operation mode, outputting the quotient to the head number, and outputting the remainder to the sector number; In the first operation mode, the cylinder offset value of the base seal of the corresponding zone. An addition means for adding the address to the cylinder number and outputting the result to the cylinder number, and selecting the logical offset value and the rest according to the cylinder number operation one by one in order corresponding to the first and second operation modes and applying the result to the division means. And first selection means, and second selection means for sequentially selecting one sector per cylinder and one track per track on the disc in correspondence to the first and second operation modes and applying the same to the division means. Sector address conversion circuit. 제5항에 있어서, 상기 제산수단이, 상기 논리적 섹터 어드레스의 하나의 입력에 대해 두 번 발생되는 로드신호에 의해 상기 실린더 옵셋값 및 상기 실린더당 섹터수와 상기 실린더번호 연산에 따른 나머지 및 상기 트랙당 섹터수를 순차로 로드하는 것을 특징으로 하는 섹터 어드레스 변환회로.6. The divider according to claim 5, wherein the dividing means further comprises the cylinder offset value and the number of sectors per cylinder and the remainder from the calculation of the cylinder number and the track by a load signal generated twice for one input of the logical sector address. A sector address conversion circuit characterized by loading the number of sectors sequentially. 제6항에 있어서, 상기 제1, 제2선택수단이, 상기 논리적 섹터 어드레스의 하나의 입력에 대해 서로 동일한 시간동안 순차로 상기 제1, 제2동작모드를 지정하는 동작지정신호에 의해 상기 순차 선택동작을 하는 것을 특징으로 하는 섹터 어드레스 변환회로.7. The method according to claim 6, wherein the first and second selection means sequentially designate the first and second operation modes sequentially for the same time with respect to one input of the logical sector address. And a sector address conversion circuit characterized in that the selection operation is performed. 제7항에 있어서, 상기 제1동작모드에서 상기 제산수단으로부터 출력되는 상기 실린더번호를 래치 출력하는 제1래치수단과, 상기 제2동작모드에서 상기 제산수단으로부터 출력되는 상기 헤드번호를 래치 출력하는 제2래치수단과, 상기 제2동작모드에서 상기 제산수단으로부터 출력되는 상기 섹터번호를 래치 출력하는 제3래치수단과, 상기 제1동작모드의 종료시점과 상기 제2동작모드의 종료시점에 발생하는 클럭신호를 상기 동작지정신호에 따라 상기 제1래치수단과 상기 제2, 제3래치수단에 순차로 제공하는 래치제어수단을 더 구비하는 것을 특징으로 하는 섹터 어드레스 변환회로.8. The method of claim 7, further comprising: latching the first latch means for latching the cylinder number output from the dividing means in the first operation mode, and latching the head number output from the dividing means in the second operation mode. A second latch means, a third latch means for latching out the sector number output from the division means in the second operation mode, at the end of the first operation mode and at the end of the second operation mode. And latch control means for sequentially providing a clock signal to the first latch means and the second and third latch means in accordance with the operation designation signal.
KR1019950025473A 1995-08-18 1995-08-18 The sector address converting circuit of hard disk driving apparatus KR100241741B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950025473A KR100241741B1 (en) 1995-08-18 1995-08-18 The sector address converting circuit of hard disk driving apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950025473A KR100241741B1 (en) 1995-08-18 1995-08-18 The sector address converting circuit of hard disk driving apparatus

Publications (2)

Publication Number Publication Date
KR970012102A KR970012102A (en) 1997-03-29
KR100241741B1 true KR100241741B1 (en) 2000-02-01

Family

ID=19423757

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950025473A KR100241741B1 (en) 1995-08-18 1995-08-18 The sector address converting circuit of hard disk driving apparatus

Country Status (1)

Country Link
KR (1) KR100241741B1 (en)

Also Published As

Publication number Publication date
KR970012102A (en) 1997-03-29

Similar Documents

Publication Publication Date Title
JPH1011227A (en) Magnetic disk device
KR20010113821A (en) Adaptive h-infinity hardware controller for disc drive actuator control
KR100212084B1 (en) Serial interface circuit
US5724500A (en) Multiple writing volume backup method
KR100241741B1 (en) The sector address converting circuit of hard disk driving apparatus
JPH0683547A (en) Apparatus and method for processing information
US20060218361A1 (en) Electronic storage device with rapid data availability
JPH07220391A (en) Disk device
TW482958B (en) Integrated circuit for controlling a remotely located mass storage peripheral device
US3490006A (en) Instruction storage and retrieval apparatus for cyclical storage means
JP3190546B2 (en) Block address conversion method, rotation type storage subsystem control method, and disk subsystem
US6795893B2 (en) Recordable disk recording controller with batch register controller
KR100336744B1 (en) Write apparatus and method for flash memory
JPH02278417A (en) Sector address converting circuit
KR100403043B1 (en) Apparatus for improving data write of hard disk drive
JPH064219A (en) Method for drive connection between floppy disk and optical disk, interface device, and optical disk dividing device
JPH0223572A (en) External storage controller
US5696640A (en) Disk drive using virtual hands for continuous access and execution
KR100338723B1 (en) Method and device for generating sector pulse of hard disc drive
JPH05233151A (en) Magnetic disk array
JPH03271925A (en) Memory disk device
JPH0982038A (en) Storage device and its control apparatus
JPH03102418A (en) Magnetic disk device
JPS60150128A (en) Buffer memory controller of rotary magnetic memory controller
JP2001134488A (en) Method for controlling cache for disk memory

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: 20111028

Year of fee payment: 13

LAPS Lapse due to unpaid annual fee