Author |
Topic |
|
Bjäris
Member
257 Posts |
Posted - 2005/08/29 : 13:21:51
|
hej, jag håller på med ett långtids projekt. I detta skulle jag behöva avkoda en spdif signal. Har letat på nätet, men inte hittat någon bra info, är det någon som vet vart det finns? |
Edited by - Bjäris on 2006/03/28 13:52:15 |
|
Ionizer
Member
304 Posts |
Posted - 2005/08/29 : 13:42:06
|
Ska du avkoda den själv eller letar du efter en färdig decoder? |
Gräset är alltid grönare på den grönare sidan... |
|
|
peranders
Member
2456 Posts |
Posted - 2005/08/29 : 13:47:50
|
En CS8414 eller nåt gör jobbet. Varför krångla till det. |
/Per-Anders eller P-A |
|
|
rosbacke
Member
301 Posts |
|
Bjäris
Member
257 Posts |
Posted - 2005/08/29 : 20:41:41
|
Tackar, nu har jag lite att läsa i ämnet, så får vi se om jag blir något klokare.
Signalen ska in till en fpga (xilinx spartan xc2s50), tänkte att det skulle räcka med den. Fast blir det mycket smidigare med en extra krets, så kanske det blir en sådan också. |
|
|
Ionizer
Member
304 Posts |
Posted - 2005/08/29 : 23:50:41
|
Såg ju inte alltför avancerat ut, tack för bra länkar rosbacke.
Har lite planer på ett system med digital signal direkt till ett klass-d steg men jag tänkte nog fuska och bygga av färdiga bitar. Fast med en FPGA kan man göra så mycket mer, alla typer av EQ och fasjustering mellan kanalerna, uppsampling, timescale, pitch, aktiva filter. Inte så dumt faktiskt.
Systemet består av en I2S konverterare/decoder och sen en pwm modulator och mosfet drivare från Ti.
Efter decodern tar TAS5015 den seriella digitalsignalen och omvandlar den direkt till PWM som sen skickas vidare till TAS5182 som driver utgångstransistorerna. Tror man kunde få 2x100W eller nåt liknande med den kopplingen, med en annan drivare kunde man höja matningsspänningen för högre uteffekt.
Problemet är volymregleringen. Gör man det på den digitala sidan så brukar det innebära att man tappar upplösning. Tänkte istället att man kunde ha variabel matningsspänning till utgångssteget, troligen mha en switchad nätdel.
Undrar om inte TacT hadde en förstärkare som arbetade efter den principen?
Med reservation för dåligt minne och felskrivningar. |
Gräset är alltid grönare på den grönare sidan... |
|
|
Bjäris
Member
257 Posts |
Posted - 2005/09/08 : 21:36:01
|
En liten undran. Min klocka och klockan i cd spelaren kommer ju inte att gå riktigt lika fort.. hur löser jag det smidigast. ska jag försöka styra min klocka efter cd spelaren, använda mig av något digitalt filter, eller bara ta det senaste inkommna samplet? hur brukar det göras? |
|
|
Ionizer
Member
304 Posts |
Posted - 2005/09/08 : 21:51:37
|
Det "brukar" väl lösas med en klocka i I2S decodern som låser sig på inkommande klocka. Nån sorts PLL kanske? En lösning som kanske inte är helt utan brister.
En lösning är använda samma klocka, av nån anledning har jag sett att det rekomenderas att oscillatorn ska sitta i D/An och sen mata CD-transporten med en klocksignal. Var nog på LC-audio som jag läste detta. Ett krav är då att din FPGA måste gå på samma eller en jämn multippel av CDns klockfrekvens. |
Gräset är alltid grönare på den grönare sidan... |
|
|
Ionizer
Member
304 Posts |
Posted - 2005/09/08 : 21:54:30
|
Håller f.ö. på med en sån modifikation av en gammal Cambridge Audio DACmagic II (eller är det kanske III) som ska syncas med en Rotel RCD-855 som råkar ha samma klockfrekvens som DACmagicen. Ska bli ytterst spännande att höra vad det kan ge för resultat. |
Gräset är alltid grönare på den grönare sidan... |
|
|
Bjäris
Member
257 Posts |
Posted - 2005/09/09 : 12:20:36
|
Så då är frågan, hur gör man för att styra klockan på ett xsa-50 kort från xess? https://xess.com/prod027.php3 går det över huvud taget, eller måste jag använda den extärna klock ingången? |
|
|
Bjäris
Member
257 Posts |
Posted - 2005/09/09 : 12:49:06
|
Obs, jag vill ha den interna frekvensen i fpga:n till 48k * 2048 = 98,304MHz för att kunna skapa pwm signal. Det enklaset borde väl vara att använda ungefär vart femtionde sampel två gånger och köra fpga:n på 100MHz. men det känns inte helt optimalt. :) (Skulle det förstöra ljudet mycket?) |
|
|
Jax
Member
667 Posts |
Posted - 2005/09/09 : 13:08:46
|
Ett sätt är att använda båda klockorna, ena från PLL-en i SPDIF-mottagaren och andra din 100MHz. Mellan klockdomänerna i FPGA-n sätter du FIFO för att synka om insamplena till 100MHz-domänen.
Hastigheten på utsidan reglerar du genom att titta på hur mycket det är i FIFO-t. Börjar det bli lite så ökar du PWM-sidan en smula och tvärtom. Är detta svaj litet och långsamt nog lär det inte höras.
|
/Janne
Rörfreak och snål smålänning i blodet.
|
|
|
Bjäris
Member
257 Posts |
Posted - 2005/09/09 : 18:30:06
|
Jo, det blir nog smidigast att göra som Jax skriver, kan nog bli den lösningen. Tackar |
|
|
peranders
Member
2456 Posts |
Posted - 2005/09/10 : 08:34:49
|
Ionizer skrev: quote: Problemet är volymregleringen. Gör man det på den digitala sidan så brukar det innebära att man tappar upplösning. Tänkte istället att man kunde ha variabel matningsspänning till utgångssteget, troligen mha en switchad nätdel
Tänk efter: Tappar du verkligen upplösning? Ljudnivån är ju satt i relation till din hörtröskel som är fast... väl? Du kan ju knappast tillgodogöra dig 24 eller 16 bitars upplösning vid till exempel -50 dB. Varje kvantiseringssteg är ju du långt under det termiska bruset.
Jag kan inte se något som helst problem med digital volymkontroll så länge som matematiken görs rätt. |
/Per-Anders eller P-A |
Edited by - peranders on 2005/09/10 08:36:46 |
|
|
Ionizer
Member
304 Posts |
Posted - 2005/09/13 : 17:05:43
|
Vid normal lyssningsnivå vill jag ha full upplösning även om örat kanske inte kan tillgodogöra sig det, men samtidigt vill jag såklart inte köra slutstegen på full effekt. Borde bli så att ju mer effekt och ju högre känlighet på högtalarna desto lägre upplösning blir det vid normal lyssningsnivå.
Eller finns det nån bra lösning på detta? |
Gräset är alltid grönare på den grönare sidan... |
|
|
Bjäris
Member
257 Posts |
Posted - 2005/09/26 : 19:02:21
|
Nu har jag jobbat på lite med min spdif mottagare och pwm modulator, men den har vissa brister.. Enligt mina simuleringar ska allt vara frid och fröjd. Så länge cd spelaren står på stopp går det bra, men sen när jag börjar spela kommer det bara skärt brus. Jag kan inte höra några antydningar till det som finns på skivan. Jag har antagit att sampel värdet på bit 13 till 27 kommer i två-komplement form kan det vara fel? eller någon som har något annat förslag. |
|
|
Bjäris
Member
257 Posts |
Posted - 2005/09/26 : 19:29:01
|
Jag ändrade från två-komplement till att sätta 0 som minus full spänning och max värdet som pluss full spänning, och nu kan jag skönja ljudet från vivaldis våren bakom allt brus, så jag kan ju inte vara helt fel ute. Jag har fortfarande inte lyckats hitta i vilket format samplen kommer i. Någon som vet? |
|
|
Jax
Member
667 Posts |
Posted - 2005/09/26 : 22:25:42
|
Det ska vara 2-komplementformat på samplen. Min gissning är att du inte låser på spdifsignalen ordentligt. Det där bruset känner jag igen från en spdifmottagare som hade sin PLL feljusterad, det låter som skärt brus då. Eller så tar du ut fel bitar.
|
/Janne
Rörfreak och snål smålänning i blodet.
|
|
|
Bjäris
Member
257 Posts |
Posted - 2005/11/10 : 23:08:08
|
Hej! Tänkte bara säga att jag nyss lyckades få ljud från min lilla pwm modulator. Problemet var att oscilatorn på mitt utveklingskort har för låg frekvens. Om frekvensen på spdif signalen stämmer ligger oscilatorns frekvens på 86,02 MHz och ska vara 100 MHz. Så nu är det löst. |
|
|
Bjäris
Member
257 Posts |
Posted - 2006/03/28 : 13:47:21
|
Nu har jag fått till en H-brygga också, och det låter underbart! :) Det är endel att justera och fixa till, men den är helt klart användbar som det är nu.
|
Edited by - Bjäris on 2006/03/28 14:27:02 |
|
|
|
Topic |
|