Visible to Intel only — GUID: auc1515470932064
Ixiasoft
1. Introduction to Intel® FPGA Design Flow for Xilinx* Users
2. Technology Comparison
3. FPGA Tools Comparison
4. Xilinx* to Intel® FPGA Design Conversion
5. Conclusion
6. AN 307: Intel® FPGA Design Flow for Xilinx* Users Archives
7. Document Revision History for Intel® FPGA Design Flow for Xilinx* Users
3.3.1. Project Creation
3.3.2. Design Entry
3.3.3. IP Status
3.3.4. Design Constraints
3.3.5. Synthesis
3.3.6. Design Implementation
3.3.7. Finalize Pinout
3.3.8. Viewing and Editing Design Placement
3.3.9. Static Timing Analysis
3.3.10. Generation of Device Programming Files
3.3.11. Power Analysis
3.3.12. Simulation
3.3.13. Hardware Verification
3.3.14. View Netlist
3.3.15. Design Optimization
3.3.16. Techniques to Improve Productivity
3.3.17. Partial Reconfiguration
3.3.18. Cross-Probing in the Intel® Quartus® Prime Pro Edition Software
4.2.1.2.1. Memory Mode
4.2.1.2.2. Clocking Mode
4.2.1.2.3. Write and Read Operation Triggering
4.2.1.2.4. Read-During-Write Operation at the Same Address
4.2.1.2.5. Error Correction Code (ECC)
4.2.1.2.6. Byte Enable
4.2.1.2.7. Address Clock Enable
4.2.1.2.8. Parity Bit Support
4.2.1.2.9. Memory Initialization
4.2.1.2.10. Output Synchronous Set/Reset
Visible to Intel only — GUID: auc1515470932064
Ixiasoft
4.2.3.4. Example: Converting to the Intel® FPGA Multiply Adder IP core
The following example shows VHDL multipliers compiled in the Intel® Quartus® Prime Pro Edition Software after the conversion. The IP Catalog implements the Multiply Adder IP core by creating the mymult_add module.
The converted VHDL Code in the Intel® Quartus® Prime Pro Edition Software is:
LIBRARY ieee;
USE ieee.std_logic_1164.all;
LIBRARY work;
ENTITY test IS
port
(
clk:IN STD_LOGIC;
a: IN STD_LOGIC_VECTOR(17 downto 0);
b: IN STD_LOGIC_VECTOR(17 downto 0);
ce: IN STD_LOGIC;
sclr: IN STD_LOGIC;
p: OUT STD_LOGIC_VECTOR(35 downto 0)
);
END test;
ARCHITECTURE arch OF test IS
component mymult_add
PORT(
clock0: IN STD_LOGIC;
dataa_0: IN STD_LOGIC_VECTOR(17 downto 0);
datab_0: IN STD_LOGIC_VECTOR(17 downto 0);
ena0: IN STD_LOGIC;
sclr0: IN STD_LOGIC;
result: OUT STD_LOGIC_VECTOR(35 downto 0)
);
end component;
BEGIN
i1: mymult_add
PORT MAP(clock0 => clk,
dataa_0 => a,
datab_0 => b,
ena0 => ce,
sclr0 => sclr,
result => p);
END;