Z89C6700ZEM CP95TAD0504 CUSTOMERPROCUREMENTSPECIFICATION Z89C6700ZEM ICEBOXTMFAMILYZ8(R) IN-CIRCUIT EMULATOR-C67 HARDWARE FEATURES Supported Devices Package 84-Pin 84-Pin 84-Pin 84-Pin 84-Pin 84-Pin Emulation PLCC PLCC PLCC PLCC PLCC PLCC ICEBOX Emulator Provides In-Circuit Program Debug Emulation Z8 GUI Emulator Software Windows-Based User Interface RS-232 Connector ICE Pod Connector for Emulation Programming Z89167 Z89168 Z89169 Z89C67 Z89C68 Z89C69 N/A N/A N/A N/A N/A N/A Real-Time Emulation GENERAL DESCRIPTION The Z89C6700ZEM is a member of Zilog's ICEBOX product family of in-circuit emulators providing support for the above listed Z8 microcontroller devices. Zilog's in-circuit emulators are interactive, Windoworiented development tools, providing a real-time environment for emulation and debugging. The emulator provides essential timing and I/O circuitry to simplify user emulation of the prototype hardware and software product. Data entering, program debugging are performed by the monitor ROM and the host package, which communicates through RS-232C serial interface. The user program can be downloaded directly from the host computer through the RS-232C connector. User code may be executed through debugging commands in the monitor. The Z89C6700ZEM emulator can be connected to a serial port (COM1, COM2, COM3, and COM4) of the host computer and uses Graphical User Interface (GUI) software. SPECIFICATIONS Operating Conditions Operating Temperature: 20C, 10C Supply Voltage: +5.0 VDC, 5% Max. Oscillator Freq.: 20.48 MHz Max. DSP Internal Clock Oper. Freq.: 10 MHz Max. Z8 Internal Clock Oper. Freq.: 10 MHz Min. DSP Internal Clock Oper. Freq.: 1 MHz Min. Z8 Internal Clock Oper. Freq.: 1 MHz Power Requirements +5.0 VDC @ 2.0A Dimensions Width: Length: Height: 6.25 in. (15.8 cm) 9.5 in. (24.1 cm) 2.5 in. (6.35 cm) Serial Interface RS-232C @ 9600, 19200 (default), 28800, or 57600 Baud CP95TAD0504 (11/95) 1 Z89C6700ZEM CP95TAD0504 HOST COMPUTER Minimum Requirements IBM PC (or 100-percent compatible) 386-based machine 33 MHz 4 MB RAM VGA Video Adapter Hard Disk Drive (1 MB free space) 3.5-inch, High-Density (HD) Floppy Disk Drive RS-232C COM port Mouse or Pointing Device Microsoft Windows 3.1 The following changes to the Minimum Requirements are recommended for increased performance: 486- or Pentium-based machine 66 MHz (or faster) 8 MB of RAM (or more) SVGA Video Adapter Color Monitor Printer KIT CONTENTS Z89C67 Emulator *Emulation Base Board includes: CMOS Z86C9320PSC 8K x 8 EPROM (Programmed with Debug Monitor) 32K x 8 Static RAM Three 64K x 4 Static RAM RS-232C Interface Reset Switch *Z89C67 Emulation Daughterboard Z86C5020GSE ICE Chip Two 3K x 8 Static RAM Two 100-Pin HP-16500 Logic Analysis System Interface Connectors Z89C0010GSC 80/80-Pin Target Connectors Cables/Pods Power Cable with Banana Plugs DB25 RS-232C Cable 84-Pin PLCC Emulation Pod Cable Documentation Emulator User Manual Z8 Cross-Assembler User's Guide Universal Object File Utilities (MOBJ) Registration Card LIMITATIONS 1. Changing drives in file download and load symbol dialog boxes is not anticipated by the GUI. Typing in the filename in a directory other than shown in "Path:" will result in "File not found". Changing the drive using the mouse is the workaround. 2. The initial blue Zilog screen will be distorted by other active windows. This only affects the appearance, not functionality, of the GUI. 3. Switching ICEBOXes without quitting the GUI is not supported. 4. The maximum symbols that can be loaded is 32768, provided that there is enough system resource (memory). 5. The ICEBOX breakpoint hardware does not distinguish between instruction and data fetches. When a breakpoint in the GUI is set, the breakpoint hardware triggers when the addresses match for either code or data fetches. Example: 000C 000E 0010 0012 0013 0016 SRP LD LD NOP JP NOP #%0 R4, #%0016 R5, @R4 %000C Setting the breakpoint at %0016 and click GO. Result: The code will break and stop at %0012. Note: This will not happen when Animate Mode is on because the GUI is not using the hardware breakpoints when in Animate Mode. Host Software Z8(R) GUI Emulator Software ZASM Cross-Assembler/ MOBJ Object File Utilities Miscellaneous 20-Pin DIP Jumper Block 2 6. If the emulator is running a user code at full speed and the port window is opened: Switching to another application or minimizing the GUI (then restoring) will result in the following ICEBOX Communications Error message: "Emulator rejected command: target program is executing." This message may need to be cleared several times (as many as seven) before the GUI returns to normal operation. Z89C6700ZEM CP95TAD0504 Workaround: Always close the port window before leaving the GUI. 7. Do not put breakpoint at address after Stop instruction. This will cause program counter to continue at that location after a Stop-Mode Recovery. 8. Breakpointing in interrupt service routine and singlestepping pass the IRET statement will cause global interrupts to be disabled. 9. Clicking on the HALT Button does not always Halt ICEBOX execution. 10. Single-stepping into the HALT instruction will cause an ICEBOX "Fatal Error". 11. Halting the program execution or breakpointing when interrupts are enabled will globally disable interrupts. If halting occurs, the program must be reset and started from address %000c hex. 12. The C67 ICEBOX uses the Z86C50 ICE Chip; therefore, emulation at more than 12 MHz requires that the Expanded Register File (ERF) timing of the ICE Chip be slowed down to SCLK x 2. This is accomplished by loading value %01 to ICECON Register (Bank F, Register A) of the ICE Chip. Example: PUSH RP LD RP, #%0F LD %A, #%01 POP RP 13. Due to the limitation in the Z86C50 ICE Chip, a software workabound for the interrupt vector fetching must be in place when configuring the emulator for ROMless emulation. ROM Emulation The ROM emulation has the correct sequence for vectored interrupts, shown as follows: Push Program Counter (PC) lower byte on stack Push PC upper byte on stack Push FLAG on stack Fetch the upper byte of vector Fetch the lower byte of vector Branch to service routine specified by vector ROMless Emulation ROMless emulation has the incorrect sequence for vectored interrupts. This sequence is shown as follows: Push PC lower byte on stack Push PC upper byte on stack Push FLAG on stack Fetch the upper byte of vector Write the upper byte of vector to high byte of PC Fetch lower byte of vector according to the modified PC Branch to service routine specified by vector The following figures illustrate the vectored interrupt operation for ROM and ROMless emulation, respectively: 3 Z89C6700ZEM CP95TAD0504 LIMITATIONS (Continued) Correct Interrupt Service Routine Incorrect Interrupt Service Routine 0178 0153 0103 000C 78 000C 0003 53 0002 01 IRQ1 Vector 0000 0003 0002 53 01 0000 Z8 Program Memory Z8 Program Memory ROM Emulation ROMless Emulation Note: The Incorrect Vectored Interrupt emulation only applies to the emulator. The Z89168/C68 device does not exhibit this problem. Software Work Around for ROMless Emulation ;***Emulator Vector Fixes*** ;***Locate in ROM @ %0000*** .ORG %0000 .ORG .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD IRQ0_JP IRQ1_JP IRQ2_JP IRQ3_JP IRQ4_JP IRQ5_JP ;Locate in ROM @ %7F00*** .EXTERN .EXTERN .EXTERN .EXTERN .EXTERN .EXTERN 4 IRQ0_ISR IRQ1_ISR IRQ2_ISR IRQ3_ISR IRQ4_ISR IRQ5_ISR %7F00 IRQ0_JP IRQ1_JP IRQ2_JP IRQ3_JP IRQ4_JP IRQ5_JP IRQ1 Vector Z89C6700ZEM CP95TAD0504 IRQ0_JP: IRQ1_JP: IRQ2_JP: IRQ3_JP: IRQ4_JP: IRQ5_JP: JP JP JP JP JP JP IRQ0_ISR IRQ1_ISR IRQ2_ISR IRQ3_ISR IRQ4_ISR IRQ5_ISR ;P32 Input-IRQ0 Service Routine ;P33 Input-IRQ1 Service Routine ;P31 Input-IRQ2 Service Routine ;Internal-DSP Activated ;T0 Timer-IRQ4 Service Routine ;T1 Timer-IRQ5 Service Routine PRECAUTION LIST 1. GUI software versions prior to 3.00 are incompatible with hardware containing BOOTROM 3.00. The GUI software may still boot, but will fail at some later point of the session. 2. The status color bar in OTP dialog box will be cleared in the area where a new window opens on top of it. 3. For 386 PCs, set the baud rate to 19.2K or less because Windows' communication driver does not guarantee "reliable" operation at more than 9600 baud. Selecting a high baud rate on some slower 386 machines may crash the Windows environment. 4. All Z8 control registers are write only unless stated otherwise. 6. Check the TPOR and TWDT specifications of the device that you wish to emulate. The actual specification may differ from the ICE chip specifications. 7. The general-purpose registers after Power-On Reset or at initial emulator use will be different than the actual device. The emulator self test will always leave the same values in the general-purpose registers, while the real device will have a random/undefined value in the general-purpose registers. 8. The emulator cannot be operated while performing ESD/EMI testing on the Target Board. 9. The Mother Board (board on the bottom) is specially designed for this emulator and is not compatible with any other Zilog ICEBOXES. 5. Power Supply ramp-up/rise time must be such that when minimum power-on reset time (TPOR ) expires, then the VCC must be in the supported specified operating range of the device. 5 Z89C6700ZEM CP95TAD0504 (c) 1996 by Zilog, Inc. All rights reserved. No part of this document may be copied or reproduced in any form or by any means without the prior written consent of Zilog, Inc. The information in this document is subject to change without notice. Devices sold by Zilog, Inc. are covered by warranty and patent indemnification provisions appearing in Zilog, Inc. Terms and Conditions of Sale only. Zilog, Inc. makes no warranty, express, statutory, implied or by description, regarding the information set forth herein or regarding the freedom of the described devices from intellectual property infringement. Zilog, Inc. makes no warranty of merchantability or fitness for any purpose. Zilog, Inc. shall not be responsible for any errors that may appear in this document. Zilog, Inc. makes no commitment to update or keep current the information contained in this document. 6 Zilog's products are not authorized for use as critical components in life support devices or systems unless a specific written agreement pertaining to such intended use is executed between the customer and Zilog prior to use. Life support devices or systems are those which are intended for surgical implantation into the body, or which sustains life whose failure to perform, when properly used in accordance with instructions for use provided in the labeling, can be reasonably expected to result in significant injury to the user. Zilog, Inc. 210 East Hacienda Ave. Campbell, CA 95008-6600 Telephone (408) 370-8000 Telex 910-338-7621 FAX 408 370-8056 Internet: http://www.zilog.com