HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER Matjaz Verderber, Andrej Zemva, Andrej Trost University...

10
HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER Matjaz Verderber, Andrej Zemva, Andrej Trost University of Ljubljana Faculty of Electrical Engineering Trzaska 25, 1000 Ljubljana, Slovenia [email protected]

Transcript of HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER Matjaz Verderber, Andrej Zemva, Andrej Trost University...

Page 1: HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER Matjaz Verderber, Andrej Zemva, Andrej Trost University of Ljubljana Faculty of Electrical Engineering Trzaska.

HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER

Matjaz Verderber, Andrej Zemva, Andrej Trost

University of Ljubljana

Faculty of Electrical Engineering

Trzaska 25, 1000 Ljubljana, Slovenia

[email protected]

Page 2: HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER Matjaz Verderber, Andrej Zemva, Andrej Trost University of Ljubljana Faculty of Electrical Engineering Trzaska.

2

Reconfigurable Architectures Workshop (RAW 2003)

Presentation outline

• Motivation and basic idea

• Optimization of the MPEG-2 video decoder

• Timing optimization

• Power consumption analysis

• FPGA implementation of the MPEG-2 video decoder

• System environment

• Implementation in the FPGA

• Implementation results

• Conclusion

Motivation and basic idea

Page 3: HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER Matjaz Verderber, Andrej Zemva, Andrej Trost University of Ljubljana Faculty of Electrical Engineering Trzaska.

3

Reconfigurable Architectures Workshop (RAW 2003)

Motivation and basic idea• Importance of the MPEG-2 standard

• Real-time requirements and low-power operation

• Possibilities to use modern HW/SW technology

• HW/SW optimization and implementation within one FPGA

• Software tool for MPEG simulations

• Analysis (time, power consumption) of the MPEG-2 decoder

• Optimization (time, power consumption)

• Implementation in Virtex 1600E

Timing optimization

Page 4: HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER Matjaz Verderber, Andrej Zemva, Andrej Trost University of Ljubljana Faculty of Electrical Engineering Trzaska.

4

Reconfigurable Architectures Workshop (RAW 2003)

Timing optimizationISO/IEC 13818-2 compliant software MPEG-2 decoder

Diagram of the Lei-Sun VLC decoder

Hardware implementation

Modified Chen 1D inverse DCT

Hardware implementation

Timing optimization

Page 5: HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER Matjaz Verderber, Andrej Zemva, Andrej Trost University of Ljubljana Faculty of Electrical Engineering Trzaska.

5

Reconfigurable Architectures Workshop (RAW 2003)

Timing optimization• Up to 40% improvement of speed for MPEG-2

decoding compared to software based solution

Average decoding time for one sequence after optimization (37.880 ms)

VLD decoding

time (8.468%)

IDCT decoding

time (0.004%)

remaining time

(91.528%)

Average decoding time for one sequence before optimization (63.733 ms)

IDCT decoding

time (24.5%)

VLD decoding

time (21.1%)

remaining time

(54.4%)

Decoding times for 150 sequences before and after optimization

• 72 MHz - estimated decoding frequency for real-time decoding (after optimization)

Power consumption optimization

Page 6: HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER Matjaz Verderber, Andrej Zemva, Andrej Trost University of Ljubljana Faculty of Electrical Engineering Trzaska.

6

Reconfigurable Architectures Workshop (RAW 2003)

Power consumption optimization• Conclusions have been made based on energy

conscious study made by Henkel and Li

• Correlated results by timing and power consumption optimization

14,6

36,833,1

47,1

0

10

20

30

40

50

case 1 case 2 case 3 case 4

Energy reduction in % versus all SW solution

Results of the case study

Case 1 - Quant. in HW, the rest in SW

Case 2 - 2-D DCT in HW, the rest in SW

Case 3 - 1-D DCT in HW, the rest in SW

Case 4 - Quant. and 2-D DCT in HW, the rest in SW

System environment

Page 7: HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER Matjaz Verderber, Andrej Zemva, Andrej Trost University of Ljubljana Faculty of Electrical Engineering Trzaska.

7

Reconfigurable Architectures Workshop (RAW 2003)

System environment• HW/SW partitioned MPEG-2 decoder has been

tested on the Flextronics FPGA based prototyping board

4 Mbyte SRAM

Xilinx Virtex 1600E (2188742 systemgates, 72x108 CLBs, 589824 bits of RAM, ...)

64 Mbyte SDRAM

32 Mbyte Flash

• Several peripheral HW cores (RISC, VGA, UART, MEMC) described in Verilog

Implementation in the FPGA

• Different Linux-uClinux software tools available (GCC, GDB, Simulator, …)

Page 8: HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER Matjaz Verderber, Andrej Zemva, Andrej Trost University of Ljubljana Faculty of Electrical Engineering Trzaska.

8

Reconfigurable Architectures Workshop (RAW 2003)

Block diagram of the implemented MPEG-2 decoder

Implementation in the FPGA

Hardware implementation

Software implementation

Error messages and

warnings

Boot up sequence

Working memory

Access to external devices

Stored MPEG-2 decoder software

Display of the decoded frames

WISHBONE BUS

Implementation results

Page 9: HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER Matjaz Verderber, Andrej Zemva, Andrej Trost University of Ljubljana Faculty of Electrical Engineering Trzaska.

9

Reconfigurable Architectures Workshop (RAW 2003)

Implementation results

• 40% utilization of the Virtex 1600E

Number of: RISC1200 IDCT VLDSLICEs 22% 8% 10%

BlockRAMs 12% 0 0IOBs 90% 20% 6%

GCLKs 75% 75% 25%GCLKIOBs 90% 25% 25%

Implementation results of the MPEG-2 decoder

• Synplify Pro (synthesis) and Xilinx ISE Foundation software (implementation) used

• All cores described in Verilog

Conclusion

Page 10: HW/SW CODESIGN OF THE MPEG-2 VIDEO DECODER Matjaz Verderber, Andrej Zemva, Andrej Trost University of Ljubljana Faculty of Electrical Engineering Trzaska.

10

Reconfigurable Architectures Workshop (RAW 2003)

Conclusion

• Optimized MPEG-2 video decoder by speed and power consumption

• 40% higher decoding speed and 36% lower power consumption

• Some problems by final routing

• Presentation of a modern implementation method where complex embedded system (MPEG-2 decoder) can be efficiently HW/SW partitioned