Вообщем поставил себе следующую задачу: данные, поступающие из вне, записывать в СДРАМ память и выводить их на ЖКИ монитор. Причем поступать данные могут одновременно с выводом записанных данных на ТФТ матрицу.
Вообщем первой моей победой был запуск ТФТ матрицы. Здесь подробно останавливаться не буду. Проблемы начались, когда начал запускать СДРАМ. После недельки проб и ошибок и лазания по форуму удалось-таки записать и считать (и сравнить с записанными) данные, но без режима регенерации, т.е. просто однократно запись->чтение->ок->зажигаем светодиод. Побаловался с различными режимами бурста и латентностью. Но это оказалось детским лепетом. После 2-3-х недельного написания программы, исправления ошибок, синтеза вылезла проблема - проект не влазит в кристал

... ТЕПЕРЬ ПРОШУ ПОМОЩИ У ПРОФИ.
На форуме встречал советы переделки xapp200. (xapp134 не советуют, хотя никто не объяснил толком, чем он плох, кроме упоминания фраз "горбатая корка" и "другой принцип построения контроллера").
Сам на VHDL пишу не так давно (самоучка, так что сильно не пинайте!), по образованию электроник, поэтому постоянно сталкиваюсь с проблемами...
Свой контроллер писал по следующему принципу:
Он имеет 4 состояния:
1. Инициализация: пауза 200мкс - выполнение стандартных команд с загрузкой МОДЕ-регистра.
2. Режим чтения: в этом режиме читаются данные из СДРАМ памяти по 160 16-битных слов из каждого банка (в сумме 640 = одна строка ТФТ дисплея) и заносится в блочную память на кристале. В последующем уже контроллер ТФТ дисплея читает данные из данной блочной памяти и выводит данные на экран дисплея (своеобразный ФИФО). Так повторяется 640 раз (для разрешения 640х480).
3. Режим записи: аналогично режиму чтения в этом режиме в СДРАМ записываются данные (16х640) из блочной памяти на кристале, предварительно загруженные в неё из вне.
4. Режим регенерации: в этом режиме выполняется полный цикл регенерации памяти (4095 циклов для 64Мб).
5. Режим IDLE: в этом режиме происходит проверка заполненности блочной памяти на кристалле (для записи и для чтения). Если из блочной памяти считана информация (строка) и выведена на дисплей - то выполняется загрузка следующей строки в блочную память. Если заполнена блочная память для записи (640 слов) то выполняется режим записи. Если на экран выведен полный кадр - то контроллер переходит в режим регенерации.
Вот вообщем то и все основные задачи, которые нужны мне для работы.
Некоторые пояснения: в каждом состоянии режим выполняется полностью, т.е. в режиме чтения считывается строка полностью (160+160+160+160=640). Аналогично в режиме записи записывается строка полностью (160+160+160+160=640).
Это мое видение решение задачи пока не удалось, в связи с этим встретив советы по переделке корок xapp134/200, прошу помощи по доработке указанных корок......
Хотя в них после изучения для меня есть еще много непонятного.
Спасибо.