more chapters from cvs

This commit is contained in:
Robin 2010-02-19 15:10:11 +00:00
parent 8002dddda7
commit fa105d9d3f
3 changed files with 922 additions and 2 deletions

751
sw_as_plds/ir_det_pld.dia Normal file
View File

@ -0,0 +1,751 @@
<?xml version="1.0" encoding="UTF-8"?>
<dia:diagram xmlns:dia="http://www.lysator.liu.se/~alla/dia/">
<dia:diagramdata>
<dia:attribute name="background">
<dia:color val="#ffffff"/>
</dia:attribute>
<dia:attribute name="pagebreak">
<dia:color val="#000099"/>
</dia:attribute>
<dia:attribute name="paper">
<dia:composite type="paper">
<dia:attribute name="name">
<dia:string>#A4#</dia:string>
</dia:attribute>
<dia:attribute name="tmargin">
<dia:real val="2.8222000598907471"/>
</dia:attribute>
<dia:attribute name="bmargin">
<dia:real val="2.8222000598907471"/>
</dia:attribute>
<dia:attribute name="lmargin">
<dia:real val="2.8222000598907471"/>
</dia:attribute>
<dia:attribute name="rmargin">
<dia:real val="2.8222000598907471"/>
</dia:attribute>
<dia:attribute name="is_portrait">
<dia:boolean val="true"/>
</dia:attribute>
<dia:attribute name="scaling">
<dia:real val="1"/>
</dia:attribute>
<dia:attribute name="fitto">
<dia:boolean val="false"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="grid">
<dia:composite type="grid">
<dia:attribute name="width_x">
<dia:real val="1"/>
</dia:attribute>
<dia:attribute name="width_y">
<dia:real val="1"/>
</dia:attribute>
<dia:attribute name="visible_x">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="visible_y">
<dia:int val="1"/>
</dia:attribute>
<dia:composite type="color"/>
</dia:composite>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#d8e5e5"/>
</dia:attribute>
<dia:attribute name="guides">
<dia:composite type="guides">
<dia:attribute name="hguides"/>
<dia:attribute name="vguides"/>
</dia:composite>
</dia:attribute>
</dia:diagramdata>
<dia:layer name="Background" visible="true">
<dia:object type="Standard - Ellipse" version="0" id="O0">
<dia:attribute name="obj_pos">
<dia:point val="-4.85,-7.35"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="-4.9,-7.4;28.9,43.75"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="-4.85,-7.35"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="33.699999999999989"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="51.05000000000004"/>
</dia:attribute>
<dia:attribute name="border_color">
<dia:color val="#190707"/>
</dia:attribute>
<dia:attribute name="show_background">
<dia:boolean val="false"/>
</dia:attribute>
<dia:attribute name="line_style">
<dia:enum val="2"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Ellipse" version="0" id="O1">
<dia:attribute name="obj_pos">
<dia:point val="-2.5,-3.375"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="-2.55,-3.425;27.5,41.275"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="-2.5,-3.375"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="29.949999999999999"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="44.600000000000023"/>
</dia:attribute>
<dia:attribute name="border_color">
<dia:color val="#190707"/>
</dia:attribute>
<dia:attribute name="show_background">
<dia:boolean val="false"/>
</dia:attribute>
<dia:attribute name="line_style">
<dia:enum val="2"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O2">
<dia:attribute name="obj_pos">
<dia:point val="-0.55,-4.75"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="-0.55,-6.18031;2.80781,-3.62688"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#main#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="-0.55,-4.75"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O3">
<dia:attribute name="obj_pos">
<dia:point val="6.95,2.55"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="6.95,2.15;6.95,3.35"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>##</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="6.95,2.55"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O4">
<dia:attribute name="obj_pos">
<dia:point val="3.78,-2.8925"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="3.78,-4.32281;9.17781,-1.76937"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#while(1)#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="3.78,-2.8925"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O5">
<dia:attribute name="obj_pos">
<dia:point val="9.395,-4.0525"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="9.395,-5.48281;12.1628,-2.92937"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>##1 *#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="9.395,-4.0525"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O6">
<dia:attribute name="obj_pos">
<dia:point val="9.445,1.1475"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="9.445,-0.282813;13.4878,2.27062"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>##1.1 *#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="9.445,1.1475"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O7">
<dia:attribute name="obj_pos">
<dia:point val="9.29,3.0075"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="9.29,1.57719;13.3328,4.13063"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>##1.2 *#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="9.29,3.0075"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O8">
<dia:attribute name="obj_pos">
<dia:point val="9.385,4.9175"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="9.385,3.48719;13.4303,6.04063"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>##1.3 *#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="9.385,4.9175"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Ellipse" version="0" id="O9">
<dia:attribute name="obj_pos">
<dia:point val="-1.66,7.60403"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="-1.71,7.55403;24.85,31.216"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="-1.66,7.60403"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="26.459999999999994"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="23.561932056737511"/>
</dia:attribute>
<dia:attribute name="border_color">
<dia:color val="#190707"/>
</dia:attribute>
<dia:attribute name="show_background">
<dia:boolean val="false"/>
</dia:attribute>
<dia:attribute name="line_style">
<dia:enum val="2"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O10">
<dia:attribute name="obj_pos">
<dia:point val="2.495,7.2475"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="2.495,5.81719;9.93781,8.37062"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#ir_self_test#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="2.495,7.2475"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Ellipse" version="0" id="O11">
<dia:attribute name="obj_pos">
<dia:point val="7.45,34.3"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="7.4,34.25;17.73,40.35"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="7.45,34.3"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="10.230000000000032"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="6.0000000000000568"/>
</dia:attribute>
<dia:attribute name="border_color">
<dia:color val="#190707"/>
</dia:attribute>
<dia:attribute name="show_background">
<dia:boolean val="false"/>
</dia:attribute>
<dia:attribute name="line_style">
<dia:enum val="2"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O12">
<dia:attribute name="obj_pos">
<dia:point val="9.695,10.0025"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="9.695,8.57219;15.0128,11.1256"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>##1.4.1 *#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="9.695,10.0025"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O13">
<dia:attribute name="obj_pos">
<dia:point val="9.545,12.0025"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="9.545,10.5722;14.8628,13.1256"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>##1.4.2 *#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="9.545,12.0025"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O14">
<dia:attribute name="obj_pos">
<dia:point val="5.24,33.5485"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="5.24,32.1182;13.5778,34.6716"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#¬ir_self_test#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="5.24,33.5485"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Ellipse" version="0" id="O15">
<dia:attribute name="obj_pos">
<dia:point val="1.39,15.711"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="1.34,15.661;11.67,21.761"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="1.39,15.711"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="10.230000000000032"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="6.0000000000000568"/>
</dia:attribute>
<dia:attribute name="border_color">
<dia:color val="#190707"/>
</dia:attribute>
<dia:attribute name="show_background">
<dia:boolean val="false"/>
</dia:attribute>
<dia:attribute name="line_style">
<dia:enum val="2"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Ellipse" version="0" id="O16">
<dia:attribute name="obj_pos">
<dia:point val="10.18,22.156"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="10.13,22.106;20.46,28.206"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="10.18,22.156"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="10.230000000000032"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="6.0000000000000568"/>
</dia:attribute>
<dia:attribute name="border_color">
<dia:color val="#190707"/>
</dia:attribute>
<dia:attribute name="show_background">
<dia:boolean val="false"/>
</dia:attribute>
<dia:attribute name="line_style">
<dia:enum val="2"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O17">
<dia:attribute name="obj_pos">
<dia:point val="1.04,14.9485"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="1.04,13.5182;8.65281,16.0716"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#ir_detected#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="1.04,14.9485"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O18">
<dia:attribute name="obj_pos">
<dia:point val="13.42,21.535"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="13.42,20.1047;21.9278,22.6581"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#¬ir_detected#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="13.42,21.535"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O19">
<dia:attribute name="obj_pos">
<dia:point val="2.89,18.8485"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="2.89,17.4182;9.48281,19.9716"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>##1.4.2.1 *#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="2.89,18.8485"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O20">
<dia:attribute name="obj_pos">
<dia:point val="11.64,25.5985"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="11.64,24.1682;18.2328,26.7216"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>##1.4.2.2 *#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="11.64,25.5985"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O21">
<dia:attribute name="obj_pos">
<dia:point val="9.19,37.5985"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="9.19,36.1682;14.5103,38.7216"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>##1.5.1 *#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="2.1000000000000001"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="9.19,37.5985"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
</dia:layer>
</dia:diagram>

169
sw_as_plds/sw_as_plds.tex Normal file
View File

@ -0,0 +1,169 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% $Id: sw_as_plds.tex,v 1.2 2008/11/04 07:40:50 robin Exp $
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%
%%\documentclass{entcs} \usepackage{formatmacro} \usepackage{epsfig} \usepackage{pspicture} \usepackage{pstricks} \usepackage{subfigure} \usepackage{tikz}
%\documentclass{entcs} \usepackage{formatmacro} \usepackage{epsfig} \usepackage{pstricks} \usepackage{subfigure} \usepackage{tikz}
%
%\newcommand{\Fam}{{\mathbb F}}
%\newcommand{\Pow}{{\mathbb P}}
%\newcommand{\Dis}{{\vee}}
%\newcommand{\Con}{{\wedge}}
%\newcommand{\FMEA}{{\bowtie}}
%
%\newcommand{\Nat}{{\mathbb N}}
%\newcommand{\Real}{{\mathbb R}}
%\newcommand{\Complex} {{\mathbb C}}
%\newcommand{\Rational} {{\mathbb Q}}
%
%%\bibliographystyle{unsrt}
%%\newtheorem{theorem}{Thoeorem}
%
%\def\lastname{Clark}
%\begin{document}
%\begin{frontmatter}
% \title{ Software Component Failure Analysis } \author{Robin Clark\thanksref{ALL}\thanksref{r.clark@energytechnologycontrol.com}}
% \address{ Energy Technology Control\\
% 25 North Street, Lewes, BN7 2PE, Great Britain}
%
\begin{abstract}
This chapter describes how software can be represented by first order logic, and how
software elements be represented in a propositional logic diagram.
When represented in this way they can be combined with other PLD's representing hardware and mechanical elements.
Thus, Fault Mode Effects Analysis (FMEA) can be applied to electro/software/mechanical systems
using a common mathematically based formal graphical notation.
\end{abstract}
%
%\begin{keyword}
% fault~tree fault~mode EN298 EN61508 EN12067 EN230 UL1998 safety~critical logic euler venn propositional
%\end{keyword}
%\end{frontmatter}
%
\section{Introduction}
The code in software defines logical euations and these determine the flow, or path software takes though the code.
Because computer languages are very well defined, they can be viewed as formal languages.
Becuase of this, they can be mapped onto propositional logic.
Software can be viewed in terms of program flow stages.
Transitioning between one stage and another depends on decisions made from
variable states. This corresponds to the standard software structures, if-then-else
do-while etc.
At a program flow stage, the software may initiate actions. Typically, in an embedded
system, a micro controller will read from external sensors, and then apply
outputs to control the equipment under supervision.
Each test case in a PLD software diagram, corresponds to an action
taken by the software. This action could be to modify an internal flag or variable,
or it could be modify an output that can actuate an action outside the micro-controller.
A simple example illustrates this, a simple micro-controller program,
that reads an IR detector and then displays status on a bank of LEDs.
Also that it has a self test IR LED, and a mechanical shutter
to prove the detector can determine dark IR conditions.
\clearpage
\begin{verbatim}
// example C code
main () {
// program flow point main #1
set_up_microcontroller_hardware();
while ( 1 ) {
// program flow point main #1.1
delay(20 milli seconds);
// program flow point main #1.2
self_test();
// program flow point main #1.3
read_inputs();
// program flow point main #1.4
if ( ir_self_test_passed ) {
// program flow point main #1.4.1
flash_green_led();
// program flow point main #1.4.2
if ( ir_detected )
// program flow point main #1.4.2.1
flash_yellow_led();
else
// program flow point main #1.4.2.2
flash_blue_led();
}
// program flow point main #1.5
else {
// program flow point main #1.5.1
flash_red_led(); // indicate internal ERROR
}
}
\end{verbatim}
\clearpage
%
% \begin{figure}[h+]
% \includegraphics[scale=0.40]{sw_as_plds/ir_det_pld.eps}
% \caption{}
% \label{fig:ir_det_pld}
% \end{figure} % OR
\begin{figure}[h]
\centering
\includegraphics[width=400pt,bb=0 0 675 1023,keepaspectratio=true]{sw_as_plds/ir_det_pld.png}
% ir_det_pld.png: 675x1023 pixel, 72dpi, 23.81x36.09 cm, bb=0 0 675 1023
\caption{IR Detector C code as PLD}
\label{fig:ir_det_pld}
\end{figure}
Note that the function calls in the example code, will
each create their own PLD diagram, which can be considered as being nested in
the main diagram.
{\huge DIAGRAM REQUIRED OF NESTED DIAGRAMS FOR FUNCTION CALLS}
Note it should be possible to automatically generate
diagrams from code.
Analyse C code for instance and make these types of diagrams.
\subsection{Afferent, processing and Efferent flow}
A concept from Yourdon dataflow analysis, is that there
is Afferent, processing and Efferent flow.
That is to say information comes in (afferent flow)
is processed and the actions or data out, are the efferent flow.
In a real time system, this corresponds to a hierarchy where
electrical and mechanical systems sit at either end with the
computer providing the processing. re-phrase.
Need tree diagram here with MECH as lowest, electronics and then SW
as typical program structure.
{\huge DIAGRAM REQUIRED}
\clearpage
%%\bibliography{vmgbibliography,mybib}
%
%
%Typeset in \ \ {\huge \LaTeX} \ \ on \ \ \today
%
%\begin{verbatim}
%CVS Revision Identity $Id: sw_as_plds.tex,v 1.2 2008/11/04 07:40:50 robin Exp $
%\end{verbatim}
%Compiled last \today
%\end{document}
%
%\theend
%
%
%

View File

@ -65,11 +65,11 @@
\typeout{ ---------------- Electronic Components as PLDs}
\chapter {Electronic Components as PLDs}
%\input {components_as_plds/components_as_plds}
\input {components_as_plds/components_as_plds}
\typeout{ ---------------- Software as PLDs}
\chapter {Software as PLDs}
%\input{sw_as_plds/sw_as_plds}
\input{sw_as_plds/sw_as_plds}
\typeout{ ---------------- Mechanical Sub-systems as PLDs}
\chapter {Mechanical Sub-systems as PLDs}