This post is by Ievgen Korotkyi, associate professor at the department of Design of Electronic Digital Equipment (DEDEC), Faculty of Electronics at the Igor Sikorsky Polytechnic Institute, Kiev, Ukraine.
Ievgen is an IoT developer/consultant at IT company Infopulse. He has a PhD in Computer Science and is the founder and coordinator of the “Lampa” Open Hardware Laboratory, part of the DEDEC department in the Faculty of Electronics at the Igor Sikorsky Kiev Polytechnic Institute.
Ukraine’s National Technical University recently played host to a hardware hackathon using MIPSfpga technology. The Igor Sikorsky Kiev Polytechnic Institute where it was held has a long history of influence in computing. It’s one of the oldest and largest technical universities in Europe and back in 1951 boasted the fastest computer in continental Europe – the MESM (Small Electronic Calculating Machine). This featuring 6000 vacuum tubes, consumed 25 kW of power and could perform approximately 3000 operations per minute. The MIPSfpga used in the hackathon was rather smaller and considerably more powerful!
The MESM (Small Electronic Calculating Machine) housed at the Igor Sikorsky Kiev Polytechnic Institute in 1951
Today, the Ukraine is moving to restore its position in the field of computer architecture and integrated circuits design. To that end many IT companies in Ukraine are working to develop devices and services for the growing Internet of Things market. Ukraine has many opportunities for outsourcing and is the source of many significant contributions to software ecosystems, for example, Opera, FreeBSD and Linux developers.
Yuri Panchul, a senior engineer in digital design and verification at Imagination Technologies recently led the autumn seminars in Kiev. The hardware used for hands-on practice were MIPSfpga-based Altera DE2 evaluation boards.
The first seminar , called “Nanometer ASIC”, was conducted by Charles Dancak who currently teaches ASIC-related courses at the University of California Santa Cruz Extension in Silicon Valley. This seminar lasted two days and covered all stages of integrated circuits design and production. It included the creation of a specification for a CMOS chip, a fabless ASIC ecosystem, a description of the RTL level System Verilog, the creation of analogue and RF parts of design, functional verification, logic synthesis, placement and routing, design for testing and fabrication and qualification.
The second seminar was conducted by Yuri Panchul, a senior hardware design engineer at Imagination Technologies who worked on the creation of the MIPS I6400 processor core. This seminar covered the MIPSfpga core.
During the seminar Yuri explained the structure and operation principle of a MIPSfpga. The MIPSfpga is based on an Imagination MIPS32 microAptiv microprocessor with cache and memory management unit for educational use. It comes with complete Verilog code suitable for simulation and for implementation on an FPGA board.
Afterwards, Yuri described how to create a system-on-chip (SoC) by connecting different peripheral devices to the MIPSfpga core via AMBA AHB-Lite, and how to programme this SoC in the C or asm languages using the GNU GCC tool chain for MIPS. After the theoretical segment, all participants of the seminar performed practical work, creating a MIPSfpga based SoC on Altera DE2 FPGA boards and wrote their communication programmes.
The evaluation boards were provided by the Department of Design of Electronic Digital Equipment (DEDEC) from the Faculty of Electronics at the Igor Sikorsky Kiev Polytechnic Institute.
The MIPSfpga seminar held at the Design of Electronic Digital Equipment (DEDEC), Faculty of Electronics at the Igor Sikorsky Polytechnic Institute, Kiev, Ukraine.
The next day after the MIPSfpga seminar was the hardware hackathon. The participants were required to create a MIPSfpga-based system that included an individually chosen sensor. This means that effectively each participant had to design three things in just one day:
- A Verilog module that interfaces to the protocol of a peripheral devices (sensors, joysticks, keyboards)
- Glue logic to interface this module to the AMBA AHB-Lite bus.
- Create a software driver in C or assembly languages.
Remarkably, some people managed to complete this tough task. The first winner was Denis Soldatov, a student of DEDEC Department, who integrated a MIPSfpga into the Maxbotix Ultrasonic Range Finder from Digilent and wrote a programme for range detection, which beeps when the distance from sensor to obstacle is less than a predetermined threshold.
Another team of winners (Sergiy Sachov and Valera Marchenko, students of DEDEC Department) implemented a 4×4 keyboard controller for the MIPSfpga SoC and developed a simple programme that displayed the code of pressed button on seven-segment indicator.
The winning teams were awarded Altera DE0-CV boards, and all participants received flash drives with MIPSfpga branding.
At the conclusion of the day the participants went home delighted with the content and the level of organisation. The teachers and students of the Igor Sikorsky Kiev Polytechnic Institute expressed their gratitude to Imagination Technologies, Yuri Panchul and Charles Dancak.
It’s clear from this event that open teaching materials such as the MIPSfpga will help Ukrainian universities to enrich their curriculum in microcontrollers and to link it to teaching computer architecture. The students and teachers at the Igor Sikorsky Kiev Polytechnic Institute look forward to working with Imagination Technologies and Europractice for MPW research ASICs in the future and hope to bootstrap ASIC design groups in Ukraine.
For those looking to team students more about designing for MIPS then sign up for the Connected MCU Lab Workshop series, taking place between the 5 January and the 31 March in the UK, Germany, Spain and Israel.