SimpleVOut  1.0.0 Initial
A Simple FPGA Core for Creating VGA/DVI/HDMI/OpenLDI Signals
design_1_processing_system7_0_0_sc.cpp
Go to the documentation of this file.
1 // (c) Copyright 1995-2021 Xilinx, Inc. All rights reserved.
2 //
3 // This file contains confidential and proprietary information
4 // of Xilinx, Inc. and is protected under U.S. and
5 // international copyright and other intellectual property
6 // laws.
7 //
8 // DISCLAIMER
9 // This disclaimer is not a license and does not grant any
10 // rights to the materials distributed herewith. Except as
11 // otherwise provided in a valid license issued to you by
12 // Xilinx, and to the maximum extent permitted by applicable
13 // law: (1) THESE MATERIALS ARE MADE AVAILABLE "AS IS" AND
14 // WITH ALL FAULTS, AND XILINX HEREBY DISCLAIMS ALL WARRANTIES
15 // AND CONDITIONS, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING
16 // BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, NON-
17 // INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE; and
18 // (2) Xilinx shall not be liable (whether in contract or tort,
19 // including negligence, or under any other theory of
20 // liability) for any loss or damage of any kind or nature
21 // related to, arising under or in connection with these
22 // materials, including for any direct, or any indirect,
23 // special, incidental, or consequential loss or damage
24 // (including loss of data, profits, goodwill, or any type of
25 // loss or damage suffered as a result of any action brought
26 // by a third party) even if such damage or loss was
27 // reasonably foreseeable or Xilinx had been advised of the
28 // possibility of the same.
29 //
30 // CRITICAL APPLICATIONS
31 // Xilinx products are not designed or intended to be fail-
32 // safe, or for use in any application requiring fail-safe
33 // performance, such as life-support or safety devices or
34 // systems, Class III medical devices, nuclear facilities,
35 // applications related to the deployment of airbags, or any
36 // other applications that could lead to death, personal
37 // injury, or severe property or environmental damage
38 // (individually and collectively, "Critical
39 // Applications"). Customer assumes the sole risk and
40 // liability of any use of Xilinx products in Critical
41 // Applications, subject only to applicable laws and
42 // regulations governing limitations on product liability.
43 //
44 // THIS COPYRIGHT NOTICE AND DISCLAIMER MUST BE RETAINED AS
45 // PART OF THIS FILE AT ALL TIMES.
46 //
47 // DO NOT MODIFY THIS FILE.
48 
49 
51 
53 
54 #include <map>
55 #include <string>
56 
57 design_1_processing_system7_0_0_sc::design_1_processing_system7_0_0_sc(const sc_core::sc_module_name& nm) : sc_core::sc_module(nm), mp_impl(NULL)
58 {
59  // configure connectivity manager
60  xsc::utils::xsc_sim_manager::addInstance("design_1_processing_system7_0_0", this);
61 
62  // initialize module
63  xsc::common_cpp::properties model_param_props;
64  model_param_props.addLong("C_EN_EMIO_PJTAG", "0");
65  model_param_props.addLong("C_EN_EMIO_ENET0", "1");
66  model_param_props.addLong("C_EN_EMIO_ENET1", "0");
67  model_param_props.addLong("C_EN_EMIO_TRACE", "0");
68  model_param_props.addLong("C_INCLUDE_TRACE_BUFFER", "0");
69  model_param_props.addLong("C_TRACE_BUFFER_FIFO_SIZE", "128");
70  model_param_props.addLong("USE_TRACE_DATA_EDGE_DETECTOR", "0");
71  model_param_props.addLong("C_TRACE_PIPELINE_WIDTH", "8");
72  model_param_props.addLong("C_TRACE_BUFFER_CLOCK_DELAY", "12");
73  model_param_props.addLong("C_EMIO_GPIO_WIDTH", "8");
74  model_param_props.addLong("C_INCLUDE_ACP_TRANS_CHECK", "0");
75  model_param_props.addLong("C_USE_DEFAULT_ACP_USER_VAL", "0");
76  model_param_props.addLong("C_S_AXI_ACP_ARUSER_VAL", "31");
77  model_param_props.addLong("C_S_AXI_ACP_AWUSER_VAL", "31");
78  model_param_props.addLong("C_M_AXI_GP0_ID_WIDTH", "12");
79  model_param_props.addLong("C_M_AXI_GP0_ENABLE_STATIC_REMAP", "0");
80  model_param_props.addLong("C_M_AXI_GP1_ID_WIDTH", "12");
81  model_param_props.addLong("C_M_AXI_GP1_ENABLE_STATIC_REMAP", "0");
82  model_param_props.addLong("C_S_AXI_GP0_ID_WIDTH", "6");
83  model_param_props.addLong("C_S_AXI_GP1_ID_WIDTH", "6");
84  model_param_props.addLong("C_S_AXI_ACP_ID_WIDTH", "3");
85  model_param_props.addLong("C_S_AXI_HP0_ID_WIDTH", "6");
86  model_param_props.addLong("C_S_AXI_HP0_DATA_WIDTH", "64");
87  model_param_props.addLong("C_S_AXI_HP1_ID_WIDTH", "6");
88  model_param_props.addLong("C_S_AXI_HP1_DATA_WIDTH", "64");
89  model_param_props.addLong("C_S_AXI_HP2_ID_WIDTH", "6");
90  model_param_props.addLong("C_S_AXI_HP2_DATA_WIDTH", "64");
91  model_param_props.addLong("C_S_AXI_HP3_ID_WIDTH", "6");
92  model_param_props.addLong("C_S_AXI_HP3_DATA_WIDTH", "64");
93  model_param_props.addLong("C_M_AXI_GP0_THREAD_ID_WIDTH", "12");
94  model_param_props.addLong("C_M_AXI_GP1_THREAD_ID_WIDTH", "12");
95  model_param_props.addLong("C_NUM_F2P_INTR_INPUTS", "1");
96  model_param_props.addLong("C_DQ_WIDTH", "32");
97  model_param_props.addLong("C_DQS_WIDTH", "4");
98  model_param_props.addLong("C_DM_WIDTH", "4");
99  model_param_props.addLong("C_MIO_PRIMITIVE", "54");
100  model_param_props.addLong("C_TRACE_INTERNAL_WIDTH", "2");
101  model_param_props.addLong("C_USE_AXI_NONSECURE", "0");
102  model_param_props.addLong("C_USE_M_AXI_GP0", "1");
103  model_param_props.addLong("C_USE_M_AXI_GP1", "0");
104  model_param_props.addLong("C_USE_S_AXI_GP0", "0");
105  model_param_props.addLong("C_USE_S_AXI_GP1", "0");
106  model_param_props.addLong("C_USE_S_AXI_HP0", "1");
107  model_param_props.addLong("C_USE_S_AXI_HP1", "0");
108  model_param_props.addLong("C_USE_S_AXI_HP2", "0");
109  model_param_props.addLong("C_USE_S_AXI_HP3", "0");
110  model_param_props.addLong("C_USE_S_AXI_ACP", "0");
111  model_param_props.addLong("C_GP0_EN_MODIFIABLE_TXN", "1");
112  model_param_props.addLong("C_GP1_EN_MODIFIABLE_TXN", "1");
113  model_param_props.addString("C_IRQ_F2P_MODE", "DIRECT");
114  model_param_props.addString("C_PS7_SI_REV", "PRODUCTION");
115  model_param_props.addString("C_FCLK_CLK0_BUF", "TRUE");
116  model_param_props.addString("C_FCLK_CLK1_BUF", "TRUE");
117  model_param_props.addString("C_FCLK_CLK2_BUF", "TRUE");
118  model_param_props.addString("C_FCLK_CLK3_BUF", "FALSE");
119  model_param_props.addString("C_PACKAGE_NAME", "clg400");
120 
121  mp_impl = new processing_system7_v5_5_tlm("inst", model_param_props);
122 
123  // initialize AXI sockets
128 }
129 
131 {
132  xsc::utils::xsc_sim_manager::clean();
133 
134  delete mp_impl;
135 }
136 
design_1_processing_system7_0_0_sc::~design_1_processing_system7_0_0_sc
virtual ~design_1_processing_system7_0_0_sc()
Definition: design_1_processing_system7_0_0_sc.cpp:130
design_1_processing_system7_0_0_sc.h
design_1_processing_system7_0_0_sc::mp_impl
processing_system7_v5_5_tlm * mp_impl
Definition: design_1_processing_system7_0_0_sc.h:89
processing_system7_v5_5_tlm::S_AXI_HP0_rd_socket
xtlm::xtlm_aximm_target_socket * S_AXI_HP0_rd_socket
Definition: processing_system7_v5_5_tlm.h:197
design_1_processing_system7_0_0_sc::M_AXI_GP0_rd_socket
xtlm::xtlm_aximm_initiator_socket * M_AXI_GP0_rd_socket
Definition: design_1_processing_system7_0_0_sc.h:79
processing_system7_v5_5_tlm::M_AXI_GP0_wr_socket
xtlm::xtlm_aximm_initiator_socket * M_AXI_GP0_wr_socket
Definition: processing_system7_v5_5_tlm.h:194
processing_system7_v5_5_tlm.h
processing_system7_v5_5_tlm::M_AXI_GP0_rd_socket
xtlm::xtlm_aximm_initiator_socket * M_AXI_GP0_rd_socket
Definition: processing_system7_v5_5_tlm.h:195
design_1_processing_system7_0_0_sc::M_AXI_GP0_wr_socket
xtlm::xtlm_aximm_initiator_socket * M_AXI_GP0_wr_socket
Definition: design_1_processing_system7_0_0_sc.h:80
design_1_processing_system7_0_0_sc::S_AXI_HP0_wr_socket
xtlm::xtlm_aximm_target_socket * S_AXI_HP0_wr_socket
Definition: design_1_processing_system7_0_0_sc.h:82
processing_system7_v5_5_tlm
Definition: processing_system7_v5_5_tlm.h:133
design_1_processing_system7_0_0_sc::design_1_processing_system7_0_0_sc
design_1_processing_system7_0_0_sc(const sc_core::sc_module_name &nm)
Definition: design_1_processing_system7_0_0_sc.cpp:57
processing_system7_v5_5_tlm::S_AXI_HP0_wr_socket
xtlm::xtlm_aximm_target_socket * S_AXI_HP0_wr_socket
Definition: processing_system7_v5_5_tlm.h:196
design_1_processing_system7_0_0_sc::S_AXI_HP0_rd_socket
xtlm::xtlm_aximm_target_socket * S_AXI_HP0_rd_socket
Definition: design_1_processing_system7_0_0_sc.h:81