MCU/MPU design in Verilog

L

laserbeak43

Guest
Hello,
I've been looking into finding ways to use an HDL to design MCU/MPUs.
I bought a very expensive book about Digital Design that claimed to
teach you to write a Microcontroller in Verilog, but it only when it
came time to talk about the Microcontroller, it just gave me some
source code and told me about instructions. It didn't have a single
paragraph about writting and creating instructions or an ALU or
anything like that.
I have an alternative, I can take my chances with another book, this
one uses VHDL, but i'm not sure if i'll learn how to make one in this
book either. It might just give me source code as well.
Can anyone help me find a way to learn how to do this? I mean, I don't
mind trying to reverse engineer stuff, but it would take forever. If a
few things were explained to me in a book I think it would be so much
easier for me to get started.
Thanks
Malik
 
laserbeak43 wrote:
It didn't have a single
paragraph about writting and creating instructions or an ALU or
anything like that.
get a simulator and an example design

http://www.google.com/search?&q=verilog+vhdl+cpu+example
 
Hmm, i'm not sure that i would be able to learn, at the level i'm on,
with just this code or just the Opencores.org code. I think i need a
tutorial to make certain things first. Thanks a lot for the
suggestion. I'm sure i'll be looking at this thread in the near
future.

On Sep 25, 1:38 pm, pallav <pallavgu...@gmail.com> wrote:
Here is a complete mips32 example that I have been working on during
my free time:

http://pandim.ece.villanova.edu/mips32.tar.gz

You will need either Icarus Verilog or Synopsys VCS to simulate the
code. The FPU is still under development so it doesn't work.

The integer part is a simple 5-stage pipeline and implements most of
the standard MIPS32 ISA. If you can get a hold of Patterson/Hennessy
old book Computer Organization & Design : Hardware/Software Design,
you can see the block diagram there. There is also a simple
Instruction/Data cache system and external RAM module for simulation.

I also have ASM directed/random test cases and one two basic C
functions and some simple docs to show how to cross-compile GCC to
build it for MIPS. So this will give you a little bit of introduction
on running "actual" programs. You can write your own ASM test cases
and try it out.

I also have scripts for synthesis, formal verification, and NETLIST -
GDSII for the Synopsys tools so if you have access to such tools (DC
Compiler/IC Compiler), you can play around with it. Unfortunately, I
can't distribute the Synopsys 90 nm educational library so that is not
present in the tarball above. But you might be able to register on
SolvNet and download the library. Not sure.

Of course, I'm not an expert Verilog coder so I've probably done a lot
of things that are not done in practice in industry...

Hope this helps in your learning.
 

Welcome to EDABoard.com

Sponsor

Back
Top