Month: November 2015

Implementing MIPS Processor with VHDL

Implementing MIPS Processor with VHDL

Warning my lovely readers! The following will be a very technical article, but still, I can’t prevent your inner desire to keep reading this great article. 🙂

In my lab course on computer architecture, implementing processor in VHDL is one thing every electrical engineering student have to face. You know, it is like building your own Intel Core i7 yourself, but of course with much much much simplified processor architecture.

One of such thing is MIPS32, MIPS stands for Microprocessor without Interlocked Pipeline Stages. Cool huh?

MIPS is commonly be used for teaching processor architecture in not so great details. There are several stages every processor should have: Instruction Fetch, Instruction Decoding, Executing, Memory access, and write back. (are you confused? I’ve told you this will be very technical, it’s your fault. Keep reading!)

If you curious in the detail of the assignment, you should download the lab guide here ( unfortunately, it’s written in Indonesian only. No translation!

Instead of building our own hardware by connecting the individual physical logic gates, we’re implementing this MIPS processor in FPGA by writing VHDL code. Personally, I really enjoyed this lab course, I learned a lot when I was doing something. You know, I’m a kinesthetic learner. So I learn more and better when my hands grab something ‘real’.

As a bonus, here a screenshot of VHDL code I wrote days ago.

This is Arithmetic and Logical Unit component I wrote days ago. You really should not too hard reading the code above!

Have a nice weekend guys. 🙂

(cover image from

Where Should I Go For Internship?

Whew! I’m now in my 5th semester, with 71 credits done out of 144. Easy, 73 to go with 19 credits for this semester, which means 54 left for the last three semesters, what a nice life!

But lately I heard numerous friends are buzzing around talking about internship.

What?! Internship? Oh man, I almost forgot to prepare that! (or at least think of it). As of the curriculum for electrical engineering student, it is required to take 8 weeks internship at engineering company.

Next year (2016) local companies will open for intership. But I interested to go abroad.

Few of my friends are planning to get internship at CERN. While the others are pursuing really-prestigious-multinational-engineering-company. Hmm, I’m not really sure where to go (and most importantly, get accepted for interning).

Well, it is still one semester left to prepare myself.