не могу понять операцию systemc '‹‹'

я ищу код «risc-cpu», который находится в библиотеке systemc (в частности, в папке «example»), но я не могу понять, что такое операция ‹‹ в main.cpp. в main.cpp они создают экземпляр каждого модуля и выполняют операцию ‹‹ со многими переменными sc_signal. я думаю, что это что-то вроде операции привязки, но я хочу знать точно.

ниже приведен код из main.cpp

fetch   IFU("FETCH_BLOCK");      //instiate module fetch
    IFU.init_param(delay_cycles);  //module fetch delay for delay_cycles
    IFU << ram_dataout << branch_target_address << next_pc << branch_valid
        << stall_fetch << intreq << vectno << bios_valid << icache_valid
        << pred_fetch << pred_branch_address << pred_branch_valid << ram_cs << ram_we
        << addr << ram_datain << instruction << instruction_valid << program_counter
        << intack_cpu << branch_clear << pred_fetch_valid << reset << clk;

decode  IDU("DECODE_BLOCK");   //instanciate module decode as IDU
    IDU << reset << instruction << pred_instruction << instruction_valid
        << pred_inst_valid << out_valid << destout << dout << dram_dataout
        << dram_rd_valid << destout << fdout << fout_valid << fdestout
        << branch_clear << dsp_data_valid << program_counter << pred_on
        << branch_instruction_address << next_pc << branch_valid
        << branch_target_address << mem_access << mem_address << alu_op
        << mem_write << alu_src << reg_write << src_A << src_B << forward_A
        << forward_B << stall_fetch << decode_valid << float_valid << mmx_valid
        << pid_valid << pid_data << clk;

person 이승수    schedule 18.02.2020    source источник
comment
Вам нужно найти заголовок, определяющий IFU и IDU, и начать искать, где определена перегрузка оператора ‹‹. Я не думаю, что это стандартный синтаксис systemc.   -  person Ifor    schedule 19.02.2020
comment
это будет что-то связанное с чувствительностью.   -  person Ifor    schedule 25.02.2020
comment
Спасибо. как вы сказали, оператор ‹‹ был перегружен, и он сказал, что он используется как позиционная привязка. я до сих пор не понимаю, что такое позиционная привязка, но большое спасибо!!   -  person 이승수    schedule 26.02.2020


Ответы (1)


<< — это стандартный оператор сдвига влево, который в C++ перегружен, чтобы также работать как поток. Мне кажется, они просто записывают много значений в IFU и IDU.

person kthy    schedule 18.02.2020