* Restructure, cleaning and final documentation in builtin_endpoint
This commit is contained in:
parent
86a6d85be4
commit
63c8c8dccc
5
VHDL-2008.txt
Normal file
5
VHDL-2008.txt
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
Quartus 18.1 Unsupported
|
||||||
|
========================
|
||||||
|
* Unconstrained arrays in records (Supported in Pro)
|
||||||
|
* Vectors in aggregate statements
|
||||||
|
e.g. V := ("0000", others => '1');
|
||||||
@ -8,6 +8,8 @@ package math_pkg is
|
|||||||
function max(constant value1, value2, value3 : in integer) return integer;
|
function max(constant value1, value2, value3 : in integer) return integer;
|
||||||
-- returns the minimum of the two operands
|
-- returns the minimum of the two operands
|
||||||
function min(constant value1, value2 : in integer) return integer;
|
function min(constant value1, value2 : in integer) return integer;
|
||||||
|
|
||||||
|
function round_div(constant divident, divisor : in integer) return integer;
|
||||||
end package;
|
end package;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@ -343,7 +343,7 @@ package rtps_package is
|
|||||||
constant PARTICIPANT_MESSAGE_DATA_KIND_MANUAL_LIVELINESS_UPDATE : std_logic_vector(PARTICIPANT_MESSAGE_KIND_WIDTH-1 downto 0) := x"00000002";
|
constant PARTICIPANT_MESSAGE_DATA_KIND_MANUAL_LIVELINESS_UPDATE : std_logic_vector(PARTICIPANT_MESSAGE_KIND_WIDTH-1 downto 0) := x"00000002";
|
||||||
|
|
||||||
--*****CUSTOM*****
|
--*****CUSTOM*****
|
||||||
constant PARTICIPANT_FRAME_SIZE : natural := 19;
|
constant PARTICIPANT_FRAME_SIZE : natural := 23;
|
||||||
constant ENDPOINT_BITMASK_SIZE : natural := round_div(MAX_ENDPOINTS, 32);
|
constant ENDPOINT_BITMASK_SIZE : natural := round_div(MAX_ENDPOINTS, 32);
|
||||||
constant ENDPOINT_FRAME_SIZE : natural := 4 + ENDPOINT_BITMASK_SIZE;
|
constant ENDPOINT_FRAME_SIZE : natural := 4 + ENDPOINT_BITMASK_SIZE;
|
||||||
-- Limit Buffer to 32 bit Addresses
|
-- Limit Buffer to 32 bit Addresses
|
||||||
|
|||||||
32
src/test.vhd
32
src/test.vhd
@ -4,6 +4,7 @@ use ieee.numeric_std.all;
|
|||||||
|
|
||||||
use work.math_pkg.all;
|
use work.math_pkg.all;
|
||||||
use work.test_package.all;
|
use work.test_package.all;
|
||||||
|
use work.rtps_package.all;
|
||||||
|
|
||||||
-- TODO: Remove alignment logic for RTPS Submessages, since all Submessages are 32-bit aligned
|
-- TODO: Remove alignment logic for RTPS Submessages, since all Submessages are 32-bit aligned
|
||||||
-- Checksum has to be checked before
|
-- Checksum has to be checked before
|
||||||
@ -12,26 +13,43 @@ entity test is
|
|||||||
port (
|
port (
|
||||||
clk : in std_logic; -- Input Clock
|
clk : in std_logic; -- Input Clock
|
||||||
reset : in std_logic; -- Synchronous Reset
|
reset : in std_logic; -- Synchronous Reset
|
||||||
cnt : in natural;
|
input : in std_logic_vector(1 downto 0);
|
||||||
output : out unsigned(31 downto 0)
|
cnt : in natural range 0 to 12;
|
||||||
|
output : out unsigned(5 downto 0)
|
||||||
);
|
);
|
||||||
end entity;
|
end entity;
|
||||||
|
|
||||||
architecture arch of test is
|
architecture arch of test is
|
||||||
|
|
||||||
|
constant BUILD : std_logic := '0';
|
||||||
|
|
||||||
signal output_sig : unsigned(31 downto 0) := (others => '0');
|
signal output_sig : unsigned(5 downto 0) := (others => '0');
|
||||||
|
|
||||||
begin
|
begin
|
||||||
output <= output_sig;
|
output <= output_sig;
|
||||||
|
|
||||||
bitmap: process(all)
|
process(all)
|
||||||
begin
|
begin
|
||||||
output_sig <= (others => '0');
|
output_sig <= (others => '0');
|
||||||
|
|
||||||
for i in 0 to cnt loop
|
if (cnt < PARTICIPANT_DATA.length) then
|
||||||
output_sig(i) <= '1';
|
output_sig <= unsigned(PARTICIPANT_DATA.data(cnt))(5 downto 0);
|
||||||
end loop;
|
end if;
|
||||||
|
|
||||||
|
-- case (input) is
|
||||||
|
-- when "00" =>
|
||||||
|
-- output_sig <= to_unsigned(1,6);
|
||||||
|
-- when "01" =>
|
||||||
|
-- output_sig <= to_unsigned(2,6);
|
||||||
|
-- when "10" =>
|
||||||
|
-- output_sig <= to_unsigned(3,6);
|
||||||
|
-- when "11" =>
|
||||||
|
-- if (BUILD = '1') then
|
||||||
|
-- output_sig <= to_unsigned(1,6) + cnt;
|
||||||
|
-- end if;
|
||||||
|
-- end case;
|
||||||
end process;
|
end process;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
end architecture;
|
end architecture;
|
||||||
|
|||||||
@ -51,6 +51,7 @@ set_global_assignment -name POWER_BOARD_THERMAL_MODEL "NONE (CONSERVATIVE)"
|
|||||||
set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top
|
set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top
|
||||||
set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top
|
set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top
|
||||||
set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top
|
set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top
|
||||||
|
set_global_assignment -name VHDL_FILE ../../src/rtps_package.vhd -hdl_version VHDL_2008
|
||||||
set_global_assignment -name VHDL_FILE ../../src/test_package.vhd -hdl_version VHDL_2008
|
set_global_assignment -name VHDL_FILE ../../src/test_package.vhd -hdl_version VHDL_2008
|
||||||
set_global_assignment -name VHDL_FILE ../../src/test.vhd -hdl_version VHDL_2008
|
set_global_assignment -name VHDL_FILE ../../src/test.vhd -hdl_version VHDL_2008
|
||||||
set_global_assignment -name VHDL_FILE ../../src/math_pkg.vhd -hdl_version VHDL_2008
|
set_global_assignment -name VHDL_FILE ../../src/math_pkg.vhd -hdl_version VHDL_2008
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user