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
42704570
Commit
42704570
authored
2 years ago
by
Eric Kooistra
Browse files
Options
Downloads
Patches
Plain Diff
Add g_read_all_sub_sel to speed up sim.
parent
5e3f3037
No related branches found
Branches containing commit
No related tags found
1 merge request
!283
Resolve L2SDP-696
Pipeline
#36944
passed
2 years ago
Stage: simulation
Stage: synthesis
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_bf/tb_lofar2_unb2c_sdp_station_bf.vhd
+11
-9
11 additions, 9 deletions
...2_unb2c_sdp_station_bf/tb_lofar2_unb2c_sdp_station_bf.vhd
with
11 additions
and
9 deletions
applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_bf/tb_lofar2_unb2c_sdp_station_bf.vhd
+
11
−
9
View file @
42704570
...
@@ -155,6 +155,7 @@ ENTITY tb_lofar2_unb2c_sdp_station_bf IS
...
@@ -155,6 +155,7 @@ ENTITY tb_lofar2_unb2c_sdp_station_bf IS
g_bf_remnant_y_gain
:
REAL
:
=
0
.
04
;
-- g_beamlet Y BF weight normalized gain for remnant sp
g_bf_remnant_y_gain
:
REAL
:
=
0
.
04
;
-- g_beamlet Y BF weight normalized gain for remnant sp
g_bf_remnant_x_phase
:
REAL
:
=
170
.
0
;
-- g_beamlet X BF weight phase rotation in degrees for remnant sp
g_bf_remnant_x_phase
:
REAL
:
=
170
.
0
;
-- g_beamlet X BF weight phase rotation in degrees for remnant sp
g_bf_remnant_y_phase
:
REAL
:
=
-135
.
0
;
-- g_beamlet Y BF weight phase rotation in degrees for remnant sp
g_bf_remnant_y_phase
:
REAL
:
=
-135
.
0
;
-- g_beamlet Y BF weight phase rotation in degrees for remnant sp
g_read_all_sub_sel
:
BOOLEAN
:
=
FALSE
;
-- when FALSE only read subband selection for g_beamlet, to save sim time
g_read_all_SST
:
BOOLEAN
:
=
TRUE
;
-- when FALSE only read SST for g_subband, to save sim time
g_read_all_SST
:
BOOLEAN
:
=
TRUE
;
-- when FALSE only read SST for g_subband, to save sim time
g_read_all_BST
:
BOOLEAN
:
=
TRUE
-- when FALSE only read BST for g_beamlet, to save sim time
g_read_all_BST
:
BOOLEAN
:
=
TRUE
-- when FALSE only read BST for g_beamlet, to save sim time
);
);
...
@@ -407,7 +408,7 @@ ARCHITECTURE tb OF tb_lofar2_unb2c_sdp_station_bf IS
...
@@ -407,7 +408,7 @@ ARCHITECTURE tb OF tb_lofar2_unb2c_sdp_station_bf IS
-- BF
-- BF
-- . beamlet subband selection
-- . beamlet subband selection
SIGNAL
sp_subband_select
:
NATURAL
:
=
0
;
SIGNAL
sp_subband_select
:
NATURAL
:
=
0
;
SIGNAL
sp_subband_select_arr
:
t_
natural
_arr
(
0
TO
c_sdp_S_sub_bf
*
c_sdp_N_pol
-1
)
:
=
(
OTHERS
=>
0
);
-- Q_fft = N_pol = 2
SIGNAL
sp_subband_select_arr
:
t_
integer
_arr
(
0
TO
c_sdp_S_sub_bf
*
c_sdp_N_pol
-1
)
:
=
(
OTHERS
=>
-1
);
-- Q_fft = N_pol = 2
-- . beamlet X-pol
-- . beamlet X-pol
SIGNAL
sp_bf_x_weights_re_arr
:
t_integer_arr
(
0
TO
c_sdp_S_pn
-1
)
:
=
(
OTHERS
=>
0
);
SIGNAL
sp_bf_x_weights_re_arr
:
t_integer_arr
(
0
TO
c_sdp_S_pn
-1
)
:
=
(
OTHERS
=>
0
);
...
@@ -630,8 +631,6 @@ BEGIN
...
@@ -630,8 +631,6 @@ BEGIN
p_mm_stimuli
:
PROCESS
p_mm_stimuli
:
PROCESS
VARIABLE
v_bsn
:
NATURAL
;
VARIABLE
v_bsn
:
NATURAL
;
VARIABLE
v_sp_sst
:
REAL
:
=
0
.
0
;
VARIABLE
v_bst
:
REAL
:
=
0
.
0
;
VARIABLE
v_data_lo
,
v_data_hi
:
STD_LOGIC_VECTOR
(
c_word_w
-1
DOWNTO
0
);
VARIABLE
v_data_lo
,
v_data_hi
:
STD_LOGIC_VECTOR
(
c_word_w
-1
DOWNTO
0
);
VARIABLE
v_stat_data
:
STD_LOGIC_VECTOR
(
c_longword_w
-1
DOWNTO
0
);
VARIABLE
v_stat_data
:
STD_LOGIC_VECTOR
(
c_longword_w
-1
DOWNTO
0
);
VARIABLE
v_len
,
v_span
,
v_offset
,
v_addr
,
v_sel
:
NATURAL
;
-- address ranges, indices
VARIABLE
v_len
,
v_span
,
v_offset
,
v_addr
,
v_sel
:
NATURAL
;
-- address ranges, indices
...
@@ -931,15 +930,18 @@ BEGIN
...
@@ -931,15 +930,18 @@ BEGIN
FOR
U
IN
0
TO
c_sdp_N_beamsets
-1
LOOP
FOR
U
IN
0
TO
c_sdp_N_beamsets
-1
LOOP
-- Same selection for both beamsets, so fine to use only one sp_subband_select_arr()
-- Same selection for both beamsets, so fine to use only one sp_subband_select_arr()
FOR
B
IN
0
TO
c_sdp_S_sub_bf
-1
LOOP
FOR
B
IN
0
TO
c_sdp_S_sub_bf
-1
LOOP
-- Same selection for all SP, so fine to only read subband selection for g_sp
IF
g_read_all_sub_sel
OR
B
=
g_beamlet
THEN
v_addr
:
=
v_P
+
B
*
c_sdp_N_pol
+
v_A
*
v_span
+
U
*
c_mm_span_ram_ss_ss_wide
;
-- Same selection for all SP, so fine to only read subband selection for g_sp
mmf_mm_bus_rd
(
c_mm_file_ram_ss_ss_wide
,
v_addr
,
rd_data
,
tb_clk
);
v_addr
:
=
v_P
+
B
*
c_sdp_N_pol
+
v_A
*
v_span
+
U
*
c_mm_span_ram_ss_ss_wide
;
v_sel
:
=
(
TO_UINT
(
rd_data
)
-
v_P
)
/
c_sdp_N_pol
;
mmf_mm_bus_rd
(
c_mm_file_ram_ss_ss_wide
,
v_addr
,
rd_data
,
tb_clk
);
sp_subband_select_arr
(
B
)
<=
v_sel
;
v_sel
:
=
(
TO_UINT
(
rd_data
)
-
v_P
)
/
c_sdp_N_pol
;
sp_subband_select
<=
v_sel
;
-- for time series view in Wave window
sp_subband_select_arr
(
B
*
c_sdp_N_pol
+
v_P
)
<=
v_sel
;
sp_subband_select
<=
v_sel
;
-- for time series view in Wave window
END
IF
;
END
LOOP
;
END
LOOP
;
END
LOOP
;
END
LOOP
;
proc_common_wait_some_cycles
(
tb_clk
,
1
);
proc_common_wait_some_cycles
(
tb_clk
,
1
);
ASSERT
sp_subband_select_arr
(
g_beamlet
*
c_sdp_N_pol
+
v_P
)
=
g_subband
REPORT
"Wrong subband select at beamlet index."
SEVERITY
ERROR
;
proc_common_wait_some_cycles
(
ext_clk
,
100
);
-- delay for ease of view in Wave window
proc_common_wait_some_cycles
(
ext_clk
,
100
);
-- delay for ease of view in Wave window
----------------------------------------------------------------------------
----------------------------------------------------------------------------
...
...
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