0 / 0 / 0
Регистрация: 05.04.2018
Сообщений: 7
|
||||||
[VHDL] Расчет и реализация КИХ фильтра02.11.2018, 14:23. Показов 2348. Ответов 1
Метки нет Все метки)
(
Здравствуйте, У меня есть плата HELPER LMD-System c АЦП, ЦАП(в виде шим фильтра), cyclon 3.
Я новичок в этом деле делаю первый серьезный проект. Цель проекта научиться рассчитывать и создавать цифровые фильтры, а так же работать с ними. Мой проект состоит из: Генератора синусоиды, с регулятором частоты(от 200Гц до 5кГц), состоит из счетчиков, которые подают меняющийся по кругу двоичный код на ШИМ, а он создает аналоговый сигнал - синусоиду в положительной области. Далее Аналоговый сигнал поступает на вход АЦП-12 бит, снова преобразуется в двоичный код, затем поступает на ЦАП (2й канал ШИМ фильтра). Моя задача поставить фильтр между АЦП и ЦАП, который будет, например пропускать частоты ниже 1кГц, а все что выше задавливать. Суть проблемы: когда я рассчитываю ких фильтр, в матлабе, фиркомпиллере, либо на сайтах онлайн, мне выдают коэффициенты типа: -41 -120 -125 -22 105 68 -116 -175 130 637 890 637 130 -175 -116 68 105 -22 -125 -120 -41 Они отрицательные! У меня АЦП выдает только прямой код, ЦАП, так же понимает только положительный код! У меня одна идея в голове прибавить к этой последовательности цифр 175, чтобы самое маленькое отрицательное превратить в 0! Когда я это сделал мой фильтр начал задавливать в 0 вообще все частоты, почему? может мой подход не верный? если у кого-нибудь есть готовый, рабочий фильтр 12 бит на VHDL, поделитесь, для изучения. Вот код моего фильтра, c другими коэффицентами на них ненужно смотреть:
0
|
02.11.2018, 14:23 | |
Ответы с готовыми решениями:
1
Реализация КИХ-фильтра Реализация КИХ фильтра(теория) Реализация преобразования Гильберта с использованием КИХ-фильтра первого порядка |
![]() 82 / 80 / 16
Регистрация: 11.03.2016
Сообщений: 206
|
|
03.11.2018, 05:39 | |
При математической обработке сигналов выполняются операции сложения и умножения причем операнды могут быть как положительными, так и отрицательными. После АЦП сигнал представляется в виде отчетов в двоичном беззнаковом коде. Для задач цифровой обработки сигналов цифровой код с АЦП должен быть представлен в дополнительном коде. Для того, чтобы ваш фильтр работал и коэффициенты и входные данные должны быть представлены в знаковом дополнительном коде. После фильтрации и до вывода на ЦАП данные нужно перевести в беззнаковый код.
0
|
03.11.2018, 05:39 | |
Помогаю со студенческими работами здесь
2
АЧХ И ФЧХ КИХ-фильтра Синтез и расчет КИХ–фильтра нижних частот Расчет КИХ-фильтра методом частотной выборки Расчет параметров окна Кайзера для проектирования КИХ-фильтра Реализация КИХ фильтра согласно формуле: Индекс находился вне границ массива Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Опции темы | |
|
Новые блоги и статьи
![]() |
||||
Логирование в C# ASP.NET Core с помощью Serilog, ElasticSearch, Kibana
stackOverflow 25.04.2025
Помните те времена, когда для анализа проблемы приходилось подключаться к серверу, искать нужный лог-файл среди десятков других и вручную фильтровать тысячи строк в поисках ошибки? К счастью, эти дни. . .
|
Полностью асинхронный счётчик на логике (сумматорах) трёх состояний и асинхронных регистрах трёх состояний. Структура "электронный Buttom Up"
Hrethgir 25.04.2025
Программа для симуляции схемы - Logisim Evolution
В общем какое-то время отвлёкся, так было надо, теперь когда запилю это на verilog и FPGA , досоставлю заявку в ФИПС на полезную модель - не готов. . .
|
Автоматизация Amazon Web Services (AWS) с Boto3 в Python
py-thonny 25.04.2025
Облачные вычисления стали неотъемлемой частью современной ИТ-инфраструктуры, а Amazon Web Services (AWS) занимает лидирующие позиции среди провайдеров облачных услуг. Управление многочисленными. . .
|
Apache Kafka vs RabbitMQ в микросервисной архитектуре
ArchitectMsa 25.04.2025
Современная разработка ПО всё чаще склоняется к микросервисной архитектуре — подходу, при котором приложение разбивается на множество небольших, автономных сервисов. В этой распределённой среде. . .
|
Параллельное программирование с OpenMP в C++
NullReferenced 24.04.2025
Параллельное программирование — подход к созданию программ, когда одна задача разбивается на несколько подзадач, которые могут выполняться одновременно. Оно стало необходимым навыком для. . .
|
Цепочки методов в C# с Fluent API
UnmanagedCoder 24.04.2025
Современное программирование — это не только решение функциональных задач, но и создание кода, который удобно поддерживать, расширять и читать. Цепочки методов и Fluent-синтаксис в C# стали мощным. . .
|
Мульти-тенантные БД с PostgreSQL Row Security
Codd 23.04.2025
Современные облачные сервисы и бизнес-приложения всё чаще обслуживают множество клиентов в рамках единой программной инфраструктуры. Эта архитектурная модель, известная как мульти-тенантность, стала. . .
|
Реализация конвейеров машинного обучения с Python и Scikit-learn
AI_Generated 23.04.2025
Мир данных вокруг нас растёт с каждым днём, и умение эффективно обрабатывать информацию стало необходимым навыком. Специалисты по машинному обучению ежедневно сталкиваются с задачами предобработки. . .
|
Контроллеры Kubernetes Ingress: Сравнительный анализ
Mr. Docker 23.04.2025
В Kubernetes управление входящим трафиком представляет собой одну из ключевых задач при построении масштабируемых и отказоустойчивых приложений. Ingress — это API-объект, который служит вратами. . .
|
Оптимизация кода Python с Cython и Numba
py-thonny 23.04.2025
Python прочно обосновался в топе языков программирования благодаря своей простоте и гибкости. Разработчики любят его за читабельность кода и богатую экосистему библиотек. Но у этой медали есть и. . .
|