OpenCores
URL https://opencores.org/ocsvn/an-fpga-implementation-of-low-latency-noc-based-mpsoc/an-fpga-implementation-of-low-latency-noc-based-mpsoc/trunk

Subversion Repositories an-fpga-implementation-of-low-latency-noc-based-mpsoc

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /an-fpga-implementation-of-low-latency-noc-based-mpsoc/trunk/mpsoc/perl_gui/lib
    from Rev 17 to Rev 18
    Reverse comparison

Rev 17 → Rev 18

/interface/wb_master.ITC
12,29 → 12,29
'err_o' => {
'outport_type' => 'concatenate',
'connect_name' => 'err_i',
'name' => 'err_o',
'range' => '',
'connect_type' => 'input',
'range' => '',
'name' => 'err_o',
'connect_range' => '',
'default_out' => 'Active low',
'type' => 'output'
},
'stb_i' => {
'cyc_i' => {
'outport_type' => 'concatenate',
'connect_name' => 'stb_o',
'connect_name' => 'cyc_o',
'name' => 'cyc_i',
'range' => '',
'connect_type' => 'output',
'range' => '',
'name' => 'stb_i',
'connect_range' => '',
'default_out' => 'Active low',
'type' => 'input'
},
'cyc_i' => {
'stb_i' => {
'outport_type' => 'concatenate',
'connect_name' => 'cyc_o',
'connect_name' => 'stb_o',
'name' => 'stb_i',
'range' => '',
'connect_type' => 'output',
'range' => '',
'name' => 'cyc_i',
'connect_range' => '',
'default_out' => 'Active low',
'type' => 'input'
42,9 → 42,9
'dat_i' => {
'outport_type' => 'concatenate',
'connect_name' => 'dat_o',
'name' => 'dat_i',
'range' => 'Dw-1:0',
'connect_type' => 'output',
'range' => 'Dw-1:0',
'name' => 'dat_i',
'connect_range' => 'Dw-1:0',
'default_out' => 'Active low',
'type' => 'input'
52,9 → 52,9
'ack_o' => {
'outport_type' => 'concatenate',
'connect_name' => 'ack_i',
'name' => 'ack_o',
'range' => '',
'connect_type' => 'input',
'range' => '',
'name' => 'ack_o',
'connect_range' => '',
'default_out' => 'Active low',
'type' => 'output'
62,19 → 62,29
'rty_o' => {
'outport_type' => 'concatenate',
'connect_name' => 'rty_i',
'name' => 'rty_o',
'range' => '',
'connect_type' => 'input',
'range' => '',
'name' => 'rty_o',
'connect_range' => '',
'default_out' => 'Active low',
'type' => 'output'
},
'tag_i' => {
'outport_type' => 'concatenate',
'connect_name' => 'tag_o',
'name' => 'tag_i',
'range' => 'TAGw-1:0',
'connect_type' => 'output',
'connect_range' => 'TAGw-1:0',
'default_out' => 'Active low',
'type' => 'input'
},
'adr_i' => {
'outport_type' => 'concatenate',
'connect_name' => 'adr_o',
'name' => 'adr_i',
'range' => 'Aw-1:0',
'connect_type' => 'output',
'range' => 'Aw-1:0',
'name' => 'adr_i',
'connect_range' => 'Aw-1:0',
'default_out' => 'Active low',
'type' => 'input'
82,29 → 92,19
'dat_o' => {
'outport_type' => 'concatenate',
'connect_name' => 'dat_i',
'name' => 'dat_o',
'range' => 'Dw-1:0',
'connect_type' => 'input',
'range' => 'Dw-1:0',
'name' => 'dat_o',
'connect_range' => 'Dw-1:0',
'default_out' => 'Active low',
'type' => 'output'
},
'tag_i' => {
'outport_type' => 'concatenate',
'connect_name' => 'tag_o',
'connect_type' => 'output',
'range' => 'TAGw-1:0',
'name' => 'tag_i',
'connect_range' => 'TAGw-1:0',
'default_out' => 'Active low',
'type' => 'input'
},
'cti_i' => {
'outport_type' => 'concatenate',
'connect_name' => 'cti_o',
'name' => 'cti_i',
'range' => 'CTIw-1:0',
'connect_type' => 'output',
'range' => 'CTIw-1:0',
'name' => 'cti_i',
'connect_range' => 'CTIw-1:0',
'default_out' => 'Active low',
'type' => 'input'
112,30 → 112,30
'we_i' => {
'outport_type' => 'concatenate',
'connect_name' => 'we_o',
'name' => 'we_i',
'range' => '',
'connect_type' => 'output',
'range' => '',
'name' => 'we_i',
'connect_range' => '',
'default_out' => 'Active low',
'type' => 'input'
},
'sel_i' => {
'bte_i' => {
'outport_type' => 'concatenate',
'connect_name' => 'sel_o',
'connect_name' => 'bte_o',
'name' => 'bte_i',
'range' => 'BTEw-1:0',
'connect_type' => 'output',
'range' => 'SELw-1:0',
'name' => 'sel_i',
'connect_range' => 'SELw-1:0',
'connect_range' => 'BTEw-1:0',
'default_out' => 'Active low',
'type' => 'input'
},
'bte_i' => {
'sel_i' => {
'outport_type' => 'concatenate',
'connect_name' => 'bte_o',
'connect_name' => 'sel_o',
'name' => 'sel_i',
'range' => 'SELw-1:0',
'connect_type' => 'output',
'range' => 'BTEw-1:0',
'name' => 'bte_i',
'connect_range' => 'BTEw-1:0',
'connect_range' => 'SELw-1:0',
'default_out' => 'Active low',
'type' => 'input'
}
/mpsoc/tang.MPSOC File deleted
/mpsoc/ali.MPSOC File deleted
/mpsoc/mpsoc.MPSOC
1,1702 → 1,840
$mpsoc = bless( {
'socs' => {
'test' => {
'top' => bless( {
'parameters' => {
'aeMB0_AEMB_BSF' => ' 1',
'Altera_single_port_ram0_Dw' => '32',
'gpi_PORT_WIDTH' => ' 1',
'Altera_single_port_ram0_Aw' => '10',
'aeMB0_AEMB_MUL' => ' 1'
},
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'lm32_tile' => {
'top' => bless( {
'parameters' => {
'ram_Dw' => '32',
'ram_Aw' => 12,
'led_PORT_WIDTH' => ' 1'
},
'ports' => {
'ni_current_x' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'current_x',
'range' => 'ni_Xw-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
},
'ni_flit_out_wr' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_out_wr',
'range' => '',
'instance_name' => 'ni0',
'type' => 'output'
},
'ss_clk_in' => {
'intfc_name' => 'plug:clk[0]',
'intfc_port' => 'clk_i',
'range' => '',
'type' => 'output'
'instance_name' => 'clk_source0',
'type' => 'input'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'clk_source0_reset_in' => {
'intfc_port' => 'reset_i',
'intfc_name' => 'plug:reset[0]',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
},
'aeMB0_sys_ena_i' => {
'intfc_port' => 'enable_i',
'intfc_name' => 'plug:enable[0]',
'instance_name' => 'aeMB0',
'range' => '',
'type' => 'input'
'led_port_o' => {
'intfc_name' => 'IO',
'intfc_port' => 'IO',
'range' => 'led_PORT_WIDTH-1 : 0',
'instance_name' => 'gpo0',
'type' => 'output'
},
'gpi_port_i' => {
'intfc_port' => 'IO',
'intfc_name' => 'IO',
'instance_name' => 'gpi0',
'range' => 'gpi_PORT_WIDTH-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'clk_source0_clk_in' => {
'intfc_port' => 'clk_i',
'intfc_name' => 'plug:clk[0]',
'instance_name' => 'clk_source0',
'ni_flit_out' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_out',
'range' => 'ni_Fw-1 : 0',
'instance_name' => 'ni0',
'type' => 'output'
},
'ni_current_y' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'current_y',
'range' => 'ni_Yw-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
},
'ni_credit_out' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'credit_out',
'range' => 'ni_V-1: 0',
'instance_name' => 'ni0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_in_wr',
'range' => '',
'instance_name' => 'ni0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
},
'interface' => {
'plug:enable[0]' => {
'ports' => {
'aeMB0_sys_ena_i' => {
'intfc_port' => 'enable_i',
'instance_name' => 'aeMB0',
'range' => '',
'ni_credit_in' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'credit_in',
'range' => 'ni_V-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
},
'ss_reset_in' => {
'intfc_name' => 'plug:reset[0]',
'intfc_port' => 'reset_i',
'range' => '',
'instance_name' => 'clk_source0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_in',
'range' => 'ni_Fw-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
}
},
'interface' => {
'IO' => {
'ports' => {
'led_port_o' => {
'intfc_port' => 'IO',
'range' => 'led_PORT_WIDTH-1 : 0',
'instance_name' => 'gpo0',
'type' => 'output'
}
}
},
'socket:ni[0]' => {
'ports' => {
'ni_current_x' => {
'intfc_port' => 'current_x',
'range' => 'ni_Xw-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
}
}
},
'socket:ni[0]' => {
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'instance_name' => 'ni0',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'instance_name' => 'ni0',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'instance_name' => 'ni0',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'instance_name' => 'ni0',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'instance_name' => 'ni0',
},
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'range' => '',
'instance_name' => 'ni0',
'type' => 'output'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'range' => 'ni_Yw-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'range' => 'ni_Fw-1 : 0',
'instance_name' => 'ni0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'range' => 'ni_V-1: 0',
'instance_name' => 'ni0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'range' => '',
'instance_name' => 'ni0',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'range' => 'ni_V-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'range' => 'ni_Fw-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
}
}
},
'plug:clk[0]' => {
'ports' => {
'ss_clk_in' => {
'intfc_port' => 'clk_i',
'range' => '',
'instance_name' => 'clk_source0',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'instance_name' => 'ni0',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
}
},
'IO' => {
'ports' => {
'gpi_port_i' => {
'intfc_port' => 'IO',
'instance_name' => 'gpi0',
'range' => 'gpi_PORT_WIDTH-1 : 0',
'type' => 'input'
}
}
},
'plug:clk[0]' => {
'ports' => {
'clk_source0_clk_in' => {
'intfc_port' => 'clk_i',
}
}
},
'plug:reset[0]' => {
'ports' => {
'ss_reset_in' => {
'intfc_port' => 'reset_i',
'range' => '',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
}
}
},
'plug:reset[0]' => {
'ports' => {
'clk_source0_reset_in' => {
'intfc_port' => 'reset_i',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
}
}
}
},
'tiles' => {
'1' => {
'parameters' => {
'aeMB0_AEMB_BSF' => ' 1',
'Altera_single_port_ram0_Dw' => '32',
'gpi_PORT_WIDTH' => '1',
'Altera_single_port_ram0_Aw' => 15,
'aeMB0_AEMB_MUL' => ' 1'
}
}
}
},
'0' => {
'parameters' => {
'aeMB0_AEMB_BSF' => ' 1',
'Altera_single_port_ram0_Dw' => '32',
'gpi_PORT_WIDTH' => '1',
'Altera_single_port_ram0_Aw' => 13,
'aeMB0_AEMB_MUL' => ' 1'
}
}
},
'instance_ids' => {
'gpi0' => {
'parameters' => {
'gpi_PORT_WIDTH' => {
'info' => 'Input port width ',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,32,1',
'redefine_param' => 1,
'type' => 'Spin-button'
}
'instance_ids' => {
'clk_source0' => {
'ports' => {
'ss_clk_in' => {
'intfc_name' => 'plug:clk[0]',
'intfc_port' => 'clk_i',
'range' => '',
'type' => 'input'
},
'ss_reset_in' => {
'intfc_name' => 'plug:reset[0]',
'intfc_port' => 'reset_i',
'range' => '',
'type' => 'input'
}
},
'module_name' => 'clk_source',
'category' => 'source',
'instance' => 'ss',
'module' => 'clk_source'
},
'lm320' => {
'module_name' => 'lm32',
'category' => 'Processor',
'instance' => 'lm32',
'module' => 'lm32'
},
'gpo0' => {
'parameters' => {
'led_PORT_WIDTH' => {
'info' => 'output port width',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,32,1',
'type' => 'Spin-button',
'redefine_param' => 1
}
},
'ports' => {
'led_port_o' => {
'intfc_name' => 'IO',
'intfc_port' => 'IO',
'range' => 'led_PORT_WIDTH-1 : 0',
'type' => 'output'
}
},
'ports' => {
'gpi_port_i' => {
'intfc_port' => 'IO',
'intfc_name' => 'IO',
'range' => 'gpi_PORT_WIDTH-1 : 0',
'type' => 'input'
}
},
'module_name' => 'gpi',
'category' => 'GPI',
'instance' => 'gpi',
'module' => 'gpi'
},
'aeMB0' => {
'parameters' => {
'aeMB0_AEMB_BSF' => {
'info' => '1: aeMB with hardware barrel shifter
0:aeMB without haedware barrel shifter',
'deafult' => ' 1',
'module_name' => 'gpo',
'category' => 'GPI',
'instance' => 'led',
'module' => 'gpo'
},
'ni0' => {
'parameters' => {
'ni_NX' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_Fpay' => {
'info' => undef,
'deafult' => ' 32',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_TOPOLOGY' => {
'info' => undef,
'deafult' => '"MESH"',
'global_param' => 1,
'content' => '1,0',
'redefine_param' => 1,
'type' => 'Combo-box'
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'aeMB0_AEMB_MUL' => {
'info' => '1: aeMB with hardware multiplier
0: aeMB without harware multiplier',
'deafult' => ' 1',
'ni_B' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_NY' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_V' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_ROUTE_TYPE' => {
'info' => undef,
'deafult' => '"DETERMINISTIC"',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_P' => {
'info' => undef,
'deafult' => ' 5',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_DEBUG_EN' => {
'info' => undef,
'deafult' => '0',
'global_param' => 1,
'content' => '1,0',
'redefine_param' => 1,
'type' => 'Combo-box'
}
},
'ports' => {
'aeMB0_sys_ena_i' => {
'intfc_port' => 'enable_i',
'intfc_name' => 'plug:enable[0]',
'range' => '',
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_ROUTE_NAME' => {
'info' => undef,
'deafult' => '"XY"',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
}
},
'ports' => {
'ni_current_x' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'current_x',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
}
},
'module_name' => 'aeMB_top',
'category' => 'Processor',
'instance' => 'aeMB0',
'module' => 'aeMB'
},
'clk_source0' => {
'ports' => {
'clk_source0_reset_in' => {
'intfc_port' => 'reset_i',
'intfc_name' => 'plug:reset[0]',
'range' => '',
'type' => 'input'
},
'clk_source0_clk_in' => {
'intfc_port' => 'clk_i',
'intfc_name' => 'plug:clk[0]',
'range' => '',
'type' => 'input'
}
},
'module_name' => 'clk_source',
'category' => 'source',
'instance' => 'clk_source0',
'module' => 'clk_source'
},
'wishbone_bus0' => {
'module_name' => 'wishbone_bus',
'category' => 'bus',
'instance' => 'bus',
'module' => 'wishbone_bus'
},
'ni0' => {
'parameters' => {
'ni_TOPOLOGY' => {
'info' => undef,
'deafult' => ' "MESH"',
'global_param' => 1,
'content' => '"MESH", "TORUS"',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_flit_out_wr' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_out_wr',
'range' => '',
'type' => 'output'
},
'ni_current_y' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'current_y',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_out',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_NX' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_B' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_NY' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_DEBUG_EN' => {
'info' => undef,
'deafult' => ' 1',
'global_param' => 1,
'content' => '0,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_V' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_ROUTE_NAME' => {
'info' => undef,
'deafult' => '"XY" ',
'global_param' => 1,
'content' => ' "XY" ,"WEST_FIRST","NORTH_LAST" , "NEGETIVE_FIRST", "DUATO"',
'redefine_param' => 1,
'type' => 'Fixed'
}
'ni_credit_out' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'credit_out',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_in_wr',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'credit_in',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_in',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
},
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'intfc_name' => 'socket:ni[0]',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'intfc_name' => 'socket:ni[0]',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
},
'module_name' => 'ni',
'category' => 'NoC',
'instance' => 'ni',
'module' => 'ni'
},
'Altera_single_port_ram0' => {
'parameters' => {
'Altera_single_port_ram0_Dw' => {
'info' => undef,
'deafult' => '32',
'global_param' => 1,
'content' => '8,1024,1',
'redefine_param' => 1,
'type' => 'Spin-button'
},
'Altera_single_port_ram0_Aw' => {
'info' => undef,
'deafult' => '10',
'global_param' => 1,
'content' => '4,31,1',
'redefine_param' => 1,
'type' => 'Spin-button'
}
},
'module_name' => 'Altera_single_port_ram',
'category' => 'RAM',
'instance' => 'Altera_single_port_ram0',
'module' => 'Altera_single_port_ram'
}
}
}, 'ip_gen' ),
'tile_nums' => [
0,
1,
2
]
},
'test1' => {
'top' => bless( {
'parameters' => {
'aeMB0_AEMB_BSF' => ' 1',
'Altera_single_port_ram0_Dw' => '32',
'gpi_PORT_WIDTH' => ' 1',
'Altera_single_port_ram0_Aw' => '10',
'aeMB0_AEMB_MUL' => ' 1'
},
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => '',
'type' => 'output'
'module_name' => 'ni',
'category' => 'NoC',
'instance' => 'ni',
'module' => 'ni'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'clk_source0_reset_in' => {
'intfc_port' => 'reset_i',
'intfc_name' => 'plug:reset[0]',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
},
'aeMB0_sys_ena_i' => {
'intfc_port' => 'enable_i',
'intfc_name' => 'plug:enable[0]',
'instance_name' => 'aeMB0',
'range' => '',
'type' => 'input'
},
'gpi_port_i' => {
'intfc_port' => 'IO',
'intfc_name' => 'IO',
'instance_name' => 'gpi0',
'range' => 'gpi_PORT_WIDTH-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'wishbone_bus0' => {
'module_name' => 'wishbone_bus',
'category' => 'bus',
'instance' => 'bus',
'module' => 'wishbone_bus'
},
'Altera_single_port_ram0' => {
'parameters' => {
'ram_Dw' => {
'info' => undef,
'deafult' => '32',
'global_param' => 1,
'content' => '8,1024,1',
'type' => 'Spin-button',
'redefine_param' => 1
},
'ram_Aw' => {
'info' => undef,
'deafult' => 12,
'global_param' => 1,
'content' => '4,31,1',
'type' => 'Spin-button',
'redefine_param' => 1
}
},
'module_name' => 'Altera_single_port_ram',
'category' => 'RAM',
'instance' => 'ram',
'module' => 'Altera_single_port_ram'
},
'timer0' => {
'module_name' => 'timer',
'category' => 'TIM',
'instance' => 'timer',
'module' => 'timer'
}
}
}, 'ip_gen' ),
'tile_nums' => [
2,
3
]
},
'aemb_tile' => {
'top' => bless( {
'parameters' => {
'ram_Dw' => '32',
'ram_Aw' => 12,
'led_PORT_WIDTH' => ' 1'
},
'ports' => {
'ni_current_x' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'current_x',
'range' => 'ni_Xw-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
},
'ni_flit_out_wr' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_out_wr',
'range' => '',
'instance_name' => 'ni0',
'type' => 'output'
},
'ss_clk_in' => {
'intfc_name' => 'plug:clk[0]',
'intfc_port' => 'clk_i',
'range' => '',
'instance_name' => 'clk_source0',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'clk_source0_clk_in' => {
'intfc_port' => 'clk_i',
'intfc_name' => 'plug:clk[0]',
'instance_name' => 'clk_source0',
'aeMB_sys_ena_i' => {
'intfc_name' => 'plug:enable[0]',
'intfc_port' => 'enable_i',
'range' => '',
'instance_name' => 'aeMB0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
},
'interface' => {
'plug:enable[0]' => {
'ports' => {
'aeMB0_sys_ena_i' => {
'intfc_port' => 'enable_i',
'instance_name' => 'aeMB0',
'range' => '',
'type' => 'input'
}
}
},
'socket:ni[0]' => {
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'instance_name' => 'ni0',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'instance_name' => 'ni0',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'instance_name' => 'ni0',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'instance_name' => 'ni0',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'instance_name' => 'ni0',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'instance_name' => 'ni0',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
}
'led_port_o' => {
'intfc_name' => 'IO',
'intfc_port' => 'IO',
'range' => 'led_PORT_WIDTH-1 : 0',
'instance_name' => 'gpo0',
'type' => 'output'
},
'ni_flit_out' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_out',
'range' => 'ni_Fw-1 : 0',
'instance_name' => 'ni0',
'type' => 'output'
},
'ni_current_y' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'current_y',
'range' => 'ni_Yw-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
},
'IO' => {
'ports' => {
'gpi_port_i' => {
'intfc_port' => 'IO',
'instance_name' => 'gpi0',
'range' => 'gpi_PORT_WIDTH-1 : 0',
'type' => 'input'
}
}
},
'plug:clk[0]' => {
'ports' => {
'clk_source0_clk_in' => {
'intfc_port' => 'clk_i',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
}
}
'ni_credit_out' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'credit_out',
'range' => 'ni_V-1: 0',
'instance_name' => 'ni0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_in_wr',
'range' => '',
'instance_name' => 'ni0',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'credit_in',
'range' => 'ni_V-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
},
'ss_reset_in' => {
'intfc_name' => 'plug:reset[0]',
'intfc_port' => 'reset_i',
'range' => '',
'instance_name' => 'clk_source0',
'type' => 'input'
},
'plug:reset[0]' => {
'ports' => {
'clk_source0_reset_in' => {
'intfc_port' => 'reset_i',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
}
}
}
'ni_flit_in' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_in',
'range' => 'ni_Fw-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
}
},
'instance_ids' => {
'gpi0' => {
'parameters' => {
'gpi_PORT_WIDTH' => {
'info' => 'Input port width ',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,32,1',
'redefine_param' => 1,
'type' => 'Spin-button'
}
},
'ports' => {
'gpi_port_i' => {
'intfc_port' => 'IO',
'intfc_name' => 'IO',
'range' => 'gpi_PORT_WIDTH-1 : 0',
'type' => 'input'
}
},
'module_name' => 'gpi',
'category' => 'GPI',
'instance' => 'gpi',
'module' => 'gpi'
},
'aeMB0' => {
'parameters' => {
'aeMB0_AEMB_BSF' => {
'info' => '1: aeMB with hardware barrel shifter
0:aeMB without haedware barrel shifter',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,0',
'redefine_param' => 1,
'type' => 'Combo-box'
},
'aeMB0_AEMB_MUL' => {
'info' => '1: aeMB with hardware multiplier
0: aeMB without harware multiplier',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,0',
'redefine_param' => 1,
'type' => 'Combo-box'
}
},
'ports' => {
'aeMB0_sys_ena_i' => {
'intfc_port' => 'enable_i',
'intfc_name' => 'plug:enable[0]',
'range' => '',
'type' => 'input'
}
},
'module_name' => 'aeMB_top',
'category' => 'Processor',
'instance' => 'aeMB0',
'module' => 'aeMB'
},
'clk_source0' => {
'ports' => {
'clk_source0_reset_in' => {
'intfc_port' => 'reset_i',
'intfc_name' => 'plug:reset[0]',
'range' => '',
'type' => 'input'
},
'clk_source0_clk_in' => {
'intfc_port' => 'clk_i',
'intfc_name' => 'plug:clk[0]',
'interface' => {
'plug:enable[0]' => {
'ports' => {
'aeMB_sys_ena_i' => {
'intfc_port' => 'enable_i',
'range' => '',
'instance_name' => 'aeMB0',
'type' => 'input'
}
},
'module_name' => 'clk_source',
'category' => 'source',
'instance' => 'clk_source0',
'module' => 'clk_source'
},
'wishbone_bus0' => {
'module_name' => 'wishbone_bus',
'category' => 'bus',
'instance' => 'bus',
'module' => 'wishbone_bus'
},
'ni0' => {
'parameters' => {
'ni_TOPOLOGY' => {
'info' => undef,
'deafult' => ' "MESH"',
'global_param' => 1,
'content' => '"MESH", "TORUS"',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_NX' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_B' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_NY' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_DEBUG_EN' => {
'info' => undef,
'deafult' => ' 1',
'global_param' => 1,
'content' => '0,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_V' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_ROUTE_NAME' => {
'info' => undef,
'deafult' => '"XY" ',
'global_param' => 1,
'content' => ' "XY" ,"WEST_FIRST","NORTH_LAST" , "NEGETIVE_FIRST", "DUATO"',
'redefine_param' => 1,
'type' => 'Fixed'
}
},
}
},
'IO' => {
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'intfc_name' => 'socket:ni[0]',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'intfc_name' => 'socket:ni[0]',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
'led_port_o' => {
'intfc_port' => 'IO',
'range' => 'led_PORT_WIDTH-1 : 0',
'instance_name' => 'gpo0',
'type' => 'output'
}
},
'module_name' => 'ni',
'category' => 'NoC',
'instance' => 'ni',
'module' => 'ni'
}
},
'Altera_single_port_ram0' => {
'parameters' => {
'Altera_single_port_ram0_Dw' => {
'info' => undef,
'deafult' => '32',
'global_param' => 1,
'content' => '8,1024,1',
'redefine_param' => 1,
'type' => 'Spin-button'
},
'Altera_single_port_ram0_Aw' => {
'info' => undef,
'deafult' => '10',
'global_param' => 1,
'content' => '4,31,1',
'redefine_param' => 1,
'type' => 'Spin-button'
}
},
'module_name' => 'Altera_single_port_ram',
'category' => 'RAM',
'instance' => 'Altera_single_port_ram0',
'module' => 'Altera_single_port_ram'
}
}
}, 'ip_gen' ),
'tile_nums' => [
4,
5,
6
]
},
'test3' => {
'top' => bless( {
'parameters' => {
'aeMB0_AEMB_BSF' => ' 1',
'Altera_single_port_ram0_Dw' => '32',
'gpi_PORT_WIDTH' => ' 1',
'Altera_single_port_ram0_Aw' => '10',
'aeMB0_AEMB_MUL' => ' 1'
},
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'clk_source0_reset_in' => {
'intfc_port' => 'reset_i',
'intfc_name' => 'plug:reset[0]',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
},
'aeMB0_sys_ena_i' => {
'intfc_port' => 'enable_i',
'intfc_name' => 'plug:enable[0]',
'instance_name' => 'aeMB0',
'range' => '',
'type' => 'input'
},
'gpi_port_i' => {
'intfc_port' => 'IO',
'intfc_name' => 'IO',
'instance_name' => 'gpi0',
'range' => 'gpi_PORT_WIDTH-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'clk_source0_clk_in' => {
'intfc_port' => 'clk_i',
'intfc_name' => 'plug:clk[0]',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
},
'interface' => {
'plug:enable[0]' => {
'ports' => {
'aeMB0_sys_ena_i' => {
'intfc_port' => 'enable_i',
'instance_name' => 'aeMB0',
'socket:ni[0]' => {
'ports' => {
'ni_current_x' => {
'intfc_port' => 'current_x',
'range' => 'ni_Xw-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
},
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'range' => '',
'instance_name' => 'ni0',
'type' => 'output'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'range' => 'ni_Yw-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'range' => 'ni_Fw-1 : 0',
'instance_name' => 'ni0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'range' => 'ni_V-1: 0',
'instance_name' => 'ni0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'range' => '',
'instance_name' => 'ni0',
'type' => 'input'
}
}
},
'socket:ni[0]' => {
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'range' => 'ni_V-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'range' => 'ni_Fw-1 : 0',
'instance_name' => 'ni0',
'type' => 'input'
}
}
},
'plug:clk[0]' => {
'ports' => {
'ss_clk_in' => {
'intfc_port' => 'clk_i',
'range' => '',
'instance_name' => 'clk_source0',
'type' => 'input'
}
}
},
'plug:reset[0]' => {
'ports' => {
'ss_reset_in' => {
'intfc_port' => 'reset_i',
'range' => '',
'instance_name' => 'clk_source0',
'type' => 'input'
}
}
}
},
'instance_ids' => {
'aeMB0' => {
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'instance_name' => 'ni0',
'aeMB_sys_ena_i' => {
'intfc_name' => 'plug:enable[0]',
'intfc_port' => 'enable_i',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'instance_name' => 'ni0',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'instance_name' => 'ni0',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'instance_name' => 'ni0',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'instance_name' => 'ni0',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'instance_name' => 'ni0',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
}
'type' => 'input'
}
},
'module_name' => 'aeMB_top',
'category' => 'Processor',
'instance' => 'aeMB',
'module' => 'aeMB'
},
'IO' => {
'ports' => {
'gpi_port_i' => {
'intfc_port' => 'IO',
'instance_name' => 'gpi0',
'range' => 'gpi_PORT_WIDTH-1 : 0',
'type' => 'input'
}
}
},
'plug:clk[0]' => {
'gpo0' => {
'parameters' => {
'led_PORT_WIDTH' => {
'info' => 'output port width',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,32,1',
'type' => 'Spin-button',
'redefine_param' => 1
}
},
'ports' => {
'clk_source0_clk_in' => {
'intfc_port' => 'clk_i',
'instance_name' => 'clk_source0',
'led_port_o' => {
'intfc_name' => 'IO',
'intfc_port' => 'IO',
'range' => 'led_PORT_WIDTH-1 : 0',
'type' => 'output'
}
},
'module_name' => 'gpo',
'category' => 'GPI',
'instance' => 'led',
'module' => 'gpo'
},
'wishbone_bus0' => {
'module_name' => 'wishbone_bus',
'category' => 'bus',
'instance' => 'bus',
'module' => 'wishbone_bus'
},
'int_ctrl0' => {
'module_name' => 'int_ctrl',
'category' => 'interrupt',
'instance' => 'int_ctrl',
'module' => 'int_ctrl'
},
'Altera_single_port_ram0' => {
'parameters' => {
'ram_Dw' => {
'info' => undef,
'deafult' => '32',
'global_param' => 1,
'content' => '8,1024,1',
'type' => 'Spin-button',
'redefine_param' => 1
},
'ram_Aw' => {
'info' => undef,
'deafult' => 12,
'global_param' => 1,
'content' => '4,31,1',
'type' => 'Spin-button',
'redefine_param' => 1
}
},
'module_name' => 'Altera_single_port_ram',
'category' => 'RAM',
'instance' => 'ram',
'module' => 'Altera_single_port_ram'
},
'clk_source0' => {
'ports' => {
'ss_clk_in' => {
'intfc_name' => 'plug:clk[0]',
'intfc_port' => 'clk_i',
'range' => '',
'type' => 'input'
},
'ss_reset_in' => {
'intfc_name' => 'plug:reset[0]',
'intfc_port' => 'reset_i',
'range' => '',
'type' => 'input'
}
}
},
'plug:reset[0]' => {
'ports' => {
'clk_source0_reset_in' => {
'intfc_port' => 'reset_i',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
}
}
}
},
'instance_ids' => {
'gpi0' => {
'parameters' => {
'gpi_PORT_WIDTH' => {
'info' => 'Input port width ',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,32,1',
'redefine_param' => 1,
'type' => 'Spin-button'
}
},
'ports' => {
'gpi_port_i' => {
'intfc_port' => 'IO',
'intfc_name' => 'IO',
'range' => 'gpi_PORT_WIDTH-1 : 0',
'type' => 'input'
}
},
'module_name' => 'gpi',
'category' => 'GPI',
'instance' => 'gpi',
'module' => 'gpi'
},
'aeMB0' => {
'parameters' => {
'aeMB0_AEMB_BSF' => {
'info' => '1: aeMB with hardware barrel shifter
0:aeMB without haedware barrel shifter',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,0',
'redefine_param' => 1,
'type' => 'Combo-box'
},
'aeMB0_AEMB_MUL' => {
'info' => '1: aeMB with hardware multiplier
0: aeMB without harware multiplier',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,0',
'redefine_param' => 1,
'type' => 'Combo-box'
}
},
'ports' => {
'aeMB0_sys_ena_i' => {
'intfc_port' => 'enable_i',
'intfc_name' => 'plug:enable[0]',
'range' => '',
'type' => 'input'
}
},
'module_name' => 'aeMB_top',
'category' => 'Processor',
'instance' => 'aeMB0',
'module' => 'aeMB'
},
'clk_source0' => {
'ports' => {
'clk_source0_reset_in' => {
'intfc_port' => 'reset_i',
'intfc_name' => 'plug:reset[0]',
'range' => '',
'type' => 'input'
},
'clk_source0_clk_in' => {
'intfc_port' => 'clk_i',
'intfc_name' => 'plug:clk[0]',
'range' => '',
'type' => 'input'
}
},
'module_name' => 'clk_source',
'category' => 'source',
'instance' => 'clk_source0',
'module' => 'clk_source'
},
'wishbone_bus0' => {
'module_name' => 'wishbone_bus',
'category' => 'bus',
'instance' => 'bus',
'module' => 'wishbone_bus'
},
'ni0' => {
'parameters' => {
'ni_TOPOLOGY' => {
},
'module_name' => 'clk_source',
'category' => 'source',
'instance' => 'ss',
'module' => 'clk_source'
},
'ni0' => {
'parameters' => {
'ni_NX' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_Fpay' => {
'info' => undef,
'deafult' => ' "MESH"',
'deafult' => ' 32',
'global_param' => 1,
'content' => '"MESH", "TORUS"',
'redefine_param' => 1,
'type' => 'Fixed'
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_NX' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_B' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_NY' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_DEBUG_EN' => {
'info' => undef,
'deafult' => ' 1',
'global_param' => 1,
'content' => '0,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_V' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_ROUTE_NAME' => {
'info' => undef,
'deafult' => '"XY" ',
'global_param' => 1,
'content' => ' "XY" ,"WEST_FIRST","NORTH_LAST" , "NEGETIVE_FIRST", "DUATO"',
'redefine_param' => 1,
'type' => 'Fixed'
}
},
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'intfc_name' => 'socket:ni[0]',
'range' => '',
'type' => 'output'
'ni_TOPOLOGY' => {
'info' => undef,
'deafult' => '"MESH"',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_B' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_NY' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_V-1: 0',
'type' => 'output'
'ni_V' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'intfc_name' => 'socket:ni[0]',
'range' => '',
'type' => 'input'
'ni_ROUTE_TYPE' => {
'info' => undef,
'deafult' => '"DETERMINISTIC"',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_P' => {
'info' => undef,
'deafult' => ' 5',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
},
'module_name' => 'ni',
'category' => 'NoC',
'instance' => 'ni',
'module' => 'ni'
},
'Altera_single_port_ram0' => {
'parameters' => {
'Altera_single_port_ram0_Dw' => {
'info' => undef,
'deafult' => '32',
'global_param' => 1,
'content' => '8,1024,1',
'redefine_param' => 1,
'type' => 'Spin-button'
},
'Altera_single_port_ram0_Aw' => {
'info' => undef,
'deafult' => '10',
'global_param' => 1,
'content' => '4,31,1',
'redefine_param' => 1,
'type' => 'Spin-button'
}
},
'module_name' => 'Altera_single_port_ram',
'category' => 'RAM',
'instance' => 'Altera_single_port_ram0',
'module' => 'Altera_single_port_ram'
}
}
}, 'ip_gen' ),
'tile_nums' => [
7
]
},
'test2' => {
'top' => bless( {
'parameters' => {
'aeMB0_AEMB_BSF' => ' 1',
'Altera_single_port_ram0_Dw' => '32',
'gpi_PORT_WIDTH' => ' 1',
'Altera_single_port_ram0_Aw' => '10',
'aeMB0_AEMB_MUL' => ' 1'
},
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'clk_source0_reset_in' => {
'intfc_port' => 'reset_i',
'intfc_name' => 'plug:reset[0]',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
},
'aeMB0_sys_ena_i' => {
'intfc_port' => 'enable_i',
'intfc_name' => 'plug:enable[0]',
'instance_name' => 'aeMB0',
'range' => '',
'type' => 'input'
},
'gpi_port_i' => {
'intfc_port' => 'IO',
'intfc_name' => 'IO',
'instance_name' => 'gpi0',
'range' => 'gpi_PORT_WIDTH-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'clk_source0_clk_in' => {
'intfc_port' => 'clk_i',
'intfc_name' => 'plug:clk[0]',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
},
'interface' => {
'plug:enable[0]' => {
'ports' => {
'aeMB0_sys_ena_i' => {
'intfc_port' => 'enable_i',
'instance_name' => 'aeMB0',
'range' => '',
'type' => 'input'
}
}
},
'socket:ni[0]' => {
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'instance_name' => 'ni0',
'range' => '',
'type' => 'output'
'ni_DEBUG_EN' => {
'info' => undef,
'deafult' => '0',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'instance_name' => 'ni0',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
'ni_ROUTE_NAME' => {
'info' => undef,
'deafult' => '"XY"',
'global_param' => 1,
'content' => '',
'type' => 'Fixed',
'redefine_param' => 1
}
},
'ports' => {
'ni_current_x' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'current_x',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ni_flit_out_wr' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_out_wr',
'range' => '',
'type' => 'output'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'instance_name' => 'ni0',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'ni_current_y' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'current_y',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_out',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'credit_out',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'instance_name' => 'ni0',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'instance_name' => 'ni0',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'instance_name' => 'ni0',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
}
},
'IO' => {
'ports' => {
'gpi_port_i' => {
'intfc_port' => 'IO',
'instance_name' => 'gpi0',
'range' => 'gpi_PORT_WIDTH-1 : 0',
'type' => 'input'
}
}
},
'plug:clk[0]' => {
'ports' => {
'clk_source0_clk_in' => {
'intfc_port' => 'clk_i',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
}
}
},
'plug:reset[0]' => {
'ports' => {
'clk_source0_reset_in' => {
'intfc_port' => 'reset_i',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
}
}
}
},
'instance_ids' => {
'gpi0' => {
'parameters' => {
'gpi_PORT_WIDTH' => {
'info' => 'Input port width ',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,32,1',
'redefine_param' => 1,
'type' => 'Spin-button'
}
},
'ports' => {
'gpi_port_i' => {
'intfc_port' => 'IO',
'intfc_name' => 'IO',
'range' => 'gpi_PORT_WIDTH-1 : 0',
'type' => 'input'
}
},
'module_name' => 'gpi',
'category' => 'GPI',
'instance' => 'gpi',
'module' => 'gpi'
},
'aeMB0' => {
'parameters' => {
'aeMB0_AEMB_BSF' => {
'info' => '1: aeMB with hardware barrel shifter
0:aeMB without haedware barrel shifter',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,0',
'redefine_param' => 1,
'type' => 'Combo-box'
},
'aeMB0_AEMB_MUL' => {
'info' => '1: aeMB with hardware multiplier
0: aeMB without harware multiplier',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,0',
'redefine_param' => 1,
'type' => 'Combo-box'
}
},
'ports' => {
'aeMB0_sys_ena_i' => {
'intfc_port' => 'enable_i',
'intfc_name' => 'plug:enable[0]',
'ni_flit_in_wr' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'flit_in_wr',
'range' => '',
'type' => 'input'
}
},
'module_name' => 'aeMB_top',
'category' => 'Processor',
'instance' => 'aeMB0',
'module' => 'aeMB'
},
'clk_source0' => {
'ports' => {
'clk_source0_reset_in' => {
'intfc_port' => 'reset_i',
'intfc_name' => 'plug:reset[0]',
'range' => '',
'type' => 'input'
},
'clk_source0_clk_in' => {
'intfc_port' => 'clk_i',
'intfc_name' => 'plug:clk[0]',
'range' => '',
'type' => 'input'
}
},
'module_name' => 'clk_source',
'category' => 'source',
'instance' => 'clk_source0',
'module' => 'clk_source'
},
'wishbone_bus0' => {
'module_name' => 'wishbone_bus',
'category' => 'bus',
'instance' => 'bus',
'module' => 'wishbone_bus'
},
'ni0' => {
'parameters' => {
'ni_TOPOLOGY' => {
'info' => undef,
'deafult' => ' "MESH"',
'global_param' => 1,
'content' => '"MESH", "TORUS"',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_credit_in' => {
'intfc_name' => 'socket:ni[0]',
'intfc_port' => 'credit_in',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_NX' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_B' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_NY' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_DEBUG_EN' => {
'info' => undef,
'deafult' => ' 1',
'global_param' => 1,
'content' => '0,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_V' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '2,16,1',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_ROUTE_NAME' => {
'info' => undef,
'deafult' => '"XY" ',
'global_param' => 1,
'content' => ' "XY" ,"WEST_FIRST","NORTH_LAST" , "NEGETIVE_FIRST", "DUATO"',
'redefine_param' => 1,
'type' => 'Fixed'
}
},
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'ni_flit_in' => {
'intfc_name' => 'socket:ni[0]',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'intfc_name' => 'socket:ni[0]',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
},
'module_name' => 'ni',
'category' => 'NoC',
'instance' => 'ni',
'module' => 'ni'
},
'Altera_single_port_ram0' => {
'parameters' => {
'Altera_single_port_ram0_Dw' => {
'info' => undef,
'deafult' => '32',
'global_param' => 1,
'content' => '8,1024,1',
'redefine_param' => 1,
'type' => 'Spin-button'
},
'Altera_single_port_ram0_Aw' => {
'info' => undef,
'deafult' => '10',
'global_param' => 1,
'content' => '4,31,1',
'redefine_param' => 1,
'type' => 'Spin-button'
}
},
'module_name' => 'Altera_single_port_ram',
'category' => 'RAM',
'instance' => 'Altera_single_port_ram0',
'module' => 'Altera_single_port_ram'
}
}
}, 'ip_gen' ),
'tile_nums' => [
3,
8
]
}
'intfc_port' => 'flit_in',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
},
'module_name' => 'ni',
'category' => 'NoC',
'instance' => 'ni',
'module' => 'ni'
},
'timer0' => {
'module_name' => 'timer',
'category' => 'TIM',
'instance' => 'timer',
'module' => 'timer'
}
}
}, 'ip_gen' ),
'tile_nums' => [
0,
1
]
}
},
'setting' => {
'show_adv_setting' => 0,
1705,21 → 843,10
'show_tile_setting' => 1
},
'tile' => {
'6' => {},
'1' => {},
'3' => {},
'7' => {
'param_setting' => 'Default'
},
'2' => {},
'8' => {},
'1' => {
'param_setting' => 'Custom'
},
'4' => {},
'0' => {
'param_setting' => 'Custom'
},
'5' => {}
'0' => {},
'2' => {}
},
'mpsoc_name' => 'mpsoc',
'parameters_order' => [
1748,14 → 875,14
'noc_param' => {
'ADD_PIPREG_BEFORE_CROSSBAR' => '1\'b0',
'COMBINATION_TYPE' => '"COMB_SPEC1"',
'NY' => 3,
'DEBUG_EN' => '0',
'NX' => 3,
'NY' => ' 2',
'VC_REALLOCATION_TYPE' => '"NONATOMIC"',
'NX' => ' 2',
'V' => '2',
'CONGESTION_INDEX' => 3,
'ROUTE_SUBFUNC' => '"XY"',
'ADD_PIPREG_AFTER_CROSSBAR' => '1\'b0',
'ROUTE_SUBFUNC' => '"XY"',
'C' => 0,
'ROUTE_NAME' => '"XY"',
'Fpay' => '32',
/perl/aeMB.pl File deleted
/perl/ip.pm
19,6 → 19,7
my $self;
$self = {};
my $dir = Cwd::getcwd();
$dir =~ s/ /\\ /g;
my @files = glob "$dir/lib/ip/*.IP";
for my $p (@files){
/perl/mpsoc_gen.pl
172,7 → 172,8
my $mpsoc=shift;
 
my $path=$mpsoc->mpsoc_get_setting('soc_path');
my @socs;
$path =~ s/ /\\ /g;
my @socs;
my @files = glob "$path/*.SOC";
for my $p (@files){
1083,7 → 1084,8
my ($mpsoc,$info)=@_;
 
my $path=$mpsoc->mpsoc_get_setting('soc_path');
my @socs;
$path=~ s/ /\\ /g;
my @socs;
my @files = glob "$path/*.SOC";
my @soc_list=$mpsoc-> mpsoc_get_soc_list();
my @used_socs;
1148,8 → 1150,9
#copy hdl codes in src_verilog
my ($hdl_ref,$warnings)= get_all_files_list($soc);
my ($hdl_ref,$warnings)= get_all_files_list($soc,"hdl_files");
foreach my $f(@{$hdl_ref}){
my $n="$project_dir$f";
if (-f "$n") {
copy ("$n","$target_dir/src_verilog/lib");
1175,7 → 1178,7
#}
copy ("$dir/lib/verilog/$soc_name.v","$target_dir/src_verilog/tiles/");
move ("$dir/lib/verilog/$soc_name.v","$target_dir/src_verilog/tiles/");
copy_noc_files($project_dir,"$target_dir/src_verilog/lib");
1187,10 → 1190,10
copy ("$dir/lib/verilog/$soc_name.h","$target_dir/sw/");
move ("$dir/lib/verilog/$soc_name.h","$target_dir/sw/");
use File::Copy::Recursive qw(dircopy);
dircopy("$dir/../src_processor/aeMB/compiler","$target_dir/sw/") or die("$!\n");
#use File::Copy::Recursive qw(dircopy);
#dircopy("$dir/../src_processor/aeMB/compiler","$target_dir/sw/") or die("$!\n");
my $msg="SoC \"$soc_name\" has been created successfully at $target_dir/ ";
1236,7 → 1239,7
gen_socs($mpsoc,$info);
copy ("$dir/lib/verilog/$name.v","$target_dir/src_verilog/");
move ("$dir/lib/verilog/$name.v","$target_dir/src_verilog/");
/perl/soc_gen.pl
901,7 → 901,7
#}
copy ("$dir/lib/verilog/$name.v","$target_dir/src_verilog/");
move ("$dir/lib/verilog/$name.v","$target_dir/src_verilog/");
910,7 → 910,7
open(FILE, ">lib/verilog/$name.h") || die "Can not open: $!";
print FILE $file_h;
close(FILE) || die "Error closing file: $!";
copy ("$dir/lib/verilog/$name.h","$target_dir/sw/");
move ("$dir/lib/verilog/$name.h","$target_dir/sw/");
# Write Software files
($file_ref,$warnings)= get_all_files_list($soc,"sw_files");
/perl/interface_gen.pl
374,25 → 374,11
}
 
sub port_width_repeat{
my ($range,$value)=@_;
$range=remove_all_white_spaces($range);
my ($h,$l)=split(':',$range);
return "$value" if(!defined $h ) ; # port width is 1
return "$value" if($h eq "0" && "$l" eq "0"); # port width is 1
$h=$l if($h eq "0" && "$l" ne "0");
if($h =~ /-1$/){ # the address ranged is endup with -1
$h =~ s/-1$//; # remove -1
return "\{$h\{$value\}\}" if($h =~ /\)$/);
return "\{($h)\{$value\}\}" if($h =~ /[\*\.\+\-\^\%\&]/);
return "\{$h\{$value\}\}";
}
return "\{($h+1){$value}}";
}
 
 
 
 
 
sub port_select{
my ($infc_gen,$soc_state,$info,$table,$row)=@_;
my(%types,%ranges,%names,%connect_types,%connect_ranges,%connect_names,%outport_types,%default_outs);
/perl/verilog_gen.pl
436,7 → 436,8
 
sub port_width_repeat{
my ($range,$value)=@_;
$range=remove_all_white_spaces($range);
return "$value" if (!defined $range);
$range= remove_all_white_spaces($range);
my ($h,$l)=split(':',$range);
return "$value" if(!defined $h ) ; # port width is 1
return "$value" if($h eq "0" && "$l" eq "0"); # port width is 1
474,7 → 475,7
($default_out eq 'Don\'t care')? port_width_repeat($new_range,"1\'bx"): $default_out;
$unused_wire_v= "$unused_wire_v \tassign ${p} = $default;\n";
$unused_wire_v= (defined $unused_wire_v)? "$unused_wire_v \tassign ${p} = $default;\n" : "\tassign ${p} = $default;\n";
}
/perl/interface.pm
33,6 → 33,7
my $dir = Cwd::getcwd();
$dir =~ s/ /\\ /g;
my @files = glob "$dir/lib/interface/*.ITC";
for my $p (@files){
#print "$p\n";
/perl/ip_gen.pl
664,6 → 664,7
$add_remove->signal_connect (clicked => sub{
if($p eq "#new#"){ #add new parameter
my $param= $param_name->get_text();
$param=remove_all_white_spaces($param);
if( length($param) ){
my $deafult=$deafult_entry->get_text();
/soc/ni_test.SOC File deleted
/soc/test.SOC File deleted
/soc/sim_tile.SOC File deleted
/soc/test1.SOC File deleted
/soc/test2.SOC File deleted
/soc/all.SOC File deleted
/soc/test3.SOC File deleted
/soc/lm32_test.SOC
142,6 → 142,65
}
}, 'ip_gen' ),
'instances' => {
'clk_source0' => {
'instance_name' => 'ss',
'plugs' => {
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'IO',
'connect_socket_num' => undef,
'name' => 'reset',
'connect_socket' => undef
}
}
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => undef,
'connect_id' => 'IO',
'name' => 'clk',
'connect_socket' => undef
}
}
}
},
'parameters' => {},
'parameters_order' => [],
'clk_source0' => {},
'sockets' => {
'reset' => {
'connection_num' => 'multi connection',
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'name' => 'reset'
}
}
},
'clk' => {
'connection_num' => 'multi connection',
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'name' => 'clk'
}
}
}
},
'module_name' => 'clk_source',
'category' => 'source',
'module' => 'clk_source'
},
'lm320' => {
'instance_name' => 'lm320',
'plugs' => {
148,56 → 207,56
'wb_master' => {
'connection_num' => undef,
'value' => 2,
'type' => 'num',
'nums' => {
'1' => {
'connect_socket_num' => '1',
'connect_id' => 'wishbone_bus0',
'connect_socket_num' => '1',
'name' => 'dwb',
'connect_socket' => 'wb_master'
},
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'wishbone_bus0',
'connect_socket_num' => '0',
'name' => 'iwb',
'connect_socket' => 'wb_master'
}
},
'type' => 'num'
}
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'clk',
'connect_socket' => 'clk'
}
},
'type' => 'num'
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
}
}
}
},
'parameters' => {
'CFG_PL_BARREL_SHIFT' => {
'value' => '"ENABLED"'
},
'CFG_SIGN_EXTEND' => {
'value' => '"ENABLED"'
},
'CFG_PL_BARREL_SHIFT' => {
'value' => '"ENABLED"'
},
'CFG_PL_MULTIPLY' => {
'value' => '"ENABLED"'
},
220,12 → 279,12
'interrupt_peripheral' => {
'connection_num' => 'single connection',
'value' => 'INTR_NUM',
'type' => 'param',
'nums' => {
'0' => {
'name' => 'interrupt_peripheral'
}
},
'type' => 'param'
}
}
},
'module_name' => 'lm32',
232,65 → 291,6
'category' => 'Processor',
'module' => 'lm32'
},
'clk_source0' => {
'instance_name' => 'ss',
'plugs' => {
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_id' => 'IO',
'connect_socket_num' => undef,
'name' => 'clk',
'connect_socket' => undef
}
},
'type' => 'num'
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => undef,
'connect_id' => 'IO',
'name' => 'reset',
'connect_socket' => undef
}
},
'type' => 'num'
}
},
'parameters' => {},
'parameters_order' => [],
'clk_source0' => {},
'sockets' => {
'clk' => {
'connection_num' => 'multi connection',
'value' => 1,
'nums' => {
'0' => {
'name' => 'clk'
}
},
'type' => 'num'
},
'reset' => {
'connection_num' => 'multi connection',
'value' => 1,
'nums' => {
'0' => {
'name' => 'reset'
}
},
'type' => 'num'
}
},
'module_name' => 'clk_source',
'category' => 'source',
'module' => 'clk_source'
},
'gpo0' => {
'gpo0' => {},
'instance_name' => 'led',
301,59 → 301,59
'Aw' => {
'value' => ' 2'
},
'TAGw' => {
'value' => ' 3'
},
'SELw' => {
'value' => ' 4'
},
'TAGw' => {
'value' => ' 3'
},
'Dw' => {
'value' => ' 32'
}
},
'plugs' => {
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
},
'type' => 'num'
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'reset',
'connect_socket' => 'reset'
}
}
},
'wb_slave' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'width' => 5,
'base' => 2432696320,
'connect_socket_num' => '0',
'base' => 2432696320,
'width' => 5,
'name' => 'wb',
'end' => 2432696351,
'connect_socket' => 'wb_slave',
'end' => 2432696351,
'connect_id' => 'wishbone_bus0',
'addr' => '0x9100_0000 0x91ff_ffff General-Purpose I/O'
}
},
'type' => 'num'
}
}
},
'parameters_order' => [
398,32 → 398,32
}
},
'plugs' => {
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'clk',
'connect_socket' => 'clk'
}
},
'type' => 'num'
}
}
}
},
'parameters_order' => [
'S',
439,32 → 439,32
'wb_master' => {
'connection_num' => 'single connection',
'value' => 'M',
'type' => 'param',
'nums' => {
'0' => {
'name' => 'wb_master'
}
},
'type' => 'param'
}
},
'wb_addr_map' => {
'connection_num' => 'single connection',
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'name' => 'wb_addr_map'
}
}
},
'type' => 'num'
},
'wb_slave' => {
'connection_num' => 'single connection',
'value' => 'S',
'type' => 'param',
'nums' => {
'0' => {
'name' => 'wb_slave'
}
},
'type' => 'param'
}
}
},
'module_name' => 'wishbone_bus',
475,48 → 475,48
'instance_name' => 'Altera_single_port_ram0',
'Altera_single_port_ram0' => {},
'plugs' => {
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'clk',
'connect_socket' => 'clk'
}
},
'type' => 'num'
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
}
},
'type' => 'num'
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
},
'wb_slave' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'width' => 'WBAw',
'base' => 0,
'connect_socket_num' => '1',
'base' => 0,
'width' => 'WBAw',
'name' => 'wb_slave',
'end' => 16383,
'connect_socket' => 'wb_slave',
'end' => 16383,
'connect_id' => 'wishbone_bus0',
'addr' => '0x0000_0000 0x3fff_ffff RAM'
}
},
'type' => 'num'
}
}
},
'parameters' => {
/soc/aemb_tile.SOC
0,0 → 1,1243
$aemb_tile = bless( {
'hdl_files' => undef,
'modules' => {},
'soc_name' => 'aemb_tile',
'top_ip' => bless( {
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ss_clk_in' => {
'intfc_port' => 'clk_i',
'intfc_name' => 'plug:clk[0]',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
},
'aeMB_sys_ena_i' => {
'intfc_port' => 'enable_i',
'intfc_name' => 'plug:enable[0]',
'instance_name' => 'aeMB0',
'range' => '',
'type' => 'input'
},
'led_port_o' => {
'intfc_port' => 'IO',
'intfc_name' => 'IO',
'instance_name' => 'gpo0',
'range' => 'led_PORT_WIDTH-1 : 0',
'type' => 'output'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ss_reset_in' => {
'intfc_port' => 'reset_i',
'intfc_name' => 'plug:reset[0]',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
},
'interface' => {
'plug:enable[0]' => {
'ports' => {
'aeMB_sys_ena_i' => {
'intfc_port' => 'enable_i',
'instance_name' => 'aeMB0',
'range' => '',
'type' => 'input'
}
}
},
'socket:ni[0]' => {
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'instance_name' => 'ni0',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'instance_name' => 'ni0',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'instance_name' => 'ni0',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'instance_name' => 'ni0',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'instance_name' => 'ni0',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'instance_name' => 'ni0',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
}
},
'IO' => {
'ports' => {
'led_port_o' => {
'intfc_port' => 'IO',
'instance_name' => 'gpo0',
'range' => 'led_PORT_WIDTH-1 : 0',
'type' => 'output'
}
}
},
'plug:clk[0]' => {
'ports' => {
'ss_clk_in' => {
'intfc_port' => 'clk_i',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
}
}
},
'plug:reset[0]' => {
'ports' => {
'ss_reset_in' => {
'intfc_port' => 'reset_i',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
}
}
}
},
'instance_ids' => {
'aeMB0' => {
'ports' => {
'aeMB_sys_ena_i' => {
'intfc_port' => 'enable_i',
'intfc_name' => 'plug:enable[0]',
'range' => '',
'type' => 'input'
}
},
'module_name' => 'aeMB_top',
'category' => 'Processor',
'instance' => 'aeMB',
'module' => 'aeMB'
},
'gpo0' => {
'parameters' => {
'led_PORT_WIDTH' => {
'info' => 'output port width',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,32,1',
'redefine_param' => 1,
'type' => 'Spin-button'
}
},
'ports' => {
'led_port_o' => {
'intfc_port' => 'IO',
'intfc_name' => 'IO',
'range' => 'led_PORT_WIDTH-1 : 0',
'type' => 'output'
}
},
'module_name' => 'gpo',
'category' => 'GPI',
'instance' => 'led',
'module' => 'gpo'
},
'wishbone_bus0' => {
'module_name' => 'wishbone_bus',
'category' => 'bus',
'instance' => 'bus',
'module' => 'wishbone_bus'
},
'int_ctrl0' => {
'module_name' => 'int_ctrl',
'category' => 'interrupt',
'instance' => 'int_ctrl',
'module' => 'int_ctrl'
},
'Altera_single_port_ram0' => {
'parameters' => {
'ram_Dw' => {
'info' => undef,
'deafult' => '32',
'global_param' => 1,
'content' => '8,1024,1',
'redefine_param' => 1,
'type' => 'Spin-button'
},
'ram_Aw' => {
'info' => undef,
'deafult' => 12,
'global_param' => 1,
'content' => '4,31,1',
'redefine_param' => 1,
'type' => 'Spin-button'
}
},
'module_name' => 'Altera_single_port_ram',
'category' => 'RAM',
'instance' => 'ram',
'module' => 'Altera_single_port_ram'
},
'clk_source0' => {
'ports' => {
'ss_reset_in' => {
'intfc_port' => 'reset_i',
'intfc_name' => 'plug:reset[0]',
'range' => '',
'type' => 'input'
},
'ss_clk_in' => {
'intfc_port' => 'clk_i',
'intfc_name' => 'plug:clk[0]',
'range' => '',
'type' => 'input'
}
},
'module_name' => 'clk_source',
'category' => 'source',
'instance' => 'ss',
'module' => 'clk_source'
},
'ni0' => {
'parameters' => {
'ni_TOPOLOGY' => {
'info' => undef,
'deafult' => '"MESH"',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_Fpay' => {
'info' => undef,
'deafult' => ' 32',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_NX' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_NY' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_B' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_V' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_ROUTE_TYPE' => {
'info' => undef,
'deafult' => '"DETERMINISTIC"',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_P' => {
'info' => undef,
'deafult' => ' 5',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_DEBUG_EN' => {
'info' => undef,
'deafult' => '0',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_ROUTE_NAME' => {
'info' => undef,
'deafult' => '"XY"',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
}
},
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'intfc_name' => 'socket:ni[0]',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'intfc_name' => 'socket:ni[0]',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
},
'module_name' => 'ni',
'category' => 'NoC',
'instance' => 'ni',
'module' => 'ni'
},
'timer0' => {
'module_name' => 'timer',
'category' => 'TIM',
'instance' => 'timer',
'module' => 'timer'
}
}
}, 'ip_gen' ),
'instances' => {
'aeMB0' => {
'aeMB0' => {},
'instance_name' => 'aeMB',
'plugs' => {
'wb_master' => {
'connection_num' => undef,
'value' => 2,
'type' => 'num',
'nums' => {
'1' => {
'connect_socket_num' => '1',
'connect_id' => 'wishbone_bus0',
'name' => 'dwb',
'connect_socket' => 'wb_master'
},
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'wishbone_bus0',
'name' => 'iwb',
'connect_socket' => 'wb_master'
}
}
},
'interrupt_cpu' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_id' => 'int_ctrl0',
'connect_socket_num' => '0',
'name' => 'intrp',
'connect_socket' => 'interrupt_cpu'
}
},
'type' => 'num'
},
'enable' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_id' => 'IO',
'connect_socket_num' => undef,
'name' => 'enable',
'connect_socket' => undef
}
},
'type' => 'num'
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
}
},
'parameters' => {
'AEMB_XWB' => {
'value' => ' 7'
},
'AEMB_IDX' => {
'value' => ' 6'
},
'AEMB_MUL' => {
'value' => ' 1'
},
'AEMB_IWB' => {
'value' => ' 32'
},
'AEMB_BSF' => {
'value' => ' 1'
},
'AEMB_DWB' => {
'value' => ' 32'
},
'AEMB_ICH' => {
'value' => ' 11'
}
},
'parameters_order' => [
'AEMB_IWB',
'AEMB_DWB',
'AEMB_XWB',
'AEMB_ICH',
'AEMB_IDX',
'AEMB_BSF',
'AEMB_MUL'
],
'sockets' => {},
'module_name' => 'aeMB_top',
'category' => 'Processor',
'module' => 'aeMB'
},
'gpo0' => {
'gpo0' => {},
'instance_name' => 'led',
'parameters' => {
'PORT_WIDTH' => {
'value' => ' 1'
},
'Aw' => {
'value' => ' 2'
},
'TAGw' => {
'value' => ' 3'
},
'SELw' => {
'value' => ' 4'
},
'Dw' => {
'value' => ' 32'
}
},
'plugs' => {
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'reset',
'connect_socket' => 'reset'
}
}
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'clk',
'connect_socket' => 'clk'
}
},
'type' => 'num'
},
'wb_slave' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => '0',
'width' => 5,
'base' => 2432696320,
'name' => 'wb',
'connect_socket' => 'wb_slave',
'end' => 2432696351,
'connect_id' => 'wishbone_bus0',
'addr' => '0x9100_0000 0x91ff_ffff General-Purpose I/O'
}
}
}
},
'parameters_order' => [
'PORT_WIDTH',
'Dw',
'Aw',
'TAGw',
'SELw'
],
'sockets' => {},
'module_name' => 'gpo',
'category' => 'GPI',
'module' => 'gpo'
},
'wishbone_bus0' => {
'wishbone_bus0' => {},
'instance_name' => 'bus',
'parameters' => {
'S' => {
'value' => 5
},
'SELw' => {
'value' => '4'
},
'Dw' => {
'value' => '32'
},
'BTEw' => {
'value' => '2 '
},
'Aw' => {
'value' => '32'
},
'M' => {
'value' => 3
},
'TAGw' => {
'value' => '3 '
},
'CTIw' => {
'value' => '3'
}
},
'plugs' => {
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
}
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'clk',
'connect_socket' => 'clk'
}
},
'type' => 'num'
}
},
'parameters_order' => [
'S',
'M',
'Aw',
'TAGw',
'SELw',
'Dw',
'CTIw',
'BTEw'
],
'sockets' => {
'wb_master' => {
'connection_num' => 'single connection',
'value' => 'M',
'type' => 'param',
'nums' => {
'0' => {
'name' => 'wb_master'
}
}
},
'wb_addr_map' => {
'connection_num' => 'single connection',
'value' => 1,
'nums' => {
'0' => {
'name' => 'wb_addr_map'
}
},
'type' => 'num'
},
'wb_slave' => {
'connection_num' => 'single connection',
'value' => 'S',
'nums' => {
'0' => {
'name' => 'wb_slave'
}
},
'type' => 'param'
}
},
'module_name' => 'wishbone_bus',
'category' => 'bus',
'module' => 'wishbone_bus'
},
'int_ctrl0' => {
'instance_name' => 'int_ctrl',
'int_ctrl0' => {},
'plugs' => {
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'clk',
'connect_socket' => 'clk'
}
},
'type' => 'num'
},
'wb_slave' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'base' => 2650800128,
'width' => 5,
'connect_socket_num' => '3',
'name' => 'wb',
'end' => 2650800159,
'connect_socket' => 'wb_slave',
'connect_id' => 'wishbone_bus0',
'addr' => '0x9e00_0000 0x9eff_ffff IDE Controller'
}
},
'type' => 'num'
}
},
'parameters' => {
'Aw' => {
'value' => ' 3'
},
'SELw' => {
'value' => ' 4 '
},
'INT_NUM' => {
'value' => 2
},
'Dw' => {
'value' => ' 32'
}
},
'parameters_order' => [
'INT_NUM',
'Dw',
'Aw',
'SELw'
],
'sockets' => {
'interrupt_cpu' => {
'connection_num' => 'single connection',
'value' => 1,
'nums' => {
'0' => {
'name' => 'int_cpu'
}
},
'type' => 'num'
},
'interrupt_peripheral' => {
'connection_num' => 'single connection',
'value' => 'INT_NUM',
'nums' => {
'0' => {
'name' => 'int_periph'
}
},
'type' => 'param'
}
},
'module_name' => 'int_ctrl',
'category' => 'interrupt',
'module' => 'int_ctrl'
},
'Altera_single_port_ram0' => {
'instance_name' => 'ram',
'Altera_single_port_ram0' => {},
'plugs' => {
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'clk',
'connect_socket' => 'clk'
}
},
'type' => 'num'
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'reset',
'connect_socket' => 'reset'
}
}
},
'wb_slave' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'base' => 0,
'width' => 'WBAw',
'connect_socket_num' => '1',
'name' => 'wb_slave',
'connect_socket' => 'wb_slave',
'end' => 16383,
'connect_id' => 'wishbone_bus0',
'addr' => '0x0000_0000 0x3fff_ffff RAM'
}
}
}
},
'parameters' => {
'RAM_TAG_STRING' => {
'value' => 'i2s(CORE_ID)'
},
'SELw' => {
'value' => '4'
},
'Dw' => {
'value' => '32'
},
'WBAw' => {
'value' => 'Aw+2'
},
'BTEw' => {
'value' => '2'
},
'Aw' => {
'value' => 12
},
'TAGw' => {
'value' => '3'
},
'CTIw' => {
'value' => '3'
}
},
'parameters_order' => [
'Dw',
'Aw',
'TAGw',
'SELw',
'CTIw',
'BTEw',
'RAM_TAG_STRING',
'WBAw'
],
'sockets' => {},
'module_name' => 'Altera_single_port_ram',
'category' => 'RAM',
'module' => 'Altera_single_port_ram'
},
'clk_source0' => {
'instance_name' => 'ss',
'plugs' => {
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => undef,
'connect_id' => 'IO',
'name' => 'clk',
'connect_socket' => undef
}
}
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_id' => 'IO',
'connect_socket_num' => undef,
'name' => 'reset',
'connect_socket' => undef
}
},
'type' => 'num'
}
},
'parameters' => {},
'parameters_order' => [],
'clk_source0' => {},
'sockets' => {
'reset' => {
'connection_num' => 'multi connection',
'value' => 1,
'nums' => {
'0' => {
'name' => 'reset'
}
},
'type' => 'num'
},
'clk' => {
'connection_num' => 'multi connection',
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'name' => 'clk'
}
}
}
},
'module_name' => 'clk_source',
'category' => 'source',
'module' => 'clk_source'
},
'ni0' => {
'instance_name' => 'ni',
'plugs' => {
'wb_master' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '2',
'connect_id' => 'wishbone_bus0',
'name' => 'wb_master',
'connect_socket' => 'wb_master'
}
},
'type' => 'num'
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
},
'interrupt_peripheral' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'int_ctrl0',
'name' => 'int_peripheral',
'connect_socket' => 'interrupt_peripheral'
}
},
'type' => 'num'
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'clk',
'connect_socket' => 'clk'
}
},
'type' => 'num'
},
'wb_slave' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'base' => 3087007744,
'width' => 5,
'connect_socket_num' => '2',
'name' => 'wb_slave',
'end' => 3087007775,
'connect_socket' => 'wb_slave',
'connect_id' => 'wishbone_bus0',
'addr' => '0xb800_0000 0xbfff_ffff custom devices'
}
},
'type' => 'num'
}
},
'parameters' => {
'Dw' => {
'value' => ' 32'
},
'NY' => {
'value' => ' 2'
},
'DEBUG_EN' => {
'value' => '0'
},
'NX' => {
'value' => ' 2'
},
'V' => {
'value' => ' 4'
},
'COMB_PCK_SIZE_W' => {
'value' => '12'
},
'Fw' => {
'value' => '2+V+Fpay'
},
'TAGw' => {
'value' => '3'
},
'COMB_MEM_PTR_W' => {
'value' => '20'
},
'M_Aw' => {
'value' => '32'
},
'ROUTE_NAME' => {
'value' => '"XY"'
},
'Xw ' => {
'value' => 'log2(NX)'
},
'Fpay' => {
'value' => ' 32'
},
'ROUTE_TYPE' => {
'value' => '"DETERMINISTIC"'
},
'SELw' => {
'value' => '4 '
},
'P' => {
'value' => ' 5'
},
'B' => {
'value' => ' 4'
},
'Xw' => {
'value' => 'log2(NX)'
},
'TOPOLOGY' => {
'value' => '"MESH"'
},
'S_Aw' => {
'value' => ' 3'
},
'Yw' => {
'value' => 'log2(NY)'
},
'Xwj' => {
'value' => 'fvf'
}
},
'parameters_order' => [
'V',
'P',
'B',
'NX',
'NY',
'Fpay',
'TOPOLOGY',
'ROUTE_TYPE',
'ROUTE_NAME',
'DEBUG_EN',
'COMB_MEM_PTR_W',
'COMB_PCK_SIZE_W',
'Dw',
'S_Aw',
'M_Aw',
'TAGw',
'SELw',
'Yw',
'Fw',
'Xw'
],
'sockets' => {
'ni' => {
'connection_num' => 'single connection',
'value' => 1,
'nums' => {
'0' => {
'name' => 'ni'
}
},
'type' => 'num'
}
},
'module_name' => 'ni',
'category' => 'NoC',
'module' => 'ni'
},
'timer0' => {
'instance_name' => 'timer',
'plugs' => {
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
},
'interrupt_peripheral' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '1',
'connect_id' => 'int_ctrl0',
'name' => 'interrupt_peripheral',
'connect_socket' => 'interrupt_peripheral'
}
},
'type' => 'num'
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'clk',
'connect_socket' => 'clk'
}
},
'type' => 'num'
},
'wb_slave' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'base' => 2516582400,
'width' => 5,
'connect_socket_num' => '4',
'name' => 'wb',
'end' => 2516582431,
'connect_socket' => 'wb_slave',
'connect_id' => 'wishbone_bus0',
'addr' => '0x9600_0000 0x96ff_ffff PWM/Timer/Counter Ctrl'
}
},
'type' => 'num'
}
},
'parameters' => {
'Aw' => {
'value' => ' 3'
},
'TAGw' => {
'value' => '3'
},
'SELw' => {
'value' => ' 4'
},
'Dw' => {
'value' => ' 32'
},
'CNTw' => {
'value' => '32 '
}
},
'parameters_order' => [
'CNTw',
'Dw',
'Aw',
'TAGw',
'SELw'
],
'sockets' => {},
'module_name' => 'timer',
'category' => 'TIM',
'module' => 'timer',
'timer0' => {}
}
},
'instance_order' => [
'aeMB0',
'gpo0',
'clk_source0',
'wishbone_bus0',
'Altera_single_port_ram0',
'int_ctrl0',
'timer0',
'ni0'
]
}, 'soc' );
/soc/aemb_test.SOC
171,77 → 171,77
'aeMB0' => {},
'instance_name' => 'aeMB',
'plugs' => {
'interrupt_cpu' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => undef,
'connect_id' => 'NC',
'name' => 'intrp',
'connect_socket' => undef
}
}
},
'wb_master' => {
'connection_num' => undef,
'value' => 2,
'type' => 'num',
'nums' => {
'1' => {
'connect_socket_num' => '1',
'connect_id' => 'wishbone_bus0',
'connect_socket_num' => '1',
'name' => 'dwb',
'connect_socket' => 'wb_master'
},
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'wishbone_bus0',
'connect_socket_num' => '0',
'name' => 'iwb',
'connect_socket' => 'wb_master'
}
},
'type' => 'num'
}
},
'interrupt_cpu' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_id' => 'NC',
'connect_socket_num' => undef,
'name' => 'intrp',
'connect_socket' => undef
}
},
'type' => 'num'
},
'enable' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'IO',
'connect_socket_num' => undef,
'connect_id' => 'IO',
'name' => 'enable',
'connect_socket' => undef
}
}
},
'type' => 'num'
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'reset',
'connect_socket' => 'reset'
}
}
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'clk',
'connect_socket' => 'clk'
}
},
'type' => 'num'
}
},
'type' => 'num'
}
},
'parameters' => {
'AEMB_XWB' => {
250,20 → 250,20
'AEMB_IDX' => {
'value' => ' 6'
},
'AEMB_MUL' => {
'value' => ' 1'
},
'AEMB_IWB' => {
'value' => ' 32'
},
'AEMB_MUL' => {
'value' => ' 1'
},
'AEMB_BSF' => {
'value' => ' 1'
},
'AEMB_DWB' => {
'value' => ' 32'
},
'AEMB_ICH' => {
'value' => ' 11'
},
'AEMB_DWB' => {
'value' => ' 32'
}
},
'parameters_order' => [
283,57 → 283,57
'clk_source0' => {
'instance_name' => 'ss',
'plugs' => {
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => undef,
'connect_id' => 'IO',
'name' => 'reset',
'connect_socket' => undef
}
}
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => undef,
'connect_id' => 'IO',
'connect_socket_num' => undef,
'name' => 'clk',
'connect_socket' => undef
}
},
'type' => 'num'
}
},
'parameters' => {},
'parameters_order' => [],
'clk_source0' => {},
'sockets' => {
'clk' => {
'connection_num' => 'multi connection',
}
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'name' => 'clk'
'connect_id' => 'IO',
'connect_socket_num' => undef,
'name' => 'reset',
'connect_socket' => undef
}
},
'type' => 'num'
},
}
},
'parameters' => {},
'parameters_order' => [],
'clk_source0' => {},
'sockets' => {
'reset' => {
'connection_num' => 'multi connection',
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'name' => 'reset'
}
}
}
},
'type' => 'num'
},
'clk' => {
'connection_num' => 'multi connection',
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'name' => 'clk'
}
}
}
},
'module_name' => 'clk_source',
'category' => 'source',
349,59 → 349,59
'Aw' => {
'value' => ' 2'
},
'TAGw' => {
'value' => ' 3'
},
'SELw' => {
'value' => ' 4'
},
'TAGw' => {
'value' => ' 3'
},
'Dw' => {
'value' => ' 32'
}
},
'plugs' => {
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'reset',
'connect_socket' => 'reset'
}
}
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
},
'type' => 'num'
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
},
'wb_slave' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => '0',
'width' => 5,
'base' => 2432696320,
'width' => 5,
'connect_socket_num' => '0',
'name' => 'wb',
'connect_socket' => 'wb_slave',
'end' => 2432696351,
'connect_socket' => 'wb_slave',
'connect_id' => 'wishbone_bus0',
'addr' => '0x9100_0000 0x91ff_ffff General-Purpose I/O'
}
},
'type' => 'num'
}
}
},
'parameters_order' => [
446,32 → 446,32
}
},
'plugs' => {
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
}
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
}
},
'type' => 'num'
}
},
'parameters_order' => [
'S',
487,32 → 487,32
'wb_master' => {
'connection_num' => 'single connection',
'value' => 'M',
'type' => 'param',
'nums' => {
'0' => {
'name' => 'wb_master'
}
},
'type' => 'param'
}
},
'wb_addr_map' => {
'connection_num' => 'single connection',
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'name' => 'wb_addr_map'
}
}
},
'type' => 'num'
},
'wb_slave' => {
'connection_num' => 'single connection',
'value' => 'S',
'type' => 'param',
'nums' => {
'0' => {
'name' => 'wb_slave'
}
}
},
'type' => 'param'
}
},
'module_name' => 'wishbone_bus',
523,48 → 523,48
'instance_name' => 'ram',
'Altera_single_port_ram0' => {},
'plugs' => {
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'clk',
'connect_socket' => 'clk'
}
},
'type' => 'num'
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
}
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
},
'wb_slave' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'base' => 0,
'width' => 'WBAw',
'connect_socket_num' => '1',
'width' => 'WBAw',
'base' => 0,
'name' => 'wb_slave',
'connect_socket' => 'wb_slave',
'end' => 16383,
'connect_socket' => 'wb_slave',
'connect_id' => 'wishbone_bus0',
'addr' => '0x0000_0000 0x3fff_ffff RAM'
}
},
'type' => 'num'
}
}
},
'parameters' => {
/soc/lm32_tile.SOC
0,0 → 1,1094
$lm32_tile = bless( {
'hdl_files' => undef,
'modules' => {},
'soc_name' => 'lm32_tile',
'top_ip' => bless( {
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ss_clk_in' => {
'intfc_port' => 'clk_i',
'intfc_name' => 'plug:clk[0]',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
},
'led_port_o' => {
'intfc_port' => 'IO',
'intfc_name' => 'IO',
'instance_name' => 'gpo0',
'range' => 'led_PORT_WIDTH-1 : 0',
'type' => 'output'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ss_reset_in' => {
'intfc_port' => 'reset_i',
'intfc_name' => 'plug:reset[0]',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'intfc_name' => 'socket:ni[0]',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
},
'interface' => {
'socket:ni[0]' => {
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'instance_name' => 'ni0',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'instance_name' => 'ni0',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'instance_name' => 'ni0',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'instance_name' => 'ni0',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'instance_name' => 'ni0',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'instance_name' => 'ni0',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'instance_name' => 'ni0',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
}
},
'IO' => {
'ports' => {
'led_port_o' => {
'intfc_port' => 'IO',
'instance_name' => 'gpo0',
'range' => 'led_PORT_WIDTH-1 : 0',
'type' => 'output'
}
}
},
'plug:clk[0]' => {
'ports' => {
'ss_clk_in' => {
'intfc_port' => 'clk_i',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
}
}
},
'plug:reset[0]' => {
'ports' => {
'ss_reset_in' => {
'intfc_port' => 'reset_i',
'instance_name' => 'clk_source0',
'range' => '',
'type' => 'input'
}
}
}
},
'instance_ids' => {
'lm320' => {
'module_name' => 'lm32',
'category' => 'Processor',
'instance' => 'lm32',
'module' => 'lm32'
},
'clk_source0' => {
'ports' => {
'ss_reset_in' => {
'intfc_port' => 'reset_i',
'intfc_name' => 'plug:reset[0]',
'range' => '',
'type' => 'input'
},
'ss_clk_in' => {
'intfc_port' => 'clk_i',
'intfc_name' => 'plug:clk[0]',
'range' => '',
'type' => 'input'
}
},
'module_name' => 'clk_source',
'category' => 'source',
'instance' => 'ss',
'module' => 'clk_source'
},
'gpo0' => {
'parameters' => {
'led_PORT_WIDTH' => {
'info' => 'output port width',
'deafult' => ' 1',
'global_param' => 1,
'content' => '1,32,1',
'redefine_param' => 1,
'type' => 'Spin-button'
}
},
'ports' => {
'led_port_o' => {
'intfc_port' => 'IO',
'intfc_name' => 'IO',
'range' => 'led_PORT_WIDTH-1 : 0',
'type' => 'output'
}
},
'module_name' => 'gpo',
'category' => 'GPI',
'instance' => 'led',
'module' => 'gpo'
},
'wishbone_bus0' => {
'module_name' => 'wishbone_bus',
'category' => 'bus',
'instance' => 'bus',
'module' => 'wishbone_bus'
},
'ni0' => {
'parameters' => {
'ni_TOPOLOGY' => {
'info' => undef,
'deafult' => '"MESH"',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_Fpay' => {
'info' => undef,
'deafult' => ' 32',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_NX' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_NY' => {
'info' => undef,
'deafult' => ' 2',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_B' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_V' => {
'info' => undef,
'deafult' => ' 4',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_ROUTE_TYPE' => {
'info' => undef,
'deafult' => '"DETERMINISTIC"',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_P' => {
'info' => undef,
'deafult' => ' 5',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_DEBUG_EN' => {
'info' => undef,
'deafult' => '0',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
},
'ni_ROUTE_NAME' => {
'info' => undef,
'deafult' => '"XY"',
'global_param' => 1,
'content' => '',
'redefine_param' => 1,
'type' => 'Fixed'
}
},
'ports' => {
'ni_flit_out_wr' => {
'intfc_port' => 'flit_out_wr',
'intfc_name' => 'socket:ni[0]',
'range' => '',
'type' => 'output'
},
'ni_current_x' => {
'intfc_port' => 'current_x',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Xw-1 : 0',
'type' => 'input'
},
'ni_current_y' => {
'intfc_port' => 'current_y',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Yw-1 : 0',
'type' => 'input'
},
'ni_flit_out' => {
'intfc_port' => 'flit_out',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Fw-1 : 0',
'type' => 'output'
},
'ni_credit_out' => {
'intfc_port' => 'credit_out',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_V-1: 0',
'type' => 'output'
},
'ni_flit_in_wr' => {
'intfc_port' => 'flit_in_wr',
'intfc_name' => 'socket:ni[0]',
'range' => '',
'type' => 'input'
},
'ni_credit_in' => {
'intfc_port' => 'credit_in',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_V-1 : 0',
'type' => 'input'
},
'ni_flit_in' => {
'intfc_port' => 'flit_in',
'intfc_name' => 'socket:ni[0]',
'range' => 'ni_Fw-1 : 0',
'type' => 'input'
}
},
'module_name' => 'ni',
'category' => 'NoC',
'instance' => 'ni',
'module' => 'ni'
},
'Altera_single_port_ram0' => {
'parameters' => {
'ram_Dw' => {
'info' => undef,
'deafult' => '32',
'global_param' => 1,
'content' => '8,1024,1',
'redefine_param' => 1,
'type' => 'Spin-button'
},
'ram_Aw' => {
'info' => undef,
'deafult' => 12,
'global_param' => 1,
'content' => '4,31,1',
'redefine_param' => 1,
'type' => 'Spin-button'
}
},
'module_name' => 'Altera_single_port_ram',
'category' => 'RAM',
'instance' => 'ram',
'module' => 'Altera_single_port_ram'
},
'timer0' => {
'module_name' => 'timer',
'category' => 'TIM',
'instance' => 'timer',
'module' => 'timer'
}
}
}, 'ip_gen' ),
'instances' => {
'clk_source0' => {
'instance_name' => 'ss',
'plugs' => {
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => undef,
'connect_id' => 'IO',
'name' => 'reset',
'connect_socket' => undef
}
}
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_id' => 'IO',
'connect_socket_num' => undef,
'name' => 'clk',
'connect_socket' => undef
}
},
'type' => 'num'
}
},
'parameters' => {},
'parameters_order' => [],
'clk_source0' => {},
'sockets' => {
'clk' => {
'connection_num' => 'multi connection',
'value' => 1,
'nums' => {
'0' => {
'name' => 'clk'
}
},
'type' => 'num'
},
'reset' => {
'connection_num' => 'multi connection',
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'name' => 'reset'
}
}
}
},
'module_name' => 'clk_source',
'category' => 'source',
'module' => 'clk_source'
},
'lm320' => {
'instance_name' => 'lm32',
'plugs' => {
'wb_master' => {
'connection_num' => undef,
'value' => 2,
'type' => 'num',
'nums' => {
'1' => {
'connect_id' => 'wishbone_bus0',
'connect_socket_num' => '1',
'name' => 'dwb',
'connect_socket' => 'wb_master'
},
'0' => {
'connect_id' => 'wishbone_bus0',
'connect_socket_num' => '0',
'name' => 'iwb',
'connect_socket' => 'wb_master'
}
}
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'reset',
'connect_socket' => 'reset'
}
}
}
},
'parameters' => {
'CFG_PL_BARREL_SHIFT' => {
'value' => '"ENABLED"'
},
'CFG_SIGN_EXTEND' => {
'value' => '"ENABLED"'
},
'CFG_PL_MULTIPLY' => {
'value' => '"ENABLED"'
},
'INTR_NUM' => {
'value' => '32'
},
'CFG_MC_DIVIDE' => {
'value' => '"DISABLED"'
}
},
'lm320' => {},
'parameters_order' => [
'INTR_NUM',
'CFG_PL_MULTIPLY',
'CFG_PL_BARREL_SHIFT',
'CFG_SIGN_EXTEND',
'CFG_MC_DIVIDE'
],
'sockets' => {
'interrupt_peripheral' => {
'connection_num' => 'single connection',
'value' => 'INTR_NUM',
'type' => 'param',
'nums' => {
'0' => {
'name' => 'interrupt_peripheral'
}
}
}
},
'module_name' => 'lm32',
'category' => 'Processor',
'module' => 'lm32'
},
'gpo0' => {
'gpo0' => {},
'instance_name' => 'led',
'parameters' => {
'PORT_WIDTH' => {
'value' => ' 1'
},
'Aw' => {
'value' => ' 2'
},
'SELw' => {
'value' => ' 4'
},
'TAGw' => {
'value' => ' 3'
},
'Dw' => {
'value' => ' 32'
}
},
'plugs' => {
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
},
'wb_slave' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'base' => 2432696320,
'width' => 5,
'connect_socket_num' => '0',
'name' => 'wb',
'end' => 2432696351,
'connect_socket' => 'wb_slave',
'connect_id' => 'wishbone_bus0',
'addr' => '0x9100_0000 0x91ff_ffff General-Purpose I/O'
}
},
'type' => 'num'
}
},
'parameters_order' => [
'PORT_WIDTH',
'Dw',
'Aw',
'TAGw',
'SELw'
],
'sockets' => {},
'module_name' => 'gpo',
'category' => 'GPI',
'module' => 'gpo'
},
'ni0' => {
'instance_name' => 'ni',
'plugs' => {
'wb_master' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '2',
'connect_id' => 'wishbone_bus0',
'name' => 'wb_master',
'connect_socket' => 'wb_master'
}
},
'type' => 'num'
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
},
'interrupt_peripheral' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'lm320',
'name' => 'int_peripheral',
'connect_socket' => 'interrupt_peripheral'
}
},
'type' => 'num'
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'clk',
'connect_socket' => 'clk'
}
},
'type' => 'num'
},
'wb_slave' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'base' => 3087007744,
'width' => 5,
'connect_socket_num' => '2',
'name' => 'wb_slave',
'end' => 3087007775,
'connect_socket' => 'wb_slave',
'connect_id' => 'wishbone_bus0',
'addr' => '0xb800_0000 0xbfff_ffff custom devices'
}
},
'type' => 'num'
}
},
'parameters' => {
'Dw' => {
'value' => ' 32'
},
'NY' => {
'value' => ' 2'
},
'DEBUG_EN' => {
'value' => '0'
},
'NX' => {
'value' => ' 2'
},
'V' => {
'value' => ' 4'
},
'COMB_PCK_SIZE_W' => {
'value' => '12'
},
'Fw' => {
'value' => '2+V+Fpay'
},
'TAGw' => {
'value' => '3'
},
'COMB_MEM_PTR_W' => {
'value' => '20'
},
'M_Aw' => {
'value' => '32'
},
'ROUTE_NAME' => {
'value' => '"XY"'
},
'Xw ' => {
'value' => 'log2(NX)'
},
'Fpay' => {
'value' => ' 32'
},
'ROUTE_TYPE' => {
'value' => '"DETERMINISTIC"'
},
'SELw' => {
'value' => '4 '
},
'P' => {
'value' => ' 5'
},
'B' => {
'value' => ' 4'
},
'Xw' => {
'value' => 'log2(NX)'
},
'TOPOLOGY' => {
'value' => '"MESH"'
},
'S_Aw' => {
'value' => ' 3'
},
'Yw' => {
'value' => 'log2(NY)'
},
'Xwj' => {
'value' => 'fvf'
}
},
'parameters_order' => [
'V',
'P',
'B',
'NX',
'NY',
'Fpay',
'TOPOLOGY',
'ROUTE_TYPE',
'ROUTE_NAME',
'DEBUG_EN',
'COMB_MEM_PTR_W',
'COMB_PCK_SIZE_W',
'Dw',
'S_Aw',
'M_Aw',
'TAGw',
'SELw',
'Yw',
'Fw',
'Xw'
],
'sockets' => {
'ni' => {
'connection_num' => 'single connection',
'value' => 1,
'nums' => {
'0' => {
'name' => 'ni'
}
},
'type' => 'num'
}
},
'module_name' => 'ni',
'category' => 'NoC',
'module' => 'ni'
},
'wishbone_bus0' => {
'wishbone_bus0' => {},
'instance_name' => 'bus',
'parameters' => {
'S' => {
'value' => 4
},
'SELw' => {
'value' => '4'
},
'Dw' => {
'value' => '32'
},
'BTEw' => {
'value' => '2 '
},
'Aw' => {
'value' => '32'
},
'M' => {
'value' => 3
},
'TAGw' => {
'value' => '3 '
},
'CTIw' => {
'value' => '3'
}
},
'plugs' => {
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
}
},
'parameters_order' => [
'S',
'M',
'Aw',
'TAGw',
'SELw',
'Dw',
'CTIw',
'BTEw'
],
'sockets' => {
'wb_master' => {
'connection_num' => 'single connection',
'value' => 'M',
'nums' => {
'0' => {
'name' => 'wb_master'
}
},
'type' => 'param'
},
'wb_addr_map' => {
'connection_num' => 'single connection',
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'name' => 'wb_addr_map'
}
}
},
'wb_slave' => {
'connection_num' => 'single connection',
'value' => 'S',
'type' => 'param',
'nums' => {
'0' => {
'name' => 'wb_slave'
}
}
}
},
'module_name' => 'wishbone_bus',
'category' => 'bus',
'module' => 'wishbone_bus'
},
'Altera_single_port_ram0' => {
'instance_name' => 'ram',
'Altera_single_port_ram0' => {},
'plugs' => {
'reset' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '0',
'connect_id' => 'clk_source0',
'name' => 'reset',
'connect_socket' => 'reset'
}
},
'type' => 'num'
},
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
},
'wb_slave' => {
'connection_num' => undef,
'value' => 1,
'nums' => {
'0' => {
'connect_socket_num' => '1',
'width' => 'WBAw',
'base' => 0,
'name' => 'wb_slave',
'end' => 16383,
'connect_socket' => 'wb_slave',
'connect_id' => 'wishbone_bus0',
'addr' => '0x0000_0000 0x3fff_ffff RAM'
}
},
'type' => 'num'
}
},
'parameters' => {
'RAM_TAG_STRING' => {
'value' => 'i2s(CORE_ID)'
},
'SELw' => {
'value' => '4'
},
'Dw' => {
'value' => '32'
},
'WBAw' => {
'value' => 'Aw+2'
},
'BTEw' => {
'value' => '2'
},
'Aw' => {
'value' => 12
},
'TAGw' => {
'value' => '3'
},
'CTIw' => {
'value' => '3'
}
},
'parameters_order' => [
'Dw',
'Aw',
'TAGw',
'SELw',
'CTIw',
'BTEw',
'RAM_TAG_STRING',
'WBAw'
],
'sockets' => {},
'module_name' => 'Altera_single_port_ram',
'category' => 'RAM',
'module' => 'Altera_single_port_ram'
},
'timer0' => {
'instance_name' => 'timer',
'plugs' => {
'clk' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'clk',
'connect_socket' => 'clk'
}
}
},
'interrupt_peripheral' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'lm320',
'connect_socket_num' => '1',
'name' => 'interrupt_peripheral',
'connect_socket' => 'interrupt_peripheral'
}
}
},
'reset' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_id' => 'clk_source0',
'connect_socket_num' => '0',
'name' => 'reset',
'connect_socket' => 'reset'
}
}
},
'wb_slave' => {
'connection_num' => undef,
'value' => 1,
'type' => 'num',
'nums' => {
'0' => {
'connect_socket_num' => '3',
'width' => 5,
'base' => 2516582400,
'name' => 'wb',
'connect_socket' => 'wb_slave',
'end' => 2516582431,
'connect_id' => 'wishbone_bus0',
'addr' => '0x9600_0000 0x96ff_ffff PWM/Timer/Counter Ctrl'
}
}
}
},
'parameters' => {
'Aw' => {
'value' => ' 3'
},
'SELw' => {
'value' => ' 4'
},
'TAGw' => {
'value' => '3'
},
'CNTw' => {
'value' => '32 '
},
'Dw' => {
'value' => ' 32'
}
},
'parameters_order' => [
'CNTw',
'Dw',
'Aw',
'TAGw',
'SELw'
],
'sockets' => {},
'module_name' => 'timer',
'category' => 'TIM',
'timer0' => {},
'module' => 'timer'
}
},
'instance_order' => [
'lm320',
'gpo0',
'clk_source0',
'wishbone_bus0',
'Altera_single_port_ram0',
'timer0',
'ni0'
]
}, 'soc' );
/verilog/functions.v
0,0 → 1,20
 
function integer log2;
input integer number; begin
log2=0;
while(2**log2<number) begin
log2=log2+1;
end
end
endfunction // log2
function [15:0]i2s;
input integer c; integer i; integer tmp; begin
tmp =0;
for (i=0; i<2; i=i+1'b1) begin
tmp = tmp + (((c % 10) + 6'd48) << i*8);
c = c/10;
end
i2s = tmp[15:0];
end
endfunction //i2s
verilog/functions.v Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: ip/lm32.IP =================================================================== --- ip/lm32.IP (revision 17) +++ ip/lm32.IP (revision 18) @@ -2,7 +2,6 @@ 'hdl_files' => [ '/mpsoc/src_processor/lm32/verilog/src/er1.v', '/mpsoc/src_processor/lm32/verilog/src/JTAGB.v', - '/mpsoc/src_processor/lm32/verilog/src/jtag_cores.v', '/mpsoc/src_processor/lm32/verilog/src/jtag_lm32.v', '/mpsoc/src_processor/lm32/verilog/src/lm32.v', '/mpsoc/src_processor/lm32/verilog/src/lm32_adder.v', @@ -21,7 +20,6 @@ '/mpsoc/src_processor/lm32/verilog/src/lm32_logic_op.v', '/mpsoc/src_processor/lm32/verilog/src/lm32_mc_arithmetic.v', '/mpsoc/src_processor/lm32/verilog/src/lm32_monitor.v', - '/mpsoc/src_processor/lm32/verilog/src/lm32_monitor_ram.v', '/mpsoc/src_processor/lm32/verilog/src/lm32_multiplier.v', '/mpsoc/src_processor/lm32/verilog/src/lm32_ram.v', '/mpsoc/src_processor/lm32/verilog/src/lm32_shifter.v', Index: ip/ni.IP =================================================================== --- ip/ni.IP (revision 17) +++ ip/ni.IP (revision 18) @@ -14,181 +14,221 @@ 'parameters' => { 'Dw' => { 'info' => undef, - 'deafult' => ' 32', - 'global_param' => undef, + 'deafult' => ' 32', + 'global_param' => 0, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, + 'DEBUG_EN' => { + 'info' => undef, + 'deafult' => '0', + 'global_param' => 1, + 'content' => '', + 'redefine_param' => 1, + 'type' => 'Fixed' + }, 'NY' => { 'info' => undef, 'deafult' => ' 2', - 'global_param' => undef, + 'global_param' => 1, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, - 'DEBUG_EN' => { - 'info' => undef, - 'deafult' => ' 1', - 'global_param' => undef, - 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef - }, 'NX' => { 'info' => undef, 'deafult' => ' 2', - 'global_param' => undef, + 'global_param' => 1, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, 'V' => { 'info' => undef, 'deafult' => ' 4', - 'global_param' => undef, + 'global_param' => 1, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, + 'Fw' => { + 'info' => undef, + 'deafult' => '2+V+Fpay', + 'global_param' => 0, + 'content' => '', + 'redefine_param' => 0, + 'type' => 'Fixed' + }, 'COMB_PCK_SIZE_W' => { 'info' => undef, - 'deafult' => ' 12', - 'global_param' => undef, + 'deafult' => '12', + 'global_param' => 0, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, 'TAGw' => { 'info' => undef, - 'deafult' => ' 3', - 'global_param' => undef, + 'deafult' => '3', + 'global_param' => 0, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, + 'M_Aw' => { + 'info' => undef, + 'deafult' => '32', + 'global_param' => 0, + 'content' => '', + 'redefine_param' => 1, + 'type' => 'Fixed' + }, 'COMB_MEM_PTR_W' => { 'info' => undef, 'deafult' => '20', - 'global_param' => undef, + 'global_param' => 0, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, - 'M_Aw' => { - 'info' => undef, - 'deafult' => ' 32', - 'global_param' => undef, - 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef - }, 'ROUTE_NAME' => { 'info' => undef, - 'deafult' => ' ', - 'global_param' => undef, + 'deafult' => '"XY"', + 'global_param' => 1, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, + 'Xw ' => { + 'info' => undef, + 'deafult' => 'log2(NX)', + 'global_param' => 0, + 'content' => '', + 'type' => 'Fixed', + 'redefine_param' => 0 + }, 'Fpay' => { 'info' => undef, 'deafult' => ' 32', - 'global_param' => undef, + 'global_param' => 1, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, 'SELw' => { 'info' => undef, - 'deafult' => ' 4 ', - 'global_param' => undef, + 'deafult' => '4 ', + 'global_param' => 0, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, 'ROUTE_TYPE' => { 'info' => undef, - 'deafult' => ' ', - 'global_param' => undef, + 'deafult' => '"DETERMINISTIC"', + 'global_param' => 1, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, 'P' => { 'info' => undef, 'deafult' => ' 5', - 'global_param' => undef, + 'global_param' => 1, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, 'B' => { 'info' => undef, 'deafult' => ' 4', - 'global_param' => undef, + 'global_param' => 1, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, + 'S_Aw' => { + 'info' => undef, + 'deafult' => ' 3', + 'global_param' => 0, + 'content' => '', + 'redefine_param' => 1, + 'type' => 'Fixed' + }, 'TOPOLOGY' => { 'info' => undef, - 'deafult' => ' ', - 'global_param' => undef, + 'deafult' => '"MESH"', + 'global_param' => 1, 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef + 'redefine_param' => 1, + 'type' => 'Fixed' }, - 'S_Aw' => { - 'info' => undef, - 'deafult' => ' 3', - 'global_param' => undef, - 'content' => '', - 'type' => 'Fixed', - 'redefine_param' => undef - } + 'Xw' => { + 'info' => undef, + 'deafult' => 'log2(NX)', + 'global_param' => 0, + 'content' => '', + 'type' => 'Fixed', + 'redefine_param' => 0 + }, + 'Yw' => { + 'info' => undef, + 'deafult' => 'log2(NY)', + 'global_param' => 0, + 'content' => '', + 'redefine_param' => 0, + 'type' => 'Fixed' + }, + 'Xwj' => { + 'info' => undef, + 'deafult' => 'fvf', + 'global_param' => 0, + 'content' => '', + 'type' => 'Fixed', + 'redefine_param' => 1 + } }, 'plugs' => { 'wb_master' => { 'wb_master' => {}, + 'value' => 1, '0' => { 'name' => 'wb_master' }, - 'value' => 1, 'type' => 'num' }, + 'interrupt_peripheral' => { + 'interrupt_peripheral' => {}, + 'value' => 1, + '0' => { + 'name' => 'int_peripheral' + }, + 'type' => 'num' + }, + 'reset' => { + 'reset' => {}, + 'value' => 1, + '0' => { + 'name' => 'reset' + }, + 'type' => 'num' + }, 'clk' => { 'clk' => {}, - 'value' => 1, '0' => { 'name' => 'clk' }, + 'value' => 1, 'type' => 'num' }, - 'reset' => { - 'reset' => {}, - '0' => { - 'name' => 'reset' - }, - 'value' => 1, - 'type' => 'num' - }, - 'interrupt_peripheral' => { - 'interrupt_peripheral' => {}, - '0' => { - 'name' => 'int_peripheral' - }, - 'value' => 1, - 'type' => 'num' - }, 'wb_slave' => { + 'value' => 1, '0' => { 'width' => 5, 'name' => 'wb_slave', 'addr' => '0xb800_0000 0xbfff_ffff custom devices' }, - 'value' => 1, 'type' => 'num', 'wb_slave' => {} } @@ -196,25 +236,6 @@ 'modules' => { 'ni' => {} }, - 'parameters_order' => [ - 'V', - 'P', - 'B', - 'NX', - 'NY', - 'Fpay', - 'TOPOLOGY', - 'ROUTE_TYPE', - 'ROUTE_NAME', - 'DEBUG_EN', - 'COMB_MEM_PTR_W', - 'COMB_PCK_SIZE_W', - 'Dw', - 'S_Aw', - 'M_Aw', - 'TAGw', - 'SELw' - ], 'ports_order' => [ 'reset', 'clk', @@ -252,211 +273,233 @@ ], 'ports' => { 'm_addr_o' => { + 'intfc_port' => 'adr_o', 'intfc_name' => 'plug:wb_master[0]', - 'intfc_port' => 'adr_o', 'range' => 'M_Aw-1 : 0', 'type' => 'output' }, 'm_cyc_o' => { + 'intfc_port' => 'cyc_o', 'intfc_name' => 'plug:wb_master[0]', - 'intfc_port' => 'cyc_o', 'range' => '', 'type' => 'output' }, - 's_cyc_i' => { + 's_dat_i' => { + 'intfc_port' => 'dat_i', 'intfc_name' => 'plug:wb_slave[0]', - 'intfc_port' => 'cyc_i', - 'range' => '', + 'range' => 'Dw-1 : 0', 'type' => 'input' }, - 's_dat_i' => { + 's_cyc_i' => { + 'intfc_port' => 'cyc_i', 'intfc_name' => 'plug:wb_slave[0]', - 'intfc_port' => 'dat_i', - 'range' => 'Dw-1 : 0', + 'range' => '', 'type' => 'input' }, 'm_we_o' => { + 'intfc_port' => 'we_o', 'intfc_name' => 'plug:wb_master[0]', - 'intfc_port' => 'we_o', 'range' => '', 'type' => 'output' }, 'credit_out' => { + 'intfc_port' => 'credit_out', 'intfc_name' => 'socket:ni[0]', - 'intfc_port' => 'credit_out', 'range' => 'V-1: 0', 'type' => 'output' }, 'flit_in_wr' => { + 'intfc_port' => 'flit_in_wr', 'intfc_name' => 'socket:ni[0]', - 'intfc_port' => 'flit_in_wr', 'range' => '', 'type' => 'input' }, - 'm_ack_i' => { - 'intfc_name' => 'plug:wb_master[0]', - 'intfc_port' => 'ack_i', - 'range' => '', - 'type' => 'input' + 's_dat_o' => { + 'intfc_port' => 'dat_o', + 'intfc_name' => 'plug:wb_slave[0]', + 'range' => 'Dw-1 : 0', + 'type' => 'output' }, 's_addr_i' => { + 'intfc_port' => 'adr_i', 'intfc_name' => 'plug:wb_slave[0]', - 'intfc_port' => 'adr_i', 'range' => 'S_Aw-1 : 0', 'type' => 'input' }, - 's_dat_o' => { - 'intfc_name' => 'plug:wb_slave[0]', - 'intfc_port' => 'dat_o', - 'range' => 'Dw-1 : 0', - 'type' => 'output' + 'm_ack_i' => { + 'intfc_port' => 'ack_i', + 'intfc_name' => 'plug:wb_master[0]', + 'range' => '', + 'type' => 'input' }, 's_cti_i' => { + 'intfc_port' => 'cti_i', 'intfc_name' => 'plug:wb_slave[0]', - 'intfc_port' => 'cti_i', 'range' => 'TAGw-1 : 0', 'type' => 'input' }, 'current_y' => { + 'intfc_port' => 'current_y', 'intfc_name' => 'socket:ni[0]', - 'intfc_port' => 'current_y', 'range' => 'Yw-1 : 0', 'type' => 'input' }, 's_sel_i' => { + 'intfc_port' => 'sel_i', 'intfc_name' => 'plug:wb_slave[0]', - 'intfc_port' => 'sel_i', 'range' => 'SELw-1 : 0', 'type' => 'input' }, 's_we_i' => { + 'intfc_port' => 'we_i', 'intfc_name' => 'plug:wb_slave[0]', - 'intfc_port' => 'we_i', 'range' => '', 'type' => 'input' }, 'm_stb_o' => { + 'intfc_port' => 'stb_o', 'intfc_name' => 'plug:wb_master[0]', - 'intfc_port' => 'stb_o', 'range' => '', 'type' => 'output' }, 's_stb_i' => { + 'intfc_port' => 'stb_i', 'intfc_name' => 'plug:wb_slave[0]', - 'intfc_port' => 'stb_i', 'range' => '', 'type' => 'input' }, 'flit_out_wr' => { + 'intfc_port' => 'flit_out_wr', 'intfc_name' => 'socket:ni[0]', - 'intfc_port' => 'flit_out_wr', 'range' => '', 'type' => 'output' }, 'm_dat_i' => { + 'intfc_port' => 'dat_i', 'intfc_name' => 'plug:wb_master[0]', - 'intfc_port' => 'dat_i', 'range' => 'Dw-1 : 0', 'type' => 'input' }, 'm_dat_o' => { + 'intfc_port' => 'dat_o', 'intfc_name' => 'plug:wb_master[0]', - 'intfc_port' => 'dat_o', 'range' => 'Dw-1 : 0', 'type' => 'output' }, 's_err_o' => { + 'intfc_port' => 'err_o', 'intfc_name' => 'plug:wb_slave[0]', - 'intfc_port' => 'err_o', 'range' => '', 'type' => 'output' }, 'm_cti_o' => { + 'intfc_port' => 'cti_o', 'intfc_name' => 'plug:wb_master[0]', - 'intfc_port' => 'cti_o', 'range' => 'TAGw-1 : 0', 'type' => 'output' }, 's_ack_o' => { + 'intfc_port' => 'ack_o', 'intfc_name' => 'plug:wb_slave[0]', - 'intfc_port' => 'ack_o', 'range' => '', 'type' => 'output' }, 'flit_out' => { + 'intfc_port' => 'flit_out', 'intfc_name' => 'socket:ni[0]', - 'intfc_port' => 'flit_out', 'range' => 'Fw-1 : 0', 'type' => 'output' }, 'credit_in' => { + 'intfc_port' => 'credit_in', 'intfc_name' => 'socket:ni[0]', - 'intfc_port' => 'credit_in', 'range' => 'V-1 : 0', 'type' => 'input' }, 'reset' => { + 'intfc_port' => 'reset_i', 'intfc_name' => 'plug:reset[0]', - 'intfc_port' => 'reset_i', 'range' => '', 'type' => 'input' }, 'm_err_i' => { + 'intfc_port' => 'err_i', 'intfc_name' => 'plug:wb_master[0]', - 'intfc_port' => 'err_i', 'range' => '', 'type' => 'input' }, 'm_rty_i' => { + 'intfc_port' => 'rty_i', 'intfc_name' => 'plug:wb_master[0]', - 'intfc_port' => 'rty_i', 'range' => '', 'type' => 'input' }, 'm_sel_o' => { + 'intfc_port' => 'sel_o', 'intfc_name' => 'plug:wb_master[0]', - 'intfc_port' => 'sel_o', 'range' => 'SELw-1 : 0', 'type' => 'output' }, 'flit_in' => { + 'intfc_port' => 'flit_in', 'intfc_name' => 'socket:ni[0]', - 'intfc_port' => 'flit_in', 'range' => 'Fw-1 : 0', 'type' => 'input' }, 'current_x' => { + 'intfc_port' => 'current_x', 'intfc_name' => 'socket:ni[0]', - 'intfc_port' => 'current_x', 'range' => 'Xw-1 : 0', 'type' => 'input' }, 'irq' => { + 'intfc_port' => 'int_o', 'intfc_name' => 'plug:interrupt_peripheral[0]', - 'intfc_port' => 'int_o', 'range' => '', 'type' => 'output' }, 'clk' => { + 'intfc_port' => 'clk_i', 'intfc_name' => 'plug:clk[0]', - 'intfc_port' => 'clk_i', 'range' => '', 'type' => 'input' }, 's_rty_o' => { + 'intfc_port' => 'rty_o', 'intfc_name' => 'plug:wb_slave[0]', - 'intfc_port' => 'rty_o', 'range' => '', 'type' => 'output' } }, + 'parameters_order' => [ + 'V', + 'P', + 'B', + 'NX', + 'NY', + 'Fpay', + 'TOPOLOGY', + 'ROUTE_TYPE', + 'ROUTE_NAME', + 'DEBUG_EN', + 'COMB_MEM_PTR_W', + 'COMB_PCK_SIZE_W', + 'Dw', + 'S_Aw', + 'M_Aw', + 'TAGw', + 'SELw', + 'Yw', + 'Fw', + 'Xw' + ], 'sockets' => { 'ni' => { 'connection_num' => 'single connection', - 'value' => 1, '0' => { 'name' => 'ni' }, + 'value' => 1, 'type' => 'num', 'ni' => {} }

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.