The FUJITSU MB90420G/5G (A) Series is a 16-bit general purpose high-capacity microcontroller designed for
vehicle meter control applications etc.
The instruction set retains the same A T architecture as the FUJITSU original F
further refinements including high-level language instructions, expanded addressing mode, enhanced (signed)
multipler-divider computation and bit processing.
2
MC-8L and F2MC-16L series, with
In addition, A 32-bit accumulator is built in to enable long word processing.
FEATURES
■■■■
• 16-bit input capture (4 channels)
Detects rising, falling, or both edges.
16-bit capture register × 4
Pin input edge detection latches the 16-bit free-run timer counter value, and generates an interrupt request.
• Delay interrupt
Generates interrupt for task switching.
Interruptions to CPU can be generated/deleted by software setting.
• External interrupts (8 channels)
8-channel independent operation
Interrupt source setting available : “L” to “H” edge/ “H” to “L” edge/ “L” level/ “H” level.
• A/D converter
10-bit or 8-bit resolution × 8 channels (input multiplexed)
Conversion time : 6.13 µs or less (at f
CP= 16 MHz)
External trigger startup available (P50/INT0/ADTG)
Internal timer startup available (16-bit reload timer 1)
• UART (2 channels)
Full duplex double buffer type
Supports asynchronous/synchronous transfer (with start/stop bits)
Internal timer can be selected as clock (16-bit reload timer 0)
Asynchronous : 4808 bps, 5208 bps, 9615 bps, 10417 bps, 19230 bps, 38460 bps, 62500 bps, 500000 bps
Synchronous : 500 Kbps, 1Mbps, 2Mbps (at f
• CAN interface *
1
Conforms to CAN specifications version 2.0 Part A and B.
Automatic resend in case of error.
Automatic transfer in response to remote frame.
16 prioritized message buffers for data and messages for data and ID
Multiple message support
Receiving filter has flexible configuration : All bit compare/all bit mask/two partial bit masks
Supports up to 1 Mbps
CAN WAKEUP function (connects RX internally to INT0)
• LCD controller/driver (1 channel)
Segment driver and command driver with direct LCD panel (display) drive capability
• Low voltage/Program Looping detect reset *
Automatic reset when low voltage is detected
Program Looping detection function
• Stepping motor controller (4 channels)
High current output for all channels × 4
Synchronized 8/10-bit PWM for all channels × 2
• Sound generator
8-bit PWM signal mixed with tone frequency from 8-bit reload counter.
PWM frequencies : 62.5 kHz, 31.2 kHz, 15.6 kHz, 7.8 kHz (at f
Tone frequencies : 1/2 PWM frequency, divided by (reload frequency +1)
6
CP= 16 MHz)
2
CP= 16MHz)
(Continued)
2
MB90420G/5G (A) Series
(Continued)
• Input/output ports
Push-pull output and Schmitt trigger input
Programmable in bit units for input/output or peripheral signals.
•Flash memory
Supports automatic programming, Embeded Algorithm
Flag indicates algorithm completion
Minato Electronics flash writer
Boot block configuration
Erasable by blocks
Block protection by external programming voltage
*1 : MB90420G (A) series has 2 channels built-in, MB90425G (A) series has 1 channel built-in
*2 : Built-in to MB90420GA/5GA series only. Not built-in to MB90420G/5G series.
Embeded Algorithm is a registered trademark of Advanced Micro Devices Inc.
When handling semiconductor devices, care must be taken with regard to the following ten matters.
• Strictly observe maximum rated voltages (prevent latchup)
• Stable supply voltage
• Power-on procedures
• Treatment of unused input pins
• Treatment of A/D converter power supply pins
• Use of external clock signals
• Power supply pins
• Proper sequence of A/D converter power supply analog input
• Handling the power supply for high-current output buffer pins (DV
• Pull-up/pull-down resistance
• Precautions when not using a sub clock signal.
Precautions for Handling Semiconductor Devices
• Strictly observe maximum rated voltages (prevent latchup)
CC, DVSS)
When CMOS integrated circuit devices are subjected to applied voltages higher than V
pins other than medium- and high-withstand voltage pins, or to voltages lower than V
excess of rated le vels are applied between V
CC and VSS, a phenomenon known as latchup can occur . In a latchup
CC at input and output
SS, or when voltages in
condition, supply current can increase dramatically and may destroy semiconductor elements. In using semiconductor devices, always take sufficient care to avoid exceeding maximum ratings.
Also care must be taken when power to analog systems is switched on or off, to ensure that the analog power
supply (AV
Once the digital power supply (V
CC, AVRH, DVCC) and analog input do not exceed the digital power supply (VCC) .
CC) is switched on, the analog power (AVCC,AVRH,DVCC) may be turned on in
any sequence.
• Stable supply voltage
Even within the warranted operating range of V
CC supply voltage, sudden fluctuations in supply voltage can
cause abnormal operation. The recommended stability for ripple fluctuations (P-P values) at commercial frequencies (50 to 60 Hz) should be within 10% of the standard V
CC value, and voltage fluctuations that occur during
switching of power supplies etc. should be limited to transient fluctuation rates of 0.1 V/ms or less.
• Power-on procedures
In order to prevent abnormal operation of the internal built-in step-down circuits, v oltage rise time during poweron should be attained within 50 µs (0.2 V to 2.7 V) .
• Treatment of unused input pins
If unused input pins are left open, they ma y cause abnormal operation or latchup which may lead to permanent
damage to the semiconductor. An y such pins should be pulled up or pulled do wn through resistance of at least
2 kΩ.
Also any unused input/output pins should be left open in output status, or if found set to input status , they should
be treated in the same way as input pins.
• Treatment of A/D converter power supply pins
Even if the A/D converter is not used, pins should be connected so that AV
CC= VCC, and AVSS= AVRH = VSS.
13
MB90420G/5G (A) Series
• Use of external clock signals
Even when an external clock is used, a stabilization period is required following a power-on reset or release
from sub clock mode or stop mode. Also, when an e xternal clock is used it should drive only the X0 pin and the
X1 pin should be left open, as shown in Figure 3.
X0
OPEN
X1
MB90420G/425G (A) Series
Sample external clock connection
• Power supply pins
Devices are designed to pre vent problems such as latchup when multiple V
CC and VSS supply pins are used, by
providing internal connections between pins having the same potential. However, in order to reduce unwanted
radiation, and to prevent abnormal operation of strobe signals due to rise in ground level, and to maintain total
output current ratings, all such pins should always be connected externally to power supplies and ground.
As shown in Figure 4, all V
be handled in the same way. If there are multiple V
CC power supply pins must hav e the same potential. All V SS power supply pins should
CC or VSS systems, the device will not operate properly even
within the warranted operating range.
VCC
VSS
VCC
VSS
VCC
VSS
VCC
VSS
VSS
VCC
Power supply input pins (VCC/VSS)
In addition, care must be given to connecting the V
CC and VSS pins of this device to a current source with as little
impedance as possible. It is recommended that a bypass capacitor of 1.0 µF be connected between V
V
SS as close to the pins as possible.
• Proper sequence of A/D converter power supply analog input
A/D converter power (AV
(V
CC) is switched on. When power is shut off, the A/D converter power supply and analog input must be cut off
before the digital power supply is switched on (V
AVRH does not exceed AV
sure that the input voltage does not exceed AV
CC, AVRH) and analog input (AN0-AN7) must be applied after the digital power supply
CC) . In both power-on and shut-off, care should be taken that
CC. Even when pins which double as analog input pins are used as input por ts, be
CC. (There is no problem if analog power supplies and digital
power supplies are turned off and on at the same time.)
14
CC and
MB90420G/5G (A) Series
• Handling the power supply for high-current output buffer pins (DV
CC
, DVSS)
Always apply pow er to high-current output b uffer pins (DV
on. Also when switching power off, alw a ys shut off the power supply to the high-current output b uffer pins (DV
DV
SS) before s witching off the digital po w er supply (VCC) . (There will be no problem if high-current output buffer
CC, D VSS) after the digital po w er supply (VCC) is turned
CC,
pins and digital power supplies are turned off and on at the same time.)
Even when high-current output buff er pins are used as gener al purpose ports, the power for high current output
buffer pins (DV
CC, DVSS) should be applied to these pins.
• Pull-up/pull-down resistance
The MB90420G/5G series does not support inter nal pull-up/pull-down resistance. If necessary, use external
components.
• Precautions for when not using a sub clock signal.
If the X0A and X1A pins are not connected to an oscillator, apply pull-down treatment to the X0A pin and leav e
the X1A pin open.
* : MB90V420G has no built-in ROM. On the tool side this area ma y be considered a R OM
decoder.
Note : To select models without the ROM mirror function, see the “ROM Mirror Function Selection Module.” The
image of the ROM data in the FF bank appears at the top of the 00 bank, in order to enable efficient use of
small C compiler models. The lower 16-bit address for the FF bank will be assigned to the same address,
so that tables in ROM can be referenced without declaring a “far” indication with the pointer. For example
when accessing the address 00C000
H, the actual access is to address FFC000H in ROM. Here the FF bank
ROM area exceeds 48 KB, so that it is not possible to see the entire area in the 00 bank image. Therefore
because the ROM data from FF4000
recommended that the ROM data table be stored in the area from FF4000
H to FFFFFFH will appear in the image from 004000H to 00FFFFH, it is
H to FFFFFFH.
17
MB90420G/5G (A) Series
I/O MAP
■■■■
• Other than CAN Interface
AddressRegister nameSymbolRead/write Peripheral functionInitial value
: Compatible, with EI
: Compatible
: Compatible when interrupt sources sharing ICR are not in use
× : Not compatible
*1 : • Peripheral functions sharing the ICR register have the same interrupt level.
• If peripheral functions sharing the ICR register are using expanded intelligent I/O services, one or the other
cannot be used.
• When peripheral functions are sharing the ICR register and one specifies expanded intelligent I/O services,
the interrupt from the other function cannot be used.
*2 : Priority applies when interrupts of the same level are generated.
OS stop function
32
MB90420G/5G (A) Series
PERIPHERAL FUNCTIONS
■■■■
1.I/O Ports
The I/O ports function is to send data from the CPU to be output from I/O pins and load input signals at the I/O
pins into the CPU, according to the port data register (PDR) . Port input/output at I/O pins can be controlled in
bit units by the port direction register (DDR) as required. The following list shows each of the functions as well
as the shared peripheral function for each port.
• Port 0 : General purpose I/O port, shared with peripheral functions (external interrupt/UART/PPG)
• Port 1 : General purpose I/O port, shared with peripheral functions (PPG/reload timer/clock timer/ICU)
• Port 3 : General purpose I/O port, shared with peripheral functions (LCD)
• Port 4 : General purpose I/O port, shared with peripheral functions (LCD)
• Port 5 : General purpose I/O port, shared with peripheral functions (External interrupt/CAN/SG)
• Port 6 : General purpose I/O port, shared with peripheral functions (A/D converter)
• Port 7 : General purpose I/O port, shared with peripheral functions (Stepping motor controller)
• Port 8 : General purpose I/O port, shared with peripheral functions (Stepping motor controller)
• Port 9 : General purpose I/O port, shared with peripheral functions (LCD)
(1) List of Functions
PortPin name
Port 0
Port 1
Port 3
P00/SIN0/INT4
to P07/PPG1
P10/PPG2 to
P15/IN0
P36/SEG12 to
P37/SEG13
Input
form a t
CMOS
(hysteresis)
Output
form a t
Functionbit15bit14bit13bit12
General purpose I/O port
Peripheral function
General purpose I/O portP15P14
IN0IN1
Peripheral function
General purpose I/O portP37P36
Peripheral functionSEG13 SEG12
Port 4
Port 5
Port 6
Port 7
Port 8
Port 9
P40/SEG14 to
P47/SEG21
P50/INT0 to
P57/SGA
P60/AN0 to
P67/AN7
P70/PWM1P0 to
P77/PWM2M1
P80/PWM1P2 to
P87/PWM2M3
P90/SEG22 to
P91/SEG23
Analog
CMOS
(hysteresis)
CMOS
(hysteresis)
CMOS
General purpose I/O port
Peripheral function
General purpose I/O portP57P56P55P54
Peripheral function
General purpose I/O port
Peripheral function
General purpose I/O portP77P76P75P74
Peripheral function
General purpose I/O port
Peripheral function
General purpose I/O port
Peripheral function
• Time base timer : 18-bit timer, interval interrupt control circuit
• Clock timer : 15-bit timer, interval interrupt control circuit
(1) Watchdog timer function
The watchdog timer is composed of a 2-bit watchdog counter that uses the carry signal from the 18-bit time
base timer or 15-bit clock timer as a clock source, plus a control register and watchdog reset control circuit.
After startup, this function will reset the CPU if not cleared within a given time.
(2) Time base timer function
The time base timer is an 18-bit free-run counter (time base counter) synchronized with the internal count clock
(base oscillator divided by 2) , with an interval timer function providing a selection of four interval times. Other
functions include a timer output for an oscillator stabilization wait time and clock feed to the watchdog timer or
other operating clocks. Note that the time base timer uses the main clock regardless of the setting of the MCS
bit or SCS bit in the CKSCR register.
(3) Clock timer function
The clock timer provides functions including a clock source for the watchdog timer, a sub clock base oscillator
stabilization wait timer, and an interval timer to generate an interrupt at fixed intervals. Note that the cloc k timer
uses the sub clock regardless of the setting of the MCS bit or SCS bit in the CKSCR register.
36
•Block Diagram
TBTC
TBC1
TBC0
TBR
TBIE
TBOF
Time base
interrupt
WDTC
WT1
WT0
WTE
AND
Selector
S
QR
Selector
11
2
13
2
16
2
18
2
TBTRES
2-bit
counter
CLR
MB90420G/5G (A) Series
Main base oscillator
divided by 2
Clock input
Time base timer
11213216218
2
OF
Watchdog reset
generator circuit
CLR
T o WDGRST
internal reset
generator circuit
WTC
Q
AND
S
R
AND
Selector
Q
SGW
Power-on reset,
sub-clock stop
8
2
9
2
10
2
11
2
12
2
13
S
R
2
14
2
16
2
WTRES
2102132142
Clock timer
16
Clock input
WDCS
SCE
MC-16LX bus
2
F
WTC2
WTC0
WTR
WTIE
WTOF
Clock interruptSub base oscillator divided by 4
WDTC
PONR
From power-on generator
WRST
ERST
SRST
RST pin
From RST bit in STBYC
register
37
MB90420G/5G (A) Series
3.Input Capture
This circuit is composed of a 16-bit free-run timer and four 16-bit input capture circuits.
(1) Input capture ( × 4)
The input capture circuits consist of four independent exter nal input pins and corresponding capture registers
and control registers. When the specified edge of the external signal input (at the input pin) is detected, the value
of the 16-bit free-run timer is saved in the capture register, and at the same time an interrupt can also be
generated.
• The valid edge (rising edge, falling edge, both edges) of the external signal can be selected.
• The four input capture circuits can operate independently.
• The interrupt can be generated from the valid edge of the external input signal.
(2) 16-bit free-run timer ( × 1)
The 16-bit free-run timer is composed of a 16-bit up-counter, control register, 16-bit compare register, and
prescaler. The output values from this counter are used as the base time for the input capture circuits.
• The counter clock operation can be selected from 8 options. The eight internal clock settings are φ, φ/2, φ/4,φ/8, φ/16, φ/32, φ/64, φ/128 where φ represents the machine clock cycle.
• Interrupts can be generated from overflow events, or from compare match events with the compare register.
(Compare match operation requires a mode setting.)
• The counter value can be initialized to “0000
register.
H” by a reset, soft clear, or a compare match with the compare
(3) Block diagram
MC-16LX bus
2
F
interrupt
#31 (1F
H)
IVFIVFE STOP MODE SCLR CLK2 CLK1 CLK0
16-bit free-run timer
16-bit compare clear registerCompare circuit
Capture data register 0/2
EG11EG10EG01EG00
Capture data register 1/3
ICP0ICP1ICE0ICE1
Divider
MSI3 ∼ 0
Edge detection
Edge detection
φ
Clock
ICLR
Interrupt
#33 (21H)
ICRE
A/D startup
IN0/2
IN1/3
Interrupt
#19, #23
Interrupt
#15, #21
38
MB90420G/5G (A) Series
4.16-bit Reload Timer
The 16-bit reload timer can either count down in synchronization with three types of internal clock signals in
internal clock mode, or count down at the detection of the designated edge of an external signal. The user may
select either function. This timer defines a transition from 0000
underflow occurs when counting from the value [Reload register setting + 1].
A selection of two counter operating modes are av ailable. In reload mode, the counter is reset to the count v alue
and continues counting after an underflow, and in one-shot mode the count stops after an underflow . The counter
can generate an interrupt when an underflow occurs, and is compatible with the e xpanded intelligent I/O services
One of three input clocks is selected as the count clock, and can be used in one of the following operations.
• Soft trigger operation
When “1” is written to the TRG bit in the timer control status register (TMCSR0/1) , the count operation
starts.Trigger input at the TRG bit is nor mally valid with an external trigger input, as well as an external gate
input.
• External trigger operation
Count operation starts when a selected edge (rising, falling, both edges) is input at the TIN0/1 pin.
• External gate input operation
Counting continues as long as the selected signal level (“L” or “H”) is input at the TIN0/1 pin.
(3) Event count mode (External clock mode)
In this mode a down count event occurs when a selected valid edge (rising, falling, both edges) is input at the
TIN0/1 pin. This function can also be used as an interval timer when an external clock with a fixed period is used.
(4) Counter operation
• Reload mode
In down count operation, when an underflow event (transition from “0000
H” to “FFFFH”) occurs, the set count
value is reloaded and count operation continues. The function can be used as an inter val timer by generating
an interrupt request at each underflow event. Also, a toggle waveform that inverts at each underflow can be
output from the TOT0/1 pin.
Counter clockCounter clock periodInterval time
1
2
/φ (0.125 µs) 0.125 µs to 8.192 ms
Internal clock
External clock2
3
/φ (0.5 µs) 0.5 µs to 32.768 ms
2
5
2
/φ (2.0 µs) 2.0 µs to 131.1 ms
3
/φ or greater (0.5 µs) 0.5 µs or greater
φ : Machine clock cycle. Figures in ( ) are values at machine clock frequency 16 MHz.
39
MB90420G/5G (A) Series
(5) One-shot mode
In down count operation, the count stops when an underflow event (transition from “0000
H” to “FFFFH”) occurs.
This function can generate an interrupt at each underflow. While the counter is operating, a rectangular wave
form indicating that the count is in progress can be output form the TOT0 and TOT1 pins.
(6) Block diagram
Internal data bus
TMRLR0 *
<TMRLR1>
1
TMR0 *
<TMR1>
16-bit timer register (down counter)
Count clock generator circuit
Machine
clock φ
Prescaler
Clear
1
16-bit reload register
CLK
Gate input
3
UF
Valid clock
decision circuit
CLK
Reload signal
Reload
control circuit
Wait signal
To UART 0, 1 *
<To A/D converter>
1
Internal clock
Pins
P12/TIN0 *
<P07/TIN1>
CSL1 CSL0OUTEOUTL RELD INTE UF CNTE TRG
*1 : Channel 0 and channel 1. Figures in < > are for channel 1.
*2 : Interrupt number
Input
control
circuit
1
32
Function selection
Timer control status register (TNGSR0)
External clock
Clock
selectorInverted
Select
signal
WOD2WOD1 WOD0
*
<TNGSR1>
Output signal
generator
circuit
EN
Operation
control
circuit
1
Pins
P11/TOT0 *
<P06/TOT1>
Interrupt
request signal
#17 (11h)
<#28 (10h)>
2
*
1
40
MB90420G/5G (A) Series
5.Real Time Clock Timer
The real time clock timer is composed of a real time clock timer control register, sub second data register, second/
minute/hour data registers, 1/2 clock divider, 21-bit prescaler and second/minute/hour counters. Because the
MCU oscillation frequency operates on a given real time clock timer oper ation, a 4 MHz frequency is assumed.
The real time clock timer operates as a real world timer and provides real world time information.
•Block diagram
OE
Main oscillator clock
1/2 clock
divider
prescaler
EN
Sub second
register
21-bit
CO
OE
WOT
STUPDT
INTE0 INT0
Second
CI
counter
EN
LOADCOCO
6-bit6-bit5-bit
Second/minute/hour register
INTE1
INT1INTE2 INT2INT3 INT3
Minute
counter
Hour
counter
CO
IRQ
41
MB90420G/5G (A) Series
6.PPG Timer
The PPG timer consists of a prescaler, one 16-bit down-counter, 16-bit data register with buff er for period setting,
and 16-bit compare register with buffer for duty setting, plus pin control circuits.
The timer can output pulses synchronized with an externally input soft trigger. The period and duty of the output
pulse can be adjusted by rewriting the values in the two 16-bit registers.
(1) PWM function
Programmable to output a pulse, synchronized with a trigger.
Can also be used as a D/A converter with an external circuit.
(2) One-shot function
Detects the edge of a trigger input, and outputs a single pulse.
(3) Pin control
• Set to “1” at a duty match (priority) .
• Reset to “0” at a counter borrow event
• Has a fixed output mode to output a simple all “L” ( or “H”) signal.
• Polarity can be specified
(4) 16-bit down counter
• Select from four types of counter operation cloc ks. F our internal clocks (φ, φ/4, φ/16, φ/64) φ : Machine clock
cycles.
• The counter value can be initialized to “FFFF
(5) Interrupt requests
• Timer startup
• Counter borrow event (period match)
• Duty match event
• Counter borrow event (period match) or duty match event
(6) Multiple channels can be set to start up at an external trigger, or to restart during operation.
H” at a reset or counter borrow event.
42
(7) Block diagram
Prescaler
1/1
1/4
1/16
1/32
PCSRPDUT
CK
PSCT
16-bit down counter
MB90420G/5G (A) Series
Load
CMP
Machine clock
Trigger input
P05/TRG
Enable
Edge detection
Soft trigger
Start
Borrow
PPG mask
SQ
R
Interrupt
selection
PPG
output
Inversion bit
Interrupt
43
MB90420G/5G (A) Series
7.Delayed Interrupt Generator Module
The delayed interrupt generator module is a module that generates interrupts for task switching. This module
makes it possible to use software to generate/cancel interrupt requests to the F
•Block diagram
F2MC-16LX bus
Delayed interrupt source generate/delete decoder
Source latch
2
MC-16LX CPU.
44
8.DTP/External Interrupt Circuit
MB90420G/5G (A) Series
The DTP (Data transfer peripheral) /e xternal interrupt circuit is located between an externally connected peripheral device and the F
2
MC-16LX CPU and sends interrupt requests or data transfer requests generated from the
peripheral device to the CPU, thereby generating e xternal interrupt requests or starting the expanded intelligent
I/O services (EI
2
OS) .
(1) DTP/external interrupt function
The DTP/external interrupt function uses a signal input from the DTP/external interrupt pin as a startup source.
And it is accepted by the CPU by the same procedure as a normal hardware interrupt, and can generate an
external interrupt or start the expanded intelligent I/O service (EI
2
OS) .
When the interrupt is accepted by the CPU, if the corresponding expanded intelligent I/O service (EI
prohibited the interrupt operates as an external interrupt function and branches to an interrupt routine. If the
2
EI
OS is permitted the interrupt functions as a DTP function, using EI2OS for automatic data transfer, then
branching to an interrupt routine after the completion of the specified number of data transfers.
External interruptDTP function
Input pins8 pins (P50/INT0 to P53/INT3, P00/INT4 to P03 INT7)
Request level setting register (ELVR) sets the detection level, or selected edge for
each pin
The 8/10-bit A/D converter has functions for using RC sequential comparator con version format to convert analog
input voltage into 10-bit or 8-bit digital values . The input signal is selected from 8-channel analog input pins, and
the conversion start can be selected from three types : by software, 16-bit reload timer 1 or a trigger input from
an external signal pin.
(1) 8/10-bit A/D converter functions
The A/D converter takes analog voltage signals (input v oltage) input at analog input pins, and con v erts these to
digital values, providing the following features.
• Minimum conv ersion time is 6.13 µs (at machine clock frequency of 16 MHz, including sampling time) .
• Minimum sampling time is 3.75 µs (at machine clock 16 MHz)
• The conversion method is an RC sequential conversion in comparison with a sample hold circuit.
• Either 10-bit or 8-bit resolution can be selected.
• The analog input pin can select from 8 channels by a program setting.
• At completion of A/D conversion, an interrupt request can be generated, or EI
• Because the conversion data protection function operates in an interrupt enabled state, no data is lost even
in continuous conversion.
• The conversion start source may be selected from : software, 16-bit reload timer 1 (rising edge) , or external
trigger input (falling edge) .
Converts multiple consecutive channels (up
to 8 channels may be specified) one time,
then stops.
Converts multiple consecutive channels (up
to 8 channels may be specified) repeatedly.
Converts multiple consecutive channels (up
to 8 channels may be specified) , however
pauses after conversion of each channel,
waits until the next start is applied.
Single conversion mode
Continuous conversion
mode
Stop conversion mode
Converts the specified channel (1 channel
only) one time, then stops.
Converts the specified channel (1 channel
only) repeatedly.
Converts the specified channel (1 channel
only) one time, then pauses, waits until
the next start is applied.
47
MB90420G/5G (A) Series
(2) Block diagram
AN0
AN1
AN2
AN3
AN4
AN5
AN6
AN7
MPX
Input circuit
Sample & hold circuit
Comparator
Decoder
AVCC
AVRH
AVSS
D/A converter
Sequential comparator
register
A/D data register
ADCRH, L
MC-16LX bus
2
F
16-bit reload timer 1
P50/ADTG
Timer start
Trigger start
φ
A/D control status register, high
A/D control status register, low
ADCSH, L
Operating clock
Prescaler
48
MB90420G/5G (A) Series
10. UART
The UART is a general purpose serial data communication interface for synchronous communication, or asynchronous (start-stop synchronized) communication with external devices. Functions include normal bi-directional
functions, as well as master/slave type communication functions (multi-processor mode : master side only
supported) .
(1) UART Functions
The UAR T is a general purpose serial data communication interface f or sending and receiving of serial data with
other CPU’s or peripheral devices, and provides the following functions.
Functions
Data bufferFull duplex double buffer
Transfer modes
Baud rate
Data length
Signal typeNRZ (Non return to zero)
Receiving error detection
Interrupt request
Master/slave type
communication function
(multi-processor mode)
Note : The UART in clock synchronous transfer does not add start bits or stop bits, but transfers data only.
Operating mode
• Clock synchronous (no start/stop bits)
• Clock asynchronous (start-stop synchronized)
• Exclusive baud rate generator provides a selection of 8 rates
• External clock input enabled
• Internal clock (can use internal clock feed from 16-bit reload timer)
• 7-bit (asynchronous normal mode only)
•8-bit
• Framing errors
• Overrun errors
• Parity errors (not enabled in multiprocessor mode)
: Setting not available
*1 : “+” indicates an address/data selection bit (A/D) for communication control.
*2 : In receiving only one stop bit is detected.
1
Asynchronous
1-bit or 2-bit *
2
49
MB90420G/5G (A) Series
(2) Block diagram
Exclusive baud
rate generator
16-bit
reload timer
Pins
P02/SCK0
<P05/SCK1>
Clock
selector
Receiving
clock
detection circuit
Receiving
control
circuit
Start bit
Control bus
Sending clock
Sending
control
circuit
Sending start
circuit
Receiving
interrupt signals
H) *
#39 (27
<#37 (25H) *>
Sending
interrupt signals
#40 (28
<#38 (26H) *>
H) *
Pins
P00/SIN0
<P03/SIN1>
Receiving status
judging circuit
SMR0/1
register
Receiving bit
Receiving parity
Receiving
shift register
SIDR0/1
MD1
MD0
CS2
CS1
CS0
SCKE
SOE
counter
counter
Rece-
iving
end
Internal data bus
SCR0/1
register
Sending bit
counter
Sending parity
counter
Sending
shift register
SODR0/1
PEN
P
SBL
CL
A/D
REC
RXE
TXE
SSR0/1
register
Pin
P01/SOT0
<P04/SOT1>
Sending start
2
EI
OS receiving error
generator circuit (to CPU)
PE
ORE
FRE
RDRF
TDRE
BOS
RIE
TIE
50
∗: Interrupt number
MB90420G/5G (A) Series
11. CAN Controller
The CAN controller is a self-contained module within a 16-bit microcomputer (F2MC-16LX) . The CAN (controller
area network) controller is the standard protocol for serial transmissions among automotive controllers and is
widely used in the industry.
(1) CAN controller features
The CAN controller has the following features.
• Conforms to CAN specifications version 2.0 A and B.
Supports sending and receiving in standard frame and expanded frame format.
• Supports data frame sending by means of remote frame receiving.
• 16 sending/receiving message buffers
29-bit ID and 8-byte data
Multi-level message buffer configuration
• Supports full bit compare, full bit mask as well as partial bet mask filtering.
Provides two receiving mask registers for either standard frame or expanded frame format.
• Bit speed programmable from 10 KB/s to 1 MB/s (at machine clock 16 MHz)
• CAN WAKE UP function
• The MB90420G (A) series has a two-channel built-in CAN controller. The MB90425G (A) series has a 1channel built-in CAN controller.
51
MB90420G/5G (A) Series
(2) Block diagram
F2MC-16LX bus
Machine
clock
PSC
PR
BTR
PH
RSJ
TOE
TS
RS
CSR
HALT
NIE
NT
NS1,0
RTEC
BVALR
TREQR
TCANR
TRTRR
RFWTR
TCR
TIER
RCR
RIER
RRTRR
ROVRR
AMSR
AMR0
AMR1
IDR0 ~ 15,
DLCR0 ~ 15,
DTR0 ~ 15,
RAM
LEIR
Prescaler 1-to-64
frequency divider
Node status change
interrupt generator
TBFx
clear
TBF
TBFx, set, clear
Sending completed
interrupt generator
RBFx, set
Receiving completed
interrupt generator
RBFx, TBFx, set clear
RBFx
set
0
1
RAM address
Send buffer
decision
X
IDSEL
Receiving
filter
generator
Bit timing generator
Node status
change interrupt
Error
control
TBFX
Sending
completed
interrupt
Receiving
completed
interrupt
Receiving bufferx
decision
RBF
RBF
X, TBFX, RDLC, TDLC, IDSEL
Data
counter
TDLC RDLC IDSEL
BITER, STFER,
CRCER, FRMER,
ACKER
X
TQ (operating clock)
SYNC, TSEG1, TSEG2
Send/receive
sequencer
Receiving
filter
control
Send shift
register
CRC
TDLC
Receiving
shift register
ARBLOST
BITER
ACKER
FRMER
generator
CRCER
CRC generator
error check
Acknowledge error
Bus
state
machine
Error
frame
generator
Overload
frame
generator
ARBLOST
Stuffing
ACK
generator
Destuffing/
stuffing
error check
Arbitration
check
Bit error
check
check
Form error
check
IDLE, SUSPND,
TX, RX, ERR,
OVRLD
Output
driver
STFERRDLC
PH1
Input
latch
TX
RX
52
MB90420G/5G (A) Series
12. LCD Controller/Driver
The LCD controller/driver has a built-in 16 × 8-bit display data memory, and controls the LCD displa y by means
of four common outputs and 24 segment outputs. A selection of three duty outputs are a v ailable . This b lock can
drive an LCD (liquid crystal display) panel directly.
(1) LCD controller/driver functions
The LCD controller/driver provides functions for directly displa ying the contents of displa y data memory (display
RAM) on the LCD panel by means of segment output and common output.
• LCD drive voltage divider resistance is built-in. External divider resistance can also be connected.
• Up to 4 common outputs (COM0 to COM3) and 24 segment outputs (SEG0 to SEG23) can be used.
• 16-byte display data memory (display RAM) is built-in.
• The duty can be selected at 1/2, 1/3, 1/4 (limited by bias setting) .
• Drives the LCD directly.
Bias1/2 duty1/3 duty1/4 duty
1/2 bias
1/3 bias×
: Recommended mode
× : Use prohibited
××
Note : When the SEG12 to SEG23 pins have been selected as general purpose ports by the LCRH setting, they
The Low voltage detection reset circuit is a function that monitors pow er supply voltage in order to detect when
a voltage drops below a given voltage level. When a low voltage condition is detected, an inter nal reset signal
is generated.
The Program Looping detection reset circuit is a count clock with a 20-bit counter that generates an internal
reset signal if not cleared within a given time after startup.
(1) Low voltage detection reset circuit
Detection voltage
4.0 V ± 0.3 V
When a low voltage condition is detected, the low voltage detection flag (LVRC : LVRF) is set to “1” and an
internal reset signal is output.
Because the low voltage detection circuit continues to operate even in stop mode, detection of a low voltage
condition generates an internal reset and releases stop mode.
During an internal RAM write cycle, an inter nal reset is generated after the completion of writing. During the
output of this internal reset, the reset output from the low voltage detection circuit is suppressed.
(2) Program Looping detection reset circuit
The Program Looping detection reset circuit is a counter that prevents program looping. The counter starts
automatically after a power-on reset, and must be continually cleared within a giv en time. If the given time interval
elapses and the counter has not been cleared, a cause such as infinite program looping is assumed and an
internal reset signal is generated. The internal reset generated form the Program Looping detection circuit has
a width of 5 machine cycles.
Interval durationNumber of oscillation clock cycles
Approx. 262 ms *2
* : This value assumes an oscillation clock speed of 4 MHz.
During recovery from standby mode the detection period is the maximum interval plus 20 µs.
This circuit does not operate in modes where CPU operation is stopped.
The Program Looping detection reset circuit counter is cleared under any of the following conditions.
1. Writing “0” to the LVRC register CL bit
2. Internal reset
3. Main oscillation clock stop
4. Transition to sleep mode
5. Transition to time base timer mode or clock mode
6. Start of hold
20
cycles
55
MB90420G/5G (A) Series
(3) Block diagram
Program Looping detection circuit
Oscillation clock
Counter
OF
Clear
Voltage comparator
circuit
−
+
Noise canceller
RESV0 RESV0 RESV1 RESV1CLLVRF RESV0 CPUF
Low voltage detection reset control register (LVRC)
VCC
VSS
Constant
voltage
source
Internal reset
Internal data bus
56
MB90420G/5G (A) Series
14. Stepping Motor Controller
The stepping motor controller is composed of two PWM pulse generators, four motor driv ers and selector logic
circuits.
The four motor drivers have a high output drive capacity and can be directly connected to the four ends of two
motor coils. They are designed to operate together with the PWM pulse generators and selector logic circuits
to control motor rotation. A synchronization mechanism assures synchronization of the two PWM pulse generators.
•Block diagram
Machine clock
OE1
Output enable
Prescaler
P1P0
SC
CE
CK
PWM1 pulse generator
EN
PWM1 compare register
CK
PWM2 pulse generator
EN
PWM2 compare register
PWM
PWM
Selector
PWM1 selector register
OE2
Selector
Load
BSn : 0 ~ 3
PWM2 select register
PWM1Pn
PWM1Mn
Output enable
PWM2Pn
PWM2Mn
57
MB90420G/5G (A) Series
15. Sound Generator
The sound generator is composed of a sound control register, frequency data register, amplitude data register,
decrement grade register, tone count register, PWM pulse generator, frequency counter, decrement counter,
and tone pulse counter.
•Block diagram
Clock input
Prescaler
S1S0
8-bit PWM
pulse generator
Amplitude data
register
Decrement
counter
Decrement grade
register
Tone pulse
counter
CO
EN
PWM
DEC
CO
EN
CO
EN
Frequency
counter
CI
CO
EN
ReloadReload
Frequency data
register
DEC
CI
CI
Toggle
flip-flop
D
EN
OE1
Blend
TONE OE2
Q
1/d
SGA
OE1
SGO
OE2
58
Tone count
register
INTEINTST
IRQ
MB90420G/5G (A) Series
16. Address Match Detect Function
If the address setting is the same as the ROM correction address register, an INT9 instruction is ex ecuted. The
ROM correction function can be implemented by processing the INT9 interrupt service routine.
Two address registers are used, each with its own compare enable bit. When there is a match between the
address register and program counter, and the compare enable bit is set to “1” , the INT9 instruction is f o rcibly
executed by the CPU.
•Block diagram
Address latch
2
F
MC-16LX bus
ROM correction
address register
Enable bit
Compare
2
F
MC-16LX
CPU core
59
MB90420G/5G (A) Series
17. ROM Mirror Function Select Module
The ROM mirror function select module uses a select register setting to enable the contents of ROM allocated
to the FF bank to be viewed in the 00 bank.
IOL240mAP70-77, P80-87
IOLAV14mAOther than P70-P77, P80-P87
I
OLAV230mAP70-77, P80-87
OL1100mAOther than P70-P77, P80-P87
ΣI
ΣI
OL2330mAP70-77, P80-87
OLAV150mAOther than P70-P77, P80-P87
ΣI
ΣIOLAV2250mAP70-77, P80-87
2
I
OH1*
2
I
OH2*
3
OHAV1*
I
3
IOHAV2*
Rating
Min.Max.
−15mAOther than P70-P77, P80-P87
−40mAP70-77, P80-87
−4mAOther than P70-P77, P80-P87
−30mAP70-77, P80-87
(VSS
=
AVSS
=
UnitRemarks
1
1
DVSS
=
0 V)
OH1−100mAOther than P70-P77, P80-P87
“H”level maximum
total output current
“H”level average total
output current
Power consumptionP
ΣI
ΣI
OH2−330mAP70-77, P80-87
4
OHAV1*
ΣI
ΣI
4
OHAV2*
D500mW
−50mAOther than P70-P77, P80-P87
−250mAP70-77, P80-87
Operating temperatureTA−40+105 °C
Storage temperatureT
*1 : Care must be taken to ensure that AV
STG−55+150 °C
CC and DVCC do not exceed VCC at power-on etc.
*2 : Maximum output current is defined as the peak value of the current of any one of the corresponding pins.
*3 : Average output current is defined as the value of the average current flowing over 100 ms at any one of the
corresponding pins. The “average value” can be calculated from the formula of “operating current” times
“operating factor”.
*4 : Average total output current is defined as the value of the average current flowing over 100 ms at all of the
corresponding pins. The “average value” can be calculated from the formula of “operating current” times
“ operating factor”.
WARNING: Semiconductor devices can be permanently damaged by application of stress (voltage, current,
temperature, etc.) in excess of absolute maximum ratings. Do not exceed these ratings.
61
MB90420G/5G (A) Series
2.Recommended Operating Conditions
ParameterSymbol
Power supply
voltage
V
CC
AVCC
DVCC
Value
Min.Max.
4.55.5V
3.05.5V
(VSS= DVSS= AVSS= 0.0 V)
UnitRemarks
In normal operation:
(MB90F428G/F428GA, MB90428G/428GA,
MB90427G/427GA)
Holding stop operation status
(MB90F428G, MB90428G, MB90427G)
4.55.5V
Holding stop operation status
(MB90F428GA, MB90428GA, MB90427GA)
Use a ceramic capacitor or other capacitor of
Smoothing
capacitor*
C
S0.11.0µF
equivalent frequency characteristics. A
smoothing capacitor on the VCC pin should
have a capacitance greater than Cs.
Operating
temperature
T
A−40+105 °C
* : For smoothing capacitor Cs connections, see the illustration below.
• C pin connection
C
C
S
VSSDVSS
AVSS
WARNING: The recommended operating conditions are required in order to ensure the normal operation of the
semiconductor device. All of the device’s electrical characteristics are warranted when the device is
operated within these ranges.
Always use semiconductor devices within their recommended operating condition ranges. Operation
outside these ranges may adversely affect reliability and could result in device failure.
No warranty is made with respect to uses, operating conditions, or combinations not represented on
the data sheet. Users considering application outside the listed conditions are advised to contact their
FUJITSU representatives beforehand.
62
3.DC Characteristics
Parameter
Symbol
Pin
name
MB90420G/5G (A) Series
(VCC= 5.0 V±10%, VSS= DVSS= AVSS= 0.0 V, TA=−40 °C to +105 °C)
Conditions
Min.Typ.Max.
Value
UnitRemarks
“H”level
input voltage
“L”level
input voltage
Power supply
current*
3
V
IHS
VIHM
ILS
V
VILM
ICC
CCS
I
VCC
CTS
I
I
CCL
I
CCLS
VCC− 0.3
VSS− 0.3
VSS− 0.3
Operating frequency
F
CP= 16 MHz,
normal operation
Operating frequency
F
CP= 16 MHz,
sleep mode
Operating frequency
F
CP= 2 MHz,
time base timer mode
Operating frequency
F
CP= 8 kHz, TA= 25 °C,
subclock operation
Operating frequency
F
CP= 8 kHz, TA= 25 °C,
sub sleep operation
0.8 VCC
VCC+ 0.3
VCC+ 0.3
0.6 VCCV
VSS + 0.3
4572mA
3861mA
1524mA
1321mA
0.751.0mA
0.350.7mA
40100µA
CMOS hysteresis
V
input pin*
VMD pin*
2
CMOS hysteresis
input pin*
VMD pin*
2
MB90F428G/GA
MB90F423G/GA
MB90428G/GA
MB90427G/GA
MB90423G/GA
MB90F428G/GA
MB90F423G/GA
MB90428G/GA,
MB90427G/GA
MB90423G/GA
1
1
Operating frequency
I
CCT
F
CP= 8 kHz, TA= 25 °C,
40100µA
clock mode
*1 : All input pins except X0, X0A, MD0, MD1, MD2 pins.
*2 : MD0, MD1, MD2 pins.
*3 : Current values are provisional, and ma y be changed without prior notice for purposes of characteristic improve
ment, etc. Supply current values assume external clock f eed from the 1 pin and X1A pin. Users must be a ware
that supply current levels differ depending on whether an external clock or oscillator is useed.
(Continued)
63
MB90420G/5G (A) Series
(Continued)
(VCC= 5.0 V±10%, VSS= DVSS= AVSS= 0.0 V, TA=−40 °C to +105 °C)
*3:Current values are provisional, and ma y be changed without prior notice for purposes of characteristic improve
ment, etc. Supply current values assume external clock f eed from the 1 pin and X1A pin. Users must be a ware
that supply current levels differ depending on whether an external clock or oscillator is useed.
(Continued)
64
(Continued)
Parameter
Symbol
MB90420G/5G (A) Series
Pin nameConditions
Value
UnitRemarks
Min.Typ.Max.
Large current
output drive
capacity
variation 1
Large current
output drive
capacity
variation 2
LCD divider
resistance
COM0 to
COM3
output impedance
SEG0 to
SEG3
output impedance
LCD leakage
current
∆V
∆V
R
R
R
I
OH2
OL2
LCD
VCOM
VSEG
LCDC
PWM1Pn,
PWM1Mn,
PWM2Pn,
PWM2Mn,
n = 0 to 3
PWM1Pn,
PWM1Mn,
PWM2Pn,
PWM2Mn,
n = 0 to 3
V0 to V1,
V1 to V2,
V2 to V3
COMn
(n = 0 to 3)
SEGn
(n = 00 to 23)
V0 to V3
COMm
(m = 00 to 23)
SEGn
(n = 00 to 23)
V
CC= 4.5 V
I
OH= 30.0 mA
V
OH2 maximum variation
V
CC= 4.5 V
I
OH= 30.0 mA
V
OL2 maximum variation
50100200kΩ
2.5kΩ
15kΩ
−5.0+5.0kΩ
090mV *4
090mV *4
*4 : Defined as maximum variation in VOH2/VOL2 with all channel 0 PWM1P0/PWM1M0/PWM2P0/PWM2M0 simul-
taneously ON. Similarly for other channels.
65
MB90420G/5G (A) Series
4.AC Characteristics
(1) Clock timing (
ParameterSymbolPin name
F
Base oscillation
clock frequency
Base oscillation
clock cycle time
Input clock pulse
CX0, X1
F
LCX0A, X1A32.768kHz
tCYLX0, X1250ns
t
LCYLX0A, X1A30.5µs
P
WH, PWLX010ns
width
PWLH, PWLLX0A15.2µs
Input clock
rise, fall time
Input operating
tcr, tcfX0, X0A 5ns
F
CP216MHz
clock frequency
FLCP8.192kHz Using sub clock
t
Input operating
CP62.5—500ns
clock cycle time
t
LCP122.1µsUsing sub clock
Frequency variability
ratio*
(locked)
∆f5%
V
CC
Condi-
5.0 V±10%
=
tions
V
DV
SS
,
=
AV
SS
=
SS
0.0 V, T
=
Value
UnitRemarks
Min.Typ.Max.
4MHz
A
−40 °C to +105 °C)
=
Use duty ratio of
40 to 60% as a guideline
With external
clock signal
Using main clock,
PLL clock
Using main clock,
PLL clock
*: The frequency variability ratio is the maximum proportion of variation from the set central frequency using a
multiplier in locked operation.
+
α
∆f = × 100 (%)
fo
Central
frequency
+α
fo
−α
−
• X0, X1 clock timing
t
CC
X0
PPLCYL
tcftcr
0.8 V
0.2 VCC
• X0A, X1A clock timing
tHCYL
CC
X0A
PWHPWL
tcftcr
0.8 V
0.2 VCC
66
• Range of warranted operation
Relation between internal operating clock frequency and supply voltage
5.5
3.7
3.3
3.0
MB90420G/5G (A) Series
MB90F428GA, MB90428GA, MB90427GA
range of warranted operation
PLL range of
warranted operation
Supply voltage VCC (V)
MB90F428G, MB90428G, MB90427G
range of warranted operation
Internal clock frequency f
CP (MHz)
161282
The MB90F428GA, MB90F423GA, MB90428GA, MB90427GA, and MB90423GA enter reset mode at
supply voltage below 4 V ± 0.3 V.
Relation between oscillator clock frequency and internal operating clock frequency
Internal operating clock frequency
PLL clock
Oscillation clock
frequency
Main clock
4 MHz2 MHz8 MHz12 MHz16 MHz
Multiplier
× 1
Multiplier
× 2
Multiplier
× 3
Multiplier
× 4
• Sample oscillator circuit
Oscillator
element
Oscillator FrequencyC1C2R
manufacturer
TBDTBD4 MHzTBDTBDTBD
X0X1
R
C2C1
67
MB90420G/5G (A) Series
AC ratings are defined for the following measurement reference voltage values:
• Input signal waveform
• Output signal waveform
Hysteresis input pin
0.8 VCC
0.6 VCC
Output pin
2.4 V
0.8 V
68
(2) Reset input
ParameterSymbolPin nameConditions
MB90420G/5G (A) Series
(V
CC= 5.0 V±10%, VSS= AVSS= 0.0 V, TA=−40 °C to +105 °C)
Value
Min.Max.
UnitRemarks
Reset input timet
RSTLRST16 tCPns
tRSTL
RST
0.6 VCC
0.6 VCC
(3) Power-on reset, power on conditions
(V
SS= 0.0 V, TA=−40 °C to +105 °C)
Parameter
Symbol
Power supply rise timet
Power supply start voltageV
Pin
name
R
OFF0.2V
Conditions
Value
UnitRemarks
Min.Max.
0.0530ms
VCC
Power supply attained voltageV
ON2.7V
Power supply cutoff timetOFF50msFor repeat operation
tR
VCC
Extreme variations in voltage supply may activate a power-on reset.
As the illustration below shows, when varying supply voltage during operation the use of a smooth
voltage rise with suppressed fluctuation is recommended. Also in this situation, the PLL clock on the
device should not be used, however it is permissible to use the PLL clock during a voltage drop of
1mV/s or less.
CC
0 V
V
VSS
5.0 V
4.5 (V) 420G/425G series
3.0 (V) 420GA/425GA series
2.7 V
0.2 V0.2 V0.2 V
tOFF
A rise slope of 50 mV or
less is recommended
RAM data hold
69
MB90420G/5G (A) Series
(4) UART0, UART1 timing
(V
CC= 5.0 V±10%, VSS= AVSS= 0.0 V, TA=−40 °C to +105 °C)
Parameter
Symbol
Pin name
Conditions
Value
UnitRemarks
Min.Max.
Serial clock cycle timet
SCK fall to SOT delay timet
Valid SIN to SCK risetIVSH
SCK rise to valid SIN hold timet
Serial clock “H” pulse widtht
SCYCSCK0, SCK1
SLOV
SCK0, SCK1
SOT0, SOT1
SCK0, SCK1
SHIX60ns
SHSL
SIN0, SIN1
SCK0, SCK1
Serial clock “L” pulse widtht
SCK fall to SOT delay timet
Valid SIN to SCK riset
SCK rise to valid SIN hold timet
SLSH4 tCPns
SLOV
SCK0, SCK1
SOT0, SOT1
IVSH
SCK0, SCK1
SHIX60ns
SIN0, SIN1
Notes : • AC ratings are for CLK synchronous mode.
• C
L is load capacitance connected to pin during testing.
• Internal shift clock mode
SCK
0.8 V0.8 V
tSLOV
SOT
2.4 V
0.8 V
tSCYC
8 tCPns
−8080ns
100ns
CPns
4 t
150ns
60ns
2.4 V
Internal shift
clock mode
output pin C
L=
80 pF + 1•TTL
External shift
clock mode
output pin C
L=
80 pF + 1•TTL
70
SIN
• External shift clock mode
SCK
SOT
SIN
tIVSHtSHIX
0.8 V
0.6 VCC
tSLSHtSHSL
0.6 VCC0.6 VCC
tSLOV
2.4 V
0.8 V
tIVSHtSHIX
0.8 V
0.6 VCC
CC
0.8 VCC0.8 VCC
CC
0.8 VCC
0.6 VCC
0.8 VCC
0.6 VCC
(5) Timer input timing
ParameterSymbolPin nameConditions
MB90420G/5G (A) Series
(V
CC= 5.0 V±10%, VSS= AVSS= 0.0 V, TA=−40 °C to +105 °C)
Value
Min.Max.
UnitRemarks
TIN0, TIN1,
IN0, IN1,
IN2, IN3,
Input pulse width
t
TIWH
tTIWL
• Timer input timing
tTIWHtTIWL
TIN0 ∼ TIN1
IN0 ∼ IN3
0.8 VCC0.8 VCC
(6) Trigger input timing
(V
ParameterSymbolPin nameConditions
Input pulse widtht
TRGLIRQ0 to IRQ75 tCPns
4 t
0.6 VCC0.6 VCC
CC= 5.0 V±10%, VSS= AVSS= 0.0 V, TA=−40 °C to +105 °C)
CPns
Value
UnitRemarks
Min.Max.
• Trigger input timing
IRQ0 ∼ IRQ7
tTRGHtTRGL
0.8 VCC0.8 VCC
0.6 VCC0.6 VCC
71
MB90420G/5G (A) Series
(7) Low voltage detection
Parameter
Symbol
Pin name
Conditions
(V
SS= AVSS= 0.0 V, TA=−40 °C to +105 °C)
Value
Min.Typ.Max.
UnitRemarks
Detection voltageV
Hysteresis widthV
Power supply voltage
fluctuation ratio
dV/dtVCC−0.10.02V/µs
Detection delay timet
VCC
DLVCC
HYSVCC0.1V
3.74.04.3V
d35µs
Internal reset
dV
dt
V
ni
td
VHYS
td
During voltage
drop
During voltage
rise
72
MB90420G/5G (A) Series
5.A/D Conversion Block
(1) Electrical Characteristics
(V
CC= AVCC= 5.0 V±10%, VSS= AVSS= 0.0 V, TA=−40 °C to +105 °C)
ParameterSymbolPin name
Min.Typ.Max.
Resolution 10bit
Total error ±5.0LSB
Non-linear error ±2.5LSB
Differential linear error ±1.9LSB
Value
UnitRemarks
Zero transition voltageV
Full scale transition
voltage
V
Sampling timet
Compare timet
OTAN0 to AN7
FSTAN0 to AN7
SMP2.000µs*1
CMP4.125µs*2
AVSS
− 3.5 LSB
AVRH
− 6.5 LSB
SS
AV
+ 0.5 LSB
AVRH
− 1.5 LSB
SS
AV
+ 4.5 LSB
AVRH
+ 1.5 LSB
V
V
1 LSB =
(AVRH − AV
/ 1024
SS)
A/D conversion timetCNV6.125µs*3
Analog port
input current
I
AINAN0 to AN710µAVAVSS= VAIN= VAVCC
Analog input currentVAINAN0 to AN70AVRHV
Reference voltageAVR+AVRH3.0AVCCV
*3 : Equivalent to conversion time per channel at FCP= 16 MHz, and selection of tSMP= 32 × tCP and tCMP= 32 × tCP.
*4 : Defined as supply current (when V
CC= AVCC = AVRH = 5.0 V) with A/D converter not operating, and CPU in
stop mode.
Notes : •The relative error increases as AVRH is reduced.
•The output impedance (rs) on the external analog input circuit should be used as follows.
External circuit output impedance rs = 5 kΩ max.
•If the output impedance on the external circuit is too great, the analog voltage sampling time may be
insufficient.
•If DC inhibitor capacitance is placed between the external circuit and input pin, then a capacitance value
several thousand times the value of the chip internal sampling capacitance (CSH) should be selected in
order to suppress the effects of voltage division with CSH.
73
MB90420G/5G (A) Series
• Analog input equivalent circuit
Microcontroller internal circuits
rS
Input pin AN7
VS
External circuits
Input pin AN0
Analog channel selector
CSH
RSH
S/H circuit
Comparator
<Recommended and guide values for element parameters>
rs = 5 kΩ or less
RSH= approx. 3 kΩ
C
SH= approx. 25 pF
Note : These element parameters are intended as guidelines for reference, and are not warranted f or
actual use.
74
MB90420G/5G (A) Series
(2) Definition of terms
• Resolution
Indicates the ability of the A/D converter to discriminate in analog conversion.
10-bit resolution indicates that analog voltage can be resolved into 2
• Total error
Expresses the difference between actual and logical values. It is the total value of errors that can come from
offset error, gain error, non-linearity error and noise.
• Linearity error
Expresses the deviation between actual con version char acteristics and a straight line connecting the de vice’s
zero transition point (00 0000 0000 ←→ 00 0000 0001) and full scale transition point (11 1111 1110 ←→ 11
1111 1111) .
• Differential linearity error
Expresses the deviation of the logical value of input voltage required to create a variation of 1 SLB in output
code.
Table 1 Explanation of Items in Tables of Instructions
ItemMeaning
MnemonicUpper-case letters and symbols: Represented as they appear in assembler.
Lower-case letters:Replaced when described in assembler.
Numbers after lower-case letters:Indicate the bit width within the instruction code.
#Indicates the number of bytes.
~Indicates the number of cycles.
m: When branching
n : When not branching
See Table 4 for details about meanings of other letters in items.
RGIndicates the number of accesses to the register during execution of the instruction.
BIndicates the correction value for calculating the number of actual cycles during execution of the
OperationIndicates the operation of instruction.
LHIndicates special operations involving the upper 8 bits of the lower 16 bits of the accumulator.
AHIndicates special operations involving the upper 16 bits in the accumulator.
I
S
T
N
Z
V
C
RMWIndicates whether the instruction is a read-modify-write instruction. (a single instruction that
It is used calculate a correction value for intermittent operation of CPU.
instruction. (Table 5)
The number of actual cycles during execution of the instruction is the correction value summed
with the value in the “~” column.
Z : Transfers “0”.
X : Extends with a sign before transferring.
– : Transfers nothing.
* : Transfers from AL to AH.
– : No transfer.
Z : Transfers 00
X : Transfers 00H or FFH to AH by signing and extending AL.
Indicates the status of each of the following flags: I (interrupt enable), S (stack), T (sticky bit),
N (negative), Z (zero), V (overflow), and C (carry).
* : Changes due to execution of instruction.
– : No change.
S : Set by execution of instruction.
R : Reset by execution of instruction.
reads data from memory, etc., processes the data, and then writes the result to memory.)
* : Instruction is a read-modify-write instruction.
– : Instruction is not a read-modify-write instruction.
Note: A read-modify-write instruction cannot be used on addresses that have different
meanings depending on whether they are read or written.
H to AH.
• Number of execution cycles
The number of cycles required for instruction execution is acquired by adding the number of cycles for each
instruction, a corrective value depending on the condition, and the number of cycles required f or program fetch.
Whenever the instruction being executed exceeds the two-byte (word) boundary, a program on an internal
ROM connected to a 16-bit bus is f etched. If data access is interf ered with, theref ore, the n umber of ex ecution
cycles is increased.
For each byte of the instruction being e xecuted, a program on a memory connected to an 8-bit external data
bus is fetched. If data access in interfered with, therefore, the number of execution cycles is increased.
When a general-purpose register, an internal ROM, an internal RAM, an internal I/O device, or an external
bus is accessed during intermittent CPU operation, the CPU clock is suspended by the number of cycles
specified by the CG1/0 bit of the low-pow er consumption mode control register. When determining the number
of cycles required for instruction execution during intermittent CPU operation, therefore , add the value of the
number of times access is done × the number of cycles suspended as the corrective value to the number of
ordinary execution cycles.
78
MB90420G/5G (A) Series
Table 2 Explanation of Symbols in Tables of Instructions
SymbolMeaning
A32-bit accumulator
The bit length varies according to the instruction.
Byte : Lower 8 bits of AL
Word : 16 bits of AL
Long : 32 bits of AL and AH
Register direct
“ea” corresponds to byte, word, and
long-word types, starting from the left
Register indirect
Register indirect with post-increment
Register indirect with 8-bit
displacement
Register indirect with 16-bit
displacement
Number of bytes in address
extension *
—
0
0
1
2
1C
1D
1E
1F
Note : The number of bytes in the address extension is indicated by the “+” symbol in the “#” (number of bytes)
80
@RW0 + RW7
@RW1 + RW7
@PC + disp16
addr16
column in the tables of instructions.
Register indirect with index
Register indirect with index
PC indirect with 16-bit displacement
Direct address
0
0
2
2
MB90420G/5G (A) Series
Table 4 Number of Execution Cycles for Each Type of Addressing
(a)
CodeOperand
Ri
00 to 07
08 to 0B@RWj21
0C to 0F@RWj +42
10 to 17@RWi + disp821
18 to 1B@RWj + disp1621
1C
1D
1E
1F
Note : “(a)” is used in the “~” (number of states) column and column B (correction value) in the tables of instructions.
Table 5 Compensation Values for Number of Cycles Used to Calculate Number of Actual Cycles
Operand
Internal register+01+01+02
RWi
RLi
@RW0 + RW7
@RW1 + RW7
@PC + disp16
addr16
Number of execution cycles
for each type of addressing
Listed in tables of instructionsListed in tables of instructions
4
4
2
1
(b) byte(c) word(d) long
CyclesAccessCyclesAccessCyclesAccess
Number of register accesses
for each type of addressing
2
2
0
0
Internal memory even address
Internal memory odd address
Even address on external data bus (16 bits)
Odd address on external data bus (16 bits)
External data bus (8 bits)+11+42+84
Notes: • “(b)”, “(c)”, and “(d)” are used in the “~” (number of states) column and column B (correction value)
in the tables of instructions.
• When the external data bus is used, it is necessary to add in the number of wait cycles used for ready
input and automatic ready.
Table 6 Correction Values for Number of Cycles Used to Calculate Number of Program Fetch Cycles
InstructionByte boundaryWord boundary
Internal memory—+2
External data bus (16 bits)—+3
External data bus (8 bits)+3—
Notes: • When the external data bus is used, it is necessary to add in the number of wait cycles used for ready
input and automatic ready.
• Because instruction execution is not slowed down by all program fetches in actuality, these correction
values should be used for “worst case” calculations.
+0
+0
+1
+1
1
1
1
1
+0
+2
+1
+4
1
2
1
2
+0
+4
+2
+8
2
4
2
4
81
MB90420G/5G (A) Series
Table 7 Transfer Instructions (Byte) [41 Instructions]
Mnemonic#~
MOVA, dir
MOVA, addr16
MOVA, Ri
MOVA, ear
MOVA, eam
MOVA, io
MOVA, #imm8
MOVA, @A
MOVA, @RLi+disp8
MOVN A, #imm4
MOVX A, dir
MOVX A, addr16
MOVX A, Ri
MOVX A, ear
MOVX A, eam
MOVX A, io
MOVX A, #imm8
MOVX A, @A
MOVX A,@RWi+disp8
MOVX A, @RLi+disp8
MOVdir, A
MOVaddr16, A
MOVRi, A
MOVear, A
MOVeam, A
MOVio, A
MOV@RLi+disp8, A
MOVRi, ear
MOVRi, eam
MOVear, Ri
MOVeam, Ri
MOVRi, #imm8
MOVio, #imm8
MOVdir, #imm8
MOVear, #imm8
MOVeam, #imm8
MOV@AL, AH
/MOV@A, T
2
3
1
2
2+
2
2
2
3
1
2
3
2
2
2+
2
2
2
2
3
2
3
1
2
2+
2
3
2
2+
2
2+
2
3
3
3
3+
2
3
4
2
2
3+ (a)
3
2
3
10
1
3
4
2
2
3+ (a)
3
2
3
5
10
3
4
2
2
3+ (a)
3
10
3
4+ (a)
4
5+ (a)
2
5
5
2
4+ (a)
3
RG
BOperation
byte (A) ← (dir)
(b)
0
byte (A) ← (addr16)
(b)
0
byte (A) ← (Ri)
0
1
byte (A) ← (ear)
0
1
byte (A) ← (eam)
(b)
0
byte (A) ← (io)
(b)
0
byte (A) ← imm8
0
0
byte (A) ← ((A))
(b)
0
byte (A) ← ((RLi)+disp8)
(b)
2
byte (A) ← imm4
0
0
byte (A) ← (dir)
(b)
0
byte (A) ← (addr16)
(b)
0
byte (A) ← (Ri)
0
1
byte (A) ← (ear)
0
1
byte (A) ← (eam)
(b)
0
byte (A) ← (io)
(b)
0
byte (A) ← imm8
0
0
byte (A) ← ((A))
(b)
0
byte (A) ← ((R Wi)+disp8)
(b)
1
byte (A) ← ((RLi)+disp8)
(b)
2
byte (dir) ← (A)
(b)
0
byte (addr16) ← (A)
(b)
0
byte (Ri) ← (A)
0
1
byte (ear) ← (A)
0
1
byte (eam) ← (A)
(b)
0
byte (io) ← (A)
(b)
0
byte ((RLi) +disp8) ← (A)
(b)
2
byte (Ri) ← (ear)
0
2
byte (Ri) ← (eam)
(b)
1
byte (ear) ← (Ri)
0
2
byte (eam) ← (Ri)
(b)
1
byte (Ri) ← imm8
0
1
byte (io) ← imm8
(b)
0
byte (dir) ← imm8
(b)
0
byte (ear) ← imm8
0
1
byte (eam) ← imm8
(b)
0
byte ((A)) ← (AH)
(b)
0
LH AHISTNZVC RMW
–
–
–
*
*
–
–
–
*
Z
–
–
–
*
*
–
–
–
*
Z
–
–
–
*
*
–
–
–
*
Z
–
–
–
*
*
–
–
–
*
Z
–
–
–
*
*
–
–
–
*
Z
–
–
–
*
*
–
–
–
*
Z
–
–
–
*
*
–
–
–
*
Z
–
–
–
*
*
–
–
–
–
Z
–
–
–
*
*
–
–
–
*
Z
–
–
–
*
R
–
–
–
*
Z
–
–
–
*
*
–
–
–
*
X
–
–
–
*
*
–
–
–
*
X
–
–
–
*
*
–
–
–
*
X
–
–
–
*
*
–
–
–
*
X
–
–
–
*
*
–
–
–
*
X
–
–
–
*
*
–
–
–
*
X
–
–
–
*
*
–
–
–
*
X
–
–
–
*
*
–
–
–
–
X
–
–
–
*
*
–
–
–
*
X
–
–
–
*
*
–
–
–
*
X
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
XCHA, ear
XCHA, eam
XCHRi, ear
XCHRi, eam
Note : For an e xplanation of “(a)” to “(d)”, refer to T ab le 4, “Number of Execution Cycles for Each Type of Addressing,”
and Table 5, “Correction Values for Number of Cycles Used to Calculate Number of Actual Cycles.”
Table 8 Transfer Instructions (Word/Long Word) [38 Instructions]
Mnemonic#~
MOVW A, dir
MOVW A, addr16
MOVW A, SP
MOVW A, RWi
MOVW A, ear
MOVW A, eam
MOVW A, io
MOVW A, @A
MOVW A, #imm16
MOVW A, @RWi+disp8
MOVW A, @RLi+disp8
MOVW dir, A
MOVW addr16, A
MOVW SP, A
MOVW RWi, A
MOVW ear, A
MOVW eam, A
MOVW io, A
MOVW @RWi+disp8, A
MOVW @RLi+disp8, A
MOVW RWi, ear
MOVW RWi, eam
MOVW ear, RWi
MOVW eam, RWi
MOVW RWi, #imm16
MOVW io, #imm16
MOVW ear, #imm16
MOVW eam, #imm16
MOVW @AL, AH
/MOVW@A, T
2
3
1
1
2
2+
2
2
3
2
3
2
3
1
1
2
2+
2
2
3
2
2+
2
2+
3
4
4
4+
2
3
4
1
2
2
3+ (a)
3
3
2
5
10
3
4
1
2
2
3+ (a)
3
5
10
3
4+ (a)
4
5+ (a)
2
5
2
4+ (a)
3
RG
BOperation
0
(c)
word (A) ← (dir)
0
(c)
word (A) ← (addr16)
0
0
word (A) ← (SP)
1
0
word (A) ← (RWi)
1
0
word (A) ← (ear)
0
(c)
word (A) ← (eam)
0
(c)
word (A) ← (io)
0
(c)
word (A) ← ((A))
0
0
word (A) ← imm16
1
2
0
0
0
1
1
0
0
1
2
2
1
2
1
1
0
1
0
0
word (A) ← ((RWi) +disp8)
(c)
word (A) ← ((RLi) +disp8)
(c)
(c)
word (dir) ← (A)
(c)
word (addr16) ← (A)
0
word (SP) ← (A)
0
word (RWi) ← (A)
0
word (ear) ← (A)
(c)
word (eam) ← (A)
(c)
word (io) ← (A)
word ((RWi) +disp8) ← (A)
(c)
word ((RLi) +disp8) ← (A)
(c)
(0)
word (RWi) ← (ear)
(c)
word (RWi) ← (eam)
0
word (ear) ← (RWi)
(c)
word (eam) ← (RWi)
0
word (RWi) ← imm16
(c)
word (io) ← imm16
0
word (ear) ← imm16
(c)
word (eam) ← imm16
(c)
word ((A)) ← (AH)
LH AHISTNZVC RMW
–
*
–
–
–
*
*
–
–
–
–
*
–
–
–
*
*
–
–
–
–
*
–
–
–
*
*
–
–
–
–
*
–
–
–
*
*
–
–
–
–
*
–
–
–
*
*
–
–
–
–
*
–
–
–
*
*
–
–
–
–
*
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
*
–
–
–
*
*
–
–
–
–
*
–
–
–
*
*
–
–
–
–
*
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*
*
–
–
–
XCHW A, ear
XCHW A, eam
XCHW RWi, ear
XCHW RWi, eam
MOVL A, ear
MOVL A, eam
MOVL A, #imm32
MOVL ear, A
MOVL eam, A
Note : For an e xplanation of “(a)” to “(d)”, refer to T ab le 4, “Number of Execution Cycles for Each Type of Addressing,”
and Table 5, “Correction Values for Number of Cycles Used to Calculate Number of Actual Cycles.”
2
2+
2
2+
2
2+
5
2
2+
4
5+ (a)
7
9+ (a)
4
5+ (a)
3
4
5+ (a)
2
0
4
2
2
0
0
2
0
0
2× (c)
0
2× (c)
0
(d)
0
0
(d)
word (A) ↔ (ear)
word (A) ↔ (eam)
word (RWi) ↔ (ear)
word (RWi) ↔ (eam)
long (A) ← (ear)
long (A) ← (eam)
long (A) ← imm32
long (ear) ← (A)
long (eam) ← (A)
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
83
MB90420G/5G (A) Series
Table 9 Addition and Subtraction Instructions (Byte/Word/Long Word) [42 Instructions]
Mnemonic#~
ADDA,#imm8
ADDA, dir
ADDA, ear
ADDA, eam
ADDear, A
ADDeam, A
ADDCA
ADDCA, ear
ADDCA, eam
ADDDC A
SUBA, #imm8
SUBA, dir
SUBA, ear
SUBA, eam
SUBear, A
SUBeam, A
SUBCA
SUBCA, ear
SUBCA, eam
SUBDC A
ADDW A
ADDW A, ear
ADDW A, eam
ADDW A, #imm16
ADDW ear, A
ADDW eam, A
ADDCWA, ear
ADDCWA, eam
SUBW A
SUBW A, ear
SUBW A, eam
SUBW A, #imm16
SUBW ear, A
SUBW eam, A
SUBCWA, ear
SUBCWA, eam
Note : For an explanation of “(a)” to “(d)”, refer to Table 4, “Number of Execution Cycles for Each Type of Addressing,”
and Table 5, “Correction Values for Number of Cycles Used to Calculate Number of Actual Cycles.”
85
MB90420G/5G (A) Series
Table 12 Multiplication and Division Instructions (Byte/Word/Long Word) [11 Instructions]
Mnemonic#~
DIVUA
DIVUA, ear
DIVUA, eam
DIVUW A, ear
DIVUW A, eam
MULUA
MULUA, ear
MULUA, eam
MULUW A
MULUW A, ear
MULUW A, eam
1
2
2+
2
2+
1
2
2+
1
2
2+
RG
BOperation
1
0
*
2
1
*
3
0
*
4
1
*
5
0
*
8
0
*
9
1
*
10
0
*
0
11
*
1
12
*
0
13
*
word (AH) /byte (AL)
0
Quotient → byte (AL) Remainder → byte (AH)
0
word (A)/byte (ear)
Quotient → byte (A) Remainder → byte (ear)
6
word (A)/byte (eam)
*
Quotient → byte (A) Remainder → byte (eam)
long (A)/word (ear)
0
Quotient → word (A) Remainder → word (ear)
7
long (A)/word (eam)
*
Quotient → word (A) Remainder → word (eam)
byte (AH) *byte (AL) → word (A)
0
byte (A) *byte (ear) → word (A)
0
byte (A) *byte (eam) → word (A)
(b)
word (AH) *word (AL) → long (A)
0
word (A) *word (ear) → long (A)
0
word (A) *word (eam) → long (A)
(c)
LH AH ISTNZVC RMW
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*1: 3 when the result is zero, 7 when an overflow occurs, and 15 normally.
*2: 4 when the result is zero, 8 when an overflow occurs, and 16 normally.
*3: 6 + (a) when the result is zero, 9 + (a) when an overflow occurs, and 19 + (a) normally.
*4: 4 when the result is zero, 7 when an overflow occurs, and 22 normally.
*5: 6 + (a) when the result is zero, 8 + (a) when an overflow occurs, and 26 + (a) normally.
*6: (b) when the result is zero or when an overflow occurs, and 2 × (b) normally.
*7: (c) when the result is zero or when an overflow occurs, and 2 × (c) normally.
*8: 3 when byte (AH) is zero, and 7 when byte (AH) is not zero.
*9: 4 when byte (ear) is zero, and 8 when byte (ear) is not zero.
*10: 5 + (a) when byte (eam) is zero, and 9 + (a) when byte (eam) is not 0.
*11: 3 when word (AH) is zero, and 11 when word (AH) is not zero.
*12: 4 when word (ear) is zero, and 12 when word (ear) is not zero.
*13: 5 + (a) when word (eam) is zero, and 13 + (a) when word (eam) is not zero.
–
–
–
–
*
*
–
–
–
–
–
*
*
–
–
–
–
–
*
*
–
–
–
–
–
*
*
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Note : For an e xplanation of “(a)” to “(d)”, refer to T ab le 4, “Number of Execution Cycles for Each Type of Addressing,”
and Table 5, “Correction Values for Number of Cycles Used to Calculate Number of Actual Cycles.”
86
MB90420G/5G (A) Series
Table 13 Signed Multiplication and Division Instructions (Byte/Wor d/Long Word) [11 Instructions]
RG
Mnemonic#~
DIVA
DIVA, ear
DIVA, eam
DIVWA, ear
DIVWA, eam
MULUA
MULUA, ear
MULUA, eam
MULUW A
MULUW A, ear
MULUW A, eam
*1: Set to 3 when the division-by-0, 8 or 18 for an overflow, and 18 for normal operation.
*2: Set to 3 when the division-by-0, 10 or 21 for an overflow, and 22 for normal operation.
*3: Set to 4 + (a) when the division-by-0, 11 + (a) or 22 + (a) for an overflow, and 23 + (a) for normal operation.
*4: Positive dividend: Set to 4 when the division-by-0, 10 or 29 for an overflow, and 30 for normal operation.
Negative dividend: Set to 4 when the division-by-0, 11 or 30 for an overflow and 31 for normal operation.
*5: Positive dividend:Set to 4 + (a) when the division-by-0, 11 + (a) or 30 + (a) for an overflow, and 31 + (a) for
Negative dividend:Set to 4 + (a) when the division-by-0, 12 + (a) or 31 + (a) for an overflow, and 32 + (a) for
*6: When the division-by-0, (b) for an overflow, and 2 × (b) for normal operation.
*7: When the division-by-0, (c) for an overflow, and 2 × (c) for normal operation.
*8: Set to 3 when byte (AH) is zero, 12 when the result is positive, and 13 when the result is negative.
*9: Set to 3 when byte (ear) is zero, 12 when the result is positive, and 13 when the result is negative.
*10: Set to 4 + (a) when byte (eam) is zero, 13 + (a) when the result is positive , and 14 + (a) when the result is negative.
*11: Set to 3 when word (AH) is zero, 12 when the result is positive, and 13 when the result is negative.
*12: Set to 3 when word (ear) is zero, 16 when the result is positive, and 19 when the result is negative.
*13: Set to 4 + (a) when word (eam) is zero, 17 + (a) when the result is positive, and 20 + (a) when the result is
negative.
2
*1
2
*2
2 +
*3
2
*4
2+
*5
2
*8
2
*9
2 +
*10
2
*11
2
*12
2 +
*13
normal operation.
normal operation.
BOperation
0
0
word (AH) /byte (AL)
Quotient → byte (AL)
Remainder → byte (AH)
1
0
word (A)/byte (ear)
Quotient → byte (A)
Remainder → byte (ear)
0
*6
word (A)/byte (eam)
Quotient → byte (A)
Remainder → byte (eam)
1
0
long (A)/word (ear)
Quotient → word (A)
Remainder → word (ear)
0
*7
long (A)/word (eam)
Quotient → word (A)
Remainder → word (eam)
0
0
byte (AH) *byte (AL) → word (A)
1
0
byte (A) *byte (ear) → word (A)
0
(b)
byte (A) *byte (eam) → word (A)
0
0
word (AH) *word (AL) → long (A)
1
0
word (A) *word (ear) → long (A)
0
(c)
word (A) *word (eam) → long (A)
LH AHISTNZVCRMW
Z
–
–
–
–
–
–
*
Z
–
–
–
–
–
–
*
Z
–
–
–
–
–
–
*
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*
–
*
–
*
–
*
–
*
–
–
–
–
–
–
–
–
–
–
–
–
–
Notes: • When overflow occurs during DIV or DIVW instruction execution, the number of execution cycles takes
two values because of detection before and after an operation.
• When overflow occurs during DIV or DIVW instruction execution, the contents of AL are destroyed.
• For (a) to (d), refer to “Table 4 Number of Execution Cycles for Effective Address in Addressing Modes”
and “Table 5 Correction Values for Number of Cycles for Calculating Actual Number of Cycles.”
87
MB90420G/5G (A) Series
Mnemonic#~
ANDA, #imm8
ANDA, ear
ANDA, eam
ANDear, A
ANDeam, A
ORA, #imm8
ORA, ear
ORA, eam
ORear, A
OReam, A
XORA, #imm8
XORA, ear
XORA, eam
XORear, A
XOReam, A
NOTA
NOTear
NOTeam
ANDW A
ANDW A, #imm16
ANDW A, ear
ANDW A, eam
ANDW ear, A
ANDW eam, A
*1: 4 when branching, 3 when not branching.
*2: (b) + 3 × (c)
*3: Read (word) branch address.
*4: W: Save (word) to stack; R: read (word) branch address.
*5: Save (word) to stack.
*6: W: Save (long word) to W stack; R: read (long word) R branch address.
*7: Save (long word) to stack.
Note : For an explanation of “(a)” to “(d)”, refer to Table 4, “Number of Execution Cycles for Each Type of Addressing,”
and Table 5, “Correction Values for Number of Cycles Used to Calculate Number of Actual Cycles.”
91
MB90420G/5G (A) Series
Table 20 Branch 2 Instructions [19 Instructions]
Mnemonic#~
CBNEA, #imm8, rel
CWBNEA, #imm16, rel
CBNEear, #imm8, rel
CBNEeam, #imm8, rel*
CWBNEear, #imm16, rel
CWBNE eam, #imm16, rel*
DBNZear , rel
DBNZeam, rel
DWBNZ ear, rel
DWBNZ eam, rel
INT#vct8
INTaddr16
INTPaddr24
INT9
RETI
LINK#imm8
UNLINK
RG
BOperation
1
3
4
4
10
4+
5
10
5+
3
3+
0
*
1
0
*
2
1
*
3
0
*
4
1
*
3
0
*
5
2
*
6
*
2
2× (b)
Branch when byte (A) ≠ imm8
0
Branch when word (A) ≠ imm16
0
Branch when byte (ear) ≠ imm8
0
Branch when byte (eam) ≠ imm8
(b)
Branch when word (ear) ≠ imm16
0
Branch when word (eam) ≠ imm16
(c)
0
Branch when byte (ear) =
(ear) – 1, and (ear) ≠ 0
Branch when byte (eam) =
frame pointer to stack, set
new frame pointer, and
allocate local pointer area
(c)
1
0
5
At constant entry , retriev e old
–
–
–
–
–
–
–
–
–
–
frame pointer from stack.
8
RET *
RETP *
1
9
4
1
6
(c)
0
0
Return from subroutine
(d)
Return from subroutine
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*1: 5 when branching, 4 when not branching
*2: 13 when branching, 12 when not branching
*3: 7 + (a) when branching, 6 + (a) when not branching
*4: 8 when branching, 7 when not branching
*5: 7 when branching, 6 when not branching
*6: 8 + (a) when branching, 7 + (a) when not branching
*7: Set to 3 × (b) + 2 × (c) when an interrupt request occurs, and 6 × (c) for return.
*8: Retrieve (word) from stack
*9: Retrieve (long word) from stack
*10: In the CBNE/CWBNE instruction, do not use the RWj+ addressing mode.
Note : For an e xplanation of “(a)” to “(d)”, refer to T ab le 4, “Number of Execution Cycles for Each Type of Addressing,”
and Table 5, “Correction Values for Number of Cycles Used to Calculate Number of Actual Cycles.”
92
–
–
–
–
MB90420G/5G (A) Series
Table 21 Other Control Instructions (Byte/Word/Long Word) [28 Instructions]
Mnemonic#~
PUSHW A
PUSHW AH
PUSHW PS
PUSHW rlst
POPW A
POPW AH
POPW PS
POPW rlst
JCTX@A
AND CCR, #imm8
ORCCR, #imm8
MOV RP, #imm8
MOV ILM, #imm8
MOVEA RWi, ear
MOVEA RWi, eam
MOVEA A, ear
MOVEA A, eam
ADDSP #imm8
ADDSP #imm16
1
1
1
2
1
1
1
2
1
2
2
2
2
2
2+
2
2+
2
3
4
4
4
3
*
3
3
4
2
*
14
3
3
2
2
3
2+ (a)
1
1+ (a)
3
3
RG
BOperation
word (SP) ← (SP) –2, ((SP)) ← (A)
(c)
0
word (SP) ← (SP) –2, ((SP)) ← (AH)
(c)
0
word (SP) ← (SP) –2, ((SP)) ← (PS)
(c)
0
5
4
(SP) ← (SP) –2n, ((SP)) ← (rlst)
*
*
0
0
0
*
0
0
0
0
0
1
1
0
0
0
0
5
6× (c)
word (A) ← ((SP)), (SP) ← (SP) +2
(c)
word (AH) ← ((SP)), (SP) ← (SP) +2
(c)
word (PS) ← ((SP)), (SP) ← (SP) +2
(c)
4
(rlst) ← ((SP)), (SP) ← (SP) +2n
*
Context switch instruction
byte (CCR) ← (CCR) and imm8
0
byte (CCR) ← (CCR) or imm8
0
byte (RP) ←imm8
0
byte (ILM) ←imm8
0
word (RWi) ←ear
0
word (RWi) ←eam
0
word(A) ←ear
0
word (A) ←eam
0
word (SP) ← (SP) +ext (imm8)
0
word (SP) ← (SP) +imm16
0
LH AH ISTNZVC RMW
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*
*
*
*
*
*
*
–
–
–
–
–
–
–
–
–
–
–
–
–
*
*
*
*
*
*
*
–
–
–
*
*
*
*
*
*
*
–
–
–
*
*
*
*
*
*
*
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
MOVA, brgl
MOVbrg2, A
NOP
ADB
DTB
PCB
SPB
NCC
CMR
1
2
2
1
1
1
1
1
1
1
0
*
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
byte (A) ← (brgl)
0
byte (brg2) ← (A)
0
No operation
0
Prefix code for accessing AD space
0
Prefix code for accessing DT space
0
Prefix code for accessing PC space
0
Prefix code for accessing SP space
0
Prefix code for no flag change
0
Prefix code for common register bank
0
Z
*
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*1: PCB, ADB, SSB, USB, and SPB : 1 state
DTB, DPR: 2 states
*2: 7 + 3 × (pop count) + 2 × (last register number to be popped), 7 when rlst = 0 (no transfer register)
*3: 29 +3 × (push count) – 3 × (last register number to be pushed), 8 when rlst = 0 (no transfer register)
*4: Pop count × (c), or push count × (c)
*5: Pop count or push count.
Note : For an e xplanation of “(a)” to “(d)”, refer to T ab le 4, “Number of Execution Cycles for Each Type of Addressing,”
and Table 5, “Correction Values for Number of Cycles Used to Calculate Number of Actual Cycles.”
93
MB90420G/5G (A) Series
Table 22 Bit Manipulation Instructions [21 Instructions]
Mnemonic#~
MOVB A, dir :bp
MOVB A, addr16:bp
MOVB A, io:bp
MOVB dir:bp, A
MOVB addr16:bp, A
MOVB io:bp, A
SETB dir:bp
SETB addr16:bp
SETB io:bp
CLRB dir:bp
CLRB addr16:bp
CLRB io:bp
BBCdir:bp, rel
BBCaddr16:bp, rel
BBCio:bp, rel
BBSdir:bp, rel
BBSaddr16:bp, rel
BBSio:bp, rel
SBBS addr16:bp, rel
RG
BOperation
3
5
0
(b)
byte (A) ← (dir:bp) b
4
5
0
(b)
byte (A) ← (addr16:bp) b
3
4
0
(b)
byte (A) ← (io:bp) b
3
7
0
2× (b)
4
7
0
2× (b)
3
6
0
2× (b)
3
7
0
2× (b)
4
7
0
2× (b)
3
7
0
2× (b)
3
7
0
2× (b)
4
7
0
2× (b)
3
7
0
2× (b)
1
4
5
4
4
5
4
5
0
*
1
0
*
2
0
*
1
0
*
1
0
*
2
0
*
3
0
*
2× (b)
bit (dir:bp) b ← (A)
bit (addr16:bp) b ← (A)
bit (io:bp) b ← (A)
bit (dir:bp) b ← 1
bit (addr16:bp) b ← 1
bit (io:bp) b ← 1
bit (dir:bp) b ← 0
bit (addr16:bp) b ← 0
bit (io:bp) b ← 0
(b)
Branch when (dir:bp) b = 0
(b)
Branch when (addr16:bp) b = 0
(b)
Branch when (io:bp) b = 0
(b)
Branch when (dir:bp) b = 1
(b)
Branch when (addr16:bp) b = 1
(b)
Branch when (io:bp) b = 1
Branch when (addr16:bp) b = 1, bit = 1
LH AHISTNZVC RMW
Z
*
–
–
–
*
*
–
–
–
Z
*
–
–
–
*
*
–
–
–
Z
*
–
–
–
*
*
–
–
–
–
–
–
–
–
*
*
–
–
*
–
–
–
–
–
*
*
–
–
*
–
–
–
–
–
*
*
–
–
*
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
*
–
–
–
–
–
–
–
–
–
*
–
–
*
WBTS io:bp
WBTC io:bp
4
3
*
4
*
3
5
0
0
Wait until (io:bp) b = 1
*
5
Wait until (io:bp) b = 0
*
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*1: 8 when branching, 7 when not branching
*2: 7 when branching, 6 when not branching
*3: 10 when condition is satisfied, 9 when not satisfied
*4: Undefined count
*5: Until condition is satisfied
Note : For an e xplanation of “(a)” to “(d)”, refer to T ab le 4, “Number of Execution Cycles for Each Type of Addressing,”
and Table 5, “Correction Values for Number of Cycles Used to Calculate Number of Actual Cycles.”
Note: For an e xplanation of “(a)” to “(d)”, refer to T ab le 4, “Number of Execution Cycles fo r Each Type of Addressing,”
and Table 5, “Correction Values for Number of Cycles Used to Calculate Number of Actual Cycles.”
94
MB90420G/5G (A) Series
Table 24 String Instructions [10 Instructions]
Mnemonic#~
MOVS/MOVSI
MOVSD
SCEQ/SCEQI
SCEQD
FISL/FILSI
MOVSW/MOVSWI
MOVSWD
SCWEQ/SCWEQI
SCWEQD
FILSW/FILSWI
2
2
2
2
2
2
2
2
2
2
2
*
2
*
1
*
1
*
6m +6
2
*
2
*
1
*
1
*
6m +6
RG
BOperation
5
3
Byte transfer @AH+ ← @AL+, counter = RW0
*
*
5
3
*
*
*
*
*
*
*
*
*
Byte transfer @AH– ← @AL–, counter = RW0
*
5
4
Byte retrieval (@AH+) – AL, counter = RW0
*
5
4
Byte retrieval (@AH–) – AL, counter = RW0
*
Byte filling @AH+ ← AL, counter = RW0
5
3
*
8
6
Word transfer @AH+ ← @AL+, counter = RW0
*
8
6
Word transfer @AH– ← @AL–, counter = RW0
*
8
7
Word retrieval (@AH+) – AL, counter = RW0
*
8
7
Word retrieval (@AH–) – AL, counter = RW0
*
Word filling @AH+ ← AL, counter = RW0
8
6
*
LH AH ISTNZVC RMW
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*
*
*
*
–
–
–
–
–
*
*
*
*
–
–
–
–
–
*
*
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
*
*
*
*
–
–
–
–
–
*
*
*
*
–
–
–
–
–
*
*
–
–
m: RW0 value (counter value)
n: Loop count
*1: 5 when RW0 is 0, 4 + 7 × (RW0) for count out, and 7 × n + 5 when match occurs
*2: 5 when RW0 is 0, 4 + 8 × (RW0) in any other case
*3: (b) × (RW0) + (b) × (RW0) when accessing different areas for the source and destination, calculate (b) sepa-
rately for each.
*4: (b) × n
*5: 2 × (RW0)
*6: (c) × (RW0) + (c) × (RW0) when accessing different areas for the source and destination, calculate (c)
separately for each.
*7: (c) × n
*8: 2 × (RW0)
–
–
–
–
–
–
–
–
–
–
Note : For an e xplanation of “(a)” to “(d)”, refer to T ab le 4, “Number of Execution Cycles for Each Type of Addressing,”
and Table 5, “Correction Values for Number of Cycles Used to Calculate Number of Actual Cycles.”
FUJITSU LIMITED
Corporate Global Business Support Division
Electronic Devices
Shinjuku Dai-Ichi Seimei Bldg. 7-1,
Nishishinjuku 2-chome, Shinjuku-ku,
Tokyo 163-0721, Japan
Tel: +81-3-5322-3347
Fax: +81-3-5322-3386
http://edevice.fujitsu.com/
North and South America
FUJITSU MICROELECTRONICS, INC.
3545 North First Street,
San Jose, CA 95134-1804, U.S.A.
Tel: +1-408-922-9000
Fax: +1-408-922-9179
FUJITSU MICROELECTRONICS ASIA PTE. LTD.
#05-08, 151 Lorong Chuan,
New Tech Park,
Singapore 556741
Tel: +65-281-0770
Fax: +65-281-0220
http://www.fmap.com.sg/
Korea
FUJITSU MICROELECTRONICS K OREA LTD.
1702 KOSMO TOWER, 1002 Daechi-Dong,
Kangnam-Gu,Seoul 135-280
Korea
Tel: +82-2-3484-7100
Fax: +82-2-3484-7111
All Rights Reserved.
The contents of this document are subject to change without notice.
Customers are advised to consult with FUJITSU sales
representatives before ordering.
The information and circuit diagrams in this document are
presented as examples of semiconductor device applications, and
are not intended to be incorporated in devices for actual use. Also,
FUJITSU is unable to assume responsibility for infringement of
any patent rights or other rights of third parties arising from the use
of this information or circuit diagrams.
The contents of this document may not be reproduced or copied
without the permission of FUJITSU LIMITED.
FUJITSU semiconductor devices are intended for use in standard
applications (computers, office automation and other office
equipments, industrial, communications, and measurement
equipments, personal or household devices, etc.).
CAUTION:
Customers considering the use of our products in special
applications where failure or abnormal operation may directly
affect human lives or cause physical injury or property damage, or
where extremely high levels of reliability are demanded (such as
aerospace systems, atomic energy controls, sea floor repeaters,
vehicle operating controls, medical devices for life support, etc.)
are requested to consult with FUJITSU sales representatives before
such use. The company will not be responsible for damages arising
from such use without prior approval.
Any semiconductor devices have inherently a certain rate of failure.
You must protect against injury, damage or loss from such failures
by incorporating safety design measures into your facility and
equipment such as redundancy, fire protection, and prevention of
over-current levels and other abnormal operating conditions.
If any products described in this document represent goods or
technologies subject to certain restrictions on export under the
Foreign Exchange and Foreign Trade Control Law of Japan, the
prior authorization by Japanese government should be required for
export of those products from Japan.
F0012
FUJITSU LIMITED Printed in Japan
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.