Test Registers for Post Configuration Testing of Programmable Logic Devices
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional testing and monitoring of programmable logic devices (PLDs) are limited by the number of physical pins, DIP switches, and LEDs, making it difficult to test and monitor complex user designs with multiple alternative implementations and signals, requiring physical user interaction.
Innovation Solution
Implementing user-specified test registers on the PLD that can be controlled and monitored externally, allowing for selective adjustment of user design operations and real-time monitoring of internal signals, using a debug core to interface with external systems for configuration and testing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If DIP switches and LEDs are used for testing and monitoring, then physical control and visualization are achieved, but the number of testable implementations and monitorable signals is limited by physical resources
Solution Approach 1:
The patent replaces mechanical DIP switches with software-based test registers that can be controlled through digital interfaces. Instead of physical switches that require manual adjustment, the system uses programmable registers that can be set and modified via software, eliminating the need for physical hardware changes and enabling unlimited configuration options without adding physical complexity
Solution Approach 2:
The patent creates virtual copies of control and monitoring functions. Rather than having physical DIP switches and LEDs for each test parameter, the system implements software-based test registers and monitoring mechanisms that replicate the functionality of physical components in the digital domain, allowing multiple instances to share the same physical interface resources
2Ease of operation
If DIP switches are used to switch between implementations, then alternative implementations can be tested, but physical user interaction is required which complicates testing of complex designs
Solution Approach 1:
The patent implements self-service testing capabilities where the test system can automatically configure and control test parameters without requiring continuous manual intervention. The test registers can be programmed to automatically switch between implementations and monitor signals, enabling automated test sequences that execute independently once initiated
Solution Approach 2:
The patent replaces manual mechanical switching with automated software-based control. Instead of requiring users to physically adjust DIP switches, the system uses programmable test registers that can be controlled through software interfaces, enabling automated testing workflows and eliminating the need for continuous physical user interaction
3Quantity of substance
If physical pins are used for connecting test equipment, then external control and monitoring are enabled, but the number of simultaneously testable signals is limited by pin availability
Solution Approach 1:
The patent implements multi-functional test registers that can be dynamically configured to monitor different signals. Instead of requiring dedicated physical pins for each monitoring function, the same physical interface can be programmatically assigned to monitor multiple different signals at different times, allowing one physical resource to serve multiple testing functions
Solution Approach 2:
The patent moves the expansion of testing capacity from the physical dimension (adding more pins and physical components) to the software dimension (creating more test registers and monitoring functions). By implementing test registers in the digital domain rather than requiring additional physical interfaces, the system can monitor an unlimited number of signals without increasing physical complexity
Data Source
AI summary
Various techniques are provided to implement user specified test registers locally on a PLD for use while the PLD is configured with a user design and tested. In one example, a machine-implemented method includes receiving, from an external test application, a data value at a programmable logic device (PLD) running configured user logic. The method also includes writing the data value into a test register of the PLD. The method also includes providing a control signal from the test register to the configured user logic in response to the data value. The method also includes switching operation of the configured user logic from a first test implementation to a second test implementation in response to the control signal.


