|
|
  |
Проблема в Spartan3/3e, с использованием эл-та RAM32x1D |
|
|
|
Jun 19 2006, 21:51
|

Знающий
   
Группа: Свой
Сообщений: 541
Регистрация: 11-04-05
Из: Москва
Пользователь №: 4 045

|
Хотелось бы все же по хорошему ISE уговорить. Попробую полазить по их сайту - может найду чего. Кстати, действительно, если поменять используемые элементы на RAM16X1D, то все O'k, также все замечательно, если поменять семейство на Virtex2 (от которого Spartan3 и произошел). Если у кого есть конструктивные идеи решения проблемы, буду признателен. Сам что придумаю - отпишусь.
--------------------
Дурак, занимающий высокий пост, подобен человеку на вершине горы - все ему кажется маленьким, а всем остальным кажется маленьким он сам. /Законы Мерфи/
|
|
|
|
|
Jun 20 2006, 07:18
|

Местный
  
Группа: Свой
Сообщений: 449
Регистрация: 28-10-04
Из: Украина
Пользователь №: 1 002

|
Цитата(des00 @ Jun 20 2006, 08:57)  хмм а почему не просто написать на бехавор уровне и скормить XST ? А потому что лень доку посмотреть. The distributed memory module is used to create memory structures using the Select-RAM. It can be used to create read-only memory (ROM), single-port random-access memory (RAM), pseudo dual-port RAM and SRL16-based RAM with data widths up to 1024 bits and depths up to 65536 words. Options are available for simple registering of inputs and outputs in addition to variable pipelining capabilities. Optional asynchronous and synchronous resets are available for the output registers. Optionally, the module can be generated as a relationally placed macro (RPM) or as unplaced logic. For timing information, please see the Xilinx Product Specification for the specific architecture being targeted. Xilinx CORE generator. Distributed Memory v7.1. Все само делает, только нужные поля заполнить. И не надо нигде "лазить"
--------------------
Умею молчать на 37 языках...
|
|
|
|
|
Jun 20 2006, 08:08
|

Знающий
   
Группа: Свой
Сообщений: 541
Регистрация: 11-04-05
Из: Москва
Пользователь №: 4 045

|
2 des00: Цитата(des00 @ Jun 20 2006, 08:57)  хмм а почему не просто написать на бехавор уровне и скормить XST ? Возможно, так и попробую сделать, однако, имеются сомнения по поводу интеллекта синтезатора XST, по крайней мере раньше имелись проблемы с синтезом двухпортовой (только блочной) памяти. 2 gorby: Цитата А потому что лень доку посмотреть. Думаете, что Вы один такой умный? Просто стараюсь не пользоваться корегеном, так как возможны в будущем сложности при переходе на другие версии софта, а ВХДЛ-код - он и в Африке ВХДЛ-код. Оттуда обычно берется идея, и реализуется самостоятельно. 2 DmitryR: Цитата А чем решение заменить на 16X1D является неконструктивным? Да, в принципе, тоже вариант - два 16X1D и на выходе мультиплексор (по ТЗ фифо должно быть глубиной 31 слово). Не лучше и не хуже других. Речь-то не о том, что это нельзя сделать, а об отношении господ из Ксайлинкса к разработчикам - указывать в документе, который уместно использовать для оперативной справки неверные сведения, что в конечном итоге приводит к значительным потерям времени.
--------------------
Дурак, занимающий высокий пост, подобен человеку на вершине горы - все ему кажется маленьким, а всем остальным кажется маленьким он сам. /Законы Мерфи/
|
|
|
|
|
Jun 20 2006, 20:41
|

Местный
  
Группа: Свой
Сообщений: 449
Регистрация: 28-10-04
Из: Украина
Пользователь №: 1 002

|
Цитата(BSV @ Jun 20 2006, 12:08)  2 gorby: Цитата А потому что лень доку посмотреть.
Цитата Думаете, что Вы один такой умный? Просто стараюсь не пользоваться корегеном, так как возможны в будущем сложности при переходе на другие версии софта, а ВХДЛ-код - он и в Африке ВХДЛ-код. Оттуда обычно берется идея, и реализуется самостоятельно. Цитата Речь-то не о том, что это нельзя сделать, а об отношении господ из Ксайлинкса к разработчикам - указывать в документе, который уместно использовать для оперативной справки неверные сведения, что в конечном итоге приводит к значительным потерям времени. Дааа. Нечего возразить. А я-то и не знал, что кореген - западло. Только как сгенерил память, так и горя и не знаю. А вот Вы непонятно как делаете и время потеряли. Так кто здесь есть ХУ? Уж постарайтесь пользоваться корегеном - сделать лучше Вам вряд ли удастся. А то с Вашим подходом трудности Вам гарантированы. Ведь есть достаточно много вещей, которые на VHDL просто не делаются. Например мне пришлось двунаправленный DDR регистр в IOB руками делать. Потому что господа из Ксайлинкса прямо и честно заявили - на VHDL это не делается. И пример привели, как надо сделать, вручную вставляя библиотечные примитивы. И все работает. И меня ничуть не парит, что на другом кристалле придется этот регистр переписать - это же аппаратно зависимая вещь, у каждого чипа своя. А Вы создаете супер-пупер высокоуровневое универсальное описание. Ну и на здоровье. только нечего плакаться потом и обижаться на "господ из Ксайлинкса". А потом корабли до Марса не долетают... и господа - в Париже
--------------------
Умею молчать на 37 языках...
|
|
|
|
|
Jun 20 2006, 21:56
|

Знающий
   
Группа: Свой
Сообщений: 541
Регистрация: 11-04-05
Из: Москва
Пользователь №: 4 045

|
2 Gorby:  Зря обижаетесь, я просто ответил на укол про лень и не хотел Вас серьезно задеть. Считаю, что кореген лучше использовать тогда, когда без него реально не обойтись (PCI, EternetMAC и т.п.) - тут я с Вами полность согласен, что пытаться переплюнуть Ксайлинкс - занятие длительное и бесперспективное. А реализовать ту же память можно и без него - я вообще стараюсь ставить синтезатор в такие условия, чтобы у него меньше было простора для самодеятельности. И потом - в VHDL можно и примитивы использовать, что я в общем и пытался сделать, когда напоролся на описываемую каку. Бывает, что без примитивов никак не обойтись. В общем - о вкусах не спорят. Так что, мир, дружба, сосиска P.S. А для памяти сделал поведенческое описание - два процесса - и все дела. Единственнная проблема - пришлось синтезатору констрейном мозги вправить - а то он норовил эту память в BlockRAM запихать.
--------------------
Дурак, занимающий высокий пост, подобен человеку на вершине горы - все ему кажется маленьким, а всем остальным кажется маленьким он сам. /Законы Мерфи/
|
|
|
|
|
Jun 21 2006, 10:44
|

Местный
  
Группа: Свой
Сообщений: 449
Регистрация: 28-10-04
Из: Украина
Пользователь №: 1 002

|
Цитата(BSV @ Jun 21 2006, 01:56)  2 Gorby:  Зря обижаетесь, я просто ответил на укол про лень и не хотел Вас серьезно задеть. Считаю, что кореген лучше использовать тогда, когда без него реально не обойтись (PCI, EternetMAC и т.п.) - тут я с Вами полность согласен, что пытаться переплюнуть Ксайлинкс - занятие длительное и бесперспективное. А реализовать ту же память можно и без него - я вообще стараюсь ставить синтезатор в такие условия, чтобы у него меньше было простора для самодеятельности. И потом - в VHDL можно и примитивы использовать, что я в общем и пытался сделать, когда напоролся на описываемую каку. Бывает, что без примитивов никак не обойтись. В общем - о вкусах не спорят. Так что, мир, дружба, сосиска P.S. А для памяти сделал поведенческое описание - два процесса - и все дела. Единственнная проблема - пришлось синтезатору констрейном мозги вправить - а то он норовил эту память в BlockRAM запихать. Да что-то накатило... Магнитные бури наверное. Приношу извинения за излишне резкий тон. В соседней ветке один молодой человек с DCMом воюет, не зная, как инстанцировать компонент на VHDL. Мне показалось, Вы тоже из тех кто "все знает". Рад, что ошибся.
--------------------
Умею молчать на 37 языках...
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|