Self-Timed Conditional Logic Circuits With Pipelined Select Routing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Designing reliable clock networks for large programmable integrated circuits (ICs) with multiple clock domains is resource-intensive and challenging due to timing requirements, skew, jitter, and variability in process, voltage, and temperature, which complicates the implementation of efficient and flexible logic blocks for compute-intensive applications.

Innovation Solution

The implementation of self-timed circuits with pipelined routing paths and programmable logic blocks allows for conditional statements and optimized logic operations, enabling flexible and efficient logic block design by decoupling the number of pipeline stages from the shared logic circuit stages, thus improving the regularity and efficiency of programmable ICs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional clock networks are used in large programmable ICs, then timing control can be achieved, but design complexity and resource consumption increase significantly

Engineering Contradiction:
Improvetiming controlVSAvoidclock network design
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The circuit uses self-timed logic where the logic blocks themselves generate and control their own timing signals through enable inputs and internal state machines, eliminating the need for external clock networks to provide timing control. Each logic block autonomously manages its own operation timing based on data arrival and completion signals.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent extracts the timing control function from the traditional clock network and relocates it to the individual logic blocks. By removing the global clock distribution network and placing timing control within each logic block, the design complexity of the clock network is significantly reduced while maintaining reliable timing control.

Inventive Principle:
Principle #2Taking out (Extraction)

2Device complexity

If self-timed circuits are used, then design complexity is reduced, but timing synchronization between logic blocks becomes challenging

Engineering Contradiction:
Improveclock network designVSAvoidtiming synchronization
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The circuit implements feedback mechanisms where completion signals from logic blocks feed back to the interconnect structure and subsequent logic blocks. This feedback allows automatic timing synchronization without external clock control, as each block waits for confirmation that previous blocks have completed their operations before proceeding.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The interconnect structure is designed to preliminarily route and buffer signals between logic blocks, ensuring that data is ready and synchronized before reaching the next logic block. This preliminary preparation of signals maintains timing synchronization without requiring complex external timing control.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If multiple clock domains are implemented, then functional flexibility is improved, but skew and jitter issues worsen

Engineering Contradiction:
Improveclock domain configurationVSAvoidsignal integrity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

Each logic block independently generates its own timing enable signals based on its operational needs and data arrival times, rather than being driven by external clock domains. This self-service approach eliminates skew and jitter problems associated with multiple clock domains while maintaining the ability to support multiple functional operating modes.

Inventive Principle:
Principle #25Self-service

4Adaptability or versatility

If conditional statements are implemented in traditional logic blocks, then computational flexibility is improved, but regularity of the logic block structure deteriorates

Engineering Contradiction:
Improveconditional logic capabilityVSAvoidlogic block regularity
Core Design Contradiction:
Adaptability or versatilityVSShape

Solution Approach 1:

The logic block is segmented into distinct functional units: a programmable logic unit for computing, a separate control unit for managing conditional execution, and an interconnect interface. This segmentation allows conditional statements to be implemented through control signals rather than irregular logic structures, maintaining the regularity of the overall logic block array while providing computational flexibility.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS7733123B1Implementing conditional statements in self-timed logic circuits
Publication Date: 2010.06.08 XILINX INC
  • US7733123B1 patent drawing
  • US7733123B1 patent drawing
  • US7733123B1 patent drawing

AI summary

An exemplary circuit for implementing conditional statements in self-timed logic circuits includes first and second logic circuits, an input circuit, an output circuit, and a pipelined routing path. The first and second logic circuits each have a self-timed input and a self-timed output. The input circuit is coupled to provide a self-timed input signal to the self-timed input of a selected one of the first or second logic circuits based on the value of a control signal, and is further coupled to output a self-timed select signal. The output circuit is coupled to receive the self-timed output from the first logic circuit and the self-timed output from the second logic circuit, and to output a selected one of the self-timed outputs based on a value of the self-timed select signal. The pipelined routing path routes the self-timed select signal from the input circuit to the output circuit.