Hardware and ML tutorials

Eight consecutive lessons with commands, runnable examples, deliberate failures, expected results, and troubleshooting.

Learn by producing a result

This separate tutorial project connects the tools through small engineering attempts. Each lesson explains the problem, prerequisites, commands, expected output, and limits. Begin with a self-checking hardware example; move to GPU experiments or reference-model behavior when those match your goals.

Guided examples

Who it is for: Learners and engineers who want concrete examples connecting the portfolio tools.

First task: Run the event-counter positive and negative tests, then follow the MCP workflow lesson.

What you can produce: Passing functional checks, an intentional failure, JSON EDA reports, and optional GPU/model exercises.

Current scope: Eight lessons and runnable hardware fixtures. GPU measurements require actual CUDA hardware; model exercises and recorded-data plots have narrower evidence.

Start with the example Source and documentation

Choose a lesson

Lesson Practical outcome Hardware requirements
1. First simulation Generate and verify a counter; deliberately break and restore it Podman and the Verilog image
2. Sensor-event counter Check idle, event, reset, and wrap behavior Podman or Docker
3. MCP workflow Collect review, simulation, and synthesis JSON reports Verilog and ASIC images; no LLM account
4. GitHub hardware CI Catch functional regressions on source changes GitHub Actions
5. GEMM comparison Check and compare four FP32 implementations CUDA; recorded-data plotting needs only Python
6. Kernel generation Generate templates and interpret measured/model reports CUDA for execution
7. Spiking-tile reference Trace threshold, pipeline, and refractory behavior Python only for the model example
8. Next experiments Turn an exercise or architecture into a checked first milestone Depends on the chosen task

Evidence and contribution

The repository contains runnable positive and negative hardware fixtures and a real MCP SDK client. GPU lessons require an actual GPU for fresh timings. Model traces and recorded-data plots offer accessible routes with narrower claims. Read the validation record before reusing a result, then use the lesson template to contribute another example.