Проектування цифрових систем з використанням логічного програмування

Методологія автоматизації проектування і моделювання цифрових систем, що базується на логічному програмуванні. Аналіз методів розпізнавання часових діаграм і автоматизації символічного синтезу систем, які описуються за допомогою логічних секвентів.

Рубрика Программирование, компьютеры и кибернетика
Вид автореферат
Язык украинский
Дата добавления 22.04.2014
Размер файла 53,8 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

НАЦІОНАЛЬНА АКАДЕМІЯ НАУК УКРАЇНИ

ІНСТИТУТ ПРОБЛЕМ МОДЕЛЮВАННЯ В ЕНЕРГЕТИЦІ

ім. Г.Є. Пухова

УДК 681.33

ПРОЕКТУВАННЯ ЦИФРОВИХ СИСТЕМ З ВИКОРИСТАННЯМ ЛОГІЧНОГО ПРОГРАМУВАННЯ

Спеціальність 05.13.13 - Обчислювальні машини, системи та мережі

Автореферат

дисертації на здобуття наукового ступеня

доктора технічних наук

к.т.н. Януш Шайна (Польща)

Київ - 2001 р.

Дисертацією є монографія.

Робота виконана у фірмі ADB (Advanced Digital Broadcast - Польща)

Офіційні опоненти:

д. т. н., проф. І.А. Жуков, зав. кафедри обчислювальної техніки Національного авіаційного університету МОН України, м. Київ

д. т. н., проф. В.Н. Коваль, зав. відділом Інституту кібернетики ім. В.М. Глушкова НАН України, м. Київ

д. т. н., проф. Ю.М. Коростіль, зав. відділом Інституту проблем моделювання в енергетиці НАН України, м. Київ.

Провідна організація - Національний технічний університет “Київський Політехнічний Інститут” Міністерства освіти і науки України, Київ, кафедра ЕОМ.

Захист відбудеться “27“ вересня 2001 р. о 14 год. на засіданні спеціалізованої ради Д 26.185.01 Інституту проблем моделювання в енергетиці ім. Г.Є. Пухова НАН України (03680, ГСП, Київ-164, вул. Генерала Наумова, 15)

З дисертацією можна ознайомитись у бібліотеці Інституту проблем моделювання в енергетиці ім. Г.Є. Пухова НАН України.

Автореферат розіслано “23“ серпня 2001 р.

Вчений секретар спеціалізованої

ради Д 26.185.01

канд. технічних наукЕ. П. Семагіна

АНОТАЦІЇ

Я. Шайна: Проектування цифрових систем з використанням логічного програмування. Монографія логічний секвент автоматизація цифровий

Дисертація на здобуття вченого ступеню доктора технічних наук за спеціальністю 05.13.13 - обчислювальні машини, мережі і системи. - Інститут проблем моделювання в енергетиці НАН України, Київ, 1999.

Представлена методологія автоматизації проектування і моделювання цифрових систем, що базується на логічному програмуванні. Найбільш суттєвими досягненнями монографії є слідуючі. Запропоновано новий оригінальний декларативний метод розпізнавання часових діаграм і метод автоматизації символічного синтезу цифрових систем, які описуються за допомогою логічних секвентів. Представлена можливість використання логічного програмування для динамічного моделювання з застосуванням баз даних, трансляції опису і автоматизації перетворення логічних виразів. Особливої уваги заслуговує запропонована мова моделювання цифрових систем і процесів ProWave, а також застосування запропонованого у монографії методу для розпізнання складних часових діаграм. Ця мова знайшла широке застосування для проектування цифрових систем високого рівня інтеграції. До цього часу були випущені в кількості більш ніж 100 000 штук спеціалізовані системи, спроектовані для супутникового телебачення з використанням означеної вище мови.

Ключові слова: логічне програмування, цифрові системи, символічний синтез, моделювання, САД цифрових пристроїв.

J. Szajna: Design of Digital Systems with the Usage of Logic Programming. Monograph.

Thesis for the doctor `s degree by the specialty 05. 13.13 - computers, systems and networks. - The Institute of Simulation Problems in Energetics, National Academy of Science of Ukraine, Kiev, 1999.

The dissertation presents methodology of automatization of digital circuits design and simulation by means of logic programming. Here are some of the most important achievements of this monograph. The new, original, declarative method for timing waveform recognition. Methods for the automatization of the symbolic synthesis of digital circuits that are described by using logic sequents. The application of logic programming to dynamic simulation uses databases description translation, and automatic manipulation of logic expressions. The ProWave simulation language for digital circuits and processes, implemented on the bases of the suggested in this monograph method for a complex timing waveform recognition, deserves special attention. This language has found a wide application in the design of large-scale integration digital circuits. Up to the present moment, more than 100 000 items of specifically designed for digital TV circuits based on the above-mentioned language have been sold.

Key words: logic programming, digital circuits, symbolic synthesis, simulation, CAD of digital systems.

Я. Шайна: Проектирование цифровых систем с использованием логического программирования. Монография.

Диссертация на соискание ученой степени доктктора технических наук по специальности 05.13.13 - вычислительные машины сети и системы.- Институт проблем моделирования в энергетике НАН Украины, Киев, 1999.

В диссертации представлена методология автоматизирования проектирования и моделирования электронных цифровых систем, основанная на эвристических методах и символических операциях, существенно дополняющая применяемые в этой области традиционные алгоритмические и численные методы. Предложенные методы позволяют охватить широкий круг задач, связанных с использованием логического программирования при проектировании цифровых систем, что позволило получить комплексное представление всей тематики.

Рассмотрены известные из литературы классические методы статического моделирования и спецификации цифровых систем с помощью логического программирования, которые расширены автором и представлены в унифицированной форме.

Представлена возможность использования логического программирования для динамического моделирования с применением баз данных, трансляции описания и автоматического преобразования логических выражений.

Представлен новый, оригинальный метод распознавания временных диаграмм, имеющих декларативный характер и основанный на методах, применяемых в искусственном интеллекте - сравнение с эталоном и метапрограммирование.

На основе предложенного метода распознавания временных диаграмм создан новый формальный язык описания и моделирования временных моделей, названный Pro Waves, в котором моделируемое устройство, процесс или система описывается полностью декларативным способом с помощью группы эталонных циклов, как это имеет место в случае представления технической документации.

Применение языка позволяет:

а) многократно сократить время разработки модели цифровых устройств, процессов и систем, характеризующихся сложными временными зависимостями;

б) свести задачу проектанта к формальной записи эталонов временных диаграмм без необходимости осмысливания и применения каких - либо алгоритмов;

в) повысить точность моделирования, так как, благодаря декларативному характеру проектирования, возможность допустить ошибку незначительна.

В области синтеза цифровых устройств были разработаны методы автоматизации символического синтеза цифровых систем, описываемых с помощью логических секвентов.

С этой целью был использован аппарат, применяемый в области искусственного интеллекта и автоматического доказательства теорем, к проектированию цифровых устройств. В части процесса автоматизации была выполнена:

а) нормализация секвентов способом, подобным автоматическому доказательству теорем, с использованием правил логических выводов;

б) минимизация описания за счёт применение эвристических правил;

в) синтез системы к виду, соответствующему структуре применяемых элементов с помощью символических преобразований;

г) декомпозиция описания на подгруппы, которые можно применять в отдельных физических элементах, за счёт использования механизма поиска.

На основе предложенного метода синтеза была создана система CAD Logic, предназначенная для автоматизации проектирования цифровых систем с использованием программируемых логических структур PAL.

Представленные в монографии результаты нашли широкое применение в народном хозяйстве, что подтверждает правильность и актуальность теоретических выводов, а также их большое практическое значение.

Особого внимания в этом смысле заслуживает язык описания и моделирования цифровых систем Pro Waves. Этот язык нашёл широкое применение при проектировании специализированных цифровых устройств высокого уровня интеграции ASIC, предназначенных для спутникого цифрового телевидения, а также при проектировании цифровых телевизионных интерактивных приёмников-декодеров, выполненных по заказу больших, известных во всём мире фирм, таких как: SGS Thomson Microelectronics, Sun Moon Star, Broadcast Software Systems International и Asia Digital Broadcast. Спроектированные специализированные системы, предназначенные для использования в цифровом спутниковом телевидении, были произведены в количестве более ста тысяч штук.

Ключевие слова: логическое программирование, цифровые системы, символический синтез, моделирование, САД цифровых устройств.

ЗАГАЛЬНА ХАРАКТЕРИСТИКА РОБОТИ

Актуальність роботи

В останній час спостерігається інтенсивне зростання кількості робіт, що потребують нових інформаційних технологій автоматизованого проектування цифрових систем. Обумовлюється цей зріст, насамперед, великою конкуренцією на електронному ринку, а також розповсюдженням пристроїв, вироблених малими серіями і призначених до конкретного застосування (пристрої ASIC - Application Specific Integrated Circuit). Вимоги ринку, як і виробництво малих серій, вимагають підвищення ефективності проектування, тобто скорочення часу, необхідного для підготовки проекту, та виконання ретельної перевірки пристрою ще до початку його виробництва. Внаслідок цього виникла необхідність автоматизації всіх етапів проектування, в тому числі тих, для яких традиційні методи проектування мало ефективні.

У зв'язку зі сказаним вище, все більшого значення набирають методи, які принципово відрізняються від традиційних тим, що мають не числовий і не алгоритмічний характер. Вони базуються, головним чином, на використанні евристичного і символічного перетворень, які широко використовуються у штучному інтелекті.

На думку автора, значні можливості в цій сфері створює застосування логічного програмування.

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

Метою монографії є усунення перелічених прогалин.

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

Відомі з літератури праці, які присвячені безпосередньо символічному синтезу, мають елементарний, або фрагментарний характер.

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

Мета роботи

Метою дисертації, згідно з викладеним вище, є створення методології проектування і моделювання електронних цифрових систем з використанням логічного програмування, зокрема, у визначенні можливості доповнення застосованих традиційних алгоритмічних і числових методів методами евристичними і символічними.

Метою дисертації з практичної точки зору є, передусім, створення ефективних методів:

а) моделювання поведінки цифрових систем і процесів зі складними часовими діаграмами і розпізнавання таких діаграм,

б)символічного синтезу цифрових систем.

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

Друга проблема, символічний синтез, є альтернативною у відношенні до числових методів, а також до комплексного методу проектування цифрових систем. Розв'язанню цієї проблеми присвячені деякі праці автора в 1985-1993 роках.

Зв'язок роботи з науковими програмами і дослідними планами

Ідеї, які представлені в монографії, виникли в межах наступних науково-дослідних програм.

CPBP 02.20: Впровадження програмованих логічних структур у цифрових системах та вимірювальних приладах. 1985-1990. Політехніка Зеленогурська. В рамках Центрального Плану Головних Досліджень Міністерства Науки і Вищої Освіти Польщі.

Роль автора: безпосередній учасник і заступник керівника теми.

COHERENCE S-JEP no 07648 i S-JEP no 0449 (Structural Joint European Project). 1990-1996. Проект фінансований Європейською Унією. Робота над проектом проводилася спільно з: (а) Університетом в Брістолі, Англія; (б) Університетом в Манчестері, Англія; (в) Політехнікою Зеленогурською, Польща.

Роль автора: керівник наукової теми з польської сторони.

Artificial Intelligence Based Stock Exchange Analyzer. 1991-1992. За умовою Kinetic Capital Corporation, Сиетл, США.

Роль автора: безпосередній учасник і керівник теми.

Audio and Video Compression. 1992. Центр Проектування Інтегральних Кіл INMOS. Image Processing Unit, Англія.

Роль автора: член колективу, відповідальний за частину проекту, яка стосується моделювання складних часових залежностей. Виконані теми автором: (а) Behavioral model of Generic Video RAM Device, (б) Timing model of MPEG Decoder.

Behavioral Model of STi 3240 Video Decoder. 1993-1994. Політехніка Зеленогурська. За умовою SGS-Thomson Microelectronics. Image Processing Business Centre, Гренобль, Франція.

Роль автора: безпосередній учасник і керівник теми.

Transputer Based Intelligent Management System for Interactive TV Digital Satellite Receiver. 1995-1996. Політехніка Зеленогурська. За умовою SGS-Thomson Microelectronics, Asia-Pacific Branch, Сінгапур.

Роль автора: безпосередній учасник і керівник теми.

IRD: Integrated Receiver-Decoder for Satellite TV. 1997-1999. Advanced Digital Broadcast, Польща. За умовою фірми Broadcast Software Systems International, Тайвань.

Роль автора: науковий керівник і координатор теми.

Наукова новизна здобутих результатів

До найважливіших наукових досягнень автора, відбитих у монографії необхідно віднести:

1. Розробка методології проектування і моделювання цифрових систем з використанням логічного програмування, зокрема, демонстрацію можливості доповнення традиційних алгоритмічних і числових методів евристичними і символічними методами.

2. Створення нового, оригінального методу розпізнавання часових діаграм, який має декларативний характер і базується на використанні застосованих в штучному інтелекті методів порівняння з еталоном і метапрограмування.

3. Створення мови моделювання, яка дозволяє ефективно проектувати моделі цифрових систем і процесів зі складними часовими діаграмами.

4. Застосування логічного програмування до автоматизації символічного синтезу цифрових систем, описаних за допомогою логічних секвенцій (спосіб реалізації подібний до автоматичного доведення теорем з використанням правил логічних висновків і евристичних правил).

5. Створення на основі розроблених теоретичних методів їх практичної реалізації, яка свідчить про придатність запропонованих методів до розв'язування реальних, складних задач в сфері проектування і моделювання цифрових пристроїв.

Практичне значення отриманих результатів

Результати робіт, зв'язаних з автоматизацією символічних перетворень логічних виразів (розділ 3 монографії), а також символічний синтез (розділ 4) були використані при розробці системи CAD LOGIC, яка призначена для комп'ютерного забезпечення проектування цифрових систем з програмованими логічними структурами PAL і була створена у 1989-1990 р.

Результати робіт, зв'язаних з розпізнаванням часових діаграм і мовою Pro Waves (розділ 6), були використані на практиці для побудови моделей динамічної пам'яті, пристрою декодера зображення і протоколів комунікації, які були створені у межах робіт, проведених колективом, очолюваним автором в 1992-1997 роках, для SGS-Thomson Microelectronics Asia-Pacific Branch, а також Broadcast Software Systems International.

В останній час роботи автора, зв'язані з розпізнанням і моделюванням складних часових діаграм, були використані для проектування інтегральних пристроїв високого рівня інтеграції ASIC, призначених до використання в інтерактивному цифровому телебаченні і при проектуванні супутникових телевізійних приймачів-декодерів за вимогою фірми Asia Digital Broadcast для ринків Австралії, Південно-Африканської республіки, Іспанії, Таїланду і Ізраїлю.

Особливої уваги заслуговує проект виконаного на високому рівні інтеграції пристрою ADB Phase II Signal Processor (PSP), а також пристрою Bili-I Fast Descrambler.

Пристрій PSP - спеціалізований процесор цифрових телевізійних сигналів, що реалізує, між іншими, функції: бітової і байтової корекції помилок, розкладання потужності цифрових сигналів на компоненти, а також декодування і транскодування сигналів. Пристрій PSP забезпечує роботу приймача інтерактивного цифрового телебачення у двох найбільш популярних нині системах передачі сигналу: DVB (Digital Video Broadcasting) в Європі і Orbit (Scientific Atlanta Compression System Phase II) у США. Система працює з максимальною частотою 120 мгГц і складається з 40 тисяч комірок. Проект системи виконано спільно з проектними бюро фірми SGS Thomson Microelectronics (США, Італія). Автор був відповідальним за виконання моделі системи PSP, а також брав участь в аналізі часових залежностей системи.

Система Bili-I є декодером для цифрової супутникової системи передачі сигналів, кодованих у форматі фірми IRDETO. Пристрій працює з частотою 60 мгГц і складається з 35 тисяч комірок. Автор виконав аналіз часових залежностей роботи пристрою на окремих етапах його проектування. До кінця 1999 року фірма SGS Thomson Microelectronics випустить 130 тисяч пристроїв Bili-I. Вже кілька місяців пристрій використовується у новій генерації супутникових приймачів-декодерів.

Особистий внесок автора

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

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

В сфері символічного синтезу цифрових систем автор запропонував використання логічного програмування для автоматизації синтезу пристроїв, описаних за допомогою логічних секвентів. Такий підхід дозволив створити комплексний апарат синтезу, що охоплює проблему - від опису праці системи до декомпозиції кінцевого опису підгруп, які можна впроваджувати у фізичних елементах.

У частині, присвяченій трансляції специфікації пристроїв, автор наводить методи штучного інтелекту, що застосовуються в інших галузях, до галузей, зв`язаних з проектуванням і моделюванням цифрових пристроїв.

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

Апробація результатів

Головні наукові досягнення і практичні результати праці були представлені на конференціях і семінарах в Польщі і за кордоном. В Польщі в містах: Зелена Гура, Шклярська Поремба, Люблін, Торунь, Вроцлав, Гданськ, Варшава. За кордоном на міжнародних конференціях на Україні (Київ), в Словакії (Братислава), в Німеччині (Ілменау і Дрезден), Франції (Гренобль) і у Сінгапурі.

Публікації

По темі дисертації були опубліковані 41 наукова робота, серед яких 2 монографії (без співавтора), 2 книги, опубліковані в найбільш престижних у Польщі наукових видавництвах, тобто Panstwowe Wydawnictwo Naukowe (без співавторів) і Wydawnictwa Naukowo-Techniczne (автор і науковий редактор), а також 33 статті, серед яких 11 без співавторів.

Структура і обсяг роботи

Робота складається із вступу, шести розділів, заверешення, висновків і списку використованої літератури. В цілому монографія містить 240 сторінок, 26 рисунків, а також 11 таблиць і діаграм.

ЗмІст роботи

Розділ 1. Вступ

В розділі подано вступ до галузі логічного програмування, виконано огляд літератури, сформульована основна мета роботи та визначена галузь наукових досліджень, визначено практичне значення і показано зв'язок виконаної роботи з науково-дослідними програмами.

Розділ 2. Основні методи специфікації і моделювання цифрових систем

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

Розділ 3. Символічні операції

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

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

Розділ 4. Автоматизація символічного синтезу цифрових систем

В розділі розглянуто спосіб використання логічного програмування для реалізації символічного синтезу цифрових систем, описаних за допомогою логічних секвентів.

Представлене рішення проблем автоматизації процесів: (а) нормалізації секвентів способом подібним до автоматичного доведення теорем з використанням правил логічних висновків, (б) мінімізації опису з використанням евристичних правил, (в) синтезу до вигляду, що відповідає структурі використовуваних елементів - символічне перетворення, (г) декомпозиції опису системи на підгрупи, які можна використовувати в окремих фізичних елементах - вживання механізму пошуку апарату висновків.

Метод символічного синтезу цифрових систем, поданий у цьому розділі, було використано в системі CAD LOGIC, призначеній для проектування цифрових елементів з використанням програмованих логічних структур.

Як вже було зазначено, у синтезі був застосований підрахунок логічних елементів секвентів. Відносно до цифрових систем можна припустити, що секвент є умовним поняттям, в якому “умова” визначена комбінацією вибраних вхідних сигналів. Наприклад, опис за допомогою секвентів 4-бітового регістру, що виконує операції: установлення на виходах одиниць, паралельний запис даних, зсув вліво і зсув вправо, можна представити в вигляді:

/s1*/s0 |- @q3*@q2*@q1*@q0,

/s1*s0 |- (x3->@q3)*(x2->@q2)*(x1->@q1)*(x0->@q0),

s1*/s0 |- (q2->@q3)*(q1->@q2)*(q0->@q1)*(вхЛ->@q0),

s1*s0 |- (вхПp->@q3)*(q3->@q2)*(q2->@q1)*(q1->@q0).

де:

x3, x2, x1, x0- паралельні входи,

вхЛ - послідовний вхід при зсуві вліво,

вхПp- послідовний вхід при зсуві вправо,

q3, q2, q1, q0 - виходи,

@- знак, передуючий виходам в наступному стані.

Головною частиною процесу проектування є перетворення початкового опису функціонування системи, поданого за допомогою секвентів, до вигляду, відповідного структурі елементів, передбачених для використання. Оскільки було прийнято, що будуть застосовуватись елементи PAL, завдання полягає у виділенні з секвентів знаків імплікації і рівнозначності, а також здійсненні таких перетворень, при яких кожний секвент відтворював би залежності вихідних сигналів від вхідних у вигляді, відповідному елементам PAL.

Цей процес можна реалізувати в три етапи. На першому етапі виконується так звана нормалізація секвентів шляхом вилучення з них всіх логічних поєднань. На другому - виконується мінімізація вихідних функцій. На третьому - проводиться синтез секвентів до вигляду, відповідного структурі систем PAL.

Наприклад, для групи секвентів:

/s1 * /s0 |- (a1->y1)*(a0->y0),

/s1 * s0 |- (b1->y1)*(b0->y0),

s1 * /s0 |- (c1->y1)*(c0->y0),

s1 * s0 |- y1 * y0.

нормалізація приводить до наступного виду:

a0 |- y0,s1,s0

a1 |- y1,s1,s0

b0,s0 |- y0,s1

b1,s0 |- y1,s1

c0,s1 |- y0,s0

c1,s1 |- y1,s0

s1,s0 |- y1

s1,s0 |- y0

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

a0,/s0,/s1 |- y0

a1,/s0,/s1 |- y1

b0, s0,/s1 |- y0

b1, s0,/s1 |- y1

c0,/s0, s1 |- y0

c1,/s0, s1 |- y1

s0,s1 |- y1

s0,s1 |- y0

На цій підставі після мінімізації утворюються наступні секвенти, що представляють можливі елементарні залежності вихідних сигналів від вхідних:

b0,s0 |- y0

b1,s0 |- y1

c0,s1 |- y0

c1,s1 |- y1

a0,/s0,/s1 |- y0

a1,/s0,/s1 |- y1

s0,s1 |- y1

s0,s1 |- y0

На черговому етапі синтезу виконується відповідне об'єднання секвентів таким чином, щоб отриманий запис відповідав безпосередньо структурі елементів PAL:

s0*s1 + a1*/s0*/s1 + c1*s1 + b1*s0 |- y1

s0*s1 + a0*/s0*/s1 + c0*s1 + b0*s0 |- y0

Останнім кроком (декомпозиція опису) є поділ секвентів на підгрупи, кожна з яких може бути використана в одному елементі PAL. Цей поділ повинен бути виконаний так, щоб забезпечити оптимальне використання елементів.

Найбільш важливими розділами синтезу є нормалізація секвентів і мінімізація опису. Нормалізацію секвентів можна виконати способом, подібним до автоматичного доведення теорем, якщо використати при цьому формальний математичний апарат у вигляді правил висновків Гентцена. Мінімізацію слід проводити евристичним способом, застосовуючи правила поглинання і відсікання. Нижче подані приклади обох зазначених груп правил, представлених у формальному запису (окремі грецькі літери означають пропоновані формули).

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

Відповідні терми можуть мати у цьому випадку наступний вигляд:

sequent = sequent_element*

sequent_element = formula ( formula_elements );

sequence_sign

Беручи до уваги прийняті визначення формули, а також застосовуючи рекуренцію, терми, що описують складові формули, можна представити у наступному вигляді:

formula_elements = formula_element*

formula_element = variable ( variableName );

negated_variable ( variableName );

conjunction ( conjunction_sign );

clause ( formula_elements );

negated_clause ( formula_elements )

variableName = symbol

conjunction_sign = symbol

При такому визначені термів запис секвентів, поданих на рис. 1, буде:

[ formula ( [ negated_variable ( "s1" ),

conjunction ( "*" ),

variable ( "s0" ) ] ),

sequence_sign,

formula ( [ clause ( [ variable ( "a1" ),

conjunction ( "->" ),

variable ( "y1" ) ] ),

conjunction ( "*" ),

clause ( [ variable ( "a0" ),

conjunction ( "->" ),

variable ( "y0" ) ] ) ] )]

Це правило повинно бути використане, якщо першою неелементарною формулою у секвента є формула, яка має тільки змінну зі знаком заперечення, або вираз зі знаком заперечення.

Нижче подано словесний опис способу застосування розглянутого правила, який використовується при мануальній реалізації.

1.Необхідно виділити в перетворюваному секвенті три наступні частини:

I - послідовність елементарних формул, існуючих перед розгляданою формулою, що має оператор заперечення (a),

II -формулу, що має елемент заперечення (/F),

III -решта частини секвента, що має знак логічного включення (G |- Q).

2. Частину I необхідно поєднати з частиною III.

3. У кінці послідовності, створеної в пункті 2, необхідно дописати формулу з частини II, позбавлену, проте, знака заперечення.

Клаузули, які відповідають поданому вище словесному опису, мають наступний вид:

для змінної:

rule ( PartI,

[ formula ( [ negated_variable ( Name ) ] )

| PartIII ],

NegationSign_in_predecesor, [ NewSequent ] )

:-

append ( PartI, PartIII, NewBeginning ),

append ( NewBeginning, [ formula ( [ variable ( Name ) ] ) ],

NewSequent ).

для виразу:

rule ( PartI,

[ formula ( [ negated_clause ( Content ) ] )

| PartIII ],

NegationSign_in_predecesor,

[ NewSequent ] )

:-

append ( PartI, PartIII, NewBeginning ),

append ( NewBeginning, [ formula ( [ clause ( Content ) ] ) ],

NewSequent ),

де предикат

rule ( sequent, sequent, sequentSide, sequents ),

має наступні параметри:

частина I перетворюваного секвента,

частина II і III,

бік секвента, з якого знаходиться знак заперечення,

результат використання правила.

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

rule ( PartI, [ formula ( [ variable ( N ) ] ) | Rest ],

SequentSide, Result )

:-

append ( PartI, [ formula ( [ variable ( N ) ] ) ], NewPartI ),

rule ( NewPartI, Rest, SequentSide, Result ).

Як видно, запис правила докладно відповідає словесному опису, а єдиним додатковим предикатом, що застосовується в операційних частинах клаузул, є стандартний предикат append.

Аналогічно виконується решта правил синтезу, що по суті є автоматизацію усього описаного процесу.

Розділ 5. Перетворення опису цифрових систем

Цей розділ має допоміжний характер. Він присвячений проблемі перетворення (трансляції) описів цифрових систем.

В процесі проектування трансляція часто має велике практичне значення, тому що дозволяє використовувати різні, не зв'язані безпосередньо поміж собою, засоби комп'ютерного забезпечення.

В розділі показано, що застосування логічного програмування дозволяє провести звичайну заміну однієї форми опису пристрою - іншою, навіть тоді, коли обидві форми дуже складні і різноманітні.

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

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

В розділі використано приклад перетворення опису, поданого за допомогою списку поєднань у форматі Intergraph, до опису на мові VHDL.

Метод був використаний для конструювання описово-моделюючих правил мови моделювання Pro Waves, представлених в шостому розділі.

Розділ 6. Розпізнавання часових діаграм

Однією з основних проблем, існуючих при проектуванні і моделюванні інтегральних систем високого рівня інтеграції VLSI, є проблема дотримування часових вимог між діаграмами окремих вхідних і вихідних сигналів. Ці вимоги можуть бути дуже складними з урахуванням того, що одиничний елемент VLSI може виконувати багато різних функцій, а також беручи до уваги складність окремих еталонних діаграм. Через те моделі роботи більшості елементів VLSI або протоколів комунікації, що написані традиційним способом, наприклад, за допомогою мови VHDL, можуть мати багато тисяч ліній, а їх підготування може бути надто трудомістким.

В цьому розділі представлено новий, оригінальний метод моделювання роботи (behavioral simulation) цифрових пристроїв високого рівня інтеграції VLSI, а також процесів, що відбуваються в цих цифрових системах, які характеризуються складними часовими залежностями. Приклад таких залежностей подано на рис. 2.

Запропонований метод дозволяє значно скоротити час приготування моделей і, тим самим, скоротити процес проектування пристрою.

В цьому методі розпізнавання часових діаграм виконано методом порівняння з еталоном і застосуванням метапрограмування.

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

Метод використовується до побудування мови опису і моделювання діаграм Pro Waves (Prolog based system for Waves recognition), що працює спільно з мовою VHDL. Мова має велике практичне значення і була використана, між іншими, для побудови моделі динамічної пам'яті VRAM, інтерфейсної системи декодера зображення (MPEG Video Decoder), моделювання протоколів комунікації з трансп'ютерними системами, а також для проектування спеціалізованих інтегральних пристроїв, які використовуються в цифровому телебаченні. Згідно з інформацією, відомою з літератури, а також власних праць автора, процес створення таких моделей традиційним способом, за допомогою мови VHDL, триває часто майже місяць. В випадку використання розгляданого методу час створення можна скоротити до кількох днів.

В розгляданому методі опис часових залежностей, існуючих у еталоні циклу, поділений на групи і зв'язаний з головними подіями циклу, які називаються подіями віднесення. Для кожної такої події, в залежності від необхідності, може бути подана група значень часів, зв'язаних з нею лівобічним (leftSideGroup), правобічним (rightSideGroup), а також двобічним способом (bothSideGroup).

Загальний, формальний запис кожної з груп є наступний:

leftSideGroup( ReferenceEvent ) ->>

t ( TimeName, BoundaryEvent )

{ , t ( TimeName, BoundaryEvent ) };

rightSideGroup( ReferenceEvent ) ->>

t ( TimeName, BoundaryEvent )

{ , t ( TimeName, BoundaryEvent ) };

bothSideGroup( ReferenceEvent ) ->>

t ( TimeName,

LeftBoundaryEvent,

RightBoundaryEvent )

{ , t ( TimeName,

LeftBoundaryEvent,

RightBoundaryEvent ) };

де:

подія гранична - є другою з подій, яка обмежує даний час відповідно з лівого або з правого боку відносно до події віднесення,

ліва подія гранична і права подія гранична є подіями, які обмежують даний час; цей час належить до двобічної групи, відповідно з лівого і правого боку відносно до події віднесення,

дужки (“{}”) означають можливість появи в даному фрагменті нуля, один або багато разів.

Події записуються згідно з наступною схемою:

event( SignalName,

PriorToChange_SignalValue,

AfterChange_SignalValue )

Граничні події можуть мати також невизначений характер, наприклад, event(Add,_,_). Це можливе в наступних випадках:

Істотним є сам факт зміни сигналу, а не його виду.

Істотним є те, що зміна сигналу не відбувається у визначений інтервал часу, поза яким цей сигнал може змінюватися, або бути незмінним. В цьому випадку визначення "подія гранична” має характер умовний, і має значення межі інтервалу. Подія, як така, що приймається як зміна сигналу, може в цілому не відбутися. Така ситуація має місце, наприклад, при адресних сигналах.

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

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

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

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

Нижче подано приклад правила-клаузули, створеної для лівобічної групи фронту, еталону циклу, поданого на рис. 3.

Розгляданий метод ідентифікації був використаний до побудови мови опису і моделювання діаграм Pro Waves (Prolog based system for Waves recognition). Ця система призначена для сумісної роботи на мові VHDL і служить для моделювання роботи (behavioral simulation) цифрових систем зі складними часовими діаграмами.

Модельований елемент описується в цій системі за допомогою групи еталонних циклів (CYCLE), аналогічно тому, як то має місце в випадку технічної документації пристрою, наприклад, опис елементу DRAM містить, між іншим, наступні цикли: read, early write, late write, read-write, page early write, та інші.

Опис кожного з еталонних циклів починається від подання необхідних кінцевих умов початку циклу, тобто визначення першої події віднесення, існуючої у цьому циклі, а також стану інших сигналів у момент надходження цієї події. Наприклад: start_conditions ( event ( RAS,1,0 ), WE=0, CAS=1 )

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

Поділ на частини дозволяє дуже просто описувати фрагменти циклу, що повторюються. Одиничні частини супроводжуються декларацією part_type(single). Частини, що повторюються - декларацією part_type(repetitive).

Найважливішими фрагментами опису даного еталона є тіла описів окремих частин. Це тіло створено із записів відповідних груп ліво-, право- і двобічних часів, у відповідності з інструкцією під назвою action. Задачею інструкції є ініціювання передачі даних. Сама передача виконується модулем опису системи, написаному мовою VHDL (рис. 5). Модуль, написаний мовою Pro Waves, ініціює цю передачу після розпізнавання фрагмента відповідного циклу. Інструкція action має наступний загальний вигляд: action ( ActionName, ConnectedWithAction_ReferenceEvent )

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

Нижче подано приклад формального запису еталона циклу в системі Pro Waves. Це є опис поданого на рис. 4 спрощеного еталона циклу Two-Byte Register Read системи декодера зображення MPEG2 STi3500.

WAVE_DESCRIPTION MPEG_DekoderVideo_modulProWaves;

signal ( DATA, ADD, nWAIT, nCS, RnW, nCDSTR );

action( Read_HigherByte_Address,

Read_LowerByte_Address,

SendToBus_HigherByte,

SendToBus_LowerByte,

Generate_nWAIT_1_0_1__Read2_Signal,

Generate_nWAIT_Z__Read2_Signal );

CYCLE Two_Byte_Register_Read;

start_conditions ( event ( nCS,1,0 ), nCDSTR=1, RnW=1, nWAIT=Z,

DATA=Z );

BEGIN

PART OnePartCycle;

part_type ( single );

begin

leftSideGroup (event (nCS,1,0)) ->> t (tAVSL,event(ADD,_,_)),

t (tRVSL,event(RnW,0,1));

leftSideGroup (event (nWAIT,0,1)) ->> t (tSLWH,event(nCS,0,1)),

t (tDVWH,event(ADD,_,_));

leftSideGroup (event(nCS,0,1)) ->> t (tAVSH,event(ADD,_,_)),

t (tDVSH,event(DATA,_,_));

rightSideGroup(event(nCS,1,0)) ->> t (tSLWL,event(nWAIT,1,0)),

t (tSLWD,event(nWAIT,Z,1));

rightSideGroup(event(nWAIT,0,1)) ->> t (tWHAX,event(ADD,_,_)),

t (tWHDV,event(DATA,_,_));

rightSideGroup(event(nCS,0,1)) ->> t (tSHAX,event(ADD,_,_)),

t (tSHRX,event(RnW,1,0)),

t (tSHSL,event(nCS,1,0)),

t (tSHWZ,event(nWAIT,1,Z)),

t (tSHDI,event(DATA,_,_)),

t (tSHDZ,event(DATA,_,Z));

action ( Generate_nWAIT_1_0_1__Read2_Signal, event (nCS,1,0 ));

action ( Read_HigherByte_Address, event (nCS ,1,0));

action ( SendToBus_HigherByte, event (nCS ,1,0));

action ( Read_LowerByte_Address, event (nWAIT,0,1));

action ( SendToBus_LowerByte, event (nWAIT,0,1));

action ( Generate_nWAIT_Z__Read2_Signal, event (nCS ,0,1));

end;

END; --of_CYCLE;

END. --of_DESCRIPTION.

Як вже зазначалося, рівень складності часових залежностей, що можуть виникати між сигналами елементів високого рівня інтеграції, спричиняє те, що створення відповідної моделі на мові VHDL є процесом дуже кропітким і довготривалим. Створення такої моделі на мові Pro Waves відносно просте. В зв'язку з цим дуже ефективним, з точки зору часу, необхідного для підготовки моделі, є поєднання модуля розпізнавання діаграм, описаного мовою Pro Waves з операційним модулем, написаним мовою VHDL. Спосіб виконання такого поєднання подано на рис. 5, який відноситься до розглянутого вище прикладу декодера зображення.

Модуль, виконаний мовою Pro Waves, а точніше, генеровані на її основі описово-моделюючі правила, виконує дві основні функції. Перша з них - розпізнавання діаграм через порівняння їх з еталонами циклів, а також ініціювання виконання операцій системи, що моделюється, шляхом створення відповідних значень сигналу мовою VHDL action.

Модуль, написаний мовою VHDL, виконує усі операції модельованого пристрою, що ініційовані сигналом action. Цей модуль складається з двох компонентів - головного компоненту, який виконує усі згадані вище операції, а також компоненту інтерфейс _VHDL_C_Prolog, що має допоміжний характер і забезпечує комунікацію поміж головним компонентом і прологовим модулем.

У таблицях 1, 2 і 3 подано порівняння ефективності моделювання, а також ефективності процесу створення моделі елемента VRAMm PD42264, в випадку використання мови Pro Waves, а також у випадку використання виключно мови VHDL. Модуль Pro Waves був установлений за допомогою компілятора SICStus Prolog, модуль VHDL - за допомогою модулятора Synopsys-VHDL, версія 3.1. Для моделювання використано комп'ютер Sun SPARCstation 2, який має 64 М байти пам'яті RAM.

В залежності від кількості модельованих подій, витрачений процесором CPU час для моделі Pro Waves в порівнянні з моделлю, написаною виключно за допомогою мови VHDL, є більш від 2 до 7 разів (Табл.1). Проте принципово зменшується час, який повинен витратити проектувальник на створення самої моделі. У випадку використання виключно мови VHDL цей час складає кілька місяців, а у випадку використання мови Pro Waves - тільки декілька днів . Скорочення часу є результатом значного зменшення розміру опису, а передусім, зміни типу цього опису з алгоритмічного виду на декларативний, при якому основна задача проектувальника зводиться до відповідного формалізованого запису еталонів часових діаграм елемента, що моделюється.

Мова Pro Waves була використана для побудови моделі кількох пристроїв і процесів, що мають дуже складні часові характеристики. До найважливіших з них належать моделі: пам'яті VRAM (Video RAMmPD42264), інтерфейсної частини системи декодера зображення (MPEG/2 Video Decoder STi 3500), протоколів комунікації з трансп'ютерними системами, а також, в останній час, моделі, що використовуються під час проектування інтегральних пристроїв для потреб цифрового телебачення ADB Phase II Signal Processor (PSP) i Bili-I Fast Descrambler.

Розділ 7. Завершення

В розділі подано стислі висновки монографії, а також її найважливіші досягнення.

Приклади впроваджень

Декодер цифровий для супутникової передачі сигналу DVB, кодованого в системі фірми IRDETO.

Реалізує функції: бітової та байтової корекції похибок, розклад потужності та декодування сигналів.

Частота тактових імпульсів 60 мгГц.

35 тисяч комірок.

Проект виконано в співпраці з проектними бюро фірми SGS Thomson Microelectronics в США, та у Італії.

Виробництво в США та на Мальті.

До кінця 1999 року фірма SGS Thomson Microelectronics виконає 130 тисяч пристроїв VLSI Bili-I.

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

Цифровий супутниковий приймач - декодер для Південної Африки

Приймач спроектовано за запитом компанії MULTICHOICE.

300 каналів TV, автоматичний пошук програм, пов'язаний з банковими системами, вибір мови, реалізація квитків, функція down load.

Процесор типу risc EMMA mPD61030 (core: Silicon Graphics). Модуляція типу QPSK.

Система кодування IRDETO. Операційна система Оpen TV EN2.

Забезпечення висвітлення швидкої пізнавальної графіки.

Шина нетелевізійних даних 115 kbaud (Internet, комп'ютерні програми).

Сумісність з системами MPEG-2, DVB, DiSEqC.

Сертифіковані у США.

Цифровий супутниковий приймач-декодер для Австралії

Приймач зроблено за замовленням компанії AUSTAR.

Паралельний процесор OMEGA Sti5500 + ADB Bili-I fast descrambler.

Система кодування IRDETO, система операційна Open TV 3500.

Відео-декодування Video: ISO/IEC 13818-2, Audio: ISO/IEC 13818-3.

Демультиплексування пакетів ISO/IEC 13818-1.

Сумісний з системами MPEG-2, DVB, DiSEqC.

Сертифіковані у США.

ВИСНОВКИ

В роботі представлена методологія автоматизації проектування і моделювання електронних цифрових систем, що опирається на евристичні і символічні операції. Це істотно доповнює використовувані у цій галузі традиційні алгоритмічні і числові методи.

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

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

До найбільш значних наукових і практичних досягнень, на думку автора, належать:

Створення нового, оригінального методу розпізнавання часових діаграм.

Побудова, на базі запропонованого, нового методу розпізнавання, мови Pro Waves, призначеної для опису і моделювання електронних цифрових систем, що характеризуються складними часовими залежностями.

Опрацювання методу автоматизації символічного синтезу цифрових систем, описаних за допомогою логічних секвентів.

Практичні реалізації розроблених методів при створенні сучасних пристроїв обчислювальної техніки.

В межах моделювання часових залежностей у попередніх працях були запропоновані різні рішення, що спрощують створення моделей. Проте, вони мали принаймні одну з приведених нижче рис:

мали алгоритмічний, а не декларативний характер; це означає, що завдання проектувальника часто було надто складним,

стосувалися аналізу одиничних змін сигналу, а не складних взаємозалежних діаграм для багатьох сигналів,

були зв'язані тільки зі специфікацією, а не з моделюванням часових залежностей.

У монографії використано новий, систематичний підхід до опису складних взаємозв'язаних діаграм для багатьох сигналів, який опирається на поділ часових залежностей на групи, пов'язані з подіями віднесення циклу. Цей поділ, а також поділ циклу на частини, можуть мати характер повторювань. Це дозволяє створювати формальну мову опису і моделювання часових моделей під назвою Pro Waves, в якому цифровий пристрій, процес або система, що моделюються, описується цілком декларативним способом, за допомогою групи еталонів циклів, як то має місце у випадку технічної документації.

Для розпізнавання описаних таким чином циклів під час процесу моделювання використовувалися методи, що застосовуються у штучному інтелекті - порівняння з еталоном і метапрограмування.

Особливо ефективним виявилося поєднання часового модуля, написаного мовою Pro Waves, з операційним модулем, написаним мовою VHDL.

Використання нової мови Pro Waves дозволяє:

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


Подобные документы

  • Розробка моделі системи "Автомобільного магазину". Вивчення основи мови моделювання UML. Створення її для визначення, візуалізації, проектування й документування програмних систем. Використання діаграм кооперацій, послідовності, станів та класів.

    курсовая работа [257,8 K], добавлен 10.12.2014

  • Розробка спеціалізованої малої електронної обчислювальної машини, виконаної на основі контролера К1816ВЕ51. Проектування пам'яті, модуля клавіатури та індикації для корегування роботи машини. Перетворювання цифрових сигналів до аналогових та цифрових.

    курсовая работа [1,1 M], добавлен 12.11.2013

  • Класифікація інформаційних систем. Дослідження особливостей мови UML як засобу моделювання інформаційних систем. Розробка концептуальної моделі інформаційної системи поліклініки з використанням середи редактора програмування IBM Rational Rose 2003.

    дипломная работа [930,4 K], добавлен 26.10.2012

  • Поняття проектування та його автоматизації як комплексу засобів автоматизації проектування. Функції системи автоматизації проектних робіт (САПР), принципи системної єдності, сумісності, типовості, розвитку. Види комплексів засобів і компонентів САПР.

    реферат [123,2 K], добавлен 20.06.2010

  • Загальна характеристика мови моделювання UML. Розробка діаграм UML з метою автоматизації продаж в магазині. Rational Rose як засіб візуального моделювання об'єктно-орієнтованих інформаційних систем. Зворотне проектування як головна перевага Rational Rose.

    контрольная работа [1,7 M], добавлен 23.10.2014

  • Розробка алгоритмів виконання арифметичних операцій для систем числення в різних кодах з оцінкою точності. Проектування цифрового автомату в булевих базисах з використанням логічних елементів. Складення структурної схеми комбінаційних цифрових автоматів.

    курсовая работа [264,6 K], добавлен 10.09.2012

  • Розробка системи, що виконує функцію автоматизації процесу пропускного пункту підприємства з використанням мов програмування PHP, JavaScript і MySql. Практичні аспекти проектування ГІС із використанням WEB-технологій і баз даних, тестування програми.

    дипломная работа [1,5 M], добавлен 25.10.2012

  • Генезис програмувальних логічних інтегральних схем, їх класифікація та архітектура. Призначення системи автоматизованого проектування MAX+PLUS II. Теоретичні відомості про тригери. Програми реалізації тригерів в інтегрованому середовищі MAX+PLUS II.

    дипломная работа [1,6 M], добавлен 20.07.2010

  • Таблиця істинності логічних функцій пристрою, який необхідно синтезувати. Отримання логічних функцій пристрою та їх мінімізація за допомогою діаграм Вейча. Побудова та аналіз структурної схеми пристрою в програмі AFDK з логічними елементами до 3-х входів.

    курсовая работа [320,4 K], добавлен 03.05.2015

  • Проектування інформаційної системи; концептуальне (інфологічне) проектування, побудова ER-діаграми, нормалізація даних. Даталогічне проектування баз даних, фізичне проектування інформаційних систем. СУБД Access: об'єкти, створення таблиць, запитів, форм.

    курсовая работа [13,9 M], добавлен 09.01.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.