KR950024084A - 신경망 회로 및 신경망 시스템과 이들을 이용한 계산 방법 - Google Patents
신경망 회로 및 신경망 시스템과 이들을 이용한 계산 방법 Download PDFInfo
- Publication number
- KR950024084A KR950024084A KR1019950000739A KR19950000739A KR950024084A KR 950024084 A KR950024084 A KR 950024084A KR 1019950000739 A KR1019950000739 A KR 1019950000739A KR 19950000739 A KR19950000739 A KR 19950000739A KR 950024084 A KR950024084 A KR 950024084A
- Authority
- KR
- South Korea
- Prior art keywords
- value
- bit
- synapse
- calculation
- quot
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
Abstract
본 발명은 신경망 회로(neural network) 및 신경망 회로를 사용한 처리 방안(processing scheme)에 관한 것으로, 각각의 입력값 및 2진 비트 시퀀스(binary bit sequences)로 표기되는 각 입력값에 대응하는 시냅스 계수(synapse weight)와의 시냅스 계산은 대응하는 시냅스 계수의 순차적으로 지정된 비트를 사용함으로써 수행되고, 입력값에 대한 시냅스 연산 결과를 순차적으로 합산하는 합산 연산(summation calcuration)은 합산값을 얻기 위해 수행되고, 규정된 비선형 처리(prescribed threshold processing)는 출력값을 결정하기 위해 획득된 합산값에 적용되고, 획득된 합산값에 규정된 비선형 처리의 전달 특성의 포화 영역(saturation region)에 도달하였는지를 판정하고, 시냅스 연산 및 합산 연산은 대응하는 시냅스 계수의 상위비트(upper bits)로부터 시냅스 연산을 순차적으로 수행하기 위해 제어되며, 획득된 합산값이 포화영역에 도달하였다는 것이 판정될 때는 언제나 시냅스 연산 및 합산 연산을 정지시키는 신경망 회로 및 처리 방안에 관한 것이다.
Description
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제5도는 본 발명에 따르는 신경망 회로의 제1 실시예 신경 회로 및 처리 방안의 블럭도.
제6도는 제5도의 신경 회로에서의 초기 합산값을 얻기위한 바람직한 계산을 나타낸 개략도.
제7도는 제5도의 신경 회로에서의 비선형 장치 전달 특성의 그래프로서 제5도의 신경 회로에 의한 하나의 포화 영역에서 최종 합산값을 얻기 위한 방법을 도시한 도면.
Claims (42)
- 다수의 입력값(input value)을 수신하고 하나의 출력값(output value)을 출력하는 신경망 회로(a neural network circuit)에 있어서 ; 연속적으로 지정된 대응하는 시냅스 계수(synapse weight) 비트를 사용하여, 이진 비트열로 표현되는 각 입력값과 상기 각 입력값에 대응하는 시냅스 계수에 대한 시냅스 계산과, 합산값을 얻기 위하여 상기 입력값에 대한 시냅스 계산 결과를 연속적으로 합산하는 합산 계산을 수행하기 위한 계산 수단과 ; 다수의 시냅스 계수를 저장하기 위한 시냅스 계수 메모리 회로(synapse weight memory circuti)와 ; 상기 시냅스 계수 메모리 회로로부터 상기 계산 수단으로 지정된 시냅스 계수 비트를 선택적으로 판독(read out)하기 위한 메모리 판독 회로와 ; 상기 계산 수단에 의해 얻어지는 상기 합산값에 규정된 비선형 처리(prescribed nonlinear processing)를 적용하여 상기 출력값을 결정하는 비선형 장치(nonlinear unit)와 ; 상기 계산 수단에 의해 얻어지는 상기 합산값이 상기 비선형 장치의 전달 특성(transfer characteristic)의 포화 영역(saturation region)에 도달했는지의 여부를 판정(judge)하기 위한 판정 수단과 ; 상기 대응하는 시냅스 계수의 상위 비트(upperbits)로부터 상기 시냅스 계산을 연속적으로 수행하고, 상기 판정 수단이 상기 계산 수단에 의해 얻어지는 상기 합산값이 상기 포화 영역에 도달했는지의 여부를 판정할때마다 상기 시냅스 계산 및 상기 합산 계산을 중지하도록, 상기 메모리 판독 회로 및 상기 계산 수단을 제어하기 위한 제어 수단을 포함하는 신경망 회로.
- 제1항에 있어서, 상기 계산 수단은 각 하나의 비트에 대한 부분(partial) 시냅스 계산 결과를 얻기 위하여 상기 각 입력값의 모든 비트와 상기 상위 비트로부터 연속적으로 지정된 각 하나의 상기 대응하는 시냅스 계수 비트를 사용하고, 상기 각 하나의 비트의 상위 비트들에 대한 이전의 부분 시냅스 계산 결과(previous partial synapse calculation results)를 가지는 상기 각 하나의 비트에 대한 각 부분 시냅스 계산 결과를 가산(add)하므로써, 연속적으로 상기 시냅스 계산을 수행하는 신경망 회로.
- 제2항에 있어서, 상기 계산 수단은 ; 상기 각 입력값의 모든 비트들을 쉬프팅하기 위한 시프터(shifter)와 ; 현행 합산값을 축적(registering)하기 위한 레지스터 수단(register means)과 ; 상기 쉬프터의 출력과 상기 레지스터 수단에 축적된 상기 현행 합산값을 가산하고, 가산 결과에 의해 상기 레지스터 수단의 상기 현행 합산값을 갱신하기 위한 가산기와 ; 상기 가산기가 상기 합산 계산에서 필요한 시냅스 계산 결과를 연속적으로 합산하고, 상기 각 입력값의 모든 비트와 상기 시냅스 계산에 필요한 상기 각 하나의 대응하는 시냅스 계수 비트에 대한 각각의 부분 시냅스 계산 결과의 가산을 수행하도록, 상기 가산기 및 상기 쉬프터를 제어하기 위한 제어기를 포함하는 신경망 회로.
- 제3항에 있어서, 상기 계산 수단은, 지정된 입력값의 모든 비트를 반전된 부호(sign)를 가지는 상기 지정된 입력값으로 표현하는 보수 표현(complementary expression)으로 변환시키기 위한 보수 표현변환 수단을 더 포함하므로써, 상기 쉬프터가 상기 지정된 입력값에 대하여 상기 보수 표현의 모든 비트를 쉬프트하고 ; 상기 레지스터 수단은, 단조 감소 계산(monotonously decreasing calculations)에 대한 제1합산값을 축적하기 위한 제1 레지스터와, 단조 증가 계산(monotonously increasing calculation)에 대한 제2 합산값을 축적하기 위한 제2 레지스터를 포함하므로써, 상기 가산기는 상기 쉬프터의 출력과 상기 제1 및 제2 레지스터에 축적된 상기 제1 및 제2 합산값중의 하나를 가산하고, 상기 가산 결과에 의해 상기 제1 및 제2 레지스터의 상기 제1 및 제2 합산값중의 하나를 갱신하되 ; 상기 제1 레지스터는 상기 제1 합산값의 초기값을 반전된 부호를 가지는 상기 시냅스 계산 결과에 의해 취할 수 있는 최대값으로 설정하는 반면, 상기 제2 레지스터는 상기 제2 합산값의 초기값을 상기 시냅스 계산 결과에 의해 취할 수 있는 최소값으로 설정하고, 상기 계산 수단은, 상기 각 입력값이 양(positive)일때, 상기 대응하는 시냅스 계수의 상기 i번째 비트가 비트값“1”을 가지면 상기 제2 합산값에, 비트값“0”을 가지면 상기 제1 합산값에, “각 입력값 × 2i”를 가산하고, 이와 달리, 상기 각 입력값이 음(negative)일때에는, 상기 대응하는 시냅스 계수의 상기 i번째 비트가 비트값“1”을 가지면 상기 제1 합산값에 비트값“0”을 가지면 상기 제2 합산값에, 반전된 부호를 가지는 각 입력값 × 2i”를 가산하므로써,, 각 입력값의 모든 비트와 상기 대응하는 시냅스 계수의 최하위 비트로부터 상기 i번째 비트에 대하여 상기 시냅스 계산을 수행하는 신경망 회로.
- 제3항에 있어서, 상기 레지스터 수단은 단조 감소 계산에 대한 제1 합산값을 축적하기 위한 제1레지스터와, 단조 증가 계산에 대한 제2합산값을 축적하기 위한 제2 레지스터를 포함하므로써, 상기 가산기는 상기 쉬프터의 출력과, 상기 제1 및 제2 레지스터에 축적된 상기 제1 및 제2 합산값을 가산하고, 상기 가산 결과에 의해 상기 제1 및 제2 레지스터의 상기 제1 및 제2 합산값중의 하나를 갱신하고 ; 상기 제1 레지스터는 상기 제1 합산값의 초기값을 [(반전된 부호를 가지는 상기 시냅스 계산 결과에 의해 취할 수 있는 최대값) + (상기 전달 특성의 과도 영역(transient region)의 하위 경계값(lower boundary value))]으로 설정하고, 반면에, 상기 제2 레지스터는 상기 제2 합산값의 초기값을 [(상기 시냅스 계산 결과에 의해 취해질 수 있는 최소값) - (상기 과도 영역의 상위 경계값)]으로 설정하고 ; 상기 판정 수단은, 제1 및 제2 합산값의 최상위 비트중의 하나가“1”에서“0”으로 변경될때, 상기 계산 수단에 의해 얻어지는 상기 합산값이 상기 포화 영역에 도달했는지의 여부를 판정하는 신경망 회로.
- 제3항에 있어서, 상기 계산 수단은 지정된 입력값의 모든 비트를 반전된 부호를 가지는 상기 지정된 입력값으로 표현하는 보수 표현으로 변환하기 위한 보수 표현 변환 수단을 더 포함하므로써, 상기 쉬프터는 상기 지정된 입력값에 대한 상기 보수 표현의 모든 비트들을 쉬프트하고, 상기 레지스터 수단은, 단조 감소 계산에 대한 제1 합산값을 축적하기 위한 제1 레지스터와, 단조 증가 계산에 대한 제2 합산값을 축적하기 위한 제2 레지스터를 포함하므로써, 상기 가산기는 상기 쉬프터의 출력과, 상기 제1 및 제2 레지스터에 축적된 상기 제1 및 제2 합산값중의 하나를 가산하고, 상기 가산 결과에 의해 상기 제1 및 제2 레지스터의 상기 제1 및 제2 합산값중의 하나를 갱신하되 ; 상기 제1 레지스터는 상기 제1 합산값의 초기값을 상기 시냅스 계산 결과에 의해 취할 수 있는 최대값으로 설정하는 반면, 상기 제2 레지스터는 상기 제2 합산값의 초기값을 반전된 부호를 가지는 상기 시냅스 계산 결과에 의해 취할 수 있는 최소값으로 설정하고 ; 상기 계산 수단은, 상기 각 입력값이 양(positive)일때, 상기 대응하는 시냅스 계수의 상기 i번째 비트가 비트값 “1”을 가지면 상기 제2 합산값에, 비트값“0”을 가지면 상기 제1 합산값에, “반전된 부호를 가지는 각 입력값 × 2i”를 가산하고 이와 달리, 상기 각 입력값이 음(negative)일때에는, 상기 대응하는 시냅스 계수의 상기 i번째 비트가 비트값“1”을 가지면 상기 제1 합산값에, 비트값 “0”을 가지면 상기 제2 합산값에 “각 입력값 × 2i”를 가산하므로써, 상기 각 입력값의 모든 비트와 상기 대응하는 시냅스 계수의 최하위 비트로부터 상기 i번째 비트에 대하여 상기 시냅스 계산을 수행하는 신경망 회로.
- 제3항에 있어서, 상기 레지스터 수단은 단조 감소 계산에 대한 제1 합산값을 축적하기 위한 제1 레지스터와, 단조 증가 계산에 대한 제2 합산값을 축적하기 위한 제2 레지스터를 포함하므로써, 상기 가산기는 상기 쉬프터의 출력과, 상기 제1 및 제2 레지스터에 축적된 상기 제1 및 제2 합산값을 가산하고, 상기 가산 결과에 의해 상기 제1 및 제2 레지스터의 상기 제1 및 제2 합산값중의 하나를 갱신하고 ; 상기 제1 레지스터는 상기 제1 합산값의 초기값을 [(상기시냅스 계산 결과에 의해 취할 수 있는 최대값) - (상기 전달 특성의 과도 영역의 하위 경계값)]으로 설정하고, 반면에, 상기 제2 레지스터는 상기 제2 합산값의 초기값을 [(상기 반전된 부호를 가지는 상기 시냅스 계산 결과에 의해 취해질 수 있는 최소 값) + (상기 과도 영역의 상위 경계값)]이 되도록 설정하고, 상기 판정수단은, 상기 제1 및 제2 합산값의 최상위 비트중의 하나가“0”에서“1”으로 변경될때 상기 계산 수단에 의해 얻어지는 상기 합산값이 상기 포화 영역에 도달하는지의 여부를 판정하는 경망회로.
- 제1항에 있어서, 상기 계산 수단은 상기 연속적으로 실행되는 시냅스 계산처리에 따라 단조 증가 혹은 감소하는 상기 합산값에 대한 상기 합산값의 초기값을 가지는 신경망 회로.
- 제18항에 있어서, 상기 계산 수단은, 상기 합산값의 초기값이 단조 감소 계산에대하여 반전된 부호를 가지는 상기 시냅스 계산 결과에 의해 취해질 수 있는 최대값으로 설정하는 반면, 상기 합산값의 초기값을 단조 증가 계산에 대한 상기 시냅스 계산 결과에 의해 취해질 수 있는 최소값으로 설정하는 신경망 회로.
- 제1항에 있어서, 상기 계산 수단은, 상기 각 입력값의 각 하나의 비트와 상기 각 하나의 대응하는 시냅스 계수 비트에 대한 부분 시냅스 계산 결과를 얻기위하여, 각 입력값의 각 하나의 비트와 상기 상위 비트로부터 연속적으로 지정된 상기 각 하나의 대응하는 시냅스 계수 비트를 사용하고, 상기 각 입력값의 각 하나의 비트의 상위 비트와 상기 대응하는 각 하나의 시냅스 계수 비트에 대한 이전의 부분 시냅스 계산 결과에 상기 각 입력값의 각 하나의 비트와 상기 대응하는 각 하나의 시냅스 계수 비트에 대한 각 부분 시냅스 계산 결과를 가산하므로써, 연속적으로 상기 시냅스 계산을 수행하는 신경망 회로.
- 제10항에 있어서, 상기 계산 수단은 ; 상기 각 입력값의 하나의 비트와 상기 각 하나의 대응하는 시냅스 계수 비트의 곱(product)을 계산하기 위한 1-비트 승산기(one bit multiplicator)와 ; 현행 합산값을 축적하기 위한 레지스터 수단과 ; 상기 1-비트 승산기의 출력과 상기 레지스터 수단에 축적된 상기 현행 합산값의 지정된 비트를 가산하고, 가산 결과에 의해 상기 레지스터 수단의 상기 현행 합산값의 지정된 비트를 갱신하기위한 1-비트 가산기와 ; 상기 1-비트 가산기가 상기 합산 계산시에 필요한 시냅스 계산 결과를 연속적으로 가산하고 상기 각 입력값의 각 하나의 비트와 상기 각 하나의 대응하는 시냅스 계수 비트에 대한 각 부분 시냅스 계산 결과의 가산을 수행하도록, 상기 1-비트 가산기와 상기 1-비트 승산기를 제어하기 위한 제어기를 포함하는 신경망 회로.
- 제11항에 있어서, 상기 제어기는 또한, 상기 1-비트 승산기 및 상기 1-비트 가산기를 제어하여, 비트값“0”을 가지는 각 입력 비트에 대해서는 상기 1-비트 승산기 및 상기 1-비트 가산기의 동작을 생략하는 신경망 회로.
- 제11항에 있어서, 상기 레지스터 수단은 단조 감소 합산값의 초기값을, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 양일때에는 [(상기 각 입력값의 비트 값“1”에 대응하는 부분 곱이 전체적으로 “1”로 구성되도록 설정되는, 상기 대응하는 시냅스 계수의 절대값부분의 모든 비트와, 상기 각 입력값의 각 비트와의 부분 곱의 총 값) + (상기 전달 특성의 과도영역의 하위 경계값)]으로 설정하고, 반면에, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 음 일때에는 [“O” + (상기 과도 영역의 하위 경계값)]으로 설정하고,, 단조 증가 합산값의 초기값을, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 양일때는[“O”-(상기 과도 영역의 상위 경계값)]으로 설정하고, 이와 달리, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 음일때는[(상기 각 입력값의 비트값 “1”에 대응하는 부분 곱이 전체적으로 최상위 비트를 제외하고는 전체적으로“0”으로 구성 되는, 상기 대응하는 시냅스 계수의 절대값 부분의 모든 비트와 1의 보수 표현으로 변환된 각 입력값의 각 비트와의 부분 곱의 총 값) - (상기 과도 영역의 상위 경계값)]으로 설정하고, 상기 판정 수단은 상기 제1 및 제2 합산값의 최상위 비트중의 하나로부터 숫자(figure)를 운송할 필요가 있을때, 상기 계산 수단으로부터 얻어지는 상기 합산값이 상기 포화영역에 도달했는지의 여부를 판정하는 경망 회로.
- 제10항에 있어서, 상기 계산 수단은 ; 상기 각 입력값과 상기 대응하는 시냅스 계수의 비트를 비트단위로 곱하기 위한 1-비트 승산기와 ; 단조 감소 계산에 대한 제1 합산값을 축적하기 위한 제1 레지스터와, 단조 증가 계산에 대한 제2 합산값을 축적하기 위한 제2레지스터를 포함하는 레지스터수단으로서, 상기 제1 레지스터는 상기 제1 합산값의 초기값을, 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 양 일때는 상기 각 입력값에서 비트값 “1”에 대응하는 부분 곱이 전체적으로 “1”로 구성되며, 이와 달리 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 음일때에는 상기 각 입력값에서 비트값“1”에 대응하는 부분 곱이 전체적으로“0”으로 구성되는, 상기 각 입력값의 각 비트와 상기 대응하는 시냅스 계수의 절대값 부분의 모든 비트와의 부분 곱의 총 값으로 정하고, 반면에, 제2레지스터는 상기 제2 합산값의 초기값을, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 양일때는“0”으로 설정하고, 상기 각 입력과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 음일때는 상기 각 입력값의 비트값“1”에 대응하는 부분곱이 최상위 비트를 제외하고는 전체적으로“0”으로 설정되는, 1의 보수 표현으로 변환된 상기 각 입력값의 각 비트와 상기 대응하는 시냅스 계수의 절대값 부분의 모든 비트의 부분곱의 총 값으로 설정하는 상기 레지스터 수단과 ; 상기 레지스터 수단에 축적된 상기 제1 및 제2 합산값중의 지정된 하나의 비트와“1”을 가산하고, 상기 1-비트 승산기에 의해 얻어지는 상기 곱에 따르는 가산 결과에 의해 상기 레지스터 수단에 축적된 상기 제1 및 제2 합산값중의 하나의 지정된 비트를 갱신하기 위한 1-비트 가산기로서, 상기 곱이 양의 부호이고 상기 곱의 지정된 비트가 비트값“0”을 가지거나, 혹은, 상기 곱이 음의 부호이고 상기 곱의 지정된 비트가 비트값“1”을 가질때는 상기 제1 합산값에 동작하고, 반면에, 상기 곱이 양의부호를 가지고 상기 곱의 지정된 비트가 비트값을 가지거나 혹은, 상기 곱이 음의 부호를 가지고 상기 곱의 지정된 비트가 비트값“0”을 가질때는 상기 제2 합산값에 동작하는 상기 1-비트 가산기와 ; 상기 1-비트 가산기가 상기 각 입력값의 각 하나의 비트와 상기 시냅스 계산에 필요한 상기 각 하나의 대응하는 시냅스 계수 비트에 대한 각 부분 시냅스 계산 결과를 가산하고, 상기 제1 및 제2 합산값에 대한 상기 합산 계산에 필요한 시냅스 계산 결과를 연속적으로 합산하도록 상기 1-비트 가산기를 제어하기 위한 제어기를 포함하고, 상기 판정 수단은 상기 계산 수단에 의해 얻어지는 상기 제1 및 제2 합산값의 각각이 상기 포화 영역에 도달했는지의 여부를 판정하는 신경망 회로.
- 제14항에 있어서, 상기 제어기는 또한 상기 1-비트 승산기와 상기 1-비트 가산기를 제어하여, 비트값“0”을 가지는 상기 각 입력값의 하나의 비트에 대해서는 상기 1-비트 승산기 및 상기 1-비트 가산기의 동작을 생략하는 신경망 회로.
- 제10항에 있어서, 상기 계산 수단은 ; 상기 각 입력값과 상기 대응하는 시냅스 계수 비트를 비트 단위로 곱하기 위한 1-비트 승산기와 ; 단조 감소 계산에 대한 제1합산값을 축적하기 위한 제1 레지스터와 단조 증가 계산에 대한 제2 합산값을 축적하기 의한 제2 레지스터를 포함하는 레지스터 수단으로서, 상기 제1 레지스터는, 상기 제1 합산값의 초기값을, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 양일때에는, [(상기 각 입력값에서 비트값 “1”에 대응하는 부분곱이 전체적으로“1”로 구성되도록 설정되는 상기 각 입력값의 각 비트와, 상기 대응하는 시냅스 계수의 절대값부분의 모든 비트와의 부분 곱의 총 값) + (상기 전달 특성의 과도 영역의 하위 경계값)]으로 설정하며, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산이 음일때는 [“0”+ (상기 과도 영역의 하위 경계값)]으로 설정하고, 반면에, 상기 제2 레지스터는 상기 제2 합산값의 초기값을, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 양일때는 [“0” +(상기 과도 영역의 상위 경계값)]으로 설정하며, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 음일때는 [(상기 각 입력에서 비트값“1”에 대응하는 부분곱이 최상위 비트를 제외하고는 전체적으로“0”으로 구성되도록 설정되는 1의 보수 표현으로 변환된 상기 각 입력값의 각 비트와 상기 대응하는 시냅스 계수의 절대값 부분의 모든 비트와의 부분 곱의 총 값) - (상기 과도 영역의 상위 경계값)]으로 설정하는 상기 레지스터 수단과 ; 상기 레지스터 수단에 축적된 상기 제1 및 제2 합산값중의 하나의 지정된 하나의 비트와“1”을 가산하고, 상기 1-비트 승산기에 의해 얻어지는 상기 곱에 따르는 가산 결과에 의해 상기 레지스터 수단에 축적된 상기 제1 및 제2 합산값중의 하나의 지정된 비트를 갱신하기 위한 1-비트 가산기로서, 상기 곱이 양의 부호이고 상기 곱의 지정된 비트가 비트값“0”을 가지거나 혹은 상기 곱이 음의 부호이고 상기 곱의 지정된 비트가 비트값“1”을 가질때는 상기 제1 합산값에 동작하고, 반면에, 상기 곱이 양의 부호를 가지고 상기 곱의 지정된 비트가 비트값“1”을 가지거나, 혹은, 상기 곱이 음의 부호를 가지고 상기 곱의 지정된 비트가 비트값“0”을 가질때는 상기 제2 합산값에 동작하는 상기 1-비트 가산기와 ; 상기 1-비트 가산기가 상기 각 입력값의 각 하나의 비트와 상기 시냅스 계산에 필요한 상기 각 하나의 대응하는 시냅스 계수 비트에 대한 각 부분 시냅스 계산 결과를 가산하고, 상기 제1 및 제2 합산값에 대한 상기 합산 계산에 필요한 시냅스 계산 결과를 연속적으로 합산토록 상기 1-비트 가산기를 제어하기 위한 제어기를 포함하고, 상기 판정 수단은 상기 제1 및 제 2 합산값의 최상위 비트중의 하나로부터 숫자(figure)를 운송할 필요가 있을때, 상기 계산 수단으로부터 얻어지는 상기 합산값이 상기 포화영역에 도달 했는지의 여부를 판정하는 신경망 회로.
- 신경망 시스템에 있어서 ; 각각이 다수의 입력값을 수신하고 하나의 출력값을 출력하며, 서로에 관하여, 독립적으로 동작하는 다수의 신경망 회로와 ; 입력값의 모든 비트와, 각 하나의 비트에 관한 부분 시냅스 계산 결과를 얻기 위하여 상위 비트로부터 연속적으로 지정된 이에 대응하는 각 하나의 시냅스 계수 비트를 사용하고, 상기 각 하나의 비트의 상위 비트에 관한 이전의 부분 시냅스 계산 결과에 상기 각 하나의 비트에 관한 각 부분 시냅스 계산 결과를 가산하므로써, 이진 비트열로 표현되는 상기 각 입력값의 모드 비트와 상기 각 입력값의 대응하는 시냅스 계수에 대한 시냅스 계산을 수행하는 계산 수단과, 다수의 시냅스 계수를 저장하기 위한 시냅스 계수 메모리 회로와 ; 상기 시냅스 계수 메모리 회로로부터 상기 계산 수단으로 지정된 시냅스 계수의 지정된 비트를 선택적으로 판독하기 위한 메모리 판독 회로와 ; 상기 출력값을 결정하기 위하여, 상기 계산 수단에 의해 얻어지는 상기 합산값에 규정된 비선형 처리를 적용하는 비선형 장치와 ; 상기 계산 수단에 의해 얻어지는 상기 합산값이 상기 비선형장치의 전달 특성의 포화영역에 도달했는지의 여부를 판정하기 위한 판정 수단과, 상기 대응하는 시냅스 계수의 상위 비트로부터 상기 시냅스 계산을 연속적으로 수행하고, 상기 판정 수단이 상기 계산수단에 의해 얻어지는 상기 합산값이 상기 포화 영역에 도달했는지의 여부를 판정할때마다, 상기 시냅스 계산 및 상기 합산 계산을 중지 하도록, 상기 메모리 판독 회로 및 상기 계산 수단을 제어하는 제어수단과 ; 신경망 회로에 상기 다수의 입력값을 연속적으로 제공하여, 상기 다수의 입력값중의 동일한(identical) 하나의 입력값이 상기 다수의 신경망 회로의 모두에 동시에 제공되도록 하는 공통 입력값 레지스터(common input value register)를 포함하는 신경망 시스템.
- 다수의 입력값을 수신하고 하나의 출력값을 출력하기 위한 신경망 회로에 있어서 ; 상기 다수의 입력값에 대응하는 다수의 기준 입력값을 저장하기 위한 기준 입력값 레지스터 수단과 ; 각 입력값에 대한 입력차(input difference)를 얻기 위하여, 상기 각 입력값과 상기 다수의 기준 입력값중의 대응하는 하나의 기준 입력값 사이의 차이를 계산하는 감산 수단(subtractor means)과, 상기 각 입력차와 상기 각 입력값에 대응하는 시냅스 계수에 대한 시냅스 계산과 ; 합산값을 얻기 위하여 시냅스 계산 결과를 합산하는 합산 계산을 수행하기 위한 계산 수단과 다수의 시냅스 계수를 저장하기 위한 시냅스 계수 메모리 회로와 ; 상기 시냅스 계수 메모리 회로로부터 상기 계산 수단으로 상기 대응하는 시냅스 계수를 선택적으로 판독하기 위한 메모리 판독 회로와 ; 상기 출력값을 결정하기 위하여, 상기 계산 수단에 의해 얻어지는 상기 합산값에 규정된 비선형 처리를 적용하는 비선형 장치와 ; 상기 각 입력값과 상기 다수의 기준 입력값중 이에 대응하는 하나의 기준 입력값의 일치성(coincidence)을 검출하기 위한 일치성 검출 수단과 ; 상기 다수의 기준 입력값에 대응하는 기준 출력값을 저장하기 위한 기준 출력값 레지스터 수단과 ; 상기 비선형 장치에 의해 얻어지는 상기 하나의 출력값과 상기 기준 출력값 레지스터 수단에 저장된 상기 기준 출력값을 선택적으로 출력하기 위한 스위치 수단(switch means)과 ; 상기 일치성 검출 수단에 의해 검출된 상기 일치성에 따라 상기 계산 수단 및 상기 스위치 수단을 제어하기 위한 제어 수단으로서, 상기 일치성 검출 수단이 상기 일치성을 출력할때마다 상기 스위치 수단이 상기 기준 출력값 레지스터 수단에 저장된 상기 기준 출력값을 선택적으로 출력하는 동안에는 상기 계산 수단이 상기 시냅스 계산 및 상기 합산 계산을 중지하고, 상기 스위치 수단이 비선형 장치에 의해 얻어지는 상기 출력값을 선택적으로 출력하는 동안에 상기 계산 수단은 상기 시냅스 계산 및 상기 합산 계산을 수행하도록 하는 상기 제어 수단 포함하는 신경망 회로.
- 제18항에 있어서, 상기 제어 수단은 또한, 상기 감산 수단에 의해 얻어지는 상기 입력차의 부호와 상기 대응하는 시냅스 계수의 부호에 따라 상기 계산 수단 및 상기 스위치 수단을 제어하므로써, 상기 입력차의 부호와 상기 대응하는 시냅스 계수로부터 판정되는 상기 합산값의 변경방향이 상기 비선형 장치의 전달 특성에서 포화 영역과 과도 영역간의 경계값에 근접하는 방향일때, 상기 스위치수단이 상기 비선형 장치에 의해 얻어지는 상기 출력값을 선택적으로 출력하는 동안에는, 상기 계산 수단이 상기 시냅스 계산 및 상기 합산 계산을 수행하며, 상기 스위치 수단이 상기 기준 출력값 레지스터에 저장된 상기 기준 출력값을 선택적으로 출력하는 동안에는 상기 계산 수단이 상기 시냅스 계산 및 상기 합산 계산을 중지하는 하는 신경망 회로.
- 제19항에 있어서, 상기 시냅스 계수 메모리 회로로부터 다수의 시냅스 계수의 각각의 부호를 독립적으로 저장하기 위한 시냅스 계수 부호 메모리 회로와 ; 상기 시냅스 계수 부호 메모리 회로로부터 상기 제어 수단으로, 상기 대응하는 시냅스 계수의 부호를 선택적으로 판독하기위한 부호 판독 회로 더 포함하는 신경망 회로.
- 제18항에 있어서, 상기 계산 수단에 의한 상기 합산값이 비선형 장치의 전송특성인 포화영역에 도달했는지의 여부를 판정하기 위한 판정 수단을 더 포함하고, 상기 계산 수단은 상기 각 입력차와, 연속적으로 지정된 상기 대응하는 시냅스 계수 비트를 사용하여, 상기 이진 비트열로 표현되는 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산을 수행하고, 상기 메모리 판독 회로는 상기 시냅스 계수 메모리 회로로부터 상기 계산 수단으로, 지정된 시냅스 계수의 지정된 비트를 선택적으로 판독하고, 상기 제어 수단은 상기 대응하는 시냅스 계수의 상위 비트로부터 상기 시냅스 계산을 연속적으로 수행하고, 상기 제어 수단은, 상기 판정 수단이 상기 계산 수단에 의해 얻어지는 상기 합산값이 상기 포화 영역에 도달했는지의 여부에 대하여 판정할때 마다, 상기 시냅스 계산 및 상기 합산 계산을 중지하기 위하여 상기 메모리 판독 회로 및 상기 계산 수단을 제어하는 경망 회로.
- 다수의 입력값을 수신하고 하나의 출력값을 출력하는 신경망 회로를 사용하는 처리 방안(processing scheme)에 있어서; (a) 이진 비트열로 표현되는 각 입력값과 상기 각 입력값에 대응하는 시냅스 계수에 대하여, 상기 대응하는 시냅스 계수의 연속적으로 지정된 비트를 사용하여 시냅스 계산을 수행하고, 합산값을 얻기 위하여 상기 입력값에 대한 시냅스계산 결과를 연속적으로 합산하는 합산 계산을 수행하는 단계와 ; (b) 상기 출력값을 판정하기 위하여, 규정된 비선형 처리를 상기 단계(a)에서 얻어진 상기 합산값에 적용하는 단계와 ; (c) 상기 단계(a)에서 얻은 상기 합산값이 상기 단계(b)에서 적용된 상기 규정된 비선형 처리의 전달 특성의 포화 영역에 도달했는지의 여부를 판정하는 단계와; (d) 상기 대응하는 시냅스 계수의 상위 비트로부터 상기 시냅스 계산을 연속적으로 수행하고, 상기 단계(C)가 상기 단계(a)에서 얻어진 상기 합산값이 상기 포화영역에 도달 했는지의 여부를 판정할때마다, 상기 시냅스 계산 및상기 합산 계산을 중지하도록 상기 단계(a)를 제어하는 단계를 포함하는 처리 방안.
- 제22항에 있어서, 상기 단계(a)는, 각 하나의 비트에 대한 부분 시냅스 계산결과를 얻기 위하여, 각 입력값의 모든 비트와 상기 상위 비트로부터 연속적으로 지정된 상기 대응하는 시냅스 계수의 상기 각 하나의 비트를 사용하고, 상기 각 하나의 비트의 상위 비트들에 대한 이전의 부분 시냅스 계산 결과에 상기 각 하나의 비트에 대한 각 부분 시냅스 계산 결과를 가산하므로써, 상기 시냅스 계산을 연속적으로 수행하는 처리 방안.
- 제23항에 있어서, 상기 단계(a)는 (a1) 상기 각 입력값의 모든 비트들을 쉬프팅하는 단계와 ; (a2) 레지스터 수단에 현행 합산값을 축적하는 단계와 ; (a3) 상기 쉬프터의 출력과 가산기에 의해 상기 레지스터 수단에 축적된 상기 현행 합산값을 가산하고, 가산 결과에 의해 상기 레지스터 수단의 상기 현행 합산값을 갱신하는 단계와 ; (a4) 상기 쉬프터 및 상기 가산기를 제어하여, 상기 가산기가 상기 합산 계산에 요구되는 시냅스 계산 결과를 연속적으로 합산하는 가산과, 상기 각 입력값의 모든 비트와 상기 시냅스 계산에 요구되는 상기 각 하나의 대응하는 시냅스 계수 비트에 대한 각 부분 시냅스 계산결과에 대한 가산을 수행하는 단계를 포함하는 처리 방안.
- 제24항에 있어서, 상기 단계(a)는 지정된 입력을 반전된 부호를 가지는 상기 지정된 입력값으로 표현하는 보수 표현으로 변환시키는 단계를 더 포함하여, 상기 쉬프터가 상기 지정된 입력값에 대한 보수 표현의 모든 비트들을 쉬프트하고 ; 상기 레지스터 수단은, 단조 감소 계산에 대한 제1 합산값을 축적하기 위한 제1 레지스터와, 단조 증가 계산에 대한 제2 합산값을 축적하기 위한 제2 레지스터를 포함하므로써, 상기 가산기가 상기 쉬프터의 출력과 상기 제1 및 제2 레지스터에 축적된 상기 제1 및 제2 합산 값중의 하나와 가산하고, 상기 가산 결과에 의해 상기 제1 및 제2 레지스터의 상기 제 1 및 제2 가산값중의 하나를 갱신하고 ; 상기 제1 레지스터는 상기 제1 합산값의 초기값을 반전된 부호를 가지는 상기 시냅스 계산 결과로 취할 수 있는 최대값으로 설정하고, 반면에, 상기 제2 레지스터는 상기 제2 합산값의 초기값을 상기 시냅스 계산 결과로 취할수 있는 최소값으로 설정하고 ; 상기 단계(a)는, 상기 각 입력값이 양일때, 상기 대응하는 시냅스 계수의 i번째 비트가 비트값“1”일때에는 상기 제2 합산값에, 상기 대응하는 시냅스 계수의 i번째 비트가 비트값 “0”일때에는 상기 제1 합산값에, “각 입력값× 2i”를 가산하고, 상기 각 입력값이 음일때, 상기 대응하는 시냅스 계수의 i번째 비트가 비트값“1”일때는 상기 제1 합산값에, 상기 대응하는 시냅스 계수의 i번째 비트가 비트값“0”일때는 상기 제2 합산값에, “반전된 부호를 가지는 각 입력값 × 2i”를 가산하므로써, 상기 각 입력값의 모든 비트와 상기 대응하는 시냅스 계수의 최하위 비트로부터의 i번째 비트에 대한 상기 시냅스 계산을 수행하는 처리방안.
- 제23항에 있어서, 상기 레지스터 수단은, 단조 감소 계산에 대한 제1 합산값을 축적하기 위한 제1 레지스터와, 단조 증가 계산에 대한 제2 합산값을 축적하기 위한 제2 레지스터를 포함하므로써, 상기 가산기는 상기 쉬프터의 출력과 상기 제1 및 제2 레지스터에 축적된 상기 제1 및 제2 합산 값중의 하나를 가산하고, 상기 가산 결과에 의해 상기 제1 및 제2 레지스터의 상기 제1 및 제2 합산 값중의 하나를 갱신하고 ; 상기 제1 레지스터는, 상기 제1 합산값의 초기값을 [(반전된 부호를 가지는 상기 시냅스 계산 결과에 의해 취할 수 있는 최대값) + (상기 전달 특성의 과도 영역의 하위계 값)]으로 설정하고, 반면에, 상기 제2 레지스터는 상기 제2 합산값의 초기값을 [(상기 시냅스 계산 결과에 의해 취할수 있는 최소 값) - (상기 과도 영역의 상위 경계값)]으로 설정하고, 상기 단계(c)는, 상기 제1 및 제2 합산값의 상위 비트중의 하나가“1”에서“0”으로 변경될때, 상기 단계(a)에서 얻어진 상기합산값 이 상기 포화 영역에 도달했는지의 여부를 판정하는 처리 방안.
- 제24항에 있어서, 상기 단계(a)는, 지정된 입력값의 모든 비트를 반전된 부호를 가지는 상기 지정된 입력값으로 표현하는 보수 표현으로 변환하는 단계를 더 포함하여, 상기 쉬프터는 상기 지정된 입력값에 대한 상기 보수 표현의 모든 비트를 쉬프트하고 상기 레지스터 수단은 단조 감소 계산에 대한 제1 합산값을 축적하기 위한 제1 레지스터와, 단조 증가 계산에 대한 제2 합산값을 축적하기 위한 제2 레지스터를 포함하므로써, 상기 가산기는 상기 쉬프터의 출력과 상기 제1 및 제2 레지스터에 축적된 상기 제1 및 제2 합산값중의 하나를 가산하고, 상기 가산 결과에 의해 상기 제1 및 제2 레지스터의 상기 제1 및 제2 합산값중의 하나를 갱신하고 ; 상기 제1 레지스터는 상기 제1 합산값이 초기값을 상기 시냅스 계산 결과에 의해 취할 수 있는 최대값으로 설정하고, 반면에, 상기 제2 레지스터는 상기 제2 합산값의 초기값을 반전된 부호를 가지는 상기 시냅스 계산 결과에 의해 취할 수 있는 최소값으로 설정하고 ; 상기 단계(a)는, 상기 각 입력값이 양일때, 상기 대응하는 시냅스 계수의 i번째 비트가 비트값“1”일때에는 상기 제2 합산값에, 상기 대응하는 시냅스 계수의 i번째 비트가 비트값 “0”일때에는 상기 제1합산값에, “반전된 부호를 가지는 각 입력값 × 2i”를 가산하고 상기 각 입력값이 음일때, 상기 대응하는 시냅스 계수의 i번째 비트가 비트값“1”일때는 상기 제1 합산값에, 상기 대응하는 시냅스 게수의 i번째 비트가 비트값“0”일때는 상기 제2 합산값에, “각 입력값 × 2i”를 가산하므로써, 상기 각 입력값의 모든 비트와 상기 대응하는 시냅스 계수의 최하의 비트로부터의 i번째 비트에 대한 상기 시냅스 계산을 수행하는 처리 방안.
- 제23항에 있어서, 상기 레지스터 수단은, 단조 감소 계산에 대한 제1 합산값을 축적하기 위한 제1 레지스터와, 단조 증가 계산에 대한 제2 합산값을 축적하기 위한 제2 레지스터를 포함하므로써 상기 가산기는 상기 쉬프터의 출력과 상기 제1 및 제2 레지스터에 축적된 상기 제1 및 제2 합산값중의 하나를 가산하고, 상기 가산 결과에 의해 상기 제1 및 제2 레지스터의 상기 제1 및 제2 합산값중의 하나를 갱신하고 ; 상기 제1 레지스터는, 상기 제1 합산값의 초기값을 [(상기시냅스 계산 결과에 의해 취할 수 있는 최대값) + (상기 전달 특성의 과도 영역의 하위 경계값)]으로 설정하고, 반면에, 상기 제2 레지스터는 상기 제2 합산값의 초기값을 [(반전된 부호를 가지는 상기 시냅스 계산 결과에 의해 취할 수 있는 최소값) - (상기 과도 영역의 상위 경계값)]으로 설정하고 ; 상기 단계(c)는, 상기 제1 및 제2 합산값의 최상위 비트중의 하나가“1”에서“0”으로 변경될때, 상기 단계(a)에서 얻어진 상기 합산값이 상기 포화 영역에 도달했는지의 여부를 판정하는 처리 방안.
- 제21항에 있어서, 상기 단계(a)는, 시냅스 계산 처리를 연속적으로 수행함에따라 단조 증가하거나 감소하는 상기 합산값의 초기값을 사용하는 처리방안.
- 제29항에 있어서, 상기 단계(a)는, 단조 감소 계산에 대한 반전된 부호를 가지는 상기 시냅스 결과에 의해 취할 수 있는 최대값으로 설정되는 상기 합산값의 초기값을 사용하거나, 혹은, 단조 증가 계산에 대한 상기 시냅스 계산 결과에 의해 취할 수 있는 최소값으로 설정되는 상기 합산값의 초기값을 사용하는 처리 방안.
- 제21항에 있어서, 상기 단계(a)는, 상기 각 입력값의 각 하나의 비트와 상기 대응하는 시냅스 계수의 각 하나의 비트에 대한 부분 시냅스 계산 결과를 얻기 위하여, 각 입력값의 각 하나의 비트와 상기 상위 비트로부터 연속적으로 지정된 상기 대응하는 시냅스 계수의 상기 각 하나의 비트를 사용하고, 상기 각 입력값의 각 하나의 비트의 상위비트와 상기 대응하는 시냅스 계수의 각 하나의 비트에 대한 이전의 부분 시냅스 계산 결과에 상기 각 이비력값의 각 하나의 비트와 상기 대응하는 시냅스 계수의 각 하나의 비트에 대한 각 부분 시냅스 계산결과를 가산하므로써, 상기 시냅스 계산을 연속적으로 수행하는 처리 방안.
- 제31항에 있어서, 상기 단계(a)는 (a11) 1-비트 승산기를 사용하여, 상기 각 입력값의 각 하나의 비트와 상기 대응하는 시냅스 계수의 각 하나의 비트를 곱하는 단계와 ; (a12) 레지스터 수단에 현행 합산값을 측정하는 단계와 ; (a13) 1-비트 가산기에 의해, 상기 1-비트 승산기의 출력과 상기 레지스터 수단에 축적된 상기 현행 합산값의 지정된 비트를 가산하고, 가산 결과에 의해 상기 레지스터 수단의 상기 현행 합산값의 상기 지정된 비트를 갱신하는 단계와 ; (a14) 상기 1-비트 승산기와 상기 1-비트 가산기를 제어하여 상기 1-비트 가산기가 상기 합산 계산에 필요한 시냅스계산 결과를 연속적으로 합산하고, 상기 각 입력값의 각 하나의 비트와 상기 시냅스 계산에 필요한 상기 대응하는 시냅스 계수의 각 하나의 비트에 대한 각 부분 시냅스 계산 결과를 가산하는 단계를 포함하는 처리 방안.
- 제32항에 있어서, 상기 단계(a14)는 또한, 상기 1-비트 승산기 및 상기 1-비트 가산기를 제어하여, 비트 값“0”을 가지는 상기 각 입력값의 하나의 비트에 대해서는 상기 1-비트 승산기 및 상기 1-비트 가산기의 동작을 생략하는 처리 방안.
- 제32항에 있어서, 상기 레지스터 수단은, 단조 감소 합산값의 초기값을, 상기 및 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 양일때에는 [(상기 각 입력값의 비트값 “1”에 대응하는 부분 곱이 전체적으로“1”로 구성되도록 설정되는, 상기 대응하는 시냅스 계수의 절대값부분의 모든 비트와, 상기 각 입력값의 각 비트와의 부분 곱의 총 값) + (상기 전달 특성의 과도영역의 하위 경계값)]으로 설정하고, 이와달리, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 양일때에는[“0” + (상기 과도 영역의 하위 경계값)]으로 설정하고, 단조 증가 합산값의 초기값을, 상기 및 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 양일때는 [“0” - (상기 과도 영역의 상위 경계값)]으로 설정하고, 이와 달리, 상기 각 입력값과 상기, 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 음일때는[(상기 각 입력값의 비트 값 “1”에 대응하는 부분 곱이 전체적으로 최상위 비트를 제외하고는 전체적으로“0”으로 구성되는, 상기 대응하는 시냅스 계수의 절대값 부분의 모든 비트와 1의 보수 표현으로 변환된 각 입력값의 각 비트와의 부분 곱의 총 값) - (상기 과도 영역의 상위 경계값)]으로 설정하고, 상기 단계(c)는 상기 제1 및 제2 합산값의 최상위 비트중의 하나로부터 숫자를 운송할 필요가 있을때, 상기 단계(a)에서 얻어진 상기 합산값이 상기 포화 영역에 달했는지의 여부를 판정하는 처리 방안.
- 제31항에 있어서, 상기 단계(a)는 ; (a21) 1-비트 승산기가 상기 각 입력값과 상기 대응하는 시냅스 계수의 곱을 비트 단위로 계산하는 단계와 ; (a22) 단조 감소 계산에 대한 제1 합산값을 축적하기 위한 제1 레지스터와 단조 증가 계산에 대한 제2 합산값을 축적하기 위한 제2 레지스터를 포함하는 레지스터 수단으로서, 상기 제1 레지스터는, 상기 제1합산값의 초기값을, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 양일때에는, 상기 각 입력값에서 비트 값“1”에 대응하는 부분곱이 전체적으로“1”로 구성되도록 설정되는 상기 각 입력값의 각 비트와, 상기 대응하는 시냅스 계수의 절대값부분의 모든 비트와의 부분 곱의 총 값으로 설정하며, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산이 음일때는“0”으로 설정하고, 반면에, 상기 제2 레지스터는 상기 제2 합산값의 초기값을, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 양일때는“0”으로 설정하며, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 음일때는 상기 각 입력에서 비트값“1”에 대응하는 부분곱이 최상위 비트를 제외하고는 전체적으로“0”으로 구성되도록 설정되는 1의 보수표현으로 변환된 상기 각 입력값의 각 비트와 상기 대응하는 시냅스 계수의 절대값 부분의 모든 비트와의 부분 곱의 총 값으로 설정하는 상기 레지스터 수단을 제공하는 단계와 ; (a23) 1-비트 가산기가“1”과 상기 레지스터 수단에 축적된 상기 제1 및 제2 합산값중의 하나의 지정된 비트를 가산하고 상기 1-비트 승산기에 의해 얻어진 상기 곱에 따르는 가산 결과에 의해 상기 레지스터 수단의 상기 제1 및 제2 합산값중의 상기 하나의 지정된 비트를 갱신하므로써, 상기 곱이 양의 부호를 가지고 상기 곱의 지정된 비트가 비트값“0”이거나, 혹은, 상기 곱이 음의 부호를 가지고 상기 곱의 지정된 비트가 비트값 1을 가질때 상기 1-비트 가산기는 상기 제1 합산값에 동작하고, 반면에, 상기 곱이 양의 부호를 가지고 상기 곱의 지정된 비트가 비트값“1”을 가지거나, 혹은, 상기 곱이 음의 부호를 가지고 상기 곱의 지정된 비트가 비트값“0”을 가질때, 상기 1-비트 가산기는 상기 제2 합산 값에 동작하는 단계와 ; (a24) 상기 1-비트 가산기를 제어하여, 상기 1-비트 가산기가 상기 제1 및 제2 합산 값에 대한 상기 합산 계산에 필요한 시냅스 계산 결과를 연속적으로 합산하고, 상기 각 입력값의 각 하나의 비트와 상기 시냅스 계산에 필요한 상기 대응하는 시냅스 계수의 각 하나의 비트에 대한 각 부분 시냅스 계산 결과의 가산을 수행하는 단계를 포함하고, 상기 단계(c)는 상기 계산 수단에 의해 얻어지는 상기 제1 및 제2 합산값의 각각이 상기 포화영역에 도달했는지의 여부를 판정하는 처리 방안.
- 제35항에 있어서, 상기 단계(a)는, 또한, 상기 1-비트 승산기 및 상기 1-비트 가산기를 제어하여, 비트 값“0”을 가지는 상기 각 입력값의 하나의 비트에 대해서는 상기 1-비트 승산기 및 상기 1-비트 가산기의 동작을 생략하는 처리 방안.
- 제31항에 있어서, 상기 단계(a)는 (a31) 1-비트 승산기가 비트단위로 상기 각 입력값과 상기 대응하는 시냅스 계수의 곱을 계산하는 단계와 ; (a32) 단조 감소 계산에 대한 제1 합산값을 축적하기 위한 제1 레지스터와 단조 증가 계산에 대한 제2 합산값을 축적하기 위한 제2 레지스터를 포함하는 레지스터 수단으로서, 상기 제1 레지스터는, 상기 제1 합산값의 초기값을, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대해 상기 스냅스 계산 결과가 양일때에는, [(상기 각 입력값에서 비트값“1”에 대응하는 부분곱이 전체적으로“1”로 구성되도록 설정되는 상기 각 입력값의 각 비트와 상기 대응하는 시냅스 계수의 절대값부분의 모든 비트와의 부분 곱의 총 값) + (상기 전달 특성의 과도 영역의 하위 경계값)]으로 설정하며, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산이 음일때는 [“0” + (상기 과도 영역의 하위 경계값)]으로 설정하고, 반면에, 상기 제2 레지스터는 상기 제2 합산값의 초기값을, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 양일때는 [“0”- (상기 과도 영역의 상위 경계값)]으로 설정하며, 상기 각 입력값과 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산 결과가 음일때는 [(상기 각 입력에서 비트값“1”에 대응하는 부분곱이 최상위 비트를 제외하고는 전체적으로“0”으로 구성되도록 설정되는 1의 보수 표현으로 변환된 상기 각 입력값의 각 비트와 상기 대응하는 시냅스 계수의 절대값 부분의 모든 비트와의 부분 곱의 총 값)]으로 설정하는 상기 레지스터 수단을 제공하는 단계와 ; (a33) 1-비트 가산기가 “1”과 상기 레지스터 수단에 축적된 상기 제1 및 제2 합산 값중의 하나의 지정된 비트를 가산하고, 상기 1-비트 승산기에 의해 얻어진 상기 곱에 따르는 가산 결과에 의해 상기 레지스터 수단의 상기 제1 및 제2 합산값 중의 상기 하나의 지정된 비트를 갱신 하므로써, 상기 곱이 양의 부호를 가지고 상기 곱의 지정된 비트가 비트값“0”이거나, 혹은 상기 곱이 음의 부호를 가지고 상기 곱의 지정된 비트가 비트값“1”을 가질때, 상기 1-비트 가산기는 상기 제1 합산값에 동작하고, 반면에, 상기 곱이 양의 부호를 가지고 상기 곱의 지정된 비트가 비트값“1”을 가지거나, 혹은, 상기 곱이 음의 부호를 가지고 상기 곱의 지정된 비트가 비트값“0”을 가질때, 상기 1-비트 가산기는 상기 제2 합산값 동작하는 단계와 ; (a34) 상기 1-비트 가산기를 제어하여, 상기 1-비트 가산기가 상기 제1 및 제2 합산 값에 대한 상기 합산 계산에 필요한 시냅스 계산 결과를 연속적으로 합산하고, 상기 각 입력값의 각 하나의 비트와 상기 시냅스 계산에 필요한 상기 대응하는 시냅스 계수의 각 하나의 비트에 대한 각 부분 시냅스 계산 결과의 가산을 수행하는 단계를 포함하고, 상기 단계(c)는, 상기 제1 및 제2 합산값의 최상위 비트중의 하나로부터 숫자를 운송할 필요가 있을때, 상기 단계(a)에서 얻어지는 상기 제1 및 제2 합산값의 각각이 상기 포화 영역에 도달했는지의 여부를 판정하는 처리 방안.
- 신경망 회로 시스템을 사용하는 처리 방안에 있어서, (a) 각각이 다수의 입력값을 수신하고 하나의 출력값을 출력하며, 다수의 신경망 회로를 서로에 관하여 독립적으로 동작시키는 단계로서, (a1) 각 하나의 비트에 대한 부분 시냅스 계산 결과를 얻기 위하여, 각 입력값의 모든 비트와 상위 비트로부터 연속적으로 지정된 상기 각 하나의 대응하는 시냅스 계수 비트를 사용하고, 상기 각 하나의 비트의 상위 비트에 대한 이전의 부분 시냅스 계산에 상기 각 하나의 비트에 대한 각 부분 시냅스 계산 결과를 가산하므로써, 이진 비트열로 표현되는 상기 각 입력값과 상기 각 입력값에 대응하는 시냅스 계수에 대한 시냅스 계산을 수행하고, 합산값을 얻기 위하여 상기 각 입력값에 대한 시냅스 계산 결과를 연속적으로 합산하는 합산 계산을 수행하는 단계와 ; (a2) 상기 출력값을 결정하기 위하여, 상기 단계(a1)에서 얻은 상기 합산값에 규정된 비선형 처리를 적용하는 단계와 ; (a3) 상기 단계(a2)에서 얻은 상기 합산값이 상기 단계(a2)에 적용된 상기 규정뒨 비선형 처리의 전달 특성의 포화영역에 도달하는 지의 여부를 판정하는 단계와 ; (a4) 상기 대응하는 시냅스 계수의 상위 비트로부터 상기 시냅스 계산을 연속적으로 수행하고, 상기 단계(a3)가 단계(a1)에서 얻은 상기 합산값이 상기 포화 영역에 도달했는지의 여부를 판정할때 마다, 상기 시냅스 계산 및 상기 합산 계산을 중지하도록 단계(a1)을 제어하는 단계를 포함하는 단계 (a)와 ; (b) 상기 다수의 입력값을 각 신경망 회로에 연속적으로 적용하여, 상기 다수의 입력값의 동일한 하나가 상기 다수의 신경망 회로의 모두에 동시에 제공되는 단계를 포함하는 처리 방안.
- 다수의 입력값과 하나의 출력값을 출력하는 신경망 회로를 사용하는 처리 방안에 있어서 ; (a) 상기 다수의 입력값에 대응하는 다수의 기준 입력값을 미리 저장하는 단계와 ; (b) 각 입력값과 상기 다수의 기준 입력값중에 대응하는 하나의 입력값 간의 차이를 계산하여 각 입력값에 대한 입력차를 얻는 단계와 ; (c) 각 입력차와 상기 각 입력값의 대응하는 시냅스 계수의 시냅스 계산과, 시냅스 계산 결과를 합산하여 합산값을 얻는 합산 계산을 수행하는 단계와 ; (d) 상기 단계(c)에서 얻어진 상기 합산값에 규정된 비선형 처리를 작용하여 상기 출력값을 판정하는 단계와 ; (e) 상기 각 입력값과, 상기 다수의 기준 입력값중의 상기 대응하는 하나의 기준 입력값의 일치성을 검출하는 단계와 ; (f) 상기 다수의 기준 입력값에 대응하는 기준 출력값을 미리 저장하는 단계와 ; (g) 상기 단계(d)에서 얻어진 상기 출력값과 상기 단계(f)에서 저장된 상기 기준 출력값을 선택적으로 출력하는 단계와 ; (h) 상기 단계(e)에서 검출된 상기 일치성에 따라, 상기 단계(c)및 단계(g)를 제어하므로써, 상기 단계(e)는, 상기 일치성을 검출할때마다, 상기 단계(g)가 상기 단계(f)에서 저장된 상기 기준 출력값을 선택적으로 출력하는 동안에는 상기 시냅스 계산 및 상기 합산 계산을 중지하고, 반면에, 상기 단계(g)가 상기 단계(d)에서 얻어진 상기 출력값을 선택적으로 출력하는 동안에는 상기 시냅스 계산 및 상기 합산 계산을 수행하는 단계를 포함하는 처리 방안.
- 제39항에 있어서, 상기 단계(h)는 또한, 상기 단계(b)에서 얻어진 상기 입력차의 부호와 상기 대응하는 시냅스 계수의 부호에 따라, 상기 단계(c) 및 (g)를 제어하므로써, 상기 단계(c)는, 상기 입력차의 부호와 상기 대응하는 시냅스 계수의 부호로부터 결정된 상기 합산값의 변경 방향이 상기 단계(d)에서 적용된 상기 규정된 비선형 처리의 전달 특성에서 포화 영역과 과도 영역 간의 경계값에 근접하는 방향일때, 상기 단계(g)가 상기 단계(d)에서 단지 얻어지는 상기 출력값을 선택적으로 출력하는 동안에는 상기 시냅스 계산 및 상기 합산 계산을 수행하고, 반면에, 상기 단계(g)가 상기 단계(f)에 저장된 상기 기준 출력값을 선택적으로 출력하는 동안에는 상기 시냅스 계산 및 상기 합산 계산을 중지하는 처리방안.
- 제40항에 있어서, (i) 상기 시냅스 계수로부터 상기 다수의 시냅스 계수의 각각의 하나의 부호를 독립적으로 저장하는 단계와 ; (j) 상기 단계(i)에서 저장된 상기 대응하는 시냅스 계수의 부호를 선택적으로 판독하여, 상기 단계(h)에 상기 대응하는 시냅스 계수의 부호를 적용하는 단계를 더 포함하는 처리 방안.
- 제39항에 있어서, (k) 상기 단계(c)에서 얻어진 상기 합산값이 상기 단계(d) 적용된 상기 규정된 비선형 처리의 전달 특성의 포화영역에 도달했는지의 여부를 판정하는 단계를 더 포함하고, 상기 단계(a)는, 연속적으로 지정된 상기 대응하는 시냅스 계수 비트를 사용하여, 이진 비트열로 표현되는 상기 각 입력차와 상기 대응하는 시냅스 계수에 대한 상기 시냅스 계산을 수행하고, 상기 단계(h)는, 상기 대응하는 시냅스 계수의 상위 비트로부터 상기 시냅스 계산을 연속적으로 수행하고, 상기 단계(k)가 상기 단계(c)에서 얻은 상기 합산값이 상기 포화 영역에 도달했는지의 여부를 판정할때마다, 상기 시냅스 계산 및 상기 합산 계산을 중지하도록 상기 단계(c)를 제어하는 처리 방안.※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP94-004043 | 1994-01-19 | ||
JP6004043A JPH07210533A (ja) | 1994-01-19 | 1994-01-19 | ニューラルネットワーク回路及びこれを用いた演算方法 |
JP94-003885 | 1994-01-19 | ||
JP6003885A JPH07210617A (ja) | 1994-01-19 | 1994-01-19 | ニューラルネットワーク回路および本回路を用いた演算方法 |
JP94-165641 | 1994-07-18 | ||
JP6165641A JPH0830572A (ja) | 1994-07-18 | 1994-07-18 | ニューラルネットワーク回路及びこれを用いた演算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR950024084A true KR950024084A (ko) | 1995-08-21 |
KR0168975B1 KR0168975B1 (ko) | 1999-01-15 |
Family
ID=27276023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019950000739A KR0168975B1 (ko) | 1994-01-19 | 1995-01-18 | 신경망 회로, 신경망 시스템 및 이를 이용하는 연산 방법 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5630024A (ko) |
EP (2) | EP1033660A1 (ko) |
KR (1) | KR0168975B1 (ko) |
DE (1) | DE69531418T2 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200000480A (ko) * | 2017-04-19 | 2020-01-02 | 상하이 캠브리콘 인포메이션 테크놀로지 컴퍼니 리미티드 | 처리 장치 및 처리 방법 |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0814636A1 (de) * | 1996-06-21 | 1997-12-29 | Siemens Audiologische Technik GmbH | Hörgerät |
RU2131145C1 (ru) * | 1998-06-16 | 1999-05-27 | Закрытое акционерное общество Научно-технический центр "Модуль" | Нейропроцессор, устройство для вычисления функций насыщения, вычислительное устройство и сумматор |
FI20002853A (fi) | 2000-12-22 | 2002-06-23 | Nokia Corp | Keinotekoisen assosiatiivisen neuronin synapsi |
US20150278680A1 (en) * | 2014-03-26 | 2015-10-01 | Qualcomm Incorporated | Training, recognition, and generation in a spiking deep belief network (dbn) |
US20150286925A1 (en) * | 2014-04-08 | 2015-10-08 | Qualcomm Incorporated | Modulating plasticity by global scalar values in a spiking neural network |
CN106056212B (zh) * | 2016-05-25 | 2018-11-23 | 清华大学 | 一种人工神经网络计算核 |
KR102459854B1 (ko) * | 2016-05-26 | 2022-10-27 | 삼성전자주식회사 | 심층 신경망용 가속기 |
JP6556768B2 (ja) * | 2017-01-25 | 2019-08-07 | 株式会社東芝 | 積和演算器、ネットワークユニットおよびネットワーク装置 |
EP3580699B1 (en) * | 2017-02-07 | 2023-12-06 | The Regents of The University of Michigan | Systems and methods for mixed-signal computing |
US11256978B2 (en) * | 2017-07-14 | 2022-02-22 | Intel Corporation | Hyperbolic functions for machine learning acceleration |
US11630997B2 (en) | 2018-01-23 | 2023-04-18 | Samsung Electronics Co., Ltd. | Method and apparatus with bit-serial data processing of a neural network |
KR102618546B1 (ko) * | 2018-09-03 | 2023-12-27 | 삼성전자주식회사 | 2차원 어레이 기반 뉴로모픽 프로세서 및 그 동작 방법 |
KR102650660B1 (ko) * | 2018-09-03 | 2024-03-25 | 삼성전자주식회사 | 뉴로모픽 장치 및 뉴로모픽 장치에서 멀티-비트 뉴로모픽 연산을 처리하는 방법 |
KR20200072308A (ko) * | 2018-12-12 | 2020-06-22 | 삼성전자주식회사 | 뉴럴 네트워크에서 컨볼루션 연산을 수행하는 방법 및 장치 |
KR20200094534A (ko) * | 2019-01-30 | 2020-08-07 | 삼성전자주식회사 | 뉴럴 네트워크 장치 및 뉴럴 네트워크 장치에서 멀티-비트 연산을 처리하는 방법 |
KR20210083428A (ko) | 2019-12-26 | 2021-07-07 | 삼성전자주식회사 | 메모리 장치, 및 이를 포함하는 전자 기기 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4943931A (en) * | 1988-05-02 | 1990-07-24 | Trw Inc. | Digital artificial neural processor |
DE58906476D1 (de) * | 1988-07-05 | 1994-02-03 | Siemens Ag | In integrierter Schaltungstechnik ausgeführtes digitales neuronales Netz. |
US5324991A (en) * | 1989-07-12 | 1994-06-28 | Ricoh Company, Ltd. | Neuron unit and neuron unit network |
US5481646A (en) * | 1989-07-12 | 1996-01-02 | Ricoh Company, Ltd. | Neuron unit and neuron unit network |
US5131073A (en) * | 1989-07-12 | 1992-07-14 | Ricoh Company, Ltd. | Neuron unit and neuron unit network |
JP2565791B2 (ja) * | 1990-04-19 | 1996-12-18 | 富士写真フイルム株式会社 | 多層型ニューラルネットワークの係数格納装置 |
US5166539A (en) * | 1990-07-09 | 1992-11-24 | Nippon Telegraph And Telephone Corporation | Neural network circuit |
US5208900A (en) * | 1990-10-22 | 1993-05-04 | Motorola, Inc. | Digital neural network computation ring |
JPH056356A (ja) * | 1990-11-20 | 1993-01-14 | Ricoh Co Ltd | 信号処理方法及びその装置 |
JP2760170B2 (ja) * | 1990-11-29 | 1998-05-28 | 松下電器産業株式会社 | 学習機械 |
FR2681709B1 (fr) * | 1991-09-20 | 1993-11-05 | Thomson Csf | Procede de connexion interne pour reseaux de neurones. |
US5440671A (en) * | 1992-07-30 | 1995-08-08 | Olympus Optical Co., Ltd. | Neural net model and neural net optimizing method and system for realizing the same |
KR0178805B1 (ko) * | 1992-08-27 | 1999-05-15 | 정호선 | 스스로 학습이 가능한 다층 신경회로망 및 학습 방법 |
US5350953A (en) * | 1993-05-28 | 1994-09-27 | Swenson Richard M | Digitally weighted neuron for artificial neural network |
US5473731A (en) * | 1993-07-20 | 1995-12-05 | Intel Corporation | Lattice based dynamic programming classification system |
US5473730A (en) * | 1993-11-09 | 1995-12-05 | At&T Ipm Corp. | High efficiency learning network |
-
1995
- 1995-01-17 US US08/373,440 patent/US5630024A/en not_active Expired - Fee Related
- 1995-01-18 EP EP00113124A patent/EP1033660A1/en not_active Withdrawn
- 1995-01-18 DE DE69531418T patent/DE69531418T2/de not_active Expired - Fee Related
- 1995-01-18 EP EP95100620A patent/EP0664516B1/en not_active Expired - Lifetime
- 1995-01-18 KR KR1019950000739A patent/KR0168975B1/ko not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200000480A (ko) * | 2017-04-19 | 2020-01-02 | 상하이 캠브리콘 인포메이션 테크놀로지 컴퍼니 리미티드 | 처리 장치 및 처리 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR0168975B1 (ko) | 1999-01-15 |
EP0664516B1 (en) | 2003-08-06 |
EP0664516A3 (en) | 1995-12-20 |
DE69531418D1 (de) | 2003-09-11 |
EP0664516A2 (en) | 1995-07-26 |
DE69531418T2 (de) | 2004-07-08 |
US5630024A (en) | 1997-05-13 |
EP1033660A1 (en) | 2000-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR950024084A (ko) | 신경망 회로 및 신경망 시스템과 이들을 이용한 계산 방법 | |
CN111758106A (zh) | 大规模并行神经推理计算元件 | |
US6642871B2 (en) | Analog/digital converter with error automatic calibration function | |
US20050138100A1 (en) | Product-sum operation circuit and method | |
KR970707474A (ko) | 데드타임 우세 프로세스, 다변수 상호작용 프로세스, 시변 동특성을 가지는 프로세스를 제어하기 위한 가변구간 예측기 | |
CN112990438B (zh) | 基于移位量化操作的全定点卷积计算方法、系统及设备 | |
KR101827779B1 (ko) | 디지털-아날로그 변환기와 아날로그-디지털 변환기를 이용한 비트 직렬 곱셈누적 연산기 | |
US5455891A (en) | System and method for a learning neural network for generating random directions for weight changes | |
CN104834216B (zh) | 一种基于bp神经网络调节pi控制器参数的电路及方法 | |
KR920006793B1 (ko) | 학습기계 | |
KR970017000A (ko) | 다층퍼셉트론 신경회로망의 n비트 데이타 표현에 의한 학습방법 | |
CN111383157A (zh) | 图像处理方法、装置、车载运算平台、电子设备及系统 | |
US20230035620A1 (en) | Neural network processor and method of neural network processing | |
CN113672196A (zh) | 一种基于单数字信号处理单元的双乘法计算装置和方法 | |
CN113272826A (zh) | 数据处理处理器、对应的方法和计算机程序 | |
JP3262340B2 (ja) | 情報処理装置 | |
US5329594A (en) | Recognizing and judging apparatus | |
CN114676826A (zh) | 一种求解回归问题的神经网络量化方法 | |
JP3231298B2 (ja) | 乗算装置 | |
US20230186149A1 (en) | Machine learning based stabilizer for numerical methods | |
JP3039814B2 (ja) | 学習制御方式 | |
SU1156062A1 (ru) | Устройство дл умножени | |
WO2021016058A1 (en) | Matrix multiplication in hardware using modular math | |
SU1196853A1 (ru) | Устройство дл вычислени обратной величины | |
JPH0675746A (ja) | 1位置検出方法及び演算器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20040823 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |