Цитата(AlexRayne @ Dec 1 2010, 16:33)

Здрасте.
Достался мне в наследство проект системы на Cyclone2 имеющий общую шину (16бит) с обычным управлением подобно интерфейсу SRAM (Adres, CS, WR, OE).
Вобчем ищу умного совета, как организовывать большую шину и как возможно проще поправить то что есть?
В такой шине есть два узких места.
Первое - это мультиплексор данных от каждого регистра на общую шину. Впорое - это селектор адреса.
С первым - можно бороться так: если известно, что например в регистре готовности читаются только 2 бита из 16-ти, то можно сделать остальные входы оп нулям, а не коммутировать всю шину. И далее, если что-то есть байтное, то тоже написать, что коммутируем байт, а остальное - нули...
Со вторым - делается частичная дешифрация. Т.е. в идеале для дешифрации адреса регистра берутся только 2 или 3 старших адреса. Это тоже помогает сократить дешифратор...
Далее идет косвенная адресация, как тут уде было сказано.
Потом - вставление NOP перед чтением и т.д.
Удачи!