CEG3155 hub, Laboratories
CEG 3155 · Digital Systems II · uOttawa · Fall 2026

Laboratory 4

Due Wednesday 25 November 2026 at midnight on Brightspace. The handout has not been posted, so what this page carries is the date, the module to watch, and the shape the guide takes once there is something to read.

What is known already

Due
Wednesday 25 November 2026
Midnight, on Brightspace
Laboratory
Wed 19:00 to 21:50
CBY B402
Board
Digilent Nexys A7-100T
Xilinx Artix-7 FPGA
Software
Xilinx Vivado
Windows or Linux x86 only

The date is the Wednesday one. The course runs a Monday laboratory group and a Wednesday one, and a laboratory is due at midnight on the day its group meets. Yours is the Wednesday group.

The board and the software belong to the course. Both are named in the Laboratory 1 handout and run through the term, and whether Laboratory 4 needs the board at all is answered by its own handout.

1. The gist

What the circuit has to do, described the way you would describe it to somebody who will never open the handout: what the board shows, what the switches do, and how the display behaves as you change them.

2. What actually has to be done

The marks live here

The behaviour above is the easy part. The marks are for following a fixed design method, called ASM, and showing your working at every stage. Five stages, in this order, and each one reads its input off the one before it.

  1. Write the algorithm as pseudocode. Plain register transfers, one line each, with the branches written as if and else. No hardware named yet. Laboratory 1 was given a draft in its handout, so expect the same here.
  2. Turn the pseudocode into an ASM chart. A flowchart with two shapes: a rectangle for a state, which takes exactly one clock step, and a diamond for a test, which takes no time at all. Every register the design needs is decided here.
  3. Draw the datapath. Read the hardware off the chart. Every register named in the chart becomes real storage, every value moved becomes a wire, anything transformed on the way gets a device in the path, and a register fed from more than one place gets a selector. This stage produces the list of control signal names.
  4. Redraw it as the detailed ASM chart. The same chart again, with every movement of data replaced by the names of the control signals that cause it.
  5. Design the control logic. Build the state machine that produces those signals, using the one flip flop per state method, which gives every state in your chart its own flip flop.

Only after all five do you write any VHDL. Simulating the result and running it on the board come after that, and neither is one of the five stages: they are how you check that stage 5 agrees with stage 1.

A report that shows working LEDs and skips the charts loses most of the marks.

3. The kit

The board, the software, the room, the evening, and how many people are in a group. Laboratory 1 ran on the Nexys A7-100T under Vivado 2022.1 in CBY B402, and this handout says whether any of that changes.

4. What is happening inside the circuit

The registers the design holds, what each one carries, and the two or three decisions that settle whether the circuit works at all.

5. What the reset does

Which flip flops the reset forces, the value each one takes, and what the demonstration to the teaching assistant opens with.

6. The rules that cost marks

The restrictions the marker applies. Laboratory 1 refused Verilog, refused behavioural modelling and refused ready made blocks, and it wanted a synchronous, globally resettable design stepped by an enable pulse.

7. How to approach it

What to do in the first session, what to agree before the building is split between two people, and what to leave until the two halves come back together.

8. What goes in the report

The handout's own list of what the report has to contain, and the parts of it worth planning for while the work is still going on.

What to do in the meantime

Read the Laboratory 1 guide. The design method the marks are for, the restrictions on the VHDL and the shape of the report are set out there, and the marking in this course has followed the same pattern so far. Read it as the pattern to expect, and take this laboratory's own requirements from its handout once it appears.

Settle the machine that runs Vivado before this laboratory starts. Synthesis and programming the board need Windows or Linux on x86, and an install started on the laboratory evening costs most of that evening.

Open the module on Brightspace in the week before the laboratory. The other place a handout could appear is the labs folder of the course site, which has answered 403 Forbidden since term started.

What this page is, and where it comes from

This page is a placeholder and says so. Each laboratory gets a guide in plain words once its handout is read. Laboratory 1 has one. This laboratory has no handout to read yet.

The date comes from the course outline dated 17 July 2026 and the notes from the first class on 12 September. The room, the board and the software come from the outline and the Laboratory 1 handout. Nothing here describes what Laboratory 4 asks for, because that is not known.

The handouts and the lecture slides are the professor's, so no copy of either is kept here.