Research Article

Self-Healing Many-Core Architecture: Analysis and Evaluation

Table 1

Major command types of ACT.

CommandDescription

NEW_TEST_CYCLEACT announces a new test cycle
Cluster testers perform initialization tasks

NEW_TEST_SNIPPET_ROUNDACT announces a new test round
Cluster testers perform initialization tasks

TEST_SNIPPET_DATA test dataACT broadcasts test data
Cluster testers store test data in test snippet buffers

APPLY_TEST (Group_Id, Cluster_Id, Core_Id)ACT broadcasts APPLY_TEST command
Cluster testers with matching (Group_Id, Cluster_Id) apply test to a processing core with matching Core_Id in their corresponding cluster

END_TEST_SNIPPET_ROUNDACT announces the end of the current test round

END_TEST_CYCLEACT announces the end of the current test cycle

START_DIAGNOSISACT announces the start of diagnosis phase

CHECK_AND_DIAGNOSE
(Group_Id, Cluster_Id, Core_Id)
ACT asks specific cluster testers about results of testing. In the case of fault report, ACT broadcasts hierarchical REPORT_STAUS commands to find suspicious test group, test cluster, and processing core

APPLY_RETEST
(Group_Id, Cluster_Id, Core_Id)
ACT requests retesting of a suspicious processing core
The target cluster tester executes retesting command

CHECK_SUSPICIOUS_CUT
(Group_Id, Cluster_Id, Core_Id)
ACT inquires about health status of a suspicious processing core after retesting
The responsible cluster tester reports the status

DISABLE_CORE
(Group_Id, Cluster_Id, Core_Id)
ACT announces disabling of a specific processing core
The responsible cluster tester marks that core as disabled

REPORT_STATUS
(Group_Id, Cluster_Id, Core_Id)
Targeted cluster tester(s) report the last status of its (their) corresponding cluster(s)