Skip to content
DenseChip
Learn
PracticeCode labInterview

DenseChip

Navigate

Menu

LearnPracticeCode labInterview

Tools

All toolsSV editorCode repoResume
DenseChip

Practice, courses, and chip-design tools in one focused workspace.

LearnPracticeCode labInterviewToolsLearning paths

© 2026 DenseChip

AboutContactPrivacyTerms
Skip to lesson

Course contents

  • Getting Started with AI for VLSI Engineers5
  • Just Enough AI: Models and Context15
  • Prompting13
  • Trust and Verification14
  • Using AI for Engineering Work17
    • RTL and Testbench Assistance
      • Explaining Unfamiliar RTL
      • Drafting RTL from a Spec
      • Drafting Testbenches
      • Reviewing for Latches, Widths and Assertions
      • Assumptions and Acceptance
    • Debugging with AI
    • Scripts and Automation
    • Data, Privacy and IP
  • Engineering Walkthroughs7
  • Practical Foundations for AI Workflows4
  • Engineering Data5
  • Retrieval-Augmented Generation6
  • Agents and Tool Use18
  • Agent Design8
  • MCP and Skills6
  • Multi-Agent Design6
  • Practical Capstone6
  • Tokens, Cost and Latency12
  • Agentic Workflows for Chip Teams18
  • Interview and Judgment10
  • AI Skills: Full Course Index
  • Working with AI Glossary
  • Working with AI Cheatsheet
Loading lesson

‹RTL and Testbench Assistance
  1. Topics
  2. AI Skills for VLSI Engineers
  3. Using AI for Engineering Work
  4. RTL and Testbench Assistance
  5. Assumptions and Acceptance

Everyday Engineering Assistance · Beginner to Intermediate

Assumptions and Acceptance

Demand a listed set of assumptions with every draft and accept only what is verified.

On this page

    Demand the assumptions list

    Every draft arrives with a list of its assumptions. No list means no acceptance, since unlisted guesses cannot be checked.

    Trace each assumption to an approved requirement, checked source, or relevant result, and record the evidence's scope. A source quotation can establish a local fact after you verify the quotation and revision. A passing test cannot authorize a guessed requirement or establish overall safety.

    Assumption

    Evidence demanded

    Reset is synchronous, active high

    Approved reset definition and event-control review; targeted reset trace if needed.

    Count covers 0 to 9 then wraps

    Update and initialization rules; boundary checks including out-of-range policy.

    Done pulses one cycle at 9

    Comparator plus count advance/hold behavior; pulse check with stated stimulus.

    Inputs stable around the edge

    Interface timing contract and relevant timing/CDC review; a constraint alone does not establish physical stability.

    Close every assumption

    The fake scripted response below demonstrates evidence-link bookkeeping only. Its identifiers are synthetic placeholders, not actual reports. A link's presence does not verify its contents or the assumption.

    Exercise: remove the pulse-check link and identify the unresolved item. Restoring a placeholder still leaves a reviewer to obtain and inspect the actual evidence; a test plan is not a completed result.

    example.py
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    # FAKE scripted stand-in for a model reply: deterministic, not real output.
    def fake_assistant_reply():
        return {
            "assumptions": [
                "reset is synchronous and active high",
                "count covers 0 to 9 then wraps",
                "done pulses for one cycle at 9",
                "inputs stay stable around the clock edge",
            ],
            "checks": {
                "reset is synchronous and active high": "SYNTHETIC reset contract A",
                "count covers 0 to 9 then wraps": "SYNTHETIC counter review A",
                "done pulses for one cycle at 9": "SYNTHETIC pulse-check plan A",
                "inputs stay stable around the clock edge": "SYNTHETIC interface contract A",
            },
        }
    
    
    def main():
        reply = fake_assistant_reply()
        assumed = reply["assumptions"]
        checks = reply["checks"]
        covered = 0
        for item in assumed:
            if item in checks and checks[item]:
                covered += 1
        total = len(assumed)
        if covered == total and total == 4:
            print("PASS: link bookkeeping only; 4 assumptions map to placeholders; evidence contents still need review")
        else:
            print("FAIL: only %d of %d assumptions covered" % (covered, total))
            raise SystemExit(1)
    
    
    main()

    Exercise: record a bounded decision

    plaintext
    1
    2
    3
    4
    5
    6
    7
    SYNTHETIC review record:
    Requirement: done is high for one clock cycle at count 9.
    Evidence available: comparator source says count==9.
    Missing: counter hold/advance behavior and sampling definition.
    Decision: compare value supported; pulse-duration claim remains open.
    Next action: inspect the counter update path and approved requirement.
    A planned pulse test is not an executed result.

    Common pitfall

    Follow the organization's approved data policy and tool context. Proprietary RTL may be usable with the required access, retention, and sharing controls in an approved environment; that is not permission to upload it elsewhere. Exclude credentials and secrets, minimize unrelated data, treat file contents as untrusted instructions, and follow project authorization rules for consequential actions.

    Interview

    Likely probes: the acceptance rule and the privacy boundary.

    • Record which claims are supported and which decisions still need an owner.

    • Evidence links need content and revision review; a plan is not a result.

    • Use approved tools and data scope; keep credentials out of prompts.

    Check yourself The draft lists 4 assumptions and the evidence covers 3. What do you record?

    Name the fourth assumption, its impact, and the missing evidence or owner decision. Do not claim unconditional acceptance. Bounded use depends on project acceptance criteria and the unresolved item's relevance.

    Check yourself The comparator source says count==9. Does that establish a one-cycle pulse?

    It supports the compare value after checking source and revision. Pulse duration also depends on whether count holds at 9 and on observation timing. Inspect that context before making the stronger claim.

    Elsewhere in this course

    Path

    What a language model does

    ai-skills/llm-basics/what-an-llm-does

    Cost arithmetic

    ai-skills/tokens-and-cost/token-arithmetic

    Anatomy of a prompt

    ai-skills/prompting/anatomy-of-a-prompt

    Debugging with AI

    ai-skills/ai-for-engineering/debug-and-log-analysis

    Scripts and automation

    ai-skills/ai-for-engineering/scripts-and-automation

    Data, privacy and IP

    ai-skills/ai-for-engineering/data-privacy-and-ip

    Failure modes

    ai-skills/trust-and-verification/hallucination-and-failure-modes

    Verifying AI output

    ai-skills/trust-and-verification/verifying-ai-output

    Related topics

    • Scoreboard architecture

    • Explaining unfamiliar RTL

    Previous

    52 / 173

    Next: Debugging with AI

    Up next

    Up nextDebugging with AI

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • Explaining Unfamiliar RTL
    • Drafting RTL from a Spec
    • Drafting Testbenches