From bdaa8844be64818cab4bd8e77e91bb7af0bfcf98 Mon Sep 17 00:00:00 2001 From: ymherklotz Date: Sun, 17 Jan 2021 10:18:00 +0000 Subject: deploy: 91ef287ac751a674fab3ecf089101fa2b6062a97 --- docs/building/index.html | 6 +++--- docs/index.html | 6 +++--- docs/index.xml | 4 ++-- docs/using-vericert/index.html | 6 +++--- 4 files changed, 11 insertions(+), 11 deletions(-) (limited to 'docs') diff --git a/docs/building/index.html b/docs/building/index.html index 1095a73..1652882 100644 --- a/docs/building/index.html +++ b/docs/building/index.html @@ -2,10 +2,10 @@ The project is written in Coq, a theorem prover, which is extracted to OCaml so that it can then be compiled and executed. The dependencies of this project are the following: Coq: theorem prover that is used to also program the HLS tool.">Building Vericert | Vericert -
+ Coq: theorem prover that is used to also program the HLS tool.">Building Vericert | Vericert +
Building Vericert -

To build Vericert, the provided Makefile can be used. External dependencies are needed to build the project, which can be pulled in automatically with nix using the provided default.nix and shell.nix files.

The project is written in Coq, a theorem prover, which is extracted to OCaml so that it can then be compiled and executed. The dependencies of this project are the following:

  • Coq: theorem prover that is used to also program the HLS tool.
  • OCaml: the OCaml compiler to compile the extracted files.
  • bbv: an efficient bit vector library.
  • dune: build tool for ocaml projects to gather all the ocaml files and compile them in the right order.
  • menhir: parser generator for ocaml.
  • findlib to find installed OCaml libraries.
  • GCC: compiler to help build CompCert.

These dependencies can be installed manually, or automatically through Nix.

Definition help := 0.
+

To build Vericert, the provided Makefile can be used. External dependencies are needed to build the project, which can be pulled in automatically with nix using the provided default.nix and shell.nix files.

The project is written in Coq, a theorem prover, which is extracted to OCaml so that it can then be compiled and executed. The dependencies of this project are the following:

  • Coq: theorem prover that is used to also program the HLS tool.
  • OCaml: the OCaml compiler to compile the extracted files.
  • bbv: an efficient bit vector library.
  • dune: build tool for ocaml projects to gather all the ocaml files and compile them in the right order.
  • menhir: parser generator for ocaml.
  • findlib to find installed OCaml libraries.
  • GCC: compiler to help build CompCert.

These dependencies can be installed manually, or automatically through Nix.

Definition help := 0.
 

Downloading CompCert #

CompCert is added as a submodule in the lib/CompCert directory. It is needed to run the build process below, as it is the one dependency that is not downloaded by nix, and has to be downloaded together with the repository. To clone CompCert together with this project, you can run:

git clone --recursive https://github.com/ymherklotz/vericert
 

If the repository is already cloned, you can run the following command to make sure that CompCert is also downloaded:

git submodule update --init
diff --git a/docs/index.html b/docs/index.html
index 1e4364f..0e096bc 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -1,7 +1,7 @@
 Docs | Vericert
-
+ The design shown in Figure 1 shows how Vericert leverages an existing verified C compiler called CompCert to perform this translation.">Docs | Vericert +
Docs -

Vericert translates C code into a hardware description language called Verilog, which can then be synthesised into hardware, to be placed onto a field-programmable gate array (FPGA) or application-specific integrated circuit (ASIC).

Figure 1: Current design of Vericert, where HTL is an intermediate language representing a finite state machine with data-path (FSMD) and Verilog is the target language.

Figure 1: Current design of Vericert, where HTL is an intermediate language representing a finite state machine with data-path (FSMD) and Verilog is the target language.

The design shown in Figure 1 shows how Vericert leverages an existing verified C compiler called CompCert to perform this translation.

\ No newline at end of file +

Vericert translates C code into a hardware description language called Verilog, which can then be synthesised into hardware, to be placed onto a field-programmable gate array (FPGA) or application-specific integrated circuit (ASIC).

Figure 1: Current design of Vericert, where HTL is an intermediate language representing a finite state machine with data-path (FSMD) and Verilog is the target language.

Figure 1: Current design of Vericert, where HTL is an intermediate language representing a finite state machine with data-path (FSMD) and Verilog is the target language.

The design shown in Figure 1 shows how Vericert leverages an existing verified C compiler called CompCert to perform this translation.

\ No newline at end of file diff --git a/docs/index.xml b/docs/index.xml index 199ed30..c1898d0 100644 --- a/docs/index.xml +++ b/docs/index.xml @@ -1,3 +1,3 @@ -Docs on Vericerthttps://ymherklotz.github.io/vericert-docs/docs/Recent content in Docs on VericertHugo -- gohugo.ioen-us© 2020-2021 Yann HerklotzBuilding Vericerthttps://ymherklotz.github.io/vericert-docs/docs/building/Mon, 01 Jan 0001 00:00:00 +0000https://ymherklotz.github.io/vericert-docs/docs/building/To build Vericert, the provided Makefile can be used. External dependencies are needed to build the project, which can be pulled in automatically with nix using the provided default.nix and shell.nix files. +Docs on Vericerthttps://vericert.ymhg.org/docs/Recent content in Docs on VericertHugo -- gohugo.ioen-us© 2020-2021 Yann HerklotzBuilding Vericerthttps://vericert.ymhg.org/docs/building/Mon, 01 Jan 0001 00:00:00 +0000https://vericert.ymhg.org/docs/building/To build Vericert, the provided Makefile can be used. External dependencies are needed to build the project, which can be pulled in automatically with nix using the provided default.nix and shell.nix files. The project is written in Coq, a theorem prover, which is extracted to OCaml so that it can then be compiled and executed. The dependencies of this project are the following: -Coq: theorem prover that is used to also program the HLS tool.Using Vericerthttps://ymherklotz.github.io/vericert-docs/docs/using-vericert/Mon, 01 Jan 0001 00:00:00 +0000https://ymherklotz.github.io/vericert-docs/docs/using-vericert/Vericert can be used to translate a subset of C into Verilog. \ No newline at end of file +Coq: theorem prover that is used to also program the HLS tool.Using Vericerthttps://vericert.ymhg.org/docs/using-vericert/Mon, 01 Jan 0001 00:00:00 +0000https://vericert.ymhg.org/docs/using-vericert/Vericert can be used to translate a subset of C into Verilog. \ No newline at end of file diff --git a/docs/using-vericert/index.html b/docs/using-vericert/index.html index 133e465..5f7cbbd 100644 --- a/docs/using-vericert/index.html +++ b/docs/using-vericert/index.html @@ -1,4 +1,4 @@ -Using Vericert | Vericert -
+Using Vericert | Vericert +
Using Vericert -

Vericert can be used to translate a subset of C into Verilog.

\ No newline at end of file +

Vericert can be used to translate a subset of C into Verilog.

\ No newline at end of file -- cgit