⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ekeyfsm.h

📁 VHDL to System C translator
💻 H
字号:
#ifndef EKEYFSM_H
#define EKEYFSM_H

#include <systemc.h>


SC_MODULE(ekeyfsm) {

    sc_in<bool >  clk;
    sc_in<bool >  ld_key;
    sc_in<bool >  resetn;
    sc_out<bool > busy;
    sc_out<bool > dkey_done;
    sc_out<bool > dkey_mux;
    sc_out<bool > ekey_done;
    sc_out<bool > key_inp_mux;
    sc_out<bool > ld;
    sc_out<bool > ld_rk3;
    sc_out<bool > ldd;
    sc_out<sc_uint<4> > round_daddr;
    sc_out<sc_uint<4> > round_eaddr;
    sc_out<sc_uint<2> > sel_rk3;
    sc_out<sc_uint<4> > sel_sk;
    sc_out<bool > wr_dmem;


    enum state_type {s0  ,s1 ,s2 ,s3 ,s4 ,s5 ,wr0 ,s6 ,s7 ,s8 ,s10 ,s11 ,rd10 ,rd9 ,rdx};
    sc_signal<state_type > current_state;
    sc_signal<state_type > next_state;
    sc_signal<bool > ekey_done_cld;
    sc_signal<sc_uint<4> > round_daddr_cld;
    sc_signal<sc_uint<4> > round_eaddr_cld;
    sc_signal<sc_uint<2> > sel_rk3_cld;
    sc_signal<sc_uint<4> > sel_sk_cld;
    void clocked_proc();
    void nextstate_proc();
    void output_proc();
    void comb_assignments();

    ekeyfsm(sc_module_name _n) : sc_module(_n) {
        SC_METHOD(clocked_proc);
        sensitive << clk  << resetn;
        SC_METHOD(nextstate_proc);
        sensitive << current_state  << ld_key << round_daddr_cld << round_eaddr_cld << sel_rk3_cld << sel_sk_cld;
        SC_METHOD(output_proc);
        sensitive << current_state ;
        SC_METHOD(comb_assignments);
        sensitive << ekey_done_cld << round_daddr_cld << round_eaddr_cld << sel_rk3_cld << sel_sk_cld;
    }

    ~ekeyfsm() {}
    SC_HAS_PROCESS(ekeyfsm);

};
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -