20.11.2014 Views

PPKE ITK PhD and MPhil Thesis Classes

PPKE ITK PhD and MPhil Thesis Classes

PPKE ITK PhD and MPhil Thesis Classes

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4. IMPLEMENTING A GLOBAL ANALOGIC PROGRAMMING UNIT<br />

90 FOR EMULATED DIGITAL CNN PROCESSORS ON FPGA<br />

StateIn ConstIn<br />

TmpselIn<br />

LeftOut<br />

LeftIn<br />

LeftInNew<br />

Mixer<br />

unit<br />

Memory unit<br />

Template<br />

memory<br />

RightOut<br />

RightOutNew<br />

RightIn<br />

Control<br />

unit<br />

Enable<br />

DataValidIn<br />

DataValidOut<br />

Arithmetic unit<br />

StateOut ConstOut TmpselOut<br />

Figure 4.1: The structure of the general Falcon processor element is optimized for<br />

GAPU integration. Main building blocks <strong>and</strong> signals with an additional low-level<br />

Control unit are depicted.<br />

The integrated Control logic has three different control signals: the Enable allows<br />

the operation of the Falcon processor element (FPE) for one clock cycle, the<br />

DataValidIn denotes that valid input data arrived, while DataValidOut indicates<br />

the first computed result.<br />

Depending on the template size, several rows from the given layer should<br />

be stored in the Memory unit. It must be supplied with input data from the<br />

main memory (RAM) of the proposed CNN-UM implementation. The arithmetic<br />

unit is modified <strong>and</strong> optimized for GAPU. Which can be built up from (2r +<br />

1) × (2r + 1) multipliers instead of r dedicated elements. This means that it<br />

is capable of computing the new state value within one clock cycle, supposing<br />

nearest neighborhood (r=1) templates <strong>and</strong> a single-layer structure. The hardware<br />

complexity of the application increases quadratically as the number of layers are

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!