Name Strings
SPV_ALTERA_fpga_memory_attributes
Contact
To report problems with this extension, please open a new issue at:
Contributors
-
Ben Ashbaugh, Intel
-
Mohammad Fawaz, Intel
-
Joe Garvey, Intel
-
Michael Kinsner, Intel
-
Julian Packer, Intel
-
Artem Radzikhovksyy, Intel
Notice
Copyright (c) 2019-2023 Intel Corporation. All rights reserved.
Status
Final draft
Version
Last Modified Date |
2023-10-03 |
Revision |
I |
Dependencies
This extension is written against the SPIR-V Specification, Version 1.5 Revision 2.
This extension requires SPIR-V 1.0.
Overview
This extension adds decorations that influence compiler generation of memory structures 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_memory_attributes"
New capabilities
This extension introduces a new capability:
FPGAMemoryAttributesALTERA
New Decorations
Decorations added under the FPGAMemoryAttributes capability:
RegisterALTERA MemoryALTERA NumbanksALTERA BankwidthALTERA MaxPrivateCopiesALTERA SinglepumpALTERA DoublepumpALTERA MaxReplicatesALTERA SimpleDualPortALTERA MergeALTERA BankBitsALTERA ForcePow2DepthALTERA StridesizeALTERA WordsizeALTERA TrueDualPortALTERA
Token Number Assignments
FPGAMemoryAttributesALTERA |
5824 |
RegisterALTERA |
5825 |
MemoryALTERA |
5826 |
NumbanksALTERA |
5827 |
BankwidthALTERA |
5828 |
MaxPrivateCopiesALTERA |
5829 |
SinglepumpALTERA |
5830 |
DoublepumpALTERA |
5831 |
MaxReplicatesALTERA |
5832 |
SimpleDualPortALTERA |
5833 |
MergeALTERA |
5834 |
BankBitsALTERA |
5835 |
ForcePow2DepthALTERA |
5836 |
StridesizeALTERA |
5883 |
WordsizeALTERA |
5884 |
TrueDualPortALTERA |
5885 |
Modifications to the SPIR-V Specification, Version 1.5
Decoration
Modify Section 3.20, Decoration, adding these rows to the Decoration table:
| Decoration | Extra Operands | Enabling Capabilities | ||
|---|---|---|---|---|
5825 |
RegisterALTERA |
FPGAMemoryAttributesALTERA |
||
5826 |
MemoryALTERA Supported strings:
|
Literal String |
FPGAMemoryAttributesALTERA |
|
5827 |
NumbanksALTERA |
Literal Number |
FPGAMemoryAttributesALTERA |
|
5828 |
BankwidthALTERA |
Literal Number |
FPGAMemoryAttributesALTERA |
|
5829 |
MaxPrivateCopiesALTERA |
Literal Number |
FPGAMemoryAttributesALTERA |
|
5830 |
SinglepumpALTERA |
FPGAMemoryAttributesALTERA |
||
5831 |
DoublepumpALTERA |
FPGAMemoryAttributesALTERA |
||
5832 |
MaxReplicatesALTERA |
Literal Number |
FPGAMemoryAttributesALTERA |
|
5833 |
SimpleDualPortALTERA |
FPGAMemoryAttributesALTERA |
||
5834 |
MergeALTERA |
Literal String |
Literal String |
FPGAMemoryAttributesALTERA |
5835 |
BankBitsALTERA |
Literal Number, Literal Number, … |
FPGAMemoryAttributesALTERA |
|
5836 |
ForcePow2DepthALTERA |
Literal Number |
FPGAMemoryAttributesALTERA |
|
5883 |
StridesizeALTERA |
Literal Number |
FPGAMemoryAttributesALTERA |
|
5884 |
WordsizeALTERA |
Literal Number |
FPGAMemoryAttributesALTERA |
|
5885 |
TrueDualPortALTERA |
FPGAMemoryAttributesALTERA |
||
Capability
Modify Section 3.31, Capability, adding a row to the Capability table:
| Capability | Implicitly Declares | |
|---|---|---|
5824 |
FPGAMemoryAttributesALTERA |
|
Validation Rules
None.
Issues
None.
Revision History
| Rev | Date | Author | Changes |
|---|---|---|---|
A |
2019-02-27 |
Joe Garvey |
Initial public release |
B |
2019-03-18 |
Joe Garvey |
Added MaxconcurrencyALTERA decoration. Fixed NumbanksALTERA capitalization |
C |
2019-04-23 |
Joe Garvey |
Added SinglepumpALTERA and DoublepumpALTERA decorations |
D |
2019-06-06 |
Joe Garvey |
Changed the name of MaxconcurrencyALTERA to MaxPrivateCopiesALTERA |
E |
2019-06-18 |
Joe Garvey |
Added the MaxReplicatesALTERA, SimpleDualPortALTERA, and MergeALTERA decorations |
F |
2019-12-18 |
Julian Packer |
Added the BankBitsALTERA decoration |
G |
2020-02-06 |
Mohammad Fawaz |
Added the ForcePow2DepthALTERA decoration |
H |
2023-07-26 |
Artem Radzikhovskyy |
Added StridesizeALTERA, WordsizeALTERA, TrueDualPortALTERA decorations |
I |
2023-10-03 |
Artem Radzikhovskyy |
Definition clarifications; Defined supported strings in MemoryALTERA |