Monday, August 29, 2011

Designing Assembly - Activity 1

Read the chapter, verified the programs will run...  Couldn't find the tutorials to read them.  I'm going to assume I can figure it out on my own and continue.

Sunday, August 28, 2011

Registers & RAM, Activity 8

Created the 16bit counter with load and reset controls.  Turned out to be pretty straightforward.

Registers & RAM, Activity 7

RAM16K done, also easy peasy.

Registers & RAM, Activity 6

RAM4K done, easy peasy.

Registers & RAM, Activity 5

Created a RAM512!  Seemed awful familiar.  ;)

Registers & RAM, Activity 4

Created a RAM64.  Went exactly like I thought, and I even got the address pins correct on the first try.

Registers & RAM, Activity 3

Created a RAM8.  This took a little more work than I expected, but it wasn't too different from previous things.

Registers & RAM, Activity 2

Created Register.  Nothing to it.

Registers & RAM, Activity 1

Took me a while to get my head around the fact that HDL is not a programming language, but is instead trying to model chips.  That means that the wires running from chip to chip are all active at the same time.  It doesn't step through each line like a computer program.  They're all active the same time.

So this took me longer than I expected, but I finished making a Bit.

Saturday, August 27, 2011

ALU - Activity 5

Made my own ALU!  Whoo!

I ended up making my own gates for a couple bits of it...  Couldn't figure out how to do it otherwise.  Should probably revisit this later to determine if there's a way to do it without resorting to that.  If HDL let you reference individual bits for internal pins, I wouldn't have had to do it.

ALU - Activity 4

Incrementer created...  Not convinced I did it the best way, though.

ALU - Activity 3

Built a 16-bit adder.  Was quite a bit easier than I expected, though I wonder if it could have been done with fewer lines?

ALU - Activity 2

Stupid mistakes are stupid.  :D

Finished writing Full Adder.

ALU - Activity 1

Built a half-adder.  I actually had this one mostly figured out in my head before I finished reading.  Heh.

Activity 16

Built a DMUX8WAY.  These last 2 turned out to be easier than I expected.

Activity 15

Built a DMUX4WAY.

Activity 14

I've built a MUX8WAY16.  And of course, I did this the hard way, too, before I figured out how to use a MUX4WAY16 for it.

Activity 13

I've built a MUX4WAY16.  Of course, I did it the hard way first.  Heh.

Activity 12

I've built an OR8WAY.

Activity 11

I've built a MUX16.

Activity 10

I've built an OR16.

Activity 9

I've built an AND16.

Activity 8

I've built a NOT16.

Activity 7

I've built a DMux.

Activity 6

I've built a MUX.

Activity 5

I've built an XOR gate.

Activity 4

I've built an OR gate.  These are getting harder. :D

Activity 3

I've built an AND gate.

Activity 2

I've built a NOT gate.