Build 2016 - B880 - Top 6 Reasons to Move Your C++ Code to Visual Studio 2015
Iecon slides
1. Address generation unit for multimedia
applications
on application specific instruction set
processors
Marc MorenoBerengue, Guillermo Talavera Velilla, Aitor RodriguezAlsina,
Jordi Carrabina
Universitat Autònoma de Barcelona (Spain)
IECON 2010
7–10 November – Phoenix, AZ, USA
2. Motivation
➢ Design a custom Address Generation Unit (AGU)
➢ Connected to an ASIP datapath
➢ Benefits of custom AGU design
➢ Previous software optimizations.
➢ Multimedia applications
2
5. Multimedia applications features
➢ Multimedia applications
➢ Complex index manipulation
➢ Large number of data access
➢ Require
➢ High performance
➢ Low energy consumption
It is crucial reduce these data accesses and related address
computations in an effective way
5
11. Application specific instruction set
processor
Application specific instruction set processor (ASIP)
➢ Extend its instruction set
➢ Fast interface for read/write data from/to specific
hardware
➢ 1 Instruction
➢ 1 Cycle
11
12. AGU design
➢ AGU attached to the ASIP datapath save execution time
● 1 instruction
● 1 cycle
12
15. AGU skeleton
The AGU has one control unit,
one process unit and one FIFO
Custom Instruction interface
➢ CI (custom instruction) unit CI unit
Change AE values
• AE configuration & read FIFO
Read AS values
➢ CO (coprocessador) unit CO unit
• Calculate the AE to generate the
AS and store all values in the AS generation
FIFO
15
21. Test environment
➢ NIOS II softcore processor (Altera)
● 32 bits RISC processor
● Harvard memory architecture
● Data/Instructions cache
● 256 Custom Instructions (Fast datapath interface)
➢ Cyclone II EP2C35 Altera FPGA
21
22. Test Applications
➢ Cavity Detector
Medical imaging application to detect cavities on tomography scans
➢ Quadtree Structured Difference Pulse Code Modulation
(QSDPCM)
An interframe compression technique for video imaging.
22
24. Energy improvements
Energy ( Cavity ) Energy ( QSDPCM )
1 1
0.8 0.8
0.6 0.6
0.4 0.4
0.2 0.2
0 0
DTSE
Init AGU inclusion
HW AGU inclusion DTSE
Init AGU inclusion
HW AGU inclusion
Energy reduction: 27% Energy reduction: 21%
24
25. Area penalties
Cavity (LEs) QSPCM (LEs)
NIOS-F 2644 2644
NIOS-F +AGU 3596 3592
The AGU inclusion in the NIOS II architecture use
2.9% of total FPGA resources (33216LEs)
25
27. Conclusions
➢ Extend an ASIP by AGUs is an efficient way to meet the
performance/energy requirements of multimedia applications
after some SW optimizations
➢ The innovation of connecting the AGU in the processor data
path and working in parallel with the main processor allow
calculate a wide range of values before the processor needs them
➢ Use an AGU skeleton and a wizard decrease the design and
implementation time.
27
28. Future Work
➢ Improve the AGU wizard in order to:
● Detect automatically AEs and show relevant informations
about each AE for a given C file.
● Generate the appropriate AGU for a specific set of AEs
● Generate AGUs for more than one ASIP
➢ Extend the set of applications have been used in this work
28