Resultat 1 till 60 av 60

Ämne: Hur funkar egentligen röster/filter i en digital synt?

  1. #1
    kockpit
    kockpit är inte uppkopplad
    kockpits avatar
    Veteran

    Hur funkar egentligen röster/filter i en digital synt?

    Analogt, inga konstigheter.
    VA, gissar vilt att det är en processor, "röster" och filter o.s.v. är helt upp till programmeraren och tekniska begränsningar.
    Men i t.ex. en JV-3080, "digitala filter" heter det oftast. Rolle har alltid haft bra sådana, tycker t.ex. inte att t.ex. EMU ESI är i närheten. Vad beror det på? Hur funkar det? Är det ändå separata "digitala filterchip" eller nåt sånt?

  2. #2
    charliecrash
    charliecrash är uppkopplad nu
    charliecrashs avatar
    Veteran
    Snart kommer rätt svar. Tills dess gissar jag att det är DSP, precis som en dator. En kärna driver mjukvara att alstra ett visst antal kanaler med virtuella vco/filter/env, hur mycket nu arbetsminnet orkar med, och hur snabbt ROM orkar spotta ut ljud. I fallet romplers är det ju speciella chip med en viss prestanda, men principen är som en dator.

    Nu kommer rätt svar: ()

  3. #3
    theVOID
    theVOID är inte uppkopplad
    theVOIDs avatar
    Vintage
    Det handlar inte bara om datorkraft, tex hur stark signal processor man har. Utan även på vilken typ av filter man vill implementera.
    Vet ej om man gjorde filter i FPGA på den tiden, oftast var det ju helt egentillverkade ASIC chip, ett per voice i många fall, men fanns säkert andra lösningar. Sen kom ju tex Motorola med sina SHARC DSPer som Clavia mfl använde i sina Nord Leads, som var generella chip som kunde beräkna alla möjliga filter i realtid utan att vara låst till en särskilt arkitektur.

    Den signalbehandling jag själv gjort handlar oftast om att man modellerar funktionalitet i matlab och sedan implementerar i C på en DSP.
    Finns även de som i princip genererar C kod direkt från Matlab. Görs bla i försvarsindustrin

    Här är en matlab modell för det klassiska Moog filtret
    https://patrickignoto.com/2017/04/11...final-project/

    Roland och EMU hade säkert olika filter ideal, även om nog arkitekturen skiljer sig åt så vet jag att bägge hade specialchip på den tiden, för röst tror jag i EMUs fall. De hade tex sitt G chip som var en Emulator II på ett VLSI chip.(ASIC)

  4. #4
    hasse_fx
    hasse_fx är inte uppkopplad
    hasse_fxs avatar
    Vintage
    [Nerd]
    Njae, SHARC från Analog Devices och Motorola 56000-serien (sedermera Freescale och nu NXP) är konkurrenter när det gäller DSP-kretsar. NORD använde (och använder?) 56000-kretsarna från och med NL1...
    [/Nerd]

  5. #5
    kockpit
    kockpit är inte uppkopplad
    kockpits avatar
    Veteran
    Men fattar jag det rätt då, VA och rompler (med t.ex. filter) kan fungera på samma sätt, DSP med programvara som mer eller mindre emulerar analoga kretsar?
    Så en gammal Rolle med dedikerad controller blir lika mycket VA efter OSC som Nord Lead?
    Tror PF i någon tråd varit inne på att D-50 egentligen var den första VA:n, eftersom den genererar de icke samplade vågformerna matematiskt?

    Anledningen till frågeställningen är att filtret i XV-3080 (som sagt) är så mycket fetare i ESI (vill dock minnas att Emax II var mycket bättre) och att det inte per se beror på hårdvaran, utan vad som kodats?

  6. #6
    theVOID
    theVOID är inte uppkopplad
    theVOIDs avatar
    Vintage
    Citat Ursprungligen postat av hasse_fx Visa inlägg
    This quote is hidden because you are ignoring this member.
    [Nerd]
    Njae, SHARC från Analog Devices och Motorola 56000-serien (sedermera Freescale och nu NXP) är konkurrenter när det gäller DSP-kretsar. NORD använde (och använder?) 56000-kretsarna från och med NL1...
    [/Nerd]
    Aha! Fick det visst om baktassarna. Men är det inte Sharcar i Nord modular G1?

  7. #7
    synthetic
    synthetic är inte uppkopplad
    synthetics avatar
    Veteran
    Citat Ursprungligen postat av theVOID Visa inlägg
    This quote is hidden because you are ignoring this member.
    Aha! Fick det visst om baktassarna. Men är det inte Sharcar i Nord modular G1?
    SHARC användes av Creamware Pulsar-korten.

    "
    Clavia Nord Lead-1 --- Motorola 56002 (4-voices from a Turtle beach Fiji chip)
    Clavia Micro Modular --- Motorola 56303
    Clavia Nord Modular --- Motorola 56303 (4 of)
    The Nord Lead 3 has 6 Motorola 56362 DSPs,
    The Nord Lead 2 has 4 Motorola 56002 DSPs
    The Nord Modular has 4 (expandable to 8) Motorola 56303 DSPs.

    Access Virus A --- Motorola 56303
    Access Virus B --- Motorola 56311
    virus c - unknown motorola (1x DSP !) virus caccess virus C

    "

    https://www.sequencer.de/synth/index...n_Synthesizers

  8. #8
    makari
    makari är uppkopplad nu
    makaris avatar
    Veteran
    Citat Ursprungligen postat av kockpit Visa inlägg
    This quote is hidden because you are ignoring this member.
    Men fattar jag det rätt då, VA och rompler (med t.ex. filter) kan fungera på samma sätt, DSP med programvara som mer eller mindre emulerar analoga kretsar?
    Så en gammal Rolle med dedikerad controller blir lika mycket VA efter OSC som Nord Lead?
    Ja, digitala filter = DSP. Sen kan det vara implementerat i dsp-chip som SHARC eller 56-serien, eller nåt annat. Roland har väl ofta gjort sina egna ASICs till exempel. Men filtren utgörs av matematiska beräkningar på signalen.

    VA är mer en marknadsföringsterm än en specifik teknisk term. Det är säkert olika kod i filtren till en Nord Lead och en JV-1080, med det är fortfarande kod. Modernare mjuksynthar som UHe DIva och andra har gått långt mycket längre i att emulera analoga filter än nord lead, men det fortfarande kod.

  9. #9
    Johan Runeson
    Johan Runeson är inte uppkopplad
    Johan Runesons avatar
    Senior
    Clavia bytte DSP:er från Motorola/Freescale till SHARC i och med Nord Lead 4. Numera är det mestadels SHARC+ (från Nord Wave 2).
    DSP-koden skriver jag och mina kolleger uteslutande i assembler
    Senast redigerat av Johan Runeson den 2023-04-12 klockan 13:37.

  10. #10
    theVOID
    theVOID är inte uppkopplad
    theVOIDs avatar
    Vintage
    ❤️

  11. #11
    makari
    makari är uppkopplad nu
    makaris avatar
    Veteran
    Citat Ursprungligen postat av Johan Runeson Visa inlägg
    This quote is hidden because you are ignoring this member.
    DSP-koden skriver jag och mina kolleger uteslutande i assembler
    Respect!

  12. #12
    Erik G
    Erik G är inte uppkopplad
    Erik Gs avatar
    Veteran
    Egentligen handlar det inte om ifall man använder FPGA, ASIC eller DSP. Det är bara olika lösningar för samma uppgift.
    En digital synth implementerar filter, amp, envelopper och LFO på i princip samma sätt som sina analoga föregångare. Fast i den digitala domänen då.
    I fallet filter så gör man en s.k. z-transform av filtrets överföringsfunktion, för att det ska operera tidsdiskret istf tidskontinuerligt.
    Den stora skillnaden är egentligen oscillatorerna, där vi kan dela in dem i
    "Tabellslagning": Romplers och wavetables (även sinusarna i FM) samt
    "Realtidsberäkning": Vågformen räknas fram efterhand, som vid enkla vågformer och diverse vågformsmodulation/distortion.

    VA är inte direkt någon digital syntesmetod utan handlar mer om att dels ha ett användargränssnitt som påminner om en analogsynt och dels att försöka implementera t.ex. filter så att det låter så "analogt" som möjligt.

  13. #13
    hasse_fx
    hasse_fx är inte uppkopplad
    hasse_fxs avatar
    Vintage
    Citat Ursprungligen postat av Johan Runeson Visa inlägg
    This quote is hidden because you are ignoring this member.
    Clavia bytte från DSP:er från Motorola/Freescale till SHARC i och med Nord Lead 4. Numera är det mestadels SHARC+ (från Nord Wave 2).
    DSP-koden skriver jag och mina kolleger uteslutande i assembler
    Cool! SHARC verkar ta över mycket av audio-DSP-marknaden. Det är väl för att 56k inte utvecklas längre efter alla övertaganden?

  14. #14
    Albedo
    Albedo är inte uppkopplad
    Albedos avatar
    Veteran
    En processor och programvara helt enkelt, inget annat konstigt.
    Korg gick en enkel väg med Kronos, och använde ett vanligt Intel moderkort med Intelprocessor i synthen.

  15. #15
    Johan Runeson
    Johan Runeson är inte uppkopplad
    Johan Runesons avatar
    Senior
    Korg kör numera även Raspberry Pi Compute Module rakt av i flera produkter (typ ModWave?).

  16. #16
    Framerate
    Framerate är inte uppkopplad
    Framerates avatar
    Veteran
    Citat Ursprungligen postat av Johan Runeson Visa inlägg
    This quote is hidden because you are ignoring this member.
    Korg kör numera även Raspberry Pi Compute Module rakt av i flera produkter (typ ModWave?).
    Exakt, det är väl deras trio Wavestate, Opsix och Modwave. Verkar vara rätt bra kräm i den hårdvaran för en digitalsynt ex vis.

    https://www.raspberrypi.com/success-...-synthesizers/

  17. #17
    hasse_fx
    hasse_fx är inte uppkopplad
    hasse_fxs avatar
    Vintage
    Det var väl effektburkar var de första när Analog Devices introducerade SHARC. Fractal och Neural DSP kör ett par kombi SHARC/ARM-chip...

    https://www.analog.com/en/landing-pa...ad-cortex.html

  18. #18
    kockpit
    kockpit är inte uppkopplad
    kockpits avatar
    Veteran
    Citat Ursprungligen postat av Johan Runeson Visa inlägg
    This quote is hidden because you are ignoring this member.
    Clavia bytte DSP:er från Motorola/Freescale till SHARC i och med Nord Lead 4. Numera är det mestadels SHARC+ (från Nord Wave 2).
    DSP-koden skriver jag och mina kolleger uteslutande i assembler
    Gör assembler att koden blir mer "maskinnära" och kompakt och därmed snabbare/kräver mindre kräm från CPU o.s.v.? Eller är det andra skäl till att välja ett lågnivåspråk (heter det så/är jag rätt ute)?
    Senast redigerat av kockpit den 2023-04-12 klockan 14:19.

  19. #19
    mono
    mono är inte uppkopplad

    Avstängd på egen begäran
    Citat Ursprungligen postat av kockpit Visa inlägg
    This quote is hidden because you are ignoring this member.
    Gör assembler att koden blir mer "maskinnära" och kompakt och därmed snabbare/kräver mindre kräm från CPU o.s.v.? Eller är det andra skäl till att välja ett lågnivå (heter det så/är jag rätt ute)?
    Också nyfiken på detta!

  20. #20
    Albedo
    Albedo är inte uppkopplad
    Albedos avatar
    Veteran
    Citat Ursprungligen postat av hasse_fx Visa inlägg
    This quote is hidden because you are ignoring this member.
    Det var väl effektburkar var de första när Analog Devices introducerade SHARC. Fractal och Neural DSP kör ett par kombi SHARC/ARM-chip...

    https://www.analog.com/en/landing-pa...ad-cortex.html
    Creamware var tidiga med sitt Pulsar kort, 1999.

  21. #21
    hasse_fx
    hasse_fx är inte uppkopplad
    hasse_fxs avatar
    Vintage
    Stora (ständiga) jobbet på Clavia (när jag sökte jobb där) var kodoptimering och ännu mer kodoptimering för (då) Freescale-DSP så sannolikt assembler för bästa bang for FLOPs. Tänker mig förresten att plattformsbytet Freescale-Analog Devices behövde en del jobb med tanke på att skriva (om) saker i assembler..?

  22. #22
    joule
    joule är inte uppkopplad
    joules avatar
    Veteran
    Om man får sticka in med en fråga...
    Vad kallas det när man applicerar filter m.m direkt på oscillatorvågformen (LUT:en)? Är det en form av "parametrisk wavetable-syntes", eller är det standardförfarande? (tror att Waldorf PPG gör så, men i alldeles för hög upplösning, typ 128 bytes, för att det ska bli skön aliasing).
    Senast redigerat av joule den 2023-04-12 klockan 20:12.

  23. #23
    makari
    makari är uppkopplad nu
    makaris avatar
    Veteran
    Du tänker kanske på mipmapping? https://en.wikipedia.org/wiki/Mipmap Länken handlar om datorgrafik, men det är samma problem, fast i en dimension istället för två med samplade vågformer. Det är ganska vanligt att synthar sparar vågformstabeller i en uppsättning per oktav (eller fler) med successivt färre övertoner för att undvika aliasing när man interpolerar.

  24. #24
    my03
    my03 är inte uppkopplad
    my03s avatar
    Veteran
    Citat Ursprungligen postat av Johan Runeson Visa inlägg
    This quote is hidden because you are ignoring this member.
    Clavia bytte DSP:er från Motorola/Freescale till SHARC i och med Nord Lead 4. Numera är det mestadels SHARC+ (från Nord Wave 2).
    DSP-koden skriver jag och mina kolleger uteslutande i assembler
    Fel! Jag har hört att de kör med 4 st STM32F7
    ( Skojar. Grymt kul att läsa )

  25. #25
    my03
    my03 är inte uppkopplad
    my03s avatar
    Veteran
    Citat Ursprungligen postat av Albedo Visa inlägg
    This quote is hidden because you are ignoring this member.
    En processor och programvara helt enkelt, inget annat konstigt.
    Korg gick en enkel väg med Kronos, och använde ett vanligt Intel moderkort med Intelprocessor i synthen.
    Rätta mig gärna, men kör de inte även ngt proprietärt dotterkort utöver vanilj mammaplank + Atom cpu?

  26. #26
    stryph
    stryph är inte uppkopplad
    stryphs avatar
    Veteran
    Citat Ursprungligen postat av kockpit Visa inlägg
    This quote is hidden because you are ignoring this member.
    Gör assembler att koden blir mer "maskinnära" och kompakt och därmed snabbare/kräver mindre kräm från CPU o.s.v.? Eller är det andra skäl till att välja ett lågnivåspråk (heter det så/är jag rätt ute)?
    Ja. På samtliga frågor

  27. #27
    my03
    my03 är inte uppkopplad
    my03s avatar
    Veteran
    Citat Ursprungligen postat av stryph Visa inlägg
    This quote is hidden because you are ignoring this member.
    Ja. På samtliga frågor
    Om man vet vad man gör (vilket jag inte tvekar på att Clavia-folket gör), men betänk även att det går att göra det hela värre än vad en bra (3g) kompilator numera fixar.

  28. #28
    Albedo
    Albedo är inte uppkopplad
    Albedos avatar
    Veteran
    Citat Ursprungligen postat av my03 Visa inlägg
    This quote is hidden because you are ignoring this member.
    Rätta mig gärna, men kör de inte även ngt proprietärt dotterkort utöver vanilj mammaplank + Atom cpu?
    Bara ett MIDI kort och ett USB kort. Kanske några D/A omvandlare på nått av dom.

  29. #29
    my03
    my03 är inte uppkopplad
    my03s avatar
    Veteran
    Citat Ursprungligen postat av Albedo Visa inlägg
    This quote is hidden because you are ignoring this member.
    Bara ett MIDI kort och ett USB kort. Kanske några D/A omvandlare på nått av dom.
    aha. Oj, det gör det ju faktiskt ännu mer imponerande att de lyckats pressa ur allt detta ur en (Atom D2550?) relativt billig CPU.

  30. #30
    ricard
    ricard är inte uppkopplad
    ricards avatar
    Veteran
    Citat Ursprungligen postat av my03 Visa inlägg
    This quote is hidden because you are ignoring this member.
    Fel! Jag har hört att de kör med 4 st STM32F7
    ( Skojar. Grymt kul att läsa )
    Mitt favoritexempel är Audiothingies P6 där de får ut 6 röster ur en STM32F4. Efterföljaren MicroMonsta har samma CPU, men 8 röster. Så 4st STM32F7 hade nog inte varit helt orimligt för en Nord Lead 4, egentligen.

  31. #31
    Erik G
    Erik G är inte uppkopplad
    Erik Gs avatar
    Veteran
    Citat Ursprungligen postat av Albedo Visa inlägg
    This quote is hidden because you are ignoring this member.
    En processor och programvara helt enkelt, inget annat konstigt.
    Korg gick en enkel väg med Kronos, och använde ett vanligt Intel moderkort med Intelprocessor i synthen.
    Ja, numera kan man göra så eftersom processorerna är så snabba och duktiga.
    I de digitala syntarnas gryning behövdes flera chip, t.ex. en DSP för filter och en DSP för effekter då processorerna var mycket långsammare och o-duktiga.

  32. #32
    Johan Runeson
    Johan Runeson är inte uppkopplad
    Johan Runesons avatar
    Senior
    Citat Ursprungligen postat av kockpit Visa inlägg
    This quote is hidden because you are ignoring this member.
    Gör assembler att koden blir mer "maskinnära" och kompakt och därmed snabbare/kräver mindre kräm från CPU o.s.v.? Eller är det andra skäl till att välja ett lågnivåspråk (heter det så/är jag rätt ute)?
    Ja, vi får ut mer prestanda ur DSP:erna genom att skriva i assembler. Det är dock mycket tidskrävande, och kräver både lång erfarenhet och djup kunskap om just den processorn man jobbar med. (Till exempel kan kod som är optimal för en SHARC ta nästan dubbelt så lång tid på en SHARC+ om man inte anpassar den.)
    Mina allmänna rekommendationer, efter 20 år i kompilatorbranschen och 4 år på Clavia, är
    1. Använd inte assembler.
    2. Använd inte assembler.
    3. Om du (a) profilerat din kod och hittat ett litet loopnäste där din applikation spenderar typ 50% av tiden, och (b) inte kommer på något sätt att ändra högnivåkoden för att göra det bättre, och (c) tittat på assemblerkoden som kompilatorn genererat och är säker på att du kan göra bättre, och (d) vet att din applikation alltid kommer att köra på just det kislet, och (e) du aldrig kommer att uppdatera applikationen och därmed inte kan dra nytta av kommande kompilatorförbättringar, då, men bara då, kan det möjligen vara värt att skriva om bara det lilla loopnästet i assembler. Se dock till att mäta ordentligt före och efter så att det faktiskt blev bättre. Och det blir förmodligen billigare och enklare på både kort och lång sikt att istället köpa en snabbare processor...

  33. #33
    Janne
    Janne är inte uppkopplad

    Senior
    Citat Ursprungligen postat av Johan Runeson Visa inlägg
    This quote is hidden because you are ignoring this member.
    Ja, vi får ut mer prestanda ur DSP:erna genom att skriva i assembler. Det är dock mycket tidskrävande, och kräver både lång erfarenhet och djup kunskap om just den processorn man jobbar med. (Till exempel kan kod som är optimal för en SHARC ta nästan dubbelt så lång tid på en SHARC+ om man inte anpassar den.)
    Mina allmänna rekommendationer, efter 20 år i kompilatorbranschen och 4 år på Clavia, är
    1. Använd inte assembler.
    2. Använd inte assembler.
    3. Om du (a) profilerat din kod och hittat ett litet loopnäste där din applikation spenderar typ 50% av tiden, och (b) inte kommer på något sätt att ändra högnivåkoden för att göra det bättre, och (c) tittat på assemblerkoden som kompilatorn genererat och är säker på att du kan göra bättre, och (d) vet att din applikation alltid kommer att köra på just det kislet, och (e) du aldrig kommer att uppdatera applikationen och därmed inte kan dra nytta av kommande kompilatorförbättringar, då, men bara då, kan det möjligen vara värt att skriva om bara det lilla loopnästet i assembler. Se dock till att mäta ordentligt före och efter så att det faktiskt blev bättre. Och det blir förmodligen billigare och enklare på både kort och lång sikt att istället köpa en snabbare processor...
    Du kanske kommer ihåg att jag sökte jobb hos er?

    Började skriva assembler på Vic-20 och C64, 6502 CPU.
    Fortsatte med 68k på Amiga och Atari.
    x86 på PC.

    Men med ARM och RISC så blir det för mycket för en gammal man att hålla koll på.
    Särskilt FPU kod blir jobbigt i assembler.

    Så numer bara C och C++ med en del assembleroptimerade subs.
    Särskilt när det är multicore.

  34. #34
    Janne
    Janne är inte uppkopplad

    Senior
    När det gäller D50 så visst kallas den för den första VA synten.
    Men konstruktionen är inte CPU baserad (möjligtvis mikrokod och lookup) utan en ASIC så en hårdvarusynt.

  35. #35
    theVOID
    theVOID är inte uppkopplad
    theVOIDs avatar
    Vintage
    Citat Ursprungligen postat av Janne Visa inlägg
    This quote is hidden because you are ignoring this member.
    Du kanske kommer ihåg att jag sökte jobb hos er?

    Började skriva assembler på Vic-20 och C64, 6502 CPU.
    Fortsatte med 68k på Amiga och Atari.
    x86 på PC.

    Men med ARM och RISC så blir det för mycket för en gammal man att hålla koll på.
    Särskilt FPU kod blir jobbigt i assembler.

    Så numer bara C och C++ med en del assembleroptimerade subs.
    Särskilt när det är multicore.
    Saknar fortfarande att koda 68000

  36. #36
    my03
    my03 är inte uppkopplad
    my03s avatar
    Veteran
    Klicka på bilden för en större version. 

Namn:	FB_IMG_1681423948171.jpg 
Visningar:	64 
Storlek:	41,3 KB 
Id:	112290


  37. #37
    kockpit
    kockpit är inte uppkopplad
    kockpits avatar
    Veteran
    Haha

  38. #38

    Veteran
    Citat Ursprungligen postat av Johan Runeson Visa inlägg
    This quote is hidden because you are ignoring this member.
    Ja, vi får ut mer prestanda ur DSP:erna genom att skriva i assembler. Det är dock mycket tidskrävande, och kräver både lång erfarenhet och djup kunskap om just den processorn man jobbar med. (Till exempel kan kod som är optimal för en SHARC ta nästan dubbelt så lång tid på en SHARC+ om man inte anpassar den.)
    Mina allmänna rekommendationer, efter 20 år i kompilatorbranschen och 4 år på Clavia, är
    1. Använd inte assembler.
    2. Använd inte assembler.
    3. Om du (a) profilerat din kod och hittat ett litet loopnäste där din applikation spenderar typ 50% av tiden, och (b) inte kommer på något sätt att ändra högnivåkoden för att göra det bättre, och (c) tittat på assemblerkoden som kompilatorn genererat och är säker på att du kan göra bättre, och (d) vet att din applikation alltid kommer att köra på just det kislet, och (e) du aldrig kommer att uppdatera applikationen och därmed inte kan dra nytta av kommande kompilatorförbättringar, då, men bara då, kan det möjligen vara värt att skriva om bara det lilla loopnästet i assembler. Se dock till att mäta ordentligt före och efter så att det faktiskt blev bättre. Och det blir förmodligen billigare och enklare på både kort och lång sikt att istället köpa en snabbare processor...
    Mycket bra råd!

  39. #39
    Erik G
    Erik G är inte uppkopplad
    Erik Gs avatar
    Veteran
    Citat Ursprungligen postat av Janne Visa inlägg
    This quote is hidden because you are ignoring this member.
    När det gäller D50 så visst kallas den för den första VA synten.
    Men konstruktionen är inte CPU baserad (möjligtvis mikrokod och lookup) utan en ASIC så en hårdvarusynt.
    Fast den presenterades verkligen inte som VA. Roland gjorde ju istället stort väsen av Linear Arithmetic som en lättjobbad konkurrent till FM. PCM-delen känns ju definitivt inte som VA.
    Senast redigerat av Erik G den 2023-04-14 klockan 09:26.

  40. #40
    joule
    joule är inte uppkopplad
    joules avatar
    Veteran
    Ingen har nämnt drifting och hård anti-aliasing/översampling som "VA"-faktorer. Mina fördomar krossas.

  41. #41
    hasse_fx
    hasse_fx är inte uppkopplad
    hasse_fxs avatar
    Vintage
    Citat Ursprungligen postat av Erik G Visa inlägg
    This quote is hidden because you are ignoring this member.
    Fast den presenterades verkligen inte som VA. Roland gjorde ju istället stort väsen av Linear Arithmetic som en lättjobbad konkurrent till FM. PCM-delen känns ju definitivt inte som VA.
    VA som begrepp kom ju senare, men med digitalt genererade (inte samples eller wavetables) analog-style vågformer och digitala fllter var de (väl) först med att "virtualisera" analogsyntes? L/A var deras idé om att skapa mer naturliga ljud genom att addera samplade attacker till den analoghärmande syntesen. Att sedan virtualisering gjordes med ASICs och inte DSP är väl en teknikalitet.

    Gränssnittet är väl en faktor som framhålls för VA men vad blir då t ex en MKS-80? Låtom definitionerna flyta...

  42. #42
    ricard
    ricard är inte uppkopplad
    ricards avatar
    Veteran
    Citat Ursprungligen postat av hasse_fx Visa inlägg
    This quote is hidden because you are ignoring this member.
    VA som begrepp kom ju senare, men med digitalt genererade (inte samples eller wavetables) analog-style vågformer och digitala fllter var de (väl) först med att "virtualisera" analogsyntes? L/A var deras idé om att skapa mer naturliga ljud genom att addera samplade attacker till den analoghärmande syntesen. Att sedan virtualisering gjordes med ASICs och inte DSP är väl en teknikalitet.
    'Linear Arithmetic' betyder ju 'linjär matematik', och tittar man på saker som filter och gain så är det linjära operationer, och jag har alltid tolkat det som att Roland ville framhålla att syntemetoden bygger på linjära operationer, dvs filter och VCA (eller, med Rolands terminologi, TVF och TVA), i motsats till DX7:ans FM-teknologi som är allt annat än linjär, som var den 'stora' digitalteknologin vid den tiden. Om det sedan implementeras i en ASIC eller en DSP är som du säger en ren teknikalitet. De korta PCM-attackerna känns mer som ett påhäng, men det är väl en väsentlig del av det man kallar 'LA' totalt sett.

    Dock har vi avhandlat D50:n i en annan tråd, och rent implementationsmässigt verkar det vara något helt annat än en hårdvaruimplementation av filter- och VCA-operationer, nämligen att man har samplat fyrkantvågor med pålagt filter vid olika cutoff- och resonansinställningar, som man väsentligen hanterar som wavetables. Genom lite ringmodularmagi skapar man sedan samma sak men med sågtandsvåg.

    Jag tycker VA ska få täcka in alla varianter av digitala instrument där man i slutändan försöker emulera klassisk analog subtraktiv syntes, oavsett hårdvara och hur implementationen egentligen ser ut.

  43. #43
    joule
    joule är inte uppkopplad
    joules avatar
    Veteran
    Citat Ursprungligen postat av makari Visa inlägg
    This quote is hidden because you are ignoring this member.
    Du tänker kanske på mipmapping? https://en.wikipedia.org/wiki/Mipmap Länken handlar om datorgrafik, men det är samma problem, fast i en dimension istället för två med samplade vågformer. Det är ganska vanligt att synthar sparar vågformstabeller i en uppsättning per oktav (eller fler) med successivt färre övertoner för att undvika aliasing när man interpolerar.
    Näe.. menar mer digitalsyntes där effekterna appliceras direkt på "oscillator-arrayen" och där denna har någorlunda få samplingar.

    (Sitter och pillar på min första vsti där jag försöker återskapa detta på ett naivt sätt genom att bara lägga en key/pitchtrackad downsampler på slutet, för att åstadkomma något som låter ganska så likt musicline, men jag vet inte riktigt vad jag ska googla på för ytterligare inspiration)

  44. #44
    PF
    PF är inte uppkopplad
    PFs avatar
    Vintage
    Citat Ursprungligen postat av ricard Visa inlägg
    This quote is hidden because you are ignoring this member.
    Dock har vi avhandlat D50:n i en annan tråd, och rent implementationsmässigt verkar det vara något helt annat än en hårdvaruimplementation av filter- och VCA-operationer, nämligen att man har samplat fyrkantvågor med pålagt filter vid olika cutoff- och resonansinställningar, som man väsentligen hanterar som wavetables. Genom lite ringmodularmagi skapar man sedan samma sak men med sågtandsvåg.

    Jag tycker VA ska få täcka in alla varianter av digitala instrument där man i slutändan försöker emulera klassisk analog subtraktiv syntes, oavsett hårdvara och hur implementationen egentligen ser ut.
    Har du programmerat mycket D-50? Det är nämligen flera lägen på den. I läget S som är synthesizer så används inte PCM-vågformerna alls utan antingen sågtand eller fyrkant med fritt valt fast eller roterande PWM, och filtret kan då använda både cutoff och resonans. Med PG-1000 påkopplad så kan man ratta på den. I läget S är den också 16-röstig och den kan även spela två sådana ljud ovanpå varann. Det är väldigt bra gjort för en digital synt som släpptes sommaren 1987. :-)

  45. #45
    ricard
    ricard är inte uppkopplad
    ricards avatar
    Veteran
    Nej, inte mycket. Hade en D-50 ett tag för många år sedan. Men jag vet att man för varje part kan ha två källor, S och P, där P är PCM-ljud. En intressant detalj härvidlag är just att PCM-ljuden (attacksamplingarna) inte passerar filtret, vilket alltså hänger ihop med implementationen där filtret inte alls är ett filter i egentlig mening, utan egentligen en wavetable i två dimensioner (cutoff och resonans).

    Håller med om att det är väldigt bra gjort för att vara från den tiden, när den tillgängliga DSP-teknologin inte hade räckt till för att emulera "riktiga" filter (riktiga i betydelsen att det faktiskt körs DSP-kod i realtid som filtrerar ljudet), inte till det begärda priset i alla fall.

    För att återgå till trådens ursprungsfråga, i en DSP-synt så har man alltså programkod som implementerar oscillatorer, filter, VCA, enveloper etc. Totalt sett implementerar förenklat uttryckt programkod arkitekturen hos en röst. Som indata till rösten har man då dels realtidsdata i form av MIDI: tangentnummer och velocity, men även realtidskontroller som pitchbend och aftertouch, och dels parametrar i form av alla inställningar: cutoff, filterdecay, pulsvidd, etc. För att få effektivitet i det så genereras inte bara en sampling utan ett helt block med samplingar varje gång koden anropaas, säg 16 samplingar per gång. För att få kontinuitet i det hela så sparas tillståndet hos tillämpliga variabler i koden undan mellan varven (t ex fasackumulatorer för oscillatorerna) som alltså även de blir någon slags indata nästa gång röstkoden körs. Varje sådan uppsättning variabler kan ses som att representera en röst.

    Om vi antar att vi har en samplerate på 48 kHz och det genereras 16 samples varje gång koden anropas, så innebär det att det behövs 48 kHz / 16 = 3000 anrop gånger per sekund. Varje anrop får då ta maximalt 1/3000 s = 333 µs, annars så kommer inte DSP:n att hinna generera samplingar i realtid. Men låt oss säga att det tar 30 µs att exekvera koden. Då hinner man med 333/30 = 11.1 anrop 3000 gånger i sekunden, vilket alltså gör att synten skulle kunna implementera 11 röster - sedan tar DSP-kraften slut.
    Senast redigerat av ricard den 2023-04-16 klockan 15:41.

  46. #46
    Janne
    Janne är inte uppkopplad

    Senior
    Verkar som att ASIC:en i D50 är en custom DSP.

    Mr Kakehashi:

    ”Software simulation of a VCO or VCA is relatively straightforward: it is the filter (VCF) which has been the major problem area up until now. Only very recently has the signal processing power become available to perform time-varying filtering at a reasonable cost in a digital system. Roland's LA system uses a custom DSP chip to filter the square wave from the wave generator and then uses a bit of maths to generate the equivalent of a filtered sawtooth wave from it. I must admit I was sceptical about how accurate the D-50's simulation would be, but my ears soon told me - this was definitely a VCF! I could detect no stepping phenomena, only that wonderful analogue VCF 'weeyyaaoouumm' sound.”

    http://www.muzines.co.uk/articles/l-...hat-is-it/1975

  47. #47
    PF
    PF är inte uppkopplad
    PFs avatar
    Vintage
    Ja vad som än händer upplevs det som ett filter även för mig, inte så olikt JD-800 t ex, med begränsningen då att det på D-50 inte kan påverka PCM-vågformerna. Fina filtersvep med resonans som inte låter som Casio CZ utan snarare snarlikt JX-8P & JX-10. Däremot så kan alla LA-syntar låta orent i vissa lägen. Men något är rätt gjort iaf.

    Vad beträffar algoritmerna så att säga så hade jag mest kul med S+S så PCM behöver inte brukas alls om man inte vill. Och då är det ju inte bara två utan fyra samtidiga syntdelar i 8-röstigt läge (Dual). Kopierar man då samma svepljud och ändrar lite på varje & snedstämmer så är det riktigt mycket fetma som kan... alstras... :-)

  48. #48
    charliecrash
    charliecrash är uppkopplad nu
    charliecrashs avatar
    Veteran
    Citat Ursprungligen postat av PF Visa inlägg
    This quote is hidden because you are ignoring this member.
    Ja vad som än händer upplevs det som ett filter även för mig, inte så olikt JD-800 t ex, med begränsningen då att det på D-50 inte kan påverka PCM-vågformerna. Fina filtersvep med resonans som inte låter som Casio CZ utan snarare snarlikt JX-8P & JX-10. Däremot så kan alla LA-syntar låta orent i vissa lägen. Men något är rätt gjort iaf.
    Ja det är inte svårt att få digitaldist i D10/20/110 med max resonans.

  49. #49
    PF
    PF är inte uppkopplad
    PFs avatar
    Vintage
    Och på JV & JD kan resonansen också överstyra och låta illa som tusan. D-50 är bättre avvägd faktiskt.

  50. #50
    charliecrash
    charliecrash är uppkopplad nu
    charliecrashs avatar
    Veteran
    Citat Ursprungligen postat av PF Visa inlägg
    This quote is hidden because you are ignoring this member.
    Och på JV & JD kan resonansen också överstyra och låta illa som tusan. D-50 är bättre avvägd faktiskt.
    Avhjälps enkelt med att sänka volymen på kanalen tills den inte klipper, så problemet händer i 9kanals-mixern.

  51. #51
    PF
    PF är inte uppkopplad
    PFs avatar
    Vintage
    Hehe, ja här hemma avhjälps just nu enbart annalkande influensavibbar med hjälp av uppkok av vatten med en kluven pressad citron och en massa socker, någon hårdvarusynt att utforska har jag knappt längre, förutom JD-08 som just nu / denna istidsperiod som nu börjar ta slut / har känts som den bästa minivarianten av alla dessa Rolandz.

  52. #52
    ricard
    ricard är inte uppkopplad
    ricards avatar
    Veteran
    Citat Ursprungligen postat av Janne Visa inlägg
    This quote is hidden because you are ignoring this member.
    Verkar som att ASIC:en i D50 är en custom DSP.

    Mr Kakehashi:

    ”Software simulation of a VCO or VCA is relatively straightforward: it is the filter (VCF) which has been the major problem area up until now. Only very recently has the signal processing power become available to perform time-varying filtering at a reasonable cost in a digital system. Roland's LA system uses a custom DSP chip to filter the square wave from the wave generator ...
    Det här har avhandlats innan här på 99:an:

    https://www.99musik.se/showthread.ph...d50-under-lupp

    samt

    https://www.99musik.se/showthread.ph...6rsta-VAsynten

    Slutsatsen har varit efter diverse sökande i dokument att det inte är fråga om regelrätt DSP-implementering av ett filter (dvs ingen matematisk implementation av typen y = ax[n] + bx[n-1] + cy[n-1] dy[n-2] etc). Men visst, Kakehashi har rätt i att det kommer pulsvågor in i filterchipet, och ut kommer något som ser ut som det har lågpassfiltrerats, sen kan man orda massor om vad som faktiskt sitter i chipet.

  53. #53
    Janne
    Janne är inte uppkopplad

    Senior
    Citat Ursprungligen postat av ricard Visa inlägg
    This quote is hidden because you are ignoring this member.
    Det här har avhandlats innan här på 99:an:

    https://www.99musik.se/showthread.ph...d50-under-lupp

    samt

    https://www.99musik.se/showthread.ph...6rsta-VAsynten

    Slutsatsen har varit efter diverse sökande i dokument att det inte är fråga om regelrätt DSP-implementering av ett filter (dvs ingen matematisk implementation av typen y = ax[n] + bx[n-1] + cy[n-1] dy[n-2] etc). Men visst, Kakehashi har rätt i att det kommer pulsvågor in i filterchipet, och ut kommer något som ser ut som det har lågpassfiltrerats, sen kan man orda massor om vad som faktiskt sitter i chipet.
    Skulle det vara tabeller som du ponerar så skulle det bli stora tabeller.

    wavetable x Cutoff x Resonance = 256 x 256 x 256 som blir 16MB om det bara är 8bit sample words.

    Inget för 1987.

  54. #54
    encore
    encore är inte uppkopplad
    encores avatar
    Veteran
    Om det funkar så, så är det troligen bara samplingar av övergång mellan positiv till negativ flank på en pulsvåg vid ev viss filterfrekvens och filterresonans, då blir det betydligt mer hanterbar mängd data.

  55. #55
    Erik G
    Erik G är inte uppkopplad
    Erik Gs avatar
    Veteran
    Här förklaras hur man konverterar ett tidskontinuerligt ("analogt") filter till ett tidsdiskret (digitalt) filter, inklusive Arduino-kod.


    https://youtu.be/HJ-C4Incgpw

  56. #56
    Erik G
    Erik G är inte uppkopplad
    Erik Gs avatar
    Veteran
    Mer om digitala filter (och allmän filterteori):


    https://youtu.be/I8_E1ppC3-Q

  57. #57
    Erik G
    Erik G är inte uppkopplad
    Erik Gs avatar
    Veteran
    Ja, det finns massor av videos om detta på YT.

  58. #58
    kroffe
    kroffe är inte uppkopplad
    kroffes avatar
    Vintage
    Jättebra videos, tack för tips!

  59. #59
    ricard
    ricard är inte uppkopplad
    ricards avatar
    Veteran
    Citat Ursprungligen postat av encore Visa inlägg
    This quote is hidden because you are ignoring this member.
    Om det funkar så, så är det troligen bara samplingar av övergång mellan positiv till negativ flank på en pulsvåg vid ev viss filterfrekvens och filterresonans, då blir det betydligt mer hanterbar mängd data.
    Ja, jag fick för mig att det var massa klurigheter vad gäller symmetri etc så att man fick ner minnesmängden.
    Senast redigerat av ricard den 2023-05-05 klockan 17:16.

  60. #60
    Johan Runeson
    Johan Runeson är inte uppkopplad
    Johan Runesons avatar
    Senior
    Citat Ursprungligen postat av Erik G Visa inlägg
    This quote is hidden because you are ignoring this member.
    Mer om digitala filter (och allmän filterteori):
    Sen på bollen pga försvunnen länk... Mer lättsmält info om digitala synth-filter (och mer, om man utforskar bloggen vidare):
    https://www.earlevel.com/main/2003/0...riable-filter/

Liknande ämnen

  1. Expert Sleepers ES-5, hur funkar den egentligen?
    Av johey i forum Modularer & sånt
    Svar: 3
    Senaste inlägg: 2016-07-03, 21:48
  2. Flera syntar, en klav. Hur funkar det egentligen?
    Av Ashaz i forum Syntar, samplers & sånt
    Svar: 13
    Senaste inlägg: 2010-04-22, 16:14
  3. Hur funkar egentligen automap?
    Av Dsc i forum Övrig mjukvara
    Svar: 17
    Senaste inlägg: 2009-11-06, 11:07
  4. Hur funkar det egentligen med refills?
    Av Nicko35 i forum Reason Studios
    Svar: 9
    Senaste inlägg: 2008-07-27, 17:15
  5. hur avgör man om en synt har bra eller dåliga filter..?
    Av peter80 i forum Syntar, samplers & sånt
    Svar: 22
    Senaste inlägg: 2007-02-16, 14:36

Behörigheter för att posta

  • Du får inte posta nya ämnen
  • Du får inte posta svar
  • Du får inte posta bifogade filer
  • Du får inte redigera dina inlägg
  •