Line 1... |
Line 1... |
#######################################################################
|
#######################################################################
|
## File: mor1k_tile.SOC
|
## File: mor1k_tile.SOC
|
##
|
##
|
## Copyright (C) 2014-2016 Alireza Monemi
|
## Copyright (C) 2014-2019 Alireza Monemi
|
##
|
##
|
## This file is part of ProNoC 1.9.0
|
## This file is part of ProNoC 1.9.1
|
##
|
##
|
## WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT
|
## WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT
|
## MAY CAUSE UNEXPECTED BEHAIVOR.
|
## MAY CAUSE UNEXPECTED BEHAVIOR.
|
################################################################################
|
################################################################################
|
|
|
$soc = bless( {
|
$soc = bless( {
|
'tile_diagram' => {
|
'gui_status' => {
|
'show_unused' => 1,
|
'timeout' => 0,
|
'show_clk' => 1,
|
'status' => 'ideal'
|
'show_reset' => 1
|
|
},
|
},
|
'parameters_order' => {
|
'global_param' => {
|
'Unset-intfc' => [
|
'CORE_ID' => 3,
|
'uart-RxD_din_sim',
|
'SW_LOC' => '/home/alireza/work/git/hca_git/mpsoc_work/SOC/mor1k_tile/sw'
|
'uart-RxD_ready_sim',
|
|
'uart-RxD_wr_sim',
|
|
'bus-snoop_adr_o',
|
|
'bus-snoop_en_o'
|
|
]
|
|
},
|
},
|
'sim_uart0' => {
|
'instances' => {
|
'version' => 7
|
'ni_master0' => {
|
|
'category' => 'NoC',
|
|
'parameters_type' => {
|
|
'T1' => {
|
|
'value' => 'Parameter'
|
},
|
},
|
'verilator' => {
|
'SELF_LOOP_EN' => {
|
'libs' => {
|
'value' => 'Parameter'
|
'Vtop' => 'mor1k_tile.v'
|
|
}
|
|
},
|
},
|
'ni_master0' => {
|
'M_Aw' => {},
|
'version' => 59
|
'TAGw' => {},
|
|
'T3' => {
|
|
'value' => 'Parameter'
|
},
|
},
|
'compile_assign_type' => {
|
'EAw' => {},
|
'ss_clk_in' => 'Direct',
|
'T2' => {
|
'ni_credit_in' => 'Direct',
|
'value' => 'Parameter'
|
'ss_reset_in' => 'Direct',
|
|
'ni_flit_in_wr' => 'Direct',
|
|
'ni_current_x' => 'Direct',
|
|
'ni_current_y' => 'Direct',
|
|
'cpu_cpu_en' => 'Direct',
|
|
'ni_flit_in' => 'Direct'
|
|
},
|
},
|
'modules' => {},
|
'V' => {
|
'timer0' => {
|
'value' => 'Parameter'
|
'version' => 9
|
|
},
|
},
|
'instances' => {
|
'WEIGHTw' => {
|
'ni_master0' => {
|
'value' => 'Parameter'
|
'description_pdf' => '/mpsoc/src_peripheral/ni/NI.pdf',
|
|
'plugs' => {
|
|
'clk' => {
|
|
'value' => 1,
|
|
'nums' => {
|
|
'0' => {
|
|
'connect_socket_num' => '0',
|
|
'name' => 'clk',
|
|
'connect_socket' => 'clk',
|
|
'connect_id' => 'clk_source0'
|
|
}
|
|
},
|
},
|
'type' => 'num',
|
'LB' => {
|
'connection_num' => undef
|
'value' => 'Parameter'
|
},
|
},
|
'reset' => {
|
'VC_REALLOCATION_TYPE' => {
|
'nums' => {
|
'value' => 'Parameter'
|
'0' => {
|
|
'connect_socket_num' => '0',
|
|
'connect_socket' => 'reset',
|
|
'name' => 'reset',
|
|
'connect_id' => 'clk_source0'
|
|
}
|
|
},
|
},
|
'type' => 'num',
|
'Fpay' => {
|
'connection_num' => undef,
|
'value' => 'Parameter'
|
'value' => 1
|
|
},
|
},
|
'wb_slave' => {
|
'SMART_MAX' => {
|
'value' => 1,
|
'value' => 'Parameter'
|
'nums' => {
|
|
'0' => {
|
|
'addr' => '0xb800_0000 0xbfff_ffff custom devices',
|
|
'connect_id' => 'wishbone_bus0',
|
|
'base' => 3087007744,
|
|
'end' => 3087008767,
|
|
'connect_socket' => 'wb_slave',
|
|
'name' => 'wb_slave',
|
|
'width' => 10,
|
|
'connect_socket_num' => '3'
|
|
}
|
|
},
|
},
|
'type' => 'num',
|
'CONGESTION_INDEX' => {
|
'connection_num' => undef
|
'value' => 'Parameter'
|
},
|
},
|
'interrupt_peripheral' => {
|
'SSA_EN' => {
|
'nums' => {
|
'value' => 'Parameter'
|
'0' => {
|
|
'connect_socket_num' => '0',
|
|
'connect_socket' => 'interrupt_peripheral',
|
|
'name' => 'interrupt',
|
|
'connect_id' => 'mor1kx0'
|
|
}
|
|
},
|
},
|
'type' => 'num',
|
'Dw' => {
|
'connection_num' => undef,
|
'value' => 'Localparam'
|
'value' => 1
|
|
},
|
},
|
'wb_master' => {
|
'AVC_ATOMIC_EN' => {
|
'nums' => {
|
'value' => 'Parameter'
|
'0' => {
|
|
'connect_id' => 'wishbone_bus0',
|
|
'connect_socket_num' => '0',
|
|
'connect_socket' => 'wb_master',
|
|
'name' => 'wb_send'
|
|
},
|
},
|
'1' => {
|
'ESCAP_VC_MASK' => {
|
'name' => 'wb_receive',
|
'value' => 'Parameter'
|
'connect_socket' => 'wb_master',
|
|
'connect_socket_num' => '1',
|
|
'connect_id' => 'wishbone_bus0'
|
|
}
|
|
},
|
},
|
'type' => 'num',
|
'COMBINATION_TYPE' => {
|
'connection_num' => undef,
|
'value' => 'Parameter'
|
'value' => 2
|
},
|
|
'SELw' => {},
|
|
'ROUTE_NAME' => {
|
|
'value' => 'Parameter'
|
|
},
|
|
'CRC_EN' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'ADD_PIPREG_AFTER_CROSSBAR' => {
|
|
'value' => 'Parameter'
|
|
},
|
|
'RAw' => {},
|
|
'MAX_BURST_SIZE' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'TOPOLOGY' => {
|
|
'value' => 'Parameter'
|
|
},
|
|
'HDATA_PRECAPw' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'DEBUG_EN' => {
|
|
'value' => 'Parameter'
|
|
},
|
|
'BYTE_EN' => {
|
|
'value' => 'Parameter'
|
|
},
|
|
'MIN_PCK_SIZE' => {
|
|
'value' => 'Parameter'
|
|
},
|
|
'SWA_ARBITER_TYPE' => {
|
|
'value' => 'Parameter'
|
|
},
|
|
'FIRST_ARBITER_EXT_P_EN' => {
|
|
'value' => 'Parameter'
|
|
},
|
|
'B' => {
|
|
'value' => 'Parameter'
|
|
},
|
|
'C' => {
|
|
'value' => 'Parameter'
|
|
},
|
|
'MAX_TRANSACTION_WIDTH' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'MUX_TYPE' => {
|
|
'value' => 'Parameter'
|
|
},
|
|
'S_Aw' => {},
|
|
'PCK_TYPE' => {
|
|
'value' => 'Parameter'
|
}
|
}
|
},
|
},
|
'category' => 'NoC',
|
'parameters_order' => [
|
|
'MAX_TRANSACTION_WIDTH',
|
|
'MAX_BURST_SIZE',
|
|
'Dw',
|
|
'S_Aw',
|
|
'M_Aw',
|
|
'TAGw',
|
|
'SELw',
|
|
'CRC_EN',
|
|
'RAw',
|
|
'EAw',
|
|
'HDATA_PRECAPw'
|
|
],
|
'sockets' => {
|
'sockets' => {
|
'ni' => {
|
'ni' => {
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'name' => 'ni'
|
'name' => 'ni'
|
Line 140... |
Line 148... |
'type' => 'num',
|
'type' => 'num',
|
'connection_num' => 'single connection',
|
'connection_num' => 'single connection',
|
'value' => 1
|
'value' => 1
|
}
|
}
|
},
|
},
|
|
'description_pdf' => '/mpsoc/rtl/src_peripheral/ni/NI.pdf',
|
'module' => 'ni_master',
|
'module' => 'ni_master',
|
'instance_name' => 'ni',
|
'instance_name' => 'ni',
|
'parameters' => {
|
'parameters' => {
|
'DEBUG_EN' => {
|
'S_Aw' => {
|
'value' => '0'
|
'value' => '8'
|
},
|
|
'ROUTE_NAME' => {
|
|
'value' => '"XY"'
|
|
},
|
|
'CONGESTION_INDEX' => {
|
|
'value' => 3
|
|
},
|
|
'C' => {
|
|
'value' => 0
|
|
},
|
},
|
'AVC_ATOMIC_EN' => {
|
'PCK_TYPE' => {
|
'value' => 0
|
'value' => '"MULTI_FLIT"'
|
},
|
},
|
'ESCAP_VC_MASK' => {
|
'MUX_TYPE' => {
|
'value' => '2\'b01'
|
'value' => '"BINARY"'
|
},
|
},
|
'MAX_TRANSACTION_WIDTH' => {
|
'MAX_TRANSACTION_WIDTH' => {
|
'value' => '13'
|
'value' => '13'
|
},
|
},
|
|
'C' => {
|
|
'value' => 0
|
|
},
|
'B' => {
|
'B' => {
|
'value' => '4'
|
'value' => '4'
|
},
|
},
|
'RAw' => {
|
'FIRST_ARBITER_EXT_P_EN' => {
|
'value' => '16'
|
'value' => 1
|
},
|
},
|
'V' => {
|
'MIN_PCK_SIZE' => {
|
'value' => '2'
|
'value' => '2'
|
},
|
},
|
'Dw' => {
|
'SWA_ARBITER_TYPE' => {
|
'value' => '32'
|
'value' => '"RRA"'
|
},
|
},
|
'EAw' => {
|
'BYTE_EN' => {
|
'value' => '16'
|
'value' => 0
|
},
|
},
|
'WEIGHTw' => {
|
'DEBUG_EN' => {
|
'value' => '4'
|
'value' => '0'
|
},
|
},
|
'FIRST_ARBITER_EXT_P_EN' => {
|
'HDATA_PRECAPw' => {
|
'value' => 1
|
'value' => '0'
|
},
|
},
|
'TOPOLOGY' => {
|
'TOPOLOGY' => {
|
'value' => '"MESH"'
|
'value' => '"MESH"'
|
},
|
},
|
'MUX_TYPE' => {
|
'MAX_BURST_SIZE' => {
|
'value' => '"BINARY"'
|
'value' => '16'
|
|
},
|
|
'RAw' => {
|
|
'value' => '16'
|
},
|
},
|
'ADD_PIPREG_AFTER_CROSSBAR' => {
|
'ADD_PIPREG_AFTER_CROSSBAR' => {
|
'value' => '1\'b0'
|
'value' => '1\'b0'
|
},
|
},
|
'MIN_PCK_SIZE' => {
|
'CRC_EN' => {
|
'value' => '2'
|
'value' => '"NO"'
|
},
|
|
'T1' => {
|
|
'value' => 2
|
|
},
|
},
|
'SWA_ARBITER_TYPE' => {
|
'ROUTE_NAME' => {
|
'value' => '"RRA"'
|
'value' => '"XY"'
|
},
|
},
|
'COMBINATION_TYPE' => {
|
'COMBINATION_TYPE' => {
|
'value' => '"COMB_NONSPEC"'
|
'value' => '"COMB_NONSPEC"'
|
},
|
},
|
'CRC_EN' => {
|
'SELw' => {
|
'value' => '"NO"'
|
'value' => '4'
|
},
|
|
'TAGw' => {
|
|
'value' => '3'
|
|
},
|
},
|
'Fw' => {
|
'ESCAP_VC_MASK' => {
|
'value' => '2+V+Fpay'
|
'value' => '2\'b01'
|
},
|
},
|
'T2' => {
|
'AVC_ATOMIC_EN' => {
|
'value' => 2
|
'value' => 0
|
},
|
},
|
'M_Aw' => {
|
'Dw' => {
|
'value' => '32'
|
'value' => '32'
|
},
|
},
|
'MAX_BURST_SIZE' => {
|
'CONGESTION_INDEX' => {
|
'value' => '16'
|
'value' => 3
|
},
|
},
|
'SELw' => {
|
'SSA_EN' => {
|
'value' => '4'
|
'value' => '"NO"'
|
|
},
|
|
'SMART_MAX' => {
|
|
'value' => '0'
|
},
|
},
|
'Fpay' => {
|
'Fpay' => {
|
'value' => '32'
|
'value' => '32'
|
},
|
},
|
'T3' => {
|
|
'value' => 4
|
|
},
|
|
'VC_REALLOCATION_TYPE' => {
|
'VC_REALLOCATION_TYPE' => {
|
'value' => '"NONATOMIC"'
|
'value' => '"NONATOMIC"'
|
},
|
},
|
'SSA_EN' => {
|
'LB' => {
|
'value' => '"YES"'
|
'value' => '4'
|
},
|
},
|
'S_Aw' => {
|
'V' => {
|
'value' => '8'
|
'value' => '2'
|
}
|
|
},
|
},
|
'module_name' => 'ni_master',
|
'WEIGHTw' => {
|
'parameters_order' => [
|
'value' => '4'
|
'TOPOLOGY',
|
|
'ROUTE_NAME',
|
|
'T1',
|
|
'T2',
|
|
'T3',
|
|
'C',
|
|
'V',
|
|
'B',
|
|
'Fpay',
|
|
'MAX_TRANSACTION_WIDTH',
|
|
'MAX_BURST_SIZE',
|
|
'DEBUG_EN',
|
|
'Dw',
|
|
'S_Aw',
|
|
'M_Aw',
|
|
'TAGw',
|
|
'SELw',
|
|
'Fw',
|
|
'CRC_EN',
|
|
'RAw',
|
|
'EAw'
|
|
]
|
|
},
|
},
|
'clk_source0' => {
|
'T2' => {
|
'parameters' => {},
|
'value' => '2'
|
'instance_name' => 'ss',
|
|
'parameters_order' => [],
|
|
'module_name' => 'clk_source',
|
|
'category' => 'Source',
|
|
'module' => 'clk_source',
|
|
'sockets' => {
|
|
'reset' => {
|
|
'connection_num' => 'multi connection',
|
|
'nums' => {
|
|
'0' => {
|
|
'name' => 'reset'
|
|
}
|
|
},
|
},
|
'type' => 'num',
|
'EAw' => {
|
'value' => 1
|
'value' => '16'
|
},
|
},
|
'clk' => {
|
'T3' => {
|
'connection_num' => 'multi connection',
|
'value' => '1'
|
'nums' => {
|
|
'0' => {
|
|
'name' => 'clk'
|
|
}
|
|
},
|
},
|
'type' => 'num',
|
'TAGw' => {
|
'value' => 1
|
'value' => '3'
|
|
},
|
|
'M_Aw' => {
|
|
'value' => '32'
|
|
},
|
|
'SELF_LOOP_EN' => {
|
|
'value' => '"NO"'
|
|
},
|
|
'T1' => {
|
|
'value' => '2'
|
}
|
}
|
},
|
},
|
|
'module_name' => 'ni_master',
|
'plugs' => {
|
'plugs' => {
|
'reset' => {
|
'wb_slave' => {
|
'type' => 'num',
|
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'name' => 'reset',
|
'end' => 3087008767,
|
'connect_socket' => undef,
|
'connect_socket_num' => '1',
|
'connect_socket_num' => undef,
|
'width' => 10,
|
'connect_id' => 'IO'
|
'connect_socket' => 'wb_slave',
|
|
'connect_id' => 'wishbone_bus0',
|
|
'name' => 'wb_slave',
|
|
'addr' => '0xb800_0000 0xbfff_ffff custom devices',
|
|
'base' => 3087007744
|
}
|
}
|
},
|
},
|
'connection_num' => undef,
|
'type' => 'num',
|
'value' => 1
|
'value' => 1,
|
|
'connection_num' => undef
|
},
|
},
|
'clk' => {
|
'clk' => {
|
'value' => 1,
|
|
'connection_num' => undef,
|
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'connect_id' => 'IO',
|
'connect_socket_num' => '0',
|
'connect_socket_num' => undef,
|
'connect_socket' => 'clk',
|
'connect_socket' => undef,
|
'name' => 'clk',
|
'name' => 'clk'
|
'connect_id' => 'clk_source0'
|
}
|
|
},
|
|
'type' => 'num'
|
|
}
|
}
|
},
|
},
|
'description_pdf' => undef
|
'type' => 'num',
|
|
'connection_num' => undef,
|
|
'value' => 1
|
},
|
},
|
'mor1kx0' => {
|
|
'plugs' => {
|
|
'wb_master' => {
|
'wb_master' => {
|
'value' => 2,
|
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'1' => {
|
'connect_id' => 'wishbone_bus0',
|
'connect_socket_num' => '3',
|
'connect_socket' => 'wb_master',
|
'connect_socket' => 'wb_master',
|
'name' => 'iwb',
|
'connect_id' => 'wishbone_bus0',
|
'connect_socket_num' => '2'
|
'name' => 'wb_receive'
|
},
|
},
|
'1' => {
|
'0' => {
|
|
'name' => 'wb_send',
|
'connect_id' => 'wishbone_bus0',
|
'connect_id' => 'wishbone_bus0',
|
'connect_socket' => 'wb_master',
|
'connect_socket' => 'wb_master',
|
'name' => 'dwb',
|
'connect_socket_num' => '2'
|
'connect_socket_num' => '3'
|
|
}
|
}
|
},
|
},
|
'type' => 'num',
|
'type' => 'num',
|
|
'value' => 2,
|
'connection_num' => undef
|
'connection_num' => undef
|
},
|
},
|
'snoop' => {
|
'reset' => {
|
'connection_num' => undef,
|
'connection_num' => undef,
|
|
'value' => 1,
|
|
'type' => 'num',
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'connect_socket_num' => '0',
|
'name' => 'reset',
|
'connect_socket' => 'snoop',
|
'connect_id' => 'clk_source0',
|
'name' => 'snoop',
|
'connect_socket' => 'reset',
|
'connect_id' => 'wishbone_bus0'
|
'connect_socket_num' => '0'
|
|
}
|
}
|
}
|
},
|
},
|
'type' => 'num',
|
'interrupt_peripheral' => {
|
'value' => 1
|
'connection_num' => undef,
|
},
|
|
'enable' => {
|
|
'value' => 1,
|
'value' => 1,
|
'type' => 'num',
|
'type' => 'num',
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'connect_id' => 'IO',
|
'connect_socket_num' => '0',
|
'name' => 'enable',
|
'name' => 'interrupt',
|
'connect_socket' => undef,
|
'connect_id' => 'mor1kx0',
|
'connect_socket_num' => undef
|
'connect_socket' => 'interrupt_peripheral'
|
|
}
|
|
}
|
|
}
|
}
|
}
|
},
|
},
|
'connection_num' => undef
|
'clk_source0' => {
|
|
'parameters' => {
|
|
'FPGA_VENDOR' => {
|
|
'value' => '"ALTERA"'
|
|
}
|
},
|
},
|
|
'module_name' => 'clk_source',
|
|
'plugs' => {
|
'reset' => {
|
'reset' => {
|
'connection_num' => undef,
|
|
'type' => 'num',
|
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'connect_id' => 'clk_source0',
|
'connect_socket' => undef,
|
'name' => 'reset',
|
'name' => 'reset',
|
'connect_socket' => 'reset',
|
'connect_id' => 'IO',
|
'connect_socket_num' => '0'
|
'connect_socket_num' => undef
|
}
|
}
|
},
|
},
|
'value' => 1
|
'value' => 1,
|
|
'connection_num' => undef,
|
|
'type' => 'num'
|
},
|
},
|
'clk' => {
|
'clk' => {
|
'connection_num' => undef,
|
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'connect_id' => 'clk_source0',
|
'connect_socket_num' => undef,
|
|
'connect_socket' => undef,
|
'name' => 'clk',
|
'name' => 'clk',
|
'connect_socket' => 'clk',
|
'connect_id' => 'IO'
|
'connect_socket_num' => '0'
|
|
}
|
}
|
},
|
},
|
'type' => 'num',
|
'type' => 'num',
|
|
'connection_num' => undef,
|
'value' => 1
|
'value' => 1
|
}
|
}
|
},
|
},
|
|
'instance_name' => 'source',
|
'description_pdf' => undef,
|
'description_pdf' => undef,
|
'category' => 'Processor',
|
|
'module' => 'mor1kx',
|
|
'sockets' => {
|
'sockets' => {
|
'interrupt_peripheral' => {
|
'clk' => {
|
'type' => 'param',
|
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'name' => 'interrupt_peripheral'
|
'name' => 'clk'
|
}
|
|
},
|
|
'connection_num' => 'single connection',
|
|
'value' => 'IRQ_NUM'
|
|
}
|
}
|
},
|
},
|
'parameters' => {
|
'type' => 'num',
|
'FEATURE_DMMU' => {
|
'connection_num' => 'multi connection',
|
'value' => '"ENABLED"'
|
'value' => 1
|
},
|
},
|
'FEATURE_INSTRUCTIONCACHE' => {
|
'reset' => {
|
'value' => '"ENABLED"'
|
'connection_num' => 'multi connection',
|
|
'value' => 1,
|
|
'type' => 'num',
|
|
'nums' => {
|
|
'0' => {
|
|
'name' => 'reset'
|
|
}
|
|
}
|
|
}
|
},
|
},
|
'FEATURE_DATACACHE' => {
|
'module' => 'clk_source',
|
'value' => '"ENABLED"'
|
'category' => 'Source',
|
|
'parameters_type' => {
|
|
'FPGA_VENDOR' => {
|
|
'value' => 'Localparam'
|
|
}
|
},
|
},
|
'OPTION_DCACHE_SNOOP' => {
|
'parameters_order' => [
|
'value' => '"ENABLED"'
|
'FPGA_VENDOR'
|
|
]
|
},
|
},
|
'FEATURE_IMMU' => {
|
'ProNoC_jtag_uart0' => {
|
'value' => '"ENABLED"'
|
'parameters_order' => [
|
|
'Aw',
|
|
'SELw',
|
|
'TAGw',
|
|
'Dw',
|
|
'BUFF_Aw',
|
|
'JTAG_INDEX',
|
|
'JDw',
|
|
'JAw',
|
|
'JINDEXw',
|
|
'JSTATUSw',
|
|
'JTAG_CHAIN',
|
|
'JTAG_CONNECT',
|
|
'J2WBw',
|
|
'WB2Jw',
|
|
'INCLUDE_SIM_PRINTF'
|
|
],
|
|
'category' => 'Communication',
|
|
'parameters_type' => {
|
|
'JTAG_CHAIN' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'JINDEXw' => {},
|
|
'BUFF_Aw' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'SELw' => {},
|
|
'TAGw' => {},
|
|
'JDw' => {},
|
|
'Dw' => {},
|
|
'J2WBw' => {},
|
|
'JTAG_INDEX' => {
|
|
'value' => 'Localparam'
|
},
|
},
|
'IRQ_NUM' => {
|
'JTAG_CONNECT' => {
|
'value' => '32'
|
'value' => 'Localparam'
|
},
|
},
|
'OPTION_OPERAND_WIDTH' => {
|
'Aw' => {},
|
'value' => '32'
|
'WB2Jw' => {},
|
}
|
'JAw' => {},
|
|
'INCLUDE_SIM_PRINTF' => {
|
|
'value' => 'Localparam'
|
},
|
},
|
'instance_name' => 'cpu',
|
'JSTATUSw' => {}
|
'parameters_order' => [
|
|
'OPTION_OPERAND_WIDTH',
|
|
'IRQ_NUM',
|
|
'OPTION_DCACHE_SNOOP',
|
|
'FEATURE_INSTRUCTIONCACHE',
|
|
'FEATURE_DATACACHE',
|
|
'FEATURE_IMMU',
|
|
'FEATURE_DMMU'
|
|
],
|
|
'module_name' => 'mor1k'
|
|
},
|
},
|
'wishbone_bus0' => {
|
'module' => 'ProNoC_jtag_uart',
|
'sockets' => {
|
'sockets' => {
|
'wb_slave' => {
|
'RxD_sim' => {
|
'value' => 'S',
|
|
'connection_num' => 'single connection',
|
|
'type' => 'param',
|
|
'nums' => {
|
|
'0' => {
|
|
'name' => 'wb_slave'
|
|
}
|
|
}
|
|
},
|
|
'snoop' => {
|
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'name' => 'snoop'
|
'name' => 'RxD_sim'
|
}
|
}
|
},
|
},
|
'type' => 'num',
|
'type' => 'num',
|
'connection_num' => 'single connection',
|
'connection_num' => 'single connection',
|
'value' => 1
|
'value' => 1
|
},
|
},
|
'wb_master' => {
|
'jtag_to_wb' => {
|
'value' => 'M',
|
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'name' => 'wb_master'
|
'name' => 'jtag_to_wb'
|
}
|
}
|
},
|
},
|
'type' => 'param',
|
|
'connection_num' => 'single connection'
|
|
},
|
|
'wb_addr_map' => {
|
|
'value' => 1,
|
|
'connection_num' => 'single connection',
|
|
'type' => 'num',
|
'type' => 'num',
|
'nums' => {
|
'value' => 1,
|
'0' => {
|
'connection_num' => 'single connection'
|
'name' => 'wb_addr_map'
|
|
}
|
|
}
|
|
}
|
}
|
},
|
},
|
'module' => 'wishbone_bus',
|
|
'category' => 'Bus',
|
|
'description_pdf' => undef,
|
'description_pdf' => undef,
|
'plugs' => {
|
'instance_name' => 'uart',
|
'clk' => {
|
'module_name' => 'pronoc_jtag_uart',
|
'value' => 1,
|
'parameters' => {
|
'type' => 'num',
|
'SELw' => {
|
'nums' => {
|
'value' => '4'
|
'0' => {
|
|
'connect_id' => 'clk_source0',
|
|
'connect_socket_num' => '0',
|
|
'connect_socket' => 'clk',
|
|
'name' => 'clk'
|
|
}
|
|
},
|
},
|
'connection_num' => undef
|
'BUFF_Aw' => {
|
|
'value' => '4'
|
},
|
},
|
'reset' => {
|
'JTAG_CHAIN' => {
|
'value' => 1,
|
'value' => '3'
|
'connection_num' => undef,
|
|
'nums' => {
|
|
'0' => {
|
|
'connect_id' => 'clk_source0',
|
|
'connect_socket_num' => '0',
|
|
'name' => 'reset',
|
|
'connect_socket' => 'reset'
|
|
}
|
|
},
|
},
|
'type' => 'num'
|
'JINDEXw' => {
|
}
|
'value' => '8'
|
},
|
|
'module_name' => 'wishbone_bus',
|
|
'parameters_order' => [
|
|
'M',
|
|
'S',
|
|
'Dw',
|
|
'Aw',
|
|
'SELw',
|
|
'TAGw',
|
|
'CTIw',
|
|
'BTEw'
|
|
],
|
|
'instance_name' => 'bus',
|
|
'parameters' => {
|
|
'SELw' => {
|
|
'value' => 'Dw/8'
|
|
},
|
},
|
'Dw' => {
|
'Dw' => {
|
'value' => '32'
|
'value' => '32'
|
},
|
},
|
'Aw' => {
|
'J2WBw' => {
|
'value' => '32'
|
'value' => '(JTAG_CONNECT== "XILINX_JTAG_WB") ? 1+1+JDw+JAw : 1'
|
},
|
|
'S' => {
|
|
'value' => '4'
|
|
},
|
},
|
'CTIw' => {
|
'TAGw' => {
|
'value' => '3'
|
'value' => '3'
|
},
|
},
|
'M' => {
|
'JDw' => {
|
'value' => ' 4'
|
'value' => '32'
|
},
|
},
|
'TAGw' => {
|
'JTAG_CONNECT' => {
|
'value' => '3'
|
'value' => '"ALTERA_JTAG_WB"'
|
},
|
},
|
'BTEw' => {
|
'JTAG_INDEX' => {
|
'value' => '2 '
|
'value' => '126-CORE_ID'
|
}
|
|
}
|
|
},
|
},
|
'jtag_uart0' => {
|
'JSTATUSw' => {
|
'parameters_order' => [
|
'value' => '8'
|
'FPGA_VENDOR',
|
|
'SIM_BUFFER_SIZE',
|
|
'SIM_WAIT_COUNT'
|
|
],
|
|
'module_name' => 'jtag_uart_wb',
|
|
'parameters' => {
|
|
'SIM_BUFFER_SIZE' => {
|
|
'value' => 1000
|
|
},
|
},
|
'FPGA_VENDOR' => {
|
'INCLUDE_SIM_PRINTF' => {
|
'value' => ' "ALTERA"'
|
'value' => 'SIMPLE_PRINTF'
|
|
},
|
|
'JAw' => {
|
|
'value' => '32'
|
},
|
},
|
'SIM_WAIT_COUNT' => {
|
'Aw' => {
|
'value' => '1000'
|
'value' => '1'
|
|
},
|
|
'WB2Jw' => {
|
|
'value' => '(JTAG_CONNECT== "XILINX_JTAG_WB") ? 1+JSTATUSw+JINDEXw+1+JDw : 1'
|
}
|
}
|
},
|
},
|
'instance_name' => 'uart',
|
|
'description_pdf' => undef,
|
|
'plugs' => {
|
'plugs' => {
|
'interrupt_peripheral' => {
|
'wb_slave' => {
|
'type' => 'num',
|
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'connect_socket_num' => undef,
|
'base' => 2415919104,
|
'connect_socket' => undef,
|
'addr' => '0x9000_0000 0x90ff_ffff UART16550 Controller',
|
'name' => 'interrupt_peripheral',
|
'connect_id' => 'wishbone_bus0',
|
'connect_id' => 'NC'
|
'name' => 'wb_slave',
|
|
'connect_socket' => 'wb_slave',
|
|
'width' => 4,
|
|
'connect_socket_num' => '3',
|
|
'end' => 2415919119
|
}
|
}
|
},
|
},
|
|
'type' => 'num',
|
'connection_num' => undef,
|
'connection_num' => undef,
|
'value' => 1
|
'value' => 1
|
},
|
},
|
'clk' => {
|
'clk' => {
|
|
'connection_num' => undef,
|
'value' => 1,
|
'value' => 1,
|
'type' => 'num',
|
'type' => 'num',
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'connect_id' => 'clk_source0',
|
|
'connect_socket_num' => '0',
|
'connect_socket_num' => '0',
|
|
'connect_id' => 'clk_source0',
|
'name' => 'clk',
|
'name' => 'clk',
|
'connect_socket' => 'clk'
|
'connect_socket' => 'clk'
|
}
|
}
|
},
|
|
'connection_num' => undef
|
|
},
|
|
'wb_slave' => {
|
|
'connection_num' => undef,
|
|
'type' => 'num',
|
|
'nums' => {
|
|
'0' => {
|
|
'end' => 2415919135,
|
|
'name' => 'wb_slave',
|
|
'connect_socket' => 'wb_slave',
|
|
'connect_socket_num' => '1',
|
|
'width' => 5,
|
|
'connect_id' => 'wishbone_bus0',
|
|
'addr' => '0x9000_0000 0x90ff_ffff UART16550 Controller',
|
|
'base' => 2415919104
|
|
}
|
}
|
},
|
},
|
'value' => 1
|
|
},
|
|
'reset' => {
|
'reset' => {
|
'value' => 1,
|
|
'type' => 'num',
|
'type' => 'num',
|
|
'connection_num' => undef,
|
|
'value' => 1,
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'connect_id' => 'clk_source0',
|
'connect_id' => 'clk_source0',
|
'connect_socket_num' => '0',
|
'name' => 'reset',
|
'connect_socket' => 'reset',
|
'connect_socket' => 'reset',
|
'name' => 'reset'
|
'connect_socket_num' => '0'
|
|
}
|
|
}
|
|
}
|
}
|
}
|
},
|
},
|
'connection_num' => undef
|
'mor1kx0' => {
|
|
'parameters_order' => [
|
|
'OPTION_OPERAND_WIDTH',
|
|
'IRQ_NUM',
|
|
'OPTION_DCACHE_SNOOP',
|
|
'FEATURE_INSTRUCTIONCACHE',
|
|
'FEATURE_DATACACHE',
|
|
'FEATURE_IMMU',
|
|
'FEATURE_DMMU',
|
|
'FEATURE_MULTIPLIER',
|
|
'FEATURE_DIVIDER',
|
|
'OPTION_SHIFTER'
|
|
],
|
|
'parameters_type' => {
|
|
'OPTION_OPERAND_WIDTH' => {},
|
|
'IRQ_NUM' => {},
|
|
'FEATURE_MULTIPLIER' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'FEATURE_DATACACHE' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'OPTION_SHIFTER' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'FEATURE_DIVIDER' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'FEATURE_IMMU' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'FEATURE_INSTRUCTIONCACHE' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'OPTION_DCACHE_SNOOP' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'FEATURE_DMMU' => {
|
|
'value' => 'Localparam'
|
}
|
}
|
},
|
},
|
'module' => 'jtag_uart',
|
'category' => 'Processor',
|
|
'module' => 'mor1kx',
|
|
'description_pdf' => undef,
|
'sockets' => {
|
'sockets' => {
|
'RxD_sim' => {
|
'interrupt_peripheral' => {
|
|
'value' => 'IRQ_NUM',
|
'connection_num' => 'single connection',
|
'connection_num' => 'single connection',
|
'type' => 'num',
|
'type' => 'param',
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'name' => 'RxD_sim'
|
'name' => 'interrupt_peripheral'
|
|
}
|
}
|
}
|
},
|
|
'value' => 1
|
|
}
|
}
|
},
|
},
|
'category' => 'Communication'
|
'instance_name' => 'cpu',
|
},
|
|
'single_port_ram0' => {
|
|
'category' => 'RAM',
|
|
'module' => 'single_port_ram',
|
|
'sockets' => {},
|
|
'description_pdf' => '/mpsoc/src_peripheral/ram/RAM.pdf',
|
|
'plugs' => {
|
'plugs' => {
|
'reset' => {
|
'enable' => {
|
|
'nums' => {
|
|
'0' => {
|
|
'connect_socket_num' => undef,
|
|
'connect_socket' => undef,
|
|
'name' => 'enable',
|
|
'connect_id' => 'IO'
|
|
}
|
|
},
|
'connection_num' => undef,
|
'connection_num' => undef,
|
'type' => 'num',
|
'value' => 1,
|
|
'type' => 'num'
|
|
},
|
|
'wb_master' => {
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'connect_id' => 'clk_source0',
|
|
'connect_socket_num' => '0',
|
'connect_socket_num' => '0',
|
'name' => 'reset',
|
'connect_socket' => 'wb_master',
|
'connect_socket' => 'reset'
|
'name' => 'iwb',
|
|
'connect_id' => 'wishbone_bus0'
|
|
},
|
|
'1' => {
|
|
'connect_socket' => 'wb_master',
|
|
'name' => 'dwb',
|
|
'connect_id' => 'wishbone_bus0',
|
|
'connect_socket_num' => '1'
|
}
|
}
|
},
|
},
|
'value' => 1
|
'connection_num' => undef,
|
|
'value' => 2,
|
|
'type' => 'num'
|
},
|
},
|
'wb_slave' => {
|
'reset' => {
|
'value' => 1,
|
'value' => 1,
|
'connection_num' => undef,
|
'connection_num' => undef,
|
'type' => 'num',
|
'type' => 'num',
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'name' => 'wb',
|
|
'connect_socket' => 'wb_slave',
|
|
'width' => 'WB_Aw',
|
|
'connect_socket_num' => '0',
|
'connect_socket_num' => '0',
|
'end' => 65535,
|
'connect_id' => 'clk_source0',
|
'addr' => '0x0000_0000 0x3fff_ffff RAM',
|
'name' => 'reset',
|
'connect_id' => 'wishbone_bus0',
|
'connect_socket' => 'reset'
|
'base' => 0
|
|
}
|
}
|
}
|
}
|
},
|
},
|
'clk' => {
|
'clk' => {
|
'connection_num' => undef,
|
'connection_num' => undef,
|
|
'value' => 1,
|
|
'type' => 'num',
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'name' => 'clk',
|
|
'connect_socket' => 'clk',
|
|
'connect_socket_num' => '0',
|
'connect_socket_num' => '0',
|
'connect_id' => 'clk_source0'
|
'name' => 'clk',
|
|
'connect_id' => 'clk_source0',
|
|
'connect_socket' => 'clk'
|
|
}
|
}
|
}
|
},
|
},
|
'type' => 'num',
|
'snoop' => {
|
'value' => 1
|
'nums' => {
|
|
'0' => {
|
|
'connect_id' => 'wishbone_bus0',
|
|
'name' => 'snoop',
|
|
'connect_socket' => 'snoop',
|
|
'connect_socket_num' => '0'
|
}
|
}
|
},
|
},
|
'parameters' => {
|
'connection_num' => undef,
|
'INIT_FILE_PATH' => {
|
'value' => 1,
|
'value' => 'SW_LOC'
|
'type' => 'num'
|
|
}
|
},
|
},
|
'Dw' => {
|
'module_name' => 'mor1k',
|
|
'parameters' => {
|
|
'OPTION_OPERAND_WIDTH' => {
|
'value' => '32'
|
'value' => '32'
|
},
|
},
|
'Aw' => {
|
'IRQ_NUM' => {
|
'value' => 14
|
'value' => '32'
|
},
|
|
'SELw' => {
|
|
'value' => 'Dw/8'
|
|
},
|
},
|
'JTAG_CONNECT' => {
|
'FEATURE_MULTIPLIER' => {
|
'value' => '"DISABLED"'
|
'value' => '"THREESTAGE"'
|
},
|
},
|
'BURST_MODE' => {
|
'FEATURE_DATACACHE' => {
|
'value' => '"ENABLED"'
|
'value' => '"ENABLED"'
|
},
|
},
|
'BTEw' => {
|
'FEATURE_IMMU' => {
|
'value' => '2'
|
'value' => '"ENABLED"'
|
},
|
|
'JTAG_INDEX' => {
|
|
'value' => 'CORE_ID'
|
|
},
|
},
|
'BYTE_WR_EN' => {
|
'FEATURE_DIVIDER' => {
|
'value' => '"YES"'
|
'value' => '"SERIAL"'
|
},
|
},
|
'INITIAL_EN' => {
|
'OPTION_SHIFTER' => {
|
'value' => '"YES"'
|
'value' => '"BARREL"'
|
},
|
},
|
'MEM_CONTENT_FILE_NAME' => {
|
'FEATURE_INSTRUCTIONCACHE' => {
|
'value' => '"ram0"'
|
'value' => '"ENABLED"'
|
},
|
},
|
'TAGw' => {
|
'FEATURE_DMMU' => {
|
'value' => '3'
|
'value' => '"ENABLED"'
|
},
|
},
|
'FPGA_VENDOR' => {
|
'OPTION_DCACHE_SNOOP' => {
|
'value' => '"ALTERA"'
|
'value' => '"ENABLED"'
|
|
}
|
|
}
|
},
|
},
|
'CTIw' => {
|
'single_port_ram0' => {
|
'value' => '3'
|
'instance_name' => 'ram',
|
|
'plugs' => {
|
|
'clk' => {
|
|
'type' => 'num',
|
|
'connection_num' => undef,
|
|
'value' => 1,
|
|
'nums' => {
|
|
'0' => {
|
|
'connect_socket_num' => '0',
|
|
'name' => 'clk',
|
|
'connect_id' => 'clk_source0',
|
|
'connect_socket' => 'clk'
|
|
}
|
|
}
|
},
|
},
|
'WB_Aw' => {
|
'wb_slave' => {
|
'value' => 'Aw+2'
|
'connection_num' => undef,
|
|
'value' => 1,
|
|
'type' => 'num',
|
|
'nums' => {
|
|
'0' => {
|
|
'width' => 'WB_Byte_Aw',
|
|
'connect_socket' => 'wb_slave',
|
|
'name' => 'wb',
|
|
'connect_id' => 'wishbone_bus0',
|
|
'end' => 4194303,
|
|
'connect_socket_num' => '0',
|
|
'addr' => '0x0000_0000 0x3fff_ffff RAM',
|
|
'base' => 0
|
|
}
|
}
|
}
|
},
|
},
|
'instance_name' => 'ram',
|
'reset' => {
|
|
'type' => 'num',
|
|
'value' => 1,
|
|
'connection_num' => undef,
|
|
'nums' => {
|
|
'0' => {
|
|
'connect_id' => 'clk_source0',
|
|
'name' => 'reset',
|
|
'connect_socket' => 'reset',
|
|
'connect_socket_num' => '0'
|
|
}
|
|
}
|
|
}
|
|
},
|
|
'parameters' => {
|
|
'JTAG_CHAIN' => {
|
|
'value' => '4'
|
|
},
|
|
'SELw' => {
|
|
'value' => 'Dw/8'
|
|
},
|
|
'JDw' => {
|
|
'value' => 'Dw'
|
|
},
|
|
'BYTE_WR_EN' => {
|
|
'value' => '"YES"'
|
|
},
|
|
'Dw' => {
|
|
'value' => '32'
|
|
},
|
|
'BTEw' => {
|
|
'value' => '2'
|
|
},
|
|
'JTAG_CONNECT' => {
|
|
'value' => '"ALTERA_JTAG_WB"'
|
|
},
|
|
'Aw' => {
|
|
'value' => '14'
|
|
},
|
|
'BURST_MODE' => {
|
|
'value' => '"ENABLED"'
|
|
},
|
|
'WB_Aw' => {
|
|
'value' => '20'
|
|
},
|
|
'INIT_FILE_PATH' => {
|
|
'value' => 'SW_LOC'
|
|
},
|
|
'JAw' => {
|
|
'value' => '32'
|
|
},
|
|
'JSTATUSw' => {
|
|
'value' => '8'
|
|
},
|
|
'INITIAL_EN' => {
|
|
'value' => '"YES"'
|
|
},
|
|
'CTIw' => {
|
|
'value' => '3'
|
|
},
|
|
'CORE_NUM' => {
|
|
'value' => 'CORE_ID'
|
|
},
|
|
'JINDEXw' => {
|
|
'value' => '8'
|
|
},
|
|
'WB_Byte_Aw' => {
|
|
'value' => 'WB_Aw+2'
|
|
},
|
|
'TAGw' => {
|
|
'value' => '3'
|
|
},
|
|
'J2WBw' => {
|
|
'value' => '(JTAG_CONNECT== "XILINX_JTAG_WB") ? 1+1+JDw+JAw : 1'
|
|
},
|
|
'JTAG_INDEX' => {
|
|
'value' => 'CORE_ID'
|
|
},
|
|
'MEM_CONTENT_FILE_NAME' => {
|
|
'value' => '"ram0"'
|
|
},
|
|
'WB2Jw' => {
|
|
'value' => '(JTAG_CONNECT== "XILINX_JTAG_WB") ? 1+JSTATUSw+JINDEXw+1+JDw : 1'
|
|
},
|
|
'FPGA_VENDOR' => {
|
|
'value' => '"ALTERA"'
|
|
}
|
|
},
|
|
'module_name' => 'wb_single_port_ram',
|
|
'parameters_type' => {
|
|
'JTAG_CHAIN' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'SELw' => {},
|
|
'JDw' => {},
|
|
'BYTE_WR_EN' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'Dw' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'BTEw' => {},
|
|
'JTAG_CONNECT' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'BURST_MODE' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'Aw' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'INIT_FILE_PATH' => {},
|
|
'JAw' => {},
|
|
'WB_Aw' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'JSTATUSw' => {},
|
|
'INITIAL_EN' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'JINDEXw' => {},
|
|
'CORE_NUM' => {},
|
|
'CTIw' => {},
|
|
'WB_Byte_Aw' => {},
|
|
'TAGw' => {},
|
|
'J2WBw' => {},
|
|
'JTAG_INDEX' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'MEM_CONTENT_FILE_NAME' => {
|
|
'value' => 'Localparam'
|
|
},
|
|
'WB2Jw' => {},
|
|
'FPGA_VENDOR' => {
|
|
'value' => 'Localparam'
|
|
}
|
|
},
|
|
'category' => 'RAM',
|
'parameters_order' => [
|
'parameters_order' => [
|
'Dw',
|
'Dw',
|
'Aw',
|
'Aw',
|
|
'WB_Aw',
|
'BYTE_WR_EN',
|
'BYTE_WR_EN',
|
'FPGA_VENDOR',
|
'FPGA_VENDOR',
|
'JTAG_CONNECT',
|
'JTAG_CONNECT',
|
'JTAG_INDEX',
|
'JTAG_INDEX',
|
|
'CORE_NUM',
|
'TAGw',
|
'TAGw',
|
'SELw',
|
'SELw',
|
'CTIw',
|
'CTIw',
|
'BTEw',
|
'BTEw',
|
'WB_Aw',
|
'WB_Byte_Aw',
|
'BURST_MODE',
|
'BURST_MODE',
|
'MEM_CONTENT_FILE_NAME',
|
'MEM_CONTENT_FILE_NAME',
|
'INITIAL_EN',
|
'INITIAL_EN',
|
'INIT_FILE_PATH'
|
'INIT_FILE_PATH',
|
],
|
'JDw',
|
'module_name' => 'wb_single_port_ram'
|
'JAw',
|
},
|
'JSTATUSw',
|
'timer0' => {
|
'JINDEXw',
|
'module_name' => 'timer',
|
'J2WBw',
|
'parameters_order' => [
|
'WB2Jw',
|
'CNTw',
|
'JTAG_CHAIN'
|
'Dw',
|
|
'Aw',
|
|
'TAGw',
|
|
'SELw',
|
|
'PRESCALER_WIDTH'
|
|
],
|
],
|
'instance_name' => 'timer',
|
'description_pdf' => '/mpsoc/rtl/src_peripheral/ram/RAM.pdf',
|
'parameters' => {
|
'sockets' => {
|
'TAGw' => {
|
'jtag_to_wb' => {
|
'value' => '3'
|
|
},
|
|
'SELw' => {
|
|
'value' => '4'
|
|
},
|
|
'Aw' => {
|
|
'value' => '3'
|
|
},
|
|
'CNTw' => {
|
|
'value' => '32 '
|
|
},
|
|
'Dw' => {
|
|
'value' => '32'
|
|
},
|
|
'PRESCALER_WIDTH' => {
|
|
'value' => '8'
|
|
}
|
|
},
|
|
'description_pdf' => '/mpsoc/src_peripheral/timer/timer.pdf',
|
|
'plugs' => {
|
|
'interrupt_peripheral' => {
|
|
'connection_num' => undef,
|
|
'type' => 'num',
|
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'connect_socket_num' => '1',
|
'name' => 'jtag_to_wb'
|
'connect_socket' => 'interrupt_peripheral',
|
|
'name' => 'intrp',
|
|
'connect_id' => 'mor1kx0'
|
|
}
|
}
|
},
|
},
|
'value' => 1
|
'connection_num' => 'single connection',
|
},
|
|
'reset' => {
|
|
'value' => 1,
|
'value' => 1,
|
'connection_num' => undef,
|
'type' => 'num'
|
'nums' => {
|
|
'0' => {
|
|
'connect_socket' => 'reset',
|
|
'name' => 'reset',
|
|
'connect_socket_num' => '0',
|
|
'connect_id' => 'clk_source0'
|
|
}
|
}
|
},
|
},
|
'type' => 'num'
|
'module' => 'single_port_ram'
|
},
|
},
|
|
'timer0' => {
|
|
'instance_name' => 'timer',
|
|
'plugs' => {
|
'wb_slave' => {
|
'wb_slave' => {
|
'value' => 1,
|
'type' => 'num',
|
'connection_num' => undef,
|
'connection_num' => undef,
|
|
'value' => 1,
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'end' => 2516582431,
|
'end' => 2516582431,
|
'name' => 'wb',
|
'connect_socket_num' => '2',
|
'connect_socket' => 'wb_slave',
|
'connect_socket' => 'wb_slave',
|
'width' => 5,
|
'width' => 5,
|
'connect_socket_num' => '2',
|
|
'addr' => '0x9600_0000 0x96ff_ffff PWM/Timer/Counter Ctrl',
|
|
'connect_id' => 'wishbone_bus0',
|
'connect_id' => 'wishbone_bus0',
|
|
'name' => 'wb',
|
|
'addr' => '0x9600_0000 0x96ff_ffff PWM/Timer/Counter Ctrl',
|
'base' => 2516582400
|
'base' => 2516582400
|
}
|
}
|
},
|
}
|
'type' => 'num'
|
|
},
|
},
|
'clk' => {
|
'clk' => {
|
'nums' => {
|
'nums' => {
|
'0' => {
|
'0' => {
|
'connect_id' => 'clk_source0',
|
|
'connect_socket_num' => '0',
|
'connect_socket_num' => '0',
|
'connect_socket' => 'clk',
|
'name' => 'clk',
|
'name' => 'clk'
|
'connect_id' => 'clk_source0',
|
|
'connect_socket' => 'clk'
|
}
|
}
|
},
|
},
|
'type' => 'num',
|
'value' => 1,
|
'connection_num' => undef,
|
'connection_num' => undef,
|
'value' => 1
|
'type' => 'num'
|
}
|
|
},
|
},
|
'sockets' => {},
|
'reset' => {
|
'module' => 'timer',
|
'nums' => {
|
'category' => 'Timer'
|
'0' => {
|
|
'connect_socket_num' => '0',
|
|
'connect_id' => 'clk_source0',
|
|
'name' => 'reset',
|
|
'connect_socket' => 'reset'
|
}
|
}
|
},
|
},
|
'hdl_files' => undef,
|
'value' => 1,
|
'top_ip' => bless( {
|
'connection_num' => undef,
|
'interface' => {
|
'type' => 'num'
|
'plug:reset[0]' => {
|
|
'ports' => {
|
|
'ss_reset_in' => {
|
|
'instance_name' => 'clk_source0',
|
|
'range' => '',
|
|
'type' => 'input',
|
|
'intfc_port' => 'reset_i'
|
|
}
|
|
}
|
|
},
|
},
|
'plug:enable[0]' => {
|
'interrupt_peripheral' => {
|
'ports' => {
|
'nums' => {
|
'cpu_cpu_en' => {
|
'0' => {
|
'intfc_port' => 'enable_i',
|
'connect_socket' => 'interrupt_peripheral',
|
'type' => 'input',
|
'connect_id' => 'mor1kx0',
|
'instance_name' => 'mor1kx0',
|
'name' => 'intrp',
|
'range' => ''
|
'connect_socket_num' => '1'
|
}
|
|
}
|
}
|
},
|
},
|
'plug:clk[0]' => {
|
'type' => 'num',
|
'ports' => {
|
'connection_num' => undef,
|
'ss_clk_in' => {
|
'value' => 1
|
'intfc_port' => 'clk_i',
|
|
'type' => 'input',
|
|
'range' => '',
|
|
'instance_name' => 'clk_source0'
|
|
}
|
|
}
|
}
|
},
|
},
|
'socket:ni[0]' => {
|
'module_name' => 'timer',
|
'ports' => {
|
'parameters' => {
|
'ni_flit_out' => {
|
'Aw' => {
|
'intfc_port' => 'flit_out',
|
'value' => '3'
|
'type' => 'output',
|
|
'range' => 'ni_Fw-1 : 0',
|
|
'instance_name' => 'ni_master0'
|
|
},
|
},
|
'ni_flit_in' => {
|
'Dw' => {
|
'type' => 'input',
|
'value' => '32'
|
'intfc_port' => 'flit_in',
|
|
'instance_name' => 'ni_master0',
|
|
'range' => 'ni_Fw-1 : 0'
|
|
},
|
},
|
'ni_current_r_addr' => {
|
'TAGw' => {
|
'intfc_port' => 'current_r_addr',
|
'value' => '3'
|
'type' => 'input',
|
|
'instance_name' => 'ni_master0',
|
|
'range' => 'ni_RAw-1 : 0'
|
|
},
|
},
|
'ni_flit_out_wr' => {
|
'PRESCALER_WIDTH' => {
|
'type' => 'output',
|
'value' => '8'
|
'intfc_port' => 'flit_out_wr',
|
|
'instance_name' => 'ni_master0',
|
|
'range' => ''
|
|
},
|
},
|
'ni_current_e_addr' => {
|
'CNTw' => {
|
'range' => 'ni_EAw-1 : 0',
|
'value' => '32 '
|
'instance_name' => 'ni_master0',
|
|
'intfc_port' => 'current_e_addr',
|
|
'type' => 'input'
|
|
},
|
},
|
'ni_flit_in_wr' => {
|
'SELw' => {
|
'intfc_port' => 'flit_in_wr',
|
'value' => '4'
|
'type' => 'input',
|
}
|
'range' => '',
|
|
'instance_name' => 'ni_master0'
|
|
},
|
},
|
'ni_credit_in' => {
|
'parameters_type' => {
|
'range' => 'ni_V-1 : 0',
|
'Dw' => {},
|
'instance_name' => 'ni_master0',
|
'TAGw' => {},
|
'type' => 'input',
|
'PRESCALER_WIDTH' => {
|
'intfc_port' => 'credit_in'
|
'value' => 'Localparam'
|
},
|
},
|
'ni_credit_out' => {
|
'Aw' => {},
|
'intfc_port' => 'credit_out',
|
'SELw' => {},
|
'type' => 'output',
|
'CNTw' => {}
|
'instance_name' => 'ni_master0',
|
},
|
'range' => 'ni_V-1 : 0'
|
'category' => 'Timer',
|
|
'parameters_order' => [
|
|
'CNTw',
|
|
'Dw',
|
|
'Aw',
|
|
'TAGw',
|
|
'SELw',
|
|
'PRESCALER_WIDTH'
|
|
],
|
|
'sockets' => {},
|
|
'description_pdf' => '/mpsoc/rtl/src_peripheral/timer/timer.pdf',
|
|
'module' => 'timer'
|
|
},
|
|
'wishbone_bus0' => {
|
|
'instance_name' => 'bus',
|
|
'module_name' => 'wishbone_bus',
|
|
'parameters' => {
|
|
'S' => {
|
|
'value' => '4'
|
|
},
|
|
'Aw' => {
|
|
'value' => '32'
|
|
},
|
|
'M' => {
|
|
'value' => ' 4'
|
|
},
|
|
'Dw' => {
|
|
'value' => '32'
|
|
},
|
|
'BTEw' => {
|
|
'value' => '2 '
|
|
},
|
|
'TAGw' => {
|
|
'value' => '3'
|
|
},
|
|
'SELw' => {
|
|
'value' => 'Dw/8'
|
|
},
|
|
'CTIw' => {
|
|
'value' => '3'
|
}
|
}
|
|
},
|
|
'plugs' => {
|
|
'clk' => {
|
|
'nums' => {
|
|
'0' => {
|
|
'connect_socket_num' => '0',
|
|
'connect_socket' => 'clk',
|
|
'name' => 'clk',
|
|
'connect_id' => 'clk_source0'
|
}
|
}
|
|
},
|
|
'connection_num' => undef,
|
|
'value' => 1,
|
|
'type' => 'num'
|
|
},
|
|
'reset' => {
|
|
'nums' => {
|
|
'0' => {
|
|
'name' => 'reset',
|
|
'connect_id' => 'clk_source0',
|
|
'connect_socket' => 'reset',
|
|
'connect_socket_num' => '0'
|
}
|
}
|
},
|
},
|
'ports' => {
|
'connection_num' => undef,
|
'ni_credit_in' => {
|
'value' => 1,
|
'intfc_port' => 'credit_in',
|
'type' => 'num'
|
'type' => 'input',
|
}
|
'intfc_name' => 'socket:ni[0]',
|
|
'instance_name' => 'ni_master0',
|
|
'range' => 'ni_V-1 : 0'
|
|
},
|
},
|
'ss_clk_in' => {
|
'category' => 'Bus',
|
'type' => 'input',
|
'parameters_type' => {
|
'intfc_port' => 'clk_i',
|
'TAGw' => {},
|
'range' => '',
|
'Dw' => {
|
'instance_name' => 'clk_source0',
|
'value' => 'Localparam'
|
'intfc_name' => 'plug:clk[0]'
|
|
},
|
},
|
'ni_credit_out' => {
|
'BTEw' => {},
|
'intfc_name' => 'socket:ni[0]',
|
'CTIw' => {},
|
'instance_name' => 'ni_master0',
|
'SELw' => {},
|
'range' => 'ni_V-1 : 0',
|
'Aw' => {
|
'type' => 'output',
|
'value' => 'Localparam'
|
'intfc_port' => 'credit_out'
|
|
},
|
},
|
'ni_flit_in' => {
|
'S' => {
|
'instance_name' => 'ni_master0',
|
'value' => 'Localparam'
|
'intfc_name' => 'socket:ni[0]',
|
|
'range' => 'ni_Fw-1 : 0',
|
|
'intfc_port' => 'flit_in',
|
|
'type' => 'input'
|
|
},
|
},
|
'cpu_cpu_en' => {
|
'M' => {
|
'range' => '',
|
'value' => 'Localparam'
|
'instance_name' => 'mor1kx0',
|
}
|
'intfc_name' => 'plug:enable[0]',
|
|
'type' => 'input',
|
|
'intfc_port' => 'enable_i'
|
|
},
|
},
|
'ni_flit_out' => {
|
'parameters_order' => [
|
'instance_name' => 'ni_master0',
|
'M',
|
'intfc_name' => 'socket:ni[0]',
|
'S',
|
'range' => 'ni_Fw-1 : 0',
|
'Dw',
|
'type' => 'output',
|
'Aw',
|
'intfc_port' => 'flit_out'
|
'SELw',
|
|
'TAGw',
|
|
'CTIw',
|
|
'BTEw'
|
|
],
|
|
'sockets' => {
|
|
'snoop' => {
|
|
'nums' => {
|
|
'0' => {
|
|
'name' => 'snoop'
|
|
}
|
|
},
|
|
'type' => 'num',
|
|
'value' => 1,
|
|
'connection_num' => 'single connection'
|
|
},
|
|
'wb_slave' => {
|
|
'type' => 'param',
|
|
'connection_num' => 'single connection',
|
|
'value' => 'S',
|
|
'nums' => {
|
|
'0' => {
|
|
'name' => 'wb_slave'
|
|
}
|
|
}
|
|
},
|
|
'wb_master' => {
|
|
'nums' => {
|
|
'0' => {
|
|
'name' => 'wb_master'
|
|
}
|
|
},
|
|
'connection_num' => 'single connection',
|
|
'value' => 'M',
|
|
'type' => 'param'
|
|
},
|
|
'wb_addr_map' => {
|
|
'connection_num' => 'single connection',
|
|
'value' => 1,
|
|
'type' => 'num',
|
|
'nums' => {
|
|
'0' => {
|
|
'name' => 'wb_addr_map'
|
|
}
|
|
}
|
|
}
|
|
},
|
|
'description_pdf' => undef,
|
|
'module' => 'wishbone_bus'
|
|
}
|
|
},
|
|
'single_port_ram0' => {
|
|
'version' => 39
|
|
},
|
|
'current_module_param_type' => undef,
|
|
'device_win_adj' => {
|
|
'ha' => '0',
|
|
'va' => '0'
|
|
},
|
|
'RAM0' => {
|
|
'end' => 65536,
|
|
'start' => 49152
|
|
},
|
|
'soc_name' => 'mor1k_tile',
|
|
'hdl_files' => undef,
|
|
'tile_diagram' => {
|
|
'show_clk' => 0,
|
|
'show_unused' => 1,
|
|
'show_reset' => 0
|
|
},
|
|
'Unset-intfc' => {},
|
|
'parameters_order' => {
|
|
'current_module_param' => [
|
|
'FPGA_VENDOR',
|
|
'M',
|
|
'S',
|
|
'Dw',
|
|
'Aw',
|
|
'SELw',
|
|
'TAGw',
|
|
'CTIw',
|
|
'BTEw',
|
|
'OPTION_OPERAND_WIDTH',
|
|
'IRQ_NUM',
|
|
'OPTION_DCACHE_SNOOP',
|
|
'FEATURE_INSTRUCTIONCACHE',
|
|
'FEATURE_DATACACHE',
|
|
'FEATURE_IMMU',
|
|
'FEATURE_DMMU',
|
|
'FEATURE_MULTIPLIER',
|
|
'FEATURE_DIVIDER',
|
|
'OPTION_SHIFTER',
|
|
'WB_Aw',
|
|
'BYTE_WR_EN',
|
|
'JTAG_CONNECT',
|
|
'JTAG_INDEX',
|
|
'CORE_NUM',
|
|
'WB_Byte_Aw',
|
|
'BURST_MODE',
|
|
'MEM_CONTENT_FILE_NAME',
|
|
'INITIAL_EN',
|
|
'INIT_FILE_PATH',
|
|
'JDw',
|
|
'JAw',
|
|
'JSTATUSw',
|
|
'JINDEXw',
|
|
'J2WBw',
|
|
'WB2Jw',
|
|
'JTAG_CHAIN',
|
|
'MAX_TRANSACTION_WIDTH',
|
|
'MAX_BURST_SIZE',
|
|
'S_Aw',
|
|
'M_Aw',
|
|
'CRC_EN',
|
|
'RAw',
|
|
'EAw',
|
|
'HDATA_PRECAPw',
|
|
'CNTw',
|
|
'PRESCALER_WIDTH',
|
|
'BUFF_Aw',
|
|
'INCLUDE_SIM_PRINTF'
|
|
]
|
|
},
|
|
'ROM0' => {
|
|
'start' => 0,
|
|
'end' => 49152
|
|
},
|
|
'SOURCE_SET' => {
|
|
'REDEFINE_TOP' => 0,
|
|
'SOC' => bless( {
|
|
'modules' => {},
|
|
'gui_status' => {
|
|
'timeout' => 0,
|
|
'status' => 'refresh_soc'
|
|
},
|
|
'instances' => {
|
|
'TOP' => {
|
|
'parameters_order' => [],
|
|
'instance_name' => 'TOP',
|
|
'category' => 'TOP',
|
|
'module_name' => 'TOP',
|
|
'plugs' => {
|
|
'reset' => {
|
|
'nums' => {
|
|
'0' => {
|
|
'connect_id' => 'IO',
|
|
'name' => 'source_reset_in',
|
|
'connect_socket' => undef,
|
|
'connect_socket_num' => undef
|
|
}
|
|
},
|
|
'type' => 'num',
|
|
'connection_num' => undef,
|
|
'value' => 1
|
|
},
|
|
'clk' => {
|
|
'type' => 'num',
|
|
'value' => 1,
|
|
'connection_num' => undef,
|
|
'nums' => {
|
|
'0' => {
|
|
'connect_socket_num' => undef,
|
|
'connect_id' => 'IO',
|
|
'name' => 'source_clk_in',
|
|
'connect_socket' => undef
|
|
}
|
|
}
|
|
}
|
|
},
|
|
'module' => 'TOP',
|
|
'description_pdf' => undef
|
|
}
|
|
},
|
|
'soc_name' => {
|
|
'TOP' => undef
|
|
},
|
|
'hdl_files' => undef,
|
|
'hdl_files_ticked' => undef,
|
|
'instance_order' => [
|
|
'TOP'
|
|
],
|
|
'SOURCE_SET' => {
|
|
'IP' => bless( {
|
|
'ports_order' => [],
|
|
'hdl_files' => [],
|
|
'plugs' => {
|
|
'reset' => {
|
|
'1' => {},
|
|
'0' => {
|
|
'name' => 'source_reset_in'
|
|
},
|
|
'type' => 'num',
|
|
'value' => 1
|
},
|
},
|
'ni_flit_in_wr' => {
|
'clk' => {
|
'intfc_port' => 'flit_in_wr',
|
'1' => {},
|
|
'type' => 'num',
|
|
'0' => {
|
|
'name' => 'source_clk_in'
|
|
},
|
|
'value' => 1
|
|
}
|
|
},
|
|
'module_name' => 'TOP',
|
|
'category' => 'TOP',
|
|
'file_name' => undef,
|
|
'GUI_REMOVE_SET' => 'DISABLE',
|
|
'ports' => {
|
|
'source_clk_in' => {
|
|
'range' => undef,
|
|
'intfc_port' => 'clk_i',
|
'type' => 'input',
|
'type' => 'input',
|
'intfc_name' => 'socket:ni[0]',
|
'intfc_name' => 'plug:clk[0]'
|
'instance_name' => 'ni_master0',
|
|
'range' => ''
|
|
},
|
},
|
'ss_reset_in' => {
|
'source_reset_in' => {
|
'range' => '',
|
'range' => undef,
|
'instance_name' => 'clk_source0',
|
'intfc_port' => 'reset_i',
|
'intfc_name' => 'plug:reset[0]',
|
'intfc_name' => 'plug:reset[0]',
|
'type' => 'input',
|
'type' => 'input'
|
'intfc_port' => 'reset_i'
|
}
|
},
|
},
|
|
'parameters_order' => [],
|
|
'ip_name' => 'TOP',
|
|
'hdl_files_ticked' => []
|
|
}, 'ip_gen' )
|
|
},
|
|
'TOP' => {
|
|
'version' => 0
|
|
}
|
|
}, 'soc' )
|
|
},
|
|
'current_module_param' => undef,
|
|
'graph_save' => {},
|
|
'noc_param' => {},
|
|
'modules' => {},
|
|
'top_ip' => bless( {
|
|
'instance_ids' => {
|
|
'ni_master0' => {
|
|
'ports' => {
|
'ni_current_r_addr' => {
|
'ni_current_r_addr' => {
|
'type' => 'input',
|
'type' => 'input',
|
'intfc_port' => 'current_r_addr',
|
'intfc_name' => 'socket:ni[0]',
|
'range' => 'ni_RAw-1 : 0',
|
'range' => 'ni_RAw-1 : 0',
|
'instance_name' => 'ni_master0',
|
'intfc_port' => 'current_r_addr'
|
'intfc_name' => 'socket:ni[0]'
|
},
|
|
'ni_chan_out' => {
|
|
'range' => 'smartflit_chanel_t',
|
|
'intfc_port' => 'chan_out',
|
|
'intfc_name' => 'socket:ni[0]',
|
|
'type' => 'output'
|
},
|
},
|
'ni_current_e_addr' => {
|
'ni_current_e_addr' => {
|
|
'intfc_name' => 'socket:ni[0]',
|
'type' => 'input',
|
'type' => 'input',
|
'intfc_port' => 'current_e_addr',
|
'intfc_port' => 'current_e_addr',
|
'intfc_name' => 'socket:ni[0]',
|
|
'instance_name' => 'ni_master0',
|
|
'range' => 'ni_EAw-1 : 0'
|
'range' => 'ni_EAw-1 : 0'
|
},
|
},
|
'ni_flit_out_wr' => {
|
'ni_chan_in' => {
|
'intfc_name' => 'socket:ni[0]',
|
'range' => 'smartflit_chanel_t',
|
'instance_name' => 'ni_master0',
|
'intfc_port' => 'chan_in',
|
'range' => '',
|
'type' => 'input',
|
'intfc_port' => 'flit_out_wr',
|
'intfc_name' => 'socket:ni[0]'
|
'type' => 'output'
|
|
}
|
}
|
},
|
},
|
'instance_ids' => {
|
'category' => 'NoC',
|
'ni_master0' => {
|
'module' => 'ni_master',
|
'module_name' => 'ni_master',
|
|
'instance' => 'ni',
|
|
'localparam' => {
|
'localparam' => {
|
'ni_M_Aw' => {
|
'ni_M_Aw' => {
|
|
'redefine_param' => 1,
|
'info' => 'Parameter',
|
'info' => 'Parameter',
|
|
'content' => 'Dw',
|
|
'global_param' => 'Localparam',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
|
'default' => '32'
|
|
},
|
|
'ni_MAX_BURST_SIZE' => {
|
|
'content' => '2,4,8,16,32,64,128,256,512,1024,2048',
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
|
'type' => 'Combo-box',
|
|
'default' => '16',
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
|
'info' => 'Maximum burst size in words.
|
|
The NI releases the wishbone bus each time one burst is completed or when the VC\'s internal FIFO becomes full. The bus will be released for one clock cycle. Then in case, there are other active VCs, another active VC will get access to the bus using round robin arbiter. This process will be continued until all of the desired data is transferred. '
|
|
},
|
|
'ni_TAGw' => {
|
|
'content' => '',
|
|
'default' => '3',
|
|
'type' => 'Fixed',
|
|
'global_param' => 'Localparam',
|
|
'info' => 'Parameter',
|
|
'redefine_param' => 1
|
|
},
|
|
'ni_Dw' => {
|
|
'type' => 'Spin-button',
|
'default' => '32',
|
'default' => '32',
|
'content' => 'Dw'
|
'global_param' => 'Localparam',
|
|
'content' => '32,256,8',
|
|
'redefine_param' => 1,
|
|
'info' => 'wishbone_bus data width in bits.'
|
|
},
|
|
'ni_SELw' => {
|
|
'redefine_param' => 1,
|
|
'info' => 'Parameter',
|
|
'global_param' => 'Localparam',
|
|
'type' => 'Fixed',
|
|
'default' => '4',
|
|
'content' => ''
|
|
},
|
|
'ni_MAX_TRANSACTION_WIDTH' => {
|
|
'content' => '4,32,1',
|
|
'global_param' => 'Localparam',
|
|
'default' => '13',
|
|
'type' => 'Spin-button',
|
|
'redefine_param' => 1,
|
|
'info' => 'maximum packet size width in words.
|
|
The maximum data that can be sent via one packet will be 2 power of MAX_DMA_TRANSACTION_WIDTH in words.'
|
},
|
},
|
'ni_CRC_EN' => {
|
'ni_CRC_EN' => {
|
'type' => 'Combo-box',
|
|
'info' => 'The parameter can be selected as "YES" or "NO".
|
'info' => 'The parameter can be selected as "YES" or "NO".
|
If CRC is enabled, then two CRC32 generator modules will be added to the NI. One CRC generator for calculating CRC of sending packets and another for receiving packets. The CRC32 value of each packet is send via tail flit and at destination NI, is will be compared with received packet generated CRC32. The matching results can be used for error-detection and can be read via NI slave interface. ',
|
If CRC is enabled, then two CRC32 generator modules will be added to the NI. One CRC generator for calculating CRC of sending packets and another for receiving packets. The CRC32 value of each packet is send via tail flit and at destination NI, is will be compared with received packet generated CRC32. The matching results can be used for error-detection and can be read via NI slave interface. ',
|
|
'redefine_param' => 1,
|
'content' => '"YES","NO"',
|
'content' => '"YES","NO"',
|
|
'global_param' => 'Localparam',
|
|
'type' => 'Combo-box',
|
|
'default' => '"NO"'
|
|
},
|
|
'ni_HDATA_PRECAPw' => {
|
|
'info' => ' The headr Data pre capture width. It Will be enabled when it is larger than zero. The header data can optionally carry a short width Data. This data can be pre-captured (completely/partially) by the NI before saving the packet in a memory buffer. This can give some hints to the software regarding the incoming packet such as its type, or source port so the software can store the packet in its appropriate buffer.',
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => '"NO"',
|
'content' => '0,8,1',
|
|
'default' => '0',
|
|
'type' => 'Spin-button',
|
'global_param' => 'Localparam'
|
'global_param' => 'Localparam'
|
},
|
},
|
'ni_MAX_BURST_SIZE' => {
|
'ni_S_Aw' => {
|
'content' => '2,4,8,16,32,64,128,256,512,1024,2048',
|
'content' => '',
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
|
'default' => '8',
|
|
'type' => 'Fixed',
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => '16',
|
'info' => 'Parameter'
|
'info' => 'Maximum burst size in words.
|
}
|
The NI releases the wishbone bus each time one burst is completed or when the VC\'s internal FIFO becomes full. The bus will be released for one clock cycle. Then in case, there are other active VCs, another active VC will get access to the bus using round robin arbiter. This process will be continued until all of the desired data is transferred. ',
|
|
'type' => 'Combo-box'
|
|
},
|
},
|
'ni_SELw' => {
|
'module_name' => 'ni_master',
|
'info' => 'Parameter',
|
'parameters' => {
|
|
'ni_EAw' => {
|
|
'global_param' => 'Parameter',
|
|
'default' => '16',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
'content' => '',
|
'content' => '',
|
'redefine_param' => 1,
|
'redefine_param' => 0,
|
'default' => '4',
|
'info' => undef
|
'global_param' => 'Localparam'
|
|
},
|
},
|
'ni_S_Aw' => {
|
'ni_RAw' => {
|
'info' => 'Parameter',
|
'content' => '',
|
|
'default' => '16',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
'global_param' => 'Localparam',
|
'global_param' => 'Parameter',
|
|
'info' => undef,
|
|
'redefine_param' => 0
|
|
}
|
|
},
|
|
'instance' => 'ni'
|
|
},
|
|
'clk_source0' => {
|
|
'category' => 'Source',
|
|
'ports' => {
|
|
'source_reset_in' => {
|
|
'range' => '',
|
|
'intfc_port' => 'reset_i',
|
|
'intfc_name' => 'plug:reset[0]',
|
|
'type' => 'input'
|
|
},
|
|
'source_clk_in' => {
|
|
'type' => 'input',
|
|
'intfc_name' => 'plug:clk[0]',
|
|
'range' => '',
|
|
'intfc_port' => 'clk_i'
|
|
}
|
|
},
|
|
'instance' => 'source',
|
|
'module_name' => 'clk_source',
|
|
'module' => 'clk_source',
|
|
'localparam' => {
|
|
'source_FPGA_VENDOR' => {
|
|
'info' => '',
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => '8',
|
'content' => '"ALTERA","XILINX"',
|
'content' => ''
|
'global_param' => 'Localparam',
|
|
'type' => 'Combo-box',
|
|
'default' => '"ALTERA"'
|
|
}
|
|
}
|
},
|
},
|
'ni_TAGw' => {
|
'ProNoC_jtag_uart0' => {
|
'type' => 'Fixed',
|
'category' => 'Communication',
|
|
'ports' => {
|
|
'uart_wb_to_jtag' => {
|
|
'intfc_port' => 'jwb_o',
|
|
'range' => 'uart_WB2Jw-1 : 0',
|
|
'intfc_name' => 'socket:jtag_to_wb[0]',
|
|
'type' => 'output'
|
|
},
|
|
'uart_RxD_ready_sim' => {
|
|
'type' => 'output',
|
|
'intfc_name' => 'socket:RxD_sim[0]',
|
|
'intfc_port' => 'RxD_ready_sim',
|
|
'range' => ''
|
|
},
|
|
'uart_jtag_to_wb' => {
|
|
'type' => 'input',
|
|
'intfc_name' => 'socket:jtag_to_wb[0]',
|
|
'range' => 'uart_J2WBw-1 : 0',
|
|
'intfc_port' => 'jwb_i'
|
|
},
|
|
'uart_RxD_wr_sim' => {
|
|
'type' => 'input',
|
|
'intfc_name' => 'socket:RxD_sim[0]',
|
|
'range' => '',
|
|
'intfc_port' => 'RxD_wr_sim'
|
|
},
|
|
'uart_RxD_din_sim' => {
|
|
'intfc_name' => 'socket:RxD_sim[0]',
|
|
'type' => 'input',
|
|
'range' => '7:0 ',
|
|
'intfc_port' => 'RxD_din_sim'
|
|
}
|
|
},
|
|
'instance' => 'uart',
|
|
'localparam' => {
|
|
'uart_TAGw' => {
|
'info' => 'Parameter',
|
'info' => 'Parameter',
|
'content' => '',
|
|
'global_param' => 'Localparam',
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => '3'
|
'content' => '',
|
|
'type' => 'Fixed',
|
|
'default' => '3',
|
|
'global_param' => 'Localparam'
|
},
|
},
|
'ni_MAX_TRANSACTION_WIDTH' => {
|
'uart_BUFF_Aw' => {
|
'type' => 'Spin-button',
|
'info' => 'UART internal fifo buffer address width shared equally for send and recive FIFOs. Each of send and recive fifo buffers have 2^(BUFF_Aw-1) entry.',
|
'info' => 'maximum packet size width in words.
|
|
The maximum data that can be sent via one packet will be 2 power of MAX_DMA_TRANSACTION_WIDTH in words.',
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => '13',
|
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
'content' => '4,32,1'
|
'default' => '4',
|
|
'type' => 'Spin-button',
|
|
'content' => '2,16,1'
|
|
},
|
|
'uart_SELw' => {
|
|
'global_param' => 'Localparam',
|
|
'default' => '4',
|
|
'type' => 'Fixed',
|
|
'content' => '',
|
|
'info' => 'Parameter',
|
|
'redefine_param' => 1
|
},
|
},
|
'ni_Fw' => {
|
'uart_Dw' => {
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
'redefine_param' => 0,
|
'default' => '32',
|
'default' => '2+ni_V+ni_Fpay',
|
|
'content' => '',
|
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
'info' => undef
|
'content' => '',
|
|
'info' => 'Parameter',
|
|
'redefine_param' => 1
|
},
|
},
|
'ni_Dw' => {
|
'uart_Aw' => {
|
'content' => '32,256,8',
|
'content' => '',
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
'redefine_param' => 1,
|
'type' => 'Fixed',
|
'default' => '32',
|
'default' => '1',
|
'info' => 'wishbone_bus data width in bits.',
|
'info' => 'Parameter',
|
'type' => 'Spin-button'
|
'redefine_param' => 1
|
}
|
}
|
},
|
},
|
|
'module' => 'ProNoC_jtag_uart',
|
'parameters' => {
|
'parameters' => {
|
'ni_Fpay' => {
|
'uart_JTAG_CONNECT' => {
|
'content' => '',
|
'info' => 'For Altera FPGAs define it as "ALTERA_JTAG_WB". In this case, the UART uses Virtual JTAG tap IP core from Altera lib to communicate with the Host PC.
|
'default' => '32',
|
|
|
For XILINX FPGAs define it as "XILINX_JTAG_WB". In this case, the UART uses BSCANE2 JTAG tap IP core from XILINX lib to communicate with the Host PC.',
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'global_param' => 'Parameter',
|
'content' => '"XILINX_JTAG_WB","ALTERA_JTAG_WB"',
|
|
'type' => 'Combo-box',
|
|
'default' => '"ALTERA_JTAG_WB"',
|
|
'global_param' => 'Parameter'
|
|
},
|
|
'uart_JINDEXw' => {
|
'info' => 'Parameter',
|
'info' => 'Parameter',
|
'type' => 'Fixed'
|
'redefine_param' => 1,
|
|
'content' => '',
|
|
'type' => 'Fixed',
|
|
'default' => '8',
|
|
'global_param' => 'Parameter'
|
},
|
},
|
'ni_EAw' => {
|
'uart_WB2Jw' => {
|
|
'content' => '',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
'info' => undef,
|
'default' => '(uart_JTAG_CONNECT== "XILINX_JTAG_WB") ? 1+uart_JSTATUSw+uart_JINDEXw+1+uart_JDw : 1',
|
'redefine_param' => 0,
|
|
'global_param' => 'Parameter',
|
'global_param' => 'Parameter',
|
'default' => '16',
|
'info' => '',
|
'content' => ''
|
'redefine_param' => 1
|
},
|
},
|
'ni_RAw' => {
|
'uart_JTAG_INDEX' => {
|
'default' => '16',
|
|
'redefine_param' => 0,
|
|
'global_param' => 'Parameter',
|
|
'content' => '',
|
'content' => '',
|
'info' => undef,
|
'global_param' => 'Parameter',
|
'type' => 'Fixed'
|
'type' => 'Entry',
|
|
'default' => '126-CORE_ID',
|
|
'info' => 'The index number id used for communicating with this IP. all modules connected to the same jtag tab should have a unique JTAG index number. The default value is 126-CORE_ID. The core ID is the tile number in MPSoC. So if each tile has a UART, then each UART index would be different.',
|
|
'redefine_param' => 1
|
},
|
},
|
'ni_ROUTE_NAME' => {
|
'uart_JSTATUSw' => {
|
'content' => '',
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
|
'info' => 'Parameter',
|
'global_param' => 'Parameter',
|
'global_param' => 'Parameter',
|
'default' => '"XY"',
|
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
'info' => 'Parameter'
|
'default' => '8',
|
|
'content' => ''
|
},
|
},
|
'ni_T3' => {
|
'uart_JTAG_CHAIN' => {
|
'content' => '',
|
'default' => '3',
|
'redefine_param' => 1,
|
'type' => 'Combo-box',
|
'default' => 4,
|
|
'global_param' => 'Parameter',
|
'global_param' => 'Parameter',
|
|
'content' => '1,2,3,4',
|
|
'info' => 'Only used for Virtex 4/5 devices. May be 1, 2, 3, or 4. It is the BSCANE2 JTAG tap number. The default Jtag tap numbers are:
|
|
4: JTAG runtime memory programmers.
|
|
3: UART
|
|
1,2: reserved',
|
|
'redefine_param' => 0
|
|
},
|
|
'uart_JAw' => {
|
|
'default' => '32',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
|
'global_param' => 'Parameter',
|
|
'content' => '',
|
|
'redefine_param' => 1,
|
'info' => 'Parameter'
|
'info' => 'Parameter'
|
},
|
},
|
'ni_T1' => {
|
'uart_JDw' => {
|
'type' => 'Fixed',
|
'redefine_param' => 1,
|
'info' => 'Parameter',
|
'info' => 'Parameter',
|
'global_param' => 'Parameter',
|
'global_param' => 'Parameter',
|
'redefine_param' => 1,
|
'type' => 'Fixed',
|
'default' => 2,
|
'default' => '32',
|
'content' => ''
|
'content' => ''
|
},
|
},
|
'ni_V' => {
|
'uart_J2WBw' => {
|
'type' => 'Fixed',
|
'info' => undef,
|
'info' => 'Parameter',
|
'redefine_param' => 1,
|
'content' => '',
|
'content' => '',
|
'global_param' => 'Parameter',
|
'global_param' => 'Parameter',
|
|
'type' => 'Fixed',
|
|
'default' => '(uart_JTAG_CONNECT== "XILINX_JTAG_WB") ? 1+1+uart_JDw+uart_JAw : 1'
|
|
}
|
|
},
|
|
'module_name' => 'pronoc_jtag_uart'
|
|
},
|
|
'mor1kx0' => {
|
|
'instance' => 'cpu',
|
|
'localparam' => {
|
|
'cpu_FEATURE_IMMU' => {
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => '2'
|
'info' => '',
|
|
'default' => '"ENABLED"',
|
|
'type' => 'Combo-box',
|
|
'global_param' => 'Localparam',
|
|
'content' => '"NONE","ENABLED"'
|
},
|
},
|
'ni_DEBUG_EN' => {
|
'cpu_OPTION_SHIFTER' => {
|
|
'global_param' => 'Localparam',
|
|
'default' => '"BARREL"',
|
|
'type' => 'Combo-box',
|
|
'content' => '"BARREL","SERIAL"',
|
|
'info' => 'Specify the shifter implementation',
|
|
'redefine_param' => 1
|
|
},
|
|
'cpu_FEATURE_INSTRUCTIONCACHE' => {
|
|
'info' => '',
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'global_param' => 'Parameter',
|
'content' => '"NONE","ENABLED"',
|
'default' => '0',
|
'global_param' => 'Localparam',
|
'content' => '',
|
'type' => 'Combo-box',
|
'info' => 'Parameter',
|
'default' => '"ENABLED"'
|
'type' => 'Fixed'
|
|
},
|
},
|
'ni_TOPOLOGY' => {
|
'cpu_OPTION_OPERAND_WIDTH' => {
|
|
'redefine_param' => 1,
|
'info' => 'Parameter',
|
'info' => 'Parameter',
|
|
'global_param' => 'Localparam',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
'global_param' => 'Parameter',
|
'default' => '32',
|
'redefine_param' => 1,
|
|
'default' => '"MESH"',
|
|
'content' => ''
|
'content' => ''
|
},
|
},
|
'ni_T2' => {
|
'cpu_OPTION_DCACHE_SNOOP' => {
|
'type' => 'Fixed',
|
'content' => '"NONE","ENABLED"',
|
'info' => 'Parameter',
|
'type' => 'Combo-box',
|
'global_param' => 'Parameter',
|
'default' => '"ENABLED"',
|
'redefine_param' => 1,
|
'global_param' => 'Localparam',
|
'default' => 2,
|
'info' => '',
|
'content' => ''
|
'redefine_param' => 1
|
},
|
},
|
'ni_B' => {
|
'cpu_FEATURE_DMMU' => {
|
'default' => '4',
|
'content' => '"NONE","ENABLED"',
|
|
'type' => 'Combo-box',
|
|
'default' => '"ENABLED"',
|
|
'global_param' => 'Localparam',
|
|
'info' => '',
|
|
'redefine_param' => 1
|
|
},
|
|
'cpu_FEATURE_MULTIPLIER' => {
|
|
'type' => 'Combo-box',
|
|
'default' => '"THREESTAGE"',
|
|
'global_param' => 'Localparam',
|
|
'content' => '"THREESTAGE","PIPELINED","SERIAL","NONE"',
|
|
'info' => 'Specify the multiplier implementation',
|
|
'redefine_param' => 1
|
|
},
|
|
'cpu_FEATURE_DIVIDER' => {
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'global_param' => 'Parameter',
|
'info' => 'Specify the divider implementation',
|
'content' => '',
|
'global_param' => 'Localparam',
|
'info' => 'Parameter',
|
'default' => '"SERIAL"',
|
'type' => 'Fixed'
|
'type' => 'Combo-box',
|
|
'content' => '"SERIAL","NONE"'
|
},
|
},
|
'ni_C' => {
|
'cpu_FEATURE_DATACACHE' => {
|
'info' => 'Parameter',
|
'global_param' => 'Localparam',
|
'type' => 'Fixed',
|
'type' => 'Combo-box',
|
|
'default' => '"ENABLED"',
|
|
'content' => '"NONE","ENABLED"',
|
|
'info' => '',
|
|
'redefine_param' => 1
|
|
},
|
|
'cpu_IRQ_NUM' => {
|
'content' => '',
|
'content' => '',
|
'redefine_param' => 1,
|
'global_param' => 'Localparam',
|
'default' => 0,
|
'type' => 'Fixed',
|
'global_param' => 'Parameter'
|
'default' => '32',
|
|
'info' => undef,
|
|
'redefine_param' => 1
|
}
|
}
|
},
|
},
|
'module' => 'ni_master',
|
'module' => 'mor1kx',
|
|
'module_name' => 'mor1k',
|
|
'category' => 'Processor',
|
'ports' => {
|
'ports' => {
|
'ni_current_r_addr' => {
|
'cpu_cpu_en' => {
|
'range' => 'ni_RAw-1 : 0',
|
|
'intfc_name' => 'socket:ni[0]',
|
|
'intfc_port' => 'current_r_addr',
|
|
'type' => 'input'
|
|
},
|
|
'ni_flit_out_wr' => {
|
|
'intfc_name' => 'socket:ni[0]',
|
|
'range' => '',
|
|
'intfc_port' => 'flit_out_wr',
|
|
'type' => 'output'
|
|
},
|
|
'ni_current_e_addr' => {
|
|
'range' => 'ni_EAw-1 : 0',
|
|
'intfc_name' => 'socket:ni[0]',
|
|
'intfc_port' => 'current_e_addr',
|
|
'type' => 'input'
|
|
},
|
|
'ni_flit_in_wr' => {
|
|
'range' => '',
|
'range' => '',
|
'intfc_name' => 'socket:ni[0]',
|
'intfc_port' => 'enable_i',
|
'intfc_port' => 'flit_in_wr',
|
'intfc_name' => 'plug:enable[0]',
|
'type' => 'input'
|
|
},
|
|
'ni_flit_out' => {
|
|
'range' => 'ni_Fw-1 : 0',
|
|
'intfc_name' => 'socket:ni[0]',
|
|
'type' => 'output',
|
|
'intfc_port' => 'flit_out'
|
|
},
|
|
'ni_flit_in' => {
|
|
'range' => 'ni_Fw-1 : 0',
|
|
'intfc_name' => 'socket:ni[0]',
|
|
'intfc_port' => 'flit_in',
|
|
'type' => 'input'
|
'type' => 'input'
|
},
|
}
|
'ni_credit_out' => {
|
|
'type' => 'output',
|
|
'intfc_port' => 'credit_out',
|
|
'intfc_name' => 'socket:ni[0]',
|
|
'range' => 'ni_V-1 : 0'
|
|
},
|
|
'ni_credit_in' => {
|
|
'intfc_name' => 'socket:ni[0]',
|
|
'range' => 'ni_V-1 : 0',
|
|
'type' => 'input',
|
|
'intfc_port' => 'credit_in'
|
|
}
|
}
|
},
|
},
|
'category' => 'NoC'
|
'single_port_ram0' => {
|
},
|
|
'clk_source0' => {
|
|
'ports' => {
|
'ports' => {
|
'ss_reset_in' => {
|
'ram_jtag_to_wb' => {
|
'intfc_port' => 'reset_i',
|
'range' => 'ram_J2WBw-1 : 0',
|
|
'intfc_port' => 'jwb_i',
|
'type' => 'input',
|
'type' => 'input',
|
'range' => '',
|
'intfc_name' => 'socket:jtag_to_wb[0]'
|
'intfc_name' => 'plug:reset[0]'
|
|
},
|
},
|
'ss_clk_in' => {
|
'ram_wb_to_jtag' => {
|
'range' => '',
|
'range' => 'ram_WB2Jw-1 : 0',
|
'intfc_name' => 'plug:clk[0]',
|
'intfc_port' => 'jwb_o',
|
'intfc_port' => 'clk_i',
|
'intfc_name' => 'socket:jtag_to_wb[0]',
|
'type' => 'input'
|
'type' => 'output'
|
}
|
}
|
},
|
},
|
'category' => 'Source',
|
'category' => 'RAM',
|
'module' => 'clk_source',
|
'module_name' => 'wb_single_port_ram',
|
'module_name' => 'clk_source',
|
'parameters' => {
|
'instance' => 'ss'
|
'ram_JTAG_INDEX' => {
|
},
|
|
'wishbone_bus0' => {
|
|
'module' => 'wishbone_bus',
|
|
'category' => 'Bus',
|
|
'instance' => 'bus',
|
|
'module_name' => 'wishbone_bus',
|
|
'localparam' => {
|
|
'bus_M' => {
|
|
'info' => 'Number of wishbone master interface',
|
|
'type' => 'Spin-button',
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'global_param' => 'Localparam',
|
'info' => ' A unique index number which will be used for accessing to the memory content using JTAG cable.The default value is the processing tile id (CORE_ID) . You can also inter a unique number for each individula memory.
|
'default' => ' 4',
|
|
'content' => '1,256,1'
|
In case you have \'n\' memory in each processing core you can define their index as "n*CORE_ID+1 , n*CORE_ID+2 ...n*CORE_ID+n-1).
|
|
|
|
You also can disabled JTAG access here and connect one jtag to wb interface (jtag_wb) to the wishbone bus. Using single jtag index number, a jtag_wb module can read/wr any IP that is connected to wishbone bus slave port (including all memory units).
|
|
|
|
',
|
|
'content' => '',
|
|
'global_param' => 'Parameter',
|
|
'type' => 'Entry',
|
|
'default' => 'CORE_ID'
|
},
|
},
|
'bus_Dw' => {
|
'ram_JDw' => {
|
'content' => '8,512,8',
|
|
'default' => '32',
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'global_param' => 'Localparam',
|
'info' => 'Parameter',
|
'info' => 'The wishbone Bus data width in bits.',
|
|
'type' => 'Spin-button'
|
|
},
|
|
'bus_SELw' => {
|
|
'content' => '',
|
'content' => '',
|
'global_param' => 'Localparam',
|
'type' => 'Fixed',
|
'redefine_param' => 1,
|
'default' => 'ram_Dw',
|
'default' => 'bus_Dw/8',
|
'global_param' => 'Parameter'
|
'info' => undef,
|
|
'type' => 'Fixed'
|
|
},
|
},
|
'bus_Aw' => {
|
'ram_JAw' => {
|
'global_param' => 'Localparam',
|
'info' => 'Parameter',
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
|
'content' => '',
|
|
'global_param' => 'Parameter',
|
'default' => '32',
|
'default' => '32',
|
'content' => '4,128,1',
|
'type' => 'Fixed'
|
'type' => 'Spin-button',
|
|
'info' => 'The wishbone Bus address width'
|
|
},
|
},
|
'bus_TAGw' => {
|
'ram_JINDEXw' => {
|
|
'default' => '8',
|
|
'type' => 'Fixed',
|
|
'global_param' => 'Parameter',
|
|
'content' => '',
|
|
'info' => 'Parameter',
|
|
'redefine_param' => 1
|
|
},
|
|
'ram_JSTATUSw' => {
|
|
'content' => '',
|
|
'default' => '8',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
|
'global_param' => 'Parameter',
|
|
'info' => 'Parameter',
|
|
'redefine_param' => 1
|
|
},
|
|
'ram_JTAG_CHAIN' => {
|
|
'content' => '1,2,3,4',
|
|
'global_param' => 'Parameter',
|
|
'default' => '4',
|
|
'type' => 'Combo-box',
|
|
'redefine_param' => 0,
|
|
'info' => 'Only used for Virtex 4/5 devices. May be 1, 2, 3, or 4. It is the BSCANE2 JTAG tap number. The default Jtag tap numbers are:
|
|
4: JTAG runtime memory programmers.
|
|
3: UART
|
|
1,2: reserved'
|
|
},
|
|
'ram_WB2Jw' => {
|
'info' => undef,
|
'info' => undef,
|
'content' => '',
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => '3',
|
'content' => '',
|
'global_param' => 'Localparam'
|
'type' => 'Fixed',
|
|
'default' => '(ram_JTAG_CONNECT== "XILINX_JTAG_WB") ? 1+ram_JSTATUSw+ram_JINDEXw+1+ram_JDw : 1',
|
|
'global_param' => 'Parameter'
|
},
|
},
|
'bus_S' => {
|
'ram_Dw' => {
|
'content' => '1,256,1',
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'global_param' => 'Localparam',
|
'info' => 'Memory data width in Bits.',
|
'default' => '4',
|
'global_param' => 'Parameter',
|
|
'default' => '32',
|
'type' => 'Spin-button',
|
'type' => 'Spin-button',
|
'info' => 'Number of wishbone slave interface'
|
'content' => '8,1024,1'
|
},
|
},
|
'bus_BTEw' => {
|
'ram_J2WBw' => {
|
'type' => 'Fixed',
|
|
'info' => undef,
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'global_param' => 'Localparam',
|
|
'default' => '2 ',
|
|
'content' => ''
|
|
},
|
|
'bus_CTIw' => {
|
|
'info' => undef,
|
'info' => undef,
|
|
'global_param' => 'Parameter',
|
|
'default' => '(ram_JTAG_CONNECT== "XILINX_JTAG_WB") ? 1+1+ram_JDw+ram_JAw : 1',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
'redefine_param' => 1,
|
|
'global_param' => 'Localparam',
|
|
'default' => '3',
|
|
'content' => ''
|
'content' => ''
|
}
|
|
}
|
|
},
|
|
'mor1kx0' => {
|
|
'category' => 'Processor',
|
|
'ports' => {
|
|
'cpu_cpu_en' => {
|
|
'type' => 'input',
|
|
'intfc_port' => 'enable_i',
|
|
'intfc_name' => 'plug:enable[0]',
|
|
'range' => ''
|
|
}
|
|
},
|
},
|
'module' => 'mor1kx',
|
'ram_JTAG_CONNECT' => {
|
'parameters' => {
|
'default' => '"ALTERA_JTAG_WB"',
|
'cpu_FEATURE_DMMU' => {
|
|
'content' => '"NONE","ENABLED"',
|
|
'redefine_param' => 1,
|
|
'global_param' => 'Parameter',
|
|
'default' => '"ENABLED"',
|
|
'type' => 'Combo-box',
|
'type' => 'Combo-box',
|
'info' => ''
|
|
},
|
|
'cpu_OPTION_DCACHE_SNOOP' => {
|
|
'content' => '"NONE","ENABLED"',
|
|
'global_param' => 'Parameter',
|
'global_param' => 'Parameter',
|
'redefine_param' => 1,
|
'content' => '"DISABLED", "ALTERA_JTAG_WB" , "ALTERA_IMCE","XILINX_JTAG_WB"',
|
'default' => '"ENABLED"',
|
'info' => 'JTAG_CONNECT:
|
'info' => '',
|
if it is not disabled then the actual memory is implemented as a dual port RAM with the second port is connected either to In-System Memory Content Editor or Jtag_to_wb. This allows that the memory content can be read/written using JTAG. ',
|
'type' => 'Combo-box'
|
'redefine_param' => 1
|
|
}
|
},
|
},
|
'cpu_IRQ_NUM' => {
|
'module' => 'single_port_ram',
|
'info' => undef,
|
'localparam' => {
|
|
'ram_CTIw' => {
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
|
'default' => '3',
|
|
'global_param' => 'Localparam',
|
'content' => '',
|
'content' => '',
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'global_param' => 'Parameter',
|
'info' => 'Parameter'
|
'default' => '32'
|
|
},
|
},
|
'cpu_FEATURE_IMMU' => {
|
'ram_Aw' => {
|
'default' => '"ENABLED"',
|
'global_param' => 'Localparam',
|
'redefine_param' => 1,
|
'default' => '14',
|
'global_param' => 'Parameter',
|
'type' => 'Spin-button',
|
'content' => '"NONE","ENABLED"',
|
'content' => '4,31,1',
|
'type' => 'Combo-box',
|
'info' => 'Memory address width',
|
'info' => ''
|
'redefine_param' => 1
|
},
|
},
|
'cpu_FEATURE_DATACACHE' => {
|
'ram_FPGA_VENDOR' => {
|
'default' => '"ENABLED"',
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'global_param' => 'Parameter',
|
|
'content' => '"NONE","ENABLED"',
|
|
'info' => '',
|
'info' => '',
|
|
'content' => '"ALTERA","XILINX","GENERIC"',
|
|
'global_param' => 'Localparam',
|
|
'default' => '"ALTERA"',
|
'type' => 'Combo-box'
|
'type' => 'Combo-box'
|
},
|
},
|
'cpu_OPTION_OPERAND_WIDTH' => {
|
'ram_BYTE_WR_EN' => {
|
'content' => '',
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => '32',
|
'info' => 'Byte enable',
|
'global_param' => 'Parameter',
|
'global_param' => 'Localparam',
|
'type' => 'Fixed',
|
|
'info' => 'Parameter'
|
|
},
|
|
'cpu_FEATURE_INSTRUCTIONCACHE' => {
|
|
'info' => '',
|
|
'type' => 'Combo-box',
|
'type' => 'Combo-box',
|
'global_param' => 'Parameter',
|
'default' => '"YES"',
|
'redefine_param' => 1,
|
'content' => '"YES","NO"'
|
'default' => '"ENABLED"',
|
|
'content' => '"NONE","ENABLED"'
|
|
}
|
|
},
|
},
|
'instance' => 'cpu',
|
'ram_SELw' => {
|
'module_name' => 'mor1k'
|
'info' => 'Parameter',
|
|
'redefine_param' => 1,
|
|
'content' => '',
|
|
'type' => 'Fixed',
|
|
'default' => 'ram_Dw/8',
|
|
'global_param' => 'Localparam'
|
},
|
},
|
'jtag_uart0' => {
|
'ram_INITIAL_EN' => {
|
'module_name' => 'jtag_uart_wb',
|
|
'instance' => 'uart',
|
|
'localparam' => {
|
|
'uart_FPGA_VENDOR' => {
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => ' "ALTERA"',
|
'info' => 'If selected as "ENABLED", the memory content will be initialized at compilation time using MEM_CONTENT_FILE_NAME.',
|
|
'content' => '"YES","NO"',
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
'content' => ' "ALTERA"',
|
|
'type' => 'Combo-box',
|
'type' => 'Combo-box',
|
'info' => 'FPGA VENDOR name. Only Altera FPGA is supported. Currently the Generic serial port is not supported. '
|
'default' => '"YES"'
|
},
|
},
|
'uart_SIM_BUFFER_SIZE' => {
|
'ram_BTEw' => {
|
'content' => '10,10000,1',
|
|
'default' => 1000,
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
|
'info' => 'Parameter',
|
|
'default' => '2',
|
|
'type' => 'Fixed',
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
'info' => 'Internal buffer size.
|
'content' => ''
|
This parameter is valid only in simulation.
|
|
If internal buffer overflows, the buffer content are displayed on simulator terminal.',
|
|
'type' => 'Spin-button'
|
|
},
|
},
|
'uart_SIM_WAIT_COUNT' => {
|
'ram_INIT_FILE_PATH' => {
|
'content' => '2,100000,1',
|
'info' => undef,
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => '1000',
|
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
'info' => 'This parameter is valid only in simulation.
|
'type' => 'Fixed',
|
If internal buffer has a data, the internal timer incremented by one in each clock cycle. If the timer reaches the WAIT_COUNT value, it writes the buffer value on the simulator terminal.',
|
'default' => 'SW_LOC',
|
'type' => 'Spin-button'
|
'content' => ''
|
}
|
|
},
|
|
'module' => 'jtag_uart',
|
|
'category' => 'Communication'
|
|
},
|
},
|
'timer0' => {
|
'ram_WB_Aw' => {
|
'category' => 'Timer',
|
'global_param' => 'Localparam',
|
'module' => 'timer',
|
|
'parameters' => {
|
|
'timer_PRESCALER_WIDTH' => {
|
|
'type' => 'Spin-button',
|
'type' => 'Spin-button',
|
'info' => ' The prescaler timer width. The prescaler takes the basic timer clock frequency and divides it by some value before feeding it to the timer, according to how the prescaler register(s) are configured.
|
'default' => '20',
|
|
'content' => '4,31,1',
|
|
'info' => 'Wishbon bus reserved address with range. The reserved address will be 2 pow(WB_Aw) in words. This value should be larger or eqal than memory address width (Aw). ',
|
',
|
'redefine_param' => 1
|
'content' => '1,32,1',
|
},
|
|
'ram_BURST_MODE' => {
|
|
'info' => 'Enable the Wishbone bus Incrementing burst mode data transfer. Support Linear burst and 4,8,16-beat wrap burst types. ',
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => '8',
|
'global_param' => 'Localparam',
|
'global_param' => 'Parameter'
|
'default' => '"ENABLED"',
|
}
|
'type' => 'Combo-box',
|
|
'content' => '"DISABLED","ENABLED"'
|
},
|
},
|
'localparam' => {
|
'ram_CORE_NUM' => {
|
'timer_SELw' => {
|
'content' => '',
|
'info' => undef,
|
'default' => 'CORE_ID',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
|
'global_param' => 'Localparam',
|
|
'info' => 'Parameter',
|
|
'redefine_param' => 1
|
|
},
|
|
'ram_MEM_CONTENT_FILE_NAME' => {
|
'content' => '',
|
'content' => '',
|
'redefine_param' => 1,
|
'global_param' => 'Localparam',
|
'default' => '4',
|
'default' => '"ram0"',
|
'global_param' => 'Localparam'
|
'type' => 'Entry',
|
|
'info' => 'MEM_FILE_NAME:
|
|
The memory file name (without file type extension ) that is used for writting the memory content either at run time or at initialization time.
|
|
|
|
File Path:
|
|
For bus-based SoC the file path is {ProNoC_work}/SOC/{soc_name}/sw/RAM/{file_type}/{MEM_FILE_NAME}.
|
|
For NoC-based MPSoC the file path is {ProNoC_work}/MPSOC/{mpsoc_name}/sw/tile{tile_num}/RAM/{file_type}/{MEM_FILE_NAME}
|
|
|
|
file_type:
|
|
bin: raw binary format . It will be used by ALTERA_JTAG_WB to change the memory content at runtime.
|
|
memh: hexadecimal-string format . It will be used for initialing the Generic RAM using $readmemh command.
|
|
mif: memory initialization file format. This file can be used to initialize Altera FPGA memory. Also if the JTAG_CONECT is selected as ALTERA_IEMC it can be used for changing memory content at run time . ',
|
|
'redefine_param' => 1
|
},
|
},
|
'timer_Aw' => {
|
'ram_TAGw' => {
|
|
'content' => '',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
'info' => undef,
|
'default' => '3',
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => '3',
|
'info' => 'Parameter'
|
'content' => ''
|
}
|
},
|
},
|
'timer_CNTw' => {
|
'instance' => 'ram'
|
'info' => undef,
|
},
|
|
'wishbone_bus0' => {
|
|
'instance' => 'bus',
|
|
'module_name' => 'wishbone_bus',
|
|
'localparam' => {
|
|
'bus_M' => {
|
|
'default' => ' 4',
|
|
'type' => 'Spin-button',
|
|
'global_param' => 'Localparam',
|
|
'content' => '1,256,1',
|
|
'info' => 'Number of wishbone master interface',
|
|
'redefine_param' => 1
|
|
},
|
|
'bus_SELw' => {
|
|
'global_param' => 'Localparam',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
|
'default' => 'bus_Dw/8',
|
'content' => '',
|
'content' => '',
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'global_param' => 'Localparam',
|
'info' => undef
|
'default' => '32 '
|
|
},
|
},
|
'timer_Dw' => {
|
'bus_Dw' => {
|
'content' => '',
|
'info' => 'The wishbone Bus data width in bits.',
|
'global_param' => 'Localparam',
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
|
'type' => 'Spin-button',
|
'default' => '32',
|
'default' => '32',
|
'type' => 'Fixed',
|
'global_param' => 'Localparam',
|
'info' => undef
|
'content' => '8,512,8'
|
},
|
},
|
'timer_TAGw' => {
|
'bus_TAGw' => {
|
|
'redefine_param' => 1,
|
'info' => undef,
|
'info' => undef,
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
'default' => '3',
|
'default' => '3',
|
'redefine_param' => 1,
|
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
'content' => ''
|
'content' => ''
|
}
|
|
},
|
},
|
'instance' => 'timer',
|
'bus_Aw' => {
|
'module_name' => 'timer'
|
'redefine_param' => 1,
|
|
'info' => 'The wishbone Bus address width',
|
|
'default' => '32',
|
|
'type' => 'Spin-button',
|
|
'global_param' => 'Localparam',
|
|
'content' => '4,128,1'
|
},
|
},
|
'single_port_ram0' => {
|
'bus_CTIw' => {
|
'parameters' => {
|
'content' => '',
|
'ram_Dw' => {
|
'default' => '3',
|
'info' => 'Memory data width in Bits.',
|
'type' => 'Fixed',
|
|
'global_param' => 'Localparam',
|
|
'info' => undef,
|
|
'redefine_param' => 1
|
|
},
|
|
'bus_S' => {
|
|
'global_param' => 'Localparam',
|
|
'default' => '4',
|
'type' => 'Spin-button',
|
'type' => 'Spin-button',
|
'content' => '8,1024,1',
|
'content' => '1,256,1',
|
'default' => '32',
|
'info' => 'Number of wishbone slave interface',
|
'redefine_param' => 1,
|
'redefine_param' => 1
|
'global_param' => 'Parameter'
|
|
},
|
},
|
'ram_Aw' => {
|
'bus_BTEw' => {
|
'content' => '4,31,1',
|
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'global_param' => 'Parameter',
|
'info' => undef,
|
'default' => 14,
|
'content' => '',
|
'type' => 'Spin-button',
|
'global_param' => 'Localparam',
|
'info' => 'Memory address width'
|
'type' => 'Fixed',
|
|
'default' => '2 '
|
}
|
}
|
},
|
},
|
|
'module' => 'wishbone_bus',
|
|
'category' => 'Bus'
|
|
},
|
|
'timer0' => {
|
|
'category' => 'Timer',
|
|
'module_name' => 'timer',
|
|
'module' => 'timer',
|
'localparam' => {
|
'localparam' => {
|
'ram_BTEw' => {
|
'timer_CNTw' => {
|
|
'content' => '',
|
|
'global_param' => 'Localparam',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
'info' => 'Parameter',
|
'default' => '32 ',
|
|
'info' => undef,
|
|
'redefine_param' => 1
|
|
},
|
|
'timer_Dw' => {
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => '2',
|
'info' => undef,
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
|
'default' => '32',
|
|
'type' => 'Fixed',
|
'content' => ''
|
'content' => ''
|
},
|
},
|
'ram_JTAG_INDEX' => {
|
'timer_PRESCALER_WIDTH' => {
|
'info' => ' A unique index number which will be used for accessing to the memory content using JTAG cable.The default value is the processing tile id (CORE_ID) . You can also inter a unique number for each individula memory.
|
'redefine_param' => 1,
|
|
'info' => ' The prescaler timer width. The prescaler takes the basic timer clock frequency and divides it by some value before feeding it to the timer, according to how the prescaler register(s) are configured.
|
In case you have \'n\' memory in each processing core you can define their index as "n*CORE_ID+1 , n*CORE_ID+2 ...n*CORE_ID+n-1).
|
|
|
|
You also can disabled JTAG access here and connect one jtag to wb interface (jtag_wb) to the wishbone bus. Using single jtag index number, a jtag_wb module can read/wr any IP that is connected to wishbone bus slave port (including all memory units).
|
|
|
|
',
|
',
|
'type' => 'Entry',
|
|
'content' => '',
|
|
'default' => 'CORE_ID',
|
|
'redefine_param' => 1,
|
|
'global_param' => 'Localparam'
|
|
},
|
|
'ram_TAGw' => {
|
|
'default' => '3',
|
|
'redefine_param' => 1,
|
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
'content' => '',
|
'default' => '8',
|
'info' => 'Parameter',
|
'type' => 'Spin-button',
|
'type' => 'Fixed'
|
'content' => '1,32,1'
|
},
|
|
'ram_BURST_MODE' => {
|
|
'info' => 'Enable the Wishbone bus Incrementing burst mode data transfer. Support Linear burst and 4,8,16-beat wrap burst types. ',
|
|
'type' => 'Combo-box',
|
|
'content' => '"DISABLED","ENABLED"',
|
|
'redefine_param' => 1,
|
|
'default' => '"ENABLED"',
|
|
'global_param' => 'Localparam'
|
|
},
|
},
|
'ram_SELw' => {
|
'timer_SELw' => {
|
'info' => 'Parameter',
|
'global_param' => 'Localparam',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
|
'default' => '4',
|
'content' => '',
|
'content' => '',
|
'redefine_param' => 1,
|
'redefine_param' => 1,
|
'default' => 'ram_Dw/8',
|
'info' => undef
|
'global_param' => 'Localparam'
|
|
},
|
},
|
'ram_CTIw' => {
|
'timer_TAGw' => {
|
'content' => '',
|
'content' => '',
|
'redefine_param' => 1,
|
|
'global_param' => 'Localparam',
|
|
'default' => '3',
|
'default' => '3',
|
'type' => 'Fixed',
|
'type' => 'Fixed',
|
'info' => 'Parameter'
|
|
},
|
|
'ram_JTAG_CONNECT' => {
|
|
'content' => '"DISABLED", "JTAG_WB" , "ALTERA_IMCE"',
|
|
'redefine_param' => 1,
|
|
'default' => '"DISABLED"',
|
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
'type' => 'Combo-box',
|
'info' => undef,
|
'info' => 'JTAG_CONNECT:
|
'redefine_param' => 1
|
if it is not disabled then the actual memory is implemented as a dual port RAM with the second port is connected either to In-System Memory Content Editor or Jtag_to_wb. This allows that the memory content can be read/written using JTAG. '
|
|
},
|
},
|
'ram_BYTE_WR_EN' => {
|
'timer_Aw' => {
|
'type' => 'Combo-box',
|
'content' => '',
|
'info' => 'Byte enable',
|
'type' => 'Fixed',
|
'redefine_param' => 1,
|
'default' => '3',
|
'default' => '"YES"',
|
|
'global_param' => 'Localparam',
|
'global_param' => 'Localparam',
|
'content' => '"YES","NO"'
|
'info' => undef,
|
|
'redefine_param' => 1
|
|
}
|
},
|
},
|
'ram_MEM_CONTENT_FILE_NAME' => {
|
'instance' => 'timer'
|
'default' => '"ram0"',
|
}
|
'redefine_param' => 1,
|
|
'global_param' => 'Localparam',
|
|
'content' => '',
|
|
'info' => 'MEM_FILE_NAME:
|
|
The memory file name (without file type extension ) that is used for writting the memory content either at run time or at initialization time.
|
|
|
|
File Path:
|
|
For bus-based SoC the file path is {ProNoC_work}/SOC/{soc_name}/sw/RAM/{file_type}/{MEM_FILE_NAME}.
|
|
For NoC-based MPSoC the file path is {ProNoC_work}/MPSOC/{mpsoc_name}/sw/tile{tile_num}/RAM/{file_type}/{MEM_FILE_NAME}
|
|
|
|
file_type:
|
|
bin: raw binary format . It will be used by JTAG_WB to change the memory content at runtime.
|
|
memh: hexadecimal-string format . It will be used for initialing the Generic RAM using $readmemh command.
|
|
mif: memory initialization file format. This file can be used to initialize Altera FPGA memory. Also if the JTAG_CONECT is selected as ALTERA_IEMC it can be used for changing memory content at run time . ',
|
|
'type' => 'Entry'
|
|
},
|
},
|
'ram_INIT_FILE_PATH' => {
|
'ports' => {
|
'redefine_param' => 1,
|
'ram_jtag_to_wb' => {
|
'default' => 'SW_LOC',
|
'type' => 'input',
|
'global_param' => 'Localparam',
|
'intfc_name' => 'socket:jtag_to_wb[0]',
|
'content' => '',
|
'intfc_port' => 'jwb_i',
|
'type' => 'Fixed',
|
'range' => 'ram_J2WBw-1 : 0',
|
'info' => undef
|
'instance_name' => 'single_port_ram0'
|
|
},
|
|
'uart_wb_to_jtag' => {
|
|
'range' => 'uart_WB2Jw-1 : 0',
|
|
'instance_name' => 'ProNoC_jtag_uart0',
|
|
'intfc_port' => 'jwb_o',
|
|
'type' => 'output',
|
|
'intfc_name' => 'socket:jtag_to_wb[0]'
|
},
|
},
|
'ram_FPGA_VENDOR' => {
|
'ram_wb_to_jtag' => {
|
'type' => 'Combo-box',
|
'intfc_name' => 'socket:jtag_to_wb[0]',
|
'info' => '',
|
'type' => 'output',
|
'content' => '"ALTERA","GENERIC"',
|
'range' => 'ram_WB2Jw-1 : 0',
|
'redefine_param' => 1,
|
'instance_name' => 'single_port_ram0',
|
'default' => '"ALTERA"',
|
'intfc_port' => 'jwb_o'
|
'global_param' => 'Localparam'
|
|
},
|
},
|
'ram_INITIAL_EN' => {
|
'uart_RxD_ready_sim' => {
|
'info' => 'If selected as "ENABLED", the memory content will be initialized at compilation time using MEM_CONTENT_FILE_NAME.',
|
'type' => 'output',
|
'type' => 'Combo-box',
|
'intfc_name' => 'socket:RxD_sim[0]',
|
'content' => '"YES","NO"',
|
'intfc_port' => 'RxD_ready_sim',
|
'redefine_param' => 1,
|
'instance_name' => 'ProNoC_jtag_uart0',
|
'global_param' => 'Localparam',
|
'range' => ''
|
'default' => '"YES"'
|
},
|
|
'ni_chan_out' => {
|
|
'instance_name' => 'ni_master0',
|
|
'range' => 'smartflit_chanel_t',
|
|
'intfc_port' => 'chan_out',
|
|
'type' => 'output',
|
|
'intfc_name' => 'socket:ni[0]'
|
|
},
|
|
'cpu_cpu_en' => {
|
|
'instance_name' => 'mor1kx0',
|
|
'range' => '',
|
|
'intfc_port' => 'enable_i',
|
|
'type' => 'input',
|
|
'intfc_name' => 'plug:enable[0]'
|
|
},
|
|
'uart_RxD_din_sim' => {
|
|
'type' => 'input',
|
|
'intfc_name' => 'socket:RxD_sim[0]',
|
|
'intfc_port' => 'RxD_din_sim',
|
|
'range' => '7:0 ',
|
|
'instance_name' => 'ProNoC_jtag_uart0'
|
|
},
|
|
'ni_current_r_addr' => {
|
|
'instance_name' => 'ni_master0',
|
|
'range' => 'ni_RAw-1 : 0',
|
|
'intfc_port' => 'current_r_addr',
|
|
'intfc_name' => 'socket:ni[0]',
|
|
'type' => 'input'
|
|
},
|
|
'uart_jtag_to_wb' => {
|
|
'intfc_name' => 'socket:jtag_to_wb[0]',
|
|
'type' => 'input',
|
|
'instance_name' => 'ProNoC_jtag_uart0',
|
|
'range' => 'uart_J2WBw-1 : 0',
|
|
'intfc_port' => 'jwb_i'
|
|
},
|
|
'uart_RxD_wr_sim' => {
|
|
'intfc_name' => 'socket:RxD_sim[0]',
|
|
'type' => 'input',
|
|
'intfc_port' => 'RxD_wr_sim',
|
|
'range' => '',
|
|
'instance_name' => 'ProNoC_jtag_uart0'
|
|
},
|
|
'ni_current_e_addr' => {
|
|
'intfc_name' => 'socket:ni[0]',
|
|
'type' => 'input',
|
|
'intfc_port' => 'current_e_addr',
|
|
'range' => 'ni_EAw-1 : 0',
|
|
'instance_name' => 'ni_master0'
|
|
},
|
|
'source_clk_in' => {
|
|
'intfc_port' => 'clk_i',
|
|
'range' => '',
|
|
'instance_name' => 'clk_source0',
|
|
'type' => 'input',
|
|
'intfc_name' => 'plug:clk[0]'
|
|
},
|
|
'ni_chan_in' => {
|
|
'range' => 'smartflit_chanel_t',
|
|
'instance_name' => 'ni_master0',
|
|
'intfc_port' => 'chan_in',
|
|
'intfc_name' => 'socket:ni[0]',
|
|
'type' => 'input'
|
|
},
|
|
'source_reset_in' => {
|
|
'instance_name' => 'clk_source0',
|
|
'range' => '',
|
|
'intfc_port' => 'reset_i',
|
|
'intfc_name' => 'plug:reset[0]',
|
|
'type' => 'input'
|
}
|
}
|
},
|
},
|
'instance' => 'ram',
|
'interface' => {
|
'module_name' => 'wb_single_port_ram',
|
'plug:enable[0]' => {
|
'category' => 'RAM',
|
'ports' => {
|
'module' => 'single_port_ram'
|
'cpu_cpu_en' => {
|
|
'range' => '',
|
|
'instance_name' => 'mor1kx0',
|
|
'intfc_port' => 'enable_i',
|
|
'type' => 'input'
|
}
|
}
|
}
|
}
|
}, 'ip_gen' ),
|
|
'clk_source0' => {
|
|
'version' => 0
|
|
},
|
},
|
'compile_pin_pos' => {},
|
'socket:RxD_sim[0]' => {
|
|
'ports' => {
|
|
'uart_RxD_wr_sim' => {
|
|
'intfc_port' => 'RxD_wr_sim',
|
|
'range' => '',
|
|
'instance_name' => 'ProNoC_jtag_uart0',
|
|
'type' => 'input'
|
|
},
|
|
'uart_RxD_din_sim' => {
|
|
'range' => '7:0 ',
|
|
'instance_name' => 'ProNoC_jtag_uart0',
|
|
'intfc_port' => 'RxD_din_sim',
|
|
'type' => 'input'
|
|
},
|
|
'uart_RxD_ready_sim' => {
|
|
'intfc_port' => 'RxD_ready_sim',
|
|
'range' => '',
|
|
'instance_name' => 'ProNoC_jtag_uart0',
|
|
'type' => 'output'
|
|
}
|
|
}
|
|
},
|
|
'socket:jtag_to_wb[0]' => {
|
|
'ports' => {
|
|
'uart_jtag_to_wb' => {
|
|
'type' => 'input',
|
|
'instance_name' => 'ProNoC_jtag_uart0',
|
|
'range' => 'uart_J2WBw-1 : 0',
|
|
'intfc_port' => 'jwb_i'
|
|
},
|
|
'ram_wb_to_jtag' => {
|
|
'type' => 'output',
|
|
'instance_name' => 'single_port_ram0',
|
|
'range' => 'ram_WB2Jw-1 : 0',
|
|
'intfc_port' => 'jwb_o'
|
|
},
|
|
'ram_jtag_to_wb' => {
|
|
'range' => 'ram_J2WBw-1 : 0',
|
|
'instance_name' => 'single_port_ram0',
|
|
'intfc_port' => 'jwb_i',
|
|
'type' => 'input'
|
|
},
|
|
'uart_wb_to_jtag' => {
|
|
'type' => 'output',
|
|
'range' => 'uart_WB2Jw-1 : 0',
|
|
'instance_name' => 'ProNoC_jtag_uart0',
|
|
'intfc_port' => 'jwb_o'
|
|
}
|
|
}
|
|
},
|
|
'plug:clk[0]' => {
|
|
'ports' => {
|
|
'source_clk_in' => {
|
|
'instance_name' => 'clk_source0',
|
|
'range' => '',
|
|
'intfc_port' => 'clk_i',
|
|
'type' => 'input'
|
|
}
|
|
}
|
|
},
|
|
'socket:ni[0]' => {
|
|
'ports' => {
|
|
'ni_chan_in' => {
|
|
'type' => 'input',
|
|
'intfc_port' => 'chan_in',
|
|
'range' => 'smartflit_chanel_t',
|
|
'instance_name' => 'ni_master0'
|
|
},
|
|
'ni_current_e_addr' => {
|
|
'intfc_port' => 'current_e_addr',
|
|
'range' => 'ni_EAw-1 : 0',
|
|
'instance_name' => 'ni_master0',
|
|
'type' => 'input'
|
|
},
|
|
'ni_chan_out' => {
|
|
'instance_name' => 'ni_master0',
|
|
'range' => 'smartflit_chanel_t',
|
|
'intfc_port' => 'chan_out',
|
|
'type' => 'output'
|
|
},
|
|
'ni_current_r_addr' => {
|
|
'intfc_port' => 'current_r_addr',
|
|
'range' => 'ni_RAw-1 : 0',
|
|
'instance_name' => 'ni_master0',
|
|
'type' => 'input'
|
|
}
|
|
}
|
|
},
|
|
'plug:reset[0]' => {
|
|
'ports' => {
|
|
'source_reset_in' => {
|
|
'type' => 'input',
|
|
'range' => '',
|
|
'instance_name' => 'clk_source0',
|
|
'intfc_port' => 'reset_i'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}, 'ip_gen' ),
|
'mor1kx0' => {
|
'mor1kx0' => {
|
'version' => 17
|
'version' => 26
|
},
|
},
|
'gui_status' => {
|
'wishbone_bus0' => {
|
'timeout' => 0,
|
'version' => 1
|
'status' => 'ideal'
|
|
},
|
},
|
'jtag_uart0' => {
|
'MEM0' => {
|
'version' => 14
|
'width' => '14',
|
|
'percent' => 75
|
},
|
},
|
'global_param' => {
|
'timer0' => {
|
'SW_LOC' => '/home/alireza/work/mpsoc_work/SOC/mor1k_tile/sw',
|
'version' => 12
|
'CORE_ID' => 3
|
|
},
|
},
|
'single_port_ram0' => {
|
'JTAG' => {
|
'version' => 22
|
'M_CHAIN' => '0'
|
},
|
},
|
'compile' => {
|
'hdl_files_ticked' => undef,
|
'type' => 'Verilator',
|
'ProNoC_jtag_uart0' => {
|
'modelsim_bin' => '/home/alireza/intelFPGA_lite/17.1/modelsim_ase/bin',
|
'version' => 11
|
'quartus_bin' => '/home/alireza/intelFPGA_lite/17.1/quartus/bin',
|
},
|
'board' => 'DE10_Nano_VB2',
|
'ni_master0' => {
|
'compilers' => 'QuartusII,Verilator,Modelsim'
|
'version' => 84
|
},
|
|
'Unset-intfc' => {
|
|
'uart-RxD_din_sim' => 'NC',
|
|
'uart-RxD_wr_sim' => 'NC',
|
|
'bus-snoop_adr_o' => 'NC',
|
|
'uart-RxD_ready_sim' => 'NC',
|
|
'bus-snoop_en_o' => 'NC'
|
|
},
|
},
|
'instance_order' => [
|
'instance_order' => [
|
'single_port_ram0',
|
|
'clk_source0',
|
'clk_source0',
|
'jtag_uart0',
|
|
'timer0',
|
|
'wishbone_bus0',
|
'wishbone_bus0',
|
'mor1kx0',
|
'mor1kx0',
|
'ni_master0'
|
'single_port_ram0',
|
|
'ni_master0',
|
|
'timer0',
|
|
'ProNoC_jtag_uart0'
|
],
|
],
|
'wishbone_bus0' => {
|
'clk_source0' => {
|
'version' => 1
|
'version' => 1
|
},
|
|
'soc_name' => 'mor1k_tile',
|
|
'dma0' => {
|
|
'version' => 4
|
|
}
|
}
|
}, 'soc' );
|
}, 'soc' );
|