Latest Entries »

Homemade MIDI Controller!

Since I have been home over winter break, I felt like doing a little bit of fun hacking. As a few of my posts have shown, I am fairly interested in hardware oriented projects, so I thought I would try another. I have several AVR chips and support supplies laying around, so I thought I would use them. Recently, I have also been playing around with DJing. It is fairly common to use a controller to control a DJing setup, but they are all fairly expensive. Since they are just a collection of buttons, knows, and faders, I decided it would be interesting to try to make my own.

My inspiration for this project

This post will cover what I did for the various parts as well as some of the interesting bits of code, so that you can make your own!

View full article »

Lately, I have been doing work with the Pistachio L4 microkernel as part of my research. This requires building various disk images, installing GRUB, and running them inside of a virtual machine. Initially, I was using Linux to do this, since it had all the tools ready to go and was what everyone else was using. However, I have a Mac, so I wanted to be able to use that, rather than SSHing into a server all the time. I didn’t think it would be a big deal, just install the same tools on my Mac, right? Wrong! What follows is the odyssey of what I’ve gone through to do this. Hopefully, it will help anyone else facing a similar circumstance.

View full article »

One day, I was curious about how the computer system goes from booting to actually loading up an operating system. Obviously, it must retrieve the operating system from disk at some point, so I decided to investigate this. The first step in this process is reading the MBR, or Master Boot Record of the hard drive. The MBR is used to store data about where the OS is stored on the drive.

I figured the MBR would be interesting to learn a little bit more about, so I decided to load it up into IDA Pro, a tool for disassembling programs, and see what I could find out.

This baby rhino was also curious about MBRs.


I learned a lot and had a lot of fun, so I’m presenting it here to share my results.

View full article »

PEAR, my first publication!

During my time at school, I participate in research. I have been doing this since freshman year, and have been co-author on a few papers, but have never been lead author. Well, that is now changing.

View full article »

I’m a pretty lazy person. I like to put things off, drag my feet, and make plans that I know will never come true. Perfect example, Fall 2008 I took a digital systems course where we designed a very basic (2-bit) CPU and I decided I wanted to continue working out of class to make a better one. Initially, I was actually making some progress, but quickly outgrew the basic chips (GAL chips) we were using at the time, so I screeched to a stop. After a few months of poking around, I figured out an FPGA might be a better way to go. However, these are expensive and would take a lot of effort to learn, so I put the idea on the back-burner.

Magic 1

Bill Buzbee's homemade CPU, which provided some inspiration for me.

Luckily for me though, my research group started to do some work with FPGA’s, so I was able to get some hands on experience with them. Despite having the needed tools though, I was still dragging my feet on doing any work. Well, a few days ago, I got re-inspired when I found a website about a guy called Bill Buzbee who built his own (and in my opinion) pretty complex CPU. It has all sorts of neat features such as paging and interrupts. Well, that was the inspiration I needed and now, a few days later, I’ve actually got some progress worth mentioning.

View full article »

Ever want to build your own computer?

I find hardware and electronics pretty interesting. So when I was looking around on the internet and saw a link to a home built CPU, I just had to click! A fellow named Jim has made a complete CPU, called the Magic-1, out of just 74xx series of circuits. If you haven’t used or know what 74xx series circuits are, take a look at the picture. These chips were very popular back in the day, as in, a few decades ago. Today there are faster and more powerful chips available. But because Jim used the 74xx series of chips, he was able to get much more control and learn a lot about CPU design.

These chips can make a whole CPU?!

View full article »

Websites, Propellers, and Sweet Music!

Well, I’m sure that you’ve noticed the new layout and domain name for my blog. Over winter break, I decided it was silly to have both a blog site and a school website. So, I purchased this domain (www.samkerr.com was taken) and am now going to host both sites here. My web host, A Small Orange, has a really good deal on a years worth of hosting for only $25, so Idecided to go with that. So far, it’s performing much better than my old site. If you’re in the market for a new web host, I’d appreciate you signing up through the previous link, since I get a referral bonus.

Parallax Propeller Logo

Propeller Time!

Anyways, at Christmas, I got a starter set for the Parallax Propeller microcontroller, an 8 core, 32-bit microcontroller. I really like to work with hardware and embedded type stuff, so I was really excited about this. I’ve played with AVR chips before, but this chip has a lot more power built-in, but it won’t require as much work as using an FPGA either.

View full article »

PUFs are just so cuddly!

As I wrote a few entries ago, I have been using FPGAs this semester in my research group. Since it’s the end of the semester and the paper has been submitted, I thought I would talk to you about my research some. The group that I do research with is mainly concerned with identity management and information security and this project was no exception. Specifically, the project I was working on was using Physically Unclonable Functions, or PUFs, to identify users. PUF device

View full article »

Intel Developer Forum shows off some cool stuff!

This year, the Intel Developer Forum has some pretty neat stuff to talk about. I’ve been reading their site today and the article from AnandTech about it.

The move from 4 to 6 cores with Gulftown.I’d highly recommend reading the AnandTech article since it has a lot better description (and pictures) than I could do, but the one thing that I’m really excited about is the new 32nm Gulftown chips. There supposed to have 6 cores and will come in 2010. Even better, they will drop right into my X58 motherboard after a quick BIOS update. That will save me a lot of money since I won’t have to buy a new motherboard.

Don’t get me wrong, I love my quad-core i7 cpu, but 6 cores is better than 4, right?

First steps with an FPGA!

For my research group at Purdue, we’ve decided we want to do some work with FPGA (or Field Programmable Gate Arrays). These are essentially chips that you can use to program very complex, very fast circuits. They are superior to other sorts of chips, such as DIP integrated circuits, because they are smaller, relatively cheap for all the power they have (~$10-$20), fully customizable, and FAST.

This is Xilinix Spartan FPGA, the kind I'm using.

This is Xilinix Spartan FPGA, the kind I'm using.

This was my first foray into FPGAs and it drove me crazy getting my tools all set up properly. I thought I’d post some thoughts.

View full article »

Powered by WordPress | Theme: Motion by 85ideas.