KR20160019780A - System on chip, electronic apparatus including system on chip and operation method of system on chip - Google Patents

System on chip, electronic apparatus including system on chip and operation method of system on chip Download PDF

Info

Publication number
KR20160019780A
KR20160019780A KR1020140104538A KR20140104538A KR20160019780A KR 20160019780 A KR20160019780 A KR 20160019780A KR 1020140104538 A KR1020140104538 A KR 1020140104538A KR 20140104538 A KR20140104538 A KR 20140104538A KR 20160019780 A KR20160019780 A KR 20160019780A
Authority
KR
South Korea
Prior art keywords
flash memory
chip
security
command
access
Prior art date
Application number
KR1020140104538A
Other languages
Korean (ko)
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 KR1020140104538A priority Critical patent/KR20160019780A/en
Publication of KR20160019780A publication Critical patent/KR20160019780A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package

Abstract

Disclosed are a system-on-chip, an apparatus comprising the same and a method for operating the same. According to an embodiment of the present invention, the system-on-chip comprises: a security information storage unit for storing security information about a storage area of an external flash memory system which can be connected to the system-on-chip; a command monitoring unit for monitoring a command to be applied to the flash memory system by a central processing unit of the system-on-chip, and capturing an address included in the command; an access determination unit for determining whether to allow access to the storage area corresponding to the captured address based on the security information; and a flash memory control block including a flash memory interface unit for transmitting the command to the flash memory system, when access to the storage area corresponding to the captured address is allowed by the access determination unit. The purpose of the present invention is to provide a system-on-chip which enhances the efficiency while maintaining or increasing the security, an apparatus comprising the same and a method for operating the same.

Description

시스템 온 칩, 시스템 온 칩을 포함하는 전자 장치 및 시스템 온 칩의 동작 방법 {SYSTEM ON CHIP, ELECTRONIC APPARATUS INCLUDING SYSTEM ON CHIP AND OPERATION METHOD OF SYSTEM ON CHIP}BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a system-on-a-chip (hereinafter referred to as " system on chip "),

본 개시는 시스템 온 칩, 시스템 온 칩을 포함하는 전자 장치 및 시스템 온 칩의 동작 방법에 관한 것으로, 플래시 메모리 시스템에 대한 다양한 보안 정책을 설정할 수 있어, 보안성을 유지 내지 증가시키면서도 효율을 향상시키는 시스템 온 칩, 시스템 온 칩을 포함하는 전자 장치 및 시스템 온 칩의 동작 방법에 관한 것이다.The present disclosure relates to a system-on-chip, an electronic device including a system-on-chip, and a method of operating a system-on-chip, and it is possible to set various security policies for the flash memory system to improve efficiency while maintaining or increasing security. System-on-a-chip, an electronic device including a system-on-chip, and a method of operating a system-on-chip.

네트워킹(networking) 또는 원격 컴퓨팅(remote computing)이 일상화되고, 전자 장치에 저장될 수 있는 데이터의 양이 증대하고 데이터의 종류가 다양해짐에 따라, 보안이 요구되는 데이터에 대한 보안을 효율적으로 수행하기 위한 방안들이 요구되고 있다. As networking or remote computing becomes commonplace, the amount of data that can be stored in electronic devices increases, and the variety of data becomes diverse, security of data requiring security is efficiently performed There is a need for measures.

본 개시는 보안성을 유지 내지 증가시키면서도 효율을 향상시키는 시스템 온 칩, 시스템 온 칩을 포함하는 전자 장치 및 시스템 온 칩의 동작 방법을 제공하는 것에 있다.The present disclosure is to provide a system-on-chip, an electronic device including a system-on-chip, and a method of operating a system-on-chip to improve efficiency while maintaining or increasing security.

본 발명의 일 실시예에 따른 시스템 온 칩(System On Chip)은, 상기 시스템 온 칩에 연결될 수 있는 외부의 플래시 메모리 시스템의 저장 영역에 대한 보안 정보를 저장하는 보안 정보 저장부; 상기 시스템 온 칩의 중앙 처리 장치가 상기 플래시 메모리 시스템으로 인가하고자 하는 명령을 모니터링(monitoring) 하여, 상기 명령에 포함된 주소를 캡쳐(captur)하는 명령 모니터링부; 상기 보안 정보에 근거하여, 상기 캡쳐된 주소에 대응되는 저장 영역에 대한 접근의 허용 여부를 결정하는 접근 결정부; 및 상기 접근 결정부에 의해 상기 캡쳐된 주소에 대응되는 저장 영역에 대한 접근이 허용된 경우, 상기 명령을 상기 플래시 메모리 시스템에 전송하는 플래시 메모리 인터페이스부를 구비하는 플래시 메모리 제어 블록을 포함한다. A system on chip according to an embodiment of the present invention includes a security information storage unit for storing security information on a storage area of an external flash memory system that can be connected to the system-on-chip; A command monitoring unit for monitoring a command to be applied to the flash memory system by the central processing unit of the system on chip and capturing an address included in the command; An access determining unit for determining whether to allow access to the storage area corresponding to the captured address based on the security information; And a flash memory control unit for transmitting the command to the flash memory system when access to the storage area corresponding to the captured address is permitted by the access determination unit.

상기 보안 정보는, 상기 저장 영역에 대응되는 LBA(Logical Block Address) 및 상기 LBA에 대응되는 영역에 대한 보안 정책을 포함할 수 있다. The security information may include an LBA (Logical Block Address) corresponding to the storage area and a security policy for an area corresponding to the LBA.

상기 보안 정책은, 상기 LBA에 대응되는 영역으로, 상기 시스템 온 칩이 보안 모드(secure mode)에서 동작하는 때에 한해 접근이 가능한지 또는 상기 시스템 온 칩이 비보안 모드(non-secure mode)에서도 접근이 가능한지를 나타낼 수 있다. The security policy is an area corresponding to the LBA, and it can be accessed only when the system-on-chip operates in a secure mode, or when the system-on-chip is accessible even in a non-secure mode Lt; / RTI >

상기 보안 정책은, 상기 LBA에 대응되는 영역으로 접근이 가능한 명령의 유형을 나타낼 수 있다. The security policy may indicate the type of command accessible to the area corresponding to the LBA.

상기 보안 정책은, 상기 LBA에 대응되는 영역에 대한 보안 레벨(secure level)을 나타낼 수 있다. The security policy may indicate a security level for an area corresponding to the LBA.

상기 명령은, SSD(Solid State Drive)로 구현되는 상기 플래시 메모리 시스템에 대응되는 포맷(format)으로 구현될 수 있다. The instruction may be implemented in a format corresponding to the flash memory system implemented with an SSD (Solid State Drive).

상기 명령은, 메모리 카드로 구현되는 상기 플래시 메모리 시스템에 대응되는 포맷(format)으로 구현될 수 있다. The instruction may be implemented in a format corresponding to the flash memory system implemented as a memory card.

상기 접근 결정부는, 상기 캡쳐된 주소가 상기 플래시 메모리 시스템의 저장 영역 중 보안 영역에 대응되는 것으로 판단된 경우, 상기 시스템 온 칩이 보안 모드로 동작하는 경우 접근을 허용하는 것으로 결정하고, 상기 시스템 온 칩이 비보안 모드로 동작하는 경우 접근을 불허하는 것으로 결정할 수 있다. Wherein the access determining unit determines that access is permitted when the system-on-chip operates in a secure mode when it is determined that the captured address corresponds to a security area in a storage area of the flash memory system, If the chip is operating in non-secure mode, it can be determined that access is denied.

상기 접근 결정부는, 상기 시스템 온 칩이 보안 모드 및 비보안 모드 중 어느 모드로 동작하는지를 나타내는 비보안 비트(NS bit)에 근거하여, 상기 시스템 온 칩의 동작 모드를 판단할 수 있다. The access determination unit may determine an operation mode of the system-on-chip based on an unsecured bit (NS bit) indicating whether the system-on-chip operates in a secure mode or an unsecured mode.

상기 시스템 온 칩은, 상기 중앙 처리 장치로부터 상기 플래시 메모리 제어 블록으로 상기 비보안 비트를 전송하는 모드 신호 전송선을 더 포함할 수 있다. The system-on-chip may further include a mode signal transmission line for transmitting the unsecure bit from the central processing unit to the flash memory control block.

상기 접근 결정부는, 상기 캡쳐된 주소가 상기 플래시 메모리 시스템의 저장 영역 중 보안 영역에 대응되는 것으로 판단된 경우, 상기 시스템 온 칩이 보안 모드로 동작하고 상기 명령이 상기 캡쳐된 주소에 대응되는 보안 영역에 대해 허용된 명령인 경우 접근을 허용하는 것으로 결정하고, 상기 시스템 온 칩이 비보안 모드로 동작하거나 상기 캡쳐된 주소에 대응되는 보안 영역에 대해 허용된 명령이 아닌 경우 접근을 불허할 수 있다. Wherein the access determination unit determines that the system-on-chip operates in a secure mode when the captured address corresponds to a security area in the storage area of the flash memory system, If the system-on-chip is operating in an unsecured mode or is not an authorized command for a secure area corresponding to the captured address, access may be denied.

상기 접근 결정부는, 상기 캡쳐된 주소가 상기 플래시 메모리 시스템의 저장 영역 중 보안 영역에 대응되는 것으로 판단된 경우, 상기 시스템 온 칩이 보안 모드로 동작하고 상기 명령이 상기 캡쳐된 주소에 대응되는 보안 영역에 대해 허용된 어플리케이션의 실행을 위한 명령인 경우 접근을 허용하는 것으로 결정하고, 상기 시스템 온 칩이 비보안 모드로 동작하거나 상기 캡쳐된 주소에 대응되는 보안 영역에 대해 허용된 어플리케이션의 실행을 위한 명령이 아닌 경우 접근을 불허하는 것으로 결정할 수 있다. Wherein the access determination unit determines that the system-on-chip operates in a secure mode when the captured address corresponds to a security area in the storage area of the flash memory system, If the command is for an execution of an allowed application for the security zone, and the command for the execution of an application permitted for the security zone in which the system-on-chip operates in an unsecured mode or corresponds to the captured address If not, you can decide not to allow access.

상기 플래시 메모리 제어 블록은, 상기 시스템 온 칩의 외부에 위치하는 메인 메모리(main memory)에 저장된 평문을 암호화한 암호문을 상기 플래시 메모리 인터페이스부로 전송하거나, 상기 플래시 메모리 시스템에 저장된 암호문을 평문으로 복호화하는 암복호화 엔진을 더 포함할 수 있다. The flash memory control block transmits a ciphertext encrypted with a plain text stored in a main memory located outside the system-on-chip to the flash memory interface or decrypts a cipher text stored in the flash memory system into a plain text And may further include an encryption / decryption engine.

상기 플래시 메모리 제어 블록은, 상기 메인 메모리에 저장된 평문을 상기 암복호화 엔진으로 전송하거나, 상기 암호화 엔진으로부터 복호화된 평문을 상기 메인 메모리로 전송하는 DMA(Dynamic Memory Access)를 더 포함할 수 있다. The flash memory control block may further include a DMA (Dynamic Memory Access) for transmitting a plain text stored in the main memory to the encryption / decryption engine or for transmitting a plain text decrypted from the encryption engine to the main memory.

상기 접근 결정부는, 상기 캡쳐된 주소에 대응되는 저장 영역에 대한 접근을 불허하는 것으로 결정한 경우, 상기 결정된 결과를 상기 암복호화 엔진 또는 상기 DMA에 전송하여 상기 암복호화 엔진 또는 상기 DMA가 상기 명령에 대한 동작을 수행하지 않도록 제어할 수 있다. Wherein the access determination unit determines that access to the storage area corresponding to the captured address is to be denied, transmits the determined result to the encryption / decryption engine or the DMA so that the encryption / decryption engine or the DMA It is possible to control not to perform the operation.

상기 시스템 온 칩은, 암 트러스트존(ARM TrustZone)의 구조로 구현될 수 있다. The system-on-chip may be implemented in a structure of an ARM TrustZone.

본 발명의 다른 실시예에 따른 시스템 온 칩(System On Chip)은, 상기 시스템 온 칩에 연결될 수 있는 외부의 플래시 메모리 시스템에 인가하고자 하는 명령을 생성하는 중앙 처리 장치; 및 상기 시스템 온 칩이 비보안 모드로 동작하고 상기 명령이 상기 플래시 메모리 시스템의 보안 영역에 대한 접근을 요구하는 명령인 경우, 상기 명령을 상기 플래시 메모리 시스템으로 인가하지 아니하는 플래시 메모리 제어 블록을 포함할 수 있다. According to another embodiment of the present invention, a system on chip includes a central processing unit for generating a command to be applied to an external flash memory system that can be connected to the system-on-chip; And a flash memory control block that does not authorize the command to the flash memory system if the system on chip is operating in an unsecured mode and the command is an instruction requiring access to a secure area of the flash memory system .

상기 시스템 온 칩은, 상기 플래시 메모리 시스템의 보안 영역에 대한 보안 정보를 저장하는 저장부를 더 포함할 수 있다. The system-on-chip may further include a storage unit for storing security information on a security area of the flash memory system.

상기 보안 정보는, 상기 저장 영역에 대응되는 LBA(Logical Block Address) 및 상기 LBA에 대응되는 영역에 대한 보안 정책을 포함할 수 있다. The security information may include an LBA (Logical Block Address) corresponding to the storage area and a security policy for an area corresponding to the LBA.

본 발명의 실시예에 따른 전자 장치는, 어플리케이션 프로세서(application processor) 및 플래시 메모리 시스템(flash memory system)을 포함하고, 상기 어플리케이션 프로세서는, 상기 플래시 메모리 시스템의 저장 영역에 대한 보안 정보를 저장하는 보안 정보 저장부; 상기 어플리케이션 프로세서의 중앙 처리 장치가 상기 플래시 메모리 시스템으로 인가하고자 하는 명령을 모니터링(monitoring) 하여, 상기 명령에 포함된 주소를 캡쳐(captur)하는 명령 모니터링부; 상기 보안 정보에 근거하여, 상기 캡쳐된 주소에 대응되는 저장 영역에 대한 접근의 허용 여부를 결정하는 접근 결정부; 및 상기 접근 결정부에 의해 상기 캡쳐된 주소에 대응되는 저장 영역에 대한 접근이 허용된 경우, 상기 명령을 상기 플래시 메모리 시스템에 전송하는 플래시 메모리 인터페이스부를 구비하는 플래시 메모리 제어 블록을 포함한다.An electronic device according to an embodiment of the present invention includes an application processor and a flash memory system, and the application processor includes a security function for storing security information on a storage area of the flash memory system, An information storage unit; A command monitoring unit for monitoring a command to be applied to the flash memory system by the central processing unit of the application processor and capturing an address included in the command; An access determining unit for determining whether to allow access to the storage area corresponding to the captured address based on the security information; And a flash memory control unit for transmitting the command to the flash memory system when access to the storage area corresponding to the captured address is permitted by the access determination unit.

본 개시의 일 실시예에 따른 시스템 온 칩, 시스템 온 칩을 포함하는 전자 장치 및 시스템 온 칩의 동작 방법에 의하면, 시스템 온 칩의 내부에서 플래시 메모리 시스템에 대한 다양한 보안 정책을 설정하고 보안 정책에 따른 차별된 제어를 수행함으로써, 보안성을 유지 내지 증가시키면서도 효율을 향상시킬 수 있는 장점이 있다. According to the system-on-chip, the electronic device including the system-on-chip, and the method of operating the system-on-chip according to an embodiment of the present disclosure, various security policies for the flash memory system are set in the system- It is possible to improve the efficiency while maintaining or increasing the security.

도 1은 본 발명의 일 실시예에 따른 시스템 온 칩을 나타내는 도면이다.
도 2는 도 1의 시스템 온 칩의 CPU(Central Processing Unit)의 일 예를 나타내는 도면이다.
도 3은 도 1의 시스템 온 칩의 동작의 일 예를 나타내는 도면이다.
도 4는 도 1의 시스템 온 칩과 전기적으로 연결될 수 있는 플래시 메모리 시스템의 일 예를 나타내는 도면이다.
도 5는 도 4의 플래시 메모리 컨트롤러의 동작을 설명하기 위한 도면이다.
도 6a, 도 6b 및 도 7은 각각, 도 1의 시스템 온 칩과 전기적으로 연결될 수 있는 플래시 메모리 시스템의 다른 예를 나타내는 도면이다.
도 8은 도 1의 플래시 메모리 제어 블록의 동작에 대한 일 예를 나타내는 도면이다.
도 9는 도 1의 시스템 온 칩에 연결될 수 있는 플래시 메모리의 각 영역에 대한 보안 설정의 일 예를 나타내는 도면이다.
도 10은 도 1의 플래시 메모리 시스템으로 인가되는 명령의 포맷(format)에 대한 일 예를 나타내는 도면이다.
도 11은 도 1의 플래시 메모리 제어 블록의 동작에 대한 다른 예를 나타내는 도면이다.
도 12 및 도 13은 각각, 본 발명의 실시예에 따른 시스템 온 칩에 연결될 수 있는 플래시 메모리의 예를 나타내는 도면이다.
도 14는 본 발명의 다른 실시예에 따른 시스템 온 칩을 나타내는 도면이다.
도 15 내지 도 17은 각각, 본 발명의 다른 실시예에 따른 플래시 메모리 제어 블록을 나타내는 도면이다.
도 18은 본 발명의 일 실시예에 따른 모바일 장치를 나타내는 도면이다.
도 19는 본 발명의 일 실시예에 따른 컴퓨팅 시스템을 나타내는 도면이다.
1 is a diagram illustrating a system on chip according to an embodiment of the present invention.
2 is a diagram showing an example of a CPU (Central Processing Unit) of the system-on-chip of FIG.
3 is a diagram showing an example of the operation of the system-on-chip of FIG.
4 is a diagram showing an example of a flash memory system that can be electrically connected to the system-on-chip of FIG.
5 is a diagram for explaining the operation of the flash memory controller of FIG.
6A, 6B, and 7 are diagrams illustrating another example of a flash memory system that can be electrically connected to the system-on-chip of FIG.
8 is a diagram showing an example of the operation of the flash memory control block of FIG.
9 is a diagram illustrating an example of security settings for each area of a flash memory that can be connected to the system-on-chip of FIG.
10 is a diagram showing an example of a format of a command applied to the flash memory system of FIG.
11 is a diagram showing another example of the operation of the flash memory control block of FIG.
12 and 13 are diagrams respectively showing an example of a flash memory that can be connected to a system-on-chip according to an embodiment of the present invention.
14 is a diagram illustrating a system on chip according to another embodiment of the present invention.
15 to 17 are diagrams respectively showing a flash memory control block according to another embodiment of the present invention.
18 is a diagram of a mobile device in accordance with an embodiment of the present invention.
Figure 19 is a diagram of a computing system in accordance with an embodiment of the present invention.

본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시 예를 예시하는 첨부 도면 및 도면에 기재된 내용을 참조하여야 한다. 이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다. In order to fully understand the present invention, operational advantages of the present invention, and objects achieved by the practice of the present invention, reference should be made to the accompanying drawings and the accompanying drawings which illustrate preferred embodiments of the present invention. BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, the present invention will be described in detail with reference to the preferred embodiments of the present invention with reference to the accompanying drawings. Like reference symbols in the drawings denote like elements.

도 1은 본 발명의 일 실시예에 따른 시스템 온 칩을 나타내는 도면이다. 도 1을 참조하면, 본 발명의 일 실시예에 따른 시스템 온 칩(100)은 중앙 처리부(Central Processing Unit(이하 CPU), 110), 메인 메모리 제어 블록(main memory control block, 120), 플래시 메모리 제어 블록(flash memory control block, 130), 다수의 IP(Intellectual Property, 140) 및 버스(bus, 150)를 포함한다. 도 1의 시스템 온 칩(100)은 암 트러스트존(ARM Trustzone)의 아키텍쳐(architecture)로 구현될 수 있다. 1 is a diagram illustrating a system on chip according to an embodiment of the present invention. Referring to FIG. 1, a system-on-chip 100 according to an embodiment of the present invention includes a central processing unit (CPU) 110, a main memory control block 120, A flash memory control block 130, a plurality of intellectual property (IP) 140, and a bus 150. The system on chip 100 of FIG. 1 may be implemented with an architecture of the ARM Trustzone.

CPU(110)는 운영 체제(Operating System)를 구동하여, 어플리케이션(application)의 수행 등을 위해 시스템 온 칩(100)의 동작을 제어한다. 운영 체제는 시스템 온 칩(100) 또는 시스템 온 칩(100)이 포함된 전자 장치(미도시)가 턴-온 되는 때에, 시스템 온 칩(100)의 외부의 플래시 메모리 시스템(300)으로부터 시스템 온 칩(100)의 외부의 메인 메모리(200)로 로딩(loading)된다. CPU(110)는 암(ARM) CPU로 구현될 수 있다. The CPU 110 drives an operating system to control the operation of the system-on-chip 100 to perform an application or the like. The operating system is configured to receive system on from the flash memory system 300 external to the system on chip 100 when the electronic device (not shown) including the system on chip 100 or the system on chip 100 is turned on. And is loaded into the main memory 200 outside the chip 100. The CPU 110 may be implemented as an ARM CPU.

메인 메모리 제어 블록(120)은 CPU(110)의 제어하에, 시스템 온 칩(100)의 외부에 위치하는 메인 메모리(200)로의 기입 동작 또는 메인 메모리(200)로부터의 독출 동작 등을 제어한다. 메인 메모리(200)는 DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory), MRAM(Magnetic Random Access Memory), FRAM(ferroelectrics Random Access Memory) 및 RRAM(Resistive Random Access Memory) 등일 수 있다. The main memory control block 120 controls the writing operation to the main memory 200 located outside the system on chip 100 or the reading operation from the main memory 200 under the control of the CPU 110. [ The main memory 200 may be a dynamic random access memory (DRAM), a static random access memory (SRAM), a magnetic random access memory (MRAM), a ferroelectrics random access memory (FRAM), or a resistive random access memory (RRAM).

플래시 메모리 제어 블록(130a)은 시스템 온 칩(100)의 외부에 위치하는 플래시 메모리 시스템(300)로의 프로그램 동작 또는 메인 메모리(200)로부터의 독출 동작 등을 제어한다. 플래시 메모리 제어 블록(130a)은 보안 정보 저장부(131), 명령 모니터링부(132), 접근 결정부(133) 및 플래시 메모리 인터페이스부(134)를 구비할 수 있다. 플래시 메모리 제어 블록(130a)의 각 구성 및 동작에 대한 구체적인 사항은 후술된다. The flash memory control block 130a controls a program operation to the flash memory system 300 located outside the system on chip 100, a read operation from the main memory 200, and the like. The flash memory control block 130a may include a security information storage unit 131, an instruction monitoring unit 132, an access determination unit 133, and a flash memory interface unit 134. Details of each configuration and operation of the flash memory control block 130a will be described later.

다수의 IP(140)는 각각, 설정된 기능을 수행한다. 예를 들어, 다수의 IP(140)는 3D 엔진(3D engine), 비디오 코덱(video CODEC), 디스플레이 시스템(display system), 카메라 시스템(camera system), 후처리 프로세서(post processor), 퍼리퍼럴(peripheral) 또는 연결 장치(connectivity) 등으로 구현될 수 있다. CPU(110), 메인 메모리 제어 블록(120), 플래시 메모리 제어 블록(130a) 및 다수의 IP(140)는 버스(150)에 연결되어, 명령, 주소 및 데이터 등을 송수신한다. Each of the plurality of IPs 140 performs a set function. For example, the plurality of IP 140 may be a 3D engine, a video codec, a display system, a camera system, a post processor, a peripheral or connection, or the like. The CPU 110, the main memory control block 120, the flash memory control block 130a, and the plurality of IPs 140 are connected to the bus 150 to transmit and receive commands, addresses, data, and the like.

도 2는 도 1의 시스템 온 칩의 CPU(Central Processing Unit)의 일 예를 나타내는 도면이다. 도 2를 참조하면, CPU(110)는 CPU 코어(111) 및 레지스터 영역(112)으로 구성될 수 있다. CPU 코어(111)는 사용자 등으로부터 실행이 요청되는 어플리케이션을 실행한다. CPU 코어(111)는 다수의 처리 파이프라인을 구비하여 병렬 처리가 가능할 수 있다. 도 2에서 CPU(110)가 하나의 CPU 코어(111)를 포함하는 것으로 도시되어 있으나 이에 한정되는 것은 아니다. 본 발명의 실시예에 따른 시스템 온 칩(100)의 CPU(110)는, 예를 들어, Big and Little CPU로 구현되어 다수의 CPU 코어를 포함할 수도 있다. 2 is a diagram showing an example of a CPU (Central Processing Unit) of the system-on-chip of FIG. Referring to FIG. 2, the CPU 110 may include a CPU core 111 and a register area 112. The CPU core 111 executes an application requested to be executed from a user or the like. The CPU core 111 may include a plurality of processing pipelines to enable parallel processing. In FIG. 2, the CPU 110 is shown as including one CPU core 111, but the present invention is not limited thereto. The CPU 110 of the system-on-chip 100 according to the embodiment of the present invention may be implemented as a Big and Little CPU, for example, and may include a plurality of CPU cores.

레지스터 영역(112)은 CPU 코어(111)가 어플리케이션을 실행하는데 요구되는 다양한 정보를 포함하는 레지스터들이 포함될 수 있다. 도 2는 예시적으로, 레지스터 영역(112)에, 현재 프로그램 상태 레지스터(Current Program State Register, 112_1) 및 보안 환경 설정 레지스터(Secure Configuration Register, 112_2)를 포함함을 도시하고 있다. 현재 프로그램 상태 레지스터(112_1)는, 시스템 온 칩(100)에서 현재 실행되고 있는 프로그램(어플리케이션 등)의 현재의 동작 상태(조건부 명령의 실행 여부 등)를 나타내는 정보 또는 비트 값(bit value) 등을 포함하여, CPU(110)에 상태 신호(ST_sig)로 제공할 수 있다. 보안 환경 설정 레지스터(112_2)는, 시스템 온 칩(100)이 보안 모드(secure mode)로 동작하는지 비보안 모드(non-secure mode)로 동작하는지를 나타내는 비보안 비트(NS bit(Non-Secure bit)) 등을 포함하여, CPU(110)에 보안 신호(SC_sig)로 제공할 수 있다. The register area 112 may include registers that contain various information required by the CPU core 111 to execute an application. FIG. 2 illustratively illustrates that the register area 112 includes a current program state register 112_1 and a secure configuration register 112_2. The current program status register 112_1 stores information indicating a current operating state of the program (application etc.) currently executed in the system-on-chip 100 (whether the conditional instruction is executed or the like) (ST_sig) to the CPU 110, as shown in FIG. The security configuration setting register 112_2 includes an unsecured bit (NS bit (Non-Secure bit)) indicating whether the system-on-chip 100 operates in a secure mode or a non-secure mode To the CPU 110 as a security signal SC_sig.

레지스터 영역(112)은 예시된 레지스터들(112_1, 112_2) 이외에, 범용 레지스터, 링크 레지스터(link register) 및 프로그램 카운터(program counter) 등이 더 포함될 수 있다. 현재 프로그램 상태 레지스터(112_1) 및 보안 환경 설정 레지스터(112_2)에 포함된 정보 또는 비트 값은 도 3의 모니터 모드(monitor mode)에서 모니터링(monitoring)된 결과에 따라 조절될 수 있다. The register area 112 may further include a general register, a link register, a program counter, etc. in addition to the illustrated registers 112_1 and 112_2. The information or bit values contained in the current program status register 112_1 and the security configuration register 112_2 may be adjusted according to the results monitored in the monitor mode of FIG.

도 3은 도 1의 시스템 온 칩의 동작의 일 예를 나타내는 도면이다. 도 1 내지 도 3을 참조하면, 본 발명의 실시예에 따른 시스템 온 칩(100)은 도 3에 도시되는 바와 같이, 다양한 모드 중 하나로 동작할 수 있다. 도 3은 비보안 커널 모드(non-secure kernel mode), 비보안 유저 모드(non-secure user mode), 모니터 모드(monitor mode), 보안 커널 모드(secure kernel mode) 및 보안 유저 모드(secure user mode)를 예시한다. 비보안 커널 모드 또는 보안 커널 모드에서 운영 체제 코드가 실행되고, 비보안 유저 모드 또는 보안 유저 모드에서 어플리케이션 코드는 실행된다. 모니터 모드는 비보안 월드와 보안 월드의 전환 여부를 모니터링 한다. 3 is a diagram showing an example of the operation of the system-on-chip of FIG. Referring to FIGS. 1 to 3, a system-on-chip 100 according to an embodiment of the present invention may operate in one of various modes, as shown in FIG. FIG. 3 illustrates an example of a non-secure kernel mode, a non-secure user mode, a monitor mode, a secure kernel mode, and a secure user mode. For example. The operating system code is executed in the non-secure kernel mode or the secure kernel mode, and the application code is executed in the non-secure user mode or the secure user mode. The monitor mode monitors whether the non-security world and the security world are switched.

시스템 온 칩(100)이 암 트러스트존의 구조로 구현되는 경우, 하나의 물리적인 CPU 코어(111)는 시스템 온 칩(100)을 보안 월드(secure world)와 비보안 월드(non-secure world)로 나눈다. 비보안 월드는 비보안 OS에 의해 비보안 어플리케이션이 실행되고, 보안 모드는 보안 OS에 의해 보안 어플리케이션이 실행된다. 비보안 월드와 보안 월드는 접근할 수 있는 디바이스(device) 또는 메모리 영역이 분리된다. 이는 비보안 월드와 보안 월드에서 기능하는, 도 2의 레지스터 영역(112)에 포함되는 일부 레지스터들을 분리시킴으로써 구현될 수 있다. When the system-on-chip 100 is implemented in the structure of the arm-trust zone, a single physical CPU core 111 can be used as a secure world and a non-secure world Share it. In the non-security world, the non-security application is executed by the non-security OS, and the security mode is executed by the security OS. The non-security world and the security world are separated from the accessible device or memory area. This can be implemented by isolating some of the registers included in the register area 112 of FIG. 2, which function in the non-secure world and the security world.

예를 들어, 암 트러스트존으로 동작하는 경우, 부팅(booting)이 2회에 걸쳐 수행된다. 2회의 부팅을 통해, 두 월드가 부팅된다. 먼저 보안 월드의 운영 체제(보안 OS)가 부팅되어 각 저장 영역에 대한 접근 권한이 설정된다. 보안 월드에 대한 부팅이 완료된 후, 노말 월드(normal world), 즉 비보완 월드의 운영 체제(비보안 OS)가 부팅된다. 이렇듯 보안 월드에 대한 초기화가 수행된 후에야 비로소 비보안 월드로 전환될 수 있으므로, 보안 월드의 코드(code)들이 안전하게 보호될 수 있다. For example, when operating as an arm trust zone, booting is performed twice. Through two rounds of booting, both worlds are booted. First, the operating system (security OS) of the security world is booted and the access right for each storage area is set. After the boot for the security world is completed, the normal world, that is, the non-complementary world's operating system (non-secure OS), is booted. Since the initialization for the security world is performed before the transition to the non-security world, the codes of the security world can be safely protected.

비보안 커널 모드 및 비보안 유저 모드는 비보안 월드에, 모니터 모드, 보안 커널 모드 및 보안 유저 모드는 보안 월드에 속할 수 있다. 하나의 월드에서 다른 월드로 전환은 상태 신호(ST_sig)와 보안 신호(SC_sig)의 값을 조절함으로써 수행될 수 있다. 보안 신호(SC_sig)에 포함되는 비보안 비트(NS bit)는 모니터 모드에서만 조절되므로, 모니터 모드는 보안 월드에서 동작한다. 모니터 모드로의 진입은 SMC(Secure Monitor Call) 명령이 실행되는 경우에 수행되는데 SMC 명령은 커널 모드에서만 실행이 가능하므로, 어플리케이션 레벨에서 임의적으로 월드를 전환할 수는 없다. Non-secure kernel mode and non-secure user mode can belong to non-security world, monitor mode, secure kernel mode and secure user mode can belong to security world. Switching from one world to another may be performed by adjusting the values of the status signal ST_sig and the security signal SC_sig. Since the non-security bit (NS bit) included in the security signal SC_sig is adjusted only in the monitor mode, the monitor mode operates in the security world. The entry into the monitor mode is performed when the SMC (Secure Monitor Call) instruction is executed. Since the SMC instruction can be executed only in the kernel mode, it is not possible to arbitrarily switch the world at the application level.

전술한 바와 같이, 비보안 월드와 보안 월드에서 접근할 수 있는 메모리 영역이 분리된다. 보안 월드 및 비보안 월드 모두에서 접근할 수 있는 메모리 영역은 비보안 영역이고, 보안 월드에서만 접근할 수 있고 비보안 월드에서 접근할 수 없는 메모리 영역은 보안 영역이라 할 수 있다. As described above, the memory areas accessible in the non-security world and security world are separated. The memory area accessible in both the security world and the non-security world is the non-security area, and the memory area that can only be accessed in the security world and not accessible in the non-security world is the security area.

도 4는 도 1의 시스템 온 칩과 전기적으로 연결될 수 있는 플래시 메모리 시스템의 일 예를 나타내는 도면이다. 도 4를 참조하면, 플래시 메모리 시스템(300)은 플래시 메모리 컨트롤러(310) 및 플래시 메모리(320)를 포함한다. 플래시 메모리 컨트롤러(310) 는 도 1의 시스템 온 칩(100)으로부터 인가되는 명령에 응답하여, 플래시 메모리(320)로부터 데이터를 독출하거나, 플래시 메모리(320)에 데이터를 프로그램을 하기 위한 제어를 수행한다. 이를 위해, 플래시 메모리 컨트롤러(310) 는 도 5와 같은 펌웨어를 포함할 수 있다. 4 is a diagram showing an example of a flash memory system that can be electrically connected to the system-on-chip of FIG. Referring to FIG. 4, the flash memory system 300 includes a flash memory controller 310 and a flash memory 320. The flash memory controller 310 performs control to read data from the flash memory 320 or to program the data in the flash memory 320 in response to a command applied from the system on chip 100 of FIG. do. For this purpose, the flash memory controller 310 may include firmware as shown in FIG.

도 5는 도 4의 플래시 메모리 컨트롤러의 동작을 설명하기 위한 도면이다. 도 5를 참조하면, 본 발명의 실시예에 따른 펌웨어(firmware)는 호스트 인터페이스 레이어(HIL) 및 플래시 변환 레이어(FTL)를 포함할 수 있다. 호스트 인터페이스 레이어(HIL)는 도 1의 시스템 온 칩(100)으로부터 수신되는 요청(프로그램 명령, 독출 명령 등)을 처리한다. 예를 들어, 호스트 인터페이스 레이어(HIL)는 시스템 온 칩(100)의 요청에 대한 기계어 처리 및 데이터 전송 등의 기능을 포함할 수 있다. 5 is a diagram for explaining the operation of the flash memory controller of FIG. Referring to FIG. 5, the firmware according to the embodiment of the present invention may include a host interface layer (HIL) and a flash conversion layer (FTL). The host interface layer (HIL) processes requests (program commands, read commands, etc.) received from the system on chip 100 of FIG. For example, the host interface layer (HIL) may include functions such as machine language processing and data transfer for the request of the system-on-chip 100.

플래시 변환 레이어(FTL)는 호스트 인터페이스 레이어(HIL)에서 처리된 결과에 따라, 시스템 온 칩(100)으로부터 수신된 어드레스와 도 5의 플래시 메모리(320)의 물리적 어드레스를 맵핑하기 위한 제어 내지 리소스 할당을 수행할 수 있다. 도 5은 펌웨어가 요청 처리 레이어(RDL)를 더 포함하는 예를 도시한다. 도 5의 요청 처리 레이어(RDL)는 시스템 온 칩(100)의 요청에 따라 플래시 메모리(320)가 동작한 결과를, 요청에 대한 응답으로, 시스템 온 칩(100)에 전송한다. 도 5에서는 요청 처리 레이어(RDL)가 호스트 인터페이스 레이어(HIL)와 별개의 레이어로 구비되는 예를 도시하였으나, 호스트 인터페이스 레이어(HIL)에 포함될 수도 있다. The flash conversion layer FTL includes a control or resource allocation for mapping an address received from the system-on-chip 100 and a physical address of the flash memory 320 of FIG. 5 according to a result processed by the host interface layer HIL Can be performed. 5 shows an example in which the firmware further includes a request processing layer (RDL). The request processing layer (RDL) of FIG. 5 transmits the result of the operation of the flash memory 320 to the system on chip 100 in response to the request, in response to the request of the system on chip 100. Although FIG. 5 shows an example in which the request processing layer (RDL) is provided as a layer separate from the host interface layer (HIL), it may be included in the host interface layer (HIL).

다시 도 4를 참조하면, 플래시 메모리(320)는 데이터를 저장하기 위한 저장 영역을 포함한다. 플래시 메모리(320)의 저장 영역은 보안 영역(321)과 비보안 영역(322)을 포함할 수 있다. 전술한 바와 같이, 보안 영역(321)은 보안 월드에서만 접근할 수 있고, 비보안 영역(322)은 보안 월드 및 비보안 월드 모두에서 접근할 수 있는 영역이다. 보안 영역(321)은 예를 들어, 부트 데이터(boot data), OS 데이터 및 보안 데이터 등이 저장될 수 있다. 비보안 영역(322)은 유저 데이터(user data)가 저장될 수 있다. Referring again to FIG. 4, the flash memory 320 includes a storage area for storing data. The storage area of the flash memory 320 may include a security area 321 and a non-security area 322. As described above, the security area 321 is accessible only in the security world, and the non-security area 322 is an area accessible in both the security world and the non-security world. The security area 321 may store, for example, boot data, OS data, security data, and the like. The non-secured area 322 may store user data.

도 4의 플래시 메모리 시스템은 다양한 시스템으로 구현될 수 있다. 또한, 도 4의 플래시 메모리(320)에서 보안 영역과 비보안 영역은 다양한 방식으로 설정될 수 있다. 이에 대하여 설명한다. The flash memory system of Figure 4 may be implemented in a variety of systems. In addition, in the flash memory 320 of FIG. 4, the security area and the non-security area may be set in various ways. This will be described.

도 6a, 도 6b 및 도 7은 각각, 도 1의 시스템 온 칩과 전기적으로 연결될 수 있는 플래시 메모리 시스템의 다른 예를 나타내는 도면이다. 본 발명의 실시예에 따른 시스템 온 칩(100)에 연결되는 플래시 메모리 시스템(300)은 도 6a과 같이, 솔리드 스테이트 드라이브(Solid State Drive, 이하 SSD)로 구현되는 플래시 메모리 시스템(MSYS)일 수 있다. SSD(MSYS)는 SSD 컨트롤러(SCtrl) 및 플래시 메모리(MDEV)를 포함한다. SSD 컨트롤러(SCtrl)는 SSD(MSYS)의 제1 포트(PT1)를 통해 호스트 장치(HOST)로부터 수신되는 신호(SIG)에 응답하여 플래시 메모리(MDEV)를 제어한다. SSD 컨트롤러(SCtrl)는 다수의 채널(Ch1~CHn)을 통해 플래시 메모리(MDEV)와 연결될 수 있다. 플래시 메모리(MDEV)는 다수로 구비될 수 있다. 6A, 6B, and 7 are diagrams illustrating another example of a flash memory system that can be electrically connected to the system-on-chip of FIG. The flash memory system 300 connected to the system on chip 100 according to the embodiment of the present invention may be a flash memory system (MSYS) implemented as a solid state drive (SSD) have. The SSD (MSYS) includes an SSD controller (SCtrl) and a flash memory (MDEV). The SSD controller SCtrl controls the flash memory MDEV in response to the signal SIG received from the host device HOST through the first port PT1 of the SSD MSYS. The SSD controller (SCtrl) can be connected to the flash memory (MDEV) through a plurality of channels (Ch1 to CHn). A plurality of flash memories (MDEV) may be provided.

다수의 플래시 메모리들은 각각 도 4의 플래시 메모리(320)일 수 있다. 따라서, 각 플래시 메모리에 보안 영역 및 비보안 영역이 포함될 수 있다. 다만, 이에 한정되는 것은 아니다. 도 6b를 참조하면, 다수의 플래시 메모리 중 일부의 플래시 메모리(예를 들어, 제1 플래시 메모리)는 보안 영역만을 구비하고, 일부의 플래시 메모리(예를 들어, 제2 플래시 메모리)는 비보안 영역만을 구비할 수도 있다. The plurality of flash memories may each be the flash memory 320 of FIG. Thus, each flash memory may include a security area and a non-security area. However, the present invention is not limited thereto. Referring to FIG. 6B, a flash memory (e.g., a first flash memory) of a plurality of flash memories has only a security area, and a part of flash memories (e.g., a second flash memory) .

다시 도 6a를 참조하면, SSD(MSYS)는 보조 전원 장치(DSP)를 더 구비하여 제2 포트(PT2)를 통해 호스트 장치(HOST)로부터 전원(PWR)을 입력 받을 수 있다. 다만, 이에 한정되는 것은 아니고, SSD(MSYS)는 호스트 장치(HOST) 이외의 외부 장치로부터 전원을 공급받을 수 있다. SSD(MSYS)는 제1 포트(PT1)를 통해 호스트 장치(HOST)의 요청을 처리한 결과(SIG)를 출력할 수 있다. SSD(MSYS)로부터 출력되는 신호(SIG)는 전술된 메인 응답(MRSP)일 수 있다. Referring again to FIG. 6A, the SSD (MSYS) further includes an auxiliary power supply (DSP) to receive power PWR from the host device HOST through the second port PT2. However, the present invention is not limited to this, and the SSD (MSYS) can receive power from an external device other than the host device (HOST). The SSD (MSYS) can output the result (SIG) of processing the request of the host device (HOST) through the first port PT1. The signal SIG output from the SSD MSYS may be the main response MRSP described above.

또한, 본 발명의 실시예에 따른 시스템 온 칩(100)에 연결되는 플래시 메모리 시스템(300)은 도 7과 같이, 메모리 카드(700)로 구현될 수 있다. 메모리 카드(700)는 도 1의 시스템 온 칩(100)에 연결되는 휴대용 저장장치일 수 있다. 도 7에 도시된 바와 같이, 메모리 카드(700)는 포트 영역(720), 플래시 메모리 컨트롤러(740) 및 플래시 메모리(660)을 구비할 수 있다. 메모리 카드(700)는 포트 영역(720)을 통해서 시스템 온 칩(100)과 통신할 수 있고, 플래시 메모리 컨트롤러(740) 는 플래시 메모리(760)를 제어할 수 있다. 플래시 메모리(320)는 다수로 구비될 수 있고, 다수의 플래시 메모리(320) 각각은 도 4의 플래시 메모리(320)와 같이, 보안 영역과 비보안 영역을 포함할 수 있다. 또는, 다수의 플래시 메모리(760) 각각은 도 6b와 같이, 일부의 플래시 메모리는 보안 영역만을 구비하고, 일부의 플래시 메모리는 비보안 영역만 구비할 수도 있다. In addition, the flash memory system 300 connected to the system-on-chip 100 according to the embodiment of the present invention may be implemented as a memory card 700 as shown in FIG. The memory card 700 may be a portable storage device connected to the system on chip 100 of FIG. 7, the memory card 700 may include a port area 720, a flash memory controller 740, and a flash memory 660. [ The memory card 700 can communicate with the system on chip 100 through the port area 720 and the flash memory controller 740 can control the flash memory 760. [ A plurality of flash memories 320 may be provided, and each of the plurality of flash memories 320 may include a security area and a non-security area, such as the flash memory 320 of FIG. Alternatively, as shown in FIG. 6B, each of the plurality of flash memories 760 includes only a security area, and some flash memories may have only a non-security area.

도 7의 본 발명의 실시예에 따른 시스템 온 칩(100)과 전기적으로 연결될 수 있는 플래시 메모리 시스템(300)인 메모리 카드(700)는, SD 카드(secure digital card), eMMC(embedded Multimedia Memory Card) 또는 UFS(universal Flash Storage) 등 다양한 형태로 구현될 수 있다. 다만, 도 7은 SD 카드, eMMC 또는 UFS을 구분하여 도시하지는 아니하였다. The memory card 700, which is a flash memory system 300 that can be electrically connected to the system-on-chip 100 according to the embodiment of the present invention shown in FIG. 7, includes an SD card (Secure Digital Card), an embedded Multimedia Memory Card ) Or universal flash storage (UFS). However, the SD card, the eMMC or the UFS are not shown separately in Fig.

본 발명의 실시예에 따른 시스템 온 칩(100)은 전술된 플래시 메모리의 보안 영역과 비보안 영역에 대한 접근을, 시스템 온 칩(100)의 내부에 위치하는 플래시 메모리 제어 블록(130a)에 의해 제어할 수 있다. 또한, 본 발명의 실시예에 따른 시스템 온 칩(100)은 보안 영역 및 비보안 영역에 대해 단순히 접근 여부를 설정하는 것에 나아가, 보안 영역 및 비보안 영역에 대한 요청의 유형에 따른 보안 정책을 달리 설정할 수도 있다. 이에 대하여 설명한다. The system on chip 100 according to the embodiment of the present invention controls access to the secure area and the non-secure area of the flash memory by the flash memory control block 130a located inside the system on chip 100 can do. In addition, the system-on-chip 100 according to the embodiment of the present invention may set the security policy according to the type of the request for the security zone and the non-security zone, in addition to simply setting access to the security zone and the non- have. This will be described.

도 8은 도 1의 플래시 메모리 제어 블록의 동작에 대한 일 예를 나타내는 순서도이다. 도 1 및 도 8을 참조하면, 본 발명의 실시예에 따른 시스템 온 칩(100)의 플래시 메모리 제어 블록(130a)의 보안 정보 저장부(131)는 도 2의 플래시 메모리(320)의 각 영역에 대한 보안 정보를 저장한다(S810). 예를 들어, 보안 정보 저장부(131)는 보안 정보를 도 9에 도시된 표와 같은 형태로 저장할 수 있다. 8 is a flowchart showing an example of the operation of the flash memory control block of FIG. 1 and 8, the security information storage unit 131 of the flash memory control block 130a of the system-on-chip 100 according to the embodiment of the present invention includes the security information storage unit 131, (S810). For example, the security information storage unit 131 may store security information in the form of a table as shown in FIG.

도 9를 참조하면, 보안 정보는 플래시 메모리(320)의 저장 영역에 대응되는 LBA(Logical Block Address) 및 LBA에 대한 보안 정책을 포함할 수 있고, 표의 형태로 저장될 수 있다. 보안 정책은 LBA로 규정된 영역에 대한 보안 요구 여부, 보안이 요구되는 명령의 유형, 및 보안 레벨(암호화 여부 또는 암호화 정보) 중 적어도 하나 이상을 나타낼 수 있다. 도 9의 예에서, 표의 각 열에는, 시작 LBA, 끝 LBA, 시작 LBA 및 끝 LBA로 규정되는 플래시 메모리(320)의 저장 영역에 대한 보안 독출 여부, 보안 기입 여부, 비보안 독출 여부 및 비보안 기입 여부에 대한 보안 정보가 포함된다. 이때, 보안 독출 및 보안 기입은 각각, 보안 어플리케이션 또는 보안 OS의 수행에 따른 보안 모드에서의 독출 및 기입만이 허용되는 독출 및 기입을 나타내고, 비보안 독출 및 기입은 보안 어플리케이션(또는 보안 OS) 및 비보안 어플리케이션(또는 비보안 OS)의 수행에 따른 독출 및 기입이 모두 허용되는 독출 및 기입을 나타낸다. 즉, 보안 독출 및 보안 기입은 도 3의 보안 모드에서만 허용되고, 비보안 독출 및 비보안 기입은 도 3의 비보안 모드에서도 허용된다. Referring to FIG. 9, the security information may include a security policy for an LBA (Logical Block Address) and an LBA corresponding to a storage area of the flash memory 320, and may be stored in the form of a table. The security policy may indicate at least one of whether or not security is requested for the area defined by the LBA, the type of command requiring security, and the security level (encryption or encryption information). In the example of FIG. 9, each column of the table indicates whether or not security is read on the storage area of the flash memory 320 defined by the start LBA, the end LBA, the start LBA, and the end LBA, whether or not security is written, And security information for the < / RTI > In this case, the security reading and security writing respectively indicate reading and writing in which only reading and writing in the security mode according to the execution of the security application or the security OS are allowed, and the non-security reading and writing are performed by the security application (or security OS) It indicates read and write that both reading and writing according to the execution of the application (or non-secure OS) are allowed. That is, the security reading and security writing are allowed only in the security mode of FIG. 3, and the non-secured reading and non-secured writing are permitted even in the non-secured mode of FIG.

도 9의 표에 의하면, LBA 0x00000000~0x07FFFFFF로 규정되는 영역에 대하여는 보안 독출 및 보안 기입만이 허용된다. 즉, 비보안 어플리케이션의 수행을 위해, LBA 0x00000000~0x07FFFFFF로 규정되는 영역에 대한 접근이 불허된다. 반면, LBA 0x08000000~0x0BFFFFFF로 규정되는 영역에 대하여는 보안 독출만이 허용된다. 즉, LBA 0x00000000~0x0BFFFFFF로 규정되는 영역에 대한 기입을 위한 접근은 아예 불허된다. According to the table of FIG. 9, only the security reading and security writing are allowed for the area defined by LBA 0x00000000 to 0x07FFFFFF. That is, access to the area defined by LBA 0x00000000 to 0x07FFFFFF is not allowed for execution of non-secure application. On the other hand, only secure reading is permitted for the area defined by LBA 0x08000000 to 0x0BFFFFFF. That is, access to the area defined by LBA 0x00000000 to 0x0BFFFFFF is not allowed at all.

도 8은 단계 S810은 보안 정보가 저장되는 단계를 도시하고 있으나 이에 한정되는 것은 아니다. 본 발명의 실시예에 따른 단계 S810은 보안 정보의 저장 이외에, 보안 정보가 업데이트(update) 되는 경우도 포함될 수 있다. 도 9의 표는 시스템 온 칩(100)이 턴-온 되어 플래시 메모리 시스템(300)으로부터 플래시 메모리 시스템(300)의 동작 환경에 대한 정보를 수신하는 때에 업데이트 될 수 있다. 시스템 온 칩(100)이 턴-온 되어 플래시 메모리 시스템(300)과 초기화 동작을 수행하는 중에, 플래시 메모리 시스템(300)의 저장 영역에 대한 보안 정책, 즉 어느 영역에 어떤 보안 정책이 설정되었는지를 나타내는 보안 정보가 시스템 온 칩(100)으로 전송될 수 있다. FIG. 8 illustrates a step in which security information is stored in step S810, but is not limited thereto. The step S810 according to the embodiment of the present invention may include the case where the security information is updated in addition to the storage of the security information. The table of FIG. 9 may be updated when the system-on-chip 100 is turned on and receives information about the operating environment of the flash memory system 300 from the flash memory system 300. [ The system-on-chip 100 is turned on and performs the initialization operation with the flash memory system 300. The security policy for the storage area of the flash memory system 300, that is, The security information may be transmitted to the system-on-chip 100.

다시 도 1 및 도 8을 참조하면, 플래시 메모리 제어 블록(130a)의 명령 모니터링부(132)는 CPU(110)가 플래시 메모리 시스템(300)으로 인가하는 명령을 모니터링(monitoring)하여(S820), 명령에 연관된 주소를 캡쳐(capture)한다(S830). 명령은, 플래시 메모리 시스템(300)이 eMMC로 구현되는 경우, 도 10과 같은 포맷(format)을 가질 수 있다. 1 and 8, the command monitoring unit 132 of the flash memory control block 130a monitors a command applied to the flash memory system 300 by the CPU 110 (S820) The address associated with the command is captured (S830). The command may have a format as shown in FIG. 10 when the flash memory system 300 is implemented as an eMMC.

도 10은 JEDEC Standard N0. 84-B45의 Table 34에서 규정된 명령 포맷이다. 도 10을 참조하면, eMMC로 인가되는 명령은 시작 비트(Start Bit), 전송 비트(Transmission Bit), 명령 인덱스(Command Index), 아규먼트(Argument), CRC7(cyclical redundancy check7) 및 끝 비트(End Bit)를 포함하는 48 비트로 구현된다. 시작 비트는 명령의 시작을 알리며 항상 0의 값을 갖는다. 전송 비트는 전송 방향을 나타내는데, 예를 들어, 호스트(도 1의 시스템 온 칩)는 1의 값을 갖는다. 명령 인덱스는 명령의 종류를 나타낸다. 예를 들어, JEDEC Standard N0. 84-B45의 Table 36에서 Table 44는 eMMC에서 사용되는 각종 명령의 종류를 나타낸다. 예를 들어, CMD1은 호스트가 eMMC에게 유효한 동작 상태를 보낼 것을 요청하는 명령이고, CMD2는 호스트가 eMMC에게 장치 식별자를 요청하는 명령이며, CMD17 및 CMD18은 eMMC에 저장된 데이터의 독출을 위한 명령이며, CMD24 및 CMD25는 eMMC에 데이터를 기입하기 위한 명령이다. 10 is a graphical representation of JEDEC Standard N0. It is the command format specified in Table 34 of 84-B45. 10, a command applied to the eMMC includes a Start Bit, a Transmission Bit, a Command Index, an Argument, a cyclic redundancy check (CRC) 7, and an End Bit ). ≪ / RTI > The start bit indicates the start of the command and always has a value of zero. The transfer bit represents the transfer direction, for example, the host (the system on chip of FIG. 1) has a value of one. The instruction index indicates the type of instruction. For example, JEDEC Standard N0. Table 36 in Table 44 of 84-B45 shows the types of commands used in the eMMC. For example, CMD1 is a command for a host to send a valid operation state to the eMMC, CMD2 is a command for a host to request a device identifier from the eMMC, CMD17 and CMD18 are commands for reading data stored in the eMMC, CMD24 and CMD25 are instructions for writing data to the eMMC.

아규먼트는 예를 들어, 명령이 수행되는 eMMC의 저장 영역에 대한 주소를 나타낼 수 있으며, 32 비트로 코딩(coding)된다. 플래시 메모리 제어 블록(130a)으로부터 출력되는 명령에서, 아규먼트에 의해 나타내어지는 eMMC의 저장 영역에 대한 주소는 LBA(Logical Block Address)로 표현될 수 있다. eMMC의 메모리 컨트롤러의 FTL은 LBA를 eMMC의 저장 영역에 대한 물리적 주소에 맵핑(mapping)시킨다. CRC7은 에러 검출 및 정정을 위한 값을 포함한다. 끝 비트는 명령의 끝을 나타내며 항상 1의 값을 갖는다. 도 9의 표에서 x는 명령에 따라 다른 값을 가질 수 있음을 나타낸다. The argument may, for example, represent the address of the storage area of the eMMC on which the instruction is to be executed and is coded to 32 bits. In the command output from the flash memory control block 130a, the address of the storage area of the eMMC indicated by the argument may be represented by an LBA (Logical Block Address). The FTL of the memory controller of the eMMC maps the LBA to the physical address of the storage area of the eMMC. CRC7 includes a value for error detection and correction. The end bit indicates the end of the command and always has a value of 1. In the table of FIG. 9, x indicates that it can have different values depending on the command.

명령 모니터링부(132)는 명령의 아규먼트를 캡쳐하여 접근 결정부(133)에 캡쳐된 주소를 전송할 수 있다. 접근 결정부(133)는 명령 모니터링부(132)로부터 전송된 주소에 대응되는 보안 정보 저장부(131)의 보안 정보에 근거하여 캡쳐된 주소로의 접근 가부를 판단한다(S840). 예를 들어, 명령 모니터링부(132)로부터 전송된 주소가 도 9의 표 상의 LBA 0x00000000~0x07FFFFFF에 포함된다면, 접근 결정부(133)는 보안 어플리케이션 또는 보안 OS에 의한 접근만을 허용한다. 예를 들어, 보안 모드에서 해당 명령이 발생한 경우, 접근 결정부(133)는 해당 영역에 대한 접근을 허용한다(S840의 YES). 이 경우, 플래시 메모리 시스템(300)과 인터페이싱하는 플래시 메모리 인터페이스부(134)는 명령을 플래시 메모리 시스템(300)으로 전송한다(S850). 반면, 비보안 모드에서 해당 명령이 발생한 경우, 접근 결정부(133)는 해당 영역에 대한 접근을 불허한다(S840의 NO). 이 경우, 접근 결정부(133)는 CPU(110)에게 명령이 거부되었음을 알릴 수 있다(S860). The instruction monitoring unit 132 may capture an argument of the instruction and transmit the address captured by the access determination unit 133. [ The access determination unit 133 determines whether access to the captured address is possible based on the security information of the security information storage unit 131 corresponding to the address transmitted from the command monitoring unit 132 in operation S840. For example, if the address transmitted from the command monitoring unit 132 is included in the LBA 0x00000000 to 0x07FFFFFF on the table of FIG. 9, the access determination unit 133 allows access only by the security application or the secure OS. For example, when a corresponding command is generated in the security mode, the access determination unit 133 permits access to the corresponding area (YES in S840). In this case, the flash memory interface unit 134 for interfacing with the flash memory system 300 transmits the command to the flash memory system 300 (S850). On the other hand, when the corresponding command is generated in the non-secured mode, the access determination unit 133 disallows access to the corresponding area (NO in S840). In this case, the access determination unit 133 can notify the CPU 110 that the command is rejected (S860).

도 11은 본 발명의 다른 실시예에 따른 시스템 온 칩의 동작 방법을 나타내는 도면이다. 도 1 및 도 11을 참조하면, 도 11의 시스템 온 칩(100)의 동작 방법은 도 8의 동작 방법과 마찬가지로, 보안 정보 저장부(131)가 도 2의 플래시 메모리(320)의 각 영역에 대한 보안 정보를 저장하고(S8010), 명령 모니터링부(132)가 CPU(110)로부터 플래시 메모리 시스템(300)으로 인가하는 명령을 모니터링(S820)한다. 또한, 도 11의 시스템 온 칩(100)의 동작 방법은 도 8의 동작 방법과 마찬가지로, 접근(또는 명령의 실행)이 허용되면(S845의 YES) 플래시 메모리 인터페이스부(134)가 명령을 플래시 메모리 시스템(300)으로 전송(S850)하고, 해당 영역에 대한 접근(또는 명령의 실행)을 불허(S845의 NO)되면 접근 결정부(133)는 CPU(110)에게 명령이 거부되었음을 알릴 수 있다(S860).11 is a diagram illustrating a method of operating a system-on-chip according to another embodiment of the present invention. Referring to FIGS. 1 and 11, a method of operating the system-on-chip 100 of FIG. 11 is similar to that of FIG. 8 except that the security information storage unit 131 stores, in each area of the flash memory 320 of FIG. 2, (Step S8010). The command monitoring unit 132 monitors the command applied from the CPU 110 to the flash memory system 300 (S820). The operation method of the system on chip 100 of FIG. 11 is the same as the operation method of FIG. 8, except that when the access (or execution of the instruction) is permitted (YES in S845) The access determination unit 133 notifies the CPU 110 that the command is rejected (step S850), and if the access to the area is not permitted (or the execution of the command is denied) S860).

이때, 도 11의 시스템 온 칩(100)의 동작 방법은, 명령 모니터링부(132)가 CPU(110)로부터 플래시 메모리 시스템(300)으로 인가하는 명령을 모니터링(S820)하여, 명령에 연관된 주소와 함께 명령의 유형을 캡쳐할 수 있다(S835). 명령의 유형의 캡쳐(S835)는, 예를 들어, 도 10의 명령 인덱스를 캡쳐함으로써 수행될 수 있다. The method of operating the system-on-chip 100 of FIG. 11 is the same as the method of operating the system-on-chip 100 except that the command monitoring unit 132 monitors a command applied from the CPU 110 to the flash memory system 300 (S820) Together, the type of command can be captured (S835). Capture (S835) of the type of command can be performed, for example, by capturing the command index of FIG.

이 경우, 접근 결정부(133)가 명령 모니터링부(132)로부터 전송된 주소에 대응되는 보안 정보 저장부(131)의 보안 정보에 근거하여 그 주소로의 접근 가부(캡쳐된 주소에서의 캡쳐된 유형에 해당하는 명령의 실행 가부)를 판단한다(S845). 캡쳐된 명령의 유형이 캡쳐된 주소에 대해 허용된 명령인지의 판단(S845)은, 예를 들어, 캡쳐된 주소가 도 9의 표 상의 LBA 0x08000000~0x0BFFFFFF로 규정되는 영역인 경우, 캡쳐된 명령이 해당 영역에 대해 허용된 독출 명령인지, 아니면 불허된 기입 명령인지를 판단함으로써 수행될 수 있다. In this case, based on the security information of the security information storage unit 131 corresponding to the address transmitted from the command monitoring unit 132, the access determination unit 133 determines whether access to the address (captured (Step S845). If the type of the captured command is an allowed command for the captured address (S845), for example, if the captured address is an area defined by LBA 0x08000000 to 0x0BFFFFFF on the table of FIG. 9, Whether it is an allowed read command for the area, or an unauthorized write command.

도 11과 같이, 캡쳐된 명령의 유형에 따라 플래시 메모리 시스템(300)의 저장 영역으로의 접근을 달리하기 위해, 플래시 메모리 시스템(300)의 저장 영역은 각 영역에 따라 보안의 정도를 달리할 수 있다. 본 발명의 일 실시예에 따른 시스템 온 칩에 전기적으로 연결될 수 있는 플래시 메모리의 일 예를 나타내는 도 12를 참조하면, 일 실시예에 따른 플래시 메모리(1220)는 보안 영역(1221) 및 비보안 영역(1222)을 포함할 수 있다. 이때, 보안 영역(1221)은 수행하고자 하는 명령의 유형에 따라 영역이 구분될 수 있다. 예를 들어, 보안 영역(1221)은 보안 독출 영역(1221_1), 보안 기입 영역(1221_2) 및 보안 독출 및 기입 영역(1221_3)을 포함할 수 있다. 보안 독출 영역(1221_1)은 도 9의 표 상의 보안 독출만이 허용되는 LBA 0x08000000~0x0BFFFFFF로 규정되는 영역이고 보안 독출 및 기입 영역(1221_3)은 도 9의 표 상의 보안 독출 및 보안 기입이 허용되는 LBA 0x00000000~0x07FFFFFF로 규정되는 영역에 대응될 수 있다. 비보안 영역(1222) 또한, 비보안 독출 영역(1222_1), 비보안 기입 영역(1222_2) 및 비보안 독출 및 기입 영역(1222_3)으로 구분되어 설정될 수 있다. As shown in FIG. 11, in order to differentiate access to the storage area of the flash memory system 300 according to the type of the captured command, the storage area of the flash memory system 300 may vary in security degree depending on each area have. 12, which illustrates an example of a flash memory that can be electrically connected to a system-on-chip according to an embodiment of the present invention, a flash memory 1220 according to an embodiment includes a security area 1221 and a non- 1222). At this time, the security area 1221 can be divided into areas according to the type of command to be executed. For example, the secure area 1221 may include a secure read area 1221_1, a secure write area 1221_2, and a secure read and write area 1221_3. The security readout area 1221_1 is an area defined by LBA 0x08000000 to 0x0BFFFFFF where only security reading on the table of FIG. 9 is allowed, and the security read and write area 1221_3 is a region defined by LBA It may correspond to an area defined by 0x00000000 to 0x07FFFFFF. The non-secured area 1222 can be further divided into a non-secured read area 1222_1, a non-secured write area 1222_2, and a non-secured read and write area 1222_3.

도 12는 보안 영역(1221) 및 비보안 영역(1222)이 모두 플래시 메모리 시스템(300)으로 인가되는 명령의 유형에 따라 세부적으로 구분되어 접근이 제어되는 예를 도시하였으나, 이에 한정되는 것은 아니다. 예를 들어, 보안 영역(1221)만 명령의 유형에 따라 세부적으로 구분되고, 비보안 영역(1222)은 명령의 유형에 무관하게 접근이 허용될 수도 있다. 또한, 본 발명의 일 실시예에 따른 시스템 온 칩에 전기적으로 연결될 수 있는 플래시 메모리의 일 예를 나타내는 도 13에 도시되는 바와 같이, 플래시 메모리 시스템(300)으로 인가되는 명령의 유형이 아닌, 보안의 요구 정도에 따라 보안 영역(1321)은 보안 레벨 1 영역(1321_1) 및 보안 레벨 2 영역(1321_2) 등으로 구분하여 설정할 수 있다. 예를 들어, 보안 레벨 1 영역(1321_1)은 보안 레벨 2 영역(1321_2)와 마찬가지로 보안 영역에 포함되나, 보안 레벨 1 영역(1321_1)의 데이터를 사용할 수 있는 어플리케이션이 보안 레벨 2 영역(1321_2)의 데이터를 사용할 수 있는 어플리케이션보다 한정적일 수 있다. 예를 들어, 보다 높은 정도의 보안이 요구되는 제1 어플리케이션은 보안 레벨 1 영역(1321_1) 및 보안 레벨 2 영역(1321_2)의 데이터를 모두 사용할 수 있으나, 제1 어플리케이션보다 낮은 정도의 보안이 요구되는 제2 어플리케이션은 보안 레벨 2 영역(1321_2)의 데이터의 데이터만을 사용할 수 있다. 또는, 예를 들어, 보안 레벨 1 영역(1321_1)은 전술된 접근에 대한 제어 이외에 암호화가 요구되는 데이터를 저장하는 영역일 수 있다. 이때, 보안 레벨 1 영역(1321_1)은 보안 레벨 2 영역(1321_2)보다 강화된 암호화가 수행될 수 있다. 비보안 영역(1322) 또한 마찬가지이다. 이 경우, 시스템 온 칩(100)의 플래시 메모리 제어 블록(130a)은 명령의 실행 주체(어플리케이션) 또는 암호화 정도에 따라 보안의 레벨을 달리하는 보안 정보를 저장하고, 이에 따라 전술된 접근 허용 여부를 판단할 수 있을 것이다. FIG. 12 shows an example in which access is controlled by the security area 1221 and the non-security area 1222 are classified according to the type of command applied to the flash memory system 300, but the present invention is not limited thereto. For example, only the security area 1221 is classified in detail according to the type of command, and the non-security area 1222 may be allowed to access regardless of the type of command. 13, which illustrates an example of a flash memory that can be electrically connected to a system-on-chip according to an embodiment of the present invention, the type of command applied to the flash memory system 300, The security area 1321 can be divided into the security level 1 area 1321_1 and the security level 2 area 1321_2 according to the required level of the security level 1321. [ For example, the security level 1 area 1321_1 is included in the security area as in the security level 2 area 1321_2, but an application that can use data in the security level 1 area 1321_1 is included in the security level 2 area 1321_2 It may be more restrictive than the application that can use the data. For example, a first application requiring a higher degree of security may use data of the security level 1 area 1321_1 and the security level 2 area 1321_2, but a security level lower than that of the first application is required And the second application can use only data of the data in the security level 2 area 1321_2. Alternatively, for example, the security level 1 area 1321_1 may be an area for storing data for which encryption is required in addition to the control for the above-described access. At this time, the security level 1 area 1321_1 can be subjected to enhanced encryption more than the security level 2 area 1321_2. The non-security area 1322 is also the same. In this case, the flash memory control block 130a of the system-on-chip 100 stores the security information having a different level of security according to the execution subject (application) or degree of encryption of the command, You will be able to judge.

이렇듯, 본 발명의 실시예에 따른 시스템 온 칩(100)에 의하면, 플래시 메모리 시스템(300)의 저장 영역에 대한 보안 정책을 시스템 온 칩(100)의 내부에서 수행함으로써, 보안을 유지 내지 강화하면서도 시스템 온 칩(100) 또는 시스템 온 칩(100)을 포함하는 전자 장치의 동작 효율을 증대시킬 수 있다. As described above, according to the system-on-chip 100 according to the embodiment of the present invention, the security policy for the storage area of the flash memory system 300 is performed in the system-on-chip 100, The operation efficiency of the electronic device including the system-on-chip 100 or the system-on-chip 100 can be increased.

도 14는 본 발명의 다른 실시예에 따른 시스템 온 칩을 나타내는 도면이다. 도 14를 참조하면, 본 발명의 다른 실시예에 따른 시스템 온 칩(1400)은 도 1의 시스템 온 칩(100)과 마찬가지로, CPU(110), 메인 메모리 제어 블록(120), 플래시 메모리 제어 블록(130), 다수의 IP(140) 및 버스(bus, 150)를 포함한다. 나아가, 도 14의 시스템 온 칩(1400)은 모드 신호 전송선(160)을 더 포함할 수 있다. CPU(110), 메인 메모리 제어 블록(120), 플래시 메모리 제어 블록(130a) 및 다수의 IP(140)는 버스(150) 이외에, 모드 신호 전송선(160)으로 연결된다. CPU(110)는 시스템 온 칩(100)이 보안 모드(secure mode)로 운영되는지 비보안 모드(non-secure mode)로 운영되는지를 나타내는 NS bit를 메인 메모리 제어 블록(120), 플래시 메모리 제어 블록(130a) 및 다수의 IP(140) 각각에 전송한다. NS bit는 도 2의 보안 신호(SC_sig)에 포함될 수 있다. 메인 메모리 제어 블록(120), 플래시 메모리 제어 블록(130a) 및 다수의 IP(140) 각각은 NS bit에 근거하여, 현재 실행되는 모드가 보안 모드인지 비보안 모드인지를 판단할 수 있다. 이상에서는 시스템 온 칩이 보안 모드로 동작하는지 여부를 NS bit가 나타내는 것으로 설명되었으나, 이에 한정되는 것은 아니다. NS bit의 논리 레벨과 반전되는 S_bit(Secure_bit)를 통해 시스템 온 칩이 보안 모드로 동작하는지 여부를 나타낼 수도 있다. 14 is a diagram illustrating a system on chip according to another embodiment of the present invention. 14, a system-on-a-chip 1400 according to another embodiment of the present invention includes a CPU 110, a main memory control block 120, a flash memory control block 120, A plurality of IP 140, and a bus 150. [ Further, the system on chip 1400 of FIG. 14 may further include a mode signal transmission line 160. The CPU 110, the main memory control block 120, the flash memory control block 130a and the plurality of IPs 140 are connected to the mode signal transmission line 160 in addition to the bus 150. [ The CPU 110 transmits an NS bit indicating whether the system-on-chip 100 is operating in a secure mode or a non-secure mode to the main memory control block 120, the flash memory control block 130a and a plurality of IPs 140, respectively. The NS bit may be included in the security signal SC_sig of FIG. Each of the main memory control block 120, the flash memory control block 130a and the plurality of IPs 140 can determine whether the currently executed mode is the secure mode or the non-secure mode, based on the NS bit. In the above description, the NS bit indicates whether the system-on-chip operates in the security mode, but the present invention is not limited thereto. It is also possible to indicate whether the system on chip operates in the security mode through the S_bit (Secure_bit) which is inverted with the logic level of the NS bit.

모드 신호 전송선(160)은 도 14에 도시된 바와 같이, CPU(110), 메인 메모리 제어 블록(120), 플래시 메모리 제어 블록(130a) 및 다수의 IP(140)에 공통으로 연결될 수 있다. 다만, 이에 한정되는 것은 아니다. 모드 신호 전송선(160)은 CPU(110)와 메인 메모리 제어 블록(120), CPU(110)와 플래시 메모리 제어 블록(130a) 및 CPU(110)와 각각의 IP를 개별적으로 연결하도록 구비될 수 있다. The mode signal transmission line 160 may be commonly connected to the CPU 110, the main memory control block 120, the flash memory control block 130a and the plurality of IPs 140 as shown in FIG. However, the present invention is not limited thereto. The mode signal transmission line 160 may be provided to individually connect the IPs of the CPU 110 and the main memory control block 120, the CPU 110, the flash memory control block 130a, and the CPU 110 .

도 15는 본 발명의 다른 실시예에 따른 플래시 메모리 제어 블록을 나타내는 도면이다. 도 1 및 도 15를 참조하면, 본 발명의 다른 실시예에 따른 플래시 메모리 제어 블록(130b)은 도 1의 플래시 메모리 제어 블록(130a)과 같이, 보안 정보 저장부(131), 명령 모니터링부(132), 접근 결정부(133) 및 플래시 메모리 인터페이스부(134)를 구비할 수 있다. 보안 정보 저장부(131), 명령 모니터링부(132), 접근 결정부(133) 및 플래시 메모리 인터페이스부(134)의 구체적인 동작은 전술된 바와 같을 수 있다. 15 is a block diagram of a flash memory control block according to another embodiment of the present invention. 1 and 15, a flash memory control block 130b according to another embodiment of the present invention includes a security information storage unit 131, an instruction monitoring unit 132, an access determination unit 133, and a flash memory interface unit 134. The specific operations of the security information storage unit 131, the command monitoring unit 132, the access determination unit 133, and the flash memory interface unit 134 may be as described above.

나아가, 도 15의 플래시 메모리 제어 블록(130b)은 암복호화 엔진(135)을 더 구비할 수 있다. 암복호화 엔진(135)은 메인 메모리(200)로부터 메인 메모리 제어 블록(120) 및 버스(150)를 통하여 전송되는 평문(pain text)를 암호문(cipher text)로 암호화하거나, 플래시 메모리 시스템(300)으로부터 플래시 메모리 제어 블록(130a) 및 버스(150)를 통하여 전송되는 암호문을 평문으로 복호화할 수 있다. 본 발명의 실시예에 따른 암복호화 엔진(135)은 암호문을 플래시 메모리 제어 블록(130a)와 플래시 메모리 시스템(300) 사이에서 직접 송수신하는, 즉 암복호화 엔진(135)이 플래시 메모리 제어 블록(130a)에 구비되어 암복호화 엔진(135) 및 플래시 메모리 제어 블록(130a)이 버스(150)를 통해 암호문을 송수신하지 아니하는 온-더-플라이(on-the-fly) 형태로 구현될 수 있다. Further, the flash memory control block 130b of FIG. 15 may further include an encryption / decryption engine 135. [ The encryption / decryption engine 135 encrypts the painted text transmitted from the main memory 200 through the main memory control block 120 and the bus 150 in a cipher text manner, The ciphertext sent through the flash memory control block 130a and the bus 150 can be decrypted with a plain text. The encryption / decryption engine 135 according to the embodiment of the present invention transmits / receives a cipher text directly between the flash memory control block 130a and the flash memory system 300, that is, the encryption / decryption engine 135 encrypts the cipher text between the flash memory control block 130a On-the-fly in which the encryption / decryption engine 135 and the flash memory control block 130a do not transmit and receive the ciphertext via the bus 150. [

암복호화 엔진(135)은 암복호화가 필요한지를 나타내는 제어 신호(XCON)에 응답하여, 암복호화의 수행 여부를 달리할 수 있다. 제어 신호(XCON)는 CPU(110)로부터 생성될 수 있다. 또한, 전술된 보안 정보도 CPU(110)에 의해 보안 정보 저장부(131)로 제공될 수 있다. 접근 결정부(133)는 전술된 판단 동작에 따라 접근을 불허하는 경우, 명령이 불허되었음을 CPU(110)에 통보하는 한편, 암복호화 엔진(135)에도 통보하여, 암복호화 엔진(135)이 해당 명령에 대해 동작하지 아니하도록 할 수 있다.The encryption / decryption engine 135 may perform different encryption / decryption operations in response to a control signal XCON indicating whether encryption / decryption is required. The control signal XCON may be generated from the CPU 110. [ Also, the security information may be provided to the security information storage unit 131 by the CPU 110. The access determination unit 133 notifies the CPU 110 that the command is not permitted when the access is denied according to the determination operation described above and also notifies the encryption / decryption engine 135 to the encryption / decryption engine 135, It can be made not to operate on the command.

도 15의 플래시 메모리 제어 블록(130b)을 포함하는 시스템 온 칩에 의하면, 버스(150)를 점유하지 아니하고 암복호화 엔진(135) 및 플래시 메모리 제어 블록(130a) 사이에 암호문의 전송이 가능하여 버스 자원을 절약할 수 있고, 암호문으로 플래시 메모리 시스템(300) 사이의 데이터 송수신을 수행함으로써 보안을 강화할 수 있다. According to the system-on-chip including the flash memory control block 130b of Fig. 15, it is possible to transfer the ciphertext between the encryption / decryption engine 135 and the flash memory control block 130a without occupying the bus 150, Resources can be saved, and security can be enhanced by transmitting and receiving data between the flash memory system 300 using a cipher text.

도 16은 본 발명의 다른 실시예에 따른 플래시 메모리 제어 블록을 나타내는 도면이다. 도 1 및 도 16을 참조하면, 본 발명의 다른 실시예에 따른 플래시 메모리 제어 블록(130c)은 도 15의 플래시 메모리 제어 블록(130b)과 마찬가지로, 보안 정보 저장부(131), 명령 모니터링부(132), 접근 결정부(133), 플래시 메모리 인터페이스부(134) 및 암복호화 엔진(135)을 포함할 수 있다. 보안 정보 저장부(131), 명령 모니터링부(132), 접근 결정부(133), 플래시 메모리 인터페이스부(134) 및 암복호화 엔진(135)의 구체적인 동작은 전술된 바와 같을 수 있다. 나아가 도 16의 플래시 메모리 제어 블록(130c)은 DMA(Dynamic Memory Access, 136)을 더 포함할 수 있다. DMA(136)는 CPU(110)의 개입 없이, 메인 메모리(200)로의, 또는 메인 메모리(200)로부터의 데이터 전송을 수행할 수 있다. DMA(136)는 버스(150)와 암복호화 엔진(135) 사이에 연결되어 암복호화 엔진(135)으로 메인 메모리(200)의 데이터를 전송하거나 암복호화 엔진(135)으로부터 메인 메모리(200)로 데이터를 전송할 수 있다. DMA(136)는 암복호화 엔진(135)의 내부에 구비될 수도 있다. 접근 결정부(133)는 전술된 판단 동작에 따라 접근을 불허하는 경우, 명령이 불허되었음을 CPU(110)에 통보하는 한편, 암복호화 엔진(135) 또는 DMA(136)에도 통보하여, 암복호화 엔진(135) 또는 DMA(136)가 해당 명령에 대해 동작하지 아니하도록 할 수 있다. 16 is a block diagram of a flash memory control block according to another embodiment of the present invention. 1 and 16, a flash memory control block 130c according to another embodiment of the present invention includes a security information storage unit 131, an instruction monitoring unit 132, an access determination unit 133, a flash memory interface unit 134, and an encryption / decryption engine 135. The specific operations of the security information storage unit 131, the command monitoring unit 132, the access determination unit 133, the flash memory interface unit 134, and the encryption / decryption engine 135 may be as described above. Further, the flash memory control block 130c of FIG. 16 may further include a DMA (Dynamic Memory Access) The DMA 136 can perform data transfer to or from the main memory 200 without the intervention of the CPU 110. [ The DMA 136 is connected between the bus 150 and the encryption / decryption engine 135 to transfer data from the main memory 200 to the encryption / decryption engine 135 or from the encryption / decryption engine 135 to the main memory 200 Data can be transmitted. The DMA 136 may be provided inside the encryption / decryption engine 135. The access determination unit 133 notifies the CPU 110 that the command is not permitted and also notifies the encryption / decryption engine 135 or the DMA 136 that the command is not permitted, (135) or DMA (136) to not operate on the command.

도 17은 본 발명의 다른 실시예에 따른 플래시 메모리 제어 블록을 나타내는 도면이다. 도 1 및 도 17을 참조하면, 본 발명의 다른 실시예에 따른 플래시 메모리 제어 블록(130d)은 도 16의 플래시 메모리 제어 블록(130c)과 마찬가지로 보안 정보 저장부(131), 명령 모니터링부(132), 접근 결정부(133), 플래시 메모리 인터페이스부(134), 암복호화 엔진(135) 및 DMA(136)를 포함할 수 있다. 보안 정보 저장부(131), 명령 모니터링부(132), 접근 결정부(133), 플래시 메모리 인터페이스부(134), 암복호화 엔진(135) 및 DMA(136)의 구체적인 동작은 전술된 바와 같을 수 있다. 다만, 도 17의 플래시 메모리 제어 블록(130d)의 암복호화 엔진(135)은 키 저장부(170)에 저장된 암호 키(secure key)를 이용하여 암복호화를 수행할 수 있다. 키 저장부(170)는 OPT 메모리(One Time Programmable memory)로 구현될 수 있다. 17 is a block diagram of a flash memory control block according to another embodiment of the present invention. 1 and 17, a flash memory control block 130d according to another embodiment of the present invention includes a security information storage unit 131, an instruction monitoring unit 132 An access determination unit 133, a flash memory interface unit 134, an encryption / decryption engine 135, and a DMA 136. [ The concrete operation of the security information storage unit 131, the instruction monitoring unit 132, the access determination unit 133, the flash memory interface unit 134, the encryption / decryption engine 135 and the DMA 136 may be as described above have. However, the encryption / decryption engine 135 of the flash memory control block 130d of FIG. 17 may perform encryption / decryption using the encryption key stored in the key storage unit 170. [ The key storage unit 170 may be implemented as an OPT memory (One Time Programmable memory).

이상에서 암복호화 엔진(135) 및 DMA(136)는 플래시 메모리 제어 블록(130)의 내부에 위치하고, 키 저장부(170)는 플래시 메모리 제어 블록(130)의 외부에 위치하는 것으로 설명되었으나, 이에 한정되는 것은 아니다. 암복호화 엔진(135), DMA(136) 및 키 저장부(170)는 시스템 온 칩의 내의 다른 영역에 위치할 수도 있다. Although the encryption / decryption engine 135 and the DMA 136 are located in the flash memory control block 130 and the key storage unit 170 is located outside the flash memory control block 130, But is not limited thereto. The encryption / decryption engine 135, the DMA 136, and the key storage unit 170 may be located in different areas within the system-on-a-chip.

도 18은 본 발명의 일 실시예에 따른 모바일 장치를 나타내는 도면이다. 도 18을 참조하면, 모바일 장치(1800)는 시스템 온 칩으로 구현되는 어플리케이션 프로세서(1810), 커뮤니케이션 프로세서(1820), 카메라(1830), 디스플레이(1840), 커뮤니케이션 RF(communication Radio Frequency, 1850) 및 메모리들(1860, 1870)을 포함할 수 있다. 모바일 장치(1800)에서 어플리케이션 프로세서(1810)에 의해 어플리케이션(application)이 실행될 수 있다. 예를 들어, 카메라(1830)를 통해 영상이 촬영되면, 어플리케이션 프로세서(1810)는 촬영된 영상을 메모리(1870)에 저장하고, 디스플레이(1840)에 디스플레이할 수 있다. 어플리케이션 프로세서(1810)는 전술된 도 1의 시스템 온 칩(100) 또는 도 14의 시스템 온 칩(1400)일 수 있다. 촬영된 영상은 커뮤니케이션 프로세서(1820)의 제어에 따라 커뮤니케이션 RF(1850)을 통해 외부로 전송될 수 있다. 이때, 커뮤니케이션 프로세서(1820)는 영상을 전송하기 위해 임시적으로 영상을 메모리(1860)에 저장할 수 있다. 커뮤니케이션 프로세서(1820)는 그 밖에, 통화, 데이터 송수신을 위한 통신을 제어할 수 있다. 18 is a diagram of a mobile device in accordance with an embodiment of the present invention. 18, the mobile device 1800 includes an application processor 1810, a communication processor 1820, a camera 1830, a display 1840, a communication Radio Frequency (1850) Memories 1860 and 1870, as shown in FIG. An application may be executed by the application processor 1810 in the mobile device 1800. For example, when an image is captured through the camera 1830, the application processor 1810 may store the captured image in the memory 1870 and display it on the display 1840. The application processor 1810 may be the system on chip 100 of FIG. 1 or the system on chip 1400 of FIG. 14 described above. The photographed image may be transmitted to the outside through the communication RF 1850 under the control of the communication processor 1820. At this time, the communication processor 1820 may temporarily store the image in the memory 1860 to transmit the image. The communication processor 1820 can also control communication for communication and data transmission / reception.

도 19는 본 발명의 일 실시예에 따른 컴퓨팅 시스템(computing system)을 나타내는 도면이다. 도 19를 참조하면, 모바일 기기(mobile device), 데스크탑 컴퓨터(desktop computer) 또는 서버(server)와 같은 컴퓨팅 시스템(1900)에서 시스템 온 칩(1910), 메모리 장치(1920), 입출력 장치(1930) 및 디스플레이 장치(1940)을 더 포함할 수 있으며, 이들 구성요소들은 각각 버스(1950)에 전기적으로 연결될 수 있다. 도 19의 시스템 온 칩(1910)은 전술된 도 1의 시스템 온 칩(100) 또는 도 14의 시스템 온 칩(1400)과 같을 수 있다. 19 is a diagram illustrating a computing system according to an embodiment of the present invention. 19, there is shown a system-on-a-chip 1910, a memory device 1920, an input / output device 1930 in a computing system 1900 such as a mobile device, a desktop computer or a server, And a display device 1940, which may be electrically connected to the bus 1950, respectively. The system on chip 1910 of FIG. 19 may be the same as the system on chip 100 of FIG. 1 or the system on chip 1400 of FIG. 14 described above.

이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이었으나, 이는 단지 본 개시를 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 본 개시에 의한 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.As described above, an optimal embodiment has been disclosed in the drawings and specification. It is to be understood that the terminology used herein is for the purpose of describing the present disclosure only and is not used to limit the scope of the present invention. Therefore, those skilled in the art will appreciate that various modifications and equivalent embodiments are possible without departing from the scope of the present invention. The scope of the present invention should be determined by the technical idea of the appended claims.

100, 1400, 1810, 1910: 시스템 온 칩
200: 메인 메모리
300: 플래시 메모리 시스템
110: CPU
120: 메인 메모리 제어 블록
130a, 130b, 130c, 130d: 플래시 메모리 제어 블록
140: IP들
150: 버스
100, 1400, 1810, 1910: System-on-Chip
200: main memory
300: flash memory system
110: CPU
120: main memory control block
130a, 130b, 130c and 130d: flash memory control block
140: IPs
150: Bus

Claims (10)

시스템 온 칩(System On Chip)에 있어서,
상기 시스템 온 칩에 연결될 수 있는 외부의 플래시 메모리 시스템의 저장 영역에 대한 보안 정보를 저장하는 보안 정보 저장부;
상기 시스템 온 칩의 중앙 처리 장치가 상기 플래시 메모리 시스템으로 인가하고자 하는 명령을 모니터링(monitoring) 하여, 상기 명령에 포함된 주소를 캡쳐(captur)하는 명령 모니터링부;
상기 보안 정보에 근거하여, 상기 캡쳐된 주소에 대응되는 저장 영역에 대한 접근의 허용 여부를 결정하는 접근 결정부; 및
상기 접근 결정부에 의해 상기 캡쳐된 주소에 대응되는 저장 영역에 대한 접근이 허용된 경우, 상기 명령을 상기 플래시 메모리 시스템에 전송하는 플래시 메모리 인터페이스부를 구비하는 플래시 메모리 제어 블록을 포함하는 것을 특징으로 하는 시스템 온 칩.
In System On Chip,
A security information storage unit for storing security information on a storage area of an external flash memory system connectable to the system-on-chip;
A command monitoring unit for monitoring a command to be applied to the flash memory system by the central processing unit of the system on chip and capturing an address included in the command;
An access determining unit for determining whether to allow access to the storage area corresponding to the captured address based on the security information; And
And a flash memory control unit for transmitting the command to the flash memory system when access to the storage area corresponding to the captured address is permitted by the access determination unit, System on chip.
제1항에 있어서, 상기 보안 정보는,
상기 저장 영역에 대응되는 LBA(Logical Block Address) 및 상기 LBA에 대응되는 영역에 대한 보안 정책을 포함하는 것을 특징으로 하는 시스템 온 칩.
The method of claim 1,
A logical block address (LBA) corresponding to the storage area, and a security policy for an area corresponding to the LBA.
제2항에 있어서, 상기 보안 정책은,
상기 LBA에 대응되는 영역으로, 상기 시스템 온 칩이 보안 모드(secure mode)에서 동작하는 때에 한해 접근이 가능한지 또는 상기 시스템 온 칩이 비보안 모드(non-secure mode)에서도 접근이 가능한지를 나타내는 것을 특징으로 하는 시스템 온 칩.
3. The method of claim 2,
Wherein the access point is accessible only when the system-on-chip operates in a secure mode, or whether the system-on-chip is accessible even in a non-secure mode, in an area corresponding to the LBA. System on chip.
제2항에 있어서, 상기 보안 정책은,
상기 LBA에 대응되는 영역으로 접근이 가능한 명령의 유형을 나타내는 것을 특징으로 하는 시스템 온 칩.
3. The method of claim 2,
Wherein the type of the instruction indicates the type of instruction accessible to the area corresponding to the LBA.
제1항에 있어서, 상기 접근 결정부는,
상기 캡쳐된 주소가 상기 플래시 메모리 시스템의 저장 영역 중 보안 영역에 대응되는 것으로 판단된 경우,
상기 시스템 온 칩이 보안 모드로 동작하는 경우 접근을 허용하는 것으로 결정하고, 상기 시스템 온 칩이 비보안 모드로 동작하는 경우 접근을 불허하는 것으로 결정하는 것을 특징으로 하는 시스템 온 칩.
The apparatus according to claim 1,
When it is determined that the captured address corresponds to the security area of the storage area of the flash memory system,
Determining that access is granted when the system-on-chip is operating in a secure mode, and determining that access is not allowed when the system-on-chip is operating in an unsecured mode.
제1항에 있어서, 상기 접근 결정부는,
상기 캡쳐된 주소가 상기 플래시 메모리 시스템의 저장 영역 중 보안 영역에 대응되는 것으로 판단된 경우,
상기 시스템 온 칩이 보안 모드로 동작하고 상기 명령이 상기 캡쳐된 주소에 대응되는 보안 영역에 대해 허용된 명령인 경우 접근을 허용하는 것으로 결정하고, 상기 시스템 온 칩이 비보안 모드로 동작하거나 상기 캡쳐된 주소에 대응되는 보안 영역에 대해 허용된 명령이 아닌 경우 접근을 불허하는 것으로 결정하는 것을 특징으로 하는 시스템 온 칩.
The apparatus according to claim 1,
When it is determined that the captured address corresponds to the security area of the storage area of the flash memory system,
Determining that the system on chip is operating in a secure mode and allowing access if the command is an allowable command for a secure area corresponding to the captured address; and if the system on chip is operating in an unsecured mode, And determines that access is not allowed if the command is not an allowed command for a security area corresponding to the address.
제1항에 있어서, 상기 접근 결정부는,
상기 캡쳐된 주소가 상기 플래시 메모리 시스템의 저장 영역 중 보안 영역에 대응되는 것으로 판단된 경우,
상기 시스템 온 칩이 보안 모드로 동작하고 상기 명령이 상기 캡쳐된 주소에 대응되는 보안 영역에 대해 허용된 어플리케이션의 실행을 위한 명령인 경우 접근을 허용하는 것으로 결정하고, 상기 시스템 온 칩이 비보안 모드로 동작하거나 상기 캡쳐된 주소에 대응되는 보안 영역에 대해 허용된 어플리케이션의 실행을 위한 명령이 아닌 경우 접근을 불허하는 것으로 결정하는 것을 특징으로 하는 시스템 온 칩.
The apparatus according to claim 1,
When it is determined that the captured address corresponds to the security area of the storage area of the flash memory system,
Determining that the system on chip is operating in a secure mode and allowing access if the command is an instruction for execution of an application permitted for a secure area corresponding to the captured address; And determines that access is denied if it is not an instruction for execution of an application permitted to operate in the secure area corresponding to the captured address.
제1항에 있어서, 상기 플래시 메모리 제어 블록은,
상기 시스템 온 칩의 외부에 위치하는 메인 메모리(main memory)에 저장된 평문을 암호화한 암호문을 상기 플래시 메모리 인터페이스부로 전송하거나, 상기 플래시 메모리 시스템에 저장된 암호문을 평문으로 복호화하는 암복호화 엔진을 더 포함하는 것을 특징으로 하는 시스템 온 칩.
2. The flash memory control block according to claim 1,
And an encryption decryption engine for encrypting a plaintext stored in a main memory located outside the system-on-chip to a flash memory interface or decrypting a cipher text stored in the flash memory system into a plaintext The system-on-chip comprising:
제8항에 있어서, 상기 플래시 메모리 제어 블록은,
상기 메인 메모리에 저장된 평문을 상기 암복호화 엔진으로 전송하거나, 상기 암호화 엔진으로부터 복호화된 평문을 상기 메인 메모리로 전송하는 DMA(Dynamic Memory Access)를 더 포함하는 것을 특징으로 하는 시스템 온 칩.
9. The flash memory control block according to claim 8,
Further comprising a DMA (Dynamic Memory Access) for transmitting a plain text stored in the main memory to the encryption / decryption engine or for transmitting a plain text decrypted from the encryption engine to the main memory.
어플리케이션 프로세서(application processor) 및 플래시 메모리 시스템(flash memory system)을 포함하는 전자 장치에 있어서,
상기 어플리케이션 프로세서는,
상기 플래시 메모리 시스템의 저장 영역에 대한 보안 정보를 저장하는 보안 정보 저장부;
상기 어플리케이션 프로세서의 중앙 처리 장치가 상기 플래시 메모리 시스템으로 인가하고자 하는 명령을 모니터링(monitoring) 하여, 상기 명령에 포함된 주소를 캡쳐(captur)하는 명령 모니터링부;
상기 보안 정보에 근거하여, 상기 캡쳐된 주소에 대응되는 저장 영역에 대한 접근의 허용 여부를 결정하는 접근 결정부; 및
상기 접근 결정부에 의해 상기 캡쳐된 주소에 대응되는 저장 영역에 대한 접근이 허용된 경우, 상기 명령을 상기 플래시 메모리 시스템에 전송하는 플래시 메모리 인터페이스부를 구비하는 플래시 메모리 제어 블록을 포함하는 것을 특징으로 하는 전자 장치.
1. An electronic device comprising an application processor and a flash memory system,
The application processor,
A security information storage unit for storing security information on a storage area of the flash memory system;
A command monitoring unit for monitoring a command to be applied to the flash memory system by the central processing unit of the application processor and capturing an address included in the command;
An access determining unit for determining whether to allow access to the storage area corresponding to the captured address based on the security information; And
And a flash memory control unit for transmitting the command to the flash memory system when access to the storage area corresponding to the captured address is permitted by the access determination unit, Electronic device.
KR1020140104538A 2014-08-12 2014-08-12 System on chip, electronic apparatus including system on chip and operation method of system on chip KR20160019780A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140104538A KR20160019780A (en) 2014-08-12 2014-08-12 System on chip, electronic apparatus including system on chip and operation method of system on chip

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140104538A KR20160019780A (en) 2014-08-12 2014-08-12 System on chip, electronic apparatus including system on chip and operation method of system on chip

Publications (1)

Publication Number Publication Date
KR20160019780A true KR20160019780A (en) 2016-02-22

Family

ID=55445451

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140104538A KR20160019780A (en) 2014-08-12 2014-08-12 System on chip, electronic apparatus including system on chip and operation method of system on chip

Country Status (1)

Country Link
KR (1) KR20160019780A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113050877A (en) * 2019-12-27 2021-06-29 北京兆易创新科技股份有限公司 Mapping table storage method and device, electronic equipment and storage medium
US11461475B2 (en) 2019-03-12 2022-10-04 Samsung Electronics Co., Ltd. Electronic device including secure integrated circuit
US11726672B2 (en) 2020-12-24 2023-08-15 Samsung Electronics Co., Ltd. Operating method of storage device setting secure mode of command, and operating method of storage system including the storage device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11461475B2 (en) 2019-03-12 2022-10-04 Samsung Electronics Co., Ltd. Electronic device including secure integrated circuit
CN113050877A (en) * 2019-12-27 2021-06-29 北京兆易创新科技股份有限公司 Mapping table storage method and device, electronic equipment and storage medium
CN113050877B (en) * 2019-12-27 2024-03-01 兆易创新科技集团股份有限公司 Mapping table storage method and device, electronic equipment and storage medium
US11726672B2 (en) 2020-12-24 2023-08-15 Samsung Electronics Co., Ltd. Operating method of storage device setting secure mode of command, and operating method of storage system including the storage device

Similar Documents

Publication Publication Date Title
US11088846B2 (en) Key rotating trees with split counters for efficient hardware replay protection
TWI570589B (en) Apparatus for providing trusted computing
US9094190B2 (en) Method of managing key for secure storage of data and apparatus therefor
KR101224322B1 (en) Methods and apparatus for the secure handling of data in a microcontroller
US8479264B2 (en) Architecture for virtual security module
US11411747B2 (en) Nonvolatile memory device with regions having separately programmable secure access features and related methods and systems
US9607177B2 (en) Method for securing content in dynamically allocated memory using different domain-specific keys
KR102176612B1 (en) Secure subsystem
US20140164793A1 (en) Cryptographic information association to memory regions
US10372628B2 (en) Cross-domain security in cryptographically partitioned cloud
US20150317495A1 (en) Protecting Critical Data Structures in an Embedded Hypervisor System
JP2005523519A (en) Control function that restricts data access in the integrated system using the requesting master ID and data address
CN111881490A (en) Shared data protection method for NVME storage equipment fused with external encryption chip
US10505927B2 (en) Memory device and host device
US20150227755A1 (en) Encryption and decryption methods of a mobile storage on a file-by-file basis
KR20160019780A (en) System on chip, electronic apparatus including system on chip and operation method of system on chip
CN114238185A (en) Direct storage access and command data transmission method, device and related equipment
US20220198074A1 (en) Secure Transient Buffer Management
KR101320739B1 (en) System for securing of memory of the portable terminal
EP4134845A1 (en) Memory access method, system-on-chip, and electronic device
KR102421318B1 (en) A device for managing multiple accesses to a system-on-a-chip security module of an apparatus
CN112257092A (en) Data transmission control method, key management method, configuration method and related device
US9058295B2 (en) Encrypt data of storage device
US20140164787A1 (en) Control method and information processing apparatus
CN116226870B (en) Security enhancement system and method

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination