[go: up one dir, main page]

KR102803834B1 - 상호 상관을 위한 방법 및 장치 - Google Patents

상호 상관을 위한 방법 및 장치 Download PDF

Info

Publication number
KR102803834B1
KR102803834B1 KR1020217033166A KR20217033166A KR102803834B1 KR 102803834 B1 KR102803834 B1 KR 102803834B1 KR 1020217033166 A KR1020217033166 A KR 1020217033166A KR 20217033166 A KR20217033166 A KR 20217033166A KR 102803834 B1 KR102803834 B1 KR 102803834B1
Authority
KR
South Korea
Prior art keywords
spike
delay
stream
function
undelayed
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020217033166A
Other languages
English (en)
Other versions
KR20210137191A (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 엔파보, 인크.
Publication of KR20210137191A publication Critical patent/KR20210137191A/ko
Application granted granted Critical
Publication of KR102803834B1 publication Critical patent/KR102803834B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • G06N3/065Analogue means
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/159Applications of delay lines not covered by the preceding subgroups
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/19Monitoring patterns of pulse trains
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/22Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K2005/00013Delay, i.e. output pulse is delayed after input pulse and pulse length of output pulse is dependent on pulse length of input pulse
    • H03K2005/00019Variable delay
    • H03K2005/00058Variable delay controlled by a digital setting
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/22Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral
    • H03K5/26Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral the characteristic being duration, interval, position, frequency, or sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Nonlinear Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Neurology (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Complex Calculations (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
  • Manipulation Of Pulses (AREA)
  • Image Analysis (AREA)

Abstract

스파이킹 뉴럴 네트워크들에 대한 멀티-스트림 상호 상관기로서, 여기서 각각의 스트림은 유의한 확률적 콘텐츠를 포함한다. 적어도 2개의 스트림들에 걸쳐 고정된 시간적 관계를 갖는 적어도 하나의 이벤트가 발생한다. 각각의 스트림은 기준 프레임(FOR)으로서 처리되고, Other 스트림들과의 비교에 기초하여 조정가능한 딜레이가 적용된다. FOR의 각각의 스파이크에 대해, 마지막 및 현재 FOR 스파이크들에 대한 타이밍 분석이 Post 및 Pre 누산기들을 비교함으로써 완료된다. 또한, 각각의 Other 스파이크의 발생 시에, 다음 FOR 스파이크까지 값들이 누산되는 Post 및 Pre 가중 함수들의 생성을 재시작함으로써, 현재 FOR 스파이크로 새로운 타이밍 분석이 시작된다. 시간-중립적 충돌 해결이 사용되는 경우, 원-스파이크 딜레이 유닛이 사용될 수 있다. FOR의 평균 스파이크 레이트가 Post 및 Pre 가중 함수들에 대해 결정 및 사용될 수 있다.

Description

상호 상관을 위한 방법 및 장치
본 특허는, 본 명세서에 그 전체가 참조로 포함되는 다음의 미국 특허 출원의 출원일의 이익을 주장한다:
2019/03/17(y/m/d)자로 출원되고 발명자 David Carl Barton 그리고 출원 번호 제62/819,590호를 갖는 "Method and Apparatus for Cross Correlation".
기술분야
본 발명은 일반적으로 상호 상관(cross correlation)에 관한 것으로, 더 구체적으로는, 유의한 확률적 콘텐츠(significant stochastic content)를 갖는 데이터 스트림들의 상호 상관에 관한 것이다.
상호 상관은 신호 프로세싱에서 잘 이해되고, 다양한 적용예들에서 신호 스트림들 사이의 상대적 딜레이를 발견하기 위해 종종 사용된다. 상호 상관의 확립된 방법들은 다수의 상대적 딜레이 오프셋들에서 신호 유사도를 비교하여, 전형적으로 최대 유사도의 오프셋을 구한다.
요구된 반복 비교들의 컴퓨테이션 비용(computational cost)을 완화시키기 위해, FFT 및 다양한 슬라이딩 윈도우 접근법들의 사용을 포함하는, 많은 최적화들이 존재한다. 이들의 컴퓨테이션 비용 외에도, 확립된 방법들은 많은 비교들을 수행할 필요가 있다는 것과, 스트리밍 데이터를 프로세싱할 때 메모리 버퍼가 필요하다는 것 양측 모두 때문에, 시스템에 높은 레이턴시(latency)를 도입시키는 단점을 또한 겪고 있다. 버퍼는, 지속적으로, 포지티브 및 네거티브 딜레이 오프셋들 양측 모두에 대해, 양방향 탐색을 가능하게 하도록 요구된다.
이에 따라, 버퍼링을 요구하지 않고 더 낮은 레이턴시를 갖는 상호 상관의 방법에 대한 필요성이 존재한다.
본 명세서에 포함되고 그 일부를 구성하는 첨부 도면들은 본 발명의 수 개의 실시예들을 예시하고, 설명과 함께, 본 발명의 원리들을 설명하도록 기능한다:
도 1은 스파이킹 뉴럴 네트워크(spiking neural network)들의 영역에서의, 멀티-스트림 상호 상관기의 예시적인 적용 시나리오를 나타낸다.
도 2는 도 1의 각각의 CCU에 대한, 예시적인 내부 구조체의 기능 블록 다이어그램이다.
도 3은 F.O.R.d 입력에 존재하는 각각의 쌍의 스파이크들을, Learn Delay의 Other 입력에서 발생하는 임의의 스파이크들을 분석하기 위한 기준 프레임(frame of reference)으로서 사용하는 Learn Delay의 기능적 구현을 나타낸다.
도 4는 파이썬(Python) 프로그래밍 언어에 기초하는, Learn Delay의 예시적인 의사 코딩 구현(pseudo-coded implementation)을 나타낸다.
도 5 내지 도 7은 Learn Delay를 위한 예시적인 전기적 구현을 나타낸다.
도 8은 충돌 해결(Resolve Conflicts) 블록이 Produce Delay의 비메모리 버전(memoryless version)에 추가된다는 것을 제외하고는, 도 2의 CCU의 기능 블록 다이어그램이다.
도 9는 지수 감쇠 곡선(exponential decay curve)을 임계치 검출과 커플링시킴으로써, Produce Delay를 구현하는 일 예를 나타낸다.
도 10은 기능 블록 0220에 대해 도 8과 관련하여 논의되는 Produce Delay 기능성을 구현하기 위한 회로부를 제시한다.
도 11은 "Learn Rate All"(또는 LRA) 기능 블록(0223)이 추가된다는 것을 제외하고는, 도 8에 도시된 것과 동일한 CCU를 나타낸다.
도 12는 실제 MEAALL이 알려진 경우 스파이크들의 예시적인 분포를 나타낸다.
도 13은 MEAALL의 값에 대한 추측치(그것을 MEAguess라고 부름)가 너무 높은 경우 스파이크들의 예시적인 분포를 나타낸다.
도 14는 MEAALL의 값에 대한 추측치(그것을 MEAguess라고 부름)가 너무 낮은 경우 스파이크들의 예시적인 분포를 나타낸다.
도 15는 식 1이 그의 전체 범위의 절반(예를 들어, P = 0.5)을 산출하는 포인트에 대해 해결하는 것보다는 오히려, MEA를 발견하는 것에 대한 동등성-테스팅 접근법(equality-testing approach)을 나타낸다.
도 16은 동등성-테스팅 접근법에 기초하는, Learn Rate All에 대한 회로 구현을 제시한다.
도 17 및 도 18은 rALL 입력을 위한 하드웨어가 추가된다는 것을 제외하고는, 도 6 및 도 7 각각에 도시된 Learn Delay의 동일한 회로 구현을 제시한다.
도 19는 rALL 입력을 위한 하드웨어가 추가된다는 것을 제외하고는, 도 10에 도시된 Produce Delay의 동일한 회로 구현을 제시한다.
본 발명의 다양한 실시예들에 대한 참조가 이제 상세히 이루어질 것이고, 그의 예들이 첨부 도면들에 예시되어 있다. 가능하다면 어디서든지, 동일한 참조 번호들이 도면들 전반에 걸쳐 사용되어 동일한 또는 유사한 부분들을 지칭할 것이다.
아래에 사용되는 선택된 용어들의 정의에 대해 섹션 3("선택된 용어들의 용어집")을 참조하십시오.
상세한 설명에 대한 목차
1 도입부
2 상호 상관 유닛
2.1 일반 고려사항들
2.2 Learn Delay
2.2.1 기능적 설명
2.2.2 순차 동작 및 의사 코딩 구현
2.2.3 전기적 구현
2.3 Produce Delay - 손실 버전
2.3.1 충돌 해결
2.3.2 전기적 구현
2.4 Learn Rate All
3 선택된 용어들의 용어집
4 컴퓨팅 장비
1 도입부
상호 상관은 많은 중요한 적용예들을 갖는 것으로 알려져 있다. 이들 중에서도, 상호 상관은 스파이킹 뉴럴 네트워크들의 영역에서 계속해서 중요해질 것으로 예상되고, 여기서 상대적 스파이크 타이밍이 적절한 동작에 있어서 아주 중대할 수 있다.
도 1은 스파이킹 뉴럴 네트워크들의 영역에서의, 예시적인 적용 시나리오를 나타낸다. 좌측 상의 입력들은 스파이크들의 3개의 스트림들: S1, S2, 및 S3이다. 각각의 스파이크 스트림은 유의한 랜덤(또는 확률적) 콘텐츠를 포함할 것으로 예상된다.
확률적 콘텐츠와 관련하여, 스파이크 간 갭(inter-spike gap)들(또는 ISG들)의 시간적 사이즈가 랜덤 분포(종종 포아송(Poisson))를 가정하고, 각각의 ISG 는 다음의 범위 내에 있다:
의 전체 시간적 범위에 대해, 우리는 스파이크 스트림에 대한 평균 스파이크 레이트를 rALL이라고 지칭할 것이다(이는, 그것이, 발생할 수 있는 모든 스파이크들을 포함하는 레이트이기 때문이다).
그러한 콘텐츠는, 그것이 발생하는 스트림과 관련하여뿐만 아니라, 다른 스트림들에 대하여 그 양측 모두에서 확률적이다. 그러나, 입력 스트림들 중 2개 이상에 걸쳐 발현되는 비-랜덤 이벤트들이 발생할 것으로 또한 예상된다. (다음의 설명에서, 우리는 비-랜덤 이벤트를 단순히 "이벤트"라고 종종 지칭할 것이다.)
스트림들 S1, S2, 및 S3 각각은 각각 상호 상관 유닛(Cross Correlation Unit)(또는 CCU): 0110, 0112, 및 0114의 F.O.R. 입력에 커플링된다. 각각의 CCU는, "FORd"로 라벨링된 출력을 갖는다. 확인될 수 있는 바와 같이, 각각의 FORd 출력은 "Soma"(0121)의 입력에 연결된다. 그의 가장 기본적인 기능적 레벨에서, Soma는 일종의 동시발생 검출기(coincidence detector)로서의 역할을 하도록 설계되어, 스파이크가 그의 입력들 각각에서 동시에 나타날 때마다 출력 스파이크를 생성할 수 있다.
다음의 논의에서는, 설명의 편의의 목적들을 위해 3개의 입력 스트림들이 선정되었다. 도 1의 시스템과 같은 시스템이, 동작 원리들의 변경 없이, 임의로 많은 수의 입력들에 대해 적용될 수 있다는 것이 쉽게 인식될 것이다. 최소 2개의 입력 스트림들이 요구된다. 전체적으로, 도 1과 같은 시스템은 생물학적으로 영감을 받은 뉴런 모델로서 보여질 수 있다. 생물학적으로 영감을 받았지만, 엔지니어링(그리고 비-생물학적) 관점에서, 도 1은 멀티-스트림 상호 상관기(Multi-stream Cross Correlator) 또는 "MCC"를 표현한 것으로 이해될 수 있다.
MCC의 2개 이상의 입력 스트림들에서 이벤트가 발생할 때, 각각의 입력 스트림에서의, 그의 발현은, 다른 스파이크 스트림들에서의 그의 발현과 관련하여, 고정된 시간적 관계를 가질 것으로 예상된다. 이벤트의 멀티-스트림 발현들이 서로와 관련하여 고정된 시간적 관계를 가질 것으로 예상되지만, 그러한 발현들이 동시에 발생하지 않을 것으로 또한 예상된다.
임의의 다른 스파이크(즉, 임의의 비-이벤트 스파이크)는, 그것이 발생하는 입력 스트림 내에서뿐만 아니라 다른 입력 스트림들과 관련하여 그 양측 모두에서 고려될 때, 모든 다른 비-이벤트 스파이크들과 관련하여 랜덤 관계를 가질 것으로 예상된다. 우리는 또한 임의의 그러한 비-이벤트 스파이크를 "랜덤 스파이크"라고 지칭할 것이다.
CCU의 0110, 0112, 및 0114 각각의 작업은, 다수의 스트림들에 걸쳐, 가능한 한 많은 이벤트 발현들이, CCU의 출력들에서 동시에(그리고 그에 따라 Soma(0121)에의 입력들에서 동시에) 발생하도록 딜레이 또는 시간적 오프셋을 결정하는 것이다.
더 구체적으로는, 도 01의 각각의 CCU는 2개의 입력들을 갖는 것으로서 관찰될 수 있다:
Figure 112021117646394-pct00004
FOR, 및
Figure 112021117646394-pct00005
Other.
"FOR"(그것은 대안적으로 "F.O.R."로서 기입될 수도 있다)은 "기준 프레임(Frame Of Reference)"을 의미한다. (문맥상 달리 표시되지 않는 한, "FOR" 또는 "F.O.R."이라는 용어의 본 명세서에서의 임의의 사용은 "기준 프레임"에 대한 언급이고, 전치사 "for"에 대한 것이 아니다.) CCU의 FOR 입력에 제시된 스파이크 스트림은, 일부 수정 후에, CCU의 FORd 출력에서 나타난다. CCU는, 딜레이를 삽입함으로써, 그의 FOR 입력에서 나타나는 스파이크들과 관련하여, 그의 FORd 출력 스트림을 수정할 가능성을 갖는다. 각각의 CCU에 대한 "Other" 입력은, 다른 CCU들(즉, 동일한 Soma에 연결된 다른 CCU들)의 FORd 출력들에서 나타나는 스파이크들의 합집합(union)인 것으로 의도된다.
확인될 수 있는 바와 같이, 각각의 CCU의 Other 입력은 다음과 같이 결정된다. 첫째, 모든 CCU들의 출력 스파이크들은, OR 게이트(0120)에 의해, 함께 합집합되어, 단일의 조합된 스파이크 스트림을 형성한다. 이 OR 게이트의 출력은 "ANY"로 라벨링되는데, 이는 스파이크가 임의의 CCU의 FORd 출력에서 그것이 발생하는 한 그의 출력에서 발생할 것으로 예상되기 때문이다.
CCU의 0110, 0112, 및 0114 각각에는 각각 AND 게이트 0111, 0113, 및 0115가 제공된다. 확인될 수 있는 바와 같이, 각각의 AND 게이트는, 그의 CCU의 Other 입력이 수신하는 스파이크 스트림을 필터링(즉, 제거)한다. 구체적으로는, 그 AND 게이트의 CCU에 의해 기여된 임의의 스파이크들이 제거된다.
2 상호 상관 유닛
2.1 일반 고려사항들
종래의 상관 및 상호 상관 기법들과는 대조적으로, 본 발명의 MCC는 많은 수(예를 들어, 수백 또는 수천)의 랜덤 스파이크들의 존재에 의존한다.
MCC는 각각의 CCU가 본질적으로 다른 CCU들과는 독립적으로 동작하게 함으로써 동작한다. 독립적인 동작에 대한 예외는, 각각의 CCU가 (그의 Other 입력에서) (예를 들어, 다른 CCU들의 FOR 입력들에 제시된 바와 같은 스파이크 스트림들의 합집합보다는 오히려) 다른 CCU들의 FORd 출력들의 합집합을 수신한다는 사실이다.
도 2는 도 1의 각각의 CCU에 대한, 예시적인 내부 구조체의 기능 블록 다이어그램이다.
확인될 수 있는 바와 같이, CCU는 2개의 주된 유닛들로 구성된다:
Figure 112021117646394-pct00006
Produce Delay(블록 0225), 및
Figure 112021117646394-pct00007
Learn Delay(블록 0226).
Produce Delay는 입력 스파이크 스트림을 (그의 F.O.R. 입력에서) 수용하고, 그의 출력(F.O.R.d라고 불림)에서 이 입력 스트림의 딜레이된 버전을 생성한다. Produce Delay의 F.O.R. 입력은 CCU의 F.O.R. 입력(0211로 라벨링됨)에 커플링되고, Produce Delay의 F.O.R.d 출력은 CCU의 F.O.R.d 출력(0212로 라벨링됨)에 커플링된다.
Learn Delay는 (CCU의 Other 입력(0210)으로부터의) CCU의 Other 스파이크 스트림을 수용할 뿐만 아니라, Produce Delay의 F.O.R.d 출력을 (Learn Delay의 F.O.R.d 입력에서) 수용한다. Learn Delay는, 그의 F.O.R.d 입력에 존재하는 각각의 쌍의 스파이크들을, Learn Delay의 Other 입력에서 발생하는 임의의 스파이크들을 분석하기 위한 기준 프레임으로서 사용한다.
Produce Delay가 충분한 메모리를 포함하는 경우, 그것은, 딜레이의 가능성을 제외하고는, 그의 F.O.R. 입력에서의 스파이크 스트림과 동일한 스파이크 스트림을 (그의 F.O.R.d 출력에서) 재생성할 수 있다. 우리는 이것을 Produce Delay의 무손실 버전(lossless version)이라고 지칭할 수 있다.
적용예에 따라, Produce Delay의 메모리는 아날로그 또는 디지털 장비로 구현될 수 있다. 디지털 구현의 경우, Produce Delay는, 예를 들어, 반도체 랜덤 액세스 메모리(random access memory)(RAM)로 구현되는 FIFO(First In First Out) 큐 또는 버퍼를 포함할 수 있다. 아날로그 구현의 경우, Produce Delay는, 전기 케이블 또는 자유 공간 파장 전파 캐비티(free-space wave propagation cavity)와 같은 임의의 적합한 신호 또는 파장 가이드를 포함할 수 있다.
그러나, 일반적으로, Produce Delay의 무손실 버전은 무한한(또는 비제한된) 양의 메모리를 요구할 수 있다.
본 발명의 다른 중요한 양태는 Produce Delay의 출력에서 F.O.R.d의 손실 버전을 생성하기 위해, CCU의 F.O.R. 입력에 제시되는 스파이크 스트림의 확률적 성질을 이용하는 것이다. 실제로, Produce Delay에 의한 (한 번에) 단지 하나의 스파이크의 메모리만으로도 CCU의 F.O.R.d 출력에서 유용한 상관된 스파이크 스트림을 생성하기에 충분할 수 있다. 단지 하나의 스파이크의 스토리지를 사용할 때, Produce Delay는 일종의 "타이머"로서 보여질 수 있다. 스파이크가 그의 F.O.R. 입력에 나타날 때, 타이머가 시작될 수 있다. 딜레이 기간의 종료 시에, 타이머는 Produce Delay의 F.O.R.d 출력에 대해 스파이크를 생성한다. 단일 스파이크 메모리의 사용이 아래에 섹션 2.3("Produce Delay")에서 논의된다.
2.2 Learn Delay
2.2.1 기능적 설명
상기에 소개된 바와 같이, Learn Delay는, 그의 F.O.R.d 입력에 존재하는 각각의 쌍의 스파이크들을, Learn Delay의 Other 입력에서 발생하는 임의의 스파이크들을 분석하기 위한 기준 프레임으로서 사용한다. 도 3은 이러한 종류의 예시적인 상황을 나타낸다.
확인될 수 있는 바와 같이, 도 3은 2개의 축들을 포함한다:
Figure 112021117646394-pct00008
수평 시간 축, 여기서: 0.00초. ≤ t ≤ 0.60초.
Figure 112021117646394-pct00009
각각의 Other 스파이크에 가중치들을 할당하는 데 사용되는 수직 축(아래에서 추가로 설명됨), 여기서: 0.00 ≤ 가중치 ≤ 1.00.
우리는, Other 스파이크들의 평가를 위한 프레임워크로서 기능하는, Learn Delay의 F.O.R.d 입력에서의 연속적인 쌍의 스파이크들을 n 및 n+1로 부르기로 한다. (가중치 축을 표현하는 것에 추가적으로) 시간 t=0.00에서의 수직 라인은 스파이크 n을 나타낸다(이 스파이크는 또한 0310으로 라벨링된다). 역으로, 스파이크 n+1은 t=0.60에 그려져 있다(이 스파이크는 또한 0311로 라벨링된다). 수직 축을 따르는, n 및 n+1 스파이크들의 크기는 관련이 없으며, 단순히 그래픽 제시 목적들을 위해 선정되었다.
가중치 축은 곡선들 0320 및 0321과 관련이 있다. 확인될 수 있는 바와 같이, 0320은 형태 e-rt의 지수 감쇠 곡선이고, 여기서 r은 레이트이고, t는 시간이며, r(예시의 목적들을 위해)은 3과 동일하다. 역으로, 0321은 형태 e-r(m-t)의 지수 증가 곡선이고, 여기서 r 및 t는 0320에 대한 것과 동일하고, m("최대" 시간의 경우)은 0.60초와 동일하다. 바로 아래에 설명되는 이유들 때문에, 곡선들 0320 및 0321은 각각 "Post" 및 "Pre"라고도 또한 지칭된다.
F.O.R.d 스파이크들 n과 n+1 사이에서 발생하는 각각의 Other 스파이크에는 Post 및 Pre 값 양측 모두가 할당된다. Post 값이 Pre 값보다 더 큰 Other 스파이크는, "사전(pre)"(또는 이전) 스파이크 n+1보다 "사후(post)"(또는 이후) 스파이크 n이 더 강한 것으로서 특성화된다. 역으로, Pre 값이 Post 값보다 더 큰 스파이크는, "사후"(또는 이후) 스파이크 n보다 "사전"(또는 이전) 스파이크 n+1이 더 강한 것으로서 특성화된다.
도 3은 다음의 값들을 갖는 2개의 예시적인 Other 스파이크들을 나타낸다:
Figure 112021117646394-pct00010
Other 스파이크 1:
o t=0.065초.
o Post 값 = 0.723
o Pre 값 = 0.05
Figure 112021117646394-pct00011
Other 스파이크 2:
o t=0.44초.
o Post 값 = 0.112
o Pre 값 = 0.446
확인될 수 있는 바와 같이, 각각의 Other 스파이크에는, 그것이 Post 및 Pre 가중 곡선들과 교차하는 위치에 따라, 2개의 가중치들이 주어진다.
한 쌍의 F.O.R.d 스파이크들 n과 n+1 사이에서 발생할 수 있는 다수의 Other 스파이크들에 걸쳐, "사후" 또는 "사전"이 되려는 순 경향(net tendency)은 다음과 같이 결정 및 보정될 수 있다:
Figure 112021117646394-pct00012
모든 Post 값들의 합계를 누산(accumulate)하고(우리는 "postAcc"라고도 또한 부를 것이다),
Figure 112021117646394-pct00013
모든 Pre 값들의 합계를 누산한다(우리는 "preAcc"라고도 또한 부를 것이다).
Figure 112021117646394-pct00014
postAcc > preAcc인 경우:
o Other 스파이크 스트림들은, 모든 것을 감안할 때, F.O.R.d의 스파이크들 이후에 발생하는 것으로서 간주된다. 이것은 또한, F.O.R.d 스트림이, 모든 것을 감안할 때, 빠르다는 것을 의미한다.
o Learn Delay(예를 들어, 도 2의 Learn Delay 블록(0226))는 그의 "more d" 출력에서 커맨드(예컨대, 펄스)를 발행함으로써 빠름(earliness)을 보정하려고 할 수 있다.
o "more d" 커맨드에 응답하여, Produce Delay(예를 들어, Produce Delay 블록(0225) 참조)는, 그의 F.O.R. 입력과 F.O.R.d 출력 사이의 딜레이를 특정 증분량만큼 증가시킬 수 있다.
Figure 112021117646394-pct00015
preAcc > postAcc인 경우:
o Other 스파이크 스트림들은, 모든 것을 감안할 때, F.O.R.d의 스파이크들 이전에 발생하는 것으로서 간주된다. 이것은 또한, F.O.R.d 스트림이, 모든 것을 감안할 때, 늦다는 것을 의미한다.
o Learn Delay는 그의 "less d" 출력에서 커맨드(예컨대, 펄스)를 발행함으로써 늦음(lateness)을 보정하려고 할 수 있다.
o 이에 응답하여, Produce Delay는, 그의 F.O.R. 입력과 F.O.R.d 출력 사이의 딜레이를 특정 증분량만큼 감소시킬 수 있다.
("more d" 또는 "less d" 커맨드에 응답하여) Learn Delay의 딜레이가 변경되게 하는 증분량은 특정 적용예, 및 속도 대 정확도의 그의 요건에 기초하여 선택될 수 있다. 일반적으로, 더 작은 증분(더 느린 학습 레이트라고도 또한 불림)은 CCU가 그의 Other 스트림들과의 그의 이벤트들의 최상의 동기화를 달성하는 딜레이 값을 발견하기 위한 시간을 증가시킨다. 그러나, 더 작은 증분은, 필요한 딜레이 값의 더 정확한 결정을 발생시킨다는 이점을 갖는다.
감소와 증가 양측 모두의 지수 곡선들이 도시되었지만, Post 및 Pre 가중의 목적들을 위해, 매우 다양한 함수들이 적합할 수 있다. 적합한 함수에 대한 주요 기준들은 다음의 것을 포함한다:
Figure 112021117646394-pct00016
Post 함수의 대칭 반대인 Pre 함수.
Figure 112021117646394-pct00017
스파이크 n 및 n+1의 시간 각각에서 최대 값으로 있는 Post 및 Pre 함수들.
Figure 112021117646394-pct00018
최대 값으로부터 단조적으로(monotonically) 감소하는 Post 및 Pre 함수들.
2.2.2 순차 동작 및 의사 코딩 구현
이전 하위 섹션의 논의는, 다음의 스파이크들이 한 번에 이용가능하다는 것에 부합하는 방식으로 Learn Delay의 동작을 설명하였다:
Figure 112021117646394-pct00019
F.O.R.d 입력의 스파이크들 n 및 n+1, 및
Figure 112021117646394-pct00020
n 및 n+1 F.O.R.d 스파이크들 사이의 시간 간격 동안, Learn Delay의 Other 입력에 존재하는 임의의 스파이크들.
실제 동작 동안, CCU(그리고 그것이 일부가 되는 MCC)는 스파이크 단위로 동작할 것으로 예상된다. 예를 들어, Learn Delay의 F.O.R.d 입력에 각각의 스파이크가 존재할 때마다 - 우리는 스파이크 n이라고 지칭할 수 있다 -, Learn Delay는 2개의 주된 동작들을 수행할 것으로 예상될 수 있다:
Figure 112021117646394-pct00021
n-1 스파이크가 있는 경우, 스파이크 n-1로 시작된 상호 상관 분석을 완료하려고 한다. 다시 말해, 기준 프레임으로서 스파이크들 n-1 및 n을 이용하여 상호 상관 분석을 완료한다.
Figure 112021117646394-pct00022
스파이크 n+1의 도달 시에, 장래에 완료될 새로운 상호 상관 분석을 시작한다. 다시 말해, 새로운 상호 상관 분석을 시작하고, 여기서 스파이크들 n 및 n+1이 기준 프레임으로서 기능할 것이다.
특정 적용예에 따라, Learn Delay를 컴퓨터 프로그램으로서, 전기 하드웨어로서, 또는 2개의 접근법들의 하이브리드 조합으로서 구현하는 것이 바람직할 수도 있다.
도 4는 파이썬 프로그래밍 언어에 기초하는, Learn Delay의 예시적인 의사 코딩 구현을 나타낸다. 굵게 표시된 텍스트는 파이썬 신택스 및 시맨틱스에 밀접하게 대응한다. 코멘트들이 파이썬 신택스에 따라 삽입된다. 설명을 돕기 위해, 좌측 상에 라인 번호들이 추가되었다. 파이썬 신택스 및 시맨틱스로부터의 주된 출발점은 라인들 5 내지 17 상에 있는 할당 연산자들의 우변(right hand side)이다. 또한, 프로시저 안팎으로의, 파라미터들 또는 다른 데이터의 전달이 비공식적으로 핸들링된다.
도 4의 프로시저는 "Learn_Delay_PC"라고 불리고, 여기서 "PC" 접미사는 의사 코드를 표시한다. 라인 1.
Learn_Delay_PC는, F.O.R.d 또는 Other 입력들 중 어느 하나에서, 스파이크가 발생할 때마다 호출된다.
다수의 중요한 값들 및 변수들이 라인들 5 내지 17에 걸쳐 할당되지만, 이들은, 라인들 22 내지 44에 걸쳐, 이들 변수들을 이용하는 의사 코드를 논의하는 것의 일부로서 다루어질 것이다.
라인 22는, 시간량(즉, T - TLO)과 관련하여, 그의 콘텐츠들이 지수 감쇠를 겪게 함으로써, Pre 누산기(accumulator) "preAcc"를 업데이트하는데, 이는 마지막 Other 스파이크가 Learn_Delay_PC의 호출을 야기하였기 때문이다(여기서 T 및 TLO는 도 4의 라인들 8 및 9에서 정의된다). 아래에 추가로 설명되는 바와 같이, preAcc의 이 지수 감쇠는, Other 스파이크가 발생할 때마다, preAcc에 단위 값을 가산하는 것과 커플링된다.
각각의 Other 스파이크 시에 preAcc에 단위 값을 가산하고, (다음 F.O.R.d 스파이크 시까지) preAcc가 지수 감쇠를 겪게 하는 것은, 도 3과 관련하여 상기에 논의된 preAcc 누산 방법: 각각의 Other 스파이크의 발생 시에 preAcc에 e-r(m-t)의 값을 가산하고(여기서 m은 t에 대한 최대 값이다), 감쇠되지 않는 preAcc를 갖는 것과 수학적으로 동등하다.
preAcc가 지수 감쇠를 겪게 하는 것은 Pre 값들을 누산하기 위한 불필요하게 간접적인 방법으로 보일 수도 있다. 그러나, 다음 하위 섹션에서 논의되는 바와 같이, e-r(m-t)는, e-rt에 비해, 전자 하드웨어로 구현하기에는 상대적으로 복잡한 함수이다.
preAcc에 대한 업데이트에 뒤이어, 현재 스파이크가 타입 F.O.R.d의 것인지 또는 Other의 것인지 여부에 대한 테스트가 수행된다. 라인 25. F.O.R.d 스파이크가, 현재 실행 중인 Learn Delay 유닛에 "속하는" 것으로서 간주되는데, 이는 그의 기원이, 동일한 CCU에 속하는 Produce Delay 유닛으로부터의 것이기 때문이다. 따라서, IS_MINE 변수가 거짓이면 Other 스파이크의 수신을 표시하여, 라인들 26 내지 33의 실행을 야기시킨다. 그렇지 않으면, 현재 스파이크가 타입 F.O.R.d의 것이고, 라인들 35 내지 45가 수행된다.
IS_MINE이 거짓이라고 가정하면, 다음의 단계들이 실행된다:
Figure 112021117646394-pct00023
현재 스파이크가 타입 Other의 것임을 고려하기 위해, 단위 값이 preAcc에 가산된다. 라인 26.
Figure 112021117646394-pct00024
postAcc에 가산된 값은, 단순히, 마지막 F.O.R.d 스파이크 이후의, 단위 값의, 지수 감쇠이다. 라인 30.
Figure 112021117646394-pct00025
Learn_Delay_PC의 다음 호출에 대비하여, 마지막 Other 스파이크의 시간이 업데이트된다. 라인 32.
IS_MINE이 참이라고 가정하면, 다음의 단계들이 실행된다:
Figure 112021117646394-pct00026
이전 F.O.R.d 스파이크로 시작된, 현재 실행 중인 상호 상관 분석을 완료하는 것의 일부로서, 임의의 Other 스파이크들이 발생했는지 여부를 결정하기 위한 테스트가 먼저 수행된다. 라인 35.
Figure 112021117646394-pct00027
적어도 하나의 Other 스파이크가 발생했다고 가정하면, preAcc와 postAcc의 값들이 비교된다. 라인 38.
o preAcc > postAcc인 경우, 그러면, 모든 것을 감안할 때, F.O.R.d 스파이크들이 Other 스파이크들에 비해 늦은 것으로서 간주된다. 변수 D로 표현되는, Produce Delay로부터의 딜레이가 감소된다. 학습 레이트를 제어하는 감소량은 라인 38의 "-D_LR"로 표현된다.
o postAcc > preAcc인 경우, 그러면, 모든 것을 감안할 때, F.O.R.d 스파이크들이 Other 스파이크들에 비해 빠른 것으로서 간주된다. 변수 D로 표현되는, Produce Delay로부터의 딜레이가 증가된다. 학습 레이트를 제어하는 증가량은 라인 38의 "D_LR"로 표현된다.
Figure 112021117646394-pct00028
D가 허용가능 한도들 내에서 유지된다는 것을 보장하기 위해, 체크가 수행될 수 있다. 라인 40.
Figure 112021117646394-pct00029
새로운 상호 상관 분석을 시작하는 것의 일부로서, 다음의 단계들이 수행된다:
o preAcc 및 postAcc가 제로로 리셋(reset)된다. 라인 42.
o 마지막 F.O.R.d 스파이크의 시간이 현재 시간으로 업데이트된다. 라인 44.
2.2.3 전기적 구현
도 5 내지 도 7은 Learn Delay를 위한 예시적인 전기적 구현을 나타낸다.
도 5는 Learn Delay 모듈의 상위 레벨 제어 및 인터페이스를 나타낸다. 도 6은 postAcc 값을 누산하는 것과 관련된 회로부에 초점을 맞추고 있는 한편, 도 7은 preAcc를 누산하는 것과 관련된 회로부에 초점을 맞추고 있다.
도 5의 아웃라인 0510은 Learn Delay를 위한 외부 인터페이스를 표시하고, 여기서 각각의 커넥션은, 도 2와 관련하여 이전에 논의된 바와 같은, Learn Delay 기능 블록(0221)의 입력 또는 출력에 대응한다.
아웃라인 0520은, 도 6의 postAcc 회로부 및 도 7의 preAcc 회로부에 대한, Learn Delay를 위한 내부 인터페이스를 표시한다.
외부 인터페이스(0510)의 논의는 다음과 같다.
F.O.R.d 입력에 제시된 각각의 스파이크는 "투샷(two shot)"(0530)을 트리거한다. 첫 번째로, 비교기 증폭기(0540)의 판독을 야기시킴으로써, 투샷의 out1이 현재 기준 프레임을 완성한다. 두 번째로, out2가 postAcc 및 preAcc 회로부를 리셋하여, 다음 기준 프레임에 걸친 누산이 시작될 수 있도록 한다.
Out1은 AND 게이트들(0541 및 0542)을 인에이블시킴으로써 비교기(0540)의 판독을 야기시킨다. 비교기(0540)의 출력이 논리 0인 경우, AND 게이트들이 인에이블될 때, 그러면 AND 게이트(0542)가 트리거 신호를 원샷(one shot)(0532)에 제시할 것이다. 원샷(0532)은, 트리거될 때, (인터페이스(0510)의) "less d" 출력에서 펄스를 생성한다. 역으로, 비교기(0540)의 출력이 논리 1인 경우, 그러면 AND 게이트(0541)가 트리거 신호를 원샷(0531)에 제시할 것이다. 원샷(0531)은, 트리거될 때, (인터페이스(0510)의) "more d" 출력에서 펄스를 생성한다.
비교기(0540)는 2개의 신호들: preAcc를 대표하는 신호("preAcc"라고 불림), 및 postAcc를 대표하는 신호("postAcc"라고 불림)를 비교한다. postAcc 신호는 도 6의 회로부에 의해 생성되는 한편, preAcc 신호는 도 7의 회로부에 의해 누산된다. preAcc 및 postAcc 신호들 각각은 아날로그인데, 이때 전압 레벨이 그의 누산된 값을 표현한다. preAcc 신호가 postAcc보다 더 높은 전압을 갖는 경우, 비교기(0540)는 논리 0을 표현하는 신호를 출력한다. 상기에 논의된 바와 같이, 논리 0(투샷(0530)의 out1에 의해 판독될 때)이 "less d" 출력으로부터의 펄스를 야기시킨다. 역으로, postAcc > preAcc인 경우, 비교기(0540)는 논리 1을 출력한다. 상기에 논의된 바와 같이, 논리 1(투샷(0530)의 out1에 의해 판독될 때)이 "more d" 출력으로부터의 펄스를 야기시킨다.
외부 인터페이스(0510)에 대해, 논의될 마지막 커넥션은 Other 입력이다. F.O.R.d 입력과 마찬가지로, Other에서의 스파이크도 또한 투샷을 트리거한다. 이 경우에, 그것은 투샷(0533)이다. 아래에 추가로 논의되는 바와 같이, 투샷(0533)의 out1은 (다른 액션들 중에서도) postAcc 누산기 및 preAcc 누산기 각각의 현재 전압 레벨의 샘플링을 야기시킨다. 두 번째로, out2는 postAcc 및 preAcc 누산기들이 각각 새로운 전압 레벨로 충전되게 한다.
도 6과 관련하여, 커패시터(0650)가 postAcc 신호(또는 노드)의 전압을 유지한다. 도 3과 관련하여 상기에 논의된 바와 같은, Post n 함수(0320)와 관련하여, 그것은 커패시터(0640)와 저항기(0641)의 조합에 의해 결정된다. Post n 함수는, 도 6에서, 감쇠 가변 노드에서 입수가능하다.
상기에 논의된 바와 같이, 투샷(0530)(그의 out2 출력에서)은, 새로운 기준 프레임을 시작하는 것의 일부로서, "reset(F.O.R.)" 신호를 어서트(assert)한다. 도 6과 관련하여, reset(F.O.R.) 신호가 다음의 커패시터들의 리셋을 야기시킨다는 것이 확인될 수 있다:
Figure 112021117646394-pct00030
postAcc 값의 누산은, postAcc 노드를 접지에 커플링시키는 스위치(0660)에 의해, 제로로 리셋된다.
Figure 112021117646394-pct00031
Post n 함수(0320)는 스위칭 유닛(0643)의 스위치들 S1 및 S2에 의해 지수 감쇠의 새로운 기간으로 리셋된다. 구체적으로는, reset(F.O.R.) 펄스의 지속기간 동안:
o S1은 커패시터(0640)를 단위 값 전압 소스(0642)에 커플링시키고,
o S2는, 커패시터(0640)가 재충전되는 동안, 감쇠 가변 노드가 지수 감쇠를 재시작하기 위한 올바른 초기 값을 유지한다는 것을 보장한다.
Figure 112021117646394-pct00032
적절한 시간에, 커패시터(0632)는 감쇠 가변 노드에서 전압의 샘플을 보유하는 데 사용된다. 그것은, 커패시터(0632)를 접지에 커플링시키는 스위치(0662)에 의해 리셋된다.
Figure 112021117646394-pct00033
적절한 시간에, 커패시터(0622)는 postAcc 노드에서 전압의 샘플을 보유하는 데 사용된다. 그것은, 커패시터(0622)를 접지에 커플링시키는 스위치(0661)에 의해 리셋된다.
일단 reset(F.O.R.) 신호가 종료되면, 커패시터(0640)와 저항기(0641)의 조합이 그의 지수 감쇠를 시작하는데, 이때 Post n 함수가 감쇠 가변 노드에서 입수가능하다.
Other 스파이크가 발생하는 경우, (F.O.R.d 스파이크에 의한) postAcc 노드의 리셋에 후속하여, 투샷(0533)이 트리거된다. 도 6과 관련하여, "sample(Other)" 신호의 어서션(assertion)이 다음의 것을 야기시킨다는 것이 확인될 수 있다:
Figure 112021117646394-pct00034
스위치(0631)의 폐쇄에 의한, 감쇠 가변 노드에서의, 현재 전압의 샘플링.
Figure 112021117646394-pct00035
스위치(0621)의 폐쇄에 의한, postAcc 노드에서의, 현재 전압의 샘플링.
"sample(Other)" 신호의 어서션에 후속하여, 다음의 것이 발생한다:
Figure 112021117646394-pct00036
스위치(0631)가 개방되고, 감쇠 가변 노드의 샘플링된 전압이 커패시터(0632)에 의해 보유된다.
Figure 112021117646394-pct00037
스위치(0621)가 개방되고, postAcc 노드의 샘플링된 전압이 커패시터(0622)에 의해 보유된다.
Figure 112021117646394-pct00038
커패시터들(0632 및 0622)에 의해 보유된 전압들은 가산 증폭기(0610)에 의해 합산된다.
다음으로, 투샷(0533)은, 도 6의 스위치(0611)를 폐쇄시키는 "charge Acc(Other)" 신호를 어서트한다. 이것은 비교기(0612)로 하여금 postAcc 노드에서의 전압을 가산 증폭기(0611)의 출력과 비교하게 한다. 가산 증폭기로부터의 전압은 감쇠 가변 노드에서 샘플링된 양만큼 postAcc 노드의 전압보다 더 클 것이다. 그에 따라, 비교기(0612)는 스위치(0613)가 폐쇄되게 하고, postAcc 노드가 가산 증폭기의 출력과 본질적으로 동일한 전압으로 충전될 때까지, 폐쇄된 채로 유지할 것이다.
인식될 수 있는 바와 같이, "sample(Other)" 및 "charge Acc(Other)" 신호들의 순차 어서션의 순 효과는 다음의 것이다. 각각의 Other 스파이크 시에, postAcc 노드의 전압이 감쇠 가변 노드의 그때 현재 전압과 동일한 양만큼 증가된다.
도 7과 관련하여, 커패시터(0720)가 preAcc 신호(또는 노드)의 전압을 유지한다. 그러나, 도 4의 Learn_Delay_PC 의사 코드와 관련하여 상기에 논의된 바와 같이, preAcc 노드는, 저항기(0721)와의 그의 조합으로 인해, 감쇠하도록 설계된다. 상기에 논의된 바와 같이, 각각의 Other 스파이크에 대한 단위 전압의 가산과 감쇠 preAcc 노드의 조합은, (도 3의) Pre n+1 함수(0321)를 결정하고 그의 값을 비-감쇠 Pre 누산기에 가산하는 것과 수학적으로 동등하다. 감쇠 preAcc 노드 접근법의 회로 구현 관점에서의 상대적 단순성이 도 7에서 인식될 수 있다.
상기에 논의된 바와 같이, 투샷(0530)(그의 out2 출력에서)은, 새로운 기준 프레임을 시작하는 것의 일부로서, "reset(F.O.R.)" 신호를 어서트한다. 도 7과 관련하여, reset(F.O.R.) 신호가 다음의 커패시터들의 리셋을 야기시킨다는 것이 확인될 수 있다:
Figure 112021117646394-pct00039
preAcc 값의 누산은, preAcc 노드를 접지에 커플링시키는 스위치(0741)에 의해, 제로로 리셋된다.
Figure 112021117646394-pct00040
적절한 시간에, 커패시터(0732)는 postAcc 노드에서 전압의 샘플을 보유하는 데 사용된다. 그것은, 커패시터(0732)를 접지에 커플링시키는 스위치(0740)에 의해 리셋된다.
Other 스파이크가 발생하는 경우, (F.O.R.d 스파이크에 의한) preAcc 노드의 리셋에 후속하여, 투샷(0533)이 트리거된다. 도 7과 관련하여, "sample(Other)" 신호의 어서션이, 스위치(0731)의 폐쇄에 의한, preAcc 노드에서의, 현재 전압의 샘플링을 야기시킨다는 것이 확인될 수 있다.
"sample(Other)" 신호의 어서션에 후속하여, 다음의 것이 발생한다:
Figure 112021117646394-pct00041
스위치(0731)가 개방되고, preAcc 노드의 샘플링된 전압이 커패시터(0732)에 의해 보유된다.
Figure 112021117646394-pct00042
커패시터(0732)에 의해 보유된 전압은, 가산 증폭기(0710)에 의해, 전압 소스(0714)로부터의 단위 전압과 합산된다.
다음으로, 투샷(0533)은, 도 7의 스위치(0711)를 폐쇄시키는 "charge Acc(Other)" 신호를 어서트한다. 이것은 비교기(0712)로 하여금 preAcc 노드에서의 전압을 가산 증폭기(0710)의 출력과 비교하게 한다. 가산 증폭기로부터의 전압은, 단위 전압 소스(0714)에 의해 제공되는 양만큼 preAcc 노드의 전압보다 더 클 것이다. 그에 따라, 비교기(0712)는 스위치(0713)가 폐쇄되게 하고, preAcc 노드가 가산 증폭기의 출력과 본질적으로 동일한 전압으로 충전될 때까지, 폐쇄된 채로 유지할 것이다.
인식될 수 있는 바와 같이, "sample(Other)" 및 "charge Acc(Other)" 신호들의 순차 어서션의 순 효과는 다음의 것이다. 각각의 Other 스파이크 시에, preAcc 노드의 전압이 전압 소스(0714)의 단위 전압과 동일한 양만큼 증가된다. 증가에 후속하여, preAcc 노드는 다음의 것 중 어느 하나가 발생할 때까지 그의 지수 감쇠를 재개할 것이다:
Figure 112021117646394-pct00043
F.O.R.d 스파이크의 발생과 함께, 현재 기준 프레임이 종료된다.
Figure 112021117646394-pct00044
다른 Other 스파이크가 발생한다.
2.3 Produce Delay - 손실 버전
2.3.1 충돌 해결
섹션 2.1("일반 고려사항들")에서, 상기에 논의된 바와 같이, 본 발명의 다른 중요한 양태는, Produce Delay의 출력에서 F.O.R.d의 손실 버전을 생성하기 위해, 각각의 CCU의 F.O.R. 입력에 제시되는 스파이크 스트림의 확률적 성질을 이용하기 위한 옵션이다.
Produce Delay에 의한(예를 들어, 도 2의 기능 블록 0225에 의한) (한 번에) 단지 하나의 스파이크의 메모리만으로도 CCU의 F.O.R.d 출력에서 유용한 상관된 스파이크 스트림을 생성하기에 충분할 수 있다. 이 경우에, Produce Delay는 일종의 "타이머"로서 보여질 수 있다. 스파이크가 Produce Delay의 F.O.R. 입력에 나타날 때, 타이머가 시작될 수 있다. 딜레이 기간의 종료 시에, 타이머는 Produce Delay의 F.O.R.d 출력에 대해 스파이크를 생성한다. 단일 스파이크 메모리의 사용이 아래에 논의된다.
Produce Delay의 손실 버전은 무손실 버전(그의 메모리가 잠재적으로 무한할 필요가 있다)보다 훨씬 더 적은 메모리(단지 하나의 스파이크)를 요구하기 때문에, 우리는 손실 버전을 "비메모리"라고 지칭할 것이다.
비메모리 접근법을 구현할 때의 핵심 문제는, 우리가 "충돌 해결" 이슈라고 부르는 것이다. 충돌 해결 이슈는, Produce Delay의 딜레이가 0초보다 더 클 때마다 발생할 수 있다. F.O.R. 스파이크 x 때문에, Produce Delay가 딜레이 기간 d를 타이밍 지정하는 중에 있을 때마다, 각각의 CCU에 입력되는 스파이크 스트림의 확률적 성질 때문에, 다음 F.O.R. 스파이크 x+1이 도달하는 것이 항상 가능하다. 그 후에 2개의 선정들이 있다:
Figure 112021117646394-pct00045
스파이크 x+1을 무시하고, 딜레이 기간 d가 완료될 때까지 스파이크 x에 대한 타이밍을 진행한다. 우리는 이것을 "최장 유지(keep oldest)" 선정이라고 지칭할 것이다.
Figure 112021117646394-pct00046
딜레이 기간 d가 스파이크 x+1로 시작하도록 타이머를 재시작한다. 우리는 이것을 "최신 유지(keep newest)" 선정이라고 지칭할 것이다.
이들 2개의 정책들 중 어느 것이든, 일관되게 적용된 경우, 무한한 횟수로 순차적으로 적용될 가능성을 갖는다. 예를 들어:
Figure 112021117646394-pct00047
최장 유지: 딜레이 d가 스파이크 x에 대해 타이밍 지정되고 있는 동안, 무한한 수의 후속 F.O.R.d 스파이크들이 도달하는 것이 가능하다. 그 모두가 무시될 것이다.
Figure 112021117646394-pct00048
최신 유지: 스파이크 x에 대한 딜레이 d가 스파이크 x+1 때문에 재시작되는 경우, 스파이크 x+2가 스파이크 x+1에 대한 시간 기간을 재시작하는 것이 가능하고, 스파이크 x+3이 스파이크 x+2에 대한 시간 기간을 재시작하는 것이 추가로 가능하다. 딜레이 기간의 재시작은 잠재적으로 무한한 횟수로 계속 발생할 수 있다.
이들 2개의 선정들 중 어느 것이든, 배타적으로 충돌 해결을 위한 정책으로서만 적용된 경우, F.O.R.d 및 Other 스파이크 스트림들의 Learn Delay의 비교에 시간 바이어스를 도입시킨다는 문제를 갖는다. 구체적으로는:
Figure 112021117646394-pct00049
최장 유지: F.O.R.d 스파이크 스트림이, Other 스파이크 스트림에 비해, 실제로 있는 것보다 더 빨리 나타나게 하는 효과를 갖는다. 그 결과는, Produce Delay에 의해 생성된 딜레이가 너무 크다는 것이다. 이 효과는, 최장 유지 정책이, 더 늦은 스파이크들(즉, 스파이크 x 이후의 스파이크들)이 드롭되게 한다는 사실로부터 인식될 수 있다.
Figure 112021117646394-pct00050
최신 유지: F.O.R.d 스파이크 스트림이, Other 스파이크 스트림에 비해, 실제로 있는 것보다 더 늦게 나타나게 하는 효과를 갖는다. 그 결과는, Produce Delay에 의해 생성된 딜레이가 너무 작다는 것이다. 이 효과는, 최신 유지 정책이, 더 빠른 스파이크들(예를 들어, 스파이크 x+1보다 더 빠른 스파이크 x)이 무시되게 한다는 사실로부터 인식될 수 있다.
시간 바이어스 이슈는, 평균적으로, 최장 유지 및 최신 유지 정책들 각각의 동일한 수의 선정들을 야기시키는 임의의 기법에 의해 해결될 수 있다. 도 2와 도 8의 주된 차이점은, 충돌 해결 블록(0224)의 도입인데, 그 내에서는 제안된 구현이 보여질 수 있다. 도 8의 기능 블록 0220(Produce Delay)은, 도 2의 기능 블록 225에 존재하지 않는 추가 "Delay Done" 출력을 포함한다. Delay Done은, Produce Delay가 딜레이 기간을 타이밍 지정하고 있을 때마다 논리 0이고, 그렇지 않으면 논리 1이다. Delay Done이 논리 1일 때마다, AND 게이트(0230)는, F.O.R. 입력(0211)에서, 스파이크를 허용하여, 딜레이 동작을 시작할 것이다. 이것은, 그러한 조건들 하에서, 기존 딜레이 기간과의 충돌이 없기 때문에, 이해가 된다.
역으로, 우리는, F.O.R. 스파이크가 입력(0211)에 도달하고 Delay Done이 논리 0일 때 충돌 상황이 존재한다는 것을 알고 있다. 이 상황은 충돌 해결 블록(0224)의 AND(0233)에 의해 디코딩된다. AND 게이트(0233)가 논리 1을 생성하면, 플립플롭(0234)의 기존 상태에 따라, 2개의 동작들 중 하나를 야기시킨다:
Figure 112021117646394-pct00051
플립플롭(0234)이 그의 Q 출력에서 논리 1을 이미 생성한 것이 발생한 경우, 그러면 그 Q 출력은, AND(0233)로부터의 논리 1과 함께, AND(0232)로 하여금, (OR 게이트(0231)를 통해) Produce Delay에 의한 타이밍 재시작을 야기시키는 신호를 생성하게 할 것이다. 인식될 수 있는 바와 같이, 이것은 "최신 유지" 정책의 실행이다.
Figure 112021117646394-pct00052
역으로, 플립플롭(0234)이 그의 Q 출력에서 논리 0을 생성한 것이 발생한 경우, 그 논리 0은, AND(0232)가, Produce Delay에 의한 타이밍 재시작을 야기시키는 신호를 생성하는 것을 방지한다. 이것은 "최장 유지" 정책의 실행이다.
플립플롭(0234)이 논리 1을 이미 생성한 것이 발생하는지 여부에 관계없이, AND(0233)에 의해 논리 1이 생성될 때마다 상태를 변경하도록 플립플롭(0234)을 트리거한다. 최종 결과는, 충돌 상황의 각각의 검출 시에 충돌 해결 블록(0224)이 플립플롭(0234)의 현재 상태에 기초하여 정책을 구현한 후에, 플립플롭(0234)의 상태를 변경하여, 반대 정책이 다음 시간에 실행되도록 한다는 것이다.
2.3.2 전기적 구현
도 9 및 도 10은 Produce Delay를 위한 예시적인 전기적 구현을 다룬다.
도 9는 지수 감쇠 곡선(즉, 0910은 e-rt이다)을 임계치 검출(수평 라인 0911)과 커플링시킴으로써, Produce Delay를 구현하는 일 예를 나타낸다. 도 9의 예에서, 감쇠 레이트 r은 3과 동일하고, 검출될 임계치(thd라고 지칭됨)는 0.1과 동일하다. 확인될 수 있는 바와 같이, 이들 조건들 하에서, 생성된 딜레이 기간("d"라고 불림)은 0.77초이다. 인식될 수 있는 바와 같이, 딜레이는, 임계치를 낮추는 것 또는 증가시키는 것 각각에 의해, 증가 또는 감소될 수 있다.
도 10은 기능 블록 0220에 대해 도 8에 도시된 Produce Delay 기능성을 구현하기 위한 회로부를 제시한다.
도 10의 아웃라인 1010은 Produce Delay를 위한 외부 인터페이스를 표시하고, 여기서 각각의 커넥션은 Produce Delay 기능 블록(0220)의 입력 또는 출력에 대응한다.
Produce Delay의 타이밍 능력의 기초를 형성하는 지수 감쇠는 커패시터(1040)와 저항기(1041)의 조합에 의해 생성된다. 감쇠는 "감쇠" 노드에서 발생하는데, 이는 비교기 증폭기(1030)의 네거티브 입력에 인가된다. 임계치(thd라고 불림)는 조정가능 전압 소스(1031)에 의해 설정되는데, 이는 비교기의 포지티브 입력에 인가된다. 1031에 의해 출력된 전압은, 인터페이스(1010)에 대한 "more d" 또는 "less d" 입력들에 인가되는 펄스들 각각에 의해 더 낮거나 또는 더 높게 증분적으로 조정될 수 있다. 언제든지, 전압 소스(1031)의 상태(즉, 그것이 출력하도록 현재 설정된 전압)는 커패시터(도시되지 않음)에 의해 유지될 수 있다.
start/restart 입력에서의 각각의 스파이크는 원샷(1020)을 트리거한다. 원샷(1020)은, 어서트되는 동안, 스위칭 유닛(1043)의 스위치들 S1 및 S2에 의해 지수 감쇠의 새로운 주기를 생성하도록 커패시터(1040)를 준비하는 펄스를 생성한다. 구체적으로는, 원샷의 펄스의 지속기간 동안:
Figure 112021117646394-pct00053
S1은 커패시터(1040)를 단위 값 전압 소스(1042)에 커플링시키고,
Figure 112021117646394-pct00054
S2는, 커패시터(1040)가 재충전되는 동안, 감쇠 노드가 지수 감쇠를 재시작하기 위한 올바른 초기 값을 유지한다는 것을 보장한다.
일단 원샷(1020)의 신호가 종료되면, 커패시터(1040)와 저항기(1041)의 조합이 그의 지수 감쇠를 시작한다. 감쇠 노드의 전압이 전압 소스(1031)에 의해 출력된 전압 아래로 떨어질 때, 비교기(1030)의 출력은 논리 1을 생성한다. 논리 1은 다음의 것 양측 모두를 야기시킨다:
Figure 112021117646394-pct00055
인터페이스(1010)에서, "Delay Done" 출력이 어서트된다.
Figure 112021117646394-pct00056
원샷(1021)이 트리거되는데, 그의 펄스는 인터페이스(1010)의 F.O.R.d 출력에서 스파이크 출력을 구성한다.
2.4 Learn Rate All
상기에 제시된 바와 같이, Produce Delay 및 Learn Delay 기능 블록들(예를 들어, 도 8의 블록들 0220 및 0226) 양측 모두는 지수 감쇠 곡선들의 사용을 통해 작동한다. 이들 함수들에 대한 감쇠 레이트 r은 특정 적용예의 예상된 스파이크 빈도들에 기초하여 선택될 수 있다.
그러나, CCU에, 그의 F.O.R. 입력에서 평균 스파이크 레이트(우리는 rALL이라고 부를 것이다)를 발견할 수 있는 기능 블록을 포함시키는 것이 유용할 수 있다. 일반적으로, rALL은, Produce Delay 및 Learn Delay의 감쇠 함수들에 대해 r로서 사용하기에 좋은 값이다.
예를 들어, 도 3에 도시된 바와 같은 Learn Delay와 관련하여, rALL은 Post 및 Pre 함수들에 대해 사용될 수 있다. r에 대해 이 값을 사용하면, Other 스파이크들이 각각의 함수가 비교적 급속하게 변화하고 있는 구역들 상에 위치되고, 그에 따라 측정하기가 더 쉬워진다는 것을 보장하려는 경향이 있다. Produce Delay가 딜레이를 측정하게 하는 감쇠 레이트(예를 들어, 도 9의 함수 0910 참조)에 대해 rALL을 사용함으로써 유사한 이점이 달성된다.
도 11은 다음의 것을 제외하고는, 도 8과 동일한 CCU를 나타낸다:
Figure 112021117646394-pct00057
"Learn Rate All"(또는 LRA) 기능 블록(0223)이 추가된다. 확인될 수 있는 바와 같이, LRA(0223)는 F.O.R. 스파이크들을 입력으로서 수용하고, rALL을 출력한다.
Figure 112021117646394-pct00058
rALL 입력이 Produce Delay와 Learn Delay 각각에 추가된다(따라서 이들의 라벨 번호들이 도 8의 0220 및 0226으로부터 도 11의 0227 및 0228로 변경됨). 이들 rALL 입력들은 LRA(0223)의 rALL 출력에 의해 구동된다.
Learn Rate All은 확률적 스파이크 스트림 s의 다음의 속성에 기초하는데: rALL에 대한 올바른 값을 갖는 경우, 그러면 다음의 표현식은, 다음 스파이크가 발생할, 시간 t 또는 추후의 임의의 시간의 시점에서의, 확률을 제공한다:
식 1:
이것은 또한, 식 1에 따라 지수 감쇠를 생성하는 경우, P = 0.5인 시간은 스트림 s의 다음 스파이크의 중앙치 예상 도달(Median Expected Arrival)(또는 MEA) 시간이라는 것을 의미한다. 이 중앙치 예상 도달 시간 - 우리는 MEAALL이라고도 또한 지칭할 것이다 - 은 다음의 특수 속성을 갖는다:
특수 속성 1: s의 스파이크들의 다수의 발생들에 걸쳐, 우리는 MEA ALL 이전에 발생하는 스파이크들의 수가 MEA ALL 이후에 발생하는 스파이크들의 수와 동일할 것으로 예상할 수 있다.
도 12의 경우, 실제 MEAALL은 rALL = 3인 경우 0.23초인 것으로 가정된다. (설명의 명확성의 목적들을 위해) 확인될 수 있는 바와 같이, 스파이크들 a 내지 d는 MEAALL의 양측에 균일하게 분포되도록 선정되었다.
특수 속성 1은 다음의 함의(implication)들을 갖는다:
Figure 112021117646394-pct00060
MEAALL의 값에 대한 추측치(그것을 MEAguess라고 부름)가 너무 높은 경우(즉, 실제로, MEAguess > MEAALL), s의 스파이크들의 다수의 발생들에 걸쳐, MEAguess 이후보다 MEAguess 이전에 더 많은 스파이크들이 발생할 것이다. 이것의 극단적인 예가 도 13에 의해 도시되어 있고, 여기서 MEAguess는 0.345초(r=2인 경우)이고, 스파이크들 a 내지 d(r=2인 경우 이들의 위치들과 관련하여 a' 내지 d'로 라벨링됨)는 모두 MEAguess 이전에 있다.
Figure 112021117646394-pct00061
MEAALL의 값에 대한 추측치(그것을 MEAguess라고 부름)가 너무 낮은 경우(즉, 실제로, MEAguess < MEAALL), s의 스파이크들의 다수의 발생들에 걸쳐, MEAguess 이전보다 MEAguess 이후에 더 많은 스파이크들이 발생할 것이다. 이것의 극단적인 예가 도 14에 의해 도시되어 있고, 여기서 MEAguess는 0.115초(r=6인 경우)이고, 동일한 스파이크들 a 내지 d(r=6과 관련하여 지금은 a" 내지 d"로 라벨링됨)는 모두 MEAguess 이후에 있다.
특수 속성 1은, 그의 함의들과 함께, MEAALL이 발견될 수 있게 하는 탐색 프로시저에 대한 기초를 제공한다. 그 프로시저는 다음의 2개의 주된 단계들을 포함하는 것으로서 설명될 수 있다:
1. MEAguess에 대한 합리적인 초기 값을 선정한다:
o MEAguess에 대한 초기 값의 선정은, 예를 들어, 특정 시스템 설계 및 그의 의도된 적용예들에 기초하여, 가능한 값들의 범위 내에 있는 것으로 제한될 수 있다. MEAguess에 대한 값은, MEAguess가 결정될 수 있게 하는 r에 대한 초기 값 - 그것을 rguess라고 부름 - 을 추측함으로써 또한 결정될 수 있다. 그 후에, MEAguess에 대한 대응하는 시간은 식 1로부터 결정될 수 있다. 특히, P = 0.5, 그리고 이면, 식 1은 다음의 것이 된다:
식 2:
2. 스트림 s의 스파이크들 n 및 n+1의 각각의 쌍에 대해, 스파이크들 사이의 시간 (tn+1 - tn)과 MEAguess를 비교한다:
o (tn+1 - tn) < MEAguess인 경우, (단지 이 최신 데이터 포인트에만 기초하여) MEAguess에 대해, 추측된 값이 너무 높다고 가정한다:
스파이크 쌍들 사이의 후속 비교들의 목적들을 위해, MEAguess의 값을 감소시킨다.
rguess를 표준량 - 그것을 Δr이라고 부름 - 만큼 증분시킨 후에, 식 2를 재결정함으로써, MEAguess에 대한 감소된 값을 결정한다.
o (tn+1 - tn) > MEAguess인 경우, (단지 이 최신 데이터 포인트에만 기초하여) MEAguess에 대해, 추측된 값이 너무 낮다고 가정한다:
스파이크들의 후속 쌍들을 비교할 때, MEAguess의 값을 증가시킨다.
rguess를 표준량 - 그것을 Δr이라고 부름 - 만큼 감분시킨 후에, 식 2를 재결정함으로써, MEAguess에 대한 증가된 값을 결정한다.
상기에 리스팅된 탐색 프로시저에서, MEAguess가 너무 높은지 또는 너무 낮은지 여부에 대한, 그것의 상술된 가정들 각각마다, 다음의 가능성들이 있다:
Figure 112021117646394-pct00068
다수의 스파이크들에 걸쳐, MEAguess가 실제로 너무 높은 경우, 이 사실은, MEAguess가 너무 낮음보다 너무 높음을 표시하는 더 많은 비교들의 발생에 의해 결정되고, MEAguess의 값이 (rguess의 순 증가에 의해) 순 감소를 겪는다.
Figure 112021117646394-pct00069
다수의 스파이크들에 걸쳐, MEAguess가 실제로 너무 낮은 경우, 이 사실은, MEAguess가 너무 높음보다 너무 낮음을 표시하는 더 많은 비교들의 발생에 의해 결정되고, MEAguess의 값이 (rguess의 순 감소에 의해) 순 증가를 겪는다.
Figure 112021117646394-pct00070
MEAguess는, 그것이 실제로 올바를 때(즉, MEAguess = MEAALL 그리고 rguess = rALL일 때)에만 순 동적 안정성을 단지 달성한다.
따라서, 충분한 수의 스파이크들에 걸쳐, rALL이 결정될 것인데, 이때 rALL에 대한 수렴 속도("학습 레이트"라고도 또한 불림)와 결정된 rALL 값의 정확도 사이에서 적합한 트레이드오프를 제공하기 위해 Δr이 선택된다:
Figure 112021117646394-pct00071
Δr의 값들이 클수록 학습 레이트를 증가시키지만, 결과의 정확도를 감소시킨다.
Figure 112021117646394-pct00072
Δr의 값들이 작을수록 학습 레이트를 감소시키지만, 결과의 정확도를 증가시킨다.
도 15는 식 1이 그의 전체 범위의 절반(예를 들어, P = 0.5)을 산출하는 포인트에 대해 해결하는 것 외에, MEA를 발견하기 위한 대안적인 방법을 나타낸다. 대안적인 접근법은 식 1과 다음의 식 3이 동일할 때의 시간에 대해 해결하는 것이다(여기서 식 3은 누산 확률 분포를 정의한다):
식 3:
도 15에서 확인될 수 있는 바와 같이, 도 12 내지 도 14와 관련하여, 이전에 논의된 MEA들 각각은 동등성 포인트를 구함으로써 발견된다.
이 동등성-테스팅 접근법은, 다음과 같이 설명될 수 있는, 도 16의 하드웨어 구현을 위한 기초이다.
도 16의 아웃라인 1610은 LRA를 위한 외부 인터페이스를 표시하고, 여기서 각각의 커넥션은, 도 11의 LRA 기능 블록(0223)의 입력 또는 출력에 대응한다.
식 1의 지수 감쇠는, 도 16에서, 커패시터(1630)와 가변 저항기(1631)의 조합에 의해 수행된다. 감쇠 값은 "감쇠" 노드(1641)에서 입수가능하다. 식 3(지수 증가)은 다음과 같이 감산 증폭기(1621)에 의해 수행된다:
Figure 112021117646394-pct00074
단위 전압이 증폭기의 "A" 입력에 인가된다.
Figure 112021117646394-pct00075
감쇠 노드(1641)(즉, 식 1)가 "B" 입력에 적용된다.
Figure 112021117646394-pct00076
그에 따라, 노드(1640)에서 입수가능한, 감산 증폭기(1621)의 출력은 식 3의 전압-레벨 표현이다.
식 1과 식 3 사이의 동등성 테스팅은 비교기 증폭기(1622)에 의해 수행되는데, 이때 결과(상기의 설명의 MEAguess에 대응함)가 노드(1642)에서 입수가능하다.
인터페이스(1610)의 F.O.R. 입력에서, 스파이크 n이 존재할 때마다, 투샷(1620)이 트리거된다. 투샷의 out1에 의해 활성화되는 제1 단계는, 마지막 F.O.R. 스파이크 n-1로 시작된 MEA 측정을 완료하기 위한 것이다. Out1은 비교기(1622)의 출력을 판독하도록 AND 게이트들(1623 및 1624)을 인에이블시킴으로써 이를 행한다.
비교기(1622)의 출력은 다음과 같이 해석될 수 있다:
Figure 112021117646394-pct00077
비교기(1622)는 비교가, 현재 MEAguess보다 더 작은, 스파이크들 n-1과 n 사이의 시간 기간을 표시하는 경우 논리 1을 출력한다. 이것은 지수 감쇠 노드(1641)가 비교기의 + 입력을 구동하기 때문이다.
Figure 112021117646394-pct00078
비교기(1622)는 비교가, 현재 MEAguess보다 더 큰, 스파이크들 n-1과 n 사이의 시간 지속기간을 표시하는 경우 논리 0을 출력한다. 이것은 지수 증가 노드(1640)가 비교기의 - 입력을 구동하기 때문이다.
비교기(1622)에 의한 현재 측정치가 MEAguess가 너무 높음을 표시하는 경우, 노드(1642) 상의 논리 1은 AND 게이트(1623)가 인에이블되게 하고, out1 펄스가 가변 저항기(1631)의 R- 입력에 인가된다. 확인될 수 있는 바와 같이, 저항을 감소시키면 "감쇠" 노드(1641)에서의 더 빠른 감쇠 레이트, 그리고 MEAguess에 대한 하향 조정을 야기시킨다.
역으로, 비교기(1622)에 의한 현재 측정치가 MEAguess가 너무 낮음을 표시하는 경우, 노드(1642) 상의 논리 0은 AND 게이트(1624)가 인에이블되게 하고, out1 펄스가 가변 저항기(1631)의 R+ 입력에 인가된다. 확인될 수 있는 바와 같이, 저항을 증가시키면 "감쇠" 노드(1641)에서의 더 느린 감쇠 레이트, 그리고 MEAguess에 대한 상향 조정을 야기시킨다.
out1 펄스의 지속기간 및 가변 저항기(1631)의 특정 구성과 같은 인자들은 rguess에 대한 변화의 증분을 결정하고, 여기서 각각의 그러한 변화의 증분의 크기가 상기의 논의에서 Δr "학습 레이트"라고 지칭된다.
가변 저항기(1631)의 상태(즉, 그의 현재 저항 레벨)가 내부 상태 커패시터(도시되지 않음)에 의해 유지될 수 있다. 이 커패시터의 전압은, 예를 들어, R- 입력에 대한 각각의 펄스에 따라 증가되고, R+에 대한 각각의 펄스에 따라 감소될 수 있다. 추가로, 내부 상태 커패시터의 전압은, LRA의 외부 인터페이스(1610)의 rALL 출력을 구동하는 전압-팔로잉 증폭기(voltage-following amplifier)(또한 도시되지 않음)를 통해 입수가능해질 수 있다.
도 11과 관련하여 상기에 논의된 바와 같이, LRA(0223)는 그의 rALL 출력을 Produce Delay(0227) 및 Learn Delay(0228) 각각의 rALL 입력에 제공할 수 있다.
rALL 입력을 추가함으로써 변경된, Learn Delay(0226)의 회로 구현의 부분은 도 6 및 도 7이다. Learn Delay(0228)의 회로 구현을 위해, 도 6 및 도 7은 각각 도 17 및 도 18로 대체된다. 도 17 및 도 18은 다음과 같이 도 6 및 도 7과는 상이하다:
Figure 112021117646394-pct00079
고정 저항기(0641)(도 6)는, rALL 입력(0601)을 수용하는 가변 저항기(0644)(도 17)로 대체된다.
Figure 112021117646394-pct00080
고정 저항기(0721)(도 7)는, rALL 입력(0701)을 수용하는 가변 저항기(0722)(도 18)로 대체된다.
Produce Delay(0227)의 회로 구현의 경우, 도 10은 도 19로 대체된다. 도 19는 다음과 같이 도 10과는 상이하다: 고정 저항기(1041)(도 10)는, 그의 외부 인터페이스(1011)의 일부로서 rALL 입력을 수용하는 가변 저항기(1044)(도 19)로 대체된다.
LRA의 rALL 출력에서의 전압이, LRA(0223)에 의해 발견된 rALL과 동일한 r을 갖는 (Produce Delay(0227) 및 Learn Delay(0228)에 대한) 지수 감쇠 곡선들을 생성하기 위해서는, 다음의 것이 행해질 수 있다:
Figure 112021117646394-pct00081
커패시터들 0640(도 17의 postAcc의 구현 참조), 0720(도 18의 preAcc의 구현 참조), 및 1040(도 19의 Produce Delay의 구현 참조)은 LRA의 커패시터 1630(도 16 참조)과 동일한 커패시턴스를 갖도록 이루어질 수 있다.
Figure 112021117646394-pct00082
가변 저항기들 0644(도 17의 postAcc의 구현 참조), 0722(도 18의 preAcc의 구현 참조), 및 1044(도 19의 Produce Delay의 구현 참조)는 LRA의 가변 저항기 1631(도 16 참조)과 동일하게 이루어질 수 있지만, 다음의 것을 제외한다: 내부 상태를 유지하기보다는 오히려, 0644, 0722, 및 1044 각각은 그의 외부 인터페이스 rALL 입력에 의해 구동되는 전압 팔로어(voltage follower)를 사용한다.
3 선택된 용어들의 용어집
가산 증폭기: 시간의 임의의 순간에, 그의 입력들에 존재하는 전압들의 합계인 전압을 출력한다.
원샷: 입력 트리거 및 하나의 출력을 갖는다. 트리거 신호의 수신 시에, 그의 출력에서 펄스를 생성한다.
스파이크: 본 명세서에서 사용되는 바와 같이, 스파이크는, 2개의 구별되는 레벨들 사이에서, 본질적으로(또는 거의) 제로의 전이 시간을 갖는 것으로서 간주될 수 있는 신호의 임의의 포인트를 지칭할 수 있다.
감산 증폭기: 시간의 임의의 순간에, 제1 입력에 존재하는 전압으로부터 제2 입력에 존재하는 전압을 감산한 것으로부터 발생하는 전압을 출력한다.
투샷: 입력 트리거 및 2개의 출력들을 갖는다. 트리거 신호의 수신 시에, 그의 2개의 출력들 각각에서 펄스를 순차적으로 생성한다.
4 컴퓨팅 장비
본 기술분야의 통상의 기술자에게 통상적으로 알려진 것에 따르면, 본 명세서에서 설명되는 본 발명의 방법들, 프로시저들, 또는 기법들은 임의의 적합한 컴퓨팅 하드웨어의 사용을 통해 구현될 수 있다. 적합한 하드웨어는 하나 이상의 범용 컴퓨터들 또는 프로세서들의 사용을 포함할 수 있다. 하드웨어 구현 기법들은 다양한 타입들의 집적 회로들, 프로그래밍가능 메모리들(휘발성 및 비휘발성), 또는 이들 양측 모두의 사용을 포함할 수 있다.
집적 회로 형태로든 또는 그렇지 않은 것이든 간에, 컴퓨테이션 하드웨어는 전형적으로 트랜지스터들(전계 효과, 바이폴라, 또는 이들 양측 모두)의 사용에 기초하지만, 다른 타입들의 컴포넌트들(예를 들어, 광학, 미세 전자 기계(microelectromechanical), 또는 자기)이 포함될 수도 있다. 임의의 컴퓨테이션 하드웨어는, 그의 기능을 수행할 수 있는 것의 필요한 부분으로서, 그것이 에너지를 소비할 것이라는 속성을 갖고 있다. 또한, 동작하기 위해 얼마나 신속하게 행해질 수 있는지에 관계없이, 컴퓨테이션 하드웨어는 상태를 변경하는 데 얼마간의 양의 시간을 요구할 것이다. 물리적 디바이스들(전자 또는 다른 것)에 기초하기 때문에, 컴퓨테이션 하드웨어는, 아무리 작더라도, 얼마간의 양의 물리적 공간을 차지할 것이다.
프로그래밍가능 메모리들은 또한 종종 집적 회로 형태로 구현되고, 컴퓨테이션 하드웨어에 대해 상술된 것과 동일한 물리적 제한들을 받는다. 프로그래밍가능 메모리는 애플리케이션에 상응하는 시간량 동안 그리고 적어도 비일시적 방식으로 정보를 저장하기 위해, 임의의 종류의 물리 기반 효과들 또는 속성들을 사용하는 디바이스들을 포함하도록 의도된다. 그러한 저장을 구현하는 데 사용되는 물리적 효과들의 타입들은: 피드백 신호를 통한 특정 상태의 유지, 전하 저장, 재료의 광학적 속성들에 대한 변화들, 자기적 변화들, 또는 화학적 변화들(가역적 또는 비가역적)을 포함하지만, 이에 제한되지 않는다.
구체적으로 달리 표시되지 않는 한, 컴퓨테이션 하드웨어, 프로그래밍가능 메모리, 컴퓨터 판독가능 매체들, 시스템, 및 서브시스템이라는 용어들은, 사람들, 또는 사람이 착수할 수도 있는 정신적 단계들을 포함하지 않는다.
상술된 임의의 방법, 프로시저 또는 기법에 대해, 그것이 컴퓨터 또는 다른 데이터 프로세싱 시스템의 프로그래밍으로서 구현되는 한, 그것은 컴퓨터 프로그램 제품으로서 또한 설명될 수 있다. 컴퓨터 프로그램 제품은 임의의 적합한 컴퓨터 판독가능 매체 또는 프로그래밍가능 메모리 상에 포함될 수 있다.
컴퓨터 판독가능 매체들 및/또는 프로그래밍가능 메모리들 상에 있는 (데이터 및/또는 명령어들과 같은) 본 명세서에서 설명되는 종류의 정보는, 내부에 포함되는 컴퓨터 판독가능 코드 디바이스들 상에 저장될 수 있다. 컴퓨터 판독가능 코드 디바이스는, 정의된 단위의 정보(예컨대, 비트)가 저장될 수 있거나, 정의된 단위의 정보가 검색될 수 있게 하거나, 또는 이들 양측 모두가 행해지는 메모리의 그 부분을 표현할 수 있다.
본 발명이 특정 실시예들과 관련하여 설명되었지만, 많은 대안들, 수정들 및 변형들이 전술한 설명에 비추어 명백할 것이라는 것이 분명하다. 이에 따라, 본 발명은, 첨부된 청구범위 및 등가물들의 사상 및 범주 내에 속하는 모든 그러한 대안들, 수정들 및 변형들을 포괄하도록 의도된다.

Claims (6)

  1. 상호 상관(cross correlation)을 위한 방법으로서,
    적어도 부분적으로 전자 하드웨어의 구성으로 수행되는, 제1 이벤트, 및 유의한 확률적 콘텐츠(significant stochastic content)를 포함하는 제1 스파이크 스트림을 수신하는 단계;
    적어도 부분적으로 전자 하드웨어의 구성으로 수행되는, 제2 이벤트, 및 유의한 확률적 콘텐츠를 포함하는 제2 스파이크 스트림을 수신하는 단계 - 상기 제1 및 제2 이벤트들은 고정된 시간적 관계를 가짐 -;
    적어도 부분적으로 전자 하드웨어의 구성으로 수행되는, 상기 제1 스파이크 스트림을 제1 딜레이 유닛에 입력하는 단계;
    적어도 부분적으로 전자 하드웨어의 구성으로 수행되는, 상기 제1 딜레이 유닛으로부터 제1 딜레이된 스파이크 스트림을 출력하는 단계 - 상기 제1 딜레이 유닛에 의해 생성된 제1 딜레이는 0초의 하한(lower bound)을 가짐 -;
    상기 제1 딜레이된 스파이크 스트림으로부터의 제1 딜레이된 스파이크의 수신 시에, 적어도 부분적으로 전자 하드웨어의 구성으로 수행되는, 제1 누산된 값(first accumulated value)을 제2 누산된 값과 비교하여 제1 비교 결과를 생성하는 단계;
    상기 제1 비교 결과가 상기 제1 누산된 값이 상기 제2 누산된 값보다 더 크다는 것을 표시하는 경우, 상기 제1 딜레이를 증가시키는 단계;
    상기 제1 비교 결과가 상기 제1 누산된 값이 상기 제2 누산된 값보다 더 작다는 것을 표시하는 경우, 상기 제1 딜레이를 감소시키는 단계;
    상기 제1 비교 결과가 생성된 후에, 상기 제1 누산된 값 및 상기 제2 누산된 값을 리셋하는 단계;
    상기 제1 비교 결과가 생성된 후에, 제1 가중 함수(first weighting function) 및 제2 가중 함수를 생성하기 위한 제1 프로세스를 재시작하는 단계 - 상기 제1 가중 함수는 단조적으로(monotonically) 감소하고 있고, 상기 제2 가중 함수는 단조적으로 증가하고 있다는 것과 상기 제1 가중 함수와 대칭적으로 반대라는 것 둘 모두임 -;
    상기 제2 스파이크 스트림으로부터의 제2 스파이크의 수신 시에, 상기 제1 가중 함수에 따라, 제1 가중 값을 제1 누산기에 누산하는 단계; 및
    상기 제2 스파이크 스트림으로부터의 동일한 제2 스파이크의 수신 시에, 상기 제2 가중 함수에 따라, 제2 가중 값을 제2 누산기에 누산하는 단계
    를 포함하는, 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 제1 딜레이 유닛에 의한 계시(timing)가 이미 시작되지 않은 경우, 상기 제1 스파이크 스트림으로부터의 제1 딜레이되지 않은 스파이크의 상기 제1 딜레이 유닛에의 입력 시에, 상기 제1 딜레이와 동일한 지속시간을 계시하는 단계;
    상기 제1 딜레이의 임의의 계시 완료 시에, 스파이크를 출력하는 단계;
    충돌 해결을 위한 제1 선정(choice), 및 제2 딜레이되지 않은 스파이크에 앞선 딜레이되지 않은 스파이크에 대한 지속시간 동안의 상기 제2 딜레이되지 않은 스파이크의 수신에 기초하여, 상기 제2 딜레이되지 않은 스파이크에 앞선 상기 딜레이되지 않은 스파이크에 대한 상기 지속시간을 계속하도록 결정하는 단계;
    충돌 해결을 위한 제2 선정, 및 상기 제2 딜레이되지 않은 스파이크에 앞선 상기 딜레이되지 않은 스파이크에 대한 상기 지속시간 동안의 상기 제2 딜레이되지 않은 스파이크의 수신에 기초하여, 상기 제1 딜레이 유닛에 의한 상기 제1 딜레이의 계시를 재시작하도록 결정하는 단계;
    상기 제2 딜레이되지 않은 스파이크에 앞선 상기 딜레이되지 않은 스파이크에 대한 상기 지속시간 동안의 상기 제2 딜레이되지 않은 스파이크의 수신의 다수의 인스턴스들에 걸쳐, 평균적으로 동일한 횟수의, 충돌 해결을 위한 상기 제1 선정 및 상기 제2 선정을 야기하는 단계
    를 더 포함하는, 방법.
  4. 제1항에 있어서,
    상기 제1 스파이크 스트림으로부터의 제1 딜레이되지 않은 스파이크의 수신 시에, 제1 지수 감소 함수가 제1 지수 증가 함수보다 더 큰 경우, 상기 제1 지수 감소 함수와 상기 제1 지수 증가 함수 양측 모두를 생성하기 위해, 제1 평균 스파이크 레이트를 증가시키는 단계;
    상기 제1 스파이크 스트림으로부터의 제1 딜레이되지 않은 스파이크의 수신 시에, 제1 지수 감소 함수가 제1 지수 증가 함수보다 더 작은 경우, 상기 제1 지수 감소 함수와 상기 제1 지수 증가 함수 양측 모두를 생성하기 위해, 제1 평균 스파이크 레이트를 감소시키는 단계; 및
    상기 제1 및 제2 가중 함수들을 생성하기 위해 상기 제1 평균 스파이크 레이트를 사용하는 단계
    를 더 포함하는, 방법.
  5. 제3항에 있어서,
    상기 제1 스파이크 스트림으로부터의 제1 딜레이되지 않은 스파이크의 수신 시에, 제1 지수 감소 함수가 제1 지수 증가 함수보다 더 큰 경우, 상기 제1 지수 감소 함수와 상기 제1 지수 증가 함수 양측 모두를 생성하기 위해, 제1 평균 스파이크 레이트를 증가시키는 단계;
    상기 제1 스파이크 스트림으로부터의 제1 딜레이되지 않은 스파이크의 수신 시에, 제1 지수 감소 함수가 제1 지수 증가 함수보다 더 작은 경우, 상기 제1 지수 감소 함수와 상기 제1 지수 증가 함수 양측 모두를 생성하기 위해, 제1 평균 스파이크 레이트를 감소시키는 단계; 및
    상기 제1 딜레이를 계시하기 위해 상기 제1 평균 스파이크 레이트를 사용하는 단계
    를 더 포함하는, 방법.
  6. 상호 상관을 위한 시스템으로서,
    적어도 부분적으로 전자 하드웨어의 구성으로, 제1 이벤트, 및 유의한 확률적 콘텐츠를 포함하는 제1 스파이크 스트림을 수신하는 제1 서브시스템;
    적어도 부분적으로 전자 하드웨어의 구성으로, 제2 이벤트, 및 유의한 확률적 콘텐츠를 포함하는 제2 스파이크 스트림을 수신하는 제2 서브시스템 - 상기 제1 및 제2 이벤트들은 고정된 시간적 관계를 가짐 -;
    적어도 부분적으로 전자 하드웨어의 구성으로, 상기 제1 스파이크 스트림을 수신하고 제1 딜레이된 스파이크 스트림을 출력하는 제1 딜레이 유닛 - 상기 제1 딜레이 유닛에 의해 생성된 제1 딜레이는 0초의 하한을 가짐 -;
    적어도 부분적으로 전자 하드웨어의 구성으로, 상기 제1 딜레이된 스파이크 스트림으로부터의 제1 딜레이된 스파이크의 수신 시에, 제1 누산된 값을 제2 누산된 값과 비교하여 제1 비교 결과를 생성하는 제3 서브시스템;
    적어도 부분적으로 전자 하드웨어의 구성으로, 상기 제1 비교 결과가 상기 제1 누산된 값이 상기 제2 누산된 값보다 더 크다는 것을 표시하는 경우, 상기 제1 딜레이를 증가시키는 제4 서브시스템;
    적어도 부분적으로 전자 하드웨어의 구성으로, 상기 제1 비교 결과가 상기 제1 누산된 값이 상기 제2 누산된 값보다 더 작다는 것을 표시하는 경우, 상기 제1 딜레이를 감소시키는 제5 서브시스템;
    적어도 부분적으로 전자 하드웨어의 구성으로, 상기 제1 비교 결과가 생성된 후에, 상기 제1 누산된 값 및 상기 제2 누산된 값을 리셋하는 제6 서브시스템;
    적어도 부분적으로 전자 하드웨어의 구성으로, 상기 제1 비교 결과가 생성된 후에, 제1 가중 함수 및 제2 가중 함수를 생성하기 위한 제1 프로세스를 재시작하는 제7 서브시스템 - 상기 제1 가중 함수는 단조적으로 감소하고 있고, 상기 제2 가중 함수는 단조적으로 증가하고 있다는 것과 상기 제1 가중 함수와 대칭적으로 반대라는 것 둘 모두임 -;
    적어도 부분적으로 전자 하드웨어의 구성으로, 상기 제2 스파이크 스트림으로부터의 제2 스파이크의 수신 시에 그리고 상기 제1 가중 함수에 따라, 제1 가중 값을 제1 누산기에 누산하는 제8 서브시스템; 및
    적어도 부분적으로 전자 하드웨어의 구성으로, 상기 제2 스파이크 스트림으로부터의 동일한 제2 스파이크의 수신 시에 그리고 상기 제2 가중 함수에 따라, 제2 가중 값을 제2 누산기에 누산하는 제9 서브시스템
    을 포함하는, 시스템.
KR1020217033166A 2019-03-17 2020-03-15 상호 상관을 위한 방법 및 장치 Active KR102803834B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962819590P 2019-03-17 2019-03-17
US62/819,590 2019-03-17
PCT/US2020/022869 WO2020190825A1 (en) 2019-03-17 2020-03-15 Method and apparatus for cross correlation

Publications (2)

Publication Number Publication Date
KR20210137191A KR20210137191A (ko) 2021-11-17
KR102803834B1 true KR102803834B1 (ko) 2025-05-08

Family

ID=72521222

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217033166A Active KR102803834B1 (ko) 2019-03-17 2020-03-15 상호 상관을 위한 방법 및 장치

Country Status (6)

Country Link
US (2) US10972082B2 (ko)
EP (2) EP4475437A3 (ko)
JP (1) JP7389812B2 (ko)
KR (1) KR102803834B1 (ko)
CN (1) CN113875156B (ko)
WO (1) WO2020190825A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8473140B2 (en) 2005-10-21 2013-06-25 Deere & Company Networked multi-role robotic vehicle
EP3977305A4 (en) * 2019-06-02 2023-01-25 NParbor, Inc. METHOD AND DEVICE FOR COMMON DETECTION OF CROSS-CURRENT EVENTS

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090287624A1 (en) 2005-12-23 2009-11-19 Societe De Commercialisation De Produits De La Recherche Applique-Socpra-Sciences Et Genie S.E.C. Spatio-temporal pattern recognition using a spiking neural network and processing thereof on a portable and/or distributed computer
US20150242744A1 (en) 2014-02-21 2015-08-27 Qualcomm Incorporated Stochastic delay plasticity

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3469511B2 (ja) * 1999-08-09 2003-11-25 日本電信電話株式会社 光パルスタイミング検出回路及び光時分割多重装置
WO2004005954A2 (en) * 2002-07-10 2004-01-15 Qualcomm, Incorporated Cross-correlation mitigation method and apparatus for use in a global positioning system receiver
US7430546B1 (en) 2003-06-07 2008-09-30 Roland Erwin Suri Applications of an algorithm that mimics cortical processing
US9460387B2 (en) 2011-09-21 2016-10-04 Qualcomm Technologies Inc. Apparatus and methods for implementing event-based updates in neuron networks
US8909576B2 (en) 2011-09-16 2014-12-09 International Business Machines Corporation Neuromorphic event-driven neural computing architecture in a scalable neural network
US9092735B2 (en) * 2011-09-21 2015-07-28 Qualcomm Incorporated Method and apparatus for structural delay plasticity in spiking neural networks
US9424513B2 (en) 2011-11-09 2016-08-23 Qualcomm Incorporated Methods and apparatus for neural component memory transfer of a referenced pattern by including neurons to output a pattern substantially the same as the referenced pattern
CN102530132B (zh) 2012-02-28 2013-04-17 吴东华 内置遥控式车锁
US10095718B2 (en) 2013-10-16 2018-10-09 University Of Tennessee Research Foundation Method and apparatus for constructing a dynamic adaptive neural network array (DANNA)
US9652711B2 (en) 2014-03-12 2017-05-16 Qualcomm Incorporated Analog signal reconstruction and recognition via sub-threshold modulation
US9858304B2 (en) * 2014-04-15 2018-01-02 Raytheon Company Computing cross-correlations for sparse data
EP3043569A1 (en) * 2015-01-08 2016-07-13 Koninklijke KPN N.V. Temporal relationships of media streams
GB2545137B (en) * 2016-06-27 2021-06-23 Sensyne Health Group Ltd Method and apparatus for sensing and for improving sensor accuracy
US10671912B2 (en) * 2016-09-13 2020-06-02 Sap Se Spatio-temporal spiking neural networks in neuromorphic hardware systems
US10824937B2 (en) 2016-12-20 2020-11-03 Intel Corporation Scalable neuromorphic core with shared synaptic memory and variable precision synaptic memory

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090287624A1 (en) 2005-12-23 2009-11-19 Societe De Commercialisation De Produits De La Recherche Applique-Socpra-Sciences Et Genie S.E.C. Spatio-temporal pattern recognition using a spiking neural network and processing thereof on a portable and/or distributed computer
US20150242744A1 (en) 2014-02-21 2015-08-27 Qualcomm Incorporated Stochastic delay plasticity

Also Published As

Publication number Publication date
EP3942695A1 (en) 2022-01-26
EP3942695C0 (en) 2025-04-30
US10972082B2 (en) 2021-04-06
CN113875156A (zh) 2021-12-31
EP3942695A4 (en) 2023-01-18
JP2022524967A (ja) 2022-05-11
EP3942695B1 (en) 2025-04-30
CN113875156B (zh) 2025-09-09
WO2020190825A1 (en) 2020-09-24
EP4475437A2 (en) 2024-12-11
KR20210137191A (ko) 2021-11-17
US20210075409A1 (en) 2021-03-11
JP7389812B2 (ja) 2023-11-30
EP4475437A3 (en) 2025-02-26
US20220004845A1 (en) 2022-01-06

Similar Documents

Publication Publication Date Title
KR102803834B1 (ko) 상호 상관을 위한 방법 및 장치
CN104869203B (zh) 卡顿的测试方法、装置及测试设备
CN109685144B (zh) 一种对视频模型做评估的方法、装置及电子设备
CN108989889A (zh) 一种视频播放量预测方法、装置及电子设备
CN111275921A (zh) 一种行为监控方法及装置、电子设备
CN115269830B (zh) 异常文本检测模型训练方法、异常文本检测方法及装置
CN105094986B (zh) 一种面向存储系统的突发访问行为的预测方法及装置
US12014261B2 (en) Method and apparatus for shared cross-stream event detection
CN108960384A (zh) 一种图形码的解码方法及客户端
CN110297602B (zh) 一种实时数据的处理方法及装置
CN109218829B (zh) 一种基于傅里叶变换的视频播放量可预测性分类方法
CN103678072A (zh) 一种系统测试的方法和装置
CN116189683A (zh) 音频信号处理方法、装置、设备及存储介质
CN111130591B (zh) 天线调谐方法、天线调谐装置及终端设备
CN106126640A (zh) 内容数据推送方法及装置
CN114327977B (zh) 一种处理绑卡业务的方法和系统
CN119299773B (zh) 房屋视频处理方法、设备、存储介质及程序产品
CN117752477B (zh) 一种仿生手的手势锁定控制方法、装置、终端及介质
Croisfelt et al. Real-Time Inference for Distributed Multimodal Systems under Communication Delay Uncertainty
CN110569433B (zh) 搜索结果过滤器的构建方法、装置、电子设备及存储介质
La Corte Generation of crosscorrelated random processes
CN111476265A (zh) 一种感应门控制方法、装置、终端及计算机可读介质
CN121354561A (zh) 一种智能语音接口数据调用方法
CN120686039A (zh) 气体绝缘开关设备的局部放电诊断方法及装置
Vajda et al. Global statistical information in exponential experiments and selection of exponential models

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20211014

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20230213

Comment text: Request for Examination of Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20240524

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20250327

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20250429

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20250430

End annual number: 3

Start annual number: 1

PG1601 Publication of registration