wiki:TBR/BSP/Jmr3904

Version 25 (modified by Roskotheslayer, on 11/29/10 at 21:05:26) (diff)

/* Overview */

Jmr3904

{{Infobox BSP |BSP_name = jmr3904 |Manufacturer = Toshiba |Architecture = MIPS |CPU_model = Toshiba TX3904 |Simulator = Yes, included in GDB. }}

Overview

Intelligent dedicated systems and appliances used in interface, monitoring, communications, and control applications increasingly demand the services of a sophisticated, state-of-the-art operating system. Many such systems require advanced capabilities like: high resolution and user-friendly graphical user interfaces (GUIs); TCP/IP connectivity; substitution of reliable (and low power) flash memory solid state disk for conventional disk drives; support for 32-bit ultra-high-speed CPUs; the use of large memory arrays; and seemingly infinite capacity storage devices including CD-ROMs and hard disks.

The jmr3904 BSP is a Toshiba evalutation board for the TX3904. The TX3904 is an R3000 class system on chip with some timers and UARTS.

The most important thing about this BSP is that gdb has a simulator for it. The simulator is reasonably fast and accurate with the capability to simulate a clock interrupt source. It is one of the most frequently tested BSPs in RTEMS.

NOTE: GDB must be configured for mipstx39-* for this simulator to function correctly. This is why the mipstx39-rtems* RPMs are provided. The BSP can be built with mips-rtems* tools but can only be executed by the more specifically targetted gdb.

You can find manual here

Board Setup

The eCos Developer’s Kit package comes with a pair of ROMs that provide GDB support for the Toshiba JMR-TX3904 RISC processor reference board by way of CygMon?.

Images of these ROMs are also provided at BASE_DIR/loaders/tx39-jmr3904/cygmon50.bin and BASE_DIR/loaders/tx39-jmr3904/cygmon66.bin for 50 MHz and 66 MHz boards respectively. The ROMs are installed to sockets IC6 and IC7 on the memory daughterboard according to their labels. Attention should be paid to the correct orientation of these ROMs during installation.

The JMR3904 HAL package should be used when targeting the actual hardware. The same package can also be used when running on the full simulator, since this provides an accurate simulation of the hardware including I/O devices. To use the simulator in this mode the command `target sim --board=jmr3904' should be used from inside gdb.

The jmr3904 target provides the packages needed to run eCos on a Toshiba JMR-TX3904 board. This target can also be used when running in the full simulator, since the simulator provides an accurate simulation of the hardware including I/O devices. To use the simulator in this mode the command `target sim --board=jmr3904' should be used from inside gdb.

Using The BSP

The following is a session using the RTEMS 4.6 toolset to run hello.

$ mipstx39-rtems-run --board=jmr3904 hello.exe 
   *  HELLO WORLD TEST ***
Hello World
   *  END OF HELLO WORLD TEST ***

The following is a session using the RTEMS 4.6 toolset to run ticker.

$ mipstx39-rtems-run --board=jmr3904 ticker.exe 


   *  CLOCK TICK TEST ***
TA1  - rtems_clock_get - 09:00:00   12/31/1988
TA2  - rtems_clock_get - 09:00:00   12/31/1988
TA3  - rtems_clock_get - 09:00:00   12/31/1988
TA1  - rtems_clock_get - 09:00:05   12/31/1988
TA2  - rtems_clock_get - 09:00:10   12/31/1988
TA1  - rtems_clock_get - 09:00:10   12/31/1988
TA3  - rtems_clock_get - 09:00:15   12/31/1988
TA1  - rtems_clock_get - 09:00:15   12/31/1988
TA2  - rtems_clock_get - 09:00:20   12/31/1988
TA1  - rtems_clock_get - 09:00:20   12/31/1988
TA1  - rtems_clock_get - 09:00:25   12/31/1988
TA3  - rtems_clock_get - 09:00:30   12/31/1988
TA1  - rtems_clock_get - 09:00:30   12/31/1988
TA2  - rtems_clock_get - 09:00:30   12/31/1988
   *  END OF CLOCK TICK TEST ***

Test Reports

4.6.4: User:JoelSherrill? reports that it runs fine on gdb 5.3.

4.6.99.2: User::JoelSherrill? reports that it runs fine on gdb 6.3.