Tool News
 
 
 

Tool News

Products Info
Downloads
Tools FAQs
MESC TOOL NEWS: MESCT-MR32R-000801D

MR32R
Precaution

Please take note of the following problems in using real-time OS MR32R for the M32R family of MCUs:
  • For the known problem "When a system call is issued in the interrupt handler, a task switch may be delayed", which was described in MESC TOOL NEWS "MR32R Precaution" issued on February 16, 2000, it has been found that the suggested workaround cannot circumvent the problem in specific cases.
  • In PD32R and PD32RSIM, using OS-debug functions in the MR trace or MR analyze Window may cause the hook routine for debugging to corrupt the contents of the R6 register.


  1. Problem on Task Switching (Supplement to MESC TOOL NEWS Issued on February 16, 2000)
    1.1 Versions Concerned
    MR32R V.1.00 Release 1 -- MR32R V.3.10 Release 1

    1.2 Description
    If all of the conditions in 1.3 below are satisfied to bring up the problem on delays of task switching, the workaround suggested in MESC TOOL NEWS issued on February 16, 2000, cannot circumvent this problem.

    1.3 Conditions
    The problem occurs if the following two conditions are satisfied:
    (1) Any of the system calls described in (a) of the table below is issued, and the system call returns corresponding error code described in (b) of the table.
    (2) A task switch request is generated by the issuance of a system call from the interrupt handler during processing any of the system calls described in (a).
    (a) System Calls(b) Error Code
    "cre_mbf"
    "cre_mbx"
    "cre_tsk"
    "def_exc"
    E_NOMEM
    "pget_blk"(*1)
    "pacp_por"
    "pcal_por"
    E_TMOUT
    "get_blk"
    "tget_blk"
    "pget_blk"
    (If memory s reserved without entering a wait state after issuance)
    E_OK

    *1. System call "pget_blk" is involved only when issued in MR32R V.3.00 Release 1 -- V.3.10 Release 1.

    1.4 Workaround
    In addition to the already-suggested workaround, issue the "ena_dsp" system call after issuing any one described in the above table.

    
     [Example]
        --------------------------------------------------------------
         ercd = cre_tsk(ID_task3,&deftsk);
         if ( ercd == E_NOMEM )    /* An error code tested */
          ena_dsp();           /* The "ena_dsp" system call Issued */
        --------------------------------------------------------------
    
    
    1.5 Schedule of Fixing Problem
    This problem has already been fixed in the latest version, MR32R V.3.20.


  2. Problem on Using MR Trace Functions
    2.1 Products Concerned
    MR32R:MR32R V.3.10 Release 1
    Debuggers:Emulator debugger PD32R V.1.00 Release 1 for M32xxxT-SDI-E
    Simulator debugger PD32RSIM V.1.00 Release 1 for M32R family

    2.2 Description
    If the conditions described in 2.3 below are satisfied, the hook routine for tracing ("mrdbg.lib" or "libmrdbg.a") may corrupt the contents of the R6 register.

    2.3 Conditions
    This problem occurs if the following two conditions are satisfied:
    (1) "After" is used as a condition of MR trace.
    (2) A system call is issued at the overflow of the trace buffer.

    2.4 Workaround
    Select "Before" as a condition of MR trace, or use MR32R V.3.20 Release 1.

    2.5 Schedule of Fixing Problem
    This problem has already been fixed in the latest version, MR32R V.3.20.


  3. How to Upgrade your product to MR32R V.3.20 Release 1
    M32R is a product for a special user. If you need the latest version of Real-time OS with online, please ask csc@renesas.com.






© 2008. Renesas Technology Corp., All rights reserved. Privacy | Legal