newold86 wrote:после такого цикла при следующей выборке из ROM сигнал ALE почему-то не выставляется
Хм... вообще говоря, на шине есть сигнал /REFRESH (B19), как грицца, спешиал фо ю. Т.е. он говорит всем шинным клиентам, что это цикл регена, и на него нужно положить с прибором, т.е. не декодировать адрес и вообще не реагировать, если нет DRAM, требующей регена.
Есть еще один (AEN), который сообщает всем, что на шине сидит DMA, а не проц. Тут реакция зависит от того, умеет ли карта откликаться на DMA. В схеме CGA, например, данный сигнал тупо запрещает карте реагировать на шину.
Ладно еще ваша карта реагирует на рефреши, что странно само по себе, но почему вы ждете ALE в циклах DMA? Откуда он там возьмется-то?
И зачем вам ALE? Быстродействия ссыклона хватит на сотню 8088. Реагируйте на /MRD, если уж так хочется асинхронщины. Такт 8088 около 200 нс, за это время ваш MAX успеет и данные выставить и "Терминатора" законспектировать.
По поводу асинхронщины - это не упрек, сам такой. Но я все-таки стараюсь синхронизировать сигналы и описывать частоты в .sdc-файлике. Иначе бывают конфузы.
ps Что-то форум опять было упал. Кто так Шаоса не любит?