|
|
  |
Редакторы HDL, альтернатива |
|
|
|
Mar 18 2008, 07:17
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(des00 @ Mar 18 2008, 11:13)  Ну у меня если скормить ему чистый верилог файл (2001 года) с описанием портов модулей в стиле 95 года, то при реверс инжинеринге он : Вот у меня порты описаны в стиле 2001, возможно поэтому он и лажается. Не готов отказаться от описания портов в стиле 2001 в угоду прихотям редактора. Цитата(des00 @ Mar 18 2008, 11:13)  Для верилога у меня работает дополнительно работает Dynamic Surround, а отключив Syntax Expansion и добавив вместо него своих alias можно убрать надоедливую проблему int/integer. %))) Да, alias'ы рулят, сам широко использую. Например, на al назначен на alias Код always_ff @(posedge clk) begin if(rst) begin %\c end else begin
end end а alwar: Код always_ff @(posedge clk, posedge rst) begin if(rst) begin %\c end else begin
end end экономит время и силы на этих мелочах, за что его (редактор) и любим.  Цитата(des00 @ Mar 18 2008, 11:13)  Такие парсеры пока не интересуют, хотелось бы как минимум подсветку типов. Подозреваю что нужно просто в коде скрипта добавить к типам reg и wire другие типы и перекомпилировать скрипт (в *.ex файл). Вы про syntax highlighting? Если да, то это совсем просто: Tools->Options->Color Coding, там увидите диалог, где рулятся опции подсветки синтаксиса, самый первый таб, как раз, задает список ключевых слов. Вписываете свои и вуаля. Цитата(des00 @ Mar 18 2008, 11:13)  Вот только компиляцию скриптов что-то никак не могу разобрать как делать правильно. Не могли бы ткнуть носом куда смотреть ? Это тоже очень просто - для того, чтобы скрипт загрузился и скомпилялся, достаточно сделать его загрузку: Macro->Load Module. Там указываете имя .е файла и все. Он его скомпилит сам, загрузит в рабочее окружение и этот модуль теперь всегда будет использоваться. Что касается комментирования блоков, то это там появилось не так давно, а раньше я свой использовал. В настоящее время из самописных макросов активно использую переход на следующее/предыдущее вхождение слова под курсором - удобно быстро посмотреть, где оно используется в текущем файле (хоткей на это назначен Alt+Up/Down) и перемещение текущей строки выше/ниже (хоткей Ctrl+Up/Down). Цитата(des00 @ Mar 18 2008, 11:13)  А насчет времени, впереди вечность %) куда торопиться, можно и пару часов в неделю выкроить под Slick-C. Проблема в том, что на эту пару часов слишком много кандидатов, начиная от более плотного изучения того же SV, и заканчивая собственным проектом, который почти забросил из-за текучки. Во всяком случае Slick-C в этой очереди стоит где-то ближе к концу. И я бы предпочел, чтобы там вместо своего языка было бы что-нить типа питона, тогда, м.б. я бы нашел в себе время этим заняться, бо это было бы более благодарное занятие. А так Slick-C, как и подобает С-языку, слишком низкоуровневый и код на нем не поражает (меня) красотой и элегантностью. Не сказать, что он сложный, но в нем полно расширений и нюансов, что делает задачу его освоения не такой простой. А учитывая, что постоянно работать с ним не будешь, то когда понадобится в следующий раз что-то подправить, в чем-то разобраться, опять все придется проходить практически по новой. Не, не вдохновляет.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Mar 18 2008, 10:07
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(dxp @ Mar 18 2008, 02:17)  Вы про syntax highlighting? Если да, то это совсем просто: Tools->Options->Color Coding, там увидите диалог, где рулятся опции подсветки синтаксиса, самый первый таб, как раз, задает список ключевых слов. Вписываете свои и вуаля. Нет я не про него. Кстати путь описанный вами хорош, если нужно добавить 1,2 слова, а если нужно вбивать много то лучше ручками поправить \Мои документы\My SlickEdit Config\12.0.3\user.vlx при этом потом поделиться с другом полным набором служебных слов SV %)) а через Мои документы\My SlickEdit Config\12.0.3\uscheme.ini подарить ему свои цветовые схемы я же говорил вот про что : лексический парсер верилога лежит macros\verilog.e, если позырить его содержимое то там Код static SYNTAX_EXPANSION_INFO _Keywords:[] = { 'always' => { 'always' }, 'and' => { 'and' }, 'assign' => { 'assign' }, 'begin' => { 'begin ... end' }, и похоже что новое содержимое .vlx файлов не учитывается в парсере, все собираюсь найти время и разобраться с этим парсером, что бы обрабатывал новые типы также как и старые. Цитата Это тоже очень просто - для того, чтобы скрипт загрузился и скомпилялся, достаточно сделать его загрузку: Macro->Load Module. Там указываете имя .е файла и все. Он его скомпилит сам, загрузит в рабочее окружение и этот модуль теперь всегда будет использоваться. 10x, гут, на досуге поковыряюсь. Цитата И я бы предпочел, чтобы там вместо своего языка было бы что-нить типа питона, тогда, м.б. я бы нашел в себе время этим заняться, бо это было бы более благодарное занятие. Ну думаю что тогда слик работал бы со скоростью менторовского редактора из хдл дезайнера %)) Хотя PyWin вроде тоже на питоне сделан и работает достаточно быстро.
--------------------
|
|
|
|
|
Mar 18 2008, 13:38
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(des00 @ Mar 18 2008, 16:07)  Нет я не про него. Кстати путь описанный вами хорош, если нужно добавить 1,2 слова, а если нужно вбивать много то лучше ручками поправить Если надо много, то там можно импортировать текстовый файл. Я так и делал, когда готовил подсветку для Blackfin'овского асма - там имен добавлять пришлось десятки. Сперва подготовил списки имен в текстовых файлах, потом импортировал их. Цитата(des00 @ Mar 18 2008, 16:07)  Ну думаю что тогда слик работал бы со скоростью менторовского редактора из хдл дезайнера %)) Заблуждение. Не настолько там сложные и навороченне операции. Сам Slick-C тоже не С/C++ - он тоже компилится в некий промежуточный код, который исполняется на движке редактора, т.е. это не нативный компилируемый язык. Примерно то на то и выйдет. Цитата(des00 @ Mar 18 2008, 16:07)  Хотя PyWin вроде тоже на питоне сделан и работает достаточно быстро. Именно.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Apr 8 2008, 21:37
|
Частый гость
 
Группа: Свой
Сообщений: 104
Регистрация: 11-11-05
Из: Москва
Пользователь №: 10 714

|
Поставил Eclipse IDE, а для SystemVerilog подключил к нему плагин DVT - теперь не нарадуюсь. Жаль плагин триальный на 6 месяцев присылают ключ. Но многое можно и самому сделать потом. Т.к. Eclipse - интегрированная опенсурсная среда разработки, сразу подключил внутрь subversion. Можно использовать плаги Mylin для коннекта из Eclipse к серверу управления проектом (есть коннекторы на Trac, Bugzilla, Jira, Xplanner и т.д.) Теперь одна IDE стоит и на Linux'e и под Win'ом. Можно забыть про Nedit.
|
|
|
|
|
Jun 4 2008, 09:25
|
Участник

Группа: Свой
Сообщений: 55
Регистрация: 29-01-05
Из: Moscow
Пользователь №: 2 291

|
Цитата(RHnd @ Feb 9 2008, 17:46)  Поставил себе notepad++... ...Так же не нашел работу с темплейтами. Единственно, что похоже - плагин quikText, но его я не смог подружить с verilog.  Интересно, а кто-нибудь с template в notepad++ разобрался? А то без них он как бы и не очень нужен работающим в HDL.
|
|
|
|
|
Jun 5 2008, 15:26
|
Участник

Группа: Свой
Сообщений: 55
Регистрация: 29-01-05
Из: Moscow
Пользователь №: 2 291

|
Для notepad++ создал verilog.api. Ключевые слова - из стандарта Verilog 2001. Ну а вот директивы компилятора и системные задачи и функции в этом файле жить не захотели - не всегда открывалось окно списка. А получается нездорово без шаблонов-то: ни свою, ни языковую, ни библиотечную конструкцию не вставить, только вручную. Ну и до кучи. Не нашлось создания шапки (title). Вставка времени и имени файла есть, но по отдельности, а макрос эти вставки не взял, что-то ему мешается. А выделение функциональных блоков смотрится хорошо, глаз так и цепляет. Конечно, это всегда так было, что читать приятнее чем писать, и notepad++ это лишний раз подтверждает.
|
|
|
|
|
Sep 11 2008, 10:18
|
Профессионал
    
Группа: Свой
Сообщений: 1 975
Регистрация: 30-12-04
Из: Воронеж
Пользователь №: 1 757

|
VIM plugin: Automatic generator for Verilog HDLSupport Automatic functions like Emacs for Verilog HDL Feature list: 1) Auto Argument (the same as Emacs) 2) Auto Instance (power than Emacs) 3) Auto Define Signals 4) Auto unit delay "<=" to "<= #`FFD" 5) Auto always block 6) Auto header 7) Auto comment
|
|
|
|
|
Nov 18 2008, 05:08
|

тоже уже Гуру
     
Группа: Свой
Сообщений: 2 047
Регистрация: 13-06-05
Из: Кёлн - Санкт-Петербург
Пользователь №: 5 973

|
долго мучился пытаясь выбрать из предложенных вариантов бесплатный редактор с наибольшим количеством прибамбасов и простотой изучения - метался между NotePad++ и ConText (был ещё вариант AkelPad) настораживала сложность изучения плагинов для расширения функц.возм. (плохо документированы). в итоге начал копать NotePad++ как продукт с открытым кодом и докапался до технологии Scintilla, на которой он построен и наконец просто установил SciTE (та же комманда разработчиков, которая делала эту Scintilla). подержка продукта намного лучше (постоянные обновления сборки), есть русскоязычная комманда, развивающая русскую версию сборки (есть качественные отличия от оригинала, т.е. несколько комманд работают параллельно, а финальный релиз сливают из лучшего, что получилось), большой форум на русском, который помогает разобраться с тем, что в NotePad++ без поллитры не разобраться, существует документация (тож на русском). в итоге для того чтобы разобраться как делаются новосинтаксические языковые настройки ушло около 2-ух часов. видимые(мне) плюсы редактора: настройка подсветки синтаксиса (под язык); настраиваемые шаблоны и автозавершения (в том числе и многострочные); составление списка функций/процедур (можно расширять до классов, переменных, модулей и т.д.); свёртка блоков; ну и все остальные прибамбасы современных текстовых редакторов типа преобразование текста, поиск по шаблону и пр. (вообще это всё расширяемо через собственный скриптовый язык). в общем останавливаюсь на нём. буду копать и настраивать под SV ЗЫ: естественно многие принципы у них схожи с NotePad++,т.к. на едином компоненте построены (Scintilla)
--------------------
И снова на арене цирка - дрессированные клоуны!! Оказываем консультации по электронике за симпу круглосуточно.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|