22 penjadwalan statis yang dihitung sebelum mulai simulasi. Jadwal ini diaktifkan
dalam langkah waktu diskrit, di mana sinkronisasi dengan kernel SystemC memperkenalkan semantik waktunya. Karena itu, disebut time aliran data
TDF. Pada Gambar 3.3 memperlihatkan AMS untuk bahasa standart SystemC[7].
Gambar 3.3 AMS untuk bahasa standart SystemC
3.4.1 Pemodelan Timed Data Flow TDF
SystemC AMS menentukan bentuk pemodelan penting yang diperlukan untuk mendukung sifat pemodelan AMS pada berbagai tingkat abstraksi. Bentuk
pemodelan ini diimplementasikan dengan menggunakan berbagai model perhitungan yaitu, Timed Data Flow TDF, Linear Signal Flow LSF, dan
Electrical Linear Networks ELN. Dalam hal ini bentuk pemodelan yang digunakan adalah Timed Data Flow TDF[7].
Universitas Sumatera Utara
23 Model perhitungan Timed Data Flow TDF, didasarkan pada pemodelan
Synchronous Data Flow SDF. Tidak seperti model SDF dibatasi waktu perhitungan, TDF adalah pemodelan waktu diskrit, yang menganggap data
sebagai sinyal sampel dalam waktu. Sinyal ini ditandai titik-titik diskrit dalam waktu dan membawa nilai-nilai diskrit atau kontiniu seperti amplitudo[7].
Gambar 3.4 menunjukkan prinsip dasar dari pemodelan Timed Data Flow TDF. Dalam gambar ini, ada tiga modul TDF berkomunikasi yang disebut A, B,
dan C. Model TDF A terdiri dari satu set tersambung modul TDF, yang membentuk grafik diarahkan disebut cluster TDF. Modul TDF adalah simpul dari
grafik, dan sinyal TDF sesuai dengan tepi. Sebuah modul TDF memiliki beberapa port input dan output. [7]
Modul TDF berisi metode C++ yang menghitung fungsi matematika fyaitu, fA, fB, dan fC, yang tergantung pada input dan keadaan internal. Perilaku
keseluruhan dari cluster itu didefinisikan sebagai komposisi matematis dari fungsi modul TDF yang sesuai, fC fB fA ..., ditandai dengan A - B - C pada
Gambar 3.4[7].
Gambar 3.4 Sebuah dasar model TDF dengan 3 modul TDF dan 2 sinyal TDF
Universitas Sumatera Utara
24
3.4.2 Konstruksi bahasa modul TDF
Sebuah modul TDF adalah modul primitif yang ditetapkan pengguna untuk menetapkan waktu diskrit atau untuk menanamkan waktu kontiniu. Gambar
3.5 menunjukkan struktur khas modul TDF.
Gambar 3.5 Struktur Khas Modul TDF
SCA_TDF_MODULEmy_tdf_module 1
{ deklarasi port
sca_tdf::sca_indouble in;
2
sca_tdf::sca_outdouble out; SCA_CTORmy_tdf_module {}
3
void set_attributes 4
{ atribut modul dan port
}
void initialize 5
{ initial nilai dari port dengan sebual delay
}
void processing 6
{ time-domain sinyal processing atau algoritma
}
void ac_processing 7
{ small-signal frequency-domain
} };
class my_second_module : public sca_tdf::sca_module 8
{ public:
deklarasi port ...
my_second_module sc_core::sc_module_name {}
9 defenisi dari fungsi TDF member seperti diatas
… };
Universitas Sumatera Utara
25 Keterangan :
1. Deklarasi modul primitif menggunakan SCA_TDF_MODULE makro
untuk mendefinisikan kelas baru dari kelas sca_tdf::sca_module. 2.
Sebuah modul TDF dapat memiliki beberapa port input dan output. 3.
Perintah konstruktor menggunakan SCA_CTOR makro yang telah ditetapkan, yang perlu memiliki nama modul sebagai argumen.
4. Opsional fungsi member set_attributes, di mana TDF modul dan port
atribut dapat didefinisikan. User tidak diperbolehkan untuk memanggil fungsi member ini secara langsung. Hal ini disebut oleh kernel simulasi
selama elaborasi. 5.
Fungsi member opsional initialize, untuk inisialisasi anggota data yang mewakili bagian modul dan terutama awal port dengan penundaan
ditugaskan user tidak diizinkan untuk memanggil fungsi ini member secara langsung. Hal ini disebut oleh kernel simulasi, pada akhir elaborasi, tepat
sebelum simulasi transien dimulai. 6.
Perintah fungsi member processing, yang merangkum fungsi pengolahan sinyal yang sebenarnya. User tidak diperbolehkan untuk memanggil fungsi
member ini secara langsung. Hal ini disebut oleh kernel simulasi sebagai bagian dari waktu-domain transien simulasi, dimana setiap kemajuan
aktivasi modul waktu lokal oleh langkah waktu yang ditetapkan. 7.
Opsional fungsi member ac_processing, yang merangkum sinyal-kecil frekuensi-domain AC dan sinyal-kecil frekuensi-domain noise. User
tidak diperbolehkan untuk memanggil fungsi member ini secara langsung.
Universitas Sumatera Utara
26 Hal ini disebut oleh kernel simulasi ketika menjalankan sinyal kecil
analisis frekuensi-domain. 8.
Deklarasi modul TDF dengan membuat kelas baru berasal dari kelas sca_tdf::sca_module.
9. Konstruktor, dimana selalu memerlukan sebuah parameter sc_core kelas::
sc_module_name untuk menetapkan nama untuk modul.
Sebuah modul TDF mengandung unsur-unsur seperti port, sinyal, parameter dan fungsi member untuk timedomain transien dan domain frekuensi sinyal kecil
AC analisis[7].
3.4.3 Pemodelan waktu diskrit