Simulate VHDL core model with C program

Guest
Hi,

I have a VHDL model of a CPU core, say ARM soft core. Now, I am trying
to run some C programs on this VHDL core model to see if this core
functions right. How can I do this VHDL-C co-simulation in Modelsim? Do
I have to create some RAM model to preload the program, then feed the
RAM to the core? Is there any other ways to do this kind of simulation?

Please help, Many thanks in advance!

Yu
 
zhangyu917@gmail.com wrote:

Hi,

I have a VHDL model of a CPU core, say ARM soft core. Now, I am
trying
to run some C programs on this VHDL core model to see if this core
functions right. How can I do this VHDL-C co-simulation in Modelsim?
Do I have to create some RAM model to preload the program, then feed
the RAM to the core? Is there any other ways to do this kind of
simulation?
One way would be using Seamless by Mentor Graphics:
http://www.mentor.com/products/fv/hwsw_coverification/seamless/index.cfm

--
Paul.
www.aimcom.nl
email address: switch x and s
 
Hi Yu,

<zhangyu917@gmail.com> wrote in message
news:1163365013.779626.53820@f16g2000cwb.googlegroups.com...
Hi,

I have a VHDL model of a CPU core, say ARM soft core. Now, I am trying
to run some C programs on this VHDL core model to see if this core
functions right. How can I do this VHDL-C co-simulation in Modelsim? Do
I have to create some RAM model to preload the program, then feed the
RAM to the core?
Yes, you are correct, this is probably the simplest way. If you look at my
design (http://www.ht-lab.com/freecores/cpu8086/cpu86.html) and many others
on the web you will find a simular setup. I use some LPM memory from Altera
that can load a hex file during elaboration. Thus my development flow is

1) compile code
2) create hex file and write to work directory
3) issue a restart -f
4) run simulation, find bug
5) change code, goto 1

A nice feature of these LPM memories and Quartus is that you can do the same
on a prototype board, i.e. you can re-load the memories without reloading
your whole design,

Hans
www.ht-lab.com


Is there any other ways to do this kind of simulation?

Please help, Many thanks in advance!

Yu
 

Welcome to EDABoard.com

Sponsor

Back
Top