Проектування комбінаційних логічних схем в базисі ПЛІС

Автор работы: Пользователь скрыл имя, 24 Ноября 2013 в 14:05, курсовая работа

Краткое описание

Програмовані логічні інтегральні схеми є одним із найцікавіших і швидко розвиваючих напрямків сучасної цифрової мікроелектроніки. За останнє десятиліття спостерігалося бурхливе зростання ринку цих пристроїв та суттєве поліпшення їх характеристик. Прогнози в цій галузі на найближчий час видаються найбільш оптимістичними.

Содержание

ВСТУП 6
РОЗДІЛ 1 АНАЛІТИЧНИЙ РОЗДІЛ 8
1.1 Застосування програмованих логічних схем 8
1.2 Порівняльна характеристика CPLD фірм Xilinx та Altera 10
1.3 Мікросхеми стандартної дискретної логіки та їх застосування 10
РОЗДІЛ 2 РОЗРОБКА АПАРАТНИХ ПІДСИСТЕМ 11
2.1 Особливості побудови CPLD 11
2.2 Формування вимог до системи дешифратора 12
2.3 Розробка структурної схеми системи дешифратора 23
РОЗДІЛ 3 ПРОЕКТНО-РОЗРАХУНКОВИЙ РОЗДІЛ 28
3.1. Способи подання даних в системах кодування 28
3.2 Порівняння швидкодії систем на базі сімейств CPLD фірми Xilinx 28
3.3 Розробка VHDL моделі дешифратора 28
ПЕРЕЛІК СКОРОЧЕНЬ, СИМВОЛІВ ТА СПЕЦІАЛЬНИХ ТЕРМІНІВ 30
ВИСНОВКИ 31
СПИСОК КОРИСТАНИХ ДЖЕРЕЛ 32
ДОДАТКИ 34

Прикрепленные файлы: 1 файл

Проектування комбінаційних логічних схем в базисі ПЛІС.docx

— 1.65 Мб (Скачать документ)



 

ЗМІСТ

 

 

ВСТУП 6

РОЗДІЛ 1 АНАЛІТИЧНИЙ РОЗДІЛ 8

1.1 Застосування програмованих логічних схем 8

1.2 Порівняльна характеристика CPLD фірм Xilinx та Altera 10

1.3 Мікросхеми стандартної дискретної логіки та їх застосування 10

РОЗДІЛ 2 РОЗРОБКА АПАРАТНИХ ПІДСИСТЕМ 11

2.1 Особливості побудови CPLD 11

2.2 Формування вимог до системи дешифратора 12

2.3 Розробка структурної схеми системи дешифратора 23

РОЗДІЛ 3 ПРОЕКТНО-РОЗРАХУНКОВИЙ РОЗДІЛ 28

3.1. Способи подання даних в системах кодування 28

3.2 Порівняння швидкодії систем на базі сімейств CPLD фірми Xilinx 28

3.3 Розробка VHDL моделі дешифратора 28

ПЕРЕЛІК СКОРОЧЕНЬ, СИМВОЛІВ ТА СПЕЦІАЛЬНИХ ТЕРМІНІВ 30

ВИСНОВКИ 31

СПИСОК КОРИСТАНИХ ДЖЕРЕЛ 32

ДОДАТКИ 34

 

 

ВСТУП

 

Програмовані  логічні інтегральні схеми є  одним із найцікавіших і швидко розвиваючих  напрямків сучасної цифрової мікроелектроніки. За останнє десятиліття спостерігалося бурхливе зростання ринку цих  пристроїв та суттєве поліпшення їх характеристик. Прогнози в цій  галузі на найближчий час видаються  найбільш оптимістичними.

З появою ПЛІС проектування цифрових мікросхем  перестало бути долею виключно великих  підприємств з обсягами випуску  в десятки і сотні тисяч  кристалів. Проектування і випуск невеликої  партії унікальних цифрових пристроїв  став можливий в умовах проектно-конструкторських підрозділів промислових підприємств, в дослідницьких і навчальних лабораторіях і навіть в умовах домашніх радіоаматорських робочих місць. Промислово випускаються “заготовки” програмованих  мікросхем з електричним програмуванням і автоматизованим процесом перекладу  схеми користувача в послідовність  імпульсів програмування роблять  проектування нових цифрових пристроїв  порівнянним з розробкою програмного  забезпечення.

На сьогодні провідними світовими виробниками  ПЛІС є фірми Xilinx і Altera. Кожна з  них випускає цілий спектр продукції, включаючи ПЛІС з різною архітектурою, флеш-ПЗУ для зберігання конфігурації, САПР, засоби програмування і налагодження. Важливим є той факт, що САПР мінімальної  конфігурації цих фірм розповсюджується безкоштовно, а його можливості цілком достатні для освоєння даної технології та розробки цифрових пристроїв початкового  і середнього рівня.

На даний  час найбільш поширені серії ПЛІС мають архітектуру:

- CPLD (Complex Programmable Logic Device), пристроїв, які використовують для зберігання конфігурації енергозалежну пам’ять;

- FPGA (Field Programmable Gate Array), пристрої, які використовують для зберігання конфігурації енергозалежну пам’ять.

У даному дипломному проекті на базі учбово-лабораторного  стенду розглянуто структуру ПЛІС фірми Xilinx XC95144 з архітектурою CPLD, її будову і можливості. Проектування проводилося  на VHDL/Verilog.

 

РОЗДІЛ 1 
АНАЛІТИЧНИЙ РОЗДІЛ

1.1 Застосування програмованих логічних схем

Програмована логічна інтегральна  схема, ПЛІС (англ. programmable logic device, PLD) — електронний компонент, що використовується для створення цифрових інтегральних схем. На відміну від звичайних цифрових мікросхем, логіка роботи ПЛІС не визначається при виготовленні, а задається за допомогою програмування. Для програмування використовуються програматори і налагоджувальні середовища, що дозволяють задати бажану структуру цифрового пристрою у вигляді принципової електричної схеми або програми на спеціальних мовах опису апаратури Verilog, VHDL, AHDL та ін. Альтернативою ПЛІС є: Програмований логічний контролер, базові матричні кристали, що вимагають заводського виробничого процесу для програмування; ASIC — спеціалізовані замовні ВІС (великі інтегральні схеми), які при багатосерійному та одиничному виробництві істотно дорожчі; спеціалізовані комп'ютери, процесори (наприклад, цифровий сигнальний процесор) або мікроконтролери, які через програмний спосіб реалізації алгоритмів повільніше ПЛІС.

Деякі виробники ПЛІС пропонують програмні  процесори для своїх ПЛІС, які  можуть бути модифіковані під конкретне  завдання, а потім вбудовані в  ПЛІС. Тим самим забезпечується зменшення  місця на друкованій платі і спрощення  проектування самої ПЛІС.

Ще на початку 90-х років ПЛІС мали дуже вузьке коло користувачів, до якого  в основному входили підприємства, що займаються розробкою та випуском замовних мікросхем  (звичайних ІМС  з постійною логічною структурою). За останнє десятиліття область  застосування програмованих логічних ІМС значно розширилась. Діаграма розподілу  обсягів споживання ПЛІС в окремих  галузях народного господарства наведена на рис. 1.1.

Найбільшим  споживачем ПЛІС є галузь телекомунікацій  і зв’язку (39% від всього обсягу виробництва). На другому місці йде галузь комп’ютерних мереж, що використовує 26% обсягу виробництва ПЛІС. Крім того, програмовані логічні ІМС застосовуються в області цифрової обробки даних (19%) та в промисловому виробництві (16%). Серед споживачів цих мікросхем можна назвати такі відомі фірми і концерни, як Alcatel, IBM, Booing, Lockheed, Hewlett Packard, Fujitsu, Hitachi, Silicon Graphics, Texas Instruments, Motorola, Rockwell, Kodak та багато інших.

 

Рис. 1.1 – Обсяги застосування ПЛІС в окремих галузях  народного господарства

 

ПЛІС широко використовується для  побудови різних за складністю і можливостям  цифрових пристроїв. Розширення сфери  застосування ПЛІС визначається зростаючим попитом на пристрої з швидкою  перебудовою виконуваних функцій, скороченням проектно-технологічного цикла нових або модифікованих  виробів, наявністю режимів зміни  внутрішньої структури в реальному  часі, підвищенням швидкодії, зниженням  споживаної потужності, розробкою оптимізованих  поєднань з мікропроцесорами і сигнальними  процесорами (DSP), а також зниженням  цін на ці пристрої. За принципом  формування необхідної структури цільового  цифрового пристрою ПЛІС відносять  до двох груп. CPLD (Complex Programmable Logic Device) — комплексні програмовані логічні пристрої, енергонезалежні і з деяким обмеженням допустимого числа перезапису вмісту. FPGA (Field Programmable Gate Array) — програмовані користувачем вентильні матриці, що не мають обмежень по числу перезаписів. У цифровій обробці сигналів (ЦОС) ПЛІС в порівнянні з DSP мають такі переваги, як можливість організації паралельної обробки даних, масштабування смуги пропускання, розширюваність пристрою. Xilinx, Altera, Actel, Atmel, Lattice Semiconductor, Cypress Semiconductor і інші компанії активно створюють ПЛІС, що відрізняються наявністю нових функцій і сприяють подальшому розширенню сфери їх застосування. За результатами діяльності у 2003 році компанії Xilinx, Altera і Actel стали основними розробниками ідеології застосування ПЛІС. Xilinx (www.xilinx.com; www.plis.ru) заснована в 1984 році. Xilinx при виготовленні ПЛІС використовує технології на основі статичного ОЗП (FPGA серій ХС 4000, XC 3000, XC 5200, Spartan, Virtex), Flash-пам'яті (CPLD XC 9500) і ЕППЗУ (CPLD серії CoolRunner). Компанія Xilinx — творець ПЛІС FPGA. У даний час популярними сімействами є Virtex-II, Virtex-II Pro, Spartan-IIE і Spartan-3.

1.2 Порівняльна характеристика CPLD фірм Xilinx та Altera

Altera одна з найбільших розробників ASIC, програмованих логічних інтегральних схем (ПЛІС), була заснована в 1983 р. Підприємство входить до індексу котирувань акцій S & P 500, а на біржі NASDAQ значиться під абревіатурою ALTR. Як підприємство без власних виробничих потужностей, Altera концентрується в першу чергу на розробці схем і модулів на основі таких мов опису апаратури, як VHDL, Verilog і власний AHDL. В області виробництва мікросхем співпрацює з різними виробниками.

1.3 Мікросхеми стандартної дискретної логіки та їх застосування

Мікросхема (microcircuit) — електронна схема, що реалізована у вигляді напівпровідникового кристалу та виконує певну функцію. Винайдена у 1958 році американськими винахідниками Джеком Кілбі та Робертом Нойсом.

 

РОЗДІЛ 2 
РОЗРОБКА АПАРАТНИХ ПІДСИСТЕМ

2.1 Особливості побудови CPLD

CPLD - мікросхеми високого рівня  інтеграції, основними частинами  яких є:

    • PAL (GAL) - подібні функціональні блоки;
    • Система комутації, що дозволяє об'єднувати функціональні блоки в єдиний пристрій, виконана у вигляді матриці з'єднань.
    • Блоки введення / виводу.

Усі складові частини CPLD програмуються. Узагальнена структура CPLD показана на рис. 2.1.

У структурній схемі прийняті наступні позначення. Через ФБ (FB) позначені функціональні блоки, число яких N залежить від рівня інтеграції мікросхеми та змінюється в досить широких межах. У кожному ФБ є n макрокомірок МК (МС, Macrocells). Функціональні блоки отримують вхідні сигнали від програмованої матриці з’єднань ПМЗ (PIA, Programmable Inerconnect Array). Число таких сигналів m. Вихідні сигнали ФБ надходять як до ПМЗ, так і в блоки введення / виводу CPLD (IOBs, Input / Output Blocks, БВВ). ПМЗ забезпечує повну комутованість функціональних блоків, тобто можливість подавати сигнали з будь-якого їх виходу на будь-який вхід.

Блоки вводу / виводу пов'язані із зовнішніми двонаправленими виходами I/O, які, в  залежності від програмування, можуть бути використані як входи або  як виходи. Три нижніх виведення або спеціалізуються для подачі на матрицю функціональних блоків сигналів GCK (Global Clocks) глобального трактування, сигналів GSR (Global Set / Reset) глобальної установки / скидання і сигналів GTS (Global 3-state Control) глобального управління третім станом вихідних буферів, або ці ж виходи можуть бути використані для операцій введення / виводу. Тут і далі термін "глобальний" застосовується для сигналів, загальних для всієї мікросхеми.

Рис. 2.1 – Узагальнена структура CPLD

 

Число контактів вводу / виводу може збігатися з числом виходів всіх ФБ, але може бути і меншим. В останньому випадку частина макро осередків може бути використана тільки для вироблення внутрішніх сигналів пристрою (зокрема, сигналів зворотного зв'язку). Необхідність у таких сигналах типова для структур більшості цифрових пристроїв. Структура на рис. 2.1 трохи спрощена. Крім показаних блоків у CPLD можуть бути присутніми контролери для управління операціями програмування безпосередньо в системі (In System Programmability, ISP), контролери для роботи з інтерфейсом JTAG та інші.

2.2 Формування вимог до системи дешифратора

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

Перетворювачі кодів призначені для переведення  чисел з однієї форми представлення в іншу. Наприклад, при введенні інформації в ЕОМ необхідно перетворювати десяткові числа в двійкові, а при виведенні інформації на індикатори чи друкувальний пристрій - двійкові або двійково-десяткові коди, коди керування знакогенератором, світлодіодними чи рідиннокристалічними індикаторними панелями.

Відправним  пунктом для побудови перетворювача кодів є таблиця відповідності, у якій записується повний набір вхідних і відповідний набір вихідних слів. Якщо вхідні і вихідні слова записані двійковими символами, то синтез перетворювача коду зводиться до перебування для кожного розряду вихідного слова булевої функції, що встановлює зв'язок даного розряду з вхідними наборами двійкових змінних. Організація такого зв'язку і мінімізація булевого виразу здійснюються за допомогою карт Карно (діаграм Вейча). На заключному етапі отримана функція перетвориться до виду, зручному для реалізації в заданому (обраному) елементному базисі.

Розглянемо спосіб візуалізації двійково-десяткових чисел, який часто проводять за допомогою семисегментних панелей на основі рідких кристалів чи світлодіодів (рис. 2.8 а), широко використовуваних у мікрокалькуляторах, електронних годинниках і т.д. Якщо сегменти позначені буквами, як показано на рис. 2.8 б, то таблиця 2.1 встановлює відповідність між двійково-десятковим числом і необхідними для відображення десяткової цифри набором сегментів.

 

Таблиця 2.1 – Відповідність між двійково-десятковим числом і семисегментним кодом.

Десяткове число

Код 8421 DCBA

Семисегментний код abcdefg

0

0000

1111110

1

0001

0110000

2

0010

1101101

3

0011

1111001

4

0100

0110011

5

0101

1011011

6

0110

1011111

7

0111

1110000

8

1000

1111111

9

1001

1111011

Информация о работе Проектування комбінаційних логічних схем в базисі ПЛІС