Dedicated Hardware Emulating Nexthop Instructions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network devices face performance optimization challenges due to complex microcode instructions and resource access complexities during routing operations, which affect the efficiency of packet processing and routing lookups.

Innovation Solution

The implementation of dedicated hardware components to emulate nexthop instructions, manage address control information, and perform bit field comparisons, reducing the complexity of microcode instructions and optimizing resource access during routing operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If microcode instructions are used to implement nexthop operations, then flexibility and programmability are improved, but processing speed and execution efficiency deteriorate

Engineering Contradiction:
ImproveprogrammabilityVSAvoidprocessing speed
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent introduces a dedicated hardware module as an intermediary between the microcode instruction and the memory system. This module translates high-level nexthop instructions into optimized low-level operations, achieving both flexibility from the microcode interface and speed from hardware-level execution. The intermediary handles address calculation, memory access control, and data retrieval operations that would otherwise require multiple microcode steps.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If complex microcode instructions are used to handle routing operations, then functionality and control capability are improved, but instruction complexity and processing overhead worsen

Engineering Contradiction:
Improvecontrol capabilityVSAvoidinstruction complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts the complex address control logic from the general-purpose microcode instruction stream and places it into a dedicated hardware module. This separation removes the burden of complex address calculation and memory management from the microcode, allowing simpler, more readable instructions while maintaining full control capability. The hardware module handles the extraction and interpretation of address control fields, freeing the microcode from implementation details.

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If general-purpose memory access is used for routing lookups, then resource sharing and flexibility are improved, but access speed and resource contention worsen

Engineering Contradiction:
Improveresource sharingVSAvoidaccess speed
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent segments the memory access function into two parts: a dedicated hardware module for address generation and control, and the general-purpose memory system for data storage. This segmentation allows the hardware module to prepare and control memory access operations in parallel with other processing activities, reducing contention while maintaining resource sharing. The hardware module acts as a specialized interface that can manage memory access without blocking other system functions.

Inventive Principle:
Principle #1Segmentation

4Adaptability or versatility

If more microcode instructions are used to perform routing operations, then functionality and operation coverage are improved, but execution time and processing delay worsen

Engineering Contradiction:
Improveoperation coverageVSAvoidexecution time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent replaces the mechanical execution of multiple microcode instructions with a hardware-based parallel processing system. The dedicated hardware module can perform address calculation, memory address generation, and data retrieval operations simultaneously through parallel circuit operations, rather than sequentially through multiple microcode steps. This substitution maintains full operational coverage while dramatically reducing execution time by eliminating the sequential nature of microcode interpretation.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS8069023B1Hardware support for instruction set emulation
Publication Date: 2011.11.29 JUNIPER NETWORKS INC
  • US8069023B1 patent drawing
  • US8069023B1 patent drawing
  • US8069023B1 patent drawing

AI summary

A method for emulating a nexthop instruction in microcode with the assistance of dedicated hardware to extract read and write addressing from the nexthop instruction instead of performing this operation in microcode. A method for emulating a nexthop instruction in microcode with the assistance of dedicated hardware to compare a nexthop read address to a special value and to indicate whether the nexthop read address matches the special value, instead of performing this operation in microcode. A method for determining a network address by performing a single extraction of bit fields of a tree instruction to allow multiple tree search processes to be performed.