Bus Controller and FIFO Buffer for PLD Communication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing complexity of processing systems, particularly in multimedia and video designs, leads to prohibitively long simulation times and communication bottlenecks between standard computation devices and hardware emulators in programmable logic devices, hindering the testing and verification process.

Innovation Solution

A method and apparatus for improved communication between a processor and hardware blocks in a programmable logic device, utilizing a bus controller, FIFO buffers, a processing engine, address decoder, strobe generator, shared memory, and memory controller to facilitate efficient data transfer and access arbitration among hardware blocks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a large number of test vectors are applied to a software simulation of the design, then testing coverage is improved, but simulation time becomes prohibitively long

Engineering Contradiction:
Improvetesting coverageVSAvoidsimulation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent introduces hardware emulators as an intermediary between the test engine and the design under test. These emulators provide a more efficient execution environment for hardware portions of the design, allowing parallel processing and significantly reducing simulation time while maintaining comprehensive test coverage. The hardware emulator acts as a mediator that bridges software-based test control with accelerated hardware execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent divides the processing system into distinct software and hardware components. The test engine running on a standard computation device handles software-based testing, while hardware emulators handle hardware-based testing. This segmentation allows each component to operate in its optimal environment, with the hardware portion executing test vectors in parallel, thereby reducing overall simulation time while maintaining comprehensive coverage.

Inventive Principle:
Principle #1Segmentation

2Reliability

If hardware emulators are used for more accurate and efficient simulation, then simulation accuracy is improved, but communication bottlenecks between the test engine and hardware emulators increase

Engineering Contradiction:
Improvesimulation accuracyVSAvoidcommunication efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extends the communication interface beyond traditional single-dimensional data transfer by implementing a multi-dimensional communication architecture. This includes direct memory access (DMA) capabilities, interrupt mechanisms, and synchronized data transfer protocols that operate across multiple communication dimensions simultaneously. This allows the test engine and hardware emulators to exchange large volumes of data efficiently without creating bottlenecks.

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

3Productivity

If the interface between the standard computation device and hardware emulators is enhanced, then communication efficiency is improved, but device complexity increases

Engineering Contradiction:
Improvecommunication efficiencyVSAvoidinterface complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a universal communication interface that handles multiple functions through a single standardized architecture. The interface supports data transfer, control signal exchange, interrupt handling, and synchronization protocols all through one unified communication pathway. This multi-functional design reduces the need for separate dedicated interfaces for each communication need, thereby improving efficiency without proportionally increasing complexity.

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

Data Source

PatentUS7743176B1Method and apparatus for communication between a processor and hardware blocks in a programmable logic device
Publication Date: 2010.06.22 XILINX INC
  • US7743176B1 patent drawing
  • US7743176B1 patent drawing
  • US7743176B1 patent drawing

AI summary

Method and apparatus for communication between hardware blocks configured in a programmable logic device (PLD) and a computation device external to the PLD is described. A bus controller is provided for receiving words from the computation device. Each of the words includes an address component and a data component. A first-in-first-out buffer (FIFO) is configured for communication with the bus controller to store the words. A processing engine is provided having a memory space associated with the hardware blocks and being configured to receive a word at a top of the FIFO. An address decoder is provided for decoding the address component of the word at the top of the FIFO to obtain an address of a memory location in the memory space. A strobe generator is provided for coupling a strobe signal to the processing engine. The strobe signal is configured to store the word in the memory location.