* Updated Vivado Project
* Synthesis fixes in RTPS Handler
This commit is contained in:
parent
052a4054b9
commit
41f41b6530
@ -218,7 +218,7 @@ architecture arch of rtps_handler is
|
|||||||
-- 'endianness' argument.
|
-- 'endianness' argument.
|
||||||
function endian_swap( endianness : std_logic;
|
function endian_swap( endianness : std_logic;
|
||||||
data :std_logic_vector) return std_logic_vector is
|
data :std_logic_vector) return std_logic_vector is
|
||||||
variable ret : std_logic_vector(data'reverse_range);
|
variable ret : std_logic_vector(data'range);
|
||||||
begin
|
begin
|
||||||
-- Assert that Data Signal is Byte aligned
|
-- Assert that Data Signal is Byte aligned
|
||||||
assert (data'length mod 8 = 0) severity failure;
|
assert (data'length mod 8 = 0) severity failure;
|
||||||
@ -226,7 +226,7 @@ architecture arch of rtps_handler is
|
|||||||
if (endianness = '1') then
|
if (endianness = '1') then
|
||||||
-- Reverse byte Order
|
-- Reverse byte Order
|
||||||
for i in 0 to (data'length/8)-1 loop
|
for i in 0 to (data'length/8)-1 loop
|
||||||
ret(i*8+8-1 downto i*8) := data((3-i)*8+8-1 downto (3-i)*8);
|
ret(i*8+8-1 downto i*8) := data(((data'length/8)-1-i)*8+8-1 downto ((data'length/8)-1-i)*8);
|
||||||
end loop;
|
end loop;
|
||||||
-- Big Endian
|
-- Big Endian
|
||||||
else
|
else
|
||||||
@ -345,7 +345,7 @@ begin
|
|||||||
flags_next <= flags;
|
flags_next <= flags;
|
||||||
src_entityid_next <= src_entityid;
|
src_entityid_next <= src_entityid;
|
||||||
user_endpoint_next <= user_endpoint;
|
user_endpoint_next <= user_endpoint;
|
||||||
builtin_endpoint_next <= builtin_endpoint_next;
|
builtin_endpoint_next <= builtin_endpoint;
|
||||||
return_stage_next <= return_stage;
|
return_stage_next <= return_stage;
|
||||||
numlocators_next <= numlocators;
|
numlocators_next <= numlocators;
|
||||||
payload_length_next <= payload_length;
|
payload_length_next <= payload_length;
|
||||||
@ -955,9 +955,9 @@ begin
|
|||||||
-- End of Data Header
|
-- End of Data Header
|
||||||
if (read_cnt = data_header_end) then
|
if (read_cnt = data_header_end) then
|
||||||
-- Push Submessage Contents
|
-- Push Submessage Contents
|
||||||
stage_next <= PUSH_PAYLOAD;
|
stage_next <= PUSH_PAYLOAD;
|
||||||
-- Fix alignement
|
-- Fix alignement
|
||||||
align_offset <= data_header_offset_latch;
|
align_offset_next <= data_header_offset_latch;
|
||||||
end if;
|
end if;
|
||||||
end if;
|
end if;
|
||||||
when PUSH_PAYLOAD =>
|
when PUSH_PAYLOAD =>
|
||||||
@ -972,9 +972,9 @@ begin
|
|||||||
output_sig <= pad_signal(offset_latch, aligned_data_in);
|
output_sig <= pad_signal(offset_latch, aligned_data_in);
|
||||||
wr_sig <= '1';
|
wr_sig <= '1';
|
||||||
-- Begin parsing of next submessage
|
-- Begin parsing of next submessage
|
||||||
stage_next <= RTPS_SUB_HEADER;
|
stage_next <= RTPS_SUB_HEADER;
|
||||||
-- Fix alignement
|
-- Fix alignement
|
||||||
align_offset <= offset_latch;
|
align_offset_next <= offset_latch;
|
||||||
else
|
else
|
||||||
-- Push Normal (Endianness is not handled here)
|
-- Push Normal (Endianness is not handled here)
|
||||||
output_sig <= aligned_data_in;
|
output_sig <= aligned_data_in;
|
||||||
@ -995,9 +995,9 @@ begin
|
|||||||
-- End of Submessage
|
-- End of Submessage
|
||||||
elsif (read_cnt > sub_end) then
|
elsif (read_cnt > sub_end) then
|
||||||
-- Begin parsing of next submessage
|
-- Begin parsing of next submessage
|
||||||
stage_next <= RTPS_SUB_HEADER;
|
stage_next <= RTPS_SUB_HEADER;
|
||||||
-- Fix alignement
|
-- Fix alignement
|
||||||
align_offset <= offset_latch;
|
align_offset_next <= offset_latch;
|
||||||
-- Submessage has still "unknown" Content
|
-- Submessage has still "unknown" Content
|
||||||
else
|
else
|
||||||
stage_next <= SKIP_SUB;
|
stage_next <= SKIP_SUB;
|
||||||
@ -1021,9 +1021,9 @@ begin
|
|||||||
-- End of Submessage
|
-- End of Submessage
|
||||||
elsif (read_cnt = sub_end) then
|
elsif (read_cnt = sub_end) then
|
||||||
-- Begin parsing of next submessage
|
-- Begin parsing of next submessage
|
||||||
stage_next <= RTPS_SUB_HEADER;
|
stage_next <= RTPS_SUB_HEADER;
|
||||||
-- Fix alignement
|
-- Fix alignement
|
||||||
align_offset <= offset_latch;
|
align_offset_next <= offset_latch;
|
||||||
end if;
|
end if;
|
||||||
-- Latch Input for alignment purposes
|
-- Latch Input for alignment purposes
|
||||||
align_sig_next <= data_in(23 downto 0);
|
align_sig_next <= data_in(23 downto 0);
|
||||||
|
|||||||
@ -60,25 +60,19 @@
|
|||||||
<FileSets Version="1" Minor="31">
|
<FileSets Version="1" Minor="31">
|
||||||
<FileSet Name="sources_1" Type="DesignSrcs" RelSrcDir="$PSRCDIR/sources_1">
|
<FileSet Name="sources_1" Type="DesignSrcs" RelSrcDir="$PSRCDIR/sources_1">
|
||||||
<Filter Type="Srcs"/>
|
<Filter Type="Srcs"/>
|
||||||
<File Path="$PPRDIR/../src/ip_package.vhd">
|
|
||||||
<FileInfo SFType="VHDL2008">
|
|
||||||
<Attr Name="UsedIn" Val="synthesis"/>
|
|
||||||
<Attr Name="UsedIn" Val="simulation"/>
|
|
||||||
</FileInfo>
|
|
||||||
</File>
|
|
||||||
<File Path="$PPRDIR/../src/math_pkg.vhd">
|
<File Path="$PPRDIR/../src/math_pkg.vhd">
|
||||||
<FileInfo SFType="VHDL2008">
|
<FileInfo SFType="VHDL2008">
|
||||||
<Attr Name="UsedIn" Val="synthesis"/>
|
<Attr Name="UsedIn" Val="synthesis"/>
|
||||||
<Attr Name="UsedIn" Val="simulation"/>
|
<Attr Name="UsedIn" Val="simulation"/>
|
||||||
</FileInfo>
|
</FileInfo>
|
||||||
</File>
|
</File>
|
||||||
<File Path="$PPRDIR/../src/single_port_ram.vhd">
|
<File Path="$PPRDIR/../src/rtps_package.vhd">
|
||||||
<FileInfo SFType="VHDL2008">
|
<FileInfo SFType="VHDL2008">
|
||||||
<Attr Name="UsedIn" Val="synthesis"/>
|
<Attr Name="UsedIn" Val="synthesis"/>
|
||||||
<Attr Name="UsedIn" Val="simulation"/>
|
<Attr Name="UsedIn" Val="simulation"/>
|
||||||
</FileInfo>
|
</FileInfo>
|
||||||
</File>
|
</File>
|
||||||
<File Path="$PPRDIR/../src/ipv4_in.vhd">
|
<File Path="$PPRDIR/../src/rtps_handler.vhd">
|
||||||
<FileInfo SFType="VHDL2008">
|
<FileInfo SFType="VHDL2008">
|
||||||
<Attr Name="UsedIn" Val="synthesis"/>
|
<Attr Name="UsedIn" Val="synthesis"/>
|
||||||
<Attr Name="UsedIn" Val="simulation"/>
|
<Attr Name="UsedIn" Val="simulation"/>
|
||||||
@ -86,9 +80,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<Config>
|
<Config>
|
||||||
<Option Name="DesignMode" Val="RTL"/>
|
<Option Name="DesignMode" Val="RTL"/>
|
||||||
<Option Name="TopModule" Val="ipv4_in_handler"/>
|
<Option Name="TopModule" Val="rtps_handler"/>
|
||||||
<Option Name="TopLib" Val="xil_defaultlib"/>
|
|
||||||
<Option Name="TopArchitecture" Val="with_frag"/>
|
|
||||||
<Option Name="TopAutoSet" Val="TRUE"/>
|
<Option Name="TopAutoSet" Val="TRUE"/>
|
||||||
</Config>
|
</Config>
|
||||||
</FileSet>
|
</FileSet>
|
||||||
@ -108,9 +100,8 @@
|
|||||||
<Filter Type="Srcs"/>
|
<Filter Type="Srcs"/>
|
||||||
<Config>
|
<Config>
|
||||||
<Option Name="DesignMode" Val="RTL"/>
|
<Option Name="DesignMode" Val="RTL"/>
|
||||||
<Option Name="TopModule" Val="ipv4_in_handler"/>
|
<Option Name="TopModule" Val="rtps_handler"/>
|
||||||
<Option Name="TopLib" Val="xil_defaultlib"/>
|
<Option Name="TopLib" Val="xil_defaultlib"/>
|
||||||
<Option Name="TopArchitecture" Val="with_frag"/>
|
|
||||||
<Option Name="TopAutoSet" Val="TRUE"/>
|
<Option Name="TopAutoSet" Val="TRUE"/>
|
||||||
<Option Name="TransportPathDelay" Val="0"/>
|
<Option Name="TransportPathDelay" Val="0"/>
|
||||||
<Option Name="TransportIntDelay" Val="0"/>
|
<Option Name="TransportIntDelay" Val="0"/>
|
||||||
@ -145,20 +136,16 @@
|
|||||||
<Runs Version="1" Minor="10">
|
<Runs Version="1" Minor="10">
|
||||||
<Run Id="synth_1" Type="Ft3:Synth" SrcSet="sources_1" Part="xc7z020clg484-1" ConstrsSet="constrs_1" Description="Vivado Synthesis Defaults" AutoIncrementalCheckpoint="false" WriteIncrSynthDcp="false" State="current" Dir="$PRUNDIR/synth_1" IncludeInArchive="true">
|
<Run Id="synth_1" Type="Ft3:Synth" SrcSet="sources_1" Part="xc7z020clg484-1" ConstrsSet="constrs_1" Description="Vivado Synthesis Defaults" AutoIncrementalCheckpoint="false" WriteIncrSynthDcp="false" State="current" Dir="$PRUNDIR/synth_1" IncludeInArchive="true">
|
||||||
<Strategy Version="1" Minor="2">
|
<Strategy Version="1" Minor="2">
|
||||||
<StratHandle Name="Vivado Synthesis Defaults" Flow="Vivado Synthesis 2018">
|
<StratHandle Name="Vivado Synthesis Defaults" Flow="Vivado Synthesis 2018"/>
|
||||||
<Desc>Vivado Synthesis Defaults</Desc>
|
|
||||||
</StratHandle>
|
|
||||||
<Step Id="synth_design"/>
|
<Step Id="synth_design"/>
|
||||||
</Strategy>
|
</Strategy>
|
||||||
<GeneratedRun Dir="$PRUNDIR" File="gen_run.xml"/>
|
<GeneratedRun Dir="$PRUNDIR" File="gen_run.xml"/>
|
||||||
<ReportStrategy Name="Vivado Synthesis Default Reports" Flow="Vivado Synthesis 2018"/>
|
<ReportStrategy Name="Vivado Synthesis Default Reports" Flow="Vivado Synthesis 2018"/>
|
||||||
<Report Name="ROUTE_DESIGN.REPORT_METHODOLOGY" Enabled="1"/>
|
<Report Name="ROUTE_DESIGN.REPORT_METHODOLOGY" Enabled="1"/>
|
||||||
</Run>
|
</Run>
|
||||||
<Run Id="impl_1" Type="Ft2:EntireDesign" Part="xc7z020clg484-1" ConstrsSet="constrs_1" Description="Default settings for Implementation." AutoIncrementalCheckpoint="false" WriteIncrSynthDcp="false" State="current" SynthRun="synth_1" IncludeInArchive="true" GenFullBitstream="true">
|
<Run Id="impl_1" Type="Ft2:EntireDesign" Part="xc7z020clg484-1" ConstrsSet="constrs_1" Description="Default settings for Implementation." AutoIncrementalCheckpoint="false" WriteIncrSynthDcp="false" State="current" Dir="$PRUNDIR/impl_1" SynthRun="synth_1" IncludeInArchive="true" GenFullBitstream="true">
|
||||||
<Strategy Version="1" Minor="2">
|
<Strategy Version="1" Minor="2">
|
||||||
<StratHandle Name="Vivado Implementation Defaults" Flow="Vivado Implementation 2018">
|
<StratHandle Name="Vivado Implementation Defaults" Flow="Vivado Implementation 2018"/>
|
||||||
<Desc>Default settings for Implementation.</Desc>
|
|
||||||
</StratHandle>
|
|
||||||
<Step Id="init_design"/>
|
<Step Id="init_design"/>
|
||||||
<Step Id="opt_design"/>
|
<Step Id="opt_design"/>
|
||||||
<Step Id="power_opt_design"/>
|
<Step Id="power_opt_design"/>
|
||||||
@ -169,6 +156,7 @@
|
|||||||
<Step Id="post_route_phys_opt_design"/>
|
<Step Id="post_route_phys_opt_design"/>
|
||||||
<Step Id="write_bitstream"/>
|
<Step Id="write_bitstream"/>
|
||||||
</Strategy>
|
</Strategy>
|
||||||
|
<GeneratedRun Dir="$PRUNDIR" File="gen_run.xml"/>
|
||||||
<ReportStrategy Name="Vivado Implementation Default Reports" Flow="Vivado Implementation 2018"/>
|
<ReportStrategy Name="Vivado Implementation Default Reports" Flow="Vivado Implementation 2018"/>
|
||||||
<Report Name="ROUTE_DESIGN.REPORT_METHODOLOGY" Enabled="1"/>
|
<Report Name="ROUTE_DESIGN.REPORT_METHODOLOGY" Enabled="1"/>
|
||||||
</Run>
|
</Run>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user