tag:blogger.com,1999:blog-13729330017613702512024-03-27T12:44:46.706+05:30VLSI and Embedded System Technical LibraryUnknownnoreply@blogger.comBlogger76125tag:blogger.com,1999:blog-1372933001761370251.post-25659393718090513912011-05-12T12:21:00.000+05:302011-05-14T01:52:36.353+05:30Wireless energy transfer<div dir="ltr" style="text-align: left;" trbidi="on"><div style="text-align: justify;"><a href="http://www.wirelesspowerconsortium.com/">http://www.wirelesspowerconsortium.com</a></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: Arial, Verdana, Helvetica; font-size: 11px; line-height: 21px;"></span></div><h1 style="color: #4e3d4f; font-size: 24px; font-weight: 300; line-height: 1em; margin-bottom: 16px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;">Technology</h1><h2 style="color: #566b70; font-size: 16px; font-weight: 300; margin-bottom: 4px; margin-left: 0px; margin-right: 0px; margin-top: 16px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;">PROXIMITY POWER IS EFFICIENT AND SAFE</h2><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; max-width: 510px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 2px; padding-left: 0px; padding-right: 0px; padding-top: 2px;">Short distance power transmission is usually based on the principle of magnetic induction. With this technology, power is transferred only if the receiver is close to the transmitter. The technique of magnetic induction was discovered more than a 100 years ago. It has been used for decades in all kinds of electronic equipment. Why? Because it is simple, efficient, and safe.</div><h2 style="color: #566b70; font-size: 16px; font-weight: 300; margin-bottom: 4px; margin-left: 0px; margin-right: 0px; margin-top: 16px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;">CONTENTS</h2><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; max-width: 510px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 2px; padding-left: 0px; padding-right: 0px; padding-top: 2px;"><a href="http://www.wirelesspowerconsortium.com/technology/how-it-works.html" style="color: #72918b; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="Technology overview">How it works</a><br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a href="http://www.wirelesspowerconsortium.com/technology/total-energy-consumption.html" style="color: #72918b; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="Total energy consumption">Total energy consumption</a><br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a href="http://www.wirelesspowerconsortium.com/technology/basic-principle-of-inductive-power-transmission.html" style="color: #72918b; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="Basic principle of inductive power transmission">Basic principle of inductive power transmission</a><br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a href="http://www.wirelesspowerconsortium.com/technology/transfer-efficiency.html" style="color: #72918b; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="Transfer efficiency">Efficiency</a><br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a href="http://www.wirelesspowerconsortium.com/technology/figure-of-merit-for-power-loss.html" style="color: #72918b; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="Figure of meri for power loss">Figure of merit for power loss</a><br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a href="http://www.wirelesspowerconsortium.com/technology/quality-factor.html" style="color: #72918b; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="Quality factor">Quality factor</a><br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a href="http://www.wirelesspowerconsortium.com/technology/coupling-factor.html" style="color: #72918b; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="Coupling Factor">Coupling factor</a><br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a href="http://www.wirelesspowerconsortium.com/technology/reflected-impedance.html" style="color: #72918b; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="Reflected impedance">Reflected Impedance</a><br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a href="http://www.wirelesspowerconsortium.com/technology/resonant-coupling.html" style="color: #72918b; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="Resonant Coupling">Resonant Coupling</a><br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a href="http://www.wirelesspowerconsortium.com/technology/emf-limits-icnirp-basic-restrictions.html" style="color: #72918b; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="EMF limits - ICNIRP basic restrictions">EMF limits – ICNIRP basic restrictions</a><br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a href="http://www.wirelesspowerconsortium.com/technology/maximum-power-transfer-into-space.html" style="color: #72918b; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="Maximum power transfer into space">Maximum power transfer into space - limited by ICNIRP recommendations</a><br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a href="http://www.wirelesspowerconsortium.com/technology/shielding-effectiveness.html" style="color: #72918b; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="Shielding effectiveness">Shielding Effectiveness</a><br style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a href="http://www.wirelesspowerconsortium.com/technology/further-reading.html" style="color: #72918b; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="Further Reading">Further reading</a></div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; max-width: 510px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 2px; padding-left: 0px; padding-right: 0px; padding-top: 2px;"><br />
</div></div>Unknownnoreply@blogger.com2tag:blogger.com,1999:blog-1372933001761370251.post-89667118433588092012010-06-11T14:49:00.000+05:302010-06-11T14:49:12.703+05:30WiMAX: Broadband Wireless Acces<div class="separator" style="clear: both; text-align: center;"><a href="http://www.yugatech.com/blog/wp-content/uploads/2010/03/wimax.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.yugatech.com/blog/wp-content/uploads/2010/03/wimax.gif" /></a></div><div class="KonaFilter" style="text-align: justify;"><span class="Apple-style-span" style="font-family: Arial, Helvetica;"><span class="Apple-style-span" style="font-size: large;"><b><br />
</b></span></span></div><br />
<div style="text-align: justify;"><b>WiMAX</b> (Worldwide Interoperability for Microwave Access) is the IEEE 802.16 standards-based wireless technology that provides MAN (Metropolitan Area Network) broadband connectivity. WiMAX is an Air Interface for Fixed Broadband Wireless Access Systems, also known as the IEEE WirelessMAN air interface. WiMAX-based systems can be used to transmit signals as far as 30 miles. So far, WiMAX can offer a solution to what is normally called the "last-mile" problem by connecting individual homes' and business offices' communications.</div><h3 style="text-align: justify;">Cable/DSL Broadband Access</h3><div style="text-align: justify;">Currently, there are cable and DSL broadband access services in the marketplace. But, their practical limitations in features and deployment have prevented them from reaching many potential broadband Internet customers. The wired broadband connection provided by cable and DSL is an all-consuming and expensive process. A large number of areas throughout the world currently are not able to access broadband connectivity. Traditionally, DSL can only reach about 18,000 feet (three miles) from the central office switch, and this limitation means that many urban and suburban locations may not be served by DSL connectivity. The limitation of cable is that many older cable networks have not been equipped to offer a return channel, and converting and deploying these networks to support high-speed broadband can be expensive.</div><h3 style="text-align: justify;">Wireless Standards</h3><div style="text-align: justify;">Drawing on hundreds of experts in the telecommunications industry, the IEEE has established a collection of wireless standards that include IEEE 802.15, also known as Bluetooth, for the Personal Area Network (PAN); IEEE 802.11, also known as WiFi, for the Local Area Network (LAN); 802.16 for the Metropolitan Area Network (MAN), and IEEE 802.20 for the Wide Area Network (WAN).</div><div style="text-align: justify;">Unlike WiFi, WiMAX's range is typically measured in miles rather than feet. The main distinction of the difference between the two standards means that WiFi is focused on a local-area networking (LAN) technology and that WiMAX is a MAN technology.</div><div style="text-align: justify;">The 802.16d standard of extending 802.16 supports three physical layers (PHYs). The mandatory PHY mode is 256-point FFT Orthogonal Frequency Division Multiplexing (OFDM). The other two PHY modes are Single Carrier (SC) and 2048 Orthogonal Frequency Division Multiple Access (OFDMA) modes. By the way, the corresponding European standard—the ETSI HiperMAN standard—defines a single PHY mode identical to the 256 OFDM modes in the 802.16d standard.</div><h3 style="text-align: justify;">Why WiMAX?</h3><div style="text-align: justify;">WiMAX covers a couple of different frequency ranges. Basically, the IEEE 802.16 standard addresses frequencies from 10GHz to 66GHz. The 802.16a specification, which is an extension of IEEE802.16, covers bands in the 2GHz-to-11GHz range. WiMAX has a range of up to 30 miles with a typical cell radius of 4–6 miles.</div><div style="text-align: justify;">WiMAX's channel sizes range from 1.5 to 20MHz as well, and offer a WiMAX-based network the flexibility to support a variety of data transmitting rates such as T1 (1.5Mbps) and higher data transmitting rates of up to 70Mbps on a single channel that can support thousands of users. This flexibility allows WiMAX to adapt to the available spectrum and channel widths in different countries or licensed to different service providers.</div><div style="text-align: justify;">WiMAX supports ATM, IPv4, IPv6, Ethernet, and VLAN services. So, it can provide a rich choice of service possibilities to voice and data network service providers. In addition, WiMAX provides an ideal wireless backhaul technology to connect 802.11 wireless LANs and commercial hotspots with the Internet.</div><div style="text-align: justify;">The WiMAX-based solution is set up and deployed like cellular systems using base stations that service a radius of several miles/kilometers. The most typical WiMAX-based architecture includes a base station mounted on a building and is responsible for communicating on a point to multi-point basis with subscriber stations located in business offices and homes. The customer premise equipment (CPE) will connect the base station to a customer as well; the signal of voice and data is then routed through standard <a class="kLink" href="http://www.wi-fiplanet.com/wimax/article.php/3412391/WiMAX-Broadband-Wireless-Access.htm#" id="KonaLink0" style="background-attachment: initial !important; background-clip: initial !important; background-color: transparent !important; background-image: none !important; background-origin: initial !important; background-position: initial initial !important; background-repeat: initial initial !important; border-bottom-color: transparent !important; border-bottom-style: none !important; border-bottom-width: 0px !important; border-left-color: transparent !important; border-left-style: none !important; border-left-width: 0px !important; border-right-color: transparent !important; border-right-style: none !important; border-right-width: 0px !important; border-top-color: transparent !important; border-top-style: none !important; border-top-width: 0px !important; bottom: 0px; color: blue !important; cursor: pointer; display: inline !important; font-family: verdana; font-variant: normal; left: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: none; outline-width: initial; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static; right: 0px; text-decoration: underline !important; text-transform: none !important; top: 0px;" target="undefined"><span style="color: blue !important; font-family: 'Times New Roman'; font-size: 16px; font-weight: normal; position: static;"><span class="kLink" style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: none; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: initial; border-bottom-style: solid; border-bottom-width: 1px; border-left-color: initial !important; border-left-style: none !important; border-left-width: 0px !important; border-right-color: initial !important; border-right-style: none !important; border-right-width: 0px !important; border-top-color: initial !important; border-top-style: none !important; border-top-width: 0px !important; color: blue !important; display: inline !important; float: none !important; font-family: 'Times New Roman'; font-size: 16px; font-weight: normal; padding-bottom: 1px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static; width: auto !important;">Ethernet </span><span class="kLink" style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: none; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: initial; border-bottom-style: solid; border-bottom-width: 1px; border-left-color: initial !important; border-left-style: none !important; border-left-width: 0px !important; border-right-color: initial !important; border-right-style: none !important; border-right-width: 0px !important; border-top-color: initial !important; border-top-style: none !important; border-top-width: 0px !important; color: blue !important; display: inline !important; float: none !important; font-family: 'Times New Roman'; font-size: 16px; font-weight: normal; padding-bottom: 1px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static; width: auto !important;">cable</span></span></a> either directly to a single computer, or to an 802.11 hot spot or a wired Ethernet LAN.</div><div style="text-align: justify;">WiMAX-based solutions include many other advantages, such as robust security features, good QoS (Quality of Service), and mesh and smart antenna technology that will allow better utilization of the spectrum resources. Also, the WiMAX-based voice service can work on either traditional Time Division Multiplexed (TDM) voice or IP-based Voice, also known as Voice over IP (VoIP).</div><h3 style="text-align: justify;">WiMAX Connectivity and Solutions</h3><div style="text-align: justify;">WiMAX allows equipment vendors to create many different types of IEEE802.16-based products, including various configurations of base stations and customer premise equipment (CPE). WiMAX also allows the services provider to deliver many types of wireless access services. The WiMAX can be used on a variety of wireless broadband connections and solutions:</div><ul><li style="text-align: justify;">"Last Mile" Broadband Access Solution—Metropolitan-Area Networks (MAN) connections to home and business office, especially in those areas that were not served by cable or DSL or in areas where the local telephone company may need a long time to deploy broadband service. The WiMAX-based wireless solution makes it possible for the service provider to scale-up or scale-down service levels in short times with the client request.</li>
<li style="text-align: justify;">Backhaul networks for cellular base stations, bypassing the Public Switched Telephone Network (PSTN); the cellular service providers can look to wireless backhaul as a more cost-effective alternative. The robust WiMAX technology makes it a nice choice for backhaul for enterprises such as hotspots as well as point-to-point backhaul solutions.</li>
<li style="text-align: justify;">Backhaul enterprise connections to the Internet for WiFi hotspots. It will allow users to connect to a wireless Internet service provider even when they roam outside their home or business office.</li>
<li style="text-align: justify;">A variety of new business services by wireless Internet service provider.</li>
</ul><h3 style="text-align: justify;">Who Are Working on WiMAX?</h3><div style="text-align: justify;">The WiMax Forum is a non-profit organization formed in 2001 by Nokia Corp. and Ensemble Communications Inc., etc. Right now, the WiMAX Forum has more than 110 members of equipment, semiconductor suppliers, and services providers such as Alcatel, AT&T, Fujitsu, Intel, Nortel, Motorola, SBC and Siemens, and so forth. The WiMax Forum aims to support wireless metropolitan-area networking products based on IEEE 802.16, like the Wi-Fi Alliance has done for wireless LANs and IEEE 802.11. The WiMAX Forum has most recently been working to promote the adoption of IEEE 802.16-compliant equipment, certification, and interoperability testing. In 2003, Intel Corp. became a major supporter of the WiMax Forum.</div><div style="text-align: justify;">In order to bring interoperability into MAN, the WiMAX Forum is focusing its efforts on establishing a baseline protocol that allows equipment and devices from multiple vendors to interoperate and that also provides a choice to buy equipment and devices from different suppliers.</div><div style="text-align: justify;">Currently, there are no WiMax-certified products yet available in the market, but the race is already on. At the Intel Developer Forum in September 2004, Intel showed off its first samples of a WiMAX chipset that has been named Rosedale. Intel is planning to offer WiMax transmitters by 2005, and expects to ship WiMax devices for the home and office to take off by 2006. Also, Intel hopes that notebooks will begin to incorporate WiMAX technology during 2006, and by 2007, handsets for mobility will be available. Intel has already signed up Proxim and Alcatel to develop WiMAX base-station and CPE (Customer Premises Equipment) kits. Fujitsu Microelectronics America Inc. in early 2005 expects to introduce a new WiMAX-based single-chip solution for deployment in base stations and subscriber stations as well; the product integrates both PHY and MAC functionality. Siemens Information and Communication Mobile also plans to build complete WiMAX-based solutions for establishing fixed, broadband speed metropolitan area wireless radio networks.</div><h3 style="text-align: justify;">About the Author</h3><div style="text-align: justify;"><b>Xiaole Song</b> is a professional designing, integrating and consulting Telecommunication, IP Telephony, Computer Telephony Integration, and Speech applications. Feel free to e-mail any comments about this article to <a href="mailto:xiaole_song@yahoo.com">xiaole_song@yahoo.com</a>.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><a href="http://www.wi-fiplanet.com/wimax/article.php/3412391/WiMAX-Broadband-Wireless-Access.htm">Source Here</a></div><div style="text-align: justify;"><br />
</div>Unknownnoreply@blogger.com4tag:blogger.com,1999:blog-1372933001761370251.post-71230550265743170502010-05-26T14:33:00.001+05:302010-05-26T14:46:01.005+05:30Introduction to VLSICheck out this SlideShare Presentation: <div style="width:425px" id="__ss_1398844"><strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/illpa/introduction-to-vlsi" title="Introduction to VLSI ">Introduction to VLSI </a></strong><object id="__sse1398844" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=lecture-vlsi-090507042309-phpapp01&stripped_title=introduction-to-vlsi" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed name="__sse1398844" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=lecture-vlsi-090507042309-phpapp01&stripped_title=introduction-to-vlsi" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object><div style="padding:5px 0 12px">View more <a href="http://www.slideshare.net/">presentations</a> from <a href="http://www.slideshare.net/illpa">illpa</a>.</div></div>Unknownnoreply@blogger.com2tag:blogger.com,1999:blog-1372933001761370251.post-69074664523735960232010-05-25T09:17:00.012+05:302010-05-25T09:23:43.542+05:30Researchers Create Seven Atom Transistor, Working on Quantum Computer<span class="Apple-style-span" style="color: #333333; font-family: verdana; font-size: 12px;"><span id="ctl00_MainContent_lblBody"><div style="orphans: 2; text-align: justify; widows: 2;"><span style="font-style: normal;"><span style="font-weight: normal;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: Arial; font-size: small;"><span class="Apple-style-span" style="font-size: 13px;"><span class="Apple-style-span" style="border-collapse: collapse; color: black; font-family: arial, sans-serif;"></span></span></span></span></span></span><br />
<span style="font-style: normal;"><span style="font-weight: normal;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: Arial; font-size: small;"><div style="text-align: justify;"><span style="color: #333333; font-family: verdana; font-weight: bold;">No end to Moore's Law yet</span></div><span style="color: #333333; font-family: verdana; font-size: 12px;"><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><br />
</span></div><span><div></div><div style="text-align: justify;"><span style="font-size: medium;">The transistor is the foundation for the semiconductor industry and all of our modern electronic miracles. The ability to </span><a href="http://www.dailytech.com/IDF09+Intel+Demonstrates+First+22nm+Chips+Discusses+Die+Shrink+Roadmap/article16312.htm" style="color: #5188b4;" target="_blank"><span style="font-size: medium;">shrink transistors</span></a><span style="font-size: medium;"> has led to cheaper and faster electronic devices, as well as </span><a href="http://www.dailytech.com/Intel+Confirms+25nm+NAND+Flash+in+Mass+Production+Heralds+New+SSD+Generation/article18415.htm" style="color: #5188b4;" target="_blank"><span style="font-size: medium;">solid state storage</span></a><span style="font-size: medium;"> and digital photography.</span></div><span style="font-style: normal;"><div style="text-align: justify;"><span style="font-size: medium;"><br />
</span></div><span style="font-weight: normal;"><div style="text-align: justify;"><span style="font-size: medium;">Australian researchers have now created the world's smallest transistor, consisting of only seven atoms arranged into a single silicon crystal. It is fully functional and can regulate and control the flow of electrical current, despite being only 4nm across.</span></div><div style="text-align: justify;"><span style="font-size: medium;"><br />
</span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://images.dailytech.com/nimage/14704_Nano%20dot.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://images.dailytech.com/nimage/14704_Nano%20dot.jpg" /></a></div><div class="separator" style="clear: both; text-align: center;"><span class="Apple-style-span" style="border-collapse: separate; font-size: 11px;">A seven atom transistor is contained within the quantum dot</span></div><div style="text-align: justify;"><span style="font-size: medium;"><br />
</span></div><div style="text-align: justify;"><span style="font-style: normal;"><span style="font-weight: normal;"><span style="font-size: medium;">"The significance of this achievement is that we are not just moving atoms around or looking at them through a microscope," says Professor Michelle Simmons, a co-author of a paper on the subject that is being published by </span></span></span><em><span style="font-weight: normal;"><span style="font-size: medium;">Nature Nanotechnology</span></span></em><span style="font-style: normal;"><span style="font-weight: normal;"><span style="font-size: medium;">. The paper is entitled "</span><a href="http://www.nature.com/nchem/journal/vaop/ncurrent/pdf/nchem.670.pdf" rel="nofollow" style="color: #5188b4;" target="_blank"><span style="font-size: medium;">Spectroscopy of Few-Electron Single-Crystal Silicon Quantum Dots</span></a><span style="font-size: medium;">".</span></span></span></div></span></span><br />
<div></div><div style="text-align: justify;"><span style="font-size: medium;">"We are manipulating individual atoms and placing them with atomic precision, in order to make a working electronic device," elaborated Simmons. "We have replaced just seven individual silicon atoms with phosphorus atoms. That is amazing exactness".</span></div><span style="font-style: normal;"><div style="text-align: justify;"><span style="font-size: medium;"><br />
</span></div><span style="font-weight: normal;"><div style="text-align: justify;"><span style="font-size: medium;">The research was primarily conducted at the University of New South Wales' Centre for Quantum Computer Technology (CQCT) in Sydney, with the assistance of researchers from the University of Wisconsin-Madison. Simmons currently works as the Director of the CQCT.</span></div><div style="text-align: justify;"><span style="font-size: medium;"><br />
</span></div><div style="text-align: justify;"><span style="font-size: medium;">The atoms were placed using a scanning tunneling microscope, which operates on the concept of quantum tunneling. Although it was first developed in 1981, it uses extremely challenging techniques that require highly clean and stable surfaces, exceptional vibration control, and sophisticated electronics. Simmons' team is now applying those techniques towards their first </span><a href="http://www.dailytech.com/Researchers+Claim+First+Real+Quantum+Processor/article15544.htm" style="color: #5188b4;" target="_blank"><span style="font-size: medium;">quantum computer</span></a><span style="font-size: medium;">.</span></div></span></span><br />
<div style="text-align: justify;"><span style="font-style: normal;"><span style="font-weight: normal;"><a href="http://www.dailytech.com/New+Device+Further+Proves+Electron+Quantum+Entanglement+Possible/article17381.htm" style="color: #5188b4;" target="_blank"><span style="font-size: medium;">Quantum computing</span></a><span style="font-size: medium;"> is expected to be the next big scientific leap, and could revolutionize cryptography, </span><a href="http://www.dailytech.com/article.aspx?newsid=18476#" style="background-color: transparent !important; border-bottom-color: rgb(43, 101, 176) !important; border-bottom-style: dotted !important; border-bottom-width: 0.2em !important; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; color: rgb(43, 101, 176) !important; display: inline; float: none; font-family: inherit !important; font-weight: normal !important; line-height: normal; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px !important; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left; text-decoration: none !important;" target="_blank"><span style="font-size: medium;">weather<img name="itxt-icon-0" src="http://images.intellitxt.com/ast/adTypes/mag-glass_10x10.gif" style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; display: inline !important; float: none; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-height: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; width: 10px;" /></span></a><span style="font-size: medium;"> <wbr></wbr>forecasting, and nuclear modeling amongst </span><a href="http://www.dailytech.com/Google+DWave+Team+up+to+Unveil+Worlds+First+Quantum+Image+Search/article17112.htm" style="color: #5188b4;" target="_blank"><span style="font-size: medium;">other fields</span></a><span style="font-size: medium;">.</span></span></span></div><div style="text-align: justify;"><span style="font-style: normal;"><span style="font-weight: normal;"><span style="font-size: medium;"><br />
</span></span></span></div><div style="text-align: justify;"><span style="font-style: normal;"><span style="font-weight: normal;"><span style="font-size: medium;"><a href="http://www.dailytech.com/article.aspx?newsid=18476" style="color: #0065cc;" target="_blank">http://www.dailytech.com/<wbr></wbr>article.aspx?newsid=18476</a></span></span></span></div><div style="text-align: justify;"><span style="font-style: normal;"><span style="font-weight: normal;"><br />
</span></span></div></span></span></span> </span></span></span></div></span></span>Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-1372933001761370251.post-8668435429184323652010-05-19T09:51:00.000+05:302010-05-19T09:51:02.225+05:30From ray-gun to Blu-ray<div align="justify"><span class="Apple-style-span" style="font-family: arial, helvetica, sans-serif; font-size: 13px; font: normal normal normal medium/normal 'Times New Roman';"><div class="standfirst" style="font-size: 15px; line-height: 20px; margin: 4px 0px 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">The first public reactions to lasers ranged from "Death ray!" to "Nice idea, but what good is it?". <a href="http://www.sidneyperkowitz.net/" style="color: #ab0000; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;">Sidney Perkowitz</a> reviews how lasers are now inextricably entwined in our lives, from everyday applications to popular culture</div><div class="articleBody" style="line-height: 18px; margin: 0px 0px 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"> <div class="articleThumbnailCentre" style="margin: 0px 0px 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: center;"><a class="thickbox" href="http://images.iop.org/objects/phw/world/23/5/27/ray1.jpg" style="color: #ab0000; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="James Bond is held captive by Goldfinger and his sci-fi red
laser that can cut through gold. (Courtesy: Danjaq/EON/UA/The Kobal Collection)"><img alt="Do you expect me to talk?" src="http://images.iop.org/objects/phw/world/thumb/23/5/27/ray1.jpg" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="Do you expect me to talk?" /></a><br style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a class="thickbox" href="http://images.iop.org/objects/phw/world/23/5/27/ray1.jpg" style="color: #ab0000; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="James Bond is held captive by Goldfinger and his sci-fi red
laser that can cut through gold. (Courtesy: Danjaq/EON/UA/The Kobal Collection)">Do you expect me to talk?</a></div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">There is one particular scene in H G Wells' 1898 tale <cite style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">The War of the Worlds</cite> that, if only I had remembered it, could have helped me to avoid a bad moment in my laser lab in 1980. In the story – published long before lasers came along in 1960 – the Martians wreak destruction on earthlings with a ray that the protagonist calls an "invisible, inevitable sword of heat", projected as if an "intensely heated finger were drawn...between me and the Martians". In all but name, Wells was describing an infrared laser emitting an invisible straight-line beam – the same type of laser that, decades later in my lab, burned through a favourite shirt and started on my arm.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Wells' bold prediction of a destructive beam weapon preceded many others in science fiction. From the 1920s and 1930s, Buck Rogers and Flash Gordon wielded eye-catching art-deco ray-guns in their space adventures as shown in comics and in films. In 1951 the powerful robot Gort projected a ray that neatly disposed of threatening weapons in the film <cite style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">The Day the Earth Stood Still</cite>. Such appearances established laser-like devices in the popular mind even before they were invented. But by the time the evil Empire in <cite style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Star Wars Episode IV: A New Hope</cite> (1977) used its Death Star laser to destroy an entire planet, lasers were a thing of fact, not just fiction. Lasers were changing how we live, sometimes in ways so dramatic that one might ask, which is the truth and which the fiction?</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Like the fictional science, the real physics behind lasers has its own long history. One essential starting point is 1917, when Einstein, following his brilliant successes with relativity and the theory of the photon, established the idea of stimulated emission, in which a photon induces an excited atom to emit an identical photon. Almost four decades later, in the 1950s, the US physicist Charles Townes used this phenomenon to produce powerful microwaves from a molecular medium held in a cavity. He summarized the basic process – microwave amplification by stimulated emission of radiation – in the acronym "maser".</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">After Townes and his colleague Arthur Schawlow proposed a similar scheme for visible light, Theodore Maiman, of the Hughes Research Laboratories in California, made it work. In 1960 he amplified red light within a solid ruby rod to make the first laser. Its name was coined by Gordon Gould, a graduate student working at Columbia University, who took the word "maser" and replaced "microwave" with "light", and later received patent rights for his own contributions to laser science.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Following Maiman's demonstration of the first laser there was much excitement and enthusiasm in the field, and the ruby laser was soon followed by the helium neon or HeNe laser, invented at Bell Laboratories in 1960. Capable of operating as a small, low-power unit, it produced a steady, bright-red emission at 633 nm. However, an even handier type was discovered two years later when a research group at General Electric saw laser action from an electrical diode made of the semiconductor gallium arsenide. That first laser diode has since mushroomed into a versatile family of small devices that covers a wide range of wavelengths and powers. The diode laser quickly became the most prevalent type of laser, and still is to this day – according to a recent market survey, 733 million of them were sold in 2004.</div><h3 style="color: #6c6cb7; font-size: 16px; line-height: 20px; margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Better living through lasers</h3><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">As various types of laser became available, and different uses for them were developed, these devices entered our lives to an extraordinary extent. While Maiman was dismayed that his invention was immediately called a "death ray" in a sensationalist newspaper headline, lasers powerful enough to be used as weapons would not be seen for another 20 years. Indeed, the most widespread versions are compact units typically producing mere milliwatts.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">A decade and a half after their invention, HeNe lasers, and then diode lasers, would become the basis of bar-code scanning – the computerized registration of the black and white pattern that identifies a product according to its universal product code (UPC). The idea of automating such data for use in sales and inventory originated in the 1930s, but it was not until 1974 that the first in-service laser scanning of an item with a UPC symbol – a pack of Wrigley's chewing gum – occurred at a supermarket checkout counter in Ohio. Now used globally in dozens of industries, bar codes are scanned billions of times daily and are claimed to save billions of dollars a year for consumers, retailers and manufacturers alike.</div><div class="articleThumbnailCentre" style="margin: 0px 0px 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: center;"><a class="thickbox" href="http://images.iop.org/objects/phw/world/23/5/27/ray2.jpg" style="color: #ab0000; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="Left: bar-code scanning. (Courtesy: Photolibrary) <br />
Right: transmitting information via optical fibres. (Courtesy: TEK Image/Science Photo Library)"><img alt="The diverse uses of lasers" src="http://images.iop.org/objects/phw/world/thumb/23/5/27/ray2.jpg" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="The diverse uses of lasers" /></a><br style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a class="thickbox" href="http://images.iop.org/objects/phw/world/23/5/27/ray2.jpg" style="color: #ab0000; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="Left: bar-code scanning. (Courtesy: Photolibrary) <br />
Right: transmitting information via optical fibres. (Courtesy: TEK Image/Science Photo Library)">The diverse uses of lasers</a></div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Lasers would also come to dominate the way in which we communicate. They now connect many millions of computers around the world by flashing binary bits into networks of pure-glass optical fibre at rates of terabytes per second. Telephone companies began installing optical-fibre infrastructure in the late 1970s and the first transatlantic fibre-optic cable began operating between the US and Europe in 1988, with tens of thousands of kilometres of undersea fibre-optic cabling now in existence worldwide. This global web is activated by laser diodes, which deliver light into fibres with core diameters of a few micrometres at wavelengths that are barely attenuated over long distances. In this role, lasers have become integral to our interconnected world.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">As lasers grew in importance, their fictional versions kept pace with – and even enhanced – the reality. Only four years after the laser was invented, the film <cite style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Goldfinger</cite> (1964) featured a memorable scene that had every man in the audience squirming: Sean Connery as James Bond is tied to a solid gold table along which a laser beam moves, vaporizing the gold in its path and heading inexorably toward Bond's crotch – though as usual, Bond emerges unscathed.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">That laser projected red light to add visual drama, but its ability to cut metal foretold the invisible infrared beam of the powerful carbon-dioxide (CO<sub style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">2</sub>) laser – the type that once ruined my shirt. Invented in 1964, CO<sub style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">2</sub> lasers emitting hundreds of watts in continuous operation were introduced as industrial cutting tools in the 1970s. Now, kilowatt versions are available for uses such as "remote welding" in the automobile industry, where a laser beam directed by steerable optics can rapidly complete multiple metal spot welds. High-power lasers are suitable for other varied industrial tasks, and even for shelling nuts.</div><h3 style="color: #6c6cb7; font-size: 16px; line-height: 20px; margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Digital media</h3><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Aside from the helpful and practical uses of lasers, what have they done to entertain us? For one thing, lasers can precisely control light waves, allowing sound waves to be recorded as tiny markings in digital format and the sound to be played back with great fidelity. In the late 1970s, Sony and Philips began developing music digitally encoded on shiny plastic "compact discs" (CDs) 12 cm in diameter. The digital bits were represented by micrometre-sized pits etched into the plastic and scanned for playback by a laser diode in a CD player. In retrospect, this new technology deserved to be launched with its own musical fanfare, but the first CD released, in 1982, was the commercial album <cite style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">52nd Street</cite> by rock artist Billy Joel.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">In the mid-1990s the CD's capacity of 74 minutes of music was greatly extended via digital versatile discs or digital video discs (DVDs) that can hold an entire feature-length film. In 2009 Blu-ray discs (BDs) appeared as a new standard that can hold up to 50 gigabytes, which is sufficient to store a film at exceptionally high resolution. The difference between these formats is the laser wavelengths used to write and read them – 780 nm for CDs, 650 nm for DVDs and 405 nm for BDs. The shorter wavelengths give smaller diffraction-limited laser spots, which allow more data to be fitted into a given space.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Although the download revolution has led to a decline in CD sales – 27% of music revenue last year was from digital downloads – lasers remain essential to our entertainment. They carry music, films and everything that streams over or can be downloaded via the Internet and telecoms channels, depositing them into our computers, smart phones and other digital devices.</div><h3 style="color: #6c6cb7; font-size: 16px; line-height: 20px; margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Death rays...</h3><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Among the films that you might choose to download over the Internet are some in which lasers are portrayed as destructive devices, encouraging negative connotations. In the film <cite style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Real Genius</cite> (1985), a scientist co-opts two brilliant young students to develop an airborne laser assassination weapon for the military and the CIA. The students avenge themselves by sabotaging the laser to heat a huge vat of popcorn, producing a tsunami of popped kernels that bursts open the scientist's house. The film <cite style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">RoboCop</cite> (1987) shows a news report that a malfunctioning US laser in orbit around the Earth has wiped out part of southern California. This was a satirical response to the idea of laser weapons in space, a hotly pursued dream for then US President Ronald Reagan.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">The US military was thinking about laser weapons well before high-power industrial CO<sub style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">2</sub> lasers were melting metal. As the Cold War raised fears of all-out conflict with the Soviet Union, the potential for a new hi-tech weapon stimulated the Pentagon to fund laser research even before Maiman's result. But it was difficult to generate enough beam power within a reasonably sized device – early CO<sub style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">2</sub> lasers with kilowatt outputs were too unwieldy for the battlefield. Eventually, in 1980, the Mid-Infrared Advanced Chemical Laser reached pulsed powers of megawatts, but was still a massive device. Even worse, absorption and other atmospheric effects made its beam ineffective by the time it reached its target.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">That would not be a concern, however, for lasers fired in space to destroy nuclear-tipped intercontinental ballistic missiles (ICBMs) before they re-entered the atmosphere. Development of suitably powerful lasers such as those emitting X-rays became part of the multibillion-dollar anti-ICBM Strategic Defense Initiative (SDI) proposed by Reagan in 1983. Known to the general public and even to scientists and the government as "Star Wars" after the film, the scheme had an undeniably science-fiction flavour. But the US weaponization of space was never realized – by the 1990s technical difficulties and the fall of the Soviet Union had turned laser-weapons development elsewhere. Now it is mostly directed towards smaller weapons such as airborne lasers that have a range of hundreds of kilometres. <cite style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">...and life rays</cite></div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">While the morality associated with weapons may be debatable, lasers are used in many other areas that are undeniably good, such as medicine. The first medical use of a laser was in 1961, when doctors at Columbia University Medical Center in New York destroyed a tumour on a patient's retina with a ruby laser. Because a laser beam can enter the eye without injury, ophthalmology has benefited in particular from laser methods, but their versatility has also led to laser diagnosis and treatment in other medical areas.</div><div class="articleThumbnailCentre" style="margin: 0px 0px 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: center;"><a class="thickbox" href="http://images.iop.org/objects/phw/world/23/5/27/ray3.jpg" style="color: #ab0000; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="Left: Blu-ray discs. (Courtesy: GIPhotoStock/Science Photo Library) <br />
Right: laser eye surgery. (Courtesy: NIH/Custom Medical Stock Photo/Science Photo Library)"><img alt="Make light work" src="http://images.iop.org/objects/phw/world/thumb/23/5/27/ray3.jpg" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="Make light work" /></a><br style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a class="thickbox" href="http://images.iop.org/objects/phw/world/23/5/27/ray3.jpg" style="color: #ab0000; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="Left: Blu-ray discs. (Courtesy: GIPhotoStock/Science Photo Library) <br />
Right: laser eye surgery. (Courtesy: NIH/Custom Medical Stock Photo/Science Photo Library)">Make light work</a></div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Using CO<sub style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">2</sub> and other types of lasers with varied wavelengths, power levels and pulse rates, doctors can precisely vaporize tissue, and can also cut tissue while simultaneously cauterizing it to reduce surgical trauma. One example of medical use is LASIK (laser-assisted <i style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">in situ</i> keratomileusis) surgery in which a laser beam reshapes the cornea to correct faulty vision. By 2007, some 17 million people worldwide had undergone the procedure.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">In dermatology, lasers are routinely used to treat benign and malignant skin tumours, and also to provide cosmetic improvements such as removing birthmarks or unwanted tattoos. Other medical uses are as diverse as treating inaccessible brain tumours with laser light guided by a fibre-optic cable, reconstructing damaged or obstructed fallopian tubes and treating herniated discs to relieve lower-back pain, a procedure carried out on 500,000 patients per year in the US.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Yet another noble aim of using lasers is in basic and applied research. One notable example is the National Ignition Facility (NIF) at the Lawrence Livermore National Laboratory in California. NIF's 192 ultraviolet laser beams, housed in a stadium-sized, 10-storey building, are designed to deliver a brief laser pulse measured in hundreds of terawatts into a millimetre-scale, deutrium-filled pellet. This is expected to create conditions like those inside a star or a nuclear explosion, allowing the study of both astrophysical processes and nuclear weapons.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">A more widely publicized goal is to induce the hydrogen nuclei to fuse into helium, as happens inside the Sun, to produce an enormous energy output. After some 60 years of effort using varied approaches, scientists have yet to achieve fusion power that produces more energy than a power plant would need to operate. If laser fusion were to successfully provide this limitless, non-polluting energy source, that would more than justify the overruns that have brought the cost of NIF to $3.5bn. Although some critics consider laser fusion a long shot, recent work at NIF has realized some of its initial steps, increasing the odds for successful fusion.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Popular culture is also hopeful about the role of lasers in "green" power. Although the film <cite style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Chain Reaction</cite> (1996) badly scrambles the science, it does show a laser releasing vast amounts of clean energy from the hydrogen in water. In <cite style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Spider-Man 2</cite> (2004), physicist Dr Octavius uses lasers to initiate hydrogen fusion that will supposedly help humanity; unfortunately, this is no advertisement for the benefits of fusion power, for the reaction runs wild and destroys his lab.</div><h3 style="color: #6c6cb7; font-size: 16px; line-height: 20px; margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Lasers in high and not-so-high culture</h3><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Situated between the ultra-powerful lasers meant to excite fusion and the low-power units at checkout counters are lasers with mid-range powers that can provide highly visible applications in art and entertainment, as artists quickly realized. A major exhibit of laser art was held at the Cincinnati Museum of Art as early as 1969, and in 1971 a sculpture made of laser beams was part of the noted "Art and Technology" show at the Los Angeles County Museum of Art. In 1970 the well-known US artist Bruce Nauman presented "Making Faces", a series of laser hologram self-portraits, at New York City's Finch College Museum of Art.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Other artists followed suit in galleries and museums, but lasers have been most evident in larger venues. Beginning in the late 1960s, beam-scanning systems were invented that allowed laser beams to dynamically follow music and trace intricate patterns in space. This led to spectacular shows such as that at the Expo '70 World's Fair in Osaka, Japan, and those in planetariums. A favourite type featured "space" music, like that from <cite style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Star Wars</cite>, accompanied by laser effects.</div><div class="articleThumbnailCentre" style="margin: 0px 0px 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: center;"><a class="thickbox" href="http://images.iop.org/objects/phw/world/23/5/27/ray4.jpg" style="color: #ab0000; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="Artist Hiro Yamagata linked science
with art at his "Photon 999" exhibition, where multiple laser systems immersed the viewers in a moving-light show. (Courtesy: Hiro Yamagata)"><img alt="See the light" src="http://images.iop.org/objects/phw/world/thumb/23/5/27/ray4.jpg" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="See the light" /></a><br style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;" /><a class="thickbox" href="http://images.iop.org/objects/phw/world/23/5/27/ray4.jpg" style="color: #ab0000; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;" title="Artist Hiro Yamagata linked science
with art at his "Photon 999" exhibition, where multiple laser systems immersed the viewers in a moving-light show. (Courtesy: Hiro Yamagata)">See the light</a></div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Rock concerts by Pink Floyd and other groups were also known for their laser shows, though these are now tightly regulated because of safety issues. But spectacular works of laser art continue to be mounted, for example the outdoor installations "Photon 999" (2001) and "Quantum Field X3" (2004) created at the Guggenheim Museum in Bilbao, Spain, by Japanese-born artist Hiro Yamagata, and the collaborative Hope Street Project, installed in 2008. This linked together two major cathedrals in Liverpool, UK, by intense laser beams – one highly visible green beam and also several invisible ones – that carried voices and generated ambient music to be heard at both sites.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">After 50 years, striking laser displays can still evoke awe, and lasers still carry a science-fiction-ish aura, as demonstrated by hobbyists who fashion mock ray-guns from blue laser diodes. Unfortunately, the mystique also attaches itself to products such as the so-called quantum healing cold laser, whose grandiose title uses scientific jargon to impress would-be customers. Its maker, Scalar Wave Lasers, asserts that its 16 red and infrared laser diodes provide substantial health and rejuvenation benefits. Even the word "laser" has been appropriated to suggest speed or power, such as for the popular Laser class of small sailboats and the Chrysler and Plymouth Laser sports cars sold from the mid-1980s to the early 1990s.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">The laser's distinctive properties have also become enshrined in language. A search of the massive Lexis Nexis Academic research database (which encompasses thousands of newspapers, wire services, broadcast transcripts and other sources) covering the last two years yields nearly 400 references to phrases such as "laser-like focus" (appearing often enough to be a cliché), "laser-like precision", "laser-like clarity" and, in a description of Russian Prime Minister Vladimir Putin expressing his displeasure with a particular businessman, "laser-like stare".</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Lasers have significantly influenced both daily life and science. With masers, they have been part of research, including work outside laser science itself, that has contributed to more than 10 Nobel prizes, beginning with the 1964 physics prize awarded to Charles Townes with Alexsandr Prokhorov and Nicolay Basov for their fundamental work on lasers. Other related Nobel-prize research includes the invention of holography and the creation of the first Bose–Einstein condensate, which was made by laser cooling a cloud of atoms to ultra-low temperatures. Also, in dozens of applications from Raman spectroscopy to adaptive optics for astronomical telescopes, lasers continually contribute to how science is done. They are also essential for research in such emerging fields as quantum entanglement and slow light.</div><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">It is a tribute to the scientific imagination of the laser pioneers, as well as to the literary imagination of writers such as H G Wells, that an old science-fiction idea has come so fully to life. But not even imaginative writers foresaw that Maiman's invention would change the music business, create glowing art and operate in supermarkets across the globe. In the cultural impact of the laser, at least, truth really does outdo fiction.</div></div><div id="aboutTheAuthor" style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"> <h3 style="color: black; font-size: 15px; line-height: 20px; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">About the author</h3><div style="margin: 0px; padding-bottom: 10px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"><a href="mailto:physp@emory.edu" style="color: #ab0000; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;">Sidney Perkowitz</a> is Candler Professor of Physics at Emory University, US. Also a science writer, his latest book – <cite style="margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;">Hollywood Science: Movies, Science and the End of the World</cite> – has just been reissued in paperback by Columbia University Press</div></div></span></div><br />
<div><a href="http://physicsworld.com/cws/article/indepth/42421">http://physicsworld.com/cws/article/indepth/42421</a></div><div><br />
</div><div><br />
</div>Unknownnoreply@blogger.com4tag:blogger.com,1999:blog-1372933001761370251.post-79955282454443667472010-04-20T13:14:00.002+05:302010-04-20T13:19:07.336+05:30Short Term Course on NANOELECTRONICS<div style="text-align: center;"><span class="Apple-style-span" style="color: blue;"><b><span class="Apple-style-span" style="font-size: x-large;"><span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;">AICTE SPONSORED</span></span></b></span></div><div style="text-align: center;"><b><span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"><br />
</span></b></div><div style="text-align: center;"><b><span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"><span class="Apple-style-span" style="color: red;">STAFF DEVELOPMENT PROGRAMME</span></span></b></div><div style="text-align: center;"><b><span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"><span class="Apple-style-span" style="color: red;">ON</span></span></b></div><div style="text-align: center;"><br />
</div><div style="text-align: center;"><span class="Apple-style-span" style="color: #274e13;"><b><span class="Apple-style-span" style="font-size: x-large;"><span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;">NANOELECTRONICS</span></span></b></span></div><div style="text-align: center;"><br />
</div><div style="text-align: center;"><span class="Apple-style-span" style="color: blue;"><span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"><b>10th to 21st May, 2010</b></span></span></div><div style="text-align: center;"><br />
</div><br />
<div style="text-align: center;"><span class="Apple-style-span" style="color: purple;">Organized by</span></div><div style="text-align: center;"><span class="Apple-style-span" style="color: purple;">DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING & </span><br />
<span class="Apple-style-span" style="color: purple;">CENTRE FOR CONTINUING EDUCATION</span></div><div style="text-align: center;"><span class="Apple-style-span" style="color: purple;">NATIONAL INSTITUTE OF TECHNOLOGY CALICUT</span></div><div style="text-align: center;"><span class="Apple-style-span" style="color: purple;">(A Deemed University under Govt.of India)</span></div><div style="text-align: center;"><span class="Apple-style-span" style="color: purple;">NIT Campus P.O. CALICUT, 673601.Kerala, India</span></div><div style="text-align: justify;"><br />
</div><br />
<div style="text-align: justify;"><b>Preamble</b></div><div style="text-align: justify;"><b><br />
</b></div><div style="text-align: justify;">The ever-increasing demand for higher processing speeds inevitably leads to an increased density of gates in an IC. Coupled with the increasing switching speed is the problem of increased power dissipation. Also, the conventional MOS device, which is the workhorse of VLSI technology, behaves different for smaller dimensions compared to its larger cousin. New design constraints come up dictated by increased gate leakage, tunneling and the interconnects. These have led to different device configurations and geometries. Multiple gate MOSFETs, vertical MOSFETs, FinFETs, Silicon-on-insulator, strained Si devices are some of the widely used extensions of the basic MOSFET. An alternate strategy is to employ tunneling to obtain large speeds. The resonant tunneling devices have tunneling at their very roots. Such devices are possible due to heterostructures. Si- Ge heterostructures and those formed by GaAs and its alloys are widely employed for high speeds. Yet another alternative is to do away with semiconductors and use insulators and metals. This strategy is employed in the single electron transistor. Many other technologies based on organic molecules particularly the bucky balls have been proposed. The tremendous potential of the field of nanoelectronics is expected to change the way we do computing and signal processing in a fundamentally different and profound manner. </div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Course Content</b></div><div style="text-align: justify;"></div><ul><li>Design methodology in ultra deep sub-micron regime</li>
<li>CMOS Scaling: Issues for sub 45 nm node</li>
</ul><br />
<div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Technologies</b></div><div style="text-align: justify;"></div><ul><li>Alternate device structures</li>
<li>Heterostructures</li>
<li>Resonant tunneling devices</li>
<li>Single electron transistors</li>
<li>Carbon Nano Tube FET</li>
</ul><br />
<div style="text-align: justify;"><b>Speakers</b></div><div style="text-align: justify;"></div><ul><li>Eminent persons from academia and industry</li>
</ul><br />
<div style="text-align: justify;"><b>Eligibility</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The course is open to teachers from AICTE approved Engineering Colleges/Polytechnics with a basic qualification in electronics.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Registration Fee</b></div><div style="text-align: justify;"><b><br />
</b></div><div style="text-align: justify;">Registration fee is Rs. 500 (is refundable only if not selected/ selected and participated). The registration fee shall be paid through a crossed demand draft, drawn in favor of “Coordinator, Nano electronics” payable at State Bank of India, REC Chathamangalam Branch (Code 2207). </div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Travel </b></div><div style="text-align: justify;"><b><br />
</b></div><div style="text-align: justify;">Participants will be reimbursed travel expenses limited to sleeper class train fare by the shortest route as per NIT Calicut norms.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Fore more info <a href="http://www.nitc.ac.in/nitc/seminars/brochure_Nano_2010_NITC.pdf"><b><span class="Apple-style-span" style="color: #cc0000;">click here</span></b></a></div><div style="text-align: justify;"><a href="http://www.nitc.ac.in/nitc/index.jsp">www.nitc.ac.in</a></div><div style="text-align: justify;"><br />
</div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-1372933001761370251.post-61692163356780639352010-03-26T12:04:00.000+05:302010-03-26T12:04:59.323+05:30Embedded System:- Video Lecture<div class="separator" style="clear: both; text-align: center;"><a href="http://www.minnay.com/images/scott.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="298" src="http://www.minnay.com/images/scott.png" width="320" /></a></div><div><span class="Apple-style-span" style="color: #073763;"><br />
</span></div><span class="Apple-style-span" style="color: #073763;"><br />
</span><div class="tabcont" id="first" style="background-attachment: initial; background-clip: initial; background-color: #fafafa; background-image: initial; background-origin: initial; clear: both; display: block; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 2px; padding-left: 2px; padding-right: 2px; padding-top: 2px;"><ol><li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif; font-size: medium;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/1" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="color: #073763;">Introduction</span></a></span></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/2" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Embedded Hardware</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/3" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">PIC: Instruction Set</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/4" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">PIC Peripherals On Chip</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/5" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">ARM Processor</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/6" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">More ARM Instructions</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/7" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">ARM: Interrupt Processing</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/8" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Digital Signal Processors</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/9" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">More on DSP Processors</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/10" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">System On Chip (SOC)</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/11" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Memory</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/12" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Memory Organization</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/13" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Virtual Memory and Memory Management Unit</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/14" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Bus Structure - I</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/15" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Bus Structure - II</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/16" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Bus Structure - 3; Serial Interfaces</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/17" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Serial Interfaces</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/18" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Power Aware Architecture</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/19" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Software for Embedded Systems</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/20" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Fundamentals of Embedded Operating Systems</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/21" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Scheduling Policies</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/22" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Resource Management</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/23" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Embedded - OS</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/24" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Networked Embedded System</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/25" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Networked Embedded Systems - II</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/26" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Network Embedded System - III</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/27" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Network Embedded System - IV</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/28" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Designing Embedded Systems</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/29" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Designing Embedded Systems - II</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/30" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Designing Embedded Systems - III</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/31" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Designing Embedded Systems - IV</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/32" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Designing Embedded Systems - V</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/33" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Platform Based Design</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/34" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Compilers for Embedded Systems</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/35" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Developing Embedded Systems</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/36" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Building Dependable Embedded Systems</span></span></span></a></li>
<li style="font: normal normal bold 11px/normal arial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 3px; padding-left: 3px; padding-right: 3px; padding-top: 3px;"><a href="http://freevideolectures.com/Course/2341/Embedded-Systems/37" style="outline-color: initial; outline-style: initial; outline-width: 0px; text-decoration: none;"><span class="Apple-style-span" style="font-size: medium;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="color: #073763;">Pervasive & Ubiquitous Computing</span></span></span></a></li>
</ol><div><span class="Apple-style-span" style="color: #3395c1; font-family: arial; font-size: small;"><span class="Apple-style-span" style="font-size: 11px;"><b><br />
</b></span></span></div></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-1372933001761370251.post-65127425863253212852010-03-24T10:42:00.001+05:302010-03-24T14:23:13.894+05:308051<div style="text-align: center;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><b>Introduction</b></span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.cpu-world.com/CPUs/8051/L_Intel-P8051AH%20(refl).jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="101" src="http://www.cpu-world.com/CPUs/8051/L_Intel-P8051AH%20(refl).jpg" width="200" /></a></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><br />
<div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">The Intel 8051 is a Harvard architecture, single chip microcontroller (µC) which was developed by Intel in 1980 for use in embedded systems. Intel's original versions were popular in the 1980s and early 1990s, but has today largely been superseded by a vast range of faster and/or functionally enhanced 8051-compatible devices manufactured by more than 20 independent manufacturers including Atmel, Infineon Technologies (formerly Siemens AG), Maxim Integrated Products (via its Dallas Semiconductor subsidiary), NXP (formerly Philips Semiconductor), Nuvoton (formerly Winbond), ST Microelectronics, Silicon Laboratories (formerly Cygnal), Texas Instruments and Cypress Semiconductor. Intel's official designation for the 8051 family of µCs is MCS 51.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Intel's original 8051 family was developed using NMOS technology, but later versions, identified by a letter C in their name (e.g., 80C51) used CMOS technology and were less power-hungry than their NMOS predecessors. This made them more suitable for battery-powered devices.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><b>Important features and applications</b></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://upload.wikimedia.org/wikipedia/commons/thumb/c/cd/Intel_8051_arch.svg/545px-Intel_8051_arch.svg.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://upload.wikimedia.org/wikipedia/commons/thumb/c/cd/Intel_8051_arch.svg/545px-Intel_8051_arch.svg.png" /></a></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"></div><ul><li><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">It provides many functions (CPU, RAM, ROM, I/O, interrupt logic, timer, etc.) in a single package</span></li>
<li><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">8-bit ALU, Accumulator and 8-bit Registers; hence it is an 8-bit microcontroller</span></li>
<li><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">8-bit data bus - It can access 8 bits of data in one operation</span></li>
<li><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">16-bit address bus - It can access 216 memory locations - 64 KB (65536 locations) each of RAM and ROM</span></li>
<li><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">On-chip RAM - 128 bytes (data memory)</span></li>
<li><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">On-chip ROM - 4 kByte (program memory)</span></li>
<li><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Four byte bi-directional input/output port</span></li>
<li><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">UART (serial port)</span></li>
<li><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Two 16-bit Counter/timers</span></li>
<li><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Two-level interrupt priority</span></li>
<li><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Power saving mode</span></li>
</ul><br />
<div class="separator" style="clear: both; text-align: center;"><a href="http://www.computer-solutions.co.uk/info/images/8051%20DIP%2040.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.computer-solutions.co.uk/info/images/8051%20DIP%2040.PNG" /></a></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">A particularly useful feature of the 8051 core is the inclusion of a boolean processing engine which allows bit-level boolean logic operations to be carried out directly and efficiently on internal registers and RAM. This feature helped cement the 8051's popularity in industrial control applications. Another valued feature is that it has four separate register sets, which can be used to greatly reduce interrupt latency compared to the more common method of storing interrupt context on a stack.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">The 8051 UARTs make it simple to use the chip as a serial communications interface. External pins can be configured to connect to internal shift registers in a variety of ways, and the internal timers can also be used, allowing serial communications in a number of modes, both synchronous and asynchronous. Some modes allow communications with no external components. A mode compatible with an RS-485 multi-point communications environment is achievable, but the 8051's real strength is fitting in with existing ad-hoc protocols (e.g., when controlling serial-controlled devices).</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Once a UART, and a timer if necessary, have been configured, the programmer needs only to write a simple interrupt routine to refill the send shift register whenever the last bit is shifted out by the UART and/or empty the full receive shift register (copy the data somewhere else). The main program then performs serial reads and writes simply by reading and writing 8-bit data to stacks.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">8051 based microcontrollers typically include one or two UARTs, two or three timers, 128 or 256 bytes of internal data RAM (16 bytes of which are bit-addressable), up to 128 bytes of I/O, 512 bytes to 64 kB of internal program memory, and sometimes a quantity of extended data RAM (ERAM) located in the external data space. The original 8051 core ran at 12 clock cycles per machine cycle, with most instructions executing in one or two machine cycles. With a 12 MHz clock frequency, the 8051 could thus execute 1 million one-cycle instructions per second or 500,000 two-cycle instructions per second. Enhanced 8051 cores are now commonly used which run at six, four, two, or even one clock per machine cycle, and have clock frequencies of up to 100 MHz, and are thus capable of an even greater number of instructions per second. All SILabs, some Dallas and a few Atmel devices have single cycle cores.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Common features included in modern 8051 based microcontrollers include built-in reset timers with brown-out detection, on-chip oscillators, self-programmable Flash ROM program memory, bootloader code in ROM, EEPROM non-volatile data storage, I²C, SPI, and USB host interfaces, CAN or LIN bus, PWM generators, analog comparators, A/D and D/A converters, RTCs, extra counters and timers, in-circuit debugging facilities, more interrupt sources, and extra power saving modes.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"></span></div><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"></span><br />
<span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><div style="text-align: center;"><b>Types of Memory</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The 8051 has three very general types of memory. To effectively program the 8051 it is necessary to have a basic understanding of these memory types.</div><div style="text-align: justify;">The memory types are illustrated in the following graphic. They are: On-Chip Memory, External Code Memory, and External RAM.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">On-Chip Memory refers to any memory (Code, RAM, or other) that physically exists on the microcontroller itself. On-chip memory can be of several types, but we'll get into that shortly.</div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.8052.com/images/memtypes.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.8052.com/images/memtypes.gif" /></a></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">External Code Memory is code (or program) memory that resides off-chip. This is often in the form of an external EPROM.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">External RAM is RAM memory that resides off-chip. This is often in the form of standard static RAM or flash RAM.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Code Memory</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Code memory is the memory that holds the actual 8051 program that is to be run. This memory is limited to 64K and comes in many shapes and sizes: Code memory may be found on-chip, either burned into the microcontroller as ROM or EPROM. Code may also be stored completely off-chip in an external ROM or, more commonly, an external EPROM. Flash RAM is also another popular method of storing a program. Various combinations of these memory types may also be used--that is to say, it is possible to have 4K of code memory on-chip and 64k of code memory off-chip in an EPROM.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">When the program is stored on-chip the 64K maximum is often reduced to 4k, 8k, or 16k. This varies depending on the version of the chip that is being used. Each version offers specific capabilities and one of the distinguishing factors from chip to chip is how much ROM/EPROM space the chip has.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">However, code memory is most commonly implemented as off-chip EPROM. This is especially true in low-cost development systems and in systems developed by students.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Programming Tip: Since code memory is restricted to 64K, 8051 programs are limited to 64K. Some assemblers and compilers offer ways to get around this limit when used with specially wired hardware. However, without such special compilers and hardware, programs are limited to 64K.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>External RAM</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">As an obvious opposite of Internal RAM, the 8051 also supports what is called External RAM.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">As the name suggests, External RAM is any random access memory which is found off-chip. Since the memory is off-chip it is not as flexible in terms of accessing, and is also slower. For example, to increment an Internal RAM location by 1 requires only 1 instruction and 1 instruction cycle. To increment a 1-byte value stored in External RAM requires 4 instructions and 7 instruction cycles. In this case, external memory is 7 times slower!</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">What External RAM loses in speed and flexibility it gains in quantity. While Internal RAM is limited to 128 bytes (256 bytes with an 8052), the 8051 supports External RAM up to 64K.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Programming Tip: The 8051 may only address 64k of RAM. To expand RAM beyond this limit requires programming and hardware tricks. You may have to do this "by hand" since many compilers and assemblers, while providing support for programs in excess of 64k, do not support more than 64k of RAM. This is rather strange since it has been my experience that programs can usually fit in 64k but often RAM is what is lacking. Thus if you need more than 64k of RAM, check to see if your compiler supports it-- but if it doesn't, be prepared to do it by hand.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>On-Chip Memory</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">As mentioned at the beginning of this chapter, the 8051 includes a certain amount of on-chip memory. On-chip memory is really one of two types: Internal RAM and Special Function Register (SFR) memory. The layout of the 8051's internal memory is presented in the following memory map:</div><div style="text-align: justify;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.8052.com/images/8051map.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.8052.com/images/8051map.gif" /></a></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">As is illustrated in this map, the 8051 has a bank of 128 bytes of Internal RAM. This Internal RAM is found on-chip on the 8051 so it is the fastest RAM available, and it is also the most flexible in terms of reading, writing, and modifying its contents. Internal RAM is volatile, so when the 8051 is reset this memory is cleared.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The 128 bytes of internal ram is subdivided as shown on the memory map. The first 8 bytes (00h - 07h) are "register bank 0". By manipulating certain SFRs, a program may choose to use register banks 1, 2, or 3. These alternative register banks are located in internal RAM in addresses 08h through 1Fh. We'll discuss "register banks" more in a later chapter. For now it is sufficient to know that they "live" and are part of internal RAM.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Bit Memory also lives and is part of internal RAM. We'll talk more about bit memory very shortly, but for now just keep in mind that bit memory actually resides in internal RAM, from addresses 20h through 2Fh.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The 80 bytes remaining of Internal RAM, from addresses 30h through 7Fh, may be used by user variables that need to be accessed frequently or at high-speed. This area is also utilized by the microcontroller as a storage area for the operating stack. This fact severely limits the 8051s stack since, as illustrated in the memory map, the area reserved for the stack is only 80 bytes--and usually it is less since this 80 bytes has to be shared between the stack and user variables.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Register Banks</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The 8051 uses 8 "R" registers which are used in many of its instructions. These "R" registers are numbered from 0 through 7 (R0, R1, R2, R3, R4, R5, R6, and R7). These registers are generally used to assist in manipulating values and moving data from one memory location to another. For example, to add the value of R4 to the Accumulator, we would execute the following instruction:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">ADD A,R4</div><div style="text-align: justify;">Thus if the Accumulator (A) contained the value 6 and R4 contained the value 3, the Accumulator would contain the value 9 after this instruction was executed.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">However, as the memory map shows, the "R" Register R4 is really part of Internal RAM. Specifically, R4 is address 04h. This can be see in the bright green section of the memory map. Thus the above instruction accomplishes the same thing as the following operation:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">ADD A,04h</div><div style="text-align: justify;">This instruction adds the value found in Internal RAM address 04h to the value of the Accumulator, leaving the result in the Accumulator. Since R4 is really Internal RAM 04h, the above instruction effectively accomplished the same thing.</div><div style="text-align: justify;">But watch out! As the memory map shows, the 8051 has four distinct register banks. When the 8051 is first booted up, register bank 0 (addresses 00h through 07h) is used by default. However, your program may instruct the 8051 to use one of the alternate register banks; i.e., register banks 1, 2, or 3. In this case, R4 will no longer be the same as Internal RAM address 04h. For example, if your program instructs the 8051 to use register bank 3, "R" register R4 will now be synonomous with Internal RAM address 1Ch.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The concept of register banks adds a great level of flexibility to the 8051, especially when dealing with interrupts (we'll talk about interrupts later). However, always remember that the register banks really reside in the first 32 bytes of Internal RAM.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Programming Tip: If you only use the first register bank (i.e. bank 0), you may use Internal RAM locations 08h through 1Fh for your own use. But if you plan to use register banks 1, 2, or 3, be very careful about using addresses below 20h as you may end up overwriting the value of your "R" registers!</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Bit Memory</b></div><div style="text-align: justify;">The 8051, being a communications-oriented microcontroller, gives the user the ability to access a number of bit variables. These variables may be either 1 or 0.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">There are 128 bit variables available to the user, numberd 00h through 7Fh. The user may make use of these variables with commands such as SETB and CLR. For example, to set bit number 24 (hex) to 1 you would execute the instruction:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">SETB 24h</div><div style="text-align: justify;">It is important to note that Bit Memory is really a part of Internal RAM. In fact, the 128 bit variables occupy the 16 bytes of Internal RAM from 20h through 2Fh. Thus, if you write the value FFh to Internal RAM address 20h youve effectively set bits 00h through 07h. That is to say that:</div><div style="text-align: justify;">MOV 20h,#0FFh</div><div style="text-align: justify;">is equivalent to:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">SETB 00h</div><div style="text-align: justify;">SETB 01h</div><div style="text-align: justify;">SETB 02h</div><div style="text-align: justify;">SETB 03h</div><div style="text-align: justify;">SETB 04h</div><div style="text-align: justify;">SETB 05h</div><div style="text-align: justify;">SETB 06h</div><div style="text-align: justify;">SETB 07h</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">As illustrated above, bit memory isnt really a new type of memory. Its really just a subset of Internal RAM. But since the 8051 provides special instructions to access these 16 bytes of memory on a bit by bit basis it is useful to think of it as a separate type of memory. However, always keep in mind that it is just a subset of Internal RAM--and that operations performed on Internal RAM can change the values of the bit variables.</div><div style="text-align: justify;">Programming Tip: If your program does not use bit variables, you may use Internal RAM locations 20h through 2Fh for your own use. But if you plan to use bit variables, be very careful about using addresses from 20h through 2Fh as you may end up overwriting the value of your bits!</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Bit variables 00h through 7Fh are for user-defined functions in their programs. However, bit variables 80h and above are actually used to access certain SFRs on a bit-by-bit basis. For example, if output lines P0.0 through P0.7 are all clear (0) and you want to turn on the P0.0 output line you may either execute:</div><div style="text-align: justify;">MOV P0,#01h</div><div style="text-align: justify;">or you may execute:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">SETB 80h</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Both these instructions accomplish the same thing. However, using the SETB command will turn on the P0.0 line without effecting the status of any of the other P0 output lines. The MOV command effectively turns off all the other output lines which, in some cases, may not be acceptable.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Programming Tip: By default, the 8051 initializes the Stack Pointer (SP) to 07h when the microcontroller is booted. This means that the stack will start at address 08h and expand upwards. If you will be using the alternate register banks (banks 1, 2 or 3) you must initialize the stack pointer to an address above the highest register bank you will be using, otherwise the stack will overwrite your alternate register banks. Similarly, if you will be using bit variables it is usually a good idea to initialize the stack pointer to some value greater than 2Fh to guarantee that your bit variables are protected from the stack.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Special Function Register (SFR) Memory</b></div><div style="text-align: justify;"><b><br />
</b></div><div style="text-align: justify;">Special Function Registers (SFRs) are areas of memory that control specific functionality of the 8051 processor. For example, four SFRs permit access to the 8051s 32 input/output lines. Another SFR allows a program to read or write to the 8051s serial port. Other SFRs allow the user to set the serial baud rate, control and access timers, and configure the 8051s interrupt system.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">When programming, SFRs have the illusion of being Internal Memory. For example, if you want to write the value "1" to Internal RAM location 50 hex you would execute the instruction:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">MOV 50h,#01h</div><div style="text-align: justify;">Similarly, if you want to write the value "1" to the 8051s serial port you would write this value to the SBUF SFR, which has an SFR address of 99 Hex. Thus, to write the value "1" to the serial port you would execute the instruction:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">MOV 99h,#01h</div><div style="text-align: justify;">As you can see, it appears that the SFR is part of Internal Memory. This is not the case. When using this method of memory access (its called direct address), any instruction that has an address of 00h through 7Fh refers to an Internal RAM memory address; any instruction with an address of 80h through FFh refers to an SFR control register.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Programming Tip: SFRs are used to control the way the 8051 functions. Each SFR has a specific purpose and format which will be discussed later. Not all addresses above 80h are assigned to SFRs. However, this area may NOT be used as additional RAM memory even if a given address has not been assigned to an SFR.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"></div><div style="text-align: center;"><b>Special Function Registers</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>What Are SFRs?</b></div><div style="text-align: justify;"><b><br />
</b></div><div style="text-align: justify;">The 8051 is a flexible microcontroller with a relatively large number of modes of operations. Your program may inspect and/or change the operating mode of the 8051 by manipulating the values of the 8051's Special Function Registers (SFRs).</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">SFRs are accessed as if they were normal Internal RAM. The only difference is that Internal RAM is from address 00h through 7Fh whereas SFR registers exist in the address range of 80h through FFh.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Each SFR has an address (80h through FFh) and a name. The following chart provides a graphical presentation of the 8051's SFRs, their names, and their address.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">As you can see, although the address range of 80h through FFh offer 128 possible addresses, there are only 21 SFRs in a standard 8051. All other addresses in the SFR range (80h through FFh) are considered invalid. Writing to or reading from these registers may produce undefined values or behavior.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Programming Tip: It is recommended that you not read or write to SFR addresses that have not been assigned to an SFR. Doing so may provoke undefined behavior and may cause your program to be incompatible with other 8051-derivatives that use the given SFR for some other purpose.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>SFR Types</b></div><div style="text-align: justify;">As mentioned in the chart itself, the SFRs that have a blue background are SFRs related to the I/O ports. The 8051 has four I/O ports of 8 bits, for a total of 32 I/O lines. Whether a given I/O line is high or low and the value read from the line are controlled by the SFRs in green.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The SFRs with yellow backgrouns are SFRs which in some way control the operation or the configuration of some aspect of the 8051. For example, TCON controls the timers, SCON controls the serial port.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The remaining SFRs, with green backgrounds, are "other SFRs." These SFRs can be thought of as auxillary SFRs in the sense that they don't directly configure the 8051 but obviously the 8051 cannot operate without them. For example, once the serial port has been configured using SCON, the program may read or write to the serial port using the SBUF register.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Programming Tip: The SFRs whose names appear in red in the chart above are SFRs that may be accessed via bit operations (i.e., using the SETB and CLR instructions). The other SFRs cannot be accessed using bit operations. As you can see, all SFRs that whose addresses are divisible by 8 can be accessed with bit operations.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>SFR Descriptions</b></div><div style="text-align: justify;">This section will endeavor to quickly overview each of the standard SFRs found in the above SFR chart map. It is not the intention of this section to fully explain the functionality of each SFR--this information will be covered in separate chapters of the tutorial. This section is to just give you a general idea of what each SFR does.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b><span class="Apple-style-span" style="color: blue;">P0 (Port 0, Address 80h, Bit-Addressable):</span></b> This is input/output port 0. Each bit of this SFR corresponds to one of the pins on the microcontroller. For example, bit 0 of port 0 is pin P0.0, bit 7 is pin P0.7. Writing a value of 1 to a bit of this SFR will send a high level on the corresponding I/O pin whereas a value of 0 will bring it to a low level.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Programming Tip: While the 8051 has four I/O port (P0, P1, P2, and P3), if your hardware uses external RAM or external code memory (i.e., your program is stored in an external ROM or EPROM chip or if you are using external RAM chips) you may not use P0 or P2. This is because the 8051 uses ports P0 and P2 to address the external memory. Thus if you are using external RAM or code memory you may only use ports P1 and P3 for your own use.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b><span class="Apple-style-span" style="color: blue;">SP (Stack Pointer, Address 81h):</span> </b>This is the stack pointer of the microcontroller. This SFR indicates where the next value to be taken from the stack will be read from in Internal RAM. If you push a value onto the stack, the value will be written to the address of SP + 1. That is to say, if SP holds the value 07h, a PUSH instruction will push the value onto the stack at address 08h. This SFR is modified by all instructions which modify the stack, such as PUSH, POP, LCALL, RET, RETI, and whenever interrupts are provoked by the microcontroller.</div><div style="text-align: justify;">Programming Tip: The SP SFR, on startup, is initialized to 07h. This means the stack will start at 08h and start expanding upward in internal RAM. Since alternate register banks 1, 2, and 3 as well as the user bit variables occupy internal RAM from addresses 08h through 2Fh, it is necessary to initialize SP in your program to some other value if you will be using the alternate register banks and/or bit memory. It's not a bad idea to initialize SP to 2Fh as the first instruction of every one of your programs unless you are 100% sure you will not be using the register banks and bit variables.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b><span class="Apple-style-span" style="color: blue;">DPL/DPH (Data Pointer Low/High, Addresses 82h/83h):</span></b> The SFRs DPL and DPH work together to represent a 16-bit value called the Data Pointer. The data pointer is used in operations regarding external RAM and some instructions involving code memory. Since it is an unsigned two-byte integer value, it can represent values from 0000h to FFFFh (0 through 65,535 decimal).</div><div style="text-align: justify;">Programming Tip: DPTR is really DPH and DPL taken together as a 16-bit value. In reality, you almost always have to deal with DPTR one byte at a time. For example, to push DPTR onto the stack you must first push DPL and then DPH. You can't simply plush DPTR onto the stack. Additionally, there is an instruction to "increment DPTR." When you execute this instruction, the two bytes are operated upon as a 16-bit value. However, there is no instruction that decrements DPTR. If you wish to decrement the value of DPTR, you must write your own code to do so.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b><span class="Apple-style-span" style="color: blue;">PCON (Power Control, Addresses 87h):</span></b> The Power Control SFR is used to control the 8051's power control modes. Certain operation modes of the 8051 allow the 8051 to go into a type of "sleep" mode which requires much less power. These modes of operation are controlled through PCON. Additionally, one of the bits in PCON is used to double the effective baud rate of the 8051's serial port.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span class="Apple-style-span" style="color: blue;"><b>TCON (Timer Control, Addresses 88h, Bit-Addressable): </b></span>The Timer Control SFR is used to configure and modify the way in which the 8051's two timers operate. This SFR controls whether each of the two timers is running or stopped and contains a flag to indicate that each timer has overflowed. Additionally, some non-timer related bits are located in the TCON SFR. These bits are used to configure the way in which the external interrupts are activated and also contain the external interrupt flags which are set when an external interrupt has occured.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b><span class="Apple-style-span" style="color: blue;">TMOD (Timer Mode, Addresses 89h):</span></b> The Timer Mode SFR is used to configure the mode of operation of each of the two timers. Using this SFR your program may configure each timer to be a 16-bit timer, an 8-bit autoreload timer, a 13-bit timer, or two separate timers. Additionally, you may configure the timers to only count when an external pin is activated or to count "events" that are indicated on an external pin.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">TL0/TH0 (Timer 0 Low/High, Addresses 8Ah/8Ch): These two SFRs, taken together, represent timer 0. Their exact behavior depends on how the timer is configured in the TMOD SFR; however, these timers always count up. What is configurable is how and when they increment in value.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">TL1/TH1 (Timer 1 Low/High, Addresses 8Bh/8Dh): These two SFRs, taken together, represent timer 1. Their exact behavior depends on how the timer is configured in the TMOD SFR; however, these timers always count up. What is configurable is how and when they increment in value.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b><span class="Apple-style-span" style="color: blue;">P1 (Port 1, Address 90h, Bit-Addressable):</span></b> This is input/output port 1. Each bit of this SFR corresponds to one of the pins on the microcontroller. For example, bit 0 of port 1 is pin P1.0, bit 7 is pin P1.7. Writing a value of 1 to a bit of this SFR will send a high level on the corresponding I/O pin whereas a value of 0 will bring it to a low level.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b><span class="Apple-style-span" style="color: blue;">SCON (Serial Control, Addresses 98h, Bit-Addressable):</span></b> The Serial Control SFR is used to configure the behavior of the 8051's on-board serial port. This SFR controls the baud rate of the serial port, whether the serial port is activated to receive data, and also contains flags that are set when a byte is successfully sent or received.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Programming Tip: To use the 8051's on-board serial port, it is generally necessary to initialize the following SFRs: SCON, TCON, and TMOD. This is because SCON controls the serial port. However, in most cases the program will wish to use one of the timers to establish the serial port's baud rate. In this case, it is necessary to configure timer 1 by initializing TCON and TMOD.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span class="Apple-style-span" style="color: blue;"><b>SBUF (Serial Control, Addresses 99h):</b></span> The Serial Buffer SFR is used to send and receive data via the on-board serial port. Any value written to SBUF will be sent out the serial port's TXD pin. Likewise, any value which the 8051 receives via the serial port's RXD pin will be delivered to the user program via SBUF. In other words, SBUF serves as the output port when written to and as an input port when read from.</div><div style="text-align: justify;">P2 (Port 2, Address A0h, Bit-Addressable): This is input/output port 2. Each bit of this SFR corresponds to one of the pins on the microcontroller. For example, bit 0 of port 2 is pin P2.0, bit 7 is pin P2.7. Writing a value of 1 to a bit of this SFR will send a high level on the corresponding I/O pin whereas a value of 0 will bring it to a low level.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Programming Tip: While the 8051 has four I/O port (P0, P1, P2, and P3), if your hardware uses external RAM or external code memory (i.e., your program is stored in an external ROM or EPROM chip or if you are using external RAM chips) you may not use P0 or P2. This is because the 8051 uses ports P0 and P2 to address the external memory. Thus if you are using external RAM or code memory you may only use ports P1 and P3 for your own use.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b><span class="Apple-style-span" style="color: blue;">IE (Interrupt Enable, Addresses A8h):</span></b> The Interrupt Enable SFR is used to enable and disable specific interrupts. The low 7 bits of the SFR are used to enable/disable the specific interrupts, where as the highest bit is used to enable or disable ALL interrupts. Thus, if the high bit of IE is 0 all interrupts are disabled regardless of whether an individual interrupt is enabled by setting a lower bit.</div><div style="text-align: justify;">P3 (Port 3, Address B0h, Bit-Addressable): This is input/output port 3. Each bit of this SFR corresponds to one of the pins on the microcontroller. For example, bit 0 of port 3 is pin P3.0, bit 7 is pin P3.7. Writing a value of 1 to a bit of this SFR will send a high level on the corresponding I/O pin whereas a value of 0 will bring it to a low level.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b><span class="Apple-style-span" style="color: blue;">IP (Interrupt Priority, Addresses B8h, Bit-Addressable):</span></b> The Interrupt Priority SFR is used to specify the relative priority of each interrupt. On the 8051, an interrupt may either be of low (0) priority or high (1) priority. An interrupt may only interrupt interrupts of lower priority. For example, if we configure the 8051 so that all interrupts are of low priority except the serial interrupt, the serial interrupt will always be able to interrupt the system, even if another interrupt is currently executing. However, if a serial interrupt is executing no other interrupt will be able to interrupt the serial interrupt routine since the serial interrupt routine has the highest priority.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b><span class="Apple-style-span" style="color: blue;">PSW (Program Status Word, Addresses D0h, Bit-Addressable):</span></b> The Program Status Word is used to store a number of important bits that are set and cleared by 8051 instructions. The PSW SFR contains the carry flag, the auxiliary carry flag, the overflow flag, and the parity flag. Additionally, the PSW register contains the register bank select flags which are used to select which of the "R" register banks are currently selected.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Programming Tip: If you write an interrupt handler routine, it is a very good idea to always save the PSW SFR on the stack and restore it when your interrupt is complete. Many 8051 instructions modify the bits of PSW. If your interrupt routine does not guarantee that PSW is the same upon exit as it was upon entry, your program is bound to behave rather erradically and unpredictably--and it will be tricky to debug since the behavior will tend not to make any sense.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span class="Apple-style-span" style="color: blue;"><b>ACC (Accumulator, Addresses E0h, Bit-Addressable):</b></span> The Accumulator is one of the most-used SFRs on the 8051 since it is involved in so many instructions. The Accumulator resides as an SFR at E0h, which means the instruction MOV A,#20h is really the same as MOV E0h,#20h. However, it is a good idea to use the first method since it only requires two bytes whereas the second option requires three bytes.</div><div style="text-align: justify;">B (B Register, Addresses F0h, Bit-Addressable): The "B" register is used in two instructions: the multiply and divide operations. The B register is also commonly used by programmers as an auxiliary register to temporarily store values.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Other SFRs</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The chart above is a summary of all the SFRs that exist in a standard 8051. All derivative microcontrollers of the 8051 must support these basic SFRs in order to maintain compatability with the underlying MSCS51 standard.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">A common practice when semiconductor firms wish to develop a new 8051 derivative is to add additional SFRs to support new functions that exist in the new chip. For example, the Dallas Semiconductor DS80C320 is upwards compatible with the 8051. This means that any program that runs on a standard 8051 should run without modification on the DS80C320. This means that all the SFRs defined above also apply to the Dallas component.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">However, since the DS80C320 provides many new features that the standard 8051 does not, there must be some way to control and configure these new features. This is accomplished by adding additional SFRs to those listed here. For example, since the DS80C320 supports two serial ports (as opposed to just one on the 8051), the SFRs SBUF2 and SCON2 have been added. In addition to all the SFRs listed above, the DS80C320 also recognizes these two new SFRs as valid and uses their values to determine the mode of operation of the secondary serial port. Obviously, these new SFRs have been assigned to SFR addresses that were unused in the original 8051. In this manner, new 8051 derivative chips may be developed which will run existing 8051 programs.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Programming Tip: If you write a program that utilizes new SFRs that are specific to a given derivative chip and not included in the above SFR list, your program will not run properly on a standard 8051 where that SFR does not exist. Thus, only use non-standard SFRs if you are sure that your program wil only have to run on that specific microcontroller. Likewise, if you write code that uses non-standard SFRs and subsequently share it with a third-party, be sure to let that party know that your code is using non-standard SFRs to save them the headache of realizing that due to strange behavior at run-time.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"></div><div style="text-align: center;"><b>Basic Registers</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>The Accumulator</b></div><div style="text-align: justify;">If youve worked with any other assembly languages you will be familiar with the concept of an Accumulator register.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The Accumulator, as its name suggests, is used as a general register to accumulate the results of a large number of instructions. It can hold an 8-bit (1-byte) value and is the most versatile register the 8051 has due to the shear number of instructions that make use of the accumulator. More than half of the 8051s 255 instructions manipulate or use the accumulator in some way.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">For example, if you want to add the number 10 and 20, the resulting 30 will be stored in the Accumulator. Once you have a value in the Accumulator you may continue processing the value or you may store it in another register or in memory.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The "R" registers</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The "R" registers are a set of eight registers that are named R0, R1, etc. up to and including R7.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">These registers are used as auxillary registers in many operations. To continue with the above example, perhaps you are adding 10 and 20. The original number 10 may be stored in the Accumulator whereas the value 20 may be stored in, say, register R4. To process the addition you would execute the command:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">ADD A,R4</div><div style="text-align: justify;">After executing this instruction the Accumulator will contain the value 30.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">You may think of the "R" registers as very important auxillary, or "helper", registers. The Accumulator alone would not be very useful if it were not for these "R" registers.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The "R" registers are also used to temporarily store values. For example, lets say you want to add the values in R1 and R2 together and then subtract the values of R3 and R4. One way to do this would be:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">MOV A,R3<span class="Apple-tab-span" style="white-space: pre;"> </span> ;Move the value of R3 into the accumulator</div><div style="text-align: justify;">ADD A,R4<span class="Apple-tab-span" style="white-space: pre;"> </span> ;Add the value of R4</div><div style="text-align: justify;">MOV R5,A<span class="Apple-tab-span" style="white-space: pre;"> </span> ;Store the resulting value temporarily in R5</div><div style="text-align: justify;">MOV A,R1<span class="Apple-tab-span" style="white-space: pre;"> </span> ;Move the value of R1 into the accumulator</div><div style="text-align: justify;">ADD A,R2<span class="Apple-tab-span" style="white-space: pre;"> </span> ;Add the value of R2</div><div style="text-align: justify;">SUBB A,R5<span class="Apple-tab-span" style="white-space: pre;"> </span>;Subtract the value of R5 (which now contains R3 + R4)</div><div style="text-align: justify;">As you can see, we used R5 to temporarily hold the sum of R3 and R4. Of course, this isnt the most efficient way to calculate (R1+R2) - (R3 +R4) but it does illustrate the use of the "R" registers as a way to store values temporarily.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>The "B" Register</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The "B" register is very similar to the Accumulator in the sense that it may hold an 8-bit (1-byte) value.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The "B" register is only used by two 8051 instructions: MUL AB and DIV AB. Thus, if you want to quickly and easily multiply or divide A by another number, you may store the other number in "B" and make use of these two instructions.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Aside from the MUL and DIV instructions, the "B" register is often used as yet another temporary storage register much like a ninth "R" register.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>The Data Pointer (DPTR)</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The Data Pointer (DPTR) is the 8051s only user-accessable 16-bit (2-byte) register. The Accumulator, "R" registers, and "B" register are all 1-byte values.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">DPTR, as the name suggests, is used to point to data. It is used by a number of commands which allow the 8051 to access external memory. When the 8051 accesses external memory it will access external memory at the address indicated by DPTR.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">While DPTR is most often used to point to data in external memory, many programmers often take advantge of the fact that its the only true 16-bit register available. It is often used to store 2-byte values which have nothing to do with memory locations.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>The Program Counter (PC)</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The Program Counter (PC) is a 2-byte address which tells the 8051 where the next instruction to execute is found in memory. When the 8051 is initialized PC always starts at 0000h and is incremented each time an instruction is executed. It is important to note that PC isnt always incremented by one. Since some instructions require 2 or 3 bytes the PC will be incremented by 2 or 3 in these cases.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The Program Counter is special in that there is no way to directly modify its value. That is to say, you cant do something like PC=2430h. On the other hand, if you execute LJMP 2430h youve effectively accomplished the same thing.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>The Stack Pointer (SP)</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The Stack Pointer, like all registers except DPTR and PC, may hold an 8-bit (1-byte) value. The Stack Pointer is used to indicate where the next value to be removed from the stack should be taken from.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">When you push a value onto the stack, the 8051 first increments the value of SP and then stores the value at the resulting memory location.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">When you pop a value off the stack, the 8051 returns the value from the memory location indicated by SP, and then decrements the value of SP.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">This order of operation is important. When the 8051 is initialized SP will be initialized to 07h. If you immediately push a value onto the stack, the value will be stored in Internal RAM address 08h. This makes sense taking into account what was mentioned two paragraphs above: First the 8051 will increment the value of SP (from 07h to 08h) and then will store the pushed value at that memory address (08h).</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">SP is modified directly by the 8051 by six instructions: PUSH, POP, ACALL, LCALL, RET, and RETI. It is also used intrinsically whenever an interrupt is triggered (more on interrupts later. Dont worry about them for now!)</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"></div><div style="text-align: center;"><b>Addressing Modes</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">An "addressing mode" refers to how you are addressing a given memory location. In summary, the addressing modes are as follows, with an example of each:</div><div style="text-align: justify;">Immediate Addressing<span class="Apple-tab-span" style="white-space: pre;"> </span>MOV A,#20h</div><div style="text-align: justify;">Direct Addressing<span class="Apple-tab-span" style="white-space: pre;"> </span>MOV A,30h</div><div style="text-align: justify;">Indirect Addressing<span class="Apple-tab-span" style="white-space: pre;"> </span>MOV A,@R0</div><div style="text-align: justify;">External Direct<span class="Apple-tab-span" style="white-space: pre;"> </span>MOVX A,@DPTR</div><div style="text-align: justify;">Code Indirect<span class="Apple-tab-span" style="white-space: pre;"> </span>MOVC A,@A+DPTR</div><div style="text-align: justify;">Each of these addressing modes provides important flexibility.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Immediate Addressing</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Immediate addressing is so-named because the value to be stored in memory immediately follows the operation code in memory. That is to say, the instruction itself dictates what value will be stored in memory.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">For example, the instruction:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">MOV A,#20h</div><div style="text-align: justify;">This instruction uses Immediate Addressing because the Accumulator will be loaded with the value that immediately follows; in this case 20 (hexidecimal).</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Immediate addressing is very fast since the value to be loaded is included in the instruction. However, since the value to be loaded is fixed at compile-time it is not very flexible.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Direct Addressing</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Direct addressing is so-named because the value to be stored in memory is obtained by directly retrieving it from another memory location. For example:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">MOV A,30h</div><div style="text-align: justify;">This instruction will read the data out of Internal RAM address 30 (hexidecimal) and store it in the Accumulator.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Direct addressing is generally fast since, although the value to be loaded isnt included in the instruction, it is quickly accessable since it is stored in the 8051s Internal RAM. It is also much more flexible than Immediate Addressing since the value to be loaded is whatever is found at the given address--which may be variable.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Also, it is important to note that when using direct addressing any instruction which refers to an address between 00h and 7Fh is referring to Internal Memory. Any instruction which refers to an address between 80h and FFh is referring to the SFR control registers that control the 8051 microcontroller itself.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The obvious question that may arise is, "If direct addressing an address from 80h through FFh refers to SFRs, how can I access the upper 128 bytes of Internal RAM that are available on the 8052?" The answer is: You cant access them using direct addressing. As stated, if you directly refer to an address of 80h through FFh you will be referring to an SFR. However, you may access the 8052s upper 128 bytes of RAM by using the next addressing mode, "indirect addressing."</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Indirect Addressing</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Indirect addressing is a very powerful addressing mode which in many cases provides an exceptional level of flexibility. Indirect addressing is also the only way to access the extra 128 bytes of Internal RAM found on an 8052.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Indirect addressing appears as follows:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">MOV A,@R0</div><div style="text-align: justify;">This instruction causes the 8051 to analyze the value of the R0 register. The 8051 will then load the accumulator with the value from Internal RAM which is found at the address indicated by R0.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">For example, lets say R0 holds the value 40h and Internal RAM address 40h holds the value 67h. When the above instruction is executed the 8051 will check the value of R0. Since R0 holds 40h the 8051 will get the value out of Internal RAM address 40h (which holds 67h) and store it in the Accumulator. Thus, the Accumulator ends up holding 67h.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Indirect addressing always refers to Internal RAM; it never refers to an SFR. Thus, in a prior example we mentioned that SFR 99h can be used to write a value to the serial port. Thus one may think that the following would be a valid solution to write the value 1 to the serial port:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">MOV R0,#99h<span class="Apple-tab-span" style="white-space: pre;"> </span>;Load the address of the serial port</div><div style="text-align: justify;">MOV @R0,#01h<span class="Apple-tab-span" style="white-space: pre;"> </span>;Send 01 to the serial port -- WRONG!!</div><div style="text-align: justify;">This is not valid. Since indirect addressing always refers to Internal RAM these two instructions would write the value 01h to Internal RAM address 99h on an 8052. On an 8051 these two instructions would produce an undefined result since the 8051 only has 128 bytes of Internal RAM.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>External Direct</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">External Memory is accessed using a suite of instructions which use what I call "External Direct" addressing. I call it this because it appears to be direct addressing, but it is used to access external memory rather than internal memory.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">There are only two commands that use External Direct addressing mode:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">MOVX A,@DPTR</div><div style="text-align: justify;">MOVX @DPTR,A</div><div style="text-align: justify;">As you can see, both commands utilize DPTR. In these instructions, DPTR must first be loaded with the address of external memory that you wish to read or write. Once DPTR holds the correct external memory address, the first command will move the contents of that external memory address into the Accumulator. The second command will do the opposite: it will allow you to write the value of the Accumulator to the external memory address pointed to by DPTR.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>External Indirect</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">External memory can also be accessed using a form of indirect addressing which I call External Indirect addressing. This form of addressing is usually only used in relatively small projects that have a very small amount of external RAM. An example of this addressing mode is:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">MOVX @R0,A</div><div style="text-align: justify;">Once again, the value of R0 is first read and the value of the Accumulator is written to that address in External RAM. Since the value of @R0 can only be 00h through FFh the project would effectively be limited to 256 bytes of External RAM. There are relatively simple hardware/software tricks that can be implemented to access more than 256 bytes of memory using External Indirect addressing; however, it is usually easier to use External Direct addressing if your project has more than 256 bytes of External RAM.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"></div><div style="text-align: center;"><b>Program Flow</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">When an 8051 is first initialized, it resets the PC to 0000h. The 8051 then begins to execute instructions sequentially in memory unless a program instruction causes the PC to be otherwise altered. There are various instructions that can modify the value of the PC; specifically, conditional branching instructions, direct jumps and calls, and "returns" from subroutines. Additionally, interrupts, when enabled, can cause the program flow to deviate from its otherwise sequential scheme.</div><div style="text-align: justify;">Conditional Branching</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The 8051 contains a suite of instructions which, as a group, are referred to as "conditional branching" instructions. These instructions cause program execution to follow a non-sequential path if a certain condition is true.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Take, for example, the JB instruction. This instruction means "Jump if Bit Set." An example of the JB instruction might be:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">JB 45h,HELLO</div><div style="text-align: justify;">NOP</div><div style="text-align: justify;">HELLO:<span class="Apple-tab-span" style="white-space: pre;"> </span>....</div><div style="text-align: justify;">In this case, the 8051 will analyze the contents of bit 45h. If the bit is set program execution will jump immediately to the label HELLO, skipping the NOP instruction. If the bit is not set the conditional branch fails and program execution continues, as usual, with the NOP instruction which follows.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Conditional branching is really the fundamental building block of program logic since all "decisions" are accomplished by using conditional branching. Conditional branching can be thought of as the "IF...THEN" structure in 8051 assembly language.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">An important note worth mentioning about conditional branching is that the program may only branch to instructions located withim 128 bytes prior to or 127 bytes following the address which follows the conditional branch instruction. This means that in the above example the label HELLO must be within +/- 128 bytes of the memory address which contains the conditional branching instruction.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Direct Jumps</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">While conditional branching is extremely important, it is often necessary to make a direct branch to a given memory location without basing it on a given logical decision. This is equivalent to saying "Goto" in BASIC. In this case you want the program flow to continue at a given memory address without considering any conditions.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">This is accomplished in the 8051 using "Direct Jump and Call" instructions. As illustrated in the last paragraph, this suite of instructions causes program flow to change unconditionally.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Consider the example:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">LJMP NEW_ADDRESS</div><div style="text-align: justify;">.</div><div style="text-align: justify;">.</div><div style="text-align: justify;">.</div><div style="text-align: justify;">NEW_ADDRESS:<span class="Apple-tab-span" style="white-space: pre;"> </span>....</div><div style="text-align: justify;">The LJMP instruction in this example means "Long Jump." When the 8051 executes this instruction the PC is loaded with the address of NEW_ADDRESS and program execution continues sequentially from there.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The obvious difference between the Direct Jump and Call instructions and the conditional branching is that with Direct Jumps and Calls program flow always changes. With conditional branching program flow only changes if a certain condition is true.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">It is worth mentioning that, aside from LJMP, there are two other instructions which cause a direct jump to occur: the SJMP and AJMP commands. Functionally, these two commands perform the exact same function as the LJMP command--that is to say, they always cause program flow to continue at the address indicated by the command. However, SJMP and AJMP differ in the following ways:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The SJMP command, like the conditional branching instructions, can only jump to an address within +/- 128 bytes of the SJMP command.</div><div style="text-align: justify;">The AJMP command can only jump to an address that is in the same 2k block of memory as the AJMP command. That is to say, if the AJMP command is at code memory location 650h, it can only do a jump to addresses 0000h through 07FFh (0 through 2047, decimal).</div><div style="text-align: justify;">You may be asking yourself, "Why would I want to use the SJMP or AJMP command which have restrictions as to how far they can jump if they do the same thing as the LJMP command which can jump anywhere in memory?" The answer is simple: The LJMP command requires three bytes of code memory whereas both the SJMP and AJMP commands require only two. Thus, if you are developing an application that has memory restrictions you can often save quite a bit of memory using the 2-byte AJMP/SJMP instructions instead of the 3-byte instruction.</div><div style="text-align: justify;">Recently, I wrote a program that required 2100 bytes of memory but I had a memory restriction of 2k (2048 bytes). I did a search/replace changing all LJMPs to AJMPs and the program shrunk downto 1950 bytes. Thus, without changing any logic whatsoever in my program I saved 150 bytes and was able to meet my 2048 byte memory restriction.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">NOTE: Some quality assemblers will actually do the above conversion for you automatically. That is, they'll automatically change your LJMPs to SJMPs whenever possible. This is a nifty and very powerful capability that you may want to look for in an assembler if you plan to develop many projects that have relatively tight memory restrictions.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Direct Calls</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Another operation that will be familiar to seasoned programmers is the LCALL instruction. This is similar to a "Gosub" command in Basic.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">When the 8051 executes an LCALL instruction it immediately pushes the current Program Counter onto the stack and then continues executing code at the address indicated by the LCALL instruction.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Returns from Routines</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Another structure that can cause program flow to change is the "Return from Subroutine" instruction, known as RET in 8051 Assembly Language.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The RET instruction, when executed, returns to the address following the instruction that called the given subroutine. More accurately, it returns to the address that is stored on the stack.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The RET command is direct in the sense that it always changes program flow without basing it on a condition, but is variable in the sense that where program flow continues can be different each time the RET instruction is executed depending on from where the subroutine was called originally.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><b>Interrupts</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">An interrupt is a special feature which allows the 8051 to provide the illusion of "multi-tasking," although in reality the 8051 is only doing one thing at a time. The word "interrupt" can often be subsituted with the word "event."</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">An interrupt is triggered whenever a corresponding event occurs. When the event occurs, the 8051 temporarily puts "on hold" the normal execution of the program and executes a special section of code referred to as an interrupt handler. The interrupt handler performs whatever special functions are required to handle the event and then returns control to the 8051 at which point program execution continues as if it had never been interrupted.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The topic of interrupts is somewhat tricky and very important. For that reason, an entire chapter will be dedicated to the topic. For now, suffice it to say that Interrupts can cause program flow to change.</div></span><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
<br />
<br />
</span><br />
<div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"></span></div><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"></span><br />
<span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><div style="text-align: center;"><b>Timing</b></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">In order to understand--and better make use of--the 8051, it is necessary to understand some underlying information concerning timing.</div><div style="text-align: justify;">The 8051 operates based on an external crystal. This is an electrical device which, when energy is applied, emits pulses at a fixed frequency. One can find crystals of virtually any frequency depending on the application requirements. When using an 8051, the most common crystal frequencies are 12 megahertz and 11.059 megahertz--with 11.059 being much more common. Why would anyone pick such an odd-ball frequency? Theres a real reason for it--it has to do with generating baud rates and well talk more about it in the Serial Communication chapter. For the remainder of this discussion well assume that were using an 11.059Mhz crystal.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Microcontrollers (and many other electrical systems) use crystals to syncrhronize operations. The 8051 uses the crystal for precisely that: to synchronize its operation. Effectively, the 8051 operates using what are called "machine cycles." A single machine cycle is the minimum amount of time in which a single 8051 instruction can be executed. although many instructions take multiple cycles.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">A cycle is, in reality, 12 pulses of the crystal. That is to say, if an instruction takes one machine cycle to execute, it will take 12 pulses of the crystal to execute. Since we know the crystal is pulsing 11,059,000 times per second and that one machine cycle is 12 pulses, we can calculate how many instruction cycles the 8051 can execute per second:</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">11,059,000 / 12 = 921,583</div><div style="text-align: justify;">This means that the 8051 can execute 921,583 single-cycle instructions per second. Since a large number of 8051 instructions are single-cycle instructions it is often considered that the 8051 can execute roughly 1 million instructions per second, although in reality it is less--and, depending on the instructions being used, an estimate of about 600,000 instructions per second is more realistic.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">For example, if you are using exclusively 2-cycle instructions you would find that the 8051 would execute 460,791 instructions per second. The 8051 also has two really slow instructions that require a full 4 cycles to execute--if you were to execute nothing but those instructions youd find performance to be about 230,395 instructions per second.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">It is again important to emphasize that not all instructions execute in the same amount of time. The fastest instructions require one machine cycle (12 crystal pulses), many others require two machine cycles (24 crystal pulses), and the two very slow math operations require four machine cycles (48 crystal pulses).</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">NOTE: Many 8051 derivative chips change instruction timing. For example, many optimized versions of the 8051 execute instructions in 4 oscillator cycles instead of 12; such a chip would be effectively 3 times faster than the 8051 when used with the same 11.059 Mhz crystal.</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Since all the instructions require different amounts of time to execute a very obvious question comes to mind: How can one keep track of time in a time-critical application if we have no reference to time in the outside world?</div></span><br />
<div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span><br />
<span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><b>Instruction Set</b></span><br />
<span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;">8051 <a href="http://www.keil.com/support/man/docs/is51/is51_instructions.htm">INSTRUCTION SET HERE</a></div><div style="text-align: justify;"><span class="Apple-style-span" style="color: red;">Note:- Instruction set depends on manufacturer </span><br />
<span class="Apple-style-span" style="color: red;"><br />
</span><br />
<span class="Apple-style-span" style="color: red;"><br />
</span><br />
<b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Leading Manufactures</span></b><br />
<span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><b><br />
</b></span><br />
<span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: medium;"><ol><li><a href="http://www.atmel.com/"><b>Atmel</b></a></li>
<li><b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><a href="http://www.nxp.com/">Philips(NXP)</a></span></b></li>
<li><b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><a href="http://www.analog.com/en/index.html">Analog Devices</a></span></b></li>
<li><b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><a href="http://www.ti.com/">Texas Instruments</a></span></b></li>
<li><b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><a href="http://www.maxim-ic.com/">Dallas(Maxim)</a></span></b></li>
<li><b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><a href="http://www.infineon.com/cms/en/product/index.html">Infineon Technologies</a></span></b></li>
<li><b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><a href="http://www.silabs.com/Pages/default.aspx">Silicon Labs</a></span></b></li>
<li><b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><a href="http://www.st.com/stonline/">ST Microelectronics</a></span></b></li>
</ol></span><b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></b><br />
<b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></b><br />
<b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></b><br />
<b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Data sheets</span></b><br />
<b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></b><br />
<span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><a href="http://www.datasheetcatalog.org/datasheets2/10/1046235_1.pdf">Basic Intel 8051</a> click here</span><br />
<b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></b><br />
<span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">some others</span><br />
<b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></b><br />
<b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-weight: normal;"></span></span></b><br />
<b><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><table border=""><tbody>
<tr><th><span class="Apple-style-span" style="font-weight: normal;">Manufacturer</span></th><th><span class="Apple-style-span" style="font-weight: normal;">Part Number</span></th><th><span class="Apple-style-span" style="font-weight: normal;">CODE</span></th><th><span class="Apple-style-span" style="font-weight: normal;">Int RAM</span></th><th><span class="Apple-style-span" style="font-weight: normal;">Notes:</span></th></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.atmel.com/">Atmel</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><span>- Any -</span></td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.atmel.com/atmel/acrobat/doc0497.pdf">Architecture Desc</a></td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.semiconductors.philips.com/microcontrol/">Philips</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><span>- Any -</span></td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.semiconductors.philips.com/acrobat/various/80C51_FAM_ARCH_1.pdf">Architecture Desc</a></td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.atmel.com/">Atmel</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><span>- Any -</span></td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.atmel.com/atmel/acrobat/doc0498.pdf">Memory Organization</a></td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.semiconductors.philips.com/microcontrol/">Philips</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><span>- Any -</span></td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.semiconductors.philips.com/acrobat/various/80C51_FAM_PROG_GUIDE_1.pdf">Instruction Set + Other Useful Info</a></td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.atmel.com/">Atmel</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><span>- Any -</span></td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.atmel.com/atmel/acrobat/doc0509.pdf">Instruction Set</a></td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.atmel.com/">Atmel</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><span>- Any -</span></td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.atmel.com/atmel/acrobat/doc0499.pdf">Hardware Desc</a></td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.semiconductors.philips.com/microcontrol/">Philips</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><span>- Any -</span></td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;">-</td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.semiconductors.philips.com/acrobat/various/80C51_FAM_HARDWARE_1.pdf">Hardware Desc</a></td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.analog.com/">Analog Devices</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.analog.com/productSelection/pdf/816qref0.pdf">ADuC816</a></td><td style="font-family: Arial, Helvetica, sans-serif;">8k</td><td style="font-family: Arial, Helvetica, sans-serif;">256</td><td style="font-family: Arial, Helvetica, sans-serif;">16 Bit A/D, 12 Bit D/A, Flash ROM, EEPROM, I2C</td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.atmel.com/">Atmel</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.atmel.com/atmel/acrobat/doc0313.pdf">89C52</a></td><td style="font-family: Arial, Helvetica, sans-serif;">8k</td><td style="font-family: Arial, Helvetica, sans-serif;">256</td><td style="font-family: Arial, Helvetica, sans-serif;">Flash ROM</td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.atmel.com/">Atmel</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.atmel.com/atmel/acrobat/doc0368.pdf">89C2051</a></td><td style="font-family: Arial, Helvetica, sans-serif;">2k</td><td style="font-family: Arial, Helvetica, sans-serif;">128</td><td style="font-family: Arial, Helvetica, sans-serif;">Flash ROM, 20 pins</td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.dalsemi.com/">Dallas</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.dalsemi.com/datasheets/pdfs/80c320.pdf">80C320</a></td><td style="font-family: Arial, Helvetica, sans-serif;">Ext Req'd</td><td style="font-family: Arial, Helvetica, sans-serif;">256</td><td style="font-family: Arial, Helvetica, sans-serif;">High Speed, 2 UART</td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.dalsemi.com/">Dallas</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.dalsemi.com/datasheets/pdfs/87c520.pdf">87C520</a></td><td style="font-family: Arial, Helvetica, sans-serif;">16k</td><td style="font-family: Arial, Helvetica, sans-serif;">256 + 1k</td><td style="font-family: Arial, Helvetica, sans-serif;">High Speed, 2 UART</td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.dalsemi.com/">Dallas</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.dalsemi.com/datasheets/pdfs/87c550.pdf">87C550</a></td><td style="font-family: Arial, Helvetica, sans-serif;">16k</td><td style="font-family: Arial, Helvetica, sans-serif;">256 + 1k</td><td style="font-family: Arial, Helvetica, sans-serif;">HS, 2 UART, 10-bit A/D, PWM, More Pins</td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.semiconductors.philips.com/microcontrol/">Philips</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.semiconductors.philips.com/acrobat/datasheets/8XC51_8XC52_6.pdf">87C52</a></td><td style="font-family: Arial, Helvetica, sans-serif;">8k</td><td style="font-family: Arial, Helvetica, sans-serif;">256</td><td style="font-family: Arial, Helvetica, sans-serif;">OTP EPROM</td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.semiconductors.philips.com/microcontrol/">Philips</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.semiconductors.philips.com/acrobat/datasheets/P87C552_2.pdf">87C552</a></td><td style="font-family: Arial, Helvetica, sans-serif;">8k</td><td style="font-family: Arial, Helvetica, sans-serif;">256</td><td style="font-family: Arial, Helvetica, sans-serif;">10-bit A/D, I2C, PWM</td></tr>
<tr><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.cygnal.com/view.asp?page=selection_guide">Cygnal</a></td><td style="font-family: Arial, Helvetica, sans-serif;"><a href="http://www.cygnal.com/datasheets/C8051F000.pdf">C8051F000</a></td><td style="font-family: Arial, Helvetica, sans-serif;">32k</td><td style="font-family: Arial, Helvetica, sans-serif;">256</td><td style="font-family: Arial, Helvetica, sans-serif;">12-bit A/D + analog functions, high speed CPU</td></tr>
</tbody></table></span></b><br />
<span class="Apple-style-span" style="color: red;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="color: red;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="color: red;"><br />
</span></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-1372933001761370251.post-15067296852383124602010-03-24T09:57:00.002+05:302010-03-24T14:06:14.062+05:30End-Equipment Solutions<span class="Apple-style-span" style="color: #585858; line-height: 14px;"><span class="Apple-style-span" style="font-size: x-large;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Find block diagrams, </span></span></span><br />
<span class="Apple-style-span" style="color: #585858; line-height: 14px;"><span class="Apple-style-span" style="font-size: x-large;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></span></span><br />
<span class="Apple-style-span" style="color: #585858; line-height: 14px;"><span class="Apple-style-span" style="font-size: x-large;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">application notes, </span></span></span><br />
<span class="Apple-style-span" style="color: #585858; line-height: 14px;"><span class="Apple-style-span" style="font-size: x-large;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></span></span><br />
<span class="Apple-style-span" style="color: #585858; line-height: 14px;"><span class="Apple-style-span" style="font-size: x-large;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">tools and </span></span></span><br />
<span class="Apple-style-span" style="color: #585858; line-height: 14px;"><span class="Apple-style-span" style="font-size: x-large;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></span></span><br />
<span class="Apple-style-span" style="color: #585858; line-height: 14px;"><span class="Apple-style-span" style="font-size: x-large;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">software and other related information</span></span></span><br />
<span class="Apple-style-span" style="color: #585858; font-family: Verdana, Helvetica, sans-serif; font-size: 11px; line-height: 14px;"><br />
</span><br />
<span class="Apple-style-span" style="color: #585858; font-family: Verdana, Helvetica, sans-serif; font-size: 11px; line-height: 14px;"><br />
</span><br />
<span class="Apple-style-span" style="color: #585858; font-family: Verdana, Helvetica, sans-serif; font-size: 11px; line-height: 14px;"><span class="Apple-style-span" style="line-height: normal;"></span></span><br />
<table border="0" cellpadding="0" cellspacing="0" class="cmpntgen1" style="font-size: 1em;"><tbody>
<tr valign="top"><td width="200"><ul style="line-height: 1.4em; list-style-type: none; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; max-width: 500px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"><li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/363.html" style="color: black; text-decoration: none;">ATCA Solutions</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/14.html" style="color: black; text-decoration: none;">AV Receiver</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/364.html" style="color: black; text-decoration: none;">Active Noise Cancellation (ANC)</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/389.html" style="color: black; text-decoration: none;">Audio Dock: Basic</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/391.html" style="color: black; text-decoration: none;">Audio Dock: Performance</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/390.html" style="color: black; text-decoration: none;">Audio Dock: Portable</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/359.html" style="color: black; text-decoration: none;">Automated External Defibrillator</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/490.html" style="color: black; text-decoration: none;">Automotive Central Body Controller</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/491.html" style="color: black; text-decoration: none;">Automotive Cluster</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/472.html" style="color: black; text-decoration: none;">Automotive Infotainment</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/492.html" style="color: black; text-decoration: none;">Automotive Vision Control</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/503.html" style="color: black; text-decoration: none;">Baby Monitor</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/384.html" style="color: black; text-decoration: none;">Barcode Scanner</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/599.html" style="color: black; text-decoration: none;">Battery Management: High Cell Count for HEV</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/345.html" style="color: black; text-decoration: none;">Blood Gas Analyzer: Portable</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/310.html" style="color: black; text-decoration: none;">Blood Pressure Monitor</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/469.html" style="color: black; text-decoration: none;">Blu-ray Player and Home Theater</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/494.html" style="color: black; text-decoration: none;">CPAP Machine</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/529.html" style="color: black; text-decoration: none;">CT Scanner</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/29.html" style="color: black; text-decoration: none;">Cable Solutions</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/408.html" style="color: black; text-decoration: none;">Camera: Surveillance Analog</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/583.html" style="color: black; text-decoration: none;">Camera: Surveillance IP Network</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/528.html" style="color: black; text-decoration: none;">Car Access System</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/314.html" style="color: black; text-decoration: none;">Confocal Microscopy</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/586.html" style="color: black; text-decoration: none;">Currency Counter</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/360.html" style="color: black; text-decoration: none;">DLP® Front Projection System</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/530.html" style="color: black; text-decoration: none;">DVD Recorder & Player</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"> <a href="http://focus.ti.com/docs/solution/folders/print/485.html" style="color: black; text-decoration: none;">DVR and DVS</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/393.html" style="color: black; text-decoration: none;">Desktop PC</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/400.html" style="color: black; text-decoration: none;">Dialysis Machine</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/593.html" style="color: black; text-decoration: none;">Digital Multimeter: Bench / System</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/591.html" style="color: black; text-decoration: none;">Digital Multimeter: Handheld</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/471.html" style="color: black; text-decoration: none;">Digital Picture Frame (DPF)</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/8.html" style="color: black; text-decoration: none;">Digital Radio</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/521.html" style="color: black; text-decoration: none;">Digital Signage</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/80.html" style="color: black; text-decoration: none;">Digital Still Camera</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/584.html" style="color: black; text-decoration: none;">Digital Video Camera (DVC)</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/594.html" style="color: black; text-decoration: none;">Down Hole Drilling</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/468.html" style="color: black; text-decoration: none;">E-Bike</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/697.html" style="color: black; text-decoration: none;">E-Book</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/464.html" style="color: black; text-decoration: none;">ECG Electrocardiogram</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/592.html" style="color: black; text-decoration: none;">Electronic Shelf Label</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/600.html" style="color: black; text-decoration: none;">Embedded Camera System</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/561.html" style="color: black; text-decoration: none;">Embedded PC</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/477.html" style="color: black; text-decoration: none;">Endoscope</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/517.html" style="color: black; text-decoration: none;">Energy Harvesting</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/589.html" style="color: black; text-decoration: none;">Ethernet Switch</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/520.html" style="color: black; text-decoration: none;">Femto Base Station</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"> <a href="http://focus.ti.com/docs/solution/folders/print/248.html" style="color: black; text-decoration: none;">Fingerprint Biometrics</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/411.html" style="color: black; text-decoration: none;">Flow Meter</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/413.html" style="color: black; text-decoration: none;">GPS: Personal Navigation Device</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/489.html" style="color: black; text-decoration: none;">Glass Break Detector</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/399.html" style="color: black; text-decoration: none;">HVAC - Heating, Ventilating, and Air Conditioning</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/395.html" style="color: black; text-decoration: none;">Handset: Entry</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/300.html" style="color: black; text-decoration: none;">Handset: Multimedia</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/394.html" style="color: black; text-decoration: none;">Handset: Smartphone</a></li>
</ul></td><td> </td><td width="200"><ul style="line-height: 1.4em; list-style-type: none; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; max-width: 500px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"><li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/369.html" style="color: black; text-decoration: none;">High-Speed Data Acquisition and Generation</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/323.html" style="color: black; text-decoration: none;">Holographic Data Storage</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/370.html" style="color: black; text-decoration: none;">Hydraulic Valve</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/206.html" style="color: black; text-decoration: none;">IP Phone: Wired</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/382.html" style="color: black; text-decoration: none;">IP Phone: Wireless</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/481.html" style="color: black; text-decoration: none;">Infusion Pump</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/527.html" style="color: black; text-decoration: none;">Intelligent Occupancy Sensing</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/398.html" style="color: black; text-decoration: none;">Isolated Thermocouple</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/475.html" style="color: black; text-decoration: none;">Lighting: General</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/476.html" style="color: black; text-decoration: none;">Lighting: LCD Backlight</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/531.html" style="color: black; text-decoration: none;">Lighting: Multi String LED Driver</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/474.html" style="color: black; text-decoration: none;">Lighting: Signage</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/12.html" style="color: black; text-decoration: none;">MP3 Player/Recorder (Portable Audio)</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/275.html" style="color: black; text-decoration: none;">MRI: Magnetic Resonance Imaging</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/372.html" style="color: black; text-decoration: none;">Machine Control using DeviceNet</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/484.html" style="color: black; text-decoration: none;">Machine Vision: Camera</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/483.html" style="color: black; text-decoration: none;">Machine Vision: Frame Grabber</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/355.html" style="color: black; text-decoration: none;">Medical Meters: Portable</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/402.html" style="color: black; text-decoration: none;">Microwave Oven</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/113.html" style="color: black; text-decoration: none;">Military and Avionics Imaging</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/386.html" style="color: black; text-decoration: none;">Military: Munitions and Targeting</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/119.html" style="color: black; text-decoration: none;">Military: Radar/Sonar</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/501.html" style="color: black; text-decoration: none;">Mobile Internet Device</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/745.html" style="color: black; text-decoration: none;">Motor Control: AC Induction</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/746.html" style="color: black; text-decoration: none;">Motor Control: Brushed DC</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/744.html" style="color: black; text-decoration: none;">Motor Control: Brushless DC</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/195.html" style="color: black; text-decoration: none;">Motor Control: High-Voltage</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/409.html" style="color: black; text-decoration: none;">Motor Control: Low-Voltage</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/747.html" style="color: black; text-decoration: none;">Motor Control: Permanent Magnet</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/748.html" style="color: black; text-decoration: none;">Motor Control: Stepper Motor</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/581.html" style="color: black; text-decoration: none;">Netbook</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/595.html" style="color: black; text-decoration: none;">Network Projector Front End</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/342.html" style="color: black; text-decoration: none;">Notebook PC</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/374.html" style="color: black; text-decoration: none;">Optical Line Card</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/597.html" style="color: black; text-decoration: none;">Optical Networking: EPON</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/602.html" style="color: black; text-decoration: none;">Optical Networking: Video over Fiber</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/437.html" style="color: black; text-decoration: none;">Oscilloscope</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/410.html" style="color: black; text-decoration: none;">Patient Monitoring: OMAP</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/344.html" style="color: black; text-decoration: none;">Personal Digital Assistant (PDA)</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/513.html" style="color: black; text-decoration: none;">Point-to-Point Microwave Backhaul</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/385.html" style="color: black; text-decoration: none;">Portable DVD Player</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/473.html" style="color: black; text-decoration: none;">Portable Media Player</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/502.html" style="color: black; text-decoration: none;">Power Line Communication Modem</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/375.html" style="color: black; text-decoration: none;">Power Over Ethernet (PoE)</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/587.html" style="color: black; text-decoration: none;">Power Quality Meter</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/562.html" style="color: black; text-decoration: none;">Power Solutions for Intel® Atom™ IMVP6+ Platform</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/563.html" style="color: black; text-decoration: none;">Power Solutions for Intel® IMVP6.5 Platform</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/522.html" style="color: black; text-decoration: none;">Power Substation Control</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/362.html" style="color: black; text-decoration: none;">Power Supply: AC/DC, Isolated, no PFC, < 90W</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/361.html" style="color: black; text-decoration: none;">Power Supply: AC/DC, Isolated, w/ PFC, > 90W</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/365.html" style="color: black; text-decoration: none;">Power Supply: AC/DC, Non-Iso, w/ PFC, > 90W</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/367.html" style="color: black; text-decoration: none;">Power: Battery Management</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/740.html" style="color: black; text-decoration: none;">Power: Telecom DC/DC Module: Analog</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/741.html" style="color: black; text-decoration: none;">Power: Telecom DC/DC Module: Digital</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/735.html" style="color: black; text-decoration: none;">Power: Telecom/Server AC/DC Supply: Dual Controller: Analog</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/737.html" style="color: black; text-decoration: none;">Power: Telecom/Server AC/DC Supply: Dual Controller: Digital</a></li>
</ul></td><td> </td><td width="200"><ul style="line-height: 1.4em; list-style-type: none; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; max-width: 500px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"><li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/736.html" style="color: black; text-decoration: none;">Power: Telecom/Server AC/DC Supply: Single Controller: Analog</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/738.html" style="color: black; text-decoration: none;">Power: Telecom/Server AC/DC Supply: Single Controller: Digital</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/412.html" style="color: black; text-decoration: none;">Pressure Sensor</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/480.html" style="color: black; text-decoration: none;">Printer</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/598.html" style="color: black; text-decoration: none;">Private Branch Exchange (PBX)</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/376.html" style="color: black; text-decoration: none;">Pro Audio Mixer</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/466.html" style="color: black; text-decoration: none;">Programmable Logic Controller</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/330.html" style="color: black; text-decoration: none;">Pulse Oximetry</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/518.html" style="color: black; text-decoration: none;">RF4CE Remote Control</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/447.html" style="color: black; text-decoration: none;">RFID Reader</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/403.html" style="color: black; text-decoration: none;">Refrigerator</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/379.html" style="color: black; text-decoration: none;">SMS/MMS Phone</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/262.html" style="color: black; text-decoration: none;">STB / DVR / Streaming Media</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/493.html" style="color: black; text-decoration: none;">Scanner</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/465.html" style="color: black; text-decoration: none;">Seismic</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/401.html" style="color: black; text-decoration: none;">Server</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/488.html" style="color: black; text-decoration: none;">Signal/Waveform Generator</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"> <a href="http://focus.ti.com/docs/solution/folders/print/596.html" style="color: black; text-decoration: none;">Single Board Computer for HMI and POS</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/407.html" style="color: black; text-decoration: none;">Smart E-Meter: AMR/AMI</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/334.html" style="color: black; text-decoration: none;">Smoke Detector</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/357.html" style="color: black; text-decoration: none;">Software Defined Radio (SDR)</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/349.html" style="color: black; text-decoration: none;">Solar Power Inverters</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/564.html" style="color: black; text-decoration: none;">Solid State Drive: Internal/External</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/347.html" style="color: black; text-decoration: none;">Speaker: USB</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/478.html" style="color: black; text-decoration: none;">Stethoscope: Digital</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/515.html" style="color: black; text-decoration: none;">TETRA Base Station</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/387.html" style="color: black; text-decoration: none;">TV: High-Definition (HDTV)</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/327.html" style="color: black; text-decoration: none;">TV: LCD/Digital</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/604.html" style="color: black; text-decoration: none;">Telecom Shelter: Filter Unit</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/603.html" style="color: black; text-decoration: none;">Telecom Shelter: Wireless Battery Monitoring</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/380.html" style="color: black; text-decoration: none;">Temperature Sensor/Controller using Modbus</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/346.html" style="color: black; text-decoration: none;">Ultrasound System</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/585.html" style="color: black; text-decoration: none;">Ultrasound System: Portable</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/742.html" style="color: black; text-decoration: none;">Vector Signal Analyzer</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/743.html" style="color: black; text-decoration: none;">Vector Signal Generator</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/479.html" style="color: black; text-decoration: none;">Ventilator</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/487.html" style="color: black; text-decoration: none;">Video Analytics Server</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/505.html" style="color: black; text-decoration: none;">Video Broadcasting & Infrastructure: Scalable Platform</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/435.html" style="color: black; text-decoration: none;">Video Broadcasting: IP-Based Multi-Format Transcoder</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"> <a href="http://focus.ti.com/docs/solution/folders/print/601.html" style="color: black; text-decoration: none;">Video Communications System</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/415.html" style="color: black; text-decoration: none;">Video Conferencing: IP-Based HD</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/371.html" style="color: black; text-decoration: none;">Video Conferencing: IP-Based SD</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/453.html" style="color: black; text-decoration: none;">Video Doorbell</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/397.html" style="color: black; text-decoration: none;">Washing Machine: High-End</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/396.html" style="color: black; text-decoration: none;">Washing Machine: Low-End</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/392.html" style="color: black; text-decoration: none;">Weigh Scale / Bridge Sensor</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/183.html" style="color: black; text-decoration: none;">WiMAX & Wireless Infrastructure Equipment</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/739.html" style="color: black; text-decoration: none;">Wireless Communications Tester</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/514.html" style="color: black; text-decoration: none;">Wireless Data Access Card</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/749.html" style="color: black; text-decoration: none;">Wireless Headset</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/383.html" style="color: black; text-decoration: none;">Wireless LAN Card</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/590.html" style="color: black; text-decoration: none;">Wireless Mouse</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/482.html" style="color: black; text-decoration: none;">Wireless Repeater</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/467.html" style="color: black; text-decoration: none;">X-ray: Baggage Scanner</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/470.html" style="color: black; text-decoration: none;">X-ray: Medical/Dental</a></li>
<li style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(http://focus.ti.com/graphics/shared/css/ul-sm-circle.gif); background-origin: initial; background-position: 0px 0.85em; background-repeat: no-repeat no-repeat; line-height: 1.2em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0.3em; padding-left: 0.8em; padding-right: 0px; padding-top: 0.4em;"><a href="http://focus.ti.com/docs/solution/folders/print/366.html" style="color: black; text-decoration: none;">xDSL Modem/DSLAM</a></li>
</ul></td></tr>
</tbody></table><br />
<br />
<span class="Apple-style-span" style="color: #585858; font-family: Verdana, Helvetica, sans-serif; font-size: 11px; line-height: 14px;"><span class="Apple-style-span" style="line-height: normal;">Reference from Texas Instruments</span></span><br />
<span class="Apple-style-span" style="color: #585858; font-family: Verdana, Helvetica, sans-serif; font-size: 11px; line-height: 14px;"><span class="Apple-style-span" style="line-height: normal;"><br />
</span></span>Unknownnoreply@blogger.com4tag:blogger.com,1999:blog-1372933001761370251.post-18322369341275519652010-03-15T10:28:00.000+05:302010-03-15T10:28:20.247+05:30Eight-function remote uses one button, no microcode<div style="text-align: justify;"><span class="Apple-style-span" style="color: #2b3336; font-family: 'Trebuchet MS', sans-serif; line-height: 16px;">Many people with significant physical disabilities can't operate everyday mechanisms, such as TV remote controls. To make matters worse, adaptive technologies are often unaffordable unless insurance covers them. This Design Idea describes an interface circuit that lets a disabled person control eight remote-control functions. The design uses older, small-scale-integration ICs because of their simplicity, low power requirements, affordability, and availability at stores such as Radio Shack. Because the circuit uses no microcontroller, you need not do any programming.</span></div><span class="Apple-style-span" style="color: #2b3336; line-height: 16px;"></span><br />
<span class="Apple-style-span" style="color: #2b3336; line-height: 16px;"><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"></span><br />
<span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><div style="text-align: justify;">Power for the circuit in Figure 1 comes from four 1.5V AA batteries in series. Diodes D1 through D4 reduce the battery power from 6V to approximately 3.4V, and they protect against accidental reverse polarity of the batteries. IC1, a 555 timer, and associated discrete components form a repetitive-pulse generator. Potentiometer R1 adjusts the pulse speed. This pulse feeds directly into decade counter, IC2, which causes indicator LEDs LED1 through LED4 to sequence on and off. Each output of the decade counter feeds one input of CMOS gate IC3 and AND gate IC4. Normally, the output of the NAND gate is low because both inputs must be logic one to produce a logic-one output to close one of the CMOS switches, IC5 and IC6.</div></span></span><br />
<div style="text-align: justify;"><span class="Apple-style-span" style="color: #2b3336; font-family: Arial, Helvetica, sans-serif; font-size: 11px; line-height: 16px;"><br />
</span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.ednasia.com/cmsimages/1003/1003pg42_f1.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="272" src="http://www.ednasia.com/cmsimages/1003/1003pg42_f1.gif" width="400" /></a></div><div style="text-align: justify;"><span class="Apple-style-span" style="color: #2b3336; font-family: Arial, Helvetica, sans-serif; font-size: 11px; line-height: 16px;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="color: #2b3336; line-height: 16px;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Figure 1: This interface circuit allows a disabled person to control eight remote-control functions.</span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="color: #2b3336; line-height: 16px;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="color: #2b3336; line-height: 16px;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">If the user presses the control switch while the desired LED is lit, both inputs to one of IC3's AND gates are at logic one, causing the output to be logic one and closing a 4066 switch, which is effectively the same as pressing one of the buttons on the remote control. As long as the control switch remains closed, the 555 pulses remain disabled and LED1 through LED4 remain in their current state. This characteristic is important because a person can continue to hold the control switch closed to continuously increment the changing of a channel or increase or decrease the volume.</span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="color: #2b3336; font-family: Arial, Helvetica, sans-serif; font-size: 11px; line-height: 16px;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="color: #2b3336; font-family: Arial, Helvetica, sans-serif; font-size: 11px; line-height: 16px;"><br />
</span></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-1372933001761370251.post-56394440755806618602010-03-09T13:52:00.001+05:302010-03-09T13:54:57.257+05:30From magnetic to solid state, spin-free: What a long, strange storage trip it’s turning out to be<div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Flash-memory-based solid-state drives have recently stirred up the staid storage industry, and their initial success stories foretell a potentially stellar future. Consider, for example, how rapidly they’ve taken over the formerly robust market for 1.8-in. hard-disk drives. Also consider their significant influence on smaller-form-factor hard-disk drives’ lackluster initial unveilings. A notable percentage of netbook, tablet, and other alternative mobile computers, especially those running Linux operating-system variants, contain solid-state drives instead of hard-disk drives. Thin and light conventional notebook PCs running Windows and OS X are also well along the conversion path.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Enterprise-computing applications might at first glance seem to be poor candidates for solid-state technology, given its substantially higher cost than the magnetic alternative at the high capacities that this market segment requires. Yet, by virtue of its low energy consumption, increased reliability, and ultrafast read rates, the technology is making notable progress in conquering the corporate world. Consider that, to maximize hard drives’ performance, IT departments have long formatted only the platters’ fastest-access portion, wasting the rest of the drive and thereby blunting the argument that hard drives cost less than their nonmagnetic counterparts. Consider, too, that a number of applications, including smartphones, PDAs (personal digital assistants), digital still cameras, and videocameras, that might have formerly gone with—and, in some cases, in initial product generations, did go with—hard drives have migrated en masse to solid-state storage.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Proponents of both approaches dispute the extent of solid-state technology’s potential to obsolete its predecessor, and the industry has yet to determine a winner. These debates illustrate a number of fundamental misrepresentations of solid-state drives’ strengths and shortcomings. EDN readers’ feedback to past editorial coverage reveals similar misunderstanding (Reference 1). This article attempts to clear up at least some of that confusion.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Cost, power consumption, and any other all-important comparative factors aside, the differences between hard-disk and solid-state drives boil down to a few fundamental points. First, solid-state drives, especially those in applications with random-access patterns, read data substantially faster than hard drives can, </span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">assuming the absence of any storage-to-system-interface bottlenecks. In contrast, solid-state drives, especially those in applications with random-access patterns, write data much slower than hard drives do. Also, once the solid-state drive has depleted its inventory of spare capacity, block-erase delays become a larger percentage of the total write latency. Further, unlike with a hard-disk drive, flash memory is not fully bit-alterable. Although flash memory can change ones to zeros on a bit-by-bit basis, converting even a single zero back into a one requires erasing the entire block containing the bit.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Another difference is that flash memory eventually “wears out” after extended erase cycles. However, it tends to do so on a block-by-block basis and in a predictable manner that the media controller can easily detect far in advance and compensate for in a variety of ways. Many hard-drive failures, in contrast, are abrupt and systemic. Further, because solid-state drives are semiconductor-based, they are notably more immune to the effects of abrupt shock, sustained vibration, and other types of jarring. They’re also comparatively impervious to environmental interference, such as from magnetic fields.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Most of today’s flash memory uses a conceptually common floating-gate cell structure (Figure 1). Fast-random-read-access NOR and slower—albeit less expensive on a per-bit basis—NAND technologies differ predominantly in their cell-to-cell interconnect schemes. In its default erased state, the transistor turns on—that is, outputs a one—when the memory device’s integrated address-decoding circuitry activates the necessary array row and column lines to select it. With the transistor programmed by means of additional electrons stored on its floating gate, it cannot turn on when address inputs select it and therefore outputs a zero to read attempts.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.ednasia.com/cmsimages/1003/1003pg20_f1.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="338" src="http://www.ednasia.com/cmsimages/1003/1003pg20_f1.gif" width="400" /></a></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Figure 1: Most single-transistor flash-memory cells operate in a conceptually similar fashion (a) regardless of whether they interconnect in a NOR (b) or a NAND (c) scheme. Bit-by-bit or more efficient page-by-page programming places incremental charge on the floating gate (d), thereby counteracting an applied turn-on voltage during subsequent reads. Block-by-block erasure (e) removes this charge surplus (courtesy the Wikipedia Foundation).</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Altering the stored value of a flash-memory transistor involves the application of higher-than-normal voltages to various transistor junctions, thereby creating the necessary electric fields to affect electron flow onto or off the floating gate. Initial flash-memory generations required off-chip generation of these voltages; nowadays, most devices employ on-die high-voltage pumps for this function. Theoretically, you could alter a transistor’s value—both for one-to-zero programming and for zero-to-one erasure—on a bit-by-bit basis, as is the case with EEPROMs (electrically erasable programmable read-only memories), FRAMs (ferroelectric random-access memories), MRAMs (magnetic RAMs), and battery-backed SRAMs (static RAMs). The necessary signal-routing, isolation, and other circuitry, however, would use too much die area and would therefore be too expensive at the IC capacities that bulk-storage applications require.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">With modern NAND flash memory, on the other hand, you can erase blocks in approximately 512-kbyte increments. Bit-by-bit programming is possible; from an efficiency standpoint, however, solid-state drives and the NAND chips within them prefer to write data in approximately 4-kbyte chunks. This preference reflects the cost-versus-performance sizes of the RAM buffers on the flash-memory die. The bulk-alteration requirement differentiates flash memory not only from other nonvolatile semiconductor-storage technologies but also from hard-disk drives. The repeated electron flow across the thin silicon layer between the flash-memory transistor’s substrate and floating gate and through incremental program and erase cycles stresses the oxide. At first, electrons inadvertently become trapped in the oxide lattice, impeding the flow of other electrons and slowing subsequent program and erase operations. Eventually, the oxide breaks down by rupturing, for example, leading to fundamental transistor failure. This demise tends to disrupt the function of the entire erase block that contains the affected transistor.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Modern flash memories come in both SLC (single-level-cell) and MLC (multilevel-cell) variants; today’s MLC variants are primarily 2-bit-per-cell devices (Figure 2). With SLC flash memories, the voltage-sensing circuitry that connects to the array transistors’ outputs can be relatively simple because it needs to discern only one voltage threshold and because the transistor’s one and zero output voltages have substantial margin to this threshold. However, with a 2-bit-per-cell MLC flash memory, three voltage thresholds—that is, four levels—require discernment during reads. The programming operation for placing the necessary amount of electron charge onto the transistor’s floating gate is similarly precise, and the effects of supply-voltage and operating-temperature variation and cycling further complicate this operation. Spansion claims that its MirrorBit MLC technology approach somewhat reduces the need for precise electron placement. Nonetheless, the concept remains largely relevant.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.ednasia.com/cmsimages/1003/1003pg22_f2.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="248" src="http://www.ednasia.com/cmsimages/1003/1003pg22_f2.gif" width="400" /></a></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Figure 2: Whereas conventional 1-bit-per-cell flash memory has plenty of margin within the threshold-voltage envelope between a sensed zero and a sensed one (a), 2-, 3-, and 4-bit-per-cell technologies are more challenging to reliably implement across supply- voltage, temperature, and erase-cycling ranges (b) (courtesy Micron Technology).</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">It’s probably no surprise that MLC reads and writes—that is, program=—are substantially slower than their SLC counterparts and that the maximum block-cycling specifications for MLC memories are on average an order of magnitude less than those of SLC chips. These fundamental trade-offs are necessary for obtaining a lower per-bit cost for MLC storage devices (Table 1).</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.ednasia.com/cmsimages/1003/1003pg24_t1.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="80" src="http://www.ednasia.com/cmsimages/1003/1003pg24_t1.gif" width="400" /></a></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Now, consider Intel and Micron Technology’s new 3-bit-per-cell memories and that Sandisk recently began producing 4-bit-per-cell X4 devices (Reference 2). The difference between any two sequential voltage levels and, hence, decoded-bit combinations with these new devices is on the order of 100 or so electrons or fewer in some cases. This situation represents a profound challenge for semiconductor-process and -product engineers. By potentially hampering both performance and data dependability, it calls into question the chips’ suitability for applications requiring highly reliable storage. Then again, folks not too long ago were saying the same thing about 2-bit-per-cell MLC flash memory.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><b>Controller choices</b></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">The media controller may be a hardware-centric device, a software-fueled CPU, or any combination thereof. The hardware-versus-software choice of a controller involves trading off cost, performance, and power consumption versus flexibility and the ability to upgrade. Whatever its composition, the media controller acts as a bridge between the flash memories and the conventional hardware and software interfaces that the CPU, core-logic chip set, and other subsystems expect. The controller also manages the data stored in the single-component or multicomponent merged flash-memory array to avoid “hot-spot” overcycling of any erase blocks in the array, ideally as a background function that is invisible to the host both in access time and in any other regard. The controller leverages flash memory’s strengths and mitigates its read- and write-speed weaknesses. The result is, with any luck, at least on par with—and, ideally, much faster than—the hard-drive alternative.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">One perhaps obvious way of boosting effective solid-state-drive performance at the expense of incurring higher power consumption is to access multiple components in parallel using several address-, data-, and control-line channels between the controller and the flash memories. You can then not only simultaneously read, program, or erase multiple array elements, but also juggle multiple operations with different ICs. For example, you could read from one while writing or erasing another if the system’s access profiles justify this added level of controller complexity. In choosing a multichannel scheme, however, you also multiply the granularity of the solid-state drive’s capacity and the effective sizes of program pages and erase blocks. This situation might warrant the choice of a flexible controller design that can run in either single-channel or multichannel mode.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Modern flash memories exhibit significant disparities between program-page and erase-block sizes and between program and erase times. The controller should, therefore, manage the media in such a way that background-erase operations for wear-leveling purposes—which manufacturers also commonly call housekeeping, garbage collection, and merging—on a component or a block within that component don’t collide with system-write-request-initiated foreground programming operations on that same component or block or, for that matter, foreground system-read requests. Embedding a large RAM cache on the solid-state drive, much like the buffers on modern hard drives, can also be an effective collaborator to system-side buffering in mitigating any perceived decrease in performance that these housekeeping tasks incur. The trade-off of this approach, however, is that it requires more parts.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Reads and writes were traditionally the only required storage functions because, unlike with flash memory, you could fully overwrite hard-drive media on a bit-by-bit basis. A file-deletion request causes the file system to update its internal tables accordingly, but it historically didn’t pass that information to the drive. Hence, the solid-state-drive controller is unaware that it can do background cleanup to free up the relevant pages and blocks containing them for future writes. The necessary erase and program operations occur only after the file system requests an explicit overwrite of the LBAs (logical-block addresses) associated with the drive’s now-invalid PBAs (physical-block addresses). These operations are then unfortunately in the foreground where they adversely affect perceived read and write speed.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Manufacturers typically ship solid-state drives from the factory with spare “fresh” capacity, which is invisible to the operating system. The controller uses this capacity to delay the inevitable onset of the noted performance-strapping scenarios. However, good news is on the way in the form of the “trim” command, which the T13 Technical Committee of the INCITS (International Committee for Information Technology Standards) is now standardizing as part of the ATA (advanced-technology-attachment) command set. At press time, the T10 Technical Committee had not yet revealed its plans for the SCSI (small-computer-system-interface) command set. Before a system uses the trim command, it interrogates the drive to determine rotation speed. If it encounters a 0-rpm response, the system assumes that it is dealing with a solid-state disk and does further queries to determine whether trim support exists along with other relevant parameters. The trim command informs the drive that pages stored within the array are no longer valid and are therefore candidates for housekeeping. Deletion of a file within a trim-cognizant operating system results in the sending of relevant information for the corresponding LBAs to the drive’s controller.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Although the trim command can dramatically improve sustained solid-state-drive performance in applications requiring many file deletions, it’s ineffective in cases in which file updates occur, such as when you open a document for editing and then save the updated version or with Microsoft Outlook’s PST database format. More generally, it exposes the weakness inherent in the strong linkage between LBAs and PBAs in FFSs (flash file systems). Sandisk’s venerable FFS, along with the FTL (flash-translation-layer) technology the company obtained when it acquired M-Systems in mid-2006, strives to provide PBA independence for frequently updated files, such as the Windows Registry and the FAT (file-allocation table).</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">The company unveiled its ExtremeFFS at January’s CES (Consumer Electronics Show) and both implements it in its products and makes it available for licensing. ExtremeFFS further severs explicit LBA-to-PBA linkage, thereby claiming to boost random write speeds by a factor as great as 100 times. ExtremeFFS makes less efficient use of the flash-memory media to accomplish this objective; Sandisk declines to provide specifics. Given the burgeoning capacities available with lithographies such as Intel and Micron’s latest 34-nm process, however, the incremental ExtremeFFS overhead will over time become less of a practical issue.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><b>System optimizations</b></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Solid-state units are currently shoehorning themselves into legacy hard-drive designs to leverage that technology’s huge market, thereby jump-starting the solid-state-storage ramp-up (Figure 3). But as solid-state drives become more prevalent and presumably, therefore, a from-the-start implementation choice, a carefully crafted software/hardware implementation can optimally benefit from flash memory’s unique capabilities. Consider, for example, common file-system operations, such as periodic automatic disk defragmentation, prefetching, file-location optimization, and system-side caching. These features all aim to compensate for hard drives’ head-relocation and platter-rotation latencies, which cause slow random read accesses. Neither of these latencies is a factor with solid-state drives. Eliminating such workarounds can consequently improve system cost, power consumption, and other key variables and can reduce flash-media cycling.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.ednasia.com/cmsimages/1003/1003pg24_f3.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="220" src="http://www.ednasia.com/cmsimages/1003/1003pg24_f3.gif" width="400" /></a></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Figure 3: Most of today’s solid-state drives, such as Intel’s X25 units, use conventional storage interfaces and will benefit from those interfaces’ evolutionary performance improvements (a). More revolutionary approaches migrate to alternative system interfaces with closer proximity to the CPU, such as Fusion-io’s approach with PCIe (b) and Spansion’s approach with DRAM (c).</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Microsoft’s latest Windows 7 operating system makes such adjustments when it detects a solid-state drive’s presence in a system using the same scheme it uses for assessing trim support (Reference 2). Trim cognizance extends beyond simple file-deletion operations to encompass the full range of related functions, such as partition formats and system snapshots. Avoiding random-location writes whenever possible to boost performance can benefit both hard-disk- and solid-state-drive technologies. Integrated file-compression support for flash-memory-housed data can reduce the per-bit cost gap between the technologies. Windows 7 and its peers also are more scrupulous about, for example, ensuring that partition- and file-location endpoints align with—rather than overlap—flash memory’s write-page boundaries. And solid-state drives may provide an opportunity to reduce the system DRAM’s budget requirement to less than it was in the hard-drive-centric past, thanks to solid-state’s fast-access—at least for reads—virtual-memory-paging scheme.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">System-hardware interfaces provide another opportunity for optimization. Except perhaps with extremely high-rotations-per-minute, enterprise-tailored units, hard drives tap the bandwidth capability of modern storage interfaces, such as 3-Gbps SATA (serial ATA) and SAS (serial attached SCSI), only when doing transfers to and from the drive’s RAM buffer. Solid-state drives conversely can make more meaningful use of the performance potential of SATA and SAS, and the two technologies’ performance gap will only increase in the upcoming 6-Gbps serial-storage-interface generation (Reference 3 and Reference 4). Similar disparities are likely with the upcoming 4.8-Gbps USB (Universal Serial Bus) Version 3 and with Intel’s embryonic Light Peak optical-interface technology.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">But why restrict yourself to a legacy storage interface at all? Companies such as Fusion-io have figured out that PCIe (Peripheral Component Interconnect Express)-based add-in cards can boost performance by moving the solid-state drive closer to the CPU with which it’s interacting. Giving the flash memory, either on a module or directly attached to the system board, a dedicated interface to the chip set affords an even closer linkage. Intel uses this approach with its Turbo memory cache, for example. The approach incurs a trade-off, however, in that it makes it more difficult for the end user to later alter the system-memory allocation. Alternatively, you can use the DRAM bus, as Intel’s 28F016XD flash memory attempted to do in the mid-1990s and as Spansion’s EcoRAM does today. In such a configuration, you might even be able to dispense with a dedicated flash-memory-controller chip, instead employing software running on the host CPU or circuitry within the chip set’s logic.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">Author Information<br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">By Brian Dipert, Senior Technical Editor, <a href="http://www.ednasia.com/article-25670-Asia.html">EDN</a></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">You can reach Senior Technical Editor Brian Dipert at 1-916-760-0159, bdipert@edn.com, and <a href="http://www.bdipert.com/">www.bdipert.com</a></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">References</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">1. Dipert, Brian, “Solid-state drives challenge hard disks,” EDN, Nov 13, 2008, pg 25.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">2. “Engineering Windows 7,” Microsoft Corp, 2009.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">3. Dipert, Brian, “Speedy simplicity: serial-storage interfaces,” EDN, Jan 22, 2004, pg 33, .</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;">4. Dipert, Brian: “Interface overkill? Is eSATA necessary for your next system design?” EDN, May 10, 2007, pg 48.</span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"><br />
</span></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-1372933001761370251.post-49008361599684325562010-02-19T16:26:00.003+05:302010-02-25T18:46:34.167+05:30Printing With A Pencil Stub<div class="separator" style="clear: both; text-align: center;"><a href="http://www.yankodesign.com/images/design_news/2010/02/03/pencil_printer.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="http://www.yankodesign.com/images/design_news/2010/02/03/pencil_printer.jpg" width="302" /></a></div><div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.yankodesign.com/images/design_news/2010/02/03/pencil_printer2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="http://www.yankodesign.com/images/design_news/2010/02/03/pencil_printer2.jpg" width="302" /></a></div><br />
<div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.yankodesign.com/images/design_news/2010/02/03/pencil_printer3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="http://www.yankodesign.com/images/design_news/2010/02/03/pencil_printer3.jpg" width="302" /></a></div><br />
<div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: left;"><a href="http://www.yankodesign.com/2010/02/04/printing-with-a-pencil-stub/">Source here</a></div><div class="separator" style="clear: both; text-align: left;"><br />
</div>Unknownnoreply@blogger.com2tag:blogger.com,1999:blog-1372933001761370251.post-90618333954311006362010-02-15T11:36:00.000+05:302010-02-15T11:36:05.896+05:30MAGENN AIR ROTOR SYSTEM (M.A.R.S.)<div style="text-align: justify;"><b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt; font-weight: bold;"><span class="Apple-style-span" style="font-family: arial, helvetica, sans-serif; font-size: 12px; font-weight: normal; line-height: 14px;"><span class="quotetext" style="color: black; font-family: times, serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">"There is enough energy in high altitude winds to power civilization 100 times over; and sooner or later, we're going to learn to tap into the power of winds and use it to run civilization."</span> Says Ken Caldeira, Professor of Global Ecology at the Carnegie Institution for Science. (Discovery Channel, Project Earth, Infinite Winds episode)</span></span></span></b></div><div style="text-align: justify;"><b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt; font-weight: bold;"><span class="Apple-style-span" style="font-family: arial, helvetica, sans-serif; font-size: 12px; font-weight: normal; line-height: 14px;"><br />
</span></span></span></b></div><div style="text-align: justify;"><b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt; font-weight: bold;"><span class="Apple-style-span" style="font-family: arial, helvetica, sans-serif; font-size: 12px; font-weight: normal; line-height: 14px;"><span class="Apple-style-span" style="font-size: 10px; line-height: 12px;"><h1 style="color: #75a6bb; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;">MAGENN AIR ROTOR SYSTEM (M.A.R.S.)</h1><div><br />
</div></span></span></span></span></b></div><div style="text-align: justify;"><b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt; font-weight: bold;"><span class="Apple-style-span" style="font-family: arial, helvetica, sans-serif; font-size: 12px; font-weight: normal; line-height: 14px;"><br />
</span></span></span></b></div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.magenn.com/images/inFlight.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/inFlight.jpg" /></a></div><div style="text-align: justify;"><b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt; font-weight: bold;"><span class="Apple-style-span" style="font-family: arial, helvetica, sans-serif; font-size: 12px; font-weight: normal; line-height: 14px;"><br />
</span></span></span></b></div><div style="text-align: justify;"><b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt; font-weight: bold;">Magenn Power's MARS</span></span></b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"> is a Wind Power Anywhere™ solution with distinct advantages over existing Conventional Wind Turbines and Diesel Generating Systems including: global deployment, lower costs, better operational performance, and greater environmental advantages.</span></span><span style="color: black; font-size: x-small;"><span style="color: black; font-size: 10pt;"> </span></span></div><span style="color: #333333; font-family: Arial; font-size: x-small;"><div style="text-align: justify;"><span class="Apple-style-span" style="color: black; font-family: 'Times New Roman'; font-size: medium;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;">MARS is a lighter-than- air tethered wind turbine that rotates about a horizontal axis in response to wind, generating electrical energy. This electrical energy is transferred down the 1000-foot tether for immediate use, or to a set of batteries for later use, or to the power grid. Helium sustains MARS and allows it to ascend to a higher altitude than traditional wind turbines. MARS captures the energy available in the 600 to 1000-foot low level and nocturnal jet streams that exist almost everywhere. MARS rotation also generates the "Magnus effect" which provides additional lift, keeps the MARS stabilized, and positions it within a very controlled and restricted location to adhere to FAA (Federal Aviation Administration) & Transport Canada guidelines.</span></span><span style="color: black; font-size: x-small;"><span style="color: black; font-size: 10pt;"> </span></span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="color: black; font-family: 'Times New Roman'; font-size: medium;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><br />
</span></span></span></div></span><b><div style="text-align: justify;"><span class="Apple-style-span" style="font-weight: normal;"><b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt; font-weight: bold;">The Advantages of MARS over Conventional Wind Turbines:</span></span></b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"> Wind Power Anywhere™ removes all placement limitations. Coast-line or off-shore locations are not necessary to capture higher speed winds. Reaching winds at 1,000-feet above ground level allow MARS to be installed closer to the grid. MARS is mobile and can be rapidly deployed, deflated, and redeployed without the need for towers or heavy cranes. MARS is bird and bat friendly with lower noise emissions and is capable of operating in a wider range of wind speeds - from 4 mph to greater than 60 mph.</span></span><span style="color: black; font-size: x-small;"><span style="color: black; font-size: 10pt;"> </span></span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-weight: normal;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><br />
</span></span></span></div></b><b><div style="text-align: justify;"><span class="Apple-style-span" style="font-weight: normal;"><b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt; font-weight: bold;">The Advantages of a MARS combined Wind and Diesel Solution over a Diesel Generator-only solution:</span></span></b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"> MARS can complement a diesel generator by offering a combined diesel-wind power solution that delivers power below 20 cents per kWh. This compares to a wide range of 25 cents to 99 cents per kWh for diesel-alone, reflecting the high fuel and transportation costs in remote areas. The MARS combined solution allows lower pollution and green house gas emissions. It also results in lower handling, transporting, and storage costs.</span></span><span style="color: black; font-size: x-small;"><span style="color: black; font-size: 10pt;"> </span></span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-weight: normal;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><br />
</span></span></span></div></b><b><div style="text-align: justify;"><span class="Apple-style-span" style="font-weight: normal;"><b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt; font-weight: bold;">MARS Target Markets:</span></span></b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"> Developing nations where infrastructure is limited or non existent; off-grid combined wind and diesel solutions for island nations, farms, remote areas, cell towers, exploration equipment, backup power & water pumps for natural gas mines; rapid deployment diesel & wind solutions (to include airdrop) to disaster areas for power to emergency and medical equipment, water pumps; on-grid applications for farms, factories, remote communities; and wind farm deployments.</span></span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-weight: normal;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><br />
</span></span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.magenn.com/images/marsIsTheFuture.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/marsIsTheFuture.jpg" /></a></div><div class="separator" style="clear: both; text-align: justify;"><br />
</div><div style="text-align: justify;"><span class="Apple-style-span" style="font-weight: normal;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><br />
</span></span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-weight: normal;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><br />
</span></span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-weight: normal;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><span class="Apple-style-span" style="color: black; font-family: 'Times New Roman'; font-size: medium;"><b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt; font-weight: bold;"><span class="Apple-style-span" style="font-family: arial, helvetica, sans-serif; font-size: 12px; font-weight: normal; line-height: 14px;"><span class="Apple-style-span" style="font-size: 10px; line-height: 12px;"><h1 style="color: #75a6bb; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;">TECHNOLOGY</h1><div><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.magenn.com/images/marsPrototype.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/marsPrototype.jpg" /></a></div><div><br />
</div><div style="text-align: center;"><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;">2009 MARS 10- 25kW Prototype (NOT FOR SALE)</span></div><div><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;"><br />
</span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.magenn.com/images/technology0.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/technology0.jpg" /></a></div><div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><br />
<a href="http://www.magenn.com/images/technology1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/technology1.jpg" /></a></div><div><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;"><br />
</span></div><div><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;">The Magenn Power Air Rotor System (MARS) is an innovative lighter-than- air tethered device that rotates about a horizontal axis in response to wind, efficiently generating clean renewable electrical energy at a lower cost than all competing systems. This electrical energy is transferred down the tether to a transformer at a ground station and then transferred to the electricity power grid. Helium (an inert non-reactive lighter than air gas) sustains the Air Rotor which ascends to an altitude for best winds and its rotation also causes the Magnus effect. This provides additional lift, keeps the device stabilized, keeps it positioned within a very controlled and restricted location, and causes it to pull up overhead rather than drift downwind on its tether.</span></span><span style="color: black; font-size: x-small;"><span style="color: black; font-size: 10pt;"> </span></span></span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.magenn.com/images/Magenn2DAnimation.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/Magenn2DAnimation.gif" /></a></div><div><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><br />
</span></span></span></span></div><div><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><br />
</span></span></span></span></div><div><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;">All competing wind generators use bladed two-dimensional disk-like structures and rigid towers. The Magenn Power Air Rotor system is a closed three-dimensional structure (cylinder). It offers high torque, low starting speeds, and superior overall efficiency thanks to its ability to deploy higher. The closed structure allows Magenn Power to produce wind rotors from very small to very large sizes at a fraction of the cost of current wind generators.</span></span><span style="color: black; font-size: x-small;"><span style="color: black; font-size: 10pt;"> </span></span></span></span></span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.magenn.com/images/technology3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/technology3.jpg" /></a></div><div><span class="Apple-style-span" style="font-size: small;"><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><br />
<div> <div> <div><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;">The distinct advantages of the Magenn Air Rotor System design are as follows:</span></span><span style="color: black; font-size: x-small;"><span style="color: black; font-size: 10pt;"> </span></span></div></div></div><ul type="disc"><li><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;">Magenn Air Rotor System is less expensive per unit of actual electrical energy output than competing wind power systems. </span></span> </li>
<li><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;">Magenn Power Air Rotor System will deliver time-averaged output much closer to its rated capacity than the capacity factor typical with conventional designs. Magenn efficiency will be 40 to 50 percent. This is hugely important, since doubling capacity factor cuts the cost of each delivered watt by half. </span></span> </li>
<li><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;">Wind farms can be placed closer to demand centers, reducing transmission line costs and transmission line loses. </span></span> </li>
<li><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;">Conventional wind generators are only operable in wind speeds between 3 meters/sec and 28 meters/sec. Magenn Air Rotors are operable between 1 meter/sec and in excess of 28 meters/sec. </span></span> </li>
<li><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;">Magenn Air Rotors can be raised to higher altitudes, thus capitalizing on higher winds aloft. Altitudes from 400-ft to 1,000-ft above ground level are possible, without having to build an expensive tower, or use a crane to perform maintenance. </span></span> </li>
<li><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;">Magenn Air Rotors are mobile and can be easily moved to different locations to correspond to changing wind patterns. Mobility is also useful in emergency deployment and disaster relief situations. </span></span></li>
</ul><div> <div><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;">These points are mutually inclusive. The advantages above combine to make Magenn the most cost-effective wind electrical generation system. </span></span></div></div></span></span></span></span></span></span></div><div><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;"><br />
</span></div><div><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;"><br />
</span></div><div><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;"><span class="Apple-style-span" style="color: black; font-family: 'Times New Roman'; font-size: medium; line-height: normal;"><b><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt; font-weight: bold;"><span class="Apple-style-span" style="font-family: arial, helvetica, sans-serif; font-size: 12px; font-weight: normal; line-height: 14px;"><span class="Apple-style-span" style="font-size: 10px; line-height: 12px;"><h1 style="color: #75a6bb; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"><b><div style="display: inline !important; text-align: justify;"><b><div style="display: inline !important;"><b>APPLICATIONS</b></div></b></div></b> : WIND POWER ANYWHERE</h1><div><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="http://www.magenn.com/images/marsMiniGrid.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/marsMiniGrid.jpg" /></a></div><div><br />
</div><div><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;">MAGENN technology will be applied off-grid and mini-grid; combined with diesel power for developing nations, island nations, farms, remote areas, cell towers, exploration equipment, oil and gas wells, mining sites, offshore drilling stations, and backup power & water pumps. MAGENN rotors could also be used for on-grid applications for farms, factories, and remote communities.</span></div><div><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;"><br />
</span></div><div><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;"><span class="Apple-style-span" style="font-size: 10px; line-height: 12px;"><h3 style="color: #999999; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 2px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;">Mine Site:</h3><div class="separator" style="clear: both; text-align: center;"><a href="http://www.magenn.com/images/app_minesite.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/app_minesite.jpg" /></a></div><div><br />
</div><div><h3 style="color: #999999; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 2px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"><br />
</h3><h3 style="color: #999999; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 2px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;">Oil Rig:</h3><div class="separator" style="clear: both; text-align: center;"><a href="http://www.magenn.com/images/app_oilrig.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/app_oilrig.jpg" /></a></div><div><br />
</div><div><h3 style="color: #999999; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 2px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"><br />
</h3><h3 style="color: #999999; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 2px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;">Remote Exploration:</h3><div class="separator" style="clear: both; text-align: center;"><a href="http://www.magenn.com/images/app_remoteexploration.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/app_remoteexploration.jpg" /></a></div><div><br />
</div><div><h3 style="color: #999999; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 2px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"><br />
</h3><h3 style="color: #999999; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 2px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;">Remote Islands:</h3><div class="separator" style="clear: both; text-align: center;"><a href="http://www.magenn.com/images/app_remoteislands.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/app_remoteislands.jpg" /></a></div><div><br />
</div><div><h3 style="color: #999999; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 2px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"><br />
</h3><h3 style="color: #999999; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 2px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;">Barge:</h3><div class="separator" style="clear: both; text-align: center;"><a href="http://www.magenn.com/images/app_barge.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/app_barge.jpg" /></a></div><div><br />
</div><div><h3 style="color: #999999; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 2px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"><br />
</h3><h3 style="color: #999999; font-family: arial, helvetica, sans-serif; font-size: 14px; font-weight: bold; line-height: 1.2; margin-bottom: 2px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;">Future Magenn Air Rotor System (MARS) Wind Farm:</h3><div class="separator" style="clear: both; text-align: center;"><a href="http://www.magenn.com/images/app_windfarm.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.magenn.com/images/app_windfarm.jpg" /></a></div><div><br />
</div></div></div></div></div></div></span></span></div></span></span></span></span></b></span></span></div><div><span class="Apple-style-span" style="font-size: 12px; line-height: 14px;"><br />
</span></div></span></span></span></span></b></span></span></span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-weight: normal;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><br />
</span></span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-weight: normal;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;">For more details <span class="Apple-style-span" style="color: black; font-family: 'Times New Roman'; font-size: medium;"><b><a href="http://www.magenn.com/">http://www.magenn.com/</a></b></span></span></span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-weight: normal;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><span class="Apple-style-span" style="color: black; font-family: 'Times New Roman'; font-size: medium;"><br />
</span></span></span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-weight: normal;"><span style="color: #333333; font-family: Arial; font-size: x-small;"><span style="color: #333333; font-family: Arial; font-size: 10pt;"><span class="Apple-style-span" style="color: black; font-family: 'Times New Roman'; font-size: medium;"><br />
</span></span></span></span></div></b>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-1372933001761370251.post-71394602561448160532010-02-05T16:07:00.001+05:302010-02-05T16:10:02.561+05:30Lectures on Probability and statistical signal processing<center><br />
<h1 style="text-align: justify;">Text Book</h1><h1></h1><h1><span class="Apple-style-span"><span class="Apple-style-span" style="font-size: 32px;"><span class="Apple-style-span" style="color: #0b5394;">An Introduction to Statistical Signal Processing</span></span></span></h1><h1 style="text-align: justify;"><a href="http://www-ee.stanford.edu/~gray/sp.pdf">Download</a></h1><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: center;"><span class="Apple-style-span" style="font-size: x-large;">Courses on the following Topics</span></div><div><br />
</div><div><br />
</div><h1><a href="http://www.stanford.edu/class/ee178/handouts.html">Probabilistic Systems Analysis</a></h1></center><br />
<br />
<hr /><br />
<br />
<hr /><h3>Lectures</h3>Slides are pdf files, two slides to a page.<strong></strong><br />
<strong></strong><br />
<strong><ul><li><a href="http://www.stanford.edu/class/ee178/lect00x2.pdf">Lecture Notes 0</a> Course Introduction </li>
<li><a href="http://www.stanford.edu/class/ee178/lect01x2.pdf">Lecture Notes 1</a> Basic Probability</li>
<li><a href="http://www.stanford.edu/class/ee178/lect02x2.pdf">Lecture Notes 2</a> Random Variables</li>
<li><a href="http://www.stanford.edu/class/ee178/lect03x2.pdf">Lecture Notes 3</a> Multiple Random Variables </li>
<li><a href="http://www.stanford.edu/class/ee178/lect04x2.pdf">Lecture Notes 4</a> Expectation </li>
<li><a href="http://www.stanford.edu/class/ee178/lect05x2.pdf">Lecture Notes 5</a> Transforms </li>
<li><a href="http://www.stanford.edu/class/ee178/lect06x2.pdf">Lecture Notes 6</a> Limit Theorems </li>
<li><a href="http://www.stanford.edu/class/ee178/lect07x2.pdf">Lecture Notes 7</a> Random Processes </li>
</ul><div><br />
</div><div><span class="Apple-style-span" style="font-weight: normal;"></span><br />
<span class="Apple-style-span" style="font-weight: normal;"><center><br />
<h1><a href="http://www.stanford.edu/class/ee102a/handouts.html">Signal Processing and Linear Systems I</a></h1></center><br />
<br />
<br />
<hr /><br />
<br />
<br />
<ul></ul><hr /><ul><h3></h3></ul><ul><h3>Lectures</h3>Slides are pdf files, four slides to a page.
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture1x4.pdf">Lecture 1</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture2x4.pdf">Lecture 2</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture3x4.pdf">Lecture 3</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture4x4.pdf">Lecture 4</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture4supplx4.pdf">Lecture 4 Supplement on time invariance</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture5x4.pdf">Lecture 5</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture5supplementx4.pdf">Lecture 5 Supplement on Extended Linearity and Superposition</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture6x4.pdf">Lecture 6</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture7x4.pdf">Lecture 7</a></strong>
<strong><a href="http://www.stanford.edu/class/ee102a/lecture7x4.pdf"></a> <img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture8x4.pdf">Lecture 8</a></strong>
<strong><a href="http://www.stanford.edu/class/ee102a/lecture8x4.pdf"></a> <img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture9x4.pdf">Lecture 9</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture10x4.pdf">Lecture 10</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture11x4.pdf">Lecture 11</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture12x4.pdf">Lecture 12</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture13x4.pdf">Lecture 13</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture14x4.pdf">Lecture 14</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture15x4.pdf">Lecture 15</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture16x4.pdf">Lecture 16</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture17x4.pdf">Lecture 17</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture18x4.pdf">Lecture 18</a> </strong>
<strong><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/lecture19x4.pdf">Lecture 19</a></strong></ul><strong></strong><br />
<strong><ul><h3>Applications Lectures</h3><img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/radar_introx4.pdf">Applications 1: Introduction to Radar</a>
<img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/cdma_introx4.pdf">Applications 2: Introduction to Spread Spectrum</a>
<img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/dopplerx4.pdf">Applications 3: Doppler Ultrasound</a>
<img alt="*" src="http://www.stanford.edu/class/ee102a/ball.blue.gif" /> <a href="http://www.stanford.edu/class/ee102a/dopplerx4.pdf">Applications 5: Beamforming</a></ul><div><br />
</div></strong></span></div></strong>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-1372933001761370251.post-85236179276667368142009-01-27T10:54:00.003+05:302009-12-29T09:30:07.032+05:30Hardware Description Languages<div style="text-align: center;"><span style="font-weight: bold;"><span style="font-size: large;">What is an HDL? </span></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-weight: bold;">HDL(Hardware Description Language)</span>:- A hardware description language or HDL is any language from a class of computer languages for formal description of electronic circuits. It can describe the circuit's operation, its design, and tests to verify its operation by means of simulation.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">HDL’s are used to write specifications of some piece of hardware.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">HDL specifies a model for the expected behaviour of a circuit before that circuit is designed and built. The end result is a silicon chip that would be manufactured in a fab.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">A simulation program, designed to implement the underlying semantics of the language statements, coupled with simulating the progress of time, provides the hardware designer with the ability to model a piece of hardware before it is physically created.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">HDL’s find applications in Programmable Logic Devices (PLD’s) - simple PLD’s to complex PLD’s like CPLD (Complex Programmable Gate Array), FPGA (Field Programmable Gate Array) etc.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">HDLs in use today – ABEL, PALASM, CUPL for less complex devices; VHDL, Verilog for larger CPLD & FPGA devices.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Two applications of HDL processing: Simulation and Synthesis.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Thanks to Moore’s Law, the number of programmable logic gates (e.g. AND gates, NAND gates, etc) in today’s chips are now in the millions.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">With such electronic capacities on a single chip, it is now possible to place whole electronic systems on a chip.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Using HDL’s it is almost as easy to program hardware as to program software. But, one needs to understand the principles of digital electronic design (e.g. multiplexer’s, flip-flop’s, buffer’s, counter’s, etc).<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: center;"><span style="font-weight: bold;"><span style="font-size: large;">Why simulate first?</span></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Physical bread-boarding is not possible as designs reach higher levels of integration.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">A simulator interprets the HDL description and produces a readable output, such as a timing diagram, that predicts how the hardware will behave before it is actually fabricated.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Simulation allows the detection of functional errors in a design without having to physically create the circuit.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><div style="text-align: center;"><span style="font-weight: bold;"><span style="font-size: large;">Logic Simulation</span></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">The stimulus that tests the functionality of the design is called a test bench.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">To simulate, the design is first described in HDL, verified by simulating the design and checking it with a test bench which is also written in HDL.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Logic simulation is a fast, accurate method of analyzing a circuit by checking functionality using waveforms<br />
</div></div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: center;"><span style="font-size: x-large;"><span style="font-weight: bold;">HDL’s in demand today</span></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;">Two standard HDL’s that are supported by IEEE.<br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><ul><li><span style="font-weight: bold;">VHDL</span> (<span style="font-weight: bold;">V</span>ery-High-Speed Integrated Circuit <span style="font-weight: bold;">H</span>ardware <span style="font-weight: bold;">D</span>escription <span style="font-weight: bold;">L</span>anguage) – Sometimes referred to as VHSIC HDL, this was developed from an initiative by US. Dept. of Defense.<br />
</li>
<li><span style="font-weight: bold;">Verilog</span> HDL – developed by Cadence Design Systems and later transferred to a consortium called Open Verilog International (OVI).<br />
</li>
</ul></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-1372933001761370251.post-35796140064035701732009-12-22T16:17:00.001+05:302009-12-22T16:21:33.746+05:30Course on Computer Concepts (CCC)<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSTB5ZZ0e-bluw4XUFBVMLsjilA9CILmAUpiZucD7t98HgdjjhvxX_ZEAUgKkNYEC2hJxPAf90p_4QaOI86VHD-fp7BlkKmprwoxL9u_7FQFI1n7o9jn2LI8TD53i25Isc6ASMjDdECzBS/s1600-h/ClassComputer.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSTB5ZZ0e-bluw4XUFBVMLsjilA9CILmAUpiZucD7t98HgdjjhvxX_ZEAUgKkNYEC2hJxPAf90p_4QaOI86VHD-fp7BlkKmprwoxL9u_7FQFI1n7o9jn2LI8TD53i25Isc6ASMjDdECzBS/s320/ClassComputer.jpg" /></a><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span><br />
</div><div style="text-align: justify;"><span style="font-family: Verdana, sans-serif;">This course is designed to aim at imparting <span class="Apple-style-span" style="background-color: lime;">a basic level IT Literacy programme for the common man</span>. This programme has essentially been conceived with an idea of giving an opportunity to the common man to attain computer literacy thereby contributing to increased and speedy PC penetration in different walks of life. </span></div><div style="text-align: justify;"><span style="font-family: Verdana, sans-serif;"><br />
</span></div><div style="text-align: justify;"><span style="font-family: Verdana, sans-serif;">After completing the course the incumbent should be able to the use the computer for basic purposes of preparing his personnel/business letters, viewing information on internet (the web), receiving and sending mails, preparing his business presentations, preparing small databases etc. This helps the small business communities, housewives, etc. to maintain their small accounts using the computers and enjoy in the world of Information Technology. This course is, therefore, designed to be more practical oriented.</span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span><br />
</div><div style="text-align: justify;"><span style="font-family: Verdana, sans-serif;">Please register</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><b><a href="http://202.141.141.147/login/index.php"><span style="color: red;">CLICK HERE</span></a> for webinar</b></span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><b><br />
</b></span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><b><a href="http://www.doeacc.edu.in/ccc_material/index.html"><span style="color: red;">CLICK HERE</span></a><span style="color: red;"> </span>for materials</b></span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><b><br />
</b></span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><b>powered by <a href="http://www.doeacc.edu.in/index.jsp"><span style="color: lime;"><span class="Apple-style-span" style="background-color: black;">DOEACC</span></span></a></b></span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><b><br />
</b></span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span><br />
</div>Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-1372933001761370251.post-38413341885258139772009-09-29T16:59:00.003+05:302009-10-29T10:15:39.497+05:30Setup and Hold times<div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">Many designers are familiar with setup and hold time definitions - however, few can identify correctly the launch and capture edges and the slack/violation between two flops during timing analysis. In this post, we will cover setup/hold times in a design with clear examples.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><strong>Setup time</strong> is defined as the minimum amount of time BEFORE the clock’s active edge by which the data must be stable for it to be latched correctly. Any violation in this minimum required time causes incorrect data to be captured and is known as setup violation.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><strong>Hold time</strong> is defined as the minimum amount of time AFTER the clock’s active edge during which the data must be stable. Any violation in this required time causes incorrect data to be latched and is known as hold violation.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">The setup time in a design determines the maximum frequency at which the chip can run without any timing failures. Factors affecting the setup analysis are the clock period Tclk, Clock to Q propagation delay of the launch flop Tck->q, negative clock skew Tskew, required setup time of the capture flop Tfs and combinational logic delay Tcomb between the two flops being timed. The following condition must be satisfied.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: center;"><span style="font-family: Georgia, 'Times New Roman', serif;"><strong>Tfs <= Tclk – Tck->q – Tskew – Tcomb</strong></span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">Hold analysis depends on the Tck->q, combinational logic delay, the clock skew and the hold time requirement Tfh of the capture flop. It is independent of the frequency of the clock. The condition below must be satisfied.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: center;"><span style="font-family: Georgia, 'Times New Roman', serif;"><strong>Tck->q + Tskew + Tcomb >= Tfh</strong></span><br />
</div><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
<div style="text-align: justify;"><br />
</div><br />
<div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">Consider the figure below depicting a flop to flop path in the same domain with some combinational logic between them. We will now calculate the setup and hold time slacks in the design based on the given timing parameters.</span><br />
</div><div style="text-align: justify;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><img border="0" height="321" iq="true" src="http://nigamanth.net/vlsi/wp-content/uploads/2007/09/setup_hold_1.gif" width="420" /><br />
</div><div style="text-align: center;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span> <span style="color: #0c343d; font-family: Georgia, 'Times New Roman', serif;">Setup and Hold time illustration - Full cycle transfer</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
</div><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
<div style="text-align: justify;"><br />
</div><br />
<div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">For setup checks in single cycle paths, the clock edges that are relevant is shown in the Figure above. The data required time for the capture flop B to meet setup is</span><br />
</div><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
<div style="text-align: justify;"><br />
</div><br />
<div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><strong>Data Required time</strong> = (Clock Period + Clock Insertion Delay + Clock Skew - Setup time of the flop) = 8 + 2 + 0.25 -0.1 = 10.15 ns</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">The data arrival time from the launch flop is</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><strong>Data Arrival time</strong> = (Clock Insertion Delay + CK->Q Delay of the launch flop + Combinational logic Delay) = 2 + 0.1 + 5 = 7.1 ns.</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">Setup slack is</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: center;"><span style="color: #274e13; font-family: Georgia, 'Times New Roman', serif;"><strong>Setup Margin = Data Required Time - Data Arrival Time = 10.15 - 7.10 = 3.05 ns</strong></span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">Similarly for hold checks assuming the hold time requirement of the flop B is 100 ps, the data expected time is</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">Data expected time = (Clock Insertion Delay + Clock skew + Hold time requirement of flop) = 2 + 0.25 +0.1 = 2.35 ns.</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">So the hold time slack is</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: center;"><span style="color: #073763; font-family: Georgia, 'Times New Roman', serif;"><strong>Hold Margin = Data Arrival time - Data expected time = 7.10 - 2.35 = 4.85 ns</strong></span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">Consider the case where the clock to flop B is inverted (or that the flop is negative edge trigerred). In this particular case, the relevant edges for setup/hold are as shown in the figure below.</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span><span style="font-family: Georgia, 'Times New Roman', serif;"></span><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="http://nigamanth.net/vlsi/wp-content/uploads/2007/09/setup_hold_2.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="310" iq="true" src="http://nigamanth.net/vlsi/wp-content/uploads/2007/09/setup_hold_2.gif" width="420" /></a><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
</div><div style="text-align: center;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="color: #0b5394;">Setup and Hold time illustration - Half cycle transfer</span><br />
</span><br />
<div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">In this scenario, the setup margin considering all the other parameters to be the same is</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">Data Required time = (half_clock_period + clock insertion delay + Ck->Q delay of flop A - Setup time required for flop B) = 4 + 2 + 0.25 -0.1 = 6.15 ns</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">Since the Data Arrival time remains the same, there is a setup violation of</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span><br />
</div><div style="text-align: center;"><span style="color: #20124d; font-family: Georgia, 'Times New Roman', serif;"><strong>Setup violation = 6.15 ns - 7.10 ns = -1.05 ns</strong></span><br />
</div><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
<span style="font-family: Georgia, 'Times New Roman', serif;"><div style="text-align: justify;"><br />
</div></span><br />
<div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;">There is no hold violation since the data arrival time remains the time but the data expected time is any time after (Clock skew + Hold time requirement of flop B)</span><br />
</div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span><br />
</div><div style="text-align: center;"><span style="color: #4c1130; font-family: Georgia, 'Times New Roman', serif;"><strong>Data expected time = 0.25 + 0.1 = 0.35 ns</strong></span><br />
</div><span style="font-family: Georgia, 'Times New Roman', serif;"></span><br />
<span style="font-family: Georgia, 'Times New Roman', serif;"><div align="center" style="text-align: justify;"><br />
</div></span><span style="font-family: Georgia, 'Times New Roman', serif;"><strong></strong></span><br />
<div style="text-align: center;"><span style="font-family: Georgia, 'Times New Roman', serif;"><strong><span style="color: #274e13;">Hold Margin = 7.10 - 0.35 = 6.75 ns</span></strong><br />
</span><br />
</div><br />
<div style="text-align: justify;"><br />
</div><div style="text-align: justify;">courtesy : <a href="http://nigamanth.net/vlsi/2007/09/13/setup-and-hold-times/">http://nigamanth.net/vlsi/2007/09/13/setup-and-hold-times/</a><br />
</div><div style="text-align: justify;"><br />
</div></div>Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-1372933001761370251.post-16995167820379331122009-10-19T11:06:00.001+05:302009-10-19T11:10:00.422+05:30Tee up your multiprocessing options<div align="justify"><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">Vendors categorize single-processor architectures by the types of applications they target. For example, microcontrollers, DSPs, network processors, and DSCs (digital-signal controllers) employ different implementations to meet the needs of their target domains. Classifying processors at this top level enables designers to quickly identify candidate processors without delving into the implementation details of every processor. Differences in implementation details within a processor category become differentiators with a much shorter list of candidates as a result. Categorizing processors in this way allows different versions of each type of processor, such as low-power DSPs and microcontrollers, to use the same implementation techniques without letting that implementation feature confuse what the target is. This issue is one of the points of confusion affecting a contemporary multicore taxonomy.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">Another point of confusion is that the term multicore has a different meaning depending on who is using it. One use of the term describes multiple processors within a system. Another use constrains the multiple cores to one package, and yet another usage further constrains the multiple cores to one die. People also use the term to refer to identical cores or heterogeneous cores in each of these contexts. These usages fail to converge on one meaning, even though these differences, in many cases, are basically transparent to the software-development effort. This article uses the loosest interpretation of multicore because a chip-level implementation today was a board-level implementation yesterday, and that difference does not change how you build the software. Less transparent to the software-development effort, however, is the application domain; each type of processing, most of which the single-core taxonomy captures, requires different analysis and programming knowledge, and different tools and libraries serve them.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">Some multicore processors place their primary focus on performance by stating how many cores they support, how much bandwidth they can handle, and whether they support SMP (symmetrical-multiprocessing) and AMP (asymmetrical-multiprocessing) configurations. As relevant, they also disclose information about coherency mechanisms, shared-data performance, multithreading support, operating-system support, and the ability to balance workloads between cores. You may have to infer the target application and the favored trade-offs from the information the vendor offers.</span><br />
</div><br />
<span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"></span><br />
<div class="separator" style="clear: both; text-align: center;"><a href="http://www.ednasia.com/cmsimages/0910/0910pg19_f1.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://www.ednasia.com/cmsimages/0910/0910pg19_f1.gif" vr="true" /></a><br />
</div><br />
<div align="justify"><br />
</div><br />
<div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">In contrast, some multicore offerings, similar to single-core offerings, place their primary focus on identifying their target application, which is often digital media, networking, wireless infrastructure, and servers. They then get into the implementation details, such as coherency or processor interconnects, to differentiate them from other similar multicore offerings. However, multiprocessing is not limited to this short list of applications. Embedded-system designers have for decades been quietly and successfully implementing multicore designs. To understand how a more-inclusive multicore taxonomy might look, you should explore a taxonomy for single-core architectures and how you might extend it to incorporate multicore offerings.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">Each of the single-core processor architectures available best fits into a sweet spot of processing complexity (Figure 1). Although each type of processor can perform other types of processing, they are best at the type of processing that the target needs the most. The proposed primary characteristics for mapping each processing sweet spot are computational load and number of states, or contexts. Both of these characteristics are measures of complexity. Computational load can indicate the peak magnitude, total amount, or sustained amount of processing performance the system needs within a system cycle. The number of states can indicate internal system states, number of system inputs and outputs, or a level of possible states or contexts that the system must support. The reason for proposing loose definitions for these characteristics is to rein in complexity and accommodate the range of processing scenarios that include managing scalar data or control flows, managing aggregate data or control flows, and managing many channels of scalar or aggregate data or control flows. Each of these characteristics is implementation-independent and permits an orthogonal differentiation for each type of processor. Each of these processor types evolved over time at different rates, and each trades one or more measures of performance to maximize one or more other measures of performance.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="color: #0b5394; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><strong>Sweet spots</strong></span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">Microcontrollers are specialized processors that offer a cost and power-efficiency advantage at the expense of flexibility and processing performance. They provide a cost advantage by incorporating memories and peripherals in the same package. They provide a power-consumption advantage partly because they support lower clock rates and partly because they implement only the minimum set of circuitry to perform control processing. If a design needs the flexibility of a larger or a smaller memory, different peripheral set, or higher clock rate, the design must swap out the processor for another. To accommodate this change, processor vendors offer families of devices with many variations of the same microcontroller that include differing amounts of memory, peripheral sets, and supported clock rates so that developers can realize the best cost and power efficiency without losing flexibility.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">The processing sweet spot for microcontrollers is systems that must respond—often deterministically—to external real-world events, such as for motor control, with tight latency requirements. Microcontrollers are capable of rapid, frequent, and prioritized context switching; they usually can also handle many different contexts. A common differentiation for handling context switching includes employing specialized hardware-interrupt processing that can sense and react to external events and change the microcontroller's internal context within a few clock cycles. Alternatively, the system can avoid context-switching overhead by using peripheral-to-peripheral communication coprocessors that are independent of the processor core. Some microcontrollers differentiate for deterministic operation by not using caches or pipelines, so as to avoid the uncertainty from stalls during cache misses or pipeline flushes.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">Microcontroller suppliers differentiate their devices with features such as vertically appropriate peripheral sets, on-chip memories, a range of clock rates, packaging options, power-management options, deterministic operation, and development support. Because projects that include microcontrollers are often cost-sensitive, it is important to include only the necessary peripherals and amount of on-chip memory to complete the project. To support higher clock rates, microcontroller suppliers can employ many techniques, such as wide data buses, to mask the access latency to on-chip flash memory. Some of these approaches focus on burst/peak performance versus sustained performance before encountering a wait state. Power management is common in microcontrollers with many ways to implement sleep and low-power modes that have varying granularity for turning off parts of the processor's resources. Each of these differentiations is an example of implementation details that do not change the primary function of the microcontroller but enable it to compete with other microcontrollers.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">Software development with microcontrollers often involves open- or closed-loop control algorithms as well as filtering of real-world inputs. Microcontrollers are common in board- and system-level multicore embedded designs in which they find use in distributed or periodic system monitoring, distributed control, management of simple user interfaces, and even low-power-supervisory functions to power up and down more expensive parts of the system. They are also present in some multicore chips alongside a DSP as an efficient way to complement the strengths and weaknesses of the DSP architecture.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">DSPs are similar to microcontrollers in that they offer advantages in cost and power efficiency at the expense of flexibility and processing performance. However, they substantially differ from microcontrollers because they sacrifice efficiency in handling context switching to maximize their performance of continuous and repetitive calculations, such as in most signal-processing tasks. They also do not integrate many peripherals because they are not ideally structured to handle the context switching that handling many peripherals could require. The most common integrated peripheral is an ADC that the DSP uses to collect a stream of real-world data to process. DSPs often support fixed-point operations to optimize the performance and energy efficiency for fractional mathematics, and they use special address generators to optimize algorithms that work on arrays, circular buffers, or even bit-reversed values. They employ multiple buses and memory structures so that they can do simultaneous memory operations to support continuous single-cycle MAC (multiply/accumulate) operations. They may employ specialized registers to minimize memory accesses and to enable zero-overhead looping.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">The processing sweet spot for DSPs is systems that process continuous and sustained streams of data, especially if there is extensive computational processing on that data stream. The upper limit of this sweet spot overlaps with FPGAs, except for highly computationally intensive algorithms that include a high level of state or decision complexity. VOIP (voice over Internet Protocol) is an algorithm that would work better on a DSP than as an FPGA-only implementation because the domain-specific knowledge for compressing data involves many control states and decisions. Software development with DSPs usually requires an understanding of signal-processing algorithms. Many application- and domain-specific analysis and development tools and libraries are available to assist developers with their DSP applications.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">DSP suppliers can differentiate their devices by including application-specific hardware accelerators or by implementing a SIMD (single-instruction/multiple-data) or VLIW (very-long-instruction-word) architecture that supports the simultaneous operation of multiple execution units. Contemporary DSPs use orthogonal instruction sets so that software developers can use compiled C, rather than assembly, to program most of the code. Programming signal-processing code requires different experience and skills from those for developing control or application code. An important differentiator for DSPs is access to signal-processing libraries that either help jump-start a project or enable an application- or control-software developer to use the DSP as a coprocessor without understanding how to program those algorithms.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">DSPs commonly find use in embedded-multicore designs; designers often pair them with a complementary microcontroller or microprocessor for control- and application-level support. They also often combine them with hardware accelerators or FPGAs to perform heavy lifting for intensive computational processing. Another common multicore configuration involves a cluster or array of DSP cores that work together on multiple streams of data or wide streams of data, such as for image processing. The arrays of DSPs can involve dozens of cores that connect at the board level. A lot of experimentation with multicore-DSP configurations has occurred over the years. The commercial failure—versus obsolescence—of many of those attempts serves as a reminder that chip-level multicore offerings have to balance between technological advantage and serving a set of applications that generate enough volume to support the device.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">DSCs are new to this taxonomy; most of the market in 2007 formally acknowledged them as separate types of processor. Before then, market participants usually referred to them as “hybrid,” or “unified,” processors because they combined features of DSPs and microcontrollers in a single processor. The processing sweet spot for DSCs focuses on applications that must handle a fair amount of not only context switching, but also signal processing. These devices can alleviate the need to use two heterogeneous cores—a microcontroller and a DSP, for example—in a design. This approach can lower the system BOM (bill-of-materials) cost, and it can lower the development-tools cost because software developers can use the same development tools to program the system. The software developer still must understand the details of programming control or signal-processing algorithms, however.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">Because DSCs are relatively new, designers do not have a rich base of experience in implementing them in multicore designs. An early motivation for developing DSCs was to replace multicore designs involving a microcontroller and a DSP with a single device executing a single instruction thread that included both signal-processing and control code. Dual DSCs are now available as single chips. One rationale for using multiple DSCs in a design is that you could normally use one core as a control processor and the other as a signal processor. When one function heavily outweighs the other function, however, the system can more easily perform load balancing between the cores because all of the cores can support both types of processing.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">FPGAs provide a programmable platform that can leverage arbitrarily wide signal-processing algorithms acting as hardware-acceleration blocks. This feature gives them an advantage over DSPs when the signal-processing algorithm is sufficiently wide enough that it can efficiently use more than the available processing units in the DSP. FPGA signal-processing blocks work well when they involve few decision states and large amounts of processing per data point. As the number of decision states increases in an algorithm, it can make sense to place one or more processor cores in or next to the FPGA fabric. FPGA signal-processing implementations function well as coprocessors or accelerators next to a DSP, a microprocessor, or both.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">Another processing option is to employ specialized hardware blocks or processors that accelerate software functions. These blocks or processors are usually not stand-alone, instead typically connecting to another processor, such as a DSP or a microprocessor. Some processor vendors integrate these specialized hardware blocks as coprocessors into the same device and even into the instruction-pipeline flow to differentiate their devices. Besides the quick and energy-efficient performance of some tasks, hardware accelerators help offload computational load from the main processor, thus freeing that processing capacity for some other differentiating function. This taxonomy currently lumps network, graphic, and video processors in with the hardware-accelerator and coprocessor category. These types of accelerators are usually not stand-alone systems, and, when they are stand-alone, they exist in a multicore structure, and the proposed multicore categories encompass them. Please contribute to the companion blog post for this article to expand on these architectures or add any others.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">Microprocessors round out the taxonomy. They employ general-purpose architectures that enable them to perform well enough across the range of processing tasks. They do not handle context switching as quickly or deterministically as microcontrollers do because they usually employ software within the interrupt handling. They do not handle looped processing as quickly or efficiently as DSPs do because they usually neither include zero-overhead looping nor employ the bus and memory structures to keep a single-cycle MAC busy every cycle. Microprocessors are ideal when the processing requirements that the system must support are not well-known, such as when the system supports user-loaded applications.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">Microprocessors generally support large memory-address spaces and rely on large on-chip caches to compensate for time penalties from off-chip memory accesses. They can execute complex operating systems and support a range of legacy code. Microprocessors are also appropriate for “quick and dirty” prototyping and proof-of-concept exploration when cost and energy efficiency are less important than a short development cycle.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">The sweet spot for microprocessors is to support systems that exhibit significant uncertainty in processing behavior and loads, such as when executing disparate processing threads over the same processor resources. A microprocessor's flexibility and operating-system abstractions of the hardware peripherals make them ideal for the development of sophisticated user interfaces and high-level application code. Microprocessors can perform most functions—at higher cost and energy consumption—that the other specialized processor architectures can perform. Using a microprocessor for control or signal-processing tasks can make sense if the design needs a microprocessor anyway and there is sufficient head room to accommodate the processing; otherwise, for embedded systems, designers may migrate well-defined tasks to the appropriate specialized processor to save cost and energy consumption.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">Multicore-microprocessor designs include desktops and servers. As cell phones evolve to include sophisticated graphics and user interfaces, microprocessors and graphics accelerators are supplanting the microcontrollers that sit next to the DSP that handles the signal processing in these devices. In all of these cases, each processor architecture has use cases for single-core and multicore designs, and, in many cases, the multicore-use cases involve combining processor architectures so that they complement each other.</span><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="color: #0b5394; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><strong>Multicore</strong></span><br />
</div><div align="justify"><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">This taxonomy highlights the major single-core architectures and the distinct development ecosystems that exist for each type of processing architecture. Each ecosystem includes its own silicon offerings, domain-specific analysis and development tools, and libraries that abstract some of the complexity for those developers who specialize in the other types of processing. Perhaps looking at multicore offerings in a similar fashion will help our industry address a problem that still seems intractable. A number of companies have come and gone that offered their vision of a multicore architecture. Were they off-base, or were they just missing a single component that could have made all the difference for success?</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">Multicore terminology is not standard; this article proposes a couple of multicore-configuration names. The terminology instead attempts to propose functional-level descriptions for multicore architectures. A developer should be able to incorporate one or more of these types of multicore architectures in the same design, much as many embedded designs incorporate more than one type of processor architecture.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><strong><span style="color: #38761d;">Channel-multicore architectures</span></strong> target the parallel nature of some applications, such as infrastructure-networking equipment, which apply the same type of processing across many input sources at once. The processing for each input is relatively independent of the processing of the other inputs. These systems implement multiple copies of the processing engine so that each copy can apply the same processing across multiple channels of data. The system contains duplicate processing resources so that they are local to each processing engine; this approach provides lower latency and better processing performance than do architectures that access the same resources through a shared-access mechanism. The nature of the processing engine is application-specific, and it is not limited to a single function. Software development for these systems focuses on optimizing the domain-specific processing of the inputs so that the system minimizes how much it must manage program resources.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><strong><span style="color: #38761d;">Aggregate-multicore architectures</span></strong> target processing tasks, such as video or image processing, that are impractical or less practical to perform in one instruction thread. The processing engine consists of multiple homogeneous or heterogeneous processing elements that perform separate parts of the same overall task. The architecture aggregates the results from the separate processing elements in some fashion to complete the processing. This type of multicore system has existed for decades as high-end signal processing or simulation systems. These types of systems are of increasing importance for high-performance processing as processor clock rates have stalled and are no longer racing to higher rates. Much research is going into how tools can help developers extract parallelism in their software. No widely used tools are currently available that automate parallelizing general code. Some domain-specific analysis tools for signal-processing-algorithm exploration assist domain experts in determining how to structure their algorithms, but they do not completely automate the parallelization of algorithms and software to take advantage of these types of systems.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><strong><span style="color: #38761d;">Multidomain multicore architectures</span></strong> target those applications that encompass multiple software domains, such as cell phones, automobiles, and many consumer products. This area is the bread and butter of many embedded-multicore designs that developers have been doing for decades. Some coupling and communication may occur between the cores in the system. Each processing element in the system not only makes optimization choices that align with the function it performs, but also works in tandem with and complements the other processing elements in the system. These types of systems have existed as proprietary board-level designs. Single-chip, multidomain multicore devices are available as vertically targeted devices for applications such as mobile devices with rich video support. Software developers are aware of each type of processing engine they are targeting, and they use the appropriate set of analysis and development tools to perform their tasks. There are challenges in debugging these types of systems because each processor has different on-chip resources and may not provide visibility to all of those resources in the same way from chip to chip.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><span style="color: #38761d;"><strong>Feedback-multicore architectures</strong></span> target those applications, such as autonomous systems, that employ feedback within and between subsystems or different domains of the system to perform their functions. These systems may employ a central command unit or aggregate decisions across distributed decision makers. The feedback loop may be as simple as an actuator sense-and-control loop, or it may involve larger-scope feedback that can assist the system with trending, predicting, planning, and learning. These emerging designs currently exist mostly in the academic, aerospace, and military domains, but they are set to spill into the industrial and consumer areas. A candidate industrial system is a smart building that manages systemwide resources across distributed decision makers. Consumer candidates include automated active functions in automobiles as well as household appliances, such as vacuum cleaners. Software developers need an integrated and correlated aggregate of analysis and development tools that cover filters, signal processing, control algorithms, and closed-loop simulations.</span><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="color: #0b5394; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><strong>Convergence</strong></span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">This taxonomy for single-core architectures has successfully enabled the industry to converge the vocabulary and key requirements for each application domain between the relevant chip architects, board-level-system designers, software developers, and development-tool providers. Each processor type has its own ecosystem with its own set of vendors for chip-, board-, and software-level-design support. Even for those hardware and software companies that offer products and services across multiple types of processor, different teams support each processor market.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;">The multicore-system market could benefit from a convergence of vocabulary and requirements that employs functional capabilities rather than raw implementation and performance details. Rather than a single general-purpose discussion on SMP versus AMP, there should be at least four and at least one for each of the multicore categories. You could say the same for core topologies, coherency mechanisms, messaging, multithreading, operating-system support, virtualization, hypervisors, code parallelizing, and balancing workloads. By defining and establishing the optimization preferences employing required functional capabilities, chip architects, board-level-system designers, and software developers can meaningfully discuss how to allocate technical approaches among all of the stakeholders rather than an ad hoc fitting together of what each group builds.</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><span style="font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;"><br />
</span><br />
</div><div align="justify"><a href="http://www.ednasia.com/cmsimages/0910/0910pg19_f1.gif">Source Here</a><br />
<br />
<br />
</div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-1372933001761370251.post-80996085775677373372009-10-13T17:18:00.002+05:302009-10-14T12:24:38.841+05:30Image Sensor<span style="font-family: 'Palatino Linotype'; font-size: 16px;"></span><br />
<span style="font-family: 'Palatino Linotype'; font-size: 16px;"></span><br />
<span style="font-family: 'Palatino Linotype'; font-size: 16px;"><div style="text-align: justify;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Every electronic camera contains an image sensor which converts the optical images to electronic signals and a lens which focuses the object to the image sensor.</span></span><br />
<span style="font-family: 'Helvetica Neue'; font-size: large;"><span class="Apple-style-span" style="font-size: 18px;"><br />
</span></span><br />
</div></span><div><div class="separator" style="clear: both; text-align: center;"><span class="Apple-style-span" style="font-family: 'Helvetica Neue';"><img border="0" height="298" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEih0QxU_TXFQb6jgrIFq7FtpMW3rON0TNPK8np2wAzyfIUWxiSd5TpqB1WI83CL_56gw1YD8CLoHChnYRq83LCBLWHartqx8S5t2a8hZ4lKuIAjKrPXccprLku1lH22TUt3hIfVYMK_7Nba/s320/Schematic+of+typical+camera+module+using+chip-on-board+technology+to+mount+the+image+sensor+on+the+PCB+(or+flexible+substrate).jpg" width="320" /></span><br />
</div><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEih0QxU_TXFQb6jgrIFq7FtpMW3rON0TNPK8np2wAzyfIUWxiSd5TpqB1WI83CL_56gw1YD8CLoHChnYRq83LCBLWHartqx8S5t2a8hZ4lKuIAjKrPXccprLku1lH22TUt3hIfVYMK_7Nba/s1600-h/Schematic+of+typical+camera+module+using+chip-on-board+technology+to+mount+the+image+sensor+on+the+PCB+(or+flexible+substrate).jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-size: medium;"></span></a><br />
<div class="separator" style="clear: both; text-align: justify;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div class="separator" style="clear: both; text-align: center;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Figure 1:</span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> </span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Schematic of typical camera module.</span></span><br />
</div><div class="separator" style="clear: both; text-align: justify;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span> <br />
</div><div class="separator" style="clear: both; text-align: center;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"></span></span><br />
</div><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"></span></span><br />
<div class="MsoNormal" style="text-align: justify;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">There are two types of image sensors </span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><o:p></o:p></span></span><br />
</div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><ul><li><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">CCD (Charged Coupled Device)</span></span></li>
<li><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">CMOS (Complementary Metal Oxide Semiconductor) </span></span></li>
</ul><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span> <br />
<div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Initially, charge-coupled devices (CCDs) were the only image sensors used in digital cameras. They had already been well developed through their use in astronomical telescopes, scanners, and video camcorders. However, there is now a well established alternative, the CMOS image sensor. Both CCD and CMOS image sensors capture light using a grid of small photosites, often referred as pixels, to convert the light into Red, Green and Blue groups of digital information. It's how they process the image and how they are manufactured where they differ from one another. </span></span><br />
<span style="font-family: 'Helvetica Neue';"><br />
</span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">A CCD and a CMOS sensor may look the same, but their operational methods are very different. </span></span><br />
<span style="font-family: 'Helvetica Neue';"><br />
</span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">A charge-coupled device (CCD) gets its name from the way the charges on its pixels are read after an exposure. The CCD gathers the light during the exposure into a grid of Red, Green, Blue photodiodes. The built up charge resulting from the exposure is sent to the register buffer within the chip and onto the voltage converter, then into the amplifier circuit, followed by the analog to digital converter and finally to the camera’s main processor for further color and sharpening work as needed. Once a row has been read, its charges in the readout register row are deleted, the next row enters, and all of the rows above march down one row. With each row "coupled" to the row above in this way, each row of pixels is read—one row at a time. </span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><o:p></o:p></span></span><br />
<span style="font-family: 'Helvetica Neue';"><br />
</span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><o:p><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> The charge-coupled devices numerous steps demands high power consumption. The multiple steps listed also allows for the introduction of digital noise, which requires increased and various solutions to correct and reduce it.</span></span></o:p><br />
</div><div class="MsoNormal" style="text-align: justify;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">The CMOS sensor has the same grid of photosites, but each site has connected circuitry for converting light into digital electron signals within itself, before the signal is sent to the main camera processor. This CMOS is able to boost the signal value at the site (pixel), thus reducing noise (static) in the image. The CMOS uses less power, has a clean digital signal, and is slightly less costly; therefore utilized mainly for larger sensor camera models.</span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><o:p></o:p></span></span><br />
<span style="font-family: 'Helvetica Neue';"><br />
</span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><o:p><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> The cost of fabricating a CMOS wafer is significantly less than the cost of fabricating a similar wafer using the specialized CCD process. Costs are lowered even farther because CMOS image sensors can have processing circuits created on the same chip. With CCDs, these processing circuits must be on separate chips.</span></span></o:p><br />
<span style="font-family: 'Helvetica Neue';"><br />
</span><br />
</div><div class="MsoNormal" style="text-align: justify;"><o:p><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> </span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Digital images are formed from tiny dots or squares of color called as Pixel. Pixel is a discrete photosensitive cell that collects and holds photo charge. The dots, usually many millions per image, are so small and close together they blend into the smooth continuous tones. Each pixel is a </span></span><span lang="EN"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">sample</span></span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> of an original image, where more samples typically provide more-accurate representations of the original.</span></span></o:p><br />
<span style="font-family: 'Helvetica Neue';"><br />
</span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><o:p><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> </span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">The </span></span><span lang="EN"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">intensity</span></span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> of each pixel is variable; in color systems, each pixel has typically three or four components such as </span></span><span lang="EN"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">red, green, and blue</span></span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">, or </span></span><span lang="EN"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">cyan, magenta, yellow, and black</span></span></span><span lang="EN"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">.</span></span></span><span lang="EN"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> </span></span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">These images are captured directly with digital cameras the end result is an image in a universally recognized format that can be easily manipulated, distributed, and used.</span></span></o:p><br />
<span style="font-family: 'Helvetica Neue';"><br />
</span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><o:p><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> The word </span></span><i><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">pixel</span></span></i><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> is based on a contraction of </span></span><i><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">pix</span></span></i><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> ("picture") and </span></span><i><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">el</span></span></i><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> (for "element"). It has been said earlier that image sensor is a grid of photosites but if we look closer we can find color filter and micro lens above each pixel.</span></span></o:p><br />
<span style="font-family: 'Helvetica Neue';"><br />
</span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><span lang="EN"><o:p><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> Image sensor contains a light sensitive area covered with Color Filter Array arranged according to Bayer’s Pattern above which micro lenses are placed to focus the incident light into the light sensitive are.</span></span></o:p></span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div class="separator" style="clear: both; text-align: justify;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgShqUhXsuXK0IW47jaUIK89XasRy5LtV9eJ0Lnr7VgySkmbGSwYgLNoQ3R-nJ2h-YzRs4_q3eDGVpuzcW6ozFxoxQ6gXA8D8zWLke8j3KKXqRF_TEZJ8v5G5VfSqKaFknxJxWLjPWuGdq1/s1600-h/Micro+lenses+are+used+to+focus+the+incident+light+on+each+pixel+on+to+the+light-sensitive+area,+increasing+the+low+light+sensitivity+of+the+image+sensor.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgShqUhXsuXK0IW47jaUIK89XasRy5LtV9eJ0Lnr7VgySkmbGSwYgLNoQ3R-nJ2h-YzRs4_q3eDGVpuzcW6ozFxoxQ6gXA8D8zWLke8j3KKXqRF_TEZJ8v5G5VfSqKaFknxJxWLjPWuGdq1/s320/Micro+lenses+are+used+to+focus+the+incident+light+on+each+pixel+on+to+the+light-sensitive+area,+increasing+the+low+light+sensitivity+of+the+image+sensor.jpg" width="264" /></span></span></a><br />
</div><div class="MsoNormal" style="text-align: center; text-indent: 0.5in;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><br />
<div style="text-align: justify;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div><div class="separator" style="clear: both; text-align: auto;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div class="MsoNormal" style="text-align: center;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Figure 2:</span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> </span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Microlenses are used to focus the incident light on each pixel on to the light-sensitive area, increasing the low light sensitivity of the image sensor</span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><o:p></o:p></span></span><br />
</div><div class="MsoNormal" style="text-align: center;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span> <br />
</div><div class="MsoNormal" style="text-align: center;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"></span></span><br />
</div><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"></span></span><br />
<div class="MsoNormal" style="mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; text-align: justify; text-indent: .5in;"><span lang="EN"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Microlenses are small lenses, generally with diameters less than a millimetre (mm) and often as small as 10 micrometers (µm). A typical microlens may be a single element with one plane surface and one spherical convex surface to refract the light. Because microlenses are so small, the substrate that supports them is usually thicker than the lens.</span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><o:p></o:p></span></span></span><br />
<span style="font-family: 'Helvetica Neue';"><br />
</span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><span lang="EN"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Combinations of microlens arrays have been designed that have novel imaging properties, such as the ability to form an image at unit magnification and not inverted as is the case with conventional lenses. Microlens arrays have been developed to form compact imaging devices for applications such as image sensor.</span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><o:p></o:p></span></span></span><br />
<span style="font-family: 'Helvetica Neue';"><br />
</span><br />
</div><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"></span></span><br />
<div style="text-align: justify;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> Microlenses and a metal opaque layer above the silicon funnel light to the photo-sensitive portion of each pixel. On their way, the photons of light pass through a color filter array (CFA) where the process begins of obtaining color from the inherently “monochrome” chip.</span></span><br />
</div><div style="text-align: justify;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhi29mWFHA2A_CjtLM73hjtoLljGKGbA6_LYEuYnfcupfJC8Ft0VRs519hSRKeFT-KjBZso3eCUsd6dftKTo_qvyFq3a5YOkBpU80hVVpc1MF-f5nJSNpXTzrrqS-EdOlOEjdsW4NWUHIWB/s1600-h/Microlenses.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><img border="0" height="118" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhi29mWFHA2A_CjtLM73hjtoLljGKGbA6_LYEuYnfcupfJC8Ft0VRs519hSRKeFT-KjBZso3eCUsd6dftKTo_qvyFq3a5YOkBpU80hVVpc1MF-f5nJSNpXTzrrqS-EdOlOEjdsW4NWUHIWB/s320/Microlenses.gif" width="320" /></span></span></a><br />
</div><div class="separator" style="clear: both; text-align: center;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div class="separator" style="clear: both; text-align: center;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div align="center" class="MsoNormal" style="text-align: center;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Figure 3:</span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> </span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Microlenses array used to focus the incident light on each pixel</span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><o:p></o:p></span></span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">A </span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><a href="http://www.blogger.com/post-edit.g?blogID=1372933001761370251&postID=8099608577567737337&pli=1" name="OLE_LINK2"></a></span></span><a href="http://www.blogger.com/post-edit.g?blogID=1372933001761370251&postID=8099608577567737337&pli=1" name="OLE_LINK1"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Color</span></span></a><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> Filter Array (CFA), or Color Filter Mosaic (CFM), is a mosaic of tiny color filters placed over the pixel sensors of an image sensor to capture color information. Color filters are needed because the typical photosensors detect light intensity with little or no wavelength specificity, and therefore cannot separate color information since sensors are made of semiconductors they obey solid-state physics.</span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><o:p></o:p></span></span><br />
<span style="font-family: 'Helvetica Neue';"><br />
</span><br />
</div><div class="MsoNormal" style="text-align: justify;"><o:p><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> The color filters filter the light by wavelength range, such that the separate filtered intensities include information about the color of light. There are many Color Filter Arrays the basic and first available one is the Bayer Filter. Others are RGBE Filter, CYYM Filter, CYGM Filter, RGBW Filter and RGBW Filter with Panchromatic Cells.</span></span></o:p><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEju2KF9IoBmW0x0hQhIIhWqp6ZHkrsPXX300I5jPoDx6xAWLoGSzdunCS6aAy1AF1kUzQH7FK0quvd2L8JkAAtRV8DapVZQ_5LlInKa1tzH12BOlGnwLUiBqMaE4Z0zZmuQa9MWsAcXIzPz/s1600-h/Bayer_pattern_on_sensor_svg.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span> </a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEju2KF9IoBmW0x0hQhIIhWqp6ZHkrsPXX300I5jPoDx6xAWLoGSzdunCS6aAy1AF1kUzQH7FK0quvd2L8JkAAtRV8DapVZQ_5LlInKa1tzH12BOlGnwLUiBqMaE4Z0zZmuQa9MWsAcXIzPz/s1600-h/Bayer_pattern_on_sensor_svg.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEju2KF9IoBmW0x0hQhIIhWqp6ZHkrsPXX300I5jPoDx6xAWLoGSzdunCS6aAy1AF1kUzQH7FK0quvd2L8JkAAtRV8DapVZQ_5LlInKa1tzH12BOlGnwLUiBqMaE4Z0zZmuQa9MWsAcXIzPz/s320/Bayer_pattern_on_sensor_svg.png" /></span></span></a><br />
</div><div class="separator" style="clear: both; text-align: center;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div class="separator" style="clear: both; text-align: center;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwO9mtlnDRzYs84ixpsRwxvG1wvB6CfkdPyWuM4PcbzczL-MP28EoZ0ZfVsQLNNRrBVsbYiPpfmDBGP8m2MiXHXs8iN-j2V3_NmkIoZ-78-oFP_UtQjhMikGhAjuZfK3wqlr392G2nehXw/s1600-h/Bayer_pattern_on_sensor_profile_svg.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwO9mtlnDRzYs84ixpsRwxvG1wvB6CfkdPyWuM4PcbzczL-MP28EoZ0ZfVsQLNNRrBVsbYiPpfmDBGP8m2MiXHXs8iN-j2V3_NmkIoZ-78-oFP_UtQjhMikGhAjuZfK3wqlr392G2nehXw/s320/Bayer_pattern_on_sensor_profile_svg.png" /></span></span></a><br />
</div><div class="separator" style="clear: both; text-align: center;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div class="separator" style="clear: both; text-align: center;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div align="center" class="MsoNormal" style="text-align: center;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Figure 4:</span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> Bayer Filter Array</span></span><br />
</div><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span> <br />
<div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br />
</span></span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">A Bayer filter mosaic is a color filter array (CFA) for arranging RGB color filters on a square grid of photosensors. It is named after its inventor, Bryce E. Bayer of Eastman Kodak. Its particular arrangement of color filters is used in most single-chip digital image sensors used in digital cameras, camcorders, and scanners to create a color image. </span></span><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><o:p></o:p></span></span><br />
<span style="font-family: 'Helvetica Neue';"><br />
</span><br />
</div><div class="MsoNormal" style="text-align: justify; text-indent: .5in;"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">A demosaicing algorithm is a digital image process used to reconstruct a full color image from the incomplete color samples output from an image sensor overlaid with a color filter array (CFA). It is also known as CFA interpolation or color reconstruction. The image which is to be demosaiced is called as raw image. Most modern digital cameras acquire images using a single image sensor overlaid with a CFA, so demosaicing is part of the processing pipeline required to render these images into a viewable format. </span></span><st1:place w:st="on"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Lot</span></span></st1:place><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"> of algorithms is available for raw image demosaicing among them </span></span><span lang="EN"><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">nearest-neighbor interpolation, bilinear interpolation, bicubic interpolation, spline interpolation, and Lanczos resampling are most commonly used.</span></span></span><br />
</div><span style="font-size: medium;"><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"></span></span><br />
<span style="font-family: 'Palatino Linotype'; font-size: 12pt;"></span><br />
<span style="font-family: 'Palatino Linotype'; font-size: 12pt;"><div style="text-align: justify;"><br />
</div></span><br />
<div></div></div></div>അരുണ്http://www.blogger.com/profile/05232407943188671791noreply@blogger.com2tag:blogger.com,1999:blog-1372933001761370251.post-59265214243619915922009-10-12T11:25:00.000+05:302009-10-12T11:25:39.393+05:30Intel shows how a CPU is manufactured<div style="text-align: justify;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWd2rGi1PLHIDRfRMHfOJBAfsM8OvIMEYYEIGBXfwhlC5tk2V-idL25_kwBzxuw3Ssh5F_ZXPej6ZJAhCOLCD4isGDNKmInm6hAgcf7wVLLJt5o7Y4hqvidEUFC21bd2WBaM1nyfwhiew6/s1600-h/1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWd2rGi1PLHIDRfRMHfOJBAfsM8OvIMEYYEIGBXfwhlC5tk2V-idL25_kwBzxuw3Ssh5F_ZXPej6ZJAhCOLCD4isGDNKmInm6hAgcf7wVLLJt5o7Y4hqvidEUFC21bd2WBaM1nyfwhiew6/s320/1.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-size: large;">Sand. Made up of 25 percent silicon, is, after oxygen, the second most abundant chemical element that's in the earth's crust. Sand, especially quartz, has high percentages of silicon in the form of silicon dioxide (SiO2) and is the base ingredient for semiconductor manufacturing.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><span style="font-size: large;"></span><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgUOl0_3oNVdeuN7BPz3klwvVM22EHmKGKCLaBf7TfV39lQNLcweVoJ_Vl5GKWhLpgiJwZqmofseCEfshHHmn5xZPvZd0CudmtSTTs8JxSnmxi5Nh5J2N-3xhKnks9N3xKHftULlRrPiF_/s1600-h/2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgUOl0_3oNVdeuN7BPz3klwvVM22EHmKGKCLaBf7TfV39lQNLcweVoJ_Vl5GKWhLpgiJwZqmofseCEfshHHmn5xZPvZd0CudmtSTTs8JxSnmxi5Nh5J2N-3xhKnks9N3xKHftULlRrPiF_/s400/2.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div class="separator" style="clear: both; text-align: center;"><br />
</div><div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; text-align: justify;"><span style="font-size: large;">After procuring raw sand and separating the silicon, the excess material is disposed of and the silicon is purified in multiple steps to finally reach semiconductor manufacturing quality which is called electronic grade silicon. The resulting purity is so great that electronic grade silicon may only have one alien atom for every one billion silicon atoms. After the purification process, the silicon enters the melting phase. In this picture you can see how one big crystal is grown from the purified silicon melt. The resulting mono-crystal is called an ingot.</span><br />
</div><div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; text-align: justify;"><br />
</div><div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcCAF1St4IFy4Ngjn18St2u2b8mC4HWPPovoVbmqGsLaeBzAGDTEyZXB0FJUxID_yCKI6EGAkSgprkjbET6QwDzRW1hE-Ksp17mkodHSVTe8OgFk6Swli6oukkVoghUceKKjJmqJ3Uw295/s1600-h/3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcCAF1St4IFy4Ngjn18St2u2b8mC4HWPPovoVbmqGsLaeBzAGDTEyZXB0FJUxID_yCKI6EGAkSgprkjbET6QwDzRW1hE-Ksp17mkodHSVTe8OgFk6Swli6oukkVoghUceKKjJmqJ3Uw295/s320/3.jpg" width="270" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">A mono-crystal ingot is produced from electronic grade silicon. One ingot weighs approximately 100 kilograms (or 220 pounds) and has a silicon purity of 99.9999 percent.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0SAQhVWyMd6I002QQ1KJi150vkJgRGHOq7zoK6jt2c_GoLFv_5Gxra6hVeqR3J0MOtivn3au5QwTOIOlRBJ9Z-vZW2rWhKQVa5QYl8YYGKtVLpoay4_CgH4zemFHDJY2_gwpgWk00WW2Q/s1600-h/4.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" height="238" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0SAQhVWyMd6I002QQ1KJi150vkJgRGHOq7zoK6jt2c_GoLFv_5Gxra6hVeqR3J0MOtivn3au5QwTOIOlRBJ9Z-vZW2rWhKQVa5QYl8YYGKtVLpoay4_CgH4zemFHDJY2_gwpgWk00WW2Q/s320/4.jpg" width="320" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">The ingot is then moved onto the slicing phase where individual silicon discs, called wafers, are sliced thin. Some ingots can stand higher than five feet. Several different diameters of ingots exist depending on the required wafer size. Today, CPUs are commonly made on 300 mm wafers.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi49m14eWnwJhCJI-A-JwFpF_rwOVUh0IY3T3u2QB9PfFrfBy5lyK0bkif9FwJG301s8Znsad4IkRpp_04qGLQRFMdUHvvpTWQW5gNX_exTL6RKaDmyFCWLDoKCwZazOAi7_LHHEH3gRjrq/s1600-h/5.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi49m14eWnwJhCJI-A-JwFpF_rwOVUh0IY3T3u2QB9PfFrfBy5lyK0bkif9FwJG301s8Znsad4IkRpp_04qGLQRFMdUHvvpTWQW5gNX_exTL6RKaDmyFCWLDoKCwZazOAi7_LHHEH3gRjrq/s400/5.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">Once cut, the wafers are polished until they have flawless, mirror-smooth surfaces. Intel doesn't produce its own ingots and wafers, and instead purchases manufacturing-ready wafers from third-party companies. Intel’s advanced 45 nm High-K/Metal Gate process uses wafers with a diameter of 300 mm (or 12-inches). When Intel first began making chips, it printed circuits on 50 mm (2-inches) wafers. These days, Intel uses 300 mm wafers, resulting in decreased costs per chip.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCo4JuWpkVP7TfEn4wolP_RyL7YbsAMPBN7DN4VIaeHBauvzSuQeNfKKbwwKIY6TL0Yp3FITBkYdjZrlFgh54QwYhPJ21cwcKuFLPxFTS5Ny0g0bGOMREvD9ftRDWpIv-s_MRoCEnn-u4-/s1600-h/6.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" height="248" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCo4JuWpkVP7TfEn4wolP_RyL7YbsAMPBN7DN4VIaeHBauvzSuQeNfKKbwwKIY6TL0Yp3FITBkYdjZrlFgh54QwYhPJ21cwcKuFLPxFTS5Ny0g0bGOMREvD9ftRDWpIv-s_MRoCEnn-u4-/s320/6.jpg" width="320" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">The blue liquid, depicted above, is a photo resist finish similar to those used in film for photography. The wafer spins during this step to allow an evenly-distributed coating that's smooth and also very thin.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_yA6IVfIxYI_harKWy3Yuyn-YenD9-K0R3IgFSJvfsLAgOr4mLHghYAspmkBsce0gN_h4GwJGAeXTkKliC3LDmMxc08r2Uhokr76h6BSA-vfDt9-te0blWuprCcCi7PUWoyP4vw2dx076/s1600-h/7.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_yA6IVfIxYI_harKWy3Yuyn-YenD9-K0R3IgFSJvfsLAgOr4mLHghYAspmkBsce0gN_h4GwJGAeXTkKliC3LDmMxc08r2Uhokr76h6BSA-vfDt9-te0blWuprCcCi7PUWoyP4vw2dx076/s400/7.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">At this stage, the photo-resistant finish is exposed to ultra violet (UV) light. The chemical reaction triggered by the UV light is similar to what happens to film material in a camera the moment you press the shutter button.</span><br />
</div><span style="font-size: large;"><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">Areas of the resist on the wafer that have been exposed to UV light will become soluble. The exposure is done using masks that act like stencils. When used with UV light, masks create the various circuit patterns. The building of a CPU essentially repeats this process over and over until multiple layers are stacked on top of each other.</span><br />
</div><span style="font-size: large;"><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">A lens (middle) reduces the mask's image to a small focal point. The resulting "print" on the wafer is typically four times smaller, linearly, than the mask's pattern.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgszdzEWKDywY-qos_UvDLBV45u45fRhQlD6utld5oDgMNUSJg3HIQQo4-Q7341kYYl5VbhaM0TUSdioCnaRSjiEP6mMy4V36qMj_MUXHGNcfetluAdi1DZplp2Z3wUfXjMKmpRN3m4h9Lu/s1600-h/8.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgszdzEWKDywY-qos_UvDLBV45u45fRhQlD6utld5oDgMNUSJg3HIQQo4-Q7341kYYl5VbhaM0TUSdioCnaRSjiEP6mMy4V36qMj_MUXHGNcfetluAdi1DZplp2Z3wUfXjMKmpRN3m4h9Lu/s320/8.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">In the picture we have a representation of what a single transistor would appear like if we could see it with the naked eye. A transistor acts as a switch, controlling the flow of electrical current in a computer chip. Intel researchers have developed transistors so small that they claim roughly 30 million of them could fit on the head of a pin.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPOlKg6ieNReFY0Cav22bIfAlkM9kRi-MB51ONWCFaGpc4-bwewwDk6beP-5BgIqMhRQz5dzswQ1GRfYAVqOoJeheTe0lj-Sy2GkT8FPqDtkDZwTm3EOWlaly4Y6iltKIClzWy7ouks5Wk/s1600-h/9.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPOlKg6ieNReFY0Cav22bIfAlkM9kRi-MB51ONWCFaGpc4-bwewwDk6beP-5BgIqMhRQz5dzswQ1GRfYAVqOoJeheTe0lj-Sy2GkT8FPqDtkDZwTm3EOWlaly4Y6iltKIClzWy7ouks5Wk/s320/9.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">After being exposed to UV light, the exposed blue photo resist areas are completely dissolved by a solvent. This reveals a pattern of photo resist made by the mask. The beginnings of transistors, interconnects, and other electrical contacts begin to grow from this point.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiM4nsq_33tZuD8JLr_vNX35jXI17FkML8kvQ9WX3g2Gp-jN9MN_LKHGJBTM-pcXzRipmTPS5laDj-Blu6x0glzI2Wu-wotYQbSn2fV_O8qpEfxCUlH_0T9BTuCXkUfvxfiorK_g5FB8e87/s1600-h/10.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" height="248" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiM4nsq_33tZuD8JLr_vNX35jXI17FkML8kvQ9WX3g2Gp-jN9MN_LKHGJBTM-pcXzRipmTPS5laDj-Blu6x0glzI2Wu-wotYQbSn2fV_O8qpEfxCUlH_0T9BTuCXkUfvxfiorK_g5FB8e87/s320/10.jpg" width="320" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">The photo resist layer protects wafer material that should not be etched away. Areas that were exposed will be etched away with chemicals.</span><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMmSio2TtuRVD9qQSB6inRh-bd0wznmcPVZikdjiUMF3R1RdeASsDQllOgpYTGMSlQKaSvctXtvH0oO2Zzr9m__L0pA-9Zqyzo1hxnjO2NjPtfaljilzX6l4PQ5AhbeIk50hjbqB0RG8YX/s1600-h/11.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMmSio2TtuRVD9qQSB6inRh-bd0wznmcPVZikdjiUMF3R1RdeASsDQllOgpYTGMSlQKaSvctXtvH0oO2Zzr9m__L0pA-9Zqyzo1hxnjO2NjPtfaljilzX6l4PQ5AhbeIk50hjbqB0RG8YX/s320/11.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">After the etching, the photo resist is removed and the desired shape becomes visible.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZl3gsanW38aIb67Hjvx_ldXdZuoSk5fnMeKpDj26CDr6k8EErN-R_3gEQB2daq4-tTwEHj-69eAmVnSpqMfRa0d2TQ5eyKxVZNV_5DZqR0j0cdDi_o_Z2ufvi24AFIhyigNKnlWoeFW2r/s1600-h/12.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZl3gsanW38aIb67Hjvx_ldXdZuoSk5fnMeKpDj26CDr6k8EErN-R_3gEQB2daq4-tTwEHj-69eAmVnSpqMfRa0d2TQ5eyKxVZNV_5DZqR0j0cdDi_o_Z2ufvi24AFIhyigNKnlWoeFW2r/s320/12.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">More photo resist (blue) is applied and then re-exposed to UV light. Exposed photo resist is then washed off again before the next step, which is called ion doping. This is the step where ion particles are exposed to the wafer, allowing the silicon to change its chemical properties in a way that allows the CPU to control the flow of electricity.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjD7EJJR2NOq-DahvFEy2_9rnDRh9t6Tlx7z3rqSdGOdkW5E_yZPJAKsP1H7QCjrxr8nGy2pS2y50xncCFbnfT49Ki5Omm0YbbZZ6W-BNqg43VftFhPGzsAmoDVT0lmpwPVn3RK-CpT0NKc/s1600-h/13.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjD7EJJR2NOq-DahvFEy2_9rnDRh9t6Tlx7z3rqSdGOdkW5E_yZPJAKsP1H7QCjrxr8nGy2pS2y50xncCFbnfT49Ki5Omm0YbbZZ6W-BNqg43VftFhPGzsAmoDVT0lmpwPVn3RK-CpT0NKc/s320/13.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">Through a process called ion implantation (one form of a process called doping) the exposed areas of the silicon wafer are bombarded with ions. Ions are implanted in the silicon wafer to alter the way silicon?i these areas conduct electricity. Ions are propelled onto the surface of the wafer at very high velocities. An electrical field accelerates the ions to a speed of over 300,000 km/hour (roughly 185,000 mph)</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjJdhW_KfvRu1f8MXKzy65Pl9FALXNAJ9KICbOqjds5D4DDTT_ikBNJosMbIFcRpTr9aqIMCAHdrhaho-4y9cCffwEQXSvmzSByY-VCV8ELhhfvysqMIfC8N_-WV2bbHCJRucrXdXz0JiM/s1600-h/14.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" height="238" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjJdhW_KfvRu1f8MXKzy65Pl9FALXNAJ9KICbOqjds5D4DDTT_ikBNJosMbIFcRpTr9aqIMCAHdrhaho-4y9cCffwEQXSvmzSByY-VCV8ELhhfvysqMIfC8N_-WV2bbHCJRucrXdXz0JiM/s320/14.jpg" width="320" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">After the ion implantation, the photo resist will be removed and the material that should have been doped (green) now has alien atoms implanted.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgk157R5_42tpzWjBkQp0KFDfy2kE6gZNEAbaC7meIYZcireiZ-unOzDYRN52y2y4P9qPvphf9nDLTnlb5n2Ki1EzF4Y8IlxE8AXgWogZ9nS6PCjyE-wd5wFLmONTy5p0dtgQ4ZRLJH6uww/s1600-h/15.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgk157R5_42tpzWjBkQp0KFDfy2kE6gZNEAbaC7meIYZcireiZ-unOzDYRN52y2y4P9qPvphf9nDLTnlb5n2Ki1EzF4Y8IlxE8AXgWogZ9nS6PCjyE-wd5wFLmONTy5p0dtgQ4ZRLJH6uww/s320/15.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">This transistor is close to being finished. Three holes have been etched into the insulation layer (magenta color) above the transistor. These three holes will be filled with copper, which will make up the connections to other transistors.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaRqx4MFpnyBLOcvXLUNsuvybDwfMlc-ywNimYYfBeHzQ6Namd2iJCu2sCicGg2oZclRuUbLzaBawJehOHAJH9ppRcmVPBEuDJQb_lKmnzawyW6liSWL9RH4n_HyyMqxRNsqNjMb9yhCKu/s1600-h/16.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaRqx4MFpnyBLOcvXLUNsuvybDwfMlc-ywNimYYfBeHzQ6Namd2iJCu2sCicGg2oZclRuUbLzaBawJehOHAJH9ppRcmVPBEuDJQb_lKmnzawyW6liSWL9RH4n_HyyMqxRNsqNjMb9yhCKu/s400/16.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">The wafers are put into a copper sulphate solution at this stage. Copper ions are deposited onto the transistor through a process called electroplating. The copper ions travel from the positive terminal (anode) to the negative terminal (cathode) which is represented by the wafer.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjb6OAda8_AUUbMG010nlKpnhD_jwNGnCIelpbeLFGenMjH3sxm4CRhdpJy2_GIimQeQIMchocOlvQxV2D1h5Ehfb5Xh5PvBXRVrp_I9Hni-NOSLDqwzSnVOhB1Oe5M5TNjSjn5HuXtaxf6/s1600-h/17.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjb6OAda8_AUUbMG010nlKpnhD_jwNGnCIelpbeLFGenMjH3sxm4CRhdpJy2_GIimQeQIMchocOlvQxV2D1h5Ehfb5Xh5PvBXRVrp_I9Hni-NOSLDqwzSnVOhB1Oe5M5TNjSjn5HuXtaxf6/s400/17.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">The copper ions settle as a thin layer on the wafer surface.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLcUjadOqg8YqtIncXM_QU2XYPmowzCBaL9zz3fbOyUknxx2q46dl4Qc_fuZfGJWzxGYVjWpe7RksaRYTnDH2xeH4nSNu_Db_muL22fpXHswNdT32qORR1_PNWmWdd9E8LgqTCsnEhaWWP/s1600-h/18.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLcUjadOqg8YqtIncXM_QU2XYPmowzCBaL9zz3fbOyUknxx2q46dl4Qc_fuZfGJWzxGYVjWpe7RksaRYTnDH2xeH4nSNu_Db_muL22fpXHswNdT32qORR1_PNWmWdd9E8LgqTCsnEhaWWP/s320/18.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">The excess material is polished off leaving a very thin layer of copper.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr2vK1_A8CnV5_O_RWVAiJVRj16k13Qc0X1NonC_t60AQfXi8l5O-chdee4XNjnJjRUSdEOeeOnm3y7wOWi0JpLOu0u-N1zQJr7btcJ89Q405XYBgVX0DEZ_VJzrjtbcsajlzH7vvVzCVc/s1600-h/19.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr2vK1_A8CnV5_O_RWVAiJVRj16k13Qc0X1NonC_t60AQfXi8l5O-chdee4XNjnJjRUSdEOeeOnm3y7wOWi0JpLOu0u-N1zQJr7btcJ89Q405XYBgVX0DEZ_VJzrjtbcsajlzH7vvVzCVc/s320/19.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">Multiple metal layers are created to interconnects (think wires) in between the various transistors. How these connections have to be “wired” is determined by the architecture and design teams that develop the functionality of the respective processor (for example, Intel’s Core i7 processor). While computer chips look extremely flat, they may actually have over 20 layers to form complex circuitry. If you look at a magnified view of a chip, you will see an intricate network of circuit lines and transistors that look like a futuristic, multi-layered highway system.</span><br />
</div><span style="font-size: large;"><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">This fraction of a ready wafer is being put through a first functionality test. In this stage test patterns are fed into every single chip and the response from the chip monitored and compared to "the right answer."</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhs5j0FNXsgdNCJXqy90nHo6anPJW0zT6cwqY_t50q21PmOo6uWflZ7ahyphenhyphendkbsuyiLVyJTSpgt2dGhIGfEsr4Pz44GCPsaQ7eq5vRfiBi4kb53TG-P7RSm-SSn-UUm4yQmRIUKCwl1aPggV/s1600-h/20.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhs5j0FNXsgdNCJXqy90nHo6anPJW0zT6cwqY_t50q21PmOo6uWflZ7ahyphenhyphendkbsuyiLVyJTSpgt2dGhIGfEsr4Pz44GCPsaQ7eq5vRfiBi4kb53TG-P7RSm-SSn-UUm4yQmRIUKCwl1aPggV/s320/20.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">After tests determine that the wafer has a good yield of functioning processor units, the wafer is cut into pieces (called dies).</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlKaDjcpc_YTjOsvfsnG4vo5axP6x96Z0Jtke2f8iMJZJuZlXIjxT3yQpWd2CmzhoGknOUeZr2mObLsL3-Acaa50c1ax0Nauw35Ykkl21EJiobdYtmPLn_Oql9b-HzY5PT6eWzBTNoSNNW/s1600-h/21.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlKaDjcpc_YTjOsvfsnG4vo5axP6x96Z0Jtke2f8iMJZJuZlXIjxT3yQpWd2CmzhoGknOUeZr2mObLsL3-Acaa50c1ax0Nauw35Ykkl21EJiobdYtmPLn_Oql9b-HzY5PT6eWzBTNoSNNW/s400/21.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">The dies that responded with the right answer to the test pattern will be put forward for the next step (packaging). Bad dies are discarded. Several years ago, Intel made key chains out of bad CPU dies.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div style="text-align: justify;"><br />
</div></span><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6jxCMjHRlUMY9j2YnLJZfQArlX2c94uWEVCqR58hu-qLJg8GD6CQQWgGLLIcHS6xsIRKACpz_X7jyNRQhH8PI1Pvf3CwujgQBbtpJ5Zt7IP8OnheIxC3Ish1xUS6uxruacU-LREPxLFX0/s1600-h/22.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6jxCMjHRlUMY9j2YnLJZfQArlX2c94uWEVCqR58hu-qLJg8GD6CQQWgGLLIcHS6xsIRKACpz_X7jyNRQhH8PI1Pvf3CwujgQBbtpJ5Zt7IP8OnheIxC3Ish1xUS6uxruacU-LREPxLFX0/s320/22.jpg" /></a><br />
</div><div style="text-align: justify;"><span style="font-size: large;">This is an individual die, which has been cut out in the previous step (slicing). The die shown here is a die of an Intel Core i7 processor.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYbcjxGH0yztOhI6F-x4PUvUoIcEi2DKuI5LuzqnGkU1fgLLV6NYQlurv70MaA9olGWuJN1zfbxX3ncne9G2xbRIl2AUJubsWkgAepipkFXBTDrqpjmwZBytOZsytZrTWWo4evV-Usn3w7/s1600-h/23.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYbcjxGH0yztOhI6F-x4PUvUoIcEi2DKuI5LuzqnGkU1fgLLV6NYQlurv70MaA9olGWuJN1zfbxX3ncne9G2xbRIl2AUJubsWkgAepipkFXBTDrqpjmwZBytOZsytZrTWWo4evV-Usn3w7/s320/23.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">The substrate, the die, and the heatspreader are put together to form a completed processor. The green substrate builds the electrical and mechanical interface for the processor to interact with the rest of the PC system. The silver heatspreader is a thermal interface where a cooling solution will be applied. This will keep the processor cool during operation.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpdd1ZEHeWwR-K4rUgFKHWDjby6uQaUZ8Yg2WQKmY2mtqU4lGqb8thp0713ZkPNuVv2R8hjyff5KmEVRDBh9T7pn_fbEMo-vD7c3DYzAtfC3w7mBq3Jn0JNdMx91JEB1HaH4TSSljNGxOw/s1600-h/24.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpdd1ZEHeWwR-K4rUgFKHWDjby6uQaUZ8Yg2WQKmY2mtqU4lGqb8thp0713ZkPNuVv2R8hjyff5KmEVRDBh9T7pn_fbEMo-vD7c3DYzAtfC3w7mBq3Jn0JNdMx91JEB1HaH4TSSljNGxOw/s400/24.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">A microprocessor is the most complex manufactured product on earth. In fact, it takes hundreds of steps and only the most important ones have been visualized in this picture story.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjW4k_49MVD5qtxBLAN5tXTc_GxVNXoQJFxBQBNjNyguNkdr-eMfQrLm-hLCdxU-Nvu8dE6Yjn-7TXo32lbGS7x4dEVtIPQfFF317txBKOC0qhTBWbnjAeqFgwXTn9-hFq2MtRnj8T7uE2w/s1600-h/25.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjW4k_49MVD5qtxBLAN5tXTc_GxVNXoQJFxBQBNjNyguNkdr-eMfQrLm-hLCdxU-Nvu8dE6Yjn-7TXo32lbGS7x4dEVtIPQfFF317txBKOC0qhTBWbnjAeqFgwXTn9-hFq2MtRnj8T7uE2w/s320/25.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">During this final test the processors will be tested for their key characteristics (among the tested characteristics are power dissipation and maximum frequency).</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEJr7nY4e9bRgfDQ0vaL459lZAJvKjfCVZ6aghe4-2l334gSAPxNr31iCOqD-OG_L7o-Ur7MjtYVmt-r0dGCyjp_5fe3iJle7RBJP31ek68OOS9TL7QAzR6b7GdB-hkyJXIo7qIuJI1UGX/s1600-h/26.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEJr7nY4e9bRgfDQ0vaL459lZAJvKjfCVZ6aghe4-2l334gSAPxNr31iCOqD-OG_L7o-Ur7MjtYVmt-r0dGCyjp_5fe3iJle7RBJP31ek68OOS9TL7QAzR6b7GdB-hkyJXIo7qIuJI1UGX/s320/26.jpg" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">Based on the test result of class testing processors with the same capabilities are put into the same transporting trays. This process is called "binning". Binning determines the maximum operating frequency of a processor, and batches are divided and sold according to stable specifications.</span><br />
</div><div style="text-align: justify;"><br />
</div><div style="text-align: justify;"><br />
</div><span style="font-size: large;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-mc04YPC3mElo4Tea610WWynJ1oIKpQwBhUHDAWeRZMbcgFqOqV9r15WfzP_3X6j336ZuITpwBFsOZeQmxSTwhnNoFFR_OLtpzvF4RLblaNupE6CI4Dy9W0dVZ6gE398QourbTVpZFUDn/s1600-h/27.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img $r="true" border="0" height="100" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-mc04YPC3mElo4Tea610WWynJ1oIKpQwBhUHDAWeRZMbcgFqOqV9r15WfzP_3X6j336ZuITpwBFsOZeQmxSTwhnNoFFR_OLtpzvF4RLblaNupE6CI4Dy9W0dVZ6gE398QourbTVpZFUDn/s320/27.jpg" width="320" /></a><br />
</div><div style="text-align: justify;"><br />
</div></span><div style="text-align: justify;"><span style="font-size: large;">The manufactured and tested processors (again Intel Core i7 processor is shown here) either go to system manufacturers in trays or into retail stores in a box. Many thanks to Intel for supplying the text and photos in this picture story. Check out Intel's site for full size images of this entire process.</span> <br />
</div><div style="text-align: justify;"><span style="font-size: large;"></span> <br />
</div><div style="text-align: justify;"><br />
</div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-1372933001761370251.post-58496445807013964562009-10-06T11:38:00.003+05:302009-10-07T11:22:52.931+05:30Real-Time Operating Systems<div style="text-align: center;"><span style="color: blue; font-family: Georgia, "Times New Roman", serif; font-size: large;"><strong>Real-Time System Concepts</strong></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Real-time System</span></strong><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">A real-time system is one whose logical correctness is based on both the correctness of the outputs and their timeliness.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Real-time means computing with a deadline.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">In real-time computing a late answer is a wrong answer.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Real-time doesn’t mean fast. It means being fast enough to meet the deadlines of the application.</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Hard Real-time (HRT) Systems</span></strong><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Hard real-time (HRT) systems are a subclass of RT systems in which missing of a deadline has catastrophic results for the system</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Cost of missing deadlines is infinitely high</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Late results are useless</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Examples: </span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Automobile air bag deployment</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Soft Real-Time (SRT) Systems</span></strong><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;"> Soft real-time systems are a subclass of RT systems in which deadlines may be missed and can be recovered from. The reduction in the quality is acceptable.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Example:</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;"> Vending machine</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Real-time video </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Telecommunication</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;">Real-Time Design Approaches </span></strong><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;"></span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<span style="font-family: Georgia, "Times New Roman", serif;">There are two primary techniques used in real-time designs</span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;"> Super-loop (Grand-loop) technique</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;"> Employed in dedicated applications</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Control code is an infinite loop that may poll several devices</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Used when the main processing loop combined with worst case interrupt latencies is faster than the system deadline.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Suitable development approach for a small programming team.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Extremely difficult to guarantee that the deadlines will be met</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> CPU is 100% utilized even when the system is idle.</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Multitasking</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Also called pseudo parallelism</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Several threads of control running</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Each threads of control share the same CPU and communicate with each other</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> CPU is shared between threads of control using a scheduling policy implemented by the kernel.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Scheduling policies can be either cooperative, priority-based or round-robin</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><div style="text-align: center;"><br />
</div><div style="text-align: center;"><span style="color: blue; font-family: Georgia, "Times New Roman", serif; font-size: large;"><strong>Real-Time Operating Systems</strong></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">What is an RTOS?</span></strong><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;"> A Real- Time Operating System is a software that allows a program to:</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;"> React in a deterministic way to external events</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Communicate with peripherals and other tasks</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Share the CPU and resources between competing threads of execution in a predictable way</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
<li><span style="font-family: Georgia, "Times New Roman", serif;">RTOS is a building block for an RT system</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">It has a bounded behavior under all system load scenarios</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;">Multitasking Revisited</span></strong><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;"> Multitasking is the process of scheduling and switching the CPU between several tasks</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Maximizes the utilization of the CPU</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Facilitates modular construction of applications</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"> Simplifies the design of application programs</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;">Task</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">A task (thread) is a simple program that thinks it has the CPU all to itself.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">A Real-Time application consists of several tasks executing concurrently.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Each task is assigned a priority, its own set of CPU registers (context), and its own stack area.</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;">Kernel</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Definition</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Kernel is the part of the multi-tasking system responsible for the management of tasks and communication between tasks.</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Services</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Scheduling</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Inter task communication services (Semaphore management, mail boxes, queues, time delays, etc.)</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;">Scheduler</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Scheduler is the part of the kernel responsible for determining which task will run next</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Most real-time kernels are priority based</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Each task is assigned a priority based on its importance</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">The priority of each task is application specific</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Control is always given to the highest priority task ready to run.</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Context Switch</span></strong><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Occurs when a Multi-Tasking kernel decides to run a different task</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Steps involved in a context switch</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ol><li><span style="font-family: Georgia, "Times New Roman", serif;">Save current task’s context(CPU registers) in the current task’s context storage area (it’s stack)</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Restore the new task’s context from it’s storage area (it’s stack).</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Resume execution of the new task’s code.</span></li>
</ol><span style="font-family: Georgia, "Times New Roman", serif;"></span>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Multiple Tasks</span></strong><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdrlSLMemFcIIN-XK9tHXHOJgXbsbRcsQdC7IPW-4tRr68_fLFGg0P2TpmEXQMYhyP9airb1je0JrQ3DPeIUpXUq-qc1H-il96RCknanvptCh3WW_Un8RX0j9R_gekewxmS8kG4o36wxeE/s1600-h/Picture1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdrlSLMemFcIIN-XK9tHXHOJgXbsbRcsQdC7IPW-4tRr68_fLFGg0P2TpmEXQMYhyP9airb1je0JrQ3DPeIUpXUq-qc1H-il96RCknanvptCh3WW_Un8RX0j9R_gekewxmS8kG4o36wxeE/s400/Picture1.png" /></span></a><br />
</div><div><br />
</div><div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Reentrancy</span></strong><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">A reentrant function can be interrupted at any time and resumed at a later time without loss of data.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">It either uses local variables or protects data when global variables are used.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">It can be used by more than one task without fear of data corruption.</span></li>
</ul><strong><span style="font-family: Georgia, "Times New Roman", serif;">Critical Section & Mutual Exclusion</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">A Critical Section is the code that needs to be executed indivisibly.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Mutual Exclusion is used to ensure the exclusive access to a shared resource without data corruption.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Common Methods are</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Disabling interrupts</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Disabling scheduling</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Using Mutexes(Semaphore)</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Non-Preemptive Kernel</span></strong><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Require that each task does something to explicitly give up the control of the CPU</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Also called cooperative multitasking</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">ISR always returns to the interrupted task</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Advantages</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Low interrupt latency</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">It can use Non-Reentrant functions</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Disadvantages</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Responsiveness is very law</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Very few real-time kernels are non-preemptive</span></li>
</ul><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRkS7edfF5Qty9SaS1zRVV0Y4tag0A298IJoRVdZpDTlesbUX1OFUG4WRreYp2kaPIlDl6frHX2EeQpGw99_qCck4irRUxn4cVAL6edEfCoV5y5l0NOJS8zqci_7W9MRihafnCOVPtfX9Q/s1600-h/Picture2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRkS7edfF5Qty9SaS1zRVV0Y4tag0A298IJoRVdZpDTlesbUX1OFUG4WRreYp2kaPIlDl6frHX2EeQpGw99_qCck4irRUxn4cVAL6edEfCoV5y5l0NOJS8zqci_7W9MRihafnCOVPtfX9Q/s400/Picture2.png" /></span></a><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Preemptive Kernel</span></strong><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">It is used when system responsiveness is important.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">High priority task ready to run is always given control of the CPU</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Most real-time kernels are preemptive.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Application code using a preemptive kernel should not use non-reentrant functions or an appropriate mutual exclusion method should be applied to prevent data corruptio</span></li>
</ul><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXA6snymbDkjZB7kjRfaerTzWrdj2nSS8ukSJ1IaDVpF-b85-oXJQEbyfdhPZm0IibTyKTd3xGwrYUxJcSUYHZVplq_WdKGpTvlEOahIXxWRtkXtG9-qn0Fyk-y8_vT8k3DtTV1gpZHhp4/s1600-h/Picture3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXA6snymbDkjZB7kjRfaerTzWrdj2nSS8ukSJ1IaDVpF-b85-oXJQEbyfdhPZm0IibTyKTd3xGwrYUxJcSUYHZVplq_WdKGpTvlEOahIXxWRtkXtG9-qn0Fyk-y8_vT8k3DtTV1gpZHhp4/s400/Picture3.png" /></span></a><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"> <strong>Task States</strong></span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglhP07_RWEMFwsla9aPdjxFd8-Szp9LTSIfZwU61CD-FhEpwnTd-kNSRB0kk8FuTLOF7DGh3LkxEqEjWztAE6ZbhJ_RqktvIi-iG50Bz4c00cxxco5VMFmbI3hzNsmZlVKTTJR-C8EPsKM/s1600-h/Picture3b.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglhP07_RWEMFwsla9aPdjxFd8-Szp9LTSIfZwU61CD-FhEpwnTd-kNSRB0kk8FuTLOF7DGh3LkxEqEjWztAE6ZbhJ_RqktvIi-iG50Bz4c00cxxco5VMFmbI3hzNsmZlVKTTJR-C8EPsKM/s320/Picture3b.PNG" /></span></a><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Synchronization</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<span style="font-family: Georgia, "Times New Roman", serif;">Commonly used synchronization primitives are</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Mutexes </span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">The operations are</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">MutexLock()</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">MutexUnlock()</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Semaphores</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">The operations are</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Signal()</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Wait()</span><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span></li>
</ul></ul></ul><strong><span style="font-family: Georgia, "Times New Roman", serif;">Semaphore</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Term borrowed from railways</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">It is a flag that is set or reset by rtos on request from a thread </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">On a set request when it is already set, the task is blocked !</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">On the later reset request, the blocked task is resumed…</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Question: Why can’t we use a global flag for the same purpose ?</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Reentrancy and semaphores</span></strong><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Routines using global resources can be made reentrant by setting a semaphore while it is using them</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">The segment of code where the semaphore is set is called critical section </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">The discipline of setting the semaphore during critical section is self-imposed….</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">And hence is an area of potential danger</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Types of semaphores</span></strong><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">BINARY – used as a flag</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">COUNTING – can take non-negative integer values</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">RESOURCE - only the owner can release</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">MUTEX - automatically handles priority inversion</span></li>
</ul><strong><span style="font-family: Georgia, "Times New Roman", serif;">Calling convetions</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Raise and lower</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Give and take</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Pend and post</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">P and v</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Wait and signal</span></li>
</ul><strong><span style="font-family: Georgia, "Times New Roman", serif;">Problems</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Forgetting to initialise</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Forgetting to take</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Taking wrong semaphore</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Forgetting to release </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Holding on too long</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Priority inversion</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Deadly embrace</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Avoid semaphore, if you can</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;">Inter-process Communication</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;">Common Inter-process Communication methods are</span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Events</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Mailboxes</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Message queues</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Pipes</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Timer functions</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Memory management</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt routines</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Events</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">One bit flag used for signalling</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Is set or reset by an event-flag; </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Events are grouped together</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Multiple tasks can wait on an event</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Or a combination of them…</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">May be considered as extension of semaphore concept </span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;">Mailboxes</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Is a software abstraction where a task can keep a mail meant for another task</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Task can wait for a mail to arrive…</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">In case the mail box is empty, os will block it</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">And will wake it up when a mail arrives…</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Putting the mail is accomplished by placing a pointer at mail box</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">If mail box is full, the writing task is blocked</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">It is woken up when another task reads a mail thereby making space at mailbox </span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Queue</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Similar to mail-box, but can have many entries</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Writing task add entries to head of queue, reading tasks decodes entries from its tail</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">In case the queue is empty, os will block reading task</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">And will wake it up when an entry arrives…</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">If queue is full, writing task gets an error condition, or may get blocked</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Normally, a queue entry is a pointer to the queue item</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Pipe</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Similar to unix pipe concept</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Multiple tasks can write to pipe and these go as a concatenated stream of byte</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Unlike, mailbox and queue, normally actuel entries are written, not its pointers…</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Os ensures that each write is an atomic operation</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Reading is from other end of pipe, the reading task is blocked in case there is not enough bytes to read</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">And unblocked, when they arrive…</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">What to use ?</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Semaphore is fastest and simplest</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Use event-flags, if you want to wait for multiple conditions</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Use a mailbox if you want to send a pointer to an information bearing structure to a task</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Or a queue when you have many such structures…</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">And a pipe in case you do not want to have shared data problem on the memory structures that you keep</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">There is no hard and fast rule about what to use when…</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Timer functions</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Delay or sleep</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Is normally based on system ticks</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Conditional sleep gets embedded with other functions like waiting for mail to arrive..</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Another facility is to provide a timer abstraction that calls up a user defined function periodically…</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Low priority pollong tasks like man-machine interface is best left to be handled by such a task…</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Memory management</span></strong><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Malloc and free is an option…</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Too fine grain for a real-time system</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Easier to manage is fixed sized pools…</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Rtos has to be told where and how much memory is available</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Essentially, you have to manage your memory</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Rtos will only help you do it…</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt routines</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Normally interrupt routines becomes part of rtos kernel</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">For this to work, the rtos need to be re-compiled whenever an interrupt routine is modified or new one added </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Alternately, an rtos can allow user specified interrupt routines… </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">More complex</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">And more difficult to debug</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">But relieves the botheration of re-compiling the kernel </span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt Latency</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt latency is the time between the reception interrupt and execution of the first instruction in the ISR.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt latency is a metric of system response to an external event.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">The longer the interrupts are disabled, the higher the interrupt latency.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt Latency = Maximum amount of time interrupts are disabled + Time to start executing the first instruction in the ISR</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt Response and Recovery</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt response is defined as the time between the reception of the interrupt and the start of the user code that handles the interrupt.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt Response = Interrupt Latency + Time to save the CPU context + Execution time of the kernel ISR entry function</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt recovery is defined as the time required for the processor to return to the interrupted code.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt recovery = Time to determine if a higher priority task is ready + Time to restore the CPU’s context of the highest priority task + time to execute the return from interrupt instruction</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt Latency, Response and Recovery</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPGsrQoRSFVG1cZ_210Hhs3EU7dBUkS5eXLNNJmRJBv5l3ayALjOJKU_x7SvsNoG-i5H6dLh0cAR9O7dSkqLQadZdJ3A1O4oR2D3tjVKVVErS-e26MubA6niXDPKd9xxrn8IB5hatPMeam/s1600-h/Picture3c.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPGsrQoRSFVG1cZ_210Hhs3EU7dBUkS5eXLNNJmRJBv5l3ayALjOJKU_x7SvsNoG-i5H6dLh0cAR9O7dSkqLQadZdJ3A1O4oR2D3tjVKVVErS-e26MubA6niXDPKd9xxrn8IB5hatPMeam/s400/Picture3c.PNG" /></span></a><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"> <strong>Application Programs</strong></span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Application program consists of three components</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Tasks</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">I/O Device Drivers</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt Service Routines</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIC8QmQ6J9-FNM5vNkgc19LhA2sxhVLwjUi98dHgwoclZGzR595NdZUivXPpP9slviixHO3ExUirTDvcqwHhsmnwlSFXSzsoFOFdIq-qJK1Fcjf8A0hhKpK5QQei5u-QrAbNNf-tXJFxLi/s1600-h/Picture3d.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIC8QmQ6J9-FNM5vNkgc19LhA2sxhVLwjUi98dHgwoclZGzR595NdZUivXPpP9slviixHO3ExUirTDvcqwHhsmnwlSFXSzsoFOFdIq-qJK1Fcjf8A0hhKpK5QQei5u-QrAbNNf-tXJFxLi/s320/Picture3d.PNG" /></span></a><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><strong>Decomposition Criteria</strong> </span><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Given a task with actions A and B if any of the following criteria are satisfied actions A and B should be in separate tasks</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"><strong>Time </strong>-actions A and B are dependent on cyclical conditions that have different frequencies or phases.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"><strong>Asynchrony -</strong> actions A and B are dependent on conditions that have no temporal relationships to each other.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"><strong>Priority -</strong> actions A and B are dependent on conditions that require a different priority of attention.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"><strong>Clarity/Maintainability-</strong> actions A B are either functionally or logically removed from each other</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Scheduling Algorithms</span></strong><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Prioritized Preemptive</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Highest Priority task ready to run will is always given control of the CPU. When a task makes a higher priority task ready to run, the current task is preempted and the higher priority task is immediately given control of the CPU.</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Round Robin Scheduling</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">When two or more tasks have the same priority, the kernel allows one task to run for a predetermined amount of time, called a quantum, then selects another task. </span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><strong>Task Priorities</strong> </span><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">A priority is assigned to each task. The more important the task, the higher priority given to it.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"><span style="color: blue;">Static Priorities:</span> Task priorities are said to be static when the priority of each task does not change during the application’s execution time.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;"><span style="color: blue;">Dynamic Priorities:</span> Task priorities are said to be dynamic if the priority of a task can be changed during the application’s execution time.</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;">Priority Inversion</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Priority inversion is a problem in real-time systems and occurs mostly when you use a real-time kernel.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">A priority inversion occurs when a low priority task causes execution of a higher-priority task to be delayed</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">If the task holding the lock has a lower priority than the task attempting to acquire the conflicting lock, then the lower priority task is delaying a higher priority one and a priority inversion has occurred.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Unbounded priority Inversion occurs when the lower priority task is preempted by a medium priority task</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBMSyuLES_eC0x2rm1S_SgOIANJxD_GdDJLd6O7QsbU31zukEkaYOJQjZ-oKUhvws2dbI12xsPHYE_g7p_PjO2p2-JwOoPHyhkrSCc5zvHLT0qmQoTzT6eFlnfvRZjeWmjKKrs8ou8NyGM/s1600-h/Picture4.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBMSyuLES_eC0x2rm1S_SgOIANJxD_GdDJLd6O7QsbU31zukEkaYOJQjZ-oKUhvws2dbI12xsPHYE_g7p_PjO2p2-JwOoPHyhkrSCc5zvHLT0qmQoTzT6eFlnfvRZjeWmjKKrs8ou8NyGM/s400/Picture4.PNG" /></span></a><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Priority Inheritance</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Priority inheritance promises a solution to unbounded priority inversion.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">The basic idea of priority inheritance is to provide dynamic calculation of the ceiling priority. </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">When a task blocks on a resource owned by a lower priority task, the lower priority task inherits the priority of the blocking task and continues.</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiiulMdY4f5l5VyrVhsMphzB4mnAAjH1FUW_NxNHS_Pk8GvAFBrsCbxKwlrb3X-9K2pJuDhi8ckMEIWcjSX_5okpKIGs-01UMwEaP4z2Qw1tWCpA_QOY5KmjFofwTT40PYeiOC6ctbHn-Lp/s1600-h/Picture5.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiiulMdY4f5l5VyrVhsMphzB4mnAAjH1FUW_NxNHS_Pk8GvAFBrsCbxKwlrb3X-9K2pJuDhi8ckMEIWcjSX_5okpKIGs-01UMwEaP4z2Qw1tWCpA_QOY5KmjFofwTT40PYeiOC6ctbHn-Lp/s400/Picture5.PNG" /></span></a><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;">Advantages of RT Kernels</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">RTOS allows real-time applications to be designed and expanded easily</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Simplifies the design process of RT Systems</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Time Critical events are handled as quickly and and efficiently as possible</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Provides valuable services such as semaphores, mailboxes, queues, time delays, timeouts etc. </span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Disadvantages of RT Kernels</span></strong><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Extra cost for the kernel</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">More RAM/ROM</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">2 to 4 percent additional CPU overhead</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><div style="text-align: center;"><span style="color: blue; font-family: Georgia, "Times New Roman", serif; font-size: large;"><strong>Overview of modern RTOSs</strong></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ol><li><span style="font-family: Georgia, "Times New Roman", serif;">MicroC/OS-II</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">QNX</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">pSOS </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">RT-Linux</span></li>
</ol><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="color: red; font-family: Georgia, "Times New Roman", serif; font-size: large;">MicroC/OS-II</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">uC/OS-II is a portable, ROMable, scalable, preemptive, multitasking kernel for real-time systems. </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Execution time of all uC/OS-II functions and services are very deterministic</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">uC/OS-II provides a number of services such as mailboxes, queues, semaphores, fixed-sized memory partition and time-related functions.</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;">Task Handling Method</span></strong><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiblde7gHePdNYHFUd0RsB5itHDVL7voxDhGHG1RRgPMLgSfr7XVx5oWk7edT1amP5Pg1ykNLYdrGw81PhhLQ0Ks9y5uPs7dWhjuqhejiC3UJKFA1nHCO0PTJ3GWaCd4TmkCBjMUWFifLdW/s1600-h/6.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiblde7gHePdNYHFUd0RsB5itHDVL7voxDhGHG1RRgPMLgSfr7XVx5oWk7edT1amP5Pg1ykNLYdrGw81PhhLQ0Ks9y5uPs7dWhjuqhejiC3UJKFA1nHCO0PTJ3GWaCd4TmkCBjMUWFifLdW/s400/6.PNG" /></span></a><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Memory Management</span></strong><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">uC/OS-II supports only fixed block memory management</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Application can request fixed-block memory blocks from a partition made of contiguous memory area.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Allocation and deallocation of these memory blocks are done in constant time and is deterministic.</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Inter-Process Communication</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">MicroC/OS-II supports following IPC primitives</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Mail Boxes</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Message Queues</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Semaphores</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Event Flags</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt Handling Method</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupts can suspend the execution of a task. </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">If a higher priority task is awakened as a result of the interrupt, the highest priority task will run as soon as all nested interrupts complete.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupts can be nested up to 255 levels deep</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="color: red; font-family: Georgia, "Times New Roman", serif; font-size: large;">QNX</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">QNX is a POSIX complaint operating system for embedded and real-time applications</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">QNX has a microkernel architecture</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">QNX consists of the small Neutrino microkernel managing a group of cooperating processes</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">QNX is a message based operating system</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">QNX uses process-thread model for task handling</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">QNX Architecture.</span></strong><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmc2z3AeyCT-6HoEWcsASg7heIayfie0uaBgiw8UoMkMU5YTDh55hILYehMAX9jDQxHBYMg2_iJfjAz29NQaaOjJu0eHFUbXfhOiu3u8iPioxpWafAPKTrkooUSbTPUGr20tpl9_CAagEh/s1600-h/7.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmc2z3AeyCT-6HoEWcsASg7heIayfie0uaBgiw8UoMkMU5YTDh55hILYehMAX9jDQxHBYMg2_iJfjAz29NQaaOjJu0eHFUbXfhOiu3u8iPioxpWafAPKTrkooUSbTPUGr20tpl9_CAagEh/s400/7.PNG" /></span></a><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Neutrino Microkernel</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Neutrino is a microkernel implementation of core POSIX features along with fundamental QNX message-passing services.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Neutrino provides the following services</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Threads, Message passing, signals, clocks, timers, interrupt handlers, semaphores, mutual exclusion locks, condition variables, barriers.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Neutrino is fully preemptible, even while passing message between processes.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">QNX has Symmetric Multiprocessor (SMP) Support</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Task handling model</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQmtLCv5WqO15w4BjTZRKRXkGR9sDjEeVhc-BSqaUVsnqiFz_E97oXm3GOR0LZuJhKxCHTlrQIMwc-so9LPLXa_dKwdvHkzCxCW0PWCPnQrcKam68w6sSEgatZzTSLyj2VCwD87DzGaW_0/s1600-h/8.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQmtLCv5WqO15w4BjTZRKRXkGR9sDjEeVhc-BSqaUVsnqiFz_E97oXm3GOR0LZuJhKxCHTlrQIMwc-so9LPLXa_dKwdvHkzCxCW0PWCPnQrcKam68w6sSEgatZzTSLyj2VCwD87DzGaW_0/s400/8.PNG" /></span></a><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Memory Management</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Every process has its own virtual memory space</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Virtual memory is supported by the paging mechanism of the processor</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Virtual memory protects processes from each other which enhances robustness of the system</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Swapping is supported but can be disabled</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Inter-Process Communication</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">QNX supports following IPC primitives</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Semaphores</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Mutexes</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Condition-variables</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Barriers </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">shared-memory</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">FIFO</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt Handling Method</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt redirector in the microkernel handles interrupts in their initial stage</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">User-level threads (usually resource managers) can attach an ISR to a hardware interrupt number.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Supports Interrupt sharing by attaching more than one ISRs to a hardware interrupt number.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">ISRs can send pulses and signals to threads which are waiting the interrupt.</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="color: red; font-family: Georgia, "Times New Roman", serif; font-size: large;"><strong>pSOS</strong></span><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">pSOS is a modular high performance real-time operating system designed specifically for embedded microprocessors.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">pSOS is built around pSOS+ multitasking kernel and a collection of companion software components.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">pSOS System Environment</span><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span></li>
</ul><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjS_Lf9gFR6H1mCDqTBSI4smlMtNwctt47LSxAwFQ0SobM5Vzrf0ISVgQxLnd4NZ-cBc-Jj6UmNxPI5bhqVIW9uGz_0vHftRhYkrLtoyw8FAIEBgnq0zsRm9G7nNo-JfzaqIq4a8GKgM1iR/s1600-h/9.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjS_Lf9gFR6H1mCDqTBSI4smlMtNwctt47LSxAwFQ0SobM5Vzrf0ISVgQxLnd4NZ-cBc-Jj6UmNxPI5bhqVIW9uGz_0vHftRhYkrLtoyw8FAIEBgnq0zsRm9G7nNo-JfzaqIq4a8GKgM1iR/s320/9.PNG" /></span></a><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Task handling model</span></strong><br />
<strong><span style="font-family: Georgia;"></span></strong><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgevsbz566XZTL61t1R3VYWVqnLBhUjOOhUevDGyX4Tr9dQON4XrvEPCE8n-Ukbh-iFCsmZkVL0MtlG710JhuGymUxorZddDwj40rGdWCiFNbV7kS6hBA33_GkbJamYkiHUkuwShhL_AYNh/s1600-h/10.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgevsbz566XZTL61t1R3VYWVqnLBhUjOOhUevDGyX4Tr9dQON4XrvEPCE8n-Ukbh-iFCsmZkVL0MtlG710JhuGymUxorZddDwj40rGdWCiFNbV7kS6hBA33_GkbJamYkiHUkuwShhL_AYNh/s400/10.PNG" /></span></a><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Memory Management</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">pSOS has a flat memory space</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">MMU is supported but it is optional</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">No virtual memory/swapping support </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">No memory protection for tasks</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Provides two set of memory handling functions</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Regions which are non fixed sized memory pools</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Partitions which are fixed sized memory pools</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;">Inter-Process Communication</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">pSOS supports following IPC primitives</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Message Queues</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Events</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Semaphores</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Asynchronous Signals</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt Handling Method</span></strong><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt Handling is nested and prioritized</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt Handler uses kernel or interrupt stack (depending upon the target)</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Most synchronization and communication objects can be used for the communication between ISR and other tasks.</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<strong><span style="font-family: Georgia, "Times New Roman", serif;">Interrupt Latencies</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTStWHdFKMzy-_1E1BfOBm_BQTh_p80hrU3IdBBh6YxmPMBm6Aq-0Ta5MCsa8T5KNW2jsNQiviDMUhNAGKEVzrw7oukFCT4781RkXa-dkzPIDX7Duh9GoOBIP04c4gpv3lLaqmPCA-opFH/s1600-h/11.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTStWHdFKMzy-_1E1BfOBm_BQTh_p80hrU3IdBBh6YxmPMBm6Aq-0Ta5MCsa8T5KNW2jsNQiviDMUhNAGKEVzrw7oukFCT4781RkXa-dkzPIDX7Duh9GoOBIP04c4gpv3lLaqmPCA-opFH/s400/11.png" /></span></a><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="color: red; font-family: Georgia, "Times New Roman", serif; font-size: large;">RT-Linux</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">RT-Linux is an operating system in which a small real-time kernel coexists with the Posix-Like Linux kernel.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">A simple real-time executive (RT Kernel) runs a non-real-time kernel (Linux) as its lowest priority task.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Real-Time Linux is a version of linux that provides hard real time capability.</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">It extends standard UNIX programming environment to real-time problems</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">RT-Linux Layer Architecture</span></strong><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxMKbHJKH2DzLbbBo_-modBb1h09EOtY6-9vqS4K3TT9x2CyrnIppcx-QJVwBD8ehM_Zadt8j5brytd5l-m_RDDNS0ZZM-Z-OV7Yfn6bX9eJAR39EYdw_2uMCosWM3CSuvdiR9CNTGx-he/s1600-h/12.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxMKbHJKH2DzLbbBo_-modBb1h09EOtY6-9vqS4K3TT9x2CyrnIppcx-QJVwBD8ehM_Zadt8j5brytd5l-m_RDDNS0ZZM-Z-OV7Yfn6bX9eJAR39EYdw_2uMCosWM3CSuvdiR9CNTGx-he/s400/12.png" /></span></a><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Task Handling Method</span></strong><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnbz1yseenFgtMTGGYfpjmkszbyQu0-wrywWqd1EW0qfM044v0FffgpVqFZzmF5eI8__MFyJIRxWkFIBLDPFijvT65DTpZ4A1kXeGEXsBcYBp-gv2f6_ggVCYd17Yeoc2YWhdcm-EsGoqW/s1600-h/13.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, "Times New Roman", serif;"><img $r="true" border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnbz1yseenFgtMTGGYfpjmkszbyQu0-wrywWqd1EW0qfM044v0FffgpVqFZzmF5eI8__MFyJIRxWkFIBLDPFijvT65DTpZ4A1kXeGEXsBcYBp-gv2f6_ggVCYd17Yeoc2YWhdcm-EsGoqW/s400/13.PNG" /></span></a><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Memory Management</span></strong><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">RT-Linux doesn't support memory protection </span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Virtual memory/swapping supported</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">No dynamic memory allocation is available</span></li>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
<div><strong><span style="font-family: Georgia, "Times New Roman", serif;">Inter-Process Communication</span></strong><br />
</div><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><ul><li><span style="font-family: Georgia, "Times New Roman", serif;">RT-Linux supports following IPC primitives</span></li>
<span style="font-family: Georgia, "Times New Roman", serif;"></span>
<ul><li><span style="font-family: Georgia, "Times New Roman", serif;">Mutexes</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">Shared Memory</span></li>
<li><span style="font-family: Georgia, "Times New Roman", serif;">FIFOs</span></li>
</ul><span style="font-family: Georgia, "Times New Roman", serif;"></span>
</ul><div><span style="font-family: Georgia, "Times New Roman", serif;"></span><br />
</div><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><span style="color: red;">NB:- To view image in original size please open each one in a seperate window/tab</span></span><div><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span><br />
</div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-1372933001761370251.post-62930025347192241412009-09-16T14:22:00.001+05:302009-09-16T14:24:02.728+05:3013.56 MHz RFID systems and antennas design guide<div style="text-align: justify;"><span style="font-family: Arial;"><span class="Apple-style-span" style="font-size: 13px;"></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">This document is aimed at providing 13.56 MHz RFID systems designers with a practical cookbook on how to optimize RFID systems and antennas. A thorough analysis of the most important RFID system parameters is presented. The emphasis is placed on physical concepts, rather than on lengthy theoretical calculations.</span></span><br />
</div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"></div><div style="text-align: left;"><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><b><span class="Apple-style-span" style="font-size: small;">Antenna? You said Antenna?</span></b></span><br />
</div><div style="text-align: left;"></div><span style="font-family: Georgia;"><span class="Apple-style-span" style="font-size: 16px;"></span></span><br />
<div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"></div><span style="font-size: small;"></span><br />
<div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">In the wireless world, antennas are used to transmit radio frequency energy from location A to location Bin the most efficient manner. That is they do radiate the power that is fed to them. If we were dealing with UHF RFID systems, this hypothesis would be true. However, at 13.56MHz, the picture is quite different. The wavelength in free space at 13.56 MHz is </span></span></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia;"><span class="Apple-style-span" style="font-size: 16px;"><br />
<span style="font-size: small;"></span></span></span></div><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh91z4TdTgizn_mUR7ycF9G8s4guLz8Q3KyspVpPSfeWFhAssH7QotpzEbg8d3IwausROQ4pq8jxS53uqI9AOIWGKOMulQU9dWqDolOIpl4H0TIwxKLs2uX4YzZ6XF-l1GckPEAGEnoUNpV/s1600-h/1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" mq="true" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh91z4TdTgizn_mUR7ycF9G8s4guLz8Q3KyspVpPSfeWFhAssH7QotpzEbg8d3IwausROQ4pq8jxS53uqI9AOIWGKOMulQU9dWqDolOIpl4H0TIwxKLs2uX4YzZ6XF-l1GckPEAGEnoUNpV/s200/1.JPG" /></a></div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">A standard ground plane antenna has a length of one quarter of the wavelength which is 5.53 meters. It has a radiation resistance close to 50 ohms. In the world of 13.56 MHz RFID systems, we are unlikely to come close to such dimensions. And even if we do, the amount of radiated power will remain quite small. Let us consider an example. Say that we have a loop antenna and that its area is one square meter. The radiation resistance is given by: </span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">In our case, this yields RR=130 milliohms and we probably have used 4 meters of wire to construct the loop, assuming a square shape… So, if we do not radiate energy, how do we transfer it to the tag we intend to communicate with?</span></span></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia;"><span class="Apple-style-span" style="font-size: 16px;"><br />
<span style="font-size: small;"></span></span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZzMwy-TjcSsgx7a71O_hKq0PK3WhGi0YtWIOE_PiTWsFY-Ns4VIZtY3GRkUOVuMxNNhsWLXMFYAK8npKp_vJPMZoB-8xo8H_L_AdrXmV9vGIFDaurcgiP6C8zD4hEEWAxGlLJ07OVkVDu/s1600-h/2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" mq="true" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZzMwy-TjcSsgx7a71O_hKq0PK3WhGi0YtWIOE_PiTWsFY-Ns4VIZtY3GRkUOVuMxNNhsWLXMFYAK8npKp_vJPMZoB-8xo8H_L_AdrXmV9vGIFDaurcgiP6C8zD4hEEWAxGlLJ07OVkVDu/s320/2.JPG" /></a></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia;"><span class="Apple-style-span" style="font-size: 16px;"></span></span> <span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif;"><br />
</span></span><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">The answer is magnetic coupling. Some people refer to RFID base stations as “couplers”. This </span></span><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">terminology is certainly quite appropriate in our case. We have indeed to consider the RFID system, antenna plus tag, as a loosely coupled transformer, with the base station antenna acting as the primary of this transformer. This concept is of paramount importance for the system designer. One must always remember it. The tag AND the base station “antenna” constitute THE system, and cannot be studied separately. The other point to remember is that if we feed five Watts to a loop RFID “antenna”, these five Watts, being NOT radiated, will have to be dissipated somewhere…</span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><br />
<span style="font-family: Georgia, "Times New Roman", serif;"><b><span class="Apple-style-span" style="font-size: small;">Coupled circuits</span></b></span></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia;"><span class="Apple-style-span" style="font-size: 16px;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">In the preceding paragraph, we surreptitiously introduced another important, to say the least, concept. We said that we had a loosely coupled transformer. The complete theory of coupled circuits is beyond the scope of this document. It involves quite lengthy calculations, but we can somewhat alleviate this burden thanks to the use of a circuit simulator like SPICE. Now, we must define the characters, and assign a role to each of them.</span></span></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia;"><span class="Apple-style-span" style="font-size: 16px;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">The first character is our base station antenna. In order to maximize the communication range with the tag, we must create the strongest possible magnetic field, so that the tag will be able to pick up enough power in order to energize itself. Since the magnetic field from the loop is proportional to the current flowing through the conductor that actually constitutes the loop, we have to maximize this current. </span></span></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia;"><span class="Apple-style-span" style="font-size: 16px;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">The second character is the tag. The tag wants to be able to collect in as much energy as possible from the ambient magnetic field generated by the base station loop antenna. We must maximize this energy gathering capacity.</span></span></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia;"><span class="Apple-style-span" style="font-size: 16px;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">These goals can be achieved in various ways. However, the next paragraphs will show that the art of RFID system design requires a careful understanding of the pitfalls and conflicts that will inevitably arise. Our characters are not team players. More often than not they are unfair to each other.</span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia; font-size: x-large;"><span class="Apple-style-span" style="font-size: 24px;"><b><br />
<span style="font-size: small;"></span></b></span></span></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia, "Times New Roman", serif;"><b><span class="Apple-style-span" style="font-size: small;">The Q conflict:</span></b></span></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia;"><span class="Apple-style-span" style="font-size: 16px;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">From our base station antenna point of view, there is only one way to have a strong current flowing trough the conductors: the loop has to be tuned and made resonant. The same holds true for the tag. And here comes the first problem. If we had no data to transmit back and forth, we could increase the Q factor of both devices up to the tolerances or the components used. This would be the best way on both sides to fulfil our characters requirements. However, if we design a system to be compliant with the ISO 15693 standard, we have a sub carrier at 423 KHz, possibly ON/OFF keyed if we use the single sub carrier modulation at a data rate of 27 kBits/sec. For the ISO 14443 standard, the sub carrier is at 847 kHz, and the data rate is 106 kBits/sec. A tuned circuit acts as a band pass filter. We must leave enough bandwidth for the sub carrier and its modulation side bands.</span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia;"><span class="Apple-style-span" style="font-size: 16px;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia, "Times New Roman", serif;"><b><span class="Apple-style-span" style="font-size: small;">Minimum bandwidth requirements from the tag point of view:</span></b></span></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia;"><span class="Apple-style-span" style="font-size: 16px;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">Let us take a look at how the tag modulation sees the tag antenna. In most cases, a tag can be modeled as a parallel resonant circuit (first order approximation). The modulation spectrum can be approximated quite accurately. On the following graph, we have represented the tag frequency response for a Q value of 12 (deep green curve), along with the ISO15693 single sub carrier /ASK power spectrum for a pseudo random bit sequence. We can see that the tag modulation is attenuated by about 1 dB, which is acceptable. </span></span></div><div align="justify" style="text-align: justify;"><span style="font-family: Georgia;"><span class="Apple-style-span" style="font-size: 16px;"><br />
<span style="font-size: small;"></span></span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhocDkP9fmiQM81fGC1VdDzVQvNERUxNzoX3mq7-wj4z1F9R9NoJSYqA7myi6z1ktCHCPRMpvZyj3C9jQwamYvS9bxZu43fUfTdHZL717RceAAUd3I1rHS8ELVddsymjNfB5qjxTOpjznyT/s1600-h/3.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="257" mq="true" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhocDkP9fmiQM81fGC1VdDzVQvNERUxNzoX3mq7-wj4z1F9R9NoJSYqA7myi6z1ktCHCPRMpvZyj3C9jQwamYvS9bxZu43fUfTdHZL717RceAAUd3I1rHS8ELVddsymjNfB5qjxTOpjznyT/s400/3.JPG" width="400" /></a></div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;"> </span></span><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">However, if we take a tag with a Q factor of about 16 (red curve), we find that the modulation peaks are attenuated by 3dB. And this is a limit that should not be trespassed otherwise the communication range between the base station and the tag could be severely affected. In practice, the optimal Q value will be chosen between 9 and 16, depending on other system constraints that we are going to analyze later.</span></span><br />
</div><div align="justify" style="text-align: justify;"></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjphljr1nTq7u2f7Lj7CSkVRpwRnLEro6lZPuTy9Wghk3eyKtm15GqmlHJt1SpeQIvzjr55P-Mwy_cZDnax_0fNN1SxASX25bcq1rKU-WT-jHaXRKahxlcXlf47jsSu0qZVUxXvqzbAozYd/s1600-h/4.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" mq="true" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjphljr1nTq7u2f7Lj7CSkVRpwRnLEro6lZPuTy9Wghk3eyKtm15GqmlHJt1SpeQIvzjr55P-Mwy_cZDnax_0fNN1SxASX25bcq1rKU-WT-jHaXRKahxlcXlf47jsSu0qZVUxXvqzbAozYd/s320/4.JPG" /></a></div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"><br />
<span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">The calculation of the modulation power spectrum is more complicated in the FSK double sub carrier case. However, it yields essentially the same results, as can be seen on the following graph. For the ISO 1443 standard, the modulation power spectrum is similar to an ASK spectrum for part A and part B. The only difference is the sub carrier frequency which is higher. This will of course change the Q requirement for the tag, it will have to be lower. The tag optimum Q will range from 4 to 9. We can now define a set of rules for the minimum bandwidth requirements, as seen from the tag point of view:</span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">BW = FTOL + FSUB + DataRate ( for single sub carrier / ASK mode )</span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">BW = FTOL + FSUB + DataRate( for double sub carrier FSK, or BPSK mode)</span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">Where: BW is the minimum bandwidth, that is fc/2*Q, fc = 13.56 MHz.</span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">FTOL is the frequency tolerance of the tuned circuit.</span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">FSUB is the sub carrier frequency. And we must have</span></span></div><div align="justify" style="text-align: justify;"></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBi7q4DScs_5r1DAnNM0UaZSH-L6PPmFnRLEsyr5dz4BJPiO88fVlRs6Be83ywka_fGfUiEMi_N2E44cqHrY02iDloBjVAEEtXXBMS6yZqev_Q0pkHRZmsbTck19697jbw5do-HLe000e_/s1600-h/5.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" mq="true" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBi7q4DScs_5r1DAnNM0UaZSH-L6PPmFnRLEsyr5dz4BJPiO88fVlRs6Be83ywka_fGfUiEMi_N2E44cqHrY02iDloBjVAEEtXXBMS6yZqev_Q0pkHRZmsbTck19697jbw5do-HLe000e_/s200/5.JPG" /></a></div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;"><strong>Minimum bandwidth requirements from the base station antenna point of view:</strong></span></span><br />
</div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">The base station antenna point of view is exactly the same as the tag antenna point of view. In fact, the base station antenna must have enough bandwidth to recover the tag modulation. The base station sends commands to the tag by direct modulation of the 13.56 MHz carrier. The protocol does not use a sub carrier for the base station to tag communications, and for both ISO standards, the data rates and modulation techniques used yield spectrums that have much smaller bandwidths than the tag. Therefore, for all practical purposes, we can say that the minimum system bandwidth requirements are set by the tag modulation spectrum. However, we must emphasize again that this assertion is only valid when the tag and the base station antenna are loosely coupled.</span></span><br />
</div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">One should also consider these bandwidth requirements only as a good starting point, and always remember that only experimental results should say the final word. For instance, it might be possible that designing a base station antenna with a slightly higher Q than what theory suggests will increase the reading range, because the magnetic field strength improvement will outweigh the reduction in the tag backscatter signal strength. </span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;"><strong>How to calculate the coupling factor:</strong></span></span><br />
</div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">The nice thing is that the coupling factor depends only on geometrical parameters. The inductance values, </span></span><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">the coils number of turns, are not involved. Let us consider the following oversimplified representation of a </span></span><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">base station antenna coil and a tag antenna coil:</span></span></div><div align="justify" style="text-align: justify;"></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaBTZK6G4ohXn8zZqJxdZiV6Fg-tEoUoK5cOPM_fBn_b5QiBArqPnshMovYotWVmgl6ExrDeRkvFIOgWi6yLkDxAZ9vEc_IrdwLMd7l-YbeUe4eX_8SAjKG5n8CJsSXWS6d-cOYXSo179s/s1600-h/6.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" mq="true" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaBTZK6G4ohXn8zZqJxdZiV6Fg-tEoUoK5cOPM_fBn_b5QiBArqPnshMovYotWVmgl6ExrDeRkvFIOgWi6yLkDxAZ9vEc_IrdwLMd7l-YbeUe4eX_8SAjKG5n8CJsSXWS6d-cOYXSo179s/s320/6.JPG" /></a></div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">On the left, we have the base station antenna coil, with a diameter d1=2 x r1. On the right, we have the tag antenna coil, with a diameter d2=2 x r2, tilted along the axis by an angle . The coupling factor can be expressed as:</span></span></div><div align="justify" style="text-align: justify;"></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3lsNN90c9Ev_oFptSZzpugy90ze4k8L3drr4FvTRd9dqTAsqodWK0jQfdz6Jk1Hdd07BXQ8Mvu810NdiEmIpIEzn6kiPQOsCq2Yg9OPtRwHDMOS_RkAdlmbrYhArrT-Y81HsjWp1fuEl8/s1600-h/7.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" mq="true" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3lsNN90c9Ev_oFptSZzpugy90ze4k8L3drr4FvTRd9dqTAsqodWK0jQfdz6Jk1Hdd07BXQ8Mvu810NdiEmIpIEzn6kiPQOsCq2Yg9OPtRwHDMOS_RkAdlmbrYhArrT-Y81HsjWp1fuEl8/s200/7.JPG" /></a></div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">Of course, this equation is valid only for circular coils, but the design guidelines we are going to infer from it are valid whatever the shape. From the equation above, it is obvious that the coupling factor will be maximum when r1 = r2.</span></span><br />
</div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;"><strong>Getting out of the inferno:</strong></span></span><br />
</div><div align="justify" style="text-align: justify;"></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">In order to avoid a situation were the coupling factor would be too high, we can use different strategies:</span></span><br />
<br />
<span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">We can design a system where the base station antenna is much larger than the tag coil. This is generallythe case for long range systems.</span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">For a short range system, where the sizes may be comparable, we must sacrifice the communicationrange to system reliability. This can be done by using a much lower Q for the tags. We can also deliberately mistune the tags.</span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">The most critical situation will be for medium range systems, where antenna sizes are not sufficiently different to prevent coupling factor frequency spreading at short range. In that case, one is advised to maintain, by means of a physical obstacle, a minimum distance between the tag and the antenna in order to maintain the system in a functional state. Also, the output power stage driving the base station antenna MUST be resistant to mismatch. Even medium power stages can die quickly if they do not see the right load.</span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif;"><br />
<span style="font-size: small;"></span></span></span></div><div align="justify" style="text-align: justify;"><span class="Apple-style-span"><span style="font-family: Georgia, "Times New Roman", serif; font-size: small;">However, for short and medium range systems, an angel comes to our rescue and will mitigate the devil’s actions. All tags have a maximal power supply voltage. To protect the chip from an over voltage condition, the chip manufacturers usually place a pair of zener diodes that will start to conduct before the limit is reached in parallel with the coil inputs. When the diodes are placed in strong conduction, they effectively completely destroy the tag Q factor. This is very important because, in most cases, the coupling factor’s deleterious effects are sufficiently alleviated to maintain the system in a functional state.</span></span></div><div align="justify" style="text-align: justify;"><span style="font-size: small;"><br />
</span></div><div align="justify"><span style="font-size: small;"></span></div>Unknownnoreply@blogger.com5tag:blogger.com,1999:blog-1372933001761370251.post-35293673687103007752009-09-08T11:36:00.021+05:302009-09-09T13:40:07.818+05:30Embedded system<div class="separator" style="clear: both; text-align: center;"></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> </div><div class="separator" style="clear: both; text-align: justify;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2pBS5g64mGZhvfLUfBE2UyXFEYjOuLjcojQ228UVW_xsGIuIKXZbXRWfQBmWrNmQITlGkNUXyxL1L5KA95kwTP9kRruJDo6BGNOGKWTd_LrPAGcRPKe1ptG-Q3k4YpyOzmlEUGjbsqfQM/s1600-h/1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span></a></div><div style="text-align: justify;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4IkjSkaQ12xwkJyCOfi94mKvsmmsmD_agg-RQohotcvCkjxy5RHDb0urJ-Tr-G0UqCxkU0NqkLAkkeinYpNpuFfMSH21a4NZcHqgKzAIlR3lAKLhArkixOwLNLyZXuZk7nhn7Nv8BddDj/s1600-h/1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="250" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4IkjSkaQ12xwkJyCOfi94mKvsmmsmD_agg-RQohotcvCkjxy5RHDb0urJ-Tr-G0UqCxkU0NqkLAkkeinYpNpuFfMSH21a4NZcHqgKzAIlR3lAKLhArkixOwLNLyZXuZk7nhn7Nv8BddDj/s320/1.jpg" width="320" /></a></div><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">An embedded system is a computer system designed to perform one or a few dedicated functions, often with real-time computing constraints.Embedded systems are controlled by a main processing core that is typically either a microcontroller or a digital signal processor (DSP). Since the embedded system is dedicated to specific tasks, design engineers can optimize it, reducing the size and cost of the product, or increasing the reliability and performance. Some embedded systems are mass-produced, benefiting from economies of scale.</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Physically, embedded systems range from portable devices such as digital watches and MP3 players, to large stationary installations like traffic lights, factory controllers, or the systems controlling nuclear power plants. Complexity varies from low, with a single microcontroller chip, to very high with multiple units, peripherals and networks mounted inside a large chassis or enclosure.</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">In general, "embedded system" is not an exactly defined term, as many systems have some element of programmability. For example, Handheld compute</span></span><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">rs share some elements with embedded systems such as the operating systems and microprocessors which power them but are not truly embedded systems, because they allow different applications to be loaded and peripherals to be connected.</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"><b><span style="font-size: x-large;"><span style="font-family: Georgia, 'Times New Roman', serif;">Characteristics</span></span></b></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Embedded systems are designed to do some specific task, rather than be a general-purpose computer for multiple tasks. Some also have real-time performance constraints that must be met, for reasons such as safety and usability; others may have low or no performance requirements, allowing the system hardware to be simplified to reduce costs.</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Embedded systems are not always standalone devices. Many embedded systems consist of small, computerized parts within a larger device that serves a more general purpose. For example, the Gibson Robot Guitar features an embedded system for tuning the strings, but the overall purpose of the Robot Guitar is, of course, to play music.Similarly, an embedded system in an automobile provides a specific function as a subsystem of the car itself.</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">The program instructions written for embedded systems are referred to as firmware, and are stored in read-only memory or Flash memory chips. They run with limited computer hardware resources: little memory, small or non-existent keyboard and/or screen.</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"><span style="font-size: x-large;"><b><span style="font-family: Georgia, 'Times New Roman', serif;">Reliability</span></b></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Embedded systems often reside in machines that are expected to run continuously for years without errors, and in some cases recover by themselves if an error occurs. Therefore the software is usually developed and tested more carefully than that for personal computers, and unreliable mechanical moving parts such as disk drives, switches or buttons are avoided.</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Specific reliability issues may include:</span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">The system cannot safely be shut down for repair, or it is too inaccessible to repair. Examples include space systems, undersea cables, navigational beacons, bore-hole systems, and automobiles.</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">The system must be kept running for safety reasons. "Limp modes" are less tolerable. Often backups are selected by an operator. Examples include aircraft navigation, reactor control systems, safety-critical chemical factory controls, train signals, engines on single-engine aircraft.</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">The system will lose large amounts of money when shut down: Telephone switches, factory controls, bridge and elevator controls, funds transfer and market making, automated sales and service.</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">A variety of techniques are used, sometimes in combination, to recover from errors both software bugs such as memory leaks, and also soft errors in the hardware:</span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">watchdog timer that resets the computer unless the software periodically notifies the watchdog</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">subsystems with redundant spares that can be switched over to</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">software "limp modes" that provide partial function</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Designing with a Trusted Computing Base (TCB) architecture ensures a highly secure & reliable system environment</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">An Embedded Hypervisor is able to provide secure encapsulation for any subsystem component, so that a compromised software component cannot interfere with other subsystems, or privileged-level system software. This encapsulation keeps faults from propagating from one subsystem to another, improving reliability. This may also allow a subsystem to be automatically shut down and restarted on fault detection.</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Immunity Aware Programming</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> </div><div style="text-align: justify;"><span style="font-size: x-large;"><b><span style="font-family: Georgia, 'Times New Roman', serif;">Categories</span></b></span></div><ol><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Stand alone</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Real-time</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Networked information appliances</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Mobile</span></span></li>
</ol><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Stand alone</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Examples – digital camera, microwave oven, mp3 player</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Works alone – unlike the mobile phone… </span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Uses a processor, has memory, and runs under program control. But, these are of no concern to user…</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">To him, it is a dum, silly device, doing a specific job</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Real time</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">One of the most misused words…</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Hard and soft… </span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Meeting of dead-line….</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Catastrophe</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Relates to servicing of hardware interrupts…</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Interrupt servicing introduces interrupt latency</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Realtime systems are those in which developer can have detailed control on interrupt latency</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Networked information appliances</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Recent</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Example – web camara… </span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">System has an ip and can be controlled from anywhere in the web…</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Has tcp/ip protocol plus application layer software</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Might dominate the scene in future</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Mobile devices</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Mobile phones…</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Pda </span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Smart phones…</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Mobile phones will slowly grow in capability to include functionality of lap-tops…</span></span></li>
<li style="text-align: justify;"><span style="color: red;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">What will laptops do ?</span></span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> </div><div style="text-align: center;"><div style="text-align: center;"><span style="font-size: x-large;"><b><span style="font-family: Georgia, 'Times New Roman', serif;">Overview of embedded system architecture</span></b></span></div></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Topmost view</span></span></b></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"></div><ol><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Hardware</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Operating system</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Application software </span></span></li>
</ol><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Hardware</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">CPU</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Random access memory</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Read only memory</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Input devices</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Output devices</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Communication interfaces</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">User developed circuitry</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Specialities</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Reliability</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Performance</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Power consumption</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Cost</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Size</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Limited user interface</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Upgradation</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Trends</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Increased processor power</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">More memory</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Specialised operating systems</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Networking</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">More compilers</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Many development tools</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Programmable hardware</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Peripherals</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Embedded Systems talk with the outside world via peripherals, such as:</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Serial Communication Interfaces (SCI): RS-232, RS-422, RS-485 etc</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Synchronous Serial Communication Interface: I2C, SPI, SSC and ESSI (Enhanced Synchronous Serial Interface)</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Universal Serial Bus (USB)</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Multi Media Cards (SD Cards, Compact Flash etc)</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Networks: Ethernet, Controller Area Network, LonWorks, etc</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Timers: PLL(s), Capture/Compare and Time Processing Units</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Discrete IO: aka General Purpose Input/Output (GPIO)</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Analog to Digital/Digital to Analog (ADC/DAC)</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Debugging: JTAG, ISP, ICSP, BDM Port, ...</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: center;"><div style="text-align: justify;"><div style="text-align: center;"><span style="font-size: x-large;"><b><span style="font-family: Georgia, 'Times New Roman', serif;">Interrupts</span></b></span></div></div></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Basics</span></span></b></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Starts from hardware</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">IRQ gets asserted</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Processor goes to interrupt routine (ISR)</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">After saving the context</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">On iret, it restores context and continues with where it left</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Linkage to ISR is through an interrupt vector table</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Interrupts are usually disabled within an ISR</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Context saving</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Saving is to stack</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">All registers that you use</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Should be restored before exit</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Can be time consuming</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Will increase interrupt latency</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Failing to save is catastrophic</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Have an eye on stack depth</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Disabling interrupts</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">On entry in an isr, interrupts are normally disabled…</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Specifically enable them, in case you need this</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Remember that this can lead to obscure bugs</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Safe option is to keep isr very small so that disabling interrupts during this time is acceptable</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Writing ISR</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Can be in assembler or c</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">In prototype stage, write in c </span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Once things starts working and you are close to integration, convert to assembler</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Keep it small and straight</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Analyse thoroughly</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Shared data problem</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">When the main routine and isr share a memory area, the isr may modify a portion of the memory that was under usage by main routine</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">When interrupt returns, the main routine continues execution, without being aware that, memory is updated by ISR</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">This can lead to a serious bug….</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Critical section</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Area of code that cannot be interrupted</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Enclosing the section with disable…..enable brackets can do the trick </span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Do not do this in a general subroutine that could be called from many other routines… (why not ?)</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Be aware that this compromises the system performance…</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Latency</span></span></b></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Most important factor for system performance analysis</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">For the highest priority interrupt this is equal to context switching time plus largest interrupt disabled period </span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">For other interrupts the analysis is more complex</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">You have to consider the frequency of higher priority interrupts, and the time taken by their isrs</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Understand your hardware very well before you sit down to analyse the latency…</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Thumb rules</span></span></b></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Make isr as small and simple as possible</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Analyse latency problem very carefully before you start debugging the code</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Disable interrupts only if you must</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">However, be aware that in a large number of situations, it is the simplest way out… </span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> </div><div style="text-align: center;"><div style="text-align: center;"><span style="font-size: x-large;"><b><span style="font-family: Georgia, 'Times New Roman', serif;">Software architectures</span></b></span></div></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"></div><ol><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Round robin</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Round robin with interrupts</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Function queue scheduling</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Rtos</span></span></li>
</ol><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Round robin</span></span></b></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Contains a single main loop that polls each device one after the other and service them</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Simplest</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">No interrupts</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">No shared data problem</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">No latency concern</span></span></li>
<li style="text-align: justify;"><span style="color: #660000;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Problem:- frequency of interrupt cannot be higher than reciprocal of the total polling loop time</span></span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Round robin with interrpts</span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">A number of isrs that performs minimal interrupt servicing and set up a flag for followup servicing</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Main loop polls the flags for for follw up service</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Shared data problem exist….</span></span></li>
<li style="text-align: justify;"><span style="color: #660000;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Problem:- all task codes in the main round robin loop executes with same priority</span></span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Function queue scheduling</span></span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">A number of isrs that performs minimal interrupt servicing and add a pointer to followup function into a function queue</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Main loop goes through this queue and executes them</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">A priority scheme for execution of calls in the queue may be implemented..</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">RTOS</span></span></span></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Purchased off the shelf</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Splits total system to kernal and user tasks</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Kernal consists of isr and scheduler </span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">The application code is organised as tasks</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Concurrent running of all task codes </span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">PROS</span></span></li>
<ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Development will be more deciplined and streamlined</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Easy to upgrade</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Stable performance</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Complexity is handled by someone else</span></span></li>
</ul>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">CONS</span></span></li>
<ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Price</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Higher overheads</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">More complex and hence bigger learning curve</span></span></li>
</ul></ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Selecting an architecture</span></span></b></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Take the simplest</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">That meets your requirements </span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Remember possible future requirements also</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Keep it small and straight</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">And expandable</span></span></li>
<li style="text-align: justify;"><span style="background-color: yellow;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">It is a tricky decision…</span></span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: center;"><div style="text-align: justify;"><div style="text-align: center;"><span style="font-size: x-large;"><b><span style="font-family: Georgia, 'Times New Roman', serif;">Embedded system development tools</span></b></span></div></div></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Host and target</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Linker locator</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Getting system to target</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Debugging</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Testing on host</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Instruction set simulators</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Assert macro</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Using laboratory tools</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Host & target</span></span></span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></b></div><div style="text-align: justify;"><span style="background-color: cyan;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Host :</span></span></span><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> the system used for development</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><span style="background-color: cyan;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Target </span></span></span><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">: the actual system in which the developed software will run </span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><span style="background-color: cyan;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Native :</span></span></span><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> a software tools (eg. Compiler) that generate code meant for the processor on which it runs.</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><span style="background-color: cyan;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Cross :</span></span></span><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> a software tools (eg. Compiler) that generate code meant for another processor than the processor on which it runs.</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Strategy</span></span></b></div><ol><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Develop proto-system on host</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Test proto-system on host</span></span></li>
<li style="text-align: justify;"><span style="background-color: red;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Ok ?</span></span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Cross compile for target</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Download to target</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Test on target</span></span></li>
<li style="text-align: justify;"><span style="background-color: red;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Ok ?</span></span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Release</span></span></li>
</ol><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Developing proto system on host</span></span></span></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Purpose </span></span></li>
<ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Test out concept</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">And mmi</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">And general working</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">And task structures</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">But not exact system or timing details</span></span></li>
</ul>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Method:</span></span></li>
<ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Use actual components whereever possible</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">And stubs, in all other cases</span></span></li>
</ul>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Test out system as extensively as possible</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Tool chain for development for host </span></span></b></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></b></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div class="separator" style="clear: both; text-align: justify;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBom0cFufZwsM1ZDUfDgeIC7xB39w7N1rx3Q5CJvoVTD4mZz6gUpItYXGs5EdmgUS70DiSRgan9phH3_ojv-5sOlBSORMs6xDbxzdv7Kxf9MDmtY8rXmn3-zx82kSPp_Wl3DJXSR3DqnHt/s1600-h/fig1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBom0cFufZwsM1ZDUfDgeIC7xB39w7N1rx3Q5CJvoVTD4mZz6gUpItYXGs5EdmgUS70DiSRgan9phH3_ojv-5sOlBSORMs6xDbxzdv7Kxf9MDmtY8rXmn3-zx82kSPp_Wl3DJXSR3DqnHt/s400/fig1.png" /></span></span></a></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Tool chain for development for target </span></span></b></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><div style="text-align: center;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div></div><div class="separator" style="clear: both; text-align: justify;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijmRoMYb7rHl2hfgd2VlR4wFFtZekusmTHZwAboPvkqFdkIcIPNIwNqbt1LIzAyuDoi7SN6CE_7grHl8loUREdvAq8dpKwLeqbp0h1TI5hBTmZO7qbEPSlhA1o7CrxRnyNIx6UPpDjzpAM/s1600-h/fig2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, 'Times New Roman', serif;"></span></a><span style="font-size: medium; margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijmRoMYb7rHl2hfgd2VlR4wFFtZekusmTHZwAboPvkqFdkIcIPNIwNqbt1LIzAyuDoi7SN6CE_7grHl8loUREdvAq8dpKwLeqbp0h1TI5hBTmZO7qbEPSlhA1o7CrxRnyNIx6UPpDjzpAM/s400/fig2.png" /></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Cross compilation issues</span></span></b></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Expect compilation errors</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Number of bytes for basic types may be different;</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Packing could be different;</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Word-alignment rules could be different;</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Support routines could be different;</span></span></li>
<li style="text-align: justify;"><span style="background-color: cyan;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Be prepared for surprises and a lot of it </span></span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Linker/Locator</span></span></b></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Native linker creates an executable module that has call to os services</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Cross-linker / locator creates a complete memory image including the rtos modules that you link </span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Native os loads the executable created</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">There is no uniform method for loading the memory image created by locator</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><b><a href="http://vetechlib.blogspot.com/search/label/Intel%20Hex%20file%20format"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Intel hex file format</span></span></a></b></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">A common format in which locators create the memory image</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Is a standard ascii text file</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Each line starts with colon(:)</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Followed by 2 digit count</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Followed by 4/8 digit address</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Followed by type</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Followed by stream of data, each two digit – for a byte</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Followed by 2 digit checksum</span></span></li>
<li style="text-align: justify;"><b><a href="http://vetechlib.blogspot.com/search/label/Intel%20Hex%20file%20format"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">CLICK HERE FOR MORE</span></span></a></b></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Memory issues </span></span></b></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Part of code to go to rom another part to ram</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Ram has many segments like code / data/ stack/extra…</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Address need not be contigeous</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">On-chip ram/rom is normally much faster than off-chip memory</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Executing from eprom is slower than that from ram</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">All these issues are to be considered by locator</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Segmentation </span></span></b></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Translation tool gives provision for specifying different segments to code generated</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Code within a segment is allocated contigeously</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">During load time, we can specify start address of each segment</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Cross compilers give pre-defined names to segments, but you have to specify this in assemblers</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Examples are .code, .data, etc.</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-weight: bold;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Initialisation </span></span></span></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">C assumes that prior to execution the variables are filled with given values</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">A constant segment is created to take care of this</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">It contains the defined constants, string values, etc., used in the program.</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">The loader should ensure that the variables are properly initialised with these</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Gathering of segments </span></span></b></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></b></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div class="separator" style="clear: both; text-align: justify;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHAmHBmpckHfbTskQwFJokxCPtme0ylZKb9MOwqP8s8Y9OHvNboAQ5kACns-LqUwIa9ZpbHUMZNlvYNC5bo3jxYbFCQ8Ep338v65wonXXjfr6PXsooGs5CamjWz4awn5EKcV77LAYB0NjA/s1600-h/fig3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><img border="0" height="294" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHAmHBmpckHfbTskQwFJokxCPtme0ylZKb9MOwqP8s8Y9OHvNboAQ5kACns-LqUwIa9ZpbHUMZNlvYNC5bo3jxYbFCQ8Ep338v65wonXXjfr6PXsooGs5CamjWz4awn5EKcV77LAYB0NjA/s400/fig3.png" width="400" /></span></span></a></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Locator maps </span></span></b></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Lists where in memory the locator placed the segments</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Gives the location of global variables and routines as well</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Very valuable for debugging</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Check this to ensure that the memory allocations are in fact right…</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Executing from ram </span></span></b></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">In systems having ram and rom, it is a good practce to place code in rom and data in ram</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">But, in many cases ram is faster</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">You may have to move rom contents to ram before execution</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">In this case it makes sense to keep code in a compressed format</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">An initialisation code then transfers it to ram before execution</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"><br />
</span></span> <span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;"> </span></span></div><div style="text-align: justify;"><b><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Getting to target hardware </span></span></b></div><div style="text-align: justify;"></div><ul><li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Prom programmer</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Flash</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Rom emulator</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Monitors</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Incircuit emulators</span></span></li>
<li style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><span style="font-size: medium;">Communication devices</span></span></li>
</ul><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> </div><div style="text-align: justify;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span> <span style="font-family: Georgia, 'Times New Roman', serif;"> </span></div><div style="text-align: justify;"></div><div style="text-align: justify;"></div>Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-1372933001761370251.post-88691217207254797292009-08-25T11:26:00.000+05:302009-08-25T11:26:04.798+05:30Timeline: Mobile storage<span style="font-family: Arial; font-size: small;"><span class="Apple-style-span" style="font-size: 13px;"></span></span><br />
<span style="font-family: Arial; font-size: small;"><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;"><b><span style="color: #990000;">Today, people can carry several gigabytes of data in their pockets. However, pen drives are still a relatively new medium, and their forefathers have been around for a while.</span></b></span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcFBzo83Hk2MrtjzpSFl3pOCBgZO-AmesliF0AS8jD9QV-LNJBdnlONmZHCedEnC4pqNWFMT8e7zcHb1-DfTun8oHBg7QfdqylTclB5do5cSCQNqSCI3OXQ0BnzmtWKoeA6-3pAFRtnhUi/s1600-h/1.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcFBzo83Hk2MrtjzpSFl3pOCBgZO-AmesliF0AS8jD9QV-LNJBdnlONmZHCedEnC4pqNWFMT8e7zcHb1-DfTun8oHBg7QfdqylTclB5do5cSCQNqSCI3OXQ0BnzmtWKoeA6-3pAFRtnhUi/s400/1.JPG" /></a></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5ILNA8bzQkEeWLjUySnvfra0l6jc0AaHCb7DJJqaTQXsOXIWTrqgiucRRAiryqDUUfVmbLrHZpk2aboFB2j65NDcTBi64vuhBXulqBbT6N64BcirhdkUXnb635_Si3CjHMBhDtW-DOWjQ/s1600-h/2.JPG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5ILNA8bzQkEeWLjUySnvfra0l6jc0AaHCb7DJJqaTQXsOXIWTrqgiucRRAiryqDUUfVmbLrHZpk2aboFB2j65NDcTBi64vuhBXulqBbT6N64BcirhdkUXnb635_Si3CjHMBhDtW-DOWjQ/s320/2.JPG" width="212" /></a></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;">Methods of transporting data have been in existence right from the beginning of civilization; important information was scribbled on clay tablets or papyrus for preservation or transmission. But the fi rst real digital storage medium was the punch card: Herman Hollerith (1860– 1929), the son of a German immigrant, worked as a statistician for the American government and designed a system that could process punch card system. It was used for storing the census data of the year 1890–91. </span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAjzQNngURuVOBkZkwobHuKS6P8cQkBNAazmJOLeW4JVclcXzBzcGdwGFC53OPQDM21jDILVMaPDvOzhA4qRKc-zCA73117oRkC1b_1fzLfLyaU1PLXLlHAMmdhhakdqSd6fsrU7U_CpL1/s1600-h/3.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAjzQNngURuVOBkZkwobHuKS6P8cQkBNAazmJOLeW4JVclcXzBzcGdwGFC53OPQDM21jDILVMaPDvOzhA4qRKc-zCA73117oRkC1b_1fzLfLyaU1PLXLlHAMmdhhakdqSd6fsrU7U_CpL1/s400/3.JPG" /></a></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;">In 1896, Hollerith founded the Tabulating Machine Company, which after merging with two other companies, became what we now know as International Business Machines—IBM. The punch card further developed into the punch tape: even Konrad Zuse, inventor of the modern programmable computer, used these to feed his pioneering Z1 with data. But subsequently, the development of data storage and media stagnated for as long as 30 years.</span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPXD6mQMXEy_VrUnp3elX4UBoSPF_K4hAX9Wl3AfY4DgbYcSHNKVGaU-v5EumPqMLr0nOSVfOd2cIhIWrDs7rxrcOmrvPRdg6Yu-kRbBOTGV4cplFfXQnglyWu6TfsHtam0qc60Q5arQSh/s1600-h/4.JPG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPXD6mQMXEy_VrUnp3elX4UBoSPF_K4hAX9Wl3AfY4DgbYcSHNKVGaU-v5EumPqMLr0nOSVfOd2cIhIWrDs7rxrcOmrvPRdg6Yu-kRbBOTGV4cplFfXQnglyWu6TfsHtam0qc60Q5arQSh/s320/4.JPG" width="168" /></a></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;">Then, magnetic media started dominating the storage world. These were originally meant for audio recordings, but an IBM research group lead by Alan Shugart designed the fi rst fl oppy disk in 1969. It was impressively large at eight inches, and also enormous in storage capacity for the time: it could store 80 KB of data—as much as 1,000 punch cards.</span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjN2BrVnNTh1zdMTX0ywj-27dnzqACQDxMZI9bBMsW2kxKfQ-dVF_QeMwGcM7Uy_cDDyWUdz-Qg3s3iRzxzwNtlotp7XsmwPRIyadCoToUzkEM8cwoH_5-SkW_XZdV8wNqJZBOplXhpf_Za/s1600-h/5.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjN2BrVnNTh1zdMTX0ywj-27dnzqACQDxMZI9bBMsW2kxKfQ-dVF_QeMwGcM7Uy_cDDyWUdz-Qg3s3iRzxzwNtlotp7XsmwPRIyadCoToUzkEM8cwoH_5-SkW_XZdV8wNqJZBOplXhpf_Za/s400/5.JPG" /></a></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZ9wl40ZjlI5BpV7jnXh1D-9vIIOYSxekq4oYsxncGStHhPugFVOVVkBMLt38GmVw2KOf9xKaxIGKgoGfACLFxpdyViskAPi_TChpSZu37GPhOG6BeMweSxRBN6YETeEI3f-w6oY68ehRi/s1600-h/6.JPG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZ9wl40ZjlI5BpV7jnXh1D-9vIIOYSxekq4oYsxncGStHhPugFVOVVkBMLt38GmVw2KOf9xKaxIGKgoGfACLFxpdyViskAPi_TChpSZu37GPhOG6BeMweSxRBN6YETeEI3f-w6oY68ehRi/s320/6.JPG" /></a></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiq10cs2O-cnH3YQ79ksNRt_KYfCaGyrm85OLvvTfHS5rXWYxdrZNetWAT5w-wQpAAc0c80CQ0YfETnrYJ_IKYQqV7yPTiuf6J6GO5RFs1mMctv3ThCb5Zvu0QwlMPbDL7PnWJ_w9Tl1pBQ/s1600-h/7.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiq10cs2O-cnH3YQ79ksNRt_KYfCaGyrm85OLvvTfHS5rXWYxdrZNetWAT5w-wQpAAc0c80CQ0YfETnrYJ_IKYQqV7yPTiuf6J6GO5RFs1mMctv3ThCb5Zvu0QwlMPbDL7PnWJ_w9Tl1pBQ/s400/7.JPG" /></a></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLDeBvHOr5QlK4j9CaBTQQwZLphbufxcCH7UcmaGFRCVaBKSxwzZVbFThAMeISDiJmCfsjcPzdwrySAxfle8urbNL4BuU153-hVpakUcMo-vFXGb0gu4N-ASixShNcZBZKD6mS2PojNK23/s1600-h/8.JPG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLDeBvHOr5QlK4j9CaBTQQwZLphbufxcCH7UcmaGFRCVaBKSxwzZVbFThAMeISDiJmCfsjcPzdwrySAxfle8urbNL4BuU153-hVpakUcMo-vFXGb0gu4N-ASixShNcZBZKD6mS2PojNK23/s320/8.JPG" width="212" /></a></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;">Over the years, fl oppy disks continued to decrease in size and increase in data capacity. Then, in 1983, SyQuest brought the fi rst removable hard disk into the market. You could save a sensational 5 MB on it and simply store it on a shelf. Later, Japanese fi rm Taiyo Yuden achieved great success in 1989 by introducing the recordable CD. Magnetooptical technology—a combination of magnetic discs and lasers—off ered considerably better data security at the time, but could not compete with CD-Rs. </span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span></span></div><div style="text-align: justify;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-dEpujxcEkSg6Zr0nGPBneCd8TomNyOWgIBS0ZZ4bY-ZPRTWLWGXimM2LBT_dVu2pyjppHcWMQphjVjrKyNXp6la-K7OadnuEdJiaJfvvb4uGjCLuHcgTe8LClGfuS1QapdMasXFzJRAp/s1600-h/9.JPG" imageanchor="1" style="clear: left; display: inline !important; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-dEpujxcEkSg6Zr0nGPBneCd8TomNyOWgIBS0ZZ4bY-ZPRTWLWGXimM2LBT_dVu2pyjppHcWMQphjVjrKyNXp6la-K7OadnuEdJiaJfvvb4uGjCLuHcgTe8LClGfuS1QapdMasXFzJRAp/s400/9.JPG" /></a></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;"><b><span style="color: blue;">The storage revolution of 1996: Dov Moran invents the USB stick </span></b></span></span></div><div style="text-align: justify;"><span style="color: blue; font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><b><br />
</b></span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8d8y1-jwgfw4xAxg0jwY7K_Fh9ftHshYTohO_zBiw2mFll5n0-VdeM1U1ubo-7xJK1eEhfw_XqgHgWWhxG5DWozY5cEzwmdoVlVYEgetX03fQQtOXRM1w0T1tRidq4dWkgVd6H3OlxUlY/s1600-h/10.JPG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8d8y1-jwgfw4xAxg0jwY7K_Fh9ftHshYTohO_zBiw2mFll5n0-VdeM1U1ubo-7xJK1eEhfw_XqgHgWWhxG5DWozY5cEzwmdoVlVYEgetX03fQQtOXRM1w0T1tRidq4dWkgVd6H3OlxUlY/s320/10.JPG" /></a></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><span style="color: blue;"><b><br />
</b></span></span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;">American manufacturer Iomega began to sell Zip disks and drives in 1994. The 100 MB units were poised to become the dominant removable storage format of the time, superseding even the universally accepted 3.5 inch fl oppy disk after 13 years, but Iomega missed the chance because of reliability problems.</span></span></div><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizDbsqhFlXQ-qjytp8fXHKveXeRaRkuvmJJQQzeXG6No-yL-yPSEtBIXTe-_vnmdlQB5w7Ottq1WPwcePkZ8tPf5xVKWRQ9F63zjc53CkPGHTQQ5_-a3RIljTjnRhAmg43AxFUIHacnMxD/s1600-h/11.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizDbsqhFlXQ-qjytp8fXHKveXeRaRkuvmJJQQzeXG6No-yL-yPSEtBIXTe-_vnmdlQB5w7Ottq1WPwcePkZ8tPf5xVKWRQ9F63zjc53CkPGHTQQ5_-a3RIljTjnRhAmg43AxFUIHacnMxD/s400/11.JPG" /></a></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDj5kxd8bNO-mHGDwg85JwYglEFXKK6931hsH7CQyxLYnO9mg0YKw2dwU90nA0TJuRVgrw7SwVK_vHBGDwH_FkKlGY5ozaLdauThGiSTohR-MULixnKACsk_P_m3qUNoqXfVA5aAuHZnX4/s1600-h/12.JPG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDj5kxd8bNO-mHGDwg85JwYglEFXKK6931hsH7CQyxLYnO9mg0YKw2dwU90nA0TJuRVgrw7SwVK_vHBGDwH_FkKlGY5ozaLdauThGiSTohR-MULixnKACsk_P_m3qUNoqXfVA5aAuHZnX4/s400/12.JPG" /></a></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;"><br />
</span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;">In 1996, somebody else grabbed this opportunity: Dov Moran, the founder of the fi rm M-Systems, came upon the idea of designing a Flash component with a USB connection. He called his new 8 MB memory device DiskOnKey—the fi rst USB pen drive—which was sold by IBM in America. But research continued, and the SD card that was introduced in 1999 revolutionized the digital world once again. Iomega tried to bring another innovative product to the market in 2003 with its Rev removable hard disk standard—but once again failed to gain enough traction. Only CD-R, DVD-R (plus or minus) and the USB stick are still present in the consumer world today. Blu-ray wants to penetrate the market, but is not exactly aff ordable just yet. </span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihrBgxcMUvF_dw4r6T5Z6EZq411MYOML0H14GowgY12hZROUQeZ3N6yNJcLQmDL04l8sIO96kws14idNfcFhfsTcE1UI5maE4QLWuQbn9r6pAI_KAx5zNUWilHLKv4jrxtIJX6JakKZ2_i/s1600-h/13.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihrBgxcMUvF_dw4r6T5Z6EZq411MYOML0H14GowgY12hZROUQeZ3N6yNJcLQmDL04l8sIO96kws14idNfcFhfsTcE1UI5maE4QLWuQbn9r6pAI_KAx5zNUWilHLKv4jrxtIJX6JakKZ2_i/s400/13.JPG" /></a></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span class="Apple-style-span" style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', serif;">The only other contender is the external hard disk, usually a USB-enabled version of the hard disk we are all familiar with. These are available in multiple capacities and with newer connectivity options, and demand is growing thanks to ever-falling prices. The Flash and hard drives will be around for a while, but USB might make way for faster connection options.</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjIybiuUKzdrvpfQk-ktL76p5XDlKiiWQKwuaLLlU9Dx3f2HjRxZO1dmISB5Xe-w5V0ZK63s_OFGLo2HAgAE0hc757vh9HTTF9opWUD7-pd0d4rFM4dCMplOJNXnNRHo5IiNgmjYgy6a43C/s1600-h/14.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjIybiuUKzdrvpfQk-ktL76p5XDlKiiWQKwuaLLlU9Dx3f2HjRxZO1dmISB5Xe-w5V0ZK63s_OFGLo2HAgAE0hc757vh9HTTF9opWUD7-pd0d4rFM4dCMplOJNXnNRHo5IiNgmjYgy6a43C/s400/14.JPG" /></a></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjt8Y8I3vXc2xp0DiPAUAEQM94DjrW7nWIOXwWCpHa7bL4aAcBagwPvAi8UtSIM-0Y0d5wSHGozjxF7ZZI2m10oynH3FFBUurxCeiMH2eKkc0h6yoJtqS8OJtp2Paom3sXpZmku0uxmiEks/s1600-h/17.JPG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjt8Y8I3vXc2xp0DiPAUAEQM94DjrW7nWIOXwWCpHa7bL4aAcBagwPvAi8UtSIM-0Y0d5wSHGozjxF7ZZI2m10oynH3FFBUurxCeiMH2eKkc0h6yoJtqS8OJtp2Paom3sXpZmku0uxmiEks/s400/17.JPG" width="269" /></a></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div><div style="text-align: justify;"><span style="font-family: Georgia; font-size: medium;"><span class="Apple-style-span" style="font-size: 16px;"><br />
</span></span></div></span>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-1372933001761370251.post-54276456828730787382009-08-12T15:45:00.016+05:302009-08-20T14:34:03.278+05:30RFID<div align="justify"><div><div><div align="justify">Radio frequency Identification is a technology similar in theory to bar code identification. An RFID system consists of a transponder(tag) eqipped with an antenna and an IC containing RF circuitry and information to be transmitted, and a reader equipped with an antenna and a transceiver that reads the radio signals and transfers the information to processing device. Tags are embedded in products that are tracked by readers.</div><br /><div align="justify">The reader sends a continuous RF signal and when the tag passes through the reader's electromagnetic zone, it detects the signal from the reader and responds with its unique ID.<br /><br /></div><div align="justify"><span style="font-size:130%;"><strong>RFID V/s other technologies</strong></span><br /></div><strong><span style="font-size:130%;"></span></strong><div align="justify"><br /></div><img id="BLOGGER_PHOTO_ID_5371964789126702690" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 223px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYwh1ShvEtnODkOR6DpBfY6yIzMeaMMZ4PoysA_FZ5NjiNUygH6Q4N4BLQRqVDdM816IGE9sUeWkwiOlUlSMZkT7goh5tkvy9VToVFbQq6y0pkcWT7lBESR5uIxZjGXGPe2HVyRj_1qs8O/s400/1.JPG" border="0" /> </div><div><span style="font-size:130%;"><strong>Components of an RFID system</strong></span><br /><div align="justify"><br /><img id="BLOGGER_PHOTO_ID_5371964782159521666" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 219px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSMkgg3ZiWfEMhsmYQea8Rz1WFxKXrYZPVa-KfvIi2UaHsOvsDf6P3PpP7L-sVjaRbHaKh6UT32wtpzIj45nOWTsZnKftNpXoZQhxSj6JLo4Torr4Tmpnnc7Wkt7mXX3z3ehsWufBFUcjm/s400/2.JPG" border="0" /><br /></div><div align="justify"><span style="font-size:130%;"><strong>The Tags</strong></span><br /></div><br /><ul><li>Tags can be read-only or read-write </li><li>Has a unique identification number </li><li>Tag memory can be factory or field programmed, partitionable, and optionally permanently locked </li><li>Bytes left unlocked can be rewritten over more than100,000 times </li></ul><br /><p><span style="font-size:130%;"><strong>Types of Tags</strong></span><br /><span style="color:#000099;"><strong></strong></span></p><p><span style="color:#000099;"><strong>Active</strong></span> </p><ul><li>Tag transmits radio signal </li><li>Battery powered memory, radio & circuitry </li><li>High Read Range (300 feet)<br /></li></ul><p><strong><span style="color:#000099;">Passive</span></strong><br /><br /></p><ul><li>Tag reflects radio signal from reader </li><li>Reader powered </li><li>Shorter Read Range (4 inches - 15 feet)<br /></li></ul><p><span style="color:#000099;"><strong>Tags can also be classified based on</strong></span><br /><strong></strong></p><p><strong>1. Memory</strong> </p><ul><br /><li>Size (16 bits - 512 kBytes +) </li><li>Read-Only, Read/Write or WORM </li><li>Type: EEPROM, OTP, FeRam<br /></li></ul><p><strong>2. Arbitration (Anti-collision)</strong><br /></p><ul><br /><li>Ability to read/write one or many tags at a time </li></ul><br /><p><strong>3. Frequency </strong><br /></p><ul><li>125KHz - 5.8 GHz</li><li>Physical Dimensions </li><li>Thumbnail to Brick sizes<br /></li></ul><p><span style="font-size:130%;"><strong>Internal block diagram of tags</strong></span> </p><span style="font-size:130%;"><strong></strong></span><img id="BLOGGER_PHOTO_ID_5371964774704829746" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 213px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKyIlmiA8k9zLV_7MdJ6Z8f0VUw1IJszhLMRM690DVjoFB5rGiNKI_DpCNY0zzXnQGWrDmKmncxRS05qeejFn_EJ13iZF3EZzYnipRnQMILK-psJbPcT01yJQbHDUtrtSaHMM3ccrasQa3/s400/3.JPG" border="0" /><br /><br /><p><span style="font-size:130%;"><strong>Operating frequency</strong><br /></p></span><br /><p>The operating frequency is the electromagnetic frequency the tag uses to communicate or to obtain power. The em spectrum in the range in which RFID typically operates is usually broken up into </p><p>LF---- <135khz><br />HF---- 6.78MHz, 13.56MHz, 27.125MHz, 40.68MHz <p>UHF--- 433.92MHz, 869MHz, 915MHz </p><p>Microwave-- 2.45GHz, 5.8GHz, 24.125GHz<br /><br /></p><br /><p></p><p align="justify"><strong><span style="font-size:130%;">Coupling</span> </strong></p><p align="justify">A tag’s coupling mechanism determines the way a ckt on the tag and circuit on the reader influence each other to send and receive information or power. The kind of coupling a tag uses directly affects the read range between the tag and reader.<br /><br /></p><br /><p align="justify"><strong><span style="font-size:130%;">Inductive Coupling</span><br /></p></strong><br /><p align="justify">Inductively coupled transponders (tags) are almost always operated passively. This means that all the energy needed for the operation of the microchip has to be provided by the reader. For this purpose, the reader's antenna coil generates a strong, high frequency electro-magnetic field, which penetrates the cross -section of the coil area and the area around the coil. </p><p align="justify">A small part of the emitted field penetrates the antenna coil of the transponder, which is some distance away from the coil of the reader. By induction, a voltage Ui is generated in the transponder's antenna coil. This voltage is rectified and serves as the power supply for the data carrying device (microchip). A capacitor C1 is connected in parallel with the reader's antenna coil, the capacitance of which is selected such that it combines with the coil inductance of the antenna coil to form a parallel resonant circuit, with a resonant frequency that corresponds with the transmission frequency of the reader. Very high currents are generated in the antenna coil of the reader by resonance step-up in the parallel resonant circuit, which can be used to generate the required field strengths for the operation of the remote transponder. </p><p align="justify">The antenna coil of the transponder and the capacitor C1 to form a resonant circuit tuned to the transmission frequency of the reader. The voltage U at the transponder coil reaches a maximum due to resonance step-up in the parallel resonant circuit. </p><p align="justify"></p><br /><p align="justify"><img id="BLOGGER_PHOTO_ID_5371964767885281858" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 182px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiG8UWoNs23MsszKmNZamC_AMxUvI47B_ouYTPuWtzcpAChfPBA31stBa0TkokanmvBPhG4SEqR-EEWhJSrkd74IrfuL9nDHbRnVgWGwxgSZrkACM-yb4ltUvTCv1BN8DfZZvKPJh_5bg8k/s400/4.JPG" border="0" /></p><p align="justify">As described above, inductively coupled systems are based upon a transformer-type coupling between the primary coil in the reader and the secondary coil in the transponder. This is true when the distance between the coils does not exceed 0.16 l, so that the transponder is located in the near field of the transmitter antenna.<br /><br /></p><br /><p align="justify"><strong><span style="font-size:130%;">Backscatter Coupling</span></strong> </p><p align="justify">We know from the field of RADAR technology that electromagnetic waves are reflected by objects with dimensions greater than around half the wavelength of the wave. The efficiency with which an object reflects electromagnetic waves is described by its reflection cross-section. Objects that are in resonance with the wave front that hits them, as is the case for antenna at the appropriate frequency for example, have a particularly large reflection cross-section. </p><p align="justify">Power P1 is emitted from the reader's antenna, a small proportion of which (free space attenuation) reaches the transponder's antenna. The power P1' is supplied to the antenna connections as HF voltage and after rectification by the diodes D1 and D2 this can be used as turn on voltage for the deactivation or activation of the power saving "power-down" mode. The diodes used here are low barrier Schottky diodes, which have a particularly low threshold voltage. The voltage obtained may also be sufficient to serve as a power supply for short ranges.<br />A proportion of the incoming power P1' is reflected by the antenna and returned as power P2. The reflection characteristics (= reflection cross-section) of the antenna can be influenced by altering the load connected to the antenna. In order to transmit data from the transponder to the reader, a load resistor RL connected in parallel with the antenna is switched on and off in time with the data stream to be transmitted. The amplitude of the power P2 reflected from the transponder can thus be modulated (à modulated backscatter).<br /></p><img id="BLOGGER_PHOTO_ID_5371964760469194306" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 147px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4cwLV2tmMmYqC3j8RduT56cWgN4IQnDfeUJfepjtITuI5QcVDamc7O_ckVDnZZsbSTdHmm1AOzfkbaCtBl8KmfpCNirXItJ3pCFopxrDSogGhQzxkpGuKNjmjCru08vuD6bBV7A88F5hn/s400/5.JPG" border="0" />The power P2 reflected from the transponder is radiated into free space. A small proportion of this (free space attenuation) is picked up by the reader's antenna. The reflected signal therefore travels into the antenna connection of the reader in the "backwards direction" and can be decoupled using a directional coupler and transferred to the receiver input of a reader. The "forward" signal of the transmitter, which is stronger by powers of ten, is to a large degree suppressed by the directional coupler.<br /><br /><br /><br /><br /><br /><p align="justify"></p></div></div><br /></div>Deepa Sivanhttp://www.blogger.com/profile/12828632013820339064noreply@blogger.com0