Ознайомлення з основними конструкціями мови моделювання System C

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

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

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

Рік:
2023
Тип роботи:
Лабораторна робота
Предмет:
Комп ютерні системи обробки текстової та графічної інформації

Частина тексту файла

???????????? ?????? ? ????? ??????? ???????????? ??????????? ????????? ??????????? ??????? ??? / ???? ?? ???????????? ?????? ? 2 ? ?????????? ?????????? ??????? ?? ????: ???????????? ? ????????? ????????????? ???? ??????????? System C ??????? ?14 ???? ??????: ???????????? ? ????????? ????????????? ???? ??????????? System C. ???????? ? = 14. ? ???????? ?? ??????? ? ???????. Y = 90 + 86 = 169. ???? ASCII code ?????? ?????? ????????(Z) + ?????? ?????? ?????(V). ??????????? ?????? S1 ?? S2, ????? ? ??????? ?? ?????????????? ?????? ????????, ???????? ?????????? ???????? S1 ?? S2 ?????????????? ????????? ????? ?? S1. ?? ???? S2 ?????? ??????? ????? ?????? S1. ?? ??????? ?????? ?????????? ????????? ??????? ??? ???? ?????? ????????????? CLK. ?????????? ?????? ?? ?????? Display ??? ????????????. 4) 2 ???????? ????? power, f1 power = Pow(X, Y) ; f1 = X * 1 + X * 2 + X * 3 + . + X * Y; ????????? r1 = a * a, r2 = b * b; ??? ?????? / ???.1. ???????? ????? ?????????? ?? ???????? / ???.2. ????????? ????????? ???????? ??? ???????? S1_Unit.h #pragma once #include "systemc.h" SC_MODULE(S1_Unit) { sc_in x_in, y_in; sc_out power_out, f1_out; void outPower() { int tempx = pow(x_in.read(), y_in.read()); power_out.write(tempx); } void outF1() { outPower(); int temp = 0; int tempx = 0; for (int i = 1; i <= y_in.read(); i++) { tempx = x_in * i; temp += tempx; } f1_out.write(temp); } SC_CTOR(S1_Unit) { SC_METHOD(outF1); sensitive << x_in << y_in; } }; S2_unit.h #pragma once #include "systemc.h" #include "S1_Unit.h" SC_MODULE(S2_Unit) { sc_in power_in, f1_in; sc_out r1, r2; void OutR1() { int result1 = power_in.read() * power_in.read(); r1.write(result1); } void OutR2() { OutR1(); int result2 = f1_in.read() * f1_in.read(); r2.write(result2); } SC_CTOR(S2_Unit) { SC_METHOD(OutR2); sensitive << power_in << f1_in; } }; Monitor.h #pragma once #include "systemc.h" #include SC_MODULE(Monitor) { sc_in X, Y; sc_in Power, F1; sc_in R1, R2; sc_in CLK; void monitor() { cout << std::setw(15) << "Time"; cout << std::setw(7) << "X"; cout << std::setw(7) << "Y"; cout << "\t" << std::setw(7) << "Power"; cout << std::setw(14) << "F1"; cout << std::setw(14) << "R1"; cout << std::setw(18) << "R2" << endl; for (int i = 0; i < 3; i++) { cout << std::setw(15) << sc_time_stamp(); cout << std::setw(7) << X.read(); cout << std::setw(7) << Y.read(); cout << "\t" << std::setw(5) << Power.read(); cout << std::setw(15) << F1.read(); cout << std::setw(15) << R1.read(); cout << std::setw(18) << R2.read() << endl; wait(); } sc_stop(); } SC_CTOR(Monitor) { SC_THREAD(monitor); sensitive << CLK.pos(); } }; Stimulator.h #pragma once #include "systemc.h" SC_MODULE(Stimulator) { sc_out X, Y; sc_in CLK; void Generator() { X.write(14); Y.write(80 +89); wait(); } SC_CTOR(Stimulator) { SC_THREAD(Generator); sensitive << CLK.pos(); } }; lab2.cpp #include "systemc.h" #include "Stimulator.h" #include "Monitor.h" #include "S1_Unit.h" #include "S2_Unit.h" int sc_main(int argc, char* argv[]) { sc_signal XSig, YSig; sc_signal PowerSig, F1Sig; sc_signal R1Sig, R2Sig; sc_clock TestClk("TestClock", 10, SC_NS, 0.5); Stimulator Stim1("stim"); Stim1.X(XSig); Stim1.Y(YSig); Stim1.CLK(TestClk); S1_Unit first_part("S1_Unit"); first_part.x_in(XSig); first_part.y_in(YSig); first_part.power_out(PowerSig); first_part.f1_out(F1Sig); S2_Unit second_part("S2_Unit"); second_part.power_in(PowerSig); second_part.f1_in(F1Sig); second_part.r1(R1Sig); second_part.r2(R2Sig); Monitor Monitor1("monitor"); Monitor1.X(XSig); Monitor1.Y(YSig); Monitor1.Power(PowerSig); Monitor1.F1(F1Sig); Monitor1.R1(R1Sig); Monitor1.R2(R2Sig); Monitor1.CLK(TestClk); sc_start(); return 0; } ????????: ?? ????? ???????????? ?????? ? ???????????? ? ?????????????, ????????????? ?? ?????? ????????? ????????? ???? ??????????? SystemC, ??????? ??????????? ???????? ???? ??????????? ???????? SystemC, ??? ?????? ???? ??????????? ?? ???????? (?????????), ??? ? ?????????? ??????.
Антиботан аватар за замовчуванням

01.01.1970 00:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

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

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

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Новини