Integral Image Buffer Segmentation for Aligned SIMD Reads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for dense Haar-like feature calculations in advanced driver assistance systems (ADAS) face inefficiencies due to non-aligned data reads, which do not utilize the maximum capability of processors like the C6000 Digital Signal Processor (DSP), leading to performance bottlenecks, especially for rotated Haar-like features.

Innovation Solution

The method involves determining if base addresses for data elements in an integral image buffer are aligned for SIMD operations and loading offset data elements from an offset integral buffer when they are not, ensuring that data elements are aligned for efficient doubleword or quadword reads, thereby maximizing processor capability and reducing memory overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If data elements are read from non-aligned memory addresses, then the integral image buffer can store Haar-like features of any size, but the processor cannot utilize maximum capability leading to performance bottlenecks

Engineering Contradiction:
ImproveHaar-like feature size flexibilityVSAvoidprocessor utilization efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The integral image buffer is segmented into multiple copies (first copy, second copy, third copy) where each copy stores data elements at different offset positions. This segmentation allows the system to select the appropriate copy based on alignment requirements, enabling both flexible feature sizes and optimal processor utilization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Multiple copies of the integral image buffer are created with data elements stored at different offset positions (e.g., even offsets in first copy, odd offsets in second copy). This copying strategy allows aligned reads by selecting the appropriate copy, resolving the contradiction between flexibility and efficiency.

Inventive Principle:
Principle #26Copying

2Productivity

If multiple copies of integral image buffer are maintained, then aligned reads can be performed for optimal processor utilization, but memory overhead increases

Engineering Contradiction:
Improveprocessor capability utilizationVSAvoidmemory buffer size
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

Different regions (copies) of the buffer serve different purposes: one copy handles even-offset alignments while another handles odd-offset alignments. This local specialization allows efficient aligned reads without requiring the entire buffer to be duplicated, reducing overall memory overhead.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The buffer copies are pre-configured with data elements at specific offset positions before processing begins. This preliminary organization allows the processor to immediately perform aligned reads without additional memory operations, optimizing productivity while managing memory usage through upfront preparation.

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If non-aligned data reads are performed, then implementation is simpler without multiple buffer copies, but CPU cycle computations increase by half

Engineering Contradiction:
Improvebuffer management complexityVSAvoidCPU cycle computation time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The system changes the parameter of data element offset (from fixed to variable based on copy selection) to enable aligned reads. By selecting the appropriate buffer copy based on the offset parameter, the system achieves both simplicity and performance, reducing CPU cycle computations while maintaining flexible feature size support.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10949694B2Method and apparatus for determining summation of pixel characteristics for rectangular region of digital image avoiding non-aligned loads using multiple copies of input data
Publication Date: 2021.03.16 TEXAS INSTRUMENTS INC
  • US10949694B2 patent drawing
  • US10949694B2 patent drawing
  • US10949694B2 patent drawing

AI summary

A method of determining a summation of pixel characteristics for a rectangular region of a digital image includes determining if a base address for a data element in an integral image buffer is aligned for an SIMD operation by a processor embedded in an electronic assembly configured to perform Haar-like feature calculations. The data element represents a corner of the rectangular region of an integral image. The integral image is a representation of the digital image. The integral image is formed by data elements stored in the integral image buffer. The data element is loaded from the integral image buffer to the processor when the base address is aligned for the SIMD operation. An offset data element of an offset integral image is loaded from an offset integral buffer when the base address is non-aligned for the SIMD operation. The offset data element represents the corner of the rectangular region.