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

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

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

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

Звіт до лабораторної роботи №2 з дисципліни «Комп'ютерні системи». Ознайомлення з основними конструкціями мови моделювання System C

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

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

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

Рік:
2018
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Комп’ютерні системи
Група:
КН-31
Коротко про документ

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

У звіті наведено результати виконання лабораторної роботи №2 з дисципліни «Комп'ютерні системи». Розроблено програму для ознайомлення з основними конструкціями мови моделювання System C.

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

  • System C
  • Моделювання апаратних систем
  • Модулі System C
  • Порти введення-виведення
  • Синхронізація
  • Лабораторна робота
  • Комп'ютерні системи

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

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

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

System Csc_modulesc_insc_outsc_signalclkсигнал синхронізаціїмоделюваннялабораторна роботакомп'ютерні системи

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

Міністерство освіти і науки України Національний університет “Львівська політехніка” / Звіт До лабораторної роботи №2 З дисципліни: «Комп'ютерні системи» на тему: «Ознайомлення з основними конструкціями мови моделювання System C» Мета роботи: Ознайомитися з основними конструкціями мови моделювання System C. Хід роботи Варіант – 6 Х = 6 Y = 167 Реалізувати модулі S1 та S2, разом з логікою їх функціонування згідно варіанту, провести послідовне з’єднання S1 та S2 ініціалізувати необхідні порти на S1. На вхід S2 подати вихідні порти модуля S1. До кожного модуля заводиться зовнішній вхідний для всіх сигнал синхронізації CLK. Результати подати на модуль Display для відображення. S1 2 вихідних порта o1, o2 o1 = X – Y; o2 = (X + Y / 2.0) && (X >> 2); S2 r1 = a * b , r2 = 6; Схема зв’язків модулів Код програми #ifndef TEST_SYSTEMC_S1_H #define TEST_SYSTEMC_S1_H #include "systemc.h" #include "cmath" #include "s2.h" SC_MODULE (S1) { sc_in<int> x; sc_in<int> y; sc_out<int> o1; sc_out<int> o2; sc_in<bool> clk; SC_CTOR(S1) { SC_METHOD(calc_o2); sensitive << x << y; sensitive_pos << clk; SC_METHOD(calc_o1); sensitive << x << y; sensitive_pos << clk; } void calc_o2() { int x_val = x.read(); int y_val = y.read(); double acc = 0; acc += ((x_val + y_val) / 2.0) & (2 >> x_val); o2.write(acc); } void calc_o1() { int x_val = x.read(); int y_val = y.read(); o1.write(x_val - y_val); } }; #endif //TEST_SYSTEMC_S1_H// s2.h #ifndef TEST_SYSTEMC_S2_H #define TEST_SYSTEMC_S2_H #include "systemc.h" SC_MODULE(S2) { sc_in<int> a; sc_in<int> b; sc_out<int> r1; sc_out<int> r2; sc_in<bool> clk; SC_CTOR(S2) { SC_METHOD(calc_r1); sensitive << a << b; sensitive_pos << clk; SC_METHOD(calc_r2) sensitive << a << b; sensitive_pos << clk; } void calc_r1() { int a_val = a.read(); r1.write(a_val * a_val); } void calc_r2() { int b_val = b.read(); r2.write(6); } }; #endif //TEST_SYSTEMC_S2_H // main.cpp #include <iostream> #include <systemc.h> #include "s1.h" #include "s2.h" int sc_main(int argc, char *argv[]) { sc_signal<int> x{"x", 6}; sc_signal<int> y{"y", 167}; sc_signal<int> o2{"o2"}; sc_signal<int> o1{"o1"}; sc_signal<int> r1{"r2"}; sc_signal<int> r2{"r1"}; sc_clock clk("clk", 1, SC_NS, 0.5); S1 s1("s1"); S2 s2("s2"); s1.clk(clk); s2.clk(clk); s1.x(x); s1.y(y); s1.o2(o2); s1.o1(o1); s2.a(o2); s2.b(o1); s2.r1(r1); s2.r2(r2); sc_start(10, SC_NS); std::cout << "x: " << x.read() << std::endl; std::cout << "y: " << y.read() << std::endl; std::cout << "r1: " << r1.read() << std::endl; std::cout << "r2: " << r2.read() << std::endl; return 0; } Результат виконання x: 6 y: 167 r1: 13568067 r2: 6 Висновок: на даній лабораторній роботі я ознайомився з основними конструкціями мови моделювання System C. Створив програму та відлагодив її за допомогою System C .
Допоможи студентському архіву

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

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

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

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

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

Admin

26.02.2023 12:38

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