summaryrefslogtreecommitdiff
path: root/tp1/netlist_ast.ml
diff options
context:
space:
mode:
authorAlex AUVOLAT <alex.auvolat@ens.fr>2013-11-04 22:05:57 +0100
committerAlex AUVOLAT <alex.auvolat@ens.fr>2013-11-04 22:05:57 +0100
commitcebd07b64f1f537c5ecf00ec21ff4b7c4032f0a3 (patch)
tree9d2048313fe3ad4c92865c8f0236bed24e64449b /tp1/netlist_ast.ml
parentf253f98136def21b5e50c5922246e2ddfe315442 (diff)
downloadSystDigit-Projet-cebd07b64f1f537c5ecf00ec21ff4b7c4032f0a3.tar.gz
SystDigit-Projet-cebd07b64f1f537c5ecf00ec21ff4b7c4032f0a3.zip
Added stub C simulator (defined dumb-down syntax for netlists).
Diffstat (limited to 'tp1/netlist_ast.ml')
-rw-r--r--tp1/netlist_ast.ml42
1 files changed, 0 insertions, 42 deletions
diff --git a/tp1/netlist_ast.ml b/tp1/netlist_ast.ml
deleted file mode 100644
index ae16888..0000000
--- a/tp1/netlist_ast.ml
+++ /dev/null
@@ -1,42 +0,0 @@
-type ident = string
-
-module Env = struct
- include Map.Make(struct
- type t = ident
- let compare = compare
- end)
-
- let of_list l =
- List.fold_left (fun env (x, ty) -> add x ty env) empty l
-end
-
-type ty = TBit | TBitArray of int
-type value = VBit of bool | VBitArray of bool array
-
-type binop = Or | Xor | And | Nand
-
-type arg =
- | Avar of ident
- | Aconst of value
-
-type exp =
- | Earg of arg
- | Ereg of ident
- | Enot of arg
- | Ebinop of binop * arg * arg
- | Emux of arg * arg * arg
- | Erom of int (*addr size*) * int (*word size*) * arg (*read_addr*)
- | Eram of int (*addr size*) * int (*word size*)
- * arg (*read_addr*) * arg (*write_enable*)
- * arg (*write_addr*) * arg (*data*)
- | Econcat of arg * arg
- | Eslice of int * int * arg
- | Eselect of int * arg
-
-type equation = ident * exp
-
-type program =
- { p_eqs : equation list;
- p_inputs : ident list;
- p_outputs : ident list;
- p_vars : ty Env.t; }