DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

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

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

SystemC: інсталяція і користування. Елементарна модель Hello World

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних технологій, автоматики та метрології
Факультет:
Факультет комп’ютерних інформаційних технологій
Кафедра:
Електронні обчислювальні машини

Інформація про роботу

Рік:
2007
Тип роботи:
Лабораторна робота
Предмет:
Дослідження та проектування комп’ютерних систем і мереж
Група:
КСМм-1
Коротко про документ

Про що ця робота

У звіті розглянуто процес інсталяції та використання бібліотеки SystemC на прикладі створення елементарної моделі Hello World. Наведено огляд основних характеристик бібліотеки та результати виконання програми.

У роботі розглядаються

  • SystemC
  • Моделювання апаратного забезпечення
  • Об'єктно-орієнтоване програмування
  • Мови опису апаратури
  • Симуляція електронних систем

Зміст і розділи

  1. Мета роботи
  2. Теоретичні відомості
  3. Характеристики бібліотеки SystemC
  4. Виконання роботи
  5. Структура програми Hello World
  6. Результати роботи програми
  7. Висновок
Для кого:Студенти технічних спеціальностей вищих навчальних закладів, які вивчають проектування комп'ютерних систем.
Викладачі:Не вказано

Ключові поняття

SystemCмодульпроцеспортсигналC++Hello Worldсинхронізаціятип даних

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти та науки України Національний університет „Львівська політехніка” кафедра ЕОМ Звіт про виконання лабораторної роботи №4 з курсу „ Дослідження та проектування комп’ютерних систем і мереж” на тему: SystemC : інсталяція і користування. Елементарна модель Hello World Львів – 2007 Мета роботи: ознайомитись з бібліотекою класів SystemC та структурою елементарного проекту Hello world. Теоретичні відомості SystemC – це бібліотека класів С++, яка виникла у відповідь на все більш зростаючі потреби у мові, яка б збільшувала продуктивність роботи розробників електронних систем. Сучасні системи зазвичай містять в своєму складі програмну та апаратну частини, що розробляються у вкрай жорстких часових рамках та вимогах до продуктивності, що вимагає всебічної функціональної перевірки розробленої системи для запобігання виникненню помилок. SystemC пропонує значний виграш у продуктивності завдяки поєднанню процесів проектування програмної та апаратної частин системи на вищому рівні абстракції. Цей рівень надає розробнику можливість вже на початку проектування побачити структуру системи в цілому, таким чином легше уявляючи процес взаємодії між її окремими частинами, виявити «проблемні місця», провести верифікацію на більш ранніх етапах проектування. Власне кажучи, SystemC не є тією «панацеєю», що обіцяє вирішити усі проблеми розробників. Однак, при появі цієї бібліотеки разом з бібліотекою тестування SystemC Verification Library в них поєдналися багато характеристик, які були повністю відсутні чи слабо представлені в інших мовах проектування. Характеристики бібліотеки SystemC: SystemC є засобом сумісного проектування апаратури та програмного забезпечення, а також опису архітектури складних систем завдяки наступним характеристикам: Модулі – у SystemC є поняття контейнеру класу, що має назву «модуль». Це є ієрархічна структура, що може містити інші модулі та (чи) процеси. Процеси – процеси використовуються для функціонального опису системи. Процеси входять до складу модулів. SystemC підтримує три різні абстракції процесів для використання розробниками ПЗ та апаратури. Порти – модулі містять порти, що використовуються для з’єднання з іншими модулями. SystemC підтримує одно – та двонаправлені порти. Сигнали – SystemC підтримує як складні, так і прості сигнали. Складні сигнали можуть мати більш ніж одне джерело. Великий набір типів даних - SystemC має великий набір типів даних для підтримки багатьох областей проектування та рівнів абстракції. Типи даних з фіксованою точністю використовуються для швидкої симуляції. Типи даних з довільною точністю використовуються для операцій з великими значеннями. Сигнали синхронізації – SystemC має спеціальний набір сигналів синхронізації. Виконання роботи 1. Для початку роботи з бібліотекою класів SystemC потрібно виконати інсталяцію компілятора С++. В якості компілятора використаємо безкоштовний С++ компілятор від фірми Borland. Після розархівування файлів компілятора запускаємо на виконання файл SystemC_Win.exe з директорії SystemC_Win1.0 Beta\Bin. При першому запуску система видає повідомлення про необхідність вказати шлях до С++ компілятора, що і потрібно зробити, вказавши шлях до директорії, куди було розархівовано компілятор. 2. У меню File\Open Project вибираємо проект «Hello World».  Рисунок 1. Вигляд проекту в середовищі SystemC_Win 3. Командою Project/Run запускаємо проект на виконання. Спостерігаємо результати роботи. Структура програми Hello World, призначення кожної складової частини, опис команд та параметрів // Black and Donovan, p.48 #include <systemc.h> #include <iostream> SC_MODULE(hello_systemC) // оголошення класу модуля { sc_in_clk iclk; // оголошення порту синхронізації SC_CTOR(hello_systemC) { // конструктор SC_METHOD(main_method) ; // головний метод (процес) sensitive << iclk.neg(); // чутливість до негативного фронту clk dont_initialize(); // не виконувати ініціалізуючий виклик } void main_method(void) { // реалізація головного методу std::cout << sc_time_stamp() << "Hello world!" << std::endl; } }; int sc_main(int argc, char* argv[]) { // оголошення часової константи - 8 наносекунд const sc_time t_PERIOD (16,SC_NS); // створення періодичного сигналу синхронізації sc_clock clk ("clk", t_PERIOD); // створення екземпляру класу hello_systemC hello_systemC U1 ("iHelloWorld"); // з'єднання clk з портом синхронізації U1.iclk(clk); // викликати симулятор sc_start(45,SC_NS); return (0); } Результати роботи програми 4 ns Hello world! 12 ns Hello world! 20 ns Hello world! 28 ns Hello world! 36 ns Hello world! 44 ns Hello world! SystemC 2.0 --- Nov 18 2001 14:42:05 Copyright (c) 1996-2001 by all Contributors ALL RIGHTS RESERVED Висновок: при виконанні даної лабораторної роботи я ознайомився з бібліотекою класів SystemC та структурою елементарного проекту Hello world.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!