I'm having trouble understanding the purpose of precharging the BLs during a read operation of a traditional SRAM.
Is it because after a previous operation you want a common starting point (both bit lines being 1) so the sense amplifier can begin to sense the change in the BLs?
The data that is held in the back 2 back inverters will either leave the pre charged bitline as it is or it will drive the line low. The storage inverters do not have enough drive to drive the bit lines high, but they can definitely drain a pre charged line to 0. This is why we use a pre charged line instead of relying on the storage inverters to charge the line