Pemodelan Timed Data Flow TDF Konstruksi bahasa modul TDF

simulasi analog berinteraksi sistem sinyal campuran dan HW SW sistem di tingkat fungsional dan arsitektur. SystemC AMS memberikan dukungan untuk aliran sinyal, aliran data, dan jaringan listrik. Ekstensi sepenuhnya kompatibel dengan standar SystemC, jaringan listrik dan model aliran sinyal menggunakan linear DAE yang memecahkan sistem persamaan dan yang disinkronisasi dengan kernel SystemC. Penggunaan linear DAE membatasi jaringan dan komponen sinyal mengalir ke model linier untuk menyediakan kinerja tinggi simulasi. Data simulasi aliran dipercepat dengan menggunakan 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.

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[6]. 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[6]. 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 [6]. Universitas Sumatera Utara Modul TDF berisi metode C++ yang menghitung fungsi matematika f yaitu, 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.6[7]. Gambar 3.4 Sebuah dasar model TDF dengan 3 modul TDF dan 2 sinyal TDF

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. Contoh di bawah ini menunjukkan struktur khas modul TDF. SCA_TDF_MODULEmy_tdf_module 1 { port declarations sca_tdf::sca_indouble in; 2 sca_tdf::sca_outdouble out; SCA_CTORmy_tdf_module {} 3 void set_attributes 4 { Universitas Sumatera Utara module and port attributes } void initialize 5 { initial values of ports with a delay } void processing 6 { time-domain signal processing behavior or algorithm } void ac_processing 7 { small-signal frequency-domain behavior } }; class my_second_module : public sca_tdf::sca_module 8 { public: port declarations ... my_second_module sc_core::sc_module_name {} 9 definition of the TDF member functions as done above … }; Universitas Sumatera Utara 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. 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. Universitas Sumatera Utara Sebuah modul TDF mengandung unsur-unsur seperti port, sinyal, parameter dan fungsi member untuk time-domain transien dan domain frekuensi sinyal kecil AC analisis[7].

3.4.3 Pemodelan waktu diskrit