BUG FIX: Default Reliability is different for Readers and Writers
This commit is contained in:
parent
3a1aeb818e
commit
20dff4a208
@ -13,10 +13,10 @@ add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/last_word_in
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/last_word_in_latch
|
||||
add wave -noupdate -radix hexadecimal /l1_rtps_builtin_endpoint_test1/uut/time
|
||||
add wave -noupdate -divider OUTPUT
|
||||
add wave -noupdate -radix hexadecimal /l1_rtps_builtin_endpoint_test1/uut/data_out
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/last_word_out
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/rtps_wr
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/rtps_full
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/full_ro
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/wr_ro
|
||||
add wave -noupdate -radix hexadecimal /l1_rtps_builtin_endpoint_test1/uut/data_out_ro
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/last_word_out_ro
|
||||
add wave -noupdate -divider {MAIN FSM}
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/stage
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/stage_next
|
||||
@ -37,7 +37,7 @@ add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/mem_opcode
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/mem_stage
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/mem_stage_next
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/mem_cnt
|
||||
add wave -noupdate -childformat {{/l1_rtps_builtin_endpoint_test1/uut/participant_data.guid_prefix -radix hexadecimal} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.meta_addr -radix hexadecimal} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.def_addr -radix hexadecimal} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.meta_port -radix hexadecimal} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.def_port -radix hexadecimal} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.lease_duration -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.lease_deadline -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.heartbeat_res_time -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.acknack_res_time -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.spdp_seq_nr -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.pub_seq_nr -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.sub_seq_nr -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.mes_seq_nr -radix unsigned}} -expand -subitemconfig {/l1_rtps_builtin_endpoint_test1/uut/participant_data.guid_prefix {-height 15 -radix hexadecimal} /l1_rtps_builtin_endpoint_test1/uut/participant_data.meta_addr {-height 15 -radix hexadecimal} /l1_rtps_builtin_endpoint_test1/uut/participant_data.def_addr {-height 15 -radix hexadecimal} /l1_rtps_builtin_endpoint_test1/uut/participant_data.meta_port {-height 15 -radix hexadecimal} /l1_rtps_builtin_endpoint_test1/uut/participant_data.def_port {-height 15 -radix hexadecimal} /l1_rtps_builtin_endpoint_test1/uut/participant_data.lease_duration {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.lease_deadline {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.heartbeat_res_time {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.acknack_res_time {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.spdp_seq_nr {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.pub_seq_nr {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.sub_seq_nr {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.mes_seq_nr {-height 15 -radix unsigned}} /l1_rtps_builtin_endpoint_test1/uut/participant_data
|
||||
add wave -noupdate -childformat {{/l1_rtps_builtin_endpoint_test1/uut/participant_data.guid_prefix -radix hexadecimal} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.meta_addr -radix hexadecimal} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.def_addr -radix hexadecimal} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.meta_port -radix hexadecimal} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.def_port -radix hexadecimal} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.lease_duration -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.lease_deadline -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.heartbeat_res_time -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.acknack_res_time -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.spdp_seq_nr -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.pub_seq_nr -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.sub_seq_nr -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/participant_data.mes_seq_nr -radix unsigned}} -subitemconfig {/l1_rtps_builtin_endpoint_test1/uut/participant_data.guid_prefix {-height 15 -radix hexadecimal} /l1_rtps_builtin_endpoint_test1/uut/participant_data.meta_addr {-height 15 -radix hexadecimal} /l1_rtps_builtin_endpoint_test1/uut/participant_data.def_addr {-height 15 -radix hexadecimal} /l1_rtps_builtin_endpoint_test1/uut/participant_data.meta_port {-height 15 -radix hexadecimal} /l1_rtps_builtin_endpoint_test1/uut/participant_data.def_port {-height 15 -radix hexadecimal} /l1_rtps_builtin_endpoint_test1/uut/participant_data.lease_duration {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.lease_deadline {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.heartbeat_res_time {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.acknack_res_time {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.spdp_seq_nr {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.pub_seq_nr {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.sub_seq_nr {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/participant_data.mes_seq_nr {-height 15 -radix unsigned}} /l1_rtps_builtin_endpoint_test1/uut/participant_data
|
||||
add wave -noupdate -radix unsigned /l1_rtps_builtin_endpoint_test1/uut/mem_addr_base
|
||||
add wave -noupdate -radix unsigned /l1_rtps_builtin_endpoint_test1/uut/mem_empty_head
|
||||
add wave -noupdate -radix unsigned /l1_rtps_builtin_endpoint_test1/uut/mem_occupied_head
|
||||
@ -48,13 +48,13 @@ add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/parse_prc/rd_guard
|
||||
add wave -noupdate -divider MISC
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/alive
|
||||
add wave -noupdate /l1_rtps_builtin_endpoint_test1/uut/endpoint_alive
|
||||
add wave -noupdate -radix unsigned -childformat {{/l1_rtps_builtin_endpoint_test1/uut/seq_nr(0) -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/seq_nr(1) -radix unsigned}} -subitemconfig {/l1_rtps_builtin_endpoint_test1/uut/seq_nr(0) {-radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/seq_nr(1) {-radix unsigned}} /l1_rtps_builtin_endpoint_test1/uut/seq_nr
|
||||
add wave -noupdate -group FIFO -radix hexadecimal /l1_rtps_builtin_endpoint_test1/fifo_inst/data_in
|
||||
add wave -noupdate -group FIFO /l1_rtps_builtin_endpoint_test1/fifo_inst/write
|
||||
add wave -noupdate -group FIFO /l1_rtps_builtin_endpoint_test1/fifo_inst/full
|
||||
add wave -noupdate -group FIFO -radix hexadecimal /l1_rtps_builtin_endpoint_test1/fifo_inst/data_out
|
||||
add wave -noupdate -group FIFO /l1_rtps_builtin_endpoint_test1/fifo_inst/read
|
||||
add wave -noupdate -group FIFO /l1_rtps_builtin_endpoint_test1/fifo_inst/empty
|
||||
add wave -noupdate -radix unsigned -childformat {{/l1_rtps_builtin_endpoint_test1/uut/seq_nr(0) -radix unsigned} {/l1_rtps_builtin_endpoint_test1/uut/seq_nr(1) -radix unsigned}} -subitemconfig {/l1_rtps_builtin_endpoint_test1/uut/seq_nr(0) {-height 15 -radix unsigned} /l1_rtps_builtin_endpoint_test1/uut/seq_nr(1) {-height 15 -radix unsigned}} /l1_rtps_builtin_endpoint_test1/uut/seq_nr
|
||||
add wave -noupdate -expand -group FIFO -radix hexadecimal /l1_rtps_builtin_endpoint_test1/fifo_inst/data_in
|
||||
add wave -noupdate -expand -group FIFO /l1_rtps_builtin_endpoint_test1/fifo_inst/write
|
||||
add wave -noupdate -expand -group FIFO /l1_rtps_builtin_endpoint_test1/fifo_inst/full
|
||||
add wave -noupdate -expand -group FIFO -radix hexadecimal /l1_rtps_builtin_endpoint_test1/fifo_inst/data_out
|
||||
add wave -noupdate -expand -group FIFO /l1_rtps_builtin_endpoint_test1/fifo_inst/read
|
||||
add wave -noupdate -expand -group FIFO /l1_rtps_builtin_endpoint_test1/fifo_inst/empty
|
||||
add wave -noupdate -group RTPS_OUT -radix hexadecimal /l1_rtps_builtin_endpoint_test1/rtps_out_inst/data_in
|
||||
add wave -noupdate -group RTPS_OUT /l1_rtps_builtin_endpoint_test1/rtps_out_inst/last_word_in
|
||||
add wave -noupdate -group RTPS_OUT /l1_rtps_builtin_endpoint_test1/rtps_out_inst/rd
|
||||
@ -70,8 +70,8 @@ add wave -noupdate -group TESTBENCH /l1_rtps_builtin_endpoint_test1/stimulus.len
|
||||
add wave -noupdate -group TESTBENCH /l1_rtps_builtin_endpoint_test1/cnt_stim
|
||||
add wave -noupdate -group TESTBENCH /l1_rtps_builtin_endpoint_test1/packet_sent
|
||||
TreeUpdate [SetDefaultTree]
|
||||
WaveRestoreCursors {Begin {31125000 ps} 1} {Error {36375000 ps} 1} {Cursor {36411652 ps} 0}
|
||||
quietly wave cursor active 2
|
||||
WaveRestoreCursors {Begin {88075000 ps} 0} {Error {36375000 ps} 1} {Cursor {36411652 ps} 0}
|
||||
quietly wave cursor active 1
|
||||
configure wave -namecolwidth 149
|
||||
configure wave -valuecolwidth 144
|
||||
configure wave -justifyvalue left
|
||||
@ -86,4 +86,4 @@ configure wave -griddelta 40
|
||||
configure wave -timeline 0
|
||||
configure wave -timelineunits ns
|
||||
update
|
||||
WaveRestoreZoom {35541123 ps} {36689465 ps}
|
||||
WaveRestoreZoom {87500829 ps} {88649171 ps}
|
||||
|
||||
@ -108,7 +108,10 @@ package user_config is
|
||||
constant ENDPOINT_TIME_BASED_FILTER_QOS : USER_DURATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_TIME_BASED_FILTER_QOS);
|
||||
-- XXX: PARTITION QoS Ignored
|
||||
-- Array mapping RELIABILITY QoS to Endpoints
|
||||
constant ENDPOINT_RELIABILITY_QOS : USER_ENUMERATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_RELIABILITY_QOS);
|
||||
constant ENDPOINT_RELIABILITY_QOS : USER_ENUMERATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (
|
||||
0 to NUM_READERS-1 => DEFAULT_RELIABILITY_QOS_R,
|
||||
NUM_READERS to NUM_WRITERS-1 => DEFAULT_RELIABILITY_QOS_W
|
||||
);
|
||||
-- (Only relevant to Writers)
|
||||
constant ENDPOINT_MAX_BLOCKING_TIME : USER_DURATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_MAX_BLOCKING_TIME);
|
||||
-- Array mapping LIFESPAN QoS to Endpoints (Only relevant to Writers)
|
||||
|
||||
@ -88,7 +88,7 @@ use work.rtps_test_package.all;
|
||||
-- READER 14
|
||||
-- * LEASE_DURATION 20s
|
||||
-- READER 15
|
||||
-- * RELIABILITY BEST_EFFORT
|
||||
-- * RELIABILITY RELIABLE
|
||||
-- READER 16
|
||||
-- * DESTINATION_ORDER BY_SOURCE_TIMESTAMP
|
||||
|
||||
@ -266,7 +266,7 @@ begin
|
||||
0 => (0 => '1', 9 => '1', 10 => '1', 15 => '1', others => '0'),
|
||||
1 => (1 => '1', others => '0'),
|
||||
2 => (2 => '1', others => '0'),
|
||||
3 => (15 => '1', others => '0'),
|
||||
3 => (0 => '1', 9 => '1', 10 => '1', others => '0'),
|
||||
4 => (0 => '1', 3 => '1', 4 => '1', 5 => '1', 8 => '1', 9 => '1', 10 => '1', 11 => '1', 14 => '1', 15 => '1', 16 => '1', others => '0'),
|
||||
5 => (0 => '1', 4 => '1', 5 => '1', 6 => '1', 9 => '1', 10 => '1', 15 => '1', others => '0'),
|
||||
6 => (10 => '1', others => '0'),
|
||||
@ -334,11 +334,13 @@ begin
|
||||
e1.topic_name := ENDPOINT_TOPIC(0);
|
||||
e1.type_name := ENDPOINT_TYPE(0);
|
||||
e1.reader := FALSE;
|
||||
e1.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
e2.participant := p2;
|
||||
e2.entityId := gen_rand_entityid_2(TRUE);
|
||||
e2.topic_name := ENDPOINT_TOPIC(0);
|
||||
e2.type_name := ENDPOINT_TYPE(0);
|
||||
e2.reader := TRUE;
|
||||
e2.reliability := DEFAULT_RELIABILITY_QOS_R;
|
||||
|
||||
user_data := convert_string("USER_DATA" & (10 to 256 => NUL));
|
||||
group_data := convert_string("GROUP_DATA" & (11 to 256 => NUL));
|
||||
@ -500,6 +502,7 @@ begin
|
||||
sub_p.writerSN := p2_snp;
|
||||
endpoint := DEFAULT_ENDPOINT_DATA;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
endpoint.participant := p2;
|
||||
endpoint.topic_name := ENDPOINT_TOPIC(0);
|
||||
@ -521,6 +524,7 @@ begin
|
||||
sub_p.writerSN := p2_snp;
|
||||
endpoint := DEFAULT_ENDPOINT_DATA;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
endpoint.participant := p2;
|
||||
endpoint.topic_name := ENDPOINT_TOPIC(0);
|
||||
@ -542,6 +546,7 @@ begin
|
||||
sub_p.writerSN := p2_snp;
|
||||
endpoint := DEFAULT_ENDPOINT_DATA;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
endpoint.participant := p2;
|
||||
endpoint.topic_name := ENDPOINT_TOPIC(0);
|
||||
@ -563,6 +568,7 @@ begin
|
||||
sub_p.writerSN := p2_snp;
|
||||
endpoint := DEFAULT_ENDPOINT_DATA;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
endpoint.participant := p2;
|
||||
endpoint.topic_name := ENDPOINT_TOPIC(0);
|
||||
@ -587,6 +593,7 @@ begin
|
||||
sub_p.writerSN := p2_snp;
|
||||
endpoint := DEFAULT_ENDPOINT_DATA;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
endpoint.participant := p2;
|
||||
endpoint.topic_name := ENDPOINT_TOPIC(0);
|
||||
@ -608,6 +615,7 @@ begin
|
||||
sub_p.writerSN := p2_snp;
|
||||
endpoint := DEFAULT_ENDPOINT_DATA;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
endpoint.participant := p2;
|
||||
endpoint.topic_name := ENDPOINT_TOPIC(0);
|
||||
@ -631,6 +639,7 @@ begin
|
||||
sub_s.writerSN := p2_sns;
|
||||
endpoint := DEFAULT_ENDPOINT_DATA;
|
||||
endpoint.reader := TRUE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_R;
|
||||
endpoint.entityId := gen_rand_entityid_2(TRUE);
|
||||
endpoint.participant := p2;
|
||||
endpoint.topic_name := ENDPOINT_TOPIC(0);
|
||||
@ -652,6 +661,7 @@ begin
|
||||
sub_s.writerSN := p2_sns;
|
||||
endpoint := DEFAULT_ENDPOINT_DATA;
|
||||
endpoint.reader := TRUE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_R;
|
||||
endpoint.entityId := gen_rand_entityid_2(TRUE);
|
||||
endpoint.participant := p2;
|
||||
endpoint.topic_name := ENDPOINT_TOPIC(0);
|
||||
@ -674,6 +684,7 @@ begin
|
||||
sub_s.writerSN := p2_sns;
|
||||
endpoint := DEFAULT_ENDPOINT_DATA;
|
||||
endpoint.reader := TRUE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_R;
|
||||
endpoint.entityId := gen_rand_entityid_2(TRUE);
|
||||
endpoint.participant := p2;
|
||||
endpoint.topic_name := ENDPOINT_TOPIC(0);
|
||||
@ -695,6 +706,7 @@ begin
|
||||
sub_s.writerSN := p2_sns;
|
||||
endpoint := DEFAULT_ENDPOINT_DATA;
|
||||
endpoint.reader := TRUE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_R;
|
||||
endpoint.entityId := gen_rand_entityid_2(TRUE);
|
||||
endpoint.participant := p2;
|
||||
endpoint.topic_name := ENDPOINT_TOPIC(0);
|
||||
@ -706,7 +718,7 @@ begin
|
||||
gen_endpoint_data(endpoint, sub_s.data);
|
||||
gen_sentinel(sub_s.data);
|
||||
gen_rtps_handler_out(sub_s, endpoint, stimulus);
|
||||
wr_sig := (NUM_READERS => '1', NUM_READERS+4 => '1', NUM_READERS+5 => '1', NUM_READERS+7 => '1', others => '0');
|
||||
wr_sig := (NUM_READERS => '1', NUM_READERS+3 => '1', NUM_READERS+4 => '1', NUM_READERS+5 => '1', NUM_READERS+7 => '1', others => '0');
|
||||
push_endpoint_reference;
|
||||
start_test;
|
||||
wait_on_complete;
|
||||
@ -719,6 +731,7 @@ begin
|
||||
sub_s.writerSN := p2_sns;
|
||||
endpoint := DEFAULT_ENDPOINT_DATA;
|
||||
endpoint.reader := TRUE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_R;
|
||||
endpoint.entityId := gen_rand_entityid_2(TRUE);
|
||||
endpoint.participant := p2;
|
||||
endpoint.topic_name := ENDPOINT_TOPIC(0);
|
||||
@ -759,7 +772,7 @@ begin
|
||||
gen_endpoint_data(endpoint, sub_s.data);
|
||||
gen_sentinel(sub_s.data);
|
||||
gen_rtps_handler_out(sub_s, endpoint, stimulus);
|
||||
wr_sig := (NUM_READERS => '1', NUM_READERS+4 => '1', NUM_READERS+5 => '1', NUM_READERS+7 => '1', others => '0');
|
||||
wr_sig := (NUM_READERS => '1', NUM_READERS+3 => '1', NUM_READERS+4 => '1', NUM_READERS+5 => '1', NUM_READERS+7 => '1', others => '0');
|
||||
push_endpoint_reference;
|
||||
start_test;
|
||||
wait_on_complete;
|
||||
@ -797,7 +810,7 @@ begin
|
||||
gen_endpoint_data(endpoint, sub_s.data);
|
||||
gen_sentinel(sub_s.data);
|
||||
gen_rtps_handler_out(sub_s, endpoint, stimulus);
|
||||
wr_sig := (NUM_READERS => '1', NUM_READERS+4 => '1', NUM_READERS+5 => '1', NUM_READERS+7 => '1', others => '0');
|
||||
wr_sig := (NUM_READERS => '1', NUM_READERS+3 => '1', NUM_READERS+4 => '1', NUM_READERS+5 => '1', NUM_READERS+7 => '1', others => '0');
|
||||
push_endpoint_reference;
|
||||
start_test;
|
||||
wait_on_complete;
|
||||
@ -813,7 +826,7 @@ begin
|
||||
gen_endpoint_data(endpoint, sub_p.data);
|
||||
gen_sentinel(sub_p.data);
|
||||
gen_rtps_handler_out(sub_p, endpoint, stimulus);
|
||||
wr_sig := (15 => '1', others => '0');
|
||||
wr_sig := (0 => '1', 9 => '1', 10 => '1', others => '0');
|
||||
push_endpoint_reference;
|
||||
start_test;
|
||||
wait_on_complete;
|
||||
|
||||
@ -635,6 +635,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data);
|
||||
gen_rtps_handler_out(sub_p, endpoint, stimulus);
|
||||
@ -650,6 +651,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_TOPIC_NAME, -1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -665,6 +667,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_TOPIC_NAME, +1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -684,6 +687,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_TYPE_NAME, -1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -699,6 +703,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_TYPE_NAME, +1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -718,6 +723,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_DURABILITY, -1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -733,6 +739,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_DURABILITY, +1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -752,6 +759,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_DEADLINE, -1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -767,6 +775,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_DEADLINE, +1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -786,6 +795,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_LIVELINESS, -1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -801,6 +811,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_LIVELINESS, +1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -820,6 +831,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_RELIABILITY, -1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -835,6 +847,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_RELIABILITY, +1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -854,6 +867,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_DESTINATION_ORDER, -1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -869,6 +883,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_DESTINATION_ORDER, +1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -888,6 +903,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_OWNERSHIP, -1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -903,6 +919,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_OWNERSHIP, +1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -922,6 +939,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_PRESENTATION, -1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -937,6 +955,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_PRESENTATION, +1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -956,6 +975,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_LATENCY_BUDGET, -1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -971,6 +991,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_LATENCY_BUDGET, +1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -990,6 +1011,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_ENDPOINT_GUID, -1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -1005,6 +1027,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_ENDPOINT_GUID, +1);
|
||||
gen_sentinel(sub_p.data);
|
||||
@ -1023,7 +1046,6 @@ begin
|
||||
Log("Ignore Endpoint [Invalid PID_EXPECTS_INLINE_QOS]", INFO);
|
||||
sub_s.writerSN := p_sns;
|
||||
endpoint := e0;
|
||||
endpoint.reader := TRUE;
|
||||
endpoint.entityId := gen_rand_entityid_2(TRUE);
|
||||
gen_endpoint_data(endpoint, sub_s.data, PID_EXPECTS_INLINE_QOS, -1);
|
||||
gen_sentinel(sub_s.data);
|
||||
@ -1038,19 +1060,18 @@ begin
|
||||
Log("Match Endpoint [Extra Bytes in PID_EXPECTS_INLINE_QOS]", INFO);
|
||||
sub_s.writerSN := p_sns;
|
||||
endpoint := e0;
|
||||
endpoint.reader := TRUE;
|
||||
endpoint.entityId := gen_rand_entityid_2(TRUE);
|
||||
gen_endpoint_data(endpoint, sub_s.data, PID_EXPECTS_INLINE_QOS, +1);
|
||||
gen_sentinel(sub_s.data);
|
||||
gen_rtps_handler_out(sub_s, endpoint, stimulus);
|
||||
wr_sig := (0 => '1', 9 => '1', 10 => '1', 15 => '1', others => '0');
|
||||
wr_sig := (NUM_READERS => '1', NUM_READERS+3 => '1', NUM_READERS+4 => '1', NUM_READERS+5 => '1', NUM_READERS+7 => '1', others => '0');
|
||||
push_endpoint_reference;
|
||||
start_test;
|
||||
wait_on_sent;
|
||||
wait_on_mem_check;
|
||||
stimulus := EMPTY_TEST_PACKET;
|
||||
reference := EMPTY_TEST_PACKET;
|
||||
sub_s.data := EMPTY_TEST_PACKET;
|
||||
sub_p.data := EMPTY_TEST_PACKET;
|
||||
p_sns := p_sns + 1;
|
||||
|
||||
-- *PID_DATA_MAX_SIZE_SERIALIZED*
|
||||
@ -1058,8 +1079,9 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
endpoint.max_size_serialized:= int(65000, CDR_LONG_WIDTH);
|
||||
endpoint.max_size_serialized := int(65000, CDR_LONG_WIDTH);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_DATA_MAX_SIZE_SERIALIZED, -1);
|
||||
gen_sentinel(sub_p.data);
|
||||
gen_rtps_handler_out(sub_p, endpoint, stimulus);
|
||||
@ -1074,8 +1096,9 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
endpoint.max_size_serialized:= int(65000, CDR_LONG_WIDTH);
|
||||
endpoint.max_size_serialized := int(65000, CDR_LONG_WIDTH);
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_DATA_MAX_SIZE_SERIALIZED, +1);
|
||||
gen_sentinel(sub_p.data);
|
||||
gen_rtps_handler_out(sub_p, endpoint, stimulus);
|
||||
@ -1094,6 +1117,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
endpoint.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_UNICAST_LOCATOR, -1);
|
||||
@ -1110,6 +1134,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
endpoint.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_UNICAST_LOCATOR, +1);
|
||||
@ -1161,6 +1186,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
endpoint.multicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_MULTICAST_LOCATOR, -1);
|
||||
@ -1177,6 +1203,7 @@ begin
|
||||
sub_p.writerSN := p_snp;
|
||||
endpoint := e0;
|
||||
endpoint.reader := FALSE;
|
||||
endpoint.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
endpoint.entityId := gen_rand_entityid_2(FALSE);
|
||||
endpoint.multicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
gen_endpoint_data(endpoint, sub_p.data, PID_MULTICAST_LOCATOR, +1);
|
||||
|
||||
@ -227,13 +227,15 @@ begin
|
||||
e0.topic_name := ENDPOINT_TOPIC(2);
|
||||
e0.type_name := ENDPOINT_TYPE(2);
|
||||
e0.reader := FALSE;
|
||||
e0.reliability := DEFAULT_RELIABILITY_QOS_W;
|
||||
e0.entityId := gen_rand_entityid_2(FALSE);
|
||||
|
||||
e1.participant := p0;
|
||||
e1.topic_name := ENDPOINT_TOPIC(2);
|
||||
e1.type_name := ENDPOINT_TYPE(2);
|
||||
e1.reader := TRUE;
|
||||
e1.entityId := gen_rand_entityid_2(FALSE);
|
||||
e1.reliability := DEFAULT_RELIABILITY_QOS_R;
|
||||
e1.entityId := gen_rand_entityid_2(TRUE);
|
||||
|
||||
Log("Initiating Test", INFO);
|
||||
stim_done <= '0';
|
||||
|
||||
@ -166,6 +166,7 @@ begin
|
||||
e0.participant := p0;
|
||||
e0.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e0.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e0.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 2
|
||||
e1 := DEFAULT_ENDPOINT_DATA;
|
||||
e1.participant := p0;
|
||||
@ -186,6 +187,7 @@ begin
|
||||
e3.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e3.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e3.expectsInlineQoS(0) := '1';
|
||||
e3.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
|
||||
Log("Initiating Test", INFO);
|
||||
stim_done <= '0';
|
||||
|
||||
@ -166,6 +166,7 @@ begin
|
||||
e0.participant := p0;
|
||||
e0.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e0.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e0.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 2
|
||||
e1 := DEFAULT_ENDPOINT_DATA;
|
||||
e1.participant := p0;
|
||||
@ -186,6 +187,7 @@ begin
|
||||
e3.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e3.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e3.expectsInlineQoS(0) := '1';
|
||||
e3.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
|
||||
Log("Initiating Test", INFO);
|
||||
stim_done <= '0';
|
||||
|
||||
@ -197,6 +197,7 @@ begin
|
||||
e0.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e0.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e0.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e0.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 1
|
||||
e1 := DEFAULT_ENDPOINT_DATA;
|
||||
e1.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
@ -209,6 +210,7 @@ begin
|
||||
e2.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e2.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e2.expectsInlineQoS(0) := '1';
|
||||
e2.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 3
|
||||
e3 := DEFAULT_ENDPOINT_DATA;
|
||||
e3.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
|
||||
@ -352,6 +352,7 @@ begin
|
||||
e0.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e0.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e0.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e0.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 1
|
||||
e1 := DEFAULT_ENDPOINT_DATA;
|
||||
e1.nr := 1;
|
||||
@ -368,6 +369,7 @@ begin
|
||||
e2.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e2.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e2.expectsInlineQoS(0) := '1';
|
||||
e2.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 3
|
||||
e3 := DEFAULT_ENDPOINT_DATA;
|
||||
e3.nr := 3;
|
||||
@ -376,6 +378,7 @@ begin
|
||||
e3.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e3.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e3.durability := TRANSIENT_LOCAL_DURABILITY_QOS;
|
||||
e3.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 4
|
||||
e4 := DEFAULT_ENDPOINT_DATA;
|
||||
e4.nr := 4;
|
||||
|
||||
@ -352,6 +352,7 @@ begin
|
||||
e0.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e0.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e0.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e0.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 1
|
||||
e1 := DEFAULT_ENDPOINT_DATA;
|
||||
e1.nr := 1;
|
||||
@ -368,6 +369,7 @@ begin
|
||||
e2.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e2.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e2.expectsInlineQoS(0) := '1';
|
||||
e2.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 3
|
||||
e3 := DEFAULT_ENDPOINT_DATA;
|
||||
e3.nr := 3;
|
||||
@ -376,6 +378,7 @@ begin
|
||||
e3.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e3.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e3.durability := TRANSIENT_LOCAL_DURABILITY_QOS;
|
||||
e3.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 4
|
||||
e4 := DEFAULT_ENDPOINT_DATA;
|
||||
e4.nr := 4;
|
||||
|
||||
@ -352,6 +352,7 @@ begin
|
||||
e0.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e0.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e0.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e0.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 1
|
||||
e1 := DEFAULT_ENDPOINT_DATA;
|
||||
e1.nr := 1;
|
||||
@ -368,6 +369,7 @@ begin
|
||||
e2.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e2.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e2.expectsInlineQoS(0) := '1';
|
||||
e2.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 3
|
||||
e3 := DEFAULT_ENDPOINT_DATA;
|
||||
e3.nr := 3;
|
||||
@ -376,6 +378,7 @@ begin
|
||||
e3.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e3.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e3.durability := TRANSIENT_LOCAL_DURABILITY_QOS;
|
||||
e3.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 4
|
||||
e4 := DEFAULT_ENDPOINT_DATA;
|
||||
e4.nr := 4;
|
||||
|
||||
@ -352,6 +352,7 @@ begin
|
||||
e0.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e0.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e0.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e0.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 1
|
||||
e1 := DEFAULT_ENDPOINT_DATA;
|
||||
e1.nr := 1;
|
||||
@ -368,6 +369,7 @@ begin
|
||||
e2.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e2.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e2.expectsInlineQoS(0) := '1';
|
||||
e2.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 3
|
||||
e3 := DEFAULT_ENDPOINT_DATA;
|
||||
e3.nr := 3;
|
||||
@ -376,6 +378,7 @@ begin
|
||||
e3.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e3.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e3.durability := TRANSIENT_LOCAL_DURABILITY_QOS;
|
||||
e3.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 4
|
||||
e4 := DEFAULT_ENDPOINT_DATA;
|
||||
e4.nr := 4;
|
||||
|
||||
@ -352,6 +352,7 @@ begin
|
||||
e0.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e0.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e0.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e0.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 1
|
||||
e1 := DEFAULT_ENDPOINT_DATA;
|
||||
e1.nr := 1;
|
||||
@ -368,6 +369,7 @@ begin
|
||||
e2.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e2.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e2.expectsInlineQoS(0) := '1';
|
||||
e2.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 3
|
||||
e3 := DEFAULT_ENDPOINT_DATA;
|
||||
e3.nr := 3;
|
||||
@ -376,6 +378,7 @@ begin
|
||||
e3.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e3.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e3.durability := TRANSIENT_LOCAL_DURABILITY_QOS;
|
||||
e3.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 4
|
||||
e4 := DEFAULT_ENDPOINT_DATA;
|
||||
e4.nr := 4;
|
||||
|
||||
@ -352,6 +352,7 @@ begin
|
||||
e0.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e0.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e0.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e0.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 1
|
||||
e1 := DEFAULT_ENDPOINT_DATA;
|
||||
e1.nr := 1;
|
||||
@ -368,6 +369,7 @@ begin
|
||||
e2.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e2.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e2.expectsInlineQoS(0) := '1';
|
||||
e2.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 3
|
||||
e3 := DEFAULT_ENDPOINT_DATA;
|
||||
e3.nr := 3;
|
||||
@ -376,6 +378,7 @@ begin
|
||||
e3.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e3.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e3.durability := TRANSIENT_LOCAL_DURABILITY_QOS;
|
||||
e3.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 4
|
||||
e4 := DEFAULT_ENDPOINT_DATA;
|
||||
e4.nr := 4;
|
||||
|
||||
@ -353,6 +353,7 @@ begin
|
||||
e0.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e0.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e0.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e0.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 1
|
||||
e1 := DEFAULT_ENDPOINT_DATA;
|
||||
e1.nr := 1;
|
||||
@ -369,6 +370,7 @@ begin
|
||||
e2.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e2.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e2.expectsInlineQoS(0) := '1';
|
||||
e2.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 3
|
||||
e3 := DEFAULT_ENDPOINT_DATA;
|
||||
e3.nr := 3;
|
||||
@ -377,6 +379,7 @@ begin
|
||||
e3.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e3.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e3.durability := TRANSIENT_LOCAL_DURABILITY_QOS;
|
||||
e3.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 4
|
||||
e4 := DEFAULT_ENDPOINT_DATA;
|
||||
e4.nr := 4;
|
||||
|
||||
@ -355,6 +355,7 @@ begin
|
||||
e0.entityid := RV.RandSlv(ENTITYID_WIDTH);
|
||||
e0.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e0.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e0.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 1
|
||||
e1 := DEFAULT_ENDPOINT_DATA;
|
||||
e1.nr := 1;
|
||||
@ -371,6 +372,7 @@ begin
|
||||
e2.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e2.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e2.expectsInlineQoS(0) := '1';
|
||||
e2.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 3
|
||||
e3 := DEFAULT_ENDPOINT_DATA;
|
||||
e3.nr := 3;
|
||||
@ -379,6 +381,7 @@ begin
|
||||
e3.participant.guidPrefix := gen_rand_guid_prefix;
|
||||
e3.unicastLocatorList := (numLocators => int(1,CDR_LONG_WIDTH), locator => (0 => gen_rand_loc_2, others => EMPTY_LOCATOR));
|
||||
e3.durability := TRANSIENT_LOCAL_DURABILITY_QOS;
|
||||
e3.reliability := RELIABLE_RELIABILITY_QOS;
|
||||
-- Endpoint 4
|
||||
e4 := DEFAULT_ENDPOINT_DATA;
|
||||
e4.nr := 4;
|
||||
|
||||
@ -105,7 +105,7 @@ package user_config is
|
||||
constant ENDPOINT_TIME_BASED_FILTER_QOS : USER_DURATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_TIME_BASED_FILTER_QOS);
|
||||
-- XXX: PARTITION QoS Ignored
|
||||
-- Array mapping RELIABILITY QoS to Endpoints
|
||||
constant ENDPOINT_RELIABILITY_QOS : USER_ENUMERATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_RELIABILITY_QOS);
|
||||
constant ENDPOINT_RELIABILITY_QOS : USER_ENUMERATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => RELIABLE_RELIABILITY_QOS);
|
||||
-- (Only relevant to Writers)
|
||||
constant ENDPOINT_MAX_BLOCKING_TIME : USER_DURATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_MAX_BLOCKING_TIME);
|
||||
-- Array mapping LIFESPAN QoS to Endpoints (Only relevant to Writers)
|
||||
|
||||
@ -107,7 +107,7 @@ package user_config is
|
||||
constant ENDPOINT_TIME_BASED_FILTER_QOS : USER_DURATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_TIME_BASED_FILTER_QOS);
|
||||
-- XXX: PARTITION QoS Ignored
|
||||
-- Array mapping RELIABILITY QoS to Endpoints
|
||||
constant ENDPOINT_RELIABILITY_QOS : USER_ENUMERATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_RELIABILITY_QOS);
|
||||
constant ENDPOINT_RELIABILITY_QOS : USER_ENUMERATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => RELIABLE_RELIABILITY_QOS);
|
||||
-- (Only relevant to Writers)
|
||||
constant ENDPOINT_MAX_BLOCKING_TIME : USER_DURATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_MAX_BLOCKING_TIME);
|
||||
-- Array mapping LIFESPAN QoS to Endpoints (Only relevant to Writers)
|
||||
|
||||
@ -104,7 +104,7 @@ package user_config is
|
||||
constant ENDPOINT_TIME_BASED_FILTER_QOS : USER_DURATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_TIME_BASED_FILTER_QOS);
|
||||
-- XXX: PARTITION QoS Ignored
|
||||
-- Array mapping RELIABILITY QoS to Endpoints
|
||||
constant ENDPOINT_RELIABILITY_QOS : USER_ENUMERATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_RELIABILITY_QOS);
|
||||
constant ENDPOINT_RELIABILITY_QOS : USER_ENUMERATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => RELIABLE_RELIABILITY_QOS);
|
||||
-- (Only relevant to Writers)
|
||||
constant ENDPOINT_MAX_BLOCKING_TIME : USER_DURATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_MAX_BLOCKING_TIME);
|
||||
-- Array mapping LIFESPAN QoS to Endpoints (Only relevant to Writers)
|
||||
|
||||
@ -104,7 +104,7 @@ package user_config is
|
||||
constant ENDPOINT_TIME_BASED_FILTER_QOS : USER_DURATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_TIME_BASED_FILTER_QOS);
|
||||
-- XXX: PARTITION QoS Ignored
|
||||
-- Array mapping RELIABILITY QoS to Endpoints
|
||||
constant ENDPOINT_RELIABILITY_QOS : USER_ENUMERATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_RELIABILITY_QOS);
|
||||
constant ENDPOINT_RELIABILITY_QOS : USER_ENUMERATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => RELIABLE_RELIABILITY_QOS);
|
||||
-- (Only relevant to Writers)
|
||||
constant ENDPOINT_MAX_BLOCKING_TIME : USER_DURATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_MAX_BLOCKING_TIME);
|
||||
-- Array mapping LIFESPAN QoS to Endpoints (Only relevant to Writers)
|
||||
|
||||
@ -184,9 +184,11 @@ package user_config is
|
||||
-- XXX: PARTITION QoS Ignored
|
||||
-- Array mapping RELIABILITY QoS to Endpoints
|
||||
constant ENDPOINT_RELIABILITY_QOS : USER_ENUMERATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (
|
||||
15 => BEST_EFFORT_RELIABILITY_QOS,
|
||||
0 to 14 => DEFAULT_RELIABILITY_QOS_R,
|
||||
15 => RELIABLE_RELIABILITY_QOS,
|
||||
16 => DEFAULT_RELIABILITY_QOS_R,
|
||||
NUM_READERS+3 => BEST_EFFORT_RELIABILITY_QOS,
|
||||
others => DEFAULT_RELIABILITY_QOS
|
||||
others => DEFAULT_RELIABILITY_QOS_W
|
||||
);
|
||||
-- (Only relevant to Writers)
|
||||
constant ENDPOINT_MAX_BLOCKING_TIME : USER_DURATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (
|
||||
|
||||
@ -77,8 +77,9 @@ package rtps_config_package is
|
||||
constant READER_EXPECTS_INLINE_QOS_FLAG : natural := 0;
|
||||
constant READER_EXPECTS_HISTORICAL_DATA_FLAG : natural := 1;
|
||||
constant READER_IS_BEST_EFFORT_FLAG : natural := 2;
|
||||
-- TODO: Auto generate based on other defaults
|
||||
constant DEFAULT_EXPECTS_HISTORICAL_DATA_FLAG : std_logic := '0';
|
||||
constant DEFAULT_IS_BEST_EFFORT_FLAG : std_logic := '0';
|
||||
constant DEFAULT_IS_BEST_EFFORT_FLAG : std_logic := '1';
|
||||
|
||||
-- Marks the Reader Endpoint in the Endpoint Array
|
||||
constant ENDPOINT_READERS : std_logic_vector(0 to NUM_ENDPOINTS-1); --Deferred to package body
|
||||
@ -521,7 +522,7 @@ package body rtps_config_package is
|
||||
ret.data(ind+len) := std_logic_vector(ENDPOINT_TIME_BASED_FILTER_QOS(i)(1));
|
||||
end if;
|
||||
-- RELIABILITY
|
||||
if (ENDPOINT_RELIABILITY_QOS(i) /= DEFAULT_RELIABILITY_QOS or ENDPOINT_MAX_BLOCKING_TIME(i) /= DEFAULT_MAX_BLOCKING_TIME) then
|
||||
if (ENDPOINT_RELIABILITY_QOS(i) /= DEFAULT_RELIABILITY_QOS_R or ENDPOINT_MAX_BLOCKING_TIME(i) /= DEFAULT_MAX_BLOCKING_TIME) then
|
||||
len := len + 1;
|
||||
ret.data(ind+len) := PID_RELIABILITY & std_logic_vector(to_unsigned(12, 16));
|
||||
len := len + 1;
|
||||
@ -706,7 +707,7 @@ package body rtps_config_package is
|
||||
ret.data(ind+len) := std_logic_vector(ENDPOINT_LEASE_DURATION(i)(1));
|
||||
end if;
|
||||
-- RELIABILITY
|
||||
if (ENDPOINT_RELIABILITY_QOS(i) /= DEFAULT_RELIABILITY_QOS or ENDPOINT_MAX_BLOCKING_TIME(i) /= DEFAULT_MAX_BLOCKING_TIME) then
|
||||
if (ENDPOINT_RELIABILITY_QOS(i) /= DEFAULT_RELIABILITY_QOS_W or ENDPOINT_MAX_BLOCKING_TIME(i) /= DEFAULT_MAX_BLOCKING_TIME) then
|
||||
len := len + 1;
|
||||
ret.data(ind+len) := PID_RELIABILITY & std_logic_vector(to_unsigned(12, 16));
|
||||
len := len + 1;
|
||||
@ -831,7 +832,7 @@ package body rtps_config_package is
|
||||
ret.data(ret.length) := std_logic_vector(ENDPOINT_LEASE_DURATION(id)(1));
|
||||
end if;
|
||||
-- RELIABILITY
|
||||
if (ENDPOINT_RELIABILITY_QOS(id) /= DEFAULT_RELIABILITY_QOS or ENDPOINT_MAX_BLOCKING_TIME(id) /= DEFAULT_MAX_BLOCKING_TIME) then
|
||||
if (ENDPOINT_RELIABILITY_QOS(id) /= DEFAULT_RELIABILITY_QOS_W or ENDPOINT_MAX_BLOCKING_TIME(id) /= DEFAULT_MAX_BLOCKING_TIME) then
|
||||
ret.length := ret.length + 1;
|
||||
ret.data(ret.length) := PID_RELIABILITY & std_logic_vector(to_unsigned(12, 16));
|
||||
ret.length := ret.length + 1;
|
||||
@ -1146,9 +1147,15 @@ package body rtps_config_package is
|
||||
ret.LIVELINESS_QOS(i) := '0';
|
||||
end if;
|
||||
-- RELIABILITY
|
||||
if (not check_qos_compatibility(boolean_to_std_logic(is_reader), '1', unsigned(DEFAULT_RELIABILITY_QOS), unsigned(ENDPOINT_RELIABILITY_QOS(i)))) then
|
||||
if (is_reader) then
|
||||
if (not check_qos_compatibility(boolean_to_std_logic(is_reader), '1', unsigned(DEFAULT_RELIABILITY_QOS_R), unsigned(ENDPOINT_RELIABILITY_QOS(i)))) then
|
||||
ret.RELIABILITY_QOS(i) := '0';
|
||||
end if;
|
||||
else
|
||||
if (not check_qos_compatibility(boolean_to_std_logic(is_reader), '1', unsigned(DEFAULT_RELIABILITY_QOS_W), unsigned(ENDPOINT_RELIABILITY_QOS(i)))) then
|
||||
ret.RELIABILITY_QOS(i) := '0';
|
||||
end if;
|
||||
end if;
|
||||
-- DESTINATION_ORDER
|
||||
if (not check_qos_compatibility(boolean_to_std_logic(is_reader), '1', unsigned(DEFAULT_DESTINATION_ORDER_QOS), unsigned(ENDPOINT_DESTINATION_ORDER_QOS(i)))) then
|
||||
ret.DESTINATION_ORDER_QOS(i) := '0';
|
||||
|
||||
@ -392,7 +392,8 @@ package rtps_package is
|
||||
-- RELIABILITY
|
||||
constant BEST_EFFORT_RELIABILITY_QOS : std_logic_vector(CDR_ENUMERATION_WIDTH-1 downto 0) := std_logic_vector(to_unsigned(1,CDR_ENUMERATION_WIDTH));
|
||||
constant RELIABLE_RELIABILITY_QOS : std_logic_vector(CDR_ENUMERATION_WIDTH-1 downto 0) := std_logic_vector(to_unsigned(2,CDR_ENUMERATION_WIDTH));
|
||||
constant DEFAULT_RELIABILITY_QOS : std_logic_vector(CDR_ENUMERATION_WIDTH-1 downto 0) := RELIABLE_RELIABILITY_QOS;
|
||||
constant DEFAULT_RELIABILITY_QOS_W : std_logic_vector(CDR_ENUMERATION_WIDTH-1 downto 0) := RELIABLE_RELIABILITY_QOS;
|
||||
constant DEFAULT_RELIABILITY_QOS_R : std_logic_vector(CDR_ENUMERATION_WIDTH-1 downto 0) := BEST_EFFORT_RELIABILITY_QOS;
|
||||
-- MAX BLOCKING TIME (RELIABILITY)
|
||||
constant DEFAULT_MAX_BLOCKING_TIME : DURATION_TYPE; --Deferred to Package Body (100 ms)
|
||||
-- TRANSPORT_PRIORITY
|
||||
|
||||
@ -823,7 +823,7 @@ package body rtps_test_package is
|
||||
liveliness => DEFAULT_LIVELINESS_QOS,
|
||||
leaseDuration => DEFAULT_LEASE_DURATION,
|
||||
time_based_filter => DEFAULT_TIME_BASED_FILTER_QOS,
|
||||
reliability => DEFAULT_RELIABILITY_QOS,
|
||||
reliability => DEFAULT_RELIABILITY_QOS_R,
|
||||
max_blocking_time => DEFAULT_MAX_BLOCKING_TIME,
|
||||
lifespan => DEFAULT_LIFESPAN_QOS,
|
||||
destination_order => DEFAULT_DESTINATION_ORDER_QOS,
|
||||
@ -2448,7 +2448,7 @@ package body rtps_test_package is
|
||||
end if;
|
||||
end if;
|
||||
-- RELIABILITY
|
||||
if (ref.reliability /= DEFAULT_RELIABILITY_QOS or ref.max_blocking_time /= DEFAULT_MAX_BLOCKING_TIME or pid = PID_RELIABILITY) then
|
||||
if ((ref.reader and ref.reliability /= DEFAULT_RELIABILITY_QOS_R) or ((not ref.reader) and ref.reliability /= DEFAULT_RELIABILITY_QOS_W) or ref.max_blocking_time /= DEFAULT_MAX_BLOCKING_TIME or pid = PID_RELIABILITY) then
|
||||
if (pid = PID_RELIABILITY) then
|
||||
assert (12+(offset*4) >= 0) report "Parameter Length < 0" severity FAILURE;
|
||||
output.data(output.length) := endian_swap(ref.littleEndian, PID_RELIABILITY) & endian_swap(ref.littleEndian, int(12+(offset*4),PARAMETER_LENGTH_WIDTH));
|
||||
@ -2870,7 +2870,7 @@ package body rtps_test_package is
|
||||
end if;
|
||||
end if;
|
||||
-- RELIABILITY
|
||||
if (endpoint.reliability /= DEFAULT_RELIABILITY_QOS or endpoint.max_blocking_time /= DEFAULT_MAX_BLOCKING_TIME or pid = PID_RELIABILITY) then
|
||||
if (endpoint.reliability /= DEFAULT_RELIABILITY_QOS_W or endpoint.max_blocking_time /= DEFAULT_MAX_BLOCKING_TIME or pid = PID_RELIABILITY) then
|
||||
if (pid = PID_RELIABILITY) then
|
||||
assert (12+(offset*4) >= 0) report "Parameter Length < 0" severity FAILURE;
|
||||
output.data(output.length) := endian_swap(littleEndian, PID_RELIABILITY) & endian_swap(littleEndian, int(12+(offset*4),PARAMETER_LENGTH_WIDTH));
|
||||
|
||||
@ -104,7 +104,7 @@ package user_config is
|
||||
constant ENDPOINT_TIME_BASED_FILTER_QOS : USER_DURATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_TIME_BASED_FILTER_QOS);
|
||||
-- XXX: PARTITION QoS Ignored
|
||||
-- Array mapping RELIABILITY QoS to Endpoints
|
||||
constant ENDPOINT_RELIABILITY_QOS : USER_ENUMERATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_RELIABILITY_QOS);
|
||||
constant ENDPOINT_RELIABILITY_QOS : USER_ENUMERATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => RELIABLE_RELIABILITY_QOS);
|
||||
-- (Only relevant to Writers)
|
||||
constant ENDPOINT_MAX_BLOCKING_TIME : USER_DURATION_ARRAY_TYPE(0 to NUM_ENDPOINTS-1) := (others => DEFAULT_MAX_BLOCKING_TIME);
|
||||
-- Array mapping LIFESPAN QoS to Endpoints (Only relevant to Writers)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user