OpenCores
URL https://opencores.org/ocsvn/spi_slave/spi_slave/trunk

Subversion Repositories spi_slave

[/] [spi_slave/] [trunk/] [pcore/] [opb_spi_slave_v1_00_a/] [hdl/] [vhdl/] [opb_spi_slave_pack.vhd] - Blame information for rev 10

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 dkoethe
library ieee;
2
use ieee.std_logic_1164.all;
3
use IEEE.STD_LOGIC_ARITH.all;
4
use IEEE.STD_LOGIC_UNSIGNED.all;
5
use IEEE.numeric_std.all;               -- conv_integer()
6
 
7
package opb_spi_slave_pack is
8
 
9
  constant C_ADR_CTL         : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#0#, 6);
10
  constant C_ADR_STATUS      : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#1#, 6);
11
  constant C_ADR_TX_DATA     : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#2#, 6);
12
  constant C_ADR_RX_DATA     : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#3#, 6);
13
  constant C_ADR_TX_THRESH   : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#4#, 6);
14
  constant C_ADR_RX_THRESH   : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#5#, 6);
15
  constant C_ADR_TX_DMA_CTL  : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#6#, 6);
16
  constant C_ADR_TX_DMA_ADDR : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#7#, 6);
17
  constant C_ADR_TX_DMA_NUM  : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#8#, 6);
18
  constant C_ADR_RX_DMA_CTL  : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#9#, 6);
19
  constant C_ADR_RX_DMA_ADDR : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#A#, 6);
20
  constant C_ADR_RX_DMA_NUM  : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#B#, 6);
21
 
22
-- XIIF_V123B compatible
23
  constant C_ADR_DGIE : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#10#, 6);
24
  constant C_ADR_ISR  : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#11#, 6);
25
  constant C_ADR_IER  : std_logic_vector(7 downto 2) := conv_std_logic_vector(16#12#, 6);
26
 
27
  constant C_NUM_FLG           : integer := 15;
28
  constant C_NUM_INT           : integer := 10;
29 10 dkoethe
  constant C_WIDTH_DMA_NUM : integer := 24;
30 2 dkoethe
 
31
 
32
-- CTL_Register
33
  -- width
34
  constant C_OPB_CTL_REG_WIDTH : integer := 4;
35
  -- bits
36
  constant C_OPB_CTL_REG_DGE   : integer := 0;
37
  constant C_OPB_CTL_REG_TX_EN : integer := 1;
38
  constant C_OPB_CTL_REG_RX_EN : integer := 2;
39
  constant C_OPB_CTL_REG_RST   : integer := 3;
40
 
41
 
42
  -- Status Register
43
  constant SPI_SR_Bit_TX_Prog_Full  : integer := 0;
44
  constant SPI_SR_Bit_TX_Full       : integer := 1;
45
  constant SPI_SR_Bit_TX_Overflow   : integer := 2;
46
  constant SPI_SR_Bit_TX_Prog_empty : integer := 3;
47
  constant SPI_SR_Bit_TX_Empty      : integer := 4;
48
  constant SPI_SR_Bit_TX_Underflow  : integer := 5;
49
 
50
  constant SPI_SR_Bit_RX_Prog_Full  : integer := 6;
51
  constant SPI_SR_Bit_RX_Full       : integer := 7;
52
  constant SPI_SR_Bit_RX_Overflow   : integer := 8;
53
  constant SPI_SR_Bit_RX_Prog_empty : integer := 9;
54
  constant SPI_SR_Bit_RX_Empty      : integer := 10;
55
  constant SPI_SR_Bit_RX_Underflow  : integer := 11;
56
 
57
  constant SPI_SR_Bit_SS_n : integer := 12;
58
 
59
  -- Interrupt Status Register
60
  constant SPI_ISR_Bit_TX_Prog_Empty : integer := 0;
61
  constant SPI_ISR_Bit_TX_Empty      : integer := 1;
62
  constant SPI_ISR_Bit_TX_Underflow  : integer := 2;
63
  constant SPI_ISR_Bit_RX_Prog_Full  : integer := 3;
64
  constant SPI_ISR_Bit_RX_Full       : integer := 4;
65
  constant SPI_ISR_Bit_RX_Overflow   : integer := 5;
66
  constant SPI_ISR_Bit_SS_Fall       : integer := 6;
67
  constant SPI_ISR_Bit_SS_Rise       : integer := 7;
68
end opb_spi_slave_pack;

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.