|
@@ -19,7 +19,7 @@ Once this is known, the application will:
|
|
1. Connect to the board, reset it, and enable the *REMOTE MODE*, so it accepts command from the application.
|
|
1. Connect to the board, reset it, and enable the *REMOTE MODE*, so it accepts command from the application.
|
|
2. If which I/O pins are actually outputs is not known, the board will try to guess this and print the result. This procedure is not bulletproof (or it would take the same time as the proper analisys: in case it did not detect some outputs, these will be found during the analisys and will halt the procedure, allowing the user to specify them correctly for the next run).
|
|
2. If which I/O pins are actually outputs is not known, the board will try to guess this and print the result. This procedure is not bulletproof (or it would take the same time as the proper analisys: in case it did not detect some outputs, these will be found during the analisys and will halt the procedure, allowing the user to specify them correctly for the next run).
|
|
3. The analisys will start. The procedure can take hours to complete.
|
|
3. The analisys will start. The procedure can take hours to complete.
|
|
-4. A truth table formatted in a way that the **espresso** heuristic logic minimizer likes is saved to a file.
|
|
|
|
|
|
+4. A JSON file that collects every state of the outputs of the PAL and how they change depending on the inputs is saved to file.
|
|
|
|
|
|
### Supported devices
|
|
### Supported devices
|
|
|
|
|
|
@@ -46,7 +46,7 @@ java -jar /path/to/dupal_analyzer.jar <serial_port> <pal_type> <output_file> [he
|
|
|
|
|
|
- **serial_port:** is just the serial port to use to connect to the DuPAL board. Connection is hardcoded at **57600bps 8n1** without flow control.
|
|
- **serial_port:** is just the serial port to use to connect to the DuPAL board. Connection is hardcoded at **57600bps 8n1** without flow control.
|
|
- **pal_type:** is the type of PAL device that is going to be analyzed.
|
|
- **pal_type:** is the type of PAL device that is going to be analyzed.
|
|
-- **output_file:** The file where the analyzer will save the generated truth table.
|
|
|
|
|
|
+- **output_file:** The file where the analyzer will save the JSON output.
|
|
- **hex_output_mask:** This mask (a byte represented as an *hex number*) is used to tell the Analyzer which IOs are configured as outputs. If it's not present, the Analyzer will try to guess it by itself. It's usually advisable to let the guessing run for a few minutes, then restart the analisys by specifying the guessed mask. If the mask is wrong, during the analisys an error will be thrown as soon as what was thought as an input is found to be an output. At that point the analisys can be restarted with the new mask.
|
|
- **hex_output_mask:** This mask (a byte represented as an *hex number*) is used to tell the Analyzer which IOs are configured as outputs. If it's not present, the Analyzer will try to guess it by itself. It's usually advisable to let the guessing run for a few minutes, then restart the analisys by specifying the guessed mask. If the mask is wrong, during the analisys an error will be thrown as soon as what was thought as an input is found to be an output. At that point the analisys can be restarted with the new mask.
|
|
|
|
|
|
#### The output mask format
|
|
#### The output mask format
|