Image Encoder Sub-Block Line Segmentation for Bandwidth Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional image encoding/decoding algorithms increase bandwidth and latency due to the need to read entire block lines, even when only a part of the data is required, as they lack efficient control over code amount distribution across block lines.

Innovation Solution

An image encoder divides original image data into block lines and sub-block lines, encoding each sub-block line independently and determining write addresses based on the number of sub-block lines, original image data size, and image coding rate, allowing for individual storage and retrieval of coded sub-block lines, reducing bandwidth and latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If the block line is divided into smaller blocks to control code amount, then the coding rate is enhanced, but the bandwidth and latency are increased due to reading the whole block line from memory

Engineering Contradiction:
Improvecoding rateVSAvoidbandwidth
Core Design Contradiction:
Manufacturing precisionVSLoss of energy

Solution Approach 1:

The patent divides a block line into multiple sub-block lines, where each sub-block line can be independently encoded and stored. This segmentation allows the decoder to read only the specific sub-block line needed, rather than reading the entire block line, thereby reducing memory bandwidth consumption and latency while maintaining the coding rate benefits of fine-grained block control

Inventive Principle:
Principle #1Segmentation

2Manufacturing precision

If the block line is divided into smaller blocks to control code amount, then the coding rate is enhanced, but the latency is increased due to reading the whole block line from memory

Engineering Contradiction:
Improvecoding rateVSAvoidlatency
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent divides a block line into multiple sub-block lines, where each sub-block line can be independently encoded and stored. This segmentation allows the decoder to read only the specific sub-block line needed, rather than reading the entire block line, thereby reducing memory bandwidth consumption and latency while maintaining the coding rate benefits of fine-grained block control

Inventive Principle:
Principle #1Segmentation

3Productivity

If only a part of the block line is decoded, then the decoding efficiency is improved, but it is necessary to read the whole block line from memory

Engineering Contradiction:
Improvedecoding efficiencyVSAvoidbandwidth
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent divides a block line into multiple sub-block lines, where each sub-block line can be independently encoded and stored. This segmentation allows the decoder to read only the specific sub-block line needed, rather than reading the entire block line, thereby reducing memory bandwidth consumption and latency while maintaining the coding rate benefits of fine-grained block control

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8873876B2Image encoder and image processing system
Publication Date: 2014.10.28 KK TOSHIBA
  • US8873876B2 patent drawing
  • US8873876B2 patent drawing
  • US8873876B2 patent drawing

AI summary

According to one embodiment, an image encoder configured to write coded image data in a memory includes an encoding module, a write address determining module, and a memory controller. The encoding module divides original image data including a plurality of pixels into a plurality of block lines, divides each block line into a plurality of sub-block lines, encodes the original image data in each sub-block line, and generates a plurality of coded sub-block lines. The write address determining module determines a write address of the memory in each coded sub-block line based on a number of the sub-block lines, an original image data size of the original image data, and image coding rate. The memory controller writes the coded sub-block line in the write address corresponding to the coded sub-block line.