- •До лабораторних робіт з дисципліни
- •Частина 2
- •1 Середовище сапр active–hdl
- •1.1 Загальні відомості про Active-hdl
- •1.2 Створення нового проекту
- •1.3 Створення нового документа (введення тексту програми)
- •1.4 Компіляція проекту
- •1.5 Моделювання
- •1.6 Порядок виконання роботи
- •1.8 Контрольні запитання
- •2 Мова програмування vhdl
- •2.1 Теоретична довідка
- •2.1.1 Опис об'єктів мовою vhdl
- •2.1.2 Типи даних і операції
- •2.1.3 Оператори мови vhdl
- •2.2 Порядок виконання роботи
- •2.4 Контрольні запитання
- •3 Індивідуальні завдання
- •3.1 Семисегментний індикатор
- •3.2 Клавіатурні прапори
- •3.3 Шифратор коду Хеммінга
- •3.4 Дешифратор адреси інтерфейсу ieee 1284
- •3.5 Дешифратор адреси плати pcl-711b
- •3.6 Режими адресації мікропроцесора Intel 8086
- •3.7 Система команд мікропроцесору Intel 4004
- •3.8 Приклад виконання роботи
- •3.8.1 Створення проекту
- •3.8.2 Створення компоненту
- •3.8.3 Створення файлу верхнього рівня
- •Література
- •6 9063 М. Запоріжжя, знту, друкарня, вул. Жуковського, 64
3.4 Дешифратор адреси інтерфейсу ieee 1284
Регістри паралельного порту (інтерфейс IEEE 1284) IBM PC/AT-сумісного комп'ютера адресуються відносно базової адреси BASE. В режимі ЕСP паралельний порт комп'ютера обслуговують 10 регістрів, доступ до яких забезпечується через розширений простір адрес уведення-виведення. Окрім адреси порту, при виборі регістра враховується режим роботи (кодується трьома бітами). В таблиці 3.4 приведена карта портів уведення-виведення паралельного інтерфейсу в режимі ЕСP.
Таблиця 3.4 – Регістри ЕСP
Адреса |
Режим |
Регістр |
Сигнал |
BASE |
000-001 |
Data Register |
DR |
BASE |
011 |
ECP Address FIFO |
ECPAFIFO |
BASE+1 |
000-111 |
Status Register |
SR |
BASE+2 |
000-111 |
Control Register |
CR |
BASE+400h |
010 |
Parallel Port Data FIFO |
SDFIFO |
BASE+400h |
011 |
ECP Data FIFO |
ECPDFIFO |
BASE+400h |
110 |
Test FIFO |
TFIFO |
BASE+400h |
111 |
Configuration Register A |
CNFGA |
BASE+401h |
111 |
Configuration Register B |
CNFGB |
BASE+402h |
000-111 |
Extended Control Register |
ECR |
Завдання 4. BASE = 3BCh. Розробити VHDL-модель поведінки дешифратора адреси паралельного порту в режимі ЕСP. На вхід такого дешифратора повинні поступати дві шини: 11-розрядна шина ADDR адреси порту уведення-виведення і 3-розрядна шина MODE, що задає режим роботи порту. На виході повинен формуватися 10-розрядний позиційний код, що відповідає сигналу вибору того або іншого регістра контролера інтерфейсу IEEE 1284.
3.5 Дешифратор адреси плати pcl-711b
Плата аналогового і дискретного уведення-виведення PCL-711B (Advantech Co.) в просторі адрес портів уведення-виведення IBM PC-сумісного комп'ютера займає діапазон з 16 послідовно розміщених адрес. Адреса кожного порту визначається відносно базової адреси BASE, що встановлюється за допомогою перемички на платі. Додатково деякі регістри плати визначаються режимом звернення до них (читання або запис). В таблиці 3.5 перераховані порти плати PCL-711B.
Сигнали вибору регістрів плати PCL-711B можна об'єднати в 15-розрядну шину. Призначення регістрів плати і умовні найменування відповідних сигналів шини приведені в таблиці 3.6.
Таблиця 3.5 – Адреси портів уведення-виведення
Адреса |
Читання |
Запис |
BASE |
Лічильник 0 |
Лічильник 0 |
BASE+1 |
Лічильник 1 |
Лічильник 1 |
BASE+2 |
Лічильник 2 |
Лічильник 2 |
BASE+3 |
не використовується |
Керування лічильником |
BASE+4 |
Дані АЦП, м. байт |
Дані ЦАП, м. байт |
BASE+5 |
Дані АЦП, |
Дані ЦАП, |
BASE+6 |
Дискретний вхід, м. байт |
не використовується |
BASE+7 |
Дискретній вхід, ст. байт |
не використовується |
BASE+8 |
не використовується |
Скидання стану переривання |
BASE+9 |
не використовується |
Настройка коеф. підсилення сигналу |
BASE+10 |
не використовується |
Сканування мультиплексора |
BASE+11 |
не використовується |
Управління режимом та перериванням |
BASE+12 |
не використовується |
Програмний пуск АЦП |
BASE+13 |
не використовується |
Дискретний вихід, м. байт |
BASE+14 |
не використовується |
Дискретний вихід, ст. байт |
BASE+15 |
не використовується |
не використовується |
Таблиця 3.6 – Призначення регістрів плати PCL-711B
№ |
Сигнал |
Призначення регистрів |
1 |
CNT0 |
Лічильник 0. Регістр Counter 0 НВІС Intel 8253 |
2 |
CNT1 |
Лічильник 1. Регістр Counter 1 НВІС Intel 8253 |
3 |
CNT2 |
Лічильник 2. Регістр Counter 0 НВІС Intel 8253 |
4 |
CCNT |
Керування лічильником. Регістр Control НВІС Intel 8253 |
5 |
AD0 |
Дані АЦП, м. байт. Молодший байт даних ВІС АЦП AD574 |
6 |
AD1 |
Дані АЦП, ст. байт. Старший байт даних ВІС АЦП AD574 |
7 |
DA0 |
Дані ЦАП, м. байт. Молодший байт даних ВІС ЦАП PM7548 |
8 |
DA1 |
Дані ЦАП, ст. байт. Старший байт даних ВІС ЦАП PM7548 |
9 |
DIO0 |
Дискретний вхід/вихід, мл. байт. Молодший байт дискретних даних |
10 |
DIO1 |
Дискретний вхід/вихід, ст. байт. Старший байт дискретних даних |
11 |
RESET |
Скидання переривання. В режимі передачі даних по перериванню запис в цей регістр дозволяє скинути прапор переривання |
12 |
GAIN |
Настройка коеф. підсилення. Можна задати значення коефіцієнта підсилення сигналу, що поступає на АЦП |
Продовження табл. 3.6
13 |
MUX |
Управління мультиплексором. Вибір одного з восьми каналів аналогового введення |
14 |
MODE |
Управління режимом і перериванням. АЦП може виконуватися по сигналу від трьох джерел: з програми, від вбудованої системи запуску, по зовнішньому сигналу |
15 |
START |
Програмний запуск АЦП. Запис в цей регістр приводить до запуску АЦП |
Завдання 5. BASE = 220h. Розробити VHDL-модель поведінки дешифратора адреси регістрів плати PCL-711B. На вхід дешифратора повинні поступати дві шини: 10-розрядна шина ADDR адреси порту уведення-виведення і 2-розрядна шина MODE, що задає режим звернення до порту (читання/запис). На виході повинен формуватися 15-розрядний позиційний код, що відповідає сигналу вибору регістра плати PCL-711B.