As the academic school year winds down, some educators find themselves preparing to re-tool their Computer Architecture course over the summer. We here at Digilent, have a suggestion to help with that effort.
Computer Architecture is a course that most accredited ECE curriculums require for their undergraduates. Understanding the theory of data paths, control structures, memory systems and how each fit together, enables students to have strong foundations for understanding the modern computing problems they will face in industry. To meet this need, Digilent partnered with Imagination Technologies and Sarah Harris from Harvey Mudd College, to create a comprehensive course that gives students the ability to learn Computer Architecture in a integrated system context.
The course begins with fundamental digital logic gates, then moves to design of combination and sequential circuits. These are then combined into the beginning of designing a processor with the end result being a MIPS processor. Then students are exposed to the practice of building peripherals (such as RS232, SPI, interupts, analog to digital conversions, motor controllers etc.). Educators will have a choice between teaching Verilog of VHDL, since both are used in examples. In the end, the student will have built a functioning processor, intergrated peripherals and have the option to explore the additional exercises that show techniques for advanced architectures and I/O applications they will likely run into in industry, embedded system needs, heterogeneous computing and such. There is an appendix on C programming that can help solidify a students understanding of how programming is affected by processor architecture.
To help with the concepts of building a processor from the gate level to the programming of that processor, a FPGA trainer board serves as a scalable tool that helps students root the concepts into hardware they can see and touch. All of the material was designed to run on the Nexys A7-100T (formerly known as the Nexys 4DDR). This board has an entire suite of peripherals that students can stay busy learning how to connect. Peripherals such as switches, LEDs, seven segment displays, VGA, Ethernet, USB, audio, temperature sensors and accelerometers are on-board. If a lower cost version of the board is desired, the material will also port to the Nexys A7-50T and the less feature-heavy, but more cost-effective Basys 3.
Nexys A7-100T Nexys 4DDR | Nexys A7-50T | Basys 3 | |
FPGA Part | XC7A100T-1CSG324C | XC7A50T-1CSG324C | XCA35T-1CPG236C |
Logic Slices | 15,850 | 8,150 | 5,200 |
DSP Slices | 240 | 120 | 90 |
Memory | DDR2- 128MB | DDR2- 128MB | n/a |
16MB RAM | 16MB RAM | n/a | |
micro SD card | micro SD card | n/a | |
Expansion | 5 Pmod ports | 5 Pmod ports | 4 Pmod ports |
Ethernet | Yes | Yes | No |
Peripherals | PWM audio 3 axis accelerometer 16 user switches 16 green leds 2 rgb leds PDM microphone Temperature sensor Two 4-digit 7 segment displays USB HID Host 12 bit VGA | PWM audio 3 axis accelerometer 16 user switches 16 green leds 2 rgb leds PDM microphone Temperature sensor Two 4-digit 7 segment displays USB HID host 12 bit VGA | – – 16 user switches 16 green leds – – – 4 digit 7 segment display USB HID Host 12 bit VGA |
Cables: | Included micro USB | Included micro USB | |
Box: | Included | Included | Sold separately |
Price: | $265 USD | $229 USD | $149 USD |
Academic Price | Yes | Yes | Yes |
All of the boards allow for easy Pmod expansion and are eligible for academic discounts.
Relevant Resources:
- Textbook: https://www.elsevier.com/books/digital-design-and-computer-architecture/harris/978-0-12-394424-5
- Videos: https://www.youtube.com/watch?v=MRLQBT03JAs&list=PLSTiCUiN_BoJcWlxQTxbKE3VQBQhwFLDP
- Course and lab material (including the MicroAdaptiv Core) : https://booksite.elsevier.com/9780123944245/?ISBN=9780123944245
- Recomended hardware: https://digilent.com/shop/nexys-a7-fpga-trainer-board-recommended-for-ece-curriculum/
We believe that this course is unique because it allows students to experience every part of the processor development cycle. Students can first be introduced to an existing processor on a PIC32 architecture with a board such as the Digilent Wi-Fire. This gives students a frame of reference of what the “end goal” product will be. Then, they can recreate the same processor core within an FPGA and in essence, “peek under the hood”. This is a departure from most architecture classes where a processor is broken down into conceptual black boxes, and students don’t have access to the low-level hardware assembly. The combination of this style of teaching and the companion materials can help an educator get up and running quickly. All of this is why Digilent recommends this solution for Computer Architecture courses! For more information, visit: https://www.mips.com/mac/resources/
Why using the MIPS version and not the ARM one?