Krys 2 16 августа, 2010 Опубликовано 16 августа, 2010 · Жалоба Здравствуйте. Встала потребность реализовать 2 контроллера DDR2 на spartan3A, т.е. чтобы из одной ПЛИС иметь доступ к двум независимым микросхемам памяти. Штатный (входящий в ISE IP Core Generator) MIG (Memory Interface Generator) позволяет на spartan3A сделать только 1 контроллер. Есть ли способы всё же убедить его сделать 2 контроллера? Если штатным MIG бесполезно, то какие ещё есть варианты? Сложно ли написать контроллер "врукопашную"? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 16 августа, 2010 Опубликовано 16 августа, 2010 · Жалоба Штатный (входящий в ISE IP Core Generator) MIG (Memory Interface Generator) позволяет на spartan3A сделать только 1 контроллер. сгенерить один и вставить два экземпляра? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Krys 2 16 августа, 2010 Опубликовано 16 августа, 2010 · Жалоба Можно 1, можно 2 разных. Там в самом описании к MIG говорится, что он рассчитан, чтобы сделать 1 контроллер на кристалл Spartan 3A. А несколько контроллеров на кристалл он может сделать только под Virtex. Пробовали генерить через MIG, формируется *.ucf - файл, где используются rloc. Опасаемся, что если "сгенерить один и вставить два экземпляра", то rloc в каждом экземпляре будут конфликтовать друг с другом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Gothard 0 16 августа, 2010 Опубликовано 16 августа, 2010 (изменено) · Жалоба В MIGе можно скорректировать проект контроллера под реальную плату (есть в нем такой "сценарий" - смотрите внимательнее). В этом сценарии MIGу "скармливается" UCF с реальными/требуемыми контактами и он сам корректирует в проекте все что надо. Хотя возможно такое, что под ваше назначение контактов он не сможет поправить проект в ввиду ограничений ресурсов кристалла. Если сделать 2 отдельных проекта контроллера и заранее в каждом из них распределить контакты по банкам так, чтобы они могли сосуществовать, а затем подрехтовать UCF и провести корректировку через MIG, то должно получиться. P.S. я правил контакты в UCF файле, который выдает сам MIG, и затем передавал ему обратно. Изменено 16 августа, 2010 пользователем Gothard Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Krys 2 16 августа, 2010 Опубликовано 16 августа, 2010 · Жалоба Спасибо, попробуем "сговнякать". Хотя бы синтез запустить, будет ли ругаться. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rozen 0 18 августа, 2010 Опубликовано 18 августа, 2010 · Жалоба Спасибо, попробуем "сговнякать". Хотя бы синтез запустить, будет ли ругаться. Ну и как успехи. А вот если можно ещё: Решаю сейчас задачу: заменить в существующем проекте память SDRAM на DDR2 в связи с переходом со Спартана3 на 6 , да и вообще…. Интерфейсе построил Core generator MIG3.3 и… опс……надо достраивать асинхронной вход– выход, да и с адресом надо работать – сейчас он прямой + операция запись/чтение.Может кто подкинет идею (ну, например, как переделать трафик генератор) или что то из готового. Заранее спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Krys 2 10 сентября, 2010 Опубликовано 10 сентября, 2010 · Жалоба Успехи - пока отложили этот вопрос до появления в свободной продаже спартана6. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DmitryR 0 10 сентября, 2010 Опубликовано 10 сентября, 2010 · Жалоба Тоже вариант, но вообще постановка задачи непонятна. Зачем делать независимые микросхемы памяти? Не проще ли сделать один контроллер и объединить два потока данных уже за ним? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Krys 2 13 сентября, 2010 Опубликовано 13 сентября, 2010 · Жалоба Да, возможно, Вы и правы в данном случае... Потому что нужно принять во внимание конвейерный режим работы SDRAM. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DmitryR 0 13 сентября, 2010 Опубликовано 13 сентября, 2010 · Жалоба Надо так адресное пространство распределить, чтобы два потока в разные банки попадали, и все будет ОК. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Krys 2 20 сентября, 2010 Опубликовано 20 сентября, 2010 · Жалоба спасибо за подсказку Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться