diff options
author | Tristan Gingold <tgingold@free.fr> | 2020-01-04 17:59:44 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2020-01-06 18:20:28 +0100 |
commit | 09af03505bbd72f676394415c16c14bea5154513 (patch) | |
tree | 8444da62bd105b00aa2321acc3785357c550b0cb /doc/internals/Overview.rst | |
parent | 61c0e71793576646cb8374cd462bcda7cf6e410e (diff) | |
download | ghdl-09af03505bbd72f676394415c16c14bea5154513.tar.gz ghdl-09af03505bbd72f676394415c16c14bea5154513.tar.bz2 ghdl-09af03505bbd72f676394415c16c14bea5154513.zip |
doc: add internals/ (WIP). Add a part for index.
Diffstat (limited to 'doc/internals/Overview.rst')
-rw-r--r-- | doc/internals/Overview.rst | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/doc/internals/Overview.rst b/doc/internals/Overview.rst new file mode 100644 index 000000000..3be8772b4 --- /dev/null +++ b/doc/internals/Overview.rst @@ -0,0 +1,18 @@ +.. _INT:Overview: + +Overview +######## + +`GHDL` is architectured like a traditionnal compiler. It has: + +* a driver (sources in :file:`src/ghdldrv`) to call the programs (compiler, assembler, linker) if needed. + +* a library (sources in :file:`src/grt`) to help execution at run-time. + +* a front-end (sources in :file:`src/vhdl`) to parse and analyse VHDL. + +* a back-end (in fact many, sources are in :file:`src/ortho`) to generate code. + +The architecture is modular. For example, it is possible to use the front-end in the `libghdl` library for the language server or to do synthesis (sources in :file:`src/synth`) instead of code generation. + +The main work is performed by the front-end, which is documented in the next chapter. |