Supervisors info:
Επίκ. Καθηγητής Διονύσιος Ρεΐσης(Επιβλέπων), Καθηγητής Δημήτριος Φραντζεσκάκης, Επίκ. Καθηγητής Έκτορας Νισταζάκης
Summary:
Technology advancement in circuit integration has granted FPGAs the capability
to contain a large number of components which, when appropriately programmed,
may implement digital circuits or even digital systems. In many applications
(telecommunications, electronic automation etc.) such a system requires a
processor, which is responsible for the management of the overall system.
Processors that are used in FPGA's are divided into two categories: hard
processors, which are implemented in the integrated chip with dedicated
resources and soft processors, the implementation of which consumes FPGA
resources. The focus of this thesis are soft processors and namely the
MicroBlaze processor, which is provided by Xilinx to be used in the company's
FPGAs.
In the first section of this thesis we analyze the Microblaze processors
architecture, its features and peripherals. The latter are either available or
need to be implemented and may be connected with the processor to support
specific functions, such as interrupts and communication with external FPGA
peripherals. Next, we display a methodology used for the creation of custom
system peripherals and their communication mechanisms with the processor. As an
example, a queue (FIFO) is implemented.
The second section deals with the development of software for a
processor/peripherals system which has been designed and implemented in a
Xilinx FPGA. Software development for the Microblaze processor may be divided
into two subcategories: 1 ) Development of applications designed to execute on
the processor and 2 ) Development of drivers designed to support implemented
peripherals. In the same section we include examples which are intended to
display respectively : a ) the use of Xilinx provided libraries and drivers
used in application development, b ) development of drivers used to support
custom peripherals and c) development of applications that exploit the features
of custom peripheral drivers.
Keywords:
Microblaze processor, Custom peripherals development, FPGA, Drivers development, Application development