Compilation
Errors: |
Author:
Andy Prochazka Group: SysFX - Digital Signal Processor |
Background | Throughout Project development, you will experience many compiler problems
in MaxplusII. Perhaps the most anoying is the "Unknown Error" message that one
sometimes meets when using MaxPlusII. To some with extensive VHDL and particularily MaxPlus experience, these problems may be trivially solved, but to many with limited experience in the field, these problems can cause hours upon hour of frustration. The most frequent "Unknown Errors" are the following:
|
|
EntityInstantiation | This error occurs for one of the following two reasons:
Packages are the problem in this case. Sometimes the smallest error in declaration syntax can cause MaxPlus II to throw this error. It is difficult to fix the problem since MaxPlus II doesn't indicate where the problem is. The quick solution is simple. The following steps detail this solution: 1. Forget Remote Library and Remote Package Files. Bring all your packages and entity declarations into the current work directory. 2. Re-compile all the entities and Packages in the new directory. There will now be a lot of files in this directory... No problem, this is the quick-fix approach. 3. Remove all remote library file references in your current project and replace them with the new libraries in the current directory. All component or entities should now look like the following: adder1: entity adder.adder_pkg 4. Now recompile and the error won't bother you any more. |
|
Date Error | This error occurs for one of the following reasons:
Follow these steps to correct the problem: 1. Recompile everything from the bottom up. The dates are then in order, everything is current and the project should compile correctly. Usually this fixes the problem. If not, proceed to step 2. 2. There is a library problem. This means that even if you do correct the date error, there will be an instantiation problem waiting just arround the corner. Follow the instructions in EntityInstantiation to correct the problem. |
|
Max Plus II Crashes Every Time you Try to Compile | This is a frustrating problem that wastes a lot of time.
Every time you compile, you have to re-start the program which takes a minute or so. This
can turn into hours. The cause of this problem is usually a lot of entity declarations and
an I/O bug with one or more of them. The following pointers will patch the code together to the point that it will not crash MaxPlus II, but it is worth going through your code looking for logic errors when you have time. 1. Look through all of your entity declarations. If you are sure that the problem does not lie in port mapping of the components in your design, proceed to the step 3. 2. Drop all input ports to GND and all output ports to the outputs in your entity. Compile continually, hooking up each port correctly until you hit a crash again. There's your problem. If this doesn't work, proceed to the next step. 3. There is a problem with one of your processes. Ususally, this happens when some processes in your design are being given incorrect clock signals. Tie your clock signal into a generic input clock signal from the entity and tie that to ground. For now, the code will compile, but the process will not run. The problem most likely lies in the logical progression of the process. Check your thinking on the process and try again. 4. If nothing else works, hack out entities until the code doesn't crash. The last entity that you had to hack out is the one causing the problem. |