ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Среда
26 июня
123153 Топик полностью
Рэйлвэй Каген (16.06.2008 21:27, просмотров: 672) ответил yes на а чем объяснить практически полный отказ от схематехнического ввода в средах проектирования микросхем (Synopsys, Cadence)? да и ПЛИСы от схематик капчи постепенно уходят... мне кажется трудоемкость/скорость редактирования/ввода важна.
Здесь очень важна глубина/степень детализации задачи в графическом представлении. Ежели визуализировать маш. код, представляете, что мы там напонимаем :) http://www.osp.ru/os/2004/01/183824/data/847/531/1234/054_1.gif
На картинке - функциональная схема некоторого девайса(почти принципиалка, если расписать гейты и ноги на 155 серию :))) Понятно, что легче и быстрее врубиться в логику работы по текстовому описанию из левого нижнего угла. Второй аспект - время, затрачиваемое на составление текестового описания несравнимо меньше, чем для графического представления. Вышесказанное справедливо только для данного "масштаба" представления системы. С другой стороны, врубиться в гору произвольного кода тоже достаточно тяжело, особенно, если тот без комментариев. Хотя, если формализовать достаточно большие блоки кода в графическом представлении, то вся система станет более понятной, а детали реализации можно рассмотреть на текстовом уровне. Другое дело, что код не содержит всей необходимой информации для преобразования в графический блок. Во-первых, если просто переводить код в блок-схему, то не получается необходимого "преобразования масштаба" представления системы. Цикл остаётся циклом, процедура - процедурой. Во-вторых, функциональное назначение той или иной формализуемой ветки всё-равно остаётся в голове разработчика. Алгоритмические языки не имеют средств для описания подобных вещей - масштаба и назначения. Поэтому просто "визуализация" кода (произвольного исходника) не переломит ситуацию в целом, не даст результата в борьбе со сложностью и, как следствие, с допущенными ошибками в спроектированной системе. Отсюда неутешительный вывод - что-то визуализировать и комбинировать это с текстовым описанием нужно с первого этапа проектирования. Только так удастся сохранить и использовать информацию, теряемую при написании исходника. Ради примера: В устройстве нужно 2 разные задержки. Решили, что сделаем одну на таймере, другую - тупо пересчетом или ещё тупее - nop'ами. Типа - первая прозрачна относительно времени выполнения, а второй - пофиг, ну постоит вся система, подождет вместе со мной :) написали исходничек, отдали в сопровождение... Но потерялась ценнейшая инфа - ПОЧЕМУ здесь delay1, а там delay2. Как её восстановить, имея на руках только исходный текст? А заюзать таймерок ещё в другой процедурке? Так, чтобы без side-effect :)