KR101041838B1 - Mobile storage control device and method - Google Patents
Mobile storage control device and method Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements 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
본 발명은 모바일용 스토리지 제어 장치 및 방법에 관한 것으로, 더욱 상세하게는 모바일의 기능 수행 시, 저속의 저장매체를 고속으로 제어하여 시스템 성능 향상에 효과적인 모바일 스토리지 제어 장치 및 방법에 관한 것입니다.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
모바일용 스토리지 제어 장치(100)는 모바일의 스토리지를 포함하여 구성되고, 모바일의 스토리지를 통합적으로 제어하는 장치이다.Mobile
스토리지 프로세서(101)는 모바일용 스토리지 제어 장치(100)에 포함된 스토리지를 제어한다. 즉, 스토리지 프로세서(101)는 수신한 신호에 따라서, 스토리지에 프로그램 또는 데이터를 읽기, 쓰기 또는 삭제 등의 동작을 수행한다.The
모바일용 스토리지 제어 장치(100)에 포함된 스토리지는 크게 제1 스토리지부(102)와 제2 스토리지부(103)으로 구분할 수 있다.Storage included in the mobile
제1 스토리지부(102)는 주로 고속 동작이 가능한 휘발성 메모리로 구성된다. 즉, 제1 스토리지부(102)는 주 기능은 데이터 및 프로그램을 임시 저장하는 캐시 메모리 기능 및 호스트 프로세서(도2의 200)와 스토리지 프로세서(101)의 통신 기능이다.The
제2 스토리지부(103)는 주로 비휘발성 메모리로 구성된다. 즉, 제2 스토리지부(103)의 주 기능은 호스트 프로세서(도2의 200) 및 스토리지 프로세서(101)에서 사용되는 프로그램 또는 데이터를 저장하고 있다. 또한, 제2 스토리지(103)는 모바일에 포함되어 있는 비휘발성 메모리뿐만 아니라 USB 또는 SD(Secure Digital) 및 MMC(multi-Media Card) 포맷을 지원하는 외장형 비휘발성 메모리도 포함될 수 있다.The
도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
호스트 프로세서(200)는 모바일의 통신, 응용 및 멀티미디어 기능을 실행한다. 호스트 프로세서(200)는 베이스밴드 프로세서(201) 및 AP/MP(application & Multimedia Processor, 202)를 포함하여 구성된다. 베이스밴드 프로세서(201)와 AP/MP(202)중 하나가 호스트 프로세서(200)를 구성하거나, 두 개의 프로세서가 하나로 통합된 단일 구조로 호스트 프로세서(200)에 포함될 수 있다.The
베이스밴드 프로세서(201)는 모바일의 통신 기능을 담당하는 프로세서이다. 베이스밴드 프로세서(201) 송수신 통신 신호 처리, 신호 압축 처리, 에러 정정 및 통신 시스템 제어 등의 기능을 담당한다. 통신 신호는 압축/변조된 형태로 전송된다. 베이스밴드 프로세서(201)는 통신 신호를 수신하면 복조/디코더 기능을 수행하여 전송 도중에 발생한 에러 수정 및 통신기 제어 등의 기능을 수행한다.The
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
모바일용 스토리지 제어 장치(210)는 제1 스토리지부(도1의 102), 제2 스토리지부(도1의 103) 및 스토리지 프로세서(도1의 101, 211)를 포함하여 구성된다.The mobile
제1 스토리지부(도1의 102)는 호스트 프로세서(200)와 모바일용 스토리지 제어 장치(210) 간의 통신, 프로그램 및 데이터가 임시로 저장된다. 제1 스토리지부(도1의 102)는 제1 DRAM(212), 제2 DRAM(213) 및 DP(Dual-Port) 메모리(214) 등과 같은 고속 동작이 가능한 휘발성 메모리를 포함하여 구성된다. The
제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
제2 DRAM(213)은 호스트 프로세서(200)의 데이터 처리를 위한 DDR DRAM 메모리이다. 즉, 제2 스토리지부(도1의 103)에 저장된 호스트 프로세서(200)에 의해 사용되는 프로그램 및 데이터가 임시로 저장된다. 모바일 시스템 부팅 시 제2 스토리지(도1의 103)에 저장된 OS(운영체제) 프로그램이 제2 DRAM(213)으로 임시 저장되어, 호스트 프로세서(200)에 의해서 사용된다.The
DP(Dual-Port) 메모리(214)는 호스트 프로세서(200)와 스토리지 프로세서(211) 간의 통신을 위한 명령어 또는 데이터를 송수신하는 기능을 담당한다. 호스트 프로세서(200)와 스토리지 프로세서(211)간의 통신은 제2 스토리지부(도1의 103)에 저장된 펌웨어 및 모바일용 운영체제 프로그램에 의해서 제어 된다. 즉, 제1 DRAM(212)에 임시 저장된 펌웨어 또는 제2 DRAM(213)에 임시 저장된 모바일용 운영체제 프로그램에 의해서 DP 메모리의 통신이 제어될 수 있다.The dual-
DP 메모리(214)는 두 개의 입출력을 가진 SRAM 또는 DRAM으로 구성된다. DP 메모리(214)는 일반적인 Dual-Port SRAM 또는 DRAM의 기능 외에, 프로세서 간에 정해진 프로토콜 통신을 위한 인터럽트 또는 플래그 신호를 발생 및 제어 할 수 있다. The
제2 스토리지부(도1의 103)는 호스트 프로세서(200) 또는 스토리지 프로세서(211)에서 사용되는 프로그램 및 데이터가 저장된다. 제2 스토리지부(도1의 103)은 플래시 메모리(215), USB(216) 또는 SD/MMC(217) 포맷을 지원하는 외장형 메모리인 비휘발성 메모리를 포함하여 구성된다.The
플래시 메모리(215)는 비휘발성 메모리로 호스트 프로세서(200)와 스토리지 프로세서(211)에서 사용되는 프로그램 및 데이터를 저장하고 있다. 플래시 메모리(215)는 히든(Hidden) 영역과 사용자(User) 영역으로 나눠진다. 히든 영역은 FTL만 사용하는 영역이다. 히든 영역은 FTL을 운영하기 위한 테이블이나 플래시 메모리 블록 머지(Merge)를 위한 로그 블록 및 프로세서간의 프로토콜 구현을 위한 펌웨어가 저장된다. OS의 파일 시스템에서는 히든 영역으로의 접근이 불가능하다. 사 용자 영역은 호스트 프로세서의 파일 시스템에 의해 운영되는 영역이다. 사용자 영역에는 각종 사용자 데이터와 시스템 데이터가 파일 시스템에 의해 저장되며, 로직컬(logical) 어드레스가 피지컬(Physical) 어드레스로 맵핑(Mapping)된다. 플래시 메모리(215)에 저장되어 있는 프로그램의 실행을 위해서는 프로그램이 제1 DRAM 또는 제2 DRAM으로 이동 후 실행된다.The
스토리지 프로세서(211)은 호스트 프로세서(200)의 요청에 의한 기능 수행 및 스토리지를 제어한다. 스토리지 프로세서(211)는 ARM 계열(ARM7, ARM9, ARM10, ARM11, Cotex-A8/9 등)의 마이크로프로세서가 사용될 수 있다. 스토리지 프로세서(211)의 명령어 처리 방식은 RISC(Reduced Instruction Set Computer)이 될 수 있다. 이는 전력소모가 낮고 칩 사이즈가 작은 모바일 기기에 적합한 임베디드 시스템 프로세서 명령어 방식이다. 그러나 스토리지 프로세서(211)의 명령어 처리 방식은 RISC에 한정하지 않는다. 즉, 스토리지 프로세서(211)의 명령어 처리 방식은 당업자에 의해서 용이하게 변경될 수 있다.The
제1 버스(221)는 호스트 프로세서(200)와 연결되는 버스(BUS)이다. 제1 버스(221)를 통해서 호스트 프로세서(200)로부터의 명령어를 DP 메모리(214)로 전송된다. 또한 제1 버스(221)를 통해서, 호스트 프로세서(200)로부터 데이터가 제2 DRAM(213)으로 전송되거나, 모바일용 스토리지 제어 장치(210)에서 처리된 프로그램의 결과가 DP 메모리(214) 에서 호스트 프로세서(200)로 전송된다.The
제2 버스(222)는 제1 DRAM(212) 및 DP 메모리(214)와 스토리지 프로세서(211)를 연결하는 버스이다. 제2 버스(212)를 통해서, 제1 DRAM(212)과 스토리지 프로세서(211) 간의 데이터 및 프로그램을 송수신 할 수 있다.The
제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
제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
도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
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
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
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
도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
모바일용 스토리지 제어 장치(910)는 스토리지 프로세서(911), 제1 스토리지부(912) 및 제2 스토리지부(913)를 포함하여 구성된다.The mobile
여기서, 스토리지 프로세서(911), 제1 스토리지부(912) 및 제2 스토리지부(913)가 단일 패키지에 포함된 SIP(System-In-Package) 형태로 구성된다. 이중 제1 스토리지부(912)를 구성하는 DRAM과 DP 메모리는 각각 별개의 칩(Chip)으로 구 성되거나 단일 칩 형태로 구성될 수 있다.Here, the
호스트 프로세서(900)는 별개의 패키지로 구성되며, DDR 인터페이스를 통하여 모바일용 스토리지 제어 장치(910)와 연결된다.The
외부 스토리지(914, 915)는 SD/MMC(914)와 USB(124) 등이 포함될 수 있다. SD/MMC(914)는 SD/MMC 표준 인터페이스에 의해서 모바일용 스토리지 제어 장치(910)와 연결된다. USB(915)는 USB 인터페이스에 의해서 모바일용 스토리지 제어 장치(910)와 연결된다. SD/MMC(914) 및 USB(915)는 모바일 외부로부터 연결되는 저장매체로 필요에 의해서 추가로 연결될 수 있다.The
도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
내부 스토리지(120)는 제1 스토리지(121)와 제2 스토리지(122)가 단일 패키지로 구성된다. 제1 스토리지(121)에서 DRAM과 DP 메모리는 각각 별개의 칩으로 구성되거나 단일 칩 형태로 구성될 수 있다.The
호스트 프로세서(110)와 스토리지 프로세서(130)는 각각 별개의 패키지로 구성된다. The
호스트 프로세서(110)는 DDR 인터페이스를 통해서 내부 스토리지(120)와 연결된다. 스토리지 프로세서(130)도 DDR 인터페이스를 통해서 내부 스토리지(120) 시스템의 DRAM과 연결되고, 플래시 컨트롤러(Flash Controller)를 통해서 플래시 메모리와 연결될 수 있다.The
또한, 외부 스토리지(123, 124)는 모바일 외부로부터 연결된 저장매체로 필요에 의해서 추가로 연결될 수 있다.In addition, the
모바일 스토리지 제어 장치(100)는 스토리지 제어 블록(130)의 DDR 컨트롤러(134)에 의해 제어되는 스토리지(200)의 DP 메모리를 통해서 호스트 프로세서(100)의 명령어를 입력 받는다. 입력 받은 명령어는 고속버스(112)를 통해서 모바일 스토리지 프로세서로 입력된다.The mobile
본 발명의 실시예에 의한 모바일용 스토리지 제어 장치 및 방법에 따르면, 모바일 기능 수행 시, 호스트 프로세서가 저속 저장매체를 스토리지 프로세서에 의한 고속 제어가 가능하므로, 시스템 성능이 향상되는 효과가 있다.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)
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)
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)
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 |
-
2009
- 2009-10-30 KR KR1020090104620A patent/KR101041838B1/en active IP Right Grant
Patent Citations (2)
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 |