Asynchronous I2S FIFO project, an ultimate weapon to fight the jitter - Page 223 - diyAudio
Go Back   Home > Forums > Source & Line > Digital Line Level

Digital Line Level DACs, Digital Crossovers, Equalizers, etc.

Please consider donating to help us continue to serve you.

Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving
Reply
 
Thread Tools Search this Thread
Old 23rd January 2013, 09:29 PM   #2221
diyAudio Member
 
iancanada's Avatar
 
Join Date: Dec 2009
Location: Toronto
Quote:
Originally Posted by hochopeper View Post
Hi AR2,

I think I can answer those for you

1. There is an API doc for the serial port in this post here.


2. The clock board is hard to use separately to the FIFO. I agree it would be nice but the only time that you can change the MCLK is when the input FS changes, within 100ms of 0xC1 event being sent from Ian's Si570. I am reading between the lines but I think this would be reliant on additional comms between the FIFO and Si570 to trigger this event in the Si570 local controller (on Ian's board). Since the FIFO protocols are not published (Ian was asked a few pages back and he has said he is reluctant at this stage to expose these internal workings of the FIFO) there is no way to trigger these events to allow the clock to change frequency separately to the FIFO eco-system. I think it may be possible to use the Si570 as a fixed speed MCLK for other systems at whatever MCLK rate was set previously and rely on async clocking.


I am writing separate control for Si570 already that will be available publicly when it is ready, but will not run on an Arduino. For hifiduino it would need glt to write some additional code for hifiduino to support Si570 comms to calculate the current Fs for output to your DAC LCD/VFD display when using synch mclk (which is what I think you're trying to achieve mainly right?).


Cheers,
Chris
Thanks Chris

Quote:
Originally Posted by AR2 View Post
Congratulations Ian!

Rally cool looking board. Just a few questions, that I might suspect answers:

1. I see Rxd and TxD contacts - what is the purpose of those? Is that for I2C that could be used with Hifiduino? Since right now Hifiduino does not display rate when used with FIFO, I hope new board will fix that. I think I recall earlier that conversation.
2. Is it possible to use new clock board stand a lone without FIFO? I am just curious since it will be good to have such variable clock board for experimentations. I see no reason why not, besides having something to select frequency, but I stand to be corrected.

Thank you

AR2
Hi AR2,

hochopeper gave correct answers, I just have a little bit addition to qusetion 2,

I think you want to use this Si570 board as a stand along digital audio clock generatior. The answer is YES.

This clock borad can be used as multi-frequency audio clock generator with 8 frequencies. You can use the on-board push button setting the frequency at any time. The set frequency will be saved into on-chip flash memory and will be recalled each time for next power up.

Regards,

Ian
__________________
Ian GBV - I2S to PCM converter board & FIFO KIT
http://www.diyaudio.com/forums/group...ml#post3662743
  Reply With Quote
Old 23rd January 2013, 10:24 PM   #2222
diyAudio Member
 
iancanada's Avatar
 
Join Date: Dec 2009
Location: Toronto
Default Si570 Clock Board - Frequencies and xFs

Si570 clock board is designed to support digital audio stream from 44.1 KHz to 384 KHz, and xFs from 256*Fs to 2048*Fs. By taking the advantages of Si570, it could generate 8 audio frequencies, they are:

11.2896MHz, 12.2880MHz, 22.5792MHz, 24.5760MHz, 45.1584MHz, 49.1520 MHz, 90.3168 MHz, 98.3040MHz.

Among all of them, 90.3168 MHz and 98.3040MHz are optimized to ESS DACs.

Si570 clock board can work at both stand along mode and FIFO mode.

When working stand along as a universal digital audio clock generator without connecting to a FIFO, frequencies could be set manually at any time by the push button. The current setting will be stored into onboard flash memory and will be recall automatically after each power up.

When working together with a FIFO, frequencies and xFs will be switched automatically according to the input I2S Fs and the preset frequency and xFs combination group. Those combination groups could also be programmed by the on-board push button and will be saved into on-board flash memory. They are:

//Group1:Si570 frequency and *Fs combination for low mclk range
{F112896, 256*FS}, //2 44.1 KHz
{F122880, 256*FS}, //3 48 KHz
{F225792, 256*FS}, //4 88.2 KHz
{F245760, 256*FS}, //5 96 KHz
{F451584, 256*FS}, //6 176.4KHz
{F491520, 256*FS}, //7 192 KHz
{F903168, 256*FS}, //8 352.8KHz
{F983040, 256*FS} //9 384 KHz

// Group2:Si570 frequency and *Fs combination for low mid mclk range
{F225792, 512*FS}, //2 44.1 KHz
{F245760, 512*FS}, //3 48 KHz
{F225792, 256*FS}, //4 88.2 KHz
{F245760, 256*FS}, //5 96 KHz
{F451584, 256*FS}, //6 176.4KHz
{F491520, 256*FS}, //7 192 KHz
{F903168, 256*FS}, //8 352.8KHz
{F983040, 256*FS} //9 384 KHz

// Group3:Si570 frequency and *Fs combination for middle mclk range
{F451584, 1024*FS}, //2 44.1 KHz
{F491520, 1024*FS}, //3 48 KHz
{F451584, 512*FS }, //4 88.2 KHz
{F491520, 512*FS }, //5 96 KHz
{F451584, 256*FS }, //6 176.4KHz
{F491520, 256*FS }, //7 192 KHz
{F903168, 256*FS }, //8 352.8KHz
{F983040, 256*FS } //9 384 KHz

// Group4:Si570 frequency and *Fs combination for high mclk
{F903168, 2048*FS}, //2 44.1 KHz
{F983040, 2048*FS}, //3 48 KHz
{F903168, 1024*FS}, //4 88.2 KHz
{F983040, 1024*FS}, //5 96 KHz
{F903168, 512*FS }, //6 176.4KHz
{F983040, 512*FS }, //7 192 KHz
{F903168, 256*FS }, //8 352.8KHz
{F983040, 256*FS } //9 384 KHz

Group4 is highly recommended for ESS DACs and might be set as factory default.

An optional third party external controller could be used for display the clock board status and taking control of the frequency switching via UART port. But it's not a must.

Ian
Attached Images
File Type: jpg Si570_Frequencies.JPG (396.7 KB, 288 views)
__________________
Ian GBV - I2S to PCM converter board & FIFO KIT
http://www.diyaudio.com/forums/group...ml#post3662743
  Reply With Quote
Old 23rd January 2013, 10:31 PM   #2223
PET-240 is offline PET-240  Australia
diyAudio Member
 
Join Date: Feb 2010
Location: Brisbane Northside
Senstadium!
  Reply With Quote
Old 23rd January 2013, 10:43 PM   #2224
diyAudio Member
 
Join Date: Feb 2009
Location: Brisbane, Australia
Thank you Ian!

wiki updated
__________________
Under Construction:Ian's i2s FIFO wiki
  Reply With Quote
Old 24th January 2013, 07:40 AM   #2225
diyAudio Member
 
Popolvár's Avatar
 
Join Date: May 2002
Location: Piestany, Slovakia
Ian, great news!

Maybe too late (the frequency groups were here for some time already) but I will try to kindly ask:

Would it be possible to add one more group (or modify the group1) also for older DAC chips like WM8741 or AK4396 that support master clocks up to 36Mhz (so 128fs is required)? This would support 176.4kHz and 192kHz sampling frequencies for those chips.

//Group0:Si570 frequency and *Fs combination for very low mclk range
{F112896, 256*FS}, //2 44.1 KHz
{F122880, 256*FS}, //3 48 KHz
{F225792, 256*FS}, //4 88.2 KHz
{F245760, 256*FS}, //5 96 KHz
{F225792, 128*FS}, //6 176.4KHz <---
{F245760, 128*FS}, //7 192 KHz <---
{F903168, 256*FS}, //8 352.8KHz
{F983040, 256*FS} //9 384 KHz

There is no LED for 128fs (I would have no problem with that) but it is probably too late to ask before GBIV. If it is so then I could get one double clock board for experiments with older chips.

Thank you.
  Reply With Quote
Old 24th January 2013, 07:47 AM   #2226
diyAudio Member
 
Popolvár's Avatar
 
Join Date: May 2002
Location: Piestany, Slovakia
Another solution could be to use a flip-flop on DAC board and use group3.
  Reply With Quote
Old 24th January 2013, 08:03 AM   #2227
diyAudio Member
 
Join Date: Jan 2011
Location: Madrid - Spain
Could the si570 board be controled using I2C commands from, say, the Amanero board?

As a standalone device, It could be interesting having 192fs (AKM, AD, WM) or even 384fs for the PCM/DSD179x family.

Cheers
  Reply With Quote
Old 24th January 2013, 08:28 AM   #2228
qusp is offline qusp  Australia
diyAudio Member
 
qusp's Avatar
 
Join Date: Oct 2009
Location: Brisbane, Australia
as I understand it there is a lot more than changing clock speeds needed to mod amanero
  Reply With Quote
Old 24th January 2013, 08:44 AM   #2229
diyAudio Member
 
Join Date: Feb 2009
Location: Brisbane, Australia
Si570 doesn't talk i2c ... it needs a UART.


For DACs that require 128Fs I would suggest the DualXO board will give a better overall result. Remember that the Si570's main motivation was to enable the higher clock speeds for the ESS DACs the others are not the primary goal. There seems to have been a design decision by Ian to leave 128Fs out of the Si570.

Regarding 192 and 384Fs, these speeds haven't been supported by any of Ian's modules and I am only reading between the lines here but I believe that it may be related to the fact that they are not in the 2^x sequence (where x is an integer).

2^7 = 128
2^8 = 256
2^9 = 512
2^10 = 1024
...

Integer math is FAR quicker than floating point.
__________________
Under Construction:Ian's i2s FIFO wiki

Last edited by hochopeper; 24th January 2013 at 08:54 AM.
  Reply With Quote
Old 24th January 2013, 08:53 AM   #2230
diyAudio Member
 
Popolvár's Avatar
 
Join Date: May 2002
Location: Piestany, Slovakia
Quote:
Originally Posted by Jackal29a View Post
Could the si570 board be controled using I2C commands from, say, the Amanero board?

As a standalone device, It could be interesting having 192fs (AKM, AD, WM) or even 384fs for the PCM/DSD179x family.

Cheers
FIFO board supports only 128fs, 256fs and 512fs so they will be probably not supported by the si570 board. See Ian's answer in this post:
Asynchronous I2S FIFO project, an ultimate weapon to fight the jitter
  Reply With Quote

Reply


Hide this!Advertise here!
Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
XMOS-based Asynchronous USB to I2S interface Lorien Digital Source 2111 12th July 2014 05:21 AM
exaU2I - Multi-Channel Asynchronous USB to I2S Interface exa065 exaDevices 1357 3rd March 2014 08:51 PM
DAC chip selection + I2S jitter questions drwho9437 Digital Line Level 2 26th July 2010 12:50 PM
Simple FIFO to I2S CPLD, for MCU players / reclocking KOON3876 Digital Line Level 21 19th September 2008 04:00 PM
asynchronous reclocking and low jitter clocks ash_dac Digital Source 3 8th February 2005 09:22 AM


New To Site? Need Help?

All times are GMT. The time now is 10:12 AM.


vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2014 DragonByte Technologies Ltd.
Copyright ©1999-2014 diyAudio

Content Relevant URLs by vBSEO 3.3.2