| 1616 | <h3>Flat addressing</h3> |
| 1617 | <p>By default, FLAT instructions read or write values from main memory. |
| 1618 | Special register FLAT scratch defines size and offset of scratch buffer to access |
| 1619 | scratch space for current wave. Bit fields:</p> |
| 1620 | <table> |
| 1621 | <thead> |
| 1622 | <tr> |
| 1623 | <th>Bits</th> |
| 1624 | <th>Description</th> |
| 1625 | </tr> |
| 1626 | </thead> |
| 1627 | <tbody> |
| 1628 | <tr> |
| 1629 | <td>0-23</td> |
| 1630 | <td>Scratch offset without first 8 bits</td> |
| 1631 | </tr> |
| 1632 | <tr> |
| 1633 | <td>32-50</td> |
| 1634 | <td>Scratch size in bytes.</td> |
| 1635 | </tr> |
| 1636 | </tbody> |
| 1637 | </table> |
| 1638 | <p>The base addresses to access scratch and LDS must be given by driver to some user place.</p> |