|
Voice recognition with AVR |
|
|
|
Oct 18 2008, 14:08
|
Группа: Новичок
Сообщений: 3
Регистрация: 11-10-08
Пользователь №: 40 864

|
Anybody has experience with voice recognition? I am looking for some code library and examples for AVR. All ideas are welcome. Thanks.
--------------------
|
|
|
|
|
 |
Ответов
|
Oct 23 2008, 13:50
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
Цитата(Rst7 @ Oct 23 2008, 13:19)  Ну что, вычисление мощностей с нормированием - это плюс 3200 тактов. Не понимаю, как вы считаете. Если даже преположить, что после, например, ДПФ будет два слова на выборку вместо одного, то мощность - это два умножения и сложение, т.е. где-то 5 тактов без пересылок для 8 бит, ну или 50 для 16 бит. Нормаирование - одно сравнение и одно умножение. Пусть еще столько же. Как удалось увличить эту цифру в 30 раз ? Цитата(Rst7 @ Oct 23 2008, 13:45)  Так что, слабо? На слабо меня не взять. А вот перспективной идеей - можно. Так что там, есть уже какие наработки ? Или выложить слабо (с) ?
|
|
|
|
|
Oct 23 2008, 18:20
|

Йа моск ;)
     
Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610

|
Цитата(Огурцов @ Oct 23 2008, 16:50)  Не понимаю, как вы считаете. Если даже преположить, что после, например, ДПФ будет два слова на выборку вместо одного, то мощность - это два умножения и сложение, т.е. где-то 5 тактов без пересылок для 8 бит, ну или 50 для 16 бит. Нормаирование - одно сравнение и одно умножение. Пусть еще столько же. Как удалось увличить эту цифру в 30 раз ? Я не считаю. Это результат замера. А вот как Вам удалось получить "30 раз" я не знаю. Даже Ваша прикидка дает (50+50)*15=1500, и еще там одно деление 32 на 32, это 500 тактов, грубо говоря, и еще 15 квадратных корней, у меня получилось 56*15=840. Итого, 3340, даже больше, чем мой код  Другое дело, там прилично накладных расходов в связи с тем, что данные для каждой частоты расположены на выходе ДПХ не очень удачно для простой обработки. Но это, я думаю, можно будет устранить. Однако, больших чудес ждать не приходится. Ну и с другой стороны, эта часть кода имеет сложность O(n), так что если вдруг будем увеличивать количество точек, общий вес этой части уменьшится. Цитата На слабо меня не взять. А вот перспективной идеей - можно. Зачем Вам идеи? Вы же все знаете и все умеете?  Цитата Так что там, есть уже какие наработки ? Или выложить слабо (с) ? Уже готовитесь спереть? Пока выложить могу только эти две функции. Они Вам нужны?
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
Oct 23 2008, 19:14
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
8x Код : C = A * A + B * B; +00000069: 0288 MULS R24,R24 Multiply signed +0000006A: 0190 MOVW R18,R0 Copy register pair +0000006B: 2411 CLR R1 Clear Register +0000006C: 01C9 MOVW R24,R18 Copy register pair 13: } +0000006D: 0F82 ADD R24,R18 Add without carry +0000006E: 1F93 ADC R25,R19 Add with carry Я насчитал 7 16x Код C = A * A + B * B; +00000069: 2744 CLR R20 Clear Register +0000006A: FD37 SBRC R19,7 Skip if bit in register cleared +0000006B: 9540 COM R20 One's complement +0000006C: 2F54 MOV R21,R20 Copy register +0000006D: 01CA MOVW R24,R20 Copy register pair +0000006E: 01B9 MOVW R22,R18 Copy register pair +0000006F: 940E0085 CALL 0x00000085 Call subroutine +00000071: 017B MOVW R14,R22 Copy register pair +00000072: 018C MOVW R16,R24 Copy register pair +00000073: 019E MOVW R18,R28 Copy register pair +00000074: 2744 CLR R20 Clear Register +00000075: FD37 SBRC R19,7 Skip if bit in register cleared +00000076: 9540 COM R20 One's complement +00000077: 2F54 MOV R21,R20 Copy register +00000078: 01CA MOVW R24,R20 Copy register pair +00000079: 01B9 MOVW R22,R18 Copy register pair +0000007A: 940E0085 CALL 0x00000085 Call subroutine +0000007C: 01DC MOVW R26,R24 Copy register pair +0000007D: 01CB MOVW R24,R22 Copy register pair +0000007E: 0EE8 ADD R14,R24 Add without carry +0000007F: 1EF9 ADC R15,R25 Add with carry +00000080: 1F0A ADC R16,R26 Add with carry +00000081: 1F1B ADC R17,R27 Add with carry 13: } +00000082: 01C7 MOVW R24,R14 Copy register pair
+00000083: 940C00A4 JMP 0x000000A4 Jump
+00000085: 9F62 MUL R22,R18 Multiply unsigned +00000086: 01D0 MOVW R26,R0 Copy register pair +00000087: 9F73 MUL R23,R19 Multiply unsigned +00000088: 01F0 MOVW R30,R0 Copy register pair +00000089: 9F82 MUL R24,R18 Multiply unsigned +0000008A: 0DE0 ADD R30,R0 Add without carry +0000008B: 1DF1 ADC R31,R1 Add with carry +0000008C: 9F64 MUL R22,R20 Multiply unsigned +0000008D: 0DE0 ADD R30,R0 Add without carry +0000008E: 1DF1 ADC R31,R1 Add with carry +0000008F: 9F92 MUL R25,R18 Multiply unsigned +00000090: 0DF0 ADD R31,R0 Add without carry +00000091: 9F83 MUL R24,R19 Multiply unsigned +00000092: 0DF0 ADD R31,R0 Add without carry +00000093: 9F74 MUL R23,R20 Multiply unsigned +00000094: 0DF0 ADD R31,R0 Add without carry +00000095: 9F65 MUL R22,R21 Multiply unsigned +00000096: 0DF0 ADD R31,R0 Add without carry +00000097: 2799 CLR R25 Clear Register +00000098: 9F72 MUL R23,R18 Multiply unsigned +00000099: 0DB0 ADD R27,R0 Add without carry +0000009A: 1DE1 ADC R30,R1 Add with carry +0000009B: 1FF9 ADC R31,R25 Add with carry +0000009C: 9F63 MUL R22,R19 Multiply unsigned +0000009D: 0DB0 ADD R27,R0 Add without carry +0000009E: 1DE1 ADC R30,R1 Add with carry +0000009F: 1FF9 ADC R31,R25 Add with carry +000000A0: 01BD MOVW R22,R26 Copy register pair +000000A1: 01CF MOVW R24,R30 Copy register pair +000000A2: 2411 CLR R1 Clear Register +000000A3: 9508 RET Subroutine return Где-то 108. Цитата(Rst7 @ Oct 23 2008, 18:20)  и еще там одно деление 32 на 32, это 500 тактов Да деление, но оно одно на весь результат. Сколько там, на 8 отсчетов, 16 или 32 - сколько берем, еще не определились. Если брать много, то несколько фонем может объединиться, если брать мало, число "фонем" может возрасти, т.к. вроде бы спектр некоторых фонем динамический, и фонема получится состоящая как бы из нескольких частей. Несмотря на свое определение. Цитата(Rst7 @ Oct 23 2008, 18:20)  и еще 15 квадратных корней, у меня получилось 56*15=840. А зачем корни ? Какая разница, сравнивать значение или его корень ? И даже с корнем - тоже один корень на выборку. Цитата(Rst7 @ Oct 23 2008, 18:20)  Уже готовитесь спереть? Нет, пока думаю, скачивать файл или не скачивать ) Цитата(Rst7 @ Oct 23 2008, 18:20)  Пока выложить могу только эти две функции. Они Вам нужны? Я ж не один здесь. Надеюсь. Не подойдет мне, может кому другому подойдет.
Сообщение отредактировал Огурцов - Oct 23 2008, 19:27
|
|
|
|
|
Oct 23 2008, 19:54
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(Огурцов @ Oct 23 2008, 22:14)  8x Код : C = A * A + B * B; +00000069: 0288 MULS R24,R24 Multiply signed ... Я насчитал 7 Чипуха какая-то. Очевидно что для двух * должно быть две команды MUL. Подозреваю такая же чипуха у вас и в 16x. Теперь понятно откуда у вас берется порядок на 16x.
|
|
|
|
|
Oct 23 2008, 20:26
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
Цитата(defunct @ Oct 23 2008, 19:54)  Чипуха какая-то. Очевидно что для двух * должно быть две команды MUL. Действительно, косячище. Это мы с другом оптимизатором наоптимизили. Код +00000069: 8199 LDD R25,Y+1 Load indirect with displacement +0000006A: 8189 LDD R24,Y+1 Load indirect with displacement +0000006B: 0298 MULS R25,R24 Multiply signed +0000006C: 0190 MOVW R18,R0 Copy register pair +0000006D: 2411 CLR R1 Clear Register +0000006E: 819A LDD R25,Y+2 Load indirect with displacement +0000006F: 818A LDD R24,Y+2 Load indirect with displacement +00000070: 0298 MULS R25,R24 Multiply signed +00000071: 01C0 MOVW R24,R0 Copy register pair +00000072: 2411 CLR R1 Clear Register +00000073: 0F28 ADD R18,R24 Add without carry +00000074: 1F39 ADC R19,R25 Add with carry +00000075: 833C STD Y+4,R19 Store indirect with displacement +00000076: 832B STD Y+3,R18 Store indirect with displacement 21, из них 12 на загрузку/выгрузку. Итого 9 вместо 7. Цитата(defunct @ Oct 23 2008, 19:54)  Подозреваю такая же чипуха у вас и в 16x. Для 16x несколько лучше, в процентном оношении - стало 151, из них 16 на загрузку/выгрузку. С другой стороны вот это Код LDD R25,Y+1 Load indirect with displacement LDD R24,Y+1 можно будет заменить на Код LDD R25,Y+1 Load indirect with displacement MOV R24,R25 И вообще, с оптимизацие того же ДПФ оптимизатор скорее всего не справится...
Сообщение отредактировал Огурцов - Oct 23 2008, 20:20
|
|
|
|
|
Oct 23 2008, 22:06
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(Огурцов @ Oct 23 2008, 23:26)  Для 16x несколько лучше, в процентном оношении - стало 151, из них 16 на загрузку/выгрузку. Моя цифра - 38 (32-х битный результат): Код .def AL = R24 .def AH = R25
.def z_reg = R2
.def u32_b0 = R18 .def u32_b1 = R19 .def u32_b2 = R20 .def u32_b3 = R21
; --> ax 16 bit operand ; <-- 32 bit result u32_xx .MACRO sqr_ax mul ah, ah movw u32_b3: u32_b2, r1:r0
mul al, al movw u32_b1: u32_b0, r1:r0
mul ah, al
add u32_b1, r0 adc u32_b2, r1 adc u32_b3, z_reg
add u32_b1, r0 adc u32_b2, r1 adc u32_b3, z_reg .endmacro
.cseg ldi AL, Low(RAMEND) out SPL, AL ldi AL, High(RAMEND) out SPH, AL
clr z_reg
; начинаем счет таков отсюда ;-----> C = A * A + B * B (a=1234, b=567, c should be 1844245) ldi al, Low(1234) ldi ah, High(1234) sqr_ax ; A * A
movw r5:r4, u32_b1:u32_b0 movw r7:r6, u32_b3:u32_b2
ldi al, Low(567) ldi ah, High(567) sqr_ax ; B * B
add u32_b0, r4 adc u32_b1, r5 adc u32_b2, r6 adc u32_b3, r7 ; A * A + B * B Результат в u32_xx (b3 - MSB, b0 - LSB).
|
|
|
|
|
Oct 23 2008, 23:07
|

Ambidexter
    
Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282

|
Цитата(defunct @ Oct 23 2008, 21:18)  Уже немного оптимизировал, из 44-х тактов осталось 38. знаковые/беззнаковые не суть важно. (при возведении в квадрат всегда получаем положительное число, поэтому отрицательные операнды можно предварительно преобразовать в положительные, рез-тат не изменится, а по тактам такое преобразование - чепуха, никак не > 100). Не скажите, ведь надо делать два преобразования 16-битных чисел для каждой спектральной составляющей, что добавит десяток тактов к вашему умножению. Возможно оптимальнее будет использовать комбинацию MUL для младших байтов и MULS для старших. Кстати, спасибо, вы дали ответ на мой вопрос, насколько в данном случае авр уступает дсп по скорости (боюсь, какбы друит не набежал(:-)) - примерно в 38+38 = 76 раз по тактам, а если учесть знаковую конверсию, то вгрубе будет 100.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
Oct 23 2008, 23:34
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(=GM= @ Oct 24 2008, 02:07)  Не скажите, ведь надо делать два преобразования 16-битных чисел для каждой спектральной составляющей, что добавит десяток тактов к вашему умножению. Почему два? Положительных составляющих типа не бывает? ;> Цитата Возможно оптимальнее будет использовать комбинацию MUL для младших байтов и MULS для старших. Для младших надо сделать операцию NEG. иначе такое умножение ни к чему хорошему не приведет. Цитата учесть знаковую конверсию, то вгрубе будет 100. Если преобразовывать сразу при расчете, то это сведется к доп. 3-м тактам в худшем случае (к двум в лучшем) на каждую составлющую: Код brpl __store com RxH neg RxL __store: в среднем +5 тактов к 38-ми
|
|
|
|
|
Oct 24 2008, 10:53
|

Ambidexter
    
Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282

|
Цитата(defunct @ Oct 23 2008, 22:34)  Почему два? Положительных составляющих типа не бывает? Два, потому что есть действительная и мнимая составляющая спектра, каждую надо проверять на знак. Загрузку считать надо обязательно, поскольку множители не константы. (Подправил цифры, почему-то считал, что movw выполняется за два такта.) Вот мой вариант перемножения (a1,a0)*(a1,a0)+(b1,b0)*(b1,b0)->(c3,c2,c1,c0), сделанный на базе ваших макросов, просто отказался от регистров промежуточного хранения r7-r4 Код ld a1,y+ ld a0,y+ ld b1,y+ ld b0,y+
mul a1,a1 movw c2,r0 mul a0,a0 movw c0,r0 mul a1,a0 add c1,r0 adc c2,r1 adc c3,r2 add c1,r0 adc c2,r1 adc c3,r2
mul b1,b1 add c2,r0 adc c3,r1 mul b0,b0 add c0,r0 adc c1,r1 adc c2,r2 adc c3,r2 mul b1,b0 add c1,r0 adc c2,r1 adc c3,r2 add c1,r0 adc c2,r1 adc c3,r2 Итого 32 такта на вычисления, всего, с загрузкой множителей из рамы, получилось 40 тактов. Ещё можно сэкономить регистры b1, b0, если делать загрузку второго множителя в регистры (a1,a0) непосредственно перед вычислением (b1,b0)*(b1,b0). (Третий раз корректирую, спасибо rst7) Цитата(defunct @ Oct 23 2008, 22:34)  Если преобразовывать сразу при расчете, то это сведется к доп. 3-м тактам в худшем случае (к двум в лучшем) на каждую составлющую: Код brpl __store com RxH neg RxL __store: Хм, загрузка множителя не даёт флагов, надо делать тестирование, а это доптакты. Вы привели неполный код для конверсии. В среднем у вас будет будет 6 тактов, т.е. для вашего кода в среднем будет 38+6=44 на вычисления плюс 8 на загрузку, всего 52.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
Oct 24 2008, 11:08
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(=GM= @ Oct 24 2008, 13:53)  Два, потому что есть действительная и мнимая составляющая спектра. И они обе отрицательные всегда?  Цитата Не знаю, как вы считали такты, для вашего кода у меня получилось ровно 40 тактов, не считая загрузки множителей. Загрузку считать надо обязательно, поскольку они не константы. AVR-студией, код приведен. Загрузка операндов там есть, правда не из RAM а из флеш, но по скорости одинаково. Цитата Хм, загрузка множителя не даёт флагов, надо делать тестирование, а это доптакты. Вы привели неполный код для конверсии. В среднем у вас будет будет 6 тактов, т.е. для вашего кода в среднем будет 40+6=46 на вычисления плюс 8 на загрузку, всего 54. Нет не будет там 6 тактов в среднем, в среднем будет 5, как я и написал, из расчета что одна из составляющих уже положительная. Вчитайтесь в то что я написал. Преобразовывать сразу при расчете. - расчитали спектральную составляющую и перед сохранением (пока еще флаги известны) сделали модуль. Вы же предполагаете что модуль будет считаться после загрузки. i.e.: 1. расчет составляющей <-- я предлагаю преобразование делать сразу здесь 2. сохранение в массив 3. загрузка из массива <-- вы предполагаете преобразование делать здесь 4. вычисление мощности
|
|
|
|
Сообщений в этой теме
Johan Krava Voice recognition with AVR Oct 18 2008, 14:08 Flasher Ну да, так тебе все и выложили, и еще в исходниках... Oct 18 2008, 18:42 defunct Key word - FFT. Oct 18 2008, 21:13  Flasher Цитата(defunct @ Oct 19 2008, 01:13) Key ... Oct 18 2008, 21:16   defunct Цитата(Flasher @ Oct 19 2008, 00:16) ага,... Oct 18 2008, 22:11    DRUID3 Цитата(defunct @ Oct 19 2008, 01:11) Ну а... Oct 18 2008, 23:35     ATLab Ой, ну автор насмешил! На PC эта хрень толком ... Oct 19 2008, 01:34      Огурцов Цитата(ATLab @ Oct 19 2008, 01:34) Мне, к... Oct 19 2008, 01:39       NetTracer Цитата(Огурцов @ Oct 19 2008, 04:39) М.б.... Oct 19 2008, 10:20        Огурцов Цитата(NetTracer @ Oct 19 2008, 10:20) Фи... Oct 19 2008, 13:27      defunct Цитата(ATLab @ Oct 19 2008, 04:34) Речь -... Oct 19 2008, 04:46 Flasher ну с этого готового проекта я как-то начинал... ре... Oct 19 2008, 10:54 NetTracer Цитата(Flasher @ Oct 19 2008, 13:54) ... ... Oct 19 2008, 11:36 ARV а что скажете по этому поводу: http://qrx.narod.ru... Oct 19 2008, 16:05 Rst7 ЦитатаЭто восьмибитные мипсы.
Ага... Чернила для ... Oct 19 2008, 16:27 Огурцов Цитата(Rst7 @ Oct 19 2008, 16:27) Ага... ... Oct 19 2008, 18:11  Rst7 Цитата(Огурцов @ Oct 19 2008, 21:11) Чего... Oct 19 2008, 18:38   Огурцов Цитата(Rst7 @ Oct 19 2008, 18:38) Мы тут ... Oct 19 2008, 20:04   =GM= Прошу простить джентльмены, что прерываю вашу высо... Oct 20 2008, 12:25 Rst7 ЦитатаВообще, я с 16-битными операндами сравнивал.... Oct 20 2008, 05:49 Огурцов Цитата(Rst7 @ Oct 20 2008, 05:49) Да ну? ... Oct 20 2008, 11:25  blackfin Цитата(Огурцов @ Oct 20 2008, 15:25) Пото... Oct 20 2008, 11:36 Rst7 ЦитатаНеужто 8-битный авр и 32-битный авр различае... Oct 20 2008, 12:35 =GM= Цитата(Rst7 @ Oct 20 2008, 11:35) Ну зайд... Oct 20 2008, 12:37 blackfin Цитата(Rst7 @ Oct 20 2008, 16:35) PS Там ... Oct 20 2008, 13:03 Огурцов Цитата(Rst7 @ Oct 20 2008, 12:35) Мы врод... Oct 20 2008, 14:15 Rst7 http://electronix.ru/forum/index.php?s=&am...st... Oct 20 2008, 12:42 Rst7 Цитатаодну и ту же картинку
Безусловно. Посему, д... Oct 20 2008, 13:10 Rst7 ЦитатаВы.
Не передергивайте. Вы начали про ... Oct 20 2008, 14:23 zltigo Цитата(Rst7 @ Oct 20 2008, 16:23) И имеет... Oct 20 2008, 14:49  Rst7 Цитата(zltigo @ Oct 20 2008, 17:49) Надо ... Oct 20 2008, 18:26   zltigo Цитата(Rst7 @ Oct 20 2008, 20:26) Точно. ... Oct 20 2008, 18:30 Огурцов Цитата(Rst7 @ Oct 20 2008, 14:23) Не пере... Oct 20 2008, 16:07  defunct Цитата(Огурцов @ Oct 20 2008, 19:07) Ну т... Oct 20 2008, 16:35   Огурцов Цитата(defunct @ Oct 20 2008, 16:35) Так ... Oct 20 2008, 17:15    defunct Цитата(Огурцов @ Oct 20 2008, 20:15) Расп... Oct 20 2008, 17:37     Огурцов Цитата(defunct @ Oct 20 2008, 17:37) mul ... Oct 20 2008, 19:28      defunct Цитата(Огурцов @ Oct 20 2008, 22:28) Ну т... Oct 21 2008, 14:11       Огурцов Цитата(defunct @ Oct 21 2008, 14:11) но н... Oct 21 2008, 15:53        =GM= Цитата(Огурцов @ Oct 21 2008, 14:53) Не в... Oct 21 2008, 16:02         Огурцов Цитата(=GM= @ Oct 21 2008, 16:02) Куда?
М... Oct 21 2008, 18:03        defunct Цитата(Огурцов @ Oct 21 2008, 18:53) Не з... Oct 21 2008, 16:12     =GM= Цитата(defunct @ Oct 20 2008, 16:37) С ог... Oct 21 2008, 14:56      defunct Цитата(=GM= @ Oct 21 2008, 17:56) Если с ... Oct 21 2008, 15:01 Rst7 Нет, народ. Это все измерение пиписек. При таком п... Oct 21 2008, 16:07 Rst7 Цитатаговорил что щелкал FFT на m48 в real-time.
... Oct 21 2008, 16:24 defunct Цитата(Rst7 @ Oct 21 2008, 19:24) Еще раз... Oct 21 2008, 16:41 Rst7 ЦитатаОк предлагаю рассмотреть
1. Ну видимо ... Oct 21 2008, 16:54 =GM= Цитата(Rst7 @ Oct 21 2008, 15:54) 3b (сра... Oct 21 2008, 20:23 defunct Цитата(Rst7 @ Oct 21 2008, 19:54) 2. Не в... Oct 21 2008, 20:34  Огурцов Цитата(defunct @ Oct 21 2008, 20:34) 9/2 ... Oct 21 2008, 21:06   Petka Цитата(Огурцов @ Oct 22 2008, 01:06) Ок, ... Oct 21 2008, 21:20    Огурцов Цитата(Petka @ Oct 21 2008, 21:20) 2. А в... Oct 21 2008, 21:49   defunct Цитата(Огурцов @ Oct 22 2008, 00:06) Ок, ... Oct 21 2008, 21:21 Rst7 ЦитатаДумаю возможно, но это будет FCT.
Ну в смыс... Oct 22 2008, 05:14 blackfin Цитата(Rst7 @ Oct 22 2008, 09:14) Ну в см... Oct 22 2008, 05:41  Огурцов Можно я еще встряну ? Вы о каких герцах говорите, ... Oct 22 2008, 19:23 Petka Цитата(Rst7 @ Oct 22 2008, 09:14) Вот есл... Oct 22 2008, 08:47 Rst7 Цитатаblackfin ... за ~300 тактов CPU.
AVR - боль... Oct 22 2008, 06:27 Rst7 Цитата3. Для каждой выборки считать FFT в real-tim... Oct 22 2008, 08:09 defunct Цитата(Rst7 @ Oct 22 2008, 11:09) Слушайт... Oct 22 2008, 15:38 DRUID3 Цитата(ATLab @ Oct 19 2008, 04:34) Ой, ну... Oct 22 2008, 08:17 Rst7 ЦитатаАбсолютно прав.
Я бы, конечно, предпочел от... Oct 22 2008, 08:51 DRUID3 Цитата(Rst7 @ Oct 22 2008, 11:51) Я бы, к... Oct 22 2008, 09:03 Petka Цитата(Rst7 @ Oct 22 2008, 12:51) Я бы, к... Oct 22 2008, 09:09  DRUID3 Цитата(Petka @ Oct 22 2008, 12:09) Ну так... Oct 22 2008, 09:14 Rst7 Цитатаа зачем Вам спектр мощности?
Я может не так... Oct 22 2008, 09:45 Rst7 ЦитатаНе совсем, просто это отразится на методе ср... Oct 22 2008, 15:51 Rst7 ЦитатаМожно я еще встряну ?
Конечно нельзя, что з... Oct 23 2008, 10:22 defunct Цитата(Rst7 @ Oct 23 2008, 13:22) Теперь ... Oct 23 2008, 11:16  Огурцов А как нормировать по частоте и ширине спектра ? Ве... Oct 23 2008, 11:42 Rst7 ЦитатаДа, в заренее заготовленные кстати не забыва... Oct 23 2008, 11:38 defunct Цитата(Rst7 @ Oct 23 2008, 14:38) все мощ... Oct 23 2008, 15:07 Rst7 ЦитатаИ это будет выигрыш на порядок.
Ну покажите... Oct 23 2008, 12:01 Огурцов Цитата(Rst7 @ Oct 23 2008, 12:01) Ну пока... Oct 23 2008, 13:38  blackfin Цитата(Огурцов @ Oct 23 2008, 17:38) ...ж... Oct 23 2008, 13:51   Огурцов Если из этих трех - патологоанатом. Наблюдающий. Oct 23 2008, 13:59      =GM= Цитата(Огурцов @ Oct 23 2008, 19:26) 21, ... Oct 23 2008, 22:06       Огурцов Цитата(=GM= @ Oct 23 2008, 22:06) Вообще ... Oct 23 2008, 22:32 Rst7 ЦитатаНу эта...
Ну то. Так что, слабо? Давайте, В... Oct 23 2008, 13:45 Rst7 Господа, ну вы что, думаете, что я не знаю, как бы... Oct 24 2008, 03:35 Rst7 Для тех, кому не терпится, выкладываю проект и лис... Oct 24 2008, 10:46 Rst7 Цитата brpl __store
com RxH
neg RxL
__store:... Oct 24 2008, 11:29 defunct Цитата(Rst7 @ Oct 24 2008, 14:29) Чтото м... Oct 24 2008, 11:58 Rst7 ЦитатаВот мой вариант перемножения (a1,a0)*(a1,a0)... Oct 24 2008, 12:04 DRUID3 Господа оптимизаторы. Объясните мне, сирому, зачем... Oct 25 2008, 09:37 Rst7 Цитатасчитать спектр мощности при этом теряя всю и... Oct 25 2008, 09:54
2 страниц
1 2 >
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|