⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tb_pll_top1.cpp

📁 新型的SystemC-AMS语言
💻 CPP
字号:
#include "systemc-ams.h"#include "../phc/phc.h"#include "../lp1/lp1.h"#include "../vco/vco.h"SCA_SDF_MODULE(src_sin) {   sca_sdf_out<double>  out;      double ampl, freq;      void sig_proc() {      out.write(ampl*sin(2*M_PI*freq*sc_time_stamp().to_seconds()));   }      SCA_CTOR(src_sin) {} };SCA_SDF_MODULE(trace){   sca_sdf_in<double> in;   ofstream output;   void sig_proc() {      output << sc_time_stamp().to_seconds() << "\t " << in.read() << endl;   }   SCA_CTOR(trace) {      output.open(name(), ios::out);   }};int sc_main(int argc, char* argv[]){   sca_sdf_signal<double>  ref, pco, lpo, vcoo;      sc_set_time_resolution(0.001, SC_US);   phc i_phc("phc");      i_phc.in1(ref);      i_phc.in2(vcoo);      i_phc.out(pco);      i_phc.kpc = 3.72;         lp1 i_lp1("lp1");      i_lp1.in(pco);      i_lp1.out(lpo);      i_lp1.fp = 112e3;      i_lp1.h0 = 1.0;            vco i_vco("vco");      i_vco.in(lpo);      i_vco.out(vcoo);      i_vco.out.set_delay(1);  // feedback loop!      i_vco.gain = 1.0;      i_vco.kvco = 3e4;      i_vco.fc = 7e6;      i_vco.vfc = 0.0;   src_sin src_ref("src_ref");      src_ref.out(ref);      src_ref.out.set_T(sc_time(0.001, SC_US));      src_ref.ampl = 1.0;      src_ref.freq = 7e6;         trace tr_ref("tr_ref1");      tr_ref.in(ref);         trace tr_pco("tr_pco1");      tr_pco.in(pco);         trace tr_lpo("tr_lpo1");      tr_lpo.in(lpo);         trace tr_vcoo("tr_vcoo1");      tr_vcoo.in(vcoo);         sc_start(120, SC_US);   system("PAUSE");   return 0;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -