I am currently working on a 256 byte RAM. To access one address i have to build a decoder. My current decoder is a big block of AND-Gates with redstonetorches to check each combination. Are there any faster ways?
Current version of my decoder:
Your problem is probably not the speed of and gates, they are usually just a few ticks. I'd rather guess that the problem is that you set them up in a way that the decoder is sending the signal to the and gates one after another, instead of all at the same time.
Your screenshot doesn't relly show much about the design you used, however there are a lot of decoders out there. (really just google a bit and you'll find tons)
I've built one for you that is instant on the rising edge (but takes inverted input):
This one uses 3 bits, but can be expanded if required. The torches you see in front take an extra tick, but may be required depending on your design. The input is 000 so the far right one is selected.
In this design, a redstone block with dust on it is used for a 0, a block with a torch is used for a 1. (from right to left: 000, 001, 010)
The pistons in the middle (or the odd ones) have an extra piston on top so they're updated by the redstone above:
Some more screenshots:
As SevenSidedDie said in the comments, you pretty much cannot avoid using AND gates for decoders.
There is a way though: Use Command Blocks.
With the new
setblock features you can set redstone blocks. These don't have the delay that redstone repeaters / torches have, so your redstone signals can travel large distances faster.
This is not a nice fix, because the point of building a redstone computer (is for me at least) to do it without any command blocks. But maybe this will still help.
Maybe this could help? In the current design it is set as ROM but I think you could easily change that with some block replacers