{"id":46237,"date":"2026-07-07T14:10:06","date_gmt":"2026-07-07T14:10:06","guid":{"rendered":"https:\/\/imperix.com\/doc\/?p=46237"},"modified":"2026-07-22T12:00:00","modified_gmt":"2026-07-22T12:00:00","slug":"hardware-protections-on-imperix-controllers","status":"publish","type":"post","link":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers","title":{"rendered":"Hardware protections on imperix controllers"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 ez-toc-wrap-right-text counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers\/#Protection-system-architecture\" >Protection system architecture<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers\/#Protection-tripping\" >Protection tripping<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers\/#Operating-principles\" >Operating principles<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers\/#Fault-source-types\" >Fault source types<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers\/#Protection-trip-sources\" >Protection trip sources<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers\/#Hardware-faults\" >Hardware faults<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers\/#Software-faults\" >Software faults<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers\/#User-defined-faults\" >User-defined faults<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers\/#To-go-further\" >To go further<\/a><\/li><\/ul><\/nav><\/div>\n\n<p class=\"wp-block-paragraph\">Imperix controllers possess protection mechanisms that operate fully independently from the <em>user app CPU<\/em>, the <em>supervisor CPU<\/em>, and the FPGA. This guarantees that the protections can always be trusted, even if the software or the custom FPGA logic isn\u2019t completely reliable (yet).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A typical example of the use of hardware protections is a protection trip caused by an over-value (e.g., over-current) on an analog input channel. Another example is the failure to respect the control processing timings (loss of real-time). <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In the event of such faults, all PWM outputs are immediately blocked, thereby preventing damage to the power stage. Successively, the controller is switched to the FAULT state, preventing outputs from being re-enabled before the root cause is clearly identified.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This page provides details on the implementation of hardware protections on imperix controllers, as well as their management at the software level. More general information on the operating principles of imperix controllers is given in <a href=\"https:\/\/imperix.com\/doc\/help\/operating-principles-of-imperix-controllers\">PN261<\/a>.<\/p>\n\n\n\n<div class=\"wp-block-simple-alerts-for-gutenberg-alert-boxes sab-alert sab-alert-info\" role=\"alert\">Before conducting laboratory experiments, it is recommended to fully understand how the protection mechanisms operate. Apart from reading this page, useful practical guidelines are also provided in:<br><a href=\"https:\/\/imperix.com\/doc\/help\/over-current-and-over-voltage-protection?currentThread=power-modules#Principles-of-use-and-operation\">(PN257) Over-current and over-voltage protection<\/a><br><a href=\"https:\/\/imperix.com\/doc\/implementation\/safety-and-protection-in-the-lab?currentThread=active-front-end-afe\">(TN181) Safety recommendations for working in the lab<\/a><\/div>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Protection-system-architecture\"><\/span>Protection system architecture<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">At the hardware level, all fault signals are routed to a central fault manager inside the FPGA, which oversees the system\u2019s operating state and controls the global activation of PWM outputs. The fault manager is also coupled with external logic, implemented on a dedicated FPGA in the B-Box 4 and on discrete electronics on other devices. Below is an overview of how protections are implemented on the B-Box 4.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"1209\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/bb4_protections-scaled.png\" alt=\"Protections on B-Box 4\" class=\"wp-image-46347\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/bb4_protections-scaled.png 2560w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/bb4_protections-300x142.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/bb4_protections-1024x483.png 1024w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/bb4_protections-768x363.png 768w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/bb4_protections-1536x725.png 1536w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/bb4_protections-2048x967.png 2048w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><figcaption class=\"wp-element-caption\">Implementation of the protections inside the B-Box 4<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">At the software level, the protection system authorizes or prevents the generation of PWM gating signals based on the controller&#8217;s so-called&nbsp;core&nbsp;state. Three distinct states are possible in relation to the operating state of the power stage:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>BLOCKED<\/strong>: The controller is operating normally, but all PWM outputs are inhibited. The CPU control task is hence running (including all the contained control algorithms and communication functions), but the power stage remains blocked.<\/li>\n\n\n\n<li><strong>OPERATING<\/strong>: The controller is operating normally and all PWM outputs are normally produced. The power stage is actively driven.<\/li>\n\n\n\n<li><strong>FAULT<\/strong>: An error occurred, and the system is awaiting acknowledgment. All PWM outputs are blocked similarly to the BLOCKED state.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1620\" height=\"974\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/FSM.png\" alt=\"Operating FSM of imperix controllers\" class=\"wp-image-46173\" style=\"aspect-ratio:1.663298329040354;width:539px;height:auto\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/FSM.png 1620w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/FSM-300x180.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/FSM-1024x616.png 1024w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/FSM-768x462.png 768w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/FSM-1536x923.png 1536w\" sizes=\"auto, (max-width: 1620px) 100vw, 1620px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">More information on the core state machine and its related transitions is provided in <a href=\"https:\/\/imperix.com\/doc\/help\/operating-principles-of-imperix-controllers\">PN261<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Protection-tripping\"><\/span>Protection tripping<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Operating-principles\"><\/span>Operating principles<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The illustration below shows the protection trip and acknowledgment sequence using the analog over-value protection as an example. In case of a fault, the following sequence takes place:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"384\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/image-4-1024x384.png\" alt=\"\" class=\"wp-image-47552\" style=\"width:615px;height:auto\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/image-4-1024x384.png 1024w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/image-4-300x112.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/image-4-768x288.png 768w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/image-4-1536x576.png 1536w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/image-4-2048x768.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><strong>1. Fault is detected<\/strong>. The controller reacts almost instantly. An analog over-value fault is typically detected within 0.8 \u00b5s in the B-Box 4 (reaction times for other faults vary by controller and fault source). During this ultra-short interval, the fault current remains bounded to a reasonable value. The primary delay factor during this phase is the external sensor&#8217;s bandwidth.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>2. Actual trip<\/strong>. All PWM outputs are instantly blocked, allowing the fault current to decay naturally based on the power stage inductance. GPOs remain unaffected unless explicitly configured otherwise within the software.<\/p>\n\n\n\n<div class=\"wp-block-simple-alerts-for-gutenberg-alert-boxes sab-alert sab-alert-warning\" role=\"alert\">The controller is safely blocked at this stage, but the power stage itself is not automatically de-energized.<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\">\n<p class=\"wp-block-paragraph\">Concurrently, at the software level:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The <em>core<\/em> state is switched to FAULT.<\/li>\n\n\n\n<li>A log message is displayed in Cockpit.<\/li>\n\n\n\n<li>The system (SYS) or CORE LED turns red.<\/li>\n\n\n\n<li>If the fault was triggered by an analog input over-value, the orange LED on the faulty channel is turned on.<\/li>\n\n\n\n<li>For CPP SDK users, the routine UserError() is called, providing an opportunity to implement specific actions to be executed.<\/li>\n<\/ul>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:33.33%\"><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"699\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/analog_fault_led.png\" alt=\"Analog fault LED\" class=\"wp-image-46356\" style=\"aspect-ratio:2.289038356662425\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/analog_fault_led.png 1600w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/analog_fault_led-300x131.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/analog_fault_led-1024x447.png 1024w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/analog_fault_led-768x336.png 768w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/analog_fault_led-1536x671.png 1536w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><figcaption class=\"wp-element-caption\">Orange FLT LED on analog input ports<\/figcaption><\/figure>\n<\/div><\/div>\n<\/div>\n\n\n\n<p class=\"wp-block-paragraph\">As long as the fault condition is present (e.g., the voltage or the temperature is too high), the fault cannot be acknowledged, and the operation cannot be resumed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>3. Fault condition disappearance.<\/strong> Three sequences are possible upon clearance of the fault:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Most faults are automatically acknowledged (e.g., interlock line). Operation can be resumed immediately.<\/li>\n\n\n\n<li>Analog over-values must be manually acknowledged. Operation can only be resumed afterward.<\/li>\n\n\n\n<li>Software faults cannot be recovered from immediately. The user code must be restarted.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>4. User acknowledgment<\/strong>. The fault should be acknowledged only after the user has clearly understood its root cause. Additionally, at the software level:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The <em>core<\/em> state is switched to BLOCKED, meaning all PWM outputs remain blocked, but they can be re-enabled on demand.<\/li>\n\n\n\n<li>The system (SYS) or CORE LED turns orange.<\/li>\n\n\n\n<li>Any orange LED on analog inputs is turned off.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The whole sequence is summarized below:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1502\" height=\"1754\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/fault_operating_diagram.png\" alt=\"Fault operating diagram\" class=\"wp-image-46357\" style=\"aspect-ratio:0.8563364956305892;width:615px;height:auto\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/fault_operating_diagram.png 1502w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/fault_operating_diagram-257x300.png 257w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/fault_operating_diagram-877x1024.png 877w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/fault_operating_diagram-768x897.png 768w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/fault_operating_diagram-1315x1536.png 1315w\" sizes=\"auto, (max-width: 1502px) 100vw, 1502px\" \/><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Fault-source-types\"><\/span>Fault source types<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A protection trip can be triggered by any of three possible source types:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>Hardware fault<\/strong>: Triggered at the hardware level, such as an analog measurement (voltage, current) exceeding its configured threshold. External fault flags (digital I\/Os), such as on the interlock connector or VHDCI connectors, also induce so-called hardware faults.<\/li>\n\n\n\n<li><strong>Software fault<\/strong>: Triggered at the kernel level to prevent unsafe CPU operation. The possible causes are either a software crash or an excessive execution time (overrun).<\/li>\n\n\n\n<li><strong>User fault<\/strong>: Triggered intentionally by returning a fault flag from the user-level routines. By doing so, the user intentionally decides that safety mechanisms must be activated.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">The following table lists the common fault sources:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th class=\"has-text-align-left\" data-align=\"left\"><strong>Cause<\/strong><\/th><th class=\"has-text-align-left\" data-align=\"left\"><strong>Available on<\/strong><\/th><th class=\"has-text-align-left\" data-align=\"left\"><strong>Type<\/strong><\/th><th class=\"has-text-align-left\" data-align=\"left\"><strong>Clear<\/strong><\/th><th class=\"has-text-align-left\" data-align=\"left\"><strong>Reason<\/strong><\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-left\" data-align=\"left\">Analog input<br>over-value<\/td><td class=\"has-text-align-left\" data-align=\"left\">B-Box only<\/td><td class=\"has-text-align-left\" data-align=\"left\">Hardware<\/td><td class=\"has-text-align-left\" data-align=\"left\">Manual ack.<\/td><td class=\"has-text-align-left\" data-align=\"left\">Analog input exceeds the programmed safety limit<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">VHDCI fault lines<\/td><td class=\"has-text-align-left\" data-align=\"left\">All except TPI<\/td><td class=\"has-text-align-left\" data-align=\"left\">Hardware<\/td><td class=\"has-text-align-left\" data-align=\"left\">Automatic<\/td><td class=\"has-text-align-left\" data-align=\"left\">Active-low fault input from VHDCI ports<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">General FLT inputs<\/td><td class=\"has-text-align-left\" data-align=\"left\">All except B-Box Micro, TPI<\/td><td class=\"has-text-align-left\" data-align=\"left\">Hardware<\/td><td class=\"has-text-align-left\" data-align=\"left\">Automatic<\/td><td class=\"has-text-align-left\" data-align=\"left\">Active-high fault input from FLT ports<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">Interlock<\/td><td class=\"has-text-align-left\" data-align=\"left\">All<\/td><td class=\"has-text-align-left\" data-align=\"left\">Hardware<\/td><td class=\"has-text-align-left\" data-align=\"left\">Automatic<\/td><td class=\"has-text-align-left\" data-align=\"left\">Fault input from Interlock<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">RealSync<\/td><td class=\"has-text-align-left\" data-align=\"left\">All except B-Box Micro<\/td><td class=\"has-text-align-left\" data-align=\"left\">Hardware<\/td><td class=\"has-text-align-left\" data-align=\"left\">Automatic<\/td><td class=\"has-text-align-left\" data-align=\"left\">Fault propagated from other controllers inside the RealSync network<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">SOA<\/td><td class=\"has-text-align-left\" data-align=\"left\">TPI only<\/td><td class=\"has-text-align-left\" data-align=\"left\">Hardware<\/td><td class=\"has-text-align-left\" data-align=\"left\">Automatic<\/td><td class=\"has-text-align-left\" data-align=\"left\">Exceeding the TPI\u2019s Safe Operating Area (SOA)<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">Watchdog<\/td><td class=\"has-text-align-left\" data-align=\"left\">All<\/td><td class=\"has-text-align-left\" data-align=\"left\">Software<\/td><td class=\"has-text-align-left\" data-align=\"left\">Unrecoverable<\/td><td class=\"has-text-align-left\" data-align=\"left\">CPU software crash<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">CPU overrun<\/td><td class=\"has-text-align-left\" data-align=\"left\">All&nbsp;<\/td><td class=\"has-text-align-left\" data-align=\"left\">Software<\/td><td class=\"has-text-align-left\" data-align=\"left\">Unrecoverable<\/td><td class=\"has-text-align-left\" data-align=\"left\">Unable to finish the CPU task within a control period<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">User-defined faults<\/td><td class=\"has-text-align-left\" data-align=\"left\">All&nbsp;<\/td><td class=\"has-text-align-left\" data-align=\"left\">User<\/td><td class=\"has-text-align-left\" data-align=\"left\">Automatic<\/td><td class=\"has-text-align-left\" data-align=\"left\">User-declared fault<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Protection-trip-sources\"><\/span>Protection trip sources<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Hardware-faults\"><\/span>Hardware faults<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Hardware faults can originate from five distinct sources:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">a. Analog over-value protection<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">This critical safety feature protects the system by continuously comparing incoming analog signals against user-defined safety thresholds. If a threshold is violated, a trip signal is sent to the fault manager. The exact way this mechanism is implemented differs among the controllers. The reaction times and configuration methods differ too, as summarized in the table below:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th><\/th><th class=\"has-text-align-left\" data-align=\"left\"><strong>B-Box 4<\/strong><\/th><th class=\"has-text-align-left\" data-align=\"left\"><strong>B-Box 3 (RCP)<\/strong><\/th><th class=\"has-text-align-left\" data-align=\"left\"><strong>B-Box micro<\/strong><\/th><th class=\"has-text-align-left\" data-align=\"left\"><strong>B-Board<\/strong><\/th><th class=\"has-text-align-left\" data-align=\"left\"><strong>TPI8032<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>Reaction time<\/strong><\/td><td class=\"has-text-align-left\" data-align=\"left\">0.8 or 1.6 \u00b5s<\/td><td class=\"has-text-align-left\" data-align=\"left\">1.6 \u00b5s<\/td><td class=\"has-text-align-left\" data-align=\"left\">4.0\u00b5s<\/td><td class=\"has-text-align-left\" data-align=\"left\">N\/A<\/td><td class=\"has-text-align-left\" data-align=\"left\">4.0 \u00b5s<\/td><\/tr><tr><td><strong>Configuration<\/strong><\/td><td class=\"has-text-align-left\" data-align=\"left\">On front panel or in Cockpit<\/td><td class=\"has-text-align-left\" data-align=\"left\">On front panel<\/td><td class=\"has-text-align-left\" data-align=\"left\">In Cockpit<\/td><td class=\"has-text-align-left\" data-align=\"left\">N\/A<\/td><td class=\"has-text-align-left\" data-align=\"left\">Auto-computed Safe Operating Area (SOA)<\/td><\/tr><tr><td><strong>User ack.<\/strong><\/td><td class=\"has-text-align-left\" data-align=\"left\">On front panel or in Cockpit<\/td><td class=\"has-text-align-left\" data-align=\"left\">On front panel<\/td><td class=\"has-text-align-left\" data-align=\"left\">In Cockpit<\/td><td class=\"has-text-align-left\" data-align=\"left\">N\/A<\/td><td class=\"has-text-align-left\" data-align=\"left\">Automatic<\/td><\/tr><\/tbody><tfoot><tr><td><strong>Reference<\/strong><\/td><td class=\"has-text-align-left\" data-align=\"left\"><a href=\"https:\/\/imperix.com\/doc\/help\/analog-i-o-configuration-on-b-box-4#How-to-configure-analog-front-end-hardware\" type=\"link\" id=\"https:\/\/imperix.com\/doc\/help\/analog-i-o-configuration-on-b-box-4#How-to-configure-analog-front-end-hardware\">PN252<\/a><\/td><td class=\"has-text-align-left\" data-align=\"left\"><a href=\"https:\/\/imperix.com\/doc\/help\/analog-front-end-configuration-on-b-box-rcp#Front-end-configuration-hardware\">PN105<\/a><\/td><td class=\"has-text-align-left\" data-align=\"left\"><a href=\"https:\/\/imperix.com\/doc\/help\/analog-inputs-configuration-on-b-box-micro#Safety-limits\">PN106<\/a><\/td><td class=\"has-text-align-left\" data-align=\"left\">N\/A<\/td><td class=\"has-text-align-left\" data-align=\"left\"><a href=\"https:\/\/imperix.com\/doc\/help\/tpi-quick-start-guide?currentThread=active-power-filter#Instructions-for-safe-use\">PN190<\/a><\/td><\/tr><\/tfoot><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Additionally:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/imperix.com\/doc\/help\/over-current-and-over-voltage-protection\">PN257<\/a> provides general practical advice on configuring over-current and over-voltage protection, along with considerations for coordinating these protections with those present on imperix&#8217;s power modules.<\/li>\n\n\n\n<li><a href=\"https:\/\/imperix.com\/doc\/help\/data-acquisition-in-b-box-4\">PN260<\/a> details the FPGA-level implementation of the analog input stage inside the B-Box 4.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">b. VHDCI fault lines<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Each VHDCI connector A, B, C, and D has one general fault input that is active-low and internally pulled up to 3.3 V via a 10 k\u03a9 resistor. These inputs can be left floating when unused. More information is available in the devices&#8217; datasheets.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">c. General FLT inputs<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">These specialized active-high fault inputs are available on the VHDCI connectors A and B. Thanks to the <a href=\"https:\/\/imperix.com\/products\/control\/accessories\/#optical_expansion_board\">optical expansion boards<\/a>, these inputs are also compatible with optical feedback signals. The B-Box 4 provides 24 FLT inputs, and the B-Box 3 (RCP) and B-Board 3 (PRO) provide 16 FLT inputs. Other devices do not possess such inputs.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">FLT inputs are disregarded by default. They can be enabled by instantiating the <a href=\"https:\/\/imperix.com\/doc\/software\/fault-inputs\">FLT<\/a> block or calling the corresponding C\/C++ configuration routine.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">d. Interlock<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">All imperix controllers, except the B-Board PRO, feature an interlock input\/output connector for emergency fault inputs or inter-device fault sharing. The interlock input is active-low and internally pulled down by default. Therefore, it must be shorted to the 5V supply or disabled when not in use.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To enable\/disable the interlock from the B-Box front panel:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Push the rotary button once to show the front panel menu.<\/li>\n\n\n\n<li>Rotate the button to select interlock, and push to enter the submenu.<\/li>\n\n\n\n<li>Rotate to switch between enabled and disabled, then push to save the configuration.<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1984\" height=\"477\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/interlock_connection.png\" alt=\"Interlock connection\" class=\"wp-image-46360\" style=\"aspect-ratio:4.159550747377983;width:479px;height:auto\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/interlock_connection.png 1984w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/interlock_connection-300x72.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/interlock_connection-1024x246.png 1024w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/interlock_connection-768x185.png 768w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/interlock_connection-1536x369.png 1536w\" sizes=\"auto, (max-width: 1984px) 100vw, 1984px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Hardware-related information about the interlock is given in the respective device datasheets.<\/p>\n\n\n\n<div class=\"wp-block-simple-alerts-for-gutenberg-alert-boxes sab-alert sab-alert-warning\" role=\"alert\">The reaction time from the interlock fault input to the blocking of PWM signals is generally a few milliseconds, which is <strong>very slow compared to the other protections<\/strong>. For fault sharing between imperix controllers, it is recommended to use an SFP+ link, which offers a much lower response time.<\/div>\n\n\n\n<h4 class=\"wp-block-heading\">e. Fault sharing over SPF\/QSFP+ (RealSync)<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">In multi-controller setups connected via the imperix RealSync network, any fault is instantly propagated across the entire network with an ultra-low latency of 170 ns per hop (to the adjacent device). Furthermore, because RealSync operates over the Xilinx Aurora 8B\/10B protocol, it benefits from its intrinsically robust data integrity mechanisms. On imperix controllers, any communication issue immediately generates a protection trip:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Cyclic Redundancy Check (CRC):<\/strong> triggers a fault if any data frame is corrupted.<\/li>\n\n\n\n<li><strong>Invalid code &amp; disparity error:<\/strong> triggers a fault if the received 10-bit code doesn\u2019t have the correct disparity or is invalid (not in the 8b\/10b table).<\/li>\n\n\n\n<li><strong>Link loss:<\/strong> triggers a fault if the communication link experiences a major disruption, such as loss of transceiver lock or a broken physical link.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">More information on the operating principles and fault propagation mechanism of RealSync is given on <a href=\"https:\/\/imperix.com\/doc\/help\/multi-controller-operation\" type=\"link\" id=\"https:\/\/imperix.com\/doc\/help\/multi-controller-operation\">PN264<\/a>.<\/p>\n\n\n\n<h3 id=\"software-faults\" class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Software-faults\"><\/span>Software faults<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">To guarantee the safety and determinism of the hard real-time environment, the controller inherently monitors its own computational and communication integrity:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Watchdog<\/strong>: triggers if the user code crashes or the FPGA fails to receive data from the CPU at the end of the control period.<\/li>\n\n\n\n<li><strong>CPU overrun<\/strong>: triggers if the <em>user app CPU<\/em> fails to finish executing its interrupt within one interrupt period.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">A software fault can cause unpredictable errors if the operation continues; these are considered <strong>unrecoverable<\/strong>. Therefore, the user code must be relaunched (at least).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"User-defined-faults\"><\/span>User-defined faults<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Additional faults can be declared by the user code using the <a href=\"https:\/\/imperix.com\/doc\/software\/user-fault\">User fault<\/a> block or the corresponding C\/C++ routine. For instance, in the <a href=\"https:\/\/imperix.com\/doc\/implementation\/grid-following-inverter?currentThread=static-synchronous-compensator-statcom\">Grid-Following Inverters (GFLIs)<\/a> example, PWMs are shut down when the grid voltage drops below a certain threshold or when the grid synchronization is lost.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"To-go-further\"><\/span>To go further<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Device-specific practical guidance for configuring the analog protection thresholds is given in <a href=\"https:\/\/imperix.com\/doc\/help\/over-current-and-over-voltage-protection\">PN257<\/a>. The page also explains how these protections should be coordinated with other safety-related mechanisms (on-module protections, circuit breakers, etc.).<\/li>\n\n\n\n<li><a href=\"https:\/\/imperix.com\/doc\/help\/operating-principles-of-imperix-controllers\">PN261<\/a> further develops on the operating principles of imperix controllers in general, also addressing the devices&#8217; architecture and their specificities.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Imperix controllers possess protection mechanisms that operate fully independently from the user app CPU, the supervisor CPU, and the FPGA. This guarantees that the protections&#8230;<\/p>\n","protected":false},"author":10,"featured_media":46364,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[3],"tags":[],"software-environments":[],"provided-results":[],"related-products":[31,32,92,166,110],"guidedreadings":[],"tutorials":[],"user-manuals":[],"coauthors":[72,69],"class_list":["post-46237","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-help","related-products-b-board-pro","related-products-b-box-rcp","related-products-b-box-micro","related-products-b-box-rcp-3-0","related-products-tpi"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Hardware protections on imperix controllers - imperix<\/title>\n<meta name=\"description\" content=\"Provide details on implementation of hardware protections on imperix controllers, as well as their management at the software level.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Hardware protections on imperix controllers - imperix\" \/>\n<meta property=\"og:description\" content=\"Provide details on implementation of hardware protections on imperix controllers, as well as their management at the software level.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers\" \/>\n<meta property=\"og:site_name\" content=\"imperix\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-07T14:10:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-22T12:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/PN263_featured_image.png\" \/>\n\t<meta property=\"og:image:width\" content=\"500\" \/>\n\t<meta property=\"og:image:height\" content=\"334\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Shu Wang, Nicolas Cherix\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Shu Wang, Nicolas Cherix\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/help\\\/hardware-protections-on-imperix-controllers#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/help\\\/hardware-protections-on-imperix-controllers\"},\"author\":{\"name\":\"Shu Wang\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#\\\/schema\\\/person\\\/e57025902e777170f33a7afa4a74afb7\"},\"headline\":\"Hardware protections on imperix controllers\",\"datePublished\":\"2026-07-07T14:10:06+00:00\",\"dateModified\":\"2026-07-22T12:00:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/help\\\/hardware-protections-on-imperix-controllers\"},\"wordCount\":1791,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/help\\\/hardware-protections-on-imperix-controllers#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/PN263_featured_image.png\",\"articleSection\":[\"Product notes\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/imperix.com\\\/doc\\\/help\\\/hardware-protections-on-imperix-controllers#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/help\\\/hardware-protections-on-imperix-controllers\",\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/help\\\/hardware-protections-on-imperix-controllers\",\"name\":\"Hardware protections on imperix controllers - imperix\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/help\\\/hardware-protections-on-imperix-controllers#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/help\\\/hardware-protections-on-imperix-controllers#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/PN263_featured_image.png\",\"datePublished\":\"2026-07-07T14:10:06+00:00\",\"dateModified\":\"2026-07-22T12:00:00+00:00\",\"description\":\"Provide details on implementation of hardware protections on imperix controllers, as well as their management at the software level.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/help\\\/hardware-protections-on-imperix-controllers#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/imperix.com\\\/doc\\\/help\\\/hardware-protections-on-imperix-controllers\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/help\\\/hardware-protections-on-imperix-controllers#primaryimage\",\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/PN263_featured_image.png\",\"contentUrl\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/PN263_featured_image.png\",\"width\":500,\"height\":334,\"caption\":\"PN263 featured image\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/help\\\/hardware-protections-on-imperix-controllers#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Knowledge base\",\"item\":\"https:\\\/\\\/imperix.com\\\/doc\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Product notes\",\"item\":\"https:\\\/\\\/imperix.com\\\/doc\\\/category\\\/help\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Hardware protections on imperix controllers\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#website\",\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/\",\"name\":\"imperix\",\"description\":\"power electronics\",\"publisher\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/imperix.com\\\/doc\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#organization\",\"name\":\"imperix\",\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2021\\\/03\\\/imperix_logo.png\",\"contentUrl\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2021\\\/03\\\/imperix_logo.png\",\"width\":350,\"height\":120,\"caption\":\"imperix\"},\"image\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#\\\/schema\\\/person\\\/e57025902e777170f33a7afa4a74afb7\",\"name\":\"Shu Wang\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/8c5195ad4fcc5844061b0229a4e67ac2916756927bc646fb6f6ff3dfb1bba140?s=96&d=mm&r=g4b86f01b045719d1dd14babc666c16ba\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/8c5195ad4fcc5844061b0229a4e67ac2916756927bc646fb6f6ff3dfb1bba140?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/8c5195ad4fcc5844061b0229a4e67ac2916756927bc646fb6f6ff3dfb1bba140?s=96&d=mm&r=g\",\"caption\":\"Shu Wang\"},\"description\":\"Shu is an experienced development engineer at imperix. He authored or co-authored numerous articles on the knowledge base, notably on FPGA-based control implementation and high-level synthesis tools and techniques.\",\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/in\\\/shu-wang-6581221b9\\\/\"],\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/author\\\/wang\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Hardware protections on imperix controllers - imperix","description":"Provide details on implementation of hardware protections on imperix controllers, as well as their management at the software level.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers","og_locale":"en_US","og_type":"article","og_title":"Hardware protections on imperix controllers - imperix","og_description":"Provide details on implementation of hardware protections on imperix controllers, as well as their management at the software level.","og_url":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers","og_site_name":"imperix","article_published_time":"2026-07-07T14:10:06+00:00","article_modified_time":"2026-07-22T12:00:00+00:00","og_image":[{"width":500,"height":334,"url":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/PN263_featured_image.png","type":"image\/png"}],"author":"Shu Wang, Nicolas Cherix","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Shu Wang, Nicolas Cherix","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers#article","isPartOf":{"@id":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers"},"author":{"name":"Shu Wang","@id":"https:\/\/imperix.com\/doc\/#\/schema\/person\/e57025902e777170f33a7afa4a74afb7"},"headline":"Hardware protections on imperix controllers","datePublished":"2026-07-07T14:10:06+00:00","dateModified":"2026-07-22T12:00:00+00:00","mainEntityOfPage":{"@id":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers"},"wordCount":1791,"commentCount":0,"publisher":{"@id":"https:\/\/imperix.com\/doc\/#organization"},"image":{"@id":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers#primaryimage"},"thumbnailUrl":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/PN263_featured_image.png","articleSection":["Product notes"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers#respond"]}]},{"@type":"WebPage","@id":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers","url":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers","name":"Hardware protections on imperix controllers - imperix","isPartOf":{"@id":"https:\/\/imperix.com\/doc\/#website"},"primaryImageOfPage":{"@id":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers#primaryimage"},"image":{"@id":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers#primaryimage"},"thumbnailUrl":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/PN263_featured_image.png","datePublished":"2026-07-07T14:10:06+00:00","dateModified":"2026-07-22T12:00:00+00:00","description":"Provide details on implementation of hardware protections on imperix controllers, as well as their management at the software level.","breadcrumb":{"@id":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers#primaryimage","url":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/PN263_featured_image.png","contentUrl":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2026\/07\/PN263_featured_image.png","width":500,"height":334,"caption":"PN263 featured image"},{"@type":"BreadcrumbList","@id":"https:\/\/imperix.com\/doc\/help\/hardware-protections-on-imperix-controllers#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Knowledge base","item":"https:\/\/imperix.com\/doc\/"},{"@type":"ListItem","position":2,"name":"Product notes","item":"https:\/\/imperix.com\/doc\/category\/help"},{"@type":"ListItem","position":3,"name":"Hardware protections on imperix controllers"}]},{"@type":"WebSite","@id":"https:\/\/imperix.com\/doc\/#website","url":"https:\/\/imperix.com\/doc\/","name":"imperix","description":"power electronics","publisher":{"@id":"https:\/\/imperix.com\/doc\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/imperix.com\/doc\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/imperix.com\/doc\/#organization","name":"imperix","url":"https:\/\/imperix.com\/doc\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/imperix.com\/doc\/#\/schema\/logo\/image\/","url":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/imperix_logo.png","contentUrl":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/imperix_logo.png","width":350,"height":120,"caption":"imperix"},"image":{"@id":"https:\/\/imperix.com\/doc\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/imperix.com\/doc\/#\/schema\/person\/e57025902e777170f33a7afa4a74afb7","name":"Shu Wang","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/8c5195ad4fcc5844061b0229a4e67ac2916756927bc646fb6f6ff3dfb1bba140?s=96&d=mm&r=g4b86f01b045719d1dd14babc666c16ba","url":"https:\/\/secure.gravatar.com\/avatar\/8c5195ad4fcc5844061b0229a4e67ac2916756927bc646fb6f6ff3dfb1bba140?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/8c5195ad4fcc5844061b0229a4e67ac2916756927bc646fb6f6ff3dfb1bba140?s=96&d=mm&r=g","caption":"Shu Wang"},"description":"Shu is an experienced development engineer at imperix. He authored or co-authored numerous articles on the knowledge base, notably on FPGA-based control implementation and high-level synthesis tools and techniques.","sameAs":["https:\/\/www.linkedin.com\/in\/shu-wang-6581221b9\/"],"url":"https:\/\/imperix.com\/doc\/author\/wang"}]}},"_links":{"self":[{"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/posts\/46237","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/comments?post=46237"}],"version-history":[{"count":18,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/posts\/46237\/revisions"}],"predecessor-version":[{"id":47566,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/posts\/46237\/revisions\/47566"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/media\/46364"}],"wp:attachment":[{"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/media?parent=46237"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/categories?post=46237"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/tags?post=46237"},{"taxonomy":"software-environments","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/software-environments?post=46237"},{"taxonomy":"provided-results","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/provided-results?post=46237"},{"taxonomy":"related-products","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/related-products?post=46237"},{"taxonomy":"guidedreadings","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/guidedreadings?post=46237"},{"taxonomy":"tutorials","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/tutorials?post=46237"},{"taxonomy":"user-manuals","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/user-manuals?post=46237"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/coauthors?post=46237"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}