aes_logic.h

来自「VHDL to System C translator」· C头文件 代码 · 共 64 行

H
64
字号
#ifndef AES_LOGIC_H
#define AES_LOGIC_H

#include <systemc.h>


SC_MODULE(aes_logic) {

    sc_in<bool >  clk;
    sc_in<bool >  clr_temp;
    sc_in<sc_biguint<128> >  din;
    sc_in<sc_biguint<128> >  dkey_out;
    sc_in<sc_biguint<128> >  ekey_out;
    sc_in<bool >  enc_dec;
    sc_in<sc_uint<32> >  ftfs_out;
    sc_in<bool >  ld;
    sc_in<bool >  ld_din;
    sc_in<bool >  resetn;
    sc_in<sc_uint<4> >  sel;
    sc_in<bool >  sel_dmux;
    sc_in<bool >  sel_imux;
    sc_out<sc_biguint<128> > dout;
    sc_out<sc_uint<8> > ftfs_addr;
    sc_out<sc_uint<2> > ftsel;


    sc_signal<sc_biguint<128> > din_s;
    sc_signal<sc_biguint<128> > imux_s;
    sc_signal<sc_biguint<128> > dmux_s;
    sc_signal<sc_biguint<128> > xorkey_s;
    sc_signal<sc_biguint<128> > inputreg_s;
    sc_signal<sc_biguint<128> > resultreg_s;
    sc_signal<sc_uint<32> > xorout_s;
    sc_signal<sc_uint<32> > temp_s;
    sc_signal<sc_uint<4> > sel_dec_s;
    sc_signal<sc_uint<4> > sel_s;
    void process_line96();
    void process_line113();
    void process_line133();
    void process_line153();
    void process_line178();
    void comb_assignments();

    aes_logic(sc_module_name _n) : sc_module(_n) {
        SC_METHOD(process_line96);
        sensitive << clk  << resetn;
        SC_METHOD(process_line113);
        sensitive << clk  << resetn;
        SC_METHOD(process_line133);
        sensitive << clk  << resetn;
        SC_METHOD(process_line153);
        sensitive << sel ;
        SC_METHOD(process_line178);
        sensitive << sel_s  << inputreg_s;
        SC_METHOD(comb_assignments);
        sensitive << din << sel << sel_dmux << din_s << resultreg_s << enc_dec << ekey_out << dmux_s << dkey_out << sel_imux << xorkey_s << inputreg_s << ftfs_out << temp_s << sel_dec_s;
    }

    ~aes_logic() {}
    SC_HAS_PROCESS(aes_logic);

};
#endif

⌨️ 快捷键说明

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