давай FPGA впиндюрим ! и обьеденим проекты ?
давай FPGA впиндюрим ! и обьеденим проекты ?
Зачем ?
1. Во первых потому что я уже сделал пол проекта
что зря трахался чтоль ?
[video][/video]
Извиняюсь за кометы, я не особо режиссер "ютуб-ер"
2.Со смесями и особенно консолью возиться ну очень мне не охота, хочу rusEFI поставить.
Я задумал так - с проца получать лишь уже рассчитанные параметры угла опережения и обогащения смеси.
Триггер у меня уже написан под CHRYSLER V6, насколько помню чуть ли не самый сложный из всех движков. (именно V6-V8) Триггер хер положишь !, смотри на диаграмму в конце видео. ( тайммарк 3:30 )
Скачки оборотов с 300 до 50 000 за 0,01сек обрабатываются как должное.
Такого в жизни не бывает, это тестбенч.
В ПЛИС терминологии это тест на баги в нереально жестких условиях с софтового/аппаратного эмулятора.
Определение угла с 1/2 !!! оборота !!! в аварийном режиме (обрыв одного из датчиков коленвал/распредвал)
Либо с одного CAM либо с одного CRANKSHAFT ! - Spark1 - Spark6 это уже вычисленные свечки по одному распредвалу.
В штатном режиме с обоих даже с 1/4 оборота КОЛЕНВАЛА !
Короче задержки запаздывания и срыв угла вращения просто не реальны. ( зачем я и вмандил ПЛИСку )
Дело в том что что бы не было написано под FPGA, оно все происходит В "ФИЗИЧЕСКОЙ мультизадачке"
на абсолютной скорости. Конкретно обработка CAM/CRNKSHAFT.
3. Что бы разгрузить проц, взвалить большую часть обработки сигнала (сенсора кромя аналоговых)
и вывода управляющих сигналов (форсунки, свечки, соленойды АКПП) на ПЛИСку !!!
Пусть он (проц) занимается более приятными делами не требующих критичного отклика.
К примеру как у меня в проеке - цветной ЖК интерфейс.
Сделано на самом дешевом типе цветных ЖК, параллельный 16 битный FSMS
4. А главное FPGA на плате ЭТО КРУТО и очень проффесионально смотриться даже как маркетинговый ход
Не один "индюк" уже рта не откроет, мол ардуринский детский проект
Да глянь на любой пром контроллер (Особенно, где спарка с TCM (АКПП))
везде и контроллер и FPGA стоит.
А прикинь именно PCM делать, где и управление АКПП и всей подкапотной периферией ?!
Проц то то тоже не резиновый, да и RTOS это не идеал для такой задачи.
=========================================================================================================================
Если russian согласишься - готов сделать мануал по Verilog-FPGA, вроде FPGA для микроконтрольщика, Си-шника за 1 час на примерах
Можно сделать просто версию PCM rusEFI c FPGA,
вон у AEM же куча версий контроллера. Вот и у нас будет под разные задачи / кошелек
Я планирую приступить к стендовым испытаниям и допилке примерно с середины-конца апреля 2016
вот на этом железе : Есть идеи ?
Естественно и действующую версию rusEFI попутно обкатаю.
1. Во первых потому что я уже сделал пол проекта
что зря трахался чтоль ?
[video][/video]
Извиняюсь за кометы, я не особо режиссер "ютуб-ер"
2.Со смесями и особенно консолью возиться ну очень мне не охота, хочу rusEFI поставить.
Я задумал так - с проца получать лишь уже рассчитанные параметры угла опережения и обогащения смеси.
Триггер у меня уже написан под CHRYSLER V6, насколько помню чуть ли не самый сложный из всех движков. (именно V6-V8) Триггер хер положишь !, смотри на диаграмму в конце видео. ( тайммарк 3:30 )
Скачки оборотов с 300 до 50 000 за 0,01сек обрабатываются как должное.
Такого в жизни не бывает, это тестбенч.
В ПЛИС терминологии это тест на баги в нереально жестких условиях с софтового/аппаратного эмулятора.
Определение угла с 1/2 !!! оборота !!! в аварийном режиме (обрыв одного из датчиков коленвал/распредвал)
Либо с одного CAM либо с одного CRANKSHAFT ! - Spark1 - Spark6 это уже вычисленные свечки по одному распредвалу.
В штатном режиме с обоих даже с 1/4 оборота КОЛЕНВАЛА !
Короче задержки запаздывания и срыв угла вращения просто не реальны. ( зачем я и вмандил ПЛИСку )
Дело в том что что бы не было написано под FPGA, оно все происходит В "ФИЗИЧЕСКОЙ мультизадачке"
на абсолютной скорости. Конкретно обработка CAM/CRNKSHAFT.
3. Что бы разгрузить проц, взвалить большую часть обработки сигнала (сенсора кромя аналоговых)
и вывода управляющих сигналов (форсунки, свечки, соленойды АКПП) на ПЛИСку !!!
Пусть он (проц) занимается более приятными делами не требующих критичного отклика.
К примеру как у меня в проеке - цветной ЖК интерфейс.
Сделано на самом дешевом типе цветных ЖК, параллельный 16 битный FSMS
4. А главное FPGA на плате ЭТО КРУТО и очень проффесионально смотриться даже как маркетинговый ход
Не один "индюк" уже рта не откроет, мол ардуринский детский проект
Да глянь на любой пром контроллер (Особенно, где спарка с TCM (АКПП))
везде и контроллер и FPGA стоит.
А прикинь именно PCM делать, где и управление АКПП и всей подкапотной периферией ?!
Проц то то тоже не резиновый, да и RTOS это не идеал для такой задачи.
=========================================================================================================================
Если russian согласишься - готов сделать мануал по Verilog-FPGA, вроде FPGA для микроконтрольщика, Си-шника за 1 час на примерах
Можно сделать просто версию PCM rusEFI c FPGA,
вон у AEM же куча версий контроллера. Вот и у нас будет под разные задачи / кошелек
Я планирую приступить к стендовым испытаниям и допилке примерно с середины-конца апреля 2016
вот на этом железе : Есть идеи ?
Естественно и действующую версию rusEFI попутно обкатаю.
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Привет...
Прочёл пост мало чё понял ) ...
У тебя два разных блока управления один мотором второй коробкой ???
Со сложностью моторов наверно это не про v обратные а про 3 цылиндровые ...
И я не уловил процес слияния двух проэктов с вашей стороны что предложено ???
Тема вообще хорошая проэкт быстрее будет развиватся...
Прочёл пост мало чё понял ) ...
У тебя два разных блока управления один мотором второй коробкой ???
Со сложностью моторов наверно это не про v обратные а про 3 цылиндровые ...
И я не уловил процес слияния двух проэктов с вашей стороны что предложено ???
Тема вообще хорошая проэкт быстрее будет развиватся...
Last edited by Abricos on Tue Apr 05, 2016 1:07 am, edited 1 time in total.
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Эта интерпидер ... я на таком впервый раз мотор менял в 17 лет ...))сам ...
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
вот это движуха! а ценник? даже плюс сотня долларов к цене - уже ощутимо. и идёт в разрез с основной целью русефи (насколько я помню, там соревнования какого-то класса предполагают из говна и палок без вложений строить болиды)
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
ага "интер-пидер" где услышал такое прозвище ?Abricos wrote:Эта интерпидер ... я на таком впервый раз мотор менял в 17 лет ...))сам ...
я 17 лет назад помоем только на мерс190 движки менял, секс с K-Jetronic-ами и.т.п.
или это 27 назад было, могу ошибаться.
17 лет назад вроде первый интер-пидер только был LH1
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Да ну блин, какие деньги к черту ? ты тут из за денег разве ?puff wrote:вот это движуха! а ценник? даже плюс сотня долларов к цене - уже ощутимо. и идёт в разрез с основной целью русефи (насколько я помню, там соревнования какого-то класса предполагают из говна и палок без вложений строить болиды)
этож секс проект для души
Да и нет там денег особо 10ка$ не сотня ни как.
JTAG алтеровский 600 рублей.
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
В 17 лет ... Мне было 17 ... а не 17 лет назад ...))ali00ff wrote:ага "интер-пидер" где услышал такое прозвище ?Abricos wrote:Эта интерпидер ... я на таком впервый раз мотор менял в 17 лет ...))сам ...
я 17 лет назад помоем только на мерс190 движки менял, секс с K-Jetronic-ами и.т.п.
или это 27 назад было, могу ошибаться.
17 лет назад вроде первый интер-пидер только был LH1
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Привет, не заметил 1ый твой пост вопрос, чет рассмешил второй пост про интер-пидорAbricos wrote:Привет...
Прочёл пост мало чё понял ) ...
У тебя два разных блока управления один мотором второй коробкой ???
Со сложностью моторов наверно это не про v обратные а про 3 цылиндровые ...
И я не уловил процес слияния двух проэктов с вашей стороны что предложено ???
Тема вообще хорошая проэкт быстрее будет развиватся...
Дождусь что russain скажет.
Если полениться, отмажеться - что толку выкладывать ?
Там на объяснение про слияние время уйдет как на 40 страниц кода
Если лично интересно - ну Ок изложу поподробней.
У меня самостоятельный проект готов, но пока не запускался на реальном моторе. (климат не позволял)
На эмуляторе датчиков коленвал/распредвал работает четко.
Блок у меня 1, (когда маму нарисую, сейчас на макетках)
но на ней И проц STM (контроллер) который вычисляет коэффиценты смеси и углы опережения, И FPGA, которая
занимается непосредственной работой с аналоговой частью + так же (что критично по скорости и ресурсам) она определяет в каком положении валы.
+ закидывает в STM значения об/мин.
Работает даже без проца и расчетов, по усредненной программе.
STM рассчитал по датчикам MAP/MAF+TPS+RPM, обновил оптимальные значения для работы в FPGA
и.т.д.
В полное мере у меня уже готов триггер положения валов (угла заж)
причем триггер зверский. Не повалишь. (я диаграммы с коментами выложу, так проще будет)
Смеси примитивно, по фикс значению, опережения нету 0град
но уже можно вводить ОТ КУДА ТО (я вот и думаю с rusefi) значения опережения зажигания/впрыска +/-35град
и коэфф обогащения.
Уже как то договориться надо с russain в мне принципи то пох как - можно и коэффициент +/- % с пляской от 1:14,7 а можно и тупо условное значение на длит открытия форсунки.
Проще говоря - ПЛИСину как то нужно влепить между процем rusefi и силовым аналогом + датчики валов.
Проц рассчитывает кол смеси и углы опережения , ну и регулярно закидывает значения в ПЛИСину
ПЛИСина же будет работать постоянно даже если сдохнет проц, типа в аварийном режиме, по усредненным параметрам (опережение 0град, смесь 14,7:1)
Разгрузка проца тут колоссальная. (Да так и сделано на всех пром контроллерах, выше января и бош под УАЗ конечно )
Соответственно сконектиться между проектами по какому то универсальному протоколу SPI/CAN.
По мне бы конечно проще самопальный параллельный протокол, вроде : clk + 8 проводов дата (байт за 1 такт)
хоть на 4мгц, хоть на 50. Со стороны FPGA на скорость и загрузку по ресурсам пох, а вот от скажем деление 8 на на 5 знаков
сожрет ПЛИСку как гамбургер. Обработка сигналов, когда мнОООООго сигналов вот что кайфово на ней делать.
Как сказал будет ликбез если будет интерес
Лан...... где там главный лентяй ?
Last edited by ali00ff on Tue Apr 05, 2016 6:41 pm, edited 1 time in total.
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
я в 18 мерсы, да мерсыAbricos wrote:В 17 лет ... Мне было 17 ... а не 17 лет назад ...))
короче помню ельцин был вместо уе-пута
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Дополню :
Что я хочу от проекта rusEFI
1. Смеси
2. Консоль
3. Мне скучно одному всем этим сексом заниматься
Из rusEFI можно будет смело выкинуть все что касается обоих валов, обороты и угол будет получать уже готовенькие
и добавить скажем граф интерфейс.
Что я хочу от проекта rusEFI
1. Смеси
2. Консоль
3. Мне скучно одному всем этим сексом заниматься
Из rusEFI можно будет смело выкинуть все что касается обоих валов, обороты и угол будет получать уже готовенькие
и добавить скажем граф интерфейс.
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Хорошая идея на самом деле - много узких мест в контроллере закрываются (когда контроллер от будильника с float).
Какой конкретно FPGA используется? cколько он стоит?
Какой конкретно FPGA используется? cколько он стоит?
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
С самого начала планировал использовать FPGA в своем ECU но пока нет времени на освоение новой для меня области...по этому пока все программно А так очень гибко все получается...и нет ограничений по каналам таймеров Можно ещё само ядро запустить и тогда все в одном флаконе
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
вылезут вопросы лиценирования:-)
про консоль - вообще в том виде в каком она есть сейчас я вряд ли захотел бы заиметь её в своем проекте. совсем не объект вожделения. ей очень сильно не хватает нормального дизайнера ui. хотя мб у тюнеров авто устройство мозга схоже с программистским, и всё наоборот ок. с другой стороны пытался пару раз усиленно думать-предтавлять себе идеальную консоль - фигушки, нет идей, как это должно выглядеть.
а почему смеси нельзя в fpga уложить?
про консоль - вообще в том виде в каком она есть сейчас я вряд ли захотел бы заиметь её в своем проекте. совсем не объект вожделения. ей очень сильно не хватает нормального дизайнера ui. хотя мб у тюнеров авто устройство мозга схоже с программистским, и всё наоборот ок. с другой стороны пытался пару раз усиленно думать-предтавлять себе идеальную консоль - фигушки, нет идей, как это должно выглядеть.
а почему смеси нельзя в fpga уложить?
- AndreyB
- Site Admin
- Posts: 14381
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Я пока не дошёл до проблем, где без FPGA никак Т.е. сначала нужна задача, а FPGA может быть вариантом решения. Какую задачу не решить просто stm32f4?
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
- верно !, сколько угодно столько и шлепай таймеров.denisvak wrote:ограничений по каналам таймеров
Создать таймер по обьему кода/работы не больше/не сложнее чем просто про инициализировать готовы таймер в контроллере.
К тому же все ф-ции в плис срабатывают по захвату чего то.
Что бы слепить мультизадачный аналог Си шного void
достаточно захватывать CLK (глобальный клок)
always@(posedge clk)
begin
// тут пиши что хошь, будет выполняться каждый такт клока 50мгц (на циклон2)
end
Но при желании можно указать в скобках rising/faling edge ЛЮБОЙ НОГИ, ЛЮБОГО ФЛАГА, да пох чего.
always@(posedge CAM_IN)
begin
// ф-ция будет срабатывать при каждом повышении сигнала с датчика колена
//к примеру тут мы сделаем вот что :
FLAG1=1;
end
а тут >
always@(posedge FLAG1) // МОЖНО и NEGEDGE, можно кучу условий через и/или && ||
begin
// ф-ция будет срабатывать при каждом переходе битовой перемененной FLAG1 в лог 1.
end
- За день-два освоить можно при знании Си, а если по скайп с трансляцией экрана кто то поможет - то достаточноdenisvak wrote:нет времени на освоение новой для меня области...по этому пока все программно
буквально 2-3 примера разобрать, чтоб кто то перевел Verilog синтаксис на Си с пояснениями и в чем различия аналогичных действий (mcu/fpga)
- Да он и проще чем Си !!!, язык (Verilog синтаксис паскаля) и много гибче !, Чего стоит определение переменных с битах
с возможностью обращаться к любому биту любой переменной напрямую. в Си даже типа BOOL нету, трахайся со сдвигами,
а при обработке сигналов работа то как раз с битами а не байтами !
Регистров как в проце нет !, о них даже думать не нужно, они сами создаются, когда ты переменную с модификатором input/output/inout назначаешь
и обращаешься в дальнейшем уже как к переменной, зная что значение тут же окажется на пинах ! (если output reg)
Если же input reg то в переменной автоматом окажиться значение пинов, ( Пины указываются мышкой в "пинпланере" по желанию.)
module xpcm(
input nrst, //RESET
input clk, //CLOCK
input CAM_IN, //Camshft Input
input CRANK_IN, //Crankshaft Input
//input Key, //BUTTON
output reg [3:0]led, // 4 LEDS
output reg [3:0]SparkPlug = 4'b0000,
output reg [7:0]Next_Spark_1_6_State
);
Вот и создал ты регистры!, К примеру [3:0]led это 4 светодиода
А вот так обратился
led[0] <= Cam_Long_0_FLAG; //1ый = переменой Cam_Long_0_FLAG
led[1] <= SPARK_ON; //2ой = переменой SPARK_ON;
От чего даташиты(только характеристики) и reference manual отсутствуют как класс,в них просто нечего писать, кромя характеристик ))
У тебя чистый камень. Нужна периферия - возьми да присобачь любую (кромя DAC/ADC)
Ядро/ядра NIOS2 можно, да, но там Си голый совсем роскоши типа HALов немаdenisvak wrote: Можно ещё само ядро запустить и тогда все в одном флаконе
Так же НЕТУ ФЛЭШИ, DAC и ADC
По этому как раз лучше иметь отдельный контроллер.
Нууу и ядра платные
Оговорюсь, уже есть SOC-и это FPGA с апп. ARM ядром/ядрами (все ведройды и гейФоны на них), там понятно рулит CMSIS, но они блядь стоят по 100$
да и штука новая, как ими пользоваться мало кто знает. Так что лучше по старинке, внешний контроллер
================================
Раз уж заговорили о нюансах FPGA
В общем давайте так - сделаю я видео урок с разбором пары примеров и пояснениями где что, и какой это эквивалент в Си.
Да прилеплю ссыль, или отдельным постом. Так и так собирался для своего форума делать.
Так будет проще и быстрей понять те существенные плюсы, которые дает сея железяка и ее язык. (к стати языков на выбор вроде аж 8 )) )
Ну и сложно / не сложно прикините. Я считаю что нех сложного, если без идиотизма и теории объяснить на живом примере.
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Ну я про версию PCM вроде как говорю.russian wrote:Я пока не дошёл до проблем, где без FPGA никак Т.е. сначала нужна задача, а FPGA может быть вариантом решения. Какую задачу не решить просто stm32f4?
Про !-=ВЕРСИЮ=-! а не полную КОН=ВЕРСИЮ проекта ))
Проблемы ?
- Ну добавь 30-40 I/O на АКПП
с не маааааленьким таким алгоритмом ! как нить выложу, давно обещал все времени то же не было (
Да если добавить цветной LCD интерфейс с тачскрином в салон.
/* И попробуй только сказать что мол это лишнее.... с таким же успехом можно сказать что строчник 1620 лишний */
Консоль информативно - надстроечная хорошо, но всеж это сторонний, дополнительный девайс. А так all inclusive
Ну и о том что можно обойтись, мол влезет - не спорю!, но с дуру можно и цельный PCM с упр. кондеями, соленоидами всякой подкопотной периферии, диагнозами и.т.п.
на диком ASM-е в PIC16 8мгц затолкать, но это как с дуру хуй ломать
На многофункциональные промышленные ЭБУ (они же PCM) - SPC5 ставят они по мощнее чем STM32 хотя той же ST !
http://www2.st.com/content/st_com/en/products/automotive-microcontrollers.html
Уж там запасу с лихвой, но тем не менее лепят и ПЛИСину. Они же то же не дураки...
А не приятней разве будет когда ресурса контроллера с запасом и за скорость вообще париться не надо !??
чтоб, с приоритетами не ебаться (знаю ты любитель ОС). Не сидеть часами в отладчике и охуевать чтоб подвинуть, да как бы
пару .us выкроить, которых как раз и не хватает в каком то форс-мажорном моменте, когда нужно одновременно (не в ОС очереди а одновременно!)
выполнить 2-3 каких то действия. Это не смотря на то, что пол проца еще свободно и по большей части рабочего цикла ресурса-времени с запасом.
Только не лукавь
В общем заведу свой движок на макетках, сделаю видос с комментариями ПО КОДУ, сам скажешь - что так все же заебаче будет, если творить PCM версию.
Соберу твою франкензу, прикину как бы скомпоновать с минимум изменений. Если использовать дисковери, то как раз вижу место удобное
на плате, там, где сейчас площадка под напаечный STM. С учетом что fpga схематически как раз "между процем и сенсорно - силовой частью" и должна стоять.
Я еще думаю ты еще ломаешься от недоверия к fpga в виду отсутствии навыка работы с ней...
Ну так это легко исправить, зная как ты пишешь - 3-4 часа скайпа и будешь херачить как всю жизнь работал.
- AndreyB
- Site Admin
- Posts: 14381
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Меня пугает, как много букв.
Ты можешь двумя строками сказать, какую конкретно мою ПРОБЛЕМУ сейчас FPGA решит? У меня сейчас нет ПРОБЛЕМ, которую FPGA мог бы решить. Делать "на будущее" или "потому что круто" у меня нет ни времени, ни сил - у меня гонка через 10 дней
Ты можешь двумя строками сказать, какую конкретно мою ПРОБЛЕМУ сейчас FPGA решит? У меня сейчас нет ПРОБЛЕМ, которую FPGA мог бы решить. Делать "на будущее" или "потому что круто" у меня нет ни времени, ни сил - у меня гонка через 10 дней
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Я делаю на том что под рукой, сейчас на Cyclone2 (500-600р). Навороченный триггер положения валов с 2 аварийным режимами. (обрыв 1 из датчиков колен/распред валов)Maxi wrote:Хорошая идея на самом деле - много узких мест в контроллере закрываются (когда контроллер от будильника с float).
Какой конкретно FPGA используется? cколько он стоит?
Газо/искро-распределение по усредненной программе (без коррекций опережения и обогащения)
С учетом что там уже пол проекта - логических ячеек используется всего 9%
ЛЮБЫЕ коды FPGA совместимы с любыми другими FPGA, как упоминалось выше
- регистров тут нету, чистый камень, вся специфика чип задается кодом.
разница у них лишь в размерах, основной критерий кол-ве лог ячеек.
Т.е. влезет с запасом в "MAX2" за 300р.
И да, конечно только Altera! она хоть и дороже аналогов Xilinx, но у нее very human-friendly IDE в сравнении с ISE Xilinx это как сравнить Keil+CubeMx и CoCox
Причем БЕСПЛАТНАЯ если без "мега функций" (синтезируемая периферия, для чипсетов материнок и одно платных компов, всякие IDE, SCISI, DDR3, E-PCI и.т.п. кои нах нам не нужны! )
Что бы прицениться - вот полноценная, в меру фаршированная учебная SDK на Altera Cyclone IV а это ооочень большой чип.
На нем в пору одноплатники или граф ускорители писать. Да еще и с прогером и даже UART переходником ))
http://ru.aliexpress.com/item/Free-shipping-ALTERA-FPGA-EP2C5T144C8N-fpga-board-USB-BLASTER-fpga-development-board-fpga-altera-board/793643076.html
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Лентяй ты ептить !russian wrote:Меня пугает, как много букв.
Ты можешь двумя строками сказать, какую конкретно мою ПРОБЛЕМУ сейчас FPGA решит? У меня сейчас нет ПРОБЛЕМ, которую FPGA мог бы решить. Делать "на будущее" или "потому что круто" у меня нет ни времени, ни сил - у меня гонка через 10 дней
На будущее. Иди гоняйся, кто тебя торопит ?!
я еще месяц движек буду заводить.
Как я тебе скажу какую конкретно ТВОЮ ПРОБЛЕМУ
От куда я знаю какие у тебя проблемы ?...
Вот мои с акпп и ненавистью к халтуре арДурИно-ОСам решит
Если делать серьезную вещь, так делать основательно.
Ну не хочешь хрен с тобой, ставлю вопрос иначе - ПОМОЖЕШЬ МНЕ СО СМЕСЯМИ ? у тебя благо 3 года опыта.
я сам все сделаю по своему
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
мог бы ли кто-нибудь еще лет 15 назад даже помыслить, что люди будут едва ли не в одиночку разрабатывать мозги для моторов...
впечатляет!
впечатляет!
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
- не если честно, то у меня просто опыта нету, мне придется с нуля, если лентяй не поможет.puff wrote:вылезут вопросы лиценирования:-)
а почему смеси нельзя в fpga уложить?
у меня конечно есть 8 канальный осц, я могу обвесить родной мозг да передрать от туда, но этого мало.
Ну и проц всеж нужен если большой проект делать, как я и хочу
я и ЖК интерфейс цветной хочу и автоматы. И у fpga нету АЦП и даже флеши нету.
А ацп проца вполне хватит.
Кстати при интерфейсе с тачскрином можно и без консоли обойтись.
Ну дизайн можно придумать. На FPGA с графикой работать, это ПЛАТНОЕ (твой вопрос про лиц.) ядро портировать, SDRAM клеить... неее!
FPGA хорош для обработки сигналов на абсолютной скорости. А рутину на проце.
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
И не говори ! обнаглели, зажралисьpuff wrote:мог бы ли кто-нибудь еще лет 15 назад даже помыслить, что люди будут едва ли не в одиночку разрабатывать мозги для моторов...
впечатляет!
да помню 15 лет назад 1 канальный осц на 4msa покупал за 600$
а сейчас за 100 8 канальник взял с генератором 8 канальным.
Что уж говорить за youtube и торенты ! такая экономия времени при освоении чего то нового.
Тогда книжку то найти толковую проблема была...
- AndreyB
- Site Admin
- Posts: 14381
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
я попробую, но ты оптимист - я пока считаю, что ничего не понимаю во всём этом особенно когда речь доходит до настройки. авто-настройка TS мой пределali00ff wrote:Ну не хочешь хрен с тобой, ставлю вопрос иначе - ПОМОЖЕШЬ МНЕ СО СМЕСЯМИ ? у тебя благо 3 года опыта.
я сам все сделаю по своему
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Время назад, я уже предлагал использовать плисину для двигателя (http://www.rusefi.com/forum/viewtopic.php?f=10&t=345&p=3234)
Итого, на данный момент сделана модульная система, где на ПЛИС ТПУ(условно -тайм процессор юнит), который занимается обработкой ДПКВ и прочих датчиков на валах, на выходе - в процессор - РПМ, оцифрованное в окне ДАД, ДМРВ, ТПС, ток ионизации т.д., всё это передаётся в процессор - STM32
Процессор получает одно прерывание на один такт сгорания - и всё
процессор кормит ТПУ/ПЛИС углами зажигания и впрыска и всех остальных актуаторов.
на столе всё прекрасно работает,
Закуплен V8, думаю уже скоро будем заводить
Итого, на данный момент сделана модульная система, где на ПЛИС ТПУ(условно -тайм процессор юнит), который занимается обработкой ДПКВ и прочих датчиков на валах, на выходе - в процессор - РПМ, оцифрованное в окне ДАД, ДМРВ, ТПС, ток ионизации т.д., всё это передаётся в процессор - STM32
Процессор получает одно прерывание на один такт сгорания - и всё
процессор кормит ТПУ/ПЛИС углами зажигания и впрыска и всех остальных актуаторов.
на столе всё прекрасно работает,
Закуплен V8, думаю уже скоро будем заводить
Теория хороша в том и только том случае, если она может достоверно предсказать результаты каждого нового опыта
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
ПЛИС всегда пугает. Это другой мир. В него можно прийти по своей воле, а можно путем боли и страданий от того, что привычные инструменты не могут решить задачу. Не могут то, что надо сделать по ТЗ. Банально, надо сделать 32 ШИМ генератора для управления вентиляторами. В МК столько аппаратных ШИМов, как правило, нет. Да да, можно там какие-нибудь микросхемы найти с spi загрузкой. Ну либо, нужно обработать нажатие 120 кнопок/датчиков срабатывания. Не нужно искать такой МК и изучать его. Просто выбирается ПЛИС нужного размера и количества GPIO. У нас была задача - сделать клон электрооргана юность, причем не в цифре, а с аналоговым выводов всех меандров, да плюс их коммутация. А их там 204 штуки. На МК никак. Пробовали и так и сяк. И на 16-ти МК не получилось ))) В случае с ПЛИС не задача натягивается на МК, где-то задачу может упростят, а просто решают задачу. Выясняется, сколько для этого надо ресурсов, и берется ПЛИС нужного размера. А если это уже массовое производство, то по HDL модели можно даже заказные микросхемы делать.russian wrote:Меня пугает, как много букв. Ты можешь двумя строками сказать, какую конкретно мою ПРОБЛЕМУ сейчас FPGA решит? У меня сейчас нет ПРОБЛЕМ, которую FPGA мог бы решить. Делать "на будущее" или "потому что круто" у меня нет ни времени, ни сил - у меня гонка через 10 дней
Сравнивать HDL и Си - это ошибка. Можно еще больше запутать.ali00ff wrote:К тому же все ф-ции в плис срабатывают по захвату чего то.
Что бы слепить мультизадачный аналог Си шного void
Вот тут все верно. Если логика не будет большой, то можно достичь порядка 250 МГц.ali00ff wrote: достаточно захватывать CLK (глобальный клок)
always@(posedge clk)
begin
// тут пиши что хошь, будет выполняться каждый такт клока 50мгц (на циклон2)
end
А вот это ошибка. ВСЕ always блоки должны работать на одном клоке. Схемы должны быть синхронными. Если какие-то части работают на разных частотах, то между ними нужно выполнять cross clock domain.ali00ff wrote: Но при желании можно указать в скобках rising/faling edge ЛЮБОЙ НОГИ, ЛЮБОГО ФЛАГА, да пох чего.
always@(posedge CAM_IN)
begin
// ф-ция будет срабатывать при каждом повышении сигнала с датчика колена
//к примеру тут мы сделаем вот что :
FLAG1=1;
end
подробнее тут http://www.fpga4fun.com/CrossClockDomain.html
Возможно на простых схемах вы не заметите проблем, если будете на входе always подавать выходы, допустим, триггеров. Но на таких местах синтезатор уже выдаст серьезный warning.
А проблема возникнет, когда вы по сигналу с триггера, котрый встает с задержкой на переключение, начнете считывать регистр, значение которого меняется по клоку, а он может оказаться в середине между 1 и 0 и привет метастабильность. Еще любят пугать гонками. Но суть - клок должен быть один. А если вы хотите читать CAM_IN, то в always клок то будет тот же самый, а CAM_IN уже внутри в IF и далее уже то, что задумано.
То же самое. Кучу условий - внутри блока. Потому что куча условий - это будет некая асинхронная схема на логических элементах. Результат ее работы - фронт - будет отставать от фронта клока. И те же проблемы, что были выше.ali00ff wrote:а тут >
always@(posedge FLAG1) // МОЖНО и NEGEDGE, можно кучу условий через и/или && ||
begin
// ф-ция будет срабатывать при каждом переходе битовой перемененной FLAG1 в лог 1.
end
Может показаться сложно, но это не сложнее, чем разобраться в тактировании СТМ. И уж точно проще, чем курить АВР и конфигурировать флаги настройки оборудования. Кстати, недавно была интересная статья, которая всетаки позволяет упростить код на Verilog и сделать его более читаемым, чтоли. Не знал, очень понравилось. Положу, вдруг пригодится, в общую плисоводческую копилку https://habrahabr.ru/post/321676/
В общем, на мелких проектах было все норм. А вот когда схема становится действительно большой... то жизнь заставляет знать такие вещи, что я описал выше. Хотя это, в общем-то не сложно. И далее применимо на любой другой плис. Но в целом, речь о том, что проектирование на ПЛИС не стоит сравнивать с программированием на Си. Это скорее проектирование на микросхемах 155-й серии, только схемы "рисуются" словами и более абстрактно.
- AndreyB
- Site Admin
- Posts: 14381
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Текуший подход rusEfi - программный ШИМ на 32 канала, на базе одного 1МГц таймера.UA3MQJ wrote:Банально, надо сделать 32 ШИМ генератора для управления вентиляторами. В МК столько аппаратных ШИМов, как правило, нет.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
думаю ruki.sysUA3MQJ wrote: была задача - сделать клон электрооргана юность, причем не в цифре, а с аналоговым выводов всех меандров, да плюс их коммутация. А их там 204 штуки. На МК никак. Пробовали и так и сяк. И на 16-ти МК не получилось )))
в 2001 решали задачу кореляционного приема 12-ти частот. Кореляционный прием - это далеко не меандр вывести. там 24 умножения на такт опроса. Т.е. если просто вывод - то это примерно как 48 частот - легко...
так вот один ПИК образца 2001 года это делал - и в нем даже таблицы не хранились а на лету генерировались виртуально.
вывести 204 меандра на одном современном mcu - плевейшее дело!
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
Эхх.. руские форумы. Какая бы область не была - первым делом надо оскорбить. Делиться знаниями и опытом не принято, видимо. Даже в рамках открытых проектов.Maxi wrote:думаю ruki.sys
Потом, как правило, идет упоминание факта о своих прошлых достижениях:
Вот для сравнения ответы с других форумов на совсем другую тему, но по применению ПЛИС:Maxi wrote:в 2001 решали задачу кореляционного приема 12-ти частот. Кореляционный прием - это далеко не меандр вывести. там 24 умножения на такт опроса. Т.е. если просто вывод - то это примерно как 48 частот - легко...
так вот один ПИК образца 2001 года это делал - и в нем даже таблицы не хранились а на лету генерировались виртуально.
Зачем там ПЛИС? Там 8-ми битного микроконтроллера Z80 хватало с головой, который успевал кроме того еще и все остальное делать, включая вывод графики на экран.
Может не будем такими?Я делал в 96г по такой схеме управление фильтром, мне не понравилось...
Как?Maxi wrote:вывести 204 меандра на одном современном mcu - плевейшее дело!
- AndreyB
- Site Admin
- Posts: 14381
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
немного по теме https://hbr.org/2015/12/getting-to-si-ja-oui-hai-and-daUA3MQJ wrote:Эхх.. руские форумы. Какая бы область не была - первым делом надо оскорбить. Делиться знаниями и опытом не принято, видимо. Даже в рамках открытых проектов.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: давай FPGA впиндюрим ! и обьеденим проекты ?
ох уж эти руские разработчики - нихрена не умеют. но других учат. проблемы разводят на ровном месте.UA3MQJ wrote:Эхх.. руские форумы. Какая бы область не была - первым делом надо оскорбить. Делиться знаниями и опытом не принято, видимо. Даже в рамках открытых проектов.Maxi wrote:думаю ruki.sys
А вот так - берешь и пишешь! Вообще проблем не вижу. чтоб срань в 200misp не могла 204 меандра вывести - фантазии тех кто в лоб на яве пытается это сдлать...Как?Maxi wrote:вывести 204 меандра на одном современном mcu - плевейшее дело!