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

 
 
> Почему не хватает родных САПР для ПЛИС?, Зачем нужны Active-HDL, Riviera, ModelSym, Synplify, Identify...
kst
сообщение May 15 2006, 14:24
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 141
Регистрация: 16-06-05
Из: Нижний Новгород
Пользователь №: 6 065



Из форумов понял что разработчики ПЛИС помимо родных САПР Altera (Quartus) и Xilinx (ISE) используют и другие программные продукты.
Подскажите пожалуйста, почему не хватает родных?
И какое ПО сейчас используют для разработки ПЛИС Xilinx?

Начинал я работать с Altera_вскими ПЛИСами в Quartus, в прошлом году пришлось пересесть на Xilinx в Foundation 4.2i (по требованию заказчика). Все делал в схемотехнике. На VHDL писал лишь отдельные блоки. И хватало всех средств каждой из этих САПР для полного цикла разработки: кодирование -> функциональная симуляция -> синтез -> имплементация -> временная симуляция. Как-то и не задавался вопросом, можно ли еще какие-то продукты использовать.

Теперь предстоит делать прошивку ПЛИС Viretx4 SX. Причем все нужно делать на VHDL. Достал ISE 8.1. А он, по отзывам коллег, устраивает демонстрации с маршем протеста. Вешает машину, долго думает и прочее. По отзывам в форумах понял, что сведущие люди помимо этих САПР используют еще и другое ПО, например Active-HDL, Riviera, ModelSym, Synplify, Identify и др.
Я могу, конечно, уйти с головой в изучение докумнетации на каждый из этих продуктов, чтоб выяснить их плюсы и минусы и решить стоит мне ими заниматься или нет, но мне все таки хотелось бы услышать пару слов от профессионалов, почему используются дополнительные программы и какие бы они порекомендовали для использования?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
kst
сообщение May 16 2006, 09:35
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 141
Регистрация: 16-06-05
Из: Нижний Новгород
Пользователь №: 6 065



А можно привести парочку примеров, почему дополнительные продукты удобнее чем средства ISE?

Цитата(papasha @ May 15 2006, 21:44) *
Раньше я пытался с помощью Foundation разрабатывать 1600 млн. вентилей. Быстро понял, что сделаю проект как раз к пенсии.
В чем лично для вас был выигрыш от применения других программ?
Go to the top of the page
 
+Quote Post
papasha
сообщение May 16 2006, 19:04
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 122
Регистрация: 25-06-04
Из: Москва
Пользователь №: 185



Цитата(kst @ May 16 2006, 13:35) *
А можно привести парочку примеров, почему дополнительные продукты удобнее чем средства ISE?

Цитата(papasha @ May 15 2006, 21:44) *

Раньше я пытался с помощью Foundation разрабатывать 1600 млн. вентилей. Быстро понял, что сделаю проект как раз к пенсии.
В чем лично для вас был выигрыш от применения других программ?


Успел до пенсии smile.gif
Go to the top of the page
 
+Quote Post
kst
сообщение May 17 2006, 08:56
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 141
Регистрация: 16-06-05
Из: Нижний Новгород
Пользователь №: 6 065



Цитата(papasha @ May 16 2006, 23:04) *
Успел до пенсии smile.gif
smile.gif Ну это было сразу понятно.
Меня больше интересует какие преимущества другого программного продукта перед Foundation позволили ускорить процесс разработки?
Go to the top of the page
 
+Quote Post
papasha
сообщение May 17 2006, 12:41
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 122
Регистрация: 25-06-04
Из: Москва
Пользователь №: 185



Цитата(kst @ May 17 2006, 12:56) *
Цитата(papasha @ May 16 2006, 23:04) *
Успел до пенсии smile.gif
smile.gif Ну это было сразу понятно.
Меня больше интересует какие преимущества другого программного продукта перед Foundation позволили ускорить процесс разработки?

Я до сих пор пользуюсь Foundation, но только для поддержки старых проектов. Если делаешь с нуля, то даже и не думай, почему это лучше другие проги использовать. Сразу переходи на HDL и на проверенные связки продуктов, например, ActiveHDL + Sinplify Pro + ISE. Опосля поймешь. Уж поверь опыту, если не моему, то остальных соконфетников. Не пожалеешь.
Go to the top of the page
 
+Quote Post
D-Luxe
сообщение Aug 5 2011, 15:44
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 347
Регистрация: 24-02-10
Из: Пенза
Пользователь №: 55 642



Цитата(papasha @ May 17 2006, 16:41) *
sm.gif Ну это было сразу понятно.
Меня больше интересует какие преимущества другого программного продукта перед Foundation позволили ускорить процесс разработки?

Я до сих пор пользуюсь Foundation, но только для поддержки старых проектов. Если делаешь с нуля, то даже и не думай, почему это лучше другие проги использовать. Сразу переходи на HDL и на проверенные связки продуктов, например, ActiveHDL + Sinplify Pro + ISE. Опосля поймешь. Уж поверь опыту, если не моему, то остальных соконфетников. Не пожалеешь.

Интересно зачем нужны одновременно Sinplify Pro + ISE ? Разве одного продукта недостаточно. Если вы используете оба, то как разделяете функции между ними.

В ActiveHDL понятно будет ввод и симуляция дизайна. А вот связка Sinplify Pro + ISE зачем нужна неясно.


--------------------
Нелегко оказаться на верном пути, но куда труднее его пройти.
(с) Уилл Роджерс
Go to the top of the page
 
+Quote Post
Timmy
сообщение Aug 5 2011, 17:14
Сообщение #7


Знающий
****

Группа: Участник
Сообщений: 835
Регистрация: 9-08-08
Из: Санкт-Петербург
Пользователь №: 39 515



Цитата(D-Luxe @ Aug 5 2011, 19:44) *
Интересно зачем нужны одновременно Sinplify Pro + ISE ? Разве одного продукта недостаточно. Если вы используете оба, то как разделяете функции между ними.

XST не поддерживает SystemVerilog, и более корявый и глючный. Интеграция Sinplify в ISE стандартно предусмотрена, и делается элементарно.
Go to the top of the page
 
+Quote Post
Victor®
сообщение Aug 5 2011, 20:11
Сообщение #8


Lazy
******

Группа: Свой
Сообщений: 2 070
Регистрация: 21-06-04
Из: Ukraine
Пользователь №: 76



Цитата(Timmy @ Aug 5 2011, 20:14) *
XST ..., и более корявый и глючный.

Скрестим шпаги, мистер?
В чем корявость и глючночть?
Или Вы достигли такого уровня, что Вам не хватает синтезатора в ISE
и без некоторых преимуществ Synopsys как синтезатора Вам жизнь серая? sm.gif
По пунктам, пожалуйста с исходниками...
Иначе Ваши мысли считаю трепом.


--------------------
"Everything should be made as simple as possible, but not simpler." - Albert Einstein
Go to the top of the page
 
+Quote Post
Timmy
сообщение Aug 6 2011, 04:14
Сообщение #9


Знающий
****

Группа: Участник
Сообщений: 835
Регистрация: 9-08-08
Из: Санкт-Петербург
Пользователь №: 39 515



Цитата(Victor® @ Aug 6 2011, 00:11) *
Скрестим шпаги, мистер?
В чем корявость и глючночть?
Или Вы достигли такого уровня, что Вам не хватает синтезатора в ISE
и без некоторых преимуществ Synopsys как синтезатора Вам жизнь серая? sm.gif
По пунктам, пожалуйста с исходниками...
Иначе Ваши мысли считаю трепом.

Я часто использую альтернативный способ описания асинхронного ресета. Традиционно делается так
Код
if rst = '1' then
  <что-то инициализировали>
elsif rising_edge(clk) then
  <последовательные операторы>
end if;


Однако можно и так:
Код
if rising_edge(clk) then
  <последовательные операторы>
end if;
if rst = '1' then
  <что-то инициализировали>
end if;

Во втором случае не требуется инициализировать по ресету все регистры, управляемые процессом, и вообще он более соответствует логике асинхронного ресета. Так вот XST во втором случае создаёт неправильный, нерабочий код, что в простых случаях легко можно видеть по RTL view. Создание кода, несоответствующего исходнику - это мегабаг для любого компилятора. Sinplify в подобном поведении никогда замечен не был.

И на тему корявости. Например, описываем процессор, у которого ALU с явно описанной системой мультиплексоров(а иначе невозможно получить нормальный дизайн) и предопределённой в соответствии с мультиплексорами системой кодов операций.
Код
constant ALU_ADD:alu_opcode_t := "0X00";
constant ALU_SUB:alu_opcode_t := "0X01";
constant ALU_AND:alu_opcode_t := "001X";
constant ALU_OR:alu_opcode_t := "011X";

constant OP_ADD:opcode_t := "00000000";
constant OP_SUB:opcode_t := "00000001";
constant OP_AND:opcode_t:= "01100000";
constant OP_OR:opcode_t := "01100010";
...
-- и декодер
case opcode is
when OP_ADD=>alu_op <= ALU_ADD;
when OP_SUB=>alu_op <= ALU_SUB;
when OP_OR=>alu_op <= ALU_OR;
when OP_AND=>alu_op <= ALU_AND;
when others=> alu_op <= (others=>'X');
end case;

В таком случае Sinplify совершенно правильно отобразит младший бит opcode на младший бит alu_op. И второй бит opcode на третий из alu_op. А вот XST, не обращая внимания на расставленные 'X'(он воспринимает их, как нули), накрутит такой логики, что мама не горюй, что фактически не позволяет под ним использовать обобщённое описание декодера, без катастрофического падения perfomance.
Go to the top of the page
 
+Quote Post
Bad0512
сообщение Aug 28 2011, 04:37
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650



Цитата(Timmy @ Aug 6 2011, 11:14) *
Я часто использую альтернативный способ описания асинхронного ресета. Традиционно делается так
Код
if rst = '1' then
  <что-то инициализировали>
elsif rising_edge(clk) then
  <последовательные операторы>
end if;


Однако можно и так:
Код
if rising_edge(clk) then
  <последовательные операторы>
end if;
if rst = '1' then
  <что-то инициализировали>
end if;

Во втором случае не требуется инициализировать по ресету все регистры, управляемые процессом, и вообще он более соответствует логике асинхронного ресета. Так вот XST во втором случае создаёт неправильный, нерабочий код, что в простых случаях легко можно видеть по RTL view. Создание кода, несоответствующего исходнику - это мегабаг для любого компилятора. Sinplify в подобном поведении никогда замечен не был.


Я думаю, что создать "правильный" код по такому корявому исходнику - просто невозможно. Ваш код описывает не асинхронный ресет, а какую-то весьма странную нестабильную систему. Простой вопрос : что произойдёт если ресет и фронт тактового сигнала придут в один и тот же момент времени? Ваша схема ответа на этот вопрос не даёт. В нормальном описании побеждает ресет, на то он и асинхронный.
И это соответствует логике работы базового элемента FPGA. Так что синтезатор тут ни при чём, учите матчасть... Ну а то обстояетельство, что Sinplify переваривает даже такой корявый код, ни о каких преимуществах не говорит.
Go to the top of the page
 
+Quote Post
des00
сообщение Aug 28 2011, 09:51
Сообщение #11


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Bad0512 @ Aug 27 2011, 22:37) *
Простой вопрос : что произойдёт если ресет и фронт тактового сигнала придут в один и тот же момент времени? Ваша схема ответа на этот вопрос не даёт.

хммм, разве в стандарте на VHDL уже отменили требование по последовательное исполнение операторов в процессе ? biggrin.gif


--------------------
Go to the top of the page
 
+Quote Post
анатолий
сообщение Aug 29 2011, 19:06
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 221
Регистрация: 10-12-05
Из: Украина
Пользователь №: 12 052



Цитата(des00 @ Aug 28 2011, 12:51) *
хммм, разве в стандарте на VHDL уже отменили требование по последовательное исполнение операторов в процессе ? biggrin.gif

Поддерживаю.
У языка есть очень четкая семантика, определяемая стандартом.
И симулятор, и синтезатор должны подчиняться этой семантике,
кроме случаев, когда объекты с таким поведением не синтезируются в принципе.

А идиомы, рекомендуемые фирмой - это от ее убогости с 1 стороны
и для обучения новичков по методу "делай как я" с 2 стороны.
Go to the top of the page
 
+Quote Post
sazh
сообщение Aug 29 2011, 19:59
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(анатолий @ Aug 29 2011, 22:06) *
и для обучения новичков по методу "делай как я" с 2 стороны.


Код
Как только я познакомился с языком VHDL и ПЛИСами, я понял, что это как раз то, чего мне с детства не хватало. Было сделано несколько проектов, пришел опыт. Но интерес к языку всё возрастал. Интерес толкал жонглировать операторами языка при реализации разных штучек, не нужных в работе, но оригинальных в исполнении и эффектных в функционировании. VHDL и ПЛИС - это как кисти и мольберт для художника. VHDL стал моим хобби. Хорошо, когда работа - хобби, а хобби - работа.

Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- kst   Почему не хватает родных САПР для ПЛИС?   May 15 2006, 14:24
- - maksya   Цитата(kst @ May 15 2006, 18:24) Подскажи...   May 15 2006, 16:42
|- - makc   Цитата(maksya @ May 15 2006, 20:42) Пара ...   May 15 2006, 17:21
- - papasha   "Из форумов понял что разработчики ПЛИС помим...   May 15 2006, 17:44
|- - Jools   Цитата(kst @ May 17 2006, 12:56) Меня бол...   May 17 2006, 11:29
||- - kst   Jools, огромное спасибо! Очень кстати.   May 17 2006, 11:47
||- - NiOS   Цитата(Jools @ May 17 2006, 15:29) Цитата...   May 17 2006, 13:15
||- - Gate   Цитата(NiOS @ May 17 2006, 17:15) А фирмы...   May 17 2006, 14:13
||- - CaPpuCcino   не подумайте что я тут побычить хочу - мнe понасто...   May 17 2006, 15:19
||- - kst   Цитата(CaPpuCcino @ May 17 2006, 19:19) ....   May 17 2006, 16:40
||- - maksya   Цитата(CaPpuCcino @ May 17 2006, 19:19) н...   May 17 2006, 16:54
|||- - papasha   Цитата(maksya @ May 17 2006, 20:54) Цитат...   May 17 2006, 18:25
|||- - makc   Цитата(papasha @ May 17 2006, 22:25) 100%...   May 17 2006, 18:58
|||- - papasha   Цитата(makc @ May 17 2006, 22:58) Цитата(...   May 18 2006, 07:28
|||- - kst   На Телесистемах была тема по поводу программ для р...   May 18 2006, 08:39
||- - dxp   Цитата(CaPpuCcino @ May 17 2006, 22:19) н...   May 18 2006, 10:06
||- - CaPpuCcino   to dxp разделяю мнение по 1 пункту - сам думаю так...   May 18 2006, 14:49
||- - dxp   Цитата(CaPpuCcino @ May 18 2006, 21:49) п...   May 19 2006, 04:34
||- - CaPpuCcino   [quote name='dxp' date='May 19 2006, 0...   May 19 2006, 16:10
|- - kst   Цитата(papasha @ May 17 2006, 16:41) Если...   May 17 2006, 12:52
|- - DevL   Цитата(D-Luxe @ Aug 5 2011, 17:44) И...   Aug 5 2011, 16:54
|- - Bad0512   Цитата(des00 @ Aug 28 2011, 16:51) хммм, ...   Aug 28 2011, 14:23
||- - des00   Цитата(Bad0512 @ Aug 28 2011, 09:23) В та...   Aug 28 2011, 15:19
||- - sazh   Цитата(des00 @ Aug 28 2011, 18:19) при по...   Aug 28 2011, 20:21
|||- - des00   Цитата(sazh @ Aug 28 2011, 15:21) А красо...   Aug 29 2011, 04:07
||- - ViKo   Цитата(des00 @ Aug 28 2011, 18:19) ... пр...   Sep 4 2011, 08:45
||- - des00   Цитата(ViKo @ Sep 4 2011, 03:45) Приорите...   Sep 4 2011, 13:23
||- - ViKo   Цитата(des00 @ Sep 4 2011, 16:23) вы что ...   Sep 4 2011, 15:36
||- - Timmy   Цитата(ViKo @ Sep 4 2011, 19:36) А если п...   Sep 4 2011, 18:19
||- - ViKo   Цитата(Timmy @ Sep 4 2011, 21:19) ... Как...   Sep 4 2011, 18:45
|- - анатолий   Можно и не докупать Synplify. Можно все задачи реш...   Sep 3 2011, 18:10
|- - sazh   Цитата(анатолий @ Sep 3 2011, 21:10) Но к...   Sep 4 2011, 05:31
- - Mad Makc   ЦитатаВ чем лично для вас был выигрыш от применени...   May 16 2006, 12:08
|- - kst   Цитата(Mad Makc @ May 16 2006, 16:08) ......   May 16 2006, 14:34
- - Mad Makc   ЦитатаМеня больше интересует какие преимущества др...   May 17 2006, 11:44
|- - kst   ЦитатаА ваще- зачем спрашивать?Возьмите и попробуй...   May 17 2006, 12:00
- - vetal   ЦитатаА фирмы Sinplicity есть свой пакет? (не Prem...   May 17 2006, 13:23
|- - NiOS   Цитата(vetal @ May 17 2006, 17:23) Основн...   May 17 2006, 13:51
- - Джеймс   Цитатаdxp: Я предпочитаю, например, те же автоматы...   May 18 2006, 19:26
|- - dxp   Цитата(Джеймс @ May 19 2006, 02:26) Во-пе...   May 19 2006, 05:04
|- - NiOS   Цитата(Джеймс @ May 18 2006, 23:26) Далее...   May 19 2006, 06:51
|- - dxp   Цитата(NiOS @ May 19 2006, 13:51) Помимо ...   May 19 2006, 07:13
|- - NiOS   Цитата(dxp @ May 19 2006, 11:13) Цитата(N...   May 19 2006, 07:54
|- - dxp   Цитата(NiOS @ May 19 2006, 14:54) Я имел ...   May 19 2006, 09:12
|- - NiOS   Цитата(dxp @ May 19 2006, 13:12) Теперь п...   May 19 2006, 10:16
|- - dxp   Цитата(NiOS @ May 19 2006, 17:16) Я писал...   May 19 2006, 12:02
|- - NiOS   Цитата(dxp @ May 19 2006, 16:02) Цитата(N...   May 19 2006, 14:25
|- - CaPpuCcino   Цитата(NiOS @ May 19 2006, 18:25) Я, наоб...   May 19 2006, 16:22
|- - druzhin   Цитата(NiOS @ May 19 2006, 18:25) Я как р...   May 30 2006, 12:47
|- - NiOS   Цитата(druzhin @ May 30 2006, 16:47) Вы в...   May 30 2006, 13:47
|- - Джеймс   [quote name='druzhin' date='May 30 200...   May 30 2006, 18:23
- - Very_hard   ЦитатаВы вообще-то делали БОЛЬШИЕ проекты? Вы проб...   May 30 2006, 13:01
|- - kst   Цитата(druzhin @ May 30 2006, 16:47) Вы в...   May 30 2006, 13:20
|- - iosifk   Цитата(kst @ May 30 2006, 17:20) Цитата(d...   May 30 2006, 13:42
- - vetal   ЦитатаА что, синтезаторы все делают как надо? А ка...   May 30 2006, 13:27
|- - kst   Цитата(vetal @ May 30 2006, 17:27) А как ...   May 30 2006, 13:52
|- - dxp   Цитата(kst @ May 30 2006, 20:52) Цитата(v...   May 31 2006, 04:18
|- - NiOS   Цитата(dxp @ May 31 2006, 08:18) Когда ра...   May 31 2006, 06:34
- - Mad Makc   ЦитатаЗдесь и всатет вопрос, а то ли он делает, чт...   May 30 2006, 14:03
|- - kst   Я имел в виду, всегда ли синтезаторы адекватно син...   May 30 2006, 14:36
|- - CaPpuCcino   Цитата(kst @ May 30 2006, 18:36) ...после...   May 30 2006, 17:46
- - vetal   Цитата"Уважаемый верилог поставь триггер...   May 30 2006, 15:20
|- - kst   Цитата(vetal @ May 30 2006, 19:20) Я прим...   May 30 2006, 15:45
|- - des00   ЦитатаЯ не говорю о коде, который написан неправил...   May 30 2006, 16:00
- - vetal   ЦитатаЯ не говорю о коде, который написан неправил...   May 30 2006, 16:32
- - vetal   солидарен с dxp. Все, кроме pll, можно без пробле...   May 31 2006, 06:37
|- - NiOS   Цитата(vetal @ May 31 2006, 10:37) Все, к...   May 31 2006, 06:54
|- - dxp   Цитата(vetal @ May 31 2006, 13:37) Все, к...   May 31 2006, 07:14
- - vetal   Проверил(ram) возможные комбинации с регистровым и...   May 31 2006, 08:31
|- - dxp   Цитата(vetal @ May 31 2006, 15:31) Провер...   May 31 2006, 09:14
|- - vetal   Цитата(dxp @ May 31 2006, 13:14) Цитата(v...   May 31 2006, 09:18
|- - dxp   Цитата(vetal @ May 31 2006, 16:18) Цитата...   May 31 2006, 09:55
|- - des00   Цитата(dxp @ May 31 2006, 04:55) Цитата(v...   May 31 2006, 12:14
|- - dxp   Цитата(des00 @ May 31 2006, 19:14) [...] ...   May 31 2006, 13:21
- - vetal   des00:Цитата... Это из разряда думаю одно, пишу др...   May 31 2006, 18:46
|- - des00   ЦитатаДанная конструкция должна выглядить примерно...   Jun 1 2006, 06:48
- - vetal   Стормозил. я имел в виду, что если нам нужен регис...   Jun 1 2006, 07:04
- - Mad Makc   чтобы синплифай нормально делал блочную память,нуж...   Jun 1 2006, 11:32
|- - des00   Цитата(Mad Makc @ Jun 1 2006, 06:32) чтоб...   Jun 2 2006, 04:08
- - анатолий   Synplify идет на 2-4 года впереди ISE по расширени...   Aug 27 2011, 16:47
|- - RobFPGA   Приветствую! Цитата(анатолий @ Aug 27 2...   Sep 3 2011, 23:01
- - jojo   Synplify не нужен, чтобы писать хороший код. А с х...   Sep 3 2011, 21:41
- - des00   Цитата(ViKo @ Sep 4 2011, 10:36) А если...   Sep 5 2011, 03:20
|- - ViKo   Цитата(des00 @ Sep 5 2011, 06:20) У вас о...   Sep 5 2011, 04:43
- - Singer   Уважаемые специалисты, нет ли у кого актуальной ин...   Sep 12 2011, 11:44
- - Stewart Little   Цитата(Singer @ Sep 12 2011, 15:44) Уважа...   Sep 12 2011, 13:34
- - des00   Цитата(Singer @ Sep 12 2011, 05:44) Уважа...   Sep 12 2011, 13:51
- - warrior-2001   Цитата(des00 @ Sep 12 2011, 17:51) хмм, н...   Sep 14 2011, 11:47
2 страниц V   1 2 >


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

 


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


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