5.3.2.2 Port List

Table 5-17. MACC_PA_BC_ROM Pin Descriptions
Port NameDirectionType1PolarityDescription
DOTPInputStaticActive highDOTP mode.

When DOTP = 1, MACC_PA_BC_ROM block performs DOTP of two pairs of 9-bit operands.

SIMD must not be 1.

C[8:0] must be connected to CARRYIN.

SIMDInputStaticActive highSIMD mode

When SIMD = 1, MACC_PA_BC_ROM block performs dual independent multiplication of two pairs of 9-bit operands.

DOTP must not be 1

ARSHFT17 must be 0

D[8:0] must be 0

C[17:0] must be 0

E[17:0] must be 0. For information on how operand E is obtained from P, CDIN or 0, see Table 3-3.

OVFL_CARRYOUT_SELInputStaticActive highGenerate OVERFLOW or CARRYOUT with result P.

OVERFLOW when OVFL_CARRYOUT_SEL = 0 CARRYOUT when OVFL_CARRYOUT_SEL = 1

CLKInputDynamicRising edgeClock for A, B, C, CARRYIN, D, P, OVFL_CARRYOUT, ARSHFT17, CDIN_FDBK_SEL, PASUB, and SUB registers.
AL_NInputDynamicActive lowAsynchronous load for A, B, P, OVFL_CARRYOUT, ARSHFT17, CDIN_FDBK_SEL, PASUB, and SUB registers. Connect to 1, if none are registered.

When asserted, A, B, P, and OVFL_CARRYOUT registers are loaded with zero, while the ARSHFT17, CDIN_FDBK_SEL, PASUB, and SUB registers are loaded with the complementary value of the respective _AD_N.

USE_ROMInputStatic (virtual)Active highSelection for operand A.

When USE_ROM = 0, select input data A.

When USE_ROM = 1, select ROM data at ROM_ADDR.

ROM_ADDR[3:0]InputDynamicActive highAddress of ROM data for operand A when USE_ROM = 1
A[17:0]InputDynamicActive highInput data for operand A when USE_ROM = 0
A_BYPASSInputStaticActive highBypass data A registers. Connect to 1 if not registered. For more information, see Table 5-14.
A_SRST_NInputDynamicActive lowSynchronous reset for data A registers. Connect to 1 if not registered. For more information, see Table 5-14.
A_ENInputDynamicActive highEnable for data A registers. Connect to 1 if not registered. For more information, see Table 5-14.
B[17:0]InputDynamicActive highInput data B to pre-adder with data D
B_BYPASSInputStaticActive highBypass data B registers. Connect to 1 if not registered. For more information, see Table 5-14.
B_SRST_NInputDynamicActive lowSynchronous reset for data B registers. Connect to 1 if not registered. For more information, see Table 5-14.
B_ENInputDynamicActive highEnable for data B registers. Connect to 1 if not registered. For more information, see Table 5-14.
B2[17:0]OutputDynamicActive highPipelined output of input data B. Result P must be floating when B2 is used.
B2_BYPASSInputStaticActive highBypass data B2 registers. Connect to 1 if not registered. For more information, see Table 5-14.
B2_SRST_NInputDynamicActive lowSynchronous reset for data B2 registers. Connect to 1 if not registered. For more information, see Table 5-14.
B2_ENInputDynamicActive highEnable for data B2 registers. Connect to 1 if not registered. For more information, see Table 5-14.
BCOUT[17:0]OutputCascadeActive highCascade output of B2. Value of BCOUT is the same as B2. The entire bus must either be dangling or drive an entire B input of another MACC_PA or MACC_PA_BC_ROM block.
D[17:0]InputDynamicActive highInput data D to pre-adder with data B.

When SIMD = 1, connect D[8:0] to 0.

D_BYPASSInputStaticActive highBypass data D registers. Connect to 1 if not registered. For more information, see Table 5-15.
D_ARST_NInputDynamicActive lowAsynchronous reset for data D registers. Connect to 1 if not registered. For more information, see Table 5-15.
D_SRST_NInputDynamicActive lowSynchronous reset for data D registers. Connect to 1 if not registered. For more information, see Table 5-15.
D_ENInputDynamicActive highEnable for data D registers. Connect to 1 if not registered. For more information, see Table 5-15.
CARRYINInputDynamicActive highCARRYIN for input data C
C[47:0]InputDynamicActive highInput data C.

When DOTP = 1, connect C[8:0] to CARRYIN.

When SIMD = 1, connect C[8:0] to 0.

C_BYPASSInputStaticActive highBypass CARRYIN and C registers. Connect to 1 if not registered. For more information, see Table 5-15.
C_ARST_NInputDynamicActive lowAsynchronous reset for CARRYIN and C registers. Connect to 1 if not registered. For more information, see Table 5-15.
C_SRST_NInputDynamicActive lowSynchronous reset for CARRYIN and C registers. Connect to 1 if not registered. For more information, see Table 5-15.
C_ENInputDynamicActive highEnable for CARRYIN and C registers. Connect to 1 if not registered. For more information, see Table 5-15.
CDIN[47:0]InputCascadeActive highCascaded input for operand E.

The entire bus must be driven by an entire

CDOUT of another MACC_PA or MAC_PA_BC_ROM block. In Dot-product mode, the driving CDOUT must also be generated by a MACC_PA or MAC_PA_BC_ROM block in Dot-product mode. For more information about how CDIN is propagated to operand E, see Table 3-3.

P[47:0]OutputActive highResult data. For more information, see Table 3-3. B2 output must be floating when P is used.
OVFL_CARRYOUTOutputActive highOVERFLOW or CARRYOUT. For more information, see Table 3-2.
P_BYPASSInputStaticActive highBypass P and OVFL_CARRYOUT registers. Connect to 1 if not registered. For more information, see Table 5-14.
P_SRST_NInputDynamicActive lowSynchronous reset for P and OVFL_CARRYOUT registers. Connect to 1 if not registered. For more information, see Table 5-14.
P_ENInputDynamicActive highEnable for P and OVFL_CARRYOUT registers. Connect to 1 if not registered. For more information, see Table 5-14.
CDOUT[47:0]OutputCascadeActive highCascade output of result P. For more information, see Table 3-4.

Value of CDOUT is the same as P. The entire bus must either be dangling or drive an entire CDIN of another MACC_PA or MAC_PA_BC_ROM block in cascaded mode.

PASUBInputDynamicActive highSubtract operation for pre-adder of B and D
PASUB_BYPASSInputStaticActive highBypass PASUB register. Connect to 1 if not registered. For more information, see Table 5-13.
PASUB_AD_NInputStaticActive lowAsynchronous load data for PASUB register. For more information, see Table 5-13.
PASUB_SL_NInputDynamicActive lowSynchronous load for PASUB register. Connect to 1 if not registered. For more information, see Table 5-13.
PASUB_SD_NInputStaticActive lowSynchronous load data for PASUB register. For more information, see Table 5-13.
PASUB_ENInputDynamicActive highEnable for PASUB register. Connect to 1 if not registered. For more information, see Table 5-13.
CDIN_FDBK_SEL[1:0]InputDynamicActive highSelect CDIN, P or 0 for operand E. For more information, see Table 3-3.
CDIN_FDBK_SEL_BYPASSInputStaticActive highBypass CDIN_FDBK_SEL register. Connect to 1 if not registered. For more information, see Table 5-13.
CDIN_FDBK_SEL_AD_N [1:0]InputStaticActive lowAsynchronous load data for CDIN_FDBK_SEL register. For more information, see Table 5-13.
CDIN_FDBK_SEL_SL_NInputDynamicActive lowSynchronous load for CDIN_FDBK_SEL register. Connect to 1 if not registered. For more information, see Table 5-13.
CDIN_FDBK_SEL_SD_N [1:0]InputStaticActive lowSynchronous load data for CDIN_FDBK_SEL register. For more information, see Table 5-13.
CDIN_FDBK_SEL_ENInputDynamicActive highEnable for CDIN_FDBK_SEL register. Connect to 1 if not registered. For more information, see Table 5-13.
ARSHFT17InputDynamicActive highArithmetic right-shift for operand E.

When asserted, a 17-bit arithmetic right-shift is performed on operand E. For more information about how operand E is obtained from P, CDIN or 0, see Table 3-3.

When SIMD = 1, ARSHFT17 must be 0.

ARSHFT17_BYPASSInputStaticActive highBypass ARSHFT17 register. Connect to 1, if not registered. For more information, see Table 5-13.
ARSHFT17_AD_NInputStaticActive lowAsynchronous load data for ARSHFT17 register. For more information, see Table 5-13.
ARSHFT17_SL_NInputDynamicActive lowSynchronous load for ARSHFT17 register. Connect to 1 if not registered. For more information, see Table 5-13.
ARSHFT17_SD_NInputStaticActive lowSynchronous load data for ARSHFT17 register. For more information, see Table 5-13.
ARSHFT17_ENInputDynamicActive highEnable for ARSHFT17 register. Connect to 1 if not registered. For more information, see Table 5-13.
SUBInputDynamicActive highSubtract operation
SUB_BYPASSInputStaticActive highBypass SUB register. Connect to 1 if not registered. For more information, see Table 5-13.
SUB_AD_NInputStaticActive lowAsynchronous load data for SUB register. For more information, see Table 5-13.
SUB_SL_NInputDynamicActive lowSynchronous load for SUB register. Connect to 1 if not registered. For more information, see Table 5-13.
SUB_SD_NInputStaticActive lowSynchronous load data for SUB register. For more information, see Table 5-13.
SUB_ENInputDynamicActive highEnable for SUB register. Connect to 1 if not registered. For more information, see Table 5-13.
Note: (1) Static inputs are defined at design time and need to be tied to 0 or 1.