Skip to content

Commit 1ab91ab

Browse files
authored
Update README.md
1 parent 13d2dc7 commit 1ab91ab

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

README.md

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,8 @@ The following binary operations are specified by the snakeHDL API and must be im
7070
* BIT
7171
* JOIN
7272

73-
...and that's it! Check out the [BOp documentation](https://github.com/joshiemoore/snakehdl/blob/master/docs/bops.md) to learn more or look at the [examples](https://github.com/joshiemoore/snakehdl/tree/master/examples) to see BOps in action.
73+
...and that's it! snakeHDL is based on a RISC-type philosophy.
74+
Check out the [BOp documentation](https://github.com/joshiemoore/snakehdl/blob/master/docs/bops.md) to learn more or look at the [examples](https://github.com/joshiemoore/snakehdl/tree/master/examples) to see BOps in action.
7475

7576
## Compiler Targets
7677
- [x] Verilog
@@ -80,3 +81,17 @@ The following binary operations are specified by the snakeHDL API and must be im
8081
- [ ] Arduino
8182
- [ ] Minecraft Redstone
8283
- [ ] ...
84+
85+
## Optimizations
86+
The following is a list of current and planned compiler optimizations:
87+
- [x] Cached BOp hashing
88+
- [x] Common Subexpression Elimination
89+
- [ ] Constant folding (i.e. `A & 0 -> 0`)
90+
- [ ] Gate pruning (i.e. `AND(A, AND(A, B)) -> AND(A, B)`)
91+
- [ ] ...
92+
93+
## TODO
94+
* Improve documentation
95+
* Add more components to component library
96+
* Add useful examples demonstrating snakeHDL functionality
97+
* Optimize compiler output (constant folding, gate pruning, etc.)

0 commit comments

Comments
 (0)