Pemodelan Timed Data Flow TDF Konstruksi bahasa modul TDF

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