Methodology Guide

1. Course Philosophy: Where Does the Computer Come From?

Modern school computer science courses teach programming inside a ready-made computer. We change the paradigm: we teach building the computer itself.

Approach to Verilog. We don't hide industrial technology from children — we teach them to understand its meaning. Verilog is not a programming language. It is a hardware description language. Students should know that this is what engineers at Apple and AMD use to design chips. But they must understand: you are not writing an executable program, you are laying physical wires using text.

2. Hardware Platform: Ershov Board

We abandon breadboards with confusing wires. The student works with the Ershov Board — a laboratory platform that turns abstract code into a tangible device.

Platform ElementMethodological Purpose
CPU SocketSlot for an empty FPGA board (Tang Nano). A psychological anchor: the student inserts empty silicon that will become a processor only through their architecture.
Rotary SwitchHardware multiplexer. Allows physically switching debug focus between nodes (PC → IR → ACC → ALU).
STEP ButtonManual clock generator. The perfect tool for understanding the nature of time in digital circuits.
Peripherals16×16 matrix, joystick, switches. Used for data output and interaction with the outside world.

3. Software Environment: Bringing the Computer to Life

The main barrier in microelectronics education is overloaded professional EDA tools. The computer bring-up process is reduced to an intuitive pipeline:

1. Create Computer: The student completes the architecture in the browser. With a button press, the simulator packages the code and an invisible pin constraint file (pins.cst) into an archive.

2. Ershov Loader: The student opens a local utility and feeds it the archive. The program shows a simple synthesis log.

3. Silicon Bring-Up: With a click of "Program", the architecture is loaded into the FPGA. The computer begins to live by the rules the student wrote.

4. Debugging Tools (Freezing Time)

A normal processor runs millions of clock cycles per second — its processes are invisible. Your superpower in the classroom is the ability to freeze time. This is exactly how engineers examine real processors in labs.

The Magic of the STEP Button: Switching the processor to manual clocking makes the student the frequency generator. One press — a byte loads. Second press — decoding. Third press — the ALU result appears.

The X-Ray Switch: 8 LEDs can't show the entire processor at once. The student turns the switch to PC and sees a code line. Turns to ALU and sees the addition result. The board becomes a transparent logic analyzer.

5. Final Project: CPU v1.0 vs CPU v2.0

The final project is not just writing a program — it's a demonstration of engineering power. The finale has two stages:

CPU v1.0 (Working Build): The student programs their basic processor and writes a "Snake" game for it. The game works, but the matrix updates slowly — software rendering "eats" clock cycles.

CPU v2.0 (Hardware Acceleration): You set the task — make the processor better. The student descends to the architecture level, adds a hardware timer or a new DRAW instruction that outputs data to the matrix in hardware.

Engineering Triumph: Snake runs on CPU v2.0 and flies without lag. The student sees firsthand why new processor versions are faster than old ones.