Witajcie.
Kilka dni temu otrzymałem paczke, a w niej zamówiony zestaw ewaluacyjny procesora FXCore firmy Experimental Noize. Jest to firma należąca do Franka Thompsona, jednego ze współautorów procesora FV-1, a więc można uznać, że FXCore jest jego następcą ( FV-1, nie Franka
FXCore jest procesorem DSP podobnym pod wieloma względami do FV-1, ale o wiele bardziej zaawansowanym. Jeśli chodzi o różnice sprzętowe to główną jest fakt, że procesor nie posiada zintegrowanych przetworników ADC/DAC. Dla jednych będzie to wada, dla innych zaleta. Natomiast reszta zmian jest już jak najbardziej na plus. Spójrzmy na możliwości tego maleństwa:
- 4 wejścia i 4 wyjścia audio mogące pracować równocześnie (dwie magistrale I2S),
- 6 wejść potencjometrycznych o rozdzielczości 12 bitów i z możliwością konfiguracji ich wygładzania,
- konfigurowalny zegar częstotliwości próbkowania (12kHz, 24kHz, 32kHz, 48kHz) z możliwością pracy z zewnętrznym generatorem,
- wbudowana pamięć FLASH na 16 programów (programowana poprzez I2C),
- wejście TAP służące do 'wbijania' rytmu,
- wejście ENABLE działające jako bypass,
- 5 wejść ogólnego przeznaczenia (włączanie różnych funkcji w kodzie),
- 2 wyjścia ogólnego przeznaczenia (np do komunikacji użytkownikowi stanu w kodzie),
- wbudowany generator szumu (liczb losowych),
- 4 generatory LFO sinusa i 2 typu ramp,
- 128 rejestrów ogólnego przeznaczenia,
- 32-bitowe operacje.
Kontrowersje budzi natomiast ilość pamięci RAM przeznaczonej na opóźnienia. Zastosowano tu bowiem taką samą pojemność jak w FV-1, tj. 32k sampli. Bez żartów, mogli już dołożyć drugi taki blok albo zwiększyć ten chociaż do 64k. W obecnej postaci, przy częstotliwości próbkowania 48kHz maksymalna długość opóźnienia to 683ms. W mono. Można niby obniżyć częstotliwość próbkowania do 12kHz, wtedy dostępne opóźnienie wyniesie ~2,67 sekundy, ale nie będzie się dało tego słuchać. Do gitary może tak, ale do normalnej muzyki raczej odpada.
Nie pokuszono się niestety o dodanie jakiejś magistrali typu I2C mogącej modyfikować zmienne w kodzie w czasie rzeczywistym, ale biorąc pod uwagę ilość wejść (zwykłych jak i potencjometrycznych), można będzie sobie z tym poradzić na inne sposoby.
W przeciwieństwie do FV-1, tutaj nie zdecydowano się na implementację instrukcji wykonujących się w jednym takcie zegarowym, zapewne z uwagi na dostępną ilość instrukcji, których jest o wiele więcej niż w FV-1. Natomiast zwiększono prędkość zegara taktującego. Każdy z programów może składać się z 1024 instrukcji (czyli 8x więcej niż FV-1) jednak, jak twierdzi datasheet, procesor może nie być w stanie ich wszystkich wykonać w trakcie jednej próbki sygnału. Dostępnych jest około 3,5k cykli zegarowych przy próbkowaniu 48kHz na każdą próbkę. Jak wyczytałem na forum poświęconym FXcore, w praktyce będzie to średnio około 400 instrukcji na każdą próbkę, a więc całkiem wystarczająco. W razie problemów, obniżenie częstotliwości próbkowania pozwoli na wykonanie większej ilości instrukcji.
Słowem podsumowania: nie mam jeszcze praktycznie żadnego doświadczenia z programowaniem tego procesora, ale sam język wygląda bardzo podobnie do assemblera użytego dla FV-1. Jest on po prostu znacznie bardziej rozbudowany.
Programy demonstracyjne wgrane oryginalnie do procesora są średnie, raczej pisane pod pedał gitarowy, ale sam procesor ma ogromny potencjał.
No i najważniejsze - cena. To cudo kosztowało mnie jakieś 185$ z wysyłką i VAT-em, a więc jakieś 850zł w przeliczeniu! Szok. Myślę, że spokojnie dałoby się złożyć taki devboard za mniej niż połowe tej ceny, ale zależało mi na załatwieniu sobie czegoś gotowego. Kupiłem to u oficjalnego dystrybutora ProFusion. Oni mają siedzibę w UK, ale magazyn wysyłkowy jest w Holandii więc paczka przyszła DHL-em w 3 dni.
Poniżej wideo prezentujące oryginalne efekty. Nie chciało mi się ich podpisywać, a więc zainteresowanych "co jest co" odsyłam do noty katalogowej - na samym końcu jest spis wszystkich efetków oraz ich regulacji.
Fajne? Ranking DIY