KR101041838B1 - Mobile storage control device and method - Google Patents

Mobile storage control device and method Download PDF

Info

Publication number
KR101041838B1
KR101041838B1 KR1020090104620A KR20090104620A KR101041838B1 KR 101041838 B1 KR101041838 B1 KR 101041838B1 KR 1020090104620 A KR1020090104620 A KR 1020090104620A KR 20090104620 A KR20090104620 A KR 20090104620A KR 101041838 B1 KR101041838 B1 KR 101041838B1
Authority
KR
South Korea
Prior art keywords
storage
processor
memory
host processor
mobile
Prior art date
Application number
KR1020090104620A
Other languages
Korean (ko)
Other versions
KR20110047838A (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 KR1020090104620A priority Critical patent/KR101041838B1/en
Publication of KR20110047838A publication Critical patent/KR20110047838A/en
Application granted granted Critical
Publication of KR101041838B1 publication Critical patent/KR101041838B1/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/0604Improving or facilitating administration, e.g. storage management
    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory

Abstract

본 발명은 모바일용 스토리지 제어 장치 및 방법에 관한 것이다. 본 발명에 따른 모바일용 스토리지 제어 장치는 호스트 프로세서로부터의 요청에 의한 기능 수행 및 스토리지를 제어하는 스토리지 프로세서, 호스트 프로세서와 스토리지 프로세서 간의 통신 및 프로그램 및 데이터가 임시로 저장되는 제1 스토리지부 및 호스트 프로세서 또는 상기 스토리지 프로세서에 의해 사용되는 프로그램 및 데이터가 저장된 제2 스토리지부를 포함하되, 제1 스토리지부는 호스트 프로세서에 의해 사용될 모바일용 운영체제 프로그램이 임시 저장되는 휘발성 메모리부 및 호스트 프로세서와 스토리지 프로세서 간의 통신을 위한 명령어 또는 데이터를 송수신하는 DP 메모리부를 포함한다. 본 발명에 따르면, 모바일 기기의 기능 수행 시, 저속의 저장매체를 고속으로 제어하여 시스템 성능을 향상시킨다는 효과가 있다.The present invention relates to a storage control device and method for mobile. The mobile storage control apparatus according to the present invention includes a storage processor for controlling functions and storage by a request from a host processor, a communication between the host processor and the storage processor, and a first storage unit and a host processor temporarily storing programs and data. Or a second storage unit storing a program and data used by the storage processor, wherein the first storage unit communicates between the host processor and the storage processor and the volatile memory unit temporarily storing a mobile operating system program to be used by the host processor. It includes a DP memory unit for transmitting and receiving instructions or data for. According to the present invention, when performing the function of the mobile device, there is an effect of improving the system performance by controlling the low-speed storage medium at high speed.

모바일, 스토리지, 스토리지 프로세서, 호스트 프로세서 Mobile, storage, storage processor, host processor

Description

모바일용 스토리지 제어 장치 및 방법{MOBILE STORAGE CONTROL DEVICE AND METHOD}MOBILE STORAGE CONTROL DEVICE AND METHOD}

본 발명은 모바일용 스토리지 제어 장치 및 방법에 관한 것으로, 더욱 상세하게는 모바일의 기능 수행 시, 저속의 저장매체를 고속으로 제어하여 시스템 성능 향상에 효과적인 모바일 스토리지 제어 장치 및 방법에 관한 것입니다.The present invention relates to a storage control device and method for a mobile device, and more particularly, to a mobile storage control device and method effective for improving system performance by controlling a low-speed storage medium at high speed when performing a mobile function.

모바일 기기를 이용한 영화, 게임 및 인터넷 등과 같은 멀티미디어 서비스가 보편화 되고 멀티미디어 기능이 증대되고 있다. 이에 따라 저전력 및 고속으로 저장매체(스토리지, 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 the performance is degraded. 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 storage control device for a mobile device such that the host processor controls the low-speed storage medium at high speed when performing a mobile function.

또한, 본 발명은 모바일 기능 수행 시, 종래에 비해 호스트 프로세서의 점유율을 감소시킨 모바일용 스토리지 제어 장치를 제공하는 것이다.In addition, the present invention is to provide a mobile storage control device for reducing the share of the host processor when performing a mobile function, compared to the prior art.

또한, 본 발명은 간단한 하드웨어 인터페이스를 제공하는 모바일용 스토리지 제어 장치를 제공하는 것이다.In addition, the present invention is to provide a mobile storage control device that provides a simple hardware interface.

또한, 본 발명은 종래에 비해 전력 소모를 줄일 수 있는 모바일용 스토리지 제어 장치를 제공하는 것이다.In addition, the present invention is to provide a mobile storage control device that can reduce power consumption compared to the prior art.

본 발명의 실시예에 의하면, 호스트 프로세서로부터의 요청에 의한 기능 수행 및 스토리지를 제어하는 스토리지 프로세서, 호스트 프로세서와 스토리지 프로세서 간의 통신 및 프로그램 및 데이터가 임시로 저장되는 제1 스토리지부 및 호스트 프로세서 또는 스토리지 프로세서에 의해 사용되는 프로그램 및 데이터가 저장된 제2 스토리지부를 포함하되, 제1 스토리지부는 호스트 프로세서에 의해 사용될 모바일용 운영체제 프로그램이 임시 저장되는 휘발성 메모리부 및 호스트 프로세서와 스토리지 프로세서 간의 통신을 위한 명령어 또는 데이터를 송수신하는 DP 메모리부를 포함하는 것을 특징으로 하는 모바일용 스토리지 제어 장치가 제공된다.According to an embodiment of the present invention, a storage processor for controlling functions and storage by a request from a host processor, a communication between the host processor and the storage processor, a first storage unit for temporarily storing programs and data, and a host processor or storage And a second storage unit storing a program and data used by the processor, wherein the first storage unit includes instructions for communication between the host processor and the storage processor and a volatile memory unit temporarily storing a mobile operating system program to be used by the host processor. Provided is a mobile storage control device comprising a DP memory unit for transmitting and receiving data.

호스트 프로세서는 통신을 수행하는 베이스밴드 프로세서, 그리고 응용 및 멀티미디어 기능을 수행하는 응용 프로세서를 포함할 수 있다.The host processor may include a baseband processor that performs communication, and an application processor that performs application and multimedia functions.

스토리지 프로세서는 ARM 계열의 마이크로 프로세서를 포함하여 구성될 수 있다.The storage processor may include an ARM family of microprocessors.

휘발성 메모리부는 제1 DRAM, 제2 DRAM을 포함하여 구성될 수 있다. 제1 DRAM은 제2 스토리지부에 저장된 스토리지 프로세서에 의해 사용되는 프로그램 및 데이터가 임시로 저장된다. 제2 DRAM은 제2 스토리지부에 저장된 호스트 프로세서 에 의해 사용되는 프로그램 및 데이터가 임시로 저장된다. The volatile memory unit may include a first DRAM and a second DRAM. The first DRAM temporarily stores programs and data used by the storage processor stored in the second storage unit. The second DRAM temporarily stores programs and data used by the host processor stored in the second storage unit.

DP 메모리는 이중 포트를 지닌 SRAM 또는 DRAM 메모리일 수 있다.The DP memory may be SRAM or DRAM memory with dual ports.

제2 스토리지부는 비휘발성 메모리이다. 또한, 제2 스토리지부는 USB, SD(Secure Digital) 또는 MMC(Multi-Media Card)에 의해 지원되는 외부 메모리를 더 포함할 수 있다.The second storage unit is a nonvolatile memory. In addition, the second storage unit may further include an external memory supported by USB, Secure Digital (SD), or Multi-Media Card (MMC).

호스트 프로세서와 스토리지 프로세서 및 제1 스토리지부와의 연결은 모바일고속 DDR 인터페이스에 의해 연결될 수 있다.The connection between the host processor, the storage processor, and the first storage unit may be connected by a mobile high speed DDR interface.

스토리지 프로세서와 제2 스토리지부와의 연결은 비휘발성 메모리용 고속 인터페이스에 의해 연결될 수 있다.The connection between the storage processor and the second storage unit may be connected by a high speed interface for nonvolatile memory.

본 발명의 또 다른 실시 예에 의하면, (a) DP 메모리가 호스트 프로세서로부터 수신한 명령어 및 데이터를 저장하는 단계, (b) DP 메모리가 인터럽트 신호를 생성하여 스토리지 프로세서로 전달하는 단계, (c) 스토리지 프로세서가 DP 메모리에 저장된 명령어 또는 데이터를 수신하는 단계, (d) 스토리지 프로세서가 수신된 명령어에 대응하는 동작을 수행하는 단계를 포함하는 것을 특징으로 하는 모바일용 스토리지 제어 방법이 제공된다.According to another embodiment of the present invention, (a) the DP memory to store the instructions and data received from the host processor, (b) the DP memory generates an interrupt signal to pass to the storage processor, (c) A storage processor is provided, the method comprising: receiving a command or data stored in a DP memory by a storage processor; and (d) performing an operation corresponding to the received command by the storage processor.

(d) 단계 이후, (e) 스토리지 프로세서가 동작 완료 후에 다른 명령어가 있는지 확인하는 단계를 더 포함할 수 있다.After step (d), (e) the storage processor may further include checking whether there are other instructions after the operation is completed.

(e) 단계에서, 다른 명령어가 존재하지 않는다면, (f) 스토리지 프로세서는 완료 신호를 DP 메모리를 통해서 호스트 프로세서로 전달하는 단계를 포함할 수 있 다. 만약, 다른 명령어가 존재한다면, (e) 단계에서 다른 명령어가 존재하지 않음이 확인될 때까지, (c) 단계 내지 (e) 단계를 반복적으로 수행할 수 있다.In step (e), if there are no other instructions, (f) the storage processor may include transmitting a completion signal to the host processor through the DP memory. If another command exists, steps (c) to (e) may be repeatedly performed until it is confirmed in step (e) that no other command exists.

본 발명의 모바일용 스토리지 제어 장치 및 방법에 따르면, 모바일 기능 수행 시, 호스트 프로세서가 저속 저장매체를 고속으로 제어 가능하므로, 시스템 성능이 향상되는 효과가 있다.According to the mobile storage control apparatus and method of the present invention, when performing a mobile function, the host processor can control the low-speed storage medium at high speed, thereby improving the system performance.

또한, 본 발명에 의하면, 호스트 프로세서가 데이터 전달 후에 슬립(Sleep)모드로 진입하므로 전력 소모를 감소할 수 있는 효과가 있다.In addition, according to the present invention, since the host processor enters the sleep mode after data transfer, power consumption may be reduced.

또한, 본 발명에 의하면, 호스트 프로세서의 점유율을 감소시키므로 모바일 기기의 성능을 향상시킬 수 있는 효과가 있다.In addition, according to the present invention, since the share of the host processor is reduced, there is an effect of improving the performance of the mobile device.

또한, 본 발명에 의하면, 모바일 고속 인터페이스의 사용에 의해서 모바일 시스템 구성이 간단해지고, 면적 감소, 비용 절감의 효과가 있다.Further, according to the present invention, the use of the mobile high speed interface simplifies the configuration of the mobile system, thereby reducing the area and reducing the cost.

또한, 본 발명에 의하면, 종래보다 강화된 보안이 가능하다는 효과가 있다.In addition, according to the present invention, there is an effect that enhanced security is possible than before.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description.

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

도1은 본 발명의 실시예에 따른 모바일용 스토리지 제어 장치의 블록도이다.1 is a block diagram of a mobile storage control apparatus according to an embodiment of the present invention.

도1을 참조하면, 모바일용 스토리지 제어 장치(100)는 스토리지 프로세서(101), 제1 스토리지부(102) 및 제2 스토리지부(103)를 포함하여 구성된다.Referring to FIG. 1, the mobile storage control device 100 includes a storage processor 101, a first storage unit 102, and a second storage unit 103.

모바일용 스토리지 제어 장치(100)는 모바일의 스토리지를 포함하여 구성되고, 모바일의 스토리지를 통합적으로 제어하는 장치이다.Mobile storage control device 100 is configured to include the storage of the mobile, is a device for integrally controlling the storage of the mobile.

스토리지 프로세서(101)는 모바일용 스토리지 제어 장치(100)에 포함된 스토리지를 제어한다. 즉, 스토리지 프로세서(101)는 수신한 신호에 따라서, 스토리지에 프로그램 또는 데이터를 읽기, 쓰기 또는 삭제 등의 동작을 수행한다.The storage processor 101 controls the storage included in the mobile storage control device 100. That is, the storage processor 101 performs an operation such as reading, writing, or deleting a program or data in the storage according to the received signal.

모바일용 스토리지 제어 장치(100)에 포함된 스토리지는 크게 제1 스토리지부(102)와 제2 스토리지부(103)으로 구분할 수 있다.Storage included in the mobile storage control device 100 may be largely divided into a first storage unit 102 and a second storage unit 103.

제1 스토리지부(102)는 주로 고속 동작이 가능한 휘발성 메모리로 구성된다. 즉, 제1 스토리지부(102)는 주 기능은 데이터 및 프로그램을 임시 저장하는 캐시 메모리 기능 및 호스트 프로세서(도2의 200)와 스토리지 프로세서(101)의 통신 기능이다.The first storage unit 102 is mainly composed of volatile memory capable of high speed operation. That is, the main function of the first storage unit 102 is a cache memory function for temporarily storing data and programs, and a communication function between the host processor (200 of FIG. 2) and the storage processor 101.

제2 스토리지부(103)는 주로 비휘발성 메모리로 구성된다. 즉, 제2 스토리지부(103)의 주 기능은 호스트 프로세서(도2의 200) 및 스토리지 프로세서(101)에서 사용되는 프로그램 또는 데이터를 저장하고 있다. 또한, 제2 스토리지(103)는 모바일에 포함되어 있는 비휘발성 메모리뿐만 아니라 USB 또는 SD(Secure Digital) 및 MMC(multi-Media Card) 포맷을 지원하는 외장형 비휘발성 메모리도 포함될 수 있다.The second storage unit 103 is mainly composed of a nonvolatile memory. That is, the main function of the second storage unit 103 stores a program or data used by the host processor (200 of FIG. 2) and the storage processor 101. In addition, the second storage 103 may include not only a nonvolatile memory included in the mobile device but also an external nonvolatile memory supporting USB or Secure Digital (SD) and MMC (multi-Media Card) formats.

도2는 본 발명의 실시예에 따른 모바일용 스토리지 시스템을 나타낸 블록도이다.2 is a block diagram illustrating a mobile storage system according to an exemplary embodiment of the present invention.

도2를 참고하면 모바일용 스토리지 시스템은 크게 호스트 프로세서(200)와 모바일용 스토리지 제어 장치(210)로 구분될 수 있다.Referring to FIG. 2, a mobile storage system may be largely classified into a host processor 200 and a mobile storage control device 210.

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

베이스밴드 프로세서(201)는 모바일의 통신 기능을 담당하는 프로세서이다. 베이스밴드 프로세서(201) 송수신 통신 신호 처리, 신호 압축 처리, 에러 정정 및 통신 시스템 제어 등의 기능을 담당한다. 통신 신호는 압축/변조된 형태로 전송된다. 베이스밴드 프로세서(201)는 통신 신호를 수신하면 복조/디코더 기능을 수행하여 전송 도중에 발생한 에러 수정 및 통신기 제어 등의 기능을 수행한다.The baseband processor 201 is a processor in charge of the communication function of the mobile. The baseband processor 201 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 201 receives a communication signal, the baseband processor 201 performs a demodulation / decoder function, and performs functions such as error correction and communication control that occur during transmission.

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

모바일용 스토리지 제어 장치(210)는 도1에서 설명한 바와 같이, 모바일의 스토리지를 포함하여 구성되며, 모바일의 스토리지를 통합적으로 제어하는 장치이다.As described with reference to FIG. 1, the mobile storage control device 210 is configured to include storage of a mobile and is an apparatus for integrally controlling the storage of a mobile.

모바일용 스토리지 제어 장치(210)는 제1 스토리지부(도1의 102), 제2 스토리지부(도1의 103) 및 스토리지 프로세서(도1의 101, 211)를 포함하여 구성된다.The mobile storage control device 210 includes a first storage unit 102 (FIG. 1), a second storage unit 103 (FIG. 1), and a storage processor (101, 211 of FIG. 1).

제1 스토리지부(도1의 102)는 호스트 프로세서(200)와 모바일용 스토리지 제어 장치(210) 간의 통신, 프로그램 및 데이터가 임시로 저장된다. 제1 스토리지부(도1의 102)는 제1 DRAM(212), 제2 DRAM(213) 및 DP(Dual-Port) 메모리(214) 등과 같은 고속 동작이 가능한 휘발성 메모리를 포함하여 구성된다. The first storage unit 102 of FIG. 1 temporarily stores communication, programs, and data between the host processor 200 and the mobile storage control device 210. The first storage unit 102 of FIG. 1 includes a volatile memory capable of high speed operation, such as a first DRAM 212, a second DRAM 213, and a dual-port (DP) memory 214.

제1 DRAM(212)은 스토리지 프로세서(211)의 데이터 처리를 위한 DDR DRAM 메모리이다. 즉, 제2 스토리지부(도1의 103)에 저장된 스토리지 프로세서(211)에 의해 사용되는 프로그램 및 데이터가 임시로 저장된다. 스토리지 프로세서(211)가 초기 부팅 후에 사용할 펌웨어 소프트웨어가 제1 DRAM(212)에 임시 저장된다.The first DRAM 212 is a DDR DRAM memory for data processing of the storage processor 211. That is, programs and data used by the storage processor 211 stored in the second storage unit 103 of FIG. 1 are temporarily stored. Firmware software used by the storage processor 211 after initial booting is temporarily stored in the first DRAM 212.

제2 DRAM(213)은 호스트 프로세서(200)의 데이터 처리를 위한 DDR DRAM 메모리이다. 즉, 제2 스토리지부(도1의 103)에 저장된 호스트 프로세서(200)에 의해 사용되는 프로그램 및 데이터가 임시로 저장된다. 모바일 시스템 부팅 시 제2 스토리지(도1의 103)에 저장된 OS(운영체제) 프로그램이 제2 DRAM(213)으로 임시 저장되어, 호스트 프로세서(200)에 의해서 사용된다.The second DRAM 213 is a DDR DRAM memory for data processing of the host processor 200. That is, programs and data used by the host processor 200 stored in the second storage unit 103 of FIG. 1 are temporarily stored. When the mobile system is booted, an OS (operating system) program stored in the second storage (103 of FIG. 1) is temporarily stored in the second DRAM 213 and used by the host processor 200.

DP(Dual-Port) 메모리(214)는 호스트 프로세서(200)와 스토리지 프로세서(211) 간의 통신을 위한 명령어 또는 데이터를 송수신하는 기능을 담당한다. 호스트 프로세서(200)와 스토리지 프로세서(211)간의 통신은 제2 스토리지부(도1의 103)에 저장된 펌웨어 및 모바일용 운영체제 프로그램에 의해서 제어 된다. 즉, 제1 DRAM(212)에 임시 저장된 펌웨어 또는 제2 DRAM(213)에 임시 저장된 모바일용 운영체제 프로그램에 의해서 DP 메모리의 통신이 제어될 수 있다.The dual-port memory 214 is responsible for transmitting and receiving instructions or data for communication between the host processor 200 and the storage processor 211. Communication between the host processor 200 and the storage processor 211 is controlled by firmware stored in the second storage unit 103 (in FIG. 1) and a mobile operating system program. That is, communication of the DP memory may be controlled by firmware temporarily stored in the first DRAM 212 or a mobile operating system program temporarily stored in the second DRAM 213.

DP 메모리(214)는 두 개의 입출력을 가진 SRAM 또는 DRAM으로 구성된다. DP 메모리(214)는 일반적인 Dual-Port SRAM 또는 DRAM의 기능 외에, 프로세서 간에 정해진 프로토콜 통신을 위한 인터럽트 또는 플래그 신호를 발생 및 제어 할 수 있다. The DP memory 214 is composed of SRAM or DRAM with two inputs and outputs. The DP memory 214 may generate and control an interrupt or flag signal for predetermined protocol communication between processors in addition to the functions of a general dual-port SRAM or DRAM.

제2 스토리지부(도1의 103)는 호스트 프로세서(200) 또는 스토리지 프로세서(211)에서 사용되는 프로그램 및 데이터가 저장된다. 제2 스토리지부(도1의 103)은 플래시 메모리(215), USB(216) 또는 SD/MMC(217) 포맷을 지원하는 외장형 메모리인 비휘발성 메모리를 포함하여 구성된다.The second storage unit 103 of FIG. 1 stores programs and data used in the host processor 200 or the storage processor 211. The second storage unit 103 of FIG. 1 includes a nonvolatile memory that is an external memory that supports a flash memory 215, a USB 216, or an SD / MMC 217 format.

플래시 메모리(215)는 비휘발성 메모리로 호스트 프로세서(200)와 스토리지 프로세서(211)에서 사용되는 프로그램 및 데이터를 저장하고 있다. 플래시 메모리(215)는 히든(Hidden) 영역과 사용자(User) 영역으로 나눠진다. 히든 영역은 FTL만 사용하는 영역이다. 히든 영역은 FTL을 운영하기 위한 테이블이나 플래시 메모리 블록 머지(Merge)를 위한 로그 블록 및 프로세서간의 프로토콜 구현을 위한 펌웨어가 저장된다. OS의 파일 시스템에서는 히든 영역으로의 접근이 불가능하다. 사 용자 영역은 호스트 프로세서의 파일 시스템에 의해 운영되는 영역이다. 사용자 영역에는 각종 사용자 데이터와 시스템 데이터가 파일 시스템에 의해 저장되며, 로직컬(logical) 어드레스가 피지컬(Physical) 어드레스로 맵핑(Mapping)된다. 플래시 메모리(215)에 저장되어 있는 프로그램의 실행을 위해서는 프로그램이 제1 DRAM 또는 제2 DRAM으로 이동 후 실행된다.The flash memory 215 is a nonvolatile memory that stores programs and data used by the host processor 200 and the storage processor 211. The flash memory 215 is divided into a hidden area and a user area. Hidden areas are areas that use only FTL. The hidden area stores a table for operating an FTL, a log block for merging a flash memory block, and firmware for implementing a protocol between processors. Access to the hidden area is not possible in the operating system file system. The user area is the area operated by the file system of the host processor. Various user data and system data are stored in the user area by the file system, and logical addresses are mapped to physical addresses. In order to execute the program stored in the flash memory 215, the program is executed after moving to the first DRAM or the second DRAM.

스토리지 프로세서(211)은 호스트 프로세서(200)의 요청에 의한 기능 수행 및 스토리지를 제어한다. 스토리지 프로세서(211)는 ARM 계열(ARM7, ARM9, ARM10, ARM11, Cotex-A8/9 등)의 마이크로프로세서가 사용될 수 있다. 스토리지 프로세서(211)의 명령어 처리 방식은 RISC(Reduced Instruction Set Computer)이 될 수 있다. 이는 전력소모가 낮고 칩 사이즈가 작은 모바일 기기에 적합한 임베디드 시스템 프로세서 명령어 방식이다. 그러나 스토리지 프로세서(211)의 명령어 처리 방식은 RISC에 한정하지 않는다. 즉, 스토리지 프로세서(211)의 명령어 처리 방식은 당업자에 의해서 용이하게 변경될 수 있다.The storage processor 211 controls the performance of performance and storage at the request of the host processor 200. The storage processor 211 may be a microprocessor of an ARM series (ARM7, ARM9, ARM10, ARM11, Cotex-A8 / 9, etc.). The instruction processing method of the storage processor 211 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 211 is not limited to RISC. That is, the instruction processing method of the storage processor 211 may be easily changed by those skilled in the art.

제1 버스(221)는 호스트 프로세서(200)와 연결되는 버스(BUS)이다. 제1 버스(221)를 통해서 호스트 프로세서(200)로부터의 명령어를 DP 메모리(214)로 전송된다. 또한 제1 버스(221)를 통해서, 호스트 프로세서(200)로부터 데이터가 제2 DRAM(213)으로 전송되거나, 모바일용 스토리지 제어 장치(210)에서 처리된 프로그램의 결과가 DP 메모리(214) 에서 호스트 프로세서(200)로 전송된다.The first bus 221 is a bus BUS connected to the host processor 200. Instructions from the host processor 200 are transmitted to the DP memory 214 through the first bus 221. In addition, data is transferred from the host processor 200 to the second DRAM 213 through the first bus 221, or the result of a program processed by the storage controller 210 for mobile is transmitted to the host in the DP memory 214. Transmitted to the processor 200.

제2 버스(222)는 제1 DRAM(212) 및 DP 메모리(214)와 스토리지 프로세서(211)를 연결하는 버스이다. 제2 버스(212)를 통해서, 제1 DRAM(212)과 스토리지 프로세서(211) 간의 데이터 및 프로그램을 송수신 할 수 있다.The second bus 222 is a bus connecting the first DRAM 212 and the DP memory 214 to the storage processor 211. Through the second bus 212, data and programs may be transmitted and received between the first DRAM 212 and the storage processor 211.

제3 버스(223)는 스토리지 프로세서(211)와 플래시 메모리(215)를 연결하는 버스이다. 제3 버스(223)를 통해서 플래시 메모리(215)에 저장되어 있는 데이터 및 프로그램이 스토리지 프로세서(211)로 전송된다. 또한, 스토리지 프로세서(211)에서 처리된 데이터 및 프로그램의 결과 값이 제3 버스(223)를 통해서 플래시 메모리(223)로 전송될 수 있다. 제3 버스(223)은 스토리지 프로세서(211)와 플래시 메모리(215)의 연결뿐만 아니라, USB(216) 및 SD/MMC(217) 포맷을 지원하는 인터페이스와도 연결될 수 있다. 즉, 제3 버스(223)는 2개 이상의 채널(Channel)로 구성될 수 있으며, 각 채널에 연결될 플래시 메모리(215), USB(216) 및 SD/MMC(217)에 따라 2개 이상의 웨이(Way) 구조를 가질 수 있다. 예를 들어, 두 개의 채널이 있고, 각 채널에 4개의 플래시 메모리가 연결되어 있으면 2-채널 2-웨이 버스 구조를 갖는 것이다.The third bus 223 is a bus connecting the storage processor 211 and the flash memory 215. Data and programs stored in the flash memory 215 are transmitted to the storage processor 211 through the third bus 223. In addition, result values of data and programs processed by the storage processor 211 may be transmitted to the flash memory 223 through the third bus 223. The third bus 223 may be connected not only to the storage processor 211 and the flash memory 215 but also to an interface supporting the USB 216 and SD / MMC 217 formats. That is, the third bus 223 may be configured with two or more channels, and two or more ways according to the flash memory 215, the USB 216, and the SD / MMC 217 to be connected to each channel. Way) can have a structure. For example, if you have two channels and four flash memories connected to each channel, you have a two-channel two-way bus structure.

제1 버스(221) 및 제2 버스(222)는 모바일 고속 메모리 인터페이스로 구현될 수 있다. 예를 들어, 제1버스(221) 및 제2 버스(222)를 구현하는 모바일 고속 메모리 인터페이스는 JEDEC DDR 인터페이스 표준을 만족하는 DDR(Double-Data-Rate) DRAM 인터페이스 버스일 수 있다. 제3 버스(223)는 비휘발성 메모리용 고속 인터페이스로 구현될 수 있다. 예를 들어 제3 버스(223)를 구현하는 비휘발성 메모리용 고속 인터페이스는 ARM사의 AMBA(Advanced-Microcontroller-Bus-Architecture) 버스를 통한 Flash 인터페이스일 수 있다. 제1 버스(221) 및 제2 버스(222)는 모바일 시스템의 성능에 따라 DDR, DDR2, DDR3 인터페이스 중 하나로 구현될 수 있으며, x16, x32, x64 데이터 버스 크기 중에서 선택하여 사용하는 것이 가능하다. The first bus 221 and the second bus 222 may be implemented with a mobile high speed memory interface. For example, the mobile high speed memory interface implementing the first bus 221 and the second bus 222 may be a double-data-rate DRAM interface bus that satisfies the JEDEC DDR interface standard. The third bus 223 may be implemented as a high speed interface for nonvolatile memory. For example, the high speed interface for the nonvolatile memory implementing the third bus 223 may be a Flash interface through an ARM-AMBA (Advanced-Microcontroller-Bus-Architecture) bus. The first bus 221 and the second bus 222 may be implemented as one of DDR, DDR2, and DDR3 interfaces according to the performance of the mobile system, and may be selected and used among x16, x32, and x64 data bus sizes.

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

도3을 참조하면, 우선 호스트 프로세서가 DP 메모리로 명령어 및 데이터를 전달한다.(S301) Referring to FIG. 3, a host processor first transmits an instruction and data to a DP memory (S301).

DP 메모리는 호스트 프로세서로부터 명령어 및 데이터를 수신하면, 인터럽트 신호를 생성한다.(S302) When the DP memory receives an instruction and data from the host processor, the DP memory generates an interrupt signal (S302).

DP 메모리는 생성한 인터럽트 신호를 스토리지 프로세서로 전송한다.(S303)The DP memory transmits the generated interrupt signal to the storage processor (S303).

스토리지 프로세서는 인터럽트 신호를 수신하면, DP 메모리에서 인터럽트 신호에 대응하는 명령어 및 데이터를 요청한다.(S304)When the storage processor receives the interrupt signal, the storage processor requests an instruction and data corresponding to the interrupt signal from the DP memory (S304).

스토리지 프로세서로부터 명령어 및 데이터 요청 신호를 받은 DP 메모리는 DP 메모리에 저장되어 있는 명령어 및 데이터를 스토리지 프로세서로 전송한다.(S305)The DP memory receiving the command and data request signal from the storage processor transmits the command and data stored in the DP memory to the storage processor (S305).

스토리지 프로세서는 수신한 명령어를 해석한 후 그에 상응하는 동작을 수행한다.(S306) 예를 들어, 명령어가 데이터를 플래시 메모리에 쓰기 동작을 요청한 것일 수 있다. 스토리지 프로세서는 명령어를 해석 후, DP 메모리로부터 수신한 데이터를 플래시 메모리에 쓰기를 한다.The storage processor interprets the received command and then performs a corresponding operation. (S306) For example, the command may be a request for writing data to a flash memory. The storage processor interprets the command and writes the data received from the DP memory to the flash memory.

스토리지 프로세서는 수신한 명령어에 해당하는 동작을 수행 후 다른 명령어가 있는 지 확인 한다.(S307) 스토리지 프로세서는 수신한 명령어 중에서 수행된 명령어 이외의 명령어가 있는지 확인할 수 있다.After the storage processor performs an operation corresponding to the received command, the storage processor checks whether there is another command (S307). The storage processor may check whether there is a command other than the executed command among the received commands.

다른 명령어가 존재한다면, 스토리지 프로세서는 명령어에 해당하는 동작을 수행한다.(S306) 이와 같은 동작은 스토리지 프로세서에 다른 명령어가 존재하지 않을 때까지 반복적으로 수행된다.If another command exists, the storage processor performs an operation corresponding to the command (S306). Such an operation is repeatedly performed until no other command exists in the storage processor.

다른 명령어가 존재하지 않는다면, 스토리지 프로세서는 완료 신호를 호스트 프로세서로 전송한다.(S308) 스토리지 프로세서는 명령어에 따른 동작을 수행 후, 다른 명령어 존재를 확인하였을 때, 다른 명령어가 존재 하지 않는다면, 완료 신호를 생성한다. 스토리지 프로세서는 생성된 완료 신호를 호스트 프로세서로 전송한다. 이때, 완료 신호는 스토리지 프로세서에서 직접적으로 호스트 프로세서로 전송될 수 있다. 또한, 완료 신호는 스토리지 프로세서에서 DP 메모리로 전송된 후, DP 메모리에서 호스트 프로세서로 전송될 수 있다.If no other command exists, the storage processor transmits a completion signal to the host processor (S308). When the storage processor checks the existence of another command after performing an operation according to the command, if no other command exists, the completion signal is completed. Create The storage processor sends the generated completion signal to the host processor. In this case, the completion signal may be transmitted directly from the storage processor to the host processor. In addition, the completion signal may be transmitted from the storage processor to the DP memory and then transmitted from the DP memory to the host processor.

도4는 본 발명의 실시예에 따른 모바일용 스토리지 제어 시스템 중 스토리지 프로세서에 의한 동작 수행 방법을 나타낸 순서도이다. 이는 도3의 스토리지 프로세서가 수신한 명령어에 대응하는 동작을 수행하는 단계(도3의 S306)를 더 자세히 구분한 순서도이다.4 is a flowchart illustrating a method of performing an operation by a storage processor in a mobile storage control system according to an exemplary embodiment of the present invention. This is a flow chart further dividing the step (S306 of FIG. 3) performing an operation corresponding to the command received by the storage processor of FIG.

도4를 참조하면, 모바일용 스토리지 제어 시스템의 초기 부팅 시 스토리지 프로세서가 플래시 메모리로부터 펌웨어 프로그램을 제1 DRAM으로 가져와 임시 저장한다.(S401)Referring to FIG. 4, during an initial boot-up of a mobile storage control system, a storage processor temporarily stores a firmware program from a flash memory into a first DRAM (S401).

이어서, 스토리지 프로세서가 DP 메모리로부터 명령어 및 데이터를 수신한 다.(S402)Subsequently, the storage processor receives commands and data from the DP memory (S402).

이어서, 스토리지 프로세서가 수신한 명령어에 대응하는 프로그램을 제1 DRAM에서 검색한다.(S403) 프로그램 검색은 제1 DRAM에서의 검색으로 한정되지 않고, 모바일과 연결된 외부 스토리지에서의 검색도 가능하다.Subsequently, the storage processor searches for a program corresponding to the received command in the first DRAM (S403). The program search is not limited to a search in the first DRAM, but a search in an external storage connected to a mobile device is also possible.

이어서, 스토리지 프로세서는 검색된 프로그램을 제1 DRAM으로부터 실행한다.(S404) 스토리지 프로세서가 플래시 메모리에 저장된 프로그램을 직접 플래시 메모리에서 실행하지 않고, 제1 DRAM에 임시 저장하여 프로그램을 실행하는 이유는 플래시 메모리는 랜덤 어드레스 지정이 불가능하기 때문이다. 즉, 플래시 메모리는 직접 프로그램 실행이 불가능한 불휘발성 메모리이기 때문에, 플래시 메모리의 프로그램을 제1 DRAM으로 임시 저장하여 사용한다.Subsequently, the storage processor executes the retrieved program from the first DRAM. (S404) The storage processor does not directly execute the program stored in the flash memory in the flash memory but temporarily stores the program in the first DRAM to execute the program. This is because random addressing is impossible. That is, since the flash memory is a nonvolatile memory which cannot be directly executed, the program of the flash memory is temporarily stored in the first DRAM and used.

이어서, 스토리지 프로세서의 프로그램 실행 결과 값을 호스트 프로세서에 전달하거나 제 1DRAM 혹은 플래시 메모리에 저장한다.(S405) 스토리지 프로세서는 명령어에 따른 동작 수행 후, 그 결과 값을 DP 메모리를 통해 호스트 프로세서로 전달하거나 제 1DRAM 혹은 플래시 메모리에 저장한다. 이때, 결과 값의 저장은 내부 스토리지 뿐만 아니라 모바일 외부 스토리지에 저장하는 것도 가능하다.Subsequently, the program execution result value of the storage processor is transferred to the host processor or stored in the first DRAM or flash memory (S405). After the storage processor performs an operation according to an instruction, the storage processor delivers the result value to the host processor through the DP memory. Store in the first DRAM or flash memory. In this case, the storage of the result value may be stored in the mobile external storage as well as the internal storage.

도5는 본 발명의 실시예에 따른 모바일용 스토리지 제어 시스템 중 호스트 프로세서에 의한 동작 수행 방법을 나타낸 순서도이다.5 is a flowchart illustrating a method of performing an operation by a host processor in a mobile storage control system according to an exemplary embodiment of the present invention.

도5를 참조하면, 모바일용 스토리지 제어 시스템의 초기 부팅 시 호스트 프로세서는 플래시 메모리로부터 OS 프로그램을 제 2DRAM으로 가져온다.(S501)Referring to FIG. 5, upon initial booting up of the mobile storage control system, the host processor brings an OS program from the flash memory to the second DRAM (S501).

이어서, 호스트 프로세서가 DP 메모리로부터 명령어 및 데이터를 수신한다.(S502)Subsequently, the host processor receives an instruction and data from the DP memory (S502).

이어서, 호스트 프로세서가 수신한 명령어에 대응하는 프로그램을 제 2DRAM에서 검색한다.(S503) 프로그램 검색은 제2 DRAM에서의 검색으로 한정되지 않고, 모바일과 연결된 외부 스토리지에서의 검색도 가능하다.Subsequently, the program corresponding to the command received by the host processor is searched in the second DRAM. (S503) The program search is not limited to the search in the second DRAM, and the search in the external storage connected to the mobile device is also possible.

이어서, 호스트 프로세서는 검색된 프로그램을 제 2DRAM으로부터 실행한다.The host processor then executes the retrieved program from the second DRAM.

이어서, 호스트 프로세서의 수행 결과 값을 스토리지 프로세서에 전달하거나 제 2DRAM 혹은 DP 메모리를 통하여 플래시 메모리에 저장한다.(S505)Next, the execution result value of the host processor is transferred to the storage processor or stored in the flash memory through the second DRAM or the DP memory (S505).

도6는 본 발명에 따른 실시예에 의한 모바일용 스토리지 시스템의 전체적인 신호 흐름을 나타낸 예시도이다.6 is an exemplary view showing the overall signal flow of the mobile storage system according to an embodiment of the present invention.

도6를 참고하면, A2 및 A4는 호스트 프로세서(600)와 스토리지 프로세서(611) 간에 직접적으로 송수신되는 신호이다. A2는 슬립(Sleep) 모드로부터의 웨이크업(Wake-up) 신호이다. A4는 파워 리셋(Power Reset) 해제 신호이다. A2인 웨이크업 신호에 의해서 슬립 모드의 스토리지 프로세서(611)를 활동(Active) 모드로 전환할 수 있다. A4인 파워 리셋 해제 신호에 의해서, 활동 모드의 호스트 프로세서(600)를 슬립 모드로 전환할 수 있다.Referring to FIG. 6, A2 and A4 are signals directly transmitted and received between the host processor 600 and the storage processor 611. A2 is a wake-up signal from sleep mode. A4 is a power reset release signal. The storage processor 611 in the sleep mode may be switched to the active mode by the wake-up signal of A2. By the power reset release signal A4, the host processor 600 in the active mode can be switched to the sleep mode.

B2, B4, B6 및 B8는 호스트 프로세서(600)와 제1 DRAM(612), 제2 DRAM(613) 및 DP 메모리(614) 간에 송수신 되는 신호이다. B2는 OS(Operating System) 이미지 쓰기 신호이다. B2는 호스트 프로세서(600)로부터 전송된 데이터를 제2 DRAM(613) 로 저장하기 위한 신호일 수 있다. B4는 OS 이미지 데이터 읽기 신호이다. B4는 호스트 프로세서(600)에 의해 수행된 결과 값을 제2 DRAM(613)에서 호스트 프로세서(600)로 전송하기 위한 신호일 수 있다. B6는 메시지, 명령어, 주소 및 데이터 등의 신호이다. B6는 호스트 프로세서(600)가 모바일 동작을 위해 스토리지 프로세서가 수행해야 할 명령어 및 관련 데이터를 전송하기 위한 신호이다. B8은 DP 메모리(614)의 인터럽트 신호이다.B2, B4, B6, and B8 are signals transmitted and received between the host processor 600, the first DRAM 612, the second DRAM 613, and the DP memory 614. B2 is an operating system (OS) image write signal. B2 may be a signal for storing data transmitted from the host processor 600 to the second DRAM 613. B4 is an OS image data read signal. B4 may be a signal for transmitting a result value performed by the host processor 600 from the second DRAM 613 to the host processor 600. B6 is a signal of message, command, address and data. B6 is a signal for the host processor 600 to transmit instructions and related data to be performed by the storage processor for mobile operation. B8 is an interrupt signal of the DP memory 614.

C2, C4, C6 및 C8은 스토리지 프로세서(611)와 제1 DRAM(612) 및 DP 메모리(614) 간에 송수신 되는 신호이다. C2는 DP 메모리(614)의 인터럽트 신호이다. C4는 스토리지 프로세서(611)의 메시지 신호이다. C4는 스토리지 프로세서(611)가 DP 메모리(614)로부터 인터럽트 신호를 수신하면, DP 메모리(614)에 저장되어 있는 명령어 및 데이터를 요청하는 신호이다. C6 는 스토리지 프로세서(611) 펨웨어/FTL 읽기 신호이다. C6는 스토리지 프로세서(611)가 수신한 명령어에 해당하는 동작을 수행하기 위해 필요한 프로그램 및 데이터를 제1 DRAM에서 송신하기 위한 신호이다. C8은 스토리지 프로세서(611) 펌웨어/FTL 쓰기 신호이다. C8은 스토리지 프로세서(611)가 수신한 명령어에 해당하는 동작 수행 후 그 결과 값을 제1 DRAM(612)으로 전송하기 위한 신호이다.C2, C4, C6, and C8 are signals transmitted and received between the storage processor 611, the first DRAM 612, and the DP memory 614. C2 is an interrupt signal of the DP memory 614. C4 is a message signal of the storage processor 611. C4 is a signal for requesting an instruction and data stored in the DP memory 614 when the storage processor 611 receives an interrupt signal from the DP memory 614. C6 is a storage processor 611 firmware / FTL read signal. C6 is a signal for transmitting a program and data necessary for performing an operation corresponding to a command received by the storage processor 611 from the first DRAM. C8 is a storage processor 611 firmware / FTL write signal. C8 is a signal for transmitting the result value to the first DRAM 612 after performing the operation corresponding to the command received by the storage processor 611.

E2, E4, E6, E8, E10 및 E12는 스토리지 프로세서(611)와 플래시 메모리(615), USB(616) 및 SD/MMC(617) 등과 같은 스토리지 간의 송수신을 위한 신호이다. E2는 플래시 메모리(615)의 데이터 쓰기 신호이다. E2는 호스트 프로세서(600) 및 스토리지 프로세서(611)의 동작 수행을 위해 필요한 프로그램 및 데이터의 저장 을 위한 데이터 쓰기 신호이다. 또한, E2는 호스트 프로세서(600) 및 스토리지 프로세서(611)의 동작 수행 후 결과 값을 플래시 메모리(615)에 저장할 경우 이를 위한 데이터 쓰기 신호이다. E4는 플래시 메모리(615)의 데이터 읽기 신호이다. E4는 호스트 프로세서(600) 또는 스토리지 프로세서(611)의 동작 수행을 위해 필요한 프로그램 및 데이터를 제1 DRAM(612) 또는 제2 DRAM(613)으로 전송하기 위한 플래시 메모리(615)의 프로그램 및 데이터를 읽는 신호이다. E6는 USB(616) 인터페이스에 의해 연결된 저장매체에 데이터를 저장하기 위한 데이터 쓰기 신호이다. E8은 USB(616) 인터페이스에 의해 연결된 저장매체로부터의 데이터 읽기 신호이다. E10은 SD/MMC(617) 인터페이스에 의해 연결된 저장매체에 데이터를 저장하기 위한 데이터 쓰기 신호이다. E12는 SD/MMC(617) 인터페이스에 의해 연결된 저장매체로부터의 데이터 읽기 신호이다.E2, E4, E6, E8, E10, and E12 are signals for transmission and reception between the storage processor 611 and storage such as flash memory 615, USB 616, SD / MMC 617, and the like. E2 is a data write signal of the flash memory 615. E2 is a data write signal for storing programs and data necessary for performing operations of the host processor 600 and the storage processor 611. In addition, E2 is a data write signal for storing the result value in the flash memory 615 after the operation of the host processor 600 and the storage processor 611 is performed. E4 is a data read signal of the flash memory 615. The E4 may store a program and data of the flash memory 615 for transferring a program and data necessary for performing an operation of the host processor 600 or the storage processor 611 to the first DRAM 612 or the second DRAM 613. This is a signal to read. E6 is a data write signal for storing data on a storage medium connected by a USB 616 interface. E8 is a data read signal from a storage medium connected by a USB 616 interface. E10 is a data write signal for storing data in a storage medium connected by an SD / MMC 617 interface. E12 is a data read signal from the storage medium connected by the SD / MMC 617 interface.

도7은 본 발명의 실시예에 의한 모바일용 스토리지 시스템의 데이터 쓰기 동작을 나타낸 순서도이다.7 is a flowchart illustrating a data writing operation of a mobile storage system according to an embodiment of the present invention.

본 발명의 실시예인 도7에서는 호스트 프로세서의 처리될 명령어는 데이터를 플래시 메모리에 쓰기 동작을 수행하는 것이다.In FIG. 7, an embodiment of the present invention, an instruction to be processed by the host processor is to perform a write operation on data to a flash memory.

도7을 참고하면, 호스트 프로세서가 쓰기 명령어를 DP 메모리로 전송한다.(S701) 호스트 프로세서는 처리될 명령어가 있는 지 확인한다. 만약 쓰기 동작 수행을 위한 명령어가 존재한다면, 호스트 프로세서는 DP 메모리에 쓰기 명령어를 전송한다. 쓰기 명령어를 수신한 DP 메모리는 인터럽트 신호를 생성한다.(S702)Referring to FIG. 7, the host processor transmits a write command to the DP memory (S701). The host processor checks whether there is an instruction to be processed. If a command exists to perform a write operation, the host processor sends a write command to the DP memory. The DP memory receiving the write command generates an interrupt signal (S702).

DP 메모리가 생성된 인터럽트 신호를 스토리지 프로세서로 전송한다.(S703) 스토리지 프로세서는 DP 메모리로부터 수신한 인터럽트 신호에 의해서 호스트 프로세서로부터 명령어가 전달되었음을 인지하게 되는 것이다.The DP memory transmits the generated interrupt signal to the storage processor (S703). The storage processor recognizes that an instruction has been transmitted from the host processor by an interrupt signal received from the DP memory.

호스트 프로세서는 DP 메모리에 데이터 쓰기 명령어를 전달(S701) 후 DP 메모리를 통하여 데이터를 전송한다.(S704) 데이터 전송은 호스트 프로세서가 DP 메모리에 쓰기 명령어를 전달 후에 이루어 질 수도 있고, DP 메모리에 쓰기 명령어가 전달 될 때 쓰기 명령어와 함께 전달 될 수 있다.The host processor transmits a data write command to the DP memory (S701) and then transmits data through the DP memory. (S704) The data transfer may be performed after the host processor transmits a write command to the DP memory or writes to the DP memory. When a command is passed, it can be passed with a write command.

인터럽트 신호를 수신한 스토리지 프로세서는 DP 메모리에 명령어와 데이터를 요청한다.(S705)The storage processor receiving the interrupt signal requests a command and data from the DP memory (S705).

DP 메모리는 스토리지 프로세서로부터 요청된 명령어와 데이터를 스토리지 프로세서로 전송한다.(S706)The DP memory transmits commands and data requested from the storage processor to the storage processor (S706).

스토리지 프로세서는 수신한 데이터를 플래시 메모리에 쓰기 동작 수행을 한다.(S707) 스토리지 프로세서는 DP 메모리로부터 수신한 데이터를 플래시 메모리에 전송하는 것이다. The storage processor performs a write operation on the received data to the flash memory (S707). The storage processor transfers the data received from the DP memory to the flash memory.

스토리지 프로세서는 쓰기 동작 완료 후에 데이터 쓰기가 완료 되었음을 알리는 쓰기 동작 완료 신호를 DP 메모리로 전송한다.(S708)After the write operation is completed, the storage processor transmits a write operation completion signal indicating that data writing is completed to the DP memory (S708).

DP 메모리는 스토리지 프로세서로부터 쓰기 동작 완료 신호를 수신하면, 호스트 프로세서로 쓰기 동작 완료 신호를 전송한다.(S709) 호스트 프로세서가 DP 메모리로부터 쓰기 동작 완료 신호를 수신하면, 데이터 쓰기 동작이 완료 되었음을 인지하게 된다.When the DP memory receives the write operation completion signal from the storage processor, the DP memory transmits a write operation completion signal to the host processor (S709). When the host processor receives the write operation completion signal from the DP memory, the DP memory recognizes that the data write operation is completed. do.

도8은 본 발명의 실시예에 의한 모바일용 스토리지 시스템의 데이터 읽기 동작을 나타낸 순서도이다.8 is a flowchart illustrating a data reading operation of a mobile storage system according to an embodiment of the present invention.

본 발명의 실시예인 도8에서는 호스트 프로세서의 처리될 명령어는 데이터를 플래시 메모리로부터 데이터 읽기 동작을 수행하는 것이다.In FIG. 8, an embodiment of the present invention, an instruction to be processed by the host processor is to perform a data read operation from a flash memory.

도8을 참고하면, 호스트 프로세서가 읽기 명령어를 DP 메모리로 전송한다.(S801) 호스트 프로세서는 처리될 명령어가 있는 지 확인한다. 만약 읽기 동작 수행을 위한 명령어가 존재한다면, 호스트 프로세서는 DP 메모리에 읽기 명령어를 전송한다. 읽기 명령어를 수신한 DP 메모리는 인터럽트 신호를 생성한다.(S802)Referring to FIG. 8, the host processor transmits a read command to the DP memory (S801). The host processor checks whether there is an instruction to be processed. If a command exists to perform a read operation, the host processor sends a read command to the DP memory. The DP memory receiving the read command generates an interrupt signal (S802).

DP 메모리가 생성된 인터럽트 신호를 스토리지 프로세서로 전송한다.(S803) 스토리지 프로세서는 DP 메모리로부터 수신한 인터럽트 신호에 의해서 호스트 프로세서로부터 명령어가 전달되었음을 인지하게 되는 것이다.The DP memory transmits the generated interrupt signal to the storage processor (S803). The storage processor recognizes that an instruction is transmitted from the host processor by an interrupt signal received from the DP memory.

인터럽트 신호를 수신한 스토리지 프로세서는 DP 메모리에 명령어를 요청한다.(S804)The storage processor receiving the interrupt signal requests a command from the DP memory (S804).

DP 메모리는 스토리지 프로세서로부터 요청된 명령어를 스토리지 프로세서로 전송한다.(S805)The DP memory transmits a command requested from the storage processor to the storage processor (S805).

스토리지 프로세서는 수신한 명령어에 따라서 플래시 메모리로부터 데이터를 요청한다.(S806) 스토리지 프로세서는 DP 메모리로부터 수신한 명령어에 따라서 읽기 동작이 수행될 데이터를 플래시 메모리로부터 검색한다. The storage processor requests data from the flash memory according to the received command.

스토리지 프로세서는 플래시 메모리에서 읽기 동작이 수행될 데이터를 검색 한 후, 검색된 데이터를 수신한다.(S807)The storage processor retrieves the data to be read from the flash memory and receives the retrieved data (S807).

스토리지 프로세서는 읽기 동작 완료 후에 데이터 읽기가 완료 되었음을 알리는 읽기 동작 완료 신호를 DP 메모리로 전송한다.(S808)After the completion of the read operation, the storage processor transmits a read operation completion signal to the DP memory indicating that data reading is completed (S808).

DP 메모리는 스토리지 프로세서로부터 읽기 동작 완료 신호를 수신하면, 호스트 프로세서로 읽기 동작 완료 신호를 보낸다.(S809)When the DP memory receives the read operation completion signal from the storage processor, the DP memory sends a read operation completion signal to the host processor (S809).

호스트 프로세서는 DP 메모리로부터 읽기 완료 신호를 수신하면, 데이터를 읽어 들인다.(S810) 즉, 호스트 프로세서가 DP 메모리로부터 읽기 동작 완료 신호를 수신하면, 데이터 읽기 동작을 하고, 명령어 실행이 완료 되었음을 인지하게 된다.When the host processor receives a read completion signal from the DP memory, the host processor reads data (S810). That is, when the host processor receives a read operation completion signal from the DP memory, the host processor performs a data read operation and recognizes that instruction execution is completed. do.

도9는 본 발명의 실시예에 따른 모바일용 스토리지 시스템 패키지에 관한 예시도이다.9 is an exemplary view of a storage system package for a mobile according to an embodiment of the present invention.

도9를 참고하면, 모바일용 스토리지 시스템 패키지는 크게 호스트 프로세서(900)와 모바일용 스토리지 제어 장치(910) 및 외부 스토리지(914, 915)를 포함하여 구성된다.Referring to FIG. 9, a mobile storage system package includes a host processor 900, a mobile storage control device 910, and external storages 914 and 915.

모바일용 스토리지 제어 장치(910)는 스토리지 프로세서(911), 제1 스토리지부(912) 및 제2 스토리지부(913)를 포함하여 구성된다.The mobile storage control device 910 includes a storage processor 911, a first storage unit 912, and a second storage unit 913.

여기서, 스토리지 프로세서(911), 제1 스토리지부(912) 및 제2 스토리지부(913)가 단일 패키지에 포함된 SIP(System-In-Package) 형태로 구성된다. 이중 제1 스토리지부(912)를 구성하는 DRAM과 DP 메모리는 각각 별개의 칩(Chip)으로 구 성되거나 단일 칩 형태로 구성될 수 있다.Here, the storage processor 911, the first storage unit 912, and the second storage unit 913 are configured in the form of a system-in-package (SIP) included in a single package. The DRAM and the DP memory constituting the first storage unit 912 may be configured as separate chips or may be configured as a single chip.

호스트 프로세서(900)는 별개의 패키지로 구성되며, DDR 인터페이스를 통하여 모바일용 스토리지 제어 장치(910)와 연결된다.The host processor 900 is configured as a separate package and is connected to the mobile storage control device 910 through a DDR interface.

외부 스토리지(914, 915)는 SD/MMC(914)와 USB(124) 등이 포함될 수 있다. SD/MMC(914)는 SD/MMC 표준 인터페이스에 의해서 모바일용 스토리지 제어 장치(910)와 연결된다. USB(915)는 USB 인터페이스에 의해서 모바일용 스토리지 제어 장치(910)와 연결된다. SD/MMC(914) 및 USB(915)는 모바일 외부로부터 연결되는 저장매체로 필요에 의해서 추가로 연결될 수 있다.The external storages 914 and 915 may include the SD / MMC 914 and the USB 124. The SD / MMC 914 is connected to the storage control device 910 for mobile by the SD / MMC standard interface. The USB 915 is connected to the mobile storage control device 910 by a USB interface. The SD / MMC 914 and the USB 915 may be additionally connected as necessary to a storage medium connected from the outside of the mobile.

도10은 본 발명의 실시예에 따른 모바일용 스토리지 시스템 패키지에 관한 다른 예시도이다.10 is another exemplary diagram of a storage system package for a mobile according to an embodiment of the present invention.

도10을 참고하면, 모바일용 스토리지 시스템 패키지는 크게 호스트 프로세서(110), 내부 스토리지(120), 스토리지 프로세서(130) 및 외부 스토리지(123, 124)를 포함하여 구성될 수 있다. 다시 말해서, 내부 스토리지(120)와 스토리지 프로세서(130)가 별개의 패키지로 구성된다.Referring to FIG. 10, a storage system package for a mobile may largely include a host processor 110, an internal storage 120, a storage processor 130, and external storage 123 and 124. In other words, the internal storage 120 and the storage processor 130 are configured in separate packages.

내부 스토리지(120)는 제1 스토리지(121)와 제2 스토리지(122)가 단일 패키지로 구성된다. 제1 스토리지(121)에서 DRAM과 DP 메모리는 각각 별개의 칩으로 구성되거나 단일 칩 형태로 구성될 수 있다.The internal storage 120 includes the first storage 121 and the second storage 122 in a single package. In the first storage 121, the DRAM and the DP memory may be configured as separate chips or as a single chip.

호스트 프로세서(110)와 스토리지 프로세서(130)는 각각 별개의 패키지로 구성된다. The host processor 110 and the storage processor 130 are each configured in separate packages.

호스트 프로세서(110)는 DDR 인터페이스를 통해서 내부 스토리지(120)와 연결된다. 스토리지 프로세서(130)도 DDR 인터페이스를 통해서 내부 스토리지(120) 시스템의 DRAM과 연결되고, 플래시 컨트롤러(Flash Controller)를 통해서 플래시 메모리와 연결될 수 있다.The host processor 110 is connected to the internal storage 120 through the DDR interface. The storage processor 130 may also be connected to the DRAM of the internal storage 120 system through the DDR interface and may be connected to the flash memory through a flash controller.

또한, 외부 스토리지(123, 124)는 모바일 외부로부터 연결된 저장매체로 필요에 의해서 추가로 연결될 수 있다.In addition, the external storages 123 and 124 may be additionally connected to the storage medium connected from the outside of the mobile as needed.

모바일 스토리지 제어 장치(100)는 스토리지 제어 블록(130)의 DDR 컨트롤러(134)에 의해 제어되는 스토리지(200)의 DP 메모리를 통해서 호스트 프로세서(100)의 명령어를 입력 받는다. 입력 받은 명령어는 고속버스(112)를 통해서 모바일 스토리지 프로세서로 입력된다.The mobile storage control device 100 receives a command of the host processor 100 through a DP memory of the storage 200 controlled by the DDR controller 134 of the storage control block 130. The received command is input to the mobile storage processor through the highway bus 112.

본 발명의 실시예에 의한 모바일용 스토리지 제어 장치 및 방법에 따르면, 모바일 기능 수행 시, 호스트 프로세서가 저속 저장매체를 스토리지 프로세서에 의한 고속 제어가 가능하므로, 시스템 성능이 향상되는 효과가 있다.According to the mobile storage control apparatus and method according to an embodiment of the present invention, when the mobile function is performed, the host processor can control the low-speed storage medium by the storage processor, thereby improving system performance.

또한, 본 발명에 의하면, 호스트 프로세서가 데이터 전달 후에 슬립(Sleep)모드로 진입하므로 전력 소모를 감소할 수 있는 효과가 있다.In addition, according to the present invention, since the host processor enters the sleep mode after data transfer, power consumption may be reduced.

또한, 본 발명에 의하면, 호스트 프로세서의 점유율을 감소시키므로 모바일 성능을 향상시킬 수 있는 효과가 있다.In addition, according to the present invention, since the share of the host processor is reduced, there is an effect of improving mobile performance.

또한, 본 발명에 의하면, 모바일용 고속 인터페이스의 사용에 의해서 모바일 시스템 구성이 간단해지고, 면적 감소, 비용 절감의 효과가 있다.Further, according to the present invention, the use of the mobile high speed interface simplifies the configuration of the mobile system, and has the effect of reducing the area and reducing the cost.

또한, 본 발명에 의하면, 종래보다 강화된 보안이 가능하다는 효과가 있다.In addition, according to the present invention, there is an effect that enhanced security is possible than before.

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

도1은 본 발명의 실시예에 따른 모바일용 스토리지 제어 장치의 블록도.1 is a block diagram of a storage control device for a mobile according to an embodiment of the present invention.

도2는 본 발명의 실시예에 따른 모바일용 스토리지 시스템을 나타낸 블록도.2 is a block diagram illustrating a mobile storage system according to an embodiment of the present invention.

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

도4는 본 발명의 실시예에 따른 모바일용 스토리지 제어 시스템 중 스토리지 프로세서에 의한 동작 수행 방법을 나타낸 순서도.4 is a flowchart illustrating a method of performing an operation by a storage processor in a mobile storage control system according to an exemplary embodiment of the present invention.

도5는 본 발명의 실시예에 따른 모바일용 스토리지 제어 시스템 중 호스트 프로세서에 의한 동작 수행 방법을 나타낸 순서도.5 is a flowchart illustrating a method of performing an operation by a host processor in a mobile storage control system according to an exemplary embodiment of the present invention.

도6는 본 발명에 따른 실시예에 의한 모바일용 스토리지 시스템의 전체적인 신호 흐름을 나타낸 예시도.Figure 6 is an exemplary view showing the overall signal flow of the mobile storage system according to an embodiment of the present invention.

도7은 본 발명의 실시예에 의한 모바일용 스토리지 시스템의 데이터 쓰기 동작을 나타낸 순서도.7 is a flowchart illustrating a data writing operation of a mobile storage system according to an embodiment of the present invention.

도8은 본 발명의 실시예에 의한 모바일용 스토리지 시스템의 데이터 읽기 동작을 나타낸 순서도.8 is a flowchart illustrating a data reading operation of a mobile storage system according to an embodiment of the present invention.

도9는 본 발명의 실시예에 따른 모바일용 스토리지 시스템 패키지에 관한 예시도.9 is an exemplary view of a storage system package for a mobile according to an embodiment of the present invention.

도10은 본 발명의 실시예에 따른 모바일용 스토리지 시스템 패키지에 관한 다른 예시도.10 is another exemplary diagram of a storage system package for a mobile according to an embodiment of the present invention.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

100 210 910 : 모바일용 스토리지 제어 장치100 210 910: Storage Control Unit for Mobile

101 130 211 911 : 스토리지 프로세서101 130 211 911: Storage Processor

110 200 900 : 호스트 프로세서110 200 900: Host Processor

102 121 912 : 제1 스토리지102 121 912: First storage

103 122 913 : 제2 스토리지103 122 913: secondary storage

Claims (15)

호스트 프로세서로부터의 요청에 의한 기능 수행 및 스토리지를 제어하는 스토리지 프로세서;A storage processor controlling storage and function performance by a request from a host processor; 상기 호스트 프로세서와 상기 스토리지 프로세서 간의 통신 및 프로그램 및 데이터가 임시로 저장되는 제1 스토리지부; 및A first storage unit configured to temporarily store communication and programs and data between the host processor and the storage processor; And 상기 호스트 프로세서 또는 상기 스토리지 프로세서에 의해 사용되는 프로그램 및 데이터가 저장된 제2 스토리지부를 포함하되,A second storage unit for storing the program and data used by the host processor or the storage processor, 상기 제1 스토리지부는 상기 호스트 프로세서에 의해 사용될 모바일용 운영체제 프로그램의 임시 저장되는 휘발성 메모리부 및 상기 호스트 프로세서와 상기 스토리지 간의 통신을 위한 명령어 또는 데이터를 송수신하는 DP 메모리부를 포함하며, 상기 제2 스토리지부는 비휘발성 메모리이고, The first storage unit includes a volatile memory unit for temporarily storing a mobile operating system program to be used by the host processor and a DP memory unit for transmitting and receiving commands or data for communication between the host processor and the storage, the second storage unit Is non-volatile memory, 상기 휘발성 메모리부는 제1 DRAM, 제2 DRAM을 포함하여 구성되며, 상기 제1 DRAM은 상기 제2 스토리지부에 저장된 상기 스토리지 프로세서에 의해 사용되는 프로그램 및 데이터가 임시로 저장되고, 상기 제2 DRAM은 상기 제2 스토리지부에 저장된 상기 호스트 프로세서에 의해 사용되는 프로그램 및 데이터가 임시로 저장되는 것을 특징으로 하는 모바일용 스토리지 제어 장치.The volatile memory unit includes a first DRAM and a second DRAM, wherein the first DRAM temporarily stores programs and data used by the storage processor stored in the second storage unit. And a program and data used by the host processor stored in the second storage unit are temporarily stored. 제1항에 있어서,The method of claim 1, 상기 호스트 프로세서는 통신을 수행하는 베이스밴드 프로세서, 그리고 응용 및 멀티미디어 기능을 수행하는 응용 프로세서를 포함하는 것을 특징으로 하는 모바일용 스토리지 제어 장치.The host processor includes a baseband processor for communicating, and an application processor for performing applications and multimedia functions. 제1항에 있어서, The method of claim 1, 상기 스토리지 프로세서는 ARM 계열의 마이크로 프로세서를 포함하여 구성되는 것을 특징으로 하는 모바일용 스토리지 제어 장치.The storage processor is a mobile storage control device comprising a microprocessor of the ARM series. 삭제delete 제1항에 있어서,The method of claim 1, 상기 제2 스토리지부는 USB, SD(Secure Digital) 또는 MMC(Multi-Media Card)에 의해 지원되는 외부 메모리를 더 포함할 수 있는 것을 특징으로 하는 모바일용 스토리지 제어 장치.The second storage unit may further include an external memory supported by USB, Secure Digital (SD), or Multi-Media Card (MMC). 삭제delete 삭제delete 삭제delete 제1항에 있어서,The method of claim 1, 상기 DP 메모리부는 SRAM 또는 DRAM 메모리인 것을 특징으로 하는 모바일용 스토리지 제어 장치.And the DP memory unit is an SRAM or DRAM memory. 제1항에 있어서,The method of claim 1, 상기 호스트 프로세서와 상기 스토리지 프로세서 및 상기 제1 스토리지부와의 연결은 모바일 고속 DDR 인터페이스에 의해 연결되는 것을 특징으로 하는 모바일용 스토리지 제어 장치.And the host processor, the storage processor, and the first storage unit are connected by a mobile high speed DDR interface. 제1항에 있어서,The method of claim 1, 상기 스토리지 프로세서와 상기 제2 스토리지부와의 연결은 비휘발성 메모리용 고속 인터페이스에 의해 연결되는 것을 특징으로 하는 모바일용 스토리지 제어 장치.And the storage processor and the second storage unit are connected by a high speed interface for nonvolatile memory. (a) DP 메모리가 호스트 프로세서로부터 수신한 명령어 및 데이터를 저장하는 단계;(a) storing, by the DP memory, instructions and data received from the host processor; (b) 상기 DP 메모리가 인터럽트 신호를 생성하여 스토리지 프로세서로 전달하는 단계;(b) the DP memory generating an interrupt signal and delivering the interrupt signal to a storage processor; (c) 상기 스토리지 프로세서가 상기 DP 메모리에 저장된 상기 명령어 또는 상기 데이터를 수신하는 단계;(c) the storage processor receiving the instructions or the data stored in the DP memory; (d) 상기 스토리지 프로세서가 상기 수신된 명령어에 대응하는 동작을 수행하는 단계;를 포함하며,(d) the storage processor performing an operation corresponding to the received instruction; 상기 (d) 단계는 Step (d) (d-1) 모바일용 스토리지 제어 시스템의 초기 부팅 시 상기 스토리지 프로세서가 플래시 메모리로부터 펌웨어 프로그램을 제1 DRAM으로 가져와 임시 저장하는 단계; 와(d-1) at the initial boot-up of the mobile storage control system, the storage processor fetching and temporarily storing a firmware program from flash memory into the first DRAM; Wow (d-2) 상기 스토리지 프로세서가 상기 DP 메모리로부터 수신한 명령어에 대응하는 프로그램을 상기 제1 DRAM에서에서 검색하는 단계; 와(d-2) the storage processor searching for the program in the first DRAM corresponding to the command received from the DP memory; Wow (d-3) 상기 스토리지 프로세서는 검색된 프로그램을 상기 제1 DRAM으로부터 실행하는 단계; 와(d-3) the storage processor executing the retrieved program from the first DRAM; Wow (d-4) 상기 스토리지 프로세서의 프로그램을 실행한 결과값을 상기 호스트 프로세서에 전달하거나 상기 제 1DRAM에 저장하는 단계;를 포함하는 것을 특징으로 하는 모바일용 스토리지 제어방법(d-4) transferring a result value of executing the program of the storage processor to the host processor or storing the result value in the first DRAM; 제12항에 있어서,The method of claim 12, 상기 (d)단계 이후,After the step (d), (e) 상기 스토리지 프로세서가 상기 동작 완료 후에 다른 명령어가 있는 지 상기 DP 메모리를 확인하는 단계를 더 포함하는 것을 특징으로 하는 모바일용 스토리지 제어 방법.and (e) checking, by the storage processor, the DP memory if there are other instructions after completion of the operation. 제13항에 있어서,The method of claim 13, 상기 (e)단계에서,In the step (e), 상기 다른 명령어가 존재하지 않는다면, If the other command does not exist, (f) 상기 스토리지 프로세서는 완료 신호를 상기 DP 메모리를 통해서 상기 호스트 프로세서로 전달하는 것을 특징으로 하는 모바일용 스토리지 제어 방법.(f) the storage processor transmits a completion signal to the host processor through the DP memory. 제13항에 있어서,The method of claim 13, 상기 다른 명령어가 존재한다면, 상기 (e) 단계에서 상기 다른 명령어가 존재하지 않음이 확인될 때까지, If the other command exists, until it is confirmed in step (e) that the other command does not exist, 상기 (c) 단계 내지 (e) 단계를 반복적으로 수행하는 것을 특징으로 하는 모바일용 스토리지 제어 방법.Mobile storage control method, characterized in that for repeating the steps (c) to (e).
KR1020090104620A 2009-10-30 2009-10-30 Mobile storage control device and method KR101041838B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090104620A KR101041838B1 (en) 2009-10-30 2009-10-30 Mobile storage control device and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090104620A KR101041838B1 (en) 2009-10-30 2009-10-30 Mobile storage control device and method

Publications (2)

Publication Number Publication Date
KR20110047838A KR20110047838A (en) 2011-05-09
KR101041838B1 true KR101041838B1 (en) 2011-06-17

Family

ID=44239069

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090104620A KR101041838B1 (en) 2009-10-30 2009-10-30 Mobile storage control device and method

Country Status (1)

Country Link
KR (1) KR101041838B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102494241B1 (en) * 2016-08-18 2023-02-03 에스케이하이닉스 주식회사 Memory system and operating method thereof
KR102599434B1 (en) * 2021-12-30 2023-11-06 정도환 ARM CPU-based portable recording server

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080112792A (en) * 2007-06-22 2008-12-26 삼성전자주식회사 Memory system with flash memory device
KR20090052111A (en) * 2007-11-20 2009-05-25 한국전자통신연구원 Apparatus and method of memory sharing between gpp reference board and daughter board

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080112792A (en) * 2007-06-22 2008-12-26 삼성전자주식회사 Memory system with flash memory device
KR20090052111A (en) * 2007-11-20 2009-05-25 한국전자통신연구원 Apparatus and method of memory sharing between gpp reference board and daughter board

Also Published As

Publication number Publication date
KR20110047838A (en) 2011-05-09

Similar Documents

Publication Publication Date Title
US11775455B2 (en) Storage device for interfacing with host and method of operating the host and the storage device
EP2997459B1 (en) System and method for high performance and low cost flash translation layer
US10719472B2 (en) Interface circuit and packet transmission method thereof
JP4628750B2 (en) Flash memory device with built-in buffer memory and flash memory system
KR102156222B1 (en) Data storage device and data processing system including the same
WO2017084565A1 (en) Storage data access method, related controller, device, host, and system
JP5275623B2 (en) Memory controller and memory system
US9164804B2 (en) Virtual memory module
US20100185811A1 (en) Data processing system and method
CN108572798B (en) Storage device and method for performing snoop operation for fast data transmission
CN115495389B (en) Memory controller, calculation memory device, and operation method of calculation memory device
JP2022028890A (en) Memory addressing methods and associated controller, memory device and host
TW201945920A (en) Status management in storage backed memory package
CN105408875A (en) Distributed procedure execution and file systems on a memory interface
KR101041838B1 (en) Mobile storage control device and method
US20210056029A1 (en) Hybrid Memory Systems with Cache Management
CN115033520B (en) IIC data transmission method and device, singlechip equipment and storage medium
JP2007299249A (en) Nand-type flash memory device and starting method for computing system using it
US20150160863A1 (en) Unified memory type aware storage module
US11526441B2 (en) Hybrid memory systems with cache management
TW436685B (en) Computer system for accessing initialization dada and its method
JP2008065725A (en) Nand flash memory device, and activation method of computing system using the same
KR101137297B1 (en) Mobile storage control method
US10261700B1 (en) Method and apparatus for streaming buffering to accelerate reads
TW201926333A (en) Memory system and operating method thereof

Legal Events

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

Payment date: 20140530

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150602

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170103

Year of fee payment: 6

R401 Registration of restoration
FPAY Annual fee payment

Payment date: 20170525

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190530

Year of fee payment: 9