5 ms·
Fantastic work, this is an amazing project. I think myself and every other Cs / electrical eng student has dreamed of this at one time or another. It's a gigant
by bthornbury 11y ago
Fantastic work, this is an amazing project. I think myself and every other Cs / electrical eng student has dreamed of this at one time or another. It's a gigantic undertaking though and it's exciting to see it done.
The implications for teaching are great too. Having this physical reference would really cut the learning curve in computer architecture.
- minthd 11y ago>> Having this physical reference would really cut the learning curve in computer architecture. I don't know, i think having a language that supports mixing high and low levels of description to describe a processor and the tools to simulate and play with it could offer much faster learning, since you could focus on learning.
- rodgerd 11y agoIt's kind of a pity Notch abandoned 0x10c.
- frozenport 11y agoIndeed, building a VHDL/Verilog CPU is a staple of top-tier EE/CE programs. The rest is just wiring.
- pjc50 11y agoVerilog and VHDL are substantial learning curves in themselves. We could really do with a newbie-friendly alternative; I don't know whether http://www.myhdl.org/ http://www.myhdl.org/ might be it.
- minthd 11y agoMYHDL isn't compile-able(synthesizable) to hardware. I know they teach Chisel, a higher level language , in berkley. Maybe it fits software engineers and would be fun to design cpu's with.
- pjc50 11y agoBah, in that case it shouldn't be calling itself an HDL! Chisel looks more appropriate.
- pogden 11y agoTo be fair, it's Hardware Description Language, not Hardware Synthesis Language. HDLs are mostly tools to support V&V, it's just that synthesis is the most convenient way to ensure that an implementation is consistent with the HDL description.
- makomk 11y agoYeah, I believe originally all the HDLs were intended for simulation of designs which were then implemented by hand. Neither Verilog nor VHDL was processor designed for synthesis, which is probably why it's so quirky.
- minthd 11y agoI checked again , and there's a subset of MyHDL which does support synthesis, but it's at such a low level it's not very different from VHDL/Verilog. The whole MyHDL is mostly used for verification though.
- jandecaluwe 11y agoPlease. Of course it is, and that is made very clear on the home page. http://www.myhdl.org/ http://www.myhdl.org/
- gothenburg 11y agoVerilog and VHDL already simplify hardware design a lot. They seem to have a great learning curve due to the nature of hardware design. Most people gain a lot of confidence in software development and try to design hardware like they would program a system. And then they complain that Verilog and VHDL is too complex.
- pjc50 11y agoVerilog in particular leads you into that trap, though. Because you can write conventional sequential-execution programs in it, and usually have to when writing testbenches. The nomenclature of "process" and "task" imply they behave like software - and they do, in the simulator. Then there are the hoops you sometimes have to jump through in order to get the synthesis to behave as you want: "reg" is not always a D-type flip flop, and is mandatory in some places where it doesn't synthesise to one.
- sliverstorm 11y agoThe challenge of Verilog & VHDL is not learning the language, it's learning the paradigm of hardware & HDL. Everything is parallel, nothing is sequential unless otherwise specified. In themselves they are very simple, basic languages.
- Tobani 11y agoI know in our Computer Architecture class we designed a MIPS-like processor. I don't remember what software we used, but we ran it in simulation and imaged it on to an FPGA board at the end of class. We learned how to build all the components from smaller (maybe slightly higher than transistor level logic) parts. It was a great learning experience.
- gedrap 11y agoWe did similar. In year1, we completed a MU0 design (based on 1950s architecture, can't remember which computer exactly... http://digitalbyte.weebly.com/processor-design/the-mu0-processor-datapath http://digitalbyte.weebly.com/processor-design/the-mu0-proce... ). We were given a half-working design, so it was pretty simple. Then we built a micro controller mimicking some simplified early ARM designs in year 2 (ARM was very widely used at the school, I guess the fact that Steve Furber works there played a role). Starting with ALU, decoding, etc. Was pretty awesome :) In year 3, we built a simple VGA chip and uploaded it to an FPGA with a monitor connected to it. It could only draw rectangles, lines and circles but seeing it actually working was totally amazing. Definitely the best project while at the school. We were using Verilog and Xilinx toolchain, and that happened at the University of Manchester.
- Tobani 11y agoYeah its funny how alumni play the a role in the tech that gets used. I know that there was a lot of Xilinx in use on campus. I didn't do anything with FPGAs outside of the one class so I wondered how much of that was based on technical merit, etc. vs the fact that one of the Xilinx co-founders was a Rose-Hulman Alumn.
- chrisdbaldwin 11y agoThat class and Xilinx still haunt me. My team failed that project. Two of my three teammates couldn't grok Xilinx and gave up. That class catalyzed my decision to transfer out of Rose-Hulman.