RabbitCore RCM2100 User's Manual

> ## 2. Hardware Reference

> Chapter 2 describes the hardware components and principal hardware subsystems of the RabbitCore RCM2100 series. Appendix A, "RabbitCore RCM2100 Specifications," provides complete physical and electrical specifications.

> ### 2.1 RCM2100 Series Digital Inputs and Outputs

> Figure 1 shows the subsystems designed into the RCM2100 series.

> Figure 1. Rabbit Subsystems

> The RCM2100 has 40 parallel I/O lines grouped in five 8-bit ports available on headers J1 and J2. The 24 bidirectional I/O lines are located on pins PA0-PA7, PD0-PD7, and PE0-PE7. The pinouts for headers J1 and J2 are shown in Figure 2.

> Figure 2. RCM2100 I/O Pinouts

> The ports on the Rabbit 2000 microprocessor used in the RCM2100 series are configurable, and so the factory defaults can be reconfigured. Table 1 lists the Rabbit 2000 factory defaults and the alternate configurations.

> Table 1. RCM2100 Pinout Configurations
> Pin | Pin Name | Default Use | Alternate Use | Notes
> Header J1 | 1 | VCC |  |  |
> 2 | GND |  |  |
> 3 | PCLK | Output (Internal Clock) | Output | Turned off in software
> 4-11 | PA[7:0] | Parallel I/O | Slave port data bus SD0-SD7 |
> 12-24 | BA[12:0] | Output |  | Buffered Rabbit 2000 address bus
> 25 | PC0 | Output | TXD |
> 26 | PC1 | Input | RXD |
> 27 | PC2 | Output | TXC |
> 28 | PC3 | Input | RXC |
> 29 | PC4 | Output | TXB |
> 30 | PC5 | Input | RXB |
> 31 | PC6 | Output | TXA | Connected to programming port
> 32 | PC7 | Input | RXA
> 33-36 | PD[0:3] | Bitwise or parallel programmable I/O, can be driven or open-drain output |  | 16 mA sourcing and sinking current at full AC switching speed
> 37 | PD4 | ATXB output | Ethernet chip RSTDRV
> 38 | PD5 | ARXB input | Ethernet chip BD5
> 39 | PD6 | ATXA output | Ethernet chip BD6
> 40 | PD7 | ARXA input | Ethernet chip BD7
> Header J2 | 1 | PB0 | Input | Serial port clock CLKB |
> 2 | PB1 | Input | Serial port clock CLKA | CLKA is connected to programming port (header J5, pin 3)
> 3 | PB2 | Input | Slave port write /SWR |
> 4 | PB3 | Input | Slave port read /SRD |
> 5 | PB4 | Input | SA0 | Slave port address lines
> 6 | PB5 | Input | SA1
> 7 | PB6 | Output |  |
> 8 | PB7 | Output | Slave port attention line /SLAVEATTN |
> 9, 26, 39 | GND |  |  |
> 10-17 | BD[7:0] | Input/Output |  | Buffered Rabbit 2000 data bus
> 18 | PE7 | Bitwise or parallel programmable I/O | I7 output or slave port chip select /SCS |
> 19 | PE6 | I6 output | Ethernet chip IOWB
> 20 | PE5 | I5 output or INT1B input |
> 21 | PE4 | I4 output or INT0B input |
> 22 | PE3 | I3 output |
> 23 | PE2 | I2 output | Ethernet chip IORB
> 24 | PE1 | I1 output or INT1A input |
> 25 | PE0 | I0 output or INT0A input |
> 27, 40 | VCC |  |  |
> 28 | VBAT | 3 V battery input |  |
> 29 | VRAM | 2.1 V output |  | 100 µA maximum current draw
> 30 | /WDO | Output (Watchdog output) | May also be used to output a 30 µs pulse | Outputs a pulse when the internal watchdog times out
> Header J2 | 31-32 | SMODE1, SMODE0 | (0,0)--start executing at address zero |  | No programming cable attached
> SMODE0 =1, SMODE1 = 1 Cold boot from asynchronous serial port A at 2400 bps (programming cable connected) | (0,1)--cold boot from slave port (1,0)--cold boot from clocked serial port A | With programming cable attached
> 33 | /RESET | Reset output |  |
> 34 | /RES_IN | Reset input |  |
> 35 | STATUS | Output (Status) | Output |
> 36 | /BIOWR | Output (I/O buffer write strobe) |  |
> 37 | /BIORD | Output (I/O buffered strobe) |  |
> 38 | /BUFEN | Output (I/O buffer enable) |  |

> As shown in Table 1, pins PA0-PA7 can be used to allow the Rabbit 2000 to be a slave to another processor. PE0, PE1, PE4, and PE5 can be used as external interrupts INT0A, INT1A, INT0B, and INT1B. Pins PB0 and PB1 can be used to access the clock on Serial Port B and Serial Port A of the Rabbit microprocessor. Pins PD4 and PD6 can be programmed to be optional serial outputs for Serial Ports B and A. PD5 and PD7 can be used as alternate serial inputs by Serial Ports B and A.

> The Ethernet-enabled versions of the RCM2100 do not have 0 W resistors (jumpers) installed at R21, R24, and R35-R38, which allows PE6, PE2, and PD4-PD7 to connect to the RealTek Ethernet chip that is stuffed on those versions.

> #### 2.1.1 Dedicated Inputs

> PB0 and PB1 are designated as inputs because the Rabbit 2000 is operating in an asynchronous mode. Four of the input-only pins are located on PB2-PB5. These pins are used for the slave port. PB2 and PB3 are slave write and slave read strobes, while PB4 and PB5 serve as slave address lines SA0 and SA1, and are used to access the slave registers (SD0-SD7), which is the alternate assignment for parallel port A. When Port C is used as a parallel port, PC1, PC3, PC5, and PC7 are inputs only. These pins can alternately be selectively enabled to serve as the serial data inputs for Serial Ports D, C, B, and A.

> #### 2.1.2 Dedicated Outputs

> Two of the output-only pins are located on PB6-PB7. PB7 can also be used with the slave port as the /SLAVEATTN output. This configuration signifies that the slave is requesting attention from the master. When Port C is used as a parallel port, PC0, PC2, PC4 and PC6 are outputs only. These pins can alternately serve as the serial data outputs for Serial Ports D, C, B, and A.

> #### 2.1.3 Memory I/O Interface

> Thirteen of the Rabbit 2000 buffered address lines (A0-A12) and all the buffered data lines (D0-D7) are available as outputs. I/0 write (/IOWR), I/0 read (/IORD), buffer enable (/BUFEN), and Watchdog Output (/WDO) are also available for interfacing to external devices.

> The STATUS output has three different programmable functions:

> 1. It can be driven low on the first op code fetch cycle.
> 2. It can be driven low during an interrupt acknowledge cycle.
> 3. It can also serve as a general-purpose output.

> The output clock is available on the PCLK pin. The primary function of PCLK is as a peripheral clock or a peripheral clock ÷ 2, but PCLK can instead be used as a digital output. PCLK can also be disabled by removing R20 if there is a need to reduce radiated emissions. Removing R20 will disable the PCLK output on pin 3 of header J1. Alternatively, PCLK can be disabled in software using Dynamic C version 7.03 or later.

> #### 2.1.4 Additional I/0

> Two status mode pins, SMODE0 and SMODE1, are available as inputs. The logic state of these two pins determines the startup procedure after a reset.

> /RES_IN is an external input used to reset the Rabbit 2000 microprocessor and the RabbitCore RCM2100 memory. /RES_OUT is an output from the reset circuitry that can be used to reset other peripheral devices.

> ### 2.2 Serial Communication

> The RCM2100 board does not have an RS-232 or an RS-485 transceiver directly on the board. However, an RS-232 or RS-485 interface may be incorporated on the board the RCM2100 is mounted on. For example, the Prototyping Board supports a standard RS-232 transceiver chip.

> #### 2.2.1 Serial Ports

> There are four serial ports designated as Serial Ports A, B, C, and D. All four serial ports can operate in an asynchronous mode up to the baud rate of the system clock divided by 32. An asynchronous port can handle 7 or 8 data bits. A 9th bit address scheme, where an additional bit is sent to mark the first byte of a message, is also supported. Serial Ports A and B can be operated alternately in the clocked serial mode. In this mode, a clock line synchronously clocks the data in or out. Either of the two communicating devices can supply the clock. When the Rabbit 2000 provides the clock, the baud rate can be up to 1/4 of the system clock frequency, or 5.52 Mbps for a 22.1 MHz clock speed.

> #### 2.2.2 Ethernet Port

> Figure 3 shows the pinout for the RJ-45 Ethernet port (J4). Note that there are two standards for numbering the pins on this connector--the convention used here, and numbering in reverse to that used here.

> Figure 3. RJ-45 Ethernet Port Pinout

> The transformer/connector assembly ground is connected to the RCM2100 printed circuit board digital ground via a 0 W resistor "jumper," R5, as shown in Figure 4.

> Figure 4. Isolation Resistor R5

> The factory default is for the 0 W resistor "jumper" at R5 to be installed. In high-noise environments, it may be useful to ground the transformer/connector assembly directly through the chassis ground. This will be especially helpful to minimize EMI problems. Once you have removed the 0 W resistor "jumper," R5, use a screw in the position indicated in Figure 5 to attach the RCM2100 board to the chassis ground, thereby grounding the transformer/connector assembly.

> Figure 5. R5 and Chassis Ground Locations

> The RCM2100 is available in quantity without the transformer/connector assembly and the ACT and LNK LEDs (shown to the right of the transformer/connector assembly in Figure 5 above) installed. The Ethernet signals and the LED control signals are then available on header J3 installed on the bottom side of the board, and J3 may then be plugged in to the rest of the system. An Ethernet transformer and LEDs should be included on the board that the modified RCM2100 is plugged into.

> NOTE | Contact your Z-World/Rabbit Semiconductor Sales Representative for quantity and pricing information related to this option.

> #### 2.2.3 Programming Port

> Serial Port A has special features that allow it to cold-boot the system after reset. Serial Port A is also the port that is used for software development under Dynamic C.

> The RCM2100 has a 10-pin program header labeled J5. The Rabbit 2000 startup-mode pins (SMODE0, SMODE1) are presented to the programming port so that an externally connected device can force the RCM2100 to start up in an external bootstrap mode. The Rabbit 2000 Microprocessor User's Manual provides more information related to the bootstrap mode.

> The programming port is used to start the RCM2100 in a mode where it will download a program from the port and then execute the program. The programming port transmits information to and from a PC while a program is being debugged.

> The RCM2100 can be reset from the programming port via the /RESET_IN line.

> The Rabbit 2000 status pin is also presented to the programming port. The status pin is an output that can be used to send a general digital signal.

> The clock line for Serial Port A is presented to the programming port, which makes fast serial communication possible.

> ### 2.3 Memory

> #### 2.3.1 SRAM

> The RCM2100 series is designed to accept 32K to 512K of SRAM packaged in an SOIC case.

> The existing standard models of the RCM2100 come with 128K or 512K of SRAM. Figure 6 shows the locations and the jumper settings for the jumpers at JP1 used to set the SRAM size. The "jumpers" are 0 W surface-mounted resistors.

> Figure 6. RCM2100 SRAM and Flash Memory Sizes--Jumper Settings

> No "jumpers" are used at JP1 for 32K SRAM.

> #### 2.3.2 Flash Memory

> The RCM2100 is also designed to accept 128K to 512K of flash memory packaged in a TSOP case.

> The existing standard models of the RabbitCore RCM2100 come with either one or two 256K flash memory chips installed. Figure 6 shows the locations and the jumper settings for the jumpers at JP2 used to set the flash memory size. The "jumpers" are 0 W surface-mounted resistors.

> Z-World recommends that any customer applications should not be constrained by the sector size of the flash EPROM since it may be necessary to change the sector size in the future.

> A Flash Memory Bank Select jumper configuration option exists at JP4 with 0 W surface-mounted resistors. This provision allows the code space in the flash memory to be split in half so that one flash memory chip can emulate two flash memory chips.

> NOTE | Only the Normal Mode (pins 1-2 connected at JP5), which corresponds to using the full code space, is supported at the present time.

> #### 2.3.3 Dynamic C BIOS Source Files

> The Dynamic C BIOS source files handle different SRAM and flash EPROM sizes automatically.

> ### 2.4 Other Hardware

> #### 2.4.1 Clock Doubler

> The RCM2100 takes advantage of the Rabbit 2000 microprocessor's internal clock doubler. A built-in clock doubler allows half-frequency crystals to be used to reduce radiated emissions. The 22.1 MHz frequency is generated using an 11.05 MHz crystal. The clock doubler is disabled automatically in the BIOS for crystals with a frequency above 12.9 MHz.

> The clock doubler may be disabled if 22.1 MHz clock speeds are not required. Disabling the Rabbit 2000 microprocessor's internal clock will reduce power consumption and further reduce radiated emissions. The clock doubler is disabled with a simple change to the BIOS as described below.

> 1. Open the BIOS source code file, RABBITBIOS.C in the BIOS directory. 2. Change the line
>     #define CLOCK_DOUBLED 1 // set to 1 to double the clock if XTAL<=12.9MHz,
> to read as follows.
>     #define CLOCK_DOUBLED 0 // set to 1 to double the clock if XTAL<=12.9MHz,
> 3. Change the serial baud rate to 57,600 bps when the RabbitCore RCM2100 series is operated at 11.05 MHz. 4. Save the change using File > Save.

> ### 2.5 Programming Cable

> The RCM2100 is automatically in program mode when the PROG connector on the programming cable is attached, and is automatically in run mode when no programming cable is attached.

> The DIAG connector of the programming cable may be used on header J5 of the RCM2100 with the board operating in the run mode. This allows the programming port to be used as an application port. See Appendix E, "Programming Cable," for more information.

> Figure 7. Switching Between Program Mode and Run Mode

> Figure 8. Location of Prototyping Board Reset Button

> #### 2.5.1 Changing from Program Mode to Run Mode

> 1. Disconnect the programming cable from header J5 of the RCM2100.
> 2. Reset the RCM2100. You may do this as explained in Figure 7. Figure 8 shows the location of the RESET button on the Prototyping Board.

> The RCM2100 is now ready to operate in the Run Mode.

> #### 2.5.2 Changing from Run Mode to Program Mode

> 1. Attach the programming cable to header J3 on the RCM2100.
> 2. Reset the RCM2100. You may do this as explained in Figure 7. Figure 8 shows the location of the RESET button on the Prototyping Board.

> The RCM2100 is now ready to operate in the Program Mode.

Z-World http://www.zworld.com Voice: (530) 757-3737 FAX: (530) 753-5141 sales@zworld.com | Rabbit Semiconductor http://www.rabbitsemiconductor.com Voice: (530) 757-8400 FAX: (530) 757-8402 sales@rabbitsemiconductor.com