| |
Kernel Products

Portable smx (psmx)
psmx is the portable version of smx. It comes with a concise, well-written porting guide that makes porting smx to a non-supported or custom processor a simple process.
psmx is delivered with full smx and smxBSP source code, smx manuals, a porting guide, an x86 reference port, and a pre-built, PC-version of pmEasy for the reference port.
psmx complements other portable Micro Digital products such as smxFile, smxNet, and smxPEG, and it may be used with them.
For more information about smx, see the smx datasheet and smx Special Features brochure.
Target Port
psmx is written almost entirely in C. Hence the first step in porting psmx is to get a clean compile of the psmx library and of the smx Protosystem, using the cross-compiler selected for the target processor. This is normally easy to do since psmx has very clean C code - it compiles without errors or warnings for several commercial compilers. Note: psmx does require a minimal C++ compiler. This usually is not a problem. (If it is, contact us.)
The next step is to write assembly macros for time-critical and processor-dependent operations. There are 12 of these:
- DISABLE() interrupts
- ENABLE() interrupts
- ENTER_ISR()
- EXIT_ISR()
- BUILD_NEW_STACK()
- SWITCH_TO_NEW_STACK()
- ADJUST_NEW_STACK()
- SAVE_SP_TO_TCB()
- PUSH_SSR_REGS()
- POP_SSR_REGS()
- CALL_EXIT_ROUTINE_CPP
- CALL_ENTRY_ROUTINE_CPP
As is apparent, these are basic operations, which should pose no problem for any reasonable processor. Most can be implemented with just a few assembly instructions and should be an easy job for someone experienced with the target processor. For more information about the asembly macros see the smx Porting Guide on our website.
Once the assembly macros are written and debugged, psmx is ready to run on the target processor. The final step is to alter the smx Board Support Package, smxBSP, for the specific board.
smxBSP
Of the many smxBSP's for supported boards, we will include the closest match to your board. The smxBSP API provides the hardware interface to smx and other smx> products. Supporting new hardware usually requires only small modifications to the smxBSP routines. See the smxBSP brochure for more information.
Reference Port
Part of the psmx package is an x86 reference port that can be run on any ordinary PC. This is good as a confidence test and it is good for becoming familiar with smx. Tools required for this activity are:
- Microsoft Visual C++ 32-bit V5 or V6
- MASM V6.1x
Make files are provided to make the x86 versions of the psmx library and the smx Protosystem. The Protosystem includes startup and example code and serves as the basis for future applications. The make file links it with the smx86 reference library and binds it with pmEasy into an EXE file.
Having rebooted the computer to DOS, the EXE file can be loaded and started from DOS. pmEasy runs first. It switches the processor into protected mode, and then loads the actual application, which in this case is the Protosystem. The demo part of the Protosystem will display run-time information on the screen. This completes the confidence test.
Using smxSim
An alternative scenario is to purchase smxSim with psmx. smxSim permits building and testing psmx and the Protosystem using project files under Microsoft Visual Studio. This is useful not only for the confidence test, but also for learning smx and doing actual application code development while the target hardware is being developed.
smxSim also supports smx++ and PEG, but not smxFile and smxNet. See the smxSim Product Brief for more information.
For More Information
|
|
............................................................... |
................................................................
|
| |
 |
Register now for more info. |
| |
| |
|
|