From abae3c09084983c61ceb9537f38327d232d01fe5 Mon Sep 17 00:00:00 2001 From: Reinier van der Walle <walle@astron.nl> Date: Thu, 29 Apr 2021 10:39:07 +0200 Subject: [PATCH] initial commit of sdp_crosslets_subband_select.vhd --- .../src/vhdl/sdp_crosslets_subband_select.vhd | 90 +++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 applications/lofar2/libraries/sdp/src/vhdl/sdp_crosslets_subband_select.vhd diff --git a/applications/lofar2/libraries/sdp/src/vhdl/sdp_crosslets_subband_select.vhd b/applications/lofar2/libraries/sdp/src/vhdl/sdp_crosslets_subband_select.vhd new file mode 100644 index 0000000000..c61f2da4ef --- /dev/null +++ b/applications/lofar2/libraries/sdp/src/vhdl/sdp_crosslets_subband_select.vhd @@ -0,0 +1,90 @@ +------------------------------------------------------------------------------- +-- +-- Copyright 2021 +-- 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: +-- Description: +-- Remark: +-- . +------------------------------------------------------------------------------- + +LIBRARY IEEE, common_lib, dp_lib, reorder_lib, st_lib; +USE IEEE.STD_LOGIC_1164.ALL; +USE common_lib.common_pkg.ALL; +USE common_lib.common_mem_pkg.ALL; +USE common_lib.common_network_layers_pkg.ALL; +USE dp_lib.dp_stream_pkg.ALL; +USE work.sdp_pkg.ALL; + +ENTITY sdp_crosslets_subband_select IS + GENERIC ( + g_sim : BOOLEAN := FALSE; + g_beamset_id : NATURAL := 0; + g_scope_selected_beamlet : NATURAL := 0 + ); + PORT ( + dp_clk : IN STD_LOGIC; + dp_rst : IN STD_LOGIC; + + in_sosi_arr : IN t_dp_sosi_arr(c_sdp_P_pfb-1 DOWNTO 0); + bf_udp_sosi : OUT t_dp_sosi; + bf_udp_siso : IN t_dp_siso; + bst_udp_sosi : OUT t_dp_sosi; + + mm_rst : IN STD_LOGIC; + mm_clk : IN STD_LOGIC; + + + ); +END sdp_crosslets_subband_select; + +ARCHITECTURE str OF sdp_crosslets_subband_select IS + + +BEGIN + --------------------------------------------------------------- + -- Beamlet Subband Select + --------------------------------------------------------------- + u_reorder_col_wide : ENTITY reorder_lib.reorder_col_wide + GENERIC MAP ( + g_wb_factor => c_sdp_P_pfb, -- g_wb_factor is only used for number of parallel streams + g_dsp_data_w => c_sdp_W_subband, + g_nof_ch_in => c_sdp_N_sub * c_sdp_Q_fft, + g_nof_ch_sel => c_sdp_S_sub_bf * c_sdp_Q_fft, + g_select_file_prefix => c_bf_select_file_prefix, + g_use_complex => TRUE + ) + PORT MAP( + input_sosi_arr => in_sosi_arr, + output_sosi_arr => bsel_sosi_arr, + + ram_ss_ss_wide_mosi => ram_ss_ss_wide_mosi, + ram_ss_ss_wide_miso => ram_ss_ss_wide_miso, + + mm_rst => mm_rst, + mm_clk => mm_clk, + dp_clk => dp_clk, + dp_rst => dp_rst + ); + + +END str; -- GitLab