Цифров синтез на сигнали с програмируема логика (FPGA) и външна R-2R матрица / Digital signal synthesis with programmable logic (FPGA) and external R-2R matrix

Статус на проекта: Активен /  Project Status: Active


VHDL приключения / VHDL adventures

На тази страница, както съм планирал преди години започвам публикуването на това как да си направим генератор на сигнали. За разлика от страницата където се постарах да опиша максимално подробно направата на регулируемото захранване, тук ще гледам да съм по кратък и да публикувам основно резултати. Все пак проекта е предназначен за доста по напреднали в електрониката. Основните умения които ще са ви необходими са запояване на SMD компоненти и запис на фърмуер в микроконтролер STM32. Другата разлика от останалите страници на сайта е, че публикациите по дати ще са наобратно - първо най новите, а на края най старите. Така е организирана CMS системата (добавя новите раздели в публикацията най отгоре) и за мен е по лесно да я ползвам така. Структурно проекта ще е изпълнен на две платки с размери не по големи от 10х10 сантиметра - това са размерите които приемат производителите на печатни платки по преференциални цени. На едната платка ще са енкодерите, микроконтролера, FPGA, няколко операционни усилвателя за буфериране и управление на офсета и управляем генератор на тактова честота за FPGA . На другата платка ще са стабилизаторите на напрежение, изправителите и изходните усилватели на двата канала.  Изхождайки от това съм избрал ТАЗИ КУТИЯ (ако линка спре да работи търсите - 0905 Case). Поста нарекох VHDL приключения защото имах доста такива докато получа лиценз за програмата iCEcube2 – обявена като свободна за хобисти. Наложи се доста да им пиша, обяснявам и т.н. В края на краищата имам лиценз за една година и ще гледам в рамките на този период да приключа с нещата по програмирането на FPGA чипа. ПРОГРАМАТА която написах просто прогонва цялата верига от инструменти за това - така знам, че имам всичко работещо. Също така с помощта на изкуственият интелект си направих ФОРМА ЗА ПОДБОР НА РЕЗИСТОРИТЕ които свързани в изходите на FPGA ще формират изходните напрежения (по таблица изчислена и заредена от микроконтролера) на двата канала.


On this page, as I planned years ago, I start publishing how to make a signal generator. Unlike the page where I tried to describe in as much detail as possible the making of the adjustable power supply, here I will try to be brief and mainly publish results. After all, the project is intended for much more advanced electronics users. The main skills you will need are soldering SMD components and writing firmware to an STM32 microcontroller. The other difference from the other pages of the site is that the publications by date will be in reverse - the newest first, and the oldest at the end. This is how the CMS system is organized (it adds new sections to the publication at the top) and it is easier for me to use it that way. Structurally, the project will be implemented on two boards with dimensions no larger than 10x10 centimeters - these are the dimensions that printed circuit board manufacturers accept at preferential prices. On one board will be the encoders, microcontroller, FPGA, several operational amplifiers for buffering and offset control and a controllable clock generator for the FPGA. On the other board will be the voltage stabilizers, rectifiers and output amplifiers of both channels. Based on this, I have chosen THIS BOX (if the link stops working, search for - 0905 Case). I called the post VHDL adventures because I had quite a few of them while I was getting a license for the iCEcube2 program - announced as free for hobbyists. I had to write to them a lot, explain, etc. After all, I have a license for a year and I will try to finish the programming of the FPGA chip within this period. THE PROGRAM I wrote simply drives away the entire chain of tools for this - that's how I know that I have everything working. Also, with the help of artificial intelligence, I made a RESISTOR SELECTION FORM which, when connected to the FPGA outputs, will form the output voltages (according to a table calculated and loaded by the microcontroller) of the two channels.

31-08-2025


Преди много, много време в една далечна галактика / A long, long time ago in a galaxy far away

[БГ] Както се разбира от статуса на проекта това е нещо което планирам да направя в бъдеще. На снимката се вижда подготовката за бъдещите тестове и експерименти, тоест осигуряването на необходимите хардуерни компоненти. Подобни генератори на сигнали не са новост, китайците отдавна са залели пазара с тях. Това което ми е цел да постигна е да създам устройство което да е максимално евтино, с приемливи параметри – синтезирана честота по голяма от 20 MHz Естествено ще са необходими и компромиси, първият от тях е че ще използвам SMD компоненти, това затруднява сглобяването в домашни условия, но не виждам друг начин да се събера в  печатна платка с размери 100мм Х 100мм – това е размера който обикновено производителите на платки приемат с промоционални цени. И най голямата ми мечта разбира се е да успея да създам общност която да продължи да развива проекта за да може да надмине „промишлените“ китайски екземпляри като възможности при цена като тяхната. Ще трябва да си припомня програмирането на FPGA с VHDL, нещо с което не съм се занимавал повече от 10 години. Докато не го завърша напълно основен за мен си остава проекта за линейното захранване, а тук ще „поработвам“ само когато чакам за компоненти и други по основният проект. 
[EN] As you can see from the status of the project, this is something I plan to do in the future. The picture shows the preparation for future tests and experiments, that is, the provision of the necessary hardware components. Such signal generators are not new, the Chinese have long flooded the market with them. What I aim to achieve is to create a device that is as cheap as possible, with acceptable parameters - a synthesized frequency greater than 20 MHz Of course compromises will be necessary, the first of which is that I will be using SMD components, this makes it difficult to assemble at home, but I can't see any other way to fit it into a 100mm x 100mm PCB - this is the size that PCB manufacturers usually accept with promotional prices. And my biggest dream, of course, is to be able to create a community that will continue to develop the project so that it can surpass the "industrial" Chinese specimens in terms of capabilities at a price like theirs. I'll have to brush up on FPGA programming with VHDL, something I haven't done in more than 10 years. Until I have it completely finished, the main project for me remains the linear power supply project, and I will only                                                                                                                             "work" here while waiting for components and such on the main project.

[БГ] Група в Telegram  ....за въпроси и препоръки свързани с проектите представени на този сайт, моля ползвайте английски език за да е разбираемо за всички участници.

[EN]Telegram group ....for questions and recommendations related to the projects presented on this site, please use English so that it is understandable for all participants.

[БГ] Този сайт не използва бисквитки или каквито и да било други проследяващи технологии. Създаден е изцяло с нетърговска цел и естествено не използва и няма да използва реклами под каквато и да e форма. Може да използвате публикуваната тук информация както счетете за необходимо като автора не носи отговорност за настъпили щети или увреждания към вас или трети страни. 

[EN] This site does not use cookies or any other tracking technology. It was created entirely for non-commercial purposes and naturally does not and will not use advertisements in any form. You may use the information published here as you see fit and the author is not responsible for any damage or injury to you or third parties.