Перейти к содержанию
    

VHDL в MATLAB

Подскажите пожалуйста! С помощью MATLAB и Filter Design HDL Coder был создан vhdl файл. Можно ли с помощью комментариев добавляемых матлабом в данный файл воссоздать его первоначальный вид? Или как сделать то же самое по vhdl-коду? Матлабовский коммент представлен ниже:

 

-- Module: lowpass400kHz_4mHz_16

--

-- Generated by MATLAB® 7.8 and the Filter Design HDL Coder 2.4.

--

--

-- -------------------------------------------------------------

 

-- -------------------------------------------------------------

-- HDL Code Generation Options:

--

-- TargetLanguage: VHDL

-- FIRAdderStyle: tree

-- OptimizeForHDL: on

-- ClockEnableInputPort: clk_en

-- ResetInputPort: res

-- TargetDirectory: C:\Actelprj

-- AddPipelineRegisters: on

-- InputPort: f_in

-- OutputPort: f_out

-- Name: lowpass400kHz_4mHz_16

-- DALUTPartition: [8 8 1]

-- TestBenchName: Hlp2_tb

--

-- Filter Settings:

--

-- Discrete-Time FIR Filter (real)

-- -------------------------------

-- Filter Structure : Direct-Form FIR

-- Filter Length : 17

-- Stable : Yes

-- Linear Phase : Yes (Type 1)

-- Arithmetic : fixed

-- Numerator : s12,14 -> [-1.250000e-001 1.250000e-001)

-- Input : s12,11 -> [-1 1)

-- Filter Internals : Full Precision

-- Output : s26,25 -> [-1 1) (auto determined)

-- Product : s23,25 -> [-1.250000e-001 1.250000e-001) (auto determined)

-- Accumulator : s26,25 -> [-1 1) (auto determined)

-- Round Mode : No rounding

-- Overflow Mode : No overflow

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А в чем проблема? Судя по представленным комментариям - это стандартный КИХ-фильтр 16 порядка. Просто создать этот фильтр в Матлабе или Симулинке, и вручную вбить его коэффициенты из кода.

Изменено пользователем SemperAnte

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А в чем проблема? Судя по представленным комментариям - это стандартный КИХ-фильтр 16 порядка. Просто создать этот фильтр в Матлабе или Симулинке, и вручную вбить его коэффициенты из кода.

 

Матлаб недавно стал использовать и пока что плохо им владею. Вы не могли бы подсказать как воссоздать фильтр (привести примерчик)? Буду премного благодарен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Матлаб недавно стал использовать и пока что плохо им владею. Вы не могли бы подсказать как воссоздать фильтр (привести примерчик)? Буду премного благодарен.

 

На днях решал похожую задачу для двукаскадного БИХ-фильтра. Матлаб код был такой:

 

b1=[16384,-1782,917];
a1=[16384,-32126,15756];
b2=[16384,-1824,917];
a2=[16384,-32510,16166];
g=[917,917];

dr=2^19;
b1=b1./dr;
a1=a1./dr;
b2=b2./dr;
a2=a2./dr;
g=g./dr;

Hd = dfilt.df2sos(b1,a1,b2,a2,g);
fvtool(Hd);

 

Здесь, в первом абзаце создаются вектора с коэффициентами из HDL-кода, во втором нормируются к единице, в третьем командой dfilt.df2sos создаётся нужная структура фильтра. В вашей задаче структура фильтра другая - нужно найти в Матлабовской справке соответствующую команду (по-моему dfilt.df1, но не уверен).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

огромное спасибо, попробую! Пытаюсь воспроизвести его через filter design toolbox. Если получится выложу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите, кто знает?

Есть ли возможность обратно загнать VHDL-модуль в Матлаб, чтобы посмотреть поведение на тестах?

Стоит задача незнакомый проект модифицировать по частям... Если да, то подскажите, где об этом можно почитать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите, кто знает?

Есть ли возможность обратно загнать VHDL-модуль в Матлаб, чтобы посмотреть поведение на тестах?

Стоит задача незнакомый проект модифицировать по частям... Если да, то подскажите, где об этом можно почитать?

 

В сам Матлаб не знаю, но в симулинк при помощи System Generator`a просто делается:

 

Там есть компонент blackbox - в него вставляете файл .vhd, и он в виде блока с портами в модели симулинка появится.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите, кто знает?

Есть ли возможность обратно загнать VHDL-модуль в Матлаб...

Вы можете вывести вектора результаты работы модуля в текстовый файл затем загрузить их в Matlab и проанализировать.

Изменено пользователем hsoft

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...