Index: sources/doc/Automate.fig
===================================================================
--- sources/doc/Automate.fig	(revision 27)
+++ sources/doc/Automate.fig	(revision 27)
@@ -0,0 +1,65 @@
+#FIG 3.2
+Landscape
+Center
+Inches
+Letter  
+100.00
+Single
+-2
+1200 2
+6 1725 1050 7650 6450
+1 2 0 1 0 0 51 -1 20 0.000 1 0.0000 4725 2400 1125 487 3600 2400 5850 2400
+1 2 0 1 0 7 50 -1 20 0.000 1 0.0000 4696 2349 1125 487 3571 2349 5821 2349
+1 2 0 1 0 7 50 -1 20 0.000 1 0.0000 3150 5137 1125 487 2025 5137 4275 5137
+1 2 0 1 0 7 50 -1 20 0.000 1 0.0000 6225 5137 1125 487 5100 5137 7350 5137
+1 3 0 1 0 0 50 -1 20 0.000 1 0.0000 3150 1425 60 60 3150 1425 3210 1425
+1 3 0 1 0 0 50 -1 20 0.000 1 0.0000 4650 1425 60 60 4650 1425 4710 1425
+1 3 0 1 0 0 50 -1 20 0.000 1 0.0000 4650 5100 30 30 4650 5100 4680 5100
+1 3 0 1 0 0 50 -1 20 0.000 1 0.0000 3150 6075 60 60 3150 6075 3210 6075
+1 3 0 1 0 0 50 -1 20 0.000 1 0.0000 6225 6075 60 60 6225 6075 6285 6075
+1 2 0 1 0 0 51 -1 20 0.000 1 0.0000 6225 5175 1125 487 5100 5175 7350 5175
+1 2 0 1 0 0 51 -1 20 0.000 1 0.0000 3163 5176 1125 487 2038 5176 4288 5176
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
+	1 1 1.00 60.00 120.00
+	 4650 5100 5100 5100
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
+	1 1 1.00 60.00 120.00
+	 6225 5625 6225 6075
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
+	1 1 1.00 60.00 120.00
+	 3150 5625 3150 6075
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
+	1 1 1.00 60.00 120.00
+	 4650 1425 4650 1875
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3
+	1 1 1.00 60.00 120.00
+	 4650 3900 4650 5100 4275 5100
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
+	1 1 1.00 60.00 120.00
+	 3150 1425 3150 4650
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
+	1 1 1.00 60.00 120.00
+	 4650 2850 4650 3300
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 4
+	1 1 1.00 60.00 120.00
+	 5250 3600 6450 3600 6450 2325 5775 2325
+2 3 0 1 0 7 49 -1 -1 0.000 0 0 -1 0 0 4
+	 4050 3300 4200 3600 4050 3900 4050 3300
+2 2 0 1 0 11 50 -1 20 0.000 0 0 -1 0 0 5
+	 4050 3300 5250 3300 5250 3900 4050 3900 4050 3300
+2 2 0 1 0 0 51 -1 20 0.000 0 0 -1 0 0 5
+	 4125 3375 5325 3375 5325 3975 4125 3975 4125 3375
+2 4 0 2 0 30 52 -1 20 0.000 0 0 7 0 0 5
+	 7575 6075 1800 6075 1800 1425 7575 1425 7575 6075
+4 0 0 50 -1 0 12 0.0000 4 135 825 4275 6450 OUTPUTS\001
+4 0 0 50 -1 0 12 0.0000 4 135 645 3525 1200 INPUTS\001
+4 0 0 50 -1 0 12 0.0000 4 135 660 2625 4950 MEALY\001
+4 0 0 50 -1 0 12 0.0000 4 135 1200 2625 5175 GENERATION\001
+4 0 0 50 -1 0 12 0.0000 4 135 930 2625 5400 FUNCTION\001
+4 0 0 50 -1 0 12 0.0000 4 135 1200 5775 5175 GENERATION\001
+4 0 0 50 -1 0 12 0.0000 4 135 675 5775 4950 MOORE\001
+4 0 0 50 -1 0 12 0.0000 4 135 930 5775 5400 FUNCTION\001
+4 0 0 50 -1 0 12 0.0000 4 135 1095 4200 2325 TRANSITION\001
+4 0 0 50 -1 0 12 0.0000 4 135 930 4200 2550 FUNCTION\001
+4 0 0 50 -1 0 12 0.0000 4 135 675 4350 3675 STATES\001
+-6
Index: sources/doc/Makefile.am
===================================================================
--- sources/doc/Makefile.am	(revision 27)
+++ sources/doc/Makefile.am	(revision 27)
@@ -0,0 +1,28 @@
+
+if BUILD_DOCS
+ps_pdf_doc=SystemCASS.pdf SystemCASS.ps
+eps_figures=SystemeType.eps Automate.eps
+endif
+
+doc_DATA = $(ps_pdf_doc)
+#latex_opts=-interaction batchmode #
+latex_opts= -halt-on-error
+
+%.pdf: %.ps
+	ps2pdf $<
+
+%.ps: %.dvi
+	dvips -o $@ $<
+
+%.bbl : %.aux
+	bibtex $*
+
+%.aux : %.tex %.bib $(eps_figures)
+	latex $(latex_opts) $<
+
+%.dvi %.bbl: %.tex %.bib $(eps_figures)
+	latex $(latex_opts) $<
+	latex $(latex_opts) $<
+
+%.eps: %.fig
+	fig2dev -L eps $< $@
Index: sources/doc/SystemCASS.bib
===================================================================
--- sources/doc/SystemCASS.bib	(revision 27)
+++ sources/doc/SystemCASS.bib	(revision 27)
@@ -0,0 +1,544 @@
+@inproceedings{ panda01systemc,
+    author = "Preeti Ranjan Panda",
+    title = "SystemC",
+    booktitle = "{ISSS}",
+    pages = "75-80",
+    year = "2001",
+    url = "citeseer.nj.nec.com/panda01systemc.html" }
+
+@inproceedings{ french95general,
+  author = "Robert S. French and Monica S. Lam and Jeremy R. Levitt and Kunle Olukotun", title = "A General Method for Compiling Event-Driven Simulations", 
+  booktitle = "Design Automation Conference", 
+  pages = "151-156", 
+  year = "1995", 
+  url = "citeseer.nj.nec.com/french95general.html" }
+
+@article{ badros00javaml, author = "Greg J. Badros", title = "Java{ML}: a markup language for {Java} source code", journal = "Computer Networks (Amsterdam, Netherlands: 1999)", volume = "33", number = "1--6", pages = "159--177", year = "2000", url = "citeseer.nj.nec.com/badros00javaml.html" }
+
+@inproceedings{ eventvsstatic, 
+	author       = "Buchmann Richard and Petrot Frederic and Greiner Alain",
+	title        = "Pilotage evenementiel versus ordonnancement statique",
+	organization = "ASIM/LIP6/UPMC",
+	booktitle    = "{Troisième colloque du GDR CAO de circuits et systèmes integres, Paris, France}",
+  year         = "2002",
+	pages        = "151-154",
+	date         = "Mai 2002" }
+
+@INPROCEEDINGS{simu97-3,
+   author       = "Frederic Petrot and Denis Hommais and Alain Greiner",
+   title        = "Cycle Precise Core Based Hardware/Software System
+                   Simulation with Predictable Event Propagation",
+   organization = "ASIM/LIP6/UPMC",
+   booktitle    = "Proceeding of the $23^{\mathrm{rd}}$ Euromicro Conference",
+   address      = "Budapest, Hungary",
+   pages        = "182--187",
+   publisher    = "IEEE",
+   month        = sep,
+   year         = 1997 
+}  
+
+@article{ chang01fast,
+    author = "Felix Sheng-Ho Chang and Alan J. Hu",
+    title = "Fast Specification of Cycle-Accurate Processor Models",
+    booktitle = "Proc. International Conf. Computer Design ({ICCD})",
+    publisher = "IEEE Computer Society Press",
+    pages = "488--492",
+    year = "2001",
+    url = "citeseer.nj.nec.com/chang01fast.html" }
+
+@manual{program_transform,
+	title = "The Program Transformation Wiki",
+	note  = "http://www.program-transformation.org"}
+
+@misc{olmos-visser, 
+	author = "Karina Olmos and Eelco Visser",
+	title = "Strategies for Source-to-Source Constant Propagation",
+	year = "2002",
+	url = "citeseer.nj.nec.com/olmos02constant.html" }
+
+@manual{systemc_osci,
+	title = "OSCI",
+	note  = "http://www.systemc.org"}
+
+@manual{GCCXML,
+	title = "GCC\_XML",
+	note  = "http://www.gccxml.org"}
+
+@misc{for-lukai, 
+        author = "Mar Center For", 
+        title = "Lukai Cai and Daniel Gajski", 
+	url = "citeseer.nj.nec.com/561051.html" }
+
+@manual{SystemC-2.0.1-LRM,
+	title = "SystemC 2.0.1 Language Reference Manual",
+        author = "OSCI", 
+        year = "2003",
+	note  = "http://www.systemc.org"}
+
+@INPROCEEDINGS{TLM-SoC-SC2.0,
+	Author = "Sudeep Pasricha", 
+	organization = "STMicrolectronics",
+	title      = "Transaction level modeling of SoC with SystemC 2.0",
+	year     = "2002"
+}
+
+@INPROCEEDINGS{Empirical-Study-SC,
+	Author       = "Ando Ki", 
+	organization = "R\&D Center,Dynalith Systems, Korea",
+	title        = "Internal Report",
+	booktitle    = "Empirical Study of SystemC",
+	year         = "2003",
+	url          = "http://www.dynalith.com"
+}
+
+@misc{SOCLIB,
+	Author = "SoCLIB", 
+	title      = "A modelisation \& simulation plat-form for system on
+chip",
+	year     = "2003",
+	note = "http://soclib.lip6.fr"
+}
+
+@misc{DISYDENT,
+	author = "LIP6",
+	title = "Digital System Design Environment",
+	note = "http://www-asim.lip6.fr/recherche/disydent"
+}
+
+@manual{vci_specifications,
+	title = "Virtual Component Interface Standard",
+	note  = "http://www.vsi.org"}
+
+@inproceedings{ date04-mouchard,
+                author = "Daniel Gracia Perez and Gilles Mouchard and Olivier Temam",
+                title  = "A New Optimized Implemention of the SystemC Engine Using Acyclic Scheduling",
+                booktitle    = "Design, Automation and Test in Europe Conference and Exhibition Volume I (DATE'04)",
+                year         = "2004",
+                address      = "Paris, France",
+                organization = "ALCHEMY INRIA Futurs \& LRI, Paris South University",
+                publisher    = "IEEE",
+                pages        =  "10552" }
+
+@misc{ bjrklund02language,
+  author = "D. Bjrklund and J. Lilius",
+  title = "A language for multiple models of computation",
+  text = "Dag Bjrklund and Johan Lilius. A language for multiple models of
+computation.
+    In Symposium on Hardware/Software Codesign 2002. ACM, 2002.",
+  year = "2002",
+  url = "citeseer.ist.psu.edu/bjrklund02language.html" }
+
+@inproceedings{989013,
+ author = {Hiren D. Patel and Sandeep K. Shukla},
+ title = {Towards a heterogeneous simulation kernel for system level models: a SystemC kernel for synchronous data flow models},
+ booktitle = {GLSVLSI '04: Proceedings of the 14th ACM Great Lakes symposium on VLSI},
+ year = {2004},
+ isbn = {1-58113-853-9},
+ pages = {248--253},
+ location = {Boston, MA, USA},
+ doi = {http://doi.acm.org/10.1145/988952.989013},
+ publisher = {ACM Press},
+ address = {New York, NY, USA},
+ }
+
+@inproceedings{74398,
+ author = {Z. Wang and P. M. Maurer},
+ title = {Scheduling high-level blocks for functional simulation},
+ booktitle = {DAC '89: Proceedings of the 26th ACM/IEEE conference on Design automation},
+ year = {1989},
+ isbn = {0-89791-310-8},
+ pages = {87--90},
+ location = {Las Vegas, Nevada, United States},
+ doi = {http://doi.acm.org/10.1145/74382.74398},
+ publisher = {ACM Press},
+ address = {New York, NY, USA},
+ }
+
+@inproceedings{217522,
+ author = {Robert S. French and Monica S. Lam and Jeremy R. Levitt and Kunle Olukotun},
+ title = {A general method for compiling event-driven simulations},
+ booktitle = {DAC '95: Proceedings of the 32nd ACM/IEEE conference on Design automation},
+ year = {1995},
+ isbn = {0-89791-725-1},
+ pages = {151--156},
+ location = {San Francisco, California, United States},
+ doi = {http://doi.acm.org/10.1145/217474.217522},
+ publisher = {ACM Press},
+ address = {New York, NY, USA},
+ }
+
+@inproceedings{kahn3,
+ author = {G. Kahn},
+ title = {The Semantics of a simple language for parallel programming},
+ booktitle = {IFIP Congress : Information Processing},
+ year = {1974},
+ publisher = {North-Holland Publishing Co.},
+ }
+
+@manual{VSIAAD,
+	title = "VSIA Architecture Document",
+        author = "VSI Alliance", 
+        year = "1997",
+	note  = "http://www.vsia.org"}
+
+@inproceedings{ludo99,
+ author = { Jacomme Ludovic, Pétrot Frédéric, Bawa Rajesh K. },
+ title = {Formal Analysis of Single Wait VHDL processes for Semantic Based Synthesis},
+ booktitle = {12th IEEE International Conference on VLSI Design},
+ year = {1999},
+ location = {Goa, India},
+ pages = {151-156}}
+
+@inproceedings{ iceec04-buch,
+  author = "R. Buchmann and F. Petrot and A. Greiner",
+  title  = "Fast Cycle Accurate Simulator to simulate Event-Driven Behavior",
+  booktitle    = "Proceeding of The 2004 International Conference on Electrical, Electronic and Computer Engineering (ICEEC'04)",
+  year         = "2004",
+  address      = "Cairo, Egypt",
+  organization = "ASIM/LIP6/UPMC",
+  publisher    = "IEEE",
+  pages        =  "35-39" }
+
+@phdthesis{hommais,
+  author= {Hommais Denis},
+  title= {Une méthode d'évaluation et de synthèse des communications dans les systèmes intégrés matériel-logiciel},
+  year = {2001},
+  organization = "ASIM/LIP6/UPMC",
+  location = {Paris, France}
+}
+
+@phdthesis{jacomme,
+  author= {Jacomme Ludovic},
+  title = {Analyse sémantique de descriptions VHDL synchrones en vue de la
+synthèse},
+  year = {1999},
+  organization = "ASIM/LIP6/UPMC",
+  location = {Paris, France}
+}
+
+@book{mips_goodman,
+  title = {A programmer's view of computer architecture: with examples from the
+MIPS RISC architecture},
+  author = {James Goodman},
+  edition = {Fort Worth: Saunders College Pub.},
+  year = {1992},
+  isbn = {0030972213}
+}
+
+@book{mips_gerry,
+  title = {MIPS RISC architecture},
+  author = {Gerry Kane},
+  publisher = {Englewood Cliffs, NJ : Prentice-Hall},
+  year = {1988},
+  isbn = {0135847494}
+}
+
+@inproceedings{webmips,
+  title="WebMIPS: A New Web-Based MIPS Simulation Environment for Computer
+Architecture Education",
+  author = {Irina Branovic, Roberto Giorgi, Enrico Martinelli},
+  organization = {University of Siena, Italy}
+}
+
+ 
+@inproceedings{early_pipeline,
+  title="Fast Cycle-accurate Behavioral Simulation for Pipelined Processors
+Using Early Pipeline Evaluation",
+  booktitle= "Proceedings of ICCAD'03 conference",
+  author = {In-Cheol Park, Sehyeon Kang, Yongseok Yi},
+  year = "2003", 
+  address = {San Jose, California USA} 
+}
+
+@misc{visual_fastc,
+  title = "Visual Elite FastC",
+  organization = "Summit Design Inc."
+}
+
+@article{mealy,
+  title = "A method for synthesizing sequential circuits",
+  author= "G. Mealy",
+  booktitle="Bell System Technical J. 34",
+  year  = "1955",
+  pages = "1045-1079"
+}
+
+@article{moore,
+  author = "E. Moore",
+  title  = "Gedanken experiments on sequential machines",
+  booktitle = "Automata Studies",
+  edition = "C. Shannon et J. McCarthy",
+  publisher = "Princeton University Press",
+  address = "Princeton, New Jersey",
+  year = "1956",
+  pages = "129-153"
+}
+
+@article{rabin,
+  author = "M. Perles, M. Rabin et E. Shamir",
+  title = "The theory of definite automata",
+  publisher = "IEEE.",
+  booktitle = "Trans. Electron. Comput. 12",
+  year = "1963",
+  pages = "233-243"
+}
+
+@article{rabin2,
+  author = "M. O. Rabin et D. Scott",
+  title  = "Sequential Machines",
+  edition = "E. F. Moore",
+  publisher = "Addison-Wesley",
+  address   = "Massachussetts",
+  year = "1964",
+  pages = "63-91"
+}
+
+@article{358613,
+ author = {K. M. Chandy and J. Misra},
+ title = {Asynchronous distributed simulation via a sequence of parallel
+computations},
+ journal = {Commun. ACM},
+ volume = {24},
+ number = {4},
+ year = {1981},
+ issn = {0001-0782},
+ pages = {198--206},
+ doi = {http://doi.acm.org/10.1145/358598.358613},
+ publisher = {ACM Press},
+ address = {New York, NY, USA}
+}
+
+
+@inproceedings{37915,
+ author = {S. P. Smith and M. R. Mercer and B. Brodk},
+ title = {Demand driven simulation: BACKSIM},
+ booktitle = {DAC '87: Proceedings of the 24th ACM/IEEE conference on Design
+automation},
+ year = {1987},
+ isbn = {0-8186-0781-5},
+ pages = {181--187},
+ location = {Miami Beach, Florida, United States},
+ doi = {http://doi.acm.org/10.1145/37888.37915},
+ publisher = {ACM Press},
+ address = {New York, NY, USA}
+ }
+
+@inproceedings{123349,
+ author = {Zhicheng Wang and Peter M. Maurer},
+ title = {LECSIM: a levelized event driven compiled logic simulation},
+ booktitle = {DAC '90: Proceedings of the 27th ACM/IEEE conference on Design
+automation},
+ year = {1990},
+ isbn = {0-89791-363-9},
+ pages = {491--496},
+ location = {Orlando, Florida, United States},
+ doi = {http://doi.acm.org/10.1145/123186.123349},
+ publisher = {ACM Press},
+ address = {New York, NY, USA}
+ }
+
+@inproceedings{hadamard,
+  title = {Design of the Hadamard Coprocessor with the Alliance CAD System carried by Post-Graduating Students},
+  author = {Zerrouki Amal and Dunoyer Julien and Wajsbürt Franck and Derieux Anne},
+  booktitle = {3rd European Workshop on Microelectronics Education (EWME)},
+  location = {Aix En Provence, France},
+  year = {2000},
+  pages = {265-268}
+}
+
+@inproceedings{reuse,
+  author = {N. Agliada, A. Fin. and F. Fummi and M. Martignano and G. Pravadelli},
+  title  = {On the Reuse of VHDL Modules into SystemC Designs},
+  booktitle = {Proceedings IEEE Forum on Design Languages (FDL)},
+  location = {Lyon, France},
+  year = {2001}
+}
+
+@phdthesis{sidd,
+  author = {Siddhartha Devalapalli},
+  title = {Development of SystemC Modules from HDL for System-on-Chip
+Applications},
+  year = {2004},
+  school = {University of Tennessee},
+  location = {Knoxville}
+}
+
+@inproceedings{verilog2sc,
+  author = {L. Mahmoudi Ayough, A. Haj Abutalebi, O. F. Nadjarbashi and S. Hessabi},
+  title  = {Verilog2SC: A Methodology for Converting Verilog. HDL to SystemC},
+  booktitle = {Proceedings of the 11th International HDL Conference (HDL Con 2002)},
+  pages =  {211-217},
+  location = {San Jose, California, USA},
+  year = {2002}
+}
+
+@report{verilator,
+  author = {W. Snyder},
+  title  = {Verilator Environment},
+  note = {in NASCUG},
+  year = {2004}
+}
+
+@inproceedings{AIRE,
+  author = {J. C. Willis and P. A. Wilsey and G. D. Peterson and J. Hines and A. Zamfirescu and D. E. Martin and R. N. Newshutz},
+  title = "Advanced Intermediate Representation with Extensibility (AIRE)",
+  booktitle = "VHDL Users' Group Fall 1996 Conference",
+  pages = {33-40},
+  year = {1996}
+}
+
+@inproceedings{savant,
+  author = {D. E. Martin and P. A. Wilsey and P. Chawla},
+  title  = {SAVANT: An Extensible Object-Oriented Intermediate for VHDL},
+  booktitle = "VHDL Users' Group",
+  year = {1996},
+  pages = {275-281}
+}
+
+@inproceedings{Sil,
+  author = {E. Molenkamp and G. E. Mekenkamp},
+  title = {Sil: an intermediate for syntax based VHDL synthesis},
+  booktitle = {VHDL International Users Forum},
+  pages = {5.1-5.9},
+  year = {1995}
+}
+
+@report{qualitative_subset,
+  author = {D. Déharbe and D. Borrione},
+  title = {A qualitative finite subset of VHDL and semantics},
+  organization = {IMAG Institute},
+  year = {1993}
+}
+
+@inproceedings{doh94,
+  author = {G. Döhmen},
+  title = {Petri Nets as Intermediate Representation Between VHDL and Symbolic
+Transition Systems},
+  booktitle = {EURO-VHDL},
+  pages = {572-577},
+  location = {Grenoble, France},
+  year = {1994}
+}
+
+@inproceedings{OC93,
+  author = {S. Olcoz and J.M. Colom},
+  title  = {A Petri Net Approach for the Analysis of VHDL Descriptions},
+  booktitle = {CHARME},
+  pages  = {15-26},
+  year   = {1993}
+}
+
+@inproceedings{semantics,
+  author = {L. Jacomme and F. Pétrot and R.K. Bawa},
+  title  = {Formal Analysis of Single Wait VHDL Processes for Semantic Based
+Synthesis},
+  booktitle = {12th International Conference on VLSI Design},
+  pages = {151-156},
+  location = {Goa, India},
+  year = {1999}
+}
+
+@inproceedings{EE95,
+  author = {A. Evans and E. Encrenaz},
+  title  = {An Approach to the Synthesis of VHDL Concurrent Processes as a
+FSM},
+  booktitle = {IFIP WG 10.5 Workshop on Logic and Architecture Synthesis},
+  pages = {115-124},
+  location = {Grenoble, France},
+  year = {1995}
+}
+
+@inproceedings{ALLIANCE,
+  author = {A. Greiner and F. Pêcheux},
+  title  = {ALLIANCE : A Complete Set of CAD Tools for Teaching VLSI Design},
+  booktitle = {The 3rd Eurochip Workshop on VLSI Design Training},
+  pages = {230-37},
+  location = {Grenoble, France},
+  year = {1992}
+}
+
+@inproceedings{RTL2CASS,
+  author = {R.K. Bawa and P. Guerrier and L. Jacomme and P. Bazargan-Sabet.},
+  title  = {An approach to behavioral synthesis from a formal model of vhdl},
+  booktitle = {VHDL International Users Forum},
+  pages = {117-126},
+  location = {Durham, Caroline du Nord, USA},
+  year = {1996}
+}
+
+@phdthesis{thesis_mouchard,
+  author= {Mouchard Gilles},
+  title = {Modélisation de Processeurs et de Systèmes},
+  year = {2004},
+  organization = "LRI"
+}
+
+@conference{PAPR1,
+  title = {Modular on chip multi processor for routing applications},
+  author = {E. Faure and D. Genius and F. Pétrot and S. Berrayana},
+  year = {2004},
+  month = september,
+  location = {Pise, Italie},
+  booktitle = {EUROPAR 04},
+  pages = {847-855}
+}
+
+@conference{PAPR2,
+  title = {Application télécom pour processeur réseau},
+  author = {E. Faure and S. Berrayana and D. Genius and F. Pétrot},
+  booktitle = {Sciences Electroniques Technologies de l'Information et des Télécommunications (SETIT'04)},
+  location = {Sousse, Tunisie},
+  month = {mars},
+  year = 2004
+}
+
+@conference{ROBDD1,
+	title = {Efficient implementation of a bdd package},
+  booktitle = {27th ACM/IEEE Design Automation Conference},
+  author = {Karl Brace and Richard Rudell and Randal Bryant},
+  pages = {677-691},
+  month = {August},
+  year = {1986}
+}
+
+@article{ROBDD2,
+	title = {Graph-based algorithms for boolean function manipulation},
+  author = {Randal Bryant},
+  booktitle = {IEEE Transaction on Computers},
+  pages = {677-691},
+  month = {August},
+  year = {1986}
+}
+
+@inproceedings{VHDL2SC,
+  title = {On the Reuse of VHDL Modules into SystemC Designs},
+  author = {N. Agliada and A. Fin and F. Fummi and M. Martignano and G. Pravdelli},
+  booktitle = {Forum on Design Languages (FDL01)},
+  year = {2001}
+}
+
+@inproceedings{stereovision,
+  title = "Mapping an Obstacles Detection, Stereo Vision-based, Software Application on a Multi-Processor System-on-chip",
+  author = {A. Greiner and F. Petrot and M. Carrier and M. Benabdenbi and R. Chotin-avot and R. Labayrade},
+  booktitle = {Proceedings of Intelligent Vehicles Symposium 2006},
+  publisher = {IEEE},
+  year = 2006,
+  month = June,
+  pages = {370-376}
+}
+
+@article{shannon,
+ author = {Bernard M. E. Moret},
+ title = {Decision Trees and Diagrams},
+ journal = {ACM Comput. Surv.},
+ volume = {14},
+ number = {4},
+ year = {1982},
+ issn = {0360-0300},
+ pages = {593--623},
+ doi = {http://doi.acm.org/10.1145/356893.356898},
+ publisher = {ACM Press},
+ address = {New York, NY, USA},
+ }
+
+
Index: sources/doc/SystemCASS.tex
===================================================================
--- sources/doc/SystemCASS.tex	(revision 27)
+++ sources/doc/SystemCASS.tex	(revision 27)
@@ -0,0 +1,273 @@
+%%%%%%%%%%
+%
+%$Log: SystemCASS.tex,v $
+%Revision 1.3  2005/03/25 14:33:01  buchmann
+%Typo :
+%-  dependAncy -> dependEncy
+%
+%sc_initialize :
+%-  Use a hash table to speed up elaboration step. (x40 faster)
+%
+%Tracing :
+%-  check for modification BEFORE building bit string.
+%-  use sprintf instead std string concatenation.
+%
+%Revision 1.2  2005/02/22 11:36:58  buchmann
+%Generate correctly documentations.
+%Add special flag to disable PAT tracing support.
+%
+%Revision 1.1  2005/01/20 09:15:12  buchmann
+%add following functions to sc_uint classes :
+%- operator []
+%- range (left,right)
+%
+%support to port dependency declarations.
+%print used precompiled options in verbose mode.
+%use pedantic flag.
+%add some rules to generate documentations.
+%
+%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\documentclass{report}
+\usepackage[latin1]{inputenc}
+\usepackage[T1]{fontenc}
+\usepackage{a4wide}
+\usepackage{charter}
+\usepackage{helvet}
+\usepackage{graphicx}
+\usepackage{amsmath}
+\usepackage{moreverb}
+\usepackage{longtable}
+\usepackage{calc}
+\usepackage{alltt}
+\usepackage{makeidx}
+\usepackage{xspace}
+\renewcommand{\rmdefault}{phv}
+\renewcommand{\sfdefault}{phv}
+\renewcommand{\ttdefault}{pcr}
+\newcommand{\SYSTEMCASS}{\textsc{SystemCASS}\xspace}
+\newcommand{\SYSTEMC}{\textsc{SystemC}\xspace}
+\newcommand{\SOCLIB}{\textsc{SoCLIB}\xspace}
+
+\ifx\pdfoutput\undefined
+\else
+    \pdfpagewidth  21.0cm
+    \pdfpageheight 29.7cm
+\fi
+\usepackage{hyperref}
+
+\voffset   -1in
+\hoffset   -1in
+\headheight 0pt
+\headsep    0pt
+\topmargin     25mm
+\oddsidemargin 29mm
+
+\textwidth     150mm
+\textheight    240mm
+\flushbottom
+\sloppy
+
+\tabcolsep 4pt
+\makeatletter
+\renewcommand{\section}
+   {\@startsection
+   {section}%
+   {1}%
+   {0mm}%
+   {-.5\baselineskip}%
+   {0.5\baselineskip}%
+   {\newpage\flushleft\normalfont\Large\scshape}}
+
+\renewcommand{\subsection}
+   {\@startsection
+   {subsection}%
+   {1}%
+   {0mm}%
+   {-.5\baselineskip}%
+   {0.5\baselineskip}%
+   {\flushleft\normalfont\large\scshape}}
+
+\renewcommand{\@seccntformat}[1]{{\csname the#1\endcsname}.\hspace{0.25em}}
+\makeatother
+\renewcommand{\thesection}{\arabic{section}}
+
+\renewcommand{\listinglabel}[1]{\rlap{\footnotesize\rmfamily\the#1}\hskip2em}
+
+%%%%%%%%%%%%%%%%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\begin{document}
+\thispagestyle{empty}
+~\vfill
+\begin{center}
+{\LARGE SystemCASS\\ SystemC Cycle Accurate System Simulator\\}
+\vfill
+\vfill
+%{\Large Documentation by Richard \textsc{Buchmann}}
+\vfill
+
+{\Large \today}
+
+\end{center}
+~\vfill
+
+%%%%%%%%%%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%
+\section{\SYSTEMCASS Overview}
+\label{SystemCass-overview}
+
+\SYSTEMCASS is a simulator that executes models described in \textbf{SystemC}.
+Its goal is to provide cycle precise simulation of systems build with
+hardware and software components, in order to evaluate performances
+for \emph{i.e.} hardware/software partitioning, system validation, early
+software development.
+
+An example of system is present Figure~\ref{system}.
+
+\begin{figure}[hbtp]\center\leavevmode
+\includegraphics[width=.7\textwidth,angle=270]{SystemeType}
+\caption{Typical embedded system build around VCI interfaces.}
+\label{system}
+\end{figure}
+
+The simulator simulates a \textbf{SystemC} netlist of predefined and/or
+user defined components.
+The components used to validate the methodology\cite{iceec04-buch} are a part of \SOCLIB library.
+Those models are VCI, bit and cycle accurate using the finite state machine with datapath modeling (Figure~\ref{Automate}).
+
+\begin{figure}[hbtp]\center\leavevmode
+\includegraphics[width=.6\linewidth]{Automate}
+\caption{Finite State Machine Modeling}
+\label{Automate}
+\end{figure}
+
+SystemCASS is a SystemC subset including~:
+\begin{itemize}
+\item
+core class~: sc\_module, sc\_signal, sc\_in, sc\_out, sc\_inout...
+\item
+core functions~: sc\_start, sc\_stop, sc\_simulation\_time...
+\item
+basic data types~: sc\_i[u]nt, sc\_big[u]int...
+\end{itemize}
+
+But SystemCASS doesn't include standard channels, 
+methodology-specific channels (master/slave library, verification library) 
+and elementary channels (timer, mutex, semaphore, fifo, etc.).
+
+This cycle accurate engine gives higher simulation speed 
+more suitable for embedded software development,
+and architectural exploration.
+
+%%%%%%%%%%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%
+\section{Installation}
+
+Set \textbf{SYSTEMC} environment variable to the \textbf{SystemCASS} base directory.\\
+Change the current directory to \textbf{\$(SYSTEMC)/src}.\\
+Run the Makefile.\\
+
+The distribution is as follow~:
+\begin{itemize} \itemsep=-0.8ex
+\item
+\emph{src}~: 
+Source files
+\item
+\emph{includes}~:
+Header files
+\item
+\emph{lib-linux}~:
+Debug and optimized libraries for linux distribution
+\item
+\emph{docs}~:
+Documentation
+\item
+\emph{examples}~:
+
+\begin{itemize} \itemsep=-0.8ex
+\item
+\emph{soclib\_date04}~:
+An hardware timer raises some interruptions on 4 Mips R3000 periodically.
+Whenever an interruption occurs, the application running on each CPU prints a "hello" message to its own output window.
+\item
+\emph{soclib\_spg}~:
+An specific hardware configures a DMA. The DMA copies some data into the
+a simple RAM component.
+\end{itemize}
+
+\end{itemize}
+
+%%%%%%%%%%%%%%%%%%%%%%%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%ù
+\section{Simulator Execution}
+\label{debbuger-usage}
+To use SystemCASS simulator, you just need to include the SystemCASS headers
+and link to SystemCASS library.
+
+To debug, two ways are available~:
+\begin{itemize}
+\item
+link to the debug library and use a debugger.
+\item
+generate a trace file by using dedicated functions and use a VCD viewer.
+\end{itemize}
+
+%%%%%%%%%%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{Simulator Compilation}
+
+Some macro definitions are available 
+to accelerate the simulation, 
+to check the netlist, variable dependancies, the scheduling
+to help on debugging
+and so on.
+
+You need to modify the Options.def file and rebuild the libraries.
+
+\subsection{Scheduling}
+
+The best performance you can reach using \SYSTEMCASS is obtained by using
+static scheduling.
+
+\SYSTEMCASS has two ways to compute the scheduling~:
+
+\begin{itemize}
+\item
+from the static sensitivity list (default)~:
+\SYSTEMC compatibility is good
+\item
+from the port dependency graph\cite{date04-mouchard} (USE\_PORT\_DEPENDENCY defined)~:
+The component designer need to declare the port dependancies in the
+constructor.
+The signal dependency graph is complete and then it has no cycle.
+At initialization step, the engine checks sensitivity list coherence.\\
+\it{Syntax~: outPort(inPort);}\\
+DUMP\_COMBINATIONAL\_LIST2DOT definition generates some DOT files to check
+dependancies.
+\end{itemize}
+
+The generated scheduling is written in code-XXX.cc file.
+KEEP\_GENERATED\_CODE definition allows to keep the file after simulation execution.\\
+
+PRINT\_SCHEDULE definition prints the scheduling at execution time.\\
+DUMP\_SCHEDULE\_STATS prints some miscellanous statistics.\\
+NO\_STATIC\_SCHEDULE disables the static scheduling.
+
+%%%%%%%%%%%%%%%
+%\part{Creating new components for \SYSTEMCASS}
+%%%%%%%%%%%%%%%
+
+%\section{Component description}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\bibliography{./SystemCASS}
+\bibliographystyle{unsrt}
+\end{document}
+
Index: sources/doc/SystemeType.fig
===================================================================
--- sources/doc/SystemeType.fig	(revision 27)
+++ sources/doc/SystemeType.fig	(revision 27)
@@ -0,0 +1,82 @@
+#FIG 3.2
+Landscape
+Center
+Inches
+Letter  
+100.00
+Single
+-2
+1200 2
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 1 2
+	1 1 1.00 60.00 120.00
+	1 1 1.00 60.00 120.00
+	 3075 1800 3075 2325
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 1 2
+	1 1 1.00 60.00 120.00
+	1 1 1.00 60.00 120.00
+	 4650 1800 4650 2325
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 1 2
+	1 1 1.00 60.00 120.00
+	1 1 1.00 60.00 120.00
+	 6300 1800 6300 2325
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 1 2
+	1 1 1.00 60.00 120.00
+	1 1 1.00 60.00 120.00
+	 7950 1800 7950 2325
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 1 2
+	1 1 1.00 60.00 120.00
+	1 1 1.00 60.00 120.00
+	 7950 2775 7950 3300
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 1 2
+	1 1 1.00 60.00 120.00
+	1 1 1.00 60.00 120.00
+	 6300 2775 6300 3300
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 1 2
+	1 1 1.00 60.00 120.00
+	1 1 1.00 60.00 120.00
+	 4650 2775 4650 3300
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 1 2
+	1 1 1.00 60.00 120.00
+	1 1 1.00 60.00 120.00
+	 3075 2775 3075 3300
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 1 2
+	1 1 1.00 60.00 120.00
+	1 1 1.00 60.00 120.00
+	 1500 2775 1500 3300
+2 2 0 2 0 30 50 -1 20 0.000 0 0 -1 0 0 5
+	 2550 750 3675 750 3675 1800 2550 1800 2550 750
+2 2 0 2 0 30 50 -1 20 0.000 0 0 -1 0 0 5
+	 4125 750 5250 750 5250 1800 4125 1800 4125 750
+2 2 0 2 0 30 50 -1 20 0.000 0 0 -1 0 0 5
+	 5775 750 6900 750 6900 1800 5775 1800 5775 750
+2 2 0 2 0 2 50 -1 20 0.000 0 0 -1 0 0 5
+	 7425 750 8475 750 8475 1800 7425 1800 7425 750
+2 2 0 2 0 5 50 -1 20 0.000 0 0 -1 0 0 5
+	 7425 3300 8550 3300 8550 4350 7425 4350 7425 3300
+2 2 0 2 0 3 50 -1 20 0.000 0 0 -1 0 0 5
+	 5775 3300 6900 3300 6900 4350 5775 4350 5775 3300
+2 2 0 2 0 3 50 -1 20 0.000 0 0 -1 0 0 5
+	 4125 3300 5250 3300 5250 4350 4125 4350 4125 3300
+2 2 0 2 0 3 50 -1 20 0.000 0 0 -1 0 0 5
+	 2550 3300 3675 3300 3675 4350 2550 4350 2550 3300
+2 2 0 2 0 3 50 -1 20 0.000 0 0 -1 0 0 5
+	 975 3300 2100 3300 2100 4350 975 4350 975 3300
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 1 2
+	1 1 1.00 60.00 120.00
+	1 1 1.00 60.00 120.00
+	 1500 1800 1500 2325
+2 4 0 2 0 31 50 -1 20 0.000 0 0 7 0 0 5
+	 9075 2775 600 2775 600 2325 9075 2325 9075 2775
+2 2 0 2 0 30 50 -1 20 0.000 0 0 -1 0 0 5
+	 975 750 2100 750 2100 1800 975 1800 975 750
+4 0 0 50 -1 2 20 0.0000 4 195 930 1050 1350 MIPS 0\001
+4 0 0 50 -1 2 20 0.0000 4 195 930 2625 1350 MIPS 1\001
+4 0 0 50 -1 2 20 0.0000 4 195 930 4200 1350 MIPS 2\001
+4 0 0 50 -1 2 20 0.0000 4 195 930 5850 1350 MIPS 3\001
+4 0 0 50 -1 2 20 0.0000 4 195 690 7575 1350 RAM\001
+4 0 0 50 -1 2 20 0.0000 4 195 1740 3600 2625 MicroNetwork\001
+4 0 0 50 -1 2 20 0.0000 4 195 975 7500 3900 TIMER\001
+4 0 0 50 -1 2 20 0.0000 4 195 810 5925 3900 TTY 3\001
+4 0 0 50 -1 2 20 0.0000 4 195 810 4275 3900 TTY 2\001
+4 0 0 50 -1 2 20 0.0000 4 195 810 2700 3900 TTY 1\001
+4 0 0 50 -1 2 20 0.0000 4 195 810 1125 3900 TTY 0\001
