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

Граждане, умеет ли в 13.1 Map занимать несколько ядер?

Не в том смысле, что "настройка такая есть", а реально работает всё равно только одно ядро.

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

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


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

на 12.2 замечал, что при выставленной галке многоядерности, если ошибка в сборке проекта происходит на map или par,

отчета с ошибкой иногда вообще нет, пишет ошибка и все, приходится переключать снова на 1 ядро.

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


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

Граждане, умеет ли в 13.1 Map занимать несколько ядер?

MAP падает под линухом 64 бит. Молча. Разбираться почему, что и как пока не стал.

А вот PAR работает на 4 ядрах.

 

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


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

Windows

При просмотре репортов Design summary при нажатии Сollate Consecutive невозможно равернуть вкладки - очень раздражает

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


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

Наткнулся на несоответствие в библиотеке UNIMACRO и template ISE 13.1.

В макросе ADDMACC_MACRO

в template PREADDER1 и PREADDER2

-- ADDMACC_MACRO : In order to incorporate this function into the design,
--     VHDL      : the following instance declaration needs to be placed
--   instance    : in the architecture body of the design code.  The
--  declaration  : (ADDMACC_MACRO_inst) and/or the port declarations
--     code      : after the "=>" assignment maybe changed to properly
--               : reference and connect this function to the design.
--               : All inputs and outputs must be connected.

--    Library    : In addition to adding the instance declaration, a use
--  declaration  : statement for the UNISIM.vcomponents library needs to be
--      for      : added before the entity declaration.  This library
--    Xilinx     : contains the component declarations for all Xilinx
--   primitives  : primitives and points to the models that will be used
--               : for simulation.

--  Copy the following four statements and paste them before the
--  Entity declaration, unless they already exist.

Library UNISIM;
use UNISIM.vcomponents.all;

Library UNIMACRO;
use UNIMACRO.vcomponents.all;
--  <-----Cut code below this line and paste into the architecture body---->

   -- ADDMACC_MACRO: Add and Multiple Accumulate Function implemented in a DSP48E
   --                Virtex-6
   -- Xilinx HDL Language Template, version 13.1

   ADDMACC_MACRO_inst : ADDMACC_MACRO
   generic map (
      DEVICE => "VIRTEX6",  -- Target Device: "VIRTEX6", "SPARTAN6" 
      LATENCY => 4,         -- Desired clock cycle latency, 1-4
      WIDTH_PREADD => 25,   -- Pre-Adder input bus width, 1-25
      WIDTH_MULTIPLIER => 18, -- Multiplier input bus width, 1-18     
      WIDTH_PRODUCT => 48)    -- MACC output width, 1-48
   port map (
      PRODUCT => PRODUCT,     -- MACC result output, width defined by WIDTH_PRODUCT generic 
      MULTIPLIER => MULTIPLIER, -- Multiplier data input, width determined by WIDTH_MULTIPLIER generic
      PREADDER1 => PREADDER1,   -- Preadder data input, width determined by WIDTH_PREADDER generic 
      PREADDER2 => PREADDER2,   -- Preadder data input, width determined by WIDTH_PREADDER generic 
      CARRYIN => CARRYIN, -- 1-bit carry-in input
      CE => CE,      -- 1-bit input clock enable
      CLK => CLK,    -- 1-bit clock input
      LOAD => LOAD, -- 1-bit accumulator load input
      LOAD_DATA => LOAD_DATA, -- Accumulator load data input, width defined by WIDTH_PRODUCT generic
      RST => RST    -- 1-bit input active high synchronous reset
   );
   -- End of ADDMACC_MACRO_inst instantiation

 

а в библиотеке

PREADD1 и PREADD2

----- CELL ADDMACC_MACRO -----

library IEEE;
use ieee.std_logic_1164.ALL;
use ieee.numeric_std.ALL;
use IEEE.std_logic_arith.all;
use IEEE.std_logic_unsigned.all;

library UNISIM;
use UNISIM.vcomponents.all;

library STD;
use STD.TEXTIO.ALL;


entity ADDMACC_MACRO is
  generic (
            DEVICE : string := "VIRTEX6";
            LATENCY : integer := 4;
            WIDTH_PREADD : integer := 25;
            WIDTH_MULTIPLIER : integer := 18;
            WIDTH_PRODUCT : integer := 48
       );

  port (
      PRODUCT : out std_logic_vector(WIDTH_PRODUCT-1 downto 0);
      CARRYIN : in std_logic;
      CE : in std_logic;
      CLK : in std_logic;
      MULTIPLIER : in std_logic_vector(WIDTH_MULTIPLIER-1 downto 0);
      LOAD : in std_logic;
      LOAD_DATA : in std_logic_vector(WIDTH_PRODUCT-1 downto 0);
      PREADD1 : in std_logic_vector(WIDTH_PREADD-1 downto 0);
      PREADD2 : in std_logic_vector(WIDTH_PREADD-1 downto 0);
      RST : in std_logic
     );
end entity ADDMACC_MACRO;

 

ЗЫ: ИМХО, есть смысл тему перекинуть в "среды разработки".

 

Изменено пользователем faa

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


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

:bb-offtopic:

млин....опять, очередная...

мне вот очень нравится как хилые выбрасывают из своих либ модули( память, фифо, умножители) старых версий... так потихому.

проверяю разные проекты, как итог нужно держать либы от разных версий, начиная от 10х до..

не понятно что мешает держать враперы общие для всех.

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


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

Скажите пожалуйста.

Позволяет ли MIG в ISE 13.1 генерить интерфейс для нескольких памятей DDR2?

 

Вот ISE 12.3 для нескольких памятей может генерить только в случае DDR3.

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


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

Скажите пожалуйста.

Позволяет ли MIG в ISE 13.1 генерить интерфейс для нескольких памятей DDR2?

 

Вот ISE 12.3 для нескольких памятей может генерить только в случае DDR3.

multiddr.JPG

 

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


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

Спасибо!

А для Virtex-6?

У S6 всё-таки аппаратные блоки, немного другой коленкор :blush: .

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


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

Спасибо!

А для Virtex-6?

У S6 всё-таки аппаратные блоки, немного другой коленкор :blush: .

virtex_multiddr.JPG

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


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

Generating Report ...


Fatal Error.Occurred at file XXX.twx, line 340, column 320811. An exception occurred! Type:UTFDataFormatException, Message:invalid bytes Г , [ of 3-byte sequence.
Number of warnings: 0
Total time: 6 secs 

Process "Generate Post-Place & Route Static Timing" completed successfully

 

:laughing: :cranky:

 

PS После отключения многопоточности и очистки проекта вроде заработало. Видимо, многопоточность в 13.1 просто нерабочая.

 

Из небольших глюков еще. В 13.1 декларирована полная поддержка VHDL до уровня элаборейшина. Так что можно написать алиас для пакета и сложное имя с ним, и синтезатор должен понять. И, действительно, синтезатор понимает, не знаю, насколько безглюкаво, но вот только команда "Check syntax" выдает ошибку, что такой пакет отсутствует.

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


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

А Вы с какими семействами работаете?

Если не выше V5, то я бы посоветовал 11.5.

Если с S6 хотите, то в моём понимании минимум 12.3, да и то есть информация, что даже в ней не совсем корректные временные характеристики для S6.

Если V6, то например документация на нее периодически выдает фразы типа "рекомендуем 13.1, такие-то характеристики там уточнены".

 

В общем, лично я жду 13.2, а лучше 13.3 :).

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


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

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

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

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

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

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

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

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

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

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