Министерство общего и профессионального образования
Российской Федерации
УРАЛЬСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
КАФЕДРА РЭИС
К курсовой работе по дисциплине
«Цифровые устройства и микропроцессоры»
Руководитель: Добряк В.А.
Студент:
Екатеринбург
2000
ЗАДАНИЕ НА ПРОЕКТИРОВАНИЕ
Модуль ОЗУ и программа его тестирования.
Основные технические требования:
– Ёмкость – 128 Кб;
– Раздельные шины адреса и данных;
– Статическое оперативное запоминающее устройство;
– Микропроцессор – Z80.
СОДЕРЖАНИЕ
1. Принцип работы устройства
2. Описание работы программы функционального контроля памяти
3. Алгоритм теста
4. Программа тестирования устройства на ассемблере
Приложение 1. Схема электрическая принципиальная модуля ОЗУ
Приложение 2. Технические характеристики микросхемы ОЗУ UM621024A
ВВЕДЕНИЕ
Развитие микроэлектроники в начале семидесятых годов привело к появлению микропроцессоров – новой разновидности БИС, особенность которых заключается в реализации полного перечня функций, выполняемых процессором современных компьютеров. В связи с широким спектром возможных применений эволюция архитектуры микропроцессоров пошла по нескольким различным направлениям, в результате чего появились следующие их классы:
· простые однокристальные 4- и 8-разрядные контроллеры невысокой производительности для применения в бытовых приборах и небольших подсистемах;
· быстродействующие секционные комплекты микропроцессорных БИС для создания машин произвольной разрядности, адаптируемых к алгоритмам обработки данных на микропрограммном уровне;
· мощные однокристальные 16- и 32-разрядные микропроцессоры, сравнимые по быстродействию с мини-ЭВМ;
· процессоры цифровой обработки сигналов, подключаемые к стандартным интерфейсам микроЭВМ для обработки арифметических алгоритмов, таких, как быстрое преобразование Фурье;
· аналоговые микропроцессоры – устройства, включающие АЦП, ЦАП, устройства цифровой обработки и представляющиеся пользователю как системы с аналоговым входом и аналоговым выходом.
Существенное отличие архитектуры, ориентированной на различные классы задач, порождает взаимную незаменяемость разных классов микропроцессоров. Развитие всех направлений дополняет друг друга, в результате чего создаётся элементная база, ориентированная на эффективное использование в составе систем и устройств различной производительности и потребления энергии.
Использование микропроцессоров позволило создать новый класс малопотребляющих компактных машин – микроЭВМ. Данная курсовой работа, в частности, и рассматривает одну из наиболее важных частей такой микроЭВМ – работу одного из однокристальных микропроцессоров – Z80 с оперативным запоминающим устройством ёмкостью 128 Кб.
1. ПРИНЦИП РАБОТЫ УСТРОЙСТВА
Выбранный микропроцессор Z80 как нельзя лучше подходит для создания микроЭВМ. Хотя в данное время производительность данного класса машин стремительно растёт, остаются ниши для использования и данного микропроцессора. Например, такие машины вполне себя оправдывают, если их использовать в технологических линиях контроля и сборки. Причём самых различных изделий. На такие рабочие места новую высокопроизводительную технику ставить нецелесообразно, а собрать на базе данного микропроцессора устройство, измеряющее параметры изделия и производящее регулировку его, достаточно просто и не требует значительных затрат.
Наиболее важное ограничение в использовании микропроцессора Z80 накладывает, то, что данный микропроцессор напрямую может использовать не более 216 ячеек памяти. Т.е. микропроцессор адресует всего 64 Кбайт памяти. Зачастую в тех областях, где применяется данный процессор более и не требуется, но иногда существует острая потребность в расширении адресного пространства. Это довольно просто удовлетворяется путём некоторой модернизации схемы работы микропроцессора с памятью.
В данной курсовой работе рассматривается один из способов расширения адресного пространства микропроцессора Z80 – метод окна.
Метод окна позволяет очень просто разрешать указанные проблемы. Идея метода состоит в отображении на «большом» отрезке лишь части «малого» отрезка. Эта часть соответствует свободным адресам микроЭВМ и называется окном.
Рис.1. Схемная реализация метода окна
Система работает следующим образом:
1. Процессор загружает программно-доступный регистр старших разрядов адреса с шины данных, задавая положение проекции окна в адресном пространстве главной памяти.
2. Процессор обращается к некоторому адресу, лежащему внутри окна.
3. Дешифратор опознаёт принадлежность текущего адреса фиксированному окну и разрешает передачу в главную память сигнала сопровождения адреса. В главную память выдаётся полный адрес, определяющий одну из её ячеек.
4. Выбранная ячейка главной памяти выдаёт или принимает информацию в зависимости от сигнала на линии управления режимом работы и посылает сигнал по линии передачи ответа.
Принципиальная схема устройства находится в Приложении 1.
В данном случае используется двухстраничное деление памяти. Всё ОЗУ находится на одной микросхеме, и переключение страниц производится путём подачи на регистр по шине данных сигнала высокого уровня, который переключает диапазон адресов ОЗУ. Используется только один разряд шины данных. Использование всех разрядов позволяет получить 40322 страницы памяти по 64 Кбайт. Т.е. применение данной схемы позволяет адресовать около 2,64 Гбайт памяти.
Для обеспечения режима ожидания предусмотрена схема перевода микропроцессора в режим ожидания. Ожидание обозначает некоторый период времени, необходимый для выполнения операций чтения или записи в память. Когда время ответа (реакции) памяти больше, чем время цикла команды, цикл команды должен быть увеличен. Период ожидания должен быть достаточным для срабатывания устройства памяти. Можно отметить, что в данной схеме выход второго триггера соединяется с выводом 4 вентиля НЕ И. Т.к. время доступа памяти выбранного типа не превышает 100 нс., а период последовательности тактовых импульсов микропроцессора Z80 не менее 1 мкс., то задержка на один период последовательности тактовых импульсов будет достаточной. Сигнал запроса ожидания на вход триггера типа D поступает с выхода микропроцессора MREQ. Для подачи синхроимпульсов используется линия, по которой поступают синхроимпульсы на вывод 6 микропроцессора Z80.
2. ОПИСАНИЕ РАБОТЫ ПРОГРАММЫ ФУНКЦИОНАЛЬНОГО КОНТРОЛЯ ПАМЯТИ
Под функционированием какого-либо объекта понимается выполнение предписанного ему алгоритма функционирования при применении объекта по назначению. Методы функционального контроля основаны на сравнении с эталонными сигналами выходных реакций (сигналов) тестируемой схемы на заданные входные воздействия.
Одним из основных узлов системы функционального контроля является генератор тестов, предназначенный для формирования последовательности тестирующих и эталонных сигналов по заданному закону. Наборы входных сигналов, задаваемые в виде машинных слов (кодов), определяют порядок обращения к элементам памяти и последовательность выполняемых операций. Математические адреса элементов памяти могут не совпадать с их физическими координатами на кристалле.
Для тестирования памяти в нашем случае, применим линейный алгоритм “Марш”, с некоторой модернизацией, позволяющей более качественно провести функциональный контроль. Данный алгоритм отличается высоким быстродействием, позволяющим применять его для технологического контроля микросхем памяти. Модернизация алгоритма связана с тем, что сначала память тестируется несколькими разными тестовыми значениями, так называемыми, шаблонами. Эти шаблоны, подобраны специально таким образом, что позволяют значительно эффективней выявлять ошибки чтения/записи памяти. А затем проводится тестирование памяти перемещающимся разрядом. Также данный тест обеспечивает тестирование двух страниц памяти.
В каждый байт записывается 0,FF16,AA16(101010102) и 5516(010101012) и проверяется, могут ли они быть правильно считаны. В каждую позицию разряда каждого байта помещается 1 и проверяется, может ли быть эта единица правильно считана при всех остальных нулевых разрядах. Если все тесты работают правильно, то сбрасывается флаг переноса. При нахождении ошибки осуществляется немедленный выход из программы с установлением флага переноса и возвратом тестового значения и адреса, при котором произошла ошибка.
При проверке с одним значением (с 0,FF16,AA16 и 5516) сначала заполняется область памяти, а затем каждый байт сравнивается с заданным значением. Заполнение сначала всей области памяти должно обеспечить достаточный временной разрыв между записью и чтением, чтобы определить ошибки сохранения данных (которые могут возникнуть при неправильной разработке схем обновления). Затем, начиная с разряда 7, выполняется тест с перемещающимся разрядом; здесь записываются данные в память, и осуществляется попытка немедленно прочитать их обратно для сравнения. Далее все тесты повторяются для второй страницы памяти.
3. Алгоритм теста
4. ПРОГРАММА тестирования УСТРОЙСТВА НА АССЕМБЛЕРЕ