Генератор кодов последовательных чисел

па  курсовому проектированию

 

1. Тема проекта:  «Генератор кодов последовательности чисел»

Содержание

     Введение…………………………………………………………………….4

     1 Аналитический обзор…………………………………………………….5

     2 Конкретизация технического задания…………………………………...20

     3 Выбор и описание работы элементной базы……………………………23

     4 Синтез структурной схемы………………………………………………25

     5 Анализ структурной схемы………………………………………………30

     6 Разработка электрической схемы  и описание её работы………………32

     Заключение…………………………………………………………………..35

     Литература…………………………………………………………………...36

 

    ВВЕДЕНИЕ 

       Значительные  изменения во многих областях науки  и техники обусловлены развитием  электроники. В настоящее время  невозможно найти какую-либо отрасль  промышленности, в которой не использовались бы электронные приборы или электронные устройства измерительной техники, автоматики и вычислительной техники. Причем тенденция развития такова, что доля электронных информационных устройств и устройств автоматики непрерывно увеличивается. Это является результатом развития интегральной технологии, внедрение которой позволило наладить массовый выпуск дешевых, высококачественных, не требующих специальной настройки и наладки микроэлектронных функциональных узлов различного назначения.[6]

       Основной  функцией интегральных микросхем является обработка информации, заданной в виде электрического сигнала: напряжения или тока. Электрические сигналы могут представлять информацию в непрерывной (аналоговой) или дискретной (цифровой) форме. Микросхемы, выполняющие обработку этой информации, называются аналоговыми или цифровыми соответственно.

       Важнейшей задачей, решаемой с помощью методов  и средств микросхемотехники, является схемотехническая разработка новых  типов интегральных схем. Исходное техническое задание на проектирование микросхемы содержит описание функций, которые она должна выполнять в электронной аппаратуре, и требование к ее основным параметрам. Конечным результатом проектирования является такое представление микросхемы, используя которые можно изготовить ее образцы. Такой формой представления являются чертежи фотошаблонов и комплект конструкторской документации, необходимые для изготовления микросхемы.[4]

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

       На  стыке микроэлектроники и цифровой техники развивается самостоятельная  область науки и техники – цифровая микросхемотехника, предметом которой являются принципы и методы схемотехнического проектирования цифровых интегральных микросхем, которые включают разработку их структуры. Непрерывное повышение степени интеграции проектируемых микросхем, обеспечивающее реализацию на одном кристалле целых цифровых систем, требуют от специалиста-микросхемотехника не только знания основ цифровой техники, но и освоения таких ее разделов, как архитектура цифровых систем, программирование и многое другое.[6]

       Целью данного курсового проекта является проектирование генератора кодов последовательности чисел  в соответствии с современными требованиями микросхемотехники. 
 
 

 

      1 АНАЛИТИЧЕСКИЙ ОБЗОР 

     1.1 Генераторы кодов

     Последовательные  узлы этого типа называют также распределителями сигналов (импульсов), так как образуемая на их выходах последовательность двоичных чисел часто используется в цифровых системах как последовательность сигналов, управляющих работой других узлов. Число состояний генератора называется длиной последовательности чисел Lп, которая определяется как число тактов машинного времени (периодов синхросигналов), после которого последовательность чисел на выходе генератора" повторяется. По своей структуре генераторы чисел близки либо к счетчикам, либо к регистрам.  

     1.2 Генераторы на  основе регистров

     Генераторы  на основе сдвиговых регистров. Таким способом можно реализовать генераторы циклических последовательностей чисел, в которых каждое последующее число образуется путем сдвига предыдущего числа, записанного в регистре, на один разряд и введением в освободившийся первый разряд 0 или 1. Для этого ко входу первого разряда регистра подключается комбинационная схема, образующая необходимый управляющий сигнал Z0. Если имеется m-разрядный сдвиговый регистр, то можно генерировать циклические последовательности длиной LП≤2m. Пример такого генератора представлен на рисунке 1.1.

     

     Рисунок  1.1 – Схема генератора кодов 

      Регистры  являются наиболее распространенным типом  после-довательностных узлов в  современных цифровых системах. По способу приема и выдачи информации регистры делятся на следующие группы: с параллельными приемом и  выдачей), с последовательным приемом и последовательной выдачей, с последовательным приемом и параллельной выдачей, с параллельным приемом и последовательной выдачей, комбинированные с различными способами приема и выдачи.

      Регистры  с параллельным приемом и выдачей  служат для хранения информации и называются регистрами памяти. Изменение хранящейся информации (ввод новой информации) происходит после соответствующего изменения сигналов на входах при поступлении определенного уровня (С = 0 или С=1) или фронта синхросигналов. В качестве разрядов регистра- памяти используются синхронизируемые уровнем или фронтом триггеры: D-триггеры, если информация поступает в виде однофазных сигналов, или RS-триггеры, если информация поступает в виде парафазных сигналов. Предварительная «очистка»

      

    Рисунок 1.2 – Регистры хранения, синхронизируемые уровнем (а) и фронтом (б) 

регистра, т. е. установка всех выходов в  состояния Q=0, производится с помощью асинхронных входов сброса триггеров Ra.

      Регистры  с последовательным приемом или  выдачей информации называются сдвиговыми регистрами.

      

      Рисунок 1.3 – Сдвиговый регистр 

        В регистре с последовательным приемом и выдачей первый разряд вводимого числа A0 подается на вход одного, крайнего слева, разряда регистра Рm-1 и вводится в него при поступлении первого синхроимпульса Qm-1=А0. При поступлении следующего синхроимпульса значение A0, поступающее с выхода разряда Рm-1 вводится в разряд Рm-2, Т. е. устанавливается Qm-2=А0, а в разряд Рm-1 поступает следующий разряд числа A1: устанавливается Qm-1=А1 и т. д. Таким образом производится последовательный сдвиг поступающей на вход информации на один разряд вправо в каждом такте синхросигналов. После поступления m синхроимпульсов весь регистр оказывается заполненным разрядами числа А и первый разряд числа (A0) появляется на выходе Q0 регистра. В течение последующих m синхроимпульсов производится последовательный поразрядный вывод из регистра записанного числа, после чего регистр оказывается полностью очищенным.

      Сдвиговые регистры обычно реализуются на D-триггерах или RS-триггерах, где для ввода информации в первый разряд включается инвертор: S0=A, R0= .

      Параллельный  вывод информации из сдвигового регистра осуществляется при подключении  выходов всех разрядов регистра к  отдельным выводам.

      При проектировании сдвиговых регистров обязательным является применение триггеров, синхронизируемых фронтом. Ведь во время действия синхросигнала изменяются состояния выходов триггеров, которые подключены ко входам последующих триггеров. Таким образом изменяется состояние входов последующих триггеров, и если синхроимпульс еще не кончился, то триггеры, синхронизируемые уровнем, переключаются в новое состояние. В результате за время действия одного синхроимпульса (один такт) информация в регистре продвигается более чем на один разряд, т. е. нормальное функционирование регистра — сдвиг на один разряд за один такт — нарушается. Использование триггеров, синхронизируемых положительным или отрицательным фронтом, обеспечивает нормальную работу регистра. 

     1.3 Генераторы на  основе счетчиков

     Понятие «счётчик» является широким. К счётчикам относят автоматы, которые под действием входных импульсов переходят из одного состояния в другое, фиксируя тем самым число поступивших на вход импульсов в том или ином коде.

     Основным  параметром счётчика является модуль счёта КСЧ - максимальное число импульсов, которое может быть сосчитано счётчиком. После поступления КСЧ импульсов счётчик должен возвращаться в исходное состояние. Величина КСЧ равна числу устойчивых состояний счётчика. Счётчик, содержащий m разрядов, может иметь 2m устойчивых состояния, поэтому его модуль счёта КСЧ 2m. Счётчики используются в качестве делителей частоты, обеспечивающих на выходе в КСЧ раз меньшую частоту сигнала, чем на входе.

     Любой счетчик можно рассматривать как генератор определенной последовательности чисел, имеющей Lп=Ксч. На основе счетчиков можно получить структуры генераторов любой последовательности чисел. При этом требуемое число разрядов (триггеров) равно числу двоичных разрядов m в генерируемых числах. Если m=log2Lп, то для уменьшения числа используемых триггеров структура генераторов несколько изменяется. В этом случае генератор целесообразно стоить в виде соединения счетчика с модулем счета Кс=Lп и подключенной к его выходам вычислительной коммутационной схемы (дешифратора, преобразователя кода и т.д.), реализующей требуемые значения двоичных чисел. Пример такого генератора представлен на рисунке 1.4.

     

     Рисунок  1.4 – Схема генератора кодов 

     Количество  входных переключающих сигналов, которое нужно подать на вход счётчика, чтобы вернуть его в исходное состояние, называется коэффициентом пересчёта (К). Счётчики называют двоичными, если К=2m, где m - целое число больше нуля.

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

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

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

     В счётчиках с параллельным переносом  входной переключающий сигнал воздействует на все триггеры, и каждый триггер вырабатывает для всех последующих лишь управляющие сигналы. Параллельные счётчики обычно строятся на базе RS-, JK-, D- триггеров, синхронизируемых фронтом.

     В счётчиках с параллельно-последовательным переносом триггера разбиты на группы, причём внутри группы действует параллельный перенос, а между группами последовательный.

     По  способу кодирования внутренних состояний различают двоичные счётчики, счётчики Джонсона, счётчики с кодом «1 из N» и другие.

     По  направлению счёта счётчики делятся  на суммирующие, вычитающие и реверсивные.

     Суммирующий счётчик (прямого счёта) начинает с нуля и при поступлении на вход очередного импульса число на выходе счётчика увеличивается на единицу. Предпоследний такт заканчивает счёт, а последний переводит счётчик в исходное состояние.

     Вычитающий  счётчик (обратного счёта) начинает счёт с последнего числа и при поступлении на вход счётчика очередного импульса число на выходе счётчика уменьшается на единицу. На предпоследнем такте счётчик выдаёт ноль на выходе. Последний такт возвращает счётчик в исходное состояние.

     Реверсивный счётчик (с изменением направления счёта) кроме входов информации содержит также вход управления. В зависимости от значения сигнала на входе управления, реверсивный счётчик работает как суммирующий или как вычитающий. По принадлежности к тому или иному классу автоматов говорят о асинхронных (управляемых событием) счётчиках и синхронных (управляемых временем) счётчиках. Асинхронные счётчики - счётчики, в которых изменение сигнала на любом входе может вызвать изменение сигналов на каких-либо выходах. Синхронные счётчики представляют собой счётчики, в которых сигналы на выходах могут изменяться только после подачи определённых значений сигналов на входы синхронизации (тактовые входы).

     Синхронизация может производиться уровнем или фронтом. Синхронизация уровнем происходит при достижении сигнала на входе синхронизации уровней «0» или «1» в зависимости от конструкции счётчика. Синхронизация фронтом может производиться положительным, или отрицательным фронтом. Синхронизация положительным фронтом происходит при переходе сигнала на входе из состояния «0» в состояние «1». Синхронизация отрицательным фронтом - при переходе сигнала на входе синхронизации из состояния «1» в состояние «0».

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

     Быстродействие счётчика характеризуется временем установления в нём нового состояния, а также максимальной частотой выходных сигналов f max.

     Счётчики  широко используются в устройствах  управления цифровых систем для подсчёта числа выполненных операций, в  связной и контрольно-измерительной аппаратуре, для определения числа поступивших импульсов, для уменьшения частоты и других случаях. [2]

     Основой счётчиков являются триггеры, поэтому  состояние счётчика в любой момент времени определяется кодом Q, который зафиксирован на его триггерах.

     Триггер - двоичное цифровое устройство, в памяти которого в данный момент времени может быть зафиксировано не более нескольких десятков бит информации.

     Существует  несколько различных типов триггеров: RS, D, JK, T. Они имеют различные правила работы. 

     2.3 Триггеры

     Триггер – это устройство последовательного  типа с двумя устойчивыми состояниями  равновесия, предназначенное для  записи и хранения информации. Под  действием входных сигналов триггер  может переключаться из одного устойчивого  состояния в другое. При этом напряжение на его выходе скачкообразно изменяется.

     Как правило, триггер имеет два выхода:  прямой и инверсный. Число входов зависит от структуры и функций, выполняемых триггером. По способу  записи информации триггеры делят на асинхронные  и синхронизируемые (тактируемые). В асинхронных триггерах информация может записываться непрерывно и определяется информационными сигналами, действующими на входах в данный момент времени. Если информация заносится в триггер только в момент действия так называемого синхронизирующего сигнала, то такой триггер называется синхронизируемым или тактируемым. Помимо информационных входов синхронизирующие триггеры имеют тактовый вход (вход синхронизации). В цифровой технике приняты следующие обозначения входов триггеров:

     S – раздельный вход установки в единичное состояние (напряжение высокого уровня на прямом выходе Q);

     R– раздельный вход установки в нулевое состояние (напряжение низкого уровня на прямом выходе Q);

     D – информационный вход (на него подается информация, предназначенная для занесения в триггер);

     С – вход синхронизации;

     Т – счетный вход.

     Наибольшее  распространение в цифровых устройствах  получили RS-триггер с двумя установочными входами, тактируемый D-триггер и счетный Т-триггер. Т.к. в нашем курсовом проекте необходимо использовать D-триггер, рассмотрим его функциональные возможности.

     Он  имеет информационный вход и вход синхронизации. Одна из возможных структурных  схем однотактного D-триггера и его условное обозначение показаны на рис.1.5:

      Рисунок 1.5 - Схема и условное обозначение тактируемого D-триггера 

     Если  уровень сигнала на входе С=0, состояние  триггера устойчиво и не зависит  от уровня сигнала на информационном входе. При этом на входы RS-триггера с инверсными входами (элементы 3 и 4) поступают пассивные уровни (S=R=1). При подаче на вход синхронизации уровня С=1 информация на прямом выходе будет повторять информацию, подаваемую на вход D. Таким образом, при С=0 Qt+1=Qt, а при С=1 Qt+1=D. Таблица истинности для тактируемого D-триггера имеет вид: 

     Таблица 1.1

D Q Qt+1
0

0

1

1

0

1

0

1

0

0

1

1

 

     Здесь Qt означает логический уровень на прямом выходе до подачи импульса синхронизации, а Qt+1 – логический уровень на этом выходе после подачи импульса синхронизации.

     На  рисунке 1.6 изображены временные диаграммы  тактируемого D-триггера. В таком триггере происходит задержка сигнала на выходе по отношению к сигналу, поданному на вход, на время паузы между синхросигналами. Для устойчивой работы триггера необходимо, чтобы в течение синхроимпульса информация на входе была неизменной.

       

Рисунок 1.6 - Временные диаграммы сигналов в тактируемом D-триггере

     

     Рисунок 1.7 – D-триггера, синхронизируемый одним фронтом 

     Тактируемые D-триггеры могут быть с потенциальным и динамическим управлением. У первых из них информация записывается в течение времени, при котором уровень сигнала С=1. В триггерах с динамическим управлением информация записывается только в течение перепада напряжения на входе синхронизации. Динамические входы изображают на схемах треугольником. Если вершина треугольника обращена в сторону микросхемы, то триггер «срабатывает» по фронту входного импульса, если от нее – по срезу импульса. В таком триггере информация на входе может быть задержана на один такт по отношению к входной информации.

     В интегральной технике создаются  только D-триггеры, управляемые одним фронтом. На рисунке 1.7 показана схема на элементах И-НЕ.

     Данный  тип триггера широко распространён  в микросхемотехнике. Другие его названия: триггер Вебба, триггер с самоблокировкой, схема трёх триггеров.

      Выходным  триггером в этой схеме является RS-триггер на элементах 5-6. Элементы 1, 2 служат его входными конъюнкторами. При С=0 оба они заперты и триггер 5-6 не реагирует на изменение D-входа (моменты t1 tt7) (рис), т. е. D-триггер находится в режиме хранения.

      По  положительному фронту сигнала (моменты tt8) в зависимости от уровня на D-входе открывается один из конъюнкторов (1 или 2) и переключает триггер 5-6 (или подтверждает его состояние, если оно совпало с требуемым). Элементы 4 и 3, управляемые D-входом, своими уровнями подготавливают один из конъюнкторов (2 или 1) для того, чтобы он открылся очередным С-сигналом.

Рисунок 1.8 - Временные диаграммы  сигналов в синхронном D-триггере управляемым одним фронтом тактового импульса 

     Система связей элементов 1-4 обладает одним  нетривиальным свойством. Переключившись на фронте С-сигнала в 0, элемент 1 по связи выход элемента 1 - вход элемента 2 блокирует для элемента 2 возможность  открыться, даже если несколько позже, уже при С=1, вход D переключится в 0 (момент t4). Элемент 2, в свою очередь, сработав по фронту С-сигнала (моменты t8), по цепочке 2-4-3-1 делает невозможным последующее срабатывание элемента 1, даже в случае переключения входа D в 1.

      Рассмотренное поведение триггера при С=1 показывает, что данный триггер непроницаем  по D-входу ни для каких изменений его уровня. Шестиэлементный D-триггер - это триггер, переключаемый фронтом. Схема шестиэлементного триггера чисто противогоночная, и она допускает для своих элементов любые сочетания задержек, т. е. элементы переключаются строго один за другим без параллельных путей переноса, на которых возможны гонки.

      Данный  триггер может также работать как RS-триггер в асинхронном режиме при D=0 и С=0 (управление по входам R' и S').

        Шестиэлементный D-триггер по числу элементов экономичнее большинства других непроницаемых триггеров и, что очень важно для триггеров, реализуемых на матричных БИС, обеспечивает непроницаемость для помехи по D-входу при С=1. При этом в отличие от двухступенчатого триггера он не предъявляет требований к нормированию ни разницы времён задержки определённых элементов, ни разницы их порогов переключения.

      Условное  графическое обозначение триггера показано на рисунке 1.9. 
 

      

      Рисунок 1.9 - Условное графическое обозначение  синхронного D-триггера управляемого одним фронтом тактового импульса 

 

2 КОНКРЕТИЗАЦИЯ ТЕХНИЧЕСКОГО  ЗАДАНИЯ 

    Тема  проекта: “ Генератор кодов последовательности чисел”.

    Исходные  данные:

  1. Последовательность чисел – 1,9,7,5,3,14,11,8,6,2
  2. Код представления чисел – 6-4-2-1
  3. Режим работы – ждущий
  4. Синхронизация – внутренняя
  5. Тип триггеров – RS
  6. Элементная база – TTЛШ (элементный базис И-НЕ)

    Вариант кода представления чисел:

A10 6 4 2 1
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 1 0 0 0
7 1 0 0 1
8 1 0 1 0
9 1 0 1 1
  Избыточные  комбинации
  0 1 1 0
  0 1 1 1
  1 1 0 0
  1 1 0 1
  1 1 1 0
  1 1 1 1
Генератор кодов последовательных чисел