KR20120087980A - 다중 인터페이스 솔리드 스테이트 디스크, 및 다중 인터페이스 솔리드 스테이트 디스크의 처리 방법 및 시스템 - Google Patents

다중 인터페이스 솔리드 스테이트 디스크, 및 다중 인터페이스 솔리드 스테이트 디스크의 처리 방법 및 시스템 Download PDF

Info

Publication number
KR20120087980A
KR20120087980A KR1020127013992A KR20127013992A KR20120087980A KR 20120087980 A KR20120087980 A KR 20120087980A KR 1020127013992 A KR1020127013992 A KR 1020127013992A KR 20127013992 A KR20127013992 A KR 20127013992A KR 20120087980 A KR20120087980 A KR 20120087980A
Authority
KR
South Korea
Prior art keywords
interface
command
operation command
control unit
flash
Prior art date
Application number
KR1020127013992A
Other languages
English (en)
Inventor
샤오주 통
민키우 리
Original Assignee
후아웨이 테크놀러지 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 후아웨이 테크놀러지 컴퍼니 리미티드 filed Critical 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20120087980A publication Critical patent/KR20120087980A/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0661Format or protocol conversion arrangements
    • 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/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Computer And Data Communications (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

본 발명의 실시예는 다중 인터페이스 솔리드 스테이트 디스크, 다중 인터페이스 솔리드 스테이트 디스크의 처리 방법 및 시스템을 제공하며, 통신 분야에 관한 것이다. 본 발명의 실시예에 의하면, 다수의 호스트가 SSD를 직접 공유 및 액세스할 수 있으며, 높은 성능, 넓은 대역폭 및 대용량 등의 특징을 위한 각 호스트의 요건을 만족시킨다. 본 발명에 따른 다중 인터페이스 솔리드 스테이트 디스크는 다중 인터페이스 제어 유닛, 명령 스케줄링 유닛, 플래시 제어 유닛 및 플래시 칩을 포함하며, 각각의 인터페이스 제어 유닛은 통신 인터페이스에 대응한다. 인터페이스 제어 유닛은 통신 인터페이스를 통해 작동 명령을 수신한다. 명령 스케줄링 유닛은 스케줄링 규칙에 따라 다수의 인터페이스 제어 유닛으로부터 작동 명령을 취득해서 명령 대기 열에 삽입하고, 명령 대기 열로부터 작동 명령을 인출해서 플래시 제어 유닛에 발송한다. 플래시 제어 유닛은 수신한 작동 명령을 플래시 작동 명령으로 변환해서 플래시 칩을 동작시킨다.

Description

다중 인터페이스 솔리드 스테이트 디스크, 및 다중 인터페이스 솔리드 스테이트 디스크의 처리 방법 및 시스템{MULTI-INTERFACE SOLID STATE DISK(SSD), PROCESSING METHOD AND SYSTEM THEREOF}
본 발명은 통신 분야에 관한 것으로서, 구체적으로는 다중 인터페이스 솔리드 스테이트 디스크, 다중 인터페이스 솔리드 스테이트 디스크의 처리 방법 및 시스템에 관한 것이다.
솔리드 스테이트 디스크(Solid State Disk: SSD)는 기억 매체로서 플래시(flash)를 사용한다. 종래의 하드 디스크에 비해, SSD는 고속의 데이터 액세스, 내진성, 넘어짐 방지, 저전력 소비, 사용 내구성, 저잡음, 경량 및 박형의 장점을 갖는다. 일부 특별한 응용 분야로서, SSD는 종래의 하드 디스크를 대체하는 것으로 전도가 유망하다. 일반적인 SATA(Serial Advanced Technology Attachment) 3.0 인터페이스의 SSD 디스크는 SATA 3.0 인터페이스의 대역폭에 의해 제한되며, 그 최대의 성능을 발휘할 수 없는 것이 일반적이다. 이에 비해, PCIe(Peripheral Component Interconnect Express) 인터페이스에 기초한 SSD는 대용량 및 고성능의 장점을 가지며, 더 높은 용량 및 성능 요건을 갖는 분야에 잘 적용될 수 있다.
현재, 시장에서 PCIe 인터페이스를 갖는 SSD는 항상 단일의 PCIe 인터페이스를 갖는 SSD이다. 도 1에 나타낸 바와 같이, SSD 및 호스트 1(예를 들어, PC 머신 또는 서버)은 PCIe 인터페이스를 통해 접속된다. 호스트 1은 드라이브 1을 통해 자신의 기억 장치로서 SSD를 사용하고, SSD에 직접 액세스할 수 있다. 호스트 2는 드라이브 2, 호스트 1에서 구동하는 프록시 모듈, 및 호스트 1의 드라이브 1을 통해 SSD에 관한 액세스 명령을 SSD에 전달하여, SSD에 대한 간접 액세스를 구현한다.
다중 호스트에 의해 SSD의 공유 및 액세스를 구현하는 처리 과정에서, 본 발명의 발명자들은 종래 기술에 다음과 같은 문제점이 있다는 것을 알게 되었다.
단일의 PCIe 인터페이스를 갖는 SSD는 하나의 호스트에만 삽입될 수 있으며, 하나의 호스트에 의해서만 직접 액세스될 수 있다. 다른 호스트는 SSD를 간접적으로만 액세스할 수 있을 뿐이다. 따라서, SSD를 간접적으로 액세스하는 호스트의 액세스 대역폭은 작으며, 액세스 지연(access delay)은 크다. SSD의 높은 성능, 넓은 대역폭 및 대용량을 위한 각 호스트의 요건이 만족되지 않는다.
본 발명의 실시예는 다중 인터페이스 솔리드 스테이트 디스크, 다중 인터페이스 솔리드 스테이트 디스크의 처리 방법 및 시스템을 제공하여, SSD가 하나의 호스트에 의해서만 직접 액세스될 수 있고 다중의 호스트에 의해서는 직접 공유되거나 액세스되지 않는 종래 기술의 기술적 문제점을 해결한다. 이에 의해, SSD의 높은 성능, 넓은 대역폭 및 대용량을 위한 각 호스트의 요건을 만족시킨다.
이러한 목적을 달성하기 위해, 본 발명의 실시예는 다음과 같은 기술적 해결 방안을 채택한다.
다중 인터페이스 솔리드 스테이트 디스크(multi-interface solid state disk)는, 다수의 인터페이스 제어 유닛(multiple interface control unit), 명령 스케줄링 유닛, 플래시 제어 유닛 및 플래시 칩을 포함한다. 각각의 인터페이스 제어 유닛은 통신 인터페이스에 대응한다.
인터페이스 제어 유닛은 통신 인터페이스를 통해 작동 명령을 수신한다.
명령 스케줄링 유닛은 스케줄링 규칙에 따라 다수의 인터페이스 제어 유닛으로부터 작동 명령을 취득해서 대기 열에 삽입한다.
명령 스케줄링 유닛은 대기 열로부터 작동 명령을 인출해서 플래시 제어 유닛에 발송한다.
플래시 제어 유닛은 수신한 작동 명령을 플래시 작동 명령으로 변환하고, 이 플래시 작동 명령을 통해 플래시 칩을 동작시킨다.
다중 인터페이스 솔리드 스테이트 디스크의 처리 방법은,
다수의 통신 인터페이스를 통해 작동 명령을 수신하는 단계;
스케줄링 규칙에 따라 다수의 통신 인터페이스로부터 수신된 작동 명령을 취득하고, 취득한 작동 명령을 명령 대기 열에 삽입하는 단계;
명령 대기 열로부터 작동 명령을 인출하는 단계; 및
작동 명령을 플래시 작동 명령으로 변환하고, 솔리드 스테이트 디스크 내의 플래시 칩을 동작시키는 단계를 포함한다.
다중 인터페이스 솔리드 스테이트 디스크의 처리 시스템은 하나 이상의 호스트 및 하나 이상의 다중 인터페이스 솔리드 스테이트 디스크를 포함한다.
호스트는 다중 인터페이스 솔리드 스테이트 디스크 드라이브를 포함하며, 호스트와 다중 인터페이스 솔리드 스테이트 디스크 간의 직접 통신 접속은 드라이브를 구동시킴으로써 달성되고, 호스트는 다중 인터페이스 솔리드 스테이트 디스크에 작동 명령을 발송하도록 되어 있다.
다중 인터페이스 솔리드 스테이트 디스크는, 다중 인터페이스 제어 유닛, 명령 스케줄링 유닛, 플래시 제어 유닛 및 플래시 칩을 포함한다. 각각의 인터페이스 제어 유닛은 통신 인터페이스에 대응한다. 인터페이스 제어 유닛은 통신 인터페이스를 통해 호스트에 의해 송신된 작동 명령을 수신한다. 명령 스케줄링 유닛은 스케줄링 규칙에 따라 다수의 인터페이스 제어 유닛으로부터 작동 명령을 취득해서 명령 대기 열에 삽입하도록 되어 있다. 명령 스케줄링 유닛은 또한 명령 대기 열로부터 작동 명령을 인출해서 플래시 제어 유닛에 발송하도록 되어 있다. 플래시 제어 유닛은 수신한 작동 명령을 플래시 작동 명령으로 변환하고 이 변환한 작동 명령을 통해 플래시 칩을 동작시킨다.
본 발명의 실시예에서 제공되는 다중 인터페이스 솔리드 스테이트 디스크, 및 작동 명령을 처리하는 방법 및 시스템에 의하면, 다수의 통신 인터페이스가 솔리드 스테이트 디스크 내에 배치됨으로써, 여러 호스트가 여러 통신 인터페이스를 통한 통신을 위한 솔리드 스테이트 디스크 인터페이스에 직접 접속할 수 있게 되어, 다중의 호스트가 SSD를 공유할 때에 생기는 문제점을 회피할 수 있으며, 호스트가 SSD에 직접 접속된 경우를 제외한, 다른 호스트는 SSD를 간접적으로 액세스할 필요가 있어서, 여러 호스트가 SSD를 동시에 직접 액세스할 수 있고, 서로 공유하는 방식으로 액세스를 수행할 필요가 없게 된다. 따라서, 호스트의 액세스 대역폭이 증가하고, SSD의 높은 성능, 넓은 대역폭 및 대용량을 위한 각 호스트의 요건을 만족시킨다.
본 발명의 실시예에 따른 기술적 방안 또는 종래 기술을 더 명확하게 나타내기 위해, 본 발명의 실시예 또는 종래 기술을 설명하기 위한 첨부 도면을 이하에 나타낸다. 첨부 도면은 본 발명에 대한 이해를 돕기 위한 것으로 본 발명의 명세서의 일부분이고 본 발명의 실시예와 본 발명을 해석하기 위한 것으로 본 발명을 한정하는 것이 아니다.
도 1은 종래 기술의 솔리드 스테이트 디스크의 처리 시스템의 구조를 나타내는 블록도이다.
도 2는 본 발명의 제1 실시예에 따른 다중 인터페이스 솔리드 스테이트 디스크의 구조를 나타내는 블록도이다.
도 3은 본 발명의 제2 실시예에 따른 다중 인터페이스 솔리드 스테이트 디스크의 구조를 나타내는 블록도이다.
도 4는 본 발명의 제3 실시예에 따른 다중 인터페이스 솔리드 스테이트 디스크의 처리 방법을 나타내는 플로차트이다.
도 5는 본 발명의 제3 실시예에 따른 다중 인터페이스 솔리드 스테이트 디스크의 다른 처리 방법을 나타내는 플로차트이다.
도 6은 본 발명의 제4 실시예에 따른 다중 인터페이스 솔리드 스테이트 디스크의 처리 시스템의 구조를 나타내는 블록도이다.
도 7은 본 발명의 제4 실시예에 따른 다중 인터페이스 솔리드 스테이트 디스크의 다른 처리 시스템의 구조를 나타내는 블록도이다.
도 8은 본 발명의 제4 실시예에 따른 다중 인터페이스 솔리드 스테이트 디스크의 다른 처리 시스템의 구조를 나타내는 블록도이다.
본 발명의 실시예에 따른 기술적 방안을 본 발명의 실시예에서의 첨부 도면을 참조하여 이하에 명확하고 완전하게 설명하고 있다. 기술된 실시예는 본 발명의 모든 실시예가 아닌 그 일부에 불과하다. 창조적인 노력이 없이도 본 발명의 실시예에 기초하여 당업자가 얻을 수 있는 모든 다른 실시예는 본 발명의 보호 범위에 속한다.
제1 실시예
본 발명의 실시예는 다중 인터페이스 솔리드 스테이트 디스크를 제공한다. 도 2에 나타낸 바와 같이, 다중 인터페이스 솔리드 스테이트 디스크는 다중 인터페이스 제어 유닛(11), 명령 스케줄링 유닛(12), 플래시 제어 유닛(13), 및 플래시 칩(14)을 포함한다.
인터페이스 제어유닛(11)의 각각은 통신 인터페이스에 각각 대응한다. 인터페이스 제어 유닛(11)은 통신 인터페이스를 통해 조작 명령을 수신한다. 구체적으로, 통신 인터페이스는 PCIe 인터페이스 또는 SATA 인터페이스가 될 수 있다. 인터페이스 제어 유닛(11)에 의해 수신된 조작 명령은 PC 및 서버 등의 하드 디스크 카드에 접속된 다양한 호스트로부터 제공된다.
명령 스케줄링 유닛(12)은 스케줄링 규칙에 따라 다중 인터페이스 제어 유닛(11)으로부터 조작 명령을 인출하고, 조작 명령을 명령 대기 열에 삽입시킨다. 구체적으로, 명령 스케줄링 유닛(12)은 다중 통신 인터페이스의 폴링 원칙에 따라 또는 낮은 번호가 우선순위를 갖는 또는 높은 번호가 우선순위를 갖는 다중 통신 인터페이스의 번호에 관한 원칙에 따라 또는 사용자에 의해 정의되는 다른 원칙에 따라, 다중 인터페이스 제어 유닛(11) 내의 조작 명령을 스케줄링할 수 있다.
명령 스케줄링 유닛(12)은 명령 대기 열로부터 조작 명령을 인출해서 플래시 제어 유닛(13)에 전송할 수 있다. 구체적으로, 조작 명령을 명령 대기 열로부터 인출하면, 조작 명령은 명령 대기 열의 선입선출(FIFO) 규칙에 따라 순차적으로 인출된다.
플래시 제어 유닛(13)은 수신한 조작 명령을 플래시 조작 명령으로 변환하고, 플래시 조작 명령을 통해 플래시 칩(14)을 조작한다. 구체적으로, 본 명세서에서의 플래시 칩은 향상된 성능을 얻기 위해 NAND(부정 논리곱) 플래시를 채택할 수 있다. 인터페이스 제어 유닛을 통해 직접 수신된 명령은 플래시 칩을 직접 동작시킬 수 없기 때문에, 조작 명령은 데이터 판독, 데이터 기록 또는 다른 제어 동작 등과 같이 플래시 칩을 동작시키기 전에, 플래시 제어 유닛(13)에 의해 플래시 조작 명령으로 변환시켜야 한다.
본 발명의 실시예에서, 다중 통신 인터페이스는 솔리드 스테이트 디스크에 배치됨으로써 여러 호스트가 여러 통신 인터페이스를 통한 통신을 위한 솔리드 스테이트 디스크 인터페이스에 직접 접속할 수 있게 되어, 다중의 호스트가 SSD를 공유할 때에 생기는 문제점을 회피할 수 있으며, 호스트가 SSD에 직접 접속된 경우를 제외한, 다른 호스트가 SSD를 간접적으로 액세스할 필요가 있어서, 여러 호스트가 SSD를 동시에 직접 액세스할 수 있고, 서로 공유하는 방식으로 액세스를 수행할 필요가 없게 된다. 따라서, 호스트의 액세스 대역폭이 증가하고, SSD의 높은 성능, 넓은 대역폭 및 대용량을 위한 각 호스트의 요건을 만족시킨다.
제2 실시예
도 3에 나타낸 바와 같이, 본 실시예는 다중 인터페이스 솔리드 스테이트 디스크는 다중 인터페이스 제어 유닛(11), 명령 스케줄링 유닛(12), 플래시 제어 유닛(13) 및 플래시 칩(14)을 포함한다.
인터페이스 제어 유닛(11)의 각각은 통신 인터페이스에 각각 대응한다. 인터페이스 제어 유닛(11)은 통신 인터페이스를 통해 조작 명령을 수신한다.
구체적으로, 다중 통신 인터페이스는 PCIe 인터페이스가 될 수 있지만, 이에 한정되는 것은 아니다. 통신 인터페이스는 SATA 인터페이스도 될 수 있다. PCIe 인터페이스 및 SATA 인터페이스의 특징에 따라, 다중 통신 인터페이스를 PCIe 인터페이스로 설정함으로써 SATA 인터페이스에 비해 호스트와 SSD 사이의 전송 대역폭을 증가될 수 있으며, 대역폭 성능에 대한 높은 요건을 만족시키게 되지만, 이에 한정되는 것은 아니다. 다중 통신 인터페이스의 인터페이스 타입은 사용자의 요건에 따라 유연하게 설정될 수 있다. 예를 들어, 여러 타입의 인터페이스를 갖는 호스트에 사용될 수 있도록 하기 위해, 다중 통신 인터페이스의 일부를 PCIe 인터페이스로 설정하고, 다중 통신 인터페이스의 다른 부분을 SATA 인터페이스로 설정해도 된다. 낮은 대역폭을 필요로 하는 요건을 갖는 응용 분야에 적용하기 위해, 2개의 통신 인터페이스를 모두 SATA 인터페이스로 설정할 수도 있다. 높은 전송 대역폭과 전송 성능의 요건을 갖는 응용 분야에 대해서는, 모든 다중 통신 인터페이스를 PCIe 인터페이스로 설정해도 된다.
인터페이스 제어 유닛(11)은, 예를 들어 PCIe 인터페이스 또는 SATA 인터페이스로부터 조작 명령을 수신하기 위해, 통신 인터페이스를 통해 조작 명령을 수신한다. 조작 명령은 판독 명령이나 기록 명령이 될 수 있으며, 로그 질의 명령(log query command), 불량 블록 카운트(bad block count) 및 질의 명령 등의 유지 함수를 갖는 명령이나, 플래시 내의 데이터 블록 소거의 횟수를 질의하는 명령 등이 될 수 있지만, 이에 한정되는 것은 아니다.
본 발명의 실시예에서, 명령 스케줄링 유닛(12)은 스케줄링 규칙에 따라 다중 인터페이스 제어 유닛(11)으로부터 조작 명령을 취득해서 명령 대기 열 내에 위치시킨다.
구체적으로, 명령 스케줄링 유닛(12)이 스케줄링 규칙에 따라 다중 인터페이스 제어 유닛(11)으로부터 조작 명령을 취득해서 명령 대기 열에 저장하면, 이하의 방법이 사용될 수 있다.
명령 스케줄링 유닛(12)은 조작 명령을 취득하기 위한 취득 명령을 스케줄링 규칙에 따라 다중 인터페이스 제어 유닛에 발송한다. 명령 스케줄링 유닛에 의해 전송된 취득 명령을 수신하면, 인터페이스 제어 유닛은 조작 명령을 명령 스케줄링 유닛(12)에 발송한다. 명령 스케줄링 유닛(12)은 수신한 조작 명령을 명령 대기 열에 삽입시킨다. 구체적으로, 명령 스케줄링 유닛(12)은 다중 통신 인터페이스의 폴링 원칙에 따라 또는 낮은 번호가 우선순위를 갖는 또는 높은 번호가 우선순위를 갖는 다중 통신 인터페이스의 번호에 관한 원칙에 따라, 다중 인터페이스 제어 유닛(11)의 조작 명령을 스케줄링할 수 있다. 상기 설명한 스케줄링 규칙과 별도로, 명령 스케줄링 유닛(12)은 사용자의 요건에 따라 자체적으로 규정한 스케줄링 규칙을 사용할 수도 있지만, 이에 한정되는 것을 아니다.
예를 들어, 명령 스케줄링 유닛(12)이 다수의 통신 인터페이스의 폴링 원칙에 따라 다중 인터페이스 제어 유닛(11)으로부터 조작 명령을 취득해서, 명령 대기 열에 위치시키는 경우, 다음의 과정이 포함될 수 있다.
다중 인터페이스 SSD의 2개의 인터페이스 제어 유닛(즉, 인터페이스 제어 유닛 1 및 인터페이스 제어 유닛 2)이 대응하는 통신 인터페이스를 통해 호스트 1 및 호스트 2에 의해 송신된 작동 명령(즉, 명령 1 및 명령 2)을 수신하면, 명령 스케줄링 유닛(12)이 작동 명령을 취득하기 위한 판독 명령을 소정의 사이클에 따라 인터페이스 제어 유닛 1 및 인터페이스 제어 유닛(12)에 발송한다. 판독 명령을 수신하면, 인터페이스 제어 유닛 1 및 인터페이스 제어 유닛 2는 인터페이스 제어 유닛 1 및 인터페이스 제어 유닛 2에 의해 임시로 기억된 작동 명령을 명령 스케줄링 유닛(12)에 전달한다. 명령 스케줄링 유닛(12)은 수신한 명령 1을 명령 대기 열에 위치시키고, 다음으로 수신한 명령 2를 명령 대기 열에 위치시킨다.
예를 들어, 명령 스케줄링 유닛(12)이 낮은 번호가 우선순위를 갖는 다중 통신 인터페이스의 번호에 관한 원칙에 따라 다중 인터페이스 제어 유닛(11)으로부터 작동 명령을 취득하고, 작동 명령을 명령 대기 열에 위치시키면, 다음의 과정이 포함될 수 있다.
다중 인터페이스 SSD의 2개의 인터페이스 제어 유닛(즉, 인터페이스 제어 유닛 1 및 인터페이스 제어 유닛 2)이 대응하는 통신 인터페이스를 통해 호스트 1 및 호스트 2에 의해 송신된 작동 명령(즉, 명령 1 및 명령 2)을 수신하면, 명령 스케줄링 유닛(12)이 작동 명령을 취득하기 위한 판독 명령을 2개의 통신 인터페이스의 오름차순 또는 2개의 통신 인터페이스의 내림차순에 따라 순차적으로 인터페이스 제어 유닛 1 및 인터페이스 제어 유닛(12)에 발송한다. 판독 명령을 수신하면, 인터페이스 제어 유닛 1 및 인터페이스 제어 유닛 2는 인터페이스 제어 유닛 1 및 인터페이스 제어 유닛 2에 의해 임시로 기억된 작동 명령을 명령 스케줄링 유닛에 전달한다. 명령 스케줄링 유닛은 수신한 명령 1을 명령 대기 열에 위치시키고, 다음으로 수신한 명령 2를 명령 대기 열에 위치시킨다.
예를 들어, 명령 스케줄링 유닛(12)이 높은 번호가 우선순위를 갖는 다중 통신 인터페이스의 번호에 관한 원칙에 따라 다중 인터페이스 제어 유닛(11)으로부터 작동 명령을 취득하고, 작동 명령을 명령 대기 열에 위치시키면, 다음의 과정이 포함될 수 있다.
다중 인터페이스 SSD의 2개의 인터페이스 제어 유닛(즉, 인터페이스 제어 유닛 1 및 인터페이스 제어 유닛 2)이 대응하는 통신 인터페이스를 통해 호스트 1 및 호스트 2에 의해 송신된 작동 명령(즉, 명령 1 및 명령 2)을 수신하면, 명령 스케줄링 유닛(12)이 작동 명령을 취득하기 위한 판독 명령을 2개의 통신 인터페이스의 내림차순에 따라 순차적으로 인터페이스 제어 유닛 1 및 인터페이스 제어 유닛(12)에 발송한다. 판독 명령을 수신하면, 인터페이스 제어 유닛 2 및 인터페이스 제어 유닛 1은 인터페이스 제어 유닛 2 및 인터페이스 제어 유닛 1에 의해 임시로 기억된 작동 명령을 명령 스케줄링 유닛에 전달한다. 명령 스케줄링 유닛은 수신한 명령 2를 명령 대기 열에 위치시키고, 다음으로 수신한 명령 1을 명령 대기 열에 위치시킨다.
또한, 작동 명령을 실행하여야 하는 경우, 명령 스케줄링 유닛(12)은 미리 대기하고 있는 작동 명령(previously-queued operating command)을 명령 대기 열로부터 가져와서, 이 미리 대기하고 있는 작동 명령을 플래시 제어 유닛(13)에 발송한다. 구체적으로, 작동 명령을 명령 대기 열로부터 인출하면, 작동 명령은 명령 대기 열의 선입선출(FIFO)에 따라 순차적으로 인출된다.
명령 스케줄링 유닛(12)에는 물리적으로 인터페이스 제어 유닛의 개수에 대응하는 개수의 입구 포트가 배치되고, 또한 출구 포트가 배치된다. 입구 포트의 각각은 입구 포트의 각각에 대응하는 인터페이스 제어 유닛의 출구 포트에 각각 접속된다. 출구 포트는 플래시 제어 유닛의 입구 포트에 접속된다. 명령 스케줄링 유닛(12)은 스케줄링 규칙에 따라 다중 인터페이스 제어 유닛(11)으로부터 작동 명령을 취득하고, 이 작동 명령을 입구 포트를 통해 명령 대기 열에 삽입하며, 명령 대기 열로부터 작동 명령을 인출한 후에 작동 명령을 출구 포트를 통해 플래시 제어 유닛에 발송한다.
플래시 제어 유닛(13)은 수신한 작동 명령을 플래시 작동 명령으로 변환하고 플래시 작동 명령을 통해 플래시 칩(14)을 동작시킨다.
구체적으로, 플래시 제어 유닛(13)은 작동 명령을 수신하고, 작동 명령을 플래시 작동 명령으로 변환한 후, 플래시 작동 명령을 플래시 칩(14)에 발송한다. 구체적으로, 플래시 칩은 성능의 개선을 위해 NAND 플래시를 사용할 수 있다. 인터페이스 제어 유닛을 통해 수신된 명령은 플래시 칩을 직접 작동시킬 수 없기 때문에, 작동 명령은, 데이터 판독 또는 데이터 기록 등과 같이 플래시 칩을 작동시키기 전에, 플래시 제어 유닛(13)에 의해 플래시 작동 명령으로 변환시킬 필요가 있다.
추가로, 용량에 대한 요건에 따라, 플래시 제어 유닛(13)은 하나 또는 다수의 플래시 칩(14)에 접속될 수 있다. 이와 달리, 본 발명의 실시예에 의하면, 다중 플래시 제어 유닛이 포함될 수 있다. 각각의 플래시 제어부가 하나 이상의 플래시 칩에 접속된다. 각각의 플래시 제어 유닛은 버스를 통해 명령 스케줄링 유닛(12)에 접속된다.
또한, 명령 스케줄링 유닛(12)이 작동 명령을 대기 열로부터 인출한 후에, 명령 스케줄링 유닛(12)이 작동 명령이 다수의 명령에 의해 이루어졌는지 여부를 판단한다. 작동 명령이 다수의 명령으로 이루어져 있다고 판단되면, 작동 명령은 다수의 명령으로 분할되고, 다수의 명령이 플래시 제어 유닛으로 발송된다. 작동 명령이 하나의 명령으로 이루어져 있다고 판단되면, 이 명령이 플래시 제어 유닛으로 발송된다.
또한, 플래시 제어 유닛(13)에 의해 수신된 작동 명령이 다수의 명령을 포함하는 경우, 다수의 명령은 대응하는 다수의 플래시 작동 명령으로 변환되고, 다수의 플래시 작동 명령은 플래시 칩으로 각각 발송됨으로써, 플래시 칩이 다수의 플래시 작동 명령을 병렬로 처리할 수 있게 된다. 플래시 제어 유닛(13)에 의해 수신된 작동 명령이 하나의 명령을 포함하는 경우, 이 명령은 대응하는 플래시 작동 명령으로 변환되고, 플래시 작동 명령은 플래시 칩으로 발송되어 처리된다.
또한, 플래시 칩이 작동 명령의 실행을 완료하면, 작동 명령의 실행이 명령 스케줄링 유닛(12)으로 복귀됨으로써, 명령 스케줄링 유닛(12)이 대응하는 작동 명령의 실행을 종료한다. 명령 스케줄링 유닛(12)은 작동 명령의 실행 결과를 수신하고, 작동 명령의 실행 결과를 이에 대응하는 인터페이스 제어 유닛(11)을 통해 호스트에 회신한다.
구체적으로, 작동 명령의 실행 결과가 대응하는 인터페이스 제어 유닛을 통해 호스트로 회신되면, 실행 결과는 인터럽트 방식을 채택함으로써 대응하는 인터페이스 제어 유닛을 통해 호스트로 직접 회신될 수 있다. 이와 달리, 실행 결과는 대응하는 인터페이스 제어 유닛에 발송될 수 있으며, 호스트는 작동 명령의 실행 결과가 인터페이스 제어 유닛에 기억되어 있는지 여부를 주기적으로 검출한다. 작동 명령의 실행 결과가 인터페이스 제어 유닛에 기억되어 있다고 검출되면, 호스트는 실행 결과를 취득한다. 본 발명은 구체적인 구현에 대한 제한이 없다. 구체적으로 채택되는 방법은 구체적인 상황에 따라 특정적으로 정해질 수 있다.
구체적으로, 작동 명령을 형성하는 다수의 명령이 동시에 실행되면, 먼저 완전히 실행된 명령이 먼저 명령 스케줄링 유닛으로 회신됨으로써, 명령 스케줄링 유닛은 명령의 실행을 종료한다.
본 발명의 실시예에서, 앞서 설명한 유닛은 다양한 하드웨어 처리 칩으로 구현될 수 있다. 예를 들어, 앞서 설명한 인터페이스 제어 유닛 및 명령 스케줄링 유닛은 PLD(Programable Logic Device) 칩(예를 들어, FPGA(Field-Programmable Gate Array)) 또는 CPLD(Complex Programmable Logic Device)를 사용하여 구현될 수 있으며, 플래시 제어 유닛은 다른 PLD 칩을 사용하여 구현된다. 또는 각각의 유닛은 PLD 칩을 사용하여 각각 구현될 수 있다.
본 발명의 실시예에서, 다수의 통신 인터페이스는 솔리드 스테이트 디스크 내에 배치됨으로써, 여러 호스트가 여러 통신 인터페이스를 통해 통신을 위한 솔리드 스테이트 디스크 인터페이스에 직접 접속될 수 있다. 이에 따라, 다수의 호스트가 SSD를 공유하는 경우에 생기는 문제를 피할 수 있으며, SSD에 직접 접속된 호스트를 제외한, 다른 호스트가 SSD에 간접적으로 액세스하여야 한다. 이에 따라, 여러 호스트는 솔리드 스테이트 디스크를 동시에 직접 액세스할 수 있으며, 이들 사이에서 고유의 방식에 의한 액세스를 수행하지 않아도 된다. 따라서, 액세스 대역폭이 증가하고, SSD의 높은 성능, 넓은 대역폭 및 대용량 등의 특징을 위한 각 호스트의 요건을 만족시킨다.
또한, 본 발명의 실시예에 따른 다중 인터페이스 SSD의 인터페이스가 PCIe 인터페이스인 경우, 액세스 대역폭은 다른 인터페이스에 비해, PCIe 인터페이스의 성능에 기초하여 더 상승함으로써, 호스트는 SSD의 높은 성능, 넓은 대역폭 및 대용량 등의 특징을 이용할 수 있다. 따라서, 시스템의 성능이 크게 향상된다.
또한, 호스트가 발송한 수신된 작동 명령이 명령 대기 열로부터 인출되면, 작동 명령이 다수의 명령으로 이루어졌는지 여부를 판단한다. 작동 명령이 다수의 명령으로 이루어져 있다고 판단되면, 작동 명령을 다수의 명령으로 분할하고, 다수의 명령을 동시에 전달한다. 이에 따라 다수의 명령이 병렬로 처리되어, 명령 처리 속도를 향상시킬 수 있다. 또한, 병렬로 처리되는 다수의 명령 중의 하나의 처리가 먼저 완료된 후에, 처리 결과가 명령 스케줄링 유닛으로 회신될 수 있어서, 명령 스케줄링 유닛은 명령의 실행을 종료한다. 따라서, SSD는 다른 명령의 처리에 대해 내부에서 가능한 많은 아이들 채널을 가질 수 있다. 이에 따라, SSD의 성능이 향상된다.
제3 실시예
본 발명의 실시예는 다중 인터페이스 솔리드 스테이트 디스크의 처리 방법을 제공한다. 도 4에 나타낸 바와 같이, 본 방법은, 이하의 단계를 포함한다.
단계 201: 다수의 통신 인터페이스를 통해 작동 명령을 수신한다.
구체적으로, 본 발명의 실시예에서, 다중 인터페이스 솔리드 스테이트 디스크에는 다수의 인터페이스 제어 유닛이 배치된다. 인터페이스 제어 유닛의 각각은 일종의 통신 인터페이스에 대응한다. 수신된 작동 명령은 호스트로부터 온 것이며, SSD 내의 플래시를 작동시키는 데에 사용된다.
또한, 작동 명령이 수신된 후에, 작동 명령은 계속해서 스케줄링을 대기할 인터페이스 제어 유닛 내에 임시로 기억된다.
단계 202: 스케줄링 규칙에 따라, 다수의 통신 인터페이스로부터 수신된 작동 명령을 취득하고, 이 작동 명령을 명령 대기 열에 삽입한다.
구체적으로, SSD의 명령 스케줄링 유닛은 스케줄링 규칙에 따라 스케줄링을 수행하고, 작동 명령을 명령 대기 열에 삽입하는 데에 사용될 수 있으며, 구체적으로 이하의 단계를 포함한다.
명령 스케줄링 유닛은 작동 명령을 취득하기 위한 취득 명령을 스케줄링 규칙에 따라 다수의 인터페이스 제어 유닛에 발송한다. 취득 명령을 수신하면, 인터페이스 제어 유닛은 작동 명령을 명령 스케줄링 유닛에 발송한다. 명령 스케줄링 유닛은 수신한 작동 명령을 명령 대기 열에 삽입한다.
명령 스케줄링 유닛은 다수의 통신 인터페이스의 폴링 원칙에 따라 또는 낮은 번호가 우선순위를 갖거나 높은 번호가 우선순위를 갖는 다수의 통신 인터페이스의 번호에 관한 원칙에 따라 다수의 인터페이스 제어 유닛 내의 작동 명령을 스케줄링할 수 있다. 앞서 설명한 스케줄링 규칙과 달리, 본 발명의 실시예에서, 사용자의 요구에 따라 다른 자체 규정된 스케줄링 규칙이 사용될 수 있으며, 이에 한정되는 것은 아니다.
스케줄링의 구체적인 구현에 대하여, 명령 스케줄링 유닛에 의해, 다양한 스케줄링 알고리즘에 따라 다수의 인터페이스 제어 유닛 내의 작동 명령에 대하여 제2 실시예에서 대응하는 설명이 있으므로, 반복해서 설명하지는 않는다.
단계 203: 명령 대기 열로부터 작동 명령을 인출한다.
구체적으로, 작동 명령을 명령 대기 열로부터 인출하면, 작동 명령은 명령 대기 열의 선입선출 원칙에 따라 순차적으로 인출된다.
단계 204: 작동 명령을 플래시 작동 명령으로 변환하고, 솔리드 스테이트 디스크 내의 플래시 칩을 동작시킨다.
단계 203 이후에, 도 5에 나타낸 바와 같이, 본 방법은 이하의 단계를 더 포함할 수 있다.
단계 2031: 작동 명령이 다수의 명령에 의해 이루어졌는지 여부를 판단한다. 작동 명령이 다수의 명령에 의해 이루어졌다고 판단되면, 단계 2032를 실행하고, 작동 명령이 하나의 명령에 의해 이루어졌다고 판단되면, 단계 2033을 실행한다.
단계 2032: 작동 명령을 다수의 명령으로 분할하고 단계 204를 실행한다. 즉, 다수의 명령은 솔리드 스테이트 디스크 내의 플래시 칩을 동작시키기 위해 다수의 대응하는 플래시 작동 명령으로 변환된다.
단계 2033: 단계 204를 실행한다. 즉, 하나의 명령은 솔리드 스테이트 디스크 내의 플래시 칩을 동작시키는 대응하는 플래시 작동 명령으로 변환된다.
구체적으로, 플래시 칩은 성능 개선을 위해 NAND 플래시를 채택할 수 있다. 통신 인터페이스를 통해 수신된 작동 명령은 플래시 칩을 직접 작동시킬 수 없기 때문에, 작동 명령은 플래시 칩을 작동시키기 전에 데이터 판독 또는 데이터 기록 등의 다른 제어 동작을 위한 플래시 작동 명령으로 변환할 필요가 있다.
단계 204 이후에, 본 방법은 이하의 단계를 포함할 수 있다.
작동 명령의 실행 결과는 명령 스케줄링 유닛으로 회신되며, 명령 스케줄링 유닛은 대응하는 작동 명령의 실행을 종료한다. 명령 스케줄링 유닛은 작동 명령의 실행 결과를 수신하고, 작동 명령의 실행 결과를 이에 대응하는 인터페이스 제어 유닛을 통해 호스트로 회신한다.
구체적으로, 작동 명령의 실행 결과가 대응하는 인터페이스 제어 유닛을 통해 호스트로 회신되면, 실행 결과는 인터럽트 방식을 채택함으로써 대응하는 인터페이스 제어 유닛을 통해 직접 호스트에 회신될 수 있다. 이와 달리, 실행 결과는 대응하는 이터페이스 제어 유닛으로 발송될 수 있으며, 호스트는 작동 명령의 실행 결과가 인터페이스 제어 유닛 내에 기억되어 있는지 여부를 주기적으로 검출하고, 작동 명령의 실행 결과가 인터페이스 제어 유닛 내에 기억되어 있다고 검출되면, 호스트는 실행 결과를 취득한다. 본 발명은 그 구체적인 구현에 대해서는 제한이 없다.
구체적으로 채택되는 방법은 구체적인 상황에 따라 특정적으로 정해질 수 있다.
구체적으로 작동 명령을 형성하는 다수의 명령이 동시에 실행되면, 먼저 완전히 실행된 명령이 먼저 명령 스케줄링 유닛으로 회신됨으로써, 명령 스케줄링 유닛은 명령의 실행을 종료한다.
구체적으로, 앞서 설명한 단계의 구체적인 구현을 위한 제1 실시예 및 제2 실시예와 관련된 설명을 참조하면 되므로, 반복해서 설명하지 않는다.
본 발명의 실시예에서, 호스트가 솔리드 스테이트 디스크의 다수의 통신 인터페이스를 통해 솔리드 스테이트 디스크에 작동 명령을 발송하면, 다수의 독립적으로 배치된 인터페이스 제어 유닛은 작동 명령을 수신하고, 명령 스케줄링 유닛은 수신된 작동 명령을 스케줄링하고 스케줄링 규칙에 따라 대기 열에 삽입함으로써, 수신된 작동 명령은 작동 시퀀스를 갖는다. 작동 명령을 동작시킬 필요가 있으면, 작동 명령이 대기 열로부터 인출되어 플래시 제어 유닛으로 발송된다. 이에 의해, 작동 명령이 제어 및 처리되고, 작동 결과가 취득된다. 따라서, 여러 호스트는 여러 통신 인터페이스를 통한 통신을 위한 솔리드 스테이트 디스크 인터페이스에 직접 접속될 수 있으며, SSD에 직접 접속된 호스트를 제외한, 다수의 호스트가 SSD를 공유하고 다른 호스트가 SSD에 간접적으로 액세스하여야 하는 경우에 생기는 문제를 피할 수 있다. 이에 따라, 여러 호스트는 솔리드 스테이트 디스크를 동시에 직접 액세스할 수 있다. 따라서, 액세스 대역폭이 증가하고, SSD의 높은 성능, 넓은 대역폭 및 대용량 등의 특징을 위한 각 호스트의 요건을 만족시킨다.
또한, 호스트에 의해 발송된 작동 명령이 대기 열로부터 인출되면, 작동 명령이 다수의 명령에 의해 이루어졌는지 여부가 판단된다. 작동 명령이 다수의 명령에 의해 이루어졌다고 판단되면, 작동 명령은 다수의 명령으로 분할되고, 다수의 명령은 동시에 전달된다. 이에 의해, 다수의 명령은 병렬로 처리되고, 명령 처리 속도가 증가한다. 또한, 병렬로 처리되는 다수의 명령 중의 하나의 처리가 완료되면, 처리 결과는 먼저, 명령 스케줄링 유닛으로 회신될 수 있으며, 명령 스케줄링 유닛은 명령의 실행을 종료한다. 따라서, SSD는 다른 명령의 처리에 대해 내부에서 가능한 많은 아이들 채널을 가질 수 있다. 이에 따라, SSD의 성능이 향상된다.
제4 실시예
본 발명의 실시예는 다중 인터페이스 솔리드 스테이트 디스크의 처리 시스템을 제공한다. 본 시스템은 하나 이상의 호스트와 다중 인터페이스 SSD를 포함한다. 하나의 호스트가 있는 경우, 이 호스트는 다중 인터페이스 SSD의 둘 이상의 통신 인터페이스에 접속될 수 있는 호스트이다. 호스트가 다수의 호스트이면, 각각의 호스트는 다중 인터페이스 SSD의 하나 이상의 통신 인터페이스에 접속될 수 있는 호스트이다.
본 발명의 실시예에서, 다중 인터페이스 SSD의 처리 시스템을 예로 들어 설명한다. 본 시스템은 다수의 호스트와 하나의 다중 인터페이스 SSD를 포함하며, 각각의 호스트는 통신 인터페이스를 포함한다. 도 6에 나타낸 바와 같이, 시스템은 다수의 호스트와 하나의 다중 인터페이스 SSD를 포함한다.
각각의 호스트는 다중 인터페이스 SSD와 통신하는 인터페이스가 배치되고, 인터페이스를 통해 다중 인터페이스 SSD에 접속된다. 호스트가 다중 인터페이스 SSD 드라이브를 성공적으로 구동하면, 호스트와 다중 인터페이스 SSD 사이에 직접 통신 접속이 달성될 수 있다. 또한, 다중 인터페이스 SSD는 호스트의 기억 장치로서 사용된다.
예를 들어, 호스트 1, 호스트 2,... 및 호스트 n은 각각 다중 인터페이스 SSD의 통신 인터페이스 1, 통신 인터페이스 2,... 및 통신 인터페이스 n(도시하지 않음)을 통해 다중 인터페이스 SSD에 접속된다. 호스트 1, 호스트 2,... 및 호스트 n이 다중 인터페이스 SSD에 작동 명령을 발송하면, 통신 인터페이스 1, 통신 인터페이스 2,... 및 통신 인터페이스 n에 일대일로 대응하는 인터페이스 제어 유닛 1, 인터페이스 제어 유닛 2,... 및 인터페이스 제어 유닛 n은 호스트 1, 호스트 2,... 및 호스트 n에 의해 발송된 작동 명령을 각각 수신한다.
여러 호스트는 여러 통신 인터페이스를 통해 동일한 SSD에 접속된다. 여러 호스트는 각자의 다중 인터페이스 SSD 드라이브를 구동시키며, 호스트의 독립된 기억 장치가 되도록 다중 인터페이스 SSD를 초기화함으로써, 다수의 호스트에 접속되는 다중 인터페이스 SSD는 여러 호스트에서의 독립된 기억 장치로서 도시되어 있다. 각각의 호스트에 의해 액세스되는 다중 인터페이스 SSD의 액세스 공간의 크기와 범위는 다중 인터페이스 SSD에 의해 외부적으로 표시되는 기억 장치의 크기이다.
구체적으로, 다중 인터페이스 SSD에 의한 다중 인터페이스 제어 유닛에 의해 수신되는 작동 명령에 대한 처리를 위해, 제1, 제2 및 제3 실시예에서 설명한 내용을 참조할 수 있으므로, 반복해서 설명하지는 않는다.
본 발명의 실시예에서, 다수의 통신 인터페이스는 다중 인터페이스 SSD 내에 배치되며, 여러 호스트는 여러 통신 인터페이스를 통한 통신을 위해 SSD 인터페이스에 직접 접속되기 때문에, 다수의 호스트가 SSD를 공유하여야 하는 경우에 생기는 문제를 피할 수 있다. SSD에 직접 접속된 호스트를 제외한, 다른 호스트가 SSD에 간접적으로 액세스해야 하기 때문에, 여러 호스트는 솔리드 스테이트 디스크를 동시에 직접 액세스할 수 있다. 따라서, 액세스 대역폭이 증가하고, SSD의 높은 성능, 넓은 대역폭 및 대용량 등의 특징을 위한 각 호스트의 요건을 만족시킨다.
본 발명의 실시예는 다중 인터페이스 SSD의 처리 시스템을 더 제공한다. 여기서는, 다중 인터페이스 SSD에 직접 접속되는 호스트에 대해 액티브-스탠바이(active-standby) 관계가 설정될 수 있다. 본 발명의 실시예에서, 처리 시스템을 구체적으로 예시하기 위한 예를 나타내며, 다중 인터페이스 SSD는 2개의 통신 인터페이스를 포함한다. 도 7에 나타낸 바와 같이, 시스템은 2개의 호스트(호스트 1 및 호스트 2)와 다중 인터페이스 SSD를 포함한다.
2개의 호스트의 각각은 다중 인터페이스 SSD에 접속된 인터페이스를 포함하며, 인터페이스를 통해 다중 인터페이스 SSD에 접속된다. 호스트가 SSD 드라이브를 성공적으로 구동하면, 호스트 1 및 호스트 2는 모두 다중 인터페이스 SSD를 독립적으로 액세스할 수 있다. 구체적인 구현 예로서, 호스트 1은 액티브 장치가 되도록 설정될 수 있으며, 호스트 2는 스탠바이 장치가 되도록 설정될 수 있다. 또한, 호스트 1과 호스트 2 사이에 링크 접속이 유지된다. 호스트 1과 호스트 2는 다중 인터페이스 SSD의 통신 인터페이스 1 및 통신 인터페이스 2를 통해 다중 인터페이스 SSD에 접속된다. 시스템이 정상이면, 호스트 1만이 다중 인터페이스 SSD와의 통신에 사용되며, 스탠바이 장치는 SSD를 액세스하지 않는다. 호스트 1이 실패하면, 스탠바이 상태의 호스트 2가 SSD의 액세스를 시작한다.
시스템이 정상이면, 호스트 1은 다중 인터페이스 SSD의 통신 인터페이스 1을 통해 작동 명령을 다중 인터페이스 SSD에 발송하고, 인터페이스 제어 유닛 1은 통신 인터페이스 1을 통해 작동 명령을 수신한다.
호스트 1이 실패하면, 호스트 2는 다중 인터페이스 SSD의 통신 인터페이스 2를 통해 작동 명령을 다중 인터페이스 SSD에 발송하고, 인터페이스 제어 유닛 2는 통신 인터페이스 2를 통해 작동 명령을 수신한다.
구체적으로, 다중 인터페이스 제어 유닛에 의해 수신된 작동 명령의 다중 인터페이스 SSD에 의한 처리에 대해서는, 제1, 제2 및 제3 실시예의 설명을 참조하면 되므로, 반복해서 설명하지는 않는다.
본 발명의 실시예에서, 다중 인터페이스 SSD에 접속되는 여러 호스트 사이에 액티브/스탠바이 관계가 설정된다. 액티브 호스트가 실패하면, 스탠바이 호스트가 대응하는 동작의 실행을 계속하게 되므로, 시스템의 신뢰성이 향상된다.
본 발명의 실시예는 또한, 다중 인터페이스 SSD의 처리 시스템으로서, 다중 인터페이스 SSD와 통신하는 호스트가 다수의 통신 인터페이스를 갖는 호스트로서 설정될 수 있는 시스템을 제공한다. 본 발명의 실시예는 처리 시스템을 구체적으로 예시하기 위한 예를 나타내며, 호스트는 2개의 통신 인터페이스를 갖는 호스트가 되도록 설정된다. 도 8에 나타낸 바와 같이, 시스템은 호스트 및 다중 인터페이스 SSD를 포함한다.
호스트는 다중 인터페이스 SSD 드라이브와 다중 인터페이스 SSD와 통신할 수 있는 2개의 인터페이스를 포함한다. 호스트의 인터페이스 1 및 인터페이스 2는 각각 다중 인터페이스 SSD의 통신 인터페이스 1 및 통신 인터페이스 2에 접속된다. 호스트의 각각의 인터페이스는 다중 인터페이스 SSD 드라이브의 구동을 통해 다중 인터페이스 SSD에 대해 독립적으로 액세스할 수 있다. 또한, 2개의 독립적인 다중 인터페이스 SSD가 호스트에 접속된 것이 도시되어 있다. 구체적인 구현 예에서, 호스트는 2개의 인터페이스 중의 하나를 통해 다중 인터페이스 SSD에 작동 명령을 발송할 수 있으며, 또한, 2개의 인터페이스를 통해 작동 명령을 다중 인터페이스 SSD에 동시에 발송할 수도 있다. 작동 명령이 2개의 인터페이스를 통해 다중 인터페이스 SSD에 동시에 발송되면, 호스트는 2개의 다중 인터페이스 SSD를 동시에 액세스할 수 있는 것이 호스트 측에 도시되어 있다. 따라서, 호스트와 다중 인터페이스 SSD 간의 대역폭이 넓어짐으로써, SSD의 성능이 향상될 수 있다.
구체적으로, 다수의 인터페이스 제어 유닛에 의해 수신된 작동 명령의 다중 인터페이스 SSD에 의한 처리에 대해서는, 제1, 제2 및 제3 실시예의 설명을 참조하면 되므로, 반복해서 설명하지는 않는다.
본 발명의 실시예에서, 다수의 인터페이스는 동일한 호스트에 배치된다. 다수의 인터페이스는 다중 인터페이스 SSD의 여러 통신 인터페이스에 접속된다. 호스트의 다중 인터페이스 SSD 드라이브 프로그램이 구동되면, 호스트의 다수의 인터페이스는 작동 명령을 다중 인터페이스 SSD에 동시에 발송할 수 있다. 호스트와 SSD 사이의 인터페이스 대역폭이 넓어진다. 여러 호스트는 솔리드 스테이트 디스크 카드의 솔리드 스테이트 디스크를 동시에 직접 액세스할 수 있다. 액세스 대역폭이 증가하고, 높은 성능, 넓은 대역폭 및 대용량 등의 특징을 위한 각 호스트의 요건을 만족시킨다.
이상의 설명은, 본 발명은 필요한 범용의 하드웨어와 소프트웨어에 의해 구현될 수 있으며, 명확하게는 하드웨어에 의해 구현될 수 있지만, 많은 경우에는 소프트웨어에 의해 구현된다는 것을 당업자라면 알 수 있을 것이다. 이러한 이해에 기초하여, 본 발명의 기술적 방안은 소프트웨어 제품의 형태로 실질적으로 구현도리 수 있다. 컴퓨터 소프트웨어 제품은 플로피 디스크, 하드 디스크, 광 디스크 등의 판독가능한 기억 매체가 될 수 있으며, 본 발명의 실시예에서 설명한 방법을 컴퓨터 장치(예를 들어, 개인용 컴퓨터, 서버 또는 네트워크 장치)로 하여금 실행하도록 하기 위한 명령어를 포함한다.
이상의 설명은 본 발명의 구체적인 구현에 불과하며, 본 발명의 보호 범위를 제한하는 것으로 해석되어서는 안 된다. 본 발명에 의해 개시된 기술적 범위 내에서 당업자가 용이하게 생각할 수 있는 다양한 변형 및 변경도 본 발명의 범위에 속한다. 따라서, 본 발명의 보호 범위는 청구범위의 보호 범위에 의해 정해진다.
본 출원은 "MULTI-INTERFACE SOLID STATE DISK, PROCESSING METHOD AND SYSTEM OF MULTI-INTERFACE SOLID STATE DISK"란 명칭으로 2010년 5월 27일에 중국특허청에 제출된 중국특허출원 201010184698.9호에 대하여 우선권을 주장하며, 그 전체 내용을 본원에 참조에 의해 원용한다.

Claims (10)

  1. 다중 인터페이스 솔리드 스테이트 디스크(multi-interface solid state disk)에 있어서,
    다수의 인터페이스 제어 유닛(multiple interface control unit), 명령 스케줄링 유닛(command scheduling unit), 플래시 제어 유닛(flash control unit) 및 플래시 칩(flash chip)을 포함하며,
    각각의 인터페이스 제어 유닛은 통신 인터페이스에 대응하고,
    상기 인터페이스 제어 유닛은 상기 통신 인터페이스를 통해 작동 명령(operating command)을 수신하며,
    상기 명령 스케줄링 유닛은 스케줄링 규칙(scheduling rule)에 따라 상기 다수의 인터페이스 제어 유닛으로부터 작동 명령을 취득해서 명령 대기 열(command queue)에 삽입하고,
    상기 명령 스케줄링 유닛은 또한 상기 명령 대기 열로부터 작동 명령을 인출해서 상기 플래시 제어 유닛에 발송하며,
    상기 플래시 제어 유닛은 수신한 작동 명령을 플래시 작동 명령으로 변환하고, 이 플래시 작동 명령을 통해 상기 플래시 칩을 동작시키는 것을 특징으로 하는 다중 인터페이스 솔리드 스테이트 디스크.
  2. 제1항에 있어서,
    상기 명령 스케줄링 유닛은 스케줄링 규칙에 따라 상기 다중 인터페이스 제어 유닛으로부터 작동 명령을 수신하고,
    상기 명령 스케줄링 유닛은 상기 다수의 통신 인터페이스의 폴링 원칙(polling principle)에 따라, 또는 낮은 번호가 우선순위를 갖거나 높은 번호가 우선순위를 갖는 다수의 통신 인터페이스의 번호에 관한 원칙에 따라, 작동 명령을 취득하는, 다중 인터페이스 솔리드 스테이트 디스크.
  3. 제1항에 있어서,
    상기 명령 스케줄링 유닛은, 명령 대기 열로부터 작동 명령을 인출하면, 인출한 작동 명령이 다수의 명령에 의해 이루어졌는지 여부를 판단해서, 작동 명령이 다수의 명령에 의해 이루어졌다고 판단되면, 작동 명령을 다수의 명령으로 분할해서 상기 플래시 제어 유닛에 발송하고, 작동 명령이 하나의 명령에 의해 이루어졌다고 판단되면, 그 하나의 작동 명령을 상기 플래시 제어 유닛에 발송하는, 다중 인터페이스 솔리드 스테이트 디스크.
  4. 제1항에 있어서,
    상기 통신 인터페이스는 개선된 피씨아이이(PCIe: peripheral component interconnect express) 인터페이스인 것인, 다중 인터페이스 솔리드 스테이트 디스크.
  5. 다중 인터페이스 솔리드 스테이트 디스크의 처리 방법에 있어서,
    다수의 통신 인터페이스를 통해 작동 명령을 수신하는 단계;
    스케줄링 규칙에 따라 상기 다수의 통신 인터페이스로부터 수신된 작동 명령을 취득하고, 취득한 작동 명령을 명령 대기 열에 삽입하는 단계;
    상기 명령 대기 열로부터 작동 명령을 인출하는 단계; 및
    작동 명령을 플래시 작동 명령으로 변환하고, 솔리드 스테이트 디스크 내의 플래시 칩을 동작시키는 단계
    를 포함하는 것을 특징으로 하는 방법.
  6. 제5항에 있어서,
    상기 스케줄링 규칙에 따라 다수의 통신 인터페이스로부터 수신된 작동 명령을 취득하는 단계는, 상기 다수의 통신 인터페이스의 폴링 원칙(polling principle)에 따라 또는 낮은 번호가 우선순위를 갖거나 높은 번호가 우선순위를 갖는 다수의 통신 인터페이스의 번호에 관한 원칙에 따라 작동 명령을 취득하는 단계를 포함하는, 방법.
  7. 제5항에 있어서,
    상기 명령 대기 열로부터 작동 명령을 인출하는 단계는, 인출한 작동 명령이 다수의 명령에 의해 이루어졌는지 여부를 판단해서, 작동 명령이 다수의 명령에 의해 이루어졌다고 판단되면, 작동 명령을 다수의 명령으로 분할하고, 다수의 명령을 다수의 대응하는 플래시 작동 명령으로 변환하며, 솔리드 스테이트 디스크 내의 플래시 칩을 동작시키며, 작동 명령이 하나의 명령에 의해 이루어졌다고 판단되면, 그 하나의 작동 명령을 이에 대응하는 플래시 작동 명령으로 변환하고, 솔리드 스테이트 디스크 내의 플래시 칩을 동작시키는 단계를 포함하는, 방법.
  8. 다중 인터페이스 솔리드 스테이트 디스크의 처리 시스템에 있어서,
    하나 이상의 호스트; 및
    하나 이상의 다중 인터페이스 솔리드 스테이트 디스크
    를 포함하며,
    상기 호스트는 다중 인터페이스 솔리드 스테이트 디스크 드라이브를 포함하며, 상기 호스트와 상기 다중 인터페이스 솔리드 스테이트 디스크 간의 직접 통신 접속은 상기 드라이브를 구동시킴으로써 달성되고, 상기 호스트는 상기 다중 인터페이스 솔리드 스테이트 디스크에 작동 명령을 발송하도록 되어 있으며,
    상기 다중 인터페이스 솔리드 스테이트 디스크는, 다중 인터페이스 제어 유닛, 명령 스케줄링 유닛, 플래시 제어 유닛 및 플래시 칩을 포함하며, 각각의 인터페이스 제어 유닛은 통신 인터페이스에 대응하고, 상기 인터페이스 제어 유닛은 통신 인터페이스를 통해 상기 호스트에 의해 송신된 작동 명령을 수신하고, 상기 명령 스케줄링 유닛은 스케줄링 규칙에 따라 상기 다수의 인터페이스 제어 유닛으로부터 작동 명령을 취득해서 명령 대기 열에 삽입하도록 되어 있으며, 상기 명령 스케줄링 유닛은 상기 명령 대기 열로부터 작동 명령을 인출해서 상기 플래시 제어 유닛에 발송하도록 되어 있으며, 상기 플래시 제어 유닛은 수신한 작동 명령을 플래시 작동 명령으로 변환하고 이 변환한 작동 명령을 통해 상기 플래시 칩을 동작시키도록 된 것을 특징으로 하는 시스템.
  9. 제8항에 있어서,
    상기 호스트는 2개의 호스트이며, 상기 호스트는 상기 다중 인터페이스 솔리드 스테이트 디스크의 하나 이상의 통신 인터페이스에 접속된 호스트이고,
    상기 시스템은, 하나의 호스트를 액티브(active) 장치가 되도록 설정하고, 다른 호스트를 스탠바이(standby) 장치가 되도록 설정하며,
    상기 액티브 장치와 상기 스탠바이 장치 사이에 링크 통신이 유지되도록 한 것인, 시스템.
  10. 제7항 내지 제9항 중 어느 한 항에 있어서,
    상기 통신 인터페이스는 개선된 피씨 아이이(PCIe: peripheral component interconnect express) 인터페이스인 것인, 시스템.
KR1020127013992A 2010-05-27 2011-05-27 다중 인터페이스 솔리드 스테이트 디스크, 및 다중 인터페이스 솔리드 스테이트 디스크의 처리 방법 및 시스템 KR20120087980A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201010184698.9 2010-05-27
CN201010184698A CN101833989A (zh) 2010-05-27 2010-05-27 多接口固态硬盘及其处理方法和***
PCT/CN2011/074760 WO2011147324A1 (zh) 2010-05-27 2011-05-27 多接口固态硬盘及其处理方法和***

Publications (1)

Publication Number Publication Date
KR20120087980A true KR20120087980A (ko) 2012-08-07

Family

ID=42718030

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127013992A KR20120087980A (ko) 2010-05-27 2011-05-27 다중 인터페이스 솔리드 스테이트 디스크, 및 다중 인터페이스 솔리드 스테이트 디스크의 처리 방법 및 시스템

Country Status (8)

Country Link
US (1) US20120233386A1 (ko)
EP (1) EP2492916A4 (ko)
KR (1) KR20120087980A (ko)
CN (1) CN101833989A (ko)
BR (1) BR112012014266A2 (ko)
MX (1) MX2012005934A (ko)
RU (1) RU2012128534A (ko)
WO (1) WO2011147324A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10838766B2 (en) 2017-11-29 2020-11-17 SK Hynix Inc. Memory system and operating method thereof

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8082384B2 (en) 2008-03-26 2011-12-20 Microsoft Corporation Booting an electronic device using flash memory and a limited function memory controller
CN101833989A (zh) * 2010-05-27 2010-09-15 华为技术有限公司 多接口固态硬盘及其处理方法和***
US9189166B2 (en) 2011-04-11 2015-11-17 Ineda Systems Pvt. Ltd. Multi-host SATA controller
WO2012143944A2 (en) * 2011-04-18 2012-10-26 Ineda Systems Pvt. Ltd Multi-host nand flash controller
CN102566943B (zh) * 2011-12-31 2015-03-11 记忆科技(深圳)有限公司 基于固态硬盘的通讯方法及固态硬盘
CN103150427A (zh) * 2013-02-19 2013-06-12 浪潮电子信息产业股份有限公司 一种基于ssd硬盘缓存加速与备份的raid设计方法
US8812744B1 (en) 2013-03-14 2014-08-19 Microsoft Corporation Assigning priorities to data for hybrid drives
US9626126B2 (en) 2013-04-24 2017-04-18 Microsoft Technology Licensing, Llc Power saving mode hybrid drive access management
US9946495B2 (en) 2013-04-25 2018-04-17 Microsoft Technology Licensing, Llc Dirty data management for hybrid drives
CN103809920B (zh) * 2014-02-13 2017-05-17 杭州电子科技大学 一种超大容量固态硬盘的实现方法
US9933980B2 (en) 2014-02-24 2018-04-03 Toshiba Memory Corporation NAND raid controller for connection between an SSD controller and multiple non-volatile storage units
US9881680B2 (en) 2014-06-03 2018-01-30 Qualcomm Incorporated Multi-host power controller (MHPC) of a flash-memory-based storage device
US9632953B2 (en) * 2014-06-03 2017-04-25 Qualcomm Incorporated Providing input/output virtualization (IOV) by mapping transfer requests to shared transfer requests lists by IOV host controllers
US9690720B2 (en) 2014-06-03 2017-06-27 Qualcomm Incorporated Providing command trapping using a request filter circuit in an input/output virtualization (IOV) host controller (HC) (IOV-HC) of a flash-memory-based storage device
US20160070665A1 (en) * 2014-09-08 2016-03-10 Htc Corporation Portable electronic device and user data access method therefor
KR102367982B1 (ko) 2015-06-22 2022-02-25 삼성전자주식회사 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템
TWI612429B (zh) * 2016-04-12 2018-01-21 緯創資通股份有限公司 伺服器系統及其資料存取方法
US10909047B2 (en) * 2016-06-01 2021-02-02 Raymx Microelectronics Corp. Flash memory control device capable of detecting type of interface and method thereof
CN106681945A (zh) * 2016-11-24 2017-05-17 天津津航计算技术研究所 多协议接口的固态硬盘
CN106843747A (zh) * 2016-11-24 2017-06-13 天津津航计算技术研究所 双接口数据实时共享固态硬盘
JP6812900B2 (ja) * 2017-05-17 2021-01-13 富士通株式会社 ストレージ装置、ストレージ制御装置、およびストレージ制御プログラム
CN109445686B (zh) * 2018-09-28 2020-11-17 方一信息科技(上海)有限公司 一种存储磁盘以及存取数据的方法
CN109976772A (zh) * 2019-03-29 2019-07-05 深圳忆联信息***有限公司 Ssd自动开卡和安装***及其方法
CN110888592B (zh) * 2019-05-15 2023-09-15 天津大学深圳研究院 基于延迟ssd***智能并行资源利用的请求调度方法及***
US11768613B2 (en) * 2019-06-25 2023-09-26 Micron Technology, Inc. Aggregation and virtualization of solid state drives
US11573708B2 (en) 2019-06-25 2023-02-07 Micron Technology, Inc. Fail-safe redundancy in aggregated and virtualized solid state drives
US11055249B2 (en) * 2019-06-25 2021-07-06 Micron Technology, Inc. Access optimization in aggregated and virtualized solid state drives
US11513923B2 (en) 2019-06-25 2022-11-29 Micron Technology, Inc. Dynamic fail-safe redundancy in aggregated and virtualized solid state drives
US11762798B2 (en) * 2019-06-25 2023-09-19 Micron Technology, Inc. Aggregated and virtualized solid state drives with multiple host interfaces
US10942846B2 (en) 2019-06-25 2021-03-09 Micron Technology, Inc. Aggregated and virtualized solid state drives accessed via multiple logical address spaces
US10942881B2 (en) 2019-06-25 2021-03-09 Micron Technology, Inc. Parallel operations in aggregated and virtualized solid state drives
KR20210105201A (ko) 2020-02-18 2021-08-26 삼성전자주식회사 다중-호스트를 지원하도록 구성된 스토리지 장치 및 그것의 동작 방법
CN111897491A (zh) * 2020-07-15 2020-11-06 上海实业交通电器有限公司 一种nor flash操作处理方法、终端、计算机设备及存储介质
CN112114744A (zh) * 2020-08-10 2020-12-22 西安交通大学 一种多通道全互联架构的ssd固态盘及其控制方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030065861A1 (en) * 2001-09-28 2003-04-03 Clark Clyde S. Dual system masters
WO2003044732A1 (fr) * 2001-11-23 2003-05-30 Netac Technology Co., Ltd. Procede de fabrication de dispositif a memoire a semiconducteurs et dispositif portant des interfaces multiples
US7870334B2 (en) * 2003-11-12 2011-01-11 International Business Machines Corporation Distributed task queues in a multiple-port storage system
CN1558305A (zh) * 2004-01-19 2004-12-29 中国科学院计算技术研究所 一种总线式通用串行总线复用器
US7685374B2 (en) * 2007-07-26 2010-03-23 Siliconsystems, Inc. Multi-interface and multi-bus structured solid-state storage subsystem
US20090100174A1 (en) * 2007-09-07 2009-04-16 Sushma Annareddy Method and system for automatic polling of multiple device types
CN101398745B (zh) * 2007-09-29 2011-12-21 群联电子股份有限公司 并行数据存取架构的固态盘存储***与固态盘控制器
CN101149664A (zh) * 2007-10-26 2008-03-26 华为技术有限公司 固态硬盘及处理其管理数据的方法
US20090150894A1 (en) * 2007-12-10 2009-06-11 Ming Huang Nonvolatile memory (NVM) based solid-state disk (SSD) system for scaling and quality of service (QoS) by parallelizing command execution
US8140724B1 (en) * 2008-08-22 2012-03-20 Marvell International Ltd. SATA pass through port
US8756369B2 (en) * 2008-09-26 2014-06-17 Netapp, Inc. Priority command queues for low latency solid state drives
CN101373628B (zh) * 2008-10-14 2011-12-28 宋涛 固态硬盘
CN101833989A (zh) * 2010-05-27 2010-09-15 华为技术有限公司 多接口固态硬盘及其处理方法和***

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10838766B2 (en) 2017-11-29 2020-11-17 SK Hynix Inc. Memory system and operating method thereof

Also Published As

Publication number Publication date
EP2492916A1 (en) 2012-08-29
CN101833989A (zh) 2010-09-15
RU2012128534A (ru) 2014-01-20
EP2492916A4 (en) 2013-01-23
BR112012014266A2 (pt) 2017-04-04
US20120233386A1 (en) 2012-09-13
WO2011147324A1 (zh) 2011-12-01
MX2012005934A (es) 2012-06-25

Similar Documents

Publication Publication Date Title
KR20120087980A (ko) 다중 인터페이스 솔리드 스테이트 디스크, 및 다중 인터페이스 솔리드 스테이트 디스크의 처리 방법 및 시스템
KR101744465B1 (ko) 데이터를 저장하기 위한 방법 및 장치
KR101491484B1 (ko) 스케일러블 스토리지 디바이스들
US20140068134A1 (en) Data transmission apparatus, system, and method
KR102427550B1 (ko) 재구성 가능한 멀티 포트들을 구비한 PCIe 스토리지 시스템을 위한 서비스 품질을 인식하는 입출력 관리
US20150127691A1 (en) Efficient implementations for mapreduce systems
US8707073B2 (en) Energy-efficient polling loop
CN111722786A (zh) 基于NVMe设备的存储***
AU2015402888B2 (en) Computer device and method for reading/writing data by computer device
CN104123228A (zh) 一种数据存储***及其使用方法
US9116881B2 (en) Routing switch apparatus, network switch system, and routing switching method
US9898205B1 (en) Scheduling of commands in a storage area network to minimize latency
CN113196225A (zh) 开放信道矢量命令执行
US20130151885A1 (en) Computer management apparatus, computer management system and computer system
CN112506431B (zh) 基于磁盘设备属性的i/o指令调度方法及装置
CN105653213A (zh) 一种基于Freescale P3041的双控磁盘阵列
CN102521155B (zh) 实现表项在物理存储器上动态分配的方法和装置
EP2300925B1 (en) System to connect a serial scsi array controller to a storage area network
US11971771B2 (en) Peer storage device messaging for power management
US20230362084A1 (en) Rational value rate limiter
US20130132621A1 (en) Method and apparatus to share hardware resources across storage controllers within a system using resource sharing module
CN117938848A (zh) 数据传输方法、传输通道分配方法、计算设备及管理设备

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application