У статті наведена коротка інформація про пристрої формування сигналів у безкоштовній програмі моделювання аналогових та цифрових пристроїв QSPICE від компанії Qorvo. Показані особливості налаштування та роботи з пристроями.
В. Макаренко
У третій частині статті розглянемо приклади використання розглянутих пристроїв та інші пристрої програми QSPICE.
На рис. 1 наведена модель амплітудного модулятора та детектора АМ-сигналів на основі довільного джерела напруги. З сигналів генераторів напруги V1 (джерела модулюючого коливання) та V2 (джерела носійного коливання) за допомогою довільного джерела напруги В1 формується АМ-сиг- нал, а за допомогою В2, яке виконує функцію вилучення квадратного кореня, формується однополяр- ний сигнал (рис. 2). Нагадаємо параметри генератора напруги: sine 1.2 1 2K – синусоїдальний сигнал з постійним зміщенням 1.2 В, амплітудою 1 В та частотою 2 кГц.

Рис. 1. Амплітудний модулятор та детектор АМ-сигналів на основі довільного джерела напруги

Рис. 2. Сигнали на виходах АМ-модулятора та детектора АМ-сигналів (червоний)
На основі генератора довільної форми можна побудувати синхронний детектор шляхом множення АМ-сигналу на сигнал носійної частоти. На рис. 3 генератор В2 виконує функцію аналогового перемножувача напруги. Результат детектування наведений на рис. 4.

Рис. 3. Синхронний детектор на основі генератора В2

Рис. 4. Сигнали на виходах АМ-модулятора та синхронного детектора АМ-сигналів (червоний)
На основі генератора довільної форми можна побудувати детектор іншим способом. На рис. 5 генератор В2 виконує функцію знаходження абсолютної величини. Результат детектування наведений на рис. 6.

Рис. 5. Детектор на основі генератора В2 з використанням функції abs(x)

Рис. 6. Сигнали на виходах АМ-модулятора та детектора АМ-сигналів (червоний), побудованого з використанням функції abs(x)
Ще одна функція довільного джерела напруги – buf. Ця функція формує на виході генератора напругу з рівнем 1 В при умові, що х більше 0.5, а в усіх інших випадках формує 0. Модель з використанням функції buf наведена на рис. 7, а результат виконання моделювання – на рис. 8. Коли амплітуда АМ-сиг- налу перевищує 0.5 В, на виході В2 формується пакет імпульсів з частотою носійного коливання амплітудою 1 В.

Рис. 7. Використання генератора довільної форми з функцією buf

Рис. 8. Результат формування сигналу на виході генератора довільної форми при використанні функції buf
Перелік функцій, що реалізуються генераторами довільної форми:
- abortsim(x) – симуляція зупиняється коли x > 5, в іншому випадку повертає значення x
- abs(x) – абсолютне значення x
- acos(x), arccos(x) – arccos(x)
- acosh(x) – повертає гіперболічний косинус числа x
- asin(x) – arcsin(x)
- arcsin(x) – синоним asin()
- asinh(x) – гіперболічний арксинус числа х
- atan(x) – arctn(x)
- arctan(x) – синоним atan()
- atan2(y,x) – чотирьохквадрантний arctn y/x
- atanh(x) – гіперболічний arctn
- buf(x) – 1 при x > 0.5, в інших випадках 0
- ceil(x) – ціле число, рівне або більше x
- cos(x) – косинус x
- cosh(x) – – гіперболічний косинус x
- ddt(x) – похідна за часом від x
- delay(x,y) – x затримується на y
- delay(x,y,z)2 – x затримується на y, але зберігає історію не більше ніж на z
- dlim(x,y,z) – x, обмежений y, до якого він асимптотично починає наближатися при y + z як до першого ряду Лорана зворотного порядку
- exp(x) – ex
- floor(x) – ціле число, рівне або менше x
- hypot(x,y) – sqrt(x2 + y2)
- idt(x,y,z) – інтеграл часу від x з початковою умовою, скидається у 0 коли z>0.5
- if(x,y,z) – якщо x > 0.5, то y, інакше z
- int(x) – перетворює x у ціле число
- inv(x) – 0 якщо x > 0.5, в іншому випадку 1
- limit(x,y,z) – проміжне значення x, y і z
- ln(x) – натуральний логарифм від x
- log(x) – альтернативний синтакс для ln()
- log10(x) – логарифм за основою 10
- max(x,y) – найбільше зі значень x або y
- min(x,y) – найменше зі значень x або y
- pow(x,y) – xy
- pwr(x,y) – abs(x)y
- pwrs(x,y) – sgn(x)-abs(x)y – повертає представлення числа у вигляді значення типу Integer (String), яке позначає знак числа abs(x)y
- random(x) – випадкове число від 0 до 1 в залежності від цілого значення x, інтерполяція між випадковими числами лінійна для нецілих значень x
- resetwave(x) – очищає дані форми сигналу, якщо x>0.5
- sin(x) – синус x
- sinh(x) – гіперболічний синус x
- sqrt(x) – квадратний корінь з x
- state(n,x) – значення часу, що пройшов x n кроків назад, n округлюється до найближчого цілого числа і обмежується діапазоном від 0 до 3
- table(x,a,b,c,d,…) – інтерполяція x з довідкової таблиці, представленої у вигляді набору пар постійних значень
- tan(x) – тангенс x
- tanh(x) – гіперболічний тангенс x
- ulim(x,y,z) – x, обмежений y, до якого він асимптотично починає наближатися в точці y-z як до першого ряду Лорана зворотного порядку.
Наведемо ще одну модель в якій використано функцію delay (рис. 9). На рис. 10 наведено результат затримки АМ-сигналу (червона крива) на 10 мкс.

Рис. 9. Використання функції delay для затримки сигналу

Рис. 10. Результат затримки АМ-сигналу (синій) на 10 мкс
Всі функції перелічені вище використовуються також у генераторах струму.
Пристрій F – джерело струму що управляється струмом
F-пристрій визначає струм в пристрої <назва> і передає струм між вузлами N+ і N-.
Синтакс Fnnn N+ N- <назва> <підсилення>.
Відношення вихідного струму до вимірюваного струму задається за допомогою коефіцієнта підсилення <gain>. Чутливим елементом може бути будь- який елемент, внутрішньо представлений у вигляді еквівалентної схеми, тобто E, H, L або V-пристрої. В- пристрій також може використовуватися в якості чутливого елемента, якщо В пристрій формує напругу.
F-пристрій було реалізовано в SPICE для того, щоб застосувати теорію модифікованого вузлового аналізу до всіх можливостей лінійно залежних джерел. Однак немає фізичних електронних компонентів, які поводяться як F-пристрій. Зазвичай найкращим підходом є використання B, G, Ґ, Б та J пристроїв, або навіть транзисторів, оскільки вони можуть бути сконфігуровані так, щоб вести себе як реальні пристрої.
На рис. 11 наведено приклад моделі з використанням F пристрою, а на рис. 12 – результат моделювання.

Рис. 11. Приклад використання джерела струму, що управляється струмом

Рис. 12. Результат формування струму джерелом струму F1
Пристрій G – джерело струму, що управляється напругою
G-пристрій (рис. 13) визначає вхідну напругу між вузлами NC+ і NC – і визначає струм між вузлами N+ і N-.
Синтаксис: Gnnn N+ N- NC+ NC- <провідність>
Відношення вихідного струму до вимірюваної напруги визначається параметром <провідність>. Результат формування струму джерелом струму, що управляється напругою наведено на рис. 14.

Рис. 13. Приклад використання джерела струму, що управляється напругою

Рис. 14. Результат формування струму джерелом струму, що управляється напругою
G-пристрої є найбільш корисними з лінійно залежних джерел у SPICE, оскільки вони представлені найбільш аналогічно транзисторам у модифікованому вузловому аналізі SPICE. Краще використовувати G-джерела замість E, F або H пристроїв.
Можна додати частотну залежність до G-джере- ла, вказавши передавальну функцію Лапласа:
Синтаксис: Nnn N + N-NC + NC – <провідність> LAPLACE=<вираз у S-області>.
Пристрій E – джерело напруги, що управляється напругою
Синтаксис: Ennn N + N-NC + NC – <коефіцієнт підсилення>
Електронний пристрій (рис. 15) визначає вхідну напругу між вузлами NC+ і NC – і формує напругу між вузлами N+ і N-. Відношення вихідної напруги до вимірюваного визначається параметром <коефіцієнт підсилення>. Вказівка внутрішнього послідовного опору є необов’язковою.
Можна додати до джерела електронного зв’язку залежність від частоти, вказавши передавальну функцію Лапласа:

Рис. 15. Джерело напруги Е1, що управляється напругою
Синтаксис: Ennn N + N-NC + NC – <коефіцієнт підсилення> LAPLACE=<eupa3 у S-області>
Пристрій H – джерело напруги, що управляється струмом
Синтаксис: Hnnn N + N – <назва> <перехідний опір>
H пристрій (рис. 17) визначає струм в пристрої <назва> і встановлює напругу між вузлами N+ і N-. Відношення вихідної напруги до вимірюваного струму визначається параметром <перехідний опір>. Вимірювальним пристроєм може бути будь-який елемент, внутрішньо представлений у вигляді еквівалентної схеми Тевеніна, тобто E, H, L або V пристрої. Пристрій B також може бути використаний як чутливий елемент, якщо цей B пристрій формує напругу. Вихідна напруга джерела напруги Н, що управляється струмом, та струм управління наведені на рис. 18.

Рис. 17. Джерело напруги Н, що управляється струмом джерела Vsense

Рис. 18. Вихідна напруга джерела напруги Н, що управляється струмом, та струм управління (синя крива)
H-пристрій було реалізовано в SPICE для того, щоб застосувати теорію модифікованого вузлового аналізу до всіх можливостей лінійно залежних джерел. Оскільки не існує фізичних електронних компонентів, які насправді поводяться як H-пристрій, він знаходить обмежене застосування на практиці.
Пристрій S – аналоговий ключ що управляється напругою
Синтаксис: Nnn N1 N2 NC+ NC- < модель>
Напруга між вузлами NC+ і NC- управляє опором ключа між вузлами N1 і N2. На рис. 19 наведена модель ключа, що управляється генератором трикутної напруги V1 (рис. 20). Параметри моделі:
- OFF – ключ закритий за замовчуванням
- ON – ключ відкритий за замовчуванням
- Ron – опір ключа у відкритому стані
- Roff – опір ключа у закритому стані
- Vh – ширина петлі гістерезиса
- Vt – порогова напруга.

Рис. 19. Модель для ілюстрація роботи ключа з гістерезисом
Ключ відкривається, коли керуюча напруга становить Vt+Vh, і закривається при Vt-Vh. Пристрій дозволяє визначити, наскільки точно слід визначити час перемикання. Якщо напруга гістерезису Vh негативна, ключ плавно переходить від Ron до Roff, щоілюструє рис. 20. Це є стандартною поведінкою при моделюванні схем, оскільки більшість аналогових симуляторів не можуть обчислювати схеми з розривами.

Рис. 20. Результат моделювання роботи ключа з гістерезисом
Більш наочно ілюструє роботу ключа модель на рис. 21, результати роботи якої наведено на рис. 22. Напруга керування задана в діапазоні 0…2 В, поро- говий рівень спрацьовування ключа – 1 В, гістерезис відсутній.

Рис. 21. Модель з використанням ключа без гістерезиса

Рис. 22. Результат моделювання роботи ключа без гістерезиса
Як випливає з рис. 22, пороговий рівень спрацьовування ключа дорівнює 1 В. На рис. 23 наведено результат моделювання при заданому значенні гі- стерезиса Vh=0.5 В.

Рис. 23. Результат моделювання роботи ключа з гістерезисом 0.5 В
Використання гістерезиса дає змогу імітувати роботу тригера Шмітта.
Ще один приклад використання ключа наведений на рис. 24. Це генератор пилкоподібної наруги. Результат моделювання роботи генератора наведено на рис. 25.

Рис. 24. Модель генератора пилкоподібної напруги з використанням аналогового ключа

Рис. 25. Сигнал на виході генератора пилкоподібної напруги з атрибутом SWMOD on
Конденсатор С1 заряджається струмом 0.1 мА від джерела струму І1. Вхід управління ключа підключений до виходу джерела струсу. Коли ключ закритий конденсатор С1 заряджається. При досягненні порогу спрацьовування ключа Vt+Vh = 0.5+0.4 = 0.9 В він відкривається і конденсатор швидко розряджається через відкритий ключ до величини Vt-Vh = 0.5-0.4 = 0.1 В (рис. 25), при якій ключ закривається. Цикл заряду/розряду повторюється.
Змінюючи співвідношення між Vt і Vh, можна регулювати амплітуду і початковий рівень вихідногосигналу такого генератора.
Для ілюстрації впливу параметра ключа ON/OFF на його поведінку скористаємось моделлю наведеною на рис. 24, замінивши атрибут SWMOD on на SWMOD off.

Рис. 26. Сигнал на виході генератора пилкоподібної напруги з атрибутом SWMOD off
Як випливає з рис. 26, зміна атрибута ключа при- звеле тільки до зміни масштабу відображеня сигналу на виході генератора.
ЛІТЕРАТУРА