Jump to content

    

Aleksandr Vihorev

Участник
  • Content Count

    15
  • Joined

  • Last visited

Community Reputation

0 Обычный

About Aleksandr Vihorev

  • Rank
    Участник
  1. А какую разрядность лучше выбрать для фазы? Можно ведь выбрать большую разрядность и для итераций CORDIC понадобиться много ресурсов. Аможно для четверти круга выбрать небольшую разрядность, но выполнить модуль по подсчету количества колебаний - и ошибка в опеределении текущей фазы будет сводиться к минимуму по мере отработки большого количества циклов. Как выбрать оптимальную разрядность?
  2. Цитата(Golikov A. @ Oct 17 2015, 22:31) VHDL и библиотеки - это известный дракон... И он многоглавый, потом еще конфликты между библиотеками пойдут и прочее.... как то реально не с того конца вы начали, ну да ладно... все же лучше чем водку пить Почему не с того конца? Я нашел формулы итераций CORDIC, промоделировал его в Exel, начал писать код модуля в VHDL и появились вопросы, как преобразовать integer в вектор и наоборот, на поиски ответа на которые я потратил много времени и моих экспериментов. Была бы литература именно по теме построения радиотрактов - было бы легче. С чего начинать-то тогда? Светодиодами я уже помигал
  3. Цитата(Genadi Zawidowski @ Oct 15 2015, 19:23) Кто бы присоединился к разработке? Из животрепещущих проблем - разработать FIR фильтр для разрядностей больше чем 32. to Aleksandr Vihorev: письмо отправил Письмо пришло, ссылка тоже открылась. Только я пока еще только разбираюсь в приемах работы с ПЛИС, для меня важен не столько сам радиотракт, сколько разобраться и научиться выполнять на ПЛИС хоть какие-нибудь устройства. Хотя бы низкочастотный сигнальный процессор радиотракта - поэтому стараюсь обходиься без визардов и писать код самостоятельно. Я, правда выбрал Xilinx - приобрел программатор и сами микросхемы Насколько я понимаю, исходя из поих познаний - разработать модуль на разрядность более 32 - это "собрать"его составляющие - умножители, сумматоры и т.д. из отдельных логических элементов. Я приобрел книгу по VHDL - там примеры разбирались именно в таком ключе. Автор - Бибило. Правда, такое построение громоздко, наверно. Ну и конечно я немного охренел, увидев, что то, что описано в книге отличается от приемов работы в ise, но это, наверно обычное дело. Хотя бы то, что нужно преобразовывать векторы в переменные, а библиотеки для этого по умолчанию подключаются не те. Занятие оказалось трудоемким. Пока нужный ответ в интернете найдешь
  4. Цитата(qwa @ Oct 15 2015, 17:01) Просто любопытно: коэффициенты фильтров вычислять на бумажке планируете? А я вообще про это еще ничего не читал, мне это даже не говорит ни о чем - я же писал, что начал только изучать ПЛИС. Если Матлаб обязательно нужен, то буду использовать Матлаб
  5. Цитата(Genadi Zawidowski @ Oct 15 2015, 17:39) Проект (исходники всего, ключая FPGA) тут: https://188.134.5.254/browser/trunk Ссылка не открывается
  6. Нахожусь в г. Кемерово. Насчет напряжений питания - все на полном серьезе, я вначале вообще с ними перепутал, потом начал искать ошибку и обнаружил, что использовал стабилизатор на не то напряжение, а на которое нужно, у меня все равно не было и я просто не стал ничего менять Цитата(count_enable @ Oct 15 2015, 11:38) В Барселоне на ул. Луначарского есть телеателье, там хозяин торгует дефицитными деталями из-под полы. Если вам далеко до Барселоны, то пожалуйста укажите свою локацию, чтобы народ понимал что советовать. За эквивалент 20-30 евро покупается плата STM32F4 Discovery, имеющая на борту весьма мощный процессор, программатор-отладчик и вполне качественный аудио ЦАП и микрофон. Ставится среда разработки CooCox, бесплатная и простая в использовании для новичков. Документации и примеров - вагон. И пожалуйста, перебросьте этот вопрос в раздел "Микроконтроллеры", он здесь неуместен. Визардами никто и не пытается заменить мозги, но использовать уже готовые наработки/ библиотеки - правильно и похвально. Вы stdlib тоже будете свою писать? Нахожусь в городе Кемерово. Насчет отладочных плат - я хочу отдельный программатор, и микроконтроллер, смонтированный на самодельной плате, плата с разнообразными обвесами и встроенным программатором мне не нужна - потом ломай голову как собирать свое устройство
  7. Я хочу выполнить приемно-передающий тракт на ПЛИС. Использовать хочу Spartan3E XC3S500, в качестве среды разработки - ise10.1. Что-то другое я использовать не хочу - у меня старый компьютер с Windows XP, мне не нужны обновления среды разработки? BGA монтаж и все в таком духе. Это я считаю нужным написать, чтобы не было ответов вроде - "Есть лучше" "Сейчас уже используют...". Насчет моих знаний - я работал с 8-бит AVR на Си и создавал контроллеры для самодельных радиостанций, так чтобы вам можно было судить об уровне, размер программ составлял около 20 КБ. С аппаратной частью ПЛИС почти разобрался - самостоятельно выполнил плату с ПЛИС, флеш-памятью, которая почему-то не работает, возможно дело в напряжении питания - не нашел стабилизаторов 1,1 вольта и поставил 1,8. Сама ПЛИС прошивается, для отработки простых примеров программирования этого хватало. Некоторые математические алгоритмы моделировал в EXEL, MATHLABом не владею. Если необходимо, дайте пожалуйста ссылку. На ПЛИС выполнил генератор пилообразного напряжения, генератор синусоиды с рассчетом по методу рядов, который работал не совсем правильно, генератор синусоиды на CORDIC, который работал значительно лучше выходной сигнал поступал на 12-бит ЦАП, и далее на вход компьютера где была установлена программа со спекторскопом. У меня возникли следующие вопросы Где можно недорого приобрести - АЦП 16-бит - Тактовый генератор на частоту более 50 МГц с высококачественным выходным сигналом, чтобы качества было достаточно для построения радиотракта, работающего на частотах до 30 МГц (охватывал весь КВ диапазон и более низкочастотные диапазоны) - Саму ПЛИС и Flash-память, где покупал, уже нет. - ЦАП необходимой разрядности (пока не знаю какой) для радиопередающего тракта, для приемного тракта у меня есть 12-бит ЦАП, преобразующий цифровой поток в сигнал звуковой частоты Работаю в VHDL, изучать другой язык потому что кому-то он кажется лучше я, как можно понять не буду. Пусть даже у VHDL есть свои недостатки. Это чтобы лишних сообщений с советами не было. Спасибо за понимание. - Как быстро освоить 32-бит Микроконтроллеры, затратив не более 4 тыс. руб, чтобы при этом иметь: - нормальный, пусть и китайский, но работающий программатор, который видит среда разработки - Среду разработки. Желательно на Си - Микроконтроллеры в количестве 2-3 шт. Пусть это будет не самое новое и продвинутое, но должно нормально запускаться и работать на старом компьютере с Windows XP. Компьютер - частота около 2 Ггц, 2 Гб оперативной памяти, 4 ядра, возможности компьютера позволяют и Windows 7 установить, но не хочу Пользоваться визардами я не хочу, хочу писать код самостоятельно - потому что, можно сгенерировать CORDIC в визарде, а потом тупить и думать как выполнить ячейку CIC фильтра. Или вообще интерфейс для АЦП или ЦАП или управления трактом - вот для этого уже вряд ли визард легко найти. Поэтому если есть ссылки на примеры кодов модулей генераторов на алгоритме CORDIC - можете дать ссылки. Особенно полезны разные методички, если у кого есть Вобщем это пока все вопросы, уровень образованности у меня, как вы понимаете, любительский
  8. Цитата(count_enable @ Oct 6 2015, 18:34) Настоятельно рекомендую изучить Xilinx Core Generator и примитивы, которые он генерирует. В вашей плисине есть замечательные аппаратные умножители, быстрые и простые - их и надо задействовать. И CORDIC можно сгенерировать сразу готовый, и производительность его будет заведомо лучше всего, что напишет новичок. Ничего в этом сложного нету, освоите работу с ним в один вечер. Плата фирменная или самопал? В вашем случае ни ror, ни rol. sra - Shift Right - деление на 2^x. srl - Shift Left - умножение на 2^x. Но сейчас компилятор умный, он сам поймёт знак деления как сдвиг. И даже пожалуется при попытке поделить на 3, например. Ага, и работайте с numeric_std, в старых книгах используются арифметичесие библиотеки от Синопсиса не рекомендуемые ныне и многие новички продолжают ими пользоваться. Плату я сам развел и спаял - это целый станд, там не только ПЛИС, но и перриферия и аналоговая часть, может, конечно, не совсем удачно именно для изучения VHDL Цитата(Vascom @ Oct 7 2015, 06:35) Попробуй Verilog. Он гораздо проще для понимания и читабельнее код. При этом по функционалу, качеству VHDL и Verilog равны. Операцию деления и умножения там можно делать просто сдвигами >> и <<, или <<< и <<<. Да нет, я уже с чего начал, сейчас на другой язык переходить жедлания нет, и дело не в читабельности кода - задачи, которые я перед собой ставлю - простые, никакой там обработки видеосигнала. Просто мне нужно нормально и эффективно использовать ресурсы этой старой ПЛИС, затем я и задаю вопросы, а использовать последние разработки я вообще не хочу - мне нужно чтобы плата была двухсторонняя, никаких BGA и update-ов среды разработки, опять-же потому что задачи весьма скромные
  9. Цитата(Vascom @ Oct 6 2015, 14:07) Тогда можешь сделать сколько влезет при твоей тактовой частоте, например 24 или 32 бита. Да вот я не совсем еще с VHDL разобрался, например, я пишу, когда нужно поделить число на 2 в степени n, как операцию деления. Как в этом случае правильно писать с использованием ror или rol? А то после анализа среда разработки пишет, что максимальная частота около 5 МГц, это примерно при 18 бит, а чем больше выборок тем лучше, так что такое низкое быстродействие - не вариант. Сразу говорю, знания у меня слабоватые, поэтому и вопросы могут быть соответствующие
  10. Цитата(soldat_shveyk @ Oct 6 2015, 09:48) 12 бит АЦП/ЦАП при 50 МГц тактовой - это для КВ не достаточно. 16 бит + 100 МГц - необходимый минимум. Даже у радиолюбителей сейчас такие SDR. Да, я про это знаю, цифровой тракт задумывался для работы на низкой ПЧ, и в целях изучения как программирования, так и самих ПЛИС. Начинал почти с нуля, имея знания по программированию 8-битных МК AVR на Си, да и, честно говоря в программировании ПЛИС ушел недалеко
  11. Цитата(soldat_shveyk @ Oct 6 2015, 08:41) Делайте 18 бит, если есть аппаратные умножители 18х18, как например у Альтеры. Разрядность больше 18 бит вряд ли себя оправдает, поскольку SFDR 16-битного АЦП будет намного хуже. Какое АЦП использовать планируете? Пока экспериментировал с 12-битным - построил стенд с АЦП, ЦАП, ПЛИС Xilinx 3XC500 тактовый генератор 50 МГц, аналоговая часть КВ трансивера
  12. Какой разрядности цифрового CORDIC гетеродина дотсаточно для построения радиотракта на ПЛИС. Есть два варианта - работа на низкой ПЧ, порядка десятков кГц совместно с аналоговым трактом. И второй вариант - весь КВ диапазон до 30 МГЦ и прямое преобразование сигнала со входа в цифровую форму. Как необходимая и достаточная разрядность гетеродина соотносится с разрядностью АЦП?
  13. Если уточнить, то то опорный генератор для радиотракта на ПЛИС, чтобы этот тракт если будет доведен до уровня лучших аналоговых трактов, то все бы зависело от АЦП, цепей перед АЦП, но никак не от задающего генератора, ну и по цене не более 1500 руб. Продавец желательно в России, или Китае
  14. Подскажите где купить опорный генератор для тракта цифровой обработки радиосигнала на ПЛИС, джиттер менее 1 пс, 3.3 V, спасибо
  15. Посоветуйте что нужно, чтобы перейти с 8-битных ATmega32 или 128 на 32 битные AVR желательно AT32AP7001, или близкие аналоги. Меня интересует ссылка на бесплатную среду разработки, где купить программатор, и обучающие материалы, начиная с того как подключается микроконтроллер к программатору и как писать код в данной среде разработки (как создавать проект) выбор микроконтроллера именно AVR, другие варианты не рассматриваются. Заранее спасибо