Skip to the selected question
ASIC.FYI

ASIC Question Bank

1,000+ hardware interview questions
DescriptionQ557
Page ↗
Q557DVMicronASIC interview problem

Assert four-cycle spacing between activates to one bank

TechniquesAssertions & FormalAssertions / Formalassert four-cycle spacing between activates to one bank
DifficultyEasy
TopicAssertions & Formal
LanguageSystemVerilog
Requirements4 checkpoints
01

Problem

A simplified memory interface forbids a second ACT to the same bank on the next three clocks after an accepted ACT. Write SystemVerilog assertions for all four banks.

Starting declarationSystemVerilog
input logic clk, rst_n;
input logic act_valid;
input logic [1:0] bank;

Example input and output

Use this case to check your interpretation
Input
An ACT to bank 1 occurs at C0 and another ACT to bank 1 occurs at C3.
Output
The bank-1 spacing assertion fails at C3.
Explanation

Offsets C1 through C3 are the three forbidden cycles after the first ACT; the same bank becomes legal again only at C4.

02

Requirements (4)

  • Sample on rising clk edges and disable the checks while rst_n=0.
  • If bank b has ACT at C0, another ACT to b is forbidden at C1, C2, and C3 and is legal again at C4.
  • ACT commands to any other bank remain legal during those three cycles.
  • Use a generate loop or equivalent per-bank property with a failure message that identifies the bank.