В этом тексте написал о забытом понятии: блок-схемы для разработки электроники. В ГОСТ(е) их называли Э1 (Схема структурная). Блок-схем это хороший уровень абстракции при анализе электронного устройства или PCB. Представил несколько атрибутов, которые сформировались при создании блок-схем. Привел примеры образцовых блок-схем.
Как часто говорил университетский лектор: “Инженеры - это про схемы”. Также существует отличная английская пословица: “Картинка стоит тысячи слов”.
Почему важно создавать блок схемы?
1> Чтобы быстро ввести в курс дела новых людей.
2> Чтобы увидеть потенциальные ошибки дизайна на ранней фазе разработки продукта.
3> Блок-схемы это, как говорит старинная американская народная поговорка, “helicopter view”. Глядя на схему можно увидеть архитектуру платы с высоты птичьего полета.
3> Чтобы упростить навигацию по сложной схемотехнике (Э3)
У меня была схема электрическая(Э3) на 101 страницу. Э3 на 30-42 страниц - это вообще норма жизни. Нужно, например, понять какой designator у JTAG разъема. Прежде чем искать его в электрической схеме я за пару секунд найду его имя из блок-схемы. Далее одним поиском нахожу разъём на 70-страничной Э3 по имени designator(а). Easy
4> Чтобы определить на что вообще способна аппаратная платформа изделия.
На блок схеме сразу видно какие есть датчики, интерфейсы, сколько памяти, какие процессоры и какие исполнительные механизмы. Все это понятно просто просмотрев блок-схему по диагонали.
5> блок-схема позволит верифицировать принципиальную схему.
Проще говоря, если по Э3 никак не составить Э1 (в Э3 не указано куда идут некоторые провода), то Э3 следует отправить на доработку.
6> Блок-схема поможет составить firmware. Сразу понятно какие компоненты надо подключать к сборке, глядя на блок-схему. Как говорил университетский профессор: “Hardware первично Software вторично”.
7> Блок-схема поможет интеграторам в установке устройства. Поможет им найти нужный разъём и они поймут с какой стороны подходить к плате. И это всё благодаря блок-схеме.
Почему не достаточно электрической принципиальной схемы?
Главная проблема электрический принципиальных схем (Э3) это “летающие фрагменты”.
Надо постоянно пользоваться поиском, чтобы проследить куда идет конкретный провод(например 3V3 или VBUS). Хорошо когда Э3 в *.pdf. Однако зачастую в постсоветских по менталитету компаниях электрические принципиальные схемы Э3 до сих пор распространяется внутри организации в виде фотографии (*.JPG файле или даже *.PNG или *.TIF) и там естественно нет поиска. Поэтому крайне желательно делать блок-схемы PCB.
Как создавать, редактировать и распространять блок-схемы?
Для блок схем идеально подходит векторная графика и *.svg файлы. Есть бесплатная и мощная программа Inkscape. Inkscape это редактор векторной графики и *.svg файлов. Как paint только для векторной графики, а не для растровой. В отличии от пресловутого draw.io(где надо зачем-то авторизироваться) в Inkscape ставится в 2 минуты. В Inkscape есть слои! Можно уменьшать сложность схем путем отключения, например, слоя с распределением питания и рассматривать только System design. В Inkscape множество интуитивно понятных инструментов и никакой авторизации. Также Inkscape выигрывает по сравнению с MS Visio так как Inkscape бесплатный. Inkscape еще хорош тем, что в нём чертить можно. Бесплатная альтернатива AutoCAD.
Понятно, что блок схемы следует рассматривать на мониторе в специальном софте со слоями и с увеличением нужных мест из *.pdf или *.svg файла через редактор/браузер. Отличительная особенность векторной графики как раз в том, что качество изображения не ухудшается при увеличении изображения как это повсеместно в растровой графике(фотографиях). Очень редко, когда блок-схемы надо печатать на бумаге так как они очень информативны.
Все известные вендоры предоставляют качественные и подробные блок схемы своих изделий. Впереди всех в вопросе предоставления высококачественных блок-схем конечно STMicroelectronics. Их блок схемы SoC(ов) просто шедевры.
Атрибуты хорошей блок-схемы для PCB:
Далее следует методичка по составлению блок-схем. Правила сформировались как обычно из реальных инцидентов при создании блок-схем.
1) Блок-схема должна умещаться на одном листе. В этом ее смысл. Минимум площади максимум информации.
2–Показываться непрерывными стрелками куда идут данные.
3–использовать разные цвета для обозначения разных шин данных и рельсов напряжения.
4–Показывать разрядность шин данных: UART, SPI, I2S,I2C,PCI, VR12, SDIO, SWD, CAN, MII, MDIO, USB, 100BaseT1, SpaceWire и пр.
5–Показывать сколько pin(ов) на каждом чипе и разъеме (и сколько свободных Pin(ов))
Это позволит найти соответствие между схемой и реальным физическим устройством при Bring-up(е) изделия.
6–Желтым цветом показать кварцевые резонаторы/генераторы и указывать какими частотами тактируются чипы.
7–Показывать названия интерфейсов: I2C, MDIO, I2S, SPI, JTAG, SWD, SWI и их максимальные битовые скорости в данном устройстве.
8–Показывать сверху интерфейсы, которые работают в обе стороны CAN, RS232, 100BaseTX, 100BaseT1.
9-Снизу показывать память PCB.
10–Слева показывать делители напряжения. Обязательно указать коэффициент деления.
11–Показать каким напряжением запитана каждая микросхема
12–Зелёным цветом показывать аналоговые фильтры
13–Если у микросхемы есть внутренние регистры, то указывать количество регистров и их разрядность. Это позволит оценить трудозатраты на написание драйвера для этой умной навороченной микросхемы.
14–подписать имя основных проводов
15--То что на входе устройства: кварцевые генераторы, датчики, кнопки то слева.
16–То что на выходе устройства: светодиоды, экраны, цифро-аналоговые преобразователи DAC, реле, моторы, аудио кодеки. отражать в правой части схемы.
Человеку естественно анализировать информацию в направлении слева-направо и сверху-вниз. Автор блок-схемы должен иметь это в виду.
17–Отражать по краям разъемы. Благодаря этому пройдя взглядом по периметру блок-схемы можно перечислить все разъёмы на PCB.
18–цветом показать какая микросхема в каком слое.
19–Отражать дескрипторы микросхем U1...Un
20–Отражать дескрипторы разъемов (X1...Xn) и
21–Отражать названия микросхем и их назначение
22–Отражать теоретическое и практическое значение потребляемой мощности. Можно выявить короткое замыкание, если реальное значение мощности превышает теоретическое значение из блок-схемы.
23–Показывать стрелками как распространяется питание на плате.
Дополнительные атрибуты блок схемы
24-показать стоимость каждого чипа
25-показать количество слоев PCB
26–показать разрядность чипов DAC/ADC
27--показать тип корпуса каждой микросхемы
28-показать температурный диапазон чипов
Шоурум блок схем
Вывод:
Блок-схемы это мощный инструмент визуализации архитектуры электронного изделия. Существует программный инструмент Inkscape и специальные формат файла *.svg для редактирования векторной графики и создания высококачественных блок-схем.
Ссылки на статьи по теме
https://habr.com/ru/post/451158/
https://habr.com/ru/post/541478/
https://habr.com/ru/post/317172/
https://habr.com/ru/post/337078/
Если у вас есть замечания, что еще следует указывать на блок-схемах или как их вообще создавать, то укажите это в комментариях
Автор:
aabzel