Reference Design files updated to the 2017.1 SDAccel Environment and updated for the new platform and device. 02/01/2017 2016.4 Updated document and reference design files for compatibility with SDx Environments 2016.4 release. 11/30/2016 2016.3 Initial Xilinx release. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
Beginning with the 2017.1 SDx Environments release, this reference design and the DSA IMPORTANT: it produces are compatible only with the Kintex UltraScale KCU1500 Acceleration Development Board. They are not compatible with the previous revision of the board (termed Kintex UltraScale Developer Board for Acceleration with KU115), which has different FPGA pinouts and DDR4 memory configurations.
Chapter 1: Overview Platform Features The features of the Kintex UltraScale KCU1500 Acceleration development board and the Xilinx Acceleration KCU1500 4DDR Expanded Partial Configuration platform are intended for use as a high-performance acceleration platform for the SDAccel Environment, as follows: •...
Page 7
Development Guide (UG1164) [Ref The following chapters describe the platform characteristics, the Hardware Platform, the Software Platform, implementation, as well as the installation, bring-up, and use. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
Only he logic necessary for keeping the link active and device operational, primarily the Xilinx DMA subsystem for PCI Express, basic control interfaces, and clock sources, is contained within a static “base region” floorplanned to less than 8% of the device area that cannot be used for kernel resources.
Page 9
SDAccel System Compiler flow. X-Ref Target - Figure 2-2 Figure 2-2: Device View of Implemented Platform, Showing Base and Expanded Regions Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017...
Programmable Region IP core, are configured to use address offsets and ranges that are compatible with the hardware abstraction Layer (HAL) driver provided with the SDx™ Environments installation. The kernel mode drivers for the Xilinx DMA subsystem for PCI Express are likewise provided with the SDx Environments installation.
Programmable Region for user kernels) to the four DDR4 memory controllers using an AXI4 memory-mapped 512-bit data path per instance. It also connects the Xilinx DMA subsystem for PCI Express to all four DDR4 memory controllers using an AXI4 memory-mapped 256-bit data path per instance.
The required physical locations suggest the following design partitioning that is used in the platform: • The Xilinx DMA subsystem for PCIe instance is floorplanned to the static base region of the lower SLR. • The AXI SmartConnect 1x5 (1 slave interface, 5 master interfaces) instance which...
Page 13
The combination of static base and reconfigurable expanded region partitioning, with the optimal configuration and careful floorplanning of IP instances, together facilitate the necessary controlled SLR crossing in the KU115 device to effectively utilize both SLRs. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017...
Chapter 3 Hardware Platform Introduction In this chapter, the hardware architecture of the Xilinx® Acceleration KCU1500 4DDR ® Expanded Partial Configuration platform is described from the perspective of its Vivado integrator block diagram representation, in six parts, as follows: •...
Page 15
Figure 3-1: Top-Level IP Integrator Block Diagram - Default View with Interfaces and Wires X-Ref Target - Figure 3-2 Figure 3-2: Top-level IP Integrator Block Diagram - Interface Connections Only View Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017...
PCIe block location X0Y0. The platform uses an AXI memory-mapped interface operating at 250 MHz with a 256-bit data width. The basic customization of the Xilinx DMA subsystem for PCIe IP core (herein referred to as the XDMA IP core) is shown in the following figure.
Page 17
XDMA IP customization settings. See the DMA Subsystem for PCI Express v3.0 Product Guide (PG195) [Ref 3] for more information on the XDMA IP core, its features, and customizations options. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
The DDR4 IP instances are customized to target the MT40A512M16HA-083E components on the Kintex UltraScale KCU1500 Acceleration development board, with a 512-bit data width, 32-bit address width AXI memory-mapped interface providing high-bandwidth platform fabric access to the full 4GB per channel.
Page 19
An outcome of locating the DDR4 memory controllers in the reconfigurable region is that IMPORTANT: DDR4 global memory content is lost when a new partial bitstream is downloaded. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017...
Figure 3-8: SDAccel OpenCL Programmable Region IP Core Instance and its Interfaces • The S_AXI interface is an AXI4-Lite slave interface, allowing host control of user kernels. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
Page 21
1x4 AXI Interconnect instance, which also performs domain crossing between CONTROL_CLK and CONTROL_RESET on its slave interface (Programmable Region boundary-facing) side, and DATA_CLK and DATA_RESET on its master interface (kernel-facing) side. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
Page 22
The SDAccel OpenCL Programmable Region IP instance customization Basic tab is shown in the following figure. X-Ref Target - Figure 3-10 Figure 3-10: SDAccel OpenCL Programmable Region IP Customization - Basic Tab Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
Figure 3-12, the five SmartConnect IP instances together provide both the host and the user kernels with high-performance access to the four DDR4 IP memory controllers. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
Page 24
SDAccel OpenCL Programmable Region IP (and therefore the Programmable Region) for kernel access to global memory, and is synchronous to the kernel clock, driving the aclk2 port. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017...
Page 25
The second master interface on the static base region 2x3 AXI Interconnect IP allows the management path to access all peripherals on the user path. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017...
Kintex UltraScale KCU1500 Acceleration development board flash memory programming using SPI flash IP infrastructure • Kintex UltraScale KCU1500 Acceleration development board FPGA fan speed control using memory-mapped I2C controller • AXI Firewall IP protection of the static base region hardware against potential AXI protocol violations from kernels •...
AXI-Stream FIFO for interpretation by the SDx Environments application profiling feature. AXI Register Slice instances on the control path ease automatic placement. Clocking and Reset The following sections describe clocking and reset on the Kintex UltraScale KCU1500 Acceleration development board: • Platform Clocking •...
Page 28
The XDMA, AXI4-Lite control, kernel clock, kernel clock 2, and AXI Performance Monitor clocks are all derived from the PCIe 100 MHz differential ref_clk top-level input from the Kintex UltraScale KCU1500 Acceleration development board. The following figure shows the base_clocking sub-hierarchy of the static base region.
Page 29
GPIO IP core instance named gate_pr is used to hold the reconfigurable expanded region logic, as well as flip-flops at the boundary of the static base region, in reset. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017...
Page 30
The following figure shows the pr_isolation_expanded static base region level of sub-hierarchy. X-Ref Target - Figure 3-16 Figure 3-16: Partial Reconfiguration Support Logic in pr_isolation_expanded Sub-Hierarchy Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
Software Platform Introduction The Xilinx® Acceleration KCU1500 4DDR Expanded Partial Configuration platform is a memory-mapped system with PCIe® host connectivity supported by a kernel mode DMA driver for the XDMA IP. A hardware abstraction layer (HAL) driver isolates the SDAccel™...
IP cores of the platform by using the provided kernel mode drivers. As provided, the Xilinx Acceleration KCU1500 4DDR Expanded Partial Configuration platform uses an address map compatible with other Xilinx-provided platforms, so the kernel mode drives are not specific to this platform. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017...
Page 37
C-style APIs to the runtime or other user of the driver. The HAL driver is not specific to the Xilinx Acceleration KCU1500 4DDR Expanded Partial Configuration platform. For more information about the common HAL driver for Hardware...
Use the version of Vivado included with your SDx Environments 2017.1 installation. The IMPORTANT: standard Vivado 2017.1 release is not supported when building the Xilinx Acceleration KCU1500 4DDR Expanded Partial Reconfiguration platform. There are two usage flow options for the scripts: 1.
Page 39
Implemented (placed run_impl.tcl and routed) design .dsa file for use with write_dsa.tcl SDAccel Figure 5-1: Platform Reference Design Implementation Script Usage Flow Options Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
Sets the version field value in the DSA set_property dsa.version “4.0”\ metadata. [current_project] Sets the flash_offset_address field set_property dsa.flash_offset_address\ value in the DSA metadata. “0x4000000” [current_project] Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
The following code snippet is an example: set_property DONT_TOUCH true [get_cells xcl_design_i/expanded_region] set_property HD.RECONFIGURABLE true [get_cells xcl_design_i/expanded_region] Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
Page 42
Some submodules of some of the AXI SmartConnect IP instances are constrained to the upper SLR, as described in Stacked Silicon Interconnect (SSI) Technology Support in Chapter 2. The following code snippet is an example: create_pblock pblock_upper Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
Beginning with the 2017.1 SDx Environments release, this reference design and the IMPORTANT: DSA it produces are compatible only with the new Kintex UltraScale KCU1500 Acceleration Development Board. They are not compatible with the previous revision of the board (termed Kintex UltraScale Developer Board for Acceleration with KU115), which has different FPGA pinouts and DDR4 memory configurations.
[Ref Bring-Up Tests With the Kintex UltraScale KCU1500 Acceleration development board installed, DSA programmed, and the xbsak utility indicating compatibility and readiness of the device, it can be useful to compile and execute bring-up tests that use the SDAccel System Compiler flow.
Page 47
Chapter 6: Install, Bring-Up, and Use The following information can also be helpful when targeting the xilinx_kcu1500_4ddr-xpr_4_0.dsa from the SDx Environments installation, or as built from the Xilinx Acceleration KCU1500 4DDR Expanded Partial Configuration platform reference design. Device Identification The vendor, build, name, version (VBNV) identifier for the DSA is xilinx:kcu1500:4ddr-xpr:4.0, so an XOCC script (which invokes the SDAccel System...
See the SDAccel Environment User Guide (UG1023) [Ref 4] and the SDAccel Environment Optimization Guide (UG1027) [Ref 5] for kernel frequency specification, RTL kernels, and related topics. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
Page 49
150 MHz, you should specify such a frequency target: --kernel_frequency 150 In this way, kernel developers can decouple preliminary hardware operation from optimization of kernel code to achieve higher frequencies. Kintex UltraScale KCU1500 Acceleration Development Board Send Feedback UG1234 (v2017.1) June 20, 2017 www.xilinx.com...
Topics include design assistance, advisories, and troubleshooting tips. Documentation Navigator and Design Hubs Xilinx Documentation Navigator provides access to Xilinx documents, videos, and support resources, which you can filter and search to find information. To open the Xilinx Documentation Navigator (DocNav): ® •...
Xilinx’s Terms of Sale which can be viewed at https://www.xilinx.com/legal.htm#tos; IP cores may be subject to warranty and support terms contained in a license issued to you by Xilinx. Xilinx products are not designed or intended to be fail-safe or for use in any application requiring fail-safe performance;...
Need help?
Do you have a question about the Kintex UltraScale KCU1500 and is the answer not in the manual?
Questions and answers