SystemC AMS - SystemC AMS
SystemC AMS является расширением SystemC для аналоговых, смешанных сигналов и радиочастот.[1] Стандарт SystemC AMS 2.0 был выпущен 6 апреля 2016 г. как IEEE Std 1666.1-2016.
Спецификация языка
ToDo: описание
Особенности языка
ToDo: описание
MoC - Модель вычислений
А модель вычисления (MoC) - это набор правил, определяющих поведение и взаимодействие между примитивными модулями SystemC AMS. SystemC AMS определяет следующие модели вычислений: синхронизированный поток данных (TDF), линейный поток сигналов (LSF) и электрические линейные сети (ELN).
TDF - синхронизированный поток данных
ToDo: описание
ELN - электрические линейные сети
ToDo: описание
LSF - линейный поток сигналов
ToDo: описание
Порты
Определение входящего / выходящего TDF:
sca_tdf ::sca_insca_tdf ::sca_out<PortType>
Определение входящего / выходящего преобразователя TDF:
sca_tdf ::sc_in// DE → TDF inport sca_tdf ::sc_out // TDF → DE outport
Определение терминала ELN:
sca_eln ::sca_terminal
Узлы
sca_eln ::sca_node // Узел ELN sca_eln ::sca_node_ref // Ссылочный узел ELN
Кластер
ToDo: описание
Отслеживание
sca_trace_file *tf = sca_create_tabular_trace_file("trace_file_name.dat"); sca_trace(tf, <ПОРТ|СИГНАЛ|УЗЕЛ>, "имя");
Пример кода
TDF
Модель Timed-Data-Flow 1-го порядка нижних частот:
#включают <systemc-ams>с помощью пространство имен sca_util; // введено для удобства: sca_util :: sca_vector → sca_vector с помощью пространство имен sca_core; // введено для удобства: sca_core :: sca_time () → sca_time ()с помощью пространство имен sca_ac_analysis; // введено для удобства: sca_ac_analysis :: sca_ac () → sca_ac ()SCA_TDF_MODULE(tdf_low_pass){ // Порты TDF sca_tdf::sca_in<двойной> inp; sca_tdf::sca_out<двойной> выход; // параметры двойной fcut; // частота среза // методы пустота инициализировать(); // обратный вызов симулятора для инициализации пустота ac_processing(); // обратный вызов симулятора для реализации поведения переменного тока пустота обработка(); // обратный вызов симулятора для реализации времени // конструктор SCA_CTOR(tdf_low_pass) { fcut = 1.0e3; // частота среза 1 кГц }частный: sca_vector<двойной > число; // коэффициенты числителя sca_vector<двойной > логово; // коэффициенты де-числителя sca_vector<двойной > государственный; // вектор состояния sca_tdf::sca_ltf_nd ltf_nd; // линейная передаточная функция (тип числителя / де-числителя)};
линейная передаточная функция:
// инициализируем коэффициенты линейной передаточной функциипустота tdf_low_pass::инициализировать(){ число(0) = 1.0; логово(0) = 1.0; логово(1) = 1.0/(2.0*M_PI*fcut);}
ToDo: описание
// реализация ACпустота tdf_low_pass::ac_processing(){ sca_ac(выход) = sca_ac_ltf_nd(число, логово, sca_ac(inp));}
ToDo: описание
// реализация во временной областипустота tdf_low_pass::обработка(){ выход = ltf_nd(число, логово, государственный, inp);}
ЭЛЬ Н
Список цепей нижних частот 1-го порядка Electric-Linear-Networks:
SC_MODULE(eln_low_pass_netlist){ // терминалы sca eln sca_eln::sca_terminal n1; sca_eln::sca_terminal n2; // внутренние узлы sca_eln::sca_node_ref земля; // модули eln sca_eln::шрам i_r; sca_eln::sca_c IC; SC_CTOR(eln_low_pass_netlist) : i_r("i_r"), IC("IC") { i_r.ценить = 1.0; i_r.п.связывать(n1); i_r.п.связывать(n2); IC.ценить = 1.0/(2.0*M_PI*1.0e3); IC.п.связывать(n2); IC.п.связывать(земля); }};
LSF
Список соединений Linear-Signal-Flow:
История
Исследовательская группа SystemC AMS была основана в 2002 году для разработки и сопровождения расширений SystemC для аналоговых и смешанных сигналов, а также для создания рабочей группы по OSCI (инициатива Open SystemC) SystemC-AMS. Исследовательская группа провела первоначальные исследования, а также определила и внедрила расширение SystemC, чтобы продемонстрировать осуществимость этого подхода. В 2006 году была профинансирована рабочая группа SystemC AMS, которая продолжила работу исследовательской группы внутри OSCI, а теперь продолжает работу над SystemC AMS в рамках Accellera Системная инициатива, результатом которой стал стандарт AMS 1.0 в 2010 году. После выпуска стандарта Accellera SystemC AMS 2.0 в 2013 году стандарт был передан в IEEE Standards Association в 2014 году для дальнейшего внедрения и поддержки в отрасли. Стандарт SystemC AMS был выпущен 6 апреля 2016 г. как IEEE Std 1666.1-2016.[2][3] COSEDA Technologies COSIDE предоставляет первую коммерчески доступную среду проектирования на основе стандарта SystemC AMS.
Рекомендации
- ^ «SystemC AMS». Accellera.org. Получено 2016-08-01.
- ^ «SystemC AMS (аналоговый / смешанный сигнал)». Accellera.org. Получено 2016-08-01.
- ^ «SystemC-AMS и проектирование встроенных систем со смешанными сигналами». www.systemc-ams.org. Получено 2016-08-01.
внешняя ссылка
- Симулятор фазовой автоподстройки частоты в SystemC AMS - Америко Диас - Ключевые слова: ФАПЧ, ФАПЧ, SystemC-AMS.