URL
https://opencores.org/ocsvn/pcie_ds_dma/pcie_ds_dma/trunk
Subversion Repositories pcie_ds_dma
[/] [pcie_ds_dma/] [trunk/] [core/] [ds_dma64/] [pcie_src/] [pcie_core64_m1/] [pcie_ctrl/] [core64_type_pkg.vhd] - Rev 13
Go to most recent revision | Compare with Previous | Blame | View Log
------------------------------------------------------------------------------- -- -- Title : core64_type_pkg -- Author : Dmitry Smekhov -- Company : Instrumental Systems -- E-mail : dsmv@insys.ru -- -- Version : 1.1 -- ------------------------------------------------------------------------------- -- -- Description : Определения типов для проекта DS_DMA64 -- ------------------------------------------------------------------------------- -- -- Version 1.1 28.09.2011 Dmitry Smekhov -- Добавлен complete в тип type_pb_slave -- ------------------------------------------------------------------------------- library ieee; use ieee.std_logic_1164.all; --! Определение типов для проекта DS_DMA64 package core64_type_pkg is --! Передача данных в узел PCIE type type_trn_tx is record trn_td : std_logic_vector((64 - 1) downto 0); trn_trem_n : std_logic_vector (7 downto 0); trn_tsof_n : std_logic; trn_teof_n : std_logic; trn_tsrc_dsc_n : std_logic; trn_tsrc_rdy_n : std_logic; trn_terrfwd_n : std_logic ; end record; --! Готовность к передачи данных в узел PCIE type type_trn_tx_back is record trn_tdst_dsc_n : std_logic; trn_tdst_rdy_n : std_logic; trn_tbuf_av : std_logic_vector ( 5 downto 0 ); cfg_dcommand : std_logic_vector( 15 downto 0 ); -- регистр Device Control Register end record; --! Приём данных из узла PCIE type type_trn_rx is record trn_rd : std_logic_vector((64 - 1) downto 0); trn_rrem_n : std_logic_vector (7 downto 0); trn_rsof_n : std_logic; trn_reof_n : std_logic; trn_rsrc_dsc_n : std_logic; trn_rsrc_rdy_n : std_logic; trn_rbar_hit_n : std_logic_vector ( 6 downto 0 ); trn_rerrfwd_n : std_logic; trn_rfc_npd_av : std_logic_vector ( 11 downto 0 ); trn_rfc_nph_av : std_logic_vector ( 7 downto 0 ); trn_rfc_pd_av : std_logic_vector ( 11 downto 0 ); trn_rfc_ph_av : std_logic_vector ( 7 downto 0 ); end record; --! Готовность к приёму данных из узла PCIE type type_trn_rx_back is record trn_rdst_rdy_n : std_logic; trn_rnp_ok_n : std_logic; trn_rcpl_streaming_n : std_logic; end record; --! Передача данных в узел PCIE. Интерфейс AXI type type_axi_tx is record -- trn_td : std_logic_vector((64 - 1) downto 0); -- trn_trem_n : std_logic_vector (7 downto 0); -- trn_tsof_n : std_logic; -- trn_teof_n : std_logic; -- trn_tsrc_dsc_n : std_logic; -- trn_tsrc_rdy_n : std_logic; -- trn_terrfwd_n : std_logic ; s_axis_tx_tdata : std_logic_vector(63 downto 0); s_axis_tx_tstrb : std_logic_vector(7 downto 0); s_axis_tx_tuser : std_logic_vector(3 downto 0); s_axis_tx_tlast : std_logic; s_axis_tx_tvalid : std_logic; tx_cfg_gnt : std_logic; fc_sel : std_logic_vector(2 downto 0); end record; --! Готовность к передачи данных в узел PCIE. Интерфейс AXI type type_axi_tx_back is record tx_cfg_req : std_logic; tx_err_drop : std_logic; s_axis_tx_tready : std_logic; -- trn_tdst_dsc_n : std_logic; -- trn_tdst_rdy_n : std_logic; trn_tbuf_av : std_logic_vector ( 5 downto 0 ); cfg_dcommand : std_logic_vector( 15 downto 0 ); -- регистр Device Control Register fc_cpld : std_logic_vector(11 downto 0); fc_cplh : std_logic_vector(7 downto 0); fc_npd : std_logic_vector(11 downto 0); fc_nph : std_logic_vector(7 downto 0); fc_pd : std_logic_vector(11 downto 0); fc_ph : std_logic_vector(7 downto 0); end record; --! Приём данных из узла PCIE. Интерфейс AXI type type_axi_rx is record -- trn_rd : std_logic_vector((64 - 1) downto 0); -- trn_rrem_n : std_logic_vector (7 downto 0); -- trn_rsof_n : std_logic; -- trn_reof_n : std_logic; -- trn_rsrc_dsc_n : std_logic; -- trn_rsrc_rdy_n : std_logic; -- trn_rbar_hit_n : std_logic_vector ( 6 downto 0 ); -- trn_rerrfwd_n : std_logic; -- trn_rfc_npd_av : std_logic_vector ( 11 downto 0 ); -- trn_rfc_nph_av : std_logic_vector ( 7 downto 0 ); -- trn_rfc_pd_av : std_logic_vector ( 11 downto 0 ); -- trn_rfc_ph_av : std_logic_vector ( 7 downto 0 ); m_axis_rx_tdata : std_logic_vector(63 downto 0); m_axis_rx_tstrb : std_logic_vector(7 downto 0); m_axis_rx_tlast : std_logic; m_axis_rx_tvalid : std_logic; m_axis_rx_tuser : std_logic_vector(21 downto 0); end record; --! Готовность к приёму данных из узла PCIE. Интерфейс AXI type type_axi_rx_back is record -- trn_rdst_rdy_n : std_logic; -- trn_rnp_ok_n : std_logic; -- trn_rcpl_streaming_n : std_logic; m_axis_rx_tready : std_logic; rx_np_ok : std_logic; end record; --! Доступ к регистрам type type_reg_access is record adr : std_logic_vector( 31 downto 0 ); --! адрес регистра data : std_logic_vector( 31 downto 0 ); --! данные для записи в регистр req_wr : std_logic_vector( 1 downto 0 ); --! 1 - требование записи в регистр req_rd : std_logic_vector( 1 downto 0 ); --! 1 - требование чтения из регистра end record; --! Доступ к регистрам - ответный пакет type type_reg_access_back is record data : std_logic_vector( 31 downto 0 ); --! данные для записи в регистр data_we : std_logic; --! 1 - строб данных complete : std_logic; --! 1 - операция завершена end record; --! RX->TX type type_rx_tx_engine is record request_reg_wr : std_logic; --! 1 - запрос на запись в регистр request_reg_rd : std_logic; --! 1 - запрос на чтение из регистра request_tag : std_logic_vector( 7 downto 0 ); --! идентификатор запроса request_tc : std_logic_vector( 2 downto 0 ); --! Traffic class request_attr : std_logic_vector( 3 downto 0 ); --! атрибуты request_id : std_logic_vector( 15 downto 0 ); --! ID получателя запроса complete_we : std_logic; --! 1 - запись ответа на запрос lower_adr : std_logic_vector( 6 downto 2 ); --! младшие разряды адреса byte_count : std_logic_vector( 2 downto 0 ); --! число байт в запросе end record; --! TX->RX type type_tx_rx_engine is record complete_reg : std_logic; --! 1 - завершение доступа к регистру end record; --! RX->EXT_FIFO type type_rx_ext_fifo is record adr : std_logic_vector( 8 downto 0 ); --! адрес data : std_logic_vector( 63 downto 0 ); --! данные data_we : std_logic; --! 1 - запись данных end record; --! TX->EXT_FIFO type type_tx_ext_fifo is record adr : std_logic_vector( 8 downto 0 ); --! адрес complete_ok : std_logic; --! 1 - успешное завершение операции complete_error : std_logic; --! 1 - операция завершена с ошибкой end record; --! TX->EXT_FIFO_BACK type type_tx_ext_fifo_back is record data : std_logic_vector( 63 downto 0 ); --! данные req_wr : std_logic; --! 1 - требование записи блока 4 кБ req_rd : std_logic; --! 1 - требование чтения rd_size : std_logic; --! 0 - 512 байт, 1 - 4 кБ pci_adr : std_logic_vector( 39 downto 8 ); --! адрес на шине PCI end record; --! REG->DISP type type_reg_disp is record adr : std_logic_vector( 31 downto 0 ); --! адрес data : std_logic_vector( 31 downto 0 ); --! данные request_reg_wr : std_logic; --! 1 - запрос на запись в регистр request_reg_rd : std_logic; --! 1 - запрос на чтение из регистра end record; --! REG->DISP BACK type type_reg_disp_back is record data : std_logic_vector( 31 downto 0 ); --! данные data_we : std_logic; --! 1 - строб записи данных complete : std_logic; --! 1 - операция завершена end record; --! REG->EXT_FIFO type type_reg_ext_fifo is record adr : std_logic_vector( 6 downto 0 ); --! адрес data : std_logic_vector( 31 downto 0 ); --! данные data_we : std_logic; --! 1 - запись в регистры end record; --! REG->EXT_FIFO BACK type type_reg_ext_fifo_back is record data : std_logic_vector( 31 downto 0 ); --! данные end record; --! PB_DATA_MASTER type type_pb_master is record stb0 : std_logic; --! 1 - строб команды и адреса stb1 : std_logic; --! 1 - строб данных cmd : std_logic_vector( 2 downto 0 ); --! команда adr : std_logic_vector( 31 downto 0 ); --! адрес data : std_logic_vector( 63 downto 0 ); --! данные end record; --! PB_DATA_SLAVE type type_pb_slave is record stb0 : std_logic; --! 1 - строб команды и адреса stb1 : std_logic; --! 1 - строб данных data : std_logic_vector( 63 downto 0 ); --! данные dmar : std_logic_vector( 1 downto 0 ); --! 1 - запрос DMA irq : std_logic; --! 1 - запрос прерывания complete : std_logic; --! 1 - завершение операции на шине ready : std_logic; --! 1 - готовность к приёму данных end record; --! EXT_FIFO -> DISP type type_ext_fifo_disp is record adr : std_logic_vector( 31 downto 0 ); --! адрес data : std_logic_vector( 63 downto 0 ); --! данные data_we : std_logic; --! 1 - запись request_wr : std_logic; --! 1 - запрос на запись в регистр request_rd : std_logic; --! 1 - запрос на чтение из регистра end record; --! EXT_FIFO -> DISP BACK type type_ext_fifo_disp_back is record data : std_logic_vector( 63 downto 0 ); --! данные data_we : std_logic; --! 1 - запись dmar : std_logic_vector( 1 downto 0 ); --! 1 - запрос DMA allow_wr : std_logic; --! 1 - разрешение записи irq : std_logic; --! 1 - запрос прерывания complete : std_logic; --! 1 - завершение операции end record; end package;
Go to most recent revision | Compare with Previous | Blame | View Log