1 |
1
컴퓨팅 시스템의 동작 방법에 있어서:입출력 요청에 대응하는 커맨드 엔트리를 서브미션 큐에 저장하는 단계;상기 서브미션 큐로부터 상기 커맨드 엔트리를 페치하는 단계;저장 장치의 제어에 따라 호스트 메모리의 내부에서 상기 입출력 요청에 대응하는 데이터를 이동시키는 단계;상기 데이터의 이동 동작 이후에, 상기 입출력 요청에 대한 컴플리션을 컴플리션 큐에 업데이트하는 단계; 및상기 컴플리션 큐의 업데이트 이후에, 상기 호스트 메모리의 상기 데이터를 상기 저장 장치로 전송하거나, 상기 저장 장치의 데이터를 상기 호스트 메모리로 전송하는 단계를 포함하는 방법
|
2 |
2
제 1 항에 있어서,상기 데이터를 이동하는 단계는,상기 호스트 메모리의 데이터 어레이와 상기 호스트 메모리의 호스트 메모리 버퍼 사이에서 데이터 이동 요청에 응답하여 상기 데이터를 복사하는 단계를 포함하고,상기 호스트 메모리 버퍼는 상기 저장 장치에 의해 제어되는 방법
|
3 |
3
제 2 항에 있어서,DMA(direct memory access) 제어기 혹은 비휘발성 메모리 드라이버의 제어에 따라 상기 호스트 메모리 내부에서 상기 데이터가 이동되는 방법
|
4 |
4
제 3 항에 있어서,상기 데이터를 이동하는 단계는,상기 저장 장치에서 상기 DMA 제어기의 특수 기능 레지스터 혹은 비휘발성 메모리 드라이버의 사전에 결정된 어드레스에 쓰기/읽기 동작을 통해 상기 호스트 장치로 상기 데이터 이동 요청을 전송하는 단계를 포함하는 방법
|
5 |
5
제 3 항에 있어서,상기 데이터를 이동하는 단계는,호스트 장치에서 벤더 스페시픽 커맨드 혹은 BAR(base address register) 어드레스를 통해 상기 DMA 제어기의 특수 기능 레지스터 혹은 비휘발성 메모리 드라이버의 사전에 결정된 어드레스를 상기 저장 장치에 알려주는 단계; 및상기 알려준 어드레스를 이용하여 상기 호스트 장치로 상기 데이터 이동 요청을 전송하는 단계를 포함하는 방법
|
6 |
6
제 3 항에 있어서,상기 데이터 이동 요청은 PCIe(peripheral component interconnect express) 인터페이스에 따른 TLP(transaction layer packets) 혹은 DLP(data link layer packets)으로 상기 저장 장치에서 상기 호스트 장치로 전송되는 방법
|
7 |
7
제 1 항에 있어서,상기 호스트 메모리를 코어 혹은 큐에 따라 여러 개로 분할하는 단계; 및상기 코어 혹은 큐에 따라 상기 분할된 호스트 메모리들을 상기 저장 장치의 RAM(random access memory) 캐쉬로 이용하는 단계를 더 포함하는 방법
|
8 |
8
제 1 항에 있어서,상기 호스트 메모리를 네임 스페이스(name space) 혹은 파티션에 따라 여러 개로 분할하는 단계; 및상기 네임 스페이스 혹은 파티션에 따라 상기 분할된 호스트 메모리들을 상기 저장 장치의 RAM 캐쉬로 이용하는 단계를 더 포함하는 방법
|
9 |
9
데이터 어레이 및 호스트 메모리 버퍼를 갖는 호스트 메모리를 포함하는 호스트 장치; 및상기 호스트 장치에 연결되고, 적어도 하나의 비휘발성 메모리 장치 및 상기 적어도 하나의 비휘발성 메모리 장치를 제어하는 메모리 제어기를 포함하는 저장 장치를 포함하고,상기 호스트 메모리 버퍼는, 상기 저장 장치를 관리하기 위한 메타 데이터를 저장하는 메타 데이터 영역; 및 입출력 요청에 대응하는 데이터를 임시로 저장하는 데이터 캐쉬 영역을 포함하고,상기 저장 장치는 상기 입출력 요청에 응답하여 상기 데이터 어레이와 상기 데이터 캐쉬 영역 사이에서 데이터 이동 요청을 상기 호스트 장치로 전송하는 컴퓨팅 시스템
|
10 |
10
제 9 항에 있어서,상기 호스트 장치는 상기 데이터 이동 요청에 응답하여 쓰기 커맨드에 대응하는 쓰기 데이터를 상기 데이터 어레이로부터 상기 데이터 캐쉬 영역으로 복사하고, 상기 저장 장치는 상기 데이터 어레이로부터 데이터 캐쉬 영역으로 상기 데이터가 복사될 때 상기 쓰기 커맨드에 대한 컴플리션을 상기 호스트 장치에 업데이트하고, 상기 컴플리션의 업데이트 이후에, 상기 데이터 캐쉬 영역의 데이터는 상기 저장 장치로 쓰여지고,읽기 커맨드에 대응하는 어드레스가 상기 호스트 메모리에서 히트될 때, 상기 호스트 장치는 상기 데이터 이동 요청에 응답하여 상기 읽기 커맨드에 대응하는 읽기 데이터를 상기 데이터 캐쉬 영역으로부터 상기 데이터 어레이로 복사하고, 상기 저장 장치는 상기 데이터 캐쉬 영역으로부터 상기 데이터 어레이로 상기 읽기 데이터가 복사될 때 상기 읽기 커맨드에 대한 컴플리션을 상기 호스트 장치에 업데이트하고, 상기 컴플리션 업데이트 이후에, 상기 저장 장치의 데이터가 상기 데이터 캐쉬 영역으로 전송되는 컴퓨팅 시스템
|