Item
Internal instruction RAM1.5K words256 words4K words
Internal instruction ROMNone4K words12K words24K wordsNone
External instruction memory48K wordsNone
Data RAM (X/Y memory)2K words each1K words each2K words each3K words each
Data ROM (X/Y memory)None2K words each4K words each12K words eachNone
External data memory48K words each16K words each
Instruction cycle
(Maximum operation speed)
External clock
(at maximum operation speed)
Crystal
(at maximum operation speed)
Instruction–STOP instruction is added.
Serial interface (2 Channels)
2.1.2Instructions with Delay .................................................................................................................. 15
2.2Program Control Unit.............................................................................................................................. 16
2.3Operation Unit ......................................................................................................................................... 16
2.3.1General register (R0 to R7)........................................................................................................... 16
DA15 - DA0Note 1.OAddress bus to external data memory
(3S)•External data memory is accessed.
• During the external memory is not accessed, these pins
keep the previous level.
These pins are set to low level; 0x0000, by reset.
They continue outputting low level until the first external
memory access.
D15 - D0Note 2.I/O16 bits data bus to external data memory
(3S)• External data memory is accessed.
MRD17ORead output
(3S)• Reads external memory
µ
PD77016
MWR16OWrite output
(3S)• Writes external memory
WAIT6IWait signal input
•Wait cycle is input when external memory is read.
1: No wait
0: Wait
HOLDRQ7IHold request signal input
• Input low level when external data memory bus is
expected to use.
BSTB18OBus strobe signal output
• Outputs low level while the µPD77016 is occupying
external memory bus.
HOLDAK19OHold acknowledge signal output
• Outputs low level when the µPD77016 permits external
device to use external data memory bus.
Note 1. DA15 to DA0 pins are located on Pin No. 21 - 24, 27 - 34, 37 - 40.
2. D15 to D0 pins are located on Pin No. 41 - 44, 47 - 54, 57 - 60.
Remark The state of the pins added 3S becomes high impedance when the external memory is not accessed or bus release signal
(HOLDAK = 0) is output.
10
• Serial interface
SymbolPin No.I/OFunction
SCK165IClock input for serial 1
SORQ168OSerial output 1 request
SOEN169ISerial output 1 enable
SO167O (3S)Serial data output 1
SIEN164ISerial input 1 enable
SI163ISerial data input 1
SCK276IClock input for serial 2
SORQ273OSerial output 2 request
SOEN272ISerial output 2 enable
µ
PD77016
SO274O (3S)Serial data output 2
SIEN277ISerial input 2 enable
SI278ISerial data input 2
SIAK166OSerial input 1 acknowledge
SIAK275OSerial input 2 acknowledge
Remark The state of the pins added 3S becomes high impedance, when data output have been finished or RESET is input.
11
• Host interface
SymbolPin No.I/OFunction
HA183ISpecifies register which HD7 to HD0 access
1: Accesses HST:Host interface status register
when HA1 = 0
0: Accesses HDT(out): Host transmit data register when
HRD = 0
0: Accesses HDT(in): Host receive data register when
HWR = 0
HA082ISpecifies bits of registers which HD7 to HD0 access
Remark The state of the pins added 3S becomes high impedance when the host does not access host interface.
• I/O port
SymbolPin No.I/OFunction
P3 - P09 - 12I/OI/O port
12
• External instructions memory interface
SymbolPin No.I/OFunction
IA15 - IA0Note 1.O (3S)Address bus to external instruction memory
• Even the internal instruction memory is accessed, the
address is output to the external instruction memory.
In this case, the µPD77016 ignores data of external
instruction memory output.
• Write strobe for external instruction memory. This pin
loads program to external instruction memory (not
internal memory) while µPD77016 is in boot operation.
Note 1. IA15 to IA0 pins are located on these pins: 101 to 104, 107 to 114, 117 to 120
2. ID31 to ID0 pins are located on these pins: 121 to 128, 132 to 139, 142 to 149, 152 to 159
Remark The state of the pins added 3S becomes high impedance when RESET is input.
connect to GND, via a resistor
open
open(pull-up internally)
open
Notes 1. Can leave open, if no access to external data memory is
executed in the whole of program.
But in the HALT mode when the current consumption is
reduced, connect a pin as recommended connection.
2. Can leave open, if HCS, HRD, HWR are fixed to high level.
But in the HALT mode when the current consumption is
reduced, connect a pin as recommended connection.
This section describes the µPD77016 pipeline processing.
2.1.1 Outline
µ
PD77016 basic operations are executed in following 3-stage pipeline.
The
(1) instruction fetch; if
(2) Instruction decoding; id
(3) execution; ex
µ
When the
with written back to general registers. Pipeline processing actualizes programming without delay time to execute
instructions and write back data. Three successive instructions and their processing timing are shown below.
PD77016 operates a result of a instruction just executed before, the data is input to ALU in parallel
Pipeline Processing Timing
if1id1ex1
if2id2ex2
if3id3ex3
1 instruction cycle
2.1.2 Instructions with Delay
The following instructions have delay time in execution.
(1) Instructions to control interrupt
2 instruction cycles have been taken between instruction fetch and execution.
(2) Inter-register transfer instructions and immediate data set instructions
When data is set in data pointer, it needs 2 instruction cycles before the data is valid.
15
µ
PD77016
2.2 Program Control Unit
Program control unit controls not only count up of program counter in normal operation, but loop, repeat,
branch, halt and interrupt.
In addition to loop stack of loop 4 level and program stack of 15 level, software stack can be used for multi-
loop and multi-interrupt/subroutine call.
µ
PD77016 has external 4 interruptions and internal 6 interruptions from peripheral, and specifies interrupt
The
enable or disable independently.
The HALT instruction causes the µPD77016 to place in low power standby mode.
When the HALT instruction is executed, power consumption decreases. HALT mode is released by interrupt
input or hardware reset input. It takes several system clock to recover.
2.3 Operation Unit
Operation unit consists of the following five parts.
– 40 bits general register × 8 for data load/store and input/output of operation data
– 16 bits × 16 bits + 40 bits → 40 bits multiply accumulator
– 40 bits Data ALU
– 40 bits barrel shifter
– SAC: shifter and count circuit.
Standard word length is 40 bits to make overflow check and adjustment easy, and to accumulate the result
of 16 bits × 16 bits multiplication correctly.
SSSSSSSS
Head room
2.3.1 General register (R0 to R7)
µ
PD77016 has eight 40 bits registers for operation input/output and load/store with memory. General
The
register consists of the following three parts.
– R0L to R7L (bit 15 to bit 0)
– R0H to R7H (bit 31 to bit 16)
– R0E to R7E (bit 39 to bit 32)
But each of RnL, RnH and RnE are treated as a register in the following conditions.
(1) General register used as 40 bits register
General registers are treated as 40 bits register, when they are used for the following aims.
(a) Operand for triminal operation (except for multiplier input)
(b) Operand for dyadic operation (except for multiplier and shift value)
(c) Operand for monadic operation (except for exponent instructions)
(d) Operand for operation
(e) Operand for conditional judge
(f) Destination for load instruction (with sign extension and 0 clear)
Result of multiplication among two's complement data
0
1313239
0
(2) General register used as 32 bits register
Bit 31 to bit 0 of general register are treated as 32 bits register, when it is used for a operand of exponent
instruction.
16
µ
PD77016
(3) General register used as 24 bits register
Bit 39 to bit 16 of general register are treated as 24 bits register, when it is used for destination with extended
sign for a load/store instruction.
(4) General register used as 16 bits register
Bit 31 to bit 16 of general register are treated as 16 bits register, when it is used for the following aims.
(a) Signed operand for multiplier
(b) Source/destination for load/store instruction
Bit 15 to bit 0 of general register are treated as 16 bits register, when it is used for the following aims.
(c) Unsigned operand for multiplier
(d) Shift value for shift instruction
(e) Source/destination for load/store instruction
(f) Source/destination for inter-register transfer instruction
(g) Destination for immediate data set instruction
(f) Hardware loop times
(5) General register used as 8 bits register
Bit 39 to bit 32 of general register are treated as 8 bits register, when it is used for source/destination of load/
store instruction.
2.3.2 MAC: Multiply ACcumulator
MAC multiplies a pair of 16 bits data, and adds or subtract the result and 40 bits data. MAC outputs 40 bits
data.
MAC operates three types of multiplication: signed data × signed data, signed data × unsigned data and
unsigned data × unsigned data.
Result of multiplication and 40 bits data for addition can be added after 1 or 16 bits arithmetic shift right.
2.3.3 ALU: Arithmetic Logic Unit
ALU performs arithmetic operation and logic operation. Both input/output data are 40 bits.
2.3.4 BSFT: Barrel ShiFTer
BSFT performs shift right/left operation. Both input/output data are 40 bits. There are two types of shift right
operations; arithmetic shift right which sign is extended, and logic shift right which is input 0 in MSB first.
2.3.5 SAC: Shifter And Count Circuit
SAC calculates and outputs shift value for normalization. SAC is input 32 bits data and outputs the 40 bits
data. Then, bit 39 to bit 5 of output data is always 0.
2.3.6 CJC: Condition Judge Circuit
CJC judges whether condition is true or false with 40 bits input data. A conditional instruction is executed
when the result is true, and not executed when the result is false.
17
Loading...
+ 39 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.