DANH MỤC CÔNG TRÌNH KHOA HỌC ĐÃ CÔNG BỐ

Transcription

DANH MỤC CÔNG TRÌNH KHOA HỌC ĐÃ CÔNG BỐ
ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
Khoa Điện tử -Viễn thông
DANH MỤC CÔNG TRÌNH KHOA HỌC ĐÃ CÔNG BỐ
Tên tác giả: NGUYỄN ĐỨC PHÚC
Đơn vị công tác: Bộ môn Máy tính – Hệ thống nhúng, khoa Điện tử Viễn thông
Số
TT
Tên công trình
Thời gian,
nơi tổ chức
Vai trò thực hiện
Nơi công bố
1
Nghiên cứu xây dựng giải thuật mã
hóa – mật mã (RSA và ZUC) dùng
trong việc truyền dữ liệu video và cài
đặt phần cứng chuyên dụng phục vụ
cho các ứng dụng về an ninh thông tin.
Từ 10/2013,
Sở KHCN
TPHCM
Thành viên nhóm thực
hiện
Đề tài nghiên cứu khoa
học cấp sở Khoa Học
Công Nghệ TP.HCM
2
Hardware-Software Co-design of an
Embedded System for Noise
Cancellation
11/2013
TPHCM, Việt
Nam
Đồng tác giả
3
A Simple Computer Based on 32-bit
Micropressor and Integrated
Development Environment for
Educational Purpose
11/2012
Đại học Khoa
Học Tự
Nhiên
Đồng tác giả
Hội nghị quốc tế IEICE
về kiểm tra và thiết kế
mạch tích hợp lần IV
(ICDV 2013)
Hội nghị khoa học
Đại học Khoa Học
Tự Nhiên TPHCM
Lần 8
4
An FPGA Implementation of
Ultra-WideBandBased Transceiver
System
5
A Novel Hardware Architecture for
High-throughput and Multiplierless
FFT Processor Using CORDIC
Method
TPHCM
11/2012
Đại học Khoa
Học Tự
Nhiên
03/2012
Okinawa,
Nhật Bản
Đồng tác giả
Hội nghị khoa học
Đại học Khoa Học
Tự Nhiên TPHCM
Lần 8
Đồng tác giả
Cuộc thi thiết kế vi mạch
quốc tế LSI Contest, tổ
chức tại Okinawa, Nhật
Bản
THE INSTITUTE OF ELECTRONICS,
INFORMATION AND COMMUNICATION ENGINEERS
IEICE ICDV 2013
Hardware-Software Co-design of an Embedded System for Noise Cancellation
Duc-Phuc NGUYEN, Cao-Quyen TRAN, Khac-Minh HO, Minh-Triet LUU,
Huu-Thuan HUYNH, Trong-Tu BUI
University of Science, 227 Nguyen Van Cu St., Ward.4, Dist.5,
Ho Chi Minh City, Vietnam
E-mail: { ndphuc, bttu, hhthuan }@fetel.hcmus.edu.vn
Abstract: Adaptive Noise Cancellation (ANC) systems can effectively suppress noise in non-stationary conditions.
However, the drawback of ANC systems is that we need at least two microphones - one for input speech and one for reference
noise. In this paper, we present the hardware-software co-design of Noise Cancellation (NC) based on Spectral Subtraction
(SS) algorithm. By using SS method, noise is estimated during non-speech activities and then it is subtracted from speech in
speech activities. Experimental results have proved that high performance is obtained by using the proposed NC system. In
addition, it can process the input speeches with low SNR ratio ranging widely from -1dB to +20dB.
Keyword: Spectral Subtraction Algorithm, Hardware-Software Co-design, Noise Cancellation.
requirement.
1. Introduction
Acoustic noise background can significantly degrade
In order to overcome the limitations of the original SS
the performance of audio applications such as speech
methods, a NC system imp lemented in the approach of
recognition, speech authentication etc. It should be
hardware-software co-design has been proposed in this
maintained at an acceptable level so that the qualities of
paper. Hardware is implemented to execute processes that
the application will not be affected. ANC is widely used in
take high computational effort. Processes that take less
today speech enhancement application due to the fa ct that
computational effort is executed by software. Several
it can suppress non-stationary background noise without
advantages are obtained when following the approach of
any apriori knowledge of speech and noise. However,
hardware-software co-design. The implemented hardware
besides
speech
can be integrated into various kind of SoC and software
contaminated by acoustic background noise, ANC also
can be written in any appropriate programming language
employs a reference input which correlat ed with noise in
supported by this SoC. Besides, software c an be improved
primary input [1]-[2]. Moreover, if low level signal in
if the performance of the recent version is not optimized.
primary input presents in reference input, it will degrade
The remaining of this paper is organized as followed. In
the performance of ANC significantly. In addition, after
section 2, the SS algorithm is presented. In section 3,
subtracting noise from speech, ANC still leaves residual
detail of the NC architecture is described. The advantages
noise in the resulted speech [3].
of hardware-software co-design are also taken into
the
primary
input
which
contains
An alternative method for NC is SS algorithm. The main
consideration in this section. Section 4 shows the
principle of SS is to achieve enhanced speech by
experimental results. Finally, conclusion is presented in
subtracting estimated noise spectrum from the spectrum of
section 5.
speech
2. Spectral Subtraction Algorithm
affected
limitations
by noise.
when
appl ying
However,
SS
there
algorithm
are
to
two
speech
enhancement.
1. SS method works only with stationary noise,
assuming
that
By applying spectral
subtraction
algorithm,
noise
spectral is subtracted which results in enhanced speech.
background
noise
does
not
change
frequently over time [4].
Assuming that clean speech s(n) is contaminated with
noise d(n), the result speech x(n) can be written as:
x(n) = s(n) + d(n)
(1)
2. The crucial techniques in a typical NC system are
Discrete Fourier Transform (DFT) and Inver se Discrete
Fourier
Transform
(IDFT)
which
require
a
lot
of
computation and execution time. For this reason, a
powerful processor is employed to satisfy real -time
The objective of noise cancellation is to find the enhanced
speech 𝑠̂ from the given x(n) [4]. We also make the
assumption that d(n) is uncorrelated with s(n) which
means that the magnitude spectrum of x(n) is the sum
Copyright ©2013 by IEICE
magnitude spectrum of s(n) and d(n) [5]-[6]. Let X(k), S(k)
computational effort. If we realize these operations in
and D(k) are the spectrum of x(n), s(n) and d(n)
software, a high performance microprocessor is needed.
respectively. So that,
On the other hand when we implement these operations in
(2)
hardware, a high performance microprocessor is not
The estimated spectrum of 𝑆(𝑘) is 𝑆̂(𝑘) and is given as
necessary but speed and accuracy are still guaranteed.
X(k) = S(k) + D(k)
the result of X(k) and spectrum gain G(k):
to remove the estimated noise spectrum from the spectrum
𝑆̂(𝑘) = 𝑋(𝑘)𝐺(𝑘)
(3)
𝐺 = (1 −
√𝜆
of input speech, which takes fewer computational effort.
For this reason, processing step is implemented in
The spectrum gain is expressed as:
𝛽
Besides, the main task of SS method (processing step) is
𝛼
(4)
) ; 0 < 𝛼 < 1 ; 𝛽 ≥ 1.
Where, α, β are correction factor and λ is a priori SNR
(Signal to Noise Ratio) and is derived as:
𝛾−1
If non − negative
𝑦={
0
Otherwise
(5)
and γ is a posteriori SNR,
𝐸(|𝑥𝑘2 |)
𝛾=
𝐸(|𝐷𝑘2 |)
(6)
software. This process can be executed in any embedded
microprocessor. In addition, based on practical result, the
methods of removing noise spectrum from speech can be
improved by changing modifying software.
Another
advantage
of
using
hardware -software
co-design approach in this system comes from NE. The
responsibility of NE is to detect non -speech periods and
update the estimated noise spectrum, assuming that this
period contains only background noise. In order to do that,
NC compares the output spectrum of FFT with a threshold
3. Noise Cancellation Architecture
The proposed NC architecture is illustrated in Fig.1.
The recorded speech is obtained by a microphone and goes
through three following steps: (1) pre -processing, (2)
processing and (3) post-processing step. In pre-processing
step, recorded speech including clean speech an d acoustic
background noise is digitized by ADC, windowed with the
length of 64 samples and subsequently transformed into
the frequency domain by employing FFT (Fast F ourier
Transform). Estimated spectrum of noise is also obtained
by Noise Estimator (NE) in this step. After that, estimated
noise spectrum is then subtracted from recorded speech
spectrum which results in the spectrum of estimated clean
speech. Finally, clean speech is obtained by transforming
the result of processing step back into time -domain. IFFT
(Inverse Fast Fourier Transform) is employed in this step.
value which can be configured to NE by software in run
time. By frequently updating noise threshold during run
time, high performance is obtained even in the condition
of non-stationary background noise.
The NC architecture is targeted to the Altera FPGA
Cyclone IV E (EP4CE115F29C7). This device is a part of
DE2 115 board which includes audio codec interface with
the sampling frequency of 32Khz. Hardware of the
proposed NC is written in Verilog HDL. As illustrated in
Fig.2,
these
two
components,
along
with
NIOSII
embedded microprocessor, audio codec and SDRAM are
integrated to the standard Avalon Bus creating NC system.
Embedded software is written in C language and stored in
SDRAM. The system operates at the frequency of
100MHz.
Figure.1 - Spectral subtraction algorithm block -diagram
The proposed NC system is implemented in both
hardware and software. When implementing NC in the
approach
of
hardware-software
co-design,
several
advantages are achieved. Operation such as FFT/IFFT and
Noise Estimation always process with a high regularity to
all
input
audio
frames.
They
also
take
a
high
Figure.2 - The architecture of the proposed NC system
The processing flow is illustrated as fo llowed:
1. NIOS II microprocessor imports sample data from
audio codec via audio codec controller.
2. CPU pushed every 64-sample data to FFT/IFFT
component. After processed, spectrum of this 64 -sample
lowest SNR ratio of -1dB instead of +10dB in [7].
data is obtained.
3. The result spectrum in step 3 is pushed into NE. NE
determines whether this spectrum belongs to speech
activities or non-speech activities. If it comes from
non-speech
activities,
estimated
noise
spectrum
is
updated.
4. Estimated noise spectrum is removed from the
resulted spectrum in step 2. The estimated spectrum of
Figure.3 - Clean speech
enhanced speech is obtained in this step.
5. CPU imports the estimated spectrum of enhanced
speech to FFT/IFFT components to convert this spectrum
back into time-domain.
6. NIOS II export enhanced speech to audio codec via
audio codec controller.
4. Experimental Result
The proposed NC system is synthesized by Quartus II
software and targeted to Altera FPGA Cyclone IV E
(EP4CE115F29C7). Table 1 shows the hardware resources
employed in this system. It can be seen that, the hardware
utilization of the proposed NC is very small.
Figure.4 - (a) Input speech with SNR=5dB, (b) Speech after
Table.1 - Hardware resource
Available resources
Combinational logic
Register
Memory
Embedded multiplier
Used resources
3,443/114,480
1,000/114,480
77,728/3,981,321
12/532
noise cancelling
Ultilization
3%
1%
2%
2%
Clean speech is recorded in the laboratory environment.
Next, observed speeches are created by adding several
acoustic background noise level. Then, the proposed NC
system is employed to suppress background noise from
observed speeches. Clean speech is illustrat ed in Fig.3. It
can be seen that, between two speech periods (high
amplitude period), there is a non -speech period (small
amplitude
section).
In
Fig.4a
and
Fig.5a,
acoustic
background noise is added to the clean speech creating
Figure.5 - (a) Input speech with SNR= -1dB, (b) Speech after
input speech with the SNR ratio of +5dB and -1dB
respectively.
NE
updates
noise
spectrum
noise cancelling.
during
The proposed NC system can operate at real -time with
non-speech periods because these periods contain only
an
background noise. Then, noise spectrum is removed from
performance digital signal processor. The reason is high
speech in speech period resulting in estimated clean
computational techniques such as FFT/IFFT and noise
speech. Fig.4b and 5b illustrate the estimated clean speech.
estimation are implemented in hardware. In order to
Even though the amplitude of estimated clean speech is
emphasize the advantage of hardware -software co-design
smaller than the actual clean speech, the information of
method, the same SS method was also written in C
speech is still guaranteed. Besides, residual noise is
language and executed by NIOS II microprocessor [8].
maintained at a low level after noise suppression. The
Obviously, it is unable to run at real-time because the
proposed NC system can process the input speech with
majority of execution time was taken to compute FFT and
embedded
microprocessor
instead
of
a
high
IFFT. Table 2 compares the performance of the proposed
conventional SS-based NC, a spectral subtraction noise
NC system with the embedded software NC system.
cancellation
NC
architecture
Pre-processing
latency
Processing
latency
Post-processing
latency
Total
Embedded
NC
software
Our
proposed
NC system
Speed
up
17.43 ms
2.11 ms
8.23
1.98 ms
1.98 ms
1
15.47 ms
2.08 ms
7.4
34.88 ms
6.17 ms
5.65
The latency in pre-processing and post-processing also
includes the execution time of audio codec (2ms). NC
software takes approximately 17.5ms to compute FFT and
estimated noise spectrum and takes 13.5ms to compute
IFFT. On the other hand, the result of FFT - estimated
noise spectrum and IFFT can be provided immediately by
using the proposed NC system - at maximum, a period of
200 clock pulses is required for each operation. Besides,
the latency of processing-step only takes 1.98ms which is
smaller than the operation of audio codec (2ms). For this
reason, the requirement of realtime is guaranteed .
Table 3 compares the execution time of the NC system
proposed in this paper with the ANC system proposed in
[9]. Although the ANC operates at higher frequency and
the microprocessor is more powerful, the execution time
of our proposed NC is 6 times faster.
Table.3 - Execution time comparation
Features
Microprocessor
Our proposed
NC
Embedded NIOS
II
The ANC
proposed in [9]
TMS320C6713
DSP
100
225
6,17
38.95
Operation
speed (MHz)
Execution time
(ms)
implemented
in
the
approach
of
hardware-software co-designed has been proposed in this
Table.2 - Execution time and speed up
An additional experiment was also carried out to
evaluate performance of the NC hardware. When the NC
hardware operates at the speech of 1MHz independently, it
only takes 0.2 ms for the NC hardware to calculate the
input speech spectrum and the estimated noise spectrum.
The same amount of time is needed for post-processing
step. For this reason, the requirement for realtime is still
guaranteed when integrating this hardware into other SoC
rather than Altera Media Computer with an embedded
NIOS II microprocessor.
5. Conclusion
In order to overcome the limitations of ANC and
paper. Processes that take a lot of computation and operate
with a high regularity are implemented in hardware.
Software executes processes that take fewer computational
effort.
For
this
reason,
the
employment
of
high
performance digital signal processor is not necessary.
Experimental results show that, the proposed NC system
can suppress noise at the speed of 5.68 times faster than
the embedded software NC system. The quality of
estimated speech can be guaranteed even if the SNR ratio
of the input speech is very low ( -1dB). Besides, by
updating noise threshold during run time, non -stationary
background noise can also be suppressed. In addition,
after noise suppressing, residual noise is maintained at a
low level.
References
[1] R. E. Delgado, O. Ozdamar, S. Rahman and C. N.
Lopez:
Adaptive
Noise
Cancellation
in
a
Multimicrophone System for Distortion Product
Otoacoustic Emission Acquisition. IEEE Trans.
Biomedical Eng. Vol. 47, No. 9, September 2000.
[2] Yang Jie and Wang Zhenli: On the application of
variable-step adaptive noise cancelling for improving
the robustness of speech recognition. 20 09 ISECS Int.
Colloquium
Comp.,
Comm.,
Control,
and
Management, Vol 2, August, 2009.
[3] Aarti Singh: Adaptive Noise Cancellation. Dept. of
Electronics and Communication Netaji Subhas
Institute of Technology.
[4] K. Steinert, M. Schonle, C. Beaugeant and T.
Fingscheidt: Hand-free System with low-delay
subband acoustic echo control and noise reduction.
Acoustics, Speech and Signal Processing, 2008,
ICASSP 2008, IEEE Int. Conf., April, 2008.
[5] Ekaterina Verteletskaya and Boris Simak: Noise
Reduction Based on Modied Spectral Subtraction
Method. IAENG Int. Journal of Computer Science,
2011.
[6] P. C. Pandey, S. M. Bhandarkar: Enhanced of
Alaryngeal Speech Using Spectral Subtraction.
Digital Signal Processing, 2002. DSP 2002. 2002
14th Int. Conf., Vol 2, 2012.
[7] N. B. Yoma, F. McInnes and M. Jack: Weighted
Matching Algorithms and Reliability in noise
cancelling by spectral subtraction. Acoustics, Speech,
and Signal Processing, 1997. ICASSP -97., 1997
IEEE Int. Conf., Vol 2, 1997.
[8] U. Mahbub and S. A. Fattah: Gradient Based
Adaptive Filter Algorithm for Single Channel
Acoustic Echo Cancellation in Noise. Int. Conf.
Electrical and Computer Engineering, 2012.
[9] Media Computer System for the Altera DE2 Board,
released in May, 2011