16.1.11 Post-Layout Macros
(Ask a Question)16.1.11.1 GB
(Ask a Question)It is a Post-layout macro that stands for Global Buffer. The global clock network is composed of global buffers (GBs) for clock distribution. GBs distribute clocks to the left/right half of the fabric through vertical clock stripes. Each GB drives an independent half-chip global clock (GCLK). Two GBs—one from each half, are instantiated by the Libero SoC PolarFire to distribute a clock to the entire FPGA fabric. There are a total of 24 full-chip global signals and 48 half-chip global signals that may be used in a design. The half-chip globals can be driven by up to 24 fabric routed signals. Clocks driven from regular I/Os, internally generated clocks, and high fan-out signals such as resets can be routed to GBs.
An | ENn | q (internal signal) | YNn | YSn |
---|---|---|---|---|
1 | 0 | 1 | 1 | 1 |
1 | 1 | 0 | 1 | 1 |
0 | X | q | !q | !q |
16.1.11.2 RGB
(Ask a Question)It is a Post-layout macro. Each GB drives row global buffers (RGBs) present on the vertical clock stripes to reach the logic sectors. Each RGB selects a global clock, a regional clock, or a fabric routed clock to drive the logic sectors located on the left or right side of the vertical clock stripe. RGBs are situated on the vertical stripes of the global network architecture inside the FPGA fabric. The global signals from the GBs are routed to the RGBs. Each RGB is independent and can be driven by fabric routing in addition to being driven by GBs. This facilitates the use of RGBs to drive regional clocks spanning a small fabric area, such as the the clock network for SERDES.
16.1.11.3 CC_CONFIG
(Ask a Question)The CC_CONFIG macro is a Post-layout macro that is responsible for generating the Carry bit for each ARI1_CC cell in the cluster. CI and CO are the carry-in and carry-out, respectively, to the cell. The intermediate carry-bits are given by CC[11:0]. The functionality of the CC_CONFIG is evaluating CC using CC[n] = !Px!Y3+PxCC[n-1] where, CC[-1] is CI and CC[12] is CO.
16.1.11.4 CFG0
(Ask a Question)Post-layout macro that is a zero input LUT with output tied to either 0 or 1 as per INIT.
16.1.11.5 CRN_INT
(Ask a Question)The CRN_INT cell is a Post-layout macro that routes clocks from the fabric to corner cells (PLL, DLL).
A | Y |
---|---|
0 | 0 |
1 | 1 |
16.1.11.6 ICB_INT
(Ask a Question)The ICB_INT cell is a Post-layout macro that routes clocks from fabric to the Interface Clock Block (ICB).
16.1.11.7 ICB_CLKINT
(Ask a Question)The ICB_CLKINT cell is a Post-layout macro that routes clocks from the Interface Clock Block (ICB) to global buffers.
16.1.11.8 HS_IO_CLK
(Ask a Question)High-speed I/O bank clock networks are Post-layout macros that are integrated into I/O banks and distribute clocks along the entire I/O bank with low-skew. These are used to clock data in and out of the I/O logic while implementing the high-speed interfaces.
16.1.11.9 CFG1A_TEST
(Ask a Question)A Post-layout macro that the user can see in NLV. It is remapped to BUFF macros.
16.1.11.10 CFG1B_TEST
(Ask a Question)A Post-layout macro that the user can see in NLV. It is remapped to BUFF macros.
16.1.11.11 CFG1C_TEST
(Ask a Question)A Post-layout macro that the user can see in NLV. It is remapped to BUFF macros.
16.1.11.12 CFG1D_TEST
(Ask a Question)A Post-layout macro that the user can see in NLV. It is remapped to BUFF macros.
16.1.11.13 CFG1A
(Ask a Question)A Post-layout macro used to implement a buffer. Output Y= f(A).
16.1.11.14 CFG1B
(Ask a Question)A Post-layout macro used to implement a buffer. Output Y= f(B).
16.1.11.15 CFG1C
(Ask a Question)A Post-layout macro used to implement a buffer. Output Y= f(C).
16.1.11.16 CFG1D
(Ask a Question)A Post-layout macro used to implement a buffer. Output Y= f(D).
16.1.11.17 CFG4A
(Ask a Question)Post-layout macro used to implement any 4-input combinational logic function. Output Y is dependent on the INIT string parameter and the value of A. The INIT string parameter is 16 bits wide. Refer to CFG4 macro for more details.
16.1.11.18 CFG4_ROM
(Ask a Question)Post-layout macro used to implement any 4-input combinational logic function. Output Y is dependent on the INIT string parameter and the value of A. The INIT string parameter is 16 bits wide. Refer to CFG4A macro for more details.
16.1.11.19 CFG4_IP_ABCD
(Ask a Question)Post-layout macro used to implement any 4-input combinational logic function. Output Y is dependent on the INIT string parameter and the value of A, B, C, and D. The INIT string parameter is 16 bits wide. It has 3 additional outputs IPB, IPC, and IPD and those are inverter outputs for B, C, and D inputs, respectively. Refer to CFG4 macro for more details.
16.1.11.20 RAM64x12_IP
(Ask a Question)Post-layout macro called within RAM64x12. Refer to RAM64x12 macro for more details. The RAM64x12 macro is designed by using pipeline register and RAM64x12_IP macro.
16.1.11.21 RAM1K20_IP
(Ask a Question)Post-layout macro for RAM1K20. Refer to RAM1K20 macro for more details. The RAM1K20 macro is designed by using pipeline register and RAM1K20_IP macro.
16.1.11.22 MACC _IP
(Ask a Question)It is the Post-layout macro for Multiply and Accumulate (MACC).
16.1.11.23 IOIN_IB
(Ask a Question)Buffer macro available in the post-layout netlist only.
YIN | Y |
---|---|
Z | X |
0 | 0 |
1 | 1 |
16.1.11.24 IOIN_IB_E
(Ask a Question)Buffer macro available in the post-layout netlist only. See IOIN_IB for more information.
16.1.11.25 IOIN_IB_E_ODT
(Ask a Question)Buffer macro available in the post-layout netlist with an additional ODT input.
16.1.11.26 IOTRI_OB_EB
(Ask a Question)The I/O feed through macro is available in the post-layout netlist only.
D/E | DOUT/EOUT |
---|---|
0 | 0 |
1 | 1 |
16.1.11.27 IOBI_IB_OB_EB
(Ask a Question)The I/O feed through macro is available in the post-layout netlist only.
D/E/YIN | DOUT/EOUT/Y |
---|---|
0 | 0 |
1 | 1 |
16.1.11.28 IO_DIFF
(Ask a Question)The I/O differential macro is available in the post-layout netlist (place holder to reserve the N location).
16.1.11.29 IOPAD_IN
(Ask a Question)Input I/O macro is available in the post-layout netlist only.
PAD | Y, Y_HW |
---|---|
Z | X |
0 | 0 |
1 | 1 |
16.1.11.30 IOPAD_TRI
(Ask a Question)Tri-state output buffer is available in the post-layout netlist only.
D | E | PAD |
---|---|---|
X | 0 | Z |
0 | 1 | 0 |
1 | 1 | 1 |
16.1.11.31 IOPAD_BI
(Ask a Question)The I/O output bypass macro is available in the post-layout netlist only.
MODE | E | D | PAD | Y | Y_HW |
---|---|---|---|---|---|
OUTPUT | 1 | D | D | D | D |
INPUT | 0 | X | Z | X | X |
INPUT | 0 | X | PAD | PAD | PAD |
16.1.11.32 IOPADP_IN
(Ask a Question)The I/O PAD input macro is available in the post-layout netlist only.
PADP | N2PIN_P | IOUT_P | IOUT_HW_P |
---|---|---|---|
Z | X | X | X |
0 | X | 0 | 0 |
1 | X | 1 | 1 |
16.1.11.33 IOPADN_IN
(Ask a Question)The I/O PAD input macro is available in the post-layout netlist only.
PAD_P | N2POUT_P |
---|---|
0 | 1 |
1 | 0 |
16.1.11.34 IOPADP_TRI
(Ask a Question)The I/O PAD tri-state output macro is available in the post-layout netlist only.
OIN_P | EIN_P | PAD_P |
---|---|---|
X | 0 | Z |
OIN_P | 1 | OIN_P |
16.1.11.35 IOPADN_TRI
(Ask a Question)The I/O PAD tri-state output macro is available in the post-layout netlist only.
OIN_P | EIN_P | PAD_P |
---|---|---|
X | 0 | Z |
0 | 1 | 1 |
1 | 1 | 0 |
16.1.11.36 IOPADP_BI
(Ask a Question)The I/O PAD bidirectional macro is available in the post-layout netlist only.
MODE | EIN_P | OIN_P | PAD_P | N2PIN_P | IOUT_P | OUT_HW_P |
---|---|---|---|---|---|---|
OUTPUT | 1 | 0 | 0 | 1 | 0 | 0 |
OUTPUT | 1 | 1 | 1 | 0 | 1 | 1 |
INPUT | 0 | X | Z | Z | X | X |
INPUT | 0 | X | 0 | 0 | X | X |
INPUT | 0 | X | 1 | 1 | X | X |
INPUT | 0 | X | 0 | 1 | 0 | 0 |
INPUT | 0 | X | 1 | 0 | 1 | 1 |
16.1.11.37 IOPADN_BI
(Ask a Question)The I/O PAD bidirectional macro is available in the post-layout netlist only.
MODE | EIN_P | OIN_P | PAD_P | N2OUT_P |
---|---|---|---|---|
OUTPUT | 1 | 1 | 0 | 0 |
OUTPUT | 1 | 0 | 1 | 1 |
INPUT | 0 | X | Z | X |
INPUT | 0 | X | 0 | X |
INPUT | 0 | X | 1 | X |
INPUT | 0 | X | 0 | 0 |
INPUT | 0 | X | 1 | 1 |
16.1.11.38 IOPADP_IN_MIPI
(Ask a Question)The differential I/O PAD input macro with MIPI low-power escape support available in the post-layout netlist only.
PAD | Y |
---|---|
0 | 0 |
1 | 1 |
16.1.11.39 IOPAD_FEEDBACK
(Ask a Question)It is a Post-layout macro that is a bidirectional buffer. Refer to BIBUF for more information.
16.1.11.40 IOPADP_FEEDBACK
(Ask a Question)The I/O PAD output macro with the bidirectional input feedback enabled. It is available in the post-layout netlist only.
16.1.11.41 IOPADN_FEEDBACK
(Ask a Question)It is a Post-layout macro similar to IOPAD_FEEDBACK except that input D is inverted inside.
16.1.11.42 IOREG
(Ask a Question)A single post-layout macro for IOINFF, IOUTFF, and IOEFF. The IOD block includes registers for data-in, data-out, and output enable signals. The input registers (IOINFF) provide the registered version of the input signals from the IOA to the FPGA fabric. The output registers (IOUTFF) provide the registered version of the output signals from the FPGA fabric to the IOA. The output enable register (IOENFF) acts as a control signal for the output if the I/O is configured as tri-stated or bidirectional. These registers in IOD blocks are similar to the D-type flip-flops available in fabric logic elements.
16.1.11.43 PLL_IP
(Ask a Question)16.1.11.44 PLL_DELAY
(Ask a Question)It is a Post-layout macro. Each PLL has a programmable delay line that can be configured in the reference clock path or feedback clock path. For PLLs, adding delay in the reference clock path enables clock delay, and adding delay in the feedback clock path enables clock advancement with respect to the reference clock. The PLL must be configured in external feedback mode to add the delay line in the feedback path.
16.1.11.45 XCVR_APB_LINK
(Ask a Question)Post-layout macro used to access a transceiver quad memory map using the APB Link protocol.
16.1.11.46 PFSOC_SCSM_IP
(Ask a Question)It is a Post-layout macro that has similar functionality as of
PFSOC_SCSM
. The only difference is that the input is inverted. See
the PFSOC_SCSM macro for
more information.