BCD-to-Binary Conversion Using 6:2 Counter Trees

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for converting decimal to binary, such as using look-up tables, are inefficient and slow due to the need for adding components across different digit positions, which impacts the speed of conversion in computer systems.

Innovation Solution

A method and system utilizing a 6:2 counter tree to convert three decimal BCD digits per cycle, reducing partial products to a redundant sum and carry, and iteratively multiplying by 1000 to convert all digits, eliminating the need for look-up tables and utilizing minimal extra circuitry.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If look-up tables are used to perform decimal to binary conversion, then conversion can be performed using simple addition of digit components, but the conversion speed is reduced

Engineering Contradiction:
Improveconversion implementation simplicityVSAvoidconversion speed
Core Design Contradiction:
Ease of manufactureVSSpeed

Solution Approach 1:

The patent segments the BCD number into groups of three digits and processes each group independently through parallel 6:2 counter trees. This segmentation enables simultaneous processing of multiple digit groups, increasing conversion speed while maintaining the systematic approach of handling individual digit components

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from processing one digit at a time to processing three digits simultaneously by introducing a dimensional change in the conversion architecture. The 6:2 counter tree structure processes three BCD digits in parallel, effectively adding a dimensional aspect to the conversion process that大幅提升s throughput

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If multiple digits are converted per cycle to improve speed, then conversion time is reduced, but the device complexity increases

Engineering Contradiction:
Improveconversion throughputVSAvoidcircuit complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The 6:2 counter tree structure serves multiple functions: it simultaneously performs partial product generation, reduction of six products to two, and implicit weighting for the three-digit BCD group. This multi-functionality enables high throughput without proportionally increasing device complexity, as a single structural element accomplishes what would otherwise require multiple separate components

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent merges the functions of multiple adders and multipliers into a unified 6:2 counter tree structure. By combining these operations into a single integrated circuit element, the patent achieves efficient processing of three BCD digits per cycle while minimizing the overall circuit complexity that would result from using separate components for each operation

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS7660838B2System and method for performing decimal to binary conversion
Publication Date: 2010.02.09 X CORP
  • US7660838B2 patent drawing
  • US7660838B2 patent drawing
  • US7660838B2 patent drawing

AI summary

A method for converting from decimal to binary including receiving a binary coded decimal (BCD) number made up of one or more sets of three digits. A running sum and a running carry are set to zero. A process is performed for each set of three digits in the BCD number in order from the set of three digits containing the three most significant digits of the BCD number to the digits containing the three least significant digits of the BCD number. The process includes: creating six partial products based on the set of three digits, the running sum and the running carry; combining the six partial products into two partial products; and storing the two partial products in the running sum and the running carry. The running sum and the running carry from each set of three digits are combined into a final binary result.