LOGIN   :::   RECOVER PASS   :::   GET ACCOUNT    
Browse
  • Projects
  • Code (CVS)
  • Forums
  • News
  • Articles
  • Polls
  •  
    OpenCores
  • FAQ
  • CVS HowTo
  • Mission
  • Media
  • Tools
  • Sponsors
  • Mirrors
  • Logos
  • Contact us
  •  
    Tools
  • Search
      
  • Download Cores (CVSGet)
  •  
    More
  • Wishbone
  • Perlilog
  • EDA tools
  • OpenTech CD
  •  
    Navigation: All forums > Cvs-checkins > Message List > Message Post

    Message

    Reply | Reply all
    Date Prev | Date Next | Thread Prev | Thread Next Date Index | Thread Index

    From: OpenCores CVS Agent<cvs@o...>
    Date: Tue Jan 18 16:19:30 CET 2005
    Subject: [cvs-checkins] MODIFIED: sc2v ...
    Top
    Date: 00/05/01 18:16:19

    Added: sc2v/examples stmach_k.cpp stmach_k.h
    Log:
    Fixed bugs. Contribution by Harald Devos




    Revision Changes Path
    1.1 sc2v/examples/stmach_k.cpp

    http://www.opencores.org/cvsweb.shtml/sc2v/examples/stmach_k.cpp?rev=1.1&content-type=text/x-cvsweb-markup

    Index: stmach_k.cpp
    ===================================================================
    // stmach_k.cpp
    #include "stmach.h"
    void stmach_k::getnextst()
    {
    play.write(false);
    recrd.write(false);
    erase.write(false);
    save.write(false);
    address.write(false);
    switch (current_state.read()) {
    case main_st:
    if (key.read() == 1) {
    next_state.write(review_st);
    } else {
    if (key.read() == 2) {
    next_state.write(send_st);
    } else {
    next_state.write(main_st);
    }
    }
    break;

    case record_st:
    if (key.read() == 5) {
    next_state.write(begin_rec_st);
    } else {
    next_state.write(record_st);
    }
    break;

    case begin_rec_st:
    //comment over here
    recrd.write(true);
    next_state.write(message_st);
    break;

    case message_st: //comment over here
    recrd.write(true);
    if (key.read() == 6) {
    next_state.write(send_st);
    } else {
    next_state.write(message_st);
    }
    break;

    default:
    next_state.write(main_st);
    break;
    } // end switch
    } // end method

    void stmach::setstate()
    {
    current_state.write(next_state);
    }



    1.1 sc2v/examples/stmach_k.h

    http://www.opencores.org/cvsweb.shtml/sc2v/examples/stmach_k.h?rev=1.1&content-type=text/x-cvsweb-markup

    Index: stmach_k.h
    ===================================================================
    // stmach_k.h
    #include "systemc.h"
    SC_MODULE (stmach_k)
    {
    sc_in < bool > clk;
    sc_in < sc_uint < 4 > >key;
    sc_out < bool > play;
    sc_out < bool > recrd;
    sc_out < bool > erase;

    /*comment with // */ sc_out < bool > save;
    sc_out < bool > address; //comment \
    also comment
    enum vm_state
    { main_st, review_st, repeat_st, save_st,
    erase_st, send_st, address_st,
    record_st, begin_rec_st, message_st
    };
    sc_signal < vm_state > next_state;
    sc_signal < vm_state > current_state;
    void getnextst ();
    void setstate ();
    SC_CTOR (stmach) { SC_METHOD (getnextst); sensitive << key << current_state; SC_METHOD (setstate); sensitive_pos (clk); } };

     
    Copyright (c) 1999 OPENCORES.ORG. All rights reserved.