1 |
66 |
ash_riple |
###################################################################
|
2 |
|
|
##
|
3 |
|
|
## Name : ha1588_axi_v2_1_0.mpd
|
4 |
|
|
## Desc : Microprocessor Peripheral Description
|
5 |
|
|
##
|
6 |
|
|
###################################################################
|
7 |
|
|
|
8 |
|
|
BEGIN ha1588_axi
|
9 |
|
|
|
10 |
|
|
## Peripheral Options
|
11 |
|
|
OPTION IPTYPE = PERIPHERAL
|
12 |
|
|
OPTION IMP_NETLIST = TRUE
|
13 |
|
|
OPTION STYLE = MIX
|
14 |
|
|
OPTION DESC = HA1588
|
15 |
|
|
OPTION LONG_DESC = HARDWARE ASSISTED IEEE 1588 IP CORE
|
16 |
|
|
OPTION HDL = MIXED
|
17 |
|
|
OPTION RUN_NGCBUILD = TRUE
|
18 |
|
|
|
19 |
|
|
|
20 |
|
|
## S_AXI_REG Bus Interfaces
|
21 |
|
|
BUS_INTERFACE BUS = S_AXI_REG, BUS_STD = AXI, BUS_TYPE = SLAVE
|
22 |
|
|
|
23 |
|
|
## S_AXI_REG Generics for VHDL or Parameters for Verilog
|
24 |
|
|
PARAMETER C_S_AXI_REG_ADDR_WIDTH = 32, DT = integer, ASSIGNMENT = CONSTANT, BUS = S_AXI_REG
|
25 |
|
|
PARAMETER C_S_AXI_REG_DATA_WIDTH = 32, DT = integer, ASSIGNMENT = CONSTANT, BUS = S_AXI_REG
|
26 |
|
|
PARAMETER C_S_AXI_REG_PROTOCOL = AXI4Lite, DT = string, TYPE = NON_HDL, ASSIGNMENT = CONSTANT, BUS = S_AXI_REG
|
27 |
|
|
PARAMETER C_S_AXI_REG_SUPPORTS_READ = 1, DT = integer, RANGE = (0,1), TYPE = NON_HDL, ASSIGNMENT = OPTIONAL_UPDATE, BUS = S_AXI_REG
|
28 |
|
|
PARAMETER C_S_AXI_REG_SUPPORTS_WRITE = 1, DT = integer, RANGE = (0,1), TYPE = NON_HDL, ASSIGNMENT = OPTIONAL_UPDATE, BUS = S_AXI_REG
|
29 |
|
|
PARAMETER C_S_AXI_REG_NUM_ADDR_RANGES = 1, BUS = S_AXI_REG, DT = INTEGER, ASSIGNMENT = OPTIONAL_UPDATE, TYPE = NON_HDL, RANGE = (1:4)
|
30 |
|
|
PARAMETER C_S_AXI_REG_RNG00_BASEADDR = 0xFFFFFFFF, BUS = S_AXI_REG, DT = std_logic_vector, ADDRESS = BASE, PAIR = C_S_AXI_REG_RNG00_HIGHADDR, ISVALID = (C_S_AXI_REG_NUM_ADDR_RANGES >= 1), TYPE = NON_HDL, MIN_SIZE = 0x1000
|
31 |
|
|
PARAMETER C_S_AXI_REG_RNG00_HIGHADDR = 0x00000000, BUS = S_AXI_REG, DT = std_logic_vector, ADDRESS = HIGH, PAIR = C_S_AXI_REG_RNG00_BASEADDR, ISVALID = (C_S_AXI_REG_NUM_ADDR_RANGES >= 1), TYPE = NON_HDL
|
32 |
|
|
PARAMETER C_S_AXI_REG_RNG01_BASEADDR = 0xFFFFFFFF, BUS = S_AXI_REG, DT = std_logic_vector, ADDRESS = BASE, PAIR = C_S_AXI_REG_RNG01_HIGHADDR, ISVALID = (C_S_AXI_REG_NUM_ADDR_RANGES >= 2), TYPE = NON_HDL, MIN_SIZE = 0x1000
|
33 |
|
|
PARAMETER C_S_AXI_REG_RNG01_HIGHADDR = 0x00000000, BUS = S_AXI_REG, DT = std_logic_vector, ADDRESS = HIGH, PAIR = C_S_AXI_REG_RNG01_BASEADDR, ISVALID = (C_S_AXI_REG_NUM_ADDR_RANGES >= 2), TYPE = NON_HDL
|
34 |
|
|
PARAMETER C_S_AXI_REG_RNG02_BASEADDR = 0xFFFFFFFF, BUS = S_AXI_REG, DT = std_logic_vector, ADDRESS = BASE, PAIR = C_S_AXI_REG_RNG02_HIGHADDR, ISVALID = (C_S_AXI_REG_NUM_ADDR_RANGES >= 3), TYPE = NON_HDL, MIN_SIZE = 0x1000
|
35 |
|
|
PARAMETER C_S_AXI_REG_RNG02_HIGHADDR = 0x00000000, BUS = S_AXI_REG, DT = std_logic_vector, ADDRESS = HIGH, PAIR = C_S_AXI_REG_RNG02_BASEADDR, ISVALID = (C_S_AXI_REG_NUM_ADDR_RANGES >= 3), TYPE = NON_HDL
|
36 |
|
|
PARAMETER C_S_AXI_REG_RNG03_BASEADDR = 0xFFFFFFFF, BUS = S_AXI_REG, DT = std_logic_vector, ADDRESS = BASE, PAIR = C_S_AXI_REG_RNG03_HIGHADDR, ISVALID = (C_S_AXI_REG_NUM_ADDR_RANGES >= 4), TYPE = NON_HDL, MIN_SIZE = 0x1000
|
37 |
|
|
PARAMETER C_S_AXI_REG_RNG03_HIGHADDR = 0x00000000, BUS = S_AXI_REG, DT = std_logic_vector, ADDRESS = HIGH, PAIR = C_S_AXI_REG_RNG03_BASEADDR, ISVALID = (C_S_AXI_REG_NUM_ADDR_RANGES >= 4), TYPE = NON_HDL
|
38 |
|
|
|
39 |
|
|
## S_AXI_REG Ports
|
40 |
|
|
PORT S_AXI_REG_ACLK = "", BUS = S_AXI_REG, DIR = I, SIGIS = CLK
|
41 |
|
|
PORT S_AXI_REG_ARESETN = ARESETN, BUS = S_AXI_REG, DIR = I, SIGIS = RST
|
42 |
|
|
PORT S_AXI_REG_AWADDR = AWADDR, BUS = S_AXI_REG, DIR = I, VEC = [(C_S_AXI_REG_ADDR_WIDTH-1):0]
|
43 |
|
|
PORT S_AXI_REG_AWPROT = AWPROT, BUS = S_AXI_REG, DIR = I, VEC = [2:0]
|
44 |
|
|
PORT S_AXI_REG_AWVALID = AWVALID, BUS = S_AXI_REG, DIR = I
|
45 |
|
|
PORT S_AXI_REG_AWREADY = AWREADY, BUS = S_AXI_REG, DIR = O
|
46 |
|
|
PORT S_AXI_REG_WDATA = WDATA, BUS = S_AXI_REG, DIR = I, VEC = [(C_S_AXI_REG_DATA_WIDTH-1):0]
|
47 |
|
|
PORT S_AXI_REG_WSTRB = WSTRB, BUS = S_AXI_REG, DIR = I, VEC = [((C_S_AXI_REG_DATA_WIDTH/8) -1):0]
|
48 |
|
|
PORT S_AXI_REG_WVALID = WVALID, BUS = S_AXI_REG, DIR = I
|
49 |
|
|
PORT S_AXI_REG_WREADY = WREADY, BUS = S_AXI_REG, DIR = O
|
50 |
|
|
PORT S_AXI_REG_BRESP = BRESP, BUS = S_AXI_REG, DIR = O, VEC = [1:0]
|
51 |
|
|
PORT S_AXI_REG_BVALID = BVALID, BUS = S_AXI_REG, DIR = O
|
52 |
|
|
PORT S_AXI_REG_BREADY = BREADY, BUS = S_AXI_REG, DIR = I
|
53 |
|
|
PORT S_AXI_REG_ARADDR = ARADDR, BUS = S_AXI_REG, DIR = I, VEC = [(C_S_AXI_REG_ADDR_WIDTH-1):0
|
54 |
|
|
PORT S_AXI_REG_ARPROT = ARPROT, BUS = S_AXI_REG, DIR = I, VEC = [2:0]
|
55 |
|
|
PORT S_AXI_REG_ARVALID = ARVALID, BUS = S_AXI_REG, DIR = I
|
56 |
|
|
PORT S_AXI_REG_ARREADY = ARREADY, BUS = S_AXI_REG, DIR = O
|
57 |
|
|
PORT S_AXI_REG_RDATA = RDATA, BUS = S_AXI_REG, DIR = O, VEC = [(C_S_AXI_REG_DATA_WIDTH-1):0]
|
58 |
|
|
PORT S_AXI_REG_RRESP = RRESP, BUS = S_AXI_REG, DIR = O, VEC = [1:0]
|
59 |
|
|
PORT S_AXI_REG_RVALID = RVALID, BUS = S_AXI_REG, DIR = O
|
60 |
|
|
PORT S_AXI_REG_RREADY = RREADY, BUS = S_AXI_REG, DIR = I
|
61 |
|
|
|
62 |
|
|
|
63 |
|
|
## EXTERNAL Ports
|
64 |
|
|
PORT INTR_OUT ="", DIR = O, SIGIS = INTERRUPT, SENSITIVITY=LEVEL_HIGH
|
65 |
|
|
|
66 |
|
|
PORT rtc_clk = "", DIR = I, SIGIS = CLK
|
67 |
|
|
PORT rtc_time_ptp_ns = "", DIR = O, VEC = [31:0]
|
68 |
|
|
PORT rtc_time_ptp_sec = "", DIR = O, VEC = [47:0]
|
69 |
|
|
PORT rtc_time_one_pps = "", DIR = O
|
70 |
|
|
|
71 |
|
|
PORT rx_gmii_clk = "", DIR = I
|
72 |
|
|
PORT rx_gmii_ctrl = "", DIR = I
|
73 |
|
|
PORT rx_gmii_data = "", DIR = I, VEC = [ 7:0]
|
74 |
|
|
PORT rx_giga_mode = "", DIR = I
|
75 |
|
|
PORT tx_gmii_clk = "", DIR = I
|
76 |
|
|
PORT tx_gmii_ctrl = "", DIR = I
|
77 |
|
|
PORT tx_gmii_data = "", DIR = I, VEC = [ 7:0]
|
78 |
|
|
PORT tx_giga_mode = "", DIR = I
|
79 |
|
|
|
80 |
|
|
END
|