KR102638562B1 - Apparatus and method of continuous wavelet transform - Google Patents

Apparatus and method of continuous wavelet transform Download PDF

Info

Publication number
KR102638562B1
KR102638562B1 KR1020210175049A KR20210175049A KR102638562B1 KR 102638562 B1 KR102638562 B1 KR 102638562B1 KR 1020210175049 A KR1020210175049 A KR 1020210175049A KR 20210175049 A KR20210175049 A KR 20210175049A KR 102638562 B1 KR102638562 B1 KR 102638562B1
Authority
KR
South Korea
Prior art keywords
fft
wavelet transform
module
continuous wavelet
r2sdf
Prior art date
Application number
KR1020210175049A
Other languages
Korean (ko)
Other versions
KR20230086431A (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 KR1020210175049A priority Critical patent/KR102638562B1/en
Publication of KR20230086431A publication Critical patent/KR20230086431A/en
Application granted granted Critical
Publication of KR102638562B1 publication Critical patent/KR102638562B1/en

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7253Details of waveform analysis characterised by using transforms
    • A61B5/726Details of waveform analysis characterised by using transforms using Wavelet transforms
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/0002Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network
    • A61B5/0015Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network characterised by features of the telemetry system
    • A61B5/002Monitoring the patient using a local or closed circuit, e.g. in a room or building
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7203Signal processing specially adapted for physiological signals or for diagnostic purposes for noise prevention, reduction or removal
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7253Details of waveform analysis characterised by using transforms
    • A61B5/7257Details of waveform analysis characterised by using transforms using Fourier transforms

Abstract

본 발명의 일 실시예에 따른 연속 웨이블릿 변환 장치는 입력신호(생체신호)를 FFT 처리하는 R2SDF FFT 모듈; 상기 R2SDF FFT 모듈의 FFT 처리결과를 4 채널로 분산정렬하여 재배치(reordering)하는 4개의 SRAM; 상기 주파수 영역의 daughter wavelets 값들이 초기화 되어있는 4개의 웨이블릿 SRAM; 상기 4 채널 곱셈을 위한 4개의 승산기; 및 상기 4개의 승산기의 계산값을 IFFT 처리하는 4 채널 병렬 입력구조의 MRMDC IFFT 모듈을 포함한다.A continuous wavelet transform device according to an embodiment of the present invention includes an R2SDF FFT module for FFT processing an input signal (biological signal); 4 SRAMs for reordering the FFT processing results of the R2SDF FFT module by distributing and sorting them into 4 channels; Four wavelet SRAMs in which daughter wavelets values in the frequency domain are initialized; 4 multipliers for the 4-channel multiplication; and an MRMDC IFFT module with a 4-channel parallel input structure that IFFT processes the calculated values of the four multipliers.

Description

연속 웨이블릿 변환 장치 및 방법{Apparatus and method of continuous wavelet transform}Continuous wavelet transform apparatus and method {Apparatus and method of continuous wavelet transform}

본 발명은 고속 생체신호 모니터링 또는 고해상도의 신호-주파수 해석을 요구하는 분야에 적용가능하도록 관측하고자 하는 생체신호에 따라 신호의 길이 및 특성에 맞출 수 있도록, 8/16/32/64/128/256/512/1024-point 가변 길이와 가변 웨이블릿(wavelet)이 지원되는 연속 웨이블릿 변환 장치 및 방법에 관한 것이다.The present invention can be applied to fields requiring high-speed biosignal monitoring or high-resolution signal-frequency analysis, so that the length and characteristics of the signal can be adjusted according to the biosignal to be observed, 8/16/32/64/128/256 /512/1024-point Pertains to a continuous wavelet transform apparatus and method in which variable length and variable wavelet are supported.

침습 방식의 생체 신호 측정은, 사람의 독립성과 이동성을 심각하게 제한하며, 패치와 센서의 전극 등에 의한 고통을 초래할 수 있으며, 환자가 심한 화상이나 부상을 입었을 경우 부착하기 어려운 단점을 가진다. Invasive biosignal measurement seriously limits a person's independence and mobility, can cause pain due to patches and sensor electrodes, and has the disadvantage of being difficult to attach if the patient has suffered severe burns or injuries.

이 같은 문제로 인하여, 침습 방식의 생체 신호 측정은 지속적인 생체 신호 모니터링이 중요한 장기 수면 모니터링 및 건강관리 관점에서 사용에 큰 제한이 생긴다. Due to this problem, invasive bio-signal measurement has significant limitations in its use from the perspective of long-term sleep monitoring and health management, where continuous bio-signal monitoring is important.

이를 극복하기 위한 비침습 방식의 생체 신호 모니터링이 주목받고 있으며 깊이(depth) 카메라, 적외선 열 센서, 레이다 등이 사용된다. To overcome this, non-invasive bio-signal monitoring is attracting attention, and depth cameras, infrared thermal sensors, radar, etc. are used.

그 중 레이다 센서는 밤 낮에 영향을 받지 않으며, 레이다와 관측 대상 사이에 벽 과 같은 장애물이 존재하여도 관측이 가능하다. Among them, the radar sensor is not affected by day or night, and observation is possible even if an obstacle such as a wall exists between the radar and the object of observation.

또한 저전력, 저면적 구현이 가능하여 다른 비침습 방식 센서들 보다 지속적인 모니터링에 유리하다.In addition, it can be implemented with low power and a small area, making it more advantageous for continuous monitoring than other non-invasive sensors.

레이다 기반 생체 신호 처리는 불규칙한 이상 신호(non-stationary signal)를 검출하기 위하여 시간-주파수 분석이 필요하다. Radar-based biological signal processing requires time-frequency analysis to detect irregular non-stationary signals.

시간-주파수 분석법 중 널리 알려진 STFT(Short-time-Fourier-transform)인 경우 분석 신호가 높은 신뢰도를 얻기 위해서는 관측 시간을 크게 가져야 하는 문제가 있으며, 이는 응급상황에서 대처의 지연을 유발할 수 있다.In the case of STFT (Short-time-Fourier-transform), a widely known time-frequency analysis method, there is a problem that the observation time must be large in order to obtain high reliability of the analysis signal, which can cause a delay in response in emergency situations.

위와 같은 문제로 인하여, STFT 대비 짧은 관측 시간만으로도 높은 정확도를 얻을 수 있는 CWT(Continuous-wavelet-transform) 기반 레이다 생체 신호 처리 기술이 주목받고 있다. Due to the above problems, CWT (Continuous-wavelet-transform)-based radar biosignal processing technology, which can achieve high accuracy even with a shorter observation time compared to STFT, is attracting attention.

그러나 소프트웨어 연산만으로는 CWT(Continuous-wavelet-transform) 알고리즘의 많은 합성곱 연산과, 신호 길이에 따라 연산 복잡도가 기하급수적으로 증가되는 특징으로 인하여, 실시간 생체 신호 분석이 힘든 단점이 있어 널리 사용되지 못하였다.However, due to the many convolution operations of the CWT (Continuous-wavelet-transform) algorithm alone and the characteristic that the computational complexity increases exponentially depending on the signal length, it has the disadvantage of being difficult to analyze biological signals in real time, so it has not been widely used. .

이와 같은 이유로 에지 디바이스(edge device) 단에서 실시간 생체 신호 연속 모니터링을 처리하기 위해서는 CWT 연산에 소요되는 시간을 최소화하도록 하드웨어 형태의 가속기 구현이 필수적이다.For this reason, in order to process real-time continuous monitoring of biological signals at the edge device level, it is essential to implement an accelerator in hardware form to minimize the time required for CWT calculation.

CWT의 시간 영역에서 합성곱 연산은 대상 신호들을 주파수 영역으로 천이 시킨 뒤 두 신호의 곱을 수행함으로써 연산 복잡도를 감소시킬 수 있다. The convolution operation in the time domain of CWT can reduce computational complexity by transferring target signals to the frequency domain and then performing the multiplication of the two signals.

시간과 주파수 영역 간 천이를 위한 FFT 프로세서는 버터플라이 구조, 파이프라인 구조, 병렬 구조로 구현이 가능한데, 그중 파이프라인 구조는 연산 속도와 면적 간의 교환 관계를 가장 잘 만족시킨다. FFT processors for transition between time and frequency domains can be implemented in butterfly structure, pipeline structure, and parallel structure, of which the pipeline structure best satisfies the trade-off between calculation speed and area.

파이프라인 구조는 데이터 정렬(data ordering) 방식에 따라 다시 SDF(single-path delay feedback) 방식과 MDC(multi-path delay commutator) 방식으로 구분된다. The pipeline structure is further divided into the SDF (single-path delay feedback) method and the MDC (multi-path delay commutator) method depending on the data ordering method.

radix-2 기반 SDF 방식은 단일 채널 FFT 인 경우 비 단순 승산을 최소로 할 수 있어 그 구조가 간단하지만, 다중 채널인 경우 하드웨어 복잡도가 선형적으로 증가하는 단점이 있다. The radix-2-based SDF method has a simple structure because it can minimize non-simple multiplication in the case of a single-channel FFT, but has the disadvantage that hardware complexity increases linearly in the case of multi-channel FFT.

MDC 방식은 단일 채널일 때는 면적이 SDF보다 크지만, 다중 채널 FFT인 경우 SDF보다 저 면적 구현이 가능한 장점이 있다.The MDC method has a larger area than SDF when using a single channel, but when using multi-channel FFT, it has the advantage of being able to implement a smaller area than SDF.

종래의 경우, 단일 버터플라이 구조에 기반한 CWT 하드웨어(HW)를 구현하여 저면적 구현이 가능하나, 많은 분석 주파수 성분을 가지는 생체 신호의 고속 처리가 힘들며, 분석 대상신호가 Electroencephalogram (EEG) 신호에 타겟팅(targeting) 되어 다양한 길이의 CWT 연산이 지원되지 않는다.In the conventional case, low-area implementation is possible by implementing CWT hardware (HW) based on a single butterfly structure, but high-speed processing of biological signals with many analysis frequency components is difficult, and the signal to be analyzed is targeted to the Electroencephalogram (EEG) signal. (targeting), CWT operations of various lengths are not supported.

이에 본 발명에서는 단일 채널 입력인 FFT를 위하여 R2SDF (radix-2 SDF)를 방식을 채택하고, FFT 복잡도를 최소화하는 파이프라인 FFT 기반 mixed-radix CWT 프로세서인 연속 웨이블릿 변환 장치를 제안한다.Accordingly, the present invention adopts the R2SDF (radix-2 SDF) method for FFT, which is a single channel input, and proposes a continuous wavelet transform device that is a pipeline FFT-based mixed-radix CWT processor that minimizes FFT complexity.

제안하는 연속 웨이블릿 변환 장치는 다중 병렬 채널 입력인 IFFT는 radix-4를 기반으로 하되, 비단순승산기를 최소화한 radix-4/2 FFT 알고리즘을 이용한 MRMDC (mixed-radix MDC) 구조(면적 증가량을 최소화함으로써, 고속성을 가지면서도 낮은 복잡도를 가지도록 설계)에 DMM1을 제거된 형태로 채택하고 또한 생체 신호는 EEG, 호흡, 심박과 같이 관측하고자 하는 대상신호에 따라 관측시간과, 샘플링 주파수 등이 달라 다양한 길이를 가지므로, 8/16/32/64/…/1024-point의 다양한 길이의 연산을 지원할 수 있도록 설계되었다.The proposed continuous wavelet transform device uses multi-parallel channel input IFFT based on radix-4, and MRMDC (mixed-radix MDC) structure using the radix-4/2 FFT algorithm that minimizes non-simple multipliers (minimizing area increase). By doing so, it is designed to have high speed and low complexity) and adopts the DMM1 in a removed form. In addition, the observation time and sampling frequency of biological signals vary depending on the target signal to be observed, such as EEG, respiration, and heart rate. Available in various lengths, 8/16/32/64/… /Designed to support operations of various lengths of 1024-point.

Optimized FPGA based continuous wavelet transform Yahya T. Qassim, et. al.Computers & Electrical Engineering 49 (2016) 84-94.Optimized FPGA based continuous wavelet transform Yahya T. Qassim, et. al.Computers & Electrical Engineering 49 (2016) 84-94.

본 발명이 해결하고자 하는 과제는 종래의 문제점을 해결할 수 있는 연속 웨이블릿 변환 장치 및 방법을 제공하는 데 그 목적이 있다.The purpose of the present invention is to provide a continuous wavelet transform device and method that can solve conventional problems.

상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 연속 웨이블릿 변환 장치는 입력신호를 FFT 처리하는 R2SDF FFT 모듈; 상기 R2SDF FFT 모듈의 FFT 처리결과를 4 채널로 재정렬(reordering)하는 4개의 SRAM; 주파수 영역의 daughter wavelets 값들이 초기화 되어있는 4개의 웨이블릿 SRAM; 상기 4 채널 곱셈을 위한 4개의 승산기; 및 상기 4개의 승산기의 계산값을 IFFT 처리하는 4 채널 병렬 입력구조의 MRMDC IFFT 모듈을 포함한다.A continuous wavelet transform device according to an embodiment of the present invention to solve the above problem includes an R2SDF FFT module for FFT processing an input signal; 4 SRAMs for reordering the FFT processing results of the R2SDF FFT module into 4 channels; Four wavelet SRAMs with initialized daughter wavelet values in the frequency domain; 4 multipliers for the 4-channel multiplication; and an MRMDC IFFT module with a 4-channel parallel input structure that IFFT processes the calculated values of the four multipliers.

상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 연속 웨이블릿 변환 방법은 R2SDF FFT 모듈에서 입력신호를 FFT 처리하는 단계; 4개의 SRAM을 사용하여 상기 R2SDF FFT 모듈의 FFT 처리결과를 4 채널로 재정렬(reordering)하는 단계; 4개의 승산기에서 4개의 SRAM에 저장된 FFT 처리결과와 4개의 웨이블릿 SRAM에 저장된 입력신호의 주파수 영역의 daughter wavelets 값과 요소별 곱셈을 수행하는 단계; 4 채널 병렬 입력구조의 MRMDC IFFT 모듈에서 상기 4개의 승산기의 연산값을 IFFT 처리하는 단계를 포함한다.A continuous wavelet transform method according to an embodiment of the present invention to solve the above problem includes FFT processing an input signal in an R2SDF FFT module; Reordering the FFT processing results of the R2SDF FFT module into 4 channels using 4 SRAMs; Performing element-by-element multiplication in four multipliers with the FFT processing results stored in four SRAMs and the daughter wavelets values in the frequency domain of the input signal stored in four wavelet SRAMs; It includes the step of IFFT processing the calculated values of the four multipliers in the MRMDC IFFT module with a 4-channel parallel input structure.

따라서, 본 발명의 일 실시예에 따른 연속 웨이블릿 변환 장치 및 방법은 관측하고자 하는 생체신호에 따라 신호의 길이 및 특성에 맞출 수 있도록, 8/16/32/64/128/256/512/1024-point 가변 길이와 가변 웨이블릿(wavelet)이 지원되는 고속 scalable CWT 프로세서의 하드웨어 구조에 관한 것으로, FFT based CWT 알고리즘을 사용하여 연산복잡도를 낮출 수 있었으며, 곱 연산과 IFFT 연산을 다 채널화하여 다수의 웨이블릿(wavelet)과의 곱 연산과 IFFT 연산의 횟수를 줄임으로써 전체 연산 속도를 줄일 수 있다는 이점을 제공한다.Therefore, the continuous wavelet transform device and method according to an embodiment of the present invention is 8/16/32/64/128/256/512/1024- 8/16/32/64/128/256/512/1024- point This is about the hardware structure of a high-speed scalable CWT processor that supports variable length and variable wavelets. The computational complexity was reduced by using the FFT-based CWT algorithm, and multi-channel multiplication and IFFT operations were used to enable multiple wavelets. It provides the advantage of reducing the overall operation speed by reducing the number of multiplication operations with (wavelet) and IFFT operations.

또한, 입력 채널 개수에 따라서 FFT와 IFFT 모듈을 다르게 가져감으로써 면적과 속도 간의 교환관계를 조절할 수 있고, 단일 채널 입력인 FFT 모듈은 적은 복잡도로 구현 가능하며 파이프라인 구조를 가져 면적과 속도 간의 교환관계를 충족하는 R2SDF 구조를 사용하고, 4채널 입력인 IFFT 모듈은 적은 비 단순 승산기를 가지며 4채널에서 SDF 구조대비 좋은 면적 효율을 가지는 MRMDC 구조를 사용하고, 앞에서 상술한 것과 같이, FFT 결과 값을 4개의 SRAM을 통하여 정렬함으로써, MDC 구조에서 가장 큰 면적을 가지며, 많은 latency을 유발하는 첫 번째 DMM을 제거함으로써 전체 프로세서의 면적과 연산 소요 시간을 단축시킬 수 있다는 이점을 제공한다.In addition, the exchange relationship between area and speed can be adjusted by using different FFT and IFFT modules depending on the number of input channels. The FFT module, which is a single channel input, can be implemented with low complexity and has a pipeline structure to exchange between area and speed. The R2SDF structure that satisfies the relationship is used, and the IFFT module, which is a 4-channel input, has fewer non-simplex multipliers and uses the MRMDC structure with better area efficiency than the SDF structure in 4 channels. As described above, the FFT result value is By aligning through four SRAMs, it provides the advantage of reducing the overall processor area and computation time by eliminating the first DMM, which has the largest area in the MDC structure and causes a lot of latency.

도 1은 wavelet 함수인 Morlet, Mexican hat, Paul wavelet의 scale이 1일 때 시간과 주파수 영역에서 형태를 나타낸 그래프이다.
도 2는 종래의 FFT 기반 CWT 연산 장치의 하드웨어 구조도이다.
도 3a는 본 발명의 일 실시예에 따른 연속 웨이블릿 변환 장치의 하드웨어 구조도이다.
도 3b는 본 발명의 일 실시예에 따른 연속 웨이블릿 변환 방법을 설명한 흐름도이다.
도 4a는 도 3a에 도시된 R2SDF FFT 모듈의 하드웨어 아키텍쳐이고, 도 4b는 32-point FFT를 위한 stage를 예시로 위의 동작에 대한 timing diagram이다.
도 5는 도 3에 도시된 SRAM 쓰기 패턴의 타이밍 다이어그램도이다.
도 6a는 도 3에 도시된 MRMDC IFFT 모듈의 하드웨어 아키텍쳐이고, 도 6b는 전체 신호길이가 64-point인 신호의 FFT 연산 과정 중 2번째 stage인 16-point FFT의 data mapping을 위한 DMM의 구조와, 데이터 플로우이다.
도 6c는 Radix-4 butterfly 연산기의 입력과 마지막 stage의 입력 data mapping을 위한 DMM의 구조를 나타낸 예시도이다.
도 6d는 아래는 W8 1, W8 2, W8 3의 곱셈을 구현하기 위한 회로의 블록도이다.
도 7은 도 3a에 도시된 MRMDC IFFT 모듈의 연산(곱셈) 타이밍 다이어그램도이다.
Figure 1 is a graph showing the shape of the wavelet functions Morlet, Mexican hat, and Paul wavelets in the time and frequency domains when the scale is 1.
Figure 2 is a hardware structure diagram of a conventional FFT-based CWT calculation device.
Figure 3a is a hardware structure diagram of a continuous wavelet transform device according to an embodiment of the present invention.
Figure 3b is a flowchart explaining a continuous wavelet transform method according to an embodiment of the present invention.
FIG. 4A is a hardware architecture of the R2SDF FFT module shown in FIG. 3A, and FIG. 4B is a timing diagram for the above operation using a stage for 32-point FFT as an example.
FIG. 5 is a timing diagram of the SRAM write pattern shown in FIG. 3.
Figure 6a is the hardware architecture of the MRMDC IFFT module shown in Figure 3, and Figure 6b shows the structure of the DMM for data mapping of the 16-point FFT, which is the second stage in the FFT operation process of a signal with a total signal length of 64-points. , is a data flow.
Figure 6c is an example diagram showing the structure of a DMM for mapping the input of the Radix-4 butterfly operator and the input data of the last stage.
Figure 6d is a block diagram of a circuit for implementing multiplication of W 8 1 , W 8 2 , and W 8 3 .
FIG. 7 is an operation (multiplication) timing diagram of the MRMDC IFFT module shown in FIG. 3A.

이하, 본 명세서의 실시예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 명세서에 기재된 기술을 특정한 실시 형태에 대해 한정하는 것이 아니며, 본 명세서의 실시예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 본 명세서에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.Hereinafter, embodiments of the present specification are described with reference to the attached drawings. However, this does not limit the technology described herein to specific embodiments, and should be understood to include various modifications, equivalents, and/or alternatives to the embodiments herein. . In connection with the description of the drawings, similar reference numbers may be used for similar components. In this specification, expressions such as “have,” “may have,” “includes,” or “may include” refer to the presence of the corresponding feature (e.g., component such as numerical value, function, operation, or part). , and does not rule out the existence of additional features.

본 명세서에서, "A 또는 B," "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상"등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B," "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.As used herein, expressions such as “A or B,” “at least one of A or/and B,” or “one or more of A or/and B” may include all possible combinations of the items listed together. . For example, “A or B,” “at least one of A and B,” or “at least one of A or B” includes (1) at least one A, (2) at least one B, or (3) it may refer to all cases including both at least one A and at least one B.

본 명세서에서 사용된 "제 1," "제 2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제 1 사용자 기기와 제 2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 명세서에 기재된 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 바꾸어 명명될 수 있다.As used herein, expressions such as “first,” “second,” “first,” or “second,” can modify various components regardless of order and/or importance, and refer to one component. It is only used to distinguish from other components and does not limit the components. For example, a first user device and a second user device may represent different user devices regardless of order or importance. For example, a first component may be renamed a second component without departing from the scope of rights described in this specification, and similarly, the second component may also be renamed to the first component.

어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제 3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.A component (e.g., a first component) is “(operatively or communicatively) coupled with/to” another component (e.g., a second component). When referred to as being “connected to,” it should be understood that any component may be directly connected to the other component or may be connected through another component (e.g., a third component). On the other hand, when a component (e.g., a first component) is said to be “directly connected” or “directly connected” to another component (e.g., a second component), the component and the It may be understood that no other component (e.g., a third component) exists between other components.

본 명세서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. As used herein, the expression “configured to” may mean, for example, “suitable for,” “having the capacity to,” or “having the capacity to.” ," can be used interchangeably with "designed to," "adapted to," "made to," or "capable of." The term “configured (or set to)” may not necessarily mean “specifically designed to” in hardware. Instead, in some contexts, the expression “a device configured to” may mean that the device is “capable of” working with other devices or components.

예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.For example, the phrase "processor configured (or set) to perform A, B, and C" refers to a processor dedicated to performing the operations (e.g., an embedded processor), or by executing one or more software programs stored on a memory device. , may refer to a general-purpose processor (e.g., CPU or application processor) capable of performing the corresponding operations.

본 명세서에서 사용된 용어들은 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 다른 실시예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 명세서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 명세서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 명세서에서 정의된 용어일지라도 본 명세서의 실시예들을 배제하도록 해석될 수 없다.Terms used in this specification are merely used to describe specific embodiments and may not be intended to limit the scope of other embodiments. Singular expressions may include plural expressions, unless the context clearly indicates otherwise. Terms used herein, including technical or scientific terms, may have the same meaning as generally understood by a person of ordinary skill in the technical field described herein. Among the terms used in this specification, terms defined in general dictionaries may be interpreted to have the same or similar meaning as the meaning they have in the context of related technology, and unless clearly defined in this specification, have an ideal or excessively formal meaning. It is not interpreted as In some cases, even terms defined in this specification cannot be interpreted to exclude embodiments of this specification.

이하, 첨부된 도면들에 기초하여 본 발명의 일 실시예에 따른 연속 웨이블릿 변환 장치 및 방법을 보다 상세하게 설명하도록 한다. Hereinafter, a continuous wavelet transform apparatus and method according to an embodiment of the present invention will be described in more detail based on the attached drawings.

본 발명을 설명하기에 앞서, CWT 알고리즘 및 FFT 기반의 CWT 하드웨어 아키텍쳐를 간략하게 설명하도록 한다. Before explaining the present invention, the CWT algorithm and FFT-based CWT hardware architecture will be briefly described.

CWT는 STFT와 같은 시간-주파수 분석법으로 연속적인 신호 가 입력되었을 때, [식 1]과 같이 표현된다. 는 CWT 결과값이고, 는 wavelet 함수를, *는 켤례 복소수를 의미하며, s는 scale로 wavelet 함수의 시간 축 넓이를 결정한다.CWT is a time-frequency analysis method like STFT for continuous signals. When entered, it is expressed as [Equation 1]. is the CWT result, means the wavelet function, * means the complex conjugate number, and s is the scale that determines the time axis area of the wavelet function.

[식 1][Equation 1]

위 합성곱 식을 다양한 scale에서 반복 수행함으로써, 시간-주파수 분석이 가능하다. By repeatedly performing the above convolution equation at various scales, time-frequency analysis is possible.

여기서 wavelet은 시간 축 양옆으로 0으로 크기가 수렴하고, 진동하는 평균 0인 신호들을 말한다. Here, wavelets refer to signals whose size converges to 0 on both sides of the time axis and oscillates with an average of 0.

대표적인 wavelet 함수인 Morlet, Mexican hat, Paul wavelet의 scale이 1일 때 시간과 주파수 영역에서 형태를 도 1과 같이 표현된다.When the scale of the representative wavelet functions, Morlet, Mexican hat, and Paul wavelet, is 1, the shape is expressed in the time and frequency domains as shown in Figure 1.

CWT는 분석하고자하는 신호의 형태에 맞추어 적절한 wavelet을 선택할 수 있어 신호의 모양이 중요한 생체 신호 모니터링에 좋은 적용성을 가진다. CWT can select an appropriate wavelet according to the shape of the signal to be analyzed, making it highly applicable to monitoring biological signals where the shape of the signal is important.

이렇게 선택되어 CWT 연산에 사용되는 기본 wavelet을 mother wavelet이라 부르며, mother wavelet에서 scale을 변화시켜 만들어진 wavelet을 daughter wavelet이라 한다. The basic wavelet selected in this way and used in CWT calculation is called the mother wavelet, and the wavelet created by changing the scale of the mother wavelet is called the daughter wavelet.

Wavelet의 scale은 다양한 주파수 분석을 위하여 사용되는데, scale의 크기가 작을수록 wavelet의 시간 축 압축 정도가 강해져 높은 주파수 성분 검출에 효과적이며, 반대로 크기가 커질수록 낮은 주파수 성분 검출에 유리하다.The scale of the wavelet is used for various frequency analysis. The smaller the scale, the stronger the time axis compression of the wavelet, making it effective in detecting high frequency components. Conversely, the larger the scale, the more advantageous it is in detecting low frequency components.

다양한 scale을 가지는 wavelets 들과 신호를 [식 1]의 연산을 통하여 얻은 2D 상관도 집합의 절대값을 scalogram이라 하며 이를 이용하여 시간-주파수 분석을 수행할 수 있다. 같은 시간-주파수 분석법인 STFT와 달리, CWT의 주파수 해상도는 scale의 값을 얼마나 촘촘히 가져가는가에 의존함으로, 높은 주파수 해상도를 얻기 위하여 STFT 방식 대비 긴 관측 시간을 가질 필요가 없다.The absolute value of the 2D correlation set obtained through the calculation of [Equation 1] of wavelets and signals with various scales is called a scalogram, and time-frequency analysis can be performed using this. Unlike STFT, which is the same time-frequency analysis method, the frequency resolution of CWT depends on how tightly the scale value is taken, so there is no need to have a longer observation time compared to the STFT method to obtain high frequency resolution.

그러나 시간 영역에서 CWT 연산은 합성곱 특성상 연산양이 신호 길이의 제곱수()에 비례하게 되는 높은 연산 복잡도로 인하여 실시간 모니터링에 적용하기 어려운 문제가 있다. 이런 복잡도 문제는 아래 [식 2]의 관계식을 이용하여 해결할 수 있다. 는 시간 영역의 신호를 X(w), Y(w)는 주파수영역의 신호를 의미한다.However, in the time domain, CWT operation requires the calculation amount to be the square of the signal length due to the nature of convolution ( ), which makes it difficult to apply it to real-time monitoring due to the high computational complexity that is proportional to ). This complexity problem can be solved using the relationship in [Equation 2] below. X(w) refers to the signal in the time domain, and Y(w) refers to the signal in the frequency domain.

[식 2][Equation 2]

시간 영역에서 합성곱은 주파수 영역에서 단순 곱으로 변환되며, 그 역도 성립한다. A convolution in the time domain is converted to a simple product in the frequency domain, and vice versa.

즉 CWT는 시간영역의 신호와 wavelet을 주파수 영역으로 천이 시킨 뒤 곱 연산을 수행함으로써 합성곱에 의한 연산 복잡도를 크게 줄여 edge-device 단에서도 실시간 사용이 가능하도록 할 수 있다.In other words, CWT can significantly reduce the computational complexity caused by convolution by transferring signals and wavelets from the time domain to the frequency domain and then performing a multiplication operation, enabling real-time use even at the edge-device level.

다음으로, 합성곱 연산 복잡도를 최소화하기 위한 FFT 기반 CWT 연산은 크게 3가지 과정으로 진행된다. Next, the FFT-based CWT operation to minimize the complexity of the convolution operation is largely carried out in three processes.

입력신호 FFT, 입력신호의 FFT 결과와 주파수 영역 wavelet의 곱셈, 곱셈이 완료된 신호의 IFFT 과정이다. This is the process of FFT of the input signal, multiplication of the FFT result of the input signal and the frequency domain wavelet, and IFFT of the multiplied signal.

CWT는 사용하는 scale의 개수에 따라 관측의 정밀도와 주파수 관측 범위가 결정되므로, 반복적인 곱셈과 IFFT 연산이 발생한다. In CWT, the precision of observation and frequency observation range are determined depending on the number of scales used, so repetitive multiplication and IFFT operations occur.

도 2는 기본적인 FFT 기반 CWT 연산의 data flow를 나타낸 것으로 하나의 데이터 경로(data path)를 사용하여 CWT 연산을 수행하며, 사용하는 scale 개수만큼 곱셈과, IFFT를 반복한다.Figure 2 shows the data flow of a basic FFT-based CWT operation. The CWT operation is performed using one data path, and multiplication and IFFT are repeated as many times as the number of scales used.

도 2의 FFT와 IFFT module을 구현하기 위한 방식으로는 하나의 버터플라이(butterfly) 연산자를 둔 단일버터플라이 구조, 각 stage 마다 버터플라이(butterfly) 연산자를 두어 스트림(stream) 형태로 연산을 진행하는 파이프라인 구조, 다중 채널을 이용하여 동시에 연산을 진행하는 병렬구조가 있다. Methods for implementing the FFT and IFFT modules in Figure 2 include a single butterfly structure with one butterfly operator, and a butterfly operator at each stage to perform operations in the form of a stream. There is a pipeline structure and a parallel structure that performs calculations simultaneously using multiple channels.

여기서 병렬 구조는 수율의 측면에서 가장 큰 이점을 가지지만, 하드웨어 복잡도가 너무 커지는 단점으로 인하여, edge device단에 사용하기 어려운 문제가 있다.Here, the parallel structure has the greatest advantage in terms of yield, but has the disadvantage of increasing hardware complexity, making it difficult to use at the edge device level.

Radix-2 알고리즘 기반 단일버터플라이 구조로 FFT/IFFT module을 구현한 경우, N-point 길이를 가지는 신호의 FFT 연산은 의 cycle이 소모된다. When the FFT/IFFT module is implemented with a single butterfly structure based on the Radix-2 algorithm, the FFT operation of a signal with an N-point length is cycle is consumed.

CWT 연산은 FFT 연산과 IFFT 연산, 곱셈을 포함하고 있음으로, 단일버터플라이 구조로 구현 시 scale이 M개 일 때, 의 cycle이 필요하다. Since the CWT operation includes FFT operation, IFFT operation, and multiplication, when implemented with a single butterfly structure, when the number of scales is M, A cycle is needed.

종래의 radix-4 알고리즘 기반 단일버터플라이 구조는 다른 FFT 구조에 비하여 저면적 구현이 가능하고, radix-2 알고리즘 기반 대비 수율이 높다는 장점이 있다.The single butterfly structure based on the conventional radix-4 algorithm has the advantage of being able to implement a lower area than other FFT structures and having a higher yield compared to the radix-2 algorithm.

그러나 단일 버터플라이 구조의 한계로 인하여 많은 scale을 사용하는 경우 latency의 과한 증가로 호흡과 심박과 같은 중요 생체 신호 관측에 사용시 응급상황에서 대처의 지연 등의 문제가 발생할 수 있다However, due to the limitations of the single butterfly structure, when using many scales, latency may increase excessively, which may cause problems such as delayed response in emergency situations when used to observe important biological signals such as breathing and heart rate.

파이프라인 구조 FFT 중 R2SDF로 FFT 연산과 IFFT 연산을 수행한다면 CWT 연산 cycle은 scale이 M개 일 때, 약 2N+M(N)로 단일버터플라이 구조 대비 매우 짧은 cycle을 가지게 되나, 반복되는 요소별 곱셈과 IFFT 연산으로 인하여 1-channel 연산 만으로는 가속효과를 기대하기 힘들다. If FFT and IFFT operations are performed with R2SDF among the pipelined FFT structures, the CWT operation cycle has a very short cycle compared to the single butterfly structure, at about 2N+M(N) when the scale is M, but each repeated element has a very short cycle. Due to multiplication and IFFT operations, it is difficult to expect acceleration effects with 1-channel operations alone.

좋은 가속효과를 위해서는 multi-channel 연산에 특화된 MDC 구조를 사용하여 반복 횟수를 억제하는 것이 바람직하다.For good acceleration effects, it is desirable to suppress the number of repetitions by using an MDC structure specialized for multi-channel operations.

이에 본 발명에서 반복적인 요소별 곱셉과 IFFT 연산을 병렬로 수행함으로써 반복 횟수를 줄여 CWT 연산을 가속화할 수 있는 CWT를 제안한다.Accordingly, the present invention proposes a CWT that can accelerate the CWT operation by reducing the number of repetitions by performing repeated multiplication and IFFT operations in parallel for each element.

도 3a는 본 발명의 일 실시예에 따른 연속 웨이블릿 변환 장치의 장치 블록도이고, 도 3b는 본 발명의 일 실시예에 따른 연속 웨이블릿 변환 방법을 설명한 흐름도이다.FIG. 3A is a device block diagram of a continuous wavelet transform device according to an embodiment of the present invention, and FIG. 3B is a flowchart explaining a continuous wavelet transform method according to an embodiment of the present invention.

도 3a에 도시된 바와 같이, 본 발명의 일 실시예에 따른 연속 웨이블릿 변환 장치(100)는 입력신호(생체신호)를 FFT 처리하는 R2SDF FFT 모듈(110), 상기 R2SDF FFT 모듈의 FFT 처리결과를 4 채널로 재배치(reordering)하는 4개의 SRAM(120), 주파수 영역의 daughter wavelets 값들이 초기화 되어있는 4개의 웨이블릿 SRAM(130), 상기 4 채널 곱셈을 위한 4개의 승산기(140) 및 상기 4개의 승산기의 계산값을 IFFT 처리하는 4 채널 병렬 입력구조의 MRMDC IFFT 모듈(150)을 포함한다.As shown in Figure 3a, the continuous wavelet transform device 100 according to an embodiment of the present invention includes an R2SDF FFT module 110 for FFT processing an input signal (biological signal), and an FFT processing result of the R2SDF FFT module. Four SRAMs 120 for reordering into 4 channels, 4 wavelet SRAMs 130 with initialized daughter wavelet values in the frequency domain, 4 multipliers 140 for the 4-channel multiplication, and the 4 multipliers It includes an MRMDC IFFT module 150 with a 4-channel parallel input structure that IFFT processes the calculated value.

도 3b에 도시된 바와 같이, 본 발명의 일 실시예에 따른 연속 웨이블릿 변환 방법은 R2SDF FFT 모듈에서 입력신호(생체신호)를 FFT 처리하는 과정(S710), 4개의 SRAM에서 상기 R2SDF FFT 모듈의 FFT 처리결과를 4 채널로 재배치(reordering)하는 과정(S720), 4개의 승산기에서 4개의 SRAM에 저장된 FFT 처리결과와 4개의 웨이블릿 SRAM에 저장된 주파수 영역의 daughter wavelets 값과 요소별 곱셈을 수행하는 과정(S730) 및 4 채널 병렬 입력구조의 MRMDC IFFT 모듈에서 상기 4개의 승산기의 연산값을 IFFT 처리하는 과정(S740)을 포함한다.As shown in Figure 3b, the continuous wavelet transform method according to an embodiment of the present invention includes a process of FFT processing an input signal (biological signal) in the R2SDF FFT module (S710), and FFT of the R2SDF FFT module in four SRAMs. The process of reordering the processing results to 4 channels (S720), the process of performing element-by-element multiplication with the FFT processing results stored in 4 SRAMs in 4 multipliers and the daughter wavelets values in the frequency domain stored in 4 wavelet SRAMs ( S730) and IFFT processing the calculated values of the four multipliers in the MRMDC IFFT module with a 4-channel parallel input structure (S740).

본 발명의 연속 웨이블릿 변환 장치(100)는 고속 생체 신호 처리를 위하여 제안된 mixed-radix CWT 프로세서로서, 웨이블릿(wavelet)의 scales로 인한 반복을 줄이기 위하여 다중 채널 곱과 IFFT를 수행한다.The continuous wavelet transform device 100 of the present invention is a mixed-radix CWT processor proposed for high-speed biological signal processing, and performs multi-channel multiplication and IFFT to reduce repetition due to wavelet scales.

여기서, 채널의 개수는 MRMDC IFFT 모듈(150)의 면적 증가량을 최소화하기 위하여 4-channel로 선택되었다.Here, the number of channels was selected as 4-channel to minimize the increase in area of the MRMDC IFFT module 150.

한편, 입력값은 생체 신호로써 시간-주파수 분석을 하고자 하는 대상 신호이다.Meanwhile, the input value is a biological signal and is the target signal for time-frequency analysis.

해당 입력값은 최초 1회 FFT 연산을 마친 후 그 결과를 SRAM(120)에 저장하여 다수의 daughter wavelets과 요소별 곱셈을 하는 대상이다. The input value is subject to element-by-element multiplication with a number of daughter wavelets by storing the result in SRAM (120) after completing the first FFT operation.

상기 R2SDF FFT 모듈(110)은 구현 복잡도가 낮은 radix-2 알고리즘을 기반으로 하며, 1-채널 입력에 대해 속도와 면적의 교환관계를 가장 잘 만족시키는 것으로 알려진 SDF 파이프라인 구조를 갖는다. The R2SDF FFT module 110 is based on the radix-2 algorithm with low implementation complexity, and has an SDF pipeline structure known to best satisfy the trade-off between speed and area for 1-channel input.

도 4a는 도 3a에 도시된 R2SDF(Radix-2 Single-Path Delay Feedback) FFT 모듈의 하드웨어 구조를 나타낸 것이다. Figure 4a shows the hardware structure of the Radix-2 Single-Path Delay Feedback (R2SDF) FFT module shown in Figure 3a.

도 4를 참조하면, 상기 R2SDF FFT 모듈(110)은 각 stage에서 연산에 사용할 입력 신호를 선택함으로써 8/16/32/64/…/1024-point의 가변포인트를 지원할 수 있다.Referring to FIG. 4, the R2SDF FFT module 110 selects the input signal to be used for calculation in each stage to achieve 8/16/32/64/... /1024-point variable points can be supported.

상기 R2SDF FFT 모듈(110)의 FFT 연산값은 4-channel 곱과 IFFT 연산을 진행한다. The FFT operation value of the R2SDF FFT module 110 undergoes 4-channel multiplication and IFFT operation.

여기서, 반복적인 요소별 곱과 IFFT을 수행하기 위하여 매 반복마다 다시 FFT 연산을 수행하는 것은 속도와 연산량 측면에서 비효율적이다. Here, performing the FFT operation again at each repetition to perform repeated element-wise multiplication and IFFT is inefficient in terms of speed and amount of calculation.

따라서, 반복적인 FFT 연산을 피하기 위해서 FFT 결과를 저장할 SRAM이 필수적으로 존재해야 한다.Therefore, in order to avoid repetitive FFT operations, SRAM to store FFT results must exist.

즉, 본 발명의 4개의 SRAM(120)는 4-channel 곱셈에 사용하기 위하여 FFT 결과를 저장하는 구성일 수 있다.That is, the four SRAMs 120 of the present invention may be configured to store FFT results for use in 4-channel multiplication.

또한, 본 발명의 4개의 Wavelet SRAM(130)은 분석 대상 신호에 맞추어 사용하고자 하는 daughter wavelets의 주파수 영역 신호를 초기화하여 사용하기 위한 구성이다.In addition, the four Wavelet SRAMs 130 of the present invention are configured to initialize and use the frequency domain signal of the daughter wavelets to be used according to the signal to be analyzed.

예컨대, 상기 4개의 Wavelet SRAM(130)을 통해 최대 1024-point길이를 가지는 주파수영역의 wavelet 신호를 24개까지 초기화 할 수 있으며 초기화된 wavelet 신호는 외부 입력신호를 이용하여 최소 4개부터 4의 배수 단위로 사용 개수가 제어된다.For example, through the four Wavelet SRAMs 130, up to 24 wavelet signals in the frequency domain with a maximum length of 1024 points can be initialized, and the initialized wavelet signals can range from at least 4 to multiples of 4 using external input signals. The number of uses is controlled per unit.

다음으로, 승산기(140)는 FFT 결과가 4개의 SRAM에 전부 기록(write) 되면, 4-channel 곱셈을 수행한다. 즉, SRAM에 저장된 입력신호의 FFT 결과값 데이터와 Wavelet SRAM(130)에 초기화 된 값을 하나씩 입력받아 곱셈연산을 수행하고, 스트림(stream) 형태로 곱셈 결과값을 출력한다. 출력된 곱셈의 결과값은 IFFT 모듈(140)의 입력으로 전달된다.Next, the multiplier 140 performs 4-channel multiplication when all FFT results are written to four SRAMs. That is, the FFT result data of the input signal stored in the SRAM and the value initialized in the Wavelet SRAM (130) are input one by one, a multiplication operation is performed, and the multiplication result is output in the form of a stream. The output result of multiplication is transmitted to the input of the IFFT module 140.

참고로, 도 4b를 참조하면, R2SDF FFT module은 단순한 구조로 1-channel pipeline FFT 연산에 널리 사용된다. R2SDF 구조는 1-channel 입력을 각 stage마다 가지고 있는 지연소자를 통하여 data mapping을 수행한다. 각 stage의 지연소자는 stage에서 수행해야하는 FFT point 수의 절반을 가진다. N-point FFT 인 경우 1-channel 입력 data가 들어오면 0 ~ (N/2-1) 번째의 point를 지연소자를 이용하여 지연함으로써 이후 입력되는 N/2 ~ N-1 번째의 point와 radix-2 butterfly 연산자의 입력 쌍을 맞출 수 있게 된다. Radix-2 butterfly 연산 후 출력되는 2-channel data 중 butterfly 연산자에서 '+'의 연산이 수행된 하나의 채널은 바로 다음 stage의 입력으로 들어간다. Butterfly 연산자에서 '-'의 연산이 수행된 다른 하나의 채널은 곧바로 다음 stage로 가지 않고, 해당 stage내의 지연소자에 입력되어 butterfly 연산자에서 '+'의 연산 값이 모두 출력될 때까지 출력을 지연한다, 이후 twiddle factor의 곱셈 연산이 수행된 후, 다음 stage의 1-channel 입력으로 뒤따라 들어가게 된다. 도 4b에 32-point FFT를 위한 stage를 예시로 위의 동작에 대한 timing diagram을 첨부하였다.For reference, referring to FIG. 4b, the R2SDF FFT module has a simple structure and is widely used in 1-channel pipeline FFT calculation. The R2SDF structure performs data mapping through a delay element that has a 1-channel input in each stage. The delay elements in each stage have half the number of FFT points that must be performed in the stage. In the case of N-point FFT, when 1-channel input data comes in, the 0th to (N/2-1)th point is delayed using a delay element, and the radix- 2 It becomes possible to match input pairs of the butterfly operator. Among the 2-channel data output after the Radix-2 butterfly operation, one channel on which the '+' operation was performed in the butterfly operator goes directly into the input of the next stage. The other channel on which the '-' operation has been performed in the butterfly operator does not immediately go to the next stage, but is input to the delay element in the stage, and output is delayed until all '+' operation values in the butterfly operator are output. , After the multiplication operation of the twiddle factor is performed, it is followed by the 1-channel input of the next stage. In Figure 4b, a timing diagram for the above operation is attached as an example of a stage for 32-point FFT.

다음으로, 상기 MRMDC IFFT 모듈(150)은 스트림(stream) 형태로 입력되는 4-채널(channel) 입력을 적은 cycle로 효율적으로 처리할 수 있도록, 4-채널(channel) 입력 파이프라인 IFFT 구조를 가진다. Next, the MRMDC IFFT module 150 has a 4-channel input pipeline IFFT structure to efficiently process 4-channel input in the form of a stream in a few cycles. .

예컨대, 파이프라인 IFFT 방식 중 SDF 구조 프로세서인 경우 단일 채널 연산시에는 복잡도가 낮아 보편적으로 사용되나, 다중 채널연산인 경우 각 채널마다 IFFT 프로세서를 구현하여야 하는 단점으로 제안된 프로세서와 같은 4-channel 연산에 적합하지 않다.For example, among the pipeline IFFT methods, the SDF structure processor is commonly used due to its low complexity during single-channel operation, but in the case of multi-channel operation, the disadvantage is that an IFFT processor must be implemented for each channel, which is the same as the proposed processor for 4-channel operation. not suitable for

또한, MDC 방식의 IFFT 프로세서는 단일 채널 연산시에는 SDF 방식에 비하여 큰 면적을 가지고 있지만, 4채널 IFFT 연산인 경우 하나의 MDC 방식의 프로세서가 4개의 SDF 방식을 이용한 프로세서보다 저 면적 구현이 가능하다.In addition, the MDC-type IFFT processor has a larger area than the SDF method when performing single-channel operations, but in the case of 4-channel IFFT operations, one MDC-type processor can implement a smaller area than a processor using four SDF methods. .

위와 같은 이유로 본 발명의 4-channel이 적용된 MRMDC IFFT 모듈(150)은 MRMDC 구조를 사용하여 설계되었다. For the above reasons, the 4-channel MRMDC IFFT module 150 of the present invention was designed using the MRMDC structure.

그러나 기존의 MDC 구조를 그대로 적용한다면, 입력단의 데이터를 정렬하는 첫 번째 data mapping module(DMM)의 많은 지연소자로 인하여 전체 연산 지연(latency)과 프로세서의 면적이 추가적으로 증가하는 문제가 발생한다.However, if the existing MDC structure is applied as is, the problem of additional increase in overall operation latency and processor area occurs due to the large number of delay elements in the first data mapping module (DMM) that sorts the data at the input stage.

위와 같은 문제를 피하기 위하여 본 발명의 연속 웨이블릿 변환 장치(100)는 FFT 결과 값을 SRAM에 저장할 때, SRAM을 4개로 나누어 사용하여 MDC 구조의 첫번째 DMM의 데이터 정렬 과정을 모방한다.In order to avoid the above problem, the continuous wavelet transform device 100 of the present invention imitates the data sorting process of the first DMM of the MDC structure by dividing the SRAM into four when storing the FFT result value in the SRAM.

첫 번째 DMM을 없애기 위하여 본 발명은 bit-reverse order로 출력되는 FFT 결과를 4개의 SRAM에 저장하기 위하여 SRAM의 접근 순서와 SRAM 내부의 주소 접근을 bit-reverse order로 수행한다.In order to eliminate the first DMM, the present invention performs the access order of SRAM and the address access inside SRAM in bit-reverse order to store the FFT results output in bit-reverse order in four SRAMs.

참고로, 도 6a를 참조하면, R2SDF pipeline FFT module은 radix-4/2 알고리즘을 기반으로 한 pipeline MDC 구조이다. 4-channel 연산에서 R2SDF module 보다 더 효율적이라고 알려진 R4MDC 구조를 바탕으로 하며 비단순승산기 개수를 줄일 수 있으며, 다양한 point FFT를 지원 가능하다. MDC 구조의 FFT module은 다수의 지연소자와 commutator(교환자)로 이루어져 있는 DMM (Data mapping module)을 이용하여 data mapping을 수행한다. 이때, MRMDC 구조의 특성상 radix-2와 radix-4의 2가지 butterfly 연산기를 사용함으로, DMM 역시 2가지 형태의 구조를 가진다. For reference, referring to Figure 6a, the R2SDF pipeline FFT module is a pipeline MDC structure based on the radix-4/2 algorithm. It is based on the R4MDC structure, which is known to be more efficient than the R2SDF module in 4-channel operations, can reduce the number of non-simple multipliers, and can support various point FFTs. The MDC-structured FFT module performs data mapping using a DMM (Data mapping module) consisting of multiple delay elements and a commutator. At this time, due to the nature of the MRMDC structure, two butterfly operators, radix-2 and radix-4, are used, so the DMM also has two types of structures.

마지막 stage를 제외한 radix-2 butterfly 연산기의 입력을 위한 DMM의 지연소자들은 해당 stage에서 수행하여야 하는 FFT-point의 N/4, 2N/4, 3N/4 크기를 가진다.Except for the last stage, the delay elements of the DMM for input to the radix-2 butterfly operator have sizes of N/4, 2N/4, and 3N/4 of the FFT-point that must be performed in the corresponding stage.

도 6b는 전체 신호길이가 64-point인 신호의 FFT 연산 과정 중 2번째 stage인 16-point FFT의 data mapping을 위한 DMM의 구조와, data flow를 나타낸 것이다. DMM을 통하여 iDATA1과 iDATA3이 N/2-point 차이가 나도록, iDATA2와 iDATA4가 N/2-point 차이가 나도록 data를 mapping 함으로써 뒤따라오는 radix-2 butterfly 연산자의 입력으로 넣어 줄 수 있다.Figure 6b shows the structure and data flow of a DMM for data mapping of 16-point FFT, the second stage in the FFT calculation process of a signal with a total signal length of 64 points. Through DMM, data can be mapped so that iDATA1 and iDATA3 have an N/2-point difference, and iDATA2 and iDATA4 have an N/2-point difference, and can be entered as input to the following radix-2 butterfly operator.

도 6c는 Radix-4 butterfly 연산기의 입력과 마지막 stage의 입력 data mapping을 위한 DMM의 구조를 나타낸 예시도로서, 전체 신호길이가 64-point인 신호의 FFT 연산 과정 중 3번째 stage인 8-point FFT의 data mapping을 위한 DMM의 구조와, data flow를 나타낸 것이다. DMM을 통하여 각 채널의 data가 N/4-point 차이가 나도록 data를 mapping 함으로써 뒤따라오는 radix-4 butterfly 연산자의 입력으로 넣어 줄 수 있다.Figure 6c is an example diagram showing the structure of a DMM for mapping the input data of the Radix-4 butterfly operator and the input data of the last stage, which is the 8-point FFT, which is the third stage in the FFT calculation process of a signal with a total signal length of 64 points. It shows the structure and data flow of DMM for data mapping. By mapping the data through the DMM so that the data of each channel differs by N/4-point, it can be input as input to the following radix-4 butterfly operator.

Radix-4/2 알고리즘은 radix-4 butterfly 연산 이후의 곱해지는 twiddle factor를 W8 1, W8 2, W8 3 로 고정할 수 있다. 각 값들은 각각, 아래 식으로 표현된다.The Radix-4/2 algorithm can fix the twiddle factor multiplied after the radix-4 butterfly operation to W 8 1 , W 8 2 , and W 8 3 . Each value is expressed as the formula below.

이때 twiddle factor의 값이 고정되어 있으며, 1/sqrt(2)의 값은 fixed-point 수체계를 사용할 때, DSP를 소모하지 않고, 아래와 같이, 단순 bit shift인 단순승산기 만으로 구현할 수 있다.At this time, the value of the twiddle factor is fixed, and the value of 1/sqrt(2) can be implemented with only a simple multiplier with a simple bit shift, as shown below, without consuming DSP when using the fixed-point number system.

종래의 twiddle factor 곱셈을 비단순승산기로 구현해야하는 R4MDC 구조에 비하여, MRMDC 구조는 단순승산기를 이용하여 더 적은 면적으로 구현될 수 있다. 도 6d는 W8 1, W8 2, W8 3의 곱셈을 구현하기 위한 회로의 블록도로서, R은 fixed point 수체계에서 round를 의미하며, C는 fixed point 수체계에서 clip을 의미한다. 두 연산은 Q-format의 bit 수 조절에 사용된다. 마지막으로 2'S는 2의 보수로 전환을 의미하며 즉, 수의 부호를 변경함을 의미한다.Compared to the R4MDC structure, which requires the conventional twiddle factor multiplication to be implemented with a non-simple multiplier, the MRMDC structure can be implemented in a smaller area using a simple multiplier. Figure 6d is a block diagram of a circuit for implementing multiplication of W 8 1 , W 8 2 , and W 8 3 , where R means round in the fixed point number system and C means clip in the fixed point number system. These two operations are used to adjust the number of bits in the Q-format. Lastly, 2'S means conversion to 2's complement, that is, changing the sign of the number.

도 5는 64-point FFT 결과를 SRAM에 저장하기 위한 타이밍 다이어그램과 그 결과로 형성된 SRAM의 메모리 맵이다.Figure 5 is a timing diagram for storing 64-point FFT results in SRAM and a memory map of SRAM formed as a result.

이때 wavelet 데이터를 저장하는 4개의 Wavelet SRAM(130) 역시 SRAM(120)의 정렬 패턴과 동일하게 wavelet 데이터를 저장한다.At this time, the four wavelet SRAMs 130 that store wavelet data also store wavelet data in the same alignment pattern as the SRAM 120.

도 5를 참조, 4개의 SRAM을 이용하여 FFT 모듈(110) 출력의 재배치(reordering)을 진행함으로써, 첫 번째 DMM의 기능을 대체 수 있다. Referring to FIG. 5, the function of the first DMM can be replaced by reordering the output of the FFT module 110 using four SRAMs.

이로 인해, 본 발명에서 제거될 수 있는 DMM은 총 3072개의 지연소자를 가져 32bit 복소수 데이터 기준 약 12.29KB의 메모리 크기를 가짐으로, 4개의 SRAM(120)을 이용한 데이터 ordering을 통하여 해당 크기만큼의 리소스(resource) 사용량을 줄일 수 있다.For this reason, the DMM, which can be removed in the present invention, has a total of 3072 delay elements and a memory size of about 12.29 KB based on 32-bit complex data, so through data ordering using 4 SRAMs 120, resources equivalent to the corresponding size are available. (resource) usage can be reduced.

첫 번째 DMM이 제거된 MDC 방식의 4-channel IFFT module은 radix-4/2 알고리즘을 기반의 MRMDC 구조로써 R4MDC 구조와 비교하였을 때, 비단순승산기 일부를 단순 승산기로 치환할 수 있어 더 적은 면적을 가진다. 또한 radix-2 알고리즘 구조에 비하여 높은 수율을 가지며, 4의 지수형으로 제한된 가변포인트를 지원하는 radix-4 알고리즘과 달리 입력 stage와 데이터 경로(data path)를 조절함으로써 radix-2 알고리즘과 같은 다양한 가변포인트를 지원할 수 있다.The MDC-type 4-channel IFFT module with the first DMM removed is an MRMDC structure based on the radix-4/2 algorithm. Compared to the R4MDC structure, some non-simple multipliers can be replaced with simple multipliers, resulting in a smaller area. have In addition, it has a higher yield compared to the radix-2 algorithm structure, and unlike the radix-4 algorithm, which supports variable points limited to an exponent of 4, it controls various variable points like the radix-2 algorithm by adjusting the input stage and data path. Points can be supported.

본 발명의 MRMDC IFFT 모듈(150)은 앞서 설명한 4개의 SRAM(120)을 이용한 데이터 정렬과정을 통하여 입력단의 DMM이 제거된 형태를 가지고 있어 4-channel 곱셈 결과 값을 받아 바로 첫번째 stage의 연산을 시작할 수 있기 때문에 짧은 대기시간(latency)를 가진다.The MRMDC IFFT module 150 of the present invention has the DMM at the input stage removed through the data sorting process using the four SRAMs 120 described above, so it receives the 4-channel multiplication result and immediately starts the calculation of the first stage. Because it can, it has a short latency.

또한 같은 프로세서내의 R2SDF FFT module과 같이 각 stage에서 입력 신호를 선택함으로써 8/16/32/64/…/1024-point의 가변포인트를 지원할 수 있도록 설계되었다.Also, by selecting the input signal at each stage like the R2SDF FFT module in the same processor, 8/16/32/64/… /Designed to support variable points of 1024-point.

도 7은 본 발명의 연속 웨이블릿 변환 장치가 N-point FFT 이후 4-채널 곱셈과 IFFT 연산에 대한 타이밍 다이어그램(timing diagram)이다.Figure 7 is a timing diagram for 4-channel multiplication and IFFT operation after N-point FFT in the continuous wavelet transform device of the present invention.

도 7에 도시된 Wav_SRAM은 Wavelet SRAM의 출력을 나타낸 것이다.Wav_SRAM shown in Figure 7 shows the output of Wavelet SRAM.

앞서 데이터 정렬을 위하여 길이 N의 데이터를 4개의 SRAM에 N/4의 길이로 나누어 저장하였기 때문에 N-point를 가지는 4개의 daughter wavelets 과의 CWT 연산에서 가장 높은 수율로 동작한다.Previously, for data sorting, data of length N was divided into N/4 lengths and stored in 4 SRAMs, so it operates with the highest yield in CWT calculation with 4 daughter wavelets with N-points.

이때, 본 발명의 연속 웨이블릿 변환 장치(100)의 CWT연산에 소요되는 cycle은 M개의 scale을 사용할 때, 2N+M/4(N)이 소요된다. At this time, the cycle required for CWT operation of the continuous wavelet transform device 100 of the present invention takes 2N+M/4(N) when using M scales.

Radix-2 알고리즘 기반 단일버터플라이 구조일 때 cycle이, R2SDF(FFT)-R2SDF(IFFT) 구조일 때, 2N+M(N) cycle이 소요되므로, 많은 daughter wavelets 과의 반복 연산이 필요한 CWT 연산 특성상 제안된 프로세서는 제시한 다른 구조와 비교하였을 때, 고속의 CWT 연산을 지원할 수 있음을 확인할 수 있다.In case of single butterfly structure based on Radix-2 algorithm When the cycle is an R2SDF(FFT)-R2SDF(IFFT) structure, it takes 2N+M(N) cycles, so due to the nature of CWT operation that requires repeated operations with many daughter wavelets, the proposed processor was compared with other proposed structures. It can be confirmed that high-speed CWT operations can be supported.

이하에서는 본 발명의 연속 웨이블릿 변환 장치의 실행결과를 간략하게 설명한다.Hereinafter, the execution results of the continuous wavelet transform device of the present invention will be briefly described.

본 발명의 연속 웨이블릿 변환 장치(100)는 hardware description language (HDL)인 Verilog를 이용하여 RTL 설계 후, Xilinx 사의 UltraScale+ ZCU104 FPGA 기반 구현 및 검증이 진행되었으며, 합성 결과 최대 302MHz로 동작 가능함이 확인되었다.The continuous wavelet transform device 100 of the present invention was designed by RTL using Verilog, a hardware description language (HDL), and then implemented and verified based on Xilinx's UltraScale+ ZCU104 FPGA. As a result of synthesis, it was confirmed that it can operate at a maximum of 302 MHz.

[표 1]은 본 발명이 512-point와 1024-point 길이를 가지는 신호를 각각 4개의 scale과 24개의 scale을 이용하여 CWT 연산을 위하여 필요한 연산 과정(cycle)과 연산 소모 시간을 정리한 표이다.[Table 1] is a table that summarizes the calculation process (cycle) and calculation time required for CWT calculation using 4 scales and 24 scales for signals with 512-point and 1024-point lengths, respectively. .

최대 동작 주파수 302MHz일 때, 4개의 scales를 사용하는 512-point 신호의 CWT 연산인 경우 7μs가 소요되며 24개의 scales를 사용하는 1024-point 신호의 CWT 연산인 경우 31μs의 시간이 소요된다.At the maximum operating frequency of 302MHz, the CWT operation of a 512-point signal using 4 scales takes 7μs, and the CWT operation of a 1024-point signal using 24 scales takes 31μs.

[표 1][Table 1]

[표 2]는 본 발명의 resource 사용량을 정리한 것이다. [Table 2] summarizes the resource usage of the present invention.

본 발명의 연속 웨이블릿 변환 장치는, 총 89,941개의 LUT와 108,598개의 FF를 사용하여 합성되었으며, 92개의 DSP를 사용한다. 해당 수치는UltraScale+ ZCU104 FPGA 보드 기준 전체의 39.04%에 해당하는 LUT와 23.57%의 FF에 해당하며, DSP인 경우 전체의 5.32%에 해당한다.The continuous wavelet transform device of the present invention was synthesized using a total of 89,941 LUTs and 108,598 FFs, and uses 92 DSPs. This figure corresponds to 39.04% of LUT and 23.57% of FF of the total based on the UltraScale+ ZCU104 FPGA board, and in the case of DSP, 5.32% of the total.

[표 2][Table 2]

본 발명이 고속성을 가지는지 확인하기 위하여 기존 문헌의 CWT 프로세서와 비교를 진행한다. In order to confirm whether the present invention has high speed, a comparison is made with the CWT processor of the existing literature.

가속을 위한 CWT 프로세서의 구현 사례를 조사하였 때, general purpose processor(GPP) 또는 DSP 형태의 구현이거나, 이미지 처리를 위한 2-D CWT의 구현된 사례를 제외하면, 본 발명과 비교를 진행할 수 있는 생체 신호 모니터링을 위한 1-D CWT의 FPGA 구현사례는 Qassim et al 의 연구문헌이 유일하다.When investigating implementation cases of CWT processors for acceleration, except for implementation cases in the form of general purpose processor (GPP) or DSP or implementation of 2-D CWT for image processing, comparison with the present invention can be made. The only example of FPGA implementation of 1-D CWT for biological signal monitoring is the research literature by Qassim et al .

종래의 경우, ERP feature extraction을 위한 FFT based CWT 프로세서로 Xilinx V.5 FFT core, Radix-4 Burst I/O를 사용하여 구현된 FFT based CWT 구조를 가진다.In the conventional case, the FFT-based CWT processor for ERP feature extraction has an FFT-based CWT structure implemented using Xilinx V.5 FFT core and Radix-4 Burst I/O.

최대한 공정한 비교를 위하여 [식 3]으로 표현되는 Tnorm을 이용하여 연산시간의 정규화를 진행하였다.In order to make the comparison as fair as possible, the calculation time was normalized using T norm expressed in [Equation 3].

식의 ‘Tech’는 FPGA의 CMOS 공정의 나노미터 기술을 나타내며, 해당 수치가 높아질수록 속도의 저하 등의 문제로 실행시간이 늘어나는 등의 문제가 발생한다. 식 3의 signal point는 두 프로세서의 비교를 위하여, 공통적으로 지원되는 1024-point를 사용한다. ‘Tech’ in the formula represents the nanometer technology of the FPGA’s CMOS process, and as the number increases, problems such as slower speeds and longer execution times occur. The signal point in Equation 3 uses the commonly supported 1024-point for comparison of the two processors.

마지막으로 사용되는 scale의 개수에 의한 영향을 줄이기 위하여 scale 개수에 대한 정규화를 진행하였다.Lastly, to reduce the influence of the number of scales used, normalization was performed on the number of scales.

[식 3][Equation 3]

[표 3][Table 3]

본 발명은 종래의 CWT 프로세서의 연산속도 대비 73.04%를 감소시킬 수 있다. The present invention can reduce the operation speed by 73.04% compared to the conventional CWT processor.

이때 본 발명은 생체 신호 측정을 위하여 사용할 wavelet을 고정시키지 못하지만, 종래의 프로세서는 용도가 ERP feature extraction으로 고정되어 있어, 관측에 사용할 수 있는 wavelet이 고정되어 있다. At this time, the present invention cannot fix the wavelet to be used for measuring biological signals, but the purpose of the conventional processor is fixed to ERP feature extraction, so the wavelet that can be used for observation is fixed.

이로 인하여 종래의 요소별 곱 과정에서 zero exclusion 과정을 거쳐 많은 cycle을 줄일 수 있었고 최대 동작주파수를 증가시킬 수 있었다. As a result, many cycles could be reduced through the zero exclusion process in the conventional element-by-element multiplication process, and the maximum operating frequency could be increased.

만약 관측에 사용할 wavelet을 고정시키지 못하는 경우라면 종래와 본 발명의 Tnorm의 차이는 더 벌어질 것이다. If the wavelet to be used for observation cannot be fixed, the difference between the T norm between the conventional and the present invention will widen further.

따라서 본 발명은 종래 대비 더 빠른 CWT 연산시간을 가져, 실시간 생체 신호 측정(general vital signal measurement)에 더 적합한 구조를 가진다.Therefore, the present invention has a faster CWT calculation time compared to the prior art, and has a structure more suitable for real-time vital signal measurement (general vital signal measurement).

본 발명에서는 실시간 생체신호 모니터링을 위한 FFT 기반 mixed radix CWT 프로세서인 연속 웨이블릿 변환 장치를 개시하였다. The present invention discloses a continuous wavelet transform device, which is an FFT-based mixed radix CWT processor for real-time biosignal monitoring.

본 발명은 생체신호 모니터링 중 응급상황에서 대처의 지연을 방지하기 위하여 고속성을 가지도록 설계되었다. The present invention is designed to have high speed to prevent delays in response in emergency situations while monitoring biosignals.

본 발명은 고속성을 위하여 적은 시간지연(latency)을 가지며, 높은 수율을 가지도록 파이프라인 FFT/IFFT 구조를 사용하였다. The present invention has low latency for high speed and uses a pipeline FFT/IFFT structure to achieve high yield.

1-채널(channel) 입력신호를 위한 FFT 모듈은 낮은 복잡도를 가지도록 R2SDF 구조를 사용하였으며, 4-채널(channel) 입력신호를 위한 IFFT 모듈은 다중 채널에서 SDF 구조 대비 적은 면적을 차지하는 MDC 구조를 적용하였다. The FFT module for 1-channel input signals uses the R2SDF structure to have low complexity, and the IFFT module for 4-channel input signals uses an MDC structure that occupies a smaller area than the SDF structure in multiple channels. applied.

이때 IFFT 모듈은 radix-4/2 알고리즘 기반으로 비단순 승산기의 수를 최소화할 수 있고, radix-2 알고리즘과 같이 다양한 길이의 입력신호를 지원할 수 있는 MRMDC 구조를 적용하였다. At this time, the IFFT module can minimize the number of non-simplex multipliers based on the radix-4/2 algorithm, and applies the MRMDC structure that can support input signals of various lengths like the radix-2 algorithm.

따라서, 본 발명은 8/16/32/64/…/1024-point의 가변 입력을 지원하며 SRAM을 이용하여 최대 1024-point 길이의 daughter wavelets을 24개까지 초기화할 수 있다. Therefore, the present invention is 8/16/32/64/… /1024-point variable input is supported and up to 24 daughter wavelets of up to 1024-point length can be initialized using SRAM.

초기화된 daughter wavelets은 외부 입력 신호를 이용하여 4의 배수 단위로 사용 개수를 조절할 수 있도록 하였다. 같은 FFT based CWT 알고리즘으로 설계된 기존의 프로세서와 비교하였을 때 본 발명은 1024-point 길이 신호의 CWT 연산시간은 절대적인 수치를 보았을 때 94.56% 감소하였다. The number of initialized daughter wavelets can be adjusted in multiples of 4 using an external input signal. Compared to the existing processor designed with the same FFT-based CWT algorithm, the CWT calculation time of the present invention for a 1024-point length signal was reduced by 94.56% in absolute terms.

공정한 비교를 위하여 사용된 FPGA board의 technology와 연산에 이용되는 scales 수로 정규화를 진행하면 연산시간을 73.27%만큼 감소시킬 수 있음을 확인하였다. 이를 통해 본 발명은 고속성을 필요로 하는 실시간 생체신호 분석에 효율적임을 입증하였다.For a fair comparison, it was confirmed that the calculation time could be reduced by 73.27% by normalizing the technology of the FPGA board used and the number of scales used for calculation. Through this, the present invention proved to be efficient for real-time biosignal analysis that requires high speed.

이상의 실시예들에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field programmable gate array) 또는 ASIC 와 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구 성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램특허 코드의 세그먼트들, 드라이버들, 펌웨어, 마 이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. The term '~unit' used in the above embodiments refers to software or hardware components such as FPGA (field programmable gate array) or ASIC, and the '~unit' performs certain roles. However, '~part' is not limited to software or hardware. The '~ part' may be configured to reside in an addressable storage medium and may be configured to reproduce on one or more processors. Therefore, as an example, '~ part' refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, and procedures. , subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables.

구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구 성요소들과 '~부'들로부터 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU 들을 재생시키도록 구현될 수도 있다.The functions provided within components and parts can be combined into smaller numbers of components and parts or separated from additional components and parts. In addition, the components and 'parts' may be implemented to regenerate one or more CPUs within the device or secure multimedia card.

도면을 통해 설명된 실시예에 따른 방법은 컴퓨터에 의해 실행 가능한 명령어 및 데이 터를 저장하는, 컴퓨터로 판독 가능한 매체의 형태로도 구현될 수 있다. 이때, 명령어 및 데이터는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 소정의 프로그램 모듈을 생성하여 소정의 동작을 수행할 수 있다. 또한, 컴퓨터로 판독 가능한 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터로 판독 가능한 매 체는 컴퓨터 기록 매체일 수 있는데, 컴퓨터 기록 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모 듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함할 수 있다. 예를 들어, 컴퓨터 기록 매체는 HDD 및 SSD 등과 같은 마그네틱 저장 매체, CD, DVD 및 블루레이 디스크 등과 같은 광학적 기록 매체, 또는 네트워크를 통해 접근 가능한 서버에 포함되는 메모리일 수 있다.The method according to the embodiment described through the drawings may also be implemented in the form of a computer-readable medium that stores instructions and data executable by a computer. At this time, instructions and data can be stored in the form of program code, and when executed by a processor, they can generate a certain program module and perform a certain operation. Additionally, computer-readable media can be any available media that can be accessed by a computer and includes both volatile and non-volatile media, removable and non-removable media. Additionally, computer-readable media may be computer recording media, which are volatile media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data. and non-volatile, removable and non-removable media. For example, computer recording media may be magnetic storage media such as HDDs and SSDs, optical recording media such as CDs, DVDs, and Blu-ray discs, or memory included in servers accessible through a network.

또한 본 발명의 실시예에 따른 방법은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 컴퓨터 프로그램(또는 컴퓨터 프로그램 제품)으로 구현될 수도 있다. 컴퓨터 프로그램은 프로세서에 의해 처리되는 프로그래밍 가능한 기계 명령어를 포함하고, 고레벨 프로그래밍 언어(High-level Programming Language), 객체 지향 프로그래밍 언어(Object-oriented Programming Language), 어셈블리 언어 또는 기계 언 어 등으로 구현될 수 있다. 또한 컴퓨터 프로그램은 유형의 컴퓨터 판독가능 기록매체(예를 들어, 메모리, 하드 디스크, 자기/광학 매체 또는 SSD(Solid-State Drive) 등)에 기록될 수 있다Additionally, the method according to an embodiment of the present invention may be implemented as a computer program (or computer program product) including instructions executable by a computer. A computer program includes programmable machine instructions processed by a processor and can be implemented in a high-level programming language, object-oriented programming language, assembly language, or machine language. there is. Additionally, the computer program may be recorded on a tangible computer-readable recording medium (e.g., memory, hard disk, magnetic/optical medium, or solid-state drive (SSD), etc.)

따라서 본 발명에서 설명된 실시예에 따른 방법은 상술한 바와 같은 컴퓨터 프로그램이 컴퓨팅 장치에 의해 실행됨으로써 구현될 수 있다. 컴퓨팅 장치는 프로세서와, 메모리와, 저장 장치와, 메모리 및 고속 확장포트에 접속하고 있는 고속 인터페이스와, 저속 버스와 저장 장치에 접속하고 있는 저속 인터페이스 중 적어도 일부를 포함할 수 있다. 이러한 성분들 각각은 다양한 버스를 이용하여 서로 접속되어 있으며, 공 통 머더보드에 탑재되거나 다른 적절한 방식으로 장착될 수 있다.Accordingly, the method according to the embodiment described in the present invention can be implemented by executing the above-described computer program by a computing device. The computing device may include at least some of a processor, memory, a storage device, a high-speed interface connected to the memory and a high-speed expansion port, and a low-speed interface connected to a low-speed bus and a storage device. Each of these components is connected to each other using various buses and may be mounted on a common motherboard or in some other suitable manner.

여기서 프로세서는 컴퓨팅 장치 내에서 명령어를 처리할 수 있는데, 이런 명령어로는, 예컨대 고속 인터페이스에 접속된 디스플레이처럼 외부 입력, 출력 장치상에 GUI(Graphic User Interface)를 제공하기 위한 그래픽 정 보를 표시하기 위해 메모리나 저장 장치에 저장된 명령어를 들 수 있다. 다른 실시예로서, 다수의 프로세서 및 (또는) 다수의 버스가 적절히 다수의 메모리 및 메모리 형태와 함께 이용될 수 있다. 또한 프로세서는 독립적인 다수의 아날로그 및(또는) 디지털 프로세서를 포함하는 칩들이 이루는 칩셋으로 구현될 수 있다.Here, the processor can process instructions within the computing device, such as displaying graphical information to provide a graphic user interface (GUI) on an external input or output device, such as a display connected to a high-speed interface. These may include instructions stored in memory or a storage device. In other embodiments, multiple processors and/or multiple buses may be utilized along with multiple memories and memory types as appropriate. Additionally, the processor may be implemented as a chipset consisting of chips including multiple independent analog and/or digital processors.

또한 메모리는 컴퓨팅 장치 내에서 정보를 저장한다. 일례로, 메모리는 휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 다른 예로, 메모리는 비휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 또한 메 모리는 예컨대, 자기 혹은 광 디스크와 같이 다른 형태의 컴퓨터 판독 가능한 매체일 수도 있다. Memory also stores information within a computing device. In one example, memory may be comprised of volatile memory units or sets thereof. As another example, memory may consist of non-volatile memory units or sets thereof. The memory may also be another type of computer-readable medium, such as a magnetic or optical disk.

그리고 저장장치는 컴퓨팅 장치에게 대용량의 저장공간을 제공할 수 있다. 저장 장치는 컴퓨터 판독 가능한 매 체이거나 이런 매체를 포함하는 구성일 수 있으며, 예를 들어 SAN(Storage Area Network) 내의 장치들이나 다른 구성도 포함할 수 있고, 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치, 혹은 테이프 장치, 플래시 메 모리, 그와 유사한 다른 반도체 메모리 장치 혹은 장치 어레이일 수 있다. And the storage device can provide a large amount of storage space to the computing device. A storage device may be a computer-readable medium or a component containing such a medium, for example, devices within a storage area network (SAN) or other components, such as a floppy disk device, a hard disk device, or an optical disk device. , or it may be a tape device, flash memory, or other similar semiconductor memory device or device array.

상술된 실시예들은 예시를 위한 것이며, 상술된 실시예들이 속하는 기술분야의 통상의 지식을 가진 자는 상술된 실시예들이 갖는 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하 다는 것을 이해할 수 있을 것이다. 그러므로 상술된 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마 찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다. The above-described embodiments are for illustrative purposes, and those of ordinary skill in the technical field to which the above-described embodiments belong can easily transform them into other specific forms without changing the technical idea or essential features of the above-described embodiments. You will be able to understand it. Therefore, the above-described embodiments should be understood in all respects as illustrative and not restrictive. For example, each component described as unitary may be implemented in a distributed manner, and similarly, components described as distributed may also be implemented in a combined form.

본 명세서를 통해 보호받고자 하는 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어 지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태를 포함하는 것으로 해석되어야 한다.The scope sought to be protected through this specification is indicated by the patent claims described later rather than the detailed description above, and should be interpreted to include the meaning and scope of the claims and all changes or modified forms derived from the equivalent concept. .

100: 연속 웨이블릿 변환 장치
200: R2SDF FFT 모듈
300: SRAM
400: 승산기
500: MRMDC IFFT 모듈
[참고문헌]
[1] Shi K, Schellenberger S, Will C, Steigleder T, Michler F, Fuchs J et al 2020 A Dataset Of Radar-Recorded Heart Sounds And Vital Signs Including Synchronised Reference Sensor Signals Sci Data. 7 1-12
[2] Khanam, F.-T.-Z.; Perera, A.G.; Al-Naji, A.; Gibson, K.; Chahl, J. Non-Contact Automatic Vital Signs Monitoring of Infants in a Neonatal Intensive Care Unit Based on Neural Networks. J. Imaging 2021, 7, 122.
[3] Antolinos, E.; Garc

Figure 112021142532385-pat00017
a-Rial, F.; Hernndez, C.; Montesano, D.; Godino-Llorente, J.I.; Grajal, J. Cardiopulmonary Activity Monitoring Using Millimeter Wave Radars. Remote Sens. 2020, 12, 2265.
[4] Y. S. Lee, P. N. Pathirana, C. L. Steinfort and T. Caelli, "Monitoring and Analysis of Respiratory Patterns Using Microwave Doppler Radar," in IEEE Journal of Translational Engineering in Health and Medicine, vol. 2, pp. 1-12, 2014.
[5] I.V. Mikhelson, S. Bakhtiari, T.W. Elmer II, and A.V. Sahakian, "Remote ensing f atterns f ardiac ctivity n n mbulatory ubject sing illimeter-wave nterferometry nd tatistical ethods,”Med. iol. ng. omput., ol. 1, pp. 135-142, October 2012.
[6] Valenzuela, A.; Sibuet, N.; Hornero, G.; Casas, O. Non-Contact Video-Based Assessment of the Respiratory Function Using a RGB-D Camera. Sensors 2021, 21, 5605.
[7] K. Abbas, K. Heiman, T. Orlikowsky, S. Leonhardt. “t respiratory monitoring based on real-time IR-thermography,”in FMBE roc. f C2009, 5/IV, 009, p.1306-1309.
[8] A. Tariq and H. Ghafouri-Shiraz, "Vital signs detection using Doppler radar and continuous wavelet Transform," Proceedings of the 5th European Conference on Antennas and Propagation (EUCAP), 2011, pp. 285-288.
[9] Zhang, X.; Yang, X.; Ding, Y.; Wang, Y.; Zhou, J.; Zhang, L. Contactless Simultaneous Breathing and Heart Rate Detections in Physical Activity Using IR-UWB Radars. Sensors 2021, 21, 5503.
[10] Y. S. Lee, P. N. Pathirana, C. L. Steinfort and T. Caelli, "Monitoring and Analysis of Respiratory Patterns Using Microwave Doppler Radar," in IEEE Journal of Translational Engineering in Health and Medicine, vol. 2, pp. 1-12, 2014, Art no. 1800912.
[11] D. Rissacher and D. Galy, "Cardiac radar for biometric identification using nearest neighbour of continuous wavelet transform peaks," IEEE International Conference on Identity, Security and Behavior Analysis (ISBA 2015), 2015, pp. 1-6.
[12] S. Tomii and T. Ohtsuki, "Heartbeat detection by using Doppler radar with wavelet transform based on scale factor learning," 2015 IEEE International Conference on Communications (ICC), 2015, pp. 483-488.
[13] Hu, X.; Jin, T. Short-Range Vital Signs Sensing Based on EEMD and CWT Using IR-UWB Radar. Sensors 2016, 16, 2025.
[14] T. Zhangi, G. Valerio, J. Sarrazin and D. Istrate, "Wavelet-based analysis of 60 GHz Doppler radar for non-stationary vital sign monitoring," 2017 11th European Conference on Antennas and Propagation (EUCAP), 2017, pp. 1876-1877.
[15] M. Li and J. Lin, "Wavelet-Transform-Based Data-Length-Variation Technique for Fast Heart Rate Detection Using 5.8-GHz CW Doppler Radar," in IEEE Transactions on Microwave Theory and Techniques, vol. 66, no. 1, pp. 568-576, Jan. 2018.
[16] N. T. P. Van, L. Tang, A. Singh, N. D. Minh, S. C. Mukhopadhyay and S. F. Hasan, "Self-Identification Respiratory Disorder Based on Continuous Wave Radar Sensor System," in IEEE Access, vol. 7, pp. 40019-40026, 2019.
[17] F. Wang, T. Horng, K. Peng, H. Jau, J. Li, and C. Chen, “of oncealed ndividuals ased n heir ital igns y sing ee-throughwall maging ystem ith elf-injection-locked adar,"IEEE rans. icrow. heory Techn., vol. 61, no. 1, pp. 696-704, 2013.
[18] Z. Peng et al., "A Portable FMCW Interferometry Radar With Programmable Low-IF Architecture for Localization, ISAR Imaging, and Vital Sign Tracking," in IEEE Transactions on Microwave Theory and Techniques, vol. 65, no. 4, pp. 1334-1344, April 2017
[19] R. R. Fletcher and S. Kulkarni, "Wearable Doppler radar with integrated antenna for patient vital sign monitoring," 2010 IEEE Radio and Wireless Symposium (RWS), 2010, pp. 276-279.
[20] R. Kukkapalli, N. Banerjee, R. Robucci and Y. Kostov, "Micro-radar wearable respiration monitor," 2016 IEEE SENSORS, 2016, pp. 1-3
[21] D. Zito et al., "Wearable System-on-a-Chip UWB Radar for Health Care and its Application to the Safety Improvement of Emergency Operators," 2007 29th Annual International Conference of the IEEE Engineering in Medicine and Biology Society, 2007, pp. 2651-2654.
[22] J. E. Johnson, O. Shay, C. Kim and C. Liao, "Wearable Millimeter-Wave Device for Contactless Measurement of Arterial Pulses," in IEEE Transactions on Biomedical Circuits and Systems, vol. 13, no. 6, pp. 1525-1534, Dec. 2019.
[23] I. S. Barak, “Microwave contactless heart rate sensor," Sensifree Ltd. (Kfar ava, IL), U.S. patent Grant 9,713,434 B2, Jul. 25, 2017.
[24] M. C. Tang, C. M. Liao, F. K. Wang, and T. S. Horng, “Noncontact pulse transit time measurement using a single-frequency continuous-wave radar,”in Proc. IEEE MTT-S Int. Microw. Symp. Dig., 2018, vol. 2018, pp. 1409-1412.
[25] P. RamaRaju, N. Aurora and V. Rao, “Relevance of wavelet transform for taxonomy of EEG signals”electronics computer technology (ICECT), 3rd international conference on, 2011, pp. 466-470.
[26] A. Diery, D. Rowlands, T.R.H. Cutmore and D. James, “ECG diagnostic P-wave analysis using wavelets,”computer methods and programs in biomedicine, vol 101, pp.33-43, 2011.
[27] T. Rondik and J. Ciniburk, “Comparison of various approaches for P3 component detection using basic methods for signal processing,”in Biomedical Engineering and Informatics (BMEI), 2011 4th international. Conference, 2011, pp. 698-702.
[28] Y. T. Qassim, T. Cutmore, D. James and D. Rowlands, "FPGA implementation of Morlet continuous wavelet transform for EEG analysis," 2012 International Conference on Computer and Communication Engineering (ICCCE), 2012, pp. 59-64.
[29] Yahya T. Qassim, Tim RH Cutmore, David D. Rowlands, Optimized FPGA based continuous wavelet transform, Computers & Electrical Engineering 49 (2016) 84-94.
[30] Jeon, H.; Jung, Y.; Lee, S.; Jung, Y. Area-Efficient Short-Time Fourier Transform Processor for Time-Frequency Analysis of Non-Stationary Signals. Appl. Sci. 2020, 10, 7208.
[31] Y. Jung, H. Yoon, J. Kim, “efficient FFT algorithm and pipeline implementation results for OFDM/DMT applications,”IEEE Trans. Consumer Electron, vol. 49, pp. 14-20, Feb. 2003.
[32] Shousheng He and M. Torkelson, "A new approach to pipeline FFT processor," Proceedings of International Conference on Parallel Processing, 1996, pp. 766-770
[33] N. Srinivas, P. K. Kumar and G. Pradhan, "Low latency architecture design and implementation for short-time fourier transform algorithm on FPGA," 2017 IEEE International Conference on Microwaves, Antennas, Communications and Electronic Systems (COMCAS), pp. 1-5, Nov 2017.
[34] S. Lee, Y. Jung, and J. Kim, “complexity ipeline FFT processor for MIMO-OFDM systems,”IEICE lectron. xpress, ol. , o. 3, p. 50-754, ec. 007
[35] S. Tomii and T. Ohtsuki, "Heartbeat detection by using Doppler radar with wavelet transform based on scale factor learning," 2015 IEEE International Conference on Communications (ICC), 2015, pp. 483-488
[36] Sansaloni, T.; Perez-Pascual, A.; Torres, V.; Valls, J. Efficient pipeline FFT processors for WLAN MIMO-OFDM systems. IET Electorn. Lett. 2005, 41, 1043-1044
[37] Lee, T. Y.; Huang, C. H.; Chen, W. C.; Liu, M. J. A low-area dynamic reconfigurable MDC FFT processor design. Microprocess. Microsyst. 2016, 42, 227-234.
[38] S. Jang, et al.: “FFT rocessor or IMO-OFDM ased DR ystems,"EICE lectron. Express 10 (2013) 20130490.
[39] G. Yang and Y. Jung, "Scalable FFT processor for MIMO-OFDM based SDR systems," IEEE 5th International Symposium on Wireless Pervasive Computing 2010, 2010, pp. 517-521
[40] Bostanov V. BCI competition 2003-data sets Ib and IIb: feature extraction from event-related brain potentials with the continuous wavelet transform and the t-value scalogram. Biomed Eng, IEEE Trans 2004;51:1057-61.
[41] Patil S, Abel E. Real time continuous wavelet transform implementation on a DSP processor. J Med Eng Technol 2009;33:223-31.
[42] Kang S, Xuezeng P, Lingdi P. A reconfigurable computing engine for wavelet transforms. In: Parallel and distributed processing symposium, 2007. IPDPS 2007. IEEE International; 2007. p. 1-5.
[43] Mao, L., Ma, J., Chen, H., Ma, Y., Chen, S., & Xu, C. (2019). 2D-CWT IP core design and implementation for fringe pattern analysis. IOP Conference Series: Materials Science and Engineering, 569, 032071.100: continuous wavelet transform device
200: R2SDF FFT module
300: SRAM
400: Multiplier
500: MRMDC IFFT module
[references]
[1] Shi K, Schellenberger S, Will C, Steigleder T, Michler F, Fuchs J et al 2020 A Dataset Of Radar-Recorded Heart Sounds And Vital Signs Including Synchronized Reference Sensor Signals Sci Data. 7 1-12
[2] Khanam, F.-T.-Z.; Perera, A.G.; Al-Naji, A.; Gibson, K.; Chahl, J. Non-Contact Automatic Vital Signs Monitoring of Infants in a Neonatal Intensive Care Unit Based on Neural Networks. J. Imaging 2021, 7, 122.
[3] Antolinos, E.; Garc
Figure 112021142532385-pat00017
a-Rial, F.; Hern ndez, C.; Montesano, D.; Godino-Llorente, JI; Grajal, J. Cardiopulmonary Activity Monitoring Using Millimeter Wave Radars. Remote Sens. 2020, 12, 2265.
[4] YS Lee, PN Pathirana, CL Steinfort and T. Caelli, “Monitoring and Analysis of Respiratory Patterns Using Microwave Doppler Radar,” in IEEE Journal of Translational Engineering in Health and Medicine, vol. 2, pp. 1-12, 2014.
[5] IV Mikhelson, S. Bakhtiari, TW Elmer II, and AV Sahakian, “Remote ensing f atterns f ardiac ctivity nn mbulatory ubject sing illimeter-wave nterferometry nd tatistic ethods,” Med. iol. ng. omput., ol. 1, pp. 135-142, October 2012.
[6] Valenzuela, A.; Sibuet, N.; Hornero, G.; Casas, O. Non-Contact Video-Based Assessment of the Respiratory Function Using a RGB-D Camera. Sensors 2021, 21, 5605.
[7] K. Abbas, K. Heiman, T. Orlikowsky, and S. Leonhardt. “t respiratory monitoring based on real-time IR-thermography,” in FMBE roc. f C2009, 5/IV, 009, p.1306-1309.
[8] A. Tariq and H. Ghafouri-Shiraz, “Vital signs detection using Doppler radar and continuous wavelet Transform,” Proceedings of the 5th European Conference on Antennas and Propagation (EUCAP), 2011, pp. 285-288.
[9] Zhang, X.; Yang, X.; Ding, Y.; Wang, Y.; Zhou, J.; Zhang, L. Contactless Simultaneous Breathing and Heart Rate Detections in Physical Activity Using IR-UWB Radars. Sensors 2021, 21, 5503.
[10] YS Lee, PN Pathirana, CL Steinfort and T. Caelli, “Monitoring and Analysis of Respiratory Patterns Using Microwave Doppler Radar,” in IEEE Journal of Translational Engineering in Health and Medicine, vol. 2, pp. 1-12, 2014, Art no. 1800912.
[11] D. Rissacher and D. Galy, “Cardiac radar for biometric identification using nearest neighbor of continuous wavelet transform peaks,” IEEE International Conference on Identity, Security and Behavior Analysis (ISBA 2015), 2015, pp. 1-6.
[12] S. Tomii and T. Ohtsuki, "Heartbeat detection by using Doppler radar with wavelet transform based on scale factor learning," 2015 IEEE International Conference on Communications (ICC), 2015, pp. 483-488.
[13] Hu, X.; Jin, T. Short-Range Vital Signs Sensing Based on EEMD and CWT Using IR-UWB Radar. Sensors 2016, 16, 2025.
[14] T. Zhangi, G. Valerio, J. Sarrazin and D. Istrate, “Wavelet-based analysis of 60 GHz Doppler radar for non-stationary vital sign monitoring,” 2017 11th European Conference on Antennas and Propagation (EUCAP), 2017, pp. 1876-1877.
[15] M. Li and J. Lin, “Wavelet-Transform-Based Data-Length-Variation Technique for Fast Heart Rate Detection Using 5.8-GHz CW Doppler Radar,” in IEEE Transactions on Microwave Theory and Techniques, vol. 66, no. 1, pp. 568-576, Jan. 2018.
[16] NTP Van, L. Tang, A. Singh, ND Minh, SC Mukhopadhyay and SF Hasan, “Self-Identification Respiratory Disorder Based on Continuous Wave Radar Sensor System,” in IEEE Access, vol. 7, pp. 40019-40026, 2019.
[17] F. Wang, T. Horng, K. Peng, H. Jau, J. Li, and C. Chen, “of oncealed individuals ased n heir ital igns y sing ee-throughwall maging ystem ith elf-injection-locked adar, "IEEE rans. icrow. heory Techn., vol. 61, no. 1, pp. 696-704, 2013.
[18] Z. Peng et al., “A Portable FMCW Interferometry Radar With Programmable Low-IF Architecture for Localization, ISAR Imaging, and Vital Sign Tracking,” in IEEE Transactions on Microwave Theory and Techniques, vol. 65, no. 4, pp. 1334-1344, April 2017
[19] R. R. Fletcher and S. Kulkarni, "Wearable Doppler radar with integrated antenna for patient vital sign monitoring," 2010 IEEE Radio and Wireless Symposium (RWS), 2010, pp. 276-279.
[20] R. Kukkapalli, N. Banerjee, R. Robucci and Y. Kostov, “Micro-radar wearable respiration monitor,” 2016 IEEE SENSORS, 2016, pp. 1-3
[21] D. Zito et al., "Wearable System-on-a-Chip UWB Radar for Health Care and its Application to the Safety Improvement of Emergency Operators," 2007 29th Annual International Conference of the IEEE Engineering in Medicine and Biology Society , 2007, pp. 2651-2654.
[22] J.E. Johnson, O. Shay, C. Kim and C. Liao, “Wearable Millimeter-Wave Device for Contactless Measurement of Arterial Pulses,” in IEEE Transactions on Biomedical Circuits and Systems, vol. 13, no. 6, pp. 1525-1534, Dec. 2019.
[23] IS Barak, “Microwave contactless heart rate sensor,” Sensifree Ltd. (Kfar ava, IL), US patent Grant 9,713,434 B2, Jul. 25, 2017.
[24] MC Tang, CM Liao, FK Wang, and TS Horng, “Noncontact pulse transit time measurement using a single-frequency continuous-wave radar,” in Proc. IEEE MTT-S Int. Microw. Symp. Dig., 2018, vol. 2018, pp. 1409-1412.
[25] P. RamaRaju, N. Aurora and V. Rao, “Relevance of wavelet transform for taxonomy of EEG signals”electronics computer technology (ICECT), 3rd international conference on, 2011, pp. 466-470.
[26] A. Diery, D. Rowlands, TRH Cutmore and D. James, “ECG diagnostic P-wave analysis using wavelets,” computer methods and programs in biomedicine, vol 101, pp.33-43, 2011.
[27] T. Rondik and J. Ciniburk, “Comparison of various approaches for P3 component detection using basic methods for signal processing,” in Biomedical Engineering and Informatics (BMEI), 2011 4th international. Conference, 2011, pp. 698-702.
[28] YT Qassim, T. Cutmore, D. James and D. Rowlands, "FPGA implementation of Morlet continuous wavelet transform for EEG analysis," 2012 International Conference on Computer and Communication Engineering (ICCCE), 2012, pp. 59-64.
[29] Yahya T. Qassim, Tim RH Cutmore, David D. Rowlands, Optimized FPGA based continuous wavelet transform, Computers & Electrical Engineering 49 (2016) 84-94.
[30] Jeon, H.; Jung, Y.; Lee, S.; Jung, Y. Area-Efficient Short-Time Fourier Transform Processor for Time-Frequency Analysis of Non-Stationary Signals. Appl. Sci. 2020, 10, 7208.
[31] Y. Jung, H. Yoon, J. Kim, “efficient FFT algorithm and pipeline implementation results for OFDM/DMT applications,” IEEE Trans. Consumer Electronics, vol. 49, pp. 14-20, Feb. 2003.
[32] Shousheng He and M. Torkelson, “A new approach to pipeline FFT processor,” Proceedings of International Conference on Parallel Processing, 1996, pp. 766-770
[33] N. Srinivas, PK Kumar and G. Pradhan, "Low latency architecture design and implementation for short-time fourier transform algorithm on FPGA," 2017 IEEE International Conference on Microwaves, Antennas, Communications and Electronic Systems (COMCAS), pp . 1-5, Nov 2017.
[34] S. Lee, Y. Jung, and J. Kim, “complexity ipeline FFT processor for MIMO-OFDM systems,” IEICE lectron. xpress, ol. ,o. 3, p. 50-754, ec. 007
[35] S. Tomii and T. Ohtsuki, “Heartbeat detection by using Doppler radar with wavelet transform based on scale factor learning,” 2015 IEEE International Conference on Communications (ICC), 2015, pp. 483-488
[36] Sansaloni, T.; Perez-Pascual, A.; Torres, V.; Valls, J. Efficient pipeline FFT processors for WLAN MIMO-OFDM systems. IET Elector. Lett. 2005, 41, 1043-1044
[37] Lee, T.Y.; Huang, C.H.; Chen, W.C.; Liu, MJ A low-area dynamic reconfigurable MDC FFT processor design. Microprocess. Microsystem. 2016, 42, 227-234.
[38] S. Jang, et al.: “FFT processor or IMO-OFDM ased DR systems,” EICE lectron. Express 10 (2013) 20130490.
[39] G. Yang and Y. Jung, “Scalable FFT processor for MIMO-OFDM based SDR systems,” IEEE 5th International Symposium on Wireless Pervasive Computing 2010, 2010, pp. 517-521
[40] Bostanov V. BCI competition 2003-data sets Ib and IIb: feature extraction from event-related brain potentials with the continuous wavelet transform and the t-value scalogram. Biomed Eng, IEEE Trans 2004;51:1057-61.
[41] Patil S, Abel E. Real time continuous wavelet transform implementation on a DSP processor. J Med Eng Technol 2009;33:223-31.
[42] Kang S, Xuezeng P, Lingdi P. A reconfigurable computing engine for wavelet transforms. In: Parallel and distributed processing symposium, 2007. IPDPS 2007. IEEE International; 2007.p. 1-5.
[43] Mao, L., Ma, J., Chen, H., Ma, Y., Chen, S., & Xu, C. (2019). 2D-CWT IP core design and implementation for fringe pattern analysis. IOP Conference Series: Materials Science and Engineering, 569, 032071.

Claims (18)

입력신호를 FFT 처리하는 R2SDF FFT 모듈;
상기 R2SDF FFT 모듈의 FFT 처리결과를 4 채널로 재배치(reordering)하는 4개의 SRAM;
주파수 영역의 daughter wavelets 값들이 초기화 되어있는 4개의 웨이블릿 SRAM;
상기 4 채널 곱셈을 위한 4개의 승산기; 및
상기 4개의 승산기의 계산값을 IFFT 처리하는 4 채널 병렬 입력구조의 MRMDC IFFT 모듈을 포함하는 연속 웨이블릿 변환 장치.
R2SDF FFT module that performs FFT processing on input signals;
4 SRAMs for reordering the FFT processing results of the R2SDF FFT module into 4 channels;
Four wavelet SRAMs with initialized daughter wavelet values in the frequency domain;
4 multipliers for the 4-channel multiplication; and
A continuous wavelet transform device including an MRMDC IFFT module with a 4-channel parallel input structure that IFFT processes the calculated values of the four multipliers.
제1항에 있어서,
상기 R2SDF FFT 모듈은
radix-2 알고리즘을 기반으로 하며, 1-채널 입력에 대해 속도와 면적의 교환관계를 갖는 SDF 파이프라인 구조인 것을 특징으로 하는 연속 웨이블릿 변환 장치.
According to paragraph 1,
The R2SDF FFT module is
A continuous wavelet transform device based on the radix-2 algorithm and characterized by an SDF pipeline structure with an exchange relationship between speed and area for 1-channel input.
제1항에 있어서,
상기 R2SDF FFT 모듈은
각 stage에서 연산에 사용할 입력 신호를 선택함으로써 8/16/32/64/128/256/1024-point의 가변포인트를 지원하는 것을 특징으로 하는 연속 웨이블릿 변환 장치.
According to paragraph 1,
The R2SDF FFT module is
A continuous wavelet transform device that supports 8/16/32/64/128/256/1024-point variable points by selecting the input signal to be used for calculation at each stage.
제1항에 있어서,
상기 4개의 웨이블릿 SRAM은
최대 1024-point길이를 가지는 주파수영역의 웨이블릿(wavelet) 신호를 24개까지 초기화하고,
초기화된 웨이블릿(wavelet) 신호는 외부 입력신호를 이용하여 최소 4개부터 4의 배수 단위로 사용 개수를 제어하는 것을 특징으로 하는 연속 웨이블릿 변환 장치.
According to paragraph 1,
The four wavelet SRAMs are
Initializes up to 24 wavelet signals in the frequency domain with a maximum length of 1024 points,
A continuous wavelet transform device characterized in that the number of initialized wavelet signals is controlled from a minimum of 4 to multiples of 4 using an external input signal.
제1항에 있어서,
상기 4개의 승산기 각각은
SRAM에 저장된 입력신호의 FFT 결과값 데이터와 Wavelet SRAM에 초기화 된 값을 곱셈한 후 스트림(stream) 형태로 IFFT module의 입력단으로 출력하는 것을 특징으로 하는 연속 웨이블릿 변환 장치.
According to paragraph 1,
Each of the four multipliers is
A continuous wavelet transform device that multiplies the FFT result data of the input signal stored in the SRAM and the value initialized in the Wavelet SRAM and then outputs the data to the input terminal of the IFFT module in the form of a stream.
제5항에 있어서,
상기 MRMDC IFFT 모듈은 4-channel 입력 파이프라인 FFT 구조를 갖는 연속 웨이블릿 변환 장치.
According to clause 5,
The MRMDC IFFT module is a continuous wavelet transform device with a 4-channel input pipeline FFT structure.
제1항에 있어서,
상기 R2SDF FFT 모듈은
FFT 결과를 4개의 SRAM에 bit-reverse order 되도록 전송하는 것을 특징으로 하는 연속 웨이블릿 변환 장치.
According to paragraph 1,
The R2SDF FFT module is
A continuous wavelet transform device characterized by transmitting the FFT results to four SRAMs in bit-reverse order.
제1항에 있어서,
상기 MRMDC IFFT 모듈은
각 stage에서 연산에 사용할 입력 신호를 선택하도록 8/16/32/64/128/256/1024-point의 가변포인트를 지원하는 것을 특징으로 하는 연속 웨이블릿 변환 장치.
According to paragraph 1,
The MRMDC IFFT module is
A continuous wavelet transform device that supports 8/16/32/64/128/256/1024-point variable points to select the input signal to be used for calculation at each stage.
제1항에 있어서,
길이 N-point인 신호를 M개의 스케일(scale)을 사용할 때, 총 연산 사이클이 2N+M/4(N)인 것을 특징으로 하는 연속 웨이블릿 변환 장치.
According to paragraph 1,
A continuous wavelet transform device characterized in that when using M scales for a signal with a length of N-point, the total operation cycle is 2N+M/4(N).
R2SDF FFT 모듈에서 입력신호를 FFT 처리하는 단계;
4개의 SRAM에서 상기 R2SDF FFT 모듈의 FFT 처리결과를 4 채널로 재배치(reordering)하는 단계;
4개의 승산기에서 4개의 SRAM에 저장된 FFT 처리결과와 4개의 웨이블릿 SRAM에 저장된 입력신호의 주파수 영역의 daughter wavelets 값과 요소별 곱셈을 수행하는 단계;
4 채널 병렬 입력구조의 MRMDC IFFT 모듈에서 상기 4개의 승산기의 연산값을 IFFT 처리하는 단계를 포함하는 연속 웨이블릿 변환 방법.
FFT processing the input signal in the R2SDF FFT module;
Reordering the FFT processing results of the R2SDF FFT module in 4 SRAMs to 4 channels;
Performing element-by-element multiplication in four multipliers with the FFT processing results stored in four SRAMs and the daughter wavelets values in the frequency domain of the input signal stored in four wavelet SRAMs;
A continuous wavelet transform method comprising IFFT processing the operation values of the four multipliers in an MRMDC IFFT module with a 4-channel parallel input structure.
제10항에 있어서,
상기 R2SDF FFT 모듈은
radix-2 알고리즘을 기반으로 하며, 1-채널 입력에 대해 속도와 면적의 교환관계를 갖는 SDF 파이프라인 구조인 것을 특징으로 하는 연속 웨이블릿 변환 방법.
According to clause 10,
The R2SDF FFT module is
A continuous wavelet transform method based on the radix-2 algorithm and characterized by an SDF pipeline structure with an exchange relationship between speed and area for 1-channel input.
제11항에 있어서,
상기 FFT 처리하는 단계는
상기 R2SDF FFT 모듈의 각 stage에서 연산에 사용할 입력 신호를 선택하도록 8/16/32/64/128/256/1024-point의 가변포인트를 지원하는 단계를 포함하는 특징으로 하는 연속 웨이블릿 변환 방법.
According to clause 11,
The FFT processing step is
A continuous wavelet transform method comprising the step of supporting 8/16/32/64/128/256/1024-point variable points to select an input signal to be used for calculation at each stage of the R2SDF FFT module.
제11항에 있어서,
상기 4개의 웨이블릿 SRAM은
최대 1024-point길이를 가지는 주파수영역의 웨이블릿(wavelet) 신호를 24개까지 초기화하고,
초기화된 웨이블릿(wavelet) 신호는 외부 입력신호를 이용하여 최소 4개부터 4의 배수 단위로 사용 개수가 제어되는 것을 특징으로 하는 연속 웨이블릿 변환 방법.
According to clause 11,
The four wavelet SRAMs are
Initializes up to 24 wavelet signals in the frequency domain with a maximum length of 1024 points,
A continuous wavelet transform method characterized in that the number of initialized wavelet signals used is controlled from a minimum of 4 to multiples of 4 using an external input signal.
제11항에 있어서,
상기 입력신호의 주파수 영역의 daughter wavelets 값과 요소별 곱셈을 수행하는 단계는
상기 SRAM에 저장된 입력신호의 FFT 결과값 데이터와 Wavelet SRAM에 초기화 된 값을 승산기에서 곱셈한 후, 스트림(stream) 형태로 IFFT 모듈의 입력단으로 출력하는 단계를 포함하는 것을 특징으로 하는 연속 웨이블릿 변환 방법.
According to clause 11,
The step of performing element-by-element multiplication with the daughter wavelets value in the frequency domain of the input signal is
A continuous wavelet transform method comprising multiplying the FFT result data of the input signal stored in the SRAM and the value initialized in the Wavelet SRAM in a multiplier and then outputting the data to the input terminal of the IFFT module in the form of a stream. .
제11항에 있어서,
상기 MRMDC IFFT 모듈은 4-channel 입력 파이프라인 FFT 구조를 갖는 연속 웨이블릿 변환 방법.
According to clause 11,
The MRMDC IFFT module is a continuous wavelet transform method with a 4-channel input pipeline FFT structure.
제11항에 있어서,
상기 FFT 처리하는 단계는
상기 R2SDF FFT 모듈이 상기 FFT 결과를 4개의 SRAM에 bit-reverse order되도록 전송하는 단계를 포함하는 것을 특징으로 하는 연속 웨이블릿 변환 방법.
According to clause 11,
The FFT processing step is
A continuous wavelet transform method comprising the step of the R2SDF FFT module transmitting the FFT results to four SRAMs in bit-reverse order.
제11항에 있어서,
상기 IFFT 처리하는 단계는
상기 MRMDC IFFT 모듈에서 각 stage에서 연산에 사용할 입력 신호를 선택하도록 8/16/32/64/128/256/1024-point의 가변포인트를 지원하는 단계를 포함하는 것을 특징으로 하는 연속 웨이블릿 변환 방법.
According to clause 11,
The IFFT processing step is
A continuous wavelet transform method comprising supporting 8/16/32/64/128/256/1024-point variable points in the MRMDC IFFT module to select an input signal to be used for calculation at each stage.
제11항에 있어서,
총 연산 사이클이 M개의 스케일(scale)을 사용할 때, 상기 총 연산 사이클의 개수는 2N+M/4(N)인 것을 특징으로 하는 연속 웨이블릿 변환 방법.
According to clause 11,
A continuous wavelet transform method, characterized in that when the total calculation cycle uses M scales, the total number of calculation cycles is 2N+M/4(N).
KR1020210175049A 2021-12-08 2021-12-08 Apparatus and method of continuous wavelet transform KR102638562B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210175049A KR102638562B1 (en) 2021-12-08 2021-12-08 Apparatus and method of continuous wavelet transform

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210175049A KR102638562B1 (en) 2021-12-08 2021-12-08 Apparatus and method of continuous wavelet transform

Publications (2)

Publication Number Publication Date
KR20230086431A KR20230086431A (en) 2023-06-15
KR102638562B1 true KR102638562B1 (en) 2024-02-20

Family

ID=86763715

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210175049A KR102638562B1 (en) 2021-12-08 2021-12-08 Apparatus and method of continuous wavelet transform

Country Status (1)

Country Link
KR (1) KR102638562B1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100451584B1 (en) * 2001-12-20 2004-10-08 엘지전자 주식회사 Device for encoding and decoding a moving picture using of a wavelet transformation and a motion estimation
KR101301304B1 (en) * 2010-09-30 2013-08-28 주식회사 누가의료기 A Real-Time Peak Detection and Rhythm Analysis Using Discrete Wavelet Transform During Excercise

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
A. Tariq et al., "Vital signs detection using Doppler radar and continuous wavelet Transform," Proceedings of the 5th European Conference on Antennas and Propagation(EUCAP), 2011, pp.285-288.
Kang S, Xuezeng P, Lingdi P. A reconfigurable computing engine for wavelet transforms. In: Parallel and distributed processing symposium, 2007. IPDPS 2007. IEEE International; 2007. p.1-5.
Optimized FPGA based continuous wavelet transform Yahya T. Qassim, et. al.Computers & Electrical Engineering 49 (2016) 84-94.
Patil S, Abel E. Real time continuous wavelet transform implementation on a DSP processor. J Med Eng Technol 2009;33:223-31.
Shousheng He and M. Torkelson, "A new approach to pipeline FFT processor," Proceedings of International Conference on Parallel Processing, 1996, pp. 766-770.
Y. T. Qassim et al.,, "FPGA implementation of Morlet continuous wavelet transform for EEG analysis," 2012 International Conference on Computer and Communication Engineering (ICCCE), 2012, pp. 59-64.
Yahya T. Qassim, Tim RH Cutmore, David D. Rowlands, Optimized FPGA based continuous wavelet transform, Computers & Electrical Engineering 49 (2016) 84-94.

Also Published As

Publication number Publication date
KR20230086431A (en) 2023-06-15

Similar Documents

Publication Publication Date Title
She et al. A hierarchical semi-supervised extreme learning machine method for EEG recognition
Wang et al. Hardware design of real time epileptic seizure detection based on STFT and SVM
Liu et al. Minimum spanning tree based graph neural network for emotion classification using EEG
Akan et al. Time–frequency signal processing: Today and future
Li et al. Extracting the nonlinear features of motor imagery EEG using parametric t-SNE
Li et al. Implementation of EEG emotion recognition system based on hierarchical convolutional neural networks
Torti et al. Custom FPGA processing for real-time fetal ECG extraction and identification
Page et al. Low-power manycore accelerator for personalized biomedical applications
Ting et al. Implementation for fetal ECG detection from multi-channel abdominal recordings with 2D convolutional neural network
Chakraborty et al. A computationally efficient automated seizure detection method based on the novel idea of multiscale spectral features
Xiong et al. CEEMDAN-IMFx-PCA-CICA: an improved single-channel blind source separation in multimedia environment for motion artifact reduction in ambulatory ECG
Hernandez-Ruiz et al. Motor-imagery eegnet-based processing on a low-spec soc hardware
KR102638562B1 (en) Apparatus and method of continuous wavelet transform
Yue et al. Intention recognition from spatio-temporal representation of EEG signals
Qassim et al. Optimized FPGA based continuous wavelet transform
Alsayyari Fetal cardiotocography monitoring using Legendre neural networks
Cuomo et al. An inverse Bayesian scheme for the denoising of ECG signals
Lainscsek et al. Delay differential analysis of electroencephalographic data
Li et al. Low-dimensional feature fusion strategy for overlapping neuron spike sorting
Hori et al. Selecting EEG components using time series analysis in brain death diagnosis
Liao et al. An ICA-based automatic eye blink artifact eliminator for real-time multi-channel EEG applications
Wang et al. MSSET: A high-performance time-frequency analysis method for sparse-spectrum biomedical signal
Bhardwaj et al. Low complexity single channel ICA architecture design methodology for pervasive healthcare applications
Sabeenian et al. Transfer learning-based electrocardiogram classification using wavelet scattered features
Obadi et al. Optimized continuous wavelet transform algorithm architecture and implementation on FPGA for motion artifact rejection in radar-based vital signs monitoring

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant