Skip to content

Commit 86d7a74

Browse files
committed
Changes from public review
Fixed dependencies for Zvfbfmin. Clarified language on widening convert. Fixed typos.
1 parent 6d874ca commit 86d7a74

5 files changed

+18
-23
lines changed

doc/insns/vfwcvtbf16_f_f_v.adoc

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,18 +40,16 @@ Arguments::
4040
Description::
4141
Widening convert from BF16 to FP32. The conversion is exact.
4242

43-
This instruction is similar to `vfwcvt.f.f.v` - Convert single-width float to double-width float.
44-
However, the single-width float is limited to the BF16 format.
43+
This instruction is similar to `vfwcvt.f.f.v` which converts a
44+
floating-point value in a narrower format into a wider format.
45+
However, here the narrower format is limited to BF16.
4546

4647
[NOTE]
4748
====
4849
If the input is normal or infinity, the BF16 encoded value is shifted
4950
to the left by 16 places and the
5051
least significant 16 bits are written with 0s.
5152
====
52-
// If the input is a NaN, the canonical NaN is returned. Furthermore,
53-
// if the input is a signalling NaN,
54-
// the invalid flag is rasied.
5553

5654
Exceptions: Invalid
5755

doc/riscv-bfloat16-extensions.adoc

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,11 @@ The BF16 extensions defined in this specification (i.e., `Zfbfmin`,
1818
`F`. Furthermore, the vector BF16 extensions (i.e.,`Zvfbfmin`, and
1919
`Zvfbfwma`) depend on the `"V"` Vector Extension for Application
2020
Processors or the `Zve32f` Vector Extension for Embedded Processors.
21-
Finally there exist dependencies between the newly defined extensions:
22-
`Zvfbfmin` depends on `Zfbfmin` and `Zvfbfwma` depends on `Zvfbfmin`.
21+
22+
As stated later in this specification,
23+
there exists a dependency between the newly defined extensions:
24+
`Zvfbfwma` depends on `Zfbfmin`
25+
and `Zvfbfmin`.
2326

2427
This initial set of BF16 extensions provides very basic functionality
2528
including scalar and vector conversion between BF16 and
@@ -28,6 +31,5 @@ instructions.
2831

2932

3033
include::riscv-bfloat16-zfbfmin.adoc[]
31-
// include::riscv-bfloat16-zfbfinxmin.adoc[]
3234
include::riscv-bfloat16-zvfbfmin.adoc[]
3335
include::riscv-bfloat16-zvfbfwma.adoc[]

doc/riscv-bfloat16-zfbfmin.adoc

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,6 @@ This extension provides the minimal set of instructions needed to enable scalar
55
of the BF16 format. It enables BF16 as an interchange format as it provides conversion
66
between BF16 values and FP32 values.
77

8-
// This extension includes the `FLH`, `FSH`, `FMV.X.H`, and `FMV.H.X` instructions
9-
// that are defined in the `Zfh` spec. That said, this extension does not require
10-
// nor depend on the implementation of the `Zfh` or `Zfhmin` extensions.
11-
128
This extension requires the single-precision floating-point extension
139
`F`, and the `FLH`, `FSH`, `FMV.X.H`, and `FMV.H.X` instructions as
1410
defined in the `Zfh` extension.
@@ -21,13 +17,13 @@ These extensions are intended to support the case where BF16 values are used as
2117
precision versions of FP32 values, where use of BF16 provides a two-fold advantage for
2218
storage, bandwidth, and computation. In this use case, the BF16 values are typcially
2319
multiplied by each other and accumulated into FP32 sums.
24-
These sums are typcially converted to BF16
20+
These sums are typically converted to BF16
2521
and then used as subsequent inputs. The operations on the BF16 values can be performed
26-
on the CPU or a loosly coupled coprocessor.
22+
on the CPU or a loosely coupled coprocessor.
2723
2824
Subsequent extensions might provide support for native BF16 arithmetic. Such extensions
2925
could add additional conversion
30-
instructions to allow all suported formats to be converted to and from BF16.
26+
instructions to allow all supported formats to be converted to and from BF16.
3127
====
3228

3329
[NOTE]

doc/riscv-bfloat16-zvfbfmin.adoc

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ This extension provides the minimal set of instructions needed to enable vector
55
format. It enables BF16 as an interchange format as it provides conversion between BF16 values
66
and FP32 values.
77

8-
This extension requires the `Zfbfmin` extension and either the
8+
This extension requires either the
99
"V" extension or the `Zve32f` embedded vector extension.
1010

1111
[NOTE]
@@ -14,15 +14,15 @@ While conversion instructions tend to include all supported formats, in these ex
1414
only support conversion between BF16 and FP32 as we are targeting a special use case.
1515
These extensions are intended to support the case where BF16 values are used as reduced
1616
precision versions of FP32 values, where use of BF16 provides a two-fold advantage for
17-
storage, bandwidth, and computation. In this use case, the BF16 values are typcially
17+
storage, bandwidth, and computation. In this use case, the BF16 values are typically
1818
multiplied by each other and accumulated into FP32 sums.
19-
These sums are typcially converted to BF16
19+
These sums are typically converted to BF16
2020
and then used as subsequent inputs. The operations on the BF16 values can be performed
21-
on the CPU or a loosly coupled coprocessor.
21+
on the CPU or a loosely coupled coprocessor.
2222
2323
Subsequent extensions might provide support for native BF16 arithmetic. Such extensions
2424
could add additional conversion
25-
instructions to allow all suported formats to be converted to and from BF16.
25+
instructions to allow all supported formats to be converted to and from BF16.
2626
====
2727

2828
[NOTE]
@@ -35,7 +35,7 @@ on some inputs for the RNE and RMM rounding modes.
3535
3636
Likewise, exact conversions from BF16 to larger precisions can be synthesized by first
3737
converting to FP32 and then converting from FP32 to the target precision. Conversions
38-
from larger precisions coud be synthesized by first converting to FP32 and then
38+
from larger precisions could be synthesized by first converting to FP32 and then
3939
converting from FP32 to BF16. As with the arithmetic instructions described above,
4040
this method of converting values to BF16 can be off by by 1-ulp
4141
on some inputs for the RNE and RMM rounding modes.

doc/riscv-bfloat16-zvfbfwma.adoc

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
This extension provides
55
a vector widening BF16 mul-add instruction that accumulates into FP32.
66

7-
// This extension depends on the "V" extension or the `Zve32f` embedded vector extension.
8-
This extension requires the `Zvfbfmin` extension.
7+
This extension requires the `Zvfbfmin` extension and the `Zfbfmin` extension.
98

109
[%autowidth]
1110
[%header,cols="2,4"]

0 commit comments

Comments
 (0)