ICE Emulator for Z80 and Z180 TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents ......................................................................................................................
ICE In-Circuit Emulator .................................................................................................................
ICE Target Guides ......................................................................................................................
ICE Emulator for Z80 and Z180 ..............................................................................................
1
WARNING ..............................................................................................................................
4
Quick Start ............................................................................................................................
5
Troubleshooting ...................................................................................................................
8
Hang-Up
8
Dual-Port Errors
8
FAQ ........................................................................................................................................
9
Basics ....................................................................................................................................
11
Peripherals Window
11
Z80182 Emulation hints
11
Probe Configuration
12
Emulation Modes
17
SYStem.Clock
Clock generation
18
MCU operation modes
18
Dual-port access
19
General Settings and Restrictions ......................................................................................
20
SYStem.CPU SYStem.Access
Restrictions
20
SYStem.Line BusReq
Bus access control
20
SYStem.Option REFresh
Trace option
21
SYStem.Option
Wait options
21
SYStem.Option OMCR
OMCR register
21
Bus control for daisy chain
22
SYStem.Option IO8
Size of I/O space
22
SYStem.Option V33
Voltage sense
22
Exception Control ................................................................................................................
23
SYStem.Option DOut
Schematics
24
RESET
24
BUSREQ Line
25
Interrupt Control
26 ©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
1
eXception.Activate
Force exception
26
eXception.Enable
Enable exception
27
eXception.Trigger
Trigger on exception
28
Stimulate exception
29
Define vector
29
DMA area
30
EEPROM Management .........................................................................................................
31
Using the MMU for Banked Target Systems ......................................................................
32
eXception.Pulse eXception.Vector MAP.DMA
SYStem.BankFile
Select banking file
32
SYStem.Bank
Select bank mode
33
Internal Bank
33
External Bank
34
Extended
35
Parameters for Banking Program
36
Memory and IO Access Routines
37
Using the MMU for Z180
37
Memory Classes ................................................................................................................... State Analyzer ....................................................................................................................... Keywords for the Trigger Unit
40 42 42
General Keywords for the Trigger Unit
42
Z80/ED/FD/CB Keywords for the Trigger Unit
44
Z180 Keywords for the Trigger Unit
44
8085 Keywords for the Trigger Unit
44
Keywords for the Display
45
Port Analyzer ........................................................................................................................
46
Keywords for the Port Analyzer (Z180,84C15)
46
Keywords for the Port Analyzer (Z181)
47
Additional Trace Channels ..................................................................................................
49
Compilers ..............................................................................................................................
53
3rd Party Tool Integration ....................................................................................................
54
Realtime Operation Systems ...............................................................................................
55
Emulation Frequency ...........................................................................................................
56
Emulation Modules ..............................................................................................................
57
Module Overview
57
Order Information
57
Physical Dimensions ...........................................................................................................
59
Adapter ..................................................................................................................................
68
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
2
ICE Emulator for Z80 and Z180 Version 26-Oct-2016
P:000D75 E::w.d.l addr/line P:000D70 P:000D71 P:000D73
\\IARZ80\iarz80\sieve+97
code AF ED42 381E
........... MIX
label
mnemonic xor a sbc hl,bc jr c,0D93
A
comment
; c,?0176
{ 491 P:000D75 0E00 P:000D77 2111C2 P:000D7A DD5EFC
?0178:
ld ld ld
E::w.v.f /l /c j = 15 {
flags[ k ] = FALSE; c,0 ; c,0 hl,0C211 ; hl,flags e,(ix-4) ; e,(ix-4) E::w.r CY _ N N P/V _ Hc _ Zr _ Sig _ IFF _ Tsk
sieve(); -000 sieve() i = 0 primz = 3 k = 15 anzahl = 0
A F B C D E I
0 2 80 0F 0C4 0C 0
BC 800F DE 0C40C HL 3 IX 0C40F IY 2D8 SP 0C407 PC 0D75 AF' 0
SP >0000 -06 0003 -04 000F -02 0000 FP >C41F +02 0CDC +04 000F +06 0000
For general informations about the In-Circuit Debugger refer to the “ICE User’s Guide” (ice_user.pdf). All general commands are described in “IDE Reference Guide” (ide_ref.pdf) and “General Commands and Functions”.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
3
WARNING
NOTE:
Do not connect or remove probe from target while target power is ON. Power up: Switch on emulator first, then target Power down: Switch off target first, then emulator
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
4
WARNING
Quick Start Before debugging can be started, the emulator must be configured by software: Ready to run setup files for most standard compilers can be found on the software CD in the directory ../ Demo/Z80/Compiler. All setup files are designed to run the emulator stand alone without target hardware. The following description should make the initial setup (to run the emulator together with the target hardware) easier. It describes a typical setup with frequently used settings. It is recommended to use the programming language PRACTICE to create a batch file, which includes all necessary setup commands. PRACTICE files (*.cmm) can be created with the PRACTICE editor pedit (Command: PEDIT ) or with any other text editor. A basic setup file includes the following parts: 1.
Set cpu-type and -mode
2.
Set system options
3.
Select dualport mode (optional)
4.
Set mapper (optional)
5.
Select frequency (optional)
6.
Activate the emulator
7.
Load application file (optional)
8.
Set breakpoints (optional)
9.
Start application
10.
Stop application (optional)
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
5
Quick Start
Here a typical example, how to setup the system: 1.
Set cpu-type The command sys.cpu is used to select one derivative within a cpu-family and to set its operation mode. system.down system.cpu Z182
2.
; switch the system down ; select derivative Zilog Z182
Set system options The system window controls the CPU specific setup. Please check this window very carefully and set the appropriate options. Use the ? button in the main tool bar and click to the option check box (Command: HELP.PICK) to get online help in a pop up window. system.option IO8 on
3.
; inform the ICE that you are using only ; 8 bit addresses
Select dualport mode (optional) Dualport allows access to emulation RAM, while emulation is running. This is necessary to display variables, set breakpoints or display the flag listings while the emulation is running. System.Access selects how dualport access is done. system.access denied
4.
; dualport is disabled
Set mapper (optional) The mapper controls the memory access of the CPU. This means the use of internal or external memory, the protection of a memory bank etc. Address ranges must be defined by using memory classes. map.reset map.ram P:0x0--0x0ffff map.ram D:0--0x0FFFF
; ; ; ; ; ;
map.intern P:0x0--0x0ffff map.extern D:
reset mapper (all external) emulation RAM: 64KB (e.g. for program) emulation RAM: 64KB (e.g. for data) map program memory internal map data memory external
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
6
Quick Start
5.
Select frequency (optional) The CPU can be clocked by an internal (emulator) or external (target) clock source. If the internal clock is used, the clock is provides by the VCO of the emulator. The setting of the internal clock is done by the “vco” command. The current CPU frequency can be displayed in the counter window. vco.clock 20.
6.
; input clock to the EXTAL pin of the ; cpu is set to 20 MHz (only necessary ; if internal clock is used)
Activate the emulator When the emulator is activated a debug-monitor program is loaded into a hidden emulator memory. Afterwards, a bondout reset-signal is inactivated and the monitor program starts. This program allows access to user memory (data.dump, data.list) and cpu-registers, and gives control to start and stop the emulation. system.mode emulint
7.
; system works with internal target clock
Load application file (optional) Application can be loaded by various file formats. UBROF format is often used to load code and symbol information. For information about the load command for your compiler see Compiler. d.load.u iarz180.dbg
8.
;load application file
Set breakpoints (optional) There are several ways to set breakpoints (Command: Break.Set). Breakpoints can be displayed using the Break.List command. breakpoint.set main /program breakpoint.set flags /write
9.
; ; ; ;
set program break on function main set write break on variable ’flags’
Start application Application can be started with giving a break address. For example “go main” starts the application and stops at symbol main. go
; run application
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
7
Quick Start
Troubleshooting
Hang-Up If you are not able to stop the emulation, there may be some typically reasons: Clock Error
The clock lines between the target and the oscillator of the MCU are very short. Therefore normally no problems should occur when using an external crystal. The clock line for all Z80 type processors is very critical.
Analyzer Function
If you switch off the analyzer and the CPU has stopped operation, an invalid display occurs. Make a SYStem.Up command to see the true trace information.
Dual-Port Errors To realize the dual-port access (emulation memory) the BUSREQ-line of the CPU is used. Dual-port accesses are allowed only while no external request to the bus occurs and the CPU cycle is completed. If the emulation CPU is in RESET state of the CPU the system controller may always access the emulation memory. Dual-port errors may occur by the following conditions: 1.
The length of the CPU cycle is extended by wait cycles, so that the request timeout signal is generated.
2.
External DMA requests (single cycles) are too long.
To solve problems with dualport error first increase the SYStem.TimeReq value. Be sure that the SYStem.TimeOut value is bigger than the access time limit. If it is not possible to solve the problem by changing the values, you must switch to DENIED mode. In this mode no access to memory is possible while running realtime emulation. The internal dual-port access can increase the reaction time for external DMA requests. The performance reduction by the dual-port access is typically 1% with some data windows (dualported) on the screen and may be at max. 5% when using dynamic emulation memory.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
8
Troubleshooting
FAQ
Debugging via VPN Ref: 0307
The debugger is accessed via Internet/VPN and the performance is very slow. What can be done to improve debug performance? The main cause for bad debug performance via Internet or VPN are low data throughput and high latency. The ways to improve performance by the debugger are limited: in practice scripts, use "SCREEN.OFF" at the beginning of the script and "SCREEN.ON" at the end. "SCREEN.OFF" will turn off screen updates. Please note that if your program stops (e.g. on error) without executing "SCREEN.OFF", some windows will not be updated. "SYStem.POLLING SLOW" will set a lower frequency for target state checks (e.g. power, reset, jtag state). It will take longer for the debugger to recognize that the core stopped on a breakpoint. "SETUP.URATE 1.s" will set the default update frequency of Data.List/ Data.dump/Variable windows to 1 second (the slowest possible setting). prevent unneeded memory accesses using "MAP.UPDATEONCE [address-range]" for RAM and "MAP.CONST [address--range]" for ROM/ FLASH. Address ranged with "MAP.UPDATEONCE" will read the specified address range only once after the core stopped at a breakpoint or manual break. "MAP.CONST" will read the specified address range only once per SYStem.Mode command (e.g. SYStem.Up).
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
9
FAQ
Target Power Supply Switch Ref: 0103
Is there a simple way to control target power supply via the ICE to prevent problems after the ICE has been powered off? Follow the sequence below. If you own an output probe COUT8, connect it to the STROBE output connector. Type PULSE2. and press F1. You will get the pin out of the output probe COUT8. Pin 13 (OUT6) delivers +5 V after the emulator has finished its initialization and 0 V if the emulator is powered off. This can be used to drive a relay via a transistor to switch the target power on and off automatically if the Pulse Generator is not used for other purposes. The schematic of the switching unit can be found in the file TARGETC.CMM. Additionally Pin 13 (OUT6) can be controlled by ICE commands.
Target power supply off. "PULSE2.P +" Target power supply on. "PULSE2.P -" The following Practice command file creates 3 buttons in the Toolbox for:
Target power on Target power off Target power off and QUIT. Adding that file to T32.cmm loads the buttons automatically after startup. _wwwlinkfaq/targetc.cmm Wrong Location after Break Ref: 0030
Z80C15 Z84C11/C13/ C15 Emulation Ref: 0047
Why is the location after break wrong? Most emulators use some bytes of user stack for the break system. Therefore it is necessary to have valid stack, if single step or breakpoints are used. How must a Z84C15 target be prepared for the emulation, using a Z80 emulator? To run the emulation mode on the target CPU, the EV pin must be tied to "high". The TRACE32 Z80 emulation probes of the Z84C11/C13/15 emulators, drive the EV pin with a 100 Ohm resistor. On the target, it is recommended to connect the EV pin via a 1 kOhm resistor to ground.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
10
FAQ
Basics The ICE-80 emulation head supports all Z80 derivatives from Zilog, Renesas and Toshiba and further the 8085 from Intel or NEC. The adaption to different probes is done by changing modules. Modules support both DIL and PLCC versions, if available. The maximum frequency of the base module is 20 MHz. The modules are delivered with the fastest available chip. The emulation probes support all modes of the CPUs, some modes without dual-port access capability. The 8085, Z80 and TMPZ84Cxx probes support 256 banks with 64K each. The Z180 like probes may run with 16 banks of 1 MByte each. An additional slot in the base module offers upgrading with the Port-Analyzer to get timing and state trace features for all MCU I/O ports.
Peripherals Window After the internal IO base address has changed (Z180,Z181,Z182), the Peripherals Windows must be reprogrammed. Use the PER.RP command, otherwise the windows has a wrong content.
Z80182 Emulation hints IMPORTANT: For emulation without a target or for emulation of a target but without a CPU on it, put a Z80182 CPU into the socket at the Z182 adapter. For emulation of a target with a CPU on it, remove the Z80182 CPU from the Z182 adapter. In order to emulate a Z80182 target, the CPU on the target (if there is one) must stay in the special mode (Mode1). This mode is selected if pin EV1 is connected to VCC, and pin EV2 is connected to GND. It cannot be accomplished through any emulator instruction. The user must cater for the correct signal levels by himself. For a normal operation without an emulator (Mode0), it is recommended to connect both pins to the appropriate level via 2 high-resistive resistors. The Z80182 probe is able to drive these pins via 100 Ohm resistors to Mode1. Bear in mind, that the Z80182 is emulated with a Z180 CPU. The internal peripherals should only be moved to the IO base addresses xx00,xx40 or xx80. The additional internal peripherals (start at IO:xxD8) can only be accessed if the emulator is in mode Emulation External or Emulation Internal.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
11
Basics
Probe Configuration Z80 : = Jumper open
I = Jumper closed
Z80-DIL Z84C00-DIL
Z84C00 20MHz
I : I :
.................
Z80-PLCC Z84C00-PLCC
Z84C00 20MHz
: I I :
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
12
Basics
Z84C01
..
I : Z84C01 10MHz : I
Z84C50 with XTAL
.. Z84C50
I : Z84C01 10MHz : I
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
13
Basics
Z84C50 without XTAL (CLK in) Only external Clock
.. Z84C50
: I Z84C01 10MHz I :
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
14
Basics
HD64180
HD64180
I
HD64180
Z180
:
Z180MPU 10..15MHz
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
15
Basics
84C11/13/15
Z84C11/15
Z84C00 20MHz 1 : I I : II:II
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
16
Basics
Emulation Modes E::w.sys system Down Up RESet cpu-type Z180
BankMode OFF INTern EXTern Extended
Mode RESet Analyzer Monitor ResetDown ResetUp NoProbe AloneInt AloneExt EmulInt EmulExt
Clock VCO Low Mid High
TimeReq 1.000ms TimeOut 50.000us Line BusReq
Access Nodelay REFresh Request Denied
CPU Mode0 Mode1 Mode2 Mode3 EXTern
Option REFresh RamWait FAST DOut OMCR FF
BankFile G:\LOT\BNK80.BNK
The emulation head can stay in 6 modes. The modes are selected by the SYStem.Up or the SYStem.Mode command.
Format:
SYStem.Mode
:
ResetDown ResetUp AloneInt AloneExt EmulInt EmulExt
Reset Down
Target is down, all drivers are in tristate mode.
Reset Up
Target has power, drivers are logically in inactive state, but not tristate.
Alone Internal
Probe is running with internal clock, driver inactive, the dual-chip target CPU is not activated.
Alone External
Probe is running with external clock, driver inactive, the dual.chip target CPU is not activated.
Emulation Internal
Probe is running with internal clock, strobes to target are generated.
Emulation External
Probe is running with external clock, strobes to target are activated.
In active mode, the power of the target is sensed and by switching down the target the emulator changes to RESET mode. The probe is not supplied by the target. When running without target, the target voltage is simulated by an internal pull-up resistor. ©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
17
Basics
SYStem.Clock
Clock generation
Format:
SYStem.Clock
:
VCO High Mid Low
VCO
Variable frequency 1 … 35 MHz.
Low, Mid, High
2.5, 5.0 or 10.0 MHz.
SYStem.CPU
MCU operation modes
Format:
SYStem.CPU
:
M0…M3, EXTERN
This command selects the operation mode of the CPU (only Z84C01, HD647180). The command may only be executed when the system is down and must be set to the correct operation mode. External mode pins from the target system are not sensed.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
18
Basics
SYStem.Access
Dual-port access
Format:
SYStem.Access
:
Nodelay REFresh Request Denied
Nodelay
The dual-port access is made between two bus cycles. The max. frequency is 8 MHz on Z80 and Z180 probes.
REFresh
The dual-port access is made on CPU refresh cycles. On Z180 probes the refresh function must be switched on. Z80 probes run till 10 MHz and Z180 probes with max. speed if 2 waits for the refresh is specified. 8085 probes do not support this operation mode.
Request
This operation allows operation up to the max. speed of the CPU, it runs only on processors with open BUSREQ/BUSACK lines (Not HD647180, HD648180). The CPU speed is slowed down about 1% by dual-port accesses or 5% by refreshing DRAMs as emulation memory.
Denied
This mode is available for all types of CPUs. No dual-port access is possible on realtime emulation.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
19
Basics
General Settings and Restrictions
Restrictions NMI Routines
NMI routines use the IFF1 and IFF2 register. On breakpoint execution there is no distinction between IFF1 and IFF2 register. So the next RETN instruction may set the interrupt flag incorrectly. Running with realtime NMI routines are executed correctly.
Power Down Modes
All power down modes which stop the clock generator make fatal emulator errors. On emulation change to an other operation mode.
HALT
Realtime emulation may not be stopped if the CPU is in the HALT state. The command Break.Halt activates the breakpoint logic and forces a NMI signal to recover from HALT state.
Trace Internal Registers
Write cycles to internal registers are always traced correctly. On read cycles data may be invalid on Z180 and HD64180 probes. The Z181 CPU and the HD647180 enable trace on internal read cycles. On Z181 the ROM emulator mode bit (0ED.1) must be set.
8 Bit I/O
When 8-Bit I/O addressing is active (System.Option IO8) it is not possible to map attributes (e.g. intern/extern, wait states) to single I/ O locations.
SYStem.Line BusReq
Format:
Bus access control
SYStem.Line BusReq [ON | OFF] (Z80) SYStem.Line HOLD [ON | OFF] (8085)
This option allows DMA access without running realtime emulation. External DMA circuits are not stopped on breakpoints.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
20
General Settings and Restrictions
SYStem.Option REFresh
Format:
Trace option
SYStem.Option REFresh [ON | OFF]
Normally refresh cycles are not traced by the analyzer. On high speed operation with Z80 probes (f > 12.5 MHz) no trace on refresh cycles is allowed as the cycle time of the analyzer must be 150 ns at minimum (ECC8). If activated, the refresh cycles can cause the data selectors to be triggered by refresh cycles, even if the address is not hit by the cycle. To prevent occasionally triggers, address selectors of the trigger unit should be combined with the condition 'N:REFRESH'.
SYStem.Option
Wait options
Format:
SYStem.Option
:
FAST [ON | OFF] RamWait [ON | OFF] Polarity [ON | OFF]
FAST
Must be set to ON with emulation frequency higher than 12 MHz (Z80, Z180).
RamWait
This signal generates 1 wait state for all bus cycles that sense the wait input line. As the generation of the wait signal is sometimes very critical in high-speed Z80 systems, this option may help to solve problems with external wait state generators.
PullWait
An additional pull-up resistor on the WAIT input line is switched on. Normally needed in standalone mode (Z84C50, Z84C11, Z84C15).
SYStem.Option OMCR
OMCR register
Format:
SYStem.Option OMCR
:
0..0FF
The Z180 and Z181 probes must be switched to different internal modes resulting from different bus signals and timings if the OMCR register is changed. The value in this field must be the same value as set by the target software. The CPU is automatically programmed to this pattern on activating the emulation system (SYStem.Up). ©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
21
General Settings and Restrictions
SYStem.Option DOut
Format:
Bus control for daisy chain
SYStem.Option DOut [ON | OFF]
One big problem in Z80 systems is handling the RETI instruction. This command must be read by the peripherals together with the M1 signal to clear the interrupt daisy chain. No problem occurs if the program is running from the target memory as the data flow is the same like in the system running without emulator. If the program is mapped to internal the peripherals may see other code than the emulation CPU. In small target systems (no data buffer between CPU and peripherals) the internal code may be send to the data system if DOUT is on. The memory is accessed internal and no memory on the target should block the bus (remove EPROMs). If a data buffer between CPU and peripherals exists in the target, there are also some possible solutions: 1.
Replace the EPROM by a RAM and load the code to the target.
2.
Program the RETI instruction to a fixed address in the EPROM on the target and exit every interrupt routine at this location.
3.
Use an EPROM simulator to load your program.
4.
Some systems use special boot modes to change the data bus direction.
SYStem.Option IO8
Format:
Size of I/O space
SYStem.Option IO8 [ON | OFF]
This option must be set when only 8-bit I/O addresses are used. The option must be set before any memory is mapped or breakpoints are set. Memory attributes, like wait states or protection, are not handled for 8-bit I/ O address.
SYStem.Option V33
Format:
Voltage sense
SYStemOption V33 [ON | OFF]
The threshold level for the power-down sense is reduced to 2.8 V for operation with 3.3 V targets.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
22
General Settings and Restrictions
Exception Control
E::w.x exception OFF ON RESet
Activate OFF RESet BusReq
Enable OFF ON RESet BusReq NMI Int0 Int1 Int2
Trigger OFF ON RESet BusReq NMI DREQ1 PULS
Puls OFF RESet Int0 Int1 Int2 NMI BusReq
Puls Single Width 1.000us PERiod 0.000 Vector 00 (000.)
The exception control system varies between different processors. The window shown here is for the HD64180 processor.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
23
Exception Control
Schematics RESET RESET (Z80, Z180, Z181) VCC +1
TRACE
22k RESETTarget +1 -Enable
-Puls -Activate
&1
RESET CPU
1mA ResetOut RESET (8085) VCC +1
TRACE
22k RESETINTarget +1 -Enable
-Puls -Activate
&1
RESETIN- CPU
RESOUT CPU +1
RESOUT Target
ResetOut
Format:
eXception.Enable RESet [ON | OFF]
Format:
eXception.Activate RESet [ON | OFF]
Format:
SYStem.M1Out
Format:
SYStem.RESetOut
M1Out
Z80 PIO may be reset by sending a M1 signal without MRQ/IORQ signals.
RESet
Activates RESET line. Enables RESET line.
RESetOUT
Forces RESET to target. ©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
24
Exception Control
BUSREQ Line VCC +1
TRACE
22k BUSREQTarget +1 -Enable M -Line U RUN----> X
-Puls -Activate
Format:
eXception.Enable BusReq [ON | OFF]
Format:
eXception.Activate BusReq [ON | OFF]
Format:
SYStem.Line BusReq [ON | OFF]
Format:
eXception.Enable HOLD [ON | OFF]
Format:
eXception.Activate HOLD [ON | OFF]
Format:
SYStem.Line HOLD [ON | OFF]
BusReq, HOLD
Enables BR line from target. Activates BR, HOLD line.
&1
BUSREQ CPU
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
25
Exception Control
Interrupt Control Interrupts may be enabled separately for every interrupt input. INT0,INT1,INT2,NMI input
VCC +1
TRACE
R1 INTxTarget +1 -Enable
&1
INTx CPU
-Puls
R1 = 22K
eXception.Activate
Force exception
Format:
eXception.Activate HOLD [ON | OFF]
Format:
eXception.Activate RESET [ON | OFF]
Format:
eXception.Activate OFF
HOLD
Activates the HOLD line.
RESET
Activates the $A01$ line.
OFF
No activation of any exception line.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
26
Exception Control
eXception.Enable
Enable exception
Format:
Exception.Enable NMI [ON | OFF]
Format:
Exception.Enable TRAP [ON | OFF]
Format:
Exception.Enable Int0 [ON | OFF]
Format:
Exception.Enable Int1 [ON | OFF]
Format:
Exception.Enable Int2 [ON | OFF]
Format:
Exception.Enable RST55 [ON | OFF]
Format:
Exception.Enable RST65 [ON | OFF]
Format:
Exception.Enable RST75 [ON | OFF]
NMI, TRAP, INTR
Enables NMI from target.
Int0, Int1, Int2
Enables interrupt line from target.
RST55, RST65, RST75
Enables trap line.
Int0, Int1, Int2, INTR, NMI, RST55, RST65
Forces pulse generator to interrupt.
The NMI line is not traced directly. A special circuit samples only the falling edge and makes it visible in the next cycles. This allows correct trigger only to edges and not to static levels. The pulse width of the exception generator defines the length of the interrupt request. As the NMI signal is edge sensitive, only one interrupt is executed. On INT0 a pulse executes only one interrupt, but if there is no bus cycle within the pulse active time, no interrupt is generated. Exception vectors are all even values from 0 to 254 (0 to 7 for the 8085). On interrupt stimulation no INTA cycles are made to the target. Therefore stimulated interrupts may run in parallel to interrupts generated by peripherals on the target system. ©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
27
Exception Control
eXception.Trigger
Trigger on exception
Format:
eXception.Trigger BR [ON | OFF]
Format:
eXception.Trigger DREQ1 [ON | OFF]
Format:
eXception.Trigger HOLD [ON | OFF]
Format:
eXception.Trigger NMI [ON | OFF]
Format:
eXception.Trigger Pulse [ON | OFF]
Format:
eXception.Trigger RES
Format:
eXception.Trigger TRAP [ON | OFF]
Format:
eXception.Trigger OFF
Format:
eXception.Trigger ON
BR
Trigger on BR line.
DREQ1
Trigger on DREQ1 line.
HOLD
Trigger on HOLD line.
NMI
Trigger on NMI line.
Pulse
Trigger on Pulse line.
RES
Trigger on RES line.
TRAP
Trigger on TRAP line.
ON
Trigger on all exception lines.
OFF
No trigger on any exception lines.
[ON | OFF]
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
28
Exception Control
eXception.Pulse
Stimulate exception
Format:
eXception.Pulse BR
Format:
eXception.Pulse HOLD
Format:
eXception.Pulse INTR
Format:
eXception.Pulse NMI
Format:
eXception.Pulse RES
Format:
eXception.Pulse OFF
BR
Stimulate BR line.
HOLD
Stimulate HOLD line.
INTR
Stimulate INTR line.
NMI
Stimulate NMI line.
RES
Stimulate RES line.
OFF
No stimulation on any exception line.
eXception.Vector
Define vector
Format:
Exception.Vector 0..0FE (Z80)
Vector
Defines vector for interrupt simulation.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
29
Exception Control
MAP.DMA
DMA area
Format:
MAP.DMA
Format:
MAP.NODMA
If using the DMA and switching of the M1 signal the emulator cannot distinguish between opfetch cycles and dma read cycles. This may result in fatal errors executing breakpoints. As usually the DMA doesn't access the program area the data area can be marked for the emulator by the mapper. Only DMA memory read areas should be mapped.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
30
Exception Control
EEPROM Management The EEPROM of the HD648180 may be initialized with standard set or load commands using the storage class EEPROM: d.s EEPROM:0B600 2 3 4 5
; setting bytes
d.s EEPROM:0B600++0x1ff 0x0ff
; clear EEPROM
d.load.b epromdata EEPROM:B600
; loading data
This function is only available on probes with internal EEPROM.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
31
EEPROM Management
Using the MMU for Banked Target Systems Banking as described in this chapter refers to address extension of Z80/8085 processors, not the internal MMU of the Z180 family. In banked systems the upper address lines are either supplied internally or by the external bank probe. 8 additional lines offer 256 different memory banks. Accessing the different pages is done by extending all memory and pc addresses to 24 bit. The address bits A16 to A23 select the memory bank. Every command which makes a memory access first calls a special bank driver subroutine to select the temporary memory bank. On realtime emulation the bank number is traced on the upper 8 bits of the address bus. The breakpoints function stores the bank address back to the MSB of the program counter.
SYStem.BankFile
Format:
Select banking file
SYStem.BankFile
This command loads the bank driver. The bank driver is a special subroutine to select the actual bank. Loading a special bank driver gives a maximum of flexibility to the user. A bank address delivered by the emulator may be used to set microcontroller ports or external MMUs in the target system. The bank file consists of a code number defining the bank operation mode and a code area which consists of a subroutine to set the correct bank state. Writes to internal CPU ports may be executed directly, while ports in target systems must be accessed by a special system call (see end of this chapter). The internal bank address is placed in accu A when calling the subroutine. One return the function must clear A when working on a Z180 with external banking. The write function to the target system needs the address in BC and the data in accu A. The BNK register holds the physical bank number. The PP (Program Pointer) register hold the logical 24-bit PC address. The translation between logical bank and physical bank (also for the common areas and I/O space) is done by the MMU command.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
32
Using the MMU for Banked Target Systems
SYStem.Bank
Select bank mode
Format:
SYStem.Bank
:
OFF INTernal EXTernal Extended
Internal Bank Internal bank to support paged EPROMs. The internal bank register is set by writing to an address range selected by the command MAP.Bank. ; This example uses a common program area on 0--3fffh ; a banked area from 4000--7fff with 4 banks map.res map.mirror p:0x0--0x03fff p:0x10000 map.mirror p:0x0--0x03fff p:0x20000 map.mirror p:0x0--0x03fff p:0x30000 map.mirror io:0x0--0xffff io:0x10000 map.mirror io:0x0--0xffff io:0x20000 map.mirror io:0x0--0xffff io:0x30000 map.bank 0x4000--0x7fff mmu.on system.bankfile banksel.bnk system.up
; reset mapper ; mirror for common area
; ; ; ;
set area of banked eprom activate translation for addresses load bank file
Bank drivers are special subroutines (max. length 256 bytes) to set the bank or an external MMU: org 17FFH db
1
bank:
; select internal mode ; accu a is bank address
org 1800h
; destination area in system memory
ld e,0 ld hl,1800h call 100h
; ; ; ; ; ; ;
ret
physical bank 0 set hl to banked area subroutine to write byte to target system setting the page register in the EPROM hl is address, A is date return
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
33
Using the MMU for Banked Target Systems
External Bank External banked systems use a register or output pins of the CPU to generate the upper memory addresses. These lines must be feedback to the emulator with the bank probe. Unused inputs of the bank probe must be grounded (or jumpered to ground pin). ; This example uses a common program area on 0--3fffh ; a banked area from 4000--7fff with 4 banks map.res map.mirror p:0x0--0x3fff p:0x10000 map.mirror p:0x0--0x3fff p:0x20000 map.mirror p:0x0--0x3fff p:0x30000 map.mirror io:0x0--0xffff io:0x10000 map.mirror io:0x0--0xffff io:0x20000 map.mirror io:0x0--0xffff io:0x30000 mmu.on system.bankfile banksel.bnk system.up
; reset mapper ; mirror for common area
; activate translation for ; addresses ; load bank file
This example selects the bank by internal port 45H bit 6 and 7: org 17FFH db
2
; select external mode
bank:
; accu a is bank address org 1800h push ld in and ld pop rrca rrca or out ret
; destination area in system memory
af bc,45h a,(c) 03fh e,a af
e (c),a
Now the bank select is done by an external register selected at A0h: org 17FFH db
2
;select external mode
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
34
Using the MMU for Banked Target Systems
bank:
; accu a is bank address org 1800h
; destination area in system memory
ld bc,0a0h call 110H
; ; ; ; ; ;
xor a ret
set BC to banked area subroutine to write byte to emulation ram setting bank register BC is address, A is date clear BANK (only required for Z180) return
Extended Extended is used to extend the address space of Z180 CPUs. Up to 16 banks of 1MByte can be used. The bank select routines gets A16..A23 in A and returns the remaining A16..A19 for the CPU address in A. The upper 4 bits are used to specify the 16 banks. org 17FFH db
4
bank:
; select extended mode ; accu a is bank address * 16
org 1800h
; destination area in system memory
push af sra a sra a sra a sra a ld bc,0a0h call 110H pop af and 0fh ret
; ; ; ; ; ;
shift right set BC to banked area subroutine to write byte to emulation ram setting bank register A16..A19 will be set by the CPU return
The next examples shows the map and load commands with MMU translation for common ares: ; This example uses a common program area on 0--7fffh ; and a banked area from 8000--ffff with 2 banks ; I/O is not banked and uses 8-bit addressing system.option io8 on system.bankfile banksel.bnk system.mode ai
;load bank file (uses physical ; banks)
map.res map.mirror p:0x0--0x7fff p:0x10000 map.mirror io:0x0--0x7fff io:0x10000
; reset mapper ; mirror for common area ; mirror for I/O accesses
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
35
Using the MMU for Banked Target Systems
map.ram p:0--0ffff map.ram p:18000--1ffff map.intern
; map memory in banks and common
symbol.reset mmu.reset mmu.create p:00000--07fff mmu.create p:08000--0ffff mmu.create p:00000--07fff mmu.create p:18000--1ffff mmu.on
p:00000--07fff p:08000--0ffff p:10000--17fff p:18000--1ffff
d.load.u applic.dbg /nc
; load file from ICCZ80 (IAR)
Parameters for Banking Program The following parameters are passed to the banking program: D
Reason for call 0 = Init 1 = Read Memory 2 = Write Memory 3 = Go 4 = Break
A
Bank Number
HL
Address (PC for Go and Break)
IX
Pointer to registers (only Go and Break) IX+28 = Bank
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
36
Using the MMU for Banked Target Systems
Memory and IO Access Routines The following routines are available in the emulation control monitor to access external memory or i/o: Addr
Function
Address
Data
Result
100H
MemWrite
E-HL
A
110H
IOWrite
BC
A
120H
MemRead
E-HL
-
A
130H
IORead
BC
-
A
Using the MMU for Z180 This command and the commands MMU support the built-in MMU of the Z180 processors. The analyzer and all memory systems and breakpoints are based on the physical address. The display in the analyzer can be both physical or logical addresses. A logical address can have two formats: smaller than 64K or larger. Smaller addresses are assumed to be an logical address as seen by the CPU in the current
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
37
Using the MMU for Banked Target Systems
MMU configuration. If an address is larger than 64K, the address bits A16 to A23 define the bank base address used for the BBR or CBR register. Logical above 64K addresses should only be used, if the MMU registers were already setup. The following schematic shows these relations for some examples: preset: CBAR=84, BBR=10, CBR=20 logical address:
5
0
CBR/BBR = 50 -->
logical address:
0
0
0
0
1
physical address:
0
(Hex)
1567
4
(Hex)
MMU Bank Area physical address: 04567 +BBR 10--=14567
d e f 16 bit current-mmu logical CPU address --> -->
(Hex)
physical address: 54567
5 6 7 16 bit current-mmu logical CPU address --> -->
logical address:
5 6 7 16 bit logical CPU address
5 6 7 16 bit current-mmu logical CPU address -->
logical address:
4
0
c
(Hex)
COMMON1 Area physical address: 0cdef +CBR +20--=2cdef
To activate the correct address translation for breakpoints, the MMU command must be activated. The following example loads a banked application: mmu.off map.ram 0x0--0x0fffff map.i mmu.on d.load.u iarz180.dbg
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
38
Using the MMU for Banked Target Systems
The next example loads a banked application in two logical units: ;CBAR=84, CBR=0, BBR=10 or 20 mmu.reset symbol.reset map.ram 0x0--0x0fffff map.i mmu.create 0x104000--0x107fff mmu.create 0x204000--0x207fff mmu.on d.load.b bank1.cod 0x104000 /nosymbol d.load.b bank2.cod 0x204000 /nosymbol d.load.b common.cod 0x0 /nosymbol d.load.sym bank1.sym /noclear symbol.reloc p:0x100000 0x4000--0x4fff d.load.sym bank2.sym /noclear symbol.reloc p:0x200000 0x4000--0x4fff d.load.sym common.sym /noclear
The MMU translation table is used for translating physical addresses (analyzer, trigger) to logical addresses and logical addresses to physical addresses. The logical to physical translation is done by reading the MMU registers of the CPU and calculating the physical address.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
39
Using the MMU for Banked Target Systems
Memory Classes
Access Class
Description
C: D: P: AD: AP: IO:
Specify the same address-area (CPU-access) on Z80 family
Absolute (physical) addressing for 64180 IO access
E: ED: EP: EAD: EAP: EIO:
Emulation memory access
EEPROM:
EEPROM write (HD648180)
Absolute (physical) addressed emulation memory
C:, P: and D: This storage classes operate on the same physically memory. They are only used to be compatible with other emulation probes. CPU internal registers and memory may not be accessed dual-ported, by mapping memory to the same address range data written to the internal memory are also present in the emulation memory. IO: The IO address is normally 16 bit. The commands Data.Out and Data.In uses this storage classes on default. d.i 0x34 3
; read 3 bytes from address 34H
d.o 0x34 55 66
; sends 2 bytes to address 34H
EEPROM: This storage class is used to program the internal EEPROM. On read cycles there is no difference to the access mode with C: or D:. On write cycles the monitor program executes an EEPROM write protocol. d.s EEPROM:0E00 " Test " d.load.b test.bin EEPROM:0e00
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
40
Memory Classes
A:, AD:, AP: The absolute access storage classes can be used if access to a physical memory location is required. The storage class is only useful on Z180/HD64180 devices.
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
41
Memory Classes
State Analyzer
Keywords for the Trigger Unit General Keywords for the Trigger Unit Input Event
Meaning
Analyzer Hardware ECC8
HAC
HA120
SA120
DATAREAD, MEMRD
Data read access (MEMRDD or MEMRDN)
X
X
X
X
DATAWRITE, MEMWR
Data write access (MEMWRD or MEMWRN)
X
X
X
X
DMA
DMA cycle (IORDD or IOWRD or MEMRDD or MEMWRD)
X
X
X
X
FETCH
Program fetch cycle (SFETCH or OPFETCH)
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
HALT IN, IORD
IORDD or IORDN
INTACK IO
IORD or IOWR
X
X
X
X
IOE, IORQ
IO or INTACK
X
X
X
X
IORD, IN
IORDD or IORDN
X
X
X
X
IORDD
I/O read by DMA
X
X
X
X
IORDN
I/O read by CPU
X
X
X
X
IORQ, IOE
IO or INTACK
X
X
X
X
IOWR, OUT
IOWRD + IOWRN
X
X
X
X
IOWRD
I/O write by DMA
X
X
X
X
IOWRN
I/O write by CPU
X
X
X
X
LIR, M1
FETCH or INTACK
X
X
X
X
M1, LIR
FETCH or INTACK
X
X
X
X
ME, MREQ
OPMEM or REF
X
X
X
X
MEM
MEMRD or MEMWR
X
X
X
X
MEMIO
MEM or IO
X
X
X
X
MEMRD
Data access read (MEMRDD or MEMRDN)
X
X
X
X
MEMRDD
memory read by DMA
X
X
X
X
MEMRDN
memory read by CPU
X
X
X
X
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
42
State Analyzer
MEMWR
Data access write (MEMWRD or MEMWRN)
X
X
X
X
MEMWRD
memory write by DMA
X
X
X
X
MEMWRN
memory write by CPU
X
X
X
X
MREQ, ME
OPMEM or REF
X
X
X
X
OPFetch
M1 cycle
X
X
X
X
OPMEM
FETCH or MEM
X
X
X
X
OPMEMIO
IO or OPMEM
X
X
X
X
OUT, IOWR
IOWRD or IOWRN
X
X
X
X
PORT
Input line from port analyzer
X
X
Read
FETCH or IORD or MEMRD
X
X
X
X
REF
REFESH cycle
X
X
X
X
Wait0..Wait6
Waitstates 0..6
X
X
WaitX
Waitstates greater 6
X
X
Write
IOWR or MEMWR
X
X
X
X
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
43
State Analyzer
Z80/ED/FD/CB Keywords for the Trigger Unit Input Event
Meaning
Analyzer ECC8
SFETCH
hardware HAC
second M1 after switch
HA120
SA120
X
X
Z180 Keywords for the Trigger Unit Input Event
Meaning
Analyzer ECC8
hardware HAC
HA120
SA120
DREQ1
X
X
INT, INT0
X
X
INT0..INT2
X
X
NMI
X
X
TEND1
X
X
TOUT
X
X
8085 Keywords for the Trigger Unit Input Event
Meaning
Analyzer ECC8
hardware HAC
HA120
SA120
INTR
X
X
RST55
X
X
RST65
X
X
RST75
X
X
TRAP
NMI signal edge
X
X
TRAPIN
NMI signal
X
X
For not CPU-specific keywords, see non-declarable input variables in “ICE/FIRE Analyzer Trigger Unit Programming Guide” (analyzer_prog.pdf).
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
44
State Analyzer
Keywords for the Display NMI
NMI interrupt (Z80,Z180)
Int0
INT interrupt (Z80,Z180)
Int1
Interrupts (Z180)
Int2 TRAP
Interrupt lines (8085)
INTR RST55,RST65,RST75 TRAPIN
DREQ1
DMA-lines Z180
TEND1 TOUT
timer (Z180)
RES ALE
ALE signal (8085)
BR, BA
BUS interface lines (Z80,Z180)
HOLD, HLDA
BUS interface lines (8085)
SOD, SID
(8085)
CKA0
(Z180)
CKA1 CKS EC
'E' Clock (Z180)
SLEEP
sleep occurred before this cycle (Z180)
TXS, RXS
Serial interface lines (Z180)
TXA0, RXA0 RTS0, CTS0 TXA1, RXA1
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
45
State Analyzer
Port Analyzer
Keywords for the Port Analyzer (Z180,84C15) A0 .. A7
Port A
B0 .. B7
Port B
C0 .. C7
Port C
D0 .. D7
Port D
E0 .. E7
Port E
NMI
NMI interrupt
Int0
INT interrupt
Int1
Interrupts
Int2 DREQ1
DMA-lines
TEND1 TOUT
timer
RES BR, BA
BUS interface lines
CKA0 CKA1 CKS EC
'E' Clock
SLEEP
sleep line
TXS, RXS
Serial interface lines
TXA0, RXA0 RTS0, CTS0 TXA1, RXA1
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
46
Port Analyzer
Keywords for the Port Analyzer (Z181) PIA10 .. PIA17
Port 1
PIA20 .. PIA27
Port 2
D6 .. D7
Port D
E0 .. E7
Port E
W
W line
SYNC
SYNC line
RXD, TXD
Communication controller
TRXC, RTXC DTR, RTS CTS, DCD CSRAM, CSROM
Chip selects
IEI, IEO
Interrupt daisy chain
NMI
NMI interrupt
Int0
INT interrupt
Int1
Interrupts
Int2 DREQ1
DMA-lines
TEND1 TOUT
timer
RES ALE
ALE signal (8085)
BR, BA
BUS interface lines
CKA0 CKA1 CKS EC
'E' Clock
SLEEP
sleep line
TXS, RXS
Serial interface lines
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
47
Port Analyzer
TXA0, RXA0 RTS0, CTS0 TXA1, RXA1
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
48
Port Analyzer
Additional Trace Channels Not used trace channels on Port-Analyzer are connected to pins placed on the emulation modul. Module Z80/Z84C00/Z84C01/Z84C50 Module Z180
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
49
Additional Trace Channels
Module 8085 39 37 35 33 31 29 27 25 23 21 19 17 15 13 11 9 40 38 36 34 32 30 28 26 24 22 20 18 16 14 12 10 40 39 38 37 36 35 34 33
Port.A0 Port.A1 Port.A2 Port.A3 Port.A4 Port.A5 Port.A6 Port.A7
32 31 30 29 28 27 26 25
Port.B0 Port.B1 Port.B2 Port.B3 Port.B4 Port.B5 Port.B6 Port.B7
24 23 22 21 20 19 18 17
Port.C0 Port.C1 Port.C2 Port.C3 Port.C4 Port.C5 Port.C6 Port.C7
16 15 14 13 12 11 10 9
Port.D0 Port.D1 Port.D2 Port.D3 Port.D4 Port.D5 Port.D6 Port.D7
8 7 6 5 4 3 2 1
Port.E0 Port.E1 Port.E2 Port.E3 Port.E4 Port.E5 Port.E6 Port.E7
7 8
5 6
3 4
1 2
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
50
Additional Trace Channels
Module Z181 Module Z84C11 Module Z84C13 Module Z84C15 9 10
1 2 3 4 5 6 7 8 9 10
7 8
5 6
3 4
1 2
Port.A0 Port.A1 Port.A2 Port.A3 Port.A4 Port.A5 Port.A6 Port.A7 GND GND
Module Z80182 15 13 11 9 16 14 12 10
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
7 8
5 6
3 4
1 2
Port.A00 Port.A01 Port.A02 Port.A03 Port.A04 Port.A05 Port.A06 Port.A07 GND GND A18 GND A18TO +5V GND GND
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
51
Additional Trace Channels
Module HD648180 15 13 11 9 16 14 12 10
7 8
1 2 3 4 5 6 7 8
Port.A0 Port.A1 Port.A2 Port.A3 Port.A4 Port.A5 Port.A6 Port.A7
9 10 11 12 13 14 15 16
Port.B0 Port.B1 Port.B2 Port.B3 Port.B4 Port.B5 Port.B6 Port.B7
5 6
3 4
1 2
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
52
Additional Trace Channels
Compilers
Language
Compiler
Company
Option
Comment
ASM
HP-64000-ASM
HP
HP
ASM
MI-C
ROSE
SYM
Source level debugging Source level debugging
ASM C
AS ICCZ80
SDSI IAR Systems AB
SDS UBROF
C
MCCZ80
IEEE
C
HT-Z80
C C C PLM
MI-C UNIWARE-C CC ISIS-PL/M
Mentor Graphics Corporation Microchip Technology Inc. ROSE SDSI Softools Inc. Intel Corporation
Z180 and banking sup. no banking support
HITECH SYM/LOC SDS UBROF SYM/LOC
No type information
no type/local info
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
53
Compilers
3rd Party Tool Integration
CPU
Tool
Company
ALL ALL ALL
ADENEO X-TOOLS / X32 CODEWRIGHT
ALL
CODE CONFIDENCE TOOLS CODE CONFIDENCE TOOLS EASYCODE ECLIPSE RHAPSODY IN MICROC RHAPSODY IN C++ CHRONVIEW LDRA TOOL SUITE UML DEBUGGER
Adeneo Embedded blue river software GmbH Borland Software Corporation Code Confidence Ltd
ALL ALL ALL ALL ALL ALL ALL ALL ALL ALL ALL
ALL ALL ALL ALL ALL ALL ALL ALL ALL ALL ALL
ATTOL TOOLS VISUAL BASIC INTERFACE LABVIEW
CODE::BLOCKS C++TEST RAPITIME DA-C TRACEANALYZER SIMULINK TA INSPECTOR UNDODB VECTORCAST UNIT TESTING VECTORCAST CODE COVERAGE WINDOWS CE PLATF. BUILDER
Host Windows Windows Windows
Code Confidence Ltd
Linux
EASYCODE GmbH Eclipse Foundation, Inc IBM Corp. IBM Corp. Inchron GmbH LDRA Technology, Inc. LieberLieber Software GmbH MicroMax Inc. Microsoft Corporation
Windows Windows Windows Windows Windows Windows Windows Windows Windows
NATIONAL INSTRUMENTS Corporation Open Source Parasoft Rapita Systems Ltd. RistanCASE Symtavision GmbH The MathWorks Inc. Timing Architects GmbH Undo Software Vector Software
Windows
Windows Windows Windows Windows Windows Windows Linux Windows
Vector Software
Windows
Windows
Windows
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
54
3rd Party Tool Integration
Realtime Operation Systems
Name
Company
Comment
CMX-RTX VRTX80
CMX Systems Inc. Mentor Graphics Corporation
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
55
Realtime Operation Systems
Emulation Frequency The emulation probe is designed for running with CPUs up to 20 MHz. The max. speed is limited by the memory speed and the wait states used for memory access. The CPU type (Z80 or Z180) and some operation options (e.g. Refresh, dual-port access) also affect the max. frequency.
Module
CPU
F-W015
F-W035
S-W015
S-W035
S-W115
S-W135
DRAM
LA-6665 LA-6665 LA-6667 LA-6691 LA-6661 LA-6661 LA-6661 LA-6665 LA-6668 LA-6665 LA-6661 LA-6661 LA-6661 LA-6661 LA-6661 LA-6661 LA-6661 LA-6661 LA-6665
HD64180R1 HD64180Z HD647180X0 HD648180W TMP8085 TMPZ84C00 TMPZ84C013 TMPZ84C015 Z80180 Z80181 Z80182 Z8400 Z84013 Z84015 Z84C00 Z84C01 Z84C13 Z84C15 Z84C50 Z8S180
10.0+ 15.0+ 8.0+ 6.0+ 5.0+ 8.0+ 10.0+ 10.0+ 15.0+ 12.5+ 10.0+ 8.0+ 10.0+ 10.0+ 20.0 10.0+ 10.0+ 10.0+ 10.0+ 20.0
10.0+ 15.0 8.0+ 6.0+ 5.0+ 8.0+ 10.0+ 10.0+ 15.0 12.5+ 10.0+ 8.0+ 10.0+ 10.0+ 13.3 10.0+ 10.0+ 10.0+ 10.0+ 15.0
10.0+ 15.0+ 8.0+ 6.0+ 5.0+ 8.0+ 10.0+ 10.0+ 15.0+ 12.5+ 10.0+ 8.0+ 10.0+ 10.0+ 14.5 10.0+ 10.0+ 10.0+ 10.0+ 16.0
10.0+ 12.6 8.0+ 6.0+ 5.0+ 8.0+ 10.0+ 10.0+ 12.6 12.5+ 10.0+ 8.0+ 10.0+ 10.0+ 10.7 10.0+ 10.0+ 10.0+ 10.0+ 12.6
10.0+ 15.0+ 8.0+ 6.0+ 5.0+ 8.0+ 10.0+ 10.0+ 15.0+ 12.5+ 10.0+ 8.0+ 10.0+ 10.0+ 20.0+ 10.0+ 10.0+ 10.0+ 10.0+ 20.0+
10.0+ 15.0+ 8.0+ 6.0+ 5.0+ 8.0+ 10.0+ 10.0+ 15.0+ 12.5+ 10.0+ 8.0+ 10.0+ 10.0+ 20.0+ 10.0+ 10.0+ 10.0+ 10.0+ 20.0+
10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
56
Emulation Frequency
Emulation Modules
Module Overview LA-6660
HD647180X0
PLCC84
TMPZ84C00 TMPZ84C00
DIL40 PLCC44
Z8400 Z8400
DIL40 PLCC44
Z84C00 Z84C00
DIL40 PLCC44
Z84C01
PLCC44
Z84C50
PLCC44
TMPZ84C013
PLCC84
Z84013
PLCC84
Z84C13
PLCC84
TMPZ84C015
ET100-QF06
Z84015
ET100-QF06
Z84C15
ET100-QF06
HD64180R1
PLCC68
HD64180Z HD64180Z
DIL64S PLCC68
Z80180 Z80180
DIL40 PLCC44
Z8S180
PLCC68
Z80182
ET100-QF06
LA-6667
HD648180W
PLCC84
LA-6668
Z80181
ET100-QF06
LA-6691
TMP8085
DIL40
LA-6661 LA-6663
LA-6664
LA-6665 LA-6669
3.0..5.5V
Order Information
Order No.
Code
Text
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
57
Emulation Modules
Order No.
Code
Text
LA-6945 LA-6660 LA-6661 LA-6662 LA-6663 LA-6664 LA-6665 LA-6667 LA-6668 LA-6669 LA-6691
TC-ICE-M-Z80-F ICE-Z80 M-Z80 A-Z84C11 A-Z84C13 A-Z84C15 M-HD64180 M-HD648180 M-Z181 A-Z182 M-8085
TRACE32 Compact ICE/MPC for Z80 family Fast ICE-Z80 Base Module Module Z80 Adapter Z84C11 Adapter Z84C13 Adapter Z80-Z84C15 Module HD64180-DIL/PLCC Module for HD648180-PLCC Module Z181 Adapter Z182 Module 8085
Additional Options ET-1032 ET100-CET-QF06 TO-1260 ET100-ETO-QF06 YA-1031 ET100-EYA-QF06 ET-1030 ET100-SET-QF06 TO-1261 ET100-STO-QF06 LA-7518 MON-Z80 LA-6450 PA64 LA-1921 PLCC-BLOCK-44 LA-1924 PLCC-BLOCK-84 LA-1925 PLCC-TEST-ADAPTER-44 LA-1927 PLCC-TEST-ADAPTER-84
Clip-Over Adapter for ET100-QF06 Emul. Adapter for TO socket ET100-QF06 Emul. Adapter for YAMAICHI socket ET100-QF06 Surface Mountable Adapter for ET100 to QF06 Emul. Adapter TO-surface mount. ET100-QF06 ROM Monitor for Z80 on ESI Port Analyzer PLCC Block 44 Pins PLCC Block 84 Pins PLCC Test Adapter 44 Pins PLCC Test Adapter 84 Pins
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
58
Emulation Modules
Physical Dimensions
Dimension LA-6661
M-Z80 cable (400) 66 37 13 13
26
19 97 100 103 SIDE VIEW
9
8
1
67
1
9 21
TOP VIEW (all dimensions in mm)
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
59
Physical Dimensions
Dimension LA-6662
A-Z84C11
10 7
102 105 SIDE VIEW
PIN 1
Female Connector
67
9 14 TOP VIEW (all dimensions in mm)
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
60
Physical Dimensions
Dimension LA-6663
A-Z84C13
10 9
26
102 105 SIDE VIEW
1 67
13 35 TOP VIEW (all dimensions in mm)
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
61
Physical Dimensions
Dimension LA-6664
A-Z84C15
10 7
102 105 SIDE VIEW
Female Connector
67
PIN 1 14 20 TOP VIEW (all dimensions in mm)
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
62
Physical Dimensions
Dimension LA-6665
M-HD64180
cable (400) 66 37 13 26
9
64 97 99 103 SIDE VIEW
7
1 66
8 7 18 TOP VIEW (all dimensions in mm)
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
63
Physical Dimensions
Dimension LA-6667
M-HD648180
cable (400) 78 37 13 26
9
112 116 SIDE VIEW
1
67
16 10 TOP VIEW (all dimensions in mm)
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
64
Physical Dimensions
Dimension LA-6668
M-Z181
cable (400) 68 37 13 7
102 106 SIDE VIEW
67
10 15 TOP VIEW (all dimensions in mm)
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
65
Physical Dimensions
Dimension LA-6669
A-Z182
13 7
97 SIDE VIEW
66 PIN 1 21 13 TOP VIEW (all dimensions in mm)
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
66
Physical Dimensions
Dimension LA-6691
M-8085
cable (350) 58 37 13
20 92 99 SIDE VIEW
67
8 2 TOP VIEW (all dimensions in mm)
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
67
Physical Dimensions
Adapter
Socket CPU
Adapter
ET100-QF06
ET-1030 ET100-SET-QF06 Surface Mountable Adapter for ET100 to QF06
TMPZ84C015 Z80181 Z80182 Z84015 Z84C15
32
SIDE VIEW
:: :: :: :: :: :: ::
:::::::::::::: :: :: :::::: :: :: :: :: ::::::
:: :: :: :::::::::::::: 43 52
TOP VIEW (all dimensions in mm)
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
68
Adapter
Socket CPU
Adapter
ET100-QF06
YA-1031 ET100-EYA-QF06 Emul. Adapter for YAMAICHI socket ET100-QF06
TMPZ84C015 Z80181 Z80182 Z84015 Z84C15
8 6
54 SIDE VIEW
1
56
9
11 TOP VIEW (all dimensions in mm)
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
69
Adapter
Socket CPU
Adapter
ET100-QF06
ET-1032 ET100-CET-QF06 Clip-Over Adapter for ET100-QF06
TMPZ84C015 Z84015 Z84C15 32
SIDE VIEW
:: :: :: :: :: :: ::
:::::::::::::: :: :: :::::: :: :: :: :: ::::::
:: :: :: :::::::::::::: 52
TOP VIEW (all dimensions in mm)
©1989-2016 Lauterbach GmbH
ICE Emulator for Z80 and Z180
70
Adapter