Simulate VHDL core model with C program

Discussion in 'VHDL' started by zhangyu917@gmail.com, Nov 12, 2006.

  1. 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
     
    , Nov 12, 2006
    #1
    1. Advertising

  2. 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
     
    Paul Uiterlinden, Nov 12, 2006
    #2
    1. Advertising

  3. Hans Guest

    Hi Yu,

    <> wrote in message
    news:...
    > 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
    >
     
    Hans, Nov 13, 2006
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Wade D. Peterson
    Replies:
    0
    Views:
    761
    Wade D. Peterson
    Sep 10, 2003
  2. abilash
    Replies:
    1
    Views:
    577
    Jim Lewis
    May 17, 2005
  3. afd
    Replies:
    1
    Views:
    8,353
    Colin Paul Gloster
    Mar 23, 2007
  4. Gyoung-Yoon Noh
    Replies:
    1
    Views:
    99
    James Britt
    Dec 24, 2005
  5. Ilias Lazaridis
    Replies:
    4
    Views:
    476
    Ilias Lazaridis
    Jun 21, 2011
Loading...

Share This Page