A physical macro is a logical function created from components of a specific device family. Physical macros are stored in macro library files with a .nmc extension. In addition to components and nets, a macro can also contain placement and routing information. It can be unplaced, partially placed, fully placed, unrouted, partially routed, or fully routed.
You can create a new macro library file in the FPGA Editor or you can save an existing design as a macro. After creating a macro, you can instantiate it in your design. When you instantiate a macro, the contents of the macro library file are copied into your design file, and the link to the macro library file no longer exists. If you edit the macro library file, any new changes are not reflected in the instantiated macro in your design file. Refer to the following figure for an illustration of instantiating a macro.
You can also instantiate a macro into a schematic drawing by entering a block in the schematic, configuring the block appropriately, and placing a reference to the .nmc file in the schematic.
This chapter describes creating, editing, and using macros in the FPGA Editor. It contains the following sections.