Anlogic FPGA Needs Analysis Skill
Use this skill as the default entrypoint for new-design requirement analysis.
Role
Turn user requirements into engineering-input conclusions and decide whether the flow may leave the requirement stage.
Inputs
- user goal and acceptance target
- board or system context
- device and package candidates
- interface, throughput, latency, and timing expectations
- the latest stage summary when this task is part of a larger flow
Boundaries
- do not jump directly into RTL when requirement decomposition is still incomplete
- do not treat example projects as proof that board, device, or DDR identity has been locked
- do not replace later design, testbench, or project-creation work
Outputs
- engineering-input conclusions
- routing guidance for the next stage
- a compact stage summary at
doc/stage-S0-summary.md
Not Doing
- not writing long free-form restatements when a compact summary is enough
- not routing around missing requirement evidence
Responsibilities
- Decompose the requirement into engineering-input conclusions
- Judge device, package, speed, resource, and interface fit
- Define module partitioning, data flow, and control flow
- State clocks, resets, buffering, and throughput assumptions
- Recommend primitives, hard IP, wrappers, and TD IP priorities
- Decide whether the requirement is already specific enough to build a Python reference timing baseline
Frequent Downstream Skills
anlogic-python-signal-pre-research
anlogic-design
anlogic-code-design
anlogic-project-creation
anlogic-timing-constraints
Default Flow
- Clarify the functional target and system context.
- Judge device, package, and major resource fit.
- Judge interface capabilities and bottlenecks.
- Form module partitioning, top-level architecture, and data flow.
- Produce primitive/IP/wrapper guidance.
- Decide whether the requirement has reached signal-and-timing granularity.
- If yes, hand off to
anlogic-python-signal-pre-research before anlogic-code-design.
- If not, keep the task in this stage until the decomposition is complete.
Mandatory Handoff Rule
When the requirement has already been decomposed into key signals, sequencing assumptions, time range, and sampling intent, do not jump directly into RTL. Hand off to anlogic-python-signal-pre-research first so the flow gets a saved reference-waveform baseline.
Output Requirements
At minimum, output:
- recommended device or candidate devices
- key interface judgment
- rough internal resource budget
- module partitioning
- top-level architecture
- major data flow and control flow
- primitive / hard IP / wrapper / TD IP guidance for
anlogic-code-design
- project-input guidance for
anlogic-project-creation
- stage-routing guidance stating whether
anlogic-python-signal-pre-research is now required
- fixed summary fields:
current_stage
goal
confirmed_constraints
artifacts
decision
blocking_reason
next_action
Routing Rules
- Requirement or board context is still unclear: stay in this skill
- Requirement is decomposed to signal timing and sequence level: hand off to
anlogic-python-signal-pre-research
- Requirement is clear enough for orchestration decisions: coordinate with
anlogic-design
- Only after the reference baseline is ready should the flow move into
anlogic-code-design
2026-05-06 Rule: DDR Hard-IP Identity Lock
- For DDR-class projects, needs analysis must explicitly lock:
- board identity
- exact device and package
- DDR generation
- whether the DDR subsystem is hard-IP based
- If the DDR subsystem is hard-IP based, state explicitly whether DDR pins are expected to be defined by top-level hard-IP hookup rather than normal board ADC/SDC IO planning.
- Do not allow later stages to infer this from examples. Put it in the needs-analysis conclusion.
- If two boards use different hard-IP DDR generations or different device/package bindings, treat them as different platform baselines even when their surrounding benchmark structure looks similar.
1---2name: anlogic-needs-analysis3description: Use when Anlogic FPGA work still needs requirement decomposition, device and resource judgment, interface analysis, module partitioning, timing/data-flow planning, or upstream design direction. This stage must decide when the requirement is clear enough to hand off either to `anlogic-python-signal-pre-research` for a reference timing baseline or to later specialist Anlogic skills.4---56# Anlogic FPGA Needs Analysis Skill78Use this skill as the default entrypoint for new-design requirement analysis.910## Role1112Turn user requirements into engineering-input conclusions and decide whether the flow may leave the requirement stage.1314## Inputs1516- user goal and acceptance target17- board or system context18- device and package candidates19- interface, throughput, latency, and timing expectations20- the latest stage summary when this task is part of a larger flow2122## Boundaries2324- do not jump directly into RTL when requirement decomposition is still incomplete25- do not treat example projects as proof that board, device, or DDR identity has been locked26- do not replace later design, testbench, or project-creation work2728## Outputs2930- engineering-input conclusions31- routing guidance for the next stage32- a compact stage summary at `doc/stage-S0-summary.md`3334## Not Doing3536- not writing long free-form restatements when a compact summary is enough37- not routing around missing requirement evidence3839## Responsibilities4041- Decompose the requirement into engineering-input conclusions42- Judge device, package, speed, resource, and interface fit43- Define module partitioning, data flow, and control flow44- State clocks, resets, buffering, and throughput assumptions45- Recommend primitives, hard IP, wrappers, and TD IP priorities46- Decide whether the requirement is already specific enough to build a Python reference timing baseline4748## Frequent Downstream Skills4950- `anlogic-python-signal-pre-research`51- `anlogic-design`52- `anlogic-code-design`53- `anlogic-project-creation`54- `anlogic-timing-constraints`5556## Default Flow57581. Clarify the functional target and system context.592. Judge device, package, and major resource fit.603. Judge interface capabilities and bottlenecks.614. Form module partitioning, top-level architecture, and data flow.625. Produce primitive/IP/wrapper guidance.636. Decide whether the requirement has reached signal-and-timing granularity.647. If yes, hand off to `anlogic-python-signal-pre-research` before `anlogic-code-design`.658. If not, keep the task in this stage until the decomposition is complete.6667## Mandatory Handoff Rule6869When the requirement has already been decomposed into key signals, sequencing assumptions, time range, and sampling intent, do not jump directly into RTL. Hand off to `anlogic-python-signal-pre-research` first so the flow gets a saved reference-waveform baseline.7071## Output Requirements7273At minimum, output:74- recommended device or candidate devices75- key interface judgment76- rough internal resource budget77- module partitioning78- top-level architecture79- major data flow and control flow80- primitive / hard IP / wrapper / TD IP guidance for `anlogic-code-design`81- project-input guidance for `anlogic-project-creation`82- stage-routing guidance stating whether `anlogic-python-signal-pre-research` is now required83- fixed summary fields:84 - `current_stage`85 - `goal`86 - `confirmed_constraints`87 - `artifacts`88 - `decision`89 - `blocking_reason`90 - `next_action`9192## Routing Rules9394- Requirement or board context is still unclear: stay in this skill95- Requirement is decomposed to signal timing and sequence level: hand off to `anlogic-python-signal-pre-research`96- Requirement is clear enough for orchestration decisions: coordinate with `anlogic-design`97- Only after the reference baseline is ready should the flow move into `anlogic-code-design`9899## 2026-05-06 Rule: DDR Hard-IP Identity Lock100101- For DDR-class projects, needs analysis must explicitly lock:102 - board identity103 - exact device and package104 - DDR generation105 - whether the DDR subsystem is hard-IP based106- If the DDR subsystem is hard-IP based, state explicitly whether DDR pins are expected to be defined by top-level hard-IP hookup rather than normal board ADC/SDC IO planning.107- Do not allow later stages to infer this from examples. Put it in the needs-analysis conclusion.108- If two boards use different hard-IP DDR generations or different device/package bindings, treat them as different platform baselines even when their surrounding benchmark structure looks similar.