Найти в Дзене
Еремей Маниевый

Троичная Ячейка Памяти на полевых транзисторах.

Здравствуйте, мои немногочисленные подписчики и читатели! Я снова в эфире :) Сегодня я расскажу о компоненте , который занимает большую часть "железного" пространства в любой цифровой технике - это ячейка памяти: Ячейки памяти в центральном процессоре используются в регистрах, счётчиках. Если требуется передача данных не по параллельной шине данных, а последовательно, то нужен сдвиговый регистр, а это на один трит аж целых две ЯП. Дополнительно существует ещё кеш-память процессора. Внешняя память - это, пожалуй, вообще 90% всего компьютерного железа. Так что можно смело ЯП назвать основным элементом цифровой техники! Память бывает оперативной и постоянной, бывает энергозависимой и энергонезависимой, бывает динамическая память, которая нуждается в отдельном микроконтроллере памяти, бывает статичная. Существуют различные виды её реализации, но я сегодня буду говорить только об одном из множества видов этой памяти, который в дальнейшем мне представляется актуальным в моих следующих подел
Оглавление

Здравствуйте, мои немногочисленные подписчики и читатели! Я снова в эфире :) Сегодня я расскажу о компоненте , который занимает большую часть "железного" пространства в любой цифровой технике - это ячейка памяти:

Иллюстрация
Иллюстрация

Ячейки памяти в центральном процессоре используются в регистрах, счётчиках. Если требуется передача данных не по параллельной шине данных, а последовательно, то нужен сдвиговый регистр, а это на один трит аж целых две ЯП. Дополнительно существует ещё кеш-память процессора. Внешняя память - это, пожалуй, вообще 90% всего компьютерного железа. Так что можно смело ЯП назвать основным элементом цифровой техники!

Базовый элемент - ЯП.

Память бывает оперативной и постоянной, бывает энергозависимой и энергонезависимой, бывает динамическая память, которая нуждается в отдельном микроконтроллере памяти, бывает статичная. Существуют различные виды её реализации, но я сегодня буду говорить только об одном из множества видов этой памяти, который в дальнейшем мне представляется актуальным в моих следующих поделках. Это память на триггерах. Принципиальная схема базовой ЯП ниже:

Схема в JS эмуляторе
Схема в JS эмуляторе

По этой ссылке можно посмотреть работу схемы наглядно. В эмуляторе всё работает без нареканий. Приступим к практической реализации в реальном "железе".

Макетка.

Транзисторы всё те же, что и в полусумматоре из предыдущей статьи в SMD исполнении, поэтому макетки приходится рисовать и вырезать. На этот раз разводку платы сделал более конскую, чтобы избежать косяков с платой , которые были в полусумматоре:

Разводка
Разводка

Для наглядности работы добавил двухцветный светодиод и токоограничивающее сопротивление к нему. Этот индикатор состояния ЯП присоединён к выходу ЯП из схемы выше. Перенёс рисунок в арткам, перевёл его в векторную графику, вырезал на ЧПУ макетку. Начал отдирать ножиком макетку, усаженную на двусторонний скотч от "жертвенного столика" на ЧПУ, и у меня начала расслаиваться плата:

Не одно, так другое :)
Не одно, так другое :)

Ножом отрезал дефектный кусок: для макетки такой колхоз сгодится! :)

Проверка работы.

Распаял на плате транзисторы, кнопку "запись" , сопротивления и светодиод. Начал проверять практически работу ЯП. Запись 0, -1, +1 проходит нормально, но выявился один глюк: при записи значения +1 сбросить его можно только записью значения -1, 0 записываться не желает или раз на раз не приходится.

Запись -1
Запись -1
Запись 0
Запись 0
Запись +1
Запись +1

Начал проверять разводку платы, правильность распайки транзисторов: не перепутал ли я N-канал c P-каналом где? Всё нормально. Начал уменьшать номинал сопротивлений, играть напряжением в плечах БП - не помогло. Тогда я отпаял светодиодный индикатор и начал проверять всё осциллографом - то же самое. Проблема "залипания" +1 была явной.

Решение проблемы.

В конце концов пришёл к выводу, что эмулятор JS оперирует идеальным питанием и идеальными транзисторами. В реальности это всё не так. Триггер верхнего плеча и триггер нижнего соединены между собой и срабатывают как на входе, так и на выходе. Надо разорвать эту связь - чуть переделать схему. Получилось вот что:

Схема ЯП, вторая ревизия.
Схема ЯП, вторая ревизия.

Ссылка на эмулятор со схемой.

Разрезал я на макетке одну дорожку, впаял одно сопротивление, добавил ещё один индикатор, и всё заработало, как надо:

Запись +1
Запись +1
Запись 0
Запись 0
Запись -1
Запись -1

Проблема "залипания" +1 решена. Триггеры обнуляются в обе стороны. Но так как в этой макетке недостаёт дополнительного выходного буферного каскада на двух транзисторах, светодиоды, подключённые непосредственно к выходам триггеров, создают вредную ОС, из-за которой иногда проскакивают ложные срабатывания. И нет общего выхода. Этот косяк сам собою исчезнет, когда схема будет реализована целиком. Но для этого нужно разводить, вырезать и распаивать новую макетку, чего делать совершенно не хочется. В общем и целом, смею предполагать, что базовая ЯП готова!

Дальнейшие планы.

Проверка правильности моих предположений будет в следующей статье, где я хочу нарисовать и сделать дополнительную плату для уже готового полусумматора, чтобы реализовать счётчик. В ней как раз должно быть три ЯП. Придётся в самом полусумматоре отпаять одну перемычку и впаять три провода на выход. Ещё на допплате будет распаян генератор сигналов на ОУ. Он тоже понадобится в дальнейшем. Но об этом в следующей статье!

Продолжение следует...