Последний раз редактировалось Taro; 19.06.2015 в 21:01.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
..подтверждаю. с ревизии 3 платы ZX48.
С Уважением, Андрей!
Разрисовал периферийные ячейки, перегнал проводники в пикад. Теперь надо библиотеку элементов рисовать. Почти все "аналоговые части" (выход видеосигналов, звуковой выход, тактовый генератор) реализованы на транзисторах периферийных ячеек, их я разрисую по-транзисторно. А основной массив будет рисоваться простыми логическими элементами. Кое-где пообъединяю в триггеры, но не как библиотечные элементы - там топология разная, лень большую библиотеку создавать. Иногда бывает прикол - от ячейки только один или два резистора беруться, такое именно резистором придется изображать.
"Ненамного" - это примерно на порядок. Одно дело кинуть один цифровой вентиль, другое дело разрисовать его из транзисторов-резисторов - как раз на порядок больше деталек (6 транзисторов и 3 резистора вместо одной ячейки). Тупо больше объем работы и читаемость итоговой схемы значительно хуже.
Ты говоришь так, как будто все ячейки там - разные по потрохам, и компоненты каждой надо отрисовывать ручками отдельно. В предыдущем сообщении я не зря упомянул про копипаст [ячеек и их содержимого]. А ручками разрисовать только соединения. То есть, рисовать не лог.элемент (прямоугольничком), а его представление на транзисторах\резисторах\со единениях (внутри все того же прямоугольничка).
Да, это ухудшит читаемость всей схемы и добавит элементов на лист - но мы тут не схему делаем, а реверсим чип до состояния 100% оригинала. Видимость заюзанного одного резистора из всей ячейки (при отрисованной оной) - намного нагляднее для понимания конфигурации чипа, чем просто одного резистора. Не для схемы (которую тут, как уже и указали - никто на КТ315х повторять не собирается, и это правильно), а для понимания всего чипа как единого целого.
Я просто к тому веду, что при наличии потранзисторной схемы - привести ее к логическим элементам легко. А вот при наличии схемы на логических элементах - выяснить какие-то "транзисторно\резисторны е" вопросы уже никак. Если есть возможность сделать на самом низком уровне (от которого нет проблем "подняться" к более высоким, но к которому нет возможности "спуститься" от более высоких) - то почему бы и не сделать? Так-то, если доупрощать по максимуму - можно просто дать вериложный файлик всей ULA - работать хоть и будет, но понимания самого чипа он тем более не даст.
Имхо, конечно. Ты реверсишь - тебе икартыпикад в руки.
Последний раз редактировалось Taro; 20.06.2015 в 09:50.
Ну как разные... Логических функций как раз очень немного - NOT, 2NOR, 3NOR. 4NOR, 2x2NOR, 2OR. Из них уже строятся более сложные элементы. Проблема в том, что ячейка может содержать один схемно эквивалентный инвертор в 8 топологических комбинациях, а еще инверторы могут быть разной нагрузочной способности и с разным количеством резисторов на выходе. Это все приводит к библиотеке с большим количеством элементов.
Ну будем посмотреть, очень много 2x2NOR - на них строятся триггеры, а эта логика строится только одним топологическим вариантом. То есть библиотека за полсотни выйти не должна.
Засада том что схема в пикаде не рисуется копипастом и соединения не рисуются ручками - по моей методике схема создается методом обратной аннотации, сама по себе. На плату ручками закидывается нужный компонент - это тупо как дралоскопия, запускается процедура реконнекта, потом обратной аннотации и пикад автоматически создает схему. Потом уже автоматически созданный фрагмент перерерисовывается в "человеческий вид". Одно дело причесать 400 элементов (ячеек), другое - 4000. Первое делается за несколько вечеров, второе - месяцы.
Это как раз несложно сделать - нарисовать в библиотекчном элементе картинку и она будет там сама всегда появляться. Только смысла нет.
Вот задача стоит именно так чтобы достичь нужного уровня абстракции - исключить ненужные детали, но при этом не потерять подробности. Для БМК 1801ВП1 это вполне получилось, там не потранзисторная схема, а именно логическими блоками, транзисторы прорисовывать не нужно, и все фукнции очевидны, никакие нюансы не потеряны.
Почему еще важно сделать ячейками - у меня написана утилита для автоматического перевода списка цепей пикада в верилог. Хочется еще и этим воспользоваться.
Вот теперь - понятно. Если так - то конечно, будет много доп.гимора при неявных профитах, оно же 20/80.
Но, тем не менее -
- любой "уровень абстракции выше оригинального" есть операция, так сказать - с потерями. Следующий посетитель, желающий заглянуть "под уровень" абстракции взятой нами за ноль (например, приспичит ему в тонкостях разобраться с аналоговой частью сабжа - фиг ее верилогом опишешь на автомате, а описывать на A/AMS - это будет совершенно отдельный гимор) - будет таки вынужден практически среверсить кристалл (ну или часть его) заново, ибо разбирая нашу абстракцию - там будут пробелы. Тогда как у нас на руках уже сам базис вопроса, и абстрагируясь от оного - мы неизбежно и безвозвратно можем потерять какие-то детали, могущие быть интересными другим посетителям.
Но я, повторюсь - не настаиваю и не претендую. Я знаю, что это доп.геморрой. Просто, так сказать - хотелось бы видеть полное закрытие темы, по максимуму, отселя и впредь. А с абстракциями - она ж еще не раз всплывет. Вот как книжку тут: ждали-ждали, а она внезапно описывает блочные абстракции, а не потранзисторный базис. И в итоге мы сейчас сидим и доделываем те пробелы. А было бы там описано полностью - сейчас тебе пилить кристалл необходимости бы уже не было.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)