Intel® FPGA SDK for OpenCL™ Pro Edition: Custom Platform Toolkit User Guide
                    
                        ID
                        683085
                    
                
                
                    Date
                    3/28/2022
                
                
                    Public
                
            
                
                    
                        1. Intel® FPGA SDK for OpenCL™ Pro Edition Custom Platform Toolkit User Guide
                    
                    
                
                    
                        2. Intel® FPGA SDK for OpenCL™ Pro Edition Custom Platform Toolkit Reference Material
                    
                    
                
                    
                    
                        3. Intel FPGA SDK for OpenCL Pro Edition Custom Platform Toolkit Archives
                    
                
                    
                    
                        4. Document Revision History for Intel® FPGA SDK for OpenCL™ Pro Edition Custom Platform Toolkit User Guide
                    
                
            
        
                        
                        
                            
                            
                                1.1. Prerequisites for the Intel® FPGA SDK for OpenCL™ Pro Edition Custom Platform Toolkit
                            
                        
                            
                                1.2. Overview of the Intel® FPGA SDK for OpenCL™ Pro Edition Custom Platform
                            
                            
                        
                            
                                1.3. Custom Platform Automigration for Forward Compatibility
                            
                            
                        
                            
                                1.4. Creating an Intel® FPGA SDK for OpenCL™ Custom Platform
                            
                            
                        
                            
                            
                                1.5. Applying for the Intel® FPGA SDK for OpenCL™ Pro Edition Preferred Board Status
                            
                        
                            
                            
                                1.6. Shipping Recommendations
                            
                        
                    
                
                                    
                                    
                                        
                                        
                                            2.3.1. aocl_mmd_get_offline_info
                                        
                                        
                                    
                                        
                                        
                                            2.3.2. aocl_mmd_get_info
                                        
                                        
                                    
                                        
                                        
                                            2.3.3. aocl_mmd_open
                                        
                                        
                                    
                                        
                                        
                                            2.3.4. aocl_mmd_close
                                        
                                        
                                    
                                        
                                        
                                            2.3.5. aocl_mmd_read
                                        
                                        
                                    
                                        
                                        
                                            2.3.6. aocl_mmd_write
                                        
                                        
                                    
                                        
                                        
                                            2.3.7. aocl_mmd_copy
                                        
                                        
                                    
                                        
                                        
                                            2.3.8. aocl_mmd_set_interrupt_handler
                                        
                                        
                                    
                                        
                                        
                                            2.3.9. aocl_mmd_set_device_interrupt_handler
                                        
                                        
                                    
                                        
                                        
                                            2.3.10. aocl_mmd_set_status_handler
                                        
                                        
                                    
                                        
                                        
                                            2.3.11. aocl_mmd_yield
                                        
                                        
                                    
                                        
                                        
                                            2.3.12. aocl_mmd_shared_mem_alloc
                                        
                                        
                                    
                                        
                                        
                                            2.3.13. aocl_mmd_shared_mem_free
                                        
                                        
                                    
                                        
                                            2.3.14. aocl_mmd_program
                                        
                                        
                                        
                                    
                                        
                                        
                                            2.3.15. aocl_mmd_reprogram
                                        
                                        
                                    
                                        
                                        
                                            2.3.16. aocl_mmd_hostchannel_create
                                        
                                        
                                    
                                        
                                        
                                            2.3.17. aocl_mmd_hostchannel_destroy
                                        
                                        
                                    
                                        
                                        
                                            2.3.18. aocl_mmd_hostchannel_get_buffer
                                        
                                        
                                    
                                        
                                        
                                            2.3.19. aocl_mmd_hostchannel_ack_buffer
                                        
                                        
                                    
                                        
                                        
                                            2.3.20. aocl_mmd_host_alloc
                                        
                                        
                                    
                                        
                                        
                                            2.3.21. aocl_mmd_free
                                        
                                        
                                    
                                        
                                        
                                            2.3.22. aocl_mmd_device_alloc
                                        
                                        
                                    
                                        
                                        
                                            2.3.23. aocl_mmd_shared_alloc
                                        
                                        
                                    
                                        
                                        
                                            2.3.24. aocl_mmd_shared_migrate
                                        
                                        
                                    
                                
                            1.1. Prerequisites for the Intel® FPGA SDK for OpenCL™ Pro Edition Custom Platform Toolkit
 The    Intel® FPGA SDK for OpenCL™  Pro Edition Custom Platform Toolkit User Guide  assumes that you have prior hardware design knowledge necessary for using the Custom Platform Toolkit to create an  Intel® FPGA SDK for OpenCL™  Pro Edition Custom Platform.  
  
 
  You must have experiences in the following hardware design areas:
- Intel® Quartus® Prime Pro Edition software design with Platform Designer, HDL and Tcl
- Intel® FPGA intellectual property (IP) necessary to communicate with the physical interfaces of the board
- High speed design, timing analysis and Synopsys Design Constraints (SDC) constraints
- FPGA architecture, including clock and global routing, floorplanning, and I/O
- Team-based design (that is, incremental compilation)
You must install the Intel® Quartus® Prime Pro Edition software, the relevant device support file(s), and the SDK on your machine. Refer to the Intel® FPGA SDK for OpenCL™ Pro Edition Getting Started Guide for installation instructions.
You have the following Custom Platform design options:
- Refer to the information in this document to create a Custom Platform from the templates available in the Custom Platform Toolkit.
- Refer to the information in this document and the following documents to create a Custom Platform by modifying relevant files in the  Intel® Arria® 10 GX FPGA Development Kit Reference Platform or the  Intel® Arria® 10 SoC Development Kit Reference Platform, available with the SDK: 
    - Intel® FPGA SDK for OpenCL™ Intel® Arria® 10 GX FPGA Development Kit Reference Platform Porting Guide
- AN 807: Configuring the Intel® Arria® 10 GX FPGA Development Kit for the Intel® FPGA SDK for OpenCL™
- Intel® FPGA SDK for OpenCL™ Intel® Arria® 10 SoC Development Kit Reference Platform Porting Guide
 
   Related Information