Міністерство освіти і науки України
Національний університет „Львівська політехніка”
Кафедра ЕОМ
Лабораторна робота №1
„Ознайомлення з середовищем PSoC Designer”
Виконав
студент групи СКС-5
Львів-2004
1.Мета роботи: ознайомитися з середовищем розробки реконфігурованих процесорів PSoC фірми Cypress MicroSystems.
2.Теоретична частина:
2.1. Особливості архітектури PSoC
У 2001 році фірма Cypress MіcroSystems запропонувала оригінальне сімейство мікроконтролерів з набором реконфігурированих аналогових і цифрових периферійних модулів архітектури PSoC (Programmable System on Chіp). Контролер побудований на базі традиційного процесорного ядра М8С Гарвардської архітектури, що використовується фірмою Cypress упродовж багатьох років у контролерах клавіатури і мишки малої вартості. Це класичне ядро з CІSC архітектурою на основі акумулятора, час виконання команд - від 4 до 15 циклів тактового генератора процесора при максимальній частоті ядра 24 МГц. Основних регістрів ядра - 5 (лічильник команд CPU_PC, акумулятор CPU_A, покажчик стека CPU_SP, індексний регістр CPU_X і регістр прапорців CPU_F). Система команд підтримує 10 режимів адресації, характеризується високою щільністю коду й оптимізована для програмування мовою ассемблера. Слід зазначити високу щільність коду при програмуванні мовою ассемблер і неоптимальну систему команд для програмування на мовах високого рівня, зокрема на С.
Щодо традиційних інтегрованих периферійних пристроїв, то PSoC має їхній досить повний набір: сторожовий таймер/таймер сну, детектор зниження напруги живлення і скидання при включенні живлення і зниженні живильного напруги, один чи два апаратних помножувача з нагромадженням. Помножувач дозволяє виконувати множення двох знакових байтових цілих з формуванням 16 бітного результату і накопичувати результати множення в 32-бітному акумуляторі. Ця особливість робить зручним використання процесорів PSoC для деяких задач цифрової обробки сигналів. Апаратний дециматор і регістр послідовного наближення (SAR) призначені для побудови сігма-дельта і аналого-цифрових перетворювачів (АЦП) послідовного наближення відповідно. Вбудований підвищувальний імпульсний стабілізатор напруги здатний забезпечити запуск процесора при напрузі живлення від 1.0 В, що дуже зручно для систем з батарейним живленням (зауважимо, що максимальний струм, який можна одержати від цього перетворювача не перевищує 5-10 мА, а процесор характеризується не дуже високою економічністю, зокрема, струм споживання тільки ядра може досягати 8 мА при тактовій частоті ядра 3 МГц і напрузі живлення 5 В).
Система переривань - пріоритетна, з фіксованими пріоритетами джерел переривань. Кожна лінія порту вводу-виводу може генерувати переривання (вектор переривання загальний для різних портів вводу-виводу). Відзначимо недолік організації переривань від зовнішніх пристроїв, що виявляється у відсутності регістра прапорців, який би дозволив визначити, який саме біт порту згенерував переривання. При виконанні обробника переривання автоматично забороняються, але програміст може дозволити переривання вищих пріоритетів у коді обробника переривання.
Таблиця 1. ілюструє основні характеристики архітектури PSoС:
Тип
ROM
RAM
Кількість портів вводу-виводу
Цифрові блоки (тип)
Аналогові блоки
Напруга живлення
CY8C21123
4KB Flash
256bytes
6-8
2-Basic 2-Comms
4, Type "E"
2.4V до 5.25V
CY8C21223
4KB Flash
256bytes
12-20
2-Basic 2-Comms
4, Type "E"
2.4V до 5.25V
CY8C21234
8KB Flash
512bytes
12-16
2-Basic 2-Comms
4, Type "E"
2.4V до 5.25V
CY8C21323
4KB Flash
256bytes
16-24
2-Basic 2-Comms
4, Type "E"
2.4V до 5.25V
CY8C21334
8KB Flash
512bytes
16-20
2-Basic 2-Comms
4, Type "E"
2.4V до 5.25V
CY8C21434
8KB Flash
512bytes
28-32
2-Basic 2-Comms
4, Type "E"
2.4V до 5.25V
CY8C22113
2KB Flash
256bytes
6-8
2-Basic 2-Comms
3:1-CT 2-SC
3.0V до 5.25V
CY8C22213
2KB Flash
256bytes
16-20
2-Basic 2-Comms
3:1-CT 2-SC
3.0V до 5.25V
CY8C24123
4KB Flash
256bytes
6-8
2-Basic 2-Comms
6:2-CT 4-SC
3.0V до 5.25V
CY8C24223
4KB Flash
256bytes
16-20
2-Basic 2-Comms
6:2-CT 4-SC
3.0V до 5.25V
CY8C24423
4KB Flash
256bytes
24-28
2-Basic 2-Comms
6:2-CT 4-SC
3.0V до 5.25V
CY8C25122
4KB Flash
256bytes
6-8
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C26233
8KB Flash
256bytes
16-20
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C26443
16KB Flash
256bytes
24-28
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C26643
16KB Flash
256bytes
40-44
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C26443
16KB Flash
256bytes
44-48
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C27143
16KB Flash
256bytes
6-8
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C27243
16KB Flash
256bytes
16-20
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
Y8C27243
16KB Flash
256bytes
16-20
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C27243
16KB Flash
256bytes
16-20
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C27443
16KB Flash
256bytes
24-28
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C27443
16KB Flash
256bytes
24-28
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C27443
16KB Flash
256bytes
24-28
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C27466
32KB Flash
2K
24-28
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C27543
16KB Flash
256bytes
40-44
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C27566
32KB Flash
2K
40-44
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C27643
16KB Flash
256bytes
44-48
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C27666
32KB Flash
2K
44-48
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C27866
32KB Flash
2K
64-100
4-Basic 4-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C29466
32KB Flash
2K
24-28
8-Basic 8-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C29566
32KB Flash
2K
40-44
8-Basic 8-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C29666
32KB Flash
2K
44-48
8-Basic 8-Comms
12:4-CT 8-SC
3.0V до 5.25V
CY8C29866
32KB Flash
2K
64-100
8-Basic 8-Comms
12:4-CT 8-SC
3.0V до 5.25V
Пояснення до таблиці: у мікроконтролерах PSoС є 2 типи цифрових модулів (basіc і communіcatіon) і 3 основних типи аналогових модулів - на основі операційних підсилювачів з резистивним зворотнім зв'язком і конденсаторами, що переключаються, 2 типи.
Відзначимо інші корисні особливості процесора архітектури PSoС:
можливість внутрішньосхемного і самопрограмування;
зручний механізм захисту обраних ділянок flash пам'яті від стирання, запису, зовнішнього читання;
невеликий розмір сегмента flash пам'яті - 64 байта зручна при імітації EEPROM з повним індивідуальним захистом кожного сегмента;
висока навантажувальна здатність цифрових і аналогових виходів - до 25 мА і 40 мА відповідно;
можливість вибіркового використання внутрішніх резисторів, що підтягують, до ліній живлення і землі і можливість гнучкого налаштування в процесі роботи;
3 внутрішніх тактових генератори та вбудована гнучка система фазового автопідлаштування частоти. Високостабільний (погрішність 2.5 % у всьому промисловому температурному діапазоні) 24 МГЦ генератор дозволяє в багатьох випадках використовувати процесор без зовнішнього кварцового резонатора; внутрішній економічний 32 кГц генератор зручний для використання як генератор для сторожового таймера; 32.768 кГц генератор із кварцовою стабілізацією частоти призначений для прикладних програм, що вимагають підвищеної стабільності тактової частоти;
Відзначимо, що генератор із кварцовою стабілізацією частоти дуже чуттливий до зовнішніх перешкод, що змушує застосовувати спеціальні міри для забезпечення усталеної роботи генератора (захисні кільця на друкованій платі, відмовлення від використання сусідніх висновків процесора).
Але найбільш корисні й унікальні особливості процесорів архітектури PSoС складаються в наявності реконфігурованих аналогових і цифрових модулів. Мікроконтролери PSoС мають у своєму складі аналогові і цифрові модулі. Існує три типи аналогових модулів: на основі операційних підсилювачів з резистивной зворотним зв'язком і два типи модулів на основі конденсаторів, що комутуються.
На основі аналогових модулів можуть бути реалізовані фільтри різних типів, змішувачі сигналів, підсилювачі з перемінним коефіцієнтом підсилення, аналого-цифрові і цифро-аналогові перетворювачі різних типів, компаратори. Відзначимо, що в аналогових модулях на основі операційних підсилювачів з резистивним зворотним зв'язком присутній низькоспоживаючий компаратор (15 u), спеціально призначений для „пробудження” мікроконтролера з режиму сну. Мікроконтролер PSoС має 4,8,16 (у залежності від моделі) цифрових модулів двох типів, на основі яких можуть бути реалізовані лічильники і таймери різної розрядності (8-32), генератори широтно-імпульсних сигналів, асинхронні і синхронні послідовні приймач/передавач, приймач/передавач даних по протоколі ІrDA, генератори псевдовипадкових послідовностей, апаратні схеми формування циклічних контрольних сум (CRC).
Функції кожного аналогового і цифрового модуля визначаються вмістом відповідних регістрів керування. Шляхом зміни вмісту цих регістрів під час виконання програми різні реконфігуровані модулі можуть виконувати різні функції в різні моменти часу. Зокрема, при розробці системи керування двигуном для виміру струму два аналогових модулі можуть бути відконфігуровані як інструментальний підсилювач. Для виміру напруги один з цих модулів може використовуватися як підсилювач з перемінним коефіцієнтом підсилення. Аналогічно, цифрові модулі можуть змінювати функції в процесі роботи. Зокрема, асинхронний передавач може використовуватися як 8-бітний лічильник, коли передача даних не здійснюється.
Досить гнучко реалізована система з'єднань входів і виходів модулів із зовнішніми контактами процесора і між собою. Аналогічно як і в попередньому випадку, усі з'єднання визначаються вмістом визначених регістрів і можуть бути змінені в процесі роботи. Зокрема, дуже легко реалізуються функції аналогових і цифрових мультиплексорів і демультиплексорів, комутаторів аналогових і цифрових сигналів.
2.2 Опис середовища розробки PSoC Designer
При створенні нового проекту обрала архітектуру CY8C25122-24PI, що надає можливість розмістити:
Аналогових блоків-12;
Цифрових блоків-8;
Flash-пам`ять розміром 4КБ;
Виводів-6;
ОЗП-128Б;
Споживана потужність-3.0 до 5.25;
Температуру – від -40 до 85С;
Мова програмування, якою буду користуватися при створенні проекту - С.
Прикладна програма має 3 режими, у яких може працювати користувач:
Device Editor (Редактор пристрою)
Цей режим призначений для того, щоб користувач міг детальніше ознайомитися з обраною архітектурою, пристроями, які він може розташувати в архітектурі. Цей режим поділяється на два підрежими: User Module Selection View та Interconnector View.
а) User Module Selection View(огляд модуля для підбору компонентів);
В цьому підрежимі PSoC Designer надає можливість підбирати користувачу необхідні компоненти, довідатися про внутрішню будову та відслідковувати, щоб їх кількість не перевищила дозволений рівень.
Компоненти поділені на 14 основних групи пристроїв:
АЦП;
підсилювачі;
послідовні аналогові пристрої;
лічильники;
ЦАП;
послідовні цифрові пристрої;
фільтри;
generic (аналоговий блок з конденсаторами, що перемикаються);
misc digital (цифровий інвертор, EEPROM, LCD інструменти);
мультиплексори;
модулятори ширини імпульсу;
генератори псевдовипадкових послідовностей;
температурний давач;
таймери.
б)Interconnector View(огляд з`єднань);
Цей підрежим дозволяє детальніше налаштувати параметри архітектури, такі як частота роботи процесора, напругу споживання, напругу відключення і т.п. Можливе налаштування кожного параметра індивідуально. Нижче подано перелік параметрів і стани портів:
Вікно посередині дозволяє спростити проектування, оскільки наглядно показує розробнику структуру архітектури та розташування компонентів на чипі, а також можливі з`єднання і користувач вже планує, які зв`язки та яку трасу задіяти, показані порти і його можливі з`єднання. Це набагато спрощує процес проектування для людини розробника.
Вікно зліва дозволяє налаштувати параметри виводів(контактів) мікросхеми, встановити характер сигналу, який на нього подається.
2. Application Editor
Цей режим призначений для формування розробником файлів опису роботи, сформованої архітектури. Оскільки при створенні проекту провідною була обрана мова програмування С, то програму можна описати нею у головному файлі main.c.
Нижче розташоване вікно компілятора, де можна спостерігати поетапно весь цей процес.
Debugger
Режим відлагодження додає вікно з вмістимим комірок пам`яті ОЗП, двох банків пам`яті, конфігурації, а також Flash-пам`яті. Для більшої наглядності, додано вікно, де можна відстежувати зміну зазначених глобальних значень.
Основне меню прикладної програми містить стандартний набір функцій роботи з файлами, проектами, вікнами, з довідковою інформацією і т.п.
3.Висновок: на лабораторній роботі ознайомився з середовищем розробки реконфігурованих процесорів PSoC Designer.