Перейти к содержанию
    

Cyclone IV E и GX vs. Spartan-6 LX и LXT соответственно

ИСЕ меня поначалу очень утомлял тем, что очень любит выдавать неизвестные ошибки в случае неправильных действий (которых у осваивающего всегда много). Пока не поймешь, куда льзя, куда нельзя - эмоций много.

По документации с Альтерой никогда не имел проблем, у Xilinx - бывало, когда временную диаграмму общения с их ИП-ядром приходилось подбирать вручную, т.к. документация крайне неподробна.

 

Для начинающих надо, чтобы то, что они ввели, откомпилировалось, просимулировалось и заработало.

А если не откомпилировалось - чтобы было понятно, почему. Заглянуть внутрь ПЛИС - это следующий шаг, когда лампочки уже уверенно моргают и вопроса "как сделать ком-порт" не возникает.

Первый опыт с ISE немного разочаровал меня. В понедельник буду экспериментировать с Quartus II. Но то, что сам чип лучше от Xilinx - однозначно. Хотя Cyclone V на подходе, кто знает, что будет в нем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Первый опыт с ISE немного разочаровал меня.

Вы наверное еще не работали в программном обеспечении (Libero IDE) от Actel ... ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы наверное еще не работали в программном обеспечении (Libero IDE) от Actel ... ;)

Устанавливал смотрел, не вникал. Меня оттолкнула трех входовая логика в ProASIC. А что в Libero?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, я видел, это по сути как дистрибьютор дистрибьютора. В таком случае какие цены у них будут? Стоимость чипов что содержатся на складе (доступно он-лайн) мне показалась завышенной.

 

Сравните с ценой Avnet - станет ясно.

А цены, которые on-line - я на них не смотрю.

Надо звонить и беседовать - практически всегда вопрос решается в выгодном направлении.

Вообщем (как и с каждым дистром) - все решается на основе личных отношений и умения договариваться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Первый опыт с ISE немного разочаровал меня.

А Вы пробовали ISE xx.x Quick Start Tutorial ? - обычно они были не очень погаными.

 

Касательно Xilinx FPGA vs Altera FPGA: исторически так сложилось, что в Xilinx FPGA есть возможность превращать часть LUT'ов в RAM (distrebuted RAM), а вот у Altera этого не было. Лично мне (для моих интерфейсных задач) часто нужны небольшие FIFO'шки, которые весьма удобно собирать на distributed RAM (оно и значительно быстрее по сравнению с Block RAM, и имеет меньшие ограничения на размещение в кристалле). Вот тут становится весьма существенным RAM основан на LUT4 или на LUT6 - последний имеет ёмкость в 4 раза больше. Те LUT, которые могут стать distributed RAM, могут мутировать и в сдвиговые регистры, что в ряде случаев позволяет хорошо сэкономить триггера.

Ну, и если я ничего не путаю, то в Spartan-6 (как и в Virtex-5/6), вообще-то не настоящие LUT6, а пара LUT5 со связанными входами и выделенным мультиплексором. Поэтому, в ряде случаев, есть возможность использовать этот LUT6, как 2 LUT5. Особенно хорошо получается это использовать, когда хочется иметь небольшой distributed RAM (с шириной адреса 5 и менее), тогда получается в одном LUT6 - RAM на 2 бита сразу. О различных извращениях над LUTx можно прочитать в ug384.pdf (Spartan-6 FPGA Configurable Logic Block).

 

Касательно среды ввода проекта (Design Entry), если есть возможность, что я бы советовал посмотреть на Active HDL 8.x. Мне весьма нравится эта среда для набора HDL текстов - она позволяет очень быстро устранять ряд опечаток/мелких ошибок, также в ней есть весьма неплохой схемный редактор (позволяющий делать включения на HDL !),.. ну и чтобы жилось совсем хорошо: она и моделировать умеет. Что же тогда остаётся ISE ?? - а остаётся ей синтез и implemtntation.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Касательно среды ввода проекта (Design Entry), если есть возможность, что я бы советовал посмотреть на Active HDL 8.x. Мне весьма нравится эта среда для набора HDL текстов - она позволяет очень быстро устранять ряд опечаток/мелких ошибок, также в ней есть весьма неплохой схемный редактор (позволяющий делать включения на HDL !),.. ну и чтобы жилось совсем хорошо: она и моделировать умеет. Что же тогда остаётся ISE ?? - а остаётся ей синтез и implemtntation.

Смотрел на сайте производителя, не впечатлило. Чтобы прикрутить сие к ISE нужно приложить усилия, не факт, что это будет стабильно работать, и лучше знать один распространенный инструмент, а не нагружать себя еще одним, при не знании первого. Это только моя точка зрения. За комментарий Спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Касательно Xilinx FPGA vs Altera FPGA: исторически так сложилось, что в Xilinx FPGA есть возможность превращать часть LUT'ов в RAM (distrebuted RAM), а вот у Altera этого не было.

Чудеса рассказываете. В каждой LUT есть триггер, который сам по себе уже 1-битовая RAM.

И FIFO из них сделать не проблема для каждой FPGA.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чудеса рассказываете. В каждой LUT есть триггер, который сам по себе уже 1-битовая RAM.

И FIFO из них сделать не проблема для каждой FPGA.

Как я понял, distributed RAM это память именно из LUT, это намного лучше поскольку LUT-4 имеет 16 бит памяти, LUT-6 - 64, а триггер только один бит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для distributed RAM есть еще аппаратная поддержка многопортовой памяти - 1 порт записи, 2 и более портов чтения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как я понял, distributed RAM это память именно из LUT, это намного лучше поскольку LUT-4 имеет 16 бит памяти, LUT-6 - 64, а триггер только один бит.

сомневаюсь... а выходов у LUT сколько? ;) и как к тем битам добраться?

На LUT можно сделать latch, однобитовый.

upd. а на LUT-6 - двухбитовый, наверное...

upd2. для этого нужно выход LUT завести на один из ее входов, так будет "поддерживаться" тот бит, который хранится, пока сигнал разрешения разрешает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для distributed RAM есть еще аппаратная поддержка многопортовой памяти - 1 порт записи, 2 и более портов чтения.

Тем более.

 

сомневаюсь... а выходов у LUT сколько? ;) и как к тем битам добраться?

На LUT можно сделать latch, однобитовый.

выход один, берете 8 LUT и получаете память 16х8 или 64х8.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

выход один, берете 8 LUT и получаете память 16х8 или 64х8.

Не верю! Сделаете?

P.S. эти биты не "хранятся", а передаются со входов на выход "навылет"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не верю! Сделаете?

прежде чем так категорично спорить, прочитайте любой даташит на хилый слайс. В отличие от альтеры у хилых есть блок специальных функций - генератор адреса, который позволяет изменять контент люта на лету. Это позволяет на 4-х входовом люте сделать однобитную память на 16 адресов.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чудеса рассказываете. В каждой LUT есть триггер, который сам по себе уже 1-битовая RAM.

Нуууу. Можно с разных сторон смотреть на FPGA... Я, лично, вообще вижу практическое отсутствие логических элементов в Xilinx FPGA (за исключением XORCY):

1. FF - это просто триггер.

2. LUTx - это набор 2^X триггеров с выходным мультиплексором 2^X->1. А в Xilinx FPGA ряд LUTx имеют еще и систему управления записи (с дополнительными линиями адреса записи) - именно они и могут мутировать в distributed RAM (1 LUTx в ОЗУшку 2^X на 1 бит) или Shift Register (глубиной до 2^X триггеров).

3. Block RAM - еще больший набор триггер с развитой системой управления и мультиплексирования.

4. Развитая схема тактирования.

5. I/O буфера и ноги (шары).

6. Всякие разные HardCore.

Какие тут чудеса ? - тут вроде реали жизни...

 

выход один, берете 8 LUT и получаете память 16х8 или 64х8.
Не верю! Сделаете?

А направно не верите, не ленитесь, посмотрите ug384.pdf (Spartan-6 FPGA Configurable Logic Block) и Вы обнаружите, что несколько недоочениваете Xilinx LUT.

 

Есть, правда, неприятное ограничение для двухпортовой памяти: адрес записи данных совпадает с адресом выходного мультиплексора LUTA (первого из 4 LUT в Slice), поэтому для двухпортовой памяти из 4 LUT получится использовать только 3. Но на этих 3 (трёх) LUT6 можно реализовать DualPort RAM 64x3 бит или DualPort RAM 32x6 бит - вроде весьма приятный расклад.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не верю! Сделаете?

P.S. эти биты не "хранятся", а передаются со входов на выход "навылет"

Разве у вас вызывает сомнение утверждение, что LUT это SRAM, которая записывается при конфигурировании. Входы LUT это адрес. Выход - это значение по этому адресу, и таким образом задавая различное содержимое LUT можно реализовать любую фунцию четырех (шести) одно битовых переменных.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...