Автор работы: Пользователь скрыл имя, 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. Перечень использованных элементов
6. Инструкция
Для ввода чисел на клавиатуре имеется клавиша ВВОД. Ввод чисел нужно осуществлять в следующей последовательности: сначала нажать клавишу ВВОД, а затем набрать число (цифры 0-F).
После ввода чисел следует выбрать режим генерации: автоматический или одиночная генерация. Для выбора автоматического режима нужно нажать клавишу АВТ, для выбора режима одиночной генерации клавишу ШАГ. Если никакая из клавиш АВТ/ ШАГ не нажата, генератор псевдослучайных чисел будет работать в режиме одиночной генерации.
Для правильной работы ВС и получения ожидаемого псевдослучайного числа. Числа a1, a2, 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/
8. http://www.acust.narod.ru/
9. http://cxem.net/beginner/
Приложения
Информация о работе Проектирование устройств на базе МПК КР580