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

Yra

Свой
  • Постов

    396
  • Зарегистрирован

  • Посещение

  • Победитель дней

    1

Весь контент Yra


  1. Я приспособился делать следующее: В Verilog - коде/файлах проекта (да в любом другом коде, где есть многострочные комментарии) добавляю такое: /* _latex_start_ \section{Описание того что считаю нужным описать } текст, списки, таблицы, листинги, даже рисунки в tikz - формате, даже временные диаграммы в tikz - формате _latex_end_ */ Получается что - то вроде самодокументирующегося кода, только не для Doxygen а напрямую для Latex Когда нужно сверстать документ, чтобы выцепить их комментариев это описание использую свой скриптик (Он на Lua5.3 написан, кстати рекомендую - язык - огонь) https://github.com/yrasik/VP_auto/blob/master/bin/lua/get_latex_info_from_code.lua - он ни о чем, можно подобное на python изобразить - неважно. Этот скриптик извлекает всё что между тегами в комментариях в одноименные *.tex - файлы. Эти файлы подключены к *.tex - файлу верхнего уровня. Собираю всё это lualatex (из пакета TeXLive). Стилевые файлы и пр. можно отсюда https://github.com/yrasik/eskdi. Тогда можно умудриться по ЕСКД - описание оформить.. Незатейливые рисунки - блоксхемы можно приноровиться делать в https://github.com/yrasik/tikzit (tikzit, наученный русским буквам) - главное преимущество этого изложено в https://github.com/yrasik/eskdi/blob/master/about.pdf в приложении Д.4. .. в общем надо переходить на Тёмную Сторону Силы...
  2. PCAD 2002 Schematic

    Свои 5 копеек в обсуждение темы генерации перечней: https://github.com/yrasik/VP_auto. Для проектов с 1000+ элементов на платах. Полностью открытый код. Генерирует перечни, спецификации, ведомости покупных, файлы с разделителями для exel. Есть функции находжения схожести названий элементов на основе применения цепочек регулярных выражений и др...
  3. Основной файл интерфейса Verilog <-> Lua поместил в https://github.com/yrasik/Verilog_Lua. По аналогии можно и для Python подобное изобразить....
  4. Я наконец по достоинству оценил преимущества скриптовых языков. Вот Lua, например, имеет динамическую типизацию, основан на разряженных таблицах и легко встраивается в C/C++ код. В общем, немного доработал VP_auto. Теперь там можно выполнять более продвинутую сортировку т.к. алгоритм сравнения двух элементов вынесен в Lua - модуль. Можно, к примеру сортировать резисторы P1-12в спецификации/ведомости покупных по мощности-номиналу, как любят педанты из нормоконтроля... Добавил до кучи в проект несколько скриптовых утилит, помогающих справляться с обработкой разрастающейся базы наименований компонентов.
  5. Я, конечно свой подход не навязываю, но он имеет место быть. Допустим схемотехник закладывает в схему разъемы Molex (назовет ее схемой электрической принципиальной верхнего уровня блока, где платки соединяются шлейфиками). Разных типов. А у них контактики поставляются отдельно. И их надо не забыть купить. А еще есть держатель предохранителя ( которого на схеме нет, но это тоже плкупное изделие). Если мы про плату говорим- там экранчики имеют названия и др.. При этом сборочный чертеж делапт другой человек, а ведомость покупных - трптий. Все это по врнмени растянуто. И можно забыть купить что- то из выше ппречисленного. Или купить не в том объеме... И время на пересчитывание/ перепроверку всей этой мелочевки все трое лишнее тратят. Я справляюсь с этим нанесением на схему принципиальную элементов, размером с пиксель и имеющих позиционные обозначения с(невидимые) специальным перфиксом. При генерации перечня элементы с таким перфиксом не учитываются. При генерации ведомости покупных и графы спецификации'прочие изделия' - учитывсется. При распечатывании принципиальной схемы все это не видно. Еще и проверка дополнительная, чтобы элементы во всех трех документах назывались одинаково с точностью до символа. Раньше тратили на это тоже время. В базе, к примеру английсакя 'А' а в перечне - русская. Компьютер не находит в упор такое. Чтобы находил - нужно использовать регулярные выражения... Программу для этого создал (с открытыми исходниками). На гитхабе она есть. На форуме тема есть. Пользуюсь сам сим художеством..
  6. Т.е. печатник предоставляев Вам свой исходник, который Вам был совершенно не интересен на стадии его проектирования. Бывает такое, что волосы дыбом становятся, когда разобрались, как проложена дифференциальная пара от USB 2.0? Как посечен опорный слой? Из-за этого глючит проект? Импульсный преобразователь скомпанован/разведен неправильно? А Ваша роспись стоит на проекте печатной платы в графе 'проверил' Что делаете в таком случае? Идете к начальству, говорите, что печать надо переделать, подправить диаграммы Ганта на пол года вперед... А они такие 'Ну конечно. Без вопросов. Вы же разработчик.'
  7. В сборочный Вы не заглядываете? Где резистор стоит, в который ткнуть осциллографом надо Вас не интересует... Да я знаю что такое киты. А если Вы не киты делаете? А скажем плату автоматики для АЭС. Я бы, как заказчик в таких случаях требовал бы с Вас полный комплект КД, сертификаты на ПО, результаты испытаний и др..
  8. Мне, как студенту-практиканту (это очевидно по моему профилю на этом форуме) интересно. Вам, как инженеру - схемотехнику на стол кладут плату, сделанную по Вашей Э3 и по ПЭ3 с целью отрегулировать? Если да - то странно,что Вас удивляет моя озабоченность кто и как будет по моим схемам формировать основной конструкторский документ - спецификацию. И что делать, если детальку купить не смогут из него? И читал ли конструктор- печатник книжку 'Конструирование высокоскоростных цифровых устройств' Говард Джонсон. Разведут Вам пару плат (с DDR3, к примеру) с особым цинизмом - вспомните студента-практиканта :) И разработчик, разве не должен свою подпись ставить на сборочном в графе 'проверил'? И что Вы делаете, когда проверенное Вам не нравится?
  9. Это у Вас нормоконтроль не оголтелый. А так готовьтесь - придёт в нормоконтроль новый человек (и не факт, что с техническим образованием) и будете ему доказывать про индуктивность, которая в перечне есть (с пометкой DNU), а в спецификации ее нет. И где в ЕСКД за 70-й год аббревиатура DNU. Докажете - замечательно. Через пол года другому человеку готовьтесь доказывать (при очередной коррекции схемы, к примеру). Не факт, что получится. Придётся перечень со спецификацией переделывать... Стандарты тоже должны развиваться, идя в ногу со временем. А плату такую лучше самому и развести как надо. А рационализаторов не пускать (не ставить свою подпись под рационализаторством). Накосячат - их проблемы. Вы про индуктивность рассуждаете - а как на схеме обозначить интерфейс DDR3? И как бороться с рационализаторами? Как печатнику (имеющему специальность далеко не 'Радиоконструирование') доказать, что это важно? Если здравого смысла больше критической массы - хорошо. Прислушаются. Выпустят адекватный стандарт предприятия... Если нет - крысятничать готовьтесь. Для меня это больной вопрос. Мне последний раз надписи на схеме забанили... НАДПИСИ НА ПРИНЦИПИАЛЬНОЙ СХЕМЕ... Как тебе такое, Илон Маск?
  10. У нас путем длительных игр разума определили: все, что имеет больше трёх ног является микросхемой D... Взять хотя бы Ehternet трансформатор: T -> Z (потому, что там фильтр из трансформаторов) -> D (потому, что там два фильтра из трансформаторов)....
  11. Катушку, обозначенную на схеме будут пытаться в ведомости покупных купить и в спецификации отразить. Проще зюзюку самому на печатной плате нарисовать как надо, чем со всеми службами бодаться... Нервы сэкономите. На схеме для себя придумайте систему обозначений, не противоречащую требованиям ЕСКД (застрявшим в 70-х годах прошлого века). Для AD я мутил скрипты по перекрашиванию подобных вещей (а именно классов цепей, диф пар и др.) в цвет фона (для нормоконтроля) и обратно (для себя). Их на замечательном Visual Pascal без классов там писать надо. Как крыса последняя..
  12. Я прокачивал Verilog PLI/VPI + Lua 5.3. Т.е. В верилоге делал модуль (имитатор мастера на системной шине), который управлялся через PLI/VPI Lua - скриптом. Вроде даже работало. Имитировал процессор в основном цикле и в обработчике прерывания. Даже получился эксперимент с общением этого чуда по локальной сети через Lua Sockets по UDP. При должном терпении и мотивации это можно прикрутить к qemu (как вариант через сокеты) и/или к SystemC-AMS...
  13. Это да, наверное. Я у себя развиваю идею структурирования папки с проектом подобным образом: ./Название проекта ....| ....|-Папка со схемами, pcb, герберами и др. ....| ....|-Папка с данными для VP_auto и подобных вспомогательных программ ....| ....|- Utils ........| ........|-VP_auto (сама программа) ........| ........|-msys (выдернутые утилиты из MinGW) ........| ........|-GC (Great Code для форматирования С-кода) ........| ........|-Другие мелкие консольные вспомогательные программы Естественно, всё это запихивается в репозиторий (в том числе и бинарники). В результате на другой пустой машине это всё можно извлечь из репозитория и продолжить работу над проектом. Всё это обвязывается скриптами (сложные вещи можно делать в bash - стиле для этого и msys...). Одна строчка тогда в этом файле.
  14. Очередная версия программы VP_auto v3.0. Проект выложен на GitHub. https://github.com/yrasik/VP_auto Список изменений приведён в описании. https://github.com/yrasik/VP_auto/blob/master/VP_auto.pdf Надеюсь, программа будет Вам полезна. Меня она просто выручает... Просьба сообщить об обнаруженных ошибках....
  15. Новая версия пакета. Разместил на github: https://github.com/yrasik/eskdi - Сделал возможность печатать шрифтом 14pt, - NumIntoSections - нумерация объектов в пределах глав - списки в списках поддерживаются ( \itemb ) - поддержка нестандартных листов (A4x3 и др...) - добавил интересненькое в приложения - исправил косячки Пользуйтесь на здоровье.
  16. eskdi_G2-105-95.sty : \WithSuffix\newcommand\section*[1] {% \newpage% \ifx\gostParagraphInToc\undefined% \ifx\gostSubSubSectInToc\undefined% \ifx\gostSubSectInToc\undefined% %В оглавлении печатаются только секции {\bf#1}% \addcontentsline{toc}{section}{#1}% \else% В оглавлении печатаются секции, подсекции {\bf#1}% \addcontentsline{toc}{section}{\hspace{8mm}#1}% !!!!!! ВОТ ЗДЕСЬ СДВИГАЕТСЯ \fi% \else% В оглавлении печатаются секции, подсекции, поподсекции {\bf#1}% \addcontentsline{toc}{section}{#1}% \fi% \else% В оглавлении печатаются секции, подсекции, поподсекции и параграфы \large{\bf#1}\normalsize% \addcontentsline{toc}{section}{#1}% \fi% \vskip 5mm% }% ESKD_frames.sty: Вместо \newcommand{\DrawFieldTopFirstI} {% \begin{picture}(0,0)% \setlength{\unitlength}{1mm}% \linethickness{\pcbdoclinethick}% \put(-12,167){\line(0,1){120}}% \put(-7,167){\line(0,1){120}}% \put(0,167){\line(-1,0){12}}% \put(0,227){\line(-1,0){12}}% \put(0,287){\line(-1,0){12}}% \put(-12,0) {% \vspformedboxmm{0}{167}{5}{227}{c}{\normalfontit Справ. №} \vspformedboxmm{0}{227}{5}{287}{c}{\normalfontit Перв. примен.} \vspformedboxmm{5}{227}{12}{287}{c}{\largeit\@gostferstklgi} }% \end{picture}% }% \newcommand{\DrawFieldBottomNext} {% \begin{picture}(0,0)% \setlength{\unitlength}{1mm}% \linethickness{\pcbdoclinethick}% \put(-7,0){\line(0,1){145}}% \put(-12,0){\line(0,1){145}}% \put(0,0){\line(-1,0){12}}% \put(0,25){\line(-1,0){12}}% \put(0,60){\line(-1,0){12}}% \put(0,85){\line(-1,0){12}}% \put(0,110){\line(-1,0){12}}% \put(0,145){\line(-1,0){12}}% \put(-12,0) {% \vspformedboxmm{0}{0}{5}{25}{c}{\normalfontit Инв. № подл.} \vspformedboxmm{0}{25}{5}{60}{c}{\normalfontit Подп. и дата} \vspformedboxmm{0}{60}{5}{85}{c}{\normalfontit Взам. инв. №} \vspformedboxmm{0}{85}{5}{110}{c}{\normalfontit Инв. № дубл.} \vspformedboxmm{0}{110}{5}{145}{c}{\normalfontit Подп. и дата.} }% \end{picture}% }% вставить \newcommand{\DrawFieldTopFirst} {% }% \newcommand{\DrawFieldBottomNext} {% }% 1 ) В файл eskdi.sty добавьте \renewcommand{\@dotsep}{300}% ГУСТОТА ТОЧЕК
  17. Это не тот случай. Как раз все косяки выползают наружу при таком подходе. Конечно, нужно сделать ещё пустой проект, чтобы начинающий его брал за основу. Раньше народ даже книги писал типа "Создание интерактивного web -сайта с нуля" - вообще то даже это не совсем очевидная вещь, много было тонких моментов. есть у проекта и репозиторий и форум и страничка.... Всё сделано по фэн-шую ..... только последняя активность наблюдалась 4 года назад. Там всё доделано? Всех пользователей устравивает полностью? Попробуйте сверсать мои примеры в ESKDX и увидите, что не всё так гладко... Ещё Вы планировщик проектов с сетевыми графиками забыли упомянуть (типа Redmine). Я с ним разбирался раньше, кстати. Вот это мне и не нравится в "правильном подходе" - много бюрократии, причём исходный код - отодвирается на третий план. И как Вам рисование схем (принципиальных, к примеру) средствами LaTeX ? По мне - смахивает на мазохизм. Я пользуюсь путём PCAD -> BullzipPDF -> PDF -> включение в LaTeX. При таком подходе получается неразмыленная картинка в документе. И самое важное - легко отредактировать исходник и опять перевести в pdf. cvs - морально устарел. svn -я его и юзаю, локально. Только фиксации осуществляю туда не от ревизии к ревизии, а по мере выполнения логически завершенных операций: захотел экперимент поставить - зафиксировался и дальше ковыряю весь проект. То что зафиксировал - ревизией назвать нельзя, но не фиксироваться - чревато негативными последствиями. Можно конечно заморочиться "деревом проекта", с "ветвями", со "слиянием в основную ветку".... но это попахивает раздвоением/растроением личности на данном соло-проекте. На ftp много интересного есть... Вообще Ваш подход хорош для проекта масштаба "Российская сквозная ECAD - система полностью по ЕСКД" где должна быть куча разработчиков/тестеров/администраторов/пользователей. Всё это должно двигаться в правильном направлении. В проектах такого масштаба по другому нельзя т.к. концы с концами не сведутся никогда. Мой проект простенький. Можно себе голову заморочить в ущерб основному. не нашел.
  18. Спасибо. Рисунок нельзя вставить в режимах MakeStamp и MakeEmptyStamp. Можно вставить в режиме по умолчанию. Рисунки должны находиться во вложенных папках относительно tex овского исходника.У меня картинки на титульник хранятся в /eskdi/ (там одна лежит) В файле /about/title.tex нужно соотв. строчку раскомментировать. Скопируйте эту строчку к себе в проект и раскомментируйте
  19. Косвенные показатели - количество скачиваний, количество и качество задаваемых вопросов, отношение к проекту в оффлайне. Какие Ваши критерии оценки? По какому критерию Вы инкрементируете версии Ваших проектов? Есть правила (на русском языке)? Это у меня-то ничтожная доля примеров? Да я всё на что фантазии хватило затолкал в примеры (папочка "about" в проекте). Критиковать каждый может.... Напишите плиз инструкцию пошаговую "как поместить проект в репозитрий https://sourceforge.net" + создание странички проекта + wiki+форум + грамотное распределение прав доступа к репозиторию. Думаю, это будет полезно многим. Если хотите, воспользуйтесь при этом eskdi. Заодно про глюки напишете найденные. ... Вместо cкриншотов можете смело воспользоваться услугами TiKZ, pgf. Проект может быть из стадии бета перейдёт в релиз. И у Вас статус на форуме инкрементируется. Вообще с нашего форума много проектов переехало в https://sourceforge.net ? Почему с моего начали?
  20. Да оно вроде популярностью не пользуется. Вопросов почти не задают. Пишу для себя практически. Версия - условность. Торкнуло - инкрементировал. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Новая версия проекта. Особое внимание посвящено: - рисованию рамок и штампов средствами LaTeX; - созданию "продвинутой" двустраничной печати (пропуск страниц в нужных местах особенно перед большими страницами); - созданию стиля "минимальный"; - описанию команд eskdi в сопроводительном документе; - интеграции eskdi в TexLive 2014 - экспериментам с интеграцией в документ рисунков и диаграмм, выполненных в сторонних программах eskdi_4.0b.zip about_empty_twoside_ss.pdf about_eskd_tnr_sssp.pdf about_free_tnr_sss.pdf
  21. Можете посмотреть мои посты на форуме. Я стараюсь не пылить....
  22. примеры не критичных цепей, которые важно просто "прошнуровать": 1) I2C - цепи 2) SPI - цепи с частотой до 10 МГц (можно подровнять по длинне почуть...) 3) RS232 - цепи от контроллера до драйвера и от драйвера до разъёма 4) всякие включение/ выключение светодиодов 5) матрица клавиатуры 6) I2S - цепи (с выравнивание по длинные, не слишком протяженные) 7) CF/ATA - интерфейс до CF карточки ( подровнять потом) В последнем проекте у меня такого добра набралось 500 цепей, причём все довольно длинные т.к. при компоновке уделил внимание высокоскоростным... Все это можно доверить автотрассировку а затем по чистить разводку ручками... Можно конечно все ручками, но меня это демотивирует. Дипами с резисторами не пользуясь. В основном BGA 0.8 <=
  23. С точкой маленького размера разобрался - надо в DXP-Preferenses-Schematic-Compiler-AutoJunction и Manual Junction выставить соотв. цвета и размеры.
  24. Авто трассировки с умом надо использовать. Тогда смысл будет. Если напростенькой уже глючит - что говорить о сложной? Спекторй пользуясь для разводки не критичных цепей ( после ручной компоновки, расстановки полигонов, цепей питания, дифференциальных пар, Ddr). Удобно там, где важно прошнуровать цепи. После неё , конечно редактировать надо ручками. Не об этом пост - нужно не нужно. Если не нужно - выкинуть соответствующий иттерфейс, чтобы голову не морочить.
×
×
  • Создать...