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

Торможение при запуске синтеза

Я им уже занимаюсь.Слава богу, про стандарты знаю пока только я, больше это никого не волнует.

 

тогда должны знать, что на XST выбор синтезаторов не заканчивается, а даже наоборот.

Если завтра заказчик/работодатель скажет: "делаем на альтере", то попрежнему про стандарты будете знать только вы, но вот не взвоете ли вы от обезъяньей работы переписывания сотен Кб отлаженных исходников из стиля "абы как" в стиль "это будет работать <везде>".

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


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

Т.е. Вы хотите сказать, что если дать низший приоритет, то xst будет работать быстрее?

Не работать будет быстрее, а Windows не будет тормозить, "бедняга" не успевает даже отображать результаты, 100% ресурсов xst отдается.

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


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

По поводу precision'а идея, конечно, хорошая. Хотя у каждого, насколько я понимаю, свои отступления от стандартов.

 

Попробовал Precision. Он напряженно работал примерно 2 минуты, отожрал три с половиной гига памяти, заявил, что он "out of memory" и прекратил синтез.

XST тот же код синтезирует.

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


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

Скомпилировал такой код:

 

library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;

entity test is
  generic(
    DATA_WIDTH : integer := 8
  );
  port(
    clk       : in  std_logic;
    q         : out std_logic_vector(DATA_WIDTH-1 downto 0)
  );
end test;

architecture test_arch of test is
  signal int_rd_state: std_logic_vector(DATA_WIDTH*2-1 downto 0) := (others => '0');
  signal int_rd_en_ind: integer;
begin
  int_rd_en_ind <= 1;
  q <= int_rd_state(DATA_WIDTH*(int_rd_en_ind+1)-1 downto DATA_WIDTH*int_rd_en_ind);
end test_arch;

 

Никаких ошибок и варнингов (Precision Synthesis 2006a.112).

 

Просто для справки. В Квартусе 7.2 выдает ошибку

Error (10394): VHDL error at test.vhd(20): left bound of range must be a constant

на строчку

q <= int_rd_state(DATA_WIDTH*(int_rd_en_ind+1)-1 downto DATA_WIDTH*int_rd_en_ind);

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


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

Просто для справки. В Квартусе 7.2 выдает ошибку

Error (10394): VHDL error at test.vhd(20): left bound of range must be a constant

на строчку

q <= int_rd_state(DATA_WIDTH*(int_rd_en_ind+1)-1 downto DATA_WIDTH*int_rd_en_ind);

Квартус не прав, по стандарту '93 допустимо.

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


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

Вобщем, из всего вышесказанного вытекает нижеследующее:

Precision'ом ничего синтезировать не могу. Может проект такой... или я идиот...

 

Так что пока других легальных средств синтеза нет, придется пользоваться XST... :crying:

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


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

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

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

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

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

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

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

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

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

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