16th LSI Design ContestsEin Okinawa  Design Specification - 2-1

2-1. Separating into the Hardware and the Software

2-1-1. Features of the HW and the SW

The advantage of software processing is that various operating is implemented only by rewriting source codes. Furthermore, a circuit size is constant became software operates loop processing on circuit in the CPU. The disadvantage of software processing is processing speed is slow. On the other hand, the advantage of processing on the hardware is that processing speed is high, but a circuit size is large at the case of difficult processing owing to that required circuit is different for every processing.

Now we discuss about the system shown in the following figure. In this figure, the data is processed by operator F, and then it is branched to operator A, B or C by DEMUX. We defined the operation that is processed by all means as gsettled operationh and the operation that may not be processed as gunsettled operationh. The settled operation is suitability implementation in the hardware for processing speed. However, the unsettled operation isnft suitability implementation in the hardware. If unsettled is implemented on the hardware, the all of circuit is not necessarily utilized every time, so itfs inefficient from the circuit size point of view. So, it is suitability that settled operation is implemented in the hardware, and unsettled operation is done in the software.

Figure 4e

Figure 4

2-1-2. Feature of Noise Cancelling System

The processing flow of the system which cancels noise in the frequency domain is shown in the following figure.

Figure 5e

Figure 5

The noise canceling algorithms by spectrum gain estimation are suggested in previous works. These algorithms cancel noise in the frequency domain, not the time domain. So, processing in the time domain is constant. From this reason, processing in the time domain is gsettled operationh, and processing in the frequency domain is gunsettled operationh.

2-1-3. Architecture

The processing in the time domain is gsettled operationh, and processing in the frequency domain is gunsettled operationh. Therefore, processing in the time domain is implemented on the hardware for settled operation, and processing in the frequency domain is implemented in the software for unsettled operation. The architecture of noise canceller by hardware/software co-design is shown in the following figure. The architecture process IFFT on the FFT arithmetic unit to make circuit size smaller.

Figure 6e

Figure 6

The process of this architecture is shown in the following.

1.Speech signal (in the time domain) is AD converted in AC97 Audio Codec, and putted into the
      CPU through AC97 Controller.

2.Speech signal is filtered by window function.

3.The filtered speech signal is converted to the frequency domain by FFT arithmetic unit.

4.The signal (in the frequency domain) is cancelled noise by the CPU. (Software processing)

5.The noise cancelled speech signal is converted to the time domain (IFFT) by FFT arithmetic unit.

6.After IFFT, the speech signal is half-overlapped in the time domain. Then it putted into the CPU.

7.The CPU output speech signal to AC97 Audio Codec through AC97 Controller, and it is DA converted in
      AC97 Audio Codec.