FPGA, CPLD, and ASIC solutions from Altera
  • Download Center
  • Literature
Sign in/register
myAltera Account
Welcome
  •   myAltera
  •   Logout
  • Products
    • Devices
    • Design Software
    • Intellectual Property
    • Development Kits/Cables
    • Design & Support Services
    • Literature
  • End Markets
    • Automotive
    • Broadcast
    • Computer & Storage
    • Consumer
    • Industrial
    • Medical
    • Military
    • Test & Measurement
    • Wireless
    • Wireline
  • Technology
    • DSP
    • External Memory
    • Embedded Processing
    • Transceivers
    • Parallel I/O
    • Signal Integrity
    • System Integration
  • Training
    • Training Courses
    • University Program
    • Webcasts & Videos
    • Demonstrations
    • Events Calendar
  • Support
    • Design & Support Resources
    • Knowledge Database
    • Devices
    • Design Software
    • Intellectual Property
    • Development Kits/Cables
    • Design Examples
    • Downloads
    • User Communities/Forums
    • mySupport
  • About Altera
    • About Us
    • Environmental
    • Customer Successes
    • Partners
    • Newsroom
    • Investor Relations
    • Jobs
    • Contact Us
  • Buy Online
    • Devices
    • Design Software
    • Development & Education Kits
    • Cables & Programming Hardware
    • Intellectual Property
  • Entire Site
  • Part Number
  • Knowledge Database
  • Support & Technical Docs
  • Forums & Wiki
Username:  
Password:  
 
Forgot my username or password
Don't have myAltera account? Register Now.
Enter your email address:

JPEG2000 Decoder

Home > Products > Intellectual Property > DSP > Video & Image Processing > JPEG2000 Decoder

from Barco Silex

Download Free Evaluation



AMPP Approved
OpenCore Support
Get More With Integration - Solution

Features

  • Compliance with ISO/IEC 15444-1 Information Technology: JPEG2000 Image Coding System
  • Support for lossless and lossy decompressions
  • Parametric number of parallel entropy chains for improved compressed data throughput
  • Dynamically configurable decoder parameters, including:
    • Wavelet filter type: 5/3 or 9/7
    • Number of wavelet recompositions from zero to five levels
    • Tile size of up to 128 x 128 pixels and tile offset
    • Code block size up to 32 x 32 samples
    • Pixel depth of up to 12 bits in lossless mode (10 bits in lossy) pixel sign
    • Entropy decoder with full support of JPEG2000 options
    • One quantization factor per subband under mantissa/exponent format
  • High-speed pixel interface allowing the transfer of one pixel per clock cycle on a whole tile component
  • Easy interface-to-pixel output
  • Compressed data input through simple synchronous protocol
  • Decoder parameterization and control via synchronous host interface to external CPU
  • Command and control interface for driving the decoder with limited or no CPU intervention
  • Independent pixel and compressed interface clock domains for easy integration
  • Fully synchronous design
  • On-chip tile buffer for increased efficiency and reduced pinout
  • Throughputs ranging from sub CIF 25 Hz to SDTV to HDTV 1280 x 720 50 Hz

Block Diagram

Figure 1 shows a block diagram of the megafunction.

Figure 1. Block Diagram

Figure 1 Decoder
View Full Size

Description

Figure 1 illustrates a simplified block diagram of the BA111JPEG2000D intellectual property (IP) showing the internal modules and the interfaces. The BA111JPEG2000D IP is a tile-level decoder, processing each tile component independently from its neighbors. Tile components are rectangular areas of the source image. The size of the tile components depends on the partitioning of a given component plane; however, the size of the tile component processed by the IP core is dynamically configurable, with a limit of 128 x 128 pixels.

The JPEG2000 decoder's process flow consists of these three steps:

  1. The IP core receives the compressed data interface. Each code stream represents code blocks of a given tile component of the image to reconstruct. The compressed data interface can then feature several channels in parallel.
  2. The IP core generates reconstructed pixels of the tile component at its pixel interface (with a throughput of one pixel per clock cycle) without any interruption throughout the entire tile component.
  3. Finally, if necessary, the pixel interface can be stalled by the peripheral device connected to it.

The decoder has a simple generic interface to an external CPU to configure the various parameters and to monitor the status of the decoding process.

Modeler and Arithmetic Decoder

The modeler gives the sequencing of the entropy decoding. It reconstructs the code block bit-plane by bit-plane, and places relevant bits in a zigzag pattern in each one. It also computes the context information that the arithmetic decoder needs. The contexts and input code stream that are read at the compressed interface are then processed by the arithmetic decoder. The decoder then generates the decoded bits that are placed in the correct location by the modeler.

Ancillary information, read at the compressed interface, specifies code-block coordinates and allows the IP core to locate the code blocks in the current tile component. This also allows several entropy channels to work in parallel.

The BA111JPEG2000D core features a configurable number of entropy decoders placed in parallel to sustain high decoding rates. Each entropy chain then processes a code block independently from neighbor chains.

Tile Composer

This unit reconstructs quantized sub-bands based on the code blocks coming from the entropy decoding channels. The tile composer module arbitrates between the available chains, gathering the various decoded code blocks. The tile composer reads the code blocks from local code block buffers.

Inverse Quantizer

The quantized sub-bands available from the tile composer are further processed by the inverse quantizer that applies a programmable inverse quantization step. A different inverse quantization step can be programmed for each sub-band, weighting lower-frequency sub-bands differently than higher-frequency ones. The inverse quantizer stores the resultant sub-bands into an on-chip tile buffer. The inverse quantizer can be bypassed for lossless mode.

2D Inverse Discrete Wavelet Transform

The last module of the IP core is the inverse discrete wavelet transform (IDWT) engine. This module processes tiles of pixels up to 128 x 128 pixels. The module performs bidimensional wavelet recomposition on the sub-bands located in the on-chip tile buffer, with up to five programmable recomposition levels. The wavelet transform can be programmed to be lossy, lossless, or bypassed. The IDWT module generates reconstructed pixels of any size up to 12 bits (10 for lossy) at the pixel interface. It performs level shifting as required by the JPEG2000 standard.

Host Interface Module

This module allows the IP core to interface with a CPU. It contains configuration registers for the various modules and gives status information about the decoding progress. An active-low interrupt line signals selectable events during the decompression process. The host interface module also features a separate command and control interface that allows fast control of the IP core with minimal or no CPU intervention. Together, with the simplicity of the CPU interface, the command and control interface allows you to build a system where the BA111JPEG2000D IP core is not directly connected to a host CPU and is driven by a small amount of logic. This increases the integration flexibility of the IP core.

Device Utilization and Performance

Table 1 lists the typical device utilization results for the megafunction.

Table 1. Typical Device Utilization
Target Device Speed Grade Utilization Performance
(fMAX)
Parameter Setting
Logic Cells Memory I/O Pins
EP1S30FC780C5 -5 24,950 2 262 97 MHz 8 channels
HC1S40F780 HardCopy®
ASIC
- - - 138 MHz 8 channels
EP1S20FC484C5

-5

8,372

2

122

111 MHz

1 channel

HC1S40F780 HardCopy
ASIC
- - - 160 MHz 1 channel

Deliverables

  • Encrypted netlist with license file
  • Data sheet
  • Testbench

Related Links

  • Increase Performance in Video & Image Processing Applications With FPGA Integration white paper (PDF)

Contact Information

For additional information, contact Barco Silex at:

Barco Silex
Scientific Park
Rue du Bosquet 7
B-1348 Louvain-la-Neuve
Belgium

Tel: +32 10 486 403
Fax: +32 10 454 636

Email: barco-silex@barco.com
URL: www.barco-silex.com

Rate This Page


  • IP & Reference Designs
    • All Intellectual Property
    • All Reference Designs
    • Bridges & Adapters
      • Memory Mapped
      • Streaming
    • DSP
      • Filters & Transforms
      • Error Detection/Correction
      • Modulation & Demodulation
      • Video & Image Processing
    • Embedded Processors
      • Nios II
        • Processor Cores
          • Fast CPU
          • Economy CPU
          • Standard CPU
        • Benefits
          • Low Cost
          • High Performance
          • Long Life Cycle
          • Flexibility
        • Software Tools
          • Nios II IDE
          • Nios II C2H Compiler
          • Software
        • Development Kits
        • End Markets
        • Customer Successes
        • Literature
      • 32/16-Bit Microprocessors
      • 8/4-Bit Microprocessors
    • Interface Protocols
      • Communications
      • Ethernet
      • High Speed
      • PCI
      • Serial
      • Audio & Video
    • Memory Controllers
      • DMA
      • Flash
      • On-Chip
      • SDRAM
      • SRAM
    • Peripherals
      • Debug & Performance
      • Display
      • Microcontroller Peripherals
      • Multiprocessor Coord.
  • About IP
    • Designing with IP
      • IP Base Suite
    • Evaluate and Download IP
    • IP Certifications
    • System Design
    • Request IP
  • IP Partners
    • About AMPP Program
    • List of IP Partners
    Please give us feedback
    Products | End Markets | Technology | Training | Support | About Altera | Buy Online
    Jobs | Investor Relations | Contact Us | Site Map | Privacy | Legal Notice
    Copyright © 1995-2010 Altera Corporation. All Rights Reserved.
    Altera Forum
    Altera
    Forum
    Twitter
    Twitter
    RSS
    RSS
    Facebook
    Facebook
    Flickr
    Flickr
    YouTube
    YouTube
    Email Updates
    Email
    Updates