Previous journal: | Next journal: |
---|---|
0069-2023-04-29.md | 0071-2023-05-01.md |
- Started
q16d16
branch for trying out Q16.16 fixed-point. - Consider how this design, as a chip, should be controlled by a CPU.
These parts would probably be part of the CPU, but could be optionally
augmented by the chip too (esp. where there are common resources):
- Motion
- Collisions/deflections
- Actual position/directional vectors
- Sound
- Map data
- Consider how to render other overlays or interstitials, inc. rectangles, triangles, bitmaps, text.
- Keep an eye out for specific instances where we can use/mix different fixed-point
precisions and bit depths/balances. For instance, we know the
heightScaler
shouldn't ever get to (say) 32.0, and it really only needs 8 bits of fractional precision (for now)?
- VGA DAC
- Try build with Caravel
- Ask group the best way to do ring memory for Raybox:
- 8~10 bits for height (height of 1024 is 425% scaling)
- 1 bit for side
- Optionally 1~4 bits for texture.
- Min: 640x9 bits = 5760
- Max: 640x15 bits= 9600
- All groups of 9~15 bits can shift forward from a common clock
- Better to use a simple Verilog array/chain/generator, or a macro generated by something?