+ All Categories
Home > Documents > Overview of the OpenVG, a vector graphics API Introduction ... · Introduction to IWAYAG, an native...

Overview of the OpenVG, a vector graphics API Introduction ... · Introduction to IWAYAG, an native...

Date post: 30-Apr-2019
Category:
Upload: ngocong
View: 231 times
Download: 0 times
Share this document with a friend
26
Overview of the OpenVG, a vector graphics API and Introduction to IWAYAG, an native OpenVG accelerator December 18, 2009 Hiroshi Fujiwara NEC System Technologies, Ltd.
Transcript

Overview of the OpenVG, a vector graphics API

and

Introduction to IWAYAG, an native OpenVG accelerator

December 18, 2009

Hiroshi Fujiwara

NEC System Technologies, Ltd.

© NEC Corporation 2009Page 2

Agenda

▐ Overview of the OpenVG, a vector graphics API

� Graphics models. Summary and Comparison

� OpenVG Key features, Eco-System and Market

� OpenVG Pipeline Design

� OpenVG Implementations

� OpenVG1.1

▐ Introduction to IWAYAG, a native OpenVG accelerator

� IWAYAG Features

� Implementation Examples of IWAYAG

� IWAYAG Performance

� IWAYAG Eco-System

� Loadmap

� Demonstration at Khronos booth

© NEC Corporation 2009Page 3

Overview of the OpenVG, a vector graphics API

© NEC Corporation 2009Page 4

Summary of typical graphics models

Text Drawing Shape Drawing Image DrawingPresentation Quality

Bitmap font Lines, Circles

Bitmaps

2D Graphics

3D GraphicsConvert Bezier

curve to polygons

Polygons withAnti-Alias

TexturesVector font(Outline font)

RealisticExpression

RealisticExpression

Vector Graphics

Direct Bezier

Curve drawing

Bezier Curves with Anti-Alias

PerspectiveTransformation

Animation-typeExpression

Semi-3DExpression

Vector font(Outline font)

..

...

© NEC Corporation 2009Page 5

Cost-Performance comparison between models

Cost to realize rich graphics by each approach

Required CPUGraphics HW Cost Suitability

2D× High Performance

Expensive, High Power◎ Small footprint

Low Power × Poor

3D × Large footprintHigh Power

○ Over spec ?

Approach

Vector○ Low Performance,

Low cost, Low power○ Medium footprint

Low Power◎ Good overall

balance

Cost (gate size, power consumption)~500Kgate 1Mgate

Function and Performance of Graphics hardware

2D Graphics2D

Vector Graphics

VG

3D Graphics3D

Primitive

Animation

Realistic

■ Output Quality

+ Heavy CPU Processing

○ Low Performance,Low cost, Low power

© NEC Corporation 2009Page 6

OpenVG – Accelerated Vector Graphics

▐ OpenVG is the industry’s first native Bezier rendering API

� Enables a new class of hardware acceleration – Bezier primitives – not

polygons

• Smaller command/data list and no tesselation required, allowing such devices that have limited CPU/memory resources to enjoy rich graphics

▐ Primarily used to accelerate higher-level engines

such as Flash and SVG

� OpenVG is an OpenGL-style, low-level API –

but many artists prefer tools over

programming

▐ Support set of primitives to realize high quality graphics

� Gradation (A)

� Alpha Blending (B)

� Projective Transformation (C)

� Vector font (D)

� Anti-Alias (E)

Applications

2D Hardware Acceleration

SVG, Flash, Font Package etc..

© NEC Corporation 2009Page 7

OpenVG Eco Systems

Flash

Web browser

AnimationRich UIRich

ContentsDocument

Viewer

XAML WebkitCairo SVG Font

Linux WindowsCE ITRON SymbianAndroid

OpenVG

Applications

Middle Ware

OS

▐ FlashLite 3.1.5 is the most popular Open-VG app (middle ware) as well as vector fonts

▐ 2D graphics library like Cario can be ported on OpenVG, allowingWebKit to be accelerated

▐ XAML player can also take advantage of OpenVG

© NEC Corporation 2009Page 8

RichUI is becoming a MUST in Embedded Devices. OpenVG is wide-

spreading to these devices

Apple introduced iPhone featuring touch screen based rich user interface to mobile phone

User interface was recognizedas one of key success factors

Many mobile phone venders followed apple,introducing the touch screen based UI

Rich UI market is extending to car navigation devices, digital cameras, TVs, etc

OpenVG is getting widely accepted as a graphics API for the

embedded devices

Digital TVMobile Phone Digital CameraPrinter

© NEC Corporation 2009Page 9

OpenVG pipeline design

▐ Like other Khronos APIs, OpenVG has been designed to enable software to effectively use silicon

▐ Pipeline has also been architected as “silicon-ready” design

© NEC Corporation 2009Page 10

OpenVG Implementations

▐ There are a wide range of OpenVG implementations possible

� Depending on the price point and target device architecture

▐ 3D GPUs can accelerate both OpenVG and OpenGL ES APIs

� Good approach for those devices requiring true 3D and VG

▐ Dedicated VG accelerator allows higher performance rendering in lower cost

than 3D GPUs

� Good approach for those devices that do NOT require true 3D

100% Software2D Graphics

(2D blit and Image)

Dedicated VectorGraphics engines(Fully accelerate )

3D GPUs(Accelerate Bezier

Renderer usingshader language )

Very low cost Low cost High performanceBest C/P for VG only

High performancefor both of VG and 3D

© NEC Corporation 2009Page 11

OpenVG 1.1

▐ OpenVG 1.1 specification publicly released at SIGGRAPH Asia 2008� Together with open source sample implementation and full Conformance Test Suite

▐ OpenVG 1.1 Conformance Test� Comprehensive set of tests (~900 test cases)

� Conformant implementation has to pass all of them

▐ Major features� Adobe Flash 7 / Flash Lite 3 support

� Glyph API for hardware accelerated text rendering

� Multi-sampled anti-aliasing

© NEC Corporation 2009Page 12

Introduction to IWAYAG, a native OpenVG accelerator

© NEC Corporation 2009Page 13

History of Graphics products at NEC System Technologies

EXB

TADARET

CCE ZBC

GPC JAB

COA2

CDCNGPC

FIREROE3A

WBA

COA3

PEC

GA400-3

APEC

PEAR

GRAPE

WILL WAVE

3D Graphics Products3D Graphics Products

TE1 TE2 TE3 TE3VTE3A TE4TE4Pro TE5

TTL/PAL TTL/PAL

AGSDRCSPOCK2 SSK

SSP2

ICE USK3

ECA3 EMA

ELI

KOUMEI2 TPL

LIGHT

WIN

VEC

Standard GraphicsStandard Graphics

Fast2D GraphicsFast2D Graphics

Standard 2D GraphicsStandard 2D Graphics

Lowend 2D GraphicsLowend 2D Graphics

Video acceleratorVideo accelerator

LCD supportLCD support

NotebookNotebook2D Graphics Products2D Graphics Products

GCONMDGC

GA88 Series

:LSI

:Board products

Graphics IP ProductsGraphics IP Products

1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010

GCONRCON GCON2

© NEC Corporation 2009Page 14

What is IWAYAG?

IWAYAG design and features

-Native OpenVG accelerator

-Architecture of IWAYAG is based on the OpenVG

pipeline stage design

-Path generation to Blending/Anti-alias stages are

implemented by hardware

-No CPU tessellation. Fill is done by hardware

using outline buffer

-Hardware bezeir rasterizer

-Extensive cache control mechanism for fast filling

-Support fast FSAA

IWAYAG is a graphics accelerator dedicated for vector graphics, consisting of

-Hardware IP core to be incorporated to the customer’s SoC

-OpenVG driver

Path generation to Blending/Anti-alias stages are implemented by hardware

© NEC Corporation 2009Page 15

Why IWAYAG ?

Requirements from the consumer devices market

-Flash support

-Many consumer device manufacturers plan to incorporate richer UI

-Flash support is a MUST to efficiently develop the rich UI

-Smooth playback of Flash contents while using low-end CPUs

-Cost and/or battery power limits CPU selection

-100Mhz CPU without FPU is common for Digital cameras.

-Long battery life

-Flash acceleration by 3D engine consumes too much battery powers

Native OpenVG graphics accelerators best meet the requirements

-Good Flash performance while using low-end CPUs

-Much lower power and die size than 3D engine

© NEC Corporation 2009Page 16

PPC440@300Mhz

Linux

FlashLite(Software Rendering)

Flash Contents

PPC440

Linux

FlashLite 3.1.5(OpenVG version)

Flash Contents

IWAYAG HW

OpenVG 1.1Driver

Software version Hardware version

-CPU is PowerPC440 @ 300MHz-Though IWAYAG has been designed to run at 200MHz clock, this implementation drives IWAYAG at 50MHz due to the limitation of the board

PowerPC 440@300MHz

CrossbarSwitch

MemoryController

128bit200MHz

GA88IWAYAG

@50MHz

128bit100MHz

DisplayController

128bit100MHz

Virtex5-FX130T FPGA

FPU@100MHz

DDR2 400DIMM

RS232C

RS232C

Flash I/FCompact

Flash

Xilinx ML510 FPGA Evaluation Board

DisplayMonitor

ControlConsole

Implementation Example of IWAYAG

(1) Xilinx ML510 (PowerPC440 based FPGA board)

Performance data demonstrated in the following pages were measured by executing Flash contents both in software renderer (disabling IWAYAG) and hardware renderer (enabling IWAYAG) on the same ML510 board

© NEC Corporation 2009Page 17

Performance Improvements on Flash Contents by IWAYAG (1)

Average execution time per frame (ms)

Average execution time per frame (ms)

Average execution time per frame (ms)

(1)002_motionTweenLine.swf

(2)003_motionTweenGradient.swf

(3)004_motionTweenBMP.swf

FlashPlayer IWAYAG Driver IWAYAG Hardware

Software

IWAYAG 50MHz

IWAYAG 200MHz

(Estimated)

Acceleration ratio = 3.0

fast

Acceleration Ratio = 3.0-7.3

Acceleration Ratio = 3.5-8.9

Acceleration Ratio = 3.8-11.5

fast

fast

Acceleration ratio = 3.8

Acceleration ratio = 3.5

Software

IWAYAG 50MHz

IWAYAG 200MHz(Estimated)

Software

IWAYAG 50MHz

IWAYAG 200MHz(Estimated)

Update

© NEC Corporation 2009Page 18

Performance Improvements on Flash Contents by IWAYAG (1)

Average execution time per frame (ms)

Average execution time per frame (ms)

Average execution time per frame (ms)

(4)005_motionTweenText.swf

(5)006_motionTweenMC.swf

(6)007_shapeTween.swf

fast

fast

fast

Acceleration Ratio = 2.9-7.8

Acceleration Ratio = 2.4-6.7

Acceleration Ratio = 3.4-9.1

Acceleration ratio = 2.9

Acceleration ratio = 2.4

Acceleration ratio = 3.4

Software

IWAYAG 50MHz

IWAYAG 200MHz(Estimated)

Software

IWAYAG 50MHz

IWAYAG 200MHz

(Estimated)

Software

IWAYAG 50MHz

IWAYAG 200MHz(Estimated)

FlashPlayer IWAYAG Driver IWAYAG Hardware

Update

© NEC Corporation 2009Page 19

Performance Improvements and CPU Usage analysis

43fps 39%

CPU

Video

Network

Graphics

I/Os

Application

- CMD/DATA Setup

CPU

Video

Network

I/Os

Application

IWAYAG

Vector Graphics Engine

Rasterizer

(w/cache control)

Clipping

Masking

Paint

Image fill

(w/image cache)

Alpha blending

Coordinate

transformation

Path

Generation

Bus controller

Software Rendering

CPU+IWAYAG

Measured by Adobe FlashLiteWith Motion_Tween_BMP.swf

Performance CPU Usage

X 3.3 △55%

3.3 times betterPerformance by

55% CPU Usage

3.3 times betterPerformance by

55% CPU Usage

94%13fps- Path generation

- CoordinatesTransformation- Rasterize

- Paint- Image

- Bledning

Graphics

- CMD/DATA Setup

Graphics processing

Offloaded to IWAYAG

© NEC Corporation 2009Page 20

0 50 100 150 200

0 50 100 150 200

Performance versus CPU clock

Average execution time per frame (ms) fast

CPU 300MHz CPU 200MHz CPU 125MHz

Average execution time per frame (ms) fast

Software

IWAYAG 50MHz

CPU 125MHz

CPU 200MHz

CPU 300MHz

CPU 125MHz

CPU 200MHz

CPU 300MHz

004_motionTweenBMP.swf Software renderer performs in direct proportion to CPU

clock

Hardware renderer is almost independent to CPU clock

Enables high FPS rate with Low power CPU devices

© NEC Corporation 2009Page 21

FPGA

SiP

SoC

Device Cost

Volume

Development CostDevice CostTechnology

HighLowSoC

FairFairSiP

LowHighFPGA

Implementation Example of IWAYAG

(2) NEC EP-3 SiP (System in a Package)

IWAYAG in EP-3 is a solution for the customers to develop OpenVG-ready custom

micro controllers in much lower development cost and time than SOC.

IWAYAG in EP-3 is a solution for the customers to develop OpenVG-ready custom

micro controllers in much lower development cost and time than SOC.

The EP-3 from NEC Electronics is a latest SiP (System in a Package) device, which features a 32-bit CPU and a user logic (gate array) in single package.

With EP-3, the customer can create custom microcomputers mounted with a CPU coreand custom logic, by designing and developing only a Gate Array. Therefore the development cost and time can be drastically reduced compared with SoC design.

IWAYAG in EP-3 allows the customers to develop OpenVG-ready custom micro controllers in low development cost and time. IWAYAG in EP-3 is ideal solution for those brown goods, industrial devices and OA devices that the production volume is relatively small and life cycle is relatively short.

The EP-3 from NEC Electronics is a latest SiP (System in a Package) device, which features a 32-bit CPU and a user logic (gate array) in single package.

With EP-3, the customer can create custom microcomputers mounted with a CPU coreand custom logic, by designing and developing only a Gate Array. Therefore the development cost and time can be drastically reduced compared with SoC design.

IWAYAG in EP-3 allows the customers to develop OpenVG-ready custom micro controllers in low development cost and time. IWAYAG in EP-3 is ideal solution for those brown goods, industrial devices and OA devices that the production volume is relatively small and life cycle is relatively short.

© NEC Corporation 2009Page 22

V850E2M(266MHz)

InternalMEMC

ExternalMEMC

Peripheral

IWAYAG

Bridge

SDRAM32MB

SRAM

4MB

Flash8MB

RAM

DisplayController

To LCD

FPGA

EP-3 Evaluation Board

V850EP3

Implementation Example of IWAYAG

(2) NEC EP-3 SiP (System in a Package)

In this prototype implementation, EP-3 evaluation board which consists of

CPU and FPGA is used. IWAYAG is installed in the FPGA.

In this prototype implementation, EP-3 evaluation board which consists of

CPU and FPGA is used. IWAYAG is installed in the FPGA.

Block Diagram

V850 GateArray

© NEC Corporation 2009Page 23

IWAYAG Eco-System

Outline font, drivers

Middleware

IWAYAG Graphics IP

Hardware Driver

FlashLite Player

HTML renderer

(Planning)

Other Middleware Products

Browser(Planning)

Application Design Services

Board Design/Manufacturing Services

IWAYAG Porting/Customization Services

Other IPs

Gesture UI Engine(Planning)

XAMLPlayer

(Planning)

2D graphics library

(Planning)

The user interface design is becoming a key success factor in many devices. We are supporting these demands extending the eco-system of IWAYAG to meet

various needs from the customers.

- FlashLite and Outline font are already available- Planning to support XAML player, 2D graphics library like Cairo and HTML

renderer like Webkit- Gesture UI engine is under planning as a companion IP for the next generation UI

The user interface design is becoming a key success factor in many devices. We are supporting these demands extending the eco-system of IWAYAG to meet

various needs from the customers.

- FlashLite and Outline font are already available- Planning to support XAML player, 2D graphics library like Cairo and HTML

renderer like Webkit

- Gesture UI engine is under planning as a companion IP for the next generation UI

© NEC Corporation 2009Page 24

Loadmap

2007

2008

OpenVG1.0

OpenVG1.1

Extends the rich UI by OpenVG to wider range of the devices

2009

Lowend products- Smaller gate size- Lower power consumption- Lower IP cost Highend products

- Improved OpenVG acceleration- Support future versions of OpenVG - 3D support (OpenVG+3D hybrid)- Support variety of display devices- Easier customization

Coming Soon!

© NEC Corporation 2009Page 25

Demonstration at Khronos booth

Booth: C12-⑤

NEC

LCDLCDLCDLCD

ML510ML510ML510ML510 demo boarddemo boarddemo boarddemo board

PCPCPCPC

VirtualVirtualVirtualVirtualControlControlControlControlAreaAreaAreaAreaDemonstration EnvironmentDemonstration EnvironmentDemonstration EnvironmentDemonstration Environment

All product names are trademarks or registered trademarks of their respective holders


Recommended