Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
H
HDL
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Requirements
Jira
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Container registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
RTSD
HDL
Commits
3fc5b2a4
Commit
3fc5b2a4
authored
1 year ago
by
Eric Kooistra
Browse files
Options
Downloads
Patches
Plain Diff
Connect destinations_info register.
parent
52c6385d
No related branches found
No related tags found
1 merge request
!357
Move func_sdp_bdo_cep_hdr_field_sel_dest() from sdp_bdo_pkg to...
Pipeline
#58516
passed
1 year ago
Stage: linting
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
applications/lofar2/libraries/sdp/src/vhdl/sdp_beamformer_output.vhd
+40
-21
40 additions, 21 deletions
...s/lofar2/libraries/sdp/src/vhdl/sdp_beamformer_output.vhd
with
40 additions
and
21 deletions
applications/lofar2/libraries/sdp/src/vhdl/sdp_beamformer_output.vhd
+
40
−
21
View file @
3fc5b2a4
...
@@ -57,24 +57,27 @@ entity sdp_beamformer_output is
...
@@ -57,24 +57,27 @@ entity sdp_beamformer_output is
mm_clk
:
in
std_logic
;
mm_clk
:
in
std_logic
;
mm_rst
:
in
std_logic
;
mm_rst
:
in
std_logic
;
reg_hdr_dat_mosi
:
in
t_mem_mosi
:
=
c_mem_mosi_rst
;
reg_hdr_dat_mosi
:
in
t_mem_mosi
:
=
c_mem_mosi_rst
;
reg_hdr_dat_miso
:
out
t_mem_miso
;
reg_hdr_dat_miso
:
out
t_mem_miso
;
reg_d
p_xonoff_mos
i
:
in
t_mem_
mos
i
:
=
c_mem_mosi_rst
;
reg_d
estinations_cop
i
:
in
t_mem_
cop
i
:
=
c_mem_mosi_rst
;
reg_d
p_xonoff_mis
o
:
out
t_mem_
mis
o
;
reg_d
estinations_cip
o
:
out
t_mem_
cip
o
;
in_sosi
:
in
t_dp_sosi
;
reg_dp_xonoff_mosi
:
in
t_mem_mosi
:
=
c_mem_mosi_rst
;
out_sosi
:
out
t_dp_sosi
;
reg_dp_xonoff_miso
:
out
t_mem_miso
;
out_siso
:
in
t_dp_siso
;
sdp_info
:
in
t_sdp_info
;
in_sosi
:
in
t_dp_sosi
;
beamlet_scale
:
in
std_logic_vector
(
c_sdp_W_beamlet_scale
-1
downto
0
);
out_sosi
:
out
t_dp_sosi
;
gn_id
:
in
std_logic_vector
(
c_sdp_W_gn_id
-
1
downto
0
);
out_siso
:
in
t_dp_siso
;
sdp_info
:
in
t_sdp_info
;
beamlet_scale
:
in
std_logic_vector
(
c_sdp_W_beamlet_scale
-1
downto
0
);
gn_id
:
in
std_logic_vector
(
c_sdp_W_gn_id
-
1
downto
0
);
-- Source MAC/IP/UDP are not used, c_sdp_cep_hdr_field_sel selects MM programmable instead
-- Source MAC/IP/UDP are not used, c_sdp_cep_hdr_field_sel selects MM programmable instead
eth_src_mac
:
in
std_logic_vector
(
c_network_eth_mac_addr_w
-
1
downto
0
);
eth_src_mac
:
in
std_logic_vector
(
c_network_eth_mac_addr_w
-
1
downto
0
);
ip_src_addr
:
in
std_logic_vector
(
c_network_ip_addr_w
-
1
downto
0
);
ip_src_addr
:
in
std_logic_vector
(
c_network_ip_addr_w
-
1
downto
0
);
udp_src_port
:
in
std_logic_vector
(
c_network_udp_port_w
-
1
downto
0
);
udp_src_port
:
in
std_logic_vector
(
c_network_udp_port_w
-
1
downto
0
);
hdr_fields_out
:
out
std_logic_vector
(
1023
downto
0
)
hdr_fields_out
:
out
std_logic_vector
(
1023
downto
0
)
);
);
...
@@ -131,6 +134,7 @@ architecture str of sdp_beamformer_output is
...
@@ -131,6 +134,7 @@ architecture str of sdp_beamformer_output is
signal
station_info
:
std_logic_vector
(
15
downto
0
)
:
=
(
others
=>
'0'
);
signal
station_info
:
std_logic_vector
(
15
downto
0
)
:
=
(
others
=>
'0'
);
-- Multiple destinations
-- Multiple destinations
signal
destinations_info
:
t_sdp_bdo_destinations_info
;
signal
eth_dst_mac
:
std_logic_vector
(
c_network_eth_mac_addr_w
-
1
downto
0
);
signal
eth_dst_mac
:
std_logic_vector
(
c_network_eth_mac_addr_w
-
1
downto
0
);
signal
ip_dst_addr
:
std_logic_vector
(
c_network_ip_addr_w
-
1
downto
0
);
signal
ip_dst_addr
:
std_logic_vector
(
c_network_ip_addr_w
-
1
downto
0
);
signal
udp_dst_port
:
std_logic_vector
(
c_network_udp_port_w
-
1
downto
0
);
signal
udp_dst_port
:
std_logic_vector
(
c_network_udp_port_w
-
1
downto
0
);
...
@@ -245,10 +249,6 @@ begin
...
@@ -245,10 +249,6 @@ begin
snk_in
=>
dp_repack_beamlet_src_out
,
snk_in
=>
dp_repack_beamlet_src_out
,
src_out
=>
dp_packet_reorder_src_out
src_out
=>
dp_packet_reorder_src_out
);
);
-- Use constant defaults for beamlet data output to one destination.
nof_blocks_per_packet
<=
c_sdp_cep_nof_blocks_per_packet
;
-- = 4;
nof_beamlets_per_block
<=
c_sdp_S_sub_bf
;
-- = 488 dual pol beamlets;
end
generate
;
end
generate
;
gen_multiple_destinations
:
if
g_use_multiple_destinations
=
true
generate
gen_multiple_destinations
:
if
g_use_multiple_destinations
=
true
generate
...
@@ -267,16 +267,20 @@ begin
...
@@ -267,16 +267,20 @@ begin
g_use_transpose
=>
g_use_transpose
g_use_transpose
=>
g_use_transpose
)
)
port
map
(
port
map
(
mm_clk
=>
mm_clk
,
mm_rst
=>
mm_rst
,
dp_clk
=>
dp_clk
,
dp_clk
=>
dp_clk
,
dp_rst
=>
dp_rst
,
dp_rst
=>
dp_rst
,
reg_destinations_copi
=>
reg_destinations_copi
,
reg_destinations_cipo
=>
reg_destinations_cipo
,
destinations_info
=>
destinations_info
,
snk_in
=>
dp_repack_beamlet_src_out
,
snk_in
=>
dp_repack_beamlet_src_out
,
src_out
=>
dp_packet_reorder_src_out
src_out
=>
dp_packet_reorder_src_out
);
);
-- Use dynamic sizes for beamlet data output to multiple destination.
nof_blocks_per_packet
<=
c_sdp_cep_nof_blocks_per_packet
;
-- = 4;
nof_beamlets_per_block
<=
c_sdp_S_sub_bf
;
-- = 488 dual pol beamlets;
end
generate
;
end
generate
;
-- Debug signals for view in Wave window
-- Debug signals for view in Wave window
...
@@ -425,6 +429,21 @@ begin
...
@@ -425,6 +429,21 @@ begin
--
--
-- DP dp_bsn
-- DP dp_bsn
p_assemble_offload_info
:
process
(
destinations_info
)
begin
if
g_use_multiple_destinations
=
false
then
-- Use constant defaults for beamlet data output to one destination.
nof_blocks_per_packet
<=
c_sdp_cep_nof_blocks_per_packet
;
-- = 4;
nof_beamlets_per_block
<=
c_sdp_S_sub_bf
;
-- = 488 dual pol beamlets;
else
-- Use dynamic sizes for beamlet data output to multiple destination.
nof_blocks_per_packet
<=
destinations_info
.
nof_blocks_per_packet_act
;
nof_beamlets_per_block
<=
c_sdp_S_sub_bf
;
-- = 488 dual pol beamlets;
-- TODO check channel field to set destination addresses in dp_offload_tx_hdr_fields
end
if
;
end
process
;
station_info
<=
sdp_info
.
antenna_field_index
&
sdp_info
.
station_id
;
station_info
<=
sdp_info
.
antenna_field_index
&
sdp_info
.
station_id
;
-- Use MM programmable source MAC/IP/UDP instead of source MAC/IP/UDP based
-- Use MM programmable source MAC/IP/UDP instead of source MAC/IP/UDP based
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment