diff --git a/applications/rdma_demo/libraries/rdma_generator/hdllib.cfg b/applications/rdma_demo/libraries/rdma_generator/hdllib.cfg index 033809c86a1330dcd688b8b628c443d5c8dac02d..712761d4a8f319441bfd70ce39496b0666dfb209 100644 --- a/applications/rdma_demo/libraries/rdma_generator/hdllib.cfg +++ b/applications/rdma_demo/libraries/rdma_generator/hdllib.cfg @@ -1,6 +1,6 @@ hdl_lib_name = rdma_generator hdl_library_clause_name = rdma_generator_lib -hdl_lib_uses_synth = common dp eth axi4 rdma_icrc +hdl_lib_uses_synth = common dp eth axi4 rdma_icrc_external hdl_lib_uses_sim = diag technology tech_tse hdl_lib_technology = diff --git a/applications/rdma_demo/libraries/rdma_generator/src/vhdl/rdma_generator_roce_tester.vhd b/applications/rdma_demo/libraries/rdma_generator/src/vhdl/rdma_generator_roce_tester.vhd index de71d0d027e090dd6fe55a8b93b09b6f0e661584..638a8d10df007b71d3bc7c68d9aaba7fc0334d2d 100644 --- a/applications/rdma_demo/libraries/rdma_generator/src/vhdl/rdma_generator_roce_tester.vhd +++ b/applications/rdma_demo/libraries/rdma_generator/src/vhdl/rdma_generator_roce_tester.vhd @@ -31,7 +31,7 @@ -- . Avalon is used for all MM interfaces, which can be bridged to AXI4-Lite in -- vivado using the AXI AMM Bridge IP. -library IEEE, common_lib, dp_lib, eth_lib, rdma_icrc_lib; +library IEEE, common_lib, dp_lib, eth_lib, rdma_icrc_external_lib; use IEEE.std_logic_1164.all; use common_lib.common_pkg.all; use common_lib.common_mem_pkg.all; @@ -141,7 +141,7 @@ begin reg_strobe_total_count_rx_cipo => reg_strobe_total_count_rx_cipo ); - u_icrc_append : entity rdma_icrc_lib.append_crc_dp_wrapper + u_icrc_append : entity rdma_icrc_external_lib.append_crc_dp_wrapper port map ( dp_clk => st_clk, dp_rst => st_rst, diff --git a/applications/rdma_demo/libraries/rdma_generator/tb/vhdl/tb_rdma_generator.vhd b/applications/rdma_demo/libraries/rdma_generator/tb/vhdl/tb_rdma_generator.vhd index db5dee751cd5db9c58a4f02def0b34f3c5a4ec41..905fe77cabb4212ad3c36883ef568ab13f7b68f2 100644 --- a/applications/rdma_demo/libraries/rdma_generator/tb/vhdl/tb_rdma_generator.vhd +++ b/applications/rdma_demo/libraries/rdma_generator/tb/vhdl/tb_rdma_generator.vhd @@ -18,11 +18,12 @@ -- ------------------------------------------------------------------------------- -- Author: R. vd Walle --- Purpose: Test bench for eth_tester using high bandwidth generic configuration +-- Purpose: Test bench for rdma_generator_roce_tester using high bandwidth generic +-- configuration, e.g. g_nof_octet_output = 64 and g_nof_octet_generate = 64. -- Description: Similar to the 1GbE testbench [1] for the eth tester but using generic -- values for usage with high bandwidth, e.g. 10 / 100 GbE. --- The g_nof_streams >= 1 are tested independently, using g_bg_ctrl_first for --- BG in stream 0 and g_bg_ctrl_others for all other streams. +-- The g_nof_streams >= 1 are tested independently, using g_bg_ctrl_first for +-- BG in stream 0 and g_bg_ctrl_others for all other streams. -- -- Usage: -- > as 8 @@ -68,8 +69,11 @@ entity tb_rdma_generator is -- nat: mem_low_adrs -- nat: mem_high_adrs -- nat: bsn_init - g_bg_ctrl_first : t_diag_block_gen_integer := ('1', '1', 500, 3, 200, 0, c_diag_bg_mem_max_adr, 0); -- for first stream - g_bg_ctrl_others : t_diag_block_gen_integer := ('1', '1', 300, 3, 10, 0, c_diag_bg_mem_max_adr, 0) -- for other streams + + -- for first stream + g_bg_ctrl_first : t_diag_block_gen_integer := ('1', '1', 500, 3, 200, 0, c_diag_bg_mem_max_adr, 0); + -- for other streams + g_bg_ctrl_others : t_diag_block_gen_integer := ('1', '1', 300, 3, 10, 0, c_diag_bg_mem_max_adr, 0) ); port ( tb_end : out std_logic @@ -77,7 +81,9 @@ entity tb_rdma_generator is end tb_rdma_generator; architecture tb of tb_rdma_generator is - constant c_tb_str : string := "tb-" & natural'image(g_tb_index) & " : "; -- use to distinguish logging from tb instances in tb_tb + -- use to distinguish logging from tb instances in tb_tb + constant c_tb_str : string := "tb-" & natural'image(g_tb_index) & " : "; + constant mm_clk_period : time := 10 ns; -- 100 MHz constant c_nof_st_clk_per_s : natural := 200 * 10**6; constant st_clk_period : time := (10**9 / c_nof_st_clk_per_s) * 1 ns; -- 5 ns, 200 MHz @@ -94,6 +100,8 @@ architecture tb of tb_rdma_generator is constant c_eth_packet_len_others : natural := func_eth_tester_eth_packet_length(c_bg_block_len_others); -- Use REAL to avoid NATURAL overflow in bps calculation + + constant c_bg_nof_bps_first : real := real(c_bg_block_len_first * c_octet_w) * real(c_nof_st_clk_per_s) / real(c_bg_slot_len_first); constant c_bg_nof_bps_others : real := real(c_bg_block_len_others * c_octet_w) * real(c_nof_st_clk_per_s) / real(c_bg_slot_len_others); constant c_bg_nof_bps_total : real := c_bg_nof_bps_first + real(g_nof_streams - 1) * c_bg_nof_bps_others; @@ -249,9 +257,13 @@ begin -- Set destination MAC/IP/UDP port in tx header, increment udp_dst_port per stream -- The MM addresses follow from byte address_offset // 4 in eth.peripheral.yaml proc_mem_mm_bus_wr(v_offset + 16#7#, v_udp_dst_port + I, mm_clk, reg_hdr_dat_cipo, reg_hdr_dat_copi); - proc_mem_mm_bus_wr(v_offset + 16#10#, TO_SINT(c_eth_tester_ip_dst_addr), mm_clk, reg_hdr_dat_cipo, reg_hdr_dat_copi); -- use signed to fit 32 b in INTEGER - proc_mem_mm_bus_wr(v_offset + 16#18#, TO_SINT(c_eth_tester_eth_dst_mac(31 downto 0)), mm_clk, reg_hdr_dat_cipo, reg_hdr_dat_copi); -- use signed to fit 32 b in INTEGER - proc_mem_mm_bus_wr(v_offset + 16#19#, TO_UINT(c_eth_tester_eth_dst_mac(47 downto 32)), mm_clk, reg_hdr_dat_cipo, reg_hdr_dat_copi); + -- use signed to fit 32 b in INTEGER + proc_mem_mm_bus_wr(v_offset + 16#10#, TO_SINT(c_eth_tester_ip_dst_addr), + mm_clk, reg_hdr_dat_cipo, reg_hdr_dat_copi); + proc_mem_mm_bus_wr(v_offset + 16#18#, TO_SINT(c_eth_tester_eth_dst_mac(31 downto 0)), + mm_clk, reg_hdr_dat_cipo, reg_hdr_dat_copi); + proc_mem_mm_bus_wr(v_offset + 16#19#, TO_UINT(c_eth_tester_eth_dst_mac(47 downto 32)), + mm_clk, reg_hdr_dat_cipo, reg_hdr_dat_copi); end loop; --------------------------------------------------------------------------- @@ -263,7 +275,8 @@ begin proc_mem_mm_bus_wr(I * 2, bg_ctrl_arr(I).samples_per_packet, mm_clk, reg_dp_split_copi); -- Prepare the BG - proc_mem_mm_bus_wr(v_offset + 1, ceil_div(bg_ctrl_arr(I).samples_per_packet, g_nof_octet_generate) , mm_clk, reg_bg_ctrl_copi); + proc_mem_mm_bus_wr(v_offset + 1, ceil_div(bg_ctrl_arr(I).samples_per_packet, g_nof_octet_generate), + mm_clk, reg_bg_ctrl_copi); proc_mem_mm_bus_wr(v_offset + 2, bg_ctrl_arr(I).blocks_per_sync, mm_clk, reg_bg_ctrl_copi); proc_mem_mm_bus_wr(v_offset + 3, bg_ctrl_arr(I).gapsize, mm_clk, reg_bg_ctrl_copi); proc_mem_mm_bus_wr(v_offset + 4, bg_ctrl_arr(I).mem_low_adrs, mm_clk, reg_bg_ctrl_copi); @@ -419,13 +432,18 @@ begin -- the ETH data rate < 1 Gbps and no BG block flow control. -- Verify, only log when wrong if I = 0 then - assert tx_mon_nof_sop_arr(I) = c_mon_nof_sop_first report c_tb_str & "Wrong tx nof_sop for stream (" & natural'image(I) & ")" severity ERROR; - assert tx_mon_nof_valid_arr(I) = c_mon_nof_valid_first_tx report c_tb_str & "Wrong tx nof_valid for stream (" & natural'image(I) & ")" severity ERROR; + assert tx_mon_nof_sop_arr(I) = c_mon_nof_sop_first report + c_tb_str & "Wrong tx nof_sop for stream (" & natural'image(I) & ")" severity ERROR; + assert tx_mon_nof_valid_arr(I) = c_mon_nof_valid_first_tx report + c_tb_str & "Wrong tx nof_valid for stream (" & natural'image(I) & ")" severity ERROR; else - assert tx_mon_nof_sop_arr(I) = c_mon_nof_sop_others report c_tb_str & "Wrong tx nof_sop for stream (" & natural'image(I) & ")" severity ERROR; - assert tx_mon_nof_valid_arr(I) = c_mon_nof_valid_others_tx report c_tb_str & "Wrong tx nof_valid for stream (" & natural'image(I) & ")" severity ERROR; + assert tx_mon_nof_sop_arr(I) = c_mon_nof_sop_others report + c_tb_str & "Wrong tx nof_sop for stream (" & natural'image(I) & ")" severity ERROR; + assert tx_mon_nof_valid_arr(I) = c_mon_nof_valid_others_tx report + c_tb_str & "Wrong tx nof_valid for stream (" & natural'image(I) & ")" severity ERROR; end if; - assert tx_mon_latency_arr(I) = c_tx_exp_latency report c_tb_str & "Wrong tx latency for stream (" & natural'image(I) & ")" severity ERROR; + assert tx_mon_latency_arr(I) = c_tx_exp_latency report + c_tb_str & "Wrong tx latency for stream (" & natural'image(I) & ")" severity ERROR; -- For short block lengths the Rx latency appears to become less, the -- exact Rx latency is therefore hard to predetermine. The actual diff --git a/applications/rdma_demo/libraries/rdma_icrc/hdllib.cfg b/applications/rdma_demo/libraries/rdma_icrc/hdllib.cfg deleted file mode 100644 index c7c1ac789755023933be99c163bf7e8f99c16e1d..0000000000000000000000000000000000000000 --- a/applications/rdma_demo/libraries/rdma_icrc/hdllib.cfg +++ /dev/null @@ -1,41 +0,0 @@ -hdl_lib_name = rdma_icrc -hdl_library_clause_name = rdma_icrc_lib -hdl_lib_uses_synth = common dp axi4 -hdl_lib_uses_sim = -hdl_lib_technology = - -synth_files = - src/vhdl/wk_lib/PCK_CRC32_D8.vhd - src/vhdl/wk_lib/PCK_CRC32_D16.vhd - src/vhdl/wk_lib/PCK_CRC32_D32.vhd - src/vhdl/wk_lib/PCK_CRC32_D64.vhd - src/vhdl/wk_lib/PCK_CRC32_D128.vhd - src/vhdl/wk_lib/PCK_CRC32_D256.vhd - src/vhdl/wk_lib/PCK_CRC32_D512.vhd - src/vhdl/wk_lib/PCK_CRC32_D1024.vhd - src/vhdl/wk_lib/PCK_CRC32_D1_reversed.vhd - src/vhdl/wk_lib/crc_pkg.vhd - src/vhdl/wk_lib/common_types_pkg.vhd - src/vhdl/wk_lib/misc_tools_pkg.vhd - src/vhdl/wk_lib/AXI4_pkg.vhd - src/vhdl/wk_lib/eth_ip_udp_header_prepend_pkg.vhd - src/vhdl/wk_lib/lfsr_pkg.vhd - src/vhdl/wk_lib/sdp_ram.vhd - src/vhdl/wk_lib/pipeline_delay_ram.vhd - - src/vhdl/bit_width_config_pkg.512b.vhd - src/vhdl/rdma_pkg.vhd - src/vhdl/crc_generator.vhd - src/vhdl/append_crc.vhd - src/vhdl/append_crc_wrapper.vhd - src/vhdl/append_crc_dp_wrapper.vhd - -test_bench_files = - -regression_test_vhdl = - - -[modelsim_project_file] - -[quartus_project_file] - diff --git a/applications/rdma_demo/libraries/rdma_icrc_external/hdllib.cfg b/applications/rdma_demo/libraries/rdma_icrc_external/hdllib.cfg new file mode 100644 index 0000000000000000000000000000000000000000..f2290cd44c344b228f40973f61282c4b1a7771bb --- /dev/null +++ b/applications/rdma_demo/libraries/rdma_icrc_external/hdllib.cfg @@ -0,0 +1,47 @@ +hdl_lib_name = rdma_icrc_external +hdl_library_clause_name = rdma_icrc_external_lib +hdl_lib_uses_synth = common dp axi4 +hdl_lib_uses_sim = +hdl_lib_technology = + +# External library for performing RDMA ICRC calculation +# Note That most code is VHDL-2008 +synth_files = + src/vhdl/PCK_CRC32_D8.vhd + src/vhdl/PCK_CRC32_D16.vhd + src/vhdl/PCK_CRC32_D32.vhd + src/vhdl/PCK_CRC32_D64.vhd + src/vhdl/PCK_CRC32_D128.vhd + src/vhdl/PCK_CRC32_D256.vhd + src/vhdl/PCK_CRC32_D512.vhd + src/vhdl/PCK_CRC32_D1024.vhd + src/vhdl/PCK_CRC32_D1_reversed.vhd + src/vhdl/crc_pkg.vhd + src/vhdl/common_types_pkg.vhd + src/vhdl/misc_tools_pkg.vhd + src/vhdl/AXI4_pkg.vhd + src/vhdl/eth_ip_udp_header_prepend_pkg.vhd + src/vhdl/lfsr_pkg.vhd + + # Not external, wrapper around common_ram_r_w used in pipeline_delay_ram.vhd + src/vhdl/sdp_ram.vhd + + src/vhdl/pipeline_delay_ram.vhd + src/vhdl/bit_width_config_pkg.512b.vhd + src/vhdl/rdma_pkg.vhd + src/vhdl/crc_generator.vhd + src/vhdl/append_crc.vhd + src/vhdl/append_crc_wrapper.vhd + + # Not external, wrapper around append_crc.vhd to provide DP interfaces. + src/vhdl/append_crc_dp_wrapper.vhd + +test_bench_files = + +regression_test_vhdl = + + +[modelsim_project_file] + +[quartus_project_file] + diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/AXI4_pkg.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/AXI4_pkg.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/AXI4_pkg.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/AXI4_pkg.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D1024.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D1024.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D1024.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D1024.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D128.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D128.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D128.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D128.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D16.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D16.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D16.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D16.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D1_reversed.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D1_reversed.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D1_reversed.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D1_reversed.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D256.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D256.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D256.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D256.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D32.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D32.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D32.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D32.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D512.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D512.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D512.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D512.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D64.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D64.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D64.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D64.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D8.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D8.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/PCK_CRC32_D8.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/PCK_CRC32_D8.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/append_crc.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/append_crc.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/append_crc.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/append_crc.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/append_crc_dp_wrapper.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/append_crc_dp_wrapper.vhd similarity index 77% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/append_crc_dp_wrapper.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/append_crc_dp_wrapper.vhd index 84fd1f8580dc422232777b98622bc1dab5abbe49..532954c55cba07ed4b8e28b8566f3518ee8988a7 100755 --- a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/append_crc_dp_wrapper.vhd +++ b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/append_crc_dp_wrapper.vhd @@ -1,36 +1,29 @@ ----------------------------------------------------------------------------------- --- Company: --- Engineer: --- --- Create Date: 06/27/2023 10:50:24 AM --- Design Name: --- Module Name: append_crc_wrapper - Behavioral --- Project Name: --- Target Devices: --- Tool Versions: --- Description: --- --- Dependencies: --- --- Revision: --- Revision 0.01 - File Created --- Additional Comments: --- ----------------------------------------------------------------------------------- - +------------------------------------------------------------------------------- +-- +-- Copyright 2023 +-- ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/> +-- P.O.Box 2, 7990 AA Dwingeloo, The Netherlands +-- +-- Licensed under the Apache License, Version 2.0 (the "License"); +-- you may not use this file except in compliance with the License. +-- You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an "AS IS" BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. +-- +------------------------------------------------------------------------------- +-- Author: R. van der Walle +-- Purpose: Wrapper around append_crc that provides DP interfaces by converting +-- the AXI4 interfaces using axi4_stream_dp_bridge. library IEEE; use IEEE.STD_LOGIC_1164.ALL; --- Uncomment the following library declaration if using --- arithmetic functions with Signed or Unsigned values ---use IEEE.NUMERIC_STD.ALL; - --- Uncomment the following library declaration if instantiating --- any Xilinx leaf cells in this code. ---library UNISIM; ---use UNISIM.VComponents.all; - library axi4_lib, dp_lib; use axi4_lib.axi4_stream_pkg.all; use dp_lib.dp_stream_pkg.all; diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/append_crc_wrapper.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/append_crc_wrapper.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/append_crc_wrapper.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/append_crc_wrapper.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/bit_width_config_pkg.512b.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/bit_width_config_pkg.512b.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/bit_width_config_pkg.512b.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/bit_width_config_pkg.512b.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/common_types_pkg.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/common_types_pkg.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/common_types_pkg.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/common_types_pkg.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/crc_generator.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/crc_generator.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/crc_generator.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/crc_generator.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/crc_pkg.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/crc_pkg.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/crc_pkg.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/crc_pkg.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/eth_ip_udp_header_prepend_pkg.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/eth_ip_udp_header_prepend_pkg.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/eth_ip_udp_header_prepend_pkg.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/eth_ip_udp_header_prepend_pkg.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/lfsr_pkg.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/lfsr_pkg.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/lfsr_pkg.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/lfsr_pkg.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/misc_tools_pkg.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/misc_tools_pkg.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/misc_tools_pkg.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/misc_tools_pkg.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/pipeline_delay_ram.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/pipeline_delay_ram.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/pipeline_delay_ram.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/pipeline_delay_ram.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/rdma_pkg.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/rdma_pkg.vhd similarity index 100% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/rdma_pkg.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/rdma_pkg.vhd diff --git a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/sdp_ram.vhd b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/sdp_ram.vhd similarity index 57% rename from applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/sdp_ram.vhd rename to applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/sdp_ram.vhd index 1a4b7139f46cb09d6dbe35a50848feb83f4de4d7..53eade3f30bf0cfbbffed4b5e9cd80a6ad66b576 100755 --- a/applications/rdma_demo/libraries/rdma_icrc/src/vhdl/wk_lib/sdp_ram.vhd +++ b/applications/rdma_demo/libraries/rdma_icrc_external/src/vhdl/sdp_ram.vhd @@ -1,25 +1,24 @@ ------------------------------------------------------------------------------- --- Title : Wrapper for a simple dual port RAM --- Project : CSP -------------------------------------------------------------------------------- --- File : sdp_ram_ent.vhd --- Author : William Kamp <william.kamp@aut.ac.nz> --- Company : --- Created : 2015-10-01 --- Last update: 2015-10-08 --- Platform : --- Standard : VHDL'93/02 -------------------------------------------------------------------------------- --- Description: Entity declaration for a Simple Dual Port RAM. --- Needs to be attached to an appropriate architecture that implements it for a --- particular family of chips. -------------------------------------------------------------------------------- --- Copyright (c) 2015 -------------------------------------------------------------------------------- --- Revisions : --- Date Version Author Description --- 2015-10-06 1.0 wkamp Created +-- +-- Copyright 2023 +-- ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/> +-- P.O.Box 2, 7990 AA Dwingeloo, The Netherlands +-- +-- Licensed under the Apache License, Version 2.0 (the "License"); +-- you may not use this file except in compliance with the License. +-- You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an "AS IS" BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. +-- ------------------------------------------------------------------------------- +-- Author: R. van der Walle +-- Purpose: Wrapper for a simple dual port RAM library ieee; use ieee.std_logic_1164.all;