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

XlnMan

Участник*
  • Постов

    20
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о XlnMan

  • Звание
    Участник
    Участник

Посетители профиля

554 просмотра профиля
  1. ARM CortexM0 Design Start

    Нашлась в Интернете более поздняя версия поставки этого процессора – 2015 год. Добавили периферийные модули и пр. Ядро процессора по-прежнему Obfuscated Verilog, на всё остальное код открыт. AT510_BU_98000_r1p0_00rel0.rar Cortex_M0_DesignStart_Design_Kit_Release_Note.pdf
  2. ARM CortexM0 Design Start

    Вот, похоже, этот процессор. Правда здесь Obfuscated Verilog, поэтому в лоб поизучать процессор не получится, хотя встроить себе в проект можно. С другой стороны, имея документацию на Cortex M0, скорее всего, можно будет без особых проблем найти соответствие регистров из Verilog описания с программно доступными регистрами процессора. Просто банально подавая в симуляторе на процессор подобранные команды и отслеживая изменения в регистрах. Всего регистров в проекте 846, набор РОН состоит из 16 32-х битных регистров, т.е. если определить только регистры общего назначения, то будет известно уже 512 регистров из 846. Найдено у китайцев. AT510_BU_98000_r0p0_00rel0.rar
  3. Снизил цену до 30 р/шт. При заказе от 50 шт цена ещё ниже - 25 р/шт.
  4. Цена снижена ещё раз до 9 000 руб.
  5. Могу предположить, что фильтр с этими коэффициентами синтезирован с помощью Remez Exchange Algorithm. Почему предполагаю – в полосе подавления у нас три лепестка и все равной амплитуды (на основе скриншотов из 6-го поста), т.е. мы имеем Equiripple Low Pass Filter. Этим свойством обладают фильтры, синтезированные алгоритмом Ремеза. Мне встретился PDF, в нём в конце даже пример синтеза таких фильтров на матлабе приведён, может, будет вам полезен. Сам в матлабе не силён. A Practical Method to Design Equiripple FIR Filters http://www.geocities.ws/pablogomezr/papers...ppleFilters.pdf Просто здесь речь идёт о цифровых фильтрах и их реализации в ПЛИС, а не на ЦСП.
  6. To go2winner. То, что вы начали изучение ЦОС в FPGA с нерекурсивных цифровых фильтров это правильно. Эти фильтры и не сложные для новичка, и применяются достаточно широко. Рекурсивные цифровые фильтры отбросьте в сторону, они на архитектуру FPGA ложатся плохо, у них повышенные требования к разрядностям сумматоров и умножителей. Что изучать дальше зависит от того, какие задачи вы собираетесь решать. Если, например, двигаться в сторону Software Defined Radio, то стоит присмотреться к Digital Down Converter и Digital Up Converter, ещё нужно поразбираться с децимацией и интерполяцией сигналов. Всё что написано ниже относится к FPGA Xilinx, и мне трудно сказать, насколько это справедливо для Альтеры и др. производителей. По цифровым фильтрам. В современных FPGA на программируемой логике обычно фильтры не делают, для этого используют DSP-блоки. Например, в Spartan-6, реализованы DSP-блоки DSP48A1 (это просто наименование примитива, в зависимости от семейства FPGA эти примитивы немного различаются между собой). Этот DSP блок содержит целочисленный умножитель 18x18 с 36-битным выводом результата и 48-битный аккумулятор (вспомогательные регистры, предсумматор я опустил). Для вас сейчас главное, что разрядности умножителей 18x18 -> 36, умножители целочисленные, никакой плавающей точки в DSP блоках нет. От этой разрядности можно плясать дальше. Например в 7-й серии FPGA (Virtex-7, Kintex-7, Artix-7) DSP блоки более функциональны, в том числе умножители вида 18x25 -> 43, большие точности можно получить. По вашему примеру применительно к Spartan-6. 16-битный сигнал с АЦП нужно расширить до 18 бит (здесь должно быть именно знаковое расширение) перед подачей на DSP блоки. По коэффициентам. Все коэффициенты, которые приводились выше, а именно, -0.0099 0.0787 0.1166 0.1647 0.1946 0.1946 0.1647 0.1166 0.0787 -0.0099 лежат в диапазоне -1 … 1. Т.о. для коэффициентов можно использовать представление чисел с фиксированной точкой 1.17. Один старший разряд, на это указывает единица перед точкой, это целая часть, по сути знак коэффициента, а остальные 17 разрядов (число после десятичной точки) – дробная часть. В 16-ричной системе счисления коэффициенты будут выглядеть так: 0x3FAEE 0x0284B 0x03BB3 0x05454 0x063A3 0x063A3 0x05454 0x03BB3 0x0284B 0x3FAEE Они же в десятичной: -1298 10315 15283 21588 25507 25507 21588 15283 10315 -1298 По сути, коэффициенты были просто домножены на 2^17 = 131072 и округлены. Теперь отсчёты сигнала и пересчитанные коэффициенты можно подавать на DSP блоки. Что будет на выходе. При умножении 18-битного целого на число с фиксированной точкой 1.17 результат будет 19.17, т.е. у нас 19 разрядов целой части числа и 17 дробной части. После суммирований результатов умножений ничего не изменяется и младшие 17 разрядов по-прежнему дробная часть. Собственно и всё. Дальше результат можно округлить и оставить столько разрядов сколько нужно. Надеюсь, не слишком туманно выразился. В качестве простенькой программки расчёта КИХ фильтров могу предложить Iowa Hills FIR Filter Designer, коэффициенты можно получить за несколько кликов мышкой и в ней же увидеть характеристики фильтра. Скачать можно здесь: http://www.iowahills.com/8DownloadPage.html http://www.iowahills.com/5FIRFiltersPage.html
  7. Именно с Basys 3 опыта не имел, но работал с четырьмя другими платами от Digilent, а именно: CoolRunner II CPLD Starter Board, Basys 2, Nexys 3, и Spartan-3 Board (довольно старая плата, вышла более 10 лет назад, в комплекте с платой шёл программатор, который к принтерному порту нужно было подключать). По поводу программирования плат. Никакого дополнительного программатора к плате покупать не надо, в каждой плате предусмотрена возможность программирования. В частности плата Nexys 3 успешно опознаётся ISE 13.4 (у меня просто эта версия установлена, на других не было возможности проверить) и можно использовать утилиту Impact от Xilinx для программирования FPGA. Но даже если плата не поддерживается утилитой от Xilinx, никаких сложностей нет. На сайте Digilent можно выкачать программу Digilent Adept и через неё программировать платы от Digilent. В частности CoolRunner II CPLD Starter Board и Basys 2 программировал как раз через Digilent Adept. У Nexys 3 есть и ещё один способ программирования FPGA. Нужно на флешку в корневую директорию записать .bit файл и подключить её к плате. При включении плата сама обнаружит флешку, найдёт файл прошивки и загрузит его в FPGA. На счёт того, где купить. Вам именно новая плата Basys 3 нужна? Новые и БУ можно здесь на форуме в разделе продам посмотреть, можно и на авито поискать например. У меня на продажу Nexys 3 выложена, просто к слову.
  8. Цена снижена до 10 000 руб.
×
×
  • Создать...