100 likes | 197 Views
Logisim CPU Project. Erty Seidel Spring Term 2011. Logisim. Logic Simulation Program http://ozark.hendrix.edu/~burch/logisim/ Cross-platform ( > Java 5) Recent Update Plugins and mods FOSS (GPL) [Demonstration]. CPU Project. About one month 60-100 Hours 5 Versions (1 rebuild)
E N D
Logisim CPU Project Erty Seidel Spring Term 2011
Logisim • Logic Simulation Program • http://ozark.hendrix.edu/~burch/logisim/ • Cross-platform ( > Java 5) • Recent Update • Plugins and mods • FOSS (GPL) • [Demonstration]
CPU Project • About one month • 60-100 Hours • 5 Versions (1 rebuild) • Still in development • SVN repository • Probably should have been doing homework
Running a Program • Consult MIPS instruction set • Write out binary code • Use windows calculator to convert to hex • Write to a text document • Load into I-mem and D-mem • Run!
What Works? • [See Excel spreadsheet]
Big Problems? • No support for I-format arithmetic • Registers cannot write and read at the same time • Multiplication / Division are weird when working with highest-order bit • No branching • No exceptions • No forwarding / hazard detection
The CPU • [Demonstration]
Lessons Learned • CPUs are serious business • Simple pipelining is easy, anything more is very difficult • MIPS instructions are a bit arbitrary • The carry-in for signed subtraction must be 1
Thanks • Prof. Evans • Helped talk through problems • Jorge Seidel • Solved subtraction, mult/div issues