KR100503094B1 - 넓은 메모리 밴드위스를 갖는 디지털 신호 처리 장치 및그 메모리 맵핑 방법 - Google Patents

넓은 메모리 밴드위스를 갖는 디지털 신호 처리 장치 및그 메모리 맵핑 방법 Download PDF

Info

Publication number
KR100503094B1
KR100503094B1 KR10-2003-0058781A KR20030058781A KR100503094B1 KR 100503094 B1 KR100503094 B1 KR 100503094B1 KR 20030058781 A KR20030058781 A KR 20030058781A KR 100503094 B1 KR100503094 B1 KR 100503094B1
Authority
KR
South Korea
Prior art keywords
memory
dsp
row direction
dsp architecture
memory elements
Prior art date
Application number
KR10-2003-0058781A
Other languages
English (en)
Other versions
KR20050022200A (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 KR10-2003-0058781A priority Critical patent/KR100503094B1/ko
Priority to US10/808,341 priority patent/US7409528B2/en
Publication of KR20050022200A publication Critical patent/KR20050022200A/ko
Application granted granted Critical
Publication of KR100503094B1 publication Critical patent/KR100503094B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • G06F15/8023Two dimensional arrays, e.g. mesh, torus

Abstract

넓은 메모리 밴드위스를 갖는 DSP 아키텍쳐 및 그 메모리 맵핑 방법이 개시된다. 본 발명의 DSP 아키텍쳐는 제1 통신 포트와 연결되고 DSP 아키텍쳐의 제1 로우 방향으로 배열되는 제1, 제2 및 제3 메모리 소자들과, DSP 아키텍쳐의 제1 로우 방향 아래로 제2 로우 방향으로 배열되는 제4 메모리 소자, 연산 소자 및 제5 메모리 소자들과, 그리고 제1 통신 포트와 연결되고 DSP 아키텍쳐의 제3 로우 방향으로 배열되는 제6, 제7 및 제8 메모리 소자들을 포함한다. 연산 소자는 상기 제1 내지 제8 메모리 소자와 상호 연결된다. DSP 아키텍쳐는 연산 소자를 중앙에 배치하고 연산 소자와 연결되는 제1 내지 제8 메모리 소자들이 하나의 배열 단위 소자를 구성하여, 배열 단위 소자가 DSP 아키텍쳐의 로우 방향들과 칼럼 방향들로 배열된다. 따라서, 본 발명에 의하면, DSP의 연산 소자와 메모리 소자들 사이에 넓은 데이터 밴드위스를 갖기 때문에, 데이터 처리시 메모리 억세스 횟수를 줄일 수 있어서 고해상도의 동영상과 같은 높은 데이터 레이터(data rate)를 갖는 데이터 처리에 적합하다.

Description

넓은 메모리 밴드위스를 갖는 디지털 신호 처리 장치 및 그 메모리 맵핑 방법{DSP having wide memory bandwidth and DSP memory mapping method}
본 발명은 디지털 신호 처리 장치(DSP)에 관한 것으로, 특히 영상 처리 알고리즘 수행에 따라 넓은 메모리 밴드위스를 제공하는 디지털 신호 처리 장치 및 그 메모리 맵핑 방법에 관한 것이다.
디지털 프로세서에 의해 수행되는 기본 기능들 중의 하나가 데이터 독출 및 기입을 위하여 메모리를 억세스하는 것이다. 메모리는 프로세서로부터 제공되는 어드레스에 의해 일반적으로 억세스된다. 디지털 프로세서의 메모리 억세스 동작은 메모리의 입출력 구조에 상당히 영향을 많이 받는 데, 특히 한번에 입출력되는 데이터 수를 의미하는 메모리 밴드위스와 밀접한 관계가 있다.
영상 신호 처리를 위한 디지털 신호 처리 장치(이하 "DSP"라고 칭한다)는 이미지 증진(Image Enhancement). 압축(Compression) 및 압축 해제(Decompression) 등의 영상 처리를 수행한다. 특히, 동영상을 처리하는 DSP에서는 도 1과 같이, 예컨대, 3개의 프레임을 억세스하여 새로운 프레임을 생성하는 알고리즘을 수행하는 데 있어서, 3개의 소스 모션 비디오 영상 프레임들(101, 102, 103)이 DSP(110)를 통해 메모리(120)에 저장된 후, 메모리(120)에 저장된 3개의 프레임 데이터들이 독출(readout)되어 DSP(110)의 연산 소자에 의해 연산 처리되는 일련의 과정을 통해 하나의 프레임(130)이 생성된다.
DSP(110)가 처리하는 영상이 60Hz 주기로 1920×1080 픽셀들의 해상도를 갖는 동영상이라고 가정하면, 1초에 처리해야하는 픽셀들의 수는 1920×1080×60≒124M개가 된다. 여기에, R, G, B 색 성분을 고려하면 1초에 처리해야하는 픽셀들의 수는 124M×3=373M개가 된다. 373M 픽셀들을 메모리(120)에 저장하기 위하여 DSP(110)와 메모리(120) 사이의 억세스 동작 즉, 기입 및 독출 동작이 수차례 반복되어야 한다.
한편, DSP(110)의 고속 동작을 구현하기 위하여, DSP 아키텍쳐(Architecture)는 데이터 경로(data path)와 인스트럭션 경로(instruction path)가 따로 있는 하바드 아키텍쳐(Harvard Architecture)가 많이 사용된다. 도 2 내지 도 4는 하바드 아키텍쳐를 사용하는 DSP들을 예시적으로 보여준다.
도 2는 기존에 널리 이용되는 하바드 아키텍쳐의 예시이며, 영상 데이터들은 데이터 버스에 실린 뒤, SDRAM 콘트롤러를 통해 외부의 SDRAM에 저장된 후 독출된다(굵은 선 표시)
그런데, 도 2의 DSP(200)에서 처리된 영상 데이터들이 메모리 장치들과 연결되는 구조를 살펴보면, 메모리 장치의 데이터 밴드 위스에 의존적인 것을 볼 수 있다. 예컨대, 3 차원 디-인터레이스(De-interlace) 방식에서 3개의 프레임을 억세스하여 새로운 프레임을 생성하는 알로리즘을 수행하게 되면, 1개의 모션 체크당 8개 픽셀들의 메모리 억세스 동작이 필요한 데, 이를 3차원 상에 8번 수행하게 되면 64개 픽셀의 메모리 억세스가 필요하다. 이러한 메모리 억세스 동작에는 메모리 셀을 어드레싱하기 위한 동작과 셀 데이터 독출 동작에 소요되는 일정한 사이클 시간을 필요로한다. 특히, 1920×1080 픽셀들의 해상도를 갖는 경우, 124M 픽셀들을 처리하기 위하여 3.0GHz 동작의 DSP를 사용한다고 가정하면 24 개의 메모리 억세스 사이클을 필요로한다. 이는 DSP에서 메모리로의 물리적인 억세스 사이클들의 존재로 인해 고해상도 영상 처리에 부적당한 결과를 초래한다.
그러므로, 고해상도의 영상 처리를 위해서는 넓은 메모리 밴드위스를 갖는 새로운 DSP 아키텍쳐가 절실히 요구된다.
본 발명의 목적은 넓은 메모리 밴드위스를 갖는 DSP 아키텍쳐를 제공하는 데 있다.
본 발명의 다른 목적은 상기 DSP 아키텍쳐의 영상 처리 메모리 맵핑 방법을 제공하는 데 있다.
상기 목적을 달성하기 위하여, 본 발명의 DSP 아키텍쳐는 제1 통신 포트; 제1 통신 포트와 연결되고, DSP 아키텍쳐의 제1 로우 방향으로 배열되는 제1, 제2 및 제3 메모리 소자들; DSP 아키텍쳐의 제1 로우 방향 아래, 제2 로우 방향으로 배열되는 제4 메모리 소자, 연산 소자 및 제5 메모리 소자들; 및 제1 통신 포트와 연결되고, DSP 아키텍쳐의 제3 로우 방향으로 배열되는 제6, 제7 및 제8 메모리 소자들을 구비하고, 연산 소자는 상기 제1 내지 제8 메모리 소자와 상호 연결된다.
바람직하기로, DSP 아키텍쳐는 DSP 아키텍쳐의 제1 칼럼 방향으로 배열되는 제1, 제4 및 제6 메모리 소자들과 DSP 아키텍쳐의 제3 칼럼 방향으로 배열되는 제3, 제5 및 제8 메모리 소자들과 연결되는 제2 통신 포트를 더 구비한다.
더욱 바람직하기로, DSP 아키텍쳐는 연산 소자를 중앙에 배치하고 연산 소자와 연결되는 제1 내지 제8 메모리 소자들이 하나의 배열 단위 소자를 구성하여, 배열 단위 소자가 DSP 아키텍쳐의 로우 방향들과 칼럼 방향들로 배열된다.
상기 다른 목적을 달성하기 위하여, 본 발명의 제1 실시예에 따른 DSP 영상 처리 메모리 맵핑 방법은 제1 통신 포트를 통해 입력되는 데이터를 DSP 아키텍쳐의 제1 로우 방향으로 배열되는 제1 및 제2 메모리 소자들에 저장하는 단계; 제1 통신 포트를 통해 입력되는 데이터를 DSP 아키텍쳐의 제2 로우 방향으로 배열되는 제3 메모리 소자에 저장하되, 제1 및 제2 메모리 소자들과 연결되고 제2 로우 방향으로 제3 메모리 소자에 이웃하여 배열되는 제1 연산 소자를 통하여 저장하는 단계; 및 제1 내지 제3 메모리 소자들에 저장된 데이터들을 제1 연산 소자에 의해 연산하는 단계를 포함한다.
제1 실시예의 바람직한 DSP 영상 처리 메모리 맵핑 방법은 제1 연산 소자에 의해 연산된 데이터가 DSP 아키텍쳐의 제1 로우 방향으로 제2 메모리 소자에 이웃하여 배열되는 제4 메모리 소자와 DSP 아키텍쳐의 제2 로우 방향으로 제1 연산 소자에 이웃하여 배열되는 제5 메모리 소자에 저장하는 단계; 및 DSP 아키텍쳐의 제2 로우 방향으로 제5 메모리 소자에 이웃하여 배열되는 제2 연산 소자에 의해 제4 및 제5 메모리 소자들에 저장된 데이터들을 연산하는 단계를 포함한다.
상기 목적을 달성하기 위하여, 본 발명의 제2 실시예에 따른 DSP 영상 처리 메모리 맵핑 방법은 제1 통신 포트를 통해 입력되는 데이터를 DSP 아키텍쳐의 제1 로우 방향으로 배열되는 제1 및 제2 메모리 소자들에 저장하는 단계; 제1 통신 포트를 통해 입력되는 데이터를 DSP 아키텍쳐의 제3 로우 방향으로 배열되는 제4 및 제5 메모리 소자들에 저장하는 단계; 제1 통신 포트를 통해 입력되는 데이터를 DSP 아키텍쳐의 제2 로우 방향으로 배열되는 제3 메모리 소자에 저장하되, 제1 및 제2 메모리 소자들과 연결되고 제2 로우 방향으로 제3 메모리 소자에 이웃하여 배열되는 제1 연산 소자를 통하여 저장하는 단계; 제1 통신 포트를 통해 입력되는 데이터를 DSP 아키텍쳐의 제4 로우 방향으로 배열되는 제6 메모리 소자에 저장하되, 제4 및 제5 메모리 소자들과 연결되고 제4 로우 방향으로 상기 제6 메모리 소자에 이웃하여 배열되는 제2 연산 소자를 통하여 저장하는 단계; 제1 내지 제3 메모리 소자들에 저장된 데이터들을 제1 연산 소자에 의해 연산하는 단계; 및 제4 내지 제6 메모리 소자들에 저장된 데이터들을 제2 연산 소자에 의해 연산하는 단계를 포함한다.
제2 실시예의 바람직한 DSP 영상 처리 메모리 맵핑 방법은 제1 연산 소자에 의해 연산된 데이터가 DSP 아키텍쳐의 제1 로우 방향으로 제2 메모리 소자에 이웃하여 배열되는 제7 메모리 소자와 DSP 아키텍쳐의 제2 로우 방향으로 제1 연산 소자에 이웃하여 배열되는 제8 메모리 소자에 저장하는 단계; DSP 아키텍쳐의 제2 로우 방향으로 제8 메모리 소자에 이웃하여 배열되는 제3 연산 소자에 의해 제7 및 제8 메모리 소자들에 저장된 데이터들을 연산하는 단계; 제2 연산 소자에 의해 연산된 데이터가 DSP 아키텍쳐의 제3 로우 방향으로 제5 메모리 소자에 이웃하여 배열되는 제9 메모리 소자와 DSP 아키텍쳐의 제4 로우 방향으로 제2 연산 소자에 이웃하여 배열되는 제10 메모리 소자에 저장하는 단계; 및 DSP 아키텍쳐의 제4 로우 방향으로 제10 메모리 소자에 이웃하여 배열되는 제4 연산 소자에 의해 제9 및 제10 메모리 소자들에 저장된 데이터들을 연산하는 단계를 포함한다.
상기 다른 목적을 달성하기 위하여, 본 발명의 제3 실시예에 따른 DSP 영상 처리 메모리 맵핑 방법은 제1 통신 포트를 통해 입력되는 데이터를 DSP 아키텍쳐의 제1 로우 방향으로 배열되는 제1, 제2 및 제3 메모리 소자들이나 DSP 아키텍쳐의 제3 로우 방향으로 배열되는 제6, 제7 및 제8 메모리 소자들에 저장하는 단계; 제2 통신 포트를 통해 입력되는 데이터를 DSP 아키텍쳐의 제1 칼럼 방향으로 배열되는 제1, 제4, 및 상기 제6 메모리 소자들이나 DSP 아키텍쳐의 제3 칼럼 방향으로 배열되는 제3, 제5 및 상기 제8 메모리 소자들에 저장하는 단계; 및 DSP 아키텍쳐의 제2 로우 방향으로 배열되는 제4 및 제5 메모리 소자들 사이에, 그리고 DSP 아키텍쳐의 제2 칼럼 방형으로 배열되는 제2 및 제7 메모리 소자들 사이에 배치되는 연산 소자에 의해 제1 내지 제8 메모리 소자들에 저장된 데이터들을 연산 처리하는 단계를 포함한다.
따라서, 본 발명에 의하면, DSP의 연산 소자와 메모리 소자 사이에 넓은 메모리 밴드위스를 갖기 때문에, 데이터 처리시 메모리 억세스 횟수를 줄일 수 있어서 고해상도의 동영상과 같은 높은 데이터 레이터(data rate)를 갖는 데이터 처리에 적합하다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 예시적인 실시예를 설명하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 3는 본 발명의 일실시예에 따른 DSP의 아키텍쳐를 설명하는 도면이다. 이를 참조하면, DSP(500)는 열 방향으로 제1 및 제3 통신 포트들(CP, 501, 503)이 배열되어 있고, 행 방향으로 제2 및 제4 통신 포트들(CP, 502, 504)이 배열되고 있다. 제1 내지 제4 통신 포트들(501, 502, 503, 504)은 DSP(500)로부터/로 송수신되는 데이터들의 입출력 포트들이다. 제1 및 제2 통신 포트들(501, 502)과 제3 및 제4 통신 포트들(503, 504)은 연산 소자(CE)와 연결되는 매트릭스 구조로 배열되는 다수개의 메모리들(Ms)과 연결된다.
제1 통신 포트(501)는 제1 행의 메모리들(Ms) 및 제3 행의 메모리들(Ms)과 연결되고, 제3 통신 포트(503)는 제5 행의 메모리들(Ms) 및 제7 행의 메모리들(Ms)과 연결된다. 제2 통신 포트(502)는 제1 열의 메모리들(Ms) 및 제3 열의 메모리들(Ms)과 연결되고, 제4 통신 포트(504)는 제5 열의 메모리들(Ms) 및 제7 열의 메모리들(Ms)과 연결된다. 연산 소자들(CEs)은 8개의 인접한 메모리들(Ms)과 연결된다. 하나의 연산 소자(CE)와 연결되는 8개의 메모리들(Ms)이 하나의 배열 단위 소자(600)를 구성하고, 구체적으로 도 4에 도시되어 있다.
도 4을 참조하면, 제1 통신 포트(501)와 연결되는 제1 행의 메모리들(601, 602, 603)과 제3 행의 메모리들(621, 622, 623)과 제2 통신 포트(502)와 연결되는 제1 열의 메모리들(601, 611, 621)과 제3 열의 메모리들(603, 613, 623)이 연산 소자(CE, 612)와 연결된다. 배열 단위 소자(600)에서는 제1 통신 포트(501)로 입력되는 데이터들이 제1 행 또는 제3 행의 메모리들(601, 602, 603, 621, 622, 623)에 저장되고, 제2 통신 포트(502)로 입력되는 데이터들이 제1 열 또는 제3 열의 메모리들(601, 611, 621, 603, 613, 623)에 저장된 후, 연산 소자(612)로 독출되어 연산 처리된다.
도 3에서, 통신 포트들 중 대표적으로 제1 통신 포트(501)를 예를 들면, 제1 통신 포트(501)의 일부는 도 5과 같이, 제1 행의 메모리들(601, 602, 603, 604, 605, 606, 607, 608)과 연결되고, 제1 통신 포트(501)의 나머지 일부는 제3 행의 메모리들(621, 622, 623, …)과 연결된다.
도 3의 DSP 아키텍쳐(500)는 동영상 이미지 처리를 위한 1 차원(1-D) 세그먼테이션 또는 2 차원(2-D) 세그먼테이션 동작을 수행하는데, 도 6은 1 차원 세그먼테이션 동작을 설명하고 도 7 및 도 8은 2 차원 세그먼테이션 동작을 설명한다.
1 차원 세그먼테이션 동작은 임의의 영상 화면을 처리하는 데 있어서, 소정의 크기로 분할된 영상을 하나의 방향, 예컨대 행 또는 열 방향을 따라 처리하는 기법을 의미한다. 2 차원 세그먼테이션 동작은 소정의 크기로 분할된 영상을 2개의 행들 또는 열들을 따라 처리하는 기법을 의미한다. 본 발명과 연계하여, 1 차원 세그먼테이션 동작은 1개의 통신 포트를 통해 영상 데이터들이 입력되고, 2 차원 세그먼테이션 동작은 1개의 통신 포트 또는 2개의 통신 포트들을 통해 영상 데이터들이 입력된다.
도 6의 1 차원 세그먼테이션 동작을 설명하면, 3개의 프레임을 억세스하여 새로운 프레임을 생성하는 영상 처리 알로리즘 수행시, 3개의 (n-1) 프레임, (n-2) 프레임, (n-3) 프레임 데이터들이 메모리들(611, 601, 602)에 각각 저장된다. (n-1), (n-2), (n-3) 프레임 데이터들은 예컨대, 제1 통신 포트(501)를 통해 입력된다. 601 메모리와 602 메모리는 제1 통신 포트(501)와 직접 연결되기 때문에, (n-2) 프레임과 (n-3) 프레임 데이터는 제1 통신 포트(501)로부터 601 메모리와 602 메모리로 바로 저장된다. (n-1) 프레임 데이터는 제1 통신 포트(501)와 601 메모리 또는 602 메모리를 통해 연산 소자(612)로 전달된 후, 연산 소자(612)에 의해 611 메모리에 저장된다. 601, 602, 611 메모리들과 연산 소자(612)는 1 차원 세그먼테이션 동작을 위한 하나의 단위가 된다.
한편, 제2 통신 포트(502)를 통해 (n-1), (n-2), (n-3) 프레임 데이터들이 입력되면, (n-1) 프레임과 (n-2) 프레임 데이터는 제2 통신 포트(502)로부터 601 메모리와 611 메모리에 바로 저장된다. 602 메모리는 제2 통신 포트(502)와 직접 연결되어 있지 않기 때문에, (n-3) 프레임은 제2 통신 포트(502)와 601 메모리 또는 611 메모리를 통해 연산 소자(612)로 전달된 후, 연산 소자(612)에 의해 602 메모리에 저장된다.
601, 602, 611 메모리에 저장된 프레임 데이터들은 연산 소자(612)에 의해 연산 처리되어, 이웃한 제2 세그먼테이션 단위(802)로 전달된다. 제1 세그먼테이션 단위(801)의 연산 소자(612)에서 처리된 데이터는 제2 세그먼테이션 단위(802)의 603 또는 613 메모리로 전달되어 저장된다. 603 또는 613 메모리에 저장된 데이터들은 연산 소자(614)에 의해 연산 처리된 후, 제3 세그먼테이션 단위(803)의 605 또는 615 메모리로 전달되어 저장된다.
본 실시예에서는 제1 통신 포트(501)와 연결되는 601, 602 메모리가 포함하는 제1 세그먼테이션 단위(801), 제2 세그먼테이션 단위(802), 제3 세그먼테이션 단위(803), 그리고 제4 세그먼테이션 단위(804)로 구성되는 하나의 라인 상으로 파이프라인 동작되어 1 차원 세그먼테이션 동작이 이루어지는 예에 대하여 기술하고 있다. 이로부터, 1 차원 세그먼테이션 동작은 제1 통신 포트(501)와 연결되는 제4 세그먼테이션 단위(811), 제5 세그먼테이션 단위(812), 제6 세그먼테이션 단위(813) 그리고 제7 세그먼테이션 단위(814)로 구성되는 라인 상으로 파이프라인 동작되어 1 차원 세그먼테이션 동작이 이루어질 수도 있다.
또한, 1 차원 세그먼테이션 동작을 위한 바람직한 다른 예로, 제2 통신 포트(502)로 입력되는 데이터를 제1 세그먼테이션 단위(801), 제4 세그먼테이션 단위(811), 그리고 제8 세그먼테이션 단위(821)로 구성되는 라인상으로, 또는 제2 세그먼테이션 단위(802), 제6 세그먼테이션 단위(812), 그리고 제10 세그먼테이션 단위(822)로 구성되는 라인상으로 파이프라인 동작되어 1 차원 세그먼테이션 동작이 이루어질 수 있음은 물론이다.
여기에서, 하나의 세그먼테이션 단위(801) 내 연산 소자(612) 입장에서 보면, 연산 소자(612)는 3개의 메모리들(601, 602, 611)과 독립된 경로를 확보한다. 그리하여 연산 소자(612)가 억세스 가능한 메모리 밴드위스가 넓어지는 효과를 얻게 되어, 동영상 처리시 메모리 억세스 횟수를 줄일 수 있다.
도 7 및 도 8은 2 차원 세그먼테이션 동작을 설명하는 도면이다. 도 7는 2 라인 파이프라인 동작으로 처리되는 예를 설명하고, 도 8은 1 라인 파이프라인 동작으로 처리되는 예를 설명한다.
도 7를 참조하면, 예컨대 제3 통신 포트(503)를 통해 입력되는 프레임 데이터들이 제1 세그먼테이션 단위(801), 제2 세그먼테이션 단위(802), 제3 세그먼테이션 단위(803), 그리고 제4 세그먼테이션 단위(804)로 파이프라인 구성되는 첫번째 라인(901)과 제5 세그먼테이션 단위(811), 제6 세그먼테이션 단위(812), 제7 세그먼테이션 단위(813), 그리고 제8 세그먼테이션 단위(814)로 파이프라인 구성되는 두번째 라인(902)을 통해 연산 처리되어, 2차원 세그먼테이션 동작이 수행된다.
예컨대, 제1 통신 포트(501)를 통해 입력되는 프레임 데이터들이 제1 세그먼테이션 단위(801), 제5 세그먼테이션 단위(811), 그리고 제9 세그먼테이션 단위(821)로 파이프라인 구성되는 첫번째 라인(903)과 제2 세그먼테이션 단위(802), 제6 세그먼테이션 단위(812), 그리고 제10 세그먼테이션 단위(822)로 파이프라인 구성되는 두번째 라인(904)을 통해 연산 처리되어, 2차원 세그먼테이션 동작이 수행된다.
도 8은 2차원 세그먼테이션 동작을 위하여, 통신 포트들(501, 502, 503, 504)을 통해 입력되는 프레임 데이터들이 세그먼테이션 단위들(1001, 1002, 1003, 1011, 1012, 1013)로 메모리 맵핑된다.
대표적으로, 제1 세그먼테이션 단위(1001)에서는 제1 통신 포트(501)의 일부 포트를 통해 입력되는 데이터들이 601, 602, 603 메모리들에 저장되고 제1 통신 포트(501)의 나머지 포트를 통해 입력되는 데이터들이 621, 622, 623 메모리들에 저장된다. 그리고 제1 통신 포트(501)로 입력되는 데이터들은 601, 602, 603, 621, 622, 623 메모리들과 연결되는 연산 소자(612)를 통해 611, 613 메모리들에도 저장된다. 이 후, 601, 602, 603, 611, 613, 621, 622, 623 메모리들에 저장된 데이터들은 연산 소자(612)에 의해 연산 처리되어 2차원 세그먼테이션 동작이 이루어진다.
2차원 세그먼테이션 동작을 위한 다른 메모리 맵핑 방법은 제1 세그먼테이션 단위(1001)에서 제2 통신 포트(502)의 일부 포트를 통해 입력되는 데이터들이 601, 611, 621 메모리들에 저장되고 제2 통신 포트(502)의 너머지 포트들을 통해 입력되는 데이터들이 603, 613, 623 메모리들에 저장된다. 그리고 제2 통신 포트(502)로 입력되는 데이터들은 601, 611, 621, 603, 613, 623 메모리들과 연결되는 연산 소자(612)를 통해 602, 622 메모리들에도 저장된다. 이 후, 601, 602, 603, 611, 613, 621, 622, 623 메모리들에 저장된 데이터들은 연산 소자(612)에 의해 연산 처리되어 2차원 세그먼테이션 동작이 이루어진다.
2차원 세그먼테이션 동작을 위한 또다른 메모리 맵핑 방법은 제1 세그먼테이션 단위(1001)에서 제1 통신 포트(501)를 통해 입력되는 데이터들이 601, 602, 603 메모리들 또는 621, 622, 623 메모리들에 저장되고, 제2 통신 포트(502)를 통해 입력되는 데이터들이 601, 611, 621 메모리들 또는 603, 613, 623 메모리들에 저장된다. 601, 603, 621, 623 메모리들은 데이터 충돌을 막기 위하여 선택적으로 하나의 통신 포트, 제1 통신 포트(501) 또는 제2 통신 포트(502)를 통해 들어오는 데이터들이 저장된다. 이 후, 601, 602, 603, 611, 613, 621, 622, 623 메모리들에 저장된 데이터들은 연산 소자(612)에 의해 연산 처리되어 2차원 세그먼테이션 동작이 이루어진다.
본 발명은 도면에 도시된 일 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상술한 본 발명의 DSP에 의하면, 연산 소자와 메모리 소자 사이에 넓은 데이터 밴드위스를 갖기 때문에, 데이터 처리시 메모리 억세스 횟수를 줄일 수 있어서 고해상도의 동영상과 같은 높은 데이터 레이터(data rate)를 갖는 데이터 처리에 적합하다.
도 1은 동영상을 처리하는 DSP의 동작을 설명하는 도면이다.
도 2는 하바드 아키텍쳐를 갖는 영상 처리 DSP의 블락 다이어그램을 보여준다.
도 3는 본 발명의 제1 실시예에 따른 병렬 구조의 DSP 아키텍쳐를 설명하는 도면이다.
도 4은 도 3의 DSP 아키텍쳐에서 하나의 배열 단위를 설명하는 도면이다.
도 5은 도 3에서 하나의 통신 포트와 연결되는 메모리 소자들을 설명하는 도면이다.
도 6은 도 3의 DSP 아키텍쳐로 수행되는 1 차원 세그먼테이션 동작을 설명하는 도면이다.
도 7 및 도 8은 도 3의 DSP 아키텍쳐로 수행되는 2 차원 세그먼테이션 동작을 설명하는 도면이다.

Claims (8)

  1. 넓은 메모리 밴드위스를 갖는 DSP의 아키텍쳐에 있어서,
    제1 통신 포트;
    상기 제1 통신 포트와 연결되고, 상기 DSP 아키텍쳐의 제1 로우 방향으로 배열되는 제1, 제2 및 제3 메모리 소자들;
    상기 DSP 아키텍쳐의 제1 로우 방향 아래, 제2 로우 방향으로 배열되는 제4 메모리 소자, 연산 소자 및 제5 메모리 소자들; 및
    상기 제1 통신 포트와 연결되고, 상기 DSP 아키텍쳐의 제3 로우 방향으로 배열되는 제6, 제7 및 제8 메모리 소자들을 구비하고,
    상기 연산 소자는 상기 제1 내지 제8 메모리 소자와 상호 연결되는 것을 특징으로 하는 DSP 아키텍쳐.
  2. 제1항에 있어서, 상기 DSP 아키텍쳐는
    상기 DSP 아키텍쳐의 제1 칼럼 방향으로 배열되는 상기 제1, 제4 및 제6 메모리 소자들과 상기 DSP 아키텍쳐의 제3 칼럼 방향으로 배열되는 상기 제3, 제5 및 제8 메모리 소자들과 연결되는 제2 통신 포트를 더 구비하는 것을 특징으로 하는 DSP 아키텍쳐.
  3. 제1항에 있어서, 상기 DSP 아키텍쳐는
    상기 연산 소자를 중앙에 배치하고 상기 연산 소자와 연결되는 제1 내지 제8 메모리 소자들이 하나의 배열 단위 소자를 구성하여, 상기 배열 단위 소자가 DSP 아키텍쳐의 로우 방향들과 칼럼 방향들로 배열되는 것을 특징으로 하는 DSP 아키텍쳐.
  4. DSP의 영상 처리 메모리 맵핑 방법에 있어서,
    제1 통신 포트를 통해 입력되는 데이터를 DSP 아키텍쳐의 제1 로우 방향으로 배열되는 제1 및 제2 메모리 소자들에 저장하는 단계;
    상기 제1 통신 포트를 통해 입력되는 데이터를 상기 DSP 아키텍쳐의 제2 로우 방향으로 배열되는 제3 메모리 소자에 저장하되, 상기 제1 및 제2 메모리 소자들과 연결되고 상기 제2 로우 방향으로 상기 제3 메모리 소자에 이웃하여 배열되는 제1 연산 소자를 통하여 저장하는 단계; 및
    상기 제1 내지 제3 메모리 소자들에 저장된 데이터들을 상기 제1 연산 소자에 의해 연산하는 단계를 구비하는 것을 특징으로 하는 DSP 영상 처리 메모리 맵핑 방법.
  5. 제4항에 있어서, 상기 DSP 영상 처리 메모리 맵핑 방법은
    상기 제1 연산 소자에 의해 연산된 데이터가 상기 DSP 아키텍쳐의 제1 로우 방향으로 상기 제2 메모리 소자에 이웃하여 배열되는 제4 메모리 소자와 상기 DSP 아키텍쳐의 제2 로우 방향으로 상기 제1 연산 소자에 이웃하여 배열되는 제5 메모리 소자에 저장하는 단계; 및
    상기 DSP 아키텍쳐의 제2 로우 방향으로 상기 제5 메모리 소자에 이웃하여 배열되는 제2 연산 소자에 의해 상기 제4 및 제5 메모리 소자들에 저장된 데이터들을 연산하는 단계를 구비하는 것을 특징으로 하는 DSP 영상 처리 메모리 맵핑 방법.
  6. DSP의 영상 처리 메모리 맵핑 방법에 있어서,
    제1 통신 포트를 통해 입력되는 데이터를 DSP 아키텍쳐의 제1 로우 방향으로 배열되는 제1 및 제2 메모리 소자들에 저장하는 단계;
    상기 제1 통신 포트를 통해 입력되는 데이터를 상기 DSP 아키텍쳐의 제3 로우 방향으로 배열되는 제4 및 제5 메모리 소자들에 저장하는 단계;
    상기 제1 통신 포트를 통해 입력되는 데이터를 상기 DSP 아키텍쳐의 제2 로우 방향으로 배열되는 제3 메모리 소자에 저장하되, 상기 제1 및 제2 메모리 소자들과 연결되고 상기 제2 로우 방향으로 상기 제3 메모리 소자에 이웃하여 배열되는 제1 연산 소자를 통하여 저장하는 단계;
    상기 제1 통신 포트를 통해 입력되는 데이터를 상기 DSP 아키텍쳐의 제4 로우 방향으로 배열되는 제6 메모리 소자에 저장하되, 상기 제4 및 제5 메모리 소자들과 연결되고 상기 제4 로우 방향으로 상기 제6 메모리 소자에 이웃하여 배열되는 제2 연산 소자를 통하여 저장하는 단계;
    상기 제1 내지 제3 메모리 소자들에 저장된 데이터들을 상기 제1 연산 소자에 의해 연산하는 단계; 및
    상기 제4 내지 제6 메모리 소자들에 저장된 데이터들을 상기 제2 연산 소자에 의해 연산하는 단계를 구비하는 것을 특징으로 하는 DSP 영상 처리 메모리 맵핑 방법.
  7. 제6항에 있어서, 상기 DSP 영상 처리 메모리 맵핑 방법은
    상기 제1 연산 소자에 의해 연산된 데이터가 상기 DSP 아키텍쳐의 제1 로우 방향으로 상기 제2 메모리 소자에 이웃하여 배열되는 제7 메모리 소자와 상기 DSP 아키텍쳐의 제2 로우 방향으로 상기 제1 연산 소자에 이웃하여 배열되는 제8 메모리 소자에 저장하는 단계;
    상기 DSP 아키텍쳐의 제2 로우 방향으로 상기 제8 메모리 소자에 이웃하여 배열되는 제3 연산 소자에 의해 상기 제7 및 제8 메모리 소자들에 저장된 데이터들을 연산하는 단계;
    상기 제2 연산 소자에 의해 연산된 데이터가 상기 DSP 아키텍쳐의 제3 로우 방향으로 상기 제5 메모리 소자에 이웃하여 배열되는 제9 메모리 소자와 상기 DSP 아키텍쳐의 제4 로우 방향으로 상기 제2 연산 소자에 이웃하여 배열되는 제10 메모리 소자에 저장하는 단계; 및
    상기 DSP 아키텍쳐의 제4 로우 방향으로 상기 제10 메모리 소자에 이웃하여 배열되는 제4 연산 소자에 의해 상기 제9 및 제10 메모리 소자들에 저장된 데이터들을 연산하는 단계를 구비하는 것을 특징으로 하는 DSP 영상 처리 메모리 맵핑 방법.
  8. DSP의 영상 처리 메모리 맵핑 방법에 있어서,
    제1 통신 포트를 통해 입력되는 데이터를 DSP 아키텍쳐의 제1 로우 방향으로 배열되는 제1, 제2 및 제3 메모리 소자들이나 상기 DSP 아키텍쳐의 제3 로우 방향으로 배열되는 제6, 제7 및 제8 메모리 소자들에 저장하는 단계;
    제2 통신 포트를 통해 입력되는 데이터를 DSP 아키텍쳐의 제1 칼럼 방향으로 배열되는 상기 제1, 제4, 및 상기 제6 메모리 소자들이나 상기 DSP 아키텍쳐의 제3 칼럼 방향으로 배열되는 상기 제3, 제5 및 상기 제8 메모리 소자들에 저장하는 단계; 및
    상기 DSP 아키텍쳐의 제2 로우 방향으로 배열되는 상기 제4 및 제5 메모리 소자들 사이에, 그리고 상기 DSP 아키텍쳐의 제2 칼럼 방형으로 배열되는 상기 제2 및 제7 메모리 소자들 사이에 배치되는 연산 소자에 의해 상기 제1 내지 제8 메모리 소자들에 저장된 데이터들을 연산 처리하는 단계를 구비하는 것을 특징으로 하는 DSP 영상 처리 메모리 맵핑 방법.
KR10-2003-0058781A 2003-08-25 2003-08-25 넓은 메모리 밴드위스를 갖는 디지털 신호 처리 장치 및그 메모리 맵핑 방법 KR100503094B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR10-2003-0058781A KR100503094B1 (ko) 2003-08-25 2003-08-25 넓은 메모리 밴드위스를 갖는 디지털 신호 처리 장치 및그 메모리 맵핑 방법
US10/808,341 US7409528B2 (en) 2003-08-25 2004-03-25 Digital signal processing architecture with a wide memory bandwidth and a memory mapping method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0058781A KR100503094B1 (ko) 2003-08-25 2003-08-25 넓은 메모리 밴드위스를 갖는 디지털 신호 처리 장치 및그 메모리 맵핑 방법

Publications (2)

Publication Number Publication Date
KR20050022200A KR20050022200A (ko) 2005-03-07
KR100503094B1 true KR100503094B1 (ko) 2005-07-21

Family

ID=34510834

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0058781A KR100503094B1 (ko) 2003-08-25 2003-08-25 넓은 메모리 밴드위스를 갖는 디지털 신호 처리 장치 및그 메모리 맵핑 방법

Country Status (2)

Country Link
US (1) US7409528B2 (ko)
KR (1) KR100503094B1 (ko)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7876940B2 (en) * 2007-01-30 2011-01-25 International Business Machines Corporation Universal image processing
US8238624B2 (en) * 2007-01-30 2012-08-07 International Business Machines Corporation Hybrid medical image processing
KR100868451B1 (ko) 2007-02-22 2008-11-11 삼성전자주식회사 3-d 주소 매핑을 이용한 메모리 접근 방법
US8331737B2 (en) * 2007-04-23 2012-12-11 International Business Machines Corporation Heterogeneous image processing system
US8326092B2 (en) * 2007-04-23 2012-12-04 International Business Machines Corporation Heterogeneous image processing system
US8462369B2 (en) * 2007-04-23 2013-06-11 International Business Machines Corporation Hybrid image processing system for a single field of view having a plurality of inspection threads
US8675219B2 (en) * 2007-10-24 2014-03-18 International Business Machines Corporation High bandwidth image processing with run time library function offload via task distribution to special purpose engines
US9135073B2 (en) 2007-11-15 2015-09-15 International Business Machines Corporation Server-processor hybrid system for processing data
US20090132582A1 (en) * 2007-11-15 2009-05-21 Kim Moon J Processor-server hybrid system for processing data
US9332074B2 (en) * 2007-12-06 2016-05-03 International Business Machines Corporation Memory to memory communication and storage for hybrid systems
US20090150556A1 (en) * 2007-12-06 2009-06-11 Kim Moon J Memory to storage communication for hybrid systems
US8229251B2 (en) * 2008-02-08 2012-07-24 International Business Machines Corporation Pre-processing optimization of an image processing system
US8379963B2 (en) * 2008-03-28 2013-02-19 International Business Machines Corporation Visual inspection system
US8121363B2 (en) * 2008-06-12 2012-02-21 International Business Machines Corporation Thermographic image processing system
US8261117B2 (en) * 2008-09-11 2012-09-04 International Business Machines Corporation Virtualization in a multi-core processor (MCP)
US8732716B2 (en) * 2008-09-30 2014-05-20 International Business Machines Corporation Virtualization across physical partitions of a multi-core processor (MCP)
US8438404B2 (en) * 2008-09-30 2013-05-07 International Business Machines Corporation Main processing element for delegating virtualized control threads controlling clock speed and power consumption to groups of sub-processing elements in a system such that a group of sub-processing elements can be designated as pseudo main processing element
US8341638B2 (en) * 2008-09-30 2012-12-25 International Business Machines Corporation Delegated virtualization across physical partitions of a multi-core processor (MCP)
US7804329B2 (en) * 2008-11-21 2010-09-28 International Business Machines Corporation Internal charge transfer for circuits
US9886389B2 (en) * 2008-11-21 2018-02-06 International Business Machines Corporation Cache memory bypass in a multi-core processor (MCP)
US9824008B2 (en) 2008-11-21 2017-11-21 International Business Machines Corporation Cache memory sharing in a multi-core processor (MCP)
US8806129B2 (en) 2008-11-21 2014-08-12 International Business Machines Corporation Mounted cache memory in a multi-core processor (MCP)
US9122617B2 (en) 2008-11-21 2015-09-01 International Business Machines Corporation Pseudo cache memory in a multi-core processor (MCP)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05268590A (ja) 1992-03-17 1993-10-15 Nec Corp 動画像符号化復号化回路
US6134631A (en) 1996-08-19 2000-10-17 Hyundai Electronics America, Inc. Non-volatile memory with embedded programmable controller
JP3211676B2 (ja) * 1996-08-27 2001-09-25 日本電気株式会社 画像処理方法および装置
US6622233B1 (en) * 1999-03-31 2003-09-16 Star Bridge Systems, Inc. Hypercomputer
JP3674515B2 (ja) * 2000-02-25 2005-07-20 日本電気株式会社 アレイ型プロセッサ
KR100367084B1 (ko) 2000-12-22 2003-01-09 한국전자통신연구원 실시간 고속의 데이터 처리용 디엠에이 제어기 및 제어방법
US20030007636A1 (en) * 2001-06-25 2003-01-09 Alves Vladimir Castro Method and apparatus for executing a cryptographic algorithm using a reconfigurable datapath array
JP3528922B2 (ja) * 2001-08-31 2004-05-24 日本電気株式会社 アレイ型プロセッサ、データ処理システム
US7532750B2 (en) * 2002-04-17 2009-05-12 Sony Corporation Image processing apparatus and method, program, and image processing system
GB2395299B (en) * 2002-09-17 2006-06-21 Micron Technology Inc Control of processing elements in parallel processors

Also Published As

Publication number Publication date
US20050083338A1 (en) 2005-04-21
US7409528B2 (en) 2008-08-05
KR20050022200A (ko) 2005-03-07

Similar Documents

Publication Publication Date Title
KR100503094B1 (ko) 넓은 메모리 밴드위스를 갖는 디지털 신호 처리 장치 및그 메모리 맵핑 방법
US8069334B2 (en) Parallel histogram generation in SIMD processor by indexing LUTs with vector data element values
US4561072A (en) Memory system handling a plurality of bits as a unit to be processed
US5592405A (en) Multiple operations employing divided arithmetic logic unit and multiple flags register
US4434502A (en) Memory system handling a plurality of bits as a unit to be processed
US5914910A (en) Semiconductor memory and method of using the same column decoder and image processor
US10001971B2 (en) Electronic apparatus having parallel memory banks
US10552307B2 (en) Storing arrays of data in data processing systems
CN108053361B (zh) 多互连视觉处理器及采用其的图像处理方法
US5412740A (en) Signal processing system having reduced memory space
US6085304A (en) Interface for processing element array
EP1320029A2 (en) Data processor with vector register file
US7130985B2 (en) Parallel processor executing an instruction specifying any location first operand register and group configuration in two dimensional register file
CN110087088B (zh) 一种基于运动估计的数据存储方法、终端设备及存储介质
JPH0259943A (ja) 塗潰しパターン発生装置
JPH11338767A (ja) 画像処理用機能メモリ装置
US10412400B1 (en) Memory access ordering for a transformation
US9330438B1 (en) High performance warp correction in two-dimensional images
JP2633251B2 (ja) 画像メモリ素子
JP2855899B2 (ja) 機能メモリ
CN117710188A (zh) 图像处理的硬件电路实现方法、设备及集成电路
JPS62151987A (ja) 画像処理用マルチ・ポ−ト・メモリ
JPS60124785A (ja) 画像処理装置
JP4244619B2 (ja) 画像データ処理装置
JPS62175879A (ja) 2値画像相以変換画素デ−タ発生装置

Legal Events

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

Payment date: 20120628

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20130627

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee