I’m looking at making my own version of the BBB for a custom project. I see a note on Revision A6: “Noise issues were observed in other designs where the clock oscillator was getting hit due to a suspected issue in ground bounce. A zero ohm resistor was added to connect the OSC_GND to the system ground.” A second resistor was added in the next revision to the 32kHz crystal circuit.
Could the GND_OSC nets be tied directly to DGND without zero ohm resistors? Was the resistor used just in case the change caused problems and could be left unpopulated if so? I see no issues in further revisions so I’d assume that these changes fixed the issue, is that right? I’m asking because I suspect there might be another reason why resistors were used instead of just direct traces (like needing a ‘single connection point’ type of thing). Some clarification would be helpful indeed.
I’m looking at making my own version of the BBB for a custom project. I see a note on Revision A6: “Noise issues were observed in other designs where the clock oscillator was getting hit due to a suspected issue in ground bounce. A zero ohm resistor was added to connect the OSC_GND to the system ground.” A second resistor was added in the next revision to the 32kHz crystal circuit.
Could the GND_OSC nets be tied directly to DGND without zero ohm resistors? Was the resistor used just in case the change caused problems and could be left unpopulated if so? I see no issues in further revisions so I’d assume that these changes fixed the issue, is that right? I’m asking because I suspect there might be another reason why resistors were used instead of just direct traces (like needing a ‘single connection point’ type of thing). Some clarification would be helpful indeed.
This is standard high speed digital layout design. If you don’t isolate the OSC gnd, the PCB layout package will just flood all the gnd copper and then you will have digital switching noise traverse your OSC gnd and that will cause all kinds of problems. The concept is covered in books like "High Speed Digital Design: A Handbook of Black Magic” by Howard Johnson.
Thanks for the info, John. I thought it might have something to do with that. If I get a chance I’ll have to pick up that book - thanks for the suggestion!
I see in the earlier BBB designs the GND_OSC wasn’t connected to the main DGND. Only later were they connected (via those zero ohm resistors), and that apparently helped the BBB function better. To me it seems that would introduce more switching noise (as John put it) than leaving them not connected to DGND. I guess I’m a little confused about John’s use of the word “isolated” (“If you don’t isolate the OSC gnd…”) - were you suggesting the zero ohm resistors acted as isolation from digital ground in this case?
Gerald - do you mean that I could connect the GND_OSC net to the DGND net directly, or were you saying that I didn’t need to connect those two at all (as in the earlier versions of the BBB)? What’s the reason for having the resistors on the BBB if they’re not needed? I was speculating that maybe you weren’t initially sure if connecting the ground nets together would solve the “ground bounce” problem or maybe introduce worse problems, so you used those resistors to allow yourself the ability to leave them unpopulated in the event that it caused more issues than it solved (rather than re-spin new boards without the connection at all).
Thanks for the info, John. I thought it might have something to do with that. If I get a chance I’ll have to pick up that book - thanks for the suggestion!
I see in the earlier BBB designs the GND_OSC wasn’t connected to the main DGND. Only later were they connected (via those zero ohm resistors), and that apparently helped the BBB function better. To me it seems that would introduce more switching noise (as John put it) than leaving them not connected to DGND. I guess I’m a little confused about John’s use of the word “isolated” (“If you don’t isolate the OSC gnd…”) - were you suggesting the zero ohm resistors acted as isolation from digital ground in this case?
Gerald - do you mean that I could connect the GND_OSC net to the DGND net directly, or were you saying that I didn’t need to connect those two at all (as in the earlier versions of the BBB)? What’s the reason for having the resistors on the BBB if they’re not needed? I was speculating that maybe you weren’t initially sure if connecting the ground nets together would solve the “ground bounce” problem or maybe introduce worse problems, so you used those resistors to allow yourself the ability to leave them unpopulated in the event that it caused more issues than it solved (rather than re-spin new boards without the connection at all).
GND represents the return path for each signal, so DGND represents the return path for digital circuits and GND_OSC represents the return path for the OSC circuit. Ideally, you create a reference point (normally GND pin of the power plug and then using a star topology, you connect to each of the GND circuits, such as AGND, DGND, etc. This way, no GND circuit will see the return current of the other circuits. Normally, the PCB layout software won’t allow you to connect nets of different names, so you use zero ohm resistors to connect these nets on the PCB.
If GND_OSC isn’t connected to DGND, then it will be connected inside the chip and this isn’t ideal. Measure the voltage signal between GND_OSC and DGND with and without the zero ohm resistor. You will see the noise between the two nets increase without the zero ohm resistor. BTW, the zero ohm resistor isn’t idea either and we normally have special schematic symbols that allow us to connect two nets with different names. The PCB representation is just a copper trace which connects the two nets together, but most important is that you can move this copper trace so that it is close to the reference point (normally the GND pin of the power connector).