Contributors
-
Jessica Davies, Intel
-
Joe Garvey, Intel
-
Ajaykumar Kannan, Intel
-
Mike Kinsner, Intel
-
Shuo Niu, Intel
Dependencies
This extension is written against the SPIR-V Specification, Version 1.5 Revision 4.
This extension requires SPIR-V 1.0.
Overview
This extension adds a decoration to request that math operations be implemented using Digital Signal Processing (DSP) blocks or soft logic, on an FPGA target.
Extension Name
To use this extension within a SPIR-V module, the following OpExtension must be present in the module:
OpExtension "SPV_ALTERA_fpga_dsp_control"
New Decorations
This extension adds the following decoration under the FPGADSPControlALTERA capability:
MathOpDSPModeALTERA
Modifications to the SPIR-V Specification, Version 1.5
Decoration
Modify Section 3.20, Decoration, adding the following rows to the Decoration table:
| Decoration | Extra Operands | Enabling Capabilities | ||
|---|---|---|---|---|
5909 |
MathOpDSPModeALTERA Mode is a 32-bit unsigned integer type scalar. Propagate is a 32-bit unsigned integer type scalar. If Mode is equal to 0 it indicates a request that math operations be implemented using soft logic and/or DSP blocks according to default implementation-defined heuristics. If Mode is equal to 1 it indicates a request that math operations be implemented using soft logic. If Mode is equal to 2 it indicates a request that math operations be implemented using DSP blocks. If Propagate is equal to 0, the Mode request applies to math operations in this function F only, and does not extend to math operations executed as part of function calls made by F. If Propagate is equal to 1, the Mode request applies to math operations in this function F, and to all math operations executed as part of functions called (transitively) by F, unless a called function G has a MathOpDSPModeALTERA decoration. The decoration on G takes precedence for G and all functions called (transitively) by G, i.e., the Mode request from F does not apply to G nor functions called (transitively) by G. If Propagate is equal to 2, the Mode request applies to all math operations in this function F, and to all math operations executed as part of function calls made (transitively) by F, overriding any MathOpDSPModeALTERA on the called functions. |
Literal |
Literal |
FPGADSPControlALTERA |