Стуктура і характеристика однокристальних мікроЕОМ серії К1816 - Однокристальні мікроЕОМ для побутового застосування

Мікросхема К1816ВЕ48 являє собою НВІС однокристальної восьмирозрядної мікро-еом з вбудованою перепрограмованою пам'яттю (ППЗП), зі стиранням інформації ультрафіолетовим випромінюванням. Вона має аналог Intel 8748. Дана ОМЕОМ може бути використана в контрольно-вимірювальній апаратурі, промислових роботах, побутовій техніці. Наявність перопрограмованої пам'яті з ультрафіолетовим стиранням дозволяє користувачу самостійно задавати функції ОМЕОМ шляхом запису своєї програми в ППЗП. Це особливо зручно для систем, що вимагають періодичної модернізації, і в дрібносерійному виробництві.

Мікроеом містить усі функціональні вузли, необхідні для самостійної роботи: центральний процесор, пам'ять команд, пам'ять даних, інтерфейс вводу-виводу, таймер, схему переривань, тактовий гениратор. Мікросхема КМ1816ВЕ48 має восьмирзрядний канал даних, дванадцятирозрядний канал адреси. Обсяг внутрішньої пам'яті команд (ППЗП) 1024Х8 з можливістю підключення зовнішньої пам'яті загальною ємністю 4096Х8 біт. Обсяг внутрішньої пам'яті даних (ОЗП) 64Х8 з можливістю підключення зовнішньої пам'яті даних ємністю до 320Х8. Однокристальна мікроеом має 16 восьмирозрядних регістрів загального призначення і восьмирівневій стік. Число ліній вводу-виводу-27 і має два рівні переривань із пріоритетом. У системі команд міститься 96 базових команд. Однокристальна мікроеом має швидкість операцій типу регістр-регістр 4Х10 операцій /с, а частота вбудованого генератора 6Мгц.

Структурна схема мікроЕОМ МК1816ВЕ48 представлена на додатку Б. Розглянемо по ній взаємодію основних функціональних блоків.

Синхронізація всієї роботи ОМЕОМ здійснюється за рахунок вбудованого генератора, що являє собою схему з послідовним резонансом, що працює в діапазоні частот І...6 Мгц. Для порушення генерації необхідно до висновків СR1, СR2 приєднати кварцовий резонатор RС, чи ланцюг. Для одержання тактової частоти (СLK) у лічильнику станів частота генетора поділяється на три. Сигнали тактової частоти можуть виводитися на зовнішній висновок ТО по команді ЕNТО СLК. При подачі команди. "Скидання" (СLR) висновок тактових сигналів блокується.

Машинний цикл, що складається з п'яти тактів виходить за допомогою лічильника циклів, що поділяє тактову частоту на п'ять. Цей сигнал (АLЕ) частотою близько 400 кгц необхідний для роботи з зовнішньою пам'яттю і виводиться на висновок АLЕ. Для забезпечення точних тимчасових інтервалів і підрахунку зовнішніх подій реалізований таймер/лічильник подій.

Режим таймера. По команді SТАRТ на вхід лічильника подаються синхроім-пульси, що виходять розподілом сигналу АLЕ на 32. Сигнали, що виходять, частотою 12,5 кгц (при частоті генератора 6 Мгц) дають збільшення лічильнику кожні 80 мкс, що дозволяє одержати затримки від 80 мкс до 20 мс. Затримки більшої тривалості одержують програмним шляхом. Затримку менш 80 мкс можна одержати, подаючи на вхід Т1 зовнішні синхроімпульси необхідної частоти (використовуючи, наприклад, сигнал на виході АLЕ).

Режим лічильника подій. По команді SТАRТ СNТ на вхід лічильника подаються сигнали з висновку Т1. Перекидання лічильника відбувається по задньому фронті імпульсів. Тривалість імпульсів повинна бути не менш 100 не, гранична частота переключень складає одну третину від частоти машинного циклу.

Команди роботи з таймером/лічильником. По команді МОVТА відбувається завантаження восьмирозрядного лічильника з акумулятора і їй дозволяється рахунок по командах SТАRТ СNТ чи SТАRТ Т. Зупиняється лічильник по команді SТОР ТСNT чи СLR і чекає надходження команд SТАRТ СNТ (Пуск лічильника) чи SТАRТ Т (Пуск таймера), У процес роботи восьмирозрядний лічильник може дійти до3 максимального значення (FF16), а потім перейти в нульове значення (0016) і продовжувати відлік, при цьому в момент переходу від стану FF16 у стан 0016 генерується запит на переривання і перекидається тригер індикатора переповнення. По команді переходу по прапорці таймера (JTF) можна визначити стан тригера індикатора переповнення, що скидається після виконання команди СLR. Запит на переривання по переповненню зєднується по АБО з входом INТ зовнішнього запиту на переривання. Незалежно від зовнішніх переривань, переривання по переповненню дозволяються чи забороняються відповідно командами ВN ТСNTIчи DIS ТСNTI. Якщо внутрішні переривання дозволені (ЕNТСNТI), то при переході лічильника з FF16 у 0016 відбудеться перехід до підпрограми обслуговування переривань, адреса якої знаходиться в осередку 7 пам'яті програм. У випадку одночасного приходу зовнішнього запиту на переривання спочатку виконується перехід до підпрограми обслуговування зовнішніх переривань, адреса якої розташована в комірці 3 пам'яті програми, а запит на переривання від лічильника/таймера буде відпрацьовуватися після обслуговування зовнішніх переривань.

При переході на підпрограму обслуговування переривань (адреса в осередку 7) чи по команді заборони переривання DIS ТСNТІ запит на переривання скидається.

Вбудоване ЗП даних складається з 64 восьмирозрядних слів. Перші вісім регістрів (RО--R7) є робітниками, використовуються для збереження проміжних результатів і безпосередньо адресуються декількома командами. Усі 64 осередки побічно адресуються через кожної з двох регістрів-показників ЗППВ, розташованих у РО і Р1. Осередки 0--7 є нульовим банком робочих регістрів. При виконанні команди 8ЕЬ КВІ (вибір блоку регістр 1) як робочі регістри замість осередків 0--7 призначаються осередки 24--31 які стають при цьому безпосередньо адресуючими (перший банк робочих регістрів). Це розширює нульовий банк регістрів, чи банк можна використовувати при відпрацьовуванні переривань. При переключенні на банк 1 створюються додатково два регістри-покажчики ROR1*. В осередках 8--23 може також міститися стек. Ці осередки адресуються покажчиком стека при виклику підпрограм і можуть адресуватися регістрами-покажчиками ЕППВ RО і R1, і якщо стек займає не всі осередки, інші можуть використовуватися в ЕППВ.

Вбудована пам'ять програм у КМ1816ВЕ48 являє собою програмоване користувачем і яке витирається ультрафіолетовим випромінюванням ППЗУ ємністю 1024 байт. Крім збереження команд, пам'ять програм використовується для збереження констант. Зовнішній сигнал СLR (Установка у вихідний стан) забезпечує вибір команд за адресою 0. Вхідний сигнал INT (Запит переривання) при наявності дозволу переривання викликає перехід до підпрограми обробки зовнішніх переривань, перше слово якої зберігається в осередку 3. Адреси-підпрограми обробки переривань по переповненню таймера/лічильника зберігається в осередку 7.

У лічильнику команд (ЛК) міститься адреса наступної (за виконуваною) команди. Тому що програми в ЗП програм записуються в порядку збільшення адрес, то при вибірці чергової команди вміст лічильника команд збільшується на одиницю. Десять молодших розрядів ЛК адресують вбудоване ЗП програм, старші розряди використовуються для вибірки з зовнішньої пам'яті програм. По вхідному сигналі СLR ЛК встановлюється в 0. Для реалізації переривань уміст ЛК запам'ятовується в парі восьмирозрядних регістрів стека (осередку 8--23 ЗП даних).

Трирозрядний покажчик стека (частина слова стану програми ССП) вказує номер пари використовуваних регістрів ЗППВ. Нульовий покажчик стека вказує на осередки 8 і 9 ЗППВ, тобто перший же перехід до підпрограми чи переривання передає вміст лічильника команд в осередки 8 і 9 ЗППВ, а покажчик стека збільшиться на одиницю, вказуючи вже на 10 і осередку ЗППВ. Стек використовується для збереження вмісту лічильника команд і чотирьох бітів ССП. До стеку можна звертатися вісім разів, при дев'ятому звертанні найперший із процесів, що запам'ятовуються, буде загублений (осередки 8 і 9), тому що покажчик стека при перериванні перейде зі стану 111 у 000. Для повернення до перерваної програми наприкінці підпрограми використовуються команди RЕТ (Повернення) чи RЕТR (Повернення з відновленням стану), що зменшують уміст покажчика стека, і вміст пари регістрів по зменшеній адресі стека передається в лічильник команд.

Слово стану програм (ССП) -- восьмирозрядне. Старші чотири розряди ССП запам'ятовуються в стеці і відновлюються по команді RЕТR. Команда RЕТ не впливає на ССП. Розряди 0+2 ССП займає покажчик стека, у розряді 3 при зчитуванні ССП завжди "1" (він не використовується), розряд 4 показує номер банку ("ОБ"--нульовий банк; "І"--перший). У п'ятому розряді фіксується прапор індикатора FО, по вмісту якого відбувається пе-рехід по командах JFО чи JВ1. У шостому розряді міститься біт проміжного переносу, вироблюваний командою АDD, що використовується командою десяткової корекції DАА. Сьомий розряд містить індикатор переносу (3), що показує, що попередня операція привела до переповнення акумулятора.

Переривання. При виявленні по виходу ІNТ сигналу переривання, а лінія переривань контролюється в кожному машинному циклі під час сигналу АLЕ, відбувається перехід до підпрограми обробки переривань за адресою осередку з ЗП програм) по завершенню всіх циклів поточної команди. Уміст лічильника команд і ССП запам'ятовується в стеці, як і при переході до підпрограми (САLL). Звичайно осередок 3 містить безумовний перехід до підпрограми обробки переривань у пам'яті програм, що повинний закінчуватися командою RЕТR повернення з підпрограми з встановленням ССП. Слід зазначити, що система не реагує на всі наступні запити на переривання (як зовнішні, так і внутрішні) до виконання команди RЕТR. Виконуваний запит на переривання повинний бути знятий перед виконанням команди RЕТR, інакше процесор знову почне підпрограму обробки переривань. Переривання дозволяються чи забороняються командами ЕNІ і DІSІ відповідно. Сигнал установки СLR забороняє переривання, поки вони не будуть дозволені програмно.

Арифметико-логічний пристрій (АЛП) може виконувати наступні функції: додавання з переносом чи без нього; операція И (АNL), ЧИ (ОRL), що виключають ЧИ (ХRL). Збільшення/зменшення вмісту акумулятора на одиницю (ІNСА/DЕСА); циклічне зрушення вліво/вправо (RLА/RRА), обмін місцями чотирьох молодших і старших розрядів акумулятора (SWАРА), очищення акумулятора (СLRА) і десяткову корекцію. При переповненні старшого розряду в результаті проведення операцій в АЛП в ССП біт переносу встановлюється в 1, а при виконанні операції двоїчно-десяткового додавання у відповідне стан (0 чи 1) встановлюється прапор проміжного переносу.

Акумулятор звичайно містить один з операндів і там міститься результат. Дані каналів вводу-виводу також проходять через акумулятор.

Дешифратор команд. Кожна операція процесора задається за допомогою ко-да команд, що записується в регістр команд і перетвориться в сигнали, що керують АЛП (дешифрується). Якщо команда двобайтова, то перший байт міститься в регістрі команд, другий-- у проміжному ЗП, а потім після дешифрації процесор переходить до виконання команд. При вибірці команд спочатку процесор передає адреса з лічильника команд у пам'ять програм, потім з пам'яті програм повертається обраний байт, який процесор запам'ятовує в регістрі команд.

Пристрою вводу-виводу. Для вводу-виводу в КМ1816ВЕ48 використовується 27 виводів, що згруповані в три порти (ПРО, 1, 2) по 8 виходів, і мається 3 виводи тестування і переривання (ТЕ, Т1, ІNТ) для змінення ходу програми по командах умовного переходу(JТО, JT1). По входу всі сигнали сумісні з ТТЛ-логікою, по виходу кожна лінія може бути навантажена одним стандартним елементом ТТЛ. Восьмирозрядні порти 1 і навантажена одним стандартним елементом ТТЛ. Восьми розрядні порти 1 і 2 мають однакові характеристики і структуру ланцюгів вводу-виводу яка дозволяє, незважаючи на те, що виходи мають статично фіксований потенціал, служити кожному висновку порту 1 і 2 як входу, чи виходу того й іншого. При виконанні висновку дані на висновках портів 1 і 2 утримуються до появи наступної серії даних, а при введенні дані не фіксуються, тобто дані, що вводяться, повинні зберігатися на входах, поки не будуть лічені.

Усе це дозволяє ефективно використовувати ВІС серії К1816 при побудові схем керування побутової техніки.

Мікропроцесор однокристальний побутовий

Похожие статьи




Стуктура і характеристика однокристальних мікроЕОМ серії К1816 - Однокристальні мікроЕОМ для побутового застосування

Предыдущая | Следующая