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
48110f98
Commit
48110f98
authored
6 years ago
by
Eric Kooistra
Browse files
Options
Downloads
Patches
Plain Diff
Added hdr_fields_raw_arr to also output e.g. bsn during entiry packet, instead of only at sop.
parent
89951fb7
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
libraries/base/dp/src/vhdl/dp_offload_rx.vhd
+6
-3
6 additions, 3 deletions
libraries/base/dp/src/vhdl/dp_offload_rx.vhd
libraries/base/dp/tb/vhdl/tb_dp_concat_field_blk.vhd
+5
-3
5 additions, 3 deletions
libraries/base/dp/tb/vhdl/tb_dp_concat_field_blk.vhd
with
11 additions
and
6 deletions
libraries/base/dp/src/vhdl/dp_offload_rx.vhd
+
6
−
3
View file @
48110f98
...
...
@@ -51,7 +51,8 @@ ENTITY dp_offload_rx IS
src_out_arr
:
OUT
t_dp_sosi_arr
(
g_nof_streams
-1
DOWNTO
0
);
src_in_arr
:
IN
t_dp_siso_arr
(
g_nof_streams
-1
DOWNTO
0
);
hdr_fields_out_arr
:
OUT
t_slv_1024_arr
(
g_nof_streams
-1
DOWNTO
0
)
--Valid at src_out_arr(i).sop.
hdr_fields_out_arr
:
OUT
t_slv_1024_arr
(
g_nof_streams
-1
DOWNTO
0
);
-- Valid at src_out_arr(i).sop, use for sosi.sync
hdr_fields_raw_arr
:
OUT
t_slv_1024_arr
(
g_nof_streams
-1
DOWNTO
0
)
-- Valid at src_out_arr(i).sop and beyond, use for sosi.bsn
);
END
dp_offload_rx
;
...
...
@@ -187,11 +188,13 @@ BEGIN
nxt_reg_dp_field_blk_slv_out
(
i
)
<=
dp_field_blk_slv_out
(
i
)
WHEN
dp_field_blk_slv_out_val
(
i
)
=
'1'
ELSE
reg_dp_field_blk_slv_out
(
i
);
END
GENERATE
;
-- Put the fields on the entity output at src_out.sop
-- Put the fields
that can only be active at sop
on the entity output at src_out.sop
(e.g. sosi sync field)
gen_hdr_fields_out_arr
:
FOR
i
IN
0
TO
g_nof_streams
-1
GENERATE
hdr_fields_out_arr
(
i
)
<=
reg_dp_field_blk_slv_out
(
i
)
WHEN
dp_tail_remove_src_out_arr
(
i
)
.
sop
=
'1'
ELSE
(
OTHERS
=>
'0'
);
END
GENERATE
;
-- Put the fields that can be valid during entire packet on the entity combinatorially (e.g. all sosi slv fields)
hdr_fields_raw_arr
<=
reg_dp_field_blk_slv_out
;
---------------------------------------------------------------------------------------
-- MM control & monitoring
---------------------------------------------------------------------------------------
...
...
This diff is collapsed.
Click to expand it.
libraries/base/dp/tb/vhdl/tb_dp_concat_field_blk.vhd
+
5
−
3
View file @
48110f98
...
...
@@ -151,6 +151,7 @@ ARCHITECTURE tb OF tb_dp_concat_field_blk IS
SIGNAL
dp_offload_rx_src_in_arr
:
t_dp_siso_arr
(
0
DOWNTO
0
);
SIGNAL
rx_hdr_fields_out_arr
:
t_slv_1024_arr
(
0
DOWNTO
0
);
SIGNAL
rx_hdr_fields_raw_arr
:
t_slv_1024_arr
(
0
DOWNTO
0
);
SIGNAL
reg_dp_offload_rx_hdr_dat_mosi
:
t_mem_mosi
:
=
c_mem_mosi_rst
;
SIGNAL
reg_dp_offload_rx_hdr_dat_miso
:
t_mem_miso
;
...
...
@@ -243,7 +244,7 @@ BEGIN
-- . after the test
verify_last_snk_in_evt
.
sync
<=
last_snk_in_evt
;
verify_last_snk_in_evt
.
bsn
<=
'0'
;
--
in rx_hdr_fields_
out
_arr f
rom dp_offload_rx output the bsn is only valid at sop
verify_last_snk_in_evt
.
bsn
<=
last_snk_in_evt
;
-- thanks to us
in
g
rx_hdr_fields_
raw
_arr f
or bsn field
verify_last_snk_in_evt
.
data
<=
last_snk_in_evt
;
verify_last_snk_in_evt
.
re
<=
'0'
;
verify_last_snk_in_evt
.
im
<=
'0'
;
...
...
@@ -374,14 +375,15 @@ BEGIN
src_out_arr
=>
dp_offload_rx_src_out_arr
,
src_in_arr
=>
dp_offload_rx_src_in_arr
,
hdr_fields_out_arr
=>
rx_hdr_fields_out_arr
hdr_fields_out_arr
=>
rx_hdr_fields_out_arr
,
hdr_fields_raw_arr
=>
rx_hdr_fields_raw_arr
);
p_restore_sync_bsn
:
PROCESS
(
dp_offload_rx_src_out_arr
,
rx_hdr_fields_out_arr
)
BEGIN
verify_snk_in
<=
dp_offload_rx_src_out_arr
(
0
);
verify_snk_in
.
sync
<=
sl
(
rx_hdr_fields_out_arr
(
0
)(
field_hi
(
c_udp_offload_hdr_field_arr
,
"dp_sync"
)
DOWNTO
field_lo
(
c_udp_offload_hdr_field_arr
,
"dp_sync"
)));
verify_snk_in
.
bsn
<=
RESIZE_UVEC
(
rx_hdr_fields_
out
_arr
(
0
)(
field_hi
(
c_udp_offload_hdr_field_arr
,
"dp_bsn"
)
DOWNTO
field_lo
(
c_udp_offload_hdr_field_arr
,
"dp_bsn"
)),
c_dp_stream_bsn_w
);
verify_snk_in
.
bsn
<=
RESIZE_UVEC
(
rx_hdr_fields_
raw
_arr
(
0
)(
field_hi
(
c_udp_offload_hdr_field_arr
,
"dp_bsn"
)
DOWNTO
field_lo
(
c_udp_offload_hdr_field_arr
,
"dp_bsn"
)),
c_dp_stream_bsn_w
);
END
PROCESS
;
dp_offload_rx_src_in_arr
<=
(
OTHERS
=>
c_dp_siso_rdy
);
...
...
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