Importance of .cxf Files in SmartDesign

SmartDesign components can be instantiated in another SmartDesign component by dragging and dropping them into the SmartDesign canvas. The low-level SmartDesign components in the hierarchy must be imported before instantiating in a new project. This is done by selecting Import > Components in the File menu. The HDL and corresponding cores associated with these components must also be imported and configured before instantiating in the new SmartDesign component. If you just import the .cxf file and do not import files corresponding to the low-level instances, you will see those instances highlighted in red and you will be informed of missing components. See the following example figure.

Figure 1. Errors While Importing SmartDesign Components with HDL Files and IP Cores

Using .cxf files is important in the following cases:

Using .cxf files provides the following advantages:
See the following design example.
Figure 2. SmartDesign Example for Complex Multiplication

The example design above has clocking blocks, multiplier blocks, and adder blocks. You could separate this design into two separate designs— complex_real and complex_imaginary— in either of the following ways:

To save the original project with a new name, from the Project menu, select the Save As option. Click OK after entering the new project name.

To change the name of the SmartDesign component, right click the component in the Design Hierarchy and choose Rename Component.

To create a SmartDesign component for calculating the real part of a complex multiplication, remove the blocks that are not necessary for calculating real part along with the unused ports. This eliminates many manual connections and reduces generation time. Real designs may not be as simple as this, but this type of dividing saves time while preserving the connections between existing blocks.

See the following example figures.

Figure 3. SmartDesign Component for Real Part Calculation of Complex Multiplication
Figure 4. SmartDesign Component for Imaginary Part Calculation of Complex Multiplication