Skip to content

Commit f2af7ae

Browse files
authored
Documentation updates. (#3)
1 parent 5948fdf commit f2af7ae

1 file changed

Lines changed: 32 additions & 32 deletions

File tree

documentation/spec_documentation.md

Lines changed: 32 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@ Description: top level element which holds information about the ISA specificati
3535
List of child elements:
3636
| # | Element | XML element name | Description |
3737
| -- | ---------------------------- | ---------------- | - |
38-
| 1. | Document | [\<Document\>](#document-element) | XML document related information. |
39-
| 2. | Instruction Set Architecture | [\<ISA\>](#isa-element) | ISA related information. |
38+
| 1. | Document | [\<Document\>](#document) | XML document related information. |
39+
| 2. | Instruction Set Architecture | [\<ISA\>](#isa) | ISA related information. |
4040

4141
### \<Document\>
4242
Hierarchy: \<Spec\>**\<Document\>**
@@ -59,12 +59,12 @@ Description: contains ISA related information.
5959
List of child elements:
6060
| # | Element | XML element name | Description|
6161
| - | ------------- | ---------------- | - |
62-
| 1. | Architecture | [\<Architecture\>](#architecture-element) | Architecture-specific meta data. |
63-
| 2. | Instructions | [\<Instructions\>](#instructions-element) | Lists all instructions in the architecture. This is the core element of the specification. Every instruction references other XML elements. Examples of provided information by this element: different ways to encode the instruction, the type of operands, the data format of the operand, etc. |
64-
| 3. | Encodings | [\<Encodings\>](#encodings-element) | Lists all encodings supported by the architecture. Examples of the provided information by this element: instruction sizes, fields of the binary instruction, general description of the encoding. |
65-
| 4. | Data formats | [\<DataFormats\>](#dataformats-element) | Lists all data formats in the architecture. It provides additional information on how the values in the registers should be treated. This element is referenced by the instruction element. Examples of provided information by this element: is the value integer or float? If it is float where is the mantissa, exponent and sign? |
66-
| 5. | Operand types | [\<OperandTypes\>](#operandtypes-element) | Lists all operand types in the architecture. The sub-elements of this element are referenced by an instruction element. It provides information on the types of the operands used by the instruction. Examples of provided information are: is the operand a scalar or a vector register? What is the name of this operand when represented in assembly?|
67-
| 6. | Functional groups | [\<FunctionalGroups\>](#functionalgroups-element) | Lists all functional groups in the architecture. A function group provides high-level classification of the instructions, such as: vector memory, vector ALU, scalar memory, etc. |
62+
| 1. | Architecture | [\<Architecture\>](#architecture) | Architecture-specific meta data. |
63+
| 2. | Instructions | [\<Instructions\>](#instructions) | Lists all instructions in the architecture. This is the core element of the specification. Every instruction references other XML elements. Examples of provided information by this element: different ways to encode the instruction, the type of operands, the data format of the operand, etc. |
64+
| 3. | Encodings | [\<Encodings\>](#encodings) | Lists all encodings supported by the architecture. Examples of the provided information by this element: instruction sizes, fields of the binary instruction, general description of the encoding. |
65+
| 4. | Data formats | [\<DataFormats\>](#dataformats) | Lists all data formats in the architecture. It provides additional information on how the values in the registers should be treated. This element is referenced by the instruction element. Examples of provided information by this element: is the value integer or float? If it is float where is the mantissa, exponent and sign? |
66+
| 5. | Operand types | [\<OperandTypes\>](#operandtypes) | Lists all operand types in the architecture. The sub-elements of this element are referenced by an instruction element. It provides information on the types of the operands used by the instruction. Examples of provided information are: is the operand a scalar or a vector register? What is the name of this operand when represented in assembly?|
67+
| 6. | Functional groups | [\<FunctionalGroups\>](#functionalgroups) | Lists all functional groups in the architecture. A function group provides high-level classification of the instructions, such as: vector memory, vector ALU, scalar memory, etc. |
6868

6969
### \<Architecture\>
7070
Hierarchy: \<Spec\>\<ISA\>**\<Architecture\>**
@@ -86,7 +86,7 @@ Description: lists all instructions in the architecture. This is the core elemen
8686
List of child elements:
8787
| # | Element | XML element name | Description|
8888
| -- | ---------------------- | ---------------- | - |
89-
| 1. | Instruction (singular) | [\<Instruction\>](#instruction-element) | Information about a single instruction in this architecture.|
89+
| 1. | Instruction (singular) | [\<Instruction\>](#instruction) | Information about a single instruction in this architecture.|
9090

9191
### \<Instruction\>
9292
Hierarchy: \<Spec\>\<ISA\>\<Instructions\>**\<Instruction\>**
@@ -96,10 +96,10 @@ Description: information about a single instruction in this architecture, includ
9696
List of child elements:
9797
| # | Element | XML element name | Description |
9898
| -- | --------------------- | ---------------------- | - |
99-
| 1. | Instruction flags | [\<InstructionFlags\>](#instructionflags-element) | Information about basic features of the instruction. For example, is the instruction a branch? Does it terminate the program? |
99+
| 1. | Instruction flags | [\<InstructionFlags\>](#instructionflags) | Information about basic features of the instruction. For example, is the instruction a branch? Does it terminate the program? |
100100
| 2. | Instruction name | \<InstructionName\> | The name of the instruction. This is the assembly name of the instruction.|
101101
| 3. | Description | \<Description\> | Description of the operation performed by the instruction. |
102-
| 4. | Instruction encodings | [\<InstructionEncodings\>](#instructionencodings-element) | Lists all encodings this instruction can be represented in. |
102+
| 4. | Instruction encodings | [\<InstructionEncodings\>](#instructionencodings) | Lists all encodings this instruction can be represented in. |
103103

104104
### \<InstructionFlags\>
105105
Hierarchy: \<Spec\>\<ISA\>\<Instructions\>\<Instruction\>**\<InstructionFlags\>**
@@ -121,7 +121,7 @@ Description: lists all encodings this instruction can be represented in.
121121
List of child elements:
122122
| # | Element | XML element name | Description |
123123
| -- | -------------------- | --------------------- | - |
124-
| 1. | Instruction encoding (singular) | [\<InstructionEncoding\>](#instructionencoding-element) | One possible encoding version given instruction can be represented in. |
124+
| 1. | Instruction encoding (singular) | [\<InstructionEncoding\>](#instructionencoding) | One possible encoding version given instruction can be represented in. |
125125

126126
### \<InstructionEncoding\>
127127
Hierarchy: \<Spec\>\<ISA\>\<Instructions\>\<Instruction\>\<InstructionEncodings\>**\<InstructionEncoding\>**
@@ -131,10 +131,10 @@ Description: one possible encoding version given instruction can be represented
131131
List of child elements:
132132
| # | Element | XML element name | Description|
133133
| -- | ------------- | ---------------- | - |
134-
| 1. | Encoding name | \<EncodingName\> | The encoding name the given instruction is represented in. Should match one of the names in the list of [\<Encodings\>](#encodings-element)|
134+
| 1. | Encoding name | \<EncodingName\> | The encoding name the given instruction is represented in. Should match one of the names in the list of [\<Encodings\>](#encodings)|
135135
| 2. | EncodingCondition | \<ConditionName\> | Name of the condition that must be true to select this encoding. |
136136
| 2. | Opcode | \<Opcode\> | The opcode value of the instruction when represented in this encoding. |
137-
| 3. | Operands | [\<Operands\>](#operands-element) | Lists all operands of the instruction when represented in this encoding. |
137+
| 3. | Operands | [\<Operands\>](#operands) | Lists all operands of the instruction when represented in this encoding. |
138138

139139
### \<Operands\>
140140
Hierarchy: \<Spec\>\<ISA\>\<Instructions\>\<Instruction\>\<InstructionEncodings\>\<InstructionEncoding\>**\<Operands\>**
@@ -144,7 +144,7 @@ Description: lists all operands of the instruction when represented in this enco
144144
List of child elements:
145145
| # | Element | XML element name | Description|
146146
| -- | ------- | ---------------- | - |
147-
| 1. | Operand (singular) | [\<Operand\>](#operand-element) | Information about a single operand in the instruction. |
147+
| 1. | Operand (singular) | [\<Operand\>](#operand) | Information about a single operand in the instruction. |
148148

149149
### \<Operand\>
150150
Hierarchy: \<Spec\>\<ISA\>\<Instructions\>\<Instruction\>\<InstructionEncodings\>\<InstructionEncoding\>\<Operands\>**\<Operand\>**
@@ -154,9 +154,9 @@ Description: Information about a single operand in the instruction.
154154
List of child elements:
155155
| # | Element | XML element name | Description |
156156
| -- | ---------------- | ---------------- | - |
157-
| 1. | Field name | \<FieldName\> | Encoding field name. Should match one of the fields in [\<BitMap\>](#bitmap-element-microcodeformat). |
158-
| 2. | Data format name | \<DataFormatName\> | Data format of the operand. Should match one of the formats in [\<DataFormats\>](#dataformats-element). |
159-
| 3. | Operand type | \<OperantType\> | Type of the operand. Should match one of the types in [\<OperandTypes\>](#operandtypes-element)|
157+
| 1. | Field name | \<FieldName\> | Encoding field name. Should match one of the fields in [\<BitMap\>](#bitmap-microcodeformat). |
158+
| 2. | Data format name | \<DataFormatName\> | Data format of the operand. Should match one of the formats in [\<DataFormats\>](#dataformats). |
159+
| 3. | Operand type | \<OperantType\> | Type of the operand. Should match one of the types in [\<OperandTypes\>](#operandtypes)|
160160
| 4. | Operand size | \<OperandSize\> | The size of this operand in bits. |
161161

162162

@@ -178,7 +178,7 @@ Description: lists all encodings supported by the architecture. Examples of the
178178
List of child elements:
179179
|# | Element | XML element name | Description |
180180
|-- | ------------------- | ---------------- | - |
181-
|1. | Encoding (singular) | [\<Encoding\>](#encoding-element) | Information about a single encoding in this architecture. |
181+
|1. | Encoding (singular) | [\<Encoding\>](#encoding) | Information about a single encoding in this architecture. |
182182

183183
### \<Encoding\>
184184
Hierarchy: \<Spec\>\<ISA\>\<Encodings\>**\<Encoding\>**
@@ -191,10 +191,10 @@ List of child elements:
191191
| 1. | Encoding name | \<EncodingName\> | Encoding name. For example, VOP1, SOP1, etc. |
192192
| 2. | Bit count | \<BitCount\> | Size of the encoding in bits. |
193193
| 3. | Encoding identifier mask | \<EncodingIdentifierMask\> | Binary mask to identify the encoding. |
194-
| 4. | Encoding identifiers | [\<EncodingIdentifiers\>](#encodingidentifiers-element) | Lists all unique identifiers which are used to map to the encoding. |
195-
| 5. | Encoding conditions | [\<EncodingConditions\>](#encodingconditions-element) | Lists all encoding conditions. A condition specifies cases when the encoding can be extended with extra fields such as literal constant, DPP, etc. |
194+
| 4. | Encoding identifiers | [\<EncodingIdentifiers\>](#encodingidentifiers) | Lists all unique identifiers which are used to map to the encoding. |
195+
| 5. | Encoding conditions | [\<EncodingConditions\>](#encodingconditions) | Lists all encoding conditions. A condition specifies cases when the encoding can be extended with extra fields such as literal constant, DPP, etc. |
196196
| 6. | Description | \<Description\> | Encoding description. |
197-
| 7. | Microcode format | [\<MicrocodeFormat\>\<BitMap\>](#bitmap-element-microcodeformat) | Information about binary break down of the encoding. |
197+
| 7. | Microcode format | [\<MicrocodeFormat\>\<BitMap\>](#bitmap-microcodeformat) | Information about binary break down of the encoding. |
198198

199199

200200
List of attributes:
@@ -220,7 +220,7 @@ Description: lists all encoding conditions. A condition specifies cases when the
220220
List of child elements:
221221
| # | Element | XML element name | Description|
222222
| -- | ------------------ | ------------------- | -|
223-
| 1. | Encoding Condition (singular) | [\<EncodingCondition\>](#encodingcondition-element) | A single condition. |
223+
| 1. | Encoding Condition (singular) | [\<EncodingCondition\>](#encodingcondition) | A single condition. |
224224

225225
### \<EncodingCondition\>
226226
Hierarchy: \<Spec\>\<ISA\>\<Encodings\>\<Encoding\>\<EncodingConditions\>**\<EncodingCondition\>**
@@ -241,7 +241,7 @@ Description: a bitmap holds a detailed breakdown of the fields in the given enco
241241
List of child elements:
242242
| # | Element | XML element name | Description |
243243
| -- | ------- | ---------------- | - |
244-
| 1. | Field | [\<Field\>](#field-element-microcodeformat--bitmap) | A single field from the list of fields in the bitmap. The field specifies the raw binary instruction must be broken down and interpreted.|
244+
| 1. | Field | [\<Field\>](#field-microcodeformat--bitmap) | A single field from the list of fields in the bitmap. The field specifies the raw binary instruction must be broken down and interpreted.|
245245

246246
### \<Field\> (MicrocodeFormat → BitMap)
247247
Hierarchy: \<Spec\>\<ISA\>\<Encodings\>\<Encoding\>\<MicrocodeFormat\>\<BitMap\>**\<Field\>**
@@ -264,7 +264,7 @@ Description: lists all data fromats in the architecture. It provides additional
264264
List of child elements:
265265
| # | Element | XML element name | Description|
266266
| -- | ---------------------- | ---------------- | - |
267-
| 1. | Data format (singular) | [\<DataFormat\>](#dataformat-element) | Information about a single data format in this architecture. |
267+
| 1. | Data format (singular) | [\<DataFormat\>](#dataformat) | Information about a single data format in this architecture. |
268268

269269
### \<DataFormat\>
270270
Hierarchy: \<Spec\>\<ISA\>\<DataFormats\>**\<DataFormat\>**
@@ -278,7 +278,7 @@ List of child elements:
278278
| 2. | Description | \<Description\> | Data format description. |
279279
| 3. | Data type | \<DataType\> | Data type. For example, descriptor, bits, float.|
280280
| 4. | Component count | \<ComponentCount\> | Indicates the number of components this format packs into the given bits if data is packed. |
281-
| 5. | Data attributes | [\<DataAttributes\>\<BitMap\>](#bitmap-element-dataattributes) | Information about each component in the data format. |
281+
| 5. | Data attributes | [\<DataAttributes\>\<BitMap\>](#bitmap-dataattributes) | Information about each component in the data format. |
282282

283283
### \<BitMap\> (DataAttributes)
284284
Hierarchy: \<Spec\>\<ISA\>\<DataFormats\>\<DataFormat\>\<DataAttributes\>**\<BitMap\>**
@@ -288,7 +288,7 @@ Description: information about each component in the data format.
288288
List of child elements:
289289
| # | Element | XML element name | Description|
290290
| -- | ------- | ---------------- | - |
291-
| 1. | Field | [\<Field\>](#field-element-dataattributes--bitmap) | Describes a single compoent field of the data format. |
291+
| 1. | Field | [\<Field\>](#field-dataattributes--bitmap) | Describes a single compoent field of the data format. |
292292

293293
### \<Field\> (DataAttributes → BitMap)
294294
Hierarchy: \<Spec\>\<ISA\>\<DataFormats\>\<DataFormat\>\<DataAttributes\>\<BitMap\>**\<Field\>**
@@ -317,7 +317,7 @@ Description: the sub-elements of this element are referenced by an instruction e
317317
List of child elements:
318318
| # | Element | XML element name | Description|
319319
| -- | ----------------------- | ---------------- | - |
320-
| 1. | Operand type (singular) | [\<OperandType\>](#operandtype-element) | Information about a single operand type in the architecture. |
320+
| 1. | Operand type (singular) | [\<OperandType\>](#operandtype) | Information about a single operand type in the architecture. |
321321

322322
### \<OperandType\>
323323
Hierarchy: \<Spec\>\<ISA\>\<OperandTypes\>**\<OperandType\>**
@@ -329,7 +329,7 @@ List of child elements:
329329
| -- | ------------------------- | ------------------------- | -|
330330
| 1. | Operand type name | \<OperandTypeName\> | Name of the operand as defined in the ISA. For example, v1, s3, vcc, etc. |
331331
| 2. | Subtypes | \<Subtypes\> | Lists all subtype names that compose the give type. |
332-
| 3. | Operand predefined values | [\<OperandPredefinedValues\>](#operandpredefinedvalues-element) | Lists all predefined operand values. A predefined value maps encoded integer value in the binary opcode to the corresponding assembly name. |
332+
| 3. | Operand predefined values | [\<OperandPredefinedValues\>](#operandpredefinedvalues) | Lists all predefined operand values. A predefined value maps encoded integer value in the binary opcode to the corresponding assembly name. |
333333

334334
### \<OperandPredefinedValues\>
335335
Hierarchy: \<Spec\>\<ISA\>\<OperandTypes\>\<OperandType\>**\<OperandPredefinedValues\>**
@@ -339,7 +339,7 @@ Description: lists all predefined operand values. A predefined value maps encode
339339
List of child elements:
340340
| # | Element | XML element name | Description|
341341
| -- | ------------------------ | ------------------------ | - |
342-
| 1. | Operand predefined value | [\<OperandPredefinedValue\>](#operandpredefinedvalue-element) | Maps encoded integer value in the binary opcode to the corresponding assembly name. |
342+
| 1. | Operand predefined value | [\<OperandPredefinedValue\>](#operandpredefinedvalue) | Maps encoded integer value in the binary opcode to the corresponding assembly name. |
343343

344344

345345
### \<OperandPredefinedValue\>
@@ -364,7 +364,7 @@ Description: lists all functional groups in the architecture. A function group p
364364
List of child elements:
365365
| # | Element | XML element name | Description |
366366
| -- | ---------------- | ---------------- | - |
367-
| 1. | Functional Group (singular) | [\<FunctionalGroup\>](#functionalgroup-element) | Provides high-level classification of the instruction, such as: vector memory, vector ALU, scalar memory, etc. |
367+
| 1. | Functional Group (singular) | [\<FunctionalGroup\>](#functionalgroup) | Provides high-level classification of the instruction, such as: vector memory, vector ALU, scalar memory, etc. |
368368

369369
### \<FunctionalGroup\>
370370
Hierarchy: \<Spec\>\<ISA\>\<Instructions\>\<Instruction\>\<FunctionalGroups\>**\<FunctionalGroup\>**
@@ -375,7 +375,7 @@ List of child elements:
375375
| # | Element | XML element name | Description |
376376
| -- | -------------------- | --------------------- | - |
377377
| 1. | Name | \<Name\> | Name of the functional group. |
378-
| 2. | Subgroup | [\<Subgroup\>](#Subgroup-element) | Name of the associated subgroup. |
378+
| 2. | Subgroup | [\<Subgroup\>](#Subgroup) | Name of the associated subgroup. |
379379

380380
### \<Subgroup\>
381381
Hierarchy: \<Spec\>\<ISA\>\<Instructions\>\<Instruction\>\<FunctionalGroups\>\<FunctionalGroup\>**\<Subgroup\>**

0 commit comments

Comments
 (0)