KR101525589B1 - Data storage device and data processing system having the same - Google Patents

Data storage device and data processing system having the same Download PDF

Info

Publication number
KR101525589B1
KR101525589B1 KR1020090035602A KR20090035602A KR101525589B1 KR 101525589 B1 KR101525589 B1 KR 101525589B1 KR 1020090035602 A KR1020090035602 A KR 1020090035602A KR 20090035602 A KR20090035602 A KR 20090035602A KR 101525589 B1 KR101525589 B1 KR 101525589B1
Authority
KR
South Korea
Prior art keywords
mode
memory devices
memory
ssd
power mode
Prior art date
Application number
KR1020090035602A
Other languages
Korean (ko)
Other versions
KR20100116934A (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 KR1020090035602A priority Critical patent/KR101525589B1/en
Priority to US12/764,464 priority patent/US8478928B2/en
Publication of KR20100116934A publication Critical patent/KR20100116934A/en
Application granted granted Critical
Publication of KR101525589B1 publication Critical patent/KR101525589B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System (AREA)

Abstract

본 발명에 따른 데이터 저장 장치는, 복수의 메모리 장치들과 그리고 복수의 채널들을 통해 상기 복수의 메모리 장치들과 데이터를 교환하며, 외부 명령어(VS_CMD)에 따라 상기 복수의 메모리 장치들을 액세스하기 위한 채널의 대역폭 또는 인터리빙 액세스되는 메모리 장치의 수를 조정하는 메모리 컨트롤러를 포함하되, 상기 외부 명령어(VS_CMD)는 바이오스(BIOS) 설정 값을 참조하여 외부로부터 제공되는 벤더 특정 명령어이다. A data storage device according to the present invention is a data storage device for exchanging data with a plurality of memory devices and a plurality of memory devices via a plurality of channels and a channel for accessing the plurality of memory devices according to an external command (VS_CMD) (VS_CMD) is a vendor specific instruction provided from the outside by referring to a BIOS setting value. The memory controller controls the bandwidth of the memory device or the number of memory devices accessed by interleaving.

Description

데이터 저장 장치 및 그것을 포함하는 정보 처리 시스템{DATA STORAGE DEVICE AND DATA PROCESSING SYSTEM HAVING THE SAME}DATA STORAGE DEVICE AND DATA PROCESSING SYSTEM HAVING THE SAME [0002]

본 발명은 전자 장치에 관한 것으로, 더욱 상세하게는 데이터 저장 장치 및 그것을 포함하는 정보 처리 시스템에 관한 것이다. The present invention relates to an electronic device, and more particularly to a data storage device and an information processing system including the same.

일반적으로, 플래시 메모리는 전기적으로 셀의 데이터를 일괄적으로 소거하는 기능이 있기 때문에, 컴퓨터 및 메모리 카드 등에 널리 사용되고 있다. 최근 들어서는, 휴대폰, PDA, 디지털카메라 등과 같은 휴대용 정보기기의 사용이 급증함에 따라, 하드 디스크 드라이브(HDD) 대신 플래시 메모리가 저장 장치로서 널리 사용되고 있다. 2. Description of the Related Art Generally, a flash memory is widely used for computers, memory cards and the like because it has a function of electrically erasing cell data collectively. 2. Description of the Related Art In recent years, portable information devices such as mobile phones, PDAs, and digital cameras have been rapidly used, and flash memories are widely used as storage devices in place of hard disk drives (HDDs).

최근에는 기술의 진보와 플래시 메모리 장치의 가격 인하에 따라 플래시 메모리를 하드 디스크 드라이브(HDD)를 대체하기 위한 저장 매체로 사용되고 있다. 상술한 저장 장치를 반도체 디스크 장치 또는 솔리드 스테이트 드라이브(Solid State Drive) 또는 솔리드 스테이트 디스크(Solid State Disk)라고도 한다. 이하에서는 간단히 SSD라 칭하기로 한다. SSD로의 액세스 동작에 의하면, 고속으로 데이터를 입출력할 수 있으면서도 기계적 지연이나 실패율이 현저히 적다. 또한, SSD는 외부의 충격에도 데이터가 쉽게 손상되지 않으며, 발열·소음 및 전력소모가 적고, 소형화·경량화할 수 있는 장점이 있다. 따라서, 기계적으로 회전하는 플래터(Platter)를 사용하지 않는 SSD에 대한 수요는 저전력·대용량화의 모바일 트랜드에 따라 급격히 증가하고 있다. In recent years, flash memory has been used as a storage medium for replacing a hard disk drive (HDD) according to technological progress and price reduction of a flash memory device. The above-described storage device is also referred to as a semiconductor disk device or a solid state drive or a solid state disk. Hereinafter, it will be simply referred to as an SSD. According to the access operation to the SSD, although the data can be input / output at high speed, the mechanical delay and the failure rate are remarkably small. In addition, the SSD is advantageous in that data is not easily damaged even in the event of an external impact, heat generation, noise and power consumption are reduced, and the SSD can be reduced in size and weight. Thus, the demand for SSDs that do not use mechanically rotating platters is increasing rapidly with low power, high capacity mobile trends.

하드 디스크 드라이브(HDD)에 대비하여 SSD의 강점 중에 하나가 낮은 전력 소모율이었다. 하지만, 최근의 대용량화 및 고성능화의 요구에 따라 더욱 높은 전력 효율을 가진 SSD에 대한 요구가 더욱 절실해지고 있다. One of the strengths of SSDs versus hard disk drives (HDDs) was low power consumption. However, with the recent demand for higher capacity and higher performance, there is a growing demand for SSDs with higher power efficiency.

본 발명의 목적은 소모 전력량을 조정할 수 있는 솔리드 스테이트 드라이브 및 그것을 포함하는 정보 처리 시스템을 제공하는 데 있다.An object of the present invention is to provide a solid state drive capable of adjusting the amount of power consumption and an information processing system including the solid state drive.

상기 목적을 달성하기 위한 본 발명에 따른 저장 장치는, 복수의 메모리 장치들과 그리고 복수의 채널들을 통해 상기 복수의 메모리 장치들과 데이터를 교환하며, 외부 명령어(VS_CMD)에 따라 상기 복수의 메모리 장치들을 액세스하기 위한 채널 대역폭 또는 인터리빙 액세스되는 메모리 장치의 수를 조정하는 메모리 컨트롤러를 포함하되, 상기 외부 명령어(VS_CMD)는 바이오스(BIOS) 설정 값을 참조하여 외부로부터 제공되는 벤더 특정 명령어이다. According to an aspect of the present invention, there is provided a storage device for exchanging data with a plurality of memory devices and a plurality of memory devices via a plurality of channels, (VS_CMD) is a vendor-specific instruction provided externally with reference to a BIOS (BIOS) setting value. The memory controller controls the channel bandwidth for accessing the BIOS or the number of memory devices accessed interleaved.

실시예에 있어서, 상기 메모리 컨트롤러는 상기 명령어(VS_CMD)를 디코딩하여 구동 전력 모드(P_mode)를 생성하고, 상기 구동 전력 모드(P_mode)에 따라 상기 복수의 채널들 중 일부 또는 전부를 활성화한다. In an embodiment, the memory controller decodes the instruction (VS_CMD) to generate a driving power mode (P_mode), and activates some or all of the plurality of channels in accordance with the driving power mode (P_mode).

실시예에 있어서, 상기 메모리 컨트롤러는 상기 구동 전력 모드(P_mode)에 따라 상기 활성화된 채널에서 인터리빙 액세스되는 메모리 장치의 수를 조정한다. In an embodiment, the memory controller adjusts the number of memory devices accessed interleaved in the activated channel according to the driving power mode (P_mode).

실시예에 있어서, 상기 메모리 컨트롤러는 상기 구동 전력 모드(P_mode)에 따라 상기 활성화된 채널들 각각의 액세스 시작 시간을 서로 다르게 조정한다.In an embodiment, the memory controller adjusts the access start time of each of the activated channels differently according to the driving power mode (P_mode).

실시예에 있어서, 상기 메모리 컨트롤러의 제어에 따라 데이터를 버퍼링하는 버퍼 메모리를 더 포함하되, 상기 메모리 컨트롤러는 상기 구동 전력 모드(P_mode)에 따라 상기 버퍼 메모리를 구동하기 위한 클록의 주파수를 조정한다. The memory controller may further include a buffer memory for buffering data under the control of the memory controller. The memory controller adjusts a clock frequency for driving the buffer memory according to the driving power mode (P_mode).

실시예에 있어서, 상기 메모리 컨트롤러는 상기 명령어(VS_CMD)를 디코딩하는 중앙 처리 장치를 더 포함하며, 상기 구동 전력 모드(P_mode)에 따라 상기 중앙 처리 장치의 클록 주파수가 조정된다.In an embodiment, the memory controller further comprises a central processing unit for decoding the instruction (VS_CMD), wherein the clock frequency of the central processing unit is adjusted according to the driving power mode (P_mode).

실시예에 있어서, 상기 메모리 컨트롤러는 상기 구동 전력 모드(P_mode)에 따라 상기 활성화된 채널에서 데이터를 교환하기 위한 클록의 주파수를 조정한다.In an embodiment, the memory controller adjusts the frequency of the clock for exchanging data in the activated channel according to the driving power mode (P_mode).

실시예에 있어서, 상기 복수의 메모리 장치들은 플래시 메모리 장치로 구성되며, 상기 복수의 메모리 장치들과 상기 메모리 컨트롤러는 솔리드 스테이트 드라이브로 제공된다.In an embodiment, the plurality of memory devices is configured as a flash memory device, and the plurality of memory devices and the memory controller are provided as a solid state drive.

상기 목적을 달성하기 위한 다른 특징에 따른 저장 장치는, 복수의 메모리 장치들과 그리고 복수의 채널들을 통해 상기 복수의 메모리 장치들과 데이터를 교환하며, 상기 복수의 메모리 장치들에 저장되는 전원 데이터를 참조하여 상기 복수의 메모리 장치들을 액세스하기 위한 채널 대역폭 또는 인터리빙 액세스되는 메모 리 장치의 수를 조정하는 메모리 컨트롤러를 포함한다. According to another aspect of the present invention, there is provided a storage device including a plurality of memory devices and a plurality of memory devices for exchanging data with the plurality of memory devices through a plurality of channels, And a memory controller that adjusts the channel bandwidth for accessing the plurality of memory devices with reference to the number of interleaved memory devices to be accessed.

상기 목적을 달성하기 위한 또 다른 특징에 따른 정보 처리 시스템은, 바이오스(BIOS) 설정 정보를 참조하여 명령어(VS_CMD)를 발행하는 호스트와 그리고 상기 명령어(VS_CMD)에 응답하여 구동 전력 모드(P_mode)에 대응하는 성능으로 동작하는 솔리드 스테이트 드라이브를 포함한다. According to still another aspect of the present invention, there is provided an information processing system including a host that issues a command (VS_CMD) with reference to BIOS (BIOS) setting information and a host that issues a command in response to the command (VS_CMD) And a solid state drive operating at a corresponding performance.

이상과 같은 본 발명에 따르면, 바이오스 설정 정보를 참조하여 솔리드 스테이트 드라이브의 구동 전력 모드가 설정될 수 있다. 따라서, 순간 소모 전력의 급격한 증가로 인하여 잔류 전력량의 급격한 감소를 차단하여 정보 처리 시스템의 안정성을 높일 수 있다. According to the present invention, the driving power mode of the solid state drive can be set by referring to the BIOS setting information. Therefore, it is possible to increase the stability of the information processing system by preventing the rapid decrease of the residual power due to the rapid increase of the instantaneous power consumption.

앞의 일반적인 설명 및 다음의 상세한 설명 모두 예시적이라는 것이 이해되어야 하며, 청구된 발명의 부가적인 설명이 제공되는 것으로 여겨져야 한다. 참조 부호들이 본 발명의 바람직한 실시 예들에 상세히 표시되어 있으며, 그것의 예들이 참조 도면들에 표시되어 있다. 가능한 어떤 경우에도, 동일한 참조 번호들이 동일한 또는 유사한 부분을 참조하기 위해서 설명 및 도면들에 사용된다.It is to be understood that both the foregoing general description and the following detailed description are exemplary and should provide a further description of the claimed invention. Reference numerals are shown in detail in the preferred embodiments of the present invention, examples of which are shown in the drawings. Wherever possible, the same reference numbers are used in the description and drawings to refer to the same or like parts.

이하에서는, 본 발명의 특징 및 기능을 설명하기 위한 불휘발성 메모리 시스템으로 솔리드 스테이트 드라이브(SSD)를 한 예로서 사용할 것이다. 하지만, 이 기술 분야에 정통한 사람은 여기에 기재된 내용에 따라 본 발명의 다른 이점들 및 성능을 쉽게 이해할 수 있을 것이다. 또한, 저장 매체로서 낸드 플래시 메모리를 예 로 들어 설명되었으나, 또 다른 불휘발성 메모리 장치들로 구성될 수 있다. 예를 들면, 저장 매체로서 PRAM, MRAM, ReRAM, FRAM, NOR 플래시 메모리 등이 사용될 수 있으며, 이종의 메모리 장치들이 혼용되는 메모리 시스템에도 적용될 수 있다. Hereinafter, a solid state drive (SSD) will be used as an example of a nonvolatile memory system for explaining the features and functions of the present invention. However, those skilled in the art will readily appreciate other advantages and capabilities of the present invention in accordance with the teachings herein. In addition, although a NAND flash memory is exemplified as a storage medium, it may be configured with other nonvolatile memory devices. For example, PRAM, MRAM, ReRAM, FRAM, NOR flash memory, or the like can be used as a storage medium, and the present invention can be applied to a memory system in which heterogeneous memory devices are mixed.

본 발명은 다른 실시 예들을 통해 구현되거나 적용될 수 있을 것이다. 게다가, 상세한 설명은 본 발명의 범위, 기술적 사상 그리고 다른 목적으로부터 상당히 벗어나지 않고 관점 및 응용에 따라 수정되거나 변경될 수 있다. 이하, 본 발명에 따른 실시예를 첨부된 도면을 참조하여 상세히 설명한다.The present invention may be implemented or applied through other embodiments. In addition, the detailed description may be modified or modified in accordance with the aspects and applications without departing substantially from the scope, spirit and other objects of the invention. Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 정보 처리 시스템(100)을 보여주는 블록도이다. 도 1을 참조하면, 본 발명의 정보 처리 시스템(100)은 호스트(110)와 SSD(120)를 포함한다. 1 is a block diagram showing an information processing system 100 of the present invention. Referring to FIG. 1, an information processing system 100 of the present invention includes a host 110 and an SSD 120.

호스트(110)는 데이터를 저장하도록 또는 저장된 데이터를 독출하도록 SSD(120)를 제어한다. SSD(120)는 호스트(110)로부터 읽기/쓰기 요청에 응답하여 메모리 장치들(123, 124, 125)에 데이터를 저장하거나, 저장된 데이터를 독출한다. 특히, 호스트(110)는 정보 처리 시스템(100)의 기본적인 입출력 시스템인 바이오스(111, BIOS: Basic Input/Output System)를 포함한다.Host 110 controls SSD 120 to store data or to read stored data. The SSD 120 stores data in the memory devices 123, 124, and 125 in response to a read / write request from the host 110, or reads the stored data. In particular, the host 110 includes a basic input / output system (BIOS) 111, which is a basic input / output system of the information processing system 100.

바이오스(111)에는 정보 처리 시스템(100)의 가장 기본적인 설정 정보가 포함된다. 예를 들면, 바이오스(111)에는 정보 처리 시스템(100)에서 기본적인 입출력 장치들을 제어하기 위한 코드 및 설정 정보들이 저장되어 있다. 또한, 사용자는 바이오스(111)의 설정 값을 변경하여 기본적 기능들을 조정할 수 있다. 바이오스(111)는 정보 처리 시스템(100)의 메인 보드에 롬 칩(ROM Chip)의 형태로 탑재된다.The BIOS 111 contains the most basic setting information of the information processing system 100. For example, in the BIOS 111, code and setting information for controlling basic input / output devices are stored in the information processing system 100. In addition, the user can adjust the basic functions by changing the set values of the BIOS 111. [ The BIOS 111 is mounted on the main board of the information processing system 100 in the form of a ROM chip.

정보 처리 시스템(100)의 초기 부팅시, 바이오스(111)의 설정 프로그램을 이용하여 사용자는 정보 처리 시스템(100)에 탑재된 각종 하드웨어 장치들을 선택, 검사, 변경 및 조정할 수 있다. 예를 들면, 사용자는 바이오스(111)의 설정 프로그램을 이용하여 내장 시계의 날짜와 시간 조절하거나, 솔리드 스테이트 드라이브(SSD)나 광디스크 드라이브(ODD)의 종류와 전송 모드 등을 선택할 수 있다. 그리고 바이오스(111)의 설정 프로그램을 통해서 사용자는 CPU의 L1 및 L2 캐시(Cache)의 사용 여부 선택, 메모리 검사 및 동작 속도 조절, 부팅 드라이브(Booting Drive)의 우선 순위 선택, 키보드 속도 조절, 전력 관리 설정, 인터럽트 변경, 직렬 및 병렬 포트 선택 등을 수행할 수 있다.At the initial booting of the information processing system 100, the user can select, inspect, change and adjust various hardware devices installed in the information processing system 100 using the setting program of the BIOS 111. For example, the user can adjust the date and time of the built-in clock by using the setting program of the BIOS 111, or select the type and transmission mode of the solid state drive (SSD) or the optical disk drive (ODD). In addition, through the BIOS 111 setup program, the user can select whether or not to use the L1 and L2 cache of the CPU, adjust the memory test and operation speed, select the priority of the boot drive, adjust the keyboard speed, Settings, interrupt changes, serial and parallel port selection, and so on.

또한, 사용자에 의한 정보 처리 시스템(100)의 전원이 제공되면, 바이오스(111)는 정보 처리 시스템(100)이 정상 동작할 수 있도록 각종 하드웨어 장치들을 차례대로 점검한다. 점검 결과에 이상이 없으면, 바이오스(111)는 운영 체제(OS boot loader)에게 부팅 권한을 넘긴다. 이러한 과정을 POSTing (Power On Self Testing)이라고 한다.In addition, when power of the information processing system 100 by the user is provided, the BIOS 111 sequentially checks various hardware devices so that the information processing system 100 can operate normally. If there is no abnormality in the check result, the BIOS 111 transfers the boot authority to the OS boot loader. This process is called POSTing (Power On Self Testing).

본 발명의 바이오스(111)에는 SSD(120)에 대한 설정 정보가 더 포함된다. 바이오스(111)에는 SSD(120)의 구동 전력 모드를 사용자에 의해서 선택할 수 있는 설정 모드를 더 포함하고 있다. 따라서, 사용자에 의한 바이오스(111) 설정을 통해서 SSD(120)의 동작 성능이나 구동 전력 모드가 선택될 수 있다.The configuration information of the SSD 120 is further included in the BIOS 111 of the present invention. The BIOS 111 further includes a setting mode in which a user can select a driving power mode of the SSD 120. [ Therefore, the operation performance or the driving power mode of the SSD 120 can be selected through the setting of the BIOS 111 by the user.

바이오스(111)에 대한 설정이 완료되면, 호스트(110)는 바이오스(111)의 파SSD 파워 설정 정보(SSD Power configuration mode)를 참조하여 SSD(120)에 제어 명령을 제공한다. 예를 들면, 호스트(110)는 벤더 특정 명령어(VS_CMD, Vender Spific command)을 통해서 SSD(120)의 제반 구동 조건을 변경 또는 조정하도록 지시한다.When the setting of the BIOS 111 is completed, the host 110 provides a control command to the SSD 120 by referring to the SSD power configuration mode of the BIOS 111. [ For example, the host 110 instructs to change or adjust all the drive conditions of the SSD 120 through a vendor specific command (VS_CMD, Vender Spific command).

벤더 특화 명령(VS_CMD)에 응답하여 SSD(120)는 구동 모드를 셋업한다. 즉, 벤더 특화 명령(VS_CMD)에 응답하여 SSD(120)는 바이오스(111)에서 선택된 구동 전력 모드(P_mode)로 동작 조건을 설정한다. 예를 들면, SSD(120)는 다채널(CH.1~CH.n)로 연결되는 메모리 장치들(123, 124, 125)의 채널 대역폭을 일부 또는 전부를 활성화할 수 있다. 또는, 동일한 채널 내에서 메모리 장치들에 대한 웨이 인터리빙(Way Interleaving) 방식을 변경하여, 메모리 장치들(123, 124, 125)의 액세스시 소모 전력을 조정할 수 있다. 또는, 메모리 장치들(123, 124, 125)과 연결되는 채널의 데이터 전송 클록의 주파수를 조정할 수 있다. 이밖에, 버퍼 메모리(122)의 구동 클록 주파수나, SSD 컨트롤러(121)에 포함되는 중앙 처리 장치(CPU, 미도시됨)의 클록 주파수를 조정하여 SSD(120)의 소모 전력을 조정할 수 있다.In response to the vendor specific instruction (VS_CMD), the SSD 120 sets up the drive mode. That is, in response to the vendor specific instruction (VS_CMD), the SSD 120 sets the operating condition in the drive power mode (P_mode) selected in the BIOS 111. For example, the SSD 120 may activate some or all of the channel bandwidths of the memory devices 123, 124, 125 connected to the multiple channels CH.1 to CH.n. Alternatively, the way interleaving scheme for the memory devices in the same channel may be changed to adjust the power consumption in accessing the memory devices 123, 124, 125. Alternatively, the frequency of the data transfer clock of the channel connected to the memory devices 123, 124, and 125 may be adjusted. In addition, the power consumption of the SSD 120 can be adjusted by adjusting the drive clock frequency of the buffer memory 122 and the clock frequency of the central processing unit (CPU, not shown) included in the SSD controller 121.

이를 위하여 SSD(120)는 SSD 컨트롤러(121), 버퍼 메모리(122) 및 복수의 메모리 장치들(123, 124, 125)을 포함한다. SSD(120)는 벤더 특정 명령어(VS_CMD)를 디코딩하여 구동 전력 모드(P_mode)에 대응하는 모드로 메모리 장치들(123, 124, 125)과 버퍼 메모리(122)를 제어한다. To this end, the SSD 120 includes an SSD controller 121, a buffer memory 122, and a plurality of memory devices 123, 124, and 125. The SSD 120 decodes the vendor specific instruction (VS_CMD) to control the memory devices 123, 124, 125 and the buffer memory 122 in a mode corresponding to the driving power mode (P_mode).

SSD 컨트롤러(121)는 호스트(110)와 SSD(120)와의 물리적 연결을 제공한다. 즉, SSD 컨트롤러(121)는 호스트(110)의 버스 포맷(Bus format)에 대응하여 SSD(120)와의 인터페이싱을 제공한다. 특히, SSD 컨트롤러(121)는 호스트(110)로부터 제공되는 벤더 특정 명령어(VS_CMD)를 디코딩한다. 디코딩된 결과에 따라, SSD 컨트롤러(121)는 메모리 장치들(123, 124, 125)에 대한 채널 대역폭이나 웨이 인터리빙 방식들을 설정한다. 또는, SSD 컨트롤러(121)는 채널의 클록 주파수도 변경할 수 있다. 벤더 특정 명령어(VS_CMD)의 디코딩 결과에 따라, SSD 컨트롤러(121)는 버퍼 메모리(122)의 구동 클록 주파수나, SSD 컨트롤러(121) 내부의 중앙 처리 장치(CPU)의 클록 주파수를 조정할 수 있다.The SSD controller 121 provides a physical connection between the host 110 and the SSD 120. That is, the SSD controller 121 provides interfacing with the SSD 120 in response to the bus format of the host 110. In particular, the SSD controller 121 decodes the vendor specific instruction (VS_CMD) provided from the host 110. Depending on the decoded result, the SSD controller 121 sets channel bandwidth or way interleaving schemes for the memory devices 123, 124, Alternatively, the SSD controller 121 may also change the clock frequency of the channel. The SSD controller 121 can adjust the drive clock frequency of the buffer memory 122 and the clock frequency of the central processing unit (CPU) in the SSD controller 121 in accordance with the decoding result of the vendor specific instruction (VS_CMD).

버퍼 메모리(122)에는 호스트(110)로부터 제공되는 쓰기 데이터 또는 메모리장치들(123, 124, 125)로부터 읽혀진 데이터가 일시 저장된다. 호스트(110)의 읽기 요청시에 메모리 장치들(123, 124, 125)에 존재하는 데이터가 캐시되어 있는 경우에는, 버퍼 메모리(230)는 캐시된 데이터를 직접 호스트(110)로 제공하는 캐시 기능을 지원한다. 이때, 메모리 장치들(123, 124, 125)로의 액세스는 발생하지 않는다. 일반적으로, 호스트(110)의 버스 포맷(예를 들면, SATA 또는 SAS)에 의한 데이터 전송 속도는 SSD(120)의 채널의 전송 속도보다 월등히 빠르다. 즉, 호스트(110)의 인터페이스 속도가 월등히 높은 경우, 대용량의 버퍼 메모리(122)를 제공함으로써 속도 차이로 발생하는 퍼포먼스 저하를 최소화할 수 있다. In the buffer memory 122, write data provided from the host 110 or data read from the memory devices 123, 124, and 125 are temporarily stored. When data existing in the memory devices 123, 124, and 125 is cached at the time of a read request of the host 110, the buffer memory 230 stores a cache function for directly providing the cached data to the host 110 . At this time, no access to the memory devices 123, 124, 125 occurs. Generally, the data transfer rate by the bus format (for example, SATA or SAS) of the host 110 is much faster than the transfer rate of the channel of the SSD 120. That is, when the interface speed of the host 110 is much higher, performance degradation caused by the speed difference can be minimized by providing the buffer memory 122 with a large capacity.

버퍼 메모리(122)는 대용량의 보조 기억 장치로 사용되는 SSD(120)에서 충분한 버퍼링을 제공하기 위해 동기식 DRAM(Synchronous DRAM)으로 제공될 수 있다. 하지만, 버퍼 메모리(122)가 여기의 개시에 국한되지 않음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. The buffer memory 122 may be provided to a synchronous DRAM (DRAM) in order to provide sufficient buffering in the SSD 120 used as a large capacity auxiliary storage device. However, it will be apparent to those skilled in the art that the buffer memory 122 is not limited to the disclosure herein.

메모리 장치들(123, 124, 125)은 SSD(120)의 저장 매체로서 제공된다. 예를 들면, 메모리 장치들(123, 124, 125)은 대용량의 저장 능력을 가지는 낸드 플래시 메모리(NAND-type Flash memory)로 제공될 수 있다. 메모리 장치들(123, 124, 125) 중 일부 또는 전부가 휘발성인 DRAM이나 SRAM으로도 구성될 수 있음은 물론이다. The memory devices 123, 124, 125 are provided as the storage medium of the SSD 120. For example, the memory devices 123, 124, and 125 may be provided in a NAND-type Flash memory having a large storage capacity. Of course, some or all of the memory devices 123, 124, and 125 may also be configured as volatile DRAMs or SRAMs.

각각의 메모리 장치들(123, 124, 125)은 채널 단위로 SSD 컨트롤러(121)와 연결된다. 하나의 채널에는 복수의 메모리 장치들이 연결되며, 이들 메모리 장치들은 각각 동일한 데이터 버스에 연결된다. 저장 매체로서 메모리 장치들은 플래시 메모리 장치들이 예로 설명될 것이다. 그러나, 메모리 장치들은 또 다른 불휘발성 메모리 장치들로 구성될 수 있다. 예를 들면, 저장 매체로서 PRAM, MRAM, ReRAM, FRAM, NOR 플래시 메모리 등이 사용될 수 있다. Each of the memory devices 123, 124, and 125 is connected to the SSD controller 121 on a channel-by-channel basis. A plurality of memory devices are connected to one channel, and each of these memory devices is connected to the same data bus. Memory devices as storage media will be exemplified by flash memory devices. However, the memory devices may be configured with other non-volatile memory devices. For example, PRAM, MRAM, ReRAM, FRAM, NOR flash memory and the like can be used as the storage medium.

이상에서 설명된 특징들에 따르면, 본 발명의 정보 처리 시스템(100)은 바이오스(111)의 설정 정보에 따라 SSD(120)의 구동 전력 모드(P_mode)가 선택될 수 있다. 따라서, 바이오스(111)의 설정에 따라 SSD(120)가 소모하는 전력의 크기를 조정할 수 있다. 이것은, 성능보다 전력 관리가 우선되는 상황에서 정보 처리 시스템(100)의 소모 전력을 바이오스(111) 설정을 통해서 용이하게 변경할 수 있음을 의미한다. According to the features described above, the information processing system 100 of the present invention can select the driving power mode (P_mode) of the SSD 120 according to the setting information of the BIOS 111. [ Therefore, the size of the power consumed by the SSD 120 can be adjusted according to the setting of the BIOS 111. This means that the power consumption of the information processing system 100 can be easily changed through the setting of the BIOS 111 in a situation where the power management is preferred over the performance.

도 2는 도 1의 SSD 컨트롤러(121)의 구성들을 보여주는 블록도이다. 도 2를 참조하면, 본 발명의 SSD 컨트롤러(121)는 중앙 처리 장치(210), 호스트 인터페이스(220), 버퍼 매니저(230) 및 플래시 인터페이스(240)를 포함한다. 2 is a block diagram showing the configurations of the SSD controller 121 of FIG. Referring to FIG. 2, the SSD controller 121 of the present invention includes a central processing unit 210, a host interface 220, a buffer manager 230, and a flash interface 240.

중앙 처리 장치(210)는 호스트(110, 도 1 참조)로부터 전달되는 벤더 특정 명령어(VS_CMD)를 디코딩한다. 중앙 처리 장치(210)는 벤더 특정 명령어(VS_CMD)에 대응하는 구동 조건으로 환경을 설정한다. 중앙 처리 장치(210)는 호스트 인터페이스(220)나 플래시 인터페이스(240) 내의 제어 레지스터들(미도시됨)의 값들을 이용하여 임의의 명령을 발생한다. 또는, 중앙 처리 장치(210)는 읽기/쓰기 동작에 필요한 다양한 제어 정보를 호스트(110) 및 플래시 인터페이스(240)의 레지스터들에 전달한다. 예를 들면, 외부에서 벤더 특정 명령어(VS_CMD)가 입력되면 호스트 인터페이스(220)의 레지스터(미도시됨)에 저장된다. 호스트 인터페이스(220)는 저장된 명령에 따라 중앙 처리 장치(210)에 읽기/쓰기 명령이 입력되었음을 알려준다. 이러한 동작은 중앙 처리 장치(210)와 플래시 인터페이스(240) 사이에서도 발생한다. 중앙 처리 장치(210)는 SSD(120)를 구동하기 위한 펌웨어에 따라서 각각의 구성들을 제어한다.The central processing unit 210 decodes the vendor specific instruction (VS_CMD) transmitted from the host 110 (see FIG. 1). The central processing unit 210 sets the environment to a drive condition corresponding to the vendor specific instruction (VS_CMD). The central processing unit 210 generates arbitrary commands using the values of the control registers (not shown) in the host interface 220 or the flash interface 240. Alternatively, the central processing unit 210 transfers various control information necessary for the read / write operation to the registers of the host 110 and the flash interface 240. [ For example, when a vendor specific instruction (VS_CMD) is inputted from the outside, it is stored in a register (not shown) of the host interface 220. The host interface 220 informs the central processing unit 210 that a read / write command has been input according to the stored command. This operation also occurs between the central processing unit 210 and the flash interface 240. The central processing unit 210 controls the respective components according to the firmware for driving the SSD 120.

호스트 인터페이스(220)는 호스트(Host)와 SSD(120)와의 물리적 연결을 제공한다. 즉, 호스트 인터페이스(220)는 호스트의 버스 포맷(Bus format)에 대응하여 SSD(120)와의 인터페이싱을 제공한다. 호스트(Host)의 버스 포맷으로 USB(Universal Serial Bus), SCSI(Small Computer System Interface), PCI express, ATA, PATA(Parallel ATA), SATA(Serial ATA), SAS(Serial Attached SCSI) 등으로 구성될 수 있다. The host interface 220 provides a physical connection between the host and the SSD 120. That is, the host interface 220 provides interfacing with the SSD 120 in correspondence with the host bus format. The bus format of the host is composed of USB (Universal Serial Bus), SCSI (Small Computer System Interface), PCI express, ATA, PATA (Parallel ATA), SATA (Serial ATA) .

또한, 호스트 인터페이스(220)는 호스트(Host)가 SSD(120)를 하드 디스크 드라이브(HDD)로 인식하도록 지원하는 디스크 에뮬레이션(Disk Emulation) 기능을 지원할 수 있다. 예를 들면, 삭제 연산을 숨기기 위한 플래시 변환 계층(Flash Translation Layer: FTL)과 같은 기능을 제공한다. The host interface 220 may support a disk emulation function that allows a host to recognize the SSD 120 as a hard disk drive (HDD). For example, it provides functions such as a Flash Translation Layer (FTL) to hide deletion operations.

버퍼 매니저(230)는 버퍼 메모리(122, 도 1 참조)의 읽기 및 쓰기 동작들을 제어한다. 예를 들면, 버퍼 매니저(230)는 쓰기 데이터(Write data)나 읽기 데이터(Read data)를 버퍼 메모리(122)에 일시 저장한다. 버퍼 매니저(230)는 중앙 처리 장치(210)의 제어에 따라 버퍼 메모리(122)의 구동 클록의 주파수를 조정할 수 있다. 즉, 대용량의 버퍼링을 제공하기 위해 탑재되는 동기식 디램(SDRAM)과 같은 휘발성 메모리의 소모 전력은 클록 주파수에 크게 의존한다. 따라서, 버퍼 매니저(230)는 성능이 우선시되는 모드에서는 최대 주파수의 구동 클록으로, 절전이 우선시되는 모드에서는 그보다 낮은 주파수의 구동 클록으로 동작하도록 버퍼 메모리(122)를 제어할 수 있다.The buffer manager 230 controls the read and write operations of the buffer memory 122 (see FIG. 1). For example, the buffer manager 230 temporarily stores write data and read data in the buffer memory 122. The buffer manager 230 may adjust the frequency of the driving clock of the buffer memory 122 under the control of the central processing unit 210. [ That is, the power consumption of volatile memory such as synchronous DRAM (SDRAM) mounted to provide a large amount of buffering depends largely on the clock frequency. Accordingly, the buffer manager 230 can control the buffer memory 122 to operate with a driving clock of a maximum frequency in a mode in which performance is prioritized and a driving clock in a frequency lower than that in a mode in which power saving is prioritized.

플래시 인터페이스(240)는 메모리 장치들(123, 124, 125)과 데이터를 주고받는다. 플래시 인터페이스(240)는 버퍼 메모리(120)로부터 전달되는 데이터를 각각의 채널들(CH.1, CH.2,…, CHn)로 스캐터링(Scattering)한다. 그리고, 채널을 통하여 제공되는 불휘발성 메모리들(123, 124, 125)로부터 읽혀진 데이터는 플래시 인터페이스(240)에 의해서 취합된다. 취합된 데이터는 이후 버퍼 메모리(122)에 저장될 것이다. The flash interface 240 exchanges data with the memory devices 123, 124, and 125. The flash interface 240 scatters the data transferred from the buffer memory 120 to each of the channels CH.1, CH.2, ..., CHn. Data read from the non-volatile memories 123, 124, and 125 provided through the channel is collected by the flash interface 240. [ The collected data will then be stored in the buffer memory 122.

플래시 인터페이스(240)는 중앙 처리 장치(210)의 제어에 따라 메모리 장치들(123, 124, 125)에 대한 채널 대역폭/인터리빙 방식 또는 채널의 주파수를 조정한다. 중앙 처리 장치(210)는 벤더 특정 명령어(VS_CMD)의 디코딩 결과(구동 전력 모드, P_mode)에 대응하는 동작 파라미터들로 플래시 인터페이스(240)를 설정할 것 이다. 그러면, 각각의 채널들(CH.1, CH.2,…, CHn) 및 채널들 각각에 연결되는 메모리 장치들의 웨이 인터리빙의 수가 조정된다.The flash interface 240 adjusts the channel bandwidth / interleaving scheme or the frequency of the channel for the memory devices 123, 124, 125 under the control of the central processing unit 210. [ The central processing unit 210 will set the flash interface 240 to operation parameters corresponding to the decoding result (drive power mode, P_mode) of the vendor specific instruction (VS_CMD). Then, the number of way interleaving of memory devices connected to each of the channels (CH.1, CH.2, ..., CHn) and channels is adjusted.

만일, 구동 전력 모드(P_mode)가 최대 성능 모드(또는 최대 전력 모드)이면, 모든 채널들이 활성화되고, 채널들 각각의 웨이 인터리빙 수는 최대가 될 것이다. 또는, 구동 전력 모드(P_mode)에 따라 채널들 중 일부만이 활성화되도록 그리고 활성화된 채널의 인터리빙 크기의 수도 제한될 수 있다. 즉, 플래시 인터페이스(240)는 구동 전력 모드(P_mode)에 대응하는 동작 파라미터들로 설정된 상태에서 메모리 장치들을 액세스한다. If the driving power mode (P_mode) is the maximum performance mode (or maximum power mode), all channels are active and the number of ways interleaving of each channel will be maximum. Alternatively, depending on the driving power mode (P_mode), only a part of the channels may be activated and the number of interleaving sizes of the activated channels may be limited. That is, the flash interface 240 accesses the memory devices with the operating parameters corresponding to the driving power mode (P_mode) set.

이러한 SSD 컨트롤러(121)의 특징에 따라, 정보 처리 시스템(100)의 전원(예를 들면, 배터리)의 잔류 전력량을 가장 효율적으로 사용할 수 있다. 여기서, 성능과 소모 전력은 용어의 차이가 있으나, 성능이 높아지면 소모 전력이 증가한다. 따라서, 이들 용어들을 구분하지 않고 사용하기로 한다.According to the characteristics of the SSD controller 121, the residual power amount of the power source (e.g., battery) of the information processing system 100 can be used most efficiently. Here, there is a difference in terms of the performance and the consumed power, but the power consumption increases as the performance increases. Therefore, these terms are used without discrimination.

도 3은 상술한 도 1의 플래시 인터페이스(240)에 의해서 제어되는 메모리 장치들과 채널 구성을 보여주는 블록도이다. 도 3을 참조하면, 플래시 인터페이스(240)는 복수의 채널(CH.1, CH.2,…, CH.n)을 통해서 메모리 장치들과 연결된다. FIG. 3 is a block diagram showing the memory devices and channel configuration controlled by the flash interface 240 of FIG. 1 described above. Referring to FIG. 3, the flash interface 240 is connected to memory devices through a plurality of channels (CH.1, CH.2, ..., CH.n).

제 1 채널(CH.1)에는 m개(m은 자연수)의 메모리 장치들(123: MEM_11, MEM_12, MEM_1m) 각각의 입출력 포트(예를 들면, 8비트 I/O 포트)가 연결된다. 제 2 채널(CH.2) 및 제 3 채널(CH.3) 각각에도 동일한 방식으로 복수의 메모리 장치들(124, 125)이 입출력 포트들을 공유한다. 호스트(110)로부터 벤더 특정 명령어(VS_CMD)가 입력되면, 중앙 처리 장치(210, 도 2 참조)는 이를 디코딩하여 플래 시 인터페이스(240)의 레지스터(241)에 저장한다. 레지스터(241)에 저장된 정보에 따라 복수의 채널들 중 동시에 활성화되는 채널의 수가 결정된다. 그리고 레지스터(241)에 저장된 정보에 따라 각각의 채널들에서 웨이 인터리빙을 위해 동시에 선택되는 메모리 장치의 수(Way)가 결정된다. An input / output port (for example, an 8-bit I / O port) of m memory devices 123 (MEM_11, MEM_12, MEM_1m) is connected to the first channel CH.1 (m is a natural number). The plurality of memory devices 124 and 125 share the input / output ports in the same manner in the second channel (CH.2) and the third channel (CH.3), respectively. When the vendor specific instruction (VS_CMD) is input from the host 110, the central processing unit 210 (see FIG. 2) decodes it and stores it in the register 241 of the flash interface 240. The number of channels to be simultaneously activated among a plurality of channels is determined according to the information stored in the register 241. [ And the number of memory devices (Way) that are simultaneously selected for the way interleaving in each of the channels is determined according to the information stored in the register 241. [

그리고, 레지스터(241)에 저장된 정보는 메모리 장치들과 데이터를 교환하기 위한 클록 주파수 정보를 더 포함할 수 있다. 더불어, 저전력 소모를 구현하기 위한 추가적인 채널 설정이 이루어질 수 있다. 예를 들면, 복수의 채널들이 동시에 활성화되더라도, 각각의 채널을 통해서 데이터가 교환되는 시점을 달리하도록 구성될 수 있다. 즉, 채널 스큐(Channel Skew)를 갖도록 플래시 인터페이스(240)의 동작 조건이 설정될 수 있다. The information stored in the register 241 may further include clock frequency information for exchanging data with the memory devices. In addition, additional channel settings can be made to implement low power consumption. For example, even if a plurality of channels are activated at the same time, the time point at which data is exchanged through each channel may be configured to be different. That is, the operating condition of the flash interface 240 may be set to have a channel skew.

도 4a, 도 4b는 벤더 특정 명령어(VS_CMD)의 디코딩 결과의 예시를 간략히 보여주는 표들이다. 벤더 특정 명령어(VS_CMD)의 디코딩에 의해서 도출되는 구동 전력 모드(P_mode)에 따라 가변되는 SSD(120)의 동작 모드들이 나타나 있다. 벤더 특정 명령어(VS_CMD)에 포함되는 구동 전력 모드(P_mode)에 따라서 다양한 동작 모드로 SSD(120)가 동작하게 될 것이다. Figures 4A and 4B are tables that briefly illustrate examples of decoding results of a vendor specific instruction (VS_CMD). The operating modes of the SSD 120 varying according to the driving power mode (P_mode) derived by decoding the vendor specific command (VS_CMD) are shown. The SSD 120 will operate in various operation modes according to the drive power mode (P_mode) included in the vendor specific instruction (VS_CMD).

이하에서는, 본 발명의 기술적 특징을 설명하기 위하여 본 발명의 플래시 인터페이스(240)에는 8개의 채널을 구성하고 있으며, 각각의 채널들에 의해서 8개의 메모리 장치들의 입출력 포트가 공유되는 것으로 가정한다. 즉, 플래시 인터페이스(240)는 8채널 대역폭/8웨이 인터리빙(8CH/8Way) 방식으로 메모리 장치들을 제어하는 것으로 가정한다. 여기서, 웨이(Way)는 하나의 채널에서 인터리빙 액세스의 단위가 되는 메모리 장치의 수를 의미한다. 즉, 8웨이 인터리빙 액세스라면, 하나의 채널을 공유하는 8개의 메모리 장치들이 인터리빙 방식으로 프로그램되거나 독출될 수 있음을 의미한다. Hereinafter, to describe the technical features of the present invention, it is assumed that the flash interface 240 of the present invention comprises eight channels, and the input / output ports of eight memory devices are shared by the respective channels. That is, it is assumed that the flash interface 240 controls the memory devices in an 8-channel bandwidth / 8-way interleaving (8CH / 8Way) manner. Here, Way means the number of memory devices that are the units of interleaving access in one channel. That is, if it is an 8-way interleaving access, it means that eight memory devices sharing one channel can be programmed or read out in an interleaving manner.

도 4a를 참조하면, 구동 전력 모드(P_mode)는 3-비트 크기를 갖는 것으로 가정하기로 한다. 호스트(110)로부터 전달된 벤더 특정 명령어(VS_CMD)의 디코딩 결과 즉, 구동 전력 모드(P_mode)가 '000'인 경우, SSD(120)는 8개의 채널과 8개의 웨이(Way)를 활성화한다. 이 경우, 최대 성능을 제공하기 위한 모드(Full power mode)로 메모리 장치들이 액세스될 것이다. 따라서, SSD(120)의 순간 소모 전력은 최대값까지 이를 수 있다.Referring to FIG. 4A, it is assumed that the driving power mode (P_mode) has a 3-bit size. When the decoding result of the vendor specific instruction (VS_CMD) transmitted from the host 110, that is, the driving power mode (P_mode) is '000', the SSD 120 activates 8 channels and 8 ways. In this case, the memory devices will be accessed in a full power mode. Accordingly, the instantaneous power consumption of the SSD 120 can reach a maximum value.

구동 전력 모드(P_mode)가 '001'이라면, SSD(120)는 4개의 채널과 4개의 웨이(Way)를 활성화하여 반전력 모드(Half power mode)로 메모리 장치들을 관리한다. 구동 전력 모드(P_mode)가 '010'이라면, SSD(120)는 2개의 채널과 2개의 웨이(Way)를 활성화하여 1/4 전력 모드(Quarter power mode)로 메모리 장치들을 관리한다. 구동 전력 모드(P_mode)가 '011'이라면, SSD(120)는 1개의 채널과 1개의 웨이(Way)를 활성화하여 최소 전력 모드(Minimum power mode)로 메모리 장치들을 관리한다. If the drive power mode (P_mode) is '001', the SSD 120 activates four channels and four ways to manage memory devices in a half power mode. If the drive power mode (P_mode) is '010', the SSD 120 activates two channels and two ways to manage memory devices in a quarter power mode. If the drive power mode (P_mode) is '011', the SSD 120 activates one channel and one way to manage memory devices in a minimum power mode.

구동 전력 모드(P_mode) 비트들 '100', '101', '110' 및 '111'은 추가적인 특징을 제공하기 위한 예비 비트(Reserved)들로 사용될 수 있다. 그러나, 이들 비트들도 추가적인 구동 전력 모드를 지시하도록 구성될 수 있음은 물론이다. 여기서, 4가지의 구동 전력 모드(P_mode)를 갖는 것으로 설명되었으나, 구동 전력 모드는 다양한 단계들로 더 세분화되거나 더 간략히 설정될 수 있다. The driving power mode (P_mode) bits '100', '101', '110', and '111' may be used as reserved bits to provide additional features. However, it goes without saying that these bits may also be configured to indicate additional drive power modes. Here, although it has been described as having four driving power modes (P_mode), the driving power mode can be further subdivided into various stages or more simply set.

도 4b는 도 4a의 구동 전력 모드(P_mode)보다 좀더 세분화된 구동 전력 모드(P_mode)의 실시예를 보여주는 표이다. 도 4b는 구동 전력 모드(P_mode)에 SSD(120)의 구동 클록(CLK) 주파수의 선택 정보를 더 포함하는 실시예를 보여준다. 도 4b를 참조하면, 구동 전력 모드(P_mode)의 값에 따라 SSD(120)의 내부에서 제공되는 구동 클록(CLK)의 주파수들(fb, fc, fi)이 가변될 수 있다. 여기서, 구동 클록(CLK)은 SSD(120)에 포함되는 버퍼 메모리(122)의 동작 클록 신호일 수 있다. 또는, 구동 클록(CLK)은 SSD 컨트롤러(121) 내부의 중앙 처리 장치(210)의 동작 클록일 수 있다. 혹은 구동 클록(CLK)은 플래시 인터페이스(240)의 동작 클록일 수 있다. 예를 들면, 구동 클록(CLK)은 플래시 인터페이스(240)에 제공되어 메모리 장치에 제공되는 쓰기 인에이블 신호(/WE)나 읽기 인에이블 신호(/OE)로 제공될 수 있다. FIG. 4B is a table showing an embodiment of a drive power mode (P_mode) that is more subdivided than the drive power mode (P_mode) of FIG. 4A. 4B shows an embodiment further including selection information of the driving clock (CLK) frequency of the SSD 120 in the driving power mode (P_mode). Referring to FIG. 4B, the frequencies f b , f c , and f i of the driving clock CLK provided in the SSD 120 may be varied according to the value of the driving power mode P_mode. Here, the driving clock CLK may be an operation clock signal of the buffer memory 122 included in the SSD 120. [ Alternatively, the drive clock (CLK) may be an operation clock of the central processing unit (210) inside the SSD controller (121). Or the operation clock CLK may be the operation clock of the flash interface 240. [ For example, the drive clock CLK may be provided to the flash interface 240 and provided as a write enable signal / WE or a read enable signal / OE provided to the memory device.

만일, 3-비트의 구동 전력 모드(P_mode) 중에서 MSB 값이 '0'인 경우에는 디폴트 값에 해당하는 주파수(fb, fc, fi)의 구동 클록들(CLK)이 제공된다. 그리고, 3-비트의 구동 전력 모드(P_mode) 중에서 MSB 값을 제외한 나머지 2-비트의 값에 따라서, 동시에 활성화되는 채널/웨이가 설정된다. 즉, 구동 전력 모드(P_mode)의 값이 '000'인 경우에는 주파수 조건 (fb, fc, fi)에서 8채널/8웨이(PM0: Full power mode) 방식으로 메모리 장치들이 액세스된다. 구동 전력 모드(P_mode)의 값이 '001'인 경우에는 주파수 조건 (fb, fc, fi)에서 4채널/4웨이(PM1) 방식으로 메모리 장치들이 액세스된다. 구동 전력 모드(P_mode)의 값이 '010'인 경우에는 주파수 조 건(fb, fc, fi)에서 2채널/2웨이(PM2) 방식으로 메모리 장치들이 액세스된다. 구동 전력 모드(P_mode)의 값이 '011'인 경우에는 주파수 조건 (fb, fc, fi)에서 1채널/1웨이(PM2) 방식으로 메모리 장치들이 액세스된다. If, it is the case in the three-bit drive power mode (P_mode) the MSB value of "0" is provided with the driving clocks (CLK) corresponding to the default value of the frequency (f b, f c, f i). A channel / way to be simultaneously activated is set according to the value of the remaining 2-bits excluding the MSB among the 3-bit driving power mode (P_mode). That is, when the value of the drive power mode (P_mode) is "000", the frequency terms (f b, f c, f i) 8 channel / 8-way from: a (PM0 Full power mode) approach is to access the memory device. If the value of the drive power mode (P_mode) of '001' is that the memory device is accessed by four-channel / 4-way (PM1) manner in the frequency terms (f b, f c, f i). If the value of the drive power mode (P_mode) is "010", the frequency is that the memory device access condition (f b, f c, f i) 2 -channel / two-way (PM2) in the method. If the value of the drive power mode (P_mode) of '011' is that the memory device is accessed by one channel / one-way (PM2) manner in the frequency terms (f b, f c, f i).

반면, 3-비트의 구동 전력 모드(P_mode) 중에서 MSB 값이 '1'인 경우에는 구동 클록(CLK)은 주파수 조건 (fb/2, fc/2, fi/2)로 제공된다. 구동 전력 모드(P_mode)의 값이 '100'인 경우에는 주파수 조건 (fb/2, fc/2, fi/2)에서 8채널/8웨이(PM0′) 방식으로 메모리 장치들이 액세스된다. 구동 전력 모드(P_mode)의 값이 '101'인 경우에는 주파수 조건 (fb/2, fc/2, fi/2)에서 4채널/4웨이(PM1′) 방식으로 메모리 장치들이 액세스된다. 구동 전력 모드(P_mode)의 값이 '110'인 경우에는 주파수 조건 (fb/2, fc/2, fi/2)에서 2채널/2웨이(PM2′) 방식으로 메모리 장치들이 액세스된다. 구동 전력 모드(P_mode)의 값이 '111'인 경우에는 최소 전력 모드로 SSD(120)가 구동된다. 즉, 주파수 조건 (fb/2, fc/2, fi/2)에서 1채널/1웨이(PM3′: Minimum power mode) 방식으로 메모리 장치들이 액세스된다.On the other hand, when the MSB value is '1' in the 3-bit driving power mode (P_mode), the driving clock CLK is provided in the frequency condition (f b / 2, f c / 2, f i / 2). If the value of the drive power mode (P_mode) is "100", the frequency terms (f b / 2, f c / 2, f i / 2) by 8 channel / 8-way (PM0 ') scheme in the memory device are accessed . If the value of the drive power mode (P_mode) is "101", the frequency terms (f b / 2, f c / 2, f i / 2) with 4-channel / 4-way (PM1 ') scheme in the memory device are accessed . If the value of the drive power mode (P_mode) is "110", the frequency terms (f b / 2, f c / 2, f i / 2) in a two-channel / two-way (PM2 ') scheme in the memory device are accessed . When the value of the driving power mode (P_mode) is '111', the SSD 120 is driven in the minimum power mode. That is, the terms frequency (f b / 2, f c / 2, f i / 2) 1 channel / one-way (PM3 ': Minimum power mode) in such a way that the memory device is accessed.

이상에서 구동 전력 모드(P_mode)를 최대 전력 모드(Full power mode), 반적력 모드(Half power mode), 1/4 전력 모드(Quarter power mode) 및 최소 전력 모드(Minimum power mode)로 구분하였다. 그러나, 본 발명은 이러한 구분이나 용어들에 국한되지 않는다. 또한, 채널/웨이 설정이 8채널/8웨이, 4채널/4웨이, 2채널/2웨이 및 1채널/1웨이를 가지는 것으로 예시되었으나, 채널/웨이의 다양한 변경이 가능할 것이다. In the above, the driving power mode (P_mode) is classified into a full power mode, a half power mode, a quarter power mode, and a minimum power mode. However, the present invention is not limited to these definitions or terms. Further, although the channel / way setting is exemplified as having 8 channels / 8 ways, 4 channels / 4 ways, 2 channels / 2 ways and 1 channel / 1 way, various changes of channels / ways will be possible.

도 5a, 5b 및 5c는 벤더 특정 명령어(VS_CMD)를 통해서 제공되는 구동 전력 모드(P_mode)의 값에 따라 하나의 채널에 연결되는 메모리 장치들의 인터리빙 액세스 절차를 보여주는 타이밍도들이다. 도 5a는 8웨이 인터리빙(8Way Interleaving)을, 도 5b는 4웨이 인터리빙(4 Way Interleaving)을, 도 5c는 2웨이 인터리빙(2 Way Interleaving) 방식의 액세스 방법을 보여준다.Figures 5A, 5B, and 5C are timing diagrams illustrating interleaving access procedures of memory devices connected to one channel in accordance with the value of a driving power mode (P_mode) provided through a vendor specific instruction (VS_CMD). FIG. 5A shows 8-way interleaving, FIG. 5B shows 4-way interleaving, and FIG. 5C shows a 2-way interleaving access method.

도 5a를 참조하면, 하나의 채널(예를 들면, CH.1)에는 입출력 포트를 공유하는 8개의 메모리 장치들(MEM_11, MEM_12,…, MEM_18)이 연결되어 있다. 그리고, SSD(120)가 호스트(110)로부터 8웨이 인터리빙 방식에 따라 쓰기 동작을 수행하도록 구동 전력 모드(P_mode)를 제공받았다고 가정하자. 하나의 메모리 장치(MEM_11)에 데이터를 쓰기 위해 버퍼 메모리(122)로부터 메모리 장치(MEM_11)로 DMA(Direct Memory Access) 동작에 따라 쓰기 데이터가 제공될 수 있다. Referring to FIG. 5A, eight memory devices MEM_11, MEM_12,..., MEM_18 are connected to one channel (for example, CH.1) to share an input / output port. Assume that the SSD 120 is provided with a driving power mode (P_mode) from the host 110 so as to perform a writing operation according to an 8-way interleaving scheme. Write data may be provided according to a direct memory access (DMA) operation from the buffer memory 122 to the memory device MEM_11 in order to write data to one memory device MEM_11.

DMA 동작에 따라 쓰기 데이터(예를 들면, 4K Byte 또는 16K Byte)를 하나의 메모리 장치(MEM_11)에 전송하기 위해서는 (tDMA)만큼의 시간이 소요된다. 그리고 메모리 장치(MEM_11)에 제공된 쓰기 데이터를 메모리 장치(MEM_11)의 셀 어레이에 프로그램하기 위해서 (tPROG)만큼의 시간이 소요된다. 제공된 쓰기 데이터가 셀 어레이에 모두 프로그램되는 시간 동안(tPROG), 메모리 장치(MEM_11)의 레디/비지 핀(RnB)의 레벨은 논리 'L'를 유지한다. 그리고 제공된 쓰기 데이터가 셀 어레이에 모두 프로그램된 이후에 레디/비지 핀(RnB)은 논리 'H'로 전환된다.It takes time (tDMA) to transfer the write data (for example, 4K bytes or 16K bytes) to one memory device MEM_11 according to the DMA operation. And it takes time (tPROG) to program the write data provided to the memory device MEM_11 into the cell array of the memory device MEM_11. During the time that the provided write data is all programmed into the cell array (tPROG), the level of the ready / busy pin RnB of the memory device MEM_11 remains at logic 'L'. After the provided write data is all programmed into the cell array, the ready / busy pin RnB is switched to logic 'H'.

인터리빙(Interleaving) 방식은 하나의 메모리 장치(MEM_11)에 대한 DMA 동 작(361)이 완료되는 즉시 다른 하나의 메모리 장치(MEM_12)에 대한 DMA 동작(362)을 개시하는 것을 의미한다. 즉, 하나의 메모리 장치가 제공받은 데이터를 메모리 셀에 프로그램하는 시간(tPROG)은 인터리빙 방식의 액세스를 통해서 숨길 수 있음을 의미한다. 8웨이 인터리빙(8Way Interleaving)은 채널(CH.1)을 공유하는 8개의 메모리 장치들에 대해 인터리빙 방식의 액세스를 적용하는 것을 의미한다. 하나의 메모리 장치에 대한 DMA 동작이 끝나는 즉시 다른 하나의 메모리 장치에 대한 DMA 동작을 연속적으로 이어가는 SSD(120)의 동작 모드이다. 순차적인 DMA 동작(361→362→363→364→365→366→367→368)을 통해서 채널(CH.1)을 공유하는 메모리 장치들에 대한 최대의 액세스를 제공할 수 있다. Interleaving means initiating a DMA operation 362 on another memory device MEM_12 as soon as the DMA operation 361 on one memory device MEM_11 is completed. That is, the time tPROG for programming the data provided by one memory device into the memory cell means that it can be hidden through the access of the interleaving method. 8-way interleaving refers to applying interleaved access to eight memory devices sharing channel (CH.1). And is an operation mode of the SSD 120 that continuously performs the DMA operation for the other memory device as soon as the DMA operation for one memory device is completed. It is possible to provide maximum access to memory devices sharing channel CH.1 through sequential DMA operations (361? 362? 363? 364? 365? 366? 367? 368).

하지만, 8개의 메모리 장치들(MEM_11~MEM_18)에 대한 최대의 액세스를 제공하는 경우, 각각의 메모리 장치들의 프로그램 시간(tPROG)들이 중첩될 수 있다. 프로그램 동작에는 상대적으로 높은 전력이 소모된다. 따라서, 빗금으로 도시된 시간(tPmax)에서 최대 성능을 나타낼 수 있지만, 메모리 장치들(MEM_11~MEM_18)에 의한 순간 소모 전력도 최대이다. 그리고 모든 채널들이 활성화되고, 동시에 채널들 각각에 포함되는 메모리 장치들의 프로그램 시간(tPROG)이 중첩되는 경우, SSD(120)의 순간 소모 전력은 최대값을 나타낼 것이다. 따라서, 전원의 잔류 전력량이 부족한 경우에는 정보 처리 시스템(100)의 전원 오류를 유발시킬 수 있다.However, when providing the maximum access to the eight memory devices MEM_11 to MEM_18, the program times tPROG of the respective memory devices can be overlapped. A relatively high power is consumed in the program operation. Therefore, although the maximum performance can be shown at the time tPmax shown by the hatched portion, the instantaneous power consumption by the memory devices MEM_11 to MEM_18 is also the maximum. When all channels are activated and simultaneously the programming time tPROG of the memory devices included in each of the channels is overlapped, the instantaneous power consumption of the SSD 120 will exhibit the maximum value. Therefore, when the residual power amount of the power source is insufficient, it is possible to cause a power failure of the information processing system 100.

도 5b는 쓰기 동작시 4웨이 인터리빙(4 Way Interleaving)을 적용하는 실시예를 보여주는 타이밍도이다. 도 5b를 참조하면, 채널(CH.1)을 공유하는 4개의 메모리 장치들(MEM_11~MEM_14)이 하나의 인터리빙 단위로 구분된다. 그리고 나머지 4 개의 메모리 장치들(MEM_15~MEM_18)이 다른 하나의 인터리빙 단위로 구분된다. 플래시 인터페이스(240)의 제어에 따라 각각의 4웨이 인터리빙(4 Way Interleaving)은 어느 하나가 종료되는 경우에 다음 인터리빙 동작이 시작될 것이다. 따라서, 4웨이 인터리빙의 경우에는 8웨이 인터리빙에 비하여 순간적으로 소모되는 최대 전력이 상대적으로 감소한다. 5B is a timing diagram showing an embodiment in which 4-way interleaving is applied in a write operation. Referring to FIG. 5B, four memory devices MEM_11 to MEM_14 sharing the channel CH.1 are divided into one interleaving unit. And the remaining four memory devices MEM_15 to MEM_18 are divided into another interleaving unit. Under the control of the flash interface 240, each of the four-way interleaving will start the next interleaving operation when either one ends. Therefore, in case of 4-way interleaving, instantaneous maximum power consumption is relatively reduced as compared with 8-way interleaving.

도 5c는 쓰기 동작시 2웨이 인터리빙(2 Way Interleaving)을 적용하는 실시예를 보여주는 타이밍도이다. 도 5c를 참조하면, 채널(CH.1)을 공유하는 2개의 메모리 장치들(MEM_11~MEM_12)이 하나의 인터리빙 단위로 구분된다. 2개의 메모리 장치들(MEM_13~MEM_14)이 다른 하나의 인터리빙 단위로 구분된다. 2개의 메모리 장치들(MEM_15~MEM_16)이 또 다른 하나의 인터리빙 단위로 구분된다. 2개의 메모리 장치들(MEM_17~MEM_18)이 마지막 하나의 인터리빙 단위로 구분된다. 각각의 인터리빙 단위들은 어느 하나의 인터리빙 단위의 데이터 전송 및 프로그램이 완료된 이후에 시작되도록 플래시 인터페이스(240)에 의해서 제어된다. 5C is a timing diagram showing an embodiment in which 2-way interleaving is applied in a write operation. Referring to FIG. 5C, two memory devices MEM_11 to MEM_12 sharing a channel CH.1 are divided into one interleaving unit. The two memory devices MEM_13 to MEM_14 are divided into another interleaving unit. The two memory devices MEM_15 to MEM_16 are separated into another interleaving unit. The two memory devices MEM_17 to MEM_18 are divided into the last one interleaving unit. Each of the interleaving units is controlled by the flash interface 240 so that the data transmission and the programming of any one interleaving unit are started.

이상에서 도시되지는 않았지만, 선택된 채널에서 인터리빙 방식을 사용하지 않도록 벤더 특정 명령어(VS_CMD)가 제공될 수도 있다. 즉, 선택된 채널을 공유하는 메모리 장치들 각각의 DAM 동작 시간(tDAM) 및 프로그램 시간(tPROG)은 상호 중첩되지 않도록 설정될 수 있다. 이 경우, 쓰기 동작시에 순간 소모 전력은 최소가 될 것이나, 쓰기 동작에 소요되는 시간은 최대가 될 것이다. Although not shown in the above, a vendor specific instruction (VS_CMD) may be provided to not use the interleaving scheme in the selected channel. That is, the DAM operation time (tDAM) and the program time (tPROG) of each of the memory devices sharing the selected channel can be set so as not to overlap each other. In this case, the instantaneous power consumption at the time of the write operation will be the minimum, but the time required for the write operation will be the maximum.

도 6a 및 6b는 본 발명의 다른 실시예들을 보여주는 타이밍도들이다. 도 6a는 벤더 특정 명령어(VS_CMD)에 따라 채널의 클록 주파수가 가변되는 실시예를 보 여준다. 도 6b는 벤더 특정 명령어(VS_CMD)에 따라 채널들 각각에 스큐(Skew)를 제공하는 실시예를 보여준다. 6A and 6B are timing diagrams illustrating other embodiments of the present invention. FIG. 6A shows an embodiment in which the clock frequency of a channel is variable according to a vendor specific instruction (VS_CMD). FIG. 6B shows an embodiment for providing skew to each of the channels in accordance with a vendor specific instruction (VS_CMD).

도 6a를 참조하면, 채널의 데이터 전송 클록은 플래시 인터페이스(240)에 의해서 채널로 제공된다. 즉, 플래시 인터페이스(240)에 제공된 클록 신호에 의해서 각각의 채널에 연결되는 메모리 장치들의 쓰기 인에이블 신호(/WE)나 출력 인에이블 신호(/OE)가 생성된다. 따라서, 플래시 인터페이스(240)에 제공되는 클록의 주파수는 메모리 장치들의 액세스 속도를 결정한다. 특히, 플래시 인터페이스(240)에 제공되는 클록의 주파수는 DMA 동작시에 각각의 메모리 장치에 로드되는 쓰기 데이터의 입력 속도를 결정한다.Referring to FIG. 6A, the data transfer clock of the channel is provided to the channel by the flash interface 240. That is, the write enable signal / WE or the output enable signal / OE of the memory devices connected to each channel is generated by the clock signal provided to the flash interface 240. Thus, the frequency of the clock provided to the flash interface 240 determines the access rate of the memory devices. In particular, the frequency of the clock provided to the flash interface 240 determines the input rate of write data loaded into each memory device during DMA operations.

디폴트 값에 대응하는 클록 주파수(fi)의 경우, DMA 동작에 의한 쓰기 데이터의 입력 시간은 DMA(391)에서 시간 구간(t0-t1)에 대응한다. 반면에, 클록 주파수(fi/2)가 제공되는 경우, DMA 동작에 의한 쓰기 데이터의 입력 시간은 DMA(394)에서 시간 구간(t0-t2)으로 약 2배 증가한다. 일반적으로 소모 전력은 클록의 주파수의 제곱에 비례하는 것으로 알려져 있다. 따라서, 구동 클록의 주파수를 가변하여 소모 전력의 감축이 가능하다.In the case of the clock frequency f i corresponding to the default value, the input time of the write data by the DMA operation corresponds to the time period (t0-t1) in the DMA 391. On the other hand, when the clock frequency (f i / 2) is provided, the input time of the write data by the DMA operation increases by about two times from the DMA 394 to the time period (t0-t2). In general, the power dissipation is known to be proportional to the square of the frequency of the clock. Therefore, it is possible to reduce the power consumption by varying the frequency of the driving clock.

상술한 도 6a에서 플래시 인터페이스(240)에 제공되는 클록 신호의 주파수에 대해서만 설명하였다. 하지만, 본 발명은 기술적 특징은 플래시 인터페이스(240)에 제공되는 클록 신호에만 국한되지는 않는다. 앞서 간략히 소개되었지만, 버퍼 메모리(122)의 구동 클록의 주파수를 가변할 수도 있다. 또는 SSD 컨트롤러(121)의 구 동 클록의 주파수(예를 들면, CPU 클록)를 가변하여 본 발명의 목적을 달성할 수 있을 것이다.Only the frequency of the clock signal provided to the flash interface 240 in FIG. 6A has been described. However, the present invention is not limited to the clock signal provided to the flash interface 240. Although briefly described above, the frequency of the driving clock of the buffer memory 122 may be varied. Or the frequency of the driving clock of the SSD controller 121 (for example, the CPU clock) may be varied to achieve the object of the present invention.

도 6b는 벤더 특정 명령어(VS_CMD)에 의해서 각 채널들이 스큐(Skew)를 갖도록 설정될 수 있음을 보여주는 타이밍도이다. 즉, 활성화된 채널들 각각에 대해서 DMA 동작을 개시하는 시점을 달리하도록 플래시 인터페이스(240)가 설정될 수 있다. 즉, 채널 (CH.1)에서 DMA 동작(397)이 개시되는 시점 (t0)과 채널 (CH.2)에서 DMA 동작(398)이 개시되는 시점(t1) 간에는 일정한 시간 간격(Channel skew)이 존재한다. 이러한 활성화된 채널들 간의 채널 스큐(Channel skew)는 채널 (CH.2)와 채널(CH.3)간에도 존재한다. 이러한 채널 스큐(Channel skew)를 제공함으로써, 채널 대역폭을 감소시키지 않더라도 메모리 장치들의 DMA 동작 시간(tDAM) 및 프로그램 시간(tPROG)의 중첩을 줄일 수 있다. 따라서, 순간 소모 전력이 급격히 증가하는 경우를 차단할 수 있다.6B is a timing diagram showing that each channel can be set to have a skew by a vendor specific instruction (VS_CMD). That is, the flash interface 240 may be set to change the timing at which the DMA operation is started for each of the activated channels. That is, there is a constant time interval (Channel skew) between the time t0 at which the DMA operation 397 starts on the channel CH.1 and the time t1 when the DMA operation 398 starts on the channel CH.2 exist. The channel skew between these activated channels is also present between the channel (CH.2) and the channel (CH.3). By providing such a channel skew, it is possible to reduce the overlap of the DMA operation time (tDAM) and the program time tPROG of the memory devices without reducing the channel bandwidth. Therefore, the case where the instantaneous power consumption is rapidly increased can be blocked.

도 7은 본 발명의 실시예에 따른 정보 처리 시스템(100)의 동작 절차를 보여주는 흐름도이다. 도 7을 참조하면, 본 발명의 정보 처리 시스템(100)은 바이오스(111, 도 1 참조)의 설정값을 참조하여 SSD(120)의 전력 모드를 조정하기 위한 벤더 특정 명령어(VS_CMD)를 발행한다. 벤더 특정 명령어(VS_CMD)에 응답하여 SSD(120)는 디코딩된 구동 전력 모드(P_mode)로 동작하기 위한 설정 동작을 수행한다. 좀더 상세히 설명하면 다음과 같다.FIG. 7 is a flowchart illustrating an operation procedure of the information processing system 100 according to the embodiment of the present invention. 7, the information processing system 100 of the present invention issues a vendor specific instruction (VS_CMD) for adjusting the power mode of the SSD 120 with reference to a setting value of the BIOS 111 (see FIG. 1) . In response to the vendor specific command (VS_CMD), the SSD 120 performs a setup operation to operate in the decoded drive power mode (P_mode). More detailed description is as follows.

부팅이나 리셋과 같은 상황에서는, 바이오스(111)에 의한 부팅 단계에서 운영 체제(OS)에 의한 부팅이 이루어지면, 정보 처리 시스템(100)은 바이오스(111) 설정 정보를 제공받는다. 특히, 본 발명의 실시예에서 설명된 바이오스(111)의 SSD 파워 모드 정보를 호스트(110)가 제공받는다(S110).In a situation such as booting or resetting, if the booting by the OS is performed at the booting step by the BIOS 111, the information processing system 100 is provided with the BIOS setting information. In particular, the host 110 receives the SSD power mode information of the BIOS 111 described in the embodiment of the present invention (S110).

호스트(110)는 바이오스(111)로부터 제공받은 파워 모드 정보를 참조하여 SSD(120)에 선택된 파워 모드 조건으로 설정을 변경하도록 벤더 특정 명령어(VS_CMD)를 전달한다(S120). 벤더 특정 명령어(VS_CMD)를 제공받은 SSD(120)는 벤더 특정 명령어(VS_CMD)를 디코딩하여 구동 전력 모드(P_mode)를 생성한다(S130). The host 110 transmits a vendor specific command (VS_CMD) to the SSD 120 in order to change the selected power mode condition to the power mode information provided from the BIOS 111 (S120). The SSD 120 receiving the vendor specific instruction VS_CMD decodes the vendor specific instruction VS_CMD to generate a driving power mode P_mode S130.

그러면, 구동 전력 모드(P_mode)에 따라 SSD 컨트롤러(121, 도 1 참조)는 SSD(120) 내부의 제반 동작 파라미터들을 조정하게 될 것이다(S140). 도 4a에 도시된 구동 전력 모드(P_mode)들이 적용된다면, 구동 전력 모드(P_mode) '000'이 제공되면 최대 전력 모드(Full power mode)로 SSD(120)가 설정되어야 할 것이다. SSD 컨트롤러(121)는 소모 전력의 고려없이 최대 성능(High performance)을 제공하기 위한 8채널/8웨이 방식으로 메모리 장치들이 액세스되도록 채널 대역폭/인터리빙 모드를 설정할 것이다(S150). Then, according to the driving power mode (P_mode), the SSD controller 121 (see FIG. 1) will adjust all the operating parameters in the SSD 120 (S140). If the driving power mode P_modes shown in FIG. 4A are applied, if the driving power mode P_mode '000' is provided, the SSD 120 must be set in the full power mode. The SSD controller 121 sets a channel bandwidth / interleaving mode so that the memory devices are accessed in an 8-channel / 8-way manner to provide a high performance without considering consumption power (S150).

구동 전력 모드(P_mode) '001'이 제공되면 반전력 모드(Half power mode)로 SSD(120)가 설정되어야 할 것이다. SSD 컨트롤러(121)는 반전력 모드에 대응하는 4채널 대역폭/4웨이 인터리빙 방식으로 메모리 장치들이 액세스되도록 채널 대역폭/인터리빙 모드를 설정할 것이다(S160). If the driving power mode (P_mode) '001' is provided, the SSD 120 should be set in the half power mode. The SSD controller 121 sets the channel bandwidth / interleaving mode so that the memory devices are accessed by the 4-channel bandwidth / 4-way interleaving scheme corresponding to the half power mode (S160).

구동 전력 모드(P_mode) '010'이 제공되면 1/4 전력 모드(Quarter power mode)로 SSD(120)가 설정되어야 할 것이다. SSD 컨트롤러(121)는 1/4 전력 모 드(Quarter power mode)에 대응하는 2채널 대역폭/2웨이 인터리빙 방식으로 메모리 장치들이 액세스되도록 채널 대역폭/인터리빙 모드를 설정할 것이다(S170). If the drive power mode (P_mode) '010' is provided, the SSD 120 should be set in a quarter power mode. The SSD controller 121 sets the channel bandwidth / interleaving mode so that the memory devices are accessed in a two-channel bandwidth / two-way interleaving mode corresponding to a quarter power mode (S170).

구동 전력 모드(P_mode) '011'이 제공되면 최소 전력 모드(Minimum power mode)로 SSD(120)가 설정되어야 할 것이다. SSD 컨트롤러(121)는 최소 전력 모드(Minimum power mode)에 대응하는 1채널 대역폭/ 비인터리빙 방식으로 메모리 장치들이 액세스되도록 채널 대역폭/인터리빙 모드를 설정할 것이다(S180). If the driving power mode (P_mode) '011' is provided, the SSD 120 should be set to the minimum power mode. The SSD controller 121 will set the channel bandwidth / interleaving mode so that the memory devices are accessed in a one-channel bandwidth / non-interleaving manner corresponding to a minimum power mode (S180).

여기서 도시되지는 않았지만, 구동 전력 모드(P_mode)에 따라 SSD(120)의 내부 클록 신호들(중앙 처리 장치, 버퍼 메모리, 그리고 플래시 인터페이스들의 클록 신호들) 각각의 주파수들(fb, fc, fi)을 조정하는 절차가 설정 동작 단계들(S150, S160, S170, S180)에 더 포함될 수 있다. 또한, 저전력 모드를 위해서 활성화되는 채널들 각각에 대해 채널 스큐(Channel Skew)를 제공하도록 플래시 인터페이스(240)가 설정될 수도 있다. Although herein not shown, the internal clock signal of the SSD (120) in accordance with the drive power mode (P_mode) (the central processing unit, a clock signal of the buffer memory, and a flash interface) of each of the frequency (f b, f c, f i may be further included in the setting operation steps S150, S160, S170, and S180. In addition, the flash interface 240 may be configured to provide a channel skew for each of the channels activated for the low power mode.

도 8은 본 발명의 다른 실시예에 따른 정보 처리 시스템(400)을 보여주는 블록도이다. 도 8을 참조하면, 정보 처리 시스템(400)은 호스트(410)로부터의 개입없이 자체적으로 SSD(420)의 구동 전력 모드를 조정한다. 즉, 벤더 특정 명령어(VS_CMD)와 같은 호스트(410)로부터의 지시없이 SSD(420) 자체적으로 구동 전력 모드를 생성하여 설정하는 정보 처리 시스템(400)이 개시된다. FIG. 8 is a block diagram illustrating an information processing system 400 according to another embodiment of the present invention. Referring to FIG. 8, the information processing system 400 adjusts the driving power mode of the SSD 420 itself without intervention from the host 410. That is, an information processing system 400 is disclosed in which SSD 420 itself generates and sets a drive power mode without instructions from host 410, such as a vendor specific instruction (VS_CMD).

호스트(410)는 전원(예를 들면, 배터리)의 잔류 전력량을 주기적으로 체크하여 SSD(420)의 저장 영역에 업데이트한다. 이렇게 잔류 전력량을 지시하는 데이터 를 전력 데이터(Power data)라 칭하기로 한다. 전력 데이터(424)는 호스트(410)에 의하여 SSD(420)의 저장 매체인 메모리 장치(423)에 저장되고 주기적으로 업데이트될 것이다.The host 410 periodically checks the residual power amount of the power source (e.g., battery) and updates it in the storage area of the SSD 420. [ The data indicating the residual power amount in this way will be referred to as power data. The power data 424 is stored by the host 410 in the memory device 423, which is the storage medium of the SSD 420, and is periodically updated.

SSD 컨트롤러(421)는 상술한 전력 데이터(424)의 위치 정보를 호스트(410)로부터 제공받거나, 미리 설정된 메모리 영역에 저장되는 전력 데이터(424)를 검출한다. 검출된 결과에 따라, SSD 컨트롤러(421)는 구동 전력 모드(P_mode)를 생성한다. 그리고 SSD 컨트롤러(421)는 생성된 구동 전력 모드(P_mode)에 따라 SSD(420)의 동작 파라미터들을 조정하거나 재설정한다. 즉, 앞서 설명된 도 4a 또는 도 4b와 같은 구동 전력 모드(P_mode)에 대응하는 성능을 내도록 SSD(120)를 설정한다. 이러한 SSD(420)의 능동적인 구동 전력 모드의 생성을 통해서, 호스트(410)의 개입없이 정보 처리 시스템(400)의 잔류 전력량에 대비하여 SSD(420)의 안정적인 구동이 가능하다.The SSD controller 421 receives the positional information of the power data 424 described above from the host 410 or detects the power data 424 stored in the preset memory area. In accordance with the detected result, the SSD controller 421 generates a driving power mode (P_mode). The SSD controller 421 adjusts or resets the operating parameters of the SSD 420 according to the generated driving power mode (P_mode). That is, the SSD 120 is set to achieve performance corresponding to the drive power mode (P_mode) as shown in FIG. 4A or FIG. 4B described above. Through the generation of the active driving power mode of the SSD 420, it is possible to stably drive the SSD 420 against the residual power amount of the information processing system 400 without the intervention of the host 410.

도 9는 도 8의 정보 처리 시스템(400)의 동작 절차를 보여주는 흐름도이다. 도 9를 참조하면, SSD(120)는 호스트(410)의 명령어(예를 들면, VS_CMD) 없이 구동 전력 모드(P_mode)를 생성하고, 생성된 구동 전력 모드(P_mode)에 대응하는 동작 파라미터들로 SSD(420)를 설정한다. FIG. 9 is a flowchart showing operational procedures of the information processing system 400 of FIG. 9, the SSD 120 generates a driving power mode (P_mode) without an instruction (e.g., VS_CMD) of the host 410 and outputs the driving power mode (P_mode) as operating parameters corresponding to the generated driving power mode The SSD 420 is set.

SSD 컨트롤러(421)는 주기적으로 메모리의 특정 영역에 저장된 전력 데이터(424)를 검출한다. SSD 컨트롤러(424)는 전력 데이터(424)를 분석하여 전원의 잔류 전력량을 산출한다. 잔류 전력량의 값에 따라 SSD 컨트롤러(421)는 구동 전력 모드(P_mode)를 생성한다(S210).The SSD controller 421 periodically detects the power data 424 stored in a specific area of the memory. The SSD controller 424 analyzes the power data 424 to calculate the residual power amount of the power supply. The SSD controller 421 generates a driving power mode (P_mode) according to the value of the residual power amount (S210).

SSD 컨트롤러(421)는 생성된 구동 전력 모드(P_mode)에 따라 SSD(120) 내부의 제반 동작 파라미터들을 대응하는 모드들 중 어느 하나로 조정하게 될 것이다(S220). 도 4a에 도시된 구동 전력 모드(P_mode)들을 예로 설명하면, 구동 전력 모드(P_mode) '000'이 제공되면 최대 전력 모드(Full power mode)로 SSD(120)가 설정되어야 할 것이다. SSD 컨트롤러(121)는 소모 전력의 고려없이 최대 성능(High performance)을 제공하기 위한 8채널/8웨이 방식으로 메모리 장치들이 액세스되도록 채널 대역폭/인터리빙 모드를 설정할 것이다(S230). The SSD controller 421 will adjust all of the operating parameters in the SSD 120 to one of the corresponding modes according to the generated driving power mode (P_mode) (S220). Referring to the driving power mode (P_modes) shown in FIG. 4A, when the driving power mode (P_mode) '000' is provided, the SSD 120 should be set in a full power mode. The SSD controller 121 sets a channel bandwidth / interleaving mode so that the memory devices are accessed in an 8-channel / 8-way manner to provide a high performance without considering consumption power (S230).

구동 전력 모드(P_mode) '001'이 제공되면 반전력 모드(Half power mode)로 SSD(120)가 설정되어야 할 것이다. SSD 컨트롤러(121)는 반전력 모드에 대응하는 4채널 대역폭/4웨이 인터리빙 방식으로 메모리 장치들이 액세스되도록 채널 대역폭/인터리빙 모드를 설정할 것이다(S240). If the driving power mode (P_mode) '001' is provided, the SSD 120 should be set in the half power mode. The SSD controller 121 sets the channel bandwidth / interleaving mode so that the memory devices are accessed by the 4-channel bandwidth / 4-way interleaving scheme corresponding to the half power mode (S240).

구동 전력 모드(P_mode) '010'이 제공되면 1/4 전력 모드(Quarter power mode)로 SSD(120)가 설정되어야 할 것이다. SSD 컨트롤러(121)는 1/4 전력 모드(Quarter power mode)에 대응하는 2채널 대역폭/2웨이 인터리빙 방식으로 메모리 장치들이 액세스되도록 채널 대역폭/인터리빙 모드를 설정할 것이다(S250). If the drive power mode (P_mode) '010' is provided, the SSD 120 should be set in a quarter power mode. The SSD controller 121 sets the channel bandwidth / interleaving mode so that the memory devices are accessed by the 2-channel bandwidth / 2-way interleaving scheme corresponding to the quarter power mode (S250).

구동 전력 모드(P_mode) '011'이 제공되면 최소 전력 모드(Minimum power mode)로 SSD(120)가 설정되어야 할 것이다. SSD 컨트롤러(121)는 최소 전력 모드(Minimum power mode)에 대응하는 1채널 대역폭/ 비인터리빙 방식으로 메모리 장치들이 액세스되도록 채널 대역폭/인터리빙 모드를 설정할 것이다(S260). If the driving power mode (P_mode) '011' is provided, the SSD 120 should be set to the minimum power mode. The SSD controller 121 will set the channel bandwidth / interleaving mode to access memory devices in a one-channel bandwidth / non-interleaving manner corresponding to a minimum power mode (S260).

여기서 도시되지는 않았지만, 구동 전력 모드(P_mode)에 따라 SSD(120)의 내 부 클록 신호들(중앙 처리 장치, 버퍼 메모리, 그리고 플래시 인터페이스들의 클록 신호들) 각각의 주파수들(fb, fc, fi)을 조정하는 절차가 설정 동작 단계들(S150, S160, S170, S180)에 더 포함될 수 있다. 또한, 저전력 모드를 위해서 활성화되는 채널들 각각에 대해 채널 스큐(Channel Skew)를 제공하도록 플래시 인터페이스(240)가 설정될 수도 있다. Although herein not shown, the internal clock signal of the SSD (120) in accordance with the drive power mode (P_mode) (the central processing unit, buffer memory, and the clock signal of the Flash interface) of each of the frequency (f b, f c , f i ) may be further included in the setting operation steps (S150, S160, S170, S180). In addition, the flash interface 240 may be configured to provide a channel skew for each of the channels activated for the low power mode.

이상의 도 8 및 도 9에서 설명된 실시예에 따르면, 호스트(410)의 개입없이 SSD(420)의 자체적인 판단에 의하여 구동 전력 모드(P_mode)를 생성할 수 있다. 그리고 전원의 잔류 전력량을 고려한 SSD(120)의 구동이 가능하다. 모바일 기기와 같은 정보 처리 시스템(400)에서는 이러한 전력을 고려한 SSD(420)의 구동을 통해서 사용 시간의 연장과 시스템의 안정성을 제공할 수 있다.According to the embodiment described with reference to FIGS. 8 and 9, the driving power mode P_mode can be generated by the self-determination of the SSD 420 without the intervention of the host 410. FIG. It is also possible to drive the SSD 120 considering the residual power amount of the power source. In the information processing system 400 such as a mobile device, it is possible to extend the operating time and provide stability of the system by driving the SSD 420 considering such power.

도 10에는 본 발명에 따른 솔리드 스테이트 드라이브(SSD)를 장착하는 컴퓨팅 시스템(500)이 예시적으로 도시되어 있다. 본 발명에 따른 컴퓨팅 시스템(500)은 시스템 버스(570)에 전기적으로 연결된 바이오스(520), 마이크로프로세서(530), 사용자 인터페이스(540), 배터리(550), 램(560) 그리고 SSD(510)를 포함한다. SSD(510)는 SSD 컨트롤러(511), 그리고 메모리 장치(512)를 포함한다. 메모리 장치(412)에는 마이크로프로세서(530)에 의해서 처리된/처리될 N-비트 데이터(N은 1 또는 그보다 큰 정수)가 SSD 컨트롤러(511)를 통해 저장될 것이다. 비록 도면에는 도시되지 않았지만, 본 발명에 따른 컴퓨팅 시스템에는 응용 칩셋(Application chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모뎀, 모바일 디램 등이 더 제공될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. FIG. 10 is an exemplary illustration of a computing system 500 with a solid state drive (SSD) in accordance with the present invention. A computing system 500 according to the present invention includes a BIOS 520 electrically connected to a system bus 570, a microprocessor 530, a user interface 540, a battery 550, a RAM 560 and an SSD 510, . The SSD 510 includes an SSD controller 511, and a memory device 512. N-bit data to be processed / processed by the microprocessor 530 (where N is an integer greater than or equal to 1) will be stored in the memory device 412 via the SSD controller 511. [ Although it is not shown in the drawing, the application system of the present invention can be provided with an application chipset, a camera image processor (CIS), a modem, a mobile DRAM, To those who have learned.

본 발명의 컴퓨팅 시스템(500)은 사용자 인터페이스(540)를 통해서 입력된 바이오스(520)의 설정 데이터에 의해서 SSD(510)의 구동 전력 모드가 선택될 수 있다. 즉, 바이오스(520)의 설정 데이터에 대응하는 벤더 특정 명령어(VS_CMD)가 마이크로프로세서(530)에 의해서 발행되고, 이에 응답하여 SSD(510)는 내부의 동작 파라미터들을 설정 또는 조정하게 될 것이다. The driving power mode of the SSD 510 may be selected according to the setting data of the BIOS 520 input through the user interface 540 of the computing system 500 of the present invention. That is, a vendor specific instruction (VS_CMD) corresponding to the configuration data of the BIOS 520 is issued by the microprocessor 530, and in response, the SSD 510 will set or adjust internal operating parameters.

다른 실시예에 따르면, SSD(510)는 벤더 특정 명령어(VS_CMD)와 같은 외부의 제어없이 자체적으로 전력 데이터를 감지하여 구동 전력 모드를 생성할 수 있다. 그리고 생성된 구동 전력 모드에 따라 SSD(510)의 내부 동작 파라미터들이 조정 또는 설정될 수 있다. 이 경우, 배터리(550)의 잔류 전력량을 고려하여 SSD(510)의 성능이나 순간 소모 전력이 제어될 수 있다.According to another embodiment, the SSD 510 may itself sense power data and generate a drive power mode without external control, such as a vendor specific instruction (VS_CMD). And the internal operating parameters of the SSD 510 may be adjusted or set according to the generated drive power mode. In this case, the performance or the instantaneous power consumption of the SSD 510 can be controlled in consideration of the residual power amount of the battery 550.

본 발명의 SSD(510)는 MMC 카드(Multimedia Card), SD 카드(Secure Digital Card), 마이크로 SD 카드, 메모리 스틱(Memory Stick), ID 카드, PCMCIA 카드, 칩 카드(Chip Card), USB 카드, 스마트 카드(Smart Card), CF 카드(Compact Flash Card) 등으로 더 구성될 수 있다. The SSD 510 of the present invention can be used as a storage medium such as an MMC card, an SD card (Secure Digital Card), a micro SD card, a memory stick, an ID card, a PCMCIA card, a chip card, A smart card, a CF card (Compact Flash Card), and the like.

메모리 장치(512)는 전력이 차단되어도 저장된 데이터를 유지할 수 있는 플래시 메모리 장치로 구성될 수 있다. 셀룰러 폰, PDA 디지털 카메라, 포터블 게임 콘솔, 그리고 MP3P와 같은 모바일 장치들의 사용 증가에 따라, 플래시 메모리 장치는 데이터 스토리지 뿐만 아니라 코드 스토리지로서 널리 사용될 수 있다. 메모리 장치(512) 및 SSD 컨트롤러(511)를 포함하는 SSD(510)는, 또한, HDTV, DVD, 라우터, 그리고 GPS와 같은 홈 어플리케이션에 사용될 수 있다.The memory device 512 may be configured as a flash memory device capable of retaining stored data even when power is interrupted. With the increasing use of mobile devices such as cellular phones, PDA digital cameras, portable game consoles, and MP3Ps, flash memory devices can be widely used as code storage as well as data storage. The SSD 510, including the memory device 512 and the SSD controller 511, may also be used in home applications such as HDTV, DVD, router, and GPS.

본 발명의 SSD(510)는 임베디드 시스템에 적용가능하다. 임베디드(Embedded) 시스템은 다른 기기의 일부로 내장된 컴퓨팅 시스템으로써, 일반적인 컴퓨터와 달리 자신을 포함하고 있는 기기에 부과된 특정 목적의 컴퓨팅 작업만을 수행한다. 이를 위해, 임베디드 시스템은 중앙 처리 장치를 갖고 운영 체제를 필요로 하며, 운영체제로 애플리케이션을 실행하여 특정 작업을 수행한다. 일반적으로, 임베디드 시스템은 군사용기기, 산업용 기기, 통신 기기, 셋탑 박스, DTV, 디지털 카메라와 같은 가전기기 등을 제어하기 위해 내장된다.The SSD 510 of the present invention is applicable to an embedded system. An embedded system is a built-in computing system that is part of another device and performs only specific computing tasks that are imposed on the device that contains it, unlike a normal computer. To do this, an embedded system has a central processing unit, requires an operating system, and runs applications on the operating system to perform specific tasks. Generally, embedded systems are embedded to control military equipment, industrial equipment, communication equipment, set-top boxes, home appliances such as DTVs and digital cameras.

본 발명에 따른 메모리 장치 그리고/또는 SSD 컨트롤러는 다양한 형태들의 패키지를 이용하여 실장될 수 있다. 예를 들면, 본 발명에 따른 메모리 장치 그리고/또는 SSD 컨트롤러는 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), Thin Quad Flatpack(TQFP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP), 등과 같은 패키지들을 이용하여 실장될 수 있다.The memory device and / or SSD controller according to the present invention may be implemented using various types of packages. For example, the memory device and / or the SSD controller according to the present invention may be implemented as a package on package (PoP), ball grid arrays (BGAs), chip scale packages (CSPs), plastic leaded chip carriers Die in Wafer Form, Chip On Board (COB), Ceramic Dual In-Line Package (CERDIP), Plastic Metric Quad Flat Pack (MQFP), Thin Quad Flatpack (TQFP), Small Outline (SOIC), Shrink Small Outline Package (SSOP), Thin Small Outline (TSOP), Thin Quad Flatpack (TQFP), System In Package (SIP), Multi Chip Package (MCP), Wafer-level Fabricated Package -Level Processed Stack Package (WSP), and the like.

이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.As described above, an optimal embodiment has been disclosed in the drawings and specification. Although specific terms have been employed herein, they are used for purposes of illustration only and are not intended to limit the scope of the invention as defined in the claims or the claims. Therefore, those skilled in the art will appreciate that various modifications and equivalent embodiments are possible without departing from the scope of the present invention. Accordingly, the true scope of the present invention should be determined by the technical idea of the appended claims.

도 1은 본 발명의 실시예에 따른 정보 처리 시스템을 보여주는 블록도;1 is a block diagram showing an information processing system according to an embodiment of the present invention;

도 2는 도 1의 SSD 컨트롤러를 보여주는 블록도;FIG. 2 is a block diagram illustrating the SSD controller of FIG. 1;

도 3은 플래시 인터페이스와 메모리 장치들의 연결 관계를 간략히 보여주는 블록도;3 is a block diagram briefly showing the connection relationship of the flash interface and the memory devices;

도 4a, 4b는 구동 전력 모드(P_mode)의 다양한 실시예들을 보여주는 표들;Figures 4A and 4B are tables showing various embodiments of the driving power mode (P_mode);

도 5a, 5b, 5c는 각각 서로 다른 인터리빙 액세스 모드들을 보여주는 타이밍도;Figures 5A, 5B and 5C are timing diagrams showing different interleaving access modes, respectively;

도 6a는 플래시 인터페이스의 구동 클록 주파수를 가변하는 실시예를 보여주는 타이밍도;6A is a timing diagram showing an embodiment for varying the driving clock frequency of the flash interface;

도 6b는 채널 스큐(Channel skew)를 설명하는 타이밍도;FIG. 6B is a timing chart illustrating a channel skew; FIG.

도 7은 본 발명의 정보 처리 시스템의 제어 동작을 보여주는 순서도;7 is a flowchart showing the control operation of the information processing system of the present invention;

도 8은 본 발명의 다른 실시예에 따른 정보 처리 시스템을 보여주는 블록도;8 is a block diagram illustrating an information processing system according to another embodiment of the present invention;

도 9는 도 8의 SSD의 동작을 보여주는 순서도; 및FIG. 9 is a flowchart showing the operation of the SSD of FIG. 8; FIG. And

도 10은 본 발명에 따른 컴퓨팅 시스템을 보여주는 블록도.10 is a block diagram illustrating a computing system in accordance with the present invention.

*도면의 주요 부분에 대한 부호의 설명*Description of the Related Art [0002]

110, 410 : 호스트 111 : BIOS110, 410: Host 111: BIOS

120, 420 : SSD 121, 421 : SSD 컨트롤러120, 420: SSD 121, 421: SSD controller

122, 422 : 버퍼 메모리122, 422: buffer memory

123, 124, 125, 423 : 메모리 장치들123, 124, 125, 423: memory devices

210 : 중앙 처리 장치 220 : 호스트 인터페이스210: central processing unit 220: host interface

230 : 버퍼 매니저 240 : 플래시 인터페이스230: Buffer manager 240: Flash interface

424 : 전력 데이터 510 : SSD424: Power data 510: SSD

511 : SSD 컨트롤러 512 : 메모리 장치511: SSD controller 512: memory device

520 : BIOS 530 : CPU520: BIOS 530: CPU

540 : 사용자 인터페이스 550 : 배터리540: User interface 550: Battery

560 : 램 570 : 시스템 버스560: RAM 570: System bus

Claims (10)

복수의 메모리 장치들; 그리고A plurality of memory devices; And 복수의 채널들을 통해 상기 복수의 메모리 장치들과 데이터를 교환하며, 외부 명령어(VS_CMD)를 디코딩하여 구동 전력 모드(P_mode)를 생성하고, 상기 구동 전력 모드(P_mode)에 따라 상기 복수의 채널들의 대역폭 또는 인터리빙 액세스되는 메모리 장치의 수를 조정하는 메모리 컨트롤러를 포함하되,(P_mode) by decoding an external command (VS_CMD), exchanging data with the plurality of memory devices through a plurality of channels, and controlling a bandwidth of the plurality of channels according to the driving power mode Or a memory controller that adjusts the number of interleaved accessed memory devices, 상기 외부 명령어(VS_CMD)는 바이오스(BIOS) 설정 값을 참조하여 외부로부터 제공되는 벤더 특정 명령어이며,The external command (VS_CMD) is a vendor specific command provided from the outside by referring to a BIOS setting value, 상기 구동 전력 모드(P_mode)에 따라 활성화된 채널들 각각의 액세스 시작 시간이 서로 다르게 조정되는 데이터 저장 장치.Wherein the access start time of each of the activated channels is adjusted differently according to the driving power mode (P_mode). 제 1 항에 있어서,The method according to claim 1, 상기 메모리 컨트롤러는 상기 구동 전력 모드(P_mode)에 따라 상기 복수의 채널들 중 일부 또는 전부를 활성화하는 데이터 저장 장치.Wherein the memory controller activates some or all of the plurality of channels in accordance with the driving power mode (P_mode). 제 1 항에 있어서,The method according to claim 1, 상기 메모리 컨트롤러는 상기 구동 전력 모드(P_mode)에 따라 상기 활성화된 채널에서 인터리빙 액세스되는 메모리 장치의 수를 조정하는 데이터 저장 장치.Wherein the memory controller adjusts the number of memory devices accessed interleaved in the activated channel according to the driving power mode (P_mode). 삭제delete 제 1 항에 있어서,The method according to claim 1, 상기 메모리 컨트롤러의 제어에 따라 데이터를 버퍼링하는 버퍼 메모리를 더 포함하되, 상기 메모리 컨트롤러는 상기 구동 전력 모드(P_mode)에 따라 상기 버퍼 메모리를 구동하기 위한 클록의 주파수를 조정하는 데이터 저장 장치.Further comprising a buffer memory for buffering data under the control of the memory controller, wherein the memory controller adjusts a frequency of a clock for driving the buffer memory according to the driving power mode (P_mode). 제 1 항에 있어서,The method according to claim 1, 상기 메모리 컨트롤러는 상기 외부 명령어(VS_CMD)를 디코딩하는 중앙 처리 장치를 더 포함하며, 상기 구동 전력 모드(P_mode)에 따라 상기 중앙 처리 장치의 클록 주파수가 조정되는 데이터 저장 장치.Wherein the memory controller further comprises a central processing unit for decoding the external command (VS_CMD), and the clock frequency of the central processing unit is adjusted according to the driving power mode (P_mode). 제 1 항에 있어서, The method according to claim 1, 상기 메모리 컨트롤러는 상기 구동 전력 모드(P_mode)에 따라 상기 활성화된 채널에서 데이터를 교환하기 위한 클록의 주파수를 조정하는 데이터 저장 장치. Wherein the memory controller adjusts the frequency of a clock for exchanging data in the activated channel according to the driving power mode (P_mode). 제 1 항에 있어서, The method according to claim 1, 상기 복수의 메모리 장치들은 플래시 메모리 장치로 구성되며, 상기 복수의 메모리 장치들과 상기 메모리 컨트롤러는 솔리드 스테이트 드라이브로 제공되는 데이터 저장 장치.Wherein the plurality of memory devices are configured as a flash memory device, and the plurality of memory devices and the memory controller are provided as a solid state drive. 복수의 메모리 장치들; 그리고A plurality of memory devices; And 복수의 채널들을 통해 상기 복수의 메모리 장치들과 데이터를 교환하며, 상기 복수의 메모리 장치들에 저장되는 전원 데이터를 참조하여 상기 복수의 메모리 장치들을 액세스하기 위한 채널 대역폭 또는 인터리빙 액세스되는 메모리 장치의 수를 조정하는 메모리 컨트롤러를 포함하되,Exchanging data with the plurality of memory devices via a plurality of channels, the channel bandwidth for accessing the plurality of memory devices with reference to power supply data stored in the plurality of memory devices, or the number of interleaved memory devices And a memory controller for controlling the memory controller, 상기 전원 데이터에 따라 상기 복수의 채널들 각각의 액세스 시작 시간이 서로 다르게 조정되는 데이터 저장 장치. Wherein the access start time of each of the plurality of channels is adjusted differently according to the power supply data. 롬에 저장된 바이오스(BIOS) 설정 정보를 참조하여 명령어(VS_CMD)를 발행하는 호스트; 그리고 A host that issues a command (VS_CMD) by referring to BIOS (BIOS) setting information stored in the ROM; And 상기 명령어(VS_CMD)에 응답하여 구동 전력 모드(P_mode)에 대응하는 성능으로 동작하는 솔리드 스테이트 드라이브를 포함하는 것을 특징으로는 정보 처리 시스템.And a solid state drive operating at a performance corresponding to a drive power mode (P_mode) in response to the command (VS_CMD).
KR1020090035602A 2009-04-23 2009-04-23 Data storage device and data processing system having the same KR101525589B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020090035602A KR101525589B1 (en) 2009-04-23 2009-04-23 Data storage device and data processing system having the same
US12/764,464 US8478928B2 (en) 2009-04-23 2010-04-21 Data storage device and information processing system incorporating data storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090035602A KR101525589B1 (en) 2009-04-23 2009-04-23 Data storage device and data processing system having the same

Publications (2)

Publication Number Publication Date
KR20100116934A KR20100116934A (en) 2010-11-02
KR101525589B1 true KR101525589B1 (en) 2015-06-03

Family

ID=43403722

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090035602A KR101525589B1 (en) 2009-04-23 2009-04-23 Data storage device and data processing system having the same

Country Status (1)

Country Link
KR (1) KR101525589B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9588570B2 (en) 2013-04-30 2017-03-07 Samsung Electronics Co., Ltd. Apparatus and method for adjusting bandwidth

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050091777A (en) * 2003-01-09 2005-09-15 인텔 코오퍼레이션 Memory controller considering processor power states
JP2006012126A (en) * 2004-06-10 2006-01-12 Marvell World Trade Ltd Adaptative storage system
KR20080038687A (en) * 2006-10-30 2008-05-07 삼성전자주식회사 Computer system and control method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050091777A (en) * 2003-01-09 2005-09-15 인텔 코오퍼레이션 Memory controller considering processor power states
JP2006012126A (en) * 2004-06-10 2006-01-12 Marvell World Trade Ltd Adaptative storage system
KR20080038687A (en) * 2006-10-30 2008-05-07 삼성전자주식회사 Computer system and control method

Also Published As

Publication number Publication date
KR20100116934A (en) 2010-11-02

Similar Documents

Publication Publication Date Title
US8478928B2 (en) Data storage device and information processing system incorporating data storage device
KR101612111B1 (en) Data storage device comprising a current detector
KR101573723B1 (en) Data storage device adaptively controlling signal strength of memory channel and setting method thereof
US9223506B2 (en) Semiconductor storage device and method of throttling performance of the same
KR101989018B1 (en) Operating method for data storage device
CN107179996B (en) Data storage device and method of operating the same
US8812784B2 (en) Command executing method, memory controller and memory storage apparatus
KR102020466B1 (en) Data storage device including a buffer memory device
US8555000B2 (en) Data storage device and data storing method thereof
US8677051B2 (en) Memory system, control method thereof, and information processing apparatus
US20120047318A1 (en) Semiconductor storage device and method of throttling performance of the same
US9189383B2 (en) Nonvolatile memory system and data processing method
US20100268871A1 (en) Non-volatile memory controller processing new request before completing current operation, system including same, and method
CN107179877B (en) Data transmission method, memory control circuit unit and memory storage device
KR20130127274A (en) Method for controlling memory operation timing and memory system using method thereof
KR20090006920A (en) Cache memory device and data processing method of the device
KR20130112210A (en) Page replace method and memory system using the same
US20150205540A1 (en) Memory system including nonvolatile memory devices and operating method
US11264086B2 (en) Memory controller and operating method thereof
US20150234448A1 (en) Information processing system and storage device
US9804983B2 (en) Controlling method, connector, and memory storage device
KR20140080948A (en) Operating method for data storage device
KR101581858B1 (en) Storage device and data processing system having the same
KR20120017911A (en) Method of interfacing between host and semiconductor storage device for throttling performance of the semiconductor storage device, and apparatus there-of
US9804790B2 (en) Method of operating memory controller and semiconductor storage device including memory controller

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190429

Year of fee payment: 5