Skip to content
Snippets Groups Projects
Commit f2ae7ad0 authored by Eric Kooistra's avatar Eric Kooistra
Browse files

Merge branch 'master' of git.astron.nl:rtsd/hdl

parents 879264c9 fc8d4621
Branches
No related tags found
No related merge requests found
Pipeline #82072 passed
File added
File added
......@@ -124,6 +124,30 @@ architecture tb of tb_tech_jesd204b_v2 is
signal jesd204b_mosi : t_mem_mosi := c_mem_mosi_rst;
signal jesd204b_miso : t_mem_miso := c_mem_miso_rst;
signal jesd204b_rddata : std_logic_vector(c_word_w - 1 downto 0);
signal jesd204b_rx_err0 : std_logic_vector(c_word_w - 1 downto 0);
signal jesd204b_rx_err1 : std_logic_vector(c_word_w - 1 downto 0);
signal jesd204b_csr_rbd_count : std_logic_vector(7 downto 0);
signal jesd204b_csr_dev_syncn : std_logic;
signal jesd204b_rx_err_link_reinit : std_logic_vector(c_word_w - 1 downto 0);
signal jesd204b_rx_ilas_csr_l : std_logic_vector(4 downto 0);
signal jesd204b_rx_ilas_csr_f : std_logic_vector(7 downto 0);
signal jesd204b_rx_ilas_csr_k : std_logic_vector(4 downto 0);
signal jesd204b_rx_ilas_csr_m : std_logic_vector(7 downto 0);
signal jesd204b_rx_ilas_csr_n : std_logic_vector(4 downto 0);
signal jesd204b_rx_ilas_csr_cs : std_logic_vector(1 downto 0);
signal jesd204b_rx_ilas_csr_np : std_logic_vector(4 downto 0);
signal jesd204b_rx_ilas_csr_subclassv : std_logic_vector(2 downto 0);
signal jesd204b_rx_ilas_csr_s : std_logic_vector(4 downto 0);
signal jesd204b_rx_ilas_csr_jesdv : std_logic_vector(2 downto 0);
signal jesd204b_rx_ilas_csr_cf : std_logic_vector(4 downto 0);
signal jesd204b_rx_ilas_csr_hd : std_logic;
signal jesd204b_rx_status1 : std_logic_vector(c_word_w - 1 downto 0);
signal jesd204b_rx_status2 : std_logic_vector(c_word_w - 1 downto 0);
signal jesd204b_rx_status3 : std_logic_vector(c_word_w - 1 downto 0);
signal jesd204b_rx_status4 : std_logic_vector(c_word_w - 1 downto 0);
signal jesd204b_rx_status5 : std_logic_vector(c_word_w - 1 downto 0);
signal jesd204b_rx_status6 : std_logic_vector(c_word_w - 1 downto 0);
signal jesd204b_rx_status7 : std_logic_vector(c_word_w - 1 downto 0);
-- serial transceivers
signal serial_tx : std_logic_vector(c_nof_jesd204b_tx - 1 downto 0);
......@@ -235,9 +259,56 @@ begin
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_syncn_sysref_ctrl_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_err0_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_err0 <= jesd204b_miso.rddata(c_word_w - 1 downto 0);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_err1_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_err1 <= jesd204b_miso.rddata(c_word_w - 1 downto 0);
proc_mem_mm_bus_rd(tech_jesd204b_field_csr_rbd_count_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_csr_rbd_count <= jesd204b_miso.rddata(10 downto 3);
proc_mem_mm_bus_rd(tech_jesd204b_field_csr_dev_syncn_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_csr_dev_syncn <= jesd204b_miso.rddata(0);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_err_link_reinit_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_err_link_reinit <= jesd204b_miso.rddata(c_word_w - 1 downto 0);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_ilas_csr_l_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_ilas_csr_l <= jesd204b_miso.rddata(4 downto 0);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_ilas_csr_f_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_ilas_csr_f <= jesd204b_miso.rddata(15 downto 8);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_ilas_csr_k_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_ilas_csr_k <= jesd204b_miso.rddata(20 downto 16);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_ilas_csr_m_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_ilas_csr_m <= jesd204b_miso.rddata(31 downto 24);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_ilas_csr_n_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_ilas_csr_n <= jesd204b_miso.rddata(4 downto 0);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_ilas_csr_cs_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_ilas_csr_cs <= jesd204b_miso.rddata(7 downto 6);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_ilas_csr_np_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_ilas_csr_np <= jesd204b_miso.rddata(12 downto 8);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_ilas_csr_subclassv_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_ilas_csr_subclassv <= jesd204b_miso.rddata(15 downto 13);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_ilas_csr_s_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_ilas_csr_s <= jesd204b_miso.rddata(20 downto 16);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_ilas_csr_jesdv_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_ilas_csr_jesdv <= jesd204b_miso.rddata(23 downto 21);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_ilas_csr_cf_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_ilas_csr_cf <= jesd204b_miso.rddata(28 downto 24);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_ilas_csr_hd_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_ilas_csr_hd <= jesd204b_miso.rddata(31);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_status1_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_status1 <= jesd204b_miso.rddata(c_word_w - 1 downto 0);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_status2_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_status2 <= jesd204b_miso.rddata(c_word_w - 1 downto 0);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_status3_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_status3 <= jesd204b_miso.rddata(c_word_w - 1 downto 0);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_status4_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_status4 <= jesd204b_miso.rddata(c_word_w - 1 downto 0);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_status5_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_status5 <= jesd204b_miso.rddata(c_word_w - 1 downto 0);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_status6_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_status6 <= jesd204b_miso.rddata(c_word_w - 1 downto 0);
proc_mem_mm_bus_rd(tech_jesd204b_field_rx_status7_adr, mm_clk, jesd204b_miso, jesd204b_mosi);
jesd204b_rx_status7 <= jesd204b_miso.rddata(c_word_w - 1 downto 0);
wait;
end process;
......
......@@ -65,6 +65,28 @@ package tech_jesd204b_pkg is
constant tech_jesd204b_field_csr_dev_syncn_w : natural := 1;
constant tech_jesd204b_field_csr_dev_syncn_lo : natural := 0;
constant tech_jesd204b_field_csr_dev_syncn_hi : natural := tech_jesd204b_field_csr_dev_syncn_w - 1 + tech_jesd204b_field_csr_dev_syncn_lo;
constant tech_jesd204b_field_rx_ilas_csr_l_adr : natural := 16#25#; -- = 16#94# / 4;
constant tech_jesd204b_field_rx_ilas_csr_f_adr : natural := 16#25#;
constant tech_jesd204b_field_rx_ilas_csr_k_adr : natural := 16#25#;
constant tech_jesd204b_field_rx_ilas_csr_m_adr : natural := 16#25#;
constant tech_jesd204b_field_rx_ilas_csr_n_adr : natural := 16#26#; -- = 16#98# / 4;
constant tech_jesd204b_field_rx_ilas_csr_cs_adr : natural := 16#26#;
constant tech_jesd204b_field_rx_ilas_csr_np_adr : natural := 16#26#;
constant tech_jesd204b_field_rx_ilas_csr_subclassv_adr : natural := 16#26#;
constant tech_jesd204b_field_rx_ilas_csr_s_adr : natural := 16#26#;
constant tech_jesd204b_field_rx_ilas_csr_jesdv_adr : natural := 16#26#;
constant tech_jesd204b_field_rx_ilas_csr_cf_adr : natural := 16#26#;
constant tech_jesd204b_field_rx_ilas_csr_hd_adr : natural := 16#26#;
constant tech_jesd204b_field_rx_status1_adr : natural := 16#21#;
constant tech_jesd204b_field_rx_status2_adr : natural := 16#22#;
constant tech_jesd204b_field_rx_status3_adr : natural := 16#23#;
constant tech_jesd204b_field_rx_status4_adr : natural := 16#3c#;
constant tech_jesd204b_field_rx_status5_adr : natural := 16#3d#;
constant tech_jesd204b_field_rx_status6_adr : natural := 16#3e#;
constant tech_jesd204b_field_rx_status7_adr : natural := 16#3f#;
end tech_jesd204b_pkg;
package body tech_jesd204b_pkg is
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment