Skip to question
asic.fyi
DesignVerificationSystemVerilogFirmwareArchitectureInterviews
asic.fyi/Interview questions/Throttle with temperature hysteresis

Hardware interview practice

Throttle with temperature hysteresis

MediumLow Power DesignSystemVerilog

A GPU control block throttles at 90 degrees C and stays throttled until temperature falls to 80 degrees C. Implement the synchronous SystemVerilog hysteresis controller.

Try it in the question bankReason first. Then compare.

Keep this exact question selected while you check your answer and review the full solution.

Practice this question →
Starting point

Question code

input logic clk, rst_n;
input logic [9:0] temp_c;
output logic throttle;
Reviewed example

Work through one case

Input
Start unthrottled and sample temp_c = 89.
Expected output
throttle remains 0.

The controller asserts throttle only at 90 or above, so 89 lies below the entry threshold.

What to cover

Requirements

  1. When not throttled, set throttle on a rising edge whose sampled temp_c is at least 90.
  2. When throttled, clear throttle on a rising edge whose sampled temp_c is at most 80.
  3. Hold the current state for sampled temperatures from 81 through 89, creating deterministic hysteresis.
  4. When rst_n=0 at a rising edge, clear throttle regardless of temp_c.
Continue practicing

Related questions

Low Power DesignControl entry to and exit from memory self-refresh→Low Power DesignScale CMOS dynamic power→Low Power DesignPower-state transition controller→
asic.fyi · Learn silicon end to end.info@asic.fyi