230 likes | 355 Vues
Modeling and Refining Heterogeneous Systems With SystemC-AMS: Application to WSN. M. Vasilevski F. Pecheux, N. Beilleau, H. Aboushady K. Einwich*. Laboratory LIP6 University Pierre and Marie Curie, Paris 6, France *Fraunhofer IIS/EAS, Dresden, Germany. March 2008. Issues
E N D
Modeling and Refining HeterogeneousSystems With SystemC-AMS: Application to WSN M. Vasilevski F. Pecheux, N. Beilleau, H. Aboushady K. Einwich* Laboratory LIP6 University Pierre and Marie Curie, Paris 6, France *Fraunhofer IIS/EAS, Dresden, Germany March 2008
Issues • SystemC-AMS Language • Models of Computation • SDF Behavioral Description • SDF Multi-rates • RF and AMS Modeling • AMS Models • RF Models • Wireless Sensor Network Node • Conclusion
Issues : Mixed Systems Design Matlab Verilog-A VHDL-AMS Spice SystemC Verilog VHDL Matlab Verilog-A VHDL-AMS Spice-RF A/D Converter Microcontroller RF Transceiver University Paris 6 Fraunhofer IIS/EAS
Issues • SystemC-AMS Language • Models of Computation • SDF Behavioral Description • SDF Multi-rates • RF and AMS Modeling • AMS Models • RF Models • Wireless Sensor Network Node • Conclusion
2.a Models of Computation SystemC-AMS SystemC Synchronous Data Flow Linear Network • Models of computation : • Conservative Linear network • Synchronous Data Flow SDF Modeling Formalism LN Modeling Formalism Other Modeling Formalism DE, MoCs (CP,FSM, etc…) LN Solver Other Solver Synchronisation Layer SystemC Simulation Kernel University Paris 6 Fraunhofer IIS/EAS
2.b SDF Behavioral Description SCA_SDF_MODULE(B) B SCA_SDF_IN<double> Input Output SCA_SDF_OUT<double> Behaviour void sig_proc( ) A C University Paris 6 Fraunhofer IIS/EAS
2.c SDF Multi-Rates Simulation sample time Simulation rates Cluster Tin Tout A B C 1 2 1 3 2 1 16 kHz 8 Hz 48 kHz 24 kHz University Paris 6 Fraunhofer IIS/EAS
Issues • SystemC-AMS Language • Models of Computation • SDF Behavioral Description • SDF Multi-rates • RF and AMS Modeling • AMS Models • RF Models • Wireless Sensor Network Node • Conclusion
3.a AMS models : Integrator SCA_SDF_MODULE (integrator) { sca_sdf_in < double >in; sca_sdf_out < double >out; double f; sca_vector < double >NUM,DEN,S; sca_ltf_nd ltf1; void set_coeffs(double A){ DEN (0) = 0.0; DEN (1) = 1.0; NUM (0) = A; } void sig_proc(){ out.write( ltf1(NUM, DEN, S, in.read())); } SCA_CTOR (integrator) {}}; In/Out ports Other Attributes Initialisation method Signal processing method University Paris 6 Fraunhofer IIS/EAS
3.a AMS models : Decimator SCA_SDF_MODULE (decimator) { sca_sdf_in < double >in; sca_sdf_out < double >out; double old_input; void init(){ in.set_rate(2); out.set_rate(1); old_input=0; } void sig_proc(){ double input=in.read(0)/2; out.write(old_input+input); old_input=input; } SCA_CTOR (decimator){} }; Decimator 2 2 2 University Paris 6 Fraunhofer IIS/EAS
Issues • SystemC-AMS Language • Models of Computation • SDF Behavioral Description • SDF Multi-rates • RF and AMS Modeling • AMS Models • RF Models • Wireless Sensor Network Node • Conclusion
3.b RF models a1 = f(Power gain, Rin, Rout) a3 = f(a1, IIP3) Na = f(NF) Power gain IIP3 NF Rin Rout Na input output a1x+a3x³ Rout Rin University Paris 6 Fraunhofer IIS/EAS
3.b RF models : IIP3 and Noise Figure Test FFT BW = 120kHz Power Gain = 10 dB Input amplitude = -16.02 dBm IIP3 = 10 dBm NF = 30 dB University Paris 6 Fraunhofer IIS/EAS
3.b RF models : Baseband Equivalent X(t) = DC + I1cos(wt) + I2cos(2wt) + I3cos(3wt) + Q1cos(wt) + Q2cos(2wt) + Q2cos(3wt) DC I2 I3 I1 xBB(t) = w 2w 3w 0 Q1 Q2 Q3 University Paris 6 Fraunhofer IIS/EAS
3.b RF models : Baseband Equivalent Implementation class BB{ double DC,I1,I2,I3, Q1,Q2,Q3; ... BB operator+(BB x)const{ BB z(this->DC+x.DC, this->I1+x.I1, this->I2+x.I2, this->I3+x.I3, this->Q1+x.Q1, this->Q2+x.Q2, this->Q3+x.Q3); return z; } ... }; SCA_SDF_MODULE (adder) { sca_sdf_in < double >inI; sca_sdf_in < double >inQ; sca_sdf_out < double >out; ... void sig_proc () { out.write (inI.read()+ inQ.read()); }... SCA_SDF_MODULE (adder) { sca_sdf_in < BB >inI; sca_sdf_in < BB >inQ; sca_sdf_out < BB >out; ... void sig_proc () { out.write (inI.read()+ inQ.read()); }... University Paris 6 Fraunhofer IIS/EAS
Issues • SystemC-AMS Language • Models of Computation • SDF Behavioral Description • SDF Multi-rates • RF and AMS Modeling • AMS Models • RF Models • Wireless Sensor Network Node • Conclusion
Wireless Sensor Network Node • Wireless sensor network for environmental and physical monitoring: • Temperature, vibration, pressure, motion, polluants University Paris 6 Fraunhofer IIS/EAS
Wireless Sensor Network Node modulator SystemC-AMS SystemC ATMEGA128 8 bits A/D Converter Microcontroller RF Transceiver 2nd order OSR=64 10 bits RZ feedback Application Binary File QPSK fc=2.4GHz decimator 2.4 MHz 8.53 MHz 2.4 GHz University Paris 6 Fraunhofer IIS/EAS
Wireless Sensor Network Node filter mux encoder demux LNA filter ADC : decimator + + - - DAC RF : QPSK 2.4 GHz University Paris 6 Fraunhofer IIS/EAS
Wireless Sensor Network Node : Results Noisy channel DC offset Frequencyoffset Phase mismatch University Paris 6 Fraunhofer IIS/EAS
Wireless Sensor Network Node : Results University Paris 6 Fraunhofer IIS/EAS
Conclusion • Advantages to use SystemC-AMS: • Digital and Analog-Mixed Signal systems simulation • Interface with SystemC • Simulations very fast • C++ based • Polymorphism • Easy to refine components with C++ inheritance ability • Generic declaration of components with C++ templates • Easy software programmer contribution • Example of a free FFT library used for IIP3 test. University Paris 6 Fraunhofer IIS/EAS