File List

Here is a list of all files with brief descriptions:
axp.c
axp.h [code]
b.h [code]
bios.cpp
bios.h [code]
codingstyle.doxygen
common.h [code]File included by some tlm components. Please, keep empty
compilingonwindows.doxygen
copyright.h [code]
dcache.cpp
dcache.h [code]
debugging.doxygen
decode.cpp
decode.h [code]
directive.h [code]
fir/display.cpp
pipe/display.cpp
fir/display.h [code]
pipe/display.h [code]
exec.cpp
exec.h [code]
fetch.cpp
fetch.h [code]
fft_flpt/fft.cpp
fft_fxpt/fft.cpp
fft_flpt/fft.h [code]
fft_fxpt/fft.h [code]
fifo.cpp
fifo.h [code]
filetree.doxygen
fir.cpp
fir.h [code]
fir_const.h [code]
fir_data.cpp
fir_data.h [code]
fir_fsm.cpp
fir_fsm.h [code]
fir_top.h [code]
floating.cpp
floating.h [code]
forkjoin.cpp
fx.h [code]
hppa.h [code]
i386.h [code]
icache.cpp
icache.h [code]
implemintro.doxygen
ksr1.h [code]
limitationspinapa.doxygen
linkelabast.doxygen
m88k.c
m88k.h [code]
2.1/dpipe/main.cpp
2.1/sc_export/main.cpp
2.1/sc_report/main.cpp
2.1/scx_barrier/main.cpp
2.1/specialized_signals/main.cpp
fft/fft_flpt/main.cpp
fft/fft_fxpt/main.cpp
fir/main.cpp
pipe/main.cpp
pkt_switch/main.cpp
risc_cpu/main.cpp
main_rtl.cpp
mainpage.doxygen
Makefile.doxygen
meas.c
mips.h [code]
mmxu.cpp
mmxu.h [code]
null.c
numgen.cpp
numgen.h [code]
otherparsers.doxygen
paging.cpp
paging.h [code]
pic.cpp
pic.h [code]
pinapa-analyze-body-utils.cppBody for the file pinapa-analyze-body-utils.h
pinapa-analyze-body-utils.h [code]Auxiliary functions used by pinapa-analyze-body.cpp
pinapa-analyze-body.cppAnalyze the body of a function to link function calls to SystemC primitives
pinapa-analyze-body.h [code]Analyze the body of a function to link function calls to SystemC primitives.

This is done after linking the function to the right process handler. We will for example need to link port.write(..) to the right port

pinapa-backend.cpp
pinapa-backend.h [code]Class-function ending parsing and connecting it to the following processes
pinapa-basic-slave-process.cppBody for the file pinapa-basic-slave-process.h
pinapa-basic-slave-process.h [code]Equivalent of sc_process_b for slave methods
pinapa-build-gcc-command.cppBody for the file pinapa-build-gcc-command.h
pinapa-build-gcc-command.h [code]Build a GCC command to generate loadable library
pinapa-bypass.cppSystemC simulation bypassing
pinapa-bypass.h [code]Bypass the SystemC simulator
pinapa-c-value.h [code]C value representation
pinapa-class-inst-deco.cppBody for the file pinapa-class-inst-deco.h
pinapa-class-inst-deco.h [code]Decoration for a class members instance
pinapa-config.cppBody for the file pinapa-config.h
pinapa-config.h [code]Configuration for the SystemC parser.

Contains the main configuration options for the SystemC parser (debugging, defensive programming, ...)

pinapa-decoration-base.h [code]Base class for decorations of other objects.

The object to decorate must have a public member

pinapa-decoration.cppTop level of the AST analyzer.

This file contains the function sc_analyze_function, which is called after GCC's front-end

pinapa-decoration.h [code]Decoration of GCC tree.

This header file is actually rather useless, but I like to have a header file for each .cc file ..

pinapa-event-deco.h [code]Decoration for a sc_event
pinapa-extend-slave-process.cpp
pinapa-extend-slave-process.h [code]Equivalent of sc_process_b for any method highlighting a slave TLM process
pinapa-finalize.cppBody for the file pinapa-finalize.h
pinapa-finalize.h [code]Code to be ran after parsing the file with GCC
pinapa-generated-config.h [code]
pinapa-get-initial-values.cppBody for the file pinapa-get-initial-values.h
pinapa-get-initial-values.h [code]Get the value of some fields in a class at the end of elaboration

This is done by dynamically generating C++ code that will get the values, compiling this piece of code, and dynamically load it

pinapa-hash.h [code]
pinapa-hooks.h [code]Hook of function in an Emacs-like fashion

The idea behind this is to avoid introducing dependencies to the SystemC parser in the modified SystemC kernel. The SystemC kernel depends on this file, and only it

pinapa-initialize.cppBody for the file pinapa-initialize.h
pinapa-initialize.h [code]Initialisation of SystemC structures before launching sc_main

In particular, function hooks have to be initialized here

pinapa-interface-plus.h [code]Some stuff to manipulate sc_interface
pinapa-interfaces-and-slaves.cppBody for the file pinapa-interfaces-and-slaves.h
pinapa-interfaces-and-slaves.h [code]Manages connection between sc_interface and slave modules
pinapa-main.cppBody for the file pinapa-main.h
pinapa-main.h [code]Main() fuction of the SystemC parser
pinapa-module-decoration.cpp
pinapa-module-decoration.h [code]Decoration for a SystemC module
pinapa-parser-all.cppEmpty body for the file pinapa-parser-all.h
pinapa-parser-all.h [code]Header including all the necessary external headers to work in the front-end
pinapa-parser-flags.cppBody for the file pinapa-parser-flags.h
pinapa-parser-flags.h [code]User flags for the parser
pinapa-parser-getopt.cppBody for the file pinapa-parser-getopt.h
pinapa-parser-getopt.h [code]Argument parsing for the parser
pinapa-port-deco.h [code]Decoration for TLM ports with the basic protocol
pinapa-port-plus.h [code]Some stuff to manipulate sc_ports
pinapa-port-to-port-hook.cppBody for the file pinapa-port-to-port-hook.h
pinapa-port-to-port-hook.h [code]Hook to keep track of port to port binding
pinapa-primitives.defDeclaration of SystemC type of instructions
pinapa-process-plus.h [code]Some stuff to manipulate sc_process
pinapa-read-write.cppBody for the file pinapa-read-write.h
pinapa-read-write.h [code]Code related to "read" and "write" parsing
pinapa-sc-interface-list-hook.cppBody for the file pinapa-sc-interface-list-hook.h
pinapa-sc-interface-list-hook.h [code]Function object to collect all sc_interface * in a list
pinapa-sc-object-deco.cpp
pinapa-sc-object-deco.h [code]Decoration for any registered SystemC object created at runtime
pinapa-sc-process.cppBody for the file pinapa-sc-process.h
pinapa-sc-process.h [code]Decoration for a SystemC process handler
pinapa-sensitive-hook.cppBody for the file pinapa-sensitive-hook.h
pinapa-sensitive-hook.h [code]Hook function for static sensitivity
pinapa-sensitive.h [code]Complement for SystemC sc_sensitive.h
pinapa-sensitivity-list.h [code]SystemC sensitivity list

Can be

  • Time
  • Or List of ports + events (static list)
pinapa-signal-decoration.h [code]Decoration for sc_signal
pinapa-simcontext.cppFriend of sc_simcontext
pinapa-simcontext.h [code]Friend of sc_simcontext

Its public members can be used to access private members of the original sc_simcontext class

pinapa-string.h [code]Additional utilities for the <string> standard C++ package
pinapa-systemc-light.h [code]Replacement for systemc.h, including only a few files, allowing to work with modules, signals, and ports. Only advantage : It compiles about twice faster !
pinapa-tac-slave-process.cppBody for the file pinapa-tac-slave-process.h
pinapa-tac-slave-process.h [code]Equivalent of sc_process_b for slave methods
pinapa-tree-decoration.cppBody for the file pinapa-tree-decoration.h
pinapa-tree-decoration.h [code]GCC's AST additional decoration for the SystemC parser.

A field has been added to each node of the trees from GCC. (This is the void * decoration; in the structure tree_type in the file tree.h

pinapa-tree-utils.cppWrappers and utilities to handle the compiler tree
pinapa-tree-utils.h [code]Basic utilities to ease the task of using GCC tree
pinapa-tree.h [code]Wrapper which includes the file tree.h.

Defines the type tree

pinapa-utils.h [code]General utilities
pinapa-version.h [code]
pkt.h [code]
powerpc.c
powerpc_mach.h [code]
powerpc_sys5.h [code]
qt.c
qt.h [code]
qtmd.h [code]
receiver.cpp
receiver.h [code]
reset_signal_is.cpp
rsa.cpp
sc_attribute.cpp
sc_attribute.h [code]
sc_bigint.h [code]
sc_biguint.h [code]
sc_bit.cpp
sc_bit.h [code]
sc_bit_ids.h [code]
sc_bit_proxies.h [code]
sc_boost.h [code]
sc_buffer.h [code]
sc_bv.h [code]
sc_bv_base.cpp
sc_bv_base.h [code]
sc_clock.cpp
sc_clock.h [code]
sc_clock_ports.h [code]
sc_cmnhdr.h [code]
sc_communication_ids.h [code]
sc_concatref.cpp
sc_concatref.h [code]
sc_constants.h [code]
sc_context.h [code]
sc_cor.h [code]
sc_cor_fiber.cpp
sc_cor_fiber.h [code]
sc_cor_pthread.cpp
sc_cor_pthread.h [code]
sc_cor_qt.cpp
sc_cor_qt.h [code]
sc_dynamic_processes.h [code]
sc_event.cpp
sc_event.h [code]SystemC events
sc_event_finder.cpp
sc_event_finder.h [code]
sc_event_queue.cpp
sc_event_queue.h [code]
sc_except.h [code]
sc_export.cpp
sc_export.h [code]
sc_externs.h [code]
sc_fifo.h [code]
sc_fifo_ifs.h [code]
sc_fifo_ports.h [code]
sc_fix.h [code]
sc_fixed.h [code]
sc_fx_ids.h [code]
sc_fxcast_switch.cpp
sc_fxcast_switch.h [code]
sc_fxdefs.cpp
sc_fxdefs.h [code]
sc_fxnum.cpp
sc_fxnum.h [code]
sc_fxnum_observer.cpp
sc_fxnum_observer.h [code]
sc_fxtype_params.cpp
sc_fxtype_params.h [code]
sc_fxval.cpp
sc_fxval.h [code]
sc_fxval_observer.cpp
sc_fxval_observer.h [code]
sc_hash.cpp
sc_hash.h [code]
sc_int.h [code]
sc_int32_mask.cpp
sc_int64_io.cpp
sc_int64_mask.cpp
sc_int_base.cpp
sc_int_base.h [code]
sc_int_ids.h [code]
sc_interface.cppSystemC interface
sc_interface.h [code]SystemC interfaces

Added decoration to sc_interface, and Pinapa related include

sc_iostream.h [code]
sc_join.cpp
sc_join.h [code]
sc_kernel_ids.h [code]
sc_lambda.cpp
sc_lambda.h [code]
sc_lambda_defs.h [code]
sc_lambda_exps.h [code]
sc_lambda_friends.h [code]
sc_length_param.cpp
sc_length_param.h [code]
sc_list.cpp
sc_list.h [code]
sc_logic.cpp
sc_logic.h [code]
sc_lv.h [code]
sc_lv_base.cpp
sc_lv_base.h [code]
sc_macros.h [code]
sc_macros_int.h [code]
sc_main.cppSystemC main function
sc_main_main.cppSystemC elaborate and simulate engine
sc_mempool.cpp
sc_mempool.h [code]
sc_module.cpp
sc_module.h [code]SystemC modules

Added some awful macro hack to get back the name of modules

sc_module_name.cpp
sc_module_name.h [code]
sc_module_registry.cpp
sc_module_registry.h [code]
sc_mutex.cpp
sc_mutex.h [code]
sc_mutex_if.h [code]
sc_name_gen.cpp
sc_name_gen.h [code]
sc_nbdefs.cpp
sc_nbdefs.h [code]
sc_nbexterns.cpp
sc_nbexterns.h [code]
sc_nbutils.cpp
sc_nbutils.h [code]
sc_object.cppSystemC objects

Added:

  • Updates parent field (backward compatibility)
  • Initialisation of the field pinapa_decoration
sc_object.h [code]SystemC objects

Added

  • a friend keyword.
  • a pointer to the parent.
  • the field sc_object::pinapa_decoration
sc_object_manager.cpp
sc_object_manager.h [code]
sc_port.cppSystemC basic ports
sc_port.h [code]SystemC port base classes.

Added a function get_interface_not_const() Added a friend keyword

sc_pq.cpp
sc_pq.h [code]
sc_prim_channel.cpp
sc_prim_channel.h [code]
sc_process.h [code]
sc_process_b.h [code]SystemC process: base class

Pointers to keep the name of the process and of the module, and a link to GCC's body

sc_process_base.cpp
sc_process_base.h [code]
sc_process_host.h [code]
sc_process_int.cpp
sc_process_int.h [code]
sc_process_table.h [code]SystemC process table

File added. (Source comes sc_simcontext.cpp)

sc_proxy.h [code]
sc_report.cpp
sc_report.h [code]
sc_report_handler.cpp
sc_report_handler.h [code]
sc_runnable.h [code]
sc_runnable_int.h [code]
sc_semaphore.cpp
sc_semaphore.h [code]
sc_semaphore_if.h [code]
sc_sensitive.cppSystemC sensitivity lists
sc_sensitive.h [code]Sensitivity list for a SystemC process.

By default, SystemC was keeping the list of sensitivity in ports. When an event was triggered in a signal, the corresponding process was waken up. This is a link port --> process

sc_signal.cpp
sc_signal.h [code]SystemC signal

Added some code to manage initialisation

sc_signal_ifs.h [code]SystemC signal interfaces

Added some code to manage initialisation

sc_signal_ports.cpp
sc_signal_ports.h [code]SystemC ports for signals

Removed a reference (&) in the arguments of the write method

sc_signal_resolved.cpp
sc_signal_resolved.h [code]
sc_signal_resolved_ports.cpp
sc_signal_resolved_ports.h [code]
sc_signal_rv.h [code]
sc_signal_rv_ports.h [code]
sc_signed.cpp
sc_signed.h [code]
sc_simcontext.cppSystemC simulation context.

  • Moved some code to sc_process_table $$ FSR
  • Replaced the body of sc_start by pinapa::parser_start()
  • One message in addition to the copyright
sc_simcontext.h [code]SystemC simulation context

Just a friend keyword added

sc_simcontext_int.h [code]
sc_stop_here.cpp
sc_stop_here.h [code]
sc_string.cpp
sc_string.h [code]
sc_temporary.h [code]
sc_time.cpp
sc_time.h [code]
sc_trace.cpp
sc_trace.h [code]
sc_ufix.h [code]
sc_ufixed.h [code]
sc_uint.h [code]
sc_uint_base.cpp
sc_uint_base.h [code]
sc_unsigned.cpp
sc_unsigned.h [code]
sc_utils_ids.cpp
sc_utils_ids.h [code]
sc_value_base.cpp
sc_value_base.h [code]
sc_vcd_trace.cpp
sc_vcd_trace.h [code]
sc_vector.h [code]
sc_ver.cpp
sc_ver.h [code]
sc_wait.cpp
sc_wait.h [code]
sc_wait_cthread.cpp
sc_wait_cthread.h [code]
sc_wif_trace.cpp
sc_wif_trace.h [code]
scfx_ieee.h [code]
scfx_mant.cpp
scfx_mant.h [code]
scfx_other_defs.h [code]
scfx_params.h [code]
scfx_pow10.cpp
scfx_pow10.h [code]
scfx_rep.cpp
scfx_rep.h [code]
scfx_string.h [code]
scfx_utils.cpp
scfx_utils.h [code]
scx_barrier.h [code]
scx_mutex_w_policy.cpp
scx_signal_int.cpp
scx_signal_int.h [code]
scx_signal_signed.cpp
scx_signal_signed.h [code]
scx_signal_uint.cpp
scx_signal_uint.h [code]
scx_signal_unsigned.cpp
scx_signal_unsigned.h [code]
sender.cpp
sender.h [code]
simple_bus.cpp
simple_bus.h [code]
simple_bus_arbiter.cpp
simple_bus_arbiter.h [code]
simple_bus_arbiter_if.h [code]
simple_bus_blocking_if.h [code]
simple_bus_direct_if.h [code]
simple_bus_fast_mem.h [code]
simple_bus_main.cpp
simple_bus_master_blocking.cpp
simple_bus_master_blocking.h [code]
simple_bus_master_direct.cpp
simple_bus_master_direct.h [code]
simple_bus_master_non_blocking.cpp
simple_bus_master_non_blocking.h [code]
simple_bus_non_blocking_if.h [code]
simple_bus_request.h [code]
simple_bus_slave_if.h [code]
simple_bus_slow_mem.h [code]
simple_bus_test.h [code]
simple_bus_tools.cpp
simple_bus_types.cpp
simple_bus_types.h [code]
simple_fifo.cpp
simple_perf.cpp
fft_flpt/sink.cpp
fft_fxpt/sink.cpp
fft_flpt/sink.h [code]
fft_fxpt/sink.h [code]
fft_flpt/source.cpp
fft_fxpt/source.cpp
fft_flpt/source.h [code]
fft_fxpt/source.h [code]
sparc.h [code]
stage1.cpp
stage1.h [code]
stage2.cpp
stage2.h [code]
stage3.cpp
stage3.h [code]
stimulus.cpp
stimulus.h [code]
stp.c
stp.h [code]
switch.cpp
switch.h [code]
switch_clk.cpp
switch_clk.h [code]
switch_reg.h [code]
systemc-patch.doxygen
systemc.h [code]SystemC main include file

Added a include

tree-example.cppFile including pinapa-tree.h
vax.h [code]
Generated by
Matthieu Moy <Matthieu.Moy@st.com>
Back to Pinapa Home Page