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

Автор работы: Пользователь скрыл имя, 15 Февраля 2012 в 10:32, курсовая работа

Краткое описание

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

Содержание работы

Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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. Перечень использованных элементов

Содержимое работы - 1 файл

кур.docx

— 734.72 Кб (Скачать файл)

  

 

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

  Для ввода чисел на клавиатуре имеется клавиша ВВОД. Ввод чисел нужно осуществлять в следующей последовательности: сначала нажать клавишу ВВОД, а затем набрать число (цифры 0-F).

  После ввода чисел следует выбрать  режим генерации: автоматический или  одиночная генерация. Для выбора автоматического режима нужно нажать клавишу АВТ, для выбора режима одиночной  генерации клавишу ШАГ. Если никакая из клавиш АВТ/ ШАГ не нажата, генератор псевдослучайных чисел будет работать в режиме одиночной генерации.

  Для правильной работы ВС и получения  ожидаемого псевдослучайного числа. Числа a1, a2, m из формулы

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

  следует вводить в определенной последовательности, а именно: сначала ввести число m, затем число c, и последним а. 
 

 

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

  При работе генератора псевдослучайных  чисел нужно организовать задержку в 2 секунды. Задержки будет реализована  программно с помощью команды  NOP. Поскольку команда NOP занимает четыре такта, а длительность такта 400 нс, то не трудно подсчитать что при выполнении команды будет организована задержка в 1600 нс. Среднее количество тактов при работе в автоматическом режиме составляет примерно – 500 тактов, что соответствует времени в 5 мкс (несущественно). Организуем задержку в 2 секунды.  Для этого команду NOP (с учётом цикла) нужно повторить 3 FFFCh = 4h*FFFFh раз. Следует организовать цикл с командой NOP путем вычитания из числа FFFFh единицы и команды условного перехода JNZ, сам цикл нужно повторить 8 раз. В результате будет получена задержка в 4 с.

  В таблице 7 указаны области хранения операндов в ОЗУ.

  Таблица 7

  
8000 8001 8002 8003 8004 8005 8006 8007
m c a а·Ij
 
 
 
 

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

Адрес Мнемоника Код Комментарий
0000 MVI A, 1001 0011b 3E Запись в  регистр аккумулятора УС
0001   93 для МС КР580ВВ55А (1)
0002 OUT 01 D3 Отправляем  управляющее слово
0003   01 в МС параллельного  порта КР580ВВ55А (1)
0004 MVI A, 1000 1001b 3E Запись в  регистр аккумулятора УС
0005   89 для МС КР580ВВ55А (2)
0006 OUT 83 D3 Отправляем  управляющее слово
0007   83 в МС параллельного  порта КР580ВВ55А (2)
0008 MVI A, 00110000b 3E Запись в  регистр аккумулятора УС
0009   30 для МС КР580ВИ53
000A OUT 00 D3 Отправляем  управляющее слово
000B   00 в МС ПТ КР580ВИ53
000C MVI A, FF 3E Отправляем  в счетчик число
000D   FF  
000E OUT 00 D3  
000F   00  
0010 MVI A, FF 3E  
0011   FF  
0012 OUT 00 D3  
0013   00  
0014 m1, m11: IN 04 DB Ввод чисел  по опросу
0015   04 Ожидание введения числа m
0016 СPI 01 FE  
0017   01  
0018 JNZ m1: 0014 C2  
0019   14  
001A   00  
001B IN 03 DB Запись старшего байта в регистр А
001C   03  
001D STA 8000 32 Пересылка числа  в ОЗУ
001E   00  
001F   80  
0020 IN 03 DB Запись младшего байта в регистр А
0021   03  
0022 STA 8001 23 Пересылка числа  в ОЗУ
0023   01  
0024   80  
0025 m2: IN 04 DB Ожидание введения числа a2
0026   04  
0027 СPI 01 FE  
0028   01  
0029 JNZ m2: 0025 C2  
002A   25  
002B   00  
002C IN 03 DB Запись старшего байта в регистр А
002D   03  
002E STA 8002 32 Пересылка числа  в ОЗУ
002F   02  
0030   80  
0031 IN 03 DB Запись младшего байта в регистр А
0032   03  
0033 STA 8003 23 Пересылка числа  в ОЗУ
0034   03  
0035   80  
0036 m3: IN 04 DB Ожидание введения числа а1
0037   04  
0038 СPI 01 FE  
0039   01  
003А JNZ m3: 0036 C2  
003B   36  
003C   00  
003D IN 03 DB Запись старшего байта в регистр А
003E   03  
003F STA 8004 32 Пересылка числа  в ОЗУ
0040   04  
0041   80  
0042 IN 03 DB Запись младшего байта в регистр А
0043   03  
0044 STA 8005 23 Пересылка числа  в ОЗУ
0045   05  
0046   80  
0047 MVI A 0000 0000b 3E Взять число  с таймера
0048   00  
0049 OUT 00 D3 Послать управляющее  слово в таймер
004A   00  
004B IN 00 DB Взять значение с таймера (старшая часть)
004C   00  
004D MOV A,H 7C  
004E IN 00 DB Взять значение с таймера(младшая часть)
004F   00  
0050 CPI 00 FE Проверка
0051   00  
0052 JNZ m4: 006F C2  
0053   6F  
0054   00  
0055 MVI A, 00110000b 3E Загружаем в  МС КР580ВИ53
0056   30 новое число
0057 OUT 00 D3  
0058   00  
0059 MVI A, FF 3E Отправляем  в счетчик число
005A   FF  
005B OUT 00 D3  
005C   00  
005D MVI A, FF 3E  
005E   FF  
005F OUT 00 D3  
0060   00  
0061 NOP 00 Организуем  небольшую задержку
0062 NOP 00  
0063 NOP 00  
0064 NOP 00  
0065 NOP 00  
0066 MVI A 0000 0000b 3E Взять число  с таймера
0067   00  
0068 OUT 00 D3 Послать управляющее  слово в таймер
0069   00  
006A IN 00 DB Взять значение с таймера (старшая часть)
006B   00  
006C MOV A,H 7C  
006D IN 00 DB Взять значение с таймера(младшая часть)
006E   00  
006F m4: MOV A,L 7D Перемножение  а1·J
0070 m14: MVI B, 80 06 Взять а1 из ОЗУ
0071   80  
0072 MVI C, 04 0E  
0073   04  
0074 LDAX B 0A (A) ← [(BC)]
0075 MOV A, D 7A Старшая часть  числа а1 в регистре D
0076 INX B 03  
0077 LDAX B 0A  
0078 MOV A, E 7B Младшая часть  числа а1 в регистре Е
0079 MOV H, B 60  
007A MOV L, C 69  
007B DCX D 1B Организация перемножения сложением
007C m5: DAD B 09 (HL) ← (HL)+(BC)
007D DCX D 1B  
007E JNZ m5: 007C C2 Организация цикла  сложения
007F   7C  
0080   00  
0081 SHLD 8006 22 Сохранить результат  в ОЗУ
0082   06  
0083   80 Перемножение  а2·J
0084 MVI B, 80 06 Взять а2 из ОЗУ
0085   80  
0086 MVI C, 02 0E  
0087   02  
0088 LDAX B 0A (A) ← [(BC)]
0089 MOV A, D 7A Старшая часть  числа а2 в регистре D
008A INX B 03  
008B LDAX B 0A  
008C MOV A, E 7B Младшая часть  числа а2 в регистре Е
008D MOV H, B 60  
008E MOV L, C 69  
008F DCX D 1B Организация перемножения сложением
0090 m6: DAD B 09 (HL) ← (HL)+(BC)
0091 DCX D 1B  
0092 JNZ m6: 0090 C2 Организация цикла  сложения
0093   90  
0094   00 Сложение результатов  двух
0095 MVI B, 80 06 перемножений: (a1·J+a2·J)
0096   80 Взять a1·J  из ОЗУ
0097 MVI C, 08 0E  
0098   08  
0099 LDAX B 0A (A) ← [(BC)]
009A MOV A, D 7A Старшая часть  числа a1·J в регистре D
009B INX B 03  
009C LDAX B 0A  
009D MOV A, E 7B Младшая часть  числа a1·J в регистре Е
009E DAD D 19 Сложение a1·J+a2·J
009F MOV B, H 44  
00A0 MOB C, L 4D Вычисление (a1×Ij+a2×Ij) mod m
00A1 LHLD 2A Взять m из ОЗУ
00A2   80  
                                                 00  
00A4 MOV D, H 54  
00A5 MOV E, L 5D  
00A6 m9: MOV H, B 60  
00A7 MOV L, C 69  
00A8 MOV A, C 79 Реализация  (a1×Ij+a2×Ij) mod m
00A9 SUB E 93  
00AA JNC m7: 00B1 D2  
00AB    B1  
00AC   00  
00AD DCR B 05  
00AE JC m8: 00B8 DA  
00AF   B8  
00B0   00  
00B1 m7: MOV C, A 4F  
00B2 MOV A, B 78  
00B3 SUB D 92  
00B4 MOV B, A 47  
00B5 JNC m9: 00A6 D3  
00B6   A6  
00B7   00  
00B8 m8: IN 04 DB  
00B9   04  
00BA CPI 03 FE Проверка режима
00BB   03  
00BC JZ m10: 00C8 CA  
00BD   C8  
00BE   00 Режим одиночной  генерации
00BF MOV A, H 7C Вывод на параллельный порт
00C0 OUT 80 D3  
00C1   80  
00C2 MOV A, L 7D  
00C3 OUT 81 D3  
00C4   81  
00С5 JMP m11: 0014 C3  
00С6   14  
00С7   00  
00С8 m10: MVI B, 08 06 Автоматический  режим
00С9   04 Организация задержки
00СA m13: MVI H, FF 26  
00CB   FF  
00CC MVI L, FF 2E  
00CD   FF  
00CE m12: NOP 00  
00CF DCH H 2B  
00D0 CPI 00 FE  
00D1   00  
00D2 JNZ m12: 00CE C2  
00D3   CE  
00D4   00  
00D5 DCR B 05  
00D6 CPI 00 FE  
00D7   00  
00D8 JNZ m13: 00CA C2  
00D9   CA  
00DA   00  
00DB MOV A, H 7C Вывод на параллельный порт
00DC OUT 80 D3  
00DD   80  
00DE MOV A, L 7D  
00DF OUT 81 D3  
00E0   81  
00E1 JMP m14: 0070 C3  
00E2   70  
00E3   00  
 

 

  Заключение

  В ходе проделанной работы была реализована  ВС генератора псевдослучайных чисел. ВС спроектирована на базе МПК КР580, основным элементом ВС является МП КЗ580ВМ80А. Для ВС была разработана как аппаратная, так и программная часть. 

 

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

Список  использованной литературы:

1. Шахнов, В. А. Микропроцессоры и микропроцессорные комплекты интегральных схем: Справочник. В 2-х т./ Под ред. В. А. Шахнова. – М.: Радио и связь, 1988г.

2. Быстров, Ю. А. Электроника: справочная книга/ Ю. А. Быстров, Я. М.

Великсон, В. Д. Вогман и др.; под ред. Ю. А. Быстрова. – СПб.: Энергоатомиздат, 1996. – 544 с., ил.

3. Нефедов, А. В. Интегральные микросхемы и их зарубежные аналоги: Справочник. Т. 2. – М.: ИП РадиоСофт, 2000. – 640 с., ил.

4. Нефедов, А. В. Интегральные микросхемы и их зарубежные аналоги: Справочник. Т. 5. – М.: КУбК-а, 1997. – 608 с., ил.

5. Нефедов, А. В. Интегральные микросхемы и их зарубежные аналоги: Справочник. Т. 3. – М.: ИП РадиоСофт, 2000. – 576 с., ил.

6. Орлов, С. А. Организация ЭВМ и систем: учебник для вузов/ С. А. Орлов, Б. Я. Цилькер. – СПб.: Питер, 2004. – 668 с., ил. 
 

Интернет  источники:

7.  http://www.computer-museum.ru/technlgy/i8253.php

8. http://www.acust.narod.ru/files/books/UstrMS.doc

9. http://cxem.net/beginner/beginner19.php

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Приложения 
 

Информация о работе Проектирование устройств на базе МПК КР580