Method for debugging reconfigurable architectures
First Claim
Patent Images
1. A method for debugging a program running on reconfigurable hardware, comprising:
- writing debug information into a memory in each of a plurality of configuration cycles;
analyzing, by a debugger, the debug information;
loading a configuration, wherein the loading is performed during the debugging and responsive to occurrence of a debugging condition that indicates that information, regarding one of the configuration cycles, is needed; and
using the loaded configuration, reading the debug information out of the memory.
3 Assignments
0 Petitions
Accused Products
Abstract
A method for debugging reconfigurable hardware is described. According to this method, all necessary debug information is written in each configuration cycle into a memory, which is then analyzed by the debugger.
-
Citations
22 Claims
-
1. A method for debugging a program running on reconfigurable hardware, comprising:
-
writing debug information into a memory in each of a plurality of configuration cycles; analyzing, by a debugger, the debug information; loading a configuration, wherein the loading is performed during the debugging and responsive to occurrence of a debugging condition that indicates that information, regarding one of the configuration cycles, is needed; and using the loaded configuration, reading the debug information out of the memory. - View Dependent Claims (2, 3)
-
-
4. A method for debugging a program running on reconfigurable hardware, comprising:
-
in each of a plurality of configuration cycles, configuring at least a portion of the reconfigurable hardware according to configurations defined by the program; writing debug information into a memory in each of the plurality of configuration cycles; analyzing, by a debugger, at least some of the debug information; and at least partially slowing down or stopping a clock pulse frequency for readout. - View Dependent Claims (5)
-
-
6. A method for debugging a program running on reconfigurable hardware, comprising:
-
in each of a plurality of configuration cycles, configuring at least a portion of the reconfigurable hardware according to configurations defined by the program; writing debug information into a memory in each of the plurality of configuration cycles; analyzing, by a debugger, at least some of the debug information; and simulating one of the plurality of configuration cycles according to readout of relevant information or according to previously available information. - View Dependent Claims (7)
-
-
8. A reconfigurable device, comprising:
-
a field of configurable elements, the field including at least one of coarse-grained logic and arithmetic units; a debugging arrangement for debugging a program running on the reconfigurable device, the debugging arrangement including a memory, wherein the debugging arrangement is adapted to; write debug information into the memory in each of a plurality of configuration cycles in which one or more of the configurable elements is configured; load a configuration, wherein the loading is performed during a debugging procedure and responsive to occurrence of a debugging condition that indicates that information, regarding one of the configuration cycles, is needed; and using the loaded configuration, reading the debug information out of the memory; and an analysis device adapted to analyze the debug information. - View Dependent Claims (9)
-
-
10. A method for debugging a program running on hardware including modules that are reconfigurable in a configuration cycle with respect to at least one of function and interconnection, comprising:
-
in each of at least a subset of a plurality of configuration cycles performed during the running of the program and for which debug information is to be obtained, at least a subset of the reconfigurable hardware modules being reconfigured in each of the configuration cycles with respect to the at least one of function and interconnection; writing debug information into a memory; and reading out of the memory the debug information for use by a debugger; and analyzing by the debugger the debug information. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A dynamically reconfigurable device, comprising:
-
a field of dynamically configurable elements, the field including at least one of coarse-grained logic and arithmetic units; and a debugging arrangement to debug a program while executed on the field of configurable elements, wherein the debugging arrangement includes a memory to store information relevant to debugging during or at an end of a working step of the field of dynamically configurable elements; wherein, in each of at least a subset of a plurality of configuration cycles (a) performed during execution of the program on the field of configurable elements, (b) during which at least a portion of the field of configurable elements are reconfigured with respect to at least one of function and interconnection, and (c) for which the information relevant to debugging is to be obtained, the debugging arrangement is configured to; write the information relevant to debugging to the memory; and read the information relevant to debugging out of the memory for debugging. - View Dependent Claims (21)
-
-
22. A method for debugging a program running on hardware including modules that are reconfigurable in a configuration cycle with respect to at least one of function and interconnection, a plurality of configuration cycles being performed for the running of the program, at least a subset of the reconfigurable hardware modules being reconfigured in each of the plurality of configuration cycles with respect to the at least one of function and interconnection, the method comprising:
for at least a subset of the plurality of configuration cycles which occurs during a debugging operation; following a first of the subset of the plurality of configuration cycles, prior to each subsequent one of the subset of the plurality of configuration cycles, transferring debug information from the reconfigurable modules into a memory; reading out of the memory the debug information for use by a debugger; and analyzing by the debugger the debug information.
Specification