website | twitter

Sunday, August 17, 2008

Next Goals of My Hobby

I need my next three month research goals by next Tuesday's meeting. But it is too hard for me to write a documentation before writing source code. Because I'm a 100% pure programmer, I program therefore I am.

But I have to write something anyway. It might be better to write something fun idea before serious documentation. So my brain will switch to "writing mode" smoothly. So I made up my next three month hobby goals. This is it.

Simple Electronics Device

When I was first interested in electronics was around ten years old. I have tried a couple of electronics projects. However, I had never understood how to decide parameters of component. Sure, resistors and ohm's law are pretty easy, but capacitor, transistor, coil, such components are quite difficult. I hate numbers and I am too lazy to handle complicated equation.

Those knowledge is completely unnecessary as a programmer. But same time, I couldn't tolerate the fact that I was ignorance about electronics. So I got started to learn it again a couple of month ago. First goal is to make a simple device to communicate between a computer and real world. This is one of early attempts.

FPGA Block RAM and Demonstration

I happen to get a source code of tiny CPU in Verilog. This is quite beautiful so I bought a Spartan-3A FPGA board for $200 to test this code. FPGA is very interesting gadget. But it requires different ways of thinking against programmer's view. So I still do nothing for it. One of the problems is I don't understand how to use Block RAM. And I don't have nice idea to demonstrate it. Just running a CPU is too boring. I wish I can run the verilog CPU with fun demo perfectly.

A Compiler in Javascript

It still doesn't go beyond a joke. I have played a tiny source code in x86 assembler with GNU as. It was when I was teen that I played Z80 CPU, and I was surprised the some essence of Z80 machine code is still alive in modern CPUs (I had imagined as if modern CPU might have hundreds and thousands of generic registers, but still we call EAX register as an accumulator!). I can't say as it is good though, it is very appealing to me.

So I think that it would be fun if I will make a compiler, assembler and linker in Javascript on a web browser. It might support only one CPU and one platform like x86 linux, still it should be a good exercises.

I could write those ideas more. But this is it today.

No comments:

Post a Comment

Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 Unported License.