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

Приветствую!

 

Создайте переменную окружения SLICKEDITCONFIG=далеко_туда/где_будет_конфиг/

 

Соответственно при запуске SLickEdit будет работать с конфигом по указанному пути

 

Успехов! Rob.

 

 

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


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

Приветствую!

 

Создайте переменную окружения SLICKEDITCONFIG=далеко_туда/где_будет_конфиг/

 

Соответственно при запуске SLickEdit будет работать с конфигом по указанному пути

 

Успехов! Rob.

Большое спасибо,так гораздо лучше. :cheers:

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


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

Всем здравствуйте,

 

Хотел спросить совета насчет редактора больших файлов (200MB..3GB).

 

Речь идет о просмотре/редактировании нетлистов (Verilog) и SDF аннотаций. Т.е. идеально было бы с подсветкой кода (кастомного тоже).

Файлы открываются с сетевого расположения и желательно иметь несколько на виду. Уф.

 

Вообще для кода использую Notepad++, но он ужасно работает с большими файлами. А также, сильно тормозит когда файлы открыты из сети.

 

Пока что брал EditPad Lite для больших файлов. Вроде неплохой, но подстветки кода нет, редактирования колонками нет, часто вылетает и т.п.

 

Посоветуете что-нибудь в альтернативу?..

 

Заранее спасибо!

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


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

Подскажите как в emacs vhdl mode сделать форматирование по buitify вот так

 

   COMPONENT axi_adc_fifo
   PORT (
      m_aclk        : IN  std_logic;
      s_aclk        : IN  std_logic;
      s_aresetn     : IN  std_logic;
      s_axis_tvalid : IN  std_logic;
      s_axis_tready : OUT std_logic;
      s_axis_tdata  : IN  std_logic_vector(63 DOWNTO 0);
      m_axis_tvalid : OUT std_logic;
      m_axis_tready : IN  std_logic;
      m_axis_tdata  : OUT std_logic_vector(63 DOWNTO 0)
   );
   END COMPONENT axi_adc_fifo;

 

 

а не так, как по умолчанию

   COMPONENT axi_adc_fifo
      PORT (
         m_aclk        : IN  std_logic;
         s_aclk        : IN  std_logic;
         s_aresetn     : IN  std_logic;
         s_axis_tvalid : IN  std_logic;
         s_axis_tready : OUT std_logic;
         s_axis_tdata  : IN  std_logic_vector(63 DOWNTO 0);
         m_axis_tvalid : OUT std_logic;
         m_axis_tready : IN  std_logic;
         m_axis_tdata  : OUT std_logic_vector(63 DOWNTO 0));
   END COMPONENT axi_adc_fifo;

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


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

Плюс за

windows => Nodepad++

linux => Kate

 

И то и другое можно удобно настроить под себя.

И там и там пользуюсь HDL Designer + редактор. В редакторе Designer удобно добавлять модули методом drug drop из библиотеки. Все остальное редактирование в Kate или в Notepad++.

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


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

О, а кто-нибудь заморачивался с тем, чтобы сликедит научить подсвечивать отдельным цветом порты? А то по умолчанию он порты и параметры выделяет одним цветом...

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


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

Здравствуйте. Может не в той теме пишу, модераторы поправят.

Уважаемые, есть ли в природе инфа по Vivado на русском языке? Какие-то ресурсы, сайты, руководства. С чего начинать вообще?

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


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

Здравствуйте. Может не в той теме пишу, модераторы поправят.

Уважаемые, есть ли в природе инфа по Vivado на русском языке? Какие-то ресурсы, сайты, руководства. С чего начинать вообще?

www.kit-e.ru

архив статей

Зотов

Тарасов

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


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

www.kit-e.ru

архив статей

Зотов

Тарасов

Спасибо. Это надо журналы покупать. На сайте большинства статей нет.

 

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


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

Добрый день уважаемые форумчане. Почитал я немного ветку по редакторам HDL описаний. И возник у меня насущный вопрос. А если ли какое "хитрое" средство, которое создано для ленивых. Поясню, что я имею ввиду.

Допустим у меня большой проект, где применяется куча самописных модулей/компонентов (в VHDL - Entity т.е сущностей).

Далее я на таком вот примитивном примере буду показывать, как я поступаю, работая с языком VHDL. В Verilog может быть по-другому.

 

Есть 3 модуля/компонента, где каждый - отдельный файл.

Первый компонент:

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY TWO_INPUT_OR IS 
   PORT
   (
       A : IN  STD_LOGIC;
       B : IN  STD_LOGIC;
       Q : OUT STD_LOGIC
   );
END ENTITY;
ARCHITECTURE TWO_INPUT_OR_arc OF TWO_INPUT_OR IS
BEGIN
   Q <= A OR B;
END ARCHITECTURE;

 

Второй компонент.

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY TWO_INPUT_AND IS 
   PORT
   (
       A : IN  STD_LOGIC;
       B : IN  STD_LOGIC;
       Q : OUT STD_LOGIC
   );
END ENTITY;
ARCHITECTURE TWO_INPUT_AND_arc OF TWO_INPUT_AND IS
BEGIN
   Q <= A AND B;
END ARCHITECTURE;

 

Третий компонент.

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY TWO_INPUT_XOR IS 
   PORT
   (
       A : IN  STD_LOGIC;
       B : IN  STD_LOGIC;
       Q : OUT STD_LOGIC
   );
END ENTITY;
ARCHITECTURE TWO_INPUT_XOR_arc OF TWO_INPUT_XOR IS
BEGIN
   Q <= A XOR B;
END ARCHITECTURE;

 

Все вместе они реализуют такую логическую функцию:

image.png

 

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

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;

ENTITY MY_PROJECT IS
   PORT
   (
       A : IN  STD_LOGIC;
       B : IN  STD_LOGIC;
       C : IN  STD_LOGIC;
       D : IN  STD_LOGIC;
       F : OUT STD_LOGIC
   );
END ENTITY;

ARCHITECTURE MY_PROJECT_arc OF MY_PROJECT IS
   COMPONENT TWO_INPUT_OR IS          -- Декларация компонента TWO_INPUT_OR
       PORT
       (
           A : IN  STD_LOGIC;
           B : IN  STD_LOGIC;
           Q : OUT STD_LOGIC
       );
   END COMPONENT;  

   COMPONENT TWO_INPUT_AND IS        -- Декларация компонента TWO_INPUT_AND
       PORT
       (
           A : IN  STD_LOGIC;
           B : IN  STD_LOGIC;
           Q : OUT STD_LOGIC
       );
   END COMPONENT;

     COMPONENT TWO_INPUT_XOR IS      -- Декларация компонента TWO_INPUT_XOR
       PORT
       (
           A : IN  STD_LOGIC;
           B : IN  STD_LOGIC;
           Q : OUT STD_LOGIC
       );
   END COMPONENT; 
   SIGNAL OR_OUT_TO_XOR  :STD_LOGIC;
   SIGNAL AND_OUT_TO_XOR :STD_LOGIC;
BEGIN
------------------------------------------
   OR_COMP : TWO_INPUT_OR             
   PORT MAP
   (
       A  => A,
       B  => B,
       Q  => OR_OUT_TO_XOR
   );
------------------------------------------
   AND_COMP : TWO_INPUT_AND 
   PORT MAP
   (
       A  => C,
       B  => D,
       Q  => AND_OUT_TO_XOR
   );
------------------------------------------
   XOR_COMP : TWO_INPUT_XOR 
   PORT MAP
   (
       A  => OR_OUT_TO_XOR,
       B  => AND_OUT_TO_XOR,
       Q  => F
   );
END ARCHITECTURE;

 

Для того, чтобы в VHDL в одном компоненте применить другой компонент, ранее написанный, необходимо применяемый компонент объявить в архитектурном теле. Так-же в VHDL допускается не объявлять компонент в архитектурном теле, а объявить компонент в файле пакета (PACKAGE):

LIBRARY IEEE ;
USE IEEE.STD_LOGIC_1164.ALL ;
PACKAGE MY_PROJECT_PACK IS

COMPONENT TWO_INPUT_OR IS          -- Декларация компонента TWO_INPUT_OR
   PORT
   (
       A : IN  STD_LOGIC;
       B : IN  STD_LOGIC;
       Q : OUT STD_LOGIC
   );
END COMPONENT;  

COMPONENT TWO_INPUT_AND IS        -- Декларация компонента TWO_INPUT_AND
   PORT
   (
       A : IN  STD_LOGIC;
       B : IN  STD_LOGIC;
       Q : OUT STD_LOGIC
   );
END COMPONENT;

 COMPONENT TWO_INPUT_XOR IS      -- Декларация компонента TWO_INPUT_XOR
   PORT
   (
       A : IN  STD_LOGIC;
       B : IN  STD_LOGIC;
       Q : OUT STD_LOGIC
   );
END COMPONENT; 
END MY_PROJECT_PACK;

 

Это позволит несколько сократить количество строк модуля верхнего уровня, что повысит его читаемость. В модуле верхнего уровня достаточно будет объявить только декларацию пакета. И соединить порты модулей:

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE WORK.MY_PROJECT_PACK.ALL;

ENTITY MY_PROJECT IS
   PORT
   (
       A : IN  STD_LOGIC;
       B : IN  STD_LOGIC;
       C : IN  STD_LOGIC;
       D : IN  STD_LOGIC;
       F : OUT STD_LOGIC
   );
END ENTITY;

ARCHITECTURE MY_PROJECT_arc OF MY_PROJECT IS
   SIGNAL OR_OUT_TO_XOR  : STD_LOGIC;
   SIGNAL AND_OUT_TO_XOR : STD_LOGIC;
BEGIN
------------------------------------------
   OR_COMP : TWO_INPUT_OR             
   PORT MAP
   (
       A  => A,
       B  => B,
       Q  => OR_OUT_TO_XOR
   );
------------------------------------------
   AND_COMP : TWO_INPUT_AND 
   PORT MAP
   (
       A  => C,
       B  => D,
       Q  => AND_OUT_TO_XOR
   );
------------------------------------------
   XOR_COMP : TWO_INPUT_XOR 
   PORT MAP
   (
       A  => OR_OUT_TO_XOR,
       B  => AND_OUT_TO_XOR,
       Q  => F
   );
END ARCHITECTURE; 

 

Вроде всё получается складно. Но проблемы появляться, когда может потребоваться внесение изменений в какой либо из ранее описанных компонентов. Например добавил ещё один порт в один из модулей, или изменил разрядность какой либо шины. Вот тут и появляется самое большое неудобство, поскольку для изменения одного компонента мне потребуется:

1. Изменить файл описания модуля.

2. Изменить файл пакета, где описываются порты изменяемого модуля.

3. В файле где применяется этот компонент добавить\изменить выходные\выходные порты.

 

Если честно это доставляет сильный дискомфорт. И хотелось бы, чтобы часть рутины на себя взяло программное обеспечение.

 

На данный момент я пользуюсь бесплатным редактором NOTEPAD ++ . Удобная вещь. Понимает кучу синтаксисов, большое количество настроек. Множество плагинов. Возможность создавать свои шаблоны (сниппеты). Но вот дальше продвинутого блокнота "для программистов" он не ушел. А хочется найти гибкий инструмент, заточенный под HDL, избавляющий от рутины, описанной выше.

 

Так-же мне очень не хватает проверки синтаксиса "на лету". Например я забыл поставить где-нибудь скобку, или точку с запятой, а редактор подсветил этот косяк.

Существуют ли подобные HDL- редакторы ? Ну и хотелось бы, чтобы у редактора были гибкие настройки подсветки синтаксиса. К сожалению не каждый редактор может этим похвастаться

Изменено пользователем Flip-fl0p

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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