Проектирование устройств на базе МПК КР580

  Содержание 

  Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  3

  1. Задание. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  4

  2. Структурная схема . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  5

  3. Описание функциональных узлов . . . . . . . . . . . . . . . . . . . . . . . . . .  7

        3.1 Микропроцессор КР580ВМ80А . . . . . . . . . . . . . . . . . . . . . . .  7

        3.2 Генератор тактовых импульсов КР580ГФ24 . . . . . . . . . . . . .  9

        3.3 Системный контроллер КР580ВК28 . . . . . . . . . . . . . . . . . . .   10

        3.4 Буферный регистр КР580ИР82 . . . . . . . . . . . . . . . . . . . . . . .   12

        3.5 Таймер КР580ВИ53. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   13

        3.6 Шинный формирователь КР580ВА86 . . . . . . . . . . . . . . . . . .  19

        3.7 Параллельный интерфейс КР580ВВ55А . . . . . . . . . . . . . . .   20

        3.8 Ввод информации . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  23

        3.9 Вывод информации . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  24

        3.10. Разработка памяти . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   26

  4. Рекомендации по применению . . . . . . . . . . . . . . . . . . . . . . . . . . . .  30

  5. Алгоритм работы ВС . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  31

  6. Инструкция . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  33

  7. Разработка программного обеспечения . . . . . . . . . . . . . . . . . . . . .  34

        7.1. Листинг программы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   34

  Заключение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  40

  Библиографический список . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  41

  Приложение  1. Принципиальная электрическая схема устройства

  Приложение  2. Перечень использованных элементов 
 

 

  

  Введение 

  Микропроцессорный комплект серии КР580 — набор микросхем, аналогичных набору микросхем Intel 82xx. Использовался в советских компьютерах, таких как Радио 86РК, ЮТ-88, Микроша, и т. д. Представляет собой 8-разрядный комплект на основе n-МОП технологии. Система команд СМ1800, ГОСТ 11305.910-80. Большинство микросхем является аналогами чипов серии MCS-85 фирмы Intel.

  Микропроцессорный комплект серии КР580 содержит набор  БИС для построения микропроцессорных  систем относительно невысокого быстродействия, работающих с тактовой частотой до 2,5 МГц. В основном на комплекте данной серии строятся микропроцессорные системы (МПС), решающие задачи, связанные с управлением разнообразными технологическими процессами. В этом комплекте предусмотрена БИС центрального процессора - КР580ВМ80А, содержащая в одной микросхеме операционное и управляющее устройство. Это существенно упрощает построение МПС. Кроме того, из соображений упрощения программирования для управления микросхемами МПС применяется фиксированный набор команд.

  Микропроцессор  КР580ВМ80А был выпущен в 1974 году. С тех пор появилось большое количество более мощных микропроцессоров, но долгое время микропроцессор КР580ВМ80А был самым распространенным и применяется до сих пор в тех случаях, когда его производительности достаточно и использование более мощных микропроцессоров неоправданно. Кроме того, структура этого микропроцессора, принципы его работы, система команд, в определенной степени являются универсальными и отражают общие принципы функционирования микропроцессоров.

  Микропроцессор  КР580ВМ80А представляет собой однокристальный  восьмиразрядный процессор с фиксированным набором команд. Он предназначен для построения микропроцессорных систем обработки цифровой информации и систем управления в различных областях техники, где не предъявляется высоких требований по быстродействию.

  Функционирование  МПС сводится к следующей последовательности действий: получение данных от различных периферийных устройств, обработка данных и выдача результата обработки на периферийные устройства. При этом данные от периферийного устройства, подлежащие обработки могут поступать и в процессе их обработки. Для выполнения этих процессов в МПС предусматриваются следующие устройства: блок центрального процессора, выполняющий обработку информации; оперативная память, предназначенная для хранения и выдачи по запросам команд программ, определяющих работу микропроцессоров, различных данных. 

 

  1. Задание на курсовой проект 

     Реализовать генератор псевдослучайных чисел. Числа целые, размерность чисел 16 бит. Формула для генерации очередного псевдослучайного числа

                                     Ij+1=(a×Ij+ c) mod m 

          a, c и m вводить с клавиатуры. Стартовое число Ij для генератора взять с таймера. Предусмотреть возможность одиночной генерации и автоматической. В обоих случаях числа выводить на параллельный порт (адреса портов вывода 90h и 91h) При автоматической генерации интервал подачи между псевдослучайные числами 4 сек. Ввод цифр по прерыванию 

 

  2. Структурная схема устройства 

  Требуется спроектировать генератор псевдослучайных чисел. В этом случае в проектируемой ВС должна присутствовать  клавиатура для ввода информации в микропроцессорную систему (МПС), таймер, устройство индикации, позволяющие просматривать результат генерации. Необходимыми элементами любой системы являются: генератор тактовых импульсов, микропроцессор (МП), системный контроллер МП, буферные схемы адреса и данных, запоминающие устройства (ПЗУ, ОЗУ), устройства ввода-вывода (УВВ). Таким образом, структурная схема проектируемой ВС примет вид, изображенный на рис. 2.1. 

  

 

  Рис. 2.1. Структурная схема генератора псевдослучайных чисел 

  Генератор формирует тактовые импульсы необходимые  для работы микропроцессора. Для  формирования шины адреса используются шинные формирователи. Системный контроллер формирует шину управления (управляющие  сигналы) и шину данных. ПЗУ (постоянное запоминающее устройство) используется для хранения  констант и программы работы устройства. Для хранения стека и переменных величин используется ОЗУ (оперативное запоминающее устройство). Так же в системе применяется устройство ввода/вывода информации для сопряжения периферийных устройств с магистралью данных системы.

  В системе будут использоваться микросхемы комплекта КР580:

  • микропроцессор КР580ВМ80А
  • генератор тактовых импульсов КР580ГФ24
  • системный контроллер КР580ВК28
  • буферный регистр КР580ИР82
  • таймер КР580ВИ53
  • шинный формирователь КР580ВА86
  • параллельный интерфейс КР580ВВ55А
  • ПЗУ 1601PP1
  • ОЗУ К541РУ2

   

 

  3. Описание функциональных узлов 

  3.1. Микропроцессор КР580ВМ80А

  Микросхема  КР580ВМ80А является функционально  законченным однокристальным 8-разрядным  микропроцессором с фиксированной  системой команд. Микропроцессор имеет раздельный 16 разрядный канал адреса и 8 разрядный канал данных. Канал адреса обеспечивает прямую адресацию внешней памяти объемом до 65536 байт - 256 устройств ввода и 256 устройств вывода. Условное графическое обозначение микросхемы приведено на рис. 3.1. Назначение выводов приведено в табл. 3.1. 
 

  

 

  Рис. 3.1   УГО КР580ВМ80А 

  В состав блока регистров входят: 16-разрядный  регистр адреса команды (IP), 16-разрядный регистр указателя стека (SP), 16-разрядный регистр временного хранения (WZ), 16-разрядная схема инкремента-декремента и шесть 8-разрядных регистров общего назначения (B, С, D, Е, H, L), которые могут использоваться и как три 16-разрядных регистра (ВС, DE, НL).

  Микропроцессор  выполняет команды по машинным циклам. Число циклов, необходимое для  выполнения команды, зависит от ее типа и может быть от одного до пяти. Машинные циклы выполняются по машинным тактам. Число тактов в цикле определяется кодом выполняемой команды и  может быть от трех до пяти. Длительность такта равна периоду тактовой частоты и при частоте 2,5 МГц составляет 400 нс. В начале каждого машинного цикла микропроцессор вырабатывает сигнал синхронизации SYN, который в сочетании с другими сигналами может быть использован для организации различных режимов работы.

  Таблица 3.1

  Выводы  микросхемы КР580ВМ80А

Вывод Обозначение Тип вывода Функциональное  назначение выводов
1, 25-27, 29-40 А10, А0-А2, А3-А9, А15,

А12-А14, А11

Выходы Канал адреса
2 GND – Общий
3-10 D4-D7, D3-D0 Входы/выходы Канал данных
11 UIO Вход Напряжение  источника смещения -5 В
12 SR Вход Установка в  исходное состояние
13 HLD Вход Захват
14 INT Вход Запрос прерывания
15, 22 C2, C1 Выход Тактовые сигналы
16 INTE Выход Разрешение  прерывания
17 RC Выход Прием информации
18
Выход Выдача информации
19 SYN Выход Сигнал синхронизации
20 UCC1 – Напряжение  питания +5 В
21 HLDA Выход Подтверждение захвата
23 RDY Вход Сигнал «готовность»
24 W1 Выход Сигнал «ожидание»
28 UCC2 – Напряжение  питания +12 В
 

  Система команд микропроцессора состоит  из 78 базовых команд, которые можно  разделить на пять групп:

  • команды передачи данных — используются для передачи данных из регистра в регистр, из памяти в регистр, из регистра в память;
  • арифметические команды — используются для сложения, вычитания, инкремента или декремента содержимого регистров или ячейки памяти;
  • логические команды – И, ИЛИ, исключающее ИЛИ, сравнение, сдвиги;
  • команды переходов — используются для условных и безусловных переходов, вызова подпрограмм и возврата из них:
  • команды управления, ввода/вывода и работы со стеком — используются для управления прерыванием, регистром признаков, ввода и вывода информации.
 

  3.2. Генератор тактовых импульсов КР580ГФ24

  Микросхема  КР580ГФ24 – генератор тактовых сигналов фаз С1, С2, предназначен для синхронизации  работы МП. Генератор формирует:

  - две фазы С1, С2 с положительными импульсами, сдвинутыми во времени, амплитудой 12В и частотой 0,5–3,0 МГц;

  - тактовые сигналы опорной частоты амплитудой напряжения уровня ТТЛ;

  - стробирующий сигнал состояния длительностью не менее Топ/9–15 нс, где Топ – период тактовых сигналов опорной частоты;

  - тактовые сигналы С, синхронные с фазой С2, амплитудой напряжения уровня ТТЛ.

  Генератор синхронизирует сигналы RDYIN и  с фазой С2. Условное графическое обозначение микросхемы приведено на рис. 3.2. Назначение выводов дано в таблице 3.2. 

  

  Рис 3.2   УГО КР580ГФ24

  Генератор тактовых сигналов состоит из генератора опорной частоты, счетчика делителя на 9, формирователя фаз С1, С2 и  логических схем. Для стабилизации тактовых сигналов опорной частоты  ко входам  XTAL1, XTAL2 генератора подключают резонатор, частота которого должна быть в 9 раз больше частоты выходных сигналов С1, С2. При частоте резонатора более 10000 кГц необходимо последовательно в цепи резонатора подсоединить конденсатор емкостью 3–10 пФ.

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

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

  Стробирующий сигнал состояния формируется при наличии на входе SYN напряжения высокого уровня, поступающего с выхода микропроцессора в начале каждого машинного цикла. Сигнал STB используют для занесения информации состояния МП в микросхему КР580ВК28 для формирования управляющих сигналов.

  Таблица 3.2

  Выводы  микросхемы КР580ГФ24

Вывод Обозначение Тип вывода Функциональное  назначение выводов
1 SR Выход Установка в  исходное состояние МП и системы
2
Вход Установка 0
3 RDYIN Вход Сигнал «готовность»
4 RDY Выход Сигнал «готовность»
5 SYN Вход Сигнал синхронизации
6 C Выход Тактовый сигнал синхронный с фазой С2
7
Выход Стробирующий сигнал состояния
8 GND – Общий
9 UCC2 Вход Напряжение  питания +12 В
10 C2 Выход Тактовые сигналы  – фаза С2
11 C1 Выход Тактовые сигналы  – фаза С1
12 OSC Выход Тактовые сигналы  опорной частоты
13 TANK Вход Вывод для подключения  колебательного контура
14, 15 XTAL1, XTAL2 Вход Выводы для  подключения резонатора
16 UCC1 Вход Напряжения  питания +5 В
 

  Для согласования работы МП с другими  устройствами сигнал RDYIN синхронизируется по фазе С2 на выходе RDY генератора. Выходной сигнал SR используют для установки в исходное состояние МП и других микросхем в системе. 

  3.3. Системный контроллер КР580ВК28

  Системный контроллер КР580ВК28 предназначен для  фиксации слова-состояния МП, выработки  системных управляющих сигналов, буферизации шины данных МП и управлением  передачи данных. Системный контроллер формирует управляющие сигналы  по сигналам состояния микропроцессора  при обращении к ЗУ: RD и WR; при обращении к УВВ: RD IO и WR IO, а также обеспечивает прием и передачу 8-разрядной информации между каналом данных микропроцессора по выводам D7-D0 и системным каналом по выводам DB7-DB0. Регистр состояния по входному сигналу STB фиксирует информацию состояния микропроцессора в первом такте каждого машинного цикла. Дешифратор управляющих сигналов формирует один из управляющих сигналов в каждом машинном цикле: RD, WR, RD IO, WR IO, INTA. Асинхронный сигнал BUSEN управляет выдачей данных с буферной схемы и управляющих сигналов: при напряжении высокого уровня все выходы микросхемы переводятся в высокоомное состояние.

  Условное  графическое обозначение системного контроллера КР580ВК28 приведено на рис. 3.3. Назначение выводов приведено в таблице 3.3. 

  

  Рис 3.3   УГО КР580ВК28

  Таблица 3.3

  Выводы  микросхемы КР580ВК28

  
Вывод Обозначение Тип вывода Функциональное  назначение выводов
1 STB Вход Стробирующий сигнал состояния (от ГТИ)
2 HLDA Вход Подтверждение захвата
3 TR Вход Выдача информации
4 RC Вход Прием информации
5,7

9,11,

13,16,

18,20

DB4,DB7,

DB3,DB2,

DB0,DB1,

Вход/выход Канал данных системы
6,8,10,

12,15,17,19,21

D4,D7,D3,

D2,D0,D1,

D5,D6

  Входы/выходы данных со стороны МП
14 GND — Общий
22 BUSEN Вход Управление  передачей данных и выдачей сигналов
23 INTA Выход Подтверждение запроса прерывания
24 RD Выход Чтение из ЗУ
25 RD IO Выход Чтение из УВВ
26 WR Выход Запись в  ЗУ
27 WR IO Выход Запись в  УВВ
28 UCC Вход Напряжение  питания +5В

  3.4. Буферный регистр КР580ИР82

  Микросхема  КР580ИР82 – 8-разрядный адресный регистр, предназначенный для связи микропроцессора с системной шиной, обладает повышенной нагрузочной способностью. Микросхема КР580ИР82 – 8-разрядный D-регистр-«защелка» без инверсии и с тремя состояниями на выходе. Условное графическое обозначение приведено на рис. 3.4, назначение выводов в таблице 3.4.

  

 

  Рис 3.4   УГО КР580ИР82

  Таблица 3.4

  Выводы  микросхемы КР580ИР82

  
Вывод Обозначение Тип вывода Функциональное  назначение выводов
8-1, 11 DI(7-0) Вход Информационная  шина
9 OE Вход Разрешение  передачи (управление 3-м состоянием)
10 GND — Общий
11 STB Вход Стробирующий сигнал
12-20 DO(7-0) Выход Информационная  шина
20 UCC — Напряжение  питания +5В
 

  При высоком уровне сигнала STB и низком сигнала OE микросхема работает в режиме шинного формирователя. При переходе сигнала STB  из состояния высокого уровня в состояние низкого уровня происходит «защелкивание» передаваемой информации во внутреннем триггере, где она сохраняется вне зависимости от входных данных, пока на STB  снова не будет подан сигнал высокого уровня. 

  3.5. Таймер КР580ВИ53

  Микросхема КР580ВИ53 – трехканальное программируемое устройство (таймер), предназначено для организации работы микропроцессорных систем в режиме реального времени. Микросхема формирует сигналы с различными временными параметрами.

  Программируемый таймер (ПТ) организован в виде 3х независимых 16-разрядных каналов с общей схемой управления. Каждый канал может работать в шести режимах. Программирование режимов работы каналов осуществляется индивидуально и в произвольном порядке путем ввода управляющих слов в регистры режимов каналов, а в счетчики – запрограммированного числа байтов.

  Управляющее слово определяет режим работы канала, тип счета (двоичный или двоично-десятичный), формат чисел (одно или двухбайтовый). Обмен информацией с микропроцессором осуществляется по 8-разрядном двунаправленному каналу данных.

  Условное  графическое обозначение микросхемы КР580ВИ53 приведено на рис. 3.5, назначение выводов таблице 3.5.

  

  Рис. 3.5   УГО КР580ВИ53 

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

  Таблица 3.5

  Выводы  микросхемы КР580ВИ53

  
Вывод Обозначение Тип вывода Функциональное  назначение выводов
1-8 D7-D0 Вход/Выходы Канал данных
9,15,18 С0, С1, С2 Входы Синхронизация каналов 0-2
10,13,17 OUT 0,1,2 Выходы Сигналы каналов 0-2 соответственно
11,14,16 CEO0,1,2 Входы Сигналы каналов 0-2 соответственно
12 GND — Общий
19,20 А0, А1 Входы Сигналы выбора каналов 0-2
21   Вход Выбор микросхемы
22   Вход Чтение
23   Вход Запись
24 Ucc — Напряжение  питания 5В
 

  Программируемый таймер КР580ВИ53 содержит три независимых  счетчика с максимальной частотой счета 2,5 МГц.

  Таймер  КР580ВИ53 может работать как:

   - программируемый тактовый генератор;

   - счетчик событий;

   - бинарный перемножитель;

   - цифровой одновибратор;

   - часы реального времени.

  Структурная схема программируемого таймера представлена на рис. 3.6. Блок логики чтения-записи управляет обменом данными между тремя счетчиками и шиной данных. Регистр управления позволяет программно настроить любой из трех счетчиков на желаемый режим работы.

  В состав ПТ входит буфер канала данных, логика чтения/записи, определяющая, к  какому каналу обращается процессор, и  трех независимых каналов. Каждый канал  включает в себя 16-разрядный счетчик, регистр режима, схему управления и схему синхронизации.

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

    

  Рис. 3.6  Структура программируемого таймера КР580ВИ53 

  Доступ  к счетчикам и регистру управления осуществляется в соответствии с таблицей 3.6.

  Таблица 3.6

  Доступ  к каналам ввода/вывода и регистру управляющего слова

    

  Каналы  таймера полностью независимы друг от друга - каждый может иметь свой режим работы. Счетчик в каждом канале представляет собой 16-разрядный счетчик с предустановкой, работающий на вычитание в двоичном или двоично-десятичном коде. Таким образом, максимальное число при счете - 216 (при работе в двоичном коде) или 104 (при работе в двоично-десятичном коде) - получается при загрузке всех нулей в счетчик канала.

Проектирование устройств на базе МПК КР580