Speed Bridge Emulation Hardware for High-Productivity Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current hardware emulation systems face inefficiencies due to slow processing speeds and complex pathways, leading to prolonged testing times, data collisions, buffer overflows, and packet losses when trying to verify high-speed integrated circuits.
Innovation Solution
A speed bridge device that simultaneously emulates both the device under test (DUT) and the host it communicates with, using a high-speed solid-state lookup pathway to provide rapid responses for predefined inputs and processing non-predefined inputs through the DUT and host.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If traditional emulation processing pathways are used, then the emulation system can handle complex processing routines, but the processing speed becomes extremely slow
Solution Approach 1:
The emulation system is segmented into two distinct pathways: a high-speed pathway for predefined/fixed responses and a low-speed pathway for non-predefined/complex responses. This segmentation allows the system to route different types of traffic through appropriate channels, achieving high speed where possible while maintaining handling capability for complex cases.
Solution Approach 2:
A speed bridge device is introduced as an intermediary component between the host and the emulation system. This speed bridge contains lookup tables and logic to intercept and handle predefined responses at high speed, while allowing non-predefined responses to pass through to the slower emulation processing. The speed bridge acts as a mediator that resolves the speed-complexity contradiction by filtering and routing traffic appropriately.
2Speed
If high-speed interfacing is used, then processing speed improves, but resources are wasted as the actual data stream is quite small
Solution Approach 1:
The system implements partial high-speed interfacing rather than full high-speed interfacing. The speed bridge provides high-speed capability for the control and predefined response pathways, while the actual data stream pathway maintains lower speed appropriate to the small data volume. This partial application of high-speed resources avoids wasting energy on full high-speed infrastructure while still achieving speed improvements where they provide actual benefit.
3Reliability
If the emulator processes all inputs through complex routines, then all responses can be handled, but data collisions and buffer overflows occur
Solution Approach 1:
The speed bridge performs preliminary action by pre-processing incoming data and determining whether it requires high-speed or low-speed handling before the main emulation processing begins. Lookup tables and classification logic are used in advance to identify predefined responses, allowing them to be handled immediately at high speed without entering the complex processing pathway that causes data collisions and buffer overflows.
Solution Approach 2:
The speed bridge serves as an intermediary that filters and prepares data before it enters the main emulation system. By intercepting and handling predefined responses at the speed bridge level, the system prevents these high-volume, predictable data streams from overwhelming the slower emulation processing pathways, thereby eliminating data collisions and buffer overflows while maintaining high productivity.
4Loss of energy
If slow processing pathways are used, then resource usage is reduced, but testing time is prolonged significantly
Solution Approach 1:
The processing pathways are segmented into high-speed and low-speed channels based on the type of response required. High-speed handling is applied selectively to predefined responses that constitute the majority of traffic, while low-speed handling is reserved for rare, complex cases. This segmentation dramatically reduces overall testing time without requiring the entire system to operate at high resource consumption levels.
Solution Approach 2:
Different quality levels of processing are applied locally to different types of data traffic. High-speed, high-resource processing is applied only where necessary (predefined responses), while low-speed, low-resource processing is applied elsewhere (complex responses). This local differentiation optimizes the balance between resource consumption and testing time by avoiding unnecessary high-resource usage throughout the entire system.
Data Source
AI summary
A speed bridge which provides high verification productivity in a hardware emulation system by allowing for time-efficient communication between a host/server and a device under test is disclosed. The speed bridge emulates the host to the device and the device to the host simultaneously while being in communication with both. When the message/response between the host and the device is fixed, the virtual host communicates with the virtual device. When the message/response requires physical interaction, the speed bridge passes the message/response between the host/server and the device.


