Content-Type: multipart/related; start=<op.mhtml.1295518314355.c5b101156577882a@10.7.14.25>; boundary=----------KVxvIqS4V4r9QZP8Xg42UV
Content-Location: http://www.eetimes.com/design/embedded/4023324/Deadline-Scheduling
Subject: =?utf-8?Q?Deadline=20Scheduling?=
MIME-Version: 1.0

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=Deadline-Scheduling.htm
Content-Type: text/html; charset=utf-8; name=Deadline-Scheduling.htm
Content-ID: <op.mhtml.1295518314355.c5b101156577882a@10.7.14.25>
Content-Location: http://www.eetimes.com/design/embedded/4023324/Deadline-Scheduling
Content-Transfer-Encoding: Quoted-Printable



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.=
org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns=3D"http://www.w3.org/1999/xhtml">
<head id=3D"ctl00_Head1">
        <SCRIPT LANGUAGE=3D"JavaScript">
    <!--
            var gomez =3D {
                gs: new Date().getTime(),
                acctId: 'C40FE5',
                pgId: '',
                grpId: ''
            }; =

     //--> =

     </SCRIPT> =

     <SCRIPT LANGUAGE=3D"JavaScript">
    <!--
         /*Gomez tag version: 6.0*/var gomez =3D gomez ? gomez : {}; gom=
ez.h3 =3D function (d, s) { for (var p in s) { d[p] =3D s[p]; } return d=
; }; gomez.h3(gomez, { b3: function (r) { if (r <=3D 0) return false; re=
turn Math.random() <=3D r && r; }, b0: function (n) { var c =3D document=
.cookie; var v =3D c.match(new RegExp(';[ ]*' + n + '=3D([^;]*)')); if (=
!v) v =3D c.match(new RegExp('^' + n + '=3D([^;]*)')); if (v) return une=
scape(v[1]); return ''; }, c2: function (n, v, e, p, d, s) { try { var t=
 =3D this, a =3D t.domain ? t.domain : location.hostname; var c =3D n + =
'=3D' + escape(v) + (e ? ';expires=3D' + e.toGMTString() : '') + (p ? ';=
path=3D' + p : ';path=3D/') + (d ? ';domain=3D' + d : ';domain=3D' + a) =
+ (s ? ';secure' : ''); document.cookie =3D c; } catch (e) { } }, z0: fu=
nction (n) { var t =3D this; if (n) { var s =3D t.b0("__g_c"); if (!s) r=
eturn ''; var v =3D s.match(new RegExp(n + ':([^\|]*)')); if (v) return =
unescape(v[1]); return ''; } else return ''; }, z1: function (n, m) { va=
r t =3D this; if (n) { var s =3D t.b0("__g_c"); if (s) { if (s.indexOf(n=
 + ':') !=3D -1) s =3D s.replace(new RegExp('(' + n + ':[^\|]*)'), n + '=
:' + m); else s =3D s =3D=3D ' ' ? n + ':' + m : s + '|' + n + ':' + m; =
t.c2("__g_c", s); } else t.c2("__g_c", n + ':' + m); }; }, b2: function =
(v, s) { var t =3D this, f =3D new Date(t.gt() + 946080000000), g =3D ''=
 + v + '_' + s; t.c2('__g_u', g, f); t.gc.c =3D v; t.gc.d =3D s; t.z1('c=
', v); t.z1('d', s); }, gt: function () { return new Date().getTime() },=
 b5: function () { return new Date().getTime() - gomez.gs }, j1: functio=
n (h) { if (h) { if (h.indexOf('<') !=3D -1 || h.indexOf('%3C') !=3D -1 =
|| h.indexOf('%3c') !=3D -1) return null; if (window.decodeURIComponent)=
 return decodeURIComponent(h); else return unescape(h); } return null; }=
, f1: function (u, t) { try { if (u) { if (!/(^http|^https)/.test(u)) { =
if (t =3D=3D 1) return gomez.j1(location.hostname); else return u; } var=
 p =3D new RegExp('(^http|^https|):\/{2}([^\?#;]*)'); if (t =3D=3D 1) p =
=3D new RegExp('(^http|^https|):\/{2}([^\/\?]*)'); var r =3D u.match(p);=
 if (r && t =3D=3D 1) return gomez.j1(r[2]); else if (r) return r[0]; } =
return null; } catch (e) { return null; } }, j2: function () { try { var=
 m, t =3D this, key =3D escape((document.referrer + window.location).rep=
lace(new RegExp("([:\/\.])", "gm"), "")); if (window.localStorage) { m =3D=
 window.localStorage.getItem(key); } if (!m) { var c =3D t.z0("r"); if (=
c) { var r =3D c.split('___'); if (r && r[0] =3D=3D key) { m =3D r[1]; }=
 }; }; t.j4(); return m; } catch (e) { return; } }, j3: function (n) { t=
ry { var t =3D this, key =3D escape((window.location + n).replace(new Re=
gExp("([:\/\.])", "gm"), "")); if (window.localStorage) { window.localSt=
orage.setItem(key, t.gt()); } t.z1('r', key + '___' + t.gt()); } catch (=
e) { return; } }, j4: function () { try { var t =3D this; if (window.loc=
alStorage) { window.localStorage.removeItem(escape((document.referrer + =
window.location).replace(new RegExp("([:\/\.])", "gm"), ""))); } t.z1('r=
', ''); } catch (e) { return; } }, j5: function () { var ret =3D ''; for=
 (var i =3D 0; i < 3; i++) { ret =3D ret + (((1 + Math.random()) * 0x100=
00) | 0).toString(16).substring(1); } ret =3D parseInt(ret, 16); return =
ret; }, j6: function () { var t =3D this; var g =3D t.b0("__g_u"); if (g=
 && g !=3D '1' && g.indexOf('NaN') =3D=3D -1 && g.indexOf('undefined') =3D=
=3D -1) { var r =3D g.split("_"); if (r.length > 5) { if (parseInt(r[5])=
 < new Date().getTime()) { return undefined; } else { return parseFloat(=
r[2]); } } } return undefined; }, nameEvent: function () { }, startInter=
val: function () { }, endInterval: function () { }, customValue: functio=
n () { } }); gomez.P =3D function () { }; gomez.P.prototype =3D { hash: =
function (o) { if (!o) return ''; var t =3D this, s =3D '{n:' + t.f9(o['=
n']) + '|'; for (var i in o) { if (i =3D=3D 'n') continue; if (typeof (o=
[i]) =3D=3D 'string' || typeof (o[i]) =3D=3D 'number') s +=3D i + ':' + =
t.f9(o[i]) + '|'; }; s =3D s.substring(0, s.length - 1); return s + '}';=
 }, f9: function (s) { s =3D '' + s; s =3D s.replace('|', '#$#').replace=
(':', '$*$').replace('{', '@#@').replace('}', '*@*').replace('&', '!*!')=
; return s; }, g0: function () { var t =3D this, z =3D gomez; if (z.grpI=
ds) z.h3(z.gc, z.grpIds); if (z.wrate) z.gc.r =3D z.wrate; z.gc.e =3D z.=
grpId; for (var i =3D 1; i < 5; i++) { if (z["grpId" + i] !=3D undefined=
) { z.gc["e" + i] =3D z["grpId" + i]; } } z.gc.b =3D z.pgId; z.gc.l =3D =
z.f1(z.m, 2); if (self.screen) { z.gc.m =3D screen.width; z.gc.o =3D scr=
een.height; } else if (self.java) { var j =3D java.awt.Toolkit.getDefaul=
tToolkit(); var s =3D j.getScreenSize(); z.gc.m =3D s.width; z.gc.o =3D =
s.height; }; z.gc.p =3D navigator.platform; if (navigator.cpuClass) z.gc=
.q =3D navigator.cpuClass; if (!z.gc.f && !z.gc.g) { try { var a =3D new=
 Array("MSIE", "Firefox", "Opera", "Safari", "Chrome"), b =3D document.c=
reateElement('div'); if (b.addBehavior && document.body) { b.addBehavior=
('#default#clientCaps'); z.gc.k =3D b.connectionType; } } catch (e) { };=
 for (var i =3D 0; i < a.length; i++) { if (navigator.userAgent.indexOf(=
a[i]) !=3D -1) { z.gc.g =3D a[i]; z.gc.f =3D (new String(navigator.userA=
gent.substring(navigator.userAgent.indexOf(a[i])).match(/[\d.]+/))).subs=
tring(0); } } if (!z.gc.f && !z.gc.g) { z.gc.g =3D navigator.vendor || n=
avigator.appName; z.gc.f =3D (new String(navigator.appVersion.match(/[\d=
.]+/))).substring(0); } } return t.hash(z.gc); } }; try { gomez.gc =3D {=
 'n': 'c' }; var iU =3D gomez.b0('__g_u'); if (iU =3D=3D undefined || iU=
 =3D=3D '') { gomez.b2(gomez.j5(), 0); } var sR =3D gomez.j6(); if (sR =3D=
=3D undefined) { sR =3D 1; gomez.isFirstVi =3D true; } else { gomez.isFi=
rstVi =3D false; } var wR =3D gomez.wrate ? parseFloat(gomez.wrate) : (g=
omez.wrate =3D=3D 0 ? 0 : 1); wR =3D wR < 0 ? 0 : (wR > 1 ? 1 : wR); gom=
ez.inSample =3D gomez.z0('a'); if (!gomez.inSample || gomez.inSample =3D=
=3D '') { if (gomez.b3(wR * sR)) { gomez.inSample =3D 1; } else { gomez.=
inSample =3D 0; } gomez.z1('a', gomez.inSample); } else { gomez.inSample=
 =3D parseInt(gomez.inSample); } gomez.runFlg =3D gomez.inSample > 0; if=
 (gomez.runFlg) { gomez.clickT =3D gomez.j2(); gomez.h1 =3D function (v,=
 d) { return v ? v : d }; gomez.gs =3D gomez.h1(gomez.gs, new Date().get=
Time()); gomez.acctId =3D gomez.h1(gomez.acctId, ''); gomez.pgId =3D gom=
ez.h1(gomez.pgId, ''); gomez.grpId =3D gomez.h1(gomez.grpId, ''); gomez.=
E =3D function (c) { this.s =3D c; }; gomez.E.prototype =3D { g1: functi=
on (e) { var t =3D gomez, i =3D t.g6(e); if (i) i.e =3D t.b5(); } }; gom=
ez.L =3D function (m) { this.a =3D m; }; gomez.L.prototype =3D { g2: fun=
ction (m) { var t =3D gomez, n =3D t.b5(); var s =3D document.getElement=
sByTagName(m); var e =3D t.k; if (m =3D=3D 'script') e =3D t.j; if (m =3D=
=3D 'iframe') e =3D t.l; if (s) { var l =3D s.length; for (var i =3D 0; =
i < l; i++) { var u =3D s[i].src || s[i].href; if (u && !e[u]) { var r =3D=
 new gomez.E(e); t.grm[u] =3D r; e[u] =3D new t.c7(u, n); if (t.gIE && m=
 =3D=3D 'script') t.e2(s[i], 'readystatechange', t.d2, false); else t.e2=
(s[i], 'load', r.g1, false); } } } } }; gomez.L.m =3D new Object; gomez.=
L.m['link'] =3D new gomez.L(); gomez.L.m['iframe'] =3D new gomez.L(); go=
mez.S =3D function () { var t =3D this, h =3D gomez.acctId + ".r.axf8.ne=
t"; t.x =3D ('https:' =3D=3D location.protocol ? 'https:' : 'http:') + '=
//' + h + '/mr/b.gif?'; t.pvHttpUrl =3D ('https:' =3D=3D location.protoc=
ol ? 'https:' : 'http:') + '//' + h + '/mr/e.gif?'; t.abHttpUrl =3D ('ht=
tps:' =3D=3D location.protocol ? 'https:' : 'http:') + '//' + h + '/mr/f=
.gif?'; }; gomez.h2 =3D function () { var t =3D this; t.gIE =3D false; t=
.f =3D new Object; t._h =3D 0; t.j =3D new Object; t.k =3D new Object; t=
.l =3D new Object; t.m =3D location.href; t.p =3D -1; t.q =3D -1; t.t =3D=
 new Array; t.u =3D new Array; t._w =3D false; t.gSfr =3D /KHTML|WebKit/=
i.test(navigator.userAgent); t.grm =3D new Object; t.b; t.d =3D false; t=
.x =3D false; t.s =3D new gomez.S; t._a =3D false; t.h6 =3D false; t.n1 =
=3D 0; t.c =3D false; }; gomez.h3(gomez, { h5: function (u) { try { var =
s =3D document.createElement('script'); s.src =3D u; s.type =3D 'text/ja=
vascript'; if (document.body) document.body.appendChild(s); else if (doc=
ument.documentElement.getElementsByTagName('head')[0]) document.document=
Element.getElementsByTagName('head')[0].appendChild(s); } catch (e) { va=
r t =3D gomez; if (t.gSfr) document.write("<scr" + "ipt src=3D'" + u + "=
'" + "><\/scr" + "ipt>"); } }, a9: function () { var t =3D gomez, i =3D =
t.z0('a'), g =3D t.b0('__g_u'), h =3D t.z0('h'), b =3D t.z0('b'); t.gc.h=
 =3D b; if (h) t.n1 =3D parseInt(h); if (!t.gc.h) t.gc.h =3D 1; t.z1('b'=
, parseInt(t.gc.h) + 1); if (i) { t.a =3D parseInt(i); if (t.a =3D=3D 1)=
 { t._w =3D true; } else if (t.a =3D=3D 3) { t.x =3D true; t._w =3D true=
; }; t.d =3D true; } if (b) { t.gc.c =3D t.z0('c'); t.gc.i =3D t.z0('e')=
; t.gc.j =3D t.z0('f'); t.iFS =3D false; } else { if (!t.gc.a) return; v=
ar s =3D 'v=3D1'; t.c2('__g_u', '1', new Date(t.gt() + 1000)); t.iFS =3D=
 true; if (t.b0('__g_u') && g && g !=3D '1' && g.indexOf('NaN') =3D=3D -=
1 && g.indexOf('undefined') =3D=3D -1) { s =3D 'v=3D0'; var r =3D g.spli=
t('_'); t.b2(parseInt(r[0]), parseInt(r[1]) + 1); if (r[4] && r[4] !=3D =
'0' && t.gt() < parseInt(r[5]) && r[2] && r[2] !=3D '0') { t.b1(parseFlo=
at(r[2]), parseFloat(r[3]), parseFloat(r[4]), parseInt(r[5])); if (r[6])=
 t.n0(parseInt(r[6])); }; }; t.h6 =3D true; }; t.gc.d =3D t.z0('d'); if =
(!t.gc.d || (t.gc.d && t.gc.d =3D=3D 0)) { t.z1('d', 1); t.gc.d =3D 1; }=
 t.b =3D t.z0('g'); t.j8(); if (i && !t.isFirstVi && t._w && !t._a) { t.=
h7(); t._a =3D true; }; }, h7: function () { var t =3D gomez, u =3D t.tl=
oc ? t.tloc : ('https:' =3D=3D location.protocol ? 'https:' : 'http:') +=
 '//' + t.acctId + '.t.axf8.net/js/gtag6.0.js'; t.h5(u); }, n0: function=
 (h) { var t =3D gomez, f =3D new Date(t.gt() + 946080000000), g =3D t.b=
0('__g_u'); t.n1 =3D h; t.z1('h', h); if (g && g !=3D '1' && g.indexOf('=
NaN') =3D=3D -1 && g.indexOf('undefined') =3D=3D -1) { var r =3D g.split=
('_'); g =3D '' + r[0] + '_' + r[1] + '_' + r[2] + '_' + r[3] + '_' + r[=
4] + '_' + r[5] + '_' + h; t.c2('__g_u', g, f); }; }, b1: function (v, s=
, q, f) { var t =3D this; if (s =3D=3D undefined) s =3D 1; t.d =3D true;=
 t.z1('e', v); t.z1('f', s); t.gc.i =3D v; t.gc.j =3D s; t.h4(v, s, q, f=
); }, b3: function (i, v, s) { var t =3D this; t.d =3D true; if (s =3D=3D=
 undefined) s =3D 1; if (i =3D=3D 0 || i =3D=3D 1) { t.a =3D i; if (i =3D=
=3D 1) { t._w =3D true; if (!t._a) { t.h7(); t._a =3D true; }; } t.z1('a=
', t.a); if (v !=3D undefined) { t.b1(v, s); } } else if (i =3D=3D 2) { =
t.h4(v, s); } }, h4: function (o, p, q, d) { var t =3D this, f =3D new D=
ate(t.gt() + 946080000000), g =3D t.b0('__g_u'); if (g && g !=3D '1' && =
g.indexOf('NaN') =3D=3D -1 && g.indexOf('undefined') =3D=3D -1) { var r =
=3D g.split('_'), s; if (d) s =3D d; else if (q && q >=3D 0) s =3D new D=
ate(t.gt() + parseInt(q * 86400000)).getTime(); else { q =3D 5; s =3D ne=
w Date(t.gt() + 432000000).getTime(); }; g =3D '' + r[0] + '_' + r[1] + =
'_' + o + '_' + p + '_' + q + '_' + s; t.c2('__g_u', g, f); }; }, b6: fu=
nction () { var t =3D gomez; t.p =3D t.b5(); }, f8: function () { var t =
=3D this; if (t.pollId1) clearInterval(t.pollId1); if (t.pollId2) clearI=
nterval(t.pollId2); if (t.pollId3) clearInterval(t.pollId3); if (t.pollI=
d4) clearInterval(t.pollId4); }, b7: function () { var t =3D gomez; t.f8=
(); t.q =3D t.b5(); }, c7: function (u, s) { var t =3D this; t.m =3D u; =
t.s =3D s; }, c8: function () { var t =3D gomez, n =3D t.b5(), l =3D doc=
ument.images.length; if (l > t._h) { for (var i =3D t._h; i < l; ++i) { =
var u =3D document.images[i].src; if (u) { var r =3D new gomez.E(t.f); t=
.grm[u] =3D r; t.f[u] =3D new t.c7(u, n); t.e2(document.images[i], 'load=
', t.c4, false); t.e2(document.images[i], 'error', t.c5, false); t.e2(do=
cument.images[i], 'abort', t.c6, false); } } } t._h =3D l; }, c4: functi=
on (e) { var t =3D gomez, i =3D t.g6(e); if (i) i.e =3D t.b5(); }, c5: f=
unction (e) { var t =3D gomez, i =3D t.g6(e); if (i) { i.e =3D t.b5(); i=
.b =3D 1; } }, c6: function (e) { var t =3D gomez, i =3D t.g6(e); if (i)=
 i.a =3D t.b5(); }, g6: function (e) { var t =3D gomez, e =3D window.eve=
nt ? window.event : e, a =3D t.d8(e), i; if (t.grm[a.src || a.href] && t=
.grm[a.src || a.href].s) i =3D t.grm[a.src || a.href].s[a.src || a.href]=
; return i; }, d2: function () { var t =3D gomez; var e =3D window.event=
 ? window.event : e, s =3D t.d8(e); if (s.readyState =3D=3D 'loaded' || =
s.readyState =3D=3D 'complete') { var o =3D t.j[s.src]; if (o) o.e =3D t=
.b5(); } }, setPair: function (name, value) { var t =3D this; t.t[t.t.le=
ngth] =3D { 'n': 'p', 'a': name, 'b': value }; }, nameEvent: function (n=
) { var t =3D this; t.f6(n, 1); }, startInterval: function (n) { var t =3D=
 this; t.f6(n, 2, 1); }, endInterval: function (n) { var t =3D this; t.f=
6(n, 2, 2); }, f6: function (n, p, b) { if (n && n.length > 20) n =3D n.=
substring(0, 20); var t =3D this, f =3D t.u; if (p =3D=3D 3) { f[f.lengt=
h] =3D { 'n': 'a', 'a': n, 'b': b, 'e': p, 'f': undefined }; } else { f[=
f.length] =3D { 'n': 'a', 'a': n, 'b': t.b5(), 'e': p, 'f': b }; } }, cu=
stomValue: function (n, v) { var t =3D this; if (typeof (v) !=3D 'number=
') { return; } t.f6(n, 3, v); }, d8: function (e) { if (gomez.gIE) retur=
n e.srcElement || {}; else return e.currentTarget || e.target || {}; }, =
e2: function (e, p, f, c) { var n =3D 'on' + p; if (e.addEventListener) =
e.addEventListener(p, f, c); else if (e.attachEvent) e.attachEvent(n, f)=
; else { var x =3D e[n]; if (typeof e[n] !=3D 'function') e[n] =3D f; el=
se e[n] =3D function (a) { x(a); f(a); }; } }, i1: function () { var d =3D=
 window.document, done =3D false, i2 =3D function () { if (!done) { done=
 =3D true; gomez.b6(); gomez.a9(); } }; (function () { try { d.documentE=
lement.doScroll('left'); } catch (e) { setTimeout(arguments.callee, 50);=
 return; } i2(); })(); d.onreadystatechange =3D function () { if (d.read=
yState =3D=3D 'complete') { d.onreadystatechange =3D null; i2(); } }; },=
 j7: function (s, toUrl) { try { var t =3D this, z =3D gomez; if (!s) re=
turn; s +=3D "{n:u|e:1}"; var p =3D ''; if (t.isFirstVi) { p =3D '&a=3D'=
 + z.acctId + '&r=3D1&s=3D1'; } else if (t.iFS) { p =3D '&a=3D' + z.acct=
Id + '&r=3D' + t.j6(); } if (window.encodeURIComponent) s =3D encodeURIC=
omponent(s); else s =3D escape(s); z.h5(z.e(toUrl) + 'info=3D' + s + p);=
 } catch (err) { } return; }, e: function (u) { if (!/\?|&/.test(u)) if =
(!/\?/.test(u)) u +=3D '?'; else u +=3D '&'; return u; }, j8: function (=
) { var t =3D gomez, p =3D new gomez.P(); var s =3D p.g0(); t.j7(s, t.s.=
pvHttpUrl); }, g7: function () { try { var t =3D gomez; t.gc.a =3D t.acc=
tId; /*@cc_ont.gIE =3D true; @*/if (t.gIE) { t.i1(); window.attachEvent(=
'onload', t.b7); } else if (window.addEventListener) { window.addEventLi=
stener('DOMContentLoaded', t.b6, false); window.addEventListener('load',=
 t.b7, false); } else if (t.gSfr) { var m =3D setInterval(function () { =
if (/loaded|complete/.test(document.readyState)) { clearInterval(m); del=
ete m; t.b6(); t.b7(); } }, 10); } else return; if (!t.jbo) { t.c8(); t.=
pollId1 =3D setInterval(t.c8, 10); gomez.L.m['link'].g2('link'); t.pollI=
d3 =3D setInterval("gomez.L.m['link'].g2('link')", 10); gomez.L.m['ifram=
e'].g2('iframe'); t.pollId4 =3D setInterval("gomez.L.m['iframe'].g2('ifr=
ame')", 10); } if (!t.gIE) t.a9(); } catch (e) { return; } } }); gomez.h=
2(); gomez.g7(); } } catch (e) { };
    //--> =

     </SCRIPT> =

    <meta http-equiv=3D"Content-Type" content=3D"text/html;charset=3Dutf=
-8" /><title>
	     =

Deadline Scheduling
   =

</title>   =

<meta name=3D"description" content=3D"Most real-time operating systems a=
re based on static priority scheduling. But how can systems be truly rea=
l time without
an awareness of deadlines?"/>
<meta name=3D"keywords" content=3D"" />	=

 =

    <link rel=3D"shortcut icon" type=3D"image/ico" href=3D"/favicon.ico"=
 />
    <link href=3D"http://www.eetimes.com/StaticContent/v1/CSS/Site.css" =
rel=3D"stylesheet" type=3D"text/css" />                =

    <script type=3D"text/javascript" src=3D"http://www.eetimes.com/Stati=
cContent/v1/Scripts/jquery-1.3.2.min.js"></script>
    <script type=3D"text/javascript" src=3D"http://www.eetimes.com/Stati=
cContent/v1/Scripts/jquery.corner.js"></script> =

    <script type=3D"text/javascript" src=3D"http://www.eetimes.com/Stati=
cContent/v1/Scripts/Header.js"></script>    =

    <script language=3D"JavaScript" type=3D"text/javascript" src=3D"http=
://www.eetimes.com/StaticContent/v1/Scripts/s_code_remote_eetimes2.js"><=
/script>
    =

<link href=3D"http://www.eetimes.com/StaticContent/v1/CSS/print.css" rel=
=3D"stylesheet" type=3D"text/css" media=3D"print" />                =

<script type=3D"text/javascript" src=3D"http://www.eetimes.com/StaticCon=
tent/v1/Scripts/AC_OETags.js"></script>        =

        <script type=3D"text/javascript">
            var videoList =3D "609648096001";
            $(document).ready(function() {
            $("#Electronics_Main_Tag").attr("src", "http://www.eetimes.c=
om/StaticContent/v1/Images/Header/header_titleDesign.png");
            $("#subheader_title_tag").css("visibility", "visible");
            $("#subheader_title_img").attr("src", "http://www.eetimes.co=
m/StaticContent/v1/Images/Header/subheader_titleDesign.png");
            $("#subheader_title_img").attr("width", "64");
            $("#subheader_title_img").attr("height", "19");
            $("#subheader_title_img").attr("alt", "Design");  =

            $("#subheader_title_tag").attr('href', '/Design/DesignHome')=
;
            NavColor('Design');
            });
    </script>
                  =

       <script type=3D"text/javascript">
           var RegistrationStatus =3D "Registered";
       </script>      =

        =

        <script type=3D"text/javascript">
            var Title =3D "Deadline Scheduling";            =

           //add author later
            var ContentID =3D "4023324";
            var ContentDate =3D '20010304';             =

      </script>     =

       =

      <script type=3D"text/javascript">
          var DesignLine =3D "Embedded";
         </script>   =

              =

                =

        <script type=3D"text/javascript">
            var ecosystem =3D "";            =

        </script>
<!-- SiteCatalyst code version: H.21.
Copyright 1996-2010 Adobe, Inc. All Rights Reserved
More info available at http://www.omniture.com -->
<script language=3D"JavaScript" type=3D"text/javascript"><!--
    /* You may give each page an identifying name, server, and channel o=
n
    the next lines. */
    s.pageName =3D DesignLine + ": " + Title;
    s.server =3D "";
    s.channel =3D DesignLine;
    s.pageType =3D "";
    s.prop1 =3D "";
    s.prop2 =3D ContentDate;
    s.prop3 =3D "EETimes|" + ContentID + "|" + Title;
    s.prop4 =3D "";
    s.prop5 =3D "";
    s.prop6 =3D "";
    s.prop7 =3D "";
    s.prop8 =3D navigator.userAgent;
    s.prop9 =3D "";
    s.prop10 =3D "";
    s.prop11 =3D document.location;
    s.prop12 =3D "";
    s.prop14 =3D "";
    s.prop15 =3D "";
    s.prop16 =3D "";
    s.prop19 =3D RegistrationStatus;
    s.prop21 =3D "";
    s.hier1 =3D "EETimes|Design|" + DesignLine;
    /* Conversion Variables */
    s.campaign =3D "";
    s.state =3D "";
    s.zip =3D "";
    s.events =3D "event5";
    s.products =3D "";
    s.purchaseID =3D "";
    s.eVar1 =3D "";
    s.eVar2 =3D "";
    s.eVar3 =3D "";
    s.eVar4 =3D "";
    s.eVar5 =3D "";
    s.eVar21 =3D "";
    s.eVar22 =3D "";
    s.eVar23 =3D "";
    /************* DO NOT ALTER ANYTHING BELOW THIS LINE ! *************=
*/
    var s_code =3D s.t(); if (s_code) document.write(s_code)//--></scrip=
t> =

<script language=3D"JavaScript" type=3D"text/javascript"><!--
    if (navigator.appVersion.indexOf('MSIE') >=3D 0) document.write(unes=
cape('%3C') + '\!-' + '-')
//--></script><noscript><a href=3D"http://www.omniture.com" title=3D"Web=
 Analytics"><img
src=3D"http://om.eetimes.com/b/ss//b/ss/cmpeetimescom/1/H.21--NS/0"
height=3D"1" width=3D"1" border=3D"0" alt=3D"" /></a></noscript><!--/DO =
NOT REMOVE/-->
<!-- End SiteCatalyst code version: H.21. -->
<meta name=3D"google-site-verification" content=3D"aqeQJl1dzvKlHHA8IpYN0=
UlBUkeV64imdVnsZ5yJS7s" />
    <!--Start Kampyle Exit-Popup Code-->

    <script type=3D"text/javascript">
        var k_push_vars =3D {
            "display_after": 30,
            "view_percentage": 100,
            "popup_font_color": "#000000",
            "popup_background": "#ffffff",
            "popup_separator": "#D4E2F0",
            "header": "Your feedback is important to us!",
            "question": "Would you be willing to give us a short (1 minu=
te) feedback?",
            "footer": "Thank you for helping us improve our website",
            "remind": "Remind me later",
            "remind_font_color": "#3882C3",
            "yes": "Yes",
            "no": "No",
            "text_direction": "ltr",
            "images_dir": "http://cf.kampyle.com/",
            "yes_background": "#76AC78",
            "no_background": "#8D9B86",
            "site_code": 2930225
        }
    </script>

    <!--End Kampyle Exit-Popup Code-->

    <script type=3D"text/javascript">
        function validateMasterPageSearchText() {
            var searchtext =3D $("#SearchTextBox").val();
            if (searchtext.indexOf("<") !=3D -1 || searchtext.indexOf(">=
") !=3D -1) {
                $("#masterPageSearchError").html("The search text cannot=
 contain < or >.");
                return false;
            }
        }    =

    </script>
       <script type=3D"text/javascript">
           //Random Number for Group (Ads)
           PageGroupId =3D Math.floor(10000000 * Math.random());        =
        =

    </script>
    <!-- Start Kampyle Css -->
    <link rel=3D"stylesheet" type=3D"text/css" media=3D"screen" href=3D"=
http://cf.kampyle.com/k_button.css" />
    <!-- End Kampyle Css -->    =

</head>
<body>
    <!-- welcome -->

    =

 <span class=3D"AdTech:WelcomeAd">
 <script language=3D"javascript">
  <!--
      document.write('<scr' + 'ipt language=3D"javascript1.1" src=3D"htt=
p://adserver.adtechus.com/addyn/3.0/5242.1/1374603/0/16/ADTECH;alias=3DE=
ETimes_Design_Embeddedcom_Welcome_Ad_1x1;loc=3D100;target=3D_blank;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D'+PageGroupId+';misc=3D' + new Date=
().getTime() + '"></scri' + 'pt>');
  //-->
  </script>
  <noscript>
  <a href=3D"http://adserver.adtechus.com/adlink/3.0/5242.1/1374603/0/16=
/ADTECH;alias=3DEETimes_Design_Embeddedcom_Welcome_Ad_1x1;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D"  target=3D"_blank">
  <img src=3D"http://adserver.adtechus.com/adserv/3.0/5242.1/1374603/0/1=
6/ADTECH;alias=3DEETimes_Design_Embeddedcom_Welcome_Ad_1x1;loc=3D300;key=
=3D4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardwar=
e_Development+System_Design_Tools;grp=3D" border=3D"0" width=3D"1" heigh=
t=3D"1"></a>
  </noscript>
  <!-- End of JavaScript Tag -->
   =

 </span>

    =

 =


    <div class=3D"page">
        <div id=3D"header_title">
            <div id=3D"header_ad">

                =

 <span class=3D"AdTech:Top">
 <script language=3D"javascript">
  <!--
      document.write('<scr' + 'ipt language=3D"javascript1.1" src=3D"htt=
p://adserver.adtechus.com/addyn/3.0/5242.1/1374311/0/225/ADTECH;alias=3D=
EETimes_Design_Embeddedcom_Top_728x90;loc=3D100;target=3D_blank;key=3D40=
23324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_Dev=
elopment+System_Design_Tools;grp=3D'+PageGroupId+';misc=3D' + new Date()=
.getTime() + '"></scri' + 'pt>');
  //-->
  </script>
  <noscript>
  <a href=3D"http://adserver.adtechus.com/adlink/3.0/5242.1/1374311/0/22=
5/ADTECH;alias=3DEETimes_Design_Embeddedcom_Top_728x90;loc=3D300;key=3D4=
023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_De=
velopment+System_Design_Tools;grp=3D"  target=3D"_blank">
  <img src=3D"http://adserver.adtechus.com/adserv/3.0/5242.1/1374311/0/2=
25/ADTECH;alias=3DEETimes_Design_Embeddedcom_Top_728x90;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D" border=3D"0" width=3D"728" height=
=3D"90"></a>
  </noscript>
  <!-- End of JavaScript Tag -->
   =

 </span>

    =

 =


            </div>
            <div id=3D"header_block">
                <div class=3D"left">
                    <a id=3D"header_title_tag" href=3D"http://www.eetime=
s.com">
                        <img id=3D"Electronics_Main_Tag" src=3D'http://w=
ww.eetimes.com/StaticContent/v1/Images/Header/header_title.png'
                            width=3D'193px' height=3D'74' alt=3D'Electro=
nics Industry News' /></a> <a id=3D"subheader_title_tag">
                                <img id=3D"subheader_title_img" src=3D"h=
ttp://www.eetimes.com/StaticContent/v1/Images/EELife/spacer.gif" alt=3D"=
" /></a>
                </div>
                <div class=3D"right">
                   =

                      <form method=3D"post" action=3D"http://www.eetimes=
.com/Search/Search" onSubmit=3D"return validateMasterPageSearchText()">
                      <div class=3D"val">
                        <label id=3D"masterPageSearchError" class=3D"err=
or">
                        </label>
                        </div>
                    <div class=3D"SearchTextBoxContain">
                        <input class=3D"defaultTextBox" id=3D"SearchText=
Box" maxlength=3D"500" name=3D"SearchResultViewModel.SearchResultOptions=
.SearchTermsRaw" type=3D"text" value=3D"" />
                    </div>
                    <div id=3D"search" class=3D"search">
                        <input type=3D"image" src=3D"http://www.eetimes.=
com/StaticContent/v1/Images/Header/search_off.png"
                            onmouseover=3D"javascript:this.src=3D'http:/=
/www.eetimes.com/StaticContent/v1/Images/Header/search_on.png';"
                            onmouseout=3D"javascript:this.src=3D'http://=
www.eetimes.com/StaticContent/v1/Images/Header/search_off.png';"
                            value=3D"Search" name=3D"headerSearch" id=3D=
"HeaderSearchButton" />
                    </div>
                    <div id=3D"advanced_search">
                        =

                        <a href=3D"http://www.eetimes.com/Search/Search?=
resetSearch=3Dtrue">
                            <img src=3D"http://www.eetimes.com/StaticCon=
tent/v1/Images/Header/adv_search_off.png"
                                onmouseover=3D"javascript:this.src=3D'ht=
tp://www.eetimes.com/StaticContent/v1/Images/Header/adv_search_on.png';"=

                                onmouseout=3D"javascript:this.src=3D'htt=
p://www.eetimes.com/StaticContent/v1/Images/Header/adv_search_off.png';"=

                                value=3D"AdSearch" name=3D"headerAdSearc=
h" id=3D"HeaderAdSearchButton" /></a>
                         =

                    </div>
                      =

                    =

                    </form>                   =

                </div>
            </div>
            <div id=3D"displayName"></div>
        </div>
        =


        <div id=3D"menucontainer">
            <ul id=3D"mainnav">
            <li id=3D"NavLocator"></li>
                <li id=3D"Home">
                    <a href=3D"http://www.eetimes.com/">Home</a>
                    </li>
                    <li class=3D"NavDivide"></li>
                    <li id=3D"NewsAnalysis">
                        <a href=3D"http://www.eetimes.com/electronics-ne=
ws">News & Analysis</a>
                        <ul>
                            <li>
                                <a href=3D"http://www.eetimes.com/electr=
onics-news/latest-news">Latest News</a></li>
                            <li class=3D"double">
                                <a href=3D"http://www.eetimes.com/electr=
onics-news/semiconductor-news">Semiconductor News:<br />Silicon Strategi=
es</a></li>                               =

                             <li>
                                <a href=3D"http://www.eetimes.com/confid=
ential/"><i>EE Times: Confidential</i></a></li> =

                        </ul>
                    </li>
                    <li class=3D"NavDivide"></li>
                    <li id=3D"Business">
                    <a href=3D"http://www.ebnonline.com">Business</a>
                    <ul>
                            <li>
                                <a href=3D"http://www.ebnonline.com">Sup=
ply Chain</a></li>                    =

                        </ul>
                    </li>
                    <li class=3D"NavDivide"></li>
                    <li id=3D"EELife">
                        <a href=3D"http://www.eetimes.com/electrical-eng=
ineer-community">EE Life</a>
                        <ul>
                            <li>
                                <a href=3D"http://www.eetimes.com/electr=
onics-blogs">Blogs</a></li>
                            <li>
                                <a href=3D"http://www.eetimes.com/EELife=
/MessageBoardHome">Message Boards</a></li>
                        </ul>
                    </li>
                    <li class=3D"NavDivide"></li>
                    <li id=3D"Embedded"><a href=3D"http://www.eetimes.co=
m/design/embedded">Embedded.com</a>
                    <ul>
                            <li>
                                <a href=3D"http://www.eetimes.com/design=
/embedded/source-code">Source Code</a>
                        </ul>
                    </li>
                    <li class=3D"NavDivide"></li>
                    <li id=3D"Design">
                        <a href=3D"http://www.eetimes.com/design">Design=
</a>
                        <div> =

                        <ul>
                           <li class=3D"noLink">Designlines</li>
                           <li><a href=3D"http://www.eetimes.com/design/=
audio-design">Audio</a></li>
                            <li><a href=3D"http://www.eetimes.com/design=
/automotive-design">
                                Automotive</a> </li>
                            <li><a href=3D"http://www.eetimes.com/design=
/communications-design">
                                CommsDesign</a> </li>
                            <li><a href=3D"http://www.eetimes.com/design=
/eda-design">EDA</a></li>                            =

                            <li><a href=3D"http://www.eetimes.com/design=
/embedded-internet-design">
                                Embedded Internet</a></li>              =
              =

                            <li><a href=3D"http://www.eetimes.com/design=
/industrial-control">
                                Industrial Control</a></li>
                            <li><a href=3D"http://www.eetimes.com/design=
/microcontroller-mcu">
                                MCU</a></li>
                            <li><a href=3D"http://www.eetimes.com/design=
/medical-design">
                                Medical</a></li>
                            <li><a href=3D"http://www.eetimes.com/design=
/memory-design">Memory</a></li>                        =

                            <li><a href=3D"http://www.eetimes.com/design=
/military-aerospace-design">
                                Military & Aerospace</a></li>
                          </ul>
                          <div></div>
                        <ul>
                            <li><a href=3D"http://www.eetimes.com/design=
/analog-design">Planet
                                Analog</a></li>
                            <li><a href=3D"http://www.eetimes.com/design=
/power-management-design">
                                Power Management</a></li>
                            <li><a href=3D"http://www.eetimes.com/design=
/programmable-logic">
                                Programmable Logic</a></li>
                            <li><a href=3D"http://www.eetimes.com/design=
/microwave-rf-design">
                                RF & Microwave</a></li>
                            <li><a href=3D"http://www.eetimes.com/design=
/signal-processing-dsp">
                                Signal Processing</a></li>
                            <li><a href=3D"http://www.eetimes.com/design=
/smart-energy-design">
                                Smart Energy</a></li>
                            <li><a href=3D"http://www.eetimes.com/design=
/test-and-measurement">
                                Test & Measurement</a></li>             =
                                               =

                            <li class=3D"sup">
                                <a href=3D"http://www.eetimes.com/design=
/design-tools">Design Tools</a>
                                </li>                            =

                            <li>
                                <a href=3D"http://www.eetimes.com/design=
/design-tools/reference-designs">Reference Designs</a>
                            </li>
                            <li>
                                <a href=3D"http://www.eetimes.com/design=
/design-tools/evalutation-kits">Development Kits</a>
                            </li>
                            <li>
                                <a href=3D"http://www.eetimes.com/design=
/embedded/source-code">Source Code</a>
                            </li>
                            </ul>
                        </div>
                    </li>
                    <li class=3D"NavDivide"></li>
                    <li id=3D"Products">
                        <a href=3D"http://www.eetimes.com/electronics-pr=
oducts">Products</a>
                        <div>
                        <ul>
                            <li class=3D"asup">
                                <a href=3D"http://www.eetimes.com/electr=
onics-products/electronic-product-reviews">Product Reviews</a></li>
                            <li class=3D"asup">
                                <a href=3D"http://www.eetimes.com/Produc=
ts/ProductHowTos">Product How Tos</a></li>
                            <li class=3D"asup">
                                <a href=3D"http://www.eetimes.com/electr=
onics-products/electronic-product-releases">Product Releases</a></li>
                            <li class=3D"asup">
                                <a href=3D"http://www.eetimes.com/electr=
onics-products/electronics-companies">Company Directory</a></li>
                            <li class=3D"noLink">Product Categories</li>=
                            =

                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/advanced-technology">
                                Advanced Technology</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/analog-products">
                                Analog</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/boards-buses-products">
                                Boards/Buses</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/electro-mechanical">
                                Electromechanical</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/embedded-tools">
                                Embedded Tools</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/fpga-pld-products">
                                FPGAs/PLDs</a></li>
                            </ul>    =

                                <div></div>
                        <ul>  =

                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/ip-eda-products">
                                IP/EDA</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/logic-interfaces-products">
                                Logic & Interfaces</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/memory-products">
                                Memory</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/operating-systems">
                                Operating Systems</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/opto-electronics-products">
                                Optoelectronics</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/passives">
                                Passives</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/power-products">
                                Power</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/processors">
                                Processors</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/rf-microwave-products">
                                RF/Microwave</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/sensors-transducers">
                                Sensors & Transducers</a></li>
                            <li><a href=3D"http://www.eetimes.com/electr=
onics-products/test-measurement">
                                Test & Measurement</a></li>
                            </ul>                        =

                        </div>
                    </li>
                    <li class=3D"NavDivide"></li>
                    <li id=3D"EdTrain">
                        <a href=3D"http://www.eetimes.com/electrical-eng=
ineers/education-training">Education & Training</a>
                        <ul>
                            <li>
                                <a href=3D"http://www.eetimes.com/electr=
ical-engineers/education-training/tech-papers">Tech Papers</a></li>
                            <li>
                                <a href=3D"http://www.eetimes.com/electr=
ical-engineers/education-training/courses">Courses</a></li>
                            <li class=3D"fundamentals">
                                <a href=3D"http://www.eetimes.com/electr=
ical-engineers/education-training/courses/fundamentals">Fundamentals</a>=
</li>
                            <li>
                                <a href=3D"http://www.eetimes.com/electr=
ical-engineers/education-training/webinars">Webinars</a></li>
                        </ul>
                    </li>
                    <li class=3D"NavDivide"></li>
                    <li id=3D"Events">
                        <a href=3D"http://www.eetimes.com/electrical-eng=
ineers/events">Events</a>
                        <ul>
                            <li>
                                <a href=3D"http://esc-sv09.techinsightse=
vents.com/" target=3D"_blank">ESC Silicon Valley</a></li>
                            <li>
                                <a href=3D"http://esc-boston.techinsight=
sevents.com/" target=3D"_blank">ESC Boston</a></li>        =

                            <li>
                                <a href=3D"http://esc-chicago.techinsigh=
tsevents.com/" target=3D"_blank">ESC Chicago</a></li>        =

                            <li>
                                <a href=3D"http://www.escbrazil.com.br/"=
 target=3D"_blank">ESC Brazil</a></li>  =

                            <li>
                                <a href=3D"http://www.esc-india.com/" ta=
rget=3D"_blank">ESC India</a></li>                              =

                            <li>
                                <a href=3D"http://embedded-live.com/" ta=
rget=3D"_blank">Embedded Live</a></li>                                  =
                                       =

                            <li>
                                <a href=3D"http://vault.eetimes.com/armc=
onference/" target=3D"_blank">ARM Techcon</a></li>
                            <li>
                                <a href=3D"http://www.designcon.com/" ta=
rget=3D"_blank">DesignCon</a></li>                                      =
                      =

                        </ul>
                    </li>
                    <li class=3D"NavDivide"></li>
                    <li id=3D"Video">
                        <a href=3D"http://video.eetimes.com">Video</a>
                    </li>
                    <li id=3D"UserName">
                        <div id=3D"username">
                        </div>
                    </li>
            </ul>
        <script type=3D"text/javascript">


                function my_callback_method(data) {

                    $('#UserName').html(data);
                   =


                    =

                }

        </script>
            <!-- The random query string is used to avoid any possible c=
aching problem with IE -->
<script type=3D"text/javascript" src=3D"http://www.eetimes.com/Registrat=
ion/Username?jsoncallback=3Dmy_callback_method&tstamp=3D2032353863"></sc=
ript>

        </div>         <!--/Ticker -->   =

        =

        =

        =

 <span class=3D"AdTech:Pushdown">
 <script language=3D"javascript">
  <!--
      document.write('<scr' + 'ipt language=3D"javascript1.1" src=3D"htt=
p://adserver.adtechus.com/addyn/3.0/5242.1/1374478/0/16/ADTECH;alias=3DE=
ETimes_Design_Embeddedcom_Pushdown_1x1;loc=3D100;target=3D_blank;key=3D4=
023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_De=
velopment+System_Design_Tools;grp=3D'+PageGroupId+';misc=3D' + new Date(=
).getTime() + '"></scri' + 'pt>');
  //-->
  </script>
  <noscript>
  <a href=3D"http://adserver.adtechus.com/adlink/3.0/5242.1/1374478/0/16=
/ADTECH;alias=3DEETimes_Design_Embeddedcom_Pushdown_1x1;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D"  target=3D"_blank">
  <img src=3D"http://adserver.adtechus.com/adserv/3.0/5242.1/1374478/0/1=
6/ADTECH;alias=3DEETimes_Design_Embeddedcom_Pushdown_1x1;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D" border=3D"0" width=3D"1" height=3D=
"1"></a>
  </noscript>
  <!-- End of JavaScript Tag -->
   =

 </span>

    =

     =

        <div id=3D"main">
            =

<!-- column 1 -->
    <div id=3D"threeColumn_left">
        =


<div id=3D"SiteMap" class=3D"Design_Color">
    <ul>
     <li><a href=3D"/design">Design</a>
                    <ul> =

                      <li class=3D"noLink">DesignLines
                      <ul>
                      <li><a href=3D"/design/audio-design">Audio</a></li=
> =

                      <li><a href=3D"/design/automotive-design">Automoti=
ve</a> </li> =

                      <li><a href=3D"/design/communications-design">Comm=
sDesign</a> </li> =

                      <li><a href=3D"/design/eda-design">EDA</a></li> =

                      <li><a href=3D"/design/embedded">Embedded.com</a><=
/li>                                                                  =

                      <li><a href=3D"/design/embedded-internet-design">E=
mbedded Internet</a></li> =

                      <li><a href=3D"/design/industrial-control">Industr=
ial Control</a></li> =

                      <li><a href=3D"/design/microcontroller-mcu">MCU</a=
></li> =

                      <li><a href=3D"/design/medical-design">Medical</a>=
</li> =

                      <li><a href=3D"/design/memory-design">Memory</a></=
li> =

                      <li><a href=3D"/design/military-aerospace-design">=
Military & Aerospace</a></li> =

                      <li><a href=3D"/design/analog-design">Planet Analo=
g</a></li> =

                      <li><a href=3D"/design/power-management-design">Po=
wer Management</a></li> =

                      <li><a href=3D"/design/programmable-logic">Program=
mable Logic</a></li> =

                      <li><a href=3D"/design/microwave-rf-design">RF & M=
icrowave</a></li> =

                      <li><a href=3D"/design/signal-processing-dsp">Sign=
al Processing</a></li> =

                      <li><a href=3D"/design/smart-energy-design">Smart =
Energy</a></li> =

                      <li><a href=3D"/design/test-and-measurement">Test =
& Measurement</a></li> =

                       </ul>
                       </li>  =

                      =

                      <li><a href=3D"/design/design-tools">Design Tools<=
/a>
                      <ul>
                      <li><a href=3D"/design/design-tools/reference-desi=
gns">Reference Designs</a> </li> =

                      <li><a href=3D"/design/design-tools/evalutation-ki=
ts">Development Kits</a> </li> =

                      <li><a href=3D"/design/embedded/source-code">Sourc=
e Code</a></li>
                      </ul>
                      </li>
                      </li>
                    </ul> =

         =

</div>

 <span class=3D"AdTech:Tile1">
 <script language=3D"javascript">
  <!--
      document.write('<scr' + 'ipt language=3D"javascript1.1" src=3D"htt=
p://adserver.adtechus.com/addyn/3.0/5242.1/1374852/0/6/ADTECH;alias=3DEE=
Times_Design_Embeddedcom_Tile1_125x125;loc=3D100;target=3D_blank;key=3D4=
023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_De=
velopment+System_Design_Tools;grp=3D'+PageGroupId+';misc=3D' + new Date(=
).getTime() + '"></scri' + 'pt>');
  //-->
  </script>
  <noscript>
  <a href=3D"http://adserver.adtechus.com/adlink/3.0/5242.1/1374852/0/6/=
ADTECH;alias=3DEETimes_Design_Embeddedcom_Tile1_125x125;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D"  target=3D"_blank">
  <img src=3D"http://adserver.adtechus.com/adserv/3.0/5242.1/1374852/0/6=
/ADTECH;alias=3DEETimes_Design_Embeddedcom_Tile1_125x125;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D" border=3D"0" width=3D"125" height=
=3D"125"></a>
  </noscript>
  <!-- End of JavaScript Tag -->
   =

 </span>

    =


 <span class=3D"AdTech:Tile2">
 <script language=3D"javascript">
  <!--
      document.write('<scr' + 'ipt language=3D"javascript1.1" src=3D"htt=
p://adserver.adtechus.com/addyn/3.0/5242.1/1375144/0/6/ADTECH;alias=3DEE=
Times_Design_Embeddedcom_Tile2_125x125;loc=3D100;target=3D_blank;key=3D4=
023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_De=
velopment+System_Design_Tools;grp=3D'+PageGroupId+';misc=3D' + new Date(=
).getTime() + '"></scri' + 'pt>');
  //-->
  </script>
  <noscript>
  <a href=3D"http://adserver.adtechus.com/adlink/3.0/5242.1/1375144/0/6/=
ADTECH;alias=3DEETimes_Design_Embeddedcom_Tile2_125x125;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D"  target=3D"_blank">
  <img src=3D"http://adserver.adtechus.com/adserv/3.0/5242.1/1375144/0/6=
/ADTECH;alias=3DEETimes_Design_Embeddedcom_Tile2_125x125;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D" border=3D"0" width=3D"125" height=
=3D"125"></a>
  </noscript>
  <!-- End of JavaScript Tag -->
   =

 </span>

    =


 <span class=3D"AdTech:Skyscraper">
 <script language=3D"javascript">
  <!--
      document.write('<scr' + 'ipt language=3D"javascript1.1" src=3D"htt=
p://adserver.adtechus.com/addyn/3.0/5242.1/1374764/0/0/ADTECH;alias=3DEE=
Times_Design_Embeddedcom_Skyscraper_120x600_or_125x600;loc=3D100;target=3D=
_blank;key=3D4023324+/design/embedded/4023324/Deadline-Scheduling+Softwa=
re/Hardware_Development+System_Design_Tools;grp=3D'+PageGroupId+';misc=3D=
' + new Date().getTime() + '"></scri' + 'pt>');
  //-->
  </script>
  <noscript>
  <a href=3D"http://adserver.adtechus.com/adlink/3.0/5242.1/1374764/0/0/=
ADTECH;alias=3DEETimes_Design_Embeddedcom_Skyscraper_120x600_or_125x600;=
loc=3D300;key=3D4023324+/design/embedded/4023324/Deadline-Scheduling+Sof=
tware/Hardware_Development+System_Design_Tools;grp=3D"  target=3D"_blank=
">
  <img src=3D"http://adserver.adtechus.com/adserv/3.0/5242.1/1374764/0/0=
/ADTECH;alias=3DEETimes_Design_Embeddedcom_Skyscraper_120x600_or_125x600=
;loc=3D300;key=3D4023324+/design/embedded/4023324/Deadline-Scheduling+So=
ftware/Hardware_Development+System_Design_Tools;grp=3D" border=3D"0" wid=
th=3D"0" height=3D"0"></a>
  </noscript>
  <!-- End of JavaScript Tag -->
   =

 </span>

    =

    =

    </div>        =

    <!-- column 2 -->
    <div id=3D"threeColumn_contain">
        <div id=3D"threeColumn_top">        =

            =

 <div id=3D"breadcrumbs">
     =

            <a href=3D"/">EE Times Home</a> &gt;
            <a href=3D"/design">Design</a>
            =

                &gt; =

                <a href=3D"/Design/DesignLine?classificationGroupId=3D6"=
>Embedded</a>
              =


</div>     =

    =

        </div>
        <div id=3D"threeColumn_mid">        =

            =


<script type=3D"text/javascript">
    $('#NAA_Header').corner('top 30px');
    $('#NAA_Body').corner('bottom 30px');
    $('#NNA_Comment').corner('30px');
    $('#NNA_Poll').corner('30px');    =

</script>

<script type=3D"text/javascript">
    $(document).ready(function() {
    var url =3D '/General/ContentTracking?contentItemId=3D4023324&Tracki=
ngTypeId=3D1&referralUrl=3Dhttp%3A%2F%2Fwww.eetimes.com%2Fdesign%2Fembed=
ded%2F4023324%2FDeadline-Scheduling&contentTypeId=3D3';
        $.get(url, null, null
       );
    });
</script>
    =


 <div id=3D"NAA_Header">
 <h2>Design Article</h2>
 </div>
 <div id=3D"NAA_Body">  =

 =

        <div id=3D"NNA_SB0">
        </div> =

        =

        =

        <!-- Display some default image maybe -->
    =


        <div id=3D"NNA_SB1">
        </div>
        <div id=3D"NNA_SB1">
        </div>
        =

        <div id=3D"NNA_SB2">
        </div>
        =

        <div id=3D"NAA_Content">
            <div id=3D"NAA_Title">
                <h1 class=3D"Design_Color">
                    Deadline Scheduling</h1>
            </div>
            <h2>
                <b>
                    Peter Dibble
                </b>
            </h2>
            <h2>
                <b>3/4/2001 9:31 AM EST</b>
            </h2>
            =


<div id=3D'contentpages'>
                =

                               <b>Deadline Scheduling</b><br />
                            =

		  <FONT SIZE=3D"2" FACE=3D"Verdana">
<P>

<P>
<B>Most real-time operating systems are based on static priorityscheduli=
ng. But how can systems be truly real time without
an awareness of deadlines?</B>
</P>
<P>

<P>
I have not yet used a deadline scheduler or implemented one for serious =
use, and I've only read a fraction of the "relevant literature." I canno=
t call myself a real-time scheduling expert. I am, however, an intereste=
d and half-committed neophyte. In the last few years, I've spent many we=
eks with real-time scheduling fanatics in the Real-Time Java Working Gro=
up and the Real-Time Java Experts Group. The Real Time Specification for=
 Java has carefully-prepared slots for improved scheduling algorithms. T=
hey are there because the experts group wants the specification to be re=
levant after the real-time community moves away from static priority sch=
eduling. There is a serious possibility this movement will happen.
</P>
<P>

<P>
I started out profoundly skeptical. I have used static priority scheduli=
ng for decades and never found a scheduling problem I could not solve. M=
ore fundamentally, I, like most real-time programmers, am a control frea=
k. I can think of too many ways a complex, authoritarian scheduler could=
 break a system. =

</P>
<P>

<P>
The potential of dynamic priority is closely coupled with "write-once-ru=
n-anywhere." Priorities are all the scheduler needs to know if the only =
critical fact is the relative ranking of tasks. That implies that only t=
he highest priority task has hard real-time characteristics. If there is=
 more than one real-time task, the scheduler might serve the system bett=
er if it knows when each task needs to complete and how long it will tak=
e. In the best case, the scheduler can tell you what deadlines it can gu=
arantee, and meet those commitments. This isn't exactly write once run a=
nywhere, but it is the best we can expect in a real-time environment. A =
priority scheduler cannot make guarantees, and it may fail in unexpected=
 ways if it is moved out of the environment for which it was designed.
</P>
<P>

<P>
This may sound too positive. I am not sure dynamic priority scheduling i=
s ready for widespread use today. It has practical problems starting wit=
h the extreme difficulty of putting a strict limit on how much processor=
 time a task will require even in a specified environment, and ending wi=
th the NP-completeness of the general scheduling problem.
</P>
<P>

<P>
It is, however, something anyone seriously concerned with real-time syst=
ems design needs to track.
</P>
<P>

<P>
<FONT SIZE=3D"3"><B>Some definitions</B></FONT>
</P>
<P>

<P>
We are used to fixed-priority schedulers. The term is a little misleadin=
g since priorities are not necessarily fixed. They can be freely changed=
 under program control, but the scheduler is not allowed to change them.=
 Aging (which I will discuss in detail later) pushes this definition, bu=
t fixed priority schedulers with aging are still considered fixed priori=
ty. This is mainly a non-issue since aging is not common in real-time sc=
hedulers.
</P>
<P>

<P>
Priority alterations by priority inheritance or priority ceiling protoco=
ls are also considered okay for fixed-priority schedulers. The scheduler=
 is probably involved in the priority changes, but the motivation is wro=
ng, so these practices do not constitute dynamic priority scheduling.
If priorities are assigned at design time (as by rate monotonic analysis=
, pr RMA), that is termed static priority assignment. =

</P>
<P>

<P>
Hard real-time tasks must finish at a particular time. Something really =
bad will happen if they don't.
</P>
<P>

<P>
Soft real-time tasks have a preferred completion time, but the consequen=
ces of not completing on time are not totally catastrophic. There is a c=
ontinuum between not real-time and hard real time. In the world of engin=
eering trade-offs, failure is seldom totally unthinkable.
</P>
<P>

<P>
The target completion time for a task is called its deadline.
</P>
<P>

<P>
Non-schedulable entities use a share of a system resource (like CPU time=
) but are not controlled by the scheduler. Interrupt service routines ar=
e a good example.
</P>
<P>

<P>
A dynamic priority scheduler may never deal with priority. It arranges s=
cheduling queues by execution eligibility, and if tasks want to communic=
ate a metric of relative importance to the scheduler, they call it impor=
tance. The scheduler controls the order of the queues, and it may reshuf=
fle them on any significant event: passage of time, completion of a task=
, change of a lock's state, or appearance of a new runnable task. The ef=
fective priority of tasks may be in constant flux, it is invisible to pr=
ogrammers, and they should not be concerned with it (except programmers =
implementing the scheduler).
</P>
<P>

<P>
Preemption is the interruption of a lower-priority task when a higher-pr=
iority task becomes ready to run. Systems that don't support preemption =
are called run until block because that is what tasks do under those sys=
tems. A system that preempts tasks is called preemptive.
</P>
<P>

<P>
<FONT SIZE=3D"3"><B>"Classical" scheduling</B></FONT>
</P>
<P>

<P>
Often priorities do an excellent job of communicating a programmer's des=
ires to the scheduler. Actual deadlines are not clearly articulated, and=
 many of them are soft. The importance of tasks is relative, for example=
:
<UL>
<LI>No matter what is going on, if someone pushes the abort button, deal=
 with it immediately.
<LI>The power-fail line is just a little bit less important than the abo=
rt button.
<LI>.... =

<LI>When nobody else wants time, record events on a printed log.
<LI>In any left-over time, run system diagnostics.
</UL>
</P>
<P>

<P>
For many systems this level of description is complete and useful. It is=
 wonderfully easy to implement a scheduler for it, and the scheduler is =
efficient to the point of trivial. It may well use only a small constant=
 amount of time for any scheduling event.
</P>
<P>

<P>
Programmers particularly like the fact that they can easily predict and =
control what task should be running at any moment.
</P>
<P>

<P>
Rate monotonic analysis
</P>
<P>

<P>
This idea is from Liu and Layland.<A HREF=3D"#references1"><B>&#91;1&#93=
;</B></A> They proved that if a fixed priority preemptive system is to r=
un a set of independent periodic tasks, no better way exists to statical=
ly assign priorities to the periodic tasks than to assign them such that=
 tasks with shorter periods get higher priorities. =

</P>
<P>

<P>
That thought has been considerably extended, but the fundamental idea re=
mains. Techniques have even been developed to allow RMA scheduling of ap=
eriodic tasks (by squeezing them into periodic allocations), and to anal=
yze systems with interactions between tasks (by bounding the blocking ti=
me for the interactions with techniques like priority ceiling protocol).=

</P>
<P>

<P>
One particularly important feature of RMA is that a system's feasibility=
 can be analyzed. Using RMA, an architect can gather the facts about a s=
ystem, then turn the analytical crank until it produces a "yes, schedule=
 it like this" or "no, this cannot be scheduled with a fixed priority sc=
heduler." Impossibility results are particularly useful. =

</P>
<P>

<P>
Unlike some products of the academic real-time community, rate monotonic=
 analysis can be applied to ordinary commercial systems. Every serious r=
eal-time operating system has a fixed priority preemptive scheduler suit=
able for analysis.
</P>
<P>

<P>
<FONT SIZE=3D"3"><B>Rate monotonic scheduling's limits</B></FONT>
</P>
<P>

<P>
Rate monotonic analysis is comparatively simple because it makes simplif=
ying assumptions. The assumptions apply to a substantial number of probl=
ems, but RMA is not the universal tool that solves all scheduling proble=
ms.
</P>
<P>

<P>
Perhaps most offensive to the standard thrifty embedded engineer is the =
CPU time that RMA uses. The simple, general version of RMA cannot commit=
 to the feasibility of a system that uses more than 69% of available CPU=
 time. If the architect falls back on old fashioned time-line analysis, =
RMA can be pushed all the way to 100% utilization, but we're into tediou=
s hand simulation, not elegant algebra.
</P>
<P>

<P>
In some systems, nearly every event is periodic, but most have a signifi=
cant aperiodic component. The real world is like that. Aperiodic events =
can be handled in a strictly periodic system by servicing them in period=
ically scheduled time slots, but that effectively reduces the system to =
polling. The system designer has to decide how often to poll for aperiod=
ic events, and how long to allow for servicing them.
</P>
<P>

<P>
Then there is the issue of soft real time. RMA can incorporate a measure=
 of importance by bumping a task's priority above the level dictated by =
its period. This will push failure toward tasks that have not been bumpe=
d, but it runs contrary to the whole idea of RMA. The procedure analyzes=
 feasibility, and then guarantees success. It is not designed to work fo=
r systems that are infeasible.
</P>
<P>

<P>
<FONT SIZE=3D"3"><B>Limitations of fixed priority scheduling</B></FONT>
</P>
<P>

<P>
The worst problem with fixed priority scheduling is that it is oblivious=
 to deadlines; that is, blind to hard real time. It is like a traffic li=
ght that operates on a timer with no traffic sensors. Consider Figure 1.=
 The top timeline (H) represents a high-priority task. The lower timelin=
e (L) represents a lower-priority task. The scheduler executes the highe=
r priority task first, easily completing its computation before its dead=
line. When task H completes, the scheduler switches to task L, but not e=
nough time is available to complete it before its deadline. If the sched=
uler were aware of the deadlines, it could have run L before H, and met =
both deadlines. An experienced real-time programmer could finesse this p=
roblem by manipulating priorities as the system runs, or by playing with=
 locks, but at this point the engineer is fighting the scheduler, rather=
 than working with it.
</P>
<P>

<P>
<img src=3D"http://img.cmpnet.com/embedded/gifs/2001/0103/0103feat2fig1.=
gif" WIDTH=3D"201" HEIGHT=3D"199" HSPACE=3D"0" VSPACE=3D"0" BORDER=3D"0"=
>
<P>

<P>
<FONT SIZE=3D"3"><B>Advantages of fixed priority scheduling</B></FONT>
</P>
<P>

<P>
The overwhelming advantage of fixed priority scheduling is that it is en=
trenched in existing practice:
</P>
<P>

<P>
<UL>
<LI>Every mainstream operating system or task switching kernel supports =
fixed priorities.
<LI>Real-time engineers have been using it all their professional career=
s.
<LI>Books, papers, and professional development courses are available on=
 the use of fixed priority scheduling.
</UL>
</P>
<P>

<P>
Embedded engineers may not be risk takers, but real-time engineers are g=
enerally risk-averse to the extreme. For them, the track record bullet m=
ay be necessary and sufficient.
</P>
<P>

<P>
Control is another big point. Dynamic priority schedulers tend to be com=
plex and sometimes use heuristics. Embedded engineers want control of ev=
ery resource. They don't feel comfortable with a scheduler that essentia=
lly says "trust me, it will be great."
</P>
<P>

<P>
Efficiency matters. A fixed priority scheduler needs a few hundred bytes=
 and a tiny share of the CPU time. A dynamic priority scheduler may go w=
ay beyond that.
</P>
<P>

<P>
And for many systems, priority is the best abstraction for scheduling.
</P>
<P>

<P>
<FONT SIZE=3D"3"><B>Solved problems</B></FONT>
</P>
<P>

<P>
Over the years, fixed priority scheduling has been well polished. Time s=
haring, and some real-time systems, need to allow all tasks to make some=
 progress. The notion of aging was developed for this. It gives each tas=
k what amounts to an effective priority that is gradually increased whil=
e the task waits to execute. Eventually every task will get an effective=
 priority that will give it at least a brief slice of CPU time.
</P>
<P>

<P>
A high-priority task may find itself waiting for a low-priority task to =
release a resource. This drops the effective priority of the high-priori=
ty task below the low-priority one. This can be designed around, but it =
is pernicious to debug, and it causes trouble for RMA-oriented analysis.=
 Priority inheritance and priority ceiling protocols were invented to so=
lve this problem. They boost the priority of the low-priority task while=
 it holds a resource that a higher-priority task needs.
</P>
<P>

<P>
Until the mid '80s, formal analysis of fixed priority scheduling was eit=
her extremely tedious, or impossible. Liu and Layland's RMA gave enginee=
rs formal tools to analyze fixed priority systems.
</P>
<P>

<P>
<FONT SIZE=3D"3"><B>Soft real time</B></FONT>
</P>
<P>

<P>
It might not be overstating the case to say that fixed priority schedule=
rs are only suitable for soft real-time systems. The fact that they have=
 been successfully used for numerous hard real-time systems is testament=
 to the determination of engineers who have forced hard real-time constr=
aints into systems that were not designed for them.
</P>
<P>

<P>
How can a system that has no concept of a deadline be said to support me=
eting them? True, a good real-time OS is designed to stay out of the app=
lication's way, but this only means that it does not unnecessarily inter=
fere with hard real-time processing. A bare processor does as well.
</P>
<P>

<P>
Is hard real time an issue? Few systems are rigorously hard real time. L=
ife goes on after a missed deadline. Perhaps a truly hard real-time syst=
em is in the same class as truly "non-stop" computing: important, but ra=
re and expensive.
</P>
<P>

<P>
Hard real time may be rare, but applications for the technology are not.=
 Consider a server for streaming media. The world will not end if it fai=
ls to deliver packets in time, and it may be okay if it occasionally mis=
ses deadlines. The server will be judged partly on how many streams it c=
an serve concurrently, and partly on the quality of those streams. Softw=
are that can determine when a server is fully committed with enough cert=
ainty that it can commit nearly 100% of the server and still deliver fla=
wless streams is valuable. The same problem/opportunity extends through =
the network that delivers the stream. Every switch and router can benefi=
t from software that understands deadlines.
</P>
<P>

<P>
Consider a disk file system. The classic system is optimized for through=
put, but that may not be appropriate in a time-sharing system. Perhaps t=
he file system would benefit from deadline-scheduling technology applied=
 to scheduling I/O requests. In an embedded system this technology might=
 appear hidden in an intelligent disk drive.
</P>
<P>

<P>
Consider elevator scheduling (for real elevators). What if the elevator =
were scheduled, not to minimize travel, but to keep user's wait time to =
a minimum? I'd rather like it if the elevator would give me a time commi=
tment when I pressed the call button. Setting the time commitment when u=
sers select a destination might be an interesting exercise in sociology.=

</P>
<P>

<P>
<FONT SIZE=3D"3"><B>Deadline scheduling</B></FONT>
</P>
<P>

<P>
Dynamic priority scheduling generally starts with deadlines, or for peri=
odic tasks, sets of deadlines. The scheduler determines the execution or=
der for tasks based on the deadlines.
</P>
<P>

<P>
A scheduler can get a lot of mileage out of deadlines, but to make guara=
ntees it needs cost as well. If a task registers a deadline and the amou=
nt of CPU time it will need to reach that deadline, the scheduler can pe=
rform feasibility analysis. If the scheduler determines that it can cons=
truct a schedule that will meet the new deadline as well as all the dead=
lines it has already accepted, it will accept the new deadline. Unless t=
he scheduler is allowed to do this type of admission control it cannot m=
ake realistic commitments. =

</P>
<P>

<P>
If all tasks are well behaved and never attempt to use more CPU time tha=
n they requested in their cost metric, admission control is sufficient. =
If tasks sometimes underestimate their processor requirements, a permiss=
ive scheduler will allow the task that had an incorrect cost metric to c=
ompromise the deadlines of other tasks. To prevent this, the scheduler m=
ay implement an enforcement policy. If a task attempts to exceed its bud=
get, something bad will happen to it. Maybe it will be removed from the =
system. Maybe it will just be preempted and allowed to resume later. In =
any case it is likely to miss its deadline, but it will not affect the c=
orrectness of the rest of the schedule. This type of policy is familiar =
to users of old batch computers, which actually used job scheduling poli=
cies very like modern deadline scheduling.
</P>
<P>

<P>
<FONT SIZE=3D"3"><B>EDF</B></FONT>
</P>
<P>

<P>
The first hard real-time dynamic priority scheduler is called Earliest D=
eadline First (EDF). Liu and Layland proved that if a schedule exists th=
at will meet all deadlines, a schedule computed by always executing the =
task with the earliest uncompleted deadline meets all deadlines.
</P>
<P>

<P>
EDF is attractive. It is efficient and easy to compute. It is easy to re=
ason about. It has formed the basis of a large part of the dynamic prior=
ity scheduling research.
</P>
<P>

<P>
EDF has only one serious drawback. The theory only says it is optimal fo=
r loads that can be scheduled. It does not address overloads. EDF degrad=
es ungracefully when it is overloaded. This is not an issue that should =
trouble a serious hard real-time system. If any degradation is catastrop=
hic, there can be no graceful degradation.
</P>
<P>

<P>
<FONT SIZE=3D"3"><B>Scheduling</B></FONT>
</P>
<P>

<P>
EDF scheduling is fairly easy to implement. The execution queue is sorte=
d by the time to the next deadline. When a task becomes active it must b=
e inserted in the execution queue, or, if its deadline is before the dea=
dline of the currently executing task, it must preempt the current task.=

</P>
<P>

<P>
If all tasks are strictly periodic (they only become active because of t=
he passage of time), preemption is not necessary. This simplifies the sc=
heduler and reduces context switching overhead.
</P>
<P>

<P>
Feasibility analysis is simple and O(n), if tasks are allowed to be exec=
uted anywhere in their period; that is, early results are acceptable, an=
d tasks are prepared to run at any time. Seen another way, this permits =
tasks to have jitter roughly equal to their period. Finer control of dea=
dlines puts analysis in the pseudo-polynomial time class. That is only a=
 good class if the alternative is exponential time.
</P>
<P>

<P>
<FONT SIZE=3D"3"><B>Slack time</B></FONT>
</P>
<P>

<P>
Slack time, or laxity, is the amount of time between when a task would c=
omplete if it started now and its next deadline. This is the size of the=
 available scheduling window.
</P>
<P>

<P>
Scheduling tasks based on slack time requires cost metrics for schedulin=
g, but it works as well as EDF, degrades a little more gracefully under =
overload, and extends relatively well to scheduling multiple processors.=
 The algorithm is called Least Laxity First, or LLF. Its operation is we=
ll described by its name.
</P>
<P>

<P>
Least laxity first needs to be modified a little to prevent excessive co=
ntext switching. If multiple tasks have nearly the same laxity, strict L=
LF would have them context switch every time the scheduler gets control.=
 LLF modifies the algorithm so the scheduler does not call for context s=
witch if the switch will not change the deadlines that are met.
</P>
<P>

<P>
<FONT SIZE=3D"3"><B>Aperiodic tasks</B></FONT>
</P>
<P>

<P>
The scheduler would love to schedule everything, but some things are out=
 of its control. Interrupt service, DMA, and tasks that for some reason =
need to be scheduled at higher "priority" than the scheduler disrupt the=
 pre-planned execution sequence. These are called non-schedulable entiti=
es and are anathema to a deadline scheduler. Some analysis techniques al=
low for non-schedulable entities, but they decrease the efficiency of th=
e scheduler. Systems that are designed for a deadline scheduler make str=
enuous efforts to reduce the number of non-schedulable entities and the =
amount of CPU time that they need.
</P>
<P>

<P>
Aperiodic tasks are a challenge for dynamic priority schedulers:
</P>
<P>

<P>
<UL>
<LI>Feasibility analysis is generally a demanding task. It is not really=
 suitable for execution while the system is trying to meet deadlines.
<LI>What if an event arrives, and feasibility analysis says it cannot be=
 serviced?
<LI>The load of aperiodic events is usually described as a statistical d=
istribution. This is nearly unstudied territory.
</UL>
</P>
<P>

<P>
Aperiodic tasks/events can be scheduled using priority scheduling at hig=
her priorities than the dynamic priority tasks. This works when the aper=
iodic events need hard real-time service and the periodic events are rel=
atively soft real time. All the parts of this system are well studied. I=
ts major problem is that the scheduler must view all the aperiodic activ=
ity as non-schedulable entities. This makes it inefficient at scheduling=
 periodic tasks since it has to allow for huge non-schedulable overhead.=

</P>
<P>

<P>
A periodic server that is scheduled by the dynamic priority scheduler ca=
n serve the aperiodic events.  This approach brings the aperiodic events=
 under the control of the scheduler. Scheduling theorists have worked ha=
rd to make this approach practical. The problem is how to give the aperi=
odic events good response time without reserving too much time for them.=
 To give the aperiodic events nearly the response time they would have i=
n a priority scheduled system, the server must be scheduled with a short=
 period. To handle peak loads of aperiodic events that happen to arrive =
in a cluster, the cost of the server must be high. That is a recipe for =
reserving all the processor time for service of aperiodic events.
</P>
<P>

<P>
If the aperiodic events can be classified as soft real time, the schedul=
er can do a better job with them. This is not unreasonable. For instance=
, keyboard input would like to be serviced in about a tenth of a second,=
 but if it occasionally needs two-tenths of a second the world will not =
end. The scheduler can do clever things like handing unused time forward=
 from period to period, so the aperiodic server can reserve a little mor=
e than the average cost per period instead of the maximum cost per perio=
d. (See Spuri and Buttazzo's work on an algorithm called the Total Bandw=
idth Server.<A HREF=3D"#references2"><B>&#91;2&#93;</B></A>) =

</P>
<P>

<P>
<FONT SIZE=3D"3"><B>How we can get there</B></FONT>
</P>
<P>

<P>
How can we bring dynamic priority scheduling out of its academic and nic=
he market backwater into the mainstream of embedded real-time work? The =
hooks in the Real Time Specification for Java should help. Outside the D=
epartment of Defense, few groups can afford to support the construction =
of a production-quality run-time environment just so they can try dynami=
c priority scheduling. Java is available almost everywhere, and its stre=
ngths (it's easy to program and extremely portable) align well with the =
strengths of dynamic priority scheduling. They both depend to some exten=
t on cheap processor cycles for success.
</P>
<P>

<P>
Then people have to start talking about dynamic priority scheduling to t=
he general embedded real-time community. A "killer app" would help a lot=
. Media servers, or offering guaranteed network quality of service might=
 be it. Or it might appear at the other extreme. Maybe the killer app wi=
ll be guaranteeing hard real time for cyclic engine controller activitie=
s while sharing the processor with a varying load of entertainment and e=
nvironmental control applications.
</P>
<P>

<P>
All the NP-complete and otherwise complex algorithms don't help. Real-ti=
me programmers don't like heuristic algorithms, and exponential time req=
uires a compelling justification.
</P>
<P>

<P>
<FONT SIZE=3D"3"><B>WORA</B></FONT>
</P>
<P>

<P>
Real time and write once run anywhere are fundamentally at odds. A real-=
time load that runs successfully on one computer very likely depends on =
the hardware of that computer and the mix of other activities with which=
 it must share the machine. Change anything, and the program may become =
infeasible, that is to say, fail.
</P>
<P>

<P>
Dynamic priority scheduling doe not give WORA, but it can let an applica=
tion know before it starts whether it will be able to complete successfu=
lly. This is compelling for distributed and multiprocessor systems where=
 the program can use feasibility analysis to scale the resources until i=
t becomes feasible. It is useful, and probably the best we can hope for =
on uni-processor systems.
</P>
<P>

<P>
<FONT SIZE=3D"3"><B>Heads up</B></FONT>
</P>
<P>

<P>
This article is a heads up. Dynamic priority scheduling may not be the t=
ool you need today, but it has tremendous potential. When it gets here i=
t could be the most important thing ever to hit real-time programming. 	=

</P>
<P>

<P>
<B>Peter Dibble</B> is a senior scientist for Microware and a member of =
the Real Time Java Experts Group. In addition to his extensive Java and =
real-time performance research, he has written numerous technical articl=
es and several books. Peter holds a PhD in computer science from Univers=
ity of Rochester. Contact him at <A HREF=3D"mailto:dibble@microware.com"=
>dibble@microware.com</A>.
</P>
<P>

<P>
<FONT SIZE=3D"3"><B>REFERENCES</B></FONT>
</P>
<P>

<P>
<A NAME=3D"references1">1</A>. Liu, C.L. and J.W. Layland, "Scheduling A=
lgorithms for Multi-Programming in a Hard Real-Time Environment," <I>Jou=
rnal of the Association of Computer Machinery (ACM),</I> Vol. 20, No. 1,=
 Jan. 1973, pp. 46-61.
</P>
<P>

<P>
<A NAME=3D"references2">2</A>. Spuri, M. and G.C. Buttazzo, "Scheduling =
Aperiodic Tasks in Dynamic Priority Systems," <I>Journal of Real-Time Sy=
stems,</I> Vol. 10, No. 2, 1996.
<P>

<P>
<FONT SIZE=3D"2" FACE=3D"Verdana, Georgia, Arial, Sans-Serif"><p class=3D=
"copy">Return to <A HREF=3D"/2001/0103/">Table of Contents</A>
			=

                       =

            </div>
        </div>
    =


<script type=3D"text/javascript">
    $(document).ready(function() {
        $("#NumberComments").html('0 Comments');
    });
</script>

<hr class=3D"clear"/>
<div id=3D"contentdetail">
 <p id=3D"printbutton">
 =

 <a href=3D"javascript:void(0)" onclick=3D"openprintviewwindow('/General=
/DisplayPrintViewContent?contentItemId=3D4023324');">print</a> =

 </p>
 <p>
 =

            <a href=3D"mailto:yurij.grechishhev@gmail.com?subject=3DDead=
line Scheduling&body=3Dhttp://www.eetimes.com/design/embedded/4023324/De=
adline-Scheduling">email</a>
            =

 </p> =

 <p><a href=3D"/electronics-rss/">rss</a></p> =

 =

 =

<p class=3D"addthis_toolbox addthis_default_style ">
<a href=3D"http://www.addthis.com/bookmark.php?v=3D250&amp;username=3Dee=
timesdevgroup" class=3D"addthis_button_compact">Share</a>
</p>
<script type=3D"text/javascript">    var addthis_config =3D { "data_trac=
k_clickback": true };</script>
<script type=3D"text/javascript" src=3D"http://s7.addthis.com/js/250/add=
this_widget.js#username=3Deetimesdevgroup"></script>



 <p class=3D"EELife_Color"><span class=3D"Join_Mini"><img src=3D"http://=
www.eetimes.com/StaticContent/v1/Images/Icons/join_convo_icon_mini.gif" =
width=3D"15px" height=3D"15px" alt=3D"Join"/></span><a href=3D"#" onclic=
k=3D"scrollToPostComments()">post comment</a></p>
 =

 <p id=3D"NumberComments"></p>
 </div> =

 <hr class=3D"clear" /> =



<script type=3D"text/javascript">
    $(document).ready(function() {
        $.getJSON("/General/IsUserSubscribed",
        {
        contentItemId:4023324    =

        },
        function(data)
        {
        // change the text of the button based on the result
        if(data.status=3D=3D"false")
        {
            $('#follow_comments').val("Follow Comments");
        }
        else
        {
            $('#follow_comments').val("Unfollow Comments");
        }
        });
    });
</script>

<br />
<div id=3D"comments" name=3D"comments">
    =

</div>
<br />

<div id=3D"post-comments">
    <input id=3D"contentItemId" name=3D"contentItemId" type=3D"hidden" v=
alue=3D"4023324" />
    <h4>
        Leave a comment</h4>
    <p>
        <textarea name=3D"description" id=3D"comment" rows=3D"8"></texta=
rea></p>
    <p>
        <input name=3D"submit" type=3D"button" id=3D"submit" onclick=3D"=
postcomment(0)" value=3D"Submit Comment" />
        <input name=3D"follow_comments" type=3D"button" id=3D"follow_com=
ments" onclick=3D"followcomments()"
            value=3D"Follow Comments" /></p>
</div>


<script type=3D"text/javascript">
  $().ready(function() {
      $('#submit').removeAttr('disabled');
      });
      function postcomment(divId) {
          if ($('#comment').val() =3D=3D null || $('#comment').val() =3D=
=3D '' || $.trim($('#comment').val())=3D=3D'') {
              alert('Comment cannot be blank.');
              return;
          }
          if ($('#comment').val().indexOf("<") > -1 || $('#comment').val=
().indexOf(">") > -1) {
              alert('Comment cannot contain < or >.');    =

              return;
          }    =

          if ($('#comment').val().length > 2000) {
              alert('Comment cannot be more than 2000 characters.');    =

              return;
          }         =

     =

          $('#submit').attr('disabled', 'disabled');
          =

          jQuery.post("/General/PostComment", =

          {    =

            description: $('#comment').val(),
            contentItemId: $('#contentItemId').val(),
            parentCommentId: divId    =

            }, =

            function(data) {
                if (data.status =3D=3D "FAIL") {
                    alert("Please sign in to post the comment");
                    window.location =3D "/Registration/Registration"+"?u=
rl=3D%2fdesign%2fembedded%2f4023324%2fDeadline-Scheduling";
                    return;
                }
    $("#NumberComments").html(data.ActiveCommentsCount + ' Comments');
    value1 =3D new Date(parseInt(data.CreateDate.replace("/Date(", "").r=
eplace(")/", ""), 10));
    var ap =3D "AM";
    var hour =3D value1.getUTCHours();
    if (hour > 11) { ap =3D "PM"; }
    if (hour > 12) { hour =3D hour - 12; }
    if (hour =3D=3D 0) { hour =3D 12; }
    dateText =3D value1.getMonth() + 1 + "/" + value1.getDate() + "/" + =
value1.getFullYear() +
    " " + hour + ": " + value1.getUTCMinutes() + ":" + value1.getUTCSeco=
nds() + " " + ap;

    textToAdd =3D data.CommentId + "\">\n<div class=3D\"user\">\n" +
    "<img src=3D\""+data.UserImage+"\" width=3D\"75px\" height=3D\"75px\=
" alt=3D\" \" />" +
    "<br/>\n" + data.ScreenName +
    "\n</div>\n<div class=3D\"NNA_CommentTextSubBase\">\n" +
        "<p>" + $('#comment').val() + "</p>\n" +
            "</div>\n<div class=3D\"clear\"></div>\n";
             var userimage=3Ddata.UserImage;
    if (divId =3D=3D 0) {
        textToAdd =3D "<div class=3D\"comments\"id=3D\"" + textToAdd + "=
<p align=3Dright>\n" +
            "<a href=3D\"#\" onclick=3D\"replyComment(this)\"id=3D\"" + =
data.CommentId + "reply\">" +
            "Reply</a>\n</p>\n</div>\n";
        $('#comments').append(textToAdd);
        var CommentsDiv =3D "#" + data.CommentId;        =

        $(CommentsDiv).corner("30px");
        //updatetopcomments($('#comment').val(), dateText,data.UserImage=
,data.FirstName,data.LastName,data.ScreenName);
        $('#comment').val('');
        $('#user').val('');
        var t =3D '#' + data.CommentId;   =

    }
    else {
        textToAdd =3D "<div class=3D\"childcomments\"id=3D\"" + textToAd=
d + "<p align=3D\"right\" class=3D\"sides10\">\n" +
                "<a href=3D\"#\" id=3D\"" + divId + "reply\" onclick=3D\=
"replyComment(this)\">" +
                "Reply</a>\n</p>\n</div>\n";
        divId =3D "#" + divId;
        $(divId).append(textToAdd);
        //updatetopcomments($('#comment').val(), dateText,data.UserImage=
,data.FirstName,data.LastName,data.ScreenName);
        $("#subdiv").remove();        =

    $(divId).uncorner();
    $(divId).corner('30px');
    }
    $('#submit').removeAttr('disabled');
}, 'json');
}
function replyComment(control) {
    $('#submit').attr('disabled', 'disabled');
    var divId1 =3D control.id.substr(0, control.id.indexOf("reply"));
    divId =3D "#" + divId1;
    var postcommentbox =3D "<div id=3D\"subdiv\"><h4>Leave a comment</h4=
>" +  =

    "<p><textarea name=3D\"description\" id=3D\"comment\" COLS=3D40 rows=
=3D\"10\" ></textarea></p>" +
    "<p><input name=3D\"submit\" type=3D\"button\" id=3D\"submit\" oncli=
ck=3D\"postcomment(" + divId1 + ")\" value=3D\"Submit Comment\" /> <inpu=
t type=3D\"button\" id=3D\"cancel\" value=3D\"Cancel\" onclick=3D\"cance=
lClick()\"/></p>" +
    "</div>";
    // check sub div exist or not before adding
    $(divId).find('#subdiv').remove();
    $(divId).append(postcommentbox);
    $('html, body').animate({
        scrollTop: $('#subdiv').offset().top
    }, 'slow');    =

    $(divId).uncorner();
    $(divId).corner('30px');
    ('adds replay box');
    $('#comment').focus();        =

}

function toggleDiv(divid) {
    var div =3D document.getElementById(divid);
    div.style.display =3D div.style.display =3D=3D 'block' ? 'none' : 'b=
lock';
}

    function scrollWin() {
               =

        $('html, body').animate({
        scrollTop: $('#comments').offset().top
        }, 'slow');
    }
    function scrollToPostComments() {
               =

        $('html, body').animate({
        scrollTop: $('#post-comments').offset().top
        }, 'slow');
    }
    function applycorner(control) {
        idText =3D "#" + control.id;
        alert(control.id);
        $(idText).corner();
    }

    function updatetopcomments(description, dateText,userimage,firstname=
,lastname,screenname) {
        description =3D TruncateDescription(description, 80);        =

//        if (!document.getElementById('top1_comment')) {        =

//            var textToCreate =3D "<div class=3D\"NNA_CommentPic\" id=3D=
\"top1_commentPic\"><img src=3D\""+userimage+"\" width=3D\"75px\" height=
=3D\"70px\" alt=3D\" \" /><br />" +
//screenname+
//"</div><div class=3D\"NNA_CommentText\" id=3D\"top1_commentText\"><p c=
lass=3D\"timestamp\" id=3D\"top1_datetext\">" +

//"</p><p id=3D\"top1_comment\">" +
//"</p></div>";
//            $('#NNA_Comment').html('<h4 class=3D"Red_color">Comment</h=
4>');
//        =

//            $('#NNA_Comment').append(textToCreate);
//        }
//        else if (!document.getElementById('top2_comment')) {
//        $('div').remove('.more');
//            textToCreate =3D "<div class=3D\"NNA_CommentPic\" id=3D\"t=
op2_commentPic\"><img src=3D\""+userimage+"\" width=3D\"75px\" height=3D=
\"70px\" alt=3D\" \" /><br />" +
//screenname +
//"</div><div class=3D\"NNA_CommentText\" id=3D\"top2_commentText\"><p c=
lass=3D\"timestamp\" id=3D\"top2_datetext\"> </p>" +
//"<p id=3D\"top2_comment\">" +
//"</p></div>"+
//"<div class=3D\"more\"><b><a href=3D# onclick=3D\"scrollWin()\">More C=
omments &gt;</a></b></div>" +
//"<span class=3D\"clear\"></span>";
//            $('#NNA_Comment').append(textToCreate);
//        }              =

        var top1comment =3D $('#top1_comment').text();
        var top1datetext =3D $('#top1_datetext').text();
        var top1Image =3D $('#top1_commentPic').html();        =

        $('#top2_comment').text(top1comment);
        $('#top2_datetext').text(top1datetext);
        $('#top2_commentPic').html(top1Image);
        $('#top1_comment').text(description);
        $('#top1_datetext').text(dateText);
        $('#top1_commentPic').html("<img src=3D\""+userimage+"\" width=3D=
\"75px\" height=3D\"75px\" alt=3D\" \" /><br />" +screenname)        =

    }
    =

    function followcomments() {
   var btntext =3D $('#follow_comments').val();
   var isFollow =3D false;
   =

   if(btntext =3D=3D "Follow Comments")
   {
   isFollow =3D true;
   }
    $.getJSON("/General/FollowComments",
{   =

    contentItemId: $('#contentItemId').val(),
    isFollow: isFollow      =

},
function(data) {
    if (data.status =3D=3D "FAIL") {
        alert("Please sign in to follow the comments");
        window.location =3D "/Registration/Registration"+"?url=3D%2fdesi=
gn%2fembedded%2f4023324%2fDeadline-Scheduling";
        return;
    }
    if(isFollow)
    {
    $('#follow_comments').val("Unfollow Comments")  ;
    }
    else
    {
    $('#follow_comments').val("Follow Comments")  ;
    }
    });
    =

    }
    =

    function cancelClick()
    {
        $(divId).find('#subdiv').remove();
        $('#submit').removeAttr('disabled');
    }
    =

    function TruncateDescription(description, length)
    {
        if(description !=3D null && description !=3D '')
        {        =

            if(description.length > length)
            {
                description =3D description.substring(0, length + 1);   =
             =

                var spaceIndex =3D description.lastIndexOf(" ");
                if(spaceIndex > -1)
                {
                    description =3D description.substring(0, spaceIndex)=
;
                }
            }            =

        }
        return description;
    }
    =

</script>


    <p class=3D"clear IEclear"></p>
</div>
<script type=3D"text/javascript">
    $(document).ready(function() {
    //$('#contentpages>#nav>a').bind('click', function() { scrolltodiv('=
#NAA_Header'); });
////    $('#contentpages>#nav>a').bind('click', function() { $('#IMUAd')=
.load('/Ad/IMU/'); }); =

              =

    });    =

</script>               =

        </div>
        <!-- column 3 -->    =

        <div id=3D"threeColumn_right">
        =


<script type=3D"text/javascript">
    function GetRelatedContentItemsByJSON() {
        var URL =3D "/Search/GetRelatedContentItems";
        $.getJSON(URL, { contentItemId: $("#ContentItem").val() }, funct=
ion(data) {
            var result =3D "";
            $.each(data, function(index, item) {
                if (typeof (item) !=3D 'undefined' && item !=3D null) {
                    result +=3D '<hr/><div class=3D"HomePage_Whatsnew_Ar=
t"><b>' + item.ContentType + '</b>:&nbsp;';
                    var itemURL =3D item.Action;
                    if (!itemURL.indexOf("http://") =3D=3D 0) itemURL =3D=
 "/" + itemURL;
                    result +=3D '<a href=3D"' + itemURL + '">' + item.Ti=
tle + '</a></div>';
                }
            });
            $("#RelatedContents").html(result);
            $('.HomePage_Whatsnew').corner('30px');
        });
    }    =

</script>

<div class=3D"HomePage_Whatsnew">
    <input id=3D"ContentItem" name=3D"ContentItem" type=3D"hidden" value=
=3D"4023324" />
    =

    <div class=3D"HomePage_Navigate_Title">
        Navigate to related information
    </div>
    <div id=3D'RelatedContents' class=3D"HomePage_Whatsnew_Body">
    </div>
    <script type=3D"text/javascript">
        $("#RelatedContents").available(function() {
            var contentItem =3D $("#ContentItem").val();
            if (contentItem !=3D null && typeof (contentItem) !=3D 'unde=
fined' && contentItem !=3D '') {
                GetRelatedContentItemsByJSON();
            }            =

        });
        =

    </script>
    <p class=3D"clear IEclear"></p>    =

</div>

 <span class=3D"AdTech:IMU1">
 <script language=3D"javascript">
  <!--
      document.write('<scr' + 'ipt language=3D"javascript1.1" src=3D"htt=
p://adserver.adtechus.com/addyn/3.0/5242.1/1374611/0/0/ADTECH;alias=3DEE=
Times_Design_Embeddedcom_IMU1_300x250_or_336x280;loc=3D100;target=3D_bla=
nk;key=3D4023324+/design/embedded/4023324/Deadline-Scheduling+Software/H=
ardware_Development+System_Design_Tools;grp=3D'+PageGroupId+';misc=3D' +=
 new Date().getTime() + '"></scri' + 'pt>');
  //-->
  </script>
  <noscript>
  <a href=3D"http://adserver.adtechus.com/adlink/3.0/5242.1/1374611/0/0/=
ADTECH;alias=3DEETimes_Design_Embeddedcom_IMU1_300x250_or_336x280;loc=3D=
300;key=3D4023324+/design/embedded/4023324/Deadline-Scheduling+Software/=
Hardware_Development+System_Design_Tools;grp=3D"  target=3D"_blank">
  <img src=3D"http://adserver.adtechus.com/adserv/3.0/5242.1/1374611/0/0=
/ADTECH;alias=3DEETimes_Design_Embeddedcom_IMU1_300x250_or_336x280;loc=3D=
300;key=3D4023324+/design/embedded/4023324/Deadline-Scheduling+Software/=
Hardware_Development+System_Design_Tools;grp=3D" border=3D"0" width=3D"0=
" height=3D"0"></a>
  </noscript>
  <!-- End of JavaScript Tag -->
   =

 </span>

    =




<script type=3D"text/javascript">
    $("#MostPopStories").corner("30px");
</script>

<div id=3D"MostPopStories">
    =

    <h2>Most Popular</h2> =

      =

        <table cellpadding=3D"0" cellspacing=3D"0" border=3D"0" width=3D=
"100%" id=3D"MostPopTable">
                  =

           <tr><td valign=3D"top"><b>1 </b></td>                    =

           <td>           =

           <a href=3D"/design/automotive-design/4208790/Processor-fuses-=
multiple-imaging-streams-to-sense-vehicle-surroundings">Processor fuses =
multiple imaging streams to sense vehicle surroundings</a>
           </td></tr>
                  =

           <tr><td valign=3D"top"><b>2 </b></td>                    =

           <td>           =

           <a href=3D"/design/automotive-design/4208758/Developing-a-com=
prehensive-approach-to-infotainment-connectivity">Developing a comprehen=
sive approach to infotainment connectivity</a>
           </td></tr>
                  =

           <tr><td valign=3D"top"><b>3 </b></td>                    =

           <td>           =

           <a href=3D"/design/automotive-design/4207375/Diesels-challeng=
e-hybrids-for-efficiency--low-emissions">Diesels challenge hybrids for e=
fficiency, low emissions</a>
           </td></tr>
                  =

           <tr><td valign=3D"top"><b>4 </b></td>                    =

           <td>           =

           <a href=3D"/design/automotive-design/4207363/Is-there-a-futur=
e-for-hybrid-vehicles--Part-2">Is there a future for hybrid vehicles? Pa=
rt 2</a>
           </td></tr>
                  =

           <tr><td valign=3D"top"><b>5 </b></td>                    =

           <td>           =

           <a href=3D"/design/automotive-design/4207324/LED-improvements=
-extend-automotive-applications">LED improvements extend automotive appl=
ications</a>
           </td></tr>
                  =

           <tr><td valign=3D"top"><b>6 </b></td>                    =

           <td>           =

           <a href=3D"/electrical-engineers/education-training/tech-pape=
rs/4201089/USB-Explained-An-Introduction-to-USB-and-Its-Future">USB Expl=
ained: An Introduction to USB and Its Future</a>
           </td></tr>
                  =

           <tr><td valign=3D"top"><b>7 </b></td>                    =

           <td>           =

           <a href=3D"/electrical-engineers/education-training/tech-pape=
rs/4129572/Digital-Signal-Processing-A-Practical-Guide-Part-1-">Digital =
Signal Processing: A Practical Guide (Part 1)</a>
           </td></tr>
                  =

           <tr><td valign=3D"top"><b>8 </b></td>                    =

           <td>           =

           <a href=3D"/electrical-engineers/education-training/tech-pape=
rs/4204475/Current-Sensing-Circuit-Concepts-and-Fundamentals">Current Se=
nsing Circuit Concepts and Fundamentals</a>
           </td></tr>
                  =

           <tr><td valign=3D"top"><b>9 </b></td>                    =

           <td>           =

           <a href=3D"/electrical-engineers/education-training/courses/4=
199747/Fundamentals-of-Wireless">Fundamentals of Wireless</a>
           </td></tr>
                  =

           <tr><td valign=3D"top"><b>10 </b></td>                    =

           <td>           =

           <a href=3D"/electrical-engineers/education-training/tech-pape=
rs/4129566/Digital-Signal-Processing-A-Practical-Guide-Part-2-">Digital =
Signal Processing: A Practical Guide (Part 2)</a>
           </td></tr>
            =

        </table>
    <p class=3D"clear IEclear"></p>
</div>

<script type=3D"text/javascript">
    $('#PartsSearch').corner('30px');
    if (jQuery.support.htmlSerialize.toString() =3D=3D "true") {
        //non-IE browsers        =

        $('#Parts_Search').corner('left 30px');
    }
    else { /*IE browsers*/ }

    function submitForm() {
        $("#PartsSearchForm").submit();
    }
</script>
<div id=3D"PartsSearch">
    <h4>Product Parts Search</h4>
    <h5>Enter part number or keyword
</h5>
        <form action=3D"/electronics-products/part-search" id=3D"PartsSe=
archForm" method=3D"post">
    <div class=3D"SearchTextBoxContain_PartsWebpart">
                    <input id=3D"SearchTextBox_PartsWebpart" name=3D"Pro=
ductPartsSearch_TextBox" type=3D"text" value=3D"" />
                    </div>
    <img onclick=3D"submitForm();" src=3D"http://www.eetimes.com/StaticC=
ontent/v1/Images/Buttons/partssearch_off.png" onmouseover=3D"javascript:=
this.src=3D'http://www.eetimes.com/StaticContent/v1/Images/Buttons/parts=
search_on.png';" onmouseout=3D"javascript:this.src=3D'http://www.eetimes=
.com/StaticContent/v1/Images/Buttons/partssearch_off.png';"
                                value=3D"PartsSearch" name=3D"PartsSearc=
h" id=3D"parts_searchbutton" alt=3D"PartsSearch" />
     </form>
    <p class=3D"clear IEclear"></p>
</div>


<div id=3D"GetInvolvedPurchaseNow" class=3D"NAA_Webpart">               =
  =

      =

                 =

        <!-- begin content-->
             =

            =

   =

        <!-- end content-->
        =

           =

    <p class=3D"clear IEclear"></p>   =

</div>
<script type=3D"text/javascript">
    $('#GetInvolvedPurchaseNow').corner('30px');    =

</script>
 <span class=3D"AdTech:IMU2">
 <script language=3D"javascript">
  <!--
      document.write('<scr' + 'ipt language=3D"javascript1.1" src=3D"htt=
p://adserver.adtechus.com/addyn/3.0/5242.1/1374250/0/0/ADTECH;alias=3DEE=
Times_Design_Embeddedcom_IMU2_300x250_or_336x280;loc=3D100;target=3D_bla=
nk;key=3D4023324+/design/embedded/4023324/Deadline-Scheduling+Software/H=
ardware_Development+System_Design_Tools;grp=3D'+PageGroupId+';misc=3D' +=
 new Date().getTime() + '"></scri' + 'pt>');
  //-->
  </script>
  <noscript>
  <a href=3D"http://adserver.adtechus.com/adlink/3.0/5242.1/1374250/0/0/=
ADTECH;alias=3DEETimes_Design_Embeddedcom_IMU2_300x250_or_336x280;loc=3D=
300;key=3D4023324+/design/embedded/4023324/Deadline-Scheduling+Software/=
Hardware_Development+System_Design_Tools;grp=3D"  target=3D"_blank">
  <img src=3D"http://adserver.adtechus.com/adserv/3.0/5242.1/1374250/0/0=
/ADTECH;alias=3DEETimes_Design_Embeddedcom_IMU2_300x250_or_336x280;loc=3D=
300;key=3D4023324+/design/embedded/4023324/Deadline-Scheduling+Software/=
Hardware_Development+System_Design_Tools;grp=3D" border=3D"0" width=3D"0=
" height=3D"0"></a>
  </noscript>
  <!-- End of JavaScript Tag -->
   =

 </span>

    =


<script type=3D"text/javascript">    =

    $(document).ready(function() {
        if (hasReqestedVersion) {
            $("#HomePage_Videos_Title").html('<center><object id=3D"flas=
hObj" width=3D"300" height=3D"340" classid=3D"clsid:D27CDB6E-AE6D-11cf-9=
6B8-444553540000" codebase=3D"http://download.macromedia.com/pub/shockwa=
ve/cabs/flash/swflash.cab#version=3D9,0,47,0"><param name=3D"movie" valu=
e=3D"http://c.brightcove.com/services/viewer/federated_f9?isVid=3D1&isUI=
=3D1" /><param name=3D"bgcolor" value=3D"#FFFFFF" /><param name=3D"flash=
Vars" value=3D"@videoList=3D' + videoList + '&playerID=3D631791731001&pl=
ayerKey=3DAQ%2E%2E,AAAAAF20n-g%2E,CF5jswuZOsWhTpmkTDpVrwWDUbpFzkf-&domai=
n=3Dembed&dynamicStreaming=3Dtrue" /><param name=3D"base" value=3D"http:=
//admin.brightcove.com" /><param name=3D"seamlesstabbing" value=3D"false=
" /><param name=3D"allowFullScreen" value=3D"true" /><param name=3D"swLi=
veConnect" value=3D"true" /><param name=3D"allowScriptAccess" value=3D"a=
lways" /><param name=3D"wmode" value=3D"transparent" /><embed wmode=3D"t=
ransparent" src=3D"http://c.brightcove.com/services/viewer/federated_f9?=
isVid=3D1&isUI=3D1" bgcolor=3D"#FFFFFF" flashVars=3D"@videoList=3D' + vi=
deoList + '&playerID=3D631791731001&playerKey=3DAQ%2E%2E,AAAAAF20n-g%2E,=
CF5jswuZOsWhTpmkTDpVrwWDUbpFzkf-&domain=3Dembed&dynamicStreaming=3Dtrue"=
 base=3D"http://admin.brightcove.com" name=3D"flashObj" width=3D"300" he=
ight=3D"340" seamlesstabbing=3D"false" type=3D"application/x-shockwave-f=
lash" allowFullScreen=3D"true" allowScriptAccess=3D"always" swLiveConnec=
t=3D"true" pluginspage=3D"http://www.macromedia.com/shockwave/download/i=
ndex.cgi?P1_Prod_Version=3DShockwaveFlash"></embed></object></center>');=

        } else {
            var alternateContent =3D '<a href=3D"http://www.adobe.com/go=
/getflash/" target=3D"_blank" title=3D"Upgrade Flash"><div id=3D"upgrade=
flash"></div></a>';
            $("#HomePage_Videos_Title").css("padding", "10px");
            $("#HomePage_Videos_Title").html(alternateContent);
        }
    });
        =

        </script>
<div id=3D"HomePage_Videos">
    <div id=3D"HomePage_Videos_Title" >            =

        <!--feed in by AC_OETages.js-->        =

    </div>   =

    <span class=3D"clear"></span>
</div>
                  =

            </div>
    </div>        =



        </div>
        <div id=3D"footer">
            <div id=3D"footer_content">
                <hr class=3D"footer_line" />
                =

                    =

                <div class=3D"footer_listings">
                <h3 class=3D"EELife_Color">More EE Times</h3>
                <div class=3D"footer_sublistings">
                    <ul>
                        <li><a href=3D"http://www.eetimes.com/electronic=
s-subscriptions">Subscriptions</a></li>
                        <li><a href=3D"http://www.eetimes.com/electronic=
s-newsletters">Newsletters</a></li>
                        <li><a href=3D"http://mediakit.eetimesgroup.com/=
ee-times-group-editorial-calendars/">Editorial Calendar</a></li>
                        <li><a href=3D"http://www.wrightsreprints.com/re=
prints/index.cfm?magid=3D2210">Reprints</a></li>
                        <li>
                    <a href=3D"http://www.eetimes.com/electronics-rss">R=
SS Feeds</a>
                        </li>
                        <li><a href=3D"http://mediakit.eetimesgroup.com"=
>Media Kit</a></li>                        =

                    </ul>
                </div>
                <div class=3D"footer_sublistings">
                    <ul>
                       =

                       <li><a href=3D"http://www.eetimes.com/sitemap">Si=
temap</a></li> =

                          =


                       <li><a href=3D"http://eetimesgroup.com/">About Us=
</a></li>
                        <li><a href=3D"http://www.ubmtechnology.com/unit=
ed-business-media-llc-privacy-statement">
                            Privacy Policy</a></li>
                        <li><a href=3D"http://www.eetimescareers.com/">E=
E Times Career Center</a></li>
                        <li><a href=3D"http://eetimesgroup.com/contact-u=
s/">Contact Us</a></li>
                        <li>Email: =

                        <a href=3D"mailto:feedback@eetimes.com">feedback=
@eetimes.com</a><br />
                        <p class=3D"support"><a href=3D"mailto:support@e=
etimes.com">support@eetimes.com</a></p></li>                        =

                    </ul>
                </div>
                </div>
                <div class=3D"footer_listings listing_border">
                <h3 class=3D"EELife_Color">EE Times Network</h3>
                <div class=3D"footer_sublistings">
                    <ul>
                      <li><a href=3D"http://www.eetasia.com/">EE Times A=
sia</a></li> =

                      <li><a href=3D"http://www.eet-china.com/">EE Times=
-China</a></li> =

                      <li><a href=3D"http://www.eetindia.co.in/">EE Time=
s-India</a></li> =

                      <li><a href=3D"http://www.eetimes.eu/">EE Times Eu=
rope</a></li> =

                      <li><a href=3D"http://www.eetimes.jp/">EE Times Ja=
pan</a></li> =

                      <li><a href=3D"http://www.eetkorea.com/">EE Times =
Korea</a></li> =

                      <li><a href=3D"http://www.eettaiwan.com/">EE Times=
 Taiwan</a></li> =

                    </ul>
                </div>
                <div class=3D"footer_sublistings">
                    <ul>
                      <li><a href=3D"http://www.esmchina.com/">Electroni=
c Supply &amp; Manufacturing China</a></li>
                      <li><a href=3D"http://www.microwave-eetimes.com/">=
Microwave Engineering Europe</a></li>
                      <li><a href=3D"http://www.mcadonline.com/">MCAD On=
line</a></li>
                      <li><a href=3D"http://www.techonlineindia.com/">Te=
chOnline India</a></li>
                      <li><a href=3D"http://www.deepchip.com/">DeepChip.=
com</a></li>
                      <li><a href=3D"http://www.design-reuse.com/">Desig=
n &amp; Reuse</a></li>
                    </ul>
                </div>
                </div>
                <div class=3D"footer_listing">
                    <img src=3D"http://www.eetimes.com/StaticContent/v1/=
Images/Footer/ubm_footer_logo.png"
                        alt=3D"UBM LOGO" width=3D"33px" height=3D"41px" =
/><br />
                    All materials on this site<br />
                    copyright &#169;2010 EE Times Group,<br />
                    A UBM company<br />
                    All rights reserved
                </div>               =

                <hr class=3D"footer_line" />
            </div>
        </div>
        =

 <span class=3D"AdTech:Pagepeel">
 <script language=3D"javascript">
  <!--
      document.write('<scr' + 'ipt language=3D"javascript1.1" src=3D"htt=
p://adserver.adtechus.com/addyn/3.0/5242.1/1374564/0/16/ADTECH;alias=3DE=
ETimes_Design_Embeddedcom_Pagepeel_1x1;loc=3D100;target=3D_blank;key=3D4=
023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_De=
velopment+System_Design_Tools;grp=3D'+PageGroupId+';misc=3D' + new Date(=
).getTime() + '"></scri' + 'pt>');
  //-->
  </script>
  <noscript>
  <a href=3D"http://adserver.adtechus.com/adlink/3.0/5242.1/1374564/0/16=
/ADTECH;alias=3DEETimes_Design_Embeddedcom_Pagepeel_1x1;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D"  target=3D"_blank">
  <img src=3D"http://adserver.adtechus.com/adserv/3.0/5242.1/1374564/0/1=
6/ADTECH;alias=3DEETimes_Design_Embeddedcom_Pagepeel_1x1;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D" border=3D"0" width=3D"1" height=3D=
"1"></a>
  </noscript>
  <!-- End of JavaScript Tag -->
   =

 </span>

    =


 <span class=3D"AdTech:Dropdown">
 <script language=3D"javascript">
  <!--
      document.write('<scr' + 'ipt language=3D"javascript1.1" src=3D"htt=
p://adserver.adtechus.com/addyn/3.0/5242.1/1374210/0/16/ADTECH;alias=3DE=
ETimes_Design_Embeddedcom_Dropdown_1x1;loc=3D100;target=3D_blank;key=3D4=
023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_De=
velopment+System_Design_Tools;grp=3D'+PageGroupId+';misc=3D' + new Date(=
).getTime() + '"></scri' + 'pt>');
  //-->
  </script>
  <noscript>
  <a href=3D"http://adserver.adtechus.com/adlink/3.0/5242.1/1374210/0/16=
/ADTECH;alias=3DEETimes_Design_Embeddedcom_Dropdown_1x1;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D"  target=3D"_blank">
  <img src=3D"http://adserver.adtechus.com/adserv/3.0/5242.1/1374210/0/1=
6/ADTECH;alias=3DEETimes_Design_Embeddedcom_Dropdown_1x1;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D" border=3D"0" width=3D"1" height=3D=
"1"></a>
  </noscript>
  <!-- End of JavaScript Tag -->
   =

 </span>

    =


 <span class=3D"AdTech:Popunder">
 <script language=3D"javascript">
  <!--
      document.write('<scr' + 'ipt language=3D"javascript1.1" src=3D"htt=
p://adserver.adtechus.com/addyn/3.0/5242.1/1375026/0/16/ADTECH;alias=3DE=
ETimes_Design_Embeddedcom_Popunder_1x1;loc=3D100;target=3D_blank;key=3D4=
023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_De=
velopment+System_Design_Tools;grp=3D'+PageGroupId+';misc=3D' + new Date(=
).getTime() + '"></scri' + 'pt>');
  //-->
  </script>
  <noscript>
  <a href=3D"http://adserver.adtechus.com/adlink/3.0/5242.1/1375026/0/16=
/ADTECH;alias=3DEETimes_Design_Embeddedcom_Popunder_1x1;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D"  target=3D"_blank">
  <img src=3D"http://adserver.adtechus.com/adserv/3.0/5242.1/1375026/0/1=
6/ADTECH;alias=3DEETimes_Design_Embeddedcom_Popunder_1x1;loc=3D300;key=3D=
4023324+/design/embedded/4023324/Deadline-Scheduling+Software/Hardware_D=
evelopment+System_Design_Tools;grp=3D" border=3D"0" width=3D"1" height=3D=
"1"></a>
  </noscript>
  <!-- End of JavaScript Tag -->
   =

 </span>

    =

 =

    </div>   =

    <!--Start Kampyle Feedback Form Button-->
    <div>
        <a href=3D'http://www.kampyle.com/?r=3D3' target=3D'kampyleWindo=
w' id=3D'kampylink' class=3D'k_float k_top k_left'
            onclick=3D"javascript:k_button.open_ff('site_code=3D2930225&=
amp;lang=3Den&amp;form_id=3D47407');return false;">
            <img src=3D"http://cf.kampyle.com/buttons/en/orange/en-orang=
e-corner-up-left.gif" alt=3D"FeedbackForm"
                border=3D"0" /></a></div>

    <script src=3D"http://cf.kampyle.com/k_button.js" type=3D"text/javas=
cript"></script>

    <!--End Kampyle Feedback Form Button-->    =

        =

    =

<script type=3D"text/javascript">

    var _gaq =3D _gaq || [];
    _gaq.push(['_setAccount', 'UA-15759428-3']);
    _gaq.push(['_setDomainName', '.eetimes.com']);
    _gaq.push(['_trackPageview']);

    (function() {
        var ga =3D document.createElement('script'); ga.type =3D 'text/j=
avascript'; ga.async =3D true;
        ga.src =3D ('https:' =3D=3D document.location.protocol ? 'https:=
//ssl' : 'http://www') + '.google-analytics.com/ga.js';
        var s =3D document.getElementsByTagName('script')[0]; s.parentNo=
de.insertBefore(ga, s);
    })();


</script>
 =

      =


</body>
</html>

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://www.eetimes.com/StaticContent/v1/Images/Sprites/background-sprite.png
Content-Transfer-Encoding: Base64

iVBORw0KGgoAAAANSUhEUgAAAAEAAAgRCAIAAACgTh8iAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABK1JREFUeNq8WF1uGzkM1jd2c4S8F4s+
9ioF+rbX6GX2LHuAXmEfFm1uECRAgCRjOzFXGokSJVE/ToI1IIxG/PtIURzK5o8/
/16MMdsATJxv7wb5e0E3kLyFLNDRO8fXlJcyCs8l+lt0VW/gRYGNBphyvaixoJRD
B09Og7IfJc7EiyauVixqX4oYjGw2bDu5Fp6hrx1/Zn30vJN2LL0Rhz3cqGxpuDq2
UuwMfmBwBjFFK+mztJb+d61H/+blptcUPb21no6ezda7yjOQvUT/NN8HyP3fOi7B
/l6bXfk2Rvy8vhb1FcX3r3/+MnpJe4tcz96F8yhrn6R8v1u8Pb0qnsEaJvgxoQuT
9t6sb5Z+SUxE7g3tvBGnylfS3oEv0z+KgYKhR9Ni8O3r52G/aUb5bEznW9jpVeX3
FmP5bL3Zz7ZlnQwp/ZDqX7MHVdbY5qAvRZemnynNzyhf5kVHHoO+pdnTirii1ysa
NPp86D1ox88RXxlvTPkywlHtw170pJW+XjynYqnHbffFfKrvQqaseRRyGdn+UowJ
1HuMIVcLSMSP+SidG5YnIeeelONm3ynuCduv4+pxkrdn9VDQl2pVhnnP+0WU7gJx
H4T+TS8Yu5ynPXe2UGLf1pDnT4i1xwHlPpny38cv2Iq09A5Zh8S7zMMSb8TMMbH4
7Cyraxu92MOEc0n6wPhS3TNlrENcKLuLSb+U817EwZCIB4I85efS6wx0pgk+IMU8
5STl38yq1vEZSL5GO0bqJJEvCaPMWVPeOyDrC/DXTukzG/+ruEGdvlSXTftCKi/6
doU9ynK5IYeWPvTfK7nym5fyw8C0eQFFf56bqe7IHIRKV3unGR742tDrdzmnSP5H
UcmINbU3zPLJP5clx7Igy+3KDud52RtCYshl7FJeT6JssL3IXnQRupIvqV4utU9B
j8SOSs+S+78sig1EPBFfFceoF/98/9S5A15yn7zkbjm481UyM7rrPDOy7rXsNujo
0dUzj+p/Qw1b9x5pMMamnc2m7oEM5nE2ZRq2MMCQvquTvNO6W/dKJY6FHvTsdrGM
cU/qxul0+vhx5PkRx1Oa+3f7PNpnMQ6HA452HA5+nt4PWLfn6uerna/r9lwP7rni
eQ3PZzeesdphn5xbeHJzMrGnioN7We6ZSNLTnFiW3LfEP11vQpI39sWpd/Pfc8/n
+lWK6xT7IRL8jLHsI1hO6qj8EJhJ9POwPlHs/0vfKVt3fvJ9QvMl3QtI4EYe1xAH
cLy4JpIpYjYewY/dzc1N/F9yt9st2k9bl/9/uvHw8LDc3t4uV1dXy36/32RYJ8+l
LNNYT1jH/f19pIeBx8dHPD09bXnI+evy/uXlBa+vr9sgGzQed3d3i6WXeqI9qZv1
8vlyOs/nc6bvIwfj/ajhMP/76/f8npPJ8zy8cz9DZ3Eu3NrZiBwncWbLsxnyj/zd
g1gHJT4vW5xtUQMoqyP+PaMFO5oMZWeNtmHkORW+kjgvqf5QuBcEXdu7OJ/RLuU1
Icwp6NBoHJvII/ELXIaSnfPmb9BBaU8geOM+WpmzxCh8TjFFwK7UVmUvVD+y2ubr
VKxZRuLh+28hG3WJ2kc0XbPs+E+AAQDNhsuasptG5gAAAABJRU5ErkJggg==

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://www.eetimes.com/StaticContent/v1/Images/Header/pixel-border-vertical.png
Content-Transfer-Encoding: Base64

iVBORw0KGgoAAAANSUhEUgAAAAEAAAACAQMAAACjTyRkAAAABGdBTUEAAK/INwWK
6QAAAAZQTFRFzMzM////040VdgAAAAJ0Uk5T/wDltzBKAAAADElEQVQI12NgYGgA
AACEAIEYVvHNAAAAAElFTkSuQmCC

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://www.eetimes.com/StaticContent/v1/Images/Header/sublist_red.png
Content-Transfer-Encoding: Base64

iVBORw0KGgoAAAANSUhEUgAAAAMAAAADBAMAAACkBqiMAAAAG1BMVEXLMwLLNADO
MgDNMQDQTSHbgGHdgGHPTyDLMwEj/VW+AAAAEUlEQVQI12NwTGBoYmAoDgAACHEB
5+aI2BcAAAAASUVORK5CYII=

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline
Content-Type: image/gif
Content-Location: http://www.eetimes.com/StaticContent/v1/Images/Header/downarrow_red.gif
Content-Transfer-Encoding: Base64

R0lGODlhBwAHALMJAN+AYNJNIPXZz/nl389AEOaZgPzy7/LMv8wzAP///wAAAAAA
AAAAAAAAAAAAAAAAACH5BAEAAAkALAAAAAAHAAcAAAQYcJw5x0AYEZNALkliEBoX
FggYioG5CmsEADs=

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline
Content-Type: image/png
Content-Location: http://www.eetimes.com/StaticContent/v1/Images/Sprites/icons-flat-sprite.png
Content-Transfer-Encoding: Base64

iVBORw0KGgoAAAANSUhEUgAAAMgAAABYCAIAAAA/XC+KAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA0pJREFUeNrs3F9LU3Ecx/GdszOQbSbW
QFcZRMbmRVDQjebcDPEqg26ku+gh9FS66Dbwag+gW11/KG8kwrK5VgQNOSc2EXWG
7Y/rdzg2N+/0fH/g5P262MnbX288Z8N9jLVHoUC38rNcsZC3bbtarbaa+wHghCbT
M0ZnWCqpt6+XdrcrHA38VDU9NXkU1ur8wseVZfWPwdjw2K278ZHrFy4NBwyDk8KJ
XI3U1Kt1rKqJ6QeJ2+P0BJ9M7w7oVTX7+EnizgRVQSCsiy9+qecq73fVlcsJTgQy
YRWKP9TTunqucu+AgFRYxUJeXdTTOndASIZl27a6qPeAnAUkw6pWq+rifrIACIZ1
+Nk690HIhsURgLBAWCAsgLBAWCAsQDgsI9jnXlstzgKSYUWjUXXZ2XQ4C0iGFY/H
1cUu/eQsIBnWjdFRdcl/XuFuCMmwhp7P9g/EtipO4dMyxwHJd4VTmfvq9UPu1U7F
5kQg4vBbOqvzC+FIJJ1K7dXq240w54JT876l0/W9wpGXv9VrvWXskxcEw+rMC/D7
jHVM6enQ34b7e4vTwemfsVp8ygDCQg+H9ebde9ZmMJmeeTg3JxOWSoq1GQT+L8b0
DwwKhJXNZlmbQedHBgJhtatibQYiYVneHbC9NsMuCESYjuOwNgP5sFibgZawWJuB
lrBYm4GWsFibgZawWJuBlrA4AhAWCAuEBRAWCAuEBQiHxdoMtITF2gy0hMXaDLSE
xdoMtIQ1ncmwNgMt7wpZm4E492/e06l79kYpHIkkr8X2an+YA4F/Xd8r3N3eCrA2
A8Gvf3Xy8gKEw1Iqm1tm0AgZvE8kLNGwAMlnLEAsrEq5awKk0Wysf/vO2kyv87kV
IxzWl/w6azPnoyqfWzECYZUrZXVpHhzkFpdYm+HDAimWd2lXxdoMxMJa+1pgbQay
zEa9wdoM5MNibQZawmJtBlrCYm0GWsJibQZawmJtBlrC4ghAWCAsEBZAWCAsEBYg
HBZrM9ASFmsz0BIWazPQEhZrM9AS1lgyydoMNDy8GwZrMxBnqbSSyZv2xjhrMxBk
OM7h+0EzGOoLuX88w9pMrzsLX/86Csv9wbRCQdMK8l9zHpyhsNyfDVP15WJthrB8
+CfAAEOpl6DpLRJwAAAAAElFTkSuQmCC

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=Site.css
Content-Type: text/css; charset=utf-8; name=Site.css
Content-Location: http://www.eetimes.com/StaticContent/v1/CSS/Site.css
Content-Transfer-Encoding: 8bit

﻿/* Master StyleSheet
----------------------------------------------------------
The base color for this template is #5c87b2. If you'd like
to use a different color start by replacing all instances of
#5c87b2 with your new color.
----------------------------------------------------------*/
body
{
    background-color: #f7f9f9;    
    font-size: 12px;
    font-family: Arial, Verdana, Sans-Serif;
    margin: 0;
    padding: 0;
    color: #000000;    
    width: 990px;
    margin-left: auto;
    margin-right: auto;     
    word-wrap: break-word;
}
a, a:link, a:visited {
	cursor:hand;
	text-decoration: none;
}
a:link
{
    cursor:hand;
    color: #013e55;
    text-decoration: none;    
}
a:visited
{
    color: #013e55;
}
a:hover, a:active
{
    color: #4f85ae;
    text-decoration: underline;
}
#pageid a, a#clickhere { color:#1251A1;}
#pageid a:hover {text-decoration:underline;}
img
{  border-style: none;
}
p, ul
{
    margin:0px;
    /*margin-bottom: 20px;*/
    line-height: 1.4em;
}
/* HEADINGS   
----------------------------------------------------------*/
h1, h2, h3, h4, h5, h6
{     
    padding:0;
    margin:0 0 5px 0;
}
h1
{
    font-size: 18px;
    padding-bottom: 0;
    margin-bottom: 0;
}
h2
{
    font-size: 15px;    
}
h3
{
    font-size: 13px;  
    margin:0px;  
}
h4
{
    font-size: 15px;    
}
.newsmorelistings h4 {
    margin: 3px 0 0 0;
}
h5
{
    font-size: 12px;
    margin: 0 0 5px 0;
}
h6
{
    font-size: 10px;
    margin: 0 0 5px 0;
}
.contentMargin h3 { margin-bottom:5px;}
.inline16{font-size:16px;}
.inline14{font-size:14px;}
.inline13, .onecolumnTitle {font-size:13px;}
.inline12, .twocolumnTitle{font-size:12px}
.inline11{font-size:11px;}
.inline10{font-size:10px;}
.aright {text-align:right;}
.justleft {float:left;}
.top {vertical-align:top; vertical-align:text-top;}

.marginbottom { margin: 0 0 13px 0; }
.colorBlack{color:Black;}
.spacer5{height:5px;}
.sides5{padding:0 5px 0 5px;}
.sides10{padding:0 10px 0 10px;}
.heights10{padding:10px 0 10px 0;}
.padding5{padding-bottom:5px;}
.padding15{padding-bottom:15px;}
.padding125{padding-left:125px;}
.margin70{margin-left:70px;}
.IEclear { height /*\**/: 15px\9 } /*IE8 Hack*/
.IEclearMAX { height /*\**/: 19px\9 } /*IE8 Hack*/
.IEclear, .IEclearMAX { *height:0px; } /* IE7 Fix on IE8 Hack */
/* this rule styles <h2> tags that are the 
first child of the left and right table columns */
.rightColumn > h1, .rightColumn > h2, .leftColumn > h1, .leftColumn > h2
{
    margin-top: 0;
    margin-top: 0;
}

/* PRIMARY LAYOUT ELEMENTS   
----------------------------------------------------------*/
/* you can specify a greater or lesser percentage for the 
page width. Or, you can specify an exact pixel width. */
.page
{
    width: 990px;
    margin-left: auto;
    margin-right: auto;
    background-color: #e8e8e8;           
    height:100%; 
    float:left;
}
#main, #footer
{   
    background-color: #e8e8e8;            
    padding: 0 14px 0 14px;           
    position:relative; float:left;       
    width:962px;    
}
.disclaimer 
{
    font-size:10px;
    text-align:center;
}
#header h1
{
    font-weight: bold;
    padding: 0;
    margin: 0;
    color: #fff;
    border: none;
    line-height: 2em;    
    font-size: 32px !important;
}
/* TAB MENU   
----------------------------------------------------------*/
#jsddm
{	margin: 0;
	padding: 0}
	
	#jsddm li
	{	float: left;
		list-style: none;
		font: 12px Tahoma, Arial}

	#jsddm li a
	{	display: block;
		background: #20548E;
		padding: 5px 12px;
		text-decoration: none;
		border-right: 1px solid white;
		width: 70px;
		color: #EAFFED;
		white-space: nowrap}

	#jsddm li a:hover
	{	background: #1A4473}
		
		#jsddm li ul
		{	margin: 0;
			padding: 0;
			position: absolute;
			visibility: hidden;
			border-top: 1px solid white}
		
		#jsddm li ul li
		{	float: none;
			display: inline}
		
		#jsddm li ul li a
		{	width: auto;
			background: #9F1B1B}
		
		#jsddm li ul li a:hover
		{	background: #7F1616}



#menucontainer
{
    background-image:url(../Images/Sprites/background-sprite.png);    
    background-position:0px -1765px;  
    background-repeat:repeat-x;    
    height:36px;
    clear:both;                      
    position:relative;   
    z-index:100; 
}
ul#mainnav {
	margin: 0;	
    padding: 0;
    text-align: left;
    height:36px;    
    font-size:13.25px;
    font-weight:bold;  
	list-style: none;
	width: 990px; /* Width of Menu Items */	
	position:relative;				
	}	 
ul#mainnav li {
	position: relative;
	/*display:inline;		*/
    float:left;
    list-style: none;    
    height:36px; 
    margin:0 1px;            
	}	
ul#mainnav li.NavDivide {	  
    height:30px;
    width:1px;
    margin:3px 0px 0px 0px;
    background-color:#999;                 
	}	
ul#mainnav li#NavLocator	{
    width:13px;
    background-color:#c41616;
    margin:0; 
}
ul#mainnav li ul, ul#mainnav li div {
	position: absolute;
	left: 0px; /* Set 1px less than menu width */
	top: 0;
	display: none;
	}
/* Styles for Menu Items */
ul#mainnav li a, ul#mainnav li.noLink {	
	text-decoration: none;			
	padding: 0px 5px;
    line-height: 36px;        
    text-decoration: none;
    color: #fff;
    font-weight: bold;
    height:36px;     
    /*bug fix - 1st 2 lines for safari/chrome, next line ie6 fix of that*/
    position:relative;
    display:block; 
    _display: inline;     
	}
ul#mainnav li ul, ul#mainnav li div {
	margin: 36px 0 0 0;
	padding: 0 0 0 0;		
	-moz-box-shadow: 5px 5px #dedede;
    -webkit-box-shadow: 5px 5px #dedede;
    border:1px solid #909090;    
    background-color:White;
	}	
ul#mainnav li div { padding:3px 3px 6px 3px;}
ul#mainnav li#Products div {width:363px;*width:369px;/*IE7 hack for divider*/ height:284px;}
ul#mainnav li#Design div {/*width:355px;*/ width:329px;*width:332px; height:284px;}
ul#mainnav li ul li, ul#mainnav li ul li.noLink {
	height:26px;	
	line-height:26px;	
	margin:0;
	float:left;	
	}
ul#mainnav li ul li.double { height:46px; }	
ul#mainnav li ul li a, ul#mainnav li.menuon ul li a {
	display: block;
	text-decoration: none;	
	background-image:none;	
	width:150px; 
	height:20px; line-height:20px;
	margin: 3px 6px;
	border-bottom: 1px solid #ccc;
	color:#003366;
    font-size:12px;	
}
ul#mainnav li ul li.double a, ul#mainnav li.menuon ul li.double a { height:40px;}
ul#mainnav li ul li a:hover, ul#mainnav li.menuon ul li a:hover 
{    
    text-decoration:underline;    
    background-image:none;
	background-color:#ccc;
	height:20px; line-height:20px;
	margin: 3px 6px;
	border-bottom: 1px solid #ccc;
	color:#003366 !important;
    font-size:12px;	
}
ul#mainnav li ul li.double a:hover, ul#mainnav li.menuon ul li.double a:hover { height:40px;}
ul#mainnav li#NewsAnalysis:hover > a {color:#7D1E08;background-image:url(../Images/Sprites/background-sprite.png);background-position:0px -1801px;}
ul#mainnav li#Business:hover > a {color:#f79937;background-image:url(../Images/Sprites/background-sprite.png);background-position:0px -1801px;}
ul#mainnav li#EELife:hover > a {color:#C4161C;background-image:url(../Images/Sprites/background-sprite.png);background-position:0px -1801px;}
ul#mainnav li#Embedded:hover > a {color:#006666;background-image:url(../Images/Sprites/background-sprite.png);background-position:0px -1801px;}
ul#mainnav li#Design:hover > a {color:#2358B8;background-image:url(../Images/Sprites/background-sprite.png);background-position:0px -1801px;}
ul#mainnav li#Products:hover > a {color:#D55105;background-image:url(../Images/Sprites/background-sprite.png);background-position:0px -1801px;}
ul#mainnav li#EdTrain:hover > a {color:#007000;background-image:url(../Images/Sprites/background-sprite.png);background-position:0px -1801px;}
ul#mainnav li#Events:hover > a {color:#299D91;background-image:url(../Images/Sprites/background-sprite.png);background-position:0px -1801px;}

ul#mainnav li#EdTrain ul li.fundamentals a {padding: 0 0 0 23px; width:108px !important;}
ul#mainnav li ul li.thirdLevel a {padding: 0 5px 0 29px;}

/* Holly Hack. IE Requirement \*/
* html ul#mainnav li { float: left; height: 1%;}
* html ul#mainnav li a { height: 1%; }
/* End */
/*SubNav Menu Widths Start*/
ul#mainnav li#NewsAnalysis ul li a {width:139px;}
ul#mainnav li#Business ul li a {width:83px;}
ul#mainnav li#EELife ul li a {width:103px;}
ul#mainnav li#Embedded ul li a {width:87px;}

ul#mainnav li#EdTrain ul li a {width:119px;} 
ul#mainnav li#Events ul li a {width:113px;} 
/*SubNav Menu Widths End*/
/* Special Designlines&Products*/
ul#mainnav li div ul, ul#mainnav li div div  {
     margin: 0;    
	padding: 3px 0 0 0;		
	-moz-box-shadow: 0 0;
    -webkit-box-shadow: 0 0;
    border:none;    
    background-image:none;
    height:auto;    
    float:left;
    position:relative;    
}
ul#mainnav li#Design div ul {width:161px;}
ul#mainnav li#Products div ul  {width:178px;} 

ul#mainnav li div div {
background-image:url(../Images/Header/pixel-border-vertical.png);    
width:1px !important;
height:280px;
margin: 0 3px;
*margin: 0 9px 0 3px; /*IE7 hack - compensated with ln260 width*/
}
ul#mainnav li#Design div ul li a {
    width:129px;
    display:inline-block;  
}
ul#mainnav li#Products div ul li a {
    width:146px;
    display:inline-block;  
}
ul#mainnav li#Design div ul li > a, ul#mainnav li#Products div ul li > a {               
    background-image:url(../Images/Header/sublist_red.png); background-repeat:no-repeat;
    background-position:5% 55%;
    padding-left:14px;
}
ul#mainnav li#Design div ul li.sup > a {         
    background-image:url(../Images/Header/downarrow_red.gif) !important; background-repeat:no-repeat;
    background-position:60% 55%;   
    padding:0px 17px 0 6px;
    border-bottom:none;    
}
ul#mainnav li#Products div ul li.asup > a   { background-image:none; padding:0 14px 0 6px;}
ul#mainnav li div ul li.noLink {     
    background-color:Transparent; color:#000;
    background-image:url(../Images/Header/downarrow_red.gif) !important; background-repeat:no-repeat;
    background-position:100% 55%; font-size:12px; padding-left:12px; *padding-left:6px;
    } 
ul#mainnav li#Design div ul li.noLink {width:75px;}
ul#mainnav li#Products div ul li.noLink {width:122px;}
ul#mainnav li#Products div ul li.sup a{
    margin: 0 0 0 3px; padding:0 3px 0 6px;
    border-bottom:none;
    background-image:url(../Images/Header/downarrow_red.gif); background-repeat:no-repeat;
    background-position:65% 55%;   
    width:126px;
}
/*Safari 880px resolution hack*/
@media screen and (-webkit-min-device-pixel-ratio:0){
ul#mainnav li#Business ul li a {width:90px;}
ul#mainnav li#NewsAnalysis ul li a {width:150px;}
ul#mainnav li#EELife ul li a {width:107px;}
ul#mainnav li#Events ul li a {width:121px;}
ul#mainnav li#Products div ul li a {width:156px;}
ul#mainnav li#Products div ul  {width:188px;} 
ul#mainnav li#Products div {width:383px;}
ul#mainnav li#Products div ul li.noLink {width:127px;}
ul#mainnav li#Design div ul li a {width:137px;}
ul#mainnav li#Design div ul  {width:169px;} 
ul#mainnav li#Design div {width:345px;}
ul#mainnav li#Design div ul li.noLink {width:78px;}
} /*End Safari sub-nav hack */
ul#mainnav li:hover ul, ul#mainnav li.over ul { display: block; } /* The magic */
ul#mainnav li:hover div, ul#mainnav li.over div { display: block; } /* The magic */
ul#mainnav li#UserName
{
    display: block;
    float:right;
    list-style: none;    
    height:36px;       
    font-size:11px;
    margin:0;
}
ul#mainnav li#SignIn a, ul#mainnav li#Join a, ul#mainnav li#LogOff a, ul#mainnav li#CurrentUser a
{     
    padding: 0px 5px 0px 5px;
}
ul#mainnav li#SignIn a:hover, ul#mainnav li#Join a:hover, ul#mainnav li#LogOff a:hover
{    
    color: #c41616;        
}
ul#mainnav li a:hover
{   
    color:#c4161c;
    text-decoration: none;
    height:36px;
    background-image:url(../Images/Sprites/background-sprite.png);background-position:0px -1801px;    
    background-repeat:repeat-x;     
    line-height:36px;                  
} 
ul#mainnav li.menuon a
{       
    text-decoration: none;
    height:36px;
    background-image:url(../Images/Sprites/background-sprite.png);background-position:0px -1801px;
    background-repeat:repeat-x;     
    line-height:36px;                   
}
.NAA_Color, .NAA_Color ul, .NAA_Color a,
div#SiteMap.NAA_Color ul li a, div#SiteMap.NAA_Color ul li ul li a, a.NAA_Color,
li#NewsAnalysis.menuon a, #NewsListingSubHead b, #NewsListingTail b
{
    color:#7d1e08;  
}
.EELife_Color, li#EELife.menuon a, .Red_color, a.Red_color, li#Video.menuon a,
.EELife_Color a, .Red_color a, a.EELife_Color, .topstories_step_coment_news h5
{
    color:#C4161C;          
}
ul#mainnav li#Design a:hover, .Design_Color, .Design_Color ul, .Design_Color a, a.Design_Color,
.contentDesignIndustry b, .contentDesignIndustry b a,  div#SiteMap.Design_Color ul li a, div#SiteMap.Design_Color ul li ul li a,
li#Design.menuon a
{
    color:#2358b8;          
}
.Products_Color, li#Products.menuon a, a.Products_Color,
.Products_Color a, div#SiteMap.Products_Color ul li a, div#SiteMap.Products_Color ul li ul li a,
#ReviewListingHead a 
{
    color:#d55105;          
}

div#SiteMap.Products_Color ul li.noLink { color:#cc7340;}
div#SiteMap.Design_Color ul li.noLink { color:#5b7ebc;}
div#SiteMap.EELife_Color ul li.noLink { color:#e15156;}
ul#mainnav li#EdTrain a:hover, .ET_Color, .ET_Color ul, .ET_Color a, .ET_Color a:link,
#CourseListingHead a, div#SiteMap.ET_Color ul li a, div#SiteMap.ET_Color ul li ul li a,
li#EdTrain.menuon a  
{
    color:#007000;        
}
ul#mainnav li#Events a:hover, .Events_Color, li#Events.menuon a, .Events_Color a
{
    color:#299d91;       
}
ul#mainnav li#Business a:hover, .Business_Color, li#Business.menuon a, .Business_Color a
{
    color:#f79937;       
}
ul#mainnav li#Embedded a:hover, .Embedded_Color, li#Embedded.menuon a, .Embedded_Color a
{
    color:#006666;       
}
ul#mainnav li a:active
{       
    text-decoration: none;        
}
ul#mainnav li.selected a
{
 
    color: #000;
}
/* FORM LAYOUT ELEMENTS   
----------------------------------------------------------*/
fieldset 
{
    margin: 1em 0;
    padding: 1em;
    border: 1px solid #CCC;
}
fieldset p 
{
    margin: 2px 12px 10px 10px;
}
fieldset label 
{
    display: block;
}
fieldset label.inline 
{
    display: inline;
}
legend 
{
    font-size: 1.1em;
    font-weight: 600;
    padding: 2px 4px 8px 4px;
}
.disabled {background-color:#CCC;}
/* TABLE
----------------------------------------------------------*/

table#SearchTables_BizTopics, table#SearchTables_IndustryApp, table#SearchTables_EE_Topics
{
    text-align:left;
}
table#SearchTables_EE_Topics
{   
    width:320px;
    margin-left:125px;
}
table#SearchTables_BizTopics
{   
    width:300px;
    margin-left:138px;
}
table#SearchTables_IndustryApp
{
    width:380px;
    margin-left:108px;
}
table td 
{
  padding: 3px;      
  font-size:10px;    
}
table#TechPapersListings td, table#WebinarsListings td, table#CourseListings td,
table#TechPaper_Table td, table#courses_table td, table#webinars_table td,
table#more_table td, table#fundamentals_table td
{
    font-size:12px; 
}
table#fundamentals_table td { padding-bottom:10px }

table#FundamentalsTable td.image 
{
    width:125px;
    padding: 7px 8px 7px 0px;  
}
table#FundamentalsTable td.content 
{
    width:293px;
    padding: 7px 0px 7px 0px;  
}
table.SearchTables td, table#SearchContentTypes td
{
    font-size:11px;
    padding: 2px 0 2px 0;       
}
 table#SearchResults_SortBy td 
{
    font-size:12px;
    padding: 3px 8px 3px 0;
}
table#SearchContentTypesInput { clear:both;} /*safari fix*/
table th
{
  padding: 2px 2px;
  text-align: left;
  border: 0px solid transparent;
  font-size:11px;
  font-weight:bold;
}
table#TechPapersListings th, table#WebinarsListings th, table#CourseListings th,
table#TechPaper_Table th, table#courses_table th, table#webinars_table th
{
    font-size:13px;
}
table#SearchResultsOutput { table-layout: fixed;}
table#SearchResultsOutput td 
{
    padding:0px 3px 0 3px;
}
table#SearchResultsOutput td.content
{
    padding:0px 3px 10px 3px;
}
table#SearchOptions 
{    
    width:100%; 
}
table#SearchOptions td 
{
    font-size:11px;    
}
table#SearchOptions td.DisplayItems 
{
    text-align:right;
    width:25%;
}
table#SearchOptions td.DisplayItems span
{
    padding: 0 0 0 5px;
}
table#SearchOptions td.MoveItems 
{ 
    text-align:center;
    width:50%;
}
table.HomepageArticlesTable td {
font-size:12px;
font-weight:bold;
padding: 2px 5px 5px 0px;
}
/* MISC  
----------------------------------------------------------*/
.clear
{
    clear: both;        
}
.clearleft
{
    clear: left;    
}
.clearspace { clear:both; padding-top:5px;}
.error
{
    color:Red;
}
div#title
{
    display:block;
    float:left;
    text-align:left;
}
#logindisplay
{
    font-size:1.1em;
    display:block;
    text-align:right;
    margin:10px;
    color:White;
}
#logindisplay a:link
{
    color: white;
    text-decoration: underline;
}
#logindisplay a:visited
{
    color: white;
    text-decoration: underline;
}
#logindisplay a:hover
{
    color: white;
    text-decoration: none;
}
.field-validation-error
{
    color: #ff0000;
}
.input-validation-error
{
    border: 1px solid #ff0000;
    background-color: #ffeeee;
}
.validation-summary-errors
{
    font-weight: bold;
    color: #ff0000;
}
/* HEADER CONTENT  
----------------------------------------------------------*/
#header_title
{    
    background-image:url(../Images/Sprites/background-sprite.png);    
    background-position:0px -1596px;  
    background-repeat:repeat-x;
    width:100%;
    height:169px;
    padding: 0px 0px 0px 0px;
}
#header_ad 
{
    text-align:center;
    height:90px;
}
#header_block 
{
    margin-left:auto;
    margin-right:auto;
    width:940px;
    height:74px;
    position:relative;
    top:-10px;
}
#displayName {
    font-size:10px;
    text-align:right;    
    position:relative;
    top:-10px;
    *top:-12px;
    padding-right:14px;
    font-weight:bold;
}
#header_block .left
{
    float:left;   
}
#header_block .right 
{
    float:right; 
    padding-top:25px;
}
#header_block .val 
{
    height:20px;
}
a#header_title_tag
{   
    height:74px;
    margin: 0px 12px 0px 0px;    
}
#subheader_title_tag
{   
    height:19px;
    margin: 0px 0px 0px 0px; 
    visibility:hidden;
}
#header_search
{    
    width:410px;
    height:27px;
    margin: 0px 0px 0px 0px;
    position:absolute;
    left:535px;
    top:120px;
}
#advanced_search
{    
    font-size:9px; 
    width:127px;
    height:27px;  
    line-height:27px;
    float:left;
    position:relative;
    margin-left:11px;
}
#search
{
    float:left;
    position:relative;    
    font-size:9px; 
    width:75px;
    height:27px;           
}
.SearchTextBoxContain
{
    background-image:url(../Images/Sprites/icons-flat-sprite.png);background-position:0px -60px; 
    border:medium none;
    height:28px;
    font-size:13px;
    width:158px;
    float:left;
    position:relative;
}
.SearchTextBoxContain_PartsHomepage
{
    background-image:url(../Images/Sprites/icons-flat-sprite.png);background-position:0px -30px; 
    border:medium none;
    height:28px;
    font-size:13px;
    width:180px;
    float:left;
    position:relative;
    margin: 5px 0 5px 0;
}
.SearchTextBoxContain_PartsWebpart
{
    background-image:url(../Images/Sprites/icons-flat-sprite.png);
    border:medium none;
    height:28px;
    font-size:13px;
    width:200px;
    float:left;
    position:relative;
    margin-bottom:5px;
}
#SearchTextBox, #SearchTextBox_PartsHomepage, #SearchTextBox_PartsWebpart 
{
    font-size: 13px;    
    background-color:transparent;
    border:medium none;
    margin:0;
    padding: 4px 3px 6px 4px;
    width:151px;
}

#SearchTextBox_PartsHomepage {
    width:173px;    
}
#SearchTextBox_PartsWebpart 
{
    width:193px;
    padding-top:6px;
}
/* FOOTER CONTENT  
----------------------------------------------------------*/
#footer_content 
{    
    margin-left:auto;
    margin-right:auto;
    width:958px;    
    text-align:left;   
    padding: 16px 0px 0px 0px;
}
hr.footer_line_registration {
   height:1px;    
    width:89%;    
    float:left;     
    padding:0; 
    color:#c1c0c0;
    margin-top:30px;
}
.newslettericon {
float:right;
}
hr.footer_line 
{
    height:1px;    
    width:100%;    
    clear:both;    
    padding:0; 
    color:#c1c0c0;
}
hr.footer_line_forums
{
    height:1px;    
    width:100%;    
    clear:both;    
    padding:0; 
    color:#c1c0c0;
}
.footer_listings 
{    
    width:38%;    
    float:left;
    font-size:10px;
    margin: 0 0 13px 0;      
}
.listing_border {
    border-left:1px solid #9c9c9c;
    border-right:1px solid #9c9c9c;
    padding-left:10px;
}
.footer_listings h3 { padding: 10px 0 13px 0;}
.footer_sublistings 
{    
    width:50%;    
    float:left;    
}
.footer_listing {
    width:20%;
    float:left;
    font-size:10px;    
    padding:39px 0 0 10px;
    height:168px;
}
.footer_sublistings ul 
{
    margin:0;
    padding:0;
    list-style-type:none;
}
.footer_sublistings ul li
{
    padding: 0 0 8px 0;
    font-size:11px; 
}
.footer_sublistings .support { width:146px; text-align:right;}
/* 3 Column Template Layout
----------------------------------------------------------*/
#threeColumn_left {
   position:relative; 
   float:left; 
   width:125px; 
   margin: 5px 13px 13px 0;
}
#threeColumn_top 
{
    position:relative;
    float:left;    
    width:100%;
    height:18px;
}
#threeColumn_contain 
{    
   position:relative; 
   float:left;   
   width:824px;    
}
#threeColumn_mid {
   position: relative; 
   float:left; 
   width:475px; 
   clear:both;     
}
#threeColumn_right, .threeColumn_rightQuickFix {
    position: relative; 
    float:right; 
    width:336px; 
    margin: 0 0 0 0;       
}
#twoColumn_left {
   position:relative; 
   float:left; 
   width:613px; 
   margin: 0px 13px 13px 0;   
}
#oneColumnCenter, #oneColumnCenterWide {
  width:441px;
	margin:13px auto;
	text-align:left;
}
#oneColumnCenterWide { width:607px;}
#RegColumn_left, #RegColumn_right {
   position:relative; 
   float:left; 
   width:50%; 
   margin: 13px 0 13px 0;      
}
.oneColumn {
  width:884px;
	margin:13px auto;
	text-align:left;
}
/* HOMEPAGE CONTENT  
----------------------------------------------------------*/
div#Homepage_ResetHomepage /* DIV 1 */
{    
    float:right;
    position:relative;    
    width:103px;    
    margin: 0 0 0 0;
    height:13px;
    padding: 3px 0 2px 0;
}
div#HomePage_TopStories, #CarouselEdTrainingLanding /* DIV 2 */
{    
    float:left;
    position:relative;
    clear:both;
    background-image:url(../Images/Sprites/background-sprite.png);background-position:0px -1837px;        
    background-color:#9c9ea5;
    background-repeat:repeat-x;
    width:613px;
    height:228px;
    margin: 0 0 13px 0;     
    padding: 0 0 0 0;    
    
}
div.HomePage_Whatsnew /* DIV 3 */
{    
    float:left;
    position:relative;    
    background-image:url(../Images/Sprites/background-sprite.png);    
    background-position:0px -912px;   
    background-repeat:repeat-x;
    background-color:#A59EA5;
    width:336px;
    height:222px;    
    margin: 0 0 13px 0;
    padding: 0 0 5px 0;
}
/* --- EE TIMES TODAY WEBPART - HOMEPAGE ---*/
div#HomePage_EETTIMES_Today /* DIV 4 */
{    
    float:left;
    position:relative;    
    width:613px;    
    margin: 0 0 13px 0;    
}
#HomePage_EETTIMES_Today_Header
{
    float:left;
    position:relative;
    background-color:#fff;
    width:613px;
    height:45px;
    margin: 0 0 0 0;   
    text-align:center;
    padding: 10px 0 0 0;
}
#HomePage_EETTIMES_Today_Body
{
    float:left;
    position:relative;
    background-color:#ccc;
    width:613px;
    /*height:447px;
    _height:446px;*/    
    margin: 0 0 0 0;  
    padding-bottom:3px;     /* required for any p-b for IE*/          
}
#HomePage_EETTIMES_Today_Container
{
    float:left;
    position:relative;    
    width:608px;    
    margin: 1px 0 0 2px;   
    _margin: 1px 0 0 1px;    
}
.HomePage_EETTIMES_Today_SubContainer
{
    float:left;    
    position:relative;
    width:306px;      
}
.EETIMES_TODAY_Subhead
{
    color:#c4161c;    
    font-weight:bold;    
}
/* ADS */
div.Advertisement
{    
    float:left;
    position:relative;    
    width:336px;    
    margin: 0 0 0 0;    
    text-align:center;    
}
div.AdvertisementNarrow
{    
    float:left;
    position:relative;    
    width:125px;    
    margin: 0 0 0 0;
    padding:0;    
    text-align:center;  
    clear:both;      
}
div.internalAd_GetEdge, div.internalAd_Shop, .internalAd_Newsletter
{
    float:left;
    position:relative;    
    width:105px;    
    background-color:White;
    margin: 0 0 13px 0;
    padding: 20px 5px 20px 11px;
    text-align:center;
    font-weight:bold;   
    text-align:left; 
}
/* --- WHAT'S NEW WEBPART - HOMEPAGE ---*/
div#HomePage_Videos, #CountdownClock
{    
    float:left;
    position:relative;        
    width:336px; 
    margin: 0 0 13px 0;
}
#CountdownClock {
    display:none; height:130px;   
}
div#HomePage_TopStories #TopStories_Title,
#TopStories_Title
{
    padding:10px 20px 0 20px;
    height:31px;
}
div#HomePage_TopStories #TopStories_Title .left,
#TopStories_Title .left
{
    float:left;    
}
.WebHeaderBlack 
{    
    font-size:18px;
    font-weight:bold;
    padding: 0 16px 0 0;
}
/*Fundamentals exception for long title 16px font */
.WebHeaderBlack16 
{    
    font-size:16px;
    font-weight:bold;
    padding: 0 16px 0 0;
}
.WebSubHeaderJoinConvo, a.WebSubHeaderJoinConvo
{
    color:#c4161c;
    font-size:14px;
    font-weight:bold;
    padding: 0 0 0 6px;
}
.JoinConvoDetail {float:left; margin-top:5px;}
.JoinTheConvoHead {
    float:right;
    display:none;
}
.WebTextJoinConvo 
{
    color:#c4161c;
    font-size:10px;
    font-weight:bold;
}
.reset_homepage, .reset_homepage a
{    
    font-size:9px;   
}
#TopStories_Icon, .TopStories_Panel_Icon
{
    display:inline; 
    position:relative; 
    top:9px;
}
/* --- WHAT'S NEW WEBPART - HOMEPAGE ---*/
/* Also used for Navigate to related info webpart */
.HomePage_Navigate_Title 
{
    padding: 10px 0 0 27px;
    color:#fff;
    font-weight:bold;
    font-size:18px;
}
.HomePage_Whatsnew_Body 
{
    width:284px;
    padding: 0 0 0 27px;
}
.HomePage_Whatsnew_Body hr 
{
    color:White;
}
.HomePage_Whatsnew_Art, .HomePage_Whatsnew_Art a,
.HomePage_Whatsnew_Art a:link, .HomePage_Whatsnew_Art a:visited
{
    color:White;
    font-size:11px;
}
.HomePage_Whatsnew_Art b
{
    color:White;
}
/* --- 6 FlOATING DIVS IN EE TIMES TODAY --- */
.bottommore {
width: 100%;
position: absolute;
bottom: 5px;
text-align:right;
width:255px;
}
.EETIMES_Today
{
    width:270px;            
    background-color:White;    
    display:inline;
    float:left;
    position:relative;
    color:#000;
    font-size:11px;
    font-weight:bold;    
    padding: 10px 15px 6px 15px;
}
.EETIMES_Today_EELife
{
    width:270px;                    
    display:inline;
    float:left;
    position:relative;
    color:#000;
    font-size:11px;
    font-weight:bold;    
    padding: 10px 15px 5px 15px;    
}
.EETIMES_Today_Body 
{
    width:270px;            
    background-color:#f2f2f2;    
    float:left;
    display:inline;    
    position:relative;
    color:#000;
    font-size:12px;              
    /*padding:5px 15px 5px 15px;*/
    padding: 5px 15px 0 15px;
    height:210px;    
}
.EETIMES_Today_Contain 
{
position:relative; float:left;
    width:298px;
    padding:0;    
    margin: 3px 3px 3px 3px;
    _margin: 3px 1px 3px 1px;    
}
.EETIMES_Today_Contain_EELife
{   
position:relative; float:left; margin: 3px 3px 3px 3px;
_margin: 3px 1px 3px 1px; 
    width:298px;
    height:142px;
    padding:0;      
    background-image:url(../Images/Buttons/ee_life1.png);           
}
.EETIMES_Today .left, #MostPopStories .left, .EETIMES_Today_EELife .left
{
    font-weight:bold;
    font-size:14px;
    display:inline;
    position:relative;
    float:left;
}
.EETIMES_Today_EELife .left:hover {text-decoration:underline;}
.EETIMES_Today .right, #MostPopStories .right
{   
    display:inline;
    position:relative;
    float:right;
}
.EETTimes_Today_NA_Art 
{
    padding: 0 20px 3px 0;       
}
.downarrow 
{
    display:inline;
    position:relative;
    float:left;
    _top:4px;    
}
/* Temp not in use 
.edit
{    
    display:inline;
    position:relative;
    top:-1px;   
}*/
.mid_minus 
{
    padding: 0 7px 0 5px;
}
.plus_minus 
{
    float:right;
    padding: 7px 0 0 0;
}
/* --- REGISTRATION --- */
    /*--Common--*/
.CommonReg, .CommonReg a 
{
    color:#000000;   
}
.CommonReg input[type="submit"]
{
    color:#C4161C;    
    font-size:14px;
    margin: 10px 0 0 0;
}
/*IE7 fix for buttons on ManageMagazines non-US in Registration*/
*input#subscribe1 { width:210px;}
*input#subscribe2 { width:222px;}
.EmbeddedVersionText input[type="submit"]
{
    color:#2358B8;    
    font-size:14px;
    margin: 10px 0 0 0;
}
.black input[type="submit"]
{
    color:Black;    
    font-size:14px;
    margin: 10px 0 0 0;
}
.CommonReg h1
{
    color:#C4161C;
    font-size:18px;
    font-weight:bold;
    margin: 0 0 5px 0;
}
    /*--Common--*/
div#Reg_SignIn, div#Reg_RegisterNow  
{    
    float:left;
    position:relative;      
    background-color:White;    
    width:401px;           
    padding: 10px 20px 10px 20px; 
    height:225px;    
}
div#Reg_SignIn {margin-left:26px;}
div#Reg_RegisterNow {margin-left:11px;}

div#Basic_Reg, div#Reg_OpenId, #Welcome
{   
   	background-color:White;
	padding: 10px 20px 10px 20px;  
	width:401px;
	margin-left:auto;
	margin-right:auto;
	text-align:left;
}
#Welcome ul, table#ManageMazaginesUS ul { padding-left:15px;}
div#Basic_Reg
{     
    /*height:635px; IE7 fix*/
    width:557px;
    margin-left:auto;
	margin-right:auto;
}
#Welcome p 
{
    padding: 10px 0 10px 0;
}
div#Reg_SignIn hr, div#Reg_RegisterNow hr 
{
    margin: 15px 0 15px 0;
}
#Reg_SignIn .header, #Reg_OpenId .header, #CompleteOpenID .header
{
    margin: 13px 0 15px 0;
}
#Reg_RegisterNow .header 
{
    margin: 0 0 15px 0;
    clear:both;
}
div#Reg_SignIn h2, div#Reg_RegisterNow h2
{
    color:Black;
    font-size:14px;
    font-weight:bold;
    margin: 0 0 5px 0;
}
div#Reg_RegisterNow h2.offset 
{
    margin-top:15px;
}
#Reg_SignIn p
{
    margin: 0 0 10px 0;   
    text-align:center; 
}
#Reg_OpenId p 
{
    margin: 0 0 10px 0;   
}
div#Reg_SignIn b, #Reg_RegisterNow ul li b
{
    color:#C4161C;    
    font-weight:bold;    
}
.Reg1_SignInText 
{
    float:left; 
    width:125px;
    padding: 3px 0 0 0;
}
.Reg1_SignInText2
{
    float:left; 
    width:160px;
    padding: 3px 0 0 0;
}
#Reg1_Email, #Reg1_Password, #Reg1_Email2
{
    width:200px;
    margin: 0 0 5px 0;
    padding: 1px 2px 1px 2px;        
}
.center
{
    text-align:center;
}
.Reg_Required
{
    float:right;  
    color:#C4161C;  
    font-size:10px;
}
#Reg_SignIn img, #Reg_RegisterNow img
{
    margin: 15px 10px 10px 10px;
}
#Reg_RegisterNow ul li 
{
    margin: 0 0 5px 0;
}
#Reg_RegisterNow div.left 
{
    float:left;
    width:200px;
    padding: 0 0 0 25px;
    margin: 15px 0 0 0;    
}
#Reg_RegisterNow div.right 
{
    width:100px;
    float:right;
    margin: 15px 0 0 0;    
}
.Reg_bottom
{  
 text-align: center;   
     width: 100%;
}
#CommonRegContainer, #RegistrationTabs, #MyAccountInfo, .Confidential_Confirm
{
	background-color:White;
	padding: 10px 20px 10px 20px;  
	width:844px;
	margin-left:auto;
	margin-right:auto;
	text-align:left;
	margin-top:13px;
}
#SubscriptionPage
{
	background-color:White;
	padding: 10px 0px 10px 0px;  
	width:884px;
	margin-left:auto;
	margin-right:auto;
	text-align:left;
	margin-top:13px;
}
.InnerSubscriptionPage { padding: 0 20px 0 20px; }
#MyAccountInfo { height:90px;}
#CommonRegContainer { margin-top:0px; padding:0; position:relative; width:884px;}
#CommonRegContainer #Contain {padding: 0 20px 0 20px; width:844px;}
#RegistrationTabs 
{
    padding:0px;
    width:884px;
}
#RegistrationTabs p.break, #SubscriptionPage p.break
{
    width:100%;
    height:20px;
    background-color:#C4161C;
}
/* --- REGISTRATION - BASIC REGISTRATION --- */
#Basic_Reg .header 
{
    margin: 0 0 15px 0;
    clear:both;
} 
#Basic_Reg p, #CompleteOpenID p
{
    font-size:9px; 
    margin: 0 0 5px 0;   
}
.Reg2_SignInText 
{
    float:left;
    width:125px;
    padding: 3px 0 0 0;    
}
.AccountProfileText {    
    text-align:right;
    float:left;
    padding-right:5px;
    width:175px;
}
.EditProfileText
{
    float:left;
    width:175px;
    padding: 3px 5px 0 0; 
    text-align:right;       
}
.EditProfileTextAns {    
    padding: 3px 5px 0 0; 
    float:left;
}
#EditProfile_tab {margin:0 70px 0 70px;}
.CommonReg input[type="text"], .CommonReg input[type="password"]
{
    width:225px;
    margin: 0 0 5px 0;
    padding: 1px 2px 1px 2px;    
}
table#YourAccountProfile_table td input[type="text"], table#YourAccountProfile_table td input[type="password"] {
    margin:0; width:382px;
}
table#YourAccountProfile_table td select { width:390px; }
.CommonReg select
{
    width:246px;
    margin: 0 0 5px 0;
    padding: 1px 2px 1px 2px;    
}
div#Basic_Reg input[type="text"], div#Basic_Reg input[type="password"]{width:420px;}
div#Basic_Reg select {width:430px;}

#Reg_OpenId img, #CompleteOpenID img 
{
    padding: 25px 0 25px 0;
}
#Reg_MemberBenefits 
{
    float:left;
    position:relative;
    background-color:White;
    padding: 10px 20px 10px 20px;
    margin: 0 0 13px 26px;    
    _margin: 0 0 13px 12px;    
    width:866px; 
    height:208px;
}
#Reg_MemberBenefits div.left
{ 
    width:50%;
    float:left;
    
}
#Reg_MemberBenefits ul { padding-left:15px;}
#Reg_MemberBenefits ul li, #Welcome ul li
{
    padding: 2px 0 5px 0;
    list-style-type:disc; 
    list-style-position: outside;     
}
.registerCenteredAgree {
margin-left:auto;
margin-right:auto;
width:310px;
text-align:center;
}
/* --- News Analysis Article --- */
#NAA_Header 
{
    height:27px;
    background-color:White;
    position:relative;
    float:left;
    clear:both;
    width:435px;    
    padding: 10px 20px 0 20px;    
}
#Blog_Header 
{    
    background-color:White;
    position:relative;
    float:left;
    clear:both;
    width:435px;    
    padding: 10px 20px 4px 20px;    
}
#NAA_Body
{
    position:relative; 
    float:left; 
    width:435px; 
    clear:both;     
    background-color:#f2f3f3;
    padding: 10px 20px 20px 20px;
    margin: 0 0 13px 0;
}
#NNA_SB2
{
    position:relative;    
    width:1px; 
    height:350px;             
}
#NNA_SB1
{
    position:relative;    
    width:1px; 
    height:182px;
}
#NNA_SB0
{
    position:relative;    
    width:1px; 
    height:1px;                 
}
#NNA_SB0, #NNA_Poll, #NNA_Body_pic, #NNA_SB2
{
    float:left; clear:left;
}
#NNA_SB1, #NNA_Comment 
{
    float:right; clear:right;
}
#NNA_Body_pic 
{   
    float:left; clear:left;
    padding: 0 10px 10px 0;
    width:134px;
    height:115px; 
    display:none;   
}
#NNA_Comment
{       
    width:251px;    
    background-color:White;            
    padding: 10px 15px 10px 15px;
    margin: 20px 0 10px 10px;       
}
#NNA_Poll
{     
    width:159px;    
    background-color:White;
    margin: 20px 10px 0 0;  
    padding:10px 20px 10px 20px;
}
.NNA_SubWeb 
{
    padding: 20px 0 0 15px;
}
.NNA_SubWeb h1
{
    font-size:16px;
    color:#c4161c;
    margin: 0 0 10px 0; 
}
.NAA_Title 
{   
    font-weight:bold;
}
.NAA_SubTitle 
{
    font-size:11px; 
    font-weight:bold;
}
.NAA_TitleNext 
{
    font-size:11px;    
    font-weight:bold;
    padding: 0 0 0 10px;
}
.needsfeed 
{    
    font-weight:bold;
}
#NAA_Title
{       
    padding-top:1px;
    _padding-top:15px;
}
#NAA_Content h2 b, .NNA_CommentPic
{
    font-size:10px;          
}
#NAA_Content h2
{
    font-size:8px;       
    margin: 5px 10px 5px 0;  
}
#NAA_Title h1 {font-size:14px;}
/* TIMEUPDATE & Breadcrumbs - WEB PARTS */
#timeupdate 
{
    position:relative; 
    float:right;     
    padding: 3px 0 0 0;
}
#breadcrumbs
{
    position:relative; 
    float:left;     
    padding: 3px 0 0 0;
    font-size:9px;    
}
/* NAA SITEMAP - WEB PART */
div#SiteMap 
{
    margin: 0 0 13px 0;
}
div#SiteMap ul 
{
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    list-style-type: none;    
    font-size:10px;
    font-weight:bold;
}
div#SiteMap ul li
{
    margin: 0 0 3px 0;
}
div#SiteMap ul li ul li
{
    margin: 3px 0 3px 5px;
}
div#SiteMap ul li ul li ul li
{
    margin: 3px 0 3px 10px;
}
div#SiteMap ul li ul li ul ul li
{
    margin: 3px 0 3px 15px;
}
div#SiteMap ul li a:hover, div#SiteMap ul li ul li a:hover
{
    color:Black;
}
div#SiteMap ul li.currentpage a, div#SiteMap ul li.currentpage a:hover
{
    cursor:default;
    text-decoration:none;
    color:Black;
}
/* GetInolvedPurchaseNow WEBPART */
#GetInvolvedPurchaseNow, #PremiumContent, #PromoBox1
{    
    position:relative;
    float:left;
    background-color:white;
    width:296px;
    margin: 0 0 13px 0;
    padding: 10px 20px 10px 20px;        
}
.GetInvolvedText 
{
    font-size:11px;       
    width:90%;       
    float:left;    
}
/* MostPopStories WEBPART */
#MostPopStories
{    
    position:relative;
    float:left;
    background-color:#ffffff;
    width:296px;
    margin: 0 0 13px 0;
    padding: 10px 20px 10px 20px;
}
.MPS_Title 
{
    display:block;
    float:left;
    font-size: 14px;
    margin: 0 0 10px 0;    
    font-weight:bold;
}
.MostPopText
{                   
    float:left;    
    margin: 0 0 5px 0;
    clear:both;
    width:100%;
}
.poparrow
{
    display:inline; float:left;
}
/* PartsSearch WEBPART */
#PartsSearch, #ProductReview, #SignUpEmbeddedSystems
{    
    position:relative;
    float:left;
    background-color:#d55105;
    background-repeat:repeat-x;         
    width:296px;
    margin: 0 0 13px 0;
    padding: 10px 20px 10px 20px;    
    color:White;
    /*height:106px;*/
}
#SignUpEmbeddedSystems
{
    background-color:#2358b8;    
}
#SignUpEmbeddedSystems a
{
    color:White;
}
#parts_searchbutton
{
    color:#9b9b9b;
    font-size:9px; 
    width:65px;
    height:28px;  
    line-height:24px;    
    position:relative;  
    float:left;  
    cursor:pointer;
    cursor:hand; 
}
#Parts_Search {
    background-color:#D6E5F4;
    float:left;
    font-size:13px;
    padding:4px 2px;
    position:relative;
    width:200px;
    height:12px;
}
#EETTIMES_Today_Products_Body #parts_searchbutton {margin:5px 0 5px 0;}
/* ReadersLikeThis + Latest News WEBPART */
#LatestNews, #ReadersLikeThis, #PartsSearchProductReviews
{    
    position:relative;
    float:left;
    background-color:white;
    width:435px;
    margin: 13px 0 13px 0;
    padding: 10px 20px 10px 20px;
}  
#ReadersLikeThis .right { width:343px;}
#PartsSearchProductReviews {margin-top:13px;}
.NAA_Webpart h1 
{
    color:#7d1e08;
    font-size:16px; 
    margin: 0 0 5px 0;   
} 
.NAA_Webpart h2
{
    color:black;
    font-size:14px;    
    margin: 0 0 5px 0;
}
div.feed
{       
    margin: 0 0 5px 0;        
    display:block;
    float:left;    
    clear:both;
    width:100%;
} 
.NAA_Webpart div.arrow 
{
       float:left;    
       width:12px;
       margin: 1px 0 0 0;
}
.NNA_CommentPic 
{
    float:left;
    margin: 0 5px 10px 0;   
    clear:both; 
    width:75px;
}
.NNA_CommentText 
{
    float:left;    
    width:171px;
}
.NNA_CommentTextBase
{
    float:left;    
    width:300px;
}
.NNA_CommentTextSubBase
{
    float:left;    
    width:280px;
}
.NNA_CommentText p.timestamp
{    
    font-size:8.5px;   
    margin:0;
}
.more 
{
    float:left;
    color:#C4161C;        
    clear:both;
    margin: 0 10px 5px 0;
    width:80%;
}
#moreFinal
{    
    font-weight:bold;
    margin: 10px 0 0 0;
}
.NNA_PollText 
{   
    margin: 0 0 5px 0;
}
.Join_Mini 
{
    display:inline;
    position:relative;
    margin: 0 5px 0 5px;
    top:6px;
}
.Filter_Offset
{
    display:inline;
    position:relative;
    margin: 0 5px 0 5px;
    top:3px;
    cursor:pointer;
    cursor:hand; 
}
.GreyPlus_Mini 
{
    display:inline;
    position:relative;
    top:2px;    
}
.NNA_PollText2
{
    font-size:10px;    
    margin: 0 0 0 0;
    clear:both;
    padding: 10px 0 0 0;
}
div#contentdetail  
{
    position:relative;
    float:left;
    margin:0 0 6px 0;
    margin:0px;
    }
div#contentdetail p
{ 
    float:left;
    position:relative;
    margin: 0 10px 0 0;  
    padding-top:3px;    
}
div#contentdetail p.EELife_Color 
{
    padding-top:0px;
}
.NNA_SubGet 
{   
    float:left;
    padding:15px 0 0 20px;
}
.greyDivider 
{
    background-color:#cfcdcd;
    width:1px;
    height:85px;
    float:left;
    margin: 15px 0 0 0;    
}
/* TECHPAPER STYLING */
#TechPaper_Header, #EELife_Header, #EELife_Footer
{
    height:27px;
    background-color:White;
    position:relative;
    float:left;
    clear:both;
    width:455px;    
    padding: 10px 0 0 20px;    
}
#EELife_Header { width:593px;}
#EELife_Footer { width:593px; margin: 0 0 13px 0;}
#EELife_Body {
    background-color:#f2f2f2;            
    float:left;
    position:relative;
    padding:0px;
    width:613px;    
}
#EELife_Body #NewsAnalysisOpinion, .EELife_SubBody {
    width:573px;
    padding: 0 20px 0 20px;
}
#EELife_Body #NewsAnalysisOpinion { padding-top:10px;}
#TechPaperPic
{
    float:left;
    position:relative;    
    margin: 0 10px 10px 0;
}
#TechPaperBlurb, #CourseBlurb
{
    float:left;    
    position:relative;    
    margin: 0 0 10px 0;          
}
#TechPaperBlurb {
    width:290px;
}
#CourseBlurb 
{
    width:100%;
}
.TechPaperPDF 
{
    float:left;
    position:relative;    
    color:Black;
    font-weight:bold;    
    margin: 10px 20px 0 0;
    clear:right;
}
.hidden 
{
    visibility:hidden;
    clear:both;
}
#RateTechPaper 
{
    position:relative;
    float:left;
    width:405px;
    background-color:White;
    padding: 10px 15px 0 15px;
    margin: 10px 0 10px 0;
    height:75px;    
}
#RateLeft
{   
   float:left;
   margin: 0 20px 0 0;   
}
#RateRight
{     
   float:left;
   margin: 10px 0 0 0;
}
.TechPaperRadios 
{
    display:inline;
    margin: 0 17px 0 17px;
}
/* CompleteOpenID webpart */
#CompleteOpenID 
{   
    position:relative;      
    background-color:White;    
    width:401px;
    height:500px;    
    /*margin: 0 14px 0 0; 
    _margin: 12px 14px 0 0;   
    *margin: 16px 14px 0 0;*/
    margin: 30px 0 30px 00;
    padding: 10px 20px 0 20px;   
    margin-left:auto;
    margin-right:auto;     
}
.OpenID_SignInText 
{
    float:left; 
    width:150px;
    padding: 3px 0 0 0;
}
#EETimesPromos div.left,
#ProductReview div.left, #SignUpEmbeddedSystems div.left
{
    float:left;
    position:relative;    
    padding: 10px 5px 0 0;
}
#EETimesPromos div.right,
#ProductReview div.right, #SignUpEmbeddedSystems div.right

{
    position:relative;
    margin: 15px 0 0 0;
}
/* Noteworthy Events Webpart */
#PromoBox, #ElectronicsCompanyDirectorySide
{    
    position:relative;
    float:left;           
    width:296px;
    margin: 0 0 13px 0;
    padding: 10px 20px 0 20px;    
    color:White;    
    height:218px;
    overflow:hidden;
}
#PromoBox a 
{
    color:White;
}
#PromoBox p 
{
    padding:0 0 5px 0;
}

#PromoBox.none_gradient
{
    color: black; 
    width:336px;
    padding: 0px;  
}

.newanalysis_gradient 
{
    background-color:#7d1e08;
    background-image:url(../Images/Sprites/background-sprite.png);    
    background-position:0px -1140px;            
    background-repeat:repeat-x;
}
.eelife_gradient 
{
    background-color:#c41616;
    background-image:url(../Images/Sprites/background-sprite.png);    
    background-position:0px -456px;
    background-repeat:repeat-x;
}
.design_gradient 
{
    background-color:#2358b8;
    background-image:url(../Images/Sprites/background-sprite.png);        
    background-repeat:repeat-x;
}
.products_gradient 
{
    background-color:#d55105;
    background-image:url(../Images/Sprites/background-sprite.png);    
    background-position:0px -1368px;      
    background-repeat:repeat-x;
}
.edtraining_gradient 
{
    background-color:#007000;
    background-image:url(../Images/Sprites/background-sprite.png);    
    background-position:0px -228px;
    background-repeat:repeat-x;
}
.events_gradient 
{
    background-color:#299d91;
    background-image:url(../Images/Sprites/background-sprite.png);    
    background-position:0px -684px;       
    background-repeat:repeat-x;
}
.generic_gradient 
{
    background-color:#636163;
    background-image:url(../Images/Sprites/background-sprite.png);    
    background-position:0px -912px;       
    background-repeat:repeat-x;
}
/* BOT Webpart */
#EETimesPromos
{    
    position:relative;
    float:left;
    background-color:White;
    width:296px;
    margin: 0 0 13px 0;
    padding: 10px 20px 10px 20px;     
}
#MarketPlace, #CareerCenter
{
    float:left;
    position:relative;    
}
/*Digital Edition Webpart*/
#DigitalEdition 
{
    float:left;
    position:relative;
    background-color:White;
    margin: 0 0 13px 0;
    padding: 20px 0 20px 0;
    text-align:center;
    width:100%;    
    font-size:14px;    
}
#DigitalEdition a
{
    display:inline;
    font-size:12px;    
    font-weight:bold;
}
/*Image Gallery Webpart*/
#ImageGallery, #ProductPartsSearch
{
    float:left;
    position:relative;
    background-color:White;
    margin: 0 0 13px 0;
    padding: 10px 20px 10px 20px;    
    width:573px;        
}
#ProductPartsSearch {color:White;}
#ProductPartsSearch p {margin: 0 0 3px 0;}
#ImageGallery {font-size:14px;}
#ProductPartsSearch_TextBox { width:350px;}
#ImageGallery .left, #CourseListingHead .left, #ReviewListingHead .left,
#CourseListingSubHead .left, #CourseListingTail .left, #ReviewListingTail .left,
#ListingHead .left, #NewsListingSubHead .left, #NewsListingTail .left, #SearchListingBody .left,
#RSSFeed .left, .left
{
    float:left;    
}
#ImageGallery .right, #CourseListingHead .right, #NewsListingSubHead .right,
#CourseListingSubHead .right, #CourseListingTail .right, #NewsListingTail .right,
#ReviewListingHead .right, #ReviewListingTail .right, #ListingHead .right, #SearchListingBody .right, .right
{
    float:right;    
}
#NewsListingTail .left, #NewsListingTail .right, .margintop { margin-top:10px; }
.UploadProfile {float:left; width:80%;}
.CompanyOverlayClose {width:20%; float:right; text-align:right;}
#divValidate, .divValidate {color:Red; margin-top:5px; clear:both;}
/* Top Stories Web Part on N&A - Step Carousel */
.TopStories_Selector 
{
    float:right;
    padding: 3px 0 0 0;    
}
.TopStories_Selector a
{
    color:#7D1E08;
    font-size:13px;
}
.TopStories_Selector a:hover
{
    color:#7D1E08;
    font-weight:bold;    
}
.topstories_step_img
{
    float:left;
    position:relative;
    padding: 0 10px 0 0;
}
.topstories_step_content, .topstories_step_content_news, .eelife_step_content 
{    
    float:left;
    position:relative;    
    font-weight:bold;
    width:333px;
}
.eelife_step_content {width:220px;}
.topstories_step_content_news {
width:351px;
}
.topstories_step_coment_news {
width:351px; float:left; position:relative;
}
.white {color:White;}
.topstories_specialcov 
{
    width:538px;
    padding: 0 35px 0 35px;
    color:#4a4a48;
    text-align:center;
    font-weight:bold;
}
p.footer_line 
{
    height:1px;    
    width:100%;    
    clear:both;
    margin:5px 0 0 0;        
    background-color:#7d7d7d;
}
/*NewsAnalysisViewPage Template & Design */
#TemplateViewPage 
{
    float:left;
    position:relative;
    background-color:white;
    padding: 0 20px 0 20px;
    margin: 0 0 13px 0;
    width:573px;  
}
#TemplateViewPage  { padding-bottom /*\**/: 9px\9 } /*IE8 Hack*/
#TemplateViewPage  { *padding-bottom: 0px; }/*IE7 Fix on IE8 Hack */    
.TemplateViewPageColumns 
{
    float:left;
    position:relative;
    width:281px;
}
#TemplateViewPageFirstColumn, #TemplateViewPageSecondColumn
{
    width:276px;
    padding: 10px 10px 10px 0;    
}
/* News&Analysis Assymterical Template CSS */
#TemplateViewPageFirstColumnNews, .TemplateViewPageFirstColumnNews {  padding:0 5px 10px 0;} 
#TemplateViewPageSecondColumnNews, .TemplateViewPageSecondColumnNews { padding:0 0 10px 5px;} 
#TemplateViewPageFirstColumnNews .content .left, .TemplateViewPageFirstColumnNews .content .left { width:85px; padding:0 5px 5px 0; float:left; }
#TemplateViewPageFirstColumnNews .content .right, .TemplateViewPageFirstColumnNews .content .right { width:268px; padding:0 5px 5px 0; float:left; }
#TemplateViewPageFirstColumnNews .content .rightwImg, .TemplateViewPageFirstColumnNews .content .rightwImg { width:176px; padding:0 5px 5px 0; float:left; }
#TemplateViewPageFirstColumnNews .rightSM, .TemplateViewPageFirstColumnNews .rightSM {float:left; /*padding: 0 5px 0 5px;*/ width:320px;}
/* News&analysis Webpart CSS*/
#NewsAnalysisOpinion {padding: 10px 0 0 0; font-size:12px;}
#NewsAnalysisOpinion .title {font-size:13px;}
#NewsAnalysisOpinion .img {float:left; width:87px; padding: 0 5px 10px 0;}
#NewsAnalysisOpinion .text {float:left; margin: 0 0 10px 0;}
#NewsAnalysisOpinion .textImg {float:left; width:480px; margin: 0 0 10px 0;}
.InnerTemplateViewPage, .InnerTemplateViewPageDesignBlue, #ElectronicsCompanyDirectory
{
    float:left;
    position:relative;
    clear:both;    
    width:100%;
}
#ElectronicsCompanyDirectory {
    color:White;
    margin: 6px 0 0 0;
    padding: 5px;
    width: 266px;
    font-size:11px;
}
#ElectronicsCompanyDirectory div { padding: 0 0 3px 0;}
#ElectronicsCompanyDirectory p, #ElectronicsCompanyDirectorySide p { padding: 3px 0 0 0;}
#ElectronicsCompanyDirectory p a, #ElectronicsCompanyDirectorySide p a {color:White; text-decoration:underline;}
#ElectronicsCompanyDirectory select, #ElectronicsCompanyDirectory input#SearchCompanyDirectory_TextBox {width:200px; margin-bottom:3px;}
#ElectronicsCompanyDirectorySide select, #ElectronicsCompanyDirectorySide input#searchText {width:200px; margin-bottom:8px;}
#ElectronicsCompanyDirectorySide input#btnSearch {margin-bottom:6px;}
/*design blue specific */
.InnerTemplateViewPageDesignBlue 
{
    background-color:#f1f6fc;
    padding:10px 5px 10px 5px;
    margin: 10px 0 0 0;
    width:266px;
}
.InnerTemplateViewPageDesignBlue .left
{
    float:left;
    position:relative;
    padding: 0 5px 0 0;
}
.InnerTemplateViewPageDesignBlue .right
{
    float:left;
    position:relative;   
    width:131px; 
}
/*end design blue specific */
.InnerTemplateViewPage .left, .ListingsHead .left
{
    float:left;
    font-size:14px;
    font-weight:bold;  
    width:80%;      
}
.InnerTemplateViewPage .right, .ListingsHead .right
{
    float:right;        
}
.InnerTemplateViewPage .content, .InnerTemplateViewPage .content_blogs
{
    clear:both;
    padding: 0 0 0 0;        
}
.InnerTemplateViewPage .content .contentNoPad { padding:0px; clear:both; font-size:11px;}
.InnerTemplateViewPage .content_blogs p {padding-bottom:5px;}
.TemplateShortArticle
{
    font-size:12px;    
    width:95%;       
    float:left;    
    margin: 0 0 5px 0;
}
.InnerTemplateViewPage .content .left, .contentDesignIndustry .left
{
    float:left; 
    width:87px;           
    padding: 0 5px 0 0;    
}
.InnerTemplateViewPage .content .right, .contentDesignIndustry .right
{
    float:right;     
    width:184px;
    padding: 0 0 10px 0;    
}
.InnerTemplateViewPage .content .right140, .contentDesignIndustry .right140
{
    float:right;     
    width:140px;
    padding: 0 0 10px 0;    
}
.InnerTemplateViewPage .text { padding: 0 0 10px 0;}
.InnerTemplateViewPage .burgendy, .InnerTemplateViewPage .general, ##NewsAnalysisOpinion .burgendy 
{
    clear:both;    
    padding: 0 0 0 0;    
}
#NewsAnalysisOpinion .burgendy a, .InnerTemplateViewPage .burgendy a {color:#7d1e08; font-weight:bold;}
#NewsAnalysisOpinion .burgendy a, #NewsAnalysisOpinion .Red_color a {font-size:12px;}
.InnerTemplateViewPage .general a {color:#C4161C; font-weight:bold;}
.InnerTemplateViewPage .Products_Color a {color:#d55105; font-weight:bold;}

.InnerTemplateViewPage .content .leftSM 
{
    float:left; 
    width:35px;               
    padding: 0 5px 0 0;   
}
.NewsAnalysisPageTemplate .content .rightSM
{
    float:right;       
    width:493px;        
}
.InnerTemplateViewPage .content .leftSM2 { float:left;}
.InnerTemplateViewPage .content .rightSM2 {width:236px; float:right;}
.InnerTemplateViewPage .content .leftLG, .MessageBoards .leftLG
{
    float:left; 
    width:75px;           
    margin: 0 0 10px 0;  
    padding: 0 5px 0 0;  
}
.MessageBoards .right {
    float:left; width: 355px;
}
.InnerTemplateViewPage .content .rightLG
{
    float:right;
    font-size:11px;    
    width:190px;    
    margin: 0 0 5px 0;
}
.InnerTemplateViewPage .content .rightSM
{
    float:left;    
    width:236px;        
}
.NewsAnalysisPageTemplate .InnerTemplateViewPage .content .rightLG
{
    float:right;
    font-size:12px;    
    width:493px;    
    margin: 0 0 10px 0;
}
.contentDesignIndustry, .contentSourceCode
{    
    clear:both;
}
.contentDesignIndustry p, .contentSourceCode p
{
    padding-bottom:5px;    
}
.contentDesignIndustry p a, .contentSourceCode p a
{
    font-size:11px; /*color:#2358B8;*/
}
.contentDesignIndustry span
{
    color:#333333;
    font-weight:bold;
}
.contentSourceCode .left 
{
    float:left;
    padding: 0 15px 0 0;
}
.SourceCode_Searchby_Table_title 
{
    padding: 3px 3px 3px 0px;
    font-size:11px;
}
.SourceCodeTextBox 
{       
    margin:0;    
    width:250px;
}
table#SourceCode_Results_Table th 
{
    background-color:#2358B8;
    color:White;
    font-weight:bold;
}
/* Tech Papers Webinars Webpart */
#TechPapersWebinars, #NewsletterSubscribe
{
    float:left;
    position:relative;
    background-color:white;
    margin: 0 0 13px 0;
    padding: 10px 20px 10px 20px;    
    width:573px;            
}
#TechPapersWebinars { padding-bottom /*\**/: 24px\9 } /*IE8 Hack*/
#TechPapersWebinars { *padding-bottom: 10px; }/*IE7 Fix on IE8 Hack */    
#NewsletterSubscribe {padding-bottom:0px; height:170px;}
#jMonthCalendar 
{
    float:left;
    position:relative;  
    background-color:White;  
}
.TPW_container 
{
    float:left;
    width:286px;    
    font-size:11px;
}
.TPW_container b { font-size:12px; }
/* Virtual Conference Ad Webpart -*/
#VirtualConferenceAd 
{
    position:relative;
    float:left;
    text-align:center;
    background-color:#299D91;
    background-repeat:repeat-x;         
    width:296px;
    margin: 0 0 13px 0;
    padding: 10px 20px 10px 20px;    
    color:White;        
}
/* Ed&Training Landing Page */
.ListingsHead, .ListingsTail
{
    background-color:White;
    width:573px;      
    float:left;
    position:relative;
    padding:10px 20px 5px 20px;
    color:#007000;    
}
.ListingsTail 
{
    margin: 0 0 13px 0;
}
.ListingsTail a, .ListingsTail a:link, .ListingsTail a:hover, .ListingsTail a:visited
{
    color:#007000;
    font-weight:bold;    
    padding: 0 20px 0 0;      
}
.ListingsBody, #CourseListingBody, #ReviewListingBody, #ListingBody, #BlogListingBody,
#ListingBodySplit, #SearchListingBody, .BlogListingBody
{
    background-color:#f2f2f2;            
    float:left;
    position:relative;
    padding:10px 20px 5px 20px;
    width:573px;
    z-index:5;
}
#SearchListingBody { background-color:White; padding:10px 10px 5px 10px; width:455px;}
.ListingBodySplitColumns 
{
    position:relative;
    float:left;
    padding: 0 10px 10px 0;
    width:207px;    
}
#CourseListingBody, #ReviewListingBody, #ListingBody, #BlogListingBody,
#ListingBodySplit, .BlogListingBody
{
    width:435px;    
}
#ReviewListingBody p, #ListingBody p, .designmorelistings p, .newsmorelistings p
{    
    padding: 0 0 3px 0;
}
#ReviewListingBody div
{
    font-size:12px;
    font-weight:bold;    
    margin: 0 5px 5px 0;
}
.commentleft
{
    float:left;
    position:relative;    
    padding:0 5px 5px 0;
}
.commentright 
{
    float:right;
    position:relative;
    font-size:10px;
    font-weight:normal;
    width:300px;
    padding:0 0 8px 0;
}
.blogcommentright 
{
    float:left;
    position:relative;     
    width:355px;
    padding:0 0 5px 0;
}
#BlogListingBody p, .blogcommentright p {padding-bottom:5px;}
#FundamentalsListingBody
{
    background-color:#f2f2f2;
    background-image:url(../Images/Misc/fundamentalstable.jpg);        
    background-repeat:repeat-y;           
    float:left;
    position:relative;
    padding:10px 20px 5px 20px;
    width:435px;
}
/*id for bloggroup.ascx / class for blogcollection.ascx - long story, don't ask*/
#BlogListingBody .BlogLogic_Pic, .BlogListingBody .BlogLogic_Pic {
    width:134px; padding:0 5px 5px 0; float:left; position:relative;
}
#BlogListingBody .BlogLogic_Text, .BlogListingBody .BlogLogic_Text {
    width:296px; float:left; position:relative; padding-bottom:5px;
}
/* Template on EdTraining Landing Page */
#ForumsTwitterEdTrainingTemplate .left 
{
    float:left;
    position:relative;
    width:200px;
}
#CourseListingHead, #CourseListingTail, #NewsListingTail,
#ReviewListingHead, #ReviewListingTail,
#ListingHead, #ListingTail
{
    background-color:White;
    width:435px;      
    float:left;
    position:relative;
    padding:10px 20px 5px 20px;       
    font-size:11px;               
}
#CourseListingHead, #CourseListingTail 
{
    color:#007000;
}
#ReviewListingHead, #ReviewListingTail 
{
    color:#d55105;
}
#CourseListingSubHead, #NewsListingSubHead, #SearchListingSubHead 
{
    background-color:White;    
    width:435px;      
    float:left;
    position:relative;
    padding:0 20px 5px 20px;  
    font-size:11px; 
    z-index:10;            
}
#SearchListingSubHead {
padding:15px 20px 15px 20px; color:White;
}
#CourseListingSubHead div select
{
    font-size:11px;
}
#CourseListingSubHead .left, #CourseListingSubHead .right 
{
    padding-top: 5px;
    height:20px;
}
#CarouselThreeColumn /* 3 column carousel - 3rd level EdTraining Pages */
{    
    float:left;
    position:relative;
    clear:both;
    background-image:url(../Images/Sprites/background-sprite.png);background-position:0px -1837px;        
    background-color:#9c9ea5;
    background-repeat:repeat-x;
    width:475px;
    height:228px;
    margin: 0 0 13px 0;     
    padding: 0 0 0 0;    
    
}

.comments1{
    border: medium solid;
    border-width:thin;    
    border-bottom:thin gray;
    border-left:none;
    border-right:none;       
}
.comments{
    width:390px;    
    background-color:White; 
    padding: 10px 10px 15px 15px;
    margin: 10px 0 10px 10px;
    position:relative; float:left;
}
#post-comments { float:left; position:relative;}
#post-comments p {margin-left:10px;}
#post-comments textarea {width:415px;}
.MessageBoards textarea {width:370px;}
.MessageBoards textarea#ContentItem_Headline { height:40px; }
.MessageBoards textarea#ContentItem_ShortSummary { height:100px; } 
textarea { resize: none;} /*overrides Chrome/Safari default behavior */
#comments { float:left; position:relative; }
#comments p
{
    margin:5px;    
}
#comments p a
{
    color:Red;
}
.user1
{
margin:5px;
margin-left:0px;
border:2px solid gray;
float:left;
width:70px;
height:30px;
}

.description
{   
   padding-top:5px;
   float:left; 
   margin-left:5px;
   width:300px;
}
.user
{
    float:left;
    margin: 0 5px 10px 0;   
    clear:both; 
    font-size:10px;
    padding-top:5px;
    width:75px;
}
.username
{
    margin-top:5px;
    float:left;
    font-weight:bold;
    color:#476CB8;
    margin-left:5px;
}
.description1
{    
    float:left;   
    
    margin-left:5px;

}
.childcomments
{
    position:relative; float:left;
    border:none;
    border-top: solid thin #a5a6a5;    
    margin-left:20px; 
    margin-top:5px;    
    width:370px;  
}

.nav a
{
    padding: 0 5px;
    color: #005BD8;
}

.nav a.highlight {
color:#000000;
font-weight:bold;
}

.nav {
background:none repeat scroll 0 0;
border-top:1px solid #999999;
padding:5px;
}
.WebinarStatus 
{
    padding:5px 15px 5px 15px;
    background-color:White;
    border:1px solid #c5c5c5;
    float:right;
    width:205px;
}
.WebinarStatus p 
{
    padding:0 0 5px 0;
}
/*DHTML OVERLAYS*/
.CompanyOverlay, .SearchOverlay, .SearchOverlay3, .SearchOverlay2, .RSS_OverlayContent, .UploadImg_OverlayContent
{
    display:none; 
    margin: 0px; 
    width: 415px;     
    border: 1px solid black;     
    position: absolute; 
    z-index:10; 
    background-color:white; 
    padding: 5px 10px 5px 10px;
} 
.UploadImg_OverlayContent
{
    width: 310px;      
} 
.SearchOverlay, .SearchOverlay3, .SearchOverlay2 {width: 553px;}  
.RSS_OverlayContent {width:551px; border-top:none;}
/*SearchResults*/
#SearchListingHead, #SearchListingTail, #CompSearchListingTail
{
    background-color:White;
    width:573px;      
    float:left;
    position:relative;
    padding:10px 20px 5px 20px;                          
} 
#SearchListingHead
{
    z-index:10;
}
#SearchListingTail 
{
    height:35px;
}
#CompSearchListingTail {margin: 0 0 13px 0;}
.hasDatepicker
{
    width:70px;
}
/*EVENTS*/
#EETimesEvents, #IndustryEvents 
{
    width:260px;
    position:relative;
    float:left; 
    padding:10px 20px 10px 20px; 
    color:White;  
}
#EETimesEvents p, #IndustryEvents p
{
   padding: 0 0 5px 0;
}
#IndustryEvents 
{
    background-color:#999999;        
    margin: 13px 0 13px 0;        
    /*IE7/8 FIX*margin: 13px 0 13px 0;*/
    _margin: 0 0 13px 0;
}
#EETimesEvents 
{
    background-color:#99cccc;
    _margin: 0 13px 13px 0;
    margin: 13px 13px 13px 0;    
    /*IE7/8 FIX*margin: 13px 13px 13px 0;*/
    _margin: 0 13px 13px 0;
}
/*EELife*/
#EELife_Carousel, #TopVideo 
{
    width:300px;
    height:228px;    
    position:relative;
    float:left;     
    margin: 0 0 13px 0;
}
#TopVideo {background-color:White;}
#EELife_Carousel 
{
    width:260px;
    height:208px; 
    background-image:url(../Images/Sprites/background-sprite.png);background-position:0px -1837px;        
    background-color:#9c9ea5;
    background-repeat:repeat-x;
    margin-right:13px;
    padding:10px 20px 10px 20px;            
}
#SideVideo {
    width:336px;
    position:relative;
    float:left;     
    margin: 0 0 13px 0;    
}
#SideVideoTable1 td, #SideVideoTable2 td {padding:0px; margin:0px;}
#EELifeBlurb {
    width:296px;
    margin: 0 0 13px 0;
    padding:10px 20px 10px 20px;     
    color:White;
    background-color:#c41616;
    position:relative;
    float:left;
}
#upgradeflash {
    background-image:url(../Images/Misc/upgrade_flash_player.gif); 
    width:314px;
    height:200px;      
}
#upgradeflashEElife {
    background-image:url(../Images/Misc/get_flash.png); 
    width:251px;
    height:151px;      
}
/* SignedSuccess */
#SignedSuccessTop {
background-image:url(../Images/Misc/signsucess_top.png);    
    background-repeat:no-repeat;    
    height:27px;
    clear:both;                      
    position:relative;
    width:884px;
    margin-left:auto; margin-right:auto; margin-top:13px;
}
#SignedSuccessBottom {
background-image:url(../Images/Misc/signsucess_bottom.png);    
    background-repeat:no-repeat;    
    height:27px;
    clear:both;                      
    position:relative;
    width:884px;    
}
.SignedSuccess
{
    color:#000000;   
}
.SignedSuccess input[type="submit"]
{
    color:#C4161C;    
    font-size:14px;
    margin: 10px 0 0 0;
}
.SignedSuccess h4
{
    color:#C4161C;
    font-size:14px;
    font-weight:bold;
    margin: 0 0 5px 0;
}
.SignedSuccessHead
{
    color:#C4161C;
}

.SignedSuccessMiddile
{
    color:#C4161C;
    font-size:13px;
    font-weight:bold;
    padding-top:10px;
}

.SignedSuccess a 
{
	cursor:hand;
	 color: #1251A1;
	text-decoration: underline;
}
.SignedSuccess .SignedSuccess a:link
{
    cursor:hand;
    color: #1251A1;
    text-decoration:underline ;    
}
.SignedSuccess a:visited
{
    color: #1251A1;
}
.SignedSuccess a:hover, a:active
{
    color: #1251A1;
    text-decoration: none;
}
.ListingsTailProduct, .ListingsHeadProduct
{
    background-color:White;
    width:573px;      
    float:left;
    position:relative;
    padding:10px 20px 5px 20px;
    color:#d55105;    
}
.ListingsTailProduct a, .ListingsTailProduct a:link, .ListingsTailProduct a:hover, .ListingsTailProduct a:visited
{
    color:#d55105; 
    font-weight:bold;    
    padding: 0 20px 0 0;  
    text-decoration:underline;    
}
.twoColumn_Left_Company
{
	float:left; 
	width:100px;
}
.twoColumn_Right_Company
{
	float:right;
	width:473px;
}
.leftMemberCompany { float:left; max-width:343px;}
.rightMemberCompany { float:right; background-color:White; padding:5px 15px 5px 15px; max-width:200px;}
.oneColumn_Left_Company
{
	float:left;
	width:563px;
	background-color:White;
	padding: 5px;
	margin-top:10px;
}
table#RelatedLinksTable td, table#YourAccountProfile_table td  {font-size:12px;}
.twoColumn_Left_NewsletterSubscribe
{
	float:left; 
	width:181px;
	padding: 0 15px 0 0;
}
.twoColumn_Right_NewsletterSubscribe
{
	float:left;
	width:377px;
}
#NewsletterSubscribe h2, #NewsletterSubscribe h4 {padding-bottom:15px;}
table#NewsletterPicker { margin-left:auto; margin-right:auto; width:500px;}
table#NewsletterPicker td {font-size:12px;} 
/* Account Settings Manage Emails */
#ManageEmails 
{
    padding:0px;    
}
.ManageEmails_Info_List_Row 
{
	float: left; 
	margin: 0; 
	padding: 0; 
	width: 100%;
}
.ManageEmails_Info_List_Col 
{
	float: left; 
	width: 140px; 
	margin: 0 3px 0 0; 
	padding: 0;
}
.ManageEmails_Info_List_Col_Bold 
{
	float: left; 
	font-weight:bold; 
	width: 140px; 
	margin: 0 3px 0 0; 
	padding: 0;
}
.ManageEmails_Info_List_Col1 
{
	float: left; 
	width: 105px; 
	margin: 0 3px 0 0; 
	padding: 0;
}
.ManageEmails_Info_List_Col1_Bold 
{
	float: left;  
	font-weight:bold; 
	width: 105px; 
	margin: 0 3px 0 0; 
	padding: 0;
}
.ManageEmails_Info_List_Col2 
{
	float: left; 
	width: 200px; 
	margin: 0 3px 0 0; 
	padding: 0;
}
.ManageEmails_Info_List_Col2_Bold 
{
	float: left;  
	font-weight:bold; 
	width: 200px; 
	margin: 0 3px 0 0; 
	padding: 0;
}
.ManageEmails_Info_List_Col3 
{
	float: left; 
	width: 220px; 
	margin: 0 3px 0 0; 
	padding: 0;
}
.ManageEmails_Info_List_Col3_Bold 
{
	float: left;  
	font-weight:bold; 
	width: 220px; 
	margin: 0 3px 0 0; 
	padding: 0;
}
.ManageMagazine_Info_List_Col_Bold 
{
	float: left; 
	font-weight:bold; 
	width: 310px; 
	margin: 0 3px 0 0; 
	padding: 0;
}
.ManageMagazineText 
{
    float:left;
    width:200px;
    padding: 3px 0 0 0;    
    text-align:right;
    margin-right:5px;
}
.AccountSttings a 
{
	cursor:hand;
	text-decoration: underline;
	color:#C4161C;
}
.AccountSttings  a:link
{
    cursor:hand;
    text-decoration:underline ;  
    color:#C4161C;  
}
.AccountSttings a:hover, .AccountSttings a:active, .AccountSttings a:visited
{
    text-decoration: none;
    color:#C4161C;
}
.AccountSttings
{
    color:#000000;   
}
.AccountSttings input[type="submit"]
{
    color:#C4161C;    
    font-size:14px;
    margin: 10px 0 0 0;
}
.AccountSttings h1
{
    color:#C4161C;
    font-size:18px;
    font-weight:bold;
    margin: 0 0 5px 0;
}

.AccountSttings_Text
{
    color:#C4161C;   
}

.AccountSttings input[type="text"]
{
    width:225px;
    margin: 0 0 5px 0;
    padding: 1px 2px 1px 2px;    
}
.AccountSttings select
{
    width:246px;
    margin: 0 0 5px 0;
    padding: 1px 2px 1px 2px;    
}
.Reg_Required1
{
    float:left;  
    color:#C4161C;  
    font-size:10px;
}
.NewAroundTheWorldPic {
    float:left;    
    width:135px;
}
.NewAroundTheWorldInfo {
    float:left;    
    width:438px;
}
.NewAroundTheWorldInfo p { padding: 0 0 3px 0;}
table#NewsAroundTheWorldTable td {padding:0; font-weight:bold;}
table#NewsAroundTheWorldTable td.ender {padding-bottom:5px; font-weight:normal;}
table#NewsAroundTheWorldTable td a {color:#7D1E08;}
table#BrowseCompanyDirectory td { font-size:12px;}
table#MostPopTable td { font-size:12px; padding: 2px 3px 2px 0;}
.MyAccountText 
{    
    float:left;
    margin: 0 5px 0 0;    
    position:relative;
    padding: 10px 0 0 0;
}
.MyAccountImg {
    float:right;
    margin: 0 40px 0 0;
    font-size:11px;
    text-align:left;
    width:300px;
}
.DigitalVersionImg {
    float:left;
    padding: 0 5px 0 0;
}
.DigitalVersionText {
    float:left;
    width:273px;
}
.EmbeddedVersionImg {
    float:left;
    padding: 0 5px 0 0;
}
.EmbeddedVersionText {
    float:left;
    width:273px;
}
table#ManageMazaginesUS td {
vertical-align:top; font-size:12px; padding:5px;
}
table#ManageMazaginesUS td.tabletopspacing {
padding-top:12px;
}
#SearchListingBody table td {font-size:12px;border-bottom: 1px #6699CC dotted;padding:5px 0 5px 0;}
#SearchListingBody table tr.PartsTier1 td {border-bottom:none;}
#SearchListingBody table tr {border-bottom:1px solid black;}
#SearchListingBody table {margin-bottom:15px;}
.PartsTier1 {background-color:#fdefe3; color:#c41616; font-weight:bold;}
.PartsTier2 {color:Black; font-weight:bold;}
.PartsTier3 {font-weight:bold;}
#SearchListingBody table#SummaryDetail td {border-bottom:none;}
.SummaryDataInputs {font-weight:bold; padding-right:5px; width:115px;}
#RSSFeed
{
    float:left;
    position:relative;
    background-color:White;
    margin: 0 0 13px 0;
    padding: 10px 20px 10px 20px;    
    width:573px;           
}
#RSSFeed .left { padding-right:10px;}
#RSSFeed p { padding: 5px 0 0 0;}
#RSSFeed table {margin-top:6px;}
#RSSFeed table td { font-size:12px; padding: 1px 3px 1px 3px;}
#RSSFeed table td.inactive {color:#666;}
#RSSFeed table th {font-size:14px; padding:5px 0 0 3px;} 
#RSSFeed ul {padding: 5px 0 5px 0;}
#RSSFeed ul li {margin-left:20px;}
#RSSFeed hr {margin-bottom:0px;}
#RSSFeed .CompanyOverlayClose {padding-top:0px;}
/*Article Layout*/
/*#contentpages {width:433px;}*/
#contentpages, .contentpages {line-height:135%; word-wrap: break-word;}
#contentpages p, .contentpages p {padding:0 0 5px 0;}
#contentpages br, .contentpages br {height:5px;}
#contentpages img, .contentpages img {padding:5px;}

.paidicon {float:left; position:relative;}
.paidsubscriptions {float:right; position:relative; padding-top:5px; width:750px;}
#MagazineSubscriptionForm_Table td {font-size:12px;}

.RecentNewsBG {border-style:solid; border-color:#737373; background-color:#737373; color:#ffffff;}
#twoColumn_left.sitemap {margin-top:40px;}
.sitemap span {font-size:14px; font-weight:bold; padding: 0 15px 0 15px; }

/* Conductor Ad Webpart */
#ConductorBox
{    
    position:relative;
    float:left;
    background-color:white;
    width:300px;
    /*margin: 5px 0px 13px 18px;*/
    margin: 5px 0px 13px 0px;
    padding: 10px 18px 10px 18px;        
}
/******************BEGIN CAROUSELS***************/
/* ALL BELTS THE SAME */
.stepcarousel .belt, 
.topstories_stepcarousel .belt, 
.stepcarousel_imagegallery .belt,
.eelife_stepcarousel .belt,
.stepcarousel_threecol .belt{
position: absolute; /*leave this value alone*/
left: 0;
top: 0;
}

/*HOMEPAGE* ***1*** & edtraining landing*/
#gallerybutton, #ajax-loader {
position: relative; /*leave this value alone*/
width: 550px; /*Width of Carousel Viewer itself*/
margin-top:25px;
margin-left:auto;
margin-right:auto;
}
#gallerybutton.doubleprong, #ajax-loader.doubleprong {
width: 440px; /*Width of Carousel Viewer itself*/
}
#gallerybutton.eelifecat, #ajax-loader.eelifecat {
width: 260px; /*Width of Carousel Viewer itself*/
}
#ajax-loader { text-align:center; margin-top:60px; }
.stepcarousel{
position: absolute; /*leave this value alone*/
float:left;
overflow: scroll; /*leave this value alone*/
width: 510px; /*Width of Carousel Viewer itself*/
height: 155px; /*Height should enough to fit largest content's height*/
text-align:center;
margin-left:20px;
*margin-left:0px;
}
.stepcarousel .panel{
float: left; /*leave this value alone*/
/*overflow: hidden; clip content that go outside dimensions of holding panel DIV*/
margin: 0; /*margin around each panel*/
width: 170px; /*Width of each panel holding each content. If removed, widths should be individually defined on each content DIV then. */
height:155px;
color:White;
text-align:center;
font-weight:bold;
font-size:10px;
}
/*New&Analysis Top Stories Webpart* ***2***/
.topstories_stepcarousel{
position: absolute; /*leave this value alone*/
float:left;
overflow: scroll; /*leave this value alone*/
width: 500px; /*Width of Carousel Viewer itself*/
height: 120px; /*Height should enough to fit largest content's height*/
text-align:center;
margin-left:20px;
*margin-left:0px;
}

.topstories_stepcarousel .panel{
float: left; /*leave this value alone*/
overflow: hidden; /*clip content that go outside dimensions of holding panel DIV*/
margin: 0 5px 0 5px; /*margin around each panel*/
width: 500px; /*Width of each panel holding each content. If removed, widths should be individually defined on each content DIV then. */
height:150px;
text-align:left;
}
/*New&Analysis Homepage Image Gallery Webpart* ***3***/
.stepcarousel_imagegallery{
position: relative; /*leave this value alone*/
overflow: scroll; /*leave this value alone*/
width: 515px; /*Width of Carousel Viewer itself*/
height: 100px; /*Height should enough to fit largest content's height*/
margin-top:30px;
margin-left:auto;
margin-right:auto;
text-align:center;
}

.stepcarousel_imagegallery .panel{
float: left; /*leave this value alone*/
overflow: hidden; /*clip content that go outside dimensions of holding panel DIV*/
margin: 0 5px 0 5px; /*margin around each panel*/
width: 97px; /*Width of each panel holding each content. If removed, widths should be individually defined on each content DIV then. */
height:100px;
color:White;
text-align:center;
font-weight:bold;
font-size:10px;
}
/* 3 Column Carousel */
.stepcarousel_threecol {
position: absolute; /*leave this value alone*/
float:left;
overflow: scroll; /*leave this value alone*/
width: 400px; /*Width of Carousel Viewer itself*/
height: 155px; /*Height should enough to fit largest content's height*/
text-align:center;
margin-left:20px;
*margin-left:0px;
}
.stepcarousel_threecol .panel{
float: left; /*leave this value alone*/
overflow: hidden; /*clip content that go outside dimensions of holding panel DIV*/
margin: 0 0 0 0; /*margin around each panel*/
width: 200px; /*Width of each panel holding each content. If removed, widths should be individually defined on each content DIV then. */
height:155px;
color:White;
text-align:center;
font-weight:bold;
font-size:10px;
}
.eelife_stepcarousel {
position: absolute; /*leave this value alone*/
width: 220px; /*Width of Carousel Viewer itself*/
height: 155px; /*Height should enough to fit largest content's height*/
margin-left:auto;
margin-right:auto;
text-align:center;
float:left;
margin-left:20px;
*margin-left:0px;
}
.eelife_stepcarousel .panel{
float: left; /*leave this value alone*/
overflow: hidden; /*clip content that go outside dimensions of holding panel DIV*/
margin: 0 0 0 0; /*margin around each panel*/
width: 220px; /*Width of each panel holding each content. If removed, widths should be individually defined on each content DIV then. */
height:155px;
color:Black;
text-align:center;
font-weight:bold;
font-size:12px;
}
div.showme {position:absolute; top:0px;	margin:0px; width:134px; height:70px; display:none; float:left; z-index:52; left:0; margin-left:13px; }
div.shadeTitle { background-image:url(../Images/Misc/shadeTitle.png); width:100%; height:30px;}
div.shadeBody { background-image:url(../Images/Misc/shadeBody.png); width:100%; height:40px; color:White;}
div.shadeTitle  {color:White; font-weight:bold; font-size:12px;}
.CarouselMainText { width:134px; padding-left:13px; line-height:1.2em;}
.CarouselText {line-height:1.2em;}
.CaourselMainText2Tier {width:134px; padding-left:33px;line-height:1.2em;}
.CarouselMainText a, .CaourselMainText2Tier a, div.shadeTitle a, div.shadeBody a { color:White;}
/******************END CAROUSELS***************/
/******************BEGIN RADSTYLE.CSS VIA THE CMS***************/
/* News headline and subhead */

.newsheadline {
 color: #990000;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 text-decoration: none;
 font-size: 16px;
}

.newssubhead {
 color: #90000;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 font-size: 13px;
}

/* EE Life headline and subhead */

.eelifeheadline {
 color: #cc0000;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 text-decoration: none;
 font-size: 16px;
}

.eelifesubhead {
 color: #cc0000;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 font-size: 13px;
}

/* Design headline and subhead */

.designheadline {
 color: #003399;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 text-decoration: none;
 font-size: 16px;
}

.designsubhead {
 color: #003399;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 font-size: 13px;
}

/* Products headline and subhead */

.prodheadline {
 color: #ff6600;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 text-decoration: none;
 font-size: 16px;
}

.prodsubhead {
 color: #ff6600;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 font-size: 13px;
}

/* Education headline and subhead */

.eduheadline {
 color: #006600;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 text-decoration: none;
 font-size: 16px;
}

.edusubhead {
 color: #006600;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 font-size: 13px;
}

/* Events headline and subhead */

.eventsheadline {
 color: #006666;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 text-decoration: none;
 font-size: 16px;
}

.eventssubhead {
 color: #006666;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 font-size: 13px;
}



/* Thesse styles will be the same for all sections */

.date {
 color: #666666;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 font-size: 11px;
}

.byline {
 color: #006699;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 text-decoration: underline;
 font-size: 11px;
}

.deck {
 color: #000000;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 font-size: 13px;
}

.bodytext {
 color: #000000;
 font-family: Arial, Helvetica, sans-serif;
 font-weight: bold;
 font-size: 13px;
}
/******************END RADSTYLE.CSS VIA THE CMS***************/
.confidential_steps {
    width:607px;
    margin-left:auto; margin-right:auto;
    border:1px solid black;
    background-color:#f2f2f2;
    margin-bottom:20px;    
    padding: 0 0 10px 0;    
    text-align:center;
}
.confidential_steps img, .confidential_activate img { padding-right:5px;}
.confidential_steps h1, .confidential_activate h1{    
    background-color:Black;
    color:White;
    font-size:24px;
    padding:5px 0;    
}
.confidential_activate h1{ text-align:center;}
.confidential_steps p {
    color:#C41616;
    padding:10px 0;        
    font-size:14px;
}
.confidential_activate .apply span {font-size:18px; color:#C41616;}
.confidential_steps a { font-size:16px;text-align:center;}
.confidential_activate {
    border:1px solid black;
    background-color:#f2f2f2;
    margin-bottom:10px;    
    padding: 0 0 10px 0;    
    width:886px;
    margin-left:auto;
    margin-right:auto;
    overflow:hidden;
    font-size:14px;
}
.confidential_activate p {    
    padding:10px;
    text-align:left;      
}
div.pdf {    
    float:left;
    width:150px;
    padding:0 0 0 10px;
}
div.apply {    
    float:right;
    width:716px; 
    padding:0 10px 0 0;    
}
div.line {line-height:28px;}
div.apply input[type="submit"] {
color:#C4161C;
font-size:14px;
}
.Confidential_Confirm p { margin:10px 0;}
.techonline {
background-image:url(../Images/Misc/techonline.png); background-repeat:no-repeat;
background-position: 95% 50%; 
}
#EETTIMES_Today_Edtraining, .techonline_sm {
background-image:url(../Images/Misc/techonline_sm.png); background-repeat:no-repeat;
background-position: 95% 50%; 
}
.SiliconExpert { position:relative; top:7px;}
------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=jquery-1.3.2.min.js
Content-Type: application/x-javascript; charset=utf-8; name=jquery-1.3.2.min.js
Content-Location: http://www.eetimes.com/StaticContent/v1/Scripts/jquery-1.3.2.min.js
Content-Transfer-Encoding: Base64

[encoded data, 90176 characters]
alF1ZXJ5KTs=

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=jquery.corner.js
Content-Type: application/x-javascript; charset=utf-8; name=jquery.corner.js
Content-Location: http://www.eetimes.com/StaticContent/v1/Scripts/jquery.corner.js
Content-Transfer-Encoding: Base64

[encoded data, 16256 characters]
bnMNCiAgICB9Ow0KDQp9KShqUXVlcnkpOw0K

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=Header.js
Content-Type: application/x-javascript; charset=utf-8; name=Header.js
Content-Location: http://www.eetimes.com/StaticContent/v1/Scripts/Header.js
Content-Transfer-Encoding: Base64

[encoded data, 22208 characters]
bmcoMCwgNTkpOw0KfQk=

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=s_code_remote_eetimes2.js
Content-Type: application/x-javascript; charset=utf-8; name=s_code_remote_eetimes2.js
Content-Location: http://www.eetimes.com/StaticContent/v1/Scripts/s_code_remote_eetimes2.js
Content-Transfer-Encoding: Base64

[encoded data, 40960 characters]
cyh1bixwZyxzcyl9DQoNCg==

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=print.css
Content-Type: text/css; charset=utf-8; name=print.css
Content-Location: http://www.eetimes.com/StaticContent/v1/CSS/print.css
Content-Transfer-Encoding: 8bit

﻿body {margin:0; padding:0; line-height: 1.4em; word-spacing:1px; letter-spacing:0.2px; font: 20px Arial, Helvetica,"Lucida Grande", serif; color: #000;}
#header_ad, #threeColumn_left, #threeColumn_right, #header_block .right, 
#menucontainer, #ReadersLikeThis, #LatestNews, #post-comments, 
#NNA_Comment, #RateTechPaper, #moreFinal, #comments, #contentdetail
{display:none;}
#header_title_tag, #subheader_title_img, #threeColumn_mid 
{display:block; margin:0; padding:0;}
#threeColumn_mid, #contentpages
{width:900px;}
------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=AC_OETags.js
Content-Type: application/x-javascript; charset=utf-8; name=AC_OETags.js
Content-Location: http://www.eetimes.com/StaticContent/v1/Scripts/AC_OETags.js
Content-Transfer-Encoding: Base64

[encoded data, 11392 characters]
IHJlcXVpcmVkUmV2aXNpb24pOw0KDQo=

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=k_button.css
Content-Type: text/css; charset=utf-8; name=k_button.css
Content-Location: http://cf.kampyle.com/k_button.css
Content-Transfer-Encoding: 8bit

.k_button_css_revision{background-image:'$Rev:12433 $';}#k_popup *{-moz-box-sizing:content-box !important;box-sizing:content-box !important;font-family:Arial;}#k_popup a img{border:0;display:inline;}#k_popup a{text-decoration:none;}#k_popup a:hover{color:#3882C3;text-decoration:underline;}#k_popup div{#float:none;}.k_float{z-index:9999999;position:fixed !important;position:absolute;cursor:pointer;}#kampylink img{border:0;display:block;}.k_top{top:0px;_top:expression(eval(document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.scrollTop :document.body.scrollTop);}.k_top_sl{top:15px;_top:expression(eval(document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.scrollTop + 15 :document.body.scrollTop + 15);}.k_top_hl_sl{top:100px;_top:expression(eval(document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.scrollTop + 100 :document.body.scrollTop + 100);}.k_top_hl{top:85px;_top:expression(eval(document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.scrollTop + 85 :document.body.scrollTop + 85);}.k_bottom{bottom:0px;_top:expression(eval(document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.scrollTop + (document.documentElement.clientHeight-this.clientHeight) - 1 :document.body.scrollTop + (document.body.clientHeight-this.clientHeight) - 1);}.k_bottom_sl{bottom:15px;_top:expression(eval(document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.scrollTop + (document.documentElement.clientHeight-this.clientHeight) - 16 :document.body.scrollTop + (document.body.clientHeight-this.clientHeight) - 16 );}.k_bottom_hl_sl{bottom:99px;_top:expression(eval(document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.scrollTop + (document.documentElement.clientHeight-this.clientHeight) - 100 :document.body.scrollTop + (document.body.clientHeight-this.clientHeight) - 100 );}.k_bottom_hl{bottom:84px;_top:expression(eval(document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.scrollTop + (document.documentElement.clientHeight-this.clientHeight) - 85 :document.body.scrollTop + (document.body.clientHeight-this.clientHeight) - 85 );}.k_right{right:0px;}.k_left{left:0px;}#k_popup{ position:absolute;top:0;left:0;z-index :9999;font-family :'arial';font-weight :bold;display: none;border:1px solid black;}#k_pop_header{ text-align:center;font-size:20px;padding:10px;font-weight:bolder;border:1px solid #fff;background: white;margin:10px 9px 0;}#k_pop_question_container{ font-size:11px;padding:10px 0 10px 0;text-align:center;border:1px solid black;margin:10px 9px 0;background: white;}#k_pop_yes_no{ margin:0 auto;width:138px;padding:10px 0 0 0;}#k_pop_yes_btn,#k_pop_no_btn{ border-color:#D9DFEA #0E1F5B #0E1F5B #D9DFEA;border-style:solid;border-width:1px;padding:2px 10px 3px;text-align:center;font-size:11px;font-weight:bold;text-decoration: none;width:40px;cursor:pointer;color: white;}#k_pop_branding{ font-size:11px;padding:3px 0;text-align: right;}#k_pop_branding a{ color:#3882C3;direction:ltr;text-align:right;font-weight:normal;margin-right:10px }#k_pop_whatisthis{ float: left;padding:1px 0 0 9px;}#k_pop_remind{ text-decoration: underline;font-weight:normal;cursor: pointer;}#k_close_button{color:gray;border:1px solid gray;display: none;width:11px;height:16px;font-size:12px;text-align:center;}.kc_top{top:80px;_top:expression(eval(document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.scrollTop + 80 :document.body.scrollTop + 80);}.kc_bottom{bottom:80px;_top:expression(eval(document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.scrollTop + (document.documentElement.clientHeight-this.clientHeight) - 80 :document.body.scrollTop + (document.body.clientHeight-this.clientHeight) - 80);}.kc_right{right:10px;}.kc_left{left:10px;}.kc_top_sl{top:95px;_top:expression(eval(document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.scrollTop + 95 :document.body.scrollTop + 95);}.kc_bottom_sl{bottom:95px;_top:expression(eval(document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.scrollTop + (document.documentElement.clientHeight-this.clientHeight) - 95 :document.body.scrollTop + (document.body.clientHeight-this.clientHeight) - 95);}#k_slogan{font-family:'Trebuchet MS',Arial,Helvetica,sans-serif;font-size:9px;color:#666;margin-left:2px;margin-right:2px;cursor:default;}#k_slogan a{font-family:'Trebuchet MS',Arial,Helvetica,sans-serif;font-size:9px;color:#666;text-decoration: none;cursor:default;}
------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=header_title.png
Content-Type: image/png; name=header_title.png
Content-Location: http://www.eetimes.com/StaticContent/v1/Images/Header/header_title.png
Content-Transfer-Encoding: Base64

iVBORw0KGgoAAAANSUhEUgAAAMEAAABKBAMAAADwGy20AAAAG1BMVEX///8AAAAz
MjJwf5R5eXm7urrEFhzfg4br09OxB0PtAAAAAXRSTlMAQObYZgAAApBJREFUGNPt
j8GOokAQhmsdSPoohEk8gtHEIwkvAEYTj2CGxCfY7NHTOsdmou4+9nZVdbc4h50B
m8Nk+I1df0H1/1EA/5NfwsCaxCNhJIyEkTASRsJIGAkj4bsRRK0kO4b8/tnS8XrX
KUIVtPQ8wbP8IPEpSyHL0qcsU3YYgvqlVFVJvyghSyHLiJBlX3WH4QlZCpn63xFO
WvLa7sp+hPcigu2IIG07iS91Xe8xd6nMwd8oSbcEOpEQQ1/1JoiX+QInVdnpR+f1
fGsui818cehOIFfiGUKBp4Q9PlrR9BptxLf9BJvdIwQvoGifSohX3sgGEW2QcJM/
QCg4rrFJzNKp+jHh+hJ0hP7WGUAV3FKF8UHZm/BOUStUpd4mZu4IHpbFC482uOW2
4IWIwDpqAuvXB4RNEdxCQw6V8KbKMxT09SLBF70JM/5qFVoQoaBo8KlR0UEOUKki
exNyEAGHVjZ0qkbwodSESbAo4QECaEKDBGFmMLxMaEnwd3ipL6Fkgsr5gdXXVCiw
IiGUwHqQMNUEr02IkRCEpXuCUVxx3d4IJ1KpCdy9diJM7giNNktLACMiSNv2JEzt
RsuhCFAYmw9FsEtEbgnbmqXe7Q1COiXkcJNB5IMR4JIEfM8RwTOEc13ry6LgAUcE
3xAqmhW1ei+cEoSZwQ/frplW3Ah/tSQRXk3XgQCJOmZqBOte+xbB6Hi967oQMC0C
8LA5s6dnsTNCg+dOEEigXzEtd0agONYMEixzaqQzgkgsIYfK+gicEaAxoSG0Food
EuwSKzVYGJp0SIAzh0Y4aJbIlf9zaknedaUm+Bul0jrJJwAWFeFhxbdn3GIp0cIF
fXiAj8SEz6uupfWX+vCJG10J3eXlj2f8A6LUKxM1b2dwAAAAAElFTkSuQmCC

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=spacer.gif
Content-Type: image/gif; name=spacer.gif
Content-Location: http://www.eetimes.com/StaticContent/v1/Images/EELife/spacer.gif
Content-Transfer-Encoding: Base64

R0lGODlhBQAFAIAAAP///wAAACH5BAEAAAAALAAAAAAFAAUAAAIEhI+pWAA7

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=search_off.png
Content-Type: image/png; name=search_off.png
Content-Location: http://www.eetimes.com/StaticContent/v1/Images/Header/search_off.png
Content-Transfer-Encoding: Base64

iVBORw0KGgoAAAANSUhEUgAAAEsAAAAbCAMAAAADHoIvAAACuFBMVEXe4OLf4ePg
4uT7+/ve4OL7+/vf4ePe4OLi4+X7+/v7+/ve4OL7+/ve4OLj5ef7+/v7+/v7+/vh
4uTm5+j7+/v7+/ve4OLe4OLn6er7+/tBQUFLS0tMTExWVlZXV1dgYWFhYWFiYmJj
Y2Nra2tra2xrbGxsbGxsbG1sbW1tbW1tbm5ubm52dnd3d3d4eHh4eXl5eXmBgYKB
goKDhISEhISLjIyNjo6Ojo6Pj4+WlpeWl5eXl5iXmJiYmJmZmZqampuam5ubm5ub
m5ycnJyhoaKkpKWsrKyur6+vr7CvsLCwsbGxsbGzsrOzs7S0tLS3uLi4uLm4urq5
urq6uru8vL28vb2/v7+/wMHAwcLBwcPDw8PDw8TExMXExcXGxsbGx8fGx8jHx8jH
yMjJycnJysrJy8zKysvKy8vLysvLy8vPz9HP0NHR0dHS0tLU1NTU1tfW1tbX19fX
2NnY2drd4OLe3t7e3+Le4OHe4OLe4ePf39/f4OPf4eLf4ePg4OHg4eHg4uPg4uTg
4+Th4eLh4uLh4uPh4uTh4+Ph4+Th4+Xh4+bh5OXi4uLi4+Ti4+Xi4+bi5OXi5Obj
4+Tj5OXj5ebj5efj5ubk5ebk5efl5ufl5ujl5unl5+jl5+nm5ujm5unm5+jm5+nn
5+jn6Orn6ero6Oro6erp6uvp6uzp6+vp6+zq6uvq6uzq6+vq6+zr7O3r7O7r7e3r
7e7s7O3s7O7s7e3s7e7t7e3t7u/t7vDt7+/t7/Du7u/u7vDu7+/u7/Dv8PHv8PLv
8fHv8fLw8PHw8PLw8fHw8fLx8vPx8/Py8vPy8/Pz9PTz9PXz9fX09PT09PX09fT0
9fX19vb19vf29fb29vb29vf39/f39/j3+Pf3+Pj49/j4+Pf4+Pj4+Pn4+fn5+Pn5
+fn6+vr6+vv6+/r6+/v7+/vEiLY4AAAAGnRSTlMAAAAAEBAwQEBAUGBggI+Pn6+/
v7/P3+/v7+EOVEIAAANySURBVBjTrY77X1NlHMeftLxV5t16NpZiomtaamUGDAVK
La8l5gXN8FbrqpZlydAZUgs8rGSxYijKGBPHNjeEOc8Y0RhzY3Jg66zDrMa87N/o
+xzx1eu110p/OJ/Xc77fz/f9fZ7P66CkEJo+fjQIJYXREwJmJScJmJWcIGDWU48I
l5V8TMCsyQJmTUM3/1O378NujSDot4i/gxJEfyeG43Fiqt5efyAer1KA9sNYfiAR
j5crFO+/10G2inVViUSHgjAww+RFPMG/SwyDRRwXi92IDXE3YuCOiSWZeG2sUCwD
/cFxmbjsT34Si8u4y5liGS7k9mIOWCEHT7gY9xcHb2MxbggGxEaiUTYSDkcj4Apm
R8L5kkj+s4Sx0U+wrCAaLZDBVpIfWSRjI3vw13twFFh+OBxmo79HwiwLhiWdRddD
Iaavn2EGGXBF+MUicCtmv1uy6+NBZtnzayQMs1zKHN4sfiOES/r6Bw8zu/GukpIX
ljNMP7zqDw0yUAcGmL5QCAUC/gD/8WfTcxiv9ueJ5kulLweviVafF73uz8Og1wLn
8UeBQPBa4B0slc6X5AX8/qA/CARqMMiHoC6v19fb7evp6QW36sNunxz/LM/i2Zsk
JKtHPs/3gWhpl1f0FrClO3biX709cnm319vr83aRe77fvN0+iEGeKy63k3a6PB5w
i+f+6NyAT+fOJaxz4WKaLsaf5WQ5XRtx8ZUls07RuaJD27GH9uTketxuF+3x0J30
VfdVVyftdrqQo93hsDkcVocd3MGn4U9W2l8hP4RX4m1WuzXjpexnYLsg4+Q3czAW
vdq2FVvb7dnZ9vZLNkdbm9XRZrfZ7Dar/bINWS6YTS0tJovFzLtPt9xzAJvNzRZz
a8vFe9sv9/3LWs3mFmAXyTWTxWQyW1pRk7HJ2GhoMsCX4hobGw1QDOkZ6UZjE+yM
PDEYnkT6hjr9iFLcufr6Bn76JR1r0Nfp62BTf/YMP+nrpyJtTY1Wq9PW6mpTXW2t
DkbtTzCkYaTrdFro0GpgqJmINJVqSl2tqa6kUh1FwVFXUhSVlsEBov6B0nyvpqo1
GvU4pFKdUIGOk5LiKvijUn2Xlqm+Vd1VBT+ppoxCSmWpUpm+KL9SjigN46ejd1kp
aWMeQkfury/+h430z488itCDZD2AZo5FAmXNePxhEvUP3Bw+x6A7KssAAAAASUVO
RK5CYII=

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=adv_search_off.png
Content-Type: image/png; name=adv_search_off.png
Content-Location: http://www.eetimes.com/StaticContent/v1/Images/Header/adv_search_off.png
Content-Transfer-Encoding: Base64

iVBORw0KGgoAAAANSUhEUgAAAH8AAAAbCAMAAABiBqBtAAADAFBMVEXb3N2qqqug
oKCenp/AwcG2trfCwsNgYWHk5ufa2tvX19e+vr6Hh4d4eXnf4OHJycuJiYjFxcb7
+/ve4OL6+vrf4ePg4uQzMzPl5+jn6erj5ef5+fni4+Xn6Ork5efy8vPp6uzi5OXp
6+z39/jq6+z29vbj5ebo6Oo+Pj5iYmLHx8fh4+Xk5eb09PXo6erw8PH4+fnq6uz1
9vbf4eLw8fHh4uTh5OXm5+j29vfy8/Pz9PXx8vPi4+bu7u/3+Pjs7O1XV1f6+vtj
Y2Pt7u/r7O719vfl5+nt7+/p6+vExMTr7e7u7/BLS0vl5unq6+vU1NTz9PTw8PLs
7e4/Pz/49/jp6uv9/f3w8fJjZGRKSkrg4ODl5uj09fXu7++SkpPm5+nu7vCVlZX8
/Pzr7O3g4uPt7/Dv8fH6+/rg4+SUlJWRkZLi5OaTk5SPj5B7e3vs7O6FhYbv8PLs
7e34+Pnt7e1VVVb39/ff4OOQkZHz9fX09fTDxMT3+PdkY2Te3+L+/v6/wMHh4+Px
8/PGx8e/v8GFhoZJSkq9vr9tbW6tra3r7e18fHxhYWGmpqfq6uvj5uZvb3DBwsPB
wcHh4+T5+Pm3t7hiY2Pi4+Th4+ZjY2T5+fqQkJHo6Omurq7///+oqKjS09Nvb2/U
1tfr6+zh5OaRkpL09PTe4ePm5ueDhITv8fJVVVXc3N2EhYXq7O3g3+D4+PiUlJTf
3+DIyMnExcVjZGPNzs/g4OGTk5Pv8PHT1NTQ0NDR0dGpqam6urq7u7tubm7e39/1
9fbHx8idnZ5WV1fe3t+foKDLy8y7vL5hYmLk5OaPkJCnqKnOzs/z8/Ts6+zIysvR
0dLi4+NKS0ubm5ubnJzm5ujm5uno6uvp6uqys7Ozs7TGxsfGx8bp6evU09Xd3t7d
4OLY2NnY2NrZ2turq6t5enrr7Oy5ubm4ubpJSUrf4OKcnJzq6ur6+/s+Pj9tbm5K
Skv49/fMzc3k5eWSk5OoqKnS0tPT09JWVlbt7vC+wMBub2/e3t7///94w4NyAAAB
AHRSTlP/////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
//////////////////////////8AU/cHJQAABapJREFUGNPFTndcU2cUfdVKndVi
4cuSkLy85IXwCImBLDLMIATChrC3YNlDQYYWF86oSMW9q9a6916ddu897aJ775ne
94JVfz9K/aNtTr733XPP/e45wbxe7yZ3oB9Q2gnRXszr7SwN9A/cTH5noN/gpvNL
/Zcf2OnF3IH+xCas1K/5bsyv8YGlfs+/HTAJvinMYegVTOo/k65TB8WUf9D6jabQ
vjT/EovkAuhrHZzcMGDTwsIeSOZGHkim1bBpU09Awz1wGrrkXO5UbtjGW5k3gMgm
uJJBWxkZyc29cCF3KjeX1k9Dm3yZ1uiO8Q/b2BTJnZa8Ega5kUwel7sSBpgxA8e/
bcFxPMPY0tKNfs4wvpVuMaNs43l0N45vQffhZiAzStBcHM8uyfjInD4TleBz0czs
Y2sz5qK1ZjTTOAOWf0p3udLPt5SkZ2evHWc04q70Z4w4dDOR62F8S7rLjIbgbx7D
M8DkIA4b8GRGBm7ECKVSA5/SrrQTryHLEsJ+1EIQZ8kh97uGKIlxW4mzyHyIUB5C
ri/slkqi26LUfILeuQ0Rdlg8iuya58hKYPYl3RrNkm6i0qIhNBqN/WPStcjOdJnk
IsK1VaNZ9NUfRy1KQmOpVBIQSIABQRCYjtK1USn5Ke35upRLD/WSG6gOS0obVbdK
d9JMtZO9urrf+15oo2rM34zWrapJQU4qn8J0HajD6TyT70Q6HTXaQoF2iazrTdmZ
X2N2Ojv2Urq6uhoz1VazisL60JkNaG8KBVtOGDrNJ3X5FEXtbG+nUnQ6bI5ey9fr
+XwtX6vNGcrPGaoNkPLn8Aul+hFoxDCSryWH7UK9+kLpChQgLXwKfcDnw+sVSCqV
dkGBBp7S2tCLiLxJ+wMJgz79LnR8BDrOL0QIkX1zAhCY6/n6AHpIFtKNVqulffiY
XJ4qB6jku+XfwWuUo+qRqk5VNEjljdKqi12qc7T4tapKmtWQ88uOLNSTmprV0NOD
sipUqak9CDa7HgOWVfWe/PsuUrVDqpI3ylMfpLc+PFUlVfWgcxVy1NMof7zh/Zul
8iyVtEoFu6rd8goVLGNWh6HcYHAUOAoMYxYaCkaiefM8BcWzyM3l5U82o5EJnn1W
6xtoZKsnYXUOWm8d0zw7oZWM+g1ZDVZHwiz0q2MeuRlYwsKFs4tfyilY7zEYEgwJ
za1Wx49o9XpPsfVz9IjV07zasC/n+VmeYofB02ooMJQXl0NgsdWBmRanpcXDr972
Gbk0bbHtljEL6P9+b319fBnpSduGxtqayj6trfXEm0ahWtsJD0Lzl6aNot+gUb6n
JlOZKX7sfITIpaZaZvAs2gYa+eITHpPNtMdTf+seRM5/PX6BZ7HN5KktM9XH22zx
trL4JhsWGhonShImJSmEoaJQYVyoQigCIooDCkgSioTCTAUIIoUoThEqFIYePnKF
XdUYdvlRIdBMRaZIkSRcdnXKaIePgJakAPc4xTJagpBQhSgJY7MjJkjYgIgI9gSA
hO6ASiQRtCgBXQIqewJbEiGJgHtQBgZsuNgDa3QFO5hFMAqbnYmp1XmxLBYcVh4r
sUjNylOz+lHEUkOvZsUWxfoEdeKV0d+yothY337eQJqalchKhEnsKy8zHSs2DeOE
h3DCh4vDl4dwxAzniMUcDieEEyIeDhcjhNMT3yBkcBYODiEcznKxeCCNruAIFYoY
GnEjtl8QzYuR8dbIBLLoakF09fZo2XaeQMATrOHBhGY8maBaEBMNrYwnixmc8Xhw
ZLDHG1CDA4qsGtxlvBiBQHYQM0YFX4Mo3xcV5SuTfQy+yfT0DvoanPkWg4PvGlAL
nn01B7rgt72Y1xYUNDGoH9P768S/7omMNt2n3MAVdE/QtR7Xa0w3vd+cLusg3z18
/H+AOwfR+uu745/2Qr7Xvf+GHf5VBONeJt/rxV8d/7+jOsFNR/8JxBhxFCcxMqUA
AAAASUVORK5CYII=

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=0103feat2fig1.gif
Content-Type: text/html; name=0103feat2fig1.gif
Content-Location: http://img.cmpnet.com/embedded/gifs/2001/0103/0103feat2fig1.gif
Content-Transfer-Encoding: Base64

[encoded data, 6208 characters]
u77se0yQAAzHIBQBAQA7

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=addthis_widget.js
Content-Type: application/x-javascript; charset=utf-8; name=addthis_widget.js
Content-Location: http://s7.addthis.com/js/250/addthis_widget.js
Content-Transfer-Encoding: Base64

[encoded data, 65536 characters]

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=join_convo_icon_mini.gif
Content-Type: image/gif; name=join_convo_icon_mini.gif
Content-Location: http://www.eetimes.com/StaticContent/v1/Images/Icons/join_convo_icon_mini.gif
Content-Transfer-Encoding: Base64

R0lGODlhDwAPALMJAAE+VSJPYP///1KGmvzz9Ovw8v34+TFgcv319v///wAAAAAA
AAAAAAAAAAAAAAAAACH5BAEAAAkALAAAAAAPAA8AAAQ6EAVAq6Vi3g00/4dBjCSB
GFagrqz3gUIsz2nbUu4LCHolJImBcDioCIHIZJCibCYKTKeyWJAmodVEBAA7

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=partssearch_off.png
Content-Type: image/png; name=partssearch_off.png
Content-Location: http://www.eetimes.com/StaticContent/v1/Images/Buttons/partssearch_off.png
Content-Transfer-Encoding: Base64

iVBORw0KGgoAAAANSUhEUgAAAEEAAAAcCAMAAAAJOSJeAAAAjVBMVEX/ZBf/////
ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/
ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/ZBf/bib/dzT/gUP/
i1H/lWD/nm7/qH3/sov/vJr/xan/z7f/2cb/4tT/7OP/9vH////lfj0mAAAAHnRS
TlMAAAQIDQ4cNEBCVF58gIaXmJykuMbKzc/f4/Hz9P02r0KWAAABGklEQVQY06XP
127DMAwFULl7p3ulvZqRbQ3+/+eVUhP0yX4oCdgGQemYV+H/9XahlBqUQPje3goF
4OtOKmB7LhXweiQVcCkW7sXCk1j4EAv4E4wPlt+uVWst9p1uUxcMoPvALAimlkwB
sSYu7jPxydbVaqBzTRThiAcxLggx81MQ029rKfHJ3pWImb+OzLrgafId4r05wDiH
0gXjawD19Rnh4bQkwM90SDECNWi+GYlrB022H3HEw7IkBD4USe9T+HY1tR1sbV5b
b3TrKaak+d5BmKcevHWeI0xZ83ZmXTCZeor2cwo9eBm7NxetE1HdYV1gw2G5tF2a
KAjrUyw8i4UHsXAlFd5PpML1IBQej4XC5kyJhJebU6WGH81N2d6eZbJIAAAAAElF
TkSuQmCC

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=ubm_footer_logo.png
Content-Type: image/png; name=ubm_footer_logo.png
Content-Location: http://www.eetimes.com/StaticContent/v1/Images/Footer/ubm_footer_logo.png
Content-Transfer-Encoding: Base64

iVBORw0KGgoAAAANSUhEUgAAACEAAAApCAYAAAC7t0ACAAAG+0lEQVQY06WPeWxU
dRDH33b7HiIYQJDDeAsKyCGNVoV6IdKoYbfdRVCg3SKFEtFqCiQCiTfeICAQ3C2X
iaISjYIQTRAUCXiAgoSAqBhQ8ZY/pAU5rJ/5vdnte/u2BfSPz/vOzJvfzHcsK5Kw
miRa4Y1vhO+gj6k3zzLezPXN8c7K5iRN5BEPhknEHQM9QaIwDtpnZvwPE7I8BM/C
NyDX2Sdh4jb+fYlugR7EMiP8X0xM4+FG6Ar7oUG5uInFaWTh67x3+yOJMnQSbCbu
eKompsImHp8H49XQLGqnNfMmTTG96+A16KIHbTImchnPOcS9RpadoY29YSJ5pxy9
TXE7jIA8aAFtIXyyJrrx401YDb2gAP6Av2FLwEhwqBwglx+CIzBLTTwKH0OZGvOY
CA6ZDg3KbJjgxol07SZff/CIMKz3zPgEitWU5Dug04lMxCz38sMwnoEXot9CPawj
b+dbGnwv3M2/g2gdTCM+F92J1sFScHwzApdEK0JwK/T3XHoO8RDIy9Gfm0iiHzrQ
09cZlQPPDfRmDW1P8UX0M3QOdCDugi5G30Or0aCRIAX0vgqriG/XZcNhHayFm5oz
UUmxwcNYeDSrdl3gEj/58IGnfyf0g92e2lawG034B1RlLRwHs00cSaRrt57AhAzf
5pnxPW8Ls0xsp2br4ZaVCVzOomEh+gU63+SRRHfi982QSGIOtPK9yW2kGD6GnfRM
1L5yWE/8AXqzb0aWCWluAZXEAzxLbiCejLZrYmmQSCKGVqP5WjuTuAotCOzMKtg0
zYB6+AviMBj+1Non0PEEBkLwANTpm0XGQLTiIzgMO9hzid+Ef0BbXdRgiCSeQlOe
XBjqGxA00QJ2m1733R5iOeZHz5xivwlvEknk0TQOfofPybuhVZnH0YqfoadvadCQ
zEiS/6NvNhKfhj4D9fAWeYfmTKQHSVN3EANXwHh4Hooyi5s2IcjSafAk9UJ0JBQT
d0btwM5AoZEqvUSWtzQDoxXLqd/gWZbLRFuYCa9Q64P21Dm7cr5xTYyCslwmuvLg
EegFZTpIWAMhHd7a09+DvD3EPL2fUm+DToRh+s7yw+686P0MqIQ7gkYanQ9ED8Ax
eA5mw1FYyb+WMJr4CHyl8T41kdT3VnC51EZYoZIJluXEX7LyS2da4dKpNJc1ZUL0
WhgKcvFeXSLGLoLlJo8kpCYmCuBO8ra5DZRboehYdj7E/gViImXZsYWWjZlw6XQW
joKRrkbLXPyGwuiD8BPxPLBhMPnX8CFxt0x/9jEGmTmGnXPYvRRq0yZANL7ECpc8
hsu7odoKldxn5ZVUq6FyGOkd2jqzxK2dDo6bp3vLs0yUMXeMlY8BO77Y7BayTEhc
C4tcTONijEzi8T1WuPRhhpapqYSrEV2WXhQZYYUilSx6jHiMya3oKGPA8hiw1UAT
JpKNmKZakHw+ugSdCbMwdh/6DMw2Bq2oLCu38ksfpzbPajH0JZSFsRnaX42BWcxc
lNl1CiZcI3asVuNFisQLQa5aYIVK7sXAdPKlWk//b+y3yTN7Tt2E2+PEc+O+W+xZ
3kxfEyYuYUF/iq1zmOjO/25qoqXG18AguN5x/zu236T0XQsFkNeMCZtaocyTn28z
4Dg6IH2xIk2r0Hd0SBUchd0MkNoG+Bm2ko/wmOgFx6AOrm7GRISa7P1VkpUEDWhR
tlNYzb/Vmk92YqkGMaMLxeR11HfJUmq3aF8v2zUhM1/1zvQYCsMa2523X36ukAcs
KHJivkYxscoQS1pOLFmjgyttz2XoJPM+nnpal/WBv8j3wkHiwvRMMa8MIj9guz2/
yM8V6qjI8bi23UuNCR1So8tGmUHu0BD5MjgOxdp3Of/q4EHiPfAGhDwmQvxbLXth
CdRZmsiFReayWAbbVhN2LMnjZI32vcigO9DxumAX8bCMsXiqr5odTu0JtB69Sv6r
STn2AAxwZFY8dciYsN1HRU48M0iwebjKMSaMqRrt2wgvwHLyfegPMJW4vdcEpsvh
LNvEqZTH5FL+b9ZdL4tJr4kB2SbEgOMakdyYgEryPIE4jFbBYVjHojPgMp03GhPy
bqFcS34BnE9c78SSQ9XUMmNCr5VH/c0y92pLF60gf1dMEddo37i0WUevI39L/5XI
Isc1e5fj/ruSuA6dgT6PboNWTjwp/9ImkvP0kXGuBsRMG3Q7JI3rWMbEaDvLBLyh
M4bDebaa0H9yzDL0GHqcHZWyx3b3uCb4FEIdTfv5OYTBF5P3pakWPUptoF40xSyK
pSaibejvQG9PdIrtmtuCno32VLNjnbTZeGqQ9nzLvA7GhPvvNWrHLF0wDLbpBb+p
qb2ouA5pTyX8AXv4txbdALthJ8yFS2U42hsOYjYh17pXJ/Opvce7adqTZgm1A/8C
Dh5/PGMi9OIAAAAASUVORK5CYII=

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=en-orange-corner-up-left.gif
Content-Type: image/gif; name=en-orange-corner-up-left.gif
Content-Location: http://cf.kampyle.com/buttons/en/orange/en-orange-corner-up-left.gif
Content-Transfer-Encoding: Base64

[encoded data, 12416 characters]
cRQlCAA7

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=k_button.js
Content-Type: application/x-javascript; charset=utf-8; name=k_button.js
Content-Location: http://cf.kampyle.com/k_button.js
Content-Transfer-Encoding: Base64

[encoded data, 10368 characters]
c2wiLCIiKTt9

------------KVxvIqS4V4r9QZP8Xg42UV
Content-Disposition: inline; filename=favicon.htm
Content-Type: text/html; charset=iso-8859-1; name=favicon.htm
Content-Location: http://www.eetimes.com/favicon.ico
Content-Transfer-Encoding: 8bit

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>404 - File or directory not found.</title>
<style type="text/css">
<!--
body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;background:#EEEEEE;}
fieldset{padding:0 15px 10px 15px;} 
h1{font-size:2.4em;margin:0;color:#FFF;}
h2{font-size:1.7em;margin:0;color:#CC0000;} 
h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;} 
#header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS", Verdana, sans-serif;color:#FFF;
background-color:#555555;}
#content{margin:0 0 0 2%;position:relative;}
.content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;position:relative;}
-->
</style>
</head>
<body>
<div id="header"><h1>Server Error</h1></div>
<div id="content">
 <div class="content-container"><fieldset>
  <h2>404 - File or directory not found.</h2>
  <h3>The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable.</h3>
 </fieldset></div>
</div>
</body>
</html>

------------KVxvIqS4V4r9QZP8Xg42UV--
