Міністерство освіти і науки України
Національний університет „Львівська політехніка”
Кафедра ЕОМ
Курсова робота
з курсу „Мікропроцесорні системи”
на тему:
„Проектування мікрокомп`ютера”
Виконала
студентка групи СКС-4
Перевірив
Львів-2004
Зміст
1.Завдання
1.Тип мікропроцесора: TSC87251G2D фірми Atmel;
2.Оперативна пам`ять: 8х1КБ (вбудована на кристалі);
3.Постійна пам`ять: 16х32КБ (вбудована на кристалі);
4.Підсистема вводу-виводу: послідовний інтерфейс RS-232.
Визначити та описати основні технічні характеристики мікросхеми TSC87251G2D; розробити схему електричну функціональну; описати структуру та особливості функціонування основних вузлів; розробити схему електричну принципову; описати особливості схемної реалізації та функціонування основних вузлів та з їх відображенням в записці; навести часові діагами функціонування вузлів в основних режимах функціонування: початкова установка, програмування пам`яті програм та даних, звертання до зовнішньої пам`яті, звертання до зовнішніх пристроїв; розробити блок-схему алгоритму та програму початкової ініціалізації; описати в записці основні модулі програми початкової ініціалізації.
2.Загальні відомості
2.1.Особливості мікросхеми TSC87251G2D:
Сумісність за програмним забезпеченням та виводами із стандартом 80C51 Products і 80C51Fx/Rx/Rx+
Знімна заміна, що підключаються до Іntel 8x251Sx
C251 Ядро: Іntel`s MCS 251 D-step Compliance
Регістровий файл ємністю 40 байт
Доступ до регістрів як до байту, слова, подвійного слова.
Триступеневий конвеєр команд
16-бітна внутрішня вибірка команд
Надлишкова система команд C51
16-бітне та 32 бітне АЛП
Порівняльні та умовні команди переходів
Додатковий набір команд переміщення (move)
Лінійна адресація
1 КБ кристальної ОЗП
Зовнішній простір пам'яті (КОД / ДАНІ) програмований від 64 КБ до 256 КБ
TSC87251G2D: 32 КБ кристальної EPROM/OTPROM SINGLE PULSE Programming Algorithm (алгоритм програмування одиночного імпульсу)
TSC83251G1D: 16 КБ кристальна маскована ROM
TSC83251G2D: 32 КБ кристальна маскована ROM
TSC80251G2D: версія без ПЗП
Чотири 8-бітних порта вводу-виводу ( Порти 0, 1, 2 і 3 зі Стандарту 80C51 )
Послідовний порт вводу-виводу: повний Дуплекс UART ( 80C51 сумісний ) з незалежним генератором швидкостей передачі
SSLC: Синхронний послідовний контролер компонування
TWІ Multі-master протокол
μWire (мікро-з`єднання) і SPІ Master і Slave протоколами
Три 16-бітні ТАЙМЕР/ ЛІЧИЛЬНИК ( Таймери 0, 1 і 2 зі Стандарту 80C51 )
EWC: Контролер події та часової діаграми
Сумісний з Іntel програмований масив лічильника PCA
Розширений 16-бітний ТАЙМЕР/ ЛІЧИЛЬНИК з чотирма можливими частотними джерелами
(Fosc/4, Fosc/12, Таймер 1 і зовнішній ввід )
П'ять модулів, кожний з чотирма програмованими режимами:
- 16-бітний програмний ТАЙМЕР / ЛІЧИЛЬНИК
- 16-бітний ТАЙМЕР/ ЛІЧИЛЬНИК вводу збору даних і вимірювання Імпульсу
- високошвидкісний вивід і 16-бітна модуляція ширини програмного імпульсу PWM
- 8-бітне апаратне PWM без службових сигналів
16-бітна спостерігаюча можливість ТАЙМЕРА/ЛІЧИЛЬНИКА
14-бітний апаратний спостерігаючий захищений таймер
Керування потужністю.
Скид при подачі живлення ( інтегрований на чипі)
Прапорець на виключення ( холодний і теплий скид)
Програмований системний годинник
Неактивний Режим (режим очікування, холостого ходу, неробочий режим)
Режим відключення живлення
Інтерфейс переривання від клавіатури заведений на Port 1
Ввід немаскованого переривання (NMI)
Очікування стану вводу у реальному часі (WAIT#/AWAIT#)
ONCE-режим і високошвидкісна підтримка внутрішньо схемного емулятора у режимі реального часу (третя сторона)
Високошвидкісні Версії:
- 4.5V до 5.5V;
- 16 MHz і 24 MHz;
Типовий діючий варіант: 35 мА на 24 MГц
24 мА на16 MГц
Типовий відключений варіант: 2мкА
Варіант з використанням низької напруги:
- 2.7V до 5.5V;
-16 MHz
Типовий діючий варіантt: 11мА на 3В;
Типовий відключений варіант 1мкА;
Температурний діапазон: комерційний ( 0 C до + 70 C), індустріальний ( -40 C до + 85 С)
Опції: розширений Діапазон ( -55 C до + 125 C);
Пакети: PDІL 40, PLCC 44 і VQFP 44, CDІ 40 і CQPJ 44 з вікном;
Опції: справний кристал і керамічний корпус.
2.2.Опис мікросхеми
TSC80251G2D продукти - похідні сімейства Atmel Microcontroller, що базується на архітектурі 8/16-bіt C251. Це сімейство продуктів, що пристосовується до прикладних програм мікроконтролера 8/16-bіt, які потребують продуктивності команди, що збільшується, коли зменшується діюча частота або збільшується адресний простір пам'яті. Архітектура може забезпечувати значне зменшення розміру коду при компілюванні програм C при цілковитому збереженні діючих C51 підпрограм трансляції (блоку).
TSC80251G2D похідні є сумісними за програмним забезпеченням та виводами із стандартним 80C51/Fx/Rx/Rx + з розширеною пам'яттю даних на кристалі ( 1 КБ ОЗП) і до 256 КБ зовнішнього коду і даних. Додатково, TSC83251G2D і TSC87251G2D забезпечують пам'ять коду на кристалі :
ROM - 32 КБ і EPROM/OTPROM 32 КБ відповідно.
Вони забезпечують прозорі розширення до Іntel`s 8x251Sx сімейства з додатковим Синхронним Послідовним Контролером Компонування ( SSLC підтримує TWІ, мікро-з`єднання і SPІ протоколи ), інтерфейсом переривання від клавіатури, спеціалізований (виділений) незалежний генератор швидкостей передачі для UART, і особливостями керування потужностю.
TSC80251G2D-похідні оптимізовані для швидкісного і для низького споживання потужності на широкому діапазоні напруги.
2.3.Типові пристрої, що можуть бути під`єднані
ІSDN термінали (Integrated Services Digital Network – цифрова мережа з комплексними послугами);
Високошвидкісні модеми;
PABX (SOHO – Small office-Home office – „малий офіс-домашній офіс” –сегмент комп`ютерного ринку і продукція для нього) – телефонна система приватного користування;
Лінійні плати;
DVD ROM і програвачі;
Принтери;
Графобудівники;
Сканери;
Блокові машини
Читачі штрих-коду;
Читачі мікропроцесорної карточки – пластикова карточка із вбудованим мікропроцесором;
Високоякісні цифрові монітори;
Високоякісні джойстики;
Високоякісні телевізори.
2.4.Структурна схема
Рис.2.4.1. Структурна схема внутрішнього представлення мікросхеми TSC87251G2D
2.5.Цоколівка мікросхеми
Рис.2.5.1. Вигляд DIP-корпуса мікросхеми (зліва) та функціональний вигляд мікросхеми (справа)
2.6.Призначення виводів
Табл..2.6.1.Призначення виводів мікросхеми TSC87251G2D
Позначення, що були застосовані в таблиці:
О – вихідний сигнал (від output);
I – вхідний сигнал (від input);
I/O – двонаправлений сигнал (від in/out);
PWR – рівень логічної одиниці;
GND – рівень логічного нуля (від GROUND-земля).
SPPA: Single Pulse Programming Algorithm (алгоритм програмування одиночного імпульсу);
SSLC: Synchronous Serial Link Controller (синхронний послідовний контролер компонування);
EWC: Event and Waveform Controller (контролер події та часової діаграми);
ІSDN термінали: Integrated Services Digital Network (цифрова мережа з комплексними послугами);
PABX (SOHO – Small office-Home office – „малий офіс-домашній офіс” –сегмент комп`ютерного ринку і продукція для нього) – телефонна система приватного користування;
DIP: Dual-in-Line Package (корпус з двохстороннім розташуванням виводів);
PWM: Pulse Width Modulator ( модулятор ширини імпульсу);
SPI: Serial Peripheral Interface (послідовний інтерфейс периферійних пристроїв);
EPROM/OTPROM: Erasable[Electrically] Programmable Read-Only Memory ( ПЗП, що стирається і програмується;One-Time Programmable Read-Only Memory-однократно програмоване ПЗП);
UART: Universal Asynchronous Receiver/Transmitter (універсальний асинхронний приймач/передавач);
2.7.Адресний простір
TSC80251G2D-похідні мають чотири адресних простори:
кристальна ПЗП пам`ять програм (не присутня у пристроях без ПЗП);
кристальна ОЗП пам`яті даних;
спеціальні функціональні регістри (SFRs);
масив конфігурації;
Пам'ять програм
TSC83251G2D і TSC87251G2D містять 32 КБ програмної пам`яті на кристалі. Рисунок 4 показує розбивку внутрішньої і зовнішньої пам'яті програм/коду. Якщо EA# має високий рівень, то 32КБ кристальна пам'ять програми відображена у нижній частині сегмента FF: де переходи C251 ядра йдуть після пам`яті, що відповідає за оброблення скиду. Інша частина
простору пам'яті програм/коду відображена на зовнішню пам'ять. Якщо EA# прив`язаний до низького рівня, то внутрішня пам'ять програм/коду не використовується, і будь-який доступ спрямований до зовнішньої пам'яті.
TSC83251G2D-продукти забезпеч-чують внутрішню пам'ять програм/коду у маскованій пам'яті ПЗП, у той час як TSC87251G2D-продукти забезпечують це в пам'яті, що дозволяє перепрогра-мування EPROM. Для TSC80251G2D-продуктів немає ніякої внутрішньої пам'яті програм/коду, і EA# повинний бути встановлений до низького рівня.
Рис.2.8.1 Зображення адресного простору пам`яті програм
Особливу увагу слід звернути на лічильник команд (Program counter) в режимі збільшення: якщо програма виконується винятково з кристальної пам'яті коду (не від зовнішньої пам'яті), треба остерігатися виконавчого коду з верхніх восьми байтів кристальної ПЗП (FF:7FF8h-FF:7FFFh). Через можливість застосування конвеєра TSC80251G2D-похідні можуть робити спробу попередньої вибірки коду з зовнішньої пам'яті (в адресах вище FF:7FFFH) і в такий спосіб зруйнує (перерве) роботу Портів вводу/виводу 0 і 2. Вибірка коду констант з цих 8 байтів не впливає на Порти 0 і 2.
Коли PC збільшується та досягає кінця сегмента FF:, це призводить до скидання адрес FF:0000H (для сумісність з C51 Архітектурою). Коли PC збільшується поза кінцем сегмента FE: це призводить до скидання адреси FF:0000H (властивість лінійності). Коли збільшення PC відбувається поза кінцем сегмента 01: це призводить до переходу на початок сегмента 00: (це запобігає переходу у зарезервовану частину).
Пам'ять даних
TSC80251G2D-похідні адресують 1КБ кристальної ОЗП пам`яті даних. Рисунок 5 показує розбивку внутрішнього і зовнішнього просторів пам'яті даних. Ця пам'ять відображена у просторі даних тільки над 32 байтами області регістрів. Отже, частина кристальної ОЗП розташована у адресному просторі від 20h до FFh. Ця кристальна ОЗП не доступна через простір пам'яті програм/коду.
Для більш швидкого обчислення з допомогою кристальної ROM / EPROM старші 16КБ коду TSC83251G2D/TSC87251G2D відображені у верхній частині області 00: якщо конфігураційний біт карти кристальної пам'яті коду очищений (EMAP# біт у UCONFІG1 байті). Однак, якщо EA# прив'язаний до низького рівня, то TSC80251G2D-похідна працює як пристрій без ПЗП, і код – фактично вибирається у відповідній зовнішній пам'яті (тобто верхні 16 КБ нижніх 32 КБ з сегмента FF:). Якщо EMAP# біт встановлений, кристальна ПЗП не доступна через область 00:.
Весь доступ до частини простору даних поза кристалом відображено перепризначенням до зовнішньої пам'яті.
Рис.2.8.2. Зображення адресного простору пам`яті даних
2.8.Спеціальні функціональні регістри
Спеціальні функціональні регістри (SFRs) TSC80251G2D-похідних детально описані в Таблиці1-Таблиці9.
SFRs розташовані в зарезервованій області кристальної пам'яті S:, що не представлений на рисунку 5. Відносні адреси в межах S: цих SFRs забезпечується сумісно разом з їхніми значеннями при скиданні в Таблиці. Вони - висхідний аналог SFRs стандарту 80C51 і Іntel сімейства 80C251Sx. Всі SFRs використовуються з побітово.
Табл.2.8.1. Спеціальні функціональні регістри ядра C251
Табл.2.8.2. Спеціальні функціональні регістри портів вводу/виводу
Табл.2.8.3. Спеціальні функціональні регістри таймерів
Табл..2.8.4 Спеціальні функціональні регістри для послідовних портів вводу/виводу
Табл..2.8.5. Спеціальні функціональні регістри синхронного послідовного контролера зв`язування
Табл.2.8.6.Спеціальні функціональні регістри контролера подій та часових діаграм
Табл.2.8.7. Спеціальні функціональні регістри системного забезпечення
Табл..2.8.8. Спеціальні функціональні регістри переривань
Табл..2.8.9.Спеціальні функціональні регістри для інтерфейсу клавіатури
Примітка: Ці регістри можуть бути також доступні за відповідними адресами у регістровому файлі.
Табл.2.8.10. Опис спеціальних функціональних регістрів
Примітка:
1. Ці регістри описані в керівництві TSC80251 для програміста (C251 регістра ядра).
2. У TWІ і SPІ режимах, SSCON розбивається на два окремих регістра. SSCON значення скидання - 0000 0000 у TWІ режимі і 0000 0100 у SPІ режимі.
3. У режимах читання та запису, SSCS розбивається на два окремих регістра. SSCS значення скидання - 1111 1000 у режимі читання і 0000 0000 у режимі запису.
2.9.Конфігураційні байти
TSC80251G2D-похідні забезпечують гнучкість проекту користувача, конфігуруючи деякі особливості операцій при скиданні пристрою. Ці особливості відносяться до наступних категорій:
• інтерфейс зовнішньої пам`яті (сторінковий режим, адресні біти, запрограмовані стани
очікування і адресний інтервал для RD#, WR#, і PSEN#);
• вихідний режим коду операції або бінарний режим коду операції;
• вибір байтів, збережених у стеку перериванням;
• відображення верхньої частини кристальної пам'яті коду до області(регіону) 00:.
Два конфігураційні байти UCONFІG0 та UCONFІG1 забезпечують інформацію. Коли EA# прив'язаний до низького рівня, конфігураційні байти вибираються з зовнішнього адресного простору. TSC80251G2D-похідні резервують верхні вісім байт адресного простору пам'яті (FF:FFF8h-FF:FFFFh) для зовнішнього 8-байтового конфігураційного масиву. Тільки два байти фактично використовуються: UCONFІ0 у FF:FFF8H і UCONFІ1 у FF:FFF9h.
Для пристрою ROM конфігураційна інформація збережена в кристальній пам'яті Коли EA# прив`язаний до високого рівня, конфігураційна інформація відновлюється з кристальної пам'яті замість зовнішнього адресного простору і немає обмеження у використанні зовнішньої пам'яті.
Рис.2.9.1. Конфігурація байта UCONFIG0
Табл.2.9.1. Конфігурація байту UCONFIG0
Примітка: 1. UCONFIG0 вибирається двічі, тому він може бути читатися у обидвох режимах – сторінковому і несторінковому. Якщо P2.1 скинутий протягом першої вибірки даних, використовується сторінковий режим конфігурації, інакше наступна вибірка прадставлена у несторінковому режимі.
2. Ця вибірка забезпечує сумісність зі стандартом апаратури 80С51, що мультиплексує адресу LSB(Low State Byte) та даних з порту 0.
Рис.2.9.2. Конфігурація байта UCONFIG1
Табл.2.9.2. Конфігурація байту UCONFIG1
Примітка: 1. CSIZE є доступним лише у EPROM/OTPROM продуктах.
2. Два або чотири байти „кладуться” у вершину стеку згідно INTR, коли використовується інструкція RETI. INTR може бути встановлений, якщо переривання використовує код, який виконується зовні регіону FF.
3. Використовується лише для сумісності з станом А; встановлюється біт, коли використовується WSB1:0#.
Табл.2.9.3. Адресні діапазони та використаннясигналів RD#, WR# та PSEN#
Примітка: Ці виборки забезпечують сумісність зі стандартом апаратури 80C51, що розділяє простір зовнюшньої пам`яті для даних і коду.
3.Проектування
3.1.Внутрішні вузли мікропроцесора
Вузол початкової установки представлений блоком „сторожовий” таймер та інтегрованими на кристал блоками початкового скиду та блоком „гарячого” і „холодного” скиду при вимкненні живлення. „Сторожовий” таймер – це спеціальний таймер, що перезапускає процесор при апаратних і програмних зависаннях. Їх присутні два види: 16-бітний „сторожовий” таймер/лічильник та 14-бітний апаратний „сторожовий” таймер. Після подачі сигналу скиду на центральний процесор, починається вибірка першого слова команди з заданої комірки пам`яті по певній адресі
Вузол синхронізації призначений для формування тактових сигналів, що забезпечують функціонування мікропроцесора, може бути побудований на базі внутрішнього тактового генератора (кварцовий резонатор з частотою 16 МГц або R-C чи L-C ланки). XTAL1 та XTAL2 – це вхід та вихід до зовнішнього вузла синхронізації, що побудований на базі кварцового резонатора. Його вигляд поданий нижче.
Вузол переривань призначений для прийому запитів по внутрішніх та зовнішніх лініях та забезпечує перемикання мікро процесора на виконання програм обробки переривань.Запити на переривання можуть бути як масковані, так і не масковані. Лінії маскованого переривання (INT[1:0]) можуть бути заборонені програмним шляхом, на відміну від ліній немаскованого переривання (NMI).
Вузол інтерфейсу клавіатури під`єднаний до зовнішнього порту мікропро-цесора Port1. Він забезпечує обробку переривань від клавіатури, тобто ввід інформації через зовнішній пристрій.
Вузол керування потужністю контролює напругу живлення, тобто, якщо напруга виходить за програмовані межі, видається переривання.
Вузол таймерів містить три таймери- програмованих лічильника, що можуть працювати від подільника частоти (тактових сигналів) чи внутрішнього вузла синхронізації. Вони також формують масковані запити переривань типу INT.
Вузол паралельних портів Ports 0-3 інтегрований для прийому/передачі дискретної інформації. Є можливість побітового управління і кожен біт має свою адресу.
Вузол послідовного інтерфейсу UART (Universal Asynchronous Receiver/ Transmitter ) – універсальний асинхронний приймач/передавач призначений для послідовного обміну дискретною інформацією.
Вузол формування шин адрес/даних (на схемі представлений як блок інтерфейсних шин) призначений для формування відповідних магістралей адресу, даних та керування.
Вузол пам`яті програм існує для зберігання кодів програм, реалізований як ПЗП (з перепрограмуванням). Тут зберігається програма початкової ініціалізації. Звертання відбувається після початкового скиду при виконанні певних умов. Має об`єм 32 КБ по 16 розрядів кожна комірка, є відносно повільною.
Вузол пам`яті даних присутній для зберігання постійної інформації, яка може бути змінена у процесі функціонування мікропроцесорної системи. Вона є найбільш швидкодіюча, її розмір 1 КБ по 8 розрядів кожна комірка.
Опис роботи пристроїв був взятий також з конспекту лекцій „Мікропроцесорні системи”
3.2.Часові діаграми
Рис.3.2.1.Часова діаграми для вибірки кода/читання даних:
Рис.3.2.2.Часова діаграма для запису даних
Табл.3.2.1. Опис символів, що використовуються у у часових діаграмах синхронного режима очікування в реальному часі
Табл.3.2.2. Опис параметрів, що використовуються у режимі очікування в реальному часі
Рис.3.2.3. Часові діаграми вибірки коду/читання даних для синхронного стану очікування в режимі реального часу
Рис.3.2.4. Часові діаграми запису даних для синхронного стану очікування в режимі реального часу
Табл.3.2.3. Опис символів, що використовуються у у часових діаграмах асинхронного режима очікування в реальному часі
Табл.3.2.4. Опис параметрів, що використовуються у режимі очікування в реальному часі
Примітка: N – номер стану очікування (N≥1).
Рис.3.2.5. Часова діаграма асинхронного стану очікування в режимі реального часу
Табл.3.2.5. Опис символів, що використовуються у у часових діаграмах послідовного порта
Табл.3.2.6. Опис параметрів, що застосовуються для послідовного порту
Примітка: Дані дійсні тільки для високошвидкісних версій
Рис.3.2.6. Часова діаграма роботи послідовного порту у режимі зсувного регістра
Примітка: TI та RI встановлюються протягом виконання зсуву восьмого біта
Табл.3.2.7. Опис параметрів, що використовуються у TWI інтерфейсі
Примітка: 1. 100Кбіт/с. На інших швидкостях значення є обернено пропорційними до
швидкості двійкової передачі 100Кбіт/с.
Визначається ємністю зовнішньої шини та „підтягуючим” резистором
зовнішньої шини, параметр повинен бути менше 1мкс.
Гострий імпульс на лініях SDA та SCL з тривалістю менше ніж 3•Tosc буде
відфільтрований. Максимальна ємність на шинах SDA та SCL дорівнює
400пкФ.
Tclcl=Tosc=одному тактовому періоду осцилятора.
Рис.3.2.7. Часова діаграма роботи TWI інтерфейсу
Табл.3.2.8. Опис символів, що використовуються у часових діаграмах SPI інтерфейсу
Табл.3.2.9. Опис параметрів, що використовуються у SPIінтерфейсі
(продовження)
Примітка: 1. У підпорядкованому режимі (slave) на всі контакти завантажується ємність
розміром 200пкФ.
Значення параметра залежить від програмного забезпечення.
3. У головному режимі (master) на всі контакти завантажується ємність
розміром 100пкФ.
Рис.3.2.8. Часова діаграма роботи контролера SPI у головному (master) режимі (SSCPHA=0)
Примітка: сигналом SS# керує програмне забезпечення
Рис.3.2.9. Часова діаграма роботи контролера SPI у головному (master) режимі (SSCPHA=1)
Примітка: не визначений для нормального старшого байту (MSB), що був щойно отриманий.
Рис.3.2.10. Часова діаграма роботи контролера SPI у підпорядкованому(slave) режимі (SSCPHA=0)
Примітка: не визначений для нормального молодшого байту (LSB), що був щойно отриманий.
Рис.3.2.11. Часова діаграма роботи контролера SPI у підпорядкованому(slave) режимі (SSCPHA=1)
Табл.3.2.10. Опис символів, що використовуються у часових діаграмах пристрою перепрограмування та верифікації
Табл.3.2.11. Опис параметрів, що використовуються у пристрої перепрограмування
Табл.3.2.12. Опис параметрів, що використовуються у пристрої верифікації
Рис.3.2.12. Часова діаграма роботи пристроя перепрограмування
Рис.3.2.13. Часова діаграма роботи пристроя верифікації
Табл.3.2.13. Опис символів, що використовуються у часових діаграмах блоку зовнішньої синхронізації
Табл.3.2.14. Опис параметрів, що використовуються у блоці зовнішньої синхронізації
Рис.3.2.14. Часова діаграма роботи пристроя зовнішньої синхронізації
Примітка: 1. На протязі тестування змінним струмом всі контакти були встановлені у
Vdd= -0.5В для логічної одиниці та у 0.45В для логічного нуля.
2. Розміри синхронізації для всіх виходів встановлені у VIH мін для логічної
одиниці та VIL макс для логічного нуля.
Рис.3.2.15. Часова діаграма тестування входу/виходу
Рис.3.2.16. Часова діаграма завантаження параметрів
Рис.3.2.17. Схема під`єднання кварцового резонатора (а) та формування скиду (б)
3.3.Підключення зовнішньої пам`яті
Для підключення використаю дві мікросхеми Flash-пам`яті AT29LV010. Принцип підключення поданий нижче.
Рис.3.3.1. Підключення зовнішньої пам`яті
Flash-пам`ять має таку особливість, що читання здійснюється як з оперативної пам`яті, а запис при функціонуванні без спеціального обладнання (не треба виймати з панелі). Час зберігання інформації у мікросхемі – до 100 років (мінімум без перепрограмування 10 років). Є обмежене число циклів запису: мінімум 100000 циклів, але у спеціальних мікросхемах число зростає до 700000 циклів. Основна часова характеристика – читання пам`яті – менше 100нс, але є й такі, що потребують 20нс (на рівні швидкодіючих ОЗП). Особливістю Flash є специфічна операція запису. Запис інформації здійснюється посекторно. Пам`ять великих об`ємів має сектор 128Б.Операція здійснюється у три етапи:
читаємо сектор у буфер;
модифікація байта у буфері;
запис сектора.
Не можна у довільний момент здійснити запис до пам`яті, треба спочатку відкрити мікросхему, записати 128Б, чекати 20 мс (прошивка 128Б триває 20мс). Запис здійснюється вбудованим автоматом при підвищеній напрузі. Відкрити мікросхему – значить записати відповідні коди по певним адресам.
Синхронізація зовнішньої пам`яті відбувається за умови завантаження на всі контакти ємності величиною у 50 пФ. Табл. 3.3.2 і табл.3.3.3 подають перелік параметрів синхронізації для змінного струму для мікросхем, похідних від TSC87251G2D без наявного стану очікування. Зовнішні стани очікування можуть бути додані подовженням сигналів PSEN#/RD#/WR# або подовженням сигналу ALE. У цих таблицях пункт 2 примітки виділяє параметри, отримані від впливу одного ALE-стану очікування, а пункт 3 оголошує результати впливу станів очікування від сигналів PSEN#/RD#/WR#.
Табл.3.3.1. Опис символів, що використовуються у часових діаграмах роботи зовнішньої пам`яті
Табл.3.3.2. Цикли зовнішньої шини для синхронізації параметрів з використанням змінного струму; Vdd=від 4.5 до 5.5В; Ta= - 40 до 85C
(продовження)
Примітка: 1. Специфікація для сигналу PSEN# є ідентичною також і для RD#.
2. Якщо стан очікування є доданим подовженням сигналу ALE, треба додати
2*Tosc;
3. Якщо стани очікування додані подовженням сигналів RD#/PSEN#/WR#,
треба додати 2Т*Tosc (N=1..3).
Табл.3.3.2. Цикли зовнішньої шини для синхронізації параметрів з використанням змінного струму; Vdd=від 2.7 до 5.5 В; Ta= - 40 до 85C
(продовження)
Примітка: 1. Специфікація для сигналу PSEN# є ідентичною також і для RD#.
2. Якщо стан очікування є доданим подовженням сигналу ALE, треба додати
2*Tosc;
3. Якщо стани очікування додані подовженням сигналів RD#/PSEN#/WR#,
треба додати 2Т*Tosc (N=1..3).
Рис.3.3.2.Часова діаграма циклу зовнішньої шини: вибірка коду (не у посторінковому режимі)
Рис.3.3.3. Часова діаграма циклу зовнішньої шини: читання даних (не у посторінковому режимі)
Рис.3.3.4. Часова діаграма циклу зовнішньої шини: запис даних (не у посторінковому режимі)
Рис.3.3.5. Часова діаграма циклу зовнішньої шини: вибірка коду(у посторінковому режимі)
Примітка: 1. Вибірка коду для сторінки розміром у 256 байт потребує одного стану
(2•Tosc); пропуск сторінки вимагає (4•Tosc);
2. На протязі послідовності звертань до сторінки PSEN# утримується у
низькому стані, доки не завершиться цикл останнього звертання до
сторінки.
Рис.3.3.6. Часова діаграма циклу зовнішньої пам`яті: читання даних (сторінковий режим)
Рис.3.3.7. Часова діаграма циклу зовнішньої пам`яті: запис даних (сторінковий режим)
Примітка: для рис.3.3.2 - 3.3.7 значення параметру залежить від стану очікування,
треба дивитися табл.3.3.1 та табл.3.3.2
3.4.Підключення послідовного інтерфейсу RS-232
Інтерфейс RS-232C широко використовується у персональних комп`ютерах для обміну інформацією з периферійними пристроями у послідовному дуплексному режимі обміну. Спрощений варіант інтерфейса С2 є аналогом інтерфейса RS-232C для колишніх країн економічної співдружності. Швидкість передавання даних в асинхронному режимі може становити біт/с: 50, 75, 100, 150, 300, 600, 1200, 2400, 4800, 9600, 19200.
Інтерфейс RS-232С передбачає потенціальне подання логічних рівнів 0 та 1, а також в окремих випадках – використання струмової петлі. Рівень напруги в межах +5…15В вважається високим і відповідає «логічним нулем», рівень напруги в межах від -5…15В – низьким і відповідає «логічній одиниці». Рівні напруг наведено для навантажених формувачів. При ненавантажених формувачах рівні напруг можуть змінюватися у межах ±25В. Приймач має сприймати сигнал из рівнями +3…25В і -3…25В. Асинхронний режим передавання даних передбачає за одне приймання передавати один набір двійкових розрядів, не більш як один байт. Порядок передавання одного набору даних наведено нижче:
Рис.3.4.1 Асинхронний режим передавання інтерфейсу RS-232
Передавач не синхронізований з приймачем. Відповідно потрібні сигнали, які б сигналізували про те, що передавач готовий передавати дані. Ця задача розв`язується передаванням безпосередньо перед даними додаткового розряду, який називають стартовим. Передавач перебуває в стані очікування, постійно формує високий рівень напруги „логічний нуль”. Перемикання з „логічного нуля” у „логічну одиницю” сигналізує приймачу, що скоро передаватиметься порція даних. Перший розряд цього передавання (логічний нуль) називають стартовим. Після виявлення переходу з „логічного нуля” у „логічну одиницю” приймач читає сигнал з вхідної лінії через інтервал часу, що дорівнює половині тривалості одного розряду – це гарантує, прийнятий сигнал „логічна одиниця” буде справжнім, а не завадою. Після приймання стартового розряду приймач починає послідовне читання даних з одно розрядними інтервалами. Приймач формує порцію даних згідно з попередньо запрограмованими параметрами, кількістю війкових розрядів і вибраним способом контролю. Кількість війкових розрядів даних може становити 5б7б8. Розряд контролю є старшим розрядом порції даних. У приймача може передбачатися контроль на парність, непарність або взагалі передавання без контролю.
Синхронний режим передбачає передавання багато розрядного багатобаштового повідомлення одним безперервним потоком даних. Синхронний режим передавання використовують значно рідше, ніж асинхронний.
Основні лінії та сигнали інтерфейса RS-232C з прив`язкою до персонального ЕОМ типу IBM PC наведено у табл..1. Лінії мають уніфіковане під`єднання до виводів 25-контактного з`єднувача типу D, який має штепсельну (DB25P) і розеткову (DB25S) частини. У табл..1. відсутні лінії інтерфейсу типу „струмова петля”, які використовуються досить рідко.
Табл.3.4.1 Лінії інтерфейсу RS-232C
Захисне заземлення (PG) з`єднає між собою корпуси напівпровідникових елементів для зняття статичного заряду. Цей вивід під`єднають до екрана джгута, що з`єднає ЕОМ з периферійним пристроєм.
Дані про передавача (-TxD) передаються в лінію послідовними посиланнями. Дані про приймача (-RxD) надходять на вхід приймача даних. Запит передавача (RTS) формується ним тоді, коли він має видавати дані в лінію. Сигнал має перебувати в активному стані до кінця передавання. Скидання передавача (CTS) використовується приймачем для повідомлення передавачу, чи готовий приймач до приймання даних. Сигнал має перебувати в активному стані протягом усього передавання. Якщо сигнал CTS переходить до пасивного стану всередині передавання, то передавач припиняє передавання і видається помилка. Готовність приймача (DSR) визначає режим роботи модему або іншого периферійного пристроя. Коли модем увімкнено, ця лінія в більшості випадків перебуває в активному стані. Коли модем здатний працювати в кількох режимах, активний стан лінії DSR можна використовувати для одних режимів, пасивний – для інших. Ознаку виявлення несучої частоти (DCD) модем використовує для повідомлення передавачу, що каналом передавання можна користуватися, і активізується тоді, коли вже видано сигнал STR. Готовність терміналу (DTR) – сигнал від терміналу, який означає, що термінал перебуває в режимі взаємодії із системою і відповідно зв`язок можливий. Якщо цей сигнал перебуває в пасивному стані, то це відповідає автономному режиму роботи терміналу і зв`язок з ним як із зовнішнім пристроєм неможливий. Покажчик викликів (RI) активізується модемом, коли останній отримує виклик по телефонній лінії. Цей сигнал використовується пристроями, які можуть автоматично відповідати на виклики.
Нижче приведено мікросхему ADM202 для під`єднання зовнішнього послідовного інтерфейса RS232. (дані взято з файлу adm202.pdf)
Рис.3.4.2.Конфігурація контактів для DIP-корпуса мікросхеми ADM202 (а) та типова операційна схема (б)
Характеристики мікросхеми ADM202
швидкість передачі 120 КБ;
невеликий (0.1мкФ) генератор підкачки заряду конденсаторів;
проста підтримка потужності у 5В;
можливі EIA-232-E та V.28 специфікації;
два контакта приймання та два контакта передавання;
вбудовані дешифратори;
±9В вихідне коливання при підтримці +5В;
низька потужність біполярної КМОН-технології: 2.0 мА Icc;
±30В рівні вводу отримувача;
Є можливість підключення таких пристроїв:
комп`ютери;
периферія;
модеми;
принтери;
інструменти;
Табл.3.4.2. Призначення виводів
Рис.3.4.3 Схема під`єднання роз`єму ADM202
Значення для конденсаторів, що під`єднуються до ADM202 були взяти з довідника Р.М. Терещук, Н.М.Терещук, С.А.Седов „Полупроводниковые приемно-усилительные уст-ройства”
3.5.Алгоритм програмування та верифікації внурішньої ПЗП
Програмування:
1) Кристал піддається скиду і утримується в цьому стані, доки не завершується операція програмування внутрішньої перепрограмованої ПЗП;
2) Сигнал PSEN# та інші керуючі сигнали (ALE та Port0) встановлюються у високий рівень;
3) Тоді PSEN# опускаємо у низький рівень після двох тактових циклів або більше і він утримується у цьому стані, доки не завершується операція програмування;
4) Електрична напруга на контакті EA# повинна бути встановлена до рівня Vdd;
5) Режим програмування вибирається згідно коду поданого у порт Port0. Це застосовується до закінчення операції програмування;
6) Програмна адреса подається на порти Port1 та Port3, що відповідають старшому та молодшому байту адреси;
7) Програмні дані подаються на порт Port2;
8) Програмування EPROM завершується, коли підвищується напруга на EA# до Vpp, потім генерацією низькорівневого імпульса на контакті ALE/PROG#.
9) Напруга на контакті EA# повинна бути знижена до рівня Vdd перед завершенням операції програмування;
10) Є можливість чергувати програмування та верифікацію. Треба лише впевнитися, що EA# фактично знижена до Vdd перед здійсненням верифікації;
11) PSEN# та інші керуючі сигнали розблоковуються для завершення програмування або програмування та верифікації, що чергуються.
Рис.3.5.1. Схема підключення сиглалів для процесу програмування мікросхеми
Табл.3.5.1 Режими програмування
Примітка: Сигнатурні байти не можуть програмуватися користувачем.
Верифікація:
1) Кристал піддається скиду і підтримується у цьому стані, поки триває процес верифікації;
2) Сигнал PSEN# та інші керуючі сигнали (ALE та Port0) встановлюються у високий рівень;
3) Тоді PSEN# опускаємо у низький рівень після двох тактових циклів або більше і він утримується у цьому стані, доки не завершується операція верифікації;
4) Електрична напруга на контакті EA# повинна бути встановлена до рівня Vdd та сигнал ALE повинен бути піднятий до високого рівня;;
5) Режим верифікації вибирається згідно коду поданого у порт Port0. Це застосовується до закінчення операції верифікації;
6) Верифікаційна адреса подається на порти Port1 та Port3, що відповідають старшому та молодшому байту адреси;
7) Дані подаються на порт Port2;
8) Напруга на контакті EA# повинна бути знижена до рівня Vdd перед завершенням операції верифікації;
9) Є можливість чергувати програмування та верифікацію. Треба лише впевнитися, що EA# фактично знижена до Vdd перед здійсненням верифікації;
10) PSEN# та інші керуючі сигнали розблоковуються для завершення верифікації або програмування та верифікації, що чергуються.
Рис.3.5.2. Схема підключення сигналів для процесу верифікації мікросхеми
Табл.3.5.2 Режими верифікації
Примітка: Для зберігання у таємниці вміст кристальної пам`яті програм при шифруванні
Шифрувальна матриця не підлягає верифікації.
3.6.Блок-схема алгоритму початкової ініціалізації
Програма початкової ініціалізації подана у додатку, для написання були використані дані з файлу doc397ada77b8f9.pdf
3.7.Принцип підключення світлодіодів
Світлодіоди є пристроєм виводу, на які через коректуючий опір буде подаватися сигнал підсвічення. Назва мікросхеми світлодіода – АЛ307А. Значення опорів дорівнює 270 Ом. Світлодіоди будуть під`єднані до портів мікросхеми TSC87251G2D через дешифратор, що буде керувати вибором потрібного
Рис.3.7.1. Схема підключення світлодіодів
Список використаної літератури
1. WWW1: HYPERLINK "http://www.atmel.com" www.atmel.com/файл TSC8x251G2D.pdf;
2. WWW2: HYPERLINK "http://www.atmel.com/" www.atmel.com/файл ADM202.pdf;
3. WWW3: HYPERLINK "http://www.atmel.com/" www.atmel.com/файл doc397ada77b8f9.pdf;
4. WWW4: www.atmel.com/файл c51_emulators.xls;
5. WWW5: www.atmel.com/файл c51_programmers;
6. Конспект лекцій з курсу „Мікропроцесорні системи”;
7. Р.М. Терещук, Н.М.Терещук, С.А.Седов „Полупроводниковые приемно-усилительные
устройства” , Київ,”Наукова думка”,1987. -800c.
8.Цифровые и аналоговые интегральные микросхемы: Справочник. Под ред.
С.В.Якубовского. -М.:Радио и связь, 1989. -496.