реклама на сайте
подробности

 
 
> Voice recognition with AVR
Johan Krava
сообщение Oct 18 2008, 14:08
Сообщение #1





Группа: Новичок
Сообщений: 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.


--------------------
avrmicrocontrollers.com - AVR Microcontrollers
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Rst7
сообщение Oct 23 2008, 13:19
Сообщение #2


Йа моск ;)
******

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



Ну что, вычисление мощностей с нормированием - это плюс 3200 тактов. Там, конечно, можно с бубном поплясать, но особо меньше не будет.

Итого пока 5200 тактов. На очереди - сравнение.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 23 2008, 13:50
Сообщение #3


Гуру
******

Группа: Участник
Сообщений: 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) *
Так что, слабо?

На слабо меня не взять. А вот перспективной идеей - можно.


Так что там, есть уже какие наработки ? Или выложить слабо (с) ?
Go to the top of the page
 
+Quote Post
Rst7
сообщение Oct 23 2008, 18:20
Сообщение #4


Йа моск ;)
******

Группа: Модераторы
Сообщений: 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, даже больше, чем мой код wink.gif

Другое дело, там прилично накладных расходов в связи с тем, что данные для каждой частоты расположены на выходе ДПХ не очень удачно для простой обработки. Но это, я думаю, можно будет устранить. Однако, больших чудес ждать не приходится. Ну и с другой стороны, эта часть кода имеет сложность O(n), так что если вдруг будем увеличивать количество точек, общий вес этой части уменьшится.

Цитата
На слабо меня не взять. А вот перспективной идеей - можно.


Зачем Вам идеи? Вы же все знаете и все умеете? wink.gif

Цитата
Так что там, есть уже какие наработки ? Или выложить слабо (с) ?

Уже готовитесь спереть? Пока выложить могу только эти две функции. Они Вам нужны?


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 23 2008, 19:14
Сообщение #5


Гуру
******

Группа: Участник
Сообщений: 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
Go to the top of the page
 
+Quote Post
defunct
сообщение Oct 23 2008, 19:54
Сообщение #6


кекс
******

Группа: Свой
Сообщений: 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.
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 23 2008, 20:26
Сообщение #7


Гуру
******

Группа: Участник
Сообщений: 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
Go to the top of the page
 
+Quote Post
defunct
сообщение Oct 23 2008, 22:06
Сообщение #8


кекс
******

Группа: Свой
Сообщений: 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).
Go to the top of the page
 
+Quote Post
=GM=
сообщение Oct 23 2008, 22:17
Сообщение #9


Ambidexter
*****

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



Цитата(defunct @ Oct 23 2008, 21:06) *
Моя цифра - 44 (32-х битный результат)

Вроде бы надо перемножать знаковые 16-битные числа, разве нет?


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
defunct
сообщение Oct 23 2008, 22:18
Сообщение #10


кекс
******

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



Цитата(=GM= @ Oct 24 2008, 01:17) *
Вроде бы надо перемножать знаковые 16-битные числа, разве нет?

Уже немного оптимизировал, из 44-х тактов осталось 38.
знаковые/беззнаковые не суть важно. (при возведении в квадрат всегда получаем положительное число, поэтому отрицательные операнды можно предварительно преобразовать в положительные, рез-тат не изменится, а по тактам такое преобразование - чепуха, никак не > 100).
Go to the top of the page
 
+Quote Post
=GM=
сообщение Oct 23 2008, 23:07
Сообщение #11


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.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
defunct
сообщение Oct 23 2008, 23:34
Сообщение #12


кекс
******

Группа: Свой
Сообщений: 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-ми
Go to the top of the page
 
+Quote Post
=GM=
сообщение Oct 24 2008, 10:53
Сообщение #13


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.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
defunct
сообщение Oct 24 2008, 11:08
Сообщение #14


кекс
******

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



Цитата(=GM= @ Oct 24 2008, 13:53) *
Два, потому что есть действительная и мнимая составляющая спектра.

И они обе отрицательные всегда? smile.gif

Цитата
Не знаю, как вы считали такты, для вашего кода у меня получилось ровно 40 тактов, не считая загрузки множителей. Загрузку считать надо обязательно, поскольку они не константы.

AVR-студией, код приведен. Загрузка операндов там есть, правда не из RAM а из флеш, но по скорости одинаково.

Цитата
Хм, загрузка множителя не даёт флагов, надо делать тестирование, а это доптакты. Вы привели неполный код для конверсии. В среднем у вас будет будет 6 тактов, т.е. для вашего кода в среднем будет 40+6=46 на вычисления плюс 8 на загрузку, всего 54.

Нет не будет там 6 тактов в среднем, в среднем будет 5, как я и написал, из расчета что одна из составляющих уже положительная.
Вчитайтесь в то что я написал. Преобразовывать сразу при расчете. - расчитали спектральную составляющую и перед сохранением (пока еще флаги известны) сделали модуль. Вы же предполагаете что модуль будет считаться после загрузки.

i.e.:

1. расчет составляющей
<-- я предлагаю преобразование делать сразу здесь
2. сохранение в массив
3. загрузка из массива
<-- вы предполагаете преобразование делать здесь
4. вычисление мощности
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- 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 страниц V   1 2 >


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st August 2025 - 18:43
Рейтинг@Mail.ru


Страница сгенерированна за 0.01658 секунд с 7
ELECTRONIX ©2004-2016