1,330 research outputs found
IMPLEMENTATION OF NOISE CANCELLATION WITH HARDWARE DESCRIPTION LANGUAGE
The objective of this project is to implement noise cancellation technique on an FPGA
using Hardware Description Language. The performance of several adaptive algorithms is
compared to determine the desirable algorithm used for adaptive noise cancellation
system. The project will focus on the implementation of adaptive filter with least-meansquares
(LMS) algorithm or normalized least-mean-squares (NLMS) algorithm to cancel
acoustic noises. This noise consists of extraneous or unwanted waveforms that can
interfere with communication. Due to the simplicity and effectiveness of adaptive noise
cancellation technique, it is used to remove the noise component from the desired signal.
The project is divided into four main parts: research, Matlab simulation, ModelSim
simulation and hardware implementation. The project starts with research on several noise
cancellation techniques, and then with Matlab code, Simulink and FDA tool, the adaptive
noise cancellation system is designed with the implementation of the LMS algorithm,
NLMS algorithm and recursive-least-square algorithm to remove the interference noise.
By using the Matlab code and Simulink, the noise that interfered with a sinusoidal signal
and a record of music can be removed. The original signal in turns can be retrieved from
the noise corrupted signal by changing the coefficient of the filter. Since filter is the
important component in adaptive filtering process, the filter is designed first before adding
adaptive algorithm. A Finite Impulse Response (FIR) filter is designed and the desired
result of functional simulation and timing simulation is obtained through ModelSim and
Integrated Software Environment (ISE) software and FPGA implementation. Finally the
adaptive algorithm is added to the filter, and implemented in the FPGA. The noise is
greatly reduced in Matlab simulation, functional simulation and timing simulation. Hence
the results of this project show that noise cancellation with adaptive filter is feasible
Simulated Annealing with min-cut and greedy perturbations
Custom integrated circuit design requires an ever increasing number of elements to be placed on a physical die. The process of searching for an optimal solution is NP-hard so heuristics are required to achieve satisfactory results under time constraints.
Simulated Annealing is an algorithm which uses randomly generated perturbations to adjust a single solution. The effect of a generated perturbation is examined by a cost function which evaluates the solution. If the perturbation decreases the cost, it is accepted. If it increases the cost, it is accepted probabilistically. Such an approach allows the algorithm to avoid local minima and find satisfactory solutions. One problem faced by Simulated Annealing is that it can take a very large number of iterations to reach a desired result. Greedy perturbations use knowledge of the system to generate solutions which may be satisfactory after fewer iterations than non-greedy, however previous work has indicated that the exclusive use of greedy perturbations seems to result in a solution constrained to local minima.
Min-cut is a procedure in which a graph is split into two pieces with the least interconnection possible between them. Using this with a placement problem helps to recognize components which belong to the same functional unit and thus enhance results of Simulated Annealing. The feasibility of this approach has been assessed.
Hardware, through parallelization, can be used to increase the performance of algorithms by decreasing runtime. The possibility of increased performance motivated the exploration of the ability to model greedy perturbations in hardware. The use of greedy perturbations while avoiding local minima was also explored
A new countermeasure against side-channel attacks based on hardware-software co-design
This paper aims at presenting a new countermeasure against Side-Channel Analysis (SCA) attacks, whose implementation is based on a hardware-software co-design. The hardware architecture consists of a microprocessor, which executes the algorithm using a false key, and a coprocessor that performs several operations that are necessary to retrieve the original text that was encrypted with the real key. The coprocessor hardly affects the power consumption of the device, so that any classical attack based on such power consumption would reveal a false key. Additionally, as the operations carried out by the coprocessor are performed in parallel with the microprocessor, the execution time devoted for encrypting a specific text is not affected by the proposed countermeasure. In order to verify the correctness of our proposal, the system was implemented on a Virtex 5 FPGA. Different SCA attacks were performed on several functions of AES algorithm. Experimental results show in all cases that the system is effectively protected by revealing a false encryption key.Peer ReviewedPreprin
- …