реклама на сайте
подробности

 
 
> Модернизация xapp134/xapp200 (SDRAM) для конкретных задач, Прошу поддержки после попыток самонаписания SDRAM контроллера
Timon_
сообщение Apr 13 2009, 18:42
Сообщение #1





Группа: Участник
Сообщений: 9
Регистрация: 26-01-09
Пользователь №: 43 934



Начну с того, что принесли мне плату с запаянным на ней ПЛИС-кой XC3S200 (Spartan 3, Xilinx) и SDRAM память K4S641632K (Samsung), а в нагрузку дали побаловаться TFT дисплей фирмы NEC - NL6448BC26-09 (8.4").
Вообщем поставил себе следующую задачу: данные, поступающие из вне, записывать в СДРАМ память и выводить их на ЖКИ монитор. Причем поступать данные могут одновременно с выводом записанных данных на ТФТ матрицу.
Вообщем первой моей победой был запуск ТФТ матрицы. Здесь подробно останавливаться не буду. Проблемы начались, когда начал запускать СДРАМ. После недельки проб и ошибок и лазания по форуму удалось-таки записать и считать (и сравнить с записанными) данные, но без режима регенерации, т.е. просто однократно запись->чтение->ок->зажигаем светодиод. Побаловался с различными режимами бурста и латентностью. Но это оказалось детским лепетом. После 2-3-х недельного написания программы, исправления ошибок, синтеза вылезла проблема - проект не влазит в кристал sad.gif . Изучил форумы, дабы удостовериться - в этот кристал запихивали СДРАМ контроллер, ЛайфЕзернет, 2 RS232 и еще чего-то. В итоге "сел в лужу" и "выпал в осадок"...
... ТЕПЕРЬ ПРОШУ ПОМОЩИ У ПРОФИ.
На форуме встречал советы переделки 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, прошу помощи по доработке указанных корок......

Хотя в них после изучения для меня есть еще много непонятного.

Спасибо.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Timon_   Модернизация xapp134/xapp200 (SDRAM) для конкретных задач   Apr 13 2009, 18:42
- - DmitryR   А поискать готовый контроллер религия не позволяет...   Apr 14 2009, 05:17
- - Александр_Алексеев   На opencores.org есть проект для SDRAM на VHDL, я ...   Apr 14 2009, 05:30
- - Maverick   Цитата(Timon_ @ Apr 13 2009, 21:42) По ...   Apr 14 2009, 05:55
|- - vik0   Цитата(Maverick @ Apr 14 2009, 08:55) По ...   Apr 14 2009, 06:09
|- - Maverick   Цитата(vik0 @ Apr 14 2009, 09:09) Так он,...   Apr 14 2009, 07:40
- - Kuzmi4   Если времени жалко - мерём Миг от Xilinx и радуемс...   Apr 14 2009, 10:17
- - Timon_   ЦитатаЕсли нет - охота именно самому - то вот непл...   Apr 15 2009, 18:20
- - Александр_Алексеев   Кажется второй, там два исходника на VHDL, в загол...   Apr 16 2009, 05:56
- - Timon_   Александр_Алексеев, если Вам не трудно, вышлите мн...   May 6 2009, 18:32
|- - Boris_TS   Цитата(Timon_ @ May 6 2009, 21:32) Объясн...   May 6 2009, 19:49
- - Cont   1) У меня ISE 10.1 там MIG в корэгене СДРАМ не под...   May 8 2009, 07:58
|- - Maverick   Это написано Userguide (ссылка на него ниже) для I...   May 8 2009, 15:03
- - Timon_   А что в исе10 уже другая версия МИГ? Если да, то н...   May 9 2009, 11:54
- - Cont   Можно ли продолжать разработку в 10-й версии, но о...   May 12 2009, 08:34


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 07:34
Рейтинг@Mail.ru


Страница сгенерированна за 0.01368 секунд с 7
ELECTRONIX ©2004-2016