I was trying to convey the concept, but if the details are important: I'll still do the basic concept in decimal because that is what MOST humans are more comfortable in, then I'll go into the actual binary details.
DACs used normalised integers. The important concept is what is called Full Scale or FS for short. The official CD standard says that FS produces 2 volts on the output jacks. No matter how many digits are used to reperesnt the numbers, the largest one it can represent produces 2V. For the sake of making things easy I'll do an example in decimal. Lets say you have two digits to play with, this gives a range of 0 - 99. To make this easy lets say full scale is defined as 100. Thus the maximum value you can get is 99/100 = .99FS. Lets then go to a system with 3 digits, you now have 0-999 as possible values, BUT we also change the definition of FS to 1000, so the maximum value is now 999/1000 = .999FS. IF we take our original 99 and convert it to the second system we add a a zero to the right, which gives us 990, thus 990/1000 = .99FS. You will get exactly the same voltage from the output. If you've followed this you have now realized tat the maximum number (999 in this example) isn't really the defined FS (1000). Thus you will never actually get exactly 2V from the output, but you can get very close. (The more digits the closer you can get) Now to the REAL nitty gritty details. In reality twos complement integers are used. This is a way of representing both positive and negative numbers as integers. Here is a simple 4 bit example. Zero is represented as 0000, one is 0001, two is 0010 etc, just what you would expect from binary representation. The fun part is when it goes negative, minus 1 is 1111, minus 2 is 1110 etc. This is done so that if you add minus one and plus one you get zero. An interesting aspect of this is that you can go from (in this example) minus 8 to plus 7. This system would get mapped to minus 1 to plus 1 volts, its still a two volt range. In this case FS gets slightly more complicated because you have to deal with negative numbers. For the 4 bit case its still common to say FS is 16, even though its really -8 to +8. You still have the issue that you can never quite hit FS on the top (but you can on the bottom!) Adding bits works the same way as with the decimal example. The integers get bigger but so does FS. Adding zeros to the right does the same thing, the ratio of FS stays exactly the same so the voltage you get from the DAC does not change. When adding zeros in this way its perfectly legitimate to call this "bit perfect" because the voltage output from the DAC does not change. For completeness the numbers for a 16 bit system are: FS = 65536 min = -32768 max = 32767 For 24 bit its: FS = 16777216 min = -8388608 max = 8388607 In both cases that maps to -1 to +1 on the output of the DAC. So there you have the details. Just don't ask WHY you want to add zeros, THATS another post! John S. -- JohnSwenson ------------------------------------------------------------------------ JohnSwenson's Profile: http://forums.slimdevices.com/member.php?userid=5974 View this thread: http://forums.slimdevices.com/showthread.php?t=71345 _______________________________________________ Touch mailing list [email protected] http://lists.slimdevices.com/mailman/listinfo/touch
