﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Damon's Laboratory Notes</title><link>http://www.damon4.com</link><description>Notes from Damon's Laboratory</description><copyright>Content copyright 2006 Damon Bruccoleri. All rights reserved.</copyright><item><category /><title>Research Proposal</title><description>&lt;IMG border=0 alt=gates.jpg src="http://damon4.com/Images/BlogImages/gates.jpg" width=120 height=110&gt;This semester I took a PhD level class on Software Engineering.&amp;nbsp; The Software Engineer is concerned primarily with the Cost and Quality of software.&amp;nbsp; One tool widely accepted for software development is Object Oriented Programming (OOP).&amp;nbsp; There is some consensus that although OOP is satisfactory to create modular code, &amp;nbsp;the typical practices and/or this tool of software professionals falls short of achieving&amp;nbsp;its' objective in certain instances.&amp;nbsp; Aspect Oriented Programming (AOP) is an additional tool to be used in conjunction with OOP to modularize 'software aspects' that would be difficult to modularize otherwise.&amp;nbsp; &lt;A href="http://damon4.com/CISD 770 Research Proposal AOP Unit Testing Damon Bruccoleri.htm" temp_href="http://damon4.com/CISD 770 Research Proposal AOP Unit Testing Damon Bruccoleri.htm"&gt;For my specialization in this class I wrote a proposal to create an AOP based framework for Unit Testing&lt;/A&gt;.</description><link>http://www.damon4.com/Default.aspx?blogentryid=173</link><pubDate>Mon, 16 Apr 2012 14:34:00 GMT</pubDate><guid>http://www.damon4.com/Default.aspx?blogentryid=173</guid></item><item><category /><title>Design</title><description>Its easier to add to design then to take away.&amp;nbsp; I think we should all look at our designs from time to time and ask how our evolving designs can be minimized and yet achieve the functionality requried.</description><link>http://www.damon4.com/Default.aspx?blogentryid=172</link><pubDate>Fri, 6 Jan 2012 01:07:00 GMT</pubDate><guid>http://www.damon4.com/Default.aspx?blogentryid=172</guid></item><item><category>Funny or Absurd</category><title>Bird Biting my Ear!</title><description>&lt;P align=center&gt;&lt;IMG border=0 alt=Image0269.jpg src="http://damon4.com/Images/BlogImages/Image0269.jpg" width=240 height=320&gt;&lt;/P&gt;
&lt;P align=center&gt;&lt;BR&gt;&lt;BR&gt;Ouch!&lt;/P&gt;</description><link>http://www.damon4.com/Default.aspx?blogentryid=171</link><pubDate>Tue, 27 Dec 2011 18:07:00 GMT</pubDate><guid>http://www.damon4.com/Default.aspx?blogentryid=171</guid></item><item><category /><title>Sine Oscillation Generating Method Comparison Chart</title><description>Found out two interesting item's.&amp;nbsp; First, there does not seem to be a simple IC for generating sine waves.&amp;nbsp; Second, I found this interesting&amp;nbsp;chart.&amp;nbsp; Use it as a starting point for your design.&amp;nbsp; &amp;nbsp;Its from Texas Instruments App Note&amp;nbsp;&amp;nbsp;263 "Sine Wave Generation Techniques".&amp;nbsp; Click on it for a larger view.&lt;BR&gt;&lt;BR&gt;&lt;A href="http://damon4.com/Images/BlogImages/osc%20tab.bmp"&gt;&lt;IMG title="Oscillator Circuit Comparison Chart" border=0 alt="osc tab.bmp" align=left src="http://damon4.com/Images/BlogImages/osc%20tab%20sm.bmp" width=300 height=325&gt;&lt;/A&gt;</description><link>http://www.damon4.com/Default.aspx?blogentryid=170</link><pubDate>Fri, 16 Dec 2011 04:30:00 GMT</pubDate><guid>http://www.damon4.com/Default.aspx?blogentryid=170</guid></item><item><category>Stupid People</category><title>Why I was wrong about SPF (sender policy framework)</title><description>In a &lt;A href="http://damon4.com/Default.aspx?blogentryid=41"&gt;previous post&lt;/A&gt; about Sender Policy Framework (SPF) I was not enthusiastic.&amp;nbsp; SPF is a&amp;nbsp;field type&amp;nbsp;in&amp;nbsp;the DNS record of your&amp;nbsp;SMTP server.&amp;nbsp;&amp;nbsp; SPF helps&amp;nbsp;mail servers reject spoofed email.&amp;nbsp;&amp;nbsp; It is imperfect security.&amp;nbsp;&amp;nbsp;I am reassessing my position on this.&amp;nbsp; But first a quick story or two.&amp;nbsp; You will see the relevance.&lt;BR&gt;&lt;BR&gt;When I was in China the students told me two stories.&amp;nbsp; The first one was of a child who was kidnapped.&amp;nbsp; The kidnappers asked for 200K RMB.&amp;nbsp; The parents called the police.&amp;nbsp; They were waiting for the kidnappers at the money/child handoff.&amp;nbsp; There was a chase, but then the police caught the kidnappers and shot them dead.&amp;nbsp; Right on the spot.&amp;nbsp; No F*ing around.&amp;nbsp;&amp;nbsp; I felt safe in China, there was some petty crime (pickpockets etc),&amp;nbsp; but not much violent crime.&lt;BR&gt;&lt;BR&gt;&lt;IMG border=0 alt=mail.jpg src="http://damon4.com/Images/BlogImages/mail.jpg" width=225 height=165&gt;The second story the kids told me was of a bus that ran outside the cluster of Universities that was involved in an accident.&amp;nbsp; Apparently many students were hurt and several died.&amp;nbsp; The problem is there was nothing reported in the news about this.&amp;nbsp; The students were in a vacuum as to the status of their classmates.&amp;nbsp; They were upset about this.&lt;BR&gt;&lt;BR&gt;This is why I have come to the conclusion that there is trade-off between &lt;U&gt;security&lt;/U&gt; and &lt;U&gt;freedom.&lt;/U&gt;&amp;nbsp; Perhaps SPF is the best trade-off of the two.&amp;nbsp; Think about it.&amp;nbsp; If you can absolutely block Spam then you have complete censure control as well.&amp;nbsp;&lt;BR&gt;&lt;BR&gt;Perhaps the SPF imperfection&amp;nbsp;is just enough to make Spam less attractive monetarily, but perhaps it also allows enough anonymity to foil censure.</description><link>http://www.damon4.com/Default.aspx?blogentryid=160</link><pubDate>Thu, 3 Nov 2011 00:03:00 GMT</pubDate><guid>http://www.damon4.com/Default.aspx?blogentryid=160</guid></item><item><category>Computer</category><title>Comment Spam and NoFollow attribute</title><description>I have been getting large amounts of comment spam.&amp;nbsp; There are two type of comment spam I regularly get.&amp;nbsp; The first type is just a bunch of gibberish links to Viagra and other spam sites.&amp;nbsp; This is probably left by a robot.&amp;nbsp;The second is superfluous or gratuitous comments.&amp;nbsp; There must be people hired to leave this junk because it partly make sense in the context of the post they are commenting on.&amp;nbsp; &lt;BR&gt;&lt;BR&gt;I still let commenters leave a url with their name.&amp;nbsp; I just added the &lt;A href="http://en.wikipedia.org/wiki/Nofollow"&gt;'nofollow' attribute&lt;/A&gt; to the link.&amp;nbsp; Hopefully this may help increase my Google page rank as well.</description><link>http://www.damon4.com/Default.aspx?blogentryid=159</link><pubDate>Wed, 2 Nov 2011 23:34:00 GMT</pubDate><guid>http://www.damon4.com/Default.aspx?blogentryid=159</guid></item><item><category>Computer</category><title>Lighting a  Bulb from Ground.</title><description>Years ago we did a little experiment to demonstrate a common networking problem.&amp;nbsp; We were networking some little user terminals that were used in factories to keep track of production.&amp;nbsp; These were of our own design.&amp;nbsp; In this design we were networking the various terminals together using low voltage wire and a serial protocol. We were using RS-422 which&amp;nbsp;uses a balanced differential pair of signals.&amp;nbsp;&amp;nbsp; As a demonstration of the voltage potentials that can exist we got a drop light and connected each of its'&amp;nbsp;wire's to some equipment on each end of the factory floor.&amp;nbsp; &lt;IMG border=0 alt=CMV.bmp align=left src="http://damon4.com/Images/BlogImages/CMV.bmp" width=300 height=100&gt;We connected to&amp;nbsp;neutral on each end.&amp;nbsp; We then tried the&amp;nbsp;chassis grounds as well.&lt;BR&gt;&lt;BR&gt;Don't you know we were able to get that light bulb to light!&amp;nbsp; We never did track down the source of the actual problem.&amp;nbsp; It could be the equipment was badly grounded.&amp;nbsp; Or that the equipment was not grounded at all.&amp;nbsp;&amp;nbsp; In any case we wanted OUR boxes to work in as many different situations as possible and be as reliable as possible.&lt;BR&gt;&lt;BR&gt;This is were we came up with a common mode voltage&amp;nbsp;requirement for our serial network differential signaling.&amp;nbsp; A requirement is born.</description><link>http://www.damon4.com/Default.aspx?blogentryid=158</link><pubDate>Fri, 21 Oct 2011 21:44:00 GMT</pubDate><guid>http://www.damon4.com/Default.aspx?blogentryid=158</guid></item><item><category>Computer</category><title>Why is Nyquist important to A/D converters?</title><description>The problem of sampled systems keeps popping its head up.&amp;nbsp; Remember what Nyquist said, that the maximum signal we can reconstruct is half of the sampling rate.&amp;nbsp; If the signal we sample has components higher than 1/2 sampling rate then we get a phenomena called 'aliasing.'&amp;nbsp; If I were to send an aliased signal back out of a computer to a D/A converter it would look like the signal was 'shifted' in frequency.&amp;nbsp; This frequency shift&amp;nbsp;would be equal to the sampling rate.&amp;nbsp;&amp;nbsp; Suppose a signal of Fs was put into an A/D converter and the sampling rate was Fs.&amp;nbsp; It might appear on a D/A converter as a DC signal (because Fs - Fs = 0 ).&lt;BR&gt;&lt;BR&gt;&lt;IMG border=0 alt="Sampled Image.jpg" align=left src="http://damon4.com/Images/BlogImages/Sampled%20Image.jpg" width=201 height=201&gt;As an everyday example of aliasing, have you ever seen a moving fan appear still under a strobe light?&amp;nbsp; When the strobe is blinking at the same rpm's as the fans rotational speed, the fan will appear motionless.&lt;BR&gt;&lt;BR&gt;The aliasing&amp;nbsp;phenomena can occur if the sampled signal is at or above 1/2 the sampling rate OR IF IT HAS&amp;nbsp; (Fourier) &lt;STRONG&gt;COMPONENTS AT OR ABOVE THIS RATE&lt;/STRONG&gt;. In this case just those components above the Nyquist rate would be aliased, but the total signal if reconstructed&amp;nbsp;will be&amp;nbsp;distorted.&lt;BR&gt;&lt;BR&gt;How do we deal with this issue?&amp;nbsp; Typically we use an anti-aliasing filter on the front end of the A/D.&amp;nbsp; It might be as simple as an RC or more complicated as a multi-pole active filter Chebychev or Buttworth configuration.&amp;nbsp; The key is to understand how much attenuation we need at the stop band.&amp;nbsp; Suppose our A/D is 12 bits.&amp;nbsp; The ideal SNR is 72dB.&amp;nbsp; Our filter should be designed to provide 72 db of attenuation at the stop band.&lt;BR&gt;</description><link>http://www.damon4.com/Default.aspx?blogentryid=157</link><pubDate>Wed, 21 Sep 2011 01:29:00 GMT</pubDate><guid>http://www.damon4.com/Default.aspx?blogentryid=157</guid></item><item><category>Computer</category><title>The Two Army Problem</title><description>I am reading a book on networking.&amp;nbsp; Computer Networks, Tanenbaum, 5/E.&amp;nbsp; One of the networking issues it is discussing is how to bring down a synchronous connection.&amp;nbsp; A synchronous disconnect is one where both the sender and receiver agree to terminate.&amp;nbsp; I have run into this exact same issue under a different guise in the past and did not know how to epitomize&amp;nbsp;the core issue.&amp;nbsp; This is an issue at the heart of many acknowledged services.&amp;nbsp; Here is the problem in a nutshell as explained in the two army problem.&lt;BR&gt;&lt;BR&gt;&lt;IMG style="WIDTH: 158px; HEIGHT: 90px" border=0 alt="two army.gif" src="http://damon4.com/Images/BlogImages/two%20army.gif" width=312 height=165&gt;Suppose there is a valley surrounded by two hills.&amp;nbsp; On one hill is Black army 1.&amp;nbsp; On the second hill is Black army 2.&amp;nbsp; In the valley is the&amp;nbsp;Blue army.&amp;nbsp; Now the&amp;nbsp;Blue army is larger then either of the individual Black army's, but together the Black army is larger then the Blue.&amp;nbsp; If either&amp;nbsp;Black army attacks&amp;nbsp;Blue independently they would lose, but together they would win.&amp;nbsp; The problem for Black army 1 commander is to communicate a coordinated&amp;nbsp;attack time to Black army 2.&amp;nbsp; But Black 1 needs to be SURE that Black 2 got the message or he would be delinquent in his duties and be stripped of command if&amp;nbsp;Black 1 attacked alone.&amp;nbsp; So Black 1 commander sends a man though the&amp;nbsp;Blue valley with this message, "We attack at dawn, acknowledge you received this message."&amp;nbsp; Black 2 commander gets this message and sends a man with a message saying "We are with you and attack at dawn."&amp;nbsp; Sending the courier back and forth is similar to an unreliable network because the courier could be caught or shot.&lt;BR&gt;&lt;BR&gt;Now there is a problem.&amp;nbsp; A BIG problem.&amp;nbsp; How does Black commander 2 know the acknowledgment got through?&amp;nbsp; If&amp;nbsp;the acknowledgement&amp;nbsp;didn't get through then Black commander 2 would be attacking alone, since Black commander 1 did not get the acknowledgment and would not attack.&amp;nbsp; Black commander 2 can ask for an acknowledgment that the acknowledgment got through, but then we are back at the same problem on the other side! Think about it.&amp;nbsp; Black 2 asks for the ack to the ack.&amp;nbsp; Black 1 sends it.&amp;nbsp; How does Black 1 now know the ack to the ack got through?&amp;nbsp; If it didn't Black 2 will not attack now.&amp;nbsp; &lt;BR&gt;&lt;BR&gt;The courier going back and forth across the&amp;nbsp;Blue army turf is like a noisy or unreliable network.&amp;nbsp; We are trying to make the network reliable by adding acknowledgments to the messages. That last asknowledgement is the critical message.&amp;nbsp;&lt;BR&gt;&lt;BR&gt;This is an interesting problem!&amp;nbsp; There does not seem to be a clean solution presented that is 100% reliable, but there are workable solutions for particular applications.</description><link>http://www.damon4.com/Default.aspx?blogentryid=156</link><pubDate>Wed, 21 Sep 2011 00:43:00 GMT</pubDate><guid>http://www.damon4.com/Default.aspx?blogentryid=156</guid></item><item><category>Computer</category><title>DSP Builder</title><description>Interesting tool from Altera, &lt;A href="http://youtu.be/dSxqM7S2upA"&gt;DSP Builder&lt;/A&gt;, based on Simulink.&amp;nbsp; </description><link>http://www.damon4.com/Default.aspx?blogentryid=155</link><pubDate>Thu, 25 Aug 2011 01:38:00 GMT</pubDate><guid>http://www.damon4.com/Default.aspx?blogentryid=155</guid></item></channel></rss>
