KR101137297B1 - Mobile storage control method - Google Patents

Mobile storage control method Download PDF

Info

Publication number
KR101137297B1
KR101137297B1 KR1020100032935A KR20100032935A KR101137297B1 KR 101137297 B1 KR101137297 B1 KR 101137297B1 KR 1020100032935 A KR1020100032935 A KR 1020100032935A KR 20100032935 A KR20100032935 A KR 20100032935A KR 101137297 B1 KR101137297 B1 KR 101137297B1
Authority
KR
South Korea
Prior art keywords
memory
command
processor
interrupt
storage
Prior art date
Application number
KR1020100032935A
Other languages
Korean (ko)
Other versions
KR20110113503A (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 KR1020100032935A priority Critical patent/KR101137297B1/en
Publication of KR20110113503A publication Critical patent/KR20110113503A/en
Application granted granted Critical
Publication of KR101137297B1 publication Critical patent/KR101137297B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt

Abstract

본 발명은 모바일 스토리지 제어 방법에 관한 것이다. 모바일의 스토리지 제어 방법에 있어서, (a) 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신하는 단계, (b) 호스트 프로세서가 DP 메모리에 명령어 및 데이터를 저장하는 단계, (c) 명령어 및 데이터가 저장된 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 전송하는 단계, (d) 인터럽트를 수신한 스토리지 프로세서가 DP 메모리에 저장된 명령어 및 데이터를 해독하는 단계, (e) 스토리지 프로세서가 해독한 명령어에 상응하는 동작을 수행하는 단계, (f) 스토리지 프로세서가 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 DP 메모리로 전송하는 단계, (g) DP 메모리는 수신한 명령어 응답에 대한 인터럽트를 호스트 프로세서로 전송하는 단계 및 (h) 명령어 응답에 대한 인터럽트를 수신한 호스트 프로세서가 DP 메모리로부터 명령어 응답을 수신하는 단계를 포함한다.The present invention relates to a mobile storage control method. A method of controlling storage of a mobile device, the method comprising: (a) receiving a command input from an outside of the mobile by the host processor, (b) storing the command and data in the DP memory by the host processor, and (c) storing the command and data in the DP memory. Generating and sending an interrupt to the storage processor by the stored DP memory; (d) the storage processor receiving the interrupt decrypts the instructions and data stored in the DP memory; (F) transmitting a command response, which is a result of the storage processor performing an operation corresponding to the command, to the DP memory, and (g) the DP memory transmitting an interrupt for the received command response to the host processor. Step and (h) instructions from the DP memory by the host processor receiving the interrupt for the command response. Receiving a response.

Description

모바일 스토리지 제어 방법{MOBILE STORAGE CONTROL METHOD}How to control your mobile storage {MOBILE STORAGE CONTROL METHOD}

본 발명은 모바일 스토리지 제어 방법에 관한 것이다.
The present invention relates to a mobile storage control method.

모바일 기기를 이용한 영화, 게임 및 인터넷 등과 같은 멀티미디어 서비스가 보편화 되고 멀티미디어 기능이 증대되고 있다. 이에 따라 저전력 및 고속으로 저장매체(스토리지, Storage)를 관리 및 운용할 시스템이 요구되고 있다.Multimedia services such as movies, games, and the Internet using mobile devices are becoming more common and multimedia functions are increasing. Accordingly, a system for managing and operating storage media (storage, storage) at low power and high speed is required.

종래 기술은 크게 두 가지로 나눌 수 있다. 우선, 제1 세대 기술로 호스트 프로세서에 DRAM(Dynamic-Random-Access-Memory) 및 NAND(NAND 구조의 비휘발성 메모리)를 직접적으로 붙여서 사용하는 구조이다. 이 구조에서 프로세서가 직접 NAND 메모리 운용을 위해 NFC(NAND-Flash-Controller) 및 FTL(Flash-Translation-Layer) 등을 운용하는 것이다. 이는 호스트 프로세서에 부담이 되어 성능이 저하되는 단점이 있다. 또한, 새로운 공정의 NAND 메모리가 사용될 때마다 NFC 또는 FTL이 수정되어야 하므로 생산 효율이 저하된다.The prior art can be largely divided into two. First, the first generation technology is a structure in which DRAM (Dynamic-Random-Access-Memory) and NAND (NAND structured nonvolatile memory) are directly attached to a host processor. In this structure, the processor operates NAND-Flash-Controller (NFC) and Flash-Translation-Layer (FTL) for direct NAND memory operation. This is a burden on the host processor has a disadvantage in that performance is reduced. In addition, each time a new process NAND memory is used, the NFC or FTL must be modified, resulting in reduced production efficiency.

다른 기술은 제2 세대 기술로 호스트 프로세서에 모바일 DRAM과 NAND 메모리 전용 제어기가 붙여진 형태이다. 이는 제1 세대 기술과 달리 NAND 메모리가 호스트 프로세서와 직접 붙지 않는다. 이와 같은 구조에 의해서 제1 세대 기술에 비해 호스트 프로세서가 NAND 메모리를 처리하는 부담이 줄어들었다 할 수 있다. 그러나, NAND 전용 제어기의 적은 버퍼(Buffer) 용량에 의해서 대용량 데이터를 송수신 할 경우 성능이 저하된다는 단점이 있다. 또한, 하드웨어 접속에 있어서도 DRAM 연결을 위한 DDR(Double-Data-Rate) 인터페이스와 NAND 메모리 연결을 위한 SD/MMC(Secure-Digital/Multi-Media Card) 인터페이스의 두 가지 회로 연결이 필요하기 때문에 모바일 기기를 위한 간단한 인터페이스 및 대용량 데이터 처리를 위한 방법 개선이 필요하다.
Another technology is the second generation, in which the host processor is equipped with a dedicated controller for mobile DRAM and NAND memory. This is unlike the first generation technology, where NAND memory does not attach directly to the host processor. This structure can reduce the burden on the host processor to process the NAND memory compared to the first generation technology. However, there is a disadvantage that performance decreases when transmitting and receiving large data due to the small buffer capacity of the NAND dedicated controller. In addition, hardware connection requires two circuit connections: a double-data-rate (DDR) interface for DRAM connectivity and a secure-digital / multi-media card (SD / MMC) interface for NAND memory connectivity. There is a need for a simple interface and improved methods for processing large amounts of data.

본 발명은 모바일의 스토리지 제어 및 관리가 가능한 스토리지 프로세서에 의해서 모바일 기능 수행에 대한 호스트 프로세서의 점유율을 감소시킬 수 있는 모바일 스토리지 제어 방법을 제공하는 것이다.The present invention provides a mobile storage control method that can reduce the share of the host processor to perform the mobile function by the storage processor capable of controlling and managing the mobile storage.

본 발명은 저속의 스토리지를 스토리지 프로세서를 이용하여 고속으로 제어할 수 있는 모바일 스토리지 제어 방법을 제공하는 것이다.
The present invention provides a mobile storage control method capable of controlling a low speed storage at a high speed using a storage processor.

본 발명의 일 측면에 따르면, 모바일의 스토리지 제어 방법에 있어서, (a) 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신하는 단계, (b) 호스트 프로세서가 DP 메모리에 명령어 및 데이터를 저장하는 단계, (c) 명령어 및 데이터가 저장된 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 전송하는 단계, (d) 인터럽트를 수신한 스토리지 프로세서가 DP 메모리에 저장된 명령어 및 데이터를 해독하는 단계, (e) 스토리지 프로세서가 해독한 명령어에 상응하는 동작을 수행하는 단계, (f) 스토리지 프로세서가 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 DP 메모리로 전송하는 단계, (g) DP 메모리는 수신한 명령어 응답에 대한 인터럽트를 호스트 프로세서로 전송하는 단계 및 (h) 명령어 응답에 대한 인터럽트를 수신한 호스트 프로세서가 DP 메모리로부터 명령어 응답을 수신하는 단계를 포함한다.According to an aspect of the present invention, in a storage control method of a mobile, (a) the host processor receives a command input from the outside of the mobile, (b) the host processor storing the command and data in the DP memory (c) the DP memory storing instructions and data generating and transmitting an interrupt to the storage processor, (d) the storage processor receiving the interrupt decrypts the instructions and data stored in the DP memory, (e) the storage processor Performing an operation corresponding to the command decoded by the processor; (f) transmitting a command response, which is a result of the storage processor performing the operation corresponding to the command, to the DP memory; Sending an interrupt to the host processor and (h) receiving the interrupt for the command response. The processor includes the step of receiving a command reply from the DP memory.

(a)단계 이후에, (a-1) 호스트 프로세서가 수신된 명령어가 일반 명령어인지, 인터럽트 명령어인지 확인하는 단계를 더 포함할 수 있다.After step (a), the method may further include (a-1) checking whether the received command is a general command or an interrupt command.

(a-1)단계 이후, (a-2) 호스트 프로세서가 수신한 명령어가 일반 명령어인 경우, DP 메모리의 소유권을 확인하는 단계 및 (a-3) DP 메모리의 소유권을 확인한 결과, 호스트 프로세서가 DP 메모리의 소유권이 없다면, DP 메모리의 소유권 요청에 대한 인터럽트 명령어를 DP 메모리를 통해 스토리지 프로세서로 전송함으로써, DP 메모리의 소유권을 획득하는 단계를 더 포함할 수 있다.After the step (a-1), if the command received by the host processor is a general command, the host processor checks the ownership of the DP memory and (a-3) the ownership of the DP memory. If there is no ownership of the DP memory, the method may further include acquiring ownership of the DP memory by sending an interrupt instruction for the ownership request of the DP memory to the storage processor through the DP memory.

(a-1)단계 이후, (a-4) 호스트 프로세서가 수신한 명령어가 인터럽트 명령어인 경우, 호스트프로세서는 DP 메모리의 인터럽트 영역에 인터럽트 명령어 및 데이터를 저장하는 단계를 더 포함할 수 있다.After step (a-1), when the command received by the host processor is an interrupt command, the host processor may further include storing the interrupt command and data in an interrupt area of the DP memory.

(a)단계 이후, (a-5) 호스트 프로세서는 스토리지 프로세서가 활성화 상태인지 확인하는 단계를 더 포함할 수 있다.After step (a), the host processor may further include checking whether the storage processor is activated.

(a-5)단계에서, (a-6) 스토리지 프로세서가 비활성화 상태인 경우, 호스트 프로세서는 스토리지 프로세서를 활성화 시키는 명령어를 DP 메모리를 통해 스토리지 프로세서로 전송하는 단계를 더 포함할 수 있다.In operation (a-5), when the storage processor is in a deactivated state, the host processor may further include transmitting a command for activating the storage processor to the storage processor through the DP memory.

(a)단계 이후, (a-7) 호스트 프로세서는 DP 메모리의 명령어 큐 중에서 비어 있는 명령어 큐가 있는지 확인하는 단계를 더 포함할 수 있다.After step (a), the host processor may further include checking whether there is an empty command queue among the command queues of the DP memory.

(a-7)단계에서, DP 메모리의 명령어 큐 중에서 비어있는 명령어 큐가 없다면, (a-8) 호스트 프로세서는 DP 메모리의 소유권을 스토리지 프로세서로 전송하는 단계 및 (a-9) 스토리지 프로세서가 DP 메모리에 저장된 명령어를 실행하는 단계를 포함하되, DP 메모리에 저장된 명령어 중에서 스토리지 프로세서에 의해 실행된 명령어는 삭제할 수 있다.In step (a-7), if there is no empty command queue among the command queues of the DP memory, (a-8) the host processor transfers ownership of the DP memory to the storage processor and (a-9) the storage processor DP The method may include executing an instruction stored in the memory, and among the instructions stored in the DP memory, the instruction executed by the storage processor may be deleted.

(a-7)단계에서, DP 메모리의 명령어 큐 중에서 비어있는 명령어 큐가 없다면, (a-10) 호스트 프로세서는 DP 메모리의 명령어 큐에 저장된 명령어를 삭제할 수 있다.In step (a-7), if there is no empty command queue in the command queue of the DP memory, the host processor may delete the command stored in the command queue of the DP memory.

(d)단계에서, 스토리지 프로세서는 DP 메모리 내의 환형 큐 헤더(Circular Queue Header) 정보를 기반으로 수행될 명령어를 순차적으로 해독하고 실행할 수 있다.In step (d), the storage processor may sequentially decode and execute instructions to be executed based on circular queue header information in the DP memory.

(e)단계 이후에, (e-1) 스토리지 프로세서가 DP 메모리의 소유권 유지 여부를 판단할 수 있다.After step (e), the storage processor (e-1) may determine whether to maintain ownership of the DP memory.

(e-1)단계에서, (e-2) 스토리지 프로세서가 DP 메모리의 소유권을 유지하지 않는 경우, DP 메모리의 소유권을 호스트 프로세서로 이전하는 단계를 더 포함할 수 있다.In step (e-1), when the storage processor does not maintain ownership of the DP memory, the method may further include transferring ownership of the DP memory to the host processor.

명령어 응답은 명령어에 상응하는 동작 수행 결과, 명령어 코드(Command Code), 명령어 인덱스(Command Index)를 포함할 수 있다.The command response may include a result of performing an operation corresponding to the command, a command code, and a command index.

(f)단계에서, 스토리지 프로세서가 명령어 응답 중에서 마지막 명령어 응답을 DP 메모리로 전송 시, DP 메모리의 소유권은 호스트 프로세서로 이전될 수 있다.In step (f), when the storage processor transmits the last command response among the command responses to the DP memory, ownership of the DP memory may be transferred to the host processor.

(f)단계 이전에, (f-1) 스토리지 프로세서가 DP 메모리로 명령어 응답에 대한 전송 여부를 판단하는 단계를 더 포함할 수 있다.Prior to step (f), (f-1) may further include determining whether the storage processor transmits a command response to the DP memory.

(f-1)단계에서, (f-2) 스토리지 프로세서가 명령어의 응답에 대한 전송을 하지 않는 경우, (b)단계로 되돌아 갈 수 있다.In step (f-1), if the (f-2) storage processor does not transmit a response to the command, it may return to step (b).

(b)단계 이후에, (b-1) 호스트 프로세서는 DP 메모리에 저장한 명령어를 스토리지 프로세서가 수행해야 할 명령어 리스트가 저장된 저장 공간에 저장함으로써 명령어 리스트를 갱신하는 단계를 더 포함할 수 있다.After the step (b), the host processor may further include updating the command list by storing the command stored in the DP memory in a storage space in which the command list to be executed by the storage processor is stored.

(h)단계 이후에, (h-1) 호스트 프로세서는 수신한 명령어 처리 결과와 명령어 리스트를 비교하여 누락된 명령어가 없는지 확인하는 단계를 더 포함할 수 있다.After the step (h), (h-1) the host processor may further comprise the step of comparing the received command processing result with the command list to determine whether there are no missing instructions.

(h)단계 이후, (h-2) 호스트 프로세서는 스토리지 프로세서가 명령어에 상응하는 동작을 수행하는 동안 모바일의 외부로부터 입력된 다른 명령어가 있는지 확인하는 단계를 더 포함할 수 있다.After step (h), the host processor may further include checking whether there is another command input from the outside of the mobile while the storage processor performs an operation corresponding to the command.

(h-2)단계에서, (h-3) 다른 명령어가 있는 경우, 호스트 프로세서는 (b)단계부터 다시 수행되는 단계 및 (h-4) 다른 명령어가 없는 경우, 호스트 프로세서는 명령어 처리를 종료하는 단계를 더 포함할 수 있다.
In step (h-2), if there is another instruction (h-3), the host processor is executed again from step (b) and (h-4) if there is no other instruction, the host processor terminates the instruction processing. It may further comprise the step.

본 발명의 다른 일 측면에 따르면, 모바일 스토리지 제어를 위한 스토리지 프로세서의 인터럽트 명령어 처리 방법에 있어서, (a) 인터럽트 플래그를 확인하는 단계, (b) 인터럽트 플래그로부터 인터럽트의 수신이 확인된 경우, DP 메모리로부터 수신한 인터럽트 명령어를 해독하는 단계, (c) 인터럽트 명령어를 실행하는 단계, (d) DP 메모리의 소유권 유지 여부를 판단하는 단계, (e) 호스트 프로세서로 인터럽트 명령어 실행 결과 전송 여부를 판단하는 단계 및 (f) 인터럽트 명령어 실행 결과를 호스트 프로세서로 전송하는 단계를 포함하는 스토리지 프로세서의 인터럽트 명령어 처리 방법이 제공된다.
According to another aspect of the invention, in the interrupt instruction processing method of the storage processor for mobile storage control, (a) checking the interrupt flag, (b) when the receipt of the interrupt from the interrupt flag is confirmed, DP memory Decrypting the interrupt instruction received from the processor; (c) executing the interrupt instruction; (d) determining whether to maintain ownership of the DP memory; and (e) determining whether to transmit the interrupt instruction execution result to the host processor. And (f) transmitting the interrupt instruction execution result to the host processor.

본 발명에 의하면, 모바일의 스토리지 제어 및 관리가 스토리지 프로세서에 의해 처리되어 호스트 프로세서의 점유율을 감소시키므로 모바일의 성능을 향상시킬 수 있는 효과가 있다.According to the present invention, since the storage control and management of the mobile is processed by the storage processor to reduce the share of the host processor has the effect of improving the performance of the mobile.

본 발명에 의하면, 모바일 기능 수행시, 호스트 프로세서가 저속 저장매체를 스토리지 프로세서를 이용하여 고속으로 제어 함으로써, 시스템 성능이 향상되는 효과가 있다.According to the present invention, when the mobile function is performed, the host processor controls the low speed storage medium at high speed using the storage processor, thereby improving system performance.

또한, 본 발명에 의하면, 호스트 프로세서와 스토리지 프로세서가 모바일 기능을 각각 나눠서 수행함으로써 보안이 강화될 수 있다는 효과가 있다.In addition, according to the present invention, there is an effect that the host processor and the storage processor can be divided by the mobile function to enhance the security.

본 발명에 의하면, 호스트 프로세서 및 스토리지 프로세서가 모바일 기능을 수행하지 않을 경우 저전력 모드로 진입함으로써 전력 소모를 감소할 수 있는 효과가 있다.
According to the present invention, when the host processor and the storage processor do not perform the mobile function, the power consumption may be reduced by entering the low power mode.

도1은 본 발명의 실시예에 따른 스토리지 프로세서 제어 장치를 나타낸 블록도이다.
도2는 본 발명의 실시예에 따른 DP 메모리를 나타낸 내부 구성도이다.
도3는 본 발명의 실시예에 따른 모바일의 스토리지 제어 방법을 나타낸 순서도이다.
도4은 본 발명의 실시예에 따른 호스트 프로세서의 명령어 처리에 대한 순서도이다.
도5은 본 발명의 실시예에 따른 스토리지 프로세서의 명령어 처리에 대한 순서도이다.
도6은 본 발명의 실시예에 따른 호스트 프로세서의 명령어 응답 처리에 대한 순서도이다.
도7는 본 발명의 실시예에 따른 일반 명령어의 종류에 따른 호스트 프로세서의 명령어 처리 방법을 나타낸 순서도이다.
도8은 본 발명의 실시예에 따른 스토리지 프로세서의 인터럽트 명령어 처리 방법을 나타낸 순서도이다.
1 is a block diagram illustrating an apparatus for controlling a storage processor according to an exemplary embodiment of the present invention.
2 is a diagram illustrating an internal configuration of a DP memory according to an embodiment of the present invention.
3 is a flowchart illustrating a method for controlling storage of a mobile according to an embodiment of the present invention.
4 is a flowchart of instruction processing of a host processor according to an embodiment of the present invention.
5 is a flow chart for instruction processing of a storage processor in accordance with an embodiment of the present invention.
6 is a flowchart illustrating command response processing of a host processor according to an embodiment of the present invention.
7 is a flowchart illustrating a command processing method of a host processor according to a type of a general command according to an embodiment of the present invention.
8 is a flowchart illustrating an interrupt command processing method of a storage processor according to an exemplary embodiment of the present invention.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다.
BRIEF DESCRIPTION OF THE DRAWINGS The present invention is capable of various modifications and various embodiments, and specific embodiments are illustrated in the drawings and described in detail in the detailed description.

이하, 본 발명에 따른 모바일 스토리지 제어 방법의 실시예를 첨부도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성 요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
Hereinafter, embodiments of the mobile storage control method according to the present invention will be described in detail with reference to the accompanying drawings, in the following description with reference to the accompanying drawings, the same or corresponding components are given the same reference numerals and duplicated thereto The description will be omitted.

도1은 본 발명의 실시예에 따른 스토리지 프로세서 제어 장치를 나타낸 블록도이다.1 is a block diagram illustrating an apparatus for controlling a storage processor according to an exemplary embodiment of the present invention.

도1을 참조하면 스토리지 프로세서 제어 장치는 호스트 프로세서(110), 스토리지 프로세서(120), DP 메모리(130), H-포트(140) 및 M-포트(150)을 포함하여 구성된다.Referring to FIG. 1, the storage processor control apparatus includes a host processor 110, a storage processor 120, a DP memory 130, an H-port 140, and an M-port 150.

호스트 프로세서(110)는 모바일의 통신, 응용 및 멀티미디어 기능을 실행한다. 호스트 프로세서(110)는 베이스밴드 프로세서 및 AP/MP(application & Multimedia Processor)를 포함하여 구성된다. 베이스밴드 프로세서와 AP/MP 중 하나가 호스트 프로세서(110)를 구성하거나, 두 개의 프로세서가 하나로 통합된 단일 구조로 호스트 프로세서(110)에 포함될 수 있다.The host processor 110 executes the communication, application, and multimedia functions of the mobile. The host processor 110 includes a baseband processor and an application & multimedia processor (AP / MP). One of the baseband processor and the AP / MP may constitute the host processor 110, or the host processor 110 may be included in a single structure in which two processors are integrated into one.

베이스밴드 프로세서는 모바일의 통신 기능을 담당하는 프로세서이다. 베이스밴드 프로세서 송수신 통신 신호 처리, 신호 압축 처리, 에러 정정 및 통신 시스템 제어 등의 기능을 담당한다. 통신 신호는 압축/변조된 형태로 전송된다. 베이스밴드 프로세서는 통신 신호를 수신하면 복조/디코더 기능을 수행하여 전송 도중에 발생한 에러 수정 및 통신기 제어 등의 기능을 수행한다.The baseband processor is a processor that is responsible for the communication function of the mobile. Baseband processor It is responsible for functions such as transmission and reception communication signal processing, signal compression processing, error correction and communication system control. The communication signal is transmitted in compressed / modulated form. When the baseband processor receives a communication signal, the baseband processor performs a demodulation / decoder function to correct errors occurring during transmission and to control a communicator.

AP/MP는 모바일의 응용 및 멀티미디어 기능을 수행하는 프로세서이다. AP/MP는 디지털 음악, 디지털 카메라, 동영상, DVD 영화, 2D/3D 기능, 게임 GPS, 모바일 TV 및 웹 브라우징 등의 기능을 구현한다.AP / MP is a processor that performs mobile application and multimedia functions. AP / MP implements digital music, digital cameras, video, DVD movies, 2D / 3D capabilities, gaming GPS, mobile TV and web browsing.

스토리지 프로세서(120)은 호스트 프로세서(110)의 요청에 의한 기능 수행 및 모바일 스토리지를 제어한다. 즉 스토리지 프로세서(120)는 수신한 신호에 따라서, 스토리지에 프로그램 또는 데이터를 읽기, 쓰기 또는 삭제 등의 동작을 수행한다. The storage processor 120 controls function execution and mobile storage by request of the host processor 110. That is, the storage processor 120 reads, writes, or deletes a program or data in the storage according to the received signal.

모바일 스토리지는 모바일에 포함된 휘발성 또는 불휘발성 메모리를 포함한다. 또한, 모바일 스토리지는 USB 또는 SD(Secure Digital) 및 MMC(Multi-Media Card) 포맷을 지원하는 외장형 메모리도 포함될 수 있다. 모바일 스토리지에는 모바일의 OS(운영체제), 펨워어 및 데이터 등이 저장된다.Mobile storage includes volatile or nonvolatile memory included in mobile. The mobile storage may also include external memory that supports USB or Secure Digital (SD) and Multi-Media Card (MMC) formats. Mobile storage stores the operating system, operating system, and data of the mobile.

스토리지 프로세서(120)는 ARM 계열(ARM7, ARM9, ARM10, ARM11, Cotex-A8/9 등)의 마이크로프로세서가 사용될 수 있다. 스토리지 프로세서(120)의 명령어 처리 방식은 RISC(Reduced Instruction Set Computer)이 될 수 있다. 이는 전력소모가 낮고 칩 사이즈가 작은 모바일 기기에 적합한 임베디드 시스템 프로세서 명령어 방식이다. 그러나 스토리지 프로세서(120)의 명령어 처리 방식은 RISC에 한정하지 않는다. 즉, 스토리지 프로세서(120)의 명령어 처리 방식은 당업자에 의해서 용이하게 변경될 수 있다.The storage processor 120 may be a microprocessor of an ARM series (ARM7, ARM9, ARM10, ARM11, Cotex-A8 / 9, etc.). The instruction processing method of the storage processor 120 may be a reduced instruction set computer (RISC). This is an embedded system processor instruction method suitable for mobile devices with low power consumption and small chip size. However, the command processing method of the storage processor 120 is not limited to RISC. That is, the instruction processing method of the storage processor 120 can be easily changed by those skilled in the art.

DP 메모리(130)는 호스트 프로세서(110)와 스토리지 프로세서(120) 간의 통신을 위한 명령어 또는 데이터를 송수신하는 기능을 담당한다. DP 메모리(130)는 두 개의 입출력을 가진 SRAM 또는 DRAM으로 구성된다. DP 메모리(130)는 일반적인 Dual-Port SRAM 또는 DRAM의 기능 외에, 프로세서 간에 정해진 프로토콜 통신을 위한 인터럽트 신호를 발생 및 제어 할 수 있다.The DP memory 130 is responsible for transmitting and receiving instructions or data for communication between the host processor 110 and the storage processor 120. The DP memory 130 is composed of SRAM or DRAM having two inputs and outputs. The DP memory 130 may generate and control an interrupt signal for predetermined protocol communication between processors in addition to the functions of a general dual-port SRAM or DRAM.

DP 메모리(130)는 크게 일반 명령어 영역(131), 인터럽트 명령어 영역(132) 및 데이터 영역(133)을 포함하여 구성된다. 일반 명령어 영역(131)은 호스트 프로세서(110)에서 전송받은 명령어 리스트가 저장되어 있다. 인터럽트 명령어 영역(132)은 호스트 프로세서(110) 또는 스토리지 프로세서(120)로 DP 메모리(130)의 소유권 변경 또는 데이터 전송을 알려주는 인터럽트 명령어가 저장되어 있다. 데이터 영역(133)은 데이터 전송을 위해 데이터가 저장되어 있는 영역이다.The DP memory 130 includes a general command area 131, an interrupt command area 132, and a data area 133. The general command area 131 stores a list of commands received from the host processor 110. The interrupt command area 132 stores an interrupt command that informs the host processor 110 or the storage processor 120 of the ownership change or data transfer of the DP memory 130. The data area 133 is an area where data is stored for data transmission.

H-포트(140)는 호스트 프로세서(110)와 DP 메모리(130) 간의 통신 및 데이터 전송을 위해 연결되는 입출력 포트(I/O Port)이다. H-포트(140)를 통해서 호스트 프로세서(120)로부터 명령어 및 데이터가 DP 메모리(130)로 전송되거나, 스토리지 프로세서(120)에서의 처리 결과가 DP 메모리(130)에서 호스트 프로세서(110)로 전송된다.The H-port 140 is an input / output port (I / O port) connected for communication and data transmission between the host processor 110 and the DP memory 130. Instructions and data are transmitted from the host processor 120 to the DP memory 130 through the H-port 140, or the processing results from the storage processor 120 are transmitted from the DP memory 130 to the host processor 110. do.

M-포트(150)는 스토리지 프로세서(120)와 DP 메모리(130) 간의 통신 및 데이터 전송을 위해 연결되는 입출력 포트(I/O Port)이다. M-포트(150)를 통해서 DP 메모리(130)에 저장된 호스트 프로세서(120)로부터의 명령어 및 데이터가 스토리지 프로세서(120)으로 전송 되거나, 스토리지 프로세서(120)에서의 처리 결과가 DP 메모리(130)로 전송된다.The M-port 150 is an input / output port (I / O port) connected for communication and data transmission between the storage processor 120 and the DP memory 130. Instructions and data from the host processor 120 stored in the DP memory 130 are transmitted to the storage processor 120 through the M-port 150, or the processing result of the storage processor 120 is the DP memory 130. Is sent to.

H-포트(140) 및 M-포트(150)는 모바일 고속 메모리 인터페이스로 구현될 수 있다. 예를 들어, H-포트(140) 및 M-포트(150)를 구현하는 모바일 고속 메모리 인터페이스는 JEDEC DDR 인터페이스 표준을 만족하는 DDR(Double-Data-Rate) DRAM 인터페이스 버스일 수 있다. 또한, H-포트(140) 및 M-포트(150)는 모바일 시스템의 성능에 따라 DDR, DDR2, DDR3 인터페이스 중 하나로 구현될 수 있으며, x16, x32, x64 데이터 버스 크기 중에서 선택하여 사용하는 것이 가능하다.
H-port 140 and M-port 150 may be implemented with a mobile high speed memory interface. For example, the mobile high speed memory interface implementing H-port 140 and M-port 150 may be a Double-Data-Rate DRAM interface bus that meets the JEDEC DDR interface standard. In addition, the H-port 140 and the M-port 150 can be implemented as one of the DDR, DDR2, DDR3 interface according to the performance of the mobile system, it is possible to select from the x16, x32, x64 data bus size Do.

즉, 스토리지 프로세서 제어 장치는 호스트 프로세서(110)가 모바일 운영체제(Operation System)로부터 명령어를 수신하면, DP 메모리(130)로 명령어 및 데이터를 저장한다. 이때, DP 메모리(130)의 소유권은 호스트 프로세서(110)가 갖게 된다. DP 메모리(130)는 호스트 프로세서(110)로부터 명령어 및 데이터를 수신하면, 스토리지 프로세서(120)로 인터럽트를 전송한다. 스토리지 프로세서(120)는 인터럽트를 수신하면, DP 메모리(130)에 저장된 명령어를 수신하여 실행한다. 이때, DP 메모리(130)의 소유권은 스토리지 프로세서(120)가 갖게 된다. 스토리지 프로세서(120)는 명령어 실행 결과 및 DP 메모리(130)의 소유권을 DP 메모리(130)로 전송한다. DP 메모리(130)는 수신한 명령어 실행 결과를 호스트 프로세서(120)로 전송한다.That is, when the host processor 110 receives a command from the mobile operating system, the storage processor control device stores the command and data in the DP memory 130. In this case, ownership of the DP memory 130 is owned by the host processor 110. When the DP memory 130 receives the command and data from the host processor 110, the DP memory 130 transmits an interrupt to the storage processor 120. When the storage processor 120 receives the interrupt, the storage processor 120 receives and executes a command stored in the DP memory 130. At this time, ownership of the DP memory 130 is owned by the storage processor 120. The storage processor 120 transmits the instruction execution result and the ownership of the DP memory 130 to the DP memory 130. The DP memory 130 transmits the received command execution result to the host processor 120.

호스트 프로세서(120)로부터 수신된 데이터는 쓰기(Write) 명령어에 의해 스토리지(미도시)로 전송될 수 있다. 스토리지(미도시)는 모바일에 내장된 저장매체이거나 모바일과 연결된 외부 저장매체가 될 수 있다. 스토리지(미도시)는 플래시 메모리, USB, SD/MMC와 같은 저장매체 중에서 어느 하나 이상을 포함할 수 있다. 스토리지 프로세서(120)로부터 수신된 데이터는 읽기(Read) 명령어에 의해서 호스트 프로세서(110)가 데이터에 접근할 수 있다.Data received from the host processor 120 may be transmitted to a storage (not shown) by a write command. The storage (not shown) may be a storage medium embedded in the mobile or an external storage medium connected to the mobile. The storage (not shown) may include any one or more of storage media such as flash memory, USB, and SD / MMC. Data received from the storage processor 120 may be accessed by the host processor 110 by a read command.

이와 같은 스토리지 프로세서 제어 장치에 의해서, 모바일의 스토리지 제어를 호스트 프로세서(110)의 명령에 의해서 스토리지 프로세서(120)가 수행함으로써, 호스트 프로세서(110)의 점유율을 감소시킬 수 있다.
By the storage processor control device as described above, the storage processor 120 performs the storage control of the mobile by the command of the host processor 110, thereby reducing the occupancy of the host processor 110.

도2는 본 발명의 실시예에 따른 DP 메모리를 나타낸 내부 구성도이다.2 is a diagram illustrating an internal configuration of a DP memory according to an embodiment of the present invention.

도2를 참고하면, DP 메모리는 명령어 영역(210), 데이터 영역(220), 인트스턴트 데이터 영역(230), 소유권 및 인터럽트 영역(240)을 포함하여 구성된다.Referring to FIG. 2, the DP memory includes an instruction region 210, a data region 220, an instant data region 230, a ownership and an interrupt region 240.

명령어 영역(210)은 호스트 프로세서로부터 전송된 명령어가 저장되는 영역이다. 명령어 영역(210)은 큐 관리자(Queue Manger, 211), 헤더(Header, 212), 테일(Tail, 213) 및 명령어 큐(214)를 포함하여 구성된다.The instruction region 210 is an region in which instructions transmitted from a host processor are stored. The command area 210 includes a queue manager 211, a header 212, a tail 213, and a command queue 214.

큐 관리자(211)는 명령어 큐(214)를 관리한다. 큐 관리자(211)는 명령어 종류에 따라 인스턴트 명령어 또는 일반 명령어를 구분해서 순환 큐에 저장한다. 큐 관리자(211)는 헤더(212) 또는 테일(213)의 인덱스를 사용하여 인스턴트 명령어 또는 일반 명령어의 시작과 끝을 파악한다. 큐 관리자(211)는 큐와 큐 사이에 빈 공간이 없도록 명령어를 저장 및 관리하고 시작 큐부터 순차적으로 큐에 저장된 명령어를 처리한다. Queue manager 211 manages command queue 214. The queue manager 211 classifies an instant command or a general command according to the command type and stores the instant command or the general command in a circular queue. The queue manager 211 uses the index of the header 212 or tail 213 to determine the start and end of an instant instruction or a general instruction. The queue manager 211 stores and manages commands so that there is no empty space between the queues and queues, and processes the commands stored in the queue sequentially from the start queue.

헤더(212) 및 테일(213)은 명령어 큐(214)의 시작 인덱스(Index) 및 끝 인덱스(Index)를 저장한다.Header 212 and tail 213 store the start index and end index of instruction queue 214.

명령어 큐(214)는 호스트 프로세서로부터 수신한 명령어를 저장하는 영역이다. 명령어 큐(214)에 저장할 수 있는 명령어 개수는 프로토콜의 성능에 영향을 미치므로 프로토콜의 성능이 최적이 되도록 설계되어 있다. 명령어 큐(214)에서 첫번째 인스턴트 명령어를 제외한 나머지는 영역은 일반 명령어를 위한 영역이다. 즉, 명령어 큐(214)의 첫번째 명령어는 인스턴트 쓰기/읽기 명령어 영역으로 할당되어 있는 것이다.The instruction queue 214 is an area for storing instructions received from the host processor. Since the number of instructions that can be stored in the command queue 214 affects the performance of the protocol, the performance of the protocol is designed to be optimal. The remainder of the command queue 214 except for the first instant command is an area for general commands. That is, the first command of the command queue 214 is allocated to the instant write / read command area.

DP 메모리는 시작과 끝 명령어 사이에 비어있는 명령어는 없도록 운영된다. DP 메모리는 명령어 큐(214)의 첫번째 영역에서 마지막 영역까지 쓰기를 한 후, 다시 처음으로 되돌아가는 라운드-로빈(Round-Robin) 방식으로 운영된다.DP memory is operated so that there are no empty instructions between the start and end instructions. The DP memory is operated in a round-robin manner after writing from the first area to the last area of the command queue 214, and then returning to the beginning again.

데이터 영역(220)은 호스트 프로세서 및 스토리지 프로세서로부터 수신된 데이터가 저장되는 영역이다. The data area 220 is an area in which data received from the host processor and the storage processor are stored.

인스턴트 데이터 영역(230)은 인스턴트 명령어에 따른 데이터가 저장되어 있는 영역이다. 인스턴트 데이터는 즉시 플래시 메모리 영역으로 쓰여질 데이터로 일반 데이터 쓰기 명령어에 우선해서 실행될 데이터이다. The instant data area 230 is an area where data according to an instant command is stored. Instant data is data that will be written to the flash memory area immediately, and will be executed prior to general data write commands.

소유권 및 인터럽트 영역(240)은 인터럽트 신호 및 DP 메모리(도1의 130)의 소유권에 관련된 데이터가 저장되어 있는 영역이다. DP 메모리(도1의 130)의 소유권은 DP 메모리 사용에 있어 호스트 프로세서(도1의 110) 및 스토리지 프로세서(도1의 130) 간의 혼란이 발생하지 않도록 하는 역할을 한다. DP 메모리(도1의 130)의 소유권은 호스트 프로세서(도1의110) 또는 스토리지 프로세서(도1의 120)가 DP 메모리에 접근이 가능하도록 한다. DP 메모리(도1의 130)의 소유권은 호스트 프로세서(도1의 110)의 명령어에 따라 결정될 수 있다. DP 메모리(도1의 130)의 소유권은 플래그 방식을 이용하여 사용될 수 있다. 한편, 호스트 프로세서(도1의 110) 및 스토리지 프로세서(도1의 120) 간의 인터럽트를 위해 인터럽트 영역이 사용된다. The ownership and interrupt area 240 is an area where data relating to the interrupt signal and ownership of the DP memory (130 in FIG. 1) are stored. Ownership of the DP memory (130 in FIG. 1) serves to prevent confusion between the host processor (110 in FIG. 1) and the storage processor (130 in FIG. 1) in using the DP memory. Ownership of the DP memory (130 in FIG. 1) allows the host processor (110 in FIG. 1) or the storage processor (120 in FIG. 1) to access the DP memory. Ownership of the DP memory 130 of FIG. 1 may be determined according to instructions of the host processor 110 of FIG. 1. Ownership of the DP memory (130 in FIG. 1) can be used using a flag scheme. Meanwhile, an interrupt area is used for interruption between the host processor 110 (in FIG. 1) and the storage processor (120 in FIG. 1).

스토리지 제어를 위한 명령어 및 데이터 송수신 시, 기존의 저속의 비휘발성 메모리가 아닌 고속의 DP 메모리를 사용함으로써, 고속의 스토리지 제어가 수행될 수 있다.
When transmitting and receiving commands and data for storage control, high speed storage control may be performed by using a high speed DP memory instead of a conventional low speed nonvolatile memory.

도3은 본 발명의 실시예에 따른 모바일의 스토리지 제어 방법을 나타낸 순서도이다.3 is a flowchart illustrating a storage control method of a mobile according to an embodiment of the present invention.

도3을 참조하면, 우선 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신한다(S110) 예를 들어, 모바일의 외부로부터 입력된 명령어는 스토리지에 데이터 쓰기, 읽기 및 삭제 등이 될 수 있다. 명령어의 종류는 이에 한정되지 않고, 당업자에 의해 변경될 수 있음은 자명하다. 스토리지는 모바일 내부에 포함되거나 모바일과 연결된 외부 저장매체 일 수 있다.Referring to FIG. 3, first, a host processor receives a command input from the outside of the mobile (S110). For example, the command input from the outside of the mobile may be data writing, reading, and deleting data in the storage. It is apparent that the type of instruction is not limited thereto and may be changed by those skilled in the art. The storage may be an external storage medium included in or connected to the mobile.

이어서, 호스트 프로세서가 DP 메모리에 수신한 명령어 및 데이터를 저장한다(S120). 만약, 수신한 명령어가 일반 명령어 및 인스턴트 명령어 인 경우, DP 메모리의 명령어 큐에 명령어를 저장한다. 또한, 일반 명령어에 대한 데이터는 DP 메모리의 데이터 영역, 인스턴트 명령어에 대한 명령어는 DP 메모리의 인스턴트 데이터 영역에 저장할 수 있다. 만약, 수신한 명령어가 인터럽트 명령어인 경우, 인터럽트 명령어 및 데이터는 DP 메모리의 인터럽트 영역에 저장할 수 있다.Subsequently, the host processor stores the received instruction and data in the DP memory (S120). If the received command is a general command or an instant command, the command is stored in the command queue of the DP memory. In addition, the data for the general command may be stored in the data area of the DP memory, and the command for the instant command may be stored in the instant data area of the DP memory. If the received command is an interrupt command, the interrupt command and data may be stored in an interrupt area of the DP memory.

이어서, 명령어 및 데이터가 저장된 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 스토리지 프로세서로 전송한다(S130)Subsequently, the DP memory in which the command and the data are stored generates an interrupt to the storage processor and transmits the interrupt to the storage processor (S130).

이어서, 인터럽트를 수신한 스토리지 프로세서가 DP 메모리에 저장된 명령어 및 데이터를 해독한다(S140) Subsequently, the storage processor receiving the interrupt decodes the command and data stored in the DP memory (S140).

이어서, 스토리지 프로세서가 해독한 명령어에 상응하는 동작을 수행한다(S150). 예를 들어, 스토리지 프로세서가 해독한 명령어가 데이터 쓰기인 경우, 스토리지 프로세서는 수신한 데이터를 이용하여 스토리지에 쓰기 동작을 수행할 수 있다. 예를 들어, 스토리지 프로세서가 해독한 명령어가 데이터 삭제인 경우, 스토리지 프로세서는 스토리지에 저장되어 있는 데이터를 삭제하는 동작을 수행할 수 있다. Subsequently, the storage processor performs an operation corresponding to the decrypted command (S150). For example, when the instruction read by the storage processor is a data write, the storage processor may perform a write operation to the storage using the received data. For example, when the instruction decrypted by the storage processor is data deletion, the storage processor may perform an operation of deleting data stored in the storage.

이어서, 스토리지 프로세서가 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 DP 메모리로 전송한다(S160)Subsequently, the storage processor transmits a command response, which is a result of performing an operation corresponding to the command, to the DP memory (S160).

이어서, DP 메모리는 수신한 명령어 응답에 대한 인터럽트를 호스트 프로세서로 전송한다(S170).Subsequently, the DP memory transmits an interrupt for the received command response to the host processor (S170).

이어서, 명령어 응답에 대한 인터럽트를 수신한 호스트 프로세서가 DP 메모리로부터 명령어 응답을 수신한다(S180)Subsequently, the host processor receiving the interrupt for the command response receives the command response from the DP memory (S180).

이와 같이, 본 발명의 실시예에 의하면, 호스트 프로세서가 직접 모바일의 스토리지 제어를 수행하지 않는다. 호스트 프로세서는 스토리지 제어를 스토리지 프로세서가 수행하도록 명령을 전송한다. 따라서, 모바일의 스토리지 제어 및 관리에 대해 스토리지 프로세서가 처리함으로써 호스트 프로세서의 점유율이 감소된다.As such, in accordance with an embodiment of the present invention, the host processor does not directly perform storage control of the mobile. The host processor sends instructions to the storage processor to perform storage control. Thus, the storage processor's share of the mobile processor's storage control and management is reduced.

또한, 스토리지 제어 및 관리시, 호스트 프로세서 및 스토리지 프로세서 간의명령어 및 데이터 전송이 고속의 DP 메모리를 통해 수행됨으로써, 저속의 저장매체를 고속으로 제어할 수 있다.
In addition, during storage control and management, command and data transfer between the host processor and the storage processor may be performed through the high speed DP memory, thereby controlling the low speed storage medium at high speed.

도4는 본 발명의 실시예에 따른 호스트 프로세서의 명령어 처리에 대한 순서도이다.4 is a flow chart for instruction processing of a host processor according to an embodiment of the present invention.

도4를 참조하면, 호스트 프로세서는 모바일의 외부로부터 입력된 명령어를 수신한다(S110).Referring to FIG. 4, the host processor receives a command input from the outside of the mobile (S110).

이어서, 호스트 프로세서는 수신한 명령어의 형태를 판단한다(S111). 호스트 프로세서는 수신한 명령어가 일반 명령어인지 인터럽트 명령어인지 판단한다.Subsequently, the host processor determines the type of the received instruction (S111). The host processor determines whether the received instruction is a general instruction or an interrupt instruction.

만약, 입력된 명령어가 인터럽트 명령어인 경우, 호스트 프로세서는 DP 메모리의 명령어 및 데이터를 저장한다(S120). 이때, 인터럽트 명령어 및 데이터는 DP 메모리의 인터럽트 영역에 저장된다. 인터럽트 명령어는 소유권 양도(Release Ownership), 정지(Suspend), 되돌아가기(Resume), 취소(Cancel) 및 읽기 상태(Read Status) 등이 될 수 있다. 호스트 프로세서는 DP 메모리의 인터럽트 영역 중에서 인터럽트 레지스터에 해당 명령어를 저장하고, 인터럽트 데이터 영역에 데이터를 저장한다.If the input command is an interrupt command, the host processor stores the command and data of the DP memory (S120). At this time, the interrupt instruction and data are stored in the interrupt area of the DP memory. The interrupt instruction may be release ownership, suspend, resume, cancel, read status, or the like. The host processor stores the corresponding instruction in the interrupt register among the interrupt regions of the DP memory and stores data in the interrupt data region.

만약, 입력된 명령어가 일반 명령어인 경우, 호스트 프로세서는 DP 메모리의 소유권을 확인한다(S112).If the input command is a general command, the host processor verifies ownership of the DP memory (S112).

만약, DP 메모리의 소유권이 호스트 프로세서 없다면, 호스트 프로세서는 스토리지 프로세서로 DP 메모리의 소유권을 요청할 수 있다(S113).If the ownership of the DP memory is not the host processor, the host processor may request ownership of the DP memory from the storage processor (S113).

이어서, 호스트 프로세서는 DP 메모리의 소유권 요청에 의해서 DP 메모리의 소유권을 스토리지 프로세서로부터 획득한다(S114).Subsequently, the host processor acquires ownership of the DP memory from the storage processor by requesting ownership of the DP memory (S114).

만약, DP 메모리의 소유권이 호스트 프로세서 있다면, DP 메모리의 소유권을 스토리지 프로세서로 요청 및 획득하는 단계(S113 및 S114)는 생략 할 수 있다.If the ownership of the DP memory is the host processor, steps S113 and S114 of requesting and acquiring ownership of the DP memory to the storage processor may be omitted.

이어서, 호스트 프로세서는 스토리지 프로세서의 상태를 점검한다(S115). Subsequently, the host processor checks the state of the storage processor (S115).

만약, 스토리지 프로세서의 상태가 비활성화 상태라면, 호스트 프로세서는 스토리지 프로세서를 활성화 시키는 명령어를 전송(S116)하여, 스토리지 프로세서를 활성화 상태가 되도록 한다. 여기서, 비활성화 상태는 스토리지 프로세서가 슬립(Sleep) 상태이거나 딥 슬립(Deep Sleep) 상태와 같은 저전력 상태이다.If the state of the storage processor is inactive, the host processor transmits an instruction for activating the storage processor (S116) to make the storage processor active. In this case, the deactivation state is a low power state, such as the storage processor is in a sleep state or a deep sleep state.

만약, 스토리지 프로세서의 상태가 활성화 상태라면, 스토리지 프로세서를 활성화 시키는 명령어를 전송하는 단계(S116)는 생략할 수 있다.If the state of the storage processor is activated, the step S116 of transmitting a command for activating the storage processor may be omitted.

이어서, 호스트 프로세서는 DP 메모리에 비어 있는 명령어 큐가 있는지 확인한다(S117).Subsequently, the host processor checks whether there is an empty instruction queue in the DP memory (S117).

만약, DP 메모리에 비어 있는 명령어 큐가 없는 경우, 본 발명의 실시예로 호스트 프로세서는 DP 메모리의 명령어 큐에 저장된 명령어 삭제를 DP 메모리로 요청할 수 있다(S118).If there is no empty command queue in the DP memory, according to an embodiment of the present invention, the host processor may request the DP memory to delete an instruction stored in the command queue of the DP memory (S118).

DP 메모리의 명령어 큐에 저장된 명령어를 삭제 하는 방법은 이에 한정되지 않는다. DP 메모리의 명령어 큐에 저장된 명령어를 삭제를 위한 본 발명의 다른 실시예로 우선, 호스트 프로세서는 DP 메모리의 소유권을 상기 스토리지 프로세서로 전송할 수 있다. DP 메모리의 소유권을 갖는 스토리지 프로세서는 DP 메모리에 접근하여 DP 메모리에 저장된 명령어를 실행할 수 있다. 이때, 스토리지 프로세서에 의해서 실행된 명령어는 삭제될 수 있다. 이와 같은 과정을 통해서 DP 메모리의 명령어 큐가 비워질 수 있다.  The method of deleting a command stored in the command queue of the DP memory is not limited thereto. In another embodiment of the present invention for deleting an instruction stored in an instruction queue of a DP memory, the host processor may transfer ownership of the DP memory to the storage processor. The storage processor with ownership of the DP memory can access the DP memory and execute instructions stored in the DP memory. In this case, the command executed by the storage processor may be deleted. Through this process, the command queue of the DP memory may be empty.

이어서, 호스트 프로세서는 DP 메모리에 명령어 및 데이터를 저장하고, DP 메모리의 소유권을 스토리지 프로세서로 전송할 수 있다(S120). 호스트 프로세서는 DP 메모리에 명령어와 데이터를 복사하여 저장하고, 헤더(Header)에 큐에 관한 정보를 저장할 수 있다.Subsequently, the host processor may store instructions and data in the DP memory and transmit ownership of the DP memory to the storage processor (S120). The host processor may copy and store instructions and data in the DP memory, and store information about the queue in a header.

이어서, 호스트 프로세서는 스토리지 프로세서가 수행할 명령어 리스트를 갱신한다(S105). 호스트 프로세서는 DP 메모리에 저장한 명령어를 스토리지 프로세서가 수행해야 할 명령어 리스트가 저장된 저장 공간에 저장함으로써 상기 명령어 리스트를 갱신할 수 있다.
Subsequently, the host processor updates a list of instructions to be executed by the storage processor (S105). The host processor may update the command list by storing the command stored in the DP memory in a storage space in which the command list to be executed by the storage processor is stored.

도5는 본 발명의 실시예에 따른 스토리지 프로세서의 명령어 처리에 대한 순서도이다.5 is a flowchart of instruction processing of a storage processor according to an embodiment of the present invention.

도5를 참고하면, 스토리지 프로세서는 DP 메모리로부터 인터럽트를 수신한다(S130).Referring to FIG. 5, the storage processor receives an interrupt from a DP memory (S130).

이어서, 스토리지 프로세서는 DP 메모리의 소유권을 확인한다(S131) 스토리지 프로세서는 DP 메모리의 소유권 확인을 위해 소유권 영역의 레지스터 값을 확인할 수 있다. 스토리지 프로세서는 확인된 DP 메모리의 소유권 레지스터 값을 통해 소유권을 갖고 있는 프로세서를 확인할 수 있다. 즉, 스토리지 프로세서는 DP 메모리에 저장되어 있는 명령어 및 데이터에 접근할 수 있는 DP 메모리의 소유권이 호스트 프로세서에 있는지 또는 스토리지 프로세서에 있는 지를 소유권 레지스터 값을 통해서 확인 할 수 있다.Subsequently, the storage processor verifies ownership of the DP memory (S131). The storage processor may check a register value of the ownership area to verify ownership of the DP memory. The storage processor can identify the processor that has ownership through the value of the ownership register of the identified DP memory. That is, the storage processor may determine whether the host processor or the storage processor owns DP memory that can access the instructions and data stored in the DP memory through the ownership register value.

만약, 스토리지 프로세서가 DP 메모리의 소유권을 갖고 있지 않는다면, 스토리지 프로세서가 DP 메모리의 소유권을 획득할 때까지 DP 메모리의 소유권 확인 단계를 반복할 수 있다.If the storage processor does not have ownership of the DP memory, the step of verifying ownership of the DP memory may be repeated until the storage processor acquires ownership of the DP memory.

만약, 스토리지 프로세서가 DP 메모리의 소유권을 갖고 있다면, 스토리지 프로세서는 DP 메모리로부터 수행할 명령어를 수신할 수 있다(S132)If the storage processor has ownership of the DP memory, the storage processor may receive a command to be executed from the DP memory (S132).

이어서, 스토리지 프로세서는 DP 메모리로부터 수신한 명령어를 해독한다(S140). 즉, DP 메모리의 소유권을 갖고 있는 스토리지 프로세서가 DP 메모리에 접근하여 저장된 명령어가 어떤 동작을 실행하기 위한 것인지 확인할 수 있다. 예를 들어, 스토리지 프로세서는 DP 메모리의 순환 큐 헤더 정보를 기반으로 큐의 시작 명령어를 찾아 해독하고 명령어를 실행할 수 있다.Subsequently, the storage processor decrypts the command received from the DP memory (S140). That is, the storage processor having ownership of the DP memory can access the DP memory to check what operation the stored instruction is to perform. For example, the storage processor may find and decode the queue start command and execute the command based on the circular queue header information of the DP memory.

이어서, 스토리지 프로세서는 명령어에 상응하는 동작을 수행한다(S150). 스토리지 프로세서는 해독한 명령어에 따라 DP 메모리에 저장된 데이터를 이용하여, 호스트 프로세서로부터 수신한 명령어를 실행할 수 있다.Subsequently, the storage processor performs an operation corresponding to the command (S150). The storage processor may execute an instruction received from the host processor using data stored in the DP memory according to the decrypted instruction.

이어서, 스토리지 프로세서는 명령어 실행이 완료되면, DP 메모리의 소유권을 유지해야 여부를 판단한다(S151).Subsequently, when the execution of the command is completed, the storage processor determines whether ownership of the DP memory should be maintained (S151).

만약, DP 메모리의 소유권을 호스트 프로세서로 전달해야 한다면, 스토리지 프로세서는 DP 메모리를 통해 호스트 프로세서로 DP 메모리의 소유권을 전달한다(S152).If it is necessary to transfer ownership of the DP memory to the host processor, the storage processor transfers ownership of the DP memory to the host processor through the DP memory (S152).

만약, DP 메모리의 소유권을 호스트 프로세서로 전달하지 않아도 된다면, 스토리지 프로세서는 소유권을 호스트 프로세서로 전달하는 단계(S152)는 생략할 수 있다.If it is not necessary to transfer ownership of the DP memory to the host processor, the storage processor may omit step S152 of transferring ownership to the host processor.

이어서, 스토리지 프로세서는 명령어에 대한 응답을 호스트 프로세서로 전송해야 하는지 판단한다(S153). Subsequently, the storage processor determines whether to send a response to the command to the host processor (S153).

만약, 응답을 호스트 프로세서로 전송하지 않아도 된다면, 스토리지 프로세서는 DP 메모리의 소유권을 확인하는 단계(S131)부터 다시 동작을 수행할 수 있다.If it is not necessary to transmit the response to the host processor, the storage processor may perform the operation again from the step S131 of verifying ownership of the DP memory.

만약, 응답을 호스트 프로세서로 전송해야 한다면, 스토리지 프로세서는 DP 메모리로 응답을 전송한다(S160). 명령어 응답은 명령어에 상응하는 동작 수행 결과, 명령어 코드(Command Code), 명령어 인덱스(Command Index)를 포함할 수 있다. If it is necessary to transmit the response to the host processor, the storage processor transmits the response to the DP memory (S160). The command response may include a result of performing an operation corresponding to the command, a command code, and a command index.

본 발명의 실시예에서 상술한 스토리지 프로세서의 명령어 처리에 대한 순서는 당업자에 의해 변경 가능하다. 즉, 실시예에서는 스토리지 프로세서가 DP 메모리의 소유권 유지 여부 판단 후, 명령어 응답 전송 여부를 판단한다. 그러나 스토리지 프로세서가 명령어 응답 전송 여부 판단 후에 DP 메모리의 소유권 유지 여부 판단을 할 수 있다. 또한, 스토리지 프로세서가 명령어 응답 중에서 마지막 명령어 응답을 DP 메모리로 전송 시, DP 메모리의 소유권은 호스트 프로세서 이전될 수 있다.In the embodiment of the present invention, the order of the instruction processing of the storage processor described above may be changed by those skilled in the art. That is, in the embodiment, the storage processor determines whether to maintain ownership of the DP memory, and then determines whether to transmit a command response. However, the storage processor may determine whether to maintain ownership of the DP memory after determining whether to transmit a command response. In addition, when the storage processor transmits the last command response of the command response to the DP memory, ownership of the DP memory may be transferred to the host processor.

즉, 스토리지 프로세서의 명령어 처리 순서는 도7의 순서에 한정되지 않고, 기술적 사상에 벗어나지 않는 범위에서 용이하게 변경 가능하다는 것은 당업자에게 자명한 일이다.
In other words, it is apparent to those skilled in the art that the order of processing instructions of the storage processor is not limited to the order of FIG. 7 and can be easily changed without departing from the technical spirit.

도6은 본 발명의 실시예에 따른 호스트 프로세서의 명령어 응답 처리에 대한 순서도이다.6 is a flowchart illustrating command response processing of a host processor according to an embodiment of the present invention.

도6을 참조하면, 호스트 프로세서는 DP 메모리로부터 명령어 응답에 대한 인터럽트를 수신한다(S170) 호스트 프로세서는 명령어에 대한 스토리지 프로세서로부터 명령어 응답이 DP 메모리로 전송되었을 때, DP 메모리가 발생한 인터럽트를 수신할 수 있다. 이때, 호스트 프로세서는 스토리지 프로세서가 갖고 있던 DP 메모리의 소유권을 이전 받을 수 있다.Referring to FIG. 6, the host processor receives an interrupt for a command response from the DP memory (S170). When the command response is transmitted from the storage processor for the command to the DP memory, the host processor may receive an interrupt generated from the DP memory. Can be. In this case, the host processor may transfer ownership of the DP memory owned by the storage processor.

이어서, 호스트 프로세서는 DP 메모리로부터 명령어 응답을 수신한다(S180). 즉, 호스트 프로세서는 스토리지 프로세서가 명령어에 의해 수행한 스토리지 제어의 처리 결과를 수신할 수 있다.Subsequently, the host processor receives a command response from the DP memory (S180). That is, the host processor may receive a processing result of storage control performed by the storage processor by an instruction.

이어서, 호스트 프로세서는 미처리된 명령어가 있는지 확인한다(S181). 호스트 프로세서는 수신한 명령어 응답 및 명령어 리스트를 이용하여 미처리된 명령어가 있는지 확인할 수 있다.Subsequently, the host processor checks whether there is an unprocessed instruction (S181). The host processor may check whether there is an unprocessed command by using the received command response and the command list.

만약, 미처리된 명령어가 있다면, 호스트 프로세서는 DP 메모리에 명령어 큐가 비어 있는지 확인하는 단계부터 다시 수행될 수 있다(도6의 S117)If there is an unprocessed instruction, the host processor may be executed again from the step of checking whether the instruction queue is empty in the DP memory (S117 of FIG. 6).

만약, 미처리된 명령어가 없다면, 호스트 프로세서는 스토리지 프로세서가 명령어를 처리하는 동안 모바일 외부로부터 입력된 다른 명령어가 있는지 확인한다(S182).If there is no unprocessed instruction, the host processor checks whether there is another instruction input from the outside of the mobile while the storage processor processes the instruction (S182).

만약, 다른 명령어가 있다면, 호스트 프로세서는 수신한 명령어의 형태를 확인하는 단계부터 다시 수행될 수 있다(도6의 S111)If there are other instructions, the host processor may be executed again from the step of checking the type of the received instructions (S111 of FIG. 6).

만약, 다른 명령어가 없다면, 호스트 프로세서는 스토리지의 제어를 위한 명령어 처리를 종료한다(S183).
If there is no other command, the host processor terminates the command processing for controlling the storage (S183).

도7은 본 발명의 실시예에 따른 일반 명령어의 종류에 따른 호스트 프로세서의 명령어 처리 방법을 나타낸 순서도이다.7 is a flowchart illustrating a command processing method of a host processor according to a type of a general command according to an embodiment of the present invention.

도7를 참조하면, 호스트 프로세서는 수신한 일반 명령어의 종류를 확인한다(S910). 예를 들어, 일반 명령어의 종류에는 쓰기(Write), 읽기(Read), 뉴 프로텍션(New Protection), 삭제(Erase), 플러시(Flush) 명령어 등이 있다. 호스트 프로세서가 일반 명령어의 종류를 확인하는 단계 이전에, 호스트 프로세서가 수신한 명령어의 형태를 확인하는 단계(도6의 S111)가 수행될 수 있다Referring to FIG. 7, the host processor checks the type of the received general command (S910). For example, general commands include write, read, new protection, erase, and flush commands. Before the host processor confirms the type of the general instruction, the step of confirming the type of the instruction received by the host processor (S111 of FIG. 6) may be performed.

만약, 호스트 프로세서가 수신한 명령어가 쓰기 명령어인 경우, 호스트 프로세서는 DP 메모리의 데이터 영역에 데이터를 쓴다(S920). 여기서, 데이터는 모바일 외부로부터 입력되어 스토리지에 저장될 데이터이다. 이때, DP 메모리의 영역에 데이터 쓰기가 완료되면, 호스트 프로세서는 다른 일반 명령어 입력이 있는지 확인한다(S910).If the command received by the host processor is a write command, the host processor writes data to the data area of the DP memory (S920). Here, the data is data to be input from outside the mobile and stored in the storage. At this time, when data writing is completed in the area of the DP memory, the host processor checks whether there is another general command input (S910).

만약, 호스트 프로세서가 수신한 명령어가 읽기, 뉴 프로텍션, 삭제 또는 플러시 명령어인 경우, DP 메모리의 데이터 영역에 명령어에 해당되는 데이터를 쓴다(S930).If the command received by the host processor is a read, new protection, delete, or flush command, data corresponding to the command is written in the data area of the DP memory (S930).

만약, 호스트 프로세서가 수신한 명령어가 인스턴트 읽기 또는 인스턴트 쓰기 명령어인 경우, 호스트 프로세서는 인스턴트 읽기 또는 인스턴트 쓰기 명령어와 데이터를 DP 메모리의 인스턴트 영역에 쓴다(S940)If the command received by the host processor is an instant read or instant write command, the host processor writes the instant read or instant write command and data to the instant area of the DP memory (S940).

이어서, 호스트 프로세서는 DP 메모리의 소유권을 스토리지 프로세서로 전송한다(S931). Subsequently, the host processor transmits ownership of the DP memory to the storage processor (S931).

여기서, 단계 930 내지 단계 S931은 도6의 단계 S120에 해당하는 단계이다.Here, steps 930 to S931 are steps corresponding to step S120 of FIG. 6.

이어서, 호스트 프로세서는 명령어에 대한 응답을 스토리지 프로세서로부터 수신한다(S932). 여기서 단계 S932는 도7의 S180에 해당하는 단계이다.Subsequently, the host processor receives a response to the command from the storage processor (S932). In this case, step S932 corresponds to step S180 of FIG. 7.

이어서, 호스트 프로세서가 스토리지 프로세서로부터 명령에 대한 응답을 수신하면, 호스트 프로세서는 DP 메모리의 큐 매니저 영역에 있는 명령어 처리 순서에 대한 정보를 확인한다(S933).Subsequently, when the host processor receives a response to the command from the storage processor, the host processor checks the information on the order processing order in the queue manager area of the DP memory (S933).

만약, 호스트 프로세서는 수신한 응답이 읽기, 인스턴트 읽기(Instant Read), 읽기 정보(Read Info), 읽기 프로텍션 정보(Read Protection Info) 등의 명령어가 처리된 후 전달된 것이면, 읽기 데이터를 모바일 운영체제의 파일 시스템으로 전송한다(S934).If the received response is delivered after a command such as read, instant read, read info, read protection info, etc. is processed, the host processor may read the read data of the mobile operating system. Transfer to the file system (S934).

만약, 호스트 프로세서가 수신한 응답이 뉴 프로텍션, 클리어 프로텍션(Clear Protection), 패스워드 변경, 삭제, 플러시, 포커싱 삭제(Forcing Erase) 등의 명령어가 처리 후 전달된 것이라면, 호스트 프로세서는 수신한 응답을 모바일 운영체제의 파일 시스템으로 전송한다(S935).
If the response received by the host processor is a command such as New Protection, Clear Protection, Change Password, Delete, Flush, or Force Erase, the host processor sends the received response to the mobile. Transfer to the file system of the operating system (S935).

도8은 본 발명의 실시예에 따른 스토리지 프로세서의 인터럽트 명령어 처리 방법을 나타낸 순서도이다.8 is a flowchart illustrating an interrupt command processing method of a storage processor according to an exemplary embodiment of the present invention.

도8를 참조하면, 우선, 스토리지 프로세서는 인터럽트 플래그(Flag)를 확인한다(S810). 인터럽트 플래그는 인터럽트를 위해 사용되는 미리 정의된 비트이다. 즉, 호스트 프로세서에서 DP 메모리로 명령어 및 데이터를 전송하였을 경우, 이를 알리기 위해 DP 메모리는 인터럽트를 생성하여 스토리지 프로세서로 전송한다. 이때, 인터럽트 플래그는 세트 될 수 있다. 인터럽트 플래그의 비트 수 및 세트 방법은 당업자에 의해 다양하게 변경 가능하다.Referring to FIG. 8, first, the storage processor checks an interrupt flag Flag in operation S810. The interrupt flag is a predefined bit used for interrupts. That is, when a command processor and a data are transmitted from the host processor to the DP memory, the DP memory generates an interrupt and transmits the interrupt to the storage processor. At this time, the interrupt flag may be set. The number of bits and the set method of the interrupt flag can be variously changed by those skilled in the art.

만약, 인터럽트 플래그가 세트 상태가 아니(Flag==0)라면(S820), 스토리지 프로세서는 처음 단계(S810)로 되돌아 간다.If the interrupt flag is not set (Flag == 0) (S820), the storage processor returns to the first step (S810).

만약, 인터럽트 플래그가 세트(Flag==1)라면(S830), 스토리지 프로세서는 DP 메모리의 명령어를 해독한다(S840). 즉, 인터럽트 플래그가 세트 상태라면, 호스트 프로세서가 스토리지 프로세서가 처리해야 할 명령어를 DP 메모리에 저장한 상태이다. 따라서, 스토리지 프로세서는 인터럽트 플래그가 세트 된 상태라면, DP 메모리에 접근하여 저장된 명령어를 해독할 수 있다.If the interrupt flag is set (Flag == 1) (S830), the storage processor decodes an instruction of the DP memory (S840). In other words, if the interrupt flag is set, the host processor stores the instructions to be processed by the storage processor in the DP memory. Thus, if the interrupt flag is set, the storage processor may access the DP memory and decode the stored instruction.

이어서, 스토리지 프로세서는 해독한 인터럽트 명령어에 따른 동작을 실행한다(S850).Subsequently, the storage processor executes an operation according to the decrypted interrupt command (S850).

이어서, 스토리지 프로세서는 인터럽트 명령어 실행(S850)이 완료되면, DP 메모리의 소유권을 유지해야 하는지, 호스트 프로세서로 전달해야 할지 판단한다(S860).Subsequently, when the interrupt instruction execution (S850) is completed, the storage processor determines whether to maintain ownership of the DP memory or transfer the host processor to the host processor (S860).

만약, DP 메모리의 소유권을 호스트 프로세서로 전달해야 한다면, 스토리지 프로세서는 DP 메모리를 통해서 호스트 프로세서로 DP 메모리의 소유권을 전달한다(S870).If it is necessary to transfer ownership of the DP memory to the host processor, the storage processor transfers ownership of the DP memory to the host processor through the DP memory (S870).

만약, DP 메모리의 소유권을 호스트 프로세서로 전달하지 않아도 된다면, 소유권을 호스트 프로세서로 전달하는 단계(S870)는 생략할 수 있다.If it is not necessary to transfer ownership of the DP memory to the host processor, step S870 of transferring ownership to the host processor may be omitted.

이어서, 스토리지 프로세서는 인터럽트 명령어 실행 대한 응답을 호스트 프로세서로 전송해야 하는지 판단한다(S880).Subsequently, the storage processor determines whether a response to the execution of the interrupt command should be transmitted to the host processor (S880).

만약, 응답을 호스트 프로세서로 전송하지 않아도 된다면, 스토리지 프로세서는 처음 단계(S810)로 되돌아갈 수 있다.If it is not necessary to send a response to the host processor, the storage processor may return to the first step (S810).

만약, 응답을 호스트 프로세서로 전송해야 한다면, 스토리지 프로세서는 DP 메모리를 통해서 호스트 프로세서로 응답을 전송한다(S890). 스토리지 프로세서는 호스트 프로세서로 명령어 처리에 대한 응답을 전송한 후에 다시 처음 단계(S810)로 되돌아가 다시 처음부터 실행될 수 있다.
If it is necessary to transmit the response to the host processor, the storage processor transmits the response to the host processor through the DP memory (S890). After the storage processor transmits a response to the command processing to the host processor, the storage processor may return to the first step (S810) and execute again from the beginning.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
Although the above has been described with reference to a preferred embodiment of the present invention, those skilled in the art to which the present invention pertains without departing from the spirit and scope of the present invention as set forth in the claims below It will be appreciated that modifications and variations can be made.

110 : 호스트 프로세서
120 : 스토리지 프로세서
130 : DP 메모리
131 : 일반 명령어 영역
132 : 인터럽트 명령어 영역
133 : 데이터 영역
140 : H-포트
150 : M-포트
110: host processor
120: storage processor
130: DP memory
131: general command area
132: interrupt instruction area
133: data area
140: H-port
150: M-port

Claims (21)

삭제delete 삭제delete 모바일의 스토리지 제어 방법에 있어서,
(a) 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신하는 단계;
(b) 상기 호스트 프로세서가 DP 메모리에 명령어 및 데이터를 저장하는 단계;
(c) 상기 명령어 및 데이터가 저장된 상기 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 전송하는 단계;
(d) 상기 인터럽트를 수신한 상기 스토리지 프로세서가 상기 DP 메모리에 저장된 상기 명령어 및 데이터를 해독하는 단계;
(e) 상기 스토리지 프로세서가 해독한 상기 명령어에 상응하는 동작을 수행하는 단계;
(f) 상기 스토리지 프로세서가 상기 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 상기 DP 메모리로 전송하는 단계;
(g) 상기 DP 메모리는 수신한 상기 명령어 응답에 대한 인터럽트를 상기 호스트 프로세서로 전송하는 단계; 및
(h) 상기 명령어 응답에 대한 인터럽트를 수신한 상기 호스트 프로세서가 상기 DP 메모리로부터 상기 명령어 응답을 수신하는 단계를 포함하며,
상기 (a)단계 이후에,
(a-1) 상기 호스트 프로세서가 상기 수신된 명령어가 일반 명령어인지, 인터럽트 명령어인지 확인하는 단계를 더 포함하고,
상기 (a-1)단계 이후,
(a-2) 상기 호스트 프로세서가 수신한 명령어가 일반 명령어인 경우, 상기 DP 메모리의 소유권을 확인하는 단계; 및
(a-3) 상기 DP 메모리의 소유권을 확인한 결과, 상기 호스트 프로세서가 상기 DP 메모리의 소유권이 없다면, 상기 DP 메모리의 소유권 요청에 대한 인터럽트 명령어를 상기 DP 메모리를 통해 상기 스토리지 프로세서로 전송함으로써, 상기 DP 메모리의 소유권을 획득하는 단계를 더 포함하는 모바일 스토리지 제어 방법.
In the storage control method of the mobile,
(a) the host processor receiving an instruction input from an outside of the mobile;
(b) the host processor storing instructions and data in a DP memory;
(c) the DP memory storing the command and data generating and transmitting an interrupt to a storage processor;
(d) decrypting, by the storage processor upon receipt of the interrupt, the instructions and data stored in the DP memory;
(e) performing an operation corresponding to the instruction decrypted by the storage processor;
(f) transmitting a command response to the DP memory as a result of the storage processor performing an operation corresponding to the command;
(g) the DP memory transmitting an interrupt for the received command response to the host processor; And
(h) receiving the command response from the DP memory by the host processor receiving the interrupt for the command response,
After step (a),
(a-1) checking, by the host processor, whether the received instruction is a general instruction or an interrupt instruction,
After the step (a-1),
(a-2) if the command received by the host processor is a general command, verifying ownership of the DP memory; And
(a-3) if the host processor does not have ownership of the DP memory as a result of confirming ownership of the DP memory, by sending an interrupt instruction for the ownership request of the DP memory to the storage processor through the DP memory, And obtaining ownership of the DP memory.
모바일의 스토리지 제어 방법에 있어서,
(a) 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신하는 단계;
(b) 상기 호스트 프로세서가 DP 메모리에 명령어 및 데이터를 저장하는 단계;
(c) 상기 명령어 및 데이터가 저장된 상기 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 전송하는 단계;
(d) 상기 인터럽트를 수신한 상기 스토리지 프로세서가 상기 DP 메모리에 저장된 상기 명령어 및 데이터를 해독하는 단계;
(e) 상기 스토리지 프로세서가 해독한 상기 명령어에 상응하는 동작을 수행하는 단계;
(f) 상기 스토리지 프로세서가 상기 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 상기 DP 메모리로 전송하는 단계;
(g) 상기 DP 메모리는 수신한 상기 명령어 응답에 대한 인터럽트를 상기 호스트 프로세서로 전송하는 단계; 및
(h) 상기 명령어 응답에 대한 인터럽트를 수신한 상기 호스트 프로세서가 상기 DP 메모리로부터 상기 명령어 응답을 수신하는 단계를 포함하며,
상기 (a)단계 이후에,
(a-1) 상기 호스트 프로세서가 상기 수신된 명령어가 일반 명령어인지, 인터럽트 명령어인지 확인하는 단계를 더 포함하고,
상기 (a-1)단계 이후,
(a-4) 상기 호스트 프로세서가 수신한 명령어가 인터럽트 명령어인 경우,
상기 호스트프로세서는 상기 DP 메모리의 인터럽트 영역에 인터럽트 명령어 및 데이터를 저장하는 단계를 더 포함하는 모바일 스토리지 제어 방법.
In the storage control method of the mobile,
(a) the host processor receiving an instruction input from an outside of the mobile;
(b) the host processor storing instructions and data in a DP memory;
(c) the DP memory storing the command and data generating and transmitting an interrupt to a storage processor;
(d) decrypting, by the storage processor upon receipt of the interrupt, the instructions and data stored in the DP memory;
(e) performing an operation corresponding to the instruction decrypted by the storage processor;
(f) transmitting a command response to the DP memory as a result of the storage processor performing an operation corresponding to the command;
(g) the DP memory transmitting an interrupt for the received command response to the host processor; And
(h) receiving the command response from the DP memory by the host processor receiving the interrupt for the command response,
After step (a),
(a-1) checking, by the host processor, whether the received instruction is a general instruction or an interrupt instruction,
After the step (a-1),
(a-4) when the command received by the host processor is an interrupt command,
The host processor further comprises the step of storing the interrupt instruction and data in the interrupt area of the DP memory.
모바일의 스토리지 제어 방법에 있어서,
(a) 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신하는 단계;
(b) 상기 호스트 프로세서가 DP 메모리에 명령어 및 데이터를 저장하는 단계;
(c) 상기 명령어 및 데이터가 저장된 상기 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 전송하는 단계;
(d) 상기 인터럽트를 수신한 상기 스토리지 프로세서가 상기 DP 메모리에 저장된 상기 명령어 및 데이터를 해독하는 단계;
(e) 상기 스토리지 프로세서가 해독한 상기 명령어에 상응하는 동작을 수행하는 단계;
(f) 상기 스토리지 프로세서가 상기 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 상기 DP 메모리로 전송하는 단계;
(g) 상기 DP 메모리는 수신한 상기 명령어 응답에 대한 인터럽트를 상기 호스트 프로세서로 전송하는 단계; 및
(h) 상기 명령어 응답에 대한 인터럽트를 수신한 상기 호스트 프로세서가 상기 DP 메모리로부터 상기 명령어 응답을 수신하는 단계를 포함하며,
상기 (a)단계 이후,
(a-5) 상기 호스트 프로세서는 상기 스토리지 프로세서가 활성화 상태인지 확인하는 단계를 더 포함하는 모바일 스토리지 제어 방법.
In the storage control method of the mobile,
(a) the host processor receiving an instruction input from an outside of the mobile;
(b) the host processor storing instructions and data in a DP memory;
(c) the DP memory storing the command and data generating and transmitting an interrupt to a storage processor;
(d) decrypting, by the storage processor upon receipt of the interrupt, the instructions and data stored in the DP memory;
(e) performing an operation corresponding to the instruction decrypted by the storage processor;
(f) transmitting a command response to the DP memory as a result of the storage processor performing an operation corresponding to the command;
(g) the DP memory transmitting an interrupt for the received command response to the host processor; And
(h) receiving the command response from the DP memory by the host processor receiving the interrupt for the command response,
After the step (a),
(a-5) The host processor further comprises the step of checking whether the storage processor is active.
제5항에 있어서,
상기 (a-5)단계에서,
(a-6) 상기 스토리지 프로세서가 비활성화 상태인 경우,
상기 호스트 프로세서는 상기 스토리지 프로세서를 활성화 시키는 명령어를 상기 DP 메모리를 통해 상기 스토리지 프로세서로 전송하는 단계를 더 포함하는 모바일 스토리지 제어 방법.
The method of claim 5,
In the step (a-5),
(a-6) when the storage processor is inactive,
And transmitting, by the host processor, a command to activate the storage processor to the storage processor through the DP memory.
모바일의 스토리지 제어 방법에 있어서,
(a) 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신하는 단계;
(b) 상기 호스트 프로세서가 DP 메모리에 명령어 및 데이터를 저장하는 단계;
(c) 상기 명령어 및 데이터가 저장된 상기 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 전송하는 단계;
(d) 상기 인터럽트를 수신한 상기 스토리지 프로세서가 상기 DP 메모리에 저장된 상기 명령어 및 데이터를 해독하는 단계;
(e) 상기 스토리지 프로세서가 해독한 상기 명령어에 상응하는 동작을 수행하는 단계;
(f) 상기 스토리지 프로세서가 상기 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 상기 DP 메모리로 전송하는 단계;
(g) 상기 DP 메모리는 수신한 상기 명령어 응답에 대한 인터럽트를 상기 호스트 프로세서로 전송하는 단계; 및
(h) 상기 명령어 응답에 대한 인터럽트를 수신한 상기 호스트 프로세서가 상기 DP 메모리로부터 상기 명령어 응답을 수신하는 단계를 포함하며,
상기 (a)단계 이후,
(a-7) 상기 호스트 프로세서는 상기 DP 메모리의 명령어 큐 중에서 비어 있는 명령어 큐가 있는지 확인하는 단계를 더 포함하는 모바일 스토리지 제어 방법.
In the storage control method of the mobile,
(a) the host processor receiving an instruction input from an outside of the mobile;
(b) the host processor storing instructions and data in a DP memory;
(c) the DP memory storing the command and data generating and transmitting an interrupt to a storage processor;
(d) decrypting, by the storage processor upon receipt of the interrupt, the instructions and data stored in the DP memory;
(e) performing an operation corresponding to the instruction decrypted by the storage processor;
(f) transmitting a command response to the DP memory as a result of the storage processor performing an operation corresponding to the command;
(g) the DP memory transmitting an interrupt for the received command response to the host processor; And
(h) receiving the command response from the DP memory by the host processor receiving the interrupt for the command response,
After the step (a),
(a-7) The host processor further comprises checking whether there is an empty command queue among the command queues of the DP memory.
제7항에 있어서,
상기 (a-7)단계에서,
상기 DP 메모리의 명령어 큐 중에서 비어있는 명령어 큐가 없다면,
(a-8) 상기 호스트 프로세서는 상기 DP 메모리의 소유권을 상기 스토리지 프로세서로 전송하는 단계; 및
(a-9) 상기 스토리지 프로세서가 상기 DP 메모리에 저장된 명령어를 실행하는 단계를 포함하되,
상기 DP 메모리에 저장된 상기 명령어 중에서 상기 스토리지 프로세서에 의해 실행된 명령어는 삭제하는 것을 특징으로 하는 모바일 스토리지 제어 방법.
The method of claim 7, wherein
In the step (a-7),
If there is no empty command queue among the command queues of the DP memory,
(a-8) the host processor transmitting ownership of the DP memory to the storage processor; And
(a-9) the storage processor executing an instruction stored in the DP memory,
And among the instructions stored in the DP memory, instructions executed by the storage processor to delete.
삭제delete 모바일의 스토리지 제어 방법에 있어서,
(a) 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신하는 단계;
(b) 상기 호스트 프로세서가 DP 메모리에 명령어 및 데이터를 저장하는 단계;
(c) 상기 명령어 및 데이터가 저장된 상기 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 전송하는 단계;
(d) 상기 인터럽트를 수신한 상기 스토리지 프로세서가 상기 DP 메모리에 저장된 상기 명령어 및 데이터를 해독하는 단계;
(e) 상기 스토리지 프로세서가 해독한 상기 명령어에 상응하는 동작을 수행하는 단계;
(f) 상기 스토리지 프로세서가 상기 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 상기 DP 메모리로 전송하는 단계;
(g) 상기 DP 메모리는 수신한 상기 명령어 응답에 대한 인터럽트를 상기 호스트 프로세서로 전송하는 단계; 및
(h) 상기 명령어 응답에 대한 인터럽트를 수신한 상기 호스트 프로세서가 상기 DP 메모리로부터 상기 명령어 응답을 수신하는 단계를 포함하며,
상기 (d)단계에서,
상기 스토리지 프로세서는 상기 DP 메모리 내의 환형 큐 헤더(Circular Queue Header) 정보를 기반으로 수행될 명령어를 순차적으로 해독하고 실행하는 모바일 스토리지 제어 방법.
In the storage control method of the mobile,
(a) the host processor receiving an instruction input from an outside of the mobile;
(b) the host processor storing instructions and data in a DP memory;
(c) the DP memory storing the command and data generating and transmitting an interrupt to a storage processor;
(d) decrypting, by the storage processor upon receipt of the interrupt, the instructions and data stored in the DP memory;
(e) performing an operation corresponding to the instruction decrypted by the storage processor;
(f) transmitting a command response to the DP memory as a result of the storage processor performing an operation corresponding to the command;
(g) the DP memory transmitting an interrupt for the received command response to the host processor; And
(h) receiving the command response from the DP memory by the host processor receiving the interrupt for the command response,
In the step (d),
And the storage processor sequentially decrypts and executes a command to be performed based on circular queue header information in the DP memory.
모바일의 스토리지 제어 방법에 있어서,
(a) 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신하는 단계;
(b) 상기 호스트 프로세서가 DP 메모리에 명령어 및 데이터를 저장하는 단계;
(c) 상기 명령어 및 데이터가 저장된 상기 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 전송하는 단계;
(d) 상기 인터럽트를 수신한 상기 스토리지 프로세서가 상기 DP 메모리에 저장된 상기 명령어 및 데이터를 해독하는 단계;
(e) 상기 스토리지 프로세서가 해독한 상기 명령어에 상응하는 동작을 수행하는 단계;
(f) 상기 스토리지 프로세서가 상기 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 상기 DP 메모리로 전송하는 단계;
(g) 상기 DP 메모리는 수신한 상기 명령어 응답에 대한 인터럽트를 상기 호스트 프로세서로 전송하는 단계; 및
(h) 상기 명령어 응답에 대한 인터럽트를 수신한 상기 호스트 프로세서가 상기 DP 메모리로부터 상기 명령어 응답을 수신하는 단계를 포함하며,
상기 (e)단계 이후에,
(e-1) 상기 스토리지 프로세서가 상기 DP 메모리의 소유권 유지 여부를 판단하는 단계를 더 포함하는 모바일 스토리지 제어 방법.
In the storage control method of the mobile,
(a) the host processor receiving an instruction input from an outside of the mobile;
(b) the host processor storing instructions and data in a DP memory;
(c) the DP memory storing the command and data generating and transmitting an interrupt to a storage processor;
(d) decrypting, by the storage processor upon receipt of the interrupt, the instructions and data stored in the DP memory;
(e) performing an operation corresponding to the instruction decrypted by the storage processor;
(f) transmitting a command response to the DP memory as a result of the storage processor performing an operation corresponding to the command;
(g) the DP memory transmitting an interrupt for the received command response to the host processor; And
(h) receiving the command response from the DP memory by the host processor receiving the interrupt for the command response,
After step (e),
(e-1) the storage processor further comprising determining whether to maintain ownership of the DP memory.
제11항에 있어서,
상기 (e-1)단계에서,
(e-2) 상기 스토리지 프로세서가 상기 DP 메모리의 소유권을 유지하지 않는 경우, 상기 DP 메모리의 소유권을 상기 호스트 프로세서로 이전하는 단계를 더 포함하는 모바일 스토리지 제어 방법.
The method of claim 11,
In the step (e-1),
(e-2) if the storage processor does not maintain ownership of the DP memory, transferring ownership of the DP memory to the host processor.
모바일의 스토리지 제어 방법에 있어서,
(a) 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신하는 단계;
(b) 상기 호스트 프로세서가 DP 메모리에 명령어 및 데이터를 저장하는 단계;
(c) 상기 명령어 및 데이터가 저장된 상기 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 전송하는 단계;
(d) 상기 인터럽트를 수신한 상기 스토리지 프로세서가 상기 DP 메모리에 저장된 상기 명령어 및 데이터를 해독하는 단계;
(e) 상기 스토리지 프로세서가 해독한 상기 명령어에 상응하는 동작을 수행하는 단계;
(f) 상기 스토리지 프로세서가 상기 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 상기 DP 메모리로 전송하는 단계;
(g) 상기 DP 메모리는 수신한 상기 명령어 응답에 대한 인터럽트를 상기 호스트 프로세서로 전송하는 단계; 및
(h) 상기 명령어 응답에 대한 인터럽트를 수신한 상기 호스트 프로세서가 상기 DP 메모리로부터 상기 명령어 응답을 수신하는 단계를 포함하며,
상기 (f)단계에서,
상기 명령어 응답은 상기 명령어에 상응하는 동작 수행 결과, 명령어 코드(Command Code), 명령어 인덱스(Command Index)를 포함하는 모바일 스토리지 제어 방법.
In the storage control method of the mobile,
(a) the host processor receiving an instruction input from an outside of the mobile;
(b) the host processor storing instructions and data in a DP memory;
(c) the DP memory storing the command and data generating and transmitting an interrupt to a storage processor;
(d) decrypting, by the storage processor upon receipt of the interrupt, the instructions and data stored in the DP memory;
(e) performing an operation corresponding to the instruction decrypted by the storage processor;
(f) transmitting a command response to the DP memory as a result of the storage processor performing an operation corresponding to the command;
(g) the DP memory transmitting an interrupt for the received command response to the host processor; And
(h) receiving the command response from the DP memory by the host processor receiving the interrupt for the command response,
In the step (f),
The command response includes a result of performing an operation corresponding to the command, a command code, a command index.
모바일의 스토리지 제어 방법에 있어서,
(a) 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신하는 단계;
(b) 상기 호스트 프로세서가 DP 메모리에 명령어 및 데이터를 저장하는 단계;
(c) 상기 명령어 및 데이터가 저장된 상기 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 전송하는 단계;
(d) 상기 인터럽트를 수신한 상기 스토리지 프로세서가 상기 DP 메모리에 저장된 상기 명령어 및 데이터를 해독하는 단계;
(e) 상기 스토리지 프로세서가 해독한 상기 명령어에 상응하는 동작을 수행하는 단계;
(f) 상기 스토리지 프로세서가 상기 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 상기 DP 메모리로 전송하는 단계;
(g) 상기 DP 메모리는 수신한 상기 명령어 응답에 대한 인터럽트를 상기 호스트 프로세서로 전송하는 단계; 및
(h) 상기 명령어 응답에 대한 인터럽트를 수신한 상기 호스트 프로세서가 상기 DP 메모리로부터 상기 명령어 응답을 수신하는 단계를 포함하며,
상기 (f)단계에서,
상기 스토리지 프로세서가 상기 명령어 응답 중에서 마지막 명령어 응답을 상기 DP 메모리로 전송 시, 상기 DP 메모리의 소유권은 상기 호스트 프로세서로 이전되는 모바일 스토리지 제어 방법.
In the storage control method of the mobile,
(a) the host processor receiving an instruction input from an outside of the mobile;
(b) the host processor storing instructions and data in a DP memory;
(c) the DP memory storing the command and data generating and transmitting an interrupt to a storage processor;
(d) decrypting, by the storage processor upon receipt of the interrupt, the instructions and data stored in the DP memory;
(e) performing an operation corresponding to the instruction decrypted by the storage processor;
(f) transmitting a command response to the DP memory as a result of the storage processor performing an operation corresponding to the command;
(g) the DP memory transmitting an interrupt for the received command response to the host processor; And
(h) receiving the command response from the DP memory by the host processor receiving the interrupt for the command response,
In the step (f),
And when the storage processor transmits the last command response of the command response to the DP memory, ownership of the DP memory is transferred to the host processor.
모바일의 스토리지 제어 방법에 있어서,
(a) 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신하는 단계;
(b) 상기 호스트 프로세서가 DP 메모리에 명령어 및 데이터를 저장하는 단계;
(c) 상기 명령어 및 데이터가 저장된 상기 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 전송하는 단계;
(d) 상기 인터럽트를 수신한 상기 스토리지 프로세서가 상기 DP 메모리에 저장된 상기 명령어 및 데이터를 해독하는 단계;
(e) 상기 스토리지 프로세서가 해독한 상기 명령어에 상응하는 동작을 수행하는 단계;
(f) 상기 스토리지 프로세서가 상기 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 상기 DP 메모리로 전송하는 단계;
(g) 상기 DP 메모리는 수신한 상기 명령어 응답에 대한 인터럽트를 상기 호스트 프로세서로 전송하는 단계; 및
(h) 상기 명령어 응답에 대한 인터럽트를 수신한 상기 호스트 프로세서가 상기 DP 메모리로부터 상기 명령어 응답을 수신하는 단계를 포함하며,
상기 (f)단계 이전에,
(f-1) 상기 스토리지 프로세서가 상기 DP 메모리로 상기 명령어 응답에 대한 전송 여부를 판단하는 단계를 더 포함하는 모바일 스토리지 제어 방법.
In the storage control method of the mobile,
(a) the host processor receiving an instruction input from an outside of the mobile;
(b) the host processor storing instructions and data in a DP memory;
(c) the DP memory storing the command and data generating and transmitting an interrupt to a storage processor;
(d) decrypting, by the storage processor upon receipt of the interrupt, the instructions and data stored in the DP memory;
(e) performing an operation corresponding to the instruction decrypted by the storage processor;
(f) transmitting a command response to the DP memory as a result of the storage processor performing an operation corresponding to the command;
(g) the DP memory transmitting an interrupt for the received command response to the host processor; And
(h) receiving the command response from the DP memory by the host processor receiving the interrupt for the command response,
Before step (f) above,
and (f-1) determining whether the storage processor transmits the command response to the DP memory.
제15항에 있어서, 상기 (f-1)단계에서,
(f-2) 상기 스토리지 프로세서가 상기 명령어의 응답에 대한 전송을 하지 않는 경우, 상기 (b)단계로 되돌아 가는 것을 특징으로 하는 모바일 스토리지 제어 방법.
The method of claim 15, wherein in step (f-1),
(f-2) if the storage processor does not transmit a response to the command, the method returns to step (b).
모바일의 스토리지 제어 방법에 있어서,
(a) 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신하는 단계;
(b) 상기 호스트 프로세서가 DP 메모리에 명령어 및 데이터를 저장하는 단계;
(c) 상기 명령어 및 데이터가 저장된 상기 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 전송하는 단계;
(d) 상기 인터럽트를 수신한 상기 스토리지 프로세서가 상기 DP 메모리에 저장된 상기 명령어 및 데이터를 해독하는 단계;
(e) 상기 스토리지 프로세서가 해독한 상기 명령어에 상응하는 동작을 수행하는 단계;
(f) 상기 스토리지 프로세서가 상기 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 상기 DP 메모리로 전송하는 단계;
(g) 상기 DP 메모리는 수신한 상기 명령어 응답에 대한 인터럽트를 상기 호스트 프로세서로 전송하는 단계; 및
(h) 상기 명령어 응답에 대한 인터럽트를 수신한 상기 호스트 프로세서가 상기 DP 메모리로부터 상기 명령어 응답을 수신하는 단계를 포함하며,
상기 (b)단계 이후에,
(b-1) 상기 호스트 프로세서는 상기 DP 메모리에 저장한 명령어를 상기 스토리지 프로세서가 수행해야 할 명령어 리스트가 저장된 저장 공간에 저장함으로써 상기 명령어 리스트를 갱신하는 단계를 더 포함하는 모바일 스토리지 제어 방법.
In the storage control method of the mobile,
(a) the host processor receiving an instruction input from an outside of the mobile;
(b) the host processor storing instructions and data in a DP memory;
(c) the DP memory storing the command and data generating and transmitting an interrupt to a storage processor;
(d) decrypting, by the storage processor upon receipt of the interrupt, the instructions and data stored in the DP memory;
(e) performing an operation corresponding to the instruction decrypted by the storage processor;
(f) transmitting a command response to the DP memory as a result of the storage processor performing an operation corresponding to the command;
(g) the DP memory transmitting an interrupt for the received command response to the host processor; And
(h) receiving the command response from the DP memory by the host processor receiving the interrupt for the command response,
After step (b),
and (b-1) updating the command list by storing the command stored in the DP memory in a storage space in which the command list to be executed by the storage processor is stored.
제17항에 있어서,
상기 (h)단계 이후에,
(h-1) 상기 호스트 프로세서는 수신한 상기 명령어 처리 결과와 상기 명령어 리스트를 비교하여 누락된 명령어가 없는지 확인하는 단계를 더 포함하는 모바일 스토리지 제어 방법.
The method of claim 17,
After step (h),
(h-1) the host processor further comprising comparing the received command processing result with the command list and checking whether there are no missing commands.
모바일의 스토리지 제어 방법에 있어서,
(a) 호스트 프로세서가 모바일의 외부로부터 입력된 명령어를 수신하는 단계;
(b) 상기 호스트 프로세서가 DP 메모리에 명령어 및 데이터를 저장하는 단계;
(c) 상기 명령어 및 데이터가 저장된 상기 DP 메모리가 스토리지 프로세서로 인터럽트를 생성하여 전송하는 단계;
(d) 상기 인터럽트를 수신한 상기 스토리지 프로세서가 상기 DP 메모리에 저장된 상기 명령어 및 데이터를 해독하는 단계;
(e) 상기 스토리지 프로세서가 해독한 상기 명령어에 상응하는 동작을 수행하는 단계;
(f) 상기 스토리지 프로세서가 상기 명령어에 상응하는 동작을 수행한 결과인 명령어 응답을 상기 DP 메모리로 전송하는 단계;
(g) 상기 DP 메모리는 수신한 상기 명령어 응답에 대한 인터럽트를 상기 호스트 프로세서로 전송하는 단계; 및
(h) 상기 명령어 응답에 대한 인터럽트를 수신한 상기 호스트 프로세서가 상기 DP 메모리로부터 상기 명령어 응답을 수신하는 단계를 포함하며,
상기 (h)단계 이후,
(h-2) 상기 호스트 프로세서는 상기 스토리지 프로세서가 상기 명령어에 상응하는 동작을 수행하는 동안 상기 모바일의 외부로부터 입력된 다른 명령어가 있는지 확인하는 단계를 더 포함하는 모바일 스토리지 제어 방법.
In the storage control method of the mobile,
(a) the host processor receiving an instruction input from an outside of the mobile;
(b) the host processor storing instructions and data in a DP memory;
(c) the DP memory storing the command and data generating and transmitting an interrupt to a storage processor;
(d) decrypting, by the storage processor upon receipt of the interrupt, the instructions and data stored in the DP memory;
(e) performing an operation corresponding to the instruction decrypted by the storage processor;
(f) transmitting a command response to the DP memory as a result of the storage processor performing an operation corresponding to the command;
(g) the DP memory transmitting an interrupt for the received command response to the host processor; And
(h) receiving the command response from the DP memory by the host processor receiving the interrupt for the command response,
After the step (h),
(h-2) the host processor further comprising checking whether there is another command input from the outside of the mobile while the storage processor performs an operation corresponding to the command.
제19항에 있어서,
상기 (h-2)단계에서,
(h-3) 상기 다른 명령어가 있는 경우, 상기 호스트 프로세서는 상기 (b)단계부터 다시 수행되는 단계; 및
(h-4) 상기 다른 명령어가 없는 경우, 상기 호스트 프로세서는 상기 명령어 처리를 종료하는 단계를 더 포함하는 모바일 스토리지 제어 방법.
20. The method of claim 19,
In the step (h-2),
(h-3) if there is the other instruction, the host processor is executed again from the step (b); And
(h-4) if there is no other command, the host processor further comprising the step of terminating the command processing.
삭제delete
KR1020100032935A 2010-04-09 2010-04-09 Mobile storage control method KR101137297B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100032935A KR101137297B1 (en) 2010-04-09 2010-04-09 Mobile storage control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100032935A KR101137297B1 (en) 2010-04-09 2010-04-09 Mobile storage control method

Publications (2)

Publication Number Publication Date
KR20110113503A KR20110113503A (en) 2011-10-17
KR101137297B1 true KR101137297B1 (en) 2012-04-19

Family

ID=45028842

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100032935A KR101137297B1 (en) 2010-04-09 2010-04-09 Mobile storage control method

Country Status (1)

Country Link
KR (1) KR101137297B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102415995B1 (en) * 2015-09-30 2022-06-30 엘지디스플레이 주식회사 Image processor and display device
KR102565918B1 (en) 2016-02-24 2023-08-11 에스케이하이닉스 주식회사 Data storage device and operating method thereof

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080072412A (en) * 2007-02-02 2008-08-06 엠텍비젼 주식회사 Dual port memory for directly transferring command between processors and method of performing the same

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080072412A (en) * 2007-02-02 2008-08-06 엠텍비젼 주식회사 Dual port memory for directly transferring command between processors and method of performing the same

Also Published As

Publication number Publication date
KR20110113503A (en) 2011-10-17

Similar Documents

Publication Publication Date Title
KR102453780B1 (en) Apparatuses and methods for securing an access protection scheme
KR102336443B1 (en) Storage device and user device supporting virtualization function
TWI463317B (en) Memory device and control method thereof
US20160232103A1 (en) Block storage apertures to persistent memory
WO2017084565A1 (en) Storage data access method, related controller, device, host, and system
US10719462B2 (en) Technologies for computational storage via offload kernel extensions
US20100185811A1 (en) Data processing system and method
US20190171392A1 (en) Method of operating storage device capable of reducing write latency
US8924606B2 (en) Storage system and data transfer control method
KR102648180B1 (en) Memory system and operating method thereof
US10585822B2 (en) Operation method of host system including storage device and operation method of storage device controller
US20220300207A1 (en) Computational storage device, method, and data processing system
CN101501639A (en) Flash memory access circuit
KR20190088734A (en) Memory interface and memory controller having the same, and memory system having the same
JP2017033501A (en) Storage device and control method
KR20160105625A (en) Data storage device and operating method thereof
KR101137297B1 (en) Mobile storage control method
US9904622B2 (en) Control method for non-volatile memory and associated computer system
TWI521345B (en) Method for reading response and data transmission system
US20200242040A1 (en) Apparatus and Method of Optimizing Memory Transactions to Persistent Memory Using an Architectural Data Mover
JP2013137624A (en) Data storage device, memory control device and method
KR101041838B1 (en) Mobile storage control device and method
US9058295B2 (en) Encrypt data of storage device
JP2011192053A (en) Disk array device, disk array system and cache control method
CN107025190B (en) System and method of operation thereof

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170102

Year of fee payment: 5

R401 Registration of restoration
FPAY Annual fee payment

Payment date: 20170331

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190329

Year of fee payment: 8