KR101795531B1 - 재구성 가능한 시스템 온 칩 - Google Patents

재구성 가능한 시스템 온 칩 Download PDF

Info

Publication number
KR101795531B1
KR101795531B1 KR1020170112395A KR20170112395A KR101795531B1 KR 101795531 B1 KR101795531 B1 KR 101795531B1 KR 1020170112395 A KR1020170112395 A KR 1020170112395A KR 20170112395 A KR20170112395 A KR 20170112395A KR 101795531 B1 KR101795531 B1 KR 101795531B1
Authority
KR
South Korea
Prior art keywords
tiny
program code
processor
sensor signal
chip
Prior art date
Application number
KR1020170112395A
Other languages
English (en)
Inventor
안승원
류승구
Original Assignee
(주)나오플러스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)나오플러스 filed Critical (주)나오플러스
Priority to KR1020170112395A priority Critical patent/KR101795531B1/ko
Application granted granted Critical
Publication of KR101795531B1 publication Critical patent/KR101795531B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0038System on Chip

Abstract

재구성 가능한 시스템 온 칩이 제공된다. 입력된 센서 신호를 처리하여 출력하는 시스템 온 칩은, 부팅 과정에서 외부의 저장 매체에 저장된 시스템 온 칩 구동용 프로그램 코드를 제공받아 저장하는 외부 메모리; 및 복수의 타이니 프로세서들을 포함하는 처리 유닛을 포함하되, 각각의 타이니 프로세서는 상기 외부 메모리에 저장된 프로그램 코드 중 CPU에 의해 지시된 주소에 상응하는 프로그램 코드를 로딩하고, 로딩된 프로그램 코드에 따라 센서 신호를 처리하며, 상기 로딩된 프로그램 코드에서 규정된 다른 타이니 프로그램 또는 주변 장치로 처리된 센서 신호를 출력한다.

Description

재구성 가능한 시스템 온 칩{Reconfiguable system on chip}
본 발명은 재구성 가능한 시스템 온 칩(Reconfiguable SoC)에 관한 것이다.
일반적으로 IoT(Internet of Things) 등의 시스템에서 센서 신호를 처리하는 시스템 온 칩(SoC)은 CPU(Central Processing Unit), DSP(Digital Signal Processor) 등의 프로세서와 주변 기기에 접속되는 버스 시스템을 구비하여, 입력값을 분석하여 미리 설정된 알고리즘을 적용하여 원하는 값을 출력하도록 하는 제품이다.
도 1은 종래기술에 따른 시스템 온 칩의 구성을 개략적으로 나타낸 도면이다.
도 1을 참조하면, 종래기술에 따른 시스템 온 칩(100)은 CPU(110), 외부 메모리(130)에 저장된 정보(즉, 데이터, 프로그램 등을 포함함) 중 CPU(110)의 구동 프로그램이 저장되고 또한 CPU(110)의 데이터 메모리로 이용되는 내부 메모리(120), 시스템 온 칩(100) 외부에 구비된 저장 매체(예를 들어, 외부 플래시 메모리)로부터 시스템 온 칩(100)의 구동에 필요한 정보를 제공받아 저장하는 외부 메모리(130), 시스템 온 칩(100) 외부의 센서 장치로부터 센서 신호를 입력받는 입력부(140), 및 CPU(110)에 포팅되어질 소프트웨어 프로그램이 하드웨어 구조로 구현된 하드웨어 엔진(150)을 포함한다. 도시되지는 않았으나, 내부 메모리(120) 및 외부 메모리(130) 각각의 동작을 제어하고 각 메모리가 CPU(110) 등 타 구성요소와 연동하여 기능하도록 제어하는 내부 메모리 제어기와 외부 메모리 제어기가 더 포함된다.
도시된 시스템 온 칩(100)은 센서 신호의 처리 및 출력을 위해 종래에 CPU(110) 자체에 포팅되어 구동되던 소프트웨어 프로그램을 하드웨어 엔진으로 구현함으로써, 상대적으로 저사양의 CPU(110)가 이용될 수 있고, 또한 상대적으로 낮은 클럭에서 동작할 수 있어 미세 공정이 불필요하며 전력 소모가 상대적으로 작아지는 장점이 있다.
그러나 하드웨어 엔진(150)을 구비하는 시스템 온 칩(100)은 센서 신호의 처리를 위한 알고리즘이 수정되거나 변경되는 경우 대처가 어렵고, 또한 하나의 응용분야에만 제한적으로 적용되도록 설계되어 다른 응용분야에서의 사용이 불가능한 문제점이 있다.
한국공개특허 제10-2013-0028505호(재구성가능 프로세서, 재구성가능 프로세서의 코드 변환 장치 및 방법)
본 발명은 저사양의 MCU(Micro Controller Unit)들이 각각 로딩된 프로그램에 따라 개별 동작하되, 상호간에는 파이프라인 구조로 연동하도록 구성함으로써, 센서 신호 처리를 위한 알고리즘의 수정이나 변경에 용이하게 대처할 수 있고, 저가의 시스템으로 고사양의 센서 신호 처리를 가능하도록 하는 재구성 가능한 시스템 온 칩을 제공하기 위한 것이다.
본 발명의 이외의 목적들은 하기의 설명을 통해 쉽게 이해될 수 있을 것이다.
본 발명의 일 측면에 따르면, 입력된 센서 신호를 처리하여 출력하는 시스템 온 칩으로서, 부팅 과정에서 외부의 저장 매체에 저장된 시스템 온 칩 구동용 프로그램 코드를 제공받아 저장하는 외부 메모리; 및 복수의 타이니 프로세서들을 포함하는 처리 유닛을 포함하되, 각각의 타이니 프로세서는 상기 외부 메모리에 저장된 프로그램 코드 중 CPU에 의해 지시된 주소에 상응하는 프로그램 코드를 로딩하고, 로딩된 프로그램 코드에 따라 센서 신호를 처리하며, 상기 로딩된 프로그램 코드에서 규정된 다른 타이니 프로그램 또는 주변 장치로 처리된 센서 신호를 출력하는 것을 특징으로 하는 시스템 온 칩이 제공된다.
상기 복수의 타이니 프로세서들은 각각 로딩된 프로그램 코드에 의해 입력된 센서 신호를 파이프라인 구조로 처리하도록 순서화될 수 있다.
상기 복수의 타이니 프로세서들 각각은, CPU에 의해 지시된 주소에 상응하는 프로그램 코드를 저장하는 커맨드 메모리; 센서 신호 또는 파이프라인 구조에서 선행하는 타이니 프로세서에 의해 처리된 센서 신호를 입력받는 입력 버퍼; 상기 입력 버퍼에 입력된 센서 신호를 상기 커맨드 메모리에 저장된 프로그램 코드에 따라 처리하는 처리기; 상기 처리기에 의해 처리된 센서 신호를 파이프라인 구조에서 후행하는 타이니 프로세서 또는 상기 주변 장치로 출력하는 출력 버퍼; 및 상기 처리기가 상기 커맨드 메모리에 저장된 프로그램 코드에 따른 처리를 수행하도록 컨트롤하는 처리 제어기를 포함할 수 있다.
상기 각각의 타이니 프로세서에는 각각 로딩된 프로그램 코드에 따른 처리가 완료되는 시간이 일치되도록 하는 클럭 주파수가 할당될 수 있다.
상기 외부의 저장 매체에는 복수의 응용 분야 각각에서 각 타이니 프로세서에 로딩될 프로그램 코드를 포함하는 메모리 맵이 저장되며, 부팅 과정에서 상기 시스템 온 칩에 할당된 응용 분야에 해당되는 프로그램 코드가 상기 외부 메모리로 저장될 수 있다.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.
본 발명의 실시예에 따르면, 저사양의 MCU들이 각각 로딩된 프로그램에 따라 개별 동작하되, 상호간에는 파이프라인 구조로 연동하도록 구성함으로써, 센서 신호 처리를 위한 알고리즘의 수정이나 변경에 용이하게 대처할 수 있고, 저가의 시스템으로 고사양의 센서 신호 처리를 가능하도록 하는 효과가 있다.
도 1은 종래기술에 따른 시스템 온 칩의 구성을 개략적으로 나타낸 도면.
도 2는 본 발명의 일 실시예에 따른 시스템 온 칩의 구성을 개략적으로 나타낸 도면.
도 3은 본 발명의 일 실시예에 따른 타이니 프로세서의 구성을 개략적으로 나타낸 도면.
도 4는 본 발명의 일 실시예에 따른 메모리 맵의 구성을 개략적으로 나타낸 도면.
도 5는 본 발명의 일 실시예에 따른 타이니 프로세서의 파이프라인 처리 구조의 다양성을 예시한 도면.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 각 도면을 참조하여 설명하는 실시예의 구성 요소가 해당 실시예에만 제한적으로 적용되는 것은 아니며, 본 발명의 기술적 사상이 유지되는 범위 내에서 다른 실시예에 포함되도록 구현될 수 있으며, 또한 별도의 설명이 생략될지라도 복수의 실시예가 통합된 하나의 실시예로 다시 구현될 수도 있음은 당연하다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일하거나 관련된 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 2는 본 발명의 일 실시예에 따른 시스템 온 칩의 구성을 개략적으로 나타낸 도면이고, 도 3은 본 발명의 일 실시예에 따른 타이니 프로세서의 구성을 개략적으로 나타낸 도면이다. 도 4는 본 발명의 일 실시예에 따른 메모리 맵의 구성을 개략적으로 나타낸 도면이고, 도 5는 본 발명의 일 실시예에 따른 타이니 프로세서의 파이프라인 처리 구조의 다양성을 예시한 도면이다.
도 2를 참조하면, 센서 장치(예를 들어 열영상 센서, 테라헤르츠 센서, 카메라 센서 등)에서 센서 신호를 입력받아 처리하기 위한 시스템 온 칩(200)은 CPU(110), 외부 메모리(130)에 저장된 정보(즉, 데이터, 프로그램 코드 등을 포함함) 중 CPU(110)의 구동을 위한 프로그램 코드가 저장되고 또한 CPU(110)의 데이터 메모리로 이용되는 내부 메모리(120), 외부에 구비된 저장 매체(예를 들어, 외부 플래시 메모리)로부터 시스템 온 칩(100)의 구동에 필요한 정보를 제공받아 저장하는 외부 메모리(130), 시스템 온 칩(100) 외부의 센서 장치로부터 센서 신호를 입력받는 입력부(140), 및 로딩된 프로그램 코드에 따라 지정된 동작을 수행하는 복수의 타이니 프로세서(220)들로 구성된 처리 유닛(210)을 포함할 수 있다. 도시되지는 않았으나, 내부 메모리(120) 및 외부 메모리(130) 각각의 동작을 제어하고 각 메모리가 CPU(110) 등 타 구성요소와 연동하여 기능하도록 제어하는 내부 메모리 제어기와 외부 메모리 제어기가 더 포함될 수 있다.
통상적으로 시스템 온 칩(200)에서의 센서 신호 처리는 필터링, 추출, 알고리즘에 의한 연산(예를 들어, 곱하기, 더하기, 쉬프트 연산) 등의 과정으로 이루어진다.
종래기술에 따른 시스템 온 칩(100)은 외부의 저장 매체에서 프로그램 코드가 내부 메모리(120)나 외부 메모리(130)에 로딩된 후 CPU(110)가 해당 프로그램 코드에 따른 동작을 수행하도록 구현된다.
이에 비해, 본 실시예에 따른 시스템 온 칩(200)은 후술되는 바와 같이 처리 유닛(210) 내에 구비된 각각의 타이니 프로세서(220)에 할당된 처리 내용에 상응하는 프로그램 코드가 로딩되어 동작되고, 각각의 타이니 프로세서(220)가 파이프라인 처리를 수행하도록 구성된다. 외부 메모리(130)에는 시스템 온 칩(200)의 구동을 위한 전체 프로그램 코드가 저장될지라도, 내부 메모리(120)에는 CPU(110)의 구동을 위한 프로그램 코드만이 저장되기 때문에 종래의 내부 메모리(120)에 비해 적은 저장 용량을 가지는 장치로 대체되어도 무방한 특징이 있다.
처리 유닛(210)에는 저사양의 MCU인 타이니 프로세서(Tiny processor, TP)(220)들이 복수로 구비된다. 여기서, 저사양의 MCU란 곱하기나 더하기와 같은 통상적인 간단한 연산 등의 처리는 가능할지라도 고사양의 처리는 불가능하도록 처리 능력이 제한적인, 예를 들어 저가의 MCU 제품이거나 개발된 후 오랜 기간이 경과된 MCU 제품을 의미할 수 있다.
각각의 타이니 프로세서(220)는 도 3에 예시된 바와 같이 커맨드 메모리(310), 처리 제어기(320), 입력 버퍼(330), 처리기(340) 및 출력 버퍼(350)를 포함할 수 있다.
커맨드 메모리(310)에는 해당 타이니 프로세서(220)가 처리할 동작에 대한 프로그램 코드가 저장된다. 커맨드 메모리(310)에 저장되는 프로그램 코드는 외부 메모리(130)에 저장된 프로그램 코드들 중 메모리 맵 상에서 특정 주소에 위치하는 프로그램 코드일 수 있으며, 어떤 주소의 프로그램 코드를 커맨드 메모리(310)에 저장할 것인지는 CPU(110)에 의해 제어될 수 있다. 이때, 시스템 온 칩(200)이 어떤 응용분야를 처리할 것인지에 따라 각각의 타이니 프로세서(220)의 커맨드 메모리(310)에 저장되는 프로그램 코드는 상이해질 수 있다.
도 4에는 외부의 저장 매체에 저장된 다양한 응용 분야의 프로그램 코드를 포함하는 메모리 맵이 예시되어 있으나, 부팅 과정에서 외부 메모리(130)에 저장되는 메모리 맵은 해당 시스템 온 칩(200)의 구동에 필요한 일부의 메모리 맵이 저장될 수 있을 것이다. 외부 메모리(130)에 저장되는 메모리 맵은 해당 시스템 온 칩(200)이 어떤 응용분야에서 기능하도록 지정된 것인지에 따라 상이해질 수 있을 것이다.
처리 제어기(320)는 CPU(110)의 제어에 의해 지정된 프로그램 코드를 외부 메모리(130)에서 커맨드 메모리(310)로 저장하고, 처리기(340)가 커맨드 메모리(310)에 저장된 프로그램 코드에 상응하는 처리 동작을 진행하도록 컨트롤한다.
예를 들어, 처리 제어기(320)는 입력 버퍼(330)로 입력된 데이터를 처리기(340)가 어떻게 처리(예를 들어, 16비트 곱하기, 더하기 및 쉬프트 등)하도록 할 것인지를 컨트롤하며, 처리기(340)에 의해 처리된 결과 데이터는 출력 버퍼(350)를 통해 후단의 구성요소(예를 들어 다른 타이니 프로세서 또는 주변 장치 등)로 출력된다.
각각의 타이니 프로세서(220)가 어떤 구성 요소로부터 데이터를 입력받고, 입력된 데이터에 대해 어떤 처리를 수행하며, 처리된 결과 데이터를 어떤 구성 요소로 출력할 것인지는 커맨드 메모리(310)에 저장되는 프로그램 코드 내에 미리 규정된다.
각 타이니 프로세서(220)가 어떤 처리를 수행하고, 처리된 결과 데이터를 어떤 구성 요소로 출력할 것인지가 프로그램 코드로서 미리 규정되기 때문에, 도 5의 (a)와 (b)에 각각 예시된 바와 같이 다양한 파이프라인 구조가 형성될 수 있다. 다양한 형태의 파이프라인 구조로의 구성은 예를 들어 처리 유닛(210)에 미리 구비된 먹스(MUX)를 이용하여 변경될 수 있으며, 또한 경로 구성은 예를 들어 CPU(110)가 처리하도록 하거나 처리된 결과 데이터를 출력할 구성요소가 특정된 프로그램 코드에 의해 이루어지도록 할 수 있을 것이다.
이때, 파이프라인 처리를 수행하는 각각의 타이니 프로세서(220)는 전체 밴드폭(bandwidth)에 맞게 클럭 제어기(230)의 제어에 의해 상이한 주파수의 클럭을 공급받아 동작할 수도 있다.
일반적으로 파이프라인 처리는 한 클럭이 한 스테이지(stage)를 의미하며, 한 스테이지에서 걸리는 시간은 각 파이프라인 처리 중 최대 딜레이(maximum delay)를 가지는 스테이지의 딜레이로 결정된다.
따라서 복수의 타이니 프로세서(220)가 각각 할당된 처리를 수행함에 있어, 어떤 타이니 프로세서(220)는 연산량이 작아 일찍 할당된 처리가 완료될 수 있고, 다른 어떤 타이니 프로세서(220)는 연산량이 많아 오래 걸릴 수도 있다.
그러나, 파이프라인 처리를 위해서는 각 타이니 프로세서(220)의 처리 시간이 동일하게 설정되어야 하기 때문에 어떤 타이니 프로세서(220)에는 빠른 클럭 주파수가 할당되고, 다른 타이니 프로세서(220)는 느린 클럭 주파수가 할당될 수도 있게 된다.
이와 같이, 타이니 프로세서(220)들 각각에 적절한 클럭 주파수가 할당되도록 하는 처리가 클럭 제어기(230)에 의해 수행되며, 이러한 처리에 의해 저전력 시스템 온 칩(200) 구현이 가능해지는 특징도 있다. 물론 특정 연산 처리에 많은 시간이 필요로 하는 경우에는 해당 연산 처리가 분할되어 복수의 타이니 프로세서(220)들에 의해 수행되도록 할 수도 있음은 당연하다.
또한 처리 유닛(210)에 포함된 타이니 프로세서(220)들 각각에 프로그램 코드가 로딩되지만, 모든 프로그램 코드가 연산 등의 처리를 수행하는 것으로 한정되지 않을 수 있다.
예를 들어, 처리 유닛(210)에는 5개의 타이니 프로세서(220)들이 구비되어 있으나 센서 신호를 처리하기 위해 4개의 타이니 프로세서(220)들의 동작만이 필요한 경우, 나머지 하나의 타이니 프로세서(220)는 연산없이 입력된 데이터를 후속하는 구성요소로 출력(Through)하는 처리만이 수행될 수도 있다(도 5의 (a)의 TP-8 참조).
물론 나머지 하나의 타이니 프로세서(220)가 어떠한 연산 처리도 불필요한 경우, 지정된 처리를 수행한 마지막 타이니 프로세서(220)가 처리한 결과 데이터를 나머지 하나의 타이니 프로세서(220)가 아닌 미리 지정된 후속하는 구성요소로 직접 출력할 수도 있음은 당연하다.
전술한 바와 같이, 본 실시예에 따른 시스템 온 칩(200)은 저사양의 MCU인 타이니 프로세서(220)들이 서로 연결되어 동작하도록 파이프라인화하는 것이며, 각 타이니 프로세서(220)들은 레지스터로 미리 지정된 동작을 하는 것이 아니라, 부팅 과정에서 CPU(110)에 의해 제어되어 외부 메모리(130)에서 커맨드 메모리(310)로 저장된 프로그램 코드에 따른 동작을 수행한다.
따라서, 각각의 타이니 프로세서(220)에 어떤 프로그램 코드가 저장되는지에 따라 시스템 온 칩(200)이 MP3 기능을 할 수도 있고, 영상 처리 기능도 할 수 있다. 영상 처리 기능을 수행하는 경우, 예를 들어 열영상 처리, 초음파 분석 처리, 테라비트 등 다양한 응용분야에 적용될 수도 있을 것이다. 이를 통해, 각 사용자는 메모리 맵을 다양하게 구성하고 변경함으로써 본 실시예에 따른 시스템 온 칩(200)이 다양한 응용분야에서 활용되도록 할 수 있을 것이다.
그리고, 도 4에 예시된 바와 같이, 외부의 저장 매체에 저장된 메모리 맵에는 여러 개의 응용분야에 대한 프로그램이 저장되어 있을 수 있다. 각각의 응용분야에 대한 프로그램 코드는 각각의 시스템 온 칩(200)에 제공되어 각각 구동되도록 할 수도 있으며, 하나의 시스템 온 칩(200)이 응용분야를 바꿔가며 다양하게 동작되도록 할 수도 있다.
따라서, 본 실시예에 따른 시스템 온 칩(200)이 이미지 시그널 프로세서(ISP)로 구현되는 경우를 가정하면, 부팅 과정에서 각 타이니 프로세서(220)에 어떤 프로그램 코드가 저장되는지에 따라 열영상 ISP, 초음파 ISP, 테라비트 ISP 등으로 다양하게 구동될 수 있다. 이러한 특징은 사물인터넷(IoT, Internet of Thigs) 분야의 다양한 센서 장치에 연결되어 적용될 수 있는 다양성을 제공할 수 있다.
상기에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100, 200 : 시스템 온 칩(SoC) 110 : CPU
120 : 내부 메모리 130 : 외부 메모리
140 : 입력부 150 : 하드웨어 엔진
210 : 처리 유닛 220 : 타이니 프로세서
310 : 커맨드 메모리 320 : 처리 제어기
330 : 입력 버퍼 340 : 처리기
350 : 출력 버퍼

Claims (3)

  1. 입력된 센서 신호를 처리하여 출력하는 시스템 온 칩으로서,
    부팅 과정에서 외부의 저장 매체에 저장된 시스템 온 칩 구동용 프로그램 코드를 제공받아 저장하는 외부 메모리; 및
    복수의 타이니 프로세서들을 포함하는 처리 유닛을 포함하되,
    각각의 타이니 프로세서는 상기 외부 메모리에 저장된 프로그램 코드 중 CPU에 의해 지시된 주소에 상응하는 프로그램 코드를 로딩하고, 로딩된 프로그램 코드에 따라 센서 신호를 처리하며, 상기 로딩된 프로그램 코드에서 규정된 다른 타이니 프로그램 또는 주변 장치로 처리된 센서 신호를 출력하고,
    상기 복수의 타이니 프로세서들은 각각 로딩된 프로그램 코드에 의해 입력된 센서 신호를 파이프라인 구조로 처리하도록 순서화되며,
    상기 각각의 타이니 프로세서에는 각각 로딩된 프로그램 코드에 따른 처리가 완료되는 시간이 일치되도록 하는 클럭 주파수가 할당되는 것을 특징으로 하는 시스템 온 칩.
  2. 제1항에 있어서,
    상기 복수의 타이니 프로세서들 각각은,
    CPU에 의해 지시된 주소에 상응하는 프로그램 코드를 저장하는 커맨드 메모리;
    센서 신호 또는 파이프라인 구조에서 선행하는 타이니 프로세서에 의해 처리된 센서 신호를 입력받는 입력 버퍼;
    상기 입력 버퍼에 입력된 센서 신호를 상기 커맨드 메모리에 저장된 프로그램 코드에 따라 처리하는 처리기;
    상기 처리기에 의해 처리된 센서 신호를 파이프라인 구조에서 후행하는 타이니 프로세서 또는 상기 주변 장치로 출력하는 출력 버퍼; 및
    상기 처리기가 상기 커맨드 메모리에 저장된 프로그램 코드에 따른 처리를 수행하도록 컨트롤하는 처리 제어기를 포함하는 것을 특징으로 하는 시스템 온 칩.
  3. 제1항에 있어서,
    상기 외부의 저장 매체에는 복수의 응용 분야 각각에서 각 타이니 프로세서에 로딩될 프로그램 코드를 포함하는 메모리 맵이 저장되며, 부팅 과정에서 상기 시스템 온 칩에 할당된 응용 분야에 해당되는 프로그램 코드가 상기 외부 메모리로 저장되는 것을 특징으로 하는 시스템 온 칩.
KR1020170112395A 2017-09-04 2017-09-04 재구성 가능한 시스템 온 칩 KR101795531B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170112395A KR101795531B1 (ko) 2017-09-04 2017-09-04 재구성 가능한 시스템 온 칩

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170112395A KR101795531B1 (ko) 2017-09-04 2017-09-04 재구성 가능한 시스템 온 칩

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020160156280A Division KR101795528B1 (ko) 2016-11-23 2016-11-23 재구성 가능한 시스템 온 칩

Publications (1)

Publication Number Publication Date
KR101795531B1 true KR101795531B1 (ko) 2017-11-10

Family

ID=60386677

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170112395A KR101795531B1 (ko) 2017-09-04 2017-09-04 재구성 가능한 시스템 온 칩

Country Status (1)

Country Link
KR (1) KR101795531B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060059387A1 (en) 1987-09-04 2006-03-16 Swoboda Gary L Processor condition sensing circuits, systems and methods
JP2007179358A (ja) 2005-12-28 2007-07-12 Nec Corp 情報処理装置及び再構成デバイスの利用方法
KR100848589B1 (ko) 2005-10-11 2008-07-28 노키아 코포레이션 휴대용 카메라폰, 이미지 레코딩 방법 및 카메라 모듈

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060059387A1 (en) 1987-09-04 2006-03-16 Swoboda Gary L Processor condition sensing circuits, systems and methods
KR100848589B1 (ko) 2005-10-11 2008-07-28 노키아 코포레이션 휴대용 카메라폰, 이미지 레코딩 방법 및 카메라 모듈
JP2007179358A (ja) 2005-12-28 2007-07-12 Nec Corp 情報処理装置及び再構成デバイスの利用方法

Similar Documents

Publication Publication Date Title
US9015390B2 (en) Active memory data compression system and method
US8612726B2 (en) Multi-cycle programmable processor with FSM implemented controller selectively altering functional units datapaths based on instruction type
JP5431003B2 (ja) リコンフィギュラブル回路及びリコンフィギュラブル回路システム
EP1840742A2 (en) Method and apparatus for operating a computer processor array
JP2002509302A (ja) メモリサブシステムに複数のメモリアルゴリズムプロセッサを組込むマルチプロセッサコンピュータアーキテクチャ
US8069333B2 (en) Converting logical to real number to access shared configuration information in event driven state transiting reconfigurable system
EP1990718A1 (en) Method and apparatus for loading data and instructions into a computer
CN111158756B (zh) 用于处理信息的方法和装置
EP2140348A2 (en) Processor, method and computer program
JP5178346B2 (ja) 半導体装置、および、半導体装置によるデータ処理方法
US20170337246A1 (en) Big-data processing accelerator and big-data processing system thereof
US20060212613A1 (en) Data processor apparatus
KR102349138B1 (ko) 사전 프로그래밍 된 함수를 갖는 고속 컴퓨터 가속기
KR101795531B1 (ko) 재구성 가능한 시스템 온 칩
KR20070004705A (ko) 전자 회로와 그 동작 방법
KR101795528B1 (ko) 재구성 가능한 시스템 온 칩
US10922146B1 (en) Synchronization of concurrent computation engines
JP2009009549A (ja) 一連のコンピュータでデータを処理するシステムおよび方法
JP2006302132A (ja) 信号処理装置及び再構成可能論理回路装置及び再構成可能順序回路
US20080229063A1 (en) Processor Array with Separate Serial Module
JP5141151B2 (ja) 動的再構成回路およびループ処理制御方法
JP2013161484A (ja) 再構成可能コンピューティング装置、その第1メモリ制御器及び第2メモリ制御器、並びにそのデバッギング用のトレースデータを処理する方法
JP2023533795A (ja) レジスタデータの消去
US20200192860A1 (en) Configurable circuit array
US20140237216A1 (en) Microprocessor

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant