KR101519482B1 - 짧은 임계 경로를 가지는 중간값 탐색 방법과 상기 방법을 수행할 수 있는 장치 - Google Patents

짧은 임계 경로를 가지는 중간값 탐색 방법과 상기 방법을 수행할 수 있는 장치 Download PDF

Info

Publication number
KR101519482B1
KR101519482B1 KR1020130157312A KR20130157312A KR101519482B1 KR 101519482 B1 KR101519482 B1 KR 101519482B1 KR 1020130157312 A KR1020130157312 A KR 1020130157312A KR 20130157312 A KR20130157312 A KR 20130157312A KR 101519482 B1 KR101519482 B1 KR 101519482B1
Authority
KR
South Korea
Prior art keywords
input data
data
outputs
comparison
outputting
Prior art date
Application number
KR1020130157312A
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 KR1020130157312A priority Critical patent/KR101519482B1/ko
Application granted granted Critical
Publication of KR101519482B1 publication Critical patent/KR101519482B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2218/00Aspects of pattern recognition specially adapted for signal processing
    • G06F2218/02Preprocessing
    • G06F2218/04Denoising

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

중간값 탐색 방법은 N(N은 자연수)개의 입력 데이터 각각을 변경하고 변경된 N개의 입력 데이터 각각을 생성하는 단계와, 상기 변경된 N개의 입력 데이터 각각의 크기를 서로 비교하고, 변경된 입력 데이터별로 비교 신호들을 출력하는 단계와, 상기 변경된 입력 데이터별로 상기 비교 신호들의 개수를 카운트하고, 상기 변경된 입력 데이터별로 카운트 값을 출력하는 단계와, 상기 N개의 입력 데이터 중에서, (N-1)/2에 해당하는 상기 카운트 값을 갖는 입력 데이터를 중간값을 갖는 데이터로서 출력하는 단계를 포함한다.

Description

짧은 임계 경로를 가지는 중간값 탐색 방법과 상기 방법을 수행할 수 있는 장치{METHOD AND DEVICE FOR MEDIAN SEARCHING WITH A SHORT CTITICAL PATH}
본 발명의 개념에 따른 실시 예는 짧은 임계 경로를 가지는 중간값 탐색 알고리즘에 관한 것으로, 특히 모든 입력 데이터 각각에 대해 서로 다른 값을 가지는 접미어를 강제적으로 추가하여 새로운 데이터 각각을 생성하고 생성된 각 데이터를 이용하여 상기 모든 입력 데이터 중에서 중간값을 탐색하는 방법과 상기 방법에 관한 것이다.
중간값 필터(median filter)는 영상에 포함된 잡음을 제거하기 위해서 사용되는 대표적인 비선형 신호 처리를 위한 필터이다.
그러나, 상기 중간값 필터만을 이용하여 영상으로부터 잡음을 제거하면, 주요 윤곽선도 뭉개지기 때문에 상기 윤곽선을 보존하면서도 상기 잡음을 제거하는 효과가 탁월한 쌍방향(bilateral) 필터를 비롯한 다양한 잡음 제거 기술들이 개발되어 오고 있다.
그럼에도 불구하고, 잡음 제거의 가장 기본적인 도구가 중간값 필터라는 것에는 이견이 없다. 효과적인 중간값 필터는 효과적인 잡음 제거로 이어지기 때문에 그 중요성은 매우 높다.
중간값 탐색은 거품 정렬(bubble sorting) 알고리즘을 통해서 쉽게 구현할 수 있으나, 데이터의 개수만큼의 비교기가 순차적으로 사용되기 때문에, 임계 경로도 데이터의 개수에 비례해서 증가하게 된다. 따라서, 영상과 같이 데이터의 개수가 크게 늘어나는 경우에는 효율적인 구현이 용이하지 않다. 이를 해결하기 위해서 임계 경로가 데이터의 로그 스케일에 비례하여 초고속 하드웨어 구현에 적합한 알고리즘도 제안되었으나, 데이터의 개수에 대한 의존도가 완전히 사라진 것은 아니었다.
1. 등록특허공보 : 등록번호 10-1128505-0000호 (2012.03.13. 등록) 2. 공개특허공보 : 공개번호 10-2011-0126032호 (2011.11.22. 공개)
본 발명이 이루고자 하는 기술적인 과제는 데이터의 개수의 로그값에 비례하는 임계 경로를 가지는 기존 방식을 더욱 효율적으로 개선한 중간값 탐색 알고리즘을 수행할 수 있는 방법과 장치를 제공하는 것이다.
본 발명의 실시 예에 따른 중간값 탐색 방법은 N(N은 자연수)개의 입력 데이터 각각을 변경하고 변경된 N개의 입력 데이터 각각을 생성하는 단계와, 상기 변경된 N개의 입력 데이터 각각의 크기를 서로 비교하고, 변경된 입력 데이터별로 비교 신호들을 출력하는 단계와, 상기 변경된 입력 데이터별로 상기 비교 신호들의 개수를 카운트하고, 상기 변경된 입력 데이터별로 카운트 값을 출력하는 단계와, 상기 N개의 입력 데이터 중에서, (N-1)/2에 해당하는 상기 카운트 값을 갖는 입력 데이터를 중간값을 갖는 데이터로서 출력하는 단계를 포함한다.
상기 생성하는 단계는, 다음의 수학식에 따라 M=int(log2(N))+1, 상기 N개의 입력 데이터 각각을 상기 M(M은 자연수)-비트들(bits)만큼씩 논리적 레프트 쉬프트(logical left shift)하는 단계와, M-비트들만큼씩 논리적으로 레프트 쉬프트된 N개의 입력 데이터 각각에 서로 다른 값을 갖는 인덱스를 가산하는 단계를 포함한다.
상기 출력하는 단계는 상기 변경된 입력 데이터별로 출력된 상기 카운트 값과 상기 (N-1)/2을 비교하고 비교의 결과에 따라 선택 신호들을 출력하는 단계와, 상기 선택 신호들에 응답하여 동작하는 멀티플렉서를 이용하여, 상기 N개의 입력 데이터 중에서 상기 입력 데이터를 상기 중간값을 갖는 데이터로서 출력하는 단계를 포함한다.
상기 N개의 입력 데이터 각각은 영상 데이터일 수 있다.
본 발명의 실시 예에 따른 중간값 탐색 장치는 N(N은 자연수)개의 입력 데이터 각각을 변경하고, 변경된 N개의 입력 데이터 각각의 크기를 서로 비교하고, 변경된 입력 데이터별로 비교 신호들을 출력하는 데이터 비교 회로와, 상기 변경된 입력 데이터별로 출력되는 상기 비교 신호들의 개수를 카운트하고, 상기 변경된 입력 데이터별로 카운트 값을 출력하는 카운트 회로와, 상기 N개의 입력 데이터 중에서, (N-1)/2에 해당하는 상기 카운트 값을 갖는 입력 데이터를 중간값을 갖는 중간 데이터로서 출력하는 출력 회로를 포함한다.
상기 출력 회로는 상기 변경된 입력 데이터별로 출력된 상기 카운트 값과 상기 (N-1)/2을 비교하고 비교의 결과에 따라 선택 신호들을 출력하는 비교 회로 블록과, 상기 선택 신호들에 응답하여, 상기 N개의 입력 데이터 중에서 상기 입력 데이터를 상기 중간값을 갖는 상기 중간 데이터로서 출력하는 멀티플렉서를 포함한다.
본 발명의 실시 예에 따른 짧은 임계 경로를 가지는 중간값 탐색 방법과 장치는, 임계 경로가 데이터의 개수에 깊게 의존하지 않으면서도 매우 짧은 임계 경로를 가지기 때문에, 초고속으로 동작하는 영상 처리 시스템에서 비용을 절감하는 효과와 성능을 향상시킬 수 있는 효과가 있다.
본 발명의 실시 예에 따른 짧은 임계 경로를 가지는 중간값 탐색 방법과 장치는, 모든 입력 데이터 각각에 대해 서로 다른 값을 가지는 접미어를 강제적으로 추가하여 새로운 데이터 각각을 생성하고 생성된 각 데이터를 이용하여 상기 모든 입력 데이터 중에서 중간값을 빠르고 정확하게 탐색할 수 있는 효과가 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 실시 예에 따른 중간값 탐색 장치의 블록도를 나타낸다.
도 2는 도 1에 도시된 데이터 비교 회로의 블록도를 나타낸다
도 3은 도 2에 도시된 데이터 비교 회로의 동작을 설명하기 위한 일 실시 예를 나타낸다.
도 4는 도 2에 도시된 데이터 비교 회로의 동작을 설명하기 위한 다른 실시 예를 나타낸다.
도 5는 도 1에 도시된 중간값 탐색 장치의 동작을 설명하기 위한 플로우차트이다.
도 6은 본 발명의 일 실시 예에 따른 중간값 탐색 알고리즘을 나타낸다.
도 7은 본 발명의 다른 실시 예에 따른 중간값 탐색 알고리즘을 나타낸다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 벗어나지 않은 채, 제1구성 요소는 제2구성 요소로 명명될 수 있고 유사하게 제2구성 요소는 제1구성 요소로도 명명될 수 있다.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 나타낸다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 명세서에 첨부된 도면들을 참조하여 본 발명의 실시 예들을 상세히 설명한다.
도 1은 본 발명의 실시 예에 따른 중간값 탐색 장치의 블록도를 나타낸다.
도 1을 참조하면, 중간값을 탐색할 수 있는 중간값 탐색 장치(100)는 데이터 비교 회로(110), 가산기 블록(130), 비교 회로 블록(150), 및 멀티플렉서(170)를 포함할 수 있다. 출력 회로는 비교 회로 블록(150)과 멀티플렉서(170)를 포함한다.
실시 예에 따라, 중간값 탐색 장치(100)는 PC(personal computer) 또는 휴대용 전자 장치에 포함될 수 있다. 상기 휴대용 전자 장치는 랩탑 컴퓨터(laptop computer), 이동 전화기, 스마트 폰(smart phone), 태블릿(tablet) PC, PDA(personal digital assistant), EDA(enterprise digital assistant), 디지털 스틸 카메라(digital still camera), 디지털 비디오 카메라(digital video camera), PMP(portable multimedia player), PND(personal navigation device 또는 portable navigation device), 휴대용 게임 콘솔(handheld game console), 모바일 인터넷 장치(mobile internet device(MID), 웨어러블 컴퓨터, 또는 e-북(e-book)으로 구현될 수 있다.
다른 실시 예에 따라, 중간값 탐색 장치(100)는 집적 회로 또는 시스템 온 칩(system on chip(SoC))의 일부에 포함될 수 있다. 상기 집적 회로 또는 상기 SoC는 애플리케이션 프로세서(application processor(AP)) 또는 모바일 AP의 일부로 구현될 수 있다. 또 다른 실시 예에 따라, 중간값 탐색 장치(100)는 영상 데이터 처리 장치의 일부로 구현될 수 있다.
중간값 탐색 장치(100)는 입력 데이터 집합(OD_1~OD_N; N은 자연수)이 주어지면, 입력 데이터 집합(OD_1~OD_N)에 포함된 각 입력 데이터에 서로 다른 값을 갖는 접미어를 강제적으로 추가하여 새로운 입력 데이터 집합을 만들 수 있다. 따라서, 접미어가 강제적으로 추가된 새로운 입력 데이터 집합은 서로 다른 값을 가지므로 입력 데이터 집합(OD_1~OD_N)에서 중간값은 단 하나만 존재한다.
데이터 비교 회로(110)는 N개의 입력 데이터(OD_1~OD_N) 각각을 변경 규칙에 따라 변경하고, 변경된 N개의 입력 데이터 각각의 크기를 서로 비교하고, 변경된 입력 데이터별로 비교 신호들을 출력할 수 있다. 예컨대, N개의 입력 데이터(OD_1~OD_N) 각각은 영상 데이터일 수 있으나 본 발명이 이에 한정되는 것은 아니다.
가산기 블록(130)은 N개의 가산기들(130-1~130-N)을 포함할 수 있다. 실시 예에 따라, N개의 가산기들(130-1~130-N) 각각은 카운터로 대체될 수 있다.
비교 회로 블록(150)은 N개의 비교기들(150-1~150-N)을 포함할 수 있다. N개의 비교기들(150-1~150-N) 각각은 카운트 값들(CNT1~CNTN) 각각과 기준 값(REF)을 비교하교 비교 결과에 따라 선택 신호들(S1~SN) 각각을 출력할 수 있다.
도 1과 도 2에서는 설명의 편의를 위해, 기준 값(REF)이 (N-1)/2인 경우를 예로 들어 설명하나 기준 값(REF)은 설계 사양에 따라 변경될 수 있다.
도 2는 도 1에 도시된 데이터 비교 회로의 블록도를 나타낸다.
본 명세서에서는 설명의 편의를 위해, 입력 데이터의 개수가 5개라고 가정하나, 본 발명의 기술적 사상은 입력 데이터의 개수에 한정되는 것은 아니다.
또한, 각 입력 데이터(OD_1~OD_N; N=5)를 구성하는 비트들의 개수는 실시 예들에 따라 서로 동일할 수도 있고 서로 다른 수도 있다.
도 1과 도 2를 참조하면, 데이터 비교 회로(110)는 쉬프트 회로들(111-1~111-5), 가산기들(113-1~113-5), 및 데이터 비교기들(115-1~115-10), 및 인버터들(IN1~IN10)을 포함한다.
각 쉬프트 회로(111-1~111-5)는 각 입력 데이터(OD_1~OD_5)를 M-비트들만큼씩 논리적으로 레프트 쉬프트(logically left shift)하고, 쉬프트된 각 데이터 (SD_1~SD_5)를 출력할 수 있다.
수학식1에 따라 M의 값이 결정될 수 있다.
[수학식1]
M=int(log2(N))+1
예컨대, N이 5일 때, M은 3으로 결정될 수 있다. int는 정수를 나타내는 함수이다.
각 가산기(113-1~113-5)는 각 쉬프트 회로(111-1~111-5)의 각 출력 데이터 (SD_1~SD_5)와 대응되는 인덱스(INDEX)를 가산하고, 가산의 결과에 따라 각 변경 데이터(OD1'~OD5')를 출력한다.
예컨대, 대응되는 인덱스(INDEX)는 N번째 입력 데이터에 대해 (N-1)로 결정될 수 있다. 즉, 첫 번째 입력 데이터(OD_1)에 대한 인덱스(INDEX)는 '0'으로, 두 번째 입력 데이터(OD_2)에 대한 인덱스(INDEX)는 '2'로, 다섯 번째 입력 데이터 (OD_5)에 대한 인덱스(INDEX)는 '4'로 결정될 수 있다.
각 가산기(113-1~113-5)로 입력되는 각 인덱스(INDEX)는 서로 다른 값을 갖는 인덱스이면 족하다.
데이터 비교기(115-1)는 제1가산기(111-1)의 출력(OD1')과 제2가산기(111-2)의 출력(OD2')을 서로 비교하고 비교 신호(C12)를 출력한다. 인버터(IN1)는 비교 신호(C12)의 위상과 반대 위상을 갖는 비교 신호(C21)를 출력한다.
실시 예에 따라, 제2가산기(111-2)의 출력(OD2')이 제1가산기(111-1)의 출력 (OD1')보다 클 때, 데이터 비교기(115-1)는 제1값(예컨대, 하이 레벨)을 갖는 비교 신호(C12)를 출력할 수 있다. 그러나, 다른 실시 예에 따라, 제2가산기(111-2)의 출력(OD2')이 제1가산기(111-1)의 출력(OD1')보다 클 때, 데이터 비교기(115-1)는 제2값(예컨대, 로우 레벨)을 갖는 비교 신호(C12)를 출력할 수 있다.
데이터 비교기(115-2)는 제1가산기(111-1)의 출력(OD1')과 제3가산기(111-3)의 출력(OD3')을 서로 비교하고 비교 신호(C13)를 출력한다. 인버터(IN2)는 비교 신호(C13)의 위상과 반대 위상을 갖는 비교 신호(C31)를 출력한다.
데이터 비교기(115-3)는 제1가산기(111-1)의 출력(OD1')과 제4가산기(111-4)의 출력(OD4')을 서로 비교하고 비교 신호(C14)를 출력한다. 인버터(IN3)는 비교 신호(C14)의 위상과 반대 위상을 갖는 비교 신호(C41)를 출력한다.
데이터 비교기(115-4)는 제1가산기(111-1)의 출력(OD1')과 제5가산기(111-5)의 출력(OD5')을 서로 비교하고 비교 신호(C15)를 출력한다. 인버터(IN4)는 비교 신호(C15)의 위상과 반대 위상을 갖는 비교 신호(C51)를 출력한다.
비교 신호(C23)는 제2가산기(113-2)의 출력(OD2')과 제3가산기(113-3)의 출력(OD3')의 비교 결과이고, 비교 신호(C34)는 제3가산기(113-3)의 출력(OD3')과 제4가산기(113-4)의 출력(OD4')의 비교 결과이고, 비교 신호(C45)는 제4가산기(113-4)의 출력(OD4')과 제5가산기(113-5)의 출력(OD5')의 비교 결과이다.
즉, 비교 신호(Cij, i=1~5, j=1~5, 및 i≠j)는 i번째 가산기의 출력과 j번째 가산기의 출력의 비교 결과를 의미한다.
도 3은 도 2에 도시된 데이터 비교 회로의 동작을 설명하기 위한 일 실시 예를 나타낸다.
도 1부터 도 3을 참조하면, 설명의 편의를 위해, 각 입력 데이터(OD_1~OD_5)의 크기는 10진수로 '6', '9', '0', '2', 및 '1'을 갖는다고 가정한다. 별도로 진수를 표시하지 않는 경우, 각 숫자는 10진수를 의미한다.
입력 데이터의 개수가 5이므로, 수학식 1에 따라 M은 '3'으로 결정된다.
제1쉬프트 회로(111-1)는 제1입력 데이터(OD_1=6=4'b0110)를 3-비트들만큼 레프트 쉬프트하고 SD_1=48(=7'b0110000)을 출력하고, 제1가산기(113-1)는 SD_1과 INDEX(=0)를 더하여 '48'을 출력한다.
제2쉬프트 회로(111-2)는 제2입력 데이터(OD_2=9=4'b1001)를 3-비트들만큼 레프트 쉬프트하고 SD_2=72(=7'b1001000)을 출력하고, 제2가산기(113-2)는 SD_2와 INDEX(=1)를 더하여 '73'을 출력한다.
제3쉬프트 회로(111-3)는 제3입력 데이터(OD_3=0=4'b0000)를 3-비트들만큼 레프트 쉬프트하고 SD_3=0(=7'b0000000)을 출력하고, 제3가산기(113-3)는 SD_3과 INDEX(=2)을 더하여 '2'를 출력한다.
제4쉬프트 회로(111-4)는 제4입력 데이터(OD_4=2=4'b0010)를 3-비트들만큼 레프트 쉬프트하고 SD_4=16(=7'b0010000)을 출력하고, 제4가산기(113-4)는 SD_4와 INDEX(=3)을 더하여 '19'를 출력한다.
제5쉬프트 회로(111-5)는 제5입력 데이터(OD_5=1=4'b0001)를 3-비트들만큼 레프트 쉬프트하고 SD_5=8(=7'b0001000)을 출력하고, 제5가산기(113-5)는 SD_5와 INDEX (=4)를 더하여 '12'를 출력한다.
73이 48보다 크므로, 비교기(115-1)는 하이 레벨을 갖는 비교 신호(C12)를 출력하고, 인버터(IN1)는 로우 레벨을 갖는 비교 신호(C21)를 출력한다.
2가 48보다 작으므로, 비교기(115-2)는 로우 레벨을 갖는 비교 신호(C13)를 출력하고, 인버터(IN2)는 하이 레벨을 갖는 비교 신호(C31)를 출력한다.
19가 48보다 작으므로, 비교기(115-3)는 로우 레벨을 갖는 비교 신호(C14)를 출력하고, 인버터(IN3)는 하이 레벨을 갖는 비교 신호(C41)를 출력한다.
12가 48보다 작으므로, 비교기(115-4)는 로우 레벨을 갖는 비교 신호(C15)를 출력하고, 인버터(IN4)는 하이 레벨을 갖는 비교 신호(C51)를 출력한다.
2는 73보다 작으므로, 비교기(115-5)는 로우 레벨을 갖는 비교 신호(C23)를 출력하고, 인버터(IN5)는 하이 레벨을 갖는 비교 신호(C32)를 출력한다.
19는 73보다 작으므로, 비교기(115-6)는 로우 레벨을 갖는 비교 신호(C24)를 출력하고, 인버터(IN6)는 하이 레벨을 갖는 비교 신호(C42)를 출력한다.
12는 73보다 작으므로, 비교기(115-7)는 로우 레벨을 갖는 비교 신호(C25)를 출력하고, 인버터(IN7)는 하이 레벨을 갖는 비교 신호(C52)를 출력한다.
19는 2보다 크므로, 비교기(115-8)는 하이 레벨을 갖는 비교 신호(C34)를 출력하고, 인버터(IN8)는 로우 레벨을 갖는 비교 신호(C43)를 출력한다.
12는 2보다 크므로, 비교기(115-9)는 하이 레벨을 갖는 비교 신호(C35)를 출력하고, 인버터(IN9)는 로우 레벨을 갖는 비교 신호(C53)를 출력한다.
12는 19보다 작으므로, 비교기(115-10)는 로우 레벨을 갖는 비교 신호(C45)를 출력하고, 인버터(IN10)는 하이 레벨을 갖는 비교 신호(C54)를 출력한다.
가산기(130-1)는 비교 신호들(C12, C13, C14, 및 C15) 중에서 하이 레벨을 갖는 비교 신호(들)의 개수를 가산하고 카운트 값(CNT1)을 출력한다. 비교 신호 (C12)만이 하이 레벨이므로, 가산기(130-1)는 카운트 값(CNT1)으로써 '1'을 비교기(150-1)로 출력한다. 즉, 입력 데이터(OD_1=6)에 대응되는 48보다 큰 수의 개수는 1개이다.
비교기(150-1)는 '1'과 기준 값((N-1)/2=2)을 비교하고, 두 개의 값들이 서로 일치하지 않으므로 로우 레벨을 갖는 선택 신호(S1)를 출력한다.
가산기(130-2)는 비교 신호들(C21, C23, C24, 및 C25) 중에서 하이 레벨을 갖는 비교 신호(들)의 개수를 가산하고 카운트 값(CNT2)을 출력한다. 비교 신호들 (C21, C23, C24, 및 C25)이 모두 로우 레벨이므로, 가산기(130-2)는 카운트 값 (CNT2)으로써 '0'을 비교기(150-2)로 출력한다. 즉, 입력 데이터(OD_2=9)에 대응되는 73보다 큰 수의 개수는 0개이다.
비교기(150-2)는 '0'과 기준 값((N-1)/2=2)을 비교하고, 두 개의 값들이 서로 일치하지 않으므로 로우 레벨을 갖는 선택 신호(S2)를 출력한다.
가산기(130-3)는 비교 신호들(C31, C32, C34, 및 C35) 중에서 하이 레벨을 갖는 비교 신호(들)의 개수를 가산하고 카운트 값(CNT3)을 출력한다. 비교 신호들 (C31, C32, C34, 및 C35)이 하이 레벨이므로, 가산기(130-3)는 카운트 값(CNT3)으로써 '4'를 비교기(150-3)로 출력한다. 즉, 입력 데이터(OD_3=0)에 대응되는 2보다 큰 수의 개수는 4개이다.
비교기(150-3)는 '4'와 기준 값((N-1)/2=2)을 비교하고, 두 개의 값들이 서로 일치하지 않으므로 로우 레벨을 갖는 선택 신호(S3)를 출력한다.
가산기(130-4)는 비교 신호들(C41, C42, C43, 및 C45) 중에서 하이 레벨을 갖는 비교 신호(들)의 개수를 가산하고 카운트 값(CNT4)을 출력한다. 비교 신호들 (C41, 및 C42)이 하이 레벨이므로, 가산기(130-3)는 카운트 값(CNT4)으로써 '2'를 비교기(150-4)로 출력한다. 즉, 입력 데이터(OD_4=2)에 대응되는 19보다 큰 수의 개수는 0개이다.
비교기(150-4)는 '2'와 기준 값((N-1)/2=2)을 비교하고, 두 개의 값들이 서로 일치하므로 하이 레벨을 갖는 선택 신호(S4)를 출력한다.
가산기(130-5)는 비교 신호들(C51, C52, C53, 및 C54) 중에서 하이 레벨을 갖는 비교 신호(들)의 개수를 가산하고 카운트 값(CNT5)을 출력한다. 비교 신호들 (C51, C52, 및 C54)이 하이 레벨이므로, 가산기(130-3)는 카운트 값(CNT5)으로써 '3'을 비교기(150-5)로 출력한다. 즉, 입력 데이터(OD_5=1)에 대응되는 12보다 큰 수의 개수는 0개이다.
비교기(150-5)는 '3'과 기준 값((N-1)/2=2)을 비교하고, 두 개의 값들이 서로 일치하므로 로우 레벨을 갖는 선택 신호(S5)를 출력한다.
멀티플렉서(170)는, 하이 레벨을 갖는 선택 신호(S4)에 응답하여, 제4입력 데이터(2=4'b0010)를 중간값을 갖는 중간 데이터(MV)로서 출력한다.
도 4는 도 2에 도시된 데이터 비교 회로의 동작을 설명하기 위한 다른 실시 예를 나타낸다.
도 1, 도 2, 및 도 4를 참조하면, 설명의 편의를 위해, 각 입력 데이터 (OD_1~OD_5)의 크기는 10진수로 '2', '4', '4', '4', 및 '10'을 갖는다고 가정한다. 이때, 3개의 입력 데이터(OD_2, OD_3, 및 OD_4)의 크기는 '4'로서 서로 동일하다. 별도로 진수를 표시하지 않는 경우, 각 숫자는 10진수를 의미한다.
입력 데이터의 개수가 5이므로, M은 3으로 결정된다.
제1쉬프트 회로(111-1)는 제1입력 데이터(OD_1=2=4'b0010)를 3-비트들만큼 레프트 쉬프트하고 SD_1=16(=7'b0010000)을 출력하고, 제1가산기(113-1)는 SD_1과 INDEX (=0)을 더하여 '16'을 출력한다.
제2쉬프트 회로(111-2)는 제2입력 데이터(OD_2=4=4'0100)를 3-비트들만큼 레프트 쉬프트하고 SD_2=32(=7'b0100000)를 출력하고, 제2가산기(113-2)는 SD_2와 INDEX(=1)를 더하여 '33'을 출력한다.
제3쉬프트 회로(111-3)는 제3입력 데이터(OD_3=4=4'b0100)를 3-비트들만큼 레프트 쉬프트하고 SD_3=32(=7'b0100000)를 출력하고, 제3가산기(113-3)는 SD_3과 INDEX(=2)를 더하여 '34'를 출력한다.
제4쉬프트 회로(111-4)는 제4입력 데이터(OD_4=4=4'b0100)를 3-비트들만큼 레프트 쉬프트하고 SD_4=32(=7'0100000)를 출력하고, 제4가산기(113-4)는 SD_4와 INDEX(=3)를 더하여 '35'를 출력한다.
제5쉬프트 회로(111-5)는 제5입력 데이터(OD_5=10=4'b1010)를 3-비트들만큼 레프트 쉬프트하고 SD_5=80(=7'b1010000)을 출력하고, 제5가산기(113-5)는 SD_5와 INDEX(=4)를 더하여 '84'를 출력한다.
33이 16보다 크므로, 비교기(115-1)는 하이 레벨을 갖는 비교 신호(C12)를 출력하고 인버터(IN1)는 로우 레벨을 가는 비교 신호(C21)를 출력한다.
34가 16보다 크므로, 비교기(115-2)는 하이 레벨을 갖는 비교 신호(C13)를 출력하고 인버터(IN2)는 로우 레벨을 가는 비교 신호(C31)를 출력한다.
35가 16보다 크므로, 비교기(115-3)는 하이 레벨을 갖는 비교 신호(C14)를 출력하고 인버터(IN3)는 로우 레벨을 가는 비교 신호(C41)를 출력한다.
84가 16보다 크므로, 비교기(115-4)는 하이 레벨을 갖는 비교 신호(C15)를 출력하고 인버터(IN4)는 로우 레벨을 가는 비교 신호(C51)를 출력한다.
34가 33보다 크므로, 비교기(115-5)는 하이 레벨을 갖는 비교 신호(C23)를 출력하고 인버터(IN5)는 로우 레벨을 가는 비교 신호(C32)를 출력한다.
35가 33보다 크므로, 비교기(115-6)는 하이 레벨을 갖는 비교 신호(C24)를 출력하고 인버터(IN6)는 로우 레벨을 가는 비교 신호(C41)를 출력한다.
84가 33보다 크므로, 비교기(115-7)는 하이 레벨을 갖는 비교 신호(C25)를 출력하고 인버터(IN7)는 로우 레벨을 갖는 비교 신호(C52)를 출력한다.
35가 34보다 크므로, 비교기(115-8)는 하이 레벨을 갖는 비교 신호(C34)를 출력하고 인버터(IN8)는 로우 레벨을 가는 비교 신호(C43)를 출력한다.
84가 34보다 크므로, 비교기(115-9)는 하이 레벨을 갖는 비교 신호(C35)를 출력하고 인버터(IN9)는 로우 레벨을 갖는 비교 신호(C53)를 출력한다.
84가 35보다 크므로, 비교기(115-10)는 하이 레벨을 갖는 비교 신호(C45)를 출력하고 인버터(IN10)는 로우 레벨을 갖는 비교 신호(C54)를 출력한다.
가산기(130-1)는 비교 신호들(C12, C13, C14, 및 C15) 중에서 하이 레벨을 갖는 비교 신호(들)의 개수를 가산하고 카운트 값(CNT1)을 출력한다. 비교 신호들 (C12, C13, C14, 및 C15)이 하이 레벨이므로, 가산기(130-1)는 카운트 값(CNT1)으로써 '4'를 비교기(150-1)로 출력한다. 즉, 입력 데이터(OD_1=2)에 대응되는 16보다 큰 수의 개수는 4개이다.
비교기(150-1)는 '4'와 기준 값((N-1)/2=2)을 비교하고, 두 개의 값들이 서로 일치하지 않으므로 로우 레벨을 갖는 선택 신호(S1)를 출력한다.
가산기(130-2)는 비교 신호들(C21, C23, C24, 및 C25) 중에서 하이 레벨을 갖는 비교 신호(들)의 개수를 가산하고 카운트 값(CNT2)을 출력한다. 비교 신호들 (C23, C24, 및 C25)이 하이 레벨이므로, 가산기(130-2)는 카운트 값(CNT2)으로써 '3'을 비교기(150-2)로 출력한다. 즉, 입력 데이터(OD_2=4)에 대응되는 33보다 큰 수의 개수는 3개이다.
비교기(150-2)는 '3'과 기준 값((N-1)/2=2)을 비교하고, 두 개의 값들이 서로 일치하지 않으므로 로우 레벨을 갖는 선택 신호(S2)를 출력한다.
가산기(130-3)는 비교 신호들(C31, C32, C34, 및 C35) 중에서 하이 레벨을 갖는 비교 신호(들)의 개수를 가산하고 카운트 값(CNT3)을 출력한다. 비교 신호들 (C34 및 C35)이 하이 레벨이므로, 가산기(130-3)는 카운트 값(CNT3)으로써 '2'를 비교기(150-3)로 출력한다. 즉, 입력 데이터(OD_3=4)에 대응되는 34보다 큰 수의 개수는 2개이다.
비교기(150-3)는 '2'와 기준 값((N-1)/2=2)을 비교하고, 두 개의 값들이 서로 일치하므로 하이 레벨을 갖는 선택 신호(S3)를 출력한다.
가산기(130-4)는 비교 신호들(C41, C42, C43, 및 C45) 중에서 하이 레벨을 갖는 비교 신호(들)의 개수를 가산하고 카운트 값(CNT4)을 출력한다. 비교 신호 (C45)가 하이 레벨이므로, 가산기(130-4)는 카운트 값(CNT4)으로써 '1'을 비교기(150-4)로 출력한다. 즉, 입력 데이터(OD_4=4)에 대응되는 35보다 큰 수의 개수는 1개이다.
비교기(150-4)는 '1'과 기준 값((N-1)/2=2)을 비교하고, 두 개의 값들이 서로 일치하지 않으므로 로우 레벨을 갖는 선택 신호(S4)를 출력한다.
가산기(130-5)는 비교 신호들(C51, C52, C53, 및 C54) 중에서 하이 레벨을 갖는 비교 신호(들)의 개수를 가산하고 카운트 값(CNT5)을 출력한다. 비교 신호들(C51, C52, C53, 및 C54)이 로우 레벨이므로, 가산기(130-5)는 카운트 값(CNT5)으로써 '0'을 비교기(150-5)로 출력한다. 즉, 입력 데이터(OD_5=10)에 대응되는 84보다 큰 수의 개수는 0개이다.
비교기(150-4)는 '0'과 기준 값((N-1)/2=2)을 비교하고, 두 개의 값들이 서로 일치하지 않으므로 로우 레벨을 갖는 선택 신호(S5)를 출력한다.
멀티플렉서(170)는, 하이 레벨을 갖는 선택 신호(S3)에 응답하여, 제3입력 데이터(OD_3=4=4'b0100)를 중간값을 갖는 중간 데이터(MV)로서 출력한다.
도 5는 도 1에 도시된 중간값 탐색 장치의 동작을 설명하기 위한 플로우차트이다.
도 1부터 도 5를 참조하면, 우선, M이 결정된다(S110). 실시 예에 따라, 상기 M은 중간값 탐색 장치(100)에서 처리될 입력 데이터(OD_1~OD_N)의 개수에 관련되므로, 중간값 탐색 장치(100)의 설계 사양에 따라 결정된 후 레지스터(register)와 같은 메모리에 저장될 수 있다.
다른 실시 예에 따라, 상기 M은 중간값 탐색 장치(100)에서 처리될 입력 데이터 (OD_1~OD_N)의 개수에 관련되므로 수학식 1을 이용하여 실시간으로 결정될 수도 있다. 이 경우, 상기 M은 CPU 또는 마이크로프로세서에 의해 결정될 수 있다.
M과 인덱스(INDEX)는 처리될 입력 데이터(OD_1~OD_N)의 개수(즉, N)에 따라 서로 다른 값으로 결정될 수 있다(S101).
데이터 비교 회로(110)는 각 입력 데이터(OD_1~OD_N)를 인덱스(INDEX)와 수학식 1에 따라 결정된 M을 이용하여 변경한다(S103). 데이터 비교 회로(110)의 데이터 변경 동작은 도 2, 도 3, 및 도 4를 참조하여 설명한 바와 같다.
데이터 비교 회로(110)는 S103단계에서 변경된 N개의 입력 데이터 각각을 서로 비교한다(S105).
가산기 블록(130), 비교 회로 블록(150), 및 멀티플렉서(170)의 동작에 따라, 즉, 비교 결과에 따라 N개의 입력 데이터 중에서 중간값을 갖는 중간 데이터가 선택적으로 출력된다(S107).
도 6은 본 발명의 일 실시 예에 따른 중간값 탐색 알고리즘을 나타내고, 도 7은 본 발명의 다른 실시 예에 따른 중간값 탐색 알고리즘을 나타낸다.
도 1부터 도 7을 참조하면, X[i]는 OD_N(N은 자연수)에 관련되고, Y[i]는 SD_N에 관련되고, Y[i]=(X[i]<<M)+i에서 i는 INDEX에 관련되고, X[iM]은 중간 데이터(MV)에 관련된다.
도 6 또는 도 7에 도시된 중간값 탐색 알고리즘을 구현한 하드웨어의 일 실시 예는 도 1에 도시된 중간값 탐색 장치(100)와 도 2에 도시된 데이터 비교 회로 (110)에 대응될 수 있다.
도 6과 도 7을 참조하면, 중간값 탐색 알고리즘, 즉 중간값 탐색 방법 또는 중간값 탐색 장치는 제1단계에서는 입력 데이터 세트에 접미어(또는 제로 패딩)를 추가하여 서로 다른 값을 갖는 변경 데이터 집합으로 수정하고, 제2단계에서는 변경 데이터 집합에 포함된 복수의 변경 데이터 각각을 서로 비교하는 비교 연산을 수행하고, 제3단계에서는 상기 각 변경 데이터에 대해 상기 비교 연산의 결과를 이용하여 해당 변경 데이터의 값보다 큰 값을 갖는 데이터의 개수를 계수하고, 제4단계에서는 상기 각 변경 데이터에 대한 계수 결과가 (N-1)/2인 데이터를 중간값을 갖는 중간 데이터로 선택하고 출력한다.
본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
100; 중간값 탐색 장치
110; 데이터 비교 회로
111-1~111-5; 쉬프트 회로
113-1~113-5; 가산기
115-1~115-10; 비교기
IN1~IN10; 인버터
130; 가산기 블록
130-1~130-N; 가산기
150; 비교 회로 블록
150-1~150-N; 비교기
170; 멀티플렉서

Claims (7)

  1. N(N은 자연수)개의 입력 데이터 각각을 서로 다른 값을 갖도록 변경하고 변경된 N개의 입력 데이터 각각을 생성하는 단계;
    상기 변경된 N개의 입력 데이터 각각의 크기를 서로 비교하고, 변경된 입력 데이터별로 비교 신호들을 출력하는 단계;
    상기 변경된 입력 데이터별로 상기 비교 신호들의 개수를 카운트하고, 상기 변경된 입력 데이터별로 카운트 값을 출력하는 단계; 및
    상기 N개의 입력 데이터 중에서, (N-1)/2에 해당하는 상기 카운트 값을 갖는 입력 데이터를 중간값을 갖는 데이터로서 출력하는 단계를 포함하는 중간값 탐색 방법.
  2. 제1항에 있어서, 상기 생성하는 단계는,
    다음의 수학식에 따라,
    M=int(log2(N))+1
    상기 N개의 입력 데이터 각각을 상기 M(M은 자연수)-비트들(bits)만큼씩 논리적 레프트 쉬프트(logical left shift)하는 단계; 및
    M-비트들만큼씩 논리적으로 레프트 쉬프트된 N개의 입력 데이터 각각에 서로 다른 값을 갖는 인덱스를 가산하는 단계를 포함하는 중간값 탐색 방법.
  3. 제1항에 있어서, 상기 중간값을 갖는 데이터로서 출력하는 단계는,
    상기 변경된 입력 데이터별로 출력된 상기 카운트 값과 상기 (N-1)/2을 비교하고 비교의 결과에 따라 선택 신호들을 출력하는 단계; 및
    상기 선택 신호들에 응답하여 동작하는 멀티플렉서를 이용하여, 상기 N개의 입력 데이터 중에서 상기 카운트 값을 갖는 상기 입력 데이터를 상기 중간값을 갖는 데이터로서 출력하는 단계를 포함하는 중간값 탐색 방법.
  4. 제1항에 있어서,
    상기 N개의 입력 데이터 각각은 영상 데이터인 중간값 탐색 방법.
  5. N(N은 자연수)개의 입력 데이터 각각을 서로 다른 값을 갖도록 변경하고, 변경된 N개의 입력 데이터 각각의 크기를 서로 비교하고, 변경된 입력 데이터별로 비교 신호들을 출력하는 데이터 비교 회로;
    상기 변경된 입력 데이터별로 출력되는 상기 비교 신호들의 개수를 카운트하고, 상기 변경된 입력 데이터별로 카운트 값을 출력하는 가산기 블록; 및
    상기 N개의 입력 데이터 중에서, (N-1)/2에 해당하는 상기 카운트 값을 갖는 입력 데이터를 중간값을 갖는 중간 데이터로서 출력하는 출력 회로를 포함하는 중간값을 탐색하는 중간값 탐색 장치.
  6. 제5항에 있어서, 상기 데이터 비교 회로는,
    다음의 수학식에 따라,
    M=int(log2(N))+1
    상기 N개의 입력 데이터 각각을 상기 M(M은 자연수)-비트들(bits)만큼씩 논리적 레프트 쉬프트(logical left shift)하고, M-비트들만큼씩 논리적으로 레프트 쉬프트된 N개의 입력 데이터 각각에 서로 다른 값을 갖는 인덱스를 가산하는 중간값을 탐색하는 중간값 탐색 장치.
  7. 제5항에 있어서, 상기 출력 회로는,
    상기 변경된 입력 데이터별로 출력된 상기 카운트 값과 상기 (N-1)/2을 비교하고 비교의 결과에 따라 선택 신호들을 출력하는 비교 회로 블록; 및
    상기 선택 신호들에 응답하여, 상기 N개의 입력 데이터 중에서 상기 카운트 값을 갖는 상기 입력 데이터를 상기 중간값을 갖는 상기 중간 데이터로서 출력하는 멀티플렉서를 포함하는 중간값을 탐색하는 중간값 탐색 장치.
KR1020130157312A 2013-12-17 2013-12-17 짧은 임계 경로를 가지는 중간값 탐색 방법과 상기 방법을 수행할 수 있는 장치 KR101519482B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130157312A KR101519482B1 (ko) 2013-12-17 2013-12-17 짧은 임계 경로를 가지는 중간값 탐색 방법과 상기 방법을 수행할 수 있는 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130157312A KR101519482B1 (ko) 2013-12-17 2013-12-17 짧은 임계 경로를 가지는 중간값 탐색 방법과 상기 방법을 수행할 수 있는 장치

Publications (1)

Publication Number Publication Date
KR101519482B1 true KR101519482B1 (ko) 2015-05-12

Family

ID=53394470

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130157312A KR101519482B1 (ko) 2013-12-17 2013-12-17 짧은 임계 경로를 가지는 중간값 탐색 방법과 상기 방법을 수행할 수 있는 장치

Country Status (1)

Country Link
KR (1) KR101519482B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR940001819B1 (ko) * 1991-07-02 1994-03-09 주식회사 금성사 5-탭 메디안 필터링방법 및 회로
KR20120032132A (ko) * 2010-09-28 2012-04-05 삼성전자주식회사 메디안 필터링 방법 및 장치
US20130279824A1 (en) * 2012-03-14 2013-10-24 Fujitsu Limited Median filtering apparatus and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR940001819B1 (ko) * 1991-07-02 1994-03-09 주식회사 금성사 5-탭 메디안 필터링방법 및 회로
KR20120032132A (ko) * 2010-09-28 2012-04-05 삼성전자주식회사 메디안 필터링 방법 및 장치
US20130279824A1 (en) * 2012-03-14 2013-10-24 Fujitsu Limited Median filtering apparatus and method

Similar Documents

Publication Publication Date Title
Jiang et al. Approximate radix-8 booth multipliers for low-power and high-performance operation
Zendegani et al. SEERAD: A high speed yet energy-efficient rounding-based approximate divider
KR101603471B1 (ko) 디지털 신호 프로세서들에서의 신호 처리를 위한 시스템 및 방법
TWI557641B (zh) 除法運算裝置及其運算方法
US7725522B2 (en) High-speed integer multiplier unit handling signed and unsigned operands and occupying a small area
CN103294445A (zh) 产生用于多项式运算的部分乘积的设备和方法
RU2408057C2 (ru) Умножитель с фиксированной точкой с предварительным насыщением
CN111936965A (zh) 随机舍入逻辑
Jamadagni et al. An asynchronous divider implementation
KR101519482B1 (ko) 짧은 임계 경로를 가지는 중간값 탐색 방법과 상기 방법을 수행할 수 있는 장치
Vergos et al. Efficient modulo 2n+ 1 adder architectures
JP2006172035A (ja) 除算・開平演算器
JPWO2018135515A1 (ja) 情報処理装置、ニューラルネットワークの設計方法及びプログラム
Nasser et al. Power Optimization of Binary Multiplier Based on FPGA
WO2022247193A1 (zh) 用于数据处理的装置、方法、芯片、计算机设备及介质
Vergos et al. Fast modulo 2n+ 1 multi-operand adders and residue generators
Dec LSTM cell implementation on FPGAs
Zhao et al. An fpga-based hardware accelerator of ransac algorithm for matching of images feature points
Yan et al. An Energy Efficient Carry-Free Inner Product Unit
US20140046996A1 (en) Unified computation systems and methods for iterative multiplication and division, efficient overflow detection systems and methods for integer division, and tree-based addition systems and methods for single-cycle multiplication
Mahzoon et al. Multi-objective optimization of floating point arithmetic expressions using iterative factorization
CN108459839A (zh) 一种除法运算方法及除法器电路
Vergos et al. Efficient modulo 2 n+ 1 multi-operand adders
Zhang Trade-offs Between Delay and Energy in 4-Bit Absolute Value Detector and its application analysis
US9069612B2 (en) Carry look-ahead adder with generate bits and propagate bits used for column sums

Legal Events

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

Payment date: 20180409

Year of fee payment: 4