diff options
author | Alex AUVOLAT <alex.auvolat@ens.fr> | 2014-01-09 16:10:58 +0100 |
---|---|---|
committer | Alex AUVOLAT <alex.auvolat@ens.fr> | 2014-01-09 16:10:58 +0100 |
commit | 8d87eacbcb26e7abc429d7824e90c617f172045e (patch) | |
tree | 07cffa442f5170503a7148347b969c76435415c0 /README | |
parent | 35e0c0f16f58a7503045de5e047e029dd06983a2 (diff) | |
download | SystDigit-Projet-8d87eacbcb26e7abc429d7824e90c617f172045e.tar.gz SystDigit-Projet-8d87eacbcb26e7abc429d7824e90c617f172045e.zip |
Make things great !
Diffstat (limited to 'README')
-rw-r--r-- | README | 36 |
1 files changed, 24 insertions, 12 deletions
@@ -36,6 +36,12 @@ cpu/ The netlist for the CPU is generated by Caml code (and not MiniJazz code), therefore this directory also contains Caml files for generating netlists with Caml code (see `netlist_gen.mli` and `example_cpu.ml` for usage example). + +asm/ + An assembler used to compile assembly files for the CPU. Produces ROM files + readable by the simulator. + $ cd asm/ + $ make monitor/ A C program used to monitor the simulator. The monitor has many functionnalities : @@ -84,6 +90,10 @@ Compile the monitor : $ cd monitor/; make; cd .. +Compile the assembler : + + $ cd asm/; make; cd .. + Run the CPU with the monitor : $ cd cpu/; make @@ -244,22 +254,25 @@ default stdin, but can be redirected from a file using the -in option) and of writing the outputs at each step to a file (by default stdout, but can be redirected with -out). -The input format is extremely straightforward : at each step, read a line -containing for each input variable, *in the order given in the program file*, -either a binary value (represented by a series of bits given in the standard -order), either a decimal value prefixed with a slash (/), which is then -converted to binary according to the standard representation defined above. - -The output format contains at each step one line for each output variable, in -the format : -<variable name>\t<binary representation>\t<decimal representation> -The output contains an empty line at the end of every cycle. - When the simulator is launched, it sends an output describing the I/O mechanism of the simulated circuit : <number of inputs> <number of outputs>\n [for each input : <input size> <input name>\n] +The input format is extremely straightforward : at each step, read a line +begenning with the keyword FEED followed by, for each input variable, *in the +order given in the program file*, either a binary value (represented by a series +of bits given in the standard order), either a decimal value prefixed with a +slash (/), which is then converted to binary according to the standard +representation defined above. + +The output format contains at each step one line with the keyword FED, followed +by one line for each output variable, in the format : + + <variable name>\t<binary representation>\t<decimal representation> + +The output contains an empty line at the end of every cycle. + How ROMs are handled -------------------- @@ -301,7 +314,6 @@ NEXT STEPS ---------- - Finish ALU -- Code assembler - Code basic OS for the CPU |