urock @ sitcon 2015
TRANSCRIPT
⾃自我介紹•本名:楊宗凡 •綽號:浪打、sonicyang •來⾃自:成⼤大電機⼆二年級 •成⼤大C4Labs成員
• sonicyang.me • github.com/sonicyang
MicrocontrollerARM Cortex M4F
ARMv7 180 Mhz FPU SIMD
IEEE754
10100010101011010001010
1010001010101100101010101
101000101010110100010101100101
Data Pipe
ADC
DAC
Buffer (12bits unsigned)
Q12.20 (Fix-Point Signed)
Effect 1 (Configurable)
Effect 2 (Configurable)
Effect 3 (Configurable)
Effect 4 (Configurable)
Wave Audio (SD Card)
Q12.20 (Fix-Point Signed)
Buffer (12bits unsigned)
乘法
6.253.125✕—————————————————
19.53125
00110.01000011.001✕
————————————————————————————
10011.100010
同理⼀一共6位⼤大家都知道是五位⼩小數
010
過多的要捨去 保留MSB
Saturation Arithmetic
• Distortion除了⽤用判斷的Clip還可以⽤用飽和運算達成 •⼀一般 Signed 16bits 運算
• 16384 * 2 > 32767 所以會是 - 32768 •飽和 Signed 16bits 運算
• 16384 * 2 > 32767 會鎖在 32767
Delay & Reverb
• 500 ms進⼊入實⽤用範圍
• 由於內部的記憶體不夠⼤大,所以使⽤用外部的記憶體
• 外部 I/O 成為速度瓶頸
Data (t) In Data (t) Out+
Data (t - 1) Data (t - 2) Data (t - 3)
Further InformationGithub : github.com/sonicyang/urock
Hackpad : uRock.hackpad.com